The package rpms/python3.13.git has added or updated architecture specific content in its spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s): https://src.fedoraproject.org/cgit/rpms/python3.13.git/commit/?id=d1bf28e630....
Change: -%ifarch x86_64 aarch64
Thanks.
Full change: ============
commit d1bf28e630a3b03e56030c61515392faa3a85d56 Author: Miro Hrončok miro@hroncok.cz Date: Thu Jun 5 11:40:47 2025 +0200
Revert "Add perf to the testing BuildRequires"
This reverts commit 2198fa7927a99f739600915e909b2dfa50919285.
The test fails for 3.13.4.
diff --git a/python3.13.spec b/python3.13.spec index 53262a4..220f1e2 100644 --- a/python3.13.spec +++ b/python3.13.spec @@ -282,11 +282,6 @@ BuildRequires: gcc-c++ BuildRequires: gdb BuildRequires: glibc-all-langpacks BuildRequires: tzdata - -# Perf support is only available on x86_64 and aarch64 right now -%ifarch x86_64 aarch64 -BuildRequires: perf -%endif %endif
%if %{with jit} diff --git a/tests/tests.yml b/tests/tests.yml index 32fbb39..8a4ba6b 100644 --- a/tests/tests.yml +++ b/tests/tests.yml @@ -65,4 +65,3 @@ - glibc-all-langpacks # for locale tests - marshalparser # for testing compatibility (magic numbers) with marshalparser - rpm # for debugging - - perf # for test_perf_profiler
commit b13a982a6263b25c13a83310551e6d13467e5f20 Author: Tomáš Hrnčiar thrnciar@redhat.com Date: Wed Jun 4 08:47:43 2025 +0200
Update to 3.13.4
diff --git a/00251-change-user-install-location.patch b/00251-change-user-install-location.patch index 2d2b66e..a4a78b6 100644 --- a/00251-change-user-install-location.patch +++ b/00251-change-user-install-location.patch @@ -30,10 +30,10 @@ Co-authored-by: Lumír Balhar frenzy.madness@gmail.com 3 files changed, 72 insertions(+), 4 deletions(-)
diff --git a/Lib/site.py b/Lib/site.py -index 89a81c55cb..950e2e337f 100644 +index aedf36399c..2ae49a8029 100644 --- a/Lib/site.py +++ b/Lib/site.py -@@ -414,8 +414,15 @@ def getsitepackages(prefixes=None): +@@ -415,8 +415,15 @@ def getsitepackages(prefixes=None): return sitepackages
def addsitepackages(known_paths, prefixes=None): diff --git a/00454-invoke-regen-token-rst-with-rstfile-as-an-argument.patch b/00454-invoke-regen-token-rst-with-rstfile-as-an-argument.patch deleted file mode 100644 index 228a03a..0000000 --- a/00454-invoke-regen-token-rst-with-rstfile-as-an-argument.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Karolina Surma ksurma@redhat.com -Date: Wed, 9 Apr 2025 10:47:48 +0200 -Subject: 00454: Invoke regen-token rst with rstfile as an argument - -Proposed upstream: https://github.com/python/cpython/pull/132304 ---- - Makefile.pre.in | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/Makefile.pre.in b/Makefile.pre.in -index 3bd4495f95..d7a4e4b320 100644 ---- a/Makefile.pre.in -+++ b/Makefile.pre.in -@@ -1784,7 +1784,8 @@ regen-token: - # using Tools/build/generate_token.py - $(PYTHON_FOR_REGEN) $(srcdir)/Tools/build/generate_token.py rst \ - $(srcdir)/Grammar/Tokens \ -- $(srcdir)/Doc/library/token-list.inc -+ $(srcdir)/Doc/library/token-list.inc \ -+ $(srcdir)/Doc/library/token.rst - # Regenerate Include/internal/pycore_token.h from Grammar/Tokens - # using Tools/build/generate_token.py - $(PYTHON_FOR_REGEN) $(srcdir)/Tools/build/generate_token.py h \ diff --git a/00456-find-the-correct-group-name-in-test_group_no_follow_symlinks.patch b/00456-find-the-correct-group-name-in-test_group_no_follow_symlinks.patch deleted file mode 100644 index 0627f0f..0000000 --- a/00456-find-the-correct-group-name-in-test_group_no_follow_symlinks.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Karolina Surma ksurma@redhat.com -Date: Thu, 10 Apr 2025 15:11:41 +0200 -Subject: 00456: Find the correct group name in test_group_no_follow_symlinks - -Proposed upstream: https://github.com/python/cpython/pull/132357 ---- - Lib/test/test_pathlib/test_pathlib.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Lib/test/test_pathlib/test_pathlib.py b/Lib/test/test_pathlib/test_pathlib.py -index 1f01ce40da..2b9aad1426 100644 ---- a/Lib/test/test_pathlib/test_pathlib.py -+++ b/Lib/test/test_pathlib/test_pathlib.py -@@ -781,7 +781,7 @@ def test_group_no_follow_symlinks(self): - os.chown(link, -1, gid_2, follow_symlinks=False) - - expected_gid = link.stat(follow_symlinks=False).st_gid -- expected_name = self._get_pw_name_or_skip_test(expected_gid) -+ expected_name = self._get_gr_name_or_skip_test(expected_gid) - - self.assertEqual(expected_gid, gid_2) - self.assertEqual(expected_name, link.group(follow_symlinks=False)) diff --git a/00459-apply-intel-control-flow-technology-for-x86-64.patch b/00459-apply-intel-control-flow-technology-for-x86-64.patch deleted file mode 100644 index 98d5eee..0000000 --- a/00459-apply-intel-control-flow-technology-for-x86-64.patch +++ /dev/null @@ -1,68 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Charalampos Stratakis cstratak@redhat.com -Date: Wed, 8 Jan 2025 04:58:22 +0100 -Subject: 00459: Apply Intel Control-flow Technology for x86-64 - -Required for mitigation against return-oriented programming (ROP) and Call or Jump Oriented Programming (COP/JOP) attacks - -Proposed upstream: https://github.com/python/cpython/pull/128606 - -See also: https://sourceware.org/annobin/annobin.html/Test-cf-protection.html ---- - Python/asm_trampoline.S | 22 ++++++++++++++++++++++ - Python/perf_jit_trampoline.c | 4 ++++ - 2 files changed, 26 insertions(+) - -diff --git a/Python/asm_trampoline.S b/Python/asm_trampoline.S -index 0a3265dfee..616752459b 100644 ---- a/Python/asm_trampoline.S -+++ b/Python/asm_trampoline.S -@@ -9,6 +9,9 @@ - # } - _Py_trampoline_func_start: - #ifdef __x86_64__ -+#if defined(__CET__) && (__CET__ & 1) -+ endbr64 -+#endif - sub $8, %rsp - call *%rcx - add $8, %rsp -@@ -34,3 +37,22 @@ _Py_trampoline_func_start: - .globl _Py_trampoline_func_end - _Py_trampoline_func_end: - .section .note.GNU-stack,"",@progbits -+# Note for indicating the assembly code supports CET -+#if defined(__x86_64__) && defined(__CET__) && (__CET__ & 1) -+ .section .note.gnu.property,"a" -+ .align 8 -+ .long 1f - 0f -+ .long 4f - 1f -+ .long 5 -+0: -+ .string "GNU" -+1: -+ .align 8 -+ .long 0xc0000002 -+ .long 3f - 2f -+2: -+ .long 0x3 -+3: -+ .align 8 -+4: -+#endif // __x86_64__ -diff --git a/Python/perf_jit_trampoline.c b/Python/perf_jit_trampoline.c -index 0a8945958b..e9cc7758ba 100644 ---- a/Python/perf_jit_trampoline.c -+++ b/Python/perf_jit_trampoline.c -@@ -472,7 +472,11 @@ elf_init_ehframe(ELFObjectContext* ctx) - DWRF_U8(0); /* Augmentation data. */ - /* Registers saved in CFRAME. */ - #ifdef __x86_64__ -+# if defined(__CET__) && (__CET__ & 1) -+ DWRF_U8(DWRF_CFA_advance_loc | 8); -+# else - DWRF_U8(DWRF_CFA_advance_loc | 4); -+# endif - DWRF_U8(DWRF_CFA_def_cfa_offset); DWRF_UV(16); - DWRF_U8(DWRF_CFA_advance_loc | 6); - DWRF_U8(DWRF_CFA_def_cfa_offset); DWRF_UV(8); diff --git a/00460-gh-132415-update-vendored-setuptools-in-lib-test-wheeldata.patch b/00460-gh-132415-update-vendored-setuptools-in-lib-test-wheeldata.patch index b77c644..3553fb3 100644 --- a/00460-gh-132415-update-vendored-setuptools-in-lib-test-wheeldata.patch +++ b/00460-gh-132415-update-vendored-setuptools-in-lib-test-wheeldata.patch @@ -16,15 +16,14 @@ Co-Authored-By: Victor Stinner vstinner@python.org Lib/test/support/__init__.py | 14 +++++++------- Lib/test/test_cext/__init__.py | 2 +- Lib/test/test_cppext/__init__.py | 2 +- - Lib/test/test_cppext/setup.py | 1 + Lib/test/test_peg_generator/test_c_parser.py | 2 +- - 5 files changed, 11 insertions(+), 10 deletions(-) + 4 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py -index 78cf4b3ca8..bd8860b696 100644 +index f4cc51a918..6350d7c0a9 100644 --- a/Lib/test/support/__init__.py +++ b/Lib/test/support/__init__.py -@@ -2360,7 +2360,7 @@ def _findwheel(pkgname): +@@ -2361,7 +2361,7 @@ def _findwheel(pkgname): filenames = os.listdir(wheel_dir) filenames = sorted(filenames, reverse=True) # approximate "newest" first for filename in filenames: @@ -33,7 +32,7 @@ index 78cf4b3ca8..bd8860b696 100644 if not filename.endswith(".whl"): continue prefix = pkgname + '-' -@@ -2369,16 +2369,16 @@ def _findwheel(pkgname): +@@ -2370,16 +2370,16 @@ def _findwheel(pkgname): raise FileNotFoundError(f"No wheel for {pkgname} found in {wheel_dir}")
@@ -54,7 +53,7 @@ index 78cf4b3ca8..bd8860b696 100644 print() print('Run:', ' '.join(map(shlex.quote, cmd))) subprocess.run(cmd, check=True) -@@ -2402,10 +2402,10 @@ def run_command(cmd): +@@ -2403,10 +2403,10 @@ def run_command(cmd): else: python = os.path.join(venv, 'bin', python_exe)
@@ -93,18 +92,6 @@ index d519522730..e7130f6fc6 100644 self._check_build(extension_name, python_exe, std=std, limited=limited)
-diff --git a/Lib/test/test_cppext/setup.py b/Lib/test/test_cppext/setup.py -index 019ff18446..25d71cd9a2 100644 ---- a/Lib/test/test_cppext/setup.py -+++ b/Lib/test/test_cppext/setup.py -@@ -3,6 +3,7 @@ - import os - import platform - import shlex -+import sys - import sysconfig - from test import support - diff --git a/Lib/test/test_peg_generator/test_c_parser.py b/Lib/test/test_peg_generator/test_c_parser.py index 1411e55dd0..1095e7303c 100644 --- a/Lib/test/test_peg_generator/test_c_parser.py diff --git a/00461-downstream-only-install-wheel-in-test-venvs-when-setuptools-71.patch b/00461-downstream-only-install-wheel-in-test-venvs-when-setuptools-71.patch index d617a6f..b1d2620 100644 --- a/00461-downstream-only-install-wheel-in-test-venvs-when-setuptools-71.patch +++ b/00461-downstream-only-install-wheel-in-test-venvs-when-setuptools-71.patch @@ -9,10 +9,10 @@ Subject: 00461: Downstream only: Install wheel in test venvs when setuptools < 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py -index bd8860b696..785ca4c3d5 100644 +index 6350d7c0a9..64b3a8300e 100644 --- a/Lib/test/support/__init__.py +++ b/Lib/test/support/__init__.py -@@ -2402,9 +2402,16 @@ def run_command(cmd): +@@ -2403,9 +2403,16 @@ def run_command(cmd): else: python = os.path.join(venv, 'bin', python_exe)
diff --git a/python3.13.spec b/python3.13.spec index b18040d..53262a4 100644 --- a/python3.13.spec +++ b/python3.13.spec @@ -13,11 +13,11 @@ URL: https://www.python.org/
# WARNING When rebasing to a new Python version, # remember to update the python3-docs package as well -%global general_version %{pybasever}.3 +%global general_version %{pybasever}.4 #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 4%{?dist} +Release: 1%{?dist} License: Python-2.0.1
@@ -57,30 +57,32 @@ License: Python-2.0.1 # This needs to be manually updated when we update Python. # Explore the sources tarball (you need the version before %%prep is executed): # $ tar -tf Python-%%{upstream_version}.tar.xz | grep whl -%global pip_version 25.0.1 +%global pip_version 25.1.1 %global setuptools_version 67.6.1 %global wheel_version 0.43.0 # All of those also include a list of indirect bundled libs: # pip # $ %%{_rpmconfigdir}/pythonbundles.py <(unzip -p Lib/ensurepip/_bundled/pip-*.whl pip/_vendor/vendor.txt) %global pip_bundled_provides %{expand: -Provides: bundled(python3dist(cachecontrol)) = 0.14.1 -Provides: bundled(python3dist(certifi)) = 2024.8.30 +Provides: bundled(python3dist(cachecontrol)) = 0.14.2 +Provides: bundled(python3dist(certifi)) = 2025.1.31 +Provides: bundled(python3dist(dependency-groups)) = 1.3.1 Provides: bundled(python3dist(distlib)) = 0.3.9 Provides: bundled(python3dist(distro)) = 1.9 Provides: bundled(python3dist(idna)) = 3.10 Provides: bundled(python3dist(msgpack)) = 1.1 -Provides: bundled(python3dist(packaging)) = 24.2 -Provides: bundled(python3dist(platformdirs)) = 4.3.6 -Provides: bundled(python3dist(pygments)) = 2.18 +Provides: bundled(python3dist(packaging)) = 25 +Provides: bundled(python3dist(platformdirs)) = 4.3.7 +Provides: bundled(python3dist(pygments)) = 2.19.1 Provides: bundled(python3dist(pyproject-hooks)) = 1.2 Provides: bundled(python3dist(requests)) = 2.32.3 -Provides: bundled(python3dist(resolvelib)) = 1.0.1 -Provides: bundled(python3dist(rich)) = 13.9.4 +Provides: bundled(python3dist(resolvelib)) = 1.1 +Provides: bundled(python3dist(rich)) = 14 Provides: bundled(python3dist(setuptools)) = 70.3 Provides: bundled(python3dist(tomli)) = 2.2.1 -Provides: bundled(python3dist(truststore)) = 0.10 -Provides: bundled(python3dist(typing-extensions)) = 4.12.2 +Provides: bundled(python3dist(tomli-w)) = 1.2 +Provides: bundled(python3dist(truststore)) = 0.10.1 +Provides: bundled(python3dist(typing-extensions)) = 4.13.2 Provides: bundled(python3dist(urllib3)) = 1.26.20 } # setuptools @@ -363,29 +365,7 @@ Source11: idle3.appdata.xml # pypa/distutils integration: https://github.com/pypa/distutils/pull/70 Patch251: 00251-change-user-install-location.patch
-# 00454 # 1d5d7e9ce724fbbd89645d637303d12731c2a622 -# Invoke regen-token rst with rstfile as an argument -# -# Proposed upstream: https://github.com/python/cpython/pull/132304 -Patch454: 00454-invoke-regen-token-rst-with-rstfile-as-an-argument.patch - -# 00456 # 8f50cf7170e39c02d52cb5f99d647eeefad2f685 -# Find the correct group name in test_group_no_follow_symlinks -# -# Proposed upstream: https://github.com/python/cpython/pull/132357 -Patch456: 00456-find-the-correct-group-name-in-test_group_no_follow_symlinks.patch - -# 00459 # 9cf6fed17de184d2e17ace2b5063e782e7e186ba -# Apply Intel Control-flow Technology for x86-64 -# -# Required for mitigation against return-oriented programming (ROP) and Call or Jump Oriented Programming (COP/JOP) attacks -# -# Proposed upstream: https://github.com/python/cpython/pull/128606 -# -# See also: https://sourceware.org/annobin/annobin.html/Test-cf-protection.html -Patch459: 00459-apply-intel-control-flow-technology-for-x86-64.patch - -# 00460 # f876c748b89770cfee4148c3dd3acbc3dd527eb6 +# 00460 # c0bff2b6359f503d3fc72bdba9f07a25519a4cdd # gh-132415: Update vendored setuptools in ``Lib/test/wheeldata`` # # (actual changes in .whl files removed to make this patch smaller) @@ -1750,6 +1730,9 @@ CheckPython freethreading # ======================================================
%changelog +* Wed Jun 04 2025 Tomáš Hrnčiar thrnciar@redhat.com - 3.13.4-1 +- Update to 3.13.4 + * Mon Jun 02 2025 Python Maint python-maint@redhat.com - 3.13.3-4 - Rebuilt as non-main Python on Fedora 43
diff --git a/sources b/sources index f101eff..4d0dbd1 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (Python-3.13.3.tar.xz) = f7559b6dceae69f48742af0a6497fbec42cd1e5304f64b6eb9d89222a1171ccf12fa186cc0decabb4e98d05223184967a4a7537754c01083dacdc9073cb1a578 -SHA512 (Python-3.13.3.tar.xz.asc) = 54f8da5f4a4dcadc9830cb07aecf695a26a2de48ab98e1f42b09fdde1c70989476d07ce7ea81337216f1e5fcbf6b688e0608c88a2545ced416b01640108e94db +SHA512 (Python-3.13.4.tar.xz) = 91454bb4d04c192721d2df980a806858bd8aadb5cef92159c2844cc33e92b0386b1b33d5cfff0f69d449e9f978a5f67f6032155f7b1425ff38e36477637c0c68 +SHA512 (Python-3.13.4.tar.xz.asc) = ba9c1dee0f3bf564e6ac19cbe08cf4fdc3779a04ed8289654f6dda3fba9f07a0937764a12f1e7e2f6d7ff17bb5b86c05b8ea19296a2b98d1c81a48362ccf6104
commit 093e433f0c24c41d1e0529633b3f9035cb2b3ea4 Author: Python Maint python-maint@redhat.com Date: Mon Jun 2 14:02:26 2025 +0200
Rebuilt as non-main Python on Fedora 43
diff --git a/python3.13.spec b/python3.13.spec index dac363e..b18040d 100644 --- a/python3.13.spec +++ b/python3.13.spec @@ -17,7 +17,7 @@ URL: https://www.python.org/ #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 3%{?dist} +Release: 4%{?dist} License: Python-2.0.1
@@ -1750,6 +1750,9 @@ CheckPython freethreading # ======================================================
%changelog +* Mon Jun 02 2025 Python Maint python-maint@redhat.com - 3.13.3-4 +- Rebuilt as non-main Python on Fedora 43 + * Tue May 06 2025 Miro Hrončok mhroncok@redhat.com - 3.13.3-3 - Drop requirement on python-wheel-wheel with setuptools >= 71