]> granicus.if.org Git - python/log
python
7 years agobpo-26491 Defer DECREFs until enumobject is in a consistent state (#3747)
Raymond Hettinger [Mon, 25 Sep 2017 09:15:53 +0000 (02:15 -0700)]
bpo-26491 Defer DECREFs until enumobject is in a consistent state (#3747)

7 years agobpo-31170: Write unit test for Expat 2.2.4 UTF-8 bug (#3570)
Victor Stinner [Mon, 25 Sep 2017 08:27:34 +0000 (01:27 -0700)]
bpo-31170: Write unit test for Expat 2.2.4 UTF-8 bug (#3570)

Non-regression tests for the Expat 2.2.3 UTF-8 decoder bug.

7 years agobpo-27385: Clarify docstring for groupby() (#3738)
Raymond Hettinger [Mon, 25 Sep 2017 08:21:06 +0000 (01:21 -0700)]
bpo-27385: Clarify docstring for groupby() (#3738)

7 years agobpo-31311: Fix a SystemError and a crash in ctypes._CData.__setstate__(), in case...
Oren Milman [Mon, 25 Sep 2017 08:09:11 +0000 (11:09 +0300)]
bpo-31311: Fix a SystemError and a crash in ctypes._CData.__setstate__(), in case of a bad __dict__. (#3254)

7 years agobpo-23702: Update Descriptor-HOWTO to reflect the removal of unbound methods (#3739)
Raymond Hettinger [Mon, 25 Sep 2017 08:05:49 +0000 (01:05 -0700)]
bpo-23702: Update Descriptor-HOWTO to reflect the removal of unbound methods (#3739)

7 years agobpo-18558: Clarify glossary entry for "Iterable" (#3732)
Raymond Hettinger [Mon, 25 Sep 2017 07:52:06 +0000 (00:52 -0700)]
bpo-18558: Clarify glossary entry for "Iterable" (#3732)

7 years agoremove configure check for memmove (#3716)
Benjamin Peterson [Sun, 24 Sep 2017 19:08:40 +0000 (12:08 -0700)]
remove configure check for memmove (#3716)

Python requires C implementations provide memmove, so we shouldn't need to check for it. The only place using this configure check was expat, where we can simply always define HAVE_MEMMOVE.

7 years agobpo-30085: Improve documentation for operator (#1171)
Sanket Dasgupta [Sun, 24 Sep 2017 18:29:22 +0000 (23:59 +0530)]
bpo-30085: Improve documentation for operator (#1171)

The dunderless functions are preferred; dunder are retained for back compatilibity.
Patch by Sanket Dasgupta.

7 years agobpo-31566: Fix an assertion failure in _warnings.warn() in case of a bad __name__...
Oren Milman [Sun, 24 Sep 2017 18:28:42 +0000 (21:28 +0300)]
bpo-31566: Fix an assertion failure in _warnings.warn() in case of a bad __name__ global. (#3717)

7 years agobpo-31285: Fix an assertion failure and a SystemError in warnings.warn_explicit....
Oren Milman [Sun, 24 Sep 2017 18:27:12 +0000 (21:27 +0300)]
bpo-31285: Fix an assertion failure and a SystemError in warnings.warn_explicit. (#3219)

7 years agoUpdate Email library documentation example (GH-3720)
Henk-Jaap Wagenaar [Sun, 24 Sep 2017 16:12:53 +0000 (17:12 +0100)]
Update Email library documentation example (GH-3720)

A `"` was missing from an `<a href>` tag.

7 years agobpo-27319, bpo-31508: Document deprecation in Treeview.selection(). (#3667)
Serhiy Storchaka [Sun, 24 Sep 2017 11:34:09 +0000 (14:34 +0300)]
bpo-27319, bpo-31508: Document deprecation in Treeview.selection(). (#3667)

Defer removing old behavior to 3.8.
Document new feature of selection_set() and friends.

7 years agobpo-30346: An iterator produced by the itertools.groupby() iterator (#1569)
Serhiy Storchaka [Sun, 24 Sep 2017 10:36:11 +0000 (13:36 +0300)]
bpo-30346: An iterator produced by the itertools.groupby() iterator (#1569)

now becames exhausted after advancing the groupby iterator.

7 years agobpo-31311: Impove error reporting in case the first argument to PyCData_setstate...
Oren Milman [Sun, 24 Sep 2017 09:21:42 +0000 (12:21 +0300)]
bpo-31311: Impove error reporting in case the first argument to PyCData_setstate() isn't a dictionary. (#3255)

7 years agobpo-31505: Fix an assertion failure in json, in case _json.make_encoder() received...
Oren Milman [Sun, 24 Sep 2017 09:07:12 +0000 (12:07 +0300)]
bpo-31505: Fix an assertion failure in json, in case _json.make_encoder() received a bad encoder() argument. (#3643)

7 years agobpo-31564: Update typing documentation (GH-3696)
topper-123 [Sun, 24 Sep 2017 02:37:48 +0000 (04:37 +0200)]
bpo-31564: Update typing documentation (GH-3696)

Mention that ``NewType`` can derive from another ``NewType``.

7 years agobpo-25359: Add missed "goto error" after setting an exception. (#3712)
Serhiy Storchaka [Sat, 23 Sep 2017 23:49:58 +0000 (02:49 +0300)]
bpo-25359: Add missed "goto error" after setting an exception. (#3712)

7 years agobpo-31459: Rename IDLE's module browser from Class Browser to Module Browser. (#3704)
Cheryl Sabella [Sat, 23 Sep 2017 20:46:01 +0000 (16:46 -0400)]
bpo-31459: Rename IDLE's module browser from Class Browser to Module Browser. (#3704)

The original module-level class and method browser became a module
browser, with the addition of module-level functions, years ago.
Nested classes and functions were added yesterday.  For back-
compatibility, the virtual event <<open-class-browser>>, which
appears on the Keys tab of the Settings dialog, is not changed.
Patch by Cheryl Sabella.

7 years agobpo-31559: Remove test order dependence in idle_test.test_browser. (#3708)
Terry Jan Reedy [Sat, 23 Sep 2017 18:19:23 +0000 (14:19 -0400)]
bpo-31559: Remove test order dependence in idle_test.test_browser. (#3708)

Order dependence caused leak-test buildbots to fail when running test_idle repeatedly.

7 years agoDocs: correct hashlib.blake2 keyed hashing example (bpo-31560)
Dmitry Chestnykh [Sat, 23 Sep 2017 17:18:40 +0000 (19:18 +0200)]
Docs: correct hashlib.blake2 keyed hashing example (bpo-31560)

7 years agosqlite: delete some bsddb cargo-culted code to work around Python 2.3/2.4 bugs
Benjamin Peterson [Sat, 23 Sep 2017 06:25:28 +0000 (23:25 -0700)]
sqlite: delete some bsddb cargo-culted code to work around Python 2.3/2.4 bugs

7 years agobpo-1612262: IDLE: Class Browser shows nested functions, classes (#2573)
Cheryl Sabella [Fri, 22 Sep 2017 20:08:44 +0000 (16:08 -0400)]
bpo-1612262: IDLE: Class Browser shows nested functions, classes (#2573)

Original patches for code and tests by Guilherme Polo and
Cheryl Sabella, respectively.

7 years agobpo-17852: Maintain a list of BufferedWriter objects. Flush them on exit. (#3372)
Neil Schemenauer [Fri, 22 Sep 2017 17:17:30 +0000 (10:17 -0700)]
bpo-17852: Maintain a list of BufferedWriter objects.  Flush them on exit. (#3372)

* Maintain a list of BufferedWriter objects.  Flush them on exit.

In Python 3, the buffer and the underlying file object are separate
and so the order in which objects are finalized matters.  This is
unlike Python 2 where the file and buffer were a single object and
finalization was done for both at the same time.  In Python 3, if
the file is finalized and closed before the buffer then the data in
the buffer is lost.

This change adds a doubly linked list of open file buffers.  An atexit
hook ensures they are flushed before proceeding with interpreter
shutdown.  This is addition does not remove the need to properly close
files as there are other reasons why buffered data could get lost during
finalization.

Initial patch by Armin Rigo.

* Use weakref.WeakSet instead of WeakKeyDictionary.

* Simplify buffered double-linked list types.

* In _flush_all_writers(), suppress errors from flush().

* Remove NEWS entry, use blurb.

* Take more care when flushing file buffers from atexit.

The previous implementation was not careful enough to avoid
causing issues in multi-threaded cases.  Check for buf->ok
and buf->finalizing before actually doing the flush.  Also,
increase the refcnt to ensure the object does not disappear.

7 years agobpo-31423: Fix building the PDF documentation (GH-3693)
François Magimel [Fri, 22 Sep 2017 17:16:57 +0000 (19:16 +0200)]
bpo-31423: Fix building the PDF documentation (GH-3693)

Use prefixed macro names for the `authoraddress` function, add T2A to the font encoding in LaTeX sources to support Cyrillic characters in the PDF documentation, and replace the deprecated `font_size` config option with `pointsize`.

7 years agobpo-31389 Add an optional `header` argument to pdb.set_trace() (#3438)
Barry Warsaw [Fri, 22 Sep 2017 16:29:42 +0000 (12:29 -0400)]
bpo-31389 Add an optional `header` argument to pdb.set_trace() (#3438)

* Give pdb.set_trace() an optional `header` argument

* What's new.

* Give pdb.set_trace() an optional `header` argument

* What's new.

7 years agobpo-31443: Update included code. (#3697)
Stefan Krah [Fri, 22 Sep 2017 16:14:13 +0000 (18:14 +0200)]
bpo-31443: Update included code. (#3697)

7 years agobpo-31443: Formulate the type slot initialization rules in terms of C99. (#3688)
Stefan Krah [Fri, 22 Sep 2017 15:44:58 +0000 (17:44 +0200)]
bpo-31443: Formulate the type slot initialization rules in terms of C99. (#3688)

7 years agobpo-31410: Optimized calling wrapper and classmethod descriptors. (#3481)
Serhiy Storchaka [Thu, 21 Sep 2017 11:25:36 +0000 (14:25 +0300)]
bpo-31410: Optimized calling wrapper and classmethod descriptors. (#3481)

7 years agobpo-27541: Reprs of subclasses of some classes now contain actual type name. (#3631)
Serhiy Storchaka [Thu, 21 Sep 2017 11:24:13 +0000 (14:24 +0300)]
bpo-27541: Reprs of subclasses of some classes now contain actual type name. (#3631)

Affected classes are bytearray, array, deque, defaultdict, count and repeat.

7 years agobpo-31351: Set return code in ensurepip when pip fails (GH-3626)
Igor Filatov [Thu, 21 Sep 2017 10:07:45 +0000 (13:07 +0300)]
bpo-31351: Set return code in ensurepip when pip fails (GH-3626)

Previously ensurepip would always report success, even if the
pip installation failed.

7 years agobpo-31500: IDLE: Scale default fonts on HiDPI displays. (#3639)
Serhiy Storchaka [Thu, 21 Sep 2017 08:20:06 +0000 (11:20 +0300)]
bpo-31500: IDLE: Scale default fonts on HiDPI displays. (#3639)

7 years agobpo-31532: Fix memory corruption due to allocator mix (#3679)
nurelin [Thu, 21 Sep 2017 06:08:20 +0000 (08:08 +0200)]
bpo-31532: Fix memory corruption due to allocator mix (#3679)

Fix a memory corruption in getpath.c due to mixed memory allocators
between Py_GetPath() and Py_SetPath().

The fix use the Raw allocator to mimic the windows version.

This patch should be used from python3.6 to the current version

for more details, see the bug report and
  https://github.com/pyinstaller/pyinstaller/issues/2812

7 years agobpo-31536: Avoid wholesale rebuild after `make regen-all` (#3678)
Antoine Pitrou [Wed, 20 Sep 2017 21:57:56 +0000 (23:57 +0200)]
bpo-31536: Avoid wholesale rebuild after `make regen-all` (#3678)

* bpo-31536: Avoid wholesale rebuild after `make regen-all`

* Add NEWS

7 years agobpo-26510: make argparse subparsers required by default (#3027)
Anthony Sottile [Wed, 20 Sep 2017 21:35:27 +0000 (14:35 -0700)]
bpo-26510: make argparse subparsers required by default (#3027)

This fixes a regression from Python 2.  To get optional subparsers,
use the new parameter ``add_subparsers(required=False)``.

Patch by Anthony Sottile.

7 years agobpo-31533: fix broken link to OpenSSL docs (#3674)
Felipe [Wed, 20 Sep 2017 18:20:18 +0000 (20:20 +0200)]
bpo-31533: fix broken link to OpenSSL docs (#3674)

7 years agocloses bpo-31525: require sqlite3_prepare_v2 (#3666)
Benjamin Peterson [Wed, 20 Sep 2017 14:36:18 +0000 (07:36 -0700)]
closes bpo-31525: require sqlite3_prepare_v2 (#3666)

This is based on
https://github.com/ghaering/pysqlite/commit/40b349cadbd87c42f70fc92e5e1aee6d02564c6d#diff-0489411409cd2934730e88bf7767790,
though we can be a bit more aggressive about deleting code.

7 years agobpo-30486: Make cell_set_contents() symbol private (#3668)
Victor Stinner [Wed, 20 Sep 2017 13:54:13 +0000 (06:54 -0700)]
bpo-30486: Make cell_set_contents() symbol private (#3668)

Don't export the cell_set_contents() symbol in the C API.

7 years agobpo-31506: Improve the error message logic for object.__new__ and object.__init__...
Serhiy Storchaka [Wed, 20 Sep 2017 03:44:32 +0000 (06:44 +0300)]
bpo-31506: Improve the error message logic for object.__new__ and object.__init__. (GH-3650)

7 years agobpo-31500: Removed fixed size of IDLE config dialog. (#3664)
Terry Jan Reedy [Tue, 19 Sep 2017 23:01:45 +0000 (19:01 -0400)]
bpo-31500: Removed fixed size of IDLE config dialog. (#3664)

This one line of Serhiy Storchacka's bpo-31500 patch for is needed for other issues.

7 years agoFix build issues in Doc/make.bat (#3658)
Steve Dower [Tue, 19 Sep 2017 19:31:28 +0000 (12:31 -0700)]
Fix build issues in Doc/make.bat (#3658)

7 years agobpo-31507 Add docstring to parseaddr function in email.utils.parseaddr (gh-3647)
Rohit Balasubramanian [Tue, 19 Sep 2017 19:10:49 +0000 (00:40 +0530)]
bpo-31507 Add docstring to parseaddr function in email.utils.parseaddr (gh-3647)

7 years agobpo-31479: Always reset the signal alarm in tests (#3588)
Victor Stinner [Tue, 19 Sep 2017 16:36:54 +0000 (09:36 -0700)]
bpo-31479: Always reset the signal alarm in tests (#3588)

* bpo-31479: Always reset the signal alarm in tests

Use "try: ... finally: signal.signal(0)" pattern to make sure that
tests don't "leak" a pending fatal signal alarm.

* Move two more alarm() calls into the try block

Fix also typo: replace signal.signal(0) with signal.alarm(0)

* Move another signal.alarm() into the try block

7 years agopythoninfo: ignore OSError(ENOSYS) on getrandom() (#3655)
Victor Stinner [Tue, 19 Sep 2017 14:37:24 +0000 (07:37 -0700)]
pythoninfo: ignore OSError(ENOSYS) on getrandom() (#3655)

7 years agobpo-31293: Fix crashes in truediv and mul of a timedelta by a float with a bad as_int...
Oren Milman [Tue, 19 Sep 2017 12:58:11 +0000 (15:58 +0300)]
bpo-31293: Fix crashes in truediv and mul of a timedelta by a float with a bad as_integer_ratio() method. (#3227)

7 years agobpo-31315: Fix an assertion failure in imp.create_dynamic(), when spec.name is not...
Oren Milman [Tue, 19 Sep 2017 11:39:47 +0000 (14:39 +0300)]
bpo-31315: Fix an assertion failure in imp.create_dynamic(), when spec.name is not a string. (#3257)

7 years agobpo-31492: Fix assertion failures in case of a module with a bad __name__ attribute...
Oren Milman [Tue, 19 Sep 2017 11:23:01 +0000 (14:23 +0300)]
bpo-31492: Fix assertion failures in case of a module with a bad __name__ attribute. (#3620)

7 years agopost 3.7.0a1 development
Ned Deily [Tue, 19 Sep 2017 07:12:46 +0000 (03:12 -0400)]
post 3.7.0a1 development

7 years agoMerge tag 'v3.7.0a1'
Ned Deily [Tue, 19 Sep 2017 07:09:31 +0000 (03:09 -0400)]
Merge tag 'v3.7.0a1'

7 years agoBump to 3.6.0a1 v3.7.0a1
Ned Deily [Tue, 19 Sep 2017 05:09:03 +0000 (01:09 -0400)]
Bump to 3.6.0a1

7 years agoUpdate PyDoc topics and NEWS blurbs for 3.7.0a1
Ned Deily [Tue, 19 Sep 2017 05:01:36 +0000 (01:01 -0400)]
Update PyDoc topics and NEWS blurbs for 3.7.0a1

7 years agoUpdate Mac installer Welcome and ReadMe files for 3.7.0a1
Ned Deily [Tue, 19 Sep 2017 02:22:00 +0000 (22:22 -0400)]
Update Mac installer Welcome and ReadMe files for 3.7.0a1

7 years agoTrivial cleanups following bpo-31370 (#3649)
Antoine Pitrou [Mon, 18 Sep 2017 21:50:44 +0000 (23:50 +0200)]
Trivial cleanups following bpo-31370 (#3649)

* Trivial cleanups following bpo-31370

* Also cleanup the "importlib._bootstrap_external" module

7 years agoRestore dummy_threading and _dummy_thread, but deprecate them (bpo-31370) (#3648)
Antoine Pitrou [Mon, 18 Sep 2017 20:04:20 +0000 (22:04 +0200)]
Restore dummy_threading and _dummy_thread, but deprecate them (bpo-31370) (#3648)

7 years agoos.test_utime_current(): tolerate 50 ms delta (#3646)
Victor Stinner [Mon, 18 Sep 2017 15:49:45 +0000 (08:49 -0700)]
os.test_utime_current(): tolerate 50 ms delta (#3646)

7 years agobpo-31499, xml.etree: Fix xmlparser_gc_clear() crash (#3641)
Victor Stinner [Mon, 18 Sep 2017 12:29:37 +0000 (05:29 -0700)]
bpo-31499, xml.etree: Fix xmlparser_gc_clear() crash (#3641)

* bpo-31499, xml.etree: Fix xmlparser_gc_clear() crash

xml.etree: xmlparser_gc_clear() now sets self.parser to NULL to prevent a
crash in xmlparser_dealloc() if xmlparser_gc_clear() was called previously
by the garbage collector, because the parser was part of a reference cycle.

Co-Authored-By: Serhiy Storchaka <storchaka@gmail.com>
7 years agobpo-31501: Operator precedence description for arithmetic operators (#3633)
svelankar [Mon, 18 Sep 2017 00:56:16 +0000 (20:56 -0400)]
bpo-31501: Operator precedence  description  for arithmetic operators (#3633)

7 years agobpo-30928: Update idlelib/NEWS.txt to 2017 Sep 17. (#3635)
Terry Jan Reedy [Mon, 18 Sep 2017 00:14:21 +0000 (20:14 -0400)]
bpo-30928: Update idlelib/NEWS.txt to 2017 Sep 17. (#3635)

7 years agobpo-31502: IDLE Configdialog again deletes custom themes and keysets. (#3634)
Terry Jan Reedy [Mon, 18 Sep 2017 00:13:25 +0000 (20:13 -0400)]
bpo-31502: IDLE Configdialog again deletes custom themes and keysets. (#3634)

This reverses a never-released regression resulting from bpo-31287.

7 years agobpo-31497: Add private helper _PyType_Name(). (#3630)
Serhiy Storchaka [Sun, 17 Sep 2017 18:11:04 +0000 (21:11 +0300)]
bpo-31497: Add private helper _PyType_Name(). (#3630)

This function returns the last component of tp_name after a dot.
Returns tp_name itself if it doesn't contain a dot.

7 years agobpo-31482: Missing bytes support for random.seed() version 1 (#3614)
Raymond Hettinger [Sun, 17 Sep 2017 16:04:30 +0000 (09:04 -0700)]
bpo-31482:  Missing bytes support for random.seed() version 1 (#3614)

bpo-31482: Missing bytes support for random.seed() version 1 #3614

7 years agobpo-31487: Update F-strings doc example (GH-3627)
Mariatta [Sun, 17 Sep 2017 14:43:31 +0000 (07:43 -0700)]
bpo-31487: Update F-strings doc example (GH-3627)

Shorten the comment to: "using integer format specifier"

7 years agobpo-31490: Fix an assertion failure in ctypes in case an _anonymous_ attr is defined...
Oren Milman [Sun, 17 Sep 2017 10:45:38 +0000 (13:45 +0300)]
bpo-31490: Fix an assertion failure in ctypes in case an _anonymous_ attr is defined only outside _fields_. (#3615)

7 years agobpo-31493: Fix code context update and font update timers. (#3622)
Terry Jan Reedy [Sun, 17 Sep 2017 04:56:56 +0000 (00:56 -0400)]
bpo-31493: Fix code context update and font update timers. (#3622)

Canceling timers prevents a warning message when test_idle completes.
(This is the minimum fix needed before upcoming releases.)

7 years agoImprove f-strings documentation (GH-3604)
Mariatta [Sat, 16 Sep 2017 18:46:43 +0000 (11:46 -0700)]
Improve f-strings documentation (GH-3604)

Provide additional examples of using format specifiers in f-strings
Added examples for using integer and date format specifiers.

7 years agobpo-31458: Clarify that Changelog is built from Misc/NEWS.d directory (GH-3617)
Mariatta [Sat, 16 Sep 2017 17:43:30 +0000 (10:43 -0700)]
bpo-31458: Clarify that Changelog is built from Misc/NEWS.d directory (GH-3617)

7 years agobpo-31488: IDLE - update former extensions when options change. (#3612)
Terry Jan Reedy [Sat, 16 Sep 2017 05:42:28 +0000 (01:42 -0400)]
bpo-31488: IDLE - update former extensions when options change. (#3612)

When apply changes, call .reload on each class with non-key options.
Change ParenMatch so that updates affect current instances.

7 years agobpo-28411: Support other mappings in PyInterpreterState.modules. (#3593)
Eric Snow [Fri, 15 Sep 2017 22:35:20 +0000 (16:35 -0600)]
bpo-28411: Support other mappings in PyInterpreterState.modules. (#3593)

The concrete PyDict_* API is used to interact with PyInterpreterState.modules in a number of places. This isn't compatible with all dict subclasses, nor with other Mapping implementations. This patch switches the concrete API usage to the corresponding abstract API calls.

We also add a PyImport_GetModule() function (and some other helpers) to reduce a bunch of code duplication.

7 years agobpo-31431: SSLContext.check_hostname auto-sets CERT_REQUIRED (#3531)
Christian Heimes [Fri, 15 Sep 2017 18:29:57 +0000 (20:29 +0200)]
bpo-31431: SSLContext.check_hostname auto-sets CERT_REQUIRED (#3531)

Signed-off-by: Christian Heimes <christian@python.org>
7 years agobpo-31346: Use PROTOCOL_TLS_CLIENT/SERVER (#3058)
Christian Heimes [Fri, 15 Sep 2017 18:27:30 +0000 (20:27 +0200)]
bpo-31346: Use PROTOCOL_TLS_CLIENT/SERVER (#3058)

Replaces PROTOCOL_TLSv* and PROTOCOL_SSLv23 with PROTOCOL_TLS_CLIENT and
PROTOCOL_TLS_SERVER.

Signed-off-by: Christian Heimes <christian@python.org>
7 years agobpo-31386: Custom wrap_bio and wrap_socket type (#3426)
Christian Heimes [Fri, 15 Sep 2017 18:26:05 +0000 (20:26 +0200)]
bpo-31386: Custom wrap_bio and wrap_socket type (#3426)

SSLSocket.wrap_bio() and SSLSocket.wrap_socket() hard-code SSLObject and
SSLSocket as return types. In the light of future deprecation of
ssl.wrap_socket() module function and direct instantiation of SSLSocket,
it is desirable to make the return type of SSLSocket.wrap_bio() and
SSLSocket.wrap_socket() customizable.

Signed-off-by: Christian Heimes <christian@python.org>
7 years ago bpo-314777: IDLE - improve rstrip entry in doc (#3602)
Terry Jan Reedy [Fri, 15 Sep 2017 17:05:28 +0000 (13:05 -0400)]
 bpo-314777: IDLE - improve rstrip entry in doc (#3602)

'Strip trailing whitespace' is not limited to spaces.  Wording caters to beginners who
do know know the meaning of 'whitespace'.  Multiline string literals are not skipped.

* News blurb.

7 years agoFix description in Python 3.7 What's New (#3603)
Paul Romano [Fri, 15 Sep 2017 17:00:57 +0000 (12:00 -0500)]
Fix description in Python 3.7 What's New (#3603)

7 years agobpo-29916: Include PyGetSetDef in C API extension documentation. (#831)
Michael Seifert [Fri, 15 Sep 2017 16:25:27 +0000 (18:25 +0200)]
bpo-29916: Include PyGetSetDef in C API extension documentation. (#831)

7 years agobpo-31234: test_multiprocessing: wait 30 seconds (#3599)
Victor Stinner [Fri, 15 Sep 2017 13:55:31 +0000 (06:55 -0700)]
bpo-31234: test_multiprocessing: wait 30 seconds (#3599)

Give 30 seconds to join_process(), instead of 5 or 10 seconds, to
wait until the process completes.

7 years agobpo-31234: Join timers in test_threading (#3598)
Victor Stinner [Fri, 15 Sep 2017 12:37:42 +0000 (05:37 -0700)]
bpo-31234: Join timers in test_threading (#3598)

Call the .join() method of threading.Timer timers to prevent the
"threading_cleanup() failed to cleanup 1 threads" warning.

7 years agobpo-31464: asdl_c.py no longer emits trailing spaces in Python-ast.h. (#3568)
Serhiy Storchaka [Fri, 15 Sep 2017 03:28:22 +0000 (06:28 +0300)]
bpo-31464: asdl_c.py no longer emits trailing spaces in Python-ast.h. (#3568)

7 years agobpo-31338 (#3374)
Barry Warsaw [Fri, 15 Sep 2017 01:13:16 +0000 (18:13 -0700)]
bpo-31338 (#3374)

* Add Py_UNREACHABLE() as an alias to abort().
* Use Py_UNREACHABLE() instead of assert(0)
* Convert more unreachable code to use Py_UNREACHABLE()
* Document Py_UNREACHABLE() and a few other macros.

7 years agobpo-31480: IDLE - fix tests to pass with zzdummy extension disabled. (#3590)
Terry Jan Reedy [Thu, 14 Sep 2017 22:51:51 +0000 (18:51 -0400)]
bpo-31480: IDLE - fix tests to pass with zzdummy extension disabled. (#3590)

Enabled by default was a temporary expedient.  The fix is to add a user override to enable.

7 years agobpo-31128: Allow pydoc to bind to arbitrary hostnames (#3011)
Feanil Patel [Thu, 14 Sep 2017 21:54:09 +0000 (17:54 -0400)]
bpo-31128: Allow pydoc to bind to arbitrary hostnames (#3011)

New -n flag allow overriding localhost with custom value,
for example to run from containers.

7 years agobpo-30860: Fix deadcode in obmalloc.c (#3499)
Victor Stinner [Thu, 14 Sep 2017 21:48:37 +0000 (14:48 -0700)]
bpo-30860: Fix deadcode in obmalloc.c (#3499)

Fix Coverity CID 1417587: _PyMem_Initialize() contains code which is
never executed.

Replace the runtime check with a build assertion.

7 years agobpo-31234: Add support.join_thread() helper (#3587)
Victor Stinner [Thu, 14 Sep 2017 21:40:56 +0000 (14:40 -0700)]
bpo-31234: Add support.join_thread() helper (#3587)

join_thread() joins a thread but raises an AssertionError if the
thread is still alive after timeout seconds.

7 years agobpo-31234: Join threads in test_queue (#3586)
Victor Stinner [Thu, 14 Sep 2017 21:04:56 +0000 (14:04 -0700)]
bpo-31234: Join threads in test_queue (#3586)

Call thread.join() to prevent the "dangling thread" warning.

7 years agobpo-31234: Add test.support.wait_threads_exit() (#3578)
Victor Stinner [Thu, 14 Sep 2017 20:07:24 +0000 (13:07 -0700)]
bpo-31234: Add test.support.wait_threads_exit() (#3578)

Use _thread.count() to wait until threads exit. The new context
manager prevents the "dangling thread" warning.

7 years agobpo-31234: Join threads in test_threading (#3579)
Victor Stinner [Thu, 14 Sep 2017 20:05:21 +0000 (13:05 -0700)]
bpo-31234: Join threads in test_threading (#3579)

Call thread.join() to prevent the "dangling thread" warning.

7 years agobpo-31455: Fix an assertion failure in ElementTree.XMLParser(). (#3545)
scoder [Thu, 14 Sep 2017 20:00:03 +0000 (22:00 +0200)]
bpo-31455: Fix an assertion failure in ElementTree.XMLParser(). (#3545)

* Avoid calling "PyObject_GetAttrString()" (and potentially executing user code) with a live exception set.

* Ignore only AttributeError on attribute lookups in ElementTree.XMLParser() and propagate all other exceptions.

7 years agobpo-31471: Fix assertion failure in subprocess.Popen() on Windows, in case env has...
Oren Milman [Thu, 14 Sep 2017 19:30:28 +0000 (22:30 +0300)]
bpo-31471: Fix assertion failure in subprocess.Popen() on Windows, in case env has a bad keys() method. (#3580)

7 years agobpo-28556: typing.get_type_hints: better globalns for classes and modules (#3582)
Łukasz Langa [Thu, 14 Sep 2017 18:33:00 +0000 (14:33 -0400)]
bpo-28556: typing.get_type_hints: better globalns for classes and modules (#3582)

This makes the default behavior (without specifying `globalns` manually) more
predictable for users, finds the right globalns automatically.

Implementation for classes assumes has a `__module__` attribute and that module
is present in `sys.modules`.  It does this recursively for all bases in the
MRO.  For modules, the implementation just uses their `__dict__` directly.

This is backwards compatible, will just raise fewer exceptions in naive user
code.

Originally implemented and reviewed at https://github.com/python/typing/pull/470.

7 years agobpo-28411: Isolate PyInterpreterState.modules (#3575)
Eric Snow [Thu, 14 Sep 2017 18:18:12 +0000 (12:18 -0600)]
bpo-28411: Isolate PyInterpreterState.modules (#3575)

A bunch of code currently uses PyInterpreterState.modules directly instead of PyImport_GetModuleDict(). This complicates efforts to make changes relative to sys.modules. This patch switches to using PyImport_GetModuleDict() uniformly. Also, a number of related uses of sys.modules are updated for uniformity for the same reason.

Note that this code was already reviewed and merged as part of #1638. I reverted that and am now splitting it up into more focused parts.

7 years agobpo-31234: Join threads in test_hashlib (#3573)
Victor Stinner [Thu, 14 Sep 2017 15:43:22 +0000 (08:43 -0700)]
bpo-31234: Join threads in test_hashlib (#3573)

* bpo-31234: Join threads in test_hashlib

Use thread.join() to wait until the parallel hash tasks complete
rather than using events. Calling thread.join() prevent "dangling
thread" warnings.

* test_hashlib: minor PEP 8 coding style fixes

7 years agobpo-31234: Join threads in tests (#3572)
Victor Stinner [Thu, 14 Sep 2017 15:43:04 +0000 (08:43 -0700)]
bpo-31234: Join threads in tests (#3572)

Call thread.join() on threads to prevent the "dangling threads"
warning.

7 years agobpo-31457: Allow for nested LoggerAdapter objects (#3551)
Łukasz Langa [Thu, 14 Sep 2017 15:34:47 +0000 (11:34 -0400)]
bpo-31457: Allow for nested LoggerAdapter objects (#3551)

Some of the proxied methods use internal Logger state which isn't proxied,
causing failures if an adapter is applied to another adapter.

This commit fixes the issue, adds a new test for the use case.

7 years ago_ssl_: Fix compiler warning (#3559)
Victor Stinner [Thu, 14 Sep 2017 08:10:30 +0000 (01:10 -0700)]
_ssl_: Fix compiler warning (#3559)

Cast Py_buffer.len (Py_ssize_t, signed) to size_t (unsigned) to
prevent the following warning:

Modules/_ssl.c:3089:21: warning: comparison between signed and
unsigned integer expressions [-Wsign-compare]

7 years agobpo-30860: Fix a refleak. (#3567)
Eric Snow [Thu, 14 Sep 2017 07:35:58 +0000 (00:35 -0700)]
bpo-30860: Fix a refleak. (#3567)

Resolves bpo-31420.

(This was accidentally reverted when in #3565.)

7 years agobpo-31404: Revert "remove modules from Py_InterpreterState (#1638)" (#3565)
Eric Snow [Thu, 14 Sep 2017 06:46:04 +0000 (23:46 -0700)]
bpo-31404: Revert "remove modules from Py_InterpreterState (#1638)" (#3565)

PR #1638, for bpo-28411, causes problems in some (very) edge cases. Until that gets sorted out, we're reverting the merge. PR #3506, a fix on top of #1638, is also getting reverted.

7 years agobpo-31462: Remove trailing whitespaces. (#3564)
Serhiy Storchaka [Thu, 14 Sep 2017 06:38:36 +0000 (09:38 +0300)]
bpo-31462: Remove trailing whitespaces. (#3564)

7 years agoImprove code examples in hashlib cookie signing (GH-3562)
sww [Thu, 14 Sep 2017 06:24:36 +0000 (23:24 -0700)]
Improve code examples in hashlib cookie signing (GH-3562)

The `blake2b` function does not take the `data` keyword argument.
The hex digest returned by sign was a string, whereas compare_digest expects bytes-like objects.
Typo fix: compare_digesty -> compare_digest

7 years agobpo-30246: fix several error messages which only mention bytes in struct (#1421)
Xiang Zhang [Thu, 14 Sep 2017 02:33:26 +0000 (10:33 +0800)]
bpo-30246: fix several error messages which only mention bytes in struct (#1421)

7 years agobpo-31458: Update Misc/NEWS link in What's New page (GH-3555)
Mariatta [Wed, 13 Sep 2017 23:47:33 +0000 (16:47 -0700)]
bpo-31458: Update Misc/NEWS link in What's New page (GH-3555)

Update the link from Misc/NEWS to Misc/NEWS.d

7 years agobpo-31234: Try to fix lock_tests warning (#3557)
Victor Stinner [Wed, 13 Sep 2017 23:41:08 +0000 (16:41 -0700)]
bpo-31234: Try to fix lock_tests warning (#3557)

Try to fix the "Warning -- threading_cleanup() failed to cleanup 1
threads" warning in test.lock_tests: wait a little bit longer to give
time to the threads to complete.

Warning seen on test_thread and test_importlib.

7 years agobpo-28556: Minor updates to typing module (#3550)
Ivan Levkivskyi [Wed, 13 Sep 2017 23:25:15 +0000 (01:25 +0200)]
bpo-28556: Minor updates to typing module (#3550)

* Copy changes to typing from upstream repo
* Add NEWS entry