Commit graph

110427 commits

Author SHA1 Message Date
Miss Islington (bot)
270678564c
bpo-44394: Update libexpat copy to 2.4.1 (GH-26945)
Update the vendored copy of libexpat to 2.4.1 (from 2.2.8) to get the
fix for the CVE-2013-0340 "Billion Laughs" vulnerability. This copy
is most used on Windows and macOS.

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

Co-authored-by: Victor Stinner <vstinner@python.org>
2021-08-29 07:32:50 -07:00
Miss Islington (bot)
532ebba6c8
bpo-42278: Use tempfile.TemporaryDirectory rather than tempfile.mktemp in pydoc (GH-23200)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit c9227df5a9)

Co-authored-by: E-Paine <63801254+E-Paine@users.noreply.github.com>
2021-08-29 05:57:22 -07:00
Miss Islington (bot)
a49398b643
bpo-25130: Make SQLite tests more compatible with PyPy (GH-28021)
(cherry picked from commit 07d3d54f4e)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-08-29 03:43:48 -07:00
Miss Islington (bot)
779b9aef4f
bpo-25130: Make unit-test about restricting the maximum number of nested blocks cpython-only (GH-28002) (GH-28016)
PyPy and potentially other implementations have different or no
contraints on the number of blocks that can be statically nested. move
the test that checks for this behaviour into a unit test and mark it as
CPython-only.
(cherry picked from commit eb263f9a35)

Co-authored-by: Carl Friedrich Bolz-Tereick <cfbolz@gmx.de>
2021-08-28 22:24:02 +03:00
Erlend Egeberg Aasland
2a80893e5c
[3.10] bpo-27334: roll back transaction if sqlite3 context manager fails to commit (GH-26202) (GH-27943) 2021-08-28 19:26:00 +01:00
Miss Islington (bot)
81fa08c5ea
bpo-44524: Fix cryptic TypeError message when trying to subclass special forms in typing (GH-27710)
This was a Python 3.9 regression.
(cherry picked from commit a3a4d20d67)

Co-authored-by: Yurii Karabas <1998uriyyo@gmail.com>
2021-08-28 11:09:45 -07:00
Miss Islington (bot)
cd986e9031
bpo-45018: Fix rangeiter_reduce in rangeobject.c (GH-27938)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit 94a3d2a632)

Co-authored-by: chilaxan <chilaxan@gmail.com>
2021-08-28 11:09:29 -07:00
Miss Islington (bot)
8aa64cc45b
bpo-44962: Fix a race in WeakKeyDict, WeakValueDict and WeakSet when two threads attempt to commit the last pending removal (GH-27921)
Fixes:
Traceback (most recent call last):
  File "/home/graingert/projects/asyncio-demo/demo.py", line 36, in <module>
    sys.exit(main())
  File "/home/graingert/projects/asyncio-demo/demo.py", line 30, in main
    test_all_tasks_threading()
  File "/home/graingert/projects/asyncio-demo/demo.py", line 24, in test_all_tasks_threading
    results.append(f.result())
  File "/usr/lib/python3.10/concurrent/futures/_base.py", line 438, in result
    return self.__get_result()
  File "/usr/lib/python3.10/concurrent/futures/_base.py", line 390, in __get_result
    raise self._exception
  File "/usr/lib/python3.10/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/lib/python3.10/asyncio/runners.py", line 47, in run
    _cancel_all_tasks(loop)
  File "/usr/lib/python3.10/asyncio/runners.py", line 56, in _cancel_all_tasks
    to_cancel = tasks.all_tasks(loop)
  File "/usr/lib/python3.10/asyncio/tasks.py", line 53, in all_tasks
    tasks = list(_all_tasks)
  File "/usr/lib/python3.10/_weakrefset.py", line 60, in __iter__
    with _IterationGuard(self):
  File "/usr/lib/python3.10/_weakrefset.py", line 33, in __exit__
    w._commit_removals()
  File "/usr/lib/python3.10/_weakrefset.py", line 57, in _commit_removals
    discard(l.pop())
IndexError: pop from empty list

