git: 95f93a2eea17 - main - net-p2p/deluge-cli: update to 2.1.1

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Mon, 26 Jun 2023 23:30:46 UTC
The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/ports/commit/?id=95f93a2eea17325f25b60138a0b50b6c260cec38

commit 95f93a2eea17325f25b60138a0b50b6c260cec38
Author:     Joakim Bergman <jocke@gipset.se>
AuthorDate: 2022-11-02 16:21:50 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2023-06-26 23:30:29 +0000

    net-p2p/deluge-cli: update to 2.1.1
    
    fixes:
    - pidfile for deluge-web
    - long options in command_args to make it easier to read
    - remove deprecated -f (fork) option, it's now default and there is no
      way to explicitly negate the new option --do-not-daemonize
    - use *_confdir variable in command_args instead of $required_dirs which
      just happened to have the same value (more explicit this way)
    - remove setproctitle dependency to allow stop/restart of service
      (process cannot be found otherwise)
    - replace slimit with rjsmin for javascript minification for web ui
    - make PY_PILLOW dependency optional for cli and required for ui
      (default include)
    
    Changelog: https://deluge.readthedocs.io/en/latest/changelog.html
    
    Approved by:    rm (maintainer timeout, two weeks)
    PR:             242033
---
 net-p2p/deluge-cli/Makefile                        | 14 +++++------
 net-p2p/deluge-cli/distinfo                        |  6 ++---
 net-p2p/deluge-cli/files/deluge_web.in             |  7 +++++-
 net-p2p/deluge-cli/files/deluged.in                |  2 +-
 .../deluge-cli/files/patch-deluge_argparserbase.py | 11 --------
 .../files/patch-deluge_core_preferencesmanager.py  | 13 ----------
 .../deluge-cli/files/patch-deluge_core_torrent.py  | 16 ------------
 .../files/patch-deluge_core_torrentmanager.py      | 22 ----------------
 net-p2p/deluge-cli/files/patch-deluge_i18n_util.py | 14 -----------
 net-p2p/deluge-cli/files/patch-deluge_log.py       | 29 ----------------------
 net-p2p/deluge-cli/pkg-plist                       | 12 +++++++++
 net-p2p/deluge/Makefile                            |  5 ++--
 12 files changed, 32 insertions(+), 119 deletions(-)

diff --git a/net-p2p/deluge-cli/Makefile b/net-p2p/deluge-cli/Makefile
index 534ff9889d79..a32c09bd879c 100644
--- a/net-p2p/deluge-cli/Makefile
+++ b/net-p2p/deluge-cli/Makefile
@@ -1,6 +1,5 @@
 PORTNAME=	deluge
-DISTVERSION=	2.0.3
-PORTREVISION=	4
+DISTVERSION=	2.1.1
 CATEGORIES=	net-p2p python
 MASTER_SITES=	PYPI
 PKGNAMESUFFIX=	-cli
@@ -14,7 +13,7 @@ LICENSE_FILE=	${WRKSRC}/LICENSE
 
 BUILD_DEPENDS=	intltool-merge:textproc/intltool \
 		${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel \
-		${PYTHON_PKGNAMEPREFIX}slimit>0:www/py-slimit
+		${PYTHON_PKGNAMEPREFIX}rjsmin>0:archivers/py-rjsmin@${PY_FLAVOR}
 RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}xdg>=0.18:devel/py-xdg@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}libtorrent-rasterbar>=0:net-p2p/py-libtorrent-rasterbar@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}openssl>=0.8:security/py-openssl@${PY_FLAVOR} \
@@ -22,12 +21,10 @@ RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}xdg>=0.18:devel/py-xdg@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}mako>=0.2.5:textproc/py-mako@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}service_identity>=0:security/py-service_identity@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}twisted>=0:devel/py-twisted@${PY_FLAVOR} \
-		${PY_PILLOW} \
 		${PYTHON_PKGNAMEPREFIX}rencode>0:converters/py-rencode@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}zope.interface>0:devel/py-zope.interface@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}distro>0:sysutils/py-distro@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}setproctitle>0:devel/py-setproctitle@${PY_FLAVOR}
+		${PYTHON_PKGNAMEPREFIX}distro>0:sysutils/py-distro@${PY_FLAVOR}
 
 USES=		cpe gettext python:3.5+
 USE_PYTHON=	autoplist distutils
@@ -39,7 +36,10 @@ NO_ARCH=	yes
 USE_RC_SUBR=	deluged deluge_web
 SUB_LIST+=	PYTHON_CMD=${PYTHON_CMD}
 
