Hello community, here is the log from the commit of package deluge for openSUSE:Factory checked in at 2016-07-24 19:52:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/deluge (Old) and /work/SRC/openSUSE:Factory/.deluge.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "deluge" Changes: -------- --- /work/SRC/openSUSE:Factory/deluge/deluge.changes 2016-05-17 17:16:46.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.deluge.new/deluge.changes 2016-07-24 19:53:12.000000000 +0200 @@ -1,0 +2,61 @@ +Wed Jul 20 23:19:23 UTC 2016 - [email protected] + +- Update to version 1.3.13: + * Core: Increase RSA key size from 1024 to 2048 and use SHA256 + digest. + * Core: Fix empty error message from certain trackers. + * Core: Fix torrent ending up displaying the wrong state. + * Core: Force a torrent into Error state if the resume data is + rejected. + * Core: Workaround unwanted tracker announce when force rechecking + paused torrent. + * Core: Stop moving torrent files if target files exist to prevent + unintended clobbering of data. + * Core: Fix the pausing and resuming of the Deluge session so + torrents return to previous state. + * Core: Add support for TLS SNI in httpdownloader. + * Core: Ensure base32 magnet hash is uppercase to fix lowercase + magnets uris. + * Daemon: New command-line option to restict selected config key to + read-only. + * Daemon: Allow use of uppercase log level to match UIs. + * UI: Fixed error with blank lines in auth file. + * GtkUI: Fix installing plugin from a non-ascii directory. + * GtkUI: Error'd torrents no longer display a progress percentage. + * GtkUI: Fixed the 'Added' column showing the wrong date. + * GtkUI: Prevent the user from changing tracker selection when + editing trackers. + * GtkUI: Fix showing the wrong connected status with hostname in + the Connection Manager. + * GtkUI: Fix the progress column to sort by progress and state + correctly. + * GtkUI: Fix incorrect Move Completed directory shown in Options + tab. + * GtkUI: Sorting for name column is now case insensitive. + * GtkUI: Reduce height of Add Torrent Dialog to help with smaller screeen resoltuions. + * GtkUI: Fix adding UDP trackers to trackers dialog. + * WebUI: Fix HTTPS negotiating incorrect cipher. + * WebUI: Fix the broken Options context menu. + * WebUI: Fix the hostlist config file not being created. + * WebUI: Fix plugin's js code not loading when using the WebUI + plugin. + * Console: Fix adding non-ascii torrent in non-interactive mode. + * Console: Add time_added to info sort keys. + * Blocklist Plugin: Fix plugin lockup with empty url. + * Scheduler Plugin: Fix an error accidentally introduced in 1.3.12. + * Notification Plugin: Fix the popup to show the actual count of + files finished. + * Notification Plugin: Fix issue with SMTP port entry not + updating in GtkUI. + * AutoAdd Plugin: Fix watch directory not accepting uppercase file + extension. + * Extractor Plugin: Ignore the remaining rar part files to + prevent spawning useless processes. + * Extractor Plugin: Fix only an directory folder when + extracting rar files. +- Add deluge-suse-geoip-location.patch: point to the right + GeoIP.dat location. +- Add deluge-libtorrent-1.1-geoip.patch: use python-GeoIP to get + GeoIP data. + +------------------------------------------------------------------- Old: ---- deluge-1.3.12.tar.gz New: ---- deluge-1.3.13.tar.xz deluge-libtorrent-1.1-geoip.patch deluge-suse-geoip-location.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ deluge.spec ++++++ --- /var/tmp/diff_new_pack.iuAuQg/_old 2016-07-24 19:53:13.000000000 +0200 +++ /var/tmp/diff_new_pack.iuAuQg/_new 2016-07-24 19:53:13.000000000 +0200 @@ -17,17 +17,21 @@ Name: deluge -Version: 1.3.12 +Version: 1.3.13 Release: 0 Summary: BitTorrent Client License: SUSE-GPL-3.0-with-openssl-exception Group: Productivity/Networking/File-Sharing Url: http://deluge-torrent.org/ -Source: http://download.deluge-torrent.org/source/%{name}-%{version}.tar.gz +Source: http://download.deluge-torrent.org/source/%{name}-%{version}.tar.xz +# PATCH-FIX-OPENSUSE deluge-suse-geoip-location.patch -- Point to the right GeoIP.dat location. +Patch0: %{name}-suse-geoip-location.patch # PATCH-FIX-UPSTREAM deluge-update_7z_binary.patch -Patch0: %{name}-update_7z_binary.patch +Patch1: %{name}-update_7z_binary.patch +# PATCH-FEATURE-OPENSUSE deluge-libtorrent-1.1-geoip.patch [email protected] -- Use python-GeoIP to get GeoIP data. +Patch2: %{name}-libtorrent-1.1-geoip.patch # PATCH-FIX-OPENSUSE deluge-fix-blocklist-crash.patch -- Workaround a bug in libtorrent-rb 1.1.0 which results in a crash when blocklist is used. -Patch1: %{name}-fix-blocklist-crash.patch +Patch3: %{name}-fix-blocklist-crash.patch BuildRequires: fdupes BuildRequires: gettext BuildRequires: hicolor-icon-theme @@ -61,8 +65,10 @@ %prep %setup -q -%patch0 -%patch1 -p1 +%patch0 -p1 +%patch1 +%patch2 -p1 +%patch3 -p1 %build python2 setup.py build ++++++ deluge-libtorrent-1.1-geoip.patch ++++++ --- a/deluge/core/preferencesmanager.py +++ b/deluge/core/preferencesmanager.py @@ -48,6 +48,11 @@ import deluge.common import deluge.component as component from deluge.log import LOG as log +try: + import GeoIP +except ImportError: + GeoIP = None + DEFAULT_PREFS = { "send_info": False, "info_sent": 0.0, @@ -148,6 +153,7 @@ class PreferencesManager(component.Compo component.Component.__init__(self, "PreferencesManager") self.config = deluge.configmanager.ConfigManager("core.conf", DEFAULT_PREFS) + self.geoip_instance = None def start(self): self.core = component.get("Core") @@ -496,11 +502,23 @@ class PreferencesManager(component.Compo log.warning("Unable to find GeoIP database file!") if geoip_db: - try: - self.session.load_country_db(str(geoip_db)) - except Exception, e: - log.error("Unable to load geoip database!") - log.exception(e) + if deluge.common.VersionSplit(lt.version) >= deluge.common.VersionSplit("1.1.0"): + try: + self.geoip_instance = GeoIP.open(geoip_db, GeoIP.GEOIP_STANDARD) + except Exception, e: + self.geoip_instance = None + log.error("Unable to load geoip database!") + log.exception(e) + else: + try: + self.session.load_country_db(str(geoip_db)) + except AttributeError: + try: + self.geoip_instance = GeoIP.open(geoip_db, GeoIP.GEOIP_STANDARD) + except Exception, e: + self.geoip_instance = None + log.error("Unable to load geoip database!") + log.exception(e) def _on_cache_size(self, key, value): log.debug("%s: %s", key, value) --- a/deluge/core/torrent.py +++ b/deluge/core/torrent.py @@ -554,13 +554,26 @@ class Torrent(object): except UnicodeDecodeError: client = str(peer.client).decode("latin-1") + if deluge.common.VersionSplit(lt.version) >= deluge.common.VersionSplit("1.1.0"): + country = "" + else: + country = peer.country + + gi = component.get("PreferencesManager").geoip_instance + if gi: + try: + country = gi.country_code_by_addr(peer.ip[0]) + except: + pass + # Make country a proper string - country = str() - for c in peer.country: + country_tmp = str() + for c in country: if not c.isalpha(): - country += " " + country_tmp += " " else: - country += c + country_tmp += c + country = country_tmp ret.append({ "client": client, --- a/deluge/ui/gtkui/peers_tab.py +++ b/deluge/ui/gtkui/peers_tab.py @@ -262,7 +262,7 @@ class PeersTab(Tab): component.get("SessionProxy").get_torrent_status(torrent_id, ["peers"]).addCallback(self._on_get_torrent_status) def get_flag_pixbuf(self, country): - if country == " ": + if not country.strip(): return None if not self.cached_flag_pixbufs.has_key(country): ++++++ deluge-suse-geoip-location.patch ++++++ --- a/deluge/core/preferencesmanager.py +++ b/deluge/core/preferencesmanager.py @@ -138,7 +138,7 @@ DEFAULT_PREFS = { "random_outgoing_ports": True, "peer_tos": "0x00", "rate_limit_ip_overhead": True, - "geoip_db_location": "/usr/share/GeoIP/GeoIP.dat", + "geoip_db_location": "/var/lib/GeoIP/GeoIP.dat", "cache_size": 512, "cache_expiry": 60 }
