summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* bpo-32622: Implement loop.sendfile() (#5271)Andrew Svetlov2018-01-2712-8/+560
|
* bpo-32630: Use contextvars in decimal (GH-5278)Yury Selivanov2018-01-274-100/+70
|
* bpo-32436: Use PyThreadState_GET() in all hot paths (GH-5363)Yury Selivanov2018-01-271-3/+6
|
* Fix wrong assert in unicodeobject (GH-5340)INADA Naoki2018-01-271-1/+1
|
* bpo-31368: Expose preadv and pwritev in the os module (#5239)Pablo Galindo2018-01-279-79/+470
|
* bpo-32532: Improve documentation of settrace and setprofile (#5359)Xiang Zhang2018-01-271-1/+5
| | | | | Mention in the documentation of settrace and setprofile that errors in the registered handlers will cause themselves unset.
* bpo-31399: Let OpenSSL verify hostname and IP address (#3462)Christian Heimes2018-01-2715-73/+302
| | | | | | | | | | | | | | | bpo-31399: Let OpenSSL verify hostname and IP The ssl module now uses OpenSSL's X509_VERIFY_PARAM_set1_host() and X509_VERIFY_PARAM_set1_ip() API to verify hostname and IP addresses. * Remove match_hostname calls * Check for libssl with set1_host, libssl must provide X509_VERIFY_PARAM_set1_host() * Add documentation for OpenSSL 1.0.2 requirement * Don't support OpenSSL special mode with a leading dot, e.g. ".example.org" matches "www.example.org". It's not standard conform. * Add hostname_checks_common_name Signed-off-by: Christian Heimes <christian@python.org>
* bpo-31853: Replaced socket.method calls with super() in SSLSocket. (#4048)Mads Jensen2018-01-272-20/+21
|
* bpo-32454: socket closefd (#5048)Christian Heimes2018-01-274-2/+54
| | | | | Add close(fd) function to the socket module Signed-off-by: Christian Heimes <christian@python.org>
* bpo-32433: Optimized HMAC digest (#5023)Christian Heimes2018-01-277-3/+204
| | | | | | | The hmac module now has hmac.digest(), which provides an optimized HMAC digest for short messages. hmac.digest() is up to three times faster than hmac.HMAC().digest(). Signed-off-by: Christian Heimes <christian@python.org>
* bpo-32677: Add .isascii() to str, bytes and bytearray (GH-5342)INADA Naoki2018-01-2713-2/+110
|
* bpo-27505: Add change notes in module attribute docs (GH-5320)Cheryl Sabella2018-01-271-0/+11
| | | | | | Make it clear that setting __class__ on a module has worked since 3.5, but support for __getattr__ and __dir__ on module instances requires 3.7+ Patch by Cheryl Sabella.
* bpo-32678: inspect: Import ast lazily (GH-5344)INADA Naoki2018-01-271-1/+3
|
* bpo-32521: nis libnsl (#5190)Christian Heimes2018-01-262-19/+52
| | | | | The nismodule is now compatible with new libnsl and headers location Signed-off-by: Christian Heimes <christian@python.org>
* bpo-32436: Make PyContextVar_Get a little bit faster (#5350)Yury Selivanov2018-01-261-1/+2
| | | | Since context.c is compiled with Py_BUILD_CORE, using a macro will result in a slightly more optimal code.
* bpo-32670: Enforce PEP 479. (#5327)Yury Selivanov2018-01-267-80/+38
|
* bpo-32591: fix abort in _PyErr_WarnUnawaitedCoroutine during shutdown (#5337)Nathaniel J. Smith2018-01-262-0/+29
| | | | | | | | | | | | | | | | | | When an unawaited coroutine is collected very late in shutdown -- like, during the final GC at the end of PyImport_Cleanup -- then it was triggering an interpreter abort, because we'd try to look up the "warnings" module and not only was it missing (we were prepared for that), but the entire module system was missing (which we were not prepared for). I've tried to fix this at the source, by making the utility function get_warnings_attr robust against this in general. Note that it already has the convention that it can return NULL without setting an error, which is how it signals that the attribute it was asked to fetch is missing, and that all callers already check for NULL returns. There's a similar check for being late in shutdown at the top of warn_explicit, which might be unnecessary after this fix, but I'm not sure so I'm going to leave it.
* String annotations [PEP 563] (#4390)Guido van Rossum2018-01-2616-30/+1477
| | | | | | | | * Document `from __future__ import annotations` * Provide plumbing and tests for `from __future__ import annotations` * Implement unparsing the AST back to string form This is required for PEP 563 and as such only implements a part of the unparsing process that covers expressions.
* bpo-18533: Avoid RecursionError from repr() of recursive dictview (#4823)bennorth2018-01-264-4/+44
| | | | | | | | | | | | | | | | | 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().
* bpo-32571: Fix reading uninitialized memory (GH-5332)INADA Naoki2018-01-261-0/+5
| | | Reported by Coverity Scan.
* bpo-32662: Try making test_asyncio.test_server more reliable (#5338)Yury Selivanov2018-01-261-1/+12
|
* bpo-29237: Create enum for pstats sorting options (GH-5103)mwidjaja2018-01-265-61/+144
|
* bpo-32596: Make lazy-load portable (GH-5316)INADA Naoki2018-01-261-4/+6
| | | | Global variables should not used as import target. Use temporary variable instead.
* bpo-32304: Fix distutils upload for sdists ending with \x0d (GH-5264)Bo Bayles2018-01-264-2/+33
| | | | Patch by Bo Bayles.
* bpo-32574: Fix leaks in asyncio.Queue.put() and .get() (#5208)José Melero Fernández2018-01-253-2/+63
|
* bpo-32662: Implement Server.start_serving() and Server.serve_forever() (#5312)Yury Selivanov2018-01-256-35/+334
| | | | | | | | | | | | | * 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().
* bpo-29302: Implement contextlib.AsyncExitStack. (#4790)Ilya Kulakov2018-01-256-81/+451
|
* bpo-32436: Fix a refleak; var GC tracking; a GCC warning (#5326)Yury Selivanov2018-01-252-4/+6
| | | | | 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.
* bpo-32667: Fix tests when $PATH contains a file (#5322)Victor Stinner2018-01-252-9/+8
| | | | | 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.
* Fix 3rd level node's binary representation in HAMT algorithm description (#5319)Dmitry Alimov2018-01-251-1/+1
|
* Cleanup dangling reference in get_timezone_utc_capi (#5317)Paul Ganssle2018-01-251-0/+2
|
* bpo-32360: Remove OrderedDict usage from json.tool (GH-5315)INADA Naoki2018-01-251-6/+1
| | | `object_pairs_hook=OrderedDict` idiom is deprecated.
* bpo-32571: Avoid raising unneeded AttributeError and silencing it in C code ↵Serhiy Storchaka2018-01-2522-1428/+1441
| | | | | (GH-5222) Add two new private APIs: _PyObject_LookupAttr() and _PyObject_LookupAttrId()
* bpo-32652: Defer pymain_set_global_config() call (#5303)Victor Stinner2018-01-252-14/+27
| | | | | | 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.
* bpo-29708: Add What's New entries for SOURCE_DATE_EPOCH and py_compile (GH-5306)Brett Cannon2018-01-251-15/+31
|
* bpo-32391: Implement StreamWriter.wait_closed() (#5281)Andrew Svetlov2018-01-244-10/+73
|
* bpo-10381: Add timezone to datetime C API (#5032)Paul Ganssle2018-01-247-11/+329
| | | | | | | | | | | | | | | | | | * 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
* bpo-29708: Setting SOURCE_DATE_EPOCH forces hash-based .pyc files (GH-5200)Bernhard M. Wiedemann2018-01-244-1/+22
| | | 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.
* bpo-32248 - Implement `ResourceReader` and `get_resource_reader()` for ↵Barry Warsaw2018-01-245-83/+157
| | | | zipimport (#5248)
* bpo-32636: Fix two bugs in test_asyncio (#5302)Victor Stinner2018-01-242-1/+2
|
* bpo-32636: Fix @asyncio.coroutine debug mode bug exposed by gh-5250 (#5291)Nathaniel J. Smith2018-01-242-1/+19
|
* bpo-32410: Improve sock_sendfile tests (#5294)Andrew Svetlov2018-01-241-16/+19
| | | | | * Rename sock_sendfile test methods * Make sock_sendfile tests more stable
* bpo-32651 Recommend getpass.getuser() (#5301)Barry Warsaw2018-01-242-8/+11
| | | | * bpo-32651 - In the documentation for os.getlogin(), recommend getpass.getuser()
* bpo-32643: Drop support for a few private Task and Future APIs. (#5293)Yury Selivanov2018-01-247-229/+33
| | | | | | | | Specifically, it's not possible to subclass Task/Future classes and override the following methods: * Future._schedule_callbacks * Task._step * Task._wakeup
* bpo-32030: Add _PyCoreConfig.module_search_paths (#4954)Victor Stinner2018-01-243-187/+231
| | | | | | | | | | | _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.
* bpo-28046: Remove MACHDEPPATH from Modules/Setup.dist (#5289)Victor Stinner2018-01-241-5/+1
| | | | | | Makefile $MACHDEPPATH uses $PLATDIR, but this variable was removed. So remove also $MACHDEPPATH. Remove also $EXTRAMACHDEPPATH.
* bpo-17799: Explain real behaviour of sys.settrace and sys.setprofile (#4056)Pablo Galindo2018-01-243-22/+40
|
* bpo-32360: unittest.util: Use Counter instead of custom count function (GH-4994)Srinivas Reddy Thatiparthy (శ్రీనివాస్ రెడ్డి తాటిపర్తి)2018-01-241-9/+2
|
* bpo-32436: Don't use native popcount() (also fixes bpo-32641) (#5292)Yury Selivanov2018-01-242-15/+13
|
* bpo-32502: Discard 64-bit (and other invalid) hardware addresses (#5254)Bo Bayles2018-01-243-6/+38
|