Commit graph

24969 commits

Author SHA1 Message Date
Miss Islington (bot)
cadf06eab7
bpo-45574: fix warning about print_escape being unused (GH-29172) (#29176)
It used to be like this:
<img width="1232" alt="Снимок экрана 2021-10-22 в 23 07 40" src="https://user-images.githubusercontent.com/4660275/138516608-fef6ec01-a96a-40f4-81ef-52265b0f536b.png">

Quick `grep` tells that it is just used in one place under `Py_DEBUG`: f6e8b80d20/Parser/tokenizer.cGH-L1047-L1051
<img width="752" alt="Снимок экрана 2021-10-22 в 23 08 09" src="https://user-images.githubusercontent.com/4660275/138516684-ea503136-1e92-48a5-95bb-419e190d5866.png">

I am not sure, but it also looks like a private thing, it should not affect other users.

Automerge-Triggered-By: GH:pablogsal
(cherry picked from commit 4bc5473a42)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2021-10-23 14:35:48 +01:00
Miss Islington (bot)
f812fef2f8
bpo-30570: Use Py_EnterRecursiveCall() in issubclass() (GH-29048)
* 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-10-22 14:46:56 -07:00
Miss Islington (bot)
19903085c3
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:22:01 -07:00
Miss Islington (bot)
8f6aa48cb2
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:47:07 -07:00
Miss Islington (bot)
6b75ad5fd4
bpo-45557: Fix underscore_numbers in pprint.pprint(). (GH-29129)
(cherry picked from commit 087f089e5e)

Co-authored-by: Eric V. Smith <ericvsmith@users.noreply.github.com>
2021-10-21 14:16:59 -07:00
Miss Islington (bot)
98f157de12
bpo-45160: Ttk optionmenu only set variable once (GH-28291) (GH-29131)
(cherry picked from commit add46f8476)

Co-authored-by: E-Paine <63801254+E-Paine@users.noreply.github.com>
2021-10-21 23:02:20 +02:00
Miss Islington (bot)
1cdac61065
bpo-45521: Fix a bug in the obmalloc radix tree code. (GH-29051) (GH-29122)
MAP_BOT_LENGTH was incorrectly used to compute MAP_TOP_MASK instead of
MAP_TOP_LENGTH. On 64-bit machines, the error causes the tree to hold
46-bits of virtual addresses, rather than the intended 48-bits.
(cherry picked from commit 311910b31a)
2021-10-21 08:39:58 -07:00
Miss Islington (bot)
64e83c711e
bpo-45192: Fix a bug that infers the type of an os.PathLike[bytes] object as str (GH-28323) (GH-29111)
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:27:30 +02:00
Miss Islington (bot)
b2a989995e
bpo-45464: [doc] Explain that subclassing multiple exceptions is fragile (GH-29094) (GH-29104)
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:09 +02:00
Miss Islington (bot)
696a89fef8
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:41:35 -07:00
Miss Islington (bot)
5537b9f105
bpo-45536: Check OpenSSL APIs in configure (GH-29088)
(cherry picked from commit 81520fe677)

Co-authored-by: Christian Heimes <christian@python.org>
2021-10-20 08:46:32 -07:00
Miss Islington (bot)
c15ba304f3
bpo-39679: Add tests for classmethod/staticmethod singledispatchmethods (GH-29034) (GH-29072)
In Python 3.8 and 3.9, 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)`. This was not caught by unit tests, however, as the
tests only tested the `@method.register(int)` way of registering additional
implementations. The bug is no longer present in Python 3.10+, but
`test_functools.py` is still lacking regression tests for these cases. This
commit adds these test cases.
(cherry picked from commit ad6d162e51)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2021-10-20 00:07:13 +02:00
Łukasz Langa
5c9cab595e
[3.10] bpo-45494: Fix parser crash when reporting errors involving invalid continuation characters (GH-28993) (GH-29070)
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>
2021-10-19 22:31:18 +02:00
Miss Islington (bot)
092ec4b9d1
bpo-45449: add note about PEP 585 in collections.abc's documentation (GH-29047) (GH-29067)
Signed-off-by: Filipe Laíns <lains@riseup.net>

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit 7bafa0cf58)
2021-10-19 20:41:33 +02:00
Miss Islington (bot)
8cef526a87
bpo-45515: Add zoneinfo to the datetime documentation (GH-29038) (GH-29065)
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:34 +02:00
Miss Islington (bot)
97ce855ca8
bpo-45475: Revert __iter__ optimization for GzipFile, BZ2File, and LZMAFile. (GH-29016)
This reverts commit d2a8e69c2c.
(cherry picked from commit 0a4c82ddd3)

Co-authored-by: Inada Naoki <songofacandy@gmail.com>
2021-10-18 20:15:48 -07:00
Miss Islington (bot)
b1949e0b58
[3.10] bpo-45221: Fix handling of LDFLAGS and CPPFLAGS options in setup.py (GH-29031) (GH-29037)
(cherry picked from commit 6a533a4238)


Co-authored-by: andrei kulakov <andrei.avk@gmail.com>

Automerge-Triggered-By: GH:ned-deily
2021-10-18 11:49:28 -07:00
Miss Islington (bot)
a294703073
[3.10] bpo-45495: Add 'case' and 'match' to IDLE completions list. (GH-29000) (GH-29001)
Since the keyword list is frozen, only compute it once per
session.  The colorizer already handles context keywords.
(cherry picked from commit 42ac06dcd2)


Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>

Automerge-Triggered-By: GH:terryjreedy
2021-10-16 16:14:11 -07:00
Miss Islington (bot)
5df35faf36
bpo-45249: Fix caret location when end_offset is set to 0 (GH-28855)
(cherry picked from commit fe0d9e22a5)

Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2021-10-16 10:51:05 -07:00
Miss Islington (bot)
2b6eb81496
bpo-45428: Fix reading filenames from stdin in py_compile (GH-28848)
Strip trailing '\n'.
(cherry picked from commit 59a633d3e2)

Co-authored-by: Graham Inggs <ginggs@debian.org>
2021-10-15 05:14:35 -07:00
Serhiy Storchaka
4641afef66
[3.10] bpo-45467: Fix IncrementalDecoder and StreamReader in the "raw-unicode-escape" codec (GH-28944) (GH-28952)
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)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-10-14 21:23:39 +03:00
Miss Islington (bot)
0bff4ccbfd
[3.10] bpo-45461: Fix IncrementalDecoder and StreamReader in the "unicode-escape" codec (GH-28939) (GH-28943)
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:02:20 +03:00
Miss Islington (bot)
f40b230df9
bpo-45386: Handle strftime's ValueError graciously in xmlrpc.client (GH-28765) (GH-28934)
At import time, the xmlrpc.client module uses different date formats to
test strftime so it can format years with 4 digits consistently.
Depending on the underlying C library and its strftime implementation
some of these calls can result in ValueErrors, blocking the
xmlrpc.client module from being imported.

This commit changes the behavior of this bit of code to react to
ValueError exceptions, treating the format that caused them as an
non-viable option.
(cherry picked from commit 1c83135381)

Co-authored-by: rtobar <rtobarc@gmail.com>
2021-10-13 19:59:45 +02:00
Miss Islington (bot)
fd2be6da2f
bpo-24444: fix an error in argparse help when help for an option is blank (GH-28050) (GH-28931)
(cherry picked from commit 6fafc25aea)

Co-authored-by: andrei kulakov <andrei.avk@gmail.com>
2021-10-13 19:15:43 +02:00
Łukasz Langa
f8473f6f76
[3.10] bpo-45239: Fix parsedate_tz when time has more than 2 dots in it (GH-28452) (GH-28930)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit b9e687618d)

Co-authored-by: Ben Hoyt <benhoyt@gmail.com>
2021-10-13 19:12:22 +02:00
Miss Islington (bot)
47673c47db
bpo-20692: Add Programming FAQ entry for 1.__class__ error. (GH-28918)
To avoid error, add either space or parentheses.
(cherry picked from commit 380c440875)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2021-10-12 22:37:51 -07:00
Miss Islington (bot)
edae3e2ac7
[3.10] bpo-45405: Prevent `internal configure error when running configure` with recent versions of non-Apple clang. (GH-28845) (GH-28911)
Change the configure logic to function properly on macOS when the compiler
outputs a platform triplet for option --print-multiarch.

Co-authored-by: Ned Deily <nad@python.org>
(cherry picked from commit 9c4766772c)


Co-authored-by: David Bohman <debohman@gmail.com>

Automerge-Triggered-By: GH:ned-deily
2021-10-12 17:31:32 -07:00
Miss Islington (bot)
164dddf5f8
bpo-45416: Fix use of asyncio.Condition() with explicit Lock objects (GH-28850)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
(cherry picked from commit 1a7892414e)

Co-authored-by: Joongi Kim <joongi@lablup.com>
2021-10-10 09:25:14 -07:00
Jason R. Coombs
14a483aa40
[3.10] bpo-45419: Fix interfaces on DegenerateFiles.Path (GH-28844) 2021-10-10 07:23:06 -07:00
Miss Islington (bot)
8772935765
bpo-20028: Improve error message of csv.Dialect when initializing (GH-28705)
(cherry picked from commit 34bbc87b2d)

Co-authored-by: Dong-hee Na <donghee.na@python.org>
2021-10-09 08:35:33 -07:00
Miss Islington (bot)
6846d6712a
bpo-45262, asyncio: Fix cache of the running loop holder (GH-28796) (GH-28816)
Prevent use-after-free of running loop holder via cache.
(cherry picked from commit 392a898353)

Co-authored-by: Matthias Reichl <github@hias.horus.com>
2021-10-08 10:55:41 +02:00
Pablo Galindo Salgado
4ce55a2353
[3.10] bpo-45408: Don't override previous tokenizer errors in the second parser pass (GH-28812). (GH-28813)
(cherry picked from commit 0219017df7)

Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2021-10-08 00:50:10 +01:00
Miss Islington (bot)
eabca6e593
bpo-45337: Use the realpath of the new executable when creating a venv on Windows (GH-28663)
(cherry picked from commit 6811fdaec8)

Co-authored-by: Steve Dower <steve.dower@python.org>
2021-10-07 15:55:05 -07:00
Christian Clauss
212140dceb
[3.10] [Misc] [Mac] Fix typos found using codespell (GH-28756) (GH-28794)
(cherry picked from commit 470145f572)
2021-10-07 17:09:30 +02:00
Miss Islington (bot)
d55bf81c4e
bpo-45400: Fix suggestion test of test_exceptions (GH-28783)
Fix test_name_error_suggestions_do_not_trigger_for_too_many_locals()
of test_exceptions if a directory name contains "a1" (like
"Python-3.11.0a1"): use a stricter regular expression.
(cherry picked from commit 4e605666b0)

Co-authored-by: Victor Stinner <vstinner@python.org>
2021-10-07 05:11:38 -07:00
Miss Islington (bot)
35d4857375
bpo-45385: Fix reference leak from descr_check (GH-28719) (GH-28779) 2021-10-07 16:48:00 +09:00
Miss Islington (bot)
4c35a2aa80
bpo-45328: Avoid failure in OSs without TCP_NODELAY support (GH-28646) (GH-28771)
Operating systems without support for TCP_NODELAY will raise an OSError
when trying to set the socket option, but the show can still go on.
(cherry picked from commit 0571b934f5)

Co-authored-by: rtobar <rtobarc@gmail.com>
2021-10-06 20:29:23 +02:00
Miss Islington (bot)
325e4647af
bpo-45343: Update bundled pip to 21.2.4 and setuptools to 58.1.0 (GH-28684) (GH-28746)
(cherry picked from commit 4c8d543823)

Co-authored-by: Illia Volochii <illia.volochii@gmail.com>
2021-10-06 00:15:46 +02:00
Miss Islington (bot)
d0d29655ff
bpo-44050: Extension modules can share state when they don't support sub-interpreters. (GH-27794) (GH-28738)
Automerge-Triggered-By: GH:encukou
(cherry picked from commit b9bb74871b)

Co-authored-by: Hai Shi <shihai1992@gmail.com>
2021-10-05 18:34:59 +02:00
Miss Islington (bot)
3733dddeca
[3.10] bpo-45371: Fix distutils' rpath support for clang (GH-28732) (GH-28733)
Signed-off-by: Christian Heimes <christian@python.org>
(cherry picked from commit ef6196028f)


Co-authored-by: Christian Heimes <christian@python.org>

Automerge-Triggered-By: GH:tiran
2021-10-05 03:04:52 -07:00
John Belmonte
872b1e537e
[3.10] bpo-44594: fix (Async)ExitStack handling of __context__ (gh-27089) (GH-28730)
Make enter_context(foo()) / enter_async_context(foo()) equivalent to
`[async] with foo()` regarding __context__ when an exception is raised.

Previously exceptions would be caught and re-raised with the wrong
context when explicitly overriding __context__ with None..
(cherry picked from commit e6d1aa1ac6)

Co-authored-by: John Belmonte <john@neggie.net>

Automerge-Triggered-By: GH:njsmith
2021-10-04 23:21:34 -07:00
Pablo Galindo
6145192287 Python 3.10.0
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEz9yiRbEEPPKl+Xhl/+h0BBaL2EcFAmFbPJ8ACgkQ/+h0BBaL
 2EfHRRAAvS0Z8NNZXSzsyQ42kLtR6Sni7hxw5D1ChD0h4hSk+zyybUUnMlAiZhf+
 fGuoj3rTncE/J756EYlF9/tuNVgx/LAkLNzFAIBnCq/r1xaHBQ/E4QxxMoqNQ2Bq
 xfB0gyGScy1HtMF6thhv18udG0Npgu+eIbwtqtVdJeUkuTgTsUz7+EOu9FZdap4t
 s/PB7F29gw8UVVMz8kR6IyIE1Rq6cvSilvgaLkzHiG9A9qLdUDE6qAo2bmx87J20
 7m0IkjqSkIyuNQDCI+lhehCgYNcOqy5f/rwCF1363cCErIZMpo6JOM/Jn9EwGO2H
 Utttg3KghgHiI7Yf2IFTxL2iCgfDiQ871PgcySNeYdM8dCPH/hrWpX5mi6a5Px3f
 8in3QbEN1mCOQFo92b/WyD90L6wpkjjPhMMdvyxaxDH2hluKSa6RCi+0dcegx+qK
 59mJxiz1d52mfRbyq0m0fQXUDcWbtzUgNwa6FYfDoS8bPGT8Fzt5boeI+QxUlUMX
 E3Pqb0s8vt8+Vgyk8xmNK+SbK6JLhYw7p1QYomRI3nS2IgrbRdTL2KQYTwbpnkQV
 vjmEbzMCZRFI9wiozBm8t7PITydTSfcC7DSho31FK9yKd9g1sWjhY7Oclgabezx6
 PjLsg41K/tKLixDqpMAYpPU/1Kdp7i9QHiPckjGRWSqRy2whTwU=
 =A8if
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEz9yiRbEEPPKl+Xhl/+h0BBaL2EcFAmFbUgcACgkQ/+h0BBaL
 2EfmqQ//Tm0Se1IUjcdR2Mlzc75kqZh/q7zSe8e56sgQsAPpkVnZ7eWvQ4QrYYYo
 UEUS/4PRBO3T/aCX4F6rnfZXOfUDrS6u5u6o/bGqBdvyT+0TX3sx33+WioaOrRgH
 7g4Q4NzG+JsfZewADtQHMTpe2v7yfkw9XsK7RUogqn0SXW5csXeRQf7WOdXki9mq
 gIoILPACu4gXyUpYKHGJBbDTF8JbM0sC71bo1WkENMtmFgnGyGuooz4v01NDt+RI
 ZHGjUSLjEMf68TuYnsMzCY/DwFK+uENeISC2jXZKwCTT36TkC7TFQUs24NxDNlPn
 tBf0AqBOBpLXliZZzkHFkHXFKTA+7NDEJu0vdyBq+o+3m9lBd2SJlE+1yWUT06c4
 uirJpRNUVlD/RLAecfBLByJpqKBQA4G/q/MocD32xWqQqCkeSxf1x5gc3YPmfMMp
 jXaNEzp7yP/XVIxvsT+fA6Kpp7ySxTpNNCgrhzEH3GfC/p8g7hBuPYNEjFiYOPQQ
 WS5NbJsuAi7SdfATxcjYaVkQzsn8mJYcN1cUD1HQvCNb28jLFEzzgdIPCDLkTHKL
 35SrFiTJFYXqWZa140j9L/3YROAsUJAmP+jdzRtEYqS4BKpuc0DVWt8p1+bFERH9
 UnMzn5PReIufBi5BjAW6SMNhHYoZC0nqX90T9aQAftYyuBF3d4U=
 =T4+A
 -----END PGP SIGNATURE-----

Merge tag 'v3.10.0' into 3.10

Python 3.10.0
2021-10-04 20:12:06 +01:00
Pablo Galindo
b494f5935c
Python 3.10.0 2021-10-04 18:40:46 +01:00
Miss Islington (bot)
22cf6a2f23
bpo-45329: Fix freed memory access in pyexpat.c (GH-28649)
(cherry picked from commit 0742abdc48)

Co-authored-by: TAGAMI Yukihiro <tagami.yukihiro@gmail.com>
2021-10-02 06:21:55 -07:00
Miss Islington (bot)
2221207f44
bpo-44687: Ensure BufferedReader objects with unread buffers can peek even when the underlying file is closed (GH-28457)
(cherry picked from commit a450398933)

Co-authored-by: AngstyDuck <solsticedante@gmail.com>
2021-10-01 13:30:15 -07:00
Victor Stinner
6df8c32753
bpo-41710: PyThread_acquire_lock_timed() uses sem_clockwait() (GH-28671)
On Unix, if the sem_clockwait() function is available in the C
library (glibc 2.30 and newer), the threading.Lock.acquire() method
now uses the monotonic clock (time.CLOCK_MONOTONIC) for the timeout,
rather than using the system clock (time.CLOCK_REALTIME), to not be
affected by system clock changes.

configure now checks if the sem_clockwait() function is available.
2021-10-01 18:22:49 +02:00
Miss Islington (bot)
fc3511f18e
bpo-45125: Improves pickling docs and tests for shared_memory (GH-28294)
(cherry picked from commit 746d648d47)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2021-10-01 06:09:15 -07:00
Serhiy Storchaka
7873884d47
[3.10] bpo-40173: Fix test.support.import_helper.import_fresh_module() (GH-28654) (GH-28657)
* Work correctly if an additional fresh module imports other
  additional fresh module which imports a blocked module.
* Raises ImportError if the specified module cannot be imported
  while all additional fresh modules are successfully imported.
* Support blocking packages.
* Always restore the import state of fresh and blocked modules
  and their submodules.
* Fix test_decimal and test_xml_etree which depended on an undesired
  side effect of import_fresh_module().
(cherry picked from commit ec4d917a6a)
2021-09-30 19:56:41 +03:00
Miss Islington (bot)
80285ecc8d
closes bpo-44751: Move crypt.h include from public header to _cryptmodule (GH-27394) (GH-28636)
Automerge-Triggered-By: GH:benjaminp
(cherry picked from commit 196998e220)

Co-authored-by: Geoffrey Thomas <geofft@ldpreload.com>
2021-09-30 01:02:11 +02:00
Miss Islington (bot)
01be51833d
bpo-44860: Update test_sysconfig for posix_user platlib (GH-28235) (GH-28251)
Update test_sysconfig.test_user_similar() for the posix_user scheme:
"platlib" doesn't use sys.platlibdir.
(cherry picked from commit 49acac00c0)

Co-authored-by: Victor Stinner <vstinner@python.org>
2021-09-29 12:37:59 +01:00