summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* bpo-32270: Don't close stdin/out/err in pass_fds (GH-6242)Gregory P. Smith2018-09-113-10/+46
| | | | | | | | | | | | | | 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.
* bpo-8110: Refactor platform detection in subprocess (GH-9053)Zachary Ware2018-09-102-55/+58
| | | | Check for functionality via imports rather than checking sys.platform specifically for Windows
* switch descriptor howto to return value annotation (GH-7796)NotAFile2018-09-101-3/+3
|
* bpo-20180: itertools.groupby Argument Clinic conversion (GH-4170)Tal Einat2018-09-102-23/+105
|
* bpo-33217: Raise TypeError for non-Enum lookups in Enums (GH-6651)Rahul Jha2018-09-104-5/+62
| | | * bpo-33217: Raise TypeError for non-Enum lookups in Enums
* bpo-33604: Remove deprecated HMAC default value marked for removal in 3.8 ↵Matthias Bussonnier2018-09-104-33/+13
| | | | | (GH-7063) HMAC's digestmod was deprecated marked for removal, this removes it as planned.
* closes bpo-34525: Fix smtplib's authobject() documentation (GH-8965)Sebastian Rittau2018-09-102-3/+3
|
* bpo-26502: Implement FrameSummary.__len__() (GH-8632)Berker Peksag2018-09-103-0/+10
|
* Fix misleading mentions of tp_size in comments (GH-9093)Peter Eisentraut2018-09-1015-21/+21
| | | | Many type object initializations labeled a field "tp_size" in the comment, but the name of that field is tp_basicsize.
* bpo-34588: Fix an off-by-one error in traceback formatting. (GH-9077)Benjamin Peterson2018-09-104-26/+96
| | | | | | | | 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.
* bpo-30977: rework code changes according to post-merge code review (GH-9106)Tal Einat2018-09-103-68/+146
| | | | also mention the change and its consequences in What's New
* Test dict values iterator pickling with pickle.HIGHEST_PROTOCOL. (GH-9052)Sergey Fedoseev2018-09-101-1/+1
|
* Revert "Fix misindented yaml in logging how to example (GH-8604)" (GH-9081)Rémy HUBSCHER2018-09-101-3/+3
| | | This reverts commit 10b59f1b019cd00c940dd7f4a74c4f667a20f25f.
* Remove unneeded PyUnicode_READY() in tokenizer.c (GH-9114)Zackery Spytz2018-09-101-1/+1
|
* bpo-34421 avoid unicode error in distutils logging (GH-8799)Julien Malard2018-09-082-1/+5
| | | | This caused installation errors in some cases on Windows. Patch by Julien Malard.
* bpo-20104: Change the file_actions parameter of os.posix_spawn(). (GH-6725)Serhiy Storchaka2018-09-084-40/+41
| | | | | * Make its default value an empty tuple instead of None. * Make it a keyword-only parameter.
* bpo-33083: Update "What's new" with math.factorial changes (GH-9109)Pablo Galindo2018-09-071-0/+3
| | | * Add elimination of non-int-like parameters in math.factorial to "What's new".
* bpo-34246: Make sure test_smtplib always cleans resources when finished ↵Pablo Galindo2018-09-071-7/+47
| | | | | | | | (GH-9108) * Make sure that when some of the tests in test_smtplib fail, the allocated threads and sockets are not leaked. * Use support.join_thread() instead of thread.join() to avoid infinite blocks.
* bpo-34246: Use no mutable default args in smtplib (GH-8554)Pablo Aguiar2018-09-075-8/+39
| | | | | 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.
* bpo-23855: Add missing NULL checks for malloc() in _msi.c (GH-9038)Zackery Spytz2018-09-071-0/+7
|
* bpo-34604: Fix possible mojibake in pwd.getpwnam() and grp.getgrnam() (GH-9098)William Grzybowski2018-09-074-17/+19
| | | | Pass the user/group name as Unicode to the formatting function, instead of always decoding a bytes string from UTF-8.
* bpo-34605: childs => children (GH-9102)Victor Stinner2018-09-071-1/+1
|
* bpo-34595: Add %T format to PyUnicode_FromFormatV() (GH-9080)Victor Stinner2018-09-074-53/+66
| | | | | | | | | * 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.
* bpo-20104: Add flag capabilities to posix_spawn (GH-6693)Pablo Galindo2018-09-075-14/+344
| | | Implement the "attributes objects" parameter of `os.posix_spawn` to complete the implementation and fully cover the underlying API.
* bpo-34605: Avoid master/slave terms (GH-9101)Victor Stinner2018-09-077-7/+7
| | | | | | | * Replace "master process" with "parent process" * Replace "master option mappings" with "main option mappings" * Replace "master pattern object" with "main pattern object" * ssl: replace "master" with "server" * And some other similar changes
* bpo-34605, libregrtest: Rename --slaveargs to --worker-args (GH-9099)Victor Stinner2018-09-074-15/+15
| | | Rename also run_tests_slave() to run_tests_worker().
* bpo-33625: Release GIL for grp.getgr{nam,gid} and pwd.getpw{nam,uid} (GH-7081)William Grzybowski2018-09-076-15/+228
| | | | | | Release GIL on grp.getgrnam(), grp.getgrgid(), pwd.getpwnam() and pwd.getpwuid() if reentrant variants of these functions are available. Patch by William Grzybowski.
* Doc: Missing 'f' in an f-string. (GH-9074)Julien Palard2018-09-071-1/+1
|
* _sre.c: Removed unused SRE_IS_ALNUM macro (GH-9090)Sergey Fedoseev2018-09-071-2/+0
|
* bpo-25750: fix refcounts in type_getattro() (GH-6118)jdemeyer2018-09-072-6/+13
| | | | When calling tp_descr_get(self, obj, type), make sure that we own a strong reference to "self".
* closes bpo-34599: Improve performance of _Py_bytes_capitalize(). (GH-9083)Sergey Fedoseev2018-09-071-17/+3
|
* closes bpo-34594: Don't hardcode errno values in the tests. (GH-9076)Zackery Spytz2018-09-063-3/+4
|
* bpo-30977: make uuid.UUID use __slots__ (GH-9078)Tal Einat2018-09-063-2/+88
| | | Co-Authored-By: Wouter Bolsterlee.
* closes bpo-34581 : Conditionalize use of __pragma in Modules/socketmodule.c. ↵Erik Janssens2018-09-052-2/+6
| | | | | | (GH-9067)
* bpo-34565: Change a PC/launcher.c comment to accurately describe valid major ↵Brendan Gerrity2018-09-041-2/+2
| | | | versions. (GH-9037)
* bpo-34563: Fix for invalid assert on big output of multiprocessing.Process ↵Alexander Buchkovsky2018-09-043-9/+10
| | | | | | (GH-9027) Fix for invalid assert on big output of multiprocessing.Process.
* bpo-26544: Add test for platform._comparable_version(). (GH-8973)Serhiy Storchaka2018-09-041-0/+36
|
* bpo-34530: Fix distutils find_executable() (GH-9049)Victor Stinner2018-09-043-3/+50
| | | | distutils.spawn.find_executable() now falls back on os.defpath if the PATH environment variable is not set.
* bpo-33613, test_semaphore_tracker_sigint: fix race condition (#7850)Pablo Galindo2018-09-043-12/+52
| | | | | | | | | | | | 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.
* bpo-33083 - Make math.factorial reject arguments that are not int-like (GH-6149)Pablo Galindo2018-09-033-3/+16
| | | math.factorial() was accepting non-integral Decimal instances. This is inconsistent with the actual behaviour for floats, which are not accepted.
* bpo-26901: Fix the Argument Clinic test suite (GH-8879)Victor Stinner2018-09-031-8/+19
| | | | | | | | | | * Fix Tools/clinic/clinic_test.py: add missing FakeClinic.destination_buffers attribute and pass a file argument to Clinic(). * Rename Tools/clinic/clinic_test.py to Lib/test/test_clinic.py: add temporary Tools/clinic/ to sys.path to import the clinic module. Co-Authored-By: Pablo Galindo <pablogsal@gmail.com>
* bpo-34544: pymain_read_conf() don't change LC_ALL (GH-9045)Victor Stinner2018-09-031-15/+3
| | | | bpo-34485, bpo-34544: Again, pymain_read_conf() leaves LC_ALL locale unchanged: only modify LC_CTYPE.
* bpo-34567: pythoninfo gets coreconfig (GH-9043)Victor Stinner2018-09-034-3/+174
| | | | | | * Add _testcapi.get_coreconfig() to get the _PyCoreConfig of the interpreter * test.pythoninfo now gets the core configuration using _testcapi.get_coreconfig()
* _Py_CoerceLegacyLocale() restores LC_CTYPE on fail (GH-9044)Victor Stinner2018-09-031-1/+13
| | | | bpo-34544: If _Py_CoerceLegacyLocale() fails to coerce the C locale, restore the LC_CTYPE locale to the its previous value.
* bpo-34544: Fix setlocale() in pymain_read_conf() (GH-9041)Victor Stinner2018-09-031-2/+13
| | | | | | | | bpo-34485, bpo-34544: On some FreeBSD, nl_langinfo(CODESET) fails if LC_ALL or LC_CTYPE is set to an invalid locale name. Replace _Py_SetLocaleFromEnv(LC_CTYPE) with _Py_SetLocaleFromEnv(LC_ALL) to initialize properly locales. Partially revert commit 177d921c8c03d30daa32994362023f777624b10d.
* Minor improvement to code clarity (GH-9036)Raymond Hettinger2018-09-021-1/+1
| | | Make it clear that the n==0 case is included. Otherwise, you have to know that max==0.0 whenever n==0.
* Fix struct sequence glossary entry grammar (GH-9030)Zachary Ware2018-09-021-1/+1
| | | | | ... by removing a superfluous "either". Reported by Никита Люшненко on docs@.
* closes bpo-34555: Fix incorrectly nested test for HAVE_LINUX_VM_SOCKETS_H ↵Thomas Herzog2018-09-012-24/+27
| | | | (GH-9016)
* Fix typo in typing.py module docstring (#9014)Tim McNamara2018-09-011-1/+1
| | | "explicitelly" → "explicitly"
* bpo-34558: Add missing parentheses in _aix.py (GH-9017)Michael Felt2018-09-012-1/+2
| | | p.wait()