git: 887c629104ce - main - sysutils/py-salt: Update to 3006.23

From: Kirill Ponomarev <krion_at_FreeBSD.org>
Date: Wed, 25 Feb 2026 19:40:40 UTC
The branch main has been updated by krion:

URL: https://cgit.FreeBSD.org/ports/commit/?id=887c629104ce0f62fcbcdb29557788fcde73d56f

commit 887c629104ce0f62fcbcdb29557788fcde73d56f
Author:     Kirill Ponomarev <krion@FreeBSD.org>
AuthorDate: 2026-02-25 19:37:46 +0000
Commit:     Kirill Ponomarev <krion@FreeBSD.org>
CommitDate: 2026-02-25 19:40:39 +0000

    sysutils/py-salt: Update to 3006.23
    
    PR:             287582
    Reported by:    Nick Hilliard <nick__at__foobar__dot__org>, T.S. <net__at__arrishq__dot__net>, James TD Smith <ahktenzero+freebsd__at__mohorovi__dot__cc>
---
 sysutils/py-salt/Makefile                          | 21 ++++++++-----
 sysutils/py-salt/distinfo                          |  6 ++--
 sysutils/py-salt/files/patch-requirements_base.txt | 35 ++++++++++++++++++----
 .../files/patch-salt_ext_tornado_iostream.py       | 10 -------
 sysutils/py-salt/files/patch-salt_loader_lazy.py   |  6 ++--
 .../py-salt/files/patch-salt_modules_config.py     |  4 +--
 sysutils/py-salt/files/patch-salt_utils_process.py | 28 +++++++++--------
 sysutils/py-salt/files/salt_master.in              |  1 -
 sysutils/py-salt/files/salt_minion.in              |  1 -
 9 files changed, 65 insertions(+), 47 deletions(-)

diff --git a/sysutils/py-salt/Makefile b/sysutils/py-salt/Makefile
index 235f105f92b0..416e4d0af533 100644
--- a/sysutils/py-salt/Makefile
+++ b/sysutils/py-salt/Makefile
@@ -1,6 +1,5 @@
 PORTNAME=	salt
-PORTVERSION=	3006.9
-PORTREVISION=	7
+PORTVERSION=	3006.23
 PORTEPOCH=	1
 CATEGORIES=	sysutils python
 MASTER_SITES=	PYPI
@@ -27,16 +26,23 @@ RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}looseversion>0:devel/py-looseversion@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}packaging>0:devel/py-packaging@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}croniter>0:sysutils/py-croniter@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}setproctitle>0:devel/py-setproctitle@${PY_FLAVOR}
+		${PYTHON_PKGNAMEPREFIX}frozenlist>0:devel/py-frozenlist@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}timelib>0:devel/py-timelib@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}immutables>0:devel/py-immutables@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}cffi>0:devel/py-cffi@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}backports>0:devel/py-backports@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}tornado>0:www/py-tornado@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}virtualenv>0:devel/py-virtualenv@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}jaraco.text>=4.0.0:devel/py-jaraco.text@${PY_FLAVOR}
 
-USES=		cpe python
+USES=		cpe python:-3.11
 
 CPE_VENDOR=	saltstack
 CPE_PRODUCT=	salt
 USE_PYTHON=	autoplist cryptography distutils
 NO_ARCH=	yes
 
-CONFLICTS=	py[0-9]*-salt-2019*
+CONFLICTS=	py[0-9]*-salt-300*
 
 # we must pass these options before the target name, and python.mk has no
 # early-arguments variable, so we have to manipulate the target
@@ -75,7 +81,6 @@ ZEROMQ_DESC=	Install dependencies required for ZeroMQ transport
 
 # AWS dependencies (Note: the devel/py-botocore port is updated very frequently)
 AWS_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}boto3>0:www/py-boto3@${PY_FLAVOR} \
-			${PYTHON_PKGNAMEPREFIX}boto>=2.32.1:devel/py-boto@${PY_FLAVOR} \
 			${PYTHON_PKGNAMEPREFIX}botocore>0:devel/py-botocore@${PY_FLAVOR}
 
 TCP_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pycryptodomex>=3.9.7:security/py-pycryptodomex@${PY_FLAVOR}
@@ -99,7 +104,7 @@ ZSH_PLIST_FILES=	share/zsh/site-functions/_salt
 post-patch:
 .for file in conf/minion conf/master doc/man/salt-key.1 \
 	doc/man/salt-cp.1 doc/man/salt-minion.1 doc/man/salt-syndic.1 \
-	doc/man/salt-master.1 doc/man/salt-run.1 doc/man/salt.7 doc/man/salt.1 \
+	doc/man/salt-master.1 doc/man/salt-run.1 doc/man/salt.1 \
 	doc/man/salt-call.1 salt/modules/mysql.py salt/modules/tls.py salt/modules/postgres.py
 	@${REINPLACE_CMD} -e 's|/etc/salt|${ETCDIR}|' \
 		-e 's|/srv/salt|${ETCDIR}/states|' \
