Irit Katriel
9c81fc2dbe
gh-105481: do not auto-generate pycore_intrinsics.h ( #106913 )
2023-07-20 17:46:04 +01:00
Brandt Bucher
214a25dd81
GH-104584: Miscellaneous fixes for -Xuops (GH-106908)
2023-07-20 16:35:39 +00:00
Irit Katriel
eeff8e7234
gh-102799: use sys.exception() instead of sys.exc_info() in contextlib ( #103311 )
...
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
2023-07-20 14:41:32 +05:30
Pieter Eendebak
832c37d42a
gh-106751: Optimize _PolllikeSelector for many iteration case (gh-106884)
2023-07-20 09:53:11 +09:00
Barney Gale
c6c5665ee0
GH-100502: Add `pathlib.PurePath.pathmod` attribute (GH-106533)
...
This instance attribute stores the implementation of `os.path` used for
low-level path operations: either `posixpath` or `ntpath`.
2023-07-19 18:59:55 +01:00
Yonatan Bitton
70b961ed93
gh-104090: Fix unittest collectedDurations resources leak ( #106795 )
2023-07-19 12:03:47 +01:00
Dong-hee Na
e6f96cf9c6
gh-106751: Optimize SelectSelector.select() for many iteration case (gh-106879)
2023-07-19 15:12:38 +09:00
Dong-hee Na
7513e2e7e4
gh-106751: Optimize KqueueSelector.select() for many iteration case (gh-106864)
2023-07-19 10:18:23 +09:00
Tian Gao
663854d73b
gh-106727: Make `inspect.getsource` smarter for class for same name definitions ( #106815 )
2023-07-18 23:20:31 +00:00
Irit Katriel
40f3f11a77
gh-105481: Generate the opcode lists in dis from data extracted from bytecodes.c ( #106758 )
2023-07-18 19:42:44 +01:00
J. Nick Koston
aecf6aca51
gh-106751: selectors: optimize EpollSelector.select() ( #106754 )
...
Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com>
2023-07-18 10:16:32 +00:00
Serhiy Storchaka
83ac128490
bpo-42327: C API: Add PyModule_Add() function (GH-23443)
...
It is a fixed implementation of PyModule_AddObject() which consistently
steals reference both on success and on failure.
2023-07-18 09:42:05 +03:00
Erlend E. Aasland
22379c60ab
gh-106368: Increase Argument Clinic test coverage for cpp.Monitor ( #106833 )
2023-07-17 20:55:10 +00:00
Guido van Rossum
8e9a1a0322
gh-106603: Make uop struct a triple (opcode, oparg, operand) ( #106794 )
2023-07-17 12:12:33 -07:00
Mario Corchero
7e96370a94
gh-61215: threadingmock: Improve test suite to avoid race conditions ( #106822 )
...
threadingmock: Improve test suite to avoid race conditions
Simplify tests and split them into multiple tests to prevent assertions
from triggering race conditions.
Additionally, we rely on calling the mocks without delay to validate the
functionality of matching calls.
2023-07-17 18:57:40 +00:00
Guido van Rossum
b2b261ab2a
gh-106529: Generate uops for POP_JUMP_IF_[NOT_]NONE ( #106796 )
...
These aren't automatically translated because (ironically)
they are macros deferring to POP_JUMP_IF_{TRUE,FALSE},
which are not viable uops (being manually translated).
The hack is that we emit IS_NONE and then set opcode and
jump to the POP_JUMP_IF_{TRUE,FALSE} translation code.
2023-07-17 10:06:05 -07:00
Victor Stinner
ad95c7253a
gh-106687: _ssl: use uint64_t for SSL options ( #106700 )
...
SSL_CTX_get_options() uses uint64_t for options:
https://www.openssl.org/docs/man3.1/man3/SSL_CTX_get_options.html
Fix this compiler warning on Windows with MSC:
conversion from 'uint64_t' to 'long', possible loss of data
2023-07-17 17:55:30 +02:00
Irit Katriel
5ecedbd266
gh-106789: avoid importing pprint from sysconfig ( #106790 )
2023-07-17 10:28:33 +01:00
Nikita Sobolev
c41320701b
gh-105540: Convert `pytest` tests of `cases_generator` to regular tests ( #106713 )
2023-07-16 16:05:24 -07:00
Grigoriev Semyon
55408f86d7
gh-105726: Add `__slots__` to `AbstractContextManager` and `AbstractAsyncContextManager` ( #106771 )
...
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
2023-07-16 15:30:39 +00:00
Jason R. Coombs
22980dc7c9
gh-106752: Sync with zipp 3.16.2 ( #106757 )
...
* gh-106752: Sync with zipp 3.16.2
* Add blurb
2023-07-15 09:21:17 -04:00
Inada Naoki
2566b74b26
gh-81283: compiler: remove indent from docstring ( #106411 )
...
Co-authored-by: Éric <merwok@netwok.org>
2023-07-15 19:33:32 +09:00
Erlend E. Aasland
2d7d1aa4bc
gh-106368: Increase Argument Clinic BlockParser test coverage ( #106759 )
2023-07-15 11:28:57 +02:00
Guido van Rossum
0db85eeba7
gh-106529: Fix subtle Tier 2 edge case with list iterator ( #106756 )
...
The Tier 2 opcode _IS_ITER_EXHAUSTED_LIST (and _TUPLE)
didn't set it->it_seq to NULL, causing a subtle bug
that resulted in test_exhausted_iterator in list_tests.py
to fail when running all tests with -Xuops.
The bug was introduced in gh-106696.
Added this as an explicit test.
Also fixed the dependencies for ceval.o -- it depends on executor_cases.c.h.
2023-07-14 17:22:06 -07:00
Jason R. Coombs
03185f0c15
gh-106752: Move zipfile._path into its own package ( #106753 )
...
* gh-106752: Move zipfile._path into its own package so it may have supplementary behavior.
* Add blurb
2023-07-14 20:40:46 +00:00
Irit Katriel
fb32f35c05
gh-102799: replace internal sys.exc_info() call by sys.exception() ( #106746 )
2023-07-14 20:41:24 +01:00
J. Nick Koston
aeef8591e4
gh-106554: replace `_BaseSelectorImpl._key_from_fd` with `dict.get` ( #106555 )
2023-07-15 03:46:30 +09:00
Irit Katriel
6a70edf24c
gh-105481: expose opcode metadata via the _opcode module ( #106688 )
2023-07-14 18:41:52 +01:00
Jason R. Coombs
243fdcb40e
gh-106531: Remove importlib.resources._legacy ( #106532 )
...
* gh-106531: Remove importlib.resources._legacy
Syncs with importlib_resources 6.0.
* Remove documentation for removed functionality.
2023-07-14 13:38:28 -04:00
Nikita Sobolev
490295d651
gh-105626: Change the default return value of `HTTPConnection.get_proxy_response_headers` ( #105628 )
2023-07-13 23:55:49 -07:00
Guido van Rossum
025995fead
gh-106529: Split FOR_ITER_{LIST,TUPLE} into uops ( #106696 )
...
Also rename `_ITER_EXHAUSTED_XXX` to `_IS_ITER_EXHAUSTED_XXX` to make it clear this is a test.
2023-07-13 17:27:35 -07:00
Erlend E. Aasland
ec45c513d3
gh-106368: Increase Argument Clinic test coverage ( #106728 )
...
- improve output_parameter() coverage
- improve coverage for Function.kind
2023-07-13 22:18:32 +00:00
J. Nick Koston
8d2f3c36ca
gh-106664: selectors: add get() method to _SelectorMapping ( #106665 )
...
It can be used to avoid raising and catching KeyError twice via __getitem__.
Co-authored-by: Inada Naoki <songofacandy@gmail.com>
2023-07-13 19:18:53 +00:00
Alex Waygood
32718f908c
gh-106309: Deprecate typing.no_type_check_decorator ( #106312 )
2023-07-13 14:30:35 +01:00
Chris Brett
4b4a5b70aa
gh-106634: Corrected minor asyncio doc issues ( #106671 )
2023-07-13 13:21:13 +05:30
CF Bolz-Tereick
7e6ce48872
gh-106628: email parsing speedup (gh-106629)
2023-07-13 15:12:56 +09:00
Jim Porter
af51bd7cda
gh-89427: Set VIRTUAL_ENV_PROMPT even when VIRTUAL_ENV_DISABLE_PROMPT… (GH-106643)
2023-07-13 07:08:33 +01:00
Dennis Sweeney
ab86426a34
gh-105235: Prevent reading outside buffer during mmap.find() ( #105252 )
...
* Add a special case for s[-m:] == p in _PyBytes_Find
* Add tests for _PyBytes_Find
* Make sure that start <= end in mmap.find
2023-07-12 22:50:45 -04:00
Prince Roshan
357e9e9da3
gh-106602: [Enum] Add __copy__ and __deepcopy__ (GH-106666)
2023-07-12 14:01:17 -07:00
Nikita Sobolev
e4b88c1e4a
gh-106236: Replace `assert` with `raise RuntimeError` in `threading.py` ( #106237 )
...
Replace `assert` with `raise ` in `threading.py` so that -OO does not alter _DummyThread behavior.
2023-07-12 11:07:59 -07:00
Guido van Rossum
dd1884dc5d
gh-106529: Split FOR_ITER_RANGE into uops ( #106638 )
...
For an example of what this does for Tier 1 and Tier 2, see
https://github.com/python/cpython/issues/106529#issuecomment-1631649920
2023-07-12 10:23:59 -07:00
Guido van Rossum
da86db56cb
gh-106529: Implement JUMP_FORWARD in uops (with test) ( #106651 )
...
Note that this may generate two SAVE_IP uops in a row.
Removing unneeded SAVE_IP uops is the optimizer's job.
2023-07-11 15:13:57 -07:00
Serhiy Storchaka
4bf43710d1
gh-106307: C API: Add PyMapping_GetOptionalItem() function (GH-106308)
...
Also add PyMapping_GetOptionalItemString() function.
2023-07-11 23:04:12 +03:00
Serhiy Storchaka
579aa89e68
gh-106521: Add PyObject_GetOptionalAttr() function (GH-106522)
...
It is a new name of former _PyObject_LookupAttr().
Add also PyObject_GetOptionalAttrString().
2023-07-11 22:13:27 +03:00
Guido van Rossum
cabd6e8a10
gh-106529: Support JUMP_BACKWARD in Tier 2 (uops) ( #106543 )
...
During superblock generation, a JUMP_BACKWARD instruction is translated to either a JUMP_TO_TOP micro-op (when the target of the jump is exactly the beginning of the superblock, closing the loop), or a SAVE_IP + EXIT_TRACE pair, when the jump goes elsewhere.
The new JUMP_TO_TOP instruction includes a CHECK_EVAL_BREAKER() call, so a closed loop can still be interrupted.
2023-07-11 18:08:10 +00:00
Kirill Podoprigora
292ac4bfe9
gh-102541: Add test case for help() for non_existent_module ( #106340 )
...
Test fix for when one enters, for instance, 'abd' at the 'help>' prompt.
---------
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2023-07-11 14:04:09 -04:00
Jelle Zijlstra
945d3cbf2e
gh-106403: Restore weakref support for TypeVar and friends ( #106418 )
2023-07-11 08:43:24 -07:00
Terry Jan Reedy
a2d54d4e8a
gh-106498: Revert incorrect colorsys.rgb_to_hls change ( #106627 )
...
gh-86618 assumed a-b-c = a-(b+c) = a-d where d = b+d.
For floats 2.0, 1.0, and 0.9999999999999999, this assumption
is false. The net change of 1.1102230246251565e-16 to 0.0
results in division by 0. Revert the replacement. Add test.
2023-07-11 11:07:20 -04:00
Ethan Furman
95b7426f45
gh-105497: [Enum] Fix flag mask inversion when unnamed flags exist ( #106468 )
...
For example:
class Flag(enum.Flag):
A = 0x01
B = 0x02
MASK = 0xff
~Flag.MASK is Flag(0)
2023-07-11 13:35:54 +02:00
Victor Stinner
1f2921b72c
gh-106572: Convert PyObject_DelAttr() to a function ( #106611 )
...
* Convert PyObject_DelAttr() and PyObject_DelAttrString() macros to
functions.
* Add PyObject_DelAttr() and PyObject_DelAttrString() functions to
the stable ABI.
* Replace PyObject_SetAttr(obj, name, NULL) with
PyObject_DelAttr(obj, name).
2023-07-11 11:38:22 +02:00