Index | Thread | Search

From:
Theo Buehler <tb@openbsd.org>
Subject:
Re: py3.14
To:
Stuart Henderson <stu@spacehopper.org>
Cc:
ports <ports@openbsd.org>, Daniel Dickman <didickman@gmail.com>, Kurt Mosiejczuk <kurt@cranky.work>, Landry Breuil <landry@rhaalovely.net>, thfr@openbsd.org
Date:
Fri, 1 May 2026 17:43:58 +0200

Download raw body.

Thread
    • Kurt Mosiejczuk:

      py3.14

  • Theo Buehler:

    py3.14

  • Theo Buehler:

    py3.14

    • Stuart Henderson:

      py3.14

      • Theo Buehler:

        py3.14

  • +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 <module>
        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"
    
    
  • Theo Buehler:

    py3.14