Commit graph

24213 commits

Author SHA1 Message Date
Sam Gross
2a32dbf110
[3.9] bpo-45838: Fix incorrect line numbers in Tools/gdb/libpython.py (GH-29628)
The line number calculation in libpython.py did not properly handle
negative (signed) line table deltas.
2021-11-19 19:53:46 +01:00
Mark Shannon
4296396db0
[3.9] bpo-45806: Fix recovery from stack overflow for 3.9. Again. (GH-29640)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2021-11-19 19:51:50 +01:00
Miss Islington (bot)
c06c7c489a
[3.9] bpo-45788: Link sys.prefix doc to 'Installation paths' (GH-29606) (GH-29632)
... To the Installation paths section of the sysconfig doc.
(cherry picked from commit 4575c01b75)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2021-11-18 16:45:15 -05:00
Miss Islington (bot)
9450c751cc
bpo-45835: Fix race condition in test_queue (GH-29601)
Some of the tests in test_queue had a race condition in which a
non-sentinel value could be enqueued after the final sentinel value
leading to not all the inputs being processed (and test failures).

This changes feed() to enqueue a sentinel once the inputs are exhausted,
which guarantees that the final queued object is a sentinel. This
requires the number of feeder threads to match the number of consumer
threads, but that's already the case in the relevant tests.
(cherry picked from commit df3e53d86b)

Co-authored-by: Sam Gross <colesbury@gmail.com>
2021-11-18 08:16:06 -08:00
Miss Islington (bot)
71d842b9c1
bpo-29620: iterate over a copy of sys.modules (GH-4800) (GH-29605)
unittest.TestCase.assertWarns no longer raises a RuntimeException
when accessing a module's ``__warningregistry__`` causes importation of a new
module, or when a new module is imported in another thread.

Patch by Kernc.
(cherry picked from commit 46398fba4d)

Co-authored-by: kernc <kerncece@gmail.com>
2021-11-18 17:09:41 +01:00
Miss Islington (bot)
00ee14e814
[3.9] bpo-45820: Fix a segfault when the parser fails without reading any input (GH-29580) (GH-29584)
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2021-11-18 01:24:43 +01:00
Pablo Galindo Salgado
0ef308a289
bpo-45822: Respect PEP 263's coding cookies in the parser even if flags are not provided (GH-29582) (GH-29585)
(cherry picked from commit da20d7401d)
2021-11-18 00:18:16 +01:00
Sam Gross
87787c8774
[3.9] bpo-42540: reallocation of id_mutex should not force default allocator (GH-29564) (GH-29600)
Unlike the other locks reinitialized by _PyRuntimeState_ReInitThreads,
the "interpreters.main->id_mutex" is not freed by _PyRuntimeState_Fini
and should not force the default raw allocator..
(cherry picked from commit 736684b1bb)

Co-authored-by: Sam Gross <colesbury@gmail.com>
2021-11-17 23:53:33 +01:00
Miss Islington (bot)
ac89f8cab7
bpo-45831: _Py_DumpASCII() uses a single write() call if possible (GH-29596) (GH-29597)
If the string is ASCII only and doesn't need to escape characters,
write the whole string with a single write() syscall.
(cherry picked from commit b919d8105c)

Co-authored-by: Victor Stinner <vstinner@python.org>
2021-11-17 22:59:42 +01:00
Miss Islington (bot)
b0bdc093c2
bpo-25381: Update explanation of exceptions in C. (GH-26838) (GH-29569)
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>

(cherry picked from commit ad43dc0b54)
2021-11-15 18:07:58 -05:00
Łukasz Langa
ccb0e6a345
Python 3.9.9 2021-11-15 18:43:00 +01:00
Pablo Galindo Salgado
142fcb40b6
bpo-45738: Fix computation of error location for invalid continuation characters in the parser (GH-29550) (GH-29552)
(cherry picked from commit 25835c518a)
2021-11-14 01:47:27 +00:00
Jason R. Coombs
3e0b830e85
[3.9] [bpo-45765] Fix distribution discovery on empty path. (GH-29487). (GH-29511)
(cherry picked from commit 6ec0dec7b7)

Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
2021-11-13 15:07:22 -05:00
Miss Islington (bot)
b952f60213
[3.9] bpo-45772: socket.socket should be a class instead of a function (GH-23960) (GH-29543)
* [bpo-45772](): socket.socket should be a class instead of a function