-OPTIONS_DEFINE=	DOCS
+OPTIONS_DEFINE=	DOCS PILLOW
+OPTIONS_DEFAULT=	PILLOW
+PILLOW_DESC=Support for resizing tracker icons (pulls in many graphics libraries which may not be useful in a headless server).
+PILLOW_RUN_DEPENDS=${PY_PILLOW}
 
 PORTDOCS=	CHANGELOG.md README.md
 
diff --git a/net-p2p/deluge-cli/distinfo b/net-p2p/deluge-cli/distinfo
index 8e76e4919863..7ddcbefad657 100644
--- a/net-p2p/deluge-cli/distinfo
+++ b/net-p2p/deluge-cli/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1576604768
-SHA256 (deluge-2.0.3.tar.gz) = bd26950f417de2a5b26827d989935a30e770f880c22cb59ca69f781cdc9a14c9
-SIZE (deluge-2.0.3.tar.gz) = 3428443
+TIMESTAMP = 1664091616
+SHA256 (deluge-2.1.1.tar.gz) = d6ea7e1f5bdd75f40cbd1d56f0c97cd1b5b74bc9e03783858c7daa81063dd4b9
+SIZE (deluge-2.1.1.tar.gz) = 5492681
diff --git a/net-p2p/deluge-cli/files/deluge_web.in b/net-p2p/deluge-cli/files/deluge_web.in
index 251e7b9b4cf2..8b2ef2742962 100644
--- a/net-p2p/deluge-cli/files/deluge_web.in
+++ b/net-p2p/deluge-cli/files/deluge_web.in
@@ -34,6 +34,8 @@ rcvar=${name}_enable
 command=%%PREFIX%%/bin/deluge-web
 command_interpreter=%%PYTHON_CMD%%
 
+pidfile=/var/run/${name}/pid
+
 start_precmd=${name}_prestart
 stop_postcmd=${name}_poststop
 
@@ -67,6 +69,9 @@ deluge_web_prestart()
 
 deluge_web_poststop()
 {
+	[ -e "$pidfile" ] && unlink $pidfile
+	[ -d "${pidfile%/pid}" ] && rmdir ${pidfile%/pid}
+
 	[ -e "$deluge_web_logfile" -a ! -s "$deluge_web_logfile" ] &&
 		unlink $deluge_web_logfile
 }
@@ -83,6 +88,6 @@ deluge_web_home=$(pw user show ${deluge_web_user} | cut -d : -f 9)
 : ${deluge_web_logfile:="/var/tmp/${name}.log"}
 
 required_dirs="$deluge_web_confdir"
-command_args="-f -c $required_dirs -L $deluge_web_loglevel -l $deluge_web_logfile"
+command_args="--config=$deluge_web_confdir --loglevel=$deluge_web_loglevel --logfile=$deluge_web_logfile --pidfile=$pidfile"
 
 run_rc_command "$1"
diff --git a/net-p2p/deluge-cli/files/deluged.in b/net-p2p/deluge-cli/files/deluged.in
index 6b6745a204fc..d460e8c94924 100644
--- a/net-p2p/deluge-cli/files/deluged.in
+++ b/net-p2p/deluge-cli/files/deluged.in
@@ -74,6 +74,6 @@ load_rc_config $name
 : ${deluged_logfile:="/var/tmp/${name}.log"}
 
 required_dirs="$deluged_confdir"
-command_args="-c $required_dirs -L $deluged_loglevel -l $deluged_logfile -P $pidfile"
+command_args="--config=$deluged_confdir --loglevel=$deluged_loglevel --logfile=$deluged_logfile --pidfile=$pidfile"
 
 run_rc_command "$1"
diff --git a/net-p2p/deluge-cli/files/patch-deluge_argparserbase.py b/net-p2p/deluge-cli/files/patch-deluge_argparserbase.py
deleted file mode 100644
index e8d524ff0329..000000000000
--- a/net-p2p/deluge-cli/files/patch-deluge_argparserbase.py
+++ /dev/null
@@ -1,11 +0,0 @@
-Vendor fix for https://dev.deluge-torrent.org/ticket/3278
-
-===================================================================
---- deluge/argparserbase.py	(revision d417c4b0f9fd0702ebf986546ab884d2a9517e4e)
-+++ deluge/argparserbase.py	(revision 1b4ac88ce72515bcf36684b942e3998900f13cea)
-@@ -326,5 +326,5 @@
-             # Write pid file before chuid
-             if options.pidfile:
--                with open(options.pidfile, 'wb') as _file:
-+                with open(options.pidfile, 'w') as _file:
-                     _file.write('%d\n' % os.getpid())
diff --git a/net-p2p/deluge-cli/files/patch-deluge_core_preferencesmanager.py b/net-p2p/deluge-cli/files/patch-deluge_core_preferencesmanager.py
deleted file mode 100644
index e833dd0896e7..000000000000
--- a/net-p2p/deluge-cli/files/patch-deluge_core_preferencesmanager.py
+++ /dev/null
@@ -1,13 +0,0 @@
-Fix for https://dev.deluge-torrent.org/ticket/3337
-
---- deluge/core/preferencesmanager.py.orig	2020-11-16 07:47:52 UTC
-+++ deluge/core/preferencesmanager.py
-@@ -231,7 +231,7 @@ class PreferencesManager(component.Component):
-         self.core.apply_session_settings(
-             {
-                 'listen_system_port_fallback': self.config['listen_use_sys_port'],
--                'listen_interfaces': ''.join(interfaces),
-+                'listen_interfaces': ','.join(interfaces),
-             }
-         )
- 
diff --git a/net-p2p/deluge-cli/files/patch-deluge_core_torrent.py b/net-p2p/deluge-cli/files/patch-deluge_core_torrent.py
deleted file mode 100644
index 4ac6f2e4d888..000000000000
--- a/net-p2p/deluge-cli/files/patch-deluge_core_torrent.py
+++ /dev/null
@@ -1,16 +0,0 @@
-Vendor fix for https://dev.deluge-torrent.org/ticket/3279
-
-===================================================================
---- deluge/core/torrent.py	(revision 8b62e50eb8bf81a177c4d62484a44b766c6f54a6)
-+++ deluge/core/torrent.py	(revision 4b29436cd5eabf9af271f3fa6250cd7c91cdbc9d)
-@@ -811,5 +811,9 @@
-                 continue
- 
--            client = decode_bytes(peer.client)
-+            try:
-+                client = decode_bytes(peer.client)
-+            except UnicodeDecodeError:
-+                # libtorrent on Py3 can raise UnicodeDecodeError for peer_info.client
-+                client = 'unknown'
- 
-             try:
diff --git a/net-p2p/deluge-cli/files/patch-deluge_core_torrentmanager.py b/net-p2p/deluge-cli/files/patch-deluge_core_torrentmanager.py
deleted file mode 100644
index 3e876b1c34c2..000000000000
--- a/net-p2p/deluge-cli/files/patch-deluge_core_torrentmanager.py
+++ /dev/null
@@ -1,22 +0,0 @@
-Vendor fix for https://dev.deluge-torrent.org/ticket/3298
-
-===================================================================
---- deluge/core/torrentmanager.py	(revision 8b62e50eb8bf81a177c4d62484a44b766c6f54a6)
-+++ deluge/core/torrentmanager.py	(revision 23b3f144fce3424ae874d54a659cb7b8dd624ade)
-@@ -26,5 +26,5 @@
- import deluge.component as component
- from deluge._libtorrent import lt
--from deluge.common import archive_files, decode_bytes, get_magnet_info, is_magnet
-+from deluge.common import PY2, archive_files, decode_bytes, get_magnet_info, is_magnet
- from deluge.configmanager import ConfigManager, get_config_dir
- from deluge.core.authmanager import AUTH_LEVEL_ADMIN
-@@ -810,5 +810,8 @@
-             try:
-                 with open(filepath, 'rb') as _file:
--                    state = pickle.load(_file)
-+                    if PY2:
-+                        state = pickle.load(_file)
-+                    else:
-+                        state = pickle.load(_file, encoding='utf8')
-             except (IOError, EOFError, pickle.UnpicklingError) as ex:
-                 message = 'Unable to load {}: {}'.format(filepath, ex)
diff --git a/net-p2p/deluge-cli/files/patch-deluge_i18n_util.py b/net-p2p/deluge-cli/files/patch-deluge_i18n_util.py
deleted file mode 100644
index 7fbb57ca5af3..000000000000
--- a/net-p2p/deluge-cli/files/patch-deluge_i18n_util.py
+++ /dev/null
@@ -1,14 +0,0 @@
-PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256484
-https://dev.deluge-torrent.org/changeset/d6c96d629183e8bab
-
---- deluge/i18n/util.py.orig	2019-06-12 17:49:45 UTC
-+++ deluge/i18n/util.py
-@@ -114,7 +114,7 @@ def setup_translation():
-         # Workaround for Python 2 unicode gettext (keyword removed in Py3).
-         kwargs = {} if not deluge.common.PY2 else {'unicode': True}
- 
--        gettext.install(I18N_DOMAIN, translations_path, names='ngettext', **kwargs)
-+        gettext.install(I18N_DOMAIN, translations_path, names=['ngettext'], **kwargs)
-         builtins.__dict__['_n'] = builtins.__dict__['ngettext']
- 
-         libintl = None
diff --git a/net-p2p/deluge-cli/files/patch-deluge_log.py b/net-p2p/deluge-cli/files/patch-deluge_log.py
deleted file mode 100644
index c908439441da..000000000000
--- a/net-p2p/deluge-cli/files/patch-deluge_log.py
+++ /dev/null
@@ -1,29 +0,0 @@
-From 351664ec071daa04161577c6a1c949ed0f2c3206 Mon Sep 17 00:00:00 2001
-From: minus <minus@mnus.de>
-Date: Sun, 17 Nov 2019 09:36:23 +0100
-Subject: [Logging] Fix Python 3.8 compatibility
-
-Deluge's logger class extends Python's `logging.Logger`. Since Python
-3.8, it takes an additional argument `stacklevel`.
-The implementation in Deluge does not support that. Work around the
-problem by ignoring additional arguments.
----
- deluge/log.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/deluge/log.py b/deluge/log.py
-index 75e8308..0f9877f 100644
---- deluge/log.py
-+++ deluge/log.py
-@@ -86,7 +86,7 @@ class Logging(LoggingLoggerClass):
-     def exception(self, msg, *args, **kwargs):
-         yield LoggingLoggerClass.exception(self, msg, *args, **kwargs)
- 
--    def findCaller(self, stack_info=False):  # NOQA: N802
-+    def findCaller(self, *args, **kwargs):  # NOQA: N802
-         f = logging.currentframe().f_back
-         rv = '(unknown file)', 0, '(unknown function)'
-         while hasattr(f, 'f_code'):
--- 
-cgit v1.1
-
diff --git a/net-p2p/deluge-cli/pkg-plist b/net-p2p/deluge-cli/pkg-plist
index cefd75b480c2..8885a9b404b4 100644
--- a/net-p2p/deluge-cli/pkg-plist
+++ b/net-p2p/deluge-cli/pkg-plist
@@ -1,3 +1,4 @@
+%%PYTHON_SITELIBDIR%%/deluge/i18n/af/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/ar/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/ast/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/be/LC_MESSAGES/deluge.mo
@@ -19,8 +20,10 @@
 %%PYTHON_SITELIBDIR%%/deluge/i18n/eu/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/fa/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/fi/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/fo/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/fr/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/fy/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/ga/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/gl/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/he/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/hi/LC_MESSAGES/deluge.mo