Also fixes:
Exception ignored in: weakref callback <function WeakKeyDictionary.__init__.<locals>.remove at 0x00007fe82245d2e0>
Traceback (most recent call last):
  File "/usr/lib/pypy3/lib-python/3/weakref.py", line 390, in remove
    del self.data[k]
KeyError: <weakref at 0x00007fe76e8d8180; dead>
Exception ignored in: weakref callback <function WeakKeyDictionary.__init__.<locals>.remove at 0x00007fe82245d2e0>
Traceback (most recent call last):
  File "/usr/lib/pypy3/lib-python/3/weakref.py", line 390, in remove
    del self.data[k]
KeyError: <weakref at 0x00007fe76e8d81a0; dead>
Exception ignored in: weakref callback <function WeakKeyDictionary.__init__.<locals>.remove at 0x00007fe82245d2e0>
Traceback (most recent call last):
  File "/usr/lib/pypy3/lib-python/3/weakref.py", line 390, in remove
    del self.data[k]
KeyError: <weakref at 0x000056548f1e24a0; dead>

See: https://github.com/agronholm/anyio/issues/362GH-issuecomment-904424310
See also: https://bugs.python.org/issue29519

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

Co-authored-by: Thomas Grainger <tagrain@gmail.com>
2021-08-28 11:09:21 -07:00
Miss Islington (bot)
db36fdb1f4
bpo-45022: Pin current libffi build to fixed version in preparation for upcoming update (GH-27982)
Also improve the build script for libffi, which is not used as part of the regular build.
(cherry picked from commit 969ae7f735)

Co-authored-by: Steve Dower <steve.dower@python.org>
2021-08-27 09:28:54 -07:00
Miss Islington (bot)
baa8d48230
bpo-44997: macOS does not support loadable SQLite extensions (GH-27979)
Authored-by: Ronald Oussoren <ronaldoussoren@mac.com>
(cherry picked from commit 2ec9428e35)

Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
2021-08-27 04:29:24 -07:00
Miss Islington (bot)
719af92e10
bpo-40635: Fix getfqdn() docstring and docs (GH-27971)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit fdcb675eed)

Co-authored-by: andrei kulakov <andrei.avk@gmail.com>
2021-08-26 12:54:52 -07:00
Miss Islington (bot)
9a79242567
bpo-45001: Make email date parsing more robust against malformed input (GH-27946)
Various date parsing utilities in the email module, such as
email.utils.parsedate(), are supposed to gracefully handle invalid
input, typically by raising an appropriate exception or by returning
None.

The internal email._parseaddr._parsedate_tz() helper used by some of
these date parsing routines tries to be robust against malformed input,
but unfortunately it can still crash ungracefully when a non-empty but
whitespace-only input is passed. This manifests as an unexpected
IndexError.

In practice, this can happen when parsing an email with only a newline
inside a ‘Date:’ header, which unfortunately happens occasionally in the
real world.

Here's a minimal example:

    $ python
    Python 3.9.6 (default, Jun 30 2021, 10:22:16)
    [GCC 11.1.0] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import email.utils
    >>> email.utils.parsedate('foo')
    >>> email.utils.parsedate(' ')
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/usr/lib/python3.9/email/_parseaddr.py", line 176, in parsedate
        t = parsedate_tz(data)
      File "/usr/lib/python3.9/email/_parseaddr.py", line 50, in parsedate_tz
        res = _parsedate_tz(data)
      File "/usr/lib/python3.9/email/_parseaddr.py", line 72, in _parsedate_tz
        if data[0].endswith(',') or data[0].lower() in _daynames:
    IndexError: list index out of range

The fix is rather straight-forward: guard against empty lists, after
splitting on whitespace, but before accessing the first element.
(cherry picked from commit 989f6a3800)

Co-authored-by: wouter bolsterlee <wouter@bolsterl.ee>
2021-08-26 08:47:27 -07:00
Miss Islington (bot)
9f814beadb
bpo-45011: Fix test_asyncio without C module _asyncio (GH-27968)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit 7dc505b865)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-08-26 06:41:29 -07:00
Dong-hee Na
32c1caa87f
bpo-45000: Raise SyntaxError when try to delete __debug__ (GH-27947) (GH-27957)
(cherry picked from commit 551da597a0)
2021-08-26 10:52:21 +01:00
Dong-hee Na
6ea6cf22e9
[3.10] bpo-45000: Update whatsnews about deleting __debug__ (GH-27956) (GH-27958)
(cherry picked from commit c764dfbcbc)

