Move completed torrents to another folder - #671
Closed
denisnikulin wants to merge 4 commits into
Closed
denisnikulin wants to merge 4 commits into
denisnikulin wants to merge 4 commits into
Conversation
Resuming a torrent whose files were released by a pause failed on the first write with "file is None, torrent was probably paused", and the torrent went into the error state. A released file is now reopened from its path on first use. release_files() is also forwarded through the storage middlewares. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Adds `--move-completed-to <folder>` (RQBIT_MOVE_COMPLETED_TO), and `SessionOptions::move_completed_to` for library users. When a torrent finishes downloading, its files are moved from the output folder to the given folder, keeping their sub-folder, and the torrent keeps seeding from there. Torrents with an explicit output folder outside the session's one are left where they are. Files are renamed, or copied and removed when the destination is on another filesystem. As when creating files, an existing destination is an error unless the torrent allows overwriting. The new folder is saved to session persistence, and the old one is removed if it is empty. Closes ikatson#599 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deleting a torrent while it was being moved left the files that hadn't been moved yet in the old folder, with "error moving """ in the log. Pause and delete now return "torrent is being moved" until the move is done, and the move doesn't start for a torrent that was just paused or deleted. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Torrent stats get a "moving" flag, and the web UI shows "Moving" instead of "Seeding"/"Done" until the move to the completed folder is done. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
denisnikulin
force-pushed
the
move-completed-to
branch
from
September 20, 2026 17:16
1336365 to
16f42c5
Compare
Author
|
not sure if this feature it needed - can re-open later |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
--move-completed-to <folder>(RQBIT_MOVE_COMPLETED_TO,SessionOptions::move_completed_to). When a torrent finishes downloading, its files move from the output folder to that folder, keeping their sub-folder, and it keeps seeding from there.Closes #599.
Includes feat: release file handles when a torrent is paused or stopped #621 (release file handles on pause)— merged since, so this is rebased on top of it. Resuming after such a pause is still fixed here: it otherwise fails with "file is None".🤖 Generated with Claude Code