Mark Shannon
09ffa69e2e
GH-105678: Split MAKE_FUNCTION into MAKE_FUNCTION and SET_FUNCTION_ATTRIBUTE (GH-105680)
2023-06-13 09:51:05 +01:00
Erlend E. Aasland
217589d4f3
gh-105375: Improve error handling in _Unpickler_SetInputStream() ( #105667 )
...
Prevent exceptions from possibly being overwritten in case of multiple
failures.
2023-06-13 10:38:01 +02:00
Kumar Aditya
840d02f3f0
GH-105684: Require `asyncio.Task` implementations to support `set_name` method ( #105685 )
2023-06-13 06:06:40 +00:00
Jay
f0fb782ddb
gh-105331: Change `asyncio.sleep` to raise ``ValueError` for nan ( #105641 )
...
Co-authored-by: Guido van Rossum <gvanrossum@gmail.com>
Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
2023-06-12 20:29:02 +00:00
Dora203
4f7d3b602d
gh-105436: The environment block should end with two null wchar_t values (GH-105495)
2023-06-12 17:14:55 +01:00
Petr Viktorin
2b90796be6
gh-103968: PyType_FromMetaclass: Allow metaclasses with tp_new=NULL (GH-105386)
2023-06-12 17:45:49 +02:00
Erlend E. Aasland
20a56d8bec
gh-105375: Harden pyexpat initialisation ( #105606 )
...
Add proper error handling to add_errors_module() to prevent exceptions
from possibly being overwritten.
2023-06-11 20:18:46 +00:00
Erlend E. Aasland
41cddc2e93
gh-105375: Improve error handling in the sys extension module ( #105611 )
...
In _PySys_AddXOptionWithError() and sys_add_xoption(),
bail on first error to prevent exceptions from possibly being
overwritten.
2023-06-11 20:02:49 +00:00
Erlend E. Aasland
e8998e46a7
gh-105375: Improve error handling in _ctypes ( #105593 )
...
Prevent repeated PyLong_FromVoidPtr() from possibly overwriting the
current exception.
2023-06-11 19:46:19 +00:00
Erlend E. Aasland
555be81026
gh-105375: Improve error handling in PyUnicode_BuildEncodingMap() ( #105491 )
...
Bail on first error to prevent exceptions from possibly being overwritten.
2023-06-11 21:29:19 +02:00
Erlend E. Aasland
567d6ae8e7
gh-105375: Improve PyErr_WarnExplicit() error handling ( #105610 )
...
Bail on first error to prevent exceptions from possibly being
overwritten.
2023-06-11 21:23:28 +02:00
Samet YASLAN
3f7c0810f6
bpo-44185: Added close() to mock_open __exit__ ( #26902 )
2023-06-11 19:51:21 +01:00
Tomas R
18d16e93b6
gh-102676: Add more convenience properties to `dis.Instruction` ( #103969 )
...
Adds start_offset, cache_offset, end_offset, baseopcode,
baseopname, jump_target and oparg to dis.Instruction.
Also slightly improves the disassembly output by allowing
opnames to overflow into the space reserved for opargs.
2023-06-11 08:50:34 -07:00
Erlend E. Aasland
d4fa52934a
gh-105375: Improve error handling in the builtins extension module ( #105585 )
2023-06-11 12:20:43 +02:00
Erlend E. Aasland
c932f72849
gh-105375: Improve _decimal error handling ( #105605 )
...
Fix a bug where an exception could end up being overwritten.
2023-06-11 12:06:06 +02:00
Erlend E. Aasland
16d49680b5
gh-105375: Harden _datetime initialisation ( #105604 )
...
Improve error handling so init bails on the first exception.
2023-06-11 12:03:09 +02:00
Erlend E. Aasland
35cff545db
gh-105375: Improve array.array exception handling ( #105594 )
...
Fix a bug where 'tp_richcompare' could end up overwriting an exception.
2023-06-11 11:58:08 +02:00
Erlend E. Aasland
01f4230460
gh-105375: Harden _ssl initialisation ( #105599 )
...
Add proper error handling to prevent reference leaks and overwritten
exceptions.
2023-06-11 11:56:32 +02:00
Hugo van Kemenade
cc879481e2
gh-80480: Emit DeprecationWarning for array's 'u' type code ( #95760 )
2023-06-11 03:17:35 -06:00
Nikita Sobolev
33c92c4f15
gh-105375: Improve error handling in `zoneinfo` module ( #105586 )
...
Fix bugs where exceptions could end up being overwritten
because of deferred error handling.
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2023-06-09 21:48:54 +00:00
Erlend E. Aasland
91441bf7cb
Docs: fix formatting in 2023-06-09-12-59-18 NEWS item ( #105607 )
2023-06-09 23:14:02 +02:00
Pablo Galindo Salgado
b047fa5e56
gh-105549: Tokenize separately NUMBER and NAME tokens and allow 0-prefixed literals ( #105555 )
2023-06-09 21:39:01 +01:00
Erlend E. Aasland
00b599ab5a
gh-105375: Improve error handling in _elementtree ( #105591 )
...
Fix bugs where exceptions could end up being overwritten.
2023-06-09 22:35:03 +02:00
Erlend E. Aasland
f668f73bc8
gh-105375: Improve posix error handling ( #105592 )
...
Fix a bug where an IndexError could end up being overwritten.
2023-06-09 22:07:47 +02:00
Erlend E. Aasland
eede1d2f48
gh-105375: Improve errnomodule error handling ( #105590 )
...
Bail immediately if an exception is set, to prevent exceptions from
being overwritten.
2023-06-09 21:57:25 +02:00
Erlend E. Aasland
89aac6f6b7
gh-105375: Improve _pickle error handling ( #105475 )
...
Error handling was deferred in some cases, which could potentially lead
to exceptions being overwritten.
2023-06-09 19:09:53 +02:00
Erlend E. Aasland
6c832ddcf2
gh-105375: Improve error handling in compiler_enter_scope() ( #105494 )
2023-06-09 18:55:53 +02:00
Pablo Galindo Salgado
d7f46bcd98
gh-105564: Don't include artificial newlines in the line attribute of tokens ( #105565 )
2023-06-09 17:01:26 +01:00
Ethan Furman
59f009e589
gh-105497: [Enum] Fix Flag inversion when alias/mask members exist. (GH-105542)
...
When inverting a Flag member (or boundary STRICT), only consider other canonical flags; when inverting an IntFlag member (or boundary KEEP), also consider aliases.
2023-06-09 08:56:05 -07:00
Thomas Grainger
9bf8d825a6
gh-94924: support `inspect.iscoroutinefunction` in `create_autospec(async_def)` ( #94962 )
...
* support inspect.iscoroutinefunction in create_autospec(async_def)
* test create_autospec with inspect.iscoroutine and inspect.iscoroutinefunction
* test when create_autospec functions check their signature
2023-06-09 13:29:09 +00:00
Victor Stinner
0f885ffa94
gh-105407: Remove unused imports ( #105554 )
2023-06-09 12:50:31 +00:00
Nikita Sobolev
947ec7ab02
gh-105545: Remove deprecated `MacOSXOSAScript._name` (gh-105546)
2023-06-09 08:52:58 +00:00
Victor Stinner
3e525d2212
gh-105396: Deprecate PyImport_ImportModuleNoBlock() function ( #105397 )
...
Deprecate the PyImport_ImportModuleNoBlock() function which is just
an alias to PyImport_ImportModule() since Python 3.3.
2023-06-09 10:30:57 +02:00
Nikita Sobolev
4ff5690e59
gh-105332: [Enum] Fix unpickling flags in edge-cases (GH-105348)
...
* revert enum pickling from by-name to by-value
Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
2023-06-08 11:40:15 -07:00
Eric Snow
34c63b86d3
gh-104310: Rename the New Function in importlib.util (gh-105255)
...
The original name wasn't as clear as it could have been. This change includes the following:
* rename the function
* change the default value for "disable_check" to False
* add clues to the docstring that folks should probably not use the function
---------
Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
2023-06-08 18:19:58 +00:00
Mark Shannon
e830289c52
GH-105229: Remove remaining two-codeunit superinstructions (GH-105326)
...
* Remove LOAD_CONST__LOAD_FAST and LOAD_FAST__LOAD_CONST superinstructions.
2023-06-08 12:35:34 +01:00
Dong-hee Na
aa5b762bd3
gh-104635: Eliminate redundant STORE_FAST instructions in the compiler (gh-105320)
2023-06-08 08:39:56 +09:00
Barney Gale
ffeaec7e60
GH-104996: Defer joining of `pathlib.PurePath()` arguments. (GH-104999)
...
Joining of arguments is moved to `_load_parts`, which is called when a
normalized path is needed.
2023-06-07 23:27:06 +01:00
Pablo Galindo Salgado
7279fb6408
gh-105435: Fix spurious NEWLINE token if file ends with comment without a newline ( #105442 )
2023-06-07 13:31:48 +01:00
Erlend E. Aasland
a24a780d93
gh-105375: Improve error handling in sqlite3 collation callback ( #105412 )
...
Check for error after each call to PyUnicode_FromStringAndSize().
2023-06-07 13:10:28 +02:00
Pablo Galindo Salgado
ffd2654550
gh-105390: Correctly raise TokenError instead of SyntaxError for tokenize errors ( #105399 )
2023-06-07 12:04:40 +01:00
Jeffery To
990cb3676c
gh-104692: Include commoninstall as a prerequisite for bininstall ( #104693 )
...
This ensures that `commoninstall` is completed before `bininstall` is
started when parallel builds are used (`make -j install`), and so the
`python3` symlink is only installed after all standard library modules
are installed.
Co-authored-by: Zachary Ware <zachary.ware@gmail.com>
2023-06-07 08:59:56 +02:00
Barney Gale
24af45172f
GH-102613: Fast recursive globbing in `pathlib.Path.glob()` (GH-104512)
...
This commit introduces a 'walk-and-match' strategy for handling glob patterns that include a non-terminal `**` wildcard, such as `**/*.py`. For this example, the previous implementation recursively walked directories using `os.scandir()` when it expanded the `**` component, and then **scanned those same directories again** when expanded the `*.py` component. This is wasteful.
In the new implementation, any components following a `**` wildcard are used to build a `re.Pattern` object, which is used to filter the results of the recursive walk. A pattern like `**/*.py` uses half the number of `os.scandir()` calls; a pattern like `**/*/*.py` a third, etc.
This new algorithm does not apply if either:
1. The *follow_symlinks* argument is set to `None` (its default), or
2. The pattern contains `..` components.
In these cases we fall back to the old implementation.
This commit also replaces selector classes with selector functions. These generators directly yield results rather calling through to their successors. A new internal `Path._glob()` method takes care to chain these generators together, which simplifies the lazy algorithm and slightly improves performance. It should also be easier to understand and maintain.
2023-06-06 23:50:36 +01:00
Victor Stinner
2587b9f64e
gh-105382: Remove urllib.request cafile parameter ( #105384 )
...
Remove cafile, capath and cadefault parameters of the
urllib.request.urlopen() function, deprecated in Python 3.6.
2023-06-06 21:17:45 +00:00
Victor Stinner
6c54e5d721
gh-105376: Remove logging.Logger.warn() method ( #105377 )
2023-06-06 18:35:51 +00:00
Victor Stinner
0cb6b9b0db
gh-104783: Remove locale.resetlocale() function ( #104784 )
2023-06-06 14:55:50 +02:00
Pablo Galindo Salgado
c0a6ed3934
gh-105259: Ensure we don't show newline characters for trailing NEWLINE tokens ( #105364 )
2023-06-06 12:52:16 +01:00
Victor Stinner
8ddf0dd264
gh-105268: Remove _PyGC_FINALIZED() macro ( #105350 )
...
Remove the old private, undocumented and untested _PyGC_FINALIZED()
macro which was kept for backward compatibility with Python 3.8 and
older.
2023-06-06 11:54:23 +02:00
Erlend E. Aasland
e01c4de35d
gh-90005: Don't link with libbsd if not needed ( #105236 )
...
The regression was introduced with commit 5b946cada
.
Restore pre gh-29696 behaviour.
2023-06-06 09:33:01 +00:00
Irit Katriel
f4d8e10d0d
gh-105292: Add option to make traceback.TracebackException.format_exception_only recurse into exception groups ( #105294 )
...
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2023-06-06 11:26:18 +02:00