summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* GH-109190: Copyedit 3.12 What's New: Typing PEPs (#109659)Adam Turner2023-09-211-4/+6
|
* GH-109190: Copyedit 3.12 What's New: PEP 709 (#109656)Adam Turner2023-09-211-7/+5
|
* gh-74481: Add missing debug function docs and constants to msvcrt (GH-109650)AN Long2023-09-213-13/+107
|
* gh-109613: _pystat_fromstructstat() checks for exceptions (#109618)Victor Stinner2023-09-212-49/+76
| | | | | | | | | | | | | Fix os.stat() and os.DirEntry.stat(): check for exceptions. Previously, on Python built in debug mode, these functions could trigger a fatal Python error (and abort the process) when a function succeeded with an exception set. _pystat_fromstructstat() now exits immediately if an exception is raised, rather only checking for exceptions at the end. It fix following fatal error in fill_time(): Fatal Python error: _Py_CheckSlotResult: Slot * of type int succeeded with an exception set
* gh-109625: Move _ready_to_import() from test_import to support.import_helper ↵Nikita Sobolev2023-09-213-34/+35
| | | | (#109626)
* GH-109209: Bump the minimum Sphinx version to 4.2 (#109210)Adam Turner2023-09-214-8/+7
|
* gh-109627: duplicated smalll exit blocks need to be assigned jump target ↵Irit Katriel2023-09-203-5/+28
| | | | labels (#109630)
* gh-109408: Move Windows builds from Azure Pipelines PR to GitHub Actions ↵Hugo van Kemenade2023-09-202-31/+20
| | | | (#109569)
* Fix typos in docs and comments (#109619)Heinz-Alexander Fuetterer2023-09-2014-15/+15
|
* gh-109390: add dump_symtable utility under #if 0 (#109391)Carl Meyer2023-09-201-1/+110
| | | Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-109054: Document configure variables (#109224)Victor Stinner2023-09-202-0/+151
|
* gh-108973: Fix asyncio test_subprocess_consistent_callbacks() (#109431)Victor Stinner2023-09-204-19/+67
| | | | | | | | | | | | | SubprocessProtocol process_exited() method can be called before pipe_data_received() and pipe_connection_lost() methods. Document it and adapt the test for that. Revert commit 282edd7b2a74c4dfe1bfe3c5b1d30f9c21d554d6. _child_watcher_callback() calls immediately _process_exited(): don't add an additional delay with call_soon(). The reverted change didn't make _process_exited() more determistic: it can still be called before pipe_connection_lost() for example. Co-authored-by: Davide Rizzo <sorcio@gmail.com>
* gh-109559: Update unicodedata checksums for 15.1.0. (#109597)Benjamin Peterson2023-09-201-2/+2
| | | Update unicodedata checksums for 15.1.0.
* fixes gh-109559: Update `unicodedata` for Unicode 15.1.0 (GH-109560)James Gerity2023-09-209-18507/+18925
| | | | | --------- Co-authored-by: Benjamin Peterson <benjamin@python.org>
* gh-109543: Remove unnecessary hasattr check (#109544)Jelle Zijlstra2023-09-203-2/+14
| | | | Also added a new test case covering the scenario I thought this might be about.
* gh-103053: Skip test_freeze_simple_script() on PGO build (#109591)Victor Stinner2023-09-205-10/+36
| | | | | | | | | | Skip test_freeze_simple_script() of test_tools.test_freeze if Python is built with "./configure --enable-optimizations", which means with Profile Guided Optimization (PGO): it just makes the test too slow. The freeze tool is tested by many other CIs with other (faster) compiler flags. test.pythoninfo now gets also get_build_info() of test.libregrtests.utils.
* gh-90108: Disable LTO on _freeze_module and _testembed (#109581)Victor Stinner2023-09-201-2/+2
| | | | | | LTO optimization is nice to make Python faster, but _freeze_module and _testembed performance is not important. Using LTO to build these two programs make a whole Python build way slower, especially combined with a sanitizer (like ASAN).
* gh-109109: Expose retrieving certificate chains in SSL module (#109113)Mateusz Nowak2023-09-203-4/+63
| | | | | Adds APIs to get the TLS certificate chains, verified or full unverified, from SSLSocket and SSLObject. Co-authored-by: Gregory P. Smith [Google LLC] <greg@krypto.org>
* gh-109033: Return filename with os.utime errors (#109034)Ronan Pigott2023-09-193-7/+11
| | | | | | | The filename was previously intentionally omitted from exception because "it might confuse the user". Uncaught exceptions are not generally a replacement for user-facing error messages, so obscuring this information only has the effect of making the programmer's life more difficult.
* gh-76785: Use Pending Calls When Releasing Cross-Interpreter Data (gh-109556)Eric Snow2023-09-197-67/+98
| | | This fixes some crashes in the _xxinterpchannels module, due to a race between interpreters.
* gh-109580: Skip test_perf_profiler on ASAN build (#109584)Victor Stinner2023-09-192-1/+8
| | | | Skip test_perf_profiler if Python is built with ASAN, MSAN or UBSAN sanitizer. Python does crash randomly in this test on such build.
* gh-108724: Fix _PySemaphore compile error on WASM (gh-109583)Sam Gross2023-09-191-1/+2
| | | Some WASM platforms have POSIX semaphores, but not sem_timedwait.
* gh-108724: Add PyMutex and _PyParkingLot APIs (gh-109344)Sam Gross2023-09-1929-21/+1665
| | | | | | | | | | | | | | | | | | | | | | | | | | PyMutex is a one byte lock with fast, inlineable lock and unlock functions for the common uncontended case. The design is based on WebKit's WTF::Lock. PyMutex is built using the _PyParkingLot APIs, which provides a cross-platform futex-like API (based on WebKit's WTF::ParkingLot). This internal API will be used for building other synchronization primitives used to implement PEP 703, such as one-time initialization and events. This also includes tests and a mini benchmark in Tools/lockbench/lockbench.py to compare with the existing PyThread_type_lock. Uncontended acquisition + release: * Linux (x86-64): PyMutex: 11 ns, PyThread_type_lock: 44 ns * macOS (arm64): PyMutex: 13 ns, PyThread_type_lock: 18 ns * Windows (x86-64): PyMutex: 13 ns, PyThread_type_lock: 38 ns PR Overview: The primary purpose of this PR is to implement PyMutex, but there are a number of support pieces (described below). * PyMutex: A 1-byte lock that doesn't require memory allocation to initialize and is generally faster than the existing PyThread_type_lock. The API is internal only for now. * _PyParking_Lot: A futex-like API based on the API of the same name in WebKit. Used to implement PyMutex. * _PyRawMutex: A word sized lock used to implement _PyParking_Lot. * PyEvent: A one time event. This was used a bunch in the "nogil" fork and is useful for testing the PyMutex implementation, so I've included it as part of the PR. * pycore_llist.h: Defines common operations on doubly-linked list. Not strictly necessary (could do the list operations manually), but they come up frequently in the "nogil" fork. ( Similar to https://man.freebsd.org/cgi/man.cgi?queue) --------- Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
* gh-109496: Skip test_capi.test_decref_freed_object() on ASAN (#109573)Victor Stinner2023-09-191-0/+2
| | | | Skip test_decref_freed_object() of test_capi.test_misc if Python is built with ASAN, MSAN or UBSAN sanitizers.
* gh-109566: Run GHA and buildbot tests with --fail-rerun (#109567)Victor Stinner2023-09-193-4/+4
|
* Misc itertool recipe improvements, mostly docstrings and comments (gh-109555)Raymond Hettinger2023-09-191-34/+42
|
* gh-109485: Further improve `test_future_stmt` tests (#109486)Nikita Sobolev2023-09-1911-115/+106
| | | | Add assertSyntaxError() which run tests with an additional docstring and without docstring, and checks for the error message.
* gh-109435: Add Doc/library/cmdline.rst (#109436)Victor Stinner2023-09-199-0/+70
| | | Document modules providing a command-line interface (CLI).
* no-issue: Fix typo TestContentTyopeHeader to TestContentTypeHeader (gh-109069)Jenner2023-09-191-1/+1
|
* gh-109125: Run mypy on `Tools/wasm` (#109126)Nikita Sobolev2023-09-195-40/+71
|
* gh-109469: Silence compiler warnings on string comparisons in _testcapi ↵Serhiy Storchaka2023-09-191-1/+2
| | | | (GH-109533)
* gh-109546: Add more tests for formatting floats and fractions (GH-109548)Serhiy Storchaka2023-09-192-2/+35
|
* Fix error handling in _PySys_UpdateConfig() (GH-109524)Serhiy Storchaka2023-09-181-2/+9
|
* gh-102757: fix function signature mismatch for `functools.reduce` between ↵Xuehai Pan2023-09-184-8/+12
| | | | code and documentation (#102759)
* gh-109496: Detect Py_DECREF() after dealloc in debug mode (#109539)Victor Stinner2023-09-184-16/+56
| | | | | | | | | On a Python built in debug mode, Py_DECREF() now calls _Py_NegativeRefcount() if the object is a dangling pointer to deallocated memory: memory filled with 0xDD "dead byte" by the debug hook on memory allocators. The fix is to check the reference count *before* checking for _Py_IsImmortal(). Add test_decref_freed_object() to test_capi.test_misc.
* gh-109508: Fix libregrtest formatting of getcwd() (#109537)Victor Stinner2023-09-181-1/+10
|
* gh-109371: Fix monitoring with instruction events set (gh-109385)Tian Gao2023-09-184-2/+33
|
* gh-108843: fix ast.unparse for f-string with many quotes (#108981)Shantanu2023-09-183-1/+35
|
* gh-108303: Fix and move `badsyntax_pep3120.py` (#109513)Nikita Sobolev2023-09-183-5/+3
| | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-109408: Azure Pipelines: test 3.12 branch (#109453)Hugo van Kemenade2023-09-182-2/+2
|
* Docs: getopt is deprecated in Python 3.13 (#109438)Hugo van Kemenade2023-09-181-1/+2
|
* Fix a typo in c-analyzer (#109213)DongWoo Son2023-09-181-1/+1
| | | | Co-authored-by: sunmy2019 <59365878+sunmy2019@users.noreply.github.com> Co-authored-by: Dale Collison <92315623+dcollison@users.noreply.github.com>
* Fix extraneous backslashes in hashlib docs (#109468)Anthony Sottile2023-09-181-12/+12
|
* gh-109413: Improve mypy config for libregrtest (#109518)Alex Waygood2023-09-181-23/+9
| | | Improve the mypy config file for libregrtest
* gh-109408: Remove Ubuntu unit tests from Azure Pipelines (#109452)Hugo van Kemenade2023-09-173-54/+8
|
* gh-108511: Add C API functions which do not silently ignore errors (GH-109025)Serhiy Storchaka2023-09-1728-111/+330
| | | | | | | | | Add the following functions: * PyObject_HasAttrWithError() * PyObject_HasAttrStringWithError() * PyMapping_HasKeyWithError() * PyMapping_HasKeyStringWithError()
* gh-108303: Move all certificates to `Lib/test/certdata/` (#109489)Nikita Sobolev2023-09-1641-28/+31
|
* gh-109451: Fix wrong format specifier in logging documentation (GH-109465)AlberLC2023-09-161-1/+1
|
* gh-109414: Add some basic information about venvs in the introduction. ↵Vinay Sajip2023-09-161-0/+19
| | | | | (GH-109440) Co-authored-by: Victor Stinner <vstinner@python.org>
* gh-109474: Update two Unix packaging URLs (#109307)partev2023-09-161-2/+2
| | | | | update packaging URLs fix a broken URL for fedora RPM packaging guide and fix a URL redirect for Slackware packaging guide.