forked from pool/python313
- Update to 3.13.0a2:
Python 3.13.0 alpha 2¶
- Core and Builtins:
- Don’t include comments in f-string debug expressions. Patch
by Pablo Galindo
- Slightly optimize the Tier 2 (uop) interpreter by only
loading oparg and operand when needed. Also double the
trace size limit again, to 512 this time.
- Change docstrings of __dict__ and __weakref__.
- Lower the max parser stack depth to 1000 under WASI debug
builds.
- When Python is built in debug mode, set the C recursion
limit to 500 instead of 1500. A debug build is likely built
with low optimization level which implies higher stack
memory usage than a release build. Patch by Victor Stinner.
- Enable translating unspecialized FOR_ITER to Tier 2.
- Make hashlib related modules thread-safe without the GIL
- Deprecate assignment to a function’s __code__ field when
the new code object is of a mismatched type (e.g., from a
generator to a plain function).
- Raise exception if frame.clear() is called on a suspended
frame.
- Implement native thread ids for GNU KFreeBSD.
- Use exponential backoff to reduce the number of failed tier
2 optimization attempts by over 99%.
- Joining a thread now ensures the underlying OS thread has
exited. This is required for safer fork() in multi-threaded
processes.
- Make sure that tier 2 traces are de-optimized if the code
is instrumented
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python313?expand=0&rev=2
This commit is contained in:
@@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:f0281bf22cc00414361c14fc9197183e7eb2eabb729656b69442224fbb63eecb
|
|
||||||
size 20137588
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQKTBAABCgB9FiEEcWlgX2LHUTVtBUomqCHmgOX6YwUFAmUpBatfFIAAAAAALgAo
|
|
||||||
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDcx
|
|
||||||
Njk2MDVGNjJDNzUxMzU2RDA1NEEyNkE4MjFFNjgwRTVGQTYzMDUACgkQqCHmgOX6
|
|
||||||
YwWAYxAAjxWg+jy/zUiBeZQ8VeJDQbhGmizLkEKVG1IsgMfNRcD9LjJTpD66iR0f
|
|
||||||
UzpTXmy54RCBdPjD6LobLuOW0Obktgi+zzOCA+rlxNL21/ejFF6+9+NCMHOShzac
|
|
||||||
Lo1YoyTxgCfegbEzBObubOUJ5CC0TsMqZkAx6F7NprALLoza6mydl97VEpa/OVob
|
|
||||||
RLGDPKyPQjt/Q89CdI9epaAttACYJudKO0RQVAjoZ6M+BwAtJvL2sthzDXQHZh3Y
|
|
||||||
d8K+7EbCte4EkOQCCCgi7t3faneDiTgzIF+qr1AEJFynmkHYlqcSyuNQ3jFCcTZp
|
|
||||||
iHZXoYY/WFwTVu2/TbT5RC/fAO/T+BGQGxdhbTajQbFHng/ERvx7Pm3+7DX3Ph2j
|
|
||||||
P19fNHLhQJwL/1XoTjOvolMKKgQ549cYXwhs3Cb1GydzETGAxo8sStFzz66G1TKc
|
|
||||||
3AtDkLJvaFzJPmpWkWGC4Dq+BrPRrUGZoKt6OnYZwDCjUhGA/PVxWQIGNLjMnZw6
|
|
||||||
1HtY36ma27jU3cETaGRPMbuT7rG9a67s5clr1kQhxsThx9a3i8eskzg8FpyS6R/+
|
|
||||||
m88RLSEwYyF0uV6xvXhtWoTTRFjXglDzPM0l0gssdXwrcmeIMgmfrY9LU0NqBAxl
|
|
||||||
+hKQ7oCivy4GoFaOdmvFT+H4UPa4ZGlEIZIVGUUm1m8DhU6nclA=
|
|
||||||
=ZKN0
|
|
||||||
-----END PGP SIGNATURE-----
|
|
||||||
3
Python-3.13.0a2.tar.xz
Normal file
3
Python-3.13.0a2.tar.xz
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:b6d46b44190c4c02421eb69a042d16b0c55481bdda818c6c416dc244113a9c2d
|
||||||
|
size 20244640
|
||||||
18
Python-3.13.0a2.tar.xz.asc
Normal file
18
Python-3.13.0a2.tar.xz.asc
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQKTBAABCgB9FiEEcWlgX2LHUTVtBUomqCHmgOX6YwUFAmVd5DFfFIAAAAAALgAo
|
||||||
|
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDcx
|
||||||
|
Njk2MDVGNjJDNzUxMzU2RDA1NEEyNkE4MjFFNjgwRTVGQTYzMDUACgkQqCHmgOX6
|
||||||
|
YwXX6Q/+LJMSSTRUCTPY4ZBsMqZRJCZDbo7vCVedHwOPKT5PiID9tKQ/wrpPX3at
|
||||||
|
mBSQ4RD35WwuBidDMAz4WT5UcK/bWQbv+ZKRIPPW8P4YpgTae+7lpOgD1R48yUdB
|
||||||
|
XNxZ1BO1zl127ZajpO0MkGBcgQv0Yz+juVNfPxwLCRVJPRg5sl03BfnmN+GBC+XC
|
||||||
|
cdEYHmcOYZELwZZfQZQrUkh+sybFfM0hAKvaFIXnzA7VxHDR0qTh/1xf6ekQmXZq
|
||||||
|
2qpAxy0C5Eey2X1VZevl1Gk76Lv8cE5NL8wrtMMDTJNAT9S5dZR4rdcCaPTfYQUN
|
||||||
|
WI3FvKGeWMFuVffxXXv+YTHl1KitePPUhpsawEjBgF+5n6f5PWgDBL2tF0aKd+Mn
|
||||||
|
dE9EdCFoe0iPeuPTJqQ3zpIVP8LmFnKuZePCVIyLigaWclbLYFxttp9N+wnjTvAt
|
||||||
|
1kk4olNMJwFr6YP9o0pyrE/NVPOmGhG5P30TmDToMIiolDwYaeFiKdC/HXOFD0zZ
|
||||||
|
25HowszQR7mePVr7bBgd+TZRcfc/nfkfVti0JxqPsvOX/e6PmhLS+YgqgEH2fYtl
|
||||||
|
JpNVhc2AmMfCSK2/XxiT3VAJhBr3d9NneUJUV9FLkHZL2miY5MfGUUHFRJhDxj/k
|
||||||
|
DyM7AT9EKNNnlV/sZWY4SO13Jo0QsyzNbRltWkou5CZVNBUkclI=
|
||||||
|
=R8U5
|
||||||
|
-----END PGP SIGNATURE-----
|
||||||
@@ -13,10 +13,8 @@ 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.13.0a1/Doc/library/ensurepip.rst
|
--- a/Doc/library/ensurepip.rst
|
||||||
===================================================================
|
+++ b/Doc/library/ensurepip.rst
|
||||||
--- Python-3.13.0a1.orig/Doc/library/ensurepip.rst
|
|
||||||
+++ Python-3.13.0a1/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 +53,8 @@ Index: Python-3.13.0a1/Doc/library/ensurepip.rst
|
|||||||
.. audit-event:: ensurepip.bootstrap root ensurepip.bootstrap
|
.. audit-event:: ensurepip.bootstrap root ensurepip.bootstrap
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
Index: Python-3.13.0a1/Lib/ensurepip/__init__.py
|
--- a/Lib/ensurepip/__init__.py
|
||||||
===================================================================
|
+++ b/Lib/ensurepip/__init__.py
|
||||||
--- Python-3.13.0a1.orig/Lib/ensurepip/__init__.py
|
|
||||||
+++ Python-3.13.0a1/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 +117,8 @@ Index: Python-3.13.0a1/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.13.0a1/Lib/test/test_ensurepip.py
|
--- a/Lib/test/test_ensurepip.py
|
||||||
===================================================================
|
+++ b/Lib/test/test_ensurepip.py
|
||||||
--- Python-3.13.0a1.orig/Lib/test/test_ensurepip.py
|
|
||||||
+++ Python-3.13.0a1/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 +137,9 @@ Index: Python-3.13.0a1/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.13.0a1/Makefile.pre.in
|
--- a/Makefile.pre.in
|
||||||
===================================================================
|
+++ b/Makefile.pre.in
|
||||||
--- Python-3.13.0a1.orig/Makefile.pre.in
|
@@ -1976,7 +1976,7 @@ install: @FRAMEWORKINSTALLFIRST@ commoni
|
||||||
+++ Python-3.13.0a1/Makefile.pre.in
|
|
||||||
@@ -1938,7 +1938,7 @@ install: @FRAMEWORKINSTALLFIRST@ commoni
|
|
||||||
install|*) ensurepip="" ;; \
|
install|*) ensurepip="" ;; \
|
||||||
esac; \
|
esac; \
|
||||||
$(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
|
$(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
|
||||||
@@ -156,7 +148,7 @@ Index: Python-3.13.0a1/Makefile.pre.in
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
.PHONY: altinstall
|
.PHONY: altinstall
|
||||||
@@ -1949,7 +1949,7 @@ altinstall: commoninstall
|
@@ -1987,7 +1987,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 +157,7 @@ Index: Python-3.13.0a1/Makefile.pre.in
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
.PHONY: commoninstall
|
.PHONY: commoninstall
|
||||||
Index: Python-3.13.0a1/Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
|
|
||||||
===================================================================
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ Python-3.13.0a1/Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
|
+++ b/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`.
|
||||||
|
|||||||
@@ -1,13 +1,10 @@
|
|||||||
---
|
---
|
||||||
Doc/using/configure.rst | 2 --
|
Misc/NEWS | 2 +-
|
||||||
Misc/NEWS | 2 +-
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
2 files changed, 1 insertion(+), 3 deletions(-)
|
|
||||||
|
|
||||||
Index: Python-3.13.0a1/Misc/NEWS
|
--- a/Misc/NEWS
|
||||||
===================================================================
|
+++ b/Misc/NEWS
|
||||||
--- Python-3.13.0a1.orig/Misc/NEWS
|
@@ -13972,7 +13972,7 @@ C API
|
||||||
+++ Python-3.13.0a1/Misc/NEWS
|
|
||||||
@@ -13324,7 +13324,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
|
||||||
|
|||||||
@@ -2,11 +2,9 @@
|
|||||||
Makefile.pre.in | 7 +++++++
|
Makefile.pre.in | 7 +++++++
|
||||||
1 file changed, 7 insertions(+)
|
1 file changed, 7 insertions(+)
|
||||||
|
|
||||||
Index: Python-3.13.0a1/Makefile.pre.in
|
--- a/Makefile.pre.in
|
||||||
===================================================================
|
+++ b/Makefile.pre.in
|
||||||
--- Python-3.13.0a1.orig/Makefile.pre.in
|
@@ -1375,11 +1375,18 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \
|
||||||
+++ Python-3.13.0a1/Makefile.pre.in
|
|
||||||
@@ -1352,11 +1352,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) \
|
||||||
|
|||||||
@@ -2,11 +2,9 @@
|
|||||||
Lib/test/test_posix.py | 2 +-
|
Lib/test/test_posix.py | 2 +-
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
Index: Python-3.13.0a1/Lib/test/test_posix.py
|
--- a/Lib/test/test_posix.py
|
||||||
===================================================================
|
+++ b/Lib/test/test_posix.py
|
||||||
--- Python-3.13.0a1.orig/Lib/test/test_posix.py
|
@@ -433,7 +433,7 @@ class PosixTester(unittest.TestCase):
|
||||||
+++ Python-3.13.0a1/Lib/test/test_posix.py
|
|
||||||
@@ -431,7 +431,7 @@ class PosixTester(unittest.TestCase):
|
|
||||||
def test_posix_fadvise(self):
|
def test_posix_fadvise(self):
|
||||||
fd = os.open(os_helper.TESTFN, os.O_RDONLY)
|
fd = os.open(os_helper.TESTFN, os.O_RDONLY)
|
||||||
try:
|
try:
|
||||||
|
|||||||
@@ -1,3 +1,459 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Nov 25 16:10:53 UTC 2023 - Matej Cepl <mcepl@cepl.eu>
|
||||||
|
|
||||||
|
- Update to 3.13.0a2:
|
||||||
|
|
||||||
|
Python 3.13.0 alpha 2¶
|
||||||
|
- Core and Builtins:
|
||||||
|
- Don’t include comments in f-string debug expressions. Patch
|
||||||
|
by Pablo Galindo
|
||||||
|
- Slightly optimize the Tier 2 (uop) interpreter by only
|
||||||
|
loading oparg and operand when needed. Also double the
|
||||||
|
trace size limit again, to 512 this time.
|
||||||
|
- Change docstrings of __dict__ and __weakref__.
|
||||||
|
- Lower the max parser stack depth to 1000 under WASI debug
|
||||||
|
builds.
|
||||||
|
- When Python is built in debug mode, set the C recursion
|
||||||
|
limit to 500 instead of 1500. A debug build is likely built
|
||||||
|
with low optimization level which implies higher stack
|
||||||
|
memory usage than a release build. Patch by Victor Stinner.
|
||||||
|
- Enable translating unspecialized FOR_ITER to Tier 2.
|
||||||
|
- Make hashlib related modules thread-safe without the GIL
|
||||||
|
- Deprecate assignment to a function’s __code__ field when
|
||||||
|
the new code object is of a mismatched type (e.g., from a
|
||||||
|
generator to a plain function).
|
||||||
|
- Raise exception if frame.clear() is called on a suspended
|
||||||
|
frame.
|
||||||
|
- Implement native thread ids for GNU KFreeBSD.
|
||||||
|
- Use exponential backoff to reduce the number of failed tier
|
||||||
|
2 optimization attempts by over 99%.
|
||||||
|
- Joining a thread now ensures the underlying OS thread has
|
||||||
|
exited. This is required for safer fork() in multi-threaded
|
||||||
|
processes.
|
||||||
|
- Make sure that tier 2 traces are de-optimized if the code
|
||||||
|
is instrumented
|
||||||
|
- Specialize slot loads and stores for _Py_T_OBJECT as well
|
||||||
|
as Py_T_OBJECT_EX
|
||||||
|
- Speed up BaseExceptionGroup.derive(),
|
||||||
|
BaseExceptionGroup.subgroup(), and
|
||||||
|
BaseExceptionGroup.split() by changing how they parse
|
||||||
|
passed arguments.
|
||||||
|
- Fix runtime crash when some error happens in opcode
|
||||||
|
LOAD_FROM_DICT_OR_DEREF.
|
||||||
|
- Add support for sharing tuples between interpreters using
|
||||||
|
the cross-interpreter API. Patch by Anthony Shaw.
|
||||||
|
- The oparg of YIELD_VALUE is now 1 if the instruction
|
||||||
|
is part of a yield-from or await, and 0 otherwise. The
|
||||||
|
SUSPENDED frame state is now split into SUSPENDED and
|
||||||
|
SUSPENDED_YIELD_FROM. This simplifies the code in
|
||||||
|
_PyGen_yf.
|
||||||
|
- Merge the Tier 1 (bytecode) and Tier 2 (micro-ops)
|
||||||
|
interpreters together, moving the Tier 2 interpreter
|
||||||
|
loop and switch into _PyEval_EvalFrameDefault() in
|
||||||
|
Python/ceval.c. The Python/executor.c file is gone. Also
|
||||||
|
the TIER_ONE and TIER_TWO macros are now handled by the
|
||||||
|
code generator. Beware! This changes the environment
|
||||||
|
variables to enable micro-ops and their debugging to
|
||||||
|
PYTHON_UOPS and PYTHON_LLTRACE.
|
||||||
|
- Speed up Traceback object creation by lazily compute the
|
||||||
|
line number. Patch by Pablo Galindo
|
||||||
|
- Allow type comments in parenthesized with statements
|
||||||
|
- Add support for sharing floats between interpreters using
|
||||||
|
the cross-interpreter API. Patch by Anthony Shaw.
|
||||||
|
- Add support for sharing of True and False between
|
||||||
|
interpreters using the cross-interpreter API. Patch by
|
||||||
|
Anthony Shaw.
|
||||||
|
- Fix a bug where iso2022_jp_3 and iso2022_jp_2004 codecs
|
||||||
|
read out of bounds
|
||||||
|
- Fix an issue in the codeop that was causing SyntaxError
|
||||||
|
exceptions raised in the presence of invalid syntax to not
|
||||||
|
contain precise error messages. Patch by Pablo Galindo
|
||||||
|
- Fix a bug that was causing SyntaxWarning to appear twice
|
||||||
|
when parsing if invalid syntax is encountered later. Patch
|
||||||
|
by Pablo galindo
|
||||||
|
- Added a new environment variable PYTHON_FROZEN_MODULES. It
|
||||||
|
determines whether or not frozen modules are ignored by
|
||||||
|
the import machinery, equivalent of the -X frozen_modules
|
||||||
|
command-line option.
|
||||||
|
- Remove oparg from YIELD_VALUE. Change oparg of RESUME to
|
||||||
|
include information about the except-depth. These changes
|
||||||
|
make it possible to simplify the code in generator close.
|
||||||
|
- Fix a regression that prevented jumping across is None and
|
||||||
|
is not None when debugging. Patch by Savannah Ostrowski.
|
||||||
|
- Show source lines in tracebacks when using the -c option
|
||||||
|
when running Python. Patch by Pablo Galindo
|
||||||
|
- Fix a bug where a global declaration in an except block is
|
||||||
|
rejected when the global is used in the else block.
|
||||||
|
- Fix error messages for indented blocks with functions
|
||||||
|
and classes with generic type parameters. Patch by Pablo
|
||||||
|
Galindo
|
||||||
|
- Remove unnecessary instruction pointer updates before
|
||||||
|
returning from frames.
|
||||||
|
- Correctly display the traceback for MemoryError exceptions
|
||||||
|
using the traceback module. Patch by Pablo Galindo
|
||||||
|
- Fixed crash due to improperly initialized static
|
||||||
|
MemoryError in subinterpreter.
|
||||||
|
- Return NULL for PyTrace_RETURN events caused by an
|
||||||
|
exception
|
||||||
|
- Fix argument parsing by _PyArg_UnpackKeywordsWithVararg
|
||||||
|
for functions defining pos-or-keyword, vararg, and kw-only
|
||||||
|
parameters.
|
||||||
|
- Replace prev_instr on the interpreter frame by instr_ptr
|
||||||
|
which points to the beginning of the instruction that
|
||||||
|
is currently executing (or will execute once the frame
|
||||||
|
resumes).
|
||||||
|
- Allow the repl to show source code and complete
|
||||||
|
tracebacks. Patch by Pablo Galindo
|
||||||
|
- Add PYTHON_PRESITE=package.module to import a module
|
||||||
|
early in the interpreter lifecycle before site.py is
|
||||||
|
executed. Python needs to be built in debug mode for this
|
||||||
|
option to exist.
|
||||||
|
- Implement biased reference counting in --disable-gil
|
||||||
|
builds.
|
||||||
|
- Fix regression in Python 3.12 where
|
||||||
|
types.CodeType.replace() would produce a broken code object
|
||||||
|
if called on a module or class code object that contains a
|
||||||
|
comprehension. Patch by Jelle Zijlstra.
|
||||||
|
- Removed chained classmethod descriptors (introduced in
|
||||||
|
bpo-19072). This can no longer be used to wrap other
|
||||||
|
descriptors such as property. The core design of this
|
||||||
|
feature was flawed and caused a number of downstream
|
||||||
|
problems. To “pass-through” a classmethod, consider using
|
||||||
|
the __wrapped__ attribute that was added in Python 3.10.
|
||||||
|
- Use local events for opcode tracing
|
||||||
|
- Add mimalloc memory allocator support.
|
||||||
|
- When PyConfig.stdlib_dir is explicitly set, it’s now
|
||||||
|
respected and won’t be overridden by PyConfig.home.
|
||||||
|
- Fix incorrect SystemError about AST constructor recursion
|
||||||
|
depth mismatch.
|
||||||
|
- Improve error message for unterminated strings with
|
||||||
|
escapes.
|
||||||
|
- Improved error messages for elif/else statements not
|
||||||
|
matching any valid statements. Patch by Jeremiah Vivian.
|
||||||
|
- Library
|
||||||
|
- Fix SystemError in the TextIOWrapper constructor with
|
||||||
|
non-encodable “errors” argument in non-debug mode.
|
||||||
|
- Added the NI_IDN constant to the socket module when present
|
||||||
|
in C at build time for use with socket.getnameinfo().
|
||||||
|
- Issue warning message instead of having RuntimeError be
|
||||||
|
displayed when event loop has already been closed at
|
||||||
|
StreamWriter.__del__().
|
||||||
|
- Fix crashes in io.TextIOWrapper.reconfigure() when pass
|
||||||
|
invalid arguments, e.g. non-string encoding.
|
||||||
|
- curses: restore wide character support (including
|
||||||
|
curses.unget_wch() and get_wch()) on macOS, which was
|
||||||
|
unavailable due to a regression in Python 3.12.
|
||||||
|
- contextlib.suppress now supports suppressing exceptions
|
||||||
|
raised as part of a BaseExceptionGroup, in addition to the
|
||||||
|
recent support for ExceptionGroup.
|
||||||
|
- The mmap.mmap class now has an seekable() method that
|
||||||
|
can be used where it requires a file-like object with
|
||||||
|
seekable and the seek() method return the new absolute
|
||||||
|
position. Patch by Donghee Na.
|
||||||
|
- Remove posix.fallocate() under WASI as the underlying
|
||||||
|
posix_fallocate() is not available in WASI preview2.
|
||||||
|
- Fix truncating arguments on an embedded null character in
|
||||||
|
os.putenv() and os.unsetenv() on Windows.
|
||||||
|
- wsgiref.util.is_hop_by_hop() is now exposed correctly in
|
||||||
|
__all__.
|
||||||
|
- Avoid executing the default function in cmd.Cmd in an
|
||||||
|
except block
|
||||||
|
- Fix doctest for SyntaxError not-builtin subclasses.
|
||||||
|
- Add extra argument validation for alias command in pdb
|
||||||
|
- time: Make time.clock_gettime() and time.clock_gettime_ns()
|
||||||
|
functions up to 2x faster by faster calling
|
||||||
|
convention. Patch by Victor Stinner.
|
||||||
|
- Call loop exception handler for exceptions in
|
||||||
|
client_connected_cb of asyncio.start_server() so that
|
||||||
|
applications can handle it. Patch by Kumar Aditya.
|
||||||
|
- Fix reference leaks in bind_class() and bind_all() methods
|
||||||
|
of tkinter widgets.
|
||||||
|
- asyncio.loop.create_unix_server() will now automatically
|
||||||
|
remove the Unix socket when the server is closed.
|
||||||
|
- Added io.text_encoding(), io.DEFAULT_BUFFER_SIZE, and
|
||||||
|
io.IncrementalNewlineDecoder to io.__all__.
|
||||||
|
- Remove the code to set the REMOTE_HOST header from wsgiref
|
||||||
|
module, as it is unreachable. This header is used for
|
||||||
|
performance reasons, which is not necessary in the wsgiref
|
||||||
|
module.
|
||||||
|
- Speed up pathlib.PurePath.relative_to() and
|
||||||
|
is_relative_to().
|
||||||
|
- Fixed typo in math.sumprod().
|
||||||
|
- Remove mention of not supported “vsapi” element type
|
||||||
|
in tkinter.ttk.Style.element_create(). Add tests for
|
||||||
|
element_create() and other ttk.Style methods. Add examples
|
||||||
|
for element_create() in the documentation.
|
||||||
|
- Add show_group parameter to
|
||||||
|
traceback.format_exception_only(), which allows to format
|
||||||
|
ExceptionGroup instances.
|
||||||
|
- Another attempt at fixing asyncio.Server.wait_closed(). It
|
||||||
|
now blocks until both conditions are true: the server is
|
||||||
|
closed, and there are no more active connections. (This
|
||||||
|
means that in some cases where in 3.12.0 this function
|
||||||
|
would incorrectly have returned immediately, it will now
|
||||||
|
block; in particular, when there are no active connections
|
||||||
|
but the server hasn’t been closed yet.)
|
||||||
|
- Optimize recursive wildcards in pathlib.
|
||||||
|
- Fix time not checking for errors when initializing.
|
||||||
|
- Add error checking during _socket module init.
|
||||||
|
- Fix _blake2 not checking for errors when initializing.
|
||||||
|
- Fix select not checking for errors when initializing.
|
||||||
|
- Fix ssl not checking for errors when initializing.
|
||||||
|
- Fix crash in io.BytesIO.getbuffer() called repeatedly for
|
||||||
|
empty BytesIO.
|
||||||
|
- Postpone removal version for locale.getdefaultlocale() to
|
||||||
|
Python 3.15.
|
||||||
|
- Fix doctest output comparison for exceptions with notes.
|
||||||
|
- Fix invalid state handling in asyncio.TaskGroup and
|
||||||
|
asyncio.Timeout. They now raise proper RuntimeError if they
|
||||||
|
are improperly used and are left in consistent state after
|
||||||
|
this.
|
||||||
|
- Make turtledemo run without default root enabled.
|
||||||
|
- Support alias and convenience vars for pdb completion
|
||||||
|
- Added newline parameter to pathlib.Path.read_text(). Patch
|
||||||
|
by Junya Okabe.
|
||||||
|
- Make pdb enter post-mortem mode even for SyntaxError
|
||||||
|
- Set f_trace_lines = True on all frames upon pdb.set_trace()
|
||||||
|
- Expose the setup and cleanup portions of
|
||||||
|
asyncio.run_forever() as the standalone
|
||||||
|
methods asyncio.run_forever_setup() and
|
||||||
|
asyncio.run_forever_cleanup(). This allows for tighter
|
||||||
|
integration with GUI event loops.
|
||||||
|
- Support setting the asyncio.Runner loop_factory kwarg in
|
||||||
|
unittest.IsolatedAsyncioTestCase
|
||||||
|
- Fix tty.setraw() and tty.setcbreak(): previously they
|
||||||
|
returned partially modified list of the original tty
|
||||||
|
attributes. tty.cfmakeraw() and tty.cfmakecbreak() now make
|
||||||
|
a copy of the list of special characters before modifying
|
||||||
|
it.
|
||||||
|
- Make line number of function breakpoint more precise in pdb
|
||||||
|
- Emit deprecation warning for non-integer numbers in gettext
|
||||||
|
functions and methods that consider plural forms even if
|
||||||
|
the translation was not found.
|
||||||
|
- Ensure that select.kqueue() objects correctly appear as
|
||||||
|
closed in forked children, to prevent operations on an
|
||||||
|
invalid file descriptor.
|
||||||
|
- Add __reduce__ method to IPv6Address in order to keep
|
||||||
|
scope_id
|
||||||
|
- Improve errors for unsupported look-behind patterns. Now
|
||||||
|
re.error is raised instead of OverflowError or RuntimeError
|
||||||
|
for too large width of look-behind pattern.
|
||||||
|
- Add the ipaddress.IPv4Address.ipv6_mapped property, which
|
||||||
|
retuns the IPv4-mapped IPv6 address.
|
||||||
|
- Implement the CLI of the symtable module and improve the
|
||||||
|
repr of Symbol.
|
||||||
|
- Improved error handling in pdb command line interface,
|
||||||
|
making it produce more concise error messages.
|
||||||
|
- Change compileall to only strip the stripdir prefix from .
|
||||||
|
Prthe full path recorded in the compiled .pyc file, when .
|
||||||
|
Prthe prefix matches the start of the full path in its .
|
||||||
|
Prentirety. When the prefix does not match, no stripping .
|
||||||
|
Pris performed and a warning to this effect is displayed .
|
||||||
|
Previously all path components of the stripdir prefix that .
|
||||||
|
Prmatched the full path were removed, while those that did .
|
||||||
|
Prnot match were left alone (including ones interspersed .
|
||||||
|
Prbetween matching components) .
|
||||||
|
- Make the DictProxy and ListProxy types in
|
||||||
|
multiprocessing.managers Generic Alias Types for [] use in
|
||||||
|
typing contexts.
|
||||||
|
- Add glob.translate(). This function converts a pathname
|
||||||
|
with shell-style wildcards to a regular expression.
|
||||||
|
- Define USE_XATTRS on Cygwin so that XATTR-related functions
|
||||||
|
in the os module become available.
|
||||||
|
- New methods mailbox.Maildir.get_info(),
|
||||||
|
mailbox.Maildir.set_info(), mailbox.Maildir.get_flags(),
|
||||||
|
mailbox.Maildir.set_flags(), mailbox.Maildir.add_flag(),
|
||||||
|
mailbox.Maildir.remove_flag(). These methods speed up
|
||||||
|
accessing a message’s info and/or flags and are useful
|
||||||
|
when it is not necessary to access the message’s contents,
|
||||||
|
as when iterating over a Maildir to find messages with
|
||||||
|
specific flags.
|
||||||
|
- Fix returning of empty byte strings after seek in zipfile
|
||||||
|
module
|
||||||
|
- Added a parameter local_exit for code.interact() to
|
||||||
|
prevent exit() and quit from closing sys.stdin and raise
|
||||||
|
SystemExit.
|
||||||
|
- Change the behavior of tkinter.Text.count(). It now always
|
||||||
|
returns an integer if one or less counting options are
|
||||||
|
specified. Previously it could return a single count as a
|
||||||
|
1-tuple, an integer (only if option "update" was specified)
|
||||||
|
or None if no items found. The result is now the same if
|
||||||
|
wantobjects is set to 0.
|
||||||
|
- Switch the storage of the unicode codepoint names to
|
||||||
|
use a different data-structure, a directed acyclic word
|
||||||
|
graph. This makes the unicodedata shared library about 440
|
||||||
|
KiB smaller. Contributed by Carl Friedrich Bolz-Tereick
|
||||||
|
using code from the PyPy project.
|
||||||
|
- Omit the interface scope from an IPv6 address when used as
|
||||||
|
Host header by http.client.
|
||||||
|
- zipinfo now supports the full range of values in the TZ
|
||||||
|
string determined by RFC 8536 and detects all invalid
|
||||||
|
formats. Both Python and C implementations now raise
|
||||||
|
exceptions of the same type on invalid data.
|
||||||
|
- Tests
|
||||||
|
- Make the default value of test.support.infinite_recursion()
|
||||||
|
to be conditional based on whether optimizations were used
|
||||||
|
when compiling the interpreter. This helps with platforms
|
||||||
|
like WASI whose stack size is greatly restricted in debug
|
||||||
|
builds.
|
||||||
|
- Gathering line coverage of standard libraries within the
|
||||||
|
regression test suite is now precise, as well as much
|
||||||
|
faster. Patch by Łukasz Langa.
|
||||||
|
- Make regrtest --verbose3 option compatible with
|
||||||
|
--huntrleaks -jN options. The ./python -m test -j1 -R 3:3
|
||||||
|
--verbose3 command now works as expected. Patch by Victor
|
||||||
|
Stinner.
|
||||||
|
- Remove no longer used functions run_unittest() and
|
||||||
|
run_doctest() from the test.support module.
|
||||||
|
- Fix regrtest if the SOURCE_DATE_EPOCH environment
|
||||||
|
variable is defined: use the variable value as the random
|
||||||
|
seed. Patch by Victor Stinner.
|
||||||
|
- test_gdb: Fix detection of gdb built without Python
|
||||||
|
scripting support. Patch by Victor Stinner.
|
||||||
|
- Test case matching patterns specified by options --match,
|
||||||
|
--ignore, --matchfile and --ignorefile are now tested in
|
||||||
|
the order of specification, and the last match determines
|
||||||
|
whether the test case be run or ignored.
|
||||||
|
- Add unit test for usercustomize and sitecustomize hooks
|
||||||
|
from site.
|
||||||
|
- Build
|
||||||
|
- Make make regen-unicodedata work for out-of-tree builds of
|
||||||
|
CPython.
|
||||||
|
- Add Tools/build/regen-configure.sh script to regenerate
|
||||||
|
the configure with an Ubuntu container image. The
|
||||||
|
quay.io/tiran/cpython_autoconf:271 container image
|
||||||
|
(tiran/cpython_autoconf) is no longer used. Patch by Victor
|
||||||
|
Stinner.
|
||||||
|
- For wasi-threads, memory is now exported to fix
|
||||||
|
compatibility issues with some wasm runtimes.
|
||||||
|
- AIX 32bit needs -latomic to build the _testcapi extension
|
||||||
|
module.
|
||||||
|
- The errno, md5, resource, winsound, _ctypes_test,
|
||||||
|
_multiprocessing.posixshmem, _scproxy, _stat,
|
||||||
|
_testimportmultiple and _uuid C extensions are now built
|
||||||
|
with the limited C API. Patch by Victor Stinner.
|
||||||
|
- IDLE
|
||||||
|
- Add docstrings to the IDLE debugger module. Fix two
|
||||||
|
bugs: initialize Idb.botframe (should be in Bdb); in
|
||||||
|
Idb.in_rpc_code, check whether prev_frame is None before
|
||||||
|
trying to use it. Greatly expand test_debugger.
|
||||||
|
- Tools/Demos
|
||||||
|
- Argument Clinic now supports the @critical_section
|
||||||
|
directive that instructs Argument Clinic to generate a
|
||||||
|
critical section around the function call, which locks the
|
||||||
|
self object in --disable-gil builds. Patch by Sam Gross.
|
||||||
|
- C API
|
||||||
|
- Add again the private _PyThreadState_UncheckedGet()
|
||||||
|
function as an alias to the new public
|
||||||
|
PyThreadState_GetUnchecked() function. Patch by Victor
|
||||||
|
Stinner.
|
||||||
|
- Restore the removed _PyDict_GetItemStringWithError()
|
||||||
|
function. It is used by numpy. Patch by Victor Stinner.
|
||||||
|
- Restore removed private C API functions, macros and
|
||||||
|
structures which have no simple replacement for now:
|
||||||
|
_PyDict_GetItem_KnownHash()
|
||||||
|
_PyDict_NewPresized()
|
||||||
|
_PyHASH_BITS
|
||||||
|
_PyHASH_IMAG
|
||||||
|
_PyHASH_INF
|
||||||
|
_PyHASH_MODULUS
|
||||||
|
_PyHASH_MULTIPLIER
|
||||||
|
_PyLong_Copy()
|
||||||
|
_PyLong_FromDigits()
|
||||||
|
_PyLong_New()
|
||||||
|
_PyLong_Sign()
|
||||||
|
_PyObject_CallMethodId()
|
||||||
|
_PyObject_CallMethodNoArgs()
|
||||||
|
_PyObject_CallMethodOneArg()
|
||||||
|
_PyObject_CallOneArg()
|
||||||
|
_PyObject_EXTRA_INIT
|
||||||
|
_PyObject_FastCallDict()
|
||||||
|
_PyObject_GetAttrId()
|
||||||
|
_PyObject_Vectorcall()
|
||||||
|
_PyObject_VectorcallMethod()
|
||||||
|
_PyStack_AsDict()
|
||||||
|
_PyThread_CurrentFrames()
|
||||||
|
_PyUnicodeWriter structure
|
||||||
|
_PyUnicodeWriter_Dealloc()
|
||||||
|
_PyUnicodeWriter_Finish()
|
||||||
|
_PyUnicodeWriter_Init()
|
||||||
|
_PyUnicodeWriter_Prepare()
|
||||||
|
_PyUnicodeWriter_PrepareKind()
|
||||||
|
_PyUnicodeWriter_WriteASCIIString()
|
||||||
|
_PyUnicodeWriter_WriteChar()
|
||||||
|
_PyUnicodeWriter_WriteLatin1String()
|
||||||
|
_PyUnicodeWriter_WriteStr()
|
||||||
|
_PyUnicodeWriter_WriteSubstring()
|
||||||
|
_PyUnicode_AsString()
|
||||||
|
_PyUnicode_FromId()
|
||||||
|
_PyVectorcall_Function()
|
||||||
|
_Py_IDENTIFIER()
|
||||||
|
_Py_c_abs()
|
||||||
|
_Py_c_diff()
|
||||||
|
_Py_c_neg()
|
||||||
|
_Py_c_pow()
|
||||||
|
_Py_c_prod()
|
||||||
|
_Py_c_quot()
|
||||||
|
_Py_c_sum()
|
||||||
|
_Py_static_string()
|
||||||
|
_Py_static_string_init()
|
||||||
|
- Add again <ctype.h> and <unistd.h> includes in Python.h,
|
||||||
|
but don’t include them in the limited C API version 3.13
|
||||||
|
and newer. Patch by Victor Stinner.
|
||||||
|
- Add internal-only one-time initialization API: _PyOnceFlag
|
||||||
|
and _PyOnceFlag_CallOnce.
|
||||||
|
- Add PyDict_Pop() and PyDict_PopString() functions:
|
||||||
|
remove a key from a dictionary and optionally return the
|
||||||
|
removed value. This is similar to dict.pop(), but without
|
||||||
|
the default value and not raising KeyError if the key
|
||||||
|
missing. Patch by Stefan Behnel and Victor Stinner.
|
||||||
|
- Rename Py_NOGIL to Py_GIL_DISABLED. Patch by Hugo van
|
||||||
|
Kemenade.
|
||||||
|
- Add PyList_Extend() and PyList_Clear() functions: similar
|
||||||
|
to Python list.extend() and list.clear() methods. Patch by
|
||||||
|
Victor Stinner.
|
||||||
|
- On Windows, Python.h no longer includes the <stddef.h>
|
||||||
|
standard header file. If needed, it should now be included
|
||||||
|
explicitly. Patch by Victor Stinner.
|
||||||
|
- Implement “Python Critical Sections” from PEP 703. These
|
||||||
|
are macros to help replace the GIL with per-object locks in
|
||||||
|
the --disable-gil build of CPython. The macros are no-ops
|
||||||
|
in the default build.
|
||||||
|
- In the limited C API version 3.13, Py_SET_REFCNT() function
|
||||||
|
is now implemented as an opaque function call. Patch by
|
||||||
|
Victor Stinner.
|
||||||
|
- Add PyErr_FormatUnraisable() function.
|
||||||
|
- Move the undocumented private _PyArg functions
|
||||||
|
and _PyArg_Parser structure to internal C API
|
||||||
|
(pycore_modsupport.h). Patch by Victor Stinner.
|
||||||
|
- Support non-ASCII keyword names in
|
||||||
|
PyArg_ParseTupleAndKeywords().
|
||||||
|
- Introduced PyUnstable_PerfTrampoline_CompileCode(),
|
||||||
|
PyUnstable_PerfTrampoline_SetPersistAfterFork() and
|
||||||
|
PyUnstable_CopyPerfMapFile(). These functions allow
|
||||||
|
extension modules to initialize trampolines eagerly, after
|
||||||
|
the application is “warmed up”. This makes it possible to
|
||||||
|
have perf-trampolines running in an always-enabled fashion.
|
||||||
|
- Add the PySys_Audit() function to the limited C API. Patch
|
||||||
|
by Victor Stinner.
|
||||||
|
- Add PyMem_RawMalloc(), PyMem_RawCalloc(),
|
||||||
|
PyMem_RawRealloc() and PyMem_RawFree() to the limited C
|
||||||
|
API. Patch by Victor Stinner.
|
||||||
|
- Functions PyDict_GetItem(), PyDict_GetItemString(),
|
||||||
|
PyMapping_HasKey(), PyMapping_HasKeyString(),
|
||||||
|
PyObject_HasAttr(), PyObject_HasAttrString(), and
|
||||||
|
PySys_GetObject(), which clear all errors occurred
|
||||||
|
during calling the function, report now them using
|
||||||
|
sys.unraisablehook().
|
||||||
|
- Remove redundant C-contiguity check in getargs.c, binascii,
|
||||||
|
ssl and Argument Clinic. Patched by Stefan Krah and Furkan
|
||||||
|
Onder
|
||||||
|
- Adjust patches:
|
||||||
|
- bpo-31046_ensurepip_honours_prefix.patch
|
||||||
|
- fix_configure_rst.patch
|
||||||
|
- python-3.3.0b1-fix_date_time_compiler.patch
|
||||||
|
- python-3.3.0b1-test-posix_fadvise.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Oct 13 17:35:43 UTC 2023 - Daniel Garcia <daniel.garcia@suse.com>
|
Fri Oct 13 17:35:43 UTC 2023 - Daniel Garcia <daniel.garcia@suse.com>
|
||||||
|
|
||||||
|
|||||||
@@ -105,7 +105,7 @@
|
|||||||
%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
|
%bcond_without profileopt
|
||||||
Name: %{python_pkg_name}%{psuffix}
|
Name: %{python_pkg_name}%{psuffix}
|
||||||
Version: 3.13.0a1
|
Version: 3.13.0a2
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Python 3 Interpreter
|
Summary: Python 3 Interpreter
|
||||||
License: Python-2.0
|
License: Python-2.0
|
||||||
|
|||||||
Reference in New Issue
Block a user