Staging
v0.5.1
https://github.com/python/cpython

sort by:
Revision Author Date Message Commit Date
372fa3e bpo-40275: lazy import modules in test.support (GH-20128) Automerge-Triggered-By: @vstinner 16 May 2020, 10:01:39 UTC
4541086 bpo-40192: Use thread_cputime for time.thread_time to improve resolution (GH-19381) On AIX, time.thread_time() is now implemented with thread_cputime() which has nanosecond resolution, rather than clock_gettime(CLOCK_THREAD_CPUTIME_ID) which has a resolution of 10 ms. 16 May 2020, 09:39:09 UTC
62972d9 bpo-40503: PEP 615: Tests and implementation for zoneinfo (GH-19909) This is the initial implementation of PEP 615, the zoneinfo module, ported from the standalone reference implementation (see https://www.python.org/dev/peps/pep-0615/#reference-implementation for a link, which has a more detailed commit history). This includes (hopefully) all functional elements described in the PEP, but documentation is found in a separate PR. This includes: 1. A pure python implementation of the ZoneInfo class 2. A C accelerated implementation of the ZoneInfo class 3. Tests with 100% branch coverage for the Python code (though C code coverage is less than 100%). 4. A compile-time configuration option on Linux (though not on Windows) Differences from the reference implementation: - The module is arranged slightly differently: the accelerated module is `_zoneinfo` rather than `zoneinfo._czoneinfo`, which also necessitates some changes in the test support function. (Suggested by Victor Stinner and Steve Dower.) - The tests are arranged slightly differently and do not include the property tests. The tests live at test/test_zoneinfo/test_zoneinfo.py rather than test/test_zoneinfo.py or test/test_zoneinfo/__init__.py because we may do some refactoring in the future that would likely require this separation anyway; we may: - include the property tests - automatically run all the tests against both pure Python and C, rather than manually constructing C and Python test classes (similar to the way this works with test_datetime.py, which generates C and Python test cases from datetimetester.py). - This includes a compile-time configuration option on Linux (though not on Windows); added with much help from Thomas Wouters. - Integration into the CPython build system is obviously different from building a standalone zoneinfo module wheel. - This includes configuration to install the tzdata package as part of CI, though only on the coverage jobs. Introducing a PyPI dependency as part of the CI build was controversial, and this is seen as less of a major change, since the coverage jobs already depend on pip and PyPI. Additional changes that were introduced as part of this PR, most / all of which were backported to the reference implementation: - Fixed reference and memory leaks With much debugging help from Pablo Galindo - Added smoke tests ensuring that the C and Python modules are built The import machinery can be somewhat fragile, and the "seamlessly falls back to pure Python" nature of this module makes it so that a problem building the C extension or a failure to import the pure Python version might easily go unnoticed. - Adjustments to zoneinfo.__dir__ Suggested by Petr Viktorin. - Slight refactorings as suggested by Steve Dower. - Removed unnecessary if check on std_abbr Discovered this because of a missing line in branch coverage. 16 May 2020, 08:20:06 UTC
6e8cda9 bpo-40457: Support OpenSSL without TLS 1.0/1.1 (GH-19862) OpenSSL can be build without support for TLS 1.0 and 1.1. The ssl module now correctly adheres to OPENSSL_NO_TLS1 and OPENSSL_NO_TLS1_1 flags. Also update multissltest to test with latest OpenSSL and LibreSSL releases. Signed-off-by: Christian Heimes <christian@python.org> Automerge-Triggered-By: @tiran 16 May 2020, 01:33:05 UTC
6b6092f bpo-39075: types.SimpleNamespace no longer sorts attributes in its repr (GH-19430) 16 May 2020, 01:27:54 UTC
1ce5841 bpo-31033: Add a msg argument to Future.cancel() and Task.cancel() (GH-19979) 15 May 2020, 23:55:50 UTC
fe1176e Add Andrew York to ACKS for GH-19622. (GH-20105) This updates ACKS for commit 003708bcf8f2c58d4b65f68318acf164d713e008 contributed by Andrew York. 15 May 2020, 22:19:39 UTC
9b60e55 bpo-40637: Add option to disable builtin hashes (GH-20121) Signed-off-by: Christian Heimes <christian@python.org> Automerge-Triggered-By: @tiran 15 May 2020, 21:54:53 UTC
a2b3cdd bpo-40445: Update compileall.compile_dir docs (GH-19806) 15 May 2020, 21:28:23 UTC
6a5d3ff bpo-40636: Clarify the zip built-in docstring. (GH-20118) Clarify the zip built-in docstring. This puts much simpler text up front along with an example. As it was, the zip built-in docstring was technically correct. But too technical for the reader who shouldn't _need_ to know about `__next__` and `StopIteration` as most people do not need to understand the internal implementation details of the iterator protocol in their daily life. This is a documentation only change, intended to be backported to 3.8; it is only tangentially related to PEP-618 which might offer new behavior options in the future. Wording based a bit more on enumerate per Brandt's suggestion. This gets rid of the legacy wording paragraph which seems too tied to implementation details of the iterator protocol which isn't relevant here. Co-authored-by: Brandt Bucher <brandtbucher@gmail.com> 15 May 2020, 21:26:00 UTC
938717f bpo-40163: Fix multissltest download of old OpenSSL (GH-19329) 15 May 2020, 20:32:25 UTC
382a563 bpo-40607: Reraise exception during task cancelation in asyncio.wait_for() (GH-20054) Currently, if asyncio.wait_for() timeout expires, it cancels inner future and then always raises TimeoutError. In case those future is task, it can handle cancelation mannually, and those process can lead to some other exception. Current implementation silently loses thoses exception. To resolve this, wait_for will check was the cancelation successfull or not. In case there was exception, wait_for will reraise it. Co-authored-by: Roman Skurikhin <roman.skurikhin@cruxlab.com> 15 May 2020, 20:12:05 UTC
c087a26 bpo-40515: Require OPENSSL_THREADS (GH-19953) The ``ssl`` and ``hashlib`` modules now actively check that OpenSSL is build with thread support. Python 3.7.0 made thread support mandatory and no longer works safely with a no-thread builds. Signed-off-by: Christian Heimes <christian@python.org> 15 May 2020, 18:55:25 UTC
62d618c bpo-40479: Test with latest OpenSSL versions (GH-20108) * 1.0.2u (EOL) * 1.1.0l (EOL) * 1.1.1g * 3.0.0-alpha2 (disabled for now) Build the FIPS provider and create a FIPS configuration file for OpenSSL 3.0.0. Signed-off-by: Christian Heimes <christian@python.org> Automerge-Triggered-By: @tiran 15 May 2020, 16:48:25 UTC
16d4e6f bpo-40479: Fix hashlib issue with OpenSSL 3.0.0 (GH-20107) OpenSSL 3.0.0-alpha2 was released today. The FIPS_mode() function has been deprecated and removed. It no longer makes sense with the new provider and context system in OpenSSL 3.0.0. EVP_default_properties_is_fips_enabled() is good enough for our needs in unit tests. It's an internal API, too. Signed-off-by: Christian Heimes <christian@python.org> 15 May 2020, 16:28:05 UTC
6e57237 bpo-40055: test_distutils leaves warnings filters unchanged (GH-20095) distutils.tests now saves/restores warnings filters to leave them unchanged. Importing tests imports docutils which imports pkg_resources which adds a warnings filter. 15 May 2020, 16:06:23 UTC
003708b Trivial typo fix in _tkinter.c (GH-19622) Change spelling of a #define in _tkinter.c from HAVE_LIBTOMMAMTH to HAVE_LIBTOMMATH, since this is used to keep track of tclTomMath.h, not tclTomMamth.h. No other file seems to refer to this variable. 15 May 2020, 10:43:58 UTC
4a12d12 Fix typo in code comment in main_loop label. (GH-20068) 15 May 2020, 02:25:45 UTC
15bc9ab bpo-40612: Fix SyntaxError edge cases in traceback formatting (GH-20072) This fixes both the traceback.py module and the C code for formatting syntax errors (in Python/pythonrun.c). They now both consistently do the following: - Suppress caret if it points left of text - Allow caret pointing just past end of line - If caret points past end of line, clip to *just* past end of line The syntax error formatting code in traceback.py was mostly rewritten; small, subtle changes were applied to the C code in pythonrun.c. There's still a difference when the text contains embedded newlines. Neither handles these very well, and I don't think the case occurs in practice. Automerge-Triggered-By: @gvanrossum 15 May 2020, 02:22:48 UTC
1aa8767 Update code comment re: location of struct _is. (GH-20067) 15 May 2020, 02:11:00 UTC
6a78589 bpo-40548: github actions: pass the changes check on no source changes (GH-20097) Signed-off-by: Filipe Laíns <lains@archlinux.org> 15 May 2020, 02:08:21 UTC
16ab070 bpo-40334: Correctly identify invalid target in assignment errors (GH-20076) Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com> 15 May 2020, 01:04:52 UTC
7ba1f75 bpo-38872: Document exec symbol for codeop.compile_command (GH-20047) * Document exec symbol for codeop.compile_command * Remove extra statements Co-authored-by: nanjekyejoannah <joannah.nanjekye@ibm.com> 15 May 2020, 00:59:46 UTC
4b972fa bpo-40462: Fix typo in test_json (GH-20094) 14 May 2020, 23:02:10 UTC
edf2643 bpo-40460: Fix typo in idlelib/zzdummy.py (GH-20093) Replace ztest with ztext. 14 May 2020, 22:51:51 UTC
75d7257 bpo-40548: GitHub Action workflow: skip jobs on doc only PRs (GH-19983) Signed-off-by: Filipe Laíns <lains@archlinux.org> 14 May 2020, 22:11:40 UTC
d2dc827 bpo-40602: _Py_hashtable_set() reports rehash failure (GH-20077) If _Py_hashtable_set() fails to grow the hash table (rehash), it now fails rather than ignoring the error. 14 May 2020, 20:44:32 UTC
ce21cfc bpo-40618: Disallow invalid targets in augassign and except clauses (GH-20083) This commit fixes the new parser to disallow invalid targets in the following scenarios: - Augmented assignments must only accept a single target (Name, Attribute or Subscript), but no tuples or lists. - `except` clauses should only accept a single `Name` as a target. Co-authored-by: Pablo Galindo <Pablogsal@gmail.com> 14 May 2020, 20:13:50 UTC
bcc3036 bpo-40619: Correctly handle error lines in programs without file mode (GH-20090) 14 May 2020, 20:11:48 UTC
a482dc5 bpo-40602: Write unit tests for _Py_hashtable_t (GH-20091) Cleanup also hashtable.c. Rename _Py_hashtable_t members: * Rename entries to nentries * Rename num_buckets to nbuckets 14 May 2020, 19:55:47 UTC
f2c3b68 Revert "bpo-32604: [_xxsubinterpreters] Propagate exceptions. (GH-19768)" (GH-20089) * Revert "bpo-40613: Remove compiler warning from _xxsubinterpretersmodule (GH-20069)" This reverts commit fa0a66e62d087765dbc5c1b89d6149a23ecfb0a6. * Revert "bpo-32604: [_xxsubinterpreters] Propagate exceptions. (GH-19768)" This reverts commit a1d9e0accd33af1d8e90fc48b34c13d7b07dcf57. 14 May 2020, 16:46:24 UTC
97f33c3 bpo-40549: posixmodule.c uses defining_class (GH-20075) Pass PEP 573 defining_class to os.DirEntry methods. The module state is now retrieve from defining_class rather than Py_TYPE(self), to support subclasses (even if DirEntry doesn't support subclasses yet). * Pass the module rather than defining_class to DirEntry_fetch_stat(). * Only get the module state once in _posix_clear(), _posix_traverse() and _posixmodule_exec(). 14 May 2020, 16:05:58 UTC
e77d428 bpo-40495: compileall option to hardlink duplicate pyc files (GH-19901) compileall is now able to use hardlinks to prevent duplicates in a case when .pyc files for different optimization levels have the same content. Co-authored-by: Miro Hrončok <miro@hroncok.cz> Co-authored-by: Victor Stinner <vstinner@python.org> 14 May 2020, 14:17:22 UTC
7443d42 bpo-40275: Import locale module lazily in gettext (GH-19905) 14 May 2020, 01:22:30 UTC
6f2f475 bpo-40597: email: Use CTE if lines are longer than max_line_length consistently (gh-20038) raw_data_manager (default for EmailPolicy, EmailMessage) does correct wrapping of 'text' parts as long as the message contains characters outside of 7bit US-ASCII set: base64 or qp Content-Transfer-Encoding is applied if the lines would be too long without it. It did not, however, do this for ascii-only text, which could result in lines that were longer than policy.max_line_length or even the rfc 998 maximum. This changeset fixes the heuristic so that if lines are longer than policy.max_line_length, it will always apply a content-transfer-encoding so that the lines are wrapped correctly. 14 May 2020, 00:53:26 UTC
3d17c04 bpo-40521: Add PyInterpreterState.unicode (GH-20081) Move PyInterpreterState.fs_codec into a new PyInterpreterState.unicode structure. Give a name to the fs_codec structure and use this structure in unicodeobject.c. 13 May 2020, 23:48:38 UTC
75cd8e4 bpo-29587: Make gen.throw() chain exceptions with yield from (GH-19858) The previous commits on bpo-29587 got exception chaining working with gen.throw() in the `yield` case. This patch also gets the `yield from` case working. As a consequence, implicit exception chaining now also works in the asyncio scenario of awaiting on a task when an exception is already active. Tests are included for both the asyncio case and the pure generator-only case. 13 May 2020, 23:18:27 UTC
d6fb53f bpo-39465: Remove _PyUnicode_ClearStaticStrings() from C API (GH-20078) Remove the _PyUnicode_ClearStaticStrings() function from the C API. Make the function fully private (declare it with "static"). 13 May 2020, 23:11:54 UTC
d72ea60 issue-25872: Fix KeyError using linecache from multiple threads (GH-18007) The crash that this fixes occurs when using traceback and other modules from multiple threads; del cache[filename] can raise a KeyError. 13 May 2020, 22:41:57 UTC
97e1568 bpo-38787: Fix Argument Clinic defining_class_converter (GH-20074) Don't hardcode defining_class parameter name to "cls": * Define CConverter.set_template_dict(): do nothing by default * CLanguage.render_function() now calls set_template_dict() on all converters. 13 May 2020, 22:31:31 UTC
a15c9b3 bpo-40334: Always show the caret on SyntaxErrors (GH-20050) This commit fixes SyntaxError locations when the caret is not displayed, by doing the following: - `col_number` always gets set to the location of the offending node/expr. When no caret is to be displayed, this gets achieved by setting the object holding the error line to None. - Introduce a new function `_PyPegen_raise_error_known_location`, which can be called, when an arbitrary `lineno`/`col_offset` needs to be passed. This function then gets used in the grammar (through some new macros and inline functions) so that SyntaxError locations of the new parser match that of the old. 13 May 2020, 19:36:27 UTC
de92769 bpo-34790: add version of removal of explicit passing of coros to `asyncio.wait`'s documentation (#20008) 13 May 2020, 18:55:12 UTC
fa0a66e bpo-40613: Remove compiler warning from _xxsubinterpretersmodule (GH-20069) 13 May 2020, 13:38:27 UTC
b809717 bpo-40331: Increase test coverage for the statistics module (GH-19608) 13 May 2020, 10:29:31 UTC
42bae3a bpo-40602: Optimize _Py_hashtable_get_ptr() (GH-20066) _Py_hashtable_get_entry_ptr() avoids comparing the entry hash: compare directly keys. Move _Py_hashtable_get_entry_ptr() just after _Py_hashtable_get_entry_generic(). 13 May 2020, 03:36:23 UTC
5b0a303 bpo-40609: _Py_hashtable_t values become void* (GH-20065) _Py_hashtable_t values become regular "void *" pointers. * Add _Py_hashtable_entry_t.data member * Remove _Py_hashtable_t.data_size member * Remove _Py_hashtable_t.get_func member. It is no longer needed to specialize _Py_hashtable_get() for a specific value size, since all entries now have the same size (void*). * Remove the following macros: * _Py_HASHTABLE_GET() * _Py_HASHTABLE_SET() * _Py_HASHTABLE_SET_NODATA() * _Py_HASHTABLE_POP() * Rename _Py_hashtable_pop() to _Py_hashtable_steal() * _Py_hashtable_foreach() callback now gets key and value rather than entry. * Remove _Py_hashtable_value_destroy_func type. value_destroy_func callback now only has a single parameter: data (void*). 13 May 2020, 02:40:30 UTC
d95bd42 bpo-40609: _tracemalloc allocates traces (GH-20064) Rewrite _tracemalloc to store "trace_t*" rather than directly "trace_t" in traces hash tables. Traces are now allocated on the heap memory, outside the hash table. Add tracemalloc_copy_traces() and tracemalloc_copy_domains() helper functions. Remove _Py_hashtable_copy() function since there is no API to copy a key or a value. Remove also _Py_hashtable_delete() function which was commented. 13 May 2020, 01:52:11 UTC
2d0a3d6 bpo-40609: Add destroy functions to _Py_hashtable (GH-20062) Add key_destroy_func and value_destroy_func parameters to _Py_hashtable_new_full(). marshal.c and _tracemalloc.c use these destroy functions. 13 May 2020, 00:50:18 UTC
f9b3b58 bpo-40609: Remove _Py_hashtable_t.key_size (GH-20060) Rewrite _Py_hashtable_t type to always store the key as a "const void *" pointer. Add an explicit "key" member to _Py_hashtable_entry_t. Remove _Py_hashtable_t.key_size member. hash and compare functions drop their hash table parameter, and their 'key' parameter type becomes "const void *". 13 May 2020, 00:26:02 UTC
9e2ca17 bpo-40609: Rewrite how _tracemalloc handles domains (GH-20059) Rewrite how the _tracemalloc module stores traces of other domains. Rather than storing the domain inside the key, it now uses a new hash table with the domain as the key, and the data is a per-domain traces hash table. * Add tracemalloc_domain hash table. * Remove _Py_tracemalloc_config.use_domain. * Remove pointer_t and related functions. 12 May 2020, 23:36:47 UTC
3d54211 Fix Wikipedia link (GH-20031) 12 May 2020, 22:54:18 UTC
d6b727e bpo-40501: Replace ctypes code in uuid with native module (GH-19948) 12 May 2020, 22:32:32 UTC
f453221 bpo-40602: Add _Py_HashPointerRaw() function (GH-20056) Add a new _Py_HashPointerRaw() function which avoids replacing -1 with -2 to micro-optimize hash table using pointer keys: using _Py_hashtable_hash_ptr() hash function. 12 May 2020, 16:46:20 UTC
4c9ea09 bpo-38787: Add PyCFunction_CheckExact() macro for exact type checks (GH-20024) … now that we allow subtypes of PyCFunction. Also add PyCMethod_CheckExact() and PyCMethod_Check() for checks against the PyCMethod subtype. 12 May 2020, 14:12:41 UTC
5650e76 bpo-40596: Fix str.isidentifier() for non-canonicalized strings containing non-BMP characters on Windows. (GH-20053) 12 May 2020, 13:18:00 UTC
7c6e970 bpo-40602: Optimize _Py_hashtable for pointer keys (GH-20051) Optimize _Py_hashtable_get() and _Py_hashtable_get_entry() for pointer keys: * key_size == sizeof(void*) * hash_func == _Py_hashtable_hash_ptr * compare_func == _Py_hashtable_compare_direct Changes: * Add get_func and get_entry_func members to _Py_hashtable_t * Convert _Py_hashtable_get() and _Py_hashtable_get_entry() functions to static nline functions. * Add specialized get and get entry for pointer keys. 12 May 2020, 11:31:59 UTC
74ea6b5 bpo-40593: Improve syntax errors for invalid characters in source code. (GH-20033) 12 May 2020, 09:42:04 UTC
f3a5b7a bpo-39481: remove generic classes from ipaddress/mmap (GH-20045) These were added by mistake (see https://bugs.python.org/issue39481#msg366288). 12 May 2020, 02:32:40 UTC
b1b4c79 bpo-40480: restore ability to join fnmatch.translate() results (GH-20049) In translate(), generate unique group names across calls. The restores the undocumented ability to get a valid regexp by joining multiple translate() results via `|`. 12 May 2020, 02:19:20 UTC
d0919f0 bpo-40602: _Py_hashtable_new() uses PyMem_Malloc() (GH-20046) _Py_hashtable_new() now uses PyMem_Malloc/PyMem_Free allocator by default, rather than PyMem_RawMalloc/PyMem_RawFree. PyMem_Malloc is faster than PyMem_RawMalloc for memory blocks smaller than or equal to 512 bytes. 12 May 2020, 01:07:40 UTC
b617993 bpo-40602: Rename hashtable.h to pycore_hashtable.h (GH-20044) * Move Modules/hashtable.h to Include/internal/pycore_hashtable.h * Move Modules/hashtable.c to Python/hashtable.c * Python is now linked to hashtable.c. _tracemalloc is no longer linked to hashtable.c. Previously, marshal.c got hashtable.c via _tracemalloc.c which is built as a builtin module. 12 May 2020, 00:42:19 UTC
21cdb71 bpo-40571: Make lru_cache(maxsize=None) more discoverable (GH-20019) 12 May 2020, 00:00:53 UTC
4804b5b bpo-39465: Don't access directly _Py_Identifier members (GH-20043) * Replace id->object with _PyUnicode_FromId(&id) * Use _Py_static_string_init(str) macro to initialize statically name_op in typeobject.c. 11 May 2020, 23:43:38 UTC
27c0d9b bpo-40334: produce specialized errors for invalid del targets (GH-19911) 11 May 2020, 21:53:58 UTC
86d6944 bpo-40584: Update PyType_FromModuleAndSpec() to process tp_vectorcall_offset (GH-20026) 11 May 2020, 21:38:55 UTC
ef7973a bpo-40561: Add docstrings for webbrowser open functions (GH-19999) Co-authored-by: Brad Solomon <brsolomon@deloitte.com> Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu> 11 May 2020, 18:50:11 UTC
d5d9a71 bpo-36346: array: Don't use deprecated APIs (GH-19653) * Py_UNICODE -> wchar_t * Py_UNICODE -> unicode in Argument Clinic * PyUnicode_AsUnicode -> PyUnicode_AsWideCharString * Don't use "u#" format. Co-authored-by: Victor Stinner <vstinner@python.org> 11 May 2020, 06:37:25 UTC
6067d4b bpo-40575: Avoid unnecessary overhead in _PyDict_GetItemIdWithError() (GH-20018) Avoid unnecessary overhead in _PyDict_GetItemIdWithError() by calling _PyDict_GetItem_KnownHash() instead of the more generic PyDict_GetItemWithError(), since we already know the hash of interned strings. 11 May 2020, 04:04:31 UTC
5b956ca bpo-40585: Normalize errors messages in codeop when comparing them (GH-20030) With the new parser, the error message contains always the trailing newlines, causing the comparison of the repr of the error messages in codeop to fail. This commit makes the new parser mirror the old parser's behaviour regarding trailing newlines. 11 May 2020, 00:41:26 UTC
2cc9b84 Improve code clarity for the set lookup logic (GH-20028) 10 May 2020, 21:53:29 UTC
2fbc57a bpo-40257: Tweak docstrings for special generic aliases. (GH-20022) * Add the terminating period. * Omit module name for builtin types. 10 May 2020, 12:14:27 UTC
0122d48 bpo-40397: Fix subscription of nested generic alias without parameters. (GH-20021) 10 May 2020, 10:39:40 UTC
86a93fd bpo-37986: Improve perfomance of PyLong_FromDouble() (GH-15611) * bpo-37986: Improve perfomance of PyLong_FromDouble() * Use strict bound check for safety and symmetry * Remove possibly outdated performance claims Co-authored-by: Mark Dickinson <dickinsm@gmail.com> 10 May 2020, 09:15:57 UTC
1c2fa78 bpo-40549: Convert posixmodule.c to multiphase init (GH-19982) Convert posixmodule.c ("posix" or "nt" module) to the multiphase initialization (PEP 489). * Create the module using PyModuleDef_Init(). * Create ScandirIteratorType and DirEntryType with the new PyType_FromModuleAndSpec() (PEP 573) * Get the module state from ScandirIteratorType and DirEntryType with the new PyType_GetModule() (PEP 573) * Pass module to functions which access the module state. * convert_sched_param() gets a new module parameter. It is now called directly since Argument Clinic doesn't support passing the module to an argument converter callback. * Remove _posixstate_global macro. 10 May 2020, 09:05:29 UTC
fcb2856 bpo-40397: Remove __args__ and __parameters__ from _SpecialGenericAlias (GH-19984) 10 May 2020, 08:53:16 UTC
85bdec1 Add link to Enum class (GH-19884) 10 May 2020, 05:15:54 UTC
ac7a92c bpo-40334: Avoid collisions between parser variables and grammar variables (GH-19987) This is for the C generator: - Disallow rule and variable names starting with `_` - Rename most local variable names generated by the parser to start with `_` Exceptions: - Renaming `p` to `_p` will be a separate PR - There are still some names that might clash, e.g. - anything starting with `Py` - C reserved words (`if` etc.) - Macros like `EXTRA` and `CHECK` 10 May 2020, 04:34:50 UTC
2c3d508 bpo-40570: Improve compatibility of uname_result with late-bound .platform (#20015) * bpo-40570: Improve compatibility of uname_result with late-bound .platform. * Add test capturing ability to cast uname to a tuple. 09 May 2020, 14:12:41 UTC
77c6146 bpo-40566: Apply PEP 573 to abc module (GH-20005) 09 May 2020, 08:31:40 UTC
7f7e706 bpo-39791: Add files() to importlib.resources (GH-19722) * bpo-39791: Update importlib.resources to support files() API (importlib_resources 1.5). * 📜🤖 Added by blurb_it. * Add some documentation about the new objects added. Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> 08 May 2020, 23:20:26 UTC
d10091a bpo-40502: Initialize n->n_col_offset (GH-19988) * initialize n->n_col_offset * 📜🤖 Added by blurb_it. * Move initialization Co-authored-by: nanjekyejoannah <joannah.nanjekye@ibm.com> Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> 08 May 2020, 20:58:28 UTC
81a5fc3 bpo-40541: Add optional *counts* parameter to random.sample() (GH-19970) 08 May 2020, 14:53:15 UTC
2effef7 Make the first dataclass example more useful (GH-19994) 08 May 2020, 11:39:57 UTC
d2c349b bpo-40559: Add Py_DECREF to _asynciomodule.c:task_step_impl() (GH-19990) This fixes a possible memory leak in the C implementation of asyncio.Task. 08 May 2020, 10:54:38 UTC
02fa0ea bpo-40273: Reversible mappingproxy (FH-19513) 08 May 2020, 05:25:50 UTC
db9163c bpo-40555: Check for p->error_indicator in loop rules after the main loop is done (GH-19986) 08 May 2020, 02:38:44 UTC
b7a78ca bpo-40517: Implement syntax highlighting support for ASDL (GH-19967) 07 May 2020, 20:57:26 UTC
4e36376 bpo-40548: Always run GitHub action, even on doc PRs (GH-19981) Always run GitHub action jobs, even on documentation-only pull requests. So it will be possible to make a GitHub action job, like the Windows (64-bit) job, mandatory. 07 May 2020, 20:42:14 UTC
c068b53 bpo-38787: Update structures.rst docs (PEP 573) (GH-19980) 07 May 2020, 17:16:01 UTC
a1d9e0a bpo-32604: [_xxsubinterpreters] Propagate exceptions. (GH-19768) (Note: PEP 554 is not accepted and the implementation in the code base is a private one for use in the test suite.) If code running in a subinterpreter raises an uncaught exception then the "run" call in the calling interpreter fails. A RunFailedError is raised there that summarizes the original exception as a string. The actual exception type, __cause__, __context__, state, etc. are all discarded. This turned out to be functionally insufficient in practice. There is a more helpful solution (and PEP 554 has been updated appropriately). This change adds the exception propagation behavior described in PEP 554 to the _xxsubinterpreters module. With this change a copy of the original exception is set to __cause__ on the RunFailedError. For now we are using "pickle", which preserves the exception's state. We also preserve the original __cause__, __context__, and __traceback__ (since "pickle" does not preserve those). https://bugs.python.org/issue32604 07 May 2020, 14:56:01 UTC
8963a7f bpo-40545: Export _PyErr_GetTopmostException() function (GH-19978) Declare _PyErr_GetTopmostException() with PyAPI_FUNC() to properly export the function in the C API. The function remains private ("_Py") prefix. Co-Authored-By: Julien Danjou <julien@danjou.info> 07 May 2020, 13:42:33 UTC
e1becf4 bpo-38787: C API for module state access from extension methods (PEP 573) (GH-19936) Module C state is now accessible from C-defined heap type methods (PEP 573). Patch by Marcel Plch and Petr Viktorin. Co-authored-by: Marcel Plch <mplch@redhat.com> Co-authored-by: Victor Stinner <vstinner@python.org> 07 May 2020, 13:39:59 UTC
4638c64 bpo-40334: Error message for invalid default args in function call (GH-19973) When parsing something like `f(g()=2)`, where the name of a default arg is not a NAME, but an arbitrary expression, a specialised error message is emitted. 07 May 2020, 10:44:06 UTC
2f37c35 bpo-40334: Fix error location upon parsing an invalid string literal (GH-19962) When parsing a string with an invalid escape, the old parser used to point to the beginning of the invalid string. This commit changes the new parser to match that behaviour, since it's currently pointing to the end of the string (or to be more precise, to the beginning of the next token). 07 May 2020, 10:37:51 UTC
3466922 bpo-1635741: Port errno module to multiphase initialization (GH-19923) 07 May 2020, 01:17:16 UTC
c1c7d8e bpo-40397: Refactor typing._GenericAlias (GH-19719) Make the design more object-oriented. Split _GenericAlias on two almost independent classes: for special generic aliases like List and for parametrized generic aliases like List[int]. Add specialized subclasses for Callable, Callable[...], Tuple and Union[...]. 07 May 2020, 01:09:33 UTC
470aac4 bpo-40334: Generate comments in the parser code to improve debugging (GH-19966) 06 May 2020, 22:14:43 UTC
99db2a1 bpo-40334: Allow trailing comma in parenthesised context managers (GH-19964) 06 May 2020, 21:54:34 UTC
441416c Fix typo in sqlite3 documentation (GH-19965) *first* is repeated twice. 06 May 2020, 19:51:43 UTC
999ec9a bpo-40334: Add type to the assignment rule in the grammar file (GH-19963) 06 May 2020, 18:11:04 UTC
back to top