Commit graph

938 commits

Author SHA1 Message Date
Karolina Surma
faeed1b6c7 Extend the expat requirement to differentiate between 32 and 64 arches
(cherry picked from python3.15 commit a5ca170d3f1e6e19f5df66f21482c2b10593af42)
2026-01-13 16:28:34 +01:00
Karolina Surma
1b3b52c264 Require at least the same expat version as used during the build
In the past we have had a versioned requirement on expat, e.g.:
https://src.fedoraproject.org/rpms/python3.13/c/c686992b6c25a39d0e4117053ddb669fd5998723
The explanation is still valid: if Python is built with an expat version
with new symbols, and used with an installed older expat, it won't work,
preventing crating new venvs, and many more.
This has happened again now with expat 2.7.2 introducing new symbols.

Reintroduce the versioned requirement and make it future-proof - the
generated version will always match at least the one present in the buildroot
during the Python build.
2026-01-07 12:27:50 +01:00
Miro Hrončok
98ab1346cf Update to 3.13.11 2025-12-05 22:38:46 +01:00
Tomáš Hrnčiar
efb1f534c5 Update to 3.13.10 2025-12-03 10:30:59 +01:00
Miro Hrončok
f17c52832b Inject SBOM into the installed wheels (when using the bundled ones) 2025-10-15 11:58:34 +00:00
Karolina Surma
1f3785e703 trace is officially licensed as HPND-SMC
https://gitlab.com/fedora/legal/fedora-license-data/-/issues/657#note_2815942473
2025-10-15 11:53:43 +00:00
Miro Hrončok
edb5d53104 Update to Python 3.13.9 2025-10-14 23:40:57 +02:00
Karolina Surma
a362f2a9e1 Update to Python 3.13.8 2025-10-07 19:33:22 +02:00
Karolina Surma
3643baab9a Include licenses of incorporated software (rhbz#2133426)
Python includes a lot of differently licensed functions and  modules.
We gather the list from https://docs.python.org/3.13/license.html.

Detect changes to Doc/license.rst with file hash automatically in %prep.
2025-09-26 12:54:13 +02:00
Lumir Balhar
66c0a64ef8 rpminspect: Wrap strings with globs with single quotes
It seems to be required since rpminspect 2.0:
1593c38ce4
2025-08-26 13:24:41 +02:00
Miro Hrončok
666e5f924e Update to 3.13.7 2025-08-14 23:01:00 +02:00
Tomáš Hrnčiar
0f632505c6 Update to 3.13.6 2025-08-07 10:01:11 +02:00
Lukáš Zachar
2c3a2e93e2 Drop STI and use tmt instead
Resolves: rhbz#2383059
2025-08-04 17:50:06 +02:00
Miro Hrončok
7042c32c98 Fix CVE-2025-8194: Tarfile infinite loop during parsing with negative member offset 2025-07-28 22:30:40 +02:00
Fedora Release Engineering
fc659cc8a2 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 11:19:24 +00:00
Miro Hrončok
aef12e770a Disable JIT on RHEL
For now on, until we figure out a way of building the JIT with pre-built stencils,
we disable the JIT on RHEL to avoid a dependency on a specific LLVM+clang version.

https://discuss.python.org/t/building-the-jit-with-pre-built-stencils/91838
https://src.fedoraproject.org/rpms/python3.14/pull-request/40
https://github.com/fedora-eln/eln/issues/207

----------

This was cherry-picked from https://src.fedoraproject.org/rpms/python3.14/c/ef2d703504cf0039fe5dc82e21e20053cc827c10
for https://github.com/fedora-eln/eln/issues/258#issuecomment-3085727051

With one difference: We build this package on EPEL and we have clang18 there.
2025-07-20 23:38:48 +02:00
Karolina Surma
1331394c24 Lower the minimal required autoconf version for EPEL 9 build 2025-06-25 16:33:29 +02:00
Karolina Surma
f31a75016f Switch the basic conditionals based on the bootstrap's value
We always switch rpmswheels, optimizations and tests when bootstrapping
new Python version, so they can be tied to the bootstrap conditional.
With that, switching the bootstrap in Koji side tag will be possible,
letting us to avoid separate "bootstrap" and "rebuild" commits.
2025-06-25 16:33:29 +02:00
Karolina Surma
1a07ebce6b Move the bootstrapping conditionals above the global metadata
We need to have it above the Release field, in order for the build NVR
to contain the ~bootstrap suffix and sort correctly (lower than the main
build).

This enables bootstrapping the package directly in Koji side tag.
2025-06-25 11:53:04 +02:00
Karolina Surma
a7e6af421e Downstream patch: Skip tests not working with older expat version
This will ensure the tests run in Fedoras and EPEL 10, but are skipped
for EPEL 9.
2025-06-25 09:46:57 +02:00
Karolina Surma
c6f6c7c522 Define %python3_pkgversion based on the Python's status
Main Python should retain the value '3', non-main the major-minor one.
We need that to request the correctly versioned wheels for EPEL builds.
2025-06-24 12:58:07 +02:00
Karolina Surma
8df7c5a736 Remove the upper version bound from expat library
It's already greater than 2.6 in all Fedoras.
2025-06-24 11:22:52 +02:00
Miro Hrončok
17339454ef Verify bundled() provides for setuptools.whl 2025-05-13 17:29:44 +00:00
Miro Hrončok
ae868353c3 Update to 3.13.5 2025-06-12 12:10:14 +02:00
Charalampos Stratakis
2eee834815 Enable PAC and BTI hardware protections for aarch64 2025-06-12 02:49:36 +02:00
Miro Hrončok
d1bf28e630 Revert "Add perf to the testing BuildRequires"
This reverts commit 2198fa7927.

The test fails for 3.13.4.
2025-06-05 11:40:47 +02:00
Tomáš Hrnčiar
b13a982a62 Update to 3.13.4 2025-06-04 13:42:18 +02:00
Python Maint
093e433f0c Rebuilt as non-main Python on Fedora 43 2025-06-02 14:02:26 +02:00
Charalampos Stratakis
2198fa7927 Add perf to the testing BuildRequires
Perf profiling showing the Python functions is only
supported on x86_64 and aarch64 at the moment.

Adding perf as a BuildRequires allows tests that utilize the
perf binary to run.
2025-05-12 18:41:11 +02:00
Miro Hrončok
5336a4f623 Drop requirement on python-wheel-wheel with setuptools >= 71 2025-05-06 19:12:54 +02:00
Charalampos Stratakis
d3f76dd9d5 Apply Intel's CET for mitigation against control-flow hijacking attacks 2025-04-23 16:16:36 +02:00
Tomáš Hrnčiar
8dd054a595 Regenerate patches with updated importpatches script 2025-04-17 12:17:38 +02:00
Tomáš Hrnčiar
ee3b609ce7 Update to 3.13.3 2025-04-10 15:17:59 +02:00
Miro Hrončok
94a1f56279 Rebuilt with mpdecimal 4.0.0 2025-02-06 12:04:28 +01:00
Charalampos Stratakis
4f7875132e Update to 3.13.2
Security fix for CVE-2025-0938

Fixes: rhbz#2343274
2025-02-04 22:44:24 +01:00
Miro Hrončok
fd1e3b0098 Changelog typo 2025-02-03 18:30:24 +01:00
Miro Hrončok
ef73f1e89c On Fedora 41 or older, statically build the _datetime module into libpython
- This fixes a segfault when importng it from Python 3.13.0 updated to 3.13.1+ while running
- Fixes: rhbz#2333852
2025-01-29 21:31:44 +01:00
Miro Hrončok
63816a4d7a Ensure this package is built with Tk 8
- Fixes: rhbz#2337760
2025-01-29 21:29:07 +01:00
Charalampos Stratakis
d6e1ac20e8 Remove redundant --with-system-ffi configure option
The option has been removed since Python 3.12

See: 25590eb5de
2025-01-23 02:04:14 +01:00
Fedora Release Engineering
027f189877 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-18 21:09:02 +00:00
Miro Hrončok
00aa424d30 Security fix for CVE-2024-12254
- Fixes: rhbz#2330927
2024-12-09 14:59:04 +01:00
Miro Hrončok
f84c0fe12f Optimize patch 251 a tiny bit
Before:

    $ python3.14 -m timeit -s 'import sysconfig' 'sysconfig.get_paths()'
    2000 loops, best of 5: 157 usec per loop

    $ python3.14 -m timeit -s 'import sysconfig' 'sysconfig.get_paths()'
    2000 loops, best of 5: 162 usec per loop

    $ python3.14 -m timeit -s 'import sysconfig' 'sysconfig.get_paths()'
    1000 loops, best of 5: 146 usec per loop

After:

    $ python3.14 -m timeit -s 'import sysconfig' 'sysconfig.get_paths()'
    5000 loops, best of 5: 75.9 usec per loop

    $ python3.14 -m timeit -s 'import sysconfig' 'sysconfig.get_paths()'
    5000 loops, best of 5: 77.1 usec per loop

    $ python3.14 -m timeit -s 'import sysconfig' 'sysconfig.get_paths()'
    5000 loops, best of 5: 76.2 usec per loop

The results are inconclusive on 3.13,
but we want the patch to be identical (if possible).

This can be shipped with the next update.
2024-12-05 11:57:53 +01:00
Charalampos Stratakis
ae3b33f266 Update to 3.13.1
Security fix for CVE-2024-9287

Fixes: rhbz#2321657
2024-12-04 14:31:57 +01:00
U2FsdGVkX1
a5d0a1835e Increase the timeout for riscv64 because the current RISC-V CPU has slower performance. 2024-11-13 20:17:42 +08:00
Miro Hrončok
461d9adf9e Turn valgrind bcond into in-place %ifarch
There's no way to turn this bcond off on arches where it is not supported.
There's no need to turn this bcond on on arches where it is supported.
2024-10-15 18:19:14 +02:00
Miro Hrončok
90ea69d66a Remove rarely used bconds
I have not used those in ~12 years.
2024-10-15 18:18:17 +02:00
Miro Hrončok
7fc2da03e5 Use new-style RPM bconds 2024-10-15 18:16:31 +02:00
Miro Hrončok
a8ce422a93 CI: Explicitly lists flags to be checked for -O3/-O0
Not listing the flags skips the ones without -O.
This way, we no longer assert -O3/-O2 is the only -O flag,
but we also assert it is actually set.
2024-10-14 12:00:50 +02:00
Karolina Surma
f443f05bcf Skip test_signal and test_deadlock on ppc64le 2024-10-08 12:11:07 +02:00
Karolina Surma
1299ef8725 Update to Python 3.13.0 2024-10-08 09:39:13 +02:00