@@ -110,7 +115,7 @@ post-patch:
 
 do-install-BASH-on:
 	@${MKDIR} ${STAGEDIR}${PREFIX}/share/bash-completion/completions/
-	${INSTALL_DATA} ${WRKSRC}/pkg/common/salt.bash \
+	${INSTALL_DATA} ${WRKSRC}/pkg/rpm/salt.bash \
 		${STAGEDIR}${PREFIX}/share/bash-completion/completions/salt
 
 do-install-FISH-on:
diff --git a/sysutils/py-salt/distinfo b/sysutils/py-salt/distinfo
index 690dd1c5e3a3..68e321a89a80 100644
--- a/sysutils/py-salt/distinfo
+++ b/sysutils/py-salt/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1737023351
-SHA256 (salt-3006.9.tar.gz) = 7703c73a71c67327d48b2893ce9cf031ee52e2816df0daf78d6fe18a99b353e3
-SIZE (salt-3006.9.tar.gz) = 19691113
+TIMESTAMP = 1772029286
+SHA256 (salt-3006.23.tar.gz) = 89a53ef52bb484f910a4e666810b0d096f0ad42005a54ffd035036d003865e1c
+SIZE (salt-3006.23.tar.gz) = 16480449
diff --git a/sysutils/py-salt/files/patch-requirements_base.txt b/sysutils/py-salt/files/patch-requirements_base.txt
index 3b1985d11b8d..29ae46a45ae7 100644
--- a/sysutils/py-salt/files/patch-requirements_base.txt
+++ b/sysutils/py-salt/files/patch-requirements_base.txt
@@ -1,8 +1,31 @@
---- requirements/base.txt.orig	2025-01-16 10:30:29 UTC
+--- requirements/base.txt.orig	2026-02-23 20:07:08 UTC
 +++ requirements/base.txt
-@@ -14,5 +14,3 @@ croniter>=0.3.0,!=0.3.22; sys_platform != 'win32'
- packaging>=21.3
- looseversion
- croniter>=0.3.0,!=0.3.22; sys_platform != 'win32'
--# We need contextvars for salt-ssh
+@@ -8,9 +8,9 @@
+ certifi>=2024.7.4
+ cffi>=2.0.0
+ # We need contextvars for salt-ssh
 -contextvars
+-croniter>=0.3.0,!=0.3.22; sys_platform != 'win32'
+-cryptography>=46.0.5
++#contextvars
++#croniter>=0.3.0,!=0.3.22; sys_platform != 'win32'
++cryptography>=42.0.0
+ distro>=1.0.1
+ frozenlist>=1.3.0; python_version < '3.11'
+ frozenlist>=1.5.0; python_version >= '3.11'
+@@ -22,12 +22,12 @@
+ Jinja2>=3.1.5
+ jmespath>=1.1.0
+ looseversion
+-MarkupSafe<3.0.0
++MarkupSafe
+ msgpack>=1.0.0
+ # Packaging 24.1 imports annotations from __future__ which breaks salt ssh
+ # tests on target hosts with older python versions.
+-packaging==24.0
+-psutil<6.0.0; python_version <= '3.9'
++packaging>=21.3
++#psutil<6.0.0; python_version <= '3.9'
+ psutil>=5.0.0; python_version >= '3.10'
+ PyYAML
+ requests<2.32.0 ; python_version < '3.10'
diff --git a/sysutils/py-salt/files/patch-salt_ext_tornado_iostream.py b/sysutils/py-salt/files/patch-salt_ext_tornado_iostream.py
deleted file mode 100644
index 4a163d249474..000000000000
--- a/sysutils/py-salt/files/patch-salt_ext_tornado_iostream.py
+++ /dev/null
@@ -1,10 +0,0 @@
---- salt/ext/tornado/iostream.py.orig	2023-05-16 11:50:28 UTC
-+++ salt/ext/tornado/iostream.py
-@@ -1116,6 +1116,7 @@ class IOStream(BaseIOStream):
-             future = self._connect_future = TracebackFuture()
-         try:
-             self.socket.connect(address)
-+            self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, 524288)
-         except socket.error as e:
-             # In non-blocking mode we expect connect() to raise an
-             # exception with EINPROGRESS or EWOULDBLOCK.
diff --git a/sysutils/py-salt/files/patch-salt_loader_lazy.py b/sysutils/py-salt/files/patch-salt_loader_lazy.py
index f5d66afdcd99..65b06a6338f8 100644
--- a/sysutils/py-salt/files/patch-salt_loader_lazy.py
+++ b/sysutils/py-salt/files/patch-salt_loader_lazy.py
@@ -1,11 +1,11 @@
---- salt/loader/lazy.py.orig	2021-09-27 17:31:38 UTC
+--- salt/loader/lazy.py.orig	2026-02-23 20:07:08 UTC
 +++ salt/loader/lazy.py