Co-authored-by: Dong-hee Na <donghee.na@python.org>
2021-08-26 10:52:00 +01:00
Miss Islington (bot)
ea39933b4b
bpo-45003: Change __div__ to __truediv__ in py3 language reference. (GH-27951) (GH-27963)
(cherry picked from commit 806e25fd31)

Co-authored-by: Objectivitix <79152594+Objectivitix@users.noreply.github.com>
2021-08-26 10:04:05 +03:00
Erlend Egeberg Aasland
b34ca7e051
[3.10] bpo-43853: Amend NEWS entry for latest changes in sqlite3 (GH-27922). (GH-27953)
(cherry picked from commit 7903a10963)

Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
2021-08-25 20:50:23 +01:00
Miss Islington (bot)
06e9a35169
bpo-44524: Don't modify MRO when inheriting from typing.Annotated (GH-27841)
(cherry picked from commit 23384a1749)

Co-authored-by: Ken Jin <28750310+Fidget-Spinner@users.noreply.github.com>
2021-08-25 11:36:47 -07:00
Miss Islington (bot)
ec5a03168f
bpo-39452: Rewrite and expand __main__.rst (GH-26883)
Broadened scope of the document to explicitly discuss and differentiate between ``__main__.py`` in packages versus the ``__name__ == '__main__'`` expression (and the idioms that surround it), as well as ``import __main__``.

Co-authored-by: Géry Ogam <gery.ogam@gmail.com>
Co-authored-by: Éric Araujo <merwok@netwok.org>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit 7cba23164c)

Co-authored-by: Jack DeVries <58614260+jdevries3133@users.noreply.github.com>
2021-08-24 13:54:08 -07:00
Miss Islington (bot)
0af681b652
[3.10] bpo-34990: Treat the pyc header's mtime in compileall as an unsigned int (GH-19708)
(cherry picked from commit bb21e28fd0)

Co-authored-by: Ammar Askar <ammar@ammaraskar.com>
Co-authored-by: Stéphane Wirtel <stephane@wirtel.be>
2021-08-24 11:09:14 -04:00
Miss Islington (bot)
4673dc26f8
Update susp-ignored.csv line numbers 2021-08-23 15:52:02 -07:00
Miss Islington (bot)
e479510302
bpo-42560: simplify/merge architecture info in Tkinter docs (GH-27839)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: E-Paine <63801254+E-Paine@users.noreply.github.com>
(cherry picked from commit e41912c634)

Co-authored-by: Mark Roseman <mark@markroseman.com>
2021-08-23 13:08:19 -07:00
Miss Islington (bot)
f709360520
[doc] Fix typo c-api/exceptions.rst (GH-27847)
Co-authored-by: Tianqing Peng <pengtianqing@yimian.com.cn>
(cherry picked from commit dcbf7ff6a7)

Co-authored-by: Sunny Bean <ptq008@gmail.com>
2021-08-23 12:40:36 -07:00
Miss Islington (bot)
6ff7fefc91
bpo-44984: Rewrite test_null_strings in _testcapi (GH-27904)
Test also PyObject_Repr(NULL) and PyObject_Bytes(NULL).
(cherry picked from commit 4d68917386)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-08-23 12:30:21 -07:00
Miss Islington (bot)
c6c120ddfa
[doc] Added mailing list link for comp.lang.python (GH-27852)
(cherry picked from commit 7b550dfce6)

Co-authored-by: Mike Smith <mikesmith@screamingjoypad.com>
2021-08-23 12:23:48 -07:00
Miss Islington (bot)
8351df6e36
bpo-42560: add warning to Tkinter docs about outdated pre-8.5 documentation online (GH-27836)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: E-Paine <63801254+E-Paine@users.noreply.github.com>
(cherry picked from commit 1eb451031a)

Co-authored-by: Mark Roseman <mark@markroseman.com>
2021-08-23 12:22:29 -07:00
Miss Islington (bot)
10955353ce
bpo-44980: fix test_constructor to return None value (GH-27898)
(cherry picked from commit 27b761a11a)

Co-authored-by: andrei kulakov <andrei.avk@gmail.com>
2021-08-23 12:21:06 -07:00
Miss Islington (bot)
3390dfa8f3
[doc] Fix typo in idle.rst (GH-27903)
intially -> initially
(cherry picked from commit 0e8695ece0)

Co-authored-by: Ikko Ashimine <eltociear@gmail.com>
2021-08-23 10:53:52 -07:00
Miss Islington (bot)
27f2f62ad4
bpo-38291: Update 3.10 WhatsNew with typing.{io|re} DeprecationWarning (GH-27872)
(cherry picked from commit 1a995b0cee)

Co-authored-by: Ken Jin <28750310+Fidget-Spinner@users.noreply.github.com>
2021-08-23 10:32:35 -07:00
Miss Islington (bot)
57b321c377
Move susp-ignored locations 2021-08-22 13:04:43 -07:00
Miss Islington (bot)
0627918f0b
bpo-4442: Document use of __new__ for subclasses of immutable types (GH-27866)
(cherry picked from commit eec340ea3a)

Co-authored-by: Raymond Hettinger <rhettinger@users.noreply.github.com>
2021-08-22 12:49:24 -07:00
Łukasz Langa
8e90f15ac8
[3.10] bpo-42560: rework external references in Tkinter docs (GH-27838) (GH-27893)
- reorganized from two sections (tkinter vs. tcl/tk) into three (tkinter, tcl/tk, and books)
- main (recommended) tkinter docs have one tutorial (tkdocs) and one reference (shipman), added better descriptions
- dropped link to Tkinter page on wiki (suggestion by E. Paine; outdated, most material already linked to from python.org)
- replaced Tcl/Tk recent man pages and core dev home with single link to main Tcl/Tk page (which holds both of these)
- updated Modern Tkinter link to book page on TkDocs site (was Amazon link to old version), dropped description
- replaced Grayson book by Moore book (newer, covers ttk)
- changed Ousterhout ref to second edition, covers ttk
- dropped link to Welch book (old).
(cherry picked from commit d1049d1d6b)

Co-authored-by: Mark Roseman <mark@markroseman.com>
2021-08-22 21:04:57 +02:00
Miss Islington (bot)
4d1e74f352
bpo-42560: reorganize Tkinter docs modules section for clarity (GH-27840)
- move description of internal modules (_tkinter and tkinter.constants) from section intro to list of additional modules at end of section, as not most important info
- added missing ttk and tix here
- emphasized up front that most apps will need tkinter and ttk
(cherry picked from commit d5dbe8bca7)

Co-authored-by: Mark Roseman <mark@markroseman.com>
2021-08-22 12:04:24 -07:00
Miss Islington (bot)
61ecd3e593
bpo-42560: tweaks to intro of Tkinter docs- add macOS, drop ActiveState (GH-27835)
(cherry picked from commit 141c7a4fce)

Co-authored-by: Mark Roseman <mark@markroseman.com>
2021-08-22 11:54:46 -07:00
Miss Islington (bot)
9ffe582a01
bpo-44926: get_type_hints: Add note about type aliases with forward refs (GH-27859) (GH-27860)
(cherry picked from commit 16b9be4861)

Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2021-08-22 20:29:59 +02:00
Miss Islington (bot)
d63114caf9
bpo-44955: Always call stopTestRun() for implicitly created TestResult objects (GH-27831)
Method stopTestRun() is now always called in pair with method startTestRun()
for TestResult objects implicitly created in TestCase.run().
Previously it was not called for test methods and classes decorated with
a skipping decorator.
(cherry picked from commit a9640d7553)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-08-22 00:55:34 -07:00
Miss Islington (bot)
519bcc698c
bpo-44940: Clarify the documentation of re.findall() (GH-27849)
Co-authored-by: Ken Jin <28750310+Fidget-Spinner@users.noreply.github.com>
Co-authored-by: Vedran Čačić <vedgar+github@gmail.com>
(cherry picked from commit 64f9e7b19d)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-08-22 00:45:02 -07:00
Miss Islington (bot)
95a9ba173e
bpo-44966: Fix out-of-date traceback message (GH-27867)
(cherry picked from commit 15a64d89a3)

Co-authored-by: Raymond Hettinger <rhettinger@users.noreply.github.com>
2021-08-21 17:35:32 -07:00
Miss Islington (bot)
88a1920c7b
bpo-44968: Fix test_subprocess_wait_no_same_group in test_asyncio (GH-27870)
The code of the test was never executed because the test function
was unintentionally converted to a generator function.
(cherry picked from commit 585390fdd8)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-08-21 13:30:08 -07:00
Miss Islington (bot)
5bd27c3be5
bpo-44524: Do not set _name of _SpecialForm without need (GH-27861) (GH-27871)
Because setting non-empty _name affects behavior of other code.

In most cases __name__ can be derived from __origin__.__name__.
(cherry picked from commit 4ceec49559)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2021-08-21 12:33:14 +03:00
Miss Islington (bot)
838b0e975f
bpo-44954: Fix wrong result in float.fromhex corner case (GH-27834)
(cherry picked from commit 60b93d9e49)

Co-authored-by: Mark Dickinson <mdickinson@enthought.com>
2021-08-20 10:48:47 -07:00
Miss Islington (bot)
f0e2a46349
Fix reST markup in dataclasses.rst (GH-27843) (GH-27845)
The signature of field() had an extraneous colon at the end, causing it
to appear all bold and without the module name.
(cherry picked from commit d26dbba929)

Co-authored-by: Jean-Abou-Samra <37271310+Jean-Abou-Samra@users.noreply.github.com>

Co-authored-by: Jean-Abou-Samra <37271310+Jean-Abou-Samra@users.noreply.github.com>
2021-08-19 16:49:15 -04:00
Miss Islington (bot)
1204dfc89c
bpo-36384: [doc] Mention CVE-2021-29921 fix in 3.8.12 (GH-27824)
(cherry picked from commit 0fd66e46b2)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2021-08-19 02:16:15 -07:00
Miss Islington (bot)
fc6ad0585e
bpo-44949: Fix test_readline auto history tests (GH-27813)
(cherry picked from commit 6fb62b42f4)

Co-authored-by: Victor Stinner <vstinner@python.org>
2021-08-19 01:52:16 -07:00
Miss Islington (bot)
ad16f93942
bpo-44830: [doc] Restore missing Mozilla devguide link (GH-27818)
(cherry picked from commit 942d1a4284)

Co-authored-by: Jack DeVries <58614260+jdevries3133@users.noreply.github.com>
2021-08-19 01:33:42 -07:00
Miss Islington (bot)
846a10fc45
bpo-44947: Refine the syntax error for trailing commas in import statements (GH-27814)
(cherry picked from commit b2f68b1900)

Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2021-08-18 13:32:01 -07:00
Miss Islington (bot)
d1c0e4413d
bpo-44852: Support filtering over warnings without a set message (GH-27793)
Additional improvements:

- messages which were compiled regular expressions aren't unpacked back into
  strings for unmatched warnings;

- removed unnecessary "if tokens:" check (there's one before the for loop);

- took `endswith` calculation out of the for loop.
(cherry picked from commit 8cf07d3db3)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2021-08-18 05:10:10 -07:00
Miss Islington (bot)
bbb10761b6
bpo-44508: [Doc] Document failure mode for loop.call_soon_threadsafe (GH-27688)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit 3240bc62f4)

Co-authored-by: meowmeowmeowcat <meowmeowcat1211@gmail.com>
2021-08-17 16:17:29 -07:00
Miss Islington (bot)
f20f061cfa
introduce omitted index default before using it (GH-27775) (GH-27802)
(cherry picked from commit 599f5c8481)

Co-authored-by: Jefferson Oliveira <jefferson.dev.insights@gmail.com>
2021-08-17 23:42:50 +02:00
Miss Islington (bot)
826e059bb9
[3.10] bpo-44935: enable posix_spawn() on Solaris (GH-27795) (GH-27800)
Enable posix_spawn() on Solaris
(cherry picked from commit b1930bf75f)


Co-authored-by: Jakub Kulík <Kulikjak@gmail.com>

Automerge-Triggered-By: GH:gpshead
2021-08-17 11:33:34 -07:00