Skip to content

cpython: 3.13.12 -> 3.13.13; 3.14.3 -> 3.14.4; 3.15.0a7 -> 3.15.0a8#508075

Merged
mweinelt merged 10 commits into
NixOS:stagingfrom
mweinelt:python-3.13.13_3.14.4
Apr 12, 2026
Merged

cpython: 3.13.12 -> 3.13.13; 3.14.3 -> 3.14.4; 3.15.0a7 -> 3.15.0a8#508075
mweinelt merged 10 commits into
NixOS:stagingfrom
mweinelt:python-3.13.13_3.14.4

Conversation

@mweinelt
Copy link
Copy Markdown
Member

@mweinelt mweinelt commented Apr 8, 2026

https://docs.python.org/release/3.13.13/whatsnew/changelog.html
https://docs.python.org/release/3.14.4/whatsnew/changelog.html
https://docs.python.org/3.15/whatsnew/changelog.html#python-3-15-0-alpha-8

Fixes: CVE-2026-4224, CVE-2026-3644, CVE-2026-2297

Things done

  • Built on platform:
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • Tested, as applicable:
  • Ran nixpkgs-review on this PR. See nixpkgs-review usage.
  • Tested basic functionality of all binary files, usually in ./result/bin/.
  • Nixpkgs Release Notes
    • Package update: when the change is major or breaking.
  • NixOS Release Notes
    • Module addition: when adding a new NixOS module.
    • Module update: when the change is significant.
  • Fits CONTRIBUTING.md, pkgs/README.md, maintainers/README.md and other READMEs.

@mweinelt mweinelt added 1.severity: security Issues which raise a security issue, or PRs that fix one backport staging-25.11 Backport PR automatically labels Apr 8, 2026
@nixpkgs-ci nixpkgs-ci Bot requested a review from natsukium April 8, 2026 21:46
@nixpkgs-ci nixpkgs-ci Bot added 8.has: package (update) This PR updates a package to a newer version 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-linux-stdenv This PR causes stdenv to rebuild on Linux and must target a staging branch. 10.rebuild-darwin-stdenv This PR causes stdenv to rebuild on Darwin and must target a staging branch. 11.by: package-maintainer This PR was created by a maintainer of all the package it changes. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. 6.topic: python Python is a high-level, general-purpose programming language. labels Apr 8, 2026
Copy link
Copy Markdown
Member

@thunze thunze left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Diff LGTM
  • Verified that all of python31{3,4,5} build on x86_64-linux
  • Verified basic functionality of the REPLs of all of the above interpreters on x86_64-linux

A screenshot of the new 3.15 fancycompleter:

Image

tkinter is failing transitively due to a mypy test failing:

=================================== FAILURES ===================================
___________________ testAllBase64Features_librt_experimental ___________________
[gw9] linux -- Python 3.13.13 /nix/store/xdj4p7g382ynxgimglm09ghh0p5m9mn4-python3-3.13.13/bin/python3.13
data: /build/source/mypyc/test-data/run-base64.test:1:
Failed: Invalid output (/build/source/mypyc/test-data/run-base64.test, line 1)
----------------------------- Captured stdout call -----------------------------

*** Exit status: 1
----------------------------- Captured stderr call -----------------------------

Generated files: /build/source/.mypyc_test_output (for first failure only)

Expected:
Actual:
  << test_decode_with_extra_data_after_padding >> (diff)
  Traceback (most recent call last): (diff)
    File "driver.py", line 57, in <module> (diff)
      raise failures[-1][1][1] (diff)
    File "driver.py", line 28, in <module> (diff)
      test_func() (diff)
      ~~~~~~~~~^^ (diff)
    File "run-base64.test", line 139, in test_decode_with_extra_data_after_padding (diff)
      check_decode(b"eA==x", encoded=True) (diff)
    File "run-base64.test", line 63, in check_decode (diff)
      assert b64decode(enc) == getattr(base64, "b64decode")(enc) (diff)
    File "/nix/store/xdj4p7g382ynxgimglm09ghh0p5m9mn4-python3-3.13.13/lib/python3.13/base64.py", line 88, in b64decode (diff)
      return binascii.a2b_base64(s, strict_mode=validate) (diff)
             ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ (diff)
  binascii.Error: Incorrect padding (diff)

Update the test output using --update-data (implies -n0; you can additionally use the -k selector to update only specific tests)
------------------------------ Captured log call -------------------------------
[...]
=========================== short test summary info ============================
FAILED mypyc/test/test_run.py::TestRun::run-base64.test::testAllBase64Features_librt_experimental - data: /build/source/mypyc/test-data/run-base64.test:1:
===== 1 failed, 12820 passed, 362 skipped, 13 xfailed in 95.63s (0:01:35) ======

Looks like python/mypy#21120, upstream is skipping parts of this test for now. But nothing we couldn't fix on staging, as done in the past for similar failures (see e.g. #486806). I'll propose a fix later today when I have more time if this doesn't get picked up by then.

@thunze
Copy link
Copy Markdown
Member

thunze commented Apr 9, 2026

@mweinelt mweinelt force-pushed the python-3.13.13_3.14.4 branch from a1ccdd4 to b470ee3 Compare April 9, 2026 23:22
@nixpkgs-ci nixpkgs-ci Bot requested review from LnL7 and fabaff April 9, 2026 23:32
@nixpkgs-ci nixpkgs-ci Bot removed the 11.by: package-maintainer This PR was created by a maintainer of all the package it changes. label Apr 9, 2026
@mweinelt mweinelt force-pushed the python-3.13.13_3.14.4 branch 3 times, most recently from f4df0e9 to 05d3491 Compare April 10, 2026 08:44
mweinelt and others added 3 commits April 10, 2026 10:44
[1] was finally backported to CPython 3.14 in [2], which landed in
CPython 3.14.4, causing the build of `python314Packages.exceptiongroup`
to fail.

In the meantime, exceptiongroup fixed `BaseExceptionGroup.__repr__` on
their end to match CPython behavior [3], so we can use that patch
instead.

[1] python/cpython#141736
[2] python/cpython#144445
[3] agronholm/exceptiongroup#155
@mweinelt mweinelt removed the backport staging-25.11 Backport PR automatically label Apr 10, 2026
@mweinelt
Copy link
Copy Markdown
Member Author

Darwin is blocked on libarchive, nothing I can do here.

@mweinelt mweinelt added this pull request to the merge queue Apr 12, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Apr 12, 2026
@mweinelt mweinelt added this pull request to the merge queue Apr 12, 2026
Merged via the queue into NixOS:staging with commit f67c0fd Apr 12, 2026
29 of 31 checks passed
@mweinelt mweinelt deleted the python-3.13.13_3.14.4 branch April 12, 2026 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1.severity: security Issues which raise a security issue, or PRs that fix one 6.topic: python Python is a high-level, general-purpose programming language. 8.has: package (update) This PR updates a package to a newer version 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-darwin-stdenv This PR causes stdenv to rebuild on Darwin and must target a staging branch. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. 10.rebuild-linux-stdenv This PR causes stdenv to rebuild on Linux and must target a staging branch. 12.approvals: 1 This PR was reviewed and approved by one person.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants