Deluge BitTorrent client - Git mirror, PRs only https://www.deluge-torrent.org
Go to file
Chase Sterling 47e548fdb5
[Core] Refactor prefetch_metadata for more clarity
Just trying to clean up some of the more complicated callback logic.

Notable changes:

* The test was awaiting a DeferredList. By default that will eat
exceptions and just add them to the result list (including test
assertion exceptions.) Added fireOnOneErrback=True to make sure that
wasn't happening.  * Moved the logic for multiple calls to await the
same response into torrentmanager from core, so no matter where the
prefetch is called from it will wait for the original call.
* Implemented the multiple calls with an explicit queue of waiting
callbacks, rather than a callback callback chain.  * Moved to one inline
async function rather than split into a main and callback after alert
function.
* Added some more type hints to the stuff I changed.

Adjusted test since we are using prefetch as an async function now
we have to schedule the alert to come after we start awaiting the
prefetch call.

Closes: https://github.com/deluge-torrent/deluge/pull/368
2022-05-17 22:15:55 +01:00
.github/workflows [CI] Use setup-python action pip cache 2022-03-02 13:08:02 +00:00
deluge [Core] Refactor prefetch_metadata for more clarity 2022-05-17 22:15:55 +01:00
docs [Tests] Remove reference to Twisted Trial 2022-03-02 12:45:15 +00:00
packaging [Packaging] Add systemd user services 2022-03-02 09:26:23 +00:00
.gitattributes [Tests] Fix erroneous windows line endings in test state file 2022-01-26 18:44:47 +00:00
.gitignore [Tests] Remove reference to Twisted Trial 2022-03-02 12:45:15 +00:00
.pre-commit-config.yaml [lint] update black package 2022-05-01 18:31:12 +01:00
.prettierignore [Lint] Format files with Prettier 2018-10-03 18:16:09 +01:00
.prettierrc.yaml [Lint] Format files with Prettier 2018-10-03 18:16:09 +01:00
.pylintrc Remove all Python 2 support 2021-12-28 19:26:38 +00:00
.readthedocs.yml [Docs] Fix missing path in RTD config 2019-05-22 18:01:05 +01:00
AUTHORS [UI] Add magnet icons for copy and add actions 2021-09-21 20:38:08 +01:00
CHANGELOG.md Remove all Python 2 support 2021-12-28 19:26:38 +00:00
DEPENDS.md [Core] Stopped using libtorrent deprecated functions 2022-02-13 11:36:04 +00:00
LICENSE Update LICENSE in trunk too.. 2009-04-06 21:17:26 +00:00
MANIFEST.in [Packaging] Fix gtk3 glade path in MANIFEST 2021-11-23 20:07:33 +00:00
README.md [Docs] Add permanent discord invite link 2022-02-15 15:30:08 +00:00
gen_web_gettext.py Upgrade codebase with pyupgrade (>=py3.6) 2021-12-29 21:51:07 +00:00
generate_pot.py Upgrade codebase with pyupgrade (>=py3.6) 2021-12-29 21:51:07 +00:00
minify_web_js.py Upgrade codebase with pyupgrade (>=py3.6) 2021-12-29 21:51:07 +00:00
msgfmt.py Upgrade codebase with pyupgrade (>=py3.6) 2021-12-29 21:51:07 +00:00
pyproject.toml Remove all Python 2 support 2021-12-28 19:26:38 +00:00
requirements-dev.txt [Build] Fix WebUI js minifying error 2021-12-15 09:37:55 +00:00
requirements-tests.txt [CI] Changed tested python version to 3.7 and 3.10 2022-03-02 12:53:29 +00:00
requirements.txt [CI] Use libtorrent pypi install 2022-03-02 12:55:19 +00:00
setup.cfg [Lint] Update linter version and fix issues 2022-02-13 13:38:27 +00:00
setup.py [Build] Fix entry point build errors 2022-02-06 21:02:43 +00:00
tox.ini [Tests] Remove reference to Twisted Trial 2022-03-02 12:45:15 +00:00
version.py Upgrade codebase with pyupgrade (>=py3.6) 2021-12-29 21:51:07 +00:00

README.md

Deluge BitTorrent Client

build-status docs-status

Deluge is a BitTorrent client that utilizes a daemon/client model. It has various user interfaces available such as the GTK-UI, Web-UI and Console-UI. It uses libtorrent at its core to handle the BitTorrent protocol.

Install

From PyPi:

pip install deluge

with all optional dependencies:

pip install deluge[all]

From source code:

pip install .

with all optional dependencies:

pip install .[all]

See DEPENDS and Installing/Source for dependency details.

Usage

The various user-interfaces and Deluge daemon can be started with the following commands.

Use the --help option for further command options.

Gtk UI

deluge or deluge-gtk

Console UI

deluge-console

Web UI

deluge-web

Open http://localhost:8112 with default password deluge.

Daemon

deluged

See the Thinclient guide to connect to the daemon from another computer.

Contact