]> granicus.if.org Git - python/log
python
7 years agobpo-31523: Reliability improvements to the Windows build files (#3900)
Steve Dower [Thu, 5 Oct 2017 20:35:36 +0000 (13:35 -0700)]
bpo-31523: Reliability improvements to the Windows build files (#3900)

7 years agoPEP 553 built-in breakpoint() function (bpo-31353) (#3355)
Barry Warsaw [Thu, 5 Oct 2017 16:11:18 +0000 (12:11 -0400)]
PEP 553 built-in breakpoint() function (bpo-31353) (#3355)

Implement PEP 553, built-in breakpoint() with support from sys.breakpointhook(), along with documentation and tests.  Closes bpo-31353

7 years agobpo-31556: asyncio.wait_for can cancel futures faster with timeout <= 0 (#3703)
Victor K [Thu, 5 Oct 2017 16:04:39 +0000 (19:04 +0300)]
bpo-31556: asyncio.wait_for can cancel futures faster with timeout <= 0 (#3703)

7 years agobpo-31178: Mock os.waitpid() in test_subprocess (#3896)
Victor Stinner [Thu, 5 Oct 2017 13:32:53 +0000 (06:32 -0700)]
bpo-31178: Mock os.waitpid() in test_subprocess (#3896)

Fix test_exception_errpipe_bad_data() and
test_exception_errpipe_normal() of test_subprocess: mock os.waitpid()
to avoid calling the real os.waitpid(0, 0) which is an unexpected
side effect of the test.

7 years agobpo-31671: re: Convert RegexFlag to int before compile (GH-3862)
INADA Naoki [Thu, 5 Oct 2017 08:19:26 +0000 (17:19 +0900)]
bpo-31671: re: Convert RegexFlag to int before compile (GH-3862)

sre_compile does bit test (e.g. `flags & SRE_FLAG_IGNORECASE`) in loop.
`IntFlag.__and__` and `IntFlag.__new__` made it slower.

So this commit convert it to normal int before passing flags to `sre_compile()`.

7 years agocloses bpo-27494: Fix 2to3 handling of trailing comma after a generator expression...
Jakub Stasiak [Thu, 5 Oct 2017 07:10:09 +0000 (09:10 +0200)]
closes bpo-27494: Fix 2to3 handling of trailing comma after a generator expression (#3771)

7 years agoremove tabs from getcompiler.c (#3892)
Benjamin Peterson [Thu, 5 Oct 2017 07:09:01 +0000 (00:09 -0700)]
remove tabs from getcompiler.c (#3892)

7 years agocloses bpo-31596: Add an interface for pthread_getcpuclockid(3) (#3756)
pdox [Thu, 5 Oct 2017 07:01:56 +0000 (00:01 -0700)]
closes bpo-31596: Add an interface for pthread_getcpuclockid(3) (#3756)

7 years agoAdd self and idlelib to CODEOWNERS file. (#3889)
Terry Jan Reedy [Thu, 5 Oct 2017 02:15:11 +0000 (22:15 -0400)]
Add self and idlelib to CODEOWNERS file. (#3889)

Followed format of other entries.

7 years agobpo-30872: Update the curses docs to Python 3. (#2620)
Serhiy Storchaka [Wed, 4 Oct 2017 19:44:13 +0000 (22:44 +0300)]
bpo-30872: Update the curses docs to Python 3. (#2620)

7 years agoRefactor multiplication and division of timedelta and float. (#3656)
Serhiy Storchaka [Wed, 4 Oct 2017 17:30:09 +0000 (20:30 +0300)]
Refactor multiplication and division of timedelta and float. (#3656)

Implementations of these operations are virtually identical.

7 years agobpo-31667: Fix gettext related links. (#3860)
Serhiy Storchaka [Wed, 4 Oct 2017 17:28:20 +0000 (20:28 +0300)]
bpo-31667: Fix gettext related links. (#3860)

* Fix incorrect links.
* Remove redundant links.
* Add signatures and index entries for gettext related
functions in the locale module.

7 years agobpo-30404: The -u option now makes the stdout and stderr streams totally unbuffered...
Serhiy Storchaka [Wed, 4 Oct 2017 17:25:40 +0000 (20:25 +0300)]
bpo-30404: The -u option now makes the stdout and stderr streams totally unbuffered. (#1667)

7 years agobpo-30397: Add re.Pattern and re.Match. (#1646)
Serhiy Storchaka [Wed, 4 Oct 2017 17:09:49 +0000 (20:09 +0300)]
bpo-30397: Add re.Pattern and re.Match. (#1646)

7 years agobpo-31683: Py_FatalError() now supports long error messages (#3878)
Victor Stinner [Wed, 4 Oct 2017 16:50:12 +0000 (09:50 -0700)]
bpo-31683: Py_FatalError() now supports long error messages (#3878)

On Windows, Py_FatalError() now limits the size to 256 bytes of the
buffer used to call OutputDebugStringW(). Previously, the size
depended on the length of the error message.

7 years agobpo-31677: email: Remove re.IGNORECASE flag (GH-3868)
INADA Naoki [Wed, 4 Oct 2017 03:47:38 +0000 (12:47 +0900)]
bpo-31677: email: Remove re.IGNORECASE flag (GH-3868)

While there is not real bug in this case, using re.IGNORECASE without re.ASCII
leads unexpected behavior.
Instead of adding re.ASCII, this commit removes re.IGNORECASE flag because
it's easier and simpler.

This commit removes dead copy of the pattern in email.util module too.
While the pattern is same, it is compiled separately because it had different flags.

7 years agoRemove retired and security branches from active docs (#3879)
Ned Deily [Wed, 4 Oct 2017 02:56:19 +0000 (22:56 -0400)]
Remove retired and security branches from active docs (#3879)

7 years agobpo-31675: Fix memory leaks in Tkinter's methods splitlist() and split() (#3866)
Serhiy Storchaka [Tue, 3 Oct 2017 19:39:55 +0000 (22:39 +0300)]
bpo-31675: Fix memory leaks in Tkinter's methods splitlist() and split() (#3866)

when pass a string larger than 2 GiB.

Decrease memory requirements for Tcl's bigmem tests.

7 years agobpo-31673: Fixed typo in the name of Tkinter's method adderrorinfo(). (#3864)
Serhiy Storchaka [Tue, 3 Oct 2017 18:37:22 +0000 (21:37 +0300)]
bpo-31673: Fixed typo in the name of Tkinter's method adderrorinfo(). (#3864)

7 years agobpo-31657: Add test coverage for the __debug__ case (GH-3450)
diana [Tue, 3 Oct 2017 16:46:56 +0000 (10:46 -0600)]
bpo-31657: Add test coverage for the __debug__ case (GH-3450)

Update the compile tests for optimization levels to also check that
__debug__ blocks are included or excluded based on the optimization
level.
Patch by Diana Clarke.

7 years agobpo-31619: Fixed a ValueError when convert a string with large number of underscores...
Serhiy Storchaka [Tue, 3 Oct 2017 11:13:44 +0000 (14:13 +0300)]
bpo-31619: Fixed a ValueError when convert a string with large number of underscores (#3827)

to integer with binary base.

7 years agobpo-31415: Add `-X importtime` option (GH-3490)
INADA Naoki [Tue, 3 Oct 2017 10:46:34 +0000 (19:46 +0900)]
bpo-31415: Add `-X importtime` option (GH-3490)

It shows show import time of each module.
It's useful for optimizing startup time.

Typical usage: python -X importtime -c 'import requests'

7 years agobpo-31540: Allow passing multiprocessing context to ProcessPoolExecutor (#3682)
Thomas Moreau [Tue, 3 Oct 2017 09:53:17 +0000 (11:53 +0200)]
bpo-31540: Allow passing multiprocessing context to ProcessPoolExecutor (#3682)

7 years agobpo-31662: Fix typos in uploadrelease.bat script
Anselm Kruis [Mon, 2 Oct 2017 15:53:55 +0000 (17:53 +0200)]
bpo-31662: Fix typos in uploadrelease.bat script

7 years agobpo-31510: Fix multiprocessing test_many_processes() on macOS (#3857)
Victor Stinner [Mon, 2 Oct 2017 15:27:34 +0000 (08:27 -0700)]
bpo-31510: Fix multiprocessing test_many_processes() on macOS (#3857)

On macOS, a process can exit with -SIGKILL if it is killed "early"
with SIGTERM.

7 years agobpo-11063: Fix _uuid module on macOS (#3855)
Victor Stinner [Mon, 2 Oct 2017 14:57:59 +0000 (07:57 -0700)]
bpo-11063: Fix _uuid module on macOS (#3855)

On macOS, use uuid_generate_time() instead of
uuid_generate_time_safe() of libuuid, since uuid_generate_time_safe()
is not available.

7 years agobpo-31516: current_thread() should not return a dummy thread at shutdown (#3673)
Antoine Pitrou [Mon, 2 Oct 2017 14:42:15 +0000 (16:42 +0200)]
bpo-31516: current_thread() should not return a dummy thread at shutdown (#3673)

bpo-31516: current_thread() should not return a dummy thread at shutdown

7 years agobpo-31158: Fix nondeterministic read in test_pty (#3808)
Cornelius Diekmann [Mon, 2 Oct 2017 09:39:55 +0000 (11:39 +0200)]
bpo-31158: Fix nondeterministic read in test_pty (#3808)

* bpo-31158: Fix nondeterministic read in test_pty

* Reuse existing readline implementation from io.

Thx to @pitrou

* Updated comment

Ideally, this commit is fixuped into the previous commit. Since there is
already a comment on github, I won't rebase.

7 years agobpo-31659: Use simple slicing to format PEM cert (GH-3849)
INADA Naoki [Mon, 2 Oct 2017 07:33:42 +0000 (16:33 +0900)]
bpo-31659: Use simple slicing to format PEM cert (GH-3849)

DER_cert_to_PEM_cert() used textwrap.fill() to format PEM.
But it's library to wrap lines on word boundary, while PEM is
base64 encoded string.

Additionally, importing textwrap is little slow.

7 years agoremove comment about long-gone SGI modules (#3850)
Benjamin Peterson [Mon, 2 Oct 2017 06:37:57 +0000 (23:37 -0700)]
remove comment about long-gone SGI modules (#3850)

7 years agoIDLE: make filetypes a tuple constant. (#3847)
Terry Jan Reedy [Sun, 1 Oct 2017 23:01:27 +0000 (19:01 -0400)]
IDLE: make filetypes a tuple constant. (#3847)

Save a bit of code, plus non-tuples get converted anyway to tuples by tkinter for the tk call.

7 years agobpo-31336: Speed up type creation. (#3279)
scoder [Sun, 1 Oct 2017 08:37:47 +0000 (10:37 +0200)]
bpo-31336: Speed up type creation. (#3279)

Speed up class creation by 10-20% by reducing the overhead in the
necessary special method lookups.

7 years agobpo-31460: Simplify the API of IDLE's Module Browser. (#3842)
Terry Jan Reedy [Sat, 30 Sep 2017 23:54:28 +0000 (19:54 -0400)]
bpo-31460: Simplify the API of IDLE's Module Browser. (#3842)

Passing a widget instead of an flist with a root widget opens the option of
creating a browser frame that is only part of a window. Passing a full file
name instead of pieces assumed to come from a .py file opens the possibility
of browsing python files that do not end in .py.

7 years agobpo-31649: Make IDLE's _htest, _utest parameters keyword-only. (#3839)
Terry Jan Reedy [Sat, 30 Sep 2017 21:37:53 +0000 (17:37 -0400)]
bpo-31649: Make IDLE's _htest, _utest parameters keyword-only. (#3839)

7 years agobpo-31592: Fix an assertion failure in Python parser in case of a bad unicodedata...
Oren Milman [Sat, 30 Sep 2017 17:16:24 +0000 (20:16 +0300)]
bpo-31592: Fix an assertion failure in Python parser in case of a bad unicodedata.normalize(). (#3767)

7 years agobpo-31627: Make test_mailbox be lenient to empty hostname. (#3821)
Serhiy Storchaka [Sat, 30 Sep 2017 14:10:57 +0000 (17:10 +0300)]
bpo-31627: Make test_mailbox be lenient to empty hostname. (#3821)

7 years agobpo-31648: Improve ElementPath (#3835)
scoder [Sat, 30 Sep 2017 13:35:21 +0000 (15:35 +0200)]
bpo-31648: Improve ElementPath (#3835)

* Allow whitespace inside of ElementPath predicates.
* Add ElementPath predicate support for text comparison of the current node, like "[.='text']".

7 years agobpo-31581: Reduce the number of imports for functools (GH-3757)
INADA Naoki [Sat, 30 Sep 2017 07:13:02 +0000 (16:13 +0900)]
bpo-31581: Reduce the number of imports for functools (GH-3757)

7 years agobpo-30806 netrc.__repr__() is broken for writing to file (GH-2491)
James Sexton [Sat, 30 Sep 2017 07:10:31 +0000 (02:10 -0500)]
bpo-30806 netrc.__repr__() is broken for writing to file (GH-2491)

netrc file format doesn't support quotes and escapes.

See https://linux.die.net/man/5/netrc

7 years agobpo-31574: importlib dtrace (#3749)
Christian Heimes [Fri, 29 Sep 2017 22:53:19 +0000 (00:53 +0200)]
bpo-31574: importlib dtrace (#3749)

Importlib was instrumented with two dtrace probes to profile import timing.

Signed-off-by: Christian Heimes <christian@python.org>
7 years agobpo-31641: Allow arbitrary iterables in `concurrent.futures.as_completed()` (#3830)
Łukasz Langa [Fri, 29 Sep 2017 21:33:34 +0000 (14:33 -0700)]
bpo-31641: Allow arbitrary iterables in `concurrent.futures.as_completed()` (#3830)

This was possible before.  GH-1560 introduced a regression after 3.6.2 got
released where only sequences were accepted now.  This commit addresses this
problem.

7 years agobpo-31602: Fix an assertion failure in zipimporter.get_source() in case of a bad...
Oren Milman [Fri, 29 Sep 2017 18:34:31 +0000 (21:34 +0300)]
bpo-31602: Fix an assertion failure in zipimporter.get_source() in case of a bad zlib.decompress() (GH-3784)

While a rare potential failure (it requires swapping out zlib.decompress() itself and forcing it to return a non-bytes object), this change prevents a potential C-level assertion failure and instead substitutes it with an exception.

Thanks to Oren Milman for the patch.

7 years agoTweak formatting of PR message template (#3828)
Brett Cannon [Fri, 29 Sep 2017 18:16:38 +0000 (11:16 -0700)]
Tweak formatting of PR message template (#3828)

7 years agobpo-31285: Remove splitlines identifier from Python/_warnings.c (#3803)
Oren Milman [Fri, 29 Sep 2017 18:16:02 +0000 (21:16 +0300)]
bpo-31285: Remove splitlines identifier from Python/_warnings.c (#3803)

(forgot to remove it in #3219)

7 years agobpo-31638: Add compression support to zipapp (GH-3819)
Zhiming Wang [Fri, 29 Sep 2017 17:31:52 +0000 (13:31 -0400)]
bpo-31638: Add compression support to zipapp (GH-3819)

Add optional argument `compressed` to `zipapp.create_archive`, and add
option `--compress` to the command line interface of `zipapp`.

7 years agoexplicitly list objects for the ar command (#3824)
Benjamin Peterson [Fri, 29 Sep 2017 16:26:48 +0000 (09:26 -0700)]
explicitly list objects for the ar command (#3824)

$^ is not portable.

closes bpo-31625

7 years agostop using ranlib (closes bpo-31625) (#3815)
Benjamin Peterson [Fri, 29 Sep 2017 15:42:41 +0000 (08:42 -0700)]
stop using ranlib (closes bpo-31625) (#3815)

Instead, simply pass 's' to ar.

7 years agobpo-25351: avoid activate failure on strict shells (GH-3804)
Sorin Sbarnea [Fri, 29 Sep 2017 11:48:11 +0000 (12:48 +0100)]
bpo-25351: avoid activate failure on strict shells (GH-3804)

7 years agoremove support for BSD/OS (closes bpo-31624) (#3812)
Benjamin Peterson [Fri, 29 Sep 2017 05:44:27 +0000 (22:44 -0700)]
remove support for BSD/OS (closes bpo-31624) (#3812)

7 years agobpo-11063, bpo-20519: avoid ctypes and improve import time for uuid (#3796)
Antoine Pitrou [Thu, 28 Sep 2017 21:03:06 +0000 (23:03 +0200)]
bpo-11063, bpo-20519: avoid ctypes and improve import time for uuid (#3796)

bpo-11063, bpo-20519: avoid ctypes and improve import time for uuid.

7 years agoFix typo in Simple Statements documentation (GH-3809)
kms70847 [Thu, 28 Sep 2017 19:54:48 +0000 (15:54 -0400)]
Fix typo in Simple Statements documentation (GH-3809)

Replace "restriction" with "restrictions".

7 years agobpo-31478: Fix an assertion failure in random.seed() in case a seed has a bad __abs__...
Oren Milman [Thu, 28 Sep 2017 07:50:01 +0000 (10:50 +0300)]
bpo-31478: Fix an assertion failure in random.seed() in case a seed has a bad __abs__() method. (#3596)

7 years agoTrivial readability improvement (#3791)
Barry Warsaw [Wed, 27 Sep 2017 15:12:30 +0000 (11:12 -0400)]
Trivial readability improvement (#3791)

7 years agobpo-31588: Validate return value of __prepare__() methods (GH-3764)
Oren Milman [Wed, 27 Sep 2017 14:04:37 +0000 (17:04 +0300)]
bpo-31588: Validate return value of __prepare__() methods (GH-3764)

Class execution requires that __prepare__() methods return
a proper execution namespace. Check for that immediately
after calling __prepare__(), rather than passing it through
to the code execution machinery and potentially triggering
SystemError (in debug builds) or a cryptic TypeError
(in release builds).

Patch by Oren Milman.

7 years agopoint to the module-level get_ident function rather than the one in _thread (#3782)
Benjamin Peterson [Wed, 27 Sep 2017 06:13:15 +0000 (23:13 -0700)]
point to the module-level get_ident function rather than the one in _thread (#3782)

7 years agocloses bpo-22140: Prevent double substitution of prefix in python-config.sh (#3769)
Michał Górny [Wed, 27 Sep 2017 05:45:06 +0000 (07:45 +0200)]
closes bpo-22140: Prevent double substitution of prefix in python-config.sh (#3769)

Fix the logic in python-config.sh to avoid attempting to substitute
prefix in a variable that might have already been subject to
substitution. This e.g. happened if @exec_prefix@ was defined as
"${prefix}" (which is the default of the configure script) -- in which
case the exec_prefix_build variable was initialized with
already-subtituted prefix, and then another round of substitution was
performed which might have resulted in duplicate prefix.

To avoid that, rename the variables so that the variables matching
likely configure names (prefix, exec_prefix) retain their original
values and a '_real' suffix is used for the real values of prefix.

Furthermore, replace the unnecessary prefix and exec_prefix
substitutions with direct prefix_real references since the sed
always replaced the whole string anyway by design.

7 years agobpo-31586: Use _count_element fast path for real dicts.
Oren Milman [Wed, 27 Sep 2017 03:18:21 +0000 (06:18 +0300)]
bpo-31586: Use _count_element fast path for real dicts.

7 years agobpo-30347: Stop crashes when concurrently iterate over itertools.groupby() iterators...
Serhiy Storchaka [Tue, 26 Sep 2017 18:47:56 +0000 (21:47 +0300)]
bpo-30347: Stop crashes when concurrently iterate over itertools.groupby() iterators. (#1557)

7 years agobpo-28293: Don't completely dump the regex cache when full. (#3768)
Serhiy Storchaka [Tue, 26 Sep 2017 16:47:36 +0000 (19:47 +0300)]
bpo-28293: Don't completely dump the regex cache when full. (#3768)

7 years agobpo-31579: Fixed a possible leak in enumerate() with large indices. (#3753)
Serhiy Storchaka [Tue, 26 Sep 2017 05:14:58 +0000 (08:14 +0300)]
bpo-31579: Fixed a possible leak in enumerate() with large indices. (#3753)

7 years agobpo-31571: Remove duplicated info in Lexical Analysis documentation (GH-3691)
Guilherme Caminha [Mon, 25 Sep 2017 23:16:54 +0000 (20:16 -0300)]
bpo-31571: Remove duplicated info in Lexical Analysis documentation (GH-3691)

- Remove the second mention about the `u` prefix
- Remove the second mention about numeric literals do not include a sign

7 years agobpo-30152: Reduce the number of imports for argparse. (#1269)
Serhiy Storchaka [Mon, 25 Sep 2017 21:55:55 +0000 (00:55 +0300)]
bpo-30152: Reduce the number of imports for argparse. (#1269)

7 years agobpo-31569: correct PCBuild/ case to PCbuild/ in build scripts and docs (GH-3711)
Stefan Grönke [Mon, 25 Sep 2017 16:58:10 +0000 (18:58 +0200)]
bpo-31569: correct PCBuild/ case to PCbuild/ in build scripts and docs (GH-3711)

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.