Skip to content

Conversation

@yxrpsrazfyg
Copy link

@yxrpsrazfyg yxrpsrazfyg commented Nov 26, 2025

#23476

How to Enable

OptionsBitTorrent"Move slow downloading torrents to queue end"
Configure:

  • Time: Duration to monitor torrent progress (in minutes)
  • Minimum size: Minimum download progress required within the time window (in MiB)
  • Excluded tag: Optional tag to exclude specific torrents from detection

Functionality Added

  • Monitors downloading torrents over a configurable time window
  • Automatically detects torrents making insufficient progress
  • Moves slow torrents to the end of the download queue, allowing faster torrents to take priority
  • Provides fine-grained control through configurable parameters

Files Changed

Backend (Core Logic)

  • src/base/bittorrent/session.h
  • src/base/bittorrent/sessionimpl.h
  • src/base/bittorrent/sessionimpl.cpp

Desktop GUI

  • src/gui/optionsdialog.cpp
  • src/gui/optionsdialog.ui

Web UI

  • src/webui/www/private/views/preferences.html

Web API

  • src/webui/api/appcontroller.cpp

API Changes

Web API Preferences Endpoints

  • slow_torrent_detection_enabled (boolean): Enable/disable the feature
  • slow_torrent_detection_duration (integer): Monitoring window in minutes
  • slow_torrent_minimum_progress (integer): Minimum progress in MiB
  • slow_torrent_excluded_tag (string): Tag name to exclude from detection (optional)

Backward Compatibility

  • All changes are fully backward compatible
  • Existing functionality remains unchanged when move slow downloading torrents to queue end is disabled
  • No breaking changes to existing API methods
  • New API methods extend the interface without modifying existing methods
  • Still hopefully, maintainers or contributors can step in and help out.

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