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

3268 lines
140 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: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2022-11-20 22:02+0100\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\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.2\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 "Editor"
msgstr "Éditeur"
#: whatsnew/3.9.rst:5
msgid "Łukasz Langa"
msgstr "Łukasz Langa"
#: whatsnew/3.9.rst:45
#, fuzzy
msgid ""
"This article explains the new features in Python 3.9, compared to 3.8. "
"Python 3.9 was released on October 5, 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:48
msgid "For full details, see the :ref:`changelog <changelog>`."
msgstr "Pour plus de détails, voir le :ref:`changelog <changelog>`."
#: whatsnew/3.9.rst:52
msgid ":pep:`596` - Python 3.9 Release Schedule"
msgstr ":pep:`596` Calendrier de sortie de Python 3.9"
#: whatsnew/3.9.rst:56
msgid "Summary -- Release highlights"
msgstr "Résumé Points marquants de cette version"
#: whatsnew/3.9.rst:61
msgid "New syntax features:"
msgstr "Nouvelles fonctionnalités de syntaxe :"
#: whatsnew/3.9.rst:63
msgid ":pep:`584`, union operators added to ``dict``;"
msgstr ":pep:`584`, ajout de l'opérateur d'union à ``dict`` ;"
#: whatsnew/3.9.rst:64
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:65
msgid ":pep:`614`, relaxed grammar restrictions on decorators."
msgstr ""
":pep:`614`, restrictions grammaticales assouplies pour les décorateurs."
#: whatsnew/3.9.rst:67
msgid "New built-in features:"
msgstr "Nouvelles fonctionnalités natives :"
#: whatsnew/3.9.rst:69
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:71
msgid "New features in the standard library:"
msgstr "Nouvelles fonctionnalités dans la bibliothèque standard :"
#: whatsnew/3.9.rst:73
msgid ":pep:`593`, flexible function and variable annotations;"
msgstr ""
":pep:`593`, annotations flexibles pour les fonctions et les variables ;"
#: whatsnew/3.9.rst:74
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:77
msgid "Interpreter improvements:"
msgstr "Améliorations de l'interpréteur :"
#: whatsnew/3.9.rst:79
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:81
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:82
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:84
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:85
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:90
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:95
msgid "New library modules:"
msgstr "Nouveaux modules de la bibliothèque :"
#: whatsnew/3.9.rst:97
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:99
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:102
msgid "Release process changes:"
msgstr "Changements aux procédures de publication :"
#: whatsnew/3.9.rst:104
msgid ":pep:`602`, CPython adopts an annual release cycle."
msgstr ":pep:`602`, CPython adopte un cycle annuel de publications."
#: whatsnew/3.9.rst:108
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:110
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:118
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:123
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:127
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:132
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:136
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:1274
msgid "New Features"
msgstr "Nouvelles fonctionnalités"
#: whatsnew/3.9.rst:144
msgid "Dictionary Merge & Update Operators"
msgstr "Opérateurs de fusion et de mise à jour de dictionnaires"
#: whatsnew/3.9.rst:146
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:283
msgid "Example::"
msgstr "Exemple ::"
#: whatsnew/3.9.rst:159
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:163
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:165
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:173
msgid "Type Hinting Generics in Standard Collections"
msgstr "Indication des types paramétrables dans les collections natives"
#: whatsnew/3.9.rst:175
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:1162
msgid "Example:"
msgstr "Exemple :"
#: whatsnew/3.9.rst:189
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:193
msgid "New Parser"
msgstr "Nouvel analyseur syntaxique"
#: whatsnew/3.9.rst:195
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:203
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:206
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:212
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:217
msgid "Other Language Changes"
msgstr "Autres changements au langage"
#: whatsnew/3.9.rst:219
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:224
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:232
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:237
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:242
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:247
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:251
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:257
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 ""
"L'exécution parallèle de :meth:`~agen.aclose` / :meth:`~agen.asend` / :meth:"
"`~agen.athrow` est maintenant interdite, et ``ag_running`` reflète "
"maintenant le statut réel du générateur asynchrone. (Contribué par Yury "
"Selivanov dans :issue:`30773`.)"
#: whatsnew/3.9.rst:262
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 ""
"Les erreurs inattendues lors d'un appel de la méthode ``__iter__`` ne sont "
"plus masquées par ``TypeError`` dans l'opérateur :keyword:`in` et les "
"fonctions :func:`~operator.contains`, :func:`~operator.indexOf` et :func:"
"`~operator.countOf` du module :mod:`operator`. (Contribué par Serhiy "
"Storchaka dans :issue:`40824`.)"
#: whatsnew/3.9.rst:268
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 ""
"Les expressions lambda sans parenthèses ne peuvent plus être la partie "
"expression dans une clause ``if`` dans les compréhensions de liste et les "
"expressions de générateur. Voir :issue:`41848` et :issue:`43755` pour plus "
"de détails."
#: whatsnew/3.9.rst:274
msgid "New Modules"
msgstr "Nouveaux modules"
#: whatsnew/3.9.rst:277
msgid "zoneinfo"
msgstr "*zoneinfo*"
#: whatsnew/3.9.rst:279
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:303
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:312
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:313
msgid "PEP written and implemented by Paul Ganssle"
msgstr "PEP écrit et implémenté par *Paul Ganssle*"
#: whatsnew/3.9.rst:317
msgid "graphlib"
msgstr "*graphlib*"
#: whatsnew/3.9.rst:319
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:326
msgid "Improved Modules"
msgstr "Modules améliorés"
#: whatsnew/3.9.rst:329
msgid "ast"
msgstr "*ast*"
#: whatsnew/3.9.rst:331
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:335
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:340
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:344
msgid "asyncio"
msgstr "*asyncio*"
#: whatsnew/3.9.rst:346
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 ""
"En raison de problèmes de sécurité importants, le paramètre *reuse_address* "
"de :meth:`asyncio.loop.create_datagram_endpoint` n'est plus supporté. C'est "
"à cause du comportement de l'option socket ``SO_REUSEADDR`` en UDP. Pour "
"plus de détails, voir la documentation de ``loop."
"create_datagram_endpoint()``. (Contribué par Kyle Stanley, Antoine Pitrou, "
"et Yury Selivanov dans :issue:`37228`.)"
#: whatsnew/3.9.rst:353
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 ""
"Ajout d'une nouvelle :term:`coroutine` :meth:`~asyncio.loop."
"shutdown_default_executor` qui programme une extinction de l'exécuteur par "
"défaut qui attend que :class:`~concurrent.futures.ThreadPoolExecutor` se "
"termine. Aussi, :func:`asyncio.run` à été mis à jour pour utiliser la "
"nouvelle :term:`coroutine`. (Contribué par Kyle Stanley dans :issue:`34037`.)"
#: whatsnew/3.9.rst:359
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:362
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:368
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:373
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 ""
":mod:`asyncio` lève maintenant une :exc:`TyperError` lors d'un appel à des "
"méthodes incompatibles avec un socket :class:`ssl.SSLSocket`. (Contribué par "
"Ido Michael dans :issue:`37404`.)"
#: whatsnew/3.9.rst:378
msgid "compileall"
msgstr "*compileall*"
#: whatsnew/3.9.rst:380
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:383
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:388
msgid "concurrent.futures"
msgstr "*concurrent.futures*"
#: whatsnew/3.9.rst:390
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:396
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:401
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:407
msgid "curses"
msgstr "*curses*"
#: whatsnew/3.9.rst:409
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:414
msgid "datetime"
msgstr "*datetime*"
#: whatsnew/3.9.rst:415
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:421
msgid "distutils"
msgstr "*distutils*"
#: whatsnew/3.9.rst:423
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:428
msgid "fcntl"
msgstr "*fcntl*"
#: whatsnew/3.9.rst:430
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:435
msgid "ftplib"
msgstr "*ftplib*"
#: whatsnew/3.9.rst:437
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:442
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:444
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:449
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:454
msgid "hashlib"
msgstr "*hashlib*"
#: whatsnew/3.9.rst:456
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:460
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:468
msgid "http"
msgstr "*http*"
#: whatsnew/3.9.rst:470
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:474
msgid "IDLE and idlelib"
msgstr "*IDLE* et *idlelib*"
#: whatsnew/3.9.rst:476
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:479
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:482
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:485
msgid "New in 3.9 maintenance releases"
msgstr ""
#: whatsnew/3.9.rst:487
msgid ""
"Make IDLE invoke :func:`sys.excepthook` (when started without '-n'). User "
"hooks were previously ignored. (Contributed by Ken Hilton in :issue:"
"`43008`.)"
msgstr ""
#: whatsnew/3.9.rst:491
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:493
msgid ""
"Rearrange the settings dialog. Split the General tab into Windows and Shell/"
"Ed tabs. Move help sources, which extend the Help menu, to the Extensions "
"tab. Make space for new options and shorten the dialog. The latter makes "
"the dialog better fit small screens. (Contributed by Terry Jan Reedy in :"
"issue:`40468`.) Move the indent space setting from the Font tab to the new "
"Windows tab. (Contributed by Mark Roseman and Terry Jan Reedy in :issue:"
"`33962`.)"
msgstr ""
#: whatsnew/3.9.rst:501
msgid ""
"Apply syntax highlighting to ``.pyi`` files. (Contributed by Alex Waygood "
"and Terry Jan Reedy in :issue:`45447`.)"
msgstr ""
#: whatsnew/3.9.rst:505
msgid "imaplib"
msgstr "*imaplib*"
#: whatsnew/3.9.rst:507
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:514
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:522
msgid "importlib"
msgstr "*importlib*"
#: whatsnew/3.9.rst:524
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:529
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:533
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:538
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:541
msgid "inspect"
msgstr "*inspect*"
#: whatsnew/3.9.rst:543
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:547
msgid "ipaddress"
msgstr "*ipaddress*"
#: whatsnew/3.9.rst:549
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:551
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:555
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 ""
"À partir de Python 3.9.5, le module :mod:`ipaddress` n'accepte plus aucun "
"zéro en tête des chaînes de caractères IPv4. (Contribué par Christian Heimes "
"dans :issue:`36384`)."
#: whatsnew/3.9.rst:560
msgid "math"
msgstr "*math*"
#: whatsnew/3.9.rst:562
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:566
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:570
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:574
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:579
msgid "multiprocessing"
msgstr "*multiprocessing*"
#: whatsnew/3.9.rst:581
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:587
msgid "nntplib"
msgstr "*nntplib*"
#: whatsnew/3.9.rst:589
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:594
msgid "os"
msgstr "*os*"
#: whatsnew/3.9.rst:596
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:599
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:603
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:606
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:610
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:615
msgid "pathlib"
msgstr "*pathlib*"
#: whatsnew/3.9.rst:617
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:622
msgid "pdb"
msgstr "*pdb*"
#: whatsnew/3.9.rst:624
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:628
msgid "poplib"
msgstr "*poplib*"
#: whatsnew/3.9.rst:630
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:635
msgid "pprint"
msgstr "*pprint*"
#: whatsnew/3.9.rst:637
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:641
msgid "pydoc"
msgstr "*pydoc*"
#: whatsnew/3.9.rst:643
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:648
msgid "random"
msgstr "*random*"
#: whatsnew/3.9.rst:650
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:654
msgid "signal"
msgstr "*signal*"
#: whatsnew/3.9.rst:656
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:660
msgid "smtplib"
msgstr "*smtplib*"
#: whatsnew/3.9.rst:662
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:666
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:670
msgid "socket"
msgstr "*socket*"
#: whatsnew/3.9.rst:672
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:676
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:679
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:685
msgid "time"
msgstr "*time*"
#: whatsnew/3.9.rst:687
#, fuzzy
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 "
"milliseconds. (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:693
msgid "sys"
msgstr "*sys*"
#: whatsnew/3.9.rst:695
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:701
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:706
msgid "tracemalloc"
msgstr "*tracemalloc*"
#: whatsnew/3.9.rst:708
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:1496
msgid "typing"
msgstr "*typing*"
#: whatsnew/3.9.rst:715
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:721
msgid "unicodedata"
msgstr "*unicodedata*"
#: whatsnew/3.9.rst:723
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:726
msgid "venv"
msgstr "*venv*"
#: whatsnew/3.9.rst:728
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:736
msgid "xml"
msgstr "*xml*"
#: whatsnew/3.9.rst:738
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:746
msgid "Optimizations"
msgstr "Optimisations"
#: whatsnew/3.9.rst:748
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:752
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:754
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:757
msgid "(Contributed by Serhiy Storchaka in :issue:`32856`.)"
msgstr "(contribution de *Serhiy Storchaka* dans :issue:`32856`)."
#: whatsnew/3.9.rst:759
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:765
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:769
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:773
#, fuzzy
msgid ""
":c:func:`PyLong_FromDouble` is now up to 1.87x faster for values that fit "
"into :c:expr:`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:777
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:782
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:786
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:792
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:796
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:799
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:846
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:856
msgid "Deprecated"
msgstr "Obsolescence"
#: whatsnew/3.9.rst:858
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:862
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:868
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:873
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:878
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:884
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:890
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:896
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:901
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:905
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:908
msgid ":func:`~binascii.b2a_hqx`, :func:`~binascii.a2b_hqx`"
msgstr ":func:`~binascii.b2a_hqx`, :func:`~binascii.a2b_hqx`"
#: whatsnew/3.9.rst:909
msgid ":func:`~binascii.rlecode_hqx`, :func:`~binascii.rledecode_hqx`"
msgstr ":func:`~binascii.rlecode_hqx`, :func:`~binascii.rledecode_hqx`"
#: whatsnew/3.9.rst:911
msgid "(Contributed by Victor Stinner in :issue:`39353`.)"
msgstr "(contribution de *Victor Stinner* dans :issue:`39353`)."
#: whatsnew/3.9.rst:913
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:919
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:926
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:932
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:935
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:938
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:946
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:1410
msgid "Removed"
msgstr "Retraits"
#: whatsnew/3.9.rst:957
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:959
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:966
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:971
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:976
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:981
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:985
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:989
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:994
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:999
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:1007
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:1013
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:1018
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:1023
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:1027
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:1032
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:1037
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:1042
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:1048
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:1053
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:1057
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:1062
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:1336
msgid "Porting to Python 3.9"
msgstr "Portage vers Python 3.9"
#: whatsnew/3.9.rst:1071
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:1076
msgid "Changes in the Python API"
msgstr "Changements dans l'API Python"
#: whatsnew/3.9.rst:1078
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:1083
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:1086
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:1090
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:1094
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 l'indiçage. Les indices simples sont "
"représentés par leur valeur, les tranches étendues sont 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:1100
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:1104
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:1108
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:1113
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:1118
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:1123
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:1130
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:1136
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:1144
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:1152
msgid "Changes in the C API"
msgstr "Changements dans l'API C"
#: whatsnew/3.9.rst:1154
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:1175
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 "
"mère (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:1180
msgid "For example, if your ``tp_traverse`` function includes:"
msgstr "Par exemple, si votre fonction ``tp_traverse`` inclut :"
#: whatsnew/3.9.rst:1186
msgid "then add:"
msgstr "alors ajoutez :"
#: whatsnew/3.9.rst:1199
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:1201
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:1207
msgid "CPython bytecode changes"
msgstr "Changements au code intermédiaire CPython"
#: whatsnew/3.9.rst:1209
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:1214
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:1216
msgid "``COMPARE_OP`` for rich comparisons"
msgstr "``COMPARE_OP`` pour les comparaisons avancées ;"
#: whatsnew/3.9.rst:1217
msgid "``IS_OP`` for 'is' and 'is not' tests"
msgstr "``IS_OP`` pour les tests *is* et *is not* ;"
#: whatsnew/3.9.rst:1218
msgid "``CONTAINS_OP`` for 'in' and 'not in' tests"
msgstr "``CONTAINS_OP`` pour les tests *in* et *not in* ;"
#: whatsnew/3.9.rst:1219
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:1222
msgid "(Contributed by Mark Shannon in :issue:`39156`.)"
msgstr "(contribution de *Mark Shannon* dans :issue:`39156`)."
#: whatsnew/3.9.rst:1226
msgid "Build Changes"
msgstr "Changements à la compilation"
#: whatsnew/3.9.rst:1228
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:1234
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:1237
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:1241
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:1244
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 ``--with-tcltk-includes`` and ``--with-tcltk-libs``. "
"(Contributed by Ned Deily in :issue:`34956`.)"
msgstr ""
#: whatsnew/3.9.rst:1253
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:1256
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 ""
"Certains tests individuels sont maintenant ignorés lorsque ``--pgo`` est "
"utilisé. Les tests en question augmentaient la durée de la tâche *PGO* de "
"manière significative et n'optimisaient probablement pas l'exécutable final. "
"Cela accélère la tâche par un facteur d'environ 15 fois. Le fait de lancer "
"la suite de tests est lent. Ce changement va peut être avoir pour "
"conséquence des exécutables compilés un peu moins optimisés car moins de "
"branches de code seront exécutées. Si vous souhaitez attendre avec une "
"compilation plus lente, l'ancienne manière de fonctionner peut être obtenue "
"avec ``./configure [..] PROFILE_TASK=\"-m test --pgo-extended\"``. Nous ne "
"garantissons pas quel set de tâches PGO produira une compilation plus "
"rapide. Les utilisateurs qui s'y intéressent devraient exécuter leurs "
"propres *benchmarks*, car les résultats peuvent dépendre de l'environnement, "
"de la charge de travail et de la chaîne d'outils du compilateur. (Voir :"
"issue:`36044` et :issue:`37707` pour plus de détails.)"
#: whatsnew/3.9.rst:1271
msgid "C API Changes"
msgstr "Changements à l'API C"
#: whatsnew/3.9.rst:1276
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:1283
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:1287
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:1290
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:1298
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:1421
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:1305
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:1311
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:1448
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:1316
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:1320
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:1326
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:1330
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:1338
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:1342
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:1351
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:1353
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:1359
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:1364
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:1368
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:1372
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:1379
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:1384
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:1387
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:1389
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:1391
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:1396
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:1400
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:1403
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:1407
msgid "(See :issue:`40170` for more details.)"
msgstr "(Voir :issue:`40170` pour plus de détails.)"
#: whatsnew/3.9.rst:1412
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:1416
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:1423
msgid "Excluded the following functions from the limited C API:"
msgstr "Exclusion des fonctions suivantes de l'API C limité :"
#: whatsnew/3.9.rst:1425
msgid ""
"``PyThreadState_DeleteCurrent()`` (Contributed by Joannah Nanjekye in :issue:"
"`37878`.)"
msgstr ""
"``PyThreadState_DeleteCurrent()`` (contribution de *Joannah Nanjekye* dans :"
"issue:`37878`) ;"
#: whatsnew/3.9.rst:1427
msgid "``_Py_CheckRecursionLimit``"
msgstr "``_Py_CheckRecursionLimit`` ;"
#: whatsnew/3.9.rst:1428
msgid "``_Py_NewReference()``"
msgstr "``_Py_NewReference()`` ;"
#: whatsnew/3.9.rst:1429
msgid "``_Py_ForgetReference()``"
msgstr "``_Py_ForgetReference()`` ;"
#: whatsnew/3.9.rst:1430
msgid "``_PyTraceMalloc_NewReference()``"
msgstr "``_PyTraceMalloc_NewReference()`` ;"
#: whatsnew/3.9.rst:1431
msgid "``_Py_GetRefTotal()``"
msgstr "``_Py_GetRefTotal()`` ;"
#: whatsnew/3.9.rst:1432
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:1433
msgid "``PyTrash_UNWIND_LEVEL``"
msgstr "``PyTrash_UNWIND_LEVEL`` ;"
#: whatsnew/3.9.rst:1434
msgid "``Py_TRASHCAN_BEGIN_CONDITION``"
msgstr "``Py_TRASHCAN_BEGIN_CONDITION`` ;"
#: whatsnew/3.9.rst:1435
msgid "``Py_TRASHCAN_BEGIN``"
msgstr "``Py_TRASHCAN_BEGIN`` ;"
#: whatsnew/3.9.rst:1436
msgid "``Py_TRASHCAN_END``"
msgstr "``Py_TRASHCAN_END`` ;"
#: whatsnew/3.9.rst:1437
msgid "``Py_TRASHCAN_SAFE_BEGIN``"
msgstr "``Py_TRASHCAN_SAFE_BEGIN`` ;"
#: whatsnew/3.9.rst:1438
msgid "``Py_TRASHCAN_SAFE_END``"
msgstr "``Py_TRASHCAN_SAFE_END``."
#: whatsnew/3.9.rst:1440
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:1442
msgid "``_PyDebug_PrintTotalRefs()``"
msgstr "``_PyDebug_PrintTotalRefs()`` ;"
#: whatsnew/3.9.rst:1443
msgid "``_Py_PrintReferences()``"
msgstr "``_Py_PrintReferences()`` ;"
#: whatsnew/3.9.rst:1444
msgid "``_Py_PrintReferenceAddresses()``"
msgstr "``_Py_PrintReferenceAddresses()`` ;"
#: whatsnew/3.9.rst:1445
msgid "``_Py_tracemalloc_config``"
msgstr "``_Py_tracemalloc_config`` ;"
#: whatsnew/3.9.rst:1446
msgid "``_Py_AddToAllObjects()`` (specific to ``Py_TRACE_REFS`` build)"
msgstr ""
"``_Py_AddToAllObjects()`` (spécifique aux compilations ``Py_TRACE_REFS``)."
#: whatsnew/3.9.rst:1450
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:1455
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:1460
msgid "``PyAsyncGen_ClearFreeLists()``"
msgstr "``PyAsyncGen_ClearFreeLists()`` ;"
#: whatsnew/3.9.rst:1461
msgid "``PyContext_ClearFreeList()``"
msgstr "``PyContext_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1462
msgid "``PyDict_ClearFreeList()``"
msgstr "``PyDict_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1463
msgid "``PyFloat_ClearFreeList()``"
msgstr "``PyFloat_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1464
msgid "``PyFrame_ClearFreeList()``"
msgstr "``PyFrame_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1465
msgid "``PyList_ClearFreeList()``"
msgstr "``PyList_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1466
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:1468
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:1470
msgid "``PyTuple_ClearFreeList()``"
msgstr "``PyTuple_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1471
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:1474
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:1477
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:1482
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:1493
msgid "Notable changes in Python 3.9.1"
msgstr "Changements importants dans Python 3.9.1"
#: whatsnew/3.9.rst:1498
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:1501
msgid "``Literal`` now de-duplicates parameters."
msgstr "``Literal`` de-duplique maintenant les paramètres ;"
#: whatsnew/3.9.rst:1502
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:1503
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:1507
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:1519
msgid "(Contributed by Yurii Karabas in :issue:`42345`.)"
msgstr "(Contribution de *Yurii Karabas* dans :issue:`42345`.)"
#: whatsnew/3.9.rst:1522
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:1524
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 ""
"Depuis la version 3.9.1, Python est maintenant totalement compatible "
"(compilation et lancement) sur macOS 11.0 (*Big Sur*) et sur les Macs Apple "
"Silicon (basés sur l'architecture ``ARM64``). Un nouveau variant de *build*, "
"``universal2``, est maintenant disponible et supporte nativement les "
"plateformes ``ARM64`` et ``Intel 64`` en un seul jeu d'exécutables. Les "
"binaires peuvent aussi être compilés sur les versions actuelles de macOS "
"pour ensuite être déployés sur des versions antérieures (testé jusqu'à "
"10.9), tout en rendant de nouvelles fonctionnalités du système "
"d'exploitation disponibles en fonction de la version du système utilisée à "
"l'exécution (\"*weaklinking*\")."
#: whatsnew/3.9.rst:1533
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:1536
msgid "Notable changes in Python 3.9.2"
msgstr "Changements importants dans Python 3.9.2"
#: whatsnew/3.9.rst:1539
msgid "collections.abc"
msgstr "*collections.abc*"
#: whatsnew/3.9.rst:1541
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:1555
msgid "urllib.parse"
msgstr "*urllib.parse*"
#: whatsnew/3.9.rst:1557
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 "Release"
#~ msgstr "Version"
#~ msgid "|release|"
#~ msgstr "|release|"
#~ msgid "Date"
#~ msgstr "Date"
#~ msgid "|today|"
#~ msgstr "|today|"
#~ 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"