SHA256
1
0

Accepting request 1031401 from home:mcepl:branches:devel:languages:python:Factory

- Update to 3.11.0 (overall changes from 3.10.*):
  - General changes
    - PEP 657 -- Include Fine-Grained Error Locations in
      Tracebacks
    - PEP 654 -- Exception Groups and except*
    - PEP 680 -- tomllib: Support for Parsing TOML in the
      Standard Library
    - gh-90908 -- Introduce task groups to asyncio
    - gh-34627 -- Atomic grouping ((?>...)) and possessive
      quantifiers (*+, ++, ?+, {m,n}+) are now supported in
      regular expressions.
    - The Faster CPython Project is already yielding some
      exciting results. Python 3.11 is up to 10-60% faster than
      Python 3.10. On average, we measured a 1.22x speedup on the
      standard benchmark suite. See Faster CPython for details.
  - Typing and typing language changes
    - PEP 673 -- Self Type
    - PEP 646 -- Variadic Generics
    - PEP 675 -- Arbitrary Literal String Type
    - PEP 655 -- Marking individual TypedDict items as required
      or potentially-missing
    - PEP 681 -- Data Class Transforms
- (just changes from 3.11.0rc2):
  - Fix multiplying a list by an integer (list *= int): detect
    the integer overflow when the new allocated length is close
    to the maximum size. Issue reported by Jordan Limor. Patch by
    Victor Stinner.
  - On Linux the multiprocessing module returns to using
    filesystem backed unix domain sockets for communication
    with the forkserver process instead of the Linux abstract

OBS-URL: https://build.opensuse.org/request/show/1031401
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python311?expand=0&rev=34
This commit is contained in:
Matej Cepl 2022-10-26 21:24:53 +00:00 committed by Git OBS Bridge
parent d8ac67fc2d
commit 403af99cf1
8 changed files with 159 additions and 21 deletions

View File