@@ -33,17 +36,24 @@
 %%PYTHON_SITELIBDIR%%/deluge/i18n/ja/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/ka/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/kk/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/km/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/kn/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/ko/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/ku/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/ky/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/la/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/lb/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/lt/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/lv/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/mk/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/ml/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/ms/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/nap/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/nb/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/nds/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/nl/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/nn/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/oc/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/pl/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/pms/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/pt/LC_MESSAGES/deluge.mo
@@ -56,11 +66,13 @@
 %%PYTHON_SITELIBDIR%%/deluge/i18n/sr/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/sv/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/ta/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/te/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/th/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/tl/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/tlh/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/tr/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/uk/LC_MESSAGES/deluge.mo
+%%PYTHON_SITELIBDIR%%/deluge/i18n/ur/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/vi/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/zh_CN/LC_MESSAGES/deluge.mo
 %%PYTHON_SITELIBDIR%%/deluge/i18n/zh_HK/LC_MESSAGES/deluge.mo
diff --git a/net-p2p/deluge/Makefile b/net-p2p/deluge/Makefile
index 70822195d6e0..b7a886070e78 100644
--- a/net-p2p/deluge/Makefile
+++ b/net-p2p/deluge/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	deluge
-PORTVERSION=	2.0.3
-PORTREVISION=	5
+PORTVERSION=	2.1.1
+PORTREVISION=	0
 PORTEPOCH=	2
 CATEGORIES=	net-p2p python
 
@@ -12,6 +12,7 @@ LICENSE=	GPLv3
 
 RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}dbus>=0.83:devel/py-dbus@${PY_FLAVOR} \
 		${PYGAME} \
+		${PY_PILLOW} \
 		xdg-utils>=1.0.2:devel/xdg-utils \
 		deluge:net-p2p/deluge-cli