1
0
Fork 0
python-docs-fr/whatsnew/3.9.po

3182 lines
135 KiB
Plaintext
Raw 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: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-10-27 20:52+0200\n"
"Last-Translator: Yannick Gingras <ygingras@ygingras.net>\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"
"X-Generator: Poedit 2.4.3\n"
#: whatsnew/3.9.rst:3
msgid "What's New In Python 3.9"
msgstr "Les nouveautés de Python 3.9"
#: whatsnew/3.9.rst:0
msgid "Release"
msgstr "Version"
#: whatsnew/3.9.rst:5
msgid "|release|"
msgstr "|release|"
#: whatsnew/3.9.rst:0
msgid "Date"
msgstr "Date"
#: whatsnew/3.9.rst:6
msgid "|today|"
msgstr "|today|"
#: whatsnew/3.9.rst:0
msgid "Editor"
msgstr "Éditeur"
#: whatsnew/3.9.rst:7
msgid "Łukasz Langa"
msgstr "Łukasz Langa"
#: whatsnew/3.9.rst:47
msgid ""
"This article explains the new features in Python 3.9, compared to 3.8. "
"Python 3.9 was released on October 5th, 2020."
msgstr ""
"Ce document présente les nouvelles fonctionnalités de Python 3.9 par rapport "
"à la version 3.8. Python 3.9 a été publié le 5 octobre 2020."
#: whatsnew/3.9.rst:50
msgid "For full details, see the :ref:`changelog <changelog>`."
msgstr "Pour plus de détails, voir le :ref:`changelog <changelog>`."
#: whatsnew/3.9.rst:54
msgid ":pep:`596` - Python 3.9 Release Schedule"
msgstr ":pep:`596` Calendrier de sortie de Python 3.9"
#: whatsnew/3.9.rst:58
msgid "Summary -- Release highlights"
msgstr "Résumé Points marquants de cette version"
#: whatsnew/3.9.rst:63
msgid "New syntax features:"
msgstr "Nouvelles fonctionnalités de syntaxe :"
#: whatsnew/3.9.rst:65
msgid ":pep:`584`, union operators added to ``dict``;"
msgstr ":pep:`584`, ajout de l'opérateur d'union à ``dict`` ;"
#: whatsnew/3.9.rst:66
msgid ":pep:`585`, type hinting generics in standard collections;"
msgstr ""
":pep:`585`, indications des types paramétrables dans les collections "
"natives ;"
#: whatsnew/3.9.rst:67
msgid ":pep:`614`, relaxed grammar restrictions on decorators."
msgstr ""
":pep:`614`, restrictions grammaticales assouplies pour les décorateurs."
#: whatsnew/3.9.rst:69
msgid "New built-in features:"
msgstr "Nouvelles fonctionnalités natives :"
#: whatsnew/3.9.rst:71
msgid ":pep:`616`, string methods to remove prefixes and suffixes."
msgstr ""
":pep:`616`, méthodes sur les chaînes pour enlever des préfixes et des "
"suffixes."
#: whatsnew/3.9.rst:73
msgid "New features in the standard library:"
msgstr "Nouvelles fonctionnalités dans la bibliothèque standard :"
#: whatsnew/3.9.rst:75
msgid ":pep:`593`, flexible function and variable annotations;"
msgstr ""
":pep:`593`, annotations flexibles pour les fonctions et les variables ;"
#: whatsnew/3.9.rst:76
msgid ""
":func:`os.pidfd_open` added that allows process management without races and "
"signals."
msgstr ""
"ajout de :func:`os.pidfd_open` qui permet la gestion de processus sans "
"concurrence critique et sans signaux."
#: whatsnew/3.9.rst:79
msgid "Interpreter improvements:"
msgstr "Améliorations de l'interpréteur :"
#: whatsnew/3.9.rst:81
msgid ""
":pep:`573`, fast access to module state from methods of C extension types;"
msgstr ""
":pep:`573`, accès rapide à l'état des modules à partir des méthodes des "
"types dans les extensions C ;"
#: whatsnew/3.9.rst:83
msgid ":pep:`617`, CPython now uses a new parser based on PEG;"
msgstr ""
":pep:`617`, CPython utilise maintenant un analyseur lexical *PEG* (*Parsing "
"Expression Grammar*) ;"
#: whatsnew/3.9.rst:84
msgid ""
"a number of Python builtins (range, tuple, set, frozenset, list, dict) are "
"now sped up using :pep:`590` vectorcall;"
msgstr ""
"certains types Python natifs (*range*, *tuple*, *set*, *frozenset*, *list*, "
"*dict*) sont maintenant plus rapides grâce aux appels *vectorcall* (:pep:"
"`590`) ;"
#: whatsnew/3.9.rst:86
msgid "garbage collection does not block on resurrected objects;"
msgstr "le ramasse-miettes ne bloque pas sur les objets ressuscités ;"
#: whatsnew/3.9.rst:87
msgid ""
"a number of Python modules (:mod:`_abc`, :mod:`audioop`, :mod:`_bz2`, :mod:"
"`_codecs`, :mod:`_contextvars`, :mod:`_crypt`, :mod:`_functools`, :mod:"
"`_json`, :mod:`_locale`, :mod:`math`, :mod:`operator`, :mod:`resource`, :mod:"
"`time`, :mod:`_weakref`) now use multiphase initialization as defined by PEP "
"489;"
msgstr ""
"certains modules Python (:mod:`_abc`, :mod:`audioop`, :mod:`_bz2`, :mod:"
"`_codecs`, :mod:`_contextvars`, :mod:`_crypt`, :mod:`_functools`, :mod:"
"`_json`, :mod:`_locale`, :mod:`math`, :mod:`operator`, :mod:`resource`, :mod:"
"`time`, :mod:`_weakref`) utilisent maintenant l'initialisation multi-phase "
"telle que définie dans PEP 489 ;"
#: whatsnew/3.9.rst:92
msgid ""
"a number of standard library modules (:mod:`audioop`, :mod:`ast`, :mod:"
"`grp`, :mod:`_hashlib`, :mod:`pwd`, :mod:`_posixsubprocess`, :mod:`random`, :"
"mod:`select`, :mod:`struct`, :mod:`termios`, :mod:`zlib`) are now using the "
"stable ABI defined by PEP 384."
msgstr ""
"certains modules de la bibliothèque standard (:mod:`audioop`, :mod:`ast`, :"
"mod:`grp`, :mod:`_hashlib`, :mod:`pwd`, :mod:`_posixsubprocess`, :mod:"
"`random`, :mod:`select`, :mod:`struct`, :mod:`termios`, :mod:`zlib`) "
"utilisent maintenant l'*ABI* (*Application Binary Interface*) stable définie "
"dans PEP 384."
#: whatsnew/3.9.rst:97
msgid "New library modules:"
msgstr "Nouveaux modules de la bibliothèque :"
#: whatsnew/3.9.rst:99
msgid ""
":pep:`615`, the IANA Time Zone Database is now present in the standard "
"library in the :mod:`zoneinfo` module;"
msgstr ""
":pep:`615`, la base de données des fuseaux horaires de l'IANA est maintenant "
"incluse dans le module :mod:`zoneinfo` de la bibliothèque standard ;"
#: whatsnew/3.9.rst:101
msgid ""
"an implementation of a topological sort of a graph is now provided in the "
"new :mod:`graphlib` module."
msgstr ""
"une implémentation du tri topologique d'un graphe est maintenant disponible "
"dans le nouveau module :mod:`graphlib`."
#: whatsnew/3.9.rst:104
msgid "Release process changes:"
msgstr "Changements aux procédures de publication :"
#: whatsnew/3.9.rst:106
msgid ":pep:`602`, CPython adopts an annual release cycle."
msgstr ":pep:`602`, CPython adopte un cycle annuel de publications."
#: whatsnew/3.9.rst:110
msgid "You should check for DeprecationWarning in your code"
msgstr ""
"Vous devez vérifier la présence de ``DeprecationWarning`` dans votre code"
#: whatsnew/3.9.rst:112
msgid ""
"When Python 2.7 was still supported, a lot of functionality in Python 3 was "
"kept for backward compatibility with Python 2.7. With the end of Python 2 "
"support, these backward compatibility layers have been removed, or will be "
"removed soon. Most of them emitted a :exc:`DeprecationWarning` warning for "
"several years. For example, using ``collections.Mapping`` instead of "
"``collections.abc.Mapping`` emits a :exc:`DeprecationWarning` since Python "
"3.3, released in 2012."
msgstr ""
"Quand Python 2.7 était encore pris en charge, plusieurs fonctionnalités dans "
"Python 3 étaient gardées pour la rétro-compatibilité avec Python 2.7. Avec "
"la fin de la prise en charge de Python 2, ces couches de rétro-compatibilité "
"ont été retirées ou le seront bientôt. La plupart d'entre elles émettaient "
"un avertissement :exc:`DeprecationWarning` depuis plusieurs années. Par "
"exemple, utiliser ``collections.Mapping`` plutôt que ``collections.abc."
"Mapping`` émettait un :exc:`DeprecationWarning` depuis Python 3.3, publié en "
"2012."
#: whatsnew/3.9.rst:120
msgid ""
"Test your application with the :option:`-W` ``default`` command-line option "
"to see :exc:`DeprecationWarning` and :exc:`PendingDeprecationWarning`, or "
"even with :option:`-W` ``error`` to treat them as errors. :ref:`Warnings "
"Filter <warning-filter>` can be used to ignore warnings from third-party "
"code."
msgstr ""
"Testez votre application avec l'option de ligne de commande :option:`-W` "
"``default`` pour voir les :exc:`DeprecationWarning` et les :exc:"
"`PendingDeprecationWarning`, ou même avec :option:`-W` ``error`` pour les "
"traiter comme des erreurs. :ref:`Le filtre des avertissements <warning-"
"filter>` peut être utilisé pour ignorer les avertissements provenant de code "
"de tierces parties."
#: whatsnew/3.9.rst:125
msgid ""
"Python 3.9 is the last version providing those Python 2 backward "
"compatibility layers, to give more time to Python projects maintainers to "
"organize the removal of the Python 2 support and add support for Python 3.9."
msgstr ""
"Python 3.9 est la dernière version qui fournit ces couches de rétro "
"compatibilité avec Python 2, afin de donner plus de temps aux mainteneurs de "
"projets Python pour organiser l'arrêt de la prise en charge de Python 2 et "
"pour assurer celle de Python 3.9."
#: whatsnew/3.9.rst:129
msgid ""
"Aliases to :ref:`Abstract Base Classes <collections-abstract-base-classes>` "
"in the :mod:`collections` module, like ``collections.Mapping`` alias to :"
"class:`collections.abc.Mapping`, are kept for one last release for backward "
"compatibility. They will be removed from Python 3.10."
msgstr ""
"Les alias vers :ref:`Abstract Base Classes <collections-abstract-base-"
"classes>` dans le module :mod:`collections`, comme l'alias ``collections."
"Mapping`` vers :class:`collections.abc.Mapping`, sont conservés pour une "
"dernière version au titre de la rétrocompatibilité. Ils seront supprimés de "
"Python 3.10."
#: whatsnew/3.9.rst:134
msgid ""
"More generally, try to run your tests in the :ref:`Python Development Mode "
"<devmode>` which helps to prepare your code to make it compatible with the "
"next Python version."
msgstr ""
"Plus généralement, essayez d'exécuter vos tests dans le :ref:`Python "
"Development Mode <devmode>` qui aide à préparer votre code pour le rendre "
"compatible avec la prochaine version de Python."
# J'ignore volontairement le "as well" qui pour bien être traduit serait "en plus des changements ci-haut", ce qui me semble trop lourd.
#: whatsnew/3.9.rst:138
msgid ""
"Note: a number of pre-existing deprecations were removed in this version of "
"Python as well. Consult the :ref:`removed-in-python-39` section."
msgstr ""
"Note : certaines déclarations dobsolescence pré-existantes ont été retirées "
"de cette version de Python. Voir la section :ref:`removed-in-python-39`."
#: whatsnew/3.9.rst:1259
msgid "New Features"
msgstr "Nouvelles fonctionnalités"
#: whatsnew/3.9.rst:146
msgid "Dictionary Merge & Update Operators"
msgstr "Opérateurs de fusion et de mise à jour de dictionnaires"
#: whatsnew/3.9.rst:148
msgid ""
"Merge (``|``) and update (``|=``) operators have been added to the built-in :"
"class:`dict` class. Those complement the existing ``dict.update`` and "
"``{**d1, **d2}`` methods of merging dictionaries."
msgstr ""
"Ajout des opérateurs de fusion (``|``) et de mise-à-jour (``|=``) à la "
"classe native :class:`dict`. Ils viennent compléter les méthodes existantes "
"``dict.update`` et ``{**d1, **d2}`` pour fusionner des dictionnaires."
#: whatsnew/3.9.rst:285
msgid "Example::"
msgstr "Exemple ::"
#: whatsnew/3.9.rst:161
msgid ""
"See :pep:`584` for a full description. (Contributed by Brandt Bucher in :"
"issue:`36144`.)"
msgstr ""
"Voir :pep:`584` pour une description complète (contribution de *Brandt "
"Bucher* dans :issue:`36144`)."
#: whatsnew/3.9.rst:165
msgid "New String Methods to Remove Prefixes and Suffixes"
msgstr ""
"Nouvelles méthodes sur les chaînes pour retirer des préfixes et des suffixes"
#: whatsnew/3.9.rst:167
msgid ""
":meth:`str.removeprefix(prefix)<str.removeprefix>` and :meth:`str."
"removesuffix(suffix)<str.removesuffix>` have been added to easily remove an "
"unneeded prefix or a suffix from a string. Corresponding ``bytes``, "
"``bytearray``, and ``collections.UserString`` methods have also been added. "
"See :pep:`616` for a full description. (Contributed by Dennis Sweeney in :"
"issue:`39939`.)"
msgstr ""
":meth:`str.removeprefix(préfixe)<str.removeprefix>` et :meth:`str."
"removesuffix(suffixe)<str.removesuffix>` ont été ajoutées pour supprimer "
"facilement un préfixe ou un suffixe inutile d'une chaîne. Les méthodes "
"correspondantes de ``bytes``, ``bytearray`` et ``collections.UserString`` "
"ont également été ajoutées. Voir :pep:`616` pour une description complète "
"(contribution de *Dennis Sweeney* dans :issue:`39939`)."
#: whatsnew/3.9.rst:175
msgid "Type Hinting Generics in Standard Collections"
msgstr "Indication des types paramétrables dans les collections natives"
#: whatsnew/3.9.rst:177
msgid ""
"In type annotations you can now use built-in collection types such as "
"``list`` and ``dict`` as generic types instead of importing the "
"corresponding capitalized types (e.g. ``List`` or ``Dict``) from "
"``typing``. Some other types in the standard library are also now generic, "
"for example ``queue.Queue``."
msgstr ""
"Dans les annotations de type, vous pouvez maintenant utiliser les types de "
"collection natifs tels que ``list`` et ``dict`` comme types génériques au "
"lieu d'importer les types en majuscules correspondants (par exemple ``List`` "
"ou ``Dict``) à partir de ``typing``. D'autres types de la bibliothèque "
"standard sont maintenant génériques, par exemple ``queue.Queue``."
#: whatsnew/3.9.rst:1147
msgid "Example:"
msgstr "Exemple :"
#: whatsnew/3.9.rst:191
msgid ""
"See :pep:`585` for more details. (Contributed by Guido van Rossum, Ethan "
"Smith, and Batuhan Taşkaya in :issue:`39481`.)"
msgstr ""
"Voir :pep:`585` pour plus de détails (contribution de *Guido van Rossum*, "
"*Ethan Smith* et *Batuhan Taşkaya* dans :issue:`39481`)."
#: whatsnew/3.9.rst:195
msgid "New Parser"
msgstr "Nouvel analyseur syntaxique"
#: whatsnew/3.9.rst:197
msgid ""
"Python 3.9 uses a new parser, based on `PEG <https://en.wikipedia.org/wiki/"
"Parsing_expression_grammar>`_ instead of `LL(1) <https://en.wikipedia.org/"
"wiki/LL_parser>`_. The new parser's performance is roughly comparable to "
"that of the old parser, but the PEG formalism is more flexible than LL(1) "
"when it comes to designing new language features. We'll start using this "
"flexibility in Python 3.10 and later."
msgstr ""
"Python 3.9 utilise un nouvel analyseur syntaxique, basé sur `PEG <https://en."
"wikipedia.org/wiki/Parsing_expression_grammar>`_ au lieu de `LL(1) <https://"
"fr.wikipedia.org/wiki/Analyse_LL>`_. Les performances du nouvel analyseur "
"sont à peu près comparables à celles de l'ancien, mais le formalisme *PEG* "
"est plus souple que *LL(1)* lorsqu'il s'agit de concevoir des nouvelles "
"fonctionnalités du langage. Nous commencerons à utiliser cette flexibilité "
"dans Python 3.10 et les versions suivantes."
#: whatsnew/3.9.rst:205
msgid ""
"The :mod:`ast` module uses the new parser and produces the same AST as the "
"old parser."
msgstr ""
"Le module :mod:`ast` utilise le nouvel analyseur syntaxique et produit le "
"même AST que l'ancien analyseur."
#: whatsnew/3.9.rst:208
msgid ""
"In Python 3.10, the old parser will be deleted and so will all functionality "
"that depends on it (primarily the :mod:`parser` module, which has long been "
"deprecated). In Python 3.9 *only*, you can switch back to the LL(1) parser "
"using a command line switch (``-X oldparser``) or an environment variable "
"(``PYTHONOLDPARSER=1``)."
msgstr ""
"Dans Python 3.10, l'ancien analyseur sera supprimé ainsi que toutes les "
"fonctionnalités qui en dépendent (principalement le module :mod:`parser`, "
"qui est obsolète depuis longtemps). En Python 3.9 *seulement*, vous pouvez "
"revenir à l'analyseur *LL(1)* en utilisant une option en ligne de commande "
"(``-X oldparser``) ou une variable d'environnement (``PYTHONOLDPARSER=1``)."
#: whatsnew/3.9.rst:214
msgid ""
"See :pep:`617` for more details. (Contributed by Guido van Rossum, Pablo "
"Galindo and Lysandros Nikolaou in :issue:`40334`.)"
msgstr ""
"Voir :pep:`617` pour plus de détails (contribution de *Guido van Rossum*, "
"*Pablo Galindo* et *Lysandros Nikolaou* dans :issue:`40334`)."
#: whatsnew/3.9.rst:219
msgid "Other Language Changes"
msgstr "Autres changements au langage"
#: whatsnew/3.9.rst:221
msgid ""
":func:`__import__` now raises :exc:`ImportError` instead of :exc:"
"`ValueError`, which used to occur when a relative import went past its top-"
"level package. (Contributed by Ngalim Siregar in :issue:`37444`.)"
msgstr ""
":func:`__import__` lève maintenant :exc:`ImportError` plutôt que :exc:"
"`ValueError`, ce qui se produisait lorsquun import relatif remontait plus "
"loin que le répertoire racine du paquet (contribution de *Ngalim Siregar* "
"dans :issue:`37444`)."
#: whatsnew/3.9.rst:226
msgid ""
"Python now gets the absolute path of the script filename specified on the "
"command line (ex: ``python3 script.py``): the ``__file__`` attribute of the :"
"mod:`__main__` module became an absolute path, rather than a relative path. "
"These paths now remain valid after the current directory is changed by :func:"
"`os.chdir`. As a side effect, the traceback also displays the absolute path "
"for :mod:`__main__` module frames in this case. (Contributed by Victor "
"Stinner in :issue:`20443`.)"
msgstr ""
"Python récupère maintenant le chemin absolu du nom de fichier du script "
"spécifié sur la ligne de commande (ex. : ``python3 script.py``) : l'attribut "
"``__file__`` du module :mod:`__main__` est devenu un chemin absolu, plutôt "
"qu'un chemin relatif. Ces nouveaux chemins restent valides même après que le "
"répertoire courant est changé par :func:`os.chdir`. En conséquence, les "
"traces d'appels affichent le chemin absolu pour les cadres du module :mod:"
"`__main__` dans ce cas (contribution de *Victor Stinner* dans :issue:"
"`20443`)."
#: whatsnew/3.9.rst:234
msgid ""
"In the :ref:`Python Development Mode <devmode>` and in :ref:`debug build "
"<debug-build>`, the *encoding* and *errors* arguments are now checked for "
"string encoding and decoding operations. Examples: :func:`open`, :meth:`str."
"encode` and :meth:`bytes.decode`."
msgstr ""
"Dans le :ref:`mode de développement de Python <devmode>` et dans les :ref:"
"`compilations en mode débogage <debug-build>`, les arguments *encoding* et "
"*errors* sont maintenant vérifiés pour les opérations d'encodage et de "
"décodage de chaînes. Exemples : :func:`open`, :meth:`str.encode` et :meth:"
"`bytes.decode`."
#: whatsnew/3.9.rst:239
msgid ""
"By default, for best performance, the *errors* argument is only checked at "
"the first encoding/decoding error and the *encoding* argument is sometimes "
"ignored for empty strings. (Contributed by Victor Stinner in :issue:`37388`.)"
msgstr ""
"Par défaut, afin d'améliorer les performances, l'argument *errors* n'est "
"consulté qu'au moment de la première erreur d'encodage-décodage et "
"l'argument *encoding* est parfois ignoré pour les chaînes vides "
"(contribution de *Victor Stinner* dans :issue:`37388`)."
#: whatsnew/3.9.rst:244
msgid ""
"``\"\".replace(\"\", s, n)`` now returns ``s`` instead of an empty string "
"for all non-zero ``n``. It is now consistent with ``\"\".replace(\"\", "
"s)``. There are similar changes for :class:`bytes` and :class:`bytearray` "
"objects. (Contributed by Serhiy Storchaka in :issue:`28029`.)"
msgstr ""
"``\"\".replace(\"\", s, n)`` renvoie maintenant ``s`` plutôt qu'une chaîne "
"vide pour toute valeur non-nulles de ``n``. Ce comportement est maintenant "
"cohérent avec ``\"\".replace(\"\", s)``. Les instances de :class:`bytes` et :"
"class:`bytearray` ont le même comportement (contribution de *Serhiy "
"Storchaka* dans :issue:`28029`)."
#: whatsnew/3.9.rst:249
msgid ""
"Any valid expression can now be used as a :term:`decorator`. Previously, "
"the grammar was much more restrictive. See :pep:`614` for details. "
"(Contributed by Brandt Bucher in :issue:`39702`.)"
msgstr ""
"Toute expression valide peut maintenant être utilisée comme décorateur "
"(voir :term:`decorator`). Préalablement, la grammaire était beaucoup plus "
"contraignante. Voir :pep:`614` pour les détails (contributions de *Brandt "
"Bucher* dans :issue:`39702`)."
#: whatsnew/3.9.rst:253
msgid ""
"Improved help for the :mod:`typing` module. Docstrings are now shown for all "
"special forms and special generic aliases (like ``Union`` and ``List``). "
"Using :func:`help` with generic alias like ``List[int]`` will show the help "
"for the correspondent concrete type (``list`` in this case). (Contributed by "
"Serhiy Storchaka in :issue:`40257`.)"
msgstr ""
"Aide améliorée pour le module :mod:`typing`. La documentation est maintenant "
"visible pour toutes les formes spéciales et les alias générique spéciaux "
"(comme ``Union`` et ``List``). Utiliser :func:`help` sur un alias générique "
"comme ``List[int]`` montre l'aide correspondant au type réel (``list`` dans "
"ce cas). (Contribution de Serhiy Storchaka dans :issue:`40257`)."
#: whatsnew/3.9.rst:259
msgid ""
"Parallel running of :meth:`~agen.aclose` / :meth:`~agen.asend` / :meth:"
"`~agen.athrow` is now prohibited, and ``ag_running`` now reflects the actual "
"running status of the async generator. (Contributed by Yury Selivanov in :"
"issue:`30773`.)"
msgstr ""
#: whatsnew/3.9.rst:264
msgid ""
"Unexpected errors in calling the ``__iter__`` method are no longer masked by "
"``TypeError`` in the :keyword:`in` operator and functions :func:`~operator."
"contains`, :func:`~operator.indexOf` and :func:`~operator.countOf` of the :"
"mod:`operator` module. (Contributed by Serhiy Storchaka in :issue:`40824`.)"
msgstr ""
#: whatsnew/3.9.rst:270
msgid ""
"Unparenthesized lambda expressions can no longer be the expression part in "
"an ``if`` clause in comprehensions and generator expressions. See :issue:"
"`41848` and :issue:`43755` for details."
msgstr ""
#: whatsnew/3.9.rst:276
msgid "New Modules"
msgstr "Nouveaux modules"
#: whatsnew/3.9.rst:279
msgid "zoneinfo"
msgstr "*zoneinfo*"
#: whatsnew/3.9.rst:281
msgid ""
"The :mod:`zoneinfo` module brings support for the IANA time zone database to "
"the standard library. It adds :class:`zoneinfo.ZoneInfo`, a concrete :class:"
"`datetime.tzinfo` implementation backed by the system's time zone data."
msgstr ""
"Le module :mod:`zoneinfo` ajoute la prise en charge de la base de donnée des "
"fuseaux horaires de l'IANA dans la bibliothèque standard. Il ajoute :class:"
"`zoneinfo.ZoneInfo`, une implémentation concrète de :class:`datetime.tzinfo` "
"à partir des données de fuseaux horaires du système."
#: whatsnew/3.9.rst:305
msgid ""
"As a fall-back source of data for platforms that don't ship the IANA "
"database, the |tzdata|_ module was released as a first-party package -- "
"distributed via PyPI and maintained by the CPython core team."
msgstr ""
"Comme option de rabat pour les plateformes qui n'incluent pas la base de "
"donnée de l'IANA, le module quasi-natif |tzdata|_ été publié il est "
"distribué sur PyPI et maintenu par l'équipe principale de CPython."
#: whatsnew/3.9.rst:314
msgid ""
":pep:`615` -- Support for the IANA Time Zone Database in the Standard Library"
msgstr ""
":pep:`615` — Prise en charge de la base de donnée des fuseaux horaires de "
"l'IANA dans la bibliothèque standard"
#: whatsnew/3.9.rst:315
msgid "PEP written and implemented by Paul Ganssle"
msgstr "PEP écrit et implémenté par *Paul Ganssle*"
#: whatsnew/3.9.rst:319
msgid "graphlib"
msgstr "*graphlib*"
#: whatsnew/3.9.rst:321
msgid ""
"A new module, :mod:`graphlib`, was added that contains the :class:`graphlib."
"TopologicalSorter` class to offer functionality to perform topological "
"sorting of graphs. (Contributed by Pablo Galindo, Tim Peters and Larry "
"Hastings in :issue:`17005`.)"
msgstr ""
"Un nouveau module, :mod:`graphlib`, a été ajouté. Il contient la classe :"
"class:`graphlib.TopologicalSorter` qui offre des fonctionnalités pour faire "
"le tri topologique de graphes (contribution de *Pablo Galindo*, *Tim Peters* "
"et *Larry Hastings* dans :issue:`17005`)."
#: whatsnew/3.9.rst:328
msgid "Improved Modules"
msgstr "Modules améliorés"
#: whatsnew/3.9.rst:331
msgid "ast"
msgstr "*ast*"
#: whatsnew/3.9.rst:333
msgid ""
"Added the *indent* option to :func:`~ast.dump` which allows it to produce a "
"multiline indented output. (Contributed by Serhiy Storchaka in :issue:"
"`37995`.)"
msgstr ""
"Ajout de l'option *indent* à :func:`~ast.dump` qui permet de produire une "
"sortie multi-ligne indentée (contribution de *Serhiy Storchaka* dans :issue:"
"`37995`)."
#: whatsnew/3.9.rst:337
msgid ""
"Added :func:`ast.unparse` as a function in the :mod:`ast` module that can be "
"used to unparse an :class:`ast.AST` object and produce a string with code "
"that would produce an equivalent :class:`ast.AST` object when parsed. "
"(Contributed by Pablo Galindo and Batuhan Taskaya in :issue:`38870`.)"
msgstr ""
"Ajout de la fonction :func:`ast.unparse` au module :mod:`ast` pour renverser "
"l'analyse syntaxique d'un objet :class:`ast.AST` et produire une chaîne de "
"code qui produirait un :class:`ast.AST` équivalent lorsqu'il est analysé "
"(contribution de *Pablo Galindo* et *Batuhan Taskaya* dans :issue:`38870`)."
#: whatsnew/3.9.rst:342
msgid ""
"Added docstrings to AST nodes that contains the ASDL signature used to "
"construct that node. (Contributed by Batuhan Taskaya in :issue:`39638`.)"
msgstr ""
"Ajout de chaînes de documentation aux nœuds AST qui contiennent les "
"signatures *ASDL* utilisées pour construire ce nœud (contribution de "
"*Batuhan Taskaya* dans :issue:`39638`)."
#: whatsnew/3.9.rst:346
msgid "asyncio"
msgstr "*asyncio*"
#: whatsnew/3.9.rst:348
msgid ""
"Due to significant security concerns, the *reuse_address* parameter of :meth:"
"`asyncio.loop.create_datagram_endpoint` is no longer supported. This is "
"because of the behavior of the socket option ``SO_REUSEADDR`` in UDP. For "
"more details, see the documentation for ``loop.create_datagram_endpoint()``. "
"(Contributed by Kyle Stanley, Antoine Pitrou, and Yury Selivanov in :issue:"
"`37228`.)"
msgstr ""
#: whatsnew/3.9.rst:355
msgid ""
"Added a new :term:`coroutine` :meth:`~asyncio.loop."
"shutdown_default_executor` that schedules a shutdown for the default "
"executor that waits on the :class:`~concurrent.futures.ThreadPoolExecutor` "
"to finish closing. Also, :func:`asyncio.run` has been updated to use the "
"new :term:`coroutine`. (Contributed by Kyle Stanley in :issue:`34037`.)"
msgstr ""
#: whatsnew/3.9.rst:361
msgid ""
"Added :class:`asyncio.PidfdChildWatcher`, a Linux-specific child watcher "
"implementation that polls process file descriptors. (:issue:`38692`)"
msgstr ""
"Ajout de :class:`asyncio.PidfdChildWatcher`, un surveillant de processus "
"enfants spécifique à Linux qui interroge le descripteur de ficher du "
"processus. (:issue:`38692`)"
#: whatsnew/3.9.rst:364
msgid ""
"Added a new :term:`coroutine` :func:`asyncio.to_thread`. It is mainly used "
"for running IO-bound functions in a separate thread to avoid blocking the "
"event loop, and essentially works as a high-level version of :meth:`~asyncio."
"loop.run_in_executor` that can directly take keyword arguments. (Contributed "
"by Kyle Stanley and Yury Selivanov in :issue:`32309`.)"
msgstr ""
#: whatsnew/3.9.rst:370
msgid ""
"When cancelling the task due to a timeout, :meth:`asyncio.wait_for` will now "
"wait until the cancellation is complete also in the case when *timeout* is "
"<= 0, like it does with positive timeouts. (Contributed by Elvis "
"Pranskevichus in :issue:`32751`.)"
msgstr ""
#: whatsnew/3.9.rst:375
msgid ""
":mod:`asyncio` now raises :exc:`TyperError` when calling incompatible "
"methods with an :class:`ssl.SSLSocket` socket. (Contributed by Ido Michael "
"in :issue:`37404`.)"
msgstr ""
#: whatsnew/3.9.rst:380
msgid "compileall"
msgstr "*compileall*"
#: whatsnew/3.9.rst:382
msgid ""
"Added new possibility to use hardlinks for duplicated ``.pyc`` files: "
"*hardlink_dupes* parameter and --hardlink-dupes command line option. "
"(Contributed by Lumír 'Frenzy' Balhar in :issue:`40495`.)"
msgstr ""
"Ajout de la possibilité d'utiliser des liens physiques pour les fichiers ``."
"pyc`` dupliqués : paramètre *hardlink_dupes* et option de ligne de commande "
"``--hardlink-dupes`` (contribution de *Lumír 'Frenzy' Balhar* dans :issue:"
"`40495`)."
#: whatsnew/3.9.rst:385
msgid ""
"Added new options for path manipulation in resulting ``.pyc`` files: "
"*stripdir*, *prependdir*, *limit_sl_dest* parameters and -s, -p, -e command "
"line options. Added the possibility to specify the option for an "
"optimization level multiple times. (Contributed by Lumír 'Frenzy' Balhar in :"
"issue:`38112`.)"
msgstr ""
"Ajout d'options pour manipuler les chemins des fichiers ``.pyc`` "
"résultants : paramètres *stripdir*, *prependdir*, *limit_sl_dest* et options "
"de la ligne de commande ``-s``, ``-p``, ``-e``. Ajout de la possibilité de "
"spécifier l'option pour un niveau d'optimisation plus d'une fois "
"(contribution de *Lumír 'Frenzy' Balhar* dans :issue:`38112`)."
#: whatsnew/3.9.rst:390
msgid "concurrent.futures"
msgstr "*concurrent.futures*"
#: whatsnew/3.9.rst:392
msgid ""
"Added a new *cancel_futures* parameter to :meth:`concurrent.futures.Executor."
"shutdown` that cancels all pending futures which have not started running, "
"instead of waiting for them to complete before shutting down the executor. "
"(Contributed by Kyle Stanley in :issue:`39349`.)"
msgstr ""
"Ajout du nouveau paramètre *cancel_futures* à :meth:`concurrent.futures."
"Executor.shutdown` qui annule tous les futurs en attente qui n'ont pas "
"commencé leur exécution, plutôt que d'attendre qu'ils aient complété avant "
"d'arrêter l'exécuteur (contribution *Kyle Stanley* dans :issue:`39349`)."
#: whatsnew/3.9.rst:398
msgid ""
"Removed daemon threads from :class:`~concurrent.futures.ThreadPoolExecutor` "
"and :class:`~concurrent.futures.ProcessPoolExecutor`. This improves "
"compatibility with subinterpreters and predictability in their shutdown "
"processes. (Contributed by Kyle Stanley in :issue:`39812`.)"
msgstr ""
#: whatsnew/3.9.rst:403
msgid ""
"Workers in :class:`~concurrent.futures.ProcessPoolExecutor` are now spawned "
"on demand, only when there are no available idle workers to reuse. This "
"optimizes startup overhead and reduces the amount of lost CPU time to idle "
"workers. (Contributed by Kyle Stanley in :issue:`39207`.)"
msgstr ""
#: whatsnew/3.9.rst:409
msgid "curses"
msgstr "*curses*"
#: whatsnew/3.9.rst:411
msgid ""
"Added :func:`curses.get_escdelay`, :func:`curses.set_escdelay`, :func:"
"`curses.get_tabsize`, and :func:`curses.set_tabsize` functions. (Contributed "
"by Anthony Sottile in :issue:`38312`.)"
msgstr ""
"Ajout des fonctions :func:`curses.get_escdelay`, :func:`curses."
"set_escdelay`, :func:`curses.get_tabsize`, et :func:`curses.set_tabsize` "
"(contribution d'*Anthony Sottile* dans :issue:`38312`)."
#: whatsnew/3.9.rst:416
msgid "datetime"
msgstr "*datetime*"
#: whatsnew/3.9.rst:417
msgid ""
"The :meth:`~datetime.date.isocalendar()` of :class:`datetime.date` and :meth:"
"`~datetime.datetime.isocalendar()` of :class:`datetime.datetime` methods now "
"returns a :func:`~collections.namedtuple` instead of a :class:`tuple`. "
"(Contributed by Dong-hee Na in :issue:`24416`.)"
msgstr ""
"La méthode :meth:`~datetime.date.isocalendar()` de :class:`datetime.date` et "
"la méthode :meth:`~datetime.datetime.isocalendar()` de :class:`datetime."
"datetime` renvoient maintenant un :func:`~collections.namedtuple` plutôt "
"qu'un :class:`tuple` (contribution de *Dong-hee Na* dans :issue:`24416`)."
#: whatsnew/3.9.rst:423
msgid "distutils"
msgstr "*distutils*"
#: whatsnew/3.9.rst:425
msgid ""
"The :command:`upload` command now creates SHA2-256 and Blake2b-256 hash "
"digests. It skips MD5 on platforms that block MD5 digest. (Contributed by "
"Christian Heimes in :issue:`40698`.)"
msgstr ""
"La commande :command:`upload` crée maintenant des condensats SHA2-256 et "
"Blake2b-256. Elle ne produit pas MD5 sur les plateformes qui bloquent les "
"condensats MD5 (contribution de *Christian Heimes* dans :issue:`40698`)."
#: whatsnew/3.9.rst:430
msgid "fcntl"
msgstr "*fcntl*"
#: whatsnew/3.9.rst:432
msgid ""
"Added constants :data:`~fcntl.F_OFD_GETLK`, :data:`~fcntl.F_OFD_SETLK` and :"
"data:`~fcntl.F_OFD_SETLKW`. (Contributed by Dong-hee Na in :issue:`38602`.)"
msgstr ""
"Ajout des constantes :data:`~fcntl.F_OFD_GETLK`, :data:`~fcntl.F_OFD_SETLK` "
"et :data:`~fcntl.F_OFD_SETLKW` (contribution de *Dong-hee Na* dans :issue:"
"`38602`)."
#: whatsnew/3.9.rst:437
msgid "ftplib"
msgstr "*ftplib*"
#: whatsnew/3.9.rst:439
msgid ""
":class:`~ftplib.FTP` and :class:`~ftplib.FTP_TLS` now raise a :class:"
"`ValueError` if the given timeout for their constructor is zero to prevent "
"the creation of a non-blocking socket. (Contributed by Dong-hee Na in :issue:"
"`39259`.)"
msgstr ""
"Afin d'empêcher la création de *socket* non-bloquant, les classes :class:"
"`~ftplib.FTP` et :class:`~ftplib.FTP_TLS` lèvent maintenant :class:"
"`ValueError` quand zéro est passé à *timeout* dans leur constructeur "
"(contribution de *Dong-hee Na* dans :issue:`39259`)."
#: whatsnew/3.9.rst:444
msgid "gc"
msgstr "*gc*"
# Voir le ticket qui mentionne que "block" n'est pas utilisé dans le sens d'un flux bloquant mais plutot dans le sens d'une annulation de l'opération.
#: whatsnew/3.9.rst:446
msgid ""
"When the garbage collector makes a collection in which some objects "
"resurrect (they are reachable from outside the isolated cycles after the "
"finalizers have been executed), do not block the collection of all objects "
"that are still unreachable. (Contributed by Pablo Galindo and Tim Peters in :"
"issue:`38379`.)"
msgstr ""
"Quand le ramasse-miettes fait un ramassage pour lequel certains objets sont "
"ressuscités (ils sont atteignables à partir de l'extérieur des cycles isolés "
"après que les *finaliseurs* soient exécutés), le ramassage des objets qui "
"sont toujours inatteignables n'est pas suspendu (contribution de *Pablo "
"Galindo* et *Tim Peters* dans :issue:`38379`)."
#: whatsnew/3.9.rst:451
msgid ""
"Added a new function :func:`gc.is_finalized` to check if an object has been "
"finalized by the garbage collector. (Contributed by Pablo Galindo in :issue:"
"`39322`.)"
msgstr ""
"Ajout de la fonction :func:`gc.is_finalized` pour vérifier si un objet a été "
"finalisé par le ramasse-miettes (contribution de *Pablo Galindo* dans :issue:"
"`39322`)."
#: whatsnew/3.9.rst:456
msgid "hashlib"
msgstr "*hashlib*"
#: whatsnew/3.9.rst:458
msgid ""
"The :mod:`hashlib` module can now use SHA3 hashes and SHAKE XOF from OpenSSL "
"when available. (Contributed by Christian Heimes in :issue:`37630`.)"
msgstr ""
"Le module :mod:`hashlib` peut maintenant utiliser les algorithmes de hachage "
"SHA3 et SHAKE XOF de *OpenSSL* quand ils sont disponibles (contribution de "
"*Christian Heimes* dans :issue:`37630`)."
#: whatsnew/3.9.rst:462
msgid ""
"Builtin hash modules can now be disabled with ``./configure --without-"
"builtin-hashlib-hashes`` or selectively enabled with e.g. ``./configure --"
"with-builtin-hashlib-hashes=sha3,blake2`` to force use of OpenSSL based "
"implementation. (Contributed by Christian Heimes in :issue:`40479`)"
msgstr ""
"Les modules de hachage natifs peuvent être désactivés avec ``./configure --"
"without-builtin-hashlib-hashes`` ou activés sélectivement avec par exemple "
"``./configure --with-builtin-hashlib-hashes=sha3,blake2`` pour forcer "
"l'utilisation de limplémentation *OpenSSL* (contribution de *Christian "
"Heimes* dans :issue:`40479`)."
#: whatsnew/3.9.rst:470
msgid "http"
msgstr "*http*"
#: whatsnew/3.9.rst:472
msgid ""
"HTTP status codes ``103 EARLY_HINTS``, ``418 IM_A_TEAPOT`` and ``425 "
"TOO_EARLY`` are added to :class:`http.HTTPStatus`. (Contributed by Dong-hee "
"Na in :issue:`39509` and Ross Rhodes in :issue:`39507`.)"
msgstr ""
"Les codes d'état HTTP ``103 EARLY_HINTS``, ``418 IM_A_TEAPOT`` et ``425 "
"TOO_EARLY`` ont été ajoutés à :class:`http.HTTPStatus` (contribution de "
"*Dong-hee Na* dans :issue:`39509` et Ross Rhodes dans :issue:`39507`)."
#: whatsnew/3.9.rst:476
msgid "IDLE and idlelib"
msgstr "*IDLE* et *idlelib*"
#: whatsnew/3.9.rst:478
msgid ""
"Added option to toggle cursor blink off. (Contributed by Zackery Spytz in :"
"issue:`4603`.)"
msgstr ""
"Ajout d'une option pour désactiver le clignotement du curseur (contribution "
"de *Zackery Spytz* dans :issue:`4603`)."
#: whatsnew/3.9.rst:481
msgid ""
"Escape key now closes IDLE completion windows. (Contributed by Johnny "
"Najera in :issue:`38944`.)"
msgstr ""
"La fenêtre de complétion de IDLE est maintenant fermée par la touche "
"d'échappement (contribution de *Johnny Najera* dans :issue:`38944`)."
#: whatsnew/3.9.rst:484
msgid ""
"Added keywords to module name completion list. (Contributed by Terry J. "
"Reedy in :issue:`37765`.)"
msgstr ""
"Ajout de mots clés à la liste de complétion de noms de modules (contribution "
"de *Terry J. Reedy* dans :issue:`37765`)."
#: whatsnew/3.9.rst:487
msgid "The changes above have been backported to 3.8 maintenance releases."
msgstr ""
"Les changements ci-haut ont été rétro-portés dans la version de maintenance "
"de 3.8."
#: whatsnew/3.9.rst:490
msgid "imaplib"
msgstr "*imaplib*"
#: whatsnew/3.9.rst:492
msgid ""
":class:`~imaplib.IMAP4` and :class:`~imaplib.IMAP4_SSL` now have an optional "
"*timeout* parameter for their constructors. Also, the :meth:`~imaplib.IMAP4."
"open` method now has an optional *timeout* parameter with this change. The "
"overridden methods of :class:`~imaplib.IMAP4_SSL` and :class:`~imaplib."
"IMAP4_stream` were applied to this change. (Contributed by Dong-hee Na in :"
"issue:`38615`.)"
msgstr ""
":class:`~imaplib.IMAP4` et :class:`~imaplib.IMAP4_SSL` ont maintenant un "
"paramètre optionnel *timeout* dans leur constructeur. De plus, la méthode :"
"meth:`~imaplib.IMAP4.open` a maintenant un paramètre optionnel *timeout* "
"avec ce changement. Les méthodes surchargées de :class:`~imaplib.IMAP4_SSL` "
"et :class:`~imaplib.IMAP4_stream` appliquent ce changement (contribution de "
"*Dong-hee Na* dans :issue:`38615`)."
# "Return" n'est pas un renvoi de fonction, c'est un retour à un état précédent.
#: whatsnew/3.9.rst:499
msgid ""
":meth:`imaplib.IMAP4.unselect` is added. :meth:`imaplib.IMAP4.unselect` "
"frees server's resources associated with the selected mailbox and returns "
"the server to the authenticated state. This command performs the same "
"actions as :meth:`imaplib.IMAP4.close`, except that no messages are "
"permanently removed from the currently selected mailbox. (Contributed by "
"Dong-hee Na in :issue:`40375`.)"
msgstr ""
"Ajout de :meth:`imaplib.IMAP4.unselect`. :meth:`imaplib.IMAP4.unselect` "
"libère les ressources du serveur associées à la boîte de courriel "
"sélectionnée et remet le serveur à l'état *autenticated*. Cette commande "
"exécute les mêmes actions que :meth:`imaplib.IMAP4.close`, mais aucun "
"message n'est retiré de façon permanente de la boîte courriel sélectionnée "
"(contribution de *Dong-hee Na* dans :issue:`40375`)."
#: whatsnew/3.9.rst:507
msgid "importlib"
msgstr "*importlib*"
#: whatsnew/3.9.rst:509
msgid ""
"To improve consistency with import statements, :func:`importlib.util."
"resolve_name` now raises :exc:`ImportError` instead of :exc:`ValueError` for "
"invalid relative import attempts. (Contributed by Ngalim Siregar in :issue:"
"`37444`.)"
msgstr ""
"Pour plus de cohérence avec les instructions d'import, :func:`importlib.util."
"resolve_name` lève maintenant :exc:`ImportError` plutôt que :exc:"
"`ValueError` pour les tentatives d'import relatifs invalides (contribution "
"de *Ngalim Siregar* dans :issue:`37444`)."
#: whatsnew/3.9.rst:514
msgid ""
"Import loaders which publish immutable module objects can now publish "
"immutable packages in addition to individual modules. (Contributed by Dino "
"Viehland in :issue:`39336`.)"
msgstr ""
"Les chargeurs d'importation qui publient des objets modules immuables "
"peuvent maintenant aussi publier des paquets immuables en plus des modules "
"individuels (contribution de *Dino Viehland* dans :issue:`39336`)."
#: whatsnew/3.9.rst:518
msgid ""
"Added :func:`importlib.resources.files` function with support for "
"subdirectories in package data, matching backport in ``importlib_resources`` "
"version 1.5. (Contributed by Jason R. Coombs in :issue:`39791`.)"
msgstr ""
"Ajout de la fonction :func:`importlib.resources.files` qui prend en charge "
"les sous-répertoires dans les données du paquet. Aussi rétro-porté pour les "
"version précédentes de Python dans ``importlib_resources`` version 1.5 "
"(contribution de *Jason R. Coombs* dans :issue:`39791`)."
#: whatsnew/3.9.rst:523
msgid ""
"Refreshed ``importlib.metadata`` from ``importlib_metadata`` version 1.6.1."
msgstr ""
"Mise à jour de ``importlib.metadata`` à partir de ``importlib_metadata`` "
"version 1.6.1."
#: whatsnew/3.9.rst:526
msgid "inspect"
msgstr "*inspect*"
#: whatsnew/3.9.rst:528
msgid ""
":attr:`inspect.BoundArguments.arguments` is changed from ``OrderedDict`` to "
"regular dict. (Contributed by Inada Naoki in :issue:`36350` and :issue:"
"`39775`.)"
msgstr ""
":attr:`inspect.BoundArguments.arguments`, qui était un ``OrderedDict``, "
"devient un ``dict`` natif régulier (contribution de *Inada Naoki* dans :"
"issue:`36350` et :issue:`39775`)."
#: whatsnew/3.9.rst:532
msgid "ipaddress"
msgstr "*ipaddress*"
#: whatsnew/3.9.rst:534
msgid ""
":mod:`ipaddress` now supports IPv6 Scoped Addresses (IPv6 address with "
"suffix ``%<scope_id>``)."
msgstr ""
":mod:`ipaddress` prend désormais en charge les IPv6 avec une portée "
"spécifiée (adresses IPv6 avec un suffixe ``%<scope_id>``)."
#: whatsnew/3.9.rst:536
msgid ""
"Scoped IPv6 addresses can be parsed using :class:`ipaddress.IPv6Address`. If "
"present, scope zone ID is available through the :attr:`~ipaddress."
"IPv6Address.scope_id` attribute. (Contributed by Oleksandr Pavliuk in :issue:"
"`34788`.)"
msgstr ""
"Les adresses IPv6 avec une portée spécifiée peuvent être analysées avec :"
"class:`ipaddress.IPv6Address`. S'il est présent, l'indice de la zone de la "
"portée est disponible dans l'attribut :attr:`~ipaddress.IPv6Address."
"scope_id` (contribution de *Oleksandr Pavliuk* dans :issue:`34788`)."
#: whatsnew/3.9.rst:540
msgid ""
"Starting with Python 3.9.5 the :mod:`ipaddress` module no longer accepts any "
"leading zeros in IPv4 address strings. (Contributed by Christian Heimes in :"
"issue:`36384`)."
msgstr ""
#: whatsnew/3.9.rst:545
msgid "math"
msgstr "*math*"
#: whatsnew/3.9.rst:547
msgid ""
"Expanded the :func:`math.gcd` function to handle multiple arguments. "
"Formerly, it only supported two arguments. (Contributed by Serhiy Storchaka "
"in :issue:`39648`.)"
msgstr ""
"Extension de la fonction :func:`math.gcd` pour gérer les arguments "
"multiples. Préalablement, elle ne gérait que deux arguments (contribution de "
"*Serhiy Storchaka* dans :issue:`39648`)."
#: whatsnew/3.9.rst:551
msgid ""
"Added :func:`math.lcm`: return the least common multiple of specified "
"arguments. (Contributed by Mark Dickinson, Ananthakrishnan and Serhiy "
"Storchaka in :issue:`39479` and :issue:`39648`.)"
msgstr ""
"Ajout de :func:`math.lcm` : renvoie le plus petit commun multiple des "
"arguments spécifiés (contribution de *Mark Dickinson*, *Ananthakrishnan* et "
"*Serhiy Storchaka* dans :issue:`39479` et :issue:`39648`)."
#: whatsnew/3.9.rst:555
msgid ""
"Added :func:`math.nextafter`: return the next floating-point value after *x* "
"towards *y*. (Contributed by Victor Stinner in :issue:`39288`.)"
msgstr ""
"Ajout de :func:`math.nextafter` : renvoie la prochaine valeur à point "
"flottant après *x* en direction de *y* (contribution de *Victor Stinner* "
"dans :issue:`39288`)."
#: whatsnew/3.9.rst:559
msgid ""
"Added :func:`math.ulp`: return the value of the least significant bit of a "
"float. (Contributed by Victor Stinner in :issue:`39310`.)"
msgstr ""
"Ajout de :func:`math.ulp` : renvoie la valeur du bit le moins significatif "
"d'un *float* (contribution de *Victor Stinner* dans :issue:`39310`)."
#: whatsnew/3.9.rst:564
msgid "multiprocessing"
msgstr "*multiprocessing*"
#: whatsnew/3.9.rst:566
msgid ""
"The :class:`multiprocessing.SimpleQueue` class has a new :meth:"
"`~multiprocessing.SimpleQueue.close` method to explicitly close the queue. "
"(Contributed by Victor Stinner in :issue:`30966`.)"
msgstr ""
"La classe :class:`multiprocessing.SimpleQueue` a une nouvelle méthode :meth:"
"`~multiprocessing.SimpleQueue.close` pour fermer la queue de façon explicite "
"(contribution de *Victor Stinner* dans :issue:`30966`)."
#: whatsnew/3.9.rst:572
msgid "nntplib"
msgstr "*nntplib*"
#: whatsnew/3.9.rst:574
msgid ""
":class:`~nntplib.NNTP` and :class:`~nntplib.NNTP_SSL` now raise a :class:"
"`ValueError` if the given timeout for their constructor is zero to prevent "
"the creation of a non-blocking socket. (Contributed by Dong-hee Na in :issue:"
"`39259`.)"
msgstr ""
"Afin d'empêcher la création d'interfaces de connexion (*sockets*) non-"
"bloquantes, les classes :class:`~nntplib.NNTP` et :class:`~nntplib.NNTP_SSL` "
"lèvent maintenant :class:`ValueError` si la valeur passée à *timeout* dans "
"leur constructeur est zéro (contribution de *Dong-hee Na* dans :issue:"
"`39259`)."
#: whatsnew/3.9.rst:579
msgid "os"
msgstr "*os*"
#: whatsnew/3.9.rst:581
msgid ""
"Added :data:`~os.CLD_KILLED` and :data:`~os.CLD_STOPPED` for :attr:"
"`si_code`. (Contributed by Dong-hee Na in :issue:`38493`.)"
msgstr ""
"Ajout de :data:`~os.CLD_KILLED` et :data:`~os.CLD_STOPPED` pour :attr:"
"`si_code` (contribution de *Dong-hee Na* dans :issue:`38493`)."
#: whatsnew/3.9.rst:584
msgid ""
"Exposed the Linux-specific :func:`os.pidfd_open` (:issue:`38692`) and :data:"
"`os.P_PIDFD` (:issue:`38713`) for process management with file descriptors."
msgstr ""
"Sur Linux, exposition de :func:`os.pidfd_open` (:issue:`38692`) et de :data:"
"`os.P_PIDFD` (:issue:`38713`) pour la gestion de processus avec des "
"descripteurs de fichiers."
#: whatsnew/3.9.rst:588
msgid ""
"The :func:`os.unsetenv` function is now also available on Windows. "
"(Contributed by Victor Stinner in :issue:`39413`.)"
msgstr ""
"La fonction :func:`os.unsetenv` est maintenant aussi disponible sur Windows "
"(contribution de *Victor Stinner* dans :issue:`39413`)."
#: whatsnew/3.9.rst:591
msgid ""
"The :func:`os.putenv` and :func:`os.unsetenv` functions are now always "
"available. (Contributed by Victor Stinner in :issue:`39395`.)"
msgstr ""
"Les fonctions :func:`os.putenv` et :func:`os.unsetenv` sont maintenant "
"toujours disponibles (contribution de *Victor Stinner* dans :issue:`39395`)."
#: whatsnew/3.9.rst:595
msgid ""
"Added :func:`os.waitstatus_to_exitcode` function: convert a wait status to "
"an exit code. (Contributed by Victor Stinner in :issue:`40094`.)"
msgstr ""
"Ajout de la fonction :func:`os.waitstatus_to_exitcode` : convertit la valeur "
"de retour de ``wait()`` en code de sortie (contribution de *Victor Stinner* "
"dans :issue:`40094`)."
#: whatsnew/3.9.rst:600
msgid "pathlib"
msgstr "*pathlib*"
#: whatsnew/3.9.rst:602
msgid ""
"Added :meth:`pathlib.Path.readlink()` which acts similarly to :func:`os."
"readlink`. (Contributed by Girts Folkmanis in :issue:`30618`)"
msgstr ""
"Ajout de :meth:`pathlib.Path.readlink()` qui a un comportement similaire à :"
"func:`os.readlink` (contribution de *Girts Folkmanis* dans :issue:`30618`)."
#: whatsnew/3.9.rst:607
msgid "pdb"
msgstr "*pdb*"
#: whatsnew/3.9.rst:609
msgid ""
"On Windows now :class:`~pdb.Pdb` supports ``~/.pdbrc``. (Contributed by Tim "
"Hopper and Dan Lidral-Porter in :issue:`20523`.)"
msgstr ""
"Sur Windows, :class:`~pdb.Pdb` gère maintenant ``~/.pdbrc`` (contribution de "
"*Tim Hopper* et *Dan Lidral-Porter* dans :issue:`20523`)."
#: whatsnew/3.9.rst:613
msgid "poplib"
msgstr "*poplib*"
#: whatsnew/3.9.rst:615
msgid ""
":class:`~poplib.POP3` and :class:`~poplib.POP3_SSL` now raise a :class:"
"`ValueError` if the given timeout for their constructor is zero to prevent "
"the creation of a non-blocking socket. (Contributed by Dong-hee Na in :issue:"
"`39259`.)"
msgstr ""
"Afin de prévenir la création d'une interface de connexion (*socket*) non-"
"bloquante, :class:`~poplib.POP3` et :class:`~poplib.POP3_SSL` lèvent "
"maintenant une :class:`ValueError` si la valeur passée à *timeout* dans leur "
"constructeur est zéro (contribution de *Dong-hee Na* dans :issue:`39259`)."
#: whatsnew/3.9.rst:620
msgid "pprint"
msgstr "*pprint*"
#: whatsnew/3.9.rst:622
msgid ""
":mod:`pprint` can now pretty-print :class:`types.SimpleNamespace`. "
"(Contributed by Carl Bordum Hansen in :issue:`37376`.)"
msgstr ""
":mod:`pprint` peut maintenant faire l'affichage formaté de :class:`types."
"SimpleNamespace` (contribution de *Carl Bordum Hansen* dans :issue:`37376`)."
#: whatsnew/3.9.rst:626
msgid "pydoc"
msgstr "*pydoc*"
#: whatsnew/3.9.rst:628
msgid ""
"The documentation string is now shown not only for class, function, method "
"etc, but for any object that has its own ``__doc__`` attribute. (Contributed "
"by Serhiy Storchaka in :issue:`40257`.)"
msgstr ""
"La chaîne de documentation est maintenant affichée non seulement pour les "
"classes, fonctions, méthodes, etc., mais aussi pour tout objet qui a son "
"propre attribut ``__doc__`` (contribution de *Serhiy Storchaka* dans :issue:"
"`40257`)."
#: whatsnew/3.9.rst:633
msgid "random"
msgstr "*random*"
#: whatsnew/3.9.rst:635
msgid ""
"Added a new :attr:`random.Random.randbytes` method: generate random bytes. "
"(Contributed by Victor Stinner in :issue:`40286`.)"
msgstr ""
"Ajout de la méthode :attr:`random.Random.randbytes` : génère des octets "
"aléatoires (contribution de *Victor Stinner* dans :issue:`40286`)."
#: whatsnew/3.9.rst:639
msgid "signal"
msgstr "*signal*"
#: whatsnew/3.9.rst:641
msgid ""
"Exposed the Linux-specific :func:`signal.pidfd_send_signal` for sending to "
"signals to a process using a file descriptor instead of a pid. (:issue:"
"`38712`)"
msgstr ""
"Sur Linux, exposition de :func:`signal.pidfd_send_signal` pour envoyer des "
"signaux à un processus en utilisant un descripteur de fichier plutôt qu'un "
"identifiant de processus (*pid*). (:issue:`38712`)"
#: whatsnew/3.9.rst:645
msgid "smtplib"
msgstr "*smtplib*"
#: whatsnew/3.9.rst:647
msgid ""
":class:`~smtplib.SMTP` and :class:`~smtplib.SMTP_SSL` now raise a :class:"
"`ValueError` if the given timeout for their constructor is zero to prevent "
"the creation of a non-blocking socket. (Contributed by Dong-hee Na in :issue:"
"`39259`.)"
msgstr ""
"Afin d'éviter la création d'une interface de connexion (*socket*) non-"
"bloquante, :class:`~smtplib.SMTP` et :class:`~smtplib.SMTP_SSL` lèvent "
"maintenant une :class:`ValueError` si la valeur de *timeout* passée à leur "
"constructeur est zéro (contribution de *Dong-hee Na* dans :issue:`39259`)."
#: whatsnew/3.9.rst:651
msgid ""
":class:`~smtplib.LMTP` constructor now has an optional *timeout* parameter. "
"(Contributed by Dong-hee Na in :issue:`39329`.)"
msgstr ""
"Le constructeur de :class:`~smtplib.LMTP` a maintenant un paramètre "
"*timeout* optionnel (contribution de *Dong-hee Na* dans :issue:`39329`)."
#: whatsnew/3.9.rst:655
msgid "socket"
msgstr "*socket*"
#: whatsnew/3.9.rst:657
msgid ""
"The :mod:`socket` module now exports the :data:`~socket."
"CAN_RAW_JOIN_FILTERS` constant on Linux 4.1 and greater. (Contributed by "
"Stefan Tatschner and Zackery Spytz in :issue:`25780`.)"
msgstr ""
"Le module :mod:`socket` exporte maintenant la constante :data:`~socket."
"CAN_RAW_JOIN_FILTERS` à partir de Linux 4.1 (contribution de *Stefan "
"Tatschner* et *Zackery Spytz* dans :issue:`25780`)."
#: whatsnew/3.9.rst:661
msgid ""
"The socket module now supports the :data:`~socket.CAN_J1939` protocol on "
"platforms that support it. (Contributed by Karl Ding in :issue:`40291`.)"
msgstr ""
"Le module ``socket`` prend maintenant en charge le protocole :data:`~socket."
"CAN_J1939` sur les plateformes où il est disponible (contribution de *Karl "
"Ding* dans :issue:`40291`)."
#: whatsnew/3.9.rst:664
msgid ""
"The socket module now has the :func:`socket.send_fds` and :func:`socket."
"recv_fds` functions. (Contributed by Joannah Nanjekye, Shinya Okano and "
"Victor Stinner in :issue:`28724`.)"
msgstr ""
"Le module ``socket`` possède maintenant les fonctions :func:`socket."
"send_fds` et :func:`socket.recv_fds` (contribution de *Joannah Nanjekye*, "
"*Shinya Okano* et *Victor Stinner* dans :issue:`28724`)."
#: whatsnew/3.9.rst:670
msgid "time"
msgstr "*time*"
#: whatsnew/3.9.rst:672
msgid ""
"On AIX, :func:`~time.thread_time` is now implemented with "
"``thread_cputime()`` which has nanosecond resolution, rather than "
"``clock_gettime(CLOCK_THREAD_CPUTIME_ID)`` which has a resolution of 10 ms. "
"(Contributed by Batuhan Taskaya in :issue:`40192`)"
msgstr ""
"Sur AIX, :func:`~time.thread_time` est maintenant implémenté par "
"``thread_cputime()`` qui a une résolution à la nanoseconde près plutôt que "
"``clock_gettime(CLOCK_THREAD_CPUTIME_ID)`` qui a une résolution de 10 ms "
"(contribution de *Batuhan Taskaya* dans :issue:`40192`)."
#: whatsnew/3.9.rst:678
msgid "sys"
msgstr "*sys*"
#: whatsnew/3.9.rst:680
msgid ""
"Added a new :attr:`sys.platlibdir` attribute: name of the platform-specific "
"library directory. It is used to build the path of standard library and the "
"paths of installed extension modules. It is equal to ``\"lib\"`` on most "
"platforms. On Fedora and SuSE, it is equal to ``\"lib64\"`` on 64-bit "
"platforms. (Contributed by Jan Matějek, Matěj Cepl, Charalampos Stratakis "
"and Victor Stinner in :issue:`1294959`.)"
msgstr ""
"Ajout du nouvel attribut :attr:`sys.platlibdir` : répertoire des "
"bibliothèques spécifiques à la plateforme. Il est utilisé pour construire le "
"chemin de la bibliothèque standard et les chemins des modules d'extension "
"installés. Il est égal à ``\"lib\"`` sur la plupart des plateformes. Sur "
"*Fedora* et *SuSE*, il est égal à ``\"lib64\"`` sur les plateformes 64-bit "
"(contribution de *Jan Matějek*, *Matěj Cepl*, *Charalampos Stratakis* et "
"*Victor Stinner* dans :issue:`1294959`)."
#: whatsnew/3.9.rst:686
msgid ""
"Previously, :attr:`sys.stderr` was block-buffered when non-interactive. Now "
"``stderr`` defaults to always being line-buffered. (Contributed by Jendrik "
"Seipp in :issue:`13601`.)"
msgstr ""
"Préalablement, :attr:`sys.stderr` avait un tampon par blocs quand il n'était "
"pas interactif. Maintenant ``stderr`` a toujours par défaut un tampon par "
"lignes (contribution de *Jendrik Seipp* dans :issue:`13601`)."
#: whatsnew/3.9.rst:691
msgid "tracemalloc"
msgstr "*tracemalloc*"
#: whatsnew/3.9.rst:693
msgid ""
"Added :func:`tracemalloc.reset_peak` to set the peak size of traced memory "
"blocks to the current size, to measure the peak of specific pieces of code. "
"(Contributed by Huon Wilson in :issue:`40630`.)"
msgstr ""
"Ajout de :func:`tracemalloc.reset_peak` qui affecte la taille d'apogée (la "
"plus grande taille atteinte) du bloc mémoire tracé à la taille courante, "
"pour mesurer la taille d'apogée de parties de code spécifiques (contribution "
"de *Huon Wilson* dans :issue:`40630`)."
#: whatsnew/3.9.rst:1481
msgid "typing"
msgstr "*typing*"
#: whatsnew/3.9.rst:700
msgid ""
":pep:`593` introduced an :data:`typing.Annotated` type to decorate existing "
"types with context-specific metadata and new ``include_extras`` parameter "
"to :func:`typing.get_type_hints` to access the metadata at runtime. "
"(Contributed by Till Varoquaux and Konstantin Kashin.)"
msgstr ""
":pep:`593` ajoute le type :data:`typing.Annotated` pour décorer les types "
"existants avec des métadonnées spécifiques au contexte et le nouveau "
"paramètre ``include_extras`` à :func:`typing.get_type_hints` pour récupérer "
"les métadonnées à l'exécution (contribution de *Till Varoquaux* et "
"*Konstantin Kashin*)."
#: whatsnew/3.9.rst:706
msgid "unicodedata"
msgstr "*unicodedata*"
#: whatsnew/3.9.rst:708
msgid ""
"The Unicode database has been updated to version 13.0.0. (:issue:`39926`)."
msgstr ""
"La base de donnée Unicode a été mise à jour à la version 13.0.0. (:issue:"
"`39926`)."
#: whatsnew/3.9.rst:711
msgid "venv"
msgstr "*venv*"
#: whatsnew/3.9.rst:713
msgid ""
"The activation scripts provided by :mod:`venv` now all specify their prompt "
"customization consistently by always using the value specified by "
"``__VENV_PROMPT__``. Previously some scripts unconditionally used "
"``__VENV_PROMPT__``, others only if it happened to be set (which was the "
"default case), and one used ``__VENV_NAME__`` instead. (Contributed by Brett "
"Cannon in :issue:`37663`.)"
msgstr ""
"Tous les scripts d'activations fournis par :mod:`venv` spécifient maintenant "
"la personnalisation de l'invite de façon cohérente en utilisant toujours la "
"valeur spécifiée dans ``__VENV_PROMPT__``. Précédemment certains scripts "
"utilisaient toujours ``__VENV_PROMPT__``, d'autres seulement quand la "
"variable était affectée, et un utilisait plutôt ``__VENV_NAME__`` "
"(contribution de *Brett Cannon* dans :issue:`37663`)."
#: whatsnew/3.9.rst:721
msgid "xml"
msgstr "*xml*"
#: whatsnew/3.9.rst:723
msgid ""
"White space characters within attributes are now preserved when serializing :"
"mod:`xml.etree.ElementTree` to XML file. EOLNs are no longer normalized to "
"\"\\n\". This is the result of discussion about how to interpret section "
"2.11 of XML spec. (Contributed by Mefistotelis in :issue:`39011`.)"
msgstr ""
"Les caractères d'espacement à l'intérieur des attributs sont maintenant "
"préservés lors de la sérialisation d':mod:`xml.etree.ElementTree` en fichier "
"XML. Les fin de lignes ne sont plus normalisées par \"\\n\". Ceci est le "
"résultat d'une discussion sur comment interpréter la section 2.11 de la "
"spécification XML (contribution de *Mefistotelis* dans :issue:`39011`)."
#: whatsnew/3.9.rst:731
msgid "Optimizations"
msgstr "Optimisations"
#: whatsnew/3.9.rst:733
msgid ""
"Optimized the idiom for assignment a temporary variable in comprehensions. "
"Now ``for y in [expr]`` in comprehensions is as fast as a simple assignment "
"``y = expr``. For example:"
msgstr ""
"L'affectation d'une variable temporaire dans les compréhensions est "
"optimisée. Maintenant ``for y in [expr]`` dans les compréhensions est aussi "
"rapide qu'une affectation simple ``y = expr``. Par exemple :"
#: whatsnew/3.9.rst:737
msgid "sums = [s for s in [0] for x in data for s in [s + x]]"
msgstr "``sums = [s for s in [0] for x in data for s in [s + x]]``"
#: whatsnew/3.9.rst:739
msgid ""
"Unlike the ``:=`` operator this idiom does not leak a variable to the outer "
"scope."
msgstr ""
"Contrairement à l'opérateur ``:=``, cet idiome ne laisse pas déborder une "
"variable dans la portée externe"
#: whatsnew/3.9.rst:742
msgid "(Contributed by Serhiy Storchaka in :issue:`32856`.)"
msgstr "(contribution de *Serhiy Storchaka* dans :issue:`32856`)."
#: whatsnew/3.9.rst:744
msgid ""
"Optimized signal handling in multithreaded applications. If a thread "
"different than the main thread gets a signal, the bytecode evaluation loop "
"is no longer interrupted at each bytecode instruction to check for pending "
"signals which cannot be handled. Only the main thread of the main "
"interpreter can handle signals."
msgstr ""
"Optimisation de la gestion des signaux dans les applications avec plus d'un "
"fil d'exécution (*multithreaded applications*). Si un fil d'exécution autre "
"que le fil principal reçoit un signal, la boucle d'évaluation du code "
"intermédiaire (*bytecode*) n'est plus interrompue à chaque instruction "
"intermédiaire pour vérifier s'il y a des signaux en attente qui ne peuvent "
"être gérés. Seul le fil principal de l'interpréteur principal peut gérer les "
"signaux."
#: whatsnew/3.9.rst:750
msgid ""
"Previously, the bytecode evaluation loop was interrupted at each instruction "
"until the main thread handles signals. (Contributed by Victor Stinner in :"
"issue:`40010`.)"
msgstr ""
"Précédemment, la boucle d'évaluation du code intermédiaire était interrompue "
"à chaque instruction jusqu'à ce que le fil principal gère les signaux "
"(contribution de *Victor Stinner* dans :issue:`40010`)."
#: whatsnew/3.9.rst:754
msgid ""
"Optimized the :mod:`subprocess` module on FreeBSD using ``closefrom()``. "
"(Contributed by Ed Maste, Conrad Meyer, Kyle Evans, Kubilay Kocak and Victor "
"Stinner in :issue:`38061`.)"
msgstr ""
"Optimisation du module :mod:`subprocess` sur FreeBSD en utilisant "
"``closefrom()`` (contribution de *Ed Maste*, *Conrad Meyer*, *Kyle Evans*, "
"*Kubilay Kocak* et *Victor Stinner* dans :issue:`38061`)."
#: whatsnew/3.9.rst:758
msgid ""
":c:func:`PyLong_FromDouble` is now up to 1.87x faster for values that fit "
"into :c:type:`long`. (Contributed by Sergey Fedoseev in :issue:`37986`.)"
msgstr ""
":c:func:`PyLong_FromDouble` est maintenant 1,87 fois plus rapide pour les "
"valeurs compatibles avec :c:type:`long` (contribution de *Sergey Fedoseev* "
"dans :issue:`37986`)."
#: whatsnew/3.9.rst:762
msgid ""
"A number of Python builtins (:class:`range`, :class:`tuple`, :class:`set`, :"
"class:`frozenset`, :class:`list`, :class:`dict`) are now sped up by using :"
"pep:`590` vectorcall protocol. (Contributed by Dong-hee Na, Mark Shannon, "
"Jeroen Demeyer and Petr Viktorin in :issue:`37207`.)"
msgstr ""
"Certaines fonctions et classes natives (:class:`range`, :class:`tuple`, :"
"class:`set`, :class:`frozenset`, :class:`list`, :class:`dict`) sont "
"maintenant plus rapides grâce à l'utilisation du protocole de vectorisation "
"de :pep:`590` (contribution de *Dong-hee Na*, *Mark Shannon*, *Jeroen "
"Demeyer* et *Petr Viktorin* dans :issue:`37207`)."
#: whatsnew/3.9.rst:767
msgid ""
"Optimized :func:`~set.difference_update` for the case when the other set is "
"much larger than the base set. (Suggested by Evgeny Kapun with code "
"contributed by Michele Orrù in :issue:`8425`.)"
msgstr ""
"Optimisation de :func:`~set.difference_update` pour le cas où l'autre *set* "
"est beaucoup plus grand que celui de base. (Suggestion par *Evgeny Kapun* et "
"codage contribué par *Michele Orrù* dans :issue:`8425`.)"
#: whatsnew/3.9.rst:771
msgid ""
"Python's small object allocator (``obmalloc.c``) now allows (no more than) "
"one empty arena to remain available for immediate reuse, without returning "
"it to the OS. This prevents thrashing in simple loops where an arena could "
"be created and destroyed anew on each iteration. (Contributed by Tim Peters "
"in :issue:`37257`.)"
msgstr ""
"L'allocateur de petits objets de Python (``obmalloc.c``) alloue maintenant "
"(au plus) un aréna vide qui reste disponible pour réutilisation immédiate, "
"sans le renvoyer au système d'exploitation. Ceci prévient l'emballement "
"(*thrashing*) dans les boucles simples où un aréna pourrait être créé puis "
"détruit à nouveau à chaque itération (contribution de *Tim Peters* dans :"
"issue:`37257`)."
#: whatsnew/3.9.rst:777
msgid ""
":term:`floor division` of float operation now has a better performance. Also "
"the message of :exc:`ZeroDivisionError` for this operation is updated. "
"(Contributed by Dong-hee Na in :issue:`39434`.)"
msgstr ""
"L'opération de :term:`division entière <floor division>` d'un *float* est "
"plus performante. De plus, le message de :exc:`ZeroDivisionError` pour cette "
"opération a été mis à jour (contribution de *Dong-hee Na* dans :issue:"
"`39434`)."
#: whatsnew/3.9.rst:781
msgid ""
"Decoding short ASCII strings with UTF-8 and ascii codecs is now about 15% "
"faster. (Contributed by Inada Naoki in :issue:`37348`.)"
msgstr ""
"Le décodage de courtes chaînes ASCII avec les codecs *UTF-8* et *ascii* est "
"maintenant 15 % plus rapide (contribution de *Inada Naoki* dans :issue:"
"`37348`)."
#: whatsnew/3.9.rst:784
msgid ""
"Here's a summary of performance improvements from Python 3.4 through Python "
"3.9:"
msgstr ""
"Voici un résumé des améliorations de performance de Python 3.4 à Python 3.9 :"
#: whatsnew/3.9.rst:831
msgid ""
"These results were generated from the variable access benchmark script at: "
"``Tools/scripts/var_access_benchmark.py``. The benchmark script displays "
"timings in nanoseconds. The benchmarks were measured on an `Intel® Core™ "
"i7-4960HQ processor <https://ark.intel.com/content/www/us/en/ark/"
"products/76088/intel-core-i7-4960hq-processor-6m-cache-up-to-3-80-ghz."
"html>`_ running the macOS 64-bit builds found at `python.org <https://www."
"python.org/downloads/mac-osx/>`_."
msgstr ""
"Ces résultats ont été obtenus avec le script de test de performance des "
"accès aux variables : ``Tools/scripts/var_access_benchmark.py``. Le script "
"de test de performances affiche le chronométrage en nanosecondes. Les tests "
"ont été effectués sur un processeur `Intel® Core™ i7-4960HQ <https://ark."
"intel.com/content/www/us/en/ark/products/76088/intel-core-i7-4960hq-"
"processor-6m-cache-up-to-3-80-ghz.html>`_ roulant la compilation *macOS* 64-"
"bit disponible sur `python.org <https://www.python.org/downloads/mac-osx/>`_."
#: whatsnew/3.9.rst:841
msgid "Deprecated"
msgstr "Obsolescence"
#: whatsnew/3.9.rst:843
msgid ""
"The distutils ``bdist_msi`` command is now deprecated, use ``bdist_wheel`` "
"(wheel packages) instead. (Contributed by Hugo van Kemenade in :issue:"
"`39586`.)"
msgstr ""
"La commande de *distutils* ``bdist_msi`` est maintenant obsolète, utilisez "
"plutôt ``bdist_wheel`` (paquet *wheel*) (contribution de *Hugo van Kemenade* "
"dans :issue:`39586`)."
#: whatsnew/3.9.rst:847
msgid ""
"Currently :func:`math.factorial` accepts :class:`float` instances with non-"
"negative integer values (like ``5.0``). It raises a :exc:`ValueError` for "
"non-integral and negative floats. It is now deprecated. In future Python "
"versions it will raise a :exc:`TypeError` for all floats. (Contributed by "
"Serhiy Storchaka in :issue:`37315`.)"
msgstr ""
"Présentement, :func:`math.factorial` accepte des instances de :class:`float` "
"qui sont des entiers non-négatifs (comme ``5.0``). Elle lève une :exc:"
"`ValueError` pour les *floats* non-entiers et négatifs. Ceci est maintenant "
"obsolète. Les versions futures de Python vont lever une :exc:`TypeError` "
"pour tous les *floats* (contribution de *Serhiy Storchaka* dans :issue:"
"`37315`)."
#: whatsnew/3.9.rst:853
msgid ""
"The :mod:`parser` and :mod:`symbol` modules are deprecated and will be "
"removed in future versions of Python. For the majority of use cases, users "
"can leverage the Abstract Syntax Tree (AST) generation and compilation "
"stage, using the :mod:`ast` module."
msgstr ""
"Les modules :mod:`parser` et :mod:`symbol` sont obsolètes et seront retirés "
"des versions futures de Python. Pour la majorité des cas d'utilisation, les "
"utilisateurs peuvent tirer profit des stades de génération et de compilation "
"d'un arbre de syntaxe abstraite, en utilisant le module :mod:`ast`."
#: whatsnew/3.9.rst:858
msgid ""
"The Public C API functions :c:func:`PyParser_SimpleParseStringFlags`, :c:"
"func:`PyParser_SimpleParseStringFlagsFilename`, :c:func:"
"`PyParser_SimpleParseFileFlags` and :c:func:`PyNode_Compile` are deprecated "
"and will be removed in Python 3.10 together with the old parser."
msgstr ""
"Les fonctions :c:func:`PyParser_SimpleParseStringFlags`, :c:func:"
"`PyParser_SimpleParseStringFlagsFilename`, :c:func:"
"`PyParser_SimpleParseFileFlags` et :c:func:`PyNode_Compile` de l'API C "
"Publique sont obsolètes et seront retirées de Python 3.10 en même temps que "
"l'ancien analyseur."
#: whatsnew/3.9.rst:863
msgid ""
"Using :data:`NotImplemented` in a boolean context has been deprecated, as it "
"is almost exclusively the result of incorrect rich comparator "
"implementations. It will be made a :exc:`TypeError` in a future version of "
"Python. (Contributed by Josh Rosenberg in :issue:`35712`.)"
msgstr ""
"L'utilisation de :data:`NotImplemented` dans un contexte booléen est devenu "
"obsolète, puisque c'est presque toujours le résultat d'une implémentation "
"incorrecte des opérateurs de comparaison avancés. Ceci va devenir une :exc:"
"`TypeError` dans les versions futures de Python (contribution de *Josh "
"Rosenberg* dans :issue:`35712`)."
#: whatsnew/3.9.rst:869
msgid ""
"The :mod:`random` module currently accepts any hashable type as a possible "
"seed value. Unfortunately, some of those types are not guaranteed to have a "
"deterministic hash value. After Python 3.9, the module will restrict its "
"seeds to :const:`None`, :class:`int`, :class:`float`, :class:`str`, :class:"
"`bytes`, and :class:`bytearray`."
msgstr ""
"Le module :mod:`random` accepte présentement n'importe quel hachable comme "
"valeur d'ensemencement. Malheureusement, certains de ces types ne "
"garantissent pas une valeur de hachage déterministe. Après Python 3.9, le "
"module va restreindre l'ensemencement à :const:`None`, :class:`int`, :class:"
"`float`, :class:`str`, :class:`bytes` et :class:`bytearray`."
#: whatsnew/3.9.rst:875
msgid ""
"Opening the :class:`~gzip.GzipFile` file for writing without specifying the "
"*mode* argument is deprecated. In future Python versions it will always be "
"opened for reading by default. Specify the *mode* argument for opening it "
"for writing and silencing a warning. (Contributed by Serhiy Storchaka in :"
"issue:`28286`.)"
msgstr ""
"Ouvrir un fichier :class:`~gzip.GzipFile` en écriture sans spécifier "
"l'argument *mode* est obsolète. Dans les futures versions de Python, il sera "
"toujours ouvert en lecture par défaut. Spécifiez l'argument *mode* pour "
"l'ouvrir en écriture et supprimer l'avertissement (contribution de *Serhiy "
"Storchaka* dans :issue:`28286`)."
#: whatsnew/3.9.rst:881
msgid ""
"Deprecated the ``split()`` method of :class:`_tkinter.TkappType` in favour "
"of the ``splitlist()`` method which has more consistent and predicable "
"behavior. (Contributed by Serhiy Storchaka in :issue:`38371`.)"
msgstr ""
"La méthode ``split()`` de :class:`_tkinter.TkappType` est obsolète. La "
"méthode ``splitlist()`` est plus favorable, car elle a un comportement plus "
"cohérent et prévisible (contribution de *Serhiy Storchaka* dans :issue:"
"`38371`)."
#: whatsnew/3.9.rst:886
msgid ""
"The explicit passing of coroutine objects to :func:`asyncio.wait` has been "
"deprecated and will be removed in version 3.11. (Contributed by Yury "
"Selivanov and Kyle Stanley in :issue:`34790`.)"
msgstr ""
"Le passage explicite d'objets coroutine à :func:`asyncio.wait` est devenu "
"obsolète et sera retiré dans la version 3.11. (Contribution de *Yury "
"Selivanov* et *Kyle Stanley* dans :issue:`34790`.)"
#: whatsnew/3.9.rst:890
msgid ""
"binhex4 and hexbin4 standards are now deprecated. The :mod:`binhex` module "
"and the following :mod:`binascii` functions are now deprecated:"
msgstr ""
"Les standards *binhex4* et *hexbin4* sont maintenant obsolètes. Le module :"
"mod:`binhex` et les fonctions suivantes du module :mod:`binascii` sont "
"maintenant obsolètes :"
#: whatsnew/3.9.rst:893
msgid ":func:`~binascii.b2a_hqx`, :func:`~binascii.a2b_hqx`"
msgstr ":func:`~binascii.b2a_hqx`, :func:`~binascii.a2b_hqx`"
#: whatsnew/3.9.rst:894
msgid ":func:`~binascii.rlecode_hqx`, :func:`~binascii.rledecode_hqx`"
msgstr ":func:`~binascii.rlecode_hqx`, :func:`~binascii.rledecode_hqx`"
#: whatsnew/3.9.rst:896
msgid "(Contributed by Victor Stinner in :issue:`39353`.)"
msgstr "(contribution de *Victor Stinner* dans :issue:`39353`)."
#: whatsnew/3.9.rst:898
msgid ""
":mod:`ast` classes ``slice``, ``Index`` and ``ExtSlice`` are considered "
"deprecated and will be removed in future Python versions. ``value`` itself "
"should be used instead of ``Index(value)``. ``Tuple(slices, Load())`` "
"should be used instead of ``ExtSlice(slices)``. (Contributed by Serhiy "
"Storchaka in :issue:`34822`.)"
msgstr ""
"Les classes ``slice``, ``Index`` et ``ExtSlice`` du module :mod:`ast` sont "
"considérées obsolètes et seront retirées des versions futures de Python. "
"``value`` doit être utilisé à la place de ``Index(value)``. ``Tuple(slices, "
"Load())`` doit être utilisé plutôt que ``ExtSlice(slices)`` (contribution de "
"*Serhiy Storchaka* dans :issue:`34822`)."
#: whatsnew/3.9.rst:904
msgid ""
":mod:`ast` classes ``Suite``, ``Param``, ``AugLoad`` and ``AugStore`` are "
"considered deprecated and will be removed in future Python versions. They "
"were not generated by the parser and not accepted by the code generator in "
"Python 3. (Contributed by Batuhan Taskaya in :issue:`39639` and :issue:"
"`39969` and Serhiy Storchaka in :issue:`39988`.)"
msgstr ""
"Les classes ``Suite``, ``Param``, ``AugLoad`` et ``AugStore`` du module :mod:"
"`ast` sont considérées obsolètes et seront retirées des versions futures de "
"Python. Elles n'étaient pas produites par l'analyseur et n'étaient pas "
"acceptées par le générateur de code dans Python 3 (contribution de *Batuhan "
"Taskaya* dans :issue:`39639` et :issue:`39969` et *Serhiy Storchaka* dans :"
"issue:`39988`)."
#: whatsnew/3.9.rst:911
msgid ""
"The :c:func:`PyEval_InitThreads` and :c:func:`PyEval_ThreadsInitialized` "
"functions are now deprecated and will be removed in Python 3.11. Calling :c:"
"func:`PyEval_InitThreads` now does nothing. The :term:`GIL` is initialized "
"by :c:func:`Py_Initialize()` since Python 3.7. (Contributed by Victor "
"Stinner in :issue:`39877`.)"
msgstr ""
"Les fonctions :c:func:`PyEval_InitThreads` et :c:func:"
"`PyEval_ThreadsInitialized` sont maintenant obsolètes et seront retirées de "
"Python 3.11. Maintenant, l'appel de :c:func:`PyEval_InitThreads` ne fait "
"rien du tout. Le :term:`GIL` est initialisé par :c:func:`Py_Initialize()` "
"depuis Python 3.7 (contribution de *Victor Stinner* dans :issue:`39877`)."
#: whatsnew/3.9.rst:917
msgid ""
"Passing ``None`` as the first argument to the :func:`shlex.split` function "
"has been deprecated. (Contributed by Zackery Spytz in :issue:`33262`.)"
msgstr ""
"Passer ``None`` comme premier argument à la fonction :func:`shlex.split` a "
"été rendu obsolète (contribution de *Zackery Spytz* dans :issue:`33262`)."
#: whatsnew/3.9.rst:920
msgid ""
":func:`smtpd.MailmanProxy` is now deprecated as it is unusable without an "
"external module, ``mailman``. (Contributed by Samuel Colvin in :issue:"
"`35800`.)"
msgstr ""
":func:`smtpd.MailmanProxy` est maintenant obsolète puisqu'elle n'est pas "
"utilisable sans le module externe ``mailman`` (contribution de *Samuel "
"Colvin* dans :issue:`35800`)."
#: whatsnew/3.9.rst:923
msgid ""
"The :mod:`lib2to3` module now emits a :exc:`PendingDeprecationWarning`. "
"Python 3.9 switched to a PEG parser (see :pep:`617`), and Python 3.10 may "
"include new language syntax that is not parsable by lib2to3's LL(1) parser. "
"The ``lib2to3`` module may be removed from the standard library in a future "
"Python version. Consider third-party alternatives such as `LibCST`_ or "
"`parso`_. (Contributed by Carl Meyer in :issue:`40360`.)"
msgstr ""
"Le module :mod:`lib2to3` émet maintenant un :exc:"
"`PendingDeprecationWarning`. Python 3.9 est passé à un analyseur *PEG* "
"(voir :pep:`617`), et Python 3.10 peut inclure des changements à la syntaxe "
"qui ne sont pas analysables par l'analyseur *LL(1)* de ``lib2to3``. Le "
"module ``lib2to3`` peut être retiré de la bibliothèque standard dans une "
"version future de Python. Considérez une alternative tierce telle que "
"`LibCST`_ ou `parso`_ (contribution de *Carl Meyer* dans :issue:`40360`)."
#: whatsnew/3.9.rst:931
msgid ""
"The *random* parameter of :func:`random.shuffle` has been deprecated. "
"(Contributed by Raymond Hettinger in :issue:`40465`)"
msgstr ""
"Le paramètre *random* de :func:`random.shuffle` est maintenant obsolète "
"(contribution de *Raymond Hettinger* dans :issue:`40465`)."
#: whatsnew/3.9.rst:1395
msgid "Removed"
msgstr "Retraits"
#: whatsnew/3.9.rst:942
msgid ""
"The erroneous version at :data:`unittest.mock.__version__` has been removed."
msgstr ""
"La version erronée dans :data:`unittest.mock.__version__` a été retirée."
#: whatsnew/3.9.rst:944
msgid ""
":class:`nntplib.NNTP`: ``xpath()`` and ``xgtitle()`` methods have been "
"removed. These methods are deprecated since Python 3.3. Generally, these "
"extensions are not supported or not enabled by NNTP server administrators. "
"For ``xgtitle()``, please use :meth:`nntplib.NNTP.descriptions` or :meth:"
"`nntplib.NNTP.description` instead. (Contributed by Dong-hee Na in :issue:"
"`39366`.)"
msgstr ""
"Les méthodes de :class:`nntplib.NNTP` : ``xpath()`` et ``xgtitle()`` ont été "
"retirées. Ces méthodes sont obsolètes depuis Python 3.3. En général, ces "
"extensions ne sont pas prises en charge ou ne sont pas activées par les "
"administrateurs de serveurs *NNTP*. Pour ``xgtitle()`` veuillez plutôt "
"utiliser :meth:`nntplib.NNTP.descriptions` ou :meth:`nntplib.NNTP."
"description` (contribution de *Dong-hee Na* dans :issue:`39366`)."
#: whatsnew/3.9.rst:951
msgid ""
":class:`array.array`: ``tostring()`` and ``fromstring()`` methods have been "
"removed. They were aliases to ``tobytes()`` and ``frombytes()``, deprecated "
"since Python 3.2. (Contributed by Victor Stinner in :issue:`38916`.)"
msgstr ""
"Les méthodes de :class:`array.array` : ``tostring()`` et ``fromstring()`` "
"ont été retirées. Elles étaient des alias de ``tobytes()`` et "
"``frombytes()``, obsolètes depuis Python 3.2 (contribution de *Victor "
"Stinner* dans :issue:`38916`)."
#: whatsnew/3.9.rst:956
msgid ""
"The undocumented ``sys.callstats()`` function has been removed. Since Python "
"3.7, it was deprecated and always returned :const:`None`. It required a "
"special build option ``CALL_PROFILE`` which was already removed in Python "
"3.7. (Contributed by Victor Stinner in :issue:`37414`.)"
msgstr ""
"La fonction non-documentée ``sys.callstats()`` a été retirée. Depuis Python "
"3.7, elle était obsolète et retournait toujours :const:`None`. Elle "
"dépendait de l'option de construction ``CALL_PROFILE`` qui avait déjà été "
"retirée dans Python 3.7 (contribution de *Victor Stinner* dans :issue:"
"`37414`)."
#: whatsnew/3.9.rst:961
msgid ""
"The ``sys.getcheckinterval()`` and ``sys.setcheckinterval()`` functions have "
"been removed. They were deprecated since Python 3.2. Use :func:`sys."
"getswitchinterval` and :func:`sys.setswitchinterval` instead. (Contributed "
"by Victor Stinner in :issue:`37392`.)"
msgstr ""
"Les fonctions ``sys.getcheckinterval()`` et ``sys.setcheckinterval()`` ont "
"été retirées. Elle étaient obsolètes depuis Python 3.2. Utilisez plutôt :"
"func:`sys.getswitchinterval` et :func:`sys.setswitchinterval` (contribution "
"de *Victor Stinner* dans :issue:`37392`)."
#: whatsnew/3.9.rst:966
msgid ""
"The C function ``PyImport_Cleanup()`` has been removed. It was documented "
"as: \"Empty the module table. For internal use only.\" (Contributed by "
"Victor Stinner in :issue:`36710`.)"
msgstr ""
"La fonction C ``PyImport_Cleanup()`` a été retirée. Elle était documentée "
"comme \"Vide la table des modules. Pour usage interne seulement."
"\" (contribution de *Victor Stinner* dans :issue:`36710`)."
#: whatsnew/3.9.rst:970
msgid ""
"``_dummy_thread`` and ``dummy_threading`` modules have been removed. These "
"modules were deprecated since Python 3.7 which requires threading support. "
"(Contributed by Victor Stinner in :issue:`37312`.)"
msgstr ""
"Les modules ``_dummy_thread`` et ``dummy_threading`` ont été retirés. Ces "
"modules étaient obsolètes depuis Python 3.7 qui a besoin de la gestion de "
"fils d'exécution multiples (contribution de *Victor Stinner* dans :issue:"
"`37312`)."
#: whatsnew/3.9.rst:974
msgid ""
"``aifc.openfp()`` alias to ``aifc.open()``, ``sunau.openfp()`` alias to "
"``sunau.open()``, and ``wave.openfp()`` alias to :func:`wave.open()` have "
"been removed. They were deprecated since Python 3.7. (Contributed by Victor "
"Stinner in :issue:`37320`.)"
msgstr ""
"L'alias ``aifc.openfp()`` de ``aifc.open()``, l'alias ``sunau.openfp()`` de "
"``sunau.open()`` et l'alias ``wave.openfp()`` de :func:`wave.open()` ont été "
"retirés. Ils étaient obsolètes depuis Python 3.7 (contribution de *Victor "
"Stinner* dans :issue:`37320`)."
#: whatsnew/3.9.rst:979
msgid ""
"The :meth:`~threading.Thread.isAlive()` method of :class:`threading.Thread` "
"has been removed. It was deprecated since Python 3.8. Use :meth:`~threading."
"Thread.is_alive()` instead. (Contributed by Dong-hee Na in :issue:`37804`.)"
msgstr ""
"La méthode :meth:`~threading.Thread.isAlive()` de la classe :class:"
"`threading.Thread` a été retirée. Elle était obsolète depuis Python 3.8. "
"Utilisez plutôt :meth:`~threading.Thread.is_alive()` (contribution de *Dong-"
"hee Na* dans :issue:`37804`)."
#: whatsnew/3.9.rst:984
msgid ""
"Methods ``getchildren()`` and ``getiterator()`` of classes :class:`~xml."
"etree.ElementTree.ElementTree` and :class:`~xml.etree.ElementTree.Element` "
"in the :mod:`~xml.etree.ElementTree` module have been removed. They were "
"deprecated in Python 3.2. Use ``iter(x)`` or ``list(x)`` instead of ``x."
"getchildren()`` and ``x.iter()`` or ``list(x.iter())`` instead of ``x."
"getiterator()``. (Contributed by Serhiy Storchaka in :issue:`36543`.)"
msgstr ""
"Les méthodes ``getchildren()`` et ``getiterator()`` des classes :class:`~xml."
"etree.ElementTree.ElementTree` et :class:`~xml.etree.ElementTree.Element` "
"dans le module :mod:`~xml.etree.ElementTree` ont été retirées. Elle avaient "
"été déclarées obsolètes dans Python 3.2. Utilisez `iter(x)`` ou ``list(x)`` "
"plutôt que ``x.getchildren()`` et ``x.iter()`` ou ``list(x.iter())`` plutôt "
"que ``x.getiterator()`` (contribution de *Serhiy Storchaka* dans :issue:"
"`36543`)."
#: whatsnew/3.9.rst:992
msgid ""
"The old :mod:`plistlib` API has been removed, it was deprecated since Python "
"3.4. Use the :func:`~plistlib.load`, :func:`~plistlib.loads`, :func:"
"`~plistlib.dump`, and :func:`~plistlib.dumps` functions. Additionally, the "
"*use_builtin_types* parameter was removed, standard :class:`bytes` objects "
"are always used instead. (Contributed by Jon Janzen in :issue:`36409`.)"
msgstr ""
"L'ancienne API :mod:`plistlib` a été retirée, elle était obsolète depuis "
"Python 3.4. Utilisez les fonctions :func:`~plistlib.load`, :func:`~plistlib."
"loads`, :func:`~plistlib.dump` et :func:`~plistlib.dumps`. De plus, le "
"paramètre *use_builtin_types* a été retiré, les objets :class:`bytes` natifs "
"sont toujours utilisés."
#: whatsnew/3.9.rst:998
msgid ""
"The C function ``PyGen_NeedsFinalizing`` has been removed. It was not "
"documented, tested, or used anywhere within CPython after the implementation "
"of :pep:`442`. Patch by Joannah Nanjekye. (Contributed by Joannah Nanjekye "
"in :issue:`15088`)"
msgstr ""
"La fonction C ``PyGen_NeedsFinalizing`` a été retirée. Elle n'était pas "
"documentée, testée ou utilisée où que ce soit dans CPython après "
"l'implémentation de :pep:`442` (contribution de *Joannah Nanjekye* dans :"
"issue:`15088`)."
#: whatsnew/3.9.rst:1003
msgid ""
"``base64.encodestring()`` and ``base64.decodestring()``, aliases deprecated "
"since Python 3.1, have been removed: use :func:`base64.encodebytes` and :"
"func:`base64.decodebytes` instead. (Contributed by Victor Stinner in :issue:"
"`39351`.)"
msgstr ""
"``base64.encodestring()`` et ``base64.decodestring()``, des alias obsolètes "
"depuis Python 3.1, ont été retirées : utilisez plutôt :func:`base64."
"encodebytes` et :func:`base64.decodebytes` (contribution de *Victor Stinner* "
"dans :issue:`39351`)."
#: whatsnew/3.9.rst:1008
msgid ""
"``fractions.gcd()`` function has been removed, it was deprecated since "
"Python 3.5 (:issue:`22486`): use :func:`math.gcd` instead. (Contributed by "
"Victor Stinner in :issue:`39350`.)"
msgstr ""
"La fonction ``fractions.gcd()`` a été retirée, elle était obsolète depuis "
"Python 3.5 (:issue:`22486`) : utilisez plutôt :func:`math.gcd` (contribution "
"de *Victor Stinner* dans :issue:`39350`)."
#: whatsnew/3.9.rst:1012
msgid ""
"The *buffering* parameter of :class:`bz2.BZ2File` has been removed. Since "
"Python 3.0, it was ignored and using it emitted a :exc:`DeprecationWarning`. "
"Pass an open file object to control how the file is opened. (Contributed by "
"Victor Stinner in :issue:`39357`.)"
msgstr ""
"Le paramètre *buffering* de la classe :class:`bz2.BZ2File` a été retiré. "
"Depuis Python 3.0, il était ignoré et son utilisation levait un :exc:"
"`DeprecationWarning`. Passez un objet fichier déjà ouvert pour déterminer "
"comment le fichier sera ouvert (contribution de *Victor Stinner* dans :issue:"
"`39357`)."
#: whatsnew/3.9.rst:1017
msgid ""
"The *encoding* parameter of :func:`json.loads` has been removed. As of "
"Python 3.1, it was deprecated and ignored; using it has emitted a :exc:"
"`DeprecationWarning` since Python 3.8. (Contributed by Inada Naoki in :issue:"
"`39377`)"
msgstr ""
"Le paramètre *encoding* de :func:`json.loads` a été retiré. À partir de "
"Python 3.1, il était obsolète et ignoré ; son utilisation levait un :exc:"
"`DeprecationWarning` depuis Python 3.8 (contribution de *Inada Naoki* dans :"
"issue:`39377`)."
#: whatsnew/3.9.rst:1022
msgid ""
"``with (await asyncio.lock):`` and ``with (yield from asyncio.lock):`` "
"statements are not longer supported, use ``async with lock`` instead. The "
"same is correct for ``asyncio.Condition`` and ``asyncio.Semaphore``. "
"(Contributed by Andrew Svetlov in :issue:`34793`.)"
msgstr ""
"Les instructions ``with (await asyncio.lock):`` et ``with (yield from "
"asyncio.lock):`` ne sont plus prises en charge, utilisez plutôt ``async with "
"lock``. De même pour ``asyncio.Condition`` et ``asyncio.Semaphore`` "
"(contribution de *Andrew Svetlov* dans :issue:`34793`)."
#: whatsnew/3.9.rst:1027
msgid ""
"The :func:`sys.getcounts` function, the ``-X showalloccount`` command line "
"option and the ``show_alloc_count`` field of the C structure :c:type:"
"`PyConfig` have been removed. They required a special Python build by "
"defining ``COUNT_ALLOCS`` macro. (Contributed by Victor Stinner in :issue:"
"`39489`.)"
msgstr ""
"La fonction :func:`sys.getcounts`, l'option de ligne de commande ``-X "
"showalloccount`` et le champ ``show_alloc_count`` de la structure C :c:type:"
"`PyConfig` ont été retirés. Ils dépendaient d'une compilation spéciale de "
"Python en définissant la macro ``COUNT_ALLOCS`` (contribution de *Victor "
"Stinner* dans :issue:`39489`)."
#: whatsnew/3.9.rst:1033
msgid ""
"The ``_field_types`` attribute of the :class:`typing.NamedTuple` class has "
"been removed. It was deprecated since Python 3.8. Use the "
"``__annotations__`` attribute instead. (Contributed by Serhiy Storchaka in :"
"issue:`40182`.)"
msgstr ""
"L'attribut ``_field_types`` de la classe :class:`typing.NamedTuple` a été "
"retiré. Il était obsolète depuis Python 3.8. Utilisez plutôt l'attribut "
"``__annotations__`` (contribution de *Serhiy Storchaka* dans :issue:`40182`)."
#: whatsnew/3.9.rst:1038
msgid ""
"The :meth:`symtable.SymbolTable.has_exec` method has been removed. It was "
"deprecated since 2006, and only returning ``False`` when it's called. "
"(Contributed by Batuhan Taskaya in :issue:`40208`)"
msgstr ""
"La méthode :meth:`symtable.SymbolTable.has_exec` a été retirée. Elle était "
"obsolète depuis 2006 et ne renvoyait que ``False`` lorsqu'elle était appelée "
"(contribution de *Batuhan Taskaya* dans :issue:`40208`)."
#: whatsnew/3.9.rst:1042
msgid ""
"The :meth:`asyncio.Task.current_task` and :meth:`asyncio.Task.all_tasks` "
"have been removed. They were deprecated since Python 3.7 and you can use :"
"func:`asyncio.current_task` and :func:`asyncio.all_tasks` instead. "
"(Contributed by Rémi Lapeyre in :issue:`40967`)"
msgstr ""
"Les méthodes :meth:`asyncio.Task.current_task` et :meth:`asyncio.Task."
"all_tasks` ont été retirées. Elles étaient obsolètes depuis Python 3.7. "
"Utilisez plutôt :func:`asyncio.current_task` et :func:`asyncio.all_tasks` "
"(contribution de *Rémi Lapeyre* dans :issue:`40967`)."
#: whatsnew/3.9.rst:1047
msgid ""
"The ``unescape()`` method in the :class:`html.parser.HTMLParser` class has "
"been removed (it was deprecated since Python 3.4). :func:`html.unescape` "
"should be used for converting character references to the corresponding "
"unicode characters."
msgstr ""
"La méthode ``unescape()`` de la classe :class:`html.parser.HTMLParser` a été "
"retirée (elle était obsolète depuis Python 3.4). :func:`html.unescape` doit "
"être utilisée pour convertir les références de caractère en leurs caractères "
"Unicode correspondants."
#: whatsnew/3.9.rst:1321
msgid "Porting to Python 3.9"
msgstr "Portage vers Python 3.9"
#: whatsnew/3.9.rst:1056
msgid ""
"This section lists previously described changes and other bugfixes that may "
"require changes to your code."
msgstr ""
"Cette section liste les changements mentionnés préalablement et d'autres "
"améliorations qui peuvent demander des changements à votre code."
#: whatsnew/3.9.rst:1061
msgid "Changes in the Python API"
msgstr "Changements dans l'API Python"
#: whatsnew/3.9.rst:1063
msgid ""
":func:`__import__` and :func:`importlib.util.resolve_name` now raise :exc:"
"`ImportError` where it previously raised :exc:`ValueError`. Callers catching "
"the specific exception type and supporting both Python 3.9 and earlier "
"versions will need to catch both using ``except (ImportError, ValueError):``."
msgstr ""
":func:`__import__` et :func:`importlib.util.resolve_name` lèvent maintenant :"
"exc:`ImportError` où elles levaient précédemment :exc:`ValueError`. Les "
"appelants qui attrapent les types spécifiques d'exceptions et qui prennent à "
"la fois en charge Python 3.9 et des versions précédentes doivent attraper "
"les deux types avec ``except (ImportError, ValueError):``."
#: whatsnew/3.9.rst:1068
msgid ""
"The :mod:`venv` activation scripts no longer special-case when "
"``__VENV_PROMPT__`` is set to ``\"\"``."
msgstr ""
"Il n'y a plus de traitement spécial dans les scriptes d'activation de :mod:"
"`venv` quand ``__VENV_PROMPT__`` est mis à ``\"\"``."
#: whatsnew/3.9.rst:1071
msgid ""
"The :meth:`select.epoll.unregister` method no longer ignores the :data:"
"`~errno.EBADF` error. (Contributed by Victor Stinner in :issue:`39239`.)"
msgstr ""
"La méthode :meth:`select.epoll.unregister` n'ignore plus l'erreur :data:"
"`~errno.EBADF` (contribution de *Victor Stinner* dans :issue:`39239`)."
#: whatsnew/3.9.rst:1075
msgid ""
"The *compresslevel* parameter of :class:`bz2.BZ2File` became keyword-only, "
"since the *buffering* parameter has been removed. (Contributed by Victor "
"Stinner in :issue:`39357`.)"
msgstr ""
"Le paramètre *compresslevel* de :class:`bz2.BZ2File` est devenu "
"exclusivement nommé (*keyword-only*) puisque le paramètre *buffering* a été "
"retiré (contribution de *Victor Stinner* in :issue:`39357`)."
#: whatsnew/3.9.rst:1079
msgid ""
"Simplified AST for subscription. Simple indices will be represented by their "
"value, extended slices will be represented as tuples. ``Index(value)`` will "
"return a ``value`` itself, ``ExtSlice(slices)`` will return ``Tuple(slices, "
"Load())``. (Contributed by Serhiy Storchaka in :issue:`34822`.)"
msgstr ""
"Simplification de l'*AST* pour les souscriptions. Les indexations simples "
"seront représentées par leur valeur, les tranches étendues seront "
"représentées par des n-uplets. ``Index(value)`` va renvoyer ``value`` elle-"
"même, ``ExtSlice(slices)`` va renvoyer ``Tuple(slices, Load())`` "
"(contribution de *Serhiy Storchaka* dans :issue:`34822`)."
#: whatsnew/3.9.rst:1085
msgid ""
"The :mod:`importlib` module now ignores the :envvar:`PYTHONCASEOK` "
"environment variable when the :option:`-E` or :option:`-I` command line "
"options are being used."
msgstr ""
"Le module :mod:`importlib` ignore maintenant la variable denvironnement :"
"envvar:`PYTHONCASEOK` quand les options de ligne de commande :option:`-E` "
"ou :option:`-I` sont utilisées."
#: whatsnew/3.9.rst:1089
msgid ""
"The *encoding* parameter has been added to the classes :class:`ftplib.FTP` "
"and :class:`ftplib.FTP_TLS` as a keyword-only parameter, and the default "
"encoding is changed from Latin-1 to UTF-8 to follow :rfc:`2640`."
msgstr ""
"Le paramètre *encoding* a été ajouté aux classes :class:`ftplib.FTP` et :"
"class:`ftplib.FTP_TLS` en paramètre exclusivement nommé et l'encodage par "
"défaut est passé de *Latin-1* à *UTF-8* en conformité à :rfc:`2640`."
#: whatsnew/3.9.rst:1093
msgid ""
":meth:`asyncio.loop.shutdown_default_executor` has been added to :class:"
"`~asyncio.AbstractEventLoop`, meaning alternative event loops that inherit "
"from it should have this method defined. (Contributed by Kyle Stanley in :"
"issue:`34037`.)"
msgstr ""
":meth:`asyncio.loop.shutdown_default_executor` a été ajouté à :class:"
"`~asyncio.AbstractEventLoop`, donc les boucles d'événements alternatives qui "
"héritent de celle-ci devraient définir cette méthode (contribution de *Kyle "
"Stanley* dans :issue:`34037`)."
#: whatsnew/3.9.rst:1098
msgid ""
"The constant values of future flags in the :mod:`__future__` module is "
"updated in order to prevent collision with compiler flags. Previously "
"``PyCF_ALLOW_TOP_LEVEL_AWAIT`` was clashing with ``CO_FUTURE_DIVISION``. "
"(Contributed by Batuhan Taskaya in :issue:`39562`)"
msgstr ""
"Les valeurs constantes des drapeaux futurs du module :mod:`__future__` sont "
"mises à jour pour éviter les collisions avec les drapeaux du compilateur. "
"Précédemment, ``PyCF_ALLOW_TOP_LEVEL_AWAIT`` était en collision avec "
"``CO_FUTURE_DIVISION`` (contribution de *Batuhan Taskaya* dans :issue:"
"`39562`)."
#: whatsnew/3.9.rst:1103
msgid ""
"``array('u')`` now uses ``wchar_t`` as C type instead of ``Py_UNICODE``. "
"This change doesn't affect to its behavior because ``Py_UNICODE`` is alias "
"of ``wchar_t`` since Python 3.3. (Contributed by Inada Naoki in :issue:"
"`34538`.)"
msgstr ""
"``array('u')`` utilise maintenant le type C ``wchar_t`` plutôt que "
"``Py_UNICODE``. Ceci ne change pas son comportement puisque ``Py_UNICODE`` "
"est un alias de ``wchar_t`` depuis Python 3.3 (contribution de *Inada Naoki* "
"dans :issue:`34538`)."
#: whatsnew/3.9.rst:1108
msgid ""
"The :func:`logging.getLogger` API now returns the root logger when passed "
"the name ``'root'``, whereas previously it returned a non-root logger named "
"``'root'``. This could affect cases where user code explicitly wants a non-"
"root logger named ``'root'``, or instantiates a logger using ``logging."
"getLogger(__name__)`` in some top-level module called ``'root.py'``. "
"(Contributed by Vinay Sajip in :issue:`37742`.)"
msgstr ""
"L'API :func:`logging.getLogger` renvoie maintenant le journaliseur racine "
"quand on lui passe le nom ``'root'``, alors que préalablement il renvoyait "
"un journaliseur non-racine appelé ``'root'``. Ceci peut affecter les cas où "
"le code de l'utilisateur veut explicitement un journaliseur non-racine "
"appelé ``'root'``, ou instancie un journaliseur avec ``logging."
"getLogger(__name__)`` dans un module de niveau principal appelé ``'root."
"py'`` (contribution de *Vinay Sajip* dans :issue:`37742`)."
#: whatsnew/3.9.rst:1115
msgid ""
"Division handling of :class:`~pathlib.PurePath` now returns "
"``NotImplemented`` instead of raising a :exc:`TypeError` when passed "
"something other than an instance of ``str`` or :class:`~pathlib.PurePath`. "
"This allows creating compatible classes that don't inherit from those "
"mentioned types. (Contributed by Roger Aiudi in :issue:`34775`)."
msgstr ""
"La gestion de la division de :class:`~pathlib.PurePath` renvoie maintenant "
"``NotImplemented`` plutôt que de lever une :exc:`TypeError` lorsqu'on passe "
"une valeur autre qu'une instance de ``str`` ou :class:`~pathlib.PurePath`. "
"Ceci permet la création de classes compatibles qui n'héritent pas de ces "
"types (contribution de *Roger Aiudi* dans :issue:`34775`.)"
#: whatsnew/3.9.rst:1121
msgid ""
"Starting with Python 3.9.5 the :mod:`ipaddress` module no longer accepts any "
"leading zeros in IPv4 address strings. Leading zeros are ambiguous and "
"interpreted as octal notation by some libraries. For example the legacy "
"function :func:`socket.inet_aton` treats leading zeros as octal notatation. "
"glibc implementation of modern :func:`~socket.inet_pton` does not accept any "
"leading zeros. (Contributed by Christian Heimes in :issue:`36384`)."
msgstr ""
#: whatsnew/3.9.rst:1129
msgid ""
":func:`codecs.lookup` now normalizes the encoding name the same way as :func:"
"`encodings.normalize_encoding`, except that :func:`codecs.lookup` also "
"converts the name to lower case. For example, ``\"latex+latin1\"`` encoding "
"name is now normalized to ``\"latex_latin1\"``. (Contributed by Jordon Xu "
"in :issue:`37751`.)"
msgstr ""
#: whatsnew/3.9.rst:1137
msgid "Changes in the C API"
msgstr "Changements dans l'API C"
#: whatsnew/3.9.rst:1139
msgid ""
"Instances of :ref:`heap-allocated types <heap-types>` (such as those created "
"with :c:func:`PyType_FromSpec` and similar APIs) hold a reference to their "
"type object since Python 3.8. As indicated in the \"Changes in the C API\" "
"of Python 3.8, for the vast majority of cases, there should be no side "
"effect but for types that have a custom :c:member:`~PyTypeObject."
"tp_traverse` function, ensure that all custom ``tp_traverse`` functions of "
"heap-allocated types visit the object's type."
msgstr ""
"Les instances de :ref:`types alloués sur le tas <heap-types>` (tels que ceux "
"créés avec :c:func:`PyType_FromSpec` et les APIs similaires) gardent une "
"référence à leur objet type depuis Python 3.8. Tel qu'indiqué dans "
"\"Changements à l'API C\" de Python 3.8, pour la grande majorité des cas, il "
"ne devrait pas y avoir d'effets secondaires sauf pour les types qui ont une "
"fonction :c:member:`~PyTypeObject.tp_traverse` personnalisée. Assurez-vous "
"que toutes les fonctions ``tp_traverse`` personnalisées des types alloués "
"sur le tas visitent le type de l'objet."
#: whatsnew/3.9.rst:1160
msgid ""
"If your traverse function delegates to ``tp_traverse`` of its base class (or "
"another type), ensure that ``Py_TYPE(self)`` is visited only once. Note that "
"only :ref:`heap type <heap-types>` are expected to visit the type in "
"``tp_traverse``."
msgstr ""
"Si votre fonction de traversée délègue à la ``tp_traverse`` de sa classe de "
"base (ou d'un autre type), assurez-vous que ``Py_TYPE(self)`` ne soit visité "
"qu'une seule fois. Prenez note que seuls les :ref:`types du tas <heap-"
"types>` doivent visiter leur type dans ``tp_traverse``."
#: whatsnew/3.9.rst:1165
msgid "For example, if your ``tp_traverse`` function includes:"
msgstr "Par exemple, si votre fonction ``tp_traverse`` inclut :"
#: whatsnew/3.9.rst:1171
msgid "then add:"
msgstr "alors ajoutez :"
#: whatsnew/3.9.rst:1184
msgid "(See :issue:`35810` and :issue:`40217` for more information.)"
msgstr "(Voir :issue:`35810` et :issue:`40217` pour plus d'information.)"
#: whatsnew/3.9.rst:1186
msgid ""
"The functions ``PyEval_CallObject``, ``PyEval_CallFunction``, "
"``PyEval_CallMethod`` and ``PyEval_CallObjectWithKeywords`` are deprecated. "
"Use :c:func:`PyObject_Call` and its variants instead. (See more details in :"
"issue:`29548`.)"
msgstr ""
"Les fonctions ``PyEval_CallObject``, ``PyEval_CallFunction``, "
"``PyEval_CallMethod`` et ``PyEval_CallObjectWithKeywords`` sont obsolètes. "
"Utilisez plutôt :c:func:`PyObject_Call` et ses variantes. (Pour plus de "
"détails, voir :issue:`29548`.)"
#: whatsnew/3.9.rst:1192
msgid "CPython bytecode changes"
msgstr "Changements au code intermédiaire CPython"
#: whatsnew/3.9.rst:1194
msgid ""
"The :opcode:`LOAD_ASSERTION_ERROR` opcode was added for handling the :"
"keyword:`assert` statement. Previously, the assert statement would not work "
"correctly if the :exc:`AssertionError` exception was being shadowed. "
"(Contributed by Zackery Spytz in :issue:`34880`.)"
msgstr ""
"Le code d'opération :opcode:`LOAD_ASSERTION_ERROR` a été ajouté pour gérer "
"l'instruction :keyword:`assert`. Précédemment, l'instruction ``assert`` ne "
"fonctionnait pas correctement si l'exception :exc:`AssertionError` était "
"masquée (contribution de *Zackery Spytz* dans :issue:`34880`)."
#: whatsnew/3.9.rst:1199
msgid ""
"The :opcode:`COMPARE_OP` opcode was split into four distinct instructions:"
msgstr ""
"Le code d'opération :opcode:`COMPARE_OP` a été séparé en quatre instructions "
"distinctes :"
#: whatsnew/3.9.rst:1201
msgid "``COMPARE_OP`` for rich comparisons"
msgstr "``COMPARE_OP`` pour les comparaisons avancées ;"
#: whatsnew/3.9.rst:1202
msgid "``IS_OP`` for 'is' and 'is not' tests"
msgstr "``IS_OP`` pour les tests *is* et *is not* ;"
#: whatsnew/3.9.rst:1203
msgid "``CONTAINS_OP`` for 'in' and 'not in' tests"
msgstr "``CONTAINS_OP`` pour les tests *in* et *not in* ;"
#: whatsnew/3.9.rst:1204
msgid ""
"``JUMP_IF_NOT_EXC_MATCH`` for checking exceptions in 'try-except' statements."
msgstr ""
"``JUMP_IF_NOT_EXC_MATCH`` pour vérifier les exceptions dans les instructions "
"``try-except``."
#: whatsnew/3.9.rst:1207
msgid "(Contributed by Mark Shannon in :issue:`39156`.)"
msgstr "(contribution de *Mark Shannon* dans :issue:`39156`)."
#: whatsnew/3.9.rst:1211
msgid "Build Changes"
msgstr "Changements à la compilation"
#: whatsnew/3.9.rst:1213
msgid ""
"Added ``--with-platlibdir`` option to the ``configure`` script: name of the "
"platform-specific library directory, stored in the new :attr:`sys."
"platlibdir` attribute. See :attr:`sys.platlibdir` attribute for more "
"information. (Contributed by Jan Matějek, Matěj Cepl, Charalampos Stratakis "
"and Victor Stinner in :issue:`1294959`.)"
msgstr ""
"Ajout de l'option ``--with-platlibdir`` au script ``configure`` : nom de "
"répertoire des bibliothèques spécifique à la plateforme, stocké dans le "
"nouvel attribut :attr:`sys.platlibdir`. Voir l'attribut :attr:`sys."
"platlibdir` pour plus d'informations (contribution de *Jan Matějek*, *Matěj "
"Cepl*, *Charalampos Stratakis* et *Victor Stinner* dans :issue:`1294959`)."
#: whatsnew/3.9.rst:1219
msgid ""
"The ``COUNT_ALLOCS`` special build macro has been removed. (Contributed by "
"Victor Stinner in :issue:`39489`.)"
msgstr ""
"La macro spéciale de compilation ``COUNT_ALLOCS`` a été retirée "
"(contribution de *Victor Stinner* dans :issue:`39489`)."
#: whatsnew/3.9.rst:1222
msgid ""
"On non-Windows platforms, the :c:func:`setenv` and :c:func:`unsetenv` "
"functions are now required to build Python. (Contributed by Victor Stinner "
"in :issue:`39395`.)"
msgstr ""
"Sur les plateformes non-Windows, les fonctions :c:func:`setenv` et :c:func:"
"`unsetenv` sont maintenant nécessaires à la compilation de Python "
"(contribution de *Victor Stinner* dans :issue:`39395`)."
#: whatsnew/3.9.rst:1226
msgid ""
"On non-Windows platforms, creating ``bdist_wininst`` installers is now "
"officially unsupported. (See :issue:`10945` for more details.)"
msgstr ""
"Sur les plateformes non-Windows, la création d'installateurs "
"``bdist_wininst`` n'est maintenant officiellement plus pris en charge. "
"(Voir :issue:`10945` pour plus de détails.)"
#: whatsnew/3.9.rst:1229
msgid ""
"When building Python on macOS from source, ``_tkinter`` now links with non-"
"system Tcl and Tk frameworks if they are installed in ``/Library/"
"Frameworks``, as had been the case on older releases of macOS. If a macOS "
"SDK is explicitly configured, by using :option:`--enable-universalsdk` or ``-"
"isysroot``, only the SDK itself is searched. The default behavior can still "
"be overridden with :option:`--with-tcltk-includes` and :option:`--with-tcltk-"
"libs`. (Contributed by Ned Deily in :issue:`34956`.)"
msgstr ""
#: whatsnew/3.9.rst:1238
msgid ""
"Python can now be built for Windows 10 ARM64. (Contributed by Steve Dower "
"in :issue:`33125`.)"
msgstr ""
"Python peut maintenant être compilé pour *Windows 10 ARM64* (contribution de "
"*Steve Dower* dans :issue:`33125`)."
#: whatsnew/3.9.rst:1241
msgid ""
"Some individual tests are now skipped when ``--pgo`` is used. The tests in "
"question increased the PGO task time significantly and likely didn't help "
"improve optimization of the final executable. This speeds up the task by a "
"factor of about 15x. Running the full unit test suite is slow. This change "
"may result in a slightly less optimized build since not as many code "
"branches will be executed. If you are willing to wait for the much slower "
"build, the old behavior can be restored using ``./configure [..] "
"PROFILE_TASK=\"-m test --pgo-extended\"``. We make no guarantees as to "
"which PGO task set produces a faster build. Users who care should run their "
"own relevant benchmarks as results can depend on the environment, workload, "
"and compiler tool chain. (See :issue:`36044` and :issue:`37707` for more "
"details.)"
msgstr ""
#: whatsnew/3.9.rst:1256
msgid "C API Changes"
msgstr "Changements à l'API C"
#: whatsnew/3.9.rst:1261
msgid ""
":pep:`573`: Added :c:func:`PyType_FromModuleAndSpec` to associate a module "
"with a class; :c:func:`PyType_GetModule` and :c:func:`PyType_GetModuleState` "
"to retrieve the module and its state; and :c:data:`PyCMethod` and :c:data:"
"`METH_METHOD` to allow a method to access the class it was defined in. "
"(Contributed by Marcel Plch and Petr Viktorin in :issue:`38787`.)"
msgstr ""
":pep:`573` : Ajout de :c:func:`PyType_FromModuleAndSpec` pour associer un "
"module à une classe ; :c:func:`PyType_GetModule` et :c:func:"
"`PyType_GetModuleState` pour récupérer le module et son état ; et :c:data:"
"`PyCMethod` et :c:data:`METH_METHOD` pour permettre à une méthode de "
"récupérer la classe dans laquelle elle a été définie (contribution de "
"*Marcel Plch* et *Petr Viktorin* dans :issue:`38787`)."
#: whatsnew/3.9.rst:1268
msgid ""
"Added :c:func:`PyFrame_GetCode` function: get a frame code. Added :c:func:"
"`PyFrame_GetBack` function: get the frame next outer frame. (Contributed by "
"Victor Stinner in :issue:`40421`.)"
msgstr ""
"Ajout de la fonction :c:func:`PyFrame_GetCode` : récupérer le code d'un "
"cadre. Ajout de la fonction :c:func:`PyFrame_GetBack` : récupérer le "
"prochain cadre englobant (contribution de *Victor Stinner* dans :issue:"
"`40421`)."
#: whatsnew/3.9.rst:1272
msgid ""
"Added :c:func:`PyFrame_GetLineNumber` to the limited C API. (Contributed by "
"Victor Stinner in :issue:`40421`.)"
msgstr ""
"Ajout de :c:func:`PyFrame_GetLineNumber` à l'API C limité (contribution de "
"*Victor Stinner* dans :issue:`40421`)."
#: whatsnew/3.9.rst:1275
msgid ""
"Added :c:func:`PyThreadState_GetInterpreter` and :c:func:"
"`PyInterpreterState_Get` functions to get the interpreter. Added :c:func:"
"`PyThreadState_GetFrame` function to get the current frame of a Python "
"thread state. Added :c:func:`PyThreadState_GetID` function: get the unique "
"identifier of a Python thread state. (Contributed by Victor Stinner in :"
"issue:`39947`.)"
msgstr ""
"Ajout des fonctions :c:func:`PyThreadState_GetInterpreter` et :c:func:"
"`PyInterpreterState_Get` pour récupérer l'interpréteur. Ajout de la "
"fonction :c:func:`PyThreadState_GetFrame` pour récupérer le cadre de l'état "
"d'un fil d'exécution Python. Ajout de la fonction :c:func:"
"`PyThreadState_GetID` : récupérer l'identifiant unique de l'état d'un fil "
"d'exécution Python (contribution de *Victor Stinner* dans :issue:`39947`)."
#: whatsnew/3.9.rst:1283
msgid ""
"Added a new public :c:func:`PyObject_CallNoArgs` function to the C API, "
"which calls a callable Python object without any arguments. It is the most "
"efficient way to call a callable Python object without any argument. "
"(Contributed by Victor Stinner in :issue:`37194`.)"
msgstr ""
"Ajout de la nouvelle fonction publique :c:func:`PyObject_CallNoArgs` à l'API "
"C, qui appelle un objet Python appelable sans aucun argument. C'est la façon "
"la plus efficace d'appeler un objet Python appelable sans aucun argument "
"(contribution de *Victor Stinner* dans :issue:`37194`)."
#: whatsnew/3.9.rst:1406
msgid "Changes in the limited C API (if ``Py_LIMITED_API`` macro is defined):"
msgstr ""
"Changements dans l'API C limité (si la macro ``Py_LIMITED_API`` est "
"définie) :"
#: whatsnew/3.9.rst:1290
msgid ""
"Provide :c:func:`Py_EnterRecursiveCall` and :c:func:`Py_LeaveRecursiveCall` "
"as regular functions for the limited API. Previously, there were defined as "
"macros, but these macros didn't compile with the limited C API which cannot "
"access ``PyThreadState.recursion_depth`` field (the structure is opaque in "
"the limited C API)."
msgstr ""
"Fournit :c:func:`Py_EnterRecursiveCall` et :c:func:`Py_LeaveRecursiveCall` "
"comme fonctions régulières pour l'API limité. Précédemment, elles étaient "
"définies en tant que macros, mais ces macros n'étaient pas compilées avec "
"l'API C limité qui ne peut pas accéder au champ ``PyThreadState."
"recursion_depth`` (la structure est opaque à l'API C limité) ;"
#: whatsnew/3.9.rst:1296
msgid ""
"``PyObject_INIT()`` and ``PyObject_INIT_VAR()`` become regular \"opaque\" "
"function to hide implementation details."
msgstr ""
"``PyObject_INIT()`` et ``PyObject_INIT_VAR()`` deviennent des fonctions "
"\"opaques\" régulières pour cacher les détails d'implémentation"
#: whatsnew/3.9.rst:1433
msgid "(Contributed by Victor Stinner in :issue:`38644` and :issue:`39542`.)"
msgstr ""
"(contribution de *Victor Stinner* dans :issue:`38644` et :issue:`39542`)."
#: whatsnew/3.9.rst:1301
msgid ""
"The :c:func:`PyModule_AddType` function is added to help adding a type to a "
"module. (Contributed by Dong-hee Na in :issue:`40024`.)"
msgstr ""
"La fonction :c:func:`PyModule_AddType` est ajoutée pour faciliter l'ajout "
"d'un type à un module (contribution de *Dong-hee Na* dans :issue:`40024`)."
#: whatsnew/3.9.rst:1305
msgid ""
"Added the functions :c:func:`PyObject_GC_IsTracked` and :c:func:"
"`PyObject_GC_IsFinalized` to the public API to allow to query if Python "
"objects are being currently tracked or have been already finalized by the "
"garbage collector respectively. (Contributed by Pablo Galindo Salgado in :"
"issue:`40241`.)"
msgstr ""
"Ajout des fonctions :c:func:`PyObject_GC_IsTracked` et :c:func:"
"`PyObject_GC_IsFinalized` à l'API publique qui déterminent respectivement si "
"les objets Python sont présentement suivis ou ont été finalisés par le "
"ramasse-miettes (contribution de *Pablo Galindo Salgado* dans :issue:"
"`40241`)."
#: whatsnew/3.9.rst:1311
msgid ""
"Added :c:func:`_PyObject_FunctionStr` to get a user-friendly string "
"representation of a function-like object. (Patch by Jeroen Demeyer in :issue:"
"`37645`.)"
msgstr ""
"Ajout de :c:func:`_PyObject_FunctionStr` pour récupérer une chaîne "
"conviviale représentant un objet fonction-compatible. (Rustine par *Jeroen "
"Demeyer* dans :issue:`37645`.)"
#: whatsnew/3.9.rst:1315
msgid ""
"Added :c:func:`PyObject_CallOneArg` for calling an object with one "
"positional argument (Patch by Jeroen Demeyer in :issue:`37483`.)"
msgstr ""
"Ajout de :c:func:`PyObject_CallOneArg` pour appeler un objet avec un "
"argument positionnel. (Rustine par *Jeroen Demeyer* dans :issue:`37483`.)"
#: whatsnew/3.9.rst:1323
msgid ""
"``PyInterpreterState.eval_frame`` (:pep:`523`) now requires a new mandatory "
"*tstate* parameter (``PyThreadState*``). (Contributed by Victor Stinner in :"
"issue:`38500`.)"
msgstr ""
"``PyInterpreterState.eval_frame`` (:pep:`523`) nécessite maintenant un "
"nouveau paramètre obligatoire *tstate* (``PyThreadState*``) (contribution de "
"*Victor Stinner* dans :issue:`38500`)."
#: whatsnew/3.9.rst:1327
msgid ""
"Extension modules: :c:member:`~PyModuleDef.m_traverse`, :c:member:"
"`~PyModuleDef.m_clear` and :c:member:`~PyModuleDef.m_free` functions of :c:"
"type:`PyModuleDef` are no longer called if the module state was requested "
"but is not allocated yet. This is the case immediately after the module is "
"created and before the module is executed (:c:data:`Py_mod_exec` function). "
"More precisely, these functions are not called if :c:member:`~PyModuleDef."
"m_size` is greater than 0 and the module state (as returned by :c:func:"
"`PyModule_GetState`) is ``NULL``."
msgstr ""
"Modules d'extension : les fonctions :c:member:`~PyModuleDef.m_traverse`, :c:"
"member:`~PyModuleDef.m_clear` et :c:member:`~PyModuleDef.m_free` de :c:type:"
"`PyModuleDef` ne sont plus appelées si l'état du module est demandé mais "
"qu'il n'a pas encore été alloué. C'est le cas immédiatement après que le "
"module a été créé et avant que le module soit exécuté (fonction :c:data:"
"`Py_mod_exec`). Plus précisément, ces fonctions ne sont pas appelées si :c:"
"member:`~PyModuleDef.m_size` est plus grand que 0 et que l'état du module "
"(tel que renvoyé par :c:func:`PyModule_GetState`) est ``NULL``."
#: whatsnew/3.9.rst:1336
msgid ""
"Extension modules without module state (``m_size <= 0``) are not affected."
msgstr ""
"Les modules d'extensions sans état de module (``m_size <= 0``) ne sont pas "
"affectés."
#: whatsnew/3.9.rst:1338
msgid ""
"If :c:func:`Py_AddPendingCall` is called in a subinterpreter, the function "
"is now scheduled to be called from the subinterpreter, rather than being "
"called from the main interpreter. Each subinterpreter now has its own list "
"of scheduled calls. (Contributed by Victor Stinner in :issue:`39984`.)"
msgstr ""
"Si :c:func:`Py_AddPendingCall` est appelée dans un sous-interpréteur, la "
"fonction est planifiée pour appel dans le sous-interpréteur, plutôt que dans "
"l'interpréteur principal. Chaque sous interpréteur a maintenant sa propre "
"liste d'appels planifiés (contribution de *Victor Stinner* dans :issue:"
"`39984`)."
#: whatsnew/3.9.rst:1344
msgid ""
"The Windows registry is no longer used to initialize :data:`sys.path` when "
"the ``-E`` option is used (if :c:member:`PyConfig.use_environment` is set to "
"``0``). This is significant when embedding Python on Windows. (Contributed "
"by Zackery Spytz in :issue:`8901`.)"
msgstr ""
"Le registre de Windows n'est plus utilisé pour initialiser :data:`sys.path` "
"quand l'option ``-E`` est utilisée (si :c:member:`PyConfig.use_environment` "
"est affecté à ``0``). Ceci est pertinent quand Python est embarqué sur "
"Windows (contribution de *Zackery Spytz* dans :issue:`8901`)."
#: whatsnew/3.9.rst:1349
msgid ""
"The global variable :c:data:`PyStructSequence_UnnamedField` is now a "
"constant and refers to a constant string. (Contributed by Serhiy Storchaka "
"in :issue:`38650`.)"
msgstr ""
"La variable globale :c:data:`PyStructSequence_UnnamedField` est maintenant "
"une constante et fait référence à une chaîne constante (contribution de "
"*Serhiy Storchaka* dans :issue:`38650`)."
#: whatsnew/3.9.rst:1353
msgid ""
"The :c:type:`PyGC_Head` structure is now opaque. It is only defined in the "
"internal C API (``pycore_gc.h``). (Contributed by Victor Stinner in :issue:"
"`40241`.)"
msgstr ""
"La structure :c:type:`PyGC_Head` est maintenant opaque. Elle est définie "
"uniquement dans l'API C interne (``pycore_gc.h``) (contribution de *Victor "
"Stinner* dans :issue:`40241`)."
#: whatsnew/3.9.rst:1357
msgid ""
"The ``Py_UNICODE_COPY``, ``Py_UNICODE_FILL``, ``PyUnicode_WSTR_LENGTH``, :c:"
"func:`PyUnicode_FromUnicode`, :c:func:`PyUnicode_AsUnicode`, "
"``_PyUnicode_AsUnicode``, and :c:func:`PyUnicode_AsUnicodeAndSize` are "
"marked as deprecated in C. They have been deprecated by :pep:`393` since "
"Python 3.3. (Contributed by Inada Naoki in :issue:`36346`.)"
msgstr ""
"``Py_UNICODE_COPY``, ``Py_UNICODE_FILL``, ``PyUnicode_WSTR_LENGTH``, :c:func:"
"`PyUnicode_FromUnicode`, :c:func:`PyUnicode_AsUnicode`, "
"``_PyUnicode_AsUnicode``, et :c:func:`PyUnicode_AsUnicodeAndSize` sont "
"étiquetées comme obsolètes en C. Elles avaient été déclarées obsolètes par :"
"pep:`393` depuis Python 3.3 (contribution de *Inada Naoki* dans :issue:"
"`36346`)."
#: whatsnew/3.9.rst:1364
msgid ""
"The :c:func:`Py_FatalError` function is replaced with a macro which logs "
"automatically the name of the current function, unless the "
"``Py_LIMITED_API`` macro is defined. (Contributed by Victor Stinner in :"
"issue:`39882`.)"
msgstr ""
"La fonction :c:func:`Py_FatalError` est remplacée par une macro qui ajoute "
"automatiquement une entrée au journal avec le nom de la fonction courante, "
"sauf si la macro ``Py_LIMITED_API`` est définie (contribution de *Victor "
"Stinner* dans :issue:`39882`)."
#: whatsnew/3.9.rst:1369
msgid ""
"The vectorcall protocol now requires that the caller passes only strings as "
"keyword names. (See :issue:`37540` for more information.)"
msgstr ""
"Le protocole *vectorcall* requiert maintenant que l'appelant ne passe que "
"des chaînes pour les noms des arguments nommés. (Voir :issue:`37540` pour "
"plus d'informations.)"
#: whatsnew/3.9.rst:1372
msgid ""
"Implementation details of a number of macros and functions are now hidden:"
msgstr ""
"Les détails d'implémentation de certaines macros et fonctions sont "
"maintenant cachés :"
#: whatsnew/3.9.rst:1374
msgid ":c:func:`PyObject_IS_GC` macro was converted to a function."
msgstr "la macro :c:func:`PyObject_IS_GC` a été convertie en fonction ;"
#: whatsnew/3.9.rst:1376
msgid ""
"The :c:func:`PyObject_NEW` macro becomes an alias to the :c:func:"
"`PyObject_New` macro, and the :c:func:`PyObject_NEW_VAR` macro becomes an "
"alias to the :c:func:`PyObject_NewVar` macro. They no longer access directly "
"the :c:member:`PyTypeObject.tp_basicsize` member."
msgstr ""
"La macro :c:func:`PyObject_NEW` devient un alias pour la macro :c:func:"
"`PyObject_New`, et la macro :c:func:`PyObject_NEW_VAR` devient un alias pour "
"la macro :c:func:`PyObject_NewVar`. Elles n'ont plus accès directement au "
"membre :c:member:`PyTypeObject.tp_basicsize` ;"
#: whatsnew/3.9.rst:1381
msgid ""
":c:func:`PyObject_GET_WEAKREFS_LISTPTR` macro was converted to a function: "
"the macro accessed directly the :c:member:`PyTypeObject.tp_weaklistoffset` "
"member."
msgstr ""
"La macro :c:func:`PyObject_GET_WEAKREFS_LISTPTR` a été convertie en "
"fonction : la macro accédait directement au membre :c:member:`PyTypeObject."
"tp_weaklistoffset` ;"
#: whatsnew/3.9.rst:1385
msgid ""
":c:func:`PyObject_CheckBuffer` macro was converted to a function: the macro "
"accessed directly the :c:member:`PyTypeObject.tp_as_buffer` member."
msgstr ""
"La macro :c:func:`PyObject_CheckBuffer` a été convertie en fonction : la "
"macro accédait directement au membre :c:member:`PyTypeObject.tp_as_buffer` ;"
#: whatsnew/3.9.rst:1388
msgid ""
":c:func:`PyIndex_Check` is now always declared as an opaque function to hide "
"implementation details: removed the ``PyIndex_Check()`` macro. The macro "
"accessed directly the :c:member:`PyTypeObject.tp_as_number` member."
msgstr ""
":c:func:`PyIndex_Check` est maintenant toujours déclarée comme une fonction "
"opaque pour cacher ses détails d'implémentation : retrait de la macro "
"``PyIndex_Check()``. La macro accédait directement au membre :c:member:"
"`PyTypeObject.tp_as_number`."
#: whatsnew/3.9.rst:1392
msgid "(See :issue:`40170` for more details.)"
msgstr "(Voir :issue:`40170` pour plus de détails.)"
#: whatsnew/3.9.rst:1397
msgid ""
"Excluded ``PyFPE_START_PROTECT()`` and ``PyFPE_END_PROTECT()`` macros of "
"``pyfpe.h`` from the limited C API. (Contributed by Victor Stinner in :issue:"
"`38835`.)"
msgstr ""
"Exclusion des macros ``PyFPE_START_PROTECT()`` et ``PyFPE_END_PROTECT()`` de "
"l'API C limité (contribution de *Victor Stinner* dans :issue:`38835`)."
#: whatsnew/3.9.rst:1401
msgid ""
"The ``tp_print`` slot of :ref:`PyTypeObject <type-structs>` has been "
"removed. It was used for printing objects to files in Python 2.7 and before. "
"Since Python 3.0, it has been ignored and unused. (Contributed by Jeroen "
"Demeyer in :issue:`36974`.)"
msgstr ""
"Le champ ``tp_print`` de :ref:`PyTypeObject <type-structs>` a été retiré. Il "
"était utilisé pour écrire des objets dans des fichiers dans Python 2.7 et "
"dans les versions précédentes. Depuis Python 3.0, il était ignoré et "
"inutilisé (contribution de *Jeroen Demeyer* dans :issue:`36974`)."
#: whatsnew/3.9.rst:1408
msgid "Excluded the following functions from the limited C API:"
msgstr "Exclusion des fonctions suivantes de l'API C limité :"
#: whatsnew/3.9.rst:1410
msgid ""
"``PyThreadState_DeleteCurrent()`` (Contributed by Joannah Nanjekye in :issue:"
"`37878`.)"
msgstr ""
"``PyThreadState_DeleteCurrent()`` (contribution de *Joannah Nanjekye* dans :"
"issue:`37878`) ;"
#: whatsnew/3.9.rst:1412
msgid "``_Py_CheckRecursionLimit``"
msgstr "``_Py_CheckRecursionLimit`` ;"
#: whatsnew/3.9.rst:1413
msgid "``_Py_NewReference()``"
msgstr "``_Py_NewReference()`` ;"
#: whatsnew/3.9.rst:1414
msgid "``_Py_ForgetReference()``"
msgstr "``_Py_ForgetReference()`` ;"
#: whatsnew/3.9.rst:1415
msgid "``_PyTraceMalloc_NewReference()``"
msgstr "``_PyTraceMalloc_NewReference()`` ;"
#: whatsnew/3.9.rst:1416
msgid "``_Py_GetRefTotal()``"
msgstr "``_Py_GetRefTotal()`` ;"
#: whatsnew/3.9.rst:1417
msgid "The trashcan mechanism which never worked in the limited C API."
msgstr ""
"Le mécanisme *trashcan* qui n'a jamais fonctionné dans l'API C limité ;"
#: whatsnew/3.9.rst:1418
msgid "``PyTrash_UNWIND_LEVEL``"
msgstr "``PyTrash_UNWIND_LEVEL`` ;"
#: whatsnew/3.9.rst:1419
msgid "``Py_TRASHCAN_BEGIN_CONDITION``"
msgstr "``Py_TRASHCAN_BEGIN_CONDITION`` ;"
#: whatsnew/3.9.rst:1420
msgid "``Py_TRASHCAN_BEGIN``"
msgstr "``Py_TRASHCAN_BEGIN`` ;"
#: whatsnew/3.9.rst:1421
msgid "``Py_TRASHCAN_END``"
msgstr "``Py_TRASHCAN_END`` ;"
#: whatsnew/3.9.rst:1422
msgid "``Py_TRASHCAN_SAFE_BEGIN``"
msgstr "``Py_TRASHCAN_SAFE_BEGIN`` ;"
#: whatsnew/3.9.rst:1423
msgid "``Py_TRASHCAN_SAFE_END``"
msgstr "``Py_TRASHCAN_SAFE_END``."
#: whatsnew/3.9.rst:1425
msgid "Moved following functions and definitions to the internal C API:"
msgstr ""
"Migration des fonctions et définitions suivantes vers l'API C interne :"
#: whatsnew/3.9.rst:1427
msgid "``_PyDebug_PrintTotalRefs()``"
msgstr "``_PyDebug_PrintTotalRefs()`` ;"
#: whatsnew/3.9.rst:1428
msgid "``_Py_PrintReferences()``"
msgstr "``_Py_PrintReferences()`` ;"
#: whatsnew/3.9.rst:1429
msgid "``_Py_PrintReferenceAddresses()``"
msgstr "``_Py_PrintReferenceAddresses()`` ;"
#: whatsnew/3.9.rst:1430
msgid "``_Py_tracemalloc_config``"
msgstr "``_Py_tracemalloc_config`` ;"
#: whatsnew/3.9.rst:1431
msgid "``_Py_AddToAllObjects()`` (specific to ``Py_TRACE_REFS`` build)"
msgstr ""
"``_Py_AddToAllObjects()`` (spécifique aux compilations ``Py_TRACE_REFS``)."
#: whatsnew/3.9.rst:1435
msgid ""
"Removed ``_PyRuntime.getframe`` hook and removed ``_PyThreadState_GetFrame`` "
"macro which was an alias to ``_PyRuntime.getframe``. They were only exposed "
"by the internal C API. Removed also ``PyThreadFrameGetter`` type. "
"(Contributed by Victor Stinner in :issue:`39946`.)"
msgstr ""
"Retrait de la fonction de rappel ``_PyRuntime.getframe`` et de la macro "
"``_PyThreadState_GetFrame`` qui était un alias pour ``_PyRuntime.getframe``. "
"Elles étaient exposées uniquement dans l'API C interne. Retrait aussi du "
"type ``PyThreadFrameGetter`` (contribution de *Victor Stinner* dans :issue:"
"`39946`)."
#: whatsnew/3.9.rst:1440
msgid ""
"Removed the following functions from the C API. Call :c:func:`PyGC_Collect` "
"explicitly to clear all free lists. (Contributed by Inada Naoki and Victor "
"Stinner in :issue:`37340`, :issue:`38896` and :issue:`40428`.)"
msgstr ""
"Retrait des fonctions suivantes de l'API C. Appelez :c:func:`PyGC_Collect` "
"explicitement pour vider toutes les *free lists* (contribution de *Inada "
"Naoki* et *Victor Stinner* dans :issue:`37340`, :issue:`38896` et :issue:"
"`40428`) :"
#: whatsnew/3.9.rst:1445
msgid "``PyAsyncGen_ClearFreeLists()``"
msgstr "``PyAsyncGen_ClearFreeLists()`` ;"
#: whatsnew/3.9.rst:1446
msgid "``PyContext_ClearFreeList()``"
msgstr "``PyContext_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1447
msgid "``PyDict_ClearFreeList()``"
msgstr "``PyDict_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1448
msgid "``PyFloat_ClearFreeList()``"
msgstr "``PyFloat_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1449
msgid "``PyFrame_ClearFreeList()``"
msgstr "``PyFrame_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1450
msgid "``PyList_ClearFreeList()``"
msgstr "``PyList_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1451
msgid ""
"``PyMethod_ClearFreeList()`` and ``PyCFunction_ClearFreeList()``: the free "
"lists of bound method objects have been removed."
msgstr ""
"``PyMethod_ClearFreeList()`` et ``PyCFunction_ClearFreeList()`` : les *free "
"lists* des objets méthode liées ont été retirées ;"
#: whatsnew/3.9.rst:1453
msgid ""
"``PySet_ClearFreeList()``: the set free list has been removed in Python 3.4."
msgstr ""
"``PySet_ClearFreeList()`` : la *free list* des objets *sets* a été retirée "
"dans Python 3.4 ;"
#: whatsnew/3.9.rst:1455
msgid "``PyTuple_ClearFreeList()``"
msgstr "``PyTuple_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1456
msgid ""
"``PyUnicode_ClearFreeList()``: the Unicode free list has been removed in "
"Python 3.3."
msgstr ""
"``PyUnicode_ClearFreeList()`` : la *free list* des objets Unicode a été "
"retirée dans Python 3.3."
#: whatsnew/3.9.rst:1459
msgid ""
"Removed ``_PyUnicode_ClearStaticStrings()`` function. (Contributed by Victor "
"Stinner in :issue:`39465`.)"
msgstr ""
"Retrait de la fonction ``_PyUnicode_ClearStaticStrings()`` (contribution de "
"*Victor Stinner* dans :issue:`39465`)."
# Féminin puisque Py_UNICODE_MATCH est une macro.
#: whatsnew/3.9.rst:1462
msgid ""
"Removed ``Py_UNICODE_MATCH``. It has been deprecated by :pep:`393`, and "
"broken since Python 3.3. The :c:func:`PyUnicode_Tailmatch` function can be "
"used instead. (Contributed by Inada Naoki in :issue:`36346`.)"
msgstr ""
"Retrait de ``Py_UNICODE_MATCH``. Elle était devenue obsolète par :pep:`393`, "
"non-fonctionnelle depuis Python 3.3. La fonction :c:func:"
"`PyUnicode_Tailmatch` peut être utilisée à sa place (contribution de *Inada "
"Naoki* dans :issue:`36346`)."
#: whatsnew/3.9.rst:1467
msgid ""
"Cleaned header files of interfaces defined but with no implementation. The "
"public API symbols being removed are: "
"``_PyBytes_InsertThousandsGroupingLocale``, "
"``_PyBytes_InsertThousandsGrouping``, ``_Py_InitializeFromArgs``, "
"``_Py_InitializeFromWideArgs``, ``_PyFloat_Repr``, ``_PyFloat_Digits``, "
"``_PyFloat_DigitsInit``, ``PyFrame_ExtendStack``, ``_PyAIterWrapper_Type``, "
"``PyNullImporter_Type``, ``PyCmpWrapper_Type``, ``PySortWrapper_Type``, "
"``PyNoArgsFunction``. (Contributed by Pablo Galindo Salgado in :issue:"
"`39372`.)"
msgstr ""
"Nettoyage dans les fichiers d'en-têtes d'interfaces déclarées pour "
"lesquelles il n'y avait pas d'implémentation. Les symboles retirés de l'API "
"publique sont : ``_PyBytes_InsertThousandsGroupingLocale``, "
"``_PyBytes_InsertThousandsGrouping``, ``_Py_InitializeFromArgs``, "
"``_Py_InitializeFromWideArgs``, ``_PyFloat_Repr``, ``_PyFloat_Digits``, "
"``_PyFloat_DigitsInit``, ``PyFrame_ExtendStack``, ``_PyAIterWrapper_Type``, "
"``PyNullImporter_Type``, ``PyCmpWrapper_Type``, ``PySortWrapper_Type``, "
"``PyNoArgsFunction`` (contribution de *Pablo Galindo Salgado* dans :issue:"
"`39372`)."
#: whatsnew/3.9.rst:1478
msgid "Notable changes in Python 3.9.1"
msgstr "Changements importants dans Python 3.9.1"
#: whatsnew/3.9.rst:1483
msgid ""
"The behavior of :class:`typing.Literal` was changed to conform with :pep:"
"`586` and to match the behavior of static type checkers specified in the PEP."
msgstr ""
"Le comportement de :class:`typing.Literal` a été changé pour être conforme "
"avec :pep:`586` et pour avoir le comportement des vérificateurs de types "
"statique spécifiés dans le PEP :"
#: whatsnew/3.9.rst:1486
msgid "``Literal`` now de-duplicates parameters."
msgstr "``Literal`` de-duplique maintenant les paramètres ;"
#: whatsnew/3.9.rst:1487
msgid ""
"Equality comparisons between ``Literal`` objects are now order independent."
msgstr ""
"Les comparaisons d'égalité entre les objets ``Literal`` sont maintenant "
"indépendantes de l'ordre ;"
#: whatsnew/3.9.rst:1488
msgid ""
"``Literal`` comparisons now respect types. For example, ``Literal[0] == "
"Literal[False]`` previously evaluated to ``True``. It is now ``False``. To "
"support this change, the internally used type cache now supports "
"differentiating types."
msgstr ""
"Les comparaisons des ``Literal`` respectent maintenant les types. Par "
"exemple, ``Literal[0] == Literal[False]`` évaluait précédemment à ``True``. "
"C'est maintenant ``False``. Pour gérer ce changement, le cache interne des "
"types utilisés peut maintenant différentier les types ;"
#: whatsnew/3.9.rst:1492
msgid ""
"``Literal`` objects will now raise a :exc:`TypeError` exception during "
"equality comparisons if any of their parameters are not :term:`hashable`. "
"Note that declaring ``Literal`` with mutable parameters will not throw an "
"error::"
msgstr ""
"Les objets ``Literal`` lèvent maintenant une exception :exc:`TypeError` lors "
"des comparaisons d'égalités si n'importe quel de leurs paramètres n'est pas :"
"term:`immuable <immutable>`. Prenez-note que déclarer un ``Literal`` avec un "
"paramètre muable ne lève pas une erreur ::"
#: whatsnew/3.9.rst:1504
msgid "(Contributed by Yurii Karabas in :issue:`42345`.)"
msgstr "(Contribution de *Yurii Karabas* dans :issue:`42345`.)"
#: whatsnew/3.9.rst:1507
msgid "macOS 11.0 (Big Sur) and Apple Silicon Mac support"
msgstr ""
"Prise en charge de *macOS* 11.0 (Big Sur) et de Mac sur processeur Apple"
#: whatsnew/3.9.rst:1509
msgid ""
"As of 3.9.1, Python now fully supports building and running on macOS 11.0 "
"(Big Sur) and on Apple Silicon Macs (based on the ``ARM64`` architecture). A "
"new universal build variant, ``universal2``, is now available to natively "
"support both ``ARM64`` and ``Intel 64`` in one set of executables. Binaries "
"can also now be built on current versions of macOS to be deployed on a range "
"of older macOS versions (tested to 10.9) while making some newer OS "
"functions and options conditionally available based on the operating system "
"version in use at runtime (\"weaklinking\")."
msgstr ""
#: whatsnew/3.9.rst:1518
msgid "(Contributed by Ronald Oussoren and Lawrence D'Anna in :issue:`41100`.)"
msgstr ""
"(contribution de *Ronald Oussoren* et *Lawrence D'Anna* dans :issue:`41100`)."
#: whatsnew/3.9.rst:1521
msgid "Notable changes in Python 3.9.2"
msgstr "Changements importants dans Python 3.9.2"
#: whatsnew/3.9.rst:1524
msgid "collections.abc"
msgstr "*collections.abc*"
#: whatsnew/3.9.rst:1526
msgid ""
":class:`collections.abc.Callable` generic now flattens type parameters, "
"similar to what :data:`typing.Callable` currently does. This means that "
"``collections.abc.Callable[[int, str], str]`` will have ``__args__`` of "
"``(int, str, str)``; previously this was ``([int, str], str)``. To allow "
"this change, :class:`types.GenericAlias` can now be subclassed, and a "
"subclass will be returned when subscripting the :class:`collections.abc."
"Callable` type. Code which accesses the arguments via :func:`typing."
"get_args` or ``__args__`` need to account for this change. A :exc:"
"`DeprecationWarning` may be emitted for invalid forms of parameterizing :"
"class:`collections.abc.Callable` which may have passed silently in Python "
"3.9.1. This :exc:`DeprecationWarning` will become a :exc:`TypeError` in "
"Python 3.10. (Contributed by Ken Jin in :issue:`42195`.)"
msgstr ""
#: whatsnew/3.9.rst:1540
msgid "urllib.parse"
msgstr "*urllib.parse*"
#: whatsnew/3.9.rst:1542
msgid ""
"Earlier Python versions allowed using both ``;`` and ``&`` as query "
"parameter separators in :func:`urllib.parse.parse_qs` and :func:`urllib."
"parse.parse_qsl`. Due to security concerns, and to conform with newer W3C "
"recommendations, this has been changed to allow only a single separator key, "
"with ``&`` as the default. This change also affects :func:`cgi.parse` and :"
"func:`cgi.parse_multipart` as they use the affected functions internally. "
"For more details, please see their respective documentation. (Contributed by "
"Adam Goldschmidt, Senthil Kumaran and Ken Jin in :issue:`42967`.)"
msgstr ""
"Les versions précédentes de Python acceptaient à la fois ``;`` et ``&`` "
"comme séparateurs des paramètres de requête dans :func:`urllib.parse."
"parse_qs` et :func:`urllib.parse.parse_qsl`. Pour des raisons de sécurité, "
"et pour être conforme aux nouvelles recommandations du W3C, ceci a été "
"changé pour ne permettre qu'une seule clé de séparation, avec ``&`` par "
"défaut. Ce changement affecte aussi :func:`cgi.parse` et :func:`cgi."
"parse_multipart` puisqu'elles utilisent les fonctions affectées à l'interne. "
"Pour plus de détails, voir leur documentation respective (contribution de "
"*Adam Goldschmidt*, *Senthil Kumaran* et *Ken Jin* dans :issue:`42967`)."
#~ msgid ""
#~ ":c:func:`PyType_HasFeature` now always calls :c:func:`PyType_GetFlags`. "
#~ "Previously, it accessed directly the :c:member:`PyTypeObject.tp_flags` "
#~ "member when the limited C API was not used."
#~ msgstr ""
#~ "Maintenant, :c:func:`PyType_HasFeature` appelle toujours :c:func:"
#~ "`PyType_GetFlags`. Précédemment, elle accédait directement au membre :c:"
#~ "member:`PyTypeObject.tp_flags` quand l'API limité C n'était pas utilisé ;"
#~ msgid ""
#~ "This article explains the new features in Python 3.9, compared to 3.8."
#~ msgstr ""
#~ "Cet article explique les nouvelles fonctionnalités de Python 3.9 par "
#~ "rapport à la version 3.8."
#~ msgid ""
#~ "Prerelease users should be aware that this document is currently in draft "
#~ "form. It will be updated substantially as Python 3.9 moves towards "
#~ "release, so it's worth checking back even after reading earlier versions."
#~ msgstr ""
#~ "Les utilisateurs de la prépublication doivent savoir que ce document est "
#~ "actuellement à l'état de brouillon. Il sera mis à jour de manière "
#~ "substantielle au fur et à mesure que Python 3.9 se rapprochera de sa "
#~ "version finale, il est donc utile de le consulter même après avoir lu les "
#~ "versions précédentes."
#~ msgid ""
#~ "When Python 2.7 was still supported, many functions were kept for "
#~ "backward compatibility with Python 2.7. With the end of Python 2.7 "
#~ "support, these backward compatibility layers have been removed, or will "
#~ "be removed soon. Most of them emitted a :exc:`DeprecationWarning` warning "
#~ "for several years. For example, using ``collections.Mapping`` instead of "
#~ "``collections.abc.Mapping`` emits a :exc:`DeprecationWarning` since "
#~ "Python 3.3, released in 2012."
#~ msgstr ""
#~ "Lorsque Python 2.7 était encore supporté, de nombreuses fonctions ont été "
#~ "conservées pour assurer la rétrocompatibilité avec Python 2.7. Avec la "
#~ "fin du support de Python 2.7, ces couches de rétrocompatibilité ont été "
#~ "supprimées, ou le seront bientôt. La plupart d'entre elles ont émis un "
#~ "avertissement :exc:`DeprecationWarning` pendant plusieurs années. Par "
#~ "exemple, l'utilisation de ``collections.Mapping`` au lieu de "
#~ "``collections.abc.Mapping`` émet un :exc:`DeprecationWarning` depuis "
#~ "Python 3.3, sorti en 2012."
#~ msgid ""
#~ "It has been decided to keep a few backward compatibility layers for one "
#~ "last release, to give more time to Python projects maintainers to "
#~ "organize the removal of the Python 2 support and add support for Python "
#~ "3.9."
#~ msgstr ""
#~ "Il a été décidé de conserver quelques couches de compatibilité ascendante "
#~ "pour une dernière version, afin de donner plus de temps aux responsables "
#~ "des projets Python pour organiser la suppression du support de Python 2 "
#~ "et ajouter le support de Python 3.9."
#~ msgid ""
#~ "Merge (``|``) and update (``|=``) operators have been added to the built-"
#~ "in :class:`dict` class. See :pep:`584` for a full description. "
#~ "(Contributed by Brandt Bucher in :issue:`36144`.)"
#~ msgstr ""
#~ "Les opérateurs de fusion (``|``) et de mise à jour (``|=``) ont été "
#~ "ajoutés à la classe native :class:`dict`. Voir :pep:`584` pour une "
#~ "description complète (contribution de Brandt Bucher dans :issue:`36144`)."
#~ msgid "PEP 616: New removeprefix() and removesuffix() string methods"
#~ msgstr ""
#~ "PEP 616 : nouvelles méthodes de chaînes de caractères `removeprefix()` et "
#~ "`removesuffix()`"
#~ msgid "PEP 585: Builtin Generic Types"
#~ msgstr "PEP 585 : Types génériques natifs"
#~ msgid "PEP 617: New Parser"
#~ msgstr "PEP 617 : Nouvel analyseur syntaxique"