forked from pool/python313
Accepting request 1178998 from home:dgarcia:branches:devel:languages:python:Factory
- Fix doc package build
gh#python/cpython#120150
- Update to 3.13.0b2:
- Security
- gh-118773: Fixes creation of ACLs in os.mkdir() on Windows to
work correctly on non-English machines.
- 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.
- Core and Builtins
- gh-119724: Reverted improvements to error messages for elif/else
statements not matching any valid statements, which made in hard
to locate the syntax errors inside those elif/else blocks.
- gh-119842: Honor PyOS_InputHook() in the new REPL. Patch by
Pablo Galindo
- gh-119821: Fix execution of annotation scopes within classes
when globals is set to a non-dict. Patch by Jelle Zijlstra.
- gh-119548: Add a clear command to the REPL. Patch by Pablo
Galindo
- gh-111999: Fix the signature of str.format_map().
- gh-119560: An invalid assert in beta 1 has been removed. The
assert would fail if PyState_FindModule() was used in an
extension module’s init function before the module def had been
initialized.
- gh-119369: Fix deadlock during thread deletion in free-threaded
build, which could occur when the GIL was enabled at runtime.
- gh-119525: Fix deadlock involving _PyType_Lookup() cache in the
free-threaded build when the GIL is dynamically enabled at
runtime.
- 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-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-118692: Avoid creating unnecessary StopIteration instances
for monitoring.
- gh-119049: Fix displaying the source line for warnings created
by the C API if the warnings module had not yet been imported.
- gh-118844: Fix build failures when configuring with both
--disable-gil and --enable-experimental-jit.
- gh-118921: Add copy() method for FrameLocalsProxy which returns
a snapshot dict for local variables.
- gh-117657: Fix data races on the field that stores a pointer to
the interpreter’s main thread that occur in free-threaded
builds.
- gh-118507: Speedup os.path.isjunction() and os.path.lexists() on
Windows with a native implementation.
- gh-118561: Fix race condition in free-threaded build where
list.extend() could expose uninitialised memory to concurrent
readers.
- gh-118263: Speed up os.path.splitroot() & os.path.normpath()
with a direct C call.
- gh-117195: Avoid assertion failure for debug builds when calling
object.__sizeof__(1)
- Library
- gh-119819: Fix regression to allow logging configuration with
multiprocessing queue types.
- gh-117142: The ctypes module may now be imported in all
subinterpreters, including those that have their own GIL.
- gh-118835: Fix _pyrepl crash when using custom prompt with ANSI
escape codes.
- gh-117398: The _datetime module (C implementation for datetime)
now supports being imported in multiple interpreters.
- 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-119588: zipfile.Path.is_symlink now assesses if the given
path is a symlink.
- gh-119555: Catch SyntaxError from compile() in the runsource()
method of the InteractiveColoredConsole. Patch by Sergey B
Kirpichev.
- 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-119443: The interactive REPL no longer runs with from
__future__ import annotations enabled. Patch by Jelle Zijlstra.
- gh-117398: Objects in the datetime C-API are now all statically
allocated, which means better memory safety, especially when the
module is reloaded. This should be transparent to users.
- gh-118894: asyncio REPL now has the same capabilities as PyREPL.
- gh-118911: In PyREPL, updated maybe-accept’s logic so that if
the user hits Enter twice, they are able to terminate the block
even if there’s trailing whitespace. Also, now when the user
hits arrow up, the cursor is on the last functional line. This
matches IPython’s behavior. Patch by Aya Elsayed.
- gh-111201: Remove dependency to readline from the new Python
REPL.
- gh-119174: Fix high DPI causes turtledemo(turtle-graphics
examples) windows blurry Patch by Wulian233 and Terry Jan Reedy
- gh-119121: Fix a NameError happening in
asyncio.staggered.staggered_race. This function is now tested.
- gh-119113: Fix issue where pathlib.PurePath.with_suffix() didn’t
raise TypeError when given None as a suffix.
- 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-118895: Setting attributes on typing.NoDefault now raises
AttributeError instead of TypeError.
- gh-118868: Fixed issue where kwargs were no longer passed to the
logging handler QueueHandler
- gh-118851: ctx arguments to the constructors of ast node classes
now default to ast.Load(). Patch by Jelle Zijlstra.
- gh-118760: Restore the default value of tkiter.wantobjects to 1.
- gh-118760: Fix errors in calling Tkinter bindings on Windows.
- gh-118772: Allow typing.TypeVar instances without a default to
follow instances without a default in some cases. Patch by Jelle
Zijlstra.
- gh-110863: os.path.realpath() now suppresses any OSError from
os.readlink() when strict mode is disabled (the default).
- gh-118033: Fix dataclasses.dataclass() not creating a
__weakref__ slot when subclassing typing.Generic.
- gh-106531: In importlib.resources, sync with importlib_resources
6.3.2, including: MultiplexedPath now expects Traversable paths,
deprecating string arguments to MultiplexedPath; Enabled support
for resources in namespace packages in zip files; Fixed
NotADirectoryError when calling files on a subdirectory of a
namespace package.
- gh-113978: Ignore warnings on text completion inside REPL.
- 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).
- 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.
- Tests
- gh-119050: regrtest test runner: Add XML support to the refleak
checker (-R option). Patch by Victor Stinner. Buil- d
- gh-119729: On POSIX systems, the pkg-config (.pc) filenames now
include the ABI flags, which may include debug (“d”) and
free-threaded (“t”). For example: * python-3.14.pc (default,
non-debug build) * python-3.14d.pc (default, debug build) *
python-3.14t.pc (free-threaded build)
- gh-115119: Fall back to the bundled libmpdec if a system version
cannot be found.
- gh-119132: Update sys.version to identify whether the build is
default build or free-threading build. Patch By Donghee Na.
- gh-118836: Fix an AssertionError when building with
--enable-experimental-jit and the compiler emits a SHT_NOTE
section.
- gh-118943: Fix a possible race condition affecting parallel
builds configured with --enable-experimental-jit, in which
compilation errors could be caused by an incompletely-generated
header file.
- Windows
- gh-119679: Ensures correct import libraries are included in
Windows installs.
- gh-119690: Adds Unicode support and fixes audit events for
_winapi.CreateNamedPipe.
- gh-111201: Add support for new pyrepl on Windows
- gh-119070: Fixes py.exe handling of shebangs like /usr/bin/env
python3.12, which were previously interpreted as python3.exe
instead of python3.12.exe.
- gh-117505: Fixes an issue with the Windows installer not running
ensurepip in a fully isolated environment. This could cause
unexpected interactions with the user site-packages.
- gh-118209: Avoid crashing in mmap on Windows when the mapped
memory is inaccessible due to file system errors or access
violations.
- gh-116145: Updated bundled Tcl/Tk to 8.6.14.
- 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-119336: Restore the removed _PyLong_NumBits() function. It is
used by the pywin32 project. Patch by Ethan Smith
- gh-119247: Added Py_BEGIN_CRITICAL_SECTION_SEQUENCE_FAST and
Py_END_CRITICAL_SECTION_SEQUENCE_FAST macros to make it possible
to use PySequence_Fast APIs safely when free-threaded, and
update str.join to work without the GIL using them.
- gh-111389: Add PyHASH_MULTIPLIER constant: prime multiplier used
in string and various other hashes. Patch by Victor Stinner.
- gh-116984: Make mimalloc includes relative to the current file
to avoid embedders or extensions needing to include
Internal/mimalloc if they are already including internal CPython
headers.
- gh-118789: Restore _PyWeakref_ClearRef that was previously
removed in Python 3.13 alpha 1.
OBS-URL: https://build.opensuse.org/request/show/1178998
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python313?expand=0&rev=18
This commit is contained in:
@@ -1,3 +1,222 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 6 09:59:51 UTC 2024 - Daniel Garcia <daniel.garcia@suse.com>
|
||||
|
||||
- Fix doc package build
|
||||
gh#python/cpython#120150
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 6 06:53:00 UTC 2024 - Daniel Garcia <daniel.garcia@suse.com>
|
||||
|
||||
- Update to 3.13.0b2:
|
||||
- Security
|
||||
- gh-118773: Fixes creation of ACLs in os.mkdir() on Windows to
|
||||
work correctly on non-English machines.
|
||||
- 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.
|
||||
- Core and Builtins
|
||||
- gh-119724: Reverted improvements to error messages for elif/else
|
||||
statements not matching any valid statements, which made in hard
|
||||
to locate the syntax errors inside those elif/else blocks.
|
||||
- gh-119842: Honor PyOS_InputHook() in the new REPL. Patch by
|
||||
Pablo Galindo
|
||||
- gh-119821: Fix execution of annotation scopes within classes
|
||||
when globals is set to a non-dict. Patch by Jelle Zijlstra.
|
||||
- gh-119548: Add a clear command to the REPL. Patch by Pablo
|
||||
Galindo
|
||||
- gh-111999: Fix the signature of str.format_map().
|
||||
- gh-119560: An invalid assert in beta 1 has been removed. The
|
||||
assert would fail if PyState_FindModule() was used in an
|
||||
extension module’s init function before the module def had been
|
||||
initialized.
|
||||
- gh-119369: Fix deadlock during thread deletion in free-threaded
|
||||
build, which could occur when the GIL was enabled at runtime.
|
||||
- gh-119525: Fix deadlock involving _PyType_Lookup() cache in the
|
||||
free-threaded build when the GIL is dynamically enabled at
|
||||
runtime.
|
||||
- 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-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-118692: Avoid creating unnecessary StopIteration instances
|
||||
for monitoring.
|
||||
- gh-119049: Fix displaying the source line for warnings created
|
||||
by the C API if the warnings module had not yet been imported.
|
||||
- gh-118844: Fix build failures when configuring with both
|
||||
--disable-gil and --enable-experimental-jit.
|
||||
- gh-118921: Add copy() method for FrameLocalsProxy which returns
|
||||
a snapshot dict for local variables.
|
||||
- gh-117657: Fix data races on the field that stores a pointer to
|
||||
the interpreter’s main thread that occur in free-threaded
|
||||
builds.
|
||||
- gh-118507: Speedup os.path.isjunction() and os.path.lexists() on
|
||||
Windows with a native implementation.
|
||||
- gh-118561: Fix race condition in free-threaded build where
|
||||
list.extend() could expose uninitialised memory to concurrent
|
||||
readers.
|
||||
- gh-118263: Speed up os.path.splitroot() & os.path.normpath()
|
||||
with a direct C call.
|
||||
- gh-117195: Avoid assertion failure for debug builds when calling
|
||||
object.__sizeof__(1)
|
||||
- Library
|
||||
- gh-119819: Fix regression to allow logging configuration with
|
||||
multiprocessing queue types.
|
||||
- gh-117142: The ctypes module may now be imported in all
|
||||
subinterpreters, including those that have their own GIL.
|
||||
- gh-118835: Fix _pyrepl crash when using custom prompt with ANSI
|
||||
escape codes.
|
||||
- gh-117398: The _datetime module (C implementation for datetime)
|
||||
now supports being imported in multiple interpreters.
|
||||
- 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-119588: zipfile.Path.is_symlink now assesses if the given
|
||||
path is a symlink.
|
||||
- gh-119555: Catch SyntaxError from compile() in the runsource()
|
||||
method of the InteractiveColoredConsole. Patch by Sergey B
|
||||
Kirpichev.
|
||||
- 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-119443: The interactive REPL no longer runs with from
|
||||
__future__ import annotations enabled. Patch by Jelle Zijlstra.
|
||||
- gh-117398: Objects in the datetime C-API are now all statically
|
||||
allocated, which means better memory safety, especially when the
|
||||
module is reloaded. This should be transparent to users.
|
||||
- gh-118894: asyncio REPL now has the same capabilities as PyREPL.
|
||||
- gh-118911: In PyREPL, updated maybe-accept’s logic so that if
|
||||
the user hits Enter twice, they are able to terminate the block
|
||||
even if there’s trailing whitespace. Also, now when the user
|
||||
hits arrow up, the cursor is on the last functional line. This
|
||||
matches IPython’s behavior. Patch by Aya Elsayed.
|
||||
- gh-111201: Remove dependency to readline from the new Python
|
||||
REPL.
|
||||
- gh-119174: Fix high DPI causes turtledemo(turtle-graphics
|
||||
examples) windows blurry Patch by Wulian233 and Terry Jan Reedy
|
||||
- gh-119121: Fix a NameError happening in
|
||||
asyncio.staggered.staggered_race. This function is now tested.
|
||||
- gh-119113: Fix issue where pathlib.PurePath.with_suffix() didn’t
|
||||
raise TypeError when given None as a suffix.
|
||||
- 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-118895: Setting attributes on typing.NoDefault now raises
|
||||
AttributeError instead of TypeError.
|
||||
- gh-118868: Fixed issue where kwargs were no longer passed to the
|
||||
logging handler QueueHandler
|
||||
- gh-118851: ctx arguments to the constructors of ast node classes
|
||||
now default to ast.Load(). Patch by Jelle Zijlstra.
|
||||
- gh-118760: Restore the default value of tkiter.wantobjects to 1.
|
||||
- gh-118760: Fix errors in calling Tkinter bindings on Windows.
|
||||
- gh-118772: Allow typing.TypeVar instances without a default to
|
||||
follow instances without a default in some cases. Patch by Jelle
|
||||
Zijlstra.
|
||||
- gh-110863: os.path.realpath() now suppresses any OSError from
|
||||
os.readlink() when strict mode is disabled (the default).
|
||||
- gh-118033: Fix dataclasses.dataclass() not creating a
|
||||
__weakref__ slot when subclassing typing.Generic.
|
||||
- gh-106531: In importlib.resources, sync with importlib_resources
|
||||
6.3.2, including: MultiplexedPath now expects Traversable paths,
|
||||
deprecating string arguments to MultiplexedPath; Enabled support
|
||||
for resources in namespace packages in zip files; Fixed
|
||||
NotADirectoryError when calling files on a subdirectory of a
|
||||
namespace package.
|
||||
- gh-113978: Ignore warnings on text completion inside REPL.
|
||||
- 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).
|
||||
- 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.
|
||||
- Tests
|
||||
- gh-119050: regrtest test runner: Add XML support to the refleak
|
||||
checker (-R option). Patch by Victor Stinner. Buil- d
|
||||
- gh-119729: On POSIX systems, the pkg-config (.pc) filenames now
|
||||
include the ABI flags, which may include debug (“d”) and
|
||||
free-threaded (“t”). For example: * python-3.14.pc (default,
|
||||
non-debug build) * python-3.14d.pc (default, debug build) *
|
||||
python-3.14t.pc (free-threaded build)
|
||||
- gh-115119: Fall back to the bundled libmpdec if a system version
|
||||
cannot be found.
|
||||
- gh-119132: Update sys.version to identify whether the build is
|
||||
default build or free-threading build. Patch By Donghee Na.
|
||||
- gh-118836: Fix an AssertionError when building with
|
||||
--enable-experimental-jit and the compiler emits a SHT_NOTE
|
||||
section.
|
||||
- gh-118943: Fix a possible race condition affecting parallel
|
||||
builds configured with --enable-experimental-jit, in which
|
||||
compilation errors could be caused by an incompletely-generated
|
||||
header file.
|
||||
- Windows
|
||||
- gh-119679: Ensures correct import libraries are included in
|
||||
Windows installs.
|
||||
- gh-119690: Adds Unicode support and fixes audit events for
|
||||
_winapi.CreateNamedPipe.
|
||||
- gh-111201: Add support for new pyrepl on Windows
|
||||
- gh-119070: Fixes py.exe handling of shebangs like /usr/bin/env
|
||||
python3.12, which were previously interpreted as python3.exe
|
||||
instead of python3.12.exe.
|
||||
- gh-117505: Fixes an issue with the Windows installer not running
|
||||
ensurepip in a fully isolated environment. This could cause
|
||||
unexpected interactions with the user site-packages.
|
||||
- gh-118209: Avoid crashing in mmap on Windows when the mapped
|
||||
memory is inaccessible due to file system errors or access
|
||||
violations.
|
||||
- gh-116145: Updated bundled Tcl/Tk to 8.6.14.
|
||||
- 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-119336: Restore the removed _PyLong_NumBits() function. It is
|
||||
used by the pywin32 project. Patch by Ethan Smith
|
||||
- gh-119247: Added Py_BEGIN_CRITICAL_SECTION_SEQUENCE_FAST and
|
||||
Py_END_CRITICAL_SECTION_SEQUENCE_FAST macros to make it possible
|
||||
to use PySequence_Fast APIs safely when free-threaded, and
|
||||
update str.join to work without the GIL using them.
|
||||
- gh-111389: Add PyHASH_MULTIPLIER constant: prime multiplier used
|
||||
in string and various other hashes. Patch by Victor Stinner.
|
||||
- gh-116984: Make mimalloc includes relative to the current file
|
||||
to avoid embedders or extensions needing to include
|
||||
Internal/mimalloc if they are already including internal CPython
|
||||
headers.
|
||||
- gh-118789: Restore _PyWeakref_ClearRef that was previously
|
||||
removed in Python 3.13 alpha 1.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu May 9 12:29:28 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user