From: Theo Buehler Subject: Re: py3.14 To: Stuart Henderson Cc: ports , Daniel Dickman , Kurt Mosiejczuk , Landry Breuil , thfr@openbsd.org Date: Fri, 1 May 2026 17:43:58 +0200 +thfr On Mon, Apr 27, 2026 at 02:38:53PM +0100, Stuart Henderson wrote: > I'm keen to move Python to 3.14 fairly soon after we're unlocked and > building -current packages again, to give us a decent amount of time to > fix any runtime issues that we run into. > > My bulk was reasonably clean - other than the usual s/313/314/ in > various ports (boost etc), I ran into failures in: Works for me. Tested on amd64 in a bulk and on sparc64 with a build and running regress (which looks reasonable). ok tb In addition to theharvester these two ports broke in my amd64 bulk: - www/seamonkey Similar to the other mozillas + some additional contortions due to its build system. I will land the diff with the rust 1.95 build fix. - games/dxx-rebirth No idea. It appears that freebsd uses a different version from 20250329 and it appears to work for them... This repo seems active, although it doesn't have release tags: https://github.com/dxx-rebirth/dxx-rebirth c++ -c -g -O2 -ftabstop=4 -Wall -pthread -funsigned-char -O2 -pipe -std=gnu++20 -Wno-unused-lambda-capture -Wno-gnu-string-literal-operator-template -fvisibility=hidden -Wold-style-cast -Wredundant-decls -E -Wno-sign-compare -I/usr/local/include -I/usr/local/include/SDL -I/usr/X11R6/include -DPHYSFS_DEPRECATED= -DNDEBUG -DRELEASE -D_REENTRANT -DDXX_BUILD_DESCENT_I -D__STDC_FORMAT_MACROS -DDXX_USE_SHAREPATH=1 -DDXX_KCONFIG_UI_ENUM=DXX_KCONFIG_UI_ENUM -DDXX_KCONFIG_UI_LABEL=DXX_KCONFIG_UI_LABEL -Dkc_item=kc_item -Icommon/include -Icommon/main -I. -Ibuild -I/usr/local/include/libpng16 -I/usr/local/include -I/usr/local/include/SDL -I/usr/X11R6/include -Id1x-rebirth/main similar/main/kconfig.ui-table.cpp -o build/similar/main/.d1x-rebirth.kconfig.ui-table.i /usr/local/bin/python3.14 similar/main/generate-kconfig-udlr.py build/similar/main/.d1x-rebirth.kconfig.ui-table.i build/d1x-rebirth/kconfig.udlr.h Traceback (most recent call last): File "/work/pobj/dxx-rebirth-0.60pl20220929/dxx-rebirth_20220929-src/similar/main/generate-kconfig-udlr.py", line 339, in main generated_text = self.prepare_text(script,fi) File "/work/pobj/dxx-rebirth-0.60pl20220929/dxx-rebirth_20220929-src/similar/main/generate-kconfig-udlr.py", line 277, in prepare_text result.extend(generate_defines(array_name, source, lines)) ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/work/pobj/dxx-rebirth-0.60pl20220929/dxx-rebirth_20220929-src/similar/main/generate-kconfig-udlr.py", line 145, in generate_defines resolve_expr(source, lno, 'xinput', m('xinput')), ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/work/pobj/dxx-rebirth-0.60pl20220929/dxx-rebirth_20220929-src/similar/main/generate-kconfig-udlr.py", line 103, in resolve_expr return NodeVisitor(source, lno, name, expr, self.constants).visit(ast.parse(expr, mode='eval')) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.14/ast.py", line 506, in visit return visitor(node) File "/work/pobj/dxx-rebirth-0.60pl20220929/dxx-rebirth_20220929-src/similar/main/generate-kconfig-udlr.py", line 75, in visit_Expression return self.visit(node.body) ~~~~~~~~~~^^^^^^^^^^^ File "/usr/local/lib/python3.14/ast.py", line 506, in visit return visitor(node) File "/work/pobj/dxx-rebirth-0.60pl20220929/dxx-rebirth_20220929-src/similar/main/generate-kconfig-udlr.py", line 56, in generic_visit raise InputException('%s:%u: %r expression %r uses unsupported node type %s' % (self.source, self.lno, self.name, self.expr, node.__class__.__name__)) InputException: build/similar/main/.d1x-rebirth.kconfig.ui-table.i:20: 'xinput' expression '86' uses unsupported node type Constant During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/work/pobj/dxx-rebirth-0.60pl20220929/dxx-rebirth_20220929-src/similar/main/generate-kconfig-udlr.py", line 359, in Main().main(*a[0:3]) ~~~~~~~~~~~^^^^^^^^^ File "/work/pobj/dxx-rebirth-0.60pl20220929/dxx-rebirth_20220929-src/similar/main/generate-kconfig-udlr.py", line 346, in main sys.stderr.write('error: %s\n' % e.message) ^^^^^^^^^ AttributeError: 'InputException' object has no attribute 'message' scons: *** [build/d1x-rebirth/kconfig.udlr.h] Error 1 scons: building terminated because of errors. Failed target count: total=1; targets with enable_build_failure_summary=1: 1 Failed node list: build/d1x-rebirth/kconfig.udlr.h Failed command list: /usr/local/bin/python3.14 "similar/main/generate-kconfig-udlr.py" "build/similar/main/.d1x-rebirth.kconfig.ui-table.i" "build/d1x-rebirth/kconfig.udlr.h"