Commit graph

70 commits

Author SHA1 Message Date
Miro Hrončok
f5eb1e0bd1 Require expat >= 2.6 to prevent errors when creating venvs with older expat
The code in CPython uses XML_SetReparseDeferralEnabled when expat is >= 2.6 during the build.
However, when users upgrade Python independently on the expat package,
they may have expat 2.5 installed and see errors like:

    $ python3.1X -m venv venv
    Error: Command '['venv/bin/python3.1X', '-m', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.

    $ venv/bin/python3.1X -m ensurepip --upgrade --default-pip
    Traceback (most recent call last):
      ...
      File "/tmp/.../pip-24.0-py3-none-any.whl/pip/_internal/commands/install.py", line 15, in <module>
        from pip._internal.cli.req_command import (
        ...<3 lines>...
        )
      File "/tmp/.../pip-24.0-py3-none-any.whl/pip/_internal/cli/req_command.py", line 21, in <module>
        from pip._internal.index.package_finder import PackageFinder
      File "/tmp/.../pip-24.0-py3-none-any.whl/pip/_internal/index/package_finder.py", line 30, in <module>
        from pip._internal.req import InstallRequirement
      File "/tmp/.../pip-24.0-py3-none-any.whl/pip/_internal/req/__init__.py", line 8, in <module>
        from .req_install import InstallRequirement
      File "/tmp/.../pip-24.0-py3-none-any.whl/pip/_internal/req/req_install.py", line 40, in <module>
        from pip._internal.operations.install.wheel import install_wheel
      File "/tmp/.../pip-24.0-py3-none-any.whl/pip/_internal/operations/install/wheel.py", line 39, in <module>
        from pip._vendor.distlib.scripts import ScriptMaker
      File "/tmp/.../pip-24.0-py3-none-any.whl/pip/_vendor/distlib/scripts.py", line 16, in <module>
        from .compat import sysconfig, detect_encoding, ZipFile
      File "/tmp/.../pip-24.0-py3-none-any.whl/pip/_vendor/distlib/compat.py", line 81, in <module>
        import xmlrpc.client as xmlrpclib
      File "/usr/lib64/python3.1X/xmlrpc/client.py", line 138, in <module>
        from xml.parsers import expat
      File "/usr/lib64/python3.1X/xml/parsers/expat.py", line 4, in <module>
        from pyexpat import *
    ImportError: /usr/lib64/python3.1X/lib-dynload/pyexpat.cpython-31X-x86_64-linux-gnu.so: undefined symbol: XML_SetReparseDeferralEnabled
    Traceback (most recent call last):
      ...
    subprocess.CalledProcessError: Command '['venv/bin/python3.1X', '-W', 'ignore::DeprecationWarning', '-c', '\nimport runpy\nimport sys\nsys.path = [\'/tmp/.../pip-24.0-py3-none-any.whl\'] + sys.path\nsys.argv[1:] = [\'install\', \'--no-cache-dir\', \'--no-index\', \'--find-links\', \'/tmp/...\', \'--upgrade\', \'pip\']\nrunpy.run_module("pip", run_name="__main__", alter_sys=True)\n']' returned non-zero exit status 1.

Thanks to Markus Falb for discovering this problem.

