forked from pool/python312
Accepting request 1192365 from devel:languages:python:Factory
- Update to 3.12.5: - Tests - gh-59022: Add tests for pkgutil.extend_path(). Patch by Andreas Stocker. - gh-99242: os.getloadavg() may throw OSError when running regression tests under certain conditions (e.g. chroot). This error is now caught and ignored, since reporting load average is optional. - gh-121084: Fix test_typing random leaks. Clear typing ABC caches when running tests for refleaks (-R option): call _abc_caches_clear() on typing abstract classes and their subclasses. Patch by Victor Stinner. - gh-121160: Add a test for readline.set_history_length(). Note that this test may fail on readline libraries. - gh-121200: Fix test_expanduser_pwd2() of test_posixpath. Call getpwnam() to get pw_dir, since it can be different than getpwall() pw_dir. Patch by Victor Stinner. - gh-121188: When creating the JUnit XML file, regrtest now escapes characters which are invalid in XML, such as the chr(27) control character used in ANSI escape sequences. Patch by Victor Stinner. - Security - gh-121957: Fixed missing audit events around interactive use of Python, now also properly firing for python -i, as well as for python -m asyncio. The event in question is cpython.run_stdin. - gh-122133: Authenticate the socket connection for the socket.socketpair() fallback on platforms where AF_UNIX is OBS-URL: https://build.opensuse.org/request/show/1192365 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python312?expand=0&rev=18
This commit is contained in:
commit
e33fbc932e
@ -4,8 +4,10 @@
|
|||||||
Misc/NEWS.d/next/Library/2022-12-01-16-57-44.gh-issue-91133.LKMVCV.rst | 2
|
Misc/NEWS.d/next/Library/2022-12-01-16-57-44.gh-issue-91133.LKMVCV.rst | 2
|
||||||
3 files changed, 131 insertions(+)
|
3 files changed, 131 insertions(+)
|
||||||
|
|
||||||
--- a/Lib/tempfile.py
|
Index: Python-3.12.4/Lib/tempfile.py
|
||||||
+++ b/Lib/tempfile.py
|
===================================================================
|
||||||
|
--- Python-3.12.4.orig/Lib/tempfile.py
|
||||||
|
+++ Python-3.12.4/Lib/tempfile.py
|
||||||
@@ -285,6 +285,22 @@ def _resetperms(path):
|
@@ -285,6 +285,22 @@ def _resetperms(path):
|
||||||
_dont_follow_symlinks(chflags, path, 0)
|
_dont_follow_symlinks(chflags, path, 0)
|
||||||
_dont_follow_symlinks(_os.chmod, path, 0o700)
|
_dont_follow_symlinks(_os.chmod, path, 0o700)
|
||||||
@ -29,9 +31,11 @@
|
|||||||
|
|
||||||
# User visible interfaces.
|
# User visible interfaces.
|
||||||
|
|
||||||
--- a/Lib/test/test_tempfile.py
|
Index: Python-3.12.4/Lib/test/test_tempfile.py
|
||||||
+++ b/Lib/test/test_tempfile.py
|
===================================================================
|
||||||
@@ -1781,6 +1781,103 @@ class TestTemporaryDirectory(BaseTestCas
|
--- Python-3.12.4.orig/Lib/test/test_tempfile.py
|
||||||
|
+++ Python-3.12.4/Lib/test/test_tempfile.py
|
||||||
|
@@ -1803,6 +1803,103 @@ class TestTemporaryDirectory(BaseTestCas
|
||||||
new_flags = os.stat(dir1).st_flags
|
new_flags = os.stat(dir1).st_flags
|
||||||
self.assertEqual(new_flags, old_flags)
|
self.assertEqual(new_flags, old_flags)
|
||||||
|
|
||||||
@ -135,7 +139,7 @@
|
|||||||
@support.cpython_only
|
@support.cpython_only
|
||||||
def test_del_on_collection(self):
|
def test_del_on_collection(self):
|
||||||
# A TemporaryDirectory is deleted when garbage collected
|
# A TemporaryDirectory is deleted when garbage collected
|
||||||
@@ -1955,6 +2052,22 @@ class TestTemporaryDirectory(BaseTestCas
|
@@ -1977,6 +2074,22 @@ class TestTemporaryDirectory(BaseTestCas
|
||||||
|
|
||||||
def check_flags(self, flags):
|
def check_flags(self, flags):
|
||||||
# skip the test if these flags are not supported (ex: FreeBSD 13)
|
# skip the test if these flags are not supported (ex: FreeBSD 13)
|
||||||
@ -158,8 +162,10 @@
|
|||||||
filename = os_helper.TESTFN
|
filename = os_helper.TESTFN
|
||||||
try:
|
try:
|
||||||
open(filename, "w").close()
|
open(filename, "w").close()
|
||||||
|
Index: Python-3.12.4/Misc/NEWS.d/next/Library/2022-12-01-16-57-44.gh-issue-91133.LKMVCV.rst
|
||||||
|
===================================================================
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/Misc/NEWS.d/next/Library/2022-12-01-16-57-44.gh-issue-91133.LKMVCV.rst
|
+++ Python-3.12.4/Misc/NEWS.d/next/Library/2022-12-01-16-57-44.gh-issue-91133.LKMVCV.rst
|
||||||
@@ -0,0 +1,2 @@
|
@@ -0,0 +1,2 @@
|
||||||
+Fix a bug in :class:`tempfile.TemporaryDirectory` cleanup, which now no longer
|
+Fix a bug in :class:`tempfile.TemporaryDirectory` cleanup, which now no longer
|
||||||
+dereferences symlinks when working around file system permission errors.
|
+dereferences symlinks when working around file system permission errors.
|
||||||
|
152
F00251-change-user-install-location.patch
Normal file
152
F00251-change-user-install-location.patch
Normal file
@ -0,0 +1,152 @@
|
|||||||
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
|
||||||
|
Date: Mon, 15 Feb 2021 12:19:27 +0100
|
||||||
|
Subject: [PATCH] 00251: Change user install location
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Set values of base and platbase in sysconfig from /usr
|
||||||
|
to /usr/local when RPM build is not detected
|
||||||
|
to make pip and similar tools install into separate location.
|
||||||
|
|
||||||
|
Fedora Change: https://fedoraproject.org/wiki/Changes/Making_sudo_pip_safe
|
||||||
|
Downstream only.
|
||||||
|
|
||||||
|
We've tried to rework in Fedora 36/Python 3.10 to follow https://bugs.python.org/issue43976
|
||||||
|
but we have identified serious problems with that approach,
|
||||||
|
see https://bugzilla.redhat.com/2026979 or https://bugzilla.redhat.com/2097183
|
||||||
|
|
||||||
|
pypa/distutils integration: https://github.com/pypa/distutils/pull/70
|
||||||
|
|
||||||
|
Co-authored-by: Petr Viktorin <encukou@gmail.com>
|
||||||
|
Co-authored-by: Miro Hrončok <miro@hroncok.cz>
|
||||||
|
Co-authored-by: Michal Cyprian <m.cyprian@gmail.com>
|
||||||
|
Co-authored-by: Lumír Balhar <frenzy.madness@gmail.com>
|
||||||
|
---
|
||||||
|
Lib/site.py | 9 ++++++-
|
||||||
|
Lib/sysconfig.py | 49 +++++++++++++++++++++++++++++++++++++-
|
||||||
|
Lib/test/test_sysconfig.py | 17 +++++++++++--
|
||||||
|
3 files changed, 71 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
Index: Python-3.12.4/Lib/sysconfig.py
|
||||||
|
===================================================================
|
||||||
|
--- Python-3.12.4.orig/Lib/sysconfig.py
|
||||||
|
+++ Python-3.12.4/Lib/sysconfig.py
|
||||||
|
@@ -104,6 +104,11 @@ if os.name == 'nt':
|
||||||
|
else:
|
||||||
|
_INSTALL_SCHEMES['venv'] = _INSTALL_SCHEMES['posix_venv']
|
||||||
|
|
||||||
|
+# For a brief period of time in the Fedora 36 life cycle,
|
||||||
|
+# this installation scheme existed and was documented in the release notes.
|
||||||
|
+# For backwards compatibility, we keep it here (at least on 3.10 and 3.11).
|
||||||
|
+_INSTALL_SCHEMES['rpm_prefix'] = _INSTALL_SCHEMES['posix_prefix']
|
||||||
|
+
|
||||||
|
|
||||||
|
# NOTE: site.py has copy of this function.
|
||||||
|
# Sync it when modify this function.
|
||||||
|
@@ -163,6 +168,19 @@ if _HAS_USER_BASE:
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
+# This is used by distutils.command.install in the stdlib
|
||||||
|
+# as well as pypa/distutils (e.g. bundled in setuptools).
|
||||||
|
+# The self.prefix value is set to sys.prefix + /local/
|
||||||
|
+# if neither RPM build nor virtual environment is
|
||||||
|
+# detected to make distutils install packages
|
||||||
|
+# into the separate location.
|
||||||
|
+# https://fedoraproject.org/wiki/Changes/Making_sudo_pip_safe
|
||||||
|
+if (not (hasattr(sys, 'real_prefix') or
|
||||||
|
+ sys.prefix != sys.base_prefix) and
|
||||||
|
+ 'RPM_BUILD_ROOT' not in os.environ):
|
||||||
|
+ _prefix_addition = '/local'
|
||||||
|
+
|
||||||
|
+
|
||||||
|
_SCHEME_KEYS = ('stdlib', 'platstdlib', 'purelib', 'platlib', 'include',
|
||||||
|
'scripts', 'data')
|
||||||
|
|
||||||
|
@@ -263,11 +281,40 @@ def _extend_dict(target_dict, other_dict
|
||||||
|
target_dict[key] = value
|
||||||
|
|
||||||
|
|
||||||
|
+_CONFIG_VARS_LOCAL = None
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+def _config_vars_local():
|
||||||
|
+ # This function returns the config vars with prefixes amended to /usr/local
|
||||||
|
+ # https://fedoraproject.org/wiki/Changes/Making_sudo_pip_safe
|
||||||
|
+ global _CONFIG_VARS_LOCAL
|
||||||
|
+ if _CONFIG_VARS_LOCAL is None:
|
||||||
|
+ _CONFIG_VARS_LOCAL = dict(get_config_vars())
|
||||||
|
+ _CONFIG_VARS_LOCAL['base'] = '/usr/local'
|
||||||
|
+ _CONFIG_VARS_LOCAL['platbase'] = '/usr/local'
|
||||||
|
+ return _CONFIG_VARS_LOCAL
|
||||||
|
+
|
||||||
|
+
|
||||||
|
def _expand_vars(scheme, vars):
|
||||||
|
res = {}
|
||||||
|
if vars is None:
|
||||||
|
vars = {}
|
||||||
|
- _extend_dict(vars, get_config_vars())
|
||||||
|
+
|
||||||
|
+ # when we are not in a virtual environment or an RPM build
|
||||||
|
+ # we change '/usr' to '/usr/local'
|
||||||
|
+ # to avoid surprises, we explicitly check for the /usr/ prefix
|
||||||
|
+ # Python virtual environments have different prefixes
|
||||||
|
+ # we only do this for posix_prefix, not to mangle the venv scheme
|
||||||
|
+ # posix_prefix is used by sudo pip install
|
||||||
|
+ # we only change the defaults here, so explicit --prefix will take precedence
|
||||||
|
+ # https://fedoraproject.org/wiki/Changes/Making_sudo_pip_safe
|
||||||
|
+ if (scheme == 'posix_prefix' and
|
||||||
|
+ _PREFIX == '/usr' and
|
||||||
|
+ 'RPM_BUILD_ROOT' not in os.environ):
|
||||||
|
+ _extend_dict(vars, _config_vars_local())
|
||||||
|
+ else:
|
||||||
|
+ _extend_dict(vars, get_config_vars())
|
||||||
|
+
|
||||||
|
if os.name == 'nt':
|
||||||
|
# On Windows we want to substitute 'lib' for schemes rather
|
||||||
|
# than the native value (without modifying vars, in case it
|
||||||
|
Index: Python-3.12.4/Lib/test/test_sysconfig.py
|
||||||
|
===================================================================
|
||||||
|
--- Python-3.12.4.orig/Lib/test/test_sysconfig.py
|
||||||
|
+++ Python-3.12.4/Lib/test/test_sysconfig.py
|
||||||
|
@@ -110,8 +110,19 @@ class TestSysConfig(unittest.TestCase):
|
||||||
|
for scheme in _INSTALL_SCHEMES:
|
||||||
|
for name in _INSTALL_SCHEMES[scheme]:
|
||||||
|
expected = _INSTALL_SCHEMES[scheme][name].format(**config_vars)
|
||||||
|
+ tested = get_path(name, scheme)
|
||||||
|
+ # https://fedoraproject.org/wiki/Changes/Making_sudo_pip_safe
|
||||||
|
+ if tested.startswith('/usr/local'):
|
||||||
|
+ # /usr/local should only be used in posix_prefix
|
||||||
|
+ self.assertEqual(scheme, 'posix_prefix')
|
||||||
|
+ # Fedora CI runs tests for venv and virtualenv that check for other prefixes
|
||||||
|
+ self.assertEqual(sys.prefix, '/usr')
|
||||||
|
+ # When building the RPM of Python, %check runs this with RPM_BUILD_ROOT set
|
||||||
|
+ # Fedora CI runs this with RPM_BUILD_ROOT unset
|
||||||
|
+ self.assertNotIn('RPM_BUILD_ROOT', os.environ)
|
||||||
|
+ tested = tested.replace('/usr/local', '/usr')
|
||||||
|
self.assertEqual(
|
||||||
|
- os.path.normpath(get_path(name, scheme)),
|
||||||
|
+ os.path.normpath(tested),
|
||||||
|
os.path.normpath(expected),
|
||||||
|
)
|
||||||
|
|
||||||
|
@@ -344,7 +355,7 @@ class TestSysConfig(unittest.TestCase):
|
||||||
|
self.assertTrue(os.path.isfile(config_h), config_h)
|
||||||
|
|
||||||
|
def test_get_scheme_names(self):
|
||||||
|
- wanted = ['nt', 'posix_home', 'posix_prefix', 'posix_venv', 'nt_venv', 'venv']
|
||||||
|
+ wanted = ['nt', 'posix_home', 'posix_prefix', 'posix_venv', 'nt_venv', 'venv', 'rpm_prefix']
|
||||||
|
if HAS_USER_BASE:
|
||||||
|
wanted.extend(['nt_user', 'osx_framework_user', 'posix_user'])
|
||||||
|
self.assertEqual(get_scheme_names(), tuple(sorted(wanted)))
|
||||||
|
@@ -356,6 +367,8 @@ class TestSysConfig(unittest.TestCase):
|
||||||
|
cmd = "-c", "import sysconfig; print(sysconfig.get_platform())"
|
||||||
|
self.assertEqual(py.call_real(*cmd), py.call_link(*cmd))
|
||||||
|
|
||||||
|
+ @unittest.skipIf('RPM_BUILD_ROOT' not in os.environ,
|
||||||
|
+ "Test doesn't expect Fedora's paths")
|
||||||
|
def test_user_similar(self):
|
||||||
|
# Issue #8759: make sure the posix scheme for the users
|
||||||
|
# is similar to the global posix_prefix one
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:56bfef1fdfc1221ce6720e43a661e3eb41785dd914ce99698d8c7896af4bdaa1
|
|
||||||
size 20625068
|
|
@ -1,18 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQKTBAABCgB9FiEEcWlgX2LHUTVtBUomqCHmgOX6YwUFAmYVDdNfFIAAAAAALgAo
|
|
||||||
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDcx
|
|
||||||
Njk2MDVGNjJDNzUxMzU2RDA1NEEyNkE4MjFFNjgwRTVGQTYzMDUACgkQqCHmgOX6
|
|
||||||
YwU8Vg//aP8bxzPTDIM9Af1LLJj5LNLIuZOl5QysWQVbakoCpS8Z8ZiK3LyzGi7H
|
|
||||||
pQ5uJEnRjhULnOi+va2TPBDqiYvY1CkVizYzmUe1dMtzHdJUBE1TzybfON02JzPD
|
|
||||||
62oDHxUC1hvITyLE8tjnsgBuP9bbYYHnS+qqmDgBWS1M60i4bqcBiSdlWZp7ZTI4
|
|
||||||
KIxIy9eyNujHnNQrQQ1oqIoj7ty1Hrtkfqia/3cVq7rkQT8HecBIW0K82WuIXizm
|
|
||||||
/Ua/TQslTJsypslFYpoJBoIkWG2nk7RhJvfU5iLxQHen6cr7JOUo/u3jv0DIJyJs
|
|
||||||
LdBWG6noTIiqKJb65UswLUxexM5f3Y7gLEZ4FCqlbAOAPG16xwwC8Xd7LIF33cHK
|
|
||||||
133BvYCkwdl0MCpmsQuxi8i6Kql0MaEqJ9MEj6UN66ZJVpRx8hOm2FtZGhn5ZNxx
|
|
||||||
r5C2zXGw/IjXeS01wgD8cSRVA0XJdN4bu88vmvhqMuezg3CDF5bX85isoFUaLUjS
|
|
||||||
c5Lv1HNrqPiaWHOctnvzasy0djpwze+WCzsXFMI6VfejPpYwNlhmnxS7i3R9A4RK
|
|
||||||
gBwViMd5q5rwx365tCfRfGcBW6OOvrHZalhSGYmUw13sBarFliW9CvN4ghN9kWbN
|
|
||||||
YQwSggf5KD6v5mAAyReMrOJTyBG6B5hMlxKai5CzbRLlG25T2wI=
|
|
||||||
=ZQxz
|
|
||||||
-----END PGP SIGNATURE-----
|
|
3
Python-3.12.5.tar.xz
Normal file
3
Python-3.12.5.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:fa8a2e12c5e620b09f53e65bcd87550d2e5a1e2e04bf8ba991dcc55113876397
|
||||||
|
size 20422396
|
18
Python-3.12.5.tar.xz.asc
Normal file
18
Python-3.12.5.tar.xz.asc
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQKTBAABCgB9FiEEcWlgX2LHUTVtBUomqCHmgOX6YwUFAmayiFtfFIAAAAAALgAo
|
||||||
|
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDcx
|
||||||
|
Njk2MDVGNjJDNzUxMzU2RDA1NEEyNkE4MjFFNjgwRTVGQTYzMDUACgkQqCHmgOX6
|
||||||
|
YwUr4g//VyVs9tvbtiSp8pGe8f1gYErEw54r124sL/CBuNii8Irts1j5ymGxcm+l
|
||||||
|
hshPK5UlqRnhd5dCJWFTvLTXa5Ko2R1L3JyyxfGd1hmDuMhrWsDHijI0R7L/mGM5
|
||||||
|
6X2LTaadBVNvk8HaNKvR8SEWvo68rdnOuYElFA9ir7uqwjO26ZWz9FfH80YDGwo8
|
||||||
|
Blef2NYw8rNhiaZMFV0HYV7D+YyUAZnFNfW8M7Fd4oskUyj1tD9J89T9FFLYN09d
|
||||||
|
BcCIf+EdiEfqRpKxH89bW2g52kDrm4jYGONtpyF8eruyS3YwYSbvbuWioBYKmlxC
|
||||||
|
s51mieXz6G325GTZnmPxLek3ywPv6Gil9y0wH3fIr2BsWsmXust4LBpjDGt56Fy6
|
||||||
|
seokGBg8xzsBSk3iEqNoFmNsy/QOiuCcDejX4XqBDNodOlETQPJb07TkTI2iOmg9
|
||||||
|
NG4Atiz1HvGVxK68UuK9IIcNHyaWUmH8h4VQFGvc6KV6feP5Nm21Y12PZ5XIqJBO
|
||||||
|
Y8M/VJIJ5koaNPQfnBbbI5YBkUr4BVpIXIpY5LM/L5sUo2C3R7hMi0VGK88HGfSQ
|
||||||
|
KV4JmZgf6RMBNmrWY12sryS1QQ6q3P110GTUGQWB3sxxNbhmfcrK+4viqHc83yDz
|
||||||
|
ifmk33HuqaQGU7OzUMHeNcoCJIPo3H1FpoHOn9wLLCtA1pT+as4=
|
||||||
|
=t0Rk
|
||||||
|
-----END PGP SIGNATURE-----
|
BIN
bluez-devel-vendor.tar.xz
(Stored with Git LFS)
BIN
bluez-devel-vendor.tar.xz
(Stored with Git LFS)
Binary file not shown.
@ -13,10 +13,10 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
|
|||||||
5 files changed, 34 insertions(+), 9 deletions(-)
|
5 files changed, 34 insertions(+), 9 deletions(-)
|
||||||
create mode 100644 Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
|
create mode 100644 Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
|
||||||
|
|
||||||
Index: Python-3.12.2/Doc/library/ensurepip.rst
|
Index: Python-3.12.4/Doc/library/ensurepip.rst
|
||||||
===================================================================
|
===================================================================
|
||||||
--- Python-3.12.2.orig/Doc/library/ensurepip.rst
|
--- Python-3.12.4.orig/Doc/library/ensurepip.rst
|
||||||
+++ Python-3.12.2/Doc/library/ensurepip.rst
|
+++ Python-3.12.4/Doc/library/ensurepip.rst
|
||||||
@@ -59,8 +59,9 @@ is at least as recent as the one availab
|
@@ -59,8 +59,9 @@ is at least as recent as the one availab
|
||||||
By default, ``pip`` is installed into the current virtual environment
|
By default, ``pip`` is installed into the current virtual environment
|
||||||
(if one is active) or into the system site packages (if there is no
|
(if one is active) or into the system site packages (if there is no
|
||||||
@ -55,10 +55,10 @@ Index: Python-3.12.2/Doc/library/ensurepip.rst
|
|||||||
.. audit-event:: ensurepip.bootstrap root ensurepip.bootstrap
|
.. audit-event:: ensurepip.bootstrap root ensurepip.bootstrap
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
Index: Python-3.12.2/Lib/ensurepip/__init__.py
|
Index: Python-3.12.4/Lib/ensurepip/__init__.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- Python-3.12.2.orig/Lib/ensurepip/__init__.py
|
--- Python-3.12.4.orig/Lib/ensurepip/__init__.py
|
||||||
+++ Python-3.12.2/Lib/ensurepip/__init__.py
|
+++ Python-3.12.4/Lib/ensurepip/__init__.py
|
||||||
@@ -120,27 +120,27 @@ def _disable_pip_configuration_settings(
|
@@ -120,27 +120,27 @@ def _disable_pip_configuration_settings(
|
||||||
os.environ['PIP_CONFIG_FILE'] = os.devnull
|
os.environ['PIP_CONFIG_FILE'] = os.devnull
|
||||||
|
|
||||||
@ -121,10 +121,10 @@ Index: Python-3.12.2/Lib/ensurepip/__init__.py
|
|||||||
upgrade=args.upgrade,
|
upgrade=args.upgrade,
|
||||||
user=args.user,
|
user=args.user,
|
||||||
verbosity=args.verbosity,
|
verbosity=args.verbosity,
|
||||||
Index: Python-3.12.2/Lib/test/test_ensurepip.py
|
Index: Python-3.12.4/Lib/test/test_ensurepip.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- Python-3.12.2.orig/Lib/test/test_ensurepip.py
|
--- Python-3.12.4.orig/Lib/test/test_ensurepip.py
|
||||||
+++ Python-3.12.2/Lib/test/test_ensurepip.py
|
+++ Python-3.12.4/Lib/test/test_ensurepip.py
|
||||||
@@ -105,6 +105,17 @@ class TestBootstrap(EnsurepipMixin, unit
|
@@ -105,6 +105,17 @@ class TestBootstrap(EnsurepipMixin, unit
|
||||||
unittest.mock.ANY,
|
unittest.mock.ANY,
|
||||||
)
|
)
|
||||||
@ -143,11 +143,11 @@ Index: Python-3.12.2/Lib/test/test_ensurepip.py
|
|||||||
def test_bootstrapping_with_user(self):
|
def test_bootstrapping_with_user(self):
|
||||||
ensurepip.bootstrap(user=True)
|
ensurepip.bootstrap(user=True)
|
||||||
|
|
||||||
Index: Python-3.12.2/Makefile.pre.in
|
Index: Python-3.12.4/Makefile.pre.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- Python-3.12.2.orig/Makefile.pre.in
|
--- Python-3.12.4.orig/Makefile.pre.in
|
||||||
+++ Python-3.12.2/Makefile.pre.in
|
+++ Python-3.12.4/Makefile.pre.in
|
||||||
@@ -1912,7 +1912,7 @@ install: @FRAMEWORKINSTALLFIRST@ commoni
|
@@ -1914,7 +1914,7 @@ install: @FRAMEWORKINSTALLFIRST@ commoni
|
||||||
install|*) ensurepip="" ;; \
|
install|*) ensurepip="" ;; \
|
||||||
esac; \
|
esac; \
|
||||||
$(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
|
$(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
|
||||||
@ -156,7 +156,7 @@ Index: Python-3.12.2/Makefile.pre.in
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
.PHONY: altinstall
|
.PHONY: altinstall
|
||||||
@@ -1923,7 +1923,7 @@ altinstall: commoninstall
|
@@ -1925,7 +1925,7 @@ altinstall: commoninstall
|
||||||
install|*) ensurepip="--altinstall" ;; \
|
install|*) ensurepip="--altinstall" ;; \
|
||||||
esac; \
|
esac; \
|
||||||
$(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
|
$(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
|
||||||
@ -165,9 +165,9 @@ Index: Python-3.12.2/Makefile.pre.in
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
.PHONY: commoninstall
|
.PHONY: commoninstall
|
||||||
Index: Python-3.12.2/Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
|
Index: Python-3.12.4/Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
|
||||||
===================================================================
|
===================================================================
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ Python-3.12.2/Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
|
+++ Python-3.12.4/Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
|
||||||
@@ -0,0 +1 @@
|
@@ -0,0 +1 @@
|
||||||
+A directory prefix can now be specified when using :mod:`ensurepip`.
|
+A directory prefix can now be specified when using :mod:`ensurepip`.
|
||||||
|
56
docs-docutils_014-Sphinx_420.patch
Normal file
56
docs-docutils_014-Sphinx_420.patch
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
---
|
||||||
|
Doc/tools/extensions/c_annotations.py | 6 +++++-
|
||||||
|
Doc/tools/extensions/glossary_search.py | 12 ++++++++++--
|
||||||
|
Doc/tools/extensions/pyspecific.py | 5 ++++-
|
||||||
|
3 files changed, 19 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
--- a/Doc/tools/extensions/c_annotations.py
|
||||||
|
+++ b/Doc/tools/extensions/c_annotations.py
|
||||||
|
@@ -118,7 +118,11 @@ def add_annotations(app: Sphinx, doctree
|
||||||
|
state = app.env.domaindata["c_annotations"]
|
||||||
|
refcount_data = state["refcount_data"]
|
||||||
|
stable_abi_data = state["stable_abi_data"]
|
||||||
|
- for node in doctree.findall(addnodes.desc_content):
|
||||||
|
+ try:
|
||||||
|
+ findall = doctree.findall
|
||||||
|
+ except AttributeError:
|
||||||
|
+ findall = doctree.traverse
|
||||||
|
+ for node in findall(addnodes.desc_content):
|
||||||
|
par = node.parent
|
||||||
|
if par["domain"] != "c":
|
||||||
|
continue
|
||||||
|
--- a/Doc/tools/extensions/glossary_search.py
|
||||||
|
+++ b/Doc/tools/extensions/glossary_search.py
|
||||||
|
@@ -30,8 +30,16 @@ def process_glossary_nodes(
|
||||||
|
else:
|
||||||
|
terms = app.env.glossary_terms = {}
|
||||||
|
|
||||||
|
- for node in doctree.findall(glossary):
|
||||||
|
- for glossary_item in node.findall(nodes.definition_list_item):
|
||||||
|
+ try:
|
||||||
|
+ findall = doctree.findall
|
||||||
|
+ except AttributeError:
|
||||||
|
+ findall = doctree.traverse
|
||||||
|
+ for node in findall(glossary):
|
||||||
|
+ try:
|
||||||
|
+ node_findall = node.findall
|
||||||
|
+ except AttributeError:
|
||||||
|
+ node_findall = node.traverse
|
||||||
|
+ for glossary_item in node_findall(nodes.definition_list_item):
|
||||||
|
term = glossary_item[0].astext()
|
||||||
|
definition = glossary_item[-1]
|
||||||
|
|
||||||
|
--- a/Doc/tools/extensions/pyspecific.py
|
||||||
|
+++ b/Doc/tools/extensions/pyspecific.py
|
||||||
|
@@ -27,7 +27,10 @@ from sphinx.locale import _ as sphinx_ge
|
||||||
|
from sphinx.util import logging
|
||||||
|
from sphinx.util.docutils import SphinxDirective
|
||||||
|
from sphinx.writers.text import TextWriter, TextTranslator
|
||||||
|
-from sphinx.util.display import status_iterator
|
||||||
|
+try:
|
||||||
|
+ from sphinx.util.display import status_iterator
|
||||||
|
+except ModuleNotFoundError:
|
||||||
|
+ from sphinx.util import status_iterator
|
||||||
|
|
||||||
|
|
||||||
|
ISSUE_URI = 'https://bugs.python.org/issue?@action=redirect&bpo=%s'
|
@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
--- a/Doc/using/configure.rst
|
--- a/Doc/using/configure.rst
|
||||||
+++ b/Doc/using/configure.rst
|
+++ b/Doc/using/configure.rst
|
||||||
@@ -631,13 +631,11 @@ macOS Options
|
@@ -640,13 +640,11 @@ macOS Options
|
||||||
|
|
||||||
See ``Mac/README.rst``.
|
See ``Mac/README.rst``.
|
||||||
|
|
||||||
@ -21,7 +21,7 @@
|
|||||||
Create a Python.framework rather than a traditional Unix install. Optional
|
Create a Python.framework rather than a traditional Unix install. Optional
|
||||||
--- a/Misc/NEWS
|
--- a/Misc/NEWS
|
||||||
+++ b/Misc/NEWS
|
+++ b/Misc/NEWS
|
||||||
@@ -13428,7 +13428,7 @@ C API
|
@@ -13832,7 +13832,7 @@ C API
|
||||||
- bpo-40939: Removed documentation for the removed ``PyParser_*`` C API.
|
- bpo-40939: Removed documentation for the removed ``PyParser_*`` C API.
|
||||||
|
|
||||||
- bpo-43795: The list in :ref:`limited-api-list` now shows the public name
|
- bpo-43795: The list in :ref:`limited-api-list` now shows the public name
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
python311-curses: curses _curses _curses_panel
|
python312-curses: curses _curses
|
||||||
python311-dbm: dbm _dbm _gdbm
|
python312-dbm: dbm _dbm _gdbm
|
||||||
python311-idle: idlelib
|
python312-idle: idlelib
|
||||||
python311-testsuite: test _ctypes_test _testbuffer _testcapi _testinternalcapi _testimportmultiple _testmultiphase xxlimited
|
python312-testsuite: test _ctypes_test _testbuffer _testcapi _testclinic _testinternalcapi _testimportmultiple _testmultiphase _testsinglephase _xxinterpchannels _xxtestfuzz
|
||||||
python311-tk: tkinter _tkinter
|
python312-tk: tkinter _tkinter
|
||||||
python311-tools: turtledemo
|
python312-tools: turtledemo
|
||||||
python311: sqlite3 readline _sqlite3 nis
|
python312: sqlite3 readline _sqlite3 nis
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
Makefile.pre.in | 7 +++++++
|
Makefile.pre.in | 7 +++++++
|
||||||
1 file changed, 7 insertions(+)
|
1 file changed, 7 insertions(+)
|
||||||
|
|
||||||
Index: Python-3.12.2/Makefile.pre.in
|
Index: Python-3.12.4/Makefile.pre.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- Python-3.12.2.orig/Makefile.pre.in
|
--- Python-3.12.4.orig/Makefile.pre.in
|
||||||
+++ Python-3.12.2/Makefile.pre.in
|
+++ Python-3.12.4/Makefile.pre.in
|
||||||
@@ -1335,11 +1335,18 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \
|
@@ -1337,11 +1337,18 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \
|
||||||
$(DTRACE_OBJS) \
|
$(DTRACE_OBJS) \
|
||||||
$(srcdir)/Modules/getbuildinfo.c
|
$(srcdir)/Modules/getbuildinfo.c
|
||||||
$(CC) -c $(PY_CORE_CFLAGS) \
|
$(CC) -c $(PY_CORE_CFLAGS) \
|
||||||
|
@ -1,3 +1,477 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 7 18:05:57 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
|
||||||
|
|
||||||
|
- Update to 3.12.5:
|
||||||
|
- Tests
|
||||||
|
- gh-59022: Add tests for pkgutil.extend_path(). Patch by
|
||||||
|
Andreas Stocker.
|
||||||
|
- gh-99242: os.getloadavg() may throw OSError when
|
||||||
|
running regression tests under certain conditions (e.g.
|
||||||
|
chroot). This error is now caught and ignored, since
|
||||||
|
reporting load average is optional.
|
||||||
|
- gh-121084: Fix test_typing random leaks. Clear typing ABC
|
||||||
|
caches when running tests for refleaks (-R option): call
|
||||||
|
_abc_caches_clear() on typing abstract classes and their
|
||||||
|
subclasses. Patch by Victor Stinner.
|
||||||
|
- gh-121160: Add a test for
|
||||||
|
readline.set_history_length(). Note that this test may fail
|
||||||
|
on readline libraries.
|
||||||
|
- gh-121200: Fix test_expanduser_pwd2() of
|
||||||
|
test_posixpath. Call getpwnam() to get pw_dir, since it
|
||||||
|
can be different than getpwall() pw_dir. Patch by Victor
|
||||||
|
Stinner.
|
||||||
|
- gh-121188: When creating the JUnit XML file, regrtest
|
||||||
|
now escapes characters which are invalid in XML, such
|
||||||
|
as the chr(27) control character used in ANSI escape
|
||||||
|
sequences. Patch by Victor Stinner.
|
||||||
|
- Security
|
||||||
|
- gh-121957: Fixed missing audit events around interactive
|
||||||
|
use of Python, now also properly firing for python -i, as
|
||||||
|
well as for python -m asyncio. The event in question is
|
||||||
|
cpython.run_stdin.
|
||||||
|
- gh-122133: Authenticate the socket connection for the
|
||||||
|
socket.socketpair() fallback on platforms where AF_UNIX is
|
||||||
|
not available like Windows.
|
||||||
|
- Patch by Gregory P. Smith <greg@krypto.org> and Seth Larson
|
||||||
|
<seth@python.org>. Reported by Ellie <el@horse64.org>
|
||||||
|
- Library
|
||||||
|
- gh-122744: Bump the version of pip bundled in ensurepip to
|
||||||
|
version 24.2.
|
||||||
|
- gh-122334: Fix crash when importing ssl after the main
|
||||||
|
interpreter restarts.
|
||||||
|
- gh-87320: In code.InteractiveInterpreter, handle exceptions
|
||||||
|
caused by calling a non-default sys.excepthook(). Before,
|
||||||
|
the exception bubbled up to the caller, ending the REPL.
|
||||||
|
- gh-122400: Handle ValueErrors raised by os.stat() in
|
||||||
|
filecmp.dircmp and filecmp.cmpfiles(). Patch by Bénédikt
|
||||||
|
Tran.
|
||||||
|
- gh-122311: Fix some error messages in pickle.
|
||||||
|
- gh-121650: email headers with embedded newlines are
|
||||||
|
now quoted on output. The generator will now refuse to
|
||||||
|
serialize (write) headers that are unsafely folded or
|
||||||
|
delimited; see verify_generated_headers. (Contributed by
|
||||||
|
Bas Bloemsaat and Petr Viktorin in gh-121650; bsc#1228780,
|
||||||
|
CVE-2024-6923).
|
||||||
|
- gh-122332: Fixed segfault with asyncio.Task.get_coro() when
|
||||||
|
using an eager task factory.
|
||||||
|
- gh-122170: Handle ValueErrors raised by os.stat() in
|
||||||
|
linecache. Patch by Bénédikt Tran.
|
||||||
|
- gh-121723: Make logging.config.dictConfig() accept any
|
||||||
|
object implementing the Queue public API. See the queue
|
||||||
|
configuration section for details. Patch by Bénédikt Tran.
|
||||||
|
- gh-82951: Serializing objects with complex __qualname__
|
||||||
|
(such as unbound methods and nested classes) by name no
|
||||||
|
longer involves serializing parent objects by value in
|
||||||
|
pickle protocols < 4.
|
||||||
|
- gh-120930: Fixed a bug introduced by gh-92081 that added an
|
||||||
|
incorrect extra blank to encoded words occurring in wrapped
|
||||||
|
headers.
|
||||||
|
- gh-121474: Fix missing sanity check for parties arg in
|
||||||
|
threading.Barrier constructor. Patch by Clinton Christian
|
||||||
|
(pygeek).
|
||||||
|
- gh-121025: Improve the __repr__() of
|
||||||
|
functools.partialmethod. Patch by Bénédikt Tran.
|
||||||
|
- gh-121018: Fixed issues where
|
||||||
|
argparse.ArgumentParser.parse_args() did not honor
|
||||||
|
exit_on_error=False. Based on patch by Ben Hsing.
|
||||||
|
- gh-119614: Fix truncation of strings with embedded null
|
||||||
|
characters in some internal operations in tkinter.
|
||||||
|
- gh-120910: When reading installed files from an egg, use
|
||||||
|
relative_to(walk_up=True) to honor files installed outside
|
||||||
|
of the installation root.
|
||||||
|
- gh-101830: Accessing the tkinter object’s string
|
||||||
|
representation no longer converts the underlying Tcl object
|
||||||
|
to a string on Windows.
|
||||||
|
- gh-120811: Fix possible memory leak in
|
||||||
|
contextvars.Context.run().
|
||||||
|
- gh-120769: Make empty line in pdb repeats the last command
|
||||||
|
even when the command is from cmdqueue.
|
||||||
|
- gh-120732: Fix name passing to unittest.mock.Mock object
|
||||||
|
when using unittest.mock.create_autospec().
|
||||||
|
- gh-120495: Fix incorrect exception handling in Tab
|
||||||
|
Nanny. Patch by Wulian233.
|
||||||
|
- gh-120343: Fix column offset reporting for tokens that come
|
||||||
|
after multiline f-strings in the tokenize module.
|
||||||
|
- gh-119600: Fix unittest.mock.patch() to not read attributes
|
||||||
|
of the target when new_callable is set. Patch by Robert
|
||||||
|
Collins.
|
||||||
|
- gh-120289: Fixed the use-after-free issue in cProfile by
|
||||||
|
disallowing disable() and clear() in external timers.
|
||||||
|
- gh-114053: Fix edge-case bug where typing.get_type_hints()
|
||||||
|
would produce incorrect results if type parameters in a
|
||||||
|
class scope were overridden by assignments in a class scope
|
||||||
|
and from __future__ import annotations semantics were
|
||||||
|
enabled. Patch by Alex Waygood.
|
||||||
|
- gh-114053: Fix erroneous NameError when calling
|
||||||
|
inspect.get_annotations() with eval_str=True` on a class
|
||||||
|
that made use of PEP 695 type parameters in a module that
|
||||||
|
had from __future__ import annotations at the top of the
|
||||||
|
file. Patch by Alex Waygood.
|
||||||
|
- gh-120268: Prohibit passing None to pure-Python
|
||||||
|
datetime.date.fromtimestamp() to achieve consistency with
|
||||||
|
C-extension implementation.
|
||||||
|
- gh-120244: Fix memory leak in re.sub() when the replacement
|
||||||
|
string contains backreferences.
|
||||||
|
- gh-120211: Fix tkinter.ttk with Tcl/Tk 9.0.
|
||||||
|
- gh-71587: Fix crash in C version of
|
||||||
|
datetime.datetime.strptime() when called again on the
|
||||||
|
restarted interpreter.
|
||||||
|
- gh-117983: Defer the threading import in importlib.util
|
||||||
|
until lazy loading is used.
|
||||||
|
- gh-119698: Fix symtable.Class.get_methods() and document
|
||||||
|
its behaviour. Patch by Bénédikt Tran.
|
||||||
|
- gh-120121: Add concurrent.futures.InvalidStateError to
|
||||||
|
module’s __all__.
|
||||||
|
- gh-112672: Support building tkinter with Tcl 9.0.
|
||||||
|
- gh-65454: unittest.mock.Mock.attach_mock() no longer
|
||||||
|
triggers a call to a PropertyMock being attached.
|
||||||
|
- gh-81936: help() and showtopic() methods now respect a
|
||||||
|
configured output argument to pydoc.Helper and not use the
|
||||||
|
pager in such cases. Patch by Enrico Tröger.
|
||||||
|
- gh-119577: The DeprecationWarning emitted when testing
|
||||||
|
the truth value of an xml.etree.ElementTree.Element now
|
||||||
|
describes unconditionally returning True in a future
|
||||||
|
version rather than raising an exception in Python 3.14.
|
||||||
|
- gh-119506: Fix io.TextIOWrapper.write() method breaks
|
||||||
|
internal buffer when the method is called again during
|
||||||
|
flushing internal buffer.
|
||||||
|
- gh-119189: When using the ** operator or pow() with
|
||||||
|
Fraction as the base and an exponent that is not rational,
|
||||||
|
a float, or a complex, the fraction is no longer converted
|
||||||
|
to a float.
|
||||||
|
- gh-105623: Fix performance degradation in
|
||||||
|
logging.handlers.RotatingFileHandler. Patch by Craig
|
||||||
|
Robson.
|
||||||
|
- bpo-39324: Add mime type mapping for .md <-> text/markdown
|
||||||
|
- IDLE
|
||||||
|
- gh-122482: Change About IDLE to direct users to
|
||||||
|
discuss.python.org instead of the now unused idle-dev email
|
||||||
|
and mailing list.
|
||||||
|
- gh-78889: Stop Shell freezes by blocking user access to
|
||||||
|
non-method sys.stdout.shell attributes, which are all
|
||||||
|
private.
|
||||||
|
- gh-120104: Fix padding in config and search dialog windows
|
||||||
|
in IDLE.
|
||||||
|
- Documentation
|
||||||
|
- gh-121749: Fix documentation for PyModule_AddObjectRef().
|
||||||
|
- gh-120012: Clarify the behaviours of
|
||||||
|
multiprocessing.Queue.empty() and
|
||||||
|
multiprocessing.SimpleQueue.empty() on closed queues. Patch
|
||||||
|
by Bénédikt Tran.
|
||||||
|
- gh-121871: Documentation HTML varies from timestamp. Patch by
|
||||||
|
Bernhard M. Wiedemann (bsc#1227999).
|
||||||
|
- Core and Builtins
|
||||||
|
- gh-122208: Dictionary watchers now only deliver the
|
||||||
|
PyDict_EVENT_ADDED event when the insertion is in a known
|
||||||
|
good state to succeed.
|
||||||
|
- gh-122300: Preserve AST nodes for f-string with
|
||||||
|
single-element format specifiers. Patch by Pablo Galindo
|
||||||
|
- gh-122029: Emit c_call events in sys.setprofile() when a
|
||||||
|
PyMethodObject pointing to a PyCFunction is called.
|
||||||
|
- gh-122026: Fix a bug that caused the tokenizer to not
|
||||||
|
correctly identify mismatched parentheses inside f-strings
|
||||||
|
in some situations. Patch by Pablo Galindo
|
||||||
|
- gh-121657: Improve the SyntaxError message if the user
|
||||||
|
tries to use yield from outside a function.
|
||||||
|
- gh-117482: Unexpected slot wrappers are no longer created
|
||||||
|
for builtin static types in subinterpreters.
|
||||||
|
- gh-121439: Allow tuples of length 20 in the freelist to be
|
||||||
|
reused.
|
||||||
|
- gh-121130: Fix f-strings with debug expressions in format
|
||||||
|
specifiers. Patch by Pablo Galindo
|
||||||
|
- gh-120722: Correctly set the bytecode position on return
|
||||||
|
instructions within lambdas. Patch by Jelle Zijlstra.
|
||||||
|
- gh-120384: Fix an array out of bounds crash in
|
||||||
|
list_ass_subscript, which could be invoked via some
|
||||||
|
specificly tailored input: including concurrent
|
||||||
|
modification of a list object, where one thread assigns a
|
||||||
|
slice and another clears it.
|
||||||
|
- gh-120380: Fix Python implementation of pickle.Pickler for
|
||||||
|
bytes and bytearray objects when using protocol version
|
||||||
|
5. Patch by Bénédikt Tran.
|
||||||
|
- gh-93691: Fix source locations of instructions generated
|
||||||
|
for the iterator of a for statement.
|
||||||
|
- gh-120198: Fix a crash when multiple threads read and write
|
||||||
|
to the same __class__ of an object concurrently.
|
||||||
|
- gh-120298: Fix use-after free in list_richcompare_impl
|
||||||
|
which can be invoked via some specificly tailored evil
|
||||||
|
input.
|
||||||
|
- gh-119666: Fix a compiler crash in the case where two
|
||||||
|
comprehensions in class scope both reference __class__.
|
||||||
|
- bpo-24766: Fix handling of doc argument to subclasses of
|
||||||
|
property.
|
||||||
|
- Build
|
||||||
|
- gh-120671: Fix failing configure tests due to a missing
|
||||||
|
space when appending to CFLAGS.
|
||||||
|
- gh-115983: Skip building test modules that must be built as
|
||||||
|
shared under WASI.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 7 13:40:44 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
|
||||||
|
|
||||||
|
- %{profileopt} variable is set according to the variable
|
||||||
|
%{do_profiling} (bsc#1227999)
|
||||||
|
- Update bluez-devel-vendor.tar.xz
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 22 21:20:55 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
|
||||||
|
|
||||||
|
- Remove %suse_update_desktop_file macro as it is not useful any
|
||||||
|
more.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jul 4 16:04:05 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
|
||||||
|
|
||||||
|
- Stop using %%defattr, it seems to be breaking proper executable
|
||||||
|
attributes on /usr/bin/ scripts (bsc#1227378).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jul 2 10:33:52 UTC 2024 - Daniel Garcia <daniel.garcia@suse.com>
|
||||||
|
|
||||||
|
- Add F00251-change-user-install-location.patch to make pip and
|
||||||
|
modern tools install directly in /usr/local when used by the user.
|
||||||
|
bsc#1225660
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 26 20:00:38 UTC 2024 - Matej Cepl <mcepl@suse.com>
|
||||||
|
|
||||||
|
- Add docs-docutils_014-Sphinx_420.patch make building docs
|
||||||
|
compatible with Sphinx 4_2_0 and docutils 0.14.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 26 08:08:19 UTC 2024 - Andreas Schwab <schwab@suse.de>
|
||||||
|
|
||||||
|
- Update import_failed.map for python 3.12
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jun 24 12:14:52 UTC 2024 - Andreas Schwab <schwab@suse.de>
|
||||||
|
|
||||||
|
- Reenable test_multiprocessing_forkserver test_multiprocessing_spawn
|
||||||
|
test_subprocess tests in qemu build
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jun 7 10:44:55 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
|
||||||
|
|
||||||
|
- Update to 3.12.4:
|
||||||
|
- Security
|
||||||
|
- gh-118486: os.mkdir() on Windows now accepts mode of 0o700
|
||||||
|
to restrict the new directory to the current user. This
|
||||||
|
fixes CVE-2024-4030 affecting tempfile.mkdtemp() in
|
||||||
|
scenarios where the base temporary directory is more
|
||||||
|
permissive than the default (bsc#1227152).
|
||||||
|
- gh-116741: Update bundled libexpat to 2.6.2
|
||||||
|
- gh-117233: Detect BLAKE2, SHA3, Shake, & truncated SHA512
|
||||||
|
support in the OpenSSL-ish libcrypto library at build
|
||||||
|
time. This allows hashlib to be used with libraries that do
|
||||||
|
not to support every algorithm that upstream OpenSSL does.
|
||||||
|
- Core and Builtins
|
||||||
|
- gh-119821: Fix execution of annotation scopes within
|
||||||
|
classes when globals is set to a non-dict. Patch by Jelle
|
||||||
|
Zijlstra.
|
||||||
|
- gh-118263: Speed up os.path.normpath() with a direct C
|
||||||
|
call.
|
||||||
|
- gh-119311: Fix bug where names are unexpectedly mangled in
|
||||||
|
the bases of generic classes.
|
||||||
|
- gh-119395: Fix bug where names appearing after a generic
|
||||||
|
class are mangled as if they are in the generic class.
|
||||||
|
- gh-118507: Fix os.path.isfile() on Windows for pipes.
|
||||||
|
- gh-119213: Non-builtin modules built with argument clinic
|
||||||
|
were crashing if used in a subinterpreter before the main
|
||||||
|
interpreter. The objects that were causing the problem by
|
||||||
|
leaking between interpreters carelessly have been fixed.
|
||||||
|
- gh-119011: Fixes type.__type_params__ to return an empty
|
||||||
|
tuple instead of a descriptor.
|
||||||
|
- gh-118997: Fix _Py_ClearImmortal() assertion: use
|
||||||
|
_Py_IsImmortal() to tolerate reference count lower than
|
||||||
|
_Py_IMMORTAL_REFCNT. Fix the assertion for the stable
|
||||||
|
ABI, when a C extension is built with Python 3.11 or
|
||||||
|
lower. Patch by Victor Stinner.
|
||||||
|
- gh-118513: Fix incorrect UnboundLocalError when two
|
||||||
|
comprehensions in the same function both reference the same
|
||||||
|
name, and in one comprehension the name is bound while in
|
||||||
|
the other it’s an implicit global.
|
||||||
|
- gh-118164: Break a loop between the Python implementation
|
||||||
|
of the decimal module and the Python code for integer
|
||||||
|
to string conversion. Also optimize integer to string
|
||||||
|
conversion for values in the range from 9_000 to 135_000
|
||||||
|
decimal digits.
|
||||||
|
- gh-118272: Fix bug where generator.close does not free the
|
||||||
|
generator frame’s locals.
|
||||||
|
- gh-116767: Fix crash in compiler on ‘async with’ that has
|
||||||
|
many context managers.
|
||||||
|
- gh-117894: Prevent agen.aclose() objects being re-used
|
||||||
|
after .throw().
|
||||||
|
- gh-117881: prevent concurrent access to an async generator
|
||||||
|
via athrow().throw() or asend().throw()
|
||||||
|
- gh-115874: Fixed a possible segfault during garbage
|
||||||
|
collection of _asyncio.FutureIter objects
|
||||||
|
- Library
|
||||||
|
- gh-119819: Fix regression to allow logging configuration
|
||||||
|
with multiprocessing queue types.
|
||||||
|
- gh-89727: Fix issue with shutil.rmtree() where a
|
||||||
|
RecursionError is raised on deep directory trees.
|
||||||
|
- gh-89727: Partially fix issue with shutil.rmtree()
|
||||||
|
where a RecursionError is raised on deep directory
|
||||||
|
trees. A recursion error is no longer raised when
|
||||||
|
rmtree.avoids_symlink_attacks is false.
|
||||||
|
- gh-119118: Fix performance regression in the tokenize
|
||||||
|
module by caching the line token attribute and calculating
|
||||||
|
the column offset more efficiently.
|
||||||
|
- gh-89727: Fix issue with os.fwalk() where a RecursionError
|
||||||
|
was raised on deep directory trees by adjusting the
|
||||||
|
implementation to be iterative instead of recursive.
|
||||||
|
- gh-113892: Now, the method sock_connect of
|
||||||
|
asyncio.ProactorEventLoop raises a ValueError if given
|
||||||
|
socket is not in non-blocking mode, as well as in other
|
||||||
|
loop implementations.
|
||||||
|
- gh-119174: Fix high DPI causes turtledemo(turtle-graphics
|
||||||
|
examples) windows blurry Patch by Wulian233 and Terry Jan
|
||||||
|
Reedy
|
||||||
|
- gh-118643: Fix an AttributeError in the email module
|
||||||
|
when re-fold a long address list. Also fix more cases of
|
||||||
|
incorrect encoding of the address separator in the address
|
||||||
|
list.
|
||||||
|
- gh-58933: Make pdb return to caller frame correctly when
|
||||||
|
f_trace of the caller frame is not set
|
||||||
|
- gh-118868: Fixed issue where kwargs were no longer passed
|
||||||
|
to the logging handler QueueHandler
|
||||||
|
- gh-118164: The Python implementation of the decimal
|
||||||
|
module could appear to hang in relatively small power
|
||||||
|
cases (like 2**117) if context precision was set to a
|
||||||
|
very high value. A different method to check for exactly
|
||||||
|
representable results is used now that doesn’t rely on
|
||||||
|
computing 10**precision (which could be effectively too
|
||||||
|
large to compute).
|
||||||
|
- gh-118404: Fix inspect.signature() for non-comparable
|
||||||
|
callables.
|
||||||
|
- gh-118314: Fix an edge case in binascii.a2b_base64() strict
|
||||||
|
mode, where excessive padding is not detected when no
|
||||||
|
padding is necessary.
|
||||||
|
- gh-118042: Fix an unraisable exception in
|
||||||
|
telnetlib.Telnet.__del__() when the __init__() method was
|
||||||
|
not called.
|
||||||
|
- gh-118221: Fix a bug where sqlite3.iterdump() could fail if
|
||||||
|
a custom row factory was used. Patch by Erlend Aasland.
|
||||||
|
- gh-118013: Fix regression introduced in gh-103193 that
|
||||||
|
meant that calling inspect.getattr_static() on an instance
|
||||||
|
would cause a strong reference to that instance’s class to
|
||||||
|
persist in an internal cache in the inspect module. This
|
||||||
|
caused unexpected memory consumption if the class was
|
||||||
|
dynamically created, the class held strong references to
|
||||||
|
other objects which took up a significant amount of memory,
|
||||||
|
and the cache contained the sole strong reference to the
|
||||||
|
class. The fix for the regression leads to a slowdown
|
||||||
|
in getattr_static(), but the function should still be
|
||||||
|
significantly faster than it was in Python 3.11. Patch by
|
||||||
|
Alex Waygood.
|
||||||
|
- gh-90848: Fixed unittest.mock.create_autospec() to
|
||||||
|
configure parent mock with keyword arguments.
|
||||||
|
- gh-118168: Fix incorrect argument substitution when
|
||||||
|
typing.Unpack is used with the builtin tuple. typing.Unpack
|
||||||
|
now raises TypeError when used with certain invalid
|
||||||
|
types. Patch by Jelle Zijlstra.
|
||||||
|
- gh-118033: Fix dataclasses.dataclass() not creating a
|
||||||
|
__weakref__ slot when subclassing typing.Generic.
|
||||||
|
- gh-117535: Do not try to get the source line for made up
|
||||||
|
file name “sys” in warnings.
|
||||||
|
- gh-114053: Fix erroneous NameError when calling
|
||||||
|
typing.get_type_hints() on a class that made use of PEP 695
|
||||||
|
type parameters in a module that had from __future__ import
|
||||||
|
annotations at the top of the file. Patch by Alex Waygood.
|
||||||
|
- gh-117995: Don’t raise DeprecationWarning when a
|
||||||
|
sequence of parameters is used to bind indexed, nameless
|
||||||
|
placeholders. See also gh-100668.
|
||||||
|
- gh-80361: Fix TypeError in
|
||||||
|
email.message.Message.get_payload() when the charset is RFC
|
||||||
|
2231 encoded.
|
||||||
|
- gh-86650: Fix IndexError when parse some emails with
|
||||||
|
invalid Message-ID (including one-off addresses generated
|
||||||
|
by Microsoft Outlook).
|
||||||
|
- gh-117691: Improve the error messages emitted by tarfile
|
||||||
|
deprecation warnings relating to PEP 706. If a filter
|
||||||
|
argument is not provided to extract() or extractall, the
|
||||||
|
deprecation warning now points to the line in the user’s
|
||||||
|
code where the relevant function was called. Patch by Alex
|
||||||
|
Waygood.
|
||||||
|
- gh-77102: site module now parses .pth file with UTF-8
|
||||||
|
first, and locale encoding if UnicodeDecodeError
|
||||||
|
happened. It supported only locale encoding before.
|
||||||
|
- gh-117692: Fixes a bug when doctest.DocTestFinder was
|
||||||
|
failing on wrapped builtin_function_or_method.
|
||||||
|
- gh-117566: ipaddress.IPv6Address.is_loopback() will now
|
||||||
|
return True for IPv4-mapped loopback addresses, i.e.
|
||||||
|
addresses in the ::ffff:127.0.0.0/104 address space.
|
||||||
|
- gh-117503: Fix support of non-ASCII user names in bytes
|
||||||
|
paths in os.path.expanduser() on Posix.
|
||||||
|
- gh-117313: Only treat '\n', '\r' and '\r\n' as line
|
||||||
|
separators in re-folding the email messages. Preserve
|
||||||
|
control characters '\v', '\f', '\x1c', '\x1d' and '\x1e'
|
||||||
|
and Unicode line separators '\x85', '\u2028' and '\u2029'
|
||||||
|
as is.
|
||||||
|
- gh-113171 (bsc#1226448, CVE-2024-4032): Fixed various false
|
||||||
|
positives and false negatives in
|
||||||
|
ipaddress.IPv4Address.is_private (see these docs for details)
|
||||||
|
ipaddress.IPv4Address.is_global
|
||||||
|
ipaddress.IPv6Address.is_private
|
||||||
|
ipaddress.IPv6Address.is_global
|
||||||
|
Also in the corresponding ipaddress.IPv4Network and
|
||||||
|
ipaddress.IPv6Network attributes.
|
||||||
|
- gh-103956: Fix lack of newline characters in trace module
|
||||||
|
output when line tracing is enabled but source code line
|
||||||
|
for current frame is not available.
|
||||||
|
- gh-92081: Fix missing spaces in email headers when the
|
||||||
|
spaces are mixed with encoded 8-bit characters.
|
||||||
|
- gh-103194: Prepare Tkinter for C API changes in Tcl 8.7/9.0
|
||||||
|
to avoid _tkinter.Tcl_Obj being unexpectedly returned
|
||||||
|
instead of bool, str, bytearray, or int.
|
||||||
|
- gh-87106: Fixed handling in inspect.Signature.bind() of
|
||||||
|
keyword arguments having the same name as positional-only
|
||||||
|
arguments when a variadic keyword argument (e.g. **kwargs)
|
||||||
|
is present.
|
||||||
|
- bpo-45767: Fix integer conversion in os.major(),
|
||||||
|
os.minor(), and os.makedev(). Support device numbers larger
|
||||||
|
than 2**63-1. Support non-existent device number (NODEV).
|
||||||
|
- bpo-40943: Fix several IndexError when parse emails with
|
||||||
|
truncated Message-ID, address, routes, etc, e.g. example@.
|
||||||
|
- bpo-30988: Fix parsing of emails with invalid address
|
||||||
|
headers having a leading or trailing dot. Patch by tsufeki.
|
||||||
|
- gh-67693: Fix urllib.parse.urlunparse() and
|
||||||
|
urllib.parse.urlunsplit() for URIs with path starting with
|
||||||
|
multiple slashes and no authority. Based on patch by Ashwin
|
||||||
|
Ramaswami.
|
||||||
|
- bpo-15010: unittest.TestLoader.discover() now saves the
|
||||||
|
original value of unittest.TestLoader._top_level_dir and
|
||||||
|
restores it at the end of the call.
|
||||||
|
- Documentation
|
||||||
|
- gh-117928: The minimum Sphinx version required for the
|
||||||
|
documentation is now 6.2.1.
|
||||||
|
- gh-91565: Changes to documentation files and config
|
||||||
|
outputs to reflect the new location for reporting bugs -
|
||||||
|
i.e. GitHub rather than bugs.python.org.
|
||||||
|
- Tests
|
||||||
|
- gh-119050: regrtest test runner: Add XML support to the
|
||||||
|
refleak checker (-R option). Patch by Victor Stinner.
|
||||||
|
- IDLE
|
||||||
|
- bpo-34774: Use user-selected color theme for Help => IDLE
|
||||||
|
Doc.
|
||||||
|
- C API
|
||||||
|
- gh-119585: Fix crash when a thread state that was
|
||||||
|
created by PyGILState_Ensure() calls a destructor that
|
||||||
|
during PyThreadState_Clear() that calls back into
|
||||||
|
PyGILState_Ensure() and PyGILState_Release(). This
|
||||||
|
might occur when in the free-threaded build or when
|
||||||
|
using thread-local variables whose destructors call
|
||||||
|
PyGILState_Ensure().
|
||||||
|
- gh-117534: Improve validation logic in the C implementation
|
||||||
|
of datetime.fromisoformat() to better handle invalid
|
||||||
|
years. Patch by Vlad Efanov.
|
||||||
|
- Updated patches:
|
||||||
|
- CVE-2023-6597-TempDir-cleaning-symlink.patch
|
||||||
|
- bpo-31046_ensurepip_honours_prefix.patch
|
||||||
|
- fix_configure_rst.patch
|
||||||
|
- python-3.3.0b1-fix_date_time_compiler.patch
|
||||||
|
- subprocess-raise-timeout.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Apr 15 10:31:32 UTC 2024 - Daniel Garcia <daniel.garcia@suse.com>
|
Mon Apr 15 10:31:32 UTC 2024 - Daniel Garcia <daniel.garcia@suse.com>
|
||||||
|
|
||||||
@ -28,7 +502,7 @@ Wed Apr 10 14:41:07 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
|
|||||||
- gh-114572: ssl.SSLContext.cert_store_stats() and
|
- gh-114572: ssl.SSLContext.cert_store_stats() and
|
||||||
ssl.SSLContext.get_ca_certs() now correctly lock access to
|
ssl.SSLContext.get_ca_certs() now correctly lock access to
|
||||||
the certificate store, when the ssl.SSLContext is shared
|
the certificate store, when the ssl.SSLContext is shared
|
||||||
across multiple threads.
|
across multiple threads (bsc#1226447, CVE-2024-0397).
|
||||||
- Core and Builtins
|
- Core and Builtins
|
||||||
- gh-109120: Added handle of incorrect star expressions, e.g
|
- gh-109120: Added handle of incorrect star expressions, e.g
|
||||||
f(3, *). Patch by Grigoryev Semyon
|
f(3, *). Patch by Grigoryev Semyon
|
||||||
|
@ -36,6 +36,12 @@
|
|||||||
%bcond_without general
|
%bcond_without general
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%if 0%{?do_profiling}
|
||||||
|
%bcond_without profileopt
|
||||||
|
%else
|
||||||
|
%bcond_with profileopt
|
||||||
|
%endif
|
||||||
|
|
||||||
%define python_pkg_name python312
|
%define python_pkg_name python312
|
||||||
%if "%{python_pkg_name}" == "%{primary_python}"
|
%if "%{python_pkg_name}" == "%{primary_python}"
|
||||||
%define primary_interpreter 1
|
%define primary_interpreter 1
|
||||||
@ -103,9 +109,8 @@
|
|||||||
# pyexpat.cpython-35m-armv7-linux-gnueabihf
|
# pyexpat.cpython-35m-armv7-linux-gnueabihf
|
||||||
# _md5.cpython-38m-x86_64-linux-gnu.so
|
# _md5.cpython-38m-x86_64-linux-gnu.so
|
||||||
%define dynlib() %{sitedir}/lib-dynload/%{1}.cpython-%{abi_tag}-%{archname}-%{_os}%{?_gnu}%{?armsuffix}.so
|
%define dynlib() %{sitedir}/lib-dynload/%{1}.cpython-%{abi_tag}-%{archname}-%{_os}%{?_gnu}%{?armsuffix}.so
|
||||||
%bcond_without profileopt
|
|
||||||
Name: %{python_pkg_name}%{psuffix}
|
Name: %{python_pkg_name}%{psuffix}
|
||||||
Version: 3.12.3
|
Version: 3.12.5
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Python 3 Interpreter
|
Summary: Python 3 Interpreter
|
||||||
License: Python-2.0
|
License: Python-2.0
|
||||||
@ -136,6 +141,13 @@ Source99: python.keyring
|
|||||||
# They are listed here to work around missing functionality in rpmbuild,
|
# They are listed here to work around missing functionality in rpmbuild,
|
||||||
# which would otherwise exclude them from distributed src.rpm files.
|
# which would otherwise exclude them from distributed src.rpm files.
|
||||||
Source100: PACKAGING-NOTES
|
Source100: PACKAGING-NOTES
|
||||||
|
# PATCH-FEATURE-UPSTREAM F00251-change-user-install-location.patch bsc#[0-9]+ mcepl@suse.com
|
||||||
|
# Fix installation in /usr/local (boo#1071941), originally from Fedora
|
||||||
|
# https://src.fedoraproject.org/rpms/python3.12/blob/rawhide/f/00251-change-user-install-location.patch
|
||||||
|
# Set values of prefix and exec_prefix in distutils install command
|
||||||
|
# to /usr/local if executable is /usr/bin/python* and RPM build
|
||||||
|
# is not detected to make pip and distutils install into separate location
|
||||||
|
Patch02: F00251-change-user-install-location.patch
|
||||||
# support finding packages in /usr/local, install to /usr/local by default
|
# support finding packages in /usr/local, install to /usr/local by default
|
||||||
Patch07: python-3.3.0b1-localpath.patch
|
Patch07: python-3.3.0b1-localpath.patch
|
||||||
# replace DATE, TIME and COMPILER by fixed definitions to aid reproducible builds
|
# replace DATE, TIME and COMPILER by fixed definitions to aid reproducible builds
|
||||||
@ -171,6 +183,9 @@ Patch39: CVE-2023-52425-libexpat-2.6.0-backport-15.6.patch
|
|||||||
# PATCH-FIX-OPENSUSE fix-test-recursion-limit-15.6.patch gh#python/cpython#115083
|
# PATCH-FIX-OPENSUSE fix-test-recursion-limit-15.6.patch gh#python/cpython#115083
|
||||||
# Skip some failing tests in test_compile for i586 arch in 15.6.
|
# Skip some failing tests in test_compile for i586 arch in 15.6.
|
||||||
Patch40: fix-test-recursion-limit-15.6.patch
|
Patch40: fix-test-recursion-limit-15.6.patch
|
||||||
|
# PATCH-FIX-SLE docs-docutils_014-Sphinx_420.patch bsc#[0-9]+ mcepl@suse.com
|
||||||
|
# related to gh#python/cpython#119317
|
||||||
|
Patch41: docs-docutils_014-Sphinx_420.patch
|
||||||
BuildRequires: autoconf-archive
|
BuildRequires: autoconf-archive
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
@ -212,7 +227,6 @@ BuildRequires: gettext
|
|||||||
BuildRequires: readline-devel
|
BuildRequires: readline-devel
|
||||||
BuildRequires: sqlite-devel
|
BuildRequires: sqlite-devel
|
||||||
BuildRequires: timezone
|
BuildRequires: timezone
|
||||||
BuildRequires: update-desktop-files
|
|
||||||
BuildRequires: pkgconfig(ncurses)
|
BuildRequires: pkgconfig(ncurses)
|
||||||
BuildRequires: pkgconfig(tk)
|
BuildRequires: pkgconfig(tk)
|
||||||
BuildRequires: pkgconfig(x11)
|
BuildRequires: pkgconfig(x11)
|
||||||
@ -428,6 +442,9 @@ other applications.
|
|||||||
%setup -q -n %{tarname}
|
%setup -q -n %{tarname}
|
||||||
%autopatch -p1
|
%autopatch -p1
|
||||||
|
|
||||||
|
# Fix devhelp doc build gh#python/cpython#120150
|
||||||
|
echo "master_doc = 'contents'" >> Doc/conf.py
|
||||||
|
|
||||||
# drop Autoconf version requirement
|
# drop Autoconf version requirement
|
||||||
sed -i 's/^AC_PREREQ/dnl AC_PREREQ/' configure.ac
|
sed -i 's/^AC_PREREQ/dnl AC_PREREQ/' configure.ac
|
||||||
|
|
||||||
@ -551,7 +568,12 @@ EXCLUDE="$EXCLUDE test_faulthandler"
|
|||||||
%endif
|
%endif
|
||||||
# some tests break in QEMU
|
# some tests break in QEMU
|
||||||
%if 0%{?qemu_user_space_build}
|
%if 0%{?qemu_user_space_build}
|
||||||
EXCLUDE="$EXCLUDE test_faulthandler test_multiprocessing_forkserver test_multiprocessing_spawn test_os test_posix test_signal test_socket test_subprocess"
|
# test_faulthandler: test_register_chain is racy
|
||||||
|
# test_os: test_fork_warns_when_non_python_thread_exists fails
|
||||||
|
# test_posix: qemu does not support fexecve in test_fexecve
|
||||||
|
# test_signal: qemu crashes in test_stress_modifying_handlers
|
||||||
|
# test_socket: many CmsgTrunc tests fail
|
||||||
|
EXCLUDE="$EXCLUDE test_faulthandler test_os test_posix test_signal test_socket"
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# This test (part of test_uuid) requires real network interfaces
|
# This test (part of test_uuid) requires real network interfaces
|
||||||
@ -663,7 +685,6 @@ done
|
|||||||
cp %{SOURCE19} idle%{python_version}.desktop
|
cp %{SOURCE19} idle%{python_version}.desktop
|
||||||
sed -i -e 's:idle3:idle%{python_version}:g' idle%{python_version}.desktop
|
sed -i -e 's:idle3:idle%{python_version}:g' idle%{python_version}.desktop
|
||||||
install -m 644 -D -t %{buildroot}%{_datadir}/applications idle%{python_version}.desktop
|
install -m 644 -D -t %{buildroot}%{_datadir}/applications idle%{python_version}.desktop
|
||||||
%suse_update_desktop_file idle%{python_version}
|
|
||||||
|
|
||||||
cp %{SOURCE20} idle%{python_version}.appdata.xml
|
cp %{SOURCE20} idle%{python_version}.appdata.xml
|
||||||
sed -i -e 's:idle3.desktop:idle%{python_version}.desktop:g' idle%{python_version}.appdata.xml
|
sed -i -e 's:idle3.desktop:idle%{python_version}.desktop:g' idle%{python_version}.appdata.xml
|
||||||
@ -762,6 +783,9 @@ LD_LIBRARY_PATH=. ./python -O -c "from py_compile import compile; compile('$FAIL
|
|||||||
cd $FAILDIR
|
cd $FAILDIR
|
||||||
while read package modules; do
|
while read package modules; do
|
||||||
for module in $modules; do
|
for module in $modules; do
|
||||||
|
%if 0%{?suse_version} >= 1599
|
||||||
|
test $module = nis && continue
|
||||||
|
%endif
|
||||||
ln import_failed.py $module.py
|
ln import_failed.py $module.py
|
||||||
pushd __pycache__
|
pushd __pycache__
|
||||||
for i in import_failed*; do
|
for i in import_failed*; do
|
||||||
@ -776,23 +800,19 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
|
|||||||
|
|
||||||
%if %{with general}
|
%if %{with general}
|
||||||
%files -n %{python_pkg_name}-tk
|
%files -n %{python_pkg_name}-tk
|
||||||
%defattr(644, root, root, 755)
|
|
||||||
%{sitedir}/tkinter
|
%{sitedir}/tkinter
|
||||||
%{dynlib _tkinter}
|
%{dynlib _tkinter}
|
||||||
|
|
||||||
%files -n %{python_pkg_name}-curses
|
%files -n %{python_pkg_name}-curses
|
||||||
%defattr(644, root, root, 755)
|
|
||||||
%{sitedir}/curses
|
%{sitedir}/curses
|
||||||
%{dynlib _curses}
|
%{dynlib _curses}
|
||||||
|
|
||||||
%files -n %{python_pkg_name}-dbm
|
%files -n %{python_pkg_name}-dbm
|
||||||
%defattr(644, root, root, 755)
|
|
||||||
%{sitedir}/dbm
|
%{sitedir}/dbm
|
||||||
%{dynlib _dbm}
|
%{dynlib _dbm}
|
||||||
%{dynlib _gdbm}
|
%{dynlib _gdbm}
|
||||||
|
|
||||||
%files -n %{python_pkg_name}
|
%files -n %{python_pkg_name}
|
||||||
%defattr(644, root, root, 755)
|
|
||||||
%dir %{sitedir}
|
%dir %{sitedir}
|
||||||
%dir %{sitedir}/lib-dynload
|
%dir %{sitedir}/lib-dynload
|
||||||
%{sitedir}/sqlite3
|
%{sitedir}/sqlite3
|
||||||
@ -803,7 +823,6 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%files -n %{python_pkg_name}-idle
|
%files -n %{python_pkg_name}-idle
|
||||||
%defattr(644, root, root, 755)
|
|
||||||
%{sitedir}/idlelib
|
%{sitedir}/idlelib
|
||||||
%dir %{_sysconfdir}/idle%{python_version}
|
%dir %{_sysconfdir}/idle%{python_version}
|
||||||
%config %{_sysconfdir}/idle%{python_version}/*
|
%config %{_sysconfdir}/idle%{python_version}/*
|
||||||
@ -840,11 +859,9 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
|
|||||||
%postun -n libpython%{so_version} -p /sbin/ldconfig
|
%postun -n libpython%{so_version} -p /sbin/ldconfig
|
||||||
|
|
||||||
%files -n libpython%{so_version}
|
%files -n libpython%{so_version}
|
||||||
%defattr(644, root,root)
|
|
||||||
%{_libdir}/libpython%{python_abi}.so.%{so_major}.%{so_minor}
|
%{_libdir}/libpython%{python_abi}.so.%{so_major}.%{so_minor}
|
||||||
|
|
||||||
%files -n %{python_pkg_name}-tools
|
%files -n %{python_pkg_name}-tools
|
||||||
%defattr(644, root, root, 755)
|
|
||||||
%{sitedir}/turtledemo
|
%{sitedir}/turtledemo
|
||||||
%if %{primary_interpreter}
|
%if %{primary_interpreter}
|
||||||
%{_bindir}/2to3
|
%{_bindir}/2to3
|
||||||
@ -853,7 +870,6 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
|
|||||||
%doc %{_docdir}/%{name}/Tools
|
%doc %{_docdir}/%{name}/Tools
|
||||||
|
|
||||||
%files -n %{python_pkg_name}-devel
|
%files -n %{python_pkg_name}-devel
|
||||||
%defattr(644, root, root, 755)
|
|
||||||
%{_libdir}/libpython%{python_abi}.so
|
%{_libdir}/libpython%{python_abi}.so
|
||||||
%if %{primary_interpreter}
|
%if %{primary_interpreter}
|
||||||
%{_libdir}/libpython3.so
|
%{_libdir}/libpython3.so
|
||||||
@ -861,7 +877,6 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
|
|||||||
%{_libdir}/pkgconfig/*
|
%{_libdir}/pkgconfig/*
|
||||||
%{_includedir}/python%{python_abi}
|
%{_includedir}/python%{python_abi}
|
||||||
%{sitedir}/config-%{python_abi}-*
|
%{sitedir}/config-%{python_abi}-*
|
||||||
%defattr(755, root, root)
|
|
||||||
%{_bindir}/python%{python_abi}-config
|
%{_bindir}/python%{python_abi}-config
|
||||||
%if %{primary_interpreter}
|
%if %{primary_interpreter}
|
||||||
%{_bindir}/python3-config
|
%{_bindir}/python3-config
|
||||||
@ -874,7 +889,6 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
|
|||||||
%{_datadir}/gdb/auto-load/%{_libdir}/libpython%{python_abi}.so.%{so_major}.%{so_minor}-gdb.py
|
%{_datadir}/gdb/auto-load/%{_libdir}/libpython%{python_abi}.so.%{so_major}.%{so_minor}-gdb.py
|
||||||
|
|
||||||
%files -n %{python_pkg_name}-testsuite
|
%files -n %{python_pkg_name}-testsuite
|
||||||
%defattr(644, root, root, 755)
|
|
||||||
%{sitedir}/test
|
%{sitedir}/test
|
||||||
# %%{sitedir}/*/test
|
# %%{sitedir}/*/test
|
||||||
# %%{sitedir}/*/tests
|
# %%{sitedir}/*/tests
|
||||||
@ -893,7 +907,6 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
|
|||||||
%dir %{sitedir}/tkinter
|
%dir %{sitedir}/tkinter
|
||||||
|
|
||||||
%files -n %{python_pkg_name}-base
|
%files -n %{python_pkg_name}-base
|
||||||
%defattr(644, root, root, 755)
|
|
||||||
# docs
|
# docs
|
||||||
%dir %{_docdir}/%{name}
|
%dir %{_docdir}/%{name}
|
||||||
%doc %{_docdir}/%{name}/README.rst
|
%doc %{_docdir}/%{name}/README.rst
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
Lib/test/test_subprocess.py | 3 ++-
|
Lib/test/test_subprocess.py | 3 ++-
|
||||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
Index: Python-3.12.2/Lib/test/test_subprocess.py
|
Index: Python-3.12.4/Lib/test/test_subprocess.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- Python-3.12.2.orig/Lib/test/test_subprocess.py
|
--- Python-3.12.4.orig/Lib/test/test_subprocess.py
|
||||||
+++ Python-3.12.2/Lib/test/test_subprocess.py
|
+++ Python-3.12.4/Lib/test/test_subprocess.py
|
||||||
@@ -281,7 +281,8 @@ class ProcessTestCase(BaseTestCase):
|
@@ -280,7 +280,8 @@ class ProcessTestCase(BaseTestCase):
|
||||||
"time.sleep(3600)"],
|
"time.sleep(3600)"],
|
||||||
# Some heavily loaded buildbots (sparc Debian 3.x) require
|
# Some heavily loaded buildbots (sparc Debian 3.x) require
|
||||||
# this much time to start and print.
|
# this much time to start and print.
|
||||||
|
Loading…
Reference in New Issue
Block a user