From: Pablo Galindo Salgado Date: Mon, 24 Oct 2022 23:30:06 +0000 (+0100) Subject: [3.11] Fix v3.11.0 release merge problems (GH-98622) X-Git-Tag: v3.11.1~217 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b3cafb60afeb2300002af9982d43703435b8302d;p=thirdparty%2FPython%2Fcpython.git [3.11] Fix v3.11.0 release merge problems (GH-98622) When merging the v3.11.0 tag into 3.11, some files were incorrectly updated and some others were not properly deleted. Automerge-Triggered-By: GH:pablogsal --- diff --git a/Doc/library/venv.rst b/Doc/library/venv.rst index e0f2f2babfb0..adc6cd339ac1 100644 --- a/Doc/library/venv.rst +++ b/Doc/library/venv.rst @@ -129,19 +129,6 @@ You can deactivate a virtual environment by typing ``deactivate`` in your shell. The exact mechanism is platform-specific and is an internal implementation detail (typically, a script or shell function will be used). -.. warning:: Because scripts installed in environments should not expect the - environment to be activated, their shebang lines contain the absolute paths - to their environment's interpreters. Because of this, environments are - inherently non-portable, in the general case. You should always have a - simple means of recreating an environment (for example, if you have a - requirements file ``requirements.txt``, you can invoke ``pip install -r - requirements.txt`` using the environment's ``pip`` to install all of the - packages needed by the environment). If for any reason you need to move the - environment to a new location, you should recreate it at the desired - location and delete the one at the old location. If you move an environment - because you moved a parent directory of it, you should recreate the - environment in its new location. Otherwise, software installed into the - environment may not work as expected. .. _venv-api: diff --git a/Doc/whatsnew/3.11.rst b/Doc/whatsnew/3.11.rst index b42c6529303b..3e94c40bca69 100644 --- a/Doc/whatsnew/3.11.rst +++ b/Doc/whatsnew/3.11.rst @@ -4,6 +4,7 @@ :Release: |release| :Date: |today| +:Editor: Pablo Galindo Salgado .. Rules for maintenance: @@ -1590,10 +1591,6 @@ Changed/removed opcodes :opcode:`!POP_BLOCK`, :opcode:`!SETUP_FINALLY` and :opcode:`!YIELD_FROM`. -.. _whatsnew311-deprecated: -.. _whatsnew311-python-api-deprecated: - - .. _whatsnew311-deprecated: .. _whatsnew311-python-api-deprecated: @@ -1769,9 +1766,6 @@ Standard Library (Contributed by Erlend E. Aasland in :issue:`5846`.) -.. _whatsnew311-pending-removal: -.. _whatsnew311-python-api-pending-removal: - .. _whatsnew311-pending-removal: .. _whatsnew311-python-api-pending-removal: diff --git a/Include/patchlevel.h b/Include/patchlevel.h index c62cdf19e165..c37154baa22b 100644 --- a/Include/patchlevel.h +++ b/Include/patchlevel.h @@ -23,7 +23,7 @@ #define PY_RELEASE_SERIAL 0 /* Version as a string */ -#define PY_VERSION "3.11.0rc2+" +#define PY_VERSION "3.11.0+" /*--end constants--*/ /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2. diff --git a/Lib/test/test_frame.py b/Lib/test/test_frame.py index 2222ad6ed514..4b86a60d2f4c 100644 --- a/Lib/test/test_frame.py +++ b/Lib/test/test_frame.py @@ -326,69 +326,5 @@ class TestIncompleteFrameAreInvisible(unittest.TestCase): gc.enable() - @support.cpython_only - def test_sneaky_frame_object(self): - - def trace(frame, event, arg): - """ - Don't actually do anything, just force a frame object to be created. - """ - - def callback(phase, info): - """ - Yo dawg, I heard you like frames, so I'm allocating a frame while - you're allocating a frame, so you can have a frame while you have a - frame! - """ - nonlocal sneaky_frame_object - sneaky_frame_object = sys._getframe().f_back - # We're done here: - gc.callbacks.remove(callback) - - def f(): - while True: - yield - - old_threshold = gc.get_threshold() - old_callbacks = gc.callbacks[:] - old_enabled = gc.isenabled() - old_trace = sys.gettrace() - try: - # Stop the GC for a second while we set things up: - gc.disable() - # Create a paused generator: - g = f() - next(g) - # Move all objects to the oldest generation, and tell the GC to run - # on the *very next* allocation: - gc.collect() - gc.set_threshold(1, 0, 0) - # Okay, so here's the nightmare scenario: - # - We're tracing the resumption of a generator, which creates a new - # frame object. - # - The allocation of this frame object triggers a collection - # *before* the frame object is actually created. - # - During the collection, we request the exact same frame object. - # This test does it with a GC callback, but in real code it would - # likely be a trace function, weakref callback, or finalizer. - # - The collection finishes, and the original frame object is - # created. We now have two frame objects fighting over ownership - # of the same interpreter frame! - sys.settrace(trace) - gc.callbacks.append(callback) - sneaky_frame_object = None - gc.enable() - next(g) - # g.gi_frame should be the the frame object from the callback (the - # one that was *requested* second, but *created* first): - self.assertIs(g.gi_frame, sneaky_frame_object) - finally: - gc.set_threshold(*old_threshold) - gc.callbacks[:] = old_callbacks - sys.settrace(old_trace) - if old_enabled: - gc.enable() - - if __name__ == "__main__": unittest.main() diff --git a/Misc/NEWS.d/next/Build/2022-09-11-14-23-49.gh-issue-96729.W4uBWL.rst b/Misc/NEWS.d/next/Build/2022-09-11-14-23-49.gh-issue-96729.W4uBWL.rst deleted file mode 100644 index b67cd200e2d3..000000000000 --- a/Misc/NEWS.d/next/Build/2022-09-11-14-23-49.gh-issue-96729.W4uBWL.rst +++ /dev/null @@ -1,2 +0,0 @@ -Ensure that Windows releases built with ``Tools\msi\buildrelease.bat`` are -upgradable to and from official Python releases. diff --git a/Misc/NEWS.d/next/Core and Builtins/2020-11-15-02-08-43.bpo-42316.LqdkWK.rst b/Misc/NEWS.d/next/Core and Builtins/2020-11-15-02-08-43.bpo-42316.LqdkWK.rst deleted file mode 100644 index ea997800bf07..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2020-11-15-02-08-43.bpo-42316.LqdkWK.rst +++ /dev/null @@ -1 +0,0 @@ -Document some places where an assignment expression needs parentheses. diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-09-05-19-20-44.gh-issue-96587.bVxhX2.rst b/Misc/NEWS.d/next/Core and Builtins/2022-09-05-19-20-44.gh-issue-96587.bVxhX2.rst deleted file mode 100644 index 37e9dcbb11f0..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2022-09-05-19-20-44.gh-issue-96587.bVxhX2.rst +++ /dev/null @@ -1,2 +0,0 @@ -Correctly raise ``SyntaxError`` on exception groups (:pep:`654`) on python -versions prior to 3.11 diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-09-16-19-02-40.gh-issue-95778.cJmnst.rst b/Misc/NEWS.d/next/Core and Builtins/2022-09-16-19-02-40.gh-issue-95778.cJmnst.rst deleted file mode 100644 index ebf63778a605..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2022-09-16-19-02-40.gh-issue-95778.cJmnst.rst +++ /dev/null @@ -1,3 +0,0 @@ -When :exc:`ValueError` is raised if an integer is larger than the limit, -mention the :func:`sys.set_int_max_str_digits` function in the error message. -Patch by Victor Stinner. diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-09-18-08-47-40.gh-issue-96821.Co2iOq.rst b/Misc/NEWS.d/next/Core and Builtins/2022-09-18-08-47-40.gh-issue-96821.Co2iOq.rst deleted file mode 100644 index 4fd0532e827d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2022-09-18-08-47-40.gh-issue-96821.Co2iOq.rst +++ /dev/null @@ -1 +0,0 @@ -Fix undefined behaviour in ``_testcapimodule.c``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-09-21-14-38-31.gh-issue-96848.WuoLzU.rst b/Misc/NEWS.d/next/Core and Builtins/2022-09-21-14-38-31.gh-issue-96848.WuoLzU.rst deleted file mode 100644 index a9b04ce87d4d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2022-09-21-14-38-31.gh-issue-96848.WuoLzU.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix command line parsing: reject :option:`-X int_max_str_digits <-X>` option -with no value (invalid) when the :envvar:`PYTHONINTMAXSTRDIGITS` environment -variable is set to a valid limit. Patch by Victor Stinner. diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-09-21-16-06-37.gh-issue-96975.BmE0XY.rst b/Misc/NEWS.d/next/Core and Builtins/2022-09-21-16-06-37.gh-issue-96975.BmE0XY.rst deleted file mode 100644 index e6fcb84d7bff..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2022-09-21-16-06-37.gh-issue-96975.BmE0XY.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a crash occurring when :c:func:`PyEval_GetFrame` is called while the -topmost Python frame is in a partially-initialized state. diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-10-03-13-35-48.gh-issue-97752.0xTjJY.rst b/Misc/NEWS.d/next/Core and Builtins/2022-10-03-13-35-48.gh-issue-97752.0xTjJY.rst deleted file mode 100644 index c65635070348..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2022-10-03-13-35-48.gh-issue-97752.0xTjJY.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix possible data corruption or crashes when accessing the ``f_back`` member -of newly-created generator or coroutine frames. diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-10-06-02-11-34.gh-issue-97002.Zvsk71.rst b/Misc/NEWS.d/next/Core and Builtins/2022-10-06-02-11-34.gh-issue-97002.Zvsk71.rst deleted file mode 100644 index 1f577e02e1fd..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2022-10-06-02-11-34.gh-issue-97002.Zvsk71.rst +++ /dev/null @@ -1,3 +0,0 @@ -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. diff --git a/Misc/NEWS.d/next/Documentation/2022-05-20-18-42-10.gh-issue-93031.c2RdJe.rst b/Misc/NEWS.d/next/Documentation/2022-05-20-18-42-10.gh-issue-93031.c2RdJe.rst deleted file mode 100644 index c46b45d2433c..000000000000 --- a/Misc/NEWS.d/next/Documentation/2022-05-20-18-42-10.gh-issue-93031.c2RdJe.rst +++ /dev/null @@ -1 +0,0 @@ -Update tutorial introduction output to use 3.10+ SyntaxError invalid range. diff --git a/Misc/NEWS.d/next/Documentation/2022-10-02-10-58-52.gh-issue-97741.39l023.rst b/Misc/NEWS.d/next/Documentation/2022-10-02-10-58-52.gh-issue-97741.39l023.rst deleted file mode 100644 index 8da9c92f6fd8..000000000000 --- a/Misc/NEWS.d/next/Documentation/2022-10-02-10-58-52.gh-issue-97741.39l023.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``!`` in c domain ref target syntax via a ``conf.py`` patch, so it works -as intended to disable ref target resolution. diff --git a/Misc/NEWS.d/next/Library/2022-05-25-15-57-39.gh-issue-90155.YMstB5.rst b/Misc/NEWS.d/next/Library/2022-05-25-15-57-39.gh-issue-90155.YMstB5.rst deleted file mode 100644 index 8def76914eda..000000000000 --- a/Misc/NEWS.d/next/Library/2022-05-25-15-57-39.gh-issue-90155.YMstB5.rst +++ /dev/null @@ -1 +0,0 @@ -Fix broken :class:`asyncio.Semaphore` when acquire is cancelled. diff --git a/Misc/NEWS.d/next/Library/2022-09-24-18-56-23.gh-issue-96865.o9WUkW.rst b/Misc/NEWS.d/next/Library/2022-09-24-18-56-23.gh-issue-96865.o9WUkW.rst deleted file mode 100644 index b054fdeee078..000000000000 --- a/Misc/NEWS.d/next/Library/2022-09-24-18-56-23.gh-issue-96865.o9WUkW.rst +++ /dev/null @@ -1,9 +0,0 @@ -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 -> diff --git a/Misc/NEWS.d/next/Library/2022-09-25-23-24-52.gh-issue-97545.HZLSNt.rst b/Misc/NEWS.d/next/Library/2022-09-25-23-24-52.gh-issue-97545.HZLSNt.rst deleted file mode 100644 index a53902ea670b..000000000000 --- a/Misc/NEWS.d/next/Library/2022-09-25-23-24-52.gh-issue-97545.HZLSNt.rst +++ /dev/null @@ -1 +0,0 @@ -Make Semaphore run faster. diff --git a/Misc/NEWS.d/next/Library/2022-10-16-15-31-50.gh-issue-98331.Y5kPOX.rst b/Misc/NEWS.d/next/Library/2022-10-16-15-31-50.gh-issue-98331.Y5kPOX.rst deleted file mode 100644 index b4cf94310af6..000000000000 --- a/Misc/NEWS.d/next/Library/2022-10-16-15-31-50.gh-issue-98331.Y5kPOX.rst +++ /dev/null @@ -1 +0,0 @@ -Update the bundled copies of pip and setuptools to versions 22.3 and 65.5.0 respectively. diff --git a/Misc/NEWS.d/next/Security/2022-09-07-10-42-00.gh-issue-97514.Yggdsl.rst b/Misc/NEWS.d/next/Security/2022-09-07-10-42-00.gh-issue-97514.Yggdsl.rst deleted file mode 100644 index 02d95b570520..000000000000 --- a/Misc/NEWS.d/next/Security/2022-09-07-10-42-00.gh-issue-97514.Yggdsl.rst +++ /dev/null @@ -1,15 +0,0 @@ -On Linux the :mod:`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 -:ref:`"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 -`_. diff --git a/Misc/NEWS.d/next/Security/2022-09-28-17-09-37.gh-issue-97616.K1e3Xs.rst b/Misc/NEWS.d/next/Security/2022-09-28-17-09-37.gh-issue-97616.K1e3Xs.rst deleted file mode 100644 index 721427fe6465..000000000000 --- a/Misc/NEWS.d/next/Security/2022-09-28-17-09-37.gh-issue-97616.K1e3Xs.rst +++ /dev/null @@ -1,3 +0,0 @@ -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. diff --git a/Misc/NEWS.d/next/Tests/2022-10-20-17-49-50.gh-issue-95027.viRpJB.rst b/Misc/NEWS.d/next/Tests/2022-10-20-17-49-50.gh-issue-95027.viRpJB.rst deleted file mode 100644 index 8bf1a9d33573..000000000000 --- a/Misc/NEWS.d/next/Tests/2022-10-20-17-49-50.gh-issue-95027.viRpJB.rst +++ /dev/null @@ -1,4 +0,0 @@ -On Windows, when the Python test suite is run with the ``-jN`` option, the -ANSI code page is now used as the encoding for the stdout temporary file, -rather than using UTF-8 which can lead to decoding errors. Patch by Victor -Stinner. diff --git a/Misc/NEWS.d/next/Windows/2022-09-29-23-08-49.gh-issue-90989.no89Q2.rst b/Misc/NEWS.d/next/Windows/2022-09-29-23-08-49.gh-issue-90989.no89Q2.rst deleted file mode 100644 index 34fffdf9a97b..000000000000 --- a/Misc/NEWS.d/next/Windows/2022-09-29-23-08-49.gh-issue-90989.no89Q2.rst +++ /dev/null @@ -1 +0,0 @@ -Clarify some text in the Windows installer. diff --git a/Misc/NEWS.d/next/Windows/2022-10-19-19-35-37.gh-issue-98414.FbHZuS.rst b/Misc/NEWS.d/next/Windows/2022-10-19-19-35-37.gh-issue-98414.FbHZuS.rst deleted file mode 100644 index df07b7f547df..000000000000 --- a/Misc/NEWS.d/next/Windows/2022-10-19-19-35-37.gh-issue-98414.FbHZuS.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix :file:`py.exe` launcher handling of ``-V:/`` option when -default preferences have been set in environment variables or configuration -files. diff --git a/Misc/NEWS.d/next/Windows/2022-10-19-20-00-28.gh-issue-98360.O2m6YG.rst b/Misc/NEWS.d/next/Windows/2022-10-19-20-00-28.gh-issue-98360.O2m6YG.rst deleted file mode 100644 index 61c1e5e837fe..000000000000 --- a/Misc/NEWS.d/next/Windows/2022-10-19-20-00-28.gh-issue-98360.O2m6YG.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fixes :mod:`multiprocessing` spawning child processes on Windows from a -virtual environment to ensure that child processes that also use -:mod:`multiprocessing` to spawn more children will recognize that they are -in a virtual environment. diff --git a/Misc/NEWS.d/next/macOS/2022-10-05-15-26-58.gh-issue-97897.Rf-C6u.rst b/Misc/NEWS.d/next/macOS/2022-10-05-15-26-58.gh-issue-97897.Rf-C6u.rst deleted file mode 100644 index 0d21e98b37c5..000000000000 --- a/Misc/NEWS.d/next/macOS/2022-10-05-15-26-58.gh-issue-97897.Rf-C6u.rst +++ /dev/null @@ -1,6 +0,0 @@ -The macOS 13 SDK includes support for the ``mkfifoat`` and ``mknodat`` system calls. -Using the ``dir_fd`` option with either :func:`os.mkfifo` or :func:`os.mknod` could result in a -segfault if cpython is built with the macOS 13 SDK but run on an earlier -version of macOS. Prevent this by adding runtime support for detection of -these system calls ("weaklinking") as is done for other newer syscalls on -macOS.