| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
|
|
| |
* raise exception if _missing_ returns None or invalid type
|
|
|
|
|
|
|
|
| |
references loop (GH-9201)
Store a weak reference to stream readerfor breaking strong references
It breaks the strong reference loop between reader and protocol and allows to detect and close the socket if the stream is deleted (garbage collected)
|
|
|
|
| |
argument. (GH-9208)
|
|
|
|
|
| |
* Fix enum members getting shadowed by parent attributes
* Move Enum._convert to EnumMeta._convert_
* Deprecate _convert
|
|
|
|
|
|
| |
Improve Enum docs.
https://bugs.python.org/issue33437
|
| |
|
|
|
|
|
|
|
|
| |
Address a C undefined behavior signed integer overflow issue in set object table resizing. Our -fwrapv compiler flag and practical reasons why sets are unlikely to get this large should mean this was never an issue but it was incorrect code that generates code analysis warnings.
<!-- issue-number: [bpo-1621](https://www.bugs.python.org/issue1621) -->
https://bugs.python.org/issue1621
<!-- /issue-number -->
|
|
|
|
| |
(GH-4178)
|
|
|
|
|
|
|
| |
When handling \s, \d, or \w (and their inverse) escapes in bytes regexes this a small but measurable performance improvement.
<!-- issue-number: [bpo-34636](https://www.bugs.python.org/issue34636) -->
https://bugs.python.org/issue34636
<!-- /issue-number -->
|
|
|
| |
This reverts commit 886483e2b9bbabf60ab769683269b873381dd5ee.
|
|
|
|
|
|
| |
to the "async" keyword. (GH-4175)
Previously, col_offset points to the keyword after "async".
|
|
|
|
| |
with a bad __new__(). (GH-3788)
|
|
|
|
|
|
|
|
| |
tests (GH-9086)
<!-- issue-number: [bpo-28617](https://www.bugs.python.org/issue28617) -->
https://bugs.python.org/issue28617
<!-- /issue-number -->
|
| |
|
| |
|
|
|
|
|
| |
(GH-9163)
8621bb5d93239316f97281826461b85072ff6db7 sets the filename in directly in the FileNotFoundError, so we may revert the earlier fix 5f780400572508a8179de6a6c13b58b7be417ef5.
|
| |
|
| |
|
|
|
|
| |
Emit warning when None passed explicitly, list Python version since
deprecation in warning message and docs.
|
|
|
|
|
| |
Remove ellipsis that look like continuation prompts,
has a side benefit of putting rest of error message in proper text color.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When subprocess.Popen() stdin= stdout= or stderr= handles are specified
and appear in pass_fds=, don't close the original fds after dup'ing them.
This implementation and unittest primarily came from @izbyshev (see the PR)
See also https://github.com/izbyshev/cpython/commit/b89b52f28490b69142d5c061604b3a3989cec66c
This also removes the old manual p2cread, c2pwrite, and errwrite closing logic
as inheritable flags and _close_open_fds takes care of that properly today without special treatment.
This code is within child_exec() where it is the only thread so there is no
race condition between the dup and _Py_set_inheritable_async_safe call.
|
|
|
|
| |
Check for functionality via imports rather than checking sys.platform
specifically for Windows
|
|
|
| |
* bpo-33217: Raise TypeError for non-Enum lookups in Enums
|
|
|
|
|
| |
(GH-7063)
HMAC's digestmod was deprecated marked for removal, this removes it as planned.
|
| |
|
|
|
|
|
|
|
|
| |
The recursive frame pruning code always undercounted the number of elided frames
by one. That is, in the "[Previous line repeated N more times]" message, N would
always be one too few. Near the recursive pruning cutoff, one frame could be
silently dropped. That situation is demonstrated in the OP of the bug report.
The fix is to start the identical frame counter at 1.
|
|
|
|
| |
This caused installation errors in some cases on Windows.
Patch by Julien Malard.
|
|
|
|
|
| |
Some methods of the SMTP class use mutable default arguments. Specially
`send_message` is affected as it mutates one of the args by appending items
to it, which has side effects on further calls.
|
|
|
|
| |
Pass the user/group name as Unicode to the formatting function,
instead of always decoding a bytes string from UTF-8.
|
|
|
|
|
|
|
|
|
| |
* Add %T format to PyUnicode_FromFormatV(), and so to
PyUnicode_FromFormat() and PyErr_Format(), to format an object type
name: equivalent to "%s" with Py_TYPE(obj)->tp_name.
* Replace Py_TYPE(obj)->tp_name with %T format in unicodeobject.c.
* Add unit test on %T format.
* Rename unicode_fromformat_write_cstr() to
unicode_fromformat_write_utf8(), to make the intent more explicit.
|
|
|
| |
Implement the "attributes objects" parameter of `os.posix_spawn` to complete the implementation and fully cover the underlying API.
|
|
|
|
|
|
| |
Release GIL on grp.getgrnam(), grp.getgrgid(), pwd.getpwnam() and
pwd.getpwuid() if reentrant variants of these functions are available.
Patch by William Grzybowski.
|
|
|
|
| |
When calling tp_descr_get(self, obj, type), make sure that
we own a strong reference to "self".
|
| |
|
|
|
| |
Co-Authored-By: Wouter Bolsterlee.
|
|
|
|
|
|
| |
(GH-9067)
|
|
|
|
|
|
| |
(GH-9027)
Fix for invalid assert on big output of multiprocessing.Process.
|
|
|
|
| |
distutils.spawn.find_executable() now falls back on os.defpath if the
PATH environment variable is not set.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fail `test_semaphore_tracker_sigint` if no warnings are expected and one is received.
Fix race condition when the child receives SIGINT before it can register signal handlers for it.
The race condition occurs when the parent calls
`_semaphore_tracker.ensure_running()` (which in turn spawns the
semaphore_tracker using `_posixsubprocess.fork_exec`), the child
registers the signal handlers and the parent tries to kill the child.
What seem to happen is that in some slow systems, the parent sends the
signal to kill the child before the child protects against the signal.
|
|
|
| |
math.factorial() was accepting non-integral Decimal instances. This is inconsistent with the actual behaviour for floats, which are not accepted.
|
|
|
|
| |
(GH-9016)
|
|
|
| |
p.wait()
|
|
|
|
|
|
|
| |
`PyInterpreterState_New()` (GH-8767)
* A pointer in `PyInterpreterState_New()` could have been `NULL` when being dereferenced.
* Memory was leaked in `PyInterpreterState_New()` when taking some error-handling code path.
|
|
|
|
|
|
| |
between short and long arguments (GH-8827)
Added previously missing "--list" argument.
Made "--list" and "--list-paths" behavior consistent with the corresponding "-0" and "-0p" arguments.
|
|
|
|
| |
(GH-8813)
|
|
|
|
|
|
|
|
| |
Update all test certs and keys to use future proof crypto settings:
* 3072 bit RSA keys
* SHA-256 signature
Signed-off-by: Christian Heimes <christian@python.org>
|