Commit graph

30318 commits

Author SHA1 Message Date
Serhiy Storchaka
cfb79caaab
[3.12] gh-97959: Fix rendering of routines in pydoc (GH-113941) (GH-115296)
* Class methods no longer have "method of builtins.type instance" note.
* Corresponding notes are now added for class and unbound methods.
* Method and function aliases now have references to the module or the
  class where the origin was defined if it differs from the current.
* Bound methods are now listed in the static methods section.
* Methods of builtin classes are now supported as well as methods of
  Python classes.
(cherry picked from commit 2939ad02be)
2024-02-11 13:56:34 +00:00
Serhiy Storchaka
d8346d6c06
[3.12] gh-115011: Improve support of __index__() in setters of members with unsigned integer type (GH-115029) (GH-115294)
Setters for members with an unsigned integer type now support
the same range of valid values for objects that has a __index__()
method as for int.

Previously, Py_T_UINT, Py_T_ULONG and Py_T_ULLONG did not support
objects that has a __index__() method larger than LONG_MAX.

Py_T_ULLONG did not support negative ints. Now it supports them and
emits a RuntimeWarning.
(cherry picked from commit d9d6909697)
2024-02-11 11:56:17 +00:00
Miss Islington (bot)
d65cd8bc4e
[3.12] gh-79382: Fix recursive glob() with trailing "**" (GH-115134) (GH-115290)
Trailing "**" no longer allows to match files and non-existing paths in
recursive glob().
(cherry picked from commit aeffc7f895)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-02-11 10:57:40 +00:00
Miss Islington (bot)
c4fa79b924
[3.12] gh-115133: Fix tests for XMLPullParser with Expat 2.6.0 (GH-115164) (GH-115288)
Feeding the parser by too small chunks defers parsing to prevent
CVE-2023-52425. Future versions of Expat may be more reactive.
(cherry picked from commit 4a08e7b343)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-02-11 10:34:04 +00:00
Miss Islington (bot)
6e13e50859
[3.12] gh-115274: Fix direct invocation of testmock/testpatch.py (GH-115275) (#115280)
gh-115274: Fix direct invocation of `testmock/testpatch.py` (GH-115275)
(cherry picked from commit f8e9c57067)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-02-11 12:14:37 +03:00
Miss Islington (bot)
5baf90e038
[3.12] gh-115249: Fix test_descr with -OO mode (GH-115250) (#115277)
gh-115249: Fix `test_descr` with `-OO` mode (GH-115250)
(cherry picked from commit 1f23837277)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-02-11 11:57:49 +03:00
Miss Islington (bot)
f036b357b2
[3.12] gh-115254: Fix test_property with -00 mode (GH-115255) (#115261)
gh-115254: Fix `test_property` with `-00` mode (GH-115255)
(cherry picked from commit b70a68fbd6)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-02-11 10:59:37 +03:00
Miss Islington (bot)
ada6629169
[3.12] gh-115252: Fix test_enum with -OO mode (GH-115253) (GH-115260)
(cherry picked from commit 33f56b7432)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-02-10 21:15:40 -08:00
Miss Islington (bot)
a5f49ce65e
[3.12] gh-115059: Remove debugging code in test_io (GH-115240) (GH-115244)
(cherry picked from commit 597fad07f7)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-02-10 16:04:49 +02:00
Miss Islington (bot)
7cc205872d
[3.12] gh-114552: Update __dir__ method docs: it allows returning an iterable (GH-114662) (#115234)
gh-114552: Update `__dir__` method docs: it allows returning an iterable (GH-114662)
(cherry picked from commit e19103a346)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-02-10 08:50:31 +00:00
Miss Islington (bot)
321ec5e0fe
[3.12] gh-115165: Fix typing.Annotated for immutable types (GH-115213) (#115227)
gh-115165: Fix `typing.Annotated` for immutable types (GH-115213)

The return value from an annotated callable can raise any exception from
__setattr__ for the `__orig_class__` property.
(cherry picked from commit 564385612c)

Co-authored-by: dave-shawley <daveshawley@gmail.com>
2024-02-09 22:31:57 +00:00
Miss Islington (bot)
0211f919b1
[3.12] gh-115059: Flush the underlying write buffer in io.BufferedRandom.read1() (GH-115163) (GH-115205)
(cherry picked from commit 846fd721d5)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-02-09 11:00:35 +00:00
Miss Islington (bot)
7d2f88edf0
[3.12] gh-114071: [Enum] update docs and code for tuples/subclasses (GH-114871) (GH-114993)
Update documentation with `__new__` and `__init__` entries.

Support use of `auto()` in tuple subclasses on member assignment lines.  Previously, auto() was only supported on the member definition line either solo or as part of a tuple:

    RED = auto()
    BLUE = auto(), 'azul'

However, since Python itself supports using tuple subclasses where tuples are expected, e.g.:

    from collections import namedtuple
    T = namedtuple('T', 'first second third')

    def test(one, two, three):
        print(one, two, three)

    test(*T(4, 5, 6))
    GH- 4 5 6

it made sense to also support tuple subclasses in enum definitions.
(cherry picked from commit ff7588b729)

Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
2024-02-08 14:01:38 -08:00
Miss Islington (bot)
967f27d0a1
[3.12] gh-114828: Fix __class__ in class-scope inlined comprehensions (GH-115139) (#115140)
gh-114828: Fix __class__ in class-scope inlined comprehensions (GH-115139)
(cherry picked from commit fedbf77191)

Co-authored-by: Carl Meyer <carl@oddbird.net>
2024-02-07 17:12:54 +00:00
Miss Islington (bot)
060c3edc4b
[3.12] gh-103224: Resolve paths properly in test_sysconfig (GH-103292) (GH-115100)
To pass tests when executed through a Python symlink.

(cherry picked from commit 71239d50b5)

Co-authored-by: Artem Mukhin <artem.m.mukhin@gmail.com>
Co-authored-by: Miro Hrončok <miro@hroncok.cz>
2024-02-07 11:36:10 +02:00
Miss Islington (bot)
831b95d9b9
[3.12] GH-gh-75705: Set unixfrom envelope in mailbox._mboxMMDF (GH-107117) (GH-115098)
(cherry picked from commit 76108b8b05)

Co-authored-by: Matthieu Caneill <matthieucan@users.noreply.github.com>
2024-02-06 19:05:05 +00:00
Miss Islington (bot)
7974f71478
[3.12] gh-106233: Fix stacklevel in zoneinfo.InvalidTZPathWarning (GH-106234) (GH-115081)
(cherry picked from commit d7334e2c20)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-02-06 13:26:39 +00:00
Erlend E. Aasland
6f5e360acd
[3.12] gh-115015: Argument Clinic: fix generated code for METH_METHOD methods without params (#115016) (#115067)
(cherry picked from commit 09096a1647)
2024-02-06 11:20:16 +01:00
Miss Islington (bot)
94ad68264c
[3.12] gh-109475: Fix support of explicit option value "--" in argparse (GH-114814) (GH-115036)
For example "--option=--".
(cherry picked from commit 4aa4f0906d)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-02-05 21:02:00 +00:00
Travis Howse
49fbb068d5
[3.12] gh-114887 Reject only sockets of type SOCK_STREAM in create_da… (#114980)
Also improve exception message.

(cherry picked from commit 94ec2b9c9c)

Co-authored-by: Donghee Na <donghee.na92@gmail.com>
2024-02-04 15:42:06 -08:00
Miss Islington (bot)
89fd79582c
[3.12] gh-114392: Improve test_capi.test_structmembers (GH-114393) (GH-115010)
Test all integer member types with extreme values and values outside of
the valid range. Test support of integer-like objects. Test warnings for
wrapped out values.
(cherry picked from commit 15f6f048a6)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-02-04 22:41:25 +02:00
Serhiy Storchaka
b9937a6f22
[3.12] gh-114388: Fix warnings when assign an unsigned integer member (GH-114391) (GH-115001)
* Fix a RuntimeWarning emitted when assign an integer-like value that
  is not an instance of int to an attribute that corresponds to a C
  struct member of type T_UINT and T_ULONG.
* Fix a double RuntimeWarning emitted when assign a negative integer value
  to an attribute that corresponds to a C struct member of type T_UINT.
(cherry picked from commit 3ddc515255)
2024-02-04 17:21:05 +00:00
Miss Islington (bot)
4548ae7e65
[3.12] gh-113951: Tkinter: "tag_unbind(tag, sequence, funcid)" now only unbinds "funcid" (GH-113955) (GH-114997)
Previously, "tag_unbind(tag, sequence, funcid)" methods of Text and
Canvas widgets destroyed the current binding for "sequence", leaving
"sequence" unbound, and deleted the "funcid" command.

Now they remove only "funcid" from the binding for "sequence", keeping
other commands, and delete the "funcid" command.
They leave "sequence" unbound only if "funcid" was the last bound command.
(cherry picked from commit 7e42fddf60)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-02-04 16:43:56 +00:00
Miss Islington (bot)
222ccbc7d6
[3.12] gh-113280: Always close socket if SSLSocket creation failed (GH-114659) (GH-114995)
(cherry picked from commit 0ea366240b)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Thomas Grainger <tagrain@gmail.com>
2024-02-04 16:12:19 +00:00
Miss Islington (bot)
0a737639dc
[3.12] gh-113267: Revert "gh-106584: Fix exit code for unittest in Python 3.12 (GH-106588)" (GH-114470) (GH-114994)
This reverts commit 8fc071345b.
(cherry picked from commit ecabff98c4)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-02-04 16:00:56 +00:00
Miss Islington (bot)
8ed20bc8bb
[3.12] gh-114959: tarfile: do not ignore errors when extract a directory on top of a file (GH-114960) (GH-114963)
Also, add tests common to tarfile and zipfile.
(cherry picked from commit 96bce033c4)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-02-03 18:39:01 +02:00
Miss Islington (bot)
034bb70aaa
[3.12] Bump ruff to 0.2.0 (GH-114932) (#114935)
Bump ruff to 0.2.0 (GH-114932)
(cherry picked from commit 920b89f627)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2024-02-02 22:03:25 +00:00
Miss Islington (bot)
5c5ecc8521
[3.12] gh-105089: Fix test_create_directory_with_write test failure in AIX (GH-105228) (GH-114860)
(cherry picked from commit 4dbb198d27)

Co-authored-by: Ayappan Perumal <ayappap2@in.ibm.com>
2024-02-01 12:22:54 +00:00
Miss Islington (bot)
0cf136c9a0
[3.12] gh-107461 ctypes: Add a testcase for nested _as_parameter_ lookup (GH-107462) (GH-114858)
(cherry picked from commit 0bf42dae7e)

Co-authored-by: Tomas R <tomas.roun8@gmail.com>
2024-02-01 12:06:08 +00:00
Miss Islington (bot)
5d7b90db0c
[3.12] gh-114737: Revert change to ElementTree.iterparse "root" attribute (GH-114755) (GH-114798)
Prior to gh-114269, the iterator returned by ElementTree.iterparse was
initialized with the root attribute as None. This restores the previous
behavior.
(cherry picked from commit 66f95ea6a6)

Co-authored-by: Sam Gross <colesbury@gmail.com>
2024-01-31 11:59:58 +00:00
Miss Islington (bot)
205ac6eecf
[3.12] gh-114100: Remove superfluous writing to fd 1 in test_pty (GH-114647) (GH-114655)
(cherry picked from commit 7a470541e2)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-01-27 19:29:48 +02:00
Miss Islington (bot)
fd8aafd64d
[3.12] gh-77749: Fix inconsistent behavior of non-ASCII handling in EmailPolicy.fold() (GH-6986) (GH-114606)
It now always encodes non-ASCII characters in headers if utf8 is false.

(cherry picked from commit 504334c7be)

Co-authored-by: Rito Takeuchi <licht-t@outlook.jp>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-01-26 18:30:32 +02:00
Miss Islington (bot)
4ff2d29266
gh-114561: Mark some tests in test_wincosoleio with requires_resource('console') decorator (GH-114565)
(cherry picked from commit 33ae9895d4)

Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
2024-01-25 20:18:23 +00:00
Miss Islington (bot)
d2da4e417e
[3.12] gh-77465: Increase test coverage for the numbers module (GH-111738) (GH-114556)
(cherry picked from commit e721adf4bd)

Co-authored-by: AN Long <aisk@users.noreply.github.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-01-25 15:36:20 +00:00
Miss Islington (bot)
03f8f77885
[3.12] gh-113205: test_multiprocessing.test_terminate: Give tasks a chance to start (GH-114249) (GH-114516)
(cherry picked from commit ce75b4c26d)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-01-24 07:46:27 +00:00
Miss Islington (bot)
be85f35f12
[3.12] gh-108303: Move .whl test files to Lib/test/wheeldata/ (GH-114343) (#114488)
gh-108303: Move `.whl` test files to `Lib/test/wheeldata/` (GH-114343)
(cherry picked from commit ba253a4794)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-01-23 15:58:44 +00:00
Miss Islington (bot)
ed567c1e1f
[3.12] gh-114257: Ignore the FileNotFound error in ctypes.util._is_elf() (GH-114394) (GH-114444)
(cherry picked from commit 7fc51c3f6b)

Co-authored-by: AN Long <aisk@users.noreply.github.com>
2024-01-22 18:10:41 +00:00
Miss Islington (bot)
4890ac136b
[3.12] gh-114275: Skip doctests that use asyncio in test_pdb for WASI builds (GH-114309) (#114439)
gh-114275: Skip doctests that use `asyncio` in `test_pdb` for WASI builds (GH-114309)
(cherry picked from commit efb81a60f5)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-01-22 18:02:23 +01:00
Miss Islington (bot)
954bbcc1b9
[3.12] gh-108303: Remove Lib/test/shadowed_super.py (GH-114372) (#114433)
gh-108303: Remove `Lib/test/shadowed_super.py` (GH-114372)

Move code into Lib/test/test_super.py.
(cherry picked from commit 2ef520ebec)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-01-22 16:40:42 +01:00
Miss Islington (bot)
1bd2c93474
[3.12] gh-102512: Turn _DummyThread into _MainThread after os.fork() called from a foreign thread (GH-113261) (GH-114430)
Always set a _MainThread as a main thread after os.fork() is called from
a thread started not by the threading module.

A new _MainThread was already set as a new main thread after fork if
threading.current_thread() was not called for a foreign thread before fork.
Now, if it was called before fork, the implicitly created _DummyThread will
be turned into _MainThread after fork.

It fixes, in particularly, an incompatibility of _DummyThread with
the threading shutdown logic which relies on the main thread
having tstate_lock.

(cherry picked from commit 49785b06de)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
2024-01-22 15:24:43 +00:00
Miss Islington (bot)
d1f731ff08
[3.12] gh-111803: Make test_deep_nesting from test_plistlib more strict (GH-114026) (GH-114406)
It is no longer silently passed if RecursionError was raised for low
recursion depth.
(cherry picked from commit db1c18eb62)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-01-22 17:16:12 +02:00
Miss Islington (bot)
58fdd15d5a
[3.12] gh-108303: Move smtpd to test.support (GH-114368) (#114427)
gh-108303: Move `smtpd` to `test.support` (GH-114368)

Update test_logging.py and test_smtplib.py.
(cherry picked from commit 8f5e7d739f)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-01-22 14:08:31 +00:00
Miss Islington (bot)
33c1907de2
[3.12] gh-114328: tty cbreak mode should not alter ICRNL (GH-114335) (#114410)
The terminal CR -> NL mapping setting should be inherited in cbreak mode as OSes do not specify altering it as part of their stty cbreak mode definition.
(cherry picked from commit fd49e22670)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
2024-01-21 23:41:03 +00:00
Jérome Perrin
00e8c9ce9e
[3.12] gh-113358: Fix rendering tracebacks with exceptions with a broken __getattr__ (GH-113359) (#114173) 2024-01-21 17:12:17 +00:00
Peter Lazorchak
ae2a25bf60
[3.12] Check for valid tp_version_tag in specializer (gh-89811) (gh-114216) 2024-01-20 04:45:33 +08:00
Miss Islington (bot)
a76d0104d7
[3.12] gh-108303: Move all doctest related files and tests to Lib/test/test_doctest/ (GH-112109) (#114254)
gh-108303: Move all doctest related files and tests to `Lib/test/test_doctest/` (GH-112109)
(cherry picked from commit 9c93350f58)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
Co-authored-by: Brett Cannon <brett@python.org>
2024-01-18 16:25:04 +00:00
Miss Islington (bot)
c2a2126782
[3.12] gh-113205: test_multiprocessing.test_terminate: Shorter sleep for threadpools (GH-114186) (GH-114222)
Threads can't be forced to terminate (without potentially corrupting too much
state), so the  expected behaviour of `ThreadPool.terminate` is to wait for
the currently executing tasks to finish.

Use shorter sleep time for threadpools, so if a task manages to start, the test
doesn't block for long.

(cherry picked from commit c1db960608)

Co-authored-by: Petr Viktorin <encukou@gmail.com>
2024-01-18 13:49:24 +01:00
Miss Islington (bot)
eb582df61f
[3.12] gh-104522: Fix test_subprocess failure when build Python in the root home directory (GH-114236) (GH-114239)
EPERM is raised when setreuid() fails.
EACCES is set in execve() when the test user has not access to sys.executable.
(cherry picked from commit 311d1e2701)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-01-18 13:18:15 +01:00
Miss Islington (bot)
35e330ba85
[3.12] gh-114149: [Enum] revert GH-114196 and add more tuple-subclass tests (GH-114215) (GH-114218)
gh-114149: [Enum] revert GH-114160 and add more tuple-subclass tests (GH-114215)

This reverts commit 05e142b154.
(cherry picked from commit 4c7e09d012)

Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
2024-01-17 20:36:28 -08:00
Miss Islington (bot)
f8fc8534c4
[3.12] gh-104522: Fix OSError raised when run a subprocess (GH-114195) (#114219)
gh-104522: Fix OSError raised when run a subprocess (GH-114195)

Only set filename to cwd if it was caused by failed chdir(cwd).

_fork_exec() now returns "noexec:chdir" for failed chdir(cwd).

(cherry picked from commit e2c097ebde)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Robert O'Shea <PurityLake@users.noreply.github.com>
2024-01-18 01:19:11 +00:00