summaryrefslogtreecommitdiffstats
path: root/Doc/whatsnew
Commit message (Collapse)AuthorAgeFilesLines
* bpo-31333: Fix typo in whatsnew/3.7.rst (GH-5744)Terry Jan Reedy2018-02-181-1/+1
|
* bpo-31333: Re-implement ABCMeta in C (#5273)Ivan Levkivskyi2018-02-181-0/+6
| | | | This adds C versions of methods used by ABCMeta that improve performance of various ABC operations.
* bpo-32436: Add docs for contextvars (#5685)Yury Selivanov2018-02-161-0/+19
|
* Correct the code example in Python 3.7's What's New (GH-5696)xpvpc2018-02-161-1/+1
| | | There was an extra dash in the example for re.sub().
* bpo-30579: Docs for dynamic traceback creation (GH-5653)Nick Coghlan2018-02-131-0/+6
|
* bpo-30688: Support \N{name} escapes in re patterns. (GH-5588)Serhiy Storchaka2018-02-091-0/+2
| | | Co-authored-by: Jonathan Eunice <jonathan.eunice@gmail.com>
* Make formatting of some return codes conforming to the general style. (#5587)Serhiy Storchaka2018-02-091-2/+2
|
* bpo-32585: Add tkinter.ttk.Spinbox. (#5221)Alan D Moore2018-02-091-0/+6
|
* Add What's new entry for datetime.fromisoformat (#5559)Paul Ganssle2018-02-061-0/+8
| | | Documents bpo-15873
* bpo-32749: Make dbm.dumb databases more cosistent with other dbm databases. ↵Serhiy Storchaka2018-02-051-0/+5
| | | | (#5497)
* Fix typo in whatsnew/3.7.rst (GH-5551)Dag Heyman2018-02-051-1/+1
| | | now longer -> no longer
* bpo-10544: Disallow "yield" in comprehensions and generator expressions. ↵Serhiy Storchaka2018-02-041-0/+9
| | | | (GH-4564)
* [3.8] bpo-31508: Remove support of arguments in ↵Serhiy Storchaka2018-02-011-0/+8
| | | | | | tkinter.ttk.Treeview.selection. (GH-3651) It was deprecated in 3.6.
* Update Doc build to 3.8Ned Deily2018-01-312-0/+116
|
* bpo-32550. Remove the STORE_ANNOTATION bytecode. (GH-5181)Mark Shannon2018-01-301-0/+2
|
* bpo-25988: Deprecate exposing collections.abc in collections GH-5414Raymond Hettinger2018-01-291-0/+5
|
* bpo-31429: Define TLS cipher suite on build time (#3532)Christian Heimes2018-01-291-0/+6
| | | | | | | | | | | | | Until now Python used a hard coded white list of default TLS cipher suites. The old approach has multiple downsides. OpenSSL's default selection was completely overruled. Python did neither benefit from new cipher suites (ChaCha20, TLS 1.3 suites) nor blacklisted cipher suites. For example we used to re-enable 3DES. Python now defaults to OpenSSL DEFAULT cipher suite selection and black lists all unwanted ciphers. Downstream vendors can override the default cipher list with --with-ssl-default-suites. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-31233, bpo-31151: Document socketserver changes (#5417)Victor Stinner2018-01-291-0/+8
| | | | | socketserver.ForkingMixIn.server_close() and socketserver.ThreadingMixIn.server_close() now waits until all child processes and non-daemonic threads complete.
* Add example for PEP 557. (GH-5383)Eric V. Smith2018-01-281-0/+11
|
* Pep 557 What's New (GH-5371)Eric V. Smith2018-01-281-0/+18
| | | | Add PEP 557 Data CLasses to What's New.
* bpo-31399: Let OpenSSL verify hostname and IP address (#3462)Christian Heimes2018-01-271-0/+32
| | | | | | | | | | | | | | | 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-32433: Optimized HMAC digest (#5023)Christian Heimes2018-01-271-0/+7
| | | | | | | 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-32670: Enforce PEP 479. (#5327)Yury Selivanov2018-01-261-0/+6
|
* String annotations [PEP 563] (#4390)Guido van Rossum2018-01-261-0/+51
| | | | | | | | * 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-32304: Fix distutils upload for sdists ending with \x0d (GH-5264)Bo Bayles2018-01-261-0/+5
| | | | Patch by Bo Bayles.
* bpo-29302: Implement contextlib.AsyncExitStack. (#4790)Ilya Kulakov2018-01-251-0/+3
|
* bpo-29708: Add What's New entries for SOURCE_DATE_EPOCH and py_compile (GH-5306)Brett Cannon2018-01-251-15/+31
|
* bpo-32248 - Implement `ResourceReader` and `get_resource_reader()` for ↵Barry Warsaw2018-01-241-2/+6
| | | | zipimport (#5248)
* bpo-32593: Drop FreeBSD 9 and older support (#5232)Victor Stinner2018-01-221-0/+5
| | | Drop support of FreeBSD 9 and older.
* bpo-32591: Add native coroutine origin tracking (#5250)Nathaniel J. Smith2018-01-211-0/+3
| | | | | | * 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
* bpo-25910: Link redirections in docs (#1933)Sanyam Khurana2018-01-207-7/+7
| | | Fixes some redirection links in docs.
* bpo-31900: Fix localeconv() encoding for LC_NUMERIC (#4174)Victor Stinner2018-01-151-0/+3
| | | | | | | | * 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.
* bpo-32248: Introduce the concept of Loader.get_resource_reader() (GH-5108)Brett Cannon2018-01-121-4/+13
|
* bpo-31975 (PEP 565): Show DeprecationWarning in __main__ (GH-4458)Nick Coghlan2018-01-081-0/+40
| | | | | | | | | | | | | - primary change is to add a new default filter entry for 'default::DeprecationWarning:__main__' - secondary change is an internal one to cope with plain strings in the warning module's internal filter list (this avoids the need to create a compiled regex object early on during interpreter startup) - assorted documentation updates, including many more examples of configuring the warnings settings - additional tests to ensure that both the pure Python and the C accelerated warnings modules have the expected default configuration
* bpo-32206: Pdb can now run modules (GH-4752)Mario Corchero2018-01-061-0/+4
| | | | | | | | | | | Add a new argument "-m" to the pdb module to allow users to run `python -m pdb -m my_module_name`. This relies on private APIs in the runpy module to work, but we can get away with that since they're both part of the standard library and can be updated together if the runpy internals get refactored.
* bpo-32308: Replace empty matches adjacent to a previous non-empty match in ↵Serhiy Storchaka2018-01-041-3/+10
| | | | re.sub(). (#4846)
* bpo-32248 - Implement importlib.resources (#4911)Barry Warsaw2017-12-301-1/+8
| | | | Port importlib_resources to importlib.resources
* bpo-32331: Fix socket.type when SOCK_NONBLOCK is available (#4877)Yury Selivanov2017-12-191-0/+7
|
* bpo-19764: Implemented support for subprocess.Popen(close_fds=True) on ↵Segev Finer2017-12-181-0/+19
| | | | | | | | | | | | | | | | | Windows (#1218) Even though Python marks any handles it opens as non-inheritable there is still a race when using `subprocess.Popen` since creating a process with redirected stdio requires temporarily creating inheritable handles. By implementing support for `subprocess.Popen(close_fds=True)` we fix this race. In order to implement this we use PROC_THREAD_ATTRIBUTE_HANDLE_LIST which is available since Windows Vista. Which allows to pass an explicit list of handles to inherit when creating a process. This commit also adds `STARTUPINFO.lpAttributeList["handle_list"]` which can be used to control PROC_THREAD_ATTRIBUTE_HANDLE_LIST directly.
* bpo-32225: Implementation of PEP 562 (#4731)Ivan Levkivskyi2017-12-141-0/+18
| | | | | Implement PEP 562: module __getattr__ and __dir__. The implementation simply updates module_getattro and module_dir.
* bpo-29469: Move constant folding to AST optimizer (GH-2858)INADA Naoki2017-12-141-0/+3
|
* bpo-30241: implement contextlib.AbstractAsyncContextManager (#1412)Jelle Zijlstra2017-12-141-2/+3
|
* bpo-29240: PEP 540: Add a new UTF-8 Mode (#855)Victor Stinner2017-12-131-0/+21
| | | | | | | | | | | | | | | | | | | | | | * Add -X utf8 command line option, PYTHONUTF8 environment variable and a new sys.flags.utf8_mode flag. * If the LC_CTYPE locale is "C" at startup: enable automatically the UTF-8 mode. * Add _winapi.GetACP(). encodings._alias_mbcs() now calls _winapi.GetACP() to get the ANSI code page * locale.getpreferredencoding() now returns 'UTF-8' in the UTF-8 mode. As a side effect, open() now uses the UTF-8 encoding by default in this mode. * Py_DecodeLocale() and Py_EncodeLocale() now use the UTF-8 encoding in the UTF-8 Mode. * Update subprocess._args_from_interpreter_flags() to handle -X utf8 * Skip some tests relying on the current locale if the UTF-8 mode is enabled. * Add test_utf8mode.py. * _Py_DecodeUTF8_surrogateescape() gets a new optional parameter to return also the length (number of wide characters). * pymain_get_global_config() and pymain_set_global_config() now always copy flag values, rather than only copying if the new value is greater than the old value.
* bpo-32230: Set sys.warnoptions with -X dev (#4820)Victor Stinner2017-12-121-8/+34
| | | | | | | | | | | | | | Rather than supporting dev mode directly in the warnings module, this instead adjusts the initialisation code to add an extra 'default' entry to sys.warnoptions when dev mode is enabled. This ensures that dev mode behaves *exactly* as if `-Wdefault` had been passed on the command line, including in the way it interacts with `sys.warnoptions`, and with other command line flags like `-bb`. Fix also bpo-20361: have -b & -bb options take precedence over any other warnings options. Patch written by Nick Coghlan, with minor modifications of Victor Stinner.
* closes bpo-31650: PEP 552 (Deterministic pycs) implementation (#4575)Benjamin Peterson2017-12-091-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | Python now supports checking bytecode cache up-to-dateness with a hash of the source contents rather than volatile source metadata. See the PEP for details. While a fairly straightforward idea, quite a lot of code had to be modified due to the pervasiveness of pyc implementation details in the codebase. Changes in this commit include: - The core changes to importlib to understand how to read, validate, and regenerate hash-based pycs. - Support for generating hash-based pycs in py_compile and compileall. - Modifications to our siphash implementation to support passing a custom key. We then expose it to importlib through _imp. - Updates to all places in the interpreter, standard library, and tests that manually generate or parse pyc files to grok the new format. - Support in the interpreter command line code for long options like --check-hash-based-pycs. - Tests and documentation for all of the above.
* bpo-25910: Fixes redirection from http to https (#4674)Sanyam Khurana2017-12-062-5/+5
|
* bpo-19610: Warn if distutils is provided something other than a list to some ↵Neil Schemenauer2017-12-051-4/+2
| | | | | | | | | | | | | | | fields (#4685) * Rather than raise TypeError, warn and call list() on the value. * Fix tests, revise NEWS and whatsnew text. * Revise documentation, a string is okay as well. * Ensure 'requires' and 'obsoletes' are real lists. * Test that requires and obsoletes are turned to lists.
* bpo-25054, bpo-1647489: Added support of splitting on zerowidth patterns. ↵Serhiy Storchaka2017-12-041-0/+21
| | | | | | (#4471) Also fixed searching patterns that could match an empty string.
* bpo-10544: Deprecate "yield" in comprehensions and generator expressions. ↵Serhiy Storchaka2017-12-011-0/+12
| | | | | | | | | | | | | | (GH-4579) The current behaviour of yield expressions inside comprehensions and generator expressions is essentially an accident of implementation - it arises implicitly from the way the compiler handles yield expressions inside nested functions and generators. Since the current behaviour wasn't deliberately designed, and is inherently confusing, we're deprecating it, with no current plans to reintroduce it. Instead, our advice will be to use a named nested generator definition for cases where this behaviour is desired.
* bpo-32101: Add PYTHONDEVMODE environment variable (#4624)Victor Stinner2017-11-301-3/+8
| | | | | | * bpo-32101: Add sys.flags.dev_mode flag Rename also the "Developer mode" to the "Development mode". * bpo-32101: Add PYTHONDEVMODE environment variable Mention it in the development chapiter.