python-docs-fr/whatsnew/3.11.po

4354 lines
130 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Copyright (C) 2001-2018, Python Software Foundation
# For licence information, see README file.
#
msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-23 14:38+0200\n"
"PO-Revision-Date: 2023-03-05 23:15+0100\n"
"Last-Translator: Mouna Sebti <mounasb@proton.me>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 3.2.1\n"
#: whatsnew/3.11.rst:3
msgid "What's New In Python 3.11"
msgstr "Les nouveautés de Python 3.11"
#: whatsnew/3.11.rst:0
msgid "Editor"
msgstr "Éditeur"
#: whatsnew/3.11.rst:5
msgid "Pablo Galindo Salgado"
msgstr ""
#: whatsnew/3.11.rst:47
msgid ""
"This article explains the new features in Python 3.11, compared to 3.10."
msgstr ""
"Cet article explique les nouvelles fonctionnalités de Python 3.11 par "
"rapport à la version 3.10."
#: whatsnew/3.11.rst:49
msgid "For full details, see the :ref:`changelog <changelog>`."
msgstr ""
"Pour plus de détails, voir le :ref:`journal des modifications <changelog>`."
#: whatsnew/3.11.rst:55
msgid "Summary -- Release highlights"
msgstr "Résumé Points forts de la publication"
#: whatsnew/3.11.rst:60
msgid ""
"Python 3.11 is between 10-60% faster than Python 3.10. On average, we "
"measured a 1.25x speedup on the standard benchmark suite. See :ref:"
"`whatsnew311-faster-cpython` for details."
msgstr ""
"Python 3.11 est entre 10 et 60 % plus rapide que Python 3.10. En moyenne, "
"nous avons mesuré une multiplication de la vitesse par 1,25 sur la suite de "
"benchmarks standards. Voir les détails sur :ref:`whatsnew311-faster-cpython`."
#: whatsnew/3.11.rst:66
msgid "New syntax features:"
msgstr "Nouvelles fonctionnalités de syntaxe :"
#: whatsnew/3.11.rst:68
msgid ":ref:`whatsnew311-pep654`"
msgstr ""
#: whatsnew/3.11.rst:70
msgid "New built-in features:"
msgstr "Nouvelles fonctionnalités natives :"
#: whatsnew/3.11.rst:72
msgid ":ref:`whatsnew311-pep678`"
msgstr ""
#: whatsnew/3.11.rst:74
msgid "New standard library modules:"
msgstr "Nouveaux modules de bibliothèque standard :"
#: whatsnew/3.11.rst:76
msgid ""
":pep:`680`: :mod:`tomllib` — Support for parsing `TOML <https://toml.io/>`_ "
"in the Standard Library"
msgstr ""
#: whatsnew/3.11.rst:79
msgid "Interpreter improvements:"
msgstr "Améliorations de l'interpréteur :"
#: whatsnew/3.11.rst:81
msgid ":ref:`whatsnew311-pep657`"
msgstr ""
#: whatsnew/3.11.rst:82
msgid ""
"New :option:`-P` command line option and :envvar:`PYTHONSAFEPATH` "
"environment variable to :ref:`disable automatically prepending potentially "
"unsafe paths <whatsnew311-pythonsafepath>` to :data:`sys.path`"
msgstr ""
#: whatsnew/3.11.rst:86
msgid "New typing features:"
msgstr "Nouvelles fonctionnalités de typage :"
#: whatsnew/3.11.rst:88
msgid ":ref:`whatsnew311-pep646`"
msgstr ""
#: whatsnew/3.11.rst:89
msgid ":ref:`whatsnew311-pep655`"
msgstr ""
#: whatsnew/3.11.rst:90
msgid ":ref:`whatsnew311-pep673`"
msgstr ""
#: whatsnew/3.11.rst:91
msgid ":ref:`whatsnew311-pep675`"
msgstr ""
#: whatsnew/3.11.rst:92
msgid ":ref:`whatsnew311-pep681`"
msgstr ""
#: whatsnew/3.11.rst:94
msgid "Important deprecations, removals and restrictions:"
msgstr ""
#: whatsnew/3.11.rst:96
msgid ""
":pep:`594`: :ref:`Many legacy standard library modules have been deprecated "
"<whatsnew311-pep594>` and will be removed in Python 3.13"
msgstr ""
":pep:`594` : :ref:`De nombreux anciens modules de la bibliothèque standard "
"sontdevenus obsolètes <whatsnew311-pep594>` et seront supprimés dans la "
"version 3.13"
#: whatsnew/3.11.rst:99
msgid ""
":pep:`624`: :ref:`Py_UNICODE encoder APIs have been removed <whatsnew311-"
"pep624>`"
msgstr ""
":pep:`624` : :ref:`les API d'encodage Py_UNICODE ont été supprimées "
"<whatsnew311-pep624>`"
#: whatsnew/3.11.rst:101
msgid ""
":pep:`670`: :ref:`Macros converted to static inline functions <whatsnew311-"
"pep670>`"
msgstr ""
#: whatsnew/3.11.rst:2193
msgid "New Features"
msgstr "Nouvelles fonctionnalités"
#: whatsnew/3.11.rst:113
msgid "PEP 657: Fine-grained error locations in tracebacks"
msgstr ""
"PEP 657 : amélioration de l'emplacement des erreurs dans les traces d'appels"
#: whatsnew/3.11.rst:115
#, fuzzy
msgid ""
"When printing tracebacks, the interpreter will now point to the exact "
"expression that caused the error, instead of just the line. For example:"
msgstr ""
"Au moment d'afficher une trace d'appels, l'interpréteur indique maintenant "
"quelle est l'expression exacte qui a causé l'erreur plutôt que seulement la "
"ligne. Par exemple :"
#: whatsnew/3.11.rst:129
#, fuzzy
msgid ""
"Previous versions of the interpreter would point to just the line, making it "
"ambiguous which object was ``None``. These enhanced errors can also be "
"helpful when dealing with deeply nested :class:`dict` objects and multiple "
"function calls:"
msgstr ""
"Les versions précédentes de l'interpréteur indiquaient uniquement la ligne, "
"ce qui rendait ambigu quel objet était ``None``. Ces messages d'erreurs "
"améliorés sont aussi utiles quand on travaille avec des objets "
"dictionnaires :class:`dict` fortement imbriqués et des appels de fonction "
"multiples :"
#: whatsnew/3.11.rst:149
#, fuzzy
msgid "As well as complex arithmetic expressions:"
msgstr "de même qu'avec les expressions arithmétiques complexes :"
#: whatsnew/3.11.rst:159
#, fuzzy
msgid ""
"Additionally, the information used by the enhanced traceback feature is made "
"available via a general API, that can be used to correlate :term:`bytecode` :"
"ref:`instructions <bytecodes>` with source code location. This information "
"can be retrieved using:"
msgstr ""
"L'information utilisée par les traces d'appels améliorées est aussi "
"disponible dans une API générale qui peut être utilisée pour corréler des "
"instructions de code intermédiaire avec le code source. Cette information "
"peut être récupérée en utilisant :"
#: whatsnew/3.11.rst:164
msgid "The :meth:`codeobject.co_positions` method in Python."
msgstr "la méthode :meth:`codeobject.co_positions` en Python ;"
#: whatsnew/3.11.rst:165
#, fuzzy
msgid "The :c:func:`PyCode_Addr2Location` function in the C API."
msgstr "la fonction :c:func:`PyCode_Addr2Location` dans l'API C."
#: whatsnew/3.11.rst:167
msgid ""
"See :pep:`657` for more details. (Contributed by Pablo Galindo, Batuhan "
"Taskaya and Ammar Askar in :issue:`43950`.)"
msgstr ""
"Voir la :pep:`657` pour plus de détails (contribution de *Pablo Galindo*, "
"*Batuhan Taskaya* et *Ammar Askar* dans :issue:`43950`)."
#: whatsnew/3.11.rst:171
msgid ""
"This feature requires storing column positions in :ref:`codeobjects`, which "
"may result in a small increase in interpreter memory usage and disk usage "
"for compiled Python files. To avoid storing the extra information and "
"deactivate printing the extra traceback information, use the :option:`-X "
"no_debug_ranges <-X>` command line option or the :envvar:"
"`PYTHONNODEBUGRANGES` environment variable."
msgstr ""
#: whatsnew/3.11.rst:183
msgid "PEP 654: Exception Groups and ``except*``"
msgstr "PEP 654 : Groupes d'exception et ``except*``"
#: whatsnew/3.11.rst:185
msgid ""
":pep:`654` introduces language features that enable a program to raise and "
"handle multiple unrelated exceptions simultaneously. The builtin types :exc:"
"`ExceptionGroup` and :exc:`BaseExceptionGroup` make it possible to group "
"exceptions and raise them together, and the new :keyword:`except* "
"<except_star>` syntax generalizes :keyword:`except` to match subgroups of "
"exception groups."
msgstr ""
#: whatsnew/3.11.rst:192
msgid "See :pep:`654` for more details."
msgstr "Voir :pep:`654` pour plus de détails."
#: whatsnew/3.11.rst:194
msgid ""
"(Contributed by Irit Katriel in :issue:`45292`. PEP written by Irit Katriel, "
"Yury Selivanov and Guido van Rossum.)"
msgstr ""
#: whatsnew/3.11.rst:201
#, fuzzy
msgid "PEP 678: Exceptions can be enriched with notes"
msgstr "Les exceptions peuvent être enrichies avec des notes (PEP 678)"
#: whatsnew/3.11.rst:203
#, fuzzy
msgid ""
"The :meth:`~BaseException.add_note` method is added to :exc:`BaseException`. "
"It can be used to enrich exceptions with context information that is not "
"available at the time when the exception is raised. The added notes appear "
"in the default traceback."
msgstr ""
"Le champ ``__note__`` a été ajouté à :exc:`BaseException`. Il est ``None`` "
"par défaut, mais il peut être affecté à une chaîne qui est alors ajoutée à "
"la trace d'appel de l'exception (contribution d'*Irit Katriel* dans :issue:"
"`45607`)."
#: whatsnew/3.11.rst:208
msgid "See :pep:`678` for more details."
msgstr "Voir :pep:`678` pour plus de détails."
#: whatsnew/3.11.rst:210
msgid ""
"(Contributed by Irit Katriel in :issue:`45607`. PEP written by Zac Hatfield-"
"Dodds.)"
msgstr ""
#: whatsnew/3.11.rst:217
msgid "Windows ``py.exe`` launcher improvements"
msgstr "Améliorations du lanceur Windows ``py.exe``"
#: whatsnew/3.11.rst:219
msgid ""
"The copy of the :ref:`launcher` included with Python 3.11 has been "
"significantly updated. It now supports company/tag syntax as defined in :pep:"
"`514` using the ``-V:<company>/<tag>`` argument instead of the limited ``-"
"<major>.<minor>``. This allows launching distributions other than "
"``PythonCore``, the one hosted on `python.org <https://www.python.org>`_."
msgstr ""
#: whatsnew/3.11.rst:225
msgid ""
"When using ``-V:`` selectors, either company or tag can be omitted, but all "
"installs will be searched. For example, ``-V:OtherPython/`` will select the "
"\"best\" tag registered for ``OtherPython``, while ``-V:3.11`` or ``-"
"V:/3.11`` will select the \"best\" distribution with tag ``3.11``."
msgstr ""
#: whatsnew/3.11.rst:230
msgid ""
"When using the legacy ``-<major>``, ``-<major>.<minor>``, ``-<major>-"
"<bitness>`` or ``-<major>.<minor>-<bitness>`` arguments, all existing "
"behaviour should be preserved from past versions, and only releases from "
"``PythonCore`` will be selected. However, the ``-64`` suffix now implies "
"\"not 32-bit\" (not necessarily x86-64), as there are multiple supported 64-"
"bit platforms. 32-bit runtimes are detected by checking the runtime's tag "
"for a ``-32`` suffix. All releases of Python since 3.5 have included this in "
"their 32-bit builds."
msgstr ""
#: whatsnew/3.11.rst:244
msgid "New Features Related to Type Hints"
msgstr ""
#: whatsnew/3.11.rst:246
msgid ""
"This section covers major changes affecting :pep:`484` type hints and the :"
"mod:`typing` module."
msgstr ""
#: whatsnew/3.11.rst:253
msgid "PEP 646: Variadic generics"
msgstr ""
#: whatsnew/3.11.rst:255
msgid ""
":pep:`484` previously introduced :data:`~typing.TypeVar`, enabling creation "
"of generics parameterised with a single type. :pep:`646` adds :data:`~typing."
"TypeVarTuple`, enabling parameterisation with an *arbitrary* number of "
"types. In other words, a :data:`~typing.TypeVarTuple` is a *variadic* type "
"variable, enabling *variadic* generics."
msgstr ""
#: whatsnew/3.11.rst:262
msgid ""
"This enables a wide variety of use cases. In particular, it allows the type "
"of array-like structures in numerical computing libraries such as NumPy and "
"TensorFlow to be parameterised with the array *shape*. Static type checkers "
"will now be able to catch shape-related bugs in code that uses these "
"libraries."
msgstr ""
#: whatsnew/3.11.rst:268
msgid "See :pep:`646` for more details."
msgstr "Voir :pep:`646` pour plus de détails."
#: whatsnew/3.11.rst:270
msgid ""
"(Contributed by Matthew Rahtz in :issue:`43224`, with contributions by "
"Serhiy Storchaka and Jelle Zijlstra. PEP written by Mark Mendoza, Matthew "
"Rahtz, Pradeep Kumar Srinivasan, and Vincent Siles.)"
msgstr ""
#: whatsnew/3.11.rst:278
msgid ""
"PEP 655: Marking individual ``TypedDict`` items as required or not-required"
msgstr ""
#: whatsnew/3.11.rst:280
msgid ""
":data:`~typing.Required` and :data:`~typing.NotRequired` provide a "
"straightforward way to mark whether individual items in a :class:`~typing."
"TypedDict` must be present. Previously, this was only possible using "
"inheritance."
msgstr ""
#: whatsnew/3.11.rst:285
msgid ""
"All fields are still required by default, unless the *total* parameter is "
"set to ``False``, in which case all fields are still not-required by "
"default. For example, the following specifies a :class:`!TypedDict` with one "
"required and one not-required key::"
msgstr ""
#: whatsnew/3.11.rst:299
msgid "The following definition is equivalent::"
msgstr "La définition suivante est équivalente ::"
#: whatsnew/3.11.rst:305
msgid "See :pep:`655` for more details."
msgstr "Voir :pep:`655` pour plus de détails."
#: whatsnew/3.11.rst:307
msgid ""
"(Contributed by David Foster and Jelle Zijlstra in :issue:`47087`. PEP "
"written by David Foster.)"
msgstr ""
#: whatsnew/3.11.rst:314
msgid "PEP 673: ``Self`` type"
msgstr ""
#: whatsnew/3.11.rst:316
msgid ""
"The new :data:`~typing.Self` annotation provides a simple and intuitive way "
"to annotate methods that return an instance of their class. This behaves the "
"same as the :class:`~typing.TypeVar`-based approach :pep:`specified in PEP "
"484 <484#annotating-instance-and-class-methods>`, but is more concise and "
"easier to follow."
msgstr ""
#: whatsnew/3.11.rst:322
msgid ""
"Common use cases include alternative constructors provided as :func:"
"`classmethod <classmethod>`\\s, and :meth:`~object.__enter__` methods that "
"return ``self``::"
msgstr ""
#: whatsnew/3.11.rst:340
msgid ""
":data:`~typing.Self` can also be used to annotate method parameters or "
"attributes of the same type as their enclosing class."
msgstr ""
#: whatsnew/3.11.rst:343
msgid "See :pep:`673` for more details."
msgstr "Voir :pep:`673` pour plus de détails."
#: whatsnew/3.11.rst:345
msgid ""
"(Contributed by James Hilton-Balfe in :issue:`46534`. PEP written by Pradeep "
"Kumar Srinivasan and James Hilton-Balfe.)"
msgstr ""
#: whatsnew/3.11.rst:352
msgid "PEP 675: Arbitrary literal string type"
msgstr ""
#: whatsnew/3.11.rst:354
msgid ""
"The new :data:`~typing.LiteralString` annotation may be used to indicate "
"that a function parameter can be of any literal string type. This allows a "
"function to accept arbitrary literal string types, as well as strings "
"created from other literal strings. Type checkers can then enforce that "
"sensitive functions, such as those that execute SQL statements or shell "
"commands, are called only with static arguments, providing protection "
"against injection attacks."
msgstr ""
#: whatsnew/3.11.rst:362
msgid "For example, a SQL query function could be annotated as follows::"
msgstr ""
"Par exemple, une fonction de requête SQL pourrait être annotée de cette "
"façon ::"
#: whatsnew/3.11.rst:380
msgid "See :pep:`675` for more details."
msgstr "Voir :pep:`675` pour plus de détails."
#: whatsnew/3.11.rst:382
msgid ""
"(Contributed by Jelle Zijlstra in :issue:`47088`. PEP written by Pradeep "
"Kumar Srinivasan and Graham Bleaney.)"
msgstr ""
#: whatsnew/3.11.rst:389
msgid "PEP 681: Data class transforms"
msgstr ""
#: whatsnew/3.11.rst:391
msgid ""
":data:`~typing.dataclass_transform` may be used to decorate a class, "
"metaclass, or a function that is itself a decorator. The presence of "
"``@dataclass_transform()`` tells a static type checker that the decorated "
"object performs runtime \"magic\" that transforms a class, giving it :func:"
"`dataclass <dataclasses.dataclass>`-like behaviors."
msgstr ""
#: whatsnew/3.11.rst:397
msgid "For example::"
msgstr "Par exemple ::"
#: whatsnew/3.11.rst:415
msgid "See :pep:`681` for more details."
msgstr "Voir :pep:`681` pour plus de détails."
#: whatsnew/3.11.rst:417
msgid ""
"(Contributed by Jelle Zijlstra in :gh:`91860`. PEP written by Erik De Bonte "
"and Eric Traut.)"
msgstr ""
#: whatsnew/3.11.rst:424
msgid "PEP 563 may not be the future"
msgstr ""
#: whatsnew/3.11.rst:426
msgid ""
":pep:`563` Postponed Evaluation of Annotations (the ``from __future__ import "
"annotations`` :ref:`future statement <future>`) that was originally planned "
"for release in Python 3.10 has been put on hold indefinitely. See `this "
"message from the Steering Council <https://mail.python.org/archives/list/"
"python-dev@python.org/message/VIZEBX5EYMSYIJNDBF6DMUMZOCWHARSO/>`__ for more "
"information."
msgstr ""
#: whatsnew/3.11.rst:437
msgid "Other Language Changes"
msgstr "Autres changements au langage"
#: whatsnew/3.11.rst:439
msgid ""
"Starred unpacking expressions can now be used in :keyword:`for` statements. "
"(See :issue:`46725` for more details.)"
msgstr ""
#: whatsnew/3.11.rst:442
msgid ""
"Asynchronous :ref:`comprehensions <comprehensions>` are now allowed inside "
"comprehensions in :ref:`asynchronous functions <async def>`. Outer "
"comprehensions implicitly become asynchronous in this case. (Contributed by "
"Serhiy Storchaka in :issue:`33346`.)"
msgstr ""
#: whatsnew/3.11.rst:447
msgid ""
"A :exc:`TypeError` is now raised instead of an :exc:`AttributeError` in :"
"keyword:`with` statements and :meth:`contextlib.ExitStack.enter_context` for "
"objects that do not support the :term:`context manager` protocol, and in :"
"keyword:`async with` statements and :meth:`contextlib.AsyncExitStack."
"enter_async_context` for objects not supporting the :term:`asynchronous "
"context manager` protocol. (Contributed by Serhiy Storchaka in :issue:"
"`12022` and :issue:`44471`.)"
msgstr ""
#: whatsnew/3.11.rst:455
msgid ""
"Added :meth:`object.__getstate__`, which provides the default implementation "
"of the :meth:`!__getstate__` method. :mod:`copy`\\ing and :mod:`pickle`\\ing "
"instances of subclasses of builtin types :class:`bytearray`, :class:`set`, :"
"class:`frozenset`, :class:`collections.OrderedDict`, :class:`collections."
"deque`, :class:`weakref.WeakSet`, and :class:`datetime.tzinfo` now copies "
"and pickles instance attributes implemented as :term:`slots <__slots__>`. "
"(Contributed by Serhiy Storchaka in :issue:`26579`.)"
msgstr ""
#: whatsnew/3.11.rst:466
msgid ""
"Added a :option:`-P` command line option and a :envvar:`PYTHONSAFEPATH` "
"environment variable, which disable the automatic prepending to :data:`sys."
"path` of the script's directory when running a script, or the current "
"directory when using :option:`-c` and :option:`-m`. This ensures only stdlib "
"and installed modules are picked up by :keyword:`import`, and avoids "
"unintentionally or maliciously shadowing modules with those in a local (and "
"typically user-writable) directory. (Contributed by Victor Stinner in :gh:"
"`57684`.)"
msgstr ""
#: whatsnew/3.11.rst:477
msgid ""
"A ``\"z\"`` option was added to the :ref:`formatspec` that coerces negative "
"to positive zero after rounding to the format precision. See :pep:`682` for "
"more details. (Contributed by John Belmonte in :gh:`90153`.)"
msgstr ""
#: whatsnew/3.11.rst:482
msgid ""
"Bytes are no longer accepted on :data:`sys.path`. Support broke sometime "
"between Python 3.2 and 3.6, with no one noticing until after Python 3.10.0 "
"was released. In addition, bringing back support would be problematic due to "
"interactions between :option:`-b` and :data:`sys.path_importer_cache` when "
"there is a mixture of :class:`str` and :class:`bytes` keys. (Contributed by "
"Thomas Grainger in :gh:`91181`.)"
msgstr ""
#: whatsnew/3.11.rst:493
msgid "Other CPython Implementation Changes"
msgstr "Autres changements à l'implémentation de CPython"
#: whatsnew/3.11.rst:495
msgid ""
"The special methods :meth:`~object.__complex__` for :class:`complex` and :"
"meth:`~object.__bytes__` for :class:`bytes` are implemented to support the :"
"class:`typing.SupportsComplex` and :class:`typing.SupportsBytes` protocols. "
"(Contributed by Mark Dickinson and Dong-hee Na in :issue:`24234`.)"
msgstr ""
#: whatsnew/3.11.rst:500
msgid ""
"``siphash13`` is added as a new internal hashing algorithm. It has similar "
"security properties as ``siphash24``, but it is slightly faster for long "
"inputs. :class:`str`, :class:`bytes`, and some other types now use it as the "
"default algorithm for :func:`hash`. :pep:`552` :ref:`hash-based .pyc files "
"<pyc-invalidation>` now use ``siphash13`` too. (Contributed by Inada Naoki "
"in :issue:`29410`.)"
msgstr ""
#: whatsnew/3.11.rst:509
msgid ""
"When an active exception is re-raised by a :keyword:`raise` statement with "
"no parameters, the traceback attached to this exception is now always ``sys."
"exc_info()[1].__traceback__``. This means that changes made to the traceback "
"in the current :keyword:`except` clause are reflected in the re-raised "
"exception. (Contributed by Irit Katriel in :issue:`45711`.)"
msgstr ""
#: whatsnew/3.11.rst:515
msgid ""
"The interpreter state's representation of handled exceptions (aka "
"``exc_info`` or ``_PyErr_StackItem``) now only has the ``exc_value`` field; "
"``exc_type`` and ``exc_traceback`` have been removed, as they can be derived "
"from ``exc_value``. (Contributed by Irit Katriel in :issue:`45711`.)"
msgstr ""
#: whatsnew/3.11.rst:521
msgid ""
"A new :ref:`command line option <install-quiet-option>`, ``AppendPath``, has "
"been added for the Windows installer. It behaves similarly to "
"``PrependPath``, but appends the install and scripts directories instead of "
"prepending them. (Contributed by Bastian Neuburger in :issue:`44934`.)"
msgstr ""
#: whatsnew/3.11.rst:527
msgid ""
"The :c:member:`PyConfig.module_search_paths_set` field must now be set to "
"``1`` for initialization to use :c:member:`PyConfig.module_search_paths` to "
"initialize :data:`sys.path`. Otherwise, initialization will recalculate the "
"path and replace any values added to ``module_search_paths``."
msgstr ""
#: whatsnew/3.11.rst:532
msgid ""
"The output of the :option:`--help` option now fits in 50 lines/80 columns. "
"Information about :ref:`Python environment variables <using-on-envvars>` "
"and :option:`-X` options is now available using the respective :option:`--"
"help-env` and :option:`--help-xoptions` flags, and with the new :option:`--"
"help-all`. (Contributed by Éric Araujo in :issue:`46142`.)"
msgstr ""
#: whatsnew/3.11.rst:539
msgid ""
"Converting between :class:`int` and :class:`str` in bases other than 2 "
"(binary), 4, 8 (octal), 16 (hexadecimal), or 32 such as base 10 (decimal) "
"now raises a :exc:`ValueError` if the number of digits in string form is "
"above a limit to avoid potential denial of service attacks due to the "
"algorithmic complexity. This is a mitigation for `CVE-2020-10735 <https://"
"cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-10735>`_. This limit can be "
"configured or disabled by environment variable, command line flag, or :mod:"
"`sys` APIs. See the :ref:`integer string conversion length limitation "
"<int_max_str_digits>` documentation. The default limit is 4300 digits in "
"string form."
msgstr ""
#: whatsnew/3.11.rst:554
msgid "New Modules"
msgstr "Nouveaux modules"
#: whatsnew/3.11.rst:556
#, fuzzy
msgid ""
":mod:`tomllib`: For parsing `TOML <https://toml.io/>`_. See :pep:`680` for "
"more details. (Contributed by Taneli Hukkinen in :issue:`40059`.)"
msgstr ""
"Un nouveau module :mod:`tomllib` a été ajouté pour faire l'analyse du format "
"*TOML* (contribution de *Taneli Hukkinen* dans :issue:`40059`)."
#: whatsnew/3.11.rst:560
msgid ""
":mod:`wsgiref.types`: :pep:`WSGI <3333>`-specific types for static type "
"checking. (Contributed by Sebastian Rittau in :issue:`42012`.)"
msgstr ""
#: whatsnew/3.11.rst:568
msgid "Improved Modules"
msgstr "Modules améliorés"
#: whatsnew/3.11.rst:573
msgid "asyncio"
msgstr "``asyncio``"
#: whatsnew/3.11.rst:575
msgid ""
"Added the :class:`~asyncio.TaskGroup` class, an :ref:`asynchronous context "
"manager <async-context-managers>` holding a group of tasks that will wait "
"for all of them upon exit. For new code this is recommended over using :func:"
"`~asyncio.create_task` and :func:`~asyncio.gather` directly. (Contributed by "
"Yury Selivanov and others in :gh:`90908`.)"
msgstr ""
#: whatsnew/3.11.rst:582
msgid ""
"Added :func:`~asyncio.timeout`, an asynchronous context manager for setting "
"a timeout on asynchronous operations. For new code this is recommended over "
"using :func:`~asyncio.wait_for` directly. (Contributed by Andrew Svetlov in :"
"gh:`90927`.)"
msgstr ""
#: whatsnew/3.11.rst:587
msgid ""
"Added the :class:`~asyncio.Runner` class, which exposes the machinery used "
"by :func:`~asyncio.run`. (Contributed by Andrew Svetlov in :gh:`91218`.)"
msgstr ""
#: whatsnew/3.11.rst:591
msgid ""
"Added the :class:`~asyncio.Barrier` class to the synchronization primitives "
"in the asyncio library, and the related :exc:`~asyncio.BrokenBarrierError` "
"exception. (Contributed by Yves Duprat and Andrew Svetlov in :gh:`87518`.)"
msgstr ""
#: whatsnew/3.11.rst:596
msgid ""
"Added keyword argument *all_errors* to :meth:`asyncio.loop."
"create_connection` so that multiple connection errors can be raised as an :"
"exc:`ExceptionGroup`."
msgstr ""
#: whatsnew/3.11.rst:599
msgid ""
"Added the :meth:`asyncio.StreamWriter.start_tls` method for upgrading "
"existing stream-based connections to TLS. (Contributed by Ian Good in :issue:"
"`34975`.)"
msgstr ""
#: whatsnew/3.11.rst:603
msgid ""
"Added raw datagram socket functions to the event loop: :meth:`~asyncio.loop."
"sock_sendto`, :meth:`~asyncio.loop.sock_recvfrom` and :meth:`~asyncio.loop."
"sock_recvfrom_into`. These have implementations in :class:`~asyncio."
"SelectorEventLoop` and :class:`~asyncio.ProactorEventLoop`. (Contributed by "
"Alex Grönholm in :issue:`46805`.)"
msgstr ""
#: whatsnew/3.11.rst:611
msgid ""
"Added :meth:`~asyncio.Task.cancelling` and :meth:`~asyncio.Task.uncancel` "
"methods to :class:`~asyncio.Task`. These are primarily intended for internal "
"use, notably by :class:`~asyncio.TaskGroup`."
msgstr ""
#: whatsnew/3.11.rst:620
msgid "contextlib"
msgstr ""
#: whatsnew/3.11.rst:622
msgid ""
"Added non parallel-safe :func:`~contextlib.chdir` context manager to change "
"the current working directory and then restore it on exit. Simple wrapper "
"around :func:`~os.chdir`. (Contributed by Filipe Laíns in :issue:`25625`)"
msgstr ""
#: whatsnew/3.11.rst:630
msgid "dataclasses"
msgstr ""
#: whatsnew/3.11.rst:632
msgid ""
"Change field default mutability check, allowing only defaults which are :"
"term:`hashable` instead of any object which is not an instance of :class:"
"`dict`, :class:`list` or :class:`set`. (Contributed by Eric V. Smith in :"
"issue:`44674`.)"
msgstr ""
#: whatsnew/3.11.rst:641
msgid "datetime"
msgstr ""
#: whatsnew/3.11.rst:643
msgid ""
"Add :const:`datetime.UTC`, a convenience alias for :attr:`datetime.timezone."
"utc`. (Contributed by Kabir Kwatra in :gh:`91973`.)"
msgstr ""
#: whatsnew/3.11.rst:646
msgid ""
":meth:`datetime.date.fromisoformat`, :meth:`datetime.time.fromisoformat` "
"and :meth:`datetime.datetime.fromisoformat` can now be used to parse most "
"ISO 8601 formats (barring only those that support fractional hours and "
"minutes). (Contributed by Paul Ganssle in :gh:`80010`.)"
msgstr ""
#: whatsnew/3.11.rst:655
msgid "enum"
msgstr ""
#: whatsnew/3.11.rst:657
msgid ""
"Renamed :class:`!EnumMeta` to :class:`~enum.EnumType` (:class:`!EnumMeta` "
"kept as an alias)."
msgstr ""
#: whatsnew/3.11.rst:660
msgid ""
"Added :class:`~enum.StrEnum`, with members that can be used as (and must be) "
"strings."
msgstr ""
#: whatsnew/3.11.rst:663
msgid ""
"Added :class:`~enum.ReprEnum`, which only modifies the :meth:`~object."
"__repr__` of members while returning their literal values (rather than "
"names) for :meth:`~object.__str__` and :meth:`~object.__format__` (used by :"
"func:`str`, :func:`format` and :term:`f-string`\\s)."
msgstr ""
#: whatsnew/3.11.rst:669
msgid ""
"Changed :meth:`Enum.__format__() <enum.Enum.__format__>` (the default for :"
"func:`format`, :meth:`str.format` and :term:`f-string`\\s) to always produce "
"the same result as :meth:`Enum.__str__()`: for enums inheriting from :class:"
"`~enum.ReprEnum` it will be the member's value; for all other enums it will "
"be the enum and member name (e.g. ``Color.RED``)."
msgstr ""
#: whatsnew/3.11.rst:675
msgid ""
"Added a new *boundary* class parameter to :class:`~enum.Flag` enums and the :"
"class:`~enum.FlagBoundary` enum with its options, to control how to handle "
"out-of-range flag values."
msgstr ""
#: whatsnew/3.11.rst:679
msgid ""
"Added the :func:`~enum.verify` enum decorator and the :class:`~enum."
"EnumCheck` enum with its options, to check enum classes against several "
"specific constraints."
msgstr ""
#: whatsnew/3.11.rst:683
msgid ""
"Added the :func:`~enum.member` and :func:`~enum.nonmember` decorators, to "
"ensure the decorated object is/is not converted to an enum member."
msgstr ""
#: whatsnew/3.11.rst:686
msgid ""
"Added the :func:`~enum.property` decorator, which works like :func:"
"`property` except for enums. Use this instead of :func:`types."
"DynamicClassAttribute`."
msgstr ""
#: whatsnew/3.11.rst:690
msgid ""
"Added the :func:`~enum.global_enum` enum decorator, which adjusts :meth:"
"`~object.__repr__` and :meth:`~object.__str__` to show values as members of "
"their module rather than the enum class. For example, ``'re.ASCII'`` for "
"the :const:`~re.ASCII` member of :class:`re.RegexFlag` rather than "
"``'RegexFlag.ASCII'``."
msgstr ""
#: whatsnew/3.11.rst:696
msgid ""
"Enhanced :class:`~enum.Flag` to support :func:`len`, iteration and :keyword:"
"`in`/:keyword:`not in` on its members. For example, the following now works: "
"``len(AFlag(3)) == 2 and list(AFlag(3)) == (AFlag.ONE, AFlag.TWO)``"
msgstr ""
#: whatsnew/3.11.rst:701
msgid ""
"Changed :class:`~enum.Enum` and :class:`~enum.Flag` so that members are now "
"defined before :meth:`~object.__init_subclass__` is called; :func:`dir` now "
"includes methods, etc., from mixed-in data types."
msgstr ""
#: whatsnew/3.11.rst:706
msgid ""
"Changed :class:`~enum.Flag` to only consider primary values (power of two) "
"canonical while composite values (``3``, ``6``, ``10``, etc.) are considered "
"aliases; inverted flags are coerced to their positive equivalent."
msgstr ""
#: whatsnew/3.11.rst:715
msgid "fcntl"
msgstr "``fcntl``"
#: whatsnew/3.11.rst:717
msgid ""
"On FreeBSD, the :data:`!F_DUP2FD` and :data:`!F_DUP2FD_CLOEXEC` flags "
"respectively are supported, the former equals to ``dup2`` usage while the "
"latter set the ``FD_CLOEXEC`` flag in addition."
msgstr ""
#: whatsnew/3.11.rst:725
msgid "fractions"
msgstr "``fractions``"
#: whatsnew/3.11.rst:727
msgid ""
"Support :PEP:`515`-style initialization of :class:`~fractions.Fraction` from "
"string. (Contributed by Sergey B Kirpichev in :issue:`44258`.)"
msgstr ""
"Prise en charge de l'initialisation de :class:`~fractions.Fraction` à partir "
"d'une chaîne suivant le style de la :PEP:`515` (contribution de *Sergey B "
"Kirpichev* dans :issue:`44258`)."
#: whatsnew/3.11.rst:730
msgid ""
":class:`~fractions.Fraction` now implements an ``__int__`` method, so that "
"an ``isinstance(some_fraction, typing.SupportsInt)`` check passes. "
"(Contributed by Mark Dickinson in :issue:`44547`.)"
msgstr ""
":class:`~fractions.Fraction` implémente maintenant la méthode ``__int__``, "
"ce qui permet au test ``isinstance(ma_fraction, typing.SupportsInt)`` de "
"passer avec succès (contribution de *Mark Dickinson* dans :issue:`44547`)."
#: whatsnew/3.11.rst:738
msgid "functools"
msgstr ""
#: whatsnew/3.11.rst:740
msgid ""
":func:`functools.singledispatch` now supports :data:`types.UnionType` and :"
"data:`typing.Union` as annotations to the dispatch argument.::"
msgstr ""
#: whatsnew/3.11.rst:765
msgid "(Contributed by Yurii Karabas in :issue:`46014`.)"
msgstr ""
#: whatsnew/3.11.rst:771
msgid "hashlib"
msgstr ""
#: whatsnew/3.11.rst:773
msgid ""
":func:`hashlib.blake2b` and :func:`hashlib.blake2s` now prefer `libb2`_ over "
"Python's vendored copy. (Contributed by Christian Heimes in :issue:`47095`.)"
msgstr ""
#: whatsnew/3.11.rst:777
msgid ""
"The internal ``_sha3`` module with SHA3 and SHAKE algorithms now uses "
"*tiny_sha3* instead of the *Keccak Code Package* to reduce code and binary "
"size. The :mod:`hashlib` module prefers optimized SHA3 and SHAKE "
"implementations from OpenSSL. The change affects only installations without "
"OpenSSL support. (Contributed by Christian Heimes in :issue:`47098`.)"
msgstr ""
#: whatsnew/3.11.rst:784
msgid ""
"Add :func:`hashlib.file_digest`, a helper function for efficient hashing of "
"files or file-like objects. (Contributed by Christian Heimes in :gh:`89313`.)"
msgstr ""
#: whatsnew/3.11.rst:792
msgid "IDLE and idlelib"
msgstr "``IDLE`` et ``idlelib``"
#: whatsnew/3.11.rst:794
msgid ""
"Apply syntax highlighting to ``.pyi`` files. (Contributed by Alex Waygood "
"and Terry Jan Reedy in :issue:`45447`.)"
msgstr ""
"Applique la coloration syntaxique aux fichiers ``.pyi`` (contribution "
"d'*Alex Waygood* et de *Terry Jan Reedy* dans :issue:`45447`)."
#: whatsnew/3.11.rst:797
msgid ""
"Include prompts when saving Shell with inputs and outputs. (Contributed by "
"Terry Jan Reedy in :gh:`95191`.)"
msgstr ""
#: whatsnew/3.11.rst:804
msgid "inspect"
msgstr "``inspect``"
#: whatsnew/3.11.rst:806
#, fuzzy
msgid ""
"Add :func:`~inspect.getmembers_static` to return all members without "
"triggering dynamic lookup via the descriptor protocol. (Contributed by "
"Weipeng Hong in :issue:`30533`.)"
msgstr ""
"Ajout de :func:`inspect.getmembers_static` : renvoie tous les membres sans "
"invoquer la recherche dynamique du protocole des descripteurs (contribution "
"de *Weipeng Hong* dans :issue:`30533`)."
#: whatsnew/3.11.rst:810
#, fuzzy
msgid ""
"Add :func:`~inspect.ismethodwrapper` for checking if the type of an object "
"is a :class:`~types.MethodWrapperType`. (Contributed by Hakan Çelik in :"
"issue:`29418`.)"
msgstr ""
"Ajout de :func:`inspect.ismethodwrapper` pour vérifier si le type d'un objet "
"est un :class:`~types.MethodWrapperType` (contribution de *Hakan Çelik* "
"dans :issue:`29418`)."
#: whatsnew/3.11.rst:814
msgid ""
"Change the frame-related functions in the :mod:`inspect` module to return "
"new :class:`~inspect.FrameInfo` and :class:`~inspect.Traceback` class "
"instances (backwards compatible with the previous :term:`named tuple`-like "
"interfaces) that includes the extended :pep:`657` position information (end "
"line number, column and end column). The affected functions are:"
msgstr ""
#: whatsnew/3.11.rst:820
msgid ":func:`inspect.getframeinfo`"
msgstr ""
#: whatsnew/3.11.rst:821
msgid ":func:`inspect.getouterframes`"
msgstr ""
#: whatsnew/3.11.rst:822
msgid ":func:`inspect.getinnerframes`,"
msgstr ""
#: whatsnew/3.11.rst:823
msgid ":func:`inspect.stack`"
msgstr ""
#: whatsnew/3.11.rst:824
msgid ":func:`inspect.trace`"
msgstr ""
#: whatsnew/3.11.rst:826
msgid "(Contributed by Pablo Galindo in :gh:`88116`.)"
msgstr ""
#: whatsnew/3.11.rst:832
msgid "locale"
msgstr ""
#: whatsnew/3.11.rst:834
msgid ""
"Add :func:`locale.getencoding` to get the current locale encoding. It is "
"similar to ``locale.getpreferredencoding(False)`` but ignores the :ref:"
"`Python UTF-8 Mode <utf8-mode>`."
msgstr ""
#: whatsnew/3.11.rst:842
msgid "logging"
msgstr ""
#: whatsnew/3.11.rst:844
msgid ""
"Added :func:`~logging.getLevelNamesMapping` to return a mapping from logging "
"level names (e.g. ``'CRITICAL'``) to the values of their corresponding :ref:"
"`levels` (e.g. ``50``, by default). (Contributed by Andrei Kulakovin in :gh:"
"`88024`.)"
msgstr ""
#: whatsnew/3.11.rst:849
msgid ""
"Added a :meth:`~logging.handlers.SysLogHandler.createSocket` method to :"
"class:`~logging.handlers.SysLogHandler`, to match :meth:`SocketHandler."
"createSocket() <logging.handlers.SocketHandler.createSocket>`. It is called "
"automatically during handler initialization and when emitting an event, if "
"there is no active socket. (Contributed by Kirill Pinchuk in :gh:`88457`.)"
msgstr ""
#: whatsnew/3.11.rst:861
msgid "math"
msgstr "``math``"
#: whatsnew/3.11.rst:863
msgid ""
"Add :func:`math.exp2`: return 2 raised to the power of x. (Contributed by "
"Gideon Mitchell in :issue:`45917`.)"
msgstr ""
"Ajout de :func:`math.exp2` : renvoie 2 élevé à la puissance ``x`` "
"(contribution de *Gideon Mitchell* dans :issue:`45917`)."
#: whatsnew/3.11.rst:866
msgid ""
"Add :func:`math.cbrt`: return the cube root of x. (Contributed by Ajith "
"Ramachandran in :issue:`44357`.)"
msgstr ""
"Ajout de :func:`math.cbrt` : renvoie la racine cubique de ``x`` "
"(contribution d'*Ajith Ramachandran* dans :issue:`44357`)."
#: whatsnew/3.11.rst:869
msgid ""
"The behaviour of two :func:`math.pow` corner cases was changed, for "
"consistency with the IEEE 754 specification. The operations ``math.pow(0.0, -"
"math.inf)`` and ``math.pow(-0.0, -math.inf)`` now return ``inf``. Previously "
"they raised :exc:`ValueError`. (Contributed by Mark Dickinson in :issue:"
"`44339`.)"
msgstr ""
"Le comportement de :func:`math.pow` dans deux cas particuliers a été changé "
"pour être cohérent avec la spécification *IEEE 754*. Les opérations ``math."
"pow(0.0, -math.inf)`` et ``math.pow(-0.0, -math.inf)`` renvoient maintenant "
"``inf``. Elles levaient précédemment :exc:`ValueError` (contribution de "
"*Mark Dickinson* dans :issue:`44339`)."
#: whatsnew/3.11.rst:875
msgid ""
"The :data:`math.nan` value is now always available. (Contributed by Victor "
"Stinner in :issue:`46917`.)"
msgstr ""
"La valeur :data:`math.nan` est maintenant toujours disponible (contribution "
"de *Victor Stinner* dans :issue:`46917`)."
#: whatsnew/3.11.rst:882
msgid "operator"
msgstr "``operator``"
#: whatsnew/3.11.rst:884
msgid ""
"A new function ``operator.call`` has been added, such that ``operator."
"call(obj, *args, **kwargs) == obj(*args, **kwargs)``. (Contributed by Antony "
"Lee in :issue:`44019`.)"
msgstr ""
#: whatsnew/3.11.rst:892
msgid "os"
msgstr "``os``"
#: whatsnew/3.11.rst:894
msgid ""
"On Windows, :func:`os.urandom` now uses ``BCryptGenRandom()``, instead of "
"``CryptGenRandom()`` which is deprecated. (Contributed by Dong-hee Na in :"
"issue:`44611`.)"
msgstr ""
"Sur Windows, :func:`os.urandom` utilise maintenant ``BCryptGenRandom()``, "
"plutôt que ``CryptGenRandom()`` qui est obsolète (contribution de *Dong-hee "
"Na* dans :issue:`44611`)."
#: whatsnew/3.11.rst:902
msgid "pathlib"
msgstr ""
#: whatsnew/3.11.rst:904
msgid ""
":meth:`~pathlib.Path.glob` and :meth:`~pathlib.Path.rglob` return only "
"directories if *pattern* ends with a pathname components separator: :data:"
"`~os.sep` or :data:`~os.altsep`. (Contributed by Eisuke Kawasima in :issue:"
"`22276` and :issue:`33392`.)"
msgstr ""
#: whatsnew/3.11.rst:913
msgid "re"
msgstr "``re``"
#: whatsnew/3.11.rst:915
msgid ""
"Atomic grouping (``(?>...)``) and possessive quantifiers (``*+``, ``++``, ``?"
"+``, ``{m,n}+``) are now supported in regular expressions. (Contributed by "
"Jeffrey C. Jacobs and Serhiy Storchaka in :issue:`433030`.)"
msgstr ""
"Le groupement atomique (``(?>...)``) et les quantificateurs possessifs "
"(``*+``, ``++``, ``?+``, ``{m,n}+``) sont maintenant pris en charge dans les "
"expressions régulières (contribution de *Jeffrey C. Jacobs* et de *Serhiy "
"Storchaka* dans :issue:`433030`)."
#: whatsnew/3.11.rst:923
msgid "shutil"
msgstr "``shutils``"
#: whatsnew/3.11.rst:925
msgid ""
"Add optional parameter *dir_fd* in :func:`shutil.rmtree`. (Contributed by "
"Serhiy Storchaka in :issue:`46245`.)"
msgstr ""
"Ajout du paramètre optionnel *dir_fd* dans :func:`shutil.rmtree` "
"(contribution de *Serhiy Storchaka* dans :issue:`46245`)."
#: whatsnew/3.11.rst:932
msgid "socket"
msgstr "``socket``"
#: whatsnew/3.11.rst:934
msgid ""
"Add CAN Socket support for NetBSD. (Contributed by Thomas Klausner in :issue:"
"`30512`.)"
msgstr ""
#: whatsnew/3.11.rst:937
msgid ""
":meth:`~socket.create_connection` has an option to raise, in case of failure "
"to connect, an :exc:`ExceptionGroup` containing all errors instead of only "
"raising the last error. (Contributed by Irit Katriel in :issue:`29980`.)"
msgstr ""
#: whatsnew/3.11.rst:946
msgid "sqlite3"
msgstr "``sqlite3``"
#: whatsnew/3.11.rst:948
msgid ""
"You can now disable the authorizer by passing :const:`None` to :meth:"
"`~sqlite3.Connection.set_authorizer`. (Contributed by Erlend E. Aasland in :"
"issue:`44491`.)"
msgstr ""
#: whatsnew/3.11.rst:952
msgid ""
"Collation name :meth:`~sqlite3.Connection.create_collation` can now contain "
"any Unicode character. Collation names with invalid characters now raise :"
"exc:`UnicodeEncodeError` instead of :exc:`sqlite3.ProgrammingError`. "
"(Contributed by Erlend E. Aasland in :issue:`44688`.)"
msgstr ""
#: whatsnew/3.11.rst:957
msgid ""
":mod:`sqlite3` exceptions now include the SQLite extended error code as :"
"attr:`~sqlite3.Error.sqlite_errorcode` and the SQLite error name as :attr:"
"`~sqlite3.Error.sqlite_errorname`. (Contributed by Aviv Palivoda, Daniel "
"Shahaf, and Erlend E. Aasland in :issue:`16379` and :issue:`24139`.)"
msgstr ""
#: whatsnew/3.11.rst:963
msgid ""
"Add :meth:`~sqlite3.Connection.setlimit` and :meth:`~sqlite3.Connection."
"getlimit` to :class:`sqlite3.Connection` for setting and getting SQLite "
"limits by connection basis. (Contributed by Erlend E. Aasland in :issue:"
"`45243`.)"
msgstr ""
"Ajout des méthodes :meth:`~sqlite3.Connection.setlimit` et :meth:`~sqlite3."
"Connection.getlimit` à la classe :class:`sqlite3.Connection` pour affecter "
"et demander les limites de *SQLite* pour une connexion (contribution "
"d'*Erlend E. Aasland* dans :issue:`45243`)."
#: whatsnew/3.11.rst:968
msgid ""
":mod:`sqlite3` now sets :attr:`sqlite3.threadsafety` based on the default "
"threading mode the underlying SQLite library has been compiled with. "
"(Contributed by Erlend E. Aasland in :issue:`45613`.)"
msgstr ""
":mod:`sqlite3` affecte maintenant :attr:`sqlite3.threadsafety` selon le mode "
"d'exécution à fils multiples (*threading* en anglais) par défaut qui a été "
"compilé dans la bibliothèque *SQLite* sous-jacente (contribution d'*Erlend "
"E. Aasland* dans :issue:`45613`)."
#: whatsnew/3.11.rst:972
msgid ""
":mod:`sqlite3` C callbacks now use unraisable exceptions if callback "
"tracebacks are enabled. Users can now register an :func:`unraisable hook "
"handler <sys.unraisablehook>` to improve their debug experience. "
"(Contributed by Erlend E. Aasland in :issue:`45828`.)"
msgstr ""
#: whatsnew/3.11.rst:978
msgid ""
"Fetch across rollback no longer raises :exc:`~sqlite3.InterfaceError`. "
"Instead we leave it to the SQLite library to handle these cases. "
"(Contributed by Erlend E. Aasland in :issue:`44092`.)"
msgstr ""
#: whatsnew/3.11.rst:982
msgid ""
"Add :meth:`~sqlite3.Connection.serialize` and :meth:`~sqlite3.Connection."
"deserialize` to :class:`sqlite3.Connection` for serializing and "
"deserializing databases. (Contributed by Erlend E. Aasland in :issue:"
"`41930`.)"
msgstr ""
#: whatsnew/3.11.rst:987
msgid ""
"Add :meth:`~sqlite3.Connection.create_window_function` to :class:`sqlite3."
"Connection` for creating aggregate window functions. (Contributed by Erlend "
"E. Aasland in :issue:`34916`.)"
msgstr ""
#: whatsnew/3.11.rst:991
#, fuzzy
msgid ""
"Add :meth:`~sqlite3.Connection.blobopen` to :class:`sqlite3.Connection`. :"
"class:`sqlite3.Blob` allows incremental I/O operations on blobs. "
"(Contributed by Aviv Palivoda and Erlend E. Aasland in :issue:`24905`.)"
msgstr ""
"Ajout des méthodes :meth:`~sqlite3.Connection.setlimit` et :meth:`~sqlite3."
"Connection.getlimit` à la classe :class:`sqlite3.Connection` pour affecter "
"et demander les limites de *SQLite* pour une connexion (contribution "
"d'*Erlend E. Aasland* dans :issue:`45243`)."
#: whatsnew/3.11.rst:999
msgid "string"
msgstr ""
#: whatsnew/3.11.rst:1001
msgid ""
"Add :meth:`~string.Template.get_identifiers` and :meth:`~string.Template."
"is_valid` to :class:`string.Template`, which respectively return all valid "
"placeholders, and whether any invalid placeholders are present. (Contributed "
"by Ben Kehoe in :gh:`90465`.)"
msgstr ""
#: whatsnew/3.11.rst:1011
msgid "sys"
msgstr "``sys``"
#: whatsnew/3.11.rst:1013
msgid ""
":func:`sys.exc_info` now derives the ``type`` and ``traceback`` fields from "
"the ``value`` (the exception instance), so when an exception is modified "
"while it is being handled, the changes are reflected in the results of "
"subsequent calls to :func:`!exc_info`. (Contributed by Irit Katriel in :"
"issue:`45711`.)"
msgstr ""
#: whatsnew/3.11.rst:1019
msgid ""
"Add :func:`sys.exception` which returns the active exception instance "
"(equivalent to ``sys.exc_info()[1]``). (Contributed by Irit Katriel in :"
"issue:`46328`.)"
msgstr ""
"Ajout de :func:`sys.exception` qui renvoie l'instance de l'exception active "
"(équivalent à ``sys.exc_info()[1]``) (contribution d'*Irit Katriel* dans :"
"issue:`46328`)."
#: whatsnew/3.11.rst:1023
msgid ""
"Add the :data:`sys.flags.safe_path <sys.flags>` flag. (Contributed by Victor "
"Stinner in :gh:`57684`.)"
msgstr ""
#: whatsnew/3.11.rst:1030
msgid "sysconfig"
msgstr "``sysconfig``"
#: whatsnew/3.11.rst:1032
msgid ""
"Three new :ref:`installation schemes <installation_paths>` (*posix_venv*, "
"*nt_venv* and *venv*) were added and are used when Python creates new "
"virtual environments or when it is running from a virtual environment. The "
"first two schemes (*posix_venv* and *nt_venv*) are OS-specific for non-"
"Windows and Windows, the *venv* is essentially an alias to one of them "
"according to the OS Python runs on. This is useful for downstream "
"distributors who modify :func:`sysconfig.get_preferred_scheme`. Third party "
"code that creates new virtual environments should use the new *venv* "
"installation scheme to determine the paths, as does :mod:`venv`. "
"(Contributed by Miro Hrončok in :issue:`45413`.)"
msgstr ""
#: whatsnew/3.11.rst:1049
#, fuzzy
msgid "tempfile"
msgstr "``zipfile``"
#: whatsnew/3.11.rst:1051
msgid ""
":class:`~tempfile.SpooledTemporaryFile` objects now fully implement the "
"methods of :class:`io.BufferedIOBase` or :class:`io.TextIOBase` (depending "
"on file mode). This lets them work correctly with APIs that expect file-like "
"objects, such as compression modules. (Contributed by Carey Metcalfe in :gh:"
"`70363`.)"
msgstr ""
#: whatsnew/3.11.rst:1062
msgid "threading"
msgstr "``threading``"
#: whatsnew/3.11.rst:1064
msgid ""
"On Unix, if the ``sem_clockwait()`` function is available in the C library "
"(glibc 2.30 and newer), the :meth:`threading.Lock.acquire` method now uses "
"the monotonic clock (:const:`time.CLOCK_MONOTONIC`) for the timeout, rather "
"than using the system clock (:const:`time.CLOCK_REALTIME`), to not be "
"affected by system clock changes. (Contributed by Victor Stinner in :issue:"
"`41710`.)"
msgstr ""
#: whatsnew/3.11.rst:1075
msgid "time"
msgstr "``time``"
#: whatsnew/3.11.rst:1077
msgid ""
"On Unix, :func:`time.sleep` now uses the ``clock_nanosleep()`` or "
"``nanosleep()`` function, if available, which has a resolution of 1 "
"nanosecond (10\\ :sup:`-9` seconds), rather than using ``select()`` which "
"has a resolution of 1 microsecond (10\\ :sup:`-6` seconds). (Contributed by "
"Benjamin Szőke and Victor Stinner in :issue:`21302`.)"
msgstr ""
"Sur Unix, :func:`time.sleep` utilise maintenant une des fonctions "
"``clock_nanosleep()`` ou ``nanosleep()``, quand elles sont disponibles, qui "
"ont une résolution de 1 nanoseconde (10\\ :sup:`-9` secondes), plutôt que "
"d'utiliser ``select()`` qui a une résolution de 1 microseconde (10\\ :sup:"
"`-6` secondes) (contribution de *Benjamin Szőke* et de *Victor Stinner* "
"dans :issue:`21302`)."
#: whatsnew/3.11.rst:1083
msgid ""
"On Windows 8.1 and newer, :func:`time.sleep` now uses a waitable timer based "
"on `high-resolution timers <https://docs.microsoft.com/en-us/windows-"
"hardware/drivers/kernel/high-resolution-timers>`_ which has a resolution of "
"100 nanoseconds (10\\ :sup:`-7` seconds). Previously, it had a resolution of "
"1 millisecond (10\\ :sup:`-3` seconds). (Contributed by Benjamin Szőke, Dong-"
"hee Na, Eryk Sun and Victor Stinner in :issue:`21302` and :issue:`45429`.)"
msgstr ""
#: whatsnew/3.11.rst:1094
msgid "tkinter"
msgstr ""
#: whatsnew/3.11.rst:1096
msgid ""
"Added method ``info_patchlevel()`` which returns the exact version of the "
"Tcl library as a named tuple similar to :data:`sys.version_info`. "
"(Contributed by Serhiy Storchaka in :gh:`91827`.)"
msgstr ""
#: whatsnew/3.11.rst:1104
msgid "traceback"
msgstr ""
#: whatsnew/3.11.rst:1106
msgid ""
"Add :func:`traceback.StackSummary.format_frame_summary` to allow users to "
"override which frames appear in the traceback, and how they are formatted. "
"(Contributed by Ammar Askar in :issue:`44569`.)"
msgstr ""
#: whatsnew/3.11.rst:1111
#, fuzzy
msgid ""
"Add :func:`traceback.TracebackException.print`, which prints the formatted :"
"exc:`~traceback.TracebackException` instance to a file. (Contributed by Irit "
"Katriel in :issue:`33809`.)"
msgstr ""
"Ajout de :func:`sys.exception` qui renvoie l'instance de l'exception active "
"(équivalent à ``sys.exc_info()[1]``) (contribution d'*Irit Katriel* dans :"
"issue:`46328`)."
#: whatsnew/3.11.rst:1119
msgid "typing"
msgstr ""
#: whatsnew/3.11.rst:1121
msgid "For major changes, see :ref:`new-feat-related-type-hints-311`."
msgstr ""
"Pour les modifications majeures, voir :ref:`new-feat-related-type-hints-311`."
#: whatsnew/3.11.rst:1123
msgid ""
"Add :func:`typing.assert_never` and :class:`typing.Never`. :func:`typing."
"assert_never` is useful for asking a type checker to confirm that a line of "
"code is not reachable. At runtime, it raises an :exc:`AssertionError`. "
"(Contributed by Jelle Zijlstra in :gh:`90633`.)"
msgstr ""
#: whatsnew/3.11.rst:1129
msgid ""
"Add :func:`typing.reveal_type`. This is useful for asking a type checker "
"what type it has inferred for a given expression. At runtime it prints the "
"type of the received value. (Contributed by Jelle Zijlstra in :gh:`90572`.)"
msgstr ""
#: whatsnew/3.11.rst:1134
msgid ""
"Add :func:`typing.assert_type`. This is useful for asking a type checker to "
"confirm that the type it has inferred for a given expression matches the "
"given type. At runtime it simply returns the received value. (Contributed by "
"Jelle Zijlstra in :gh:`90638`.)"
msgstr ""
#: whatsnew/3.11.rst:1139
msgid ""
":data:`typing.TypedDict` types can now be generic. (Contributed by Samodya "
"Abeysiriwardane in :gh:`89026`.)"
msgstr ""
#: whatsnew/3.11.rst:1142
msgid ""
":class:`~typing.NamedTuple` types can now be generic. (Contributed by Serhiy "
"Storchaka in :issue:`43923`.)"
msgstr ""
#: whatsnew/3.11.rst:1145
msgid ""
"Allow subclassing of :class:`typing.Any`. This is useful for avoiding type "
"checker errors related to highly dynamic class, such as mocks. (Contributed "
"by Shantanu Jain in :gh:`91154`.)"
msgstr ""
#: whatsnew/3.11.rst:1149
msgid ""
"The :func:`typing.final` decorator now sets the ``__final__`` attributed on "
"the decorated object. (Contributed by Jelle Zijlstra in :gh:`90500`.)"
msgstr ""
#: whatsnew/3.11.rst:1153
msgid ""
"The :func:`typing.get_overloads` function can be used for introspecting the "
"overloads of a function. :func:`typing.clear_overloads` can be used to clear "
"all registered overloads of a function. (Contributed by Jelle Zijlstra in :"
"gh:`89263`.)"
msgstr ""
#: whatsnew/3.11.rst:1158
msgid ""
"The :meth:`~object.__init__` method of :class:`~typing.Protocol` subclasses "
"is now preserved. (Contributed by Adrian Garcia Badarasco in :gh:`88970`.)"
msgstr ""
#: whatsnew/3.11.rst:1161
msgid ""
"The representation of empty tuple types (``Tuple[()]``) is simplified. This "
"affects introspection, e.g. ``get_args(Tuple[()])`` now evaluates to ``()`` "
"instead of ``((),)``. (Contributed by Serhiy Storchaka in :gh:`91137`.)"
msgstr ""
#: whatsnew/3.11.rst:1166
msgid ""
"Loosen runtime requirements for type annotations by removing the callable "
"check in the private ``typing._type_check`` function. (Contributed by "
"Gregory Beauregard in :gh:`90802`.)"
msgstr ""
#: whatsnew/3.11.rst:1170
msgid ""
":func:`typing.get_type_hints` now supports evaluating strings as forward "
"references in :ref:`PEP 585 generic aliases <types-genericalias>`. "
"(Contributed by Niklas Rosenstein in :gh:`85542`.)"
msgstr ""
#: whatsnew/3.11.rst:1174
msgid ""
":func:`typing.get_type_hints` no longer adds :data:`~typing.Optional` to "
"parameters with ``None`` as a default. (Contributed by Nikita Sobolev in :gh:"
"`90353`.)"
msgstr ""
#: whatsnew/3.11.rst:1178
msgid ""
":func:`typing.get_type_hints` now supports evaluating bare stringified :data:"
"`~typing.ClassVar` annotations. (Contributed by Gregory Beauregard in :gh:"
"`90711`.)"
msgstr ""
#: whatsnew/3.11.rst:1182
msgid ""
":func:`typing.no_type_check` no longer modifies external classes and "
"functions. It also now correctly marks classmethods as not to be type "
"checked. (Contributed by Nikita Sobolev in :gh:`90729`.)"
msgstr ""
#: whatsnew/3.11.rst:1190
msgid "unicodedata"
msgstr "``unicodedata``"
#: whatsnew/3.11.rst:1192
#, fuzzy
msgid ""
"The Unicode database has been updated to version 14.0.0. (Contributed by "
"Benjamin Peterson in :issue:`45190`)."
msgstr ""
"La base de donnée Unicode a été mise à jour à la version 14.0.0 (:issue:"
"`45190`)."
#: whatsnew/3.11.rst:1199
msgid "unittest"
msgstr ""
#: whatsnew/3.11.rst:1201
msgid ""
"Added methods :meth:`~unittest.TestCase.enterContext` and :meth:`~unittest."
"TestCase.enterClassContext` of class :class:`~unittest.TestCase`, method :"
"meth:`~unittest.IsolatedAsyncioTestCase.enterAsyncContext` of class :class:"
"`~unittest.IsolatedAsyncioTestCase` and function :func:`unittest."
"enterModuleContext`. (Contributed by Serhiy Storchaka in :issue:`45046`.)"
msgstr ""
#: whatsnew/3.11.rst:1213
msgid "venv"
msgstr "``venv``"
#: whatsnew/3.11.rst:1215
msgid ""
"When new Python virtual environments are created, the *venv* :ref:`sysconfig "
"installation scheme <installation_paths>` is used to determine the paths "
"inside the environment. When Python runs in a virtual environment, the same "
"installation scheme is the default. That means that downstream distributors "
"can change the default sysconfig install scheme without changing behavior of "
"virtual environments. Third party code that also creates new virtual "
"environments should do the same. (Contributed by Miro Hrončok in :issue:"
"`45413`.)"
msgstr ""
#: whatsnew/3.11.rst:1229
msgid "warnings"
msgstr ""
#: whatsnew/3.11.rst:1231
msgid ""
":func:`warnings.catch_warnings` now accepts arguments for :func:`warnings."
"simplefilter`, providing a more concise way to locally ignore warnings or "
"convert them to errors. (Contributed by Zac Hatfield-Dodds in :issue:"
"`47074`.)"
msgstr ""
#: whatsnew/3.11.rst:1239
msgid "zipfile"
msgstr "``zipfile``"
#: whatsnew/3.11.rst:1241
msgid ""
"Added support for specifying member name encoding for reading metadata in a :"
"class:`~zipfile.ZipFile`'s directory and file headers. (Contributed by "
"Stephen J. Turnbull and Serhiy Storchaka in :issue:`28080`.)"
msgstr ""
#: whatsnew/3.11.rst:1245
msgid ""
"Added :meth:`ZipFile.mkdir() <zipfile.ZipFile.mkdir>` for creating new "
"directories inside ZIP archives. (Contributed by Sam Ezeh in :gh:`49083`.)"
msgstr ""
#: whatsnew/3.11.rst:1249
msgid ""
"Added :attr:`~zipfile.Path.stem`, :attr:`~zipfile.Path.suffix` and :attr:"
"`~zipfile.Path.suffixes` to :class:`zipfile.Path`. (Contributed by Miguel "
"Brito in :gh:`88261`.)"
msgstr ""
#: whatsnew/3.11.rst:1257
msgid "Optimizations"
msgstr "Optimisations"
#: whatsnew/3.11.rst:1259
msgid ""
"This section covers specific optimizations independent of the :ref:"
"`whatsnew311-faster-cpython` project, which is covered in its own section."
msgstr ""
#: whatsnew/3.11.rst:1262
msgid ""
"The compiler now optimizes simple :ref:`printf-style % formatting <old-"
"string-formatting>` on string literals containing only the format codes "
"``%s``, ``%r`` and ``%a`` and makes it as fast as a corresponding :term:`f-"
"string` expression. (Contributed by Serhiy Storchaka in :issue:`28307`.)"
msgstr ""
#: whatsnew/3.11.rst:1268
msgid ""
"Integer division (``//``) is better tuned for optimization by compilers. It "
"is now around 20% faster on x86-64 when dividing an :class:`int` by a value "
"smaller than ``2**30``. (Contributed by Gregory P. Smith and Tim Peters in :"
"gh:`90564`.)"
msgstr ""
#: whatsnew/3.11.rst:1273
msgid ""
":func:`sum` is now nearly 30% faster for integers smaller than ``2**30``. "
"(Contributed by Stefan Behnel in :gh:`68264`.)"
msgstr ""
#: whatsnew/3.11.rst:1276
msgid ""
"Resizing lists is streamlined for the common case, speeding up :meth:`list."
"append` by ≈15% and simple :term:`list comprehension`\\s by up to 20-30% "
"(Contributed by Dennis Sweeney in :gh:`91165`.)"
msgstr ""
#: whatsnew/3.11.rst:1281
msgid ""
"Dictionaries don't store hash values when all keys are Unicode objects, "
"decreasing :class:`dict` size. For example, ``sys.getsizeof(dict."
"fromkeys(\"abcdefg\"))`` is reduced from 352 bytes to 272 bytes (23% "
"smaller) on 64-bit platforms. (Contributed by Inada Naoki in :issue:`46845`.)"
msgstr ""
#: whatsnew/3.11.rst:1287
msgid ""
"Using :class:`asyncio.DatagramProtocol` is now orders of magnitude faster "
"when transferring large files over UDP, with speeds over 100 times higher "
"for a ≈60 MiB file. (Contributed by msoxzw in :gh:`91487`.)"
msgstr ""
#: whatsnew/3.11.rst:1292
msgid ""
":mod:`math` functions :func:`~math.comb` and :func:`~math.perm` are now ≈10 "
"times faster for large arguments (with a larger speedup for larger *k*). "
"(Contributed by Serhiy Storchaka in :issue:`37295`.)"
msgstr ""
#: whatsnew/3.11.rst:1296
msgid ""
"The :mod:`statistics` functions :func:`~statistics.mean`, :func:`~statistics."
"variance` and :func:`~statistics.stdev` now consume iterators in one pass "
"rather than converting them to a :class:`list` first. This is twice as fast "
"and can save substantial memory. (Contributed by Raymond Hettinger in :gh:"
"`90415`.)"
msgstr ""
#: whatsnew/3.11.rst:1302
msgid ""
":func:`unicodedata.normalize` now normalizes pure-ASCII strings in constant "
"time. (Contributed by Dong-hee Na in :issue:`44987`.)"
msgstr ""
#: whatsnew/3.11.rst:1310
msgid "Faster CPython"
msgstr ""
#: whatsnew/3.11.rst:1312
msgid ""
"CPython 3.11 is an average of `25% faster <https://github.com/faster-cpython/"
"ideas#published-results>`_ than CPython 3.10 as measured with the "
"`pyperformance <https://github.com/python/pyperformance>`_ benchmark suite, "
"when compiled with GCC on Ubuntu Linux. Depending on your workload, the "
"overall speedup could be 10-60%."
msgstr ""
#: whatsnew/3.11.rst:1319
msgid ""
"This project focuses on two major areas in Python: :ref:`whatsnew311-faster-"
"startup` and :ref:`whatsnew311-faster-runtime`. Optimizations not covered by "
"this project are listed separately under :ref:`whatsnew311-optimizations`."
msgstr ""
#: whatsnew/3.11.rst:1328
msgid "Faster Startup"
msgstr ""
#: whatsnew/3.11.rst:1333
msgid "Frozen imports / Static code objects"
msgstr ""
#: whatsnew/3.11.rst:1335
msgid ""
"Python caches :term:`bytecode` in the :ref:`__pycache__ <tut-pycache>` "
"directory to speed up module loading."
msgstr ""
#: whatsnew/3.11.rst:1338
msgid "Previously in 3.10, Python module execution looked like this:"
msgstr ""
#: whatsnew/3.11.rst:1344
msgid ""
"In Python 3.11, the core modules essential for Python startup are "
"\"frozen\". This means that their :ref:`codeobjects` (and bytecode) are "
"statically allocated by the interpreter. This reduces the steps in module "
"execution process to:"
msgstr ""
#: whatsnew/3.11.rst:1353
msgid ""
"Interpreter startup is now 10-15% faster in Python 3.11. This has a big "
"impact for short-running programs using Python."
msgstr ""
"Le lancement de l'interpréteur est 10 à 15 % plus rapide dans la version "
"3.11. Cela a un grand impact pour les programmes courts utilisant Python."
#: whatsnew/3.11.rst:1356
msgid ""
"(Contributed by Eric Snow, Guido van Rossum and Kumar Aditya in many issues.)"
msgstr ""
#: whatsnew/3.11.rst:1362
msgid "Faster Runtime"
msgstr ""
#: whatsnew/3.11.rst:1367
msgid "Cheaper, lazy Python frames"
msgstr ""
#: whatsnew/3.11.rst:1369
msgid ""
"Python frames, holding execution information, are created whenever Python "
"calls a Python function. The following are new frame optimizations:"
msgstr ""
#: whatsnew/3.11.rst:1373
msgid "Streamlined the frame creation process."
msgstr ""
#: whatsnew/3.11.rst:1374
msgid ""
"Avoided memory allocation by generously re-using frame space on the C stack."
msgstr ""
#: whatsnew/3.11.rst:1375
msgid ""
"Streamlined the internal frame struct to contain only essential information. "
"Frames previously held extra debugging and memory management information."
msgstr ""
#: whatsnew/3.11.rst:1378
msgid ""
"Old-style :ref:`frame objects <frame-objects>` are now created only when "
"requested by debuggers or by Python introspection functions such as :func:"
"`sys._getframe` and :func:`inspect.currentframe`. For most user code, no "
"frame objects are created at all. As a result, nearly all Python functions "
"calls have sped up significantly. We measured a 3-7% speedup in "
"pyperformance."
msgstr ""
#: whatsnew/3.11.rst:1385
msgid "(Contributed by Mark Shannon in :issue:`44590`.)"
msgstr ""
#: whatsnew/3.11.rst:1392
msgid "Inlined Python function calls"
msgstr ""
#: whatsnew/3.11.rst:1394
msgid ""
"During a Python function call, Python will call an evaluating C function to "
"interpret that function's code. This effectively limits pure Python "
"recursion to what's safe for the C stack."
msgstr ""
#: whatsnew/3.11.rst:1398
msgid ""
"In 3.11, when CPython detects Python code calling another Python function, "
"it sets up a new frame, and \"jumps\" to the new code inside the new frame. "
"This avoids calling the C interpreting function altogether."
msgstr ""
#: whatsnew/3.11.rst:1402
msgid ""
"Most Python function calls now consume no C stack space, speeding them up. "
"In simple recursive functions like fibonacci or factorial, we observed a "
"1.7x speedup. This also means recursive functions can recurse significantly "
"deeper (if the user increases the recursion limit with :func:`sys."
"setrecursionlimit`). We measured a 1-3% improvement in pyperformance."
msgstr ""
#: whatsnew/3.11.rst:1409
msgid "(Contributed by Pablo Galindo and Mark Shannon in :issue:`45256`.)"
msgstr ""
#: whatsnew/3.11.rst:1415
msgid "PEP 659: Specializing Adaptive Interpreter"
msgstr ""
#: whatsnew/3.11.rst:1417
msgid ""
":pep:`659` is one of the key parts of the Faster CPython project. The "
"general idea is that while Python is a dynamic language, most code has "
"regions where objects and types rarely change. This concept is known as "
"*type stability*."
msgstr ""
#: whatsnew/3.11.rst:1421
msgid ""
"At runtime, Python will try to look for common patterns and type stability "
"in the executing code. Python will then replace the current operation with a "
"more specialized one. This specialized operation uses fast paths available "
"only to those use cases/types, which generally outperform their generic "
"counterparts. This also brings in another concept called *inline caching*, "
"where Python caches the results of expensive operations directly in the :"
"term:`bytecode`."
msgstr ""
#: whatsnew/3.11.rst:1429
msgid ""
"The specializer will also combine certain common instruction pairs into one "
"superinstruction, reducing the overhead during execution."
msgstr ""
#: whatsnew/3.11.rst:1432
msgid ""
"Python will only specialize when it sees code that is \"hot\" (executed "
"multiple times). This prevents Python from wasting time on run-once code. "
"Python can also de-specialize when code is too dynamic or when the use "
"changes. Specialization is attempted periodically, and specialization "
"attempts are not too expensive, allowing specialization to adapt to new "
"circumstances."
msgstr ""
#: whatsnew/3.11.rst:1439
msgid ""
"(PEP written by Mark Shannon, with ideas inspired by Stefan Brunthaler. See :"
"pep:`659` for more information. Implementation by Mark Shannon and Brandt "
"Bucher, with additional help from Irit Katriel and Dennis Sweeney.)"
msgstr ""
#: whatsnew/3.11.rst:1447
msgid "Operation"
msgstr ""
#: whatsnew/3.11.rst:1447
msgid "Form"
msgstr ""
#: whatsnew/3.11.rst:1447
msgid "Specialization"
msgstr ""
#: whatsnew/3.11.rst:1447
msgid "Operation speedup (up to)"
msgstr ""
#: whatsnew/3.11.rst:1447
msgid "Contributor(s)"
msgstr ""
#: whatsnew/3.11.rst:1450
msgid "Binary operations"
msgstr ""
#: whatsnew/3.11.rst:1450
msgid "``x + x``"
msgstr ""
#: whatsnew/3.11.rst:1452
msgid "``x - x``"
msgstr ""
#: whatsnew/3.11.rst:1454
msgid "``x * x``"
msgstr ""
#: whatsnew/3.11.rst:1450
msgid ""
"Binary add, multiply and subtract for common types such as :class:`int`, :"
"class:`float` and :class:`str` take custom fast paths for their underlying "
"types."
msgstr ""
#: whatsnew/3.11.rst:1450
msgid "10%"
msgstr ""
#: whatsnew/3.11.rst:1450
msgid "Mark Shannon, Dong-hee Na, Brandt Bucher, Dennis Sweeney"
msgstr ""
#: whatsnew/3.11.rst:1456
msgid "Subscript"
msgstr ""
#: whatsnew/3.11.rst:1456
msgid "``a[i]``"
msgstr ""
#: whatsnew/3.11.rst:1456
msgid ""
"Subscripting container types such as :class:`list`, :class:`tuple` and :"
"class:`dict` directly index the underlying data structures."
msgstr ""
#: whatsnew/3.11.rst:1460
msgid ""
"Subscripting custom :meth:`~object.__getitem__` is also inlined similar to :"
"ref:`inline-calls`."
msgstr ""
#: whatsnew/3.11.rst:1463
msgid "10-25%"
msgstr ""
#: whatsnew/3.11.rst:1456
msgid "Irit Katriel, Mark Shannon"
msgstr ""
#: whatsnew/3.11.rst:1463
msgid "Store subscript"
msgstr ""
#: whatsnew/3.11.rst:1463
msgid "``a[i] = z``"
msgstr ""
#: whatsnew/3.11.rst:1463
msgid "Similar to subscripting specialization above."
msgstr ""
#: whatsnew/3.11.rst:1463
msgid "Dennis Sweeney"
msgstr ""
#: whatsnew/3.11.rst:1466
msgid "Calls"
msgstr "Appels"
#: whatsnew/3.11.rst:1466
msgid "``f(arg)``"
msgstr ""
#: whatsnew/3.11.rst:1468
msgid "``C(arg)``"
msgstr ""
#: whatsnew/3.11.rst:1466
msgid ""
"Calls to common builtin (C) functions and types such as :func:`len` and :"
"class:`str` directly call their underlying C version. This avoids going "
"through the internal calling convention."
msgstr ""
#: whatsnew/3.11.rst:1466
msgid "20%"
msgstr ""
#: whatsnew/3.11.rst:1466
msgid "Mark Shannon, Ken Jin"
msgstr ""
#: whatsnew/3.11.rst:1471
msgid "Load global variable"
msgstr ""
#: whatsnew/3.11.rst:1471
msgid "``print``"
msgstr ""
#: whatsnew/3.11.rst:1473
msgid "``len``"
msgstr ""
#: whatsnew/3.11.rst:1471
msgid ""
"The object's index in the globals/builtins namespace is cached. Loading "
"globals and builtins require zero namespace lookups."
msgstr ""
#: whatsnew/3.11.rst:1471
msgid "[#load-global]_"
msgstr ""
#: whatsnew/3.11.rst:1475 whatsnew/3.11.rst:1484
msgid "Mark Shannon"
msgstr ""
#: whatsnew/3.11.rst:1475
msgid "Load attribute"
msgstr ""
#: whatsnew/3.11.rst:1475
msgid "``o.attr``"
msgstr ""
#: whatsnew/3.11.rst:1475
msgid ""
"Similar to loading global variables. The attribute's index inside the class/"
"object's namespace is cached. In most cases, attribute loading will require "
"zero namespace lookups."
msgstr ""
#: whatsnew/3.11.rst:1475
msgid "[#load-attr]_"
msgstr ""
#: whatsnew/3.11.rst:1480
msgid "Load methods for call"
msgstr ""
#: whatsnew/3.11.rst:1480
msgid "``o.meth()``"
msgstr ""
#: whatsnew/3.11.rst:1480
msgid ""
"The actual address of the method is cached. Method loading now has no "
"namespace lookups -- even for classes with long inheritance chains."
msgstr ""
#: whatsnew/3.11.rst:1480
msgid "10-20%"
msgstr ""
#: whatsnew/3.11.rst:1480
msgid "Ken Jin, Mark Shannon"
msgstr ""
#: whatsnew/3.11.rst:1484
msgid "Store attribute"
msgstr ""
#: whatsnew/3.11.rst:1484
msgid "``o.attr = z``"
msgstr ""
#: whatsnew/3.11.rst:1484
msgid "Similar to load attribute optimization."
msgstr ""
#: whatsnew/3.11.rst:1484
msgid "2% in pyperformance"
msgstr ""
#: whatsnew/3.11.rst:1487
msgid "Unpack Sequence"
msgstr ""
#: whatsnew/3.11.rst:1487
msgid "``*seq``"
msgstr ""
#: whatsnew/3.11.rst:1487
msgid ""
"Specialized for common containers such as :class:`list` and :class:`tuple`. "
"Avoids internal calling convention."
msgstr ""
#: whatsnew/3.11.rst:1487
msgid "8%"
msgstr ""
#: whatsnew/3.11.rst:1487
msgid "Brandt Bucher"
msgstr ""
#: whatsnew/3.11.rst:1492
msgid ""
"A similar optimization already existed since Python 3.8. 3.11 specializes "
"for more forms and reduces some overhead."
msgstr ""
#: whatsnew/3.11.rst:1495
msgid ""
"A similar optimization already existed since Python 3.10. 3.11 specializes "
"for more forms. Furthermore, all attribute loads should be sped up by :issue:"
"`45947`."
msgstr ""
#: whatsnew/3.11.rst:1503
msgid "Misc"
msgstr ""
#: whatsnew/3.11.rst:1505
msgid ""
"Objects now require less memory due to lazily created object namespaces. "
"Their namespace dictionaries now also share keys more freely. (Contributed "
"Mark Shannon in :issue:`45340` and :issue:`40116`.)"
msgstr ""
#: whatsnew/3.11.rst:1509
#, fuzzy
msgid ""
"\"Zero-cost\" exceptions are implemented, eliminating the cost of :keyword:"
"`try` statements when no exception is raised. (Contributed by Mark Shannon "
"in :issue:`40222`.)"
msgstr ""
"Les exceptions « gratuites » sont maintenant implémentées. Le coût des "
"instructions ``try`` est pratiquement éliminé quand aucune exception n'est "
"levée (contribution de *Mark Shannon* dans :issue:`40222`)."
#: whatsnew/3.11.rst:1513
msgid ""
"A more concise representation of exceptions in the interpreter reduced the "
"time required for catching an exception by about 10%. (Contributed by Irit "
"Katriel in :issue:`45711`.)"
msgstr ""
#: whatsnew/3.11.rst:1517
msgid ""
":mod:`re`'s regular expression matching engine has been partially "
"refactored, and now uses computed gotos (or \"threaded code\") on supported "
"platforms. As a result, Python 3.11 executes the `pyperformance regular "
"expression benchmarks <https://pyperformance.readthedocs.io/benchmarks."
"html#regex-dna>`_ up to 10% faster than Python 3.10. (Contributed by Brandt "
"Bucher in :gh:`91404`.)"
msgstr ""
#: whatsnew/3.11.rst:1528
msgid "FAQ"
msgstr ""
#: whatsnew/3.11.rst:1533
msgid "How should I write my code to utilize these speedups?"
msgstr ""
#: whatsnew/3.11.rst:1535
msgid ""
"Write Pythonic code that follows common best practices; you don't have to "
"change your code. The Faster CPython project optimizes for common code "
"patterns we observe."
msgstr ""
#: whatsnew/3.11.rst:1543
msgid "Will CPython 3.11 use more memory?"
msgstr ""
#: whatsnew/3.11.rst:1545
msgid ""
"Maybe not; we don't expect memory use to exceed 20% higher than 3.10. This "
"is offset by memory optimizations for frame objects and object dictionaries "
"as mentioned above."
msgstr ""
#: whatsnew/3.11.rst:1553
msgid "I don't see any speedups in my workload. Why?"
msgstr ""
#: whatsnew/3.11.rst:1555
msgid ""
"Certain code won't have noticeable benefits. If your code spends most of its "
"time on I/O operations, or already does most of its computation in a C "
"extension library like NumPy, there won't be significant speedups. This "
"project currently benefits pure-Python workloads the most."
msgstr ""
#: whatsnew/3.11.rst:1560
msgid ""
"Furthermore, the pyperformance figures are a geometric mean. Even within the "
"pyperformance benchmarks, certain benchmarks have slowed down slightly, "
"while others have sped up by nearly 2x!"
msgstr ""
#: whatsnew/3.11.rst:1568
msgid "Is there a JIT compiler?"
msgstr ""
#: whatsnew/3.11.rst:1570
msgid "No. We're still exploring other optimizations."
msgstr ""
#: whatsnew/3.11.rst:1576
msgid "About"
msgstr "À propos"
#: whatsnew/3.11.rst:1578
msgid ""
"Faster CPython explores optimizations for :term:`CPython`. The main team is "
"funded by Microsoft to work on this full-time. Pablo Galindo Salgado is also "
"funded by Bloomberg LP to work on the project part-time. Finally, many "
"contributors are volunteers from the community."
msgstr ""
#: whatsnew/3.11.rst:1587
msgid "CPython bytecode changes"
msgstr ""
#: whatsnew/3.11.rst:1589
msgid ""
"The bytecode now contains inline cache entries, which take the form of the "
"newly-added :opcode:`CACHE` instructions. Many opcodes expect to be followed "
"by an exact number of caches, and instruct the interpreter to skip over them "
"at runtime. Populated caches can look like arbitrary instructions, so great "
"care should be taken when reading or modifying raw, adaptive bytecode "
"containing quickened data."
msgstr ""
#: whatsnew/3.11.rst:1601
#, fuzzy
msgid "New opcodes"
msgstr "Nouveaux modules"
#: whatsnew/3.11.rst:1603
msgid ""
":opcode:`ASYNC_GEN_WRAP`, :opcode:`RETURN_GENERATOR` and :opcode:`SEND`, "
"used in generators and co-routines."
msgstr ""
#: whatsnew/3.11.rst:1606
msgid ""
":opcode:`COPY_FREE_VARS`, which avoids needing special caller-side code for "
"closures."
msgstr ""
#: whatsnew/3.11.rst:1609
msgid ""
":opcode:`JUMP_BACKWARD_NO_INTERRUPT`, for use in certain loops where "
"handling interrupts is undesirable."
msgstr ""
#: whatsnew/3.11.rst:1612
msgid ":opcode:`MAKE_CELL`, to create :ref:`cell-objects`."
msgstr ""
#: whatsnew/3.11.rst:1614
msgid ""
":opcode:`CHECK_EG_MATCH` and :opcode:`PREP_RERAISE_STAR`, to handle the :"
"ref:`new exception groups and except* <whatsnew311-pep654>` added in :pep:"
"`654`."
msgstr ""
#: whatsnew/3.11.rst:1618
msgid ":opcode:`PUSH_EXC_INFO`, for use in exception handlers."
msgstr ""
#: whatsnew/3.11.rst:1620
msgid ""
":opcode:`RESUME`, a no-op, for internal tracing, debugging and optimization "
"checks."
msgstr ""
#: whatsnew/3.11.rst:1627
msgid "Replaced opcodes"
msgstr ""
#: whatsnew/3.11.rst:1630
msgid "Replaced Opcode(s)"
msgstr ""
#: whatsnew/3.11.rst:1630
#, fuzzy
msgid "New Opcode(s)"
msgstr "Nouveaux modules"
#: whatsnew/3.11.rst:1630
msgid "Notes"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!BINARY_*`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!INPLACE_*`"
msgstr ""
#: whatsnew/3.11.rst:1632
msgid ":opcode:`BINARY_OP`"
msgstr ""
#: whatsnew/3.11.rst:1632
msgid "Replaced all numeric binary/in-place opcodes with a single opcode"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!CALL_FUNCTION`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!CALL_FUNCTION_KW`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!CALL_METHOD`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`CALL`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`KW_NAMES`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`PRECALL`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`PUSH_NULL`"
msgstr ""
#: whatsnew/3.11.rst:1635
msgid ""
"Decouples argument shifting for methods from handling of keyword arguments; "
"allows better specialization of calls"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!DUP_TOP`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!DUP_TOP_TWO`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!ROT_TWO`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!ROT_THREE`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!ROT_FOUR`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!ROT_N`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`COPY`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`SWAP`"
msgstr ""
#: whatsnew/3.11.rst:1640
msgid "Stack manipulation instructions"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!JUMP_IF_NOT_EXC_MATCH`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`CHECK_EXC_MATCH`"
msgstr ""
#: whatsnew/3.11.rst:1647
msgid "Now performs check but doesn't jump"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!JUMP_ABSOLUTE`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!POP_JUMP_IF_FALSE`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!POP_JUMP_IF_TRUE`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`JUMP_BACKWARD`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`POP_JUMP_BACKWARD_IF_* <POP_JUMP_BACKWARD_IF_TRUE>`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`POP_JUMP_FORWARD_IF_* <POP_JUMP_FORWARD_IF_TRUE>`"
msgstr ""
#: whatsnew/3.11.rst:1649
msgid ""
"See [#bytecode-jump]_; ``TRUE``, ``FALSE``, ``NONE`` and ``NOT_NONE`` "
"variants for each direction"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!SETUP_WITH`"
msgstr ""
#: whatsnew/3.11.rst:0
msgid ":opcode:`!SETUP_ASYNC_WITH`"
msgstr ""
#: whatsnew/3.11.rst:1655
msgid ":opcode:`BEFORE_WITH`"
msgstr ""
#: whatsnew/3.11.rst:1655
msgid ":keyword:`with` block setup"
msgstr ""
#: whatsnew/3.11.rst:1659
msgid ""
"All jump opcodes are now relative, including the existing :opcode:"
"`JUMP_IF_TRUE_OR_POP` and :opcode:`JUMP_IF_FALSE_OR_POP`. The argument is "
"now an offset from the current instruction rather than an absolute location."
msgstr ""
#: whatsnew/3.11.rst:1670
msgid "Changed/removed opcodes"
msgstr ""
#: whatsnew/3.11.rst:1672
msgid ""
"Changed :opcode:`MATCH_CLASS` and :opcode:`MATCH_KEYS` to no longer push an "
"additional boolean value to indicate success/failure. Instead, ``None`` is "
"pushed on failure in place of the tuple of extracted values."
msgstr ""
#: whatsnew/3.11.rst:1677
msgid ""
"Changed opcodes that work with exceptions to reflect them now being "
"represented as one item on the stack instead of three (see :gh:`89874`)."
msgstr ""
#: whatsnew/3.11.rst:1681
msgid ""
"Removed :opcode:`!COPY_DICT_WITHOUT_KEYS`, :opcode:`!GEN_START`, :opcode:`!"
"POP_BLOCK`, :opcode:`!SETUP_FINALLY` and :opcode:`!YIELD_FROM`."
msgstr ""
#: whatsnew/3.11.rst:2561
msgid "Deprecated"
msgstr "Obsolescence"
#: whatsnew/3.11.rst:1691
msgid ""
"This section lists Python APIs that have been deprecated in Python 3.11."
msgstr ""
"Cette section liste les API Python qui sont devenues obsolètes dans la "
"version 3.11."
#: whatsnew/3.11.rst:1693
msgid ""
"Deprecated C APIs are :ref:`listed separately <whatsnew311-c-api-"
"deprecated>`."
msgstr ""
#: whatsnew/3.11.rst:1700
msgid "Language/Builtins"
msgstr ""
#: whatsnew/3.11.rst:1702
msgid ""
"Chaining :class:`classmethod` descriptors (introduced in :issue:`19072`) is "
"now deprecated. It can no longer be used to wrap other descriptors such as :"
"class:`property`. The core design of this feature was flawed and caused a "
"number of downstream problems. To \"pass-through\" a :class:`classmethod`, "
"consider using the :attr:`!__wrapped__` attribute that was added in Python "
"3.10. (Contributed by Raymond Hettinger in :gh:`89519`.)"
msgstr ""
#: whatsnew/3.11.rst:1710
msgid ""
"Octal escapes in string and bytes literals with values larger than ``0o377`` "
"(255 in decimal) now produce a :exc:`DeprecationWarning`. In a future Python "
"version, they will raise a :exc:`SyntaxWarning` and eventually a :exc:"
"`SyntaxError`. (Contributed by Serhiy Storchaka in :gh:`81548`.)"
msgstr ""
#: whatsnew/3.11.rst:1716
msgid ""
"The delegation of :func:`int` to :meth:`~object.__trunc__` is now "
"deprecated. Calling ``int(a)`` when ``type(a)`` implements :meth:`!"
"__trunc__` but not :meth:`~object.__int__` or :meth:`~object.__index__` now "
"raises a :exc:`DeprecationWarning`. (Contributed by Zackery Spytz in :issue:"
"`44977`.)"
msgstr ""
#: whatsnew/3.11.rst:1726
#, fuzzy
msgid "Modules"
msgstr "Nouveaux modules"
#: whatsnew/3.11.rst:1730
msgid ""
":pep:`594` led to the deprecations of the following modules slated for "
"removal in Python 3.13:"
msgstr ""
#: whatsnew/3.11.rst:1734
msgid ":mod:`aifc`"
msgstr ""
#: whatsnew/3.11.rst:1734
msgid ":mod:`chunk`"
msgstr ""
#: whatsnew/3.11.rst:1734
msgid ":mod:`msilib`"
msgstr ""
#: whatsnew/3.11.rst:1734
msgid ":mod:`pipes`"
msgstr ""
#: whatsnew/3.11.rst:1734
msgid ":mod:`telnetlib`"
msgstr ""
#: whatsnew/3.11.rst:1736
msgid ":mod:`audioop`"
msgstr ""
#: whatsnew/3.11.rst:1736
msgid ":mod:`crypt`"
msgstr ""
#: whatsnew/3.11.rst:1736
msgid ":mod:`nis`"
msgstr ""
#: whatsnew/3.11.rst:1736
msgid ":mod:`sndhdr`"
msgstr ""
#: whatsnew/3.11.rst:1736
msgid ":mod:`uu`"
msgstr ""
#: whatsnew/3.11.rst:1738
msgid ":mod:`cgi`"
msgstr ""
#: whatsnew/3.11.rst:1738
msgid ":mod:`imghdr`"
msgstr ""
#: whatsnew/3.11.rst:1738
msgid ":mod:`nntplib`"
msgstr ""
#: whatsnew/3.11.rst:1738
msgid ":mod:`spwd`"
msgstr ""
#: whatsnew/3.11.rst:1738
msgid ":mod:`xdrlib`"
msgstr ""
#: whatsnew/3.11.rst:1740
msgid ":mod:`cgitb`"
msgstr ""
#: whatsnew/3.11.rst:1740
msgid ":mod:`mailcap`"
msgstr ""
#: whatsnew/3.11.rst:1740
msgid ":mod:`ossaudiodev`"
msgstr ""
#: whatsnew/3.11.rst:1740
msgid ":mod:`sunau`"
msgstr ""
#: whatsnew/3.11.rst:1743
msgid ""
"(Contributed by Brett Cannon in :issue:`47061` and Victor Stinner in :gh:"
"`68966`.)"
msgstr ""
#: whatsnew/3.11.rst:1746
msgid ""
"The :mod:`asynchat`, :mod:`asyncore` and :mod:`smtpd` modules have been "
"deprecated since at least Python 3.6. Their documentation and deprecation "
"warnings have now been updated to note they will be removed in Python 3.12. "
"(Contributed by Hugo van Kemenade in :issue:`47022`.)"
msgstr ""
#: whatsnew/3.11.rst:1751
msgid ""
"The :mod:`lib2to3` package and :ref:`2to3 <2to3-reference>` tool are now "
"deprecated and may not be able to parse Python 3.10 or newer. See :pep:"
"`617`, introducing the new PEG parser, for details. (Contributed by Victor "
"Stinner in :issue:`40360`.)"
msgstr ""
#: whatsnew/3.11.rst:1756
msgid ""
"Undocumented modules :mod:`!sre_compile`, :mod:`!sre_constants` and :mod:`!"
"sre_parse` are now deprecated. (Contributed by Serhiy Storchaka in :issue:"
"`47152`.)"
msgstr ""
#: whatsnew/3.11.rst:1764
msgid "Standard Library"
msgstr "Bibliothèque Standard"
#: whatsnew/3.11.rst:1766
msgid ""
"The following have been deprecated in :mod:`configparser` since Python 3.2. "
"Their deprecation warnings have now been updated to note they will be "
"removed in Python 3.12:"
msgstr ""
#: whatsnew/3.11.rst:1770
msgid "the :class:`!configparser.SafeConfigParser` class"
msgstr ""
#: whatsnew/3.11.rst:1771
msgid "the :attr:`!configparser.ParsingError.filename` property"
msgstr ""
#: whatsnew/3.11.rst:1772
msgid "the :meth:`configparser.RawConfigParser.readfp` method"
msgstr ""
#: whatsnew/3.11.rst:1774
msgid "(Contributed by Hugo van Kemenade in :issue:`45173`.)"
msgstr ""
#: whatsnew/3.11.rst:1776
msgid ""
":class:`!configparser.LegacyInterpolation` has been deprecated in the "
"docstring since Python 3.2, and is not listed in the :mod:`configparser` "
"documentation. It now emits a :exc:`DeprecationWarning` and will be removed "
"in Python 3.13. Use :class:`configparser.BasicInterpolation` or :class:"
"`configparser.ExtendedInterpolation` instead. (Contributed by Hugo van "
"Kemenade in :issue:`46607`.)"
msgstr ""
#: whatsnew/3.11.rst:1783
msgid ""
"The older set of :mod:`importlib.resources` functions were deprecated in "
"favor of the replacements added in Python 3.9 and will be removed in a "
"future Python version, due to not supporting resources located within "
"package subdirectories:"
msgstr ""
#: whatsnew/3.11.rst:1788
msgid ":func:`importlib.resources.contents`"
msgstr ""
#: whatsnew/3.11.rst:1789
msgid ":func:`importlib.resources.is_resource`"
msgstr ""
#: whatsnew/3.11.rst:1790
msgid ":func:`importlib.resources.open_binary`"
msgstr ""
#: whatsnew/3.11.rst:1791
msgid ":func:`importlib.resources.open_text`"
msgstr ""
#: whatsnew/3.11.rst:1792
msgid ":func:`importlib.resources.read_binary`"
msgstr ""
#: whatsnew/3.11.rst:1793
msgid ":func:`importlib.resources.read_text`"
msgstr ""
#: whatsnew/3.11.rst:1794
msgid ":func:`importlib.resources.path`"
msgstr ""
#: whatsnew/3.11.rst:1796
msgid ""
"The :func:`locale.getdefaultlocale` function is deprecated and will be "
"removed in Python 3.13. Use :func:`locale.setlocale`, :func:`locale."
"getpreferredencoding(False) <locale.getpreferredencoding>` and :func:`locale."
"getlocale` functions instead. (Contributed by Victor Stinner in :gh:`90817`.)"
msgstr ""
#: whatsnew/3.11.rst:1802
msgid ""
"The :func:`locale.resetlocale` function is deprecated and will be removed in "
"Python 3.13. Use ``locale.setlocale(locale.LC_ALL, \"\")`` instead. "
"(Contributed by Victor Stinner in :gh:`90817`.)"
msgstr ""
#: whatsnew/3.11.rst:1806
msgid ""
"Stricter rules will now be applied for numerical group references and group "
"names in :ref:`regular expressions <re-syntax>`. Only sequences of ASCII "
"digits will now be accepted as a numerical reference, and the group name in :"
"class:`bytes` patterns and replacement strings can only contain ASCII "
"letters, digits and underscores. For now, a deprecation warning is raised "
"for syntax violating these rules. (Contributed by Serhiy Storchaka in :gh:"
"`91760`.)"
msgstr ""
#: whatsnew/3.11.rst:1814
msgid ""
"In the :mod:`re` module, the :func:`!re.template` function and the "
"corresponding :const:`!re.TEMPLATE` and :const:`!re.T` flags are deprecated, "
"as they were undocumented and lacked an obvious purpose. They will be "
"removed in Python 3.13. (Contributed by Serhiy Storchaka and Miro Hrončok "
"in :gh:`92728`.)"
msgstr ""
#: whatsnew/3.11.rst:1820
msgid ""
":func:`turtle.settiltangle` has been deprecated since Python 3.1; it now "
"emits a deprecation warning and will be removed in Python 3.13. Use :func:"
"`turtle.tiltangle` instead (it was earlier incorrectly marked as deprecated, "
"and its docstring is now corrected). (Contributed by Hugo van Kemenade in :"
"issue:`45837`.)"
msgstr ""
#: whatsnew/3.11.rst:1826
msgid ""
":class:`typing.Text`, which exists solely to provide compatibility support "
"between Python 2 and Python 3 code, is now deprecated. Its removal is "
"currently unplanned, but users are encouraged to use :class:`str` instead "
"wherever possible. (Contributed by Alex Waygood in :gh:`92332`.)"
msgstr ""
#: whatsnew/3.11.rst:1832
msgid ""
"The keyword argument syntax for constructing :data:`typing.TypedDict` types "
"is now deprecated. Support will be removed in Python 3.13. (Contributed by "
"Jingchen Ye in :gh:`90224`.)"
msgstr ""
#: whatsnew/3.11.rst:1836
msgid ""
":class:`!webbrowser.MacOSX` is deprecated and will be removed in Python "
"3.13. It is untested, undocumented, and not used by :mod:`webbrowser` "
"itself. (Contributed by Dong-hee Na in :issue:`42255`.)"
msgstr ""
#: whatsnew/3.11.rst:1840
msgid ""
"The behavior of returning a value from a :class:`~unittest.TestCase` and :"
"class:`~unittest.IsolatedAsyncioTestCase` test methods (other than the "
"default ``None`` value) is now deprecated."
msgstr ""
#: whatsnew/3.11.rst:1844
msgid ""
"Deprecated the following not-formally-documented :mod:`unittest` functions, "
"scheduled for removal in Python 3.13:"
msgstr ""
#: whatsnew/3.11.rst:1847
msgid ":func:`!unittest.findTestCases`"
msgstr ""
#: whatsnew/3.11.rst:1848
msgid ":func:`!unittest.makeSuite`"
msgstr ""
#: whatsnew/3.11.rst:1849
msgid ":func:`!unittest.getTestCaseNames`"
msgstr ""
#: whatsnew/3.11.rst:1851
msgid "Use :class:`~unittest.TestLoader` methods instead:"
msgstr ""
#: whatsnew/3.11.rst:1853
msgid ":meth:`unittest.TestLoader.loadTestsFromModule`"
msgstr ""
#: whatsnew/3.11.rst:1854
msgid ":meth:`unittest.TestLoader.loadTestsFromTestCase`"
msgstr ""
#: whatsnew/3.11.rst:1855
msgid ":meth:`unittest.TestLoader.getTestCaseNames`"
msgstr ""
#: whatsnew/3.11.rst:1857
msgid "(Contributed by Erlend E. Aasland in :issue:`5846`.)"
msgstr ""
#: whatsnew/3.11.rst:1859
msgid ""
":meth:`~!unittest.TestProgram.usageExit` is marked deprecated, to be removed "
"in 3.13. (Contributed by Carlos Damázio in :gh:`67048`.)"
msgstr ""
#: whatsnew/3.11.rst:2589
msgid "Pending Removal in Python 3.12"
msgstr ""
#: whatsnew/3.11.rst:1870
msgid ""
"The following Python APIs have been deprecated in earlier Python releases, "
"and will be removed in Python 3.12."
msgstr ""
"Les API Python suivantes sont devenues obsolètes dans des versions "
"précédentes, et seront supprimées dans la version 3.12."
#: whatsnew/3.11.rst:1873
msgid ""
"C APIs pending removal are :ref:`listed separately <whatsnew311-c-api-"
"pending-removal>`."
msgstr ""
#: whatsnew/3.11.rst:1876
msgid "The :mod:`asynchat` module"
msgstr ""
#: whatsnew/3.11.rst:1877
msgid "The :mod:`asyncore` module"
msgstr ""
#: whatsnew/3.11.rst:1878
msgid "The :ref:`entire distutils package <distutils-deprecated>`"
msgstr ""
#: whatsnew/3.11.rst:1879
msgid "The :mod:`imp` module"
msgstr ""
#: whatsnew/3.11.rst:1880
msgid "The :class:`typing.io <typing.IO>` namespace"
msgstr ""
#: whatsnew/3.11.rst:1881
msgid "The :class:`typing.re <typing.Pattern>` namespace"
msgstr ""
#: whatsnew/3.11.rst:1882
msgid ":func:`!cgi.log`"
msgstr ""
#: whatsnew/3.11.rst:1883
msgid ":func:`importlib.find_loader`"
msgstr ""
#: whatsnew/3.11.rst:1884
msgid ":meth:`importlib.abc.Loader.module_repr`"
msgstr ""
#: whatsnew/3.11.rst:1885
msgid ":meth:`importlib.abc.MetaPathFinder.find_module`"
msgstr ""
#: whatsnew/3.11.rst:1886
msgid ":meth:`importlib.abc.PathEntryFinder.find_loader`"
msgstr ""
#: whatsnew/3.11.rst:1887
msgid ":meth:`importlib.abc.PathEntryFinder.find_module`"
msgstr ""
#: whatsnew/3.11.rst:1888
msgid ":meth:`!importlib.machinery.BuiltinImporter.find_module`"
msgstr ""
#: whatsnew/3.11.rst:1889
msgid ":meth:`!importlib.machinery.BuiltinLoader.module_repr`"
msgstr ""
#: whatsnew/3.11.rst:1890
msgid ":meth:`!importlib.machinery.FileFinder.find_loader`"
msgstr ""
#: whatsnew/3.11.rst:1891
msgid ":meth:`!importlib.machinery.FileFinder.find_module`"
msgstr ""
#: whatsnew/3.11.rst:1892
msgid ":meth:`!importlib.machinery.FrozenImporter.find_module`"
msgstr ""
#: whatsnew/3.11.rst:1893
msgid ":meth:`!importlib.machinery.FrozenLoader.module_repr`"
msgstr ""
#: whatsnew/3.11.rst:1894
msgid ":meth:`importlib.machinery.PathFinder.find_module`"
msgstr ""
#: whatsnew/3.11.rst:1895
msgid ":meth:`!importlib.machinery.WindowsRegistryFinder.find_module`"
msgstr ""
#: whatsnew/3.11.rst:1896
msgid ":func:`importlib.util.module_for_loader`"
msgstr ""
#: whatsnew/3.11.rst:1897
msgid ":func:`!importlib.util.set_loader_wrapper`"
msgstr ""
#: whatsnew/3.11.rst:1898
msgid ":func:`!importlib.util.set_package_wrapper`"
msgstr ""
#: whatsnew/3.11.rst:1899
msgid ":class:`pkgutil.ImpImporter`"
msgstr ""
#: whatsnew/3.11.rst:1900
msgid ":class:`pkgutil.ImpLoader`"
msgstr ""
#: whatsnew/3.11.rst:1901
msgid ":meth:`pathlib.Path.link_to`"
msgstr ""
#: whatsnew/3.11.rst:1902
msgid ":func:`!sqlite3.enable_shared_cache`"
msgstr ""
#: whatsnew/3.11.rst:1903
msgid ":func:`!sqlite3.OptimizedUnicode`"
msgstr ""
#: whatsnew/3.11.rst:1904
msgid ":envvar:`PYTHONTHREADDEBUG` environment variable"
msgstr ""
#: whatsnew/3.11.rst:1905
msgid "The following deprecated aliases in :mod:`unittest`:"
msgstr ""
#: whatsnew/3.11.rst:1908
#, fuzzy
msgid "Deprecated alias"
msgstr "Obsolescence"
#: whatsnew/3.11.rst:1908
msgid "Method Name"
msgstr ""
#: whatsnew/3.11.rst:1908
#, fuzzy
msgid "Deprecated in"
msgstr "Obsolescence"
#: whatsnew/3.11.rst:1910
msgid "``failUnless``"
msgstr ""
#: whatsnew/3.11.rst:1917
msgid ":meth:`.assertTrue`"
msgstr ""
#: whatsnew/3.11.rst:1911 whatsnew/3.11.rst:1913 whatsnew/3.11.rst:1915
#: whatsnew/3.11.rst:1916
msgid "3.1"
msgstr ""
#: whatsnew/3.11.rst:1911
msgid "``failIf``"
msgstr ""
#: whatsnew/3.11.rst:1911
msgid ":meth:`.assertFalse`"
msgstr ""
#: whatsnew/3.11.rst:1912
msgid "``failUnlessEqual``"
msgstr ""
#: whatsnew/3.11.rst:1918
msgid ":meth:`.assertEqual`"
msgstr ""
#: whatsnew/3.11.rst:1913
msgid "``failIfEqual``"
msgstr ""
#: whatsnew/3.11.rst:1919
msgid ":meth:`.assertNotEqual`"
msgstr ""
#: whatsnew/3.11.rst:1914
msgid "``failUnlessAlmostEqual``"
msgstr ""
#: whatsnew/3.11.rst:1920
msgid ":meth:`.assertAlmostEqual`"
msgstr ""
#: whatsnew/3.11.rst:1915
msgid "``failIfAlmostEqual``"
msgstr ""
#: whatsnew/3.11.rst:1921
msgid ":meth:`.assertNotAlmostEqual`"
msgstr ""
#: whatsnew/3.11.rst:1916
msgid "``failUnlessRaises``"
msgstr ""
#: whatsnew/3.11.rst:1916
msgid ":meth:`.assertRaises`"
msgstr ""
#: whatsnew/3.11.rst:1917
msgid "``assert_``"
msgstr ""
#: whatsnew/3.11.rst:1918 whatsnew/3.11.rst:1920 whatsnew/3.11.rst:1922
#: whatsnew/3.11.rst:1923
msgid "3.2"
msgstr ""
#: whatsnew/3.11.rst:1918
msgid "``assertEquals``"
msgstr ""
#: whatsnew/3.11.rst:1919
msgid "``assertNotEquals``"
msgstr ""
#: whatsnew/3.11.rst:1920
msgid "``assertAlmostEquals``"
msgstr ""
#: whatsnew/3.11.rst:1921
msgid "``assertNotAlmostEquals``"
msgstr ""
#: whatsnew/3.11.rst:1922
msgid "``assertRegexpMatches``"
msgstr ""
#: whatsnew/3.11.rst:1922
msgid ":meth:`.assertRegex`"
msgstr ""
#: whatsnew/3.11.rst:1923
msgid "``assertRaisesRegexp``"
msgstr ""
#: whatsnew/3.11.rst:1923
msgid ":meth:`.assertRaisesRegex`"
msgstr ""
#: whatsnew/3.11.rst:1924
msgid "``assertNotRegexpMatches``"
msgstr ""
#: whatsnew/3.11.rst:1924
msgid ":meth:`.assertNotRegex`"
msgstr ""
#: whatsnew/3.11.rst:1924
msgid "3.5"
msgstr ""
#: whatsnew/3.11.rst:2615
msgid "Removed"
msgstr "Retraits"
#: whatsnew/3.11.rst:1933
msgid "This section lists Python APIs that have been removed in Python 3.11."
msgstr ""
"Cette section liste les API Python qui ont été supprimées dans la version "
"3.11."
#: whatsnew/3.11.rst:1935
msgid ""
"Removed C APIs are :ref:`listed separately <whatsnew311-c-api-removed>`."
msgstr ""
#: whatsnew/3.11.rst:1937
msgid ""
"Removed the :func:`!@asyncio.coroutine` :term:`decorator` enabling legacy "
"generator-based coroutines to be compatible with :keyword:`async` / :keyword:"
"`await` code. The function has been deprecated since Python 3.8 and the "
"removal was initially scheduled for Python 3.10. Use :keyword:`async def` "
"instead. (Contributed by Illia Volochii in :issue:`43216`.)"
msgstr ""
#: whatsnew/3.11.rst:1944
msgid ""
"Removed :class:`!asyncio.coroutines.CoroWrapper` used for wrapping legacy "
"generator-based coroutine objects in the debug mode. (Contributed by Illia "
"Volochii in :issue:`43216`.)"
msgstr ""
#: whatsnew/3.11.rst:1948
msgid ""
"Due to significant security concerns, the *reuse_address* parameter of :meth:"
"`asyncio.loop.create_datagram_endpoint`, disabled in Python 3.9, is now "
"entirely removed. This is because of the behavior of the socket option "
"``SO_REUSEADDR`` in UDP. (Contributed by Hugo van Kemenade in :issue:"
"`45129`.)"
msgstr ""
#: whatsnew/3.11.rst:1954
msgid ""
"Removed the :mod:`!binhex` module, deprecated in Python 3.9. Also removed "
"the related, similarly-deprecated :mod:`binascii` functions:"
msgstr ""
#: whatsnew/3.11.rst:1957
msgid ":func:`!binascii.a2b_hqx`"
msgstr ""
#: whatsnew/3.11.rst:1958
msgid ":func:`!binascii.b2a_hqx`"
msgstr ""
#: whatsnew/3.11.rst:1959
msgid ":func:`!binascii.rlecode_hqx`"
msgstr ""
#: whatsnew/3.11.rst:1960
msgid ":func:`!binascii.rldecode_hqx`"
msgstr ""
#: whatsnew/3.11.rst:1962
msgid "The :func:`binascii.crc_hqx` function remains available."
msgstr ""
#: whatsnew/3.11.rst:1964
msgid "(Contributed by Victor Stinner in :issue:`45085`.)"
msgstr ""
#: whatsnew/3.11.rst:1966
msgid ""
"Removed the :mod:`distutils` ``bdist_msi`` command deprecated in Python 3.9. "
"Use ``bdist_wheel`` (wheel packages) instead. (Contributed by Hugo van "
"Kemenade in :issue:`45124`.)"
msgstr ""
#: whatsnew/3.11.rst:1970
msgid ""
"Removed the :meth:`~object.__getitem__` methods of :class:`xml.dom.pulldom."
"DOMEventStream`, :class:`wsgiref.util.FileWrapper` and :class:`fileinput."
"FileInput`, deprecated since Python 3.9. (Contributed by Hugo van Kemenade "
"in :issue:`45132`.)"
msgstr ""
#: whatsnew/3.11.rst:1975
msgid ""
"Removed the deprecated :mod:`gettext` functions :func:`!lgettext`, :func:`!"
"ldgettext`, :func:`!lngettext` and :func:`!ldngettext`. Also removed the :"
"func:`!bind_textdomain_codeset` function, the :meth:`!NullTranslations."
"output_charset` and :meth:`!NullTranslations.set_output_charset` methods, "
"and the *codeset* parameter of :func:`!translation` and :func:`!install`, "
"since they are only used for the :func:`!l*gettext` functions. (Contributed "
"by Dong-hee Na and Serhiy Storchaka in :issue:`44235`.)"
msgstr ""
#: whatsnew/3.11.rst:1985
msgid "Removed from the :mod:`inspect` module:"
msgstr ""
#: whatsnew/3.11.rst:1987
msgid ""
"The :func:`!getargspec` function, deprecated since Python 3.0; use :func:"
"`inspect.signature` or :func:`inspect.getfullargspec` instead."
msgstr ""
#: whatsnew/3.11.rst:1990
msgid ""
"The :func:`!formatargspec` function, deprecated since Python 3.5; use the :"
"func:`inspect.signature` function or the :class:`inspect.Signature` object "
"directly."
msgstr ""
#: whatsnew/3.11.rst:1994
msgid ""
"The undocumented :meth:`!Signature.from_builtin` and :meth:`!Signature."
"from_function` methods, deprecated since Python 3.5; use the :meth:"
"`Signature.from_callable() <inspect.Signature.from_callable>` method instead."
msgstr ""
#: whatsnew/3.11.rst:1999
msgid "(Contributed by Hugo van Kemenade in :issue:`45320`.)"
msgstr ""
#: whatsnew/3.11.rst:2001
msgid ""
"Removed the :meth:`~object.__class_getitem__` method from :class:`pathlib."
"PurePath`, because it was not used and added by mistake in previous "
"versions. (Contributed by Nikita Sobolev in :issue:`46483`.)"
msgstr ""
#: whatsnew/3.11.rst:2006
msgid ""
"Removed the :class:`!MailmanProxy` class in the :mod:`smtpd` module, as it "
"is unusable without the external :mod:`!mailman` package. (Contributed by "
"Dong-hee Na in :issue:`35800`.)"
msgstr ""
#: whatsnew/3.11.rst:2010
msgid ""
"Removed the deprecated :meth:`!split` method of :class:`!_tkinter."
"TkappType`. (Contributed by Erlend E. Aasland in :issue:`38371`.)"
msgstr ""
#: whatsnew/3.11.rst:2013
msgid ""
"Removed namespace package support from :mod:`unittest` discovery. It was "
"introduced in Python 3.4 but has been broken since Python 3.7. (Contributed "
"by Inada Naoki in :issue:`23882`.)"
msgstr ""
#: whatsnew/3.11.rst:2017
msgid ""
"Removed the undocumented private :meth:`!float.__set_format__()` method, "
"previously known as :meth:`!float.__setformat__()` in Python 3.7. Its "
"docstring said: \"You probably don't want to use this function. It exists "
"mainly to be used in Python's test suite.\" (Contributed by Victor Stinner "
"in :issue:`46852`.)"
msgstr ""
#: whatsnew/3.11.rst:2023
msgid ""
"The :option:`!--experimental-isolated-subinterpreters` configure flag (and "
"corresponding :c:macro:`!EXPERIMENTAL_ISOLATED_SUBINTERPRETERS` macro) have "
"been removed."
msgstr ""
#: whatsnew/3.11.rst:2027
msgid ""
"`Pynche <https://pypi.org/project/pynche/>`_ --- The Pythonically Natural "
"Color and Hue Editor --- has been moved out of ``Tools/scripts`` and is "
"`being developed independently <https://gitlab.com/warsaw/pynche/-/tree/"
"main>`_ from the Python source tree."
msgstr ""
#: whatsnew/3.11.rst:2259
msgid "Porting to Python 3.11"
msgstr "Portage vers Python 3.11"
#: whatsnew/3.11.rst:2039
msgid ""
"This section lists previously described changes and other bugfixes in the "
"Python API that may require changes to your Python code."
msgstr ""
"Cette section liste les modifications précédemment décrites et d'autres "
"corrections de bogues dans l'API Python qui pourraient nécessiter des "
"modifications dans votre code."
#: whatsnew/3.11.rst:2042
msgid ""
"Porting notes for the C API are :ref:`listed separately <whatsnew311-c-api-"
"porting>`."
msgstr ""
#: whatsnew/3.11.rst:2045
msgid ""
":func:`open`, :func:`io.open`, :func:`codecs.open` and :class:`fileinput."
"FileInput` no longer accept ``'U'`` (\"universal newline\") in the file "
"mode. In Python 3, \"universal newline\" mode is used by default whenever a "
"file is opened in text mode, and the ``'U'`` flag has been deprecated since "
"Python 3.3. The :ref:`newline parameter <open-newline-parameter>` to these "
"functions controls how universal newlines work. (Contributed by Victor "
"Stinner in :issue:`37330`.)"
msgstr ""
#: whatsnew/3.11.rst:2054
msgid ""
":class:`ast.AST` node positions are now validated when provided to :func:"
"`compile` and other related functions. If invalid positions are detected, a :"
"exc:`ValueError` will be raised. (Contributed by Pablo Galindo in :gh:"
"`93351`)"
msgstr ""
#: whatsnew/3.11.rst:2058
msgid ""
"Prohibited passing non-:class:`concurrent.futures.ThreadPoolExecutor` "
"executors to :meth:`asyncio.loop.set_default_executor` following a "
"deprecation in Python 3.8. (Contributed by Illia Volochii in :issue:`43234`.)"
msgstr ""
#: whatsnew/3.11.rst:2063
msgid ""
":mod:`calendar`: The :class:`calendar.LocaleTextCalendar` and :class:"
"`calendar.LocaleHTMLCalendar` classes now use :func:`locale.getlocale`, "
"instead of using :func:`locale.getdefaultlocale`, if no locale is specified. "
"(Contributed by Victor Stinner in :issue:`46659`.)"
msgstr ""
#: whatsnew/3.11.rst:2069
msgid ""
"The :mod:`pdb` module now reads the :file:`.pdbrc` configuration file with "
"the ``'UTF-8'`` encoding. (Contributed by Srinivas Reddy Thatiparthy (శ్రీనివాస్ "
"రెడ్డి తాటిపర్తి) in :issue:`41137`.)"
msgstr ""
#: whatsnew/3.11.rst:2073
msgid ""
"The *population* parameter of :func:`random.sample` must be a sequence, and "
"automatic conversion of :class:`set`\\s to :class:`list`\\s is no longer "
"supported. Also, if the sample size is larger than the population size, a :"
"exc:`ValueError` is raised. (Contributed by Raymond Hettinger in :issue:"
"`40465`.)"
msgstr ""
#: whatsnew/3.11.rst:2079
msgid ""
"The *random* optional parameter of :func:`random.shuffle` was removed. It "
"was previously an arbitrary random function to use for the shuffle; now, :"
"func:`random.random` (its previous default) will always be used."
msgstr ""
#: whatsnew/3.11.rst:2083
msgid ""
"In :mod:`re` :ref:`re-syntax`, global inline flags (e.g. ``(?i)``) can now "
"only be used at the start of regular expressions. Using them elsewhere has "
"been deprecated since Python 3.6. (Contributed by Serhiy Storchaka in :issue:"
"`47066`.)"
msgstr ""
#: whatsnew/3.11.rst:2088
msgid ""
"In the :mod:`re` module, several long-standing bugs where fixed that, in "
"rare cases, could cause capture groups to get the wrong result. Therefore, "
"this could change the captured output in these cases. (Contributed by Ma Lin "
"in :issue:`35859`.)"
msgstr ""
#: whatsnew/3.11.rst:2097
msgid "Build Changes"
msgstr "Changements à la compilation"
#: whatsnew/3.11.rst:2099
msgid ""
"CPython now has :pep:`11` :pep:`Tier 3 support <11#tier-3>` for cross "
"compiling to the `WebAssembly <https://webassembly.org/>`_ platforms "
"`Emscripten <https://emscripten.org/>`_ (``wasm32-unknown-emscripten``, i.e. "
"Python in the browser) and `WebAssembly System Interface (WASI) <https://"
"wasi.dev/>`_ (``wasm32-unknown-wasi``). The effort is inspired by previous "
"work like `Pyodide <https://pyodide.org/>`_. These platforms provide a "
"limited subset of POSIX APIs; Python standard libraries features and modules "
"related to networking, processes, threading, signals, mmap, and users/groups "
"are not available or don't work. (Emscripten contributed by Christian Heimes "
"and Ethan Smith in :gh:`84461` and WASI contributed by Christian Heimes in :"
"gh:`90473`; platforms promoted in :gh:`95085`)"
msgstr ""
#: whatsnew/3.11.rst:2113
#, fuzzy
msgid "Building CPython now requires:"
msgstr "Compiler Python nécessite à présent :"
#: whatsnew/3.11.rst:2115
msgid ""
"A `C11 <https://en.cppreference.com/w/c/11>`_ compiler and standard library. "
"`Optional C11 features <https://en.wikipedia.org/wiki/"
"C11_(C_standard_revision)#Optional_features>`_ are not required. "
"(Contributed by Victor Stinner in :issue:`46656`, :issue:`45440` and :issue:"
"`46640`.)"
msgstr ""
#: whatsnew/3.11.rst:2122
msgid ""
"Support for `IEEE 754 <https://en.wikipedia.org/wiki/IEEE_754>`_ floating "
"point numbers. (Contributed by Victor Stinner in :issue:`46917`.)"
msgstr ""
#: whatsnew/3.11.rst:2126
#, fuzzy
msgid ""
"The :c:macro:`!Py_NO_NAN` macro has been removed. Since CPython now requires "
"IEEE 754 floats, NaN values are always available. (Contributed by Victor "
"Stinner in :issue:`46656`.)"
msgstr ""
"La valeur :data:`math.nan` est maintenant toujours disponible (contribution "
"de *Victor Stinner* dans :issue:`46917`)."
#: whatsnew/3.11.rst:2130
msgid ""
"The :mod:`tkinter` package now requires `Tcl/Tk <https://www.tcl.tk>`_ "
"version 8.5.12 or newer. (Contributed by Serhiy Storchaka in :issue:`46996`.)"
msgstr ""
#: whatsnew/3.11.rst:2134
msgid ""
"Build dependencies, compiler flags, and linker flags for most stdlib "
"extension modules are now detected by :program:`configure`. libffi, libnsl, "
"libsqlite3, zlib, bzip2, liblzma, libcrypt, Tcl/Tk, and uuid flags are "
"detected by `pkg-config <https://www.freedesktop.org/wiki/Software/pkg-"
"config/>`_ (when available). :mod:`tkinter` now requires a pkg-config "
"command to detect development settings for `Tcl/Tk`_ headers and libraries. "
"(Contributed by Christian Heimes and Erlend Egeberg Aasland in :issue:"
"`45847`, :issue:`45747`, and :issue:`45763`.)"
msgstr ""
#: whatsnew/3.11.rst:2144
msgid ""
"libpython is no longer linked against libcrypt. (Contributed by Mike Gilbert "
"in :issue:`45433`.)"
msgstr ""
#: whatsnew/3.11.rst:2147
msgid ""
"CPython can now be built with the `ThinLTO <https://clang.llvm.org/docs/"
"ThinLTO.html>`_ option via passing ``thin`` to :option:`--with-lto`, i.e. "
"``--with-lto=thin``. (Contributed by Dong-hee Na and Brett Holman in :issue:"
"`44340`.)"
msgstr ""
#: whatsnew/3.11.rst:2152
msgid ""
"Freelists for object structs can now be disabled. A new :program:`configure` "
"option :option:`!--without-freelists` can be used to disable all freelists "
"except empty tuple singleton. (Contributed by Christian Heimes in :issue:"
"`45522`.)"
msgstr ""
#: whatsnew/3.11.rst:2157
msgid ""
"``Modules/Setup`` and ``Modules/makesetup`` have been improved and tied up. "
"Extension modules can now be built through ``makesetup``. All except some "
"test modules can be linked statically into a main binary or library. "
"(Contributed by Brett Cannon and Christian Heimes in :issue:`45548`, :issue:"
"`45570`, :issue:`45571`, and :issue:`43974`.)"
msgstr ""
#: whatsnew/3.11.rst:2164
msgid ""
"Use the environment variables :envvar:`!TCLTK_CFLAGS` and :envvar:`!"
"TCLTK_LIBS` to manually specify the location of Tcl/Tk headers and "
"libraries. The :program:`configure` options :option:`!--with-tcltk-includes` "
"and :option:`!--with-tcltk-libs` have been removed."
msgstr ""
#: whatsnew/3.11.rst:2170
msgid ""
"On RHEL 7 and CentOS 7 the development packages do not provide ``tcl.pc`` "
"and ``tk.pc``; use ``TCLTK_LIBS=\"-ltk8.5 -ltkstub8.5 -ltcl8.5\"``. The "
"directory ``Misc/rhel7`` contains ``.pc`` files and instructions on how to "
"build Python with RHEL 7's and CentOS 7's Tcl/Tk and OpenSSL."
msgstr ""
#: whatsnew/3.11.rst:2175
msgid ""
"CPython will now use 30-bit digits by default for the Python :class:`int` "
"implementation. Previously, the default was to use 30-bit digits on "
"platforms with ``SIZEOF_VOID_P >= 8``, and 15-bit digits otherwise. It's "
"still possible to explicitly request use of 15-bit digits via either the :"
"option:`--enable-big-digits` option to the configure script or (for Windows) "
"the ``PYLONG_BITS_IN_DIGIT`` variable in ``PC/pyconfig.h``, but this option "
"may be removed at some point in the future. (Contributed by Mark Dickinson "
"in :issue:`45569`.)"
msgstr ""
#: whatsnew/3.11.rst:2188
msgid "C API Changes"
msgstr "Changements à l'API C"
#: whatsnew/3.11.rst:2195
msgid ""
"Add a new :c:func:`PyType_GetName` function to get type's short name. "
"(Contributed by Hai Shi in :issue:`42035`.)"
msgstr ""
#: whatsnew/3.11.rst:2198
msgid ""
"Add a new :c:func:`PyType_GetQualName` function to get type's qualified "
"name. (Contributed by Hai Shi in :issue:`42035`.)"
msgstr ""
#: whatsnew/3.11.rst:2201
msgid ""
"Add new :c:func:`PyThreadState_EnterTracing` and :c:func:"
"`PyThreadState_LeaveTracing` functions to the limited C API to suspend and "
"resume tracing and profiling. (Contributed by Victor Stinner in :issue:"
"`43760`.)"
msgstr ""
#: whatsnew/3.11.rst:2206
msgid ""
"Added the :c:data:`Py_Version` constant which bears the same value as :c:"
"macro:`PY_VERSION_HEX`. (Contributed by Gabriele N. Tornetta in :issue:"
"`43931`.)"
msgstr ""
#: whatsnew/3.11.rst:2210
msgid ""
":c:type:`Py_buffer` and APIs are now part of the limited API and the stable "
"ABI:"
msgstr ""
#: whatsnew/3.11.rst:2213
msgid ":c:func:`PyObject_CheckBuffer`"
msgstr ""
#: whatsnew/3.11.rst:2214
msgid ":c:func:`PyObject_GetBuffer`"
msgstr ""
#: whatsnew/3.11.rst:2215
msgid ":c:func:`PyBuffer_GetPointer`"
msgstr ""
#: whatsnew/3.11.rst:2216
msgid ":c:func:`PyBuffer_SizeFromFormat`"
msgstr ""
#: whatsnew/3.11.rst:2217
msgid ":c:func:`PyBuffer_ToContiguous`"
msgstr ""
#: whatsnew/3.11.rst:2218
msgid ":c:func:`PyBuffer_FromContiguous`"
msgstr ""
#: whatsnew/3.11.rst:2219
msgid ":c:func:`PyBuffer_CopyData`"
msgstr ""
#: whatsnew/3.11.rst:2220
msgid ":c:func:`PyBuffer_IsContiguous`"
msgstr ""
#: whatsnew/3.11.rst:2221
msgid ":c:func:`PyBuffer_FillContiguousStrides`"
msgstr ""
#: whatsnew/3.11.rst:2222
msgid ":c:func:`PyBuffer_FillInfo`"
msgstr ""
#: whatsnew/3.11.rst:2223
msgid ":c:func:`PyBuffer_Release`"
msgstr ""
#: whatsnew/3.11.rst:2224
msgid ":c:func:`PyMemoryView_FromBuffer`"
msgstr ""
#: whatsnew/3.11.rst:2225
msgid ""
":c:member:`~PyBufferProcs.bf_getbuffer` and :c:member:`~PyBufferProcs."
"bf_releasebuffer` type slots"
msgstr ""
#: whatsnew/3.11.rst:2228
msgid "(Contributed by Christian Heimes in :issue:`45459`.)"
msgstr ""
#: whatsnew/3.11.rst:2230
msgid ""
"Added the :c:func:`PyType_GetModuleByDef` function, used to get the module "
"in which a method was defined, in cases where this information is not "
"available directly (via :c:type:`PyCMethod`). (Contributed by Petr Viktorin "
"in :issue:`46613`.)"
msgstr ""
#: whatsnew/3.11.rst:2235
msgid ""
"Add new functions to pack and unpack C double (serialize and deserialize): :"
"c:func:`PyFloat_Pack2`, :c:func:`PyFloat_Pack4`, :c:func:`PyFloat_Pack8`, :c:"
"func:`PyFloat_Unpack2`, :c:func:`PyFloat_Unpack4` and :c:func:"
"`PyFloat_Unpack8`. (Contributed by Victor Stinner in :issue:`46906`.)"
msgstr ""
#: whatsnew/3.11.rst:2241
msgid ""
"Add new functions to get frame object attributes: :c:func:"
"`PyFrame_GetBuiltins`, :c:func:`PyFrame_GetGenerator`, :c:func:"
"`PyFrame_GetGlobals`, :c:func:`PyFrame_GetLasti`."
msgstr ""
#: whatsnew/3.11.rst:2245
msgid ""
"Added two new functions to get and set the active exception instance: :c:"
"func:`PyErr_GetHandledException` and :c:func:`PyErr_SetHandledException`. "
"These are alternatives to :c:func:`PyErr_SetExcInfo()` and :c:func:"
"`PyErr_GetExcInfo()` which work with the legacy 3-tuple representation of "
"exceptions. (Contributed by Irit Katriel in :issue:`46343`.)"
msgstr ""
#: whatsnew/3.11.rst:2252
msgid ""
"Added the :c:member:`PyConfig.safe_path` member. (Contributed by Victor "
"Stinner in :gh:`57684`.)"
msgstr ""
#: whatsnew/3.11.rst:2263
msgid ""
"Some macros have been converted to static inline functions to avoid `macro "
"pitfalls <https://gcc.gnu.org/onlinedocs/cpp/Macro-Pitfalls.html>`_. The "
"change should be mostly transparent to users, as the replacement functions "
"will cast their arguments to the expected types to avoid compiler warnings "
"due to static type checks. However, when the limited C API is set to >=3.11, "
"these casts are not done, and callers will need to cast arguments to their "
"expected types. See :pep:`670` for more details. (Contributed by Victor "
"Stinner and Erlend E. Aasland in :gh:`89653`.)"
msgstr ""
#: whatsnew/3.11.rst:2274
msgid ""
":c:func:`PyErr_SetExcInfo()` no longer uses the ``type`` and ``traceback`` "
"arguments, the interpreter now derives those values from the exception "
"instance (the ``value`` argument). The function still steals references of "
"all three arguments. (Contributed by Irit Katriel in :issue:`45711`.)"
msgstr ""
#: whatsnew/3.11.rst:2280
msgid ""
":c:func:`PyErr_GetExcInfo()` now derives the ``type`` and ``traceback`` "
"fields of the result from the exception instance (the ``value`` field). "
"(Contributed by Irit Katriel in :issue:`45711`.)"
msgstr ""
#: whatsnew/3.11.rst:2284
msgid ""
":c:struct:`_frozen` has a new ``is_package`` field to indicate whether or "
"not the frozen module is a package. Previously, a negative value in the "
"``size`` field was the indicator. Now only non-negative values be used for "
"``size``. (Contributed by Kumar Aditya in :issue:`46608`.)"
msgstr ""
#: whatsnew/3.11.rst:2290
msgid ""
":c:func:`_PyFrameEvalFunction` now takes ``_PyInterpreterFrame*`` as its "
"second parameter, instead of ``PyFrameObject*``. See :pep:`523` for more "
"details of how to use this function pointer type."
msgstr ""
#: whatsnew/3.11.rst:2294
msgid ""
":c:func:`PyCode_New` and :c:func:`PyCode_NewWithPosOnlyArgs` now take an "
"additional ``exception_table`` argument. Using these functions should be "
"avoided, if at all possible. To get a custom code object: create a code "
"object using the compiler, then get a modified version with the ``replace`` "
"method."
msgstr ""
#: whatsnew/3.11.rst:2300
msgid ""
":c:type:`PyCodeObject` no longer has the ``co_code``, ``co_varnames``, "
"``co_cellvars`` and ``co_freevars`` fields. Instead, use :c:func:"
"`PyCode_GetCode`, :c:func:`PyCode_GetVarnames`, :c:func:`PyCode_GetCellvars` "
"and :c:func:`PyCode_GetFreevars` respectively to access them via the C API. "
"(Contributed by Brandt Bucher in :issue:`46841` and Ken Jin in :gh:`92154` "
"and :gh:`94936`.)"
msgstr ""
#: whatsnew/3.11.rst:2308
msgid ""
"The old trashcan macros (``Py_TRASHCAN_SAFE_BEGIN``/"
"``Py_TRASHCAN_SAFE_END``) are now deprecated. They should be replaced by the "
"new macros ``Py_TRASHCAN_BEGIN`` and ``Py_TRASHCAN_END``."
msgstr ""
#: whatsnew/3.11.rst:2312
msgid "A tp_dealloc function that has the old macros, such as::"
msgstr ""
#: whatsnew/3.11.rst:2323
msgid "should migrate to the new macros as follows::"
msgstr ""
#: whatsnew/3.11.rst:2334
msgid ""
"Note that ``Py_TRASHCAN_BEGIN`` has a second argument which should be the "
"deallocation function it is in."
msgstr ""
#: whatsnew/3.11.rst:2337
msgid ""
"To support older Python versions in the same codebase, you can define the "
"following macros and use them throughout the code (credit: these were copied "
"from the ``mypy`` codebase)::"
msgstr ""
#: whatsnew/3.11.rst:2349
msgid ""
"The :c:func:`PyType_Ready` function now raises an error if a type is defined "
"with the :c:macro:`Py_TPFLAGS_HAVE_GC` flag set but has no traverse function "
"(:c:member:`PyTypeObject.tp_traverse`). (Contributed by Victor Stinner in :"
"issue:`44263`.)"
msgstr ""
#: whatsnew/3.11.rst:2354
msgid ""
"Heap types with the :c:macro:`Py_TPFLAGS_IMMUTABLETYPE` flag can now inherit "
"the :pep:`590` vectorcall protocol. Previously, this was only possible for :"
"ref:`static types <static-types>`. (Contributed by Erlend E. Aasland in :"
"issue:`43908`)"
msgstr ""
#: whatsnew/3.11.rst:2359
msgid ""
"Since :c:func:`Py_TYPE()` is changed to a inline static function, "
"``Py_TYPE(obj) = new_type`` must be replaced with ``Py_SET_TYPE(obj, "
"new_type)``: see the :c:func:`Py_SET_TYPE()` function (available since "
"Python 3.9). For backward compatibility, this macro can be used::"
msgstr ""
#: whatsnew/3.11.rst:2385
msgid "(Contributed by Victor Stinner in :issue:`39573`.)"
msgstr ""
#: whatsnew/3.11.rst:2373
msgid ""
"Since :c:func:`Py_SIZE()` is changed to a inline static function, "
"``Py_SIZE(obj) = new_size`` must be replaced with ``Py_SET_SIZE(obj, "
"new_size)``: see the :c:func:`Py_SET_SIZE()` function (available since "
"Python 3.9). For backward compatibility, this macro can be used::"
msgstr ""
#: whatsnew/3.11.rst:2387
msgid ""
"``<Python.h>`` no longer includes the header files ``<stdlib.h>``, ``<stdio."
"h>``, ``<errno.h>`` and ``<string.h>`` when the ``Py_LIMITED_API`` macro is "
"set to ``0x030b0000`` (Python 3.11) or higher. C extensions should "
"explicitly include the header files after ``#include <Python.h>``. "
"(Contributed by Victor Stinner in :issue:`45434`.)"
msgstr ""
#: whatsnew/3.11.rst:2393
msgid ""
"The non-limited API files ``cellobject.h``, ``classobject.h``, ``code.h``, "
"``context.h``, ``funcobject.h``, ``genobject.h`` and ``longintrepr.h`` have "
"been moved to the ``Include/cpython`` directory. Moreover, the ``eval.h`` "
"header file was removed. These files must not be included directly, as they "
"are already included in ``Python.h``: :ref:`Include Files <api-includes>`. "
"If they have been included directly, consider including ``Python.h`` "
"instead. (Contributed by Victor Stinner in :issue:`35134`.)"
msgstr ""
#: whatsnew/3.11.rst:2401
msgid ""
"The :c:func:`PyUnicode_CHECK_INTERNED` macro has been excluded from the "
"limited C API. It was never usable there, because it used internal "
"structures which are not available in the limited C API. (Contributed by "
"Victor Stinner in :issue:`46007`.)"
msgstr ""
#: whatsnew/3.11.rst:2406
msgid ""
"The following frame functions and type are now directly available with "
"``#include <Python.h>``, it's no longer needed to add ``#include "
"<frameobject.h>``:"
msgstr ""
#: whatsnew/3.11.rst:2410
msgid ":c:func:`PyFrame_Check`"
msgstr ""
#: whatsnew/3.11.rst:2411
msgid ":c:func:`PyFrame_GetBack`"
msgstr ""
#: whatsnew/3.11.rst:2412
msgid ":c:func:`PyFrame_GetBuiltins`"
msgstr ""
#: whatsnew/3.11.rst:2413
msgid ":c:func:`PyFrame_GetGenerator`"
msgstr ""
#: whatsnew/3.11.rst:2414
msgid ":c:func:`PyFrame_GetGlobals`"
msgstr ""
#: whatsnew/3.11.rst:2415
msgid ":c:func:`PyFrame_GetLasti`"
msgstr ""
#: whatsnew/3.11.rst:2416
msgid ":c:func:`PyFrame_GetLocals`"
msgstr ""
#: whatsnew/3.11.rst:2417
msgid ":c:type:`PyFrame_Type`"
msgstr ""
#: whatsnew/3.11.rst:2419
msgid "(Contributed by Victor Stinner in :gh:`93937`.)"
msgstr ""
#: whatsnew/3.11.rst:2423
msgid ""
"The :c:type:`PyFrameObject` structure members have been removed from the "
"public C API."
msgstr ""
#: whatsnew/3.11.rst:2426
msgid ""
"While the documentation notes that the :c:type:`PyFrameObject` fields are "
"subject to change at any time, they have been stable for a long time and "
"were used in several popular extensions."
msgstr ""
#: whatsnew/3.11.rst:2430
msgid ""
"In Python 3.11, the frame struct was reorganized to allow performance "
"optimizations. Some fields were removed entirely, as they were details of "
"the old implementation."
msgstr ""
#: whatsnew/3.11.rst:2434
msgid ":c:type:`PyFrameObject` fields:"
msgstr ""
#: whatsnew/3.11.rst:2436
msgid "``f_back``: use :c:func:`PyFrame_GetBack`."
msgstr ""
#: whatsnew/3.11.rst:2437
msgid "``f_blockstack``: removed."
msgstr ""
#: whatsnew/3.11.rst:2438
msgid "``f_builtins``: use :c:func:`PyFrame_GetBuiltins`."
msgstr ""
#: whatsnew/3.11.rst:2439
msgid "``f_code``: use :c:func:`PyFrame_GetCode`."
msgstr ""
#: whatsnew/3.11.rst:2440
msgid "``f_gen``: use :c:func:`PyFrame_GetGenerator`."
msgstr ""
#: whatsnew/3.11.rst:2441
msgid "``f_globals``: use :c:func:`PyFrame_GetGlobals`."
msgstr ""
#: whatsnew/3.11.rst:2442
msgid "``f_iblock``: removed."
msgstr ""
#: whatsnew/3.11.rst:2443
msgid ""
"``f_lasti``: use :c:func:`PyFrame_GetLasti`. Code using ``f_lasti`` with "
"``PyCode_Addr2Line()`` should use :c:func:`PyFrame_GetLineNumber` instead; "
"it may be faster."
msgstr ""
#: whatsnew/3.11.rst:2446
msgid "``f_lineno``: use :c:func:`PyFrame_GetLineNumber`"
msgstr ""
#: whatsnew/3.11.rst:2447
msgid "``f_locals``: use :c:func:`PyFrame_GetLocals`."
msgstr ""
#: whatsnew/3.11.rst:2448
msgid "``f_stackdepth``: removed."
msgstr ""
#: whatsnew/3.11.rst:2449
msgid "``f_state``: no public API (renamed to ``f_frame.f_state``)."
msgstr ""
#: whatsnew/3.11.rst:2450
msgid "``f_trace``: no public API."
msgstr ""
#: whatsnew/3.11.rst:2451
msgid ""
"``f_trace_lines``: use ``PyObject_GetAttrString((PyObject*)frame, "
"\"f_trace_lines\")``."
msgstr ""
#: whatsnew/3.11.rst:2452
msgid ""
"``f_trace_opcodes``: use ``PyObject_GetAttrString((PyObject*)frame, "
"\"f_trace_opcodes\")``."
msgstr ""
#: whatsnew/3.11.rst:2453
msgid "``f_localsplus``: no public API (renamed to ``f_frame.localsplus``)."
msgstr ""
#: whatsnew/3.11.rst:2454
msgid "``f_valuestack``: removed."
msgstr ""
#: whatsnew/3.11.rst:2456
msgid ""
"The Python frame object is now created lazily. A side effect is that the "
"``f_back`` member must not be accessed directly, since its value is now also "
"computed lazily. The :c:func:`PyFrame_GetBack` function must be called "
"instead."
msgstr ""
#: whatsnew/3.11.rst:2461
msgid ""
"Debuggers that accessed the ``f_locals`` directly *must* call :c:func:"
"`PyFrame_GetLocals` instead. They no longer need to call :c:func:"
"`PyFrame_FastToLocalsWithError` or :c:func:`PyFrame_LocalsToFast`, in fact "
"they should not call those functions. The necessary updating of the frame is "
"now managed by the virtual machine."
msgstr ""
#: whatsnew/3.11.rst:2467
msgid "Code defining ``PyFrame_GetCode()`` on Python 3.8 and older::"
msgstr ""
#: whatsnew/3.11.rst:2477
msgid "Code defining ``PyFrame_GetBack()`` on Python 3.8 and older::"
msgstr ""
#: whatsnew/3.11.rst:2487
msgid ""
"Or use the `pythoncapi_compat project <https://github.com/python/pythoncapi-"
"compat>`__ to get these two functions on older Python versions."
msgstr ""
#: whatsnew/3.11.rst:2491
msgid "Changes of the :c:type:`PyThreadState` structure members:"
msgstr ""
#: whatsnew/3.11.rst:2493
msgid ""
"``frame``: removed, use :c:func:`PyThreadState_GetFrame` (function added to "
"Python 3.9 by :issue:`40429`). Warning: the function returns a :term:`strong "
"reference`, need to call :c:func:`Py_XDECREF`."
msgstr ""
#: whatsnew/3.11.rst:2497
msgid ""
"``tracing``: changed, use :c:func:`PyThreadState_EnterTracing` and :c:func:"
"`PyThreadState_LeaveTracing` (functions added to Python 3.11 by :issue:"
"`43760`)."
msgstr ""
#: whatsnew/3.11.rst:2500
msgid ""
"``recursion_depth``: removed, use ``(tstate->recursion_limit - tstate-"
">recursion_remaining)`` instead."
msgstr ""
#: whatsnew/3.11.rst:2502
msgid "``stackcheck_counter``: removed."
msgstr ""
#: whatsnew/3.11.rst:2504
msgid "Code defining ``PyThreadState_GetFrame()`` on Python 3.8 and older::"
msgstr ""
#: whatsnew/3.11.rst:2514
msgid ""
"Code defining ``PyThreadState_EnterTracing()`` and "
"``PyThreadState_LeaveTracing()`` on Python 3.10 and older::"
msgstr ""
#: whatsnew/3.11.rst:2540
msgid ""
"Or use `the pythoncapi-compat project <https://github.com/python/pythoncapi-"
"compat>`__ to get these functions on old Python functions."
msgstr ""
#: whatsnew/3.11.rst:2544
msgid ""
"Distributors are encouraged to build Python with the optimized Blake2 "
"library `libb2`_."
msgstr ""
#: whatsnew/3.11.rst:2547
msgid ""
"The :c:member:`PyConfig.module_search_paths_set` field must now be set to 1 "
"for initialization to use :c:member:`PyConfig.module_search_paths` to "
"initialize :data:`sys.path`. Otherwise, initialization will recalculate the "
"path and replace any values added to ``module_search_paths``."
msgstr ""
#: whatsnew/3.11.rst:2552
msgid ""
":c:func:`PyConfig_Read` no longer calculates the initial search path, and "
"will not fill any values into :c:member:`PyConfig.module_search_paths`. To "
"calculate default paths and then modify them, finish initialization and use :"
"c:func:`PySys_GetObject` to retrieve :data:`sys.path` as a Python list "
"object and modify it directly."
msgstr ""
#: whatsnew/3.11.rst:2563
msgid ""
"Deprecate the following functions to configure the Python initialization:"
msgstr ""
#: whatsnew/3.11.rst:2565
msgid ":c:func:`PySys_AddWarnOptionUnicode`"
msgstr ""
#: whatsnew/3.11.rst:2566
msgid ":c:func:`PySys_AddWarnOption`"
msgstr ""
#: whatsnew/3.11.rst:2567
msgid ":c:func:`PySys_AddXOption`"
msgstr ""
#: whatsnew/3.11.rst:2568
msgid ":c:func:`PySys_HasWarnOptions`"
msgstr ""
#: whatsnew/3.11.rst:2569
msgid ":c:func:`PySys_SetArgvEx`"
msgstr ""
#: whatsnew/3.11.rst:2570
msgid ":c:func:`PySys_SetArgv`"
msgstr ""
#: whatsnew/3.11.rst:2571
msgid ":c:func:`PySys_SetPath`"
msgstr ""
#: whatsnew/3.11.rst:2572
msgid ":c:func:`Py_SetPath`"
msgstr ""
#: whatsnew/3.11.rst:2573
msgid ":c:func:`Py_SetProgramName`"
msgstr ""
#: whatsnew/3.11.rst:2574
msgid ":c:func:`Py_SetPythonHome`"
msgstr ""
#: whatsnew/3.11.rst:2575
msgid ":c:func:`Py_SetStandardStreamEncoding`"
msgstr ""
#: whatsnew/3.11.rst:2576
msgid ":c:func:`_Py_SetProgramFullPath`"
msgstr ""
#: whatsnew/3.11.rst:2578
msgid ""
"Use the new :c:type:`PyConfig` API of the :ref:`Python Initialization "
"Configuration <init-config>` instead (:pep:`587`). (Contributed by Victor "
"Stinner in :gh:`88279`.)"
msgstr ""
#: whatsnew/3.11.rst:2582
msgid ""
"Deprecate the ``ob_shash`` member of the :c:type:`PyBytesObject`. Use :c:"
"func:`PyObject_Hash` instead. (Contributed by Inada Naoki in :issue:`46864`.)"
msgstr ""
#: whatsnew/3.11.rst:2591
msgid ""
"The following C APIs have been deprecated in earlier Python releases, and "
"will be removed in Python 3.12."
msgstr ""
#: whatsnew/3.11.rst:2594
msgid ":c:func:`PyUnicode_AS_DATA`"
msgstr ""
#: whatsnew/3.11.rst:2595
msgid ":c:func:`PyUnicode_AS_UNICODE`"
msgstr ""
#: whatsnew/3.11.rst:2596
msgid ":c:func:`PyUnicode_AsUnicodeAndSize`"
msgstr ""
#: whatsnew/3.11.rst:2597
msgid ":c:func:`PyUnicode_AsUnicode`"
msgstr ""
#: whatsnew/3.11.rst:2598
msgid ":c:func:`PyUnicode_FromUnicode`"
msgstr ""
#: whatsnew/3.11.rst:2599
msgid ":c:func:`PyUnicode_GET_DATA_SIZE`"
msgstr ""
#: whatsnew/3.11.rst:2600
msgid ":c:func:`PyUnicode_GET_SIZE`"
msgstr ""
#: whatsnew/3.11.rst:2601
msgid ":c:func:`PyUnicode_GetSize`"
msgstr ""
#: whatsnew/3.11.rst:2602
msgid ":c:func:`PyUnicode_IS_COMPACT`"
msgstr ""
#: whatsnew/3.11.rst:2603
msgid ":c:func:`PyUnicode_IS_READY`"
msgstr ""
#: whatsnew/3.11.rst:2604
msgid ":c:func:`PyUnicode_READY`"
msgstr ""
#: whatsnew/3.11.rst:2605
msgid ":c:func:`Py_UNICODE_WSTR_LENGTH`"
msgstr ""
#: whatsnew/3.11.rst:2606
msgid ":c:func:`_PyUnicode_AsUnicode`"
msgstr ""
#: whatsnew/3.11.rst:2607
msgid ":c:macro:`PyUnicode_WCHAR_KIND`"
msgstr ""
#: whatsnew/3.11.rst:2608
msgid ":c:type:`PyUnicodeObject`"
msgstr ""
#: whatsnew/3.11.rst:2609
msgid ":c:func:`PyUnicode_InternImmortal()`"
msgstr ""
#: whatsnew/3.11.rst:2617
msgid ""
":c:func:`PyFrame_BlockSetup` and :c:func:`PyFrame_BlockPop` have been "
"removed. (Contributed by Mark Shannon in :issue:`40222`.)"
msgstr ""
#: whatsnew/3.11.rst:2621
msgid "Remove the following math macros using the ``errno`` variable:"
msgstr ""
#: whatsnew/3.11.rst:2623
msgid "``Py_ADJUST_ERANGE1()``"
msgstr ""
#: whatsnew/3.11.rst:2624
msgid "``Py_ADJUST_ERANGE2()``"
msgstr ""
#: whatsnew/3.11.rst:2625
msgid "``Py_OVERFLOWED()``"
msgstr ""
#: whatsnew/3.11.rst:2626
msgid "``Py_SET_ERANGE_IF_OVERFLOW()``"
msgstr ""
#: whatsnew/3.11.rst:2627
msgid "``Py_SET_ERRNO_ON_MATH_ERROR()``"
msgstr ""
#: whatsnew/3.11.rst:2629
msgid "(Contributed by Victor Stinner in :issue:`45412`.)"
msgstr ""
#: whatsnew/3.11.rst:2631
msgid ""
"Remove ``Py_UNICODE_COPY()`` and ``Py_UNICODE_FILL()`` macros, deprecated "
"since Python 3.3. Use ``PyUnicode_CopyCharacters()`` or ``memcpy()`` "
"(``wchar_t*`` string), and ``PyUnicode_Fill()`` functions instead. "
"(Contributed by Victor Stinner in :issue:`41123`.)"
msgstr ""
#: whatsnew/3.11.rst:2636
msgid ""
"Remove the ``pystrhex.h`` header file. It only contains private functions. C "
"extensions should only include the main ``<Python.h>`` header file. "
"(Contributed by Victor Stinner in :issue:`45434`.)"
msgstr ""
#: whatsnew/3.11.rst:2640
msgid ""
"Remove the ``Py_FORCE_DOUBLE()`` macro. It was used by the "
"``Py_IS_INFINITY()`` macro. (Contributed by Victor Stinner in :issue:"
"`45440`.)"
msgstr ""
#: whatsnew/3.11.rst:2644
msgid ""
"The following items are no longer available when :c:macro:`Py_LIMITED_API` "
"is defined:"
msgstr ""
#: whatsnew/3.11.rst:2647
msgid ":c:func:`PyMarshal_WriteLongToFile`"
msgstr ""
#: whatsnew/3.11.rst:2648
msgid ":c:func:`PyMarshal_WriteObjectToFile`"
msgstr ""
#: whatsnew/3.11.rst:2649
msgid ":c:func:`PyMarshal_ReadObjectFromString`"
msgstr ""
#: whatsnew/3.11.rst:2650
msgid ":c:func:`PyMarshal_WriteObjectToString`"
msgstr ""
#: whatsnew/3.11.rst:2651
msgid "the ``Py_MARSHAL_VERSION`` macro"
msgstr ""
#: whatsnew/3.11.rst:2653
msgid "These are not part of the :ref:`limited API <stable-abi-list>`."
msgstr ""
#: whatsnew/3.11.rst:2655
msgid "(Contributed by Victor Stinner in :issue:`45474`.)"
msgstr ""
#: whatsnew/3.11.rst:2657
msgid ""
"Exclude :c:func:`PyWeakref_GET_OBJECT` from the limited C API. It never "
"worked since the :c:type:`PyWeakReference` structure is opaque in the "
"limited C API. (Contributed by Victor Stinner in :issue:`35134`.)"
msgstr ""
#: whatsnew/3.11.rst:2662
msgid ""
"Remove the ``PyHeapType_GET_MEMBERS()`` macro. It was exposed in the public "
"C API by mistake, it must only be used by Python internally. Use the "
"``PyTypeObject.tp_members`` member instead. (Contributed by Victor Stinner "
"in :issue:`40170`.)"
msgstr ""
#: whatsnew/3.11.rst:2667
msgid ""
"Remove the ``HAVE_PY_SET_53BIT_PRECISION`` macro (moved to the internal C "
"API). (Contributed by Victor Stinner in :issue:`45412`.)"
msgstr ""
#: whatsnew/3.11.rst:2673
msgid ""
"Remove the :c:type:`Py_UNICODE` encoder APIs, as they have been deprecated "
"since Python 3.3, are little used and are inefficient relative to the "
"recommended alternatives."
msgstr ""
#: whatsnew/3.11.rst:2678
msgid "The removed functions are:"
msgstr ""
#: whatsnew/3.11.rst:2680
msgid ":func:`!PyUnicode_Encode`"
msgstr ""
#: whatsnew/3.11.rst:2681
msgid ":func:`!PyUnicode_EncodeASCII`"
msgstr ""
#: whatsnew/3.11.rst:2682
msgid ":func:`!PyUnicode_EncodeLatin1`"
msgstr ""
#: whatsnew/3.11.rst:2683
msgid ":func:`!PyUnicode_EncodeUTF7`"
msgstr ""
#: whatsnew/3.11.rst:2684
msgid ":func:`!PyUnicode_EncodeUTF8`"
msgstr ""
#: whatsnew/3.11.rst:2685
msgid ":func:`!PyUnicode_EncodeUTF16`"
msgstr ""
#: whatsnew/3.11.rst:2686
msgid ":func:`!PyUnicode_EncodeUTF32`"
msgstr ""
#: whatsnew/3.11.rst:2687
msgid ":func:`!PyUnicode_EncodeUnicodeEscape`"
msgstr ""
#: whatsnew/3.11.rst:2688
msgid ":func:`!PyUnicode_EncodeRawUnicodeEscape`"
msgstr ""
#: whatsnew/3.11.rst:2689
msgid ":func:`!PyUnicode_EncodeCharmap`"
msgstr ""
#: whatsnew/3.11.rst:2690
msgid ":func:`!PyUnicode_TranslateCharmap`"
msgstr ""
#: whatsnew/3.11.rst:2691
msgid ":func:`!PyUnicode_EncodeDecimal`"
msgstr ""
#: whatsnew/3.11.rst:2692
msgid ":func:`!PyUnicode_TransformDecimalToASCII`"
msgstr ""
#: whatsnew/3.11.rst:2694
msgid ""
"See :pep:`624` for details and :pep:`migration guidance <624#alternative-"
"apis>`. (Contributed by Inada Naoki in :issue:`44029`.)"
msgstr ""
#: whatsnew/3.11.rst:2700
msgid "Notable Changes in 3.11.4"
msgstr ""
#: whatsnew/3.11.rst:2703
#, fuzzy
msgid "tarfile"
msgstr "``zipfile``"
#: whatsnew/3.11.rst:2705
msgid ""
"The extraction methods in :mod:`tarfile`, and :func:`shutil.unpack_archive`, "
"have a new a *filter* argument that allows limiting tar features than may be "
"surprising or dangerous, such as creating files outside the destination "
"directory. See :ref:`tarfile-extraction-filter` for details. In Python 3.12, "
"use without the *filter* argument will show a :exc:`DeprecationWarning`. In "
"Python 3.14, the default will switch to ``'data'``. (Contributed by Petr "
"Viktorin in :pep:`706`.)"
msgstr ""
#~ msgid "Release"
#~ msgstr "Version"
#~ msgid "Date"
#~ msgstr "Date"
#~ msgid ""
#~ ":pep:`654`: Exception Groups and ``except*``. (Contributed by Irit "
#~ "Katriel in :issue:`45292`.)"
#~ msgstr ""
#~ ":pep:`654` : Groupes d'exceptions et instruction ``except*`` "
#~ "(contribution d'*Irit Katriel* dans :issue:`45292`)."
#~ msgid ":pep:`646`: Variadic generics."
#~ msgstr ""
#~ ":pep:`673` : Type ``Self`` (contribution de *James Hilton-Balfe* et de "
#~ "*Pradeep Kumar* dans :issue:`30924`)."
#~ msgid "Column information for code objects"
#~ msgstr "Information de colonnes pour les objets code"
#~ msgid ""
#~ "The :option:`-X` ``no_debug_ranges`` option and the environment variable :"
#~ "envvar:`PYTHONNODEBUGRANGES` can be used to disable this feature."
#~ msgstr ""
#~ "L'option :option:`-X` ``no_debug_ranges`` et la variable d'environnement :"
#~ "envvar:`PYTHONNODEBUGRANGES` permettent de désactiver cette "
#~ "fonctionnalité."
#~ msgid "Changes in the Python API"
#~ msgstr "Changements dans l'API Python"