Currently `socket.socket` is documented as a function, but it is really
a class (and thus has function-like usage to construct an object). This
correction would ensure that Python projects that are interlinking
Python's documentation can properly locate `socket.socket` as a type.
(cherry picked from commit 4c792f39e6)


Co-authored-by: Hong Xu <hong@topbug.net>

Automerge-Triggered-By: GH:asvetlov
2021-11-12 22:29:01 -08:00
Miss Islington (bot)
587ff7f50b
bpo-45235: Revert an argparse bugfix that caused a regression (GH-29525) (GH-29531) 2021-11-12 12:44:25 -06:00
Steve Dower
4d1cdd7006
bpo-45732: Update bundled Tcl/Tk on Windows to 8.6.12 (GH-29477) 2021-11-09 19:12:56 +00:00
Miss Islington (bot)
f5287ecd59
bpo-45392: Update the docstring of the 'type' built-in (GH-29439) (GH-29453)
(cherry picked from commit 9127520729)

Co-authored-by: Mark Dickinson <mdickinson@enthought.com>
2021-11-06 21:17:59 +01:00
Miss Islington (bot)
a932631890
bpo-45644: Make json.tool read infile before writing to outfile (GH-29273) (GH-29446)
so that

$ python -m json.tool foo.json foo.json

doesn't result in an empty foo.json.

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit 815dad42d5)

Co-authored-by: Chris Wesseling <chris.wesseling@protonmail.com>
2021-11-06 19:01:44 +01:00
Miss Islington (bot)
5017306c87
bpo-45720: Drop references to shlwapi.dll on Windows (GH-29417)
(cherry picked from commit 804ea41211)

Co-authored-by: Steve Dower <steve.dower@python.org>

Co-authored-by: Steve Dower <steve.dower@python.org>
2021-11-06 01:38:50 +00:00
Łukasz Langa
bb3fdcfe95
Python 3.9.8 2021-11-05 20:21:41 +01:00
Miss Islington (bot)
a8ae7a5613
bpo-45762: Improve docs for `@singledispatch/@singledispatchmethod` (GH-29426) (GH-29430)
(cherry picked from commit 71e8a3e76a)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2021-11-05 17:52:14 +01:00
Miss Islington (bot)
1e29dce113
bpo-30570: Use Py_EnterRecursiveCall() in issubclass() (GH-29048) (GH-29178)
* Use Py_EnterRecursiveCall() in issubclass()

Reviewed-by: Gregory P. Smith <greg@krypto.org> [Google]
(cherry picked from commit 423fa1c181)

