From 1fe7cf75b718ef5807c28be0072dc30c2eed213c Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Thu, 9 Apr 2026 21:29:22 +0200 Subject: [PATCH] python3Packages.exceptiongroup: update repr patch after 3.14 backport [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] https://github.com/python/cpython/pull/141736 [2] https://github.com/python/cpython/pull/144445 [3] https://github.com/agronholm/exceptiongroup/pull/155 --- .../python-modules/exceptiongroup/default.nix | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/pkgs/development/python-modules/exceptiongroup/default.nix b/pkgs/development/python-modules/exceptiongroup/default.nix index d55affdc2484a..1a267eeb6b780 100644 --- a/pkgs/development/python-modules/exceptiongroup/default.nix +++ b/pkgs/development/python-modules/exceptiongroup/default.nix @@ -2,11 +2,11 @@ lib, buildPythonPackage, fetchFromGitHub, + fetchpatch, flit-scm, pytestCheckHook, pythonAtLeast, pythonOlder, - isPy313, typing-extensions, }: @@ -22,14 +22,19 @@ buildPythonPackage rec { hash = "sha256-3WInufN+Pp6vB/Gik6e8V1a34Dr/oiH3wDMB+2lHRMM="; }; - # CPython fixed https://github.com/python/cpython/issues/141732 in - # https://github.com/python/cpython/pull/141736, but exceptiongroup 1.3.1, - # including its test suite, still matches the old repr behavior. - # The CPython fix has only been backported to 3.13 so far, where it was - # first included in version 3.13.12, so we only need to patch for 3.13 - # and 3.15+. - # Upstream issue: https://github.com/agronholm/exceptiongroup/issues/154 - patches = lib.optional (isPy313 || pythonAtLeast "3.15") ./match-repr-fix.patch; + patches = [ + # CPython fixed https://github.com/python/cpython/issues/141732 in + # https://github.com/python/cpython/pull/141736 (backported to Python 3.13+), + # but exceptiongroup 1.3.1, including its test suite, still matches the old + # repr behavior. + # Upstream issue: https://github.com/agronholm/exceptiongroup/issues/154 + # Upstream PR: https://github.com/agronholm/exceptiongroup/pull/155 + (fetchpatch { + name = "match-repr-fix.patch"; + url = "https://github.com/agronholm/exceptiongroup/commit/0c6cfbf677f6b50df17311cfdad01e9ff17310aa.patch"; + hash = "sha256-EeYu1/JKYRDwdq8+n38RrdogipNzX0ate1trDs1Z3c0="; + }) + ]; build-system = [ flit-scm ];