bennorth [Fri, 26 Jan 2018 15:46:01 +0000 (15:46 +0000)]
bpo-18533: Avoid RecursionError from repr() of recursive dictview (#4823)
dictview_repr(): Use a Py_ReprEnter() / Py_ReprLeave() pair to check
for recursion, and produce "..." if so.
test_recursive_repr(): Check for the string rather than a
RecursionError. (Test cannot be any tighter as contents are
implementation-dependent.)
test_deeply_nested_repr(): Add new test, replacing the original
test_recursive_repr(). It checks that a RecursionError is raised in
the case of a non-recursive but deeply nested structure. (Very
similar to what test_repr_deep() in test/test_dict.py does for a
normal dict.)
OrderedDictTests: Add new test case, to test behavior on OrderedDict
instances containing their own values() or items().
INADA Naoki [Fri, 26 Jan 2018 07:22:51 +0000 (16:22 +0900)]
bpo-32571: Fix reading uninitialized memory (GH-5332)
Reported by Coverity Scan.
Yury Selivanov [Fri, 26 Jan 2018 06:30:57 +0000 (01:30 -0500)]
bpo-32662: Try making test_asyncio.test_server more reliable (#5338)
mwidjaja [Fri, 26 Jan 2018 04:49:56 +0000 (20:49 -0800)]
bpo-29237: Create enum for pstats sorting options (GH-5103)
INADA Naoki [Fri, 26 Jan 2018 01:53:31 +0000 (10:53 +0900)]
bpo-32596: Make lazy-load portable (GH-5316)
Global variables should not used as import target.
Use temporary variable instead.
Bo Bayles [Fri, 26 Jan 2018 00:02:03 +0000 (18:02 -0600)]
bpo-32304: Fix distutils upload for sdists ending with \x0d (GH-5264)
Patch by Bo Bayles.
José Melero Fernández [Thu, 25 Jan 2018 23:45:43 +0000 (23:45 +0000)]
bpo-32574: Fix leaks in asyncio.Queue.put() and .get() (#5208)
Yury Selivanov [Thu, 25 Jan 2018 23:08:09 +0000 (18:08 -0500)]
bpo-32662: Implement Server.start_serving() and Server.serve_forever() (#5312)
* bpo-32662: Implement Server.start_serving() and Server.serve_forever()
New methods:
* Server.start_serving(),
* Server.serve_forever(), and
* Server.is_serving().
Add 'start_serving' keyword parameter to loop.create_server() and
loop.create_unix_server().
Ilya Kulakov [Thu, 25 Jan 2018 20:51:18 +0000 (12:51 -0800)]
bpo-29302: Implement contextlib.AsyncExitStack. (#4790)
Yury Selivanov [Thu, 25 Jan 2018 19:18:55 +0000 (14:18 -0500)]
bpo-32436: Fix a refleak; var GC tracking; a GCC warning (#5326)
The refleak in question wasn't really important, as context vars
are usually created at the toplevel and live as long as the interpreter
lives, so the context var name isn't ever GCed anyways.
Victor Stinner [Thu, 25 Jan 2018 18:06:05 +0000 (19:06 +0100)]
bpo-32667: Fix tests when $PATH contains a file (#5322)
Some tests failed when the PATH environment variable contained a path
to an existing file. Fix tests to ignore also NotADirectoryError, not
only FileNotFoundError and PermissionError.
Dmitry Alimov [Thu, 25 Jan 2018 17:54:41 +0000 (20:54 +0300)]
Fix 3rd level node's binary representation in HAMT algorithm description (#5319)
Paul Ganssle [Thu, 25 Jan 2018 13:58:07 +0000 (08:58 -0500)]
Cleanup dangling reference in get_timezone_utc_capi (#5317)
INADA Naoki [Thu, 25 Jan 2018 10:52:58 +0000 (19:52 +0900)]
bpo-32360: Remove OrderedDict usage from json.tool (GH-5315)
`object_pairs_hook=OrderedDict` idiom is deprecated.
Serhiy Storchaka [Thu, 25 Jan 2018 08:49:40 +0000 (10:49 +0200)]
bpo-32571: Avoid raising unneeded AttributeError and silencing it in C code (GH-5222)
Add two new private APIs: _PyObject_LookupAttr() and _PyObject_LookupAttrId()
Victor Stinner [Thu, 25 Jan 2018 08:18:36 +0000 (09:18 +0100)]
bpo-32652: Defer pymain_set_global_config() call (#5303)
In Py_Main(), don't call pymain_set_global_config() early: only call
it when the whole configuration has been read.
Add an unit test to prevent future regression.
Brett Cannon [Thu, 25 Jan 2018 01:13:24 +0000 (17:13 -0800)]
bpo-29708: Add What's New entries for SOURCE_DATE_EPOCH and py_compile (GH-5306)
Andrew Svetlov [Wed, 24 Jan 2018 22:30:30 +0000 (00:30 +0200)]
bpo-32391: Implement StreamWriter.wait_closed() (#5281)
Paul Ganssle [Wed, 24 Jan 2018 22:29:30 +0000 (17:29 -0500)]
bpo-10381: Add timezone to datetime C API (#5032)
* Add timezone to datetime C API
* Add documentation for timezone C API macros
* Add dedicated tests for datetime type check macros
* Remove superfluous C API test
* Drop support for TimeZoneType in datetime C API
* Expose UTC singleton to the datetime C API
* Update datetime C-API documentation to include links
* Add reference count information for timezone constructors
Bernhard M. Wiedemann [Wed, 24 Jan 2018 21:26:18 +0000 (22:26 +0100)]
bpo-29708: Setting SOURCE_DATE_EPOCH forces hash-based .pyc files (GH-5200)
To support reproducible builds, the setting of of SOURCE_DATE_EPOCH triggers the py_compile module -- and by extension, compileall -- to forcibly compile with hash-based .pyc files. This eliminates the possibility of timestamp-based .pyc files which vary between builds.
Barry Warsaw [Wed, 24 Jan 2018 20:36:21 +0000 (15:36 -0500)]
bpo-32248 - Implement `ResourceReader` and `get_resource_reader()` for zipimport (#5248)
Victor Stinner [Wed, 24 Jan 2018 20:15:14 +0000 (21:15 +0100)]
bpo-32636: Fix two bugs in test_asyncio (#5302)
Nathaniel J. Smith [Wed, 24 Jan 2018 20:14:33 +0000 (12:14 -0800)]
bpo-32636: Fix @asyncio.coroutine debug mode bug exposed by gh-5250 (#5291)
Andrew Svetlov [Wed, 24 Jan 2018 19:40:35 +0000 (21:40 +0200)]
bpo-32410: Improve sock_sendfile tests (#5294)
* Rename sock_sendfile test methods
* Make sock_sendfile tests more stable
Barry Warsaw [Wed, 24 Jan 2018 17:51:29 +0000 (12:51 -0500)]
bpo-32651 Recommend getpass.getuser() (#5301)
* bpo-32651 - In the documentation for os.getlogin(), recommend getpass.getuser()
Yury Selivanov [Wed, 24 Jan 2018 16:31:01 +0000 (11:31 -0500)]
bpo-32643: Drop support for a few private Task and Future APIs. (#5293)
Specifically, it's not possible to subclass Task/Future classes
and override the following methods:
* Future._schedule_callbacks
* Task._step
* Task._wakeup
Victor Stinner [Wed, 24 Jan 2018 16:03:28 +0000 (17:03 +0100)]
bpo-32030: Add _PyCoreConfig.module_search_paths (#4954)
_PyCoreConfig_Read() is now responsible to compute sys.path.
So sys.path is now computed before calling _Py_InitializeCore().
Changes:
* Add module_search_path, module_search_paths, executable, prefix,
base_prefix, exec_prefix and base_exec_prefix to _PyCoreConfig.
* _PyMainInterpreterConfig_Read() now only converts wchar_t** lists
into a Python list, it doesn't compute sys.path anymore.
Victor Stinner [Wed, 24 Jan 2018 16:02:41 +0000 (17:02 +0100)]
bpo-28046: Remove MACHDEPPATH from Modules/Setup.dist (#5289)
Makefile $MACHDEPPATH uses $PLATDIR, but this variable was removed.
So remove also $MACHDEPPATH.
Remove also $EXTRAMACHDEPPATH.
Pablo Galindo [Wed, 24 Jan 2018 12:57:49 +0000 (12:57 +0000)]
bpo-17799: Explain real behaviour of sys.settrace and sys.setprofile (#4056)
bpo-32360: unittest.util: Use Counter instead of custom count function (GH-4994)
Yury Selivanov [Wed, 24 Jan 2018 03:17:04 +0000 (22:17 -0500)]
bpo-32436: Don't use native popcount() (also fixes bpo-32641) (#5292)
Bo Bayles [Wed, 24 Jan 2018 01:11:44 +0000 (19:11 -0600)]
bpo-32502: Discard 64-bit (and other invalid) hardware addresses (#5254)
Yury Selivanov [Tue, 23 Jan 2018 21:26:07 +0000 (16:26 -0500)]
bpo-32436: Fix potential NULL dereference (#5286)
Yury Selivanov [Tue, 23 Jan 2018 20:10:03 +0000 (15:10 -0500)]
bpo-32296: Make get_running_loop() another 4-5x faster (#5277)
stratakis [Tue, 23 Jan 2018 15:11:24 +0000 (16:11 +0100)]
bpo-32635: Fix a segfault when importing the crypt module with libxcrypt. (#5284)
glibc is deprecating libcrypt in favor of libxcrypt, however python assumes
that crypt.h will always be included. This change makes the header inclusion
explicit when libxcrypt is present on the system.
Xiang Zhang [Tue, 23 Jan 2018 14:50:50 +0000 (22:50 +0800)]
bpo-32618: Fix test_mutatingdecodehandler not testing test.mutating (#5269)
* bpo-32618: Fix test_mutatingdecodehandler not testing test.mutating
It should test both test.replacing and test.mutating instead of test test.replacing twice.
Victor Stinner [Tue, 23 Jan 2018 12:30:53 +0000 (13:30 +0100)]
bpo-20361: Remove workaround for a now fixed bug (#5283)
"python3 -bb -Wd" now works as expected:
"python3 -bb -Wd -Werror::BytesWarning" is no more needed.
Victor Stinner [Tue, 23 Jan 2018 12:14:08 +0000 (13:14 +0100)]
bpo-32593: Run autoconf (#5282)
Update configure since configure.ac was modified to drop support for
FreeBSD 4.
Nathaniel J. Smith [Tue, 23 Jan 2018 09:09:31 +0000 (01:09 -0800)]
bpo-32633: Fix some warnings in test_asyncio.test_tasks (#5280)
Yury Selivanov [Tue, 23 Jan 2018 07:00:03 +0000 (02:00 -0500)]
bpo-32436: Remove a redundant assert (#5275)
Yury Selivanov [Tue, 23 Jan 2018 06:59:50 +0000 (01:59 -0500)]
Add myself as hamt/context (PEP 567) code owner (#5276)
Yury Selivanov [Tue, 23 Jan 2018 00:11:18 +0000 (19:11 -0500)]
bpo-32436: Implement PEP 567 (#5027)
Victor Stinner [Mon, 22 Jan 2018 18:07:32 +0000 (19:07 +0100)]
bpo-29240: PyUnicode_DecodeLocale() uses UTF-8 on Android (#5272)
PyUnicode_DecodeLocaleAndSize(), PyUnicode_DecodeLocale() and
PyUnicode_EncodeLocale() now use always use the UTF-8 encoding on
Android, instead of the current locale encoding.
On Android API 19, mbstowcs() and wcstombs() are broken and cannot be
used.
Victor Stinner [Mon, 22 Jan 2018 17:32:50 +0000 (18:32 +0100)]
bpo-32593: Drop FreeBSD 9 and older support (#5232)
Drop support of FreeBSD 9 and older.
Yury Selivanov [Mon, 22 Jan 2018 16:54:41 +0000 (11:54 -0500)]
bpo-31179: Make dict.copy() up to 5.5 times faster. (#3067)
Ethan Furman [Mon, 22 Jan 2018 15:56:37 +0000 (07:56 -0800)]
bpo-31801: Enum: add _ignore_ as class option (#5237)
* bpo-31801: Enum: add _ignore_ as class option
_ignore_ is a list, or white-space seperated str, of names that will not
be candidates for members; these names, and _ignore_ itself, are removed
from the final class.
* bpo-31801: Enum: add documentation for _ignore_
* bpo-31801: Enum: remove trailing whitespace
* bpo-31801: Enum: fix bulleted list format
* bpo-31801: add version added for _ignore_
INADA Naoki [Mon, 22 Jan 2018 07:45:31 +0000 (16:45 +0900)]
urllib.request: Remove unused import (GH-5268)
Yury Selivanov [Mon, 22 Jan 2018 01:47:04 +0000 (20:47 -0500)]
bpo-32591: Fix PyExc_WarnFormat call (follow-up commit) (#5263)
The previous version was correct in terms of behaviour, but
checking the return value of PyErr_WarnFormat allows to
avoid calling PyErr_Occurred and silences the coverity alarm.
Yury Selivanov [Sun, 21 Jan 2018 19:56:59 +0000 (14:56 -0500)]
bpo-32314: Fix asyncio.run() to cancel runinng tasks on shutdown (#5262)
Nathaniel J. Smith [Sun, 21 Jan 2018 14:44:07 +0000 (06:44 -0800)]
bpo-32591: Add native coroutine origin tracking (#5250)
* Add coro.cr_origin and sys.set_coroutine_origin_tracking_depth
* Use coroutine origin information in the unawaited coroutine warning
* Stop using set_coroutine_wrapper in asyncio debug mode
* In BaseEventLoop.set_debug, enable debugging in the correct thread
Serhiy Storchaka [Sat, 20 Jan 2018 14:42:44 +0000 (16:42 +0200)]
bpo-32503: Avoid creating too small frames in pickles. (#5127)
Christian Heimes [Sat, 20 Jan 2018 14:16:30 +0000 (15:16 +0100)]
bpo-32602: Test ECDSA certs (#5247)
Add test certs and test for ECDSA cert and EC/RSA dual mode.
I'm also adding certs for IDNA 2003/2008 tests and simplify some test
data handling.
Signed-off-by: Christian Heimes <christian@python.org>
Christian Heimes [Sat, 20 Jan 2018 12:19:21 +0000 (13:19 +0100)]
bpo-32598: Use autoconf to detect usable OpenSSL (#5242)
Add https://www.gnu.org/software/autoconf-archive/ax_check_openssl.html
to auto-detect compiler flags, linker flags and libraries to compile
OpenSSL extensions. The M4 macro uses pkg-config and falls back to
manual detection.
Add autoconf magic to detect usable X509_VERIFY_PARAM_set1_host()
and related functions.
Refactor setup.py to use new config vars to compile _ssl and _hashlib
modules.
Signed-off-by: Christian Heimes <christian@python.org>
Ivan Levkivskyi [Sat, 20 Jan 2018 11:23:59 +0000 (11:23 +0000)]
bpo-32226: PEP 560: improve typing module (#4906)
This PR re-designs the internal typing API using the new PEP 560 features.
However, there are only few minor changes in the public API.
Sanyam Khurana [Sat, 20 Jan 2018 03:12:22 +0000 (08:42 +0530)]
bpo-32028: Fix suggestions for indented print statements (GH-4688)
The suggested replacement for print statements previously failed to account
for leading whitespace and hence could end up including unwanted text in
the proposed call to the print builtin.
Patch by Sanyam Khurana.
INADA Naoki [Sat, 20 Jan 2018 00:54:42 +0000 (09:54 +0900)]
bpo-32596: Lazy import concurrent.futures.process and thread (GH-5241)
Sanyam Khurana [Sat, 20 Jan 2018 00:25:37 +0000 (05:55 +0530)]
bpo-25910: Link redirections in docs (#1933)
Fixes some redirection links in docs.
Andrew Svetlov [Fri, 19 Jan 2018 18:04:29 +0000 (20:04 +0200)]
bpo-32410: Make SendfileNotAvailableError exception public (#5243)
Steve Dower [Thu, 18 Jan 2018 22:09:36 +0000 (09:09 +1100)]
bpo-32588: Move _findvs into its own module and add missing _queue module to installer (#5227)
Raymond Hettinger [Thu, 18 Jan 2018 21:23:27 +0000 (13:23 -0800)]
Removed unnecesssary bit inversion which doesn't improve dispersion statistics (#5235)
Victor Stinner [Thu, 18 Jan 2018 10:15:25 +0000 (11:15 +0100)]
bpo-9566: Fix size_t=>int downcast warnings (#5230)
* Use wider types (int => Py_ssize_t) to avoid integer overflows.
* Fix gc.get_freeze_count(): use Py_ssize_t type rather than int, since gc_list_size() returns a Py_ssize_t.
Antoine Pitrou [Thu, 18 Jan 2018 09:38:03 +0000 (10:38 +0100)]
bpo-32576: use queue.SimpleQueue in critical places (#5216)
Where a queue may be invoked from a weakref callback, we need
to use the reentrant SimpleQueue.
hui shang [Wed, 17 Jan 2018 23:21:01 +0000 (07:21 +0800)]
Fix typo in thread_nt.h code comment (GH-5211)
The comment for PyThread_allocate_lock says "It has too be implemented ...".
There was an extra "o" in ".. to be implemented.."
Gregory P. Smith [Wed, 17 Jan 2018 22:57:57 +0000 (14:57 -0800)]
Use assertCountEqual instead of assertEqual. (#5223)
This test doesn't care about order, the underlying filesystem APIs do not
guarantee directory listings on subsequent calls will be in the same order.
Victor Stinner [Wed, 17 Jan 2018 22:08:18 +0000 (23:08 +0100)]
bpo-32226: Fix memory leak in generic_alias_dealloc() (#5212)
Victor Stinner [Wed, 17 Jan 2018 15:35:45 +0000 (16:35 +0100)]
pythoninfo: add time.time and datetime.datetime.now (#5214)
Victor Stinner [Wed, 17 Jan 2018 14:21:50 +0000 (15:21 +0100)]
bpo-32248: Fix test_importlib.test_open() (#5213)
Use the binary.file instead of utf-8.file to avoid issues with
Unix newlines vs Windows newlines.
Victor Stinner [Wed, 17 Jan 2018 09:26:03 +0000 (10:26 +0100)]
Fix Git attributes of test_importlib data files (#5209)
bpo-32248: Make sure that Git checks out data files with Unix line
ending on Windows as well.
Christian Heimes [Tue, 16 Jan 2018 20:02:26 +0000 (21:02 +0100)]
bpo-32549: Compile OpenSSL 1.1.0 on Travis CI (#5180)
Use an improved version of multissl test helper to compile a local copy
of OpenSSL 1.1.0g.
Signed-off-by: Christian Heimes <christian@python.org>
Paul Ganssle [Tue, 16 Jan 2018 18:06:31 +0000 (13:06 -0500)]
bpo-32403: Faster date and datetime constructors (#4993)
* Add tests for date subclass alternate constructors
* Switch over alternate date constructors to fast path
* Switch datetime constructors to fastpath, fix bpo-32404
* Add fast path for datetime in date subclass constructor
* Set fold in constructor in datetime.combine
* Add news entries.
Andrew Svetlov [Tue, 16 Jan 2018 17:59:34 +0000 (19:59 +0200)]
bpo-32410: Implement loop.sock_sendfile() (#4976)
Victor Stinner [Tue, 16 Jan 2018 16:34:34 +0000 (17:34 +0100)]
Skip test_readline.test_nonascii() on C locale (#5203)
bpo-29240: On FreeBSD, if the LC_CTYPE locale is "C" or "POSIX",
writing and reading non-ASCII bytes into/from a TTY works,
but readline or ncurses ignores non-ASCII bytes on read.
Serhiy Storchaka [Tue, 16 Jan 2018 16:34:21 +0000 (18:34 +0200)]
bpo-31572: Get rid of PyObject_HasAttr() and _PyObject_HasAttrId() in the _io module. (#3726)
INADA Naoki [Tue, 16 Jan 2018 11:52:41 +0000 (20:52 +0900)]
bpo-32544: Speed up hasattr() and getattr() (GH-5173)
AttributeError was raised always when attribute is not found.
This commit skip raising AttributeError when `tp_getattro` is `PyObject_GenericGetAttr`.
It makes hasattr() and getattr() about 4x faster when attribute is not found.
Raymond Hettinger [Tue, 16 Jan 2018 09:30:26 +0000 (01:30 -0800)]
bpo-26163: Frozenset hash improvement (#5194)
Antoine Pitrou [Mon, 15 Jan 2018 23:27:16 +0000 (00:27 +0100)]
bpo-14976: Reentrant simple queue (#3346)
Add a queue.SimpleQueue class, an unbounded FIFO queue with a reentrant C implementation of put().
Barry Warsaw [Mon, 15 Jan 2018 23:07:11 +0000 (15:07 -0800)]
Implement the get_resource_reader() API for file system imports (#5168)
Yury Selivanov [Mon, 15 Jan 2018 22:56:32 +0000 (17:56 -0500)]
Make asyncio tests run when there's no SSL module (#5196)
Victor Stinner [Mon, 15 Jan 2018 14:58:02 +0000 (15:58 +0100)]
bpo-31900: Fix localeconv() encoding for LC_NUMERIC (#4174)
* Add _Py_GetLocaleconvNumeric() function: decode decimal_point and
thousands_sep fields of localeconv() from the LC_NUMERIC encoding,
rather than decoding from the LC_CTYPE encoding.
* Modify locale.localeconv() and "n" formatter of str.format() (for
int, float and complex to use _Py_GetLocaleconvNumeric()
internally.
Victor Stinner [Mon, 15 Jan 2018 09:45:49 +0000 (10:45 +0100)]
bpo-29240: Fix locale encodings in UTF-8 Mode (#5170)
Modify locale.localeconv(), time.tzname, os.strerror() and other
functions to ignore the UTF-8 Mode: always use the current locale
encoding.
Changes:
* Add _Py_DecodeLocaleEx() and _Py_EncodeLocaleEx(). On decoding or
encoding error, they return the position of the error and an error
message which are used to raise Unicode errors in
PyUnicode_DecodeLocale() and PyUnicode_EncodeLocale().
* Replace _Py_DecodeCurrentLocale() with _Py_DecodeLocaleEx().
* PyUnicode_DecodeLocale() now uses _Py_DecodeLocaleEx() for all
cases, especially for the strict error handler.
* Add _Py_DecodeUTF8Ex(): return more information on decoding error
and supports the strict error handler.
* Rename _Py_EncodeUTF8_surrogateescape() to _Py_EncodeUTF8Ex().
* Replace _Py_EncodeCurrentLocale() with _Py_EncodeLocaleEx().
* Ignore the UTF-8 mode to encode/decode localeconv(), strerror()
and time zone name.
* Remove PyUnicode_DecodeLocale(), PyUnicode_DecodeLocaleAndSize()
and PyUnicode_EncodeLocale() now ignore the UTF-8 mode: always use
the "current" locale.
* Remove _PyUnicode_DecodeCurrentLocale(),
_PyUnicode_DecodeCurrentLocaleAndSize() and
_PyUnicode_EncodeCurrentLocale().
Cheryl Sabella [Mon, 15 Jan 2018 05:08:37 +0000 (00:08 -0500)]
bpo-26330: Update shutil.disk_usage() documentation (GH-5184)
Clarify that on Windows, path must be a directory.
On Unix, path can be a file or a directory.
Cheryl Sabella [Mon, 15 Jan 2018 04:57:51 +0000 (23:57 -0500)]
bpo-15221: Update os.path.is*() documentation (GH-5185)
`os.path.is*()` can return False if the file can't be accessed.
The behaviour is documented in details in `os.path.exists()`.
Link to `os.path.exists()` from `os.path.is*()`.
Raymond Hettinger [Sun, 14 Jan 2018 18:20:13 +0000 (10:20 -0800)]
bpo-29476: Simplify set_add_entry() (#5175)
Raymond Hettinger [Sat, 13 Jan 2018 18:35:40 +0000 (10:35 -0800)]
Add itertools recipe for directly finding the n-th combination (#5161)
Julian Kahnert [Sat, 13 Jan 2018 03:35:57 +0000 (04:35 +0100)]
Improve enum.Flag code example (GH-5167)
The code example that demonstrate how to use enum.Flag was missing
the import of enum.auto.
Brett Cannon [Fri, 12 Jan 2018 23:08:59 +0000 (15:08 -0800)]
bpo-32248: Introduce the concept of Loader.get_resource_reader() (GH-5108)
Serhiy Storchaka [Fri, 12 Jan 2018 22:28:31 +0000 (00:28 +0200)]
bpo-31993: Do not use memoryview when pickle large strings. (#5154)
PyMemoryView_FromMemory() created a memoryview referring to
the internal data of the string. When the string is destroyed
the memoryview become referring to a freed memory.
Christian Heimes [Fri, 12 Jan 2018 14:26:32 +0000 (15:26 +0100)]
bpo-32521: nis libtirpc (#5137)
glibc has removed Sun RPC. Use replacement libtirpc headers and library in
nis module
Signed-off-by: Christian Heimes <christian@python.org>
yahya-abou-imran [Fri, 12 Jan 2018 09:18:44 +0000 (10:18 +0100)]
bpo-32473: Improve ABCMeta._dump_registry() readability (GH-5091)
Raymond Hettinger [Fri, 12 Jan 2018 06:20:33 +0000 (22:20 -0800)]
OrderedDict import is no longer needed (#4890)
İsmail Arılık [Fri, 12 Jan 2018 06:18:54 +0000 (09:18 +0300)]
Lexical Analysis ref doc: Fix a typo in the string concatenation internal link (GH-5157)
In lexical analysis reference documentation, the internal link to
the string literal concatenation section was written as`.. _string-catenation:`.
Changed that to `.. _string-concatenation:`.
Raymond Hettinger [Fri, 12 Jan 2018 06:06:34 +0000 (22:06 -0800)]
bpo-31145: Use dataclasses to create a prioritization wrapper (#5153)
Raymond Hettinger [Fri, 12 Jan 2018 05:53:49 +0000 (21:53 -0800)]
bpo-32467: Let collections.abc.ValuesView inherit from Collection (#5152)
Serhiy Storchaka [Thu, 11 Jan 2018 18:20:13 +0000 (20:20 +0200)]
bpo-31113: Get rid of recursion in the compiler for normal control flow. (#3015)
Serhiy Storchaka [Thu, 11 Jan 2018 11:03:20 +0000 (13:03 +0200)]
bpo-31993: Do not create frames for large bytes and str objects (#5114)
when serialize into memory buffer with C pickle implementations.
This optimization already is performed when serialize into memory
with Python pickle implementations or into a file with both
implementations.
Victor Stinner [Thu, 11 Jan 2018 09:37:59 +0000 (10:37 +0100)]
bpo-29240: Ignore UTF-8 Mode in time module (#5148)
time.strftime() must use the current LC_CTYPE encoding, not UTF-8
if the UTF-8 mode is enabled.
Add _PyUnicode_DecodeCurrentLocale() function.
Raymond Hettinger [Thu, 11 Jan 2018 05:45:19 +0000 (21:45 -0800)]
bpo-32320: Add default value support to collections.namedtuple() (#4859)
Raymond Hettinger [Thu, 11 Jan 2018 04:56:41 +0000 (20:56 -0800)]
Fix obvious typos in docstrings (#5151)
Victor Stinner [Wed, 10 Jan 2018 21:46:15 +0000 (22:46 +0100)]
bpo-29240: readline now ignores the UTF-8 Mode (#5145)
Add new fuctions ignoring the UTF-8 mode:
* _Py_DecodeCurrentLocale()
* _Py_EncodeCurrentLocale()
* _PyUnicode_DecodeCurrentLocaleAndSize()
* _PyUnicode_EncodeCurrentLocale()
Modify the readline module to use these functions.
Re-enable test_readline.test_nonascii().
Mario Corchero [Tue, 9 Jan 2018 21:37:26 +0000 (21:37 +0000)]
Fix when parsing tz offsets microseconds shorter than 6 (#4781)
As the remainder was directly parsed as an int, strings like
.600 were parsed as 600 microseconds rather than milliseconds.