Skip to content

Move remaining download filesystem work off the GTK thread - #547

Merged
Linuxuser67 merged 89 commits into
mainfrom
fix/async-download-filesystem-paths
Oct 26, 2026
Merged

Linuxuser67 merged 89 commits into
mainfrom
fix/async-download-filesystem-paths

Conversation

@Linuxuser67

Copy link
Copy Markdown
Owner

Summary

Follow up the merged Delete/Trash fix by moving the remaining blocking queue, pump, and lifecycle filesystem work away from GTK.

This PR covers:

  • Pump handling for finished-name inspection, server-date stamping, torrent cleanup, invalid-version partial cleanup, prefix truncation, and segmented fallback.
  • Download spawn preparation and torrent output-folder setup.
  • Cancellation cleanup, with destination reservations to keep retry/undo from racing partial-file removal.
  • Queue snapshot JSON encoding and persistence writes on the background worker, while GTK builds the model snapshot.
  • Async torrent, video, gallery, and playlist intake; destination enumeration, torrent archival, and collection-folder setup now run off GTK.
  • UI and opened-file callers plus regression tests updated to use the async intake APIs.

Review notes

The branch's filesystem changes were re-read independently before opening this PR. A missing closing brace in the cancellation helper was caught and fixed during that review. CI is the next validation gate; this environment has not run a local Cargo build.

Scope

The earlier survey's remaining pump, spawn, cancellation, enqueue/playlist, shutdown-fallback, and queue-serialization findings are included here. The separately merged trash operation fix remains in the first PR.

@Linuxuser67
Linuxuser67 merged commit d2937cd into main Oct 26, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant