Skip to content

Prevent isRefreshing from getting permanently stuck on fetch errors#2879

Open
dvdstelt wants to merge 1 commit intomasterfrom
fix/all-messages
Open

Prevent isRefreshing from getting permanently stuck on fetch errors#2879
dvdstelt wants to merge 1 commit intomasterfrom
fix/all-messages

Conversation

@dvdstelt
Copy link
Member

@dvdstelt dvdstelt commented Mar 12, 2026

Fixes:

Without try/finally, any exception thrown by the fetch function left isRefreshing=true forever, causing all subsequent refreshNow() calls to silently no-op — including the manual Refresh button. Also ensures firstLoad is always cleared so the spinner never shows indefinitely.

Reviewer Checklist

  • Components are broken down into sensible and maintainable sub-components.
  • Styles are scoped to the component using it. If multiple components need to share CSS, then a .css file is created containing the shared CSS and imported into component scoped style sections.
  • Naming is consistent with existing code, and adequately describes the component or function being introduced
  • Only functions utilizing Vue state or lifecycle hooks are named as composables (i.e. starting with 'use');
  • No module-level state is being introduced. If so, request the PR author to move the state to the corresponding Pinia store.

Without try/finally, any exception thrown by the fetch function left
isRefreshing=true forever, causing all subsequent refreshNow() calls
to silently no-op — including the manual Refresh button. Also ensures
firstLoad is always cleared so the spinner never shows indefinitely.
@dvdstelt dvdstelt self-assigned this Mar 12, 2026
Copy link
Member

@johnsimons johnsimons left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch @dvdstelt.
Although this PR does not address:

Both @PhilBastian and I got pinged by @ramonsmits on #2885 to review it.

We both looked at it and created a separate PR to address the bug:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Type: Bug Type: Bug

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants