git: 2e6437e2a21a - main - devel/py-pyTooling: update 9.0.0 → 10.1.1

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Thu, 05 Nov 2026 20:04:39 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=2e6437e2a21afc9f3bd1fea1aa8fb31700bd29ab

commit 2e6437e2a21afc9f3bd1fea1aa8fb31700bd29ab
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2026-11-05 09:13:01 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2026-11-05 20:04:21 +0000

    devel/py-pyTooling: update 9.0.0 → 10.1.1
---
 devel/py-pyTooling/Makefile                        |  7 ++--
 devel/py-pyTooling/distinfo                        |  6 ++--
 .../files/patch-pyTooling_Platform_____init____.py | 29 -----------------
 .../files/patch-pyTooling_Process_____init____.py  | 37 ----------------------
 4 files changed, 7 insertions(+), 72 deletions(-)

diff --git a/devel/py-pyTooling/Makefile b/devel/py-pyTooling/Makefile
index a27df8e3f8d4..837f1d5e95a0 100644
--- a/devel/py-pyTooling/Makefile
+++ b/devel/py-pyTooling/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	pyTooling
 DISTVERSIONPREFIX=	v
-DISTVERSION=	9.0.0
+DISTVERSION=	10.1.1
 CATEGORIES=	devel
 #MASTER_SITES=	PYPI # requirements.txt is missing
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
@@ -17,6 +17,7 @@ BUILD_DEPENDS=	${PY_SETUPTOOLS} \
 		${PYTHON_PKGNAMEPREFIX}wheel>=0.40.0:devel/py-wheel@${PY_FLAVOR}
 TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}aiohttp>=3.12:www/py-aiohttp@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}colorama>=0.4.6:devel/py-colorama@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}packaging>=25.0:devel/py-packaging@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}pytest>=9.1:devel/py-pytest@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}requests>=2.32:www/py-requests@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}ruamel.yaml>=0.19.1:devel/py-ruamel.yaml@${PY_FLAVOR}
@@ -31,8 +32,8 @@ TEST_ARGS=	--disable-plugin-autoload
 TEST_WRKSRC=	${WRKSRC}
 
 do-test:
-	cd ${TEST_WRKSRC} && ${PYTHON_CMD} -m pytest ${TEST_ARGS} tests/unit -k 'not ExplicitPathsOnWindows and not ExplicitPathsOnLinux and not ExplicitBinaryDirectoryOnWindows and not ExplicitBinaryDirectoryOnLinux and not Packaging and not test_TypeConvertToInt and not test_LineTerminal' -v
+	@cd ${TEST_WRKSRC} && ${PYTHON_CMD} -m pytest ${TEST_ARGS} tests/unit -k 'not ExplicitPathsOnWindows and not ExplicitPathsOnLinux and not ExplicitBinaryDirectoryOnWindows and not ExplicitBinaryDirectoryOnLinux and not Packaging and not test_TypeConvertToInt and not test_LineTerminal' --ignore=tests/unit/Testing/Markers.py -v
 
-# tests as of 9.0.0: 1311 passed, 16 skipped, 29 deselected, 3 xfailed, 93 subtests passed in 35.40s
+# tests as of 10.1.1: 3463 passed, 19 skipped, 64 deselected, 3 xfailed, 1317 subtests passed in 56.28s
 
 .include <bsd.port.mk>