-@@ -447,7 +447,7 @@ class LazyLoader(salt.utils.lazy.LazyDict):
+@@ -540,7 +540,7 @@
              try:
                  pycache_files = [
                      os.path.join("__pycache__", x)
 -                    for x in sorted(os.listdir(os.path.join(mod_dir, "__pycache__")))
-+                    for x in sorted(os.listdir(os.path.join(mod_dir, '__pycache__'))) if not x.endswith('opt-1.pyc') and not x.endswith('opt-2.pyc')
++                    for x in sorted(os.listdir(os.path.join(mod_dir, "__pycache__"))) if not x.endswith('opt-1.pyc') and not x.endswith('opt-2.pyc')
                  ]
              except OSError:
                  pass
diff --git a/sysutils/py-salt/files/patch-salt_modules_config.py b/sysutils/py-salt/files/patch-salt_modules_config.py
index 197f64dc1b8e..36dba0418eea 100644
--- a/sysutils/py-salt/files/patch-salt_modules_config.py
+++ b/sysutils/py-salt/files/patch-salt_modules_config.py
@@ -1,6 +1,6 @@
---- salt/modules/config.py.orig	2025-01-17 15:15:13 UTC
+--- salt/modules/config.py.orig	2026-02-23 20:07:08 UTC
 +++ salt/modules/config.py
-@@ -17,13 +17,7 @@ from salt.loader.context import LoaderContext
+@@ -17,13 +17,7 @@
  import salt.utils.sdb as sdb
  from salt.loader.context import LoaderContext
  
diff --git a/sysutils/py-salt/files/patch-salt_utils_process.py b/sysutils/py-salt/files/patch-salt_utils_process.py
index b12e5996c9a3..f3d6a31f41e7 100644
--- a/sysutils/py-salt/files/patch-salt_utils_process.py
+++ b/sysutils/py-salt/files/patch-salt_utils_process.py
@@ -1,14 +1,16 @@
---- salt/utils/process.py.orig	2024-07-29 07:51:58 UTC
+--- salt/utils/process.py.orig	2026-02-23 20:07:08 UTC
 +++ salt/utils/process.py
-@@ -59,7 +59,10 @@ def appendproctitle(name):
-         current = setproctitle.getproctitle()
-         if current.strip().endswith("MainProcess"):
-             current, _ = current.rsplit("MainProcess", 1)
--        setproctitle.setproctitle(f"{current.rstrip()} {name}")
-+        if len(current) > 0:
-+            setproctitle.setproctitle(f"{current.rstrip()} {name}")
-+        else:
-+            setproctitle.setproctitle(name)
-
-
- def daemonize(redirect_out=True):
+@@ -43,11 +43,7 @@
+ except ImportError:
+     pass
+ 
+-try:
+-    import setproctitle
+-
+-    HAS_SETPROCTITLE = True
+-except ImportError:
+-    HAS_SETPROCTITLE = False
++# setproctitle disabled: it breaks rc script stop/restart when procname changes
++HAS_SETPROCTITLE = False
+ 
+ # Process finalization function list
diff --git a/sysutils/py-salt/files/salt_master.in b/sysutils/py-salt/files/salt_master.in
index d8691747e322..249c1d735e41 100644
--- a/sysutils/py-salt/files/salt_master.in
+++ b/sysutils/py-salt/files/salt_master.in
@@ -34,7 +34,6 @@ command_interpreter="%%PYTHON_CMD%%"
 required_files=${salt_master_configdir}
 pidfile=${salt_master_pidfile}
 command_args="-c ${required_files} --pid-file=${pidfile} -d"
-procname="MainProcess"
 
 export PATH="${salt_master_paths}"
 export PYTHON_EGG_CACHE="${salt_master_eggcache}"
diff --git a/sysutils/py-salt/files/salt_minion.in b/sysutils/py-salt/files/salt_minion.in
index d7a125daad9d..ff0a70f4c812 100644
--- a/sysutils/py-salt/files/salt_minion.in
+++ b/sysutils/py-salt/files/salt_minion.in
@@ -34,7 +34,6 @@ command_interpreter="%%PYTHON_CMD%%"
 required_files=${salt_minion_configdir}
 pidfile=${salt_minion_pidfile}
 command_args="-c ${required_files} --pid-file=${pidfile} -d"
-procname="MultiMinionProcessManager"
 
 export PATH="${salt_minion_paths}"
 export PYTHON_EGG_CACHE="${salt_minion_eggcache}"