summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* gh-115238: Remove a redundant f-string in graphlib (#115239)Luka2024-09-011-1/+1
|
* gh-123517: Remove unnecessary ``:meth:`` parentheses (#123518)Wei-Hsiang (Matt) Wang2024-09-0155-145/+145
|
* gh-121285: Remove backtracking when parsing tarfile headers (GH-121286)Seth Michael Larson2024-08-313-35/+112
| | | | | | | | * Remove backtracking when parsing tarfile headers * Rewrite PAX header parsing to be stricter * Optimize parsing of GNU extended sparse headers v0.0 Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru> Co-authored-by: Gregory P. Smith <greg@krypto.org>
* Enable colour for doctest on GitHub Actions (#123536)Hugo van Kemenade2024-08-311-0/+3
|
* gh-123309: Remove check for redefined memo entry in pickletools.dis() ↵Serhiy Storchaka2024-08-313-24/+11
| | | | | | (GH-123374) Such pickles are supported by the Unpickler even if the Pickler does not produce them.
* gh-76960: Fix urljoin() and urldefrag() for URIs with empty components ↵Serhiy Storchaka2024-08-313-52/+140
| | | | | | | | | | | | (GH-123273) * urljoin() with relative reference "?" sets empty query and removes fragment. * Preserve empty components (authority, params, query, fragment) in urljoin(). * Preserve empty components (authority, params, query) in urldefrag(). Also refactor the code and get rid of double _coerce_args() and _coerce_result() calls in urljoin(), urldefrag(), urlparse() and urlunparse().
* gh-123309: Add more tests for the pickletools module (GH-123355)Serhiy Storchaka2024-08-311-0/+310
| | | Add tests for genops() and dis().
* gh-123407: Enable translating literal and code blocks (#123408)Maciej Olko2024-08-311-0/+1
|
* gh-108172: do not override OS preferred browser if it is a super-string of a ↵Oded Arbel2024-08-312-1/+2
| | | | | | | | | | | known browser (GH-113011) When checking if the registering browser is the "OS preferred browser", do not use a substring search - that makes no sense: one can have a preferred browser that looks like a super-string of a known browser, e.g. "firefox-nightly" vs "firefox". https://github.com/python/cpython/issues/108172 explains in more detail, and lays out a potential better future enhancement for this case of just using xdg-open. We'll go with this for now. --------- Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-121313: Limit the reading size from pipes to their default buffer size on ↵Alexander P.2024-08-312-3/+19
| | | | | POSIX systems (GH-121315) See https://github.com/python/cpython/issues/121313 for analysis, but this greatly reduces memory overallocation and overhead when multiprocessing is sending non-small data over its pipes between processes.
* Make self turtledemo codeowner (#123524)Terry Jan Reedy2024-08-311-1/+2
|
* gh-121404: rearrange code in compile.c so that codegen functions come first ↵Irit Katriel2024-08-301-1033/+1071
| | | | and compiler functions second (#123510)
* gh-123440: Improve error message for `except as` used with not a name (#123442)sobolevn2024-08-304-972/+1282
|
* gh-122854: Add Py_HashBuffer() function (#122855)Victor Stinner2024-08-3017-25/+80
|
* gh-121645: Add PyBytes_Join() function (#121646)Victor Stinner2024-08-3010-12/+101
| | | | * Replace _PyBytes_Join() with PyBytes_Join(). * Keep _PyBytes_Join() as an alias to PyBytes_Join().
* gh-123484: Fix the debug offsets for PyLongObject (#123485)Matt Wozniski2024-08-302-2/+4
|
* gh-123492: Remove unnecessary `:func:` parentheses (#123493)Wei-Hsiang (Matt) Wang2024-08-3078-154/+154
|
* gh-123189: [`Modules/blake2module.c`]: Move function definitions and their ↵Kirill Podoprigora2024-08-301-0/+8
| | | | usage under the macros (#123190)
* gh-123446: Fix empty function names in `TypeError`s in `typeobject` (#123470)sobolevn2024-08-303-11/+63
|
* gh-121485: Always use 64-bit integers for integers bits count (GH-121486)Serhiy Storchaka2024-08-3013-111/+187
| | | | | Use 64-bit integers instead of platform specific size_t or Py_ssize_t to represent the number of bits in Python integer.
* gh-123446: Fix empty function names in `TypeError`s in `_csv` module (#123462)sobolevn2024-08-291-3/+3
|
* gh-123446: Fix empty function names in `TypeError`s in `_csv` module (#123461)sobolevn2024-08-292-3/+6
|
* gh-123431: Harmonize extension code checks in pickle (GH-123434)Serhiy Storchaka2024-08-293-28/+73
| | | | | | | | | This checks are redundant in normal circumstances and can only work if the extension registry was intentionally broken. * The Python implementation now raises exception for the extension code with false boolean value. * Simplify the C code. RuntimeError is now raised in explicit checks. * Add many tests.
* gh-123448: Move `_PyNoDefault_Type` to the static types array (#123449)Peter Bierma2024-08-293-3/+3
|
* gh-122136: test_asyncio: Don't fail if the kernel buffers more data than ↵Petr Viktorin2024-08-281-5/+13
| | | | advertised (GH-123423)
* gh-123142: fix too wide source location of GET_ITER/GET_AITER (#123420)Irit Katriel2024-08-286-9/+40
|
* gh-101860: document `property.__name__` (GH-123399)Bénédikt Tran2024-08-282-0/+10
|
* gh-123344: Add missing ast optimizations for PEP 696 (#123377)Bogdan Romanyuk2024-08-283-9/+99
| | | | Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* Fix typos in docs, error messages and comments (#123336)Wulian2024-08-2821-25/+25
| | | | Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* gh-120389: Add PyLong_FromInt64() and PyLong_AsInt64() (#120390)Victor Stinner2024-08-2813-2/+286
| | | | | | | | | | | | Add new functions to convert C <stdint.h> numbers from/to Python int: * PyLong_FromInt32() * PyLong_FromUInt32() * PyLong_FromInt64() * PyLong_FromUInt64() * PyLong_AsInt32() * PyLong_AsUInt32() * PyLong_AsInt64() * PyLong_AsUInt64()
* gh-122561: Clean up and microoptimize str.translate and charmap codec ↵Serhiy Storchaka2024-08-281-27/+43
| | | | | | | | (GH-122932) * Replace PyLong_AS_LONG() with PyLong_AsLong(). * Call PyLong_AsLong() only once per the replacement code. * Use PyMapping_GetOptionalItem() instead of PyObject_GetItem().
* gh-123254: Improve `tuple` C API docs with more info about errors (#123255)sobolevn2024-08-281-8/+16
| | | Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-123363: Show string value of CONTAINS_OP oparg in dis (#123387)Alexandr Mitin2024-08-283-0/+14
| | | Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
* gh-123270: Replaced SanitizedNames with a more surgical fix. (#123354)Jason R. Coombs2024-08-273-71/+87
| | | Applies changes from zipp 3.20.1 and jaraco/zipp#124
* gh-123271: Make builtin zip method safe under free-threading (#123272)Pieter Eendebak2024-08-274-1/+61
| | | | | | | | | | | | | | | | The `zip_next` function uses a common optimization technique for methods that generate tuples. The iterator maintains an internal reference to the returned tuple. When the method is called again, it checks if the internal tuple's reference count is 1. If so, the tuple can be reused. However, this approach is not safe under the free-threading build: after checking the reference count, another thread may perform the same check and also reuse the tuple. This can result in a double decref on the items of the replaced tuple and a double incref (memory leak) on the items of the tuple being set. This adds a function, `_PyObject_IsUniquelyReferenced` that encapsulates the stricter logic necessary for the free-threaded build: the internal tuple must be owned by the current thread, have a local refcount of one, and a shared refcount of zero.
* gh-121404: split compiler_nameop into a codegen part and a compiler part ↵Irit Katriel2024-08-271-89/+101
| | | | (#123398)
* gh-109975: Fix a typo in What's New in Python 3.13 (#123393)Daniel Hollas2024-08-271-1/+1
|
* GH-117759: Document incremental GC (GH-123266)Mark Shannon2024-08-273-26/+69
| | | | | | * Update what's new * Update gc module docs and fix inconsistency in gc.get_objects
* gH-80788: remove old weakset workaround for thread safety (#123388)Kumar Aditya2024-08-271-17/+2
|
* gh-123089: Make weakref.WeakSet safe against concurrent mutations while it ↵Kumar Aditya2024-08-272-43/+11
| | | | | | | | | is being iterated (#123279) * Make `weakref.WeakSet` safe against concurrent mutations while it is being iterated. `_IterationGuard` is no longer used for `WeakSet`, it now relies on copying the underlying set which is an atomic operation while iterating so that it can be modified by other threads.
* gh-120426: Reword the glossary term "immortal" (GH-123191)Petr Viktorin2024-08-271-7/+5
| | | Reword the glossary term "immortal", mark it as an implementation detail
* gh-121404: compiler_visit_* --> codegen_visit_* (#123382)Irit Katriel2024-08-271-61/+49
|
* GH-123232: Factor BINARY_SLICE and STORE_SLICE to handle stats properly for ↵Mark Shannon2024-08-274-197/+229
| | | | tier 2. (GH-123381)
* GH-115775: Use `__static_attributes__` to initialize shared keys (GH-118468)Mark Shannon2024-08-273-3/+18
|
* Further revise idlelib/Icons/README.text (#123364)Terry Jan Reedy2024-08-261-10/+25
| | | In particular, add trademark derivative approval information.
* gh-122666: Tests for ast optimizations (#122667)Kirill Podoprigora2024-08-262-1/+213
| | | | | Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com> Co-authored-by: Victor Stinner <vstinner@python.org> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-123340: Show string value of `IS_OP` oparg in `dis` (#123348)sobolevn2024-08-263-0/+13
|
* GH-73991: Prune `pathlib.Path.copy()` and `copy_into()` arguments (#123337)Barney Gale2024-08-263-108/+21
| | | | | | | | | | | | | | | | Remove *ignore* and *on_error* arguments from `pathlib.Path.copy[_into]()`, because these arguments are under-designed. Specifically: - *ignore* is appropriated from `shutil.copytree()`, but it's not clear how it should apply when the user copies a non-directory. We've changed the callback signature from the `shutil` version, but I'm not confident the new signature is as good as it can be. - *on_error* is a generalisation of `shutil.copytree()`'s error handling, which is to accumulate exceptions and raise a single `shutil.Error` at the end. It's not obvious which solution is better. Additionally, this arguments may be challenging to implement in future user subclasses of `PathBase`, which might utilise a native recursive copying method.
* GH-73991: Make `pathlib.Path.delete()` private. (#123315)Barney Gale2024-08-267-287/+48
| | | | | | | | Per feedback from Paul Moore on GH-123158, it's better to defer making `Path.delete()` public than ship it with under-designed error handling capabilities. We leave a remnant `_delete()` method, which is used by `move()`. Any functionality not needed by `move()` is deleted.
* gh-111495: Remove test_capi test_rshift_print() (#123338)Victor Stinner2024-08-261-15/+0
| | | | The suggestion for "print >> value" was removed recently: commit 9375b9ca3a4998678ba74ff5c77ed540a4dcf887.