diff --git a/devel/py-pyTooling/distinfo b/devel/py-pyTooling/distinfo
index 52b91624f505..14120d8c2c2b 100644
--- a/devel/py-pyTooling/distinfo
+++ b/devel/py-pyTooling/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1789676918
-SHA256 (pyTooling-pyTooling-v9.0.0_GH0.tar.gz) = 7a6ce693fc4b2ba183c86a16c3831994bc8fc86206fa6734d88903cfc41bac29
-SIZE (pyTooling-pyTooling-v9.0.0_GH0.tar.gz) = 879721
+TIMESTAMP = 1793847565
+SHA256 (pyTooling-pyTooling-v10.1.1_GH0.tar.gz) = cc783a18084387c56ce47c5c544cdcef0d4c0f755622719361c49f0751824c79
+SIZE (pyTooling-pyTooling-v10.1.1_GH0.tar.gz) = 1495989
diff --git a/devel/py-pyTooling/files/patch-pyTooling_Platform_____init____.py b/devel/py-pyTooling/files/patch-pyTooling_Platform_____init____.py
deleted file mode 100644
index 5109c15a4dca..000000000000
--- a/devel/py-pyTooling/files/patch-pyTooling_Platform_____init____.py
+++ /dev/null
@@ -1,29 +0,0 @@
--- Recognize FreeBSD arm64/aarch64 as AArch64 during test and runtime
--- platform detection. This is needed because the upstream 9.0.0 release
--- only accepts amd64 on FreeBSD, but the ports builders report arm64.
---- pyTooling/Platform/__init__.py.orig	2026-08-20 21:49:09 UTC
-+++ pyTooling/Platform/__init__.py
-@@ -306,6 +306,8 @@ class Platform(metaclass=ExtendedType, singleton=True,
- 			elif sys_platform.startswith("freebsd"):
- 				if machine == "amd64":
- 					self._platform = Platforms.FreeBSD
-+				elif machine in ("aarch64", "arm64"):
-+					self._platform = Platforms.OS_FreeBSD | Platforms.ENV_Native | Platforms.ARCH_AArch64
- 				else:  # pragma: no cover
- 					raise UnknownPlatformException(f"Unknown architecture '{machine}' for FreeBSD.")
- 			else:  # pragma: no cover
-@@ -366,11 +368,11 @@ class Platform(metaclass=ExtendedType, singleton=True,
- 
- 	@readonly
- 	def IsNativeFreeBSD(self) -> bool:
--		"""Returns true, if the platform is a :term:`native` FreeBSD x86-64 platform.
-+		"""Returns true, if the platform is a :term:`native` FreeBSD platform.
- 
--		:returns: ``True``, if the platform is a native FreeBSD x86-64 platform.
-+		:returns: ``True``, if the platform is a native FreeBSD platform.
- 		"""
--		return Platforms.FreeBSD in self._platform
-+		return (Platforms.OS_FreeBSD in self._platform) and (Platforms.ENV_Native in self._platform)
- 
- 	@readonly
- 	def IsNativeMacOS(self) -> bool:
diff --git a/devel/py-pyTooling/files/patch-pyTooling_Process_____init____.py b/devel/py-pyTooling/files/patch-pyTooling_Process_____init____.py
deleted file mode 100644
index 37958ddc56cf..000000000000
--- a/devel/py-pyTooling/files/patch-pyTooling_Process_____init____.py
+++ /dev/null
@@ -1,37 +0,0 @@
--- Add a minimal FreeBSD process-memory implementation so the upstream 9.0.0
--- test suite can run on FreeBSD arm64 builders. Upstream lacks a FreeBSD
--- branch here and otherwise aborts during module import.
---- pyTooling/Process/__init__.py.orig	2026-09-17 20:37:56 UTC
-+++ pyTooling/Process/__init__.py
-@@ -114,6 +114,8 @@ class ProcessInformation(metaclass=ExtendedType, slots
- 		_processHandle: Any
- 	elif CurrentPlatform.IsNativeLinux:
- 		_processStatusFile: ClassVar[Path] = Path(f"/proc/self/statm")
-+	elif CurrentPlatform.IsNativeFreeBSD:
-+		pass
- 
- 	if CurrentPlatform.IsNativeWindows or CurrentPlatform.IsMSYS2Environment:
- 		def __init__(self) -> None:
-@@ -182,6 +184,22 @@ class ProcessInformation(metaclass=ExtendedType, slots
- 			rss = int(fields[1]) * self._pageSize  #: VmRSS
- 
- 			return MemoryInfo(rss, vms)
-+
-+	elif CurrentPlatform.IsNativeFreeBSD:
-+		def GetMemoryUsage(self) -> MemoryInfo:
-+			"""
-+			Get the memory usage of this Python process on a FreeBSD system.
-+
-+			``resource.getrusage`` provides the resident size portably on FreeBSD.
-+			Virtual memory usage is not exposed by the stdlib here, so report ``0``
-+			for the virtual component until upstream adds a native implementation.
-+
-+			:returns: Memory usage of the current process.
-+			"""
-+			from resource import RUSAGE_SELF, getrusage
-+
-+			rss = getrusage(RUSAGE_SELF).ru_maxrss * 1024
-+			return MemoryInfo(rss, 0)
- 
- 	elif CurrentPlatform.IsNativeMacOS:
- 		class _ProcTaskInfo(Structure):