summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* bpo-36347: stop using RESTRICTED constants (GH-12684)Jeroen Demeyer2020-02-183-10/+8
| | | | | | | | The constants `RESTRICTED` and `PY_WRITE_RESTRICTED` no longer have a meaning in Python 3. Therefore, CPython should not use them. CC @matrixise https://bugs.python.org/issue36347
* bpo-1635741: Port _bz2 extension module to multiphase initialization(PEP ↵Hai Shi2020-02-182-21/+36
| | | | | 489) (GH-18050) https://bugs.python.org/issue1635741
* bpo-39546: argparse: Honor allow_abbrev=False for specified prefix_chars ↵Kyle Meyer2020-02-184-28/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | (GH-18337) When `allow_abbrev` was first added, disabling the abbreviation of long options broke the grouping of short flags ([bpo-26967](https://bugs.python.org/issue26967)). As a fix, b1e4d1b603 (contained in v3.8) ignores `allow_abbrev=False` for a given argument string if the string does _not_ start with "--" (i.e. it doesn't look like a long option). This fix, however, doesn't take into account that long options can start with alternative characters specified via `prefix_chars`, introducing a regression: `allow_abbrev=False` has no effect on long options that start with an alternative prefix character. The most minimal fix would be to replace the "starts with --" check with a "starts with two prefix_chars characters". But `_get_option_tuples` already distinguishes between long and short options, so let's instead piggyback off of that check by moving the `allow_abbrev` condition into `_get_option_tuples`. https://bugs.python.org/issue39546
* bpo-39663: IDLE: Add additional tests for pyparse (GH-18536)Cheryl Sabella2020-02-183-2/+17
| | | | | | Test when find_good_parse_start should return 0. Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
* bpo-1635741: Port _abc extension to multiphase initialization (PEP 489) ↵Hai Shi2020-02-172-9/+19
| | | | (GH-18030)
* bpo-1635741: Port _contextvars module to multiphase initialization (PEP 489) ↵Hai Shi2020-02-172-26/+30
| | | | (GH-18374)
* bpo-39500: Fix compile warnings in unicodeobject.c (GH-18519)Hai Shi2020-02-171-2/+2
|
* bpo-39573: Clean up modules and headers to use Py_IS_TYPE() function (GH-18521)Dong-hee Na2020-02-1733-56/+56
|
* bpo-36465: Update doc of init_config.rst (GH-18520)Hai Shi2020-02-171-1/+1
|
* bpo-1635741: Port _crypt extension module to multiphase initialization (PEP ↵Hai Shi2020-02-172-3/+7
| | | | 489) (GH-18404)
* bpo-38691 Added a switch to ignore PYTHONCASEOK when -E or -I flags passed ↵idomic2020-02-175-2647/+2658
| | | | | | | | | | | | | | | | | | | | | (#18314) * Hard reset + cherry piciking the changes. * 📜🤖 Added by blurb_it. * Added @vstinner News * Update Misc/NEWS.d/next/Library/2020-02-11-13-01-38.bpo-38691.oND8Sk.rst Co-Authored-By: Victor Stinner <vstinner@python.org> * Hard reset to master * Hard reset to master + latest changes Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> Co-authored-by: Victor Stinner <vstinner@python.org>
* bpo-32892: Update the documentation for handling constants in AST. (GH-18514)Serhiy Storchaka2020-02-172-3/+13
|
* bpo-37970: update and improve urlparse and urlsplit doc-strings (GH-16458)idomic2020-02-161-6/+35
|
* bpo-39104: Fix hanging ProcessPoolExecutor on shutdown nowait with pickling ↵Thomas Moreau2020-02-163-23/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | failure (GH-17670) As reported initially by @rad-pat in #6084, the following script causes a deadlock. ``` from concurrent.futures import ProcessPoolExecutor class ObjectWithPickleError(): """Triggers a RuntimeError when sending job to the workers""" def __reduce__(self): raise RuntimeError() if __name__ == "__main__": e = ProcessPoolExecutor() f = e.submit(id, ObjectWithPickleError()) e.shutdown(wait=False) f.result() # Deadlock on get ``` This is caused by the fact that the main process is closing communication channels that might be necessary to the `queue_management_thread` later. To avoid this, this PR let the `queue_management_thread` manage all the closing. https://bugs.python.org/issue39104 Automerge-Triggered-By: @pitrou
* bpo-12915: Add pkgutil.resolve_name (GH-18310)Vinay Sajip2020-02-144-0/+169
|
* bpo-39573: Update clinic to use Py_IS_TYPE() function (GH-18507)Dong-hee Na2020-02-145-17/+15
|
* bpo-39573: PyXXX_Check() macros use Py_IS_TYPE() (GH-18508)Dong-hee Na2020-02-142-3/+3
| | | | Update PyXXX_Check() macros in Include/ to use the new Py_IS_TYPE function.
* closes bpo-39630: Update pointers to string literals to be const char *. ↵Andy Lester2020-02-144-5/+5
| | | | (GH-18510)
* closes bpo-39619 Fix os.chroot on HP-UX 11.31 (GH-18495)Ian Norton2020-02-143-1/+26
| | | | | | Setting `-D_XOPEN_SOURCE=700` on HP-UX causes system functions such as chroot to be undefined. This change stops `_XOPEN_SOURCE` begin set on HP-UX Co-authored-by: Benjamin Peterson <benjamin@python.org>
* bpo-39545: Document changes in the support of await in f-strings. (GH-18456)Serhiy Storchaka2020-02-132-0/+10
| | | https://bugs.python.org/issue39545
* bpo-39627: Fix TypedDict totality check for inherited keys (#18503)Vlad Emelianov2020-02-133-13/+53
| | | (Adapted from https://github.com/python/typing/pull/700)
* bpo-39524: Fixed doc-string in ast._pad_whitespace (GH-18340)mpheath2020-02-131-1/+1
|
* bpo-39573: Add Py_IS_TYPE() function (GH-18488)Dong-hee Na2020-02-1332-46/+61
| | | Co-Author: Neil Schemenauer <nas-github@arctrix.com>
* bpo-39573: Fix bad copy-paste in Py_SET_SIZE (GH-18496)Brandt Bucher2020-02-132-4/+4
|
* bpo-39606: allow closing async generators that are already closed (GH-18475)Nathaniel J. Smith2020-02-133-6/+41
| | | | | | | | | | | | | | The fix for [bpo-39386](https://bugs.python.org/issue39386) attempted to make it so you couldn't reuse a agen.aclose() coroutine object. It accidentally also prevented you from calling aclose() at all on an async generator that was already closed or exhausted. This commit fixes it so we're only blocking the actually illegal cases, while allowing the legal cases. The new tests failed before this patch. Also confirmed that this fixes the test failures we were seeing in Trio with Python dev builds: https://github.com/python-trio/trio/pull/1396 https://bugs.python.org/issue39606
* bpo-39184: Add audit events to functions in `fcntl`, `msvcrt`, `os`, ↵Saiyang Gou2020-02-1315-17/+320
| | | | `resource`, `shutil`, `signal`, `syslog` (GH-18407)
* closes bpo-39621: Make buf arg to md5_compress be const. (GH-18497)Andy Lester2020-02-131-2/+2
|
* bpo-35134: Add Include/cpython/fileutils.h header file (GH-18493)Victor Stinner2020-02-125-164/+173
| | | | | | | | | | | | Move CPython C API from Include/fileutils.h into a new Include/cpython/fileutils.h header file which is included by Include/fileutils.h. Exclude the following private symbols from the limited C API: * _Py_error_handler * _Py_GetErrorHandler() * _Py_DecodeLocaleEx() * _Py_EncodeLocaleEx()
* bpo-35134: Add Include/cpython/bytesobject.h file (GH-18494)Victor Stinner2020-02-127-140/+155
| | | | | | | | | Add Include/cpython/bytearrayobject.h and Include/cpython/bytesobject.h header files. Move CPython C API from Include/bytesobject.h into a new Include/cpython/bytesobject.h header file which is included by Include/bytesobject.h. Do a similar change for Include/bytearrayobject.h.
* bpo-35081: Move dtoa.h header to the internal C API (GH-18489)Victor Stinner2020-02-1213-12/+27
| | | | | | | Move the dtoa.h header file to the internal C API as pycore_dtoa.h: it only contains private functions (prefixed by "_Py"). The math and cmath modules must now be compiled with the Py_BUILD_CORE macro defined.
* bpo-35081: Move bytes_methods.h to the internal C API (GH-18492)Victor Stinner2020-02-1210-10/+17
| | | | | Move the bytes_methods.h header file to the internal C API as pycore_bytes_methods.h: it only contains private symbols (prefixed by "_Py"), except of the PyDoc_STRVAR_shared() macro.
* bpo-39474: Fix AST pos for expressions like (a)(b), (a)[b] and (a).b. (GH-18477)Serhiy Storchaka2020-02-123-18/+47
|
* bpo-18819: tarfile: only set device fields for device files (GH-18080)William Chargin2020-02-124-2/+60
| | | | | | The GNU docs describe the `devmajor` and `devminor` fields of the tar header struct only in the context of character and block special files, suggesting that in other cases they are not populated. Typical utilities behave accordingly; this patch teaches `tarfile` to do the same.
* bpo-21016: pydoc and trace use sysconfig (GH-18476)Victor Stinner2020-02-123-6/+9
| | | | | | | | bpo-21016, bpo-1294959: The pydoc and trace modules now use the sysconfig module to get the path to the Python standard library, to support uncommon installation path like /usr/lib64/python3.9/ on Fedora. Co-Authored-By: Jan Matějek <jmatejek@suse.com>
* bpo-32856: Optimize the assignment idiom in comprehensions. (GH-16814)Serhiy Storchaka2020-02-128-18/+145
| | | | | Now `for y in [expr]` in comprehensions is as fast as a simple assignment `y = expr`.
* bpo-39219: Fix SyntaxError attributes in the tokenizer. (GH-17828)Serhiy Storchaka2020-02-123-5/+47
| | | | * Always set the text attribute. * Correct the offset attribute for non-ascii sources.
* bpo-39567: Add audit for os.walk(), os.fwalk(), Path.glob() and ↵Serhiy Storchaka2020-02-123-3/+11
| | | | Path.rglob(). (GH-18372)
* bpo-39605: Remove a cast that causes a warning. (GH-18473)Benjamin Peterson2020-02-121-1/+1
|
* bpo-39595: Improve zipfile.Path performance (#18406)Jason R. Coombs2020-02-127-68/+254
| | | | | | | | | | | | | | | | | | * Improve zipfile.Path performance on zipfiles with a large number of entries. * 📜🤖 Added by blurb_it. * Add bpo to blurb * Sync with importlib_metadata 1.5 (6fe70ca) * Update blurb. * Remove compatibility code * Add stubs module, omitted from earlier commit Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
* closes bpo-39605: Fix some casts to not cast away const. (GH-18453)Andy Lester2020-02-1211-39/+39
| | | | | | | | | | | | | | | gcc -Wcast-qual turns up a number of instances of casting away constness of pointers. Some of these can be safely modified, by either: Adding the const to the type cast, as in: - return _PyUnicode_FromUCS1((unsigned char*)s, size); + return _PyUnicode_FromUCS1((const unsigned char*)s, size); or, Removing the cast entirely, because it's not necessary (but probably was at one time), as in: - PyDTrace_FUNCTION_ENTRY((char *)filename, (char *)funcname, lineno); + PyDTrace_FUNCTION_ENTRY(filename, funcname, lineno); These changes will not change code, but they will make it much easier to check for errors in consts
* docs: macos - change "versiona" to "versions" (GH-18467)@RandyMcMillan2020-02-121-1/+1
|
* Fix ordering issue in Windows release upload script (GH-18465)Steve Dower2020-02-111-5/+5
| | | Automerge-Triggered-By: @zooba
* bpo-38644: Rephrase What's New entry (GH-18461)Victor Stinner2020-02-111-2/+3
|
* bpo-39245: Switch to public API for Vectorcall (GH-18460)Petr Viktorin2020-02-1156-194/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The bulk of this patch was generated automatically with: for name in \ PyObject_Vectorcall \ Py_TPFLAGS_HAVE_VECTORCALL \ PyObject_VectorcallMethod \ PyVectorcall_Function \ PyObject_CallOneArg \ PyObject_CallMethodNoArgs \ PyObject_CallMethodOneArg \ ; do echo $name git grep -lwz _$name | xargs -0 sed -i "s/\b_$name\b/$name/g" done old=_PyObject_FastCallDict new=PyObject_VectorcallDict git grep -lwz $old | xargs -0 sed -i "s/\b$old\b/$new/g" and then cleaned up: - Revert changes to in docs & news - Revert changes to backcompat defines in headers - Nudge misaligned comments
* bpo-39500: Document PyUnicode_IsIdentifier() function (GH-18397)Victor Stinner2020-02-114-15/+47
| | | | PyUnicode_IsIdentifier() does not call Py_FatalError() anymore if the string is not ready.
* bpo-1635741: Port _codecs extension module to multiphase initialization (PEP ↵Hai Shi2020-02-112-3/+8
| | | | | 489) (GH-18065) https://bugs.python.org/issue1635741
* bpo-38374: Remove weakref.ReferenceError from docs (GH-18452)Roger Hurwitz2020-02-112-9/+0
| | | | | | | | | | Reflecting changes to the code, removed weakref.ReferenceError from weakref.rst and exceptions.rst. Issue submitter provided evidence that the `weakref.ReferenceError` alias for `ReferenceError` was removed from the code in 2007. Working with @gvanrossum at PyCascades CPython sprint we looked at the code and confirmed that `weakref.ReferenceError` was no longer in `weakref.py`. Based on that analysis I removed references `weakref.ReferenceError` from the two documents where it was still being referenced: `weakref.rst` and `exceptions.rst`. https://bugs.python.org/issue38374
* bpo-39600: Adjust code, add idlelib/NEWS item (GH-18449)Terry Jan Reedy2020-02-112-4/+4
| | | Complete previous patch.
* bpo-38325: Skip non-BMP tests of test_winconsoleio (GH-18448)Victor Stinner2020-02-102-0/+7
| | | Skip tests on non-BMP characters of test_winconsoleio.
* bpo-39417: Fix broken link to guide to building venvs (GH-18432)Ogi Moore2020-02-101-1/+1
|