- 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:
Matej Cepl 2023-11-25 16:20:58 +00:00 committed by Git OBS Bridge
parent c9d84fa1ca
commit 9bce840ac0
10 changed files with 500 additions and 61 deletions

View File

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

View File

@ -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
View File

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

View 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-----

View File

@ -13,10 +13,8 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
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
Index: Python-3.13.0a1/Doc/library/ensurepip.rst
===================================================================
--- Python-3.13.0a1.orig/Doc/library/ensurepip.rst
+++ Python-3.13.0a1/Doc/library/ensurepip.rst
--- a/Doc/library/ensurepip.rst
+++ b/Doc/library/ensurepip.rst
@@ -59,8 +59,9 @@ is at least as recent as the one availab
By default, ``pip`` is installed into the current virtual environment
(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
.. note::
Index: Python-3.13.0a1/Lib/ensurepip/__init__.py
===================================================================
--- Python-3.13.0a1.orig/Lib/ensurepip/__init__.py
+++ Python-3.13.0a1/Lib/ensurepip/__init__.py
--- a/Lib/ensurepip/__init__.py
+++ b/Lib/ensurepip/__init__.py
@@ -120,27 +120,27 @@ def _disable_pip_configuration_settings(
os.environ['PIP_CONFIG_FILE'] = os.devnull
@ -121,10 +117,8 @@ Index: Python-3.13.0a1/Lib/ensurepip/__init__.py
upgrade=args.upgrade,
user=args.user,
verbosity=args.verbosity,
Index: Python-3.13.0a1/Lib/test/test_ensurepip.py
===================================================================
--- Python-3.13.0a1.orig/Lib/test/test_ensurepip.py
+++ Python-3.13.0a1/Lib/test/test_ensurepip.py
--- a/Lib/test/test_ensurepip.py
+++ b/Lib/test/test_ensurepip.py
@@ -105,6 +105,17 @@ class TestBootstrap(EnsurepipMixin, unit
unittest.mock.ANY,
)
@ -143,11 +137,9 @@ Index: Python-3.13.0a1/Lib/test/test_ensurepip.py
def test_bootstrapping_with_user(self):
ensurepip.bootstrap(user=True)
Index: Python-3.13.0a1/Makefile.pre.in
===================================================================
--- Python-3.13.0a1.orig/Makefile.pre.in
+++ Python-3.13.0a1/Makefile.pre.in
@@ -1938,7 +1938,7 @@ install: @FRAMEWORKINSTALLFIRST@ commoni
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -1976,7 +1976,7 @@ install: @FRAMEWORKINSTALLFIRST@ commoni
install|*) ensurepip="" ;; \
esac; \
$(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
@ -156,7 +148,7 @@ Index: Python-3.13.0a1/Makefile.pre.in
fi
.PHONY: altinstall
@@ -1949,7 +1949,7 @@ altinstall: commoninstall
@@ -1987,7 +1987,7 @@ altinstall: commoninstall
install|*) ensurepip="--altinstall" ;; \
esac; \
$(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
@ -165,9 +157,7 @@ Index: Python-3.13.0a1/Makefile.pre.in
fi
.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
+++ 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 @@
+A directory prefix can now be specified when using :mod:`ensurepip`.

View File

@ -1,13 +1,10 @@
---
Doc/using/configure.rst | 2 --
Misc/NEWS | 2 +-
2 files changed, 1 insertion(+), 3 deletions(-)
Misc/NEWS | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: Python-3.13.0a1/Misc/NEWS
===================================================================
--- Python-3.13.0a1.orig/Misc/NEWS
+++ Python-3.13.0a1/Misc/NEWS
@@ -13324,7 +13324,7 @@ C API
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -13972,7 +13972,7 @@ 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

View File

@ -2,11 +2,9 @@
Makefile.pre.in | 7 +++++++
1 file changed, 7 insertions(+)
Index: Python-3.13.0a1/Makefile.pre.in
===================================================================
--- Python-3.13.0a1.orig/Makefile.pre.in
+++ Python-3.13.0a1/Makefile.pre.in
@@ -1352,11 +1352,18 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -1375,11 +1375,18 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \
$(DTRACE_OBJS) \
$(srcdir)/Modules/getbuildinfo.c
$(CC) -c $(PY_CORE_CFLAGS) \

View File

@ -2,11 +2,9 @@
Lib/test/test_posix.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: Python-3.13.0a1/Lib/test/test_posix.py
===================================================================
--- Python-3.13.0a1.orig/Lib/test/test_posix.py
+++ Python-3.13.0a1/Lib/test/test_posix.py
@@ -431,7 +431,7 @@ class PosixTester(unittest.TestCase):
--- a/Lib/test/test_posix.py
+++ b/Lib/test/test_posix.py
@@ -433,7 +433,7 @@ class PosixTester(unittest.TestCase):
def test_posix_fadvise(self):
fd = os.open(os_helper.TESTFN, os.O_RDONLY)
try:

View File

@ -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:
- Dont 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 functions __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, its now
respected and wont 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 hasnt 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 messages info and/or flags and are useful
when it is not necessary to access the messages 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 dont 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>

View File

@ -105,7 +105,7 @@
%define dynlib() %{sitedir}/lib-dynload/%{1}.cpython-%{abi_tag}-%{archname}-%{_os}%{?_gnu}%{?armsuffix}.so
%bcond_without profileopt
Name: %{python_pkg_name}%{psuffix}
Version: 3.13.0a1
Version: 3.13.0a2
Release: 0
Summary: Python 3 Interpreter
License: Python-2.0