python-docs-fr/whatsnew/3.6.po

2032 lines
67 KiB
Plaintext
Raw Normal View History

2016-10-30 09:46:26 +00:00
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2001-2016, Python Software Foundation
# This file is distributed under the same license as the Python package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Python 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-30 10:40+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../Doc/whatsnew/3.6.rst:3
msgid "What's New In Python 3.6"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:5
msgid "|release|"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:6
msgid "|today|"
msgstr "|today|"
#: ../Doc/whatsnew/3.6.rst:48
msgid "This article explains the new features in Python 3.6, compared to 3.5."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:50
msgid "For full details, see the :ref:`changelog <changelog>`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:54
msgid ""
"Prerelease users should be aware that this document is currently in draft "
"form. It will be updated substantially as Python 3.6 moves towards release, "
"so it's worth checking back even after reading earlier versions."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:60
msgid "Summary -- Release highlights"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:65
msgid "New syntax features:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:67
msgid ""
"A ``global`` or ``nonlocal`` statement must now textually appear before the "
"first use of the affected name in the same scope. Previously this was a "
"SyntaxWarning."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:71
msgid "PEP 498: :ref:`Formatted string literals <whatsnew-fstrings>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:73 ../Doc/whatsnew/3.6.rst:166
msgid "PEP 515: Underscores in Numeric Literals"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:75
msgid "PEP 526: :ref:`Syntax for Variable Annotations <variable-annotations>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:77
msgid "PEP 525: Asynchronous Generators"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:79
msgid "PEP 530: Asynchronous Comprehensions"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:81
msgid "Standard library improvements:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:83
msgid "Security improvements:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:85 ../Doc/whatsnew/3.6.rst:586
msgid ""
"On Linux, :func:`os.urandom` now blocks until the system urandom entropy "
"pool is initialized to increase the security. See the :pep:`524` for the "
"rationale."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:89
msgid ":mod:`hashlib` and :mod:`ssl` now support OpenSSL 1.1.0."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:91
msgid ""
"The default settings and feature set of the :mod:`ssl` have been improved."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:93
msgid ""
"The :mod:`hashlib` module has got support for BLAKE2, SHA-3 and SHAKE hash "
"algorithms and :func:`~hashlib.scrypt` key derivation function."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:96
msgid "Windows improvements:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:98
msgid "PEP 529: :ref:`Change Windows filesystem encoding to UTF-8 <pep-529>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:100
msgid "PEP 528: :ref:`Change Windows console encoding to UTF-8 <pep-528>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:102
msgid ""
"The ``py.exe`` launcher, when used interactively, no longer prefers Python 2 "
"over Python 3 when the user doesn't specify a version (via command line "
"arguments or a config file). Handling of shebang lines remains unchanged - "
"\"python\" refers to Python 2 in that case."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:107
msgid ""
"``python.exe`` and ``pythonw.exe`` have been marked as long-path aware, "
"which means that when the 260 character path limit may no longer apply. See :"
"ref:`removing the MAX_PATH limitation <max-path>` for details."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:111
msgid ""
"A ``._pth`` file can be added to force isolated mode and fully specify all "
"search paths to avoid registry and environment lookup. See :ref:`the "
"documentation <finding_modules>` for more information."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:115
msgid ""
"A ``python36.zip`` file now works as a landmark to infer :envvar:"
"`PYTHONHOME`. See :ref:`the documentation <finding_modules>` for more "
"information."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:134
msgid "New built-in features:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:136
msgid ""
"PEP 520: :ref:`Preserving Class Attribute Definition Order<whatsnew-"
"deforder>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:138
msgid "PEP 468: :ref:`Preserving Keyword Argument Order<whatsnew-kwargs>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:140
msgid "A complete list of PEP's implemented in Python 3.6:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:142
msgid ":pep:`468`, :ref:`Preserving Keyword Argument Order<whatsnew-kwargs>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:143
msgid ""
":pep:`487`, :ref:`Simpler customization of class creation<whatsnew-pep487>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:144
msgid ":pep:`495`, Local Time Disambiguation"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:145
msgid ":pep:`498`, :ref:`Formatted string literals <whatsnew-fstrings>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:146
msgid ":pep:`506`, Adding A Secrets Module To The Standard Library"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:147
msgid ":pep:`509`, :ref:`Add a private version to dict<whatsnew-pep509>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:148
msgid ":pep:`515`, :ref:`Underscores in Numeric Literals<pep-515>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:149
msgid ":pep:`519`, :ref:`Adding a file system path protocol<pep-519>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:150
msgid ""
":pep:`520`, :ref:`Preserving Class Attribute Definition Order<whatsnew-"
"deforder>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:151
msgid ":pep:`523`, :ref:`Adding a frame evaluation API to CPython<pep-523>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:152
msgid ":pep:`524`, Make os.urandom() blocking on Linux (during system startup)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:153
msgid ":pep:`525`, Asynchronous Generators (provisional)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:154
msgid ""
":pep:`526`, :ref:`Syntax for Variable Annotations (provisional)<variable-"
"annotations>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:155
msgid ""
":pep:`528`, :ref:`Change Windows console encoding to UTF-8 "
"(provisional)<pep-528>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:156
msgid ""
":pep:`529`, :ref:`Change Windows filesystem encoding to UTF-8 "
"(provisional)<pep-529>`"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:157
msgid ":pep:`530`, Asynchronous Comprehensions"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:161
msgid "New Features"
msgstr "Nouvelles fonctionnalités"
#: ../Doc/whatsnew/3.6.rst:168
msgid ""
"Prior to PEP 515, there was no support for writing long numeric literals "
"with some form of separator to improve readability. For instance, how big is "
"``1000000000000000``? With :pep:`515`, though, you can use underscores to "
"separate digits as desired to make numeric literals easier to read: "
"``1_000_000_000_000_000``. Underscores can be used with other numeric "
"literals beyond integers, e.g. ``0x_FF_FF_FF_FF``."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:176
msgid ""
"Single underscores are allowed between digits and after any base specifier. "
"More than a single underscore in a row, leading, or trailing underscores are "
"not allowed."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:182
msgid ":pep:`515` -- Underscores in Numeric Literals"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:183
msgid "PEP written by Georg Brandl and Serhiy Storchaka."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:189
msgid "PEP 523: Adding a frame evaluation API to CPython"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:191
msgid ""
"While Python provides extensive support to customize how code executes, one "
"place it has not done so is in the evaluation of frame objects. If you "
"wanted some way to intercept frame evaluation in Python there really wasn't "
"any way without directly manipulating function pointers for defined "
"functions."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:197
msgid ""
":pep:`523` changes this by providing an API to make frame evaluation "
"pluggable at the C level. This will allow for tools such as debuggers and "
"JITs to intercept frame evaluation before the execution of Python code "
"begins. This enables the use of alternative evaluation implementations for "
"Python code, tracking frame evaluation, etc."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:204
msgid ""
"This API is not part of the limited C API and is marked as private to signal "
"that usage of this API is expected to be limited and only applicable to very "
"select, low-level use-cases. Semantics of the API will change with Python as "
"necessary."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:211
msgid ":pep:`523` -- Adding a frame evaluation API to CPython"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:212
msgid "PEP written by Brett Cannon and Dino Viehland."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:218
msgid "PEP 519: Adding a file system path protocol"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:220
msgid ""
"File system paths have historically been represented as :class:`str` or :"
"class:`bytes` objects. This has led to people who write code which operate "
"on file system paths to assume that such objects are only one of those two "
"types (an :class:`int` representing a file descriptor does not count as that "
"is not a file path). Unfortunately that assumption prevents alternative "
"object representations of file system paths like :mod:`pathlib` from working "
"with pre-existing code, including Python's standard library."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:229
msgid ""
"To fix this situation, a new interface represented by :class:`os.PathLike` "
"has been defined. By implementing the :meth:`~os.PathLike.__fspath__` "
"method, an object signals that it represents a path. An object can then "
"provide a low-level representation of a file system path as a :class:`str` "
"or :class:`bytes` object. This means an object is considered :term:`path-"
"like <path-like object>` if it implements :class:`os.PathLike` or is a :"
"class:`str` or :class:`bytes` object which represents a file system path. "
"Code can use :func:`os.fspath`, :func:`os.fsdecode`, or :func:`os.fsencode` "
"to explicitly get a :class:`str` and/or :class:`bytes` representation of a "
"path-like object."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:242
msgid ""
"The built-in :func:`open` function has been updated to accept :class:`os."
"PathLike` objects as have all relevant functions in the :mod:`os` and :mod:"
"`os.path` modules. :c:func:`PyUnicode_FSConverter` and :c:func:"
"`PyUnicode_FSConverter` have been changed to accept path-like objects. The :"
"class:`os.DirEntry` class and relevant classes in :mod:`pathlib` have also "
"been updated to implement :class:`os.PathLike`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:250
msgid ""
"The hope in is that updating the fundamental functions for operating on file "
"system paths will lead to third-party code to implicitly support all :term:"
"`path-like objects <path-like object>` without any code changes or at least "
"very minimal ones (e.g. calling :func:`os.fspath` at the beginning of code "
"before operating on a path-like object)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:257
msgid ""
"Here are some examples of how the new interface allows for :class:`pathlib."
"Path` to be used more easily and transparently with pre-existing code::"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:274
msgid ""
"(Implemented by Brett Cannon, Ethan Furman, Dusty Phillips, and Jelle "
"Zijlstra.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:278
msgid ":pep:`519` -- Adding a file system path protocol"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:279
msgid "PEP written by Brett Cannon and Koos Zevenhoven."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:285
msgid "PEP 498: Formatted string literals"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:287
msgid ""
"Formatted string literals are a new kind of string literal, prefixed with "
"``'f'``. They are similar to the format strings accepted by :meth:`str."
"format`. They contain replacement fields surrounded by curly braces. The "
"replacement fields are expressions, which are evaluated at run time, and "
"then formatted using the :func:`format` protocol::"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:297
msgid "See :pep:`498` and the main documentation at :ref:`f-strings`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:303
msgid "PEP 526: Syntax for variable annotations"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:305
msgid ""
":pep:`484` introduced standard for type annotations of function parameters, "
"a.k.a. type hints. This PEP adds syntax to Python for annotating the types "
"of variables including class variables and instance variables::"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:316
msgid ""
"Just as for function annotations, the Python interpreter does not attach any "
"particular meaning to variable annotations and only stores them in a special "
"attribute ``__annotations__`` of a class or module. In contrast to variable "
"declarations in statically typed languages, the goal of annotation syntax is "
"to provide an easy way to specify structured type metadata for third party "
"tools and libraries via the abstract syntax tree and the ``__annotations__`` "
"attribute."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:328
msgid ":pep:`526` -- Syntax for variable annotations."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:327
msgid ""
"PEP written by Ryan Gonzalez, Philip House, Ivan Levkivskyi, Lisa Roach, and "
"Guido van Rossum. Implemented by Ivan Levkivskyi."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:330
msgid ""
"Tools that use or will use the new syntax: `mypy <http://github.com/python/"
"mypy>`_, `pytype <http://github.com/google/pytype>`_, PyCharm, etc."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:338
msgid "PEP 529: Change Windows filesystem encoding to UTF-8"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:340
msgid ""
"Representing filesystem paths is best performed with str (Unicode) rather "
"than bytes. However, there are some situations where using bytes is "
"sufficient and correct."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:344
msgid ""
"Prior to Python 3.6, data loss could result when using bytes paths on "
"Windows. With this change, using bytes to represent paths is now supported "
"on Windows, provided those bytes are encoded with the encoding returned by :"
"func:`sys.getfilesystemencoding()`, which now defaults to ``'utf-8'``."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:349
msgid ""
"Applications that do not use str to represent paths should use :func:`os."
"fsencode()` and :func:`os.fsdecode()` to ensure their bytes are correctly "
"encoded. To revert to the previous behaviour, set :envvar:"
"`PYTHONLEGACYWINDOWSFSENCODING` or call :func:`sys."
"_enablelegacywindowsfsencoding`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:355
msgid ""
"See :pep:`529` for more information and discussion of code modifications "
"that may be required."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:360
msgid ""
"This change is considered experimental for 3.6.0 beta releases. The default "
"encoding may change before the final release."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:366
msgid "PEP 487: Simpler customization of class creation"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:368
msgid ""
"Upon subclassing a class, the ``__init_subclass__`` classmethod (if defined) "
"is called on the base class. This makes it straightforward to write classes "
"that customize initialization of future subclasses without introducing the "
"complexity of a full custom metaclass."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:373
msgid ""
"The descriptor protocol has also been expanded to include a new optional "
"method, ``__set_name__``. Whenever a new class is defined, the new method "
"will be called on all descriptors included in the definition, providing them "
"with a reference to the class being defined and the name given to the "
"descriptor within the class namespace."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:379
msgid ""
"Also see :pep:`487` and the updated class customization documentation at :"
"ref:`class-customization` and :ref:`descriptors`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:382
msgid "(Contributed by Martin Teichmann in :issue:`27366`)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:387
msgid "PEP 528: Change Windows console encoding to UTF-8"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:389
msgid ""
"The default console on Windows will now accept all Unicode characters and "
"provide correctly read str objects to Python code. ``sys.stdin``, ``sys."
"stdout`` and ``sys.stderr`` now default to utf-8 encoding."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:393
msgid ""
"This change only applies when using an interactive console, and not when "
"redirecting files or pipes. To revert to the previous behaviour for "
"interactive console use, set :envvar:`PYTHONLEGACYWINDOWSIOENCODING`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:399
msgid ":pep:`528` -- Change Windows console encoding to UTF-8"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:400
msgid "PEP written and implemented by Steve Dower."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:403
msgid "PYTHONMALLOC environment variable"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:405
msgid ""
"The new :envvar:`PYTHONMALLOC` environment variable allows setting the "
"Python memory allocators and/or install debug hooks."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:408
msgid ""
"It is now possible to install debug hooks on Python memory allocators on "
"Python compiled in release mode using ``PYTHONMALLOC=debug``. Effects of "
"debug hooks:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:411
msgid "Newly allocated memory is filled with the byte ``0xCB``"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:412
msgid "Freed memory is filled with the byte ``0xDB``"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:413
msgid ""
"Detect violations of Python memory allocator API. For example, :c:func:"
"`PyObject_Free` called on a memory block allocated by :c:func:`PyMem_Malloc`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:416
msgid "Detect write before the start of the buffer (buffer underflow)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:417
msgid "Detect write after the end of the buffer (buffer overflow)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:418
msgid ""
"Check that the :term:`GIL <global interpreter lock>` is held when allocator "
"functions of :c:data:`PYMEM_DOMAIN_OBJ` (ex: :c:func:`PyObject_Malloc`) and :"
"c:data:`PYMEM_DOMAIN_MEM` (ex: :c:func:`PyMem_Malloc`) domains are called."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:422
msgid "Checking if the GIL is held is also a new feature of Python 3.6."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:424
msgid ""
"See the :c:func:`PyMem_SetupDebugHooks` function for debug hooks on Python "
"memory allocators."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:427
msgid ""
"It is now also possible to force the usage of the :c:func:`malloc` allocator "
"of the C library for all Python memory allocations using "
"``PYTHONMALLOC=malloc``. It helps to use external memory debuggers like "
"Valgrind on a Python compiled in release mode."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:432
msgid ""
"On error, the debug hooks on Python memory allocators now use the :mod:"
"`tracemalloc` module to get the traceback where a memory block was allocated."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:436
msgid ""
"Example of fatal error on buffer overflow using ``python3.6 -X "
"tracemalloc=5`` (store 5 frames in traces)::"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:473
msgid "(Contributed by Victor Stinner in :issue:`26516` and :issue:`26564`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:477
msgid "DTrace and SystemTap probing support"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:479
msgid ""
"Python can now be built ``--with-dtrace`` which enables static markers for "
"the following events in the interpreter:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:482
msgid "function call/return"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:484
msgid "garbage collection started/finished"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:486
msgid "line of code executed."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:488
msgid ""
"This can be used to instrument running interpreters in production, without "
"the need to recompile specific debug builds or providing application-"
"specific profiling/debugging code."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:492
msgid "More details in :ref:`instrumentation`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:494
msgid ""
"The current implementation is tested on Linux and macOS. Additional markers "
"may be added in the future."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:497
msgid ""
"(Contributed by Łukasz Langa in :issue:`21590`, based on patches by Jesús "
"Cea Avión, David Malcolm, and Nikhil Benesch.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:504
msgid "PEP 520: Preserving Class Attribute Definition Order"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:506
msgid ""
"Attributes in a class definition body have a natural ordering: the same "
"order in which the names appear in the source. This order is now preserved "
"in the new class's ``__dict__`` attribute."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:510
msgid ""
"Also, the effective default class *execution* namespace (returned from "
"``type.__prepare__()``) is now an insertion-order-preserving mapping."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:515
msgid ":pep:`520` -- Preserving Class Attribute Definition Order"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:516 ../Doc/whatsnew/3.6.rst:530
msgid "PEP written and implemented by Eric Snow."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:522
msgid "PEP 468: Preserving Keyword Argument Order"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:524
msgid ""
"``**kwargs`` in a function signature is now guaranteed to be an insertion-"
"order-preserving mapping."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:529
msgid ":pep:`468` -- Preserving Keyword Argument Order"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:535
msgid "PEP 509: Add a private version to dict"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:537
msgid ""
"Add a new private version to the builtin ``dict`` type, incremented at each "
"dictionary creation and at each dictionary change, to implement fast guards "
"on namespaces."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:541
msgid "(Contributed by Victor Stinner in :issue:`26058`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:545
msgid "Other Language Changes"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:547
msgid "Some smaller changes made to the core Python language are:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:549
msgid ""
":func:`dict` now uses a \"compact\" representation `pioneered by PyPy "
"<https://morepypy.blogspot.com/2015/01/faster-more-memory-efficient-and-more."
"html>`_. The memory usage of the new :func:`dict` is between 20% and 25% "
"smaller compared to Python 3.5. :pep:`468` (Preserving the order of "
"``**kwargs`` in a function.) is implemented by this. The order-preserving "
"aspect of this new implementation is considered an implementation detail and "
"should not be relied upon (this may change in the future, but it is desired "
"to have this new dict implementation in the language for a few releases "
"before changing the language spec to mandate order-preserving semantics for "
"all current and future Python implementations; this also helps preserve "
"backwards-compatibility with older versions of the language where random "
"iteration order is still in effect, e.g. Python 3.5). (Contributed by INADA "
"Naoki in :issue:`27350`. Idea `originally suggested by Raymond Hettinger "
"<https://mail.python.org/pipermail/python-dev/2012-December/123028.html>`_.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:567
msgid ""
"Long sequences of repeated traceback lines are now abbreviated as ``"
"\"[Previous line repeated {count} more times]\"`` (see :ref:`py36-traceback` "
"for an example). (Contributed by Emanuel Barry in :issue:`26823`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:572
msgid ""
"Import now raises the new exception :exc:`ModuleNotFoundError` (subclass of :"
"exc:`ImportError`) when it cannot find a module. Code that current checks "
"for ImportError (in try-except) will still work."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:578
msgid "New Modules"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:580 ../Doc/whatsnew/3.6.rst:1233
msgid "None yet."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:584
msgid "Improved Modules"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:591
msgid "asyncio"
msgstr "asyncio"
#: ../Doc/whatsnew/3.6.rst:593
msgid ""
"Since the :mod:`asyncio` module is :term:`provisional <provisional api>`, "
"all changes introduced in Python 3.6 have also been backported to Python 3.5."
"x."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:597
msgid "Notable changes in the :mod:`asyncio` module since Python 3.5.0:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:599
msgid ""
"The :func:`~asyncio.ensure_future` function and all functions that use it, "
"such as :meth:`loop.run_until_complete() <asyncio.BaseEventLoop."
"run_until_complete>`, now accept all kinds of :term:`awaitable objects "
"<awaitable>`. (Contributed by Yury Selivanov.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:604
msgid ""
"New :func:`~asyncio.run_coroutine_threadsafe` function to submit coroutines "
"to event loops from other threads. (Contributed by Vincent Michel.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:608
msgid ""
"New :meth:`Transport.is_closing() <asyncio.BaseTransport.is_closing>` method "
"to check if the transport is closing or closed. (Contributed by Yury "
"Selivanov.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:612
msgid ""
"The :meth:`loop.create_server() <asyncio.BaseEventLoop.create_server>` "
"method can now accept a list of hosts. (Contributed by Yann Sionneau.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:616
msgid ""
"New :meth:`loop.create_future() <asyncio.BaseEventLoop.create_future>` "
"method to create Future objects. This allows alternative event loop "
"implementations, such as `uvloop <https://github.com/MagicStack/uvloop>`_, "
"to provide a faster :class:`asyncio.Future` implementation. (Contributed by "
"Yury Selivanov.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:623
msgid ""
"New :meth:`loop.get_exception_handler() <asyncio.BaseEventLoop."
"get_exception_handler>` method to get the current exception handler. "
"(Contributed by Yury Selivanov.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:627
msgid ""
"New :meth:`StreamReader.readuntil() <asyncio.StreamReader.readuntil>` method "
"to read data from the stream until a separator bytes sequence appears. "
"(Contributed by Mark Korenberg.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:632
msgid ""
"The :meth:`loop.getaddrinfo() <asyncio.BaseEventLoop.getaddrinfo>` method is "
"optimized to avoid calling the system ``getaddrinfo`` function if the "
"address is already resolved. (Contributed by A. Jesse Jiryu Davis.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:639
msgid "contextlib"
msgstr "contextlib"
#: ../Doc/whatsnew/3.6.rst:641
msgid ""
"The :class:`contextlib.AbstractContextManager` class has been added to "
"provide an abstract base class for context managers. It provides a sensible "
"default implementation for `__enter__()` which returns ``self`` and leaves "
"`__exit__()` an abstract method. A matching class has been added to the :mod:"
"`typing` module as :class:`typing.ContextManager`. (Contributed by Brett "
"Cannon in :issue:`25609`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:651
msgid "venv"
msgstr "venv"
#: ../Doc/whatsnew/3.6.rst:653
msgid ""
":mod:`venv` accepts a new parameter ``--prompt``. This parameter provides an "
"alternative prefix for the virtual environment. (Proposed by Łukasz."
"Balcerzak and ported to 3.6 by Stéphane Wirtel in :issue:`22829`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:659
msgid "datetime"
msgstr "datetime"
#: ../Doc/whatsnew/3.6.rst:661
msgid ""
"The :meth:`datetime.strftime() <datetime.datetime.strftime>` and :meth:`date."
"strftime() <datetime.date.strftime>` methods now support ISO 8601 date "
"directives ``%G``, ``%u`` and ``%V``. (Contributed by Ashley Anderson in :"
"issue:`12006`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:668
msgid "distutils.command.sdist"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:670
msgid ""
"The ``default_format`` attribute has been removed from :class:`distutils."
"command.sdist.sdist` and the ``formats`` attribute defaults to "
"``['gztar']``. Although not anticipated, Any code relying on the presence of "
"``default_format`` may need to be adapted. See :issue:`27819` for more "
"details."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:678
msgid "email"
msgstr "email"
#: ../Doc/whatsnew/3.6.rst:680
msgid ""
"The new email API, enabled via the *policy* keyword to various constructors, "
"is no longer provisional. The :mod:`email` documentation has been "
"reorganized and rewritten to focus on the new API, while retaining the old "
"documentation for the legacy API. (Contributed by R. David Murray in :issue:"
"`24277`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:685
msgid ""
"The :mod:`email.mime` classes now all accept an optional *policy* keyword. "
"(Contributed by Berker Peksag in :issue:`27331`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:688
msgid ""
"The :class:`~email.generator.DecodedGenerator` now supports the *policy* "
"keyword."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:691
msgid ""
"There is a new :mod:`~email.policy` attribute, :attr:`~email.policy.Policy."
"message_factory`, that controls what class is used by default when the "
"parser creates new message objects. For the :attr:`email.policy.compat32` "
"policy this is :class:`~email.message.Message`, for the new policies it is :"
"class:`~email.message.EmailMessage`. (Contributed by R. David Murray in :"
"issue:`20476`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:700
msgid "encodings"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:702
msgid ""
"On Windows, added the ``'oem'`` encoding to use ``CP_OEMCP`` and the "
"``'ansi'`` alias for the existing ``'mbcs'`` encoding, which uses the "
"``CP_ACP`` code page."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:707
msgid "faulthandler"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:709
msgid ""
"On Windows, the :mod:`faulthandler` module now installs a handler for "
"Windows exceptions: see :func:`faulthandler.enable`. (Contributed by Victor "
"Stinner in :issue:`23848`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:715
msgid "hashlib"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:717
msgid ""
":mod:`hashlib` supports OpenSSL 1.1.0. The minimum recommend version is "
"1.0.2. It has been tested with 0.9.8zc, 0.9.8zh and 1.0.1t as well as "
"LibreSSL 2.3 and 2.4. (Contributed by Christian Heimes in :issue:`26470`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:722
msgid ""
"BLAKE2 hash functions were added to the module. :func:`~hashlib.blake2b` "
"and :func:`~hashlib.blake2s` are always available and support the full "
"feature set of BLAKE2. (Contributed by Christian Heimes in :issue:`26798` "
"based on code by Dmitry Chestnykh and Samuel Neves. Documentation written by "
"Dmitry Chestnykh.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:728
msgid ""
"The SHA-3 hash functions :func:`~hashlib.sha3_224`, :func:`~hashlib."
"sha3_256`, :func:`~hashlib.sha3_384`, :func:`~hashlib.sha3_512`, and SHAKE "
"hash functions :func:`~hashlib.shake_128` and :func:`~hashlib.shake_256` "
"were added. (Contributed by Christian Heimes in :issue:`16113`. Keccak Code "
"Package by Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche, "
"and Ronny Van Keer.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:735
msgid ""
"The password-based key derivation function :func:`~hashlib.scrypt` is now "
"available with OpenSSL 1.1.0 and newer. (Contributed by Christian Heimes in :"
"issue:`27928`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:740
msgid "http.client"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:742
msgid ""
":meth:`HTTPConnection.request() <http.client.HTTPConnection.request>` and :"
"meth:`~http.client.HTTPConnection.endheaders` both now support chunked "
"encoding request bodies. (Contributed by Demian Brecht and Rolf Krahl in :"
"issue:`12319`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:749
msgid "idlelib and IDLE"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:751
msgid ""
"The idlelib package is being modernized and refactored to make IDLE look and "
"work better and to make the code easier to understand, test, and improve. "
"Part of making IDLE look better, especially on Linux and Mac, is using ttk "
"widgets, mostly in the dialogs. As a result, IDLE no longer runs with tcl/"
"tk 8.4. It now requires tcl/tk 8.5 or 8.6. We recommend running the latest "
"release of either."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:753
msgid ""
"'Modernizing' includes renaming and consolidation of idlelib modules. The "
"renaming of files with partial uppercase names is similar to the renaming "
"of, for instance, Tkinter and TkFont to tkinter and tkinter.font in 3.0. As "
"a result, imports of idlelib files that worked in 3.5 will usually not work "
"in 3.6. At least a module name change will be needed (see idlelib/README."
"txt), sometimes more. (Name changes contributed by Al Swiegart and Terry "
"Reedy in :issue:`24225`. Most idlelib patches since have been and will be "
"part of the process.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:755
msgid ""
"In compensation, the eventual result with be that some idlelib classes will "
"be easier to use, with better APIs and docstrings explaining them. "
"Additional useful information will be added to idlelib when available."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:759
msgid "importlib"
msgstr "importlib"
#: ../Doc/whatsnew/3.6.rst:761
msgid ""
":class:`importlib.util.LazyLoader` now calls :meth:`~importlib.abc.Loader."
"create_module` on the wrapped loader, removing the restriction that :class:"
"`importlib.machinery.BuiltinImporter` and :class:`importlib.machinery."
"ExtensionFileLoader` couldn't be used with :class:`importlib.util."
"LazyLoader`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:767
msgid ""
":func:`importlib.util.cache_from_source`, :func:`importlib.util."
"source_from_cache`, and :func:`importlib.util.spec_from_file_location` now "
"accept a :term:`path-like object`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:774
msgid "json"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:776
msgid ""
":func:`json.load` and :func:`json.loads` now support binary input. Encoded "
"JSON should be represented using either UTF-8, UTF-16, or UTF-32. "
"(Contributed by Serhiy Storchaka in :issue:`17909`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:782
msgid "os"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:784
msgid ""
"A new :meth:`~os.scandir.close` method allows explicitly closing a :func:"
"`~os.scandir` iterator. The :func:`~os.scandir` iterator now supports the :"
"term:`context manager` protocol. If a :func:`scandir` iterator is neither "
"exhausted nor explicitly closed a :exc:`ResourceWarning` will be emitted in "
"its destructor. (Contributed by Serhiy Storchaka in :issue:`25994`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:791
msgid ""
"The Linux ``getrandom()`` syscall (get random bytes) is now exposed as the "
"new :func:`os.getrandom` function. (Contributed by Victor Stinner, part of "
"the :pep:`524`)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:795
msgid ""
"See the summary for :ref:`PEP 519 <pep-519>` for details on how the :mod:"
"`os` and :mod:`os.path` modules now support :term:`path-like objects <path-"
"like object>`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:801
msgid "pickle"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:803
msgid ""
"Objects that need calling ``__new__`` with keyword arguments can now be "
"pickled using :ref:`pickle protocols <pickle-protocols>` older than protocol "
"version 4. Protocol version 4 already supports this case. (Contributed by "
"Serhiy Storchaka in :issue:`24164`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:810
msgid "re"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:812
msgid ""
"Added support of modifier spans in regular expressions. Examples: ``'(?i:"
"p)ython'`` matches ``'python'`` and ``'Python'``, but not ``'PYTHON'``; ``'(?"
"i)g(?-i:v)r'`` matches ``'GvR'`` and ``'gvr'``, but not ``'GVR'``. "
"(Contributed by Serhiy Storchaka in :issue:`433028`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:817
msgid ""
"Match object groups can be accessed by ``__getitem__``, which is equivalent "
"to ``group()``. So ``mo['name']`` is now equivalent to ``mo."
"group('name')``. (Contributed by Eric Smith in :issue:`24454`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:823
msgid "readline"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:825
msgid ""
"Added :func:`~readline.set_auto_history` to enable or disable automatic "
"addition of input to the history list. (Contributed by Tyler Crompton in :"
"issue:`26870`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:831
msgid "rlcompleter"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:833
msgid ""
"Private and special attribute names now are omitted unless the prefix starts "
"with underscores. A space or a colon is added after some completed "
"keywords. (Contributed by Serhiy Storchaka in :issue:`25011` and :issue:"
"`25209`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:837
msgid ""
"Names of most attributes listed by :func:`dir` are now completed. "
"Previously, names of properties and slots which were not yet created on an "
"instance were excluded. (Contributed by Martin Panter in :issue:`25590`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:843
msgid "site"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:845
msgid ""
"When specifying paths to add to :attr:`sys.path` in a `.pth` file, you may "
"now specify file paths on top of directories (e.g. zip files). (Contributed "
"by Wolfgang Langner in :issue:`26587`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:851
msgid "sqlite3"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:853
msgid ""
":attr:`sqlite3.Cursor.lastrowid` now supports the ``REPLACE`` statement. "
"(Contributed by Alex LordThorsen in :issue:`16864`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:858
msgid "socket"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:860
msgid ""
"The :func:`~socket.socket.ioctl` function now supports the :data:`~socket."
"SIO_LOOPBACK_FAST_PATH` control code. (Contributed by Daniel Stokes in :"
"issue:`26536`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:864
msgid ""
"The :meth:`~socket.socket.getsockopt` constants ``SO_DOMAIN``, "
"``SO_PROTOCOL``, ``SO_PEERSEC``, and ``SO_PASSSEC`` are now supported. "
"(Contributed by Christian Heimes in :issue:`26907`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:868
msgid ""
"The socket module now supports the address family :data:`~socket.AF_ALG` to "
"interface with Linux Kernel crypto API. ``ALG_*``, ``SOL_ALG`` and :meth:"
"`~socket.socket.sendmsg_afalg` were added. (Contributed by Christian Heimes "
"in :issue:`27744` with support from Victor Stinner.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:875
msgid "socketserver"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:877
msgid ""
"Servers based on the :mod:`socketserver` module, including those defined in :"
"mod:`http.server`, :mod:`xmlrpc.server` and :mod:`wsgiref.simple_server`, "
"now support the :term:`context manager` protocol. (Contributed by Aviv "
"Palivoda in :issue:`26404`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:883
msgid ""
"The :attr:`~socketserver.StreamRequestHandler.wfile` attribute of :class:"
"`~socketserver.StreamRequestHandler` classes now implements the :class:`io."
"BufferedIOBase` writable interface. In particular, calling :meth:`~io."
"BufferedIOBase.write` is now guaranteed to send the data in full. "
"(Contributed by Martin Panter in :issue:`26721`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:890
msgid "ssl"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:892
msgid ""
":mod:`ssl` supports OpenSSL 1.1.0. The minimum recommend version is 1.0.2. "
"It has been tested with 0.9.8zc, 0.9.8zh and 1.0.1t as well as LibreSSL 2.3 "
"and 2.4. (Contributed by Christian Heimes in :issue:`26470`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:897
msgid ""
"3DES has been removed from the default cipher suites and ChaCha20 Poly1305 "
"cipher suites are now in the right position. (Contributed by Christian "
"Heimes in :issue:`27850` and :issue:`27766`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:901
msgid ""
":class:`~ssl.SSLContext` has better default configuration for options and "
"ciphers. (Contributed by Christian Heimes in :issue:`28043`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:905
msgid ""
"SSL session can be copied from one client-side connection to another with :"
"class:`~ssl.SSLSession`. TLS session resumption can speed up the initial "
"handshake, reduce latency and improve performance (Contributed by Christian "
"Heimes in :issue:`19500` based on a draft by Alex Warhawk.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:911
msgid ""
"All constants and flags have been converted to :class:`~enum.IntEnum` and :"
"class:`~enum.IntFlags`. (Contributed by Christian Heimes in :issue:`28025`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:915
msgid ""
"Server and client-side specific TLS protocols for :class:`~ssl.SSLContext` "
"were added. (Contributed by Christian Heimes in :issue:`28085`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:919
msgid ""
"General resource ids (``GEN_RID``) in subject alternative name extensions no "
"longer case a SystemError. (Contributed by Christian Heimes in :issue:"
"`27691`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:924
msgid "subprocess"
msgstr "subprocess"
#: ../Doc/whatsnew/3.6.rst:926
msgid ""
":class:`subprocess.Popen` destructor now emits a :exc:`ResourceWarning` "
"warning if the child process is still running. Use the context manager "
"protocol (``with proc: ...``) or call explicitly the :meth:`~subprocess."
"Popen.wait` method to read the exit status of the child process (Contributed "
"by Victor Stinner in :issue:`26741`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:932
msgid ""
"The :class:`subprocess.Popen` constructor and all functions that pass "
"arguments through to it now accept *encoding* and *errors* arguments. "
"Specifying either of these will enable text mode for the *stdin*, *stdout* "
"and *stderr* streams."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:937
msgid "telnetlib"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:939
msgid ""
":class:`~telnetlib.Telnet` is now a context manager (contributed by Stéphane "
"Wirtel in :issue:`25485`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:944
msgid "tkinter"
msgstr "tkinter"
#: ../Doc/whatsnew/3.6.rst:946
msgid ""
"Added methods :meth:`~tkinter.Variable.trace_add`, :meth:`~tkinter.Variable."
"trace_remove` and :meth:`~tkinter.Variable.trace_info` in the :class:"
"`tkinter.Variable` class. They replace old methods :meth:`~tkinter.Variable."
"trace_variable`, :meth:`~tkinter.Variable.trace`, :meth:`~tkinter.Variable."
"trace_vdelete` and :meth:`~tkinter.Variable.trace_vinfo` that use obsolete "
"Tcl commands and might not work in future versions of Tcl. (Contributed by "
"Serhiy Storchaka in :issue:`22115`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:959
msgid "traceback"
msgstr "traceback"
#: ../Doc/whatsnew/3.6.rst:961
msgid ""
"Both the traceback module and the interpreter's builtin exception display "
"now abbreviate long sequences of repeated lines in tracebacks as shown in "
"the following example::"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:976
msgid "(Contributed by Emanuel Barry in :issue:`26823`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:980
msgid "typing"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:982
msgid ""
"The :class:`typing.ContextManager` class has been added for representing :"
"class:`contextlib.AbstractContextManager`. (Contributed by Brett Cannon in :"
"issue:`25609`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:988
msgid "unicodedata"
msgstr "unicodedata"
#: ../Doc/whatsnew/3.6.rst:990
msgid ""
"The internal database has been upgraded to use Unicode 9.0.0. (Contributed "
"by Benjamin Peterson.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:995
msgid "unittest.mock"
msgstr "unittest.mock"
#: ../Doc/whatsnew/3.6.rst:997
msgid "The :class:`~unittest.mock.Mock` class has the following improvements:"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:999
msgid ""
"Two new methods, :meth:`Mock.assert_called() <unittest.mock.Mock."
"assert_called>` and :meth:`Mock.assert_called_once() <unittest.mock.Mock."
"assert_called_once>` to check if the mock object was called. (Contributed by "
"Amit Saha in :issue:`26323`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1007
msgid "urllib.request"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1009
msgid ""
"If a HTTP request has a file or iterable body (other than a bytes object) "
"but no Content-Length header, rather than throwing an error, :class:`~urllib."
"request.AbstractHTTPHandler` now falls back to use chunked transfer "
"encoding. (Contributed by Demian Brecht and Rolf Krahl in :issue:`12319`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1017
msgid "urllib.robotparser"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1019
msgid ""
":class:`~urllib.robotparser.RobotFileParser` now supports the ``Crawl-"
"delay`` and ``Request-rate`` extensions. (Contributed by Nikolay Bogoychev "
"in :issue:`16099`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1025
msgid "warnings"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1027
msgid ""
"A new optional *source* parameter has been added to the :func:`warnings."
"warn_explicit` function: the destroyed object which emitted a :exc:"
"`ResourceWarning`. A *source* attribute has also been added to :class:"
"`warnings.WarningMessage` (contributed by Victor Stinner in :issue:`26568` "
"and :issue:`26567`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1033
msgid ""
"When a :exc:`ResourceWarning` warning is logged, the :mod:`tracemalloc` is "
"now used to try to retrieve the traceback where the detroyed object was "
"allocated."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1036
msgid "Example with the script ``example.py``::"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1046
msgid "Output of the command ``python3.6 -Wd -X tracemalloc=5 example.py``::"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1056
msgid ""
"The \"Object allocated at\" traceback is new and only displayed if :mod:"
"`tracemalloc` is tracing Python memory allocations and if the :mod:"
"`warnings` was already imported."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1062
msgid "winreg"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1064
msgid ""
"Added the 64-bit integer type :data:`REG_QWORD <winreg.REG_QWORD>`. "
"(Contributed by Clement Rouault in :issue:`23026`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1069
msgid "winsound"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1071
msgid ""
"Allowed keyword arguments to be passed to :func:`Beep <winsound.Beep>`, :"
"func:`MessageBeep <winsound.MessageBeep>`, and :func:`PlaySound <winsound."
"PlaySound>` (:issue:`27982`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1077
msgid "xmlrpc.client"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1079
msgid ""
"The module now supports unmarshalling additional data types used by Apache "
"XML-RPC implementation for numerics and ``None``. (Contributed by Serhiy "
"Storchaka in :issue:`26885`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1085
msgid "zipfile"
msgstr "zipfile"
#: ../Doc/whatsnew/3.6.rst:1087
msgid ""
"A new :meth:`ZipInfo.from_file() <zipfile.ZipInfo.from_file>` class method "
"allows making a :class:`~zipfile.ZipInfo` instance from a filesystem file. A "
"new :meth:`ZipInfo.is_dir() <zipfile.ZipInfo.is_dir>` method can be used to "
"check if the :class:`~zipfile.ZipInfo` instance represents a directory. "
"(Contributed by Thomas Kluyver in :issue:`26039`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1093
msgid ""
"The :meth:`ZipFile.open() <zipfile.ZipFile.open>` method can now be used to "
"write data into a ZIP file, as well as for extracting data. (Contributed by "
"Thomas Kluyver in :issue:`26039`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1099
msgid "zlib"
msgstr "zlib"
#: ../Doc/whatsnew/3.6.rst:1101
msgid ""
"The :func:`~zlib.compress` function now accepts keyword arguments. "
"(Contributed by Aviv Palivoda in :issue:`26243`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1106
msgid "fileinput"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1108
msgid ""
":func:`~fileinput.hook_encoded` now supports the *errors* argument. "
"(Contributed by Joseph Hackman in :issue:`25788`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1113
msgid "Optimizations"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1115
msgid ""
"The ASCII decoder is now up to 60 times as fast for error handlers "
"``surrogateescape``, ``ignore`` and ``replace`` (Contributed by Victor "
"Stinner in :issue:`24870`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1119
msgid ""
"The ASCII and the Latin1 encoders are now up to 3 times as fast for the "
"error handler ``surrogateescape`` (Contributed by Victor Stinner in :issue:"
"`25227`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1122
msgid ""
"The UTF-8 encoder is now up to 75 times as fast for error handlers "
"``ignore``, ``replace``, ``surrogateescape``, ``surrogatepass`` (Contributed "
"by Victor Stinner in :issue:`25267`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1126
msgid ""
"The UTF-8 decoder is now up to 15 times as fast for error handlers "
"``ignore``, ``replace`` and ``surrogateescape`` (Contributed by Victor "
"Stinner in :issue:`25301`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1130
msgid ""
"``bytes % args`` is now up to 2 times faster. (Contributed by Victor Stinner "
"in :issue:`25349`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1133
msgid ""
"``bytearray % args`` is now between 2.5 and 5 times faster. (Contributed by "
"Victor Stinner in :issue:`25399`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1136
msgid ""
"Optimize :meth:`bytes.fromhex` and :meth:`bytearray.fromhex`: they are now "
"between 2x and 3.5x faster. (Contributed by Victor Stinner in :issue:"
"`25401`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1139
msgid ""
"Optimize ``bytes.replace(b'', b'.')`` and ``bytearray.replace(b'', b'.')``: "
"up to 80% faster. (Contributed by Josh Snider in :issue:`26574`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1142
msgid ""
"Allocator functions of the :c:func:`PyMem_Malloc` domain (:c:data:"
"`PYMEM_DOMAIN_MEM`) now use the :ref:`pymalloc memory allocator <pymalloc>` "
"instead of :c:func:`malloc` function of the C library. The pymalloc "
"allocator is optimized for objects smaller or equal to 512 bytes with a "
"short lifetime, and use :c:func:`malloc` for larger memory blocks. "
"(Contributed by Victor Stinner in :issue:`26249`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1149
msgid ""
":func:`pickle.load` and :func:`pickle.loads` are now up to 10% faster when "
"deserializing many small objects (Contributed by Victor Stinner in :issue:"
"`27056`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1153
msgid ""
"Passing :term:`keyword arguments <keyword argument>` to a function has an "
"overhead in comparison with passing :term:`positional arguments <positional "
"argument>`. Now in extension functions implemented with using Argument "
"Clinic this overhead is significantly decreased. (Contributed by Serhiy "
"Storchaka in :issue:`27574`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1159
msgid ""
"Optimized :func:`~glob.glob` and :func:`~glob.iglob` functions in the :mod:"
"`glob` module; they are now about 3--6 times faster. (Contributed by Serhiy "
"Storchaka in :issue:`25596`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1163
msgid ""
"Optimized globbing in :mod:`pathlib` by using :func:`os.scandir`; it is now "
"about 1.5--4 times faster. (Contributed by Serhiy Storchaka in :issue:"
"`26032`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1168
msgid "Build and C API Changes"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1170
msgid ""
"Python now requires some C99 support in the toolchain to build. For more "
"information, see :pep:`7`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1173
msgid ""
"Cross-compiling CPython with the Android NDK and the Android API level set "
"to 21 (Android 5.0 Lollilop) or greater, runs successfully. While Android is "
"not yet a supported platform, the Python test suite runs on the Android "
"emulator with only about 16 tests failures. See the Android meta-issue :"
"issue:`26865`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1178
msgid ""
"The ``--with-optimizations`` configure flag has been added. Turning it on "
"will activate LTO and PGO build support (when available). (Original patch by "
"Alecsandru Patrascu of Intel in :issue:`26539`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1182
msgid ""
"New :c:func:`Py_FinalizeEx` API which indicates if flushing buffered data "
"failed (:issue:`5319`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1185
msgid ""
":c:func:`PyArg_ParseTupleAndKeywords` now supports :ref:`positional-only "
"parameters <positional-only_parameter>`. Positional-only parameters are "
"defined by empty names. (Contributed by Serhiy Storchaka in :issue:`26282`)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1190
msgid ""
"``PyTraceback_Print`` method now abbreviates long sequences of repeated "
"lines as ``\"[Previous line repeated {count} more times]\"``. (Contributed "
"by Emanuel Barry in :issue:`26823`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1196
msgid "Deprecated"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1199
msgid "Deprecated Build Options"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1201
msgid ""
"The ``--with-system-ffi`` configure flag is now on by default on non-OSX "
"UNIX platforms. It may be disabled by using ``--without-system-ffi``, but "
"using the flag is deprecated and will not be accepted in Python 3.7. OSX is "
"unaffected by this change. Note that many OS distributors already use the "
"``--with-system-ffi`` flag when building their system Python."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1209
msgid "New Keywords"
msgstr "Nouveaux mot-clefs"
#: ../Doc/whatsnew/3.6.rst:1211
msgid ""
"``async`` and ``await`` are not recommended to be used as variable, class, "
"function or module names. Introduced by :pep:`492` in Python 3.5, they will "
"become proper keywords in Python 3.7."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1217
msgid "Deprecated Python modules, functions and methods"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1219
msgid ""
":meth:`importlib.machinery.SourceFileLoader.load_module` and :meth:"
"`importlib.machinery.SourcelessFileLoader.load_module` are now deprecated. "
"They were the only remaining implementations of :meth:`importlib.abc.Loader."
"load_module` in :mod:`importlib` that had not been deprecated in previous "
"versions of Python in favour of :meth:`importlib.abc.Loader.exec_module`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1226
msgid ""
"The :mod:`tkinter.tix` module is now deprecated. :mod:`tkinter` users "
"should use :mod:`tkinter.ttk` instead."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1231
msgid "Deprecated functions and types of the C API"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1237
msgid "Deprecated features"
msgstr "Fonctionnalités dépréciées"
#: ../Doc/whatsnew/3.6.rst:1239
msgid ""
"The ``pyvenv`` script has been deprecated in favour of ``python3 -m venv``. "
"This prevents confusion as to what Python interpreter ``pyvenv`` is "
"connected to and thus what Python interpreter will be used by the virtual "
"environment. (Contributed by Brett Cannon in :issue:`25154`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1244
msgid ""
"When performing a relative import, falling back on ``__name__`` and "
"``__path__`` from the calling module when ``__spec__`` or ``__package__`` "
"are not defined now raises an :exc:`ImportWarning`. (Contributed by Rose "
"Ames in :issue:`25791`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1249
msgid ""
"Unlike to other :mod:`dbm` implementations, the :mod:`dbm.dumb` module "
"creates database in ``'r'`` and ``'w'`` modes if it doesn't exist and allows "
"modifying database in ``'r'`` mode. This behavior is now deprecated and "
"will be removed in 3.8. (Contributed by Serhiy Storchaka in :issue:`21708`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1255
msgid ""
"Undocumented support of general :term:`bytes-like objects <bytes-like "
"object>` as paths in :mod:`os` functions, :func:`compile` and similar "
"functions is now deprecated. (Contributed by Serhiy Storchaka in :issue:"
"`25791` and :issue:`26754`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1260
msgid ""
"The undocumented ``extra_path`` argument to a distutils Distribution is now "
"considered deprecated, will raise a warning during install if set. Support "
"for this parameter will be dropped in a future Python release and likely "
"earlier through third party tools. See :issue:`27919` for details."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1266
msgid ""
"A backslash-character pair that is not a valid escape sequence now generates "
"a DeprecationWarning. Although this will eventually become a SyntaxError, "
"that will not be for several Python releases. (Contributed by Emanuel Barry "
"in :issue:`27364`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1271
msgid ""
"Inline flags ``(?letters)`` now should be used only at the start of the "
"regular expression. Inline flags in the middle of the regular expression "
"affects global flags in Python :mod:`re` module. This is an exception to "
"other regular expression engines that either apply flags to only part of the "
"regular expression or treat them as an error. To avoid distinguishing "
"inline flags in the middle of the regular expression now emit a deprecation "
"warning. It will be an error in future Python releases. (Contributed by "
"Serhiy Storchaka in :issue:`22493`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1280
msgid ""
"SSL-related arguments like ``certfile``, ``keyfile`` and ``check_hostname`` "
"in :mod:`ftplib`, :mod:`http.client`, :mod:`imaplib`, :mod:`poplib`, and :"
"mod:`smtplib` have been deprecated in favor of ``context``. (Contributed by "
"Christian Heimes in :issue:`28022`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1285
msgid ""
"A couple of protocols and functions of the :mod:`ssl` module are now "
"deprecated. Some features will no longer be available in future versions of "
"OpenSSL. Other features are deprecated in favor of a different API. "
"(Contributed by Christian Heimes in :issue:`28022` and :issue:`26470`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1292
msgid "Deprecated Python behavior"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1294
msgid ""
"Raising the :exc:`StopIteration` exception inside a generator will now "
"generate a :exc:`DeprecationWarning`, and will trigger a :exc:`RuntimeError` "
"in Python 3.7. See :ref:`whatsnew-pep-479` for details."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1300
msgid "Removed"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1303
msgid "API and Feature Removals"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1305
msgid ""
"``inspect.getmoduleinfo()`` was removed (was deprecated since CPython 3.3). :"
"func:`inspect.getmodulename` should be used for obtaining the module name "
"for a given path."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1309
msgid ""
"``traceback.Ignore`` class and ``traceback.usage``, ``traceback.modname``, "
"``traceback.fullmodname``, ``traceback.find_lines_from_code``, ``traceback."
"find_lines``, ``traceback.find_strings``, ``traceback."
"find_executable_lines`` methods were removed from the :mod:`traceback` "
"module. They were undocumented methods deprecated since Python 3.2 and "
"equivalent functionality is available from private methods."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1316
msgid ""
"The ``tk_menuBar()`` and ``tk_bindForTraversal()`` dummy methods in :mod:"
"`tkinter` widget classes were removed (corresponding Tk commands were "
"obsolete since Tk 4.0)."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1320
msgid ""
"The :meth:`~zipfile.ZipFile.open` method of the :class:`zipfile.ZipFile` "
"class no longer supports the ``'U'`` mode (was deprecated since Python 3.4). "
"Use :class:`io.TextIOWrapper` for reading compressed text files in :term:"
"`universal newlines` mode."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1325
msgid ""
"The undocumented ``IN``, ``CDROM``, ``DLFCN``, ``TYPES``, ``CDIO``, and "
"``STROPTS`` modules have been removed. They had been available in the "
"platform specific ``Lib/plat-*/`` directories, but were chronically out of "
"date, inconsistently available across platforms, and unmaintained. The "
"script that created these modules is still available in the source "
"distribution at :source:`Tools/scripts/h2py.py`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1334
msgid "Porting to Python 3.6"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1336
msgid ""
"This section lists previously described changes and other bugfixes that may "
"require changes to your code."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1340
msgid "Changes in 'python' Command Behavior"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1342
msgid ""
"The output of a special Python build with defined ``COUNT_ALLOCS``, "
"``SHOW_ALLOC_COUNT`` or ``SHOW_TRACK_COUNT`` macros is now off by default. "
"It can be re-enabled using the ``-X showalloccount`` option. It now outputs "
"to ``stderr`` instead of ``stdout``. (Contributed by Serhiy Storchaka in :"
"issue:`23034`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1350
msgid "Changes in the Python API"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1352
msgid ""
":mod:`sqlite3` no longer implicitly commit an open transaction before DDL "
"statements."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1355
msgid ""
"On Linux, :func:`os.urandom` now blocks until the system urandom entropy "
"pool is initialized to increase the security."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1358
msgid ""
"When :meth:`importlib.abc.Loader.exec_module` is defined, :meth:`importlib."
"abc.Loader.create_module` must also be defined."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1361
msgid ""
":c:func:`PyErr_SetImportError` now sets :exc:`TypeError` when its **msg** "
"argument is not set. Previously only ``NULL`` was returned."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1364
msgid ""
"The format of the ``co_lnotab`` attribute of code objects changed to support "
"negative line number delta. By default, Python does not emit bytecode with "
"negative line number delta. Functions using ``frame.f_lineno``, "
"``PyFrame_GetLineNumber()`` or ``PyCode_Addr2Line()`` are not affected. "
"Functions decoding directly ``co_lnotab`` should be updated to use a signed "
"8-bit integer type for the line number delta, but it's only required to "
"support applications using negative line number delta. See ``Objects/"
"lnotab_notes.txt`` for the ``co_lnotab`` format and how to decode it, and "
"see the :pep:`511` for the rationale."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1374
msgid ""
"The functions in the :mod:`compileall` module now return booleans instead of "
"``1`` or ``0`` to represent success or failure, respectively. Thanks to "
"booleans being a subclass of integers, this should only be an issue if you "
"were doing identity checks for ``1`` or ``0``. See :issue:`25768`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1379
msgid ""
"Reading the :attr:`~urllib.parse.SplitResult.port` attribute of :func:"
"`urllib.parse.urlsplit` and :func:`~urllib.parse.urlparse` results now "
"raises :exc:`ValueError` for out-of-range values, rather than returning :"
"const:`None`. See :issue:`20059`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1384
msgid ""
"The :mod:`imp` module now raises a :exc:`DeprecationWarning` instead of :exc:"
"`PendingDeprecationWarning`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1387
msgid ""
"The following modules have had missing APIs added to their :attr:`__all__` "
"attributes to match the documented APIs: :mod:`calendar`, :mod:`cgi`, :mod:"
"`csv`, :mod:`~xml.etree.ElementTree`, :mod:`enum`, :mod:`fileinput`, :mod:"
"`ftplib`, :mod:`logging`, :mod:`mailbox`, :mod:`mimetypes`, :mod:"
"`optparse`, :mod:`plistlib`, :mod:`smtpd`, :mod:`subprocess`, :mod:"
"`tarfile`, :mod:`threading` and :mod:`wave`. This means they will export "
"new symbols when ``import *`` is used. See :issue:`23883`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1397
msgid ""
"When performing a relative import, if ``__package__`` does not compare equal "
"to ``__spec__.parent`` then :exc:`ImportWarning` is raised. (Contributed by "
"Brett Cannon in :issue:`25791`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1401
msgid ""
"When a relative import is performed and no parent package is known, then :"
"exc:`ImportError` will be raised. Previously, :exc:`SystemError` could be "
"raised. (Contributed by Brett Cannon in :issue:`18018`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1405
msgid ""
"Servers based on the :mod:`socketserver` module, including those defined in :"
"mod:`http.server`, :mod:`xmlrpc.server` and :mod:`wsgiref.simple_server`, "
"now only catch exceptions derived from :exc:`Exception`. Therefore if a "
"request handler raises an exception like :exc:`SystemExit` or :exc:"
"`KeyboardInterrupt`, :meth:`~socketserver.BaseServer.handle_error` is no "
"longer called, and the exception will stop a single-threaded server. "
"(Contributed by Martin Panter in :issue:`23430`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1414
msgid ""
":func:`spwd.getspnam` now raises a :exc:`PermissionError` instead of :exc:"
"`KeyError` if the user doesn't have privileges."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1417
msgid ""
"The :meth:`socket.socket.close` method now raises an exception if an error "
"(e.g. EBADF) was reported by the underlying system call. See :issue:`26685`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1421
msgid ""
"The *decode_data* argument for :class:`smtpd.SMTPChannel` and :class:`smtpd."
"SMTPServer` constructors is now ``False`` by default. This means that the "
"argument passed to :meth:`~smtpd.SMTPServer.process_message` is now a bytes "
"object by default, and ``process_message()`` will be passed keyword "
"arguments. Code that has already been updated in accordance with the "
"deprecation warning generated by 3.5 will not be affected."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1429
msgid ""
"All optional parameters of the :func:`~json.dump`, :func:`~json.dumps`, :"
"func:`~json.load` and :func:`~json.loads` functions and :class:`~json."
"JSONEncoder` and :class:`~json.JSONDecoder` class constructors in the :mod:"
"`json` module are now :ref:`keyword-only <keyword-only_parameter>`. "
"(Contributed by Serhiy Storchaka in :issue:`18726`.)"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1436
msgid ""
"As part of :pep:`487`, the handling of keyword arguments passed to :class:"
"`type` (other than the metaclass hint, ``metaclass``) is now consistently "
"delegated to :meth:`object.__init_subclass__`. This means that :meth:`type."
"__new__` and :meth:`type.__init__` both now accept arbitrary keyword "
"arguments, but :meth:`object.__init_subclass__` (which is called from :meth:"
"`type.__new__`) will reject them by default. Custom metaclasses accepting "
"additional keyword arguments will need to adjust their calls to :meth:`type."
"__new__` (whether direct or via :class:`super`) accordingly."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1445
msgid ""
"In :class:`distutils.command.sdist.sdist`, the ``default_format`` attribute "
"has been removed and is no longer honored. Instead, the gzipped tarfile "
"format is the default on all platforms and no platform-specific selection is "
"made. In environments where distributions are built on Windows and zip "
"distributions are required, configure the project with a ``setup.cfg`` file "
"containing the following::"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1456
msgid ""
"This behavior has also been backported to earlier Python versions by "
"Setuptools 26.0.0."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1459
msgid ""
"In the :mod:`urllib.request` module and the :meth:`http.client."
"HTTPConnection.request` method, if no Content-Length header field has been "
"specified and the request body is a file object, it is now sent with HTTP "
"1.1 chunked encoding. If a file object has to be sent to a HTTP 1.0 server, "
"the Content-Length value now has to be specified by the caller. See :issue:"
"`12319`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1467
msgid "Changes in the C API"
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1469
msgid ""
":c:func:`PyMem_Malloc` allocator family now uses the :ref:`pymalloc "
"allocator <pymalloc>` rather than system :c:func:`malloc`. Applications "
"calling :c:func:`PyMem_Malloc` without holding the GIL can now crash. Set "
"the :envvar:`PYTHONMALLOC` environment variable to ``debug`` to validate the "
"usage of memory allocators in your application. See :issue:`26249`."
msgstr ""
#: ../Doc/whatsnew/3.6.rst:1475
msgid ""
":c:func:`Py_Exit` (and the main interpreter) now override the exit status "
"with 120 if flushing buffered data failed. See :issue:`5319`."
msgstr ""