summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* bpo-433030: Add support of atomic grouping in regular expressions (GH-31982)Serhiy Storchaka2022-03-213-16/+237
| | | | | | | | * 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-23691: Protect the re.finditer() iterator from re-entering (GH-32012)Serhiy Storchaka2022-03-212-4/+41
|
* bpo-38256: Fix binascii.crc32() when inputs are 4+GiB (GH-32000)Gregory P. Smith2022-03-203-31/+63
| | | | | | | 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-47040: improve document of checksum functions (gh-31955)Ma Lin2022-03-191-5/+3
| | | | | | | 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-47057: Use FASTCALL convention for FutureIter.throw() (GH-31973)Andrew Svetlov2022-03-191-8/+13
| | | Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
* bpo-46968: Check for 'sys/auxv.h' in the configure script (GH-31961)Pablo Galindo Salgado2022-03-181-3/+3
|
* bpo-46030: socket module add couple of FreeBSD constants. (GH-30018)David CARLIER2022-03-171-0/+9
| | | Co-authored-by: Andrew Svetlov <andrew.svetlov@gmail.com>
* bpo-46996: Remove support of Tcl/Tk < 8.5.12 (GH-31839)Serhiy Storchaka2022-03-171-24/+4
|
* bpo-44859: Raise more accurate exceptions in `sqlite3` (GH-27695)Erlend Egeberg Aasland2022-03-172-5/+7
| | | | | | | | | | | | * 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-47039: Normalize repr() of asyncio future and task objects (GH-31950)Andrew Svetlov2022-03-172-91/+22
|
* bpo-40280: Detect presence of time.tzset and thread_time clock (GH-31898)Christian Heimes2022-03-151-1/+3
|
* bpo-46920: Remove code that has explainers why it was disabled (GH-31813)Oleg Iarygin2022-03-142-34/+0
|
* bpo-46920: Remove code that has no explainer why it was disabled (GH-31814)Oleg Iarygin2022-03-141-39/+2
|
* bpo-40280: select: Use NULL for empty fdset (GH-31865)Christian Heimes2022-03-141-1/+6
| | | | | wasm32-emscripten does not support exceptfds and requires NULL. Python now passes NULL instead of a fdset pointer when the input list is empty. This works fine on all platforms and might even be a tiny bit faster.
* bpo-46994: Accept explicit contextvars.Context in asyncio create_task() API ↵Andrew Svetlov2022-03-142-12/+25
| | | | (GH-31837)
* bpo-47003: Cleanup _overlapped module (GH-31848)Andrew Svetlov2022-03-132-81/+99
|
* bpo-46805: Add low level UDP socket functions to asyncio (GH-31455)Alex Grönholm2022-03-132-5/+167
|
* bpo-46906: Add PyFloat_Pack8() to the C API (GH-31657)Victor Stinner2022-03-115-30/+103
| | | | | | | | | | | | | | | | | | | | | | Add new functions to pack and unpack C double (serialize and deserialize): * PyFloat_Pack2(), PyFloat_Pack4(), PyFloat_Pack8() * PyFloat_Unpack2(), PyFloat_Unpack4(), PyFloat_Unpack8() Document these functions and add unit tests. Rename private functions and move them from the internal C API to the public C API: * _PyFloat_Pack2() => PyFloat_Pack2() * _PyFloat_Pack4() => PyFloat_Pack4() * _PyFloat_Pack8() => PyFloat_Pack8() * _PyFloat_Unpack2() => PyFloat_Unpack2() * _PyFloat_Unpack4() => PyFloat_Unpack4() * _PyFloat_Unpack8() => PyFloat_Unpack8() Replace the "unsigned char*" type with "char*" which is more common and easy to use.
* bpo-40280: Disable AF_UNIX, AF_PACKET, SO_REUSE* on Emscripten (#31829)Christian Heimes2022-03-112-1/+16
| | | Emscripten's socket emulation is limited. AF_UNIX, AF_PACKET, setsockopt(), and most SO_* constants are not supported.
* bpo-46968: Fix faulthandler for Sapphire Rapids Xeon (GH-31789)Oleksandr Pavlyk2022-03-111-6/+20
| | | | | | | | | | | In Linux kernel 5.14 one can dynamically request size of altstacksize based on hardware capabilities with getauxval(AT_MINSIGSTKSZ). This changes allows for Python extension's request to Linux kernel to use AMX_TILE instruction set on Sapphire Rapids Xeon processor to succeed, unblocking use of the ISA in frameworks. Introduced HAVE_LINUX_AUXVEC_H in configure.ac and pyconfig.h.in Used cpython_autoconf:269 docker container to generate configure.
* bpo-46968: Add os.sysconf_names['SC_MINSIGSTKSZ'] (GH-31824)Victor Stinner2022-03-111-0/+3
|
* Remove an old, elementtree-specific leak detector (GH-31811)Oleg Iarygin2022-03-111-13/+0
|
* sqlite3: normalise pre-acronym determiners (GH-31772)Erlend Egeberg Aasland2022-03-112-7/+7
| | | For consistency, replace "a SQL" with "an SQL".
* bpo-45138: Revert GH-28240: Expand traced SQL statements (GH-31788)Erlend Egeberg Aasland2022-03-091-35/+14
| | | | | This reverts commit d1777515f9f53b452a4231d68196a7c0e5deb879. Automerge-Triggered-By: GH:JelleZijlstra
* bpo-45138: Expand traced SQL statements in `sqlite3` trace callback (GH-28240)Erlend Egeberg Aasland2022-03-091-14/+35
|
* Docstring: replace pysqlite with sqlite3 (GH-31758)Erlend Egeberg Aasland2022-03-092-7/+7
| | | | Replace two instances of "pysqlite" with "sqlite3" in sqlite3 docstrings. Also reword "is a no-op" to "does nothing" for clarity.
* bpo-23325: Fix SIG_IGN and SIG_DFL int comparison in signal module (GH-31759)Christian Heimes2022-03-081-13/+23
|
* bpo-46878: Purge 'non-standard' from sqlite3 docstrings (GH-31612)Erlend Egeberg Aasland2022-03-086-69/+67
|
* bpo-46932: Update bundled libexpat to 2.4.7 (GH-31736)Steve Dower2022-03-072-14/+155
|
* bpo-46933: Make pwd module optional (GH-31700)Christian Heimes2022-03-071-1/+1
| | | Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
* bpo-46937: convert remaining functions to AC in _weakref (GH-31705)Kumar Aditya2022-03-072-22/+73
|
* bpo-45582: Don't fail if ENV_PATH is None in getpath.py (GH-31699)Christian Heimes2022-03-061-1/+1
|
* Remove trailing spaces (GH-31695)Serhiy Storchaka2022-03-051-1/+2
|
* bpo-25415: Remove confusing sentence from IOBase docstrings (PR-31631)slateny2022-03-042-3/+2
|
* bpo-46541: Remove usage of _Py_IDENTIFIER from lzma module (GH-31683)Dong-hee Na2022-03-041-10/+10
|
* bpo-46913: Fix test_faulthandler.test_read_null() on UBSan (GH31672)Victor Stinner2022-03-031-16/+18
| | | | Disable undefined behavior sanitizer (UBSan) on faulthandler._read_null().
* bpo-46913: Fix test_faulthandler.test_sigfpe() on UBSAN (GH-31662)Victor Stinner2022-03-031-2/+20
| | | | Disable undefined behavior sanitizer (UBSAN) on faulthandler_sigfpe().
* bpo-46874: Speed up sqlite3 user-defined aggregate 'step' method (GH-31604)Erlend Egeberg Aasland2022-03-033-4/+9
|
* bpo-46848: Move _PyBytes_Find() to internal C API (GH-31642)Victor Stinner2022-03-021-0/+1
| | | | | | Move _PyBytes_Find() and _PyBytes_ReverseFind() functions to the internal C API. bytesobject.c now includes pycore_bytesobject.h.
* bpo-46848: Use stringlib/fastsearch in mmap (GH-31625)Dennis Sweeney2022-03-021-19/+13
| | | Speed up mmap.find(). Add _PyBytes_Find() and _PyBytes_ReverseFind().
* bpo-46541: remove usage of _Py_IDENTIFIER from _ssl module (GH-31599)Kumar Aditya2022-03-012-10/+37
|
* bpo-46541: Remove usage of _Py_IDENTIFIER from multibytecodec (GH-31475)Dong-hee Na2022-03-012-25/+103
|
* bpo-46771: Remove two controversial lines from Task.cancel() (GH-31623)Guido van Rossum2022-02-281-3/+7
| | | | | | | | | | | | | | | Also from the _asyncio C accelerator module, and adjust one test that the change caused to fail. For more discussion see the discussion starting here: https://github.com/python/cpython/pull/31394#issuecomment-1053545331 (Basically, @asvetlov proposed to return False from cancel() when there is already a pending cancellation, and I went along, even though it wasn't necessary for the task group implementation, and @agronholm has come up with a counterexample that fails because of this change. So now I'm changing it back to the old semantics (but still bumping the counter) until we can have a proper discussion about this.)
* bpo-46541: Remove unneeded visits from sqlite3 (GH-31609)Erlend Egeberg Aasland2022-02-281-7/+0
|
* bpo-46541: Remove unnecessary Py_VISIT (GH-31608)Dong-hee Na2022-02-282-6/+0
|
* bpo-46606: os.getgroups() doesn't overallocate (GH-31569)Victor Stinner2022-02-261-32/+25
|
* bpo-46836: Rename InterpreterFrame to _PyInterpreterFrame (GH-31583)Victor Stinner2022-02-253-6/+6
| | | | | Rename also struct _interpreter_frame to struct _PyInterpreterFrame. Reduce risk of name conflicts if a project includes pycore_frame.h.
* bpo-46748: Don't import <stdbool.h> in public headers (GH-31553)Petr Viktorin2022-02-251-0/+3
| | | | | | | <stdbool.h> is the standard/modern way to define embedd/extends Python free to define bool, true and false, but there are existing applications that use slightly different redefinitions, which fail if the header is included. It's OK to use stdbool outside the public headers, though. https://bugs.python.org/issue46748
* bpo-46606: Remove redundant +1. (GH-31561)Inada Naoki2022-02-251-1/+1
|
* bpo-46656: Remove Py_NO_NAN macro (GH-31160)Victor Stinner2022-02-252-4/+4
| | | | Building Python now requires support for floating point Not-a-Number (NaN): remove the Py_NO_NAN macro.