git: 4b94edb58eba - main - devel/py-cibuildwheel: update 2.23.2 → 4.1.1

Yuri Victorovich <[email protected]> Sun, 02 Aug 2026 23:54:28 +0000
Newsgroups gmane.os.freebsd.devel.cvs.ports
Message-ID <[email protected]>
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=4b94edb58eba46f8a009c7a7a5e18600507add9e

commit 4b94edb58eba46f8a009c7a7a5e18600507add9e
Author:     Yuri Victorovich <[email protected]>
AuthorDate: 2026-08-02 20:04:56 +0000
Commit:     Yuri Victorovich <[email protected]>
CommitDate: 2026-08-02 23:54:22 +0000

    devel/py-cibuildwheel: update 2.23.2 → 4.1.1
---
 devel/py-cibuildwheel/Makefile                     | 13 +++++++---
 devel/py-cibuildwheel/distinfo                     |  6 ++---
 ...tch-cibuildwheel_resources_android_rust_shim.py | 10 ++++++++
 devel/py-cibuildwheel/files/patch-test_utils.py    | 29 ++++++++--------------
 ...-unit__test_main__tests_main__platform__test.py | 10 ++++----
 5 files changed, 37 insertions(+), 31 deletions(-)

diff --git a/devel/py-cibuildwheel/Makefile b/devel/py-cibuildwheel/Makefile
index 0808b29f402c..ac787fda0264 100644
--- a/devel/py-cibuildwheel/Makefile
+++ b/devel/py-cibuildwheel/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	cibuildwheel # doesn't fully support FreeBSD
-DISTVERSION=	2.23.2
+DISTVERSION=	4.1.1
 CATEGORIES=	devel science
 MASTER_SITES=	PYPI
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
@@ -13,17 +13,22 @@ LICENSE=	BSD2CLAUSE
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
 BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR}
-RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}bashlex>=0.13:devel/py-bashlex@${PY_FLAVOR} \
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}bashlex>=0.14:devel/py-bashlex@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}bracex>0:textproc/py-bracex@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}build>=1.0.0:devel/py-build@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}certifi>0:security/py-certifi@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}dependency-groups>=1.2:devel/py-dependency-groups@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}filelock>=0:sysutils/py-filelock@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}filelock>0:sysutils/py-filelock@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}humanize>0:devel/py-humanize@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}packaging>=20.9:devel/py-packaging@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}platformdirs>=0:devel/py-platformdirs@${PY_FLAVOR}
+		${PYTHON_PKGNAMEPREFIX}platformdirs>0:devel/py-platformdirs@${PY_FLAVOR}
 
 USES=		python
 USE_PYTHON=	pep517 autoplist pytest
 
 NO_ARCH=	yes
 
