On Fri, Oct 23, 2026 at 02:37:07PM +0100, Stuart Henderson wrote:
> https://discuss.python.org/t/python-3-15-1-3-14-9-and-3-13-17-are-out/109595

> I've also dropped old @pkgpath markers for lang/python/3.{8,9,10,11}
> upgrade path which are no longer useful, and the @pkgpath / @conflict
> bodges for removed py3-* ports added to cope with the py3.13 -> py3.14
> bump (the latter need to stay in -stable).

> (-current diff inline, -stable diff.gz attached)

> ok?

Looks good and I like that you're taking the opportunity for some
cleanup.

ok kmos

--Kurt

> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/lang/python/3/Makefile,v
> diff -u -p -r1.36 Makefile
> --- Makefile  7 Oct 2026 20:03:20 -0000       1.36
> +++ Makefile  23 Oct 2026 13:30:51 -0000
> @@ -3,11 +3,14 @@
>  # requirement of the PSF license, if it constitutes a change to
>  # Python itself.
>  
> -FULL_VERSION =               3.14.8
> +FULL_VERSION =               3.14.9
>  SHARED_LIBS =                python3.14 0.0
>  VERSION_SPEC =               >=3.14
>  PORTROACH =          limit:^3\.14
>  
> +# keep above 8.0-stable
> +REVISION =           0
> +
>  AUTOCONF_VERSION =   2.72
>  
>  # XXX - should come from expat_config.h, which isn't installed in base
> @@ -17,7 +20,8 @@ CONFIGURE_ENV +=    ac_cv_working_openssl_h
>       TCLTK_CFLAGS="-I${MODTCL_INCDIR} -I${MODTK_INCDIR} 
> -I${X11BASE}/include" \
>       TCLTK_LIBS="-L${X11BASE}/lib -l${MODTCL_LIB} -l${MODTK_LIB} -lpthread"
>  
> -# disable bundled pip in favour of the version from devel/py-pip
> +# disable bundled pip executable in favour of the version from devel/py-pip
> +# (ensurepip is still included in packages and used e.g. for venv)
>  CONFIGURE_ARGS +=      --with-ensurepip=no
>  
>  .include <bsd.port.mk>
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/lang/python/3/distinfo,v
> diff -u -p -r1.16 distinfo
> --- distinfo  7 Oct 2026 20:03:20 -0000       1.16
> +++ distinfo  23 Oct 2026 13:30:51 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (Python-3.14.8.tgz) = plsgpyjxafTmauFD9Asb09M8ONdwJRZj9ifJdnt5shA=
> -SIZE (Python-3.14.8.tgz) = 31525240
> +SHA256 (Python-3.14.9.tgz) = i0foXuZ+k5Rek2IKBRqPRL/B6XNe1nB10Wb0p0t6Bgs=
> +SIZE (Python-3.14.9.tgz) = 31587333
> Index: patches/patch-Modules__hashopenssl_c
> ===================================================================
> RCS file: /cvs/ports/lang/python/3/patches/patch-Modules__hashopenssl_c,v
> diff -u -p -r1.6 patch-Modules__hashopenssl_c
> --- patches/patch-Modules__hashopenssl_c      12 May 2026 13:45:10 -0000      
> 1.6
> +++ patches/patch-Modules__hashopenssl_c      23 Oct 2026 13:30:51 -0000
> @@ -11,7 +11,7 @@ Index: Modules/_hashopenssl.c
>   #if defined(NID_sha3_224) && defined(NID_sha3_256) && defined(NID_sha3_384) 
> && defined(NID_sha3_512)
>   #define PY_OPENSSL_HAS_SHA3 1
>   #endif
> -@@ -963,11 +965,15 @@ _hashlib_HASH(PyObject *module, const char *digestname
> +@@ -970,11 +972,15 @@ _hashlib_HASH(PyObject *module, const char *digestname
>           goto exit;
>       }
>   
> Index: patches/patch-configure_ac
> ===================================================================
> RCS file: /cvs/ports/lang/python/3/patches/patch-configure_ac,v
> diff -u -p -r1.9 patch-configure_ac
> --- patches/patch-configure_ac        7 Oct 2026 20:03:20 -0000       1.9
> +++ patches/patch-configure_ac        23 Oct 2026 13:30:51 -0000
> @@ -6,7 +6,7 @@
>  Index: configure.ac
>  --- configure.ac.orig
>  +++ configure.ac
> -@@ -251,7 +251,7 @@ VERSION=PYTHON_VERSION
> +@@ -257,7 +257,7 @@ VERSION=PYTHON_VERSION
>   
>   # Version number of Python's own shared library file.
>   AC_SUBST([SOVERSION])
> @@ -15,7 +15,7 @@ Index: configure.ac
>   
>   # The later definition of _XOPEN_SOURCE and _POSIX_C_SOURCE disables
>   # certain features on NetBSD, so we need _NETBSD_SOURCE to re-enable
> -@@ -1177,6 +1177,7 @@ AS_CASE([$ac_sys_system],
> +@@ -1183,6 +1183,7 @@ AS_CASE([$ac_sys_system],
>     [Darwin*], [MULTIARCH=""],
>     [iOS], [MULTIARCH=""],
>     [FreeBSD*], [MULTIARCH=""],
> @@ -23,7 +23,7 @@ Index: configure.ac
>     [MULTIARCH=$($CC --print-multiarch 2>/dev/null)]
>   )
>   AC_SUBST([MULTIARCH])
> -@@ -1926,13 +1927,13 @@ esac
> +@@ -1932,13 +1933,13 @@ esac
>   [AC_MSG_RESULT([no])])
>   if test "$Py_LTO" = 'true' ; then
>     case $ac_cv_cc_name in
> @@ -39,7 +39,7 @@ Index: configure.ac
>         AC_SUBST([LLVM_AR_FOUND])
>         if test -n "${LLVM_AR}" -a -x "${LLVM_AR}"
>         then
> -@@ -2056,7 +2057,7 @@ fi
> +@@ -2062,7 +2063,7 @@ fi
>   LLVM_PROF_ERR=no
>   
>   case "$ac_cv_cc_name" in
> @@ -48,7 +48,7 @@ Index: configure.ac
>       # Any changes made here should be reflected in the GCC+Darwin case below
>       PGO_PROF_GEN_FLAG="-fprofile-instr-generate"
>       PGO_PROF_USE_FLAG="-fprofile-instr-use=\"\$(shell 
> pwd)/code.profclangd\""
> -@@ -4496,11 +4497,7 @@ dnl Detect Tcl/Tk. Use pkg-config if available.
> +@@ -4502,11 +4503,7 @@ dnl Detect Tcl/Tk. Use pkg-config if available.
>   dnl
>   found_tcltk=no
>   for _QUERY in \
> Index: pkg/PLIST-gdbm
> ===================================================================
> RCS file: /cvs/ports/lang/python/3/pkg/PLIST-gdbm,v
> diff -u -p -r1.7 PLIST-gdbm
> --- pkg/PLIST-gdbm    12 May 2026 09:50:42 -0000      1.7
> +++ pkg/PLIST-gdbm    23 Oct 2026 13:30:51 -0000
> @@ -1,8 +1,4 @@
>  @option no-default-conflict
>  @option is-branch
>  @conflict python-gdbm->=3,<4
> -@pkgpath lang/python/3.8,-gdbm
> -@pkgpath lang/python/3.9,-gdbm
> -@pkgpath lang/python/3.10,-gdbm
> -@pkgpath lang/python/3.11,-gdbm
>  @so lib/${PY_VERSION}/lib-dynload/_gdbm.${PYC_MAGIC_TAG}.so
> Index: pkg/PLIST-idle
> ===================================================================
> RCS file: /cvs/ports/lang/python/3/pkg/PLIST-idle,v
> diff -u -p -r1.11 PLIST-idle
> --- pkg/PLIST-idle    7 Oct 2026 20:03:20 -0000       1.11
> +++ pkg/PLIST-idle    23 Oct 2026 13:30:51 -0000
> @@ -1,10 +1,6 @@
>  @option no-default-conflict
>  @option is-branch
>  @conflict python-idle->=3,<4
> -@pkgpath lang/python/3.8,-idle
> -@pkgpath lang/python/3.9,-idle
> -@pkgpath lang/python/3.10,-idle
> -@pkgpath lang/python/3.11,-idle
>  bin/idle3
>  bin/idle${VERSION}
>  lib/${PY_VERSION}/idlelib/
> Index: pkg/PLIST-main
> ===================================================================
> RCS file: /cvs/ports/lang/python/3/pkg/PLIST-main,v
> diff -u -p -r1.25 PLIST-main
> --- pkg/PLIST-main    28 Sep 2026 08:39:46 -0000      1.25
> +++ pkg/PLIST-main    23 Oct 2026 13:30:51 -0000
> @@ -1,22 +1,6 @@
>  @option no-default-conflict
>  @option is-branch
>  @conflict python->=3,<4
> -@conflict python3-*
> -@pkgpath lang/python/3.8,-main
> -@pkgpath lang/python/3.9,-main
> -@pkgpath lang/python/3.10,-main
> -@pkgpath lang/python/3.11,-main
> -@pkgpath meta/python3
> -@comment -- ports which were removed that, in the last release, depend on 
> python
> -@comment -- these need merging into python to avoid breaking updates
> -@conflict glade-*
> -@conflict hotdoc-*
> -@conflict py3-bsddb3-*
> -@conflict py3-backports-zstd-*
> -@pkgpath devel/glade
> -@pkgpath textproc/hotdoc
> -@pkgpath databases/py-bsddb3
> -@pkgpath archivers/py-backports-zstd
>  bin/pydoc3
>  bin/pydoc${VERSION}
>  bin/python
> @@ -1918,7 +1902,7 @@ lib/${PY_VERSION}/ensurepip/__pycache__/
>  lib/${PY_VERSION}/ensurepip/__pycache__/_uninstall.${PYC_MAGIC_TAG}.opt-2.pyc
>  lib/${PY_VERSION}/ensurepip/__pycache__/_uninstall.${PYC_MAGIC_TAG}.pyc
>  lib/${PY_VERSION}/ensurepip/_bundled/
> -lib/${PY_VERSION}/ensurepip/_bundled/pip-26.2.1-py3-none-any.whl
> +lib/${PY_VERSION}/ensurepip/_bundled/pip-26.2.2-py3-none-any.whl
>  lib/${PY_VERSION}/ensurepip/_uninstall.py
>  lib/${PY_VERSION}/enum.py
>  lib/${PY_VERSION}/filecmp.py
> Index: pkg/PLIST-tests
> ===================================================================
> RCS file: /cvs/ports/lang/python/3/pkg/PLIST-tests,v
> diff -u -p -r1.18 PLIST-tests
> --- pkg/PLIST-tests   7 Oct 2026 20:03:20 -0000       1.18
> +++ pkg/PLIST-tests   23 Oct 2026 13:30:51 -0000
> @@ -1,10 +1,6 @@
>  @option no-default-conflict
>  @option is-branch
>  @conflict python-tests->=3,<4
> -@pkgpath lang/python/3.10,-tests
> -@pkgpath lang/python/3.11,-tests
> -@pkgpath lang/python/3.8,-tests
> -@pkgpath lang/python/3.9,-tests
>  lib/${PY_VERSION}/test/
>  lib/${PY_VERSION}/test/NormalizationTest-3.2.0.txt
>  lib/${PY_VERSION}/test/__init__.py
> @@ -82,9 +78,6 @@ lib/${PY_VERSION}/test/__pycache__/lock_
>  lib/${PY_VERSION}/test/__pycache__/mapping_tests.${PYC_MAGIC_TAG}.opt-1.pyc
>  lib/${PY_VERSION}/test/__pycache__/mapping_tests.${PYC_MAGIC_TAG}.opt-2.pyc
>  lib/${PY_VERSION}/test/__pycache__/mapping_tests.${PYC_MAGIC_TAG}.pyc
> -lib/${PY_VERSION}/test/__pycache__/memory_watchdog.${PYC_MAGIC_TAG}.opt-1.pyc
> -lib/${PY_VERSION}/test/__pycache__/memory_watchdog.${PYC_MAGIC_TAG}.opt-2.pyc
> -lib/${PY_VERSION}/test/__pycache__/memory_watchdog.${PYC_MAGIC_TAG}.pyc
>  lib/${PY_VERSION}/test/__pycache__/mock_socket.${PYC_MAGIC_TAG}.opt-1.pyc
>  lib/${PY_VERSION}/test/__pycache__/mock_socket.${PYC_MAGIC_TAG}.opt-2.pyc
>  lib/${PY_VERSION}/test/__pycache__/mock_socket.${PYC_MAGIC_TAG}.pyc
> @@ -1811,7 +1804,6 @@ lib/${PY_VERSION}/test/mathdata/floating
>  lib/${PY_VERSION}/test/mathdata/formatfloat_testcases.txt
>  lib/${PY_VERSION}/test/mathdata/ieee754.txt
>  lib/${PY_VERSION}/test/mathdata/math_testcases.txt
> -lib/${PY_VERSION}/test/memory_watchdog.py
>  lib/${PY_VERSION}/test/mime.types
>  lib/${PY_VERSION}/test/mime.types2
>  lib/${PY_VERSION}/test/mock_socket.py
> @@ -2237,6 +2229,9 @@ lib/${PY_VERSION}/test/test_capi/__pycac
>  
> lib/${PY_VERSION}/test/test_capi/__pycache__/test_abstract.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_capi/__pycache__/test_abstract.${PYC_MAGIC_TAG}.opt-2.pyc
>  
> lib/${PY_VERSION}/test/test_capi/__pycache__/test_abstract.${PYC_MAGIC_TAG}.pyc
> +lib/${PY_VERSION}/test/test_capi/__pycache__/test_build.${PYC_MAGIC_TAG}.opt-1.pyc
> +lib/${PY_VERSION}/test/test_capi/__pycache__/test_build.${PYC_MAGIC_TAG}.opt-2.pyc
> +lib/${PY_VERSION}/test/test_capi/__pycache__/test_build.${PYC_MAGIC_TAG}.pyc
>  
> lib/${PY_VERSION}/test/test_capi/__pycache__/test_bytearray.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_capi/__pycache__/test_bytearray.${PYC_MAGIC_TAG}.opt-2.pyc
>  
> lib/${PY_VERSION}/test/test_capi/__pycache__/test_bytearray.${PYC_MAGIC_TAG}.pyc
> @@ -2353,6 +2348,7 @@ lib/${PY_VERSION}/test/test_capi/__pycac
>  
> lib/${PY_VERSION}/test/test_capi/__pycache__/test_weakref.${PYC_MAGIC_TAG}.pyc
>  lib/${PY_VERSION}/test/test_capi/check_config.py
>  lib/${PY_VERSION}/test/test_capi/test_abstract.py
> +lib/${PY_VERSION}/test/test_capi/test_build.py
>  lib/${PY_VERSION}/test/test_capi/test_bytearray.py
>  lib/${PY_VERSION}/test/test_capi/test_bytes.py
>  lib/${PY_VERSION}/test/test_capi/test_capsule.py
> @@ -2397,10 +2393,15 @@ lib/${PY_VERSION}/test/test_cext/__pycac
>  
> lib/${PY_VERSION}/test/test_cext/__pycache__/__init__.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_cext/__pycache__/__init__.${PYC_MAGIC_TAG}.opt-2.pyc
>  lib/${PY_VERSION}/test/test_cext/__pycache__/__init__.${PYC_MAGIC_TAG}.pyc
> +lib/${PY_VERSION}/test/test_cext/__pycache__/runtests.${PYC_MAGIC_TAG}.opt-1.pyc
> +lib/${PY_VERSION}/test/test_cext/__pycache__/runtests.${PYC_MAGIC_TAG}.opt-2.pyc
> +lib/${PY_VERSION}/test/test_cext/__pycache__/runtests.${PYC_MAGIC_TAG}.pyc
>  lib/${PY_VERSION}/test/test_cext/__pycache__/setup.${PYC_MAGIC_TAG}.opt-1.pyc
>  lib/${PY_VERSION}/test/test_cext/__pycache__/setup.${PYC_MAGIC_TAG}.opt-2.pyc
>  lib/${PY_VERSION}/test/test_cext/__pycache__/setup.${PYC_MAGIC_TAG}.pyc
>  lib/${PY_VERSION}/test/test_cext/extension.c
> +lib/${PY_VERSION}/test/test_cext/extension.cpp
> +lib/${PY_VERSION}/test/test_cext/runtests.py
>  lib/${PY_VERSION}/test/test_cext/setup.py
>  lib/${PY_VERSION}/test/test_charmapcodec.py
>  lib/${PY_VERSION}/test/test_class.py
> @@ -2491,17 +2492,6 @@ lib/${PY_VERSION}/test/test_contextlib_a
>  lib/${PY_VERSION}/test/test_copy.py
>  lib/${PY_VERSION}/test/test_copyreg.py
>  lib/${PY_VERSION}/test/test_coroutines.py
> -lib/${PY_VERSION}/test/test_cppext/
> -lib/${PY_VERSION}/test/test_cppext/__init__.py
> -lib/${PY_VERSION}/test/test_cppext/__pycache__/
> -lib/${PY_VERSION}/test/test_cppext/__pycache__/__init__.${PYC_MAGIC_TAG}.opt-1.pyc
> -lib/${PY_VERSION}/test/test_cppext/__pycache__/__init__.${PYC_MAGIC_TAG}.opt-2.pyc
> -lib/${PY_VERSION}/test/test_cppext/__pycache__/__init__.${PYC_MAGIC_TAG}.pyc
> -lib/${PY_VERSION}/test/test_cppext/__pycache__/setup.${PYC_MAGIC_TAG}.opt-1.pyc
> -lib/${PY_VERSION}/test/test_cppext/__pycache__/setup.${PYC_MAGIC_TAG}.opt-2.pyc
> -lib/${PY_VERSION}/test/test_cppext/__pycache__/setup.${PYC_MAGIC_TAG}.pyc
> -lib/${PY_VERSION}/test/test_cppext/extension.cpp
> -lib/${PY_VERSION}/test/test_cppext/setup.py
>  lib/${PY_VERSION}/test/test_cprofile.py
>  lib/${PY_VERSION}/test/test_crossinterp.py
>  lib/${PY_VERSION}/test/test_csv.py
> @@ -3030,6 +3020,9 @@ lib/${PY_VERSION}/test/test_free_threadi
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_bisect.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_bisect.${PYC_MAGIC_TAG}.opt-2.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_bisect.${PYC_MAGIC_TAG}.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_bytes_object.${PYC_MAGIC_TAG}.opt-1.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_bytes_object.${PYC_MAGIC_TAG}.opt-2.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_bytes_object.${PYC_MAGIC_TAG}.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_capi.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_capi.${PYC_MAGIC_TAG}.opt-2.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_capi.${PYC_MAGIC_TAG}.pyc
> @@ -3048,6 +3041,9 @@ lib/${PY_VERSION}/test/test_free_threadi
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_csv.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_csv.${PYC_MAGIC_TAG}.opt-2.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_csv.${PYC_MAGIC_TAG}.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_datetime.${PYC_MAGIC_TAG}.opt-1.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_datetime.${PYC_MAGIC_TAG}.opt-2.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_datetime.${PYC_MAGIC_TAG}.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_dbm_gnu.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_dbm_gnu.${PYC_MAGIC_TAG}.opt-2.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_dbm_gnu.${PYC_MAGIC_TAG}.pyc
> @@ -3111,6 +3107,9 @@ lib/${PY_VERSION}/test/test_free_threadi
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_monitoring.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_monitoring.${PYC_MAGIC_TAG}.opt-2.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_monitoring.${PYC_MAGIC_TAG}.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_os.${PYC_MAGIC_TAG}.opt-1.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_os.${PYC_MAGIC_TAG}.opt-2.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_os.${PYC_MAGIC_TAG}.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_pickle.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_pickle.${PYC_MAGIC_TAG}.opt-2.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_pickle.${PYC_MAGIC_TAG}.pyc
> @@ -3156,16 +3155,21 @@ lib/${PY_VERSION}/test/test_free_threadi
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_uuid.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_uuid.${PYC_MAGIC_TAG}.opt-2.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_uuid.${PYC_MAGIC_TAG}.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_weakref.${PYC_MAGIC_TAG}.opt-1.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_weakref.${PYC_MAGIC_TAG}.opt-2.pyc
> +lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_weakref.${PYC_MAGIC_TAG}.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_zip.${PYC_MAGIC_TAG}.opt-1.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_zip.${PYC_MAGIC_TAG}.opt-2.pyc
>  
> lib/${PY_VERSION}/test/test_free_threading/__pycache__/test_zip.${PYC_MAGIC_TAG}.pyc
>  lib/${PY_VERSION}/test/test_free_threading/test_bisect.py
> +lib/${PY_VERSION}/test/test_free_threading/test_bytes_object.py
>  lib/${PY_VERSION}/test/test_free_threading/test_capi.py
>  lib/${PY_VERSION}/test/test_free_threading/test_code.py
>  lib/${PY_VERSION}/test/test_free_threading/test_collections.py
>  lib/${PY_VERSION}/test/test_free_threading/test_context.py
>  lib/${PY_VERSION}/test/test_free_threading/test_cprofile.py
>  lib/${PY_VERSION}/test/test_free_threading/test_csv.py
> +lib/${PY_VERSION}/test/test_free_threading/test_datetime.py
>  lib/${PY_VERSION}/test/test_free_threading/test_dbm_gnu.py
>  lib/${PY_VERSION}/test/test_free_threading/test_dict.py
>  lib/${PY_VERSION}/test/test_free_threading/test_dict_watcher.py
> @@ -3187,6 +3191,7 @@ lib/${PY_VERSION}/test/test_free_threadi
>  lib/${PY_VERSION}/test/test_free_threading/test_methodcaller.py
>  lib/${PY_VERSION}/test/test_free_threading/test_mmap.py
>  lib/${PY_VERSION}/test/test_free_threading/test_monitoring.py
> +lib/${PY_VERSION}/test/test_free_threading/test_os.py
>  lib/${PY_VERSION}/test/test_free_threading/test_pickle.py
>  lib/${PY_VERSION}/test/test_free_threading/test_races.py
>  lib/${PY_VERSION}/test/test_free_threading/test_re.py
> @@ -3202,6 +3207,7 @@ lib/${PY_VERSION}/test/test_free_threadi
>  lib/${PY_VERSION}/test/test_free_threading/test_type.py
>  lib/${PY_VERSION}/test/test_free_threading/test_types.py
>  lib/${PY_VERSION}/test/test_free_threading/test_uuid.py
> +lib/${PY_VERSION}/test/test_free_threading/test_weakref.py
>  lib/${PY_VERSION}/test/test_free_threading/test_zip.py
>  lib/${PY_VERSION}/test/test_frozen.py
>  lib/${PY_VERSION}/test/test_fstring.py
> Index: pkg/PLIST-tkinter
> ===================================================================
> RCS file: /cvs/ports/lang/python/3/pkg/PLIST-tkinter,v
> diff -u -p -r1.7 PLIST-tkinter
> --- pkg/PLIST-tkinter 12 May 2026 09:50:42 -0000      1.7
> +++ pkg/PLIST-tkinter 23 Oct 2026 13:30:51 -0000
> @@ -1,10 +1,6 @@
>  @option no-default-conflict
>  @option is-branch
>  @conflict python-tkinter->=3,<4
> -@pkgpath lang/python/3.8,-tkinter
> -@pkgpath lang/python/3.9,-tkinter
> -@pkgpath lang/python/3.10,-tkinter
> -@pkgpath lang/python/3.11,-tkinter
>  @so lib/${PY_VERSION}/lib-dynload/_tkinter.${PYC_MAGIC_TAG}.so
>  lib/${PY_VERSION}/tkinter/
>  lib/${PY_VERSION}/tkinter/__init__.py


Reply via email to