From 9cc8317d3c401533b9d7d5896e855239c44fdfb2 Mon Sep 17 00:00:00 2001 From: Tobi Sim Date: Fri, 26 Jan 2018 00:58:09 +0100 Subject: [PATCH 01/33] added basic dynamic trackerlist support --- defaulttrackers/core.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index f99b9b9..602184f 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -45,11 +45,20 @@ from deluge.core.rpcserver import export DEFAULT_PREFS = { + "dynamic_trackerlist":"https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt", "trackers": [ #{"url": "test"}, ], } +if DEFAULT_PREFS["dynamic_trackerlist"]: + import urllib2 as u2 + trackers = u2.urlopen(DEFAULT_PREFS["dynamic_trackerlist"]).read() + trackers = [ {"url":n} for n in trackers.split("\n\n") if n ] + del u2 + DEFAULT_PREFS["trackers"]+=trackers + del trackers + log = logging.getLogger(__name__) class Core(CorePluginBase): From 7d7800c55425a2a8205cb254b2d534c2ca404247 Mon Sep 17 00:00:00 2001 From: Tobi Sim Date: Fri, 26 Jan 2018 01:05:00 +0100 Subject: [PATCH 02/33] Revert "added basic dynamic trackerlist support" This reverts commit 9cc8317d3c401533b9d7d5896e855239c44fdfb2. found a better way to load tracker list --- defaulttrackers/core.py | 9 --------- 1 file changed, 9 deletions(-) diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 602184f..f99b9b9 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -45,20 +45,11 @@ from deluge.core.rpcserver import export DEFAULT_PREFS = { - "dynamic_trackerlist":"https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt", "trackers": [ #{"url": "test"}, ], } -if DEFAULT_PREFS["dynamic_trackerlist"]: - import urllib2 as u2 - trackers = u2.urlopen(DEFAULT_PREFS["dynamic_trackerlist"]).read() - trackers = [ {"url":n} for n in trackers.split("\n\n") if n ] - del u2 - DEFAULT_PREFS["trackers"]+=trackers - del trackers - log = logging.getLogger(__name__) class Core(CorePluginBase): From 8bcddd16d09304ab5e006cb4780994beabb2001d Mon Sep 17 00:00:00 2001 From: Tobi Sim Date: Fri, 26 Jan 2018 01:36:54 +0100 Subject: [PATCH 03/33] added dynamic trackerlist support --- defaulttrackers/core.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index f99b9b9..465c054 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -43,11 +43,13 @@ import deluge.component as component import deluge.configmanager from deluge.core.rpcserver import export +import urllib2 DEFAULT_PREFS = { "trackers": [ #{"url": "test"}, ], + # "dynamic_trackerlist":"https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt", } log = logging.getLogger(__name__) @@ -67,14 +69,25 @@ def disable(self): def update(self): pass + def update_trackerlist(self): + trackers = urllib2.urlopen(self.config["dynamic_trackerlist"]).read() + trackers = [ {"url":n} for n in trackers.split("\n\n") if n ] + self.config["dynamic_trackers"] = trackers + del trackers + def on_torrent_added(self, torrent_id, from_state=False): torrent = component.get("TorrentManager")[torrent_id] if (torrent.torrent_info and torrent.torrent_info.priv()) or torrent.get_status(["private"])["private"]: return trackers = list(torrent.get_status(["trackers"])["trackers"]) existing_urls = [tracker["url"] for tracker in trackers] + if "dynamic_trackerlist" in self.config: + if self.config["dynamic_trackerlist"]: + self.update_trackerlist() + else: + self.config["dynamic_trackers"] = [] got_new_trackers = False - for new_tracker in self.config["trackers"]: + for new_tracker in self.config["trackers"]+self.config["dynamic_trackers"]: if new_tracker["url"] not in existing_urls: got_new_trackers = True trackers.append({ From d1772eef4d01ca2ad5490883da41e701096238c4 Mon Sep 17 00:00:00 2001 From: Tobi Sim Date: Fri, 26 Jan 2018 02:01:09 +0100 Subject: [PATCH 04/33] added time checks to run Trackerlist Updates only once an hour. --- defaulttrackers/core.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 465c054..81a50df 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -43,7 +43,8 @@ import deluge.component as component import deluge.configmanager from deluge.core.rpcserver import export -import urllib2 +from urllib2 import urlopen +from time import time DEFAULT_PREFS = { "trackers": [ @@ -55,6 +56,7 @@ log = logging.getLogger(__name__) class Core(CorePluginBase): + LAST_DYNAMIC_TRACKERS_UPDATE = 0 def enable(self): self.config = deluge.configmanager.ConfigManager("defaulttrackers.conf", DEFAULT_PREFS) component.get("EventManager").register_event_handler( @@ -70,10 +72,12 @@ def update(self): pass def update_trackerlist(self): - trackers = urllib2.urlopen(self.config["dynamic_trackerlist"]).read() - trackers = [ {"url":n} for n in trackers.split("\n\n") if n ] - self.config["dynamic_trackers"] = trackers - del trackers + if time()-self.LAST_DYNAMIC_TRACKERS_UPDATE > 3600: + trackers = urlopen(self.config["dynamic_trackerlist"]).read() + trackers = [ {"url":n} for n in trackers.split("\n") if n ] + self.config["dynamic_trackers"] = trackers + del trackers + self.LAST_DYNAMIC_TRACKERS_UPDATE = time() def on_torrent_added(self, torrent_id, from_state=False): torrent = component.get("TorrentManager")[torrent_id] From e43599ed4f1549eb6da089b1351582908a75b9ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Tue, 5 Jun 2018 22:54:51 +0200 Subject: [PATCH 05/33] extend the dynamic tracker list functionality - don't assume it has one URL per line - switch to Requests because urllib2 was failing on an HTTPS URL - configurable refresh interval that defaults to 1 day - store the last update timestamp in the config - GTK preference interface --- README.md | 7 ++ defaulttrackers/core.py | 55 ++++++---- defaulttrackers/data/config.glade | 165 +++++++++++++++++++++++++++++- defaulttrackers/gtkui.py | 32 ++++-- egg/DefaultTrackers-0.1-py2.7.egg | Bin 19588 -> 21541 bytes 5 files changed, 231 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 9423add..cd08bd6 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,8 @@ was added so it works perfectly fine with infohashes. Private torrents are excluded on purpose, because their metadata is not supposed to reach public trackers. +Besides manually creating the default tracker list, you can also load it (periodically) from a URL. + ## Installation * create the egg with @@ -18,6 +20,10 @@ supposed to reach public trackers. * add it to Deluge from Preferences -> Plugins -> Install Plugin +## Dependencies + +* [Requests][3] + ## TODO: * log the added trackers so we can remove them from torrents when they are deleted from the default list @@ -25,4 +31,5 @@ supposed to reach public trackers. [1]: http://deluge-torrent.org/ [2]: egg/ +[3]: http://python-requests.org/ diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 81a50df..ccab47e 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -1,7 +1,7 @@ -# +# -*- coding: utf-8 -*- # core.py # -# Copyright (C) 2013-2016 Stefan Talpalaru +# Copyright (C) 2013-2018 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -38,25 +38,32 @@ # statement from all source files in the program, then also delete it here. # +import datetime import logging +import re +import requests +import time +import traceback + +from deluge.common import is_url +from deluge.core.rpcserver import export from deluge.plugins.pluginbase import CorePluginBase import deluge.component as component import deluge.configmanager -from deluge.core.rpcserver import export -from urllib2 import urlopen -from time import time + DEFAULT_PREFS = { "trackers": [ - #{"url": "test"}, + #{"url": "udp://foo.bar:6969/announce"}, ], - # "dynamic_trackerlist":"https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt", + "dynamic_trackerlist_url": "", + "last_dynamic_trackers_update": 0, # UTC timestamp + "dynamic_trackers_update_interval": 1, # in days } log = logging.getLogger(__name__) class Core(CorePluginBase): - LAST_DYNAMIC_TRACKERS_UPDATE = 0 def enable(self): self.config = deluge.configmanager.ConfigManager("defaulttrackers.conf", DEFAULT_PREFS) component.get("EventManager").register_event_handler( @@ -71,13 +78,22 @@ def disable(self): def update(self): pass - def update_trackerlist(self): - if time()-self.LAST_DYNAMIC_TRACKERS_UPDATE > 3600: - trackers = urlopen(self.config["dynamic_trackerlist"]).read() - trackers = [ {"url":n} for n in trackers.split("\n") if n ] - self.config["dynamic_trackers"] = trackers - del trackers - self.LAST_DYNAMIC_TRACKERS_UPDATE = time() + @export + def update_trackerlist_from_url(self): + if self.config["dynamic_trackerlist_url"]: + now = datetime.datetime.utcnow() + last_update = datetime.datetime.utcfromtimestamp(self.config["last_dynamic_trackers_update"]) + if now - last_update > datetime.timedelta(days=self.config["dynamic_trackers_update_interval"]): + old_trackers = set([t["url"] for t in self.config["trackers"]]) + try: + page = requests.get(self.config["dynamic_trackerlist_url"]).text + new_trackers = [url for url in re.findall(r'\w+://[\w\-.:/]+', page) if is_url(url) and url not in old_trackers] + for new_tracker in new_trackers: + self.config["trackers"].append({"url": new_tracker}) + self.config["last_dynamic_trackers_update"] = time.mktime(now.timetuple()) + except: + traceback.print_exc() + return self.config.config def on_torrent_added(self, torrent_id, from_state=False): torrent = component.get("TorrentManager")[torrent_id] @@ -85,13 +101,9 @@ def on_torrent_added(self, torrent_id, from_state=False): return trackers = list(torrent.get_status(["trackers"])["trackers"]) existing_urls = [tracker["url"] for tracker in trackers] - if "dynamic_trackerlist" in self.config: - if self.config["dynamic_trackerlist"]: - self.update_trackerlist() - else: - self.config["dynamic_trackers"] = [] + self.update_trackerlist_from_url() got_new_trackers = False - for new_tracker in self.config["trackers"]+self.config["dynamic_trackers"]: + for new_tracker in self.config["trackers"]: if new_tracker["url"] not in existing_urls: got_new_trackers = True trackers.append({ @@ -113,3 +125,4 @@ def set_config(self, config): def get_config(self): """Returns the config dictionary""" return self.config.config + diff --git a/defaulttrackers/data/config.glade b/defaulttrackers/data/config.glade index 34a2467..1a580fd 100644 --- a/defaulttrackers/data/config.glade +++ b/defaulttrackers/data/config.glade @@ -8,6 +8,169 @@ True False + + + True + False + 0 + none + + + True + False + 12 + + + True + False + + + True + False + + + True + False + tracker list URL: + + + False + False + 0 + + + + + True + True + + False + False + True + True + + + True + True + 6 + 1 + + + + + True + True + 0 + + + + + True + False + e.g.: https://newtrackon.com/api/stable +or https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt + True + + + True + True + 1 + + + + + True + False + + + True + False + reload every + + + False + False + 0 + + + + + 34 + True + True + + True + False + False + True + True + + + False + False + 6 + 1 + + + + + True + False + days + + + False + False + 2 + + + + + gtk-refresh + True + True + True + True + reload the tracker list now + True + + + + False + False + 10 + 3 + + + + + False + False + 2 + + + + + + + + + True + False + <b>Dynamic tracker list</b> (optional) + True + + + label_item + + + + + True + True + 0 + + True @@ -149,7 +312,7 @@ True True - 0 + 1 diff --git a/defaulttrackers/gtkui.py b/defaulttrackers/gtkui.py index b8bab6f..a37ba26 100644 --- a/defaulttrackers/gtkui.py +++ b/defaulttrackers/gtkui.py @@ -1,7 +1,7 @@ -# +# -*- coding: utf-8 -*- # gtkui.py # -# Copyright (C) 2013-2016 Stefan Talpalaru +# Copyright (C) 2013-2018 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -142,6 +142,7 @@ def enable(self): "on_remove_button_clicked": self.on_remove_button_clicked, "on_up_button_clicked": self.on_up_button_clicked, "on_down_button_clicked": self.on_down_button_clicked, + "on_reload_now_clicked": self.on_reload_now_clicked, }) component.get("Preferences").add_page("Default Trackers", self.glade.get_widget("prefs_box")) @@ -172,16 +173,28 @@ def disable(self): def on_apply_prefs(self): log.debug("applying prefs for DefaultTrackers") - config = { - "trackers": [{"url": str(row[0])} for row in self.store] - } - client.defaulttrackers.set_config(config) + try: + update_interval = int(self.glade.get_widget("tracker_list_update_interval").get_text() or 1) + except: + update_interval = 1 + self.config.update({ + "trackers": [{"url": str(row[0])} for row in self.store], + "dynamic_trackerlist_url": self.glade.get_widget("tracker_list_url").get_text(), + "dynamic_trackers_update_interval": update_interval, + }) + client.defaulttrackers.set_config(self.config) def on_show_prefs(self): client.defaulttrackers.get_config().addCallback(self.cb_get_config) def cb_get_config(self, config): "callback for on show_prefs" + self.config = config + # dynamic tracker list + if config["dynamic_trackerlist_url"]: + self.glade.get_widget("tracker_list_url").set_text(config["dynamic_trackerlist_url"]) + self.glade.get_widget("tracker_list_update_interval").set_text(str(config["dynamic_trackers_update_interval"])) + # trackers self.trackers = list(config["trackers"]) self.store.clear() for tracker in self.trackers: @@ -258,3 +271,10 @@ def on_down_button_clicked(self, widget): if nexti is not None: self.store.swap(tree_id, nexti) + def on_reload_now_clicked(self, widget): + # reset the last update timestamp + self.config["last_dynamic_trackers_update"] = 0 + self.on_apply_prefs() + # we need to reload the tracker list after the update + client.defaulttrackers.update_trackerlist_from_url().addCallback(self.cb_get_config) + diff --git a/egg/DefaultTrackers-0.1-py2.7.egg b/egg/DefaultTrackers-0.1-py2.7.egg index 015d33d85e3cf2b4ec5c93f6aa27d3f0a74d6cff..afb1d165b7fe3274818b0f3fb2d24514bcf8173e 100644 GIT binary patch delta 13782 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 From 7fc558564a05a8f466cf7da7b31b9155faa8388b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Tue, 3 Jul 2018 13:08:00 +0200 Subject: [PATCH 06/33] replace existing trackers when updating from list URL and also hide the "requests" import in an attempt to lower the number of bug reports from people not having it installed who probably don't even need it --- defaulttrackers/core.py | 12 +++++++----- egg/DefaultTrackers-0.1-py2.7.egg | Bin 21541 -> 21722 bytes setup.py | 5 ++++- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index ccab47e..bf85f0c 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -41,7 +41,6 @@ import datetime import logging import re -import requests import time import traceback @@ -81,15 +80,18 @@ def update(self): @export def update_trackerlist_from_url(self): if self.config["dynamic_trackerlist_url"]: + import requests # hide the import here in an attempt to lower the number of bug reports from people not having "python-requests" installed now = datetime.datetime.utcnow() last_update = datetime.datetime.utcfromtimestamp(self.config["last_dynamic_trackers_update"]) if now - last_update > datetime.timedelta(days=self.config["dynamic_trackers_update_interval"]): - old_trackers = set([t["url"] for t in self.config["trackers"]]) try: page = requests.get(self.config["dynamic_trackerlist_url"]).text - new_trackers = [url for url in re.findall(r'\w+://[\w\-.:/]+', page) if is_url(url) and url not in old_trackers] - for new_tracker in new_trackers: - self.config["trackers"].append({"url": new_tracker}) + new_trackers = [url for url in re.findall(r'\w+://[\w\-.:/]+', page) if is_url(url)] + if new_trackers: + # replace all existing trackers + self.config["trackers"] = [] + for new_tracker in new_trackers: + self.config["trackers"].append({"url": new_tracker}) self.config["last_dynamic_trackers_update"] = time.mktime(now.timetuple()) except: traceback.print_exc() diff --git a/egg/DefaultTrackers-0.1-py2.7.egg b/egg/DefaultTrackers-0.1-py2.7.egg index afb1d165b7fe3274818b0f3fb2d24514bcf8173e..9e1f496c9dead84ae762f6bdd776d2ed05fc5453 100644 GIT binary patch delta 8563 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 diff --git a/setup.py b/setup.py index 025b55e..e725b9e 100644 --- a/setup.py +++ b/setup.py @@ -2,7 +2,7 @@ # # setup.py # -# Copyright (C) 2013-2016 Stefan Talpalaru +# Copyright (C) 2013-2018 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -71,6 +71,9 @@ packages=[__plugin_name__.lower()], package_data = __pkg_data__, + install_requires=[ + 'requests', + ], entry_points=""" [deluge.plugin.core] From 7b310165e6f7ed8fd0f9919a2ab81573f3b0b424 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Wed, 3 Oct 2018 17:27:53 +0200 Subject: [PATCH 07/33] replace 'requests' with 'urllib2' --- defaulttrackers/core.py | 18 ++++++++++++++++-- egg/DefaultTrackers-0.1-py2.7.egg | Bin 21722 -> 22113 bytes setup.py | 1 - 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index bf85f0c..9f4b208 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -41,8 +41,10 @@ import datetime import logging import re +import ssl import time import traceback +import urllib2 from deluge.common import is_url from deluge.core.rpcserver import export @@ -80,12 +82,24 @@ def update(self): @export def update_trackerlist_from_url(self): if self.config["dynamic_trackerlist_url"]: - import requests # hide the import here in an attempt to lower the number of bug reports from people not having "python-requests" installed now = datetime.datetime.utcnow() last_update = datetime.datetime.utcfromtimestamp(self.config["last_dynamic_trackers_update"]) if now - last_update > datetime.timedelta(days=self.config["dynamic_trackers_update_interval"]): try: - page = requests.get(self.config["dynamic_trackerlist_url"]).text + headers = { + 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0', + 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', + 'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3', + 'Accept-Encoding': 'none', + 'Accept-Language': 'en-US,en;q=0.8', + } + + req = urllib2.Request(self.config["dynamic_trackerlist_url"], headers=headers) + try: + page = urllib2.urlopen(req, context=ssl._create_unverified_context()).read() + except: + # maybe an older Python version without a "context" argument + page = urllib2.urlopen(req).read() new_trackers = [url for url in re.findall(r'\w+://[\w\-.:/]+', page) if is_url(url)] if new_trackers: # replace all existing trackers diff --git a/egg/DefaultTrackers-0.1-py2.7.egg b/egg/DefaultTrackers-0.1-py2.7.egg index 9e1f496c9dead84ae762f6bdd776d2ed05fc5453..e19c4613ab558135c0c85ebe6e90dbdacb81218d 100644 GIT binary patch delta 5618 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 BimU(t diff --git a/setup.py b/setup.py index e725b9e..a99a67d 100644 --- a/setup.py +++ b/setup.py @@ -72,7 +72,6 @@ packages=[__plugin_name__.lower()], package_data = __pkg_data__, install_requires=[ - 'requests', ], entry_points=""" From 8739a79bd05f01a92ca63621fdaeb5dc1c180b1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Wed, 3 Oct 2018 17:31:04 +0200 Subject: [PATCH 08/33] remove broken link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cd08bd6..d88c2e3 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ Besides manually creating the default tracker list, you can also load it (period `python setup.py bdist_egg` -(or try to use the one from the [egg][2] directory - be careful to install the py2.7 version of Deluge, http://download.deluge-torrent.org/windows/py2.7/ if you're using Windows) +(or try to use the one from the [egg][2] directory - be careful to install the py2.7 version of Deluge, if you're using Windows) * add it to Deluge from Preferences -> Plugins -> Install Plugin From 3ddeaf4f240708f7470d44264562ff6380aa1ed6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Wed, 3 Oct 2018 17:38:16 +0200 Subject: [PATCH 09/33] update docs --- README.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index d88c2e3..3c9e01e 100644 --- a/README.md +++ b/README.md @@ -20,9 +20,11 @@ Besides manually creating the default tracker list, you can also load it (period * add it to Deluge from Preferences -> Plugins -> Install Plugin -## Dependencies +## Troubleshooting -* [Requests][3] +To get Deluge's output on Windows, run this in a terminal ("cmd" works): + +`"%ProgramFiles%\Deluge\deluge-debug.exe"` ## TODO: @@ -31,5 +33,4 @@ Besides manually creating the default tracker list, you can also load it (period [1]: http://deluge-torrent.org/ [2]: egg/ -[3]: http://python-requests.org/ From d049ca90fc83665a809266996b4b8e02868cce16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Sun, 5 May 2019 00:05:15 +0200 Subject: [PATCH 10/33] egg: direct download link --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 3c9e01e..fd9b834 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ Besides manually creating the default tracker list, you can also load it (period `python setup.py bdist_egg` -(or try to use the one from the [egg][2] directory - be careful to install the py2.7 version of Deluge, if you're using Windows) +(or try to use [the one from the "egg" directory][2] - be careful to install the py2.7 version of Deluge, if you're using Windows) * add it to Deluge from Preferences -> Plugins -> Install Plugin @@ -32,5 +32,5 @@ To get Deluge's output on Windows, run this in a terminal ("cmd" works): * WebUI version [1]: http://deluge-torrent.org/ -[2]: egg/ +[2]: https://github.com/stefantalpalaru/deluge-default-trackers/raw/master/egg/DefaultTrackers-0.1-py2.7.egg From c53f58bd593f901d5ff7be7e16754672f526f070 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Fri, 26 Jul 2019 01:44:01 +0200 Subject: [PATCH 11/33] support Deluge 2.0 and Python3 - bump version to 0.2 --- README.md | 4 + defaulttrackers/__init__.py | 16 +- defaulttrackers/common.py | 4 +- defaulttrackers/core.py | 13 +- defaulttrackers/data/config.ui | 315 ++++++++++++++++++++++++++++++ defaulttrackers/gtk3ui.py | 281 ++++++++++++++++++++++++++ defaulttrackers/gtkui.py | 9 +- defaulttrackers/webui.py | 5 +- egg/DefaultTrackers-0.1-py2.7.egg | Bin 22113 -> 0 bytes egg/DefaultTrackers-0.2-py2.7.egg | Bin 0 -> 31785 bytes setup.py | 8 +- 11 files changed, 636 insertions(+), 19 deletions(-) create mode 100644 defaulttrackers/data/config.ui create mode 100644 defaulttrackers/gtk3ui.py delete mode 100644 egg/DefaultTrackers-0.1-py2.7.egg create mode 100644 egg/DefaultTrackers-0.2-py2.7.egg diff --git a/README.md b/README.md index fd9b834..bf04aaf 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,8 @@ supposed to reach public trackers. Besides manually creating the default tracker list, you can also load it (periodically) from a URL. +This plugin is compatible with Deluge 1.3 and 2.0, Python2 2.7 and Python3 3.5+. + ## Installation * create the egg with @@ -18,6 +20,8 @@ Besides manually creating the default tracker list, you can also load it (period (or try to use [the one from the "egg" directory][2] - be careful to install the py2.7 version of Deluge, if you're using Windows) +* you need to use the same version of Python as the one that Deluge is running under. + * add it to Deluge from Preferences -> Plugins -> Install Plugin ## Troubleshooting diff --git a/defaulttrackers/__init__.py b/defaulttrackers/__init__.py index 81d6af9..913d90f 100644 --- a/defaulttrackers/__init__.py +++ b/defaulttrackers/__init__.py @@ -1,7 +1,7 @@ # # __init__.py # -# Copyright (C) 2013-2016 Stefan Talpalaru +# Copyright (C) 2013-2019 Stefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -38,22 +38,30 @@ # statement from all source files in the program, then also delete it here. # +from __future__ import absolute_import from deluge.plugins.init import PluginInitBase class CorePlugin(PluginInitBase): def __init__(self, plugin_name): - from core import Core as _plugin_cls + from .core import Core as _plugin_cls self._plugin_cls = _plugin_cls super(CorePlugin, self).__init__(plugin_name) class GtkUIPlugin(PluginInitBase): def __init__(self, plugin_name): - from gtkui import GtkUI as _plugin_cls + from .gtkui import GtkUI as _plugin_cls self._plugin_cls = _plugin_cls super(GtkUIPlugin, self).__init__(plugin_name) +class Gtk3UIPlugin(PluginInitBase): + def __init__(self, plugin_name): + from .gtk3ui import Gtk3UI as _plugin_cls + self._plugin_cls = _plugin_cls + super(Gtk3UIPlugin, self).__init__(plugin_name) + class WebUIPlugin(PluginInitBase): def __init__(self, plugin_name): - from webui import WebUI as _plugin_cls + from .webui import WebUI as _plugin_cls self._plugin_cls = _plugin_cls super(WebUIPlugin, self).__init__(plugin_name) + diff --git a/defaulttrackers/common.py b/defaulttrackers/common.py index e7e72fe..6a28ee8 100644 --- a/defaulttrackers/common.py +++ b/defaulttrackers/common.py @@ -1,7 +1,7 @@ # # common.py # -# Copyright (C) 2013-2016 Stefan Talpalaru +# Copyright (C) 2013-2019 Stefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -39,6 +39,8 @@ # +from __future__ import absolute_import, unicode_literals + def get_resource(filename): import pkg_resources, os return pkg_resources.resource_filename("defaulttrackers", diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 9f4b208..70bccc5 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # core.py # -# Copyright (C) 2013-2018 Ștefan Talpalaru +# Copyright (C) 2013-2019 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -38,13 +38,14 @@ # statement from all source files in the program, then also delete it here. # +from __future__ import absolute_import, unicode_literals import datetime import logging import re import ssl import time import traceback -import urllib2 +import six from deluge.common import is_url from deluge.core.rpcserver import export @@ -94,13 +95,13 @@ def update_trackerlist_from_url(self): 'Accept-Language': 'en-US,en;q=0.8', } - req = urllib2.Request(self.config["dynamic_trackerlist_url"], headers=headers) + req = six.moves.urllib.request.Request(self.config["dynamic_trackerlist_url"], headers=headers) try: - page = urllib2.urlopen(req, context=ssl._create_unverified_context()).read() + page = six.moves.urllib.request.urlopen(req, context=ssl._create_unverified_context()).read() except: # maybe an older Python version without a "context" argument - page = urllib2.urlopen(req).read() - new_trackers = [url for url in re.findall(r'\w+://[\w\-.:/]+', page) if is_url(url)] + page = six.moves.urllib.request.urlopen(req).read() + new_trackers = [six.ensure_str(url) for url in re.findall(b'\w+://[\w\-.:/]+', page) if is_url(six.ensure_text(url))] if new_trackers: # replace all existing trackers self.config["trackers"] = [] diff --git a/defaulttrackers/data/config.ui b/defaulttrackers/data/config.ui new file mode 100644 index 0000000..fd13d31 --- /dev/null +++ b/defaulttrackers/data/config.ui @@ -0,0 +1,315 @@ + + + + + + False + + + True + False + + + True + False + 0 + none + + + True + False + 12 + + + True + False + + + True + False + + + True + False + tracker list URL: + + + False + False + 0 + + + + + True + True + + False + False + True + True + + + True + True + 6 + 1 + + + + + True + True + 0 + + + + + True + False + e.g.: https://newtrackon.com/api/stable +or https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt + True + + + True + True + 1 + + + + + True + False + + + True + False + reload every + + + False + False + 0 + + + + + 34 + True + True + + True + False + False + True + True + + + False + False + 6 + 1 + + + + + True + False + days + + + False + False + 2 + + + + + gtk-refresh + True + True + True + True + reload the tracker list now + True + + + + False + False + 10 + 3 + + + + + False + False + 2 + + + + + + + + + True + False + <b>Dynamic tracker list</b> (optional) + True + + + + + True + True + 0 + + + + + True + False + 0 + none + + + True + False + 12 + + + True + False + 2 + + + True + True + automatic + automatic + etched-in + + + + + + True + True + 0 + + + + + True + False + 5 + start + + + gtk-go-up + True + True + True + True + + + + False + False + 0 + + + + + gtk-add + True + True + True + True + + + + False + False + 1 + + + + + gtk-edit + True + True + True + True + + + + False + False + 2 + + + + + gtk-remove + True + True + True + True + + + + False + False + 3 + + + + + gtk-go-down + True + True + True + True + + + + False + False + 4 + + + + + False + True + 3 + 1 + + + + + + + + + True + False + <b>Default trackers</b> + True + + + + + True + True + 1 + + + + + + diff --git a/defaulttrackers/gtk3ui.py b/defaulttrackers/gtk3ui.py new file mode 100644 index 0000000..a474273 --- /dev/null +++ b/defaulttrackers/gtk3ui.py @@ -0,0 +1,281 @@ +# -*- coding: utf-8 -*- +# gtkui.py +# +# Copyright (C) 2013-2019 Ștefan Talpalaru +# +# Basic plugin template created by: +# Copyright (C) 2008 Martijn Voncken +# Copyright (C) 2007-2009 Andrew Resch +# Copyright (C) 2009 Damien Churchill +# Copyright (C) 2010 Pedro Algarvio +# +# Deluge is free software. +# +# You may redistribute it and/or modify it under the terms of the +# GNU General Public License, as published by the Free Software +# Foundation; either version 3 of the License, or (at your option) +# any later version. +# +# deluge is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with deluge. If not, write to: +# The Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor +# Boston, MA 02110-1301, USA. +# +# In addition, as a special exception, the copyright holders give +# permission to link the code of portions of this program with the OpenSSL +# library. +# You must obey the GNU General Public License in all respects for all of +# the code used other than OpenSSL. If you modify file(s) with this +# exception, you may extend this exception to your version of the file(s), +# but you are not obligated to do so. If you do not wish to do so, delete +# this exception statement from your version. If you delete this exception +# statement from all source files in the program, then also delete it here. +# + +from __future__ import absolute_import, unicode_literals +from gi.repository import Gtk +import logging + +from deluge.ui.client import client +from deluge.plugins.pluginbase import Gtk3PluginBase +import deluge.component as component +from deluge.ui.gtk3 import dialogs +#from pprint import pprint + +from .common import get_resource + +log = logging.getLogger(__name__) + +def iter_prev(iter, model): + path = model.get_path(iter) + position = path[-1] + if position == 0: + return None + prev_path = list(path)[:-1] + prev_path.append(position - 1) + prev = model.get_iter(tuple(prev_path)) + return prev + +class OptionsDialog(): + def __init__(self, gtkui): + self.gtkui = gtkui + + def show(self, options=None, item_id=None, item_index=None): + self.builder = Gtk.Builder.new_from_file(get_resource("config.ui")) + self.builder.connect_signals({ + "on_opts_add_button_clicked": self.on_add, + "on_opts_apply_button_clicked": self.on_apply, + "on_opts_cancel_button_clicked": self.on_cancel, + "on_options_dialog_close": self.on_cancel, + }) + self.dialog = self.builder.get_object("options_dialog") + self.dialog.set_transient_for(component.get("Preferences").pref_dialog) + + if item_id: + #We have an existing item_id, we are editing + self.builder.get_object("opts_add_button").hide() + self.builder.get_object("opts_apply_button").show() + self.item_id = item_id + else: + #We don't have an id, adding + self.builder.get_object("opts_add_button").show() + self.builder.get_object("opts_apply_button").hide() + self.item_id = None + self.item_index = item_index + + self.load_options(options) + self.dialog.run() + self.dialog.destroy() + + def load_options(self, options): + if options: + self.builder.get_object("tracker_entry").get_buffer().set_text(options.get("url", "")) + + def in_store(self, item): + for row in self.gtkui.store: + if row[0] == item: + return True + return False + + def on_add(self, widget): + try: + options = self.generate_opts() + for url in options["urls"]: + if not self.in_store(url): + self.gtkui.store.append([url]) + self.gtkui.trackers.append({"url": url}) + except Exception as err: + dialogs.ErrorDialog("Error", str(err), self.dialog).run() + + def generate_opts(self): + # generate options dict based on gtk objects + buffer = self.builder.get_object("tracker_entry").get_buffer() + options = { + "urls": buffer.get_text(*buffer.get_bounds()).split(), + } + if len(options["urls"]) == 0: + raise Exception("no URLs") + return options + + def on_apply(self, widget): + try: + options = self.generate_opts() + self.gtkui.store[self.item_id][0] = options["urls"][0] + self.gtkui.trackers[self.item_index]["url"] = options["urls"][0] + except Exception as err: + dialogs.ErrorDialog("Error", str(err), self.dialog).run() + + def on_cancel(self, widget): + self.dialog.response(Gtk.ResponseType.DELETE_EVENT) + +class Gtk3UI(Gtk3PluginBase): + def enable(self): + self.builder = Gtk.Builder.new_from_file(get_resource("config.ui")) + self.builder.connect_signals({ + "on_add_button_clicked": self.on_add_button_clicked, + "on_edit_button_clicked": self.on_edit_button_clicked, + "on_remove_button_clicked": self.on_remove_button_clicked, + "on_up_button_clicked": self.on_up_button_clicked, + "on_down_button_clicked": self.on_down_button_clicked, + "on_reload_now_clicked": self.on_reload_now_clicked, + }) + + component.get("Preferences").add_page("Default Trackers", self.builder.get_object("prefs_box")) + component.get("PluginManager").register_hook("on_apply_prefs", self.on_apply_prefs) + component.get("PluginManager").register_hook("on_show_prefs", self.on_show_prefs) + + self.trackers = [] + scrolled_window = self.builder.get_object("scrolledwindow1") + self.store = self.create_model() + self.tree_view = Gtk.TreeView(self.store) + tree_selection = self.tree_view.get_selection() + tree_selection.set_mode(Gtk.SelectionMode.MULTIPLE) + self.tree_view.connect("cursor-changed", self.on_listitem_activated) + self.tree_view.connect("row-activated", self.on_edit_button_clicked) + self.tree_view.set_rules_hint(True) + rendererText = Gtk.CellRendererText() + column = Gtk.TreeViewColumn("URL", rendererText, text=0) + self.tree_view.append_column(column) + scrolled_window.add(self.tree_view) + scrolled_window.show_all() + + self.opts_dialog = OptionsDialog(self) + + def disable(self): + component.get("Preferences").remove_page("Default Trackers") + component.get("PluginManager").deregister_hook("on_apply_prefs", self.on_apply_prefs) + component.get("PluginManager").deregister_hook("on_show_prefs", self.on_show_prefs) + + def on_apply_prefs(self): + log.debug("applying prefs for DefaultTrackers") + try: + update_interval = int(self.builder.get_object("tracker_list_update_interval").get_text() or 1) + except: + update_interval = 1 + self.config.update({ + "trackers": [{"url": str(row[0])} for row in self.store], + "dynamic_trackerlist_url": self.builder.get_object("tracker_list_url").get_text(), + "dynamic_trackers_update_interval": update_interval, + }) + client.defaulttrackers.set_config(self.config) + + def on_show_prefs(self): + client.defaulttrackers.get_config().addCallback(self.cb_get_config) + + def cb_get_config(self, config): + "callback for on show_prefs" + self.config = config + # dynamic tracker list + if config["dynamic_trackerlist_url"]: + self.builder.get_object("tracker_list_url").set_text(config["dynamic_trackerlist_url"]) + self.builder.get_object("tracker_list_update_interval").set_text(str(config["dynamic_trackers_update_interval"])) + # trackers + self.trackers = list(config["trackers"]) + self.store.clear() + for tracker in self.trackers: + self.store.append([tracker["url"]]) + # Workaround for cached builder signal appearing when re-enabling plugin in same session + if self.builder.get_object("edit_button"): + # Disable the remove and edit buttons, because nothing in the store is selected + self.builder.get_object("remove_button").set_sensitive(False) + self.builder.get_object("edit_button").set_sensitive(False) + self.builder.get_object("up_button").set_sensitive(False) + self.builder.get_object("down_button").set_sensitive(False) + + def create_model(self): + store = Gtk.ListStore(str) + for tracker in self.trackers: + store.append([tracker["url"]]) + return store + + def on_listitem_activated(self, treeview): + tree, tree_paths = self.tree_view.get_selection().get_selected_rows() + if tree_paths: + self.builder.get_object("edit_button").set_sensitive(True) + self.builder.get_object("remove_button").set_sensitive(True) + self.builder.get_object("up_button").set_sensitive(True) + self.builder.get_object("down_button").set_sensitive(True) + else: + self.builder.get_object("edit_button").set_sensitive(False) + self.builder.get_object("remove_button").set_sensitive(False) + self.builder.get_object("up_button").set_sensitive(False) + self.builder.get_object("down_button").set_sensitive(False) + + def on_add_button_clicked(self, widget): + self.opts_dialog.show() + + def on_remove_button_clicked(self, widget): + tree, tree_paths = self.tree_view.get_selection().get_selected_rows() + to_remove = [] + for tree_path in tree_paths: + tree_id = tree.get_iter(tree_path) + index = tree_path[0] + to_remove.append((index, tree_id)) + for index, tree_id in sorted(to_remove, reverse=True): + # we need to delete the indices in reverse order to avoid offsets + del self.trackers[index] + self.store.remove(tree_id) + + def on_edit_button_clicked(self, widget): + tree, tree_paths = self.tree_view.get_selection().get_selected_rows() + if tree_paths: + tree_path = tree_paths[0] + tree_id = tree.get_iter(tree_path) + index = tree_path[0] + url = str(self.store.get_value(tree_id, 0)) + if url: + self.opts_dialog.show({ + "url": url, + }, tree_id, index) + + def on_up_button_clicked(self, widget): + tree, tree_paths = self.tree_view.get_selection().get_selected_rows() + if tree_paths: + tree_path = tree_paths[0] + tree_id = tree.get_iter(tree_path) + prev = iter_prev(tree_id, self.store) + if prev is not None: + self.store.swap(prev, tree_id) + + def on_down_button_clicked(self, widget): + tree, tree_paths = self.tree_view.get_selection().get_selected_rows() + if tree_paths: + tree_path = tree_paths[0] + tree_id = tree.get_iter(tree_path) + nexti = self.store.iter_next(tree_id) + if nexti is not None: + self.store.swap(tree_id, nexti) + + def on_reload_now_clicked(self, widget): + # reset the last update timestamp + self.config["last_dynamic_trackers_update"] = 0 + self.on_apply_prefs() + # we need to reload the tracker list after the update + client.defaulttrackers.update_trackerlist_from_url().addCallback(self.cb_get_config) + diff --git a/defaulttrackers/gtkui.py b/defaulttrackers/gtkui.py index a37ba26..cdc2da9 100644 --- a/defaulttrackers/gtkui.py +++ b/defaulttrackers/gtkui.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # gtkui.py # -# Copyright (C) 2013-2018 Ștefan Talpalaru +# Copyright (C) 2013-2019 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -38,6 +38,7 @@ # statement from all source files in the program, then also delete it here. # +from __future__ import absolute_import, unicode_literals import gtk import logging @@ -47,7 +48,7 @@ from deluge.ui.gtkui import dialogs #from pprint import pprint -from common import get_resource +from .common import get_resource log = logging.getLogger(__name__) @@ -109,7 +110,7 @@ def on_add(self, widget): if not self.in_store(url): self.gtkui.store.append([url]) self.gtkui.trackers.append({"url": url}) - except Exception, err: + except Exception as err: dialogs.ErrorDialog("Error", str(err), self.dialog).run() def generate_opts(self): @@ -127,7 +128,7 @@ def on_apply(self, widget): options = self.generate_opts() self.gtkui.store[self.item_id][0] = options["urls"][0] self.gtkui.trackers[self.item_index]["url"] = options["urls"][0] - except Exception, err: + except Exception as err: dialogs.ErrorDialog("Error", str(err), self.dialog).run() def on_cancel(self, widget): diff --git a/defaulttrackers/webui.py b/defaulttrackers/webui.py index 7f6dc84..c717d38 100644 --- a/defaulttrackers/webui.py +++ b/defaulttrackers/webui.py @@ -1,7 +1,7 @@ # # webui.py # -# Copyright (C) 2013-2016 Stefan Talpalaru +# Copyright (C) 2013-2019 Stefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -38,12 +38,13 @@ # statement from all source files in the program, then also delete it here. # +from __future__ import absolute_import, unicode_literals import logging from deluge.ui.client import client from deluge import component from deluge.plugins.pluginbase import WebPluginBase -from common import get_resource +from .common import get_resource log = logging.getLogger(__name__) diff --git a/egg/DefaultTrackers-0.1-py2.7.egg b/egg/DefaultTrackers-0.1-py2.7.egg deleted file mode 100644 index e19c4613ab558135c0c85ebe6e90dbdacb81218d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22113 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
M}*_ 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 +# Copyright (C) 2013-2019 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -39,12 +39,13 @@ # statement from all source files in the program, then also delete it here. # +from __future__ import absolute_import from setuptools import setup __plugin_name__ = "DefaultTrackers" __author__ = u"Ștefan Talpalaru" __author_email__ = "stefantalpalaru@yahoo.com" -__version__ = "0.1" +__version__ = "0.2" __url__ = "https://github.com/stefantalpalaru/deluge-default-trackers" __license__ = "GPLv3" __description__ = "Add a list of default trackers to all the public torrents" @@ -72,6 +73,7 @@ packages=[__plugin_name__.lower()], package_data = __pkg_data__, install_requires=[ + 'six', ], entry_points=""" @@ -79,6 +81,8 @@ %(plugin_name)s = %(plugin_module)s:CorePlugin [deluge.plugin.gtkui] %(plugin_name)s = %(plugin_module)s:GtkUIPlugin + [deluge.plugin.gtk3ui] + %(plugin_name)s = %(plugin_module)s:Gtk3UIPlugin [deluge.plugin.web] %(plugin_name)s = %(plugin_module)s:WebUIPlugin """ % dict(plugin_name=__plugin_name__, plugin_module=__plugin_name__.lower()) From ade4b538dcce8a5e581092bf0451ae65565329bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Fri, 26 Jul 2019 01:46:00 +0200 Subject: [PATCH 12/33] fix egg link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index bf04aaf..a9d151b 100644 --- a/README.md +++ b/README.md @@ -36,5 +36,5 @@ To get Deluge's output on Windows, run this in a terminal ("cmd" works): * WebUI version [1]: http://deluge-torrent.org/ -[2]: https://github.com/stefantalpalaru/deluge-default-trackers/raw/master/egg/DefaultTrackers-0.1-py2.7.egg +[2]: https://github.com/stefantalpalaru/deluge-default-trackers/raw/master/egg/DefaultTrackers-0.2-py2.7.egg From 0049ffbb3e8d35b8842c231a88bda3ae3c9292a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Sat, 27 Jul 2019 15:45:49 +0200 Subject: [PATCH 13/33] document the "six" dependency --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index a9d151b..33ff9e2 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,8 @@ This plugin is compatible with Deluge 1.3 and 2.0, Python2 2.7 and Python3 3.5+. * you need to use the same version of Python as the one that Deluge is running under. +* if you're using it with Deluge-1.3, you might not have [six](https://pypi.org/project/six/) installed. Install it. + * add it to Deluge from Preferences -> Plugins -> Install Plugin ## Troubleshooting From 690e13ff56299d5af285db0c1f7c00758f2bb50a Mon Sep 17 00:00:00 2001 From: Thiago Almeida Date: Thu, 7 Nov 2019 21:51:40 +0100 Subject: [PATCH 14/33] Enforcing six version on setup.py This plugin uses a function from six that was introduced on version 1.12, so now we will install the right six version. --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index b35c7d8..e668141 100644 --- a/setup.py +++ b/setup.py @@ -73,7 +73,7 @@ packages=[__plugin_name__.lower()], package_data = __pkg_data__, install_requires=[ - 'six', + 'six>=1.12', ], entry_points=""" From 0e9a1029c3afa87ec776142beed75511a2126b8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Wed, 10 Jun 2020 03:51:23 +0200 Subject: [PATCH 15/33] egg/DefaultTrackers-0.2-py3.6.egg --- egg/DefaultTrackers-0.2-py3.6.egg | Bin 0 -> 32037 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 egg/DefaultTrackers-0.2-py3.6.egg diff --git a/egg/DefaultTrackers-0.2-py3.6.egg b/egg/DefaultTrackers-0.2-py3.6.egg new file mode 100644 index 0000000000000000000000000000000000000000..dd44ad38233d739c87df9e2f7badb03f26966bfa GIT binary patch literal 32037 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

?Hyr2#dk; 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 Date: Sat, 16 Jan 2021 17:32:27 +0100 Subject: [PATCH 16/33] Drop support for Python 2. Remove six dependency. --- README.md | 4 +--- defaulttrackers/core.py | 10 +++++----- setup.py | 8 +++----- 3 files changed, 9 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 33ff9e2..a6ac79c 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ supposed to reach public trackers. Besides manually creating the default tracker list, you can also load it (periodically) from a URL. -This plugin is compatible with Deluge 1.3 and 2.0, Python2 2.7 and Python3 3.5+. +This plugin is compatible with Deluge 2.0 and Python 3.6+. ## Installation @@ -22,8 +22,6 @@ This plugin is compatible with Deluge 1.3 and 2.0, Python2 2.7 and Python3 3.5+. * you need to use the same version of Python as the one that Deluge is running under. -* if you're using it with Deluge-1.3, you might not have [six](https://pypi.org/project/six/) installed. Install it. - * add it to Deluge from Preferences -> Plugins -> Install Plugin ## Troubleshooting diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 70bccc5..9608224 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -45,7 +45,7 @@ import ssl import time import traceback -import six +import urllib from deluge.common import is_url from deluge.core.rpcserver import export @@ -95,13 +95,13 @@ def update_trackerlist_from_url(self): 'Accept-Language': 'en-US,en;q=0.8', } - req = six.moves.urllib.request.Request(self.config["dynamic_trackerlist_url"], headers=headers) + req = urllib.request.Request(self.config["dynamic_trackerlist_url"], headers=headers) try: - page = six.moves.urllib.request.urlopen(req, context=ssl._create_unverified_context()).read() + page = urllib.request.urlopen(req, context=ssl._create_unverified_context()).read() except: # maybe an older Python version without a "context" argument - page = six.moves.urllib.request.urlopen(req).read() - new_trackers = [six.ensure_str(url) for url in re.findall(b'\w+://[\w\-.:/]+', page) if is_url(six.ensure_text(url))] + page = urllib.request.urlopen(req).read() + new_trackers = [url for url in re.findall(b'\w+://[\w\-.:/]+', page) if is_url(url)] if new_trackers: # replace all existing trackers self.config["trackers"] = [] diff --git a/setup.py b/setup.py index e668141..ff0aca2 100644 --- a/setup.py +++ b/setup.py @@ -45,7 +45,7 @@ __plugin_name__ = "DefaultTrackers" __author__ = u"Ștefan Talpalaru" __author_email__ = "stefantalpalaru@yahoo.com" -__version__ = "0.2" +__version__ = "0.3" __url__ = "https://github.com/stefantalpalaru/deluge-default-trackers" __license__ = "GPLv3" __description__ = "Add a list of default trackers to all the public torrents" @@ -71,10 +71,8 @@ long_description=__long_description__ if __long_description__ else __description__, packages=[__plugin_name__.lower()], - package_data = __pkg_data__, - install_requires=[ - 'six>=1.12', - ], + package_data=__pkg_data__, + install_requires=[], entry_points=""" [deluge.plugin.core] From f2b8d7f7db5a1b4624150f033cc2f01d5f5a7ebb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Fri, 22 Jan 2021 18:08:32 +0100 Subject: [PATCH 17/33] convert byte string URLs to unicode --- defaulttrackers/core.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 9608224..602a97e 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -47,7 +47,7 @@ import traceback import urllib -from deluge.common import is_url +from deluge.common import is_url, decode_bytes from deluge.core.rpcserver import export from deluge.plugins.pluginbase import CorePluginBase import deluge.component as component @@ -101,7 +101,7 @@ def update_trackerlist_from_url(self): except: # maybe an older Python version without a "context" argument page = urllib.request.urlopen(req).read() - new_trackers = [url for url in re.findall(b'\w+://[\w\-.:/]+', page) if is_url(url)] + new_trackers = [decode_bytes(url) for url in re.findall(b'\w+://[\w\-.:/]+', page) if is_url(decode_bytes(url))] if new_trackers: # replace all existing trackers self.config["trackers"] = [] From 3114c3f6a83dc2131cd11693b061e7c13931f099 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Fri, 22 Jan 2021 18:12:24 +0100 Subject: [PATCH 18/33] release 0.3 --- README.md | 6 +++--- egg/DefaultTrackers-0.2-py2.7.egg | Bin 31785 -> 0 bytes egg/DefaultTrackers-0.3-py3.7.egg | Bin 0 -> 31927 bytes 3 files changed, 3 insertions(+), 3 deletions(-) delete mode 100644 egg/DefaultTrackers-0.2-py2.7.egg create mode 100644 egg/DefaultTrackers-0.3-py3.7.egg diff --git a/README.md b/README.md index a6ac79c..4765df5 100644 --- a/README.md +++ b/README.md @@ -18,9 +18,9 @@ This plugin is compatible with Deluge 2.0 and Python 3.6+. `python setup.py bdist_egg` -(or try to use [the one from the "egg" directory][2] - be careful to install the py2.7 version of Deluge, if you're using Windows) +(or try to use [the one from the "egg" directory][2] - rename it, if it doesn't match your Python3 version) -* you need to use the same version of Python as the one that Deluge is running under. +* you need to use the same version of Python3 as the one that Deluge is running under. * add it to Deluge from Preferences -> Plugins -> Install Plugin @@ -36,5 +36,5 @@ To get Deluge's output on Windows, run this in a terminal ("cmd" works): * WebUI version [1]: http://deluge-torrent.org/ -[2]: https://github.com/stefantalpalaru/deluge-default-trackers/raw/master/egg/DefaultTrackers-0.2-py2.7.egg +[2]: https://github.com/stefantalpalaru/deluge-default-trackers/raw/master/egg/DefaultTrackers-0.3-py3.7.egg diff --git a/egg/DefaultTrackers-0.2-py2.7.egg b/egg/DefaultTrackers-0.2-py2.7.egg deleted file mode 100644 index bd5991123c8f53ad20b2f665f5101a1a87c1e877..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31785 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 LugdKI`tAP#E2%6d literal 0 HcmV?d00001 From 0cf6f6f42ac23d7cf5fcfb1bcb59aede5c23106f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Fri, 22 Jan 2021 18:25:57 +0100 Subject: [PATCH 19/33] version bump --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index ff0aca2..2e1a231 100644 --- a/setup.py +++ b/setup.py @@ -45,7 +45,7 @@ __plugin_name__ = "DefaultTrackers" __author__ = u"Ștefan Talpalaru" __author_email__ = "stefantalpalaru@yahoo.com" -__version__ = "0.3" +__version__ = "0.4" __url__ = "https://github.com/stefantalpalaru/deluge-default-trackers" __license__ = "GPLv3" __description__ = "Add a list of default trackers to all the public torrents" From 1b8c9f33f1aa4d3188d69c8774360842127a297e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Sun, 27 Mar 2022 21:55:22 +0200 Subject: [PATCH 20/33] README: add tracker list URLs --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 4765df5..ea93882 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,10 @@ This plugin is compatible with Deluge 2.0 and Python 3.6+. * add it to Deluge from Preferences -> Plugins -> Install Plugin +* now you can go to Preferences -> Default Trackers and add individual default trackers, or the URL of a list that should be periodically downloaded + (e.g.: https://newtrackon.com/api/stable +or https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt) + ## Troubleshooting To get Deluge's output on Windows, run this in a terminal ("cmd" works): From 91ef13529b6bab90e8102b4afd29766c9e6e5804 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Mon, 25 Apr 2022 22:01:47 +0200 Subject: [PATCH 21/33] WebUI interface + Gtk3 fix --- README.md | 3 +- defaulttrackers/common.py | 11 +- defaulttrackers/data/defaulttrackers.js | 101 +++++++++++++-- defaulttrackers/data/options.ui | 156 ++++++++++++++++++++++++ defaulttrackers/gtk3ui.py | 9 +- defaulttrackers/webui.py | 18 +-- 6 files changed, 267 insertions(+), 31 deletions(-) create mode 100644 defaulttrackers/data/options.ui diff --git a/README.md b/README.md index ea93882..c500d91 100644 --- a/README.md +++ b/README.md @@ -37,8 +37,7 @@ To get Deluge's output on Windows, run this in a terminal ("cmd" works): ## TODO: * log the added trackers so we can remove them from torrents when they are deleted from the default list -* WebUI version [1]: http://deluge-torrent.org/ -[2]: https://github.com/stefantalpalaru/deluge-default-trackers/raw/master/egg/DefaultTrackers-0.3-py3.7.egg +[2]: https://github.com/stefantalpalaru/deluge-default-trackers/raw/master/egg diff --git a/defaulttrackers/common.py b/defaulttrackers/common.py index 6a28ee8..d0775fc 100644 --- a/defaulttrackers/common.py +++ b/defaulttrackers/common.py @@ -1,7 +1,7 @@ -# +# -*- coding: utf-8 -*- # common.py # -# Copyright (C) 2013-2019 Stefan Talpalaru +# Copyright (C) 2013-2022 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -39,9 +39,8 @@ # -from __future__ import absolute_import, unicode_literals +import os +from pkg_resources import resource_filename def get_resource(filename): - import pkg_resources, os - return pkg_resources.resource_filename("defaulttrackers", - os.path.join("data", filename)) + return resource_filename(__package__, os.path.join("data", filename)) diff --git a/defaulttrackers/data/defaulttrackers.js b/defaulttrackers/data/defaulttrackers.js index b0bcc7f..0df6ce6 100644 --- a/defaulttrackers/data/defaulttrackers.js +++ b/defaulttrackers/data/defaulttrackers.js @@ -3,7 +3,7 @@ Script: defaulttrackers.js The client-side javascript code for the DefaultTrackers plugin. Copyright: - (C) Stefan Talpalaru 2013-2016 + (C) Ștefan Talpalaru 2013-2022 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) @@ -31,20 +31,107 @@ Copyright: statement from all source files in the program, then also delete it here. */ -DefaultTrackersPlugin = Ext.extend(Deluge.Plugin, { +DefaultTrackersPanel = Ext.extend(Ext.form.FormPanel, { constructor: function(config) { config = Ext.apply({ - name: "DefaultTrackers" + border: false, + title: ("Default Trackers"), + autoHeight: true, }, config); - DefaultTrackersPlugin.superclass.constructor.call(this, config); + DefaultTrackersPanel.superclass.constructor.call(this, config); }, + initComponent: function() { + DefaultTrackersPanel.superclass.initComponent.call(this); + this.opts = new Deluge.OptionsManager(); - onDisable: function() { + var fieldset = this.add({ + xtype: 'fieldset', + title: ('Dynamic tracker list (optional)'), + autoHeight: true, + autoWidth: true, + }); + this.opts.bind('dynamic_trackerlist_url', fieldset.add({ + xtype: 'textarea', + fieldLabel: ('tracker list URL'), + anchor: '100%', + name: 'dynamic_trackerlist_url', + autoWidth: true, + })); + fieldset.add({ + xtype: 'displayfield', + fieldLabel: 'E.g.', + value: 'https://newtrackon.com/api/stable or
https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt', + }); + this.opts.bind('dynamic_trackers_update_interval', fieldset.add({ + xtype: 'textfield', + fieldLabel: ('reload every X days'), + anchor: '100%', + name: 'dynamic_trackers_update_interval', + autoWidth: true, + })); + + fieldset = this.add({ + xtype: 'fieldset', + title: ('Default trackers'), + autoHeight: true, + autoWidth: true, + }); + this.opts.bind('trackers_ta', fieldset.add({ + xtype: 'textarea', + fieldLabel: (''), + anchor: '100%', + name: 'trackers_ta', + height: '200px', + autoWidth: true, + })); + deluge.preferences.on('show', this.onPreferencesShow, this); }, - onEnable: function() { + onPreferencesShow: function() { + deluge.client.defaulttrackers.get_config({ + success: function(config) { + config.trackers_ta = config.trackers + .map(function(tracker){return tracker.url}) + .join('\n'); + this.opts.set(config); + }, + scope: this, + }); + }, + onApply: function(e) { + var changed = this.opts.getDirty(); + if (!Ext.isObjectEmpty(changed)) { + if (Ext.isDefined(changed['trackers_ta'])) { + changed.trackers = changed.trackers_ta + .split('\n') + .filter(function(line){return line != ''}) + .map(function(url){return {'url': url}}); + } + + deluge.client.defaulttrackers.set_config(changed, { + success: this.onSetConfig, + scope: this, + }); + } + }, + onSetConfig: function() { + this.opts.commit(); + }, +}); + +DefaultTrackersPlugin = Ext.extend(Deluge.Plugin, { + name: "Default Trackers", + + onDisable: function() { + deluge.preferences.removePage(this.prefsPage); + }, + + onEnable: function() { + this.prefsPage = new DefaultTrackersPanel(); + this.prefsPage = deluge.preferences.addPage(this.prefsPage); } }); -new DefaultTrackersPlugin(); + +Deluge.registerPlugin("Default Trackers", DefaultTrackersPlugin); diff --git a/defaulttrackers/data/options.ui b/defaulttrackers/data/options.ui new file mode 100644 index 0000000..1b8a089 --- /dev/null +++ b/defaulttrackers/data/options.ui @@ -0,0 +1,156 @@ + + + + + + False + 10 + Tracker Properties + True + 250 + dialog + + + + True + False + 2 + + + True + False + 0 + 0 + none + + + True + False + + + 134 + True + True + + + + + + + True + False + <b>Trackers</b> (one per line) + True + + + + + True + False + 0 + + + + + True + False + + + True + False + 0 + 5 + 5 + +<b>Examples:</b> + +udp://tracker.opentrackr.org:1337/announce +udp://tracker.openbittorrent.com:80 +udp://tracker.publicbt.com:80 +udp://tracker.istole.it:80 +udp://tracker.ccc.de:80 +http://tracker.coppersurfer.tk:6969 +udp://open.demonii.com:1337 +http://tracker.baravik.org:6970/announce +http://tracker2.wasabii.com.tw:6969/announce +udp://9.rarbg.me:2710/announce +udp://tracker.zer0day.to:1337/announce + + True + True + + + True + True + 0 + + + + + True + True + 1 + + + + + True + False + center + + + gtk-cancel + True + True + False + True + + + + False + False + 0 + + + + + gtk-add + True + True + False + True + + + + False + False + 1 + + + + + gtk-apply + True + True + False + True + + + + False + False + 2 + + + + + False + True + end + 2 + + + + + + diff --git a/defaulttrackers/gtk3ui.py b/defaulttrackers/gtk3ui.py index a474273..00f77fd 100644 --- a/defaulttrackers/gtk3ui.py +++ b/defaulttrackers/gtk3ui.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # gtkui.py # -# Copyright (C) 2013-2019 Ștefan Talpalaru +# Copyright (C) 2013-2022 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -41,6 +41,7 @@ from __future__ import absolute_import, unicode_literals from gi.repository import Gtk import logging +import os from deluge.ui.client import client from deluge.plugins.pluginbase import Gtk3PluginBase @@ -67,7 +68,7 @@ def __init__(self, gtkui): self.gtkui = gtkui def show(self, options=None, item_id=None, item_index=None): - self.builder = Gtk.Builder.new_from_file(get_resource("config.ui")) + self.builder = Gtk.Builder.new_from_file(get_resource("options.ui")) self.builder.connect_signals({ "on_opts_add_button_clicked": self.on_add, "on_opts_apply_button_clicked": self.on_apply, @@ -110,6 +111,7 @@ def on_add(self, widget): if not self.in_store(url): self.gtkui.store.append([url]) self.gtkui.trackers.append({"url": url}) + self.dialog.response(Gtk.ResponseType.DELETE_EVENT) except Exception as err: dialogs.ErrorDialog("Error", str(err), self.dialog).run() @@ -117,7 +119,7 @@ def generate_opts(self): # generate options dict based on gtk objects buffer = self.builder.get_object("tracker_entry").get_buffer() options = { - "urls": buffer.get_text(*buffer.get_bounds()).split(), + "urls": buffer.get_text(*buffer.get_bounds(), False).split(), } if len(options["urls"]) == 0: raise Exception("no URLs") @@ -128,6 +130,7 @@ def on_apply(self, widget): options = self.generate_opts() self.gtkui.store[self.item_id][0] = options["urls"][0] self.gtkui.trackers[self.item_index]["url"] = options["urls"][0] + self.dialog.response(Gtk.ResponseType.DELETE_EVENT) except Exception as err: dialogs.ErrorDialog("Error", str(err), self.dialog).run() diff --git a/defaulttrackers/webui.py b/defaulttrackers/webui.py index c717d38..f0f4a71 100644 --- a/defaulttrackers/webui.py +++ b/defaulttrackers/webui.py @@ -1,7 +1,7 @@ -# +# -*- coding: utf-8 -*- # webui.py # -# Copyright (C) 2013-2019 Stefan Talpalaru +# Copyright (C) 2013-2022 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -38,22 +38,14 @@ # statement from all source files in the program, then also delete it here. # -from __future__ import absolute_import, unicode_literals -import logging -from deluge.ui.client import client -from deluge import component +from __future__ import absolute_import from deluge.plugins.pluginbase import WebPluginBase from .common import get_resource -log = logging.getLogger(__name__) - class WebUI(WebPluginBase): scripts = [get_resource("defaulttrackers.js")] - def enable(self): - pass - - def disable(self): - pass + def __init__(self, plugin_name): + super(WebUI, self).__init__(plugin_name) From eaa68de4cafb7683479fe9e40074ca28e0c94233 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Mon, 25 Apr 2022 22:03:22 +0200 Subject: [PATCH 22/33] version 0.4 --- egg/DefaultTrackers-0.2-py3.6.egg | Bin 32037 -> 0 bytes egg/DefaultTrackers-0.3-py3.7.egg | Bin 31927 -> 0 bytes egg/DefaultTrackers-0.4-py3.9.egg | Bin 0 -> 33796 bytes 3 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 egg/DefaultTrackers-0.2-py3.6.egg delete mode 100644 egg/DefaultTrackers-0.3-py3.7.egg create mode 100644 egg/DefaultTrackers-0.4-py3.9.egg diff --git a/egg/DefaultTrackers-0.2-py3.6.egg b/egg/DefaultTrackers-0.2-py3.6.egg deleted file mode 100644 index dd44ad38233d739c87df9e2f7badb03f26966bfa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32037 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

?Hyr2#dk; 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 LugdKI`tAP#E2%6d diff --git a/egg/DefaultTrackers-0.4-py3.9.egg b/egg/DefaultTrackers-0.4-py3.9.egg new file mode 100644 index 0000000000000000000000000000000000000000..665b920e2635761fb56d54eff12079eaea6203fd GIT binary patch literal 33796 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 Date: Mon, 25 Apr 2022 22:05:26 +0200 Subject: [PATCH 23/33] bump version --- setup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 2e1a231..0bc0329 100644 --- a/setup.py +++ b/setup.py @@ -2,7 +2,7 @@ # # setup.py # -# Copyright (C) 2013-2019 Ștefan Talpalaru +# Copyright (C) 2013-2022 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -45,7 +45,7 @@ __plugin_name__ = "DefaultTrackers" __author__ = u"Ștefan Talpalaru" __author_email__ = "stefantalpalaru@yahoo.com" -__version__ = "0.4" +__version__ = "0.5" __url__ = "https://github.com/stefantalpalaru/deluge-default-trackers" __license__ = "GPLv3" __description__ = "Add a list of default trackers to all the public torrents" From bd8cef981c1fe8a92967163354711b990a84ed32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Thu, 25 Jul 2024 02:54:58 +0200 Subject: [PATCH 24/33] fix regex string type fixes: https://github.com/stefantalpalaru/deluge-default-trackers/issues/46 --- defaulttrackers/core.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 602a97e..8f41691 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # core.py # -# Copyright (C) 2013-2019 Ștefan Talpalaru +# Copyright (C) 2013-2024 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -101,7 +101,7 @@ def update_trackerlist_from_url(self): except: # maybe an older Python version without a "context" argument page = urllib.request.urlopen(req).read() - new_trackers = [decode_bytes(url) for url in re.findall(b'\w+://[\w\-.:/]+', page) if is_url(decode_bytes(url))] + new_trackers = [decode_bytes(url) for url in re.findall(rb'\w+://[\w\-.:/]+', page) if is_url(decode_bytes(url))] if new_trackers: # replace all existing trackers self.config["trackers"] = [] From 991495713f5cf12191e38aa23c910ff1dc657260 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Thu, 25 Jul 2024 03:06:10 +0200 Subject: [PATCH 25/33] version 0.5 --- egg/DefaultTrackers-0.4-py3.9.egg | Bin 33796 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 egg/DefaultTrackers-0.4-py3.9.egg diff --git a/egg/DefaultTrackers-0.4-py3.9.egg b/egg/DefaultTrackers-0.4-py3.9.egg deleted file mode 100644 index 665b920e2635761fb56d54eff12079eaea6203fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33796 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 Date: Thu, 25 Jul 2024 03:09:30 +0200 Subject: [PATCH 26/33] version bump --- setup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 0bc0329..4330c10 100644 --- a/setup.py +++ b/setup.py @@ -2,7 +2,7 @@ # # setup.py # -# Copyright (C) 2013-2022 Ștefan Talpalaru +# Copyright (C) 2013-2024 Ștefan Talpalaru # # Basic plugin template created by: # Copyright (C) 2008 Martijn Voncken @@ -45,7 +45,7 @@ __plugin_name__ = "DefaultTrackers" __author__ = u"Ștefan Talpalaru" __author_email__ = "stefantalpalaru@yahoo.com" -__version__ = "0.5" +__version__ = "0.6" __url__ = "https://github.com/stefantalpalaru/deluge-default-trackers" __license__ = "GPLv3" __description__ = "Add a list of default trackers to all the public torrents" From 74447da6edf559547c7ccc7de87978368e8b8105 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= Date: Thu, 25 Jul 2024 03:10:35 +0200 Subject: [PATCH 27/33] forgot the egg --- egg/DefaultTrackers-0.5-py3.12.egg | Bin 0 -> 40478 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 egg/DefaultTrackers-0.5-py3.12.egg diff --git a/egg/DefaultTrackers-0.5-py3.12.egg b/egg/DefaultTrackers-0.5-py3.12.egg new file mode 100644 index 0000000000000000000000000000000000000000..de5f051f715a0f94ae07ad0025cecafe31b404b1 GIT binary patch literal 40478 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%0A$e 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 literal 0 HcmV?d00001 From e68629d480b6a8b97f6d38d0c4afe941d8391eba Mon Sep 17 00:00:00 2001 From: Luan Freitas Date: Sun, 29 Dec 2024 02:23:04 -0300 Subject: [PATCH 28/33] feat: allow multiple dynamic trackerlists Loop through every url of dynamic trackerlist separated by break-line (\n) --- defaulttrackers/core.py | 31 +++++++++++++++-------------- egg/DefaultTrackers-0.6-py3.12.egg | Bin 0 -> 40406 bytes 2 files changed, 16 insertions(+), 15 deletions(-) create mode 100644 egg/DefaultTrackers-0.6-py3.12.egg diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 8f41691..6e3192f 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -86,27 +86,28 @@ def update_trackerlist_from_url(self): now = datetime.datetime.utcnow() last_update = datetime.datetime.utcfromtimestamp(self.config["last_dynamic_trackers_update"]) if now - last_update > datetime.timedelta(days=self.config["dynamic_trackers_update_interval"]): + combined_trackers = [] try: - headers = { + for url_line in self.config["dynamic_trackerlist_url"].splitlines(): + url_line = url_line.strip() + if not url_line: + continue + headers = { 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3', 'Accept-Encoding': 'none', 'Accept-Language': 'en-US,en;q=0.8', - } - - req = urllib.request.Request(self.config["dynamic_trackerlist_url"], headers=headers) - try: - page = urllib.request.urlopen(req, context=ssl._create_unverified_context()).read() - except: - # maybe an older Python version without a "context" argument - page = urllib.request.urlopen(req).read() - new_trackers = [decode_bytes(url) for url in re.findall(rb'\w+://[\w\-.:/]+', page) if is_url(decode_bytes(url))] - if new_trackers: - # replace all existing trackers - self.config["trackers"] = [] - for new_tracker in new_trackers: - self.config["trackers"].append({"url": new_tracker}) + } + req = urllib.request.Request(url_line, headers=headers) + try: + page = urllib.request.urlopen(req, context=ssl._create_unverified_context()).read() + except: + page = urllib.request.urlopen(req).read() + found = [decode_bytes(u) for u in re.findall(rb'\w+://[\w\-.:/]+', page) if is_url(decode_bytes(u))] + combined_trackers.extend(found) + if combined_trackers: + self.config["trackers"] = [{"url": t} for t in combined_trackers] self.config["last_dynamic_trackers_update"] = time.mktime(now.timetuple()) except: traceback.print_exc() diff --git a/egg/DefaultTrackers-0.6-py3.12.egg b/egg/DefaultTrackers-0.6-py3.12.egg new file mode 100644 index 0000000000000000000000000000000000000000..bf1515690eb7cfb4a1dc36da4b21b1622638dac1 GIT binary patch literal 40406 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 Date: Sun, 29 Dec 2024 03:03:54 -0300 Subject: [PATCH 29/33] feat: button to apply trackers to existing --- defaulttrackers/core.py | 8 ++++++++ defaulttrackers/data/defaulttrackers.js | 21 +++++++++++++++++++++ egg/DefaultTrackers-0.6-py3.12.egg | Bin 0 -> 40653 bytes 3 files changed, 29 insertions(+) create mode 100644 egg/DefaultTrackers-0.6-py3.12.egg diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 8f41691..e077aba 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -143,3 +143,11 @@ def get_config(self): """Returns the config dictionary""" return self.config.config + @export + def apply_existing(self): + """Apply trackerlist to existings torrents""" + + for torrent_id in component.get("TorrentManager").torrents: + self.on_torrent_added(torrent_id) + return True + diff --git a/defaulttrackers/data/defaulttrackers.js b/defaulttrackers/data/defaulttrackers.js index 0df6ce6..3ab7587 100644 --- a/defaulttrackers/data/defaulttrackers.js +++ b/defaulttrackers/data/defaulttrackers.js @@ -85,6 +85,19 @@ DefaultTrackersPanel = Ext.extend(Ext.form.FormPanel, { autoWidth: true, })); + var applyExisting = this.add({ + fieldLabel: _(''), + name: 'trackers_apply', + xtype: 'container', + layout: 'hbox', + items: [{ + xtype: 'button', + text: 'Apply Existing Torrents', + }] + }); + + applyExisting.getComponent(0).setHandler(this.onApplyExisting, this); + deluge.preferences.on('show', this.onPreferencesShow, this); }, @@ -119,6 +132,14 @@ DefaultTrackersPanel = Ext.extend(Ext.form.FormPanel, { onSetConfig: function() { this.opts.commit(); }, + onApplyExisting: function() { + deluge.client.defaulttrackers.apply_existing({ + success: function() { + Ext.Msg.alert('Success', 'Default trackers applied to existing torrents'); + }, + scope: this, + }); + } }); DefaultTrackersPlugin = Ext.extend(Deluge.Plugin, { diff --git a/egg/DefaultTrackers-0.6-py3.12.egg b/egg/DefaultTrackers-0.6-py3.12.egg new file mode 100644 index 0000000000000000000000000000000000000000..928c8bf40ed70ca79800b783b80f05e7a23da970 GIT binary patch literal 40653 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 z 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 Date: Sun, 29 Dec 2024 14:45:25 +0100 Subject: [PATCH 30/33] dynamic tracker lists: Gtk support + refactoring We now avoid duplicate trackers, when using multiple lists. The new Gtk text entry widget - one that supports multiple lines - has a different API, because of course it does... --- defaulttrackers/core.py | 32 ++++++++++++++++++----------- defaulttrackers/data/config.glade | 7 +------ defaulttrackers/data/config.ui | 7 +------ defaulttrackers/gtk3ui.py | 7 +++++-- defaulttrackers/gtkui.py | 7 +++++-- egg/DefaultTrackers-0.6-py3.12.egg | Bin 40406 -> 0 bytes 6 files changed, 32 insertions(+), 28 deletions(-) delete mode 100644 egg/DefaultTrackers-0.6-py3.12.egg diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 6e3192f..41b4b60 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -86,28 +86,36 @@ def update_trackerlist_from_url(self): now = datetime.datetime.utcnow() last_update = datetime.datetime.utcfromtimestamp(self.config["last_dynamic_trackers_update"]) if now - last_update > datetime.timedelta(days=self.config["dynamic_trackers_update_interval"]): - combined_trackers = [] + new_trackers = [] + seen_trackers = set() + headers = { + 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0', + 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', + 'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3', + 'Accept-Encoding': 'none', + 'Accept-Language': 'en-US,en;q=0.8', + } try: for url_line in self.config["dynamic_trackerlist_url"].splitlines(): url_line = url_line.strip() if not url_line: continue - headers = { - 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0', - 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', - 'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3', - 'Accept-Encoding': 'none', - 'Accept-Language': 'en-US,en;q=0.8', - } req = urllib.request.Request(url_line, headers=headers) try: page = urllib.request.urlopen(req, context=ssl._create_unverified_context()).read() except: + # maybe an older Python version without a "context" argument page = urllib.request.urlopen(req).read() - found = [decode_bytes(u) for u in re.findall(rb'\w+://[\w\-.:/]+', page) if is_url(decode_bytes(u))] - combined_trackers.extend(found) - if combined_trackers: - self.config["trackers"] = [{"url": t} for t in combined_trackers] + # we need to avoid duplicates here + for new_tracker in [decode_bytes(u) for u in re.findall(rb'\w+://[\w\-.:/]+', page) if is_url(decode_bytes(u))]: + if new_tracker not in seen_trackers: + seen_trackers.add(new_tracker) + new_trackers.append(new_tracker) + + if new_trackers: + # replace all existing trackers + self.config["trackers"] = [{"url": t} for t in new_trackers] + self.config["last_dynamic_trackers_update"] = time.mktime(now.timetuple()) except: traceback.print_exc() diff --git a/defaulttrackers/data/config.glade b/defaulttrackers/data/config.glade index 1a580fd..0629e10 100644 --- a/defaulttrackers/data/config.glade +++ b/defaulttrackers/data/config.glade @@ -40,14 +40,9 @@ - + True True - - False - False - True - True True diff --git a/defaulttrackers/data/config.ui b/defaulttrackers/data/config.ui index fd13d31..f2f1eda 100644 --- a/defaulttrackers/data/config.ui +++ b/defaulttrackers/data/config.ui @@ -40,14 +40,9 @@ - + True True - - False - False - True - True True diff --git a/defaulttrackers/gtk3ui.py b/defaulttrackers/gtk3ui.py index 00f77fd..b40bb2c 100644 --- a/defaulttrackers/gtk3ui.py +++ b/defaulttrackers/gtk3ui.py @@ -181,9 +181,12 @@ def on_apply_prefs(self): update_interval = int(self.builder.get_object("tracker_list_update_interval").get_text() or 1) except: update_interval = 1 + tracker_list_buffer = self.builder.get_object("tracker_list_url").get_buffer() + start_iter, end_iter = tracker_list_buffer.get_bounds() + tracker_list_text = tracker_list_buffer.get_text(start_iter, end_iter, False) self.config.update({ "trackers": [{"url": str(row[0])} for row in self.store], - "dynamic_trackerlist_url": self.builder.get_object("tracker_list_url").get_text(), + "dynamic_trackerlist_url": tracker_list_text, "dynamic_trackers_update_interval": update_interval, }) client.defaulttrackers.set_config(self.config) @@ -196,7 +199,7 @@ def cb_get_config(self, config): self.config = config # dynamic tracker list if config["dynamic_trackerlist_url"]: - self.builder.get_object("tracker_list_url").set_text(config["dynamic_trackerlist_url"]) + self.builder.get_object("tracker_list_url").get_buffer().set_text(config["dynamic_trackerlist_url"]) self.builder.get_object("tracker_list_update_interval").set_text(str(config["dynamic_trackers_update_interval"])) # trackers self.trackers = list(config["trackers"]) diff --git a/defaulttrackers/gtkui.py b/defaulttrackers/gtkui.py index cdc2da9..9e8bc49 100644 --- a/defaulttrackers/gtkui.py +++ b/defaulttrackers/gtkui.py @@ -178,9 +178,12 @@ def on_apply_prefs(self): update_interval = int(self.glade.get_widget("tracker_list_update_interval").get_text() or 1) except: update_interval = 1 + tracker_list_buffer = self.glade.get_widget("tracker_list_url").get_buffer() + start_iter, end_iter = tracker_list_buffer.get_bounds() + tracker_list_text = tracker_list_buffer.get_text(start_iter, end_iter, False) self.config.update({ "trackers": [{"url": str(row[0])} for row in self.store], - "dynamic_trackerlist_url": self.glade.get_widget("tracker_list_url").get_text(), + "dynamic_trackerlist_url": tracker_list_text, "dynamic_trackers_update_interval": update_interval, }) client.defaulttrackers.set_config(self.config) @@ -193,7 +196,7 @@ def cb_get_config(self, config): self.config = config # dynamic tracker list if config["dynamic_trackerlist_url"]: - self.glade.get_widget("tracker_list_url").set_text(config["dynamic_trackerlist_url"]) + self.glade.get_widget("tracker_list_url").get_buffer().set_text(config["dynamic_trackerlist_url"]) self.glade.get_widget("tracker_list_update_interval").set_text(str(config["dynamic_trackers_update_interval"])) # trackers self.trackers = list(config["trackers"]) diff --git a/egg/DefaultTrackers-0.6-py3.12.egg b/egg/DefaultTrackers-0.6-py3.12.egg deleted file mode 100644 index bf1515690eb7cfb4a1dc36da4b21b1622638dac1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40406 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 Date: Sun, 29 Dec 2024 15:15:14 +0100 Subject: [PATCH 31/33] WebUI: "apply to existing torrents" - light refactoring --- defaulttrackers/core.py | 6 +++--- defaulttrackers/data/defaulttrackers.js | 10 +++++----- egg/DefaultTrackers-0.6-py3.12.egg | Bin 40653 -> 0 bytes 3 files changed, 8 insertions(+), 8 deletions(-) delete mode 100644 egg/DefaultTrackers-0.6-py3.12.egg diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 599d9a8..7de57ec 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -153,9 +153,9 @@ def get_config(self): return self.config.config @export - def apply_existing(self): - """Apply trackerlist to existings torrents""" - + def apply_to_existing(self): + """Apply the tracker list to existings torrents""" + for torrent_id in component.get("TorrentManager").torrents: self.on_torrent_added(torrent_id) return True diff --git a/defaulttrackers/data/defaulttrackers.js b/defaulttrackers/data/defaulttrackers.js index 3ab7587..a7c5c00 100644 --- a/defaulttrackers/data/defaulttrackers.js +++ b/defaulttrackers/data/defaulttrackers.js @@ -85,18 +85,18 @@ DefaultTrackersPanel = Ext.extend(Ext.form.FormPanel, { autoWidth: true, })); - var applyExisting = this.add({ + var applyToExisting = this.add({ fieldLabel: _(''), name: 'trackers_apply', xtype: 'container', layout: 'hbox', items: [{ xtype: 'button', - text: 'Apply Existing Torrents', + text: 'Apply to existing torrents', }] }); - applyExisting.getComponent(0).setHandler(this.onApplyExisting, this); + applyToExisting.getComponent(0).setHandler(this.onApplyToExisting, this); deluge.preferences.on('show', this.onPreferencesShow, this); }, @@ -132,8 +132,8 @@ DefaultTrackersPanel = Ext.extend(Ext.form.FormPanel, { onSetConfig: function() { this.opts.commit(); }, - onApplyExisting: function() { - deluge.client.defaulttrackers.apply_existing({ + onApplyToExisting: function() { + deluge.client.defaulttrackers.apply_to_existing({ success: function() { Ext.Msg.alert('Success', 'Default trackers applied to existing torrents'); }, diff --git a/egg/DefaultTrackers-0.6-py3.12.egg b/egg/DefaultTrackers-0.6-py3.12.egg deleted file mode 100644 index 928c8bf40ed70ca79800b783b80f05e7a23da970..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40653 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 z 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 Date: Sun, 29 Dec 2024 15:19:29 +0100 Subject: [PATCH 32/33] version 0.6 --- egg/DefaultTrackers-0.5-py3.12.egg | Bin 40478 -> 0 bytes egg/DefaultTrackers-0.6-py3.12.egg | Bin 0 -> 42949 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 egg/DefaultTrackers-0.5-py3.12.egg create mode 100644 egg/DefaultTrackers-0.6-py3.12.egg diff --git a/egg/DefaultTrackers-0.5-py3.12.egg b/egg/DefaultTrackers-0.5-py3.12.egg deleted file mode 100644 index de5f051f715a0f94ae07ad0025cecafe31b404b1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40478 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%0A$e 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 diff --git a/egg/DefaultTrackers-0.6-py3.12.egg b/egg/DefaultTrackers-0.6-py3.12.egg new file mode 100644 index 0000000000000000000000000000000000000000..43a56c829a9454aae965c0968bfd13eea803ac3b GIT binary patch literal 42949 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 z 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 i|H}K_CHYU@m(+jZ{TMME{ErR Date: Sun, 29 Dec 2024 15:25:10 +0100 Subject: [PATCH 33/33] bump version --- setup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 4330c10..1c41832 100644 --- a/setup.py +++ b/setup.py @@ -45,10 +45,10 @@ __plugin_name__ = "DefaultTrackers" __author__ = u"Ștefan Talpalaru" __author_email__ = "stefantalpalaru@yahoo.com" -__version__ = "0.6" +__version__ = "0.7" __url__ = "https://github.com/stefantalpalaru/deluge-default-trackers" __license__ = "GPLv3" -__description__ = "Add a list of default trackers to all the public torrents" +__description__ = "Add default trackers to all public torrents" __long_description__ = """ Create a list of default trackers that will be added to new public torrents (and old ones after restarting Deluge). The plugin will not duplicate existing