ba42175 | Pablo Galindo | 03 May 2021, 19:33:17 UTC | Python 3.10.0b1 | 03 May 2021, 19:34:56 UTC |
d3b9134 | Shreyan Avigyan | 03 May 2021, 19:27:47 UTC | Remove Enum warnings from test_httpservers (GH-25844) | 03 May 2021, 19:27:47 UTC |
80a2a4e | Dennis Sweeney | 03 May 2021, 15:47:27 UTC | bpo-38530: Refactor and improve AttributeError suggestions (GH-25776) - Make case-swaps half the cost of any other edit - Refactor Levenshtein code to not use memory allocator, and to bail early on no match. - Add comments to Levenshtein distance code - Add test cases for Levenshtein distance behind a debug macro - Set threshold to `(name_size + item_size + 3) * MOVE_COST / 6`. - Reasoning: similar to `difflib.SequenceMatcher.ratio()` >= 2/3: ``` "Multiset Jaccard similarity" >= 2/3 matching letters / total letters >= 2/3 (name_size - distance + item_size - distance) / (name_size + item_size) >= 2/3 1 - (2*distance) / (name_size + item_size) >= 2/3 1/3 >= (2*distance) / (name_size + item_size) (name_size + item_size) / 6 >= distance With rounding: (name_size + item_size + 3) // 6 >= distance ``` Co-authored-by: Pablo Galindo <pablogsal@gmail.com> | 03 May 2021, 15:47:27 UTC |
c715b52 | Christian Heimes | 03 May 2021, 15:45:02 UTC | bpo-43943: ssl tests: Increase server socket timeout, backlog, debugging (GH-25850) Signed-off-by: Christian Heimes <christian@python.org> | 03 May 2021, 15:45:02 UTC |
7719953 | Pablo Galindo | 03 May 2021, 15:21:59 UTC | bpo-44011: Revert "New asyncio ssl implementation (GH-17975)" (GH-25848) This reverts commit 5fb06edbbb769561e245d0fe13002bab50e2ae60 and all subsequent dependent commits. | 03 May 2021, 15:21:59 UTC |
3949428 | Pablo Galindo | 03 May 2021, 15:20:46 UTC | bpo-43754: Fix compiler warning in Python/compile.c (GH-25855) This fixes the following warning: 'initializing': conversion from 'Py_ssize_t' to 'int', possible loss of data [D:\a\cpython\cpython\PCbuild\pythoncore.vcxproj] | 03 May 2021, 15:20:46 UTC |
c2931d3 | Pablo Galindo | 03 May 2021, 14:50:24 UTC | bpo-43916: Move the _PyStructSequence_InitType function to the internal API (GH-25854) | 03 May 2021, 14:50:24 UTC |
440c025 | Julien Palard | 03 May 2021, 09:20:54 UTC | Doc: Fix random.uniform example comment. (GH-25784) | 03 May 2021, 09:20:54 UTC |
4ffd6fd | Andrew Svetlov | 03 May 2021, 09:06:17 UTC | Increase test timeout (GH-25842) | 03 May 2021, 09:06:17 UTC |
ad106c6 | Batuhan Taskaya | 03 May 2021, 07:43:00 UTC | bpo-42725: Render annotations effectless on symbol table with PEP 563 (GH-25583) | 03 May 2021, 07:43:00 UTC |
37ebdf0 | Christian Heimes | 03 May 2021, 07:38:56 UTC | bpo-44011: Fix asyncio tests without ssl module (GH-25840) Signed-off-by: Christian Heimes <christian@python.org> | 03 May 2021, 07:38:56 UTC |
99ad742 | Eric V. Smith | 03 May 2021, 07:24:53 UTC | bpo-44015: dataclasses should allow KW_ONLY to be specified only once per class (GH-25841) bpo-44015: Raise a TypeError if KW_ONLY is specified more than once. | 03 May 2021, 07:24:53 UTC |
72720a2 | Eric V. Smith | 03 May 2021, 06:33:34 UTC | dataclasses docs: add a missing word. (GH-25839) | 03 May 2021, 06:33:34 UTC |
a21b3d2 | Eric V. Smith | 03 May 2021, 05:55:13 UTC | More clarification of kw_only args. (GH-25838) Also, clarify that the dataclass decorator is what raises an error for some mutable defaults. | 03 May 2021, 05:55:13 UTC |
c59baa0 | Ned Deily | 03 May 2021, 05:02:13 UTC | Update macOS installer welcome and readme for 3.10b1 (GH-25835) | 03 May 2021, 05:02:13 UTC |
c3bfa76 | Ned Deily | 03 May 2021, 04:23:54 UTC | bpo-42362: use clang name on 10.9 builds as well (GH-25834) | 03 May 2021, 04:23:54 UTC |
4ae828f | Raymond Hettinger | 03 May 2021, 04:07:29 UTC | Fix invalid markup (#25833) | 03 May 2021, 04:07:29 UTC |
e08059e | Ronald Oussoren | 03 May 2021, 03:43:52 UTC | bpo-42235: [macOS] Use LTO/PGO in build-installer.py with new enough compilers (GH-23079) With recent enough compilers we can build binaries with LTO/PGO on macOS. This patch enables this when building on macOS 10.15 or later (Xcode 11 or later). | 03 May 2021, 03:43:52 UTC |
8c598db | Raymond Hettinger | 03 May 2021, 03:19:51 UTC | bpo-25478: Add total() method to collections.Counter (GH-25829) | 03 May 2021, 03:19:51 UTC |
d52bbde | Ned Batchelder | 03 May 2021, 02:58:57 UTC | bpo-41129: Fix check for macOS SDK paths when building Python (GH-25785) Narrow search to match contents of SDKs, namely only files in ``/System/Library``, ``/System/IOSSupport``, and ``/usr`` other than ``/usr/local``. Previously, anything under ``/System`` was assumed to be in an SDK which causes problems with the new file system layout in 10.15+ where user file systems may appear to be mounted under ``/System``. Paths in ``/Library`` were also incorrectly treated as SDK locations. Co-authored-by: Ned Deily <nad@python.org> | 03 May 2021, 02:58:57 UTC |
b43cc31 | Tal Einat | 03 May 2021, 02:27:38 UTC | bpo-37903: IDLE: add shell sidebar mouse interactions (GH-25708) Left click and drag to select lines. With selection, right click for context menu with copy and copy-with-prompts. Also add copy-with-prompts to the text-box context menu. Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu> | 03 May 2021, 02:27:38 UTC |
90d5239 | Ronald Oussoren | 03 May 2021, 01:29:03 UTC | bpo-42362: Switch to clang/clang++ as the default compiler in build-installer.py (GH-23298) This change is cosmetic only, the "gcc" command in Apple's compiler tools is an alias for "clang" (and using non-system tooling for building the installer is not supported by this script). Automerge-Triggered-By: GH:ned-deily | 03 May 2021, 01:29:03 UTC |
821f0c8 | Eric V. Smith | 03 May 2021, 01:20:50 UTC | More work on documenting dataclass keyword-only fields. (GH-25828) | 03 May 2021, 01:20:50 UTC |
555cbbe | Erlend Egeberg Aasland | 03 May 2021, 00:37:35 UTC | bpo-43851: Build SQLite with SQLITE_OMIT_AUTOINIT on macOS (GH-25413) | 03 May 2021, 00:37:35 UTC |
8703178 | Ned Deily | 03 May 2021, 00:28:43 UTC | bpo-43568: Drop support for MACOSX_DEPLOYMENT_TARGET < 10.3 (GH-25827) Only complain if the config target is >= 10.3 and the current target is < 10.3. The check was originally added to ensure that incompatible LDSHARED flags are not used, because -undefined dynamic_lookup is used when building for 10.3 and later, and is not supported on older OS versions. Apart from that, there should be no problem in general with using an older target. Authored-by: Joshua Root <jmr@macports.org> | 03 May 2021, 00:28:43 UTC |
33ec88a | Mark Shannon | 02 May 2021, 23:38:22 UTC | bpo-43977: Make sure that tp_flags for pattern matching are inherited correctly. (GH-25813) | 02 May 2021, 23:38:22 UTC |
9387fac | Brandt Bucher | 02 May 2021, 22:35:00 UTC | bpo-43977: Document the new pattern matching type flags (GH-25734) | 02 May 2021, 22:35:00 UTC |
cbb7b9e | Erlend Egeberg Aasland | 02 May 2021, 22:10:51 UTC | bpo-43434: Clean up sqlite3.connect() after GH-25818 (GH-25823) | 02 May 2021, 22:10:51 UTC |
5fb06ed | Andrew Svetlov | 02 May 2021, 21:34:15 UTC | bpo-44011: New asyncio ssl implementation (#17975) | 02 May 2021, 21:34:15 UTC |
c96cc08 | Erlend Egeberg Aasland | 02 May 2021, 21:25:17 UTC | bpo-43434: Move sqlite3.connect audit events to sqlite3.Connection.__init__ (GH-25818) | 02 May 2021, 21:25:17 UTC |
37e0c78 | Jason R. Coombs | 02 May 2021, 21:03:40 UTC | bpo-43926: Cleaner metadata with PEP 566 JSON support. (GH-25565) * bpo-43926: Cleaner metadata with PEP 566 JSON support. * Add blurb * Add versionchanged and versionadded declarations for changes to metadata. * Use descriptor for PEP 566 | 02 May 2021, 21:03:40 UTC |
0ad1e03 | Brandt Bucher | 02 May 2021, 20:02:10 UTC | bpo-43754: Eliminate bindings for partial pattern matches (GH-25229) | 02 May 2021, 20:02:10 UTC |
7d2b83e | Zackery Spytz | 02 May 2021, 17:29:15 UTC | bpo-43990: Fix the footnote ordering in the operator precedence docs (GH-25805) Footnotes 5 and 6 were in the wrong order. | 02 May 2021, 17:29:15 UTC |
a5eabc9 | Shreyan Avigyan | 02 May 2021, 15:43:50 UTC | bpo-43997: Add versionadded directives for to match_args, kw_only, and slots in dataclasses.dataclasses documentation (GH-25803) | 02 May 2021, 15:43:50 UTC |
d8389e3 | Christian Heimes | 02 May 2021, 14:38:02 UTC | bpo-38820: Add ssl, hashlib, and hmac changes to whatsnew 3.10 (GH-25817) Signed-off-by: Christian Heimes <christian@python.org> | 02 May 2021, 14:38:02 UTC |
60ce8f0 | Christian Heimes | 02 May 2021, 12:00:35 UTC | bpo-36384: Leading zeros in IPv4 addresses are no longer tolerated (GH-25099) Reverts commit e653d4d8e820a7a004ad399530af0135b45db27a and makes parsing even more strict. Like socket.inet_pton() any leading zero is now treated as invalid input. Signed-off-by: Christian Heimes <christian@python.org> Co-authored-by: Łukasz Langa <lukasz@langa.pl> | 02 May 2021, 12:00:35 UTC |
73766b0 | Zackery Spytz | 02 May 2021, 10:40:01 UTC | bpo-32745: Fix a regression in the handling of ctypes' c_wchar_p type (#8721) Embedded nulls would cause a ValueError to be raised. Thanks go to Eryk Sun for their analysis. Co-authored-by: Łukasz Langa <lukasz@langa.pl> | 02 May 2021, 10:40:01 UTC |
518f8b5 | Ned Deily | 02 May 2021, 09:19:07 UTC | bpo-41100: Update Misc/ACKS (GH-25808) | 02 May 2021, 09:19:07 UTC |
0cb33da | Ned Deily | 02 May 2021, 08:48:29 UTC | bpo-44009: Provide "python3.x-intel64" for Apple Silicon Macs (GH-25804) This allows reliably forcing macOS universal2 framework builds to run under Rosetta 2 Intel-64 emulation on Apple Silicon Macs if needed for testing or when universal2 wheels are not yet available. | 02 May 2021, 08:48:29 UTC |
91554e4 | Christian Heimes | 02 May 2021, 07:47:45 UTC | bpo-43908: Mark ssl, hash, and hmac types as immutable (GH-25792) Signed-off-by: Christian Heimes <christian@python.org> | 02 May 2021, 07:47:45 UTC |
fd0bc7e | Inada Naoki | 02 May 2021, 05:01:02 UTC | bpo-43733: netrc try to use UTF-8 before using locale encoding. (GH-25781) | 02 May 2021, 05:01:02 UTC |
49b26fa | larryhastings | 02 May 2021, 04:19:24 UTC | bpo-43987: Add "Annotations Best Practices" HOWTO doc. (#25746) Add "Annotations Best Practices" HOWTO doc. | 02 May 2021, 04:19:24 UTC |
318ca17 | Eric V. Smith | 02 May 2021, 01:46:05 UTC | Minor tweaks to dataclasses keyword-only fields documentation. (GH-25801) | 02 May 2021, 01:46:05 UTC |
2f59a76 | Eric V. Smith | 01 May 2021, 23:51:12 UTC | Improve the dataclasses kw_only documentation. (GH-25799) | 01 May 2021, 23:51:12 UTC |
29282b2 | Brandt Bucher | 01 May 2021, 22:02:30 UTC | Fix broken name in build.yml (GH-25759) | 01 May 2021, 22:02:30 UTC |
7792324 | Shreyash Sharma | 01 May 2021, 20:54:39 UTC | Fix exceptions mentioned in os.setxattr() docs (GH-25742) | 01 May 2021, 20:54:39 UTC |
1ae05fd | Ethan Furman | 01 May 2021, 20:53:57 UTC | Revert "bpo-43989: Temporarily disable warnings in ssltests (GH-25780)" (GH-25793) Reverts python/cpython#25780 Automerge-Triggered-By: GH:tiran | 01 May 2021, 20:53:57 UTC |
ddbef71 | Christian Heimes | 01 May 2021, 20:42:36 UTC | bpo-43916: Rewrite new hashlib tests, fix typo (GH-25791) * bpo-43916: Rewrite new hashlib tests, fix typo * Flag test as cpython only | 01 May 2021, 20:42:36 UTC |
55e5c68 | Roberto Hueso | 01 May 2021, 20:34:29 UTC | bpo-43989: Add signal format specifier for unix_events (GH-25769) Add format specifier for IntEnum references to avoid 3.12 deprecation warning. | 01 May 2021, 20:34:29 UTC |
a5669b3 | Christian Heimes | 01 May 2021, 20:17:01 UTC | bpo-43998: Fix testing without ssl module (GH-25790) Signed-off-by: Christian Heimes <christian@python.org> | 01 May 2021, 20:17:01 UTC |
9a42d50 | Pablo Galindo | 01 May 2021, 19:26:09 UTC | bpo-43957: Add a missins space to the new format enum warning (#25770) | 01 May 2021, 19:26:09 UTC |
e983252 | Christian Heimes | 01 May 2021, 18:53:10 UTC | bpo-43998: Default to TLS 1.2 and increase cipher suite security (GH-25778) The ssl module now has more secure default settings. Ciphers without forward secrecy or SHA-1 MAC are disabled by default. Security level 2 prohibits weak RSA, DH, and ECC keys with less than 112 bits of security. :class:`~ssl.SSLContext` defaults to minimum protocol version TLS 1.2. Settings are based on Hynek Schlawack's research. ``` $ openssl version OpenSSL 1.1.1k FIPS 25 Mar 2021 $ openssl ciphers -v '@SECLEVEL=2:ECDH+AESGCM:ECDH+CHACHA20:ECDH+AES:DHE+AES:!aNULL:!eNULL:!aDSS:!SHA1:!AESCCM' TLS_AES_256_GCM_SHA384 TLSv1.3 Kx=any Au=any Enc=AESGCM(256) Mac=AEAD TLS_CHACHA20_POLY1305_SHA256 TLSv1.3 Kx=any Au=any Enc=CHACHA20/POLY1305(256) Mac=AEAD TLS_AES_128_GCM_SHA256 TLSv1.3 Kx=any Au=any Enc=AESGCM(128) Mac=AEAD TLS_AES_128_CCM_SHA256 TLSv1.3 Kx=any Au=any Enc=AESCCM(128) Mac=AEAD ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(256) Mac=AEAD ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD ECDHE-ECDSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(128) Mac=AEAD ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(128) Mac=AEAD ECDHE-ECDSA-CHACHA20-POLY1305 TLSv1.2 Kx=ECDH Au=ECDSA Enc=CHACHA20/POLY1305(256) Mac=AEAD ECDHE-RSA-CHACHA20-POLY1305 TLSv1.2 Kx=ECDH Au=RSA Enc=CHACHA20/POLY1305(256) Mac=AEAD ECDHE-ECDSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA384 ECDHE-RSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA384 ECDHE-ECDSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(128) Mac=SHA256 ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA256 DHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(256) Mac=AEAD DHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(128) Mac=AEAD DHE-RSA-AES256-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(256) Mac=SHA256 DHE-RSA-AES128-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(128) Mac=SHA256 ``` Signed-off-by: Christian Heimes <christian@python.org> | 01 May 2021, 18:53:10 UTC |
50c21ad | Shreyash Sharma | 01 May 2021, 18:24:10 UTC | Fixing doc for callback for lambda (GG-25779) Fixing callback for lambda when no return value is provided | 01 May 2021, 18:24:10 UTC |
823fbf4 | Eric V. Smith | 01 May 2021, 17:27:30 UTC | If using a frozen class with slots, add __getstate__ and __setstate__ to set the instance values. (GH-25786) | 01 May 2021, 17:27:30 UTC |
f82fd77 | Christian Heimes | 01 May 2021, 14:05:01 UTC | bpo-43989: Temporarily disable warnings in ssltests (GH-25780) -Werror is currently broken. | 01 May 2021, 14:05:01 UTC |
bf99b71 | Stéphane Bidoul | 01 May 2021, 09:15:19 UTC | bpo-43993: Update vendored pip to 21.1.1 (GH-25761) | 01 May 2021, 09:15:19 UTC |
99f71ae | larryhastings | 01 May 2021, 05:55:21 UTC | Noted my recent contributions in "What's New In Python 3.10". (#25771) Noted my recent contributions in "What's New In Python 3.10". Also made some edits clarifying "annotations" vs "type hints", and some other edits for correctness. | 01 May 2021, 05:55:21 UTC |
c241991 | Yurii Karabas | 01 May 2021, 02:14:30 UTC | bpo-42269: Add slots parameter to dataclass decorator (GH-24171) Add slots parameter to dataclass decorator and make_dataclass function. | 01 May 2021, 02:14:30 UTC |
558df90 | Pablo Galindo | 01 May 2021, 01:21:19 UTC | bpo-43916: Export the _PyStructSequence_InitType to fix build errors in the curses module (GH-25768) | 01 May 2021, 01:21:19 UTC |
251ffa9 | Ma Lin | 30 April 2021, 23:32:49 UTC | bpo-41486: Fix initial buffer size can't > UINT32_MAX in zlib module (GH-25738) * Fix initial buffer size can't > UINT32_MAX in zlib module After commit f9bedb630e8a0b7d94e1c7e609b20dfaa2b22231, in 64-bit build, if the initial buffer size > UINT32_MAX, ValueError will be raised. These two functions are affected: 1. zlib.decompress(data, /, wbits=MAX_WBITS, bufsize=DEF_BUF_SIZE) 2. zlib.Decompress.flush([length]) This commit re-allows the size > UINT32_MAX. * adds curly braces per PEP 7. * Renames `Buffer_*` to `OutputBuffer_*` for clarity | 30 April 2021, 23:32:49 UTC |
e467ec4 | Erlend Egeberg Aasland | 30 April 2021, 23:23:14 UTC | bpo-43995: Fix reference leak in test_grammar (GH-25764) | 30 April 2021, 23:23:14 UTC |
e726a90 | Mohamed Moselhy | 30 April 2021, 23:06:55 UTC | bpo-43971: Add spaces around annotated arg default '=' (GH-25702) Result: "quantity_on_hand: int = 0". | 30 April 2021, 23:06:55 UTC |
e08c673 | JT | 30 April 2021, 22:35:07 UTC | bpo-43928: Fix 'succesfully' typo in document (GH-25569) | 30 April 2021, 22:35:07 UTC |
0048c60 | Tarjei Bærland | 30 April 2021, 22:05:45 UTC | bpo-43935: Fix typo in Turtle.back() docstring (GH-25581) 'e ,' to 'e, '. | 30 April 2021, 22:05:45 UTC |
726c931 | Ammar Askar | 30 April 2021, 21:04:40 UTC | bpo-43888: Remove coverage builds from CI (GH-25679) The coverage builds were consistently timing out in CI, suggesting that people were not reviewing the uploaded reports. | 30 April 2021, 21:04:40 UTC |
6143fcd | Dong-hee Na | 30 April 2021, 19:01:55 UTC | bpo-43979: Remove unnecessary operation from urllib.parse.parse_qsl (GH-25756) Automerge-Triggered-By: GH:gpshead | 30 April 2021, 19:01:55 UTC |
6689e45 | Pablo Galindo | 30 April 2021, 18:34:29 UTC | bpo-43981: Fix reference leaks in test_squeezer (GH-25758) | 30 April 2021, 18:34:29 UTC |
665c774 | Victor Stinner | 30 April 2021, 16:40:30 UTC | bpo-43916: _md5.md5 uses Py_TPFLAGS_DISALLOW_INSTANTIATION (GH-25753) The following types use Py_TPFLAGS_DISALLOW_INSTANTIATION flag: * _md5.md5 * _sha1.sha1 * _sha256.sha224 * _sha256.sha256 * _sha512.sha384 * _sha512.sha512 | 30 April 2021, 16:40:30 UTC |
e374a40 | Pablo Galindo | 30 April 2021, 16:26:45 UTC | bpo-43901: Fix refleaks in test_module (GH-25754) | 30 April 2021, 16:26:45 UTC |
7dcf0f6 | Victor Stinner | 30 April 2021, 16:19:57 UTC | bpo-43916: select.devpoll uses Py_TPFLAGS_DISALLOW_INSTANTIATION (GH-25751) | 30 April 2021, 16:19:57 UTC |
9746cda | Erlend Egeberg Aasland | 30 April 2021, 14:04:57 UTC | bpo-43916: Apply Py_TPFLAGS_DISALLOW_INSTANTIATION to selected types (GH-25748) Apply Py_TPFLAGS_DISALLOW_INSTANTIATION to the following types: * _dbm.dbm * _gdbm.gdbm * _multibytecodec.MultibyteCodec * _sre..SRE_Scanner * _thread._localdummy * _thread.lock * _winapi.Overlapped * array.arrayiterator * functools.KeyWrapper * functools._lru_list_elem * pyexpat.xmlparser * re.Match * re.Pattern * unicodedata.UCD * zlib.Compress * zlib.Decompress | 30 April 2021, 14:04:57 UTC |
387397f | Erlend Egeberg Aasland | 30 April 2021, 13:49:17 UTC | bpo-43916: select.poll uses Py_TPFLAGS_DISALLOW_INSTANTIATION (GH-25750) | 30 April 2021, 13:49:17 UTC |
5979e81 | Mark Shannon | 30 April 2021, 13:32:47 UTC | bpo-43933: Set frame.f_lineno during call to __exit__ (GH-25719) * Set line number of __exit__ call in a with statement to be that of the with keyword. | 30 April 2021, 13:32:47 UTC |
6414138 | Erlend Egeberg Aasland | 30 April 2021, 13:25:43 UTC | bpo-43908: check_set_special_type_attr() checks Py_TPFLAGS_IMMUTABLETYPE (GH-25743) check_set_special_type_attr() and type_set_annotations() now check for immutable flag (Py_TPFLAGS_IMMUTABLETYPE). Co-authored-by: Victor Stinner <vstinner@python.org> | 30 April 2021, 13:25:43 UTC |
9032cf5 | Jakub Kulík | 30 April 2021, 13:21:42 UTC | bpo-43667: Fix broken Unicode encoding in non-UTF locales on Solaris (GH-25096) | 30 April 2021, 13:21:42 UTC |
4908fae | Victor Stinner | 30 April 2021, 12:56:27 UTC | bpo-43916: PyStdPrinter_Type uses Py_TPFLAGS_DISALLOW_INSTANTIATION (GH-25749) The PyStdPrinter_Type type now uses the Py_TPFLAGS_DISALLOW_INSTANTIATION flag to disallow instantiation, rather than seting a tp_init method which always fail. Write also unit tests for PyStdPrinter_Type. | 30 April 2021, 12:56:27 UTC |
0cad068 | Victor Stinner | 30 April 2021, 12:06:49 UTC | bpo-43916: Remove _disabled_new() function (GH-25745) posix and _hashlib use the new Py_TPFLAGS_DISALLOW_INSTANTIATION flag on their heap types, rather than using a custom tp_new function (_disabled_new). | 30 April 2021, 12:06:49 UTC |
3bb0994 | Victor Stinner | 30 April 2021, 10:46:15 UTC | bpo-43916: Add Py_TPFLAGS_DISALLOW_INSTANTIATION type flag (GH-25721) Add a new Py_TPFLAGS_DISALLOW_INSTANTIATION type flag to disallow creating type instances: set tp_new to NULL and don't create the "__new__" key in the type dictionary. The flag is set automatically on static types if tp_base is NULL or &PyBaseObject_Type and tp_new is NULL. Use the flag on the following types: * _curses.ncurses_version type * _curses_panel.panel * _tkinter.Tcl_Obj * _tkinter.tkapp * _tkinter.tktimertoken * _xxsubinterpretersmodule.ChannelID * sys.flags type * sys.getwindowsversion() type * sys.version_info type Update MyStr example in the C API documentation to use Py_TPFLAGS_DISALLOW_INSTANTIATION. Add _PyStructSequence_InitType() function to create a structseq type with the Py_TPFLAGS_DISALLOW_INSTANTIATION flag set. type_new() calls _PyType_CheckConsistency() at exit. | 30 April 2021, 10:46:15 UTC |
b73b5fb | Erlend Egeberg Aasland | 30 April 2021, 10:07:02 UTC | bpo-43973: object_set_class() checks Py_TPFLAGS_IMMUTABLETYPE (GH-25714) Use Py_TPFLAGS_IMMUTABLETYPE to check for class assignments. | 30 April 2021, 10:07:02 UTC |
069e81a | Mark Shannon | 30 April 2021, 08:50:28 UTC | bpo-43977: Use tp_flags for collection matching (GH-25723) * Add Py_TPFLAGS_SEQUENCE and Py_TPFLAGS_MAPPING, add to all relevant standard builtin classes. * Set relevant flags on collections.abc.Sequence and Mapping. * Use flags in MATCH_SEQUENCE and MATCH_MAPPING opcodes. * Inherit Py_TPFLAGS_SEQUENCE and Py_TPFLAGS_MAPPING. * Add NEWS * Remove interpreter-state map_abc and seq_abc fields. | 30 April 2021, 08:50:28 UTC |
2abbd8f | Zackery Spytz | 30 April 2021, 07:32:19 UTC | bpo-43954: Fix a missing word in the unittest docs (GH-25672) | 30 April 2021, 07:32:19 UTC |
74613a4 | larryhastings | 30 April 2021, 04:16:28 UTC | bpo-43817: Add inspect.get_annotations(). (#25522) Add inspect.get_annotations, which safely computes the annotations defined on an object. It works around the quirks of accessing the annotations from various types of objects, and makes very few assumptions about the object passed in. inspect.get_annotations can also correctly un-stringize stringized annotations. inspect.signature, inspect.from_callable, and inspect.from_function now call inspect.get_annotations to retrieve annotations. This means inspect.signature and inspect.from_callable can now un-stringize stringized annotations, too. | 30 April 2021, 04:16:28 UTC |
a62e424 | Terry Jan Reedy | 30 April 2021, 03:52:47 UTC | bpo-43981: Fix error in idle-test leak test (GH-25739) Remove call to macosx.setupApp, which calls macosc.overrideRootMenu, which modifies the menus, which results in two failures in the second round of the leak test. | 30 April 2021, 03:52:47 UTC |
175a54b | larryhastings | 30 April 2021, 03:13:25 UTC | Two minor fixes for accessing a module's name. (#25658) While working on another issue, I noticed two minor nits in the C implementation of the module object. Both are related to getting a module's name. First, the C function module_dir() (module.__dir__) starts by ensuring the module dict is valid. If the module dict is invalid, it wants to format an exception using the name of the module, which it gets from PyModule_GetName(). However, PyModule_GetName() gets the name of the module from the dict. So getting the name in this circumstance will never succeed. When module_dir() wants to format the error but can't get the name, it knows that PyModule_GetName() must have already raised an exception. So it leaves that exception alone and returns an error. The end result is that the exception raised here is kind of useless and misleading: dir(module) on a module with no __dict__ raises SystemError("nameless module"). I changed the code to actually raise the exception it wanted to raise, just without a real module name: TypeError("<module>.__dict__ is not a dictionary"). This seems more useful, and would do a better job putting the programmer who encountered this on the right track of figuring out what was going on. Second, the C API function PyModule_GetNameObject() checks to see if the module has a dict. If m->md_dict is not NULL, it calls _PyDict_GetItemIdWithError(). However, it's possible for m->md_dict to be None. And if you call _PyDict_GetItemIdWithError(Py_None, ...) it will *crash*. Unfortunately, this crash was due to my own bug in the other branch. Fixing my code made the crash go away. I assert that this is still possible at the API level. The fix is easy: add a PyDict_Check() to PyModule_GetNameObject(). Unfortunately, I don't know how to add a unit test for this. Having changed module_dir() above, I can't find any other interfaces callable from Python that eventually call PyModule_GetNameObject(). So I don't know how to trick the runtime into reproducing this error. Since both these changes are minor--each entails only a small edit to only one line--I didn't bother with a news item. | 30 April 2021, 03:13:25 UTC |
2f2b698 | larryhastings | 30 April 2021, 03:09:08 UTC | bpo-43901: Lazy-create an empty annotations dict in all unannotated user classes and modules (#25623) Change class and module objects to lazy-create empty annotations dicts on demand. The annotations dicts are stored in the object's `__dict__` for backwards compatibility. | 30 April 2021, 03:09:08 UTC |
dbe60ee | Brandt Bucher | 30 April 2021, 00:19:28 UTC | bpo-43892: Validate the first term of complex literal value patterns (GH-25735) | 30 April 2021, 00:19:28 UTC |
87655e2 | Steve Dower | 30 April 2021, 00:08:55 UTC | bpo-42800: Rename AUDIT_READ to PY_AUDIT_READ (GH-25736) | 30 April 2021, 00:08:55 UTC |
9a2c2a9 | Ryan Hileman | 29 April 2021, 23:15:55 UTC | bpo-42800: add audit hooks for f_code and tb_frame (GH-24182) Accessing the following attributes will now fire PEP 578 style audit hooks as ("object.__getattr__", obj, name): * PyTracebackObject: tb_frame * PyFrameObject: f_code * PyGenObject: gi_code, gi_frame * PyCoroObject: cr_code, cr_frame * PyAsyncGenObject: ag_code, ag_frame Add an AUDIT_READ attribute flag aliased to READ_RESTRICTED. Update obsolete flag documentation. | 29 April 2021, 23:15:55 UTC |
088a15c | Mark Shannon | 29 April 2021, 18:28:50 UTC | bpo-43933: Show frame.f_lineno as None, rather than -1, if there is no line number. (GH-25717) | 29 April 2021, 18:28:50 UTC |
2fd928c | sblondon | 29 April 2021, 18:02:40 UTC | bpo-42589: Change URL for 'from' link when used in a raised exception (GH-23872) Links for 'raise Exception from x' target to 'The raise statement' (7.8) section instead of 'The import statement' (7.11) section. There are more modified links than in the bug report because I searched some other ones which can get the same improvement. | 29 April 2021, 18:02:40 UTC |
76cd81d | Senthil Kumaran | 29 April 2021, 17:16:50 UTC | bpo-43882 - urllib.parse should sanitize urls containing ASCII newline and tabs. (GH-25595) * issue43882 - urllib.parse should sanitize urls containing ASCII newline and tabs. Co-authored-by: Gregory P. Smith <greg@krypto.org> Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> | 29 April 2021, 17:16:50 UTC |
14fc2bd | Petr Viktorin | 29 April 2021, 13:46:48 UTC | bpo-28254: Add PyGC_ functions to the stable ABI manifest (GH-25720) Co-authored-by: Senthil Kumaran <senthil@uthcode.com> Co-authored-by: scoder <stefan_ml@behnel.de> | 29 April 2021, 13:46:48 UTC |
c76da79 | Mark Shannon | 29 April 2021, 12:12:51 UTC | bpo-42739: Don't use sentinels to mark end of line table. (GH-25657) * Add length parameter to PyLineTable_InitAddressRange and doen't use sentinel values at end of table. Makes the line number table more robust. * Update PyCodeAddressRange to match PEP 626. | 29 April 2021, 12:12:51 UTC |
53dd6c9 | Inada Naoki | 29 April 2021, 11:37:32 UTC | bpo-43651: Fix test_logging (GH-25715) | 29 April 2021, 11:37:32 UTC |
abfd638 | Victor Stinner | 29 April 2021, 11:06:59 UTC | bpo-43774: Enhance debug build documentation (GH-25712) * Add also references to --with-trace-refs option. * Move _ob_next and _ob_prev at the end, since they don't exist by default and are related to debug. | 29 April 2021, 11:06:59 UTC |
8ec2f0d | Terry Jan Reedy | 29 April 2021, 10:48:18 UTC | bpo-37892: Use space indents in IDLE Shell (GH-25678) Adding a newline to the prompt moves it out of the way of user code input, which now starts at the left margin, along with continuation lines. | 29 April 2021, 10:48:18 UTC |
f6ee4da | Petr Viktorin | 29 April 2021, 09:33:14 UTC | bpo-43795: Generate python3dll.c and doc data from manifest (PEP 652) (GH-25315) | 29 April 2021, 09:33:14 UTC |
645ed62 | Victor Stinner | 29 April 2021, 08:47:47 UTC | bpo-43774: Remove unused PYMALLOC_DEBUG macro (GH-25711) Enhance also the documentation of debug hooks on memory allocators. | 29 April 2021, 08:47:47 UTC |
b1f413e | Victor Stinner | 29 April 2021, 08:26:53 UTC | bpo-28254: Cleanup test_subprocess.test_preexec_gc_module_failure() (GH-25709) Saving/restoring gc.disable and gc.isenabled is no longer needed. | 29 April 2021, 08:26:53 UTC |
5bd0619 | Victor Stinner | 29 April 2021, 08:26:34 UTC | bpo-43908: Document Static Types in the C API (GH-25710) Update also PyTypeObject structure definition in the doc. | 29 April 2021, 08:26:34 UTC |