summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* bpo-47061: document module deprecations due to PEP 594 (GH-31984)Brett Cannon2022-03-2127-22/+97
| | | Also removed asynchat, asyncore, and smtpd from their respective toctree entries so they are only in the superceded subtree.
* Fix typo in pycore_bytesobject.h (GH-31914)jonasdlindner2022-03-211-1/+1
|
* bpo-12029: [doc] clarify that except does not match virtual subclasses of ↵Irit Katriel2022-03-212-5/+7
| | | | the specified exception type (GH-32027)
* bpo-47067: Optimize calling GenericAlias objects (GH-31996)penguin_wwy2022-03-214-7/+35
| | | Use vectorcall, and replace `PyObject_SetAttrString` with `PyObject_SetAttr` and a global string.
* bpo-47080: Use atomic groups to simplify fnmatch (GH-32029)Tim Peters2022-03-212-29/+7
| | | Use re's new atomic groups to greatly simplify the construction of worst-case linear-time patterns.
* bpo-433030: Add support of atomic grouping in regular expressions (GH-31982)Serhiy Storchaka2022-03-2111-92/+593
| | | | | | | | * Atomic grouping: (?>...). * Possessive quantifiers: x++, x*+, x?+, x{m,n}+. Equivalent to (?>x+), (?>x*), (?>x?), (?>x{m,n}). Co-authored-by: Jeffrey C. Jacobs <timehorse@users.sourceforge.net>
* bpo-46841: Quicken code in-place (GH-31888)Brandt Bucher2022-03-2118-687/+831
| | | | | | | | | | | | | | | | | | | * Moves the bytecode to the end of the corresponding PyCodeObject, and quickens it in-place. * Removes the almost-always-unused co_varnames, co_freevars, and co_cellvars member caches * _PyOpcode_Deopt is a new mapping from all opcodes to their un-quickened forms. * _PyOpcode_InlineCacheEntries is renamed to _PyOpcode_Caches * _Py_IncrementCountAndMaybeQuicken is renamed to _PyCode_Warmup * _Py_Quicken is renamed to _PyCode_Quicken * _co_quickened is renamed to _co_code_adaptive (and is now a read-only memoryview). * Do not emit unused nonzero opargs anymore in the compiler.
* bpo-23691: Protect the re.finditer() iterator from re-entering (GH-32012)Serhiy Storchaka2022-03-213-4/+42
|
* bpo-46850: Remove _PyEval_CallTracing() function (GH-32019)Victor Stinner2022-03-214-6/+13
| | | | Remove the private undocumented function _PyEval_CallTracing() from the C API. Call the public sys.call_tracing() function instead.
* bpo-46850: Remove _PyEval_GetCoroutineOriginTrackingDepth() (GH-32018)Victor Stinner2022-03-215-17/+25
| | | | | | | | | | | | | | | Remove the private undocumented function _PyEval_GetCoroutineOriginTrackingDepth() from the C API. Call the public sys.get_coroutine_origin_tracking_depth() function instead. Change the internal function _PyEval_SetCoroutineOriginTrackingDepth(): * Remove the 'tstate' parameter; * Add return value and raises an exception if depth is negative; * No longer export the function: call the public sys.set_coroutine_origin_tracking_depth() function instead. Uniformize also function declarations in pycore_ceval.h.
* bpo-46850: Remove _PyEval_SetAsyncGenFinalizer() (GH-32017)Victor Stinner2022-03-214-5/+18
| | | | | | | | | | | Remove the following private undocumented functions from the C API: * _PyEval_GetAsyncGenFirstiter() * _PyEval_GetAsyncGenFinalizer() * _PyEval_SetAsyncGenFirstiter() * _PyEval_SetAsyncGenFinalizer() Call the public sys.get_asyncgen_hooks() and sys.set_asyncgen_hooks() functions instead.
* bpo-38256: Fix binascii.crc32() when inputs are 4+GiB (GH-32000)Gregory P. Smith2022-03-206-33/+89
| | | | | | | When compiled with `USE_ZLIB_CRC32` defined (`configure` sets this on POSIX systems), `binascii.crc32(...)` failed to compute the correct value when the input data was >= 4GiB. Because the zlib crc32 API is limited to a 32-bit length. This lines it up with the `zlib.crc32(...)` implementation that doesn't have that flaw. **Performance:** This also adopts the same GIL releasing for larger inputs logic that `zlib.crc32` has, and causes the Windows build to always use zlib's crc32 instead of our slow C code as zlib is a required build dependency on Windows.
* bpo-47015: Update test_os from asyncore to asyncio (GH-31876)Oleg Iarygin2022-03-202-157/+81
|
* bpo-42369: Fix thread safety of zipfile._SharedFile.tell (GH-26974)Kevin Mehall2022-03-202-1/+4
| | | | | | | | | | | The `_SharedFile` tracks its own virtual position into the file as `self._pos` and updates it after reading or seeking. `tell()` should return this position instead of calling into the underlying file object, since if multiple `_SharedFile` instances are being used concurrently on the same file, another one may have moved the real file position. Additionally, calling into the underlying `tell` may expose thread safety issues in the underlying file object because it was called without taking the lock.
* bpo-46013: Fix confusing kerning on period in docs (GH-29989)jmcb2022-03-201-1/+1
|
* bpo-47040: improve document of checksum functions (gh-31955)Ma Lin2022-03-194-17/+14
| | | | | | | Clarifies a versionchanged note on crc32 & adler32 docs that the workaround is only needed for Python 2 and earlier. Also cleans up an unnecessary intermediate variable in the implementation. Authored-By: Ma Lin / animalize Co-authored-by: Gregory P. Smith <greg@krypto.org>
* bpo-46382 dataclass(slots=True) now takes inherited slots into account ↵Arie Bovenberg2022-03-194-9/+77
| | | | | (GH-31980) Do not include any members in __slots__ that are already in a base class's __slots__.
* bpo-46996: IDLE: Drop workarounds for old Tk versions (GH-31962)Serhiy Storchaka2022-03-193-36/+1
|
* bpo-47066: Convert a warning about flags not at the start of the regular ↵Serhiy Storchaka2022-03-195-66/+26
| | | | expression into error (GH-31994)
* bpo-44544: add textwrap placeholder arg (GH-27671)andrei kulakov2022-03-191-2/+3
|
* bpo-39394: Improve warning message in the re module (GH-31988)Serhiy Storchaka2022-03-193-4/+11
| | | | A warning about inline flags not at the start of the regular expression now contains the position of the flag.
* bpo-47057: Use FASTCALL convention for FutureIter.throw() (GH-31973)Andrew Svetlov2022-03-192-8/+14
| | | Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
* bpo-47022: Document asynchat, asyncore and smtpd removals in 3.12 (GH-31891)Hugo van Kemenade2022-03-189-4/+23
| | | Document the deprecation of asyncore, asynchat, and smtpd with a slated removal in Python 3.12 thanks to PEP 594.
* bpo-43224: Add TypeVarTuple.__name__ (GH-31954)Jelle Zijlstra2022-03-182-11/+8
| | | | I noticed that TypeVar and ParamSpec put their name in a __name__ attribute, but TypeVarTuple doesn't. Let's be consistent.
* bpo-47037: Test debug builds on Windows in CI so that native assertions are ↵Steve Dower2022-03-181-4/+4
| | | | noticed sooner (GH-31965)
* [doc] Some more make suspicious false positives. (GH-31977)Julien Palard2022-03-181-0/+2
|
* bpo-46968: Check for 'sys/auxv.h' in the configure script (GH-31961)Pablo Galindo Salgado2022-03-185-5/+11
|
* bpo-47037: Don't test for strftime('%4Y') on Windows (GH-31945)Christian Heimes2022-03-182-4/+9
|
* bpo-45786: Remove _PyFrame_Fini() and _PyFrame_DebugMallocStats() (GH-31874)Victor Stinner2022-03-185-20/+0
| | | | Remove private empty _PyFrame_Fini() and _PyFrame_DebugMallocStats() functions.
* summarize_stats.py: add pairs by opcode (GH-31957)Dennis Sweeney2022-03-181-9/+44
|
* bpo-45413: Define "posix_venv", "nt_venv" and "venv" sysconfig installation ↵Miro Hrončok2022-03-188-16/+211
| | | | | | | | | | | | | | | | | | | schemes (GH-31034) Define *posix_venv* and *nt_venv* sysconfig installation schemes to be used for bootstrapping new virtual environments. Add *venv* sysconfig installation scheme to get the appropriate one of the above. The schemes are identical to the pre-existing *posix_prefix* and *nt* install schemes. The venv module now uses the *venv* scheme to create new virtual environments instead of hardcoding the paths depending only on the platform. Downstream Python distributors customizing the *posix_prefix* or *nt* install scheme in a way that is not compatible with the install scheme used in virtual environments are encouraged not to customize the *venv* schemes. When Python itself runs in a virtual environment, sysconfig.get_default_scheme and sysconfig.get_preferred_scheme with `key="prefix"` returns *venv*.
* bpo-40296: Fix supporting generic aliases in pydoc (GH-30253)Serhiy Storchaka2022-03-184-9/+84
|
* bpo-46421: Fix unittest filename evaluation when called as a module (GH-30654)Bader Zaidan2022-03-174-1/+16
|
* bpo-47005: Improve performance of bytearray_repeat and bytearray_irepeat ↵Pieter Eendebak2022-03-172-6/+23
| | | | (GH-31856)
* bpo-34790: Remove passing coroutine objects to asyncio.wait() (GH-31964)Andrew Svetlov2022-03-174-101/+15
| | | Co-authored-by: Yury Selivanov <yury@edgedb.com>
* bpo-46030: socket module add couple of FreeBSD constants. (GH-30018)David CARLIER2022-03-173-0/+25
| | | Co-authored-by: Andrew Svetlov <andrew.svetlov@gmail.com>
* Fix whitespace error in setup.py (GH-31960)Erlend Egeberg Aasland2022-03-171-1/+1
|
* bpo-47042: Fix testing the HTML output in test_pydoc (GH-31959)Serhiy Storchaka2022-03-171-6/+10
| | | | | | | Previously it tested that that the actual output contains every non-whitespace character from the expected output (ignoring order and repetitions). Now it will test that the actual output contains the same lines as the expected output, in the same order, ignoring indentation and empty lines.
* Use low bit of LOAD_GLOBAL's oparg to indicate whether it should push an ↵Mark Shannon2022-03-177-196/+212
| | | | additional NULL. (GH-31933)
* bpo-40280: Skip more tests on Emscripten (GH-31947)Christian Heimes2022-03-1716-8/+63
| | | | | | - lchmod, lchown are not fully implemented - skip umask tests - cannot fstat unlinked or renamed files yet - ignore musl libc issues that affect Emscripten
* bpo-46996: Remove support of Tcl/Tk < 8.5.12 (GH-31839)Serhiy Storchaka2022-03-1710-216/+90
|
* Do not run test_gdb when gdb embeds Python 2. (GH-31956)Inada Naoki2022-03-171-0/+3
|
* bpo-46981: Remove typing._TypingEmpty (GH-31836)Serhiy Storchaka2022-03-173-15/+5
| | | | | * get_args(Tuple[()]) now returns () instead of ((),). * Tuple[Unpack[Ts]][()] now returns the result equal to Tuple[()].
* bpo-44859: Raise more accurate exceptions in `sqlite3` (GH-27695)Erlend Egeberg Aasland2022-03-176-14/+45
| | | | | | | | | | | | * Improve exception compliance with PEP 249 * Raise InterfaceError instead of ProgrammingError for SQLITE_MISUSE. If SQLITE_MISUSE is raised, it is a sqlite3 module bug. Users of the sqlite3 module are not responsible for using the SQLite C API correctly. * Don't overwrite BufferError with ValueError when conversion to BLOB fails. * Raise ProgrammingError instead of Warning if user tries to execute() more than one SQL statement. * Raise ProgrammingError instead of ValueError if an SQL query contains null characters. * Make sure `_pysqlite_set_result` raises an exception if it returns -1.
* bpo-46480: add typing.assert_type (GH-30843)Jelle Zijlstra2022-03-174-1/+60
| | | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> Co-authored-by: David Foster <david@dafoster.net>
* bpo-22859: deprecate unittest.main.TestProgram.usageExit (GH-30293)Carlos Damazio2022-03-172-0/+4
| | | | Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* bpo-47039: Normalize repr() of asyncio future and task objects (GH-31950)Andrew Svetlov2022-03-177-118/+42
|
* bpo-47038: Increase a test timeout for slow CI machines (GH-31951)Andrew Svetlov2022-03-171-1/+1
|
* bpo-47038: Rewrite missed asyncio.wait_for test to use ↵Andrew Svetlov2022-03-162-26/+24
| | | | IsolatedAnsyncioTestCase (GH-31946)
* bpo-47038: Rewrite asyncio.wait_for test to use IsolatedAsyncioTestCase ↵Andrew Svetlov2022-03-163-313/+270
| | | | (GH-31942)