https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org/thread/7XHGWHBQDNFKNGSZTP44SSD6PQKZPG6C/
2024-04-18 01:47:02 +02:00
Tomáš Hrnčiar
75e1fc6869 Update to 3.11.9 2024-04-09 13:59:56 +02:00
Miro Hrončok
2c45c73ad3 Fix tests for XMLPullParser with Expat 2.6.0
See also: https://bugzilla.redhat.com/2264859
2024-02-28 14:15:47 +01:00
Tomáš Hrnčiar
19c104a138 Update to 3.11.8 2024-02-07 15:16:09 +01:00
Fedora Release Engineering
402c54cf0a Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-26 13:31:36 +00:00
Fedora Release Engineering
4812846058 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-22 09:21:45 +00:00
Lumir Balhar
7434c7a69a Security fix for CVE-2023-27043 (rhbz#2196188) 2023-12-18 13:15:07 +01:00
Miro Hrončok
5c1f70d712 Own stray directories in /usr/lib64/python3.11
Fixes https://bugzilla.redhat.com/2252144
2023-12-08 20:36:19 +01:00
Tomáš Hrnčiar
955993c3ec Update to 3.11.7 2023-12-06 14:52:23 +01:00
Yaakov Selkowitz
1b480eac01 Use bundled libb2 in RHEL builds
Standalone libb2 is unwanted in RHEL.
2023-10-05 12:12:15 +02:00
Tomáš Hrnčiar
3254311fe9 Update to 3.11.6 2023-10-04 11:16:54 +02:00
Tomáš Hrnčiar
32c38941f9 Update to 3.11.5 2023-08-29 15:50:12 +02:00
Charalampos Stratakis
ee27ca470f Remove extra distro-applied CFLAGS passed to user-built C extensions
Only -fexceptions and -fcf-protection are preserved for binary
compatibility with user-built python C extension.

https://fedoraproject.org/wiki/Changes/Python_Extension_Flags_Reduction
2023-08-04 16:06:02 +02:00
Fedora Release Engineering
458f7d2d24 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-21 15:42:14 +00:00
Python Maint
5f98fe006c Rebuilt for Python 3.12 2023-06-13 15:09:02 +02:00
Tomáš Hrnčiar
8ca0a0a2d8 Update to 3.11.4 2023-06-08 08:36:11 +02:00
Charalampos Stratakis
64d93401a3 Fixup for CVE-2023-24329 patch name 2023-05-27 00:55:16 +02:00
Lumir Balhar
68ad779a6c Fix for CVE-2023-24329 2023-05-24 14:08:28 +02:00
Tomáš Hrnčiar
7b688dbf92 Update to 3.11.3 2023-04-05 13:51:34 +02:00
Tomáš Hrnčiar
0331299c7d Update to 3.11.2 2023-02-09 11:25:31 +01:00
Miro Hrončok
db4f001692 Don't require pyproject-rpm-macros on RHEL
See also https://src.fedoraproject.org/rpms/pyproject-rpm-macros/pull-request/345
2023-01-20 20:54:07 +00:00
Fedora Release Engineering
85c6584975 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-20 18:45:09 +00:00
Miro Hrončok
01ddee3bb6 Remove any deprecation warnings in asyncio.get_event_loop()
The warnings were added in 3.11.1 and will be reverted in 3.11.2.
They make some Fedora packages fail to build, so we backport the revert.
2023-01-11 15:26:49 +01:00
Miro Hrončok
06ef941d95 Fix asyncio subprocess losing stderr and stdout output
Reported as a regression in https://bodhi.fedoraproject.org/updates/FEDORA-2022-dbb811d203
2023-01-09 13:19:27 +00:00
Miro Hrončok
ec7d75e3d1 Opt-out from https://fedoraproject.org/wiki/Changes/fno-omit-frame-pointer
See https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org/thread/6TQYCHMX4FZLF27U5BCEC7IFV6XNBKJP/
for rationale, namely https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org/message/ZVDEXGPU6JQFXB3XHYZ4IXVQNNR3YM3V/

Summary: Python is currently slower with frame pointers
due to a slowdown in _PyEval_EvalFrameDefault,
but we expect this to be solved in Python 3.12.

Tracking bugzilla: https://bugzilla.redhat.com/2158729

This change does not require a release bump.
It is only needed to be here to prevent the next builds from including frame pointers.
2023-01-06 12:05:28 +01:00
Miro Hrončok
11c77ae388 No longer patch the default bytecode cache invalidation policy
That is, drop patch 328.

Fixes https://bugzilla.redhat.com/2133850

See also https://src.fedoraproject.org/rpms/python-rpm-macros/pull-request/154

This is part of https://fedoraproject.org/wiki/Changes/ReproducibleBuildsClampMtimes
2022-12-19 17:21:06 +01:00
Tomáš Hrnčiar
19bf071b14 Update to 3.11.1 2022-12-07 12:05:59 +01:00
Miro Hrončok
58109b55ab Update to 3.11.0 2022-10-25 00:46:26 +02:00
Miro Hrončok
2d80073286 Update the license tag to SPDX
See https://gitlab.com/fedora/legal/fedora-license-data/-/merge_requests/61

The LICENSE file differs from the text at https://spdx.org/licenses/Python-2.0.1.html
only by:

 - not saying "Python 2.0.1" but "Python" which is considered OK
 - copyright years which is considered OK
 - formatting
 - listing the history and license for code examples from the documentation
   (the documentation is not shipped via this package)
2022-09-13 13:30:06 +02:00
Miro Hrončok
38b3f29b55 Update to 3.11.0rc2 2022-09-13 11:00:55 +02:00
Miro Hrončok
d75ca77a64 Don't use custom installation schemes 2022-08-17 14:57:24 +02:00
Tomáš Hrnčiar
ab88d7f86c Update to 3.11.0rc1 2022-08-08 16:04:49 +02:00
Tomáš Hrnčiar
9518f2915c Update to 3.11.0b5 2022-07-26 13:55:26 +02:00
Fedora Release Engineering
2742991dbe Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-22 23:46:54 +00:00
Miro Hrončok
b2d80045f9 Update to 3.11.0b4
Patches 383 and 384 were merged upstream.
Patch 385 was partially merged upstream, the PR with test is still open.
2022-07-12 00:52:25 +02:00
Miro Hrončok
c7432171d0 Finish bootstrap of the re module speed regression fix 2022-07-09 01:23:18 +02:00
Miro Hrončok
0b91c9eccc Fix speed regression in the re module which prevented chromium from building
For details, see https://github.com/python/cpython/issues/94675

Backported from upstream 3.11 branch + https://github.com/python/cpython/pull/94685

Needs bootstrap for test_distutils (assert _sre.MAGIC == MAGIC, "SRE module mismatch").
2022-07-08 19:30:05 +02:00
Tomáš Hrnčiar
7ce324c29a Add patches #371 & #384
Clear and reset sqlite3 statements properly in cursor iternext (fixes rhbz#2099049)
Revert a problematic fix of threading._shutdown() again (fixes rhbz#2100282)
2022-06-24 12:22:45 +02:00
Miro Hrončok
17d458f006 Build Python with the optimized Blake2 library libb2
See https://github.com/python/cpython/issues/91251

> Distributors are encouraged to build Python with the optimized Blake2
> library libb2.
2022-06-23 12:32:46 +00:00
Miro Hrončok
a5905dea5f Make C++ version of _Py_CAST work with 0/NULL 2022-06-21 12:50:11 +02:00
Tomáš Hrnčiar
3a1b573f2d Finish bootstrapping for Python 3.11 mass rebuild 2022-06-13 13:39:47 +02:00
Tomáš Hrnčiar
135d879194 Initial bootstrap for Python 3.11 mass rebuild 2022-06-13 11:58:44 +02:00
Miro Hrončok
d6b108d1a6 Update to 3.11.0b3
Patch 381 was merged upstream
(it was the motivation for an expedited release).
2022-06-01 19:08:32 +02:00
Miro Hrončok
4e62ac5fa9 Ensure that AST nodes without explicit end positions can be compiled 2022-06-01 01:08:48 +02:00
Miro Hrončok
f8d78fe8c7 Update to 3.11.0b2 2022-05-31 21:47:45 +02:00
Miro Hrončok
d7833ee876 Don't hardcode %{ABIFLAGS_debug} 2022-05-31 21:47:45 +02:00
Miro Hrončok
f43b8c104e Don't exclude files that don't exist
When built without debug_build, RPM warns:

    File not found: /builddir/build/BUILDROOT/python3.11-3.11.0~b2-1.fc37.x86_64/usr/lib64/python3.11/_sysconfigdata_d_linux_x86_64-linux-gnu.py
    File not found: /builddir/build/BUILDROOT/python3.11-3.11.0~b2-1.fc37.x86_64/usr/lib64/python3.11/__pycache__/_sysconfigdata_d_linux_x86_64-linux-gnu.cpython-311*.pyc

This might become an error in some distant future.
2022-05-31 21:47:45 +02:00
Tomáš Hrnčiar
ac73e8a04f Finish bootstrapping 3.11.0b1 2022-05-10 12:56:18 +02:00
Tomáš Hrnčiar
1993f3aaf2 Update to 3.11.0b1 2022-05-10 11:47:06 +02:00
Tomas Orsava
0ff6a2eef6 Move _sysconfigdata_d_linux*.py to the debug subpackage 2022-04-29 12:24:01 +02:00