Bug 285957 - lang/python312 as default python
Summary: lang/python312 as default python
Status: In Progress
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-python (Nobody)
URL:
Keywords: tracking
Depends on: 277826 285953 285958 286298 286361 287794 288781 292189 292190 293090
Blocks: 287530 292753
  Show dependency treegraph
 
Reported: 2025-04-08 08:31 UTC by Jordan Ostreff
Modified: 2026-03-06 11:51 UTC (History)
23 users (show)

See Also:
vishwin: maintainer-feedback+
antoine: exp-run?


Attachments
the patch (1.11 KB, patch)
2026-01-03 19:55 UTC, Antoine Brodin
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jordan Ostreff 2025-04-08 08:31:31 UTC
I'm following the manual:

 For portmaster users:
  # sh
  # portmaster -o lang/python312 python311
  # REINSTALL="$(pkg info -oq '*py311*’)”
  # pkg delete -f "*py311*"
  # portmaster $REINSTALL
  # REBUILD=$(pkg query -g "%n:%dn" '*' | grep py3 | grep -v py311 | cut -d : -f 1 | sort -u)
  # portmaster $REBUILD
  # REBUILD2=$(pkg list | grep python3-3.11 | xargs pkg which | awk '{print $6}' | sort -u)
  # portmaster $REBUILD2

  Final steps (for pre-built packages & portmaster):

  If no longer required, Python 3.11 can be removed via
  "pkg remove python311" and the directory /usr/local/lib/python3.11 can
  then be deleted afterwards, if not empty.	

and have stopped on step portmaster $REINSTALL

# pkg info | grep py312
py312-build-1.2.2_2            PEP517 package builder
py312-flit-core-3.11.0         Distribution-building parts of Flit
py312-installer-0.7.0          Library for installing Python wheels
py312-packaging-24.2           Core utilities for Python packages
py312-pyproject-hooks-1.2.0    Wrappers to call pyproject.toml-based build backend hooks
py312-wheel-0.45.1             Built-package format for Python

and actually problem is that devel/py-setuptools can't be build

$REINSTALL contains following:
devel/py-Automat devel/py-babel textproc/py-CommonMark devel/py-Jinja2 www/py-paste textproc/py-pyhamcrest print/py-PyMuPDF security/py-SecretStorage security/py-acme www/py-aioquic textproc/py-alabaster devel/py-annotated-types devel/py-appdirs devel/py-asn1crypto devel/py-attrs security/py-authlib mail/py-authres security/py-bcrypt www/py-beaker www/py-beautifulsoup www/py-bleach archivers/py-brotli devel/py-build www/py-cachecontrol devel/py-calver devel/py-canonicaljson security/py-certbot security/py-certbot-apache security/py-certifi devel/py-cffi textproc/py-chardet textproc/py-charset-normalizer devel/py-click devel/py-click-default-group devel/py-configargparse devel/py-configobj devel/py-constantly devel/py-country devel/py-crashtest security/py-cryptography lang/cython devel/py-dbus devel/py-defusedxml devel/py-deprecation devel/py-distlib sysutils/py-distro dns/py-dnspython textproc/py-docutils devel/py-dulwich devel/py-editables textproc/py-elementpath devel/py-entrypoints devel/py-evdev devel/py-fastjsonschema sysutils/py-filelock devel/py-fire devel/py-flit devel/py-flit-core print/py-fonttools devel/py-frozendict filesystems/py-fs2 textproc/py-furo devel/py-future databases/py-gdbm textproc/py-gi-docgen devel/py-google-i18n-address www/py-h2 devel/py-hatch-fancy-pypi-readme devel/py-hatch-nodejs-version devel/py-hatch-vcs devel/py-hatchling www/py-hpack www/py-html5lib www/py-hyperframe www/py-hyperlink dns/py-idna devel/py-ijson graphics/py-imagesize devel/py-immutabledict devel/py-immutables devel/py-importlib-metadata devel/py-importlib-resources devel/py-incremental devel/py-iniconfig devel/py-installer devel/py-intervaltree devel/py-ipython_genutils devel/py-iso8601 devel/py-jaraco.classes devel/py-jeepney devel/py-joblib security/py-josepy devel/py-jsonschema devel/py-jsonschema-specifications devel/py-jupyter-client devel/py-jupyter-core security/py-keyring devel/py-kitchen www/py-lesscpy devel/py-libevdev textproc/py-libxml2 textproc/py-linkify-it-py devel/py-lxml textproc/py-m2r textproc/py-mako textproc/py-markdown textproc/py-markdown-it-py textproc/py-markupsafe devel/py-matrix-common devel/py-maturin textproc/py-mdit-py-plugins textproc/py-mdurl mail/py-milter textproc/py-mistune textproc/py-mistune0 devel/py-mock devel/py-more-itertools devel/py-msgpack devel/py-mypy devel/py-mypy_extensions databases/py-mysqlclient textproc/py-myst-parser devel/py-nbclient devel/py-nbformat net/py-ndg-httpsclient devel/py-nest-asyncio net/py-netaddr devel/py-olefile security/py-openssl devel/py-orjson devel/py-packaging textproc/py-pandocfilters devel/py-parsedatetime devel/py-pathspec devel/py-pbr misc/py-pexpect devel/py-phonenumbers graphics/py-pillow devel/py-pip devel/py-pkgconfig sysutils/py-pkginfo devel/py-platformdirs devel/py-pluggy devel/py-ply devel/py-poetry-core devel/py-poetry-plugin-export www/py-priority1 net-mgmt/py-prometheus-client devel/py-proselint sysutils/py-psutil databases/py-psycopg2 sysutils/py-ptyprocess dns/py-py3dns devel/py-pyasn1 devel/py-pyasn1-modules devel/py-pybind11 devel/py-pycparser devel/py-pydantic devel/py-pydantic-core devel/py-pyflakes textproc/py-pygments www/py-pyjwt textproc/py-pylons-sphinx-themes www/py-pylsqpack security/py-pymacaroons databases/py-pymysql security/py-pynacl textproc/py-pypa-docs-theme devel/py-pyparsing devel/py-pyproject-hooks devel/py-pyrfc3339 devel/py-pyrsistent security/py-pysaml2 comms/py-pyserial net/py-pysocks mail/py-pyspf textproc/py-pystemmer devel/py-pytest devel/py-pytest-runner textproc/py-python-augeas devel/py-python-dateutil textproc/py-python-docs-theme textproc/py-python-docx www/py-python-multipart devel/py-pytz devel/py-pyudev graphics/py-pyvips devel/py-pyyaml net/py-pyzmq graphics/py-qrencode graphics/py-railroad-diagrams devel/py-rapidfuzz-capi textproc/py-recommonmark devel/py-referencing devel/py-repoze.who www/py-requests www/py-requests-toolbelt devel/py-rpds-py devel/py-scikit-build devel/py-semantic-version security/py-service-identity devel/py-setuptools devel/py-setuptools-rust devel/py-setuptools-scm devel/py-setuptools_scm_git_archive devel/py-shellingham security/py-signedjson devel/py-simplejson devel/py-six textproc/py-smartypants textproc/py-snowballstemmer devel/py-sortedcontainers www/py-soupsieve mail/py-spf-engine textproc/py-sphinx textproc/py-sphinx-argparse textproc/py-sphinx-basic-ng textproc/py-sphinx-copybutton textproc/py-sphinx-inline-tabs textproc/py-sphinx-markdown-tables textproc/py-sphinx_press_theme textproc/py-sphinx_rtd_theme textproc/py-sphinxcontrib-applehelp textproc/py-sphinxcontrib-devhelp textproc/py-sphinxcontrib-htmlhelp textproc/py-sphinxcontrib-jsmath textproc/py-sphinxcontrib-qthelp textproc/py-sphinxcontrib-serializinghtml textproc/py-sphinxcontrib-towncrier textproc/py-sphinxcontrib-websupport databases/py-sqlite3 devel/py-termcolor textproc/py-tinycss2 x11-toolkits/py-tkinter textproc/py-toml textproc/py-tomli textproc/py-tomli-w textproc/py-tomlkit www/py-tornado textproc/py-towncrier devel/py-traitlets www/py-treq devel/py-trove-classifiers devel/py-twisted devel/py-types-cryptography devel/py-types-psutil devel/py-types-setuptools devel/py-typing-extensions textproc/py-typogrify textproc/py-uc-micro-py devel/py-unicodedata2 devel/py-unpaddedbase64 net/py-urllib3 devel/py-vcversioner devel/py-versioneer devel/py-virtualenv devel/py-wcwidth converters/py-webencodings www/py-webob devel/py-wheel net/py-wsdd textproc/xml2rfc textproc/py-xmlschema devel/py-zipp devel/py-zope.component devel/py-zope.event devel/py-zope.interface archivers/py-zopfli devel/scons
Comment 1 Vladimir Druzenko freebsd_committer freebsd_triage 2025-04-08 09:27:38 UTC
There is an idea not to deviate too much from "VFX platform": https://vfxplatform.com/
In "VFX platform 2025" Python is 3.11.x.
Comment 2 Jordan Ostreff 2025-04-08 09:32:59 UTC
it looks that keeping level/py-setuptools bellow to 75.8.2 causes some problems - with wheel and not only....
Comment 3 Charlie Li freebsd_committer freebsd_triage 2025-04-08 16:19:26 UTC
What manual is this?

The devel/py-setuptools currently in tree is "temporarily" pinned to devel/py-wheel044 until the update can happen, so you will need to temporarily remove devel/py-wheel so that 044 can be installed, then remove 044 once finished.

In a more general sense however, building Python packages (FreeBSD or not) outside of isolated environments like poudriere or virtual environments is not really supported. While we in FreeBSD strive to have the ability to build stuff on live systems/environments, we are still beholden to the warts of the greater communities of the stuff ported. The Python packaging community (and a couple others) has effectively required them for support purposes as incompatibilities and breakages between even not-quite-major package versions happen often, and different versions cannot be installed concurrently.
Comment 4 Jordan Ostreff 2025-04-08 16:52:41 UTC
Currently with only pyton3-3.12 installed as default and only python version, only following ports doesn't build


databases/py-gdbm@py312 

security/py-keyring@py312 devel/py-jaraco.classes@py312 
security/py-SecretStorage@py312

graphics/py-pillow@py312 x11-toolkits/py-tkinter@py312 devel/py-twisted@py312

www/py-treq

devel/py-repoze.who www/py-webob@py312

x11-toolkits/py-tkinter

net-mgmt/py-prometheus-client devel/py-Automat@py312
Comment 5 jan 2025-04-10 04:47:59 UTC
It's not possible to build databases/py-sqlite3. I think because there is no py312 flavor for setuptools?

===>  Configuring for py312-setuptools-63.1.0_3
===>  Building for py312-setuptools-63.1.0_3
* Getting build dependencies for wheel...
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
    main()
  File "/usr/local/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 373, in main
    json_out["return_val"] = hook(**hook_input["kwargs"])
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 137, in get_requires_for_build_wheel
    backend = _build_backend()
              ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 70, in _build_backend
    obj = import_module(mod_path)
          ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/importlib/__init__.py", line 90, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 999, in exec_module
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "/var/ports/basejail/usr/ports/devel/py-setuptools/work-py312/setuptools-63.1.0/setuptools/__init__.py", line 16, in <module>
    import setuptools.version
  File "/var/ports/basejail/usr/ports/devel/py-setuptools/work-py312/setuptools-63.1.0/setuptools/version.py", line 1, in <module>
    import pkg_resources
  File "/var/ports/basejail/usr/ports/devel/py-setuptools/work-py312/setuptools-63.1.0/pkg_resources/__init__.py", line 2191, in <module>
    register_finder(pkgutil.ImpImporter, find_on_path)
                    ^^^^^^^^^^^^^^^^^^^
AttributeError: module 'pkgutil' has no attribute 'ImpImporter'. Did you mean: 'zipimporter'?

ERROR Backend subprocess exited when trying to invoke get_requires_for_build_wheel
*** Error code 1

Stop.
make[1]: stopped in /basejail/usr/ports/devel/py-setuptools
*** Error code 1

Stop.
make: stopped in /basejail/usr/ports/databases/py-sqlite3
Comment 6 commit-hook freebsd_committer freebsd_triage 2025-04-10 13:46:05 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8927fe8f67e32805fe94c94356b013d59ca4af25

commit 8927fe8f67e32805fe94c94356b013d59ca4af25
Author:     Charlie Li <vishwin@FreeBSD.org>
AuthorDate: 2025-04-10 13:44:00 +0000
Commit:     Charlie Li <vishwin@FreeBSD.org>
CommitDate: 2025-04-10 13:44:00 +0000

    devel/py-setuptools: account for removed pkgutil methods in Python 3.12

    Reported by: jan, Tatsuki Makino
    PR: 285957

 devel/py-setuptools/Makefile | 3 +++
 devel/py-setuptools/distinfo | 4 +++-
 2 files changed, 6 insertions(+), 1 deletion(-)
Comment 7 Charlie Li freebsd_committer freebsd_triage 2025-04-10 13:49:05 UTC
Commandeering this into a meta-bug to track Python 3.12-specific package breakages generally. After 3.13 is committed, activity should intensify when exp-runs happen and whatnot to preserve the n-1 bit (n being latest upstream CPython release).

(In reply to Jordan Ostreff from comment #4)
Try building these again.
Comment 8 Tatsuki Makino 2025-04-11 20:04:58 UTC
Thanks to the fixes in setuptools, the build has progressed quite a bit.
However, this time the build of net/py-pyzmq@py312 will stop due to a famous cause.

The following is an excerpt from the log.

zmq/backend/cython/_version.c:2887:55: error: no member named 'ob_digit' in 'struct _longobject'
            const digit* digits = ((PyLongObject*)x)->ob_digit;
                                  ~~~~~~~~~~~~~~~~~~  ^
zmq/backend/cython/_version.c:2942:55: error: no member named 'ob_digit' in 'struct _longobject'
            const digit* digits = ((PyLongObject*)x)->ob_digit;
                                  ~~~~~~~~~~~~~~~~~~  ^
zmq/backend/cython/_version.c:3083:55: error: no member named 'ob_digit' in 'struct _longobject'
            const digit* digits = ((PyLongObject*)x)->ob_digit;
                                  ~~~~~~~~~~~~~~~~~~  ^
zmq/backend/cython/_version.c:3138:55: error: no member named 'ob_digit' in 'struct _longobject'
            const digit* digits = ((PyLongObject*)x)->ob_digit;
                                  ~~~~~~~~~~~~~~~~~~  ^
zmq/backend/cython/_version.c:3589:47: error: no member named 'ob_digit' in 'struct _longobject'
    const digit* digits = ((PyLongObject*)b)->ob_digit;
                          ~~~~~~~~~~~~~~~~~~  ^
5 warnings and 5 errors generated.
error: command '/usr/bin/cc' failed with exit code 1
*** Error code 1

Stop.
Comment 9 Rainer Hurling freebsd_committer freebsd_triage 2025-04-12 08:43:19 UTC
(In reply to Tatsuki Makino from comment #8)
It seems this error occurs with lang/cython (v. 2xx) installed? If this is true, could you please try again with lang/cython3?

There is some evidence [1] that we need cython3 for this problem.

[1] https://github.com/aio-libs/aiohttp/issues/7229#issuecomment-1450517855
Comment 10 Tatsuki Makino 2025-04-12 09:54:36 UTC
(In reply to Rainer Hurling from comment #9)

Thank you.

It is controlled by whether the variable USE_PYTHON is set to cython or cython3, and net/py-pyzmq uses cython.
It seems that by rewriting this in cython3, the build of net/py-pyzmq@py312 succeed.
Comment 11 Evgenii Khramtsov 2025-04-28 13:58:15 UTC
Add bug 286361 to "Depends on" please, I can't edit this bug. Regular Mesa likely needs this as well, but I didn't test.
Comment 12 Charlie Li freebsd_committer freebsd_triage 2025-04-28 14:12:30 UTC
(In reply to Evgenii Khramtsov from comment #11)
Same as regular mesa when able to be updated to the current release. As commented over in bug 286361, the correct additional BUILD_DEPENDS line is not setuptools but rather packaging.
Comment 13 p5B2EA84B3 2026-01-01 16:39:57 UTC
It seems the status of this PR needs to be changed to: stalled

Last note from Charlie:  2025-04-28 14:12:30 UTC 

Python 3.12.0 exists since 2023-10-02
Python 3.12.10 final regular bugfix release 2025-04-08 (same day this PR was created)
Since then Python 3.12 is regarded as *legacy* and gets security fix releases only. The last one was 3.12.12, 2025-10-09

Will the changing of the Python default version in the FreeBSD ports will end like the failure of upgrading from 3.9 to 3.10?

Folks, we need to enter a stage of doing such tasks in a more professional way.
If we do not have the human resources we need to consist, some money needs to be thrown on such issues. Greetings to the FreeBSD Foundation from here.
Comment 14 Vladimir Druzenko freebsd_committer freebsd_triage 2026-01-01 16:44:57 UTC
(In reply to p5B2EA84B3 from comment #13)
IMHO, better to move to 3.13 without step with 3.12.

"VFX platform 2026" uses Python is 3.13.x: https://vfxplatform.com/
Comment 15 Michael Osipov freebsd_committer freebsd_triage 2026-01-03 19:12:53 UTC
(In reply to Vladimir Druzenko from comment #14)

The more versions you skip the more antiproportional work you have to do. We should solve 3.12 with newest setuptools first.
Comment 16 Antoine Brodin freebsd_committer freebsd_triage 2026-01-03 19:19:11 UTC
Request exp-run
Comment 17 Antoine Brodin freebsd_committer freebsd_triage 2026-01-03 19:19:45 UTC
Assign to portmgr for the exp-run
Comment 18 commit-hook freebsd_committer freebsd_triage 2026-01-03 19:51:33 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8d81b85e2382ecc304c77a7ba2f93ac6e2ff530f

commit 8d81b85e2382ecc304c77a7ba2f93ac6e2ff530f
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-03 19:50:16 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-03 19:50:16 +0000

    *: allow testing 3.12 as default python version

    PR:             285957

 deskutils/py-khard/Makefile | 2 +-
 devel/shiboken2/Makefile    | 2 +-
 net/samba416/Makefile       | 4 ++--
 science/py-scipy/Makefile   | 2 +-
 www/py-django60/Makefile    | 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)
Comment 19 Antoine Brodin freebsd_committer freebsd_triage 2026-01-03 19:55:44 UTC
Created attachment 266788 [details]
the patch
Comment 20 commit-hook freebsd_committer freebsd_triage 2026-01-03 22:30:49 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=11df8ba221cef0ad7d227554fa183eb968440752

commit 11df8ba221cef0ad7d227554fa183eb968440752
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-03 22:29:34 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-03 22:29:34 +0000

    devel/libsmraw: unbreak stage with python 3.12

    PR:             285957

 devel/libsmraw/Makefile | 2 ++
 1 file changed, 2 insertions(+)
Comment 21 commit-hook freebsd_committer freebsd_triage 2026-01-03 22:33:53 UTC
A commit in branch main references this bug:

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

commit c28a97962783811919679e7e1e58a9702d2420ee
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-03 22:32:18 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-03 22:32:18 +0000

    devel/libfwnt: unbreak stage with python 3.12

    PR:             285957

 devel/libfwnt/Makefile | 2 ++
 1 file changed, 2 insertions(+)
Comment 22 Jordan Ostreff 2026-01-04 10:04:42 UTC
Actually currently my system is running on python 3.14, but i'm keeping this bug because there is work ongoing on it.
Comment 23 commit-hook freebsd_committer freebsd_triage 2026-01-04 19:32:38 UTC
A commit in branch main references this bug:

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

commit be7cb5054874e3e86c2f7f4acd12d0feaccbdc1a
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-04 19:31:37 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-04 19:31:37 +0000

    libyal: fix staging with python 3.12

    PR:             285957

 devel/libcreg/Makefile         | 2 ++
 devel/libesedb/Makefile        | 1 +
 devel/libevt/Makefile          | 1 +
 devel/libevtx/Makefile         | 1 +
 devel/libewf/Makefile          | 1 +
 devel/libfwsi/Makefile         | 2 ++
 devel/liblnk/Makefile          | 1 +
 devel/libluksde/Makefile       | 1 +
 devel/libmsiecf/Makefile       | 2 ++
 devel/libolecf/Makefile        | 2 ++
 devel/libphdi/Makefile         | 2 ++
 devel/libqcow/Makefile         | 1 +
 devel/libregf/Makefile         | 1 +
 devel/libscca/Makefile         | 1 +
 devel/libsigscan/Makefile      | 2 ++
 devel/libsmdev/Makefile        | 2 ++
 devel/libvhdi/Makefile         | 2 ++
 devel/libvmdk/Makefile         | 2 ++
 devel/libvsapm/Makefile        | 2 ++
 devel/libvsgpt/Makefile        | 2 ++
 devel/libvshadow/Makefile      | 2 ++
 devel/libvslvm/Makefile        | 2 ++
 filesystems/libbde/Makefile    | 1 +
 filesystems/libfsapfs/Makefile | 1 +
 filesystems/libfsext/Makefile  | 2 ++
 filesystems/libfsfat/Makefile  | 2 ++
 filesystems/libfshfs/Makefile  | 2 ++
 filesystems/libfsntfs/Makefile | 1 +
 filesystems/libfsxfs/Makefile  | 2 ++
 filesystems/libmodi/Makefile   | 1 +
 security/libcaes/Makefile      | 2 ++
 security/libfcrypto/Makefile   | 2 ++
 sysutils/libfvde/Makefile      | 1 +
 33 files changed, 52 insertions(+)
Comment 24 commit-hook freebsd_committer freebsd_triage 2026-01-05 08:11:48 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=4606da11bf93aca8a00b2361e927c4be7b91ab40

commit 4606da11bf93aca8a00b2361e927c4be7b91ab40
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-05 08:10:39 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-05 08:10:39 +0000

    devel/libpff: fix staging with python 3.12

    PR:             285957

 devel/libpff/Makefile | 1 +
 1 file changed, 1 insertion(+)
Comment 25 ml 2026-01-05 09:30:29 UTC
Just to raise awareness: Salt currently only works with 3.11.
This is probably not detected by an exp run, since the latest patches are not comitted yet.
The current version probably compiles, but who knows if it works?
See #287582.
Comment 26 Charlie Li freebsd_committer freebsd_triage 2026-01-05 09:40:35 UTC
(In reply to ml from comment #25)
exp-run doesn't really verify much in the runtime department to begin with. These are more for checking proper staging, ie bytecode compilation, wheel generation (ie PEP-517/USE_PYTHON=pep517) and compiling extension modules written in a compiled language. As long as salt is not currently (at least in our tree) compatible with 3.12, the USES=python version restriction should keep it off this radar.
Comment 27 Antoine Brodin freebsd_committer freebsd_triage 2026-01-07 13:47:36 UTC
New failures logs:

https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-bup-0.32.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/gpsd-nox11-3.25_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-astropy-helpers-4.0.1_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/aubio-0.4.9_7.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/lvtk-2.0.0.r1.14.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-essentia-2.1.b5.859_5.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/hipercontracer-2.1.8.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/libneurosim-1.2.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-macs2-2.2.9.1_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pysam-0.23.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/ifcopenshell-0.7.0.231127_5.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-gmsh-4.14.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/zh-pycangjie-1.3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/ldb25-2.5.3_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/mongodb80-8.0.12_5.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-leveldb-0.201_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/presage-0.9.1_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-khard-0.20.0.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-brz-3.2.2_3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/fungw-1.2.2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/libarea-20191031_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/libftdi1-1.5_9.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/llvm12-12.0.1_14.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/llvm13-13.0.1_8.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-cld-20150113_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-cliapp-1.20180812.1_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-dbt-extractor-0.5.1_19.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-fluent-logger-0.11.1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-foolscap-23.3.0_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-freebsd-0.9.5_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-grizzled-0.9.4_3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-Ice-3.6.5_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pathtools-0.1.2_6.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pep562-1.1_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pycocotools-2.0.11.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pydantic-yaml-1.6.0.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pyopencl-2018.2_10.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-python-jsonrpc-server-0.4.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-python-ptrace-0.9.8_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pythonbrew-1.3_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-simpleparse-2.2.4_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-stdlib-list-0.8.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-StrEnum-0.4.15_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-timelib-0.3.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-yappi-1.4.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-zfp-1.0.1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pyside2-5.15.18.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-ros-vcstools-0.1.42_3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/tailor-0.9.37_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/apache-openoffice-devel-4.2.1758052376_1,4.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/virtualbox-ose-6.1.50_16.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/virtualbox-ose-legacy-5.2.44_33.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-odoo-19.0.20251227.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-odoo16-16.0.20250719_5.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-odoo17-17.0.20250719_4.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-odoo18-18.0.20251227.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-fife-0.4.2_13.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/vamos-0.8.2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/goocanvas3-3.0.0_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/openshadinglanguage-1.14.8.0.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-PyOpenGL-accelerate-3.1.7.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pygeos-0.14.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/ja-mozc-server-2.23.2815.102.01_31.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/eclipse-pydev-13.1.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/ko-ibus-hangul-1.5.1_3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/dotnet-9.0.10.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-python-tools-3.12.12_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/quilc-1.26.0_8.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/gau2grid-2.0.7_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-fsph-0.3.0.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-gau2grid-2.0.7_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-islpy-2024.2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pandas-datareader-0.9.0_4.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pyaudi-1.9.2.1_19.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pygsl-2.3.3_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pynleq2-0.0.2_9.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/stp-2.3.4_5,1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-SoapySDR-0.8.1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-apache-beam-2.43.0_3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-molequeue-0.9.0_3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/snakemake-6.15.5_4.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-libopenshot-0.4.0_3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/mythtv-35.0_1,1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/netdata-2.8.4.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/bazarr-1.5.2_3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/c-lightning-25.12_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/dico-2.12_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/openvswitch-2.17.12.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-avahi-0.8_5.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/samba416-4.16.11_10.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-preppy-2.4.1_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-dftd4-3.7.0.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-kim-query-3.0.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-libgetar-1.1.7_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-scipy-1.11.1_4,1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/tweedledum-1.1.1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/libpreludedb-5.2.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-pyaxo-0.8.2_4.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-python-nss-1.0.1_4.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/xen-tools-4.19.1.20250217_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/coccigrep-1.20_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/dblatex-0.3.12_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-custom_inherit-2.3.1_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-hieroglyph-2.1.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-sphinx_material-0.0.36_3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/quarto-1.9.10.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/redland-bindings-1.0.17.1_4.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/translate-toolkit-3.17.5.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-onionbalance-0.2.1_2.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-http-parser-0.9.0_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/seahub-11.0.12_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-xist-5.34_4.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/py312-compreffor-0.5.4_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/xarcan-0.6.3.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/ntk-1.3.1001_1.log
https://pkg-status.freebsd.org/gohan04/data/143amd64-default-foo/2026-01-07_08h23m41s/logs/errors/ghostty-1.2.0.log

Most problematic ports:

science/py-scipy@py312 : 306 skipped
net/samba416@default : 82 skipped (maybe the default SAMBA could be updated)
devel/libftdi1 : 23 skipped
japanese/mozc-server : 15 skipped
devel/pyside2@py312 : 8 skipped
devel/llvm12 : 7 skipped
devel/py-yappi@py312 : 6 skipped
textproc/dblatex : 5 skipped
audio/aubio : 5 skipped
Comment 28 commit-hook freebsd_committer freebsd_triage 2026-01-07 18:43:18 UTC
A commit in branch main references this bug:

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

commit eba1e69e05030747b4d4b9ee257191d19a404af3
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-07 18:41:49 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-07 18:41:49 +0000

    math/stp: fix build with python 3.12

    PR:             285957

 math/stp/Makefile | 1 +
 1 file changed, 1 insertion(+)
Comment 29 commit-hook freebsd_committer freebsd_triage 2026-01-07 18:43:23 UTC
A commit in branch main references this bug:

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

commit ebf32ffbb4a5cdd7406fef544071c102d18d583a
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-07 18:41:10 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-07 18:41:10 +0000

    devel/libftdi1: fix build with python 3.12

    PR:             285957

 devel/libftdi1/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Comment 30 commit-hook freebsd_committer freebsd_triage 2026-01-07 18:43:25 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=3ad823adbe28e85856f12c2941502ac64185f68b

commit 3ad823adbe28e85856f12c2941502ac64185f68b
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-07 18:42:28 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-07 18:42:28 +0000

    net/samba416: fix build with python 3.12

    PR:             285957

 net/samba416/Makefile | 1 +
 1 file changed, 1 insertion(+)
Comment 31 commit-hook freebsd_committer freebsd_triage 2026-01-12 12:40:19 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8a712f40160ee5090c5029d7f184541558830d2b

commit 8a712f40160ee5090c5029d7f184541558830d2b
Author:     Vladimir Druzenko <vvd@FreeBSD.org>
AuthorDate: 2026-01-12 12:25:34 +0000
Commit:     Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2026-01-12 12:25:34 +0000

    emulators/virtualbox-ose{,-legacy}: Limit python to 3.10-3.11

    This is temporary workaround for build error:

    /usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.50/src/libs/xpcom18a4/python/src/VariantUtils.cpp:197:7: error: use of undeclared identifier 'PyUnicode_GET_SIZE'; did you mean 'PyDict_GET_SIZE'?
                    if (PyUnicode_GET_SIZE(val_use) == 0) {
                        ^~~~~~~~~~~~~~~~~~
                        PyDict_GET_SIZE
    /usr/local/include/python3.12/cpython/dictobject.h:53:26: note: 'PyDict_GET_SIZE' declared here
    static inline Py_ssize_t PyDict_GET_SIZE(PyObject *op) {
                             ^
    /usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.50/src/libs/xpcom18a4/python/src/VariantUtils.cpp:501:38: error: use of undeclared identifier 'PyUnicode_AS_UNICODE'
                                    FILL_SIMPLE_POINTER( PRUnichar, *PyUnicode_AS_UNICODE(val_use) );
                                                                     ^
    /usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.50/src/libs/xpcom18a4/python/src/VariantUtils.cpp:829:8: error: use of undeclared identifier 'PyUnicode_GetSize'
                            if (PyUnicode_GetSize(ob) == 0) {
                                ^

    Support for the python 3.12+ was added in the VirtualBox 7.0.
    Maybe I'll partially port this in older VirtualBox ports later.

    PR:     292189 285957

 emulators/virtualbox-ose-legacy/Makefile | 2 +-
 emulators/virtualbox-ose/Makefile        | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
Comment 32 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:45:56 UTC
A commit in branch main references this bug:

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

commit c536fdf2eb9f6bd817c315c471425b12d795d73e
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:43:54 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:43:54 +0000

    databases/ldb25: fix build with python 3.12

    PR:             285957

 databases/ldb25/Makefile | 1 +
 1 file changed, 1 insertion(+)
Comment 33 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:46:02 UTC
A commit in branch main references this bug:

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

commit ce0f22ff650010e499521e9d64fa12ef7a28e5ac
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:42:38 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:42:38 +0000

    chinese/pycangjie: fix build with python 3.12

    PR:             285957

 chinese/pycangjie/Makefile | 1 +
 1 file changed, 1 insertion(+)
Comment 34 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:46:04 UTC
A commit in branch main references this bug:

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

commit d91cff03ba0d9519f96bfb3080509319adb4670d
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:40:31 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:40:31 +0000

    games/py-fife: fix build with python 3.12

    PR:             285957

 games/py-fife/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Comment 35 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:46:06 UTC
A commit in branch main references this bug:

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

commit da4cba9db13bbcd10ac5ebcf6a7fa6a146d60e48
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:43:20 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:43:20 +0000

    deskutils/presage: fix build with python 3.12

    PR:             285957

 deskutils/presage/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Comment 36 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:46:09 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=99fa1784e9ef4a30561084ab9a74e84c65222ee4

commit 99fa1784e9ef4a30561084ab9a74e84c65222ee4
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:42:07 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:42:07 +0000

    devel/fungw: fix build with python 3.12

    PR:             285957

 devel/fungw/Makefile | 1 +
 1 file changed, 1 insertion(+)
Comment 37 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:46:11 UTC
A commit in branch main references this bug:

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

commit f8ba202259b860b5657760070661998dfac46833
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:41:37 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:41:37 +0000

    devel/py-dbt-extractor: fix build with python 3.12

    PR:             285957

 devel/py-dbt-extractor/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Comment 38 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:46:13 UTC
A commit in branch main references this bug:

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

commit a0fb555a6be321515d010e9438cf0608fe3a7219
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:39:07 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:39:07 +0000

    finance/odoo18: fix packaging with python 3.12

    PR:             285957

 finance/odoo18/pkg-plist | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 39 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:46:15 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9964012fd426ec576823037de44cc2a67db54c6a

commit 9964012fd426ec576823037de44cc2a67db54c6a
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:39:49 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:39:49 +0000

    misc/py-SoapySDR: fix build with python 3.12

    PR:             285957

 misc/py-SoapySDR/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Comment 40 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:46:18 UTC
A commit in branch main references this bug:

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

commit fea6aa342ba549a659042675d9b444f754e72b9c
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:37:29 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:37:29 +0000

    finance/odoo16: fix packaging with python 3.12

    PR:             285957

 finance/odoo16/pkg-plist | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 41 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:46:20 UTC
A commit in branch main references this bug:

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

commit fa4e169cfc2a579ab87c38108e9831fef41a962d
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:38:28 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:38:28 +0000

    finance/odoo17: fix packaging with python 3.12

    PR:             285957

 finance/odoo17/pkg-plist | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 42 commit-hook freebsd_committer freebsd_triage 2026-01-13 17:46:22 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=710440e95b39414171940d7d4079bfb837d881e9

commit 710440e95b39414171940d7d4079bfb837d881e9
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 17:41:05 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 17:41:05 +0000

    devel/py-zfp: fix build with python 3.12

    PR:             285957

 devel/py-zfp/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Comment 43 George Mitchell 2026-01-13 17:59:27 UTC
Once we get this polished off, we can start working on making 3.13 the default . . .
Comment 44 commit-hook freebsd_committer freebsd_triage 2026-01-13 18:23:34 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=5535830aa60558f578ae719f49b992c325de0934

commit 5535830aa60558f578ae719f49b992c325de0934
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-13 18:22:40 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-13 18:22:40 +0000

    textproc/quarto: fix packaging with python 3.12

    PR:             285957

 textproc/quarto/pkg-plist | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)
Comment 45 commit-hook freebsd_committer freebsd_triage 2026-01-14 06:03:28 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8062a5726bae3a3c26f55f37b9dba25dabf6f776

commit 8062a5726bae3a3c26f55f37b9dba25dabf6f776
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-14 06:02:35 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-14 06:02:35 +0000

    devel/llvm13: fix build with python 3.12

    PR:             285957

 devel/llvm13/Makefile | 2 ++
 1 file changed, 2 insertions(+)
Comment 46 commit-hook freebsd_committer freebsd_triage 2026-01-14 06:03:33 UTC
A commit in branch main references this bug:

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

commit 4c110299a9b90511fc503223f3fda2441e733831
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-01-14 06:02:07 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-01-14 06:02:07 +0000

    devel/llvm12: fix build with python 3.12

    PR:             285957

 devel/llvm12/Makefile | 2 ++
 1 file changed, 2 insertions(+)
Comment 47 Antoine Brodin freebsd_committer freebsd_triage 2026-01-14 06:07:07 UTC
Most problematic failures at the moment:

science/py-scipy@py312 -> 309 skipped
japanese/mozc-server -> 15 skipped
devel/pyside2@py312 -> 8 skipped
devel/py-yappi@py312 -> 6 skipped
textproc/dblatex -> 5 skipped
audio/aubio -> 5 skipped
x11-toolkits/ntk -> 4 skipped
security/py-python-nss@py312 -> 3 skipped
x11-fonts/py-compreffor@py312 -> 3 skipped
astro/gpsd@nox11 -> 3 skipped
math/py-pandas-datareader@py312 -> 2 skipped
devel/py-strenum@py312 -> 2 skipped
biology/py-pysam@py312 -> 2 skipped
devel/py-stdlib-list@py312 -> 2 skipped
Comment 48 Matthias Andree freebsd_committer freebsd_triage 2026-02-05 00:28:57 UTC
Can we stop wasting time on this and move to 3.13 directly?
Comment 49 Cy Schubert freebsd_committer freebsd_triage 2026-02-05 00:50:17 UTC
(In reply to Matthias Andree from comment #48)
+1
Comment 50 p5B2EA84B3 2026-02-05 11:56:09 UTC
Bug 285958 is in the "Depends-on" list. I do doubt the relevancy of bug 285958 for this process here. Calling for a review of bug 285958 from here.
Comment 51 Jordan Ostreff 2026-02-06 09:45:35 UTC
(In reply to Matthias Andree from comment #48)
Changed the topic of the ticket to more relevant python 3.13.
Comment 52 p5B2EA84B3 2026-02-09 19:27:01 UTC
Can a committer please have a look at bug 288781 which is here on the "depends on" list.

There exists a patch since 2025-08-11 02:05 UTC waiting to be reviewed and committed. Please folks. don't bother to stop by a port which is assigned to freebsd-ports-bugs (Nobody).
Comment 53 Vladimir Druzenko freebsd_committer freebsd_triage 2026-02-09 21:42:14 UTC
(In reply to Cy Schubert from comment #49)
If there were a vote here, I'd also vote for 3.13.
One of the arguments is the use of 3.13 in the CY2026 VFX Platform: https://vfxplatform.com.
Comment 54 Antoine Brodin freebsd_committer freebsd_triage 2026-02-10 06:51:29 UTC
(In reply to Vladimir Druzenko from comment #53)
There is no vote,  we can not go to 3.13 before 3.12 unless you want to wait 1 more year for all ports to be fixed
Comment 55 Tatsuki Makino 2026-02-11 04:13:13 UTC
More importantly, it seems better to organize things so that all flavors are always available on all py ports.
For the time being, OpenShot is set up with some extra features added with that goal in mind.

BINARY_ALIAS=sphinx-build=sphinx-build-${PYTHON_VER} is written in multimedia/openshot/Makefile
USE_PYTHON=optsuffix is also written in multimedia/openshot/Makefile
BUILD_ALL_PYTHON_FLAVORS=1 is written in make.conf for poudriere
poudriere is run against multimedia/openshot@all

This allows we to confirm that PYTHON_DEFAULT works fine with the new python version, even in an environment where it is 3.11.
However, currently devel/py-dbus@{py310,py312,py313,py314}and graphics/py-cairo@py313t fails to build using this method, so if the ports were depending on it, we won't be able to run tests :)
Comment 56 commit-hook freebsd_committer freebsd_triage 2026-02-15 07:52:35 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=04470a19e668c730bcd0d7bd5636c5305ff6a2a4

commit 04470a19e668c730bcd0d7bd5636c5305ff6a2a4
Author:     Antoine Brodin <antoine@FreeBSD.org>
AuthorDate: 2026-02-15 07:51:06 +0000
Commit:     Antoine Brodin <antoine@FreeBSD.org>
CommitDate: 2026-02-15 07:51:06 +0000

    misc: fix build with python 3.12

    PR:             285957

 astro/gpsd/Makefile                | 2 ++
 audio/py-essentia/Makefile         | 1 +
 biology/libneurosim/Makefile       | 1 +
 devel/libarea/Makefile             | 1 +
 devel/py-ice/Makefile              | 3 ++-
 math/gau2grid/Makefile             | 3 ++-
 math/py-pyaudi/Makefile            | 3 ++-
 misc/py-molequeue/Makefile         | 1 +
 net-p2p/c-lightning/Makefile       | 1 +
 science/lammps/Makefile            | 1 +
 science/tweedledum/Makefile        | 4 +++-
 textproc/redland-bindings/Makefile | 1 +
 12 files changed, 18 insertions(+), 4 deletions(-)
Comment 57 Anton Saietskii 2026-02-15 13:29:36 UTC
(In reply to commit-hook from comment #56)

Shouldn't the first letter of subject be capitalized? [0]

[0]: https://docs.freebsd.org/en/articles/committers-guide/#_capitalize_the_first_letter_of_the_subject
Comment 58 p5B2EA84B3 2026-03-06 11:51:28 UTC
(In reply to Antoine Brodin from comment #54)
> There is no vote,  we can not go to 3.13 before 3.12 unless you want to wait 1 more year for all ports to be fixed

Well the difference is, in a year we would have 3.13. Here we are waiting one more year to get 3.12.

In military jargon we would call this a cluster fuck.