mirror of
https://github.com/serrebidev/BlindRSS.git
synced 2026-08-13 11:59:26 -07:00
Consider allowing article deletion during feed refresh #51
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
serrebi/BlindRSS#51
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
BlindRSS currently blocks article deletion while feeds are being refreshed. If a user has many channels, the refresh process can take several minutes, during which time the user is unable to delete articles.
This limitation creates a poor user experience: users frequently want to clean up read or unwanted articles while the app is updating content, but they are forced to wait until the refresh completes.
The goal is to evaluate whether this restriction can be removed without causing adverse effects due to architectural constraints. In most cases, deleting an article during a refresh should not lead to negative consequences, as the deletion affects only the local state of that specific article and does not interfere with the incoming feed data.
Preconditions
Steps to Reproduce
Actual Behavior
While the feed refresh is in progress, the application refuses to delete the article and displays the message:
"Articles cannot be deleted while feeds are refreshing. Try again after the refresh is complete."Desired Behavior
The application should allow article deletion at any time, even when feeds are being refreshed. Deleting an article during a refresh should proceed normally and not cause any negative side effects.
Considerations
Benefits
Fixed in v1.98.0. The block was a redundant safeguard: delete/restore already tombstone the article (so a concurrent refresh can't recreate it) and use their own short busy-timeout DB transactions — the same reasoning that already let permanent-delete (purge) run unguarded. Delete and restore now proceed at any time, even while a refresh is in progress.