Co-authored-by: Dennis Sweeney <36520290+sweeneyde@users.noreply.github.com>
2021-11-04 21:20:21 +01:00
Alex Waygood
effb72fa0f
[3.9] bpo-45678: Fix singledispatchmethod classmethod/staticmethod bug (GH-29394)
This PR fixes a bug in the 3.9 branch where
``functools.singledispatchmethod`` did not properly wrap attributes such as
``__name__``, ``__doc__`` and ``__module__`` of the target method. It also
backports tests already merged into the 3.11 and 3.10 branches in #29328 and
#29390.

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2021-11-04 20:34:14 +01:00
Miss Islington (bot)
e813dd4d7b
bpo-45680: `typing docs: improve links to docs on GenericAlias/__class_getitem__` (GH-29387)
(cherry picked from commit e03e50377d)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2021-11-03 21:34:31 -07:00
Łukasz Langa
8198617bcc
[3.9] bpo-45578: add tests for dis.distb (GH-29332) (#29386)
(cherry picked from commit e346f19681)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2021-11-03 17:47:04 +01:00
Serhiy Storchaka
bbcf06bf95
[3.9] bpo-45679: Fix caching of multi-value typing.Literal (GH-29334) (GH-29342)
Literal[True, 2] is no longer equal to Literal[1, 2]..
(cherry picked from commit 634984d7db)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-11-03 17:28:55 +08:00
Miss Islington (bot)
5f527caf15
bpo-45406: make inspect.getmodule() return None when getabsfile() raises FileNotFoundError (GH-28824)
(cherry picked from commit a459a81530)

Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
2021-11-02 15:26:40 -07:00
Miss Islington (bot)
91a51c5ffc
[3.9] bpo-43158: Use configure values for building _uuid extension (GH-29353) (GH-29363)
Co-authored-by: Christian Heimes <christian@python.org>
2021-11-02 12:52:42 +01:00
Miss Islington (bot)
b04b307e0e
bpo-45516: add protocol description to the Traversable documentation (GH-29039)
* bpo-45516: add protocol description to the Traversable documentation

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Update Doc/library/importlib.rst

Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>

* Update Lib/importlib/abc.py

* Update Doc/library/importlib.rst

Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>

Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
(cherry picked from commit 4d03de3329)

Co-authored-by: Filipe Laíns <filipe.lains@gmail.com>
2021-10-31 12:27:49 -07:00
Łukasz Langa
ed807bf333
[3.9] bpo-45581: Raise MemoryError in sqlite3.connect if SQLite signals memory error (GH-29171) (GH-29324)
(cherry picked from commit e2e62b3808)

Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
2021-10-29 23:02:19 +02:00
Miss Islington (bot)
dd674ca96f
bpo-45577: test all pickle protocols in test_zoneinfo (GH-29167) (GH-29295)
(cherry picked from commit 66e6b3dcd3)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2021-10-29 00:00:34 +02:00
Alex Waygood
8813a987b1
[3.9] bpo-45655: Add "relevant PEPs" section to typing documentation (GH-29297)
Backport of https://github.com/python/cpython/pull/29280 to the 3.9 branch.
2021-10-28 23:17:28 +02:00
Miss Islington (bot)
01d11b1d62
bpo-45604: add level argument to multiprocessing.log_to_stderr func (GH-29226) (GH-29284)
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
(cherry picked from commit 1fb968c07a)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2021-10-28 22:03:32 +02:00
Miss Islington (bot)
8e5e74e304
bpo-44828: Avoid tkinter file dialog failure on macOS 12 Monterey (GH-29276)
when using the Tk 8.6.11 provided by python.org macOS installers.
Patch by Marc Culler of the Tk project.
(cherry picked from commit be8318be05)

Co-authored-by: Ned Deily <nad@python.org>
2021-10-28 11:47:53 -07:00
Alex Waygood
97388c204b
[3.9] bpo-39679: Fix singledispatchmethod classmethod/staticmethod bug (GH-29087)
This commit fixes a bug in the 3.9 branch where stacking
`@functools.singledispatchmethod` on top of `@classmethod` or `@staticmethod`
caused an exception to be raised if the method was registered using
type-annotations rather than `@method.register(int)`. Tests for this scenario
were added to the 3.11 and 3.10 branches in #29034 and #29072; this commit
also backports those tests to the 3.9 branch.

Co-authored-by: Yurii Karabas <1998uriyyo@gmail.com>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2021-10-28 18:02:04 +02:00
Miss Islington (bot)
8365a5b5ab
bpo-44904: Fix classmethod property bug in doctest module (GH-28838)
The doctest module raised an error if a docstring contained an example that
attempted to access a classmethod property. (Stacking '@classmethod' on top of
`@property` has been supported since Python 3.9; see
https://docs.python.org/3/howto/descriptor.htmlGH-class-methods.)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
(cherry picked from commit b1302abcc8)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2021-10-28 01:13:45 -07:00
Miss Islington (bot)
21150c6fa3
bpo-45438: format of inspect.Signature with generic builtins (GH-29212)
Use types.GenericAlias in inspect.formatannotation to correctly add
type arguments of builtin types to the string representation of
Signatures.

Co-authored-by: Martin Rückl <martin.rueckl@codecentric.de>
(cherry picked from commit d02ffd1b5c)

Co-authored-by: Martin Rueckl <enigma@nbubu.de>
2021-10-27 15:00:18 -07:00
Miss Islington (bot)
269bf56e3d
bpo-45571: use PY_CFLAGS_NODIST for shared Modules/Setup (GH-29161)
(cherry picked from commit f6e8b80d20)

Co-authored-by: Christian Heimes <christian@python.org>
2021-10-22 11:29:52 -07:00
Miss Islington (bot)
aa8c3446c0
bpo-44959: Add fallback to extension modules with '.sl' suffix on HP-UX (GH-27857)
(cherry picked from commit 2396fa6537)

Co-authored-by: Florin Spătar <florin.spatar@gmail.com>
2021-10-22 04:08:50 -07:00
Miss Islington (bot)
216c040bb1
bpo-43592: Raise RLIMIT_NOFILE in test.libregrtest (GH-29127)
Raise RLIMIT_NOFILE in test.libregrtest.

On macOS the default is often too low for our testsuite to succeed.

Co-authored by reviewer: Victor Stinner
(cherry picked from commit 843b890334)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
2021-10-21 21:48:44 -07:00
Miss Islington (bot)
04485ac988
bpo-45160: Ttk optionmenu only set variable once (GH-28291) (GH-29132)
(cherry picked from commit add46f8476)

Co-authored-by: E-Paine <63801254+E-Paine@users.noreply.github.com>
2021-10-21 22:59:20 +02:00
Miss Islington (bot)
d33fae7105
bpo-45192: Fix a bug that infers the type of an os.PathLike[bytes] object as str (GH-28323) (GH-29112)
An object implementing the os.PathLike protocol can represent a file
system path as a str or bytes object.
Therefore, _infer_return_type function should infer os.PathLike[str]
object as str type and os.PathLike[bytes] object as bytes type.
(cherry picked from commit 6270d3eeaf)

Co-authored-by: Kyungmin Lee <rekyungmin@gmail.com>
2021-10-20 23:25:10 +02:00
Miss Islington (bot)
427ab124b3
bpo-45464: [doc] Explain that subclassing multiple exceptions is fragile (GH-29094) (GH-29105)
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
(cherry picked from commit dff0b71343)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2021-10-20 20:50:28 +02:00
Miss Islington (bot)
1249ce7c6c
bpo-45532: Replace 'default' with 'main' as default in sys.version (GH-29100)
(cherry picked from commit d2cd5eef0c)

Co-authored-by: Jeong YunWon <69878+youknowone@users.noreply.github.com>
2021-10-20 10:45:06 -07:00
Łukasz Langa
88f4ec88e2
[3.9] bpo-45494: Fix parser crash when reporting errors involving invalid continuation characters (GH-28993) (#29071)
There are two errors that this commit fixes:

* The parser was not correctly computing the offset and the string
  source for E_LINECONT errors due to the incorrect usage of strtok().
* The parser was not correctly unwinding the call stack when a tokenizer
  exception happened in rules involving optionals ('?', [...]) as we
  always make them return valid results by using the comma operator. We
  need to check first if we don't have an error before continuing..
(cherry picked from commit a106343f63)

Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>

NOTE: unlike the cherry-picked original, this commit points at a crazy location
due to a bug in the tokenizer that required a big refactor in 3.10 to fix.
We are leaving as-is for 3.9.
2021-10-20 18:51:13 +02:00
Łukasz Langa
a18e4e9c15
[3.9] bpo-45449: add note about PEP 585 in collections.abc's documentation (GH-29047) (GH-29068)
Signed-off-by: Filipe Laíns <lains@riseup.net>

Co-authored-by: Łukasz Langa <lukasz@langa.pl>.
(cherry picked from commit 7bafa0cf58)

Co-authored-by: Filipe Laíns <lains@riseup.net>
2021-10-19 20:50:09 +02:00
Miss Islington (bot)
76578884c5
bpo-45515: Add zoneinfo to the datetime documentation (GH-29038) (GH-29066)
We should have done this way back when 3.9 was released, but it fell off
the radar.

Co-authored-by: Paul Ganssle <git@m.ganssle.io>
(cherry picked from commit 8e40ca127f)
2021-10-19 20:35:56 +02:00
Serhiy Storchaka
6848602806
bpo-45467: Fix IncrementalDecoder and StreamReader in the "raw-unicode-escape" codec (GH-28944) (GH-28953)
They support now splitting escape sequences between input chunks.

Add the third parameter "final" in codecs.raw_unicode_escape_decode().
It is True by default to match the former behavior.

(cherry picked from commit 39aa98346d)
2021-10-14 21:23:52 +03:00
Serhiy Storchaka
7c722e32bf
[3.9] bpo-45461: Fix IncrementalDecoder and StreamReader in the "unicode-escape" codec (GH-28939) (GH-28945)
They support now splitting escape sequences between input chunks.

Add the third parameter "final" in codecs.unicode_escape_decode().
It is True by default to match the former behavior.
(cherry picked from commit c96d1546b1)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-10-14 20:03:29 +03:00
Miss Islington (bot)
fb72034538
[3.9] bpo-24444: fix an error in argparse help when help for an option is blank (GH-28050) (GH-28932)
(cherry picked from commit 6fafc25aea)

Co-authored-by: andrei kulakov <andrei.avk@gmail.com>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2021-10-13 22:36:05 +02:00