]> granicus.if.org Git - python/log
python
7 years agobpo-29619: Do not use HAVE_LARGEFILE_SUPPORT for type conversions (GH-1666) (#3102)
Victor Stinner [Thu, 17 Aug 2017 12:33:06 +0000 (14:33 +0200)]
bpo-29619: Do not use HAVE_LARGEFILE_SUPPORT for type conversions (GH-1666) (#3102)

Use only the LongLong form for the conversions

(cherry picked from commit 50e86033de85294d87b7e942701d456342abde8e)

7 years agobpo-31069, test_multiprocessing: Fix dangling process (#3103) (#3104)
Victor Stinner [Wed, 16 Aug 2017 11:14:38 +0000 (13:14 +0200)]
bpo-31069, test_multiprocessing: Fix dangling process (#3103) (#3104)

Fix a warning about dangling processes in test_rapid_restart() of
_test_multiprocessing: join the process.
(cherry picked from commit 17657bb9458ff8f8804b7637d61686a68f4b9471)

7 years agoRevert "[3.6] bpo-30983: eval frame rename in pep 0523 broke gdb's python extension...
Victor Stinner [Wed, 16 Aug 2017 09:02:08 +0000 (11:02 +0200)]
Revert "[3.6] bpo-30983: eval frame rename in pep 0523 broke gdb's python extension (GH-2803) (#3090)" (#3101)

This reverts commit 09b77165e3fffa7b7ff160ad06042cdcfa004bf5.

7 years ago[3.6] bpo-30928: Update idlelib/NEWS.txt to 2017-08-15. (GH-3098) (#3099)
Terry Jan Reedy [Tue, 15 Aug 2017 23:41:03 +0000 (19:41 -0400)]
[3.6] bpo-30928: Update idlelib/NEWS.txt to 2017-08-15. (GH-3098) (#3099)

(cherry picked from commit 7f06684)

7 years ago[3.6] bpo-31205: IDLE: Factor KeysPage class from ConfigDialog (GH-3096) (#3097)
Terry Jan Reedy [Tue, 15 Aug 2017 23:13:11 +0000 (19:13 -0400)]
[3.6] bpo-31205: IDLE: Factor KeysPage class from ConfigDialog (GH-3096) (#3097)

* bpo-31205: IDLE: Factor KeysPage class from ConfigDialog (#3096)

  The slightly modified tests continue to pass.  Patch by Cheryl Sabella.

(cherry picked from commit e36d9f5568093b3885da62a0bf0fdfbe3771672b)

* [3.6] bpo-31205: IDLE: Factor KeysPage class from ConfigDialog (GH-3096)

  The slightly modified tests continue to pass.  Patch by Cheryl Sabella..
(cherry picked from commit e36d9f5568093b3885da62a0bf0fdfbe3771672b)

7 years ago[3.6] bpo-30714: ALPN changes for OpenSSL 1.1.0f (#3093)
Christian Heimes [Tue, 15 Aug 2017 08:45:40 +0000 (10:45 +0200)]
[3.6] bpo-30714: ALPN changes for OpenSSL 1.1.0f (#3093)

OpenSSL 1.1.0 to 1.1.0e aborted the handshake when server and client
could not agree on a protocol using ALPN. OpenSSL 1.1.0f changed that.
The most recent version now behaves like OpenSSL 1.0.2 again. The ALPN
callback can pretend to not been set.

See https://github.com/openssl/openssl/pull/3158 for more details

Signed-off-by: Christian Heimes <christian@python.org>
(cherry picked from commit a5c1bab352671e043645163ca50c5211aa657acd)

7 years ago[3.6] bpo-31002: IDLE: Add tests for configdialog keys tab (GH-2996) (#3092)
Terry Jan Reedy [Tue, 15 Aug 2017 01:45:02 +0000 (21:45 -0400)]
[3.6] bpo-31002: IDLE: Add tests for configdialog keys tab (GH-2996) (#3092)

Patch by Cheryl Sabella.
(cherry picked from commit 2f89646)

7 years ago[3.6] bpo-30983: eval frame rename in pep 0523 broke gdb's python extension (GH-2803...
Łukasz Langa [Mon, 14 Aug 2017 23:06:28 +0000 (16:06 -0700)]
[3.6] bpo-30983: eval frame rename in pep 0523 broke gdb's python extension (GH-2803) (#3090)

pep 0523 renames PyEval_EvalFrameEx to _PyEval_EvalFrameDefault while the gdb python extension only looks for PyEval_EvalFrameEx to understand if it is dealing with a frame.

Final effect is that attaching gdb to a python3.6 process doesnt resolve python objects. Eg. py-list and py-bt dont work properly.

This patch fixes that. Tested locally on python3.6
(cherry picked from commit 2e0f4db114)

7 years agobpo-31067: test_subprocess calls reap_children() (#2931) (#3074)
Victor Stinner [Fri, 11 Aug 2017 15:14:37 +0000 (17:14 +0200)]
bpo-31067: test_subprocess calls reap_children() (#2931) (#3074)

test_subprocess now also calls reap_children() in tearDown(), not
only on setUp().
(cherry picked from commit cc42c121eb5346f673247f95dac575aadb77d66c)

7 years agobpo-31173: Rewrite WSTOPSIG test of test_subprocess (#3055) (#3070)
Victor Stinner [Fri, 11 Aug 2017 00:36:30 +0000 (02:36 +0200)]
bpo-31173: Rewrite WSTOPSIG test of test_subprocess (#3055) (#3070)

The current test_child_terminated_in_stopped_state() function test
creates a child process which calls ptrace(PTRACE_TRACEME, 0, 0) and
then crash (SIGSEGV). The problem is that calling os.waitpid() in the
parent process is not enough to close the process: the child process
remains alive and so the unit test leaks a child process in a
strange state. Closing the child process requires non-trivial code,
maybe platform specific.

Remove the functional test and replaces it with an unit test which
mocks os.waitpid() using a new _testcapi.W_STOPCODE() function to
test the WIFSTOPPED() path.
(cherry picked from commit 7b7c6dcfff6a35333988a3c74c895ed19dff2e09)

7 years agobpo-31008: Fix asyncio test_wait_for_handle on Windows (#3065) (#3068)
Victor Stinner [Thu, 10 Aug 2017 23:52:13 +0000 (01:52 +0200)]
bpo-31008: Fix asyncio test_wait_for_handle on Windows (#3065) (#3068)

(cherry picked from commit 5659a72f487579be76335c09c8ba8b2f1800adde)

7 years agobpo-31159: fix language switch regex on unknown yet built languages. … (#3051)
Julien Palard [Thu, 10 Aug 2017 14:54:26 +0000 (16:54 +0200)]
bpo-31159: fix language switch regex on unknown yet built languages. … (#3051)

* bpo-31159: fix language switch regex on unknown yet built languages. (#3039)

This fix a regex issue (a missing non-matching group around an 'or'
list) and the specific possible case where a translation is built but
not yet in known by the picker, but not explicitly listing possible
languages in the regex.
(cherry picked from commit 122081deef86174beee965be1207fa46ea23533d)

* bpo-31149: Doc: Add Japanese to the language switcher. (#3028)

(cherry picked from commit c82b7f332aff606af6c9c163da75f1e86514125e)

7 years ago[3.6] bpo-31160: Backport reap_children() fixes from master to 3.6 (#3060)
Victor Stinner [Thu, 10 Aug 2017 14:02:00 +0000 (16:02 +0200)]
[3.6] bpo-31160: Backport reap_children() fixes from master to 3.6 (#3060)

* bpo-31160: Fix test_builtin for zombie process (#3043)

PtyTests.run_child() now calls os.waitpid() to read the exit status
of the child process to avoid creating zombie process and leaking
processes in the background.
(cherry picked from commit 4baca1b0f7325032598cd38e7ceffc79b616d255)

* bpo-31160: regrtest now reaps child processes (#3044)

Add a post_test_cleanup() function which currently only calls
support.reap_children().
(cherry picked from commit e3510d74aacc477c30f42f2b941d69689bbc478e)

* bpo-31160: test_builtin: don't check waitpid() status (#3050)

(cherry picked from commit 3ca9f50f96cfa5c1b7aa56639042531b57f07fbb)

* bpo-31160: test_tempfile: Fix reap_children() warning (#3056)

TestRandomNameSequence.test_process_awareness() now calls
os.waitpid() to avoid leaking a zombie process.
(cherry picked from commit 6c8c2943d996b59a48d331f61f22cbe72933910e)

7 years ago[3.6] bpo-19903: IDLE: Calltips changed to use inspect.signature (GH-2822) (#3053)
Terry Jan Reedy [Thu, 10 Aug 2017 04:46:29 +0000 (00:46 -0400)]
[3.6] bpo-19903: IDLE: Calltips changed to use inspect.signature (GH-2822) (#3053)

Idlelib.calltips.get_argspec now uses inspect.signature instead of inspect.getfullargspec, like help() does.  This improves the signature in the call tip in a few different cases, including builtins converted to provide a signature.  A message is added if the object is not callable, has an invalid signature, or if it has positional-only parameters.
Patch by Louie Lu..
(cherry picked from commit 3b0f620c1a2a21272a9e2aeca6ca1d1ac10f8162)

7 years ago[3.6] bpo-31150: Wait for child process in test_forkinthread to avoid thread reaped...
Ammar Askar [Wed, 9 Aug 2017 14:59:22 +0000 (10:59 -0400)]
[3.6] bpo-31150: Wait for child process in test_forkinthread to avoid thread reaped warnings (#3041)

7 years ago[3.6] bpo-31070: Fix a race condition in importlib _get_module_lock(). (GH-3033)...
Serhiy Storchaka [Wed, 9 Aug 2017 11:56:13 +0000 (14:56 +0300)]
[3.6] bpo-31070: Fix a race condition in importlib _get_module_lock(). (GH-3033). (#3038)

(cherry picked from commit 9b0d1d647e3d2ec9d299e5c9f49b02fbbb810a5a)

7 years agottk: fix LabeledScale and OptionMenu destroy() method (#3025) (#3030)
Victor Stinner [Wed, 9 Aug 2017 08:48:11 +0000 (10:48 +0200)]
ttk: fix LabeledScale and OptionMenu destroy() method (#3025) (#3030)

bpo-31135: Call the parent destroy() method even if the used
attribute doesn't exist.

The LabeledScale.destroy() method now also explicitly clears label
and scale attributes to help the garbage collector to destroy all
widgets.
(cherry picked from commit cd7e9c1b67d3d07ee03e0a79af2791c19031cecb)

7 years agobpo-31045: Language switch (#2652) (#3023)
Julien Palard [Tue, 8 Aug 2017 12:13:53 +0000 (14:13 +0200)]
bpo-31045: Language switch (#2652) (#3023)

* Doc: Indicate the language

* Renaming version_switcher to switchers (to add language_switcher).

* Adding language switch.

* Doc switchers: Enhance readability of regex parsing versions.

* Doc switchers: Desambiguate the need of a replace(/\/+$/g, '') by proper naming.

* Doc switchers: py3k can't reach js, it's redirected server-side by nginx.

* Doc switchers: Examples matching actual regexes.

* Doc switchers: Better fallback on unexisting translated version.

(cherry picked from commit dff9b5f9d62aa0b23f8a255867d09d11890efd1b)

7 years ago[3.6] bpo-31130: IDLE -- stop leaks in test_configdialog. (GH-3016) (#3018)
Terry Jan Reedy [Mon, 7 Aug 2017 19:20:03 +0000 (15:20 -0400)]
[3.6] bpo-31130: IDLE -- stop leaks in test_configdialog. (GH-3016) (#3018)

Initial patch by Victor Stinner.
(cherry picked from commit 733d0f6)

7 years ago[3.6] bpo-29910: IDLE - revert `break`s that disabled calltip close. (GH-2997) (...
Terry Jan Reedy [Mon, 7 Aug 2017 18:23:07 +0000 (14:23 -0400)]
[3.6] bpo-29910: IDLE - revert `break`s that disabled calltip close. (GH-2997) (#3017)

(cherry picked from commit 8922587)

7 years ago[3.6] bpo-30808: Use _Py_atomic API for concurrency-sensitive signal state (GH-2417...
Antoine Pitrou [Sun, 6 Aug 2017 17:32:39 +0000 (19:32 +0200)]
[3.6] bpo-30808: Use _Py_atomic API for concurrency-sensitive signal state (GH-2417) (#3007)

* Improve signal delivery

Avoid using Py_AddPendingCall from signal handler, to avoid calling signal-unsafe functions.

* Remove unused function

* Improve comments

* Use _Py_atomic API for concurrency-sensitive signal state

* Add blurb
(cherry picked from commit 2c8a5e4c968217f9672340e520942c4ed788d8de)

7 years agobpo-31029: test_tokenize Add missing import unittest (#2998)
Rajath Agasthya [Sat, 5 Aug 2017 18:28:17 +0000 (11:28 -0700)]
bpo-31029: test_tokenize Add missing import unittest (#2998)

7 years ago[3.6] bpo-31107: Fix copyreg mangled slot names calculation. (GH-2989) (#3003)
Shane Harvey [Sat, 5 Aug 2017 15:01:10 +0000 (08:01 -0700)]
[3.6] bpo-31107: Fix copyreg mangled slot names calculation. (GH-2989) (#3003)

(cherry picked from commit c4c9866064f03646c686d7e08b00aeb203c35c19)

7 years agoFix a shadow-compatible-local warning (#2181)
Yuan Chao Chou [Fri, 4 Aug 2017 17:53:42 +0000 (10:53 -0700)]
Fix a shadow-compatible-local warning (#2181)

Change the shadowing naming, 'value' (Python-ast.c:4686), to 'val'
to prevent the variables from being misused.

7 years ago[3.6] Improve grammar in asyncio documentation (GH-2993) (GH-2994)
Mariatta [Thu, 3 Aug 2017 14:33:33 +0000 (00:33 +1000)]
[3.6] Improve grammar in asyncio documentation (GH-2993) (GH-2994)

"not only is it .." is the correct form, as opposed to:
"not only it is ..."
(cherry picked from commit 87c3c5de731af18a271f4559cd69ccb8d050208f)

7 years ago[3.6] bpo-31071: Avoid masking original TypeError in call with * unpacking (GH-2957...
Serhiy Storchaka [Thu, 3 Aug 2017 09:14:35 +0000 (12:14 +0300)]
[3.6] bpo-31071: Avoid masking original TypeError in call with * unpacking (GH-2957) (#2991)

when other arguments are passed.
(cherry picked from commit 25e4f77)

7 years ago[3.6] bpo-30978: str.format_map() now passes key lookup exceptions through. (GH-2790...
Serhiy Storchaka [Thu, 3 Aug 2017 09:14:07 +0000 (12:14 +0300)]
[3.6] bpo-30978: str.format_map() now passes key lookup exceptions through. (GH-2790) (#2992)

Previously any exception was replaced with a KeyError exception.
(cherry picked from commit 5075416)

7 years agobpo-31061: fix crash in asyncio speedup module (GH-2984)
INADA Naoki [Wed, 2 Aug 2017 07:50:39 +0000 (16:50 +0900)]
bpo-31061: fix crash in asyncio speedup module (GH-2984)

(cherry picked from commit de34cbe9cdaaf7b85fed86f99c2fd071e1a7b1d2)

7 years ago[3.6] bpo-31083: IDLE: Describe the Page classes in configdialog (GH-2965) (#2973)
Terry Jan Reedy [Tue, 1 Aug 2017 05:00:33 +0000 (01:00 -0400)]
[3.6] bpo-31083: IDLE: Describe the Page classes in configdialog (GH-2965) (#2973)

Add template as comment. Update existing classes to match outline.
Initial patch by Cheryl Sabella.
(cherry picked from commit 6f446be)

7 years agoRemove .mention-bot (GH-2923) (GH-2970)
Mariatta [Tue, 1 Aug 2017 04:34:36 +0000 (21:34 -0700)]
Remove .mention-bot (GH-2923) (GH-2970)

(cherry picked from commit e1e60bd95c376f9b18cbaf9481364281c6cc1bc7)

7 years agobpo-25910: Update LICENSE (GH-2873) (GH-2967)
Mariatta [Tue, 1 Aug 2017 02:59:50 +0000 (19:59 -0700)]
bpo-25910: Update LICENSE (GH-2873) (GH-2967)

Use the copy provided in https://bugs.python.org/issue25910GH-msg295200
(cherry picked from commit 8474d87165593bac2bc231287f42c4cff3fd6aaf)

7 years ago[3.6] bpo-25684: ttk.OptionMenu radiobuttons weren't unique (GH-2276) (#2959)
csabella [Mon, 31 Jul 2017 19:10:13 +0000 (15:10 -0400)]
[3.6] bpo-25684: ttk.OptionMenu radiobuttons weren't unique (GH-2276) (#2959)

between instances of OptionMenu.
(cherry picked from commit a568e5273382a5dca0c27274f7d8e34c41a87d4d)

* Update Misc/ACKS

7 years ago[3.6] bpo-31050: IDLE: Factor GenPage class from ConfigDialog (GH-2952) (#2955)
Terry Jan Reedy [Sun, 30 Jul 2017 23:02:51 +0000 (19:02 -0400)]
[3.6] bpo-31050: IDLE: Factor GenPage class from ConfigDialog (GH-2952) (#2955)

The slightly modified tests for the General tab continue to pass.
Patch by Cheryl Sabella.
(cherry picked from commit e8eb17b)

7 years ago[3.6] bpo-31004: IDLE: Factor out FontPage class from configdialog (step 1) (GH-2905...
Terry Jan Reedy [Sun, 30 Jul 2017 19:00:50 +0000 (15:00 -0400)]
[3.6] bpo-31004: IDLE: Factor out FontPage class from configdialog (step 1) (GH-2905) (#2950)

The slightly modified tests continue to pass. The General test
broken by the switch to Notebook is fixed.
Patch mostly by Cheryl Sabella.
(cherry picked from commit 9397e2a)

7 years ago[3.6] bpo-30928: Update IDLE News.txt. (GH-2948) (#2949)
Terry Jan Reedy [Sun, 30 Jul 2017 17:35:46 +0000 (13:35 -0400)]
[3.6] bpo-30928: Update IDLE News.txt. (GH-2948) (#2949)

(cherry picked from commit c3aa47f655abe564a2c2fb6d091ab19bdc0113b5)

7 years ago[3.6] bpo-30803: clarify truth value testing documentation (GH-2508) (#2946)
Terry Jan Reedy [Sat, 29 Jul 2017 22:56:06 +0000 (18:56 -0400)]
[3.6] bpo-30803: clarify truth value testing documentation (GH-2508) (#2946)

Initial patch by Peter Thomassen.
(cherry picked from commit caa1280)

7 years ago[3.6] bpo-31027: Fix test_listcomps failure when run directly (GH-2939) (#2945)
Terry Jan Reedy [Sat, 29 Jul 2017 18:38:24 +0000 (14:38 -0400)]
[3.6] bpo-31027: Fix test_listcomps failure when run directly (GH-2939) (#2945)

Bug appears to be incomplete copy-paste-edit.
(cherry picked from commit ceb93f4)

7 years ago[3.6] bpo-30781: IDLE - Use ttk Notebook in ConfigDialog (GH-2938) (#2944)
Terry Jan Reedy [Sat, 29 Jul 2017 05:28:05 +0000 (01:28 -0400)]
[3.6] bpo-30781: IDLE - Use ttk Notebook in ConfigDialog (GH-2938) (#2944)

The notebook looks a bit better.  It will work better with separate page classes. Traversal of widgets by Tab works better.  Switching tabs with keys becomes possible.  The font sample box works better at large font sizes.

One of the two simulated click tests no longer works.  This will be investigated while fixing a bug with the widget itself.
(cherry picked from commit b331f80)

7 years agoFix trivial typo in multiprocessing documentation (GH-2930) (GH-2940)
Mariatta [Sat, 29 Jul 2017 02:55:23 +0000 (19:55 -0700)]
Fix trivial typo in multiprocessing documentation (GH-2930) (GH-2940)

(cherry picked from commit 6fcb69dad579cc9a7dc15eabead43b6c37464f8c)

7 years ago[3.6] bpo-30853: IDLE - touch-up configdialog.VarTrace and tests. (GH-2936) (#2937)
Terry Jan Reedy [Fri, 28 Jul 2017 22:36:30 +0000 (18:36 -0400)]
[3.6] bpo-30853: IDLE - touch-up configdialog.VarTrace and tests. (GH-2936) (#2937)

Add clear method for tests.  Adjust tests to use global instance.
Remove unneeded ConfigDialog method.
(cherry picked from commit 5d0f30a)

7 years ago[3.6] bpo-30853: IDLE: Convert font and general vars to use VarTrace (GH-2914) (...
Terry Jan Reedy [Fri, 28 Jul 2017 19:42:43 +0000 (15:42 -0400)]
[3.6] bpo-30853: IDLE: Convert font and general vars to use VarTrace (GH-2914) (#2935)

Instance tracers manages pairs consisting of a tk variable and a
callback function.  When tracing is turned on, setting the variable
calls the function.  Test coverage for the new class is 100%.
(cherry picked from commit 5b59154)

7 years ago[3.6] bpo-31060: IDLE: Finish regrouping ConfigDialog methods (GH-2908) (#2925)
Terry Jan Reedy [Fri, 28 Jul 2017 00:50:39 +0000 (20:50 -0400)]
[3.6] bpo-31060: IDLE: Finish regrouping ConfigDialog methods (GH-2908) (#2925)

Finish resorting the 72 ConfigDialog methods into 7 groups that represent the dialog, action buttons, and font, highlight, keys, general, and extension pages.  This will help with continuing to add tests and improve the pages. It will enable splitting ConfigDialog into 6 or 7 more comprehensible classes.
(cherry picked from commit b166080)

7 years agobpo-31044: Skip test_posix.test_makedev() on FreeBSD (#2915) (#2917)
Victor Stinner [Thu, 27 Jul 2017 16:42:11 +0000 (18:42 +0200)]
bpo-31044: Skip test_posix.test_makedev() on FreeBSD (#2915) (#2917)

There is a bug in FreeBSD CURRENT with 64-bit dev_t. Skip the test if
dev_t is larger than 32-bit, until the bug is fixed in FreeBSD
CURRENT.
(cherry picked from commit 12953ffe12ac781332b384c36b25d12216b1db62)

7 years agobpo-31028: Fix test_pydoc when run directly (#2864) (#2910)
Victor Stinner [Thu, 27 Jul 2017 16:05:46 +0000 (18:05 +0200)]
bpo-31028: Fix test_pydoc when run directly (#2864) (#2910)

* bpo-31028: Fix test_pydoc when run directly

Fix get_pydoc_link() of test_pydoc to fix "./python
Lib/test/test_pydoc.py": get the absolute path to __file__ to prevent
relative directories.

* Use realpath() instead of abspath()

(cherry picked from commit fd46561167af6cd697191dd7ebb8c2fef5ad6493)

7 years ago[3.6] bpo-30814, bpo-30876: Add new import test files to projects. (GH-2851). (#2912)
Serhiy Storchaka [Thu, 27 Jul 2017 10:15:59 +0000 (13:15 +0300)]
[3.6] bpo-30814, bpo-30876: Add new import test files to projects. (GH-2851). (#2912)

(cherry picked from commit d5ed47dea25e04a3a144eddf99a4ac4a29242dbc)

7 years ago[3.6] bpo-31003: IDLE - Add more tests for General tab (GH-2859) (#2906)
Terry Jan Reedy [Thu, 27 Jul 2017 01:41:26 +0000 (21:41 -0400)]
[3.6] bpo-31003: IDLE - Add more tests for General tab (GH-2859) (#2906)

* In configdialog: Document causal pathways in create_page_general.
Move related functions to follow this. Simplify some attribute names.
* In test_configdialog: Add tests for load and helplist functions.
Coverage for the general tab is now complete, and 63% overall.
(cherry picked from commit 2bc8f0e)

7 years ago[3.6] bpo-30853: IDLE: Factor a VarTrace class from configdialog.ConfigDialog. ...
Terry Jan Reedy [Thu, 27 Jul 2017 00:53:13 +0000 (20:53 -0400)]
[3.6] bpo-30853:  IDLE: Factor a VarTrace class from configdialog.ConfigDialog. (GH-2872) (#2903)

The new class manages pairs of tk Variables and trace callbacks.
It is completely covered by new tests.
(cherry picked from commit 45bf723)

7 years agobpo-30980: Fix double close in asyncore.file_wrapper (#2789) (#2898)
Nir Soffer [Wed, 26 Jul 2017 23:27:08 +0000 (02:27 +0300)]
bpo-30980: Fix double close in asyncore.file_wrapper (#2789) (#2898)

* bpo-30980: Fix close test to fail

test_close_twice was not considering the fact that file_wrapper is
duping the file descriptor. Closing the original descriptor left the
duped one open, hiding the fact that close protection is not effective.

* bpo-30980: Fix double close protection

Invalidated self.fd before closing, handling correctly the case when
os.close raises.

* bpo-30980: Fix fd leak introduced in the fixed test

7 years agoFix build batch files (#2750) (#2897)
Steve Dower [Wed, 26 Jul 2017 21:20:41 +0000 (14:20 -0700)]
Fix build batch files (#2750) (#2897)

* Enable building MSI, zip and nuget packages when Py_OutDir is set.

* Restore the --build option, which got reverted at some point.

* Ensure output directory is created.

* Enables BuildForDaily and DailyBuildVersion options for nuget package.

7 years ago[3.6] bpo-30119: fix ftplib.FTP.putline() to throw an error for a illegal command...
Dong-hee Na [Wed, 26 Jul 2017 12:11:25 +0000 (21:11 +0900)]
[3.6] bpo-30119: fix ftplib.FTP.putline() to throw an error for a illegal command (#1214) (#2886)

7 years ago[3.6] bpo-30822: Fix testing of datetime module. (GH-2530) (GH-2783) (#2816)
Utkarsh Upadhyay [Wed, 26 Jul 2017 11:49:16 +0000 (13:49 +0200)]
[3.6] bpo-30822: Fix testing of datetime module. (GH-2530) (GH-2783) (#2816)

* [3.6] bpo-30822: Fix testing of datetime module. (GH-2530) (GH-2783)

Only C implementation was tested.
(cherry picked from commit 287c5594edc1ca08db64d1f4739cc36bfe75ae75)

* [3.6] bpo-30822: Fix testing of datetime module. (GH-2530) (GH-2783)

Only C implementation was tested..
(cherry picked from commit 287c5594edc1ca08db64d1f4739cc36bfe75ae75)

7 years agoAdd the link to asyncio source code in the docs (GH-2373) (GH-2884)
Mariatta [Wed, 26 Jul 2017 04:05:17 +0000 (21:05 -0700)]
Add the link to asyncio source code in the docs (GH-2373) (GH-2884)

(cherry picked from commit 627d2c8e8dc9cfe6c1cdfd9b34899eb30b600a88)

7 years ago[3.6] bpo-30595: Fix multiprocessing.Queue.get(timeout) (#2027) (#2881)
Victor Stinner [Wed, 26 Jul 2017 03:38:22 +0000 (05:38 +0200)]
[3.6] bpo-30595: Fix multiprocessing.Queue.get(timeout) (#2027) (#2881)

* bpo-30595: Fix multiprocessing.Queue.get(timeout) (#2027)

multiprocessing.Queue.get() with a timeout now polls its reader in
non-blocking mode if it succeeded to aquire the lock but the acquire
took longer than the timeout.

Co-Authored-By: Grzegorz Grzywacz <grzgrzgrz3@gmail.com>
(cherry picked from commit 1b7863c3b6519c6e134c28cab8b8af0dea43e375)

* bpo-30595: Increase test_queue_feeder_donot_stop_onexc() timeout (#2148)

_test_multiprocessing.test_queue_feeder_donot_stop_onexc() now uses a
timeout of 1 second on Queue.get(), instead of 0.1 second, for slow
buildbots.
(cherry picked from commit 8f6eeaf21cdf4aea25fdefeec814a1ce07453fe9)

7 years agobpo-30845: Enhance test_concurrent_futures cleanup (#2564) (#2880)
Victor Stinner [Wed, 26 Jul 2017 03:05:09 +0000 (05:05 +0200)]
bpo-30845: Enhance test_concurrent_futures cleanup (#2564) (#2880)

* bpo-30845: reap_children() now logs warnings

* bpo-30845: Enhance test_concurrent_futures cleanup

In setUp() and tearDown() methods of test_concurrent_futures tests,
make sure that tests don't leak threads nor processes. Clear
explicitly the reference to the executor to make it that it's
destroyed (to prevent "dangling threads" warning).

(cherry picked from commit 3df9dec425b0254df1cdf41922fd8d6b08bf47e4)

7 years ago[3.6] bpo-26762, bpo-31019: Backport multiprocessing fixes from master to 3.6 (#2879)
Victor Stinner [Wed, 26 Jul 2017 02:48:56 +0000 (04:48 +0200)]
[3.6] bpo-26762, bpo-31019: Backport multiprocessing fixes from master to 3.6 (#2879)

* bpo-26762: Avoid daemon process in _test_multiprocessing (#2842)

test_level() of _test_multiprocessing._TestLogging now uses regular
processes rather than daemon processes to prevent zombi processes
(to not "leak" processes).
(cherry picked from commit 06634950c553f8df83330ed468c11483b857b7dc)

* test_multiprocessing: Fix dangling process/thread (#2850)

bpo-26762: Fix more dangling processes and threads in
test_multiprocessing:

* Queue: call close() followed by join_thread()
* Process: call join() or self.addCleanup(p.join)
(cherry picked from commit d7e64d9934d86aa6173229de5af5fe908662a33a)

* test_multiprocessing detects dangling per test case (#2841)

bpo-26762: test_multiprocessing now detects dangling processes and
threads per test case classes:

* setUpClass()/tearDownClass() of mixin classes now check if
  multiprocessing.process._dangling or threading._dangling was
  modified to detect "dangling" processses and threads.
* ManagerMixin.tearDownClass() now also emits a warning if it still
  has more than one active child process after 5 seconds.
* tearDownModule() now checks for dangling processes and threads
  before sleep 500 ms. And it now only sleeps if there is a least one
  dangling process or thread.
(cherry picked from commit ffb49408f0780ae80a553208aa133bc5bb3ba129)

* bpo-26762: test_multiprocessing close more queues (#2855)

* Close explicitly queues to make sure that we don't leave dangling
  threads
* test_queue_in_process(): remove unused queue
* test_access() joins also the process to fix a random warning
(cherry picked from commit b4c52966c810b5c5e088fceff403247f610b7d13)

* bpo-31019: Fix multiprocessing.Process.is_alive() (#2875)

multiprocessing.Process.is_alive() now removes the process from the
_children set if the process completed.

The change prevents leaking "dangling" processes.
(cherry picked from commit 2db64823c20538a6cfc6033661fab5711d2d4585)

7 years agobpo-31034: Reliable signal handler for test_asyncio (#2867) (#2876)
Victor Stinner [Wed, 26 Jul 2017 00:33:47 +0000 (02:33 +0200)]
bpo-31034: Reliable signal handler for test_asyncio (#2867) (#2876)

* bpo-31034: Reliable signal handler for test_asyncio

Don't rely on the current SIGHUP signal handler, make sure that it's
set to the "default" signal handler: SIG_DFL.

* Add comments

(cherry picked from commit 830080913c22a9834d310294b9f7653234dc6a59)

7 years agobpo-26506: hex() documentation: mention %x % int (GH-2525) (GH-2870)
Mariatta [Tue, 25 Jul 2017 18:04:08 +0000 (11:04 -0700)]
bpo-26506: hex() documentation: mention %x % int (GH-2525) (GH-2870)

(cherry picked from commit 67ba4fa467ffff825d6a0c0a21cc54ff1df2ed1b)

7 years ago[3.6] bpo-31018: Switch to GH-pragma pack from __declspec(align) (GH-2848) (#2868)
Segev Finer [Tue, 25 Jul 2017 17:20:38 +0000 (20:20 +0300)]
[3.6] bpo-31018: Switch to GH-pragma pack from __declspec(align) (GH-2848) (#2868)

(cherry picked from commit 39243779f4c97ec6f700fa73c007ca66dfa9408e)

7 years ago[3.6] Minor typo in curses.rst (GH-2763) (#2853)
Terry Jan Reedy [Mon, 24 Jul 2017 22:54:53 +0000 (18:54 -0400)]
[3.6] Minor typo in curses.rst (GH-2763) (#2853)

I found a tiny typo in the curses how-to: changed 'Thy' to 'The' on line 68.
(cherry picked from commit d439d3e)

7 years agobpo-30908: Fix dangling thread in test_os.TestSendfile (#2680) (#2844)
Victor Stinner [Mon, 24 Jul 2017 15:40:50 +0000 (17:40 +0200)]
bpo-30908: Fix dangling thread in test_os.TestSendfile (#2680) (#2844)

tearDown() now clears explicitly the self.server variable to make
sure that the thread is completely cleared when tearDownClass()
checks if all threads have been cleaned up.

Fix the following warning:

$ ./python -m test --fail-env-changed -m test.test_os.TestSendfile.test_keywords -R 3:1 test_os
(...)
Warning -- threading_cleanup() failed to cleanup 0 threads after 3 sec (count: 0, dangling: 2)
(...)
Tests result: ENV CHANGED
(cherry picked from commit d1cc037d1442cc35d1b194ec8e50901514360949)

7 years ago[3.6] bpo-30993: IDLE - Improve configdialog font page and tests. (GH-2831) (#2834)
Terry Jan Reedy [Mon, 24 Jul 2017 06:50:28 +0000 (02:50 -0400)]
[3.6] bpo-30993: IDLE - Improve configdialog font page and tests. (GH-2831) (#2834)

In configdialog: Document causal pathways in create_font_tab docstring.  Simplify some attribute names. Move set_samples calls to var_changed_font (idea from Cheryl Sabella).  Move related functions to positions after the create widgets function.

In test_configdialog: Fix test_font_set so not order dependent.  Fix renamed test_indent_scale so it tests the widget.  Adjust tests for movement of set_samples call.  Add tests for load functions.  Put all font tests in one class and tab indent tests in another.  Except for two lines, these tests completely cover the related functions.
(cherry picked from commit 77e97ca)

7 years agoMac installer build now needs venv for docs build (#2828) (#2830)
Ned Deily [Sun, 23 Jul 2017 21:10:40 +0000 (17:10 -0400)]
Mac installer build now needs venv for docs build (#2828) (#2830)

(cherry picked from commit 4c7532e96da19f2d5543bdab2b972797699c37d5)

7 years ago[3.6] bpo-30993: IDLE - Improve configdialog font page and tests. (GH-2818) (#2826)
Terry Jan Reedy [Sun, 23 Jul 2017 18:18:27 +0000 (14:18 -0400)]
[3.6] bpo-30993: IDLE - Improve configdialog font page and tests.  (GH-2818) (#2826)

* Document causal event pathways in docstring.
* Simplify some attribute names.
* Rename test_bold_toggle_set_samples to make test_font_set fail.
* Fix test_font_set so not order dependent.
* Fix renamed test_indent_scale so it tests the widget.
(cherry picked from commit 07ba305)

7 years ago[3.6] Make test_shutil test_disk_usage not depend on the cwd fs (GH-2597) (#2820)
Gregory P. Smith [Sun, 23 Jul 2017 06:00:39 +0000 (23:00 -0700)]
[3.6] Make test_shutil test_disk_usage not depend on the cwd fs (GH-2597) (#2820)

Make test_shutil test_disk_usage not depend on the current working directory's filesystem.
(cherry picked from commit 529746c90584069270cd122920270bd7be38bca3)

7 years ago[3.6] bpo-30981: IDLE -- Add more configdialog font page tests. (GH-… (#2796)
Terry Jan Reedy [Sat, 22 Jul 2017 04:56:18 +0000 (00:56 -0400)]
[3.6] bpo-30981: IDLE -- Add more configdialog font page tests.  (GH-… (#2796)

Verify that clicking the bold checkbutton and calling its command, set_samples, changes the bold setting of both samples. Simplify some names in configdialog.
(cherry picked from commit d0969d6)
(Incorporates changes and fixes from PRs 2798,  7c5798e, and 2810, 616ecf1)

* Fix broken test with PR2798 and PR2810 changes.

7 years ago[3.6] bpo-29403: Fix mock's broken autospec behavior on method-bound builtin function...
Berker Peksag [Fri, 21 Jul 2017 22:31:04 +0000 (01:31 +0300)]
[3.6] bpo-29403: Fix mock's broken autospec behavior on method-bound builtin functions (GH-3)

Cython will, in the right circumstances, offer a MethodType instance
where im_func is a builtin function. Any instance of MethodType is
automatically assumed to be a Python-defined function (more
specifically, a function that has an inspectable signature), but
_set_signature was still conservative in its assumptions. As a result
_set_signature would return early with None instead of a mock since
the im_func had no inspectable signature. This causes problems
deeper inside mock, as _set_signature is assumed to _always_
return a mock, and nothing checked its return value.

In similar corner cases, autospec will simply not check the spec of the
function, so _set_signature is amended to now return early with the
original, not-wrapped mock object.

Patch by Aaron Gallagher.

(cherry picked from commit 856cbcc12f2e4cca93af5dc7ed6bcea4dd942f10)

7 years agobpo-30891: Fix again importlib _find_and_load() (#2665) (#2801)
Victor Stinner [Fri, 21 Jul 2017 11:28:55 +0000 (13:28 +0200)]
bpo-30891: Fix again importlib _find_and_load() (#2665) (#2801)

Use sys.modules.get() in the "with _ModuleLockManager(name):" block
to protect the dictionary key with the module lock and use an atomic
get to prevent race condition.

Remove also _bootstrap._POPULATE since it was unused
(_bootstrap_external now has its own _POPULATE object), add a new
_SENTINEL object instead.
(cherry picked from commit e72b1359f81d1dd42bd8a5c5cc2b3928b74f8023)

7 years ago[3.6] bpo-30964: Mention ensurepip in package installation docs (GH-2797)
Nicholas [Fri, 21 Jul 2017 06:44:43 +0000 (23:44 -0700)]
[3.6] bpo-30964: Mention ensurepip in package installation docs (GH-2797)

Adds a new 'Pip not installed' section that covers
running `ensurepip` manually, and also references
the relevant section of the Python Packaging User
Guide.

(cherry picked from commit b3527bfefd7a0188d43a2d7515ac6addd97a8202)

7 years ago[3.6] bpo-28523: IDLE: Use 'color' instead of 'colour'. (GH-2787) (#2791)
Terry Jan Reedy [Fri, 21 Jul 2017 05:29:09 +0000 (01:29 -0400)]
[3.6] bpo-28523: IDLE: Use 'color' instead of 'colour'. (GH-2787) (#2791)

(cherry picked from commit a54a8f1)

7 years agobpo-30466: Add brief explanation of classes to tutorial (GH-1804) (GH-2700)
Trey Hunner [Fri, 21 Jul 2017 03:10:54 +0000 (20:10 -0700)]
bpo-30466: Add brief explanation of classes to tutorial (GH-1804) (GH-2700)

7 years agobpo-30822: Exclude tzdata from regrtest --all (#2775) (#2777)
Victor Stinner [Thu, 20 Jul 2017 15:08:48 +0000 (17:08 +0200)]
bpo-30822: Exclude tzdata from regrtest --all (#2775) (#2777)

When running the test suite using --use=all / -u all, exclude tzdata
since it makes test_datetime too slow (15-20 min on some buildbots)
which then times out on some buildbots.

-u tzdata must now be enabled explicitly, -u tzdata or -u all,tzdata,
to run all test_datetime tests.

Fix also regrtest command line parser to allow passing -u
extralargefile to run test_zipfile64.

Travis CI: remove -tzdata. Replace -u all,-tzdata,-cpu with -u all,-cpu since tzdata is now excluded from -u all.
(cherry picked from commit 5b392bbaeb9d9b1db961ecfc7315d8c8662c27f6)

7 years ago[3.6] Fix typo in Turtle Docs: yingyang -> yinyang (GH-2770) (GH-2778)
Mariatta [Thu, 20 Jul 2017 14:14:05 +0000 (07:14 -0700)]
[3.6] Fix typo in Turtle Docs: yingyang -> yinyang (GH-2770) (GH-2778)

(cherry picked from commit fff2a21057b98732562098e3bdd65980551f0135)

7 years agoUpdate doc download files size estimates. (#2771) (#2772)
Ned Deily [Thu, 20 Jul 2017 08:19:22 +0000 (04:19 -0400)]
Update doc download files size estimates. (#2771) (#2772)

7 years ago[3.6] bpo-30917: IDLE: Add config.IdleConf unittests (GH-2691) (#2753)
terryjreedy [Thu, 20 Jul 2017 05:23:00 +0000 (01:23 -0400)]
[3.6] bpo-30917: IDLE: Add config.IdleConf unittests (GH-2691) (#2753)

Patch by Louie Lu.
(cherry picked from commit f776eb0)
(includes diffs of  ed014f7 and 9f9192a)
* fix config reset from pr 2754

* Fix test_get_font (from pr 2769)

7 years ago[3.6] bpo-30883: Use pythontest.net instead of debian.org in test_urllib2net (GH...
Ammar Askar [Thu, 20 Jul 2017 00:21:09 +0000 (17:21 -0700)]
[3.6] bpo-30883: Use pythontest.net instead of debian.org in test_urllib2net (GH-2755)

7 years ago[3.6] bpo-30450: Improved logic for obtaining dependencies (#2751)
Steve Dower [Wed, 19 Jul 2017 07:11:08 +0000 (09:11 +0200)]
[3.6] bpo-30450: Improved logic for obtaining dependencies (#2751)

Adds alternate download approach for nuget.exe
Fall back to git.exe if no Python is found. (#2739)
Also check whether git.exe is on PATH if it will be used.
Add support for HOST_PYTHON variable.
Clear internal environment variables used in find_python.bat
Use HOST_PYTHON as the actual Python if it is recent enough.
Adds HOST_PYTHON variable to AppVeyor configuration

7 years agobpo-30961: Fix decrementing a borrowed reference in tracemalloc. (#2747) (#2748)
Xiang Zhang [Tue, 18 Jul 2017 16:50:52 +0000 (00:50 +0800)]
bpo-30961: Fix decrementing a borrowed reference in tracemalloc. (#2747) (#2748)

(cherry picked from commit 4ed5ad79ec6c6270e6018bd0a55656305ee60907)

7 years agoAlso bump README.rst
Ned Deily [Mon, 17 Jul 2017 04:59:03 +0000 (00:59 -0400)]
Also bump README.rst

7 years agoBump to v3.6.2+
Ned Deily [Mon, 17 Jul 2017 04:54:03 +0000 (00:54 -0400)]
Bump to v3.6.2+

7 years agoMerge tag 'v3.6.2' into 3.6
Ned Deily [Mon, 17 Jul 2017 04:42:07 +0000 (00:42 -0400)]
Merge tag 'v3.6.2' into 3.6

Version v3.6.2

7 years ago[3.6] bpo-30936: Fix a reference leak in json when fail to sort keys. (GH-2712)....
Serhiy Storchaka [Sun, 16 Jul 2017 04:48:08 +0000 (07:48 +0300)]
[3.6] bpo-30936: Fix a reference leak in json when fail to sort keys. (GH-2712). (#2727)

(cherry picked from commit 49f6449ef4b81537c19b82329caaf60596c516c2)

7 years ago[3.6] bpo-30876: Relative import from unloaded package now reimports the package...
Serhiy Storchaka [Sun, 16 Jul 2017 04:44:25 +0000 (07:44 +0300)]
[3.6] bpo-30876: Relative import from unloaded package now reimports the package (GH-2639) (#2676)

instead of failing with SystemError.

Relative import from non-package now fails with ImportError rather than
SystemError.
(cherry picked from commit 8a9cd20edca7d01b68292036029ae3735ce65edd)

7 years ago[3.6] bpo-30934: Document coverage details for idlelib tests (GH-2711) (#2726)
terryjreedy [Sun, 16 Jul 2017 04:39:59 +0000 (00:39 -0400)]
[3.6] bpo-30934: Document coverage details for idlelib tests (GH-2711) (#2726)

* Add section to idlelib/idle-test/README.txt.
* Include check that branches are taken both ways.
* Exclude IDLE-specific code that does not run during unit tests.
(cherry picked from commit 95bebb7)

7 years agobpo-30939: Avoid Sphinx deprecation warning in docs build. (#2721) (#2722)
Ned Deily [Sat, 15 Jul 2017 20:56:13 +0000 (16:56 -0400)]
bpo-30939: Avoid Sphinx deprecation warning in docs build. (#2721) (#2722)

(cherry picked from commit 50f58163a69abe2f35e91044d1df165ee7bdbb42)

7 years agoDoc that 'sorted' args are keyword-only, fix 'reverse' default (#2709)
Łukasz Rogalski [Fri, 14 Jul 2017 19:57:19 +0000 (21:57 +0200)]
Doc that 'sorted' args are keyword-only, fix 'reverse' default (#2709)

backport

7 years ago[3.6] Update idlelib/NEWS.txt. (GH-2703) (#2704)
terryjreedy [Fri, 14 Jul 2017 04:29:05 +0000 (00:29 -0400)]
[3.6] Update idlelib/NEWS.txt. (GH-2703) (#2704)

(cherry picked from commit 0d0a32f)

7 years ago[3.6] bpo-30913: IDLE: Document tk vars, attributes, and methods for ConfigDialog...
terryjreedy [Fri, 14 Jul 2017 03:53:30 +0000 (23:53 -0400)]
[3.6] bpo-30913: IDLE: Document tk vars, attributes, and methods for ConfigDialog (GH-2697) (#2702)

The will help writing dialog improvements and splitting the class into multiple classes.
Original patch by Cheryl Sabella.
(cherry picked from commit 36329a4)

7 years ago[3.6] bpo-30870: IDLE: Add configdialog fontlist selection unittest (GH-2666) (#2701)
terryjreedy [Fri, 14 Jul 2017 02:24:55 +0000 (22:24 -0400)]
[3.6] bpo-30870: IDLE: Add configdialog fontlist selection unittest (GH-2666) (#2701)

Initial patch by Louie Lu.
(cherry picked from commit 9b622fb)

7 years agobpo-30731: python.manifest fix (#2328) (#2699)
Steve Dower [Thu, 13 Jul 2017 19:51:50 +0000 (21:51 +0200)]
bpo-30731: python.manifest fix (#2328) (#2699)

bpo-30731: python.manifest fix

7 years ago[3.6] bpo-30911: Add tests for bad boolean arguments for accelerated json (GH-2690...
Serhiy Storchaka [Thu, 13 Jul 2017 08:40:25 +0000 (11:40 +0300)]
[3.6] bpo-30911: Add tests for bad boolean arguments for accelerated json (GH-2690) (#2692)

encoder and decoder.
(cherry picked from commit d3aaa2f)

7 years ago[3.6] bpo-30899: Add unittests, 100% coverage, for IDLE's two ConfigParser subclasses...
terryjreedy [Wed, 12 Jul 2017 18:42:37 +0000 (14:42 -0400)]
[3.6] bpo-30899: Add unittests, 100% coverage, for IDLE's two ConfigParser subclasses. (GH-2662) (#2685)

Patch by Louie Lu.
(cherry picked from commit 50c9435)

7 years ago[3.6] bpo-30779: IDLE: fix changes.delete_section calls in configdialog (GH-2667...
terryjreedy [Tue, 11 Jul 2017 23:50:10 +0000 (19:50 -0400)]
[3.6] bpo-30779: IDLE: fix changes.delete_section calls in configdialog (GH-2667) (#2674)

Also improve test of config.ConfigChanges.delete_section.
Original patch by Cheryl Sabella.
(cherry picked from commit 6d13b22)

7 years ago[3.6] bpo-30881: IDLE: add docstrings to browser.py (GH-2638) (#2663)
terryjreedy [Tue, 11 Jul 2017 06:53:32 +0000 (02:53 -0400)]
[3.6] bpo-30881: IDLE: add docstrings to browser.py (GH-2638) (#2663)

Patch by Cheryl Sabella.
(cherry picked from commit ba35227)

7 years ago[3.6] bpo-30870: IDLE -- fix logic error in eae2537. (GH-2660) (#2661)
terryjreedy [Tue, 11 Jul 2017 06:16:41 +0000 (02:16 -0400)]
[3.6] bpo-30870: IDLE -- fix logic error in eae2537. (GH-2660) (#2661)

(cherry picked from commit 5b62b35)

7 years ago[3.6] bpo-22207: Add checks for possible integer overflows in unicodeobject.c. (GH...
Serhiy Storchaka [Tue, 11 Jul 2017 04:27:56 +0000 (07:27 +0300)]
[3.6] bpo-22207: Add checks for possible integer overflows in unicodeobject.c. (GH-2623) (#2658)

Based on patch by Victor Stinner.
(cherry picked from commit 64e461b)

7 years ago[3.6] bpo-30879: os.listdir() and os.scandir() now emit bytes names when (GH-2634...
Serhiy Storchaka [Tue, 11 Jul 2017 04:16:11 +0000 (07:16 +0300)]
[3.6] bpo-30879: os.listdir() and os.scandir() now emit bytes names when (GH-2634) (#2656)

called with bytes-like argument..
(cherry picked from commit 1180e5a51871fa53ca6892e83fd2e69dc2600447)

7 years agobpo-30891: Fix importlib _find_and_load() race condition (#2646) (#2651)
Victor Stinner [Mon, 10 Jul 2017 21:16:27 +0000 (23:16 +0200)]
bpo-30891: Fix importlib _find_and_load() race condition (#2646) (#2651)

* Rewrite importlib _get_module_lock(): it is now responsible to hold
  the imp lock directly.
* _find_and_load() now holds the module lock to check if name is in
  sys.modules to prevent a race condition
(cherry picked from commit 4f9a446f3fb42f800e73cd9414dd1eccb3ca4fa7)

7 years agobpo-30892: Fix _elementtree module initialization (#2647) (#2649)
Victor Stinner [Mon, 10 Jul 2017 21:12:37 +0000 (23:12 +0200)]
bpo-30892: Fix _elementtree module initialization (#2647) (#2649)

Handle getattr(copy, 'deepcopy') error in _elementtree module
initialization.
(cherry picked from commit b136f11f3a51f9282ae992bac68f170ca5563b55)

7 years ago[3.6] bpo-30851: IDLE: Remove unused tk variables in configdialog. (GH-2626) (#2648)
terryjreedy [Mon, 10 Jul 2017 19:11:45 +0000 (15:11 -0400)]
[3.6] bpo-30851: IDLE: Remove unused tk variables in configdialog. (GH-2626) (#2648)

One is a duplicate, one is set but cannot be altered by users.
Patch by Cheryl Sabella.
(cherry picked from commit aa8d0a2)

7 years agobpo-30886: Fix multiprocessing.Queue.join_thread() (#2642) (#2643)
Victor Stinner [Mon, 10 Jul 2017 11:43:20 +0000 (13:43 +0200)]
bpo-30886: Fix multiprocessing.Queue.join_thread() (#2642) (#2643)

multiprocessing.Queue.join_thread() now waits until the thread
completes, even if the thread was started by the same process which
created the queue.

Fix the following warning which occurs randomly when running
test_handle_called_with_mp_queue of test_logging.QueueListenerTest:

Warning -- threading_cleanup() failed to cleanup -1 threads after 4 sec (count: 0, dangling: 1)
(cherry picked from commit 3b69d911c57ef591ac0c0f47a66dbcad8337f33a)