mbox series

[0/6] python3: upgrade to 3.14.0

Message ID 20251204180945.3112334-1-tgamblin@baylibre.com
Headers show
Series python3: upgrade to 3.14.0 | expand

Message

Trevor Gamblin Dec. 4, 2025, 6:09 p.m. UTC
Here goes the first attempt at upgrading the python3 recipe to 3.14.0. This will
likely break some stuff, so it'd be good to start testing it early before
Wrynose begins the build phase. You can see the specific commits for more
details, but I will note that in addition to the buildall-qemu, reproducibility,
and ptest checks I've reported in the python3 upgrade patch itself, I've also
done the following on my build machine (F43):

- bitbake core-image-ptest-all (which is how I found the problems fixed by the
  bcrypt, jsonpointer, and pytest changes);
- bitbake -k world (which IIRC is where I found the rpm issue).

Trevor Gamblin (6):
  python3: upgrade 3.13.9 -> 3.14.0
  python_pep517: add --prefix to nativepython3 call
  python3-bcrypt: upgrade 4.3.0 -> 5.0.0
  rpm: handle CMake Python paths in do_configure
  python3-pytest: add python3-misc to RDEPENDS
  python3-jsonpointer: add python3-misc to RDEPENDS

 meta/classes-recipe/python3-dir.bbclass       |    2 +-
 meta/classes-recipe/python_pep517.bbclass     |    2 +-
 .../python/python3-bcrypt-crates.inc          |   90 +-
 ...crypt_4.3.0.bb => python3-bcrypt_5.0.0.bb} |    2 +-
 .../python/python3-jsonpointer_3.0.0.bb       |    1 +
 .../python/python3-pytest_8.4.2.bb            |    1 +
 ...r-OpenSSL-3.4-and-add-it-to-multissl.patch | 1452 -----------------
 ...-use-prefix-value-from-build-configu.patch |   35 +-
 ...sts-due-to-load-variability-on-YP-AB.patch |   37 +-
 ...ctive_children-skip-problematic-test.patch |   17 +-
 ...1-test_cmd-skip-bang-completion-test.patch |   31 +
 ...-test_unix_console.test_cursor_back_.patch |   46 +
 ...kip-test_sysconfig.test_sysconfigdat.patch |   32 +
 .../python/python3/python3-manifest.json      |    3 +-
 .../{python3_3.13.9.bb => python3_3.14.0.bb}  |   20 +-
 meta/recipes-devtools/rpm/rpm_4.20.1.bb       |    5 +
 16 files changed, 248 insertions(+), 1528 deletions(-)
 rename meta/recipes-devtools/python/{python3-bcrypt_4.3.0.bb => python3-bcrypt_5.0.0.bb} (86%)
 delete mode 100644 meta/recipes-devtools/python/python3/0001-Generate-data-for-OpenSSL-3.4-and-add-it-to-multissl.patch
 create mode 100644 meta/recipes-devtools/python/python3/0001-test_cmd-skip-bang-completion-test.patch
 create mode 100644 meta/recipes-devtools/python/python3/0001-test_pyrepl-skip-test_unix_console.test_cursor_back_.patch
 create mode 100644 meta/recipes-devtools/python/python3/0001-test_sysconfig-skip-test_sysconfig.test_sysconfigdat.patch
 rename meta/recipes-devtools/python/{python3_3.13.9.bb => python3_3.14.0.bb} (95%)

Comments

Mathieu Dubois-Briand Dec. 5, 2025, 12:02 p.m. UTC | #1
On Thu Dec 4, 2025 at 7:09 PM CET, Trevor Gamblin wrote:
> Here goes the first attempt at upgrading the python3 recipe to 3.14.0. This will
> likely break some stuff, so it'd be good to start testing it early before
> Wrynose begins the build phase. You can see the specific commits for more
> details, but I will note that in addition to the buildall-qemu, reproducibility,
> and ptest checks I've reported in the python3 upgrade patch itself, I've also
> done the following on my build machine (F43):
>
> - bitbake core-image-ptest-all (which is how I found the problems fixed by the
>   bcrypt, jsonpointer, and pytest changes);
> - bitbake -k world (which IIRC is where I found the rpm issue).
>
> Trevor Gamblin (6):

Hi Trevor,

Thanks for your patches.

It looks like we do have some issues on the autobuilder.

A first one, maybe only with alternate distro?

Traceback (most recent call last):
  File "/srv/pokybuild/yocto-worker/qemux86-alt/build/layers/openembedded-core/meta/lib/oeqa/core/decorator/__init__.py", line 35, in wrapped_f
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/srv/pokybuild/yocto-worker/qemux86-alt/build/layers/openembedded-core/meta/lib/oeqa/core/decorator/__init__.py", line 35, in wrapped_f
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/srv/pokybuild/yocto-worker/qemux86-alt/build/layers/openembedded-core/meta/lib/oeqa/runtime/cases/gi.py", line 20, in test_python
    self.assertEqual(status, 0, msg="Python failed (%s)" % (output))
AssertionError: 1 != 0 : Python failed (Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python3.14/site-packages/gi/__init__.py", line 40, in <module>
    from . import _gi
  File "/usr/lib/python3.14/asyncio/__init__.py", line 8, in <module>
    from .base_events import *
  File "/usr/lib/python3.14/asyncio/base_events.py", line 18, in <module>
    import concurrent.futures
  File "/usr/lib/python3.14/concurrent/futures/__init__.py", line 8, in <module>
    from concurrent.futures._base import (FIRST_COMPLETED,
  File "/usr/lib/python3.14/concurrent/futures/_base.py", line 7, in <module>
    import logging
  File "/usr/lib/python3.14/logging/__init__.py", line 26, in <module>
    import sys, os, time, io, re, traceback, warnings, weakref, collections.abc
  File "/usr/lib/python3.14/traceback.py", line 8, in <module>
    import warnings
  File "/usr/lib/python3.14/warnings.py", line 15, in <module>
    from _py_warnings import (
ModuleNotFoundError: No module named '_py_warnings')
...
RESULTS - gi.GObjectIntrospectionTest.test_python: FAILED (0.67s)

https://autobuilder.yoctoproject.org/valkyrie/#/builders/20/builds/2793
https://autobuilder.yoctoproject.org/valkyrie/#/builders/9/builds/2804
https://autobuilder.yoctoproject.org/valkyrie/#/builders/95/builds/2785

And another one here:

Traceback (most recent call last):
  File "/srv/pokybuild/yocto-worker/qemuarmv5/build/layers/openembedded-core/meta/lib/oeqa/sdk/cases/maturin.py", line 30, in test_maturin_list_python
    self.assertIn(expected, output)
AssertionError: '3.14 at /srv/pokybuild/yocto-worker/qemuarmv5/build/build/tmp/work/qemuarmv5-poky-linux-gnueabi/core-image-sato/1.0/testsdkext/buildtools/sysroots/x86_64-pokysdk-linux/usr/bin/python3' not found in '