+post-patch:
+	@${RM} ${WRKSRC}/*/*.orig ${WRKSRC}/*/*/*.orig ${WRKSRC}/*/*/*/*.orig 2>/dev/null || ${TRUE}
+
 .include <bsd.port.mk>
diff --git a/devel/py-cibuildwheel/distinfo b/devel/py-cibuildwheel/distinfo
index 690aba1dcc65..617a36a85ec3 100644
--- a/devel/py-cibuildwheel/distinfo
+++ b/devel/py-cibuildwheel/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1743408200
-SHA256 (cibuildwheel-2.23.2.tar.gz) = fba11162a4c0b3c4f0f5302661abb2dccdb26b0e9449ea0389c5ff18d4ef0c55
-SIZE (cibuildwheel-2.23.2.tar.gz) = 295372
+TIMESTAMP = 1785699168
+SHA256 (cibuildwheel-4.1.1.tar.gz) = 30ee78f134a8273b2f128ffb8c84bce577b9352af30e8ecf412cdf71bb3844c2
+SIZE (cibuildwheel-4.1.1.tar.gz) = 454766
diff --git a/devel/py-cibuildwheel/files/patch-cibuildwheel_resources_android_rust_shim.py b/devel/py-cibuildwheel/files/patch-cibuildwheel_resources_android_rust_shim.py
new file mode 100644
index 000000000000..42e2c6a1961e
--- /dev/null
+++ b/devel/py-cibuildwheel/files/patch-cibuildwheel_resources_android_rust_shim.py
@@ -0,0 +1,10 @@
+-- Remove shebang from rust_shim.py as it is not a standalone script
+-- and should not be executed directly
+
+--- cibuildwheel/resources/android/rust_shim.py.orig	2026-08-02 12:34:00.000000000 -0700
++++ cibuildwheel/resources/android/rust_shim.py
+@@ -1,4 +1,3 @@
+-#!/usr/bin/env python3
+ 
+ import os
+ import shutil
diff --git a/devel/py-cibuildwheel/files/patch-test_utils.py b/devel/py-cibuildwheel/files/patch-test_utils.py
index 7fbd93784d0a..7b6a129b7959 100644
--- a/devel/py-cibuildwheel/files/patch-test_utils.py
+++ b/devel/py-cibuildwheel/files/patch-test_utils.py
@@ -1,20 +1,11 @@
---- test/utils.py.orig	2025-03-31 08:27:36 UTC
+--- test/utils.py.orig	2026-08-02 12:34:06.152056000 -0700
 +++ test/utils.py
-@@ -30,6 +30,8 @@ elif sys.platform.startswith("linux"):
-     pass
- elif sys.platform.startswith("linux"):
-     platform = "linux"
-+elif sys.platform.startswith("freebsd"):
-+    platform = "freebsd"
- elif sys.platform.startswith("darwin"):
-     platform = "macos"
- elif sys.platform.startswith(("win32", "cygwin")):
-@@ -67,7 +69,7 @@ def _update_pip_cache_dir(env: dict[str, str]) -> None
- def _update_pip_cache_dir(env: dict[str, str]) -> None:
-     # Fix for pip concurrency bug https://github.com/pypa/pip/issues/11340
-     # See https://github.com/pypa/cibuildwheel/issues/1254 for discussion.
--    if platform == "linux":
-+    if platform == "linux" or platform == "freebsd":
-         return
-     if "PIP_CACHE_DIR" in env:
-         return
+@@ -50,6 +50,8 @@ def get_platform() -> str:
+         return platform
+     elif sys.platform.startswith("linux"):
+         return "linux"
++    elif sys.platform.startswith("freebsd"):
++        return "freebsd"
+     elif sys.platform.startswith("darwin"):
+         return "macos"
+     elif sys.platform.startswith(("win32", "cygwin")):
diff --git a/devel/py-cibuildwheel/files/patch-unit__test_main__tests_main__platform__test.py b/devel/py-cibuildwheel/files/patch-unit__test_main__tests_main__platform__test.py
index d5148b3fcd42..2ad9c8d10034 100644
--- a/devel/py-cibuildwheel/files/patch-unit__test_main__tests_main__platform__test.py
+++ b/devel/py-cibuildwheel/files/patch-unit__test_main__tests_main__platform__test.py
@@ -1,6 +1,6 @@
---- unit_test/main_tests/main_platform_test.py.orig	2025-03-31 08:24:58 UTC
+--- unit_test/main_tests/main_platform_test.py.orig	2026-08-02 12:34:41.302162000 -0700
 +++ unit_test/main_tests/main_platform_test.py
-@@ -25,6 +25,8 @@ def test_platform_unset_or_auto(monkeypatch, intercept
+@@ -35,6 +35,8 @@ def test_platform_unset_or_auto(
      # check that the platform was auto detected to build for the current system
      if sys.platform.startswith("linux"):
          assert options.platform == "linux"
@@ -9,12 +9,12 @@
      elif sys.platform == "darwin":
          assert options.platform == "macos"
      elif sys.platform == "win32":
-@@ -82,6 +84,8 @@ def test_archs_default(platform, intercepted_build_arg
+@@ -98,6 +100,8 @@ def test_archs_default(platform: str, intercepted_build_args: ArgsInterceptor)
  
      if platform == "linux":
-         assert options.globals.architectures == {Architecture.x86_64, Architecture.i686}
+         assert options.globals.architectures == {Architecture.x86_64}
 +    elif platform == "freebsd":
-+        assert options.globals.architectures == {Architecture.AMD64, Architecture.x86}
++        assert options.globals.architectures == {Architecture.AMD64}
      elif platform == "windows":
          assert options.globals.architectures == {Architecture.AMD64, Architecture.x86}
      else: