===> The following configuration options are available for python312-3.12.15:
DEBUG=off: Build with debugging support
IPV6=on: IPv6 protocol support
LIBMPDEC=on: Use libmpdec from ports instead of bundled version
LTO=on: Use Link-Time Optimization
NLS=on: Enable gettext support for the locale module
PYMALLOC=on: Enable specialized mallocs
====> Hash Algorithm (PEP-456): you can only select none or one of them
FNV=off: Modified Fowler-Noll-Vo Algorithm
SIPHASH=off: SipHash24 Algorithm
===> Use 'make config' to modify these settings
lang/python31{0,1,2}: reroll PATCHFILES after repository growth
Each commit checksum now shows one additional character, but the
diff contents are identical.
PR: 295595
devel/libtextstyle, devel/gettext*: Update to 1.0
devel/gettext-tools: Use external libunistring and libxml2.
lang/python*: Remove dependency on gettext-tools. It isn't used and
it is gettext-tools that depends on python now.
PR: 293963
Exp-run by: antoine
lang/python3{12,13}: limit parallel .pyc compilation to MAKE_JOBS
This option is available since python312[0]. This fixes
python312 and python313 builds with qemu-user-static
emulating riscv64.
[0]
https://github.com/python/cpython/commit/9a7e9f9921804f3f90151ca42703e612697dd430
Approved by: vishwin (#python), lwhsu (mentor)
Signed-off-by: Siva Mahadevan <siva@FreeBSD.org>
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D54906
Revert "Reapply "lang/python31[012]: deprecate 2026-03-31""
This reverts commit a132acab8736bad2fa59e941d5d77da4ea7688a0.
This commit is disrespectful for people trying to make the ports tree work with
version 3.12
With hat: pkgmgr
Revert "lang/python31[012]: deprecate 2026-03-31"
The latest 3.12 release contains the referenced security fixes. The
other two branches are not EOL.
PR: 291609
With hat: python
Requested by: antoine
This reverts commit 66173037774d8648a59e30b424692ae80dbc20b3.
lang/python31[012]: deprecate 2026-03-31
Since the current Python upstream maintainers have not yet released
security fix releases to match 3.14.2 and 3.13.11, meaning that we have
about three unfixed security issues per 3.12/3.11/3.10 release, and the
current FreeBSD python@ team is unwilling to take approved upstream
patches individually (see PR), we need to expedite the removal of
vulnerable versions and the transition to 3.13/3.14. Deprecate all
"security support" releases of Python that are not in the bugfix phase.
PR: 291609
python.mk: rename PYTHON_EXT_SUFFIX to PYTHON_TAG, document, etc
EXT_SUFFIX, according to PEP 3149, refers to the full tag and
extension for compiled extension module objects, eg .cpython-311.so,
.cpython-313t.so, etc. We do not use the correct semantic meaning,
and this usage becomes ambiguous and confusing when tags do not
match between bytecode and compiled extension module objects.
Rename our PYTHON_EXT_SUFFIX to PYTHON_TAG to align with PEP 3147's
specification of a magic tag, which consists of implementation name
and shorthand version only. This is meant for bytecode and other
files containing this tag in their filename that do not depend on
a specific Python ABI for the same version. Chase all existing
consumers.
(Only the first 15 lines of the commit message are shown above )