Commit graph

23908 commits

Author SHA1 Message Date
Gregory P. Smith
c7b0feca25
[3.9] bpo-43710: Rollback the 3.9 bpo-42500 fix, it broke the ABI in 3.9.3 (#25179)
This reverts commit 8b795ab554.

It changed the PyThreadState structure size, breaking the ABI in 3.9.3.
2021-04-04 13:02:29 +02:00
Łukasz Langa
fbd4e58f63 Python 3.9.3
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEE4/8oOcBIslwITevpsmmV4xAlBWgFAmBm6VQACgkQsmmV4xAl
 BWiEWg/6A9IMEpPRP1GbCuyCjLQksZ2E/dNCvO+80z+DiVsyKVkH40JGisSmuYlo
 JAmU8I316iDhkNbKZ7df7hqP3VRbkR4Sf23pmd3j75sN3jsAkEhqOrAVwZWPN2wi
 ipGwntIzuQ9xjCLcHbn0JP7jJhbcHX/R+QFmDHWx0UCgeML4jIggY2k36+DuWUnL
 dJAMJnmhK+GL5twTo4aWpXx2p7t82aHWZina1F3Zxsdm/oi9Kdng5yr65Plw0h27
 AdV6JpJhzSGZE/g0EKBMRx1oEbFYrub0Ki4vtwWnICLOimIR6pxFO+ntJnIz4I0F
 ESdojHPhTeZPWbLSTW1RMpJzsjjSX/rS0aJ2aGjVQFHEbIKpTPS6PbRddZitzQD9
 Fk+3ZpJBBiTf5tHv1YrxZJgEfGQ7qX58oGyR+ukO+VKvdOPYh3rWO1RP0Jt/b39g
 4wWbJ/KJfiylmr7Q1toYrCYuGhyrYQQdRh1rc6aHF2gFkzdoygMEFQs118Zh6qGC
 /XdQvpPNvoLkQGAk0dm4MfmuTU+5nIkrf1ptleEXd4kjvxaAExyXKHCvA+55hIJt
 0bEVb0jBqzUDQ8oR9sCqH00av31h0A5XmuMvZ9VjzVtwmunJjzs3wk30P9vgT5Fw
 sgWV8bpyr8NH9O6Dx0QgT6KrKXN7jWOhh0gAXPlG2GZqKPUUzpM=
 =fyCu
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCAAuFiEE4/8oOcBIslwITevpsmmV4xAlBWgFAmBnVrMQHGx1a2FzekBs
 YW5nYS5wbAAKCRCyaZXjECUFaBXrD/4xutr97e/fp8LAdR2FvFDHK5+yOwTNFbPA
 Zqn/U5Sq0wAZvpEyCPcF0wV++Pt+yzEsY1OYQOynW504QdicUIflrSR3nx+8W7Wc
 FCEOtIIZ0nICteMVgx7HuxuVmojrCAvBXzsf68vy0hZY96WBL+VkiZAK13JQIeHh
 c+HqoAh3Z5NB5SXBk4GgKBxG91bJsj0zbsUIlKeeFV0dz3M+LJvRWZO0IgwDL8bU
 3QTZ6cfzqRIBfkx2FROC9bYoOZQ2yrdtvZGURKYDTjbDSXSWfnEu97Jox5wScYCO
 h3qbemgeyRZueBEFANK/A1BbkLyf3gpJQYQ1FnFD0Z9EkveCP/gcVx7QzyeUUt4l
 WAWxS4O7Li59Bn8BcFczt53/ks4ZtIdRgWEdIeMI7NREQgM/3139XTlgEZ04OUKi
 ch+1f+81khgWSc1GLPR9wbnU7YdvGEEk9j1h5PiOhZ/+JWsgQil1FLKb67fU1zDI
 mNdGdF3dzkM6THc7yOaAr5IcUZ5JCCEAX3TkZBRDAg31IhZrnZtGKw04kX5R9JBY
 R5ZIqNddBT9/RQFLCGtKVP+8QxTiWwZP2wP1ygXiJFS0UAtnMIdBR79FvSSgxsNK
 DLAkCkX0u1WYH6oU2h5L/tPQrYYf6h8nXrA+zURl/0Q3MZRcxx0B1IG9FtLl0zvt
 M7Tl8eRobg==
 =t2Mf
 -----END PGP SIGNATURE-----

Merge tag 'v3.9.3' into 3.9

Python 3.9.3
2021-04-02 19:38:57 +02:00
Irit Katriel
7ad56e2545
[3.9] bpo-26053: Fix args echoed by pdb run command (GH-25149)
* bpo-26053: Fix args echoed by pdb run command (GH-22033)

(cherry picked from commit 652bfdee94)

* bpo-26053: Fix test_pdb.test_issue26053() (GH-25139)

(cherry picked from commit bd4ab8e739)
2021-04-02 13:16:55 +02:00
Łukasz Langa
e723086bc3
Python 3.9.3 2021-04-02 11:51:53 +02:00
Miss Islington (bot)
fabdd25fe5
bpo-37945: Fix test_locale.test_getsetlocale_issue1813() (GH-25110) (GH-25112)
Skip the test if setlocale() fails.
(cherry picked from commit f3ab670fea)

Co-authored-by: Victor Stinner <vstinner@python.org>
2021-03-31 13:52:14 +02:00
Miss Islington (bot)
84694c3e7a
bpo-42225: IDLE - document two unix-related problems. (GH-25078)
1. Bad IP masquerade rules can prevent startup.
2. X cannot handle some complex colored chars.
(cherry picked from commit 1b4a9c7956)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2021-03-30 22:44:26 -07:00
Miss Islington (bot)
b500bd8e67
bpo-43399: Fix ElementTree.extend not working on iterators (GH-24751)
(cherry picked from commit 51a85ddce8)

Co-authored-by: Alex Prengère <2138730+alexprengere@users.noreply.github.com>
2021-03-30 14:36:25 -07:00
Christian Heimes
cd82d59206
[3.9] bpo-43631: Update to OpenSSL 1.1.1k (GH-25024) (GH-25088)
Signed-off-by: Christian Heimes <christian@python.org>

Automerge-Triggered-By: GH:tiran.
(cherry picked from commit a54fc683f2)

Co-authored-by: Christian Heimes <christian@python.org>
2021-03-30 01:58:06 -07:00
Miss Islington (bot)
ff4715a733
bpo-43660: Fix crash when displaying exceptions with custom values for sys.stderr (GH-25075) (GH-25083)
(cherry picked from commit 09b90a037d)

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

Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
2021-03-30 00:24:33 +01:00
Miss Islington (bot)
d914813a7a
bpo-35930: Raising an exception raised in a "future" instance will create reference cycles (GH-24995) (#25070)
Before: 0c14bc58/attachment-0002.png

After: 0c14bc58/attachment-0003.png
(cherry picked from commit 32430aadad)

Co-authored-by: Jesús Cea <jcea@jcea.es>

Co-authored-by: Jesús Cea <jcea@jcea.es>
2021-03-29 19:53:54 +02:00
Miss Islington (bot)
5334605035
bpo-43433: Preserve query and fragment in the URL of the server in ServerProxy. (GH-25057)
(cherry picked from commit c1b073a630)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-03-29 07:43:02 -07:00
Miss Islington (bot)
ed753d9485
bpo-42988: Remove the pydoc getfile feature (GH-25015)
CVE-2021-3426: Remove the "getfile" feature of the pydoc module which
could be abused to read arbitrary files on the disk (directory
traversal vulnerability). Moreover, even source code of Python
modules can contain sensitive data like passwords. Vulnerability
reported by David Schwörer.
(cherry picked from commit 9b999479c0)

Co-authored-by: Victor Stinner <vstinner@python.org>
2021-03-29 06:08:00 -07:00
Christian Heimes
064bc07f24
[3.9] bpo-43617: Check autoconf-archive package in configure.ac (GH-25016) (GH-25034)
Signed-off-by: Christian Heimes <christian@python.org>.
(cherry picked from commit 5d6e8c1c1a)

Co-authored-by: Christian Heimes <christian@python.org>
2021-03-27 22:47:00 +01:00
Miss Islington (bot)
994a519915
bpo-43555: Report the column offset for invalid line continuation character (GH-24939) (#24975)
(cherry picked from commit 96eeff5162)

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

Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
2021-03-22 19:07:05 +00:00
Miss Islington (bot)
c145c03281
bpo-43577: Fix deadlock with SSLContext._msg_callback and sni_callback (GH-24957)
OpenSSL copies the internal message callback from SSL_CTX->msg_callback to
SSL->msg_callback. SSL_set_SSL_CTX() does not update SSL->msg_callback
to use the callback value of the new context.

PySSL_set_context() now resets the callback and _PySSL_msg_callback()
resets thread state in error path.

Signed-off-by: Christian Heimes <christian@python.org>
(cherry picked from commit 77cde5042a)

Co-authored-by: Christian Heimes <christian@python.org>
2021-03-21 08:39:15 -07:00
Antoine Pitrou
ac17ed60f2
[3.9] bpo-43517: Fix false positive in detection of circular imports (GH-24895) (GH-24948)
(cherry picked from commit 2fd16ef406)

Co-authored-by: Antoine Pitrou <antoine@python.org>

Automerge-Triggered-By: GH:pitrou
2021-03-20 12:40:18 -07:00
Miss Islington (bot)
e8e341993e
bpo-43521: Allow ast.unparse with empty sets and NaN (GH-24897)
Automerge-Triggered-By: GH:pablogsal
(cherry picked from commit 08ff4369af)

Co-authored-by: Kodi Arfer <Kodiologist@users.noreply.github.com>
2021-03-18 15:51:47 -07:00
Miss Islington (bot)
3365e684a8
bpo-41561: Add workaround for Ubuntu's custom security level (GH-24915)
Ubuntu 20.04 comes with a patched OpenSSL 1.1.1. Default security level
2 blocks TLS 1.0 and 1.1 connections. Regular OpenSSL 1.1.1 builds allow
TLS 1.0 and 1.1 on security level 2.

See:
See: 1899878
See: 1917625
Signed-off-by: Christian Heimes <christian@python.org>
(cherry picked from commit f6c6b5821b)

Co-authored-by: Christian Heimes <christian@python.org>
2021-03-18 15:31:34 -07:00
Miss Islington (bot)
aa967ec4d4
bpo-35883: Py_DecodeLocale() escapes invalid Unicode characters (GH-24843)
Python no longer fails at startup with a fatal error if a command
line argument contains an invalid Unicode character.

The Py_DecodeLocale() function now escapes byte sequences which would
be decoded as Unicode characters outside the [U+0000; U+10ffff]
range.

Use MAX_UNICODE constant in unicodeobject.c.
(cherry picked from commit 9976834f80)

Co-authored-by: Victor Stinner <vstinner@python.org>
2021-03-17 14:11:14 -07:00
Miss Islington (bot)
7dcb4baa4f
bpo-43285 Make ftplib not trust the PASV response. (GH-24838)
bpo-43285: Make ftplib not trust the PASV response.

The IPv4 address value returned from the server in response to the PASV command
should not be trusted.  This prevents a malicious FTP server from using the
response to probe IPv4 address and port combinations on the client network.

Instead of using the returned address, we use the IP address we're
already connected to.  This is the strategy other ftp clients adopted,
and matches the only strategy available for the modern IPv6 EPSV command
where the server response must return a port number and nothing else.

For the rare user who _wants_ this ugly behavior, set a `trust_server_pasv_ipv4_address`
attribute on your `ftplib.FTP` instance to True.
(cherry picked from commit 0ab152c6b5)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
2021-03-15 12:02:45 -07:00
Miss Islington (bot)
c3f03333c3
bpo-43199: Briefly explain why no goto (GH-24852)
Answer "Why is there no goto?" in the Design and History FAQ.
(cherry picked from commit 5e29021a5e)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2021-03-14 21:21:36 -07:00
Miss Islington (bot)
32717b982d
bpo-27820: Fix AUTH LOGIN logic in smtplib.SMTP (GH-24118) (#24832)
* Fix auth_login logic (bpo-27820)

* Also fix a longstanding bug in the SimSMTPChannel.found_terminator() method that causes inability to test
SMTP AUTH with initial_response_ok=False.
(cherry picked from commit 7591d9455e)

Co-authored-by: Pandu E POLUAN <pepoluan@gmail.com>
2021-03-12 16:15:23 -08:00
Miss Islington (bot)
ad83fde754
bpo-43423 Fix IndexError in subprocess _communicate function (GH-24777)
Check to make sure stdout and stderr are not empty before selecting an item from them in Windows subprocess._communicate.

Co-authored-by: Gregory P. Smith <greg@krypto.org>
(cherry picked from commit b4fc44bb2d)

Co-authored-by: Chris Griffith <chris@cdgriffith.com>
2021-03-11 17:56:35 -08:00
Pablo Galindo
f814675376
[3.9] bpo-43439: Add audit hooks for gc functions (GH-24794). (GH-24811)
(cherry picked from commit b4f9089d4a)

Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
2021-03-10 00:50:29 -08:00
Miss Islington (bot)
c6e7cf1ee0
bpo-43332: Buffer proxy connection setup packets before sending. (GH-24780)
We now buffer the CONNECT request + tunnel HTTP headers into a single
send call.  This prevents the OS from generating multiple network
packets for connection setup when not necessary, improving efficiency.
(cherry picked from commit c25910a135)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
2021-03-07 23:59:37 -08:00
Miss Islington (bot)
1385f8355a
[3.9] bpo-43406: Fix possible race condition where `PyErr_CheckSignals` tries to execute a non-Python signal handler (GH-24756) (GH-24761)
We can receive signals (at the C level, in `trip_signal()` in signalmodule.c) while `signal.signal` is being called to modify the corresponding handler.  Later when `PyErr_CheckSignals()` is called to handle the given signal, the handler may be a non-callable object and would raise a cryptic asynchronous exception.
(cherry picked from commit 68245b7a10)


Co-authored-by: Antoine Pitrou <antoine@python.org>
2021-03-06 07:07:46 -08:00
Miss Islington (bot)
65f3a0d20c
bpo-43407: Clarify comparisons of time.monotonic() et al results (GH-24757)
Previous wording implied that only the result of call N and N+1 could be
meaningfully compared, whereas comparing call N and N+M is fine.
(cherry picked from commit ff5f05934d)

Co-authored-by: Alex Willmer <alex@moreati.org.uk>
2021-03-05 17:48:33 -08:00
Miss Islington (bot)
0e76157b0c
[3.9] bpo-37193: Remove thread objects which finished process its request (GH-23127) (GH-24750)
This reverts commit aca67da4fe.
(cherry picked from commit b5711c940f)


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

Automerge-Triggered-By: GH:jaraco
2021-03-04 08:36:41 -08:00
Senthil Kumaran
bf566847f5
[3.9] bpo-42782: Fail fast for permission errors in shutil.move() (GH-24001) (#24725)
* Fail fast in shutil.move() to avoid creating destination directories on failure.

Co-authored-by: Zackery Spytz <zspytz@gmail.com>
(cherry picked from commit 132131b404)

Co-authored-by: Winson Luk <winson.luk@gmail.com>

Co-authored-by: Winson Luk <winson.luk@gmail.com>
2021-03-03 08:04:00 -08:00
Mark Shannon
8b795ab554
bpo-42500: Fix recursion in or after except (GH-23568) (#24501)
* Use counter, rather boolean state when handling soft overflows.

(cherry picked from commit 4e7a69bdb6)
2021-03-02 11:36:38 +01:00
Miss Islington (bot)
982e8ecbdf
bpo-41837: Update macOS installer build to use OpenSSL 1.1.1j. (GH-24677)
(cherry picked from commit 0242494a15)

Co-authored-by: Ned Deily <nad@python.org>
2021-03-01 00:01:43 -08:00
Miss Islington (bot)
adea9b86a9
bpo-43316: gzip: CLI uses non-zero return code on error. (GH-24647)
Exit code is now 1 instead of 0. A message is printed to stderr instead of stdout. This is
the proper behaviour for a tool that can be used in scripts.
(cherry picked from commit cc3df6368d)

Co-authored-by: Ruben Vorderman <r.h.p.vorderman@lumc.nl>
2021-02-26 10:13:17 +09:00
Miss Islington (bot)
e202f1e4db
bpo-43283: Add IDLE doc paragraph about print speed (GH-24615)
Printing to IDLE's Shell is often slower than printing to a system
terminal, but it can be made faster by pre-formatting a single
string before printing.
(cherry picked from commit 2827e8a177)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2021-02-23 17:03:37 -08:00
Miss Islington (bot)
93853b73b6
bpo-36346: Document removal schedule of deprecate APIs (GH-20879)
We will remove wstr cache in Python 3.12. See PEP 623.
(cherry picked from commit 2d6f2eed14)

Co-authored-by: Inada Naoki <songofacandy@gmail.com>
2021-02-22 15:30:52 -08:00
Inada Naoki
d51436f95b
bpo-43260: io: Prevent large data remains in textio buffer. (GH-24592)
When very large data remains in TextIOWrapper, flush() may fail forever.

So prevent that data larger than chunk_size is remained in TextIOWrapper internal
buffer.

Co-Authored-By: Eryk Sun
(cherry picked from commit 01806d5)
2021-02-22 10:32:55 +09:00
Neil Schemenauer
44fe32061d
[3.9] bpo-43288: Fix bug in test_importlib test. (GH-24616)
* bpo-43288: Fix bug in test_importlib test. (GH-24612)
* Fix failed merge of bpo-43288. (GH-24614)
2021-02-21 15:24:41 -08:00
Miss Islington (bot)
7cc58890b3
bpo-27646: Say that 'yield from' expression can be any iterable (GH-24595)
Previously, the doc at least strongly implied that it had to be an iterator.
(cherry picked from commit 2f9ef514fb)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2021-02-20 18:55:49 -08:00
Łukasz Langa
1a79785e3e
Python 3.9.2 2021-02-19 13:31:44 +01:00
Zackery Spytz
ebe20d9e7e
bpo-43155: Add PyCMethod_New to PC/python3.def (GH-24500) (GH-24554)
(cherry picked from commit 8a8b5df93f)
2021-02-17 11:53:45 +01:00
Łukasz Langa
4064156d62
Python 3.9.2rc1 2021-02-16 21:10:19 +01:00
Miss Islington (bot)
85fd9f4e45
bpo-42819, readline: Disable bracketed paste (GH-24108) (GH-24545)
(cherry picked from commit 755f3c1521)

Co-authored-by: Dustin Rodrigues <dust.rod@gmail.com>

Co-authored-by: Dustin Rodrigues <dust.rod@gmail.com>
2021-02-16 01:18:07 +01:00
Senthil Kumaran
c9f07813ab
[3.9] bpo-42967: only use '&' as a query string separator (GH-24297) (#24528)
(cherry picked from commit fcbe0cb04d)

* [3.9] bpo-42967: only use '&' as a query string separator (GH-24297)

bpo-42967: [security] Address a web cache-poisoning issue reported in urllib.parse.parse_qsl().

urllib.parse will only us "&" as query string separator by default instead of both ";" and "&" as allowed in earlier versions. An optional argument seperator with default value "&" is added to specify the separator.

Co-authored-by: Éric Araujo <merwok@netwok.org>
Co-authored-by: Ken Jin <28750310+Fidget-Spinner@users.noreply.github.com>
Co-authored-by: Adam Goldschmidt <adamgold7@gmail.com>
2021-02-15 10:03:31 -08:00
Miss Islington (bot)
68d6bc798b
bpo-43174: Windows: Use /utf-8 compiler option. (GH-24498)
(cherry picked from commit fedd86df24)

Co-authored-by: Inada Naoki <songofacandy@gmail.com>
2021-02-12 13:33:35 +09:00
Miss Islington (bot)
29584aa6ac
bpo-43102: Set namedtuple __new__'s internal builtins to a dict. (GH-24439) (GH-24452) 2021-02-04 16:12:34 -08:00
Miss Islington (bot)
12bfc595c4
bpo-43108: Fix a reference leak in the curses module (GH-24420)
(cherry picked from commit bb739ec922)

Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
2021-02-03 05:41:09 -08:00
Miss Islington (bot)
0874491bcc
bpo-41748: Handles unquoted attributes with commas (GH-24072)
* bpo-41748: Adds tests for unquoted attributes with comma

* bpo-41748: Handles unquoted attributes with comma

* bpo-41748: Addresses review comments

* bpo-41748: Addresses review comments

* Adds more test cases
* Simplifies the regex for handling spaces

* bpo-41748: Moves attributes tests under the right class

* bpo-41748: Addresses review about duplicate attributes

* bpo-41748: Adds NEWS.d entry for this patch
(cherry picked from commit 9eb11a139f)

Co-authored-by: Karl Dubost <karl+github@la-grange.net>
2021-02-01 12:54:43 -08:00
Miss Islington (bot)
d6675fee1a
bpo-42504: Ensure that get_config_var('MACOSX_DEPLOYMENT_TARGET') is a string (GH-24341) (GH-24410)
* bpo-42504: Ensure that get_config_var('MACOSX_DEPLOYMENT_TARGET') is a string
(cherry picked from commit 49926cf2bc)

Co-authored-by: Ronald Oussoren <ronaldoussoren@mac.com>
2021-01-31 23:22:48 -05:00
Serhiy Storchaka
3c8d693443
[3.9] bpo-41604: Don't decrement the reference count of the previous user_ptr when set_panel_usertpr fails (GH-21933). (GH-24403)
(cherry picked from commit 3243e8a4b4)

Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>
2021-01-31 21:44:31 +02:00
Miss Islington (bot)
995a6c0150
bpo-43030: Fixed a compiler warning in Py_UNICODE_ISSPACE with signed wchar_t (GH-24350)
(cherry picked from commit 42b1806af9)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-01-31 06:20:14 -08:00
Miss Islington (bot)
bf782b2636
bpo-43008: Add 'Patch by Ken Hilton' (GH-24370) (#24374)
(cherry picked from commit 11d75ec807)
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2021-01-29 13:51:46 -05:00