@ -0,0 +1,54 @@
From 5775f51691d7d64fb676586e008b41261ce64ac2 Mon Sep 17 00:00:00 2001
From: "Matt.Wang" <mattwang44@gmail.com>
Date: Wed, 19 Oct 2022 14:49:08 +0800
Subject: [PATCH 1/2] fix(doc-tools): use sphinx.locale._ as gettext() for
backward-compatibility in pyspecific.py
[why] spinix 5.3 changed locale.translators from a defaultdict(gettext.NullTranslations) to a dict, which leads to failure of pyspecific.py. Use sphinx.locale._ as gettext to fix the issue.
---
Doc/tools/extensions/pyspecific.py | 8 ++++----
Misc/NEWS.d/next/Documentation/2022-10-19-07-15-52.gh-issue-98366.UskMXF.rst | 1 +
2 files changed, 5 insertions(+), 4 deletions(-)
--- a/Doc/tools/extensions/pyspecific.py
+++ b/Doc/tools/extensions/pyspecific.py
@@ -26,7 +26,7 @@ try:
from sphinx.errors import NoUri
except ImportError:
from sphinx.environment import NoUri
-from sphinx.locale import translators
+from sphinx.locale import _ as sphinx_gettext
from sphinx.util import status_iterator, logging
from sphinx.util.nodes import split_explicit_title
from sphinx.writers.text import TextWriter, TextTranslator
@@ -109,7 +109,7 @@ class ImplementationDetail(Directive):
def run(self):
self.assert_has_content()
pnode = nodes.compound(classes=['impl-detail'])
- label = translators['sphinx'].gettext(self.label_text)
+ label = sphinx_gettext(self.label_text)
content = self.content
add_text = nodes.strong(label, label)
self.state.nested_parse(content, self.content_offset, pnode)
@@ -257,7 +257,7 @@ class AuditEvent(Directive):
else:
args = []
- label = translators['sphinx'].gettext(self._label[min(2, len(args))])
+ label = sphinx_gettext(self._label[min(2, len(args))])
text = label.format(name="``{}``".format(name),
args=", ".join("``{}``".format(a) for a in args if a))
@@ -436,7 +436,7 @@ class DeprecatedRemoved(Directive):
else:
label = self._removed_label
- label = translators['sphinx'].gettext(label)
+ label = sphinx_gettext(label)
text = label.format(deprecated=self.arguments[0], removed=self.arguments[1])
if len(self.arguments) == 3:
inodes, messages = self.state.inline_text(self.arguments[2],
--- /dev/null
+++ b/Misc/NEWS.d/next/Documentation/2022-10-19-07-15-52.gh-issue-98366.UskMXF.rst
@@ -0,0 +1 @@
+Use sphinx.locale._ as the gettext function in pyspecific.py.

3
Python-3.11.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a57dc82d77358617ba65b9841cee1e3b441f386c3789ddc0676eca077f2951c3
size 19819768

16
Python-3.11.0.tar.xz.asc Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEz9yiRbEEPPKl+Xhl/+h0BBaL2EcFAmNW0BsACgkQ/+h0BBaL
2EfljQ//YbRPRLgFEqbUYDoA65Hy5+ztg2bD6UUAVHS29G7exX9hNqAuk2uQZnlF
3CIz7NjtJFb7a8Bxg6j/OjYnwTojZKeNR/wwZa7MRJlZv7YZGKdjYlt21eCQMbjN
SHlmZ/P1jTHifb/9x2l6XRqn8IXwvJq1NduNoiuNzSQ16oX3TwbLC+vFRBxFqv48
E6qJlpplzQz0HxgWD+R3jHx2YQzD/Bc+kA+l4NIP2CWX5yK2R3Q63sFi8GmzP6gZ
auFNDGz5pGuwTsblr8Ps0LeqnPtX2UqzAIM5AK5kXW6yn0bn93EXNT0OGF+zzccV
8dit/0C1gqg6iPNRCijWpyIzXUF22Wn8+32E77Xfr+uSPW5e0yuA9VWoO5D2Bf/i
sna98iE3wLJHGgrn1quAdFjCEPSAr9rNaEyvqF9QEjuCoa5giqwk+HIjEiLwNYcy
5MsfFxj5OQT1wB1zWs08qij4wXO0bPylnIK1a6t8OlGF3M4FKX8PK0zK4HsKPcje
DiyjdM3ylrODWk2BjvxUp48gMvmibeSZydKKJDjflHr7MDaJPInZk24LQXw6ZrVH
g+E726C1q69sWSbZ2Wvc70CGcIfzeSFX0rQMGYvyJAQHTo4kixOjRJQpTxGw2VkE
aQrgQC/JGhV+mNWfK+/QiypF8povzlwaQwpoyOczvg83rAvNLAs=
=LZQi
-----END PGP SIGNATURE-----

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:25b35cc7d82c5ad34d867b179a1c1695d129be5ed14a21e46b6b7f2350a8b490
size 19828340

View File

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEz9yiRbEEPPKl+Xhl/+h0BBaL2EcFAmMeOSQACgkQ/+h0BBaL
2EcrTA//USzDkebYcAJ1jcb1diiV9JJd7Znm4l7rwb/TKimY82gN1ev9R1/fkmOk
KaRhn5Ss23lm5IdwbJNL1dhrx9DdtsW3oBzaT+pchSVXu0qVokQ0XFVvWzEqwiit
2K6JOlcVyMV8QnBBJPAC+/HN1pjZGQESk/HoP7ESqQUytRkieddjO/cnJ/m36oMJ
YUVoHS1sQVrRHQU3C1RSZ+DF1sdCjzy1ZxfKMVz73gBjLRQ5MiWYIp7ryDtNMZ7F
Ws8m+5WXVhWE2hniMvCVDN25vHIan+9l4hjT01kLh7Ei/QJ6t2GrOtHagMDhFcS1
Lhq/7flMGpLjhpNNtzAXSPhMZDDxIpyIZu4XwxmQAXFkhCm6H2RBo6OrGWDaOT+V
6kfVCUky+v7oKHs19xm+UilNBIzd4DMNKP2Q9MYcqnR+aI/ggMG7k7KZ3gpPKrQI
x8u6PGFl9vUsRHiUxXYuIM+FO9LAYIFskpWy/CW7fZ29iAkeMjRzhcyS/A8exaae
YA+z4dqgnYLQqMUX3aK3kzAreKAncFkYdNmnv7YMUUSM5J5fvIN2bG/oJ2oti0sk
o1WhVr3ygizeqAOhw0bd2N84xqee+ky18fl+FkauyzEPh7vdI+OQWrBAuJF7YZKR
sHTSxdzPBjaXijLXriZIo1YRXc7N7jd05Cq8R95dzxC9BZjOOfI=
=KvNZ
-----END PGP SIGNATURE-----

View File

@ -29,7 +29,7 @@
Create a Python.framework rather than a traditional Unix install. Optional
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -6636,7 +6636,7 @@ C API
@@ -6768,7 +6768,7 @@ C API
- bpo-40939: Removed documentation for the removed ``PyParser_*`` C API.
- bpo-43795: The list in :ref:`stable-abi-list` now shows the public name

View File

@ -1,3 +1,83 @@
-------------------------------------------------------------------
Tue Oct 25 08:39:47 UTC 2022 - Matej Cepl <mcepl@suse.com>
- Update to 3.11.0 (overall changes from 3.10.*):
- General changes
- PEP 657 -- Include Fine-Grained Error Locations in
Tracebacks
- PEP 654 -- Exception Groups and except*
- PEP 680 -- tomllib: Support for Parsing TOML in the
Standard Library
- gh-90908 -- Introduce task groups to asyncio
- gh-34627 -- Atomic grouping ((?>...)) and possessive
quantifiers (*+, ++, ?+, {m,n}+) are now supported in
regular expressions.
- The Faster CPython Project is already yielding some
exciting results. Python 3.11 is up to 10-60% faster than
Python 3.10. On average, we measured a 1.22x speedup on the
standard benchmark suite. See Faster CPython for details.
- Typing and typing language changes
- PEP 673 -- Self Type
- PEP 646 -- Variadic Generics
- PEP 675 -- Arbitrary Literal String Type
- PEP 655 -- Marking individual TypedDict items as required
or potentially-missing
- PEP 681 -- Data Class Transforms
- (just changes from 3.11.0rc2):
- Fix multiplying a list by an integer (list *= int): detect
the integer overflow when the new allocated length is close
to the maximum size. Issue reported by Jordan Limor. Patch by
Victor Stinner.
- On Linux the multiprocessing module returns to using
filesystem backed unix domain sockets for communication
with the forkserver process instead of the Linux abstract
socket namespace. Only code that chooses to use the
“forkserver” start method is affected. Abstract sockets have
no permissions and could allow any user on the system in the
same network namespace (often the whole system) to inject
code into the multiprocessing forkserver process. This was
a potential privilege escalation. Filesystem based socket
permissions restrict this to the forkserver process user as
was the default in Python 3.8 and earlier. This prevents
Linux CVE-2022-42919.
- Fix an issue where several frame objects could be backed by
the same interpreter frame, possibly leading to corrupted
memory and hard crashes of the interpreter.
- Fix possible data corruption or crashes when accessing the
f_back member of newly-created generator or coroutine frames.
- Fix a crash occurring when PyEval_GetFrame() is called while
the topmost Python frame is in a partially-initialized state.
- Fix command line parsing: reject -X int_max_str_digits option
with no value (invalid) when the PYTHONINTMAXSTRDIGITS
environment variable is set to a valid limit. Patch by Victor
Stinner.
- Fix undefined behaviour in _testcapimodule.c.
- When ValueError is raised if an integer is larger than the
limit, mention the sys.set_int_max_str_digits() function in
the error message. Patch by Victor Stinner.
- Correctly raise SyntaxError on exception groups (PEP 654) on
python versions prior to 3.11
- Document some places where an assignment expression needs
parentheses.
- Update the bundled copies of pip and setuptools to versions
22.3 and 65.5.0 respectively.
- fix Flag to use boundary CONFORM
- This restores previous Flag behavior of allowing flags with
non-sequential values to be combined; e.g.
- class Skip(Flag): TWO = 2 EIGHT = 8
- Skip.TWO | Skip.EIGHT -> <Skip.TWO|EIGHT: 10>
- Fix ! in c domain ref target syntax via a conf.py patch, so
it works as intended to disable ref target resolution.
- Update tutorial introduction output to use 3.10+ SyntaxError
invalid range.
-------------------------------------------------------------------
Fri Oct 21 10:14:03 UTC 2022 - Matej Cepl <mcepl@suse.com>
- Add 98437-sphinx.locale._-as-gettext-in-pyspecific.patch to
allow building of documentation with the latest Sphinx 5.3.0
(gh#python/cpython#98366).
-------------------------------------------------------------------
Thu Sep 15 08:43:07 UTC 2022 - Matej Cepl <mcepl@suse.com>

View File

@ -103,7 +103,7 @@ Obsoletes: python39%{?1:-%{1}}
%define dynlib() %{sitedir}/lib-dynload/%{1}.cpython-%{abi_tag}-%{archname}-%{_os}%{?_gnu}%{?armsuffix}.so
%bcond_without profileopt
Name: %{python_pkg_name}%{psuffix}
Version: 3.11.0rc2
Version: 3.11.0
Release: 0
Summary: Python 3 Interpreter
License: Python-2.0
@ -166,6 +166,9 @@ Patch35: fix_configure_rst.patch
# PATCH-FIX-UPSTREAM support-expat-CVE-2022-25236-patched.patch jsc#SLE-21253 mcepl@suse.com
# Makes Python resilient to changes of API of libexpat
Patch36: support-expat-CVE-2022-25236-patched.patch
# PATCH-FIX-UPSTREAM 98437-sphinx.locale._-as-gettext-in-pyspecific.patch gh#python/cpython#98366 mcepl@suse.com
# this patch makes things totally awesome
Patch37: 98437-sphinx.locale._-as-gettext-in-pyspecific.patch
BuildRequires: autoconf-archive
BuildRequires: automake
BuildRequires: fdupes
@ -432,6 +435,7 @@ other applications.
%endif
%patch35 -p1
%patch36 -p1
%patch37 -p1
# drop Autoconf version requirement
sed -i 's/^AC_PREREQ/dnl AC_PREREQ/' configure.ac