diff --git a/Makefile b/Makefile index 5c1789c79..94b7ad929 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ # from which we generated our po files. We use it here so when we # test build, we're building with the .rst files that generated our # .po files. -CPYTHON_CURRENT_COMMIT := cf739332bd039cd2303b58663a804f784883820d +CPYTHON_CURRENT_COMMIT := d5feb2b1f12a15c1a9bac094a8f6f77d0cfcbdc2 CPYTHON_PATH := ../cpython/ diff --git a/bugs.po b/bugs.po index 2e0b02039..99d4948b2 100644 --- a/bugs.po +++ b/bugs.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-05-26 23:13+0200\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -114,9 +114,10 @@ msgid "Using the Python issue tracker" msgstr "Utilisation du gestionnaire de tickets Python" #: bugs.rst:43 +#, fuzzy msgid "" "Bug reports for Python itself should be submitted via the Python Bug Tracker " -"(https://bugs.python.org/). The bug tracker offers a Web form which allows " +"(https://bugs.python.org/). The bug tracker offers a web form which allows " "pertinent information to be entered and submitted to the developers." msgstr "" "Les rapports de bogues pour Python lui-même devraient être soumis via le " @@ -220,9 +221,10 @@ msgstr "" "est utile." #: bugs.rst:84 +#, fuzzy msgid "" -"`Bug Report Writing Guidelines `_" +"`Bug Writing Guidelines `_" msgstr "" "`Guide pour la rédaction de rapports de bogues `_" diff --git a/c-api/apiabiversion.po b/c-api/apiabiversion.po index dc75ce90f..9a724f526 100644 --- a/c-api/apiabiversion.po +++ b/c-api/apiabiversion.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -20,101 +20,181 @@ msgstr "Version des API et ABI" #: c-api/apiabiversion.rst:9 msgid "" -"``PY_VERSION_HEX`` is the Python version number encoded in a single integer." +"CPython exposes its version number in the following macros. Note that these " +"correspond to the version code is **built** with, not necessarily the " +"version used at **run time**." +msgstr "" + +#: c-api/apiabiversion.rst:13 +msgid "" +"See :ref:`stable` for a discussion of API and ABI stability across versions." +msgstr "" + +#: c-api/apiabiversion.rst:17 +#, fuzzy +msgid "The ``3`` in ``3.4.1a2``." +msgstr "``PY_MAJOR_VERSION`` (le ``3`` dans ``3.4.1a2``)" + +#: c-api/apiabiversion.rst:21 +#, fuzzy +msgid "The ``4`` in ``3.4.1a2``." +msgstr "``PY_MINOR_VERSION`` (le ``4`` dans ``3.4.1a2``)" + +#: c-api/apiabiversion.rst:25 +#, fuzzy +msgid "The ``1`` in ``3.4.1a2``." +msgstr "``PY_MICRO_VERSION`` (le ``1`` dans ``3.4.1a2``)" + +#: c-api/apiabiversion.rst:29 +#, fuzzy +msgid "" +"The ``a`` in ``3.4.1a2``. This can be ``0xA`` for alpha, ``0xB`` for beta, " +"``0xC`` for release candidate or ``0xF`` for final." +msgstr "" +"``PY_RELEASE_LEVEL`` (``0xA`` pour alpha, ``0xB`` pour bêta, ``0xC`` pour " +"une version candidate et ``0xF`` pour final), dans ce cas c'est alpha." + +#: c-api/apiabiversion.rst:35 +#, fuzzy +msgid "The ``2`` in ``3.4.1a2``. Zero for final releases." +msgstr "" +"``PY_RELEASE_SERIAL`` (le ``2`` au ``3.4.1a2``, zéro pour des versions " +"finales)" + +#: c-api/apiabiversion.rst:39 +#, fuzzy +msgid "The Python version number encoded in a single integer." msgstr "" "``PY_VERSION_HEX`` est le numéro de version de Python encodé en un seul " "entier." -#: c-api/apiabiversion.rst:11 +#: c-api/apiabiversion.rst:41 +#, fuzzy msgid "" -"For example if the ``PY_VERSION_HEX`` is set to ``0x030401a2``, the " -"underlying version information can be found by treating it as a 32 bit " +"The underlying version information can be found by treating it as a 32 bit " "number in the following manner:" msgstr "" "Par exemple si le ``PY_VERSION_HEX` est défini à ``0x030401a2``, la " "version d'information sous-jacente peut être trouvée en la traitant comme un " "nombre sous 32 bits de la manière suivante:" -#: c-api/apiabiversion.rst:16 +#: c-api/apiabiversion.rst:45 msgid "Bytes" msgstr "Bytes" -#: c-api/apiabiversion.rst:16 +#: c-api/apiabiversion.rst:45 msgid "Bits (big endian order)" msgstr "Bits (ordre gros-boutiste)" -#: c-api/apiabiversion.rst:16 +#: c-api/apiabiversion.rst:45 msgid "Meaning" msgstr "Signification" -#: c-api/apiabiversion.rst:18 -msgid "``1``" -msgstr "``1``" +#: c-api/apiabiversion.rst:45 +msgid "Value for ``3.4.1a2``" +msgstr "" + +#: c-api/apiabiversion.rst:47 +msgid "1" +msgstr "" -#: c-api/apiabiversion.rst:18 -msgid "``1-8``" +#: c-api/apiabiversion.rst:47 +#, fuzzy +msgid "1-8" msgstr "``1-8``" -#: c-api/apiabiversion.rst:18 -msgid "``PY_MAJOR_VERSION`` (the ``3`` in ``3.4.1a2``)" -msgstr "``PY_MAJOR_VERSION`` (le ``3`` dans ``3.4.1a2``)" +#: c-api/apiabiversion.rst:47 +msgid "``PY_MAJOR_VERSION``" +msgstr "" -#: c-api/apiabiversion.rst:21 -msgid "``2``" -msgstr "``2``" +#: c-api/apiabiversion.rst:47 +msgid "``0x03``" +msgstr "" -#: c-api/apiabiversion.rst:21 -msgid "``9-16``" +#: c-api/apiabiversion.rst:49 +msgid "2" +msgstr "" + +#: c-api/apiabiversion.rst:49 +#, fuzzy +msgid "9-16" msgstr "``9-16``" -#: c-api/apiabiversion.rst:21 -msgid "``PY_MINOR_VERSION`` (the ``4`` in ``3.4.1a2``)" -msgstr "``PY_MINOR_VERSION`` (le ``4`` dans ``3.4.1a2``)" +#: c-api/apiabiversion.rst:49 +msgid "``PY_MINOR_VERSION``" +msgstr "" + +#: c-api/apiabiversion.rst:49 +msgid "``0x04``" +msgstr "" -#: c-api/apiabiversion.rst:24 -msgid "``3``" -msgstr "``3``" +#: c-api/apiabiversion.rst:51 +msgid "3" +msgstr "" -#: c-api/apiabiversion.rst:24 -msgid "``17-24``" +#: c-api/apiabiversion.rst:51 +#, fuzzy +msgid "17-24" msgstr "``17-24``" -#: c-api/apiabiversion.rst:24 -msgid "``PY_MICRO_VERSION`` (the ``1`` in ``3.4.1a2``)" -msgstr "``PY_MICRO_VERSION`` (le ``1`` dans ``3.4.1a2``)" +#: c-api/apiabiversion.rst:51 +msgid "``PY_MICRO_VERSION``" +msgstr "" -#: c-api/apiabiversion.rst:27 -msgid "``4``" -msgstr "``4``" +#: c-api/apiabiversion.rst:51 +msgid "``0x01``" +msgstr "" -#: c-api/apiabiversion.rst:27 -msgid "``25-28``" +#: c-api/apiabiversion.rst:53 +msgid "4" +msgstr "" + +#: c-api/apiabiversion.rst:53 +#, fuzzy +msgid "25-28" msgstr "``25-28``" -#: c-api/apiabiversion.rst:27 -msgid "" -"``PY_RELEASE_LEVEL`` (``0xA`` for alpha, ``0xB`` for beta, ``0xC`` for " -"release candidate and ``0xF`` for final), in this case it is alpha." +#: c-api/apiabiversion.rst:53 +msgid "``PY_RELEASE_LEVEL``" +msgstr "" + +#: c-api/apiabiversion.rst:53 +msgid "``0xA``" msgstr "" -"``PY_RELEASE_LEVEL`` (``0xA`` pour alpha, ``0xB`` pour bêta, ``0xC`` pour " -"une version candidate et ``0xF`` pour final), dans ce cas c'est alpha." -#: c-api/apiabiversion.rst:32 -msgid "``29-32``" +#: c-api/apiabiversion.rst:55 +#, fuzzy +msgid "29-32" msgstr "``29-32``" -#: c-api/apiabiversion.rst:32 -msgid "" -"``PY_RELEASE_SERIAL`` (the ``2`` in ``3.4.1a2``, zero for final releases)" +#: c-api/apiabiversion.rst:55 +msgid "``PY_RELEASE_SERIAL``" msgstr "" -"``PY_RELEASE_SERIAL`` (le ``2`` au ``3.4.1a2``, zéro pour des versions " -"finales)" -#: c-api/apiabiversion.rst:36 -msgid "Thus ``3.4.1a2`` is hexversion ``0x030401a2``." +#: c-api/apiabiversion.rst:55 +msgid "``0x2``" +msgstr "" + +#: c-api/apiabiversion.rst:58 +#, fuzzy +msgid "" +"Thus ``3.4.1a2`` is hexversion ``0x030401a2`` and ``3.10.0`` is hexversion " +"``0x030a00f0``." msgstr "Ainsi ``3.4.1a2`` est une hexane-version ``0x030401a2``." -#: c-api/apiabiversion.rst:38 +#: c-api/apiabiversion.rst:62 msgid "All the given macros are defined in :source:`Include/patchlevel.h`." msgstr "" "Toutes les macros données sont définies dans :source:`Include/patchlevel.h`." + +#~ msgid "``1``" +#~ msgstr "``1``" + +#~ msgid "``2``" +#~ msgstr "``2``" + +#~ msgid "``3``" +#~ msgstr "``3``" + +#~ msgid "``4``" +#~ msgstr "``4``" diff --git a/c-api/arg.po b/c-api/arg.po index 82c7982aa..2e5cf9765 100644 --- a/c-api/arg.po +++ b/c-api/arg.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-12-10 16:23+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -129,28 +129,18 @@ msgstr "" #: c-api/arg.rst:58 msgid "" -"For all ``#`` variants of formats (``s#``, ``y#``, etc.), the type of the " -"length argument (int or :c:type:`Py_ssize_t`) is controlled by defining the " -"macro :c:macro:`PY_SSIZE_T_CLEAN` before including :file:`Python.h`. If the " -"macro was defined, length is a :c:type:`Py_ssize_t` rather than an :c:type:" -"`int`. This behavior will change in a future Python version to only support :" -"c:type:`Py_ssize_t` and drop :c:type:`int` support. It is best to always " -"define :c:macro:`PY_SSIZE_T_CLEAN`." -msgstr "" -"Pour toutes les variantes du marqueur ``#`` (``s#``, ``y#``, etc), le type " -"de l'argument *length* (*int* ou :c:type:`Py_ssize_t`) est contrôlé en " -"définissant la macro :c:macro:`PY_SSIZE_T_CLEAN` avant d'inclure le fichier :" -"file:`Python.h`. Si la macro est définie, la longueur est de type :c:type:" -"`Py_ssize_t` au lieu d'être de type :c:type:`int`. Ce comportement changera " -"dans une future version de Python, qui supportera seulement :c:type:" -"`Py_ssize_t` a la place de :c:type:`int`. Il est préférable de toujours " -"définir :c:macro:`PY_SSIZE_T_CLEAN`." - -#: c-api/arg.rst:85 +"For all ``#`` variants of formats (``s#``, ``y#``, etc.), the macro :c:macro:" +"`PY_SSIZE_T_CLEAN` must be defined before including :file:`Python.h`. On " +"Python 3.9 and older, the type of the length argument is :c:type:" +"`Py_ssize_t` if the :c:macro:`PY_SSIZE_T_CLEAN` macro is defined, or int " +"otherwise." +msgstr "" + +#: c-api/arg.rst:83 msgid "``s`` (:class:`str`) [const char \\*]" msgstr "``s`` (:class:`str`) [``const char *``]" -#: c-api/arg.rst:68 +#: c-api/arg.rst:66 msgid "" "Convert a Unicode object to a C pointer to a character string. A pointer to " "an existing string is stored in the character pointer variable whose address " @@ -167,7 +157,7 @@ msgstr "" "le code est *null*. Si elle en contient, une exception :exc:`ValueError` est " "levée. Si la conversion échoue, une :exc:`UnicodeError` est levée." -#: c-api/arg.rst:77 +#: c-api/arg.rst:75 msgid "" "This format does not accept :term:`bytes-like objects `. " "If you want to accept filesystem paths and convert them to C character " @@ -180,7 +170,7 @@ msgstr "" "est préférable d'utiliser le format ``O&`` avec :c:func:" "`PyUnicode_FSConverter` en tant que *converter*." -#: c-api/arg.rst:150 +#: c-api/arg.rst:148 msgid "" "Previously, :exc:`TypeError` was raised when embedded null code points were " "encountered in the Python string." @@ -188,11 +178,11 @@ msgstr "" "Auparavant, une :exc:`TypeError` était levée quand la chaîne de caractères " "Python contenait des codes NULL." -#: c-api/arg.rst:91 +#: c-api/arg.rst:89 msgid "``s*`` (:class:`str` or :term:`bytes-like object`) [Py_buffer]" msgstr "``s*`` (:class:`str` ou :term:`bytes-like object`) [``Py_buffer``]" -#: c-api/arg.rst:88 +#: c-api/arg.rst:86 msgid "" "This format accepts Unicode objects as well as bytes-like objects. It fills " "a :c:type:`Py_buffer` structure provided by the caller. In this case the " @@ -205,15 +195,16 @@ msgstr "" "octets NULL. Les objets Unicode sont convertis en chaînes de caractères C en " "utilisant l'encodage ``'utf-8'``." -#: c-api/arg.rst:98 +#: c-api/arg.rst:96 +#, fuzzy msgid "" -"``s#`` (:class:`str`, read-only :term:`bytes-like object`) [const char \\*, " -"int or :c:type:`Py_ssize_t`]" +"``s#`` (:class:`str`, read-only :term:`bytes-like object`) [const char \\*, :" +"c:type:`Py_ssize_t`]" msgstr "" "``s#`` (:class:`str`, :term:`bytes-like object` en lecture seule) [``const " "char \\*``, ``int`` ou :c:type:`Py_ssize_t`]" -#: c-api/arg.rst:94 +#: c-api/arg.rst:92 msgid "" "Like ``s*``, except that it doesn't accept mutable objects. The result is " "stored into two C variables, the first one a pointer to a C string, the " @@ -226,11 +217,11 @@ msgstr "" "caractères peut contenir des octets NULL. Les objets Unicode sont convertis " "vers des chaînes de caractères C utilisant l'encodage ``'utf-8'``." -#: c-api/arg.rst:566 +#: c-api/arg.rst:565 msgid "``z`` (:class:`str` or ``None``) [const char \\*]" msgstr "``z`` (:class:`str` ou ``None``) [``const char *``]" -#: c-api/arg.rst:101 +#: c-api/arg.rst:99 #, fuzzy msgid "" "Like ``s``, but the Python object may also be ``None``, in which case the C " @@ -239,13 +230,13 @@ msgstr "" "Comme ``s``, mais l'objet Python peut aussi être ``None``, auquel cas le " "pointeur C devient *NULL*." -#: c-api/arg.rst:106 +#: c-api/arg.rst:104 msgid "" "``z*`` (:class:`str`, :term:`bytes-like object` or ``None``) [Py_buffer]" msgstr "" "``z*`` (:class:`str`, :term:`bytes-like object` ou ``None``) [``Py_buffer``]" -#: c-api/arg.rst:105 +#: c-api/arg.rst:103 msgid "" "Like ``s*``, but the Python object may also be ``None``, in which case the " "``buf`` member of the :c:type:`Py_buffer` structure is set to ``NULL``." @@ -253,16 +244,16 @@ msgstr "" "Comme ``s*``, mais l'objet Python peut aussi être ``None``, auquel cas le " "membre ``buf``, dont la structure est :c:type:`Py_buffer` est fixée à *NULL*." -#: c-api/arg.rst:110 +#: c-api/arg.rst:108 #, fuzzy msgid "" "``z#`` (:class:`str`, read-only :term:`bytes-like object` or ``None``) " -"[const char \\*, int or :c:type:`Py_ssize_t`]" +"[const char \\*, :c:type:`Py_ssize_t`]" msgstr "" "``s#`` (:class:`str`, :term:`bytes-like object` en lecture seule) [``const " "char \\*``, ``int`` ou :c:type:`Py_ssize_t`]" -#: c-api/arg.rst:109 +#: c-api/arg.rst:107 #, fuzzy msgid "" "Like ``s#``, but the Python object may also be ``None``, in which case the C " @@ -271,13 +262,13 @@ msgstr "" "Comme ``s#``, mais l'objet Python peut également être ``None``, dans ce cas " "le pointeur C est définie à *NULL*." -#: c-api/arg.rst:120 +#: c-api/arg.rst:118 msgid "``y`` (read-only :term:`bytes-like object`) [const char \\*]" msgstr "" "``y`` (lecture seule :term:`objet compatible avec une chaîne d'octets `) [constante char \\*]" -#: c-api/arg.rst:113 +#: c-api/arg.rst:111 msgid "" "This format converts a bytes-like object to a C pointer to a character " "string; it does not accept Unicode objects. The bytes buffer must not " @@ -289,7 +280,7 @@ msgstr "" "Unicode. Le tampon d'octets ne doit pas contenir d'octets *null* ; si c'est " "le cas, une exception :exc:`ValueError` est levée." -#: c-api/arg.rst:118 +#: c-api/arg.rst:116 msgid "" "Previously, :exc:`TypeError` was raised when embedded null bytes were " "encountered in the bytes buffer." @@ -297,26 +288,26 @@ msgstr "" "Auparavant, :exc:`TypeError` était levée lorsque des octets *null* étaient " "rencontrés dans le tampon d'octets." -#: c-api/arg.rst:125 +#: c-api/arg.rst:123 msgid "``y*`` (:term:`bytes-like object`) [Py_buffer]" msgstr "``y*`` (:term:`bytes-like object`) [``Py_buffer``]" -#: c-api/arg.rst:123 +#: c-api/arg.rst:121 msgid "" "This variant on ``s*`` doesn't accept Unicode objects, only bytes-like " "objects. **This is the recommended way to accept binary data.**" msgstr "" -#: c-api/arg.rst:129 +#: c-api/arg.rst:127 #, fuzzy msgid "" -"``y#`` (read-only :term:`bytes-like object`) [const char \\*, int or :c:type:" +"``y#`` (read-only :term:`bytes-like object`) [const char \\*, :c:type:" "`Py_ssize_t`]" msgstr "" "``s#`` (:class:`str`, :term:`bytes-like object` en lecture seule) [``const " "char \\*``, ``int`` ou :c:type:`Py_ssize_t`]" -#: c-api/arg.rst:128 +#: c-api/arg.rst:126 msgid "" "This variant on ``s#`` doesn't accept Unicode objects, only bytes-like " "objects." @@ -324,11 +315,11 @@ msgstr "" "Cette variante de ``s#`` n'accepte pas les objets Unicode, uniquement des " "objets assimilés à des octets." -#: c-api/arg.rst:134 +#: c-api/arg.rst:132 msgid "``S`` (:class:`bytes`) [PyBytesObject \\*]" msgstr "``S`` (:class:`bytes`) [``PyBytesObject *``]" -#: c-api/arg.rst:132 +#: c-api/arg.rst:130 #, fuzzy msgid "" "Requires that the Python object is a :class:`bytes` object, without " @@ -340,11 +331,11 @@ msgstr "" "type *bytes*. La variable C doit aussi être déclarée en tant que :c:type:" "`PyObject\\*`." -#: c-api/arg.rst:139 +#: c-api/arg.rst:137 msgid "``Y`` (:class:`bytearray`) [PyByteArrayObject \\*]" msgstr "``Y`` (:class:`bytearray`) [``PyByteArrayObject *``]" -#: c-api/arg.rst:137 +#: c-api/arg.rst:135 #, fuzzy msgid "" "Requires that the Python object is a :class:`bytearray` object, without " @@ -357,11 +348,11 @@ msgstr "" "type *bytes*. La variable C doit aussi être déclarée en tant que :c:type:" "`PyObject\\*`." -#: c-api/arg.rst:156 +#: c-api/arg.rst:154 msgid "``u`` (:class:`str`) [const Py_UNICODE \\*]" msgstr "``u`` (:class:`str`) [``const Py_UNICODE *``]" -#: c-api/arg.rst:142 +#: c-api/arg.rst:140 msgid "" "Convert a Python Unicode object to a C pointer to a NUL-terminated buffer of " "Unicode characters. You must pass the address of a :c:type:`Py_UNICODE` " @@ -379,30 +370,29 @@ msgstr "" "chaîne de caractères Python ne doit pas contenir de code *NULL*. Si elle en " "contient, une exception :exc:`ValueError` est levée." -#: c-api/arg.rst:174 c-api/arg.rst:182 +#: c-api/arg.rst:172 c-api/arg.rst:180 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsWideCharString`." msgstr "" -#: c-api/arg.rst:165 +#: c-api/arg.rst:163 #, fuzzy -msgid "" -"``u#`` (:class:`str`) [const Py_UNICODE \\*, int or :c:type:`Py_ssize_t`]" +msgid "``u#`` (:class:`str`) [const Py_UNICODE \\*, :c:type:`Py_ssize_t`]" msgstr "``u#`` (:class:`str`) [``const Py_UNICODE *``, ``int``]" -#: c-api/arg.rst:159 +#: c-api/arg.rst:157 msgid "" "This variant on ``u`` stores into two C variables, the first one a pointer " "to a Unicode data buffer, the second one its length. This variant allows " "null code points." msgstr "" -#: c-api/arg.rst:173 +#: c-api/arg.rst:171 msgid "``Z`` (:class:`str` or ``None``) [const Py_UNICODE \\*]" msgstr "``Z`` (:class:`str` ou ``None``) [``const Py_UNICODE *``]" -#: c-api/arg.rst:168 +#: c-api/arg.rst:166 #, fuzzy msgid "" "Like ``u``, but the Python object may also be ``None``, in which case the :c:" @@ -411,14 +401,14 @@ msgstr "" "Comme ``u``, mais l'objet Python peut aussi être ``None``, auquel cas le " "pointeur :c:type:`Py_UNICODE` vaut *NULL*." -#: c-api/arg.rst:181 +#: c-api/arg.rst:179 #, fuzzy msgid "" -"``Z#`` (:class:`str` or ``None``) [const Py_UNICODE \\*, int or :c:type:" +"``Z#`` (:class:`str` or ``None``) [const Py_UNICODE \\*, :c:type:" "`Py_ssize_t`]" msgstr "``Z#`` (:class:`str` ou ``None``) [``const Py_UNICODE *``, ``int``]" -#: c-api/arg.rst:176 +#: c-api/arg.rst:174 #, fuzzy msgid "" "Like ``u#``, but the Python object may also be ``None``, in which case the :" @@ -427,11 +417,11 @@ msgstr "" "Comme ``u#``, mais l'objet Python peut également être ``None``, auquel cas " "le pointeur :c:type:`Py_UNICODE` vaut *NULL*." -#: c-api/arg.rst:186 +#: c-api/arg.rst:184 msgid "``U`` (:class:`str`) [PyObject \\*]" msgstr "``U`` (:class:`str`) [``PyObject *``]" -#: c-api/arg.rst:184 +#: c-api/arg.rst:182 #, fuzzy msgid "" "Requires that the Python object is a Unicode object, without attempting any " @@ -443,11 +433,11 @@ msgstr "" "type *bytes*. La variable C doit aussi être déclarée en tant que :c:type:" "`PyObject\\*`." -#: c-api/arg.rst:192 +#: c-api/arg.rst:190 msgid "``w*`` (read-write :term:`bytes-like object`) [Py_buffer]" msgstr "``w*`` (lecture-écriture :term:`bytes-like object`) [``Py_buffer``]" -#: c-api/arg.rst:189 +#: c-api/arg.rst:187 msgid "" "This format accepts any object which implements the read-write buffer " "interface. It fills a :c:type:`Py_buffer` structure provided by the caller. " @@ -455,17 +445,17 @@ msgid "" "`PyBuffer_Release` when it is done with the buffer." msgstr "" -#: c-api/arg.rst:209 +#: c-api/arg.rst:207 msgid "``es`` (:class:`str`) [const char \\*encoding, char \\*\\*buffer]" msgstr "" -#: c-api/arg.rst:195 +#: c-api/arg.rst:193 msgid "" "This variant on ``s`` is used for encoding Unicode into a character buffer. " "It only works for encoded data without embedded NUL bytes." msgstr "" -#: c-api/arg.rst:198 +#: c-api/arg.rst:196 msgid "" "This format requires two arguments. The first is only used as input, and " "must be a :c:type:`const char*` which points to the name of an encoding as a " @@ -476,7 +466,7 @@ msgid "" "The text will be encoded in the encoding specified by the first argument." msgstr "" -#: c-api/arg.rst:206 +#: c-api/arg.rst:204 msgid "" ":c:func:`PyArg_ParseTuple` will allocate a buffer of the needed size, copy " "the encoded data into this buffer and adjust *\\*buffer* to reference the " @@ -484,36 +474,36 @@ msgid "" "`PyMem_Free` to free the allocated buffer after use." msgstr "" -#: c-api/arg.rst:214 +#: c-api/arg.rst:212 msgid "" "``et`` (:class:`str`, :class:`bytes` or :class:`bytearray`) [const char " "\\*encoding, char \\*\\*buffer]" msgstr "" -#: c-api/arg.rst:212 +#: c-api/arg.rst:210 msgid "" "Same as ``es`` except that byte string objects are passed through without " "recoding them. Instead, the implementation assumes that the byte string " "object uses the encoding passed in as parameter." msgstr "" -#: c-api/arg.rst:245 +#: c-api/arg.rst:243 #, fuzzy msgid "" -"``es#`` (:class:`str`) [const char \\*encoding, char \\*\\*buffer, int or :c:" -"type:`Py_ssize_t` \\*buffer_length]" +"``es#`` (:class:`str`) [const char \\*encoding, char \\*\\*buffer, :c:type:" +"`Py_ssize_t` \\*buffer_length]" msgstr "" "``s#`` (:class:`str`, :term:`bytes-like object` en lecture seule) [``const " "char \\*``, ``int`` ou :c:type:`Py_ssize_t`]" -#: c-api/arg.rst:217 +#: c-api/arg.rst:215 msgid "" "This variant on ``s#`` is used for encoding Unicode into a character buffer. " "Unlike the ``es`` format, this variant allows input data which contains NUL " "characters." msgstr "" -#: c-api/arg.rst:221 +#: c-api/arg.rst:219 msgid "" "It requires three arguments. The first is only used as input, and must be " "a :c:type:`const char*` which points to the name of an encoding as a NUL-" @@ -526,11 +516,11 @@ msgid "" "will be set to the number of bytes in the output buffer." msgstr "" -#: c-api/arg.rst:231 +#: c-api/arg.rst:229 msgid "There are two modes of operation:" msgstr "Il existe deux modes de fonctionnement :" -#: c-api/arg.rst:233 +#: c-api/arg.rst:231 msgid "" "If *\\*buffer* points a ``NULL`` pointer, the function will allocate a " "buffer of the needed size, copy the encoded data into this buffer and set *" @@ -539,7 +529,7 @@ msgid "" "after usage." msgstr "" -#: c-api/arg.rst:238 +#: c-api/arg.rst:236 msgid "" "If *\\*buffer* points to a non-``NULL`` pointer (an already allocated " "buffer), :c:func:`PyArg_ParseTuple` will use this location as the buffer and " @@ -548,7 +538,7 @@ msgid "" "the buffer is not large enough, a :exc:`ValueError` will be set." msgstr "" -#: c-api/arg.rst:244 +#: c-api/arg.rst:242 msgid "" "In both cases, *\\*buffer_length* is set to the length of the encoded data " "without the trailing NUL byte." @@ -556,31 +546,31 @@ msgstr "" "Dans les deux cas, *\\*buffer_length* est la longueur des données encodées, " "sans l'octet NUL de fin." -#: c-api/arg.rst:250 +#: c-api/arg.rst:248 #, fuzzy msgid "" "``et#`` (:class:`str`, :class:`bytes` or :class:`bytearray`) [const char " -"\\*encoding, char \\*\\*buffer, int or :c:type:`Py_ssize_t` \\*buffer_length]" +"\\*encoding, char \\*\\*buffer, :c:type:`Py_ssize_t` \\*buffer_length]" msgstr "" "``s#`` (:class:`str`, :term:`bytes-like object` en lecture seule) [``const " "char \\*``, ``int`` ou :c:type:`Py_ssize_t`]" -#: c-api/arg.rst:248 +#: c-api/arg.rst:246 msgid "" "Same as ``es#`` except that byte string objects are passed through without " "recoding them. Instead, the implementation assumes that the byte string " "object uses the encoding passed in as parameter." msgstr "" -#: c-api/arg.rst:253 +#: c-api/arg.rst:251 msgid "Numbers" msgstr "Les nombres" -#: c-api/arg.rst:257 +#: c-api/arg.rst:255 msgid "``b`` (:class:`int`) [unsigned char]" msgstr "``b`` (:class:`int`) [``unsigned char``]" -#: c-api/arg.rst:256 +#: c-api/arg.rst:254 msgid "" "Convert a nonnegative Python integer to an unsigned tiny int, stored in a C :" "c:type:`unsigned char`." @@ -588,11 +578,11 @@ msgstr "" "Convertit un entier Python positif ou nul en un ``unsigned tiny int``, " "stocké dans un :c:type:`unsigned char` C." -#: c-api/arg.rst:600 +#: c-api/arg.rst:599 msgid "``B`` (:class:`int`) [unsigned char]" msgstr "``B`` (:class:`int`) [``unsigned char``]" -#: c-api/arg.rst:260 +#: c-api/arg.rst:258 msgid "" "Convert a Python integer to a tiny int without overflow checking, stored in " "a C :c:type:`unsigned char`." @@ -600,19 +590,19 @@ msgstr "" "Convertit un entier Python en un ``tiny int`` sans vérifier le débordement, " "stocké dans un :c:type:`unsigned char` C." -#: c-api/arg.rst:594 +#: c-api/arg.rst:593 msgid "``h`` (:class:`int`) [short int]" msgstr "``h`` (:class:`int`) [``short int``]" -#: c-api/arg.rst:264 +#: c-api/arg.rst:262 msgid "Convert a Python integer to a C :c:type:`short int`." msgstr "Convertit un entier Python en un :c:type:`short int` C." -#: c-api/arg.rst:603 +#: c-api/arg.rst:602 msgid "``H`` (:class:`int`) [unsigned short int]" msgstr "``H`` (:class:`int`) [``unsigned short int``]" -#: c-api/arg.rst:267 +#: c-api/arg.rst:265 msgid "" "Convert a Python integer to a C :c:type:`unsigned short int`, without " "overflow checking." @@ -620,19 +610,19 @@ msgstr "" "Convertit un entier Python en un :c:type:`unsigned short int` C, sans " "contrôle de débordement." -#: c-api/arg.rst:588 +#: c-api/arg.rst:587 msgid "``i`` (:class:`int`) [int]" msgstr "``i`` (:class:`int`) [``int``]" -#: c-api/arg.rst:271 +#: c-api/arg.rst:269 msgid "Convert a Python integer to a plain C :c:type:`int`." msgstr "Convertit un entier Python en un :c:type:`int` C." -#: c-api/arg.rst:606 +#: c-api/arg.rst:605 msgid "``I`` (:class:`int`) [unsigned int]" msgstr "``I`` (:class:`int`) [``unsigned int``]" -#: c-api/arg.rst:274 +#: c-api/arg.rst:272 msgid "" "Convert a Python integer to a C :c:type:`unsigned int`, without overflow " "checking." @@ -640,19 +630,19 @@ msgstr "" "Convertit un entier Python en un :c:type:`unsigned int` C, sans contrôle de " "le débordement." -#: c-api/arg.rst:597 +#: c-api/arg.rst:596 msgid "``l`` (:class:`int`) [long int]" msgstr "``l`` (:class:`int`) [``long int``]" -#: c-api/arg.rst:278 +#: c-api/arg.rst:276 msgid "Convert a Python integer to a C :c:type:`long int`." msgstr "Convertit un entier Python en un :c:type:`long int`." -#: c-api/arg.rst:609 +#: c-api/arg.rst:608 msgid "``k`` (:class:`int`) [unsigned long]" msgstr "``k`` (:class:`int`) [``unsigned long``]" -#: c-api/arg.rst:281 +#: c-api/arg.rst:279 msgid "" "Convert a Python integer to a C :c:type:`unsigned long` without overflow " "checking." @@ -660,20 +650,20 @@ msgstr "" "Convertit un entier Python en un :c:type:`unsigned long` C sans en vérifier " "le débordement." -#: c-api/arg.rst:612 +#: c-api/arg.rst:611 msgid "``L`` (:class:`int`) [long long]" msgstr "``L`` (:class:`int`) [``long long``]" -#: c-api/arg.rst:285 +#: c-api/arg.rst:283 #, fuzzy msgid "Convert a Python integer to a C :c:type:`long long`." msgstr "Convertit un entier Python en un :c:type:`long int`." -#: c-api/arg.rst:615 +#: c-api/arg.rst:614 msgid "``K`` (:class:`int`) [unsigned long long]" msgstr "``K`` (:class:`int`) [``unsigned long long``]" -#: c-api/arg.rst:288 +#: c-api/arg.rst:286 #, fuzzy msgid "" "Convert a Python integer to a C :c:type:`unsigned long long` without " @@ -682,19 +672,19 @@ msgstr "" "Convertit un entier Python en un :c:type:`unsigned long` C sans en vérifier " "le débordement." -#: c-api/arg.rst:618 +#: c-api/arg.rst:617 msgid "``n`` (:class:`int`) [Py_ssize_t]" msgstr "``n`` (:class:`int`) [``Py_ssize_t``]" -#: c-api/arg.rst:292 +#: c-api/arg.rst:290 msgid "Convert a Python integer to a C :c:type:`Py_ssize_t`." msgstr "Convertit un entier Python en un :c:type:`Py_ssize_t`." -#: c-api/arg.rst:299 +#: c-api/arg.rst:297 msgid "``c`` (:class:`bytes` or :class:`bytearray` of length 1) [char]" msgstr "``c`` (:class:`bytes` ou :class:`bytearray` de longueur 1) [``char``]" -#: c-api/arg.rst:295 +#: c-api/arg.rst:293 msgid "" "Convert a Python byte, represented as a :class:`bytes` or :class:`bytearray` " "object of length 1, to a C :c:type:`char`." @@ -702,15 +692,15 @@ msgstr "" "Convertit un *byte* Python, représenté comme un objet :class:`bytes` ou :" "class:`bytearray` de longueur 1, en un :c:type:`char` C." -#: c-api/arg.rst:298 +#: c-api/arg.rst:296 msgid "Allow :class:`bytearray` objects." msgstr "" -#: c-api/arg.rst:626 +#: c-api/arg.rst:625 msgid "``C`` (:class:`str` of length 1) [int]" msgstr "``C`` (:class:`str` de longueur 1) [``int``]" -#: c-api/arg.rst:302 +#: c-api/arg.rst:300 msgid "" "Convert a Python character, represented as a :class:`str` object of length " "1, to a C :c:type:`int`." @@ -718,41 +708,41 @@ msgstr "" "Convertit un caractère Python, représenté comme un objet :class:`str` de " "longueur 1, en un :c:type:`int` C." -#: c-api/arg.rst:632 +#: c-api/arg.rst:631 msgid "``f`` (:class:`float`) [float]" msgstr "``f`` (:class:`float`) [``float``]" -#: c-api/arg.rst:306 +#: c-api/arg.rst:304 msgid "Convert a Python floating point number to a C :c:type:`float`." msgstr "Convertit un nombre flottant Python vers un :c:type:`float`." -#: c-api/arg.rst:629 +#: c-api/arg.rst:628 msgid "``d`` (:class:`float`) [double]" msgstr "``d`` (:class:`float`) [``double``]" -#: c-api/arg.rst:309 +#: c-api/arg.rst:307 msgid "Convert a Python floating point number to a C :c:type:`double`." msgstr "Convertit un nombre flottant Python vers un :c:type:`double` C." -#: c-api/arg.rst:312 +#: c-api/arg.rst:310 msgid "``D`` (:class:`complex`) [Py_complex]" msgstr "``D`` (:class:`complex`) [``Py_complex``]" -#: c-api/arg.rst:312 +#: c-api/arg.rst:310 msgid "Convert a Python complex number to a C :c:type:`Py_complex` structure." msgstr "" "Convertit un nombre complexe Python vers une structure :c:type:`Py_complex` " "C." -#: c-api/arg.rst:315 +#: c-api/arg.rst:313 msgid "Other objects" msgstr "Autres objets" -#: c-api/arg.rst:643 +#: c-api/arg.rst:642 msgid "``O`` (object) [PyObject \\*]" msgstr "``O`` (objet) [``PyObject *``]" -#: c-api/arg.rst:318 +#: c-api/arg.rst:316 #, fuzzy msgid "" "Store a Python object (without any conversion) in a C object pointer. The C " @@ -764,11 +754,11 @@ msgstr "" "référence sur l'objet n'est pas incrémenté. Le pointeur stocké n'est pas " "*NULL*." -#: c-api/arg.rst:327 +#: c-api/arg.rst:325 msgid "``O!`` (object) [*typeobject*, PyObject \\*]" msgstr "``O!`` (objet) [*typeobject*, ``PyObject *``]" -#: c-api/arg.rst:323 +#: c-api/arg.rst:321 msgid "" "Store a Python object in a C object pointer. This is similar to ``O``, but " "takes two C arguments: the first is the address of a Python type object, the " @@ -777,11 +767,11 @@ msgid "" "required type, :exc:`TypeError` is raised." msgstr "" -#: c-api/arg.rst:657 +#: c-api/arg.rst:656 msgid "``O&`` (object) [*converter*, *anything*]" msgstr "``O&`` (objet) [*converter*, *anything*]" -#: c-api/arg.rst:332 +#: c-api/arg.rst:330 msgid "" "Convert a Python object to a C variable through a *converter* function. " "This takes two arguments: the first is a function, the second is the address " @@ -789,7 +779,7 @@ msgid "" "*converter* function in turn is called as follows::" msgstr "" -#: c-api/arg.rst:339 +#: c-api/arg.rst:337 msgid "" "where *object* is the Python object to be converted and *address* is the :c:" "type:`void*` argument that was passed to the :c:func:`PyArg_Parse\\*` " @@ -799,7 +789,7 @@ msgid "" "*address* unmodified." msgstr "" -#: c-api/arg.rst:345 +#: c-api/arg.rst:343 msgid "" "If the *converter* returns ``Py_CLEANUP_SUPPORTED``, it may get called a " "second time if the argument parsing eventually fails, giving the converter a " @@ -808,15 +798,15 @@ msgid "" "value as in the original call." msgstr "" -#: c-api/arg.rst:351 +#: c-api/arg.rst:349 msgid "``Py_CLEANUP_SUPPORTED`` was added." msgstr "``Py_CLEANUP_SUPPORTED`` à été ajouté." -#: c-api/arg.rst:361 +#: c-api/arg.rst:359 msgid "``p`` (:class:`bool`) [int]" msgstr "``p`` (:class:`bool`) [``int``]" -#: c-api/arg.rst:355 +#: c-api/arg.rst:353 msgid "" "Tests the value passed in for truth (a boolean **p**\\ redicate) and " "converts the result to its equivalent C true/false integer value. Sets the " @@ -825,11 +815,11 @@ msgid "" "how Python tests values for truth." msgstr "" -#: c-api/arg.rst:660 +#: c-api/arg.rst:659 msgid "``(items)`` (:class:`tuple`) [*matching-items*]" msgstr "``(items)`` (:class:`tuple`) [*matching-items*]" -#: c-api/arg.rst:364 +#: c-api/arg.rst:362 msgid "" "The object must be a Python sequence whose length is the number of format " "units in *items*. The C arguments must correspond to the individual format " @@ -840,7 +830,7 @@ msgstr "" "chaque unité de format particulière dans *articles*. Les unités de formats " "pour les séquences peuvent être imbriquées." -#: c-api/arg.rst:368 +#: c-api/arg.rst:366 msgid "" "It is possible to pass \"long\" integers (integers whose value exceeds the " "platform's :const:`LONG_MAX`) however no proper range checking is done --- " @@ -849,7 +839,7 @@ msgid "" "downcasts in C --- your mileage may vary)." msgstr "" -#: c-api/arg.rst:374 +#: c-api/arg.rst:372 msgid "" "A few other characters have a meaning in a format string. These may not " "occur inside nested parentheses. They are:" @@ -857,11 +847,11 @@ msgstr "" "Quelques autres caractères ont un sens dans une chaîne de format. On ne doit " "pas les trouvées dans des parenthèses imbriquées. Ce sont :" -#: c-api/arg.rst:382 +#: c-api/arg.rst:380 msgid "``|``" msgstr "``|``" -#: c-api/arg.rst:378 +#: c-api/arg.rst:376 msgid "" "Indicates that the remaining arguments in the Python argument list are " "optional. The C variables corresponding to optional arguments should be " @@ -870,11 +860,11 @@ msgid "" "corresponding C variable(s)." msgstr "" -#: c-api/arg.rst:391 +#: c-api/arg.rst:389 msgid "``$``" msgstr "``$``" -#: c-api/arg.rst:385 +#: c-api/arg.rst:383 msgid "" ":c:func:`PyArg_ParseTupleAndKeywords` only: Indicates that the remaining " "arguments in the Python argument list are keyword-only. Currently, all " @@ -882,22 +872,22 @@ msgid "" "be specified before ``$`` in the format string." msgstr "" -#: c-api/arg.rst:396 +#: c-api/arg.rst:394 msgid "``:``" msgstr "" -#: c-api/arg.rst:394 +#: c-api/arg.rst:392 msgid "" "The list of format units ends here; the string after the colon is used as " "the function name in error messages (the \"associated value\" of the " "exception that :c:func:`PyArg_ParseTuple` raises)." msgstr "" -#: c-api/arg.rst:401 +#: c-api/arg.rst:399 msgid "``;``" msgstr "" -#: c-api/arg.rst:399 +#: c-api/arg.rst:397 msgid "" "The list of format units ends here; the string after the semicolon is used " "as the error message *instead* of the default error message. ``:`` and ``;" @@ -907,7 +897,7 @@ msgstr "" "virgule est utilise comme message d'erreur *au lieu* du message d'erreur par " "défaut. ``:`` et ``;`` sont mutuellement exclusifs." -#: c-api/arg.rst:403 +#: c-api/arg.rst:401 msgid "" "Note that any Python object references which are provided to the caller are " "*borrowed* references; do not decrement their reference count!" @@ -916,7 +906,7 @@ msgstr "" "à l'appelant sont des références *empruntées* ; ne décrémentez pas leur " "compteur de références !" -#: c-api/arg.rst:406 +#: c-api/arg.rst:404 msgid "" "Additional arguments passed to these functions must be addresses of " "variables whose type is determined by the format string; these are used to " @@ -933,7 +923,7 @@ msgstr "" "devraient correspondre à ce qui est spécifié pour l'unité de format " "correspondante." -#: c-api/arg.rst:412 +#: c-api/arg.rst:410 msgid "" "For the conversion to succeed, the *arg* object must match the format and " "the format must be exhausted. On success, the :c:func:`PyArg_Parse\\*` " @@ -944,24 +934,24 @@ msgid "" "untouched." msgstr "" -#: c-api/arg.rst:421 +#: c-api/arg.rst:419 msgid "API Functions" msgstr "Fonction de l'API" -#: c-api/arg.rst:425 +#: c-api/arg.rst:423 msgid "" "Parse the parameters of a function that takes only positional parameters " "into local variables. Returns true on success; on failure, it returns false " "and raises the appropriate exception." msgstr "" -#: c-api/arg.rst:432 +#: c-api/arg.rst:430 msgid "" "Identical to :c:func:`PyArg_ParseTuple`, except that it accepts a va_list " "rather than a variable number of arguments." msgstr "" -#: c-api/arg.rst:438 +#: c-api/arg.rst:436 msgid "" "Parse the parameters of a function that takes both positional and keyword " "parameters into local variables. The *keywords* argument is a ``NULL``-" @@ -970,26 +960,26 @@ msgid "" "success; on failure, it returns false and raises the appropriate exception." msgstr "" -#: c-api/arg.rst:445 +#: c-api/arg.rst:443 msgid "" "Added support for :ref:`positional-only parameters `." msgstr "" -#: c-api/arg.rst:452 +#: c-api/arg.rst:450 msgid "" "Identical to :c:func:`PyArg_ParseTupleAndKeywords`, except that it accepts a " "va_list rather than a variable number of arguments." msgstr "" -#: c-api/arg.rst:458 +#: c-api/arg.rst:456 msgid "" "Ensure that the keys in the keywords argument dictionary are strings. This " "is only needed if :c:func:`PyArg_ParseTupleAndKeywords` is not used, since " "the latter already does this check." msgstr "" -#: c-api/arg.rst:468 +#: c-api/arg.rst:466 msgid "" "Function used to deconstruct the argument lists of \"old-style\" functions " "--- these are functions which use the :const:`METH_OLDARGS` parameter " @@ -1000,7 +990,7 @@ msgid "" "continue to be used for that purpose." msgstr "" -#: c-api/arg.rst:479 +#: c-api/arg.rst:477 msgid "" "A simpler form of parameter retrieval which does not use a format string to " "specify the types of the arguments. Functions which use this method to " @@ -1010,30 +1000,31 @@ msgid "" "tuple must be at least *min* and no more than *max*; *min* and *max* may be " "equal. Additional arguments must be passed to the function, each of which " "should be a pointer to a :c:type:`PyObject*` variable; these will be filled " -"in with the values from *args*; they will contain borrowed references. The " -"variables which correspond to optional parameters not given by *args* will " -"not be filled in; these should be initialized by the caller. This function " -"returns true on success and false if *args* is not a tuple or contains the " -"wrong number of elements; an exception will be set if there was a failure." +"in with the values from *args*; they will contain :term:`borrowed references " +"`. The variables which correspond to optional parameters " +"not given by *args* will not be filled in; these should be initialized by " +"the caller. This function returns true on success and false if *args* is not " +"a tuple or contains the wrong number of elements; an exception will be set " +"if there was a failure." msgstr "" -#: c-api/arg.rst:493 +#: c-api/arg.rst:492 msgid "" "This is an example of the use of this function, taken from the sources for " "the :mod:`_weakref` helper module for weak references::" msgstr "" -#: c-api/arg.rst:509 +#: c-api/arg.rst:508 msgid "" "The call to :c:func:`PyArg_UnpackTuple` in this example is entirely " "equivalent to this call to :c:func:`PyArg_ParseTuple`::" msgstr "" -#: c-api/arg.rst:517 +#: c-api/arg.rst:516 msgid "Building values" msgstr "Construction des valeurs" -#: c-api/arg.rst:521 +#: c-api/arg.rst:520 msgid "" "Create a new value based on a format string similar to those accepted by " "the :c:func:`PyArg_Parse\\*` family of functions and a sequence of values. " @@ -1041,7 +1032,7 @@ msgid "" "raised if ``NULL`` is returned." msgstr "" -#: c-api/arg.rst:526 +#: c-api/arg.rst:525 msgid "" ":c:func:`Py_BuildValue` does not always build a tuple. It builds a tuple " "only if its format string contains two or more format units. If the format " @@ -1050,7 +1041,7 @@ msgid "" "it to return a tuple of size 0 or one, parenthesize the format string." msgstr "" -#: c-api/arg.rst:532 +#: c-api/arg.rst:531 msgid "" "When memory buffers are passed as parameters to supply data to build " "objects, as for the ``s`` and ``s#`` formats, the required data is copied. " @@ -1061,7 +1052,7 @@ msgid "" "`Py_BuildValue` returns." msgstr "" -#: c-api/arg.rst:540 +#: c-api/arg.rst:539 msgid "" "In the following description, the quoted form is the format unit; the entry " "in (round) parentheses is the Python object type that the format unit will " @@ -1069,191 +1060,188 @@ msgid "" "be passed." msgstr "" -#: c-api/arg.rst:544 +#: c-api/arg.rst:543 msgid "" "The characters space, tab, colon and comma are ignored in format strings " "(but not within format units such as ``s#``). This can be used to make long " "format strings a tad more readable." msgstr "" -#: c-api/arg.rst:550 +#: c-api/arg.rst:549 msgid "``s`` (:class:`str` or ``None``) [const char \\*]" msgstr "``s`` (:class:`str` ou ``None``) [``const char *``]" -#: c-api/arg.rst:549 +#: c-api/arg.rst:548 msgid "" "Convert a null-terminated C string to a Python :class:`str` object using " "``'utf-8'`` encoding. If the C string pointer is ``NULL``, ``None`` is used." msgstr "" -#: c-api/arg.rst:555 +#: c-api/arg.rst:554 #, fuzzy msgid "" -"``s#`` (:class:`str` or ``None``) [const char \\*, int or :c:type:" -"`Py_ssize_t`]" +"``s#`` (:class:`str` or ``None``) [const char \\*, :c:type:`Py_ssize_t`]" msgstr "``s#`` (:class:`str` ou ``None``) [``const char *``, ``int``]" -#: c-api/arg.rst:553 +#: c-api/arg.rst:552 msgid "" "Convert a C string and its length to a Python :class:`str` object using " "``'utf-8'`` encoding. If the C string pointer is ``NULL``, the length is " "ignored and ``None`` is returned." msgstr "" -#: c-api/arg.rst:559 +#: c-api/arg.rst:558 msgid "``y`` (:class:`bytes`) [const char \\*]" msgstr "``y`` (:class:`bytes`) [``const char *``]" -#: c-api/arg.rst:558 +#: c-api/arg.rst:557 msgid "" "This converts a C string to a Python :class:`bytes` object. If the C string " "pointer is ``NULL``, ``None`` is returned." msgstr "" -#: c-api/arg.rst:563 +#: c-api/arg.rst:562 #, fuzzy -msgid "``y#`` (:class:`bytes`) [const char \\*, int or :c:type:`Py_ssize_t`]" +msgid "``y#`` (:class:`bytes`) [const char \\*, :c:type:`Py_ssize_t`]" msgstr "``y#`` (:class:`bytes`) [``const char *, int``]" -#: c-api/arg.rst:562 +#: c-api/arg.rst:561 msgid "" "This converts a C string and its lengths to a Python object. If the C " "string pointer is ``NULL``, ``None`` is returned." msgstr "" -#: c-api/arg.rst:582 +#: c-api/arg.rst:581 msgid "Same as ``s``." msgstr "" -#: c-api/arg.rst:569 +#: c-api/arg.rst:568 #, fuzzy msgid "" -"``z#`` (:class:`str` or ``None``) [const char \\*, int or :c:type:" -"`Py_ssize_t`]" +"``z#`` (:class:`str` or ``None``) [const char \\*, :c:type:`Py_ssize_t`]" msgstr "``z#`` (:class:`str` ou ``None``) [``const char *``, ``int``]" -#: c-api/arg.rst:585 +#: c-api/arg.rst:584 msgid "Same as ``s#``." msgstr "" -#: c-api/arg.rst:574 +#: c-api/arg.rst:573 msgid "``u`` (:class:`str`) [const wchar_t \\*]" msgstr "``u`` (:class:`str`) [``const wchar_t *``]" -#: c-api/arg.rst:572 +#: c-api/arg.rst:571 msgid "" "Convert a null-terminated :c:type:`wchar_t` buffer of Unicode (UTF-16 or " "UCS-4) data to a Python Unicode object. If the Unicode buffer pointer is " "``NULL``, ``None`` is returned." msgstr "" -#: c-api/arg.rst:579 +#: c-api/arg.rst:578 #, fuzzy -msgid "``u#`` (:class:`str`) [const wchar_t \\*, int or :c:type:`Py_ssize_t`]" +msgid "``u#`` (:class:`str`) [const wchar_t \\*, :c:type:`Py_ssize_t`]" msgstr "``u#`` (:class:`str`) [``const wchar_t *``, ``int``]" -#: c-api/arg.rst:577 +#: c-api/arg.rst:576 msgid "" "Convert a Unicode (UTF-16 or UCS-4) data buffer and its length to a Python " "Unicode object. If the Unicode buffer pointer is ``NULL``, the length is " "ignored and ``None`` is returned." msgstr "" -#: c-api/arg.rst:582 +#: c-api/arg.rst:581 msgid "``U`` (:class:`str` or ``None``) [const char \\*]" msgstr "``U`` (:class:`str` ou ``None``) [``const char *``]" -#: c-api/arg.rst:585 +#: c-api/arg.rst:584 #, fuzzy msgid "" -"``U#`` (:class:`str` or ``None``) [const char \\*, int or :c:type:" -"`Py_ssize_t`]" +"``U#`` (:class:`str` or ``None``) [const char \\*, :c:type:`Py_ssize_t`]" msgstr "``U#`` (:class:`str` ou ``None``) [``const char *``, ``int``]" -#: c-api/arg.rst:588 +#: c-api/arg.rst:587 #, fuzzy msgid "Convert a plain C :c:type:`int` to a Python integer object." msgstr "Convertit un :c:type:`long int` en un *int* Python." -#: c-api/arg.rst:591 +#: c-api/arg.rst:590 msgid "``b`` (:class:`int`) [char]" msgstr "``b`` (:class:`int`) [``char``]" -#: c-api/arg.rst:591 +#: c-api/arg.rst:590 msgid "Convert a plain C :c:type:`char` to a Python integer object." msgstr "" -#: c-api/arg.rst:594 +#: c-api/arg.rst:593 msgid "Convert a plain C :c:type:`short int` to a Python integer object." msgstr "" -#: c-api/arg.rst:597 +#: c-api/arg.rst:596 msgid "Convert a C :c:type:`long int` to a Python integer object." msgstr "Convertit un :c:type:`long int` en un *int* Python." -#: c-api/arg.rst:600 +#: c-api/arg.rst:599 msgid "Convert a C :c:type:`unsigned char` to a Python integer object." msgstr "" -#: c-api/arg.rst:603 +#: c-api/arg.rst:602 msgid "Convert a C :c:type:`unsigned short int` to a Python integer object." msgstr "" -#: c-api/arg.rst:606 +#: c-api/arg.rst:605 #, fuzzy msgid "Convert a C :c:type:`unsigned int` to a Python integer object." msgstr "Convertit un :c:type:`long int` en un *int* Python." -#: c-api/arg.rst:609 +#: c-api/arg.rst:608 msgid "Convert a C :c:type:`unsigned long` to a Python integer object." msgstr "" -#: c-api/arg.rst:612 +#: c-api/arg.rst:611 #, fuzzy msgid "Convert a C :c:type:`long long` to a Python integer object." msgstr "Convertit un :c:type:`long int` en un *int* Python." -#: c-api/arg.rst:615 +#: c-api/arg.rst:614 msgid "Convert a C :c:type:`unsigned long long` to a Python integer object." msgstr "" -#: c-api/arg.rst:618 +#: c-api/arg.rst:617 msgid "Convert a C :c:type:`Py_ssize_t` to a Python integer." msgstr "" -#: c-api/arg.rst:622 +#: c-api/arg.rst:621 msgid "``c`` (:class:`bytes` of length 1) [char]" msgstr "``c`` (:class:`bytes` de taille 1) [``char``]" -#: c-api/arg.rst:621 +#: c-api/arg.rst:620 msgid "" "Convert a C :c:type:`int` representing a byte to a Python :class:`bytes` " "object of length 1." msgstr "" -#: c-api/arg.rst:625 +#: c-api/arg.rst:624 msgid "" "Convert a C :c:type:`int` representing a character to Python :class:`str` " "object of length 1." msgstr "" -#: c-api/arg.rst:629 +#: c-api/arg.rst:628 msgid "Convert a C :c:type:`double` to a Python floating point number." msgstr "" -#: c-api/arg.rst:632 +#: c-api/arg.rst:631 msgid "Convert a C :c:type:`float` to a Python floating point number." msgstr "" -#: c-api/arg.rst:635 +#: c-api/arg.rst:634 msgid "``D`` (:class:`complex`) [Py_complex \\*]" msgstr "``D`` (:class:`complex`) [``Py_complex *``]" -#: c-api/arg.rst:635 +#: c-api/arg.rst:634 msgid "Convert a C :c:type:`Py_complex` structure to a Python complex number." msgstr "" -#: c-api/arg.rst:638 +#: c-api/arg.rst:637 msgid "" "Pass a Python object untouched (except for its reference count, which is " "incremented by one). If the object passed in is a ``NULL`` pointer, it is " @@ -1263,26 +1251,26 @@ msgid "" "raised yet, :exc:`SystemError` is set." msgstr "" -#: c-api/arg.rst:646 +#: c-api/arg.rst:645 msgid "``S`` (object) [PyObject \\*]" msgstr "``S`` (objet) [``PyObject *``]" -#: c-api/arg.rst:646 +#: c-api/arg.rst:645 msgid "Same as ``O``." msgstr "" -#: c-api/arg.rst:651 +#: c-api/arg.rst:650 msgid "``N`` (object) [PyObject \\*]" msgstr "``N`` (objet) [``PyObject *``]" -#: c-api/arg.rst:649 +#: c-api/arg.rst:648 msgid "" "Same as ``O``, except it doesn't increment the reference count on the " "object. Useful when the object is created by a call to an object constructor " "in the argument list." msgstr "" -#: c-api/arg.rst:654 +#: c-api/arg.rst:653 msgid "" "Convert *anything* to a Python object through a *converter* function. The " "function is called with *anything* (which should be compatible with :c:type:" @@ -1290,41 +1278,59 @@ msgid "" "``NULL`` if an error occurred." msgstr "" -#: c-api/arg.rst:660 +#: c-api/arg.rst:659 msgid "" "Convert a sequence of C values to a Python tuple with the same number of " "items." msgstr "" -#: c-api/arg.rst:663 +#: c-api/arg.rst:662 msgid "``[items]`` (:class:`list`) [*matching-items*]" msgstr "``[items]`` (:class:`list`) [*matching-items*]" -#: c-api/arg.rst:663 +#: c-api/arg.rst:662 msgid "" "Convert a sequence of C values to a Python list with the same number of " "items." msgstr "" -#: c-api/arg.rst:668 +#: c-api/arg.rst:667 msgid "``{items}`` (:class:`dict`) [*matching-items*]" msgstr "``{items}`` (:class:`dict`) [*matching-items*]" -#: c-api/arg.rst:666 +#: c-api/arg.rst:665 msgid "" "Convert a sequence of C values to a Python dictionary. Each pair of " "consecutive C values adds one item to the dictionary, serving as key and " "value, respectively." msgstr "" -#: c-api/arg.rst:670 +#: c-api/arg.rst:669 msgid "" "If there is an error in the format string, the :exc:`SystemError` exception " "is set and ``NULL`` returned." msgstr "" -#: c-api/arg.rst:675 +#: c-api/arg.rst:674 msgid "" "Identical to :c:func:`Py_BuildValue`, except that it accepts a va_list " "rather than a variable number of arguments." msgstr "" + +#~ msgid "" +#~ "For all ``#`` variants of formats (``s#``, ``y#``, etc.), the type of the " +#~ "length argument (int or :c:type:`Py_ssize_t`) is controlled by defining " +#~ "the macro :c:macro:`PY_SSIZE_T_CLEAN` before including :file:`Python.h`. " +#~ "If the macro was defined, length is a :c:type:`Py_ssize_t` rather than " +#~ "an :c:type:`int`. This behavior will change in a future Python version to " +#~ "only support :c:type:`Py_ssize_t` and drop :c:type:`int` support. It is " +#~ "best to always define :c:macro:`PY_SSIZE_T_CLEAN`." +#~ msgstr "" +#~ "Pour toutes les variantes du marqueur ``#`` (``s#``, ``y#``, etc), le " +#~ "type de l'argument *length* (*int* ou :c:type:`Py_ssize_t`) est contrôlé " +#~ "en définissant la macro :c:macro:`PY_SSIZE_T_CLEAN` avant d'inclure le " +#~ "fichier :file:`Python.h`. Si la macro est définie, la longueur est de " +#~ "type :c:type:`Py_ssize_t` au lieu d'être de type :c:type:`int`. Ce " +#~ "comportement changera dans une future version de Python, qui supportera " +#~ "seulement :c:type:`Py_ssize_t` a la place de :c:type:`int`. Il est " +#~ "préférable de toujours définir :c:macro:`PY_SSIZE_T_CLEAN`." diff --git a/c-api/code.po b/c-api/code.po index b7558a9ea..209461620 100644 --- a/c-api/code.po +++ b/c-api/code.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-02-15 00:30+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -82,3 +82,17 @@ msgstr "" "Renvoie un nouvel objet *code* avec le nom de fichier, le nom de fonction, " "et le numéro de première ligne donnés. Il n'est pas permis d'utiliser :func:" "`exec` ou :func:`eval` sur l'objet renvoyé." + +#: c-api/code.rst:57 +msgid "" +"Return the line number of the instruction that occurs on or before " +"``byte_offset`` and ends after it. If you just need the line number of a " +"frame, use :c:func:`PyFrame_GetLineNumber` instead." +msgstr "" + +#: c-api/code.rst:60 +msgid "" +"For efficiently iterating over the line numbers in a code object, use `the " +"API described in PEP 626 `_." +msgstr "" diff --git a/c-api/codec.po b/c-api/codec.po index 565eaa318..8d0d24baa 100644 --- a/c-api/codec.po +++ b/c-api/codec.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -30,15 +30,22 @@ msgstr "" #: c-api/codec.rst:15 msgid "" +"Unregister a codec search function and clear the registry's cache. If the " +"search function is not registered, do nothing. Return 0 on success. Raise an " +"exception and return -1 on error." +msgstr "" + +#: c-api/codec.rst:23 +msgid "" "Return ``1`` or ``0`` depending on whether there is a registered codec for " "the given *encoding*. This function always succeeds." msgstr "" -#: c-api/codec.rst:20 +#: c-api/codec.rst:28 msgid "Generic codec based encoding API." msgstr "" -#: c-api/codec.rst:22 +#: c-api/codec.rst:30 msgid "" "*object* is passed through the encoder function found for the given " "*encoding* using the error handling method defined by *errors*. *errors* " @@ -46,11 +53,11 @@ msgid "" "exc:`LookupError` if no encoder can be found." msgstr "" -#: c-api/codec.rst:29 +#: c-api/codec.rst:37 msgid "Generic codec based decoding API." msgstr "" -#: c-api/codec.rst:31 +#: c-api/codec.rst:39 msgid "" "*object* is passed through the decoder function found for the given " "*encoding* using the error handling method defined by *errors*. *errors* " @@ -58,11 +65,11 @@ msgid "" "exc:`LookupError` if no encoder can be found." msgstr "" -#: c-api/codec.rst:38 +#: c-api/codec.rst:46 msgid "Codec lookup API" msgstr "" -#: c-api/codec.rst:40 +#: c-api/codec.rst:48 msgid "" "In the following functions, the *encoding* string is looked up converted to " "all lower-case characters, which makes encodings looked up through this " @@ -70,41 +77,41 @@ msgid "" "`KeyError` is set and ``NULL`` returned." msgstr "" -#: c-api/codec.rst:47 +#: c-api/codec.rst:55 msgid "Get an encoder function for the given *encoding*." msgstr "" -#: c-api/codec.rst:51 +#: c-api/codec.rst:59 msgid "Get a decoder function for the given *encoding*." msgstr "" -#: c-api/codec.rst:55 +#: c-api/codec.rst:63 msgid "" "Get an :class:`~codecs.IncrementalEncoder` object for the given *encoding*." msgstr "" -#: c-api/codec.rst:59 +#: c-api/codec.rst:67 msgid "" "Get an :class:`~codecs.IncrementalDecoder` object for the given *encoding*." msgstr "" -#: c-api/codec.rst:63 +#: c-api/codec.rst:71 msgid "" "Get a :class:`~codecs.StreamReader` factory function for the given " "*encoding*." msgstr "" -#: c-api/codec.rst:67 +#: c-api/codec.rst:75 msgid "" "Get a :class:`~codecs.StreamWriter` factory function for the given " "*encoding*." msgstr "" -#: c-api/codec.rst:71 +#: c-api/codec.rst:79 msgid "Registry API for Unicode encoding error handlers" msgstr "" -#: c-api/codec.rst:75 +#: c-api/codec.rst:83 msgid "" "Register the error handling callback function *error* under the given " "*name*. This callback function will be called by a codec when it encounters " @@ -112,7 +119,7 @@ msgid "" "error parameter in the call to the encode/decode function." msgstr "" -#: c-api/codec.rst:80 +#: c-api/codec.rst:88 msgid "" "The callback gets a single argument, an instance of :exc:" "`UnicodeEncodeError`, :exc:`UnicodeDecodeError` or :exc:" @@ -125,39 +132,39 @@ msgid "" "should be resumed." msgstr "" -#: c-api/codec.rst:90 +#: c-api/codec.rst:98 msgid "Return ``0`` on success, ``-1`` on error." msgstr "" -#: c-api/codec.rst:94 +#: c-api/codec.rst:102 msgid "" "Lookup the error handling callback function registered under *name*. As a " "special case ``NULL`` can be passed, in which case the error handling " "callback for \"strict\" will be returned." msgstr "" -#: c-api/codec.rst:100 +#: c-api/codec.rst:108 msgid "Raise *exc* as an exception." msgstr "" -#: c-api/codec.rst:104 +#: c-api/codec.rst:112 msgid "Ignore the unicode error, skipping the faulty input." msgstr "" -#: c-api/codec.rst:108 +#: c-api/codec.rst:116 msgid "Replace the unicode encode error with ``?`` or ``U+FFFD``." msgstr "" -#: c-api/codec.rst:112 +#: c-api/codec.rst:120 msgid "Replace the unicode encode error with XML character references." msgstr "" -#: c-api/codec.rst:116 +#: c-api/codec.rst:124 msgid "" "Replace the unicode encode error with backslash escapes (``\\x``, ``\\u`` " "and ``\\U``)." msgstr "" -#: c-api/codec.rst:121 +#: c-api/codec.rst:129 msgid "Replace the unicode encode error with ``\\N{...}`` escapes." msgstr "" diff --git a/c-api/conversion.po b/c-api/conversion.po index 5a62d3989..9da64040c 100644 --- a/c-api/conversion.po +++ b/c-api/conversion.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-24 17:33+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -50,50 +50,43 @@ msgstr "" msgid "" "The wrappers ensure that ``str[size-1]`` is always ``'\\0'`` upon return. " "They never write more than *size* bytes (including the trailing ``'\\0'``) " -"into str. Both functions require that ``str != NULL``, ``size > 0`` and " -"``format != NULL``." +"into str. Both functions require that ``str != NULL``, ``size > 0``, " +"``format != NULL`` and ``size < INT_MAX``." msgstr "" #: c-api/conversion.rst:33 msgid "" -"If the platform doesn't have :c:func:`vsnprintf` and the buffer size needed " -"to avoid truncation exceeds *size* by more than 512 bytes, Python aborts " -"with a :c:func:`Py_FatalError`." -msgstr "" - -#: c-api/conversion.rst:37 -msgid "" "The return value (*rv*) for these functions should be interpreted as follows:" msgstr "" -#: c-api/conversion.rst:39 +#: c-api/conversion.rst:35 msgid "" "When ``0 <= rv < size``, the output conversion was successful and *rv* " "characters were written to *str* (excluding the trailing ``'\\0'`` byte at " "``str[rv]``)." msgstr "" -#: c-api/conversion.rst:43 +#: c-api/conversion.rst:39 msgid "" "When ``rv >= size``, the output conversion was truncated and a buffer with " "``rv + 1`` bytes would have been needed to succeed. ``str[size-1]`` is " "``'\\0'`` in this case." msgstr "" -#: c-api/conversion.rst:47 +#: c-api/conversion.rst:43 msgid "" "When ``rv < 0``, \"something bad happened.\" ``str[size-1]`` is ``'\\0'`` in " "this case too, but the rest of *str* is undefined. The exact cause of the " "error depends on the underlying platform." msgstr "" -#: c-api/conversion.rst:51 +#: c-api/conversion.rst:48 msgid "" "The following functions provide locale-independent string to number " "conversions." msgstr "" -#: c-api/conversion.rst:56 +#: c-api/conversion.rst:52 msgid "" "Convert a string ``s`` to a :c:type:`double`, raising a Python exception on " "failure. The set of accepted strings corresponds to the set of strings " @@ -102,14 +95,14 @@ msgid "" "current locale." msgstr "" -#: c-api/conversion.rst:62 +#: c-api/conversion.rst:58 msgid "" "If ``endptr`` is ``NULL``, convert the whole string. Raise :exc:" "`ValueError` and return ``-1.0`` if the string is not a valid representation " "of a floating-point number." msgstr "" -#: c-api/conversion.rst:66 +#: c-api/conversion.rst:62 msgid "" "If endptr is not ``NULL``, convert as much of the string as possible and set " "``*endptr`` to point to the first unconverted character. If no initial " @@ -118,7 +111,7 @@ msgid "" "ValueError, and return ``-1.0``." msgstr "" -#: c-api/conversion.rst:73 +#: c-api/conversion.rst:69 msgid "" "If ``s`` represents a value that is too large to store in a float (for " "example, ``\"1e500\"`` is such a string on many platforms) then if " @@ -129,50 +122,50 @@ msgid "" "the first character after the converted value." msgstr "" -#: c-api/conversion.rst:81 +#: c-api/conversion.rst:77 msgid "" "If any other error occurs during the conversion (for example an out-of-" "memory error), set the appropriate Python exception and return ``-1.0``." msgstr "" -#: c-api/conversion.rst:90 +#: c-api/conversion.rst:86 msgid "" "Convert a :c:type:`double` *val* to a string using supplied *format_code*, " "*precision*, and *flags*." msgstr "" -#: c-api/conversion.rst:93 +#: c-api/conversion.rst:89 msgid "" "*format_code* must be one of ``'e'``, ``'E'``, ``'f'``, ``'F'``, ``'g'``, " "``'G'`` or ``'r'``. For ``'r'``, the supplied *precision* must be 0 and is " "ignored. The ``'r'`` format code specifies the standard :func:`repr` format." msgstr "" -#: c-api/conversion.rst:98 +#: c-api/conversion.rst:94 msgid "" "*flags* can be zero or more of the values ``Py_DTSF_SIGN``, " "``Py_DTSF_ADD_DOT_0``, or ``Py_DTSF_ALT``, or-ed together:" msgstr "" -#: c-api/conversion.rst:101 +#: c-api/conversion.rst:97 msgid "" "``Py_DTSF_SIGN`` means to always precede the returned string with a sign " "character, even if *val* is non-negative." msgstr "" -#: c-api/conversion.rst:104 +#: c-api/conversion.rst:100 msgid "" "``Py_DTSF_ADD_DOT_0`` means to ensure that the returned string will not look " "like an integer." msgstr "" -#: c-api/conversion.rst:107 +#: c-api/conversion.rst:103 msgid "" "``Py_DTSF_ALT`` means to apply \"alternate\" formatting rules. See the " "documentation for the :c:func:`PyOS_snprintf` ``'#'`` specifier for details." msgstr "" -#: c-api/conversion.rst:111 +#: c-api/conversion.rst:107 msgid "" "If *ptype* is non-``NULL``, then the value it points to will be set to one " "of ``Py_DTST_FINITE``, ``Py_DTST_INFINITE``, or ``Py_DTST_NAN``, signifying " @@ -180,20 +173,20 @@ msgid "" "respectively." msgstr "" -#: c-api/conversion.rst:115 +#: c-api/conversion.rst:111 msgid "" "The return value is a pointer to *buffer* with the converted string or " "``NULL`` if the conversion failed. The caller is responsible for freeing the " "returned string by calling :c:func:`PyMem_Free`." msgstr "" -#: c-api/conversion.rst:124 +#: c-api/conversion.rst:120 msgid "" "Case insensitive comparison of strings. The function works almost " "identically to :c:func:`strcmp` except that it ignores the case." msgstr "" -#: c-api/conversion.rst:130 +#: c-api/conversion.rst:126 msgid "" "Case insensitive comparison of strings. The function works almost " "identically to :c:func:`strncmp` except that it ignores the case." diff --git a/c-api/datetime.po b/c-api/datetime.po index cb0b0a25f..0ca6b5d01 100644 --- a/c-api/datetime.po +++ b/c-api/datetime.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-06-28 15:17+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -259,23 +259,27 @@ msgstr "" "une instance de :c:data:`PyDateTime_DateTime` ou une sous-classe de celle-" "ci. L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :" -#: c-api/datetime.rst:200 +#: c-api/datetime.rst:205 msgid "Return the hour, as an int from 0 through 23." msgstr "Renvoie l'heure, sous forme d'entier allant de 0 à 23." -#: c-api/datetime.rst:205 +#: c-api/datetime.rst:210 msgid "Return the minute, as an int from 0 through 59." msgstr "Renvoie la minute, sous forme d'entier allant de 0 à 59." -#: c-api/datetime.rst:210 +#: c-api/datetime.rst:215 msgid "Return the second, as an int from 0 through 59." msgstr "Renvoie la seconde, sous forme d'entier allant de 0 à 59." -#: c-api/datetime.rst:215 +#: c-api/datetime.rst:220 msgid "Return the microsecond, as an int from 0 through 999999." msgstr "Renvoie la microseconde, sous forme d'entier allant de 0 à 999999." -#: c-api/datetime.rst:194 +#: c-api/datetime.rst:224 +msgid "Return the tzinfo (which may be ``None``)." +msgstr "" + +#: c-api/datetime.rst:199 #, fuzzy msgid "" "Macros to extract fields from time objects. The argument must be an " @@ -286,7 +290,7 @@ msgstr "" "instance de :c:data:`PyDateTime_Time` ou une sous-classe de celle-ci. " "L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :" -#: c-api/datetime.rst:218 +#: c-api/datetime.rst:229 #, fuzzy msgid "" "Macros to extract fields from time delta objects. The argument must be an " @@ -297,26 +301,26 @@ msgstr "" "être une instance de :c:data:`PyDateTime_Delta` ou une sous-classe de celle-" "ci. L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :" -#: c-api/datetime.rst:224 +#: c-api/datetime.rst:235 msgid "Return the number of days, as an int from -999999999 to 999999999." msgstr "" "Renvoie le nombre de jours, sous forme d'entier allant de ``-999999999`` à " "``999999999``." -#: c-api/datetime.rst:231 +#: c-api/datetime.rst:242 msgid "Return the number of seconds, as an int from 0 through 86399." msgstr "Renvoie le nombre de secondes sous forme d'entier allant de 0 à 86399." -#: c-api/datetime.rst:238 +#: c-api/datetime.rst:249 msgid "Return the number of microseconds, as an int from 0 through 999999." msgstr "" "Renvoie le nombre de microsecondes, sous forme d'entier allant de 0 à 999999." -#: c-api/datetime.rst:243 +#: c-api/datetime.rst:254 msgid "Macros for the convenience of modules implementing the DB API:" msgstr "Macros de confort pour les modules implémentant l'API DB :" -#: c-api/datetime.rst:247 +#: c-api/datetime.rst:258 msgid "" "Create and return a new :class:`datetime.datetime` object given an argument " "tuple suitable for passing to :meth:`datetime.datetime.fromtimestamp()`." @@ -324,7 +328,7 @@ msgstr "" "Crée et renvoie un nouvel objet :class:`datetime.datetime` à partir d'un n-" "uplet qui peut être passé à :meth:`datetime.datetime.fromtimestamp()`." -#: c-api/datetime.rst:253 +#: c-api/datetime.rst:264 msgid "" "Create and return a new :class:`datetime.date` object given an argument " "tuple suitable for passing to :meth:`datetime.date.fromtimestamp()`." diff --git a/c-api/decimal.po b/c-api/decimal.po index f6d9fcd9e..dd56e0b59 100644 --- a/c-api/decimal.po +++ b/c-api/decimal.po @@ -1,17 +1,15 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001-2021, Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. +# Copyright (C) 2001-2018, Python Software Foundation +# For licence information, see README file. # -#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Python 3.10\n" +"Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-18 17:40+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Language-Team: FRENCH \n" +"Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/c-api/descriptor.po b/c-api/descriptor.po index 2e5a0df7a..b9eae213d 100644 --- a/c-api/descriptor.po +++ b/c-api/descriptor.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-02-15 00:32+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -31,10 +31,11 @@ msgid "The type object for the built-in descriptor types." msgstr "L'objet *type* des descripteurs natifs." #: c-api/descriptor.rst:35 +#, fuzzy msgid "" -"Return true if the descriptor objects *descr* describes a data attribute, or " -"false if it describes a method. *descr* must be a descriptor object; there " -"is no error checking." +"Return non-zero if the descriptor objects *descr* describes a data " +"attribute, or ``0`` if it describes a method. *descr* must be a descriptor " +"object; there is no error checking." msgstr "" "Renvoie vrai si le descripteur *descr* décrit un attribut de donnée, ou faux " "s'il décrit une méthode. *descr* doit être un objet descripteur. Il n'y a " diff --git a/c-api/dict.po b/c-api/dict.po index 5fe2e9cd7..98d4e69d0 100644 --- a/c-api/dict.po +++ b/c-api/dict.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-07-03 11:36+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -116,27 +116,33 @@ msgid "" "`PyDict_GetItemWithError()` instead." msgstr "" -#: c-api/dict.rst:108 +#: c-api/dict.rst:105 +msgid "" +"Calling this API without :term:`GIL` held had been allowed for historical " +"reason. It is no longer allowed." +msgstr "" + +#: c-api/dict.rst:112 msgid "" "Variant of :c:func:`PyDict_GetItem` that does not suppress exceptions. " "Return ``NULL`` **with** an exception set if an exception occurred. Return " "``NULL`` **without** an exception set if the key wasn't present." msgstr "" -#: c-api/dict.rst:116 +#: c-api/dict.rst:120 msgid "" "This is the same as :c:func:`PyDict_GetItem`, but *key* is specified as a :c:" "type:`const char*`, rather than a :c:type:`PyObject*`." msgstr "" -#: c-api/dict.rst:119 +#: c-api/dict.rst:123 msgid "" "Note that exceptions which occur while calling :meth:`__hash__` and :meth:" "`__eq__` methods and creating a temporary string object will get suppressed. " "To get error reporting use :c:func:`PyDict_GetItemWithError()` instead." msgstr "" -#: c-api/dict.rst:127 +#: c-api/dict.rst:131 msgid "" "This is the same as the Python-level :meth:`dict.setdefault`. If present, " "it returns the value corresponding to *key* from the dictionary *p*. If the " @@ -146,29 +152,29 @@ msgid "" "the insertion." msgstr "" -#: c-api/dict.rst:137 +#: c-api/dict.rst:141 msgid "" "Return a :c:type:`PyListObject` containing all the items from the dictionary." msgstr "" -#: c-api/dict.rst:142 +#: c-api/dict.rst:146 msgid "" "Return a :c:type:`PyListObject` containing all the keys from the dictionary." msgstr "" -#: c-api/dict.rst:147 +#: c-api/dict.rst:151 msgid "" "Return a :c:type:`PyListObject` containing all the values from the " "dictionary *p*." msgstr "" -#: c-api/dict.rst:155 +#: c-api/dict.rst:159 msgid "" "Return the number of items in the dictionary. This is equivalent to " "``len(p)`` on a dictionary." msgstr "" -#: c-api/dict.rst:161 +#: c-api/dict.rst:165 msgid "" "Iterate over all key-value pairs in the dictionary *p*. The :c:type:" "`Py_ssize_t` referred to by *ppos* must be initialized to ``0`` prior to the " @@ -182,18 +188,18 @@ msgid "" "structure is sparse, the offsets are not consecutive." msgstr "" -#: c-api/dict.rst:172 +#: c-api/dict.rst:176 msgid "For example::" msgstr "Par exemple ::" -#: c-api/dict.rst:182 +#: c-api/dict.rst:186 msgid "" "The dictionary *p* should not be mutated during iteration. It is safe to " "modify the values of the keys as you iterate over the dictionary, but only " "so long as the set of keys does not change. For example::" msgstr "" -#: c-api/dict.rst:207 +#: c-api/dict.rst:211 msgid "" "Iterate over mapping object *b* adding key-value pairs to dictionary *a*. " "*b* may be a dictionary, or any object supporting :c:func:`PyMapping_Keys` " @@ -203,7 +209,7 @@ msgid "" "or ``-1`` if an exception was raised." msgstr "" -#: c-api/dict.rst:217 +#: c-api/dict.rst:221 msgid "" "This is the same as ``PyDict_Merge(a, b, 1)`` in C, and is similar to ``a." "update(b)`` in Python except that :c:func:`PyDict_Update` doesn't fall back " @@ -212,7 +218,7 @@ msgid "" "exception was raised." msgstr "" -#: c-api/dict.rst:226 +#: c-api/dict.rst:230 msgid "" "Update or merge into dictionary *a*, from the key-value pairs in *seq2*. " "*seq2* must be an iterable object producing iterable objects of length 2, " diff --git a/c-api/exceptions.po b/c-api/exceptions.po index 19799c5f2..c4e3565fd 100644 --- a/c-api/exceptions.po +++ b/c-api/exceptions.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-10-04 12:24+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -139,7 +139,7 @@ msgid "" "specifies the exception type; it is normally one of the standard exceptions, " "e.g. :c:data:`PyExc_RuntimeError`. You need not increment its reference " "count. The second argument is an error message; it is decoded from " -"``'utf-8``'." +"``'utf-8'``." msgstr "" #: c-api/exceptions.rst:108 @@ -212,8 +212,8 @@ msgstr "" #: c-api/exceptions.rst:184 msgid "" "Similar to :c:func:`PyErr_SetFromErrnoWithFilenameObject`, but the filename " -"is given as a C string. *filename* is decoded from the filesystem encoding " -"(:func:`os.fsdecode`)." +"is given as a C string. *filename* is decoded from the :term:`filesystem " +"encoding and error handler`." msgstr "" #: c-api/exceptions.rst:191 @@ -283,7 +283,7 @@ msgstr "" #: c-api/exceptions.rst:268 msgid "" "Like :c:func:`PyErr_SyntaxLocationObject`, but *filename* is a byte string " -"decoded from the filesystem encoding (:func:`os.fsdecode`)." +"decoded from the :term:`filesystem encoding and error handler`." msgstr "" #: c-api/exceptions.rst:276 @@ -363,8 +363,8 @@ msgstr "" #: c-api/exceptions.rst:344 msgid "" "Similar to :c:func:`PyErr_WarnExplicitObject` except that *message* and " -"*module* are UTF-8 encoded strings, and *filename* is decoded from the " -"filesystem encoding (:func:`os.fsdecode`)." +"*module* are UTF-8 encoded strings, and *filename* is decoded from the :term:" +"`filesystem encoding and error handler`." msgstr "" #: c-api/exceptions.rst:351 @@ -511,38 +511,92 @@ msgid "Signal Handling" msgstr "Traitement des signaux" #: c-api/exceptions.rst:508 +msgid "This function interacts with Python's signal handling." +msgstr "" + +#: c-api/exceptions.rst:510 +msgid "" +"If the function is called from the main thread and under the main Python " +"interpreter, it checks whether a signal has been sent to the processes and " +"if so, invokes the corresponding signal handler. If the :mod:`signal` " +"module is supported, this can invoke a signal handler written in Python." +msgstr "" + +#: c-api/exceptions.rst:515 +msgid "" +"The function attempts to handle all pending signals, and then returns ``0``. " +"However, if a Python signal handler raises an exception, the error indicator " +"is set and the function returns ``-1`` immediately (such that other pending " +"signals may not have been handled yet: they will be on the next :c:func:" +"`PyErr_CheckSignals()` invocation)." +msgstr "" + +#: c-api/exceptions.rst:521 msgid "" -"This function interacts with Python's signal handling. It checks whether a " -"signal has been sent to the processes and if so, invokes the corresponding " -"signal handler. If the :mod:`signal` module is supported, this can invoke a " -"signal handler written in Python. In all cases, the default effect for :" -"const:`SIGINT` is to raise the :exc:`KeyboardInterrupt` exception. If an " -"exception is raised the error indicator is set and the function returns " -"``-1``; otherwise the function returns ``0``. The error indicator may or " -"may not be cleared if it was previously set." +"If the function is called from a non-main thread, or under a non-main Python " +"interpreter, it does nothing and returns ``0``." msgstr "" #: c-api/exceptions.rst:524 msgid "" -"Simulate the effect of a :const:`SIGINT` signal arriving. The next time :c:" -"func:`PyErr_CheckSignals` is called, the Python signal handler for :const:" -"`SIGINT` will be called." +"This function can be called by long-running C code that wants to be " +"interruptible by user requests (such as by pressing Ctrl-C)." msgstr "" #: c-api/exceptions.rst:528 msgid "" -"If :const:`SIGINT` isn't handled by Python (it was set to :data:`signal." -"SIG_DFL` or :data:`signal.SIG_IGN`), this function does nothing." +"The default Python signal handler for :const:`SIGINT` raises the :exc:" +"`KeyboardInterrupt` exception." +msgstr "" + +#: c-api/exceptions.rst:539 +msgid "" +"Simulate the effect of a :const:`SIGINT` signal arriving. This is equivalent " +"to ``PyErr_SetInterruptEx(SIGINT)``." +msgstr "" + +#: c-api/exceptions.rst:570 +msgid "" +"This function is async-signal-safe. It can be called without the :term:" +"`GIL` and from a C signal handler." +msgstr "" + +#: c-api/exceptions.rst:553 +msgid "" +"Simulate the effect of a signal arriving. The next time :c:func:" +"`PyErr_CheckSignals` is called, the Python signal handler for the given " +"signal number will be called." +msgstr "" + +#: c-api/exceptions.rst:557 +msgid "" +"This function can be called by C code that sets up its own signal handling " +"and wants Python signal handlers to be invoked as expected when an " +"interruption is requested (for example when the user presses Ctrl-C to " +"interrupt an operation)." +msgstr "" + +#: c-api/exceptions.rst:562 +msgid "" +"If the given signal isn't handled by Python (it was set to :data:`signal." +"SIG_DFL` or :data:`signal.SIG_IGN`), it will be ignored." msgstr "" -#: c-api/exceptions.rst:534 +#: c-api/exceptions.rst:565 +msgid "" +"If *signum* is outside of the allowed range of signal numbers, ``-1`` is " +"returned. Otherwise, ``0`` is returned. The error indicator is never " +"changed by this function." +msgstr "" + +#: c-api/exceptions.rst:578 msgid "" "This utility function specifies a file descriptor to which the signal number " "is written as a single byte whenever a signal is received. *fd* must be non-" "blocking. It returns the previous such file descriptor." msgstr "" -#: c-api/exceptions.rst:538 +#: c-api/exceptions.rst:582 msgid "" "The value ``-1`` disables the feature; this is the initial state. This is " "equivalent to :func:`signal.set_wakeup_fd` in Python, but without any error " @@ -550,15 +604,15 @@ msgid "" "be called from the main thread." msgstr "" -#: c-api/exceptions.rst:543 +#: c-api/exceptions.rst:587 msgid "On Windows, the function now also supports socket handles." msgstr "" -#: c-api/exceptions.rst:548 +#: c-api/exceptions.rst:592 msgid "Exception Classes" msgstr "" -#: c-api/exceptions.rst:552 +#: c-api/exceptions.rst:596 msgid "" "This utility function creates and returns a new exception class. The *name* " "argument must be the name of the new exception, a C string of the form " @@ -567,7 +621,7 @@ msgid "" "(accessible in C as :c:data:`PyExc_Exception`)." msgstr "" -#: c-api/exceptions.rst:558 +#: c-api/exceptions.rst:602 msgid "" "The :attr:`__module__` attribute of the new class is set to the first part " "(up to the last dot) of the *name* argument, and the class name is set to " @@ -577,31 +631,31 @@ msgid "" "variables and methods." msgstr "" -#: c-api/exceptions.rst:567 +#: c-api/exceptions.rst:611 msgid "" "Same as :c:func:`PyErr_NewException`, except that the new exception class " "can easily be given a docstring: If *doc* is non-``NULL``, it will be used " "as the docstring for the exception class." msgstr "" -#: c-api/exceptions.rst:575 +#: c-api/exceptions.rst:619 msgid "Exception Objects" msgstr "Objets exception" -#: c-api/exceptions.rst:579 +#: c-api/exceptions.rst:623 msgid "" "Return the traceback associated with the exception as a new reference, as " "accessible from Python through :attr:`__traceback__`. If there is no " "traceback associated, this returns ``NULL``." msgstr "" -#: c-api/exceptions.rst:586 +#: c-api/exceptions.rst:630 msgid "" "Set the traceback associated with the exception to *tb*. Use ``Py_None`` to " "clear it." msgstr "" -#: c-api/exceptions.rst:592 +#: c-api/exceptions.rst:636 msgid "" "Return the context (another exception instance during whose handling *ex* " "was raised) associated with the exception as a new reference, as accessible " @@ -609,127 +663,127 @@ msgid "" "this returns ``NULL``." msgstr "" -#: c-api/exceptions.rst:600 +#: c-api/exceptions.rst:644 msgid "" "Set the context associated with the exception to *ctx*. Use ``NULL`` to " "clear it. There is no type check to make sure that *ctx* is an exception " "instance. This steals a reference to *ctx*." msgstr "" -#: c-api/exceptions.rst:607 +#: c-api/exceptions.rst:651 msgid "" "Return the cause (either an exception instance, or :const:`None`, set by " "``raise ... from ...``) associated with the exception as a new reference, as " "accessible from Python through :attr:`__cause__`." msgstr "" -#: c-api/exceptions.rst:614 +#: c-api/exceptions.rst:658 msgid "" "Set the cause associated with the exception to *cause*. Use ``NULL`` to " "clear it. There is no type check to make sure that *cause* is either an " "exception instance or :const:`None`. This steals a reference to *cause*." msgstr "" -#: c-api/exceptions.rst:618 +#: c-api/exceptions.rst:662 msgid "" ":attr:`__suppress_context__` is implicitly set to ``True`` by this function." msgstr "" -#: c-api/exceptions.rst:624 +#: c-api/exceptions.rst:668 msgid "Unicode Exception Objects" msgstr "Objets exception Unicode" -#: c-api/exceptions.rst:626 +#: c-api/exceptions.rst:670 msgid "" "The following functions are used to create and modify Unicode exceptions " "from C." msgstr "" -#: c-api/exceptions.rst:630 +#: c-api/exceptions.rst:674 msgid "" "Create a :class:`UnicodeDecodeError` object with the attributes *encoding*, " "*object*, *length*, *start*, *end* and *reason*. *encoding* and *reason* are " "UTF-8 encoded strings." msgstr "" -#: c-api/exceptions.rst:636 +#: c-api/exceptions.rst:680 msgid "" "Create a :class:`UnicodeEncodeError` object with the attributes *encoding*, " "*object*, *length*, *start*, *end* and *reason*. *encoding* and *reason* are " "UTF-8 encoded strings." msgstr "" -#: c-api/exceptions.rst:650 +#: c-api/exceptions.rst:694 msgid "3.11" msgstr "" -#: c-api/exceptions.rst:642 +#: c-api/exceptions.rst:686 msgid "" "``Py_UNICODE`` is deprecated since Python 3.3. Please migrate to " "``PyObject_CallFunction(PyExc_UnicodeEncodeError, \"sOnns\", ...)``." msgstr "" -#: c-api/exceptions.rst:647 +#: c-api/exceptions.rst:691 msgid "" "Create a :class:`UnicodeTranslateError` object with the attributes *object*, " "*length*, *start*, *end* and *reason*. *reason* is a UTF-8 encoded string." msgstr "" -#: c-api/exceptions.rst:652 +#: c-api/exceptions.rst:696 msgid "" "``Py_UNICODE`` is deprecated since Python 3.3. Please migrate to " "``PyObject_CallFunction(PyExc_UnicodeTranslateError, \"Onns\", ...)``." msgstr "" -#: c-api/exceptions.rst:658 +#: c-api/exceptions.rst:702 msgid "Return the *encoding* attribute of the given exception object." msgstr "" -#: c-api/exceptions.rst:664 +#: c-api/exceptions.rst:708 msgid "Return the *object* attribute of the given exception object." msgstr "" -#: c-api/exceptions.rst:670 +#: c-api/exceptions.rst:714 msgid "" "Get the *start* attribute of the given exception object and place it into *" "\\*start*. *start* must not be ``NULL``. Return ``0`` on success, ``-1`` " "on failure." msgstr "" -#: c-api/exceptions.rst:678 +#: c-api/exceptions.rst:722 msgid "" "Set the *start* attribute of the given exception object to *start*. Return " "``0`` on success, ``-1`` on failure." msgstr "" -#: c-api/exceptions.rst:685 +#: c-api/exceptions.rst:729 msgid "" "Get the *end* attribute of the given exception object and place it into *" "\\*end*. *end* must not be ``NULL``. Return ``0`` on success, ``-1`` on " "failure." msgstr "" -#: c-api/exceptions.rst:693 +#: c-api/exceptions.rst:737 msgid "" "Set the *end* attribute of the given exception object to *end*. Return " "``0`` on success, ``-1`` on failure." msgstr "" -#: c-api/exceptions.rst:700 +#: c-api/exceptions.rst:744 msgid "Return the *reason* attribute of the given exception object." msgstr "" -#: c-api/exceptions.rst:706 +#: c-api/exceptions.rst:750 msgid "" "Set the *reason* attribute of the given exception object to *reason*. " "Return ``0`` on success, ``-1`` on failure." msgstr "" -#: c-api/exceptions.rst:713 +#: c-api/exceptions.rst:757 msgid "Recursion Control" msgstr "Contrôle de la récursion" -#: c-api/exceptions.rst:715 +#: c-api/exceptions.rst:759 msgid "" "These two functions provide a way to perform safe recursive calls at the C " "level, both in the core and in extension modules. They are needed if the " @@ -739,42 +793,42 @@ msgid "" "recursion handling." msgstr "" -#: c-api/exceptions.rst:724 +#: c-api/exceptions.rst:768 msgid "Marks a point where a recursive C-level call is about to be performed." msgstr "" -#: c-api/exceptions.rst:726 +#: c-api/exceptions.rst:770 msgid "" "If :const:`USE_STACKCHECK` is defined, this function checks if the OS stack " "overflowed using :c:func:`PyOS_CheckStack`. In this is the case, it sets a :" "exc:`MemoryError` and returns a nonzero value." msgstr "" -#: c-api/exceptions.rst:730 +#: c-api/exceptions.rst:774 msgid "" "The function then checks if the recursion limit is reached. If this is the " "case, a :exc:`RecursionError` is set and a nonzero value is returned. " "Otherwise, zero is returned." msgstr "" -#: c-api/exceptions.rst:734 +#: c-api/exceptions.rst:778 msgid "" "*where* should be a UTF-8 encoded string such as ``\" in instance check\"`` " "to be concatenated to the :exc:`RecursionError` message caused by the " "recursion depth limit." msgstr "" -#: c-api/exceptions.rst:746 +#: c-api/exceptions.rst:790 msgid "This function is now also available in the limited API." msgstr "" -#: c-api/exceptions.rst:743 +#: c-api/exceptions.rst:787 msgid "" "Ends a :c:func:`Py_EnterRecursiveCall`. Must be called once for each " "*successful* invocation of :c:func:`Py_EnterRecursiveCall`." msgstr "" -#: c-api/exceptions.rst:749 +#: c-api/exceptions.rst:793 msgid "" "Properly implementing :c:member:`~PyTypeObject.tp_repr` for container types " "requires special recursion handling. In addition to protecting the stack, :" @@ -783,13 +837,13 @@ msgid "" "Effectively, these are the C equivalent to :func:`reprlib.recursive_repr`." msgstr "" -#: c-api/exceptions.rst:757 +#: c-api/exceptions.rst:801 msgid "" "Called at the beginning of the :c:member:`~PyTypeObject.tp_repr` " "implementation to detect cycles." msgstr "" -#: c-api/exceptions.rst:760 +#: c-api/exceptions.rst:804 msgid "" "If the object has already been processed, the function returns a positive " "integer. In that case the :c:member:`~PyTypeObject.tp_repr` implementation " @@ -797,30 +851,30 @@ msgid "" "`dict` objects return ``{...}`` and :class:`list` objects return ``[...]``." msgstr "" -#: c-api/exceptions.rst:766 +#: c-api/exceptions.rst:810 msgid "" "The function will return a negative integer if the recursion limit is " "reached. In that case the :c:member:`~PyTypeObject.tp_repr` implementation " "should typically return ``NULL``." msgstr "" -#: c-api/exceptions.rst:770 +#: c-api/exceptions.rst:814 msgid "" "Otherwise, the function returns zero and the :c:member:`~PyTypeObject." "tp_repr` implementation can continue normally." msgstr "" -#: c-api/exceptions.rst:775 +#: c-api/exceptions.rst:819 msgid "" "Ends a :c:func:`Py_ReprEnter`. Must be called once for each invocation of :" "c:func:`Py_ReprEnter` that returns zero." msgstr "" -#: c-api/exceptions.rst:782 +#: c-api/exceptions.rst:826 msgid "Standard Exceptions" msgstr "Exceptions standards" -#: c-api/exceptions.rst:784 +#: c-api/exceptions.rst:828 msgid "" "All standard Python exceptions are available as global variables whose names " "are ``PyExc_`` followed by the Python exception name. These have the type :" @@ -828,452 +882,452 @@ msgid "" "all the variables:" msgstr "" -#: c-api/exceptions.rst:978 c-api/exceptions.rst:1023 +#: c-api/exceptions.rst:1022 c-api/exceptions.rst:1067 msgid "C Name" msgstr "Nom C" -#: c-api/exceptions.rst:1023 +#: c-api/exceptions.rst:1067 msgid "Python Name" msgstr "Nom Python" -#: c-api/exceptions.rst:978 c-api/exceptions.rst:1023 +#: c-api/exceptions.rst:1022 c-api/exceptions.rst:1067 msgid "Notes" msgstr "Notes" -#: c-api/exceptions.rst:847 +#: c-api/exceptions.rst:891 msgid ":c:data:`PyExc_BaseException`" msgstr ":c:data:`PyExc_BaseException`" -#: c-api/exceptions.rst:847 +#: c-api/exceptions.rst:891 msgid ":exc:`BaseException`" msgstr ":exc:`BaseException`" -#: c-api/exceptions.rst:849 c-api/exceptions.rst:897 c-api/exceptions.rst:1025 +#: c-api/exceptions.rst:893 c-api/exceptions.rst:941 c-api/exceptions.rst:1069 msgid "\\(1)" msgstr "\\(1)" -#: c-api/exceptions.rst:849 +#: c-api/exceptions.rst:893 msgid ":c:data:`PyExc_Exception`" msgstr ":c:data:`PyExc_Exception`" -#: c-api/exceptions.rst:849 +#: c-api/exceptions.rst:893 msgid ":exc:`Exception`" msgstr ":exc:`Exception`" -#: c-api/exceptions.rst:851 +#: c-api/exceptions.rst:895 msgid ":c:data:`PyExc_ArithmeticError`" msgstr ":c:data:`PyExc_ArithmeticError`" -#: c-api/exceptions.rst:851 +#: c-api/exceptions.rst:895 msgid ":exc:`ArithmeticError`" msgstr ":exc:`ArithmeticError`" -#: c-api/exceptions.rst:853 +#: c-api/exceptions.rst:897 msgid ":c:data:`PyExc_AssertionError`" msgstr ":c:data:`PyExc_AssertionError`" -#: c-api/exceptions.rst:853 +#: c-api/exceptions.rst:897 msgid ":exc:`AssertionError`" msgstr ":exc:`AssertionError`" -#: c-api/exceptions.rst:855 +#: c-api/exceptions.rst:899 msgid ":c:data:`PyExc_AttributeError`" msgstr ":c:data:`PyExc_AttributeError`" -#: c-api/exceptions.rst:855 +#: c-api/exceptions.rst:899 msgid ":exc:`AttributeError`" msgstr ":exc:`AttributeError`" -#: c-api/exceptions.rst:857 +#: c-api/exceptions.rst:901 msgid ":c:data:`PyExc_BlockingIOError`" msgstr ":c:data:`PyExc_BlockingIOError`" -#: c-api/exceptions.rst:857 +#: c-api/exceptions.rst:901 msgid ":exc:`BlockingIOError`" msgstr ":exc:`BlockingIOError`" -#: c-api/exceptions.rst:859 +#: c-api/exceptions.rst:903 msgid ":c:data:`PyExc_BrokenPipeError`" msgstr ":c:data:`PyExc_BrokenPipeError`" -#: c-api/exceptions.rst:859 +#: c-api/exceptions.rst:903 msgid ":exc:`BrokenPipeError`" msgstr ":exc:`BrokenPipeError`" -#: c-api/exceptions.rst:861 +#: c-api/exceptions.rst:905 msgid ":c:data:`PyExc_BufferError`" msgstr ":c:data:`PyExc_BufferError`" -#: c-api/exceptions.rst:861 +#: c-api/exceptions.rst:905 msgid ":exc:`BufferError`" msgstr ":exc:`BufferError`" -#: c-api/exceptions.rst:863 +#: c-api/exceptions.rst:907 msgid ":c:data:`PyExc_ChildProcessError`" msgstr ":c:data:`PyExc_ChildProcessError`" -#: c-api/exceptions.rst:863 +#: c-api/exceptions.rst:907 msgid ":exc:`ChildProcessError`" msgstr ":exc:`ChildProcessError`" -#: c-api/exceptions.rst:865 +#: c-api/exceptions.rst:909 msgid ":c:data:`PyExc_ConnectionAbortedError`" msgstr ":c:data:`PyExc_ConnectionAbortedError`" -#: c-api/exceptions.rst:865 +#: c-api/exceptions.rst:909 msgid ":exc:`ConnectionAbortedError`" msgstr ":exc:`ConnectionAbortedError`" -#: c-api/exceptions.rst:867 +#: c-api/exceptions.rst:911 msgid ":c:data:`PyExc_ConnectionError`" msgstr ":c:data:`PyExc_ConnectionError`" -#: c-api/exceptions.rst:867 +#: c-api/exceptions.rst:911 msgid ":exc:`ConnectionError`" msgstr ":exc:`ConnectionError`" -#: c-api/exceptions.rst:869 +#: c-api/exceptions.rst:913 msgid ":c:data:`PyExc_ConnectionRefusedError`" msgstr ":c:data:`PyExc_ConnectionRefusedError`" -#: c-api/exceptions.rst:869 +#: c-api/exceptions.rst:913 msgid ":exc:`ConnectionRefusedError`" msgstr ":exc:`ConnectionRefusedError`" -#: c-api/exceptions.rst:871 +#: c-api/exceptions.rst:915 msgid ":c:data:`PyExc_ConnectionResetError`" msgstr ":c:data:`PyExc_ConnectionResetError`" -#: c-api/exceptions.rst:871 +#: c-api/exceptions.rst:915 msgid ":exc:`ConnectionResetError`" msgstr ":exc:`ConnectionResetError`" -#: c-api/exceptions.rst:873 +#: c-api/exceptions.rst:917 msgid ":c:data:`PyExc_EOFError`" msgstr ":c:data:`PyExc_EOFError`" -#: c-api/exceptions.rst:873 +#: c-api/exceptions.rst:917 msgid ":exc:`EOFError`" msgstr ":exc:`EOFError`" -#: c-api/exceptions.rst:875 +#: c-api/exceptions.rst:919 msgid ":c:data:`PyExc_FileExistsError`" msgstr ":c:data:`PyExc_FileExistsError`" -#: c-api/exceptions.rst:875 +#: c-api/exceptions.rst:919 msgid ":exc:`FileExistsError`" msgstr ":exc:`FileExistsError`" -#: c-api/exceptions.rst:877 +#: c-api/exceptions.rst:921 msgid ":c:data:`PyExc_FileNotFoundError`" msgstr ":c:data:`PyExc_FloatingPointError`" -#: c-api/exceptions.rst:877 +#: c-api/exceptions.rst:921 msgid ":exc:`FileNotFoundError`" msgstr ":exc:`FileNotFoundError`" -#: c-api/exceptions.rst:879 +#: c-api/exceptions.rst:923 msgid ":c:data:`PyExc_FloatingPointError`" msgstr ":c:data:`PyExc_FloatingPointError`" -#: c-api/exceptions.rst:879 +#: c-api/exceptions.rst:923 msgid ":exc:`FloatingPointError`" msgstr ":exc:`FloatingPointError`" -#: c-api/exceptions.rst:881 +#: c-api/exceptions.rst:925 msgid ":c:data:`PyExc_GeneratorExit`" msgstr ":c:data:`PyExc_GeneratorExit`" -#: c-api/exceptions.rst:881 +#: c-api/exceptions.rst:925 msgid ":exc:`GeneratorExit`" msgstr ":exc:`GeneratorExit`" -#: c-api/exceptions.rst:883 +#: c-api/exceptions.rst:927 msgid ":c:data:`PyExc_ImportError`" msgstr ":c:data:`PyExc_ImportError`" -#: c-api/exceptions.rst:883 +#: c-api/exceptions.rst:927 msgid ":exc:`ImportError`" msgstr ":exc:`ImportError`" -#: c-api/exceptions.rst:885 +#: c-api/exceptions.rst:929 msgid ":c:data:`PyExc_IndentationError`" msgstr ":c:data:`PyExc_IndentationError`" -#: c-api/exceptions.rst:885 +#: c-api/exceptions.rst:929 msgid ":exc:`IndentationError`" msgstr ":exc:`IndentationError`" -#: c-api/exceptions.rst:887 +#: c-api/exceptions.rst:931 msgid ":c:data:`PyExc_IndexError`" msgstr ":c:data:`PyExc_IndexError`" -#: c-api/exceptions.rst:887 +#: c-api/exceptions.rst:931 msgid ":exc:`IndexError`" msgstr ":exc:`IndexError`" -#: c-api/exceptions.rst:889 +#: c-api/exceptions.rst:933 msgid ":c:data:`PyExc_InterruptedError`" msgstr ":c:data:`PyExc_InterruptedError`" -#: c-api/exceptions.rst:889 +#: c-api/exceptions.rst:933 msgid ":exc:`InterruptedError`" msgstr ":exc:`InterruptedError`" -#: c-api/exceptions.rst:891 +#: c-api/exceptions.rst:935 msgid ":c:data:`PyExc_IsADirectoryError`" msgstr ":c:data:`PyExc_IsADirectoryError`" -#: c-api/exceptions.rst:891 +#: c-api/exceptions.rst:935 msgid ":exc:`IsADirectoryError`" msgstr ":exc:`IsADirectoryError`" -#: c-api/exceptions.rst:893 +#: c-api/exceptions.rst:937 msgid ":c:data:`PyExc_KeyError`" msgstr ":c:data:`PyExc_KeyError`" -#: c-api/exceptions.rst:893 +#: c-api/exceptions.rst:937 msgid ":exc:`KeyError`" msgstr ":exc:`KeyError`" -#: c-api/exceptions.rst:895 +#: c-api/exceptions.rst:939 msgid ":c:data:`PyExc_KeyboardInterrupt`" msgstr ":c:data:`PyExc_KeyboardInterrupt`" -#: c-api/exceptions.rst:895 +#: c-api/exceptions.rst:939 msgid ":exc:`KeyboardInterrupt`" msgstr ":exc:`KeyboardInterrupt`" -#: c-api/exceptions.rst:897 +#: c-api/exceptions.rst:941 msgid ":c:data:`PyExc_LookupError`" msgstr ":c:data:`PyExc_LookupError`" -#: c-api/exceptions.rst:897 +#: c-api/exceptions.rst:941 msgid ":exc:`LookupError`" msgstr ":exc:`LookupError`" -#: c-api/exceptions.rst:899 +#: c-api/exceptions.rst:943 msgid ":c:data:`PyExc_MemoryError`" msgstr ":c:data:`PyExc_MemoryError`" -#: c-api/exceptions.rst:899 +#: c-api/exceptions.rst:943 msgid ":exc:`MemoryError`" msgstr ":exc:`MemoryError`" -#: c-api/exceptions.rst:901 +#: c-api/exceptions.rst:945 #, fuzzy msgid ":c:data:`PyExc_ModuleNotFoundError`" msgstr ":c:data:`PyExc_ModuleNotFoundError`." -#: c-api/exceptions.rst:901 +#: c-api/exceptions.rst:945 msgid ":exc:`ModuleNotFoundError`" msgstr "" -#: c-api/exceptions.rst:903 +#: c-api/exceptions.rst:947 msgid ":c:data:`PyExc_NameError`" msgstr ":c:data:`PyExc_NameError`" -#: c-api/exceptions.rst:903 +#: c-api/exceptions.rst:947 msgid ":exc:`NameError`" msgstr ":exc:`NameError`" -#: c-api/exceptions.rst:905 +#: c-api/exceptions.rst:949 msgid ":c:data:`PyExc_NotADirectoryError`" msgstr ":c:data:`PyExc_NotADirectoryError`" -#: c-api/exceptions.rst:905 +#: c-api/exceptions.rst:949 msgid ":exc:`NotADirectoryError`" msgstr ":exc:`NotADirectoryError`" -#: c-api/exceptions.rst:907 +#: c-api/exceptions.rst:951 msgid ":c:data:`PyExc_NotImplementedError`" msgstr ":c:data:`PyExc_NotImplementedError`" -#: c-api/exceptions.rst:907 +#: c-api/exceptions.rst:951 msgid ":exc:`NotImplementedError`" msgstr ":exc:`NotImplementedError`" -#: c-api/exceptions.rst:909 +#: c-api/exceptions.rst:953 msgid ":c:data:`PyExc_OSError`" msgstr ":c:data:`PyExc_OSError`" -#: c-api/exceptions.rst:909 +#: c-api/exceptions.rst:953 msgid ":exc:`OSError`" msgstr ":exc:`OSError`" -#: c-api/exceptions.rst:911 +#: c-api/exceptions.rst:955 msgid ":c:data:`PyExc_OverflowError`" msgstr ":c:data:`PyExc_OverflowError`" -#: c-api/exceptions.rst:911 +#: c-api/exceptions.rst:955 msgid ":exc:`OverflowError`" msgstr ":exc:`OverflowError`" -#: c-api/exceptions.rst:913 +#: c-api/exceptions.rst:957 msgid ":c:data:`PyExc_PermissionError`" msgstr ":c:data:`PyExc_PermissionError`" -#: c-api/exceptions.rst:913 +#: c-api/exceptions.rst:957 msgid ":exc:`PermissionError`" msgstr ":exc:`PermissionError`" -#: c-api/exceptions.rst:915 +#: c-api/exceptions.rst:959 msgid ":c:data:`PyExc_ProcessLookupError`" msgstr ":c:data:`PyExc_ProcessLookupError`" -#: c-api/exceptions.rst:915 +#: c-api/exceptions.rst:959 msgid ":exc:`ProcessLookupError`" msgstr ":exc:`ProcessLookupError`" -#: c-api/exceptions.rst:917 +#: c-api/exceptions.rst:961 msgid ":c:data:`PyExc_RecursionError`" msgstr ":c:data:`PyExc_ReferenceError`" -#: c-api/exceptions.rst:917 +#: c-api/exceptions.rst:961 msgid ":exc:`RecursionError`" msgstr "" -#: c-api/exceptions.rst:919 +#: c-api/exceptions.rst:963 msgid ":c:data:`PyExc_ReferenceError`" msgstr ":c:data:`PyExc_ReferenceError`" -#: c-api/exceptions.rst:919 +#: c-api/exceptions.rst:963 msgid ":exc:`ReferenceError`" msgstr ":exc:`ReferenceError`" -#: c-api/exceptions.rst:919 +#: c-api/exceptions.rst:963 msgid "\\(2)" msgstr "\\(2)" -#: c-api/exceptions.rst:921 +#: c-api/exceptions.rst:965 msgid ":c:data:`PyExc_RuntimeError`" msgstr ":c:data:`PyExc_RuntimeError`" -#: c-api/exceptions.rst:921 +#: c-api/exceptions.rst:965 msgid ":exc:`RuntimeError`" msgstr ":exc:`RuntimeError`" -#: c-api/exceptions.rst:923 +#: c-api/exceptions.rst:967 msgid ":c:data:`PyExc_StopAsyncIteration`" msgstr ":c:data:`PyExc_StopAsyncIteration`" -#: c-api/exceptions.rst:923 +#: c-api/exceptions.rst:967 msgid ":exc:`StopAsyncIteration`" msgstr ":exc:`StopAsyncIteration`" -#: c-api/exceptions.rst:925 +#: c-api/exceptions.rst:969 msgid ":c:data:`PyExc_StopIteration`" msgstr ":c:data:`PyExc_StopIteration`" -#: c-api/exceptions.rst:925 +#: c-api/exceptions.rst:969 msgid ":exc:`StopIteration`" msgstr ":exc:`StopIteration`" -#: c-api/exceptions.rst:927 +#: c-api/exceptions.rst:971 msgid ":c:data:`PyExc_SyntaxError`" msgstr ":c:data:`PyExc_SyntaxError`" -#: c-api/exceptions.rst:927 +#: c-api/exceptions.rst:971 msgid ":exc:`SyntaxError`" msgstr ":exc:`SyntaxError`" -#: c-api/exceptions.rst:929 +#: c-api/exceptions.rst:973 msgid ":c:data:`PyExc_SystemError`" msgstr ":c:data:`PyExc_SystemError`" -#: c-api/exceptions.rst:929 +#: c-api/exceptions.rst:973 msgid ":exc:`SystemError`" msgstr ":exc:`SystemError`" -#: c-api/exceptions.rst:931 +#: c-api/exceptions.rst:975 msgid ":c:data:`PyExc_SystemExit`" msgstr ":c:data:`PyExc_SystemExit`" -#: c-api/exceptions.rst:931 +#: c-api/exceptions.rst:975 msgid ":exc:`SystemExit`" msgstr ":exc:`SystemExit`" -#: c-api/exceptions.rst:933 +#: c-api/exceptions.rst:977 msgid ":c:data:`PyExc_TabError`" msgstr ":c:data:`PyExc_TabError`" -#: c-api/exceptions.rst:933 +#: c-api/exceptions.rst:977 msgid ":exc:`TabError`" msgstr ":exc:`TabError`" -#: c-api/exceptions.rst:935 +#: c-api/exceptions.rst:979 msgid ":c:data:`PyExc_TimeoutError`" msgstr ":c:data:`PyExc_ImportError`" -#: c-api/exceptions.rst:935 +#: c-api/exceptions.rst:979 msgid ":exc:`TimeoutError`" msgstr ":exc:`TimeoutError`" -#: c-api/exceptions.rst:937 +#: c-api/exceptions.rst:981 msgid ":c:data:`PyExc_TypeError`" msgstr ":c:data:`PyExc_TypeError`" -#: c-api/exceptions.rst:937 +#: c-api/exceptions.rst:981 msgid ":exc:`TypeError`" msgstr ":exc:`TypeError`" -#: c-api/exceptions.rst:939 +#: c-api/exceptions.rst:983 msgid ":c:data:`PyExc_UnboundLocalError`" msgstr ":c:data:`PyExc_UnboundLocalError`" -#: c-api/exceptions.rst:939 +#: c-api/exceptions.rst:983 msgid ":exc:`UnboundLocalError`" msgstr ":exc:`UnboundLocalError`" -#: c-api/exceptions.rst:941 +#: c-api/exceptions.rst:985 msgid ":c:data:`PyExc_UnicodeDecodeError`" msgstr ":c:data:`PyExc_UnicodeDecodeError`" -#: c-api/exceptions.rst:941 +#: c-api/exceptions.rst:985 msgid ":exc:`UnicodeDecodeError`" msgstr ":exc:`UnicodeDecodeError`" -#: c-api/exceptions.rst:943 +#: c-api/exceptions.rst:987 msgid ":c:data:`PyExc_UnicodeEncodeError`" msgstr ":c:data:`PyExc_UnicodeEncodeError`" -#: c-api/exceptions.rst:943 +#: c-api/exceptions.rst:987 msgid ":exc:`UnicodeEncodeError`" msgstr ":exc:`UnicodeEncodeError`" -#: c-api/exceptions.rst:945 +#: c-api/exceptions.rst:989 msgid ":c:data:`PyExc_UnicodeError`" msgstr ":c:data:`PyExc_UnicodeError`" -#: c-api/exceptions.rst:945 +#: c-api/exceptions.rst:989 msgid ":exc:`UnicodeError`" msgstr ":exc:`UnicodeError`" -#: c-api/exceptions.rst:947 +#: c-api/exceptions.rst:991 msgid ":c:data:`PyExc_UnicodeTranslateError`" msgstr ":c:data:`PyExc_UnicodeTranslateError`" -#: c-api/exceptions.rst:947 +#: c-api/exceptions.rst:991 msgid ":exc:`UnicodeTranslateError`" msgstr ":exc:`UnicodeTranslateError`" -#: c-api/exceptions.rst:949 +#: c-api/exceptions.rst:993 msgid ":c:data:`PyExc_ValueError`" msgstr ":c:data:`PyExc_ValueError`" -#: c-api/exceptions.rst:949 +#: c-api/exceptions.rst:993 msgid ":exc:`ValueError`" msgstr ":exc:`ValueError`" -#: c-api/exceptions.rst:951 +#: c-api/exceptions.rst:995 msgid ":c:data:`PyExc_ZeroDivisionError`" msgstr ":c:data:`PyExc_ZeroDivisionError`" -#: c-api/exceptions.rst:951 +#: c-api/exceptions.rst:995 msgid ":exc:`ZeroDivisionError`" msgstr ":exc:`ZeroDivisionError`" -#: c-api/exceptions.rst:954 +#: c-api/exceptions.rst:998 msgid "" ":c:data:`PyExc_BlockingIOError`, :c:data:`PyExc_BrokenPipeError`, :c:data:" "`PyExc_ChildProcessError`, :c:data:`PyExc_ConnectionError`, :c:data:" @@ -1285,57 +1339,57 @@ msgid "" "`PyExc_TimeoutError` were introduced following :pep:`3151`." msgstr "" -#: c-api/exceptions.rst:964 +#: c-api/exceptions.rst:1008 msgid ":c:data:`PyExc_StopAsyncIteration` and :c:data:`PyExc_RecursionError`." msgstr ":c:data:`PyExc_StopAsyncIteration` et :c:data:`PyExc_RecursionError`." -#: c-api/exceptions.rst:967 +#: c-api/exceptions.rst:1011 msgid ":c:data:`PyExc_ModuleNotFoundError`." msgstr ":c:data:`PyExc_ModuleNotFoundError`." -#: c-api/exceptions.rst:970 +#: c-api/exceptions.rst:1014 msgid "These are compatibility aliases to :c:data:`PyExc_OSError`:" msgstr "" -#: c-api/exceptions.rst:980 +#: c-api/exceptions.rst:1024 msgid ":c:data:`PyExc_EnvironmentError`" msgstr ":c:data:`PyExc_EnvironmentError`" -#: c-api/exceptions.rst:982 +#: c-api/exceptions.rst:1026 msgid ":c:data:`PyExc_IOError`" msgstr ":c:data:`PyExc_IOError`" -#: c-api/exceptions.rst:984 +#: c-api/exceptions.rst:1028 msgid ":c:data:`PyExc_WindowsError`" msgstr ":c:data:`PyExc_WindowsError`" -#: c-api/exceptions.rst:984 +#: c-api/exceptions.rst:1028 msgid "\\(3)" msgstr "\\(3)" -#: c-api/exceptions.rst:987 +#: c-api/exceptions.rst:1031 msgid "These aliases used to be separate exception types." msgstr "" -#: c-api/exceptions.rst:1051 +#: c-api/exceptions.rst:1095 msgid "Notes:" msgstr "Notes :" -#: c-api/exceptions.rst:993 +#: c-api/exceptions.rst:1037 msgid "This is a base class for other standard exceptions." msgstr "C'est la classe de base pour les autres exceptions standards." -#: c-api/exceptions.rst:996 +#: c-api/exceptions.rst:1040 msgid "" "Only defined on Windows; protect code that uses this by testing that the " "preprocessor macro ``MS_WINDOWS`` is defined." msgstr "" -#: c-api/exceptions.rst:1002 +#: c-api/exceptions.rst:1046 msgid "Standard Warning Categories" msgstr "" -#: c-api/exceptions.rst:1004 +#: c-api/exceptions.rst:1048 msgid "" "All standard Python warning categories are available as global variables " "whose names are ``PyExc_`` followed by the Python exception name. These have " @@ -1343,98 +1397,98 @@ msgid "" "here are all the variables:" msgstr "" -#: c-api/exceptions.rst:1025 +#: c-api/exceptions.rst:1069 msgid ":c:data:`PyExc_Warning`" msgstr ":c:data:`PyExc_Warning`" -#: c-api/exceptions.rst:1025 +#: c-api/exceptions.rst:1069 msgid ":exc:`Warning`" msgstr ":exc:`Warning`" -#: c-api/exceptions.rst:1027 +#: c-api/exceptions.rst:1071 msgid ":c:data:`PyExc_BytesWarning`" msgstr ":c:data:`PyExc_BytesWarning`" -#: c-api/exceptions.rst:1027 +#: c-api/exceptions.rst:1071 msgid ":exc:`BytesWarning`" msgstr ":exc:`BytesWarning`" -#: c-api/exceptions.rst:1029 +#: c-api/exceptions.rst:1073 msgid ":c:data:`PyExc_DeprecationWarning`" msgstr ":c:data:`PyExc_DeprecationWarning`" -#: c-api/exceptions.rst:1029 +#: c-api/exceptions.rst:1073 msgid ":exc:`DeprecationWarning`" msgstr ":exc:`DeprecationWarning`" -#: c-api/exceptions.rst:1031 +#: c-api/exceptions.rst:1075 msgid ":c:data:`PyExc_FutureWarning`" msgstr ":c:data:`PyExc_FutureWarning`" -#: c-api/exceptions.rst:1031 +#: c-api/exceptions.rst:1075 msgid ":exc:`FutureWarning`" msgstr ":exc:`FutureWarning`" -#: c-api/exceptions.rst:1033 +#: c-api/exceptions.rst:1077 msgid ":c:data:`PyExc_ImportWarning`" msgstr ":c:data:`PyExc_ImportWarning`" -#: c-api/exceptions.rst:1033 +#: c-api/exceptions.rst:1077 msgid ":exc:`ImportWarning`" msgstr ":exc:`ImportWarning`" -#: c-api/exceptions.rst:1035 +#: c-api/exceptions.rst:1079 msgid ":c:data:`PyExc_PendingDeprecationWarning`" msgstr ":c:data:`PyExc_PendingDeprecationWarning`" -#: c-api/exceptions.rst:1035 +#: c-api/exceptions.rst:1079 msgid ":exc:`PendingDeprecationWarning`" msgstr ":exc:`PendingDeprecationWarning`" -#: c-api/exceptions.rst:1037 +#: c-api/exceptions.rst:1081 msgid ":c:data:`PyExc_ResourceWarning`" msgstr ":c:data:`PyExc_ResourceWarning`" -#: c-api/exceptions.rst:1037 +#: c-api/exceptions.rst:1081 msgid ":exc:`ResourceWarning`" msgstr ":exc:`ResourceWarning`" -#: c-api/exceptions.rst:1039 +#: c-api/exceptions.rst:1083 msgid ":c:data:`PyExc_RuntimeWarning`" msgstr ":c:data:`PyExc_RuntimeWarning`" -#: c-api/exceptions.rst:1039 +#: c-api/exceptions.rst:1083 msgid ":exc:`RuntimeWarning`" msgstr ":exc:`RuntimeWarning`" -#: c-api/exceptions.rst:1041 +#: c-api/exceptions.rst:1085 msgid ":c:data:`PyExc_SyntaxWarning`" msgstr ":c:data:`PyExc_SyntaxWarning`" -#: c-api/exceptions.rst:1041 +#: c-api/exceptions.rst:1085 msgid ":exc:`SyntaxWarning`" msgstr ":exc:`SyntaxWarning`" -#: c-api/exceptions.rst:1043 +#: c-api/exceptions.rst:1087 msgid ":c:data:`PyExc_UnicodeWarning`" msgstr ":c:data:`PyExc_UnicodeWarning`" -#: c-api/exceptions.rst:1043 +#: c-api/exceptions.rst:1087 msgid ":exc:`UnicodeWarning`" msgstr ":exc:`UnicodeWarning`" -#: c-api/exceptions.rst:1045 +#: c-api/exceptions.rst:1089 msgid ":c:data:`PyExc_UserWarning`" msgstr ":c:data:`PyExc_UserWarning`" -#: c-api/exceptions.rst:1045 +#: c-api/exceptions.rst:1089 msgid ":exc:`UserWarning`" msgstr ":exc:`UserWarning`" -#: c-api/exceptions.rst:1048 +#: c-api/exceptions.rst:1092 msgid ":c:data:`PyExc_ResourceWarning`." msgstr ":c:data:`PyExc_ResourceWarning`." -#: c-api/exceptions.rst:1054 +#: c-api/exceptions.rst:1098 msgid "This is a base class for other standard warning categories." msgstr "C'est la classe de base pour les autres catégories de *warning*." diff --git a/c-api/function.po b/c-api/function.po index c60e6d04a..aaff98580 100644 --- a/c-api/function.po +++ b/c-api/function.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -73,46 +73,51 @@ msgstr "" #: c-api/function.rst:64 msgid "" -"Return the *__module__* attribute of the function object *op*. This is " -"normally a string containing the module name, but can be set to any other " -"object by Python code." +"Return a :term:`borrowed reference` to the *__module__* attribute of the " +"function object *op*. It can be *NULL*." msgstr "" -#: c-api/function.rst:71 +#: c-api/function.rst:67 +msgid "" +"This is normally a string containing the module name, but can be set to any " +"other object by Python code." +msgstr "" + +#: c-api/function.rst:73 msgid "" "Return the argument default values of the function object *op*. This can be " "a tuple of arguments or ``NULL``." msgstr "" -#: c-api/function.rst:77 +#: c-api/function.rst:79 msgid "" "Set the argument default values for the function object *op*. *defaults* " "must be ``Py_None`` or a tuple." msgstr "" -#: c-api/function.rst:94 c-api/function.rst:108 +#: c-api/function.rst:96 c-api/function.rst:110 msgid "Raises :exc:`SystemError` and returns ``-1`` on failure." msgstr "" -#: c-api/function.rst:85 +#: c-api/function.rst:87 msgid "" "Return the closure associated with the function object *op*. This can be " "``NULL`` or a tuple of cell objects." msgstr "" -#: c-api/function.rst:91 +#: c-api/function.rst:93 msgid "" "Set the closure associated with the function object *op*. *closure* must be " "``Py_None`` or a tuple of cell objects." msgstr "" -#: c-api/function.rst:99 +#: c-api/function.rst:101 msgid "" "Return the annotations of the function object *op*. This can be a mutable " "dictionary or ``NULL``." msgstr "" -#: c-api/function.rst:105 +#: c-api/function.rst:107 msgid "" "Set the annotations for the function object *op*. *annotations* must be a " "dictionary or ``Py_None``." diff --git a/c-api/gcsupport.po b/c-api/gcsupport.po index 7d02c6dea..7647b9fa7 100644 --- a/c-api/gcsupport.po +++ b/c-api/gcsupport.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -239,3 +239,45 @@ msgid "" "collector will call this method if it detects that this object is involved " "in a reference cycle." msgstr "" + +#: c-api/gcsupport.rst:191 +msgid "Controlling the Garbage Collector State" +msgstr "" + +#: c-api/gcsupport.rst:193 +msgid "" +"The C-API provides the following functions for controlling garbage " +"collection runs." +msgstr "" + +#: c-api/gcsupport.rst:198 +msgid "" +"Perform a full garbage collection, if the garbage collector is enabled. " +"(Note that :func:`gc.collect` runs it unconditionally.)" +msgstr "" + +#: c-api/gcsupport.rst:201 +msgid "" +"Returns the number of collected + unreachable objects which cannot be " +"collected. If the garbage collector is disabled or already collecting, " +"returns ``0`` immediately. Errors during garbage collection are passed to :" +"data:`sys.unraisablehook`. This function does not raise exceptions." +msgstr "" + +#: c-api/gcsupport.rst:211 +msgid "" +"Enable the garbage collector: similar to :func:`gc.enable`. Returns the " +"previous state, 0 for disabled and 1 for enabled." +msgstr "" + +#: c-api/gcsupport.rst:219 +msgid "" +"Disable the garbage collector: similar to :func:`gc.disable`. Returns the " +"previous state, 0 for disabled and 1 for enabled." +msgstr "" + +#: c-api/gcsupport.rst:227 +msgid "" +"Query the state of the garbage collector: similar to :func:`gc.isenabled`. " +"Returns the current state, 0 for disabled and 1 for enabled." +msgstr "" diff --git a/c-api/import.po b/c-api/import.po index 339895db9..c3945cabc 100644 --- a/c-api/import.po +++ b/c-api/import.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -311,6 +311,13 @@ msgid "" "`name` field; failure to provide the sentinel value can result in a memory " "fault. Returns ``0`` on success or ``-1`` if insufficient memory could be " "allocated to extend the internal table. In the event of failure, no modules " -"are added to the internal table. This should be called before :c:func:" +"are added to the internal table. This must be called before :c:func:" "`Py_Initialize`." msgstr "" + +#: c-api/import.rst:304 +msgid "" +"If Python is initialized multiple times, :c:func:`PyImport_AppendInittab` " +"or :c:func:`PyImport_ExtendInittab` must be called before each Python " +"initialization." +msgstr "" diff --git a/c-api/init.po b/c-api/init.po index 5da8f220d..d2233e7b8 100644 --- a/c-api/init.po +++ b/c-api/init.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-11-29 18:22+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -289,42 +289,43 @@ msgstr "" #: c-api/init.rst:154 msgid "" -"If the flag is non-zero, use the ``mbcs`` encoding instead of the UTF-8 " -"encoding for the filesystem encoding." +"If the flag is non-zero, use the ``mbcs`` encoding with ``replace`` error " +"handler, instead of the UTF-8 encoding with ``surrogatepass`` error handler, " +"for the :term:`filesystem encoding and error handler`." msgstr "" -#: c-api/init.rst:157 +#: c-api/init.rst:158 msgid "" "Set to ``1`` if the :envvar:`PYTHONLEGACYWINDOWSFSENCODING` environment " "variable is set to a non-empty string." msgstr "" -#: c-api/init.rst:160 +#: c-api/init.rst:161 msgid "See :pep:`529` for more details." msgstr "Voir la :pep:`529` pour plus d'informations." -#: c-api/init.rst:174 +#: c-api/init.rst:175 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: c-api/init.rst:166 +#: c-api/init.rst:167 msgid "" "If the flag is non-zero, use :class:`io.FileIO` instead of :class:" "`WindowsConsoleIO` for :mod:`sys` standard streams." msgstr "" -#: c-api/init.rst:169 +#: c-api/init.rst:170 msgid "" "Set to ``1`` if the :envvar:`PYTHONLEGACYWINDOWSSTDIO` environment variable " "is set to a non-empty string." msgstr "" -#: c-api/init.rst:172 +#: c-api/init.rst:173 #, fuzzy msgid "See :pep:`528` for more details." msgstr "Voir la :pep:`529` pour plus d'informations." -#: c-api/init.rst:178 +#: c-api/init.rst:179 msgid "" "Disable the import of the module :mod:`site` and the site-dependent " "manipulations of :data:`sys.path` that it entails. Also disable these " @@ -336,11 +337,11 @@ msgstr "" "mod:`site` est importé explicitement plus tard (appelez :func:`site.main` si " "vous voulez les déclencher)." -#: c-api/init.rst:183 +#: c-api/init.rst:184 msgid "Set by the :option:`-S` option." msgstr "" -#: c-api/init.rst:187 +#: c-api/init.rst:188 msgid "" "Don't add the :data:`user site-packages directory ` to :data:" "`sys.path`." @@ -348,38 +349,38 @@ msgstr "" "N'ajoute pas le répertoire utilisateur :data:`site-packages ` à :data:`sys.path`." -#: c-api/init.rst:190 +#: c-api/init.rst:191 msgid "" "Set by the :option:`-s` and :option:`-I` options, and the :envvar:" "`PYTHONNOUSERSITE` environment variable." msgstr "" -#: c-api/init.rst:195 +#: c-api/init.rst:196 msgid "" "Set by the :option:`-O` option and the :envvar:`PYTHONOPTIMIZE` environment " "variable." msgstr "" -#: c-api/init.rst:200 +#: c-api/init.rst:201 msgid "" "Don't display the copyright and version messages even in interactive mode." msgstr "N'affiche pas le copyright et la version, même en mode interactif." -#: c-api/init.rst:202 +#: c-api/init.rst:203 msgid "Set by the :option:`-q` option." msgstr "" -#: c-api/init.rst:208 +#: c-api/init.rst:209 msgid "Force the stdout and stderr streams to be unbuffered." msgstr "" -#: c-api/init.rst:210 +#: c-api/init.rst:211 msgid "" "Set by the :option:`-u` option and the :envvar:`PYTHONUNBUFFERED` " "environment variable." msgstr "" -#: c-api/init.rst:215 +#: c-api/init.rst:216 msgid "" "Print a message each time a module is initialized, showing the place " "(filename or built-in module) from which it is loaded. If greater or equal " @@ -387,24 +388,24 @@ msgid "" "for a module. Also provides information on module cleanup at exit." msgstr "" -#: c-api/init.rst:220 +#: c-api/init.rst:221 msgid "" "Set by the :option:`-v` option and the :envvar:`PYTHONVERBOSE` environment " "variable." msgstr "" -#: c-api/init.rst:225 +#: c-api/init.rst:226 msgid "Initializing and finalizing the interpreter" msgstr "" -#: c-api/init.rst:243 +#: c-api/init.rst:244 msgid "" "Initialize the Python interpreter. In an application embedding Python, " "this should be called before using any other Python/C API functions; see :" "ref:`Before Python Initialization ` for the few exceptions." msgstr "" -#: c-api/init.rst:247 +#: c-api/init.rst:248 msgid "" "This initializes the table of loaded modules (``sys.modules``), and creates " "the fundamental modules :mod:`builtins`, :mod:`__main__` and :mod:`sys`. It " @@ -414,27 +415,27 @@ msgid "" "There is no return value; it is a fatal error if the initialization fails." msgstr "" -#: c-api/init.rst:256 +#: c-api/init.rst:257 msgid "" "On Windows, changes the console mode from ``O_TEXT`` to ``O_BINARY``, which " "will also affect non-Python uses of the console using the C Runtime." msgstr "" -#: c-api/init.rst:262 +#: c-api/init.rst:263 msgid "" "This function works like :c:func:`Py_Initialize` if *initsigs* is ``1``. If " "*initsigs* is ``0``, it skips initialization registration of signal " "handlers, which might be useful when Python is embedded." msgstr "" -#: c-api/init.rst:269 +#: c-api/init.rst:270 msgid "" "Return true (nonzero) when the Python interpreter has been initialized, " "false (zero) if not. After :c:func:`Py_FinalizeEx` is called, this returns " "false until :c:func:`Py_Initialize` is called again." msgstr "" -#: c-api/init.rst:276 +#: c-api/init.rst:277 msgid "" "Undo all initializations made by :c:func:`Py_Initialize` and subsequent use " "of Python/C API functions, and destroy all sub-interpreters (see :c:func:" @@ -446,7 +447,7 @@ msgid "" "(flushing buffered data), ``-1`` is returned." msgstr "" -#: c-api/init.rst:285 +#: c-api/init.rst:286 msgid "" "This function is provided for a number of reasons. An embedding application " "might want to restart Python without having to restart the application " @@ -457,7 +458,7 @@ msgid "" "Python before exiting from the application." msgstr "" -#: c-api/init.rst:293 +#: c-api/init.rst:294 msgid "" "**Bugs and caveats:** The destruction of modules and objects in modules is " "done in random order; this may cause destructors (:meth:`__del__` methods) " @@ -472,60 +473,60 @@ msgid "" "than once." msgstr "" -#: c-api/init.rst:304 +#: c-api/init.rst:305 msgid "" "Raises an :ref:`auditing event ` ``cpython." "_PySys_ClearAuditHooks`` with no arguments." msgstr "" -#: c-api/init.rst:310 +#: c-api/init.rst:311 msgid "" "This is a backwards-compatible version of :c:func:`Py_FinalizeEx` that " "disregards the return value." msgstr "" -#: c-api/init.rst:315 +#: c-api/init.rst:316 msgid "Process-wide parameters" msgstr "" -#: c-api/init.rst:325 +#: c-api/init.rst:326 msgid "" "This function should be called before :c:func:`Py_Initialize`, if it is " "called at all. It specifies which encoding and error handling to use with " "standard IO, with the same meanings as in :func:`str.encode`." msgstr "" -#: c-api/init.rst:329 +#: c-api/init.rst:330 msgid "" "It overrides :envvar:`PYTHONIOENCODING` values, and allows embedding code to " "control IO encoding when the environment variable does not work." msgstr "" -#: c-api/init.rst:332 +#: c-api/init.rst:333 msgid "" "*encoding* and/or *errors* may be ``NULL`` to use :envvar:`PYTHONIOENCODING` " "and/or default values (depending on other settings)." msgstr "" -#: c-api/init.rst:336 +#: c-api/init.rst:337 msgid "" "Note that :data:`sys.stderr` always uses the \"backslashreplace\" error " "handler, regardless of this (or any other) setting." msgstr "" -#: c-api/init.rst:339 +#: c-api/init.rst:340 msgid "" "If :c:func:`Py_FinalizeEx` is called, this function will need to be called " "again in order to affect subsequent calls to :c:func:`Py_Initialize`." msgstr "" -#: c-api/init.rst:342 +#: c-api/init.rst:343 msgid "" "Returns ``0`` if successful, a nonzero value on error (e.g. calling after " "the interpreter has already been initialized)." msgstr "" -#: c-api/init.rst:355 +#: c-api/init.rst:356 msgid "" "This function should be called before :c:func:`Py_Initialize` is called for " "the first time, if it is called at all. It tells the interpreter the value " @@ -539,20 +540,30 @@ msgid "" "this storage." msgstr "" -#: c-api/init.rst:480 c-api/init.rst:613 c-api/init.rst:630 +#: c-api/init.rst:511 c-api/init.rst:644 c-api/init.rst:661 msgid "" "Use :c:func:`Py_DecodeLocale` to decode a bytes string to get a :c:type:" "`wchar_*` string." msgstr "" -#: c-api/init.rst:374 +#: c-api/init.rst:375 msgid "" "Return the program name set with :c:func:`Py_SetProgramName`, or the " "default. The returned string points into static storage; the caller should " "not modify its value." msgstr "" -#: c-api/init.rst:381 +#: c-api/init.rst:398 c-api/init.rst:458 c-api/init.rst:671 +msgid "" +"This function should not be called before :c:func:`Py_Initialize`, otherwise " +"it returns ``NULL``." +msgstr "" + +#: c-api/init.rst:401 c-api/init.rst:461 c-api/init.rst:674 +msgid "It now returns ``NULL`` if called before :c:func:`Py_Initialize`." +msgstr "" + +#: c-api/init.rst:388 msgid "" "Return the *prefix* for installed platform-independent files. This is " "derived through a number of complicated rules from the program name set " @@ -566,7 +577,7 @@ msgid "" "function." msgstr "" -#: c-api/init.rst:394 +#: c-api/init.rst:407 msgid "" "Return the *exec-prefix* for installed platform-*dependent* files. This is " "derived through a number of complicated rules from the program name set " @@ -580,7 +591,7 @@ msgid "" "on Unix." msgstr "" -#: c-api/init.rst:404 +#: c-api/init.rst:417 msgid "" "Background: The exec-prefix differs from the prefix when platform dependent " "files (such as executables and shared libraries) are installed in a " @@ -589,7 +600,7 @@ msgid "" "independent may be installed in :file:`/usr/local`." msgstr "" -#: c-api/init.rst:410 +#: c-api/init.rst:423 msgid "" "Generally speaking, a platform is a combination of hardware and software " "families, e.g. Sparc machines running the Solaris 2.x operating system are " @@ -603,7 +614,7 @@ msgid "" "independent from the Python version by which they were compiled!)." msgstr "" -#: c-api/init.rst:421 +#: c-api/init.rst:434 msgid "" "System administrators will know how to configure the :program:`mount` or :" "program:`automount` programs to share :file:`/usr/local` between platforms " @@ -611,7 +622,7 @@ msgid "" "platform." msgstr "" -#: c-api/init.rst:433 +#: c-api/init.rst:452 msgid "" "Return the full program name of the Python executable; this is computed as " "a side-effect of deriving the default module search path from the program " @@ -620,31 +631,31 @@ msgid "" "available to Python code as ``sys.executable``." msgstr "" -#: c-api/init.rst:447 +#: c-api/init.rst:472 msgid "" "Return the default module search path; this is computed from the program " "name (set by :c:func:`Py_SetProgramName` above) and some environment " "variables. The returned string consists of a series of directory names " "separated by a platform dependent delimiter character. The delimiter " -"character is ``':'`` on Unix and Mac OS X, ``';'`` on Windows. The returned " +"character is ``':'`` on Unix and macOS, ``';'`` on Windows. The returned " "string points into static storage; the caller should not modify its value. " "The list :data:`sys.path` is initialized with this value on interpreter " "startup; it can be (and usually is) modified later to change the search path " "for loading modules." msgstr "" -#: c-api/init.rst:467 +#: c-api/init.rst:498 msgid "" "Set the default module search path. If this function is called before :c:" "func:`Py_Initialize`, then :c:func:`Py_GetPath` won't attempt to compute a " "default search path but uses the one provided instead. This is useful if " "Python is embedded by an application that has full knowledge of the location " "of all modules. The path components should be separated by the platform " -"dependent delimiter character, which is ``':'`` on Unix and Mac OS X, " -"``';'`` on Windows." +"dependent delimiter character, which is ``':'`` on Unix and macOS, ``';'`` " +"on Windows." msgstr "" -#: c-api/init.rst:475 +#: c-api/init.rst:506 msgid "" "This also causes :data:`sys.executable` to be set to the program full path " "(see :c:func:`Py_GetProgramFullPath`) and for :data:`sys.prefix` and :data:" @@ -652,25 +663,25 @@ msgid "" "required after calling :c:func:`Py_Initialize`." msgstr "" -#: c-api/init.rst:483 +#: c-api/init.rst:514 msgid "" "The path argument is copied internally, so the caller may free it after the " "call completes." msgstr "" -#: c-api/init.rst:486 +#: c-api/init.rst:517 msgid "" "The program full path is now used for :data:`sys.executable`, instead of the " "program name." msgstr "" -#: c-api/init.rst:493 +#: c-api/init.rst:524 msgid "" "Return the version of this Python interpreter. This is a string that looks " "something like ::" msgstr "" -#: c-api/init.rst:500 +#: c-api/init.rst:531 msgid "" "The first word (up to the first space character) is the current Python " "version; the first three characters are the major and minor version " @@ -679,53 +690,53 @@ msgid "" "as :data:`sys.version`." msgstr "" -#: c-api/init.rst:510 +#: c-api/init.rst:541 msgid "" "Return the platform identifier for the current platform. On Unix, this is " "formed from the \"official\" name of the operating system, converted to " "lower case, followed by the major revision number; e.g., for Solaris 2.x, " -"which is also known as SunOS 5.x, the value is ``'sunos5'``. On Mac OS X, " -"it is ``'darwin'``. On Windows, it is ``'win'``. The returned string " -"points into static storage; the caller should not modify its value. The " -"value is available to Python code as ``sys.platform``." +"which is also known as SunOS 5.x, the value is ``'sunos5'``. On macOS, it " +"is ``'darwin'``. On Windows, it is ``'win'``. The returned string points " +"into static storage; the caller should not modify its value. The value is " +"available to Python code as ``sys.platform``." msgstr "" -#: c-api/init.rst:521 +#: c-api/init.rst:552 msgid "" "Return the official copyright string for the current Python version, for " "example" msgstr "" -#: c-api/init.rst:523 +#: c-api/init.rst:554 msgid "``'Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam'``" msgstr "" -#: c-api/init.rst:527 +#: c-api/init.rst:558 msgid "" "The returned string points into static storage; the caller should not modify " "its value. The value is available to Python code as ``sys.copyright``." msgstr "" -#: c-api/init.rst:533 +#: c-api/init.rst:564 msgid "" "Return an indication of the compiler used to build the current Python " "version, in square brackets, for example::" msgstr "" -#: c-api/init.rst:554 +#: c-api/init.rst:585 msgid "" "The returned string points into static storage; the caller should not modify " "its value. The value is available to Python code as part of the variable " "``sys.version``." msgstr "" -#: c-api/init.rst:547 +#: c-api/init.rst:578 msgid "" "Return information about the sequence number and build date and time of the " "current Python interpreter instance, for example ::" msgstr "" -#: c-api/init.rst:566 +#: c-api/init.rst:597 msgid "" "Set :data:`sys.argv` based on *argc* and *argv*. These parameters are " "similar to those passed to the program's :c:func:`main` function with the " @@ -736,28 +747,28 @@ msgid "" "fatal condition is signalled using :c:func:`Py_FatalError`." msgstr "" -#: c-api/init.rst:574 +#: c-api/init.rst:605 msgid "" "If *updatepath* is zero, this is all the function does. If *updatepath* is " "non-zero, the function also modifies :data:`sys.path` according to the " "following algorithm:" msgstr "" -#: c-api/init.rst:578 +#: c-api/init.rst:609 msgid "" "If the name of an existing script is passed in ``argv[0]``, the absolute " "path of the directory where the script is located is prepended to :data:`sys." "path`." msgstr "" -#: c-api/init.rst:581 +#: c-api/init.rst:612 msgid "" "Otherwise (that is, if *argc* is ``0`` or ``argv[0]`` doesn't point to an " "existing file name), an empty string is prepended to :data:`sys.path`, which " "is the same as prepending the current working directory (``\".\"``)." msgstr "" -#: c-api/init.rst:590 +#: c-api/init.rst:621 msgid "" "It is recommended that applications embedding the Python interpreter for " "purposes other than executing a single script pass ``0`` as *updatepath*, " @@ -765,32 +776,32 @@ msgid "" "`_." msgstr "" -#: c-api/init.rst:595 +#: c-api/init.rst:626 msgid "" "On versions before 3.1.3, you can achieve the same effect by manually " "popping the first :data:`sys.path` element after having called :c:func:" "`PySys_SetArgv`, for example using::" msgstr "" -#: c-api/init.rst:609 +#: c-api/init.rst:640 msgid "" "This function works like :c:func:`PySys_SetArgvEx` with *updatepath* set to " "``1`` unless the :program:`python` interpreter was started with the :option:" "`-I`." msgstr "" -#: c-api/init.rst:616 +#: c-api/init.rst:647 msgid "The *updatepath* value depends on :option:`-I`." msgstr "" -#: c-api/init.rst:621 +#: c-api/init.rst:652 msgid "" "Set the default \"home\" directory, that is, the location of the standard " "Python libraries. See :envvar:`PYTHONHOME` for the meaning of the argument " "string." msgstr "" -#: c-api/init.rst:625 +#: c-api/init.rst:656 msgid "" "The argument should point to a zero-terminated character string in static " "storage whose contents will not change for the duration of the program's " @@ -798,18 +809,18 @@ msgid "" "this storage." msgstr "" -#: c-api/init.rst:636 +#: c-api/init.rst:667 msgid "" "Return the default \"home\", that is, the value set by a previous call to :c:" "func:`Py_SetPythonHome`, or the value of the :envvar:`PYTHONHOME` " "environment variable if it is set." msgstr "" -#: c-api/init.rst:644 +#: c-api/init.rst:681 msgid "Thread State and the Global Interpreter Lock" msgstr "" -#: c-api/init.rst:651 +#: c-api/init.rst:688 msgid "" "The Python interpreter is not fully thread-safe. In order to support multi-" "threaded Python programs, there's a global lock, called the :term:`global " @@ -821,7 +832,7 @@ msgid "" "once instead of twice." msgstr "" -#: c-api/init.rst:661 +#: c-api/init.rst:698 msgid "" "Therefore, the rule exists that only the thread that has acquired the :term:" "`GIL` may operate on Python objects or call Python/C API functions. In order " @@ -831,7 +842,7 @@ msgid "" "a file, so that other Python threads can run in the meantime." msgstr "" -#: c-api/init.rst:672 +#: c-api/init.rst:709 msgid "" "The Python interpreter keeps some thread-specific bookkeeping information " "inside a data structure called :c:type:`PyThreadState`. There's also one " @@ -839,32 +850,32 @@ msgid "" "retrieved using :c:func:`PyThreadState_Get`." msgstr "" -#: c-api/init.rst:678 +#: c-api/init.rst:715 msgid "Releasing the GIL from extension code" msgstr "" -#: c-api/init.rst:680 +#: c-api/init.rst:717 msgid "" "Most extension code manipulating the :term:`GIL` has the following simple " "structure::" msgstr "" -#: c-api/init.rst:689 +#: c-api/init.rst:726 msgid "This is so common that a pair of macros exists to simplify it::" msgstr "" -#: c-api/init.rst:699 +#: c-api/init.rst:736 msgid "" "The :c:macro:`Py_BEGIN_ALLOW_THREADS` macro opens a new block and declares a " "hidden local variable; the :c:macro:`Py_END_ALLOW_THREADS` macro closes the " "block." msgstr "" -#: c-api/init.rst:703 +#: c-api/init.rst:740 msgid "The block above expands to the following code::" msgstr "" -#: c-api/init.rst:715 +#: c-api/init.rst:752 msgid "" "Here is how these functions work: the global interpreter lock is used to " "protect the pointer to the current thread state. When releasing the lock " @@ -875,7 +886,7 @@ msgid "" "state, the lock must be acquired before storing the thread state pointer." msgstr "" -#: c-api/init.rst:724 +#: c-api/init.rst:761 msgid "" "Calling system I/O functions is the most common use case for releasing the " "GIL, but it can also be useful before calling long-running computations " @@ -885,11 +896,11 @@ msgid "" "compressing or hashing data." msgstr "" -#: c-api/init.rst:735 +#: c-api/init.rst:772 msgid "Non-Python created threads" msgstr "" -#: c-api/init.rst:737 +#: c-api/init.rst:774 msgid "" "When threads are created using the dedicated Python APIs (such as the :mod:" "`threading` module), a thread state is automatically associated to them and " @@ -899,7 +910,7 @@ msgid "" "for them." msgstr "" -#: c-api/init.rst:744 +#: c-api/init.rst:781 msgid "" "If you need to call Python code from these threads (often this will be part " "of a callback API provided by the aforementioned third-party library), you " @@ -910,14 +921,14 @@ msgid "" "finally free the thread state data structure." msgstr "" -#: c-api/init.rst:752 +#: c-api/init.rst:789 msgid "" "The :c:func:`PyGILState_Ensure` and :c:func:`PyGILState_Release` functions " "do all of the above automatically. The typical idiom for calling into " "Python from a C thread is::" msgstr "" -#: c-api/init.rst:766 +#: c-api/init.rst:803 msgid "" "Note that the :c:func:`PyGILState_\\*` functions assume there is only one " "global interpreter (created automatically by :c:func:`Py_Initialize`). " @@ -926,11 +937,11 @@ msgid "" "`PyGILState_\\*` API is unsupported." msgstr "" -#: c-api/init.rst:776 +#: c-api/init.rst:813 msgid "Cautions about fork()" msgstr "" -#: c-api/init.rst:778 +#: c-api/init.rst:815 msgid "" "Another important thing to note about threads is their behaviour in the face " "of the C :c:func:`fork` call. On most systems with :c:func:`fork`, after a " @@ -939,7 +950,7 @@ msgid "" "CPython's runtime." msgstr "" -#: c-api/init.rst:784 +#: c-api/init.rst:821 msgid "" "The fact that only the \"current\" thread remains means any locks held by " "other threads will never be released. Python solves this for :func:`os.fork` " @@ -956,7 +967,7 @@ msgid "" "locks, but is not always able to." msgstr "" -#: c-api/init.rst:799 +#: c-api/init.rst:836 msgid "" "The fact that all other threads go away also means that CPython's runtime " "state there must be cleaned up properly, which :func:`os.fork` does. This " @@ -969,18 +980,18 @@ msgid "" "called immediately after." msgstr "" -#: c-api/init.rst:812 +#: c-api/init.rst:849 #, fuzzy msgid "High-level API" msgstr "Bibliothèques de haut-niveau" -#: c-api/init.rst:814 +#: c-api/init.rst:851 msgid "" "These are the most commonly used types and functions when writing C " "extension code, or when embedding the Python interpreter:" msgstr "" -#: c-api/init.rst:819 +#: c-api/init.rst:856 msgid "" "This data structure represents the state shared by a number of cooperating " "threads. Threads belonging to the same interpreter share their module " @@ -988,7 +999,7 @@ msgid "" "in this structure." msgstr "" -#: c-api/init.rst:824 +#: c-api/init.rst:861 msgid "" "Threads belonging to different interpreters initially share nothing, except " "process state like available memory, open file descriptors and such. The " @@ -996,49 +1007,49 @@ msgid "" "which interpreter they belong." msgstr "" -#: c-api/init.rst:832 +#: c-api/init.rst:869 msgid "" "This data structure represents the state of a single thread. The only " "public data member is :attr:`interp` (:c:type:`PyInterpreterState *`), which " "points to this thread's interpreter state." msgstr "" -#: c-api/init.rst:845 +#: c-api/init.rst:882 msgid "Deprecated function which does nothing." msgstr "" -#: c-api/init.rst:847 +#: c-api/init.rst:884 msgid "" "In Python 3.6 and older, this function created the GIL if it didn't exist." msgstr "" -#: c-api/init.rst:849 +#: c-api/init.rst:886 msgid "The function now does nothing." msgstr "" -#: c-api/init.rst:852 +#: c-api/init.rst:889 msgid "" "This function is now called by :c:func:`Py_Initialize()`, so you don't have " "to call it yourself anymore." msgstr "" -#: c-api/init.rst:856 +#: c-api/init.rst:893 msgid "" "This function cannot be called before :c:func:`Py_Initialize()` anymore." msgstr "" -#: c-api/init.rst:866 +#: c-api/init.rst:903 msgid "" "Returns a non-zero value if :c:func:`PyEval_InitThreads` has been called. " "This function can be called without holding the GIL, and therefore can be " "used to avoid calls to the locking API when running single-threaded." msgstr "" -#: c-api/init.rst:870 +#: c-api/init.rst:907 msgid "The :term:`GIL` is now initialized by :c:func:`Py_Initialize()`." msgstr "" -#: c-api/init.rst:878 +#: c-api/init.rst:915 msgid "" "Release the global interpreter lock (if it has been created) and reset the " "thread state to ``NULL``, returning the previous thread state (which is not " @@ -1046,7 +1057,7 @@ msgid "" "acquired it." msgstr "" -#: c-api/init.rst:886 +#: c-api/init.rst:923 msgid "" "Acquire the global interpreter lock (if it has been created) and set the " "thread state to *tstate*, which must not be ``NULL``. If the lock has been " @@ -1054,7 +1065,7 @@ msgid "" "ensues." msgstr "" -#: c-api/init.rst:938 c-api/init.rst:1235 +#: c-api/init.rst:975 c-api/init.rst:1272 msgid "" "Calling this function from a thread when the runtime is finalizing will " "terminate the thread, even if the thread was not created by Python. You can " @@ -1063,27 +1074,27 @@ msgid "" "avoid unwanted termination." msgstr "" -#: c-api/init.rst:900 +#: c-api/init.rst:937 msgid "" "Return the current thread state. The global interpreter lock must be held. " "When the current thread state is ``NULL``, this issues a fatal error (so " "that the caller needn't check for ``NULL``)." msgstr "" -#: c-api/init.rst:907 +#: c-api/init.rst:944 msgid "" "Swap the current thread state with the thread state given by the argument " "*tstate*, which may be ``NULL``. The global interpreter lock must be held " "and is not released." msgstr "" -#: c-api/init.rst:912 +#: c-api/init.rst:949 msgid "" "The following functions use thread-local storage, and are not compatible " "with sub-interpreters:" msgstr "" -#: c-api/init.rst:917 +#: c-api/init.rst:954 msgid "" "Ensure that the current thread is ready to call the Python C API regardless " "of the current state of Python, or of the global interpreter lock. This may " @@ -1096,7 +1107,7 @@ msgid "" "is acceptable." msgstr "" -#: c-api/init.rst:927 +#: c-api/init.rst:964 msgid "" "The return value is an opaque \"handle\" to the thread state when :c:func:" "`PyGILState_Ensure` was called, and must be passed to :c:func:" @@ -1106,13 +1117,13 @@ msgid "" "func:`PyGILState_Release`." msgstr "" -#: c-api/init.rst:934 +#: c-api/init.rst:971 msgid "" "When the function returns, the current thread will hold the GIL and be able " "to call arbitrary Python code. Failure is a fatal error." msgstr "" -#: c-api/init.rst:946 +#: c-api/init.rst:983 msgid "" "Release any resources previously acquired. After this call, Python's state " "will be the same as it was prior to the corresponding :c:func:" @@ -1120,13 +1131,13 @@ msgid "" "caller, hence the use of the GILState API)." msgstr "" -#: c-api/init.rst:951 +#: c-api/init.rst:988 msgid "" "Every call to :c:func:`PyGILState_Ensure` must be matched by a call to :c:" "func:`PyGILState_Release` on the same thread." msgstr "" -#: c-api/init.rst:957 +#: c-api/init.rst:994 msgid "" "Get the current thread state for this thread. May return ``NULL`` if no " "GILState API has been used on the current thread. Note that the main thread " @@ -1134,7 +1145,7 @@ msgid "" "made on the main thread. This is mainly a helper/diagnostic function." msgstr "" -#: c-api/init.rst:965 +#: c-api/init.rst:1002 msgid "" "Return ``1`` if the current thread is holding the GIL and ``0`` otherwise. " "This function can be called from any thread at any time. Only if it has had " @@ -1145,13 +1156,13 @@ msgid "" "otherwise behave differently." msgstr "" -#: c-api/init.rst:977 +#: c-api/init.rst:1014 msgid "" "The following macros are normally used without a trailing semicolon; look " "for example usage in the Python source distribution." msgstr "" -#: c-api/init.rst:983 +#: c-api/init.rst:1020 msgid "" "This macro expands to ``{ PyThreadState *_save; _save = PyEval_SaveThread();" "``. Note that it contains an opening brace; it must be matched with a " @@ -1159,7 +1170,7 @@ msgid "" "discussion of this macro." msgstr "" -#: c-api/init.rst:991 +#: c-api/init.rst:1028 msgid "" "This macro expands to ``PyEval_RestoreThread(_save); }``. Note that it " "contains a closing brace; it must be matched with an earlier :c:macro:" @@ -1167,92 +1178,92 @@ msgid "" "macro." msgstr "" -#: c-api/init.rst:999 +#: c-api/init.rst:1036 msgid "" "This macro expands to ``PyEval_RestoreThread(_save);``: it is equivalent to :" "c:macro:`Py_END_ALLOW_THREADS` without the closing brace." msgstr "" -#: c-api/init.rst:1005 +#: c-api/init.rst:1042 msgid "" "This macro expands to ``_save = PyEval_SaveThread();``: it is equivalent to :" "c:macro:`Py_BEGIN_ALLOW_THREADS` without the opening brace and variable " "declaration." msgstr "" -#: c-api/init.rst:1011 +#: c-api/init.rst:1048 #, fuzzy msgid "Low-level API" msgstr "Bibliothèques de bas-niveau" -#: c-api/init.rst:1013 +#: c-api/init.rst:1050 msgid "" "All of the following functions must be called after :c:func:`Py_Initialize`." msgstr "" -#: c-api/init.rst:1015 +#: c-api/init.rst:1052 msgid ":c:func:`Py_Initialize()` now initializes the :term:`GIL`." msgstr "" -#: c-api/init.rst:1021 +#: c-api/init.rst:1058 msgid "" "Create a new interpreter state object. The global interpreter lock need not " "be held, but may be held if it is necessary to serialize calls to this " "function." msgstr "" -#: c-api/init.rst:1025 +#: c-api/init.rst:1062 msgid "" "Raises an :ref:`auditing event ` ``cpython." "PyInterpreterState_New`` with no arguments." msgstr "" -#: c-api/init.rst:1030 +#: c-api/init.rst:1067 msgid "" "Reset all information in an interpreter state object. The global " "interpreter lock must be held." msgstr "" -#: c-api/init.rst:1033 +#: c-api/init.rst:1070 msgid "" "Raises an :ref:`auditing event ` ``cpython." "PyInterpreterState_Clear`` with no arguments." msgstr "" -#: c-api/init.rst:1038 +#: c-api/init.rst:1075 msgid "" "Destroy an interpreter state object. The global interpreter lock need not " "be held. The interpreter state must have been reset with a previous call " "to :c:func:`PyInterpreterState_Clear`." msgstr "" -#: c-api/init.rst:1045 +#: c-api/init.rst:1082 msgid "" "Create a new thread state object belonging to the given interpreter object. " "The global interpreter lock need not be held, but may be held if it is " "necessary to serialize calls to this function." msgstr "" -#: c-api/init.rst:1052 +#: c-api/init.rst:1089 msgid "" "Reset all information in a thread state object. The global interpreter lock " "must be held." msgstr "" -#: c-api/init.rst:1055 +#: c-api/init.rst:1092 msgid "" "This function now calls the :c:member:`PyThreadState.on_delete` callback. " "Previously, that happened in :c:func:`PyThreadState_Delete`." msgstr "" -#: c-api/init.rst:1062 +#: c-api/init.rst:1099 msgid "" "Destroy a thread state object. The global interpreter lock need not be " "held. The thread state must have been reset with a previous call to :c:func:" "`PyThreadState_Clear`." msgstr "" -#: c-api/init.rst:1069 +#: c-api/init.rst:1106 msgid "" "Destroy the current thread state and release the global interpreter lock. " "Like :c:func:`PyThreadState_Delete`, the global interpreter lock need not be " @@ -1260,93 +1271,93 @@ msgid "" "`PyThreadState_Clear`." msgstr "" -#: c-api/init.rst:1077 +#: c-api/init.rst:1114 msgid "Get the current frame of the Python thread state *tstate*." msgstr "" -#: c-api/init.rst:1079 +#: c-api/init.rst:1116 msgid "" -"Return a strong reference. Return ``NULL`` if no frame is currently " +"Return a :term:`strong reference`. Return ``NULL`` if no frame is currently " "executing." msgstr "" -#: c-api/init.rst:1082 +#: c-api/init.rst:1119 msgid "See also :c:func:`PyEval_GetFrame`." msgstr "" -#: c-api/init.rst:1093 c-api/init.rst:1102 +#: c-api/init.rst:1130 c-api/init.rst:1139 msgid "*tstate* must not be ``NULL``." msgstr "" -#: c-api/init.rst:1091 +#: c-api/init.rst:1128 msgid "" "Get the unique thread state identifier of the Python thread state *tstate*." msgstr "" -#: c-api/init.rst:1100 +#: c-api/init.rst:1137 msgid "Get the interpreter of the Python thread state *tstate*." msgstr "" -#: c-api/init.rst:1109 +#: c-api/init.rst:1146 msgid "Get the current interpreter." msgstr "" -#: c-api/init.rst:1111 +#: c-api/init.rst:1148 msgid "" "Issue a fatal error if there no current Python thread state or no current " "interpreter. It cannot return NULL." msgstr "" -#: c-api/init.rst:1124 +#: c-api/init.rst:1161 msgid "The caller must hold the GIL." msgstr "" -#: c-api/init.rst:1121 +#: c-api/init.rst:1158 msgid "" "Return the interpreter's unique ID. If there was any error in doing so then " "``-1`` is returned and an error is set." msgstr "" -#: c-api/init.rst:1131 +#: c-api/init.rst:1168 msgid "" "Return a dictionary in which interpreter-specific data may be stored. If " "this function returns ``NULL`` then no exception has been raised and the " "caller should assume no interpreter-specific dict is available." msgstr "" -#: c-api/init.rst:1135 +#: c-api/init.rst:1172 msgid "" "This is not a replacement for :c:func:`PyModule_GetState()`, which " "extensions should use to store interpreter-specific state information." msgstr "" -#: c-api/init.rst:1142 +#: c-api/init.rst:1179 msgid "Type of a frame evaluation function." msgstr "" -#: c-api/init.rst:1144 +#: c-api/init.rst:1181 msgid "" "The *throwflag* parameter is used by the ``throw()`` method of generators: " "if non-zero, handle the current exception." msgstr "" -#: c-api/init.rst:1147 +#: c-api/init.rst:1184 msgid "The function now takes a *tstate* parameter." msgstr "" -#: c-api/init.rst:1152 +#: c-api/init.rst:1189 msgid "Get the frame evaluation function." msgstr "" -#: c-api/init.rst:1162 +#: c-api/init.rst:1199 msgid "See the :pep:`523` \"Adding a frame evaluation API to CPython\"." msgstr "" -#: c-api/init.rst:1160 +#: c-api/init.rst:1197 msgid "Set the frame evaluation function." msgstr "" -#: c-api/init.rst:1169 +#: c-api/init.rst:1206 msgid "" "Return a dictionary in which extensions can store thread-specific state " "information. Each extension should use a unique key to use to store state " @@ -1355,7 +1366,7 @@ msgid "" "raised and the caller should assume no current thread state is available." msgstr "" -#: c-api/init.rst:1178 +#: c-api/init.rst:1215 msgid "" "Asynchronously raise an exception in a thread. The *id* argument is the " "thread id of the target thread; *exc* is the exception object to be raised. " @@ -1367,33 +1378,33 @@ msgid "" "raises no exceptions." msgstr "" -#: c-api/init.rst:1186 +#: c-api/init.rst:1223 msgid "" "The type of the *id* parameter changed from :c:type:`long` to :c:type:" "`unsigned long`." msgstr "" -#: c-api/init.rst:1192 +#: c-api/init.rst:1229 msgid "" "Acquire the global interpreter lock and set the current thread state to " "*tstate*, which must not be ``NULL``. The lock must have been created " "earlier. If this thread already has the lock, deadlock ensues." msgstr "" -#: c-api/init.rst:1241 +#: c-api/init.rst:1278 msgid "" "Updated to be consistent with :c:func:`PyEval_RestoreThread`, :c:func:" "`Py_END_ALLOW_THREADS`, and :c:func:`PyGILState_Ensure`, and terminate the " "current thread if called while the interpreter is finalizing." msgstr "" -#: c-api/init.rst:1208 +#: c-api/init.rst:1245 msgid "" ":c:func:`PyEval_RestoreThread` is a higher-level function which is always " "available (even when threads have not been initialized)." msgstr "" -#: c-api/init.rst:1214 +#: c-api/init.rst:1251 msgid "" "Reset the current thread state to ``NULL`` and release the global " "interpreter lock. The lock must have been created earlier and must be held " @@ -1402,41 +1413,41 @@ msgid "" "isn't, a fatal error is reported." msgstr "" -#: c-api/init.rst:1220 +#: c-api/init.rst:1257 msgid "" ":c:func:`PyEval_SaveThread` is a higher-level function which is always " "available (even when threads have not been initialized)." msgstr "" -#: c-api/init.rst:1226 +#: c-api/init.rst:1263 msgid "" "Acquire the global interpreter lock. The lock must have been created " "earlier. If this thread already has the lock, a deadlock ensues." msgstr "" -#: c-api/init.rst:1229 +#: c-api/init.rst:1266 msgid "" "This function does not update the current thread state. Please use :c:func:" "`PyEval_RestoreThread` or :c:func:`PyEval_AcquireThread` instead." msgstr "" -#: c-api/init.rst:1249 +#: c-api/init.rst:1286 msgid "" "Release the global interpreter lock. The lock must have been created " "earlier." msgstr "" -#: c-api/init.rst:1251 +#: c-api/init.rst:1288 msgid "" "This function does not update the current thread state. Please use :c:func:" "`PyEval_SaveThread` or :c:func:`PyEval_ReleaseThread` instead." msgstr "" -#: c-api/init.rst:1260 +#: c-api/init.rst:1297 msgid "Sub-interpreter support" msgstr "" -#: c-api/init.rst:1262 +#: c-api/init.rst:1299 msgid "" "While in most uses, you will only embed a single Python interpreter, there " "are cases where you need to create several independent interpreters in the " @@ -1444,7 +1455,7 @@ msgid "" "to do that." msgstr "" -#: c-api/init.rst:1267 +#: c-api/init.rst:1304 msgid "" "The \"main\" interpreter is the first one created when the runtime " "initializes. It is usually the only Python interpreter in a process. Unlike " @@ -1455,14 +1466,14 @@ msgid "" "returns a pointer to its state." msgstr "" -#: c-api/init.rst:1274 +#: c-api/init.rst:1311 msgid "" "You can switch between sub-interpreters using the :c:func:" "`PyThreadState_Swap` function. You can create and destroy them using the " "following functions:" msgstr "" -#: c-api/init.rst:1288 +#: c-api/init.rst:1325 msgid "" "Create a new sub-interpreter. This is an (almost) totally separate " "environment for the execution of Python code. In particular, the new " @@ -1475,7 +1486,7 @@ msgid "" "underlying file descriptors)." msgstr "" -#: c-api/init.rst:1298 +#: c-api/init.rst:1335 msgid "" "The return value points to the first thread state created in the new sub-" "interpreter. This thread state is made in the current thread state. Note " @@ -1489,11 +1500,11 @@ msgid "" "state on entry.)" msgstr "" -#: c-api/init.rst:1313 +#: c-api/init.rst:1350 msgid "Extension modules are shared between (sub-)interpreters as follows:" msgstr "" -#: c-api/init.rst:1315 +#: c-api/init.rst:1352 msgid "" "For modules using multi-phase initialization, e.g. :c:func:" "`PyModule_FromDefAndSpec`, a separate module object is created and " @@ -1501,7 +1512,7 @@ msgid "" "are shared between these module objects." msgstr "" -#: c-api/init.rst:1321 +#: c-api/init.rst:1358 msgid "" "For modules using single-phase initialization, e.g. :c:func:" "`PyModule_Create`, the first time a particular extension is imported, it is " @@ -1513,7 +1524,7 @@ msgid "" "might cause unwanted behavior (see `Bugs and caveats`_ below)." msgstr "" -#: c-api/init.rst:1332 +#: c-api/init.rst:1369 msgid "" "Note that this is different from what happens when an extension is imported " "after the interpreter has been completely re-initialized by calling :c:func:" @@ -1523,7 +1534,7 @@ msgid "" "shared between these modules." msgstr "" -#: c-api/init.rst:1346 +#: c-api/init.rst:1383 msgid "" "Destroy the (sub-)interpreter represented by the given thread state. The " "given thread state must be the current thread state. See the discussion of " @@ -1535,11 +1546,11 @@ msgid "" "point." msgstr "" -#: c-api/init.rst:1356 +#: c-api/init.rst:1393 msgid "Bugs and caveats" msgstr "" -#: c-api/init.rst:1358 +#: c-api/init.rst:1395 msgid "" "Because sub-interpreters (and the main interpreter) are part of the same " "process, the insulation between them isn't perfect --- for example, using " @@ -1552,7 +1563,7 @@ msgid "" "should be avoided if possible." msgstr "" -#: c-api/init.rst:1368 +#: c-api/init.rst:1405 msgid "" "Special care should be taken to avoid sharing user-defined functions, " "methods, instances or classes between sub-interpreters, since import " @@ -1561,7 +1572,7 @@ msgid "" "objects from which the above are reachable." msgstr "" -#: c-api/init.rst:1374 +#: c-api/init.rst:1411 msgid "" "Also note that combining this functionality with :c:func:`PyGILState_\\*` " "APIs is delicate, because these APIs assume a bijection between Python " @@ -1573,25 +1584,25 @@ msgid "" "created threads will probably be broken when using sub-interpreters." msgstr "" -#: c-api/init.rst:1385 +#: c-api/init.rst:1422 msgid "Asynchronous Notifications" msgstr "" -#: c-api/init.rst:1387 +#: c-api/init.rst:1424 msgid "" "A mechanism is provided to make asynchronous notifications to the main " "interpreter thread. These notifications take the form of a function pointer " "and a void pointer argument." msgstr "" -#: c-api/init.rst:1396 +#: c-api/init.rst:1433 msgid "" "Schedule a function to be called from the main interpreter thread. On " "success, ``0`` is returned and *func* is queued for being called in the main " "thread. On failure, ``-1`` is returned without setting any exception." msgstr "" -#: c-api/init.rst:1400 +#: c-api/init.rst:1437 msgid "" "When successfully queued, *func* will be *eventually* called from the main " "interpreter thread with the argument *arg*. It will be called " @@ -1599,17 +1610,17 @@ msgid "" "these conditions met:" msgstr "" -#: c-api/init.rst:1405 +#: c-api/init.rst:1442 msgid "on a :term:`bytecode` boundary;" msgstr "" -#: c-api/init.rst:1406 +#: c-api/init.rst:1443 msgid "" "with the main thread holding the :term:`global interpreter lock` (*func* can " "therefore use the full C API)." msgstr "" -#: c-api/init.rst:1409 +#: c-api/init.rst:1446 msgid "" "*func* must return ``0`` on success, or ``-1`` on failure with an exception " "set. *func* won't be interrupted to perform another asynchronous " @@ -1617,20 +1628,20 @@ msgid "" "if the global interpreter lock is released." msgstr "" -#: c-api/init.rst:1414 +#: c-api/init.rst:1451 msgid "" "This function doesn't need a current thread state to run, and it doesn't " "need the global interpreter lock." msgstr "" -#: c-api/init.rst:1417 +#: c-api/init.rst:1454 msgid "" "To call this function in a subinterpreter, the caller must hold the GIL. " "Otherwise, the function *func* can be scheduled to be called from the wrong " "interpreter." msgstr "" -#: c-api/init.rst:1422 +#: c-api/init.rst:1459 msgid "" "This is a low-level function, only useful for very special cases. There is " "no guarantee that *func* will be called as quick as possible. If the main " @@ -1640,7 +1651,7 @@ msgid "" "`PyGILState API`." msgstr "" -#: c-api/init.rst:1429 +#: c-api/init.rst:1466 msgid "" "If this function is called in a subinterpreter, the function *func* is now " "scheduled to be called from the subinterpreter, rather than being called " @@ -1648,18 +1659,18 @@ msgid "" "scheduled calls." msgstr "" -#: c-api/init.rst:1440 +#: c-api/init.rst:1477 msgid "Profiling and Tracing" msgstr "" -#: c-api/init.rst:1445 +#: c-api/init.rst:1482 msgid "" "The Python interpreter provides some low-level support for attaching " "profiling and execution tracing facilities. These are used for profiling, " "debugging, and coverage analysis tools." msgstr "" -#: c-api/init.rst:1449 +#: c-api/init.rst:1486 msgid "" "This C interface allows the profiling or tracing code to avoid the overhead " "of calling through Python-level callable objects, making a direct C function " @@ -1669,7 +1680,7 @@ msgid "" "reported to the Python-level trace functions in previous versions." msgstr "" -#: c-api/init.rst:1459 +#: c-api/init.rst:1496 msgid "" "The type of the trace function registered using :c:func:`PyEval_SetProfile` " "and :c:func:`PyEval_SetTrace`. The first parameter is the object passed to " @@ -1680,64 +1691,64 @@ msgid "" "or :const:`PyTrace_OPCODE`, and *arg* depends on the value of *what*:" msgstr "" -#: c-api/init.rst:1468 +#: c-api/init.rst:1505 msgid "Value of *what*" msgstr "" -#: c-api/init.rst:1468 +#: c-api/init.rst:1505 msgid "Meaning of *arg*" msgstr "" -#: c-api/init.rst:1470 +#: c-api/init.rst:1507 msgid ":const:`PyTrace_CALL`" msgstr "" -#: c-api/init.rst:1475 c-api/init.rst:1486 +#: c-api/init.rst:1512 c-api/init.rst:1523 msgid "Always :c:data:`Py_None`." msgstr "" -#: c-api/init.rst:1472 +#: c-api/init.rst:1509 msgid ":const:`PyTrace_EXCEPTION`" msgstr "" -#: c-api/init.rst:1472 +#: c-api/init.rst:1509 msgid "Exception information as returned by :func:`sys.exc_info`." msgstr "" -#: c-api/init.rst:1475 +#: c-api/init.rst:1512 msgid ":const:`PyTrace_LINE`" msgstr "" -#: c-api/init.rst:1477 +#: c-api/init.rst:1514 msgid ":const:`PyTrace_RETURN`" msgstr "" -#: c-api/init.rst:1477 +#: c-api/init.rst:1514 msgid "" "Value being returned to the caller, or ``NULL`` if caused by an exception." msgstr "" -#: c-api/init.rst:1480 +#: c-api/init.rst:1517 msgid ":const:`PyTrace_C_CALL`" msgstr "" -#: c-api/init.rst:1482 c-api/init.rst:1484 +#: c-api/init.rst:1519 c-api/init.rst:1521 msgid "Function object being called." msgstr "" -#: c-api/init.rst:1482 +#: c-api/init.rst:1519 msgid ":const:`PyTrace_C_EXCEPTION`" msgstr "" -#: c-api/init.rst:1484 +#: c-api/init.rst:1521 msgid ":const:`PyTrace_C_RETURN`" msgstr "" -#: c-api/init.rst:1486 +#: c-api/init.rst:1523 msgid ":const:`PyTrace_OPCODE`" msgstr "" -#: c-api/init.rst:1491 +#: c-api/init.rst:1528 msgid "" "The value of the *what* parameter to a :c:type:`Py_tracefunc` function when " "a new call to a function or method is being reported, or a new entry into a " @@ -1746,7 +1757,7 @@ msgid "" "the corresponding frame." msgstr "" -#: c-api/init.rst:1500 +#: c-api/init.rst:1537 msgid "" "The value of the *what* parameter to a :c:type:`Py_tracefunc` function when " "an exception has been raised. The callback function is called with this " @@ -1758,7 +1769,7 @@ msgid "" "profiler." msgstr "" -#: c-api/init.rst:1511 +#: c-api/init.rst:1548 msgid "" "The value passed as the *what* parameter to a :c:type:`Py_tracefunc` " "function (but not a profiling function) when a line-number event is being " @@ -1766,31 +1777,31 @@ msgid "" "*0* on that frame." msgstr "" -#: c-api/init.rst:1518 +#: c-api/init.rst:1555 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a call is about to return." msgstr "" -#: c-api/init.rst:1524 +#: c-api/init.rst:1561 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a C function is about to be called." msgstr "" -#: c-api/init.rst:1530 +#: c-api/init.rst:1567 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a C function has raised an exception." msgstr "" -#: c-api/init.rst:1536 +#: c-api/init.rst:1573 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a C function has returned." msgstr "" -#: c-api/init.rst:1542 +#: c-api/init.rst:1579 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions (but " "not profiling functions) when a new opcode is about to be executed. This " @@ -1798,7 +1809,7 @@ msgid "" "attr:`f_trace_opcodes` to *1* on the frame." msgstr "" -#: c-api/init.rst:1550 +#: c-api/init.rst:1587 msgid "" "Set the profiler function to *func*. The *obj* parameter is passed to the " "function as its first parameter, and may be any Python object, or ``NULL``. " @@ -1808,11 +1819,11 @@ msgid "" "`PyTrace_LINE` :const:`PyTrace_OPCODE` and :const:`PyTrace_EXCEPTION`." msgstr "" -#: c-api/init.rst:1569 +#: c-api/init.rst:1606 msgid "The caller must hold the :term:`GIL`." msgstr "" -#: c-api/init.rst:1562 +#: c-api/init.rst:1599 msgid "" "Set the tracing function to *func*. This is similar to :c:func:" "`PyEval_SetProfile`, except the tracing function does receive line-number " @@ -1823,48 +1834,48 @@ msgid "" "parameter." msgstr "" -#: c-api/init.rst:1575 +#: c-api/init.rst:1612 msgid "Advanced Debugger Support" msgstr "Support avancé du débogueur" -#: c-api/init.rst:1580 +#: c-api/init.rst:1617 msgid "" "These functions are only intended to be used by advanced debugging tools." msgstr "" -#: c-api/init.rst:1585 +#: c-api/init.rst:1622 msgid "" "Return the interpreter state object at the head of the list of all such " "objects." msgstr "" -#: c-api/init.rst:1590 +#: c-api/init.rst:1627 msgid "Return the main interpreter state object." msgstr "" -#: c-api/init.rst:1595 +#: c-api/init.rst:1632 msgid "" "Return the next interpreter state object after *interp* from the list of all " "such objects." msgstr "" -#: c-api/init.rst:1601 +#: c-api/init.rst:1638 msgid "" "Return the pointer to the first :c:type:`PyThreadState` object in the list " "of threads associated with the interpreter *interp*." msgstr "" -#: c-api/init.rst:1607 +#: c-api/init.rst:1644 msgid "" "Return the next thread state object after *tstate* from the list of all such " "objects belonging to the same :c:type:`PyInterpreterState` object." msgstr "" -#: c-api/init.rst:1614 +#: c-api/init.rst:1651 msgid "Thread Local Storage Support" msgstr "" -#: c-api/init.rst:1618 +#: c-api/init.rst:1655 msgid "" "The Python interpreter provides low-level support for thread-local storage " "(TLS) which wraps the underlying native TLS implementation to support the " @@ -1874,19 +1885,19 @@ msgid "" "thread." msgstr "" -#: c-api/init.rst:1625 +#: c-api/init.rst:1662 msgid "" "The GIL does *not* need to be held when calling these functions; they supply " "their own locking." msgstr "" -#: c-api/init.rst:1628 +#: c-api/init.rst:1665 msgid "" "Note that :file:`Python.h` does not include the declaration of the TLS APIs, " "you need to include :file:`pythread.h` to use thread-local storage." msgstr "" -#: c-api/init.rst:1632 +#: c-api/init.rst:1669 msgid "" "None of these API functions handle memory management on behalf of the :c:" "type:`void*` values. You need to allocate and deallocate them yourself. If " @@ -1894,22 +1905,22 @@ msgid "" "don't do refcount operations on them either." msgstr "" -#: c-api/init.rst:1640 +#: c-api/init.rst:1677 msgid "Thread Specific Storage (TSS) API" msgstr "" -#: c-api/init.rst:1642 +#: c-api/init.rst:1679 msgid "" "TSS API is introduced to supersede the use of the existing TLS API within " "the CPython interpreter. This API uses a new type :c:type:`Py_tss_t` " "instead of :c:type:`int` to represent thread keys." msgstr "" -#: c-api/init.rst:1648 +#: c-api/init.rst:1685 msgid "\"A New C-API for Thread-Local Storage in CPython\" (:pep:`539`)" msgstr "" -#: c-api/init.rst:1653 +#: c-api/init.rst:1690 msgid "" "This data structure represents the state of a thread key, the definition of " "which may depend on the underlying TLS implementation, and it has an " @@ -1917,52 +1928,52 @@ msgid "" "public members in this structure." msgstr "" -#: c-api/init.rst:1658 +#: c-api/init.rst:1695 msgid "" "When :ref:`Py_LIMITED_API ` is not defined, static allocation of " "this type by :c:macro:`Py_tss_NEEDS_INIT` is allowed." msgstr "" -#: c-api/init.rst:1664 +#: c-api/init.rst:1701 msgid "" "This macro expands to the initializer for :c:type:`Py_tss_t` variables. Note " "that this macro won't be defined with :ref:`Py_LIMITED_API `." msgstr "" -#: c-api/init.rst:1669 +#: c-api/init.rst:1706 msgid "Dynamic Allocation" msgstr "" -#: c-api/init.rst:1671 +#: c-api/init.rst:1708 msgid "" "Dynamic allocation of the :c:type:`Py_tss_t`, required in extension modules " "built with :ref:`Py_LIMITED_API `, where static allocation of this " "type is not possible due to its implementation being opaque at build time." msgstr "" -#: c-api/init.rst:1678 +#: c-api/init.rst:1715 msgid "" "Return a value which is the same state as a value initialized with :c:macro:" "`Py_tss_NEEDS_INIT`, or ``NULL`` in the case of dynamic allocation failure." msgstr "" -#: c-api/init.rst:1685 +#: c-api/init.rst:1722 msgid "" "Free the given *key* allocated by :c:func:`PyThread_tss_alloc`, after first " "calling :c:func:`PyThread_tss_delete` to ensure any associated thread locals " "have been unassigned. This is a no-op if the *key* argument is `NULL`." msgstr "" -#: c-api/init.rst:1691 +#: c-api/init.rst:1728 msgid "" "A freed key becomes a dangling pointer, you should reset the key to `NULL`." msgstr "" -#: c-api/init.rst:1696 +#: c-api/init.rst:1733 msgid "Methods" msgstr "Méthodes" -#: c-api/init.rst:1698 +#: c-api/init.rst:1735 msgid "" "The parameter *key* of these functions must not be ``NULL``. Moreover, the " "behaviors of :c:func:`PyThread_tss_set` and :c:func:`PyThread_tss_get` are " @@ -1970,13 +1981,13 @@ msgid "" "func:`PyThread_tss_create`." msgstr "" -#: c-api/init.rst:1706 +#: c-api/init.rst:1743 msgid "" "Return a non-zero value if the given :c:type:`Py_tss_t` has been initialized " "by :c:func:`PyThread_tss_create`." msgstr "" -#: c-api/init.rst:1712 +#: c-api/init.rst:1749 msgid "" "Return a zero value on successful initialization of a TSS key. The behavior " "is undefined if the value pointed to by the *key* argument is not " @@ -1985,7 +1996,7 @@ msgid "" "no-op and immediately returns success." msgstr "" -#: c-api/init.rst:1721 +#: c-api/init.rst:1758 msgid "" "Destroy a TSS key to forget the values associated with the key across all " "threads, and change the key's initialization state to uninitialized. A " @@ -1994,31 +2005,31 @@ msgid "" "key -- calling it on an already destroyed key is a no-op." msgstr "" -#: c-api/init.rst:1730 +#: c-api/init.rst:1767 msgid "" "Return a zero value to indicate successfully associating a :c:type:`void*` " "value with a TSS key in the current thread. Each thread has a distinct " "mapping of the key to a :c:type:`void*` value." msgstr "" -#: c-api/init.rst:1737 +#: c-api/init.rst:1774 msgid "" "Return the :c:type:`void*` value associated with a TSS key in the current " "thread. This returns ``NULL`` if no value is associated with the key in the " "current thread." msgstr "" -#: c-api/init.rst:1745 +#: c-api/init.rst:1782 msgid "Thread Local Storage (TLS) API" msgstr "" -#: c-api/init.rst:1747 +#: c-api/init.rst:1784 msgid "" "This API is superseded by :ref:`Thread Specific Storage (TSS) API `." msgstr "" -#: c-api/init.rst:1752 +#: c-api/init.rst:1789 msgid "" "This version of the API does not support platforms where the native TLS key " "is defined in a way that cannot be safely cast to ``int``. On such " @@ -2027,7 +2038,7 @@ msgid "" "platforms." msgstr "" -#: c-api/init.rst:1757 +#: c-api/init.rst:1794 msgid "" "Due to the compatibility problem noted above, this version of the API should " "not be used in new code." diff --git a/c-api/init_config.po b/c-api/init_config.po index a54b17997..298356e0a 100644 --- a/c-api/init_config.po +++ b/c-api/init_config.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-09-04 11:42+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -19,990 +19,1535 @@ msgid "Python Initialization Configuration" msgstr "" #: c-api/init_config.rst:11 -msgid "Structures:" +msgid "" +"Python can be initialized with :c:func:`Py_InitializeFromConfig` and the :c:" +"type:`PyConfig` structure. It can be preinitialized with :c:func:" +"`Py_PreInitialize` and the :c:type:`PyPreConfig` structure." msgstr "" -#: c-api/init_config.rst:13 -msgid ":c:type:`PyConfig`" +#: c-api/init_config.rst:15 +msgid "There are two kinds of configuration:" msgstr "" -#: c-api/init_config.rst:14 -msgid ":c:type:`PyPreConfig`" +#: c-api/init_config.rst:17 +msgid "" +"The :ref:`Python Configuration ` can be used to build a " +"customized Python which behaves as the regular Python. For example, " +"environments variables and command line arguments are used to configure " +"Python." msgstr "" -#: c-api/init_config.rst:15 -msgid ":c:type:`PyStatus`" +#: c-api/init_config.rst:22 +msgid "" +"The :ref:`Isolated Configuration ` can be used to embed " +"Python into an application. It isolates Python from the system. For example, " +"environments variables are ignored, the LC_CTYPE locale is left unchanged " +"and no signal handler is registred." msgstr "" -#: c-api/init_config.rst:16 -msgid ":c:type:`PyWideStringList`" +#: c-api/init_config.rst:27 +msgid "" +"The :c:func:`Py_RunMain` function can be used to write a customized Python " +"program." msgstr "" -#: c-api/init_config.rst:18 +#: c-api/init_config.rst:30 +msgid "" +"See also :ref:`Initialization, Finalization, and Threads `." +msgstr "" + +#: c-api/init_config.rst:33 +msgid ":pep:`587` \"Python Initialization Configuration\"." +msgstr "" + +#: c-api/init_config.rst:37 #, fuzzy -msgid "Functions:" -msgstr "Fonctions" +msgid "Example" +msgstr "Exemple ::" -#: c-api/init_config.rst:20 -msgid ":c:func:`PyConfig_Clear`" +#: c-api/init_config.rst:39 +msgid "Example of customized Python always running in isolated mode::" msgstr "" -#: c-api/init_config.rst:21 -msgid ":c:func:`PyConfig_InitIsolatedConfig`" +#: c-api/init_config.rst:76 +msgid "PyWideStringList" msgstr "" -#: c-api/init_config.rst:22 -msgid ":c:func:`PyConfig_InitPythonConfig`" +#: c-api/init_config.rst:80 +msgid "List of ``wchar_t*`` strings." msgstr "" -#: c-api/init_config.rst:23 -msgid ":c:func:`PyConfig_Read`" +#: c-api/init_config.rst:82 +msgid "" +"If *length* is non-zero, *items* must be non-``NULL`` and all strings must " +"be non-``NULL``." msgstr "" -#: c-api/init_config.rst:24 -msgid ":c:func:`PyConfig_SetArgv`" +#: c-api/init_config.rst:85 +#, fuzzy +msgid "Methods:" +msgstr "Méthodes" + +#: c-api/init_config.rst:89 +msgid "Append *item* to *list*." msgstr "" -#: c-api/init_config.rst:25 -msgid ":c:func:`PyConfig_SetBytesArgv`" +#: c-api/init_config.rst:102 +msgid "Python must be preinitialized to call this function." msgstr "" -#: c-api/init_config.rst:26 -msgid ":c:func:`PyConfig_SetBytesString`" +#: c-api/init_config.rst:95 +msgid "Insert *item* into *list* at *index*." msgstr "" -#: c-api/init_config.rst:27 -msgid ":c:func:`PyConfig_SetString`" +#: c-api/init_config.rst:97 +msgid "" +"If *index* is greater than or equal to *list* length, append *item* to " +"*list*." msgstr "" -#: c-api/init_config.rst:28 -msgid ":c:func:`PyConfig_SetWideStringList`" +#: c-api/init_config.rst:100 +msgid "*index* must be greater than or equal to 0." msgstr "" -#: c-api/init_config.rst:29 -msgid ":c:func:`PyPreConfig_InitIsolatedConfig`" +#: c-api/init_config.rst:124 c-api/init_config.rst:519 +msgid "Structure fields:" msgstr "" -#: c-api/init_config.rst:30 -msgid ":c:func:`PyPreConfig_InitPythonConfig`" +#: c-api/init_config.rst:108 +msgid "List length." msgstr "" -#: c-api/init_config.rst:31 -msgid ":c:func:`PyStatus_Error`" +#: c-api/init_config.rst:112 +msgid "List items." msgstr "" -#: c-api/init_config.rst:32 -msgid ":c:func:`PyStatus_Exception`" +#: c-api/init_config.rst:115 +msgid "PyStatus" msgstr "" -#: c-api/init_config.rst:33 -msgid ":c:func:`PyStatus_Exit`" +#: c-api/init_config.rst:119 +msgid "" +"Structure to store an initialization function status: success, error or exit." msgstr "" -#: c-api/init_config.rst:34 -msgid ":c:func:`PyStatus_IsError`" +#: c-api/init_config.rst:122 +msgid "For an error, it can store the C function name which created the error." msgstr "" -#: c-api/init_config.rst:35 -msgid ":c:func:`PyStatus_IsExit`" +#: c-api/init_config.rst:128 +msgid "Exit code. Argument passed to ``exit()``." msgstr "" -#: c-api/init_config.rst:36 -msgid ":c:func:`PyStatus_NoMemory`" +#: c-api/init_config.rst:132 +msgid "Error message." msgstr "" -#: c-api/init_config.rst:37 -msgid ":c:func:`PyStatus_Ok`" +#: c-api/init_config.rst:136 +msgid "Name of the function which created an error, can be ``NULL``." msgstr "" -#: c-api/init_config.rst:38 -msgid ":c:func:`PyWideStringList_Append`" +#: c-api/init_config.rst:138 +msgid "Functions to create a status:" msgstr "" -#: c-api/init_config.rst:39 -msgid ":c:func:`PyWideStringList_Insert`" +#: c-api/init_config.rst:142 +msgid "Success." +msgstr "" + +#: c-api/init_config.rst:146 +msgid "Initialization error with a message." msgstr "" -#: c-api/init_config.rst:40 -msgid ":c:func:`Py_ExitStatusException`" +#: c-api/init_config.rst:148 +msgid "*err_msg* must not be ``NULL``." msgstr "" -#: c-api/init_config.rst:41 -msgid ":c:func:`Py_InitializeFromConfig`" +#: c-api/init_config.rst:152 +msgid "Memory allocation failure (out of memory)." msgstr "" -#: c-api/init_config.rst:42 -msgid ":c:func:`Py_PreInitialize`" +#: c-api/init_config.rst:156 +msgid "Exit Python with the specified exit code." msgstr "" -#: c-api/init_config.rst:43 -msgid ":c:func:`Py_PreInitializeFromArgs`" +#: c-api/init_config.rst:158 +msgid "Functions to handle a status:" msgstr "" -#: c-api/init_config.rst:44 -msgid ":c:func:`Py_PreInitializeFromBytesArgs`" +#: c-api/init_config.rst:162 +msgid "" +"Is the status an error or an exit? If true, the exception must be handled; " +"by calling :c:func:`Py_ExitStatusException` for example." msgstr "" -#: c-api/init_config.rst:45 -msgid ":c:func:`Py_RunMain`" +#: c-api/init_config.rst:167 +msgid "Is the result an error?" msgstr "" -#: c-api/init_config.rst:46 -msgid ":c:func:`Py_GetArgcArgv`" +#: c-api/init_config.rst:171 +msgid "Is the result an exit?" msgstr "" -#: c-api/init_config.rst:48 +#: c-api/init_config.rst:175 msgid "" -"The preconfiguration (``PyPreConfig`` type) is stored in ``_PyRuntime." -"preconfig`` and the configuration (``PyConfig`` type) is stored in " -"``PyInterpreterState.config``." +"Call ``exit(exitcode)`` if *status* is an exit. Print the error message and " +"exit with a non-zero exit code if *status* is an error. Must only be called " +"if ``PyStatus_Exception(status)`` is non-zero." msgstr "" -#: c-api/init_config.rst:52 +#: c-api/init_config.rst:180 msgid "" -"See also :ref:`Initialization, Finalization, and Threads `." +"Internally, Python uses macros which set ``PyStatus.func``, whereas " +"functions to create a status set ``func`` to ``NULL``." msgstr "" -#: c-api/init_config.rst:55 -msgid ":pep:`587` \"Python Initialization Configuration\"." +#: c-api/init_config.rst:183 +msgid "Example::" +msgstr "Exemple ::" + +#: c-api/init_config.rst:207 +msgid "PyPreConfig" msgstr "" -#: c-api/init_config.rst:59 -msgid "PyWideStringList" +#: c-api/init_config.rst:211 +msgid "Structure used to preinitialize Python." msgstr "" -#: c-api/init_config.rst:63 -msgid "List of ``wchar_t*`` strings." +#: c-api/init_config.rst:213 +msgid "Function to initialize a preconfiguration:" msgstr "" -#: c-api/init_config.rst:65 +#: c-api/init_config.rst:217 msgid "" -"If *length* is non-zero, *items* must be non-``NULL`` and all strings must " -"be non-``NULL``." +"Initialize the preconfiguration with :ref:`Python Configuration `." msgstr "" -#: c-api/init_config.rst:68 -#, fuzzy -msgid "Methods:" -msgstr "Méthodes" +#: c-api/init_config.rst:222 +msgid "" +"Initialize the preconfiguration with :ref:`Isolated Configuration `." +msgstr "" -#: c-api/init_config.rst:72 -msgid "Append *item* to *list*." +#: c-api/init_config.rst:229 +msgid "Name of the Python memory allocators:" msgstr "" -#: c-api/init_config.rst:85 -msgid "Python must be preinitialized to call this function." +#: c-api/init_config.rst:231 +msgid "" +"``PYMEM_ALLOCATOR_NOT_SET`` (``0``): don't change memory allocators (use " +"defaults)." msgstr "" -#: c-api/init_config.rst:78 -msgid "Insert *item* into *list* at *index*." +#: c-api/init_config.rst:233 +msgid "" +"``PYMEM_ALLOCATOR_DEFAULT`` (``1``): :ref:`default memory allocators " +"`." msgstr "" -#: c-api/init_config.rst:80 +#: c-api/init_config.rst:235 msgid "" -"If *index* is greater than or equal to *list* length, append *item* to " -"*list*." +"``PYMEM_ALLOCATOR_DEBUG`` (``2``): :ref:`default memory allocators ` with :ref:`debug hooks `." msgstr "" -#: c-api/init_config.rst:83 -msgid "*index* must be greater than or equal to 0." +#: c-api/init_config.rst:238 +msgid "``PYMEM_ALLOCATOR_MALLOC`` (``3``): use ``malloc()`` of the C library." msgstr "" -#: c-api/init_config.rst:107 c-api/init_config.rst:417 -msgid "Structure fields:" +#: c-api/init_config.rst:239 +msgid "" +"``PYMEM_ALLOCATOR_MALLOC_DEBUG`` (``4``): force usage of ``malloc()`` with :" +"ref:`debug hooks `." msgstr "" -#: c-api/init_config.rst:91 -msgid "List length." +#: c-api/init_config.rst:241 +msgid "" +"``PYMEM_ALLOCATOR_PYMALLOC`` (``5``): :ref:`Python pymalloc memory allocator " +"`." msgstr "" -#: c-api/init_config.rst:95 -msgid "List items." +#: c-api/init_config.rst:243 +msgid "" +"``PYMEM_ALLOCATOR_PYMALLOC_DEBUG`` (``6``): :ref:`Python pymalloc memory " +"allocator ` with :ref:`debug hooks `." msgstr "" -#: c-api/init_config.rst:98 -msgid "PyStatus" +#: c-api/init_config.rst:247 +msgid "" +"``PYMEM_ALLOCATOR_PYMALLOC`` and ``PYMEM_ALLOCATOR_PYMALLOC_DEBUG`` are not " +"supported if Python is :option:`configured using --without-pymalloc <--" +"without-pymalloc>`." msgstr "" -#: c-api/init_config.rst:102 +#: c-api/init_config.rst:251 +msgid "See :ref:`Memory Management `." +msgstr "" + +#: c-api/init_config.rst:253 +msgid "Default: ``PYMEM_ALLOCATOR_NOT_SET``." +msgstr "" + +#: c-api/init_config.rst:257 +msgid "Set the LC_CTYPE locale to the user preferred locale?" +msgstr "" + +#: c-api/init_config.rst:259 msgid "" -"Structure to store an initialization function status: success, error or exit." +"If equals to 0, set :c:member:`~PyPreConfig.coerce_c_locale` and :c:member:" +"`~PyPreConfig.coerce_c_locale_warn` members to 0." msgstr "" -#: c-api/init_config.rst:105 -msgid "For an error, it can store the C function name which created the error." +#: c-api/init_config.rst:273 +msgid "See the :term:`locale encoding`." msgstr "" -#: c-api/init_config.rst:111 -msgid "Exit code. Argument passed to ``exit()``." +#: c-api/init_config.rst:319 c-api/init_config.rst:627 +msgid "Default: ``1`` in Python config, ``0`` in isolated config." msgstr "" -#: c-api/init_config.rst:115 -msgid "Error message." +#: c-api/init_config.rst:268 +msgid "If equals to 2, coerce the C locale." msgstr "" -#: c-api/init_config.rst:119 -msgid "Name of the function which created an error, can be ``NULL``." +#: c-api/init_config.rst:270 +msgid "" +"If equals to 1, read the LC_CTYPE locale to decide if it should be coerced." msgstr "" -#: c-api/init_config.rst:121 -msgid "Functions to create a status:" +#: c-api/init_config.rst:281 +msgid "Default: ``-1`` in Python config, ``0`` in isolated config." msgstr "" -#: c-api/init_config.rst:125 -msgid "Success." +#: c-api/init_config.rst:279 +msgid "If non-zero, emit a warning if the C locale is coerced." msgstr "" -#: c-api/init_config.rst:129 -msgid "Initialization error with a message." +#: c-api/init_config.rst:285 +msgid "" +"If non-zero, enables the :ref:`Python Development Mode `: see :c:" +"member:`PyConfig.dev_mode`." msgstr "" -#: c-api/init_config.rst:133 -msgid "Memory allocation failure (out of memory)." +#: c-api/init_config.rst:633 c-api/init_config.rst:1094 +msgid "Default: ``-1`` in Python mode, ``0`` in isolated mode." msgstr "" -#: c-api/init_config.rst:137 -msgid "Exit Python with the specified exit code." +#: c-api/init_config.rst:292 +msgid "Isolated mode: see :c:member:`PyConfig.isolated`." msgstr "" -#: c-api/init_config.rst:139 -msgid "Functions to handle a status:" +#: c-api/init_config.rst:798 +msgid "Default: ``0`` in Python mode, ``1`` in isolated mode." +msgstr "" + +#: c-api/init_config.rst:298 +msgid "If non-zero:" +msgstr "" + +#: c-api/init_config.rst:300 +msgid "Set :c:member:`PyPreConfig.utf8_mode` to ``0``," +msgstr "" + +#: c-api/init_config.rst:301 +msgid "Set :c:member:`PyConfig.filesystem_encoding` to ``\"mbcs\"``," msgstr "" -#: c-api/init_config.rst:143 +#: c-api/init_config.rst:302 +msgid "Set :c:member:`PyConfig.filesystem_errors` to ``\"replace\"``." +msgstr "" + +#: c-api/init_config.rst:304 msgid "" -"Is the status an error or an exit? If true, the exception must be handled; " -"by calling :c:func:`Py_ExitStatusException` for example." +"Initialized the from :envvar:`PYTHONLEGACYWINDOWSFSENCODING` environment " +"variable value." msgstr "" -#: c-api/init_config.rst:148 -msgid "Is the result an error?" +#: c-api/init_config.rst:811 +msgid "" +"Only available on Windows. ``#ifdef MS_WINDOWS`` macro can be used for " +"Windows specific code." msgstr "" -#: c-api/init_config.rst:152 -msgid "Is the result an exit?" +#: c-api/init_config.rst:588 c-api/init_config.rst:646 +#: c-api/init_config.rst:770 c-api/init_config.rst:814 +#: c-api/init_config.rst:881 c-api/init_config.rst:990 +#: c-api/init_config.rst:1058 c-api/init_config.rst:1129 +msgid "Default: ``0``." msgstr "" -#: c-api/init_config.rst:156 +#: c-api/init_config.rst:314 msgid "" -"Call ``exit(exitcode)`` if *status* is an exit. Print the error message and " -"exit with a non-zero exit code if *status* is an error. Must only be called " -"if ``PyStatus_Exception(status)`` is non-zero." +"If non-zero, :c:func:`Py_PreInitializeFromArgs` and :c:func:" +"`Py_PreInitializeFromBytesArgs` parse their ``argv`` argument the same way " +"the regular Python parses command line arguments: see :ref:`Command Line " +"Arguments `." msgstr "" -#: c-api/init_config.rst:161 +#: c-api/init_config.rst:323 msgid "" -"Internally, Python uses macros which set ``PyStatus.func``, whereas " -"functions to create a status set ``func`` to ``NULL``." +"Use :ref:`environment variables `? See :c:member:`PyConfig." +"use_environment`." msgstr "" -#: c-api/init_config.rst:164 -msgid "Example::" -msgstr "Exemple ::" +#: c-api/init_config.rst:1103 +msgid "Default: ``1`` in Python config and ``0`` in isolated config." +msgstr "" -#: c-api/init_config.rst:188 -msgid "PyPreConfig" +#: c-api/init_config.rst:330 +msgid "If non-zero, enable the :ref:`Python UTF-8 Mode `." +msgstr "" + +#: c-api/init_config.rst:332 +msgid "" +"Set by the :option:`-X utf8 <-X>` command line option and the :envvar:" +"`PYTHONUTF8` environment variable." +msgstr "" + +#: c-api/init_config.rst:335 +msgid "Default: ``-1`` in Python config and ``0`` in isolated config." +msgstr "" + +#: c-api/init_config.rst:341 +msgid "Preinitialize Python with PyPreConfig" +msgstr "" + +#: c-api/init_config.rst:343 +msgid "The preinitialization of Python:" +msgstr "" + +#: c-api/init_config.rst:345 +msgid "Set the Python memory allocators (:c:member:`PyPreConfig.allocator`)" +msgstr "" + +#: c-api/init_config.rst:346 +msgid "Configure the LC_CTYPE locale (:term:`locale encoding`)" +msgstr "" + +#: c-api/init_config.rst:347 +msgid "" +"Set the :ref:`Python UTF-8 Mode ` (:c:member:`PyPreConfig." +"utf8_mode`)" +msgstr "" + +#: c-api/init_config.rst:350 +msgid "" +"The current preconfiguration (``PyPreConfig`` type) is stored in " +"``_PyRuntime.preconfig``." +msgstr "" + +#: c-api/init_config.rst:353 +msgid "Functions to preinitialize Python:" +msgstr "" + +#: c-api/init_config.rst:363 c-api/init_config.rst:372 +msgid "Preinitialize Python from *preconfig* preconfiguration." +msgstr "" + +#: c-api/init_config.rst:368 c-api/init_config.rst:377 +msgid "*preconfig* must not be ``NULL``." +msgstr "" + +#: c-api/init_config.rst:365 +msgid "" +"Parse *argv* command line arguments (bytes strings) if :c:member:" +"`~PyPreConfig.parse_argv` of *preconfig* is non-zero." +msgstr "" + +#: c-api/init_config.rst:374 +msgid "" +"Parse *argv* command line arguments (wide strings) if :c:member:" +"`~PyPreConfig.parse_argv` of *preconfig* is non-zero." +msgstr "" + +#: c-api/init_config.rst:1191 +msgid "" +"The caller is responsible to handle exceptions (error or exit) using :c:func:" +"`PyStatus_Exception` and :c:func:`Py_ExitStatusException`." msgstr "" -#: c-api/init_config.rst:192 -msgid "Structure used to preinitialize Python:" +#: c-api/init_config.rst:382 +msgid "" +"For :ref:`Python Configuration ` (:c:func:" +"`PyPreConfig_InitPythonConfig`), if Python is initialized with command line " +"arguments, the command line arguments must also be passed to preinitialize " +"Python, since they have an effect on the pre-configuration like encodings. " +"For example, the :option:`-X utf8 <-X>` command line option enables the :ref:" +"`Python UTF-8 Mode `." +msgstr "" + +#: c-api/init_config.rst:389 +msgid "" +"``PyMem_SetAllocator()`` can be called after :c:func:`Py_PreInitialize` and " +"before :c:func:`Py_InitializeFromConfig` to install a custom memory " +"allocator. It can be called before :c:func:`Py_PreInitialize` if :c:member:" +"`PyPreConfig.allocator` is set to ``PYMEM_ALLOCATOR_NOT_SET``." +msgstr "" + +#: c-api/init_config.rst:394 +msgid "" +"Python memory allocation functions like :c:func:`PyMem_RawMalloc` must not " +"be used before the Python preinitialization, whereas calling directly " +"``malloc()`` and ``free()`` is always safe. :c:func:`Py_DecodeLocale` must " +"not be called before the Python preinitialization." +msgstr "" + +#: c-api/init_config.rst:399 +msgid "" +"Example using the preinitialization to enable the :ref:`Python UTF-8 Mode " +"`::" +msgstr "" + +#: c-api/init_config.rst:421 +msgid "PyConfig" +msgstr "" + +#: c-api/init_config.rst:425 +msgid "Structure containing most parameters to configure Python." +msgstr "" + +#: c-api/init_config.rst:427 +msgid "" +"When done, the :c:func:`PyConfig_Clear` function must be used to release the " +"configuration memory." +msgstr "" + +#: c-api/init_config.rst:430 +msgid "Structure methods:" +msgstr "" + +#: c-api/init_config.rst:434 +msgid "" +"Initialize configuration with the :ref:`Python Configuration `." +msgstr "" + +#: c-api/init_config.rst:439 +msgid "" +"Initialize configuration with the :ref:`Isolated Configuration `." +msgstr "" + +#: c-api/init_config.rst:444 +msgid "Copy the wide character string *str* into ``*config_str``." +msgstr "" + +#: c-api/init_config.rst:453 c-api/init_config.rst:468 +#: c-api/init_config.rst:488 +msgid ":ref:`Preinitialize Python ` if needed." +msgstr "" + +#: c-api/init_config.rst:450 +msgid "" +"Decode *str* using :c:func:`Py_DecodeLocale` and set the result into " +"``*config_str``." +msgstr "" + +#: c-api/init_config.rst:457 +msgid "" +"Set command line arguments (:c:member:`~PyConfig.argv` member of *config*) " +"from the *argv* list of wide character strings." +msgstr "" + +#: c-api/init_config.rst:464 +msgid "" +"Set command line arguments (:c:member:`~PyConfig.argv` member of *config*) " +"from the *argv* list of bytes strings. Decode bytes using :c:func:" +"`Py_DecodeLocale`." +msgstr "" + +#: c-api/init_config.rst:472 +msgid "Set the list of wide strings *list* to *length* and *items*." +msgstr "" + +#: c-api/init_config.rst:478 +msgid "Read all Python configuration." +msgstr "" + +#: c-api/init_config.rst:480 +msgid "Fields which are already initialized are left unchanged." +msgstr "" + +#: c-api/init_config.rst:910 +msgid "" +"The :c:func:`PyConfig_Read` function only parses :c:member:`PyConfig.argv` " +"arguments once: :c:member:`PyConfig.parse_argv` is set to ``2`` after " +"arguments are parsed. Since Python arguments are strippped from :c:member:" +"`PyConfig.argv`, parsing arguments twice would parse the application options " +"as Python options." +msgstr "" + +#: c-api/init_config.rst:490 +msgid "" +"The :c:member:`PyConfig.argv` arguments are now only parsed once, :c:member:" +"`PyConfig.parse_argv` is set to ``2`` after arguments are parsed, and " +"arguments are only parsed if :c:member:`PyConfig.parse_argv` equals ``1``." +msgstr "" + +#: c-api/init_config.rst:498 +msgid "Release configuration memory." +msgstr "" + +#: c-api/init_config.rst:500 +msgid "" +"Most ``PyConfig`` methods :ref:`preinitialize Python ` if needed. " +"In that case, the Python preinitialization configuration (:c:type:" +"`PyPreConfig`) in based on the :c:type:`PyConfig`. If configuration fields " +"which are in common with :c:type:`PyPreConfig` are tuned, they must be set " +"before calling a :c:type:`PyConfig` method:" +msgstr "" + +#: c-api/init_config.rst:506 +msgid ":c:member:`PyConfig.dev_mode`" +msgstr "" + +#: c-api/init_config.rst:507 +msgid ":c:member:`PyConfig.isolated`" +msgstr "" + +#: c-api/init_config.rst:508 +msgid ":c:member:`PyConfig.parse_argv`" +msgstr "" + +#: c-api/init_config.rst:509 +msgid ":c:member:`PyConfig.use_environment`" +msgstr "" + +#: c-api/init_config.rst:511 +msgid "" +"Moreover, if :c:func:`PyConfig_SetArgv` or :c:func:`PyConfig_SetBytesArgv` " +"is used, this method must be called before other methods, since the " +"preinitialization configuration depends on command line arguments (if :c:" +"member:`parse_argv` is non-zero)." +msgstr "" + +#: c-api/init_config.rst:516 +msgid "" +"The caller of these methods is responsible to handle exceptions (error or " +"exit) using ``PyStatus_Exception()`` and ``Py_ExitStatusException()``." +msgstr "" + +#: c-api/init_config.rst:523 +msgid "Command line arguments: :data:`sys.argv`." +msgstr "" + +#: c-api/init_config.rst:525 +msgid "" +"Set :c:member:`~PyConfig.parse_argv` to ``1`` to parse :c:member:`~PyConfig." +"argv` the same way the regular Python parses Python command line arguments " +"and then to strip Python arguments from :c:member:`~PyConfig.argv`." +msgstr "" + +#: c-api/init_config.rst:530 +msgid "" +"If :c:member:`~PyConfig.argv` is empty, an empty string is added to ensure " +"that :data:`sys.argv` always exists and is never empty." msgstr "" -#: c-api/init_config.rst:194 -msgid "Set the Python memory allocator" +#: c-api/init_config.rst:541 c-api/init_config.rst:561 +#: c-api/init_config.rst:662 c-api/init_config.rst:851 +#: c-api/init_config.rst:967 c-api/init_config.rst:998 +#: c-api/init_config.rst:1018 +msgid "Default: ``NULL``." +msgstr "" + +#: c-api/init_config.rst:535 +msgid "See also the :c:member:`~PyConfig.orig_argv` member." msgstr "" -#: c-api/init_config.rst:195 -msgid "Configure the LC_CTYPE locale" +#: c-api/init_config.rst:539 +msgid ":data:`sys.base_exec_prefix`." +msgstr "" + +#: c-api/init_config.rst:555 c-api/init_config.rst:655 +#: c-api/init_config.rst:868 c-api/init_config.rst:951 +msgid "Part of the :ref:`Python Path Configuration ` output." +msgstr "" + +#: c-api/init_config.rst:547 +msgid "Python base executable: :data:`sys._base_executable`." +msgstr "" + +#: c-api/init_config.rst:549 +msgid "Set by the :envvar:`__PYVENV_LAUNCHER__` environment variable." +msgstr "" + +#: c-api/init_config.rst:551 +msgid "Set from :c:member:`PyConfig.executable` if ``NULL``." +msgstr "" + +#: c-api/init_config.rst:559 +msgid ":data:`sys.base_prefix`." +msgstr "" + +#: c-api/init_config.rst:567 +msgid "" +"If equals to 0 and :c:member:`~PyConfig.configure_c_stdio` is non-zero, " +"disable buffering on the C streams stdout and stderr." +msgstr "" + +#: c-api/init_config.rst:570 +msgid "" +"Set to 0 by the :option:`-u` command line option and the :envvar:" +"`PYTHONUNBUFFERED` environment variable." +msgstr "" + +#: c-api/init_config.rst:573 +msgid "stdin is always opened in buffered mode." +msgstr "" + +#: c-api/init_config.rst:1046 c-api/init_config.rst:1161 +msgid "Default: ``1``." +msgstr "" + +#: c-api/init_config.rst:579 +msgid "" +"If equals to 1, issue a warning when comparing :class:`bytes` or :class:" +"`bytearray` with :class:`str`, or comparing :class:`bytes` with :class:`int`." +msgstr "" + +#: c-api/init_config.rst:583 +msgid "" +"If equal or greater to 2, raise a :exc:`BytesWarning` exception in these " +"cases." +msgstr "" + +#: c-api/init_config.rst:586 +msgid "Incremented by the :option:`-b` command line option." +msgstr "" + +#: c-api/init_config.rst:592 +msgid "" +"If non-zero, emit a :exc:`EncodingWarning` warning when :class:`io." +"TextIOWrapper` uses its default encoding. See :ref:`io-encoding-warning` for " +"details." +msgstr "" + +#: c-api/init_config.rst:601 +msgid "" +"Control the validation behavior of hash-based ``.pyc`` files: value of the :" +"option:`--check-hash-based-pycs` command line option." +msgstr "" + +#: c-api/init_config.rst:604 +msgid "Valid values:" +msgstr "" + +#: c-api/init_config.rst:606 +msgid "" +"``L\"always\"``: Hash the source file for invalidation regardless of value " +"of the 'check_source' flag." msgstr "" -#: c-api/init_config.rst:196 -msgid "Set the UTF-8 mode" +#: c-api/init_config.rst:608 +msgid "``L\"never\"``: Assume that hash-based pycs always are valid." +msgstr "" + +#: c-api/init_config.rst:609 +msgid "" +"``L\"default\"``: The 'check_source' flag in hash-based pycs determines " +"invalidation." +msgstr "" + +#: c-api/init_config.rst:612 +msgid "Default: ``L\"default\"``." +msgstr "" + +#: c-api/init_config.rst:614 +msgid "See also :pep:`552` \"Deterministic pycs\"." +msgstr "" + +#: c-api/init_config.rst:618 +msgid "If non-zero, configure C standard streams:" +msgstr "" + +#: c-api/init_config.rst:620 +msgid "" +"On Windows, set the binary mode (``O_BINARY``) on stdin, stdout and stderr." +msgstr "" + +#: c-api/init_config.rst:622 +msgid "" +"If :c:member:`~PyConfig.buffered_stdio` equals zero, disable buffering of " +"stdin, stdout and stderr streams." +msgstr "" + +#: c-api/init_config.rst:624 +msgid "" +"If :c:member:`~PyConfig.interactive` is non-zero, enable stream buffering on " +"stdin and stdout (only stdout on Windows)." +msgstr "" + +#: c-api/init_config.rst:631 +msgid "If non-zero, enable the :ref:`Python Development Mode `." +msgstr "" + +#: c-api/init_config.rst:637 +msgid "Dump Python refererences?" +msgstr "" + +#: c-api/init_config.rst:639 +msgid "If non-zero, dump all objects which are still alive at exit." +msgstr "" + +#: c-api/init_config.rst:641 +msgid "Set to ``1`` by the :envvar:`PYTHONDUMPREFS` environment variable." +msgstr "" + +#: c-api/init_config.rst:643 +msgid "" +"Need a special build of Python with the ``Py_TRACE_REFS`` macro defined: see " +"the :option:`configure --with-trace-refs option <--with-trace-refs>`." +msgstr "" + +#: c-api/init_config.rst:650 +msgid "" +"The site-specific directory prefix where the platform-dependent Python files " +"are installed: :data:`sys.exec_prefix`." +msgstr "" + +#: c-api/init_config.rst:659 +msgid "" +"The absolute path of the executable binary for the Python interpreter: :data:" +"`sys.executable`." +msgstr "" + +#: c-api/init_config.rst:668 +msgid "Enable faulthandler?" +msgstr "" + +#: c-api/init_config.rst:670 +msgid "If non-zero, call :func:`faulthandler.enable` at startup." +msgstr "" + +#: c-api/init_config.rst:672 +msgid "" +"Set to ``1`` by :option:`-X faulthandler <-X>` and the :envvar:" +"`PYTHONFAULTHANDLER` environment variable." +msgstr "" + +#: c-api/init_config.rst:679 +msgid "" +":term:`Filesystem encoding `: :func:" +"`sys.getfilesystemencoding`." msgstr "" -#: c-api/init_config.rst:198 -msgid "Function to initialize a preconfiguration:" +#: c-api/init_config.rst:682 +msgid "On macOS, Android and VxWorks: use ``\"utf-8\"`` by default." msgstr "" -#: c-api/init_config.rst:202 +#: c-api/init_config.rst:684 msgid "" -"Initialize the preconfiguration with :ref:`Python Configuration `." +"On Windows: use ``\"utf-8\"`` by default, or ``\"mbcs\"`` if :c:member:" +"`~PyPreConfig.legacy_windows_fs_encoding` of :c:type:`PyPreConfig` is non-" +"zero." msgstr "" -#: c-api/init_config.rst:207 -msgid "" -"Initialize the preconfiguration with :ref:`Isolated Configuration `." +#: c-api/init_config.rst:688 +msgid "Default encoding on other platforms:" msgstr "" -#: c-api/init_config.rst:214 -msgid "Name of the memory allocator:" +#: c-api/init_config.rst:690 +msgid "``\"utf-8\"`` if :c:member:`PyPreConfig.utf8_mode` is non-zero." msgstr "" -#: c-api/init_config.rst:216 +#: c-api/init_config.rst:691 msgid "" -"``PYMEM_ALLOCATOR_NOT_SET`` (``0``): don't change memory allocators (use " -"defaults)" +"``\"ascii\"`` if Python detects that ``nl_langinfo(CODESET)`` announces the " +"ASCII encoding (or Roman8 encoding on HP-UX), whereas the ``mbstowcs()`` " +"function decodes from a different encoding (usually Latin1)." msgstr "" -#: c-api/init_config.rst:218 -msgid "``PYMEM_ALLOCATOR_DEFAULT`` (``1``): default memory allocators" +#: c-api/init_config.rst:695 +msgid "``\"utf-8\"`` if ``nl_langinfo(CODESET)`` returns an empty string." msgstr "" -#: c-api/init_config.rst:219 +#: c-api/init_config.rst:696 msgid "" -"``PYMEM_ALLOCATOR_DEBUG`` (``2``): default memory allocators with debug hooks" +"Otherwise, use the :term:`locale encoding`: ``nl_langinfo(CODESET)`` result." msgstr "" -#: c-api/init_config.rst:221 -msgid "``PYMEM_ALLOCATOR_MALLOC`` (``3``): force usage of ``malloc()``" +#: c-api/init_config.rst:699 +msgid "" +"At Python statup, the encoding name is normalized to the Python codec name. " +"For example, ``\"ANSI_X3.4-1968\"`` is replaced with ``\"ascii\"``." msgstr "" -#: c-api/init_config.rst:222 -msgid "" -"``PYMEM_ALLOCATOR_MALLOC_DEBUG`` (``4``): force usage of ``malloc()`` with " -"debug hooks" +#: c-api/init_config.rst:702 +msgid "See also the :c:member:`~PyConfig.filesystem_errors` member." msgstr "" -#: c-api/init_config.rst:224 +#: c-api/init_config.rst:706 msgid "" -"``PYMEM_ALLOCATOR_PYMALLOC`` (``5``): :ref:`Python pymalloc memory allocator " -"`" +":term:`Filesystem error handler `: :" +"func:`sys.getfilesystemencodeerrors`." msgstr "" -#: c-api/init_config.rst:226 +#: c-api/init_config.rst:709 msgid "" -"``PYMEM_ALLOCATOR_PYMALLOC_DEBUG`` (``6``): :ref:`Python pymalloc memory " -"allocator ` with debug hooks" +"On Windows: use ``\"surrogatepass\"`` by default, or ``\"replace\"`` if :c:" +"member:`~PyPreConfig.legacy_windows_fs_encoding` of :c:type:`PyPreConfig` is " +"non-zero." msgstr "" -#: c-api/init_config.rst:229 -msgid "" -"``PYMEM_ALLOCATOR_PYMALLOC`` and ``PYMEM_ALLOCATOR_PYMALLOC_DEBUG`` are not " -"supported if Python is configured using ``--without-pymalloc``" +#: c-api/init_config.rst:713 +msgid "On other platforms: use ``\"surrogateescape\"`` by default." msgstr "" -#: c-api/init_config.rst:232 -msgid "See :ref:`Memory Management `." +#: c-api/init_config.rst:715 +msgid "Supported error handlers:" msgstr "" -#: c-api/init_config.rst:236 -msgid "" -"Set the LC_CTYPE locale to the user preferred locale? If equals to 0, set :c:" -"member:`coerce_c_locale` and :c:member:`coerce_c_locale_warn` to 0." +#: c-api/init_config.rst:717 +msgid "``\"strict\"``" msgstr "" -#: c-api/init_config.rst:241 -msgid "" -"If equals to 2, coerce the C locale; if equals to 1, read the LC_CTYPE " -"locale to decide if it should be coerced." +#: c-api/init_config.rst:718 +msgid "``\"surrogateescape\"``" msgstr "" -#: c-api/init_config.rst:246 -msgid "If non-zero, emit a warning if the C locale is coerced." +#: c-api/init_config.rst:719 +msgid "``\"surrogatepass\"`` (only supported with the UTF-8 encoding)" msgstr "" -#: c-api/init_config.rst:250 -msgid "See :c:member:`PyConfig.dev_mode`." +#: c-api/init_config.rst:721 +msgid "See also the :c:member:`~PyConfig.filesystem_encoding` member." msgstr "" -#: c-api/init_config.rst:254 -msgid "See :c:member:`PyConfig.isolated`." +#: c-api/init_config.rst:726 +msgid "Randomized hash function seed." msgstr "" -#: c-api/init_config.rst:258 +#: c-api/init_config.rst:728 msgid "" -"If non-zero, disable UTF-8 Mode, set the Python filesystem encoding to " -"``mbcs``, set the filesystem error handler to ``replace``." +"If :c:member:`~PyConfig.use_hash_seed` is zero, a seed is chosen randomly at " +"Python startup, and :c:member:`~PyConfig.hash_seed` is ignored." msgstr "" -#: c-api/init_config.rst:555 -msgid "" -"Only available on Windows. ``#ifdef MS_WINDOWS`` macro can be used for " -"Windows specific code." +#: c-api/init_config.rst:731 +msgid "Set by the :envvar:`PYTHONHASHSEED` environment variable." msgstr "" -#: c-api/init_config.rst:266 +#: c-api/init_config.rst:733 msgid "" -"If non-zero, :c:func:`Py_PreInitializeFromArgs` and :c:func:" -"`Py_PreInitializeFromBytesArgs` parse their ``argv`` argument the same way " -"the regular Python parses command line arguments: see :ref:`Command Line " -"Arguments `." +"Default *use_hash_seed* value: ``-1`` in Python mode, ``0`` in isolated mode." msgstr "" -#: c-api/init_config.rst:273 -msgid "See :c:member:`PyConfig.use_environment`." +#: c-api/init_config.rst:738 +msgid "Python home directory." msgstr "" -#: c-api/init_config.rst:277 -msgid "If non-zero, enable the UTF-8 mode." +#: c-api/init_config.rst:740 +msgid "" +"If :c:func:`Py_SetPythonHome` has been called, use its argument if it is not " +"``NULL``." msgstr "" -#: c-api/init_config.rst:280 -msgid "Preinitialization with PyPreConfig" +#: c-api/init_config.rst:743 +msgid "Set by the :envvar:`PYTHONHOME` environment variable." msgstr "" -#: c-api/init_config.rst:282 -msgid "Functions to preinitialize Python:" +#: c-api/init_config.rst:840 c-api/init_config.rst:942 +#: c-api/init_config.rst:969 +msgid "Part of the :ref:`Python Path Configuration ` input." msgstr "" -#: c-api/init_config.rst:286 -msgid "Preinitialize Python from *preconfig* preconfiguration." +#: c-api/init_config.rst:751 +msgid "If non-zero, profile import time." msgstr "" -#: c-api/init_config.rst:290 +#: c-api/init_config.rst:753 msgid "" -"Preinitialize Python from *preconfig* preconfiguration and command line " -"arguments (bytes strings)." +"Set the ``1`` by the :option:`-X importtime <-X>` option and the :envvar:" +"`PYTHONPROFILEIMPORTTIME` environment variable." msgstr "" -#: c-api/init_config.rst:295 -msgid "" -"Preinitialize Python from *preconfig* preconfiguration and command line " -"arguments (wide strings)." +#: c-api/init_config.rst:760 +msgid "Enter interactive mode after executing a script or a command." msgstr "" -#: c-api/init_config.rst:730 +#: c-api/init_config.rst:762 msgid "" -"The caller is responsible to handle exceptions (error or exit) using :c:func:" -"`PyStatus_Exception` and :c:func:`Py_ExitStatusException`." +"If greater than 0, enable inspect: when a script is passed as first argument " +"or the -c option is used, enter interactive mode after executing the script " +"or the command, even when :data:`sys.stdin` does not appear to be a terminal." msgstr "" -#: c-api/init_config.rst:301 +#: c-api/init_config.rst:767 msgid "" -"For :ref:`Python Configuration ` (:c:func:" -"`PyPreConfig_InitPythonConfig`), if Python is initialized with command line " -"arguments, the command line arguments must also be passed to preinitialize " -"Python, since they have an effect on the pre-configuration like encodings. " -"For example, the :option:`-X utf8 <-X>` command line option enables the " -"UTF-8 Mode." +"Incremented by the :option:`-i` command line option. Set to ``1`` if the :" +"envvar:`PYTHONINSPECT` environment variable is non-empty." msgstr "" -#: c-api/init_config.rst:308 -msgid "" -"``PyMem_SetAllocator()`` can be called after :c:func:`Py_PreInitialize` and " -"before :c:func:`Py_InitializeFromConfig` to install a custom memory " -"allocator. It can be called before :c:func:`Py_PreInitialize` if :c:member:" -"`PyPreConfig.allocator` is set to ``PYMEM_ALLOCATOR_NOT_SET``." +#: c-api/init_config.rst:774 +msgid "Install Python signal handlers?" msgstr "" -#: c-api/init_config.rst:313 -msgid "" -"Python memory allocation functions like :c:func:`PyMem_RawMalloc` must not " -"be used before Python preinitialization, whereas calling directly " -"``malloc()`` and ``free()`` is always safe. :c:func:`Py_DecodeLocale` must " -"not be called before the preinitialization." +#: c-api/init_config.rst:916 c-api/init_config.rst:1113 +msgid "Default: ``1`` in Python mode, ``0`` in isolated mode." msgstr "" -#: c-api/init_config.rst:318 -msgid "Example using the preinitialization to enable the UTF-8 Mode::" +#: c-api/init_config.rst:780 +msgid "If greater than 0, enable the interactive mode (REPL)." msgstr "" -#: c-api/init_config.rst:339 -msgid "PyConfig" +#: c-api/init_config.rst:782 +msgid "Incremented by the :option:`-i` command line option." msgstr "" -#: c-api/init_config.rst:343 -msgid "Structure containing most parameters to configure Python." +#: c-api/init_config.rst:788 +msgid "If greater than 0, enable isolated mode:" msgstr "" -#: c-api/init_config.rst:345 -msgid "Structure methods:" +#: c-api/init_config.rst:790 +msgid "" +":data:`sys.path` contains neither the script's directory (computed from " +"``argv[0]`` or the current directory) nor the user's site-packages directory." msgstr "" -#: c-api/init_config.rst:349 +#: c-api/init_config.rst:793 msgid "" -"Initialize configuration with :ref:`Python Configuration `." +"Python REPL doesn't import :mod:`readline` nor enable default readline " +"configuration on interactive prompts." msgstr "" -#: c-api/init_config.rst:354 +#: c-api/init_config.rst:795 msgid "" -"Initialize configuration with :ref:`Isolated Configuration `." +"Set :c:member:`~PyConfig.use_environment` and :c:member:`~PyConfig." +"user_site_directory` to 0." msgstr "" -#: c-api/init_config.rst:359 -msgid "Copy the wide character string *str* into ``*config_str``." +#: c-api/init_config.rst:800 +msgid "See also :c:member:`PyPreConfig.isolated`." msgstr "" -#: c-api/init_config.rst:367 c-api/init_config.rst:379 -#: c-api/init_config.rst:393 -msgid "Preinitialize Python if needed." +#: c-api/init_config.rst:804 +msgid "" +"If non-zero, use :class:`io.FileIO` instead of :class:`io.WindowsConsoleIO` " +"for :data:`sys.stdin`, :data:`sys.stdout` and :data:`sys.stderr`." msgstr "" -#: c-api/init_config.rst:365 +#: c-api/init_config.rst:808 msgid "" -"Decode *str* using ``Py_DecodeLocale()`` and set the result into " -"``*config_str``." +"Set to ``1`` if the :envvar:`PYTHONLEGACYWINDOWSSTDIO` environment variable " +"is set to a non-empty string." msgstr "" -#: c-api/init_config.rst:371 -msgid "Set command line arguments from wide character strings." +#: c-api/init_config.rst:816 +msgid "See also the :pep:`528` (Change Windows console encoding to UTF-8)." msgstr "" -#: c-api/init_config.rst:377 +#: c-api/init_config.rst:820 msgid "" -"Set command line arguments: decode bytes using :c:func:`Py_DecodeLocale`." +"If non-zero, dump statistics on :ref:`Python pymalloc memory allocator " +"` at exit." msgstr "" -#: c-api/init_config.rst:383 -msgid "Set the list of wide strings *list* to *length* and *items*." +#: c-api/init_config.rst:823 +msgid "Set to ``1`` by the :envvar:`PYTHONMALLOCSTATS` environment variable." msgstr "" -#: c-api/init_config.rst:389 -msgid "Read all Python configuration." +#: c-api/init_config.rst:825 +msgid "" +"The option is ignored if Python is :option:`configured using the --without-" +"pymalloc option <--without-pymalloc>`." msgstr "" -#: c-api/init_config.rst:391 -msgid "Fields which are already initialized are left unchanged." +#: c-api/init_config.rst:832 +msgid "Platform library directory name: :data:`sys.platlibdir`." msgstr "" -#: c-api/init_config.rst:397 -msgid "Release configuration memory." +#: c-api/init_config.rst:834 +msgid "Set by the :envvar:`PYTHONPLATLIBDIR` environment variable." msgstr "" -#: c-api/init_config.rst:399 +#: c-api/init_config.rst:836 msgid "" -"Most ``PyConfig`` methods preinitialize Python if needed. In that case, the " -"Python preinitialization configuration in based on the :c:type:`PyConfig`. " -"If configuration fields which are in common with :c:type:`PyPreConfig` are " -"tuned, they must be set before calling a :c:type:`PyConfig` method:" +"Default: value of the ``PLATLIBDIR`` macro which is set by the :option:" +"`configure --with-platlibdir option <--with-platlibdir>` (default: ``\"lib" +"\"``)." msgstr "" -#: c-api/init_config.rst:404 -msgid ":c:member:`~PyConfig.dev_mode`" +#: c-api/init_config.rst:846 +msgid "" +"Module search paths (:data:`sys.path`) as a string separated by ``DELIM`` (:" +"data:`os.path.pathsep`)." msgstr "" -#: c-api/init_config.rst:405 -msgid ":c:member:`~PyConfig.isolated`" +#: c-api/init_config.rst:849 +msgid "Set by the :envvar:`PYTHONPATH` environment variable." msgstr "" -#: c-api/init_config.rst:406 -msgid ":c:member:`~PyConfig.parse_argv`" +#: c-api/init_config.rst:858 +msgid "Module search paths: :data:`sys.path`." msgstr "" -#: c-api/init_config.rst:407 -msgid ":c:member:`~PyConfig.use_environment`" +#: c-api/init_config.rst:860 +msgid "" +"If :c:member:`~PyConfig.module_search_paths_set` is equal to 0, the function " +"calculating the :ref:`Python Path Configuration ` " +"overrides the :c:member:`~PyConfig.module_search_paths` and sets :c:member:" +"`~PyConfig.module_search_paths_set` to ``1``." msgstr "" -#: c-api/init_config.rst:409 +#: c-api/init_config.rst:865 msgid "" -"Moreover, if :c:func:`PyConfig_SetArgv` or :c:func:`PyConfig_SetBytesArgv` " -"is used, this method must be called first, before other methods, since the " -"preinitialization configuration depends on command line arguments (if :c:" -"member:`parse_argv` is non-zero)." +"Default: empty list (``module_search_paths``) and ``0`` " +"(``module_search_paths_set``)." msgstr "" -#: c-api/init_config.rst:414 -msgid "" -"The caller of these methods is responsible to handle exceptions (error or " -"exit) using ``PyStatus_Exception()`` and ``Py_ExitStatusException()``." +#: c-api/init_config.rst:872 +msgid "Compilation optimization level:" msgstr "" -#: c-api/init_config.rst:421 -msgid "" -"Command line arguments, :data:`sys.argv`. See :c:member:`~PyConfig." -"parse_argv` to parse :c:member:`~PyConfig.argv` the same way the regular " -"Python parses Python command line arguments. If :c:member:`~PyConfig.argv` " -"is empty, an empty string is added to ensure that :data:`sys.argv` always " -"exists and is never empty." +#: c-api/init_config.rst:874 +msgid "``0``: Peephole optimizer, set ``__debug__`` to ``True``." msgstr "" -#: c-api/init_config.rst:429 -msgid ":data:`sys.base_exec_prefix`." +#: c-api/init_config.rst:875 +msgid "``1``: Level 0, remove assertions, set ``__debug__`` to ``False``." +msgstr "" + +#: c-api/init_config.rst:876 +msgid "``2``: Level 1, strip docstrings." msgstr "" -#: c-api/init_config.rst:433 +#: c-api/init_config.rst:878 msgid "" -":data:`sys._base_executable`: ``__PYVENV_LAUNCHER__`` environment variable " -"value, or copy of :c:member:`PyConfig.executable`." +"Incremented by the :option:`-O` command line option. Set to the :envvar:" +"`PYTHONOPTIMIZE` environment variable value." msgstr "" -#: c-api/init_config.rst:438 -msgid ":data:`sys.base_prefix`." +#: c-api/init_config.rst:885 +msgid "" +"The list of the original command line arguments passed to the Python " +"executable: :data:`sys.orig_argv`." msgstr "" -#: c-api/init_config.rst:442 +#: c-api/init_config.rst:888 msgid "" -":data:`sys.platlibdir`: platform library directory name, set at configure " -"time by ``--with-platlibdir``, overrideable by the ``PYTHONPLATLIBDIR`` " -"environment variable." +"If :c:member:`~PyConfig.orig_argv` list is empty and :c:member:`~PyConfig." +"argv` is not a list only containing an empty string, :c:func:`PyConfig_Read` " +"copies :c:member:`~PyConfig.argv` into :c:member:`~PyConfig.orig_argv` " +"before modifying :c:member:`~PyConfig.argv` (if :c:member:`~PyConfig." +"parse_argv` is non-zero)." msgstr "" -#: c-api/init_config.rst:450 +#: c-api/init_config.rst:895 msgid "" -"If equals to 0, enable unbuffered mode, making the stdout and stderr streams " -"unbuffered." +"See also the :c:member:`~PyConfig.argv` member and the :c:func:" +"`Py_GetArgcArgv` function." msgstr "" -#: c-api/init_config.rst:453 -msgid "stdin is always opened in buffered mode." +#: c-api/init_config.rst:1148 c-api/init_config.rst:1167 +msgid "Default: empty list." msgstr "" -#: c-api/init_config.rst:457 +#: c-api/init_config.rst:904 +msgid "Parse command line arguments?" +msgstr "" + +#: c-api/init_config.rst:906 msgid "" -"If equals to 1, issue a warning when comparing :class:`bytes` or :class:" -"`bytearray` with :class:`str`, or comparing :class:`bytes` with :class:" -"`int`. If equal or greater to 2, raise a :exc:`BytesWarning` exception." +"If equals to ``1``, parse :c:member:`~PyConfig.argv` the same way the " +"regular Python parses :ref:`command line arguments `, and " +"strip Python arguments from :c:member:`~PyConfig.argv`." msgstr "" -#: c-api/init_config.rst:464 +#: c-api/init_config.rst:918 msgid "" -"Control the validation behavior of hash-based ``.pyc`` files (see :pep:" -"`552`): :option:`--check-hash-based-pycs` command line option value." +"The :c:member:`PyConfig.argv` arguments are now only parsed if :c:member:" +"`PyConfig.parse_argv` equals to ``1``." msgstr "" -#: c-api/init_config.rst:467 -msgid "Valid values: ``always``, ``never`` and ``default``." +#: c-api/init_config.rst:924 +msgid "" +"Parser debug mode. If greater than 0, turn on parser debugging output (for " +"expert only, depending on compilation options)." msgstr "" -#: c-api/init_config.rst:469 -msgid "The default value is: ``default``." +#: c-api/init_config.rst:927 +msgid "" +"Incremented by the :option:`-d` command line option. Set to the :envvar:" +"`PYTHONDEBUG` environment variable value." msgstr "" -#: c-api/init_config.rst:473 +#: c-api/init_config.rst:934 msgid "" -"If non-zero, configure C standard streams (``stdio``, ``stdout``, " -"``stdout``). For example, set their mode to ``O_BINARY`` on Windows." +"On Unix, if non-zero, calculating the :ref:`Python Path Configuration ` can log warnings into ``stderr``. If equals to 0, suppress " +"these warnings." msgstr "" -#: c-api/init_config.rst:478 -msgid "If non-zero, enable the :ref:`Python Development Mode `." +#: c-api/init_config.rst:938 +msgid "It has no effect on Windows." msgstr "" -#: c-api/init_config.rst:482 -msgid "If non-zero, dump all objects which are still alive at exit." +#: c-api/init_config.rst:946 +msgid "" +"The site-specific directory prefix where the platform independent Python " +"files are installed: :data:`sys.prefix`." msgstr "" -#: c-api/init_config.rst:484 -msgid "``Py_TRACE_REFS`` macro must be defined in build." +#: c-api/init_config.rst:955 +msgid "" +"Program name used to initialize :c:member:`~PyConfig.executable` and in " +"early error messages during Python initialization." msgstr "" -#: c-api/init_config.rst:488 -msgid ":data:`sys.exec_prefix`." +#: c-api/init_config.rst:958 +msgid "If :func:`Py_SetProgramName` has been called, use its argument." msgstr "" -#: c-api/init_config.rst:492 -msgid ":data:`sys.executable`." +#: c-api/init_config.rst:959 +msgid "On macOS, use :envvar:`PYTHONEXECUTABLE` environment variable if set." msgstr "" -#: c-api/init_config.rst:496 -msgid "If non-zero, call :func:`faulthandler.enable` at startup." +#: c-api/init_config.rst:960 +msgid "" +"If the ``WITH_NEXT_FRAMEWORK`` macro is defined, use :envvar:" +"`__PYVENV_LAUNCHER__` environment variable if set." msgstr "" -#: c-api/init_config.rst:500 -msgid "Filesystem encoding, :func:`sys.getfilesystemencoding`." +#: c-api/init_config.rst:962 +msgid "" +"Use ``argv[0]`` of :c:member:`~PyConfig.argv` if available and non-empty." msgstr "" -#: c-api/init_config.rst:504 -msgid "Filesystem encoding errors, :func:`sys.getfilesystemencodeerrors`." +#: c-api/init_config.rst:964 +msgid "" +"Otherwise, use ``L\"python\"`` on Windows, or ``L\"python3\"`` on other " +"platforms." msgstr "" -#: c-api/init_config.rst:509 -msgid "Randomized hash function seed." +#: c-api/init_config.rst:973 +msgid "" +"Directory where cached ``.pyc`` files are written: :data:`sys." +"pycache_prefix`." msgstr "" -#: c-api/init_config.rst:511 +#: c-api/init_config.rst:976 msgid "" -"If :c:member:`~PyConfig.use_hash_seed` is zero, a seed is chosen randomly at " -"Pythonstartup, and :c:member:`~PyConfig.hash_seed` is ignored." +"Set by the :option:`-X pycache_prefix=PATH <-X>` command line option and " +"the :envvar:`PYTHONPYCACHEPREFIX` environment variable." msgstr "" -#: c-api/init_config.rst:516 -msgid "Python home directory." +#: c-api/init_config.rst:979 +msgid "If ``NULL``, :data:`sys.pycache_prefix` is set to ``None``." msgstr "" -#: c-api/init_config.rst:518 +#: c-api/init_config.rst:985 msgid "" -"Initialized from :envvar:`PYTHONHOME` environment variable value by default." +"Quiet mode. If greater than 0, don't display the copyright and version at " +"Python startup in interactive mode." msgstr "" -#: c-api/init_config.rst:523 -msgid "If non-zero, profile import time." +#: c-api/init_config.rst:988 +msgid "Incremented by the :option:`-q` command line option." msgstr "" -#: c-api/init_config.rst:527 -msgid "Enter interactive mode after executing a script or a command." +#: c-api/init_config.rst:994 +msgid "Value of the :option:`-c` command line option." msgstr "" -#: c-api/init_config.rst:531 -msgid "Install signal handlers?" +#: c-api/init_config.rst:1008 c-api/init_config.rst:1016 +msgid "Used by :c:func:`Py_RunMain`." msgstr "" -#: c-api/init_config.rst:535 -#, fuzzy -msgid "Interactive mode." -msgstr "Mode interactif" - -#: c-api/init_config.rst:539 -msgid "If greater than 0, enable isolated mode:" +#: c-api/init_config.rst:1002 +msgid "" +"Filename passed on the command line: trailing command line argument without :" +"option:`-c` or :option:`-m`." msgstr "" -#: c-api/init_config.rst:541 +#: c-api/init_config.rst:1005 msgid "" -":data:`sys.path` contains neither the script's directory (computed from " -"``argv[0]`` or the current directory) nor the user's site-packages directory." +"For example, it is set to ``script.py`` by the ``python3 script.py arg`` " +"command." msgstr "" -#: c-api/init_config.rst:544 -msgid "" -"Python REPL doesn't import :mod:`readline` nor enable default readline " -"configuration on interactive prompts." +#: c-api/init_config.rst:1014 +msgid "Value of the :option:`-m` command line option." msgstr "" -#: c-api/init_config.rst:546 -msgid "" -"Set :c:member:`~PyConfig.use_environment` and :c:member:`~PyConfig." -"user_site_directory` to 0." +#: c-api/init_config.rst:1022 +msgid "Show total reference count at exit?" msgstr "" -#: c-api/init_config.rst:551 -msgid "" -"If non-zero, use :class:`io.FileIO` instead of :class:`io.WindowsConsoleIO` " -"for :data:`sys.stdin`, :data:`sys.stdout` and :data:`sys.stderr`." +#: c-api/init_config.rst:1024 +msgid "Set to 1 by :option:`-X showrefcount <-X>` command line option." msgstr "" -#: c-api/init_config.rst:560 +#: c-api/init_config.rst:1026 msgid "" -"If non-zero, dump statistics on :ref:`Python pymalloc memory allocator " -"` at exit." +"Need a :ref:`debug build of Python ` (the ``Py_REF_DEBUG`` " +"macro must be defined)." msgstr "" -#: c-api/init_config.rst:563 -msgid "The option is ignored if Python is built using ``--without-pymalloc``." +#: c-api/init_config.rst:1033 +msgid "Import the :mod:`site` module at startup?" msgstr "" -#: c-api/init_config.rst:567 +#: c-api/init_config.rst:1035 msgid "" -"Module search paths as a string separated by ``DELIM`` (:data:`os.path." -"pathsep`)." +"If equal to zero, disable the import of the module site and the site-" +"dependent manipulations of :data:`sys.path` that it entails." msgstr "" -#: c-api/init_config.rst:570 +#: c-api/init_config.rst:1038 msgid "" -"Initialized from :envvar:`PYTHONPATH` environment variable value by default." +"Also disable these manipulations if the :mod:`site` module is explicitly " +"imported later (call :func:`site.main` if you want them to be triggered)." msgstr "" -#: c-api/init_config.rst:576 -msgid "" -":data:`sys.path`. If :c:member:`~PyConfig.module_search_paths_set` is equal " -"to 0, the :c:member:`~PyConfig.module_search_paths` is overridden by the " -"function calculating the :ref:`Path Configuration `." +#: c-api/init_config.rst:1041 +msgid "Set to ``0`` by the :option:`-S` command line option." msgstr "" -#: c-api/init_config.rst:583 -msgid "Compilation optimization level:" +#: c-api/init_config.rst:1043 +msgid "" +":data:`sys.flags.no_site` is set to the inverted value of :c:member:" +"`~PyConfig.site_import`." msgstr "" -#: c-api/init_config.rst:585 -msgid "0: Peephole optimizer (and ``__debug__`` is set to ``True``)" +#: c-api/init_config.rst:1050 +msgid "" +"If non-zero, skip the first line of the :c:member:`PyConfig.run_filename` " +"source." msgstr "" -#: c-api/init_config.rst:586 -msgid "1: Remove assertions, set ``__debug__`` to ``False``" +#: c-api/init_config.rst:1053 +msgid "" +"It allows the usage of non-Unix forms of ``#!cmd``. This is intended for a " +"DOS specific hack only." msgstr "" -#: c-api/init_config.rst:587 -msgid "2: Strip docstrings" +#: c-api/init_config.rst:1056 +msgid "Set to ``1`` by the :option:`-x` command line option." msgstr "" -#: c-api/init_config.rst:591 +#: c-api/init_config.rst:1063 msgid "" -"If non-zero, parse :c:member:`~PyConfig.argv` the same way the regular " -"Python command line arguments, and strip Python arguments from :c:member:" -"`~PyConfig.argv`: see :ref:`Command Line Arguments `." +"Encoding and encoding errors of :data:`sys.stdin`, :data:`sys.stdout` and :" +"data:`sys.stderr` (but :data:`sys.stderr` always uses ``\"backslashreplace" +"\"`` error handler)." msgstr "" -#: c-api/init_config.rst:598 +#: c-api/init_config.rst:1067 msgid "" -"If non-zero, turn on parser debugging output (for expert only, depending on " -"compilation options)." +"If :c:func:`Py_SetStandardStreamEncoding` has been called, use its *error* " +"and *errors* arguments if they are not ``NULL``." msgstr "" -#: c-api/init_config.rst:603 +#: c-api/init_config.rst:1070 msgid "" -"If equal to 0, suppress warnings when calculating the :ref:`Path " -"Configuration ` (Unix only, Windows does not log any " -"warning). Otherwise, warnings are written into ``stderr``." +"Use the :envvar:`PYTHONIOENCODING` environment variable if it is non-empty." msgstr "" -#: c-api/init_config.rst:609 -msgid ":data:`sys.prefix`." +#: c-api/init_config.rst:1073 +msgid "Default encoding:" msgstr "" -#: c-api/init_config.rst:613 -msgid "" -"Program name. Used to initialize :c:member:`~PyConfig.executable`, and in " -"early error messages." +#: c-api/init_config.rst:1075 +msgid "``\"UTF-8\"`` if :c:member:`PyPreConfig.utf8_mode` is non-zero." msgstr "" -#: c-api/init_config.rst:618 -msgid ":data:`sys.pycache_prefix`: ``.pyc`` cache prefix." +#: c-api/init_config.rst:1076 +msgid "Otherwise, use the :term:`locale encoding`." msgstr "" -#: c-api/init_config.rst:620 -msgid "If ``NULL``, :data:`sys.pycache_prefix` is set to ``None``." +#: c-api/init_config.rst:1078 +msgid "Default error handler:" msgstr "" -#: c-api/init_config.rst:624 +#: c-api/init_config.rst:1080 +msgid "On Windows: use ``\"surrogateescape\"``." +msgstr "" + +#: c-api/init_config.rst:1081 msgid "" -"Quiet mode. For example, don't display the copyright and version messages in " -"interactive mode." +"``\"surrogateescape\"`` if :c:member:`PyPreConfig.utf8_mode` is non-zero, or " +"if the LC_CTYPE locale is \"C\" or \"POSIX\"." msgstr "" -#: c-api/init_config.rst:629 -msgid "``python3 -c COMMAND`` argument. Used by :c:func:`Py_RunMain`." +#: c-api/init_config.rst:1083 +msgid "``\"strict\"`` otherwise." msgstr "" -#: c-api/init_config.rst:633 -msgid "``python3 FILENAME`` argument. Used by :c:func:`Py_RunMain`." +#: c-api/init_config.rst:1087 +msgid "Enable tracemalloc?" msgstr "" -#: c-api/init_config.rst:637 -msgid "``python3 -m MODULE`` argument. Used by :c:func:`Py_RunMain`." +#: c-api/init_config.rst:1089 +msgid "If non-zero, call :func:`tracemalloc.start` at startup." msgstr "" -#: c-api/init_config.rst:641 -msgid "Show total reference count at exit?" +#: c-api/init_config.rst:1091 +msgid "" +"Set by :option:`-X tracemalloc=N <-X>` command line option and by the :" +"envvar:`PYTHONTRACEMALLOC` environment variable." msgstr "" -#: c-api/init_config.rst:643 -msgid "Set to 1 by :option:`-X showrefcount <-X>` command line option." +#: c-api/init_config.rst:1098 +msgid "Use :ref:`environment variables `?" msgstr "" -#: c-api/init_config.rst:645 -msgid "Need a debug build of Python (``Py_REF_DEBUG`` macro must be defined)." +#: c-api/init_config.rst:1100 +msgid "" +"If equals to zero, ignore the :ref:`environment variables `." msgstr "" -#: c-api/init_config.rst:649 -msgid "Import the :mod:`site` module at startup?" +#: c-api/init_config.rst:1107 +msgid "If non-zero, add the user site directory to :data:`sys.path`." msgstr "" -#: c-api/init_config.rst:653 -msgid "Skip the first line of the source?" +#: c-api/init_config.rst:1109 +msgid "Set to ``0`` by the :option:`-s` and :option:`-I` command line options." msgstr "" -#: c-api/init_config.rst:658 -msgid "" -"Encoding and encoding errors of :data:`sys.stdin`, :data:`sys.stdout` and :" -"data:`sys.stderr`." +#: c-api/init_config.rst:1111 +msgid "Set to ``0`` by the :envvar:`PYTHONNOUSERSITE` environment variable." msgstr "" -#: c-api/init_config.rst:663 -msgid "If non-zero, call :func:`tracemalloc.start` at startup." +#: c-api/init_config.rst:1117 +msgid "" +"Verbose mode. If greater than 0, print a message each time a module is " +"imported, showing the place (filename or built-in module) from which it is " +"loaded." msgstr "" -#: c-api/init_config.rst:667 -msgid "If greater than 0, use :ref:`environment variables `." +#: c-api/init_config.rst:1121 +msgid "" +"If greater or equal to 2, print a message for each file that is checked for " +"when searching for a module. Also provides information on module cleanup at " +"exit." msgstr "" -#: c-api/init_config.rst:671 -msgid "If non-zero, add user site directory to :data:`sys.path`." +#: c-api/init_config.rst:1125 +msgid "Incremented by the :option:`-v` command line option." msgstr "" -#: c-api/init_config.rst:675 -msgid "If non-zero, enable verbose mode." +#: c-api/init_config.rst:1127 +msgid "Set to the :envvar:`PYTHONVERBOSE` environment variable value." msgstr "" -#: c-api/init_config.rst:679 +#: c-api/init_config.rst:1133 msgid "" -":data:`sys.warnoptions`: options of the :mod:`warnings` module to build " -"warnings filters: lowest to highest priority." +"Options of the :mod:`warnings` module to build warnings filters, lowest to " +"highest priority: :data:`sys.warnoptions`." msgstr "" -#: c-api/init_config.rst:682 +#: c-api/init_config.rst:1136 msgid "" "The :mod:`warnings` module adds :data:`sys.warnoptions` in the reverse " "order: the last :c:member:`PyConfig.warnoptions` item becomes the first item " "of :data:`warnings.filters` which is checked first (highest priority)." msgstr "" -#: c-api/init_config.rst:689 -msgid "If non-zero, write ``.pyc`` files." +#: c-api/init_config.rst:1141 +msgid "" +"The :option:`-W` command line options adds its value to :c:member:`~PyConfig." +"warnoptions`, it can be used multiple times." msgstr "" -#: c-api/init_config.rst:691 +#: c-api/init_config.rst:1144 msgid "" -":data:`sys.dont_write_bytecode` is initialized to the inverted value of :c:" -"member:`~PyConfig.write_bytecode`." +"The :envvar:`PYTHONWARNINGS` environment variable can also be used to add " +"warning options. Multiple options can be specified, separated by commas (``," +"``)." msgstr "" -#: c-api/init_config.rst:696 -msgid ":data:`sys._xoptions`." +#: c-api/init_config.rst:1152 +msgid "" +"If equal to 0, Python won't try to write ``.pyc`` files on the import of " +"source modules." msgstr "" -#: c-api/init_config.rst:700 -msgid "Enable PEG parser? Default: 1." +#: c-api/init_config.rst:1155 +msgid "" +"Set to ``0`` by the :option:`-B` command line option and the :envvar:" +"`PYTHONDONTWRITEBYTECODE` environment variable." msgstr "" -#: c-api/init_config.rst:702 -msgid "Set to 0 by :option:`-X oldparser <-X>` and :envvar:`PYTHONOLDPARSER`." +#: c-api/init_config.rst:1158 +msgid "" +":data:`sys.dont_write_bytecode` is initialized to the inverted value of :c:" +"member:`~PyConfig.write_bytecode`." msgstr "" -#: c-api/init_config.rst:704 -msgid "See also :pep:`617`." +#: c-api/init_config.rst:1165 +msgid "Values of the :option:`-X` command line options: :data:`sys._xoptions`." msgstr "" -#: c-api/init_config.rst:708 +#: c-api/init_config.rst:1169 msgid "" -"If ``parse_argv`` is non-zero, ``argv`` arguments are parsed the same way " -"the regular Python parses command line arguments, and Python arguments are " -"stripped from ``argv``: see :ref:`Command Line Arguments `." +"If :c:member:`~PyConfig.parse_argv` is non-zero, :c:member:`~PyConfig.argv` " +"arguments are parsed the same way the regular Python parses :ref:`command " +"line arguments `, and Python arguments are stripped from :" +"c:member:`~PyConfig.argv`." msgstr "" -#: c-api/init_config.rst:713 +#: c-api/init_config.rst:1174 msgid "" -"The ``xoptions`` options are parsed to set other options: see :option:`-X` " -"option." +"The :c:member:`~PyConfig.xoptions` options are parsed to set other options: " +"see the :option:`-X` command line option." msgstr "" -#: c-api/init_config.rst:718 +#: c-api/init_config.rst:1179 msgid "The ``show_alloc_count`` field has been removed." msgstr "" -#: c-api/init_config.rst:722 +#: c-api/init_config.rst:1183 msgid "Initialization with PyConfig" msgstr "" -#: c-api/init_config.rst:724 +#: c-api/init_config.rst:1185 msgid "Function to initialize Python:" msgstr "" -#: c-api/init_config.rst:728 +#: c-api/init_config.rst:1189 msgid "Initialize Python from *config* configuration." msgstr "" -#: c-api/init_config.rst:733 +#: c-api/init_config.rst:1194 +msgid "" +"If :c:func:`PyImport_FrozenModules`, :c:func:`PyImport_AppendInittab` or :c:" +"func:`PyImport_ExtendInittab` are used, they must be set or called after " +"Python preinitialization and before the Python initialization. If Python is " +"initialized multiple times, :c:func:`PyImport_AppendInittab` or :c:func:" +"`PyImport_ExtendInittab` must be called before each Python initialization." +msgstr "" + +#: c-api/init_config.rst:1201 msgid "" -"If ``PyImport_FrozenModules``, ``PyImport_AppendInittab()`` or " -"``PyImport_ExtendInittab()`` are used, they must be set or called after " -"Python preinitialization and before the Python initialization." +"The current configuration (``PyConfig`` type) is stored in " +"``PyInterpreterState.config``." msgstr "" -#: c-api/init_config.rst:737 +#: c-api/init_config.rst:1204 msgid "Example setting the program name::" msgstr "" -#: c-api/init_config.rst:765 +#: c-api/init_config.rst:1232 msgid "" "More complete example modifying the default configuration, read the " "configuration, and then override some parameters::" msgstr "" -#: c-api/init_config.rst:816 +#: c-api/init_config.rst:1283 msgid "Isolated Configuration" msgstr "" -#: c-api/init_config.rst:818 +#: c-api/init_config.rst:1285 msgid "" ":c:func:`PyPreConfig_InitIsolatedConfig` and :c:func:" "`PyConfig_InitIsolatedConfig` functions create a configuration to isolate " "Python from the system. For example, to embed Python into an application." msgstr "" -#: c-api/init_config.rst:823 +#: c-api/init_config.rst:1290 msgid "" "This configuration ignores global configuration variables, environments " "variables, command line arguments (:c:member:`PyConfig.argv` is not parsed) " @@ -1010,130 +1555,126 @@ msgid "" "LC_CTYPE locale are left unchanged. Signal handlers are not installed." msgstr "" -#: c-api/init_config.rst:828 +#: c-api/init_config.rst:1295 msgid "" "Configuration files are still used with this configuration. Set the :ref:" -"`Path Configuration ` (\"output fields\") to ignore these " -"configuration files and avoid the function computing the default path " +"`Python Path Configuration ` (\"output fields\") to ignore " +"these configuration files and avoid the function computing the default path " "configuration." msgstr "" -#: c-api/init_config.rst:837 +#: c-api/init_config.rst:1304 msgid "Python Configuration" msgstr "" -#: c-api/init_config.rst:839 +#: c-api/init_config.rst:1306 msgid "" ":c:func:`PyPreConfig_InitPythonConfig` and :c:func:" "`PyConfig_InitPythonConfig` functions create a configuration to build a " "customized Python which behaves as the regular Python." msgstr "" -#: c-api/init_config.rst:843 +#: c-api/init_config.rst:1310 msgid "" "Environments variables and command line arguments are used to configure " "Python, whereas global configuration variables are ignored." msgstr "" -#: c-api/init_config.rst:846 +#: c-api/init_config.rst:1313 msgid "" -"This function enables C locale coercion (:pep:`538`) and UTF-8 Mode (:pep:" -"`540`) depending on the LC_CTYPE locale, :envvar:`PYTHONUTF8` and :envvar:" -"`PYTHONCOERCECLOCALE` environment variables." +"This function enables C locale coercion (:pep:`538`) and :ref:`Python UTF-8 " +"Mode ` (:pep:`540`) depending on the LC_CTYPE locale, :envvar:" +"`PYTHONUTF8` and :envvar:`PYTHONCOERCECLOCALE` environment variables." msgstr "" -#: c-api/init_config.rst:850 -msgid "Example of customized Python always running in isolated mode::" -msgstr "" - -#: c-api/init_config.rst:889 -msgid "Path Configuration" +#: c-api/init_config.rst:1322 +msgid "Python Path Configuration" msgstr "" -#: c-api/init_config.rst:891 +#: c-api/init_config.rst:1324 msgid ":c:type:`PyConfig` contains multiple fields for the path configuration:" msgstr "" -#: c-api/init_config.rst:893 +#: c-api/init_config.rst:1326 msgid "Path configuration inputs:" msgstr "" -#: c-api/init_config.rst:895 +#: c-api/init_config.rst:1328 msgid ":c:member:`PyConfig.home`" msgstr "" -#: c-api/init_config.rst:896 +#: c-api/init_config.rst:1329 msgid ":c:member:`PyConfig.platlibdir`" msgstr "" -#: c-api/init_config.rst:897 +#: c-api/init_config.rst:1330 msgid ":c:member:`PyConfig.pathconfig_warnings`" msgstr "" -#: c-api/init_config.rst:898 +#: c-api/init_config.rst:1331 msgid ":c:member:`PyConfig.program_name`" msgstr "" -#: c-api/init_config.rst:899 +#: c-api/init_config.rst:1332 msgid ":c:member:`PyConfig.pythonpath_env`" msgstr "" -#: c-api/init_config.rst:900 +#: c-api/init_config.rst:1333 msgid "current working directory: to get absolute paths" msgstr "" -#: c-api/init_config.rst:901 +#: c-api/init_config.rst:1334 msgid "" "``PATH`` environment variable to get the program full path (from :c:member:" "`PyConfig.program_name`)" msgstr "" -#: c-api/init_config.rst:903 +#: c-api/init_config.rst:1336 msgid "``__PYVENV_LAUNCHER__`` environment variable" msgstr "" -#: c-api/init_config.rst:904 +#: c-api/init_config.rst:1337 msgid "" "(Windows only) Application paths in the registry under \"Software\\Python" "\\PythonCore\\X.Y\\PythonPath\" of HKEY_CURRENT_USER and HKEY_LOCAL_MACHINE " "(where X.Y is the Python version)." msgstr "" -#: c-api/init_config.rst:908 +#: c-api/init_config.rst:1341 msgid "Path configuration output fields:" msgstr "" -#: c-api/init_config.rst:910 +#: c-api/init_config.rst:1343 msgid ":c:member:`PyConfig.base_exec_prefix`" msgstr "" -#: c-api/init_config.rst:911 +#: c-api/init_config.rst:1344 msgid ":c:member:`PyConfig.base_executable`" msgstr "" -#: c-api/init_config.rst:912 +#: c-api/init_config.rst:1345 msgid ":c:member:`PyConfig.base_prefix`" msgstr "" -#: c-api/init_config.rst:913 +#: c-api/init_config.rst:1346 msgid ":c:member:`PyConfig.exec_prefix`" msgstr "" -#: c-api/init_config.rst:914 +#: c-api/init_config.rst:1347 msgid ":c:member:`PyConfig.executable`" msgstr "" -#: c-api/init_config.rst:915 +#: c-api/init_config.rst:1348 msgid "" ":c:member:`PyConfig.module_search_paths_set`, :c:member:`PyConfig." "module_search_paths`" msgstr "" -#: c-api/init_config.rst:917 +#: c-api/init_config.rst:1350 msgid ":c:member:`PyConfig.prefix`" msgstr "" -#: c-api/init_config.rst:919 +#: c-api/init_config.rst:1352 msgid "" "If at least one \"output field\" is not set, Python calculates the path " "configuration to fill unset fields. If :c:member:`~PyConfig." @@ -1142,7 +1683,7 @@ msgid "" "module_search_paths_set` is set to 1." msgstr "" -#: c-api/init_config.rst:925 +#: c-api/init_config.rst:1358 msgid "" "It is possible to completely ignore the function calculating the default " "path configuration by setting explicitly all path configuration output " @@ -1152,52 +1693,52 @@ msgid "" "well." msgstr "" -#: c-api/init_config.rst:932 +#: c-api/init_config.rst:1365 msgid "" "Set :c:member:`~PyConfig.pathconfig_warnings` to 0 to suppress warnings when " "calculating the path configuration (Unix only, Windows does not log any " "warning)." msgstr "" -#: c-api/init_config.rst:935 +#: c-api/init_config.rst:1368 msgid "" "If :c:member:`~PyConfig.base_prefix` or :c:member:`~PyConfig." "base_exec_prefix` fields are not set, they inherit their value from :c:" "member:`~PyConfig.prefix` and :c:member:`~PyConfig.exec_prefix` respectively." msgstr "" -#: c-api/init_config.rst:939 +#: c-api/init_config.rst:1372 msgid ":c:func:`Py_RunMain` and :c:func:`Py_Main` modify :data:`sys.path`:" msgstr "" -#: c-api/init_config.rst:941 +#: c-api/init_config.rst:1374 msgid "" "If :c:member:`~PyConfig.run_filename` is set and is a directory which " "contains a ``__main__.py`` script, prepend :c:member:`~PyConfig." "run_filename` to :data:`sys.path`." msgstr "" -#: c-api/init_config.rst:944 +#: c-api/init_config.rst:1377 msgid "If :c:member:`~PyConfig.isolated` is zero:" msgstr "" -#: c-api/init_config.rst:946 +#: c-api/init_config.rst:1379 msgid "" "If :c:member:`~PyConfig.run_module` is set, prepend the current directory " "to :data:`sys.path`. Do nothing if the current directory cannot be read." msgstr "" -#: c-api/init_config.rst:948 +#: c-api/init_config.rst:1381 msgid "" "If :c:member:`~PyConfig.run_filename` is set, prepend the directory of the " "filename to :data:`sys.path`." msgstr "" -#: c-api/init_config.rst:950 +#: c-api/init_config.rst:1383 msgid "Otherwise, prepend an empty string to :data:`sys.path`." msgstr "" -#: c-api/init_config.rst:952 +#: c-api/init_config.rst:1385 msgid "" "If :c:member:`~PyConfig.site_import` is non-zero, :data:`sys.path` can be " "modified by the :mod:`site` module. If :c:member:`~PyConfig." @@ -1206,152 +1747,156 @@ msgid "" "data:`sys.path`." msgstr "" -#: c-api/init_config.rst:958 +#: c-api/init_config.rst:1391 msgid "The following configuration files are used by the path configuration:" msgstr "" -#: c-api/init_config.rst:960 +#: c-api/init_config.rst:1393 msgid "``pyvenv.cfg``" msgstr "" -#: c-api/init_config.rst:961 +#: c-api/init_config.rst:1394 msgid "``python._pth`` (Windows only)" msgstr "" -#: c-api/init_config.rst:962 +#: c-api/init_config.rst:1395 msgid "``pybuilddir.txt`` (Unix only)" msgstr "" -#: c-api/init_config.rst:964 +#: c-api/init_config.rst:1397 msgid "" "The ``__PYVENV_LAUNCHER__`` environment variable is used to set :c:member:" "`PyConfig.base_executable`" msgstr "" -#: c-api/init_config.rst:969 +#: c-api/init_config.rst:1402 msgid "Py_RunMain()" msgstr "" -#: c-api/init_config.rst:973 +#: c-api/init_config.rst:1406 msgid "" "Execute the command (:c:member:`PyConfig.run_command`), the script (:c:" "member:`PyConfig.run_filename`) or the module (:c:member:`PyConfig." "run_module`) specified on the command line or in the configuration." msgstr "" -#: c-api/init_config.rst:978 +#: c-api/init_config.rst:1411 msgid "By default and when if :option:`-i` option is used, run the REPL." msgstr "" -#: c-api/init_config.rst:980 +#: c-api/init_config.rst:1413 msgid "" "Finally, finalizes Python and returns an exit status that can be passed to " "the ``exit()`` function." msgstr "" -#: c-api/init_config.rst:983 +#: c-api/init_config.rst:1416 msgid "" "See :ref:`Python Configuration ` for an example of " "customized Python always running in isolated mode using :c:func:`Py_RunMain`." msgstr "" -#: c-api/init_config.rst:989 +#: c-api/init_config.rst:1422 msgid "Py_GetArgcArgv()" msgstr "" -#: c-api/init_config.rst:993 +#: c-api/init_config.rst:1426 msgid "Get the original command line arguments, before Python modified them." msgstr "" -#: c-api/init_config.rst:997 +#: c-api/init_config.rst:1428 +msgid "See also :c:member:`PyConfig.orig_argv` member." +msgstr "" + +#: c-api/init_config.rst:1432 msgid "Multi-Phase Initialization Private Provisional API" msgstr "" -#: c-api/init_config.rst:999 +#: c-api/init_config.rst:1434 msgid "" "This section is a private provisional API introducing multi-phase " "initialization, the core feature of the :pep:`432`:" msgstr "" -#: c-api/init_config.rst:1002 +#: c-api/init_config.rst:1437 msgid "\"Core\" initialization phase, \"bare minimum Python\":" msgstr "" -#: c-api/init_config.rst:1004 +#: c-api/init_config.rst:1439 msgid "Builtin types;" msgstr "" -#: c-api/init_config.rst:1005 +#: c-api/init_config.rst:1440 msgid "Builtin exceptions;" msgstr "" -#: c-api/init_config.rst:1006 +#: c-api/init_config.rst:1441 msgid "Builtin and frozen modules;" msgstr "" -#: c-api/init_config.rst:1007 +#: c-api/init_config.rst:1442 msgid "" "The :mod:`sys` module is only partially initialized (ex: :data:`sys.path` " "doesn't exist yet)." msgstr "" -#: c-api/init_config.rst:1010 +#: c-api/init_config.rst:1445 msgid "\"Main\" initialization phase, Python is fully initialized:" msgstr "" -#: c-api/init_config.rst:1012 +#: c-api/init_config.rst:1447 msgid "Install and configure :mod:`importlib`;" msgstr "" -#: c-api/init_config.rst:1013 +#: c-api/init_config.rst:1448 msgid "Apply the :ref:`Path Configuration `;" msgstr "" -#: c-api/init_config.rst:1014 +#: c-api/init_config.rst:1449 msgid "Install signal handlers;" msgstr "" -#: c-api/init_config.rst:1015 +#: c-api/init_config.rst:1450 msgid "" "Finish :mod:`sys` module initialization (ex: create :data:`sys.stdout` and :" "data:`sys.path`);" msgstr "" -#: c-api/init_config.rst:1017 +#: c-api/init_config.rst:1452 msgid "" "Enable optional features like :mod:`faulthandler` and :mod:`tracemalloc`;" msgstr "" -#: c-api/init_config.rst:1018 +#: c-api/init_config.rst:1453 msgid "Import the :mod:`site` module;" msgstr "" -#: c-api/init_config.rst:1019 +#: c-api/init_config.rst:1454 msgid "etc." msgstr "" -#: c-api/init_config.rst:1021 +#: c-api/init_config.rst:1456 msgid "Private provisional API:" msgstr "" -#: c-api/init_config.rst:1023 +#: c-api/init_config.rst:1458 msgid "" ":c:member:`PyConfig._init_main`: if set to 0, :c:func:" "`Py_InitializeFromConfig` stops at the \"Core\" initialization phase." msgstr "" -#: c-api/init_config.rst:1025 +#: c-api/init_config.rst:1460 msgid "" ":c:member:`PyConfig._isolated_interpreter`: if non-zero, disallow threads, " "subprocesses and fork." msgstr "" -#: c-api/init_config.rst:1030 +#: c-api/init_config.rst:1465 msgid "" "Move to the \"Main\" initialization phase, finish the Python initialization." msgstr "" -#: c-api/init_config.rst:1032 +#: c-api/init_config.rst:1467 msgid "" "No module is imported during the \"Core\" phase and the ``importlib`` module " "is not configured: the :ref:`Path Configuration ` is only " @@ -1360,14 +1905,14 @@ msgid "" "maybe install a custom :data:`sys.meta_path` importer or an import hook, etc." msgstr "" -#: c-api/init_config.rst:1038 +#: c-api/init_config.rst:1473 msgid "" "It may become possible to calculatin the :ref:`Path Configuration ` in Python, after the Core phase and before the Main phase, which is " "one of the :pep:`432` motivation." msgstr "" -#: c-api/init_config.rst:1042 +#: c-api/init_config.rst:1477 msgid "" "The \"Core\" phase is not properly defined: what should be and what should " "not be available at this phase is not specified yet. The API is marked as " @@ -1375,8 +1920,16 @@ msgid "" "until a proper public API is designed." msgstr "" -#: c-api/init_config.rst:1047 +#: c-api/init_config.rst:1482 msgid "" "Example running Python code between \"Core\" and \"Main\" initialization " "phases::" msgstr "" + +#, fuzzy +#~ msgid "Functions:" +#~ msgstr "Fonctions" + +#, fuzzy +#~ msgid "Interactive mode." +#~ msgstr "Mode interactif" diff --git a/c-api/intro.po b/c-api/intro.po index 0cb8dfac0..1ff19ede0 100644 --- a/c-api/intro.po +++ b/c-api/intro.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -386,8 +386,8 @@ msgid "" "passing on this responsibility (usually to its caller). When a function " "passes ownership of a reference on to its caller, the caller is said to " "receive a *new* reference. When no ownership is transferred, the caller is " -"said to *borrow* the reference. Nothing needs to be done for a borrowed " -"reference." +"said to *borrow* the reference. Nothing needs to be done for a :term:" +"`borrowed reference`." msgstr "" #: c-api/intro.rst:331 @@ -704,78 +704,31 @@ msgstr "" #: c-api/intro.rst:744 msgid "" "Compiling the interpreter with the :c:macro:`Py_DEBUG` macro defined " -"produces what is generally meant by \"a debug build\" of Python. :c:macro:" -"`Py_DEBUG` is enabled in the Unix build by adding ``--with-pydebug`` to the :" -"file:`./configure` command. It is also implied by the presence of the not-" -"Python-specific :c:macro:`_DEBUG` macro. When :c:macro:`Py_DEBUG` is " -"enabled in the Unix build, compiler optimization is disabled." +"produces what is generally meant by :ref:`a debug build of Python `. :c:macro:`Py_DEBUG` is enabled in the Unix build by adding :option:" +"`--with-pydebug` to the :file:`./configure` command. It is also implied by " +"the presence of the not-Python-specific :c:macro:`_DEBUG` macro. When :c:" +"macro:`Py_DEBUG` is enabled in the Unix build, compiler optimization is " +"disabled." msgstr "" -#: c-api/intro.rst:751 +#: c-api/intro.rst:752 msgid "" -"In addition to the reference count debugging described below, the following " -"extra checks are performed:" +"In addition to the reference count debugging described below, extra checks " +"are performed, see :ref:`Python Debug Build `." msgstr "" -#: c-api/intro.rst:754 -msgid "Extra checks are added to the object allocator." -msgstr "" - -#: c-api/intro.rst:756 -msgid "Extra checks are added to the parser and compiler." -msgstr "" - -#: c-api/intro.rst:758 -msgid "" -"Downcasts from wide types to narrow types are checked for loss of " -"information." -msgstr "" - -#: c-api/intro.rst:760 -msgid "" -"A number of assertions are added to the dictionary and set implementations. " -"In addition, the set object acquires a :meth:`test_c_api` method." -msgstr "" - -#: c-api/intro.rst:763 -msgid "Sanity checks of the input arguments are added to frame creation." -msgstr "" - -#: c-api/intro.rst:765 -msgid "" -"The storage for ints is initialized with a known invalid pattern to catch " -"reference to uninitialized digits." -msgstr "" - -#: c-api/intro.rst:768 -msgid "" -"Low-level tracing and extra exception checking are added to the runtime " -"virtual machine." -msgstr "" - -#: c-api/intro.rst:771 -msgid "Extra checks are added to the memory arena implementation." -msgstr "" - -#: c-api/intro.rst:773 -msgid "Extra debugging is added to the thread module." -msgstr "" - -#: c-api/intro.rst:775 -msgid "There may be additional checks not mentioned here." -msgstr "" - -#: c-api/intro.rst:777 +#: c-api/intro.rst:755 msgid "" -"Defining :c:macro:`Py_TRACE_REFS` enables reference tracing. When defined, " -"a circular doubly linked list of active objects is maintained by adding two " +"Defining :c:macro:`Py_TRACE_REFS` enables reference tracing (see the :option:" +"`configure --with-trace-refs option <--with-trace-refs>`). When defined, a " +"circular doubly linked list of active objects is maintained by adding two " "extra fields to every :c:type:`PyObject`. Total allocations are tracked as " "well. Upon exit, all existing references are printed. (In interactive mode " -"this happens after every statement run by the interpreter.) Implied by :c:" -"macro:`Py_DEBUG`." +"this happens after every statement run by the interpreter.)" msgstr "" -#: c-api/intro.rst:783 +#: c-api/intro.rst:762 msgid "" "Please refer to :file:`Misc/SpecialBuilds.txt` in the Python source " "distribution for more detailed information." diff --git a/c-api/iter.po b/c-api/iter.po index 97199fdd1..195bef5cb 100644 --- a/c-api/iter.po +++ b/c-api/iter.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-02-15 00:33+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -25,11 +25,18 @@ msgstr "Il existe deux fonctions dédiées à l'interaction avec les itérateurs #: c-api/iter.rst:12 #, fuzzy msgid "" -"Return true if the object *o* supports the iterator protocol. This function " -"always succeeds." +"Return non-zero if the object *o* supports the iterator protocol, and ``0`` " +"otherwise. This function always succeeds." msgstr "Renvoie vrai si l'objet *o* supporte le protocole d'itération." -#: c-api/iter.rst:18 +#: c-api/iter.rst:17 +#, fuzzy +msgid "" +"Returns non-zero if the object 'obj' provides :class:`AsyncIterator` " +"protocols, and ``0`` otherwise. This function always succeeds." +msgstr "Renvoie vrai si l'objet *o* supporte le protocole d'itération." + +#: c-api/iter.rst:24 #, fuzzy msgid "" "Return the next value from the iteration *o*. The object must be an " @@ -43,10 +50,35 @@ msgstr "" "déclarant une exception si une erreur survient lors de la récupération d'un " "élément." -#: c-api/iter.rst:23 +#: c-api/iter.rst:29 msgid "" "To write a loop which iterates over an iterator, the C code should look " "something like this::" msgstr "" "Pour écrire une boucle itérant un itérateur, le code C devrait ressembler " "à ::" + +#: c-api/iter.rst:58 +msgid "" +"The enum value used to represent different results of :c:func:`PyIter_Send`." +msgstr "" + +#: c-api/iter.rst:65 +msgid "Sends the *arg* value into the iterator *iter*. Returns:" +msgstr "" + +#: c-api/iter.rst:67 +msgid "" +"``PYGEN_RETURN`` if iterator returns. Return value is returned via *presult*." +msgstr "" + +#: c-api/iter.rst:68 +msgid "" +"``PYGEN_NEXT`` if iterator yields. Yielded value is returned via *presult*." +msgstr "" + +#: c-api/iter.rst:69 +msgid "" +"``PYGEN_ERROR`` if iterator has raised and exception. *presult* is set to " +"``NULL``." +msgstr "" diff --git a/c-api/long.po b/c-api/long.po index 6d9368fb4..a39c1815d 100644 --- a/c-api/long.po +++ b/c-api/long.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -126,53 +126,43 @@ msgid "" msgstr "" #: c-api/long.rst:99 -msgid "Convert a sequence of Unicode digits to a Python integer value." -msgstr "" - -#: c-api/long.rst:103 -msgid "" -"Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" -"func:`PyLong_FromUnicodeObject`." -msgstr "" - -#: c-api/long.rst:108 msgid "" "Convert a sequence of Unicode digits in the string *u* to a Python integer " "value." msgstr "" -#: c-api/long.rst:116 +#: c-api/long.rst:107 msgid "" "Create a Python integer from the pointer *p*. The pointer value can be " "retrieved from the resulting value using :c:func:`PyLong_AsVoidPtr`." msgstr "" -#: c-api/long.rst:146 +#: c-api/long.rst:136 msgid "" "Return a C :c:type:`long` representation of *obj*. If *obj* is not an " -"instance of :c:type:`PyLongObject`, first call its :meth:`__index__` or :" -"meth:`__int__` method (if present) to convert it to a :c:type:`PyLongObject`." +"instance of :c:type:`PyLongObject`, first call its :meth:`__index__` method " +"(if present) to convert it to a :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:132 +#: c-api/long.rst:122 msgid "" "Raise :exc:`OverflowError` if the value of *obj* is out of range for a :c:" "type:`long`." msgstr "" -#: c-api/long.rst:156 c-api/long.rst:199 c-api/long.rst:222 +#: c-api/long.rst:145 c-api/long.rst:186 c-api/long.rst:209 msgid "Returns ``-1`` on error. Use :c:func:`PyErr_Occurred` to disambiguate." msgstr "" -#: c-api/long.rst:158 c-api/long.rst:203 c-api/long.rst:308 +#: c-api/long.rst:147 c-api/long.rst:190 c-api/long.rst:294 msgid "Use :meth:`__index__` if available." msgstr "" -#: c-api/long.rst:161 c-api/long.rst:206 c-api/long.rst:311 -msgid "Using :meth:`__int__` is deprecated." +#: c-api/long.rst:150 c-api/long.rst:193 c-api/long.rst:297 +msgid "This function will no longer use :meth:`__int__`." msgstr "" -#: c-api/long.rst:151 +#: c-api/long.rst:140 msgid "" "If the value of *obj* is greater than :const:`LONG_MAX` or less than :const:" "`LONG_MIN`, set *\\*overflow* to ``1`` or ``-1``, respectively, and return " @@ -180,20 +170,20 @@ msgid "" "occurs set *\\*overflow* to ``0`` and return ``-1`` as usual." msgstr "" -#: c-api/long.rst:189 +#: c-api/long.rst:177 msgid "" "Return a C :c:type:`long long` representation of *obj*. If *obj* is not an " -"instance of :c:type:`PyLongObject`, first call its :meth:`__index__` or :" -"meth:`__int__` method (if present) to convert it to a :c:type:`PyLongObject`." +"instance of :c:type:`PyLongObject`, first call its :meth:`__index__` method " +"(if present) to convert it to a :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:175 +#: c-api/long.rst:163 msgid "" "Raise :exc:`OverflowError` if the value of *obj* is out of range for a :c:" "type:`long long`." msgstr "" -#: c-api/long.rst:194 +#: c-api/long.rst:181 msgid "" "If the value of *obj* is greater than :const:`LLONG_MAX` or less than :const:" "`LLONG_MIN`, set *\\*overflow* to ``1`` or ``-1``, respectively, and return " @@ -201,134 +191,133 @@ msgid "" "occurs set *\\*overflow* to ``0`` and return ``-1`` as usual." msgstr "" -#: c-api/long.rst:216 +#: c-api/long.rst:203 msgid "" "Return a C :c:type:`Py_ssize_t` representation of *pylong*. *pylong* must " "be an instance of :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:219 +#: c-api/long.rst:206 msgid "" "Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" "type:`Py_ssize_t`." msgstr "" -#: c-api/long.rst:231 +#: c-api/long.rst:218 msgid "" "Return a C :c:type:`unsigned long` representation of *pylong*. *pylong* " "must be an instance of :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:234 +#: c-api/long.rst:221 msgid "" "Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" "type:`unsigned long`." msgstr "" -#: c-api/long.rst:237 +#: c-api/long.rst:224 msgid "" "Returns ``(unsigned long)-1`` on error. Use :c:func:`PyErr_Occurred` to " "disambiguate." msgstr "" -#: c-api/long.rst:247 +#: c-api/long.rst:234 msgid "" "Return a C :c:type:`size_t` representation of *pylong*. *pylong* must be an " "instance of :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:250 +#: c-api/long.rst:237 msgid "" "Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" "type:`size_t`." msgstr "" -#: c-api/long.rst:253 +#: c-api/long.rst:240 msgid "" "Returns ``(size_t)-1`` on error. Use :c:func:`PyErr_Occurred` to " "disambiguate." msgstr "" -#: c-api/long.rst:262 +#: c-api/long.rst:249 msgid "" "Return a C :c:type:`unsigned long long` representation of *pylong*. " "*pylong* must be an instance of :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:265 +#: c-api/long.rst:252 msgid "" "Raise :exc:`OverflowError` if the value of *pylong* is out of range for an :" "c:type:`unsigned long long`." msgstr "" -#: c-api/long.rst:268 +#: c-api/long.rst:255 msgid "" "Returns ``(unsigned long long)-1`` on error. Use :c:func:`PyErr_Occurred` to " "disambiguate." msgstr "" -#: c-api/long.rst:271 +#: c-api/long.rst:258 msgid "" "A negative *pylong* now raises :exc:`OverflowError`, not :exc:`TypeError`." msgstr "" -#: c-api/long.rst:277 +#: c-api/long.rst:264 msgid "" "Return a C :c:type:`unsigned long` representation of *obj*. If *obj* is not " -"an instance of :c:type:`PyLongObject`, first call its :meth:`__index__` or :" -"meth:`__int__` method (if present) to convert it to a :c:type:`PyLongObject`." +"an instance of :c:type:`PyLongObject`, first call its :meth:`__index__` " +"method (if present) to convert it to a :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:282 +#: c-api/long.rst:268 msgid "" "If the value of *obj* is out of range for an :c:type:`unsigned long`, return " "the reduction of that value modulo ``ULONG_MAX + 1``." msgstr "" -#: c-api/long.rst:285 +#: c-api/long.rst:271 msgid "" "Returns ``(unsigned long)-1`` on error. Use :c:func:`PyErr_Occurred` to " "disambiguate." msgstr "" -#: c-api/long.rst:297 +#: c-api/long.rst:283 msgid "" "Return a C :c:type:`unsigned long long` representation of *obj*. If *obj* " "is not an instance of :c:type:`PyLongObject`, first call its :meth:" -"`__index__` or :meth:`__int__` method (if present) to convert it to a :c:" -"type:`PyLongObject`." +"`__index__` method (if present) to convert it to a :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:302 +#: c-api/long.rst:288 msgid "" "If the value of *obj* is out of range for an :c:type:`unsigned long long`, " "return the reduction of that value modulo ``ULLONG_MAX + 1``." msgstr "" -#: c-api/long.rst:305 +#: c-api/long.rst:291 msgid "" "Returns ``(unsigned long long)-1`` on error. Use :c:func:`PyErr_Occurred` " "to disambiguate." msgstr "" -#: c-api/long.rst:317 +#: c-api/long.rst:303 msgid "" "Return a C :c:type:`double` representation of *pylong*. *pylong* must be an " "instance of :c:type:`PyLongObject`." msgstr "" -#: c-api/long.rst:320 +#: c-api/long.rst:306 msgid "" "Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" "type:`double`." msgstr "" -#: c-api/long.rst:323 +#: c-api/long.rst:309 msgid "" "Returns ``-1.0`` on error. Use :c:func:`PyErr_Occurred` to disambiguate." msgstr "" -#: c-api/long.rst:328 +#: c-api/long.rst:314 msgid "" "Convert a Python integer *pylong* to a C :c:type:`void` pointer. If *pylong* " "cannot be converted, an :exc:`OverflowError` will be raised. This is only " @@ -336,7 +325,7 @@ msgid "" "c:func:`PyLong_FromVoidPtr`." msgstr "" -#: c-api/long.rst:333 +#: c-api/long.rst:319 msgid "" "Returns ``NULL`` on error. Use :c:func:`PyErr_Occurred` to disambiguate." msgstr "" diff --git a/c-api/memory.po b/c-api/memory.po index 673614bcb..c06c810c3 100644 --- a/c-api/memory.po +++ b/c-api/memory.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -105,18 +105,71 @@ msgid "" "new pymalloc object arena is created, and on shutdown." msgstr "" -#: c-api/memory.rst:97 +#: c-api/memory.rst:96 +msgid "Allocator Domains" +msgstr "" + +#: c-api/memory.rst:98 +msgid "" +"All allocating functions belong to one of three different \"domains\" (see " +"also :c:type:`PyMemAllocatorDomain`). These domains represent different " +"allocation strategies and are optimized for different purposes. The specific " +"details on how every domain allocates memory or what internal functions each " +"domain calls is considered an implementation detail, but for debugging " +"purposes a simplified table can be found at :ref:`here `. There is no hard requirement to use the memory returned by the " +"allocation functions belonging to a given domain for only the purposes " +"hinted by that domain (although this is the recommended practice). For " +"example, one could use the memory returned by :c:func:`PyMem_RawMalloc` for " +"allocating Python objects or the memory returned by :c:func:" +"`PyObject_Malloc` for allocating memory for buffers." +msgstr "" + +#: c-api/memory.rst:110 +msgid "The three allocation domains are:" +msgstr "" + +#: c-api/memory.rst:112 +msgid "" +"Raw domain: intended for allocating memory for general-purpose memory " +"buffers where the allocation *must* go to the system allocator or where the " +"allocator can operate without the :term:`GIL`. The memory is requested " +"directly to the system." +msgstr "" + +#: c-api/memory.rst:117 +msgid "" +"\"Mem\" domain: intended for allocating memory for Python buffers and " +"general-purpose memory buffers where the allocation must be performed with " +"the :term:`GIL` held. The memory is taken from the Python private heap." +msgstr "" + +#: c-api/memory.rst:121 +msgid "" +"Object domain: intended for allocating memory belonging to Python objects. " +"The memory is taken from the Python private heap." +msgstr "" + +#: c-api/memory.rst:124 +msgid "" +"When freeing memory previously allocated by the allocating functions " +"belonging to a given domain,the matching specific deallocating functions " +"must be used. For example, :c:func:`PyMem_Free` must be used to free memory " +"allocated using :c:func:`PyMem_Malloc`." +msgstr "" + +#: c-api/memory.rst:129 msgid "Raw Memory Interface" msgstr "" -#: c-api/memory.rst:99 +#: c-api/memory.rst:131 msgid "" "The following function sets are wrappers to the system allocator. These " "functions are thread-safe, the :term:`GIL ` does " "not need to be held." msgstr "" -#: c-api/memory.rst:103 +#: c-api/memory.rst:135 msgid "" "The :ref:`default raw memory allocator ` uses the " "following functions: :c:func:`malloc`, :c:func:`calloc`, :c:func:`realloc` " @@ -124,60 +177,60 @@ msgid "" "zero bytes." msgstr "" -#: c-api/memory.rst:183 c-api/memory.rst:285 +#: c-api/memory.rst:215 c-api/memory.rst:323 msgid "" "Allocates *n* bytes and returns a pointer of type :c:type:`void*` to the " "allocated memory, or ``NULL`` if the request fails." msgstr "" -#: c-api/memory.rst:115 +#: c-api/memory.rst:147 msgid "" "Requesting zero bytes returns a distinct non-``NULL`` pointer if possible, " "as if ``PyMem_RawMalloc(1)`` had been called instead. The memory will not " "have been initialized in any way." msgstr "" -#: c-api/memory.rst:193 c-api/memory.rst:295 +#: c-api/memory.rst:225 c-api/memory.rst:333 msgid "" "Allocates *nelem* elements each whose size in bytes is *elsize* and returns " "a pointer of type :c:type:`void*` to the allocated memory, or ``NULL`` if " "the request fails. The memory is initialized to zeros." msgstr "" -#: c-api/memory.rst:126 +#: c-api/memory.rst:158 msgid "" "Requesting zero elements or elements of size zero bytes returns a distinct " "non-``NULL`` pointer if possible, as if ``PyMem_RawCalloc(1, 1)`` had been " "called instead." msgstr "" -#: c-api/memory.rst:206 c-api/memory.rst:308 +#: c-api/memory.rst:238 c-api/memory.rst:346 msgid "" "Resizes the memory block pointed to by *p* to *n* bytes. The contents will " "be unchanged to the minimum of the old and the new sizes." msgstr "" -#: c-api/memory.rst:138 +#: c-api/memory.rst:170 msgid "" "If *p* is ``NULL``, the call is equivalent to ``PyMem_RawMalloc(n)``; else " "if *n* is equal to zero, the memory block is resized but is not freed, and " "the returned pointer is non-``NULL``." msgstr "" -#: c-api/memory.rst:142 +#: c-api/memory.rst:174 msgid "" "Unless *p* is ``NULL``, it must have been returned by a previous call to :c:" "func:`PyMem_RawMalloc`, :c:func:`PyMem_RawRealloc` or :c:func:" "`PyMem_RawCalloc`." msgstr "" -#: c-api/memory.rst:146 +#: c-api/memory.rst:178 msgid "" "If the request fails, :c:func:`PyMem_RawRealloc` returns ``NULL`` and *p* " "remains a valid pointer to the previous memory area." msgstr "" -#: c-api/memory.rst:152 +#: c-api/memory.rst:184 msgid "" "Frees the memory block pointed to by *p*, which must have been returned by a " "previous call to :c:func:`PyMem_RawMalloc`, :c:func:`PyMem_RawRealloc` or :c:" @@ -185,72 +238,72 @@ msgid "" "called before, undefined behavior occurs." msgstr "" -#: c-api/memory.rst:227 c-api/memory.rst:329 +#: c-api/memory.rst:259 c-api/memory.rst:367 msgid "If *p* is ``NULL``, no operation is performed." msgstr "" -#: c-api/memory.rst:163 +#: c-api/memory.rst:195 msgid "Memory Interface" msgstr "" -#: c-api/memory.rst:271 +#: c-api/memory.rst:303 msgid "" "The following function sets, modeled after the ANSI C standard, but " "specifying behavior when requesting zero bytes, are available for allocating " "and releasing memory from the Python heap." msgstr "" -#: c-api/memory.rst:169 +#: c-api/memory.rst:201 msgid "" "The :ref:`default memory allocator ` uses the :" "ref:`pymalloc memory allocator `." msgstr "" -#: c-api/memory.rst:280 +#: c-api/memory.rst:318 msgid "" "The :term:`GIL ` must be held when using these " "functions." msgstr "" -#: c-api/memory.rst:179 +#: c-api/memory.rst:211 msgid "" "The default allocator is now pymalloc instead of system :c:func:`malloc`." msgstr "" -#: c-api/memory.rst:186 +#: c-api/memory.rst:218 msgid "" "Requesting zero bytes returns a distinct non-``NULL`` pointer if possible, " "as if ``PyMem_Malloc(1)`` had been called instead. The memory will not have " "been initialized in any way." msgstr "" -#: c-api/memory.rst:197 +#: c-api/memory.rst:229 msgid "" "Requesting zero elements or elements of size zero bytes returns a distinct " "non-``NULL`` pointer if possible, as if ``PyMem_Calloc(1, 1)`` had been " "called instead." msgstr "" -#: c-api/memory.rst:209 +#: c-api/memory.rst:241 msgid "" "If *p* is ``NULL``, the call is equivalent to ``PyMem_Malloc(n)``; else if " "*n* is equal to zero, the memory block is resized but is not freed, and the " "returned pointer is non-``NULL``." msgstr "" -#: c-api/memory.rst:213 +#: c-api/memory.rst:245 msgid "" "Unless *p* is ``NULL``, it must have been returned by a previous call to :c:" "func:`PyMem_Malloc`, :c:func:`PyMem_Realloc` or :c:func:`PyMem_Calloc`." msgstr "" -#: c-api/memory.rst:216 +#: c-api/memory.rst:248 msgid "" "If the request fails, :c:func:`PyMem_Realloc` returns ``NULL`` and *p* " "remains a valid pointer to the previous memory area." msgstr "" -#: c-api/memory.rst:222 +#: c-api/memory.rst:254 msgid "" "Frees the memory block pointed to by *p*, which must have been returned by a " "previous call to :c:func:`PyMem_Malloc`, :c:func:`PyMem_Realloc` or :c:func:" @@ -258,20 +311,20 @@ msgid "" "undefined behavior occurs." msgstr "" -#: c-api/memory.rst:229 +#: c-api/memory.rst:261 msgid "" "The following type-oriented macros are provided for convenience. Note that " "*TYPE* refers to any C type." msgstr "" -#: c-api/memory.rst:235 +#: c-api/memory.rst:267 msgid "" "Same as :c:func:`PyMem_Malloc`, but allocates ``(n * sizeof(TYPE))`` bytes " "of memory. Returns a pointer cast to :c:type:`TYPE*`. The memory will not " "have been initialized in any way." msgstr "" -#: c-api/memory.rst:242 +#: c-api/memory.rst:274 msgid "" "Same as :c:func:`PyMem_Realloc`, but the memory block is resized to ``(n * " "sizeof(TYPE))`` bytes. Returns a pointer cast to :c:type:`TYPE*`. On " @@ -279,17 +332,17 @@ msgid "" "event of failure." msgstr "" -#: c-api/memory.rst:247 +#: c-api/memory.rst:279 msgid "" "This is a C preprocessor macro; *p* is always reassigned. Save the original " "value of *p* to avoid losing memory when handling errors." msgstr "" -#: c-api/memory.rst:253 +#: c-api/memory.rst:285 msgid "Same as :c:func:`PyMem_Free`." msgstr "" -#: c-api/memory.rst:255 +#: c-api/memory.rst:287 msgid "" "In addition, the following macro sets are provided for calling the Python " "memory allocator directly, without involving the C API functions listed " @@ -297,75 +350,83 @@ msgid "" "across Python versions and is therefore deprecated in extension modules." msgstr "" -#: c-api/memory.rst:260 +#: c-api/memory.rst:292 msgid "``PyMem_MALLOC(size)``" msgstr "" -#: c-api/memory.rst:261 +#: c-api/memory.rst:293 msgid "``PyMem_NEW(type, size)``" msgstr "" -#: c-api/memory.rst:262 +#: c-api/memory.rst:294 msgid "``PyMem_REALLOC(ptr, size)``" msgstr "" -#: c-api/memory.rst:263 +#: c-api/memory.rst:295 msgid "``PyMem_RESIZE(ptr, type, size)``" msgstr "" -#: c-api/memory.rst:264 +#: c-api/memory.rst:296 msgid "``PyMem_FREE(ptr)``" msgstr "" -#: c-api/memory.rst:265 +#: c-api/memory.rst:297 msgid "``PyMem_DEL(ptr)``" msgstr "" -#: c-api/memory.rst:269 +#: c-api/memory.rst:301 msgid "Object allocators" msgstr "" -#: c-api/memory.rst:275 +#: c-api/memory.rst:308 +msgid "" +"There is no guarantee that the memory returned by these allocators can be " +"successfully casted to a Python object when intercepting the allocating " +"functions in this domain by the methods described in the :ref:`Customize " +"Memory Allocators ` section." +msgstr "" + +#: c-api/memory.rst:313 msgid "" "The :ref:`default object allocator ` uses the :" "ref:`pymalloc memory allocator `." msgstr "" -#: c-api/memory.rst:288 +#: c-api/memory.rst:326 msgid "" "Requesting zero bytes returns a distinct non-``NULL`` pointer if possible, " "as if ``PyObject_Malloc(1)`` had been called instead. The memory will not " "have been initialized in any way." msgstr "" -#: c-api/memory.rst:299 +#: c-api/memory.rst:337 msgid "" "Requesting zero elements or elements of size zero bytes returns a distinct " "non-``NULL`` pointer if possible, as if ``PyObject_Calloc(1, 1)`` had been " "called instead." msgstr "" -#: c-api/memory.rst:311 +#: c-api/memory.rst:349 msgid "" "If *p* is ``NULL``, the call is equivalent to ``PyObject_Malloc(n)``; else " "if *n* is equal to zero, the memory block is resized but is not freed, and " "the returned pointer is non-``NULL``." msgstr "" -#: c-api/memory.rst:315 +#: c-api/memory.rst:353 msgid "" "Unless *p* is ``NULL``, it must have been returned by a previous call to :c:" "func:`PyObject_Malloc`, :c:func:`PyObject_Realloc` or :c:func:" "`PyObject_Calloc`." msgstr "" -#: c-api/memory.rst:318 +#: c-api/memory.rst:356 msgid "" "If the request fails, :c:func:`PyObject_Realloc` returns ``NULL`` and *p* " "remains a valid pointer to the previous memory area." msgstr "" -#: c-api/memory.rst:324 +#: c-api/memory.rst:362 msgid "" "Frees the memory block pointed to by *p*, which must have been returned by a " "previous call to :c:func:`PyObject_Malloc`, :c:func:`PyObject_Realloc` or :c:" @@ -373,297 +434,331 @@ msgid "" "called before, undefined behavior occurs." msgstr "" -#: c-api/memory.rst:335 +#: c-api/memory.rst:373 msgid "Default Memory Allocators" msgstr "" -#: c-api/memory.rst:337 +#: c-api/memory.rst:375 msgid "Default memory allocators:" msgstr "" -#: c-api/memory.rst:340 +#: c-api/memory.rst:378 msgid "Configuration" msgstr "Configuration" -#: c-api/memory.rst:340 +#: c-api/memory.rst:378 msgid "Name" msgstr "Nom" -#: c-api/memory.rst:340 +#: c-api/memory.rst:378 msgid "PyMem_RawMalloc" msgstr "" -#: c-api/memory.rst:340 +#: c-api/memory.rst:378 msgid "PyMem_Malloc" msgstr "" -#: c-api/memory.rst:340 +#: c-api/memory.rst:378 msgid "PyObject_Malloc" msgstr "" -#: c-api/memory.rst:342 +#: c-api/memory.rst:380 msgid "Release build" msgstr "" -#: c-api/memory.rst:342 +#: c-api/memory.rst:380 msgid "``\"pymalloc\"``" msgstr "" -#: c-api/memory.rst:344 +#: c-api/memory.rst:382 msgid "``malloc``" msgstr "" -#: c-api/memory.rst:342 +#: c-api/memory.rst:380 msgid "``pymalloc``" msgstr "" -#: c-api/memory.rst:343 +#: c-api/memory.rst:381 msgid "Debug build" msgstr "" -#: c-api/memory.rst:343 +#: c-api/memory.rst:381 msgid "``\"pymalloc_debug\"``" msgstr "" -#: c-api/memory.rst:345 +#: c-api/memory.rst:383 msgid "``malloc`` + debug" msgstr "" -#: c-api/memory.rst:343 +#: c-api/memory.rst:381 msgid "``pymalloc`` + debug" msgstr "" -#: c-api/memory.rst:344 +#: c-api/memory.rst:382 msgid "Release build, without pymalloc" msgstr "" -#: c-api/memory.rst:344 +#: c-api/memory.rst:382 msgid "``\"malloc\"``" msgstr "" -#: c-api/memory.rst:345 +#: c-api/memory.rst:383 msgid "Debug build, without pymalloc" msgstr "" -#: c-api/memory.rst:345 +#: c-api/memory.rst:383 msgid "``\"malloc_debug\"``" msgstr "" -#: c-api/memory.rst:348 +#: c-api/memory.rst:386 msgid "Legend:" msgstr "" -#: c-api/memory.rst:350 -msgid "Name: value for :envvar:`PYTHONMALLOC` environment variable" +#: c-api/memory.rst:388 +msgid "Name: value for :envvar:`PYTHONMALLOC` environment variable." msgstr "" -#: c-api/memory.rst:351 +#: c-api/memory.rst:389 msgid "" "``malloc``: system allocators from the standard C library, C functions: :c:" -"func:`malloc`, :c:func:`calloc`, :c:func:`realloc` and :c:func:`free`" +"func:`malloc`, :c:func:`calloc`, :c:func:`realloc` and :c:func:`free`." msgstr "" -#: c-api/memory.rst:353 -msgid "``pymalloc``: :ref:`pymalloc memory allocator `" +#: c-api/memory.rst:391 +msgid "``pymalloc``: :ref:`pymalloc memory allocator `." msgstr "" -#: c-api/memory.rst:354 +#: c-api/memory.rst:392 msgid "" -"\"+ debug\": with debug hooks installed by :c:func:`PyMem_SetupDebugHooks`" +"\"+ debug\": with :ref:`debug hooks on the Python memory allocators `." +msgstr "" + +#: c-api/memory.rst:394 +msgid "\"Debug build\": :ref:`Python build in debug mode `." msgstr "" -#: c-api/memory.rst:358 +#: c-api/memory.rst:399 msgid "Customize Memory Allocators" msgstr "" -#: c-api/memory.rst:364 +#: c-api/memory.rst:405 msgid "" "Structure used to describe a memory block allocator. The structure has four " "fields:" msgstr "" -#: c-api/memory.rst:513 +#: c-api/memory.rst:626 msgid "Field" msgstr "Champ" -#: c-api/memory.rst:513 +#: c-api/memory.rst:626 msgid "Meaning" msgstr "Signification" -#: c-api/memory.rst:515 +#: c-api/memory.rst:628 msgid "``void *ctx``" msgstr "``void *ctx``" -#: c-api/memory.rst:515 +#: c-api/memory.rst:628 msgid "user context passed as first argument" msgstr "" -#: c-api/memory.rst:372 +#: c-api/memory.rst:413 msgid "``void* malloc(void *ctx, size_t size)``" msgstr "``void* malloc(void *ctx, size_t size)``" -#: c-api/memory.rst:372 +#: c-api/memory.rst:413 msgid "allocate a memory block" msgstr "" -#: c-api/memory.rst:374 +#: c-api/memory.rst:415 msgid "``void* calloc(void *ctx, size_t nelem, size_t elsize)``" msgstr "" -#: c-api/memory.rst:374 +#: c-api/memory.rst:415 msgid "allocate a memory block initialized with zeros" msgstr "" -#: c-api/memory.rst:377 +#: c-api/memory.rst:418 msgid "``void* realloc(void *ctx, void *ptr, size_t new_size)``" msgstr "" -#: c-api/memory.rst:377 +#: c-api/memory.rst:418 msgid "allocate or resize a memory block" msgstr "" -#: c-api/memory.rst:379 +#: c-api/memory.rst:420 msgid "``void free(void *ctx, void *ptr)``" msgstr "``void free(void *ctx, void *ptr)``" -#: c-api/memory.rst:379 +#: c-api/memory.rst:420 msgid "free a memory block" msgstr "" -#: c-api/memory.rst:382 +#: c-api/memory.rst:423 msgid "" "The :c:type:`PyMemAllocator` structure was renamed to :c:type:" "`PyMemAllocatorEx` and a new ``calloc`` field was added." msgstr "" -#: c-api/memory.rst:389 +#: c-api/memory.rst:430 msgid "Enum used to identify an allocator domain. Domains:" msgstr "" -#: c-api/memory.rst:402 c-api/memory.rst:411 +#: c-api/memory.rst:443 c-api/memory.rst:452 #, fuzzy msgid "Functions:" msgstr "Fonctions" -#: c-api/memory.rst:395 +#: c-api/memory.rst:436 #, fuzzy msgid ":c:func:`PyMem_RawMalloc`" msgstr ":c:func:`PyMem_RawCalloc`," -#: c-api/memory.rst:396 +#: c-api/memory.rst:437 #, fuzzy msgid ":c:func:`PyMem_RawRealloc`" msgstr ":c:func:`PyMem_RawCalloc`," -#: c-api/memory.rst:397 +#: c-api/memory.rst:438 #, fuzzy msgid ":c:func:`PyMem_RawCalloc`" msgstr ":c:func:`PyMem_RawCalloc`," -#: c-api/memory.rst:398 +#: c-api/memory.rst:439 msgid ":c:func:`PyMem_RawFree`" msgstr "" -#: c-api/memory.rst:404 +#: c-api/memory.rst:445 #, fuzzy msgid ":c:func:`PyMem_Malloc`," msgstr ":c:func:`PyMem_Calloc`," -#: c-api/memory.rst:405 +#: c-api/memory.rst:446 #, fuzzy msgid ":c:func:`PyMem_Realloc`" msgstr ":c:func:`PyMem_Calloc`," -#: c-api/memory.rst:406 +#: c-api/memory.rst:447 #, fuzzy msgid ":c:func:`PyMem_Calloc`" msgstr ":c:func:`PyMem_Calloc`," -#: c-api/memory.rst:407 +#: c-api/memory.rst:448 msgid ":c:func:`PyMem_Free`" msgstr "" -#: c-api/memory.rst:413 +#: c-api/memory.rst:454 msgid ":c:func:`PyObject_Malloc`" msgstr "" -#: c-api/memory.rst:414 +#: c-api/memory.rst:455 msgid ":c:func:`PyObject_Realloc`" msgstr "" -#: c-api/memory.rst:415 +#: c-api/memory.rst:456 msgid ":c:func:`PyObject_Calloc`" msgstr "" -#: c-api/memory.rst:416 +#: c-api/memory.rst:457 msgid ":c:func:`PyObject_Free`" msgstr "" -#: c-api/memory.rst:420 +#: c-api/memory.rst:461 msgid "Get the memory block allocator of the specified domain." msgstr "" -#: c-api/memory.rst:425 +#: c-api/memory.rst:466 msgid "Set the memory block allocator of the specified domain." msgstr "" -#: c-api/memory.rst:427 +#: c-api/memory.rst:468 msgid "" "The new allocator must return a distinct non-``NULL`` pointer when " "requesting zero bytes." msgstr "" -#: c-api/memory.rst:430 +#: c-api/memory.rst:471 msgid "" "For the :c:data:`PYMEM_DOMAIN_RAW` domain, the allocator must be thread-" "safe: the :term:`GIL ` is not held when the " "allocator is called." msgstr "" -#: c-api/memory.rst:434 +#: c-api/memory.rst:475 msgid "" "If the new allocator is not a hook (does not call the previous allocator), " "the :c:func:`PyMem_SetupDebugHooks` function must be called to reinstall the " "debug hooks on top on the new allocator." msgstr "" -#: c-api/memory.rst:441 -msgid "Setup hooks to detect bugs in the Python memory allocator functions." +#: c-api/memory.rst:482 +msgid "" +"Setup :ref:`debug hooks in the Python memory allocators ` " +"to detect memory errors." +msgstr "" + +#: c-api/memory.rst:489 +msgid "Debug hooks on the Python memory allocators" msgstr "" -#: c-api/memory.rst:443 +#: c-api/memory.rst:491 msgid "" -"Newly allocated memory is filled with the byte ``0xCD`` (``CLEANBYTE``), " -"freed memory is filled with the byte ``0xDD`` (``DEADBYTE``). Memory blocks " -"are surrounded by \"forbidden bytes\" (``FORBIDDENBYTE``: byte ``0xFD``)." +"When :ref:`Python is built in debug mode `, the :c:func:" +"`PyMem_SetupDebugHooks` function is called at the :ref:`Python " +"preinitialization ` to setup debug hooks on Python memory " +"allocators to detect memory errors." msgstr "" -#: c-api/memory.rst:447 +#: c-api/memory.rst:496 +msgid "" +"The :envvar:`PYTHONMALLOC` environment variable can be used to install debug " +"hooks on a Python compiled in release mode (ex: ``PYTHONMALLOC=debug``)." +msgstr "" + +#: c-api/memory.rst:499 +msgid "" +"The :c:func:`PyMem_SetupDebugHooks` function can be used to set debug hooks " +"after calling :c:func:`PyMem_SetAllocator`." +msgstr "" + +#: c-api/memory.rst:502 +msgid "" +"These debug hooks fill dynamically allocated memory blocks with special, " +"recognizable bit patterns. Newly allocated memory is filled with the byte " +"``0xCD`` (``PYMEM_CLEANBYTE``), freed memory is filled with the byte " +"``0xDD`` (``PYMEM_DEADBYTE``). Memory blocks are surrounded by \"forbidden " +"bytes\" filled with the byte ``0xFD`` (``PYMEM_FORBIDDENBYTE``). Strings of " +"these bytes are unlikely to be valid addresses, floats, or ASCII strings." +msgstr "" + +#: c-api/memory.rst:509 msgid "Runtime checks:" msgstr "" -#: c-api/memory.rst:449 +#: c-api/memory.rst:511 msgid "" -"Detect API violations, ex: :c:func:`PyObject_Free` called on a buffer " -"allocated by :c:func:`PyMem_Malloc`" +"Detect API violations. For example, detect if :c:func:`PyObject_Free` is " +"called on a memory block allocated by :c:func:`PyMem_Malloc`." msgstr "" -#: c-api/memory.rst:451 -msgid "Detect write before the start of the buffer (buffer underflow)" +#: c-api/memory.rst:513 +msgid "Detect write before the start of the buffer (buffer underflow)." msgstr "" -#: c-api/memory.rst:452 -msgid "Detect write after the end of the buffer (buffer overflow)" +#: c-api/memory.rst:514 +msgid "Detect write after the end of the buffer (buffer overflow)." msgstr "" -#: c-api/memory.rst:453 +#: c-api/memory.rst:515 msgid "" "Check that the :term:`GIL ` is held when allocator " "functions of :c:data:`PYMEM_DOMAIN_OBJ` (ex: :c:func:`PyObject_Malloc`) and :" -"c:data:`PYMEM_DOMAIN_MEM` (ex: :c:func:`PyMem_Malloc`) domains are called" +"c:data:`PYMEM_DOMAIN_MEM` (ex: :c:func:`PyMem_Malloc`) domains are called." msgstr "" -#: c-api/memory.rst:458 +#: c-api/memory.rst:520 msgid "" "On error, the debug hooks use the :mod:`tracemalloc` module to get the " "traceback where a memory block was allocated. The traceback is only " @@ -671,35 +766,132 @@ msgid "" "memory block was traced." msgstr "" -#: c-api/memory.rst:463 +#: c-api/memory.rst:525 msgid "" -"These hooks are :ref:`installed by default ` if " -"Python is compiled in debug mode. The :envvar:`PYTHONMALLOC` environment " -"variable can be used to install debug hooks on a Python compiled in release " -"mode." +"Let *S* = ``sizeof(size_t)``. ``2*S`` bytes are added at each end of each " +"block of *N* bytes requested. The memory layout is like so, where p " +"represents the address returned by a malloc-like or realloc-like function " +"(``p[i:j]`` means the slice of bytes from ``*(p+i)`` inclusive up to ``*(p" +"+j)`` exclusive; note that the treatment of negative indices differs from a " +"Python slice):" msgstr "" -#: c-api/memory.rst:468 +#: c-api/memory.rst:532 +msgid "``p[-2*S:-S]``" +msgstr "" + +#: c-api/memory.rst:532 msgid "" -"This function now also works on Python compiled in release mode. On error, " -"the debug hooks now use :mod:`tracemalloc` to get the traceback where a " -"memory block was allocated. The debug hooks now also check if the GIL is " -"held when functions of :c:data:`PYMEM_DOMAIN_OBJ` and :c:data:" -"`PYMEM_DOMAIN_MEM` domains are called." +"Number of bytes originally asked for. This is a size_t, big-endian (easier " +"to read in a memory dump)." msgstr "" -#: c-api/memory.rst:475 +#: c-api/memory.rst:539 +msgid "``p[-S]``" +msgstr "" + +#: c-api/memory.rst:535 +msgid "API identifier (ASCII character):" +msgstr "" + +#: c-api/memory.rst:537 +msgid "``'r'`` for :c:data:`PYMEM_DOMAIN_RAW`." +msgstr "" + +#: c-api/memory.rst:538 +msgid "``'m'`` for :c:data:`PYMEM_DOMAIN_MEM`." +msgstr "" + +#: c-api/memory.rst:539 +msgid "``'o'`` for :c:data:`PYMEM_DOMAIN_OBJ`." +msgstr "" + +#: c-api/memory.rst:542 +msgid "``p[-S+1:0]``" +msgstr "" + +#: c-api/memory.rst:542 +msgid "Copies of PYMEM_FORBIDDENBYTE. Used to catch under- writes and reads." +msgstr "" + +#: c-api/memory.rst:551 +msgid "``p[0:N]``" +msgstr "" + +#: c-api/memory.rst:545 +msgid "" +"The requested memory, filled with copies of PYMEM_CLEANBYTE, used to catch " +"reference to uninitialized memory. When a realloc-like function is called " +"requesting a larger memory block, the new excess bytes are also filled with " +"PYMEM_CLEANBYTE. When a free-like function is called, these are overwritten " +"with PYMEM_DEADBYTE, to catch reference to freed memory. When a realloc- " +"like function is called requesting a smaller memory block, the excess old " +"bytes are also filled with PYMEM_DEADBYTE." +msgstr "" + +#: c-api/memory.rst:554 +msgid "``p[N:N+S]``" +msgstr "" + +#: c-api/memory.rst:554 +msgid "Copies of PYMEM_FORBIDDENBYTE. Used to catch over- writes and reads." +msgstr "" + +#: c-api/memory.rst:565 +msgid "``p[N+S:N+2*S]``" +msgstr "" + +#: c-api/memory.rst:557 +msgid "" +"Only used if the ``PYMEM_DEBUG_SERIALNO`` macro is defined (not defined by " +"default)." +msgstr "" + +#: c-api/memory.rst:560 +msgid "" +"A serial number, incremented by 1 on each call to a malloc-like or realloc-" +"like function. Big-endian ``size_t``. If \"bad memory\" is detected later, " +"the serial number gives an excellent way to set a breakpoint on the next " +"run, to capture the instant at which this block was passed out. The static " +"function bumpserialno() in obmalloc.c is the only place the serial number is " +"incremented, and exists so you can set such a breakpoint easily." +msgstr "" + +#: c-api/memory.rst:567 +msgid "" +"A realloc-like or free-like function first checks that the " +"PYMEM_FORBIDDENBYTE bytes at each end are intact. If they've been altered, " +"diagnostic output is written to stderr, and the program is aborted via " +"Py_FatalError(). The other main failure mode is provoking a memory error " +"when a program reads up one of the special bit patterns and tries to use it " +"as an address. If you get in a debugger then and look at the object, you're " +"likely to see that it's entirely filled with PYMEM_DEADBYTE (meaning freed " +"memory is getting used) or PYMEM_CLEANBYTE (meaning uninitialized memory is " +"getting used)." +msgstr "" + +#: c-api/memory.rst:576 +msgid "" +"The :c:func:`PyMem_SetupDebugHooks` function now also works on Python " +"compiled in release mode. On error, the debug hooks now use :mod:" +"`tracemalloc` to get the traceback where a memory block was allocated. The " +"debug hooks now also check if the GIL is held when functions of :c:data:" +"`PYMEM_DOMAIN_OBJ` and :c:data:`PYMEM_DOMAIN_MEM` domains are called." +msgstr "" + +#: c-api/memory.rst:584 msgid "" -"Byte patterns ``0xCB`` (``CLEANBYTE``), ``0xDB`` (``DEADBYTE``) and ``0xFB`` " -"(``FORBIDDENBYTE``) have been replaced with ``0xCD``, ``0xDD`` and ``0xFD`` " -"to use the same values than Windows CRT debug ``malloc()`` and ``free()``." +"Byte patterns ``0xCB`` (``PYMEM_CLEANBYTE``), ``0xDB`` (``PYMEM_DEADBYTE``) " +"and ``0xFB`` (``PYMEM_FORBIDDENBYTE``) have been replaced with ``0xCD``, " +"``0xDD`` and ``0xFD`` to use the same values than Windows CRT debug " +"``malloc()`` and ``free()``." msgstr "" -#: c-api/memory.rst:485 +#: c-api/memory.rst:594 msgid "The pymalloc allocator" msgstr "" -#: c-api/memory.rst:487 +#: c-api/memory.rst:596 msgid "" "Python has a *pymalloc* allocator optimized for small objects (smaller or " "equal to 512 bytes) with a short lifetime. It uses memory mappings called " @@ -708,108 +900,115 @@ msgid "" "512 bytes." msgstr "" -#: c-api/memory.rst:492 +#: c-api/memory.rst:601 msgid "" "*pymalloc* is the :ref:`default allocator ` of " "the :c:data:`PYMEM_DOMAIN_MEM` (ex: :c:func:`PyMem_Malloc`) and :c:data:" "`PYMEM_DOMAIN_OBJ` (ex: :c:func:`PyObject_Malloc`) domains." msgstr "" -#: c-api/memory.rst:496 +#: c-api/memory.rst:605 msgid "The arena allocator uses the following functions:" msgstr "" -#: c-api/memory.rst:498 +#: c-api/memory.rst:607 msgid ":c:func:`VirtualAlloc` and :c:func:`VirtualFree` on Windows," msgstr "" -#: c-api/memory.rst:499 +#: c-api/memory.rst:608 msgid ":c:func:`mmap` and :c:func:`munmap` if available," msgstr "" -#: c-api/memory.rst:500 +#: c-api/memory.rst:609 msgid ":c:func:`malloc` and :c:func:`free` otherwise." msgstr "" -#: c-api/memory.rst:503 +#: c-api/memory.rst:611 +msgid "" +"This allocator is disabled if Python is configured with the :option:`--" +"without-pymalloc` option. It can also be disabled at runtime using the :" +"envvar:`PYTHONMALLOC` environment variable (ex: ``PYTHONMALLOC=malloc``)." +msgstr "" + +#: c-api/memory.rst:616 msgid "Customize pymalloc Arena Allocator" msgstr "" -#: c-api/memory.rst:509 +#: c-api/memory.rst:622 msgid "" "Structure used to describe an arena allocator. The structure has three " "fields:" msgstr "" -#: c-api/memory.rst:517 +#: c-api/memory.rst:630 msgid "``void* alloc(void *ctx, size_t size)``" msgstr "``void* alloc(void *ctx, size_t size)``" -#: c-api/memory.rst:517 +#: c-api/memory.rst:630 msgid "allocate an arena of size bytes" msgstr "" -#: c-api/memory.rst:519 +#: c-api/memory.rst:632 #, fuzzy msgid "``void free(void *ctx, void *ptr, size_t size)``" msgstr "``void free(void *ctx, void *ptr)``" -#: c-api/memory.rst:519 +#: c-api/memory.rst:632 msgid "free an arena" msgstr "" -#: c-api/memory.rst:524 +#: c-api/memory.rst:637 msgid "Get the arena allocator." msgstr "" -#: c-api/memory.rst:528 +#: c-api/memory.rst:641 msgid "Set the arena allocator." msgstr "" -#: c-api/memory.rst:532 +#: c-api/memory.rst:645 msgid "tracemalloc C API" msgstr "" -#: c-api/memory.rst:538 +#: c-api/memory.rst:651 msgid "Track an allocated memory block in the :mod:`tracemalloc` module." msgstr "" -#: c-api/memory.rst:540 +#: c-api/memory.rst:653 msgid "" "Return ``0`` on success, return ``-1`` on error (failed to allocate memory " "to store the trace). Return ``-2`` if tracemalloc is disabled." msgstr "" -#: c-api/memory.rst:543 +#: c-api/memory.rst:656 msgid "If memory block is already tracked, update the existing trace." msgstr "" -#: c-api/memory.rst:547 +#: c-api/memory.rst:660 msgid "" "Untrack an allocated memory block in the :mod:`tracemalloc` module. Do " "nothing if the block was not tracked." msgstr "" -#: c-api/memory.rst:550 +#: c-api/memory.rst:663 msgid "Return ``-2`` if tracemalloc is disabled, otherwise return ``0``." msgstr "" -#: c-api/memory.rst:556 +#: c-api/memory.rst:669 msgid "Examples" msgstr "Exemples" -#: c-api/memory.rst:558 +#: c-api/memory.rst:671 msgid "" "Here is the example from section :ref:`memoryoverview`, rewritten so that " "the I/O buffer is allocated from the Python heap by using the first function " "set::" msgstr "" -#: c-api/memory.rst:571 +#: c-api/memory.rst:684 msgid "The same code using the type-oriented function set::" msgstr "" -#: c-api/memory.rst:583 +#: c-api/memory.rst:696 msgid "" "Note that in the two examples above, the buffer is always manipulated via " "functions belonging to the same set. Indeed, it is required to use the same " @@ -819,14 +1018,14 @@ msgid "" "different allocators operating on different heaps. ::" msgstr "" -#: c-api/memory.rst:598 +#: c-api/memory.rst:711 msgid "" "In addition to the functions aimed at handling raw memory blocks from the " "Python heap, objects in Python are allocated and released with :c:func:" "`PyObject_New`, :c:func:`PyObject_NewVar` and :c:func:`PyObject_Del`." msgstr "" -#: c-api/memory.rst:602 +#: c-api/memory.rst:715 msgid "" "These will be explained in the next chapter on defining and implementing new " "object types in C." diff --git a/c-api/module.po b/c-api/module.po index fd4240f86..b55782c63 100644 --- a/c-api/module.po +++ b/c-api/module.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -213,7 +213,7 @@ msgid "" "``NULL`` if not needed." msgstr "" -#: c-api/module.rst:217 c-api/module.rst:232 +#: c-api/module.rst:217 c-api/module.rst:238 msgid "" "This function is not called if the module state was requested but is not " "allocated yet. This is the case immediately after the module is created and " @@ -223,7 +223,7 @@ msgid "" "``NULL``." msgstr "" -#: c-api/module.rst:224 c-api/module.rst:239 +#: c-api/module.rst:230 c-api/module.rst:245 msgid "No longer called before the module state is allocated." msgstr "" @@ -233,55 +233,64 @@ msgid "" "``NULL`` if not needed." msgstr "" -#: c-api/module.rst:229 +#: c-api/module.rst:224 +msgid "" +"Like :c:member:`PyTypeObject.tp_clear`, this function is not *always* called " +"before a module is deallocated. For example, when reference counting is " +"enough to determine that an object is no longer used, the cyclic garbage " +"collector is not involved and :c:member:`~PyModuleDef.m_free` is called " +"directly." +msgstr "" + +#: c-api/module.rst:235 msgid "" "A function to call during deallocation of the module object, or ``NULL`` if " "not needed." msgstr "" -#: c-api/module.rst:243 +#: c-api/module.rst:249 msgid "Single-phase initialization" msgstr "" -#: c-api/module.rst:245 +#: c-api/module.rst:251 msgid "" "The module initialization function may create and return the module object " "directly. This is referred to as \"single-phase initialization\", and uses " "one of the following two module creation functions:" msgstr "" -#: c-api/module.rst:251 +#: c-api/module.rst:257 msgid "" "Create a new module object, given the definition in *def*. This behaves " "like :c:func:`PyModule_Create2` with *module_api_version* set to :const:" "`PYTHON_API_VERSION`." msgstr "" -#: c-api/module.rst:258 +#: c-api/module.rst:264 msgid "" "Create a new module object, given the definition in *def*, assuming the API " "version *module_api_version*. If that version does not match the version of " "the running interpreter, a :exc:`RuntimeWarning` is emitted." msgstr "" -#: c-api/module.rst:264 +#: c-api/module.rst:270 msgid "" "Most uses of this function should be using :c:func:`PyModule_Create` " "instead; only use this if you are sure you need it." msgstr "" -#: c-api/module.rst:267 +#: c-api/module.rst:273 msgid "" "Before it is returned from in the initialization function, the resulting " "module object is typically populated using functions like :c:func:" -"`PyModule_AddObject`." +"`PyModule_AddObjectRef`." msgstr "" -#: c-api/module.rst:273 +#: c-api/module.rst:279 msgid "Multi-phase initialization" msgstr "" -#: c-api/module.rst:275 +#: c-api/module.rst:281 msgid "" "An alternate way to specify extensions is to request \"multi-phase " "initialization\". Extension modules created this way behave more like Python " @@ -291,7 +300,7 @@ msgid "" "methods of classes." msgstr "" -#: c-api/module.rst:282 +#: c-api/module.rst:288 msgid "" "Unlike modules created using single-phase initialization, these modules are " "not singletons: if the *sys.modules* entry is removed and the module is re-" @@ -304,14 +313,14 @@ msgid "" "or individual classes created with :c:func:`PyType_FromSpec`)." msgstr "" -#: c-api/module.rst:292 +#: c-api/module.rst:298 msgid "" "All modules created using multi-phase initialization are expected to " "support :ref:`sub-interpreters `. Making sure " "multiple modules are independent is typically enough to achieve this." msgstr "" -#: c-api/module.rst:296 +#: c-api/module.rst:302 msgid "" "To request multi-phase initialization, the initialization function " "(PyInit_modulename) returns a :c:type:`PyModuleDef` instance with non-empty :" @@ -319,65 +328,65 @@ msgid "" "instance must be initialized with the following function:" msgstr "" -#: c-api/module.rst:303 +#: c-api/module.rst:309 msgid "" "Ensures a module definition is a properly initialized Python object that " "correctly reports its type and reference count." msgstr "" -#: c-api/module.rst:306 +#: c-api/module.rst:312 msgid "Returns *def* cast to ``PyObject*``, or ``NULL`` if an error occurred." msgstr "" -#: c-api/module.rst:310 +#: c-api/module.rst:316 msgid "" "The *m_slots* member of the module definition must point to an array of " "``PyModuleDef_Slot`` structures:" msgstr "" -#: c-api/module.rst:317 +#: c-api/module.rst:323 msgid "A slot ID, chosen from the available values explained below." msgstr "" -#: c-api/module.rst:321 +#: c-api/module.rst:327 msgid "Value of the slot, whose meaning depends on the slot ID." msgstr "" -#: c-api/module.rst:325 +#: c-api/module.rst:331 msgid "The *m_slots* array must be terminated by a slot with id 0." msgstr "" -#: c-api/module.rst:327 +#: c-api/module.rst:333 msgid "The available slot types are:" msgstr "" -#: c-api/module.rst:331 +#: c-api/module.rst:337 msgid "" "Specifies a function that is called to create the module object itself. The " "*value* pointer of this slot must point to a function of the signature:" msgstr "" -#: c-api/module.rst:336 +#: c-api/module.rst:342 msgid "" "The function receives a :py:class:`~importlib.machinery.ModuleSpec` " "instance, as defined in :PEP:`451`, and the module definition. It should " "return a new module object, or set an error and return ``NULL``." msgstr "" -#: c-api/module.rst:341 +#: c-api/module.rst:347 msgid "" "This function should be kept minimal. In particular, it should not call " "arbitrary Python code, as trying to import the same module again may result " "in an infinite loop." msgstr "" -#: c-api/module.rst:345 +#: c-api/module.rst:351 msgid "" "Multiple ``Py_mod_create`` slots may not be specified in one module " "definition." msgstr "" -#: c-api/module.rst:348 +#: c-api/module.rst:354 msgid "" "If ``Py_mod_create`` is not specified, the import machinery will create a " "normal module object using :c:func:`PyModule_New`. The name is taken from " @@ -386,7 +395,7 @@ msgid "" "through symlinks, all while sharing a single module definition." msgstr "" -#: c-api/module.rst:354 +#: c-api/module.rst:360 msgid "" "There is no requirement for the returned object to be an instance of :c:type:" "`PyModule_Type`. Any type can be used, as long as it supports setting and " @@ -396,7 +405,7 @@ msgid "" "``Py_mod_create``." msgstr "" -#: c-api/module.rst:363 +#: c-api/module.rst:369 msgid "" "Specifies a function that is called to *execute* the module. This is " "equivalent to executing the code of a Python module: typically, this " @@ -404,21 +413,21 @@ msgid "" "function is:" msgstr "" -#: c-api/module.rst:370 +#: c-api/module.rst:376 msgid "" "If multiple ``Py_mod_exec`` slots are specified, they are processed in the " "order they appear in the *m_slots* array." msgstr "" -#: c-api/module.rst:373 +#: c-api/module.rst:379 msgid "See :PEP:`489` for more details on multi-phase initialization." msgstr "" -#: c-api/module.rst:376 +#: c-api/module.rst:382 msgid "Low-level module creation functions" msgstr "" -#: c-api/module.rst:378 +#: c-api/module.rst:384 msgid "" "The following functions are called under the hood when using multi-phase " "initialization. They can be used directly, for example when creating module " @@ -426,14 +435,14 @@ msgid "" "``PyModule_ExecDef`` must be called to fully initialize a module." msgstr "" -#: c-api/module.rst:385 +#: c-api/module.rst:391 msgid "" "Create a new module object, given the definition in *module* and the " "ModuleSpec *spec*. This behaves like :c:func:`PyModule_FromDefAndSpec2` " "with *module_api_version* set to :const:`PYTHON_API_VERSION`." msgstr "" -#: c-api/module.rst:393 +#: c-api/module.rst:399 msgid "" "Create a new module object, given the definition in *module* and the " "ModuleSpec *spec*, assuming the API version *module_api_version*. If that " @@ -441,24 +450,24 @@ msgid "" "`RuntimeWarning` is emitted." msgstr "" -#: c-api/module.rst:400 +#: c-api/module.rst:406 msgid "" "Most uses of this function should be using :c:func:`PyModule_FromDefAndSpec` " "instead; only use this if you are sure you need it." msgstr "" -#: c-api/module.rst:407 +#: c-api/module.rst:413 msgid "Process any execution slots (:c:data:`Py_mod_exec`) given in *def*." msgstr "" -#: c-api/module.rst:413 +#: c-api/module.rst:419 msgid "" "Set the docstring for *module* to *docstring*. This function is called " "automatically when creating a module from ``PyModuleDef``, using either " "``PyModule_Create`` or ``PyModule_FromDefAndSpec``." msgstr "" -#: c-api/module.rst:422 +#: c-api/module.rst:428 msgid "" "Add the functions from the ``NULL`` terminated *functions* array to " "*module*. Refer to the :c:type:`PyMethodDef` documentation for details on " @@ -470,11 +479,11 @@ msgid "" "``PyModule_FromDefAndSpec``." msgstr "" -#: c-api/module.rst:434 +#: c-api/module.rst:440 msgid "Support functions" msgstr "" -#: c-api/module.rst:436 +#: c-api/module.rst:442 msgid "" "The module initialization function (if using single phase initialization) or " "a function called from a module execution slot (if using multi-phase " @@ -482,40 +491,79 @@ msgid "" "module state:" msgstr "" -#: c-api/module.rst:443 +#: c-api/module.rst:449 msgid "" "Add an object to *module* as *name*. This is a convenience function which " -"can be used from the module's initialization function. This steals a " -"reference to *value* on success. Return ``-1`` on error, ``0`` on success." +"can be used from the module's initialization function." msgstr "" -#: c-api/module.rst:449 +#: c-api/module.rst:452 +msgid "" +"On success, return ``0``. On error, raise an exception and return ``-1``." +msgstr "" + +#: c-api/module.rst:454 +msgid "" +"Return ``NULL`` if *value* is ``NULL``. It must be called with an exception " +"raised in this case." +msgstr "" + +#: c-api/module.rst:506 +msgid "Example usage::" +msgstr "" + +#: c-api/module.rst:524 +msgid "" +"The example can also be written without checking explicitly if *obj* is " +"``NULL``::" +msgstr "" + +#: c-api/module.rst:540 +msgid "" +"Note that ``Py_XDECREF()`` should be used instead of ``Py_DECREF()`` in this " +"case, since *obj* can be ``NULL``." +msgstr "" + +#: c-api/module.rst:491 +msgid "" +"Similar to :c:func:`PyModule_AddObjectRef`, but steals a reference to " +"*value* on success (if it returns ``0``)." +msgstr "" + +#: c-api/module.rst:494 +msgid "" +"The new :c:func:`PyModule_AddObjectRef` function is recommended, since it is " +"easy to introduce reference leaks by misusing the :c:func:" +"`PyModule_AddObject` function." +msgstr "" + +#: c-api/module.rst:500 msgid "" "Unlike other functions that steal references, ``PyModule_AddObject()`` only " "decrements the reference count of *value* **on success**." msgstr "" -#: c-api/module.rst:452 +#: c-api/module.rst:503 msgid "" "This means that its return value must be checked, and calling code must :c:" -"func:`Py_DECREF` *value* manually on error. Example usage::" +"func:`Py_DECREF` *value* manually on error." msgstr "" -#: c-api/module.rst:464 +#: c-api/module.rst:546 msgid "" "Add an integer constant to *module* as *name*. This convenience function " "can be used from the module's initialization function. Return ``-1`` on " "error, ``0`` on success." msgstr "" -#: c-api/module.rst:471 +#: c-api/module.rst:553 msgid "" "Add a string constant to *module* as *name*. This convenience function can " "be used from the module's initialization function. The string *value* must " "be ``NULL``-terminated. Return ``-1`` on error, ``0`` on success." msgstr "" -#: c-api/module.rst:478 +#: c-api/module.rst:560 msgid "" "Add an int constant to *module*. The name and the value are taken from " "*macro*. For example ``PyModule_AddIntMacro(module, AF_INET)`` adds the int " @@ -523,11 +571,11 @@ msgid "" "error, ``0`` on success." msgstr "" -#: c-api/module.rst:486 +#: c-api/module.rst:568 msgid "Add a string constant to *module*." msgstr "" -#: c-api/module.rst:490 +#: c-api/module.rst:572 msgid "" "Add a type object to *module*. The type object is finalized by calling " "internally :c:func:`PyType_Ready`. The name of the type object is taken from " @@ -535,25 +583,25 @@ msgid "" "``-1`` on error, ``0`` on success." msgstr "" -#: c-api/module.rst:500 +#: c-api/module.rst:582 msgid "Module lookup" msgstr "" -#: c-api/module.rst:502 +#: c-api/module.rst:584 msgid "" "Single-phase initialization creates singleton modules that can be looked up " "in the context of the current interpreter. This allows the module object to " "be retrieved later with only a reference to the module definition." msgstr "" -#: c-api/module.rst:506 +#: c-api/module.rst:588 msgid "" "These functions will not work on modules created using multi-phase " "initialization, since multiple such modules can be created from a single " "definition." msgstr "" -#: c-api/module.rst:511 +#: c-api/module.rst:593 msgid "" "Returns the module object that was created from *def* for the current " "interpreter. This method requires that the module object has been attached " @@ -562,18 +610,18 @@ msgid "" "to the interpreter state yet, it returns ``NULL``." msgstr "" -#: c-api/module.rst:518 +#: c-api/module.rst:600 msgid "" "Attaches the module object passed to the function to the interpreter state. " "This allows the module object to be accessible via :c:func:" "`PyState_FindModule`." msgstr "" -#: c-api/module.rst:521 +#: c-api/module.rst:603 msgid "Only effective on modules created using single-phase initialization." msgstr "" -#: c-api/module.rst:523 +#: c-api/module.rst:605 msgid "" "Python calls ``PyState_AddModule`` automatically after importing a module, " "so it is unnecessary (but harmless) to call it from module initialization " @@ -584,15 +632,15 @@ msgid "" "state updates)." msgstr "" -#: c-api/module.rst:542 +#: c-api/module.rst:624 msgid "The caller must hold the GIL." msgstr "" -#: c-api/module.rst:533 +#: c-api/module.rst:615 msgid "Return 0 on success or -1 on failure." msgstr "" -#: c-api/module.rst:539 +#: c-api/module.rst:621 msgid "" "Removes the module object created from *def* from the interpreter state. " "Return 0 on success or -1 on failure." diff --git a/c-api/number.po b/c-api/number.po index c024c8325..e93d7add0 100644 --- a/c-api/number.po +++ b/c-api/number.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -256,7 +256,13 @@ msgid "" "`TypeError` exception raised on failure." msgstr "" -#: c-api/number.rst:262 +#: c-api/number.rst:259 +msgid "" +"The result always has exact type :class:`int`. Previously, the result could " +"have been an instance of a subclass of ``int``." +msgstr "" + +#: c-api/number.rst:266 msgid "" "Returns the integer *n* converted to base *base* as a string. The *base* " "argument must be one of 2, 8, 10, or 16. For base 2, 8, or 16, the returned " @@ -265,13 +271,13 @@ msgid "" "`PyNumber_Index` first." msgstr "" -#: c-api/number.rst:271 +#: c-api/number.rst:275 msgid "" "Returns *o* converted to a Py_ssize_t value if *o* can be interpreted as an " "integer. If the call fails, an exception is raised and ``-1`` is returned." msgstr "" -#: c-api/number.rst:274 +#: c-api/number.rst:278 msgid "" "If *o* can be converted to a Python int but the attempt to convert to a " "Py_ssize_t value would raise an :exc:`OverflowError`, then the *exc* " @@ -281,7 +287,7 @@ msgid "" "negative integer or ``PY_SSIZE_T_MAX`` for a positive integer." msgstr "" -#: c-api/number.rst:284 +#: c-api/number.rst:288 msgid "" "Returns ``1`` if *o* is an index integer (has the nb_index slot of the " "tp_as_number structure filled in), and ``0`` otherwise. This function always " diff --git a/c-api/object.po b/c-api/object.po index eedfef748..2119a1b4e 100644 --- a/c-api/object.po +++ b/c-api/object.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-06-22 09:58+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-08-16 22:56+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -428,8 +428,8 @@ msgstr "" #: c-api/object.rst:300 msgid "" -"Return true if the object *o* is of type *type* or a subtype of *type*. " -"Both parameters must be non-``NULL``." +"Return non-zero if the object *o* is of type *type* or a subtype of *type*, " +"and ``0`` otherwise. Both parameters must be non-``NULL``." msgstr "" #: c-api/object.rst:309 @@ -499,6 +499,15 @@ msgid "" "object cannot be iterated." msgstr "" +#: c-api/object.rst:363 +msgid "" +"This is the equivalent to the Python expression ``aiter(o)``. Takes an :" +"class:`AsyncIterable` object and returns an :class:`AsyncIterator` for it. " +"This is typically a new iterator but if the argument is an :class:" +"`AsyncIterator`, this returns itself. Raises :exc:`TypeError` and returns " +"``NULL`` if the object cannot be iterated." +msgstr "" + #~ msgid "" #~ "Determine if the object *o* is callable. Return ``1`` if the object is " #~ "callable and ``0`` otherwise. This function always succeeds." diff --git a/c-api/refcounting.po b/c-api/refcounting.po index 405d98f2c..bc4790649 100644 --- a/c-api/refcounting.po +++ b/c-api/refcounting.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -25,27 +25,93 @@ msgid "" msgstr "" #: c-api/refcounting.rst:16 +msgid "Increment the reference count for object *o*." +msgstr "" + +#: c-api/refcounting.rst:18 msgid "" -"Increment the reference count for object *o*. The object must not be " -"``NULL``; if you aren't sure that it isn't ``NULL``, use :c:func:" -"`Py_XINCREF`." +"This function is usually used to convert a :term:`borrowed reference` to a :" +"term:`strong reference` in-place. The :c:func:`Py_NewRef` function can be " +"used to create a new :term:`strong reference`." msgstr "" #: c-api/refcounting.rst:22 msgid "" +"The object must not be ``NULL``; if you aren't sure that it isn't ``NULL``, " +"use :c:func:`Py_XINCREF`." +msgstr "" + +#: c-api/refcounting.rst:28 +msgid "" "Increment the reference count for object *o*. The object may be ``NULL``, " "in which case the macro has no effect." msgstr "" -#: c-api/refcounting.rst:28 +#: c-api/refcounting.rst:31 +msgid "See also :c:func:`Py_XNewRef`." +msgstr "" + +#: c-api/refcounting.rst:36 +msgid "" +"Create a new :term:`strong reference` to an object: increment the reference " +"count of the object *o* and return the object *o*." +msgstr "" + +#: c-api/refcounting.rst:39 +msgid "" +"When the :term:`strong reference` is no longer needed, :c:func:`Py_DECREF` " +"should be called on it to decrement the object reference count." +msgstr "" + +#: c-api/refcounting.rst:42 +msgid "" +"The object *o* must not be ``NULL``; use :c:func:`Py_XNewRef` if *o* can be " +"``NULL``." +msgstr "" + +#: c-api/refcounting.rst:45 +msgid "For example::" +msgstr "" + +#: c-api/refcounting.rst:50 +msgid "can be written as::" +msgstr "" + +#: c-api/refcounting.rst:54 +msgid "See also :c:func:`Py_INCREF`." +msgstr "" + +#: c-api/refcounting.rst:61 +msgid "Similar to :c:func:`Py_NewRef`, but the object *o* can be NULL." +msgstr "" + +#: c-api/refcounting.rst:63 +msgid "If the object *o* is ``NULL``, the function just returns ``NULL``." +msgstr "" + +#: c-api/refcounting.rst:70 +msgid "Decrement the reference count for object *o*." +msgstr "" + +#: c-api/refcounting.rst:72 +msgid "" +"If the reference count reaches zero, the object's type's deallocation " +"function (which must not be ``NULL``) is invoked." +msgstr "" + +#: c-api/refcounting.rst:75 +msgid "" +"This function is usually used to delete a :term:`strong reference` before " +"exiting its scope." +msgstr "" + +#: c-api/refcounting.rst:78 msgid "" -"Decrement the reference count for object *o*. The object must not be " -"``NULL``; if you aren't sure that it isn't ``NULL``, use :c:func:" -"`Py_XDECREF`. If the reference count reaches zero, the object's type's " -"deallocation function (which must not be ``NULL``) is invoked." +"The object must not be ``NULL``; if you aren't sure that it isn't ``NULL``, " +"use :c:func:`Py_XDECREF`." msgstr "" -#: c-api/refcounting.rst:35 +#: c-api/refcounting.rst:83 msgid "" "The deallocation function can cause arbitrary Python code to be invoked (e." "g. when a class instance with a :meth:`__del__` method is deallocated). " @@ -58,14 +124,14 @@ msgid "" "temporary variable." msgstr "" -#: c-api/refcounting.rst:47 +#: c-api/refcounting.rst:95 msgid "" "Decrement the reference count for object *o*. The object may be ``NULL``, " "in which case the macro has no effect; otherwise the effect is the same as " "for :c:func:`Py_DECREF`, and the same warning applies." msgstr "" -#: c-api/refcounting.rst:54 +#: c-api/refcounting.rst:102 msgid "" "Decrement the reference count for object *o*. The object may be ``NULL``, " "in which case the macro has no effect; otherwise the effect is the same as " @@ -75,13 +141,13 @@ msgid "" "the argument to ``NULL`` before decrementing its reference count." msgstr "" -#: c-api/refcounting.rst:61 +#: c-api/refcounting.rst:109 msgid "" "It is a good idea to use this macro whenever decrementing the reference " "count of an object that might be traversed during garbage collection." msgstr "" -#: c-api/refcounting.rst:65 +#: c-api/refcounting.rst:113 msgid "" "The following functions are for runtime dynamic embedding of Python: " "``Py_IncRef(PyObject *o)``, ``Py_DecRef(PyObject *o)``. They are simply " @@ -89,7 +155,7 @@ msgid "" "respectively." msgstr "" -#: c-api/refcounting.rst:70 +#: c-api/refcounting.rst:118 msgid "" "The following functions or macros are only for use within the interpreter " "core: :c:func:`_Py_Dealloc`, :c:func:`_Py_ForgetReference`, :c:func:" diff --git a/c-api/reflection.po b/c-api/reflection.po index 10deec6ab..586504600 100644 --- a/c-api/reflection.po +++ b/c-api/reflection.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-02-26 12:01+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -63,7 +63,8 @@ msgid "Get the *frame* next outer frame." msgstr "" #: c-api/reflection.rst:38 -msgid "Return a strong reference, or ``NULL`` if *frame* has no outer frame." +msgid "" +"Return a :term:`strong reference`, or ``NULL`` if *frame* has no outer frame." msgstr "" #: c-api/reflection.rst:60 @@ -75,7 +76,7 @@ msgid "Get the *frame* code." msgstr "" #: c-api/reflection.rst:49 -msgid "Return a strong reference." +msgid "Return a :term:`strong reference`." msgstr "" #: c-api/reflection.rst:51 diff --git a/c-api/set.po b/c-api/set.po index 3a076f7c9..8fdc3857d 100644 --- a/c-api/set.po +++ b/c-api/set.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -86,19 +86,25 @@ msgid "" "an instance of a subtype. This function always succeeds." msgstr "" -#: c-api/set.rst:71 +#: c-api/set.rst:70 +msgid "" +"Return true if *p* is a :class:`set` object but not an instance of a " +"subtype. This function always succeeds." +msgstr "" + +#: c-api/set.rst:77 msgid "" "Return true if *p* is a :class:`set` object or a :class:`frozenset` object " "but not an instance of a subtype. This function always succeeds." msgstr "" -#: c-api/set.rst:77 +#: c-api/set.rst:83 msgid "" "Return true if *p* is a :class:`frozenset` object but not an instance of a " "subtype. This function always succeeds." msgstr "" -#: c-api/set.rst:83 +#: c-api/set.rst:89 msgid "" "Return a new :class:`set` containing objects returned by the *iterable*. " "The *iterable* may be ``NULL`` to create a new empty set. Return the new " @@ -107,7 +113,7 @@ msgid "" "(``c=set(s)``)." msgstr "" -#: c-api/set.rst:92 +#: c-api/set.rst:98 msgid "" "Return a new :class:`frozenset` containing objects returned by the " "*iterable*. The *iterable* may be ``NULL`` to create a new empty frozenset. " @@ -115,24 +121,24 @@ msgid "" "`TypeError` if *iterable* is not actually iterable." msgstr "" -#: c-api/set.rst:98 +#: c-api/set.rst:104 msgid "" "The following functions and macros are available for instances of :class:" "`set` or :class:`frozenset` or instances of their subtypes." msgstr "" -#: c-api/set.rst:106 +#: c-api/set.rst:112 msgid "" "Return the length of a :class:`set` or :class:`frozenset` object. Equivalent " "to ``len(anyset)``. Raises a :exc:`PyExc_SystemError` if *anyset* is not a :" "class:`set`, :class:`frozenset`, or an instance of a subtype." msgstr "" -#: c-api/set.rst:113 +#: c-api/set.rst:119 msgid "Macro form of :c:func:`PySet_Size` without error checking." msgstr "" -#: c-api/set.rst:118 +#: c-api/set.rst:124 msgid "" "Return ``1`` if found, ``0`` if not found, and ``-1`` if an error is " "encountered. Unlike the Python :meth:`__contains__` method, this function " @@ -142,7 +148,7 @@ msgid "" "or an instance of a subtype." msgstr "" -#: c-api/set.rst:127 +#: c-api/set.rst:133 msgid "" "Add *key* to a :class:`set` instance. Also works with :class:`frozenset` " "instances (like :c:func:`PyTuple_SetItem` it can be used to fill-in the " @@ -153,13 +159,13 @@ msgid "" "`set` or its subtype." msgstr "" -#: c-api/set.rst:136 +#: c-api/set.rst:142 msgid "" "The following functions are available for instances of :class:`set` or its " "subtypes but not for instances of :class:`frozenset` or its subtypes." msgstr "" -#: c-api/set.rst:142 +#: c-api/set.rst:148 msgid "" "Return ``1`` if found and removed, ``0`` if not found (no action taken), and " "``-1`` if an error is encountered. Does not raise :exc:`KeyError` for " @@ -170,7 +176,7 @@ msgid "" "subtype." msgstr "" -#: c-api/set.rst:152 +#: c-api/set.rst:158 msgid "" "Return a new reference to an arbitrary object in the *set*, and removes the " "object from the *set*. Return ``NULL`` on failure. Raise :exc:`KeyError` " @@ -178,6 +184,6 @@ msgid "" "of :class:`set` or its subtype." msgstr "" -#: c-api/set.rst:160 +#: c-api/set.rst:166 msgid "Empty an existing set of all elements." msgstr "" diff --git a/c-api/stable.po b/c-api/stable.po index 0acc383a2..0e0c26077 100644 --- a/c-api/stable.po +++ b/c-api/stable.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-10-04 12:26+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -15,83 +15,291 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: c-api/stable.rst:7 -msgid "Stable Application Binary Interface" -msgstr "ABI Stable" +msgid "C API Stability" +msgstr "" #: c-api/stable.rst:9 +#, fuzzy msgid "" -"Traditionally, the C API of Python will change with every release. Most " -"changes will be source-compatible, typically by only adding API, rather than " -"changing existing API or removing API (although some interfaces do get " -"removed after being deprecated first)." +"Python's C API is covered by the Backwards Compatibility Policy, :pep:`387`. " +"While the C API will change with every minor release (e.g. from 3.9 to " +"3.10), most changes will be source-compatible, typically by only adding new " +"API. Changing existing API or removing API is only done after a deprecation " +"period or to fix serious issues." msgstr "" "L'API C de Python change à chaque version. La majorité de ces changement " "n'affecte cependant pas la compatibilité du code source. Typiquement, des " "API sont ajoutées, mais ni modifiées ni supprimées (bien que certaines " "interfaces puissent être supprimées, après avoir d'abord été dépréciées)." -#: c-api/stable.rst:14 -msgid "" -"Unfortunately, the API compatibility does not extend to binary compatibility " -"(the ABI). The reason is primarily the evolution of struct definitions, " -"where addition of a new field, or changing the type of a field, might not " -"break the API, but can break the ABI. As a consequence, extension modules " -"need to be recompiled for every Python release (although an exception is " -"possible on Unix when none of the affected interfaces are used). In " -"addition, on Windows, extension modules link with a specific pythonXY.dll " -"and need to be recompiled to link with a newer one." -msgstr "" -"Malheureusement, la compatibilité de l'API ne s'étend pas à une " -"compatibilité binaire (l'ABI). L'évolution des structures en est la raison " -"principale : l'ajout de nouveaux attributs, ou le changement du type d'un " -"attribut peut ne pas casser l'API mais casser l'ABI. Par conséquent, les " -"modules d'extension doivent être recompilés à chaque nouvelle version de " -"Python (ce n'est exceptionnellement pas nécessaire sur Unix, si aucune des " -"interfaces modifiées n'est utilisée). De plus, sous Windows, les modules " -"d'extension sont liés à un *pythonXY.dll* spécifique, ils est donc " -"nécessaire de les recompiler pour les lier au nouveau DLL." - -#: c-api/stable.rst:23 -msgid "" -"Since Python 3.2, a subset of the API has been declared to guarantee a " -"stable ABI. Extension modules wishing to use this API (called \"limited API" -"\") need to define ``Py_LIMITED_API``. A number of interpreter details then " -"become hidden from the extension module; in return, a module is built that " -"works on any 3.x version (x>=2) without recompilation." -msgstr "" -"Depuis Python 3.2 il est garanti qu'une certaine partie de l'API gardera une " -"ABI stable. Les modules d'extension souhaitant utiliser cette API (Appellée " -"\"API limitée\") doivent définir ``Py_LIMITED_API``. Des spécificités de " -"l'interpréteur sont alors cachées au module, en contrepartie le module " -"devient compatible avec toutes les versions de Python 3.x (x>=2) sans " -"recompilation." - -#: c-api/stable.rst:29 -msgid "" -"In some cases, the stable ABI needs to be extended with new functions. " -"Extension modules wishing to use these new APIs need to set " -"``Py_LIMITED_API`` to the ``PY_VERSION_HEX`` value (see :ref:" -"`apiabiversion`) of the minimum Python version they want to support (e.g. " -"``0x03030000`` for Python 3.3). Such modules will work on all subsequent " -"Python releases, but fail to load (because of missing symbols) on the older " -"releases." -msgstr "" -"Dans certains cas, il est nécessaire d'étendre l'ABI stable avec de " -"nouvelles fonctions. Les modules d'extension souhaitant utiliser ces " -"nouvelles APIs doivent configurer ``Py_LIMITED_API`` à la valeur " -"``Py_VERSION_HEX`` correspondant à la plus ancienne version de Python qu'ils " -"souhaitent supporter (voir :ref:`apiabiversion`, par exemple ``0x03030000`` " -"pour Python 3.3). De tels modules fonctionneront dans toutes les versions " -"ultérieures de Python, mais ne pourront pas se charger (dû à des symboles " -"manquants) sur les versions plus anciennes." - -#: c-api/stable.rst:36 -msgid "" -"As of Python 3.2, the set of functions available to the limited API is " -"documented in :pep:`384`. In the C API documentation, API elements that are " -"not part of the limited API are marked as \"Not part of the limited API.\"" -msgstr "" -"Depuis Python 3.2, l'ensemble des fonctions exposées par l'API limitée est " -"documentée dans la :pep:`384`. Dans la documentation de l'API C, les " -"éléments ne faisant pas partie de l'API limitée sont notés \"Ne faisant pas " -"partie de l'API limitée\" (*\"Not part of the limited API\"*)." +#: c-api/stable.rst:15 +msgid "" +"CPython's Application Binary Interface (ABI) is forward- and backwards-" +"compatible across a minor release (if these are compiled the same way; see :" +"ref:`stable-abi-platform` below). So, code compiled for Python 3.10.0 will " +"work on 3.10.8 and vice versa, but will need to be compiled separately for " +"3.9.x and 3.10.x." +msgstr "" + +#: c-api/stable.rst:21 +msgid "" +"Names prefixed by an underscore, such as ``_Py_InternalState``, are private " +"API that can change without notice even in patch releases." +msgstr "" + +#: c-api/stable.rst:26 +msgid "Stable Application Binary Interface" +msgstr "ABI Stable" + +#: c-api/stable.rst:28 +msgid "" +"Python 3.2 introduced the *Limited API*, a subset of Python's C API. " +"Extensions that only use the Limited API can be compiled once and work with " +"multiple versions of Python. Contents of the Limited API are :ref:`listed " +"below `." +msgstr "" + +#: c-api/stable.rst:33 +msgid "" +"To enable this, Python provides a *Stable ABI*: a set of symbols that will " +"remain compatible across Python 3.x versions. The Stable ABI contains " +"symbols exposed in the Limited API, but also other ones – for example, " +"functions necessary to support older versions of the Limited API." +msgstr "" + +#: c-api/stable.rst:38 +msgid "" +"(For simplicity, this document talks about *extensions*, but the Limited API " +"and Stable ABI work the same way for all uses of the API – for example, " +"embedding Python.)" +msgstr "" + +#: c-api/stable.rst:44 +msgid "" +"Define this macro before including ``Python.h`` to opt in to only use the " +"Limited API, and to select the Limited API version." +msgstr "" + +#: c-api/stable.rst:47 +msgid "" +"Define ``Py_LIMITED_API`` to the value of :c:data:`PY_VERSION_HEX` " +"corresponding to the lowest Python version your extension supports. The " +"extension will work without recompilation with all Python 3 releases from " +"the specified one onward, and can use Limited API introduced up to that " +"version." +msgstr "" + +#: c-api/stable.rst:53 +msgid "" +"Rather than using the ``PY_VERSION_HEX`` macro directly, hardcode a minimum " +"minor version (e.g. ``0x030A0000`` for Python 3.10) for stability when " +"compiling with future Python versions." +msgstr "" + +#: c-api/stable.rst:57 +msgid "" +"You can also define ``Py_LIMITED_API`` to ``3``. This works the same as " +"``0x03020000`` (Python 3.2, the version that introduced Limited API)." +msgstr "" + +#: c-api/stable.rst:60 +msgid "" +"On Windows, extensions that use the Stable ABI should be linked against " +"``python3.dll`` rather than a version-specific library such as ``python39." +"dll``." +msgstr "" + +#: c-api/stable.rst:64 +msgid "" +"On some platforms, Python will look for and load shared library files named " +"with the ``abi3`` tag (e.g. ``mymodule.abi3.so``). It does not check if such " +"extensions conform to a Stable ABI. The user (or their packaging tools) need " +"to ensure that, for example, extensions built with the 3.10+ Limited API are " +"not installed for lower versions of Python." +msgstr "" + +#: c-api/stable.rst:71 +msgid "" +"All functions in the Stable ABI are present as functions in Python's shared " +"library, not solely as macros. This makes them usable from languages that " +"don't use the C preprocessor." +msgstr "" + +#: c-api/stable.rst:77 +msgid "Limited API Scope and Performance" +msgstr "" + +#: c-api/stable.rst:79 +msgid "" +"The goal for the Limited API is to allow everything that is possible with " +"the full C API, but possibly with a performance penalty." +msgstr "" + +#: c-api/stable.rst:82 +msgid "" +"For example, while :c:func:`PyList_GetItem` is available, its “unsafe” macro " +"variant :c:func:`PyList_GET_ITEM` is not. The macro can be faster because it " +"can rely on version-specific implementation details of the list object." +msgstr "" + +#: c-api/stable.rst:87 +msgid "" +"Without ``Py_LIMITED_API`` defined, some C API functions are inlined or " +"replaced by macros. Defining ``Py_LIMITED_API`` disables this inlining, " +"allowing stability as Python's data structures are improved, but possibly " +"reducing performance." +msgstr "" + +#: c-api/stable.rst:92 +msgid "" +"By leaving out the ``Py_LIMITED_API`` definition, it is possible to compile " +"a Limited API extension with a version-specific ABI. This can improve " +"performance for that Python version, but will limit compatibility. Compiling " +"with ``Py_LIMITED_API`` will then yield an extension that can be distributed " +"where a version-specific one is not available – for example, for prereleases " +"of an upcoming Python version." +msgstr "" + +#: c-api/stable.rst:101 +msgid "Limited API Caveats" +msgstr "" + +#: c-api/stable.rst:103 +msgid "" +"Note that compiling with ``Py_LIMITED_API`` is *not* a complete guarantee " +"that code conforms to the Limited API or the Stable ABI. ``Py_LIMITED_API`` " +"only covers definitions, but an API also includes other issues, such as " +"expected semantics." +msgstr "" + +#: c-api/stable.rst:108 +msgid "" +"One issue that ``Py_LIMITED_API`` does not guard against is calling a " +"function with arguments that are invalid in a lower Python version. For " +"example, consider a function that starts accepting ``NULL`` for an argument. " +"In Python 3.9, ``NULL`` now selects a default behavior, but in Python 3.8, " +"the argument will be used directly, causing a ``NULL`` dereference and " +"crash. A similar argument works for fields of structs." +msgstr "" + +#: c-api/stable.rst:115 +msgid "" +"Another issue is that some struct fields are currently not hidden when " +"``Py_LIMITED_API`` is defined, even though they're part of the Limited API." +msgstr "" + +#: c-api/stable.rst:118 +msgid "" +"For these reasons, we recommend testing an extension with *all* minor Python " +"versions it supports, and preferably to build with the *lowest* such version." +msgstr "" + +#: c-api/stable.rst:121 +msgid "" +"We also recommend reviewing documentation of all used API to check if it is " +"explicitly part of the Limited API. Even with ``Py_LIMITED_API`` defined, a " +"few private declarations are exposed for technical reasons (or even " +"unintentionally, as bugs)." +msgstr "" + +#: c-api/stable.rst:126 +msgid "" +"Also note that the Limited API is not necessarily stable: compiling with " +"``Py_LIMITED_API`` with Python 3.8 means that the extension will run with " +"Python 3.12, but it will not necessarily *compile* with Python 3.12. In " +"particular, parts of the Limited API may be deprecated and removed, provided " +"that the Stable ABI stays stable." +msgstr "" + +#: c-api/stable.rst:136 +msgid "Platform Considerations" +msgstr "" + +#: c-api/stable.rst:138 +msgid "" +"ABI stability depends not only on Python, but also on the compiler used, " +"lower-level libraries and compiler options. For the purposes of the Stable " +"ABI, these details define a “platform”. They usually depend on the OS type " +"and processor architecture" +msgstr "" + +#: c-api/stable.rst:143 +msgid "" +"It is the responsibility of each particular distributor of Python to ensure " +"that all Python versions on a particular platform are built in a way that " +"does not break the Stable ABI. This is the case with Windows and macOS " +"releases from ``python.org`` and many third-party distributors." +msgstr "" + +#: c-api/stable.rst:153 +msgid "Contents of Limited API" +msgstr "" + +#: c-api/stable.rst:156 +msgid "Currently, the Limited API includes the following items:" +msgstr "" + +#~ msgid "" +#~ "Unfortunately, the API compatibility does not extend to binary " +#~ "compatibility (the ABI). The reason is primarily the evolution of struct " +#~ "definitions, where addition of a new field, or changing the type of a " +#~ "field, might not break the API, but can break the ABI. As a consequence, " +#~ "extension modules need to be recompiled for every Python release " +#~ "(although an exception is possible on Unix when none of the affected " +#~ "interfaces are used). In addition, on Windows, extension modules link " +#~ "with a specific pythonXY.dll and need to be recompiled to link with a " +#~ "newer one." +#~ msgstr "" +#~ "Malheureusement, la compatibilité de l'API ne s'étend pas à une " +#~ "compatibilité binaire (l'ABI). L'évolution des structures en est la " +#~ "raison principale : l'ajout de nouveaux attributs, ou le changement du " +#~ "type d'un attribut peut ne pas casser l'API mais casser l'ABI. Par " +#~ "conséquent, les modules d'extension doivent être recompilés à chaque " +#~ "nouvelle version de Python (ce n'est exceptionnellement pas nécessaire " +#~ "sur Unix, si aucune des interfaces modifiées n'est utilisée). De plus, " +#~ "sous Windows, les modules d'extension sont liés à un *pythonXY.dll* " +#~ "spécifique, ils est donc nécessaire de les recompiler pour les lier au " +#~ "nouveau DLL." + +#~ msgid "" +#~ "Since Python 3.2, a subset of the API has been declared to guarantee a " +#~ "stable ABI. Extension modules wishing to use this API (called \"limited " +#~ "API\") need to define ``Py_LIMITED_API``. A number of interpreter details " +#~ "then become hidden from the extension module; in return, a module is " +#~ "built that works on any 3.x version (x>=2) without recompilation." +#~ msgstr "" +#~ "Depuis Python 3.2 il est garanti qu'une certaine partie de l'API gardera " +#~ "une ABI stable. Les modules d'extension souhaitant utiliser cette API " +#~ "(Appellée \"API limitée\") doivent définir ``Py_LIMITED_API``. Des " +#~ "spécificités de l'interpréteur sont alors cachées au module, en " +#~ "contrepartie le module devient compatible avec toutes les versions de " +#~ "Python 3.x (x>=2) sans recompilation." + +#~ msgid "" +#~ "In some cases, the stable ABI needs to be extended with new functions. " +#~ "Extension modules wishing to use these new APIs need to set " +#~ "``Py_LIMITED_API`` to the ``PY_VERSION_HEX`` value (see :ref:" +#~ "`apiabiversion`) of the minimum Python version they want to support (e.g. " +#~ "``0x03030000`` for Python 3.3). Such modules will work on all subsequent " +#~ "Python releases, but fail to load (because of missing symbols) on the " +#~ "older releases." +#~ msgstr "" +#~ "Dans certains cas, il est nécessaire d'étendre l'ABI stable avec de " +#~ "nouvelles fonctions. Les modules d'extension souhaitant utiliser ces " +#~ "nouvelles APIs doivent configurer ``Py_LIMITED_API`` à la valeur " +#~ "``Py_VERSION_HEX`` correspondant à la plus ancienne version de Python " +#~ "qu'ils souhaitent supporter (voir :ref:`apiabiversion`, par exemple " +#~ "``0x03030000`` pour Python 3.3). De tels modules fonctionneront dans " +#~ "toutes les versions ultérieures de Python, mais ne pourront pas se " +#~ "charger (dû à des symboles manquants) sur les versions plus anciennes." + +#~ msgid "" +#~ "As of Python 3.2, the set of functions available to the limited API is " +#~ "documented in :pep:`384`. In the C API documentation, API elements that " +#~ "are not part of the limited API are marked as \"Not part of the limited " +#~ "API.\"" +#~ msgstr "" +#~ "Depuis Python 3.2, l'ensemble des fonctions exposées par l'API limitée " +#~ "est documentée dans la :pep:`384`. Dans la documentation de l'API C, les " +#~ "éléments ne faisant pas partie de l'API limitée sont notés \"Ne faisant " +#~ "pas partie de l'API limitée\" (*\"Not part of the limited API\"*)." diff --git a/c-api/structures.po b/c-api/structures.po index a41d6e49f..e367819a4 100644 --- a/c-api/structures.po +++ b/c-api/structures.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -81,58 +81,93 @@ msgstr "" #: c-api/structures.rst:67 msgid "" -"This macro is used to access the :attr:`ob_type` member of a Python object. " -"It expands to::" +"Test if the *x* object is the *y* object, the same as ``x is y`` in Python." msgstr "" -#: c-api/structures.rst:75 +#: c-api/structures.rst:74 +msgid "" +"Test if an object is the ``None`` singleton, the same as ``x is None`` in " +"Python." +msgstr "" + +#: c-api/structures.rst:82 +msgid "" +"Test if an object is the ``True`` singleton, the same as ``x is True`` in " +"Python." +msgstr "" + +#: c-api/structures.rst:90 +msgid "" +"Test if an object is the ``False`` singleton, the same as ``x is False`` in " +"Python." +msgstr "" + +#: c-api/structures.rst:98 +msgid "Get the type of the Python object *o*." +msgstr "" + +#: c-api/structures.rst:100 +msgid "Return a :term:`borrowed reference`." +msgstr "" + +#: c-api/structures.rst:102 +msgid "The :c:func:`Py_SET_TYPE` function must be used to set an object type." +msgstr "" + +#: c-api/structures.rst:107 msgid "" "Return non-zero if the object *o* type is *type*. Return zero otherwise. " "Equivalent to: ``Py_TYPE(o) == type``." msgstr "" -#: c-api/structures.rst:83 +#: c-api/structures.rst:115 msgid "Set the object *o* type to *type*." msgstr "" -#: c-api/structures.rst:90 +#: c-api/structures.rst:122 +msgid "Get the reference count of the Python object *o*." +msgstr "" + +#: c-api/structures.rst:124 msgid "" -"This macro is used to access the :attr:`ob_refcnt` member of a Python " -"object. It expands to::" +":c:func:`Py_REFCNT()` is changed to the inline static function. Use :c:func:" +"`Py_SET_REFCNT()` to set an object reference count." msgstr "" -#: c-api/structures.rst:99 +#: c-api/structures.rst:131 msgid "Set the object *o* reference counter to *refcnt*." msgstr "" -#: c-api/structures.rst:106 -msgid "" -"This macro is used to access the :attr:`ob_size` member of a Python object. " -"It expands to::" +#: c-api/structures.rst:138 +msgid "Get the size of the Python object *o*." msgstr "" -#: c-api/structures.rst:114 +#: c-api/structures.rst:140 +msgid "The :c:func:`Py_SET_SIZE` function must be used to set an object size." +msgstr "" + +#: c-api/structures.rst:145 msgid "Set the object *o* size to *size*." msgstr "" -#: c-api/structures.rst:121 +#: c-api/structures.rst:152 msgid "" "This is a macro which expands to initialization values for a new :c:type:" "`PyObject` type. This macro expands to::" msgstr "" -#: c-api/structures.rst:130 +#: c-api/structures.rst:161 msgid "" "This is a macro which expands to initialization values for a new :c:type:" "`PyVarObject` type, including the :attr:`ob_size` field. This macro expands " "to::" msgstr "" -#: c-api/structures.rst:139 +#: c-api/structures.rst:170 msgid "Implementing functions and methods" msgstr "" -#: c-api/structures.rst:143 +#: c-api/structures.rst:174 msgid "" "Type of the functions used to implement most Python callables in C. " "Functions of this type take two :c:type:`PyObject*` parameters and return " @@ -142,99 +177,99 @@ msgid "" "reference." msgstr "" -#: c-api/structures.rst:150 +#: c-api/structures.rst:181 msgid "The function signature is::" msgstr "" -#: c-api/structures.rst:157 +#: c-api/structures.rst:188 msgid "" "Type of the functions used to implement Python callables in C with " "signature :const:`METH_VARARGS | METH_KEYWORDS`. The function signature is::" msgstr "" -#: c-api/structures.rst:168 +#: c-api/structures.rst:199 msgid "" "Type of the functions used to implement Python callables in C with " "signature :const:`METH_FASTCALL`. The function signature is::" msgstr "" -#: c-api/structures.rst:178 +#: c-api/structures.rst:209 msgid "" "Type of the functions used to implement Python callables in C with " "signature :const:`METH_FASTCALL | METH_KEYWORDS`. The function signature is::" msgstr "" -#: c-api/structures.rst:189 +#: c-api/structures.rst:220 msgid "" "Type of the functions used to implement Python callables in C with " "signature :const:`METH_METHOD | METH_FASTCALL | METH_KEYWORDS`. The function " "signature is::" msgstr "" -#: c-api/structures.rst:204 +#: c-api/structures.rst:235 msgid "" "Structure used to describe a method of an extension type. This structure " "has four fields:" msgstr "" -#: c-api/structures.rst:364 c-api/structures.rst:445 +#: c-api/structures.rst:397 c-api/structures.rst:493 msgid "Field" msgstr "Champ" -#: c-api/structures.rst:364 c-api/structures.rst:445 +#: c-api/structures.rst:397 c-api/structures.rst:493 msgid "C Type" msgstr "Type C" -#: c-api/structures.rst:364 c-api/structures.rst:445 +#: c-api/structures.rst:397 c-api/structures.rst:493 msgid "Meaning" msgstr "Signification" -#: c-api/structures.rst:210 +#: c-api/structures.rst:241 msgid ":attr:`ml_name`" msgstr "" -#: c-api/structures.rst:218 c-api/structures.rst:379 c-api/structures.rst:447 -#: c-api/structures.rst:455 +#: c-api/structures.rst:249 c-api/structures.rst:412 c-api/structures.rst:495 +#: c-api/structures.rst:503 msgid "const char \\*" msgstr "" -#: c-api/structures.rst:210 +#: c-api/structures.rst:241 msgid "name of the method" msgstr "" -#: c-api/structures.rst:212 +#: c-api/structures.rst:243 msgid ":attr:`ml_meth`" msgstr "" -#: c-api/structures.rst:212 +#: c-api/structures.rst:243 msgid "PyCFunction" msgstr "PyCFunction" -#: c-api/structures.rst:212 +#: c-api/structures.rst:243 msgid "pointer to the C implementation" msgstr "" -#: c-api/structures.rst:215 +#: c-api/structures.rst:246 msgid ":attr:`ml_flags`" msgstr "" -#: c-api/structures.rst:368 c-api/structures.rst:391 +#: c-api/structures.rst:401 c-api/structures.rst:424 msgid "int" msgstr "*int*" -#: c-api/structures.rst:215 +#: c-api/structures.rst:246 msgid "flag bits indicating how the call should be constructed" msgstr "" -#: c-api/structures.rst:218 +#: c-api/structures.rst:249 msgid ":attr:`ml_doc`" msgstr "" -#: c-api/structures.rst:379 +#: c-api/structures.rst:412 msgid "points to the contents of the docstring" msgstr "" -#: c-api/structures.rst:222 +#: c-api/structures.rst:253 msgid "" "The :attr:`ml_meth` is a C function pointer. The functions may be of " "different types, but they always return :c:type:`PyObject*`. If the " @@ -244,18 +279,18 @@ msgid "" "implementation uses the specific C type of the *self* object." msgstr "" -#: c-api/structures.rst:229 +#: c-api/structures.rst:260 msgid "" "The :attr:`ml_flags` field is a bitfield which can include the following " "flags. The individual flags indicate either a calling convention or a " "binding convention." msgstr "" -#: c-api/structures.rst:233 +#: c-api/structures.rst:264 msgid "There are these calling conventions:" msgstr "" -#: c-api/structures.rst:237 +#: c-api/structures.rst:268 msgid "" "This is the typical calling convention, where the methods have the type :c:" "type:`PyCFunction`. The function expects two :c:type:`PyObject*` values. The " @@ -265,7 +300,7 @@ msgid "" "func:`PyArg_ParseTuple` or :c:func:`PyArg_UnpackTuple`." msgstr "" -#: c-api/structures.rst:247 +#: c-api/structures.rst:278 msgid "" "Methods with these flags must be of type :c:type:`PyCFunctionWithKeywords`. " "The function expects three parameters: *self*, *args*, *kwargs* where " @@ -274,7 +309,7 @@ msgid "" "using :c:func:`PyArg_ParseTupleAndKeywords`." msgstr "" -#: c-api/structures.rst:256 +#: c-api/structures.rst:287 msgid "" "Fast calling convention supporting only positional arguments. The methods " "have the type :c:type:`_PyCFunctionFast`. The first parameter is *self*, the " @@ -283,11 +318,11 @@ msgid "" "the array)." msgstr "" -#: c-api/structures.rst:279 -msgid "This is not part of the :ref:`limited API `." +#: c-api/structures.rst:297 +msgid "``METH_FASTCALL`` is now part of the stable ABI." msgstr "" -#: c-api/structures.rst:269 +#: c-api/structures.rst:302 msgid "" "Extension of :const:`METH_FASTCALL` supporting also keyword arguments, with " "methods of type :c:type:`_PyCFunctionFastWithKeywords`. Keyword arguments " @@ -299,21 +334,25 @@ msgid "" "arguments." msgstr "" -#: c-api/structures.rst:286 +#: c-api/structures.rst:312 +msgid "This is not part of the :ref:`limited API `." +msgstr "" + +#: c-api/structures.rst:319 msgid "" "Extension of :const:`METH_FASTCALL | METH_KEYWORDS` supporting the *defining " "class*, that is, the class that contains the method in question. The " "defining class might be a superclass of ``Py_TYPE(self)``." msgstr "" -#: c-api/structures.rst:290 +#: c-api/structures.rst:323 msgid "" "The method needs to be of type :c:type:`PyCMethod`, the same as for " "``METH_FASTCALL | METH_KEYWORDS`` with ``defining_class`` argument added " "after ``self``." msgstr "" -#: c-api/structures.rst:299 +#: c-api/structures.rst:332 msgid "" "Methods without parameters don't need to check whether arguments are given " "if they are listed with the :const:`METH_NOARGS` flag. They need to be of " @@ -322,7 +361,7 @@ msgid "" "the second parameter will be ``NULL``." msgstr "" -#: c-api/structures.rst:308 +#: c-api/structures.rst:341 msgid "" "Methods with a single object argument can be listed with the :const:`METH_O` " "flag, instead of invoking :c:func:`PyArg_ParseTuple` with a ``\"O\"`` " @@ -331,7 +370,7 @@ msgid "" "argument." msgstr "" -#: c-api/structures.rst:314 +#: c-api/structures.rst:347 msgid "" "These two constants are not used to indicate the calling convention but the " "binding when use with methods of classes. These may not be used for " @@ -339,27 +378,27 @@ msgid "" "any given method." msgstr "" -#: c-api/structures.rst:324 +#: c-api/structures.rst:357 msgid "" "The method will be passed the type object as the first parameter rather than " "an instance of the type. This is used to create *class methods*, similar to " "what is created when using the :func:`classmethod` built-in function." msgstr "" -#: c-api/structures.rst:334 +#: c-api/structures.rst:367 msgid "" "The method will be passed ``NULL`` as the first parameter rather than an " "instance of the type. This is used to create *static methods*, similar to " "what is created when using the :func:`staticmethod` built-in function." msgstr "" -#: c-api/structures.rst:338 +#: c-api/structures.rst:371 msgid "" "One other constant controls whether a method is loaded in place of another " "definition with the same method name." msgstr "" -#: c-api/structures.rst:344 +#: c-api/structures.rst:377 msgid "" "The method will be loaded in place of existing definitions. Without " "*METH_COEXIST*, the default is to skip repeated definitions. Since slot " @@ -372,193 +411,193 @@ msgid "" "calls." msgstr "" -#: c-api/structures.rst:356 +#: c-api/structures.rst:389 msgid "Accessing attributes of extension types" msgstr "" -#: c-api/structures.rst:360 +#: c-api/structures.rst:393 msgid "" "Structure which describes an attribute of a type which corresponds to a C " "struct member. Its fields are:" msgstr "" -#: c-api/structures.rst:366 +#: c-api/structures.rst:399 msgid ":attr:`name`" msgstr "" -#: c-api/structures.rst:366 +#: c-api/structures.rst:399 msgid "name of the member" msgstr "" -#: c-api/structures.rst:368 +#: c-api/structures.rst:401 msgid ":attr:`!type`" msgstr "" -#: c-api/structures.rst:368 +#: c-api/structures.rst:401 msgid "the type of the member in the C struct" msgstr "" -#: c-api/structures.rst:371 +#: c-api/structures.rst:404 msgid ":attr:`offset`" msgstr "" -#: c-api/structures.rst:407 +#: c-api/structures.rst:440 msgid "Py_ssize_t" msgstr "" -#: c-api/structures.rst:371 +#: c-api/structures.rst:404 msgid "" "the offset in bytes that the member is located on the type's object struct" msgstr "" -#: c-api/structures.rst:375 +#: c-api/structures.rst:408 msgid ":attr:`flags`" msgstr "" -#: c-api/structures.rst:375 +#: c-api/structures.rst:408 msgid "flag bits indicating if the field should be read-only or writable" msgstr "" -#: c-api/structures.rst:379 +#: c-api/structures.rst:412 msgid ":attr:`doc`" msgstr "" -#: c-api/structures.rst:383 +#: c-api/structures.rst:416 msgid "" ":attr:`!type` can be one of many ``T_`` macros corresponding to various C " "types. When the member is accessed in Python, it will be converted to the " "equivalent Python type." msgstr "" -#: c-api/structures.rst:388 +#: c-api/structures.rst:421 msgid "Macro name" msgstr "" -#: c-api/structures.rst:388 +#: c-api/structures.rst:421 msgid "C type" msgstr "Type C" -#: c-api/structures.rst:390 +#: c-api/structures.rst:423 msgid "T_SHORT" msgstr "" -#: c-api/structures.rst:390 +#: c-api/structures.rst:423 msgid "short" msgstr "" -#: c-api/structures.rst:391 +#: c-api/structures.rst:424 msgid "T_INT" msgstr "" -#: c-api/structures.rst:392 +#: c-api/structures.rst:425 msgid "T_LONG" msgstr "" -#: c-api/structures.rst:392 +#: c-api/structures.rst:425 msgid "long" msgstr "" -#: c-api/structures.rst:393 +#: c-api/structures.rst:426 msgid "T_FLOAT" msgstr "" -#: c-api/structures.rst:393 +#: c-api/structures.rst:426 msgid "float" msgstr "*float*" -#: c-api/structures.rst:394 +#: c-api/structures.rst:427 msgid "T_DOUBLE" msgstr "" -#: c-api/structures.rst:394 +#: c-api/structures.rst:427 msgid "double" msgstr "double" -#: c-api/structures.rst:395 +#: c-api/structures.rst:428 msgid "T_STRING" msgstr "" -#: c-api/structures.rst:396 +#: c-api/structures.rst:429 msgid "T_OBJECT" msgstr "" -#: c-api/structures.rst:397 +#: c-api/structures.rst:430 msgid "PyObject \\*" msgstr "PyObject \\*" -#: c-api/structures.rst:397 +#: c-api/structures.rst:430 msgid "T_OBJECT_EX" msgstr "" -#: c-api/structures.rst:398 +#: c-api/structures.rst:431 msgid "T_CHAR" msgstr "" -#: c-api/structures.rst:399 c-api/structures.rst:404 +#: c-api/structures.rst:432 c-api/structures.rst:437 msgid "char" msgstr "char" -#: c-api/structures.rst:399 +#: c-api/structures.rst:432 msgid "T_BYTE" msgstr "" -#: c-api/structures.rst:400 +#: c-api/structures.rst:433 msgid "T_UBYTE" msgstr "" -#: c-api/structures.rst:400 +#: c-api/structures.rst:433 msgid "unsigned char" msgstr "``unsigned char``" -#: c-api/structures.rst:401 +#: c-api/structures.rst:434 msgid "T_UINT" msgstr "" -#: c-api/structures.rst:401 +#: c-api/structures.rst:434 msgid "unsigned int" msgstr "``unsigned int``" -#: c-api/structures.rst:402 +#: c-api/structures.rst:435 msgid "T_USHORT" msgstr "" -#: c-api/structures.rst:402 +#: c-api/structures.rst:435 msgid "unsigned short" msgstr "``unsigned short``" -#: c-api/structures.rst:403 +#: c-api/structures.rst:436 msgid "T_ULONG" msgstr "" -#: c-api/structures.rst:403 +#: c-api/structures.rst:436 msgid "unsigned long" msgstr "``unsigned long``" -#: c-api/structures.rst:404 +#: c-api/structures.rst:437 msgid "T_BOOL" msgstr "" -#: c-api/structures.rst:405 +#: c-api/structures.rst:438 msgid "T_LONGLONG" msgstr "" -#: c-api/structures.rst:405 +#: c-api/structures.rst:438 msgid "long long" msgstr "" -#: c-api/structures.rst:406 +#: c-api/structures.rst:439 msgid "T_ULONGLONG" msgstr "" -#: c-api/structures.rst:406 +#: c-api/structures.rst:439 msgid "unsigned long long" msgstr "``unsigned long long``" -#: c-api/structures.rst:407 +#: c-api/structures.rst:440 msgid "T_PYSSIZET" msgstr "" -#: c-api/structures.rst:410 +#: c-api/structures.rst:443 msgid "" ":c:macro:`T_OBJECT` and :c:macro:`T_OBJECT_EX` differ in that :c:macro:" "`T_OBJECT` returns ``None`` if the member is ``NULL`` and :c:macro:" @@ -568,7 +607,7 @@ msgid "" "than :c:macro:`T_OBJECT`." msgstr "" -#: c-api/structures.rst:417 +#: c-api/structures.rst:450 msgid "" ":attr:`flags` can be ``0`` for write and read access or :c:macro:`READONLY` " "for read-only access. Using :c:macro:`T_STRING` for :attr:`type` implies :c:" @@ -577,7 +616,7 @@ msgid "" "are set to ``NULL``)." msgstr "" -#: c-api/structures.rst:425 +#: c-api/structures.rst:458 msgid "" "Heap allocated types (created using :c:func:`PyType_FromSpec` or similar), " "``PyMemberDef`` may contain definitions for the special members " @@ -588,86 +627,99 @@ msgid "" "``T_PYSSIZET`` and ``READONLY``, for example::" msgstr "" -#: c-api/structures.rst:441 +#: c-api/structures.rst:475 +msgid "" +"Get an attribute belonging to the object at address *obj_addr*. The " +"attribute is described by ``PyMemberDef`` *m*. Returns ``NULL`` on error." +msgstr "" + +#: c-api/structures.rst:482 +msgid "" +"Set an attribute belonging to the object at address *obj_addr* to object " +"*o*. The attribute to set is described by ``PyMemberDef`` *m*. Returns " +"``0`` if successful and a negative value on failure." +msgstr "" + +#: c-api/structures.rst:489 msgid "" "Structure to define property-like access for a type. See also description of " "the :c:member:`PyTypeObject.tp_getset` slot." msgstr "" -#: c-api/structures.rst:447 +#: c-api/structures.rst:495 msgid "name" msgstr "" -#: c-api/structures.rst:447 +#: c-api/structures.rst:495 msgid "attribute name" msgstr "" -#: c-api/structures.rst:449 +#: c-api/structures.rst:497 msgid "get" msgstr "" -#: c-api/structures.rst:449 +#: c-api/structures.rst:497 msgid "getter" msgstr "" -#: c-api/structures.rst:449 +#: c-api/structures.rst:497 msgid "C Function to get the attribute" msgstr "" -#: c-api/structures.rst:451 +#: c-api/structures.rst:499 msgid "set" msgstr "" -#: c-api/structures.rst:451 +#: c-api/structures.rst:499 msgid "setter" msgstr "" -#: c-api/structures.rst:451 +#: c-api/structures.rst:499 msgid "" "optional C function to set or delete the attribute, if omitted the attribute " "is readonly" msgstr "" -#: c-api/structures.rst:455 +#: c-api/structures.rst:503 msgid "doc" msgstr "" -#: c-api/structures.rst:455 +#: c-api/structures.rst:503 msgid "optional docstring" msgstr "" -#: c-api/structures.rst:457 +#: c-api/structures.rst:505 msgid "closure" msgstr "" -#: c-api/structures.rst:457 +#: c-api/structures.rst:505 msgid "void \\*" msgstr "" -#: c-api/structures.rst:457 +#: c-api/structures.rst:505 msgid "" "optional function pointer, providing additional data for getter and setter" msgstr "" -#: c-api/structures.rst:462 +#: c-api/structures.rst:510 msgid "" "The ``get`` function takes one :c:type:`PyObject*` parameter (the instance) " "and a function pointer (the associated ``closure``)::" msgstr "" -#: c-api/structures.rst:467 +#: c-api/structures.rst:515 msgid "" "It should return a new reference on success or ``NULL`` with a set exception " "on failure." msgstr "" -#: c-api/structures.rst:470 +#: c-api/structures.rst:518 msgid "" "``set`` functions take two :c:type:`PyObject*` parameters (the instance and " "the value to be set) and a function pointer (the associated ``closure``)::" msgstr "" -#: c-api/structures.rst:475 +#: c-api/structures.rst:523 msgid "" "In case the attribute should be deleted the second parameter is ``NULL``. " "Should return ``0`` on success or ``-1`` with a set exception on failure." diff --git a/c-api/sys.po b/c-api/sys.po index fb2d949cd..35d52c6c2 100644 --- a/c-api/sys.po +++ b/c-api/sys.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -129,125 +129,118 @@ msgid "" "`PyOS_sighandler_t` is a typedef alias for :c:type:`void (\\*)(int)`." msgstr "" -#: c-api/sys.rst:121 +#: c-api/sys.rst:122 msgid "" -"Decode a byte string from the locale encoding with the :ref:`surrogateescape " -"error handler `: undecodable bytes are decoded as " -"characters in range U+DC80..U+DCFF. If a byte sequence can be decoded as a " -"surrogate character, escape the bytes using the surrogateescape error " -"handler instead of decoding them." +"This function should not be called directly: use the :c:type:`PyConfig` API " +"with the :c:func:`PyConfig_SetBytesString` function which ensures that :ref:" +"`Python is preinitialized `." msgstr "" -#: c-api/sys.rst:173 -msgid "Encoding, highest priority to lowest priority:" -msgstr "" - -#: c-api/sys.rst:175 -msgid "``UTF-8`` on macOS, Android, and VxWorks;" -msgstr "" - -#: c-api/sys.rst:176 +#: c-api/sys.rst:193 msgid "" -"``UTF-8`` on Windows if :c:data:`Py_LegacyWindowsFSEncodingFlag` is zero;" -msgstr "" - -#: c-api/sys.rst:177 -msgid "``UTF-8`` if the Python UTF-8 mode is enabled;" +"This function must not be called before :ref:`Python is preinitialized ` and so that the LC_CTYPE locale is properly configured: see the :c:" +"func:`Py_PreInitialize` function." msgstr "" -#: c-api/sys.rst:178 +#: c-api/sys.rst:130 msgid "" -"``ASCII`` if the ``LC_CTYPE`` locale is ``\"C\"``, ``nl_langinfo(CODESET)`` " -"returns the ``ASCII`` encoding (or an alias), and :c:func:`mbstowcs` and :c:" -"func:`wcstombs` functions uses the ``ISO-8859-1`` encoding." -msgstr "" - -#: c-api/sys.rst:182 -msgid "the current locale encoding." +"Decode a byte string from the :term:`filesystem encoding and error handler`. " +"If the error handler is :ref:`surrogateescape error handler " +"`, undecodable bytes are decoded as characters in range U" +"+DC80..U+DCFF; and if a byte sequence can be decoded as a surrogate " +"character, the bytes are escaped using the surrogateescape error handler " +"instead of decoding them." msgstr "" -#: c-api/sys.rst:138 +#: c-api/sys.rst:137 msgid "" "Return a pointer to a newly allocated wide character string, use :c:func:" "`PyMem_RawFree` to free the memory. If size is not ``NULL``, write the " "number of wide characters excluding the null character into ``*size``" msgstr "" -#: c-api/sys.rst:142 +#: c-api/sys.rst:141 msgid "" "Return ``NULL`` on decoding error or memory allocation error. If *size* is " "not ``NULL``, ``*size`` is set to ``(size_t)-1`` on memory error or set to " "``(size_t)-2`` on decoding error." msgstr "" -#: c-api/sys.rst:146 +#: c-api/sys.rst:185 msgid "" -"Decoding errors should never happen, unless there is a bug in the C library." +"The :term:`filesystem encoding and error handler` are selected by :c:func:" +"`PyConfig_Read`: see :c:member:`~PyConfig.filesystem_encoding` and :c:member:" +"`~PyConfig.filesystem_errors` members of :c:type:`PyConfig`." msgstr "" #: c-api/sys.rst:149 msgid "" +"Decoding errors should never happen, unless there is a bug in the C library." +msgstr "" + +#: c-api/sys.rst:152 +msgid "" "Use the :c:func:`Py_EncodeLocale` function to encode the character string " "back to a byte string." msgstr "" -#: c-api/sys.rst:154 +#: c-api/sys.rst:157 msgid "" "The :c:func:`PyUnicode_DecodeFSDefaultAndSize` and :c:func:" "`PyUnicode_DecodeLocaleAndSize` functions." msgstr "" -#: c-api/sys.rst:203 -msgid "The function now uses the UTF-8 encoding in the UTF-8 mode." +#: c-api/sys.rst:204 +msgid "" +"The function now uses the UTF-8 encoding in the :ref:`Python UTF-8 Mode " +"`." msgstr "" -#: c-api/sys.rst:206 +#: c-api/sys.rst:208 msgid "" "The function now uses the UTF-8 encoding on Windows if :c:data:" "`Py_LegacyWindowsFSEncodingFlag` is zero;" msgstr "" -#: c-api/sys.rst:169 +#: c-api/sys.rst:173 msgid "" -"Encode a wide character string to the locale encoding with the :ref:" -"`surrogateescape error handler `: surrogate characters in " -"the range U+DC80..U+DCFF are converted to bytes 0x80..0xFF." +"Encode a wide character string to the :term:`filesystem encoding and error " +"handler`. If the error handler is :ref:`surrogateescape error handler " +"`, surrogate characters in the range U+DC80..U+DCFF are " +"converted to bytes 0x80..0xFF." msgstr "" -#: c-api/sys.rst:184 -msgid "The function uses the UTF-8 encoding in the Python UTF-8 mode." -msgstr "" - -#: c-api/sys.rst:186 +#: c-api/sys.rst:178 msgid "" "Return a pointer to a newly allocated byte string, use :c:func:`PyMem_Free` " "to free the memory. Return ``NULL`` on encoding error or memory allocation " "error" msgstr "" -#: c-api/sys.rst:190 +#: c-api/sys.rst:182 msgid "" "If error_pos is not ``NULL``, ``*error_pos`` is set to ``(size_t)-1`` on " "success, or set to the index of the invalid character on encoding error." msgstr "" -#: c-api/sys.rst:193 +#: c-api/sys.rst:189 msgid "" "Use the :c:func:`Py_DecodeLocale` function to decode the bytes string back " "to a wide character string." msgstr "" -#: c-api/sys.rst:198 +#: c-api/sys.rst:199 msgid "" "The :c:func:`PyUnicode_EncodeFSDefault` and :c:func:`PyUnicode_EncodeLocale` " "functions." msgstr "" -#: c-api/sys.rst:214 +#: c-api/sys.rst:216 msgid "System Functions" msgstr "" -#: c-api/sys.rst:216 +#: c-api/sys.rst:218 msgid "" "These are utility functions that make functionality from the :mod:`sys` " "module accessible to C code. They all work with the current interpreter " @@ -255,36 +248,36 @@ msgid "" "state structure." msgstr "" -#: c-api/sys.rst:222 +#: c-api/sys.rst:224 msgid "" "Return the object *name* from the :mod:`sys` module or ``NULL`` if it does " "not exist, without setting an exception." msgstr "" -#: c-api/sys.rst:227 +#: c-api/sys.rst:229 msgid "" "Set *name* in the :mod:`sys` module to *v* unless *v* is ``NULL``, in which " "case *name* is deleted from the sys module. Returns ``0`` on success, ``-1`` " "on error." msgstr "" -#: c-api/sys.rst:233 +#: c-api/sys.rst:235 msgid "" "Reset :data:`sys.warnoptions` to an empty list. This function may be called " "prior to :c:func:`Py_Initialize`." msgstr "" -#: c-api/sys.rst:238 +#: c-api/sys.rst:240 msgid "" "Append *s* to :data:`sys.warnoptions`. This function must be called prior " "to :c:func:`Py_Initialize` in order to affect the warnings filter list." msgstr "" -#: c-api/sys.rst:243 +#: c-api/sys.rst:245 msgid "Append *unicode* to :data:`sys.warnoptions`." msgstr "" -#: c-api/sys.rst:245 +#: c-api/sys.rst:247 msgid "" "Note: this function is not currently usable from outside the CPython " "implementation, as it must be called prior to the implicit import of :mod:" @@ -293,20 +286,20 @@ msgid "" "Unicode objects." msgstr "" -#: c-api/sys.rst:253 +#: c-api/sys.rst:255 msgid "" "Set :data:`sys.path` to a list object of paths found in *path* which should " "be a list of paths separated with the platform's search path delimiter (``:" "`` on Unix, ``;`` on Windows)." msgstr "" -#: c-api/sys.rst:259 +#: c-api/sys.rst:261 msgid "" "Write the output string described by *format* to :data:`sys.stdout`. No " "exceptions are raised, even if truncation occurs (see below)." msgstr "" -#: c-api/sys.rst:262 +#: c-api/sys.rst:264 msgid "" "*format* should limit the total size of the formatted output string to 1000 " "bytes or less -- after 1000 bytes, the output string is truncated. In " @@ -317,51 +310,51 @@ msgid "" "of digits for very large numbers." msgstr "" -#: c-api/sys.rst:270 +#: c-api/sys.rst:272 msgid "" "If a problem occurs, or :data:`sys.stdout` is unset, the formatted message " "is written to the real (C level) *stdout*." msgstr "" -#: c-api/sys.rst:275 +#: c-api/sys.rst:277 msgid "" "As :c:func:`PySys_WriteStdout`, but write to :data:`sys.stderr` or *stderr* " "instead." msgstr "" -#: c-api/sys.rst:280 +#: c-api/sys.rst:282 msgid "" "Function similar to PySys_WriteStdout() but format the message using :c:func:" "`PyUnicode_FromFormatV` and don't truncate the message to an arbitrary " "length." msgstr "" -#: c-api/sys.rst:288 +#: c-api/sys.rst:290 msgid "" "As :c:func:`PySys_FormatStdout`, but write to :data:`sys.stderr` or *stderr* " "instead." msgstr "" -#: c-api/sys.rst:295 +#: c-api/sys.rst:297 msgid "" "Parse *s* as a set of :option:`-X` options and add them to the current " "options mapping as returned by :c:func:`PySys_GetXOptions`. This function " "may be called prior to :c:func:`Py_Initialize`." msgstr "" -#: c-api/sys.rst:303 +#: c-api/sys.rst:305 msgid "" "Return the current dictionary of :option:`-X` options, similarly to :data:" "`sys._xoptions`. On error, ``NULL`` is returned and an exception is set." msgstr "" -#: c-api/sys.rst:312 +#: c-api/sys.rst:314 msgid "" "Raise an auditing event with any active hooks. Return zero for success and " "non-zero with an exception set on failure." msgstr "" -#: c-api/sys.rst:315 +#: c-api/sys.rst:317 msgid "" "If any hooks have been added, *format* and other arguments will be used to " "construct a tuple to pass. Apart from ``N``, the same format characters as " @@ -372,23 +365,23 @@ msgid "" "leaks.)" msgstr "" -#: c-api/sys.rst:323 +#: c-api/sys.rst:325 msgid "" "Note that ``#`` format characters should always be treated as " "``Py_ssize_t``, regardless of whether ``PY_SSIZE_T_CLEAN`` was defined." msgstr "" -#: c-api/sys.rst:326 +#: c-api/sys.rst:328 msgid ":func:`sys.audit` performs the same function from Python code." msgstr "" -#: c-api/sys.rst:332 +#: c-api/sys.rst:334 msgid "" "Require ``Py_ssize_t`` for ``#`` format characters. Previously, an " "unavoidable deprecation warning was raised." msgstr "" -#: c-api/sys.rst:338 +#: c-api/sys.rst:340 msgid "" "Append the callable *hook* to the list of active auditing hooks. Return zero " "for success and non-zero on failure. If the runtime has been initialized, " @@ -396,14 +389,14 @@ msgid "" "all interpreters created by the runtime." msgstr "" -#: c-api/sys.rst:344 +#: c-api/sys.rst:346 msgid "" "The *userData* pointer is passed into the hook function. Since hook " "functions may be called from different runtimes, this pointer should not " "refer directly to Python state." msgstr "" -#: c-api/sys.rst:348 +#: c-api/sys.rst:350 msgid "" "This function is safe to call before :c:func:`Py_Initialize`. When called " "after runtime initialization, existing audit hooks are notified and may " @@ -411,7 +404,7 @@ msgid "" "`Exception` (other errors will not be silenced)." msgstr "" -#: c-api/sys.rst:353 +#: c-api/sys.rst:355 msgid "" "The hook function is of type :c:type:`int (*)(const char *event, PyObject " "*args, void *userData)`, where *args* is guaranteed to be a :c:type:" @@ -419,14 +412,14 @@ msgid "" "Python interpreter that raised the event." msgstr "" -#: c-api/sys.rst:358 +#: c-api/sys.rst:360 msgid "" "See :pep:`578` for a detailed description of auditing. Functions in the " "runtime and standard library that raise events are listed in the :ref:`audit " "events table `. Details are in each function's documentation." msgstr "" -#: c-api/sys.rst:363 +#: c-api/sys.rst:365 msgid "" "Raises an :ref:`auditing event ` ``sys.addaudithook`` with no " "arguments." @@ -434,7 +427,7 @@ msgstr "" "Déclenche un :ref:`événement d'audit ` ``sys.addaudithook`` sans " "arguments." -#: c-api/sys.rst:365 +#: c-api/sys.rst:367 msgid "" "If the interpreter is initialized, this function raises a auditing event " "``sys.addaudithook`` with no arguments. If any existing hooks raise an " @@ -443,11 +436,11 @@ msgid "" "hook has been added unless they control all existing hooks." msgstr "" -#: c-api/sys.rst:377 +#: c-api/sys.rst:379 msgid "Process Control" msgstr "" -#: c-api/sys.rst:384 +#: c-api/sys.rst:386 msgid "" "Print a fatal error message and kill the process. No cleanup is performed. " "This function should only be invoked when a condition is detected that would " @@ -457,29 +450,29 @@ msgid "" "file:`core` file." msgstr "" -#: c-api/sys.rst:391 +#: c-api/sys.rst:393 msgid "" "The ``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." msgstr "" -#: c-api/sys.rst:395 +#: c-api/sys.rst:397 msgid "Log the function name automatically." msgstr "" -#: c-api/sys.rst:405 +#: c-api/sys.rst:407 msgid "" "Exit the current process. This calls :c:func:`Py_FinalizeEx` and then calls " "the standard C library function ``exit(status)``. If :c:func:" "`Py_FinalizeEx` indicates an error, the exit status is set to 120." msgstr "" -#: c-api/sys.rst:409 +#: c-api/sys.rst:411 msgid "Errors from finalization no longer ignored." msgstr "" -#: c-api/sys.rst:419 +#: c-api/sys.rst:421 msgid "" "Register a cleanup function to be called by :c:func:`Py_FinalizeEx`. The " "cleanup function will be called with no arguments and should return no " diff --git a/c-api/tuple.po b/c-api/tuple.po index 270d4a077..59c89730a 100644 --- a/c-api/tuple.po +++ b/c-api/tuple.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -70,8 +70,8 @@ msgstr "" #: c-api/tuple.rst:59 msgid "" "Return the object at position *pos* in the tuple pointed to by *p*. If " -"*pos* is out of bounds, return ``NULL`` and set an :exc:`IndexError` " -"exception." +"*pos* is negative or out of bounds, return ``NULL`` and set an :exc:" +"`IndexError` exception." msgstr "" #: c-api/tuple.rst:65 diff --git a/c-api/type.po b/c-api/type.po index 171ab67bf..d19afb619 100644 --- a/c-api/type.po +++ b/c-api/type.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-02-15 00:33+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -133,23 +133,25 @@ msgid "" "See :c:member:`PyType_Slot.slot` for possible values of the *slot* argument." msgstr "" -#: c-api/type.rst:119 -msgid "An exception is raised if *type* is not a heap type." +#: c-api/type.rst:121 +msgid "" +":c:func:`PyType_GetSlot` can now accept all types. Previously, it was " +"limited to :ref:`heap types `." msgstr "" -#: c-api/type.rst:125 +#: c-api/type.rst:127 msgid "" "Return the module object associated with the given type when the type was " "created using :c:func:`PyType_FromModuleAndSpec`." msgstr "" -#: c-api/type.rst:146 +#: c-api/type.rst:148 msgid "" "If no module is associated with the given type, sets :py:class:`TypeError` " "and returns ``NULL``." msgstr "" -#: c-api/type.rst:131 +#: c-api/type.rst:133 msgid "" "This function is usually used to get the module in which a method is " "defined. Note that in such a method, ``PyType_GetModule(Py_TYPE(self))`` may " @@ -159,110 +161,112 @@ msgid "" "defines the method." msgstr "" -#: c-api/type.rst:142 +#: c-api/type.rst:144 msgid "" "Return the state of the module object associated with the given type. This " "is a shortcut for calling :c:func:`PyModule_GetState()` on the result of :c:" "func:`PyType_GetModule`." msgstr "" -#: c-api/type.rst:149 +#: c-api/type.rst:151 msgid "" "If the *type* has an associated module but its state is ``NULL``, returns " "``NULL`` without setting an exception." msgstr "" -#: c-api/type.rst:156 +#: c-api/type.rst:158 msgid "Creating Heap-Allocated Types" msgstr "" -#: c-api/type.rst:158 +#: c-api/type.rst:160 msgid "" "The following functions and structs are used to create :ref:`heap types " "`." msgstr "" -#: c-api/type.rst:163 +#: c-api/type.rst:165 msgid "" -"Creates and returns a heap type object from the *spec* (:const:" +"Creates and returns a :ref:`heap type ` from the *spec* (:const:" "`Py_TPFLAGS_HEAPTYPE`)." msgstr "" -#: c-api/type.rst:166 -msgid "" -"If *bases* is a tuple, the created heap type contains all types contained in " -"it as base types." -msgstr "" - -#: c-api/type.rst:169 +#: c-api/type.rst:168 msgid "" -"If *bases* is ``NULL``, the *Py_tp_bases* slot is used instead. If that also " -"is ``NULL``, the *Py_tp_base* slot is used instead. If that also is " -"``NULL``, the new type derives from :class:`object`." +"The *bases* argument can be used to specify base classes; it can either be " +"only one class or a tuple of classes. If *bases* is ``NULL``, the " +"*Py_tp_bases* slot is used instead. If that also is ``NULL``, the " +"*Py_tp_base* slot is used instead. If that also is ``NULL``, the new type " +"derives from :class:`object`." msgstr "" -#: c-api/type.rst:173 +#: c-api/type.rst:174 msgid "" "The *module* argument can be used to record the module in which the new " "class is defined. It must be a module object or ``NULL``. If not ``NULL``, " -"the module is associated with the new type and can later be retreived with :" +"the module is associated with the new type and can later be retrieved with :" "c:func:`PyType_GetModule`. The associated module is not inherited by " "subclasses; it must be specified for each class individually." msgstr "" -#: c-api/type.rst:180 +#: c-api/type.rst:181 msgid "This function calls :c:func:`PyType_Ready` on the new type." msgstr "" -#: c-api/type.rst:186 -msgid "Equivalent to ``PyType_FromModuleAndSpec(NULL, spec, bases)``." +#: c-api/type.rst:187 +msgid "" +"The function now accepts a single class as the *bases* argument and ``NULL`` " +"as the ``tp_doc`` slot." msgstr "" #: c-api/type.rst:192 +msgid "Equivalent to ``PyType_FromModuleAndSpec(NULL, spec, bases)``." +msgstr "" + +#: c-api/type.rst:198 msgid "Equivalent to ``PyType_FromSpecWithBases(spec, NULL)``." msgstr "" -#: c-api/type.rst:196 +#: c-api/type.rst:202 msgid "Structure defining a type's behavior." msgstr "" -#: c-api/type.rst:200 +#: c-api/type.rst:206 msgid "Name of the type, used to set :c:member:`PyTypeObject.tp_name`." msgstr "" -#: c-api/type.rst:205 +#: c-api/type.rst:211 msgid "" "Size of the instance in bytes, used to set :c:member:`PyTypeObject." "tp_basicsize` and :c:member:`PyTypeObject.tp_itemsize`." msgstr "" -#: c-api/type.rst:211 +#: c-api/type.rst:217 msgid "Type flags, used to set :c:member:`PyTypeObject.tp_flags`." msgstr "" -#: c-api/type.rst:213 +#: c-api/type.rst:219 msgid "" "If the ``Py_TPFLAGS_HEAPTYPE`` flag is not set, :c:func:" "`PyType_FromSpecWithBases` sets it automatically." msgstr "" -#: c-api/type.rst:218 +#: c-api/type.rst:224 msgid "" "Array of :c:type:`PyType_Slot` structures. Terminated by the special slot " "value ``{0, NULL}``." msgstr "" -#: c-api/type.rst:223 +#: c-api/type.rst:229 msgid "" "Structure defining optional functionality of a type, containing a slot ID " "and a value pointer." msgstr "" -#: c-api/type.rst:228 +#: c-api/type.rst:234 msgid "A slot ID." msgstr "" -#: c-api/type.rst:230 +#: c-api/type.rst:236 msgid "" "Slot IDs are named like the field names of the structures :c:type:" "`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:" @@ -270,97 +274,97 @@ msgid "" "prefix. For example, use:" msgstr "" -#: c-api/type.rst:236 +#: c-api/type.rst:242 msgid "``Py_tp_dealloc`` to set :c:member:`PyTypeObject.tp_dealloc`" msgstr "" -#: c-api/type.rst:237 +#: c-api/type.rst:243 msgid "``Py_nb_add`` to set :c:member:`PyNumberMethods.nb_add`" msgstr "" -#: c-api/type.rst:238 +#: c-api/type.rst:244 msgid "``Py_sq_length`` to set :c:member:`PySequenceMethods.sq_length`" msgstr "" -#: c-api/type.rst:240 +#: c-api/type.rst:246 msgid "" "The following fields cannot be set at all using :c:type:`PyType_Spec` and :c:" "type:`PyType_Slot`:" msgstr "" -#: c-api/type.rst:243 +#: c-api/type.rst:249 msgid ":c:member:`~PyTypeObject.tp_dict`" msgstr "" -#: c-api/type.rst:244 +#: c-api/type.rst:250 msgid ":c:member:`~PyTypeObject.tp_mro`" msgstr "" -#: c-api/type.rst:245 +#: c-api/type.rst:251 msgid ":c:member:`~PyTypeObject.tp_cache`" msgstr "" -#: c-api/type.rst:246 +#: c-api/type.rst:252 msgid ":c:member:`~PyTypeObject.tp_subclasses`" msgstr "" -#: c-api/type.rst:247 +#: c-api/type.rst:253 msgid ":c:member:`~PyTypeObject.tp_weaklist`" msgstr "" -#: c-api/type.rst:248 +#: c-api/type.rst:254 msgid ":c:member:`~PyTypeObject.tp_vectorcall`" msgstr "" -#: c-api/type.rst:249 +#: c-api/type.rst:255 msgid "" ":c:member:`~PyTypeObject.tp_weaklistoffset` (see :ref:`PyMemberDef " "`)" msgstr "" -#: c-api/type.rst:251 +#: c-api/type.rst:257 msgid "" ":c:member:`~PyTypeObject.tp_dictoffset` (see :ref:`PyMemberDef `)" msgstr "" -#: c-api/type.rst:253 +#: c-api/type.rst:259 msgid "" ":c:member:`~PyTypeObject.tp_vectorcall_offset` (see :ref:`PyMemberDef " "`)" msgstr "" -#: c-api/type.rst:256 +#: c-api/type.rst:262 msgid "" "The following fields cannot be set using :c:type:`PyType_Spec` and :c:type:" "`PyType_Slot` under the limited API:" msgstr "" -#: c-api/type.rst:259 +#: c-api/type.rst:265 msgid ":c:member:`~PyBufferProcs.bf_getbuffer`" msgstr "" -#: c-api/type.rst:260 +#: c-api/type.rst:266 msgid ":c:member:`~PyBufferProcs.bf_releasebuffer`" msgstr "" -#: c-api/type.rst:262 +#: c-api/type.rst:268 msgid "" "Setting :c:data:`Py_tp_bases` or :c:data:`Py_tp_base` may be problematic on " "some platforms. To avoid issues, use the *bases* argument of :py:func:" "`PyType_FromSpecWithBases` instead." msgstr "" -#: c-api/type.rst:269 +#: c-api/type.rst:275 msgid "Slots in :c:type:`PyBufferProcs` in may be set in the unlimited API." msgstr "" -#: c-api/type.rst:273 +#: c-api/type.rst:279 msgid "" "The desired value of the slot. In most cases, this is a pointer to a " "function." msgstr "" -#: c-api/type.rst:276 -msgid "May not be ``NULL``." +#: c-api/type.rst:282 +msgid "Slots other than ``Py_tp_doc`` may not be ``NULL``." msgstr "" diff --git a/c-api/typehints.po b/c-api/typehints.po new file mode 100644 index 000000000..10b81e028 --- /dev/null +++ b/c-api/typehints.po @@ -0,0 +1,55 @@ +# Copyright (C) 2001-2018, Python Software Foundation +# For licence information, see README file. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: FRENCH \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: c-api/typehints.rst:6 +msgid "Objects for Type Hinting" +msgstr "" + +#: c-api/typehints.rst:8 +msgid "" +"Various built-in types for type hinting are provided. Currently, two types " +"exist -- :ref:`GenericAlias ` and :ref:`Union `. Only ``GenericAlias`` is exposed to C." +msgstr "" + +#: c-api/typehints.rst:14 +msgid "" +"Create a :ref:`GenericAlias ` object. Equivalent to " +"calling the Python class :class:`types.GenericAlias`. The *origin* and " +"*args* arguments set the ``GenericAlias``\\ 's ``__origin__`` and " +"``__args__`` attributes respectively. *origin* should be a :c:type:" +"`PyTypeObject*`, and *args* can be a :c:type:`PyTupleObject*` or any " +"``PyObject*``. If *args* passed is not a tuple, a 1-tuple is automatically " +"constructed and ``__args__`` is set to ``(args,)``. Minimal checking is done " +"for the arguments, so the function will succeed even if *origin* is not a " +"type. The ``GenericAlias``\\ 's ``__parameters__`` attribute is constructed " +"lazily from ``__args__``. On failure, an exception is raised and ``NULL`` " +"is returned." +msgstr "" + +#: c-api/typehints.rst:28 +msgid "Here's an example of how to make an extension type generic::" +msgstr "" + +#: c-api/typehints.rst:38 +msgid "The data model method :meth:`__class_getitem__`." +msgstr "" + +#: c-api/typehints.rst:44 +msgid "" +"The C type of the object returned by :c:func:`Py_GenericAlias`. Equivalent " +"to :class:`types.GenericAlias` in Python." +msgstr "" diff --git a/c-api/typeobj.po b/c-api/typeobj.po index 170b5188f..05771f566 100644 --- a/c-api/typeobj.po +++ b/c-api/typeobj.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -112,7 +112,7 @@ msgid ":c:member:`~PyTypeObject.tp_basicsize`" msgstr "" #: c-api/typeobj.rst:48 c-api/typeobj.rst:99 c-api/typeobj.rst:0 -#: c-api/typeobj.rst:406 +#: c-api/typeobj.rst:408 msgid "Py_ssize_t" msgstr "" @@ -124,7 +124,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_dealloc`" msgstr "" -#: c-api/typeobj.rst:142 c-api/typeobj.rst:336 +#: c-api/typeobj.rst:142 c-api/typeobj.rst:338 msgid ":c:type:`destructor`" msgstr "" @@ -136,7 +136,7 @@ msgstr "" msgid "(:c:member:`~PyTypeObject.tp_getattr`)" msgstr "" -#: c-api/typeobj.rst:360 +#: c-api/typeobj.rst:362 msgid ":c:type:`getattrfunc`" msgstr "" @@ -153,7 +153,7 @@ msgstr "" msgid "(:c:member:`~PyTypeObject.tp_setattr`)" msgstr "" -#: c-api/typeobj.rst:365 +#: c-api/typeobj.rst:367 msgid ":c:type:`setattrfunc`" msgstr "" @@ -181,7 +181,7 @@ msgstr "%" msgid ":c:member:`~PyTypeObject.tp_repr`" msgstr "" -#: c-api/typeobj.rst:74 c-api/typeobj.rst:358 +#: c-api/typeobj.rst:74 c-api/typeobj.rst:360 msgid ":c:type:`reprfunc`" msgstr "" @@ -217,7 +217,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_hash`" msgstr "" -#: c-api/typeobj.rst:394 +#: c-api/typeobj.rst:396 msgid ":c:type:`hashfunc`" msgstr "" @@ -229,7 +229,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_call`" msgstr "" -#: c-api/typeobj.rst:227 c-api/typeobj.rst:430 +#: c-api/typeobj.rst:229 c-api/typeobj.rst:432 msgid ":c:type:`ternaryfunc`" msgstr "" @@ -249,7 +249,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_getattro`" msgstr "" -#: c-api/typeobj.rst:371 +#: c-api/typeobj.rst:373 msgid ":c:type:`getattrofunc`" msgstr "" @@ -257,7 +257,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_setattro`" msgstr "" -#: c-api/typeobj.rst:376 +#: c-api/typeobj.rst:378 msgid ":c:type:`setattrofunc`" msgstr "" @@ -294,7 +294,7 @@ msgstr "__doc__" msgid ":c:member:`~PyTypeObject.tp_traverse`" msgstr "" -#: c-api/typeobj.rst:340 +#: c-api/typeobj.rst:342 msgid ":c:type:`traverseproc`" msgstr "" @@ -302,7 +302,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_clear`" msgstr "" -#: c-api/typeobj.rst:130 c-api/typeobj.rst:419 +#: c-api/typeobj.rst:130 c-api/typeobj.rst:421 msgid ":c:type:`inquiry`" msgstr "" @@ -310,7 +310,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_richcompare`" msgstr "" -#: c-api/typeobj.rst:396 +#: c-api/typeobj.rst:398 msgid ":c:type:`richcmpfunc`" msgstr "" @@ -326,7 +326,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_iter`" msgstr "" -#: c-api/typeobj.rst:402 +#: c-api/typeobj.rst:404 msgid ":c:type:`getiterfunc`" msgstr "" @@ -338,7 +338,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_iternext`" msgstr "" -#: c-api/typeobj.rst:404 +#: c-api/typeobj.rst:406 msgid ":c:type:`iternextfunc`" msgstr "" @@ -387,9 +387,9 @@ msgid ":c:member:`~PyTypeObject.tp_dict`" msgstr "" #: c-api/typeobj.rst:132 c-api/typeobj.rst:136 c-api/typeobj.rst:140 -#: c-api/typeobj.rst:0 c-api/typeobj.rst:358 c-api/typeobj.rst:371 -#: c-api/typeobj.rst:394 c-api/typeobj.rst:402 c-api/typeobj.rst:406 -#: c-api/typeobj.rst:425 c-api/typeobj.rst:436 +#: c-api/typeobj.rst:0 c-api/typeobj.rst:360 c-api/typeobj.rst:373 +#: c-api/typeobj.rst:396 c-api/typeobj.rst:404 c-api/typeobj.rst:408 +#: c-api/typeobj.rst:427 c-api/typeobj.rst:438 msgid ":c:type:`PyObject` *" msgstr "" @@ -401,7 +401,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_descr_get`" msgstr "" -#: c-api/typeobj.rst:382 +#: c-api/typeobj.rst:384 msgid ":c:type:`descrgetfunc`" msgstr "" @@ -413,7 +413,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_descr_set`" msgstr "" -#: c-api/typeobj.rst:388 +#: c-api/typeobj.rst:390 msgid ":c:type:`descrsetfunc`" msgstr "" @@ -429,7 +429,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_init`" msgstr "" -#: c-api/typeobj.rst:352 +#: c-api/typeobj.rst:354 msgid ":c:type:`initproc`" msgstr "" @@ -441,7 +441,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_alloc`" msgstr "" -#: c-api/typeobj.rst:331 +#: c-api/typeobj.rst:333 msgid ":c:type:`allocfunc`" msgstr "" @@ -449,7 +449,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_new`" msgstr "" -#: c-api/typeobj.rst:346 +#: c-api/typeobj.rst:348 msgid ":c:type:`newfunc`" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid ":c:member:`~PyTypeObject.tp_free`" msgstr "" -#: c-api/typeobj.rst:338 +#: c-api/typeobj.rst:340 msgid ":c:type:`freefunc`" msgstr "" @@ -584,8 +584,8 @@ msgstr "méthode spéciale" msgid ":c:member:`~PyAsyncMethods.am_await`" msgstr "" -#: c-api/typeobj.rst:198 c-api/typeobj.rst:232 c-api/typeobj.rst:236 -#: c-api/typeobj.rst:267 c-api/typeobj.rst:281 c-api/typeobj.rst:421 +#: c-api/typeobj.rst:198 c-api/typeobj.rst:234 c-api/typeobj.rst:238 +#: c-api/typeobj.rst:269 c-api/typeobj.rst:283 c-api/typeobj.rst:423 msgid ":c:type:`unaryfunc`" msgstr "" @@ -609,247 +609,255 @@ msgstr "" msgid "__anext__" msgstr "" -#: c-api/typeobj.rst:204 +#: c-api/typeobj.rst:202 +msgid ":c:member:`~PyAsyncMethods.am_send`" +msgstr "" + +#: c-api/typeobj.rst:202 +msgid ":c:type:`sendfunc`" +msgstr "" + +#: c-api/typeobj.rst:206 msgid ":c:member:`~PyNumberMethods.nb_add`" msgstr "" -#: c-api/typeobj.rst:207 c-api/typeobj.rst:212 c-api/typeobj.rst:217 -#: c-api/typeobj.rst:222 c-api/typeobj.rst:242 c-api/typeobj.rst:247 -#: c-api/typeobj.rst:252 c-api/typeobj.rst:257 c-api/typeobj.rst:262 -#: c-api/typeobj.rst:273 c-api/typeobj.rst:277 c-api/typeobj.rst:283 -#: c-api/typeobj.rst:292 c-api/typeobj.rst:312 c-api/typeobj.rst:425 +#: c-api/typeobj.rst:209 c-api/typeobj.rst:214 c-api/typeobj.rst:219 +#: c-api/typeobj.rst:224 c-api/typeobj.rst:244 c-api/typeobj.rst:249 +#: c-api/typeobj.rst:254 c-api/typeobj.rst:259 c-api/typeobj.rst:264 +#: c-api/typeobj.rst:275 c-api/typeobj.rst:279 c-api/typeobj.rst:285 +#: c-api/typeobj.rst:294 c-api/typeobj.rst:314 c-api/typeobj.rst:427 msgid ":c:type:`binaryfunc`" msgstr "" -#: c-api/typeobj.rst:204 +#: c-api/typeobj.rst:206 msgid "__add__ __radd__" msgstr "" -#: c-api/typeobj.rst:207 +#: c-api/typeobj.rst:209 msgid ":c:member:`~PyNumberMethods.nb_inplace_add`" msgstr "" -#: c-api/typeobj.rst:312 +#: c-api/typeobj.rst:314 msgid "__iadd__" msgstr "" -#: c-api/typeobj.rst:209 +#: c-api/typeobj.rst:211 msgid ":c:member:`~PyNumberMethods.nb_subtract`" msgstr "" -#: c-api/typeobj.rst:209 +#: c-api/typeobj.rst:211 msgid "__sub__ __rsub__" msgstr "" -#: c-api/typeobj.rst:212 +#: c-api/typeobj.rst:214 msgid ":c:member:`~PyNumberMethods.nb_inplace_subtract`" msgstr "" -#: c-api/typeobj.rst:212 -msgid "__sub__" +#: c-api/typeobj.rst:214 +msgid "__isub__" msgstr "" -#: c-api/typeobj.rst:214 +#: c-api/typeobj.rst:216 msgid ":c:member:`~PyNumberMethods.nb_multiply`" msgstr "" -#: c-api/typeobj.rst:214 +#: c-api/typeobj.rst:216 msgid "__mul__ __rmul__" msgstr "" -#: c-api/typeobj.rst:217 +#: c-api/typeobj.rst:219 msgid ":c:member:`~PyNumberMethods.nb_inplace_multiply`" msgstr "" -#: c-api/typeobj.rst:303 -msgid "__mul__" +#: c-api/typeobj.rst:316 +msgid "__imul__" msgstr "" -#: c-api/typeobj.rst:219 +#: c-api/typeobj.rst:221 msgid ":c:member:`~PyNumberMethods.nb_remainder`" msgstr "" -#: c-api/typeobj.rst:219 +#: c-api/typeobj.rst:221 msgid "__mod__ __rmod__" msgstr "" -#: c-api/typeobj.rst:222 +#: c-api/typeobj.rst:224 msgid ":c:member:`~PyNumberMethods.nb_inplace_remainder`" msgstr "" -#: c-api/typeobj.rst:222 -msgid "__mod__" +#: c-api/typeobj.rst:224 +msgid "__imod__" msgstr "" -#: c-api/typeobj.rst:224 +#: c-api/typeobj.rst:226 msgid ":c:member:`~PyNumberMethods.nb_divmod`" msgstr "" -#: c-api/typeobj.rst:224 +#: c-api/typeobj.rst:226 msgid "__divmod__ __rdivmod__" msgstr "" -#: c-api/typeobj.rst:227 +#: c-api/typeobj.rst:229 msgid ":c:member:`~PyNumberMethods.nb_power`" msgstr "" -#: c-api/typeobj.rst:227 +#: c-api/typeobj.rst:229 msgid "__pow__ __rpow__" msgstr "" -#: c-api/typeobj.rst:230 +#: c-api/typeobj.rst:232 msgid ":c:member:`~PyNumberMethods.nb_inplace_power`" msgstr "" -#: c-api/typeobj.rst:230 -msgid "__pow__" +#: c-api/typeobj.rst:232 +msgid "__ipow__" msgstr "" -#: c-api/typeobj.rst:232 +#: c-api/typeobj.rst:234 msgid ":c:member:`~PyNumberMethods.nb_negative`" msgstr "" -#: c-api/typeobj.rst:232 +#: c-api/typeobj.rst:234 msgid "__neg__" msgstr "" -#: c-api/typeobj.rst:234 +#: c-api/typeobj.rst:236 msgid ":c:member:`~PyNumberMethods.nb_positive`" msgstr "" -#: c-api/typeobj.rst:234 +#: c-api/typeobj.rst:236 msgid "__pos__" msgstr "" -#: c-api/typeobj.rst:236 +#: c-api/typeobj.rst:238 msgid ":c:member:`~PyNumberMethods.nb_absolute`" msgstr "" -#: c-api/typeobj.rst:236 +#: c-api/typeobj.rst:238 msgid "__abs__" msgstr "" -#: c-api/typeobj.rst:238 +#: c-api/typeobj.rst:240 msgid ":c:member:`~PyNumberMethods.nb_bool`" msgstr "" -#: c-api/typeobj.rst:238 +#: c-api/typeobj.rst:240 msgid "__bool__" msgstr "" -#: c-api/typeobj.rst:240 +#: c-api/typeobj.rst:242 msgid ":c:member:`~PyNumberMethods.nb_invert`" msgstr "" -#: c-api/typeobj.rst:240 +#: c-api/typeobj.rst:242 msgid "__invert__" msgstr "" -#: c-api/typeobj.rst:242 +#: c-api/typeobj.rst:244 msgid ":c:member:`~PyNumberMethods.nb_lshift`" msgstr "" -#: c-api/typeobj.rst:242 +#: c-api/typeobj.rst:244 msgid "__lshift__ __rlshift__" msgstr "" -#: c-api/typeobj.rst:245 +#: c-api/typeobj.rst:247 msgid ":c:member:`~PyNumberMethods.nb_inplace_lshift`" msgstr "" -#: c-api/typeobj.rst:245 -msgid "__lshift__" +#: c-api/typeobj.rst:247 +msgid "__ilshift__" msgstr "" -#: c-api/typeobj.rst:247 +#: c-api/typeobj.rst:249 msgid ":c:member:`~PyNumberMethods.nb_rshift`" msgstr "" -#: c-api/typeobj.rst:247 +#: c-api/typeobj.rst:249 msgid "__rshift__ __rrshift__" msgstr "" -#: c-api/typeobj.rst:250 +#: c-api/typeobj.rst:252 msgid ":c:member:`~PyNumberMethods.nb_inplace_rshift`" msgstr "" -#: c-api/typeobj.rst:250 -msgid "__rshift__" +#: c-api/typeobj.rst:252 +msgid "__irshift__" msgstr "" -#: c-api/typeobj.rst:252 +#: c-api/typeobj.rst:254 msgid ":c:member:`~PyNumberMethods.nb_and`" msgstr "" -#: c-api/typeobj.rst:252 +#: c-api/typeobj.rst:254 msgid "__and__ __rand__" msgstr "" -#: c-api/typeobj.rst:255 +#: c-api/typeobj.rst:257 msgid ":c:member:`~PyNumberMethods.nb_inplace_and`" msgstr "" -#: c-api/typeobj.rst:255 -msgid "__and__" +#: c-api/typeobj.rst:257 +msgid "__iand__" msgstr "" -#: c-api/typeobj.rst:257 +#: c-api/typeobj.rst:259 msgid ":c:member:`~PyNumberMethods.nb_xor`" msgstr "" -#: c-api/typeobj.rst:257 +#: c-api/typeobj.rst:259 msgid "__xor__ __rxor__" msgstr "" -#: c-api/typeobj.rst:260 +#: c-api/typeobj.rst:262 msgid ":c:member:`~PyNumberMethods.nb_inplace_xor`" msgstr "" -#: c-api/typeobj.rst:260 -msgid "__xor__" +#: c-api/typeobj.rst:262 +msgid "__ixor__" msgstr "" -#: c-api/typeobj.rst:262 +#: c-api/typeobj.rst:264 msgid ":c:member:`~PyNumberMethods.nb_or`" msgstr "" -#: c-api/typeobj.rst:262 +#: c-api/typeobj.rst:264 msgid "__or__ __ror__" msgstr "" -#: c-api/typeobj.rst:265 +#: c-api/typeobj.rst:267 msgid ":c:member:`~PyNumberMethods.nb_inplace_or`" msgstr "" -#: c-api/typeobj.rst:265 -msgid "__or__" +#: c-api/typeobj.rst:267 +msgid "__ior__" msgstr "" -#: c-api/typeobj.rst:267 +#: c-api/typeobj.rst:269 msgid ":c:member:`~PyNumberMethods.nb_int`" msgstr "" -#: c-api/typeobj.rst:267 +#: c-api/typeobj.rst:269 msgid "__int__" msgstr "" -#: c-api/typeobj.rst:269 +#: c-api/typeobj.rst:271 msgid ":c:member:`~PyNumberMethods.nb_reserved`" msgstr "" -#: c-api/typeobj.rst:336 c-api/typeobj.rst:0 c-api/typeobj.rst:419 +#: c-api/typeobj.rst:338 c-api/typeobj.rst:0 c-api/typeobj.rst:421 msgid "void *" msgstr "" -#: c-api/typeobj.rst:271 +#: c-api/typeobj.rst:273 msgid ":c:member:`~PyNumberMethods.nb_float`" msgstr "" -#: c-api/typeobj.rst:271 +#: c-api/typeobj.rst:273 msgid "__float__" msgstr "" -#: c-api/typeobj.rst:273 +#: c-api/typeobj.rst:275 msgid ":c:member:`~PyNumberMethods.nb_floor_divide`" msgstr "" @@ -857,11 +865,15 @@ msgstr "" msgid "__floordiv__" msgstr "" -#: c-api/typeobj.rst:275 +#: c-api/typeobj.rst:277 msgid ":c:member:`~PyNumberMethods.nb_inplace_floor_divide`" msgstr "" #: c-api/typeobj.rst:277 +msgid "__ifloordiv__" +msgstr "" + +#: c-api/typeobj.rst:279 msgid ":c:member:`~PyNumberMethods.nb_true_divide`" msgstr "" @@ -869,159 +881,163 @@ msgstr "" msgid "__truediv__" msgstr "" -#: c-api/typeobj.rst:279 +#: c-api/typeobj.rst:281 msgid ":c:member:`~PyNumberMethods.nb_inplace_true_divide`" msgstr "" #: c-api/typeobj.rst:281 +msgid "__itruediv__" +msgstr "" + +#: c-api/typeobj.rst:283 msgid ":c:member:`~PyNumberMethods.nb_index`" msgstr "" -#: c-api/typeobj.rst:281 +#: c-api/typeobj.rst:283 msgid "__index__" msgstr "" -#: c-api/typeobj.rst:283 +#: c-api/typeobj.rst:285 msgid ":c:member:`~PyNumberMethods.nb_matrix_multiply`" msgstr "" -#: c-api/typeobj.rst:283 +#: c-api/typeobj.rst:285 msgid "__matmul__ __rmatmul__" msgstr "" -#: c-api/typeobj.rst:286 +#: c-api/typeobj.rst:288 msgid ":c:member:`~PyNumberMethods.nb_inplace_matrix_multiply`" msgstr "" -#: c-api/typeobj.rst:286 -msgid "__matmul__" +#: c-api/typeobj.rst:288 +msgid "__imatmul__" msgstr "" -#: c-api/typeobj.rst:290 +#: c-api/typeobj.rst:292 msgid ":c:member:`~PyMappingMethods.mp_length`" msgstr "" -#: c-api/typeobj.rst:299 c-api/typeobj.rst:406 +#: c-api/typeobj.rst:301 c-api/typeobj.rst:408 msgid ":c:type:`lenfunc`" msgstr "" -#: c-api/typeobj.rst:299 +#: c-api/typeobj.rst:301 msgid "__len__" msgstr "" -#: c-api/typeobj.rst:292 +#: c-api/typeobj.rst:294 msgid ":c:member:`~PyMappingMethods.mp_subscript`" msgstr "" -#: c-api/typeobj.rst:305 +#: c-api/typeobj.rst:307 msgid "__getitem__" msgstr "" -#: c-api/typeobj.rst:294 +#: c-api/typeobj.rst:296 msgid ":c:member:`~PyMappingMethods.mp_ass_subscript`" msgstr "" -#: c-api/typeobj.rst:451 +#: c-api/typeobj.rst:453 msgid ":c:type:`objobjargproc`" msgstr "" -#: c-api/typeobj.rst:294 +#: c-api/typeobj.rst:296 msgid "__setitem__, __delitem__" msgstr "" -#: c-api/typeobj.rst:299 +#: c-api/typeobj.rst:301 msgid ":c:member:`~PySequenceMethods.sq_length`" msgstr "" -#: c-api/typeobj.rst:301 +#: c-api/typeobj.rst:303 msgid ":c:member:`~PySequenceMethods.sq_concat`" msgstr "" -#: c-api/typeobj.rst:301 +#: c-api/typeobj.rst:303 msgid "__add__" msgstr "" -#: c-api/typeobj.rst:303 +#: c-api/typeobj.rst:305 msgid ":c:member:`~PySequenceMethods.sq_repeat`" msgstr "" -#: c-api/typeobj.rst:305 c-api/typeobj.rst:436 +#: c-api/typeobj.rst:307 c-api/typeobj.rst:438 msgid ":c:type:`ssizeargfunc`" msgstr "" #: c-api/typeobj.rst:305 -msgid ":c:member:`~PySequenceMethods.sq_item`" +msgid "__mul__" msgstr "" #: c-api/typeobj.rst:307 +msgid ":c:member:`~PySequenceMethods.sq_item`" +msgstr "" + +#: c-api/typeobj.rst:309 msgid ":c:member:`~PySequenceMethods.sq_ass_item`" msgstr "" -#: c-api/typeobj.rst:441 +#: c-api/typeobj.rst:443 msgid ":c:type:`ssizeobjargproc`" msgstr "" -#: c-api/typeobj.rst:307 +#: c-api/typeobj.rst:309 msgid "__setitem__ __delitem__" msgstr "" -#: c-api/typeobj.rst:310 +#: c-api/typeobj.rst:312 msgid ":c:member:`~PySequenceMethods.sq_contains`" msgstr "" -#: c-api/typeobj.rst:446 +#: c-api/typeobj.rst:448 msgid ":c:type:`objobjproc`" msgstr "" -#: c-api/typeobj.rst:310 +#: c-api/typeobj.rst:312 msgid "__contains__" msgstr "" -#: c-api/typeobj.rst:312 +#: c-api/typeobj.rst:314 msgid ":c:member:`~PySequenceMethods.sq_inplace_concat`" msgstr "" -#: c-api/typeobj.rst:314 +#: c-api/typeobj.rst:316 msgid ":c:member:`~PySequenceMethods.sq_inplace_repeat`" msgstr "" -#: c-api/typeobj.rst:314 -msgid "__imul__" -msgstr "" - -#: c-api/typeobj.rst:318 +#: c-api/typeobj.rst:320 msgid ":c:member:`~PyBufferProcs.bf_getbuffer`" msgstr "" -#: c-api/typeobj.rst:318 +#: c-api/typeobj.rst:320 msgid ":c:func:`getbufferproc`" msgstr "" -#: c-api/typeobj.rst:320 +#: c-api/typeobj.rst:322 msgid ":c:member:`~PyBufferProcs.bf_releasebuffer`" msgstr "" -#: c-api/typeobj.rst:320 +#: c-api/typeobj.rst:322 msgid ":c:func:`releasebufferproc`" msgstr "" -#: c-api/typeobj.rst:326 +#: c-api/typeobj.rst:328 msgid "slot typedefs" msgstr "" -#: c-api/typeobj.rst:329 +#: c-api/typeobj.rst:331 msgid "typedef" msgstr "" -#: c-api/typeobj.rst:329 +#: c-api/typeobj.rst:331 msgid "Parameter Types" msgstr "" -#: c-api/typeobj.rst:329 +#: c-api/typeobj.rst:331 msgid "Return Type" msgstr "" -#: c-api/typeobj.rst:338 c-api/typeobj.rst:414 +#: c-api/typeobj.rst:340 c-api/typeobj.rst:416 msgid "void" msgstr "" @@ -1029,16 +1045,16 @@ msgstr "" msgid ":c:type:`visitproc`" msgstr "" -#: c-api/typeobj.rst:352 c-api/typeobj.rst:376 c-api/typeobj.rst:0 -#: c-api/typeobj.rst:419 c-api/typeobj.rst:446 c-api/typeobj.rst:451 +#: c-api/typeobj.rst:354 c-api/typeobj.rst:378 c-api/typeobj.rst:0 +#: c-api/typeobj.rst:421 c-api/typeobj.rst:448 c-api/typeobj.rst:453 msgid "int" msgstr "*int*" -#: c-api/typeobj.rst:394 +#: c-api/typeobj.rst:396 msgid "Py_hash_t" msgstr "" -#: c-api/typeobj.rst:408 +#: c-api/typeobj.rst:410 msgid ":c:type:`getbufferproc`" msgstr "" @@ -1046,31 +1062,31 @@ msgstr "" msgid ":c:type:`Py_buffer` *" msgstr "" -#: c-api/typeobj.rst:414 +#: c-api/typeobj.rst:416 msgid ":c:type:`releasebufferproc`" msgstr "" -#: c-api/typeobj.rst:458 +#: c-api/typeobj.rst:460 msgid "See :ref:`slot-typedefs` below for more detail." msgstr "" -#: c-api/typeobj.rst:462 +#: c-api/typeobj.rst:464 msgid "PyTypeObject Definition" msgstr "" -#: c-api/typeobj.rst:464 +#: c-api/typeobj.rst:466 msgid "" "The structure definition for :c:type:`PyTypeObject` can be found in :file:" "`Include/object.h`. For convenience of reference, this repeats the " "definition found there:" msgstr "" -#: c-api/typeobj.rst:474 +#: c-api/typeobj.rst:476 #, fuzzy msgid "PyObject Slots" msgstr "Objets type" -#: c-api/typeobj.rst:476 +#: c-api/typeobj.rst:478 msgid "" "The type object structure extends the :c:type:`PyVarObject` structure. The :" "attr:`ob_size` field is used for dynamic types (created by :func:" @@ -1080,49 +1096,35 @@ msgid "" "the :attr:`ob_size` field." msgstr "" -#: c-api/typeobj.rst:486 -msgid "" -"These fields are only present when the macro ``Py_TRACE_REFS`` is defined. " -"Their initialization to ``NULL`` is taken care of by the " -"``PyObject_HEAD_INIT`` macro. For statically allocated objects, these " -"fields always remain ``NULL``. For dynamically allocated objects, these two " -"fields are used to link the object into a doubly-linked list of *all* live " -"objects on the heap. This could be used for various debugging purposes; " -"currently the only use is to print the objects that are still alive at the " -"end of a run when the environment variable :envvar:`PYTHONDUMPREFS` is set." -msgstr "" - -#: c-api/typeobj.rst:508 c-api/typeobj.rst:544 c-api/typeobj.rst:629 -#: c-api/typeobj.rst:719 c-api/typeobj.rst:755 c-api/typeobj.rst:797 -#: c-api/typeobj.rst:826 c-api/typeobj.rst:871 c-api/typeobj.rst:909 -#: c-api/typeobj.rst:956 c-api/typeobj.rst:991 c-api/typeobj.rst:1039 -#: c-api/typeobj.rst:1059 c-api/typeobj.rst:1092 c-api/typeobj.rst:1162 -#: c-api/typeobj.rst:1245 c-api/typeobj.rst:1365 c-api/typeobj.rst:1427 -#: c-api/typeobj.rst:1463 c-api/typeobj.rst:1492 c-api/typeobj.rst:1542 -#: c-api/typeobj.rst:1586 c-api/typeobj.rst:1677 c-api/typeobj.rst:1732 -#: c-api/typeobj.rst:1785 c-api/typeobj.rst:1813 c-api/typeobj.rst:1832 -#: c-api/typeobj.rst:1856 c-api/typeobj.rst:1911 -msgid "**Inheritance:**" -msgstr "" - -#: c-api/typeobj.rst:497 -msgid "These fields are not inherited by subtypes." -msgstr "" - -#: c-api/typeobj.rst:502 +#: c-api/typeobj.rst:487 msgid "" "This is the type object's reference count, initialized to ``1`` by the " -"``PyObject_HEAD_INIT`` macro. Note that for statically allocated type " -"objects, the type's instances (objects whose :attr:`ob_type` points back to " -"the type) do *not* count as references. But for dynamically allocated type " -"objects, the instances *do* count as references." +"``PyObject_HEAD_INIT`` macro. Note that for :ref:`statically allocated type " +"objects `, the type's instances (objects whose :attr:`ob_type` " +"points back to the type) do *not* count as references. But for :ref:" +"`dynamically allocated type objects `, the instances *do* count " +"as references." +msgstr "" + +#: c-api/typeobj.rst:517 c-api/typeobj.rst:553 c-api/typeobj.rst:640 +#: c-api/typeobj.rst:730 c-api/typeobj.rst:766 c-api/typeobj.rst:808 +#: c-api/typeobj.rst:837 c-api/typeobj.rst:882 c-api/typeobj.rst:920 +#: c-api/typeobj.rst:967 c-api/typeobj.rst:1002 c-api/typeobj.rst:1050 +#: c-api/typeobj.rst:1070 c-api/typeobj.rst:1102 c-api/typeobj.rst:1172 +#: c-api/typeobj.rst:1206 c-api/typeobj.rst:1247 c-api/typeobj.rst:1331 +#: c-api/typeobj.rst:1457 c-api/typeobj.rst:1519 c-api/typeobj.rst:1555 +#: c-api/typeobj.rst:1584 c-api/typeobj.rst:1634 c-api/typeobj.rst:1678 +#: c-api/typeobj.rst:1769 c-api/typeobj.rst:1827 c-api/typeobj.rst:1881 +#: c-api/typeobj.rst:1909 c-api/typeobj.rst:1928 c-api/typeobj.rst:1952 +#: c-api/typeobj.rst:2007 +msgid "**Inheritance:**" msgstr "" -#: c-api/typeobj.rst:546 c-api/typeobj.rst:588 +#: c-api/typeobj.rst:555 c-api/typeobj.rst:599 msgid "This field is not inherited by subtypes." msgstr "" -#: c-api/typeobj.rst:515 +#: c-api/typeobj.rst:501 msgid "" "This is the type's type, in other words its metatype. It is initialized by " "the argument to the ``PyObject_HEAD_INIT`` macro, and its value should " @@ -1134,7 +1136,7 @@ msgid "" "doing anything else. This is typically done like this::" msgstr "" -#: c-api/typeobj.rst:526 +#: c-api/typeobj.rst:512 msgid "" "This should be done before any instances of the type are created. :c:func:" "`PyType_Ready` checks if :attr:`ob_type` is ``NULL``, and if so, initializes " @@ -1142,28 +1144,55 @@ msgid "" "will not change this field if it is non-zero." msgstr "" -#: c-api/typeobj.rst:677 c-api/typeobj.rst:891 c-api/typeobj.rst:1429 -#: c-api/typeobj.rst:1570 c-api/typeobj.rst:1679 c-api/typeobj.rst:1896 +#: c-api/typeobj.rst:688 c-api/typeobj.rst:902 c-api/typeobj.rst:1521 +#: c-api/typeobj.rst:1662 c-api/typeobj.rst:1771 c-api/typeobj.rst:1992 msgid "This field is inherited by subtypes." msgstr "" -#: c-api/typeobj.rst:537 -msgid "PyVarObject Slots" +#: c-api/typeobj.rst:525 +msgid "" +"These fields are only present when the macro ``Py_TRACE_REFS`` is defined " +"(see the :option:`configure --with-trace-refs option <--with-trace-refs>`)." +msgstr "" + +#: c-api/typeobj.rst:528 +msgid "" +"Their initialization to ``NULL`` is taken care of by the " +"``PyObject_HEAD_INIT`` macro. For :ref:`statically allocated objects " +"`, these fields always remain ``NULL``. For :ref:`dynamically " +"allocated objects `, these two fields are used to link the " +"object into a doubly-linked list of *all* live objects on the heap." +msgstr "" + +#: c-api/typeobj.rst:534 +msgid "" +"This could be used for various debugging purposes; currently the only uses " +"are the :func:`sys.getobjects` function and to print the objects that are " +"still alive at the end of a run when the environment variable :envvar:" +"`PYTHONDUMPREFS` is set." msgstr "" #: c-api/typeobj.rst:541 +msgid "These fields are not inherited by subtypes." +msgstr "" + +#: c-api/typeobj.rst:545 +msgid "PyVarObject Slots" +msgstr "" + +#: c-api/typeobj.rst:549 msgid "" -"For statically allocated type objects, this should be initialized to zero. " -"For dynamically allocated type objects, this field has a special internal " -"meaning." +"For :ref:`statically allocated type objects `, this should be " +"initialized to zero. For :ref:`dynamically allocated type objects `, this field has a special internal meaning." msgstr "" -#: c-api/typeobj.rst:550 +#: c-api/typeobj.rst:559 #, fuzzy msgid "PyTypeObject Slots" msgstr "Objets type" -#: c-api/typeobj.rst:552 +#: c-api/typeobj.rst:561 msgid "" "Each slot has a section describing inheritance. If :c:func:`PyType_Ready` " "may set a value when the field is set to ``NULL`` then there will also be a " @@ -1171,7 +1200,7 @@ msgid "" "`PyBaseObject_Type` and :c:type:`PyType_Type` effectively act as defaults.)" msgstr "" -#: c-api/typeobj.rst:559 +#: c-api/typeobj.rst:568 msgid "" "Pointer to a NUL-terminated string containing the name of the type. For " "types that are accessible as module globals, the string should be the full " @@ -1183,22 +1212,22 @@ msgid "" "tp_name` initializer ``\"P.Q.M.T\"``." msgstr "" -#: c-api/typeobj.rst:567 +#: c-api/typeobj.rst:576 msgid "" -"For dynamically allocated type objects, this should just be the type name, " -"and the module name explicitly stored in the type dict as the value for key " -"``'__module__'``." +"For :ref:`dynamically allocated type objects `, this should just " +"be the type name, and the module name explicitly stored in the type dict as " +"the value for key ``'__module__'``." msgstr "" -#: c-api/typeobj.rst:571 +#: c-api/typeobj.rst:581 msgid "" -"For statically allocated type objects, the tp_name field should contain a " -"dot. Everything before the last dot is made accessible as the :attr:" -"`__module__` attribute, and everything after the last dot is made accessible " -"as the :attr:`~definition.__name__` attribute." +"For :ref:`statically allocated type objects `, the *tp_name* " +"field should contain a dot. Everything before the last dot is made " +"accessible as the :attr:`__module__` attribute, and everything after the " +"last dot is made accessible as the :attr:`~definition.__name__` attribute." msgstr "" -#: c-api/typeobj.rst:576 +#: c-api/typeobj.rst:587 msgid "" "If no dot is present, the entire :c:member:`~PyTypeObject.tp_name` field is " "made accessible as the :attr:`~definition.__name__` attribute, and the :attr:" @@ -1208,19 +1237,19 @@ msgid "" "created with pydoc." msgstr "" -#: c-api/typeobj.rst:582 +#: c-api/typeobj.rst:593 msgid "" "This field must not be ``NULL``. It is the only required field in :c:func:" "`PyTypeObject` (other than potentially :c:member:`~PyTypeObject." "tp_itemsize`)." msgstr "" -#: c-api/typeobj.rst:594 +#: c-api/typeobj.rst:605 msgid "" "These fields allow calculating the size in bytes of instances of the type." msgstr "" -#: c-api/typeobj.rst:596 +#: c-api/typeobj.rst:607 msgid "" "There are two kinds of types: types with fixed-length instances have a zero :" "c:member:`~PyTypeObject.tp_itemsize` field, types with variable-length " @@ -1229,7 +1258,7 @@ msgid "" "in :c:member:`~PyTypeObject.tp_basicsize`." msgstr "" -#: c-api/typeobj.rst:601 +#: c-api/typeobj.rst:612 msgid "" "For a type with variable-length instances, the instances must have an :attr:" "`ob_size` field, and the instance size is :c:member:`~PyTypeObject." @@ -1243,7 +1272,7 @@ msgid "" "instances, yet those instances have a meaningful :attr:`ob_size` field)." msgstr "" -#: c-api/typeobj.rst:612 +#: c-api/typeobj.rst:623 msgid "" "The basic size includes the fields in the instance declared by the macro :c:" "macro:`PyObject_HEAD` or :c:macro:`PyObject_VAR_HEAD` (whichever is used to " @@ -1255,7 +1284,7 @@ msgid "" "size." msgstr "" -#: c-api/typeobj.rst:620 +#: c-api/typeobj.rst:631 msgid "" "A note about alignment: if the variable items require a particular " "alignment, this should be taken care of by the value of :c:member:" @@ -1266,12 +1295,12 @@ msgid "" "alignment requirement for ``double``)." msgstr "" -#: c-api/typeobj.rst:627 +#: c-api/typeobj.rst:638 msgid "" "For any type with variable-length instances, this field must not be ``NULL``." msgstr "" -#: c-api/typeobj.rst:631 +#: c-api/typeobj.rst:642 msgid "" "These fields are inherited separately by subtypes. If the base type has a " "non-zero :c:member:`~PyTypeObject.tp_itemsize`, it is generally not safe to " @@ -1279,7 +1308,7 @@ msgid "" "subtype (though this depends on the implementation of the base type)." msgstr "" -#: c-api/typeobj.rst:639 +#: c-api/typeobj.rst:650 msgid "" "A pointer to the instance destructor function. This function must be " "defined unless the type guarantees that its instances will never be " @@ -1287,7 +1316,7 @@ msgid "" "The function signature is::" msgstr "" -#: c-api/typeobj.rst:645 +#: c-api/typeobj.rst:656 msgid "" "The destructor function is called by the :c:func:`Py_DECREF` and :c:func:" "`Py_XDECREF` macros when the new reference count is zero. At this point, " @@ -1305,7 +1334,7 @@ msgid "" "allocated using :c:func:`PyObject_GC_New` or :c:func:`PyObject_GC_NewVar`." msgstr "" -#: c-api/typeobj.rst:660 +#: c-api/typeobj.rst:671 msgid "" "Finally, if the type is heap allocated (:const:`Py_TPFLAGS_HEAPTYPE`), the " "deallocator should decrement the reference count for its type object after " @@ -1313,28 +1342,28 @@ msgid "" "recommended way to achieve this is:" msgstr "" -#: c-api/typeobj.rst:682 +#: c-api/typeobj.rst:693 msgid "" "An optional offset to a per-instance function that implements calling the " "object using the :ref:`vectorcall protocol `, a more efficient " "alternative of the simpler :c:member:`~PyTypeObject.tp_call`." msgstr "" -#: c-api/typeobj.rst:687 +#: c-api/typeobj.rst:698 msgid "" "This field is only used if the flag :const:`Py_TPFLAGS_HAVE_VECTORCALL` is " "set. If so, this must be a positive integer containing the offset in the " "instance of a :c:type:`vectorcallfunc` pointer." msgstr "" -#: c-api/typeobj.rst:691 +#: c-api/typeobj.rst:702 msgid "" "The *vectorcallfunc* pointer may be ``NULL``, in which case the instance " "behaves as if :const:`Py_TPFLAGS_HAVE_VECTORCALL` was not set: calling the " "instance falls back to :c:member:`~PyTypeObject.tp_call`." msgstr "" -#: c-api/typeobj.rst:695 +#: c-api/typeobj.rst:706 msgid "" "Any class that sets ``Py_TPFLAGS_HAVE_VECTORCALL`` must also set :c:member:" "`~PyTypeObject.tp_call` and make sure its behaviour is consistent with the " @@ -1342,7 +1371,7 @@ msgid "" "`PyVectorcall_Call`." msgstr "" -#: c-api/typeobj.rst:702 +#: c-api/typeobj.rst:713 msgid "" "It is not recommended for :ref:`heap types ` to implement the " "vectorcall protocol. When a user sets :attr:`__call__` in Python code, only " @@ -1350,33 +1379,33 @@ msgid "" "function." msgstr "" -#: c-api/typeobj.rst:709 +#: c-api/typeobj.rst:720 msgid "" "The semantics of the ``tp_vectorcall_offset`` slot are provisional and " "expected to be finalized in Python 3.9. If you use vectorcall, plan for " "updating your code for Python 3.9." msgstr "" -#: c-api/typeobj.rst:715 +#: c-api/typeobj.rst:726 msgid "" "Before version 3.8, this slot was named ``tp_print``. In Python 2.x, it was " "used for printing to a file. In Python 3.0 to 3.7, it was unused." msgstr "" -#: c-api/typeobj.rst:721 +#: c-api/typeobj.rst:732 msgid "" "This field is always inherited. However, the :const:" "`Py_TPFLAGS_HAVE_VECTORCALL` flag is not always inherited. If it's not, then " "the subclass won't use :ref:`vectorcall `, except when :c:func:" -"`PyVectorcall_Call` is explicitly called. This is in particular the case for " -"`heap types`_ (including subclasses defined in Python)." +"`PyVectorcall_Call` is explicitly called. This is in particular the case " +"for :ref:`heap types ` (including subclasses defined in Python)." msgstr "" -#: c-api/typeobj.rst:732 +#: c-api/typeobj.rst:743 msgid "An optional pointer to the get-attribute-string function." msgstr "" -#: c-api/typeobj.rst:734 +#: c-api/typeobj.rst:745 msgid "" "This field is deprecated. When it is defined, it should point to a function " "that acts the same as the :c:member:`~PyTypeObject.tp_getattro` function, " @@ -1384,11 +1413,11 @@ msgid "" "attribute name." msgstr "" -#: c-api/typeobj.rst:932 +#: c-api/typeobj.rst:943 msgid "Group: :attr:`tp_getattr`, :attr:`tp_getattro`" msgstr "" -#: c-api/typeobj.rst:742 +#: c-api/typeobj.rst:753 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_getattro`: a subtype inherits both :c:member:`~PyTypeObject.tp_getattr` " @@ -1397,12 +1426,12 @@ msgid "" "tp_getattro` are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:945 +#: c-api/typeobj.rst:956 msgid "" "An optional pointer to the function for setting and deleting attributes." msgstr "" -#: c-api/typeobj.rst:751 +#: c-api/typeobj.rst:762 msgid "" "This field is deprecated. When it is defined, it should point to a function " "that acts the same as the :c:member:`~PyTypeObject.tp_setattro` function, " @@ -1410,11 +1439,11 @@ msgid "" "attribute name." msgstr "" -#: c-api/typeobj.rst:958 +#: c-api/typeobj.rst:969 msgid "Group: :attr:`tp_setattr`, :attr:`tp_setattro`" msgstr "" -#: c-api/typeobj.rst:759 +#: c-api/typeobj.rst:770 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_setattro`: a subtype inherits both :c:member:`~PyTypeObject.tp_setattr` " @@ -1423,34 +1452,34 @@ msgid "" "tp_setattro` are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:766 +#: c-api/typeobj.rst:777 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement :term:`awaitable` and :term:`asynchronous iterator` " "protocols at the C-level. See :ref:`async-structs` for details." msgstr "" -#: c-api/typeobj.rst:770 +#: c-api/typeobj.rst:781 msgid "Formerly known as ``tp_compare`` and ``tp_reserved``." msgstr "" -#: c-api/typeobj.rst:775 +#: c-api/typeobj.rst:786 msgid "" "The :c:member:`~PyTypeObject.tp_as_async` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: c-api/typeobj.rst:783 +#: c-api/typeobj.rst:794 msgid "" "An optional pointer to a function that implements the built-in function :" "func:`repr`." msgstr "" -#: c-api/typeobj.rst:786 +#: c-api/typeobj.rst:797 msgid "The signature is the same as for :c:func:`PyObject_Repr`::" msgstr "" -#: c-api/typeobj.rst:790 +#: c-api/typeobj.rst:801 msgid "" "The function must return a string or a Unicode object. Ideally, this " "function should return a string that, when passed to :func:`eval`, given a " @@ -1459,83 +1488,83 @@ msgid "" "``'>'`` from which both the type and the value of the object can be deduced." msgstr "" -#: c-api/typeobj.rst:913 c-api/typeobj.rst:964 c-api/typeobj.rst:1374 -#: c-api/typeobj.rst:1547 c-api/typeobj.rst:1681 c-api/typeobj.rst:1737 -#: c-api/typeobj.rst:1789 +#: c-api/typeobj.rst:924 c-api/typeobj.rst:975 c-api/typeobj.rst:1466 +#: c-api/typeobj.rst:1639 c-api/typeobj.rst:1773 c-api/typeobj.rst:1833 +#: c-api/typeobj.rst:1885 msgid "**Default:**" msgstr "" -#: c-api/typeobj.rst:803 +#: c-api/typeobj.rst:814 msgid "" "When this field is not set, a string of the form ``<%s object at %p>`` is " "returned, where ``%s`` is replaced by the type name, and ``%p`` by the " "object's memory address." msgstr "" -#: c-api/typeobj.rst:810 +#: c-api/typeobj.rst:821 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the number protocol. These fields are documented " "in :ref:`number-structs`." msgstr "" -#: c-api/typeobj.rst:816 +#: c-api/typeobj.rst:827 msgid "" "The :c:member:`~PyTypeObject.tp_as_number` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: c-api/typeobj.rst:822 +#: c-api/typeobj.rst:833 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the sequence protocol. These fields are documented " "in :ref:`sequence-structs`." msgstr "" -#: c-api/typeobj.rst:828 +#: c-api/typeobj.rst:839 msgid "" "The :c:member:`~PyTypeObject.tp_as_sequence` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: c-api/typeobj.rst:834 +#: c-api/typeobj.rst:845 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the mapping protocol. These fields are documented " "in :ref:`mapping-structs`." msgstr "" -#: c-api/typeobj.rst:840 +#: c-api/typeobj.rst:851 msgid "" "The :c:member:`~PyTypeObject.tp_as_mapping` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: c-api/typeobj.rst:848 +#: c-api/typeobj.rst:859 msgid "" "An optional pointer to a function that implements the built-in function :" "func:`hash`." msgstr "" -#: c-api/typeobj.rst:851 +#: c-api/typeobj.rst:862 msgid "The signature is the same as for :c:func:`PyObject_Hash`::" msgstr "" -#: c-api/typeobj.rst:855 +#: c-api/typeobj.rst:866 msgid "" "The value ``-1`` should not be returned as a normal return value; when an " "error occurs during the computation of the hash value, the function should " "set an exception and return ``-1``." msgstr "" -#: c-api/typeobj.rst:859 +#: c-api/typeobj.rst:870 msgid "" "When this field is not set (*and* :attr:`tp_richcompare` is not set), an " "attempt to take the hash of the object raises :exc:`TypeError`. This is the " "same as setting it to :c:func:`PyObject_HashNotImplemented`." msgstr "" -#: c-api/typeobj.rst:863 +#: c-api/typeobj.rst:874 msgid "" "This field can be set explicitly to :c:func:`PyObject_HashNotImplemented` to " "block inheritance of the hash method from a parent type. This is interpreted " @@ -1546,11 +1575,11 @@ msgid "" "`PyObject_HashNotImplemented`." msgstr "" -#: c-api/typeobj.rst:1367 +#: c-api/typeobj.rst:1459 msgid "Group: :attr:`tp_hash`, :attr:`tp_richcompare`" msgstr "" -#: c-api/typeobj.rst:875 +#: c-api/typeobj.rst:886 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_richcompare`: a subtype inherits both of :c:member:`~PyTypeObject." @@ -1559,14 +1588,14 @@ msgid "" "are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:883 +#: c-api/typeobj.rst:894 msgid "" "An optional pointer to a function that implements calling the object. This " "should be ``NULL`` if the object is not callable. The signature is the same " "as for :c:func:`PyObject_Call`::" msgstr "" -#: c-api/typeobj.rst:896 +#: c-api/typeobj.rst:907 msgid "" "An optional pointer to a function that implements the built-in operation :" "func:`str`. (Note that :class:`str` is a type now, and :func:`str` calls " @@ -1575,11 +1604,11 @@ msgid "" "this handler.)" msgstr "" -#: c-api/typeobj.rst:901 +#: c-api/typeobj.rst:912 msgid "The signature is the same as for :c:func:`PyObject_Str`::" msgstr "" -#: c-api/typeobj.rst:905 +#: c-api/typeobj.rst:916 msgid "" "The function must return a string or a Unicode object. It should be a " "\"friendly\" string representation of the object, as this is the " @@ -1587,28 +1616,28 @@ msgid "" "function." msgstr "" -#: c-api/typeobj.rst:915 +#: c-api/typeobj.rst:926 msgid "" "When this field is not set, :c:func:`PyObject_Repr` is called to return a " "string representation." msgstr "" -#: c-api/typeobj.rst:921 +#: c-api/typeobj.rst:932 msgid "An optional pointer to the get-attribute function." msgstr "" -#: c-api/typeobj.rst:923 +#: c-api/typeobj.rst:934 msgid "The signature is the same as for :c:func:`PyObject_GetAttr`::" msgstr "" -#: c-api/typeobj.rst:927 +#: c-api/typeobj.rst:938 msgid "" "It is usually convenient to set this field to :c:func:" "`PyObject_GenericGetAttr`, which implements the normal way of looking for " "object attributes." msgstr "" -#: c-api/typeobj.rst:934 +#: c-api/typeobj.rst:945 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_getattr`: a subtype inherits both :c:member:`~PyTypeObject.tp_getattr` " @@ -1617,15 +1646,15 @@ msgid "" "tp_getattro` are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:940 +#: c-api/typeobj.rst:951 msgid ":c:type:`PyBaseObject_Type` uses :c:func:`PyObject_GenericGetAttr`." msgstr "" -#: c-api/typeobj.rst:947 +#: c-api/typeobj.rst:958 msgid "The signature is the same as for :c:func:`PyObject_SetAttr`::" msgstr "" -#: c-api/typeobj.rst:951 +#: c-api/typeobj.rst:962 msgid "" "In addition, setting *value* to ``NULL`` to delete an attribute must be " "supported. It is usually convenient to set this field to :c:func:" @@ -1633,7 +1662,7 @@ msgid "" "attributes." msgstr "" -#: c-api/typeobj.rst:960 +#: c-api/typeobj.rst:971 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_setattr`: a subtype inherits both :c:member:`~PyTypeObject.tp_setattr` " @@ -1642,24 +1671,24 @@ msgid "" "tp_setattro` are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:966 +#: c-api/typeobj.rst:977 msgid ":c:type:`PyBaseObject_Type` uses :c:func:`PyObject_GenericSetAttr`." msgstr "" -#: c-api/typeobj.rst:971 +#: c-api/typeobj.rst:982 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the buffer interface. These fields are documented " "in :ref:`buffer-structs`." msgstr "" -#: c-api/typeobj.rst:977 +#: c-api/typeobj.rst:988 msgid "" "The :c:member:`~PyTypeObject.tp_as_buffer` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: c-api/typeobj.rst:983 +#: c-api/typeobj.rst:994 msgid "" "This field is a bit mask of various flags. Some flags indicate variant " "semantics for certain situations; others are used to indicate that certain " @@ -1671,7 +1700,7 @@ msgid "" "accessed and must be considered to have a zero or ``NULL`` value instead." msgstr "" -#: c-api/typeobj.rst:993 +#: c-api/typeobj.rst:1004 msgid "" "Inheritance of this field is complicated. Most flag bits are inherited " "individually, i.e. if the base type has a flag bit set, the subtype inherits " @@ -1686,17 +1715,17 @@ msgid "" "the subtype exist and have ``NULL`` values." msgstr "" -#: c-api/typeobj.rst:1008 +#: c-api/typeobj.rst:1019 msgid "" ":c:type:`PyBaseObject_Type` uses ``Py_TPFLAGS_DEFAULT | " "Py_TPFLAGS_BASETYPE``." msgstr "" -#: c-api/typeobj.rst:1011 +#: c-api/typeobj.rst:1022 msgid "**Bit Masks:**" msgstr "" -#: c-api/typeobj.rst:1013 +#: c-api/typeobj.rst:1024 msgid "" "The following bit masks are currently defined; these can be ORed together " "using the ``|`` operator to form the value of the :c:member:`~PyTypeObject." @@ -1705,7 +1734,7 @@ msgid "" "zero." msgstr "" -#: c-api/typeobj.rst:1020 +#: c-api/typeobj.rst:1031 msgid "" "This bit is set when the type object itself is allocated on the heap, for " "example, types created dynamically using :c:func:`PyType_FromSpec`. In this " @@ -1716,30 +1745,30 @@ msgid "" "gets INCREF'ed or DECREF'ed)." msgstr "" -#: c-api/typeobj.rst:1041 c-api/typeobj.rst:1061 c-api/typeobj.rst:1094 +#: c-api/typeobj.rst:1052 c-api/typeobj.rst:1072 c-api/typeobj.rst:1104 msgid "???" msgstr "" -#: c-api/typeobj.rst:1035 +#: c-api/typeobj.rst:1046 msgid "" "This bit is set when the type can be used as the base type of another type. " "If this bit is clear, the type cannot be subtyped (similar to a \"final\" " "class in Java)." msgstr "" -#: c-api/typeobj.rst:1046 +#: c-api/typeobj.rst:1057 msgid "" "This bit is set when the type object has been fully initialized by :c:func:" "`PyType_Ready`." msgstr "" -#: c-api/typeobj.rst:1056 +#: c-api/typeobj.rst:1067 msgid "" "This bit is set while :c:func:`PyType_Ready` is in the process of " "initializing the type object." msgstr "" -#: c-api/typeobj.rst:1066 +#: c-api/typeobj.rst:1077 msgid "" "This bit is set when the object supports garbage collection. If this bit is " "set, instances must be created using :c:func:`PyObject_GC_New` and destroyed " @@ -1749,12 +1778,12 @@ msgid "" "tp_clear` are present in the type object." msgstr "" -#: c-api/typeobj.rst:1247 c-api/typeobj.rst:1308 +#: c-api/typeobj.rst:1333 c-api/typeobj.rst:1400 msgid "" "Group: :const:`Py_TPFLAGS_HAVE_GC`, :attr:`tp_traverse`, :attr:`tp_clear`" msgstr "" -#: c-api/typeobj.rst:1077 +#: c-api/typeobj.rst:1088 msgid "" "The :const:`Py_TPFLAGS_HAVE_GC` flag bit is inherited together with the :" "attr:`tp_traverse` and :attr:`tp_clear` fields, i.e. if the :const:" @@ -1763,48 +1792,48 @@ msgid "" "``NULL`` values." msgstr "" -#: c-api/typeobj.rst:1087 +#: c-api/typeobj.rst:1098 msgid "" "This is a bitmask of all the bits that pertain to the existence of certain " "fields in the type object and its extension structures. Currently, it " -"includes the following bits: :const:`Py_TPFLAGS_HAVE_STACKLESS_EXTENSION`, :" -"const:`Py_TPFLAGS_HAVE_VERSION_TAG`." +"includes the following bits: :const:`Py_TPFLAGS_HAVE_STACKLESS_EXTENSION`." msgstr "" -#: c-api/typeobj.rst:1099 +#: c-api/typeobj.rst:1109 msgid "This bit indicates that objects behave like unbound methods." msgstr "" -#: c-api/typeobj.rst:1101 +#: c-api/typeobj.rst:1111 msgid "If this flag is set for ``type(meth)``, then:" msgstr "" -#: c-api/typeobj.rst:1103 +#: c-api/typeobj.rst:1113 msgid "" "``meth.__get__(obj, cls)(*args, **kwds)`` (with ``obj`` not None) must be " "equivalent to ``meth(obj, *args, **kwds)``." msgstr "" -#: c-api/typeobj.rst:1106 +#: c-api/typeobj.rst:1116 msgid "" "``meth.__get__(None, cls)(*args, **kwds)`` must be equivalent to " "``meth(*args, **kwds)``." msgstr "" -#: c-api/typeobj.rst:1109 +#: c-api/typeobj.rst:1119 msgid "" "This flag enables an optimization for typical method calls like ``obj." "meth()``: it avoids creating a temporary \"bound method\" object for ``obj." "meth``." msgstr "" -#: c-api/typeobj.rst:1117 +#: c-api/typeobj.rst:1127 msgid "" -"This flag is never inherited by heap types. For extension types, it is " -"inherited whenever :c:member:`~PyTypeObject.tp_descr_get` is inherited." +"This flag is never inherited by :ref:`heap types `. For " +"extension types, it is inherited whenever :c:member:`~PyTypeObject." +"tp_descr_get` is inherited." msgstr "" -#: c-api/typeobj.rst:1134 +#: c-api/typeobj.rst:1144 msgid "" "These flags are used by functions such as :c:func:`PyLong_Check` to quickly " "determine if a type is a subclass of a built-in type; such specific checks " @@ -1814,57 +1843,130 @@ msgid "" "behave differently depending on what kind of check is used." msgstr "" -#: c-api/typeobj.rst:1145 +#: c-api/typeobj.rst:1155 msgid "" "This bit is set when the :c:member:`~PyTypeObject.tp_finalize` slot is " "present in the type structure." msgstr "" -#: c-api/typeobj.rst:1150 +#: c-api/typeobj.rst:1160 msgid "" "This flag isn't necessary anymore, as the interpreter assumes the :c:member:" "`~PyTypeObject.tp_finalize` slot is always present in the type structure." msgstr "" -#: c-api/typeobj.rst:1158 +#: c-api/typeobj.rst:1168 msgid "" "This bit is set when the class implements the :ref:`vectorcall protocol " "`. See :c:member:`~PyTypeObject.tp_vectorcall_offset` for " "details." msgstr "" -#: c-api/typeobj.rst:1164 +#: c-api/typeobj.rst:1174 +msgid "" +"This bit is inherited for :ref:`static subtypes ` if :c:member:" +"`~PyTypeObject.tp_call` is also inherited. :ref:`Heap types ` do " +"not inherit ``Py_TPFLAGS_HAVE_VECTORCALL``." +msgstr "" + +#: c-api/typeobj.rst:1182 +msgid "" +"This bit is set for type objects that are immutable: type attributes cannot " +"be set nor deleted." +msgstr "" + +#: c-api/typeobj.rst:1184 +msgid "" +":c:func:`PyType_Ready` automatically applies this flag to :ref:`static types " +"`." +msgstr "" + +#: c-api/typeobj.rst:1208 +msgid "This flag is not inherited." +msgstr "" + +#: c-api/typeobj.rst:1195 +msgid "" +"Disallow creating instances of the type: set :c:member:`~PyTypeObject." +"tp_new` to NULL and don't create the ``__new__`` key in the type dictionary." +msgstr "" + +#: c-api/typeobj.rst:1199 +msgid "" +"The flag must be set before creating the type, not after. For example, it " +"must be set before :c:func:`PyType_Ready` is called on the type." +msgstr "" + +#: c-api/typeobj.rst:1202 +msgid "" +"The flag is set automatically on :ref:`static types ` if :c:" +"member:`~PyTypeObject.tp_base` is NULL or ``&PyBaseObject_Type`` and :c:" +"member:`~PyTypeObject.tp_new` is NULL." +msgstr "" + +#: c-api/typeobj.rst:1215 +msgid "" +"This bit indicates that instances of the class may match mapping patterns " +"when used as the subject of a :keyword:`match` block. It is automatically " +"set when registering or subclassing :class:`collections.abc.Mapping`, and " +"unset when registering :class:`collections.abc.Sequence`." +msgstr "" + +#: c-api/typeobj.rst:1244 +msgid "" +":const:`Py_TPFLAGS_MAPPING` and :const:`Py_TPFLAGS_SEQUENCE` are mutually " +"exclusive; it is an error enable both flags simultaneously." +msgstr "" + +#: c-api/typeobj.rst:1227 +msgid "" +"This flag is inherited by types that do not already set :const:" +"`Py_TPFLAGS_SEQUENCE`." +msgstr "" + +#: c-api/typeobj.rst:1252 +msgid ":pep:`634` -- Structural Pattern Matching: Specification" +msgstr "" + +#: c-api/typeobj.rst:1237 +msgid "" +"This bit indicates that instances of the class may match sequence patterns " +"when used as the subject of a :keyword:`match` block. It is automatically " +"set when registering or subclassing :class:`collections.abc.Sequence`, and " +"unset when registering :class:`collections.abc.Mapping`." +msgstr "" + +#: c-api/typeobj.rst:1249 msgid "" -"This bit is inherited for *static* subtypes if :c:member:`~PyTypeObject." -"tp_call` is also inherited. `Heap types`_ do not inherit " -"``Py_TPFLAGS_HAVE_VECTORCALL``." +"This flag is inherited by types that do not already set :const:" +"`Py_TPFLAGS_MAPPING`." msgstr "" -#: c-api/typeobj.rst:1173 +#: c-api/typeobj.rst:1259 msgid "" "An optional pointer to a NUL-terminated C string giving the docstring for " "this type object. This is exposed as the :attr:`__doc__` attribute on the " "type and instances of the type." msgstr "" -#: c-api/typeobj.rst:1179 +#: c-api/typeobj.rst:1265 msgid "This field is *not* inherited by subtypes." msgstr "" -#: c-api/typeobj.rst:1184 +#: c-api/typeobj.rst:1270 msgid "" "An optional pointer to a traversal function for the garbage collector. This " "is only used if the :const:`Py_TPFLAGS_HAVE_GC` flag bit is set. The " "signature is::" msgstr "" -#: c-api/typeobj.rst:1303 +#: c-api/typeobj.rst:1395 msgid "" "More information about Python's garbage collection scheme can be found in " "section :ref:`supporting-cycle-detection`." msgstr "" -#: c-api/typeobj.rst:1192 +#: c-api/typeobj.rst:1278 msgid "" "The :c:member:`~PyTypeObject.tp_traverse` pointer is used by the garbage " "collector to detect reference cycles. A typical implementation of a :c:" @@ -1874,7 +1976,7 @@ msgid "" "`_thread` extension module::" msgstr "" -#: c-api/typeobj.rst:1207 +#: c-api/typeobj.rst:1293 msgid "" "Note that :c:func:`Py_VISIT` is called only on those members that can " "participate in reference cycles. Although there is also a ``self->key`` " @@ -1882,51 +1984,50 @@ msgid "" "part of a reference cycle." msgstr "" -#: c-api/typeobj.rst:1211 +#: c-api/typeobj.rst:1297 msgid "" "On the other hand, even if you know a member can never be part of a cycle, " "as a debugging aid you may want to visit it anyway just so the :mod:`gc` " "module's :func:`~gc.get_referents` function will include it." msgstr "" -#: c-api/typeobj.rst:1216 +#: c-api/typeobj.rst:1302 msgid "" "When implementing :c:member:`~PyTypeObject.tp_traverse`, only the members " -"that the instance *owns* (by having strong references to them) must be " -"visited. For instance, if an object supports weak references via the :c:" -"member:`~PyTypeObject.tp_weaklist` slot, the pointer supporting the linked " -"list (what *tp_weaklist* points to) must **not** be visited as the instance " -"does not directly own the weak references to itself (the weakreference list " -"is there to support the weak reference machinery, but the instance has no " -"strong reference to the elements inside it, as they are allowed to be " -"removed even if the instance is still alive)." +"that the instance *owns* (by having :term:`strong references ` to them) must be visited. For instance, if an object supports " +"weak references via the :c:member:`~PyTypeObject.tp_weaklist` slot, the " +"pointer supporting the linked list (what *tp_weaklist* points to) must " +"**not** be visited as the instance does not directly own the weak references " +"to itself (the weakreference list is there to support the weak reference " +"machinery, but the instance has no strong reference to the elements inside " +"it, as they are allowed to be removed even if the instance is still alive)." msgstr "" -#: c-api/typeobj.rst:1226 +#: c-api/typeobj.rst:1313 msgid "" "Note that :c:func:`Py_VISIT` requires the *visit* and *arg* parameters to :c:" "func:`local_traverse` to have these specific names; don't name them just " "anything." msgstr "" -#: c-api/typeobj.rst:1230 +#: c-api/typeobj.rst:1317 msgid "" -"Heap-allocated types (:const:`Py_TPFLAGS_HEAPTYPE`, such as those created " -"with :c:func:`PyType_FromSpec` and similar APIs) hold a reference to their " -"type. Their traversal function must therefore either visit :c:func:" +"Instances of :ref:`heap-allocated types ` hold a reference to " +"their type. Their traversal function must therefore either visit :c:func:" "`Py_TYPE(self) `, or delegate this responsibility by calling " "``tp_traverse`` of another heap-allocated type (such as a heap-allocated " "superclass). If they do not, the type object may not be garbage-collected." msgstr "" -#: c-api/typeobj.rst:1240 +#: c-api/typeobj.rst:1326 msgid "" "Heap-allocated types are expected to visit ``Py_TYPE(self)`` in " "``tp_traverse``. In earlier versions of Python, due to `bug 40217 `_, doing this may lead to crashes in subclasses." msgstr "" -#: c-api/typeobj.rst:1249 +#: c-api/typeobj.rst:1335 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_clear` and the :const:`Py_TPFLAGS_HAVE_GC` flag bit: the flag bit, :c:" @@ -1934,14 +2035,14 @@ msgid "" "are all inherited from the base type if they are all zero in the subtype." msgstr "" -#: c-api/typeobj.rst:1257 +#: c-api/typeobj.rst:1343 msgid "" "An optional pointer to a clear function for the garbage collector. This is " "only used if the :const:`Py_TPFLAGS_HAVE_GC` flag bit is set. The signature " "is::" msgstr "" -#: c-api/typeobj.rst:1262 +#: c-api/typeobj.rst:1348 msgid "" "The :c:member:`~PyTypeObject.tp_clear` member function is used to break " "reference cycles in cyclic garbage detected by the garbage collector. Taken " @@ -1956,7 +2057,7 @@ msgid "" "good reason to avoid implementing :c:member:`~PyTypeObject.tp_clear`." msgstr "" -#: c-api/typeobj.rst:1272 +#: c-api/typeobj.rst:1358 msgid "" "Implementations of :c:member:`~PyTypeObject.tp_clear` should drop the " "instance's references to those of its members that may be Python objects, " @@ -1964,7 +2065,7 @@ msgid "" "example::" msgstr "" -#: c-api/typeobj.rst:1286 +#: c-api/typeobj.rst:1372 msgid "" "The :c:func:`Py_CLEAR` macro should be used, because clearing references is " "delicate: the reference to the contained object must not be decremented " @@ -1979,7 +2080,15 @@ msgid "" "in a safe order." msgstr "" -#: c-api/typeobj.rst:1297 +#: c-api/typeobj.rst:1383 +msgid "" +"Note that :c:member:`~PyTypeObject.tp_clear` is not *always* called before " +"an instance is deallocated. For example, when reference counting is enough " +"to determine that an object is no longer used, the cyclic garbage collector " +"is not involved and :c:member:`~PyTypeObject.tp_dealloc` is called directly." +msgstr "" + +#: c-api/typeobj.rst:1389 msgid "" "Because the goal of :c:member:`~PyTypeObject.tp_clear` functions is to break " "reference cycles, it's not necessary to clear contained objects like Python " @@ -1989,7 +2098,7 @@ msgid "" "invoke :c:member:`~PyTypeObject.tp_clear`." msgstr "" -#: c-api/typeobj.rst:1310 +#: c-api/typeobj.rst:1402 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_traverse` and the :const:`Py_TPFLAGS_HAVE_GC` flag bit: the flag bit, :c:" @@ -1997,18 +2106,18 @@ msgid "" "are all inherited from the base type if they are all zero in the subtype." msgstr "" -#: c-api/typeobj.rst:1318 +#: c-api/typeobj.rst:1410 msgid "" "An optional pointer to the rich comparison function, whose signature is::" msgstr "" -#: c-api/typeobj.rst:1322 +#: c-api/typeobj.rst:1414 msgid "" "The first parameter is guaranteed to be an instance of the type that is " "defined by :c:type:`PyTypeObject`." msgstr "" -#: c-api/typeobj.rst:1325 +#: c-api/typeobj.rst:1417 msgid "" "The function should return the result of the comparison (usually ``Py_True`` " "or ``Py_False``). If the comparison is undefined, it must return " @@ -2016,74 +2125,74 @@ msgid "" "set an exception condition." msgstr "" -#: c-api/typeobj.rst:1330 +#: c-api/typeobj.rst:1422 msgid "" "The following constants are defined to be used as the third argument for :c:" "member:`~PyTypeObject.tp_richcompare` and for :c:func:`PyObject_RichCompare`:" msgstr "" -#: c-api/typeobj.rst:1334 +#: c-api/typeobj.rst:1426 msgid "Constant" msgstr "Constante" -#: c-api/typeobj.rst:1334 +#: c-api/typeobj.rst:1426 msgid "Comparison" msgstr "Comparaison" -#: c-api/typeobj.rst:1336 +#: c-api/typeobj.rst:1428 msgid ":const:`Py_LT`" msgstr "" -#: c-api/typeobj.rst:1336 +#: c-api/typeobj.rst:1428 msgid "``<``" msgstr "``<``" -#: c-api/typeobj.rst:1338 +#: c-api/typeobj.rst:1430 msgid ":const:`Py_LE`" msgstr "" -#: c-api/typeobj.rst:1338 +#: c-api/typeobj.rst:1430 msgid "``<=``" msgstr "``<=``" -#: c-api/typeobj.rst:1340 +#: c-api/typeobj.rst:1432 msgid ":const:`Py_EQ`" msgstr "" -#: c-api/typeobj.rst:1340 +#: c-api/typeobj.rst:1432 msgid "``==``" msgstr "``==``" -#: c-api/typeobj.rst:1342 +#: c-api/typeobj.rst:1434 msgid ":const:`Py_NE`" msgstr "" -#: c-api/typeobj.rst:1342 +#: c-api/typeobj.rst:1434 msgid "``!=``" msgstr "``!=``" -#: c-api/typeobj.rst:1344 +#: c-api/typeobj.rst:1436 msgid ":const:`Py_GT`" msgstr "" -#: c-api/typeobj.rst:1344 +#: c-api/typeobj.rst:1436 msgid "``>``" msgstr "``>``" -#: c-api/typeobj.rst:1346 +#: c-api/typeobj.rst:1438 msgid ":const:`Py_GE`" msgstr "" -#: c-api/typeobj.rst:1346 +#: c-api/typeobj.rst:1438 msgid "``>=``" msgstr "``>=``" -#: c-api/typeobj.rst:1349 +#: c-api/typeobj.rst:1441 msgid "" "The following macro is defined to ease writing rich comparison functions:" msgstr "" -#: c-api/typeobj.rst:1353 +#: c-api/typeobj.rst:1445 msgid "" "Return ``Py_True`` or ``Py_False`` from the function, depending on the " "result of a comparison. VAL_A and VAL_B must be orderable by C comparison " @@ -2091,15 +2200,15 @@ msgid "" "specifies the requested operation, as for :c:func:`PyObject_RichCompare`." msgstr "" -#: c-api/typeobj.rst:1359 +#: c-api/typeobj.rst:1451 msgid "The return value's reference count is properly incremented." msgstr "" -#: c-api/typeobj.rst:1361 +#: c-api/typeobj.rst:1453 msgid "On error, sets an exception and returns ``NULL`` from the function." msgstr "" -#: c-api/typeobj.rst:1369 +#: c-api/typeobj.rst:1461 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_hash`: a subtype inherits :c:member:`~PyTypeObject.tp_richcompare` and :c:" @@ -2107,7 +2216,7 @@ msgid "" "tp_richcompare` and :c:member:`~PyTypeObject.tp_hash` are both ``NULL``." msgstr "" -#: c-api/typeobj.rst:1376 +#: c-api/typeobj.rst:1468 msgid "" ":c:type:`PyBaseObject_Type` provides a :attr:`tp_richcompare` " "implementation, which may be inherited. However, if only :attr:`tp_hash` is " @@ -2115,7 +2224,7 @@ msgid "" "will not be able to participate in any comparisons." msgstr "" -#: c-api/typeobj.rst:1385 +#: c-api/typeobj.rst:1477 msgid "" "If the instances of this type are weakly referenceable, this field is " "greater than zero and contains the offset in the instance structure of the " @@ -2125,13 +2234,13 @@ msgid "" "`PyObject*` which is initialized to ``NULL``." msgstr "" -#: c-api/typeobj.rst:1392 +#: c-api/typeobj.rst:1484 msgid "" "Do not confuse this field with :c:member:`~PyTypeObject.tp_weaklist`; that " "is the list head for weak references to the type object itself." msgstr "" -#: c-api/typeobj.rst:1397 +#: c-api/typeobj.rst:1489 msgid "" "This field is inherited by subtypes, but see the rules listed below. A " "subtype may override this offset; this means that the subtype uses a " @@ -2140,7 +2249,7 @@ msgid "" "not be a problem." msgstr "" -#: c-api/typeobj.rst:1402 +#: c-api/typeobj.rst:1494 msgid "" "When a type defined by a class statement has no :attr:`~object.__slots__` " "declaration, and none of its base types are weakly referenceable, the type " @@ -2149,7 +2258,7 @@ msgid "" "tp_weaklistoffset` of that slot's offset." msgstr "" -#: c-api/typeobj.rst:1407 +#: c-api/typeobj.rst:1499 msgid "" "When a type's :attr:`__slots__` declaration contains a slot named :attr:" "`__weakref__`, that slot becomes the weak reference list head for instances " @@ -2157,31 +2266,31 @@ msgid "" "`~PyTypeObject.tp_weaklistoffset`." msgstr "" -#: c-api/typeobj.rst:1412 +#: c-api/typeobj.rst:1504 msgid "" "When a type's :attr:`__slots__` declaration does not contain a slot named :" "attr:`__weakref__`, the type inherits its :c:member:`~PyTypeObject." "tp_weaklistoffset` from its base type." msgstr "" -#: c-api/typeobj.rst:1419 +#: c-api/typeobj.rst:1511 msgid "" "An optional pointer to a function that returns an iterator for the object. " "Its presence normally signals that the instances of this type are iterable " "(although sequences may be iterable without this function)." msgstr "" -#: c-api/typeobj.rst:1423 +#: c-api/typeobj.rst:1515 msgid "This function has the same signature as :c:func:`PyObject_GetIter`::" msgstr "" -#: c-api/typeobj.rst:1434 +#: c-api/typeobj.rst:1526 msgid "" "An optional pointer to a function that returns the next item in an iterator. " "The signature is::" msgstr "" -#: c-api/typeobj.rst:1439 +#: c-api/typeobj.rst:1531 msgid "" "When the iterator is exhausted, it must return ``NULL``; a :exc:" "`StopIteration` exception may or may not be set. When another error occurs, " @@ -2189,74 +2298,74 @@ msgid "" "this type are iterators." msgstr "" -#: c-api/typeobj.rst:1444 +#: c-api/typeobj.rst:1536 msgid "" "Iterator types should also define the :c:member:`~PyTypeObject.tp_iter` " "function, and that function should return the iterator instance itself (not " "a new iterator instance)." msgstr "" -#: c-api/typeobj.rst:1448 +#: c-api/typeobj.rst:1540 msgid "This function has the same signature as :c:func:`PyIter_Next`." msgstr "" -#: c-api/typeobj.rst:1457 +#: c-api/typeobj.rst:1549 msgid "" "An optional pointer to a static ``NULL``-terminated array of :c:type:" "`PyMethodDef` structures, declaring regular methods of this type." msgstr "" -#: c-api/typeobj.rst:1460 +#: c-api/typeobj.rst:1552 msgid "" "For each entry in the array, an entry is added to the type's dictionary " "(see :c:member:`~PyTypeObject.tp_dict` below) containing a method descriptor." msgstr "" -#: c-api/typeobj.rst:1465 +#: c-api/typeobj.rst:1557 msgid "" "This field is not inherited by subtypes (methods are inherited through a " "different mechanism)." msgstr "" -#: c-api/typeobj.rst:1471 +#: c-api/typeobj.rst:1563 msgid "" "An optional pointer to a static ``NULL``-terminated array of :c:type:" "`PyMemberDef` structures, declaring regular data members (fields or slots) " "of instances of this type." msgstr "" -#: c-api/typeobj.rst:1475 +#: c-api/typeobj.rst:1567 msgid "" "For each entry in the array, an entry is added to the type's dictionary " "(see :c:member:`~PyTypeObject.tp_dict` below) containing a member descriptor." msgstr "" -#: c-api/typeobj.rst:1480 +#: c-api/typeobj.rst:1572 msgid "" "This field is not inherited by subtypes (members are inherited through a " "different mechanism)." msgstr "" -#: c-api/typeobj.rst:1486 +#: c-api/typeobj.rst:1578 msgid "" "An optional pointer to a static ``NULL``-terminated array of :c:type:" "`PyGetSetDef` structures, declaring computed attributes of instances of this " "type." msgstr "" -#: c-api/typeobj.rst:1489 +#: c-api/typeobj.rst:1581 msgid "" "For each entry in the array, an entry is added to the type's dictionary " "(see :c:member:`~PyTypeObject.tp_dict` below) containing a getset descriptor." msgstr "" -#: c-api/typeobj.rst:1494 +#: c-api/typeobj.rst:1586 msgid "" "This field is not inherited by subtypes (computed attributes are inherited " "through a different mechanism)." msgstr "" -#: c-api/typeobj.rst:1500 +#: c-api/typeobj.rst:1592 msgid "" "An optional pointer to a base type from which type properties are " "inherited. At this level, only single inheritance is supported; multiple " @@ -2264,7 +2373,7 @@ msgid "" "metatype." msgstr "" -#: c-api/typeobj.rst:1508 +#: c-api/typeobj.rst:1600 msgid "" "Slot initialization is subject to the rules of initializing globals. C99 " "requires the initializers to be \"address constants\". Function designators " @@ -2272,7 +2381,7 @@ msgid "" "valid C99 address constants." msgstr "" -#: c-api/typeobj.rst:1513 +#: c-api/typeobj.rst:1605 msgid "" "However, the unary '&' operator applied to a non-static variable like :c:" "func:`PyBaseObject_Type` is not required to produce an address constant. " @@ -2280,27 +2389,27 @@ msgid "" "strictly standard conforming in this particular behavior." msgstr "" -#: c-api/typeobj.rst:1519 +#: c-api/typeobj.rst:1611 msgid "" "Consequently, :c:member:`~PyTypeObject.tp_base` should be set in the " "extension module's init function." msgstr "" -#: c-api/typeobj.rst:1524 +#: c-api/typeobj.rst:1616 msgid "This field is not inherited by subtypes (obviously)." msgstr "" -#: c-api/typeobj.rst:1528 +#: c-api/typeobj.rst:1620 msgid "" "This field defaults to ``&PyBaseObject_Type`` (which to Python programmers " "is known as the type :class:`object`)." msgstr "" -#: c-api/typeobj.rst:1534 +#: c-api/typeobj.rst:1626 msgid "The type's dictionary is stored here by :c:func:`PyType_Ready`." msgstr "" -#: c-api/typeobj.rst:1536 +#: c-api/typeobj.rst:1628 msgid "" "This field should normally be initialized to ``NULL`` before PyType_Ready is " "called; it may also be initialized to a dictionary containing initial " @@ -2309,43 +2418,43 @@ msgid "" "they don't correspond to overloaded operations (like :meth:`__add__`)." msgstr "" -#: c-api/typeobj.rst:1544 +#: c-api/typeobj.rst:1636 msgid "" "This field is not inherited by subtypes (though the attributes defined in " "here are inherited through a different mechanism)." msgstr "" -#: c-api/typeobj.rst:1549 +#: c-api/typeobj.rst:1641 msgid "" "If this field is ``NULL``, :c:func:`PyType_Ready` will assign a new " "dictionary to it." msgstr "" -#: c-api/typeobj.rst:1554 +#: c-api/typeobj.rst:1646 msgid "" "It is not safe to use :c:func:`PyDict_SetItem` on or otherwise modify :c:" "member:`~PyTypeObject.tp_dict` with the dictionary C-API." msgstr "" -#: c-api/typeobj.rst:1560 +#: c-api/typeobj.rst:1652 msgid "An optional pointer to a \"descriptor get\" function." msgstr "" -#: c-api/typeobj.rst:1578 c-api/typeobj.rst:1690 c-api/typeobj.rst:1714 +#: c-api/typeobj.rst:1670 c-api/typeobj.rst:1782 c-api/typeobj.rst:1806 msgid "The function signature is::" msgstr "" -#: c-api/typeobj.rst:1575 +#: c-api/typeobj.rst:1667 msgid "" "An optional pointer to a function for setting and deleting a descriptor's " "value." msgstr "" -#: c-api/typeobj.rst:1582 +#: c-api/typeobj.rst:1674 msgid "The *value* argument is set to ``NULL`` to delete the value." msgstr "" -#: c-api/typeobj.rst:1593 +#: c-api/typeobj.rst:1685 msgid "" "If the instances of this type have a dictionary containing instance " "variables, this field is non-zero and contains the offset in the instances " @@ -2353,13 +2462,13 @@ msgid "" "func:`PyObject_GenericGetAttr`." msgstr "" -#: c-api/typeobj.rst:1598 +#: c-api/typeobj.rst:1690 msgid "" "Do not confuse this field with :c:member:`~PyTypeObject.tp_dict`; that is " "the dictionary for attributes of the type object itself." msgstr "" -#: c-api/typeobj.rst:1601 +#: c-api/typeobj.rst:1693 msgid "" "If the value of this field is greater than zero, it specifies the offset " "from the start of the instance structure. If the value is less than zero, " @@ -2375,13 +2484,13 @@ msgid "" "the very end of the structure." msgstr "" -#: c-api/typeobj.rst:1613 +#: c-api/typeobj.rst:1705 msgid "" "The real dictionary offset in an instance can be computed from a negative :c:" "member:`~PyTypeObject.tp_dictoffset` as follows::" msgstr "" -#: c-api/typeobj.rst:1620 +#: c-api/typeobj.rst:1712 msgid "" "where :c:member:`~PyTypeObject.tp_basicsize`, :c:member:`~PyTypeObject." "tp_itemsize` and :c:member:`~PyTypeObject.tp_dictoffset` are taken from the " @@ -2391,7 +2500,7 @@ msgid "" "it is done for you by :c:func:`_PyObject_GetDictPtr`.)" msgstr "" -#: c-api/typeobj.rst:1628 +#: c-api/typeobj.rst:1720 msgid "" "This field is inherited by subtypes, but see the rules listed below. A " "subtype may override this offset; this means that the subtype instances " @@ -2400,7 +2509,7 @@ msgid "" "should not be a problem." msgstr "" -#: c-api/typeobj.rst:1633 +#: c-api/typeobj.rst:1725 msgid "" "When a type defined by a class statement has no :attr:`~object.__slots__` " "declaration, and none of its base types has an instance variable dictionary, " @@ -2408,14 +2517,14 @@ msgid "" "`~PyTypeObject.tp_dictoffset` is set to that slot's offset." msgstr "" -#: c-api/typeobj.rst:1638 +#: c-api/typeobj.rst:1730 msgid "" "When a type defined by a class statement has a :attr:`__slots__` " "declaration, the type inherits its :c:member:`~PyTypeObject.tp_dictoffset` " "from its base type." msgstr "" -#: c-api/typeobj.rst:1641 +#: c-api/typeobj.rst:1733 msgid "" "(Adding a slot named :attr:`~object.__dict__` to the :attr:`__slots__` " "declaration does not have the expected effect, it just causes confusion. " @@ -2423,17 +2532,17 @@ msgid "" "though.)" msgstr "" -#: c-api/typeobj.rst:1647 +#: c-api/typeobj.rst:1739 msgid "" -"This slot has no default. For static types, if the field is ``NULL`` then " -"no :attr:`__dict__` gets created for instances." +"This slot has no default. For :ref:`static types `, if the " +"field is ``NULL`` then no :attr:`__dict__` gets created for instances." msgstr "" -#: c-api/typeobj.rst:1653 +#: c-api/typeobj.rst:1745 msgid "An optional pointer to an instance initialization function." msgstr "" -#: c-api/typeobj.rst:1655 +#: c-api/typeobj.rst:1747 msgid "" "This function corresponds to the :meth:`__init__` method of classes. Like :" "meth:`__init__`, it is possible to create an instance without calling :meth:" @@ -2441,14 +2550,14 @@ msgid "" "meth:`__init__` method again." msgstr "" -#: c-api/typeobj.rst:1664 +#: c-api/typeobj.rst:1756 msgid "" "The self argument is the instance to be initialized; the *args* and *kwds* " "arguments represent positional and keyword arguments of the call to :meth:" "`__init__`." msgstr "" -#: c-api/typeobj.rst:1668 +#: c-api/typeobj.rst:1760 msgid "" "The :c:member:`~PyTypeObject.tp_init` function, if not ``NULL``, is called " "when an instance is created normally by calling its type, after the type's :" @@ -2460,42 +2569,43 @@ msgid "" "subtype's :c:member:`~PyTypeObject.tp_init` is called." msgstr "" -#: c-api/typeobj.rst:1675 +#: c-api/typeobj.rst:1767 msgid "Returns ``0`` on success, ``-1`` and sets an exception on error." msgstr "" -#: c-api/typeobj.rst:1683 -msgid "For static types this field does not have a default." +#: c-api/typeobj.rst:1775 +msgid "" +"For :ref:`static types ` this field does not have a default." msgstr "" -#: c-api/typeobj.rst:1688 +#: c-api/typeobj.rst:1780 msgid "An optional pointer to an instance allocation function." msgstr "" -#: c-api/typeobj.rst:1696 +#: c-api/typeobj.rst:1788 msgid "" "This field is inherited by static subtypes, but not by dynamic subtypes " "(subtypes created by a class statement)." msgstr "" -#: c-api/typeobj.rst:1701 +#: c-api/typeobj.rst:1793 msgid "" "For dynamic subtypes, this field is always set to :c:func:" "`PyType_GenericAlloc`, to force a standard heap allocation strategy." msgstr "" -#: c-api/typeobj.rst:1705 +#: c-api/typeobj.rst:1797 msgid "" "For static subtypes, :c:type:`PyBaseObject_Type` uses :c:func:" "`PyType_GenericAlloc`. That is the recommended value for all statically " "defined types." msgstr "" -#: c-api/typeobj.rst:1712 +#: c-api/typeobj.rst:1804 msgid "An optional pointer to an instance creation function." msgstr "" -#: c-api/typeobj.rst:1718 +#: c-api/typeobj.rst:1810 msgid "" "The *subtype* argument is the type of the object being created; the *args* " "and *kwds* arguments represent positional and keyword arguments of the call " @@ -2504,7 +2614,7 @@ msgid "" "that type (but not an unrelated type)." msgstr "" -#: c-api/typeobj.rst:1724 +#: c-api/typeobj.rst:1816 msgid "" "The :c:member:`~PyTypeObject.tp_new` function should call ``subtype-" ">tp_alloc(subtype, nitems)`` to allocate space for the object, and then do " @@ -2516,54 +2626,60 @@ msgid "" "be deferred to :c:member:`~PyTypeObject.tp_init`." msgstr "" -#: c-api/typeobj.rst:1734 +#: c-api/typeobj.rst:1824 msgid "" -"This field is inherited by subtypes, except it is not inherited by static " -"types whose :c:member:`~PyTypeObject.tp_base` is ``NULL`` or " -"``&PyBaseObject_Type``." +"Set the :const:`Py_TPFLAGS_DISALLOW_INSTANTIATION` flag to disallow creating " +"instances of the type in Python." msgstr "" -#: c-api/typeobj.rst:1739 +#: c-api/typeobj.rst:1829 msgid "" -"For static types this field has no default. This means if the slot is " -"defined as ``NULL``, the type cannot be called to create new instances; " -"presumably there is some other way to create instances, like a factory " -"function." +"This field is inherited by subtypes, except it is not inherited by :ref:" +"`static types ` whose :c:member:`~PyTypeObject.tp_base` is " +"``NULL`` or ``&PyBaseObject_Type``." msgstr "" -#: c-api/typeobj.rst:1747 +#: c-api/typeobj.rst:1835 +msgid "" +"For :ref:`static types ` this field has no default. This means " +"if the slot is defined as ``NULL``, the type cannot be called to create new " +"instances; presumably there is some other way to create instances, like a " +"factory function." +msgstr "" + +#: c-api/typeobj.rst:1843 msgid "" "An optional pointer to an instance deallocation function. Its signature is::" msgstr "" -#: c-api/typeobj.rst:1751 +#: c-api/typeobj.rst:1847 msgid "" "An initializer that is compatible with this signature is :c:func:" "`PyObject_Free`." msgstr "" -#: c-api/typeobj.rst:1755 +#: c-api/typeobj.rst:1851 msgid "" "This field is inherited by static subtypes, but not by dynamic subtypes " "(subtypes created by a class statement)" msgstr "" -#: c-api/typeobj.rst:1760 +#: c-api/typeobj.rst:1856 msgid "" "In dynamic subtypes, this field is set to a deallocator suitable to match :c:" "func:`PyType_GenericAlloc` and the value of the :const:`Py_TPFLAGS_HAVE_GC` " "flag bit." msgstr "" -#: c-api/typeobj.rst:1764 +#: c-api/typeobj.rst:1860 msgid "For static subtypes, :c:type:`PyBaseObject_Type` uses PyObject_Del." msgstr "" -#: c-api/typeobj.rst:1769 +#: c-api/typeobj.rst:1865 msgid "An optional pointer to a function called by the garbage collector." msgstr "" -#: c-api/typeobj.rst:1771 +#: c-api/typeobj.rst:1867 msgid "" "The garbage collector needs to know whether a particular object is " "collectible or not. Normally, it is sufficient to look at the object's " @@ -2575,74 +2691,74 @@ msgid "" "instance. The signature is::" msgstr "" -#: c-api/typeobj.rst:1781 +#: c-api/typeobj.rst:1877 msgid "" "(The only example of this are types themselves. The metatype, :c:data:" -"`PyType_Type`, defines this function to distinguish between statically and " -"dynamically allocated types.)" +"`PyType_Type`, defines this function to distinguish between statically and :" +"ref:`dynamically allocated types `.)" msgstr "" -#: c-api/typeobj.rst:1791 +#: c-api/typeobj.rst:1887 msgid "" "This slot has no default. If this field is ``NULL``, :const:" "`Py_TPFLAGS_HAVE_GC` is used as the functional equivalent." msgstr "" -#: c-api/typeobj.rst:1797 +#: c-api/typeobj.rst:1893 msgid "Tuple of base types." msgstr "" -#: c-api/typeobj.rst:1799 +#: c-api/typeobj.rst:1895 msgid "" "This is set for types created by a class statement. It should be ``NULL`` " "for statically defined types." msgstr "" -#: c-api/typeobj.rst:1825 c-api/typeobj.rst:1844 c-api/typeobj.rst:1858 +#: c-api/typeobj.rst:1921 c-api/typeobj.rst:1940 c-api/typeobj.rst:1954 msgid "This field is not inherited." msgstr "" -#: c-api/typeobj.rst:1809 +#: c-api/typeobj.rst:1905 msgid "" "Tuple containing the expanded set of base types, starting with the type " "itself and ending with :class:`object`, in Method Resolution Order." msgstr "" -#: c-api/typeobj.rst:1815 +#: c-api/typeobj.rst:1911 msgid "" "This field is not inherited; it is calculated fresh by :c:func:" "`PyType_Ready`." msgstr "" -#: c-api/typeobj.rst:1821 +#: c-api/typeobj.rst:1917 msgid "Unused. Internal use only." msgstr "" -#: c-api/typeobj.rst:1830 +#: c-api/typeobj.rst:1926 msgid "List of weak references to subclasses. Internal use only." msgstr "" -#: c-api/typeobj.rst:1839 +#: c-api/typeobj.rst:1935 msgid "" "Weak reference list head, for weak references to this type object. Not " "inherited. Internal use only." msgstr "" -#: c-api/typeobj.rst:1849 +#: c-api/typeobj.rst:1945 msgid "" "This field is deprecated. Use :c:member:`~PyTypeObject.tp_finalize` instead." msgstr "" -#: c-api/typeobj.rst:1854 +#: c-api/typeobj.rst:1950 msgid "Used to index into the method cache. Internal use only." msgstr "" -#: c-api/typeobj.rst:1863 +#: c-api/typeobj.rst:1959 msgid "" "An optional pointer to an instance finalization function. Its signature is::" msgstr "" -#: c-api/typeobj.rst:1867 +#: c-api/typeobj.rst:1963 msgid "" "If :c:member:`~PyTypeObject.tp_finalize` is set, the interpreter calls it " "once when finalizing an instance. It is called either from the garbage " @@ -2652,24 +2768,24 @@ msgid "" "object in a sane state." msgstr "" -#: c-api/typeobj.rst:1874 +#: c-api/typeobj.rst:1970 msgid "" ":c:member:`~PyTypeObject.tp_finalize` should not mutate the current " "exception status; therefore, a recommended way to write a non-trivial " "finalizer is::" msgstr "" -#: c-api/typeobj.rst:1891 +#: c-api/typeobj.rst:1987 msgid "" "For this field to be taken into account (even through inheritance), you must " "also set the :const:`Py_TPFLAGS_HAVE_FINALIZE` flags bit." msgstr "" -#: c-api/typeobj.rst:1900 +#: c-api/typeobj.rst:1996 msgid "\"Safe object finalization\" (:pep:`442`)" msgstr "" -#: c-api/typeobj.rst:1905 +#: c-api/typeobj.rst:2001 msgid "" "Vectorcall function to use for calls of this type object. In other words, it " "is used to implement :ref:`vectorcall ` for ``type.__call__``. " @@ -2677,15 +2793,15 @@ msgid "" "attr:`__new__` and :attr:`__init__` is used." msgstr "" -#: c-api/typeobj.rst:1913 +#: c-api/typeobj.rst:2009 msgid "This field is never inherited." msgstr "" -#: c-api/typeobj.rst:1915 +#: c-api/typeobj.rst:2011 msgid "(the field exists since 3.8 but it's only used since 3.9)" msgstr "" -#: c-api/typeobj.rst:1918 +#: c-api/typeobj.rst:2014 msgid "" "Also, note that, in a garbage collected Python, :c:member:`~PyTypeObject." "tp_dealloc` may be called from any Python thread, not just the thread which " @@ -2698,77 +2814,83 @@ msgid "" "which called tp_dealloc will not violate any assumptions of the library." msgstr "" -#: c-api/typeobj.rst:1932 -msgid "Heap Types" +#: c-api/typeobj.rst:2028 +msgid "Static Types" msgstr "" -#: c-api/typeobj.rst:1934 +#: c-api/typeobj.rst:2030 msgid "" "Traditionally, types defined in C code are *static*, that is, a static :c:" "type:`PyTypeObject` structure is defined directly in code and initialized " "using :c:func:`PyType_Ready`." msgstr "" -#: c-api/typeobj.rst:1938 +#: c-api/typeobj.rst:2034 msgid "" "This results in types that are limited relative to types defined in Python:" msgstr "" -#: c-api/typeobj.rst:1940 +#: c-api/typeobj.rst:2036 msgid "" "Static types are limited to one base, i.e. they cannot use multiple " "inheritance." msgstr "" -#: c-api/typeobj.rst:1942 +#: c-api/typeobj.rst:2038 msgid "" "Static type objects (but not necessarily their instances) are immutable. It " "is not possible to add or modify the type object's attributes from Python." msgstr "" -#: c-api/typeobj.rst:1944 +#: c-api/typeobj.rst:2040 msgid "" "Static type objects are shared across :ref:`sub-interpreters `, so they should not include any subinterpreter-" "specific state." msgstr "" -#: c-api/typeobj.rst:1948 +#: c-api/typeobj.rst:2044 msgid "" "Also, since :c:type:`PyTypeObject` is not part of the :ref:`stable ABI " "`, any extension modules using static types must be compiled for a " "specific Python minor version." msgstr "" -#: c-api/typeobj.rst:1952 +#: c-api/typeobj.rst:2052 +msgid "Heap Types" +msgstr "" + +#: c-api/typeobj.rst:2054 msgid "" -"An alternative to static types is *heap-allocated types*, or *heap types* " -"for short, which correspond closely to classes created by Python's ``class`` " -"statement." +"An alternative to :ref:`static types ` is *heap-allocated " +"types*, or *heap types* for short, which correspond closely to classes " +"created by Python's ``class`` statement. Heap types have the :const:" +"`Py_TPFLAGS_HEAPTYPE` flag set." msgstr "" -#: c-api/typeobj.rst:1956 +#: c-api/typeobj.rst:2059 msgid "" "This is done by filling a :c:type:`PyType_Spec` structure and calling :c:" -"func:`PyType_FromSpecWithBases`." +"func:`PyType_FromSpec`, :c:func:`PyType_FromSpecWithBases`, or :c:func:" +"`PyType_FromModuleAndSpec`." msgstr "" -#: c-api/typeobj.rst:1963 +#: c-api/typeobj.rst:2067 msgid "Number Object Structures" msgstr "" -#: c-api/typeobj.rst:1970 +#: c-api/typeobj.rst:2074 msgid "" "This structure holds pointers to the functions which an object uses to " "implement the number protocol. Each function is used by the function of " "similar name documented in the :ref:`number` section." msgstr "" -#: c-api/typeobj.rst:2300 +#: c-api/typeobj.rst:2404 msgid "Here is the structure definition::" msgstr "" -#: c-api/typeobj.rst:2023 +#: c-api/typeobj.rst:2127 msgid "" "Binary and ternary functions must check the type of all their operands, and " "implement the necessary conversions (at least one of the operands is an " @@ -2778,30 +2900,30 @@ msgid "" "and set an exception." msgstr "" -#: c-api/typeobj.rst:2032 +#: c-api/typeobj.rst:2136 msgid "" "The :c:data:`nb_reserved` field should always be ``NULL``. It was " "previously called :c:data:`nb_long`, and was renamed in Python 3.0.1." msgstr "" -#: c-api/typeobj.rst:2077 +#: c-api/typeobj.rst:2181 msgid "Mapping Object Structures" msgstr "" -#: c-api/typeobj.rst:2084 +#: c-api/typeobj.rst:2188 msgid "" "This structure holds pointers to the functions which an object uses to " "implement the mapping protocol. It has three members:" msgstr "" -#: c-api/typeobj.rst:2089 +#: c-api/typeobj.rst:2193 msgid "" "This function is used by :c:func:`PyMapping_Size` and :c:func:" "`PyObject_Size`, and has the same signature. This slot may be set to " "``NULL`` if the object has no defined length." msgstr "" -#: c-api/typeobj.rst:2095 +#: c-api/typeobj.rst:2199 msgid "" "This function is used by :c:func:`PyObject_GetItem` and :c:func:" "`PySequence_GetSlice`, and has the same signature as :c:func:`!" @@ -2809,7 +2931,7 @@ msgid "" "`PyMapping_Check` function to return ``1``, it can be ``NULL`` otherwise." msgstr "" -#: c-api/typeobj.rst:2103 +#: c-api/typeobj.rst:2207 msgid "" "This function is used by :c:func:`PyObject_SetItem`, :c:func:" "`PyObject_DelItem`, :c:func:`PyObject_SetSlice` and :c:func:" @@ -2819,17 +2941,17 @@ msgid "" "deletion." msgstr "" -#: c-api/typeobj.rst:2114 +#: c-api/typeobj.rst:2218 msgid "Sequence Object Structures" msgstr "" -#: c-api/typeobj.rst:2121 +#: c-api/typeobj.rst:2225 msgid "" "This structure holds pointers to the functions which an object uses to " "implement the sequence protocol." msgstr "" -#: c-api/typeobj.rst:2126 +#: c-api/typeobj.rst:2230 msgid "" "This function is used by :c:func:`PySequence_Size` and :c:func:" "`PyObject_Size`, and has the same signature. It is also used for handling " @@ -2837,21 +2959,21 @@ msgid "" "member:`~PySequenceMethods.sq_ass_item` slots." msgstr "" -#: c-api/typeobj.rst:2133 +#: c-api/typeobj.rst:2237 msgid "" "This function is used by :c:func:`PySequence_Concat` and has the same " "signature. It is also used by the ``+`` operator, after trying the numeric " "addition via the :c:member:`~PyNumberMethods.nb_add` slot." msgstr "" -#: c-api/typeobj.rst:2139 +#: c-api/typeobj.rst:2243 msgid "" "This function is used by :c:func:`PySequence_Repeat` and has the same " "signature. It is also used by the ``*`` operator, after trying numeric " "multiplication via the :c:member:`~PyNumberMethods.nb_multiply` slot." msgstr "" -#: c-api/typeobj.rst:2145 +#: c-api/typeobj.rst:2249 msgid "" "This function is used by :c:func:`PySequence_GetItem` and has the same " "signature. It is also used by :c:func:`PyObject_GetItem`, after trying the " @@ -2860,7 +2982,7 @@ msgid "" "``1``, it can be ``NULL`` otherwise." msgstr "" -#: c-api/typeobj.rst:2151 +#: c-api/typeobj.rst:2255 msgid "" "Negative indexes are handled as follows: if the :attr:`sq_length` slot is " "filled, it is called and the sequence length is used to compute a positive " @@ -2868,7 +2990,7 @@ msgid "" "the index is passed as is to the function." msgstr "" -#: c-api/typeobj.rst:2158 +#: c-api/typeobj.rst:2262 msgid "" "This function is used by :c:func:`PySequence_SetItem` and has the same " "signature. It is also used by :c:func:`PyObject_SetItem` and :c:func:" @@ -2877,14 +2999,14 @@ msgid "" "``NULL`` if the object does not support item assignment and deletion." msgstr "" -#: c-api/typeobj.rst:2167 +#: c-api/typeobj.rst:2271 msgid "" "This function may be used by :c:func:`PySequence_Contains` and has the same " "signature. This slot may be left to ``NULL``, in this case :c:func:`!" "PySequence_Contains` simply traverses the sequence until it finds a match." msgstr "" -#: c-api/typeobj.rst:2174 +#: c-api/typeobj.rst:2278 msgid "" "This function is used by :c:func:`PySequence_InPlaceConcat` and has the same " "signature. It should modify its first operand, and return it. This slot " @@ -2894,7 +3016,7 @@ msgid "" "c:member:`~PyNumberMethods.nb_inplace_add` slot." msgstr "" -#: c-api/typeobj.rst:2183 +#: c-api/typeobj.rst:2287 msgid "" "This function is used by :c:func:`PySequence_InPlaceRepeat` and has the same " "signature. It should modify its first operand, and return it. This slot " @@ -2904,70 +3026,70 @@ msgid "" "via the :c:member:`~PyNumberMethods.nb_inplace_multiply` slot." msgstr "" -#: c-api/typeobj.rst:2194 +#: c-api/typeobj.rst:2298 msgid "Buffer Object Structures" msgstr "" -#: c-api/typeobj.rst:2202 +#: c-api/typeobj.rst:2306 msgid "" "This structure holds pointers to the functions required by the :ref:`Buffer " "protocol `. The protocol defines how an exporter object can " "expose its internal data to consumer objects." msgstr "" -#: c-api/typeobj.rst:2257 c-api/typeobj.rst:2321 c-api/typeobj.rst:2332 +#: c-api/typeobj.rst:2361 c-api/typeobj.rst:2426 c-api/typeobj.rst:2446 msgid "The signature of this function is::" msgstr "" -#: c-api/typeobj.rst:2212 +#: c-api/typeobj.rst:2316 msgid "" "Handle a request to *exporter* to fill in *view* as specified by *flags*. " "Except for point (3), an implementation of this function MUST take these " "steps:" msgstr "" -#: c-api/typeobj.rst:2216 +#: c-api/typeobj.rst:2320 msgid "" "Check if the request can be met. If not, raise :c:data:`PyExc_BufferError`, " "set :c:data:`view->obj` to ``NULL`` and return ``-1``." msgstr "" -#: c-api/typeobj.rst:2219 +#: c-api/typeobj.rst:2323 msgid "Fill in the requested fields." msgstr "" -#: c-api/typeobj.rst:2221 +#: c-api/typeobj.rst:2325 msgid "Increment an internal counter for the number of exports." msgstr "" -#: c-api/typeobj.rst:2223 +#: c-api/typeobj.rst:2327 msgid "" "Set :c:data:`view->obj` to *exporter* and increment :c:data:`view->obj`." msgstr "" -#: c-api/typeobj.rst:2225 +#: c-api/typeobj.rst:2329 msgid "Return ``0``." msgstr "" -#: c-api/typeobj.rst:2227 +#: c-api/typeobj.rst:2331 msgid "" "If *exporter* is part of a chain or tree of buffer providers, two main " "schemes can be used:" msgstr "" -#: c-api/typeobj.rst:2230 +#: c-api/typeobj.rst:2334 msgid "" "Re-export: Each member of the tree acts as the exporting object and sets :c:" "data:`view->obj` to a new reference to itself." msgstr "" -#: c-api/typeobj.rst:2233 +#: c-api/typeobj.rst:2337 msgid "" "Redirect: The buffer request is redirected to the root object of the tree. " "Here, :c:data:`view->obj` will be a new reference to the root object." msgstr "" -#: c-api/typeobj.rst:2237 +#: c-api/typeobj.rst:2341 msgid "" "The individual fields of *view* are described in section :ref:`Buffer " "structure `, the rules how an exporter must react to " @@ -2975,7 +3097,7 @@ msgid "" "types>`." msgstr "" -#: c-api/typeobj.rst:2242 +#: c-api/typeobj.rst:2346 msgid "" "All memory pointed to in the :c:type:`Py_buffer` structure belongs to the " "exporter and must remain valid until there are no consumers left. :c:member:" @@ -2984,19 +3106,19 @@ msgid "" "internal` are read-only for the consumer." msgstr "" -#: c-api/typeobj.rst:2249 +#: c-api/typeobj.rst:2353 msgid "" ":c:func:`PyBuffer_FillInfo` provides an easy way of exposing a simple bytes " "buffer while dealing correctly with all request types." msgstr "" -#: c-api/typeobj.rst:2252 +#: c-api/typeobj.rst:2356 msgid "" ":c:func:`PyObject_GetBuffer` is the interface for the consumer that wraps " "this function." msgstr "" -#: c-api/typeobj.rst:2261 +#: c-api/typeobj.rst:2365 msgid "" "Handle a request to release the resources of the buffer. If no resources " "need to be released, :c:member:`PyBufferProcs.bf_releasebuffer` may be " @@ -3004,15 +3126,15 @@ msgid "" "these optional steps:" msgstr "" -#: c-api/typeobj.rst:2266 +#: c-api/typeobj.rst:2370 msgid "Decrement an internal counter for the number of exports." msgstr "" -#: c-api/typeobj.rst:2268 +#: c-api/typeobj.rst:2372 msgid "If the counter is ``0``, free all memory associated with *view*." msgstr "" -#: c-api/typeobj.rst:2270 +#: c-api/typeobj.rst:2374 msgid "" "The exporter MUST use the :c:member:`~Py_buffer.internal` field to keep " "track of buffer-specific resources. This field is guaranteed to remain " @@ -3020,62 +3142,67 @@ msgid "" "*view* argument." msgstr "" -#: c-api/typeobj.rst:2276 +#: c-api/typeobj.rst:2380 msgid "" "This function MUST NOT decrement :c:data:`view->obj`, since that is done " "automatically in :c:func:`PyBuffer_Release` (this scheme is useful for " "breaking reference cycles)." msgstr "" -#: c-api/typeobj.rst:2281 +#: c-api/typeobj.rst:2385 msgid "" ":c:func:`PyBuffer_Release` is the interface for the consumer that wraps this " "function." msgstr "" -#: c-api/typeobj.rst:2289 +#: c-api/typeobj.rst:2393 msgid "Async Object Structures" msgstr "" -#: c-api/typeobj.rst:2297 +#: c-api/typeobj.rst:2401 msgid "" "This structure holds pointers to the functions required to implement :term:" "`awaitable` and :term:`asynchronous iterator` objects." msgstr "" -#: c-api/typeobj.rst:2314 +#: c-api/typeobj.rst:2419 msgid "" "The returned object must be an iterator, i.e. :c:func:`PyIter_Check` must " "return ``1`` for it." msgstr "" -#: c-api/typeobj.rst:2317 +#: c-api/typeobj.rst:2422 msgid "" "This slot may be set to ``NULL`` if an object is not an :term:`awaitable`." msgstr "" -#: c-api/typeobj.rst:2325 +#: c-api/typeobj.rst:2430 msgid "" "Must return an :term:`awaitable` object. See :meth:`__anext__` for details." msgstr "" -#: c-api/typeobj.rst:2327 +#: c-api/typeobj.rst:2432 msgid "" "This slot may be set to ``NULL`` if an object does not implement " "asynchronous iteration protocol." msgstr "" -#: c-api/typeobj.rst:2336 +#: c-api/typeobj.rst:2441 msgid "" "Must return an :term:`awaitable` object. See :meth:`__anext__` for details. " "This slot may be set to ``NULL``." msgstr "" -#: c-api/typeobj.rst:2343 +#: c-api/typeobj.rst:2450 +msgid "" +"See :c:func:`PyIter_Send` for details. This slot may be set to ``NULL``." +msgstr "" + +#: c-api/typeobj.rst:2459 msgid "Slot Type typedefs" msgstr "" -#: c-api/typeobj.rst:2347 +#: c-api/typeobj.rst:2463 msgid "" "The purpose of this function is to separate memory allocation from memory " "initialization. It should return a pointer to a block of memory of adequate " @@ -3089,76 +3216,80 @@ msgid "" "member:`~PyTypeObject.tp_basicsize`." msgstr "" -#: c-api/typeobj.rst:2357 +#: c-api/typeobj.rst:2473 msgid "" "This function should not do any other instance initialization, not even to " "allocate additional memory; that should be done by :c:member:`~PyTypeObject." "tp_new`." msgstr "" -#: c-api/typeobj.rst:2364 +#: c-api/typeobj.rst:2480 msgid "See :c:member:`~PyTypeObject.tp_free`." msgstr "" -#: c-api/typeobj.rst:2368 +#: c-api/typeobj.rst:2484 msgid "See :c:member:`~PyTypeObject.tp_new`." msgstr "" -#: c-api/typeobj.rst:2372 +#: c-api/typeobj.rst:2488 msgid "See :c:member:`~PyTypeObject.tp_init`." msgstr "" -#: c-api/typeobj.rst:2376 +#: c-api/typeobj.rst:2492 msgid "See :c:member:`~PyTypeObject.tp_repr`." msgstr "" -#: c-api/typeobj.rst:2389 +#: c-api/typeobj.rst:2505 msgid "Return the value of the named attribute for the object." msgstr "" -#: c-api/typeobj.rst:2395 +#: c-api/typeobj.rst:2511 msgid "" "Set the value of the named attribute for the object. The value argument is " "set to ``NULL`` to delete the attribute." msgstr "" -#: c-api/typeobj.rst:2391 +#: c-api/typeobj.rst:2507 msgid "See :c:member:`~PyTypeObject.tp_getattro`." msgstr "" -#: c-api/typeobj.rst:2398 +#: c-api/typeobj.rst:2514 msgid "See :c:member:`~PyTypeObject.tp_setattro`." msgstr "" -#: c-api/typeobj.rst:2402 +#: c-api/typeobj.rst:2518 msgid "See :c:member:`~PyTypeObject.tp_descrget`." msgstr "" -#: c-api/typeobj.rst:2406 +#: c-api/typeobj.rst:2522 msgid "See :c:member:`~PyTypeObject.tp_descrset`." msgstr "" -#: c-api/typeobj.rst:2410 +#: c-api/typeobj.rst:2526 msgid "See :c:member:`~PyTypeObject.tp_hash`." msgstr "" -#: c-api/typeobj.rst:2414 +#: c-api/typeobj.rst:2530 msgid "See :c:member:`~PyTypeObject.tp_richcompare`." msgstr "" -#: c-api/typeobj.rst:2418 +#: c-api/typeobj.rst:2534 msgid "See :c:member:`~PyTypeObject.tp_iter`." msgstr "" -#: c-api/typeobj.rst:2422 +#: c-api/typeobj.rst:2538 msgid "See :c:member:`~PyTypeObject.tp_iternext`." msgstr "" -#: c-api/typeobj.rst:2448 +#: c-api/typeobj.rst:2552 +msgid "See :c:member:`~PyAsyncMethods.am_send`." +msgstr "" + +#: c-api/typeobj.rst:2568 msgid "Examples" msgstr "Exemples" -#: c-api/typeobj.rst:2450 +#: c-api/typeobj.rst:2570 msgid "" "The following are simple examples of Python type definitions. They include " "common usage you may encounter. Some demonstrate tricky corner cases. For " @@ -3166,30 +3297,34 @@ msgid "" "and :ref:`new-types-topics`." msgstr "" -#: c-api/typeobj.rst:2455 -msgid "A basic static type::" +#: c-api/typeobj.rst:2575 +msgid "A basic :ref:`static type `::" msgstr "" -#: c-api/typeobj.rst:2472 +#: c-api/typeobj.rst:2592 msgid "" "You may also find older code (especially in the CPython code base) with a " "more verbose initializer::" msgstr "" -#: c-api/typeobj.rst:2516 +#: c-api/typeobj.rst:2636 msgid "A type that supports weakrefs, instance dicts, and hashing::" msgstr "" -#: c-api/typeobj.rst:2543 +#: c-api/typeobj.rst:2663 msgid "" "A str subclass that cannot be subclassed and cannot be called to create " -"instances (e.g. uses a separate factory func)::" +"instances (e.g. uses a separate factory func) using :c:data:" +"`Py_TPFLAGS_DISALLOW_INSTANTIATION` flag::" msgstr "" -#: c-api/typeobj.rst:2562 -msgid "The simplest static type (with fixed-length instances)::" +#: c-api/typeobj.rst:2682 +msgid "" +"The simplest :ref:`static type ` with fixed-length instances::" msgstr "" -#: c-api/typeobj.rst:2573 -msgid "The simplest static type (with variable-length instances)::" +#: c-api/typeobj.rst:2693 +msgid "" +"The simplest :ref:`static type ` with variable-length " +"instances::" msgstr "" diff --git a/c-api/unicode.po b/c-api/unicode.po index 3093ad98d..37ca35fa8 100644 --- a/c-api/unicode.po +++ b/c-api/unicode.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-10-04 12:27+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -217,7 +217,7 @@ msgid "" "Unicode object (not checked)." msgstr "" -#: c-api/unicode.rst:228 c-api/unicode.rst:772 +#: c-api/unicode.rst:228 c-api/unicode.rst:756 msgid "" "Part of the old-style Unicode API, please migrate to using :c:func:" "`PyUnicode_GET_LENGTH`." @@ -895,27 +895,27 @@ msgid "" "functions." msgstr "" -#: c-api/unicode.rst:748 +#: c-api/unicode.rst:746 msgid "" "Part of the old-style Unicode API, please migrate to using :c:func:" "`PyUnicode_AsUCS4`, :c:func:`PyUnicode_AsWideChar`, :c:func:" "`PyUnicode_ReadChar` or similar new APIs." msgstr "" -#: c-api/unicode.rst:726 +#: c-api/unicode.rst:724 msgid "" "Create a Unicode object by replacing all decimal digits in :c:type:" "`Py_UNICODE` buffer of the given *size* by ASCII digits 0--9 according to " "their decimal value. Return ``NULL`` if an exception occurs." msgstr "" -#: c-api/unicode.rst:732 +#: c-api/unicode.rst:730 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`Py_UNICODE_TODECIMAL`." msgstr "" -#: c-api/unicode.rst:737 +#: c-api/unicode.rst:735 msgid "" "Like :c:func:`PyUnicode_AsUnicode`, but also saves the :c:func:`Py_UNICODE` " "array length (excluding the extra null terminator) in *size*. Note that the " @@ -924,50 +924,35 @@ msgid "" "functions." msgstr "" -#: c-api/unicode.rst:753 -msgid "" -"Create a copy of a Unicode string ending with a null code point. Return " -"``NULL`` and raise a :exc:`MemoryError` exception on memory allocation " -"failure, otherwise return a new allocated buffer (use :c:func:`PyMem_Free` " -"to free the buffer). Note that the resulting :c:type:`Py_UNICODE*` string " -"may contain embedded null code points, which would cause the string to be " -"truncated when used in most C functions." -msgstr "" - -#: c-api/unicode.rst:762 -msgid "" -"Please migrate to using :c:func:`PyUnicode_AsUCS4Copy` or similar new APIs." -msgstr "" - -#: c-api/unicode.rst:767 +#: c-api/unicode.rst:751 msgid "" "Return the size of the deprecated :c:type:`Py_UNICODE` representation, in " "code units (this includes surrogate pairs as 2 units)." msgstr "" -#: c-api/unicode.rst:777 +#: c-api/unicode.rst:761 msgid "" "Copy an instance of a Unicode subtype to a new true Unicode object if " "necessary. If *obj* is already a true Unicode object (not a subtype), return " "the reference with incremented refcount." msgstr "" -#: c-api/unicode.rst:781 +#: c-api/unicode.rst:765 msgid "" "Objects other than Unicode or its subtypes will cause a :exc:`TypeError`." msgstr "" -#: c-api/unicode.rst:785 +#: c-api/unicode.rst:769 msgid "Locale Encoding" msgstr "" -#: c-api/unicode.rst:787 +#: c-api/unicode.rst:771 msgid "" "The current locale encoding can be used to decode text from the operating " "system." msgstr "" -#: c-api/unicode.rst:794 +#: c-api/unicode.rst:778 msgid "" "Decode a string from UTF-8 on Android and VxWorks, or from the current " "locale encoding on other platforms. The supported error handlers are ``" @@ -976,22 +961,22 @@ msgid "" "null character but cannot contain embedded null characters." msgstr "" -#: c-api/unicode.rst:801 +#: c-api/unicode.rst:785 msgid "" "Use :c:func:`PyUnicode_DecodeFSDefaultAndSize` to decode a string from :c:" "data:`Py_FileSystemDefaultEncoding` (the locale encoding read at Python " "startup)." msgstr "" -#: c-api/unicode.rst:841 -msgid "This function ignores the Python UTF-8 mode." +#: c-api/unicode.rst:825 +msgid "This function ignores the :ref:`Python UTF-8 Mode `." msgstr "" -#: c-api/unicode.rst:913 +#: c-api/unicode.rst:896 msgid "The :c:func:`Py_DecodeLocale` function." msgstr "" -#: c-api/unicode.rst:813 +#: c-api/unicode.rst:797 msgid "" "The function now also uses the current locale encoding for the " "``surrogateescape`` error handler, except on Android. Previously, :c:func:" @@ -999,13 +984,13 @@ msgid "" "locale encoding was used for ``strict``." msgstr "" -#: c-api/unicode.rst:822 +#: c-api/unicode.rst:806 msgid "" "Similar to :c:func:`PyUnicode_DecodeLocaleAndSize`, but compute the string " "length using :c:func:`strlen`." msgstr "" -#: c-api/unicode.rst:830 +#: c-api/unicode.rst:814 msgid "" "Encode a Unicode object to UTF-8 on Android and VxWorks, or to the current " "locale encoding on other platforms. The supported error handlers are ``" @@ -1014,17 +999,17 @@ msgid "" "object. *unicode* cannot contain embedded null characters." msgstr "" -#: c-api/unicode.rst:837 +#: c-api/unicode.rst:821 msgid "" "Use :c:func:`PyUnicode_EncodeFSDefault` to encode a string to :c:data:" "`Py_FileSystemDefaultEncoding` (the locale encoding read at Python startup)." msgstr "" -#: c-api/unicode.rst:949 +#: c-api/unicode.rst:932 msgid "The :c:func:`Py_EncodeLocale` function." msgstr "" -#: c-api/unicode.rst:849 +#: c-api/unicode.rst:833 msgid "" "The function now also uses the current locale encoding for the " "``surrogateescape`` error handler, except on Android. Previously, :c:func:" @@ -1032,11 +1017,11 @@ msgid "" "locale encoding was used for ``strict``." msgstr "" -#: c-api/unicode.rst:858 +#: c-api/unicode.rst:842 msgid "File System Encoding" msgstr "" -#: c-api/unicode.rst:860 +#: c-api/unicode.rst:844 msgid "" "To encode and decode file names and other environment strings, :c:data:" "`Py_FileSystemDefaultEncoding` should be used as the encoding, and :c:data:" @@ -1046,7 +1031,7 @@ msgid "" "`PyUnicode_FSConverter` as the conversion function:" msgstr "" -#: c-api/unicode.rst:869 +#: c-api/unicode.rst:853 msgid "" "ParseTuple converter: encode :class:`str` objects -- obtained directly or " "through the :class:`os.PathLike` interface -- to :class:`bytes` using :c:" @@ -1055,18 +1040,18 @@ msgid "" "is no longer used." msgstr "" -#: c-api/unicode.rst:894 +#: c-api/unicode.rst:878 msgid "Accepts a :term:`path-like object`." msgstr "Accepte un :term:`path-like object`." -#: c-api/unicode.rst:880 +#: c-api/unicode.rst:864 msgid "" "To decode file names to :class:`str` during argument parsing, the ``\"O&\"`` " "converter should be used, passing :c:func:`PyUnicode_FSDecoder` as the " "conversion function:" msgstr "" -#: c-api/unicode.rst:886 +#: c-api/unicode.rst:870 msgid "" "ParseTuple converter: decode :class:`bytes` objects -- obtained either " "directly or indirectly through the :class:`os.PathLike` interface -- to :" @@ -1075,19 +1060,17 @@ msgid "" "which must be released when it is no longer used." msgstr "" -#: c-api/unicode.rst:900 -msgid "" -"Decode a string using :c:data:`Py_FileSystemDefaultEncoding` and the :c:data:" -"`Py_FileSystemDefaultEncodeErrors` error handler." +#: c-api/unicode.rst:884 +msgid "Decode a string from the :term:`filesystem encoding and error handler`." msgstr "" -#: c-api/unicode.rst:924 c-api/unicode.rst:940 +#: c-api/unicode.rst:907 c-api/unicode.rst:923 msgid "" "If :c:data:`Py_FileSystemDefaultEncoding` is not set, fall back to the " "locale encoding." msgstr "" -#: c-api/unicode.rst:906 +#: c-api/unicode.rst:889 msgid "" ":c:data:`Py_FileSystemDefaultEncoding` is initialized at startup from the " "locale encoding and cannot be modified later. If you need to decode a string " @@ -1095,22 +1078,22 @@ msgid "" "`PyUnicode_DecodeLocaleAndSize`." msgstr "" -#: c-api/unicode.rst:929 c-api/unicode.rst:953 +#: c-api/unicode.rst:912 c-api/unicode.rst:936 msgid "Use :c:data:`Py_FileSystemDefaultEncodeErrors` error handler." msgstr "" -#: c-api/unicode.rst:921 +#: c-api/unicode.rst:904 msgid "" -"Decode a null-terminated string using :c:data:`Py_FileSystemDefaultEncoding` " -"and the :c:data:`Py_FileSystemDefaultEncodeErrors` error handler." +"Decode a null-terminated string from the :term:`filesystem encoding and " +"error handler`." msgstr "" -#: c-api/unicode.rst:927 +#: c-api/unicode.rst:910 msgid "" "Use :c:func:`PyUnicode_DecodeFSDefaultAndSize` if you know the string length." msgstr "" -#: c-api/unicode.rst:935 +#: c-api/unicode.rst:918 msgid "" "Encode a Unicode object to :c:data:`Py_FileSystemDefaultEncoding` with the :" "c:data:`Py_FileSystemDefaultEncodeErrors` error handler, and return :class:" @@ -1118,29 +1101,29 @@ msgid "" "bytes." msgstr "" -#: c-api/unicode.rst:943 +#: c-api/unicode.rst:926 msgid "" ":c:data:`Py_FileSystemDefaultEncoding` is initialized at startup from the " "locale encoding and cannot be modified later. If you need to encode a string " "to the current locale encoding, use :c:func:`PyUnicode_EncodeLocale`." msgstr "" -#: c-api/unicode.rst:957 +#: c-api/unicode.rst:940 msgid "wchar_t Support" msgstr "" -#: c-api/unicode.rst:959 +#: c-api/unicode.rst:942 msgid ":c:type:`wchar_t` support for platforms which support it:" msgstr "" -#: c-api/unicode.rst:963 +#: c-api/unicode.rst:946 msgid "" "Create a Unicode object from the :c:type:`wchar_t` buffer *w* of the given " "*size*. Passing ``-1`` as the *size* indicates that the function must itself " "compute the length, using wcslen. Return ``NULL`` on failure." msgstr "" -#: c-api/unicode.rst:971 +#: c-api/unicode.rst:954 msgid "" "Copy the Unicode object contents into the :c:type:`wchar_t` buffer *w*. At " "most *size* :c:type:`wchar_t` characters are copied (excluding a possibly " @@ -1153,7 +1136,7 @@ msgid "" "would cause the string to be truncated when used with most C functions." msgstr "" -#: c-api/unicode.rst:984 +#: c-api/unicode.rst:967 msgid "" "Convert the Unicode object to a wide character string. The output string " "always ends with a null character. If *size* is not ``NULL``, write the " @@ -1164,7 +1147,7 @@ msgid "" "`wchar_t*` string contains null characters a :exc:`ValueError` is raised." msgstr "" -#: c-api/unicode.rst:992 +#: c-api/unicode.rst:975 msgid "" "Returns a buffer allocated by :c:func:`PyMem_Alloc` (use :c:func:" "`PyMem_Free` to free it) on success. On error, returns ``NULL`` and *" @@ -1172,30 +1155,30 @@ msgid "" "failed." msgstr "" -#: c-api/unicode.rst:999 +#: c-api/unicode.rst:982 msgid "" "Raises a :exc:`ValueError` if *size* is ``NULL`` and the :c:type:`wchar_t*` " "string contains null characters." msgstr "" -#: c-api/unicode.rst:1007 +#: c-api/unicode.rst:990 msgid "Built-in Codecs" msgstr "" -#: c-api/unicode.rst:1009 +#: c-api/unicode.rst:992 msgid "" "Python provides a set of built-in codecs which are written in C for speed. " "All of these codecs are directly usable via the following functions." msgstr "" -#: c-api/unicode.rst:1012 +#: c-api/unicode.rst:995 msgid "" "Many of the following APIs take two arguments encoding and errors, and they " "have the same semantics as the ones of the built-in :func:`str` string " "object constructor." msgstr "" -#: c-api/unicode.rst:1016 +#: c-api/unicode.rst:999 msgid "" "Setting encoding to ``NULL`` causes the default encoding to be used which is " "UTF-8. The file system calls should use :c:func:`PyUnicode_FSConverter` for " @@ -1206,28 +1189,28 @@ msgid "" "setlocale)." msgstr "" -#: c-api/unicode.rst:1024 +#: c-api/unicode.rst:1007 msgid "" "Error handling is set by errors which may also be set to ``NULL`` meaning to " "use the default handling defined for the codec. Default error handling for " "all built-in codecs is \"strict\" (:exc:`ValueError` is raised)." msgstr "" -#: c-api/unicode.rst:1028 +#: c-api/unicode.rst:1011 msgid "" "The codecs all use a similar interface. Only deviation from the following " "generic ones are documented for simplicity." msgstr "" -#: c-api/unicode.rst:1033 +#: c-api/unicode.rst:1016 msgid "Generic Codecs" msgstr "" -#: c-api/unicode.rst:1035 +#: c-api/unicode.rst:1018 msgid "These are the generic codec APIs:" msgstr "" -#: c-api/unicode.rst:1041 +#: c-api/unicode.rst:1024 msgid "" "Create a Unicode object by decoding *size* bytes of the encoded string *s*. " "*encoding* and *errors* have the same meaning as the parameters of the same " @@ -1236,7 +1219,7 @@ msgid "" "raised by the codec." msgstr "" -#: c-api/unicode.rst:1051 +#: c-api/unicode.rst:1034 msgid "" "Encode a Unicode object and return the result as Python bytes object. " "*encoding* and *errors* have the same meaning as the parameters of the same " @@ -1245,7 +1228,7 @@ msgid "" "was raised by the codec." msgstr "" -#: c-api/unicode.rst:1061 +#: c-api/unicode.rst:1044 msgid "" "Encode the :c:type:`Py_UNICODE` buffer *s* of the given *size* and return a " "Python bytes object. *encoding* and *errors* have the same meaning as the " @@ -1254,27 +1237,27 @@ msgid "" "``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1326 +#: c-api/unicode.rst:1312 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsEncodedString`." msgstr "" -#: c-api/unicode.rst:1073 +#: c-api/unicode.rst:1056 msgid "UTF-8 Codecs" msgstr "" -#: c-api/unicode.rst:1075 +#: c-api/unicode.rst:1058 msgid "These are the UTF-8 codec APIs:" msgstr "" -#: c-api/unicode.rst:1080 +#: c-api/unicode.rst:1063 msgid "" "Create a Unicode object by decoding *size* bytes of the UTF-8 encoded string " "*s*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1087 +#: c-api/unicode.rst:1070 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF8`. If " "*consumed* is not ``NULL``, trailing incomplete UTF-8 byte sequences will " @@ -1282,14 +1265,14 @@ msgid "" "of bytes that have been decoded will be stored in *consumed*." msgstr "" -#: c-api/unicode.rst:1095 +#: c-api/unicode.rst:1078 msgid "" "Encode a Unicode object using UTF-8 and return the result as Python bytes " "object. Error handling is \"strict\". Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1102 +#: c-api/unicode.rst:1085 msgid "" "Return a pointer to the UTF-8 encoding of the Unicode object, and store the " "size of the encoded representation (in bytes) in *size*. The *size* " @@ -1298,63 +1281,67 @@ msgid "" "regardless of whether there are any other null code points." msgstr "" -#: c-api/unicode.rst:1108 +#: c-api/unicode.rst:1091 msgid "" "In the case of an error, ``NULL`` is returned with an exception set and no " "*size* is stored." msgstr "" -#: c-api/unicode.rst:1111 +#: c-api/unicode.rst:1094 msgid "" "This caches the UTF-8 representation of the string in the Unicode object, " "and subsequent calls will return a pointer to the same buffer. The caller " "is not responsible for deallocating the buffer." msgstr "" -#: c-api/unicode.rst:1127 +#: c-api/unicode.rst:1113 msgid "The return type is now ``const char *`` rather of ``char *``." msgstr "" -#: c-api/unicode.rst:1123 +#: c-api/unicode.rst:1103 +msgid "This function is a part of the :ref:`limited API `." +msgstr "" + +#: c-api/unicode.rst:1109 msgid "As :c:func:`PyUnicode_AsUTF8AndSize`, but does not store the size." msgstr "" -#: c-api/unicode.rst:1133 +#: c-api/unicode.rst:1119 msgid "" "Encode the :c:type:`Py_UNICODE` buffer *s* of the given *size* using UTF-8 " "and return a Python bytes object. Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1140 +#: c-api/unicode.rst:1126 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsUTF8String`, :c:func:`PyUnicode_AsUTF8AndSize` or :c:func:" "`PyUnicode_AsEncodedString`." msgstr "" -#: c-api/unicode.rst:1144 +#: c-api/unicode.rst:1130 msgid "UTF-32 Codecs" msgstr "" -#: c-api/unicode.rst:1146 +#: c-api/unicode.rst:1132 msgid "These are the UTF-32 codec APIs:" msgstr "" -#: c-api/unicode.rst:1152 +#: c-api/unicode.rst:1138 msgid "" "Decode *size* bytes from a UTF-32 encoded buffer string and return the " "corresponding Unicode object. *errors* (if non-``NULL``) defines the error " "handling. It defaults to \"strict\"." msgstr "" -#: c-api/unicode.rst:1229 +#: c-api/unicode.rst:1215 msgid "" "If *byteorder* is non-``NULL``, the decoder starts decoding using the given " "byte order::" msgstr "" -#: c-api/unicode.rst:1163 +#: c-api/unicode.rst:1149 msgid "" "If ``*byteorder`` is zero, and the first four bytes of the input data are a " "byte order mark (BOM), the decoder switches to this byte order and the BOM " @@ -1362,21 +1349,21 @@ msgid "" "``-1`` or ``1``, any byte order mark is copied to the output." msgstr "" -#: c-api/unicode.rst:1242 +#: c-api/unicode.rst:1228 msgid "" "After completion, *\\*byteorder* is set to the current byte order at the end " "of input data." msgstr "" -#: c-api/unicode.rst:1245 +#: c-api/unicode.rst:1231 msgid "If *byteorder* is ``NULL``, the codec starts in native order mode." msgstr "" -#: c-api/unicode.rst:1209 c-api/unicode.rst:1284 +#: c-api/unicode.rst:1195 c-api/unicode.rst:1270 msgid "Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1179 +#: c-api/unicode.rst:1165 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF32`. If " "*consumed* is not ``NULL``, :c:func:`PyUnicode_DecodeUTF32Stateful` will not " @@ -1385,53 +1372,53 @@ msgid "" "number of bytes that have been decoded will be stored in *consumed*." msgstr "" -#: c-api/unicode.rst:1188 +#: c-api/unicode.rst:1174 msgid "" "Return a Python byte string using the UTF-32 encoding in native byte order. " "The string always starts with a BOM mark. Error handling is \"strict\". " "Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1196 +#: c-api/unicode.rst:1182 msgid "" "Return a Python bytes object holding the UTF-32 encoded value of the Unicode " "data in *s*. Output is written according to the following byte order::" msgstr "" -#: c-api/unicode.rst:1277 +#: c-api/unicode.rst:1263 msgid "" "If byteorder is ``0``, the output string will always start with the Unicode " "BOM mark (U+FEFF). In the other two modes, no BOM mark is prepended." msgstr "" -#: c-api/unicode.rst:1206 +#: c-api/unicode.rst:1192 msgid "" "If ``Py_UNICODE_WIDE`` is not defined, surrogate pairs will be output as a " "single code point." msgstr "" -#: c-api/unicode.rst:1213 +#: c-api/unicode.rst:1199 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsUTF32String` or :c:func:`PyUnicode_AsEncodedString`." msgstr "" -#: c-api/unicode.rst:1217 +#: c-api/unicode.rst:1203 msgid "UTF-16 Codecs" msgstr "" -#: c-api/unicode.rst:1219 +#: c-api/unicode.rst:1205 msgid "These are the UTF-16 codec APIs:" msgstr "" -#: c-api/unicode.rst:1225 +#: c-api/unicode.rst:1211 msgid "" "Decode *size* bytes from a UTF-16 encoded buffer string and return the " "corresponding Unicode object. *errors* (if non-``NULL``) defines the error " "handling. It defaults to \"strict\"." msgstr "" -#: c-api/unicode.rst:1236 +#: c-api/unicode.rst:1222 msgid "" "If ``*byteorder`` is zero, and the first two bytes of the input data are a " "byte order mark (BOM), the decoder switches to this byte order and the BOM " @@ -1440,7 +1427,7 @@ msgid "" "result in either a ``\\ufeff`` or a ``\\ufffe`` character)." msgstr "" -#: c-api/unicode.rst:1253 +#: c-api/unicode.rst:1239 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF16`. If " "*consumed* is not ``NULL``, :c:func:`PyUnicode_DecodeUTF16Stateful` will not " @@ -1450,47 +1437,47 @@ msgid "" "*consumed*." msgstr "" -#: c-api/unicode.rst:1262 +#: c-api/unicode.rst:1248 msgid "" "Return a Python byte string using the UTF-16 encoding in native byte order. " "The string always starts with a BOM mark. Error handling is \"strict\". " "Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1270 +#: c-api/unicode.rst:1256 msgid "" "Return a Python bytes object holding the UTF-16 encoded value of the Unicode " "data in *s*. Output is written according to the following byte order::" msgstr "" -#: c-api/unicode.rst:1280 +#: c-api/unicode.rst:1266 msgid "" "If ``Py_UNICODE_WIDE`` is defined, a single :c:type:`Py_UNICODE` value may " "get represented as a surrogate pair. If it is not defined, each :c:type:" "`Py_UNICODE` values is interpreted as a UCS-2 character." msgstr "" -#: c-api/unicode.rst:1288 +#: c-api/unicode.rst:1274 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsUTF16String` or :c:func:`PyUnicode_AsEncodedString`." msgstr "" -#: c-api/unicode.rst:1292 +#: c-api/unicode.rst:1278 msgid "UTF-7 Codecs" msgstr "" -#: c-api/unicode.rst:1294 +#: c-api/unicode.rst:1280 msgid "These are the UTF-7 codec APIs:" msgstr "" -#: c-api/unicode.rst:1299 +#: c-api/unicode.rst:1285 msgid "" "Create a Unicode object by decoding *size* bytes of the UTF-7 encoded string " "*s*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1306 +#: c-api/unicode.rst:1292 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeUTF7`. If " "*consumed* is not ``NULL``, trailing incomplete UTF-7 base-64 sections will " @@ -1498,14 +1485,14 @@ msgid "" "of bytes that have been decoded will be stored in *consumed*." msgstr "" -#: c-api/unicode.rst:1315 +#: c-api/unicode.rst:1301 msgid "" "Encode the :c:type:`Py_UNICODE` buffer of the given size using UTF-7 and " "return a Python bytes object. Return ``NULL`` if an exception was raised by " "the codec." msgstr "" -#: c-api/unicode.rst:1319 +#: c-api/unicode.rst:1305 msgid "" "If *base64SetO* is nonzero, \"Set O\" (punctuation that has no otherwise " "special meaning) will be encoded in base-64. If *base64WhiteSpace* is " @@ -1513,152 +1500,152 @@ msgid "" "the Python \"utf-7\" codec." msgstr "" -#: c-api/unicode.rst:1330 +#: c-api/unicode.rst:1316 msgid "Unicode-Escape Codecs" msgstr "" -#: c-api/unicode.rst:1332 +#: c-api/unicode.rst:1318 msgid "These are the \"Unicode Escape\" codec APIs:" msgstr "" -#: c-api/unicode.rst:1338 +#: c-api/unicode.rst:1324 msgid "" "Create a Unicode object by decoding *size* bytes of the Unicode-Escape " "encoded string *s*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1344 +#: c-api/unicode.rst:1330 msgid "" "Encode a Unicode object using Unicode-Escape and return the result as a " "bytes object. Error handling is \"strict\". Return ``NULL`` if an " "exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1351 +#: c-api/unicode.rst:1337 msgid "" "Encode the :c:type:`Py_UNICODE` buffer of the given *size* using Unicode-" "Escape and return a bytes object. Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1356 +#: c-api/unicode.rst:1342 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsUnicodeEscapeString`." msgstr "" -#: c-api/unicode.rst:1360 +#: c-api/unicode.rst:1346 msgid "Raw-Unicode-Escape Codecs" msgstr "" -#: c-api/unicode.rst:1362 +#: c-api/unicode.rst:1348 msgid "These are the \"Raw Unicode Escape\" codec APIs:" msgstr "" -#: c-api/unicode.rst:1368 +#: c-api/unicode.rst:1354 msgid "" "Create a Unicode object by decoding *size* bytes of the Raw-Unicode-Escape " "encoded string *s*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1374 +#: c-api/unicode.rst:1360 msgid "" "Encode a Unicode object using Raw-Unicode-Escape and return the result as a " "bytes object. Error handling is \"strict\". Return ``NULL`` if an " "exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1382 +#: c-api/unicode.rst:1368 msgid "" "Encode the :c:type:`Py_UNICODE` buffer of the given *size* using Raw-Unicode-" "Escape and return a bytes object. Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1388 +#: c-api/unicode.rst:1374 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsRawUnicodeEscapeString` or :c:func:" "`PyUnicode_AsEncodedString`." msgstr "" -#: c-api/unicode.rst:1392 +#: c-api/unicode.rst:1378 msgid "Latin-1 Codecs" msgstr "" -#: c-api/unicode.rst:1394 +#: c-api/unicode.rst:1380 msgid "" "These are the Latin-1 codec APIs: Latin-1 corresponds to the first 256 " "Unicode ordinals and only these are accepted by the codecs during encoding." msgstr "" -#: c-api/unicode.rst:1400 +#: c-api/unicode.rst:1386 msgid "" "Create a Unicode object by decoding *size* bytes of the Latin-1 encoded " "string *s*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1406 +#: c-api/unicode.rst:1392 msgid "" "Encode a Unicode object using Latin-1 and return the result as Python bytes " "object. Error handling is \"strict\". Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1413 +#: c-api/unicode.rst:1399 msgid "" "Encode the :c:type:`Py_UNICODE` buffer of the given *size* using Latin-1 and " "return a Python bytes object. Return ``NULL`` if an exception was raised by " "the codec." msgstr "" -#: c-api/unicode.rst:1420 +#: c-api/unicode.rst:1406 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsLatin1String` or :c:func:`PyUnicode_AsEncodedString`." msgstr "" -#: c-api/unicode.rst:1424 +#: c-api/unicode.rst:1410 msgid "ASCII Codecs" msgstr "" -#: c-api/unicode.rst:1426 +#: c-api/unicode.rst:1412 msgid "" "These are the ASCII codec APIs. Only 7-bit ASCII data is accepted. All " "other codes generate errors." msgstr "" -#: c-api/unicode.rst:1432 +#: c-api/unicode.rst:1418 msgid "" "Create a Unicode object by decoding *size* bytes of the ASCII encoded string " "*s*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1438 +#: c-api/unicode.rst:1424 msgid "" "Encode a Unicode object using ASCII and return the result as Python bytes " "object. Error handling is \"strict\". Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1445 +#: c-api/unicode.rst:1431 msgid "" "Encode the :c:type:`Py_UNICODE` buffer of the given *size* using ASCII and " "return a Python bytes object. Return ``NULL`` if an exception was raised by " "the codec." msgstr "" -#: c-api/unicode.rst:1452 +#: c-api/unicode.rst:1438 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsASCIIString` or :c:func:`PyUnicode_AsEncodedString`." msgstr "" -#: c-api/unicode.rst:1456 +#: c-api/unicode.rst:1442 msgid "Character Map Codecs" msgstr "" -#: c-api/unicode.rst:1458 +#: c-api/unicode.rst:1444 msgid "" "This codec is special in that it can be used to implement many different " "codecs (and this is in fact what was done to obtain most of the standard " @@ -1668,18 +1655,18 @@ msgid "" "well." msgstr "" -#: c-api/unicode.rst:1464 +#: c-api/unicode.rst:1450 msgid "These are the mapping codec APIs:" msgstr "" -#: c-api/unicode.rst:1469 +#: c-api/unicode.rst:1455 msgid "" "Create a Unicode object by decoding *size* bytes of the encoded string *s* " "using the given *mapping* object. Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1473 +#: c-api/unicode.rst:1459 msgid "" "If *mapping* is ``NULL``, Latin-1 decoding will be applied. Else *mapping* " "must map bytes ordinals (integers in the range from 0 to 255) to Unicode " @@ -1689,14 +1676,14 @@ msgid "" "treated as undefined mappings and cause an error." msgstr "" -#: c-api/unicode.rst:1484 +#: c-api/unicode.rst:1470 msgid "" "Encode a Unicode object using the given *mapping* object and return the " "result as a bytes object. Error handling is \"strict\". Return ``NULL`` if " "an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1488 +#: c-api/unicode.rst:1474 msgid "" "The *mapping* object must map Unicode ordinal integers to bytes objects, " "integers in the range from 0 to 255 or ``None``. Unmapped character " @@ -1704,68 +1691,68 @@ msgid "" "``None`` are treated as \"undefined mapping\" and cause an error." msgstr "" -#: c-api/unicode.rst:1497 +#: c-api/unicode.rst:1483 msgid "" "Encode the :c:type:`Py_UNICODE` buffer of the given *size* using the given " "*mapping* object and return the result as a bytes object. Return ``NULL`` " "if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1504 +#: c-api/unicode.rst:1490 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsCharmapString` or :c:func:`PyUnicode_AsEncodedString`." msgstr "" -#: c-api/unicode.rst:1507 +#: c-api/unicode.rst:1493 msgid "The following codec API is special in that maps Unicode to Unicode." msgstr "" -#: c-api/unicode.rst:1511 +#: c-api/unicode.rst:1497 msgid "" "Translate a string by applying a character mapping table to it and return " "the resulting Unicode object. Return ``NULL`` if an exception was raised by " "the codec." msgstr "" -#: c-api/unicode.rst:1515 +#: c-api/unicode.rst:1501 msgid "" "The mapping table must map Unicode ordinal integers to Unicode ordinal " "integers or ``None`` (causing deletion of the character)." msgstr "" -#: c-api/unicode.rst:1518 +#: c-api/unicode.rst:1504 msgid "" "Mapping tables need only provide the :meth:`__getitem__` interface; " "dictionaries and sequences work well. Unmapped character ordinals (ones " "which cause a :exc:`LookupError`) are left untouched and are copied as-is." msgstr "" -#: c-api/unicode.rst:1522 +#: c-api/unicode.rst:1508 msgid "" "*errors* has the usual meaning for codecs. It may be ``NULL`` which " "indicates to use the default error handling." msgstr "" -#: c-api/unicode.rst:1529 +#: c-api/unicode.rst:1515 msgid "" "Translate a :c:type:`Py_UNICODE` buffer of the given *size* by applying a " "character *mapping* table to it and return the resulting Unicode object. " "Return ``NULL`` when an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1536 +#: c-api/unicode.rst:1522 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_Translate`. or :ref:`generic codec based API `" msgstr "" -#: c-api/unicode.rst:1540 +#: c-api/unicode.rst:1526 msgid "MBCS codecs for Windows" msgstr "" -#: c-api/unicode.rst:1542 +#: c-api/unicode.rst:1528 msgid "" "These are the MBCS codec APIs. They are currently only available on Windows " "and use the Win32 MBCS converters to implement the conversions. Note that " @@ -1773,13 +1760,13 @@ msgid "" "is defined by the user settings on the machine running the codec." msgstr "" -#: c-api/unicode.rst:1549 +#: c-api/unicode.rst:1535 msgid "" "Create a Unicode object by decoding *size* bytes of the MBCS encoded string " "*s*. Return ``NULL`` if an exception was raised by the codec." msgstr "" -#: c-api/unicode.rst:1556 +#: c-api/unicode.rst:1542 msgid "" "If *consumed* is ``NULL``, behave like :c:func:`PyUnicode_DecodeMBCS`. If " "*consumed* is not ``NULL``, :c:func:`PyUnicode_DecodeMBCSStateful` will not " @@ -1787,58 +1774,58 @@ msgid "" "will be stored in *consumed*." msgstr "" -#: c-api/unicode.rst:1564 +#: c-api/unicode.rst:1550 msgid "" "Encode a Unicode object using MBCS and return the result as Python bytes " "object. Error handling is \"strict\". Return ``NULL`` if an exception was " "raised by the codec." msgstr "" -#: c-api/unicode.rst:1571 +#: c-api/unicode.rst:1557 msgid "" "Encode the Unicode object using the specified code page and return a Python " "bytes object. Return ``NULL`` if an exception was raised by the codec. Use :" "c:data:`CP_ACP` code page to get the MBCS encoder." msgstr "" -#: c-api/unicode.rst:1580 +#: c-api/unicode.rst:1566 msgid "" "Encode the :c:type:`Py_UNICODE` buffer of the given *size* using MBCS and " "return a Python bytes object. Return ``NULL`` if an exception was raised by " "the codec." msgstr "" -#: c-api/unicode.rst:1587 +#: c-api/unicode.rst:1573 msgid "" "Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using :c:" "func:`PyUnicode_AsMBCSString`, :c:func:`PyUnicode_EncodeCodePage` or :c:func:" "`PyUnicode_AsEncodedString`." msgstr "" -#: c-api/unicode.rst:1591 +#: c-api/unicode.rst:1577 msgid "Methods & Slots" msgstr "" -#: c-api/unicode.rst:1597 +#: c-api/unicode.rst:1583 msgid "Methods and Slot Functions" msgstr "" -#: c-api/unicode.rst:1599 +#: c-api/unicode.rst:1585 msgid "" "The following APIs are capable of handling Unicode objects and strings on " "input (we refer to them as strings in the descriptions) and return Unicode " "objects or integers as appropriate." msgstr "" -#: c-api/unicode.rst:1603 +#: c-api/unicode.rst:1589 msgid "They all return ``NULL`` or ``-1`` if an exception occurs." msgstr "" -#: c-api/unicode.rst:1608 +#: c-api/unicode.rst:1594 msgid "Concat two strings giving a new Unicode string." msgstr "" -#: c-api/unicode.rst:1613 +#: c-api/unicode.rst:1599 msgid "" "Split a string giving a list of Unicode strings. If *sep* is ``NULL``, " "splitting will be done at all whitespace substrings. Otherwise, splits " @@ -1847,27 +1834,27 @@ msgid "" "list." msgstr "" -#: c-api/unicode.rst:1621 +#: c-api/unicode.rst:1607 msgid "" "Split a Unicode string at line breaks, returning a list of Unicode strings. " "CRLF is considered to be one line break. If *keepend* is ``0``, the Line " "break characters are not included in the resulting strings." msgstr "" -#: c-api/unicode.rst:1628 +#: c-api/unicode.rst:1614 msgid "" "Join a sequence of strings using the given *separator* and return the " "resulting Unicode string." msgstr "" -#: c-api/unicode.rst:1635 +#: c-api/unicode.rst:1621 msgid "" "Return ``1`` if *substr* matches ``str[start:end]`` at the given tail end " "(*direction* == ``-1`` means to do a prefix match, *direction* == ``1`` a " "suffix match), ``0`` otherwise. Return ``-1`` if an error occurred." msgstr "" -#: c-api/unicode.rst:1643 +#: c-api/unicode.rst:1629 msgid "" "Return the first position of *substr* in ``str[start:end]`` using the given " "*direction* (*direction* == ``1`` means to do a forward search, *direction* " @@ -1876,7 +1863,7 @@ msgid "" "indicates that an error occurred and an exception has been set." msgstr "" -#: c-api/unicode.rst:1653 +#: c-api/unicode.rst:1639 msgid "" "Return the first position of the character *ch* in ``str[start:end]`` using " "the given *direction* (*direction* == ``1`` means to do a forward search, " @@ -1885,36 +1872,36 @@ msgid "" "``-2`` indicates that an error occurred and an exception has been set." msgstr "" -#: c-api/unicode.rst:1661 +#: c-api/unicode.rst:1647 msgid "*start* and *end* are now adjusted to behave like ``str[start:end]``." msgstr "" -#: c-api/unicode.rst:1668 +#: c-api/unicode.rst:1654 msgid "" "Return the number of non-overlapping occurrences of *substr* in ``str[start:" "end]``. Return ``-1`` if an error occurred." msgstr "" -#: c-api/unicode.rst:1675 +#: c-api/unicode.rst:1661 msgid "" "Replace at most *maxcount* occurrences of *substr* in *str* with *replstr* " "and return the resulting Unicode object. *maxcount* == ``-1`` means replace " "all occurrences." msgstr "" -#: c-api/unicode.rst:1682 +#: c-api/unicode.rst:1668 msgid "" "Compare two strings and return ``-1``, ``0``, ``1`` for less than, equal, " "and greater than, respectively." msgstr "" -#: c-api/unicode.rst:1685 +#: c-api/unicode.rst:1671 msgid "" "This function returns ``-1`` upon failure, so one should call :c:func:" "`PyErr_Occurred` to check for errors." msgstr "" -#: c-api/unicode.rst:1691 +#: c-api/unicode.rst:1677 msgid "" "Compare a Unicode object, *uni*, with *string* and return ``-1``, ``0``, " "``1`` for less than, equal, and greater than, respectively. It is best to " @@ -1922,51 +1909,51 @@ msgid "" "string as ISO-8859-1 if it contains non-ASCII characters." msgstr "" -#: c-api/unicode.rst:1696 +#: c-api/unicode.rst:1682 msgid "This function does not raise exceptions." msgstr "" -#: c-api/unicode.rst:1701 +#: c-api/unicode.rst:1687 msgid "Rich compare two Unicode strings and return one of the following:" msgstr "" -#: c-api/unicode.rst:1703 +#: c-api/unicode.rst:1689 msgid "``NULL`` in case an exception was raised" msgstr "" -#: c-api/unicode.rst:1704 +#: c-api/unicode.rst:1690 msgid ":const:`Py_True` or :const:`Py_False` for successful comparisons" msgstr "" -#: c-api/unicode.rst:1705 +#: c-api/unicode.rst:1691 msgid ":const:`Py_NotImplemented` in case the type combination is unknown" msgstr "" -#: c-api/unicode.rst:1707 +#: c-api/unicode.rst:1693 msgid "" "Possible values for *op* are :const:`Py_GT`, :const:`Py_GE`, :const:" "`Py_EQ`, :const:`Py_NE`, :const:`Py_LT`, and :const:`Py_LE`." msgstr "" -#: c-api/unicode.rst:1713 +#: c-api/unicode.rst:1699 msgid "" "Return a new string object from *format* and *args*; this is analogous to " "``format % args``." msgstr "" -#: c-api/unicode.rst:1719 +#: c-api/unicode.rst:1705 msgid "" "Check whether *element* is contained in *container* and return true or false " "accordingly." msgstr "" -#: c-api/unicode.rst:1722 +#: c-api/unicode.rst:1708 msgid "" "*element* has to coerce to a one element Unicode string. ``-1`` is returned " "if there was an error." msgstr "" -#: c-api/unicode.rst:1728 +#: c-api/unicode.rst:1714 msgid "" "Intern the argument *\\*string* in place. The argument must be the address " "of a pointer variable pointing to a Python Unicode string object. If there " @@ -1979,7 +1966,7 @@ msgid "" "the object after the call if and only if you owned it before the call.)" msgstr "" -#: c-api/unicode.rst:1741 +#: c-api/unicode.rst:1727 msgid "" "A combination of :c:func:`PyUnicode_FromString` and :c:func:" "`PyUnicode_InternInPlace`, returning either a new Unicode string object that " diff --git a/c-api/veryhigh.po b/c-api/veryhigh.po index 0fe7861b5..243e2dc61 100644 --- a/c-api/veryhigh.po +++ b/c-api/veryhigh.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -135,9 +135,9 @@ msgstr "" msgid "" "Similar to :c:func:`PyRun_SimpleStringFlags`, but the Python source code is " "read from *fp* instead of an in-memory string. *filename* should be the name " -"of the file, it is decoded from the filesystem encoding (:func:`sys." -"getfilesystemencoding`). If *closeit* is true, the file is closed before " -"PyRun_SimpleFileExFlags returns." +"of the file, it is decoded from :term:`filesystem encoding and error " +"handler`. If *closeit* is true, the file is closed before " +"``PyRun_SimpleFileExFlags()`` returns." msgstr "" #: c-api/veryhigh.rst:120 @@ -157,8 +157,8 @@ msgstr "" msgid "" "Read and execute a single statement from a file associated with an " "interactive device according to the *flags* argument. The user will be " -"prompted using ``sys.ps1`` and ``sys.ps2``. *filename* is decoded from the " -"filesystem encoding (:func:`sys.getfilesystemencoding`)." +"prompted using ``sys.ps1`` and ``sys.ps2``. *filename* is decoded from the :" +"term:`filesystem encoding and error handler`." msgstr "" #: c-api/veryhigh.rst:137 @@ -180,12 +180,11 @@ msgstr "" msgid "" "Read and execute statements from a file associated with an interactive " "device until EOF is reached. The user will be prompted using ``sys.ps1`` " -"and ``sys.ps2``. *filename* is decoded from the filesystem encoding (:func:" -"`sys.getfilesystemencoding`). Returns ``0`` at EOF or a negative number " -"upon failure." +"and ``sys.ps2``. *filename* is decoded from the :term:`filesystem encoding " +"and error handler`. Returns ``0`` at EOF or a negative number upon failure." msgstr "" -#: c-api/veryhigh.rst:161 +#: c-api/veryhigh.rst:160 msgid "" "Can be set to point to a function with the prototype ``int func(void)``. " "The function will be called when Python's interpreter prompt is about to " @@ -195,7 +194,7 @@ msgid "" "the Python source code." msgstr "" -#: c-api/veryhigh.rst:172 +#: c-api/veryhigh.rst:171 msgid "" "Can be set to point to a function with the prototype ``char *func(FILE " "*stdin, FILE *stdout, char *prompt)``, overriding the default function used " @@ -206,61 +205,26 @@ msgid "" "line-editing and tab-completion features." msgstr "" -#: c-api/veryhigh.rst:181 +#: c-api/veryhigh.rst:180 msgid "" "The result must be a string allocated by :c:func:`PyMem_RawMalloc` or :c:" "func:`PyMem_RawRealloc`, or ``NULL`` if an error occurred." msgstr "" -#: c-api/veryhigh.rst:184 +#: c-api/veryhigh.rst:183 msgid "" "The result must be allocated by :c:func:`PyMem_RawMalloc` or :c:func:" "`PyMem_RawRealloc`, instead of being allocated by :c:func:`PyMem_Malloc` or :" "c:func:`PyMem_Realloc`." msgstr "" -#: c-api/veryhigh.rst:192 -msgid "" -"This is a simplified interface to :c:func:" -"`PyParser_SimpleParseStringFlagsFilename` below, leaving *filename* set to " -"``NULL`` and *flags* set to ``0``." -msgstr "" - -#: c-api/veryhigh.rst:201 -msgid "" -"This is a simplified interface to :c:func:" -"`PyParser_SimpleParseStringFlagsFilename` below, leaving *filename* set to " -"``NULL``." -msgstr "" - -#: c-api/veryhigh.rst:210 -msgid "" -"Parse Python source code from *str* using the start token *start* according " -"to the *flags* argument. The result can be used to create a code object " -"which can be evaluated efficiently. This is useful if a code fragment must " -"be evaluated many times. *filename* is decoded from the filesystem encoding " -"(:func:`sys.getfilesystemencoding`)." -msgstr "" - -#: c-api/veryhigh.rst:221 -msgid "" -"This is a simplified interface to :c:func:`PyParser_SimpleParseFileFlags` " -"below, leaving *flags* set to ``0``." -msgstr "" - -#: c-api/veryhigh.rst:229 -msgid "" -"Similar to :c:func:`PyParser_SimpleParseStringFlagsFilename`, but the Python " -"source code is read from *fp* instead of an in-memory string." -msgstr "" - -#: c-api/veryhigh.rst:237 +#: c-api/veryhigh.rst:190 msgid "" "This is a simplified interface to :c:func:`PyRun_StringFlags` below, leaving " "*flags* set to ``NULL``." msgstr "" -#: c-api/veryhigh.rst:243 +#: c-api/veryhigh.rst:196 msgid "" "Execute Python source code from *str* in the context specified by the " "objects *globals* and *locals* with the compiler flags specified by " @@ -269,52 +233,52 @@ msgid "" "token that should be used to parse the source code." msgstr "" -#: c-api/veryhigh.rst:249 +#: c-api/veryhigh.rst:202 msgid "" "Returns the result of executing the code as a Python object, or ``NULL`` if " "an exception was raised." msgstr "" -#: c-api/veryhigh.rst:255 +#: c-api/veryhigh.rst:208 msgid "" "This is a simplified interface to :c:func:`PyRun_FileExFlags` below, leaving " "*closeit* set to ``0`` and *flags* set to ``NULL``." msgstr "" -#: c-api/veryhigh.rst:261 +#: c-api/veryhigh.rst:214 msgid "" "This is a simplified interface to :c:func:`PyRun_FileExFlags` below, leaving " "*flags* set to ``NULL``." msgstr "" -#: c-api/veryhigh.rst:267 +#: c-api/veryhigh.rst:220 msgid "" "This is a simplified interface to :c:func:`PyRun_FileExFlags` below, leaving " "*closeit* set to ``0``." msgstr "" -#: c-api/veryhigh.rst:273 +#: c-api/veryhigh.rst:226 msgid "" "Similar to :c:func:`PyRun_StringFlags`, but the Python source code is read " "from *fp* instead of an in-memory string. *filename* should be the name of " -"the file, it is decoded from the filesystem encoding (:func:`sys." -"getfilesystemencoding`). If *closeit* is true, the file is closed before :c:" -"func:`PyRun_FileExFlags` returns." +"the file, it is decoded from the :term:`filesystem encoding and error " +"handler`. If *closeit* is true, the file is closed before :c:func:" +"`PyRun_FileExFlags` returns." msgstr "" -#: c-api/veryhigh.rst:282 +#: c-api/veryhigh.rst:235 msgid "" "This is a simplified interface to :c:func:`Py_CompileStringFlags` below, " "leaving *flags* set to ``NULL``." msgstr "" -#: c-api/veryhigh.rst:288 +#: c-api/veryhigh.rst:241 msgid "" "This is a simplified interface to :c:func:`Py_CompileStringExFlags` below, " "with *optimize* set to ``-1``." msgstr "" -#: c-api/veryhigh.rst:294 +#: c-api/veryhigh.rst:247 msgid "" "Parse and compile the Python source code in *str*, returning the resulting " "code object. The start token is given by *start*; this can be used to " @@ -325,7 +289,7 @@ msgid "" "returns ``NULL`` if the code cannot be parsed or compiled." msgstr "" -#: c-api/veryhigh.rst:302 +#: c-api/veryhigh.rst:255 msgid "" "The integer *optimize* specifies the optimization level of the compiler; a " "value of ``-1`` selects the optimization level of the interpreter as given " @@ -334,20 +298,20 @@ msgid "" "or ``2`` (docstrings are removed too)." msgstr "" -#: c-api/veryhigh.rst:313 +#: c-api/veryhigh.rst:266 msgid "" "Like :c:func:`Py_CompileStringObject`, but *filename* is a byte string " -"decoded from the filesystem encoding (:func:`os.fsdecode`)." +"decoded from the :term:`filesystem encoding and error handler`." msgstr "" -#: c-api/veryhigh.rst:320 +#: c-api/veryhigh.rst:273 msgid "" "This is a simplified interface to :c:func:`PyEval_EvalCodeEx`, with just the " "code object, and global and local variables. The other arguments are set to " "``NULL``." msgstr "" -#: c-api/veryhigh.rst:327 +#: c-api/veryhigh.rst:280 msgid "" "Evaluate a precompiled code object, given a particular environment for its " "evaluation. This environment consists of a dictionary of global variables, " @@ -356,7 +320,7 @@ msgid "" "only_parameter>` arguments and a closure tuple of cells." msgstr "" -#: c-api/veryhigh.rst:336 +#: c-api/veryhigh.rst:289 #, fuzzy msgid "" "The C structure of the objects used to describe frame objects. The fields of " @@ -365,13 +329,13 @@ msgstr "" "La structure C utilisée pour décrire les objets *Code*. Les attributs de " "cette structure sont sujets à changer à tout moment." -#: c-api/veryhigh.rst:342 +#: c-api/veryhigh.rst:295 msgid "" "Evaluate an execution frame. This is a simplified interface to :c:func:" "`PyEval_EvalFrameEx`, for backward compatibility." msgstr "" -#: c-api/veryhigh.rst:348 +#: c-api/veryhigh.rst:301 msgid "" "This is the main, unvarnished function of Python interpretation. The code " "object associated with the execution frame *f* is executed, interpreting " @@ -381,7 +345,7 @@ msgid "" "of generator objects." msgstr "" -#: c-api/veryhigh.rst:355 +#: c-api/veryhigh.rst:308 msgid "" "This function now includes a debug assertion to help ensure that it does not " "silently discard an active exception." @@ -389,33 +353,33 @@ msgstr "" "Cette fonction inclut maintenant une assertion de débogage afin d'assurer " "qu'elle ne passe pas sous silence une exception active." -#: c-api/veryhigh.rst:362 +#: c-api/veryhigh.rst:315 msgid "" "This function changes the flags of the current evaluation frame, and returns " "true on success, false on failure." msgstr "" -#: c-api/veryhigh.rst:370 +#: c-api/veryhigh.rst:323 msgid "" "The start symbol from the Python grammar for isolated expressions; for use " "with :c:func:`Py_CompileString`." msgstr "" -#: c-api/veryhigh.rst:378 +#: c-api/veryhigh.rst:331 msgid "" "The start symbol from the Python grammar for sequences of statements as read " "from a file or other source; for use with :c:func:`Py_CompileString`. This " "is the symbol to use when compiling arbitrarily long Python source code." msgstr "" -#: c-api/veryhigh.rst:387 +#: c-api/veryhigh.rst:340 msgid "" "The start symbol from the Python grammar for a single statement; for use " "with :c:func:`Py_CompileString`. This is the symbol used for the interactive " "interpreter loop." msgstr "" -#: c-api/veryhigh.rst:394 +#: c-api/veryhigh.rst:347 msgid "" "This is the structure used to hold compiler flags. In cases where code is " "only being compiled, it is passed as ``int flags``, and in cases where code " @@ -423,34 +387,34 @@ msgid "" "case, ``from __future__ import`` can modify *flags*." msgstr "" -#: c-api/veryhigh.rst:399 +#: c-api/veryhigh.rst:352 msgid "" "Whenever ``PyCompilerFlags *flags`` is ``NULL``, :attr:`cf_flags` is treated " "as equal to ``0``, and any modification due to ``from __future__ import`` is " "discarded." msgstr "" -#: c-api/veryhigh.rst:405 +#: c-api/veryhigh.rst:358 msgid "Compiler flags." msgstr "" -#: c-api/veryhigh.rst:409 +#: c-api/veryhigh.rst:362 msgid "" "*cf_feature_version* is the minor Python version. It should be initialized " "to ``PY_MINOR_VERSION``." msgstr "" -#: c-api/veryhigh.rst:412 +#: c-api/veryhigh.rst:365 msgid "" "The field is ignored by default, it is used if and only if ``PyCF_ONLY_AST`` " "flag is set in *cf_flags*." msgstr "" -#: c-api/veryhigh.rst:415 +#: c-api/veryhigh.rst:368 msgid "Added *cf_feature_version* field." msgstr "" -#: c-api/veryhigh.rst:421 +#: c-api/veryhigh.rst:374 msgid "" "This bit can be set in *flags* to cause division operator ``/`` to be " "interpreted as \"true division\" according to :pep:`238`." diff --git a/c-api/weakref.po b/c-api/weakref.po index 903485d4f..c495ebc40 100644 --- a/c-api/weakref.po +++ b/c-api/weakref.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-03-29 14:17+0100\n" "Last-Translator: Andy Kwok \n" "Language-Team: FRENCH \n" @@ -103,10 +103,12 @@ msgstr "" "référence n'existe plus, alors l'objet renvoie :const:`Py_None`." #: c-api/weakref.rst:61 +#, fuzzy msgid "" -"This function returns a **borrowed reference** to the referenced object. " +"This function returns a :term:`borrowed reference` to the referenced object. " "This means that you should always call :c:func:`Py_INCREF` on the object " -"except if you know that it cannot be destroyed while you are still using it." +"except when it cannot be destroyed before the last usage of the borrowed " +"reference." msgstr "" "Cette fonction renvoie une **référence empruntée** à l'objet référencé. Cela " "signifie que vous devez toujours appeler :c:func:`Py_INCREF` sur l'objet " diff --git a/distributing/index.po b/distributing/index.po index 209183aef..1dce1401f 100644 --- a/distributing/index.po +++ b/distributing/index.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-02-04 09:33+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -226,9 +226,10 @@ msgstr "" "invite de commande ::" #: distributing/index.rst:104 +#, fuzzy msgid "" -"For POSIX users (including Mac OS X and Linux users), these instructions " -"assume the use of a :term:`virtual environment`." +"For POSIX users (including macOS and Linux users), these instructions assume " +"the use of a :term:`virtual environment`." msgstr "" "Pour les utilisateurs d'environnements POSIX (incluant Mac OS X et les " "utilisateurs de Linux), ces instructions supposent l'utilisation d'un :term:" diff --git a/distutils/apiref.po b/distutils/apiref.po index e593d0ccd..60dee00ec 100644 --- a/distutils/apiref.po +++ b/distutils/apiref.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-03-29 15:44+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -368,7 +368,7 @@ msgid "" "*stop_after* tells :func:`setup` when to stop processing; possible values:" msgstr "*stop_after* dit à :func:`setup` quand s'arrêter ; valeurs possibles :" -#: distutils/apiref.rst:562 distutils/apiref.rst:1601 +#: distutils/apiref.rst:562 distutils/apiref.rst:1606 msgid "description" msgstr "description" @@ -2078,8 +2078,9 @@ msgstr "" "platform``." #: distutils/apiref.rst:1122 +#, fuzzy msgid "" -"For Mac OS X systems the OS version reflects the minimal version on which " +"For macOS systems the OS version reflects the minimal version on which " "binaries will run (that is, the value of ``MACOSX_DEPLOYMENT_TARGET`` during " "the build of Python), not the OS version of the current system." msgstr "" @@ -2089,8 +2090,9 @@ msgstr "" "compilation de Python), et non la version du système actuel." #: distutils/apiref.rst:1126 +#, fuzzy msgid "" -"For universal binary builds on Mac OS X the architecture value reflects the " +"For universal binary builds on macOS the architecture value reflects the " "universal binary status instead of the architecture of the current " "processor. For 32-bit universal binaries the architecture is ``fat``, for 64-" "bit universal binaries the architecture is ``fat64``, and for 4-way " @@ -2110,7 +2112,8 @@ msgstr "" "compilation universelle avec les architectures *i386* et *x86_64*" #: distutils/apiref.rst:1135 -msgid "Examples of returned values on Mac OS X:" +#, fuzzy +msgid "Examples of returned values on macOS:" msgstr "Exemples de valeurs renvoyées sous Mac OS X :" #: distutils/apiref.rst:1137 @@ -2643,7 +2646,11 @@ msgstr "" msgid ":mod:`distutils.sysconfig` --- System configuration information" msgstr ":mod:`distutils.sysconfig` — Informations de configuration du système" -#: distutils/apiref.rst:1460 +#: distutils/apiref.rst:1455 +msgid ":mod:`distutils.sysconfig` has been merged into :mod:`sysconfig`." +msgstr "" + +#: distutils/apiref.rst:1462 msgid "" "The :mod:`distutils.sysconfig` module provides access to Python's low-level " "configuration information. The specific configuration variables available " @@ -2665,7 +2672,7 @@ msgstr "" "de Python commençant par 2.2, et :file:`config.h` pour les versions " "antérieures de Python." -#: distutils/apiref.rst:1469 +#: distutils/apiref.rst:1471 msgid "" "Some additional functions are provided which perform some useful " "manipulations for other parts of the :mod:`distutils` package." @@ -2673,15 +2680,15 @@ msgstr "" "Quelques fonctions supplémentaires sont fournies pour effectuer des " "manipulations utiles pour d'autres parties du paquet :mod:`distutils`." -#: distutils/apiref.rst:1475 +#: distutils/apiref.rst:1477 msgid "The result of ``os.path.normpath(sys.prefix)``." msgstr "Le résultat de ``os.path.normpath(sys.prefix)``." -#: distutils/apiref.rst:1480 +#: distutils/apiref.rst:1482 msgid "The result of ``os.path.normpath(sys.exec_prefix)``." msgstr "Le résultat de ``os.path.normpath(sys.exec_prefix)``." -#: distutils/apiref.rst:1485 +#: distutils/apiref.rst:1487 msgid "" "Return the value of a single variable. This is equivalent to " "``get_config_vars().get(name)``." @@ -2689,7 +2696,7 @@ msgstr "" "Renvoie la valeur d'une seule variable. C'est l'équivalent de " "``get_config_vars().get(name)``." -#: distutils/apiref.rst:1491 +#: distutils/apiref.rst:1493 msgid "" "Return a set of variable definitions. If there are no arguments, this " "returns a dictionary mapping names of configuration variables to values. If " @@ -2704,7 +2711,7 @@ msgstr "" "donnant les valeurs correspondantes. Si un nom donné n'a pas de valeur " "correspondante, la valeur ``None`` sera utilisée pour cette variable." -#: distutils/apiref.rst:1500 +#: distutils/apiref.rst:1502 msgid "" "Return the full path name of the configuration header. For Unix, this will " "be the header generated by the :program:`configure` script; for other " @@ -2716,7 +2723,7 @@ msgstr "" "les autres plates-formes, l'en-tête provient directement de la distribution " "source Python. Le fichier est un fichier texte spécifique à la plate-forme." -#: distutils/apiref.rst:1508 +#: distutils/apiref.rst:1510 msgid "" "Return the full path name of the :file:`Makefile` used to build Python. For " "Unix, this will be a file generated by the :program:`configure` script; the " @@ -2729,7 +2736,13 @@ msgstr "" "existe, il s'agit d'un fichier texte spécifique à la plate-forme. Cette " "fonction n'est utile que sur les plates-formes POSIX." -#: distutils/apiref.rst:1516 +#: distutils/apiref.rst:1515 +msgid "" +"The following functions are deprecated together with this module and they " +"have no direct replacement." +msgstr "" + +#: distutils/apiref.rst:1521 msgid "" "Return the directory for either the general or platform-dependent C include " "files. If *plat_specific* is true, the platform-dependent include directory " @@ -2746,7 +2759,7 @@ msgstr "" "`PREFIX`, soit comme préfixe d'exécution au lieu de :const:`EXEC_PREFIX` si " "*plat_specific* est vrai." -#: distutils/apiref.rst:1526 +#: distutils/apiref.rst:1531 msgid "" "Return the directory for either the general or platform-dependent library " "installation. If *plat_specific* is true, the platform-dependent include " @@ -2767,7 +2780,7 @@ msgstr "" "bibliothèque standard est renvoyé plutôt que le répertoire d'installation " "des extensions tierces." -#: distutils/apiref.rst:1535 +#: distutils/apiref.rst:1540 msgid "" "The following function is only intended for use within the :mod:`distutils` " "package." @@ -2775,7 +2788,7 @@ msgstr "" "La fonction suivante est uniquement destinée à être utilisée dans le paquet :" "mod:`distutils`." -#: distutils/apiref.rst:1541 +#: distutils/apiref.rst:1546 msgid "" "Do any platform-specific customization of a :class:`distutils.ccompiler." "CCompiler` instance." @@ -2783,7 +2796,7 @@ msgstr "" "Exécute toute personnalisation spécifique à la plate-forme d'une instance :" "class:`distutils.ccompiler.CCompiler`." -#: distutils/apiref.rst:1544 +#: distutils/apiref.rst:1549 msgid "" "This function is only needed on Unix at this time, but should be called " "consistently to support forward-compatibility. It inserts the information " @@ -2799,7 +2812,7 @@ msgstr "" "liens sélectionnés, ainsi que l'extension utilisée par l'éditeur de liens " "pour les objets partagés." -#: distutils/apiref.rst:1550 +#: distutils/apiref.rst:1555 msgid "" "This function is even more special-purpose, and should only be used from " "Python's own build procedures." @@ -2807,7 +2820,7 @@ msgstr "" "Cette fonction est encore plus spéciale, et ne devrait être utilisée que " "dans les procédures de compilation de Python." -#: distutils/apiref.rst:1556 +#: distutils/apiref.rst:1561 msgid "" "Inform the :mod:`distutils.sysconfig` module that it is being used as part " "of the build process for Python. This changes a lot of relative locations " @@ -2819,11 +2832,11 @@ msgstr "" "relatifs pour les fichiers, ce qui les place dans la zone de compilation " "plutôt que dans un interpréteur Python installé." -#: distutils/apiref.rst:1563 +#: distutils/apiref.rst:1568 msgid ":mod:`distutils.text_file` --- The TextFile class" msgstr ":mod:`distutils.text_file` — La classe TextFile" -#: distutils/apiref.rst:1569 +#: distutils/apiref.rst:1574 msgid "" "This module provides the :class:`TextFile` class, which gives an interface " "to text files that (optionally) takes care of stripping comments, ignoring " @@ -2833,7 +2846,7 @@ msgstr "" "fichiers texte qui s'occupe (optionnellement) de supprimer les commentaires, " "d'ignorer les lignes vides et de joindre les lignes avec des antislashs." -#: distutils/apiref.rst:1576 +#: distutils/apiref.rst:1581 msgid "" "This class provides a file-like object that takes care of all the things " "you commonly want to do when processing a text file that has some line-by-" @@ -2850,7 +2863,7 @@ msgstr "" "ligne, supprimer les blancs avant et après le texte. Toutes ces fonctions " "sont optionnelles et peuvent être commandées indépendamment." -#: distutils/apiref.rst:1583 +#: distutils/apiref.rst:1588 msgid "" "The class provides a :meth:`warn` method so you can generate warning " "messages that report physical line number, even if the logical line in " @@ -2862,7 +2875,7 @@ msgstr "" "logique en question couvre plusieurs lignes physiques. Fournit également :" "meth:`unreadline` pour implémenter un système prospectif ligne par ligne." -#: distutils/apiref.rst:1588 +#: distutils/apiref.rst:1593 msgid "" ":class:`TextFile` instances are create with either *filename*, *file*, or " "both. :exc:`RuntimeError` is raised if both are ``None``. *filename* should " @@ -2881,7 +2894,7 @@ msgstr "" "Si *file* n'est pas fourni, :class:`TextFile` crée son propre fichier en " "utilisant la fonction :func:`open`." -#: distutils/apiref.rst:1596 +#: distutils/apiref.rst:1601 msgid "" "The options are all boolean, and affect the values returned by :meth:" "`readline`" @@ -2889,19 +2902,19 @@ msgstr "" "Les options sont toutes booléennes et affectent les valeurs renvoyées par :" "meth:`readline`." -#: distutils/apiref.rst:1601 +#: distutils/apiref.rst:1606 msgid "option name" msgstr "Nom des options" -#: distutils/apiref.rst:1601 +#: distutils/apiref.rst:1606 msgid "default" msgstr "default" -#: distutils/apiref.rst:1603 +#: distutils/apiref.rst:1608 msgid "*strip_comments*" msgstr "*strip_comments*" -#: distutils/apiref.rst:1603 +#: distutils/apiref.rst:1608 msgid "" "strip from ``'#'`` to end-of-line, as well as any whitespace leading up to " "the ``'#'``\\ ---unless it is escaped by a backslash" @@ -2910,28 +2923,28 @@ msgstr "" "ainsi que tout espace blanc menant au premier ``'#'`` — à moins qu'il ne " "soit échappé par un antislash" -#: distutils/apiref.rst:1612 distutils/apiref.rst:1617 +#: distutils/apiref.rst:1617 distutils/apiref.rst:1622 msgid "true" msgstr "*true*" -#: distutils/apiref.rst:1609 +#: distutils/apiref.rst:1614 msgid "*lstrip_ws*" msgstr "*lstrip_ws*" -#: distutils/apiref.rst:1609 +#: distutils/apiref.rst:1614 msgid "strip leading whitespace from each line before returning it" msgstr "" "Efface les espaces blancs en début de chaque ligne avant de la renvoyer." -#: distutils/apiref.rst:1627 distutils/apiref.rst:1638 +#: distutils/apiref.rst:1632 distutils/apiref.rst:1643 msgid "false" msgstr "*false*" -#: distutils/apiref.rst:1612 +#: distutils/apiref.rst:1617 msgid "*rstrip_ws*" msgstr "*rstrip_ws*" -#: distutils/apiref.rst:1612 +#: distutils/apiref.rst:1617 msgid "" "strip trailing whitespace (including line terminator!) from each line before " "returning it." @@ -2939,11 +2952,11 @@ msgstr "" "Efface les espaces blancs de fin de ligne (y compris le terminateur de " "ligne !) de chaque ligne avant de la renvoyer." -#: distutils/apiref.rst:1617 +#: distutils/apiref.rst:1622 msgid "*skip_blanks*" msgstr "*skip_blanks*" -#: distutils/apiref.rst:1617 +#: distutils/apiref.rst:1622 msgid "" "skip lines that are empty \\*after\\* stripping comments and whitespace. " "(If both lstrip_ws and rstrip_ws are false, then some lines may consist of " @@ -2955,11 +2968,11 @@ msgstr "" "alors certaines lignes peuvent être composées uniquement d'espaces : elles " "ne seront pas ignorées, même si *skip_blanks* est vrai." -#: distutils/apiref.rst:1627 +#: distutils/apiref.rst:1632 msgid "*join_lines*" msgstr "*join_lines*" -#: distutils/apiref.rst:1627 +#: distutils/apiref.rst:1632 msgid "" "if a backslash is the last non-newline character on a line after stripping " "comments and whitespace, join the following line to it to form one logical " @@ -2972,11 +2985,11 @@ msgstr "" "antislash, alors N+1 lignes physiques seront liées pour former une seule " "ligne logique." -#: distutils/apiref.rst:1638 +#: distutils/apiref.rst:1643 msgid "*collapse_join*" msgstr "*collapse_join*" -#: distutils/apiref.rst:1638 +#: distutils/apiref.rst:1643 msgid "" "strip leading whitespace from lines that are joined to their predecessor; " "only matters if ``(join_lines and not lstrip_ws)``" @@ -2984,7 +2997,7 @@ msgstr "" "Supprime les espaces blancs des lignes qui sont jointes à leur " "prédécesseur ; n'est utile que si ``(join_lines and not lstrip_ws)``." -#: distutils/apiref.rst:1645 +#: distutils/apiref.rst:1650 msgid "" "Note that since *rstrip_ws* can strip the trailing newline, the semantics " "of :meth:`readline` must differ from those of the built-in file object's :" @@ -2999,7 +3012,7 @@ msgstr "" "juste une ligne blanche (ou une ligne entièrement blanche), si *rstrip_ws* " "est vrai mais pas si *skip_blanks* est faux." -#: distutils/apiref.rst:1654 +#: distutils/apiref.rst:1659 msgid "" "Open a new file *filename*. This overrides any *file* or *filename* " "constructor arguments." @@ -3007,7 +3020,7 @@ msgstr "" "Ouvre un nouveau fichier *filename*. Remplace tous les arguments du " "constructeur *file* ou *filename*." -#: distutils/apiref.rst:1660 +#: distutils/apiref.rst:1665 msgid "" "Close the current file and forget everything we know about it (including the " "filename and the current line number)." @@ -3015,7 +3028,7 @@ msgstr "" "Ferme le fichier courant et oublie toutes les informations connues à son " "sujet (y compris le nom du fichier et le numéro de la ligne courante)." -#: distutils/apiref.rst:1666 +#: distutils/apiref.rst:1671 msgid "" "Print (to stderr) a warning message tied to the current logical line in the " "current file. If the current logical line in the file spans multiple " @@ -3032,7 +3045,7 @@ msgstr "" "liste ou d'un couple pour indiquer une plage de lignes physiques, ou d'un " "entier pour une seule ligne physique." -#: distutils/apiref.rst:1676 +#: distutils/apiref.rst:1681 msgid "" "Read and return a single logical line from the current file (or from an " "internal buffer if lines have previously been \"unread\" with :meth:" @@ -3053,7 +3066,7 @@ msgstr "" "puisque la chaîne vide peut se produire si *rstrip_ws* est vrai mais pas si " "*strip_blanks* est faux." -#: distutils/apiref.rst:1687 +#: distutils/apiref.rst:1692 msgid "" "Read and return the list of all logical lines remaining in the current file. " "This updates the current line number to the last line of the file." @@ -3062,7 +3075,7 @@ msgstr "" "fichier courant. Met à jour le numéro de la ligne courante à la dernière " "ligne du fichier." -#: distutils/apiref.rst:1693 +#: distutils/apiref.rst:1698 msgid "" "Push *line* (a string) onto an internal buffer that will be checked by " "future :meth:`readline` calls. Handy for implementing a parser with line-at-" @@ -3081,21 +3094,21 @@ msgstr "" "appel à :meth:`readline`, les lignes sont renvoyées dans l'ordre de la plus " "récente première à la plus ancienne." -#: distutils/apiref.rst:1702 +#: distutils/apiref.rst:1707 msgid ":mod:`distutils.version` --- Version number classes" msgstr ":mod:`distutils.version` — Classes de numéros de version" -#: distutils/apiref.rst:1717 +#: distutils/apiref.rst:1722 msgid ":mod:`distutils.cmd` --- Abstract base class for Distutils commands" msgstr "" ":mod:`distutils.cmd` — Classe de base abstraite pour les commandes " "*Distutils*" -#: distutils/apiref.rst:1724 +#: distutils/apiref.rst:1729 msgid "This module supplies the abstract base class :class:`Command`." msgstr "Ce module fournit la classe de base abstraite :class:`Command`." -#: distutils/apiref.rst:1729 +#: distutils/apiref.rst:1734 msgid "" "Abstract base class for defining command classes, the \"worker bees\" of the " "Distutils. A useful analogy for command classes is to think of them as " @@ -3124,7 +3137,7 @@ msgstr "" "s'effectue tout le travail est basé sur les valeurs de ses options, est la " "méthode :meth:`run`, qui doit être implémentée par chaque classe de commande." -#: distutils/apiref.rst:1742 +#: distutils/apiref.rst:1747 msgid "" "The class constructor takes a single argument *dist*, a :class:`~distutils." "core.Distribution` instance." @@ -3132,16 +3145,16 @@ msgstr "" "Le constructeur prend un seul argument, *dist*, une instance de :class:" "`~distutils.core.Distribution`." -#: distutils/apiref.rst:1747 +#: distutils/apiref.rst:1752 msgid "Creating a new Distutils command" msgstr "Créer une nouvelle commande *Distutils*" -#: distutils/apiref.rst:1749 +#: distutils/apiref.rst:1754 msgid "This section outlines the steps to create a new Distutils command." msgstr "" "Cette section décrit les étapes pour créer une nouvelle commande *Distutils*." -#: distutils/apiref.rst:1751 +#: distutils/apiref.rst:1756 msgid "" "A new command lives in a module in the :mod:`distutils.command` package. " "There is a sample template in that directory called :file:" @@ -3164,13 +3177,13 @@ msgstr "" "peel_banana.py`, puis l'éditer pour qu'il implémente la classe :class:" "`peel_banana`, une sous-classe de la classe :class:`distutils.cmd.Command`." -#: distutils/apiref.rst:1761 +#: distutils/apiref.rst:1766 msgid "Subclasses of :class:`Command` must define the following methods." msgstr "" "Les sous-classes de la classe :class:`Command` doivent définir les méthodes " "suivantes." -#: distutils/apiref.rst:1765 +#: distutils/apiref.rst:1770 msgid "" "Set default values for all the options that this command supports. Note " "that these defaults may be overridden by other commands, by the setup " @@ -3187,7 +3200,7 @@ msgstr "" "méthodes suivantes :meth:`initialize_options` ne font que des assignations " "de type ``self.truc = None``." -#: distutils/apiref.rst:1774 +#: distutils/apiref.rst:1779 msgid "" "Set final values for all the options that this command supports. This is " "always called as late as possible, ie. after any option assignments from " @@ -3205,7 +3218,7 @@ msgstr "" "toujours la même valeur qui lui a été attribué par :meth:" "`initialize_options`." -#: distutils/apiref.rst:1784 +#: distutils/apiref.rst:1789 msgid "" "A command's raison d'etre: carry out the action it exists to perform, " "controlled by the options initialized in :meth:`initialize_options`, " @@ -3220,7 +3233,7 @@ msgstr "" "meth:`finalize_options`. Toutes les interactions avec le système de fichiers " "et la sortie du terminal doivent être effectuées par :meth:`run`." -#: distutils/apiref.rst:1793 +#: distutils/apiref.rst:1798 msgid "" "*sub_commands* formalizes the notion of a \"family\" of commands, e.g. " "``install`` as the parent with sub-commands ``install_lib``, " @@ -3244,7 +3257,7 @@ msgstr "" "n'est applicable que s'il existe des fichiers d'en-tête C à installer. Si " "*predicate* est ``None``, cette commande est toujours effectuée." -#: distutils/apiref.rst:1804 +#: distutils/apiref.rst:1809 msgid "" "*sub_commands* is usually defined at the *end* of a class, because " "predicates can be methods of the class, so they must already have been " @@ -3254,54 +3267,42 @@ msgstr "" "prédicats peuvent être des méthodes de la classe, ils doivent donc déjà " "avoir été définis. L'exemple canonique est la commande :command:`install`." -#: distutils/apiref.rst:1810 +#: distutils/apiref.rst:1815 msgid ":mod:`distutils.command` --- Individual Distutils commands" msgstr ":mod:`distutils.command` — Commandes *Distutils* individuelles" -#: distutils/apiref.rst:1821 +#: distutils/apiref.rst:1826 msgid ":mod:`distutils.command.bdist` --- Build a binary installer" msgstr ":mod:`distutils.command.bdist` — Construit un installateur binaire" -#: distutils/apiref.rst:1831 +#: distutils/apiref.rst:1836 msgid "" ":mod:`distutils.command.bdist_packager` --- Abstract base class for packagers" msgstr "" ":mod:`distutils.command.bdist_packager` — Classe de base abstraite pour " "empaqueteurs" -#: distutils/apiref.rst:1841 +#: distutils/apiref.rst:1846 msgid ":mod:`distutils.command.bdist_dumb` --- Build a \"dumb\" installer" msgstr "" ":mod:`distutils.command.bdist_dumb` — Construit un installateur passif " "(*dumb*)" -#: distutils/apiref.rst:1851 +#: distutils/apiref.rst:1856 msgid "" ":mod:`distutils.command.bdist_msi` --- Build a Microsoft Installer binary " "package" msgstr "" ":mod:`distutils.command.bdist_msi` — Construit un installateur Microsoft" -#: distutils/apiref.rst:1887 +#: distutils/apiref.rst:1863 msgid "Use bdist_wheel (wheel packages) instead." msgstr "Utilisez *bdist_wheel* (paquet au format *wheel*) à la place." -#: distutils/apiref.rst:1861 +#: distutils/apiref.rst:1866 msgid "Builds a `Windows Installer`_ (.msi) binary package." msgstr "Construit un installateur `Windows Installeur`_ (*.msi*)" -#: distutils/apiref.rst:1865 -msgid "" -"In most cases, the ``bdist_msi`` installer is a better choice than the " -"``bdist_wininst`` installer, because it provides better support for Win64 " -"platforms, allows administrators to perform non-interactive installations, " -"and allows installation through group policies." -msgstr "" -"Dans la plupart des cas, l'installateur ``bdist_msi`` est un meilleur choix " -"que l'installateur ``bdist_wininst``, car il gère mieux les plates-formes " -"*Win64*, et permet en plus aux administrateurs d'effectuer des installations " -"non interactives ainsi que des installations via des stratégies de groupe." - #: distutils/apiref.rst:1872 msgid "" ":mod:`distutils.command.bdist_rpm` --- Build a binary distribution as a " @@ -3311,41 +3312,36 @@ msgstr "" "format Redhat RPM et SRPM" #: distutils/apiref.rst:1882 -msgid ":mod:`distutils.command.bdist_wininst` --- Build a Windows installer" -msgstr "" -":mod:`distutils.command.bdist_wininst` — Construit un installateur Windows" - -#: distutils/apiref.rst:1895 msgid ":mod:`distutils.command.sdist` --- Build a source distribution" msgstr ":mod:`distutils.command.sdist` — Construit une distribution source" -#: distutils/apiref.rst:1905 +#: distutils/apiref.rst:1892 msgid ":mod:`distutils.command.build` --- Build all files of a package" msgstr "" ":mod:`distutils.command.build` — Construit tous les fichiers d'un paquet" -#: distutils/apiref.rst:1915 +#: distutils/apiref.rst:1902 msgid "" ":mod:`distutils.command.build_clib` --- Build any C libraries in a package" msgstr "" ":mod:`distutils.command.build_clib` — Construit toutes les bibliothèques C " "d'un paquet" -#: distutils/apiref.rst:1925 +#: distutils/apiref.rst:1912 msgid "" ":mod:`distutils.command.build_ext` --- Build any extensions in a package" msgstr "" ":mod:`distutils.command.build_ext` — Construit toutes les extensions d'un " "paquet" -#: distutils/apiref.rst:1935 +#: distutils/apiref.rst:1922 msgid "" ":mod:`distutils.command.build_py` --- Build the .py/.pyc files of a package" msgstr "" ":mod:`distutils.command.build_py` — Construit les fichiers *.py/.pyc* d'un " "paquet" -#: distutils/apiref.rst:1945 +#: distutils/apiref.rst:1932 msgid "" "Alternative implementation of build_py which also runs the 2to3 conversion " "library on each .py file that is going to be installed. To use this in a " @@ -3357,27 +3353,27 @@ msgstr "" "installé. Pour l'utiliser dans un fichier *setup.py* pour une distribution " "conçue pour fonctionner avec *Python 2.x* et *3.x*, ajouter ::" -#: distutils/apiref.rst:1955 +#: distutils/apiref.rst:1942 msgid "to your setup.py, and later::" msgstr "à votre *setup.py* et, plus tard ::" -#: distutils/apiref.rst:1959 +#: distutils/apiref.rst:1946 msgid "to the invocation of setup()." msgstr "à l'appel de *setup()*." -#: distutils/apiref.rst:1963 +#: distutils/apiref.rst:1950 msgid "" ":mod:`distutils.command.build_scripts` --- Build the scripts of a package" msgstr "" ":mod:`distutils.command.build_scripts` — Construit les scripts d'un paquet" -#: distutils/apiref.rst:1973 +#: distutils/apiref.rst:1960 msgid ":mod:`distutils.command.clean` --- Clean a package build area" msgstr "" ":mod:`distutils.command.clean` — Nettoie un dossier de compilation d'un " "paquet" -#: distutils/apiref.rst:1978 +#: distutils/apiref.rst:1965 msgid "" "This command removes the temporary files created by :command:`build` and its " "subcommands, like intermediary compiled object files. With the ``--all`` " @@ -3388,7 +3384,7 @@ msgstr "" "intermédiaires. Avec l'option ``--all``, le répertoire de compilation sera " "supprimé." -#: distutils/apiref.rst:1982 +#: distutils/apiref.rst:1969 msgid "" "Extension modules built :ref:`in place ` will " "not be cleaned, as they are not in the build directory." @@ -3397,23 +3393,23 @@ msgstr "" "inplace>` ne seront pas effacés, car ils ne sont pas dans le répertoire " "*build*." -#: distutils/apiref.rst:1987 +#: distutils/apiref.rst:1974 msgid ":mod:`distutils.command.config` --- Perform package configuration" msgstr "" ":mod:`distutils.command.config` — Effectue la configuration d'un paquet" -#: distutils/apiref.rst:1997 +#: distutils/apiref.rst:1984 msgid ":mod:`distutils.command.install` --- Install a package" msgstr ":mod:`distutils.command.install` — Installe un paquet" -#: distutils/apiref.rst:2007 +#: distutils/apiref.rst:1994 msgid "" ":mod:`distutils.command.install_data` --- Install data files from a package" msgstr "" ":mod:`distutils.command.install_data` — Installe les fichiers de données " "d'un paquet" -#: distutils/apiref.rst:2017 +#: distutils/apiref.rst:2004 msgid "" ":mod:`distutils.command.install_headers` --- Install C/C++ header files from " "a package" @@ -3421,14 +3417,14 @@ msgstr "" ":mod:`distutils.command.install_headers` — Installe les fichiers d'en-tête C/" "C++ d'un paquet" -#: distutils/apiref.rst:2027 +#: distutils/apiref.rst:2014 msgid "" ":mod:`distutils.command.install_lib` --- Install library files from a package" msgstr "" ":mod:`distutils.command.install_lib` — Installe les fichiers de bibliothèque " "à partir d'un paquet" -#: distutils/apiref.rst:2037 +#: distutils/apiref.rst:2024 msgid "" ":mod:`distutils.command.install_scripts` --- Install script files from a " "package" @@ -3436,7 +3432,7 @@ msgstr "" ":mod:`distutils.command.install_scripts` — Installe les fichiers de script " "d'un paquet" -#: distutils/apiref.rst:2047 +#: distutils/apiref.rst:2034 msgid "" ":mod:`distutils.command.register` --- Register a module with the Python " "Package Index" @@ -3444,7 +3440,7 @@ msgstr "" ":mod:`distutils.command.register` — Enregistre un module dans l'Index des " "paquets Python (*Python Package Index* ou *PyPI* en anglais)" -#: distutils/apiref.rst:2053 +#: distutils/apiref.rst:2040 msgid "" "The ``register`` command registers the package with the Python Package " "Index. This is described in more detail in :pep:`301`." @@ -3452,11 +3448,11 @@ msgstr "" "La commande ``register`` enregistre le paquet dans l'index des paquets " "Python. Plus de détails à ce sujet dans la :pep:`301`." -#: distutils/apiref.rst:2060 +#: distutils/apiref.rst:2047 msgid ":mod:`distutils.command.check` --- Check the meta-data of a package" msgstr ":mod:`distutils.command.check` — Vérifie les méta-données d'un paquet" -#: distutils/apiref.rst:2066 +#: distutils/apiref.rst:2053 msgid "" "The ``check`` command performs some tests on the meta-data of a package. For " "example, it verifies that all required meta-data are provided as the " @@ -3465,3 +3461,19 @@ msgstr "" "La commande ``check`` effectue des tests sur les méta-données d'un paquet. " "Par exemple, elle vérifie que toutes les méta-données requises sont fournies " "lorsque les arguments sont passés à la fonction :func:`setup`." + +#~ msgid "" +#~ "In most cases, the ``bdist_msi`` installer is a better choice than the " +#~ "``bdist_wininst`` installer, because it provides better support for Win64 " +#~ "platforms, allows administrators to perform non-interactive " +#~ "installations, and allows installation through group policies." +#~ msgstr "" +#~ "Dans la plupart des cas, l'installateur ``bdist_msi`` est un meilleur " +#~ "choix que l'installateur ``bdist_wininst``, car il gère mieux les plates-" +#~ "formes *Win64*, et permet en plus aux administrateurs d'effectuer des " +#~ "installations non interactives ainsi que des installations via des " +#~ "stratégies de groupe." + +#~ msgid ":mod:`distutils.command.bdist_wininst` --- Build a Windows installer" +#~ msgstr "" +#~ ":mod:`distutils.command.bdist_wininst` — Construit un installateur Windows" diff --git a/distutils/builtdist.po b/distutils/builtdist.po index bdcb5b63f..c037855de 100644 --- a/distutils/builtdist.po +++ b/distutils/builtdist.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-01-28 15:11+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -277,46 +277,34 @@ msgid "HP-UX :program:`swinstall`" msgstr "HP-UX :program:`swinstall`" #: distutils/builtdist.rst:99 -msgid "``wininst``" -msgstr "``wininst``" - -#: distutils/builtdist.rst:99 -msgid "self-extracting ZIP file for Windows" -msgstr "fichier zip auto-extracteur Windows" - -#: distutils/builtdist.rst:99 -msgid "\\(4)" -msgstr "\\(4)" - -#: distutils/builtdist.rst:102 msgid "``msi``" msgstr "``msi``" -#: distutils/builtdist.rst:102 +#: distutils/builtdist.rst:99 msgid "Microsoft Installer." msgstr "Installateur Microsoft." -#: distutils/builtdist.rst:105 +#: distutils/builtdist.rst:102 msgid "Added support for the ``xztar`` format." msgstr "Ajout du support des fichiers ``xztar``." -#: distutils/builtdist.rst:109 +#: distutils/builtdist.rst:106 msgid "Notes:" msgstr "Notes :" -#: distutils/builtdist.rst:112 +#: distutils/builtdist.rst:109 msgid "default on Unix" msgstr "par défaut sur Unix" -#: distutils/builtdist.rst:115 +#: distutils/builtdist.rst:112 msgid "default on Windows" msgstr "par défaut sur Windows" -#: distutils/builtdist.rst:118 +#: distutils/builtdist.rst:115 msgid "requires external :program:`compress` utility." msgstr "nécessite un programme externe :program:`compress`." -#: distutils/builtdist.rst:121 +#: distutils/builtdist.rst:118 msgid "" "requires either external :program:`zip` utility or :mod:`zipfile` module " "(part of the standard Python library since Python 1.6)" @@ -324,7 +312,7 @@ msgstr "" "nécessite soit un utilitaire :program:`zip` extérieur ou le module :mod:" "`zipfile` (inclut dans la bibliothèque standard depuis Python 1.6)" -#: distutils/builtdist.rst:125 +#: distutils/builtdist.rst:122 msgid "" "requires external :program:`rpm` utility, version 3.0.4 or better (use ``rpm " "--version`` to find out which version you have)" @@ -332,7 +320,7 @@ msgstr "" "nécessite un programme externe :program:`rpm`, version 3.0.4 ou mieux " "(utilisez ``rpm --version`` pour connaître quelle version vous avez)" -#: distutils/builtdist.rst:128 +#: distutils/builtdist.rst:125 msgid "" "You don't have to use the :command:`bdist` command with the :option:`!--" "formats` option; you can also use the command that directly implements the " @@ -353,55 +341,43 @@ msgstr "" "Les sous-commandes :command:`bdist`, et les formats générés par chacun, " "sont :" -#: distutils/builtdist.rst:138 +#: distutils/builtdist.rst:135 msgid "Command" msgstr "Commande" -#: distutils/builtdist.rst:138 +#: distutils/builtdist.rst:135 msgid "Formats" msgstr "Formats" -#: distutils/builtdist.rst:140 +#: distutils/builtdist.rst:137 msgid ":command:`bdist_dumb`" msgstr ":command:`bdist_dumb`" -#: distutils/builtdist.rst:140 +#: distutils/builtdist.rst:137 msgid "tar, gztar, bztar, xztar, ztar, zip" msgstr "tar, gztar, bztar, xztar, ztar, zip" -#: distutils/builtdist.rst:142 +#: distutils/builtdist.rst:139 msgid ":command:`bdist_rpm`" msgstr ":command:`bdist_rpm`" -#: distutils/builtdist.rst:142 +#: distutils/builtdist.rst:139 msgid "rpm, srpm" msgstr "rpm, srpm" -#: distutils/builtdist.rst:144 -msgid ":command:`bdist_wininst`" -msgstr ":command:`bdist_wininst`" - -#: distutils/builtdist.rst:144 -msgid "wininst" -msgstr "`wininst`" - -#: distutils/builtdist.rst:146 +#: distutils/builtdist.rst:141 msgid ":command:`bdist_msi`" msgstr ":command:`bdist_msi`" -#: distutils/builtdist.rst:146 +#: distutils/builtdist.rst:141 msgid "msi" msgstr "`msi`" -#: distutils/builtdist.rst:308 distutils/builtdist.rst:476 -msgid "bdist_wininst is deprecated since Python 3.8." -msgstr "`bdist_wininst` est obsolète depuis Python 3.8." - -#: distutils/builtdist.rst:311 distutils/builtdist.rst:479 +#: distutils/builtdist.rst:145 msgid "bdist_msi is deprecated since Python 3.9." msgstr "`bdist_msi` est obsolète depuis Python 3.9." -#: distutils/builtdist.rst:155 +#: distutils/builtdist.rst:147 msgid "" "The following sections give details on the individual :command:`bdist_\\*` " "commands." @@ -409,11 +385,11 @@ msgstr "" "Le chapitre suivant donne des détails individuel sur les commandes :command:" "`bdist_\\*`." -#: distutils/builtdist.rst:171 +#: distutils/builtdist.rst:163 msgid "Creating RPM packages" msgstr "Créer un paquet RPM" -#: distutils/builtdist.rst:173 +#: distutils/builtdist.rst:165 msgid "" "The RPM format is used by many popular Linux distributions, including Red " "Hat, SuSE, and Mandrake. If one of these (or any of the other RPM-based " @@ -431,7 +407,7 @@ msgstr "" "entre les distributions Linux, vous pourrez aussi créer des RPM qui " "fonctionneront sur des distributions RPM différentes." -#: distutils/builtdist.rst:180 +#: distutils/builtdist.rst:172 msgid "" "The usual way to create an RPM of your module distribution is to run the :" "command:`bdist_rpm` command::" @@ -439,11 +415,11 @@ msgstr "" "La manière habituelle de créer un RPM de votre module est d'utiliser la " "commande :command:`bdist_rpm` ::" -#: distutils/builtdist.rst:185 +#: distutils/builtdist.rst:177 msgid "or the :command:`bdist` command with the :option:`!--format` option::" msgstr "ou la commande :command:`bdist` avec l'option :option:`!--format` ::" -#: distutils/builtdist.rst:189 +#: distutils/builtdist.rst:181 msgid "" "The former allows you to specify RPM-specific options; the latter allows " "you to easily specify multiple formats in one run. If you need to do both, " @@ -455,7 +431,7 @@ msgstr "" "avez besoin d'utiliser les deux, vous pouvez explicitement spécifier " "plusieurs commandes :command:`bdist_\\*` et leurs options ::" -#: distutils/builtdist.rst:196 +#: distutils/builtdist.rst:187 msgid "" "Creating RPM packages is driven by a :file:`.spec` file, much as using the " "Distutils is driven by the setup script. To make your life easier, the :" @@ -472,43 +448,43 @@ msgstr "" "Beaucoup d'options du fichier :file:`.spec` sont dérivées des options du " "script de préparation suivant :" -#: distutils/builtdist.rst:228 +#: distutils/builtdist.rst:219 msgid "RPM :file:`.spec` file option or section" msgstr "Option de fichier RPM :file:`.spec`" -#: distutils/builtdist.rst:204 +#: distutils/builtdist.rst:195 msgid "Distutils setup script option" msgstr "Options du script de préparation Distutils" -#: distutils/builtdist.rst:206 +#: distutils/builtdist.rst:197 msgid "Name" msgstr "Nom" -#: distutils/builtdist.rst:206 +#: distutils/builtdist.rst:197 msgid "``name``" msgstr "``name``" -#: distutils/builtdist.rst:208 +#: distutils/builtdist.rst:199 msgid "Summary (in preamble)" msgstr "*Summary* (dans le préambule)" -#: distutils/builtdist.rst:208 +#: distutils/builtdist.rst:199 msgid "``description``" msgstr "``description``" -#: distutils/builtdist.rst:210 +#: distutils/builtdist.rst:201 msgid "Version" msgstr "Version" -#: distutils/builtdist.rst:210 +#: distutils/builtdist.rst:201 msgid "``version``" msgstr "``version``" -#: distutils/builtdist.rst:235 +#: distutils/builtdist.rst:226 msgid "Vendor" msgstr "Vendor" -#: distutils/builtdist.rst:212 +#: distutils/builtdist.rst:203 msgid "" "``author`` and ``author_email``, or --- & ``maintainer`` and " "``maintainer_email``" @@ -516,31 +492,31 @@ msgstr "" "``author`` et ``author_email``, ou --- & ``maintainer`` et " "``maintainer_email``" -#: distutils/builtdist.rst:216 +#: distutils/builtdist.rst:207 msgid "Copyright" msgstr "Copyright" -#: distutils/builtdist.rst:216 +#: distutils/builtdist.rst:207 msgid "``license``" msgstr "``license``" -#: distutils/builtdist.rst:218 +#: distutils/builtdist.rst:209 msgid "Url" msgstr "Url" -#: distutils/builtdist.rst:218 +#: distutils/builtdist.rst:209 msgid "``url``" msgstr "``url``" -#: distutils/builtdist.rst:220 +#: distutils/builtdist.rst:211 msgid "%description (section)" msgstr "%description (section)" -#: distutils/builtdist.rst:220 +#: distutils/builtdist.rst:211 msgid "``long_description``" msgstr "``long_description``" -#: distutils/builtdist.rst:223 +#: distutils/builtdist.rst:214 msgid "" "Additionally, there are many options in :file:`.spec` files that don't have " "corresponding options in the setup script. Most of these are handled " @@ -550,116 +526,116 @@ msgstr "" "aucun équivalent dans le script de préparation. La plupart de celles ci sont " "gérées par les options de la commande :command:`bdist_rpm` suivant :" -#: distutils/builtdist.rst:228 +#: distutils/builtdist.rst:219 msgid ":command:`bdist_rpm` option" msgstr "Option de :command:`bdist_rpm`" -#: distutils/builtdist.rst:228 +#: distutils/builtdist.rst:219 msgid "default value" msgstr "valeur par défaut" -#: distutils/builtdist.rst:231 +#: distutils/builtdist.rst:222 msgid "Release" msgstr "Version" -#: distutils/builtdist.rst:231 +#: distutils/builtdist.rst:222 msgid "``release``" msgstr "``release``" -#: distutils/builtdist.rst:231 +#: distutils/builtdist.rst:222 msgid "\"1\"" msgstr "\"1\"" -#: distutils/builtdist.rst:233 +#: distutils/builtdist.rst:224 msgid "Group" msgstr "Group" -#: distutils/builtdist.rst:233 +#: distutils/builtdist.rst:224 msgid "``group``" msgstr "``group``" -#: distutils/builtdist.rst:233 +#: distutils/builtdist.rst:224 msgid "\"Development/Libraries\"" msgstr "\"Développement/Bibliothèques\"" -#: distutils/builtdist.rst:235 +#: distutils/builtdist.rst:226 msgid "``vendor``" msgstr "``vendor``" -#: distutils/builtdist.rst:235 +#: distutils/builtdist.rst:226 msgid "(see above)" msgstr "(voir au-dessus)" -#: distutils/builtdist.rst:237 +#: distutils/builtdist.rst:228 msgid "Packager" msgstr "Packager" -#: distutils/builtdist.rst:237 +#: distutils/builtdist.rst:228 msgid "``packager``" msgstr "``packager``" -#: distutils/builtdist.rst:239 distutils/builtdist.rst:243 -#: distutils/builtdist.rst:247 distutils/builtdist.rst:251 +#: distutils/builtdist.rst:230 distutils/builtdist.rst:234 +#: distutils/builtdist.rst:238 distutils/builtdist.rst:242 msgid "(none)" msgstr "(none)" -#: distutils/builtdist.rst:239 +#: distutils/builtdist.rst:230 msgid "Provides" msgstr "Provides" -#: distutils/builtdist.rst:239 +#: distutils/builtdist.rst:230 msgid "``provides``" msgstr "``provides``" -#: distutils/builtdist.rst:241 +#: distutils/builtdist.rst:232 msgid "Requires" msgstr "Requires" -#: distutils/builtdist.rst:241 +#: distutils/builtdist.rst:232 msgid "``requires``" msgstr "``requires``" -#: distutils/builtdist.rst:243 +#: distutils/builtdist.rst:234 msgid "Conflicts" msgstr "Conflicts" -#: distutils/builtdist.rst:243 +#: distutils/builtdist.rst:234 msgid "``conflicts``" msgstr "``conflicts``" -#: distutils/builtdist.rst:245 +#: distutils/builtdist.rst:236 msgid "Obsoletes" msgstr "Obsoletes" -#: distutils/builtdist.rst:245 +#: distutils/builtdist.rst:236 msgid "``obsoletes``" msgstr "``obsoletes``" -#: distutils/builtdist.rst:247 +#: distutils/builtdist.rst:238 msgid "Distribution" msgstr "Distribution" -#: distutils/builtdist.rst:247 +#: distutils/builtdist.rst:238 msgid "``distribution_name``" msgstr "``distribution_name``" -#: distutils/builtdist.rst:249 +#: distutils/builtdist.rst:240 msgid "BuildRequires" msgstr "BuildRequires" -#: distutils/builtdist.rst:249 +#: distutils/builtdist.rst:240 msgid "``build_requires``" msgstr "``build_requires``" -#: distutils/builtdist.rst:251 +#: distutils/builtdist.rst:242 msgid "Icon" msgstr "Icon" -#: distutils/builtdist.rst:251 +#: distutils/builtdist.rst:242 msgid "``icon``" msgstr "``icon``" -#: distutils/builtdist.rst:254 +#: distutils/builtdist.rst:245 msgid "" "Obviously, supplying even a few of these options on the command-line would " "be tedious and error-prone, so it's usually best to put them in the setup " @@ -679,7 +655,7 @@ msgstr "" "pydistutils.cfg`). Si vous voulez temporairement désactiver ce fichier, vous " "pouvez passer l'option :option:`!--no-user-cfg` à :file:`setup.py`." -#: distutils/builtdist.rst:262 +#: distutils/builtdist.rst:253 msgid "" "There are three steps to building a binary RPM package, all of which are " "handled automatically by the Distutils:" @@ -687,7 +663,7 @@ msgstr "" "La création de binaire RPM se fait en trois étapes, chacune gérée " "automatiquement par Distutils :" -#: distutils/builtdist.rst:265 +#: distutils/builtdist.rst:256 msgid "" "create a :file:`.spec` file, which describes the package (analogous to the " "Distutils setup script; in fact, much of the information in the setup " @@ -697,11 +673,11 @@ msgstr "" "préparation Distutils, en réalité la plupart des informations du script de " "préparation se retrouve dans le fichier :file:`.spec`)" -#: distutils/builtdist.rst:269 +#: distutils/builtdist.rst:260 msgid "create the source RPM" msgstr "crée un RPM source" -#: distutils/builtdist.rst:271 +#: distutils/builtdist.rst:262 msgid "" "create the \"binary\" RPM (which may or may not contain binary code, " "depending on whether your module distribution contains Python extensions)" @@ -709,7 +685,7 @@ msgstr "" "crée le RPM \"binaire\" (qui peut ou non contenir des binaires, tout dépend " "de si votre module contiens des extensions)" -#: distutils/builtdist.rst:274 +#: distutils/builtdist.rst:265 msgid "" "Normally, RPM bundles the last two steps together; when you use the " "Distutils, all three steps are typically bundled together." @@ -717,7 +693,7 @@ msgstr "" "Normalement, RPM réunit les deux dernières étapes ensemble ; quand vous " "utilisez Distutils, les trois étapes sont regroupées." -#: distutils/builtdist.rst:277 +#: distutils/builtdist.rst:268 msgid "" "If you wish, you can separate these three steps. You can use the :option:" "`!--spec-only` option to make :command:`bdist_rpm` just create the :file:`." @@ -736,114 +712,11 @@ msgstr "" "fichier :file:`.spec` se retrouve profondément enfoui dans l'arborescence, " "dans un dossier temporaire créé par la commande :command:`bdist_rpm`.)" -#: distutils/builtdist.rst:305 -msgid "Creating Windows Installers" -msgstr "Créer un installateur Windows" - -#: distutils/builtdist.rst:313 -msgid "" -"Executable installers are the natural format for binary distributions on " -"Windows. They display a nice graphical user interface, display some " -"information about the module distribution to be installed taken from the " -"metadata in the setup script, let the user select a few options, and start " -"or cancel the installation." -msgstr "" -"Les installateurs exécutables sont le format naturel pour les distributions " -"sur Windows. Ils affichent une jolie interface graphique, montrent quelques " -"informations à propos du module qui va être installé, tiré des métadonnées " -"dans le script de préparation, laisse l'utilisateur choisir quelques options " -"et démarrer ou annuler l'installation." - -#: distutils/builtdist.rst:319 -msgid "" -"Since the metadata is taken from the setup script, creating Windows " -"installers is usually as easy as running::" -msgstr "" -"Étant donné que les métadonnées sont tirées du script de préparation, créer " -"un installateur Windows est généralement facile, il suffit de lancer ::" - -#: distutils/builtdist.rst:324 -msgid "or the :command:`bdist` command with the :option:`!--formats` option::" -msgstr "ou la commande :command:`bdist` avec l'option :option:`!--formats` ::" - -#: distutils/builtdist.rst:328 -msgid "" -"If you have a pure module distribution (only containing pure Python modules " -"and packages), the resulting installer will be version independent and have " -"a name like :file:`foo-1.0.win32.exe`. Note that creating ``wininst`` binary " -"distributions in only supported on Windows systems." -msgstr "" -"Si vous avez une distribution de modules purs (contenant seulement des " -"modules et des packages en Python pur), l'installateur produit n'est lié à " -"aucune version de Python et a un nom du type :file:`foo-1.0.win32.exe`. " -"Notez que la création de distributions binaires ``wininst`` n'est prise en " -"charge que sur les systèmes Windows." - -#: distutils/builtdist.rst:333 -msgid "" -"If you have a non-pure distribution, the extensions can only be created on a " -"Windows platform, and will be Python version dependent. The installer " -"filename will reflect this and now has the form :file:`foo-1.0.win32-py2.0." -"exe`. You have to create a separate installer for every Python version you " -"want to support." -msgstr "" -"Si vous avez une distribution \"non-pure\", l'extension peut être créée " -"uniquement pour les plateformes Windows et sera lié à une version de Python. " -"Le nom de l'installateur reflétera ça et sera de format :file:`foo-1.0.win32-" -"py2.0.exe`. Vous devrez créer un installateur pour chaque version de Python " -"que vous voulez supporter." - -#: distutils/builtdist.rst:339 -msgid "" -"The installer will try to compile pure modules into :term:`bytecode` after " -"installation on the target system in normal and optimizing mode. If you " -"don't want this to happen for some reason, you can run the :command:" -"`bdist_wininst` command with the :option:`!--no-target-compile` and/or the :" -"option:`!--no-target-optimize` option." -msgstr "" -"L'installeur essaiera de compiler les modules purs en :term:`bytecode` après " -"installation sur le système cible dans les modes normaux et optimisé. Si " -"vous ne voulez pas que ce soit fait, vous pouvez lancer la commande :command:" -"`bdist_wininst` avec l'option :option:`!--no-target-compile` et/ou l'option :" -"option:`!--no-target-optimize`." - -#: distutils/builtdist.rst:345 -msgid "" -"By default the installer will display the cool \"Python Powered\" logo when " -"it is run, but you can also supply your own 152x261 bitmap which must be a " -"Windows :file:`.bmp` file with the :option:`!--bitmap` option." -msgstr "" -"Par défaut l'installateur affichera le super logo \"Python Powered\", mais " -"vous pouvez aussi donnez votre propre bitmap de *152×261* qui doit être un " -"fichier :file:`.bmp` Windows avec l'option :option:`!--bitmap`." - -#: distutils/builtdist.rst:349 -msgid "" -"The installer will also display a large title on the desktop background " -"window when it is run, which is constructed from the name of your " -"distribution and the version number. This can be changed to another text by " -"using the :option:`!--title` option." -msgstr "" -"L'installateur affichera aussi un grand titre en arrière plan de la fenêtre " -"quand exécuté, qui est composé du nom de votre distribution et du numéro de " -"version. Cela peut être changé avec un autre texte avec l'option :option:`!--" -"title`." - -#: distutils/builtdist.rst:354 -msgid "" -"The installer file will be written to the \"distribution directory\" --- " -"normally :file:`dist/`, but customizable with the :option:`!--dist-dir` " -"option." -msgstr "" -"Le fichier d'installation sera écrit dans le dossier de distribution " -"(\"*distribution directory*\") --- normalement :file:`dist/`, mais " -"personnalisable avec l'option :option:`!--dist-dir`." - -#: distutils/builtdist.rst:360 +#: distutils/builtdist.rst:296 msgid "Cross-compiling on Windows" msgstr "Compiler pour toute les plateformes Windows" -#: distutils/builtdist.rst:362 +#: distutils/builtdist.rst:298 msgid "" "Starting with Python 2.6, distutils is capable of cross-compiling between " "Windows platforms. In practice, this means that with the correct tools " @@ -855,7 +728,7 @@ msgstr "" "installés, vous pouvez utiliser une version 32 bits de Windows pour créer " "une extension 64 bits et vice-versa." -#: distutils/builtdist.rst:367 +#: distutils/builtdist.rst:303 msgid "" "To build for an alternate platform, specify the :option:`!--plat-name` " "option to the build command. Valid values are currently 'win32', and 'win-" @@ -866,15 +739,11 @@ msgstr "" "actuellement **'win32'**, et **'win-amd64'**. Par exemple, sur une version " "*32bit* de Windows, vous pourriez exécuter ::" -#: distutils/builtdist.rst:373 -msgid "" -"to build a 64bit version of your extension. The Windows Installers also " -"support this option, so the command::" +#: distutils/builtdist.rst:309 +msgid "to build a 64bit version of your extension." msgstr "" -"pour construire une version 64 bits de votre module. L'installateur Windows " -"supporte aussi cette option, donc la commande ::" -#: distutils/builtdist.rst:378 +#: distutils/builtdist.rst:311 msgid "" "would create a 64bit installation executable on your 32bit version of " "Windows." @@ -882,7 +751,7 @@ msgstr "" "créera un installateur exécutable 64 bits depuis votre version 32 bits de " "Windows." -#: distutils/builtdist.rst:380 +#: distutils/builtdist.rst:313 msgid "" "To cross-compile, you must download the Python source code and cross-compile " "Python itself for the platform you are targeting - it is not possible from a " @@ -902,7 +771,7 @@ msgstr "" "l'arborescence des sources de Python et construire la version *x64* du " "projet *pythoncore* avant de pouvoir compiler son extension." -#: distutils/builtdist.rst:389 +#: distutils/builtdist.rst:322 msgid "" "Note that by default, Visual Studio 2008 does not install 64bit compilers or " "tools. You may need to reexecute the Visual Studio setup process and select " @@ -915,11 +784,11 @@ msgstr "" "> [Ajouter/Supprimer]* est un bon moyen de vérifier ou modifier votre " "installation existante.)" -#: distutils/builtdist.rst:397 +#: distutils/builtdist.rst:330 msgid "The Postinstallation script" msgstr "Le script de post-installation" -#: distutils/builtdist.rst:399 +#: distutils/builtdist.rst:332 msgid "" "Starting with Python 2.3, a postinstallation script can be specified with " "the :option:`!--install-script` option. The basename of the script must be " @@ -930,7 +799,7 @@ msgstr "" "l'option :option:`!--install-script`. Le nom du script doit être spécifié et " "présent dans l'argument \"scripts\" de la fonction ``setup``." -#: distutils/builtdist.rst:404 +#: distutils/builtdist.rst:337 msgid "" "This script will be run at installation time on the target system after all " "the files have been copied, with ``argv[1]`` set to :option:`!-install`, and " @@ -943,7 +812,7 @@ msgstr "" "que les fichiers soient supprimés avec la valeur de ``argv[1]`` à :option:`!-" "remove`." -#: distutils/builtdist.rst:409 +#: distutils/builtdist.rst:342 msgid "" "The installation script runs embedded in the windows installer, every output " "(``sys.stdout``, ``sys.stderr``) is redirected into a buffer and will be " @@ -953,7 +822,7 @@ msgstr "" "chaque sortie (``sys.stdout``, ``sys.stderr``) est redirigé dans le tampon " "et sera affiché dans le GUI après que les scripts soient finis." -#: distutils/builtdist.rst:413 +#: distutils/builtdist.rst:346 msgid "" "Some functions especially useful in this context are available as additional " "built-in functions in the installation script." @@ -961,7 +830,7 @@ msgstr "" "Certaines fonctions spécialement utiles dans ce contexte sont disponibles " "comme fonctions natives additionnelles dans le script d'installation." -#: distutils/builtdist.rst:420 +#: distutils/builtdist.rst:353 msgid "" "These functions should be called when a directory or file is created by the " "postinstall script at installation time. It will register *path* with the " @@ -974,7 +843,7 @@ msgstr "" "lors de la des-installation de la distribution. pour être sûr, les " "répertoires sont uniquement retirés s'ils sont vides." -#: distutils/builtdist.rst:428 +#: distutils/builtdist.rst:361 msgid "" "This function can be used to retrieve special folder locations on Windows " "like the Start Menu or the Desktop. It returns the full path to the folder. " @@ -985,11 +854,11 @@ msgstr "" "renvoie le chemin complet pour le fichier. *csidl_string* doit être unes des " "chaines suivantes ::" -#: distutils/builtdist.rst:448 +#: distutils/builtdist.rst:381 msgid "If the folder cannot be retrieved, :exc:`OSError` is raised." msgstr "Si le fichier ne peut être extrait, :exc:`OSError` est obtenu.." -#: distutils/builtdist.rst:450 +#: distutils/builtdist.rst:383 msgid "" "Which folders are available depends on the exact Windows version, and " "probably also the configuration. For details refer to Microsoft's " @@ -999,7 +868,7 @@ msgstr "" "probablement aussi de la configuration. pour des détails se référer à la " "documentation Microsoft de la fonction :c:func:`SHGetSpecialFolderPath`." -#: distutils/builtdist.rst:457 +#: distutils/builtdist.rst:390 msgid "" "This function creates a shortcut. *target* is the path to the program to be " "started by the shortcut. *description* is the description of the shortcut. " @@ -1019,21 +888,141 @@ msgstr "" "l’icône dans le fichier *cheminIcone*. Encore, pour les détails consulter la " "documentation Microsoft pour l'interface :class:`ILienShell`." -#: distutils/builtdist.rst:468 -msgid "Vista User Access Control (UAC)" -msgstr "Contrôle d'accès utilisateur Vista (UAC)" - -#: distutils/builtdist.rst:470 -msgid "" -"Starting with Python 2.6, bdist_wininst supports a :option:`!--user-access-" -"control` option. The default is 'none' (meaning no UAC handling is done), " -"and other valid values are 'auto' (meaning prompt for UAC elevation if " -"Python was installed for all users) and 'force' (meaning always prompt for " -"elevation)." -msgstr "" -"Depuis Python 2.6, *bdist_wininst* accepte une option :option:`!--user-" -"access-control`. Sa valeur par défaut est 'none' (Ce qui veut dire que aucun " -"UAC est fait), et les autres valeurs valides sont 'auto' (ce qui veut dire " -"qu'il faut demander une élévation de privilèges UAC si Python a été installé " -"pour tous les utilisateurs) et 'force' (Toujours demander une élévation de " -"privilèges)." +#~ msgid "``wininst``" +#~ msgstr "``wininst``" + +#~ msgid "self-extracting ZIP file for Windows" +#~ msgstr "fichier zip auto-extracteur Windows" + +#~ msgid "\\(4)" +#~ msgstr "\\(4)" + +#~ msgid ":command:`bdist_wininst`" +#~ msgstr ":command:`bdist_wininst`" + +#~ msgid "wininst" +#~ msgstr "`wininst`" + +#~ msgid "bdist_wininst is deprecated since Python 3.8." +#~ msgstr "`bdist_wininst` est obsolète depuis Python 3.8." + +#~ msgid "Creating Windows Installers" +#~ msgstr "Créer un installateur Windows" + +#~ msgid "" +#~ "Executable installers are the natural format for binary distributions on " +#~ "Windows. They display a nice graphical user interface, display some " +#~ "information about the module distribution to be installed taken from the " +#~ "metadata in the setup script, let the user select a few options, and " +#~ "start or cancel the installation." +#~ msgstr "" +#~ "Les installateurs exécutables sont le format naturel pour les " +#~ "distributions sur Windows. Ils affichent une jolie interface graphique, " +#~ "montrent quelques informations à propos du module qui va être installé, " +#~ "tiré des métadonnées dans le script de préparation, laisse l'utilisateur " +#~ "choisir quelques options et démarrer ou annuler l'installation." + +#~ msgid "" +#~ "Since the metadata is taken from the setup script, creating Windows " +#~ "installers is usually as easy as running::" +#~ msgstr "" +#~ "Étant donné que les métadonnées sont tirées du script de préparation, " +#~ "créer un installateur Windows est généralement facile, il suffit de " +#~ "lancer ::" + +#~ msgid "" +#~ "or the :command:`bdist` command with the :option:`!--formats` option::" +#~ msgstr "" +#~ "ou la commande :command:`bdist` avec l'option :option:`!--formats` ::" + +#~ msgid "" +#~ "If you have a pure module distribution (only containing pure Python " +#~ "modules and packages), the resulting installer will be version " +#~ "independent and have a name like :file:`foo-1.0.win32.exe`. Note that " +#~ "creating ``wininst`` binary distributions in only supported on Windows " +#~ "systems." +#~ msgstr "" +#~ "Si vous avez une distribution de modules purs (contenant seulement des " +#~ "modules et des packages en Python pur), l'installateur produit n'est lié " +#~ "à aucune version de Python et a un nom du type :file:`foo-1.0.win32.exe`. " +#~ "Notez que la création de distributions binaires ``wininst`` n'est prise " +#~ "en charge que sur les systèmes Windows." + +#~ msgid "" +#~ "If you have a non-pure distribution, the extensions can only be created " +#~ "on a Windows platform, and will be Python version dependent. The " +#~ "installer filename will reflect this and now has the form :file:`foo-1.0." +#~ "win32-py2.0.exe`. You have to create a separate installer for every " +#~ "Python version you want to support." +#~ msgstr "" +#~ "Si vous avez une distribution \"non-pure\", l'extension peut être créée " +#~ "uniquement pour les plateformes Windows et sera lié à une version de " +#~ "Python. Le nom de l'installateur reflétera ça et sera de format :file:" +#~ "`foo-1.0.win32-py2.0.exe`. Vous devrez créer un installateur pour chaque " +#~ "version de Python que vous voulez supporter." + +#~ msgid "" +#~ "The installer will try to compile pure modules into :term:`bytecode` " +#~ "after installation on the target system in normal and optimizing mode. " +#~ "If you don't want this to happen for some reason, you can run the :" +#~ "command:`bdist_wininst` command with the :option:`!--no-target-compile` " +#~ "and/or the :option:`!--no-target-optimize` option." +#~ msgstr "" +#~ "L'installeur essaiera de compiler les modules purs en :term:`bytecode` " +#~ "après installation sur le système cible dans les modes normaux et " +#~ "optimisé. Si vous ne voulez pas que ce soit fait, vous pouvez lancer la " +#~ "commande :command:`bdist_wininst` avec l'option :option:`!--no-target-" +#~ "compile` et/ou l'option :option:`!--no-target-optimize`." + +#~ msgid "" +#~ "By default the installer will display the cool \"Python Powered\" logo " +#~ "when it is run, but you can also supply your own 152x261 bitmap which " +#~ "must be a Windows :file:`.bmp` file with the :option:`!--bitmap` option." +#~ msgstr "" +#~ "Par défaut l'installateur affichera le super logo \"Python Powered\", " +#~ "mais vous pouvez aussi donnez votre propre bitmap de *152×261* qui doit " +#~ "être un fichier :file:`.bmp` Windows avec l'option :option:`!--bitmap`." + +#~ msgid "" +#~ "The installer will also display a large title on the desktop background " +#~ "window when it is run, which is constructed from the name of your " +#~ "distribution and the version number. This can be changed to another text " +#~ "by using the :option:`!--title` option." +#~ msgstr "" +#~ "L'installateur affichera aussi un grand titre en arrière plan de la " +#~ "fenêtre quand exécuté, qui est composé du nom de votre distribution et du " +#~ "numéro de version. Cela peut être changé avec un autre texte avec " +#~ "l'option :option:`!--title`." + +#~ msgid "" +#~ "The installer file will be written to the \"distribution directory\" --- " +#~ "normally :file:`dist/`, but customizable with the :option:`!--dist-dir` " +#~ "option." +#~ msgstr "" +#~ "Le fichier d'installation sera écrit dans le dossier de distribution " +#~ "(\"*distribution directory*\") --- normalement :file:`dist/`, mais " +#~ "personnalisable avec l'option :option:`!--dist-dir`." + +#~ msgid "" +#~ "to build a 64bit version of your extension. The Windows Installers also " +#~ "support this option, so the command::" +#~ msgstr "" +#~ "pour construire une version 64 bits de votre module. L'installateur " +#~ "Windows supporte aussi cette option, donc la commande ::" + +#~ msgid "Vista User Access Control (UAC)" +#~ msgstr "Contrôle d'accès utilisateur Vista (UAC)" + +#~ msgid "" +#~ "Starting with Python 2.6, bdist_wininst supports a :option:`!--user-" +#~ "access-control` option. The default is 'none' (meaning no UAC handling " +#~ "is done), and other valid values are 'auto' (meaning prompt for UAC " +#~ "elevation if Python was installed for all users) and 'force' (meaning " +#~ "always prompt for elevation)." +#~ msgstr "" +#~ "Depuis Python 2.6, *bdist_wininst* accepte une option :option:`!--user-" +#~ "access-control`. Sa valeur par défaut est 'none' (Ce qui veut dire que " +#~ "aucun UAC est fait), et les autres valeurs valides sont 'auto' (ce qui " +#~ "veut dire qu'il faut demander une élévation de privilèges UAC si Python a " +#~ "été installé pour tous les utilisateurs) et 'force' (Toujours demander " +#~ "une élévation de privilèges)." diff --git a/distutils/index.po b/distutils/index.po index f3179492e..1e69bc4e6 100644 --- a/distutils/index.po +++ b/distutils/index.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-01-28 15:55+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -43,6 +43,14 @@ msgstr ":ref:`distributing-index`" msgid "The up to date module distribution documentations" msgstr "La documentation actuelle de distribution de modules" +#: distutils/index.rst:17 +msgid "" +"The entire ``distutils`` package has been deprecated and will be removed in " +"Python 3.12. This documentation is retained as a reference only, and will be " +"removed with the package. See the :ref:`What's New ` " +"entry for more information." +msgstr "" + #: distutils/_setuptools_disclaimer.rst:3 msgid "" "This document is being retained solely until the ``setuptools`` " @@ -54,7 +62,7 @@ msgstr "" "html couvre de manière indépendante toutes les informations pertinentes " "actuellement incluses ici." -#: distutils/index.rst:19 +#: distutils/index.rst:26 msgid "" "This guide only covers the basic tools for building and distributing " "extensions that are provided as part of this version of Python. Third party " @@ -69,7 +77,7 @@ msgstr "" "recommendations/>`__ dans le *Python Packaging User Guide* pour plus " "d'informations." -#: distutils/index.rst:25 +#: distutils/index.rst:32 msgid "" "This document describes the Python Distribution Utilities (\"Distutils\") " "from the module developer's point of view, describing the underlying " diff --git a/distutils/introduction.po b/distutils/introduction.po index a4c38e32f..419fb4cb8 100644 --- a/distutils/introduction.po +++ b/distutils/introduction.po @@ -3,9 +3,9 @@ # msgid "" msgstr "" -"Project-Id-Version: Python 3.8\n" +"Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-03-23 14:58+0100\n" "Last-Translator: Eric Régnier \n" "Language-Team: FRENCH \n" @@ -239,31 +239,6 @@ msgstr "" #: distutils/introduction.rst:115 msgid "" -"If you want to make things really easy for your users, you can create one or " -"more built distributions for them. For instance, if you are running on a " -"Windows machine, and want to make things easy for other Windows users, you " -"can create an executable installer (the most appropriate type of built " -"distribution for this platform) with the :command:`bdist_wininst` command. " -"For example::" -msgstr "" -"Si vous voulez rendre les choses vraiment faciles pour vos utilisateurs, " -"vous pouvez créer on ou plusieurs distributions compilées pour eux. En " -"l’occurrence, si vous tournez sous une machine Windows, et que vous voulez " -"rendre les choses faciles pour les autres utilisateurs Windows, vous pouvez " -"créer un installateur exécutable (le mode de distribution le plus approprié " -"pour cette plateforme) avec la commande :command:`bdist_wininst`. Par " -"exemple :" - -#: distutils/introduction.rst:123 -msgid "" -"will create an executable installer, :file:`foo-1.0.win32.exe`, in the " -"current directory." -msgstr "" -"va créer une installeur exécutable, :file:`foo-1.0.win32.exe`, dans le " -"répertoire courant." - -#: distutils/introduction.rst:126 -msgid "" "Other useful built distribution formats are RPM, implemented by the :command:" "`bdist_rpm` command, Solaris :program:`pkgtool` (:command:`bdist_pkgtool`), " "and HP-UX :program:`swinstall` (:command:`bdist_sdux`). For example, the " @@ -275,7 +250,7 @@ msgstr "" "exemple, la commande suivante va créer un fichier RPM appelé :file:`foo-1.0." "noarch.rpm`::" -#: distutils/introduction.rst:134 +#: distutils/introduction.rst:123 msgid "" "(The :command:`bdist_rpm` command uses the :command:`rpm` executable, " "therefore this has to be run on an RPM-based system such as Red Hat Linux, " @@ -285,7 +260,7 @@ msgstr "" "cependant cela doit être exécuté sur un système basé sur RPM tel que Red Hat " "Linux, SuSE Linux, or Mandrake Linux.)" -#: distutils/introduction.rst:138 +#: distutils/introduction.rst:127 msgid "" "You can find out what distribution formats are available at any time by " "running ::" @@ -293,11 +268,11 @@ msgstr "" "Vous pouvez trouver quelles sont les formats de distribution disponibles à " "n'importe quel moment en exécutant :" -#: distutils/introduction.rst:147 +#: distutils/introduction.rst:136 msgid "General Python terminology" msgstr "Terminologie Python générale" -#: distutils/introduction.rst:149 +#: distutils/introduction.rst:138 msgid "" "If you're reading this document, you probably have a good idea of what " "modules, extensions, and so forth are. Nevertheless, just to be sure that " @@ -309,11 +284,11 @@ msgstr "" "le monde opère depuis un point d'entrée commun, nous reprécisons le " "glossaire suivant des termes Python communs :" -#: distutils/introduction.rst:157 +#: distutils/introduction.rst:146 msgid "module" msgstr "module" -#: distutils/introduction.rst:155 +#: distutils/introduction.rst:144 msgid "" "the basic unit of code reusability in Python: a block of code imported by " "some other code. Three types of modules concern us here: pure Python " @@ -323,11 +298,11 @@ msgstr "" "un autre code. Trois types de modules nous concernent ici : les purs modules " "Python, les modules d'extension, et les packages." -#: distutils/introduction.rst:162 +#: distutils/introduction.rst:151 msgid "pure Python module" msgstr "pur module Python" -#: distutils/introduction.rst:160 +#: distutils/introduction.rst:149 msgid "" "a module written in Python and contained in a single :file:`.py` file (and " "possibly associated :file:`.pyc` files). Sometimes referred to as a \"pure " @@ -336,11 +311,11 @@ msgstr "" "un module écrit en Python et contenu dans un seul fichier :file:`.py` (et " "possiblement un fichier :file:`.pyc` associé). Parfois appelé \"pur module.\"" -#: distutils/introduction.rst:170 +#: distutils/introduction.rst:159 msgid "extension module" msgstr "module d'extension" -#: distutils/introduction.rst:165 +#: distutils/introduction.rst:154 msgid "" "a module written in the low-level language of the Python implementation: C/C+" "+ for Python, Java for Jython. Typically contained in a single dynamically " @@ -358,11 +333,11 @@ msgstr "" "classe Java pour les extensions Jython (notez qu'actuellement, Distutils " "gère seulement les extensions Python C/C++)." -#: distutils/introduction.rst:175 +#: distutils/introduction.rst:164 msgid "package" msgstr "paquet" -#: distutils/introduction.rst:173 +#: distutils/introduction.rst:162 msgid "" "a module that contains other modules; typically contained in a directory in " "the filesystem and distinguished from other directories by the presence of a " @@ -372,11 +347,11 @@ msgstr "" "répertoire du système de fichier et qui se distingue des autres répertoires " "par la présence d'un fichier :file:`__init__.py`." -#: distutils/introduction.rst:185 +#: distutils/introduction.rst:174 msgid "root package" msgstr "paquet racine" -#: distutils/introduction.rst:178 +#: distutils/introduction.rst:167 msgid "" "the root of the hierarchy of packages. (This isn't really a package, since " "it doesn't have an :file:`__init__.py` file. But we have to call it " @@ -395,11 +370,11 @@ msgstr "" "plusieurs répertoires : en effet, tous les répertoires listés ``sys.path`` " "contribuent à faire partie du package racine." -#: distutils/introduction.rst:190 +#: distutils/introduction.rst:179 msgid "Distutils-specific terminology" msgstr "Terminologie spécifique à Distutils" -#: distutils/introduction.rst:192 +#: distutils/introduction.rst:181 msgid "" "The following terms apply more specifically to the domain of distributing " "Python modules using the Distutils:" @@ -407,11 +382,11 @@ msgstr "" "Les termes suivant s'appliquent plus spécifiquement au domaine de la " "distribution de modules Python en utilisant les Distutils :" -#: distutils/introduction.rst:201 +#: distutils/introduction.rst:190 msgid "module distribution" msgstr "module de distribution" -#: distutils/introduction.rst:196 +#: distutils/introduction.rst:185 msgid "" "a collection of Python modules distributed together as a single downloadable " "resource and meant to be installed *en masse*. Examples of some well-known " @@ -426,11 +401,11 @@ msgstr "" "soit déjà pris dans le contexte Python : une distribution de module simple " "pourrait contenir zéro, on ou plusieurs packages Python" -#: distutils/introduction.rst:205 +#: distutils/introduction.rst:194 msgid "pure module distribution" msgstr "distribution de modules purs" -#: distutils/introduction.rst:204 +#: distutils/introduction.rst:193 msgid "" "a module distribution that contains only pure Python modules and packages. " "Sometimes referred to as a \"pure distribution.\"" @@ -438,11 +413,11 @@ msgstr "" "une distribution de module qui contient seulement des modules purs et " "packages Python. Parfois appelée « distribution pure »." -#: distutils/introduction.rst:209 +#: distutils/introduction.rst:198 msgid "non-pure module distribution" msgstr "distribution de module non pur" -#: distutils/introduction.rst:208 +#: distutils/introduction.rst:197 msgid "" "a module distribution that contains at least one extension module. " "Sometimes referred to as a \"non-pure distribution.\"" @@ -450,11 +425,11 @@ msgstr "" "une distribution de module qui contient au moins un module d'extension. " "Parfois appelée « distribution non-pure »." -#: distutils/introduction.rst:213 +#: distutils/introduction.rst:202 msgid "distribution root" msgstr "distribution racine" -#: distutils/introduction.rst:212 +#: distutils/introduction.rst:201 msgid "" "the top-level directory of your source tree (or source distribution); the " "directory where :file:`setup.py` exists. Generally :file:`setup.py` will " @@ -463,3 +438,26 @@ msgstr "" "le répertoire de plus haut niveau de votre arborescence (ou distribution " "source) ; le répertoire ou :file:`setup.py` existe. Généralement :file:" "`setup.py` est exécuté depuis ce répertoire." + +#~ msgid "" +#~ "If you want to make things really easy for your users, you can create one " +#~ "or more built distributions for them. For instance, if you are running " +#~ "on a Windows machine, and want to make things easy for other Windows " +#~ "users, you can create an executable installer (the most appropriate type " +#~ "of built distribution for this platform) with the :command:" +#~ "`bdist_wininst` command. For example::" +#~ msgstr "" +#~ "Si vous voulez rendre les choses vraiment faciles pour vos utilisateurs, " +#~ "vous pouvez créer on ou plusieurs distributions compilées pour eux. En " +#~ "l’occurrence, si vous tournez sous une machine Windows, et que vous " +#~ "voulez rendre les choses faciles pour les autres utilisateurs Windows, " +#~ "vous pouvez créer un installateur exécutable (le mode de distribution le " +#~ "plus approprié pour cette plateforme) avec la commande :command:" +#~ "`bdist_wininst`. Par exemple :" + +#~ msgid "" +#~ "will create an executable installer, :file:`foo-1.0.win32.exe`, in the " +#~ "current directory." +#~ msgstr "" +#~ "va créer une installeur exécutable, :file:`foo-1.0.win32.exe`, dans le " +#~ "répertoire courant." diff --git a/extending/extending.po b/extending/extending.po index cd580e4c3..7a7b2920a 100644 --- a/extending/extending.po +++ b/extending/extending.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-02-07 22:27+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -1177,18 +1177,14 @@ msgid "" "The cycle detector is able to detect garbage cycles and can reclaim them. " "The :mod:`gc` module exposes a way to run the detector (the :func:`~gc." "collect` function), as well as configuration interfaces and the ability to " -"disable the detector at runtime. The cycle detector is considered an " -"optional component; though it is included by default, it can be disabled at " -"build time using the :option:`!--without-cycle-gc` option to the :program:" -"`configure` script on Unix platforms (including Mac OS X). If the cycle " -"detector is disabled in this way, the :mod:`gc` module will not be available." +"disable the detector at runtime." msgstr "" -#: extending/extending.rst:925 +#: extending/extending.rst:920 msgid "Reference Counting in Python" msgstr "Comptage de références en Python" -#: extending/extending.rst:927 +#: extending/extending.rst:922 msgid "" "There are two macros, ``Py_INCREF(x)`` and ``Py_DECREF(x)``, which handle " "the incrementing and decrementing of the reference count. :c:func:" @@ -1206,7 +1202,7 @@ msgstr "" "objet` de l'objet. À cette fin (et pour d'autres), chaque objet contient " "également un pointeur vers son objet type." -#: extending/extending.rst:934 +#: extending/extending.rst:929 msgid "" "The big question now remains: when to use ``Py_INCREF(x)`` and " "``Py_DECREF(x)``? Let's first introduce some terms. Nobody \"owns\" an " @@ -1229,7 +1225,7 @@ msgstr "" "c:func:`Py_DECREF`. Oublier de se débarrasser d'une référence crée une fuite " "de mémoire." -#: extending/extending.rst:943 +#: extending/extending.rst:938 msgid "" "It is also possible to :dfn:`borrow` [#]_ a reference to an object. The " "borrower of a reference should not call :c:func:`Py_DECREF`. The borrower " @@ -1238,7 +1234,7 @@ msgid "" "risks using freed memory and should be avoided completely [#]_." msgstr "" -#: extending/extending.rst:949 +#: extending/extending.rst:944 msgid "" "The advantage of borrowing over owning a reference is that you don't need to " "take care of disposing of the reference on all possible paths through the " @@ -1257,7 +1253,7 @@ msgstr "" "correct, une référence empruntée peut être utilisée après que le " "propriétaire auquel elle a été empruntée l'a en fait éliminée." -#: extending/extending.rst:957 +#: extending/extending.rst:952 msgid "" "A borrowed reference can be changed into an owned reference by calling :c:" "func:`Py_INCREF`. This does not affect the status of the owner from which " @@ -1266,11 +1262,11 @@ msgid "" "properly, as well as the previous owner)." msgstr "" -#: extending/extending.rst:967 +#: extending/extending.rst:962 msgid "Ownership Rules" msgstr "Règles concernant la propriété de références" -#: extending/extending.rst:969 +#: extending/extending.rst:964 msgid "" "Whenever an object reference is passed into or out of a function, it is part " "of the function's interface specification whether ownership is transferred " @@ -1281,7 +1277,7 @@ msgstr "" "l'interface de la fonction, peu importe que la propriété soit transférée " "avec la référence ou non." -#: extending/extending.rst:973 +#: extending/extending.rst:968 msgid "" "Most functions that return a reference to an object pass on ownership with " "the reference. In particular, all functions whose function it is to create " @@ -1292,7 +1288,7 @@ msgid "" "reference to a cached item." msgstr "" -#: extending/extending.rst:981 +#: extending/extending.rst:976 msgid "" "Many functions that extract objects from other objects also transfer " "ownership with the reference, for instance :c:func:" @@ -1303,14 +1299,14 @@ msgid "" "list or dictionary." msgstr "" -#: extending/extending.rst:988 +#: extending/extending.rst:983 msgid "" "The function :c:func:`PyImport_AddModule` also returns a borrowed reference, " "even though it may actually create the object it returns: this is possible " "because an owned reference to the object is stored in ``sys.modules``." msgstr "" -#: extending/extending.rst:992 +#: extending/extending.rst:987 msgid "" "When you pass an object reference into another function, in general, the " "function borrows the reference from you --- if it needs to store it, it will " @@ -1321,7 +1317,7 @@ msgid "" "don't take over ownership --- they are \"normal.\")" msgstr "" -#: extending/extending.rst:1000 +#: extending/extending.rst:995 msgid "" "When a C function is called from Python, it borrows references to its " "arguments from the caller. The caller owns a reference to the object, so " @@ -1330,18 +1326,18 @@ msgid "" "turned into an owned reference by calling :c:func:`Py_INCREF`." msgstr "" -#: extending/extending.rst:1006 +#: extending/extending.rst:1001 msgid "" "The object reference returned from a C function that is called from Python " "must be an owned reference --- ownership is transferred from the function to " "its caller." msgstr "" -#: extending/extending.rst:1014 +#: extending/extending.rst:1009 msgid "Thin Ice" msgstr "Terrain dangereux" -#: extending/extending.rst:1016 +#: extending/extending.rst:1011 msgid "" "There are a few situations where seemingly harmless use of a borrowed " "reference can lead to problems. These all have to do with implicit " @@ -1353,7 +1349,7 @@ msgstr "" "lien avec des invocations implicites de l’interpréteur, et peuvent amener le " "propriétaire d'une référence à s'en défaire." -#: extending/extending.rst:1020 +#: extending/extending.rst:1015 msgid "" "The first and most important case to know about is using :c:func:`Py_DECREF` " "on an unrelated object while borrowing a reference to a list item. For " @@ -1363,7 +1359,7 @@ msgstr "" "de :c:func:`Py_DECREF` à un objet non relié, tout en empruntant une " "référence à un élément de liste. Par exemple ::" -#: extending/extending.rst:1032 +#: extending/extending.rst:1027 msgid "" "This function first borrows a reference to ``list[0]``, then replaces " "``list[1]`` with the value ``0``, and finally prints the borrowed reference. " @@ -1373,7 +1369,7 @@ msgstr "" "``list[1]`` par la valeur ``0``, et enfin affiche la référence empruntée. " "Ça a l'air inoffensif, n'est-ce pas ? Mais ce n'est pas le cas !" -#: extending/extending.rst:1036 +#: extending/extending.rst:1031 msgid "" "Let's follow the control flow into :c:func:`PyList_SetItem`. The list owns " "references to all its items, so when item 1 is replaced, it has to dispose " @@ -1390,7 +1386,7 @@ msgstr "" "meth:`__del__`. Si l'instance de cette classe a un nombre des références de " "1, sa destruction appellera sa méthode :meth:`__del__`." -#: extending/extending.rst:1043 +#: extending/extending.rst:1038 msgid "" "Since it is written in Python, the :meth:`__del__` method can execute " "arbitrary Python code. Could it perhaps do something to invalidate the " @@ -1408,20 +1404,20 @@ msgstr "" "supposant que ce soit la dernière référence à cet objet, elle libérerait la " "mémoire qui lui est associée, invalidant ainsi ``item``." -#: extending/extending.rst:1051 +#: extending/extending.rst:1046 msgid "" "The solution, once you know the source of the problem, is easy: temporarily " "increment the reference count. The correct version of the function reads::" msgstr "" -#: extending/extending.rst:1065 +#: extending/extending.rst:1060 msgid "" "This is a true story. An older version of Python contained variants of this " "bug and someone spent a considerable amount of time in a C debugger to " "figure out why his :meth:`__del__` methods would fail..." msgstr "" -#: extending/extending.rst:1069 +#: extending/extending.rst:1064 msgid "" "The second case of problems with a borrowed reference is a variant involving " "threads. Normally, multiple threads in the Python interpreter can't get in " @@ -1444,11 +1440,11 @@ msgstr "" "processeur en attendant que les E/S soient terminées. Évidemment, la " "fonction suivante a le même problème que la précédente ::" -#: extending/extending.rst:1092 +#: extending/extending.rst:1087 msgid "NULL Pointers" msgstr "Pointeurs ``NULL``" -#: extending/extending.rst:1094 +#: extending/extending.rst:1089 msgid "" "In general, functions that take object references as arguments do not expect " "you to pass them ``NULL`` pointers, and will dump core (or cause later core " @@ -1470,7 +1466,7 @@ msgstr "" "devait tester pour ``NULL``, il y aurait beaucoup de tests redondants et le " "code s'exécuterait plus lentement." -#: extending/extending.rst:1102 +#: extending/extending.rst:1097 msgid "" "It is better to test for ``NULL`` only at the \"source:\" when a pointer " "that may be ``NULL`` is received, for example, from :c:func:`malloc` or from " @@ -1480,7 +1476,7 @@ msgstr "" "lorsqu'un pointeur qui peut être ``NULL`` est reçu, par exemple, de :c:func:" "`malloc` ou d'une fonction qui peut lever une exception." -#: extending/extending.rst:1106 +#: extending/extending.rst:1101 msgid "" "The macros :c:func:`Py_INCREF` and :c:func:`Py_DECREF` do not check for " "``NULL`` pointers --- however, their variants :c:func:`Py_XINCREF` and :c:" @@ -1490,7 +1486,7 @@ msgstr "" "pointeurs ``NULL``. Cependant, leurs variantes :c:func:`Py_XINCREF` et :c:" "func:`Py_XDECREF` le font." -#: extending/extending.rst:1110 +#: extending/extending.rst:1105 msgid "" "The macros for checking for a particular object type (``Pytype_Check()``) " "don't check for ``NULL`` pointers --- again, there is much code that calls " @@ -1499,7 +1495,7 @@ msgid "" "variants with ``NULL`` checking." msgstr "" -#: extending/extending.rst:1116 +#: extending/extending.rst:1111 msgid "" "The C function calling mechanism guarantees that the argument list passed to " "C functions (``args`` in the examples) is never ``NULL`` --- in fact it " @@ -1509,7 +1505,7 @@ msgstr "" "aux fonctions C (``args`` dans les exemples) n'est jamais ``NULL``. En fait, " "il garantit qu'il s'agit toujours d'un n-uplet [#]_." -#: extending/extending.rst:1120 +#: extending/extending.rst:1115 msgid "" "It is a severe error to ever let a ``NULL`` pointer \"escape\" to the Python " "user." @@ -1517,11 +1513,11 @@ msgstr "" "C'est une grave erreur de laisser un pointeur ``NULL`` \"échapper\" à " "l'utilisateur Python." -#: extending/extending.rst:1131 +#: extending/extending.rst:1126 msgid "Writing Extensions in C++" msgstr "Écrire des extensions en C++" -#: extending/extending.rst:1133 +#: extending/extending.rst:1128 msgid "" "It is possible to write extension modules in C++. Some restrictions apply. " "If the main program (the Python interpreter) is compiled and linked by the C " @@ -1545,11 +1541,11 @@ msgstr "" "``__cplusplus`` est défini (tous les compilateurs C++ récents définissent ce " "symbole)." -#: extending/extending.rst:1147 +#: extending/extending.rst:1142 msgid "Providing a C API for an Extension Module" msgstr "Fournir une API en langage C pour un module d'extension" -#: extending/extending.rst:1152 +#: extending/extending.rst:1147 msgid "" "Many extension modules just provide new functions and types to be used from " "Python, but sometimes the code in an extension module can be useful for " @@ -1569,7 +1565,7 @@ msgstr "" "collection devrait posséder un ensemble de fonctions C pour une manipulation " "directe à partir d'autres modules d'extension." -#: extending/extending.rst:1160 +#: extending/extending.rst:1155 msgid "" "At first sight this seems easy: just write the functions (without declaring " "them ``static``, of course), provide an appropriate header file, and " @@ -1599,7 +1595,7 @@ msgstr "" "*Unix*). Et même si les symboles sont globalement visibles, le module dont " "on souhaite appeler les fonctions n'est peut-être pas encore chargé !" -#: extending/extending.rst:1172 +#: extending/extending.rst:1167 msgid "" "Portability therefore requires not to make any assumptions about symbol " "visibility. This means that all symbols in extension modules should be " @@ -1617,7 +1613,7 @@ msgstr "" "accessibles à partir d'autres modules d'extension doivent être exportés " "d'une manière différente." -#: extending/extending.rst:1179 +#: extending/extending.rst:1174 msgid "" "Python provides a special mechanism to pass C-level information (pointers) " "from one extension module to another one: Capsules. A Capsule is a Python " @@ -1629,7 +1625,7 @@ msgid "" "the Capsule." msgstr "" -#: extending/extending.rst:1187 +#: extending/extending.rst:1182 msgid "" "There are many ways in which Capsules can be used to export the C API of an " "extension module. Each function could get its own Capsule, or all C API " @@ -1646,7 +1642,7 @@ msgstr "" "différentes manières entre le module fournissant le code et les modules " "clients." -#: extending/extending.rst:1193 +#: extending/extending.rst:1188 #, fuzzy msgid "" "Whichever method you choose, it's important to name your Capsules properly. " @@ -1664,13 +1660,13 @@ msgstr "" "concernant un éventuel conflit de types, car il n'y a pas de moyen de " "distinguer deux ou plusieurs Capsules non nommée entre elles." -#: extending/extending.rst:1200 +#: extending/extending.rst:1195 msgid "" "In particular, Capsules used to expose C APIs should be given a name " "following this convention::" msgstr "" -#: extending/extending.rst:1205 +#: extending/extending.rst:1200 #, fuzzy msgid "" "The convenience function :c:func:`PyCapsule_Import` makes it easy to load a " @@ -1684,7 +1680,7 @@ msgstr "" "utilisateurs d'API C un degré élevé de certitude que la Capsule qu'ils " "chargent contient l'API C correcte." -#: extending/extending.rst:1210 +#: extending/extending.rst:1205 msgid "" "The following example demonstrates an approach that puts most of the burden " "on the writer of the exporting module, which is appropriate for commonly " @@ -1703,7 +1699,7 @@ msgstr "" "le module et de récupérer ses pointeurs d'API C. Les modules clients n'ont " "qu'à appeler cette macro avant d'accéder à l'API C." -#: extending/extending.rst:1218 +#: extending/extending.rst:1213 msgid "" "The exporting module is a modification of the :mod:`spam` module from " "section :ref:`extending-simpleexample`. The function :func:`spam.system` " @@ -1720,25 +1716,25 @@ msgstr "" "Cette fonction :c:func:`PySpam_System` est également exportée vers d'autres " "modules d'extension." -#: extending/extending.rst:1225 +#: extending/extending.rst:1220 msgid "" "The function :c:func:`PySpam_System` is a plain C function, declared " "``static`` like everything else::" msgstr "" -#: extending/extending.rst:1234 +#: extending/extending.rst:1229 msgid "The function :c:func:`spam_system` is modified in a trivial way::" msgstr "La fonction :c:func:`spam_system` est modifiée de manière simple ::" -#: extending/extending.rst:1248 +#: extending/extending.rst:1243 msgid "In the beginning of the module, right after the line ::" msgstr "Au début du module, immédiatement après la ligne ::" -#: extending/extending.rst:1252 +#: extending/extending.rst:1247 msgid "two more lines must be added::" msgstr "on doit ajouter deux lignes supplémentaires ::" -#: extending/extending.rst:1257 +#: extending/extending.rst:1252 msgid "" "The ``#define`` is used to tell the header file that it is being included in " "the exporting module, not a client module. Finally, the module's " @@ -1750,7 +1746,7 @@ msgstr "" "Enfin, la fonction d'initialisation du module doit prendre en charge " "l'initialisation du tableau de pointeurs de l'API C ::" -#: extending/extending.rst:1287 +#: extending/extending.rst:1282 msgid "" "Note that ``PySpam_API`` is declared ``static``; otherwise the pointer array " "would disappear when :func:`PyInit_spam` terminates!" @@ -1758,7 +1754,7 @@ msgstr "" "Notez que ``PySpam_API`` est déclaré ``static`` ; sinon le tableau de " "pointeurs disparaîtrait lorsque :func:`PyInit_spam`` se finit !" -#: extending/extending.rst:1290 +#: extending/extending.rst:1285 msgid "" "The bulk of the work is in the header file :file:`spammodule.h`, which looks " "like this::" @@ -1766,7 +1762,7 @@ msgstr "" "L'essentiel du travail se trouve dans le fichier d'en-tête :file:`spammodule." "h`, qui ressemble à ceci ::" -#: extending/extending.rst:1341 +#: extending/extending.rst:1336 msgid "" "All that a client module must do in order to have access to the function :c:" "func:`PySpam_System` is to call the function (or rather macro) :c:func:" @@ -1776,7 +1772,7 @@ msgstr "" "func:`PySpam_System` est d'appeler la fonction (ou plutôt la macro) :c:func:" "`import_spam` dans sa fonction d'initialisation ::" -#: extending/extending.rst:1359 +#: extending/extending.rst:1354 msgid "" "The main disadvantage of this approach is that the file :file:`spammodule.h` " "is rather complicated. However, the basic structure is the same for each " @@ -1787,7 +1783,7 @@ msgstr "" "même pour chaque fonction exportée, ce qui fait qu'elle ne doit être apprise " "qu'une seule fois." -#: extending/extending.rst:1363 +#: extending/extending.rst:1358 msgid "" "Finally it should be mentioned that Capsules offer additional functionality, " "which is especially useful for memory allocation and deallocation of the " @@ -1804,11 +1800,11 @@ msgstr "" "file:`Include/pycapsule.h` et :file:`Objects/pycapsule.c` dans la " "distribution du code source Python)." -#: extending/extending.rst:1371 +#: extending/extending.rst:1366 msgid "Footnotes" msgstr "Notes" -#: extending/extending.rst:1372 +#: extending/extending.rst:1367 msgid "" "An interface for this function already exists in the standard module :mod:" "`os` --- it was chosen as a simple and straightforward example." @@ -1816,7 +1812,7 @@ msgstr "" "Une interface pour cette fonction existe déjà dans le module standard :mod:" "`os`, elle a été choisie comme un exemple simple et direct." -#: extending/extending.rst:1375 +#: extending/extending.rst:1370 msgid "" "The metaphor of \"borrowing\" a reference is not completely correct: the " "owner still has a copy of the reference." @@ -1824,7 +1820,7 @@ msgstr "" "L'expression « emprunter une référence » n'est pas tout à fait correcte, car " "le propriétaire a toujours une copie de la référence." -#: extending/extending.rst:1378 +#: extending/extending.rst:1373 msgid "" "Checking that the reference count is at least 1 **does not work** --- the " "reference count itself could be in freed memory and may thus be reused for " @@ -1834,7 +1830,7 @@ msgstr "" "pas**, le compte de référence lui-même pourrait être en mémoire libérée et " "peut donc être réutilisé pour un autre objet !" -#: extending/extending.rst:1382 +#: extending/extending.rst:1377 msgid "" "These guarantees don't hold when you use the \"old\" style calling " "convention --- this is still found in much existing code." diff --git a/extending/newtypes.po b/extending/newtypes.po index 8b66b30ef..c478a12a3 100644 --- a/extending/newtypes.po +++ b/extending/newtypes.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-24 17:33+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-02-07 20:03+0100\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -28,7 +28,7 @@ msgstr "" #: extending/newtypes.rst:14 msgid "" "Here is the definition of :c:type:`PyTypeObject`, with some fields only used " -"in debug builds omitted:" +"in :ref:`debug builds ` omitted:" msgstr "" #: extending/newtypes.rst:20 @@ -311,30 +311,25 @@ msgid "Never writable." msgstr "Jamais disponible en écriture." #: extending/newtypes.rst:290 -msgid ":const:`READ_RESTRICTED`" -msgstr ":const:`READ_RESTRICTED`" +#, fuzzy +msgid ":const:`PY_AUDIT_READ`" +msgstr ":const:`READONLY`" #: extending/newtypes.rst:290 -msgid "Not readable in restricted mode." -msgstr "Non disponible en lecture, dans le mode restreint." - -#: extending/newtypes.rst:292 -msgid ":const:`WRITE_RESTRICTED`" -msgstr ":const:`WRITE_RESTRICTED`" - -#: extending/newtypes.rst:292 -msgid "Not writable in restricted mode." -msgstr "Non disponible en écriture dans le mode restreint." - -#: extending/newtypes.rst:294 -msgid ":const:`RESTRICTED`" -msgstr ":const:`RESTRICTED`" +msgid "" +"Emit an ``object.__getattr__`` :ref:`audit events ` before " +"reading." +msgstr "" -#: extending/newtypes.rst:294 -msgid "Not readable or writable in restricted mode." -msgstr "Non disponible en lecture ou écriture, en mode restreint." +#: extending/newtypes.rst:295 +msgid "" +":const:`RESTRICTED`, :const:`READ_RESTRICTED` and :const:`WRITE_RESTRICTED` " +"are deprecated. However, :const:`READ_RESTRICTED` is an alias for :const:" +"`PY_AUDIT_READ`, so fields that specify either :const:`RESTRICTED` or :const:" +"`READ_RESTRICTED` will also raise an audit event." +msgstr "" -#: extending/newtypes.rst:303 +#: extending/newtypes.rst:308 msgid "" "An interesting advantage of using the :c:member:`~PyTypeObject.tp_members` " "table to build descriptors that are used at runtime is that any attribute " @@ -351,17 +346,17 @@ msgstr "" "descripteur de l'objet de classe, et utiliser son attribut :attr:`__doc__` " "pour renvoyer le *docstring*." -#: extending/newtypes.rst:309 +#: extending/newtypes.rst:314 msgid "" "As with the :c:member:`~PyTypeObject.tp_methods` table, a sentinel entry " "with a :attr:`name` value of ``NULL`` is required." msgstr "" -#: extending/newtypes.rst:323 +#: extending/newtypes.rst:328 msgid "Type-specific Attribute Management" msgstr "Gestion des attributs de type spécifiques" -#: extending/newtypes.rst:325 +#: extending/newtypes.rst:330 msgid "" "For simplicity, only the :c:type:`char\\*` version will be demonstrated " "here; the type of the name parameter is the only difference between the :c:" @@ -372,18 +367,18 @@ msgid "" "functionality, you'll understand what needs to be done." msgstr "" -#: extending/newtypes.rst:333 +#: extending/newtypes.rst:338 msgid "" "The :c:member:`~PyTypeObject.tp_getattr` handler is called when the object " "requires an attribute look-up. It is called in the same situations where " "the :meth:`__getattr__` method of a class would be called." msgstr "" -#: extending/newtypes.rst:337 +#: extending/newtypes.rst:342 msgid "Here is an example::" msgstr "Voici un exemple ::" -#: extending/newtypes.rst:353 +#: extending/newtypes.rst:358 msgid "" "The :c:member:`~PyTypeObject.tp_setattr` handler is called when the :meth:" "`__setattr__` or :meth:`__delattr__` method of a class instance would be " @@ -393,11 +388,11 @@ msgid "" "should be set to ``NULL``. ::" msgstr "" -#: extending/newtypes.rst:367 +#: extending/newtypes.rst:372 msgid "Object Comparison" msgstr "Comparaison des objets" -#: extending/newtypes.rst:373 +#: extending/newtypes.rst:378 msgid "" "The :c:member:`~PyTypeObject.tp_richcompare` handler is called when " "comparisons are needed. It is analogous to the :ref:`rich comparison " @@ -405,7 +400,7 @@ msgid "" "`PyObject_RichCompare` and :c:func:`PyObject_RichCompareBool`." msgstr "" -#: extending/newtypes.rst:378 +#: extending/newtypes.rst:383 msgid "" "This function is called with two Python objects and the operator as " "arguments, where the operator is one of ``Py_EQ``, ``Py_NE``, ``Py_LE``, " @@ -416,23 +411,23 @@ msgid "" "should be tried, or ``NULL`` if an exception was set." msgstr "" -#: extending/newtypes.rst:386 +#: extending/newtypes.rst:391 msgid "" "Here is a sample implementation, for a datatype that is considered equal if " "the size of an internal pointer is equal::" msgstr "" -#: extending/newtypes.rst:416 +#: extending/newtypes.rst:421 msgid "Abstract Protocol Support" msgstr "Support pour le protocole abstrait" -#: extending/newtypes.rst:418 +#: extending/newtypes.rst:423 msgid "" "Python supports a variety of *abstract* 'protocols;' the specific interfaces " "provided to use these interfaces are documented in :ref:`abstract`." msgstr "" -#: extending/newtypes.rst:422 +#: extending/newtypes.rst:427 msgid "" "A number of these abstract interfaces were defined early in the development " "of the Python implementation. In particular, the number, mapping, and " @@ -447,7 +442,7 @@ msgid "" "slot, but a slot may still be unfilled.) ::" msgstr "" -#: extending/newtypes.rst:437 +#: extending/newtypes.rst:442 msgid "" "If you wish your object to be able to act like a number, a sequence, or a " "mapping object, then you place the address of a structure that implements " @@ -458,13 +453,13 @@ msgid "" "distribution. ::" msgstr "" -#: extending/newtypes.rst:446 +#: extending/newtypes.rst:451 msgid "" "This function, if you choose to provide it, should return a hash number for " "an instance of your data type. Here is a simple example::" msgstr "" -#: extending/newtypes.rst:459 +#: extending/newtypes.rst:464 msgid "" ":c:type:`Py_hash_t` is a signed integer type with a platform-varying width. " "Returning ``-1`` from :c:member:`~PyTypeObject.tp_hash` indicates an error, " @@ -472,7 +467,7 @@ msgid "" "computation is successful, as seen above." msgstr "" -#: extending/newtypes.rst:468 +#: extending/newtypes.rst:473 msgid "" "This function is called when an instance of your data type is \"called\", " "for example, if ``obj1`` is an instance of your data type and the Python " @@ -480,23 +475,23 @@ msgid "" "handler is invoked." msgstr "" -#: extending/newtypes.rst:472 +#: extending/newtypes.rst:477 msgid "This function takes three arguments:" msgstr "Cette fonction prend trois arguments :" -#: extending/newtypes.rst:474 +#: extending/newtypes.rst:479 msgid "" "*self* is the instance of the data type which is the subject of the call. If " "the call is ``obj1('hello')``, then *self* is ``obj1``." msgstr "" -#: extending/newtypes.rst:477 +#: extending/newtypes.rst:482 msgid "" "*args* is a tuple containing the arguments to the call. You can use :c:func:" "`PyArg_ParseTuple` to extract the arguments." msgstr "" -#: extending/newtypes.rst:480 +#: extending/newtypes.rst:485 msgid "" "*kwds* is a dictionary of keyword arguments that were passed. If this is non-" "``NULL`` and you support keyword arguments, use :c:func:" @@ -505,11 +500,11 @@ msgid "" "`TypeError` with a message saying that keyword arguments are not supported." msgstr "" -#: extending/newtypes.rst:486 +#: extending/newtypes.rst:491 msgid "Here is a toy ``tp_call`` implementation::" msgstr "Ceci est une implémentation ``tp_call`` très simple ::" -#: extending/newtypes.rst:512 +#: extending/newtypes.rst:517 msgid "" "These functions provide support for the iterator protocol. Both handlers " "take exactly one parameter, the instance for which they are being called, " @@ -520,7 +515,7 @@ msgid "" "__next__` method." msgstr "" -#: extending/newtypes.rst:519 +#: extending/newtypes.rst:524 msgid "" "Any :term:`iterable` object must implement the :c:member:`~PyTypeObject." "tp_iter` handler, which must return an :term:`iterator` object. Here the " @@ -531,7 +526,7 @@ msgstr "" "`iterator`. Ici, les mêmes directives s'appliquent de la même façon que " "pour les classes *Python* :" -#: extending/newtypes.rst:523 +#: extending/newtypes.rst:528 msgid "" "For collections (such as lists and tuples) which can support multiple " "independent iterators, a new iterator should be created and returned by each " @@ -541,7 +536,7 @@ msgstr "" "implémenter plusieurs itérateurs indépendants, un nouvel itérateur doit être " "créé et renvoyé par chaque appel de type :c:member:`~PyTypeObject.tp_iter`." -#: extending/newtypes.rst:526 +#: extending/newtypes.rst:531 msgid "" "Objects which can only be iterated over once (usually due to side effects of " "iteration, such as file objects) can implement :c:member:`~PyTypeObject." @@ -549,7 +544,7 @@ msgid "" "therefore implement the :c:member:`~PyTypeObject.tp_iternext` handler." msgstr "" -#: extending/newtypes.rst:531 +#: extending/newtypes.rst:536 msgid "" "Any :term:`iterator` object should implement both :c:member:`~PyTypeObject." "tp_iter` and :c:member:`~PyTypeObject.tp_iternext`. An iterator's :c:member:" @@ -564,11 +559,11 @@ msgid "" "``NULL``." msgstr "" -#: extending/newtypes.rst:547 +#: extending/newtypes.rst:552 msgid "Weak Reference Support" msgstr "Prise en charge de la référence faible" -#: extending/newtypes.rst:549 +#: extending/newtypes.rst:554 msgid "" "One of the goals of Python's weak reference implementation is to allow any " "type to participate in the weak reference mechanism without incurring the " @@ -579,11 +574,11 @@ msgstr "" "faible sans avoir à supporter le surcoût de la performance critique des " "certains objets, tels que les nombres." -#: extending/newtypes.rst:554 +#: extending/newtypes.rst:559 msgid "Documentation for the :mod:`weakref` module." msgstr "Documentation pour le module :mod:`weakref`." -#: extending/newtypes.rst:556 +#: extending/newtypes.rst:561 msgid "" "For an object to be weakly referencable, the extension type must do two " "things:" @@ -591,7 +586,7 @@ msgstr "" "Pour qu'un objet soit faiblement référençable, le type d'extension doit " "faire deux choses :" -#: extending/newtypes.rst:558 +#: extending/newtypes.rst:563 msgid "" "Include a :c:type:`PyObject\\*` field in the C object structure dedicated to " "the weak reference mechanism. The object's constructor should leave it " @@ -603,7 +598,7 @@ msgstr "" "la valeur ``NULL`` (ce qui est automatique lorsque l'on utilise le champ par " "défaut :c:member:`~PyTypeObject.tp_alloc`)." -#: extending/newtypes.rst:563 +#: extending/newtypes.rst:568 msgid "" "Set the :c:member:`~PyTypeObject.tp_weaklistoffset` type member to the " "offset of the aforementioned field in the C object structure, so that the " @@ -614,7 +609,7 @@ msgstr "" "l'objet *C*, afin que l'interpréteur sache comment accéder à ce champ et le " "modifier." -#: extending/newtypes.rst:567 +#: extending/newtypes.rst:572 msgid "" "Concretely, here is how a trivial object structure would be augmented with " "the required field::" @@ -622,12 +617,12 @@ msgstr "" "Concrètement, voici comment une structure d'objet simple serait complétée " "par le champ requis ::" -#: extending/newtypes.rst:575 +#: extending/newtypes.rst:580 msgid "And the corresponding member in the statically-declared type object::" msgstr "" "Et le membre correspondant dans l'objet de type déclaré statiquement ::" -#: extending/newtypes.rst:583 +#: extending/newtypes.rst:588 msgid "" "The only further addition is that ``tp_dealloc`` needs to clear any weak " "references (by calling :c:func:`PyObject_ClearWeakRefs`) if the field is non-" @@ -637,11 +632,11 @@ msgstr "" "référence faible (en appelant :c:func:`PyObject_ClearWeakRefs`) si le champ " "est non ``NULL`` ::" -#: extending/newtypes.rst:599 +#: extending/newtypes.rst:604 msgid "More Suggestions" msgstr "Plus de suggestions" -#: extending/newtypes.rst:601 +#: extending/newtypes.rst:606 msgid "" "In order to learn how to implement any specific method for your new data " "type, get the :term:`CPython` source code. Go to the :file:`Objects` " @@ -656,7 +651,7 @@ msgstr "" "``tp_richcompare``). Vous trouverez des exemples de la fonction que vous " "voulez implémenter." -#: extending/newtypes.rst:607 +#: extending/newtypes.rst:612 msgid "" "When you need to verify that an object is a concrete instance of the type " "you are implementing, use the :c:func:`PyObject_TypeCheck` function. A " @@ -666,20 +661,38 @@ msgstr "" "du type que vous implémentez, utilisez la fonction :c:func:" "`PyObject_TypeCheck`. Voici un exemple de son utilisation ::" -#: extending/newtypes.rst:618 +#: extending/newtypes.rst:623 msgid "Download CPython source releases." msgstr "Télécharger les versions sources de *CPython*." -#: extending/newtypes.rst:618 +#: extending/newtypes.rst:623 msgid "https://www.python.org/downloads/source/" msgstr "https://www.python.org/downloads/source/" -#: extending/newtypes.rst:620 +#: extending/newtypes.rst:625 msgid "" "The CPython project on GitHub, where the CPython source code is developed." msgstr "" "Le projet *CPython* sur *GitHub*, où se trouve le code source *CPython*." -#: extending/newtypes.rst:621 +#: extending/newtypes.rst:626 msgid "https://github.com/python/cpython" msgstr "https://github.com/python/cpython" + +#~ msgid ":const:`READ_RESTRICTED`" +#~ msgstr ":const:`READ_RESTRICTED`" + +#~ msgid "Not readable in restricted mode." +#~ msgstr "Non disponible en lecture, dans le mode restreint." + +#~ msgid ":const:`WRITE_RESTRICTED`" +#~ msgstr ":const:`WRITE_RESTRICTED`" + +#~ msgid "Not writable in restricted mode." +#~ msgstr "Non disponible en écriture dans le mode restreint." + +#~ msgid ":const:`RESTRICTED`" +#~ msgstr ":const:`RESTRICTED`" + +#~ msgid "Not readable or writable in restricted mode." +#~ msgstr "Non disponible en lecture ou écriture, en mode restreint." diff --git a/extending/newtypes_tutorial.po b/extending/newtypes_tutorial.po index 13887d06b..d4962eb3a 100644 --- a/extending/newtypes_tutorial.po +++ b/extending/newtypes_tutorial.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-06-17 10:15+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -100,34 +100,35 @@ msgid "" "type :c:type:`PyObject`, containing a pointer to a type object and a " "reference count (these can be accessed using the macros :c:macro:`Py_REFCNT` " "and :c:macro:`Py_TYPE` respectively). The reason for the macro is to " -"abstract away the layout and to enable additional fields in debug builds." +"abstract away the layout and to enable additional fields in :ref:`debug " +"builds `." msgstr "" -#: extending/newtypes_tutorial.rst:75 +#: extending/newtypes_tutorial.rst:76 msgid "" "There is no semicolon above after the :c:macro:`PyObject_HEAD` macro. Be " "wary of adding one by accident: some compilers will complain." msgstr "" -#: extending/newtypes_tutorial.rst:78 +#: extending/newtypes_tutorial.rst:79 msgid "" "Of course, objects generally store additional data besides the standard " "``PyObject_HEAD`` boilerplate; for example, here is the definition for " "standard Python floats::" msgstr "" -#: extending/newtypes_tutorial.rst:87 +#: extending/newtypes_tutorial.rst:88 msgid "The second bit is the definition of the type object. ::" msgstr "" -#: extending/newtypes_tutorial.rst:100 +#: extending/newtypes_tutorial.rst:101 msgid "" "We recommend using C99-style designated initializers as above, to avoid " "listing all the :c:type:`PyTypeObject` fields that you don't care about and " "also to avoid caring about the fields' declaration order." msgstr "" -#: extending/newtypes_tutorial.rst:104 +#: extending/newtypes_tutorial.rst:105 msgid "" "The actual definition of :c:type:`PyTypeObject` in :file:`object.h` has many " "more :ref:`fields ` than the definition above. The remaining " @@ -135,23 +136,23 @@ msgid "" "to not specify them explicitly unless you need them." msgstr "" -#: extending/newtypes_tutorial.rst:109 +#: extending/newtypes_tutorial.rst:110 msgid "We're going to pick it apart, one field at a time::" msgstr "" -#: extending/newtypes_tutorial.rst:113 +#: extending/newtypes_tutorial.rst:114 msgid "" "This line is mandatory boilerplate to initialize the ``ob_base`` field " "mentioned above. ::" msgstr "" -#: extending/newtypes_tutorial.rst:118 +#: extending/newtypes_tutorial.rst:119 msgid "" "The name of our type. This will appear in the default textual " "representation of our objects and in some error messages, for example:" msgstr "" -#: extending/newtypes_tutorial.rst:128 +#: extending/newtypes_tutorial.rst:129 msgid "" "Note that the name is a dotted name that includes both the module name and " "the name of the type within the module. The module in this case is :mod:" @@ -160,14 +161,14 @@ msgid "" "type compatible with the :mod:`pydoc` and :mod:`pickle` modules. ::" msgstr "" -#: extending/newtypes_tutorial.rst:137 +#: extending/newtypes_tutorial.rst:138 msgid "" "This is so that Python knows how much memory to allocate when creating new :" "class:`Custom` instances. :c:member:`~PyTypeObject.tp_itemsize` is only " "used for variable-sized objects and should otherwise be zero." msgstr "" -#: extending/newtypes_tutorial.rst:143 +#: extending/newtypes_tutorial.rst:144 msgid "" "If you want your type to be subclassable from Python, and your type has the " "same :c:member:`~PyTypeObject.tp_basicsize` as its base type, you may have " @@ -181,23 +182,23 @@ msgid "" "your base type, and therefore increasing its size." msgstr "" -#: extending/newtypes_tutorial.rst:153 +#: extending/newtypes_tutorial.rst:154 msgid "We set the class flags to :const:`Py_TPFLAGS_DEFAULT`. ::" msgstr "" -#: extending/newtypes_tutorial.rst:157 +#: extending/newtypes_tutorial.rst:158 msgid "" "All types should include this constant in their flags. It enables all of " "the members defined until at least Python 3.3. If you need further members, " "you will need to OR the corresponding flags." msgstr "" -#: extending/newtypes_tutorial.rst:161 +#: extending/newtypes_tutorial.rst:162 msgid "" "We provide a doc string for the type in :c:member:`~PyTypeObject.tp_doc`. ::" msgstr "" -#: extending/newtypes_tutorial.rst:165 +#: extending/newtypes_tutorial.rst:166 msgid "" "To enable object creation, we have to provide a :c:member:`~PyTypeObject." "tp_new` handler. This is the equivalent of the Python method :meth:" @@ -206,53 +207,53 @@ msgid "" "`PyType_GenericNew`. ::" msgstr "" -#: extending/newtypes_tutorial.rst:172 +#: extending/newtypes_tutorial.rst:173 msgid "" "Everything else in the file should be familiar, except for some code in :c:" "func:`PyInit_custom`::" msgstr "" -#: extending/newtypes_tutorial.rst:178 +#: extending/newtypes_tutorial.rst:179 msgid "" "This initializes the :class:`Custom` type, filling in a number of members to " "the appropriate default values, including :attr:`ob_type` that we initially " "set to ``NULL``. ::" msgstr "" -#: extending/newtypes_tutorial.rst:189 +#: extending/newtypes_tutorial.rst:190 msgid "" "This adds the type to the module dictionary. This allows us to create :" "class:`Custom` instances by calling the :class:`Custom` class:" msgstr "" -#: extending/newtypes_tutorial.rst:197 +#: extending/newtypes_tutorial.rst:198 msgid "" "That's it! All that remains is to build it; put the above code in a file " "called :file:`custom.c` and:" msgstr "" -#: extending/newtypes_tutorial.rst:206 +#: extending/newtypes_tutorial.rst:207 msgid "in a file called :file:`setup.py`; then typing" msgstr "" -#: extending/newtypes_tutorial.rst:212 +#: extending/newtypes_tutorial.rst:213 msgid "" "at a shell should produce a file :file:`custom.so` in a subdirectory; move " "to that directory and fire up Python --- you should be able to ``import " "custom`` and play around with Custom objects." msgstr "" -#: extending/newtypes_tutorial.rst:216 +#: extending/newtypes_tutorial.rst:217 msgid "That wasn't so hard, was it?" msgstr "" -#: extending/newtypes_tutorial.rst:218 +#: extending/newtypes_tutorial.rst:219 msgid "" "Of course, the current Custom type is pretty uninteresting. It has no data " "and doesn't do anything. It can't even be subclassed." msgstr "" -#: extending/newtypes_tutorial.rst:222 +#: extending/newtypes_tutorial.rst:223 msgid "" "While this documentation showcases the standard :mod:`distutils` module for " "building C extensions, it is recommended in real-world use cases to use the " @@ -262,32 +263,32 @@ msgid "" "packages/>`_." msgstr "" -#: extending/newtypes_tutorial.rst:230 +#: extending/newtypes_tutorial.rst:231 msgid "Adding data and methods to the Basic example" msgstr "" -#: extending/newtypes_tutorial.rst:232 +#: extending/newtypes_tutorial.rst:233 msgid "" "Let's extend the basic example to add some data and methods. Let's also " "make the type usable as a base class. We'll create a new module, :mod:" "`custom2` that adds these capabilities:" msgstr "" -#: extending/newtypes_tutorial.rst:239 +#: extending/newtypes_tutorial.rst:240 msgid "This version of the module has a number of changes." msgstr "" -#: extending/newtypes_tutorial.rst:241 +#: extending/newtypes_tutorial.rst:242 msgid "We've added an extra include::" msgstr "" -#: extending/newtypes_tutorial.rst:245 +#: extending/newtypes_tutorial.rst:246 msgid "" "This include provides declarations that we use to handle attributes, as " "described a bit later." msgstr "" -#: extending/newtypes_tutorial.rst:248 +#: extending/newtypes_tutorial.rst:249 msgid "" "The :class:`Custom` type now has three data attributes in its C struct, " "*first*, *last*, and *number*. The *first* and *last* variables are Python " @@ -295,21 +296,21 @@ msgid "" "integer." msgstr "" -#: extending/newtypes_tutorial.rst:252 +#: extending/newtypes_tutorial.rst:253 msgid "The object structure is updated accordingly::" msgstr "" -#: extending/newtypes_tutorial.rst:261 +#: extending/newtypes_tutorial.rst:262 msgid "" "Because we now have data to manage, we have to be more careful about object " "allocation and deallocation. At a minimum, we need a deallocation method::" msgstr "" -#: extending/newtypes_tutorial.rst:272 +#: extending/newtypes_tutorial.rst:273 msgid "which is assigned to the :c:member:`~PyTypeObject.tp_dealloc` member::" msgstr "" -#: extending/newtypes_tutorial.rst:276 +#: extending/newtypes_tutorial.rst:277 msgid "" "This method first clears the reference counts of the two Python attributes. :" "c:func:`Py_XDECREF` correctly handles the case where its argument is " @@ -320,7 +321,7 @@ msgid "" "instance of a subclass." msgstr "" -#: extending/newtypes_tutorial.rst:285 +#: extending/newtypes_tutorial.rst:286 msgid "" "The explicit cast to ``destructor`` above is needed because we defined " "``Custom_dealloc`` to take a ``CustomObject *`` argument, but the " @@ -329,17 +330,17 @@ msgid "" "oriented polymorphism, in C!" msgstr "" -#: extending/newtypes_tutorial.rst:291 +#: extending/newtypes_tutorial.rst:292 msgid "" "We want to make sure that the first and last names are initialized to empty " "strings, so we provide a ``tp_new`` implementation::" msgstr "" -#: extending/newtypes_tutorial.rst:315 +#: extending/newtypes_tutorial.rst:316 msgid "and install it in the :c:member:`~PyTypeObject.tp_new` member::" msgstr "" -#: extending/newtypes_tutorial.rst:319 +#: extending/newtypes_tutorial.rst:320 msgid "" "The ``tp_new`` handler is responsible for creating (as opposed to " "initializing) objects of the type. It is exposed in Python as the :meth:" @@ -350,7 +351,7 @@ msgid "" "attributes to non-``NULL`` default values." msgstr "" -#: extending/newtypes_tutorial.rst:327 +#: extending/newtypes_tutorial.rst:328 msgid "" "``tp_new`` is passed the type being instantiated (not necessarily " "``CustomType``, if a subclass is instantiated) and any arguments passed when " @@ -360,25 +361,25 @@ msgid "" "k.a. ``tp_init`` in C or ``__init__`` in Python) methods." msgstr "" -#: extending/newtypes_tutorial.rst:335 +#: extending/newtypes_tutorial.rst:336 msgid "" "``tp_new`` shouldn't call ``tp_init`` explicitly, as the interpreter will do " "it itself." msgstr "" -#: extending/newtypes_tutorial.rst:338 +#: extending/newtypes_tutorial.rst:339 msgid "" "The ``tp_new`` implementation calls the :c:member:`~PyTypeObject.tp_alloc` " "slot to allocate memory::" msgstr "" -#: extending/newtypes_tutorial.rst:343 +#: extending/newtypes_tutorial.rst:344 msgid "" "Since memory allocation may fail, we must check the :c:member:`~PyTypeObject." "tp_alloc` result against ``NULL`` before proceeding." msgstr "" -#: extending/newtypes_tutorial.rst:347 +#: extending/newtypes_tutorial.rst:348 msgid "" "We didn't fill the :c:member:`~PyTypeObject.tp_alloc` slot ourselves. " "Rather :c:func:`PyType_Ready` fills it for us by inheriting it from our base " @@ -386,7 +387,7 @@ msgid "" "allocation strategy." msgstr "" -#: extending/newtypes_tutorial.rst:353 +#: extending/newtypes_tutorial.rst:354 msgid "" "If you are creating a co-operative :c:member:`~PyTypeObject.tp_new` (one " "that calls a base type's :c:member:`~PyTypeObject.tp_new` or :meth:" @@ -399,17 +400,17 @@ msgid "" "subclasses without getting a :exc:`TypeError`.)" msgstr "" -#: extending/newtypes_tutorial.rst:363 +#: extending/newtypes_tutorial.rst:364 msgid "" "We also define an initialization function which accepts arguments to provide " "initial values for our instance::" msgstr "" -#: extending/newtypes_tutorial.rst:392 +#: extending/newtypes_tutorial.rst:393 msgid "by filling the :c:member:`~PyTypeObject.tp_init` slot. ::" msgstr "" -#: extending/newtypes_tutorial.rst:396 +#: extending/newtypes_tutorial.rst:397 msgid "" "The :c:member:`~PyTypeObject.tp_init` slot is exposed in Python as the :meth:" "`__init__` method. It is used to initialize an object after it's created. " @@ -417,7 +418,7 @@ msgid "" "return either ``0`` on success or ``-1`` on error." msgstr "" -#: extending/newtypes_tutorial.rst:401 +#: extending/newtypes_tutorial.rst:402 msgid "" "Unlike the ``tp_new`` handler, there is no guarantee that ``tp_init`` is " "called at all (for example, the :mod:`pickle` module by default doesn't " @@ -428,7 +429,7 @@ msgid "" "``first`` member like this::" msgstr "" -#: extending/newtypes_tutorial.rst:415 +#: extending/newtypes_tutorial.rst:416 msgid "" "But this would be risky. Our type doesn't restrict the type of the " "``first`` member, so it could be any kind of object. It could have a " @@ -438,49 +439,49 @@ msgid "" "accesses and modifies our object." msgstr "" -#: extending/newtypes_tutorial.rst:422 +#: extending/newtypes_tutorial.rst:423 msgid "" "To be paranoid and protect ourselves against this possibility, we almost " "always reassign members before decrementing their reference counts. When " "don't we have to do this?" msgstr "" -#: extending/newtypes_tutorial.rst:426 +#: extending/newtypes_tutorial.rst:427 msgid "when we absolutely know that the reference count is greater than 1;" msgstr "" -#: extending/newtypes_tutorial.rst:428 +#: extending/newtypes_tutorial.rst:429 msgid "" "when we know that deallocation of the object [#]_ will neither release the :" "term:`GIL` nor cause any calls back into our type's code;" msgstr "" -#: extending/newtypes_tutorial.rst:431 +#: extending/newtypes_tutorial.rst:432 msgid "" "when decrementing a reference count in a :c:member:`~PyTypeObject." "tp_dealloc` handler on a type which doesn't support cyclic garbage " "collection [#]_." msgstr "" -#: extending/newtypes_tutorial.rst:434 +#: extending/newtypes_tutorial.rst:435 msgid "" "We want to expose our instance variables as attributes. There are a number " "of ways to do that. The simplest way is to define member definitions::" msgstr "" -#: extending/newtypes_tutorial.rst:447 +#: extending/newtypes_tutorial.rst:448 msgid "" "and put the definitions in the :c:member:`~PyTypeObject.tp_members` slot::" msgstr "" -#: extending/newtypes_tutorial.rst:451 +#: extending/newtypes_tutorial.rst:452 msgid "" "Each member definition has a member name, type, offset, access flags and " "documentation string. See the :ref:`Generic-Attribute-Management` section " "below for details." msgstr "" -#: extending/newtypes_tutorial.rst:455 +#: extending/newtypes_tutorial.rst:456 msgid "" "A disadvantage of this approach is that it doesn't provide a way to restrict " "the types of objects that can be assigned to the Python attributes. We " @@ -491,13 +492,13 @@ msgid "" "deleted." msgstr "" -#: extending/newtypes_tutorial.rst:462 +#: extending/newtypes_tutorial.rst:463 msgid "" "We define a single method, :meth:`Custom.name()`, that outputs the objects " "name as the concatenation of the first and last names. ::" msgstr "" -#: extending/newtypes_tutorial.rst:479 +#: extending/newtypes_tutorial.rst:480 msgid "" "The method is implemented as a C function that takes a :class:`Custom` (or :" "class:`Custom` subclass) instance as the first argument. Methods always " @@ -507,7 +508,7 @@ msgid "" "method is equivalent to the Python method:" msgstr "" -#: extending/newtypes_tutorial.rst:491 +#: extending/newtypes_tutorial.rst:492 msgid "" "Note that we have to check for the possibility that our :attr:`first` and :" "attr:`last` members are ``NULL``. This is because they can be deleted, in " @@ -516,23 +517,23 @@ msgid "" "We'll see how to do that in the next section." msgstr "" -#: extending/newtypes_tutorial.rst:497 +#: extending/newtypes_tutorial.rst:498 msgid "" "Now that we've defined the method, we need to create an array of method " "definitions::" msgstr "" -#: extending/newtypes_tutorial.rst:507 +#: extending/newtypes_tutorial.rst:508 msgid "" "(note that we used the :const:`METH_NOARGS` flag to indicate that the method " "is expecting no arguments other than *self*)" msgstr "" -#: extending/newtypes_tutorial.rst:510 +#: extending/newtypes_tutorial.rst:511 msgid "and assign it to the :c:member:`~PyTypeObject.tp_methods` slot::" msgstr "" -#: extending/newtypes_tutorial.rst:514 +#: extending/newtypes_tutorial.rst:515 msgid "" "Finally, we'll make our type usable as a base class for subclassing. We've " "written our methods carefully so far so that they don't make any assumptions " @@ -540,22 +541,22 @@ msgid "" "to add the :const:`Py_TPFLAGS_BASETYPE` to our class flag definition::" msgstr "" -#: extending/newtypes_tutorial.rst:521 +#: extending/newtypes_tutorial.rst:522 msgid "" "We rename :c:func:`PyInit_custom` to :c:func:`PyInit_custom2`, update the " "module name in the :c:type:`PyModuleDef` struct, and update the full class " "name in the :c:type:`PyTypeObject` struct." msgstr "" -#: extending/newtypes_tutorial.rst:525 +#: extending/newtypes_tutorial.rst:526 msgid "Finally, we update our :file:`setup.py` file to build the new module:" msgstr "" -#: extending/newtypes_tutorial.rst:538 +#: extending/newtypes_tutorial.rst:539 msgid "Providing finer control over data attributes" msgstr "" -#: extending/newtypes_tutorial.rst:540 +#: extending/newtypes_tutorial.rst:541 msgid "" "In this section, we'll provide finer control over how the :attr:`first` and :" "attr:`last` attributes are set in the :class:`Custom` example. In the " @@ -564,14 +565,14 @@ msgid "" "make sure that these attributes always contain strings." msgstr "" -#: extending/newtypes_tutorial.rst:549 +#: extending/newtypes_tutorial.rst:550 msgid "" "To provide greater control, over the :attr:`first` and :attr:`last` " "attributes, we'll use custom getter and setter functions. Here are the " "functions for getting and setting the :attr:`first` attribute::" msgstr "" -#: extending/newtypes_tutorial.rst:580 +#: extending/newtypes_tutorial.rst:581 msgid "" "The getter function is passed a :class:`Custom` object and a \"closure\", " "which is a void pointer. In this case, the closure is ignored. (The " @@ -581,7 +582,7 @@ msgid "" "data in the closure.)" msgstr "" -#: extending/newtypes_tutorial.rst:586 +#: extending/newtypes_tutorial.rst:587 msgid "" "The setter function is passed the :class:`Custom` object, the new value, and " "the closure. The new value may be ``NULL``, in which case the attribute is " @@ -589,32 +590,32 @@ msgid "" "or if its new value is not a string." msgstr "" -#: extending/newtypes_tutorial.rst:591 +#: extending/newtypes_tutorial.rst:592 msgid "We create an array of :c:type:`PyGetSetDef` structures::" msgstr "" -#: extending/newtypes_tutorial.rst:601 +#: extending/newtypes_tutorial.rst:602 msgid "and register it in the :c:member:`~PyTypeObject.tp_getset` slot::" msgstr "" -#: extending/newtypes_tutorial.rst:605 +#: extending/newtypes_tutorial.rst:606 msgid "" "The last item in a :c:type:`PyGetSetDef` structure is the \"closure\" " "mentioned above. In this case, we aren't using a closure, so we just pass " "``NULL``." msgstr "" -#: extending/newtypes_tutorial.rst:608 +#: extending/newtypes_tutorial.rst:609 msgid "We also remove the member definitions for these attributes::" msgstr "" -#: extending/newtypes_tutorial.rst:616 +#: extending/newtypes_tutorial.rst:617 msgid "" "We also need to update the :c:member:`~PyTypeObject.tp_init` handler to only " "allow strings [#]_ to be passed::" msgstr "" -#: extending/newtypes_tutorial.rst:645 +#: extending/newtypes_tutorial.rst:646 msgid "" "With these changes, we can assure that the ``first`` and ``last`` members " "are never ``NULL`` so we can remove checks for ``NULL`` values in almost all " @@ -624,25 +625,25 @@ msgid "" "possibility that the initialization of these members failed in ``tp_new``." msgstr "" -#: extending/newtypes_tutorial.rst:652 +#: extending/newtypes_tutorial.rst:653 msgid "" "We also rename the module initialization function and module name in the " "initialization function, as we did before, and we add an extra definition to " "the :file:`setup.py` file." msgstr "" -#: extending/newtypes_tutorial.rst:658 +#: extending/newtypes_tutorial.rst:659 msgid "Supporting cyclic garbage collection" msgstr "" -#: extending/newtypes_tutorial.rst:660 +#: extending/newtypes_tutorial.rst:661 msgid "" "Python has a :term:`cyclic garbage collector (GC) ` that " "can identify unneeded objects even when their reference counts are not zero. " "This can happen when objects are involved in cycles. For example, consider:" msgstr "" -#: extending/newtypes_tutorial.rst:670 +#: extending/newtypes_tutorial.rst:671 msgid "" "In this example, we create a list that contains itself. When we delete it, " "it still has a reference from itself. Its reference count doesn't drop to " @@ -650,7 +651,7 @@ msgid "" "out that the list is garbage and free it." msgstr "" -#: extending/newtypes_tutorial.rst:675 +#: extending/newtypes_tutorial.rst:676 msgid "" "In the second version of the :class:`Custom` example, we allowed any kind of " "object to be stored in the :attr:`first` or :attr:`last` attributes [#]_. " @@ -659,7 +660,7 @@ msgid "" "reasons, :class:`Custom` objects can participate in cycles:" msgstr "" -#: extending/newtypes_tutorial.rst:689 +#: extending/newtypes_tutorial.rst:690 msgid "" "To allow a :class:`Custom` instance participating in a reference cycle to be " "properly detected and collected by the cyclic GC, our :class:`Custom` type " @@ -667,13 +668,13 @@ msgid "" "slots:" msgstr "" -#: extending/newtypes_tutorial.rst:696 +#: extending/newtypes_tutorial.rst:697 msgid "" "First, the traversal method lets the cyclic GC know about subobjects that " "could participate in cycles::" msgstr "" -#: extending/newtypes_tutorial.rst:716 +#: extending/newtypes_tutorial.rst:717 msgid "" "For each subobject that can participate in cycles, we need to call the :c:" "func:`visit` function, which is passed to the traversal method. The :c:func:" @@ -682,26 +683,26 @@ msgid "" "be returned if it is non-zero." msgstr "" -#: extending/newtypes_tutorial.rst:722 +#: extending/newtypes_tutorial.rst:723 msgid "" "Python provides a :c:func:`Py_VISIT` macro that automates calling visit " "functions. With :c:func:`Py_VISIT`, we can minimize the amount of " "boilerplate in ``Custom_traverse``::" msgstr "" -#: extending/newtypes_tutorial.rst:735 +#: extending/newtypes_tutorial.rst:736 msgid "" "The :c:member:`~PyTypeObject.tp_traverse` implementation must name its " "arguments exactly *visit* and *arg* in order to use :c:func:`Py_VISIT`." msgstr "" -#: extending/newtypes_tutorial.rst:738 +#: extending/newtypes_tutorial.rst:739 msgid "" "Second, we need to provide a method for clearing any subobjects that can " "participate in cycles::" msgstr "" -#: extending/newtypes_tutorial.rst:749 +#: extending/newtypes_tutorial.rst:750 msgid "" "Notice the use of the :c:func:`Py_CLEAR` macro. It is the recommended and " "safe way to clear data attributes of arbitrary types while decrementing " @@ -711,18 +712,18 @@ msgid "" "again (*especially* if there is a reference cycle)." msgstr "" -#: extending/newtypes_tutorial.rst:757 +#: extending/newtypes_tutorial.rst:758 msgid "You could emulate :c:func:`Py_CLEAR` by writing::" msgstr "" -#: extending/newtypes_tutorial.rst:764 +#: extending/newtypes_tutorial.rst:765 msgid "" "Nevertheless, it is much easier and less error-prone to always use :c:func:" "`Py_CLEAR` when deleting an attribute. Don't try to micro-optimize at the " "expense of robustness!" msgstr "" -#: extending/newtypes_tutorial.rst:768 +#: extending/newtypes_tutorial.rst:769 msgid "" "The deallocator ``Custom_dealloc`` may call arbitrary code when clearing " "attributes. It means the circular GC can be triggered inside the function. " @@ -732,12 +733,12 @@ msgid "" "`PyObject_GC_UnTrack` and ``Custom_clear``::" msgstr "" -#: extending/newtypes_tutorial.rst:783 +#: extending/newtypes_tutorial.rst:784 msgid "" "Finally, we add the :const:`Py_TPFLAGS_HAVE_GC` flag to the class flags::" msgstr "" -#: extending/newtypes_tutorial.rst:787 +#: extending/newtypes_tutorial.rst:788 msgid "" "That's pretty much it. If we had written custom :c:member:`~PyTypeObject." "tp_alloc` or :c:member:`~PyTypeObject.tp_free` handlers, we'd need to modify " @@ -745,11 +746,11 @@ msgid "" "automatically provided." msgstr "" -#: extending/newtypes_tutorial.rst:793 +#: extending/newtypes_tutorial.rst:794 msgid "Subclassing other types" msgstr "" -#: extending/newtypes_tutorial.rst:795 +#: extending/newtypes_tutorial.rst:796 msgid "" "It is possible to create new extension types that are derived from existing " "types. It is easiest to inherit from the built in types, since an extension " @@ -757,7 +758,7 @@ msgid "" "share these :c:type:`PyTypeObject` structures between extension modules." msgstr "" -#: extending/newtypes_tutorial.rst:800 +#: extending/newtypes_tutorial.rst:801 msgid "" "In this example we will create a :class:`SubList` type that inherits from " "the built-in :class:`list` type. The new type will be completely compatible " @@ -765,34 +766,34 @@ msgid "" "that increases an internal counter:" msgstr "" -#: extending/newtypes_tutorial.rst:820 +#: extending/newtypes_tutorial.rst:821 msgid "" "As you can see, the source code closely resembles the :class:`Custom` " "examples in previous sections. We will break down the main differences " "between them. ::" msgstr "" -#: extending/newtypes_tutorial.rst:828 +#: extending/newtypes_tutorial.rst:829 msgid "" "The primary difference for derived type objects is that the base type's " "object structure must be the first value. The base type will already " "include the :c:func:`PyObject_HEAD` at the beginning of its structure." msgstr "" -#: extending/newtypes_tutorial.rst:832 +#: extending/newtypes_tutorial.rst:833 msgid "" "When a Python object is a :class:`SubList` instance, its ``PyObject *`` " "pointer can be safely cast to both ``PyListObject *`` and ``SubListObject " "*``::" msgstr "" -#: extending/newtypes_tutorial.rst:844 +#: extending/newtypes_tutorial.rst:845 msgid "" "We see above how to call through to the :attr:`__init__` method of the base " "type." msgstr "" -#: extending/newtypes_tutorial.rst:847 +#: extending/newtypes_tutorial.rst:848 msgid "" "This pattern is important when writing a type with custom :c:member:" "`~PyTypeObject.tp_new` and :c:member:`~PyTypeObject.tp_dealloc` members. " @@ -801,7 +802,7 @@ msgid "" "the base class handle it by calling its own :c:member:`~PyTypeObject.tp_new`." msgstr "" -#: extending/newtypes_tutorial.rst:853 +#: extending/newtypes_tutorial.rst:854 msgid "" "The :c:type:`PyTypeObject` struct supports a :c:member:`~PyTypeObject." "tp_base` specifying the type's concrete base class. Due to cross-platform " @@ -810,7 +811,7 @@ msgid "" "function::" msgstr "" -#: extending/newtypes_tutorial.rst:881 +#: extending/newtypes_tutorial.rst:882 msgid "" "Before calling :c:func:`PyType_Ready`, the type structure must have the :c:" "member:`~PyTypeObject.tp_base` slot filled in. When we are deriving an " @@ -819,29 +820,29 @@ msgid "" "from the base type will be inherited." msgstr "" -#: extending/newtypes_tutorial.rst:887 +#: extending/newtypes_tutorial.rst:888 msgid "" "After that, calling :c:func:`PyType_Ready` and adding the type object to the " "module is the same as with the basic :class:`Custom` examples." msgstr "" -#: extending/newtypes_tutorial.rst:892 +#: extending/newtypes_tutorial.rst:893 msgid "Footnotes" msgstr "Notes" -#: extending/newtypes_tutorial.rst:893 +#: extending/newtypes_tutorial.rst:894 msgid "" "This is true when we know that the object is a basic type, like a string or " "a float." msgstr "" -#: extending/newtypes_tutorial.rst:896 +#: extending/newtypes_tutorial.rst:897 msgid "" "We relied on this in the :c:member:`~PyTypeObject.tp_dealloc` handler in " "this example, because our type doesn't support garbage collection." msgstr "" -#: extending/newtypes_tutorial.rst:899 +#: extending/newtypes_tutorial.rst:900 msgid "" "We now know that the first and last members are strings, so perhaps we could " "be less careful about decrementing their reference counts, however, we " @@ -851,7 +852,7 @@ msgid "" "objects." msgstr "" -#: extending/newtypes_tutorial.rst:905 +#: extending/newtypes_tutorial.rst:906 msgid "" "Also, even with our attributes restricted to strings instances, the user " "could pass arbitrary :class:`str` subclasses and therefore still create " diff --git a/faq/design.po b/faq/design.po index 4159654c9..0c112c686 100644 --- a/faq/design.po +++ b/faq/design.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 02:52+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -502,16 +502,11 @@ msgstr "" #: faq/design.rst:261 msgid "" "You can do this easily enough with a sequence of ``if... elif... elif... " -"else``. There have been some proposals for switch statement syntax, but " -"there is no consensus (yet) on whether and how to do range tests. See :pep:" -"`275` for complete details and the current status." +"else``. For literal values, or constants within a namespace, you can also " +"use a ``match ... case`` statement." msgstr "" -"Vous pouvez le faire assez facilement avec une séquence de ``if... elif... " -"elif... else``. Il y a eu quelques propositions pour la syntaxe de " -"l'instruction ``switch``, mais il n'y a pas (encore) de consensus sur le cas " -"des intervalles. Voir la :pep:`275` pour tous les détails et l'état actuel." -#: faq/design.rst:266 +#: faq/design.rst:265 msgid "" "For cases where you need to choose from a very large number of " "possibilities, you can create a dictionary mapping case values to functions " @@ -521,7 +516,7 @@ msgstr "" "possibilités, vous pouvez créer un dictionnaire faisant correspondre des " "valeurs à des fonctions à appeler. Par exemple ::" -#: faq/design.rst:280 +#: faq/design.rst:279 msgid "" "For calling methods on objects, you can simplify yet further by using the :" "func:`getattr` built-in to retrieve methods with a particular name::" @@ -530,7 +525,7 @@ msgstr "" "en utilisant la fonction native :func:`getattr` pour récupérer les méthodes " "avec un nom donné ::" -#: faq/design.rst:292 +#: faq/design.rst:291 msgid "" "It's suggested that you use a prefix for the method names, such as " "``visit_`` in this example. Without such a prefix, if values are coming " @@ -542,7 +537,7 @@ msgstr "" "proviennent d'une source non fiable, un attaquant serait en mesure d'appeler " "n'importe quelle méthode sur votre objet." -#: faq/design.rst:298 +#: faq/design.rst:297 msgid "" "Can't you emulate threads in the interpreter instead of relying on an OS-" "specific thread implementation?" @@ -550,7 +545,7 @@ msgstr "" "Est-il possible d'émuler des fils d'exécution dans l'interpréteur plutôt que " "se baser sur les implémentations spécifiques aux systèmes d'exploitation ?" -#: faq/design.rst:300 +#: faq/design.rst:299 msgid "" "Answer 1: Unfortunately, the interpreter pushes at least one C stack frame " "for each Python stack frame. Also, extensions can call back into Python at " @@ -563,7 +558,7 @@ msgstr "" "conséquent, une implémentation complète des fils d'exécution nécessiterait " "une gestion complète pour le C." -#: faq/design.rst:305 +#: faq/design.rst:304 msgid "" "Answer 2: Fortunately, there is `Stackless Python `_, which has a completely redesigned " @@ -573,12 +568,12 @@ msgstr "" "stackless-dev/stackless/wiki>`_, qui a complètement ré-architecturé la " "boucle principale de l'interpréteur afin de ne pas utiliser la pile C." -#: faq/design.rst:310 +#: faq/design.rst:309 msgid "Why can't lambda expressions contain statements?" msgstr "" "Pourquoi les expressions lambda ne peuvent pas contenir d'instructions ?" -#: faq/design.rst:312 +#: faq/design.rst:311 msgid "" "Python lambda expressions cannot contain statements because Python's " "syntactic framework can't handle statements nested inside expressions. " @@ -594,7 +589,7 @@ msgstr "" "Python sont seulement une notation concise si vous êtes trop paresseux pour " "définir une fonction." -#: faq/design.rst:318 +#: faq/design.rst:317 msgid "" "Functions are already first class objects in Python, and can be declared in " "a local scope. Therefore the only advantage of using a lambda instead of a " @@ -610,12 +605,12 @@ msgstr "" "variable locale à laquelle est affecté l'objet fonction (qui est exactement " "le même type d'objet que celui renvoyé par une expression lambda) !" -#: faq/design.rst:326 +#: faq/design.rst:325 msgid "Can Python be compiled to machine code, C or some other language?" msgstr "" "Python peut-il être compilé en code machine, en C ou dans un autre langage ?" -#: faq/design.rst:328 +#: faq/design.rst:327 msgid "" "`Cython `_ compiles a modified version of Python with " "optional annotations into C extensions. `Nuitka `_ " @@ -629,11 +624,11 @@ msgstr "" "langage Python entièrement. Pour compiler en Java, vous pouvez regarder `VOC " "`_." -#: faq/design.rst:336 +#: faq/design.rst:335 msgid "How does Python manage memory?" msgstr "Comment Python gère la mémoire ?" -#: faq/design.rst:338 +#: faq/design.rst:337 msgid "" "The details of Python memory management depend on the implementation. The " "standard implementation of Python, :term:`CPython`, uses reference counting " @@ -652,7 +647,7 @@ msgstr "" "module :mod:`gc` fournit des fonctions pour lancer le ramasse-miettes, " "d'obtenir des statistiques de débogage et ajuster ses paramètres." -#: faq/design.rst:346 +#: faq/design.rst:345 msgid "" "Other implementations (such as `Jython `_ or `PyPy " "`_), however, can rely on a different mechanism such as " @@ -666,7 +661,7 @@ msgstr "" "de subtils problèmes de portabilité si votre code Python dépend du " "comportement de l'implémentation du compteur de références." -#: faq/design.rst:352 +#: faq/design.rst:351 msgid "" "In some Python implementations, the following code (which is fine in " "CPython) will probably run out of file descriptors::" @@ -675,7 +670,7 @@ msgstr "" "parfaitement avec *CPython*) aurait probablement manqué de descripteurs de " "fichiers ::" -#: faq/design.rst:359 +#: faq/design.rst:358 msgid "" "Indeed, using CPython's reference counting and destructor scheme, each new " "assignment to *f* closes the previous file. With a traditional GC, however, " @@ -687,7 +682,7 @@ msgstr "" "Cependant, avec un ramasse-miettes classique, ces objets sont collectés (et " "fermés) à intervalles irréguliers, et potentiellement longs." -#: faq/design.rst:364 +#: faq/design.rst:363 msgid "" "If you want to write code that will work with any Python implementation, you " "should explicitly close the file or use the :keyword:`with` statement; this " @@ -698,13 +693,13 @@ msgstr "" "utiliser l'instruction :keyword:`with` ; ceci fonctionne indépendamment du " "système de gestion de la mémoire ::" -#: faq/design.rst:374 +#: faq/design.rst:373 msgid "Why doesn't CPython use a more traditional garbage collection scheme?" msgstr "" "Pourquoi CPython n'utilise-t-il pas un modèle de ramasse-miettes plus " "traditionnel ?" -#: faq/design.rst:376 +#: faq/design.rst:375 msgid "" "For one thing, this is not a C standard feature and hence it's not portable. " "(Yes, we know about the Boehm GC library. It has bits of assembler code for " @@ -719,7 +714,7 @@ msgstr "" "transparente, elle ne l'est pas complètement ; des correctifs sont " "nécessaires afin que Python fonctionne correctement avec.)" -#: faq/design.rst:382 +#: faq/design.rst:381 msgid "" "Traditional GC also becomes a problem when Python is embedded into other " "applications. While in a standalone Python it's fine to replace the " @@ -737,12 +732,12 @@ msgstr "" "de Python. À l'heure actuelle, CPython fonctionne avec n'importe quelle " "implémentation correcte de ``malloc()`` et ``free()``." -#: faq/design.rst:391 +#: faq/design.rst:390 msgid "Why isn't all memory freed when CPython exits?" msgstr "" "Pourquoi toute la mémoire n'est pas libérée lorsque *CPython* s'arrête ?" -#: faq/design.rst:393 +#: faq/design.rst:392 msgid "" "Objects referenced from the global namespaces of Python modules are not " "always deallocated when Python exits. This may happen if there are circular " @@ -759,7 +754,7 @@ msgstr "" "cependant, agressif sur le nettoyage de la mémoire en quittant et cherche à " "détruire chaque objet." -#: faq/design.rst:400 +#: faq/design.rst:399 msgid "" "If you want to force Python to delete certain things on deallocation use " "the :mod:`atexit` module to run a function that will force those deletions." @@ -768,12 +763,12 @@ msgstr "" "utilisez le module :mod:`atexit` pour exécuter une fonction qui va forcer " "ces destructions." -#: faq/design.rst:405 +#: faq/design.rst:404 msgid "Why are there separate tuple and list data types?" msgstr "" "Pourquoi les *n*-uplets et les *list* sont deux types de données séparés ?" -#: faq/design.rst:407 +#: faq/design.rst:406 msgid "" "Lists and tuples, while similar in many respects, are generally used in " "fundamentally different ways. Tuples can be thought of as being similar to " @@ -790,7 +785,7 @@ msgstr "" "des coordonnées cartésiennes sont correctement représentées par un *n*-uplet " "de deux ou trois nombres." -#: faq/design.rst:414 +#: faq/design.rst:413 msgid "" "Lists, on the other hand, are more like arrays in other languages. They " "tend to hold a varying number of objects all of which have the same type and " @@ -807,7 +802,7 @@ msgstr "" "problème que vous ajoutiez un ou deux fichiers supplémentaires dans le " "dossier." -#: faq/design.rst:421 +#: faq/design.rst:420 msgid "" "Tuples are immutable, meaning that once a tuple has been created, you can't " "replace any of its elements with a new value. Lists are mutable, meaning " @@ -822,11 +817,11 @@ msgstr "" "utilisés comme clés de dictionnaires, et donc de ``tuple`` et ``list`` seul " "des *n*-uplets peuvent être utilisés comme clés." -#: faq/design.rst:428 +#: faq/design.rst:427 msgid "How are lists implemented in CPython?" msgstr "Comment les listes sont-elles implémentées dans CPython ?" -#: faq/design.rst:430 +#: faq/design.rst:429 msgid "" "CPython's lists are really variable-length arrays, not Lisp-style linked " "lists. The implementation uses a contiguous array of references to other " @@ -839,7 +834,7 @@ msgstr "" "Elle conserve également un pointeur vers ce tableau et la longueur du " "tableau dans une structure de tête de liste." -#: faq/design.rst:434 +#: faq/design.rst:433 msgid "" "This makes indexing a list ``a[i]`` an operation whose cost is independent " "of the size of the list or the value of the index." @@ -847,7 +842,7 @@ msgstr "" "Cela rend l'indexation d'une liste ``a[i]`` une opération dont le coût est " "indépendant de la taille de la liste ou de la valeur de l'indice." -#: faq/design.rst:437 +#: faq/design.rst:436 msgid "" "When items are appended or inserted, the array of references is resized. " "Some cleverness is applied to improve the performance of appending items " @@ -860,11 +855,11 @@ msgstr "" "être étendu, un certain espace supplémentaire est alloué de sorte que pour " "la prochaine fois, ceci ne nécessite plus un redimensionnement effectif." -#: faq/design.rst:444 +#: faq/design.rst:443 msgid "How are dictionaries implemented in CPython?" msgstr "Comment les dictionnaires sont-ils implémentés dans CPython ?" -#: faq/design.rst:446 +#: faq/design.rst:445 msgid "" "CPython's dictionaries are implemented as resizable hash tables. Compared " "to B-trees, this gives better performance for lookup (the most common " @@ -876,7 +871,7 @@ msgstr "" "performances pour la recherche (l'opération la plus courante de loin) dans " "la plupart des circonstances, et leur implémentation est plus simple." -#: faq/design.rst:450 +#: faq/design.rst:449 msgid "" "Dictionaries work by computing a hash code for each key stored in the " "dictionary using the :func:`hash` built-in function. The hash code varies " @@ -900,11 +895,11 @@ msgstr "" "différents, cela signifie que le temps pour récupérer une clé est constant — " "O(1), en notation grand O de Landau." -#: faq/design.rst:461 +#: faq/design.rst:460 msgid "Why must dictionary keys be immutable?" msgstr "Pourquoi les clés du dictionnaire sont immuables ?" -#: faq/design.rst:463 +#: faq/design.rst:462 msgid "" "The hash table implementation of dictionaries uses a hash value calculated " "from the key value to find the key. If the key were a mutable object, its " @@ -927,7 +922,7 @@ msgstr "" "chercher l'ancienne valeur, elle serait également introuvable car la valeur " "de l'objet trouvé dans cet emplacement de hachage serait différente." -#: faq/design.rst:472 +#: faq/design.rst:471 msgid "" "If you want a dictionary indexed with a list, simply convert the list to a " "tuple first; the function ``tuple(L)`` creates a tuple with the same entries " @@ -939,11 +934,11 @@ msgstr "" "uplet avec les mêmes entrées que la liste ``L``. Les *n*-uplets sont " "immuables et peuvent donc être utilisés comme clés du dictionnaire." -#: faq/design.rst:476 +#: faq/design.rst:475 msgid "Some unacceptable solutions that have been proposed:" msgstr "Certaines solutions insatisfaisantes ont été proposées :" -#: faq/design.rst:478 +#: faq/design.rst:477 msgid "" "Hash lists by their address (object ID). This doesn't work because if you " "construct a new list with the same value it won't be found; e.g.::" @@ -952,7 +947,7 @@ msgstr "" "parce que si vous créez une nouvelle liste avec la même valeur, elle ne sera " "pas retrouvée ; par exemple ::" -#: faq/design.rst:484 +#: faq/design.rst:483 msgid "" "would raise a :exc:`KeyError` exception because the id of the ``[1, 2]`` " "used in the second line differs from that in the first line. In other " @@ -964,7 +959,7 @@ msgstr "" "les clés de dictionnaire doivent être comparées à l'aide du comparateur " "``==`` et non à l'aide du mot clé :keyword:`is`." -#: faq/design.rst:488 +#: faq/design.rst:487 msgid "" "Make a copy when using a list as a key. This doesn't work because the list, " "being a mutable object, could contain a reference to itself, and then the " @@ -975,7 +970,7 @@ msgstr "" "une référence à elle-même ou avoir une boucle infinie au niveau du code " "copié." -#: faq/design.rst:492 +#: faq/design.rst:491 msgid "" "Allow lists as keys but tell the user not to modify them. This would allow " "a class of hard-to-track bugs in programs when you forgot or modified a list " @@ -988,7 +983,7 @@ msgstr "" "accident. Cela casse également un impératif important des dictionnaires : " "chaque valeur de ``d.keys()`` est utilisable comme clé du dictionnaire." -#: faq/design.rst:497 +#: faq/design.rst:496 msgid "" "Mark lists as read-only once they are used as a dictionary key. The problem " "is that it's not just the top-level object that could change its value; you " @@ -1006,7 +1001,7 @@ msgstr "" "encore une fois, les objets se faisant référence pourraient provoquer une " "boucle infinie." -#: faq/design.rst:503 +#: faq/design.rst:502 msgid "" "There is a trick to get around this if you need to, but use it at your own " "risk: You can wrap a mutable structure inside a class instance which has " @@ -1023,7 +1018,7 @@ msgstr "" "(ou une autre structure basée sur le hachage), restent fixes pendant que " "l'objet est dans le dictionnaire (ou une autre structure). ::" -#: faq/design.rst:527 +#: faq/design.rst:526 msgid "" "Note that the hash computation is complicated by the possibility that some " "members of the list may be unhashable and also by the possibility of " @@ -1033,7 +1028,7 @@ msgstr "" "certains membres de la liste soient impossibles à hacher et aussi par la " "possibilité de débordement arithmétique." -#: faq/design.rst:531 +#: faq/design.rst:530 msgid "" "Furthermore it must always be the case that if ``o1 == o2`` (ie ``o1." "__eq__(o2) is True``) then ``hash(o1) == hash(o2)`` (ie, ``o1.__hash__() == " @@ -1047,7 +1042,7 @@ msgstr "" "ne remplissez pas ces conditions, les dictionnaires et autres structures " "basées sur le hachage se comporteront mal." -#: faq/design.rst:536 +#: faq/design.rst:535 msgid "" "In the case of ListWrapper, whenever the wrapper object is in a dictionary " "the wrapped list must not change to avoid anomalies. Don't do this unless " @@ -1060,11 +1055,11 @@ msgstr "" "conséquences de ne pas satisfaire entièrement ces conditions. Vous avez été " "prévenus." -#: faq/design.rst:543 +#: faq/design.rst:542 msgid "Why doesn't list.sort() return the sorted list?" msgstr "Pourquoi ``list.sort()`` ne renvoie pas la liste triée ?" -#: faq/design.rst:545 +#: faq/design.rst:544 msgid "" "In situations where performance matters, making a copy of the list just to " "sort it would be wasteful. Therefore, :meth:`list.sort` sorts the list in " @@ -1080,7 +1075,7 @@ msgstr "" "écrasant accidentellement une liste lorsque vous avez besoin d’une copie " "triée tout en gardant sous la main la version non triée." -#: faq/design.rst:551 +#: faq/design.rst:550 msgid "" "If you want to return a new list, use the built-in :func:`sorted` function " "instead. This function creates a new list from a provided iterable, sorts " @@ -1092,13 +1087,13 @@ msgstr "" "partir d’un itérable fourni, la classe et la renvoie. Par exemple, voici " "comment itérer dans l’ordre sur les clés d’un dictionnaire ::" -#: faq/design.rst:561 +#: faq/design.rst:560 msgid "How do you specify and enforce an interface spec in Python?" msgstr "" "Comment spécifier une interface et appliquer une spécification d’interface " "en Python ?" -#: faq/design.rst:563 +#: faq/design.rst:562 msgid "" "An interface specification for a module as provided by languages such as C++ " "and Java describes the prototypes for the methods and functions of the " @@ -1110,7 +1105,7 @@ msgstr "" "module. Beaucoup estiment que la vérification au moment de la compilation " "des spécifications d'interface facilite la construction de grands programmes." -#: faq/design.rst:568 +#: faq/design.rst:567 msgid "" "Python 2.6 adds an :mod:`abc` module that lets you define Abstract Base " "Classes (ABCs). You can then use :func:`isinstance` and :func:`issubclass` " @@ -1127,7 +1122,7 @@ msgstr "" "class:`~collections.abc.Iterable`, :class:`~collections.abc.Container` et :" "class:`collections.abc.MutableMapping`." -#: faq/design.rst:575 +#: faq/design.rst:574 msgid "" "For Python, many of the advantages of interface specifications can be " "obtained by an appropriate test discipline for components." @@ -1135,7 +1130,7 @@ msgstr "" "Pour Python, la plupart des avantages des spécifications d'interface peuvent " "être obtenus par une discipline de test appropriée pour les composants." -#: faq/design.rst:578 +#: faq/design.rst:577 msgid "" "A good test suite for a module can both provide a regression test and serve " "as a module interface specification and a set of examples. Many Python " @@ -1156,7 +1151,7 @@ msgstr "" "test tiers peuvent être utilisés pour construire des suites de tests " "exhaustives qui éprouvent chaque ligne de code dans un module." -#: faq/design.rst:586 +#: faq/design.rst:585 msgid "" "An appropriate testing discipline can help build large complex applications " "in Python as well as having interface specifications would. In fact, it can " @@ -1176,7 +1171,7 @@ msgstr "" "réellement le faire correctement, mais il est trivial de vérifier cette " "propriété dans une suite de tests." -#: faq/design.rst:594 +#: faq/design.rst:593 msgid "" "Writing test suites is very helpful, and you might want to design your code " "to make it easily tested. One increasingly popular technique, test-driven " @@ -1191,11 +1186,11 @@ msgstr "" "le code réel. Bien sûr, Python vous permet d'être laxiste et de ne pas " "écrire de test du tout." -#: faq/design.rst:602 +#: faq/design.rst:601 msgid "Why is there no goto?" msgstr "Pourquoi n'y a-t-il pas de ``goto`` en Python ?" -#: faq/design.rst:604 +#: faq/design.rst:603 msgid "" "In the 1970s people realized that unrestricted goto could lead to messy " "\"spaghetti\" code that was hard to understand and revise. In a high-level " @@ -1212,7 +1207,7 @@ msgstr "" "boucler (avec les instructions ``while`` et ``for``, qui peuvent contenir " "des ``continue`` et ``break``)." -#: faq/design.rst:611 +#: faq/design.rst:610 msgid "" "One can also use exceptions to provide a \"structured goto\" that works even " "across function calls. Many feel that exceptions can conveniently emulate " @@ -1225,7 +1220,7 @@ msgstr "" "l'utilisation raisonnable des constructions *go* ou *goto* du C, du Fortran " "ou d'autres langages de programmation. Par exemple ::" -#: faq/design.rst:627 +#: faq/design.rst:626 msgid "" "This doesn't allow you to jump into the middle of a loop, but that's usually " "considered an abuse of goto anyway. Use sparingly." @@ -1234,13 +1229,13 @@ msgstr "" "toute façon généralement considéré comme un abus de ``goto``. À Utiliser " "avec parcimonie." -#: faq/design.rst:632 +#: faq/design.rst:631 msgid "Why can't raw strings (r-strings) end with a backslash?" msgstr "" "Pourquoi les chaînes de caractères brutes (r-strings) ne peuvent-elles pas " "se terminer par un *backslash* ?" -#: faq/design.rst:634 +#: faq/design.rst:633 msgid "" "More precisely, they can't end with an odd number of backslashes: the " "unpaired backslash at the end escapes the closing quote character, leaving " @@ -1250,7 +1245,7 @@ msgstr "" "*backslashes* : le *backslash* non appairé à la fin échappe le caractère de " "guillemet final, laissant la chaîne non terminée." -#: faq/design.rst:638 +#: faq/design.rst:637 msgid "" "Raw strings were designed to ease creating input for processors (chiefly " "regular expression engines) that want to do their own backslash escape " @@ -1268,7 +1263,7 @@ msgstr "" "chaîne en l'échappant avec un *antislash*. Ces règles fonctionnent bien " "lorsque les chaînes brutes sont utilisées pour leur but premier." -#: faq/design.rst:645 +#: faq/design.rst:644 msgid "" "If you're trying to build Windows pathnames, note that all Windows system " "calls accept forward slashes too::" @@ -1277,20 +1272,20 @@ msgstr "" "les appels système Windows acceptent également les *slashes* " "« classiques » ::" -#: faq/design.rst:650 +#: faq/design.rst:649 msgid "" "If you're trying to build a pathname for a DOS command, try e.g. one of ::" msgstr "" "Si vous essayez de construire un chemin d'accès pour une commande DOS, " "essayez par exemple l'un de ceux-ci ::" -#: faq/design.rst:658 +#: faq/design.rst:657 msgid "Why doesn't Python have a \"with\" statement for attribute assignments?" msgstr "" "Pourquoi la déclaration ``with`` pour les assignations d'attributs n'existe " "pas en Python ?" -#: faq/design.rst:660 +#: faq/design.rst:659 msgid "" "Python has a 'with' statement that wraps the execution of a block, calling " "code on the entrance and exit from the block. Some languages have a " @@ -1300,11 +1295,11 @@ msgstr "" "appelant du code à l'entrée et la sortie du bloc. Certains langages " "possèdent une construction qui ressemble à ceci ::" -#: faq/design.rst:668 +#: faq/design.rst:667 msgid "In Python, such a construct would be ambiguous." msgstr "En Python, une telle construction serait ambiguë." -#: faq/design.rst:670 +#: faq/design.rst:669 msgid "" "Other languages, such as Object Pascal, Delphi, and C++, use static types, " "so it's possible to know, in an unambiguous way, what member is being " @@ -1317,7 +1312,7 @@ msgstr "" "le compilateur connaît *toujours* la portée de toutes les variables au " "moment de la compilation." -#: faq/design.rst:675 +#: faq/design.rst:674 msgid "" "Python uses dynamic types. It is impossible to know in advance which " "attribute will be referenced at runtime. Member attributes may be added or " @@ -1331,11 +1326,11 @@ msgstr "" "impossible de savoir, d'une simple lecture, quel attribut est référencé : " "s'il est local, global ou un attribut membre ?" -#: faq/design.rst:681 +#: faq/design.rst:680 msgid "For instance, take the following incomplete snippet::" msgstr "Prenons par exemple l'extrait incomplet suivant ::" -#: faq/design.rst:687 +#: faq/design.rst:686 msgid "" "The snippet assumes that \"a\" must have a member attribute called \"x\". " "However, there is nothing in Python that tells the interpreter this. What " @@ -1349,7 +1344,7 @@ msgstr "" "« x » existe, est-elle utilisée dans le bloc ``with`` ? Comme vous voyez, " "la nature dynamique du Python rend ces choix beaucoup plus difficiles." -#: faq/design.rst:693 +#: faq/design.rst:692 msgid "" "The primary benefit of \"with\" and similar language features (reduction of " "code volume) can, however, easily be achieved in Python by assignment. " @@ -1359,11 +1354,11 @@ msgstr "" "similaires (réduction du volume de code) peut, cependant, être facilement " "réalisé en Python par assignation. Au lieu de ::" -#: faq/design.rst:700 +#: faq/design.rst:699 msgid "write this::" msgstr "écrivez ceci ::" -#: faq/design.rst:707 +#: faq/design.rst:706 msgid "" "This also has the side-effect of increasing execution speed because name " "bindings are resolved at run-time in Python, and the second version only " @@ -1373,12 +1368,12 @@ msgstr "" "car les liaisons de noms sont résolues au moment de l'exécution en Python, " "et la deuxième version n'a besoin d'exécuter la résolution qu'une seule fois." -#: faq/design.rst:713 +#: faq/design.rst:712 msgid "Why don't generators support the with statement?" msgstr "" "Pourquoi l'instruction ``with`` ne prend-elle pas en charge les générateurs ?" -#: faq/design.rst:715 +#: faq/design.rst:714 msgid "" "For technical reasons, a generator used directly as a context manager would " "not work correctly. When, as is most common, a generator is used as an " @@ -1391,13 +1386,13 @@ msgstr "" "besoin de le fermer. Sinon, on peut toujours mettre ``contextlib." "closing(générateur)`` dans la ligne du ``with``." -#: faq/design.rst:722 +#: faq/design.rst:721 msgid "Why are colons required for the if/while/def/class statements?" msgstr "" "Pourquoi les deux-points sont-ils nécessaires pour les déclarations ``if/" "while/def/class`` ?" -#: faq/design.rst:724 +#: faq/design.rst:723 msgid "" "The colon is required primarily to enhance readability (one of the results " "of the experimental ABC language). Consider this::" @@ -1405,11 +1400,11 @@ msgstr "" "Le deux-points est principalement nécessaire pour améliorer la lisibilité " "(l'un des résultats du langage expérimental ABC). Considérez ceci ::" -#: faq/design.rst:730 +#: faq/design.rst:729 msgid "versus ::" msgstr "et cela ::" -#: faq/design.rst:735 +#: faq/design.rst:734 msgid "" "Notice how the second one is slightly easier to read. Notice further how a " "colon sets off the example in this FAQ answer; it's a standard usage in " @@ -1419,7 +1414,7 @@ msgstr "" "aussi comment un deux-points introduit l'exemple dans cette réponse à la " "FAQ ; c'est un usage standard en français (et en anglais)." -#: faq/design.rst:738 +#: faq/design.rst:737 msgid "" "Another minor reason is that the colon makes it easier for editors with " "syntax highlighting; they can look for colons to decide when indentation " @@ -1431,13 +1426,13 @@ msgstr "" "pour décider quand l'indentation doit être augmentée au lieu d'avoir à faire " "une analyse plus élaborée du texte du programme." -#: faq/design.rst:744 +#: faq/design.rst:743 msgid "Why does Python allow commas at the end of lists and tuples?" msgstr "" "Pourquoi Python permet-il les virgules à la fin des listes et des *n*-" "uplets ?" -#: faq/design.rst:746 +#: faq/design.rst:745 msgid "" "Python lets you add a trailing comma at the end of lists, tuples, and " "dictionaries::" @@ -1445,11 +1440,11 @@ msgstr "" "Python vous permet d'ajouter une virgule à la fin des listes, des *n*-uplets " "et des dictionnaires ::" -#: faq/design.rst:757 +#: faq/design.rst:756 msgid "There are several reasons to allow this." msgstr "Il y a plusieurs raisons d'accepter cela." -#: faq/design.rst:759 +#: faq/design.rst:758 msgid "" "When you have a literal value for a list, tuple, or dictionary spread across " "multiple lines, it's easier to add more elements because you don't have to " @@ -1462,7 +1457,7 @@ msgstr "" "virgule à la ligne précédente. Les lignes peuvent aussi être réorganisées " "sans créer une erreur de syntaxe." -#: faq/design.rst:764 +#: faq/design.rst:763 msgid "" "Accidentally omitting the comma can lead to errors that are hard to " "diagnose. For example::" @@ -1470,7 +1465,7 @@ msgstr "" "L'omission accidentelle de la virgule peut entraîner des erreurs difficiles " "à diagnostiquer, par exemple ::" -#: faq/design.rst:774 +#: faq/design.rst:773 msgid "" "This list looks like it has four elements, but it actually contains three: " "\"fee\", \"fiefoo\" and \"fum\". Always adding the comma avoids this source " @@ -1480,9 +1475,21 @@ msgstr "" "trois : \"*fee*\", \"*fiefoo*\" et \"*fum*\". Toujours ajouter la virgule " "permet d'éviter cette source d'erreur." -#: faq/design.rst:777 +#: faq/design.rst:776 msgid "" "Allowing the trailing comma may also make programmatic code generation " "easier." msgstr "" "Permettre la virgule de fin peut également faciliter la génération de code." + +#~ msgid "" +#~ "You can do this easily enough with a sequence of ``if... elif... elif... " +#~ "else``. There have been some proposals for switch statement syntax, but " +#~ "there is no consensus (yet) on whether and how to do range tests. See :" +#~ "pep:`275` for complete details and the current status." +#~ msgstr "" +#~ "Vous pouvez le faire assez facilement avec une séquence de ``if... " +#~ "elif... elif... else``. Il y a eu quelques propositions pour la syntaxe " +#~ "de l'instruction ``switch``, mais il n'y a pas (encore) de consensus sur " +#~ "le cas des intervalles. Voir la :pep:`275` pour tous les détails et " +#~ "l'état actuel." diff --git a/faq/extending.po b/faq/extending.po index fdfc986a3..8a015c977 100644 --- a/faq/extending.po +++ b/faq/extending.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-03-03 19:27+0100\n" "Last-Translator: ZepmanBC \n" "Language-Team: FRENCH \n" @@ -458,32 +458,19 @@ msgstr "" "myreadline.c`` pour plus de conseils." #: faq/extending.rst:276 +#, fuzzy msgid "" "However sometimes you have to run the embedded Python interpreter in the " "same thread as your rest application and you can't allow the :c:func:" -"`PyRun_InteractiveLoop` to stop while waiting for user input. The one " -"solution then is to call :c:func:`PyParser_ParseString` and test for ``e." -"error`` equal to ``E_EOF``, which means the input is incomplete. Here's a " -"sample code fragment, untested, inspired by code from Alex Farber::" -msgstr "" -"Cependant, vous devez parfois exécuter l'interpréteur Python intégré dans le " -"même fil d’exécution que le reste de votre application et vous ne pouvez pas " -"laisser :c:func:`PyRun_InteractiveLoop` attendre les entrées utilisateur. La " -"seule solution est alors d'appeler :c:func:`PyParser_ParseString` et de " -"tester si ``e.error`` égale ``E_EOF``, ce qui signifie que l'entrée est " -"incomplète. Voici un exemple de code, non testé, inspiré d'un code écrit par " -"Alex Farber ::" - -#: faq/extending.rst:310 -msgid "" -"Another solution is trying to compile the received string with :c:func:" -"`Py_CompileString`. If it compiles without errors, try to execute the " -"returned code object by calling :c:func:`PyEval_EvalCode`. Otherwise save " -"the input for later. If the compilation fails, find out if it's an error or " -"just more input is required - by extracting the message string from the " -"exception tuple and comparing it to the string \"unexpected EOF while parsing" -"\". Here is a complete example using the GNU readline library (you may want " -"to ignore **SIGINT** while calling readline())::" +"`PyRun_InteractiveLoop` to stop while waiting for user input. A solution is " +"trying to compile the received string with :c:func:`Py_CompileString`. If it " +"compiles without errors, try to execute the returned code object by calling :" +"c:func:`PyEval_EvalCode`. Otherwise save the input for later. If the " +"compilation fails, find out if it's an error or just more input is required " +"- by extracting the message string from the exception tuple and comparing it " +"to the string \"unexpected EOF while parsing\". Here is a complete example " +"using the GNU readline library (you may want to ignore **SIGINT** while " +"calling readline())::" msgstr "" "Une autre solution est d'essayer de compiler la chaîne reçue avec :c:func:" "`Py_CompileString`. Si cela se compile sans erreur, essayez d'exécuter " @@ -495,13 +482,13 @@ msgstr "" "la bibliothèque *readline* de GNU (il vous est possible d'ignorer **SIGINT** " "lors de l'appel à ``readline()``) ::" -#: faq/extending.rst:432 +#: faq/extending.rst:401 msgid "How do I find undefined g++ symbols __builtin_new or __pure_virtual?" msgstr "" "Comment puis-je trouver les symboles g++ indéfinis ``__builtin_new`` ou " "``__pure_virtual`` ?" -#: faq/extending.rst:434 +#: faq/extending.rst:403 msgid "" "To dynamically load g++ extension modules, you must recompile Python, relink " "it using g++ (change LINKCC in the Python Modules Makefile), and link your " @@ -513,7 +500,7 @@ msgstr "" "de votre module d'extension avec g++ (par exemple, ``g++ -shared -o mymodule." "so mymodule.o``)." -#: faq/extending.rst:440 +#: faq/extending.rst:409 msgid "" "Can I create an object class with some methods implemented in C and others " "in Python (e.g. through inheritance)?" @@ -521,7 +508,7 @@ msgstr "" "Puis-je créer une classe d'objets avec certaines méthodes implémentées en C " "et d'autres en Python (p. ex. en utilisant l'héritage) ?" -#: faq/extending.rst:442 +#: faq/extending.rst:411 msgid "" "Yes, you can inherit from built-in classes such as :class:`int`, :class:" "`list`, :class:`dict`, etc." @@ -529,7 +516,7 @@ msgstr "" "Oui, vous pouvez hériter de classes intégrées telles que :class:`int`, :" "class:`list`, :class:`dict`, etc." -#: faq/extending.rst:445 +#: faq/extending.rst:414 msgid "" "The Boost Python Library (BPL, http://www.boost.org/libs/python/doc/index." "html) provides a way of doing this from C++ (i.e. you can inherit from an " @@ -538,3 +525,19 @@ msgstr "" "La bibliothèque *Boost Python Library* (BPL, http://www.boost.org/libs/" "python/doc/index.html) fournit un moyen de le faire depuis C++ (c.-à-d. que " "vous pouvez hériter d'une classe d'extension écrite en C++ en utilisant BPL)." + +#~ msgid "" +#~ "However sometimes you have to run the embedded Python interpreter in the " +#~ "same thread as your rest application and you can't allow the :c:func:" +#~ "`PyRun_InteractiveLoop` to stop while waiting for user input. The one " +#~ "solution then is to call :c:func:`PyParser_ParseString` and test for ``e." +#~ "error`` equal to ``E_EOF``, which means the input is incomplete. Here's " +#~ "a sample code fragment, untested, inspired by code from Alex Farber::" +#~ msgstr "" +#~ "Cependant, vous devez parfois exécuter l'interpréteur Python intégré dans " +#~ "le même fil d’exécution que le reste de votre application et vous ne " +#~ "pouvez pas laisser :c:func:`PyRun_InteractiveLoop` attendre les entrées " +#~ "utilisateur. La seule solution est alors d'appeler :c:func:" +#~ "`PyParser_ParseString` et de tester si ``e.error`` égale ``E_EOF``, ce " +#~ "qui signifie que l'entrée est incomplète. Voici un exemple de code, non " +#~ "testé, inspiré d'un code écrit par Alex Farber ::" diff --git a/faq/general.po b/faq/general.po index f5d0d350d..69038d1e6 100644 --- a/faq/general.po +++ b/faq/general.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-11-07 17:18+0100\n" "Last-Translator: Mindiell \n" "Language-Team: FRENCH \n" @@ -255,10 +255,11 @@ msgstr "" "utilisé pour pallier à différents problèmes." #: faq/general.rst:114 +#, fuzzy msgid "" "The language comes with a large standard library that covers areas such as " "string processing (regular expressions, Unicode, calculating differences " -"between files), Internet protocols (HTTP, FTP, SMTP, XML-RPC, POP, IMAP, CGI " +"between files), internet protocols (HTTP, FTP, SMTP, XML-RPC, POP, IMAP, CGI " "programming), software engineering (unit testing, logging, profiling, " "parsing Python code), and operating system interfaces (system calls, " "filesystems, TCP/IP sockets). Look at the table of contents for :ref:" diff --git a/faq/gui.po b/faq/gui.po index 48fdc1c34..c8742cbd4 100644 --- a/faq/gui.po +++ b/faq/gui.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 02:54+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -28,34 +28,21 @@ msgid "General GUI Questions" msgstr "Questions générales sur l'interface graphique" #: faq/gui.rst:18 -msgid "What platform-independent GUI toolkits exist for Python?" +#, fuzzy +msgid "What GUI toolkits exist for Python?" msgstr "" -"Quelles bibliothèques d'interfaces graphiques multi-plateformes existent en " -"Python ?" +"Quelles boîtes à outils IUG spécifiques à la plate-forme existent pour " +"Python ?" #: faq/gui.rst:20 -msgid "" -"Depending on what platform(s) you are aiming at, there are several. Some of " -"them haven't been ported to Python 3 yet. At least `Tkinter`_ and `Qt`_ are " -"known to be Python 3-compatible." -msgstr "" -"Selon les plateformes que vous comptez utiliser, il en existe plusieurs. " -"Certaines ne sont cependant pas encore disponibles en Python 3. A minima, " -"`Tkinter`_ et `Qt`_ sont connus pour être compatibles avec Python 3." - -#: faq/gui.rst:27 -msgid "Tkinter" -msgstr "*Tkinter*" - -#: faq/gui.rst:29 +#, fuzzy msgid "" "Standard builds of Python include an object-oriented interface to the Tcl/Tk " "widget set, called :ref:`tkinter `. This is probably the easiest " "to install (since it comes included with most `binary distributions `_ of Python) and use. For more info about Tk, " "including pointers to the source, see the `Tcl/Tk home page `_. Tcl/Tk is fully portable to the Mac OS X, Windows, and Unix " -"platforms." +"tk>`_. Tcl/Tk is fully portable to the macOS, Windows, and Unix platforms." msgstr "" "Les versions standards de Python incluent une interface orientée objet pour " "le jeu d'objets graphiques *Tcl/Tk*, appelée :ref:`tkinter `. " @@ -66,184 +53,24 @@ msgstr "" "tk>`_. *Tcl/Tk* est entièrement portable sur les plates-formes Mac OS X, " "Windows et Unix." -#: faq/gui.rst:38 -msgid "wxWidgets" -msgstr "*wxWidgets*" - -#: faq/gui.rst:40 -msgid "" -"wxWidgets (https://www.wxwidgets.org) is a free, portable GUI class library " -"written in C++ that provides a native look and feel on a number of " -"platforms, with Windows, Mac OS X, GTK, X11, all listed as current stable " -"targets. Language bindings are available for a number of languages " -"including Python, Perl, Ruby, etc." -msgstr "" -"`wxWidgets` (https://www.wxwidgets.org) est une librairie de classe IUG " -"portable et gratuite écrite en C++ qui fournit une apparence native sur un " -"certain nombre de plates-formes, elle est notamment en version stable pour " -"Windows, Mac OS X, GTK et X11. Des clients sont disponibles pour un certain " -"nombre de langages, y compris Python, Perl, Ruby, etc." - -#: faq/gui.rst:46 -msgid "" -"`wxPython `_ is the Python binding for wxwidgets. " -"While it often lags slightly behind the official wxWidgets releases, it also " -"offers a number of features via pure Python extensions that are not " -"available in other language bindings. There is an active wxPython user and " -"developer community." -msgstr "" -"`wxPython `_ est le portage Python de *wxWidgets*. " -"Bien qu’il soit légèrement en retard sur les versions officielles de " -"*wxWidgets*, il offre également des fonctionnalités propres à Python qui ne " -"sont pas disponibles pour les clients d'autres langages. *WxPython* dispose " -"de plus, d’une communauté d’utilisateurs et de développeurs active." - -#: faq/gui.rst:52 -msgid "" -"Both wxWidgets and wxPython are free, open source, software with permissive " -"licences that allow their use in commercial products as well as in freeware " -"or shareware." -msgstr "" -"*wxWidgets* et *wxPython* sont tous deux des logiciels libres, open source, " -"avec des licences permissives qui permettent leur utilisation dans des " -"produits commerciaux ainsi que dans des logiciels gratuits ou contributifs " -"(*shareware*)." - -#: faq/gui.rst:58 -msgid "Qt" -msgstr "*Qt*" - -#: faq/gui.rst:60 -msgid "" -"There are bindings available for the Qt toolkit (using either `PyQt `_ or `PySide `_) and for KDE (`PyKDE4 `__). PyQt is currently more mature than PySide, but you must " -"buy a PyQt license from `Riverbank Computing `_ if you want to write proprietary " -"applications. PySide is free for all applications." -msgstr "" -"Il existe des liens disponibles pour la boîte à outils *Qt* (en utilisant " -"soit `PyQt `_ ou `PySide " -"`_) et pour *KDE* (`PyKDE4 `__). *PyQt* est actuellement plus mûre " -"que *PySide*, mais*PyQt* nécessite d'acheter une licence de `Riverbank " -"Computing `_ si " -"vous voulez écrire des applications propriétaires. *PySide* est gratuit " -"pour toutes les applications." - -#: faq/gui.rst:67 -msgid "" -"Qt 4.5 upwards is licensed under the LGPL license; also, commercial licenses " -"are available from `The Qt Company `_." -msgstr "" -"*Qt >= 4.5* est sous licence LGPL ; de plus, des licences commerciales sont " -"disponibles auprès de `The Qt Company `_." - -#: faq/gui.rst:71 -msgid "Gtk+" -msgstr "*Gtk+*" - -#: faq/gui.rst:73 -msgid "" -"The `GObject introspection bindings `_ for Python allow you to write GTK+ 3 applications. There is " -"also a `Python GTK+ 3 Tutorial `_." -msgstr "" -"Les `GObject introspection bindings `_ pour Python vous permettent d'écrire des applications GTK+ 3. " -"Il y a aussi un tutoriel `Python GTK+ 3 `_." - -#: faq/gui.rst:77 +#: faq/gui.rst:28 msgid "" -"The older PyGtk bindings for the `Gtk+ 2 toolkit `_ " -"have been implemented by James Henstridge; see ." +"Depending on what platform(s) you are aiming at, there are also several " +"alternatives. A `list of cross-platform `_ and `platform-specific `_ GUI " +"frameworks can be found on the python wiki." msgstr "" -"Les anciennes versions de *PyGtk* pour le `Gtk+ 2 toolkit `_ ont été implémentées par James Henstridge ; voir ." -#: faq/gui.rst:81 -msgid "Kivy" -msgstr "*Kivy*" - -#: faq/gui.rst:83 -msgid "" -"`Kivy `_ is a cross-platform GUI library supporting both " -"desktop operating systems (Windows, macOS, Linux) and mobile devices " -"(Android, iOS). It is written in Python and Cython, and can use a range of " -"windowing backends." -msgstr "" -"`*Kivy* `_ est une bibliothèque GUI multi-plateformes " -"disponible à la fois sur les systèmes d'exploitation de bureau (Windows, " -"MacOS, Linux) et les appareils mobiles (Android, iOS). Elle est écrite en " -"Python et Cython, et peut utiliser une série de fenêtres de *backends*." - -#: faq/gui.rst:88 -msgid "" -"Kivy is free and open source software distributed under the MIT license." -msgstr "" -"*Kivy* est un logiciel libre et open source distribué sous licence MIT." - -#: faq/gui.rst:91 -msgid "FLTK" -msgstr "*FLTK*" - -#: faq/gui.rst:93 -msgid "" -"Python bindings for `the FLTK toolkit `_, a simple yet " -"powerful and mature cross-platform windowing system, are available from `the " -"PyFLTK project `_." -msgstr "" -"Les liaisons Python pour `the FLTK toolkit `_, un " -"système de fenêtrage multi-plateformes simple mais puissant et mûr, sont " -"disponibles auprès de `the PyFLTK project `_." - -#: faq/gui.rst:98 -msgid "OpenGL" -msgstr "*OpenGL*" - -#: faq/gui.rst:100 -msgid "For OpenGL bindings, see `PyOpenGL `_." -msgstr "" -"Pour les clients OpenGL, voir `PyOpenGL `_." - -#: faq/gui.rst:104 -msgid "What platform-specific GUI toolkits exist for Python?" -msgstr "" -"Quelles boîtes à outils IUG spécifiques à la plate-forme existent pour " -"Python ?" - -#: faq/gui.rst:106 -msgid "" -"By installing the `PyObjc Objective-C bridge `_, Python programs can use Mac OS X's Cocoa libraries." -msgstr "" -"En installant le `PyObjc Objective-C bridge `_, les programmes Python peuvent utiliser les bibliothèques Cocoa de Mac " -"OS X." - -#: faq/gui.rst:110 -msgid "" -":ref:`Pythonwin ` by Mark Hammond includes an interface to the " -"Microsoft Foundation Classes and a Python programming environment that's " -"written mostly in Python using the MFC classes." -msgstr "" -":ref:`Pythonwin ` de Mark Hammond inclut une interface vers les " -"classes `Microsoft Foundation Classes` et un environnement de programmation " -"Python qui est écrit principalement en Python utilisant les classes *MFC*." - -#: faq/gui.rst:116 +#: faq/gui.rst:36 msgid "Tkinter questions" msgstr "Questions à propos de *Tkinter*" -#: faq/gui.rst:119 +#: faq/gui.rst:39 msgid "How do I freeze Tkinter applications?" msgstr "Comment puis-je geler (*freezer*) les applications *Tkinter* ?" -#: faq/gui.rst:121 +#: faq/gui.rst:41 msgid "" "Freeze is a tool to create stand-alone applications. When freezing Tkinter " "applications, the applications will not be truly stand-alone, as the " @@ -254,7 +81,7 @@ msgstr "" "autonomes, car l'application aura toujours besoin des bibliothèques Tcl et " "Tk." -#: faq/gui.rst:125 +#: faq/gui.rst:45 msgid "" "One solution is to ship the application with the Tcl and Tk libraries, and " "point to them at run-time using the :envvar:`TCL_LIBRARY` and :envvar:" @@ -264,7 +91,7 @@ msgstr "" "l'application et de les retrouver à l'exécution en utilisant les variables " "d'environnement :envvar:`TCL_LIBRARY` et :envvar:`TK_LIBRARY`." -#: faq/gui.rst:129 +#: faq/gui.rst:49 msgid "" "To get truly stand-alone applications, the Tcl scripts that form the library " "have to be integrated into the application as well. One tool supporting that " @@ -276,7 +103,7 @@ msgstr "" "Un outil supportant cela est *SAM* (modules autonomes), qui fait partie de " "la distribution *Tix* (http://tix.sourceforge.net/)." -#: faq/gui.rst:134 +#: faq/gui.rst:54 msgid "" "Build Tix with SAM enabled, perform the appropriate call to :c:func:" "`Tclsam_init`, etc. inside Python's :file:`Modules/tkappinit.c`, and link " @@ -287,11 +114,11 @@ msgstr "" "et liez avec *libtclsam* et *libtksam* (il est également possible d'inclure " "les bibliothèques *Tix*)." -#: faq/gui.rst:141 +#: faq/gui.rst:61 msgid "Can I have Tk events handled while waiting for I/O?" msgstr "Puis-je modifier des événements *Tk* pendant l'écoute des *E/S* ?" -#: faq/gui.rst:143 +#: faq/gui.rst:63 msgid "" "On platforms other than Windows, yes, and you don't even need threads! But " "you'll have to restructure your I/O code a bit. Tk has the equivalent of " @@ -306,13 +133,13 @@ msgstr "" "appelée par la boucle principale *Tk* lorsque des *E/S* sont disponibles sur " "un descripteur de fichier. Voir :ref:`tkinter-file-handlers`." -#: faq/gui.rst:151 +#: faq/gui.rst:71 msgid "I can't get key bindings to work in Tkinter: why?" msgstr "" "Je n'arrive pas à faire fonctionner les raccourcis clavier dans *Tkinter* : " "pourquoi ?" -#: faq/gui.rst:153 +#: faq/gui.rst:73 msgid "" "An often-heard complaint is that event handlers bound to events with the :" "meth:`bind` method don't get handled even when the appropriate key is " @@ -322,7 +149,7 @@ msgstr "" "évènements avec la méthode :meth:`bind` ne sont pas pris en charge même " "lorsque la touche appropriée est activée." -#: faq/gui.rst:156 +#: faq/gui.rst:76 msgid "" "The most common cause is that the widget to which the binding applies " "doesn't have \"keyboard focus\". Check out the Tk documentation for the " @@ -334,3 +161,171 @@ msgstr "" "la commande *focus*. Habituellement, un objet graphique reçoit le focus du " "clavier en cliquant dessus (mais pas pour les étiquettes ; voir l'option " "*takefocus*)." + +#~ msgid "What platform-independent GUI toolkits exist for Python?" +#~ msgstr "" +#~ "Quelles bibliothèques d'interfaces graphiques multi-plateformes existent " +#~ "en Python ?" + +#~ msgid "" +#~ "Depending on what platform(s) you are aiming at, there are several. Some " +#~ "of them haven't been ported to Python 3 yet. At least `Tkinter`_ and " +#~ "`Qt`_ are known to be Python 3-compatible." +#~ msgstr "" +#~ "Selon les plateformes que vous comptez utiliser, il en existe plusieurs. " +#~ "Certaines ne sont cependant pas encore disponibles en Python 3. A minima, " +#~ "`Tkinter`_ et `Qt`_ sont connus pour être compatibles avec Python 3." + +#~ msgid "Tkinter" +#~ msgstr "*Tkinter*" + +#~ msgid "wxWidgets" +#~ msgstr "*wxWidgets*" + +#~ msgid "" +#~ "wxWidgets (https://www.wxwidgets.org) is a free, portable GUI class " +#~ "library written in C++ that provides a native look and feel on a number " +#~ "of platforms, with Windows, Mac OS X, GTK, X11, all listed as current " +#~ "stable targets. Language bindings are available for a number of " +#~ "languages including Python, Perl, Ruby, etc." +#~ msgstr "" +#~ "`wxWidgets` (https://www.wxwidgets.org) est une librairie de classe IUG " +#~ "portable et gratuite écrite en C++ qui fournit une apparence native sur " +#~ "un certain nombre de plates-formes, elle est notamment en version stable " +#~ "pour Windows, Mac OS X, GTK et X11. Des clients sont disponibles pour un " +#~ "certain nombre de langages, y compris Python, Perl, Ruby, etc." + +#~ msgid "" +#~ "`wxPython `_ is the Python binding for " +#~ "wxwidgets. While it often lags slightly behind the official wxWidgets " +#~ "releases, it also offers a number of features via pure Python extensions " +#~ "that are not available in other language bindings. There is an active " +#~ "wxPython user and developer community." +#~ msgstr "" +#~ "`wxPython `_ est le portage Python de " +#~ "*wxWidgets*. Bien qu’il soit légèrement en retard sur les versions " +#~ "officielles de *wxWidgets*, il offre également des fonctionnalités " +#~ "propres à Python qui ne sont pas disponibles pour les clients d'autres " +#~ "langages. *WxPython* dispose de plus, d’une communauté d’utilisateurs et " +#~ "de développeurs active." + +#~ msgid "" +#~ "Both wxWidgets and wxPython are free, open source, software with " +#~ "permissive licences that allow their use in commercial products as well " +#~ "as in freeware or shareware." +#~ msgstr "" +#~ "*wxWidgets* et *wxPython* sont tous deux des logiciels libres, open " +#~ "source, avec des licences permissives qui permettent leur utilisation " +#~ "dans des produits commerciaux ainsi que dans des logiciels gratuits ou " +#~ "contributifs (*shareware*)." + +#~ msgid "Qt" +#~ msgstr "*Qt*" + +#~ msgid "" +#~ "There are bindings available for the Qt toolkit (using either `PyQt " +#~ "`_ or `PySide " +#~ "`_) and for KDE (`PyKDE4 `__). PyQt is currently more mature " +#~ "than PySide, but you must buy a PyQt license from `Riverbank Computing " +#~ "`_ if you want " +#~ "to write proprietary applications. PySide is free for all applications." +#~ msgstr "" +#~ "Il existe des liens disponibles pour la boîte à outils *Qt* (en utilisant " +#~ "soit `PyQt `_ ou " +#~ "`PySide `_) et pour *KDE* (`PyKDE4 `__). *PyQt* est " +#~ "actuellement plus mûre que *PySide*, mais*PyQt* nécessite d'acheter une " +#~ "licence de `Riverbank Computing `_ si vous voulez écrire des applications " +#~ "propriétaires. *PySide* est gratuit pour toutes les applications." + +#~ msgid "" +#~ "Qt 4.5 upwards is licensed under the LGPL license; also, commercial " +#~ "licenses are available from `The Qt Company `_." +#~ msgstr "" +#~ "*Qt >= 4.5* est sous licence LGPL ; de plus, des licences commerciales " +#~ "sont disponibles auprès de `The Qt Company `_." + +#~ msgid "Gtk+" +#~ msgstr "*Gtk+*" + +#~ msgid "" +#~ "The `GObject introspection bindings `_ for Python allow you to write GTK+ 3 applications. There is " +#~ "also a `Python GTK+ 3 Tutorial `_." +#~ msgstr "" +#~ "Les `GObject introspection bindings `_ pour Python vous permettent d'écrire des applications GTK+ " +#~ "3. Il y a aussi un tutoriel `Python GTK+ 3 `_." + +#~ msgid "" +#~ "The older PyGtk bindings for the `Gtk+ 2 toolkit `_ " +#~ "have been implemented by James Henstridge; see ." +#~ msgstr "" +#~ "Les anciennes versions de *PyGtk* pour le `Gtk+ 2 toolkit `_ ont été implémentées par James Henstridge ; voir ." + +#~ msgid "Kivy" +#~ msgstr "*Kivy*" + +#~ msgid "" +#~ "`Kivy `_ is a cross-platform GUI library supporting " +#~ "both desktop operating systems (Windows, macOS, Linux) and mobile devices " +#~ "(Android, iOS). It is written in Python and Cython, and can use a range " +#~ "of windowing backends." +#~ msgstr "" +#~ "`*Kivy* `_ est une bibliothèque GUI multi-plateformes " +#~ "disponible à la fois sur les systèmes d'exploitation de bureau (Windows, " +#~ "MacOS, Linux) et les appareils mobiles (Android, iOS). Elle est écrite " +#~ "en Python et Cython, et peut utiliser une série de fenêtres de *backends*." + +#~ msgid "" +#~ "Kivy is free and open source software distributed under the MIT license." +#~ msgstr "" +#~ "*Kivy* est un logiciel libre et open source distribué sous licence MIT." + +#~ msgid "FLTK" +#~ msgstr "*FLTK*" + +#~ msgid "" +#~ "Python bindings for `the FLTK toolkit `_, a simple " +#~ "yet powerful and mature cross-platform windowing system, are available " +#~ "from `the PyFLTK project `_." +#~ msgstr "" +#~ "Les liaisons Python pour `the FLTK toolkit `_, un " +#~ "système de fenêtrage multi-plateformes simple mais puissant et mûr, sont " +#~ "disponibles auprès de `the PyFLTK project `_." + +#~ msgid "OpenGL" +#~ msgstr "*OpenGL*" + +#~ msgid "" +#~ "For OpenGL bindings, see `PyOpenGL `_." +#~ msgstr "" +#~ "Pour les clients OpenGL, voir `PyOpenGL `_." + +#~ msgid "" +#~ "By installing the `PyObjc Objective-C bridge `_, Python programs can use Mac OS X's Cocoa libraries." +#~ msgstr "" +#~ "En installant le `PyObjc Objective-C bridge `_, les programmes Python peuvent utiliser les bibliothèques " +#~ "Cocoa de Mac OS X." + +#~ msgid "" +#~ ":ref:`Pythonwin ` by Mark Hammond includes an interface to " +#~ "the Microsoft Foundation Classes and a Python programming environment " +#~ "that's written mostly in Python using the MFC classes." +#~ msgstr "" +#~ ":ref:`Pythonwin ` de Mark Hammond inclut une interface vers " +#~ "les classes `Microsoft Foundation Classes` et un environnement de " +#~ "programmation Python qui est écrit principalement en Python utilisant les " +#~ "classes *MFC*." diff --git a/faq/installed.po b/faq/installed.po index 5e2e4c400..286cf7d64 100644 --- a/faq/installed.po +++ b/faq/installed.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-10-04 16:57+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -92,8 +92,9 @@ msgstr "" "d'administration de ces marques sont écrits en Python." #: faq/installed.rst:32 +#, fuzzy msgid "" -"Many Unix-compatible operating systems, such as Mac OS X and some Linux " +"Many Unix-compatible operating systems, such as macOS and some Linux " "distributions, have Python installed by default; it's included in the base " "installation." msgstr "" diff --git a/faq/library.po b/faq/library.po index ec75211d2..e9ceaf6cd 100644 --- a/faq/library.po +++ b/faq/library.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-11-07 16:04+0100\n" "Last-Translator: Mindiell \n" "Language-Team: FRENCH \n" @@ -43,9 +43,10 @@ msgstr "" "bibliothèque standard et pourrez sauter cette étape)." #: faq/library.rst:21 +#, fuzzy msgid "" "For third-party packages, search the `Python Package Index `_ or try `Google `_ or another Web search " +"org>`_ or try `Google `_ or another web search " "engine. Searching for \"Python\" plus a keyword or two for your topic of " "interest will usually find something helpful." msgstr "" diff --git a/faq/programming.po b/faq/programming.po index 16d8b9e92..114b461ae 100644 --- a/faq/programming.po +++ b/faq/programming.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-05-19 22:42+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -1852,11 +1852,12 @@ msgstr "" "différents types." #: faq/programming.rst:1185 +#, fuzzy msgid "" "The ``array`` module also provides methods for creating arrays of fixed " "types with compact representations, but they are slower to index than " -"lists. Also note that the Numeric extensions and others define array-like " -"structures with various characteristics as well." +"lists. Also note that NumPy and other third party packages define array-" +"like structures with various characteristics as well." msgstr "" "Le module ``array`` fournit des méthodes pour créer des tableaux de types " "fixes dans une représentation compacte, mais ils sont plus lents à indexer " @@ -2303,9 +2304,10 @@ msgstr "" "récursion infinie." #: faq/programming.rst:1537 +#, fuzzy msgid "" "How do I call a method defined in a base class from a derived class that " -"overrides it?" +"extends it?" msgstr "" "Comment appeler une méthode définie dans une classe de base depuis une " "classe dérivée qui la surcharge ?" @@ -2316,26 +2318,19 @@ msgstr "Utilisez la fonction native :func:`super` ::" #: faq/programming.rst:1545 msgid "" -"For version prior to 3.0, you may be using classic classes: For a class " -"definition such as ``class Derived(Base): ...`` you can call method " -"``meth()`` defined in ``Base`` (or one of ``Base``'s base classes) as ``Base." -"meth(self, arguments...)``. Here, ``Base.meth`` is an unbound method, so " -"you need to provide the ``self`` argument." +"In the example, :func:`super` will automatically determine the instance from " +"which it was called (the ``self`` value), look up the :term:`method " +"resolution order` (MRO) with ``type(self).__mro__``, and return the next in " +"line after ``Derived`` in the MRO: ``Base``." msgstr "" -"Pour les versions antérieures à 3.0, vous pouvez utiliser des classes " -"classiques : pour une définition de classe comme ``class Derived(Base): ..." -"`` vous pouvez appeler la méthode ``meth()`` définie dans ``Base`` (ou l'une " -"des classes de base de ``Base``) en faisant ``Base.meth(self, " -"arguments...)``. Ici, ``Base.meth`` est une méthode non liée, il faut donc " -"fournir l'argument ``self``." -#: faq/programming.rst:1553 +#: faq/programming.rst:1552 msgid "How can I organize my code to make it easier to change the base class?" msgstr "" "Comment organiser un code pour permettre de changer la classe de base plus " "facilement ?" -#: faq/programming.rst:1555 +#: faq/programming.rst:1554 msgid "" "You could assign the base class to an alias and derive from the alias. Then " "all you have to change is the value assigned to the alias. Incidentally, " @@ -2348,13 +2343,13 @@ msgstr "" "dynamiquement (par exemple en fonction de la disponibilité de certaines " "ressources) la classe de base à utiliser. Exemple ::" -#: faq/programming.rst:1570 +#: faq/programming.rst:1569 msgid "How do I create static class data and static class methods?" msgstr "" "Comment créer des données statiques de classe et des méthodes statiques de " "classe ?" -#: faq/programming.rst:1572 +#: faq/programming.rst:1571 msgid "" "Both static data and static methods (in the sense of C++ or Java) are " "supported in Python." @@ -2362,7 +2357,7 @@ msgstr "" "Les données statiques et les méthodes statiques (au sens C++ ou Java) sont " "prises en charge en Python." -#: faq/programming.rst:1575 +#: faq/programming.rst:1574 msgid "" "For static data, simply define a class attribute. To assign a new value to " "the attribute, you have to explicitly use the class name in the assignment::" @@ -2371,7 +2366,7 @@ msgstr "" "attribuer une nouvelle valeur à l'attribut, vous devez explicitement " "utiliser le nom de classe dans l'affectation ::" -#: faq/programming.rst:1587 +#: faq/programming.rst:1586 msgid "" "``c.count`` also refers to ``C.count`` for any ``c`` such that " "``isinstance(c, C)`` holds, unless overridden by ``c`` itself or by some " @@ -2382,7 +2377,7 @@ msgstr "" "une classe sur le chemin de recherche de classe de base de ``c.__class__`` " "jusqu'à ``C``." -#: faq/programming.rst:1591 +#: faq/programming.rst:1590 msgid "" "Caution: within a method of C, an assignment like ``self.count = 42`` " "creates a new and unrelated instance named \"count\" in ``self``'s own " @@ -2395,11 +2390,11 @@ msgstr "" "de classe doit toujours spécifier la classe, que l'on soit à l'intérieur " "d'une méthode ou non ::" -#: faq/programming.rst:1598 +#: faq/programming.rst:1597 msgid "Static methods are possible::" msgstr "Il est possible d'utiliser des méthodes statiques ::" -#: faq/programming.rst:1606 +#: faq/programming.rst:1605 msgid "" "However, a far more straightforward way to get the effect of a static method " "is via a simple module-level function::" @@ -2407,7 +2402,7 @@ msgstr "" "Cependant, d'une manière beaucoup plus simple pour obtenir l'effet d'une " "méthode statique se fait par une simple fonction au niveau du module ::" -#: faq/programming.rst:1612 +#: faq/programming.rst:1611 msgid "" "If your code is structured so as to define one class (or tightly related " "class hierarchy) per module, this supplies the desired encapsulation." @@ -2416,11 +2411,11 @@ msgstr "" "hiérarchie des classes connexes) par module, ceci fournira l'encapsulation " "souhaitée." -#: faq/programming.rst:1617 +#: faq/programming.rst:1616 msgid "How can I overload constructors (or methods) in Python?" msgstr "Comment surcharger les constructeurs (ou méthodes) en Python ?" -#: faq/programming.rst:1619 +#: faq/programming.rst:1618 msgid "" "This answer actually applies to all methods, but the question usually comes " "up first in the context of constructors." @@ -2428,11 +2423,11 @@ msgstr "" "Cette réponse s'applique en fait à toutes les méthodes, mais la question se " "pose généralement dans le contexte des constructeurs." -#: faq/programming.rst:1622 +#: faq/programming.rst:1621 msgid "In C++ you'd write" msgstr "En C++, on écrirait" -#: faq/programming.rst:1631 +#: faq/programming.rst:1630 msgid "" "In Python you have to write a single constructor that catches all cases " "using default arguments. For example::" @@ -2440,29 +2435,29 @@ msgstr "" "En Python, vous devez écrire un constructeur unique qui considère tous les " "cas en utilisant des arguments par défaut. Par exemple ::" -#: faq/programming.rst:1641 +#: faq/programming.rst:1640 msgid "This is not entirely equivalent, but close enough in practice." msgstr "" "Ce n'est pas tout à fait équivalent, mais suffisamment proche dans la " "pratique." -#: faq/programming.rst:1643 +#: faq/programming.rst:1642 msgid "You could also try a variable-length argument list, e.g. ::" msgstr "" "Vous pouvez aussi utiliser une liste d'arguments de longueur variable, par " "exemple ::" -#: faq/programming.rst:1648 +#: faq/programming.rst:1647 msgid "The same approach works for all method definitions." msgstr "La même approche fonctionne pour toutes les définitions de méthode." -#: faq/programming.rst:1652 +#: faq/programming.rst:1651 msgid "I try to use __spam and I get an error about _SomeClassName__spam." msgstr "" "J'essaie d'utiliser ``__spam`` et j'obtiens une erreur à propos de " "``_SomeClassName__spam``." -#: faq/programming.rst:1654 +#: faq/programming.rst:1653 msgid "" "Variable names with double leading underscores are \"mangled\" to provide a " "simple but effective way to define class private variables. Any identifier " @@ -2478,7 +2473,7 @@ msgstr "" "remplacé par ``_classname__spam``, où ``classname`` est le nom de la classe " "en cours sans les éventuels tirets bas du début." -#: faq/programming.rst:1660 +#: faq/programming.rst:1659 msgid "" "This doesn't guarantee privacy: an outside user can still deliberately " "access the \"_classname__spam\" attribute, and private values are visible in " @@ -2490,17 +2485,17 @@ msgstr "" "privées sont visibles dans l'objet ``__dict__``. De nombreux programmeurs " "Python ne prennent jamais la peine d'utiliser des noms de variable privés." -#: faq/programming.rst:1667 +#: faq/programming.rst:1666 msgid "My class defines __del__ but it is not called when I delete the object." msgstr "" "Ma classe définit ``__del__`` mais elle n'est pas appelée lorsque je " "supprime l'objet." -#: faq/programming.rst:1669 +#: faq/programming.rst:1668 msgid "There are several possible reasons for this." msgstr "Il y a plusieurs explications possibles." -#: faq/programming.rst:1671 +#: faq/programming.rst:1670 msgid "" "The del statement does not necessarily call :meth:`__del__` -- it simply " "decrements the object's reference count, and if this reaches zero :meth:" @@ -2510,7 +2505,7 @@ msgstr "" "simplement le compteur de références de l'objet et, si celui-ci arrive à " "zéro, :meth:`__del__` est appelée." -#: faq/programming.rst:1675 +#: faq/programming.rst:1674 msgid "" "If your data structures contain circular links (e.g. a tree where each child " "has a parent reference and each parent has a list of children) the reference " @@ -2536,7 +2531,7 @@ msgstr "" "miettes avec la fonction :func:`gc.collect`, mais il existe certains cas où " "les objets ne seront jamais nettoyés." -#: faq/programming.rst:1686 +#: faq/programming.rst:1685 msgid "" "Despite the cycle collector, it's still a good idea to define an explicit " "``close()`` method on objects to be called whenever you're done with them. " @@ -2553,7 +2548,7 @@ msgstr "" "`__del__` devrait appeler la méthode ``close()`` et ``close()`` doit pouvoir " "être appelée plusieurs fois sur le même objet." -#: faq/programming.rst:1693 +#: faq/programming.rst:1692 msgid "" "Another way to avoid cyclical references is to use the :mod:`weakref` " "module, which allows you to point to objects without incrementing their " @@ -2566,7 +2561,7 @@ msgstr "" "d'arbres devraient utiliser des références faibles entre pères et fils (si " "nécessaire !)." -#: faq/programming.rst:1706 +#: faq/programming.rst:1705 msgid "" "Finally, if your :meth:`__del__` method raises an exception, a warning " "message is printed to :data:`sys.stderr`." @@ -2574,11 +2569,11 @@ msgstr "" "Enfin, si la méthode :meth:`__del__` lève une exception, un message " "d'avertissement s'affiche dans :data:`sys.stderr`." -#: faq/programming.rst:1711 +#: faq/programming.rst:1710 msgid "How do I get a list of all instances of a given class?" msgstr "Comment obtenir toutes les instances d'une classe ?" -#: faq/programming.rst:1713 +#: faq/programming.rst:1712 msgid "" "Python does not keep track of all instances of a class (or of a built-in " "type). You can program the class's constructor to keep track of all " @@ -2589,13 +2584,13 @@ msgstr "" "constructeur de la classe de façon à tenir un tel registre, en maintenant " "une liste de références faibles vers chaque instance." -#: faq/programming.rst:1719 +#: faq/programming.rst:1718 msgid "Why does the result of ``id()`` appear to be not unique?" msgstr "" "Pourquoi le résultat de ``id()`` peut-il être le même pour deux objets " "différents ?" -#: faq/programming.rst:1721 +#: faq/programming.rst:1720 msgid "" "The :func:`id` builtin returns an integer that is guaranteed to be unique " "during the lifetime of the object. Since in CPython, this is the object's " @@ -2609,7 +2604,7 @@ msgstr "" "à une adresse mémoire identique à celle d'un objet venant d'être supprimé. " "Comme l'illustre le code suivant :" -#: faq/programming.rst:1732 +#: faq/programming.rst:1731 msgid "" "The two ids belong to different integer objects that are created before, and " "deleted immediately after execution of the ``id()`` call. To be sure that " @@ -2621,17 +2616,17 @@ msgstr "" "objets dont on veut examiner les identifiants sont toujours en vie, créons " "une nouvelle référence à l'objet :" -#: faq/programming.rst:1745 +#: faq/programming.rst:1744 msgid "When can I rely on identity tests with the *is* operator?" msgstr "" -#: faq/programming.rst:1747 +#: faq/programming.rst:1746 msgid "" "The ``is`` operator tests for object identity. The test ``a is b`` is " "equivalent to ``id(a) == id(b)``." msgstr "" -#: faq/programming.rst:1750 +#: faq/programming.rst:1749 msgid "" "The most important property of an identity test is that an object is always " "identical to itself, ``a is a`` always returns ``True``. Identity tests are " @@ -2639,34 +2634,34 @@ msgid "" "tests are guaranteed to return a boolean ``True`` or ``False``." msgstr "" -#: faq/programming.rst:1755 +#: faq/programming.rst:1754 msgid "" "However, identity tests can *only* be substituted for equality tests when " "object identity is assured. Generally, there are three circumstances where " "identity is guaranteed:" msgstr "" -#: faq/programming.rst:1759 +#: faq/programming.rst:1758 msgid "" "1) Assignments create new names but do not change object identity. After " "the assignment ``new = old``, it is guaranteed that ``new is old``." msgstr "" -#: faq/programming.rst:1762 +#: faq/programming.rst:1761 msgid "" "2) Putting an object in a container that stores object references does not " "change object identity. After the list assignment ``s[0] = x``, it is " "guaranteed that ``s[0] is x``." msgstr "" -#: faq/programming.rst:1766 +#: faq/programming.rst:1765 msgid "" "3) If an object is a singleton, it means that only one instance of that " "object can exist. After the assignments ``a = None`` and ``b = None``, it " "is guaranteed that ``a is b`` because ``None`` is a singleton." msgstr "" -#: faq/programming.rst:1770 +#: faq/programming.rst:1769 msgid "" "In most other circumstances, identity tests are inadvisable and equality " "tests are preferred. In particular, identity tests should not be used to " @@ -2674,17 +2669,17 @@ msgid "" "guaranteed to be singletons::" msgstr "" -#: faq/programming.rst:1787 +#: faq/programming.rst:1786 msgid "Likewise, new instances of mutable containers are never identical::" msgstr "" -#: faq/programming.rst:1794 +#: faq/programming.rst:1793 msgid "" "In the standard library code, you will see several common patterns for " "correctly using identity tests:" msgstr "" -#: faq/programming.rst:1797 +#: faq/programming.rst:1796 msgid "" "1) As recommended by :pep:`8`, an identity test is the preferred way to " "check for ``None``. This reads like plain English in code and avoids " @@ -2692,7 +2687,7 @@ msgid "" "false." msgstr "" -#: faq/programming.rst:1801 +#: faq/programming.rst:1800 msgid "" "2) Detecting optional arguments can be tricky when ``None`` is a valid input " "value. In those situations, you can create an singleton sentinel object " @@ -2700,28 +2695,111 @@ msgid "" "implement a method that behaves like :meth:`dict.pop`::" msgstr "" -#: faq/programming.rst:1817 +#: faq/programming.rst:1816 msgid "" "3) Container implementations sometimes need to augment equality tests with " "identity tests. This prevents the code from being confused by objects such " "as ``float('NaN')`` that are not equal to themselves." msgstr "" -#: faq/programming.rst:1821 +#: faq/programming.rst:1820 msgid "" "For example, here is the implementation of :meth:`collections.abc.Sequence." "__contains__`::" msgstr "" -#: faq/programming.rst:1832 +#: faq/programming.rst:1831 +msgid "" +"How can a subclass control what data is stored in an immutable instance?" +msgstr "" + +#: faq/programming.rst:1833 +msgid "" +"When subclassing an immutable type, override the :meth:`__new__` method " +"instead of the :meth:`__init__` method. The latter only runs *after* an " +"instance is created, which is too late to alter data in an immutable " +"instance." +msgstr "" + +#: faq/programming.rst:1838 +msgid "" +"All of these immutable classes have a different signature than their parent " +"class:" +msgstr "" + +#: faq/programming.rst:1864 +msgid "The classes can be used like this:" +msgstr "" + +#: faq/programming.rst:1879 +#, fuzzy +msgid "How do I cache method calls?" +msgstr "Comment créer une liste à plusieurs dimensions ?" + +#: faq/programming.rst:1881 +msgid "" +"The two principal tools for caching methods are :func:`functools." +"cached_property` and :func:`functools.lru_cache`. The former stores results " +"at the instance level and the latter at the class level." +msgstr "" + +#: faq/programming.rst:1886 +msgid "" +"The *cached_property* approach only works with methods that do not take any " +"arguments. It does not create a reference to the instance. The cached " +"method result will be kept only as long as the instance is alive." +msgstr "" + +#: faq/programming.rst:1890 +msgid "" +"The advantage is that when an instance is not longer used, the cached method " +"result will be released right away. The disadvantage is that if instances " +"accumulate, so too will the accumulated method results. They can grow " +"without bound." +msgstr "" + +#: faq/programming.rst:1895 +msgid "" +"The *lru_cache* approach works with methods that have hashable arguments. " +"It creates a reference to the instance unless special efforts are made to " +"pass in weak references." +msgstr "" + +#: faq/programming.rst:1899 +msgid "" +"The advantage of the least recently used algorithm is that the cache is " +"bounded by the specified *maxsize*. The disadvantage is that instances are " +"kept alive until they age out of the cache or until the cache is cleared." +msgstr "" + +#: faq/programming.rst:1904 +#, fuzzy +msgid "This example shows the various techniques::" +msgstr "Il y a plusieurs façons de faire." + +#: faq/programming.rst:1928 +msgid "" +"The above example assumes that the *station_id* never changes. If the " +"relevant instance attributes are mutable, the *cached_property* approach " +"can't be made to work because it cannot detect changes to the attributes." +msgstr "" + +#: faq/programming.rst:1933 +msgid "" +"The *lru_cache* approach can be made to work, but the class needs to define " +"the *__eq__* and *__hash__* methods so the cache can detect relevant " +"attribute updates::" +msgstr "" + +#: faq/programming.rst:1959 msgid "Modules" msgstr "Modules" -#: faq/programming.rst:1835 +#: faq/programming.rst:1962 msgid "How do I create a .pyc file?" msgstr "Comment créer des fichiers ``.pyc`` ?" -#: faq/programming.rst:1837 +#: faq/programming.rst:1964 msgid "" "When a module is imported for the first time (or when the source file has " "changed since the current compiled file was created) a ``.pyc`` file " @@ -2739,7 +2817,7 @@ msgstr "" "centrale qui dépend du binaire ``python`` qui l'a créé (voir la :pep:`3147` " "pour de plus amples précisions)." -#: faq/programming.rst:1845 +#: faq/programming.rst:1972 msgid "" "One reason that a ``.pyc`` file may not be created is a permissions problem " "with the directory containing the source file, meaning that the " @@ -2754,7 +2832,7 @@ msgstr "" "utilisateur, mais que le code est exécuté en tant qu'un autre utilisateur, " "par exemple pour tester un serveur Web." -#: faq/programming.rst:1850 +#: faq/programming.rst:1977 msgid "" "Unless the :envvar:`PYTHONDONTWRITEBYTECODE` environment variable is set, " "creation of a .pyc file is automatic if you're importing a module and Python " @@ -2768,7 +2846,7 @@ msgstr "" "sous-répertoire, à moins que la variable d'environnement :envvar:" "`PYTHONDONTWRITEBYTECODE` soit définie." -#: faq/programming.rst:1855 +#: faq/programming.rst:1982 msgid "" "Running Python on a top level script is not considered an import and no ``." "pyc`` will be created. For example, if you have a top-level module ``foo." @@ -2784,7 +2862,7 @@ msgstr "" "console), un fichier ``.pyc`` est créé pour ``xyz`` mais pas pour ``foo`` " "car ``foo.py`` n'est pas importé." -#: faq/programming.rst:1862 +#: faq/programming.rst:1989 msgid "" "If you need to create a ``.pyc`` file for ``foo`` -- that is, to create a ``." "pyc`` file for a module that is not imported -- you can, using the :mod:" @@ -2794,7 +2872,7 @@ msgstr "" "``.pyc`` pour un module qui n'est pas importé — il existe les modules :mod:" "`py_compile` et :mod:`compileall`." -#: faq/programming.rst:1866 +#: faq/programming.rst:1993 msgid "" "The :mod:`py_compile` module can manually compile any module. One way is to " "use the ``compile()`` function in that module interactively::" @@ -2803,7 +2881,7 @@ msgstr "" "manuellement. Il est ainsi possible d'appeler la fonction ``compile()`` de " "manière interactive ::" -#: faq/programming.rst:1872 +#: faq/programming.rst:1999 msgid "" "This will write the ``.pyc`` to a ``__pycache__`` subdirectory in the same " "location as ``foo.py`` (or you can override that with the optional parameter " @@ -2813,7 +2891,7 @@ msgstr "" "de ``foo.py`` (le paramètre optionnel ``cfile`` permet de changer ce " "comportement)." -#: faq/programming.rst:1876 +#: faq/programming.rst:2003 msgid "" "You can also automatically compile all files in a directory or directories " "using the :mod:`compileall` module. You can do it from the shell prompt by " @@ -2825,11 +2903,11 @@ msgstr "" "en exécutant ``compileall.py`` avec le chemin du dossier contenant les " "fichiers Python à compiler ::" -#: faq/programming.rst:1885 +#: faq/programming.rst:2012 msgid "How do I find the current module name?" msgstr "Comment obtenir le nom du module actuel ?" -#: faq/programming.rst:1887 +#: faq/programming.rst:2014 msgid "" "A module can find out its own module name by looking at the predefined " "global variable ``__name__``. If this has the value ``'__main__'``, the " @@ -2844,62 +2922,74 @@ msgstr "" "interface en ligne de commande ou un test automatique. Ils n'exécutent cette " "portion du code qu'après avoir vérifié la valeur de ``__name__`` ::" -#: faq/programming.rst:1902 +#: faq/programming.rst:2029 msgid "How can I have modules that mutually import each other?" msgstr "Comment avoir des modules qui s'importent mutuellement ?" -#: faq/programming.rst:1904 +#: faq/programming.rst:2031 msgid "Suppose you have the following modules:" msgstr "Considérons les modules suivants :" -#: faq/programming.rst:1906 -msgid "foo.py::" +#: faq/programming.rst:2033 +#, fuzzy +msgid ":file:`foo.py`::" msgstr "*foo.py* ::" -#: faq/programming.rst:1911 -msgid "bar.py::" +#: faq/programming.rst:2038 +#, fuzzy +msgid ":file:`bar.py`::" msgstr "*bar.py* ::" -#: faq/programming.rst:1916 +#: faq/programming.rst:2043 msgid "The problem is that the interpreter will perform the following steps:" msgstr "Le problème réside dans les étapes que l'interpréteur va réaliser :" -#: faq/programming.rst:1918 -msgid "main imports foo" +#: faq/programming.rst:2045 +#, fuzzy +msgid "main imports ``foo``" msgstr "*main* importe *foo*" -#: faq/programming.rst:1919 -msgid "Empty globals for foo are created" +#: faq/programming.rst:2046 +#, fuzzy +msgid "Empty globals for ``foo`` are created" msgstr "Les variables globales (vides) de *foo* sont créées" -#: faq/programming.rst:1920 -msgid "foo is compiled and starts executing" +#: faq/programming.rst:2047 +#, fuzzy +msgid "``foo`` is compiled and starts executing" msgstr "*foo* est compilé et commence à s'exécuter" -#: faq/programming.rst:1921 -msgid "foo imports bar" +#: faq/programming.rst:2048 +#, fuzzy +msgid "``foo`` imports ``bar``" msgstr "*foo* importe *bar*" -#: faq/programming.rst:1922 -msgid "Empty globals for bar are created" +#: faq/programming.rst:2049 +#, fuzzy +msgid "Empty globals for ``bar`` are created" msgstr "Les variables globales (vides) de *bar* sont créées" -#: faq/programming.rst:1923 -msgid "bar is compiled and starts executing" +#: faq/programming.rst:2050 +#, fuzzy +msgid "``bar`` is compiled and starts executing" msgstr "*bar* est compilé et commence à s'exécuter" -#: faq/programming.rst:1924 +#: faq/programming.rst:2051 +#, fuzzy msgid "" -"bar imports foo (which is a no-op since there already is a module named foo)" +"``bar`` imports ``foo`` (which is a no-op since there already is a module " +"named ``foo``)" msgstr "" "*bar* importe *foo* (en réalité, rien ne passe car il y a déjà un module " "appelé *foo*)" -#: faq/programming.rst:1925 -msgid "bar.foo_var = foo.foo_var" -msgstr "bar.foo_var = foo.foo_var" +#: faq/programming.rst:2052 +msgid "" +"The import mechanism tries to read ``foo_var`` from ``foo`` globals, to set " +"``bar.foo_var = foo.foo_var``" +msgstr "" -#: faq/programming.rst:1927 +#: faq/programming.rst:2054 msgid "" "The last step fails, because Python isn't done with interpreting ``foo`` yet " "and the global symbol dictionary for ``foo`` is still empty." @@ -2907,7 +2997,7 @@ msgstr "" "La dernière étape échoue car Python n'a pas fini d'interpréter ``foo`` et le " "dictionnaire global des symboles de ``foo`` est encore vide." -#: faq/programming.rst:1930 +#: faq/programming.rst:2057 msgid "" "The same thing happens when you use ``import foo``, and then try to access " "``foo.foo_var`` in global code." @@ -2915,11 +3005,11 @@ msgstr "" "Le même phénomène arrive quand on utilise ``import foo``, et qu'on essaye " "ensuite d'accéder à ``foo.foo_var`` dans le code global." -#: faq/programming.rst:1933 +#: faq/programming.rst:2060 msgid "There are (at least) three possible workarounds for this problem." msgstr "Il y a (au moins) trois façons de contourner ce problème." -#: faq/programming.rst:1935 +#: faq/programming.rst:2062 msgid "" "Guido van Rossum recommends avoiding all uses of ``from import ..." "``, and placing all code inside functions. Initializations of global " @@ -2933,14 +3023,14 @@ msgstr "" "des fonctions natives. Ceci implique que tout ce qui est fourni par un " "module soit référencé par ``.``." -#: faq/programming.rst:1940 +#: faq/programming.rst:2067 msgid "" "Jim Roskind suggests performing steps in the following order in each module:" msgstr "" "Jim Roskind recommande d'effectuer les étapes suivantes dans cet ordre dans " "chaque module :" -#: faq/programming.rst:1942 +#: faq/programming.rst:2069 msgid "" "exports (globals, functions, and classes that don't need imported base " "classes)" @@ -2948,18 +3038,18 @@ msgstr "" "les exportations (variables globales, fonctions et les classes qui ne " "nécessitent d'importer des classes de base)" -#: faq/programming.rst:1944 +#: faq/programming.rst:2071 msgid "``import`` statements" msgstr "les instructions ``import``" -#: faq/programming.rst:1945 +#: faq/programming.rst:2072 msgid "" "active code (including globals that are initialized from imported values)." msgstr "" "le code (avec les variables globales qui sont initialisées à partir de " "valeurs importées)." -#: faq/programming.rst:1947 +#: faq/programming.rst:2074 msgid "" "van Rossum doesn't like this approach much because the imports appear in a " "strange place, but it does work." @@ -2967,7 +3057,7 @@ msgstr "" "van Rossum désapprouve cette approche car les importations se trouvent à un " "endroit bizarre, mais cela fonctionne." -#: faq/programming.rst:1950 +#: faq/programming.rst:2077 msgid "" "Matthias Urlichs recommends restructuring your code so that the recursive " "import is not necessary in the first place." @@ -2975,16 +3065,16 @@ msgstr "" "Matthias Urlichs conseille de restructurer le code pour éviter les " "importations récursives." -#: faq/programming.rst:1953 +#: faq/programming.rst:2080 msgid "These solutions are not mutually exclusive." msgstr "Ces solutions peuvent être combinées." -#: faq/programming.rst:1957 +#: faq/programming.rst:2084 msgid "__import__('x.y.z') returns ; how do I get z?" msgstr "" "``__import__('x.y.z')`` renvoie ```` ; comment accéder à ``z`` ?" -#: faq/programming.rst:1959 +#: faq/programming.rst:2086 msgid "" "Consider using the convenience function :func:`~importlib.import_module` " "from :mod:`importlib` instead::" @@ -2992,7 +3082,7 @@ msgstr "" "Utilisez plutôt la fonction :func:`~importlib.import_module` de :mod:" "`importlib` ::" -#: faq/programming.rst:1966 +#: faq/programming.rst:2093 msgid "" "When I edit an imported module and reimport it, the changes don't show up. " "Why does this happen?" @@ -3000,7 +3090,7 @@ msgstr "" "Quand j'édite un module et que je le réimporte, je ne vois pas les " "changements. Pourquoi ?" -#: faq/programming.rst:1968 +#: faq/programming.rst:2095 msgid "" "For reasons of efficiency as well as consistency, Python only reads the " "module file on the first time a module is imported. If it didn't, in a " @@ -3015,7 +3105,7 @@ msgstr "" "ré-analysé un très grand nombre de fois. Pour forcer la relecture d'un " "module, il faut faire ::" -#: faq/programming.rst:1978 +#: faq/programming.rst:2105 msgid "" "Warning: this technique is not 100% fool-proof. In particular, modules " "containing statements like ::" @@ -3023,7 +3113,7 @@ msgstr "" "Attention, cette technique ne marche pas systématiquement. En particulier, " "les modules qui contiennent des instructions comme ::" -#: faq/programming.rst:1983 +#: faq/programming.rst:2110 msgid "" "will continue to work with the old version of the imported objects. If the " "module contains class definitions, existing class instances will *not* be " @@ -3035,7 +3125,7 @@ msgstr "" "celle-ci ne sont *pas* mises à jour avec la nouvelle définition de la " "classe. Ceci peut conduire au comportement paradoxal suivant ::" -#: faq/programming.rst:1996 +#: faq/programming.rst:2123 msgid "" "The nature of the problem is made clear if you print out the \"identity\" of " "the class objects::" @@ -3043,6 +3133,23 @@ msgstr "" "La nature du problème apparaît clairement en affichant « l'identité » des " "objets de la classe ::" +#~ msgid "" +#~ "For version prior to 3.0, you may be using classic classes: For a class " +#~ "definition such as ``class Derived(Base): ...`` you can call method " +#~ "``meth()`` defined in ``Base`` (or one of ``Base``'s base classes) as " +#~ "``Base.meth(self, arguments...)``. Here, ``Base.meth`` is an unbound " +#~ "method, so you need to provide the ``self`` argument." +#~ msgstr "" +#~ "Pour les versions antérieures à 3.0, vous pouvez utiliser des classes " +#~ "classiques : pour une définition de classe comme ``class " +#~ "Derived(Base): ...`` vous pouvez appeler la méthode ``meth()`` définie " +#~ "dans ``Base`` (ou l'une des classes de base de ``Base``) en faisant " +#~ "``Base.meth(self, arguments...)``. Ici, ``Base.meth`` est une méthode non " +#~ "liée, il faut donc fournir l'argument ``self``." + +#~ msgid "bar.foo_var = foo.foo_var" +#~ msgstr "bar.foo_var = foo.foo_var" + #, fuzzy #~ msgid "" #~ "Obviously, freeze requires a C compiler. There are several other " diff --git a/glossary.po b/glossary.po index 113df5175..52102c849 100644 --- a/glossary.po +++ b/glossary.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-12-17 16:05+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-07 13:36+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -137,18 +137,20 @@ msgstr "" "`__annotations__` des modules, classes et fonctions, respectivement." #: glossary.rst:58 +#, fuzzy msgid "" "See :term:`variable annotation`, :term:`function annotation`, :pep:`484` " -"and :pep:`526`, which describe this functionality." +"and :pep:`526`, which describe this functionality. Also see :ref:" +"`annotations-howto` for best practices on working with annotations." msgstr "" "Voir :term:`variable annotation`, :term:`function annotation`, :pep:`484` " "et :pep:`526`, qui décrivent cette fonctionnalité." -#: glossary.rst:60 +#: glossary.rst:62 msgid "argument" msgstr "argument" -#: glossary.rst:62 +#: glossary.rst:64 msgid "" "A value passed to a :term:`function` (or :term:`method`) when calling the " "function. There are two kinds of argument:" @@ -156,7 +158,7 @@ msgstr "" "Valeur, donnée à une :term:`fonction` ou à une :term:`méthode` lors de son " "appel. Il existe deux types d'arguments :" -#: glossary.rst:65 +#: glossary.rst:67 msgid "" ":dfn:`keyword argument`: an argument preceded by an identifier (e.g. " "``name=``) in a function call or passed as a value in a dictionary preceded " @@ -168,7 +170,7 @@ msgstr "" "fonction. Par exemple, ``3`` et ``5`` sont tous les deux des arguments " "nommés dans l'appel à :func:`complex` ici ::" -#: glossary.rst:73 +#: glossary.rst:75 msgid "" ":dfn:`positional argument`: an argument that is not a keyword argument. " "Positional arguments can appear at the beginning of an argument list and/or " @@ -180,7 +182,7 @@ msgstr "" "forme d'un :term:`itérable` précédé par ``*``. Par exemple, ``3`` et ``5`` " "sont tous les deux des arguments positionnels dans les appels suivants ::" -#: glossary.rst:82 +#: glossary.rst:84 msgid "" "Arguments are assigned to the named local variables in a function body. See " "the :ref:`calls` section for the rules governing this assignment. " @@ -193,7 +195,7 @@ msgstr "" "argument, et c'est la valeur résultante de l'expression qui sera affectée à " "la variable locale." -#: glossary.rst:87 +#: glossary.rst:89 msgid "" "See also the :term:`parameter` glossary entry, the FAQ question on :ref:`the " "difference between arguments and parameters `, " @@ -203,11 +205,11 @@ msgstr "" "entre argument et paramètre ` de la FAQ et la :" "pep:`362`." -#: glossary.rst:90 +#: glossary.rst:92 msgid "asynchronous context manager" msgstr "gestionnaire de contexte asynchrone" -#: glossary.rst:92 +#: glossary.rst:94 msgid "" "An object which controls the environment seen in an :keyword:`async with` " "statement by defining :meth:`__aenter__` and :meth:`__aexit__` methods. " @@ -217,11 +219,11 @@ msgstr "" "à l'intérieur d'une instruction :keyword:`with` en définissant les méthodes :" "meth:`__aenter__` et :meth:`__aexit__`. A été Introduit par la :pep:`492`." -#: glossary.rst:95 +#: glossary.rst:97 msgid "asynchronous generator" msgstr "générateur asynchrone" -#: glossary.rst:97 +#: glossary.rst:99 msgid "" "A function which returns an :term:`asynchronous generator iterator`. It " "looks like a coroutine function defined with :keyword:`async def` except " @@ -233,7 +235,7 @@ msgstr "" "contient une ou des expressions :keyword:`yield` produisant ainsi uns série " "de valeurs utilisables dans une boucle :keyword:`async for`." -#: glossary.rst:102 +#: glossary.rst:104 msgid "" "Usually refers to an asynchronous generator function, but may refer to an " "*asynchronous generator iterator* in some contexts. In cases where the " @@ -244,7 +246,7 @@ msgstr "" "contextes. Dans les cas où le sens voulu n'est pas clair, utiliser " "l'ensemble des termes lève l’ambiguïté." -#: glossary.rst:106 +#: glossary.rst:108 msgid "" "An asynchronous generator function may contain :keyword:`await` expressions " "as well as :keyword:`async for`, and :keyword:`async with` statements." @@ -252,15 +254,15 @@ msgstr "" "Un générateur asynchrone peut contenir des expressions :keyword:`await` " "ainsi que des instructions :keyword:`async for`, et :keyword:`async with`." -#: glossary.rst:109 +#: glossary.rst:111 msgid "asynchronous generator iterator" msgstr "itérateur de générateur asynchrone" -#: glossary.rst:111 +#: glossary.rst:113 msgid "An object created by a :term:`asynchronous generator` function." msgstr "Objet créé par une fonction :term:`asynchronous generator`." -#: glossary.rst:113 +#: glossary.rst:115 msgid "" "This is an :term:`asynchronous iterator` which when called using the :meth:" "`__anext__` method returns an awaitable object which will execute the body " @@ -271,7 +273,7 @@ msgstr "" "méthode :meth:`__anext__` renvoie un objet *awaitable* qui exécute le corps " "de la fonction du générateur asynchrone jusqu'au prochain :keyword:`yield`." -#: glossary.rst:118 +#: glossary.rst:120 msgid "" "Each :keyword:`yield` temporarily suspends processing, remembering the " "location execution state (including local variables and pending try-" @@ -286,11 +288,11 @@ msgstr "" "`__anext__`, elle repart de là où elle s'était arrêtée. Voir la :pep:`492` " "et la :pep:`525`." -#: glossary.rst:123 +#: glossary.rst:125 msgid "asynchronous iterable" msgstr "itérable asynchrone" -#: glossary.rst:125 +#: glossary.rst:127 msgid "" "An object, that can be used in an :keyword:`async for` statement. Must " "return an :term:`asynchronous iterator` from its :meth:`__aiter__` method. " @@ -300,11 +302,11 @@ msgstr "" "méthode :meth:`__aiter__` doit renvoyer un :term:`asynchronous iterator`. A " "été introduit par la :pep:`492`." -#: glossary.rst:128 +#: glossary.rst:130 msgid "asynchronous iterator" msgstr "itérateur asynchrone" -#: glossary.rst:130 +#: glossary.rst:132 msgid "" "An object that implements the :meth:`__aiter__` and :meth:`__anext__` " "methods. ``__anext__`` must return an :term:`awaitable` object. :keyword:" @@ -319,11 +321,11 @@ msgstr "" "`StopAsyncIteration` pour signifier la fin de l'itération. A été introduit " "par la :pep:`492`." -#: glossary.rst:135 +#: glossary.rst:137 msgid "attribute" msgstr "attribut" -#: glossary.rst:137 +#: glossary.rst:139 msgid "" "A value associated with an object which is referenced by name using dotted " "expressions. For example, if an object *o* has an attribute *a* it would be " @@ -333,11 +335,11 @@ msgstr "" "utilisant des points. Par exemple, si un objet *o* possède un attribut *a*, " "il sera référencé par *o.a*." -#: glossary.rst:140 +#: glossary.rst:142 msgid "awaitable" msgstr "awaitable" -#: glossary.rst:142 +#: glossary.rst:144 msgid "" "An object that can be used in an :keyword:`await` expression. Can be a :" "term:`coroutine` or an object with an :meth:`__await__` method. See also :" @@ -347,11 +349,11 @@ msgstr "" "être une :term:`coroutine` ou un objet avec une méthode :meth:`__await__`. " "Voir aussi la :pep:`492`." -#: glossary.rst:145 +#: glossary.rst:147 msgid "BDFL" msgstr "BDFL" -#: glossary.rst:147 +#: glossary.rst:149 msgid "" "Benevolent Dictator For Life, a.k.a. `Guido van Rossum `_, Python's creator." @@ -360,11 +362,11 @@ msgstr "" "Pseudonyme de `Guido van Rossum `_, le " "créateur de Python." -#: glossary.rst:149 +#: glossary.rst:151 msgid "binary file" msgstr "fichier binaire" -#: glossary.rst:151 +#: glossary.rst:153 msgid "" "A :term:`file object` able to read and write :term:`bytes-like objects " "`. Examples of binary files are files opened in binary " @@ -378,7 +380,7 @@ msgstr "" "`sys.stdin.buffer`, :data:`sys.stdout.buffer`, les instances de :class:`io." "BytesIO` ou de :class:`gzip.GzipFile`." -#: glossary.rst:158 +#: glossary.rst:160 msgid "" "See also :term:`text file` for a file object able to read and write :class:" "`str` objects." @@ -386,11 +388,32 @@ msgstr "" "Consultez :term:`fichier texte`, un objet fichier capable de lire et " "d'écrire des objets :class:`str`." -#: glossary.rst:160 +#: glossary.rst:162 +msgid "borrowed reference" +msgstr "" + +#: glossary.rst:164 +msgid "" +"In Python's C API, a borrowed reference is a reference to an object. It does " +"not modify the object reference count. It becomes a dangling pointer if the " +"object is destroyed. For example, a garbage collection can remove the last :" +"term:`strong reference` to the object and so destroy it." +msgstr "" + +#: glossary.rst:169 +msgid "" +"Calling :c:func:`Py_INCREF` on the :term:`borrowed reference` is recommended " +"to convert it to a :term:`strong reference` in-place, except when the object " +"cannot be destroyed before the last usage of the borrowed reference. The :c:" +"func:`Py_NewRef` function can be used to create a new :term:`strong " +"reference`." +msgstr "" + +#: glossary.rst:174 msgid "bytes-like object" msgstr "objet octet-compatible" -#: glossary.rst:162 +#: glossary.rst:176 msgid "" "An object that supports the :ref:`bufferobjects` and can export a C-:term:" "`contiguous` buffer. This includes all :class:`bytes`, :class:`bytearray`, " @@ -406,7 +429,7 @@ msgstr "" "utilisés pour diverses opérations sur des données binaires, comme la " "compression, la sauvegarde dans un fichier binaire ou l'envoi sur le réseau." -#: glossary.rst:169 +#: glossary.rst:183 msgid "" "Some operations need the binary data to be mutable. The documentation often " "refers to these as \"read-write bytes-like objects\". Example mutable " @@ -423,11 +446,11 @@ msgstr "" "\"read-only bytes-like objects\"*), par exemples :class:`bytes` ou :class:" "`memoryview` d'un objet :class:`byte`." -#: glossary.rst:177 +#: glossary.rst:191 msgid "bytecode" msgstr "code intermédiaire (*bytecode*)" -#: glossary.rst:179 +#: glossary.rst:193 msgid "" "Python source code is compiled into bytecode, the internal representation of " "a Python program in the CPython interpreter. The bytecode is also cached in " @@ -448,7 +471,7 @@ msgstr "" "intermédiaire n'a pas vocation à fonctionner sur différentes machines " "virtuelles Python ou à être stable entre différentes versions de Python." -#: glossary.rst:189 +#: glossary.rst:203 msgid "" "A list of bytecode instructions can be found in the documentation for :ref:" "`the dis module `." @@ -456,21 +479,21 @@ msgstr "" "La documentation du :ref:`module dis ` fournit une liste des " "instructions du code intermédiaire." -#: glossary.rst:191 +#: glossary.rst:205 msgid "callback" msgstr "fonction de rappel" -#: glossary.rst:193 +#: glossary.rst:207 msgid "" "A subroutine function which is passed as an argument to be executed at some " "point in the future." msgstr "Une sous-fonction passée en argument pour être exécutée plus tard." -#: glossary.rst:195 +#: glossary.rst:209 msgid "class" msgstr "classe" -#: glossary.rst:197 +#: glossary.rst:211 msgid "" "A template for creating user-defined objects. Class definitions normally " "contain method definitions which operate on instances of the class." @@ -479,11 +502,11 @@ msgstr "" "classe (*class*) contient normalement des définitions de méthodes qui " "agissent sur les instances de la classe." -#: glossary.rst:200 +#: glossary.rst:214 msgid "class variable" msgstr "variable de classe" -#: glossary.rst:202 +#: glossary.rst:216 msgid "" "A variable defined in a class and intended to be modified only at class " "level (i.e., not in an instance of the class)." @@ -491,11 +514,11 @@ msgstr "" "Une variable définie dans une classe et destinée à être modifiée uniquement " "au niveau de la classe (c'est-à-dire, pas dans une instance de la classe)." -#: glossary.rst:204 +#: glossary.rst:218 msgid "coercion" msgstr "coercition" -#: glossary.rst:206 +#: glossary.rst:220 msgid "" "The implicit conversion of an instance of one type to another during an " "operation which involves two arguments of the same type. For example, " @@ -517,11 +540,11 @@ msgstr "" "aussi de *cast*) explicitement par le développeur, par exemple : ``float(3) " "+ 4.5`` au lieu du simple ``3 + 4.5``." -#: glossary.rst:214 +#: glossary.rst:228 msgid "complex number" msgstr "nombre complexe" -#: glossary.rst:216 +#: glossary.rst:230 msgid "" "An extension of the familiar real number system in which all numbers are " "expressed as a sum of a real part and an imaginary part. Imaginary numbers " @@ -544,11 +567,11 @@ msgstr "" "Les nombres complexes sont un concept assez avancé en mathématiques. Si vous " "ne connaissez pas ce concept, vous pouvez tranquillement les ignorer." -#: glossary.rst:226 +#: glossary.rst:240 msgid "context manager" msgstr "gestionnaire de contexte" -#: glossary.rst:228 +#: glossary.rst:242 msgid "" "An object which controls the environment seen in a :keyword:`with` statement " "by defining :meth:`__enter__` and :meth:`__exit__` methods. See :pep:`343`." @@ -557,11 +580,11 @@ msgstr "" "définissant les méthodes :meth:`__enter__` et :meth:`__exit__`. Consultez " "la :pep:`343`." -#: glossary.rst:231 +#: glossary.rst:245 msgid "context variable" msgstr "variable de contexte" -#: glossary.rst:233 +#: glossary.rst:247 msgid "" "A variable which can have different values depending on its context. This is " "similar to Thread-Local Storage in which each execution thread may have a " @@ -579,11 +602,11 @@ msgstr "" "trace des variables dans les tâches asynchrones concourantes. Voir :mod:" "`contextvars`." -#: glossary.rst:240 +#: glossary.rst:254 msgid "contiguous" msgstr "contigu" -#: glossary.rst:244 +#: glossary.rst:258 msgid "" "A buffer is considered contiguous exactly if it is either *C-contiguous* or " "*Fortran contiguous*. Zero-dimensional buffers are C and Fortran " @@ -603,11 +626,11 @@ msgstr "" "leur adresse mémoire. À l'inverse, dans les tableaux Fortran-contigu, c’est " "le premier indice qui doit varier le plus rapidement." -#: glossary.rst:252 +#: glossary.rst:266 msgid "coroutine" msgstr "coroutine" -#: glossary.rst:254 +#: glossary.rst:268 msgid "" "Coroutines are a more generalized form of subroutines. Subroutines are " "entered at one point and exited at another point. Coroutines can be " @@ -620,11 +643,11 @@ msgstr "" "être implémentées en utilisant l'instruction :keyword:`async def`. Voir " "aussi la :pep:`492`." -#: glossary.rst:259 +#: glossary.rst:273 msgid "coroutine function" msgstr "fonction coroutine" -#: glossary.rst:261 +#: glossary.rst:275 msgid "" "A function which returns a :term:`coroutine` object. A coroutine function " "may be defined with the :keyword:`async def` statement, and may contain :" @@ -636,11 +659,11 @@ msgstr "" "mots clés :keyword:`await`, :keyword:`async for` ainsi que :keyword:`async " "with`. A été introduit par la :pep:`492`." -#: glossary.rst:266 +#: glossary.rst:280 msgid "CPython" msgstr "CPython" -#: glossary.rst:268 +#: glossary.rst:282 msgid "" "The canonical implementation of the Python programming language, as " "distributed on `python.org `_. The term \"CPython\" " @@ -652,11 +675,11 @@ msgstr "" "est utilisé dans certains contextes lorsqu'il est nécessaire de distinguer " "cette implémentation des autres comme *Jython* ou *IronPython*." -#: glossary.rst:272 +#: glossary.rst:286 msgid "decorator" msgstr "décorateur" -#: glossary.rst:274 +#: glossary.rst:288 msgid "" "A function returning another function, usually applied as a function " "transformation using the ``@wrapper`` syntax. Common examples for " @@ -667,7 +690,7 @@ msgstr "" "``@wrapper``, dont les exemples typiques sont : :func:`classmethod` et :func:" "`staticmethod`." -#: glossary.rst:278 +#: glossary.rst:292 msgid "" "The decorator syntax is merely syntactic sugar, the following two function " "definitions are semantically equivalent::" @@ -675,7 +698,7 @@ msgstr "" "La syntaxe des décorateurs est simplement du sucre syntaxique, les " "définitions des deux fonctions suivantes sont sémantiquement équivalentes ::" -#: glossary.rst:289 +#: glossary.rst:303 msgid "" "The same concept exists for classes, but is less commonly used there. See " "the documentation for :ref:`function definitions ` and :ref:`class " @@ -685,11 +708,11 @@ msgstr "" "Consultez la documentation :ref:`définitions de fonctions ` et :" "ref:`définitions de classes ` pour en savoir plus sur les décorateurs." -#: glossary.rst:292 +#: glossary.rst:306 msgid "descriptor" msgstr "descripteur" -#: glossary.rst:294 +#: glossary.rst:308 msgid "" "Any object which defines the methods :meth:`__get__`, :meth:`__set__`, or :" "meth:`__delete__`. When a class attribute is a descriptor, its special " @@ -713,7 +736,7 @@ msgstr "" "propriétés, méthodes de classes, méthodes statiques et les références aux " "classes parentes." -#: glossary.rst:304 +#: glossary.rst:318 msgid "" "For more information about descriptors' methods, see :ref:`descriptors` or " "the :ref:`Descriptor How To Guide `." @@ -722,11 +745,11 @@ msgstr "" "`descriptors` ou le :ref:`guide pour l'utilisation des descripteurs " "`." -#: glossary.rst:306 +#: glossary.rst:320 msgid "dictionary" msgstr "dictionnaire" -#: glossary.rst:308 +#: glossary.rst:322 msgid "" "An associative array, where arbitrary keys are mapped to values. The keys " "can be any object with :meth:`__hash__` and :meth:`__eq__` methods. Called a " @@ -736,11 +759,11 @@ msgstr "" "n'importe quel objet possédant les méthodes :meth:`__hash__` et :meth:" "`__eq__`. En Perl, les dictionnaires sont appelés \"*hash*\"." -#: glossary.rst:311 +#: glossary.rst:325 msgid "dictionary comprehension" msgstr "dictionnaire en compréhension (ou dictionnaire en intension)" -#: glossary.rst:313 +#: glossary.rst:327 msgid "" "A compact way to process all or part of the elements in an iterable and " "return a dictionary with the results. ``results = {n: n ** 2 for n in " @@ -752,11 +775,11 @@ msgstr "" "n in range(10)}`` génère un dictionnaire contenant des clés ``n`` liée à " "leur valeurs ``n ** 2``. Voir :ref:`comprehensions`." -#: glossary.rst:317 +#: glossary.rst:331 msgid "dictionary view" msgstr "vue de dictionnaire" -#: glossary.rst:319 +#: glossary.rst:333 msgid "" "The objects returned from :meth:`dict.keys`, :meth:`dict.values`, and :meth:" "`dict.items` are called dictionary views. They provide a dynamic view on the " @@ -770,11 +793,11 @@ msgstr "" "change. Pour transformer une vue en vraie liste, utilisez " "``list(dictview)``. Voir :ref:`dict-views`." -#: glossary.rst:325 +#: glossary.rst:339 msgid "docstring" msgstr "*docstring* (chaîne de documentation)" -#: glossary.rst:327 +#: glossary.rst:341 msgid "" "A string literal which appears as the first expression in a class, function " "or module. While ignored when the suite is executed, it is recognized by " @@ -788,11 +811,11 @@ msgstr "" "fonction ou du module. Comme cette chaîne est disponible par introspection, " "c'est l'endroit idéal pour documenter l'objet." -#: glossary.rst:333 +#: glossary.rst:347 msgid "duck-typing" msgstr "duck-typing" -#: glossary.rst:335 +#: glossary.rst:349 msgid "" "A programming style which does not look at an object's type to determine if " "it has the right interface; instead, the method or attribute is simply " @@ -816,11 +839,11 @@ msgstr "" "*duck-typing* utilise plutôt :func:`hasattr` ou la programmation :term:" "`EAFP`." -#: glossary.rst:344 +#: glossary.rst:358 msgid "EAFP" msgstr "EAFP" -#: glossary.rst:346 +#: glossary.rst:360 msgid "" "Easier to ask for forgiveness than permission. This common Python coding " "style assumes the existence of valid keys or attributes and catches " @@ -837,11 +860,11 @@ msgstr "" "keyword:`except`. Cette technique de programmation contraste avec le style :" "term:`LBYL` utilisé couramment dans les langages tels que C." -#: glossary.rst:352 +#: glossary.rst:366 msgid "expression" msgstr "expression" -#: glossary.rst:354 +#: glossary.rst:368 msgid "" "A piece of syntax which can be evaluated to some value. In other words, an " "expression is an accumulation of expression elements like literals, names, " @@ -861,11 +884,11 @@ msgstr "" "expressions, tel que :keyword:`while`. Les affectations sont également des " "instructions et non des expressions." -#: glossary.rst:361 +#: glossary.rst:375 msgid "extension module" msgstr "module d'extension" -#: glossary.rst:363 +#: glossary.rst:377 msgid "" "A module written in C or C++, using Python's C API to interact with the core " "and with user code." @@ -873,11 +896,11 @@ msgstr "" "Module écrit en C ou C++, utilisant l'API C de Python pour interagir avec " "Python et le code de l'utilisateur." -#: glossary.rst:365 +#: glossary.rst:379 msgid "f-string" msgstr "f-string" -#: glossary.rst:367 +#: glossary.rst:381 msgid "" "String literals prefixed with ``'f'`` or ``'F'`` are commonly called \"f-" "strings\" which is short for :ref:`formatted string literals `. " @@ -887,11 +910,11 @@ msgstr "" "raccourci pour :ref:`formatted string literals `. Voir la :pep:" "`498`." -#: glossary.rst:370 +#: glossary.rst:384 msgid "file object" msgstr "objet fichier" -#: glossary.rst:372 +#: glossary.rst:386 msgid "" "An object exposing a file-oriented API (with methods such as :meth:`read()` " "or :meth:`write()`) to an underlying resource. Depending on the way it was " @@ -908,7 +931,7 @@ msgstr "" "réseau…). Les objets fichiers sont aussi appelés :dfn:`file-like-objects` " "ou :dfn:`streams`." -#: glossary.rst:380 +#: glossary.rst:394 msgid "" "There are actually three categories of file objects: raw :term:`binary files " "`, buffered :term:`binary files ` and :term:`text " @@ -923,19 +946,56 @@ msgstr "" "Le moyen le plus simple et direct de créer un objet fichier est d'utiliser " "la fonction :func:`open`." -#: glossary.rst:385 +#: glossary.rst:399 msgid "file-like object" msgstr "objet fichier-compatible" -#: glossary.rst:387 +#: glossary.rst:401 msgid "A synonym for :term:`file object`." msgstr "Synonyme de :term:`objet fichier`." -#: glossary.rst:388 +#: glossary.rst:402 +msgid "filesystem encoding and error handler" +msgstr "" + +#: glossary.rst:404 +msgid "" +"Encoding and error handler used by Python to decode bytes from the operating " +"system and encode Unicode to the operating system." +msgstr "" + +#: glossary.rst:407 +msgid "" +"The filesystem encoding must guarantee to successfully decode all bytes " +"below 128. If the file system encoding fails to provide this guarantee, API " +"functions can raise :exc:`UnicodeError`." +msgstr "" + +#: glossary.rst:411 +msgid "" +"The :func:`sys.getfilesystemencoding` and :func:`sys." +"getfilesystemencodeerrors` functions can be used to get the filesystem " +"encoding and error handler." +msgstr "" + +#: glossary.rst:415 +msgid "" +"The :term:`filesystem encoding and error handler` are configured at Python " +"startup by the :c:func:`PyConfig_Read` function: see :c:member:`~PyConfig." +"filesystem_encoding` and :c:member:`~PyConfig.filesystem_errors` members of :" +"c:type:`PyConfig`." +msgstr "" + +#: glossary.rst:420 +#, fuzzy +msgid "See also the :term:`locale encoding`." +msgstr "Voir aussi :term:`module`." + +#: glossary.rst:421 msgid "finder" msgstr "chercheur" -#: glossary.rst:390 +#: glossary.rst:423 msgid "" "An object that tries to find the :term:`loader` for a module that is being " "imported." @@ -943,7 +1003,7 @@ msgstr "" "Objet qui essaie de trouver un :term:`chargeur ` pour le module en " "cours d'importation." -#: glossary.rst:393 +#: glossary.rst:426 msgid "" "Since Python 3.3, there are two types of finder: :term:`meta path finders " "` for use with :data:`sys.meta_path`, and :term:`path " @@ -954,15 +1014,15 @@ msgstr "" "`sys.meta_path` ; les :term:`chercheurs d'entrée dans path ` à utiliser avec :data:`sys.path_hooks`." -#: glossary.rst:397 +#: glossary.rst:430 msgid "See :pep:`302`, :pep:`420` and :pep:`451` for much more detail." msgstr "Voir les :pep:`302`, :pep:`420` et :pep:`451` pour plus de détails." -#: glossary.rst:398 +#: glossary.rst:431 msgid "floor division" msgstr "division entière" -#: glossary.rst:400 +#: glossary.rst:433 msgid "" "Mathematical division that rounds down to nearest integer. The floor " "division operator is ``//``. For example, the expression ``11 // 4`` " @@ -976,11 +1036,11 @@ msgstr "" "4`` vaut ``-3`` car l'arrondi se fait à l'entier inférieur. Voir la :pep:" "`328`." -#: glossary.rst:405 +#: glossary.rst:438 msgid "function" msgstr "fonction" -#: glossary.rst:407 +#: glossary.rst:440 msgid "" "A series of statements which returns some value to a caller. It can also be " "passed zero or more :term:`arguments ` which may be used in the " @@ -992,15 +1052,15 @@ msgstr "" "corps de la fonction. Voir aussi :term:`paramètre`, :term:`méthode` et :ref:" "`function`." -#: glossary.rst:411 +#: glossary.rst:444 msgid "function annotation" msgstr "annotation de fonction" -#: glossary.rst:413 +#: glossary.rst:446 msgid "An :term:`annotation` of a function parameter or return value." msgstr ":term:`annotation` d'un paramètre de fonction ou valeur de retour." -#: glossary.rst:415 +#: glossary.rst:448 msgid "" "Function annotations are usually used for :term:`type hints `: " "for example, this function is expected to take two :class:`int` arguments " @@ -1011,48 +1071,42 @@ msgstr "" "prendre deux arguments :class:`int` et devrait également avoir une valeur de " "retour de type :class:`int` ::" -#: glossary.rst:423 +#: glossary.rst:456 msgid "Function annotation syntax is explained in section :ref:`function`." msgstr "" "L'annotation syntaxique de la fonction est expliquée dans la section :ref:" "`function`." -#: glossary.rst:425 +#: glossary.rst:458 +#, fuzzy msgid "" "See :term:`variable annotation` and :pep:`484`, which describe this " -"functionality." +"functionality. Also see :ref:`annotations-howto` for best practices on " +"working with annotations." msgstr "" "Voir :term:`variable annotation` et :pep:`484`, qui décrivent cette " "fonctionnalité." -#: glossary.rst:427 +#: glossary.rst:462 msgid "__future__" msgstr "__future__" -#: glossary.rst:429 +#: glossary.rst:464 msgid "" -"A pseudo-module which programmers can use to enable new language features " -"which are not compatible with the current interpreter." +"A :ref:`future statement `, ``from __future__ import ``, " +"directs the compiler to compile the current module using syntax or semantics " +"that will become standard in a future release of Python. The :mod:" +"`__future__` module documents the possible values of *feature*. By " +"importing this module and evaluating its variables, you can see when a new " +"feature was first added to the language and when it will (or did) become the " +"default::" msgstr "" -"Pseudo-module que les développeurs peuvent utiliser pour activer de " -"nouvelles fonctionnalités du langage qui ne sont pas compatibles avec " -"l'interpréteur utilisé." -#: glossary.rst:432 -msgid "" -"By importing the :mod:`__future__` module and evaluating its variables, you " -"can see when a new feature was first added to the language and when it " -"becomes the default::" -msgstr "" -"En important le module :mod:`__future__` et en affichant ses variables, vous " -"pouvez voir à quel moment une nouvelle fonctionnalité a été rajoutée dans le " -"langage et quand elle devient le comportement par défaut ::" - -#: glossary.rst:439 +#: glossary.rst:475 msgid "garbage collection" msgstr "ramasse-miettes" -#: glossary.rst:441 +#: glossary.rst:477 msgid "" "The process of freeing memory when it is not used anymore. Python performs " "garbage collection via reference counting and a cyclic garbage collector " @@ -1065,11 +1119,11 @@ msgstr "" "et casser les références circulaires. Le ramasse-miettes peut être contrôlé " "en utilisant le module :mod:`gc`." -#: glossary.rst:447 +#: glossary.rst:483 msgid "generator" msgstr "générateur" -#: glossary.rst:449 +#: glossary.rst:485 msgid "" "A function which returns a :term:`generator iterator`. It looks like a " "normal function except that it contains :keyword:`yield` expressions for " @@ -1081,7 +1135,7 @@ msgstr "" "expressions :keyword:`yield` produisant une série de valeurs utilisable dans " "une boucle *for* ou récupérées une à une via la fonction :func:`next`." -#: glossary.rst:454 +#: glossary.rst:490 msgid "" "Usually refers to a generator function, but may refer to a *generator " "iterator* in some contexts. In cases where the intended meaning isn't " @@ -1092,15 +1146,15 @@ msgstr "" "cas où le sens voulu n'est pas clair, utiliser les termes complets lève " "l’ambiguïté." -#: glossary.rst:457 +#: glossary.rst:493 msgid "generator iterator" msgstr "itérateur de générateur" -#: glossary.rst:459 +#: glossary.rst:495 msgid "An object created by a :term:`generator` function." msgstr "Objet créé par une fonction :term:`générateur`." -#: glossary.rst:461 +#: glossary.rst:497 msgid "" "Each :keyword:`yield` temporarily suspends processing, remembering the " "location execution state (including local variables and pending try-" @@ -1113,11 +1167,11 @@ msgstr "" "il en était (contrairement à une fonction qui prendrait un nouveau départ à " "chaque invocation)." -#: glossary.rst:468 +#: glossary.rst:504 msgid "generator expression" msgstr "expression génératrice" -#: glossary.rst:470 +#: glossary.rst:506 msgid "" "An expression that returns an iterator. It looks like a normal expression " "followed by a :keyword:`!for` clause defining a loop variable, range, and an " @@ -1129,11 +1183,11 @@ msgstr "" "intervalle et une clause :keyword:`!if` optionnelle. Toute cette expression " "génère des valeurs pour la fonction qui l'entoure ::" -#: glossary.rst:477 +#: glossary.rst:513 msgid "generic function" msgstr "fonction générique" -#: glossary.rst:479 +#: glossary.rst:515 msgid "" "A function composed of multiple functions implementing the same operation " "for different types. Which implementation should be used during a call is " @@ -1143,7 +1197,7 @@ msgstr "" "pour différents types. L'implémentation à utiliser est déterminée lors de " "l'appel par l'algorithme de répartition." -#: glossary.rst:483 +#: glossary.rst:519 msgid "" "See also the :term:`single dispatch` glossary entry, the :func:`functools." "singledispatch` decorator, and :pep:`443`." @@ -1151,11 +1205,11 @@ msgstr "" "Voir aussi :term:`single dispatch`, le décorateur :func:`functools." "singledispatch` et la :pep:`443`." -#: glossary.rst:485 +#: glossary.rst:521 msgid "generic type" msgstr "type générique" -#: glossary.rst:487 +#: glossary.rst:523 msgid "" "A :term:`type` that can be parameterized; typically a container like :class:" "`list`. Used for :term:`type hints ` and :term:`annotations " @@ -1165,7 +1219,7 @@ msgstr "" "une :class:`list`. Utilisé pour les :term:`indications de type ` " "et les :term:`annotations `." -#: glossary.rst:491 +#: glossary.rst:527 msgid "" "See :pep:`483` for more details, and :mod:`typing` or :ref:`generic alias " "type ` for its uses." @@ -1173,19 +1227,19 @@ msgstr "" "Voir la :pep:`483` pour plus de détails, et :mod:`typing` ou :ref:`alias " "générique de type ` pour ses utilisations." -#: glossary.rst:493 +#: glossary.rst:529 msgid "GIL" msgstr "GIL" -#: glossary.rst:495 +#: glossary.rst:531 msgid "See :term:`global interpreter lock`." msgstr "Voir :term:`global interpreter lock`." -#: glossary.rst:496 +#: glossary.rst:532 msgid "global interpreter lock" msgstr "verrou global de l'interpréteur" -#: glossary.rst:498 +#: glossary.rst:534 msgid "" "The mechanism used by the :term:`CPython` interpreter to assure that only " "one thread executes Python :term:`bytecode` at a time. This simplifies the " @@ -1205,7 +1259,7 @@ msgstr "" "au détriment malheureusement de beaucoup du parallélisme possible sur les " "machines ayant plusieurs processeurs." -#: glossary.rst:507 +#: glossary.rst:543 msgid "" "However, some extension modules, either standard or third-party, are " "designed so as to release the GIL when doing computationally-intensive tasks " @@ -1217,7 +1271,7 @@ msgstr "" "compression ou le hachage. De la même manière, le GIL est toujours libéré " "lors des entrées / sorties." -#: glossary.rst:512 +#: glossary.rst:548 msgid "" "Past efforts to create a \"free-threaded\" interpreter (one which locks " "shared data at a much finer granularity) have not been successful because " @@ -1231,11 +1285,11 @@ msgstr "" "corriger ce problème de performance induit mènerait à une implémentation " "beaucoup plus compliquée et donc plus coûteuse à maintenir." -#: glossary.rst:518 +#: glossary.rst:554 msgid "hash-based pyc" msgstr "*pyc* utilisant le hachage" -#: glossary.rst:520 +#: glossary.rst:556 msgid "" "A bytecode cache file that uses the hash rather than the last-modified time " "of the corresponding source file to determine its validity. See :ref:`pyc-" @@ -1246,11 +1300,11 @@ msgstr "" "source correspondant pour déterminer sa validité. Voir :ref:`pyc-" "invalidation`." -#: glossary.rst:523 +#: glossary.rst:559 msgid "hashable" msgstr "hachable" -#: glossary.rst:525 +#: glossary.rst:561 msgid "" "An object is *hashable* if it has a hash value which never changes during " "its lifetime (it needs a :meth:`__hash__` method), and can be compared to " @@ -1263,7 +1317,7 @@ msgstr "" "hachables dont la comparaison par ``__eq__`` est vraie doivent avoir la même " "empreinte." -#: glossary.rst:530 +#: glossary.rst:566 msgid "" "Hashability makes an object usable as a dictionary key and a set member, " "because these data structures use the hash value internally." @@ -1272,7 +1326,7 @@ msgstr "" "en tant que membre d'un ensemble (type *set*), car ces structures de données " "utilisent ce *hash*." -#: glossary.rst:533 +#: glossary.rst:569 msgid "" "Most of Python's immutable built-in objects are hashable; mutable containers " "(such as lists or dictionaries) are not; immutable containers (such as " @@ -1289,11 +1343,11 @@ msgstr "" "considérées différentes (sauf avec elles-mêmes) et leur valeur de hachage " "est calculée à partir de leur :func:`id`." -#: glossary.rst:540 +#: glossary.rst:576 msgid "IDLE" msgstr "IDLE" -#: glossary.rst:542 +#: glossary.rst:578 msgid "" "An Integrated Development Environment for Python. IDLE is a basic editor " "and interpreter environment which ships with the standard distribution of " @@ -1302,11 +1356,11 @@ msgstr "" "Environnement de développement intégré pour Python. IDLE est un éditeur " "basique et un interpréteur livré avec la distribution standard de Python." -#: glossary.rst:545 +#: glossary.rst:581 msgid "immutable" msgstr "immuable" -#: glossary.rst:547 +#: glossary.rst:583 msgid "" "An object with a fixed value. Immutable objects include numbers, strings " "and tuples. Such an object cannot be altered. A new object has to be " @@ -1320,11 +1374,11 @@ msgstr "" "quand une valeur de *hash* constante est requise, typiquement en clé de " "dictionnaire." -#: glossary.rst:552 +#: glossary.rst:588 msgid "import path" msgstr "chemin des importations" -#: glossary.rst:554 +#: glossary.rst:590 msgid "" "A list of locations (or :term:`path entries `) that are searched " "by the :term:`path based finder` for modules to import. During import, this " @@ -1337,21 +1391,21 @@ msgstr "" "pour les sous-paquets, elle peut aussi venir de l'attribut ``__path__`` du " "paquet parent." -#: glossary.rst:559 +#: glossary.rst:595 msgid "importing" msgstr "importing" -#: glossary.rst:561 +#: glossary.rst:597 msgid "" "The process by which Python code in one module is made available to Python " "code in another module." msgstr "Processus rendant le code Python d'un module disponible dans un autre." -#: glossary.rst:563 +#: glossary.rst:599 msgid "importer" msgstr "importateur" -#: glossary.rst:565 +#: glossary.rst:601 msgid "" "An object that both finds and loads a module; both a :term:`finder` and :" "term:`loader` object." @@ -1359,11 +1413,11 @@ msgstr "" "Objet qui trouve et charge un module, en même temps un :term:`chercheur " "` et un :term:`chargeur `." -#: glossary.rst:567 +#: glossary.rst:603 msgid "interactive" msgstr "interactif" -#: glossary.rst:569 +#: glossary.rst:605 msgid "" "Python has an interactive interpreter which means you can enter statements " "and expressions at the interpreter prompt, immediately execute them and see " @@ -1378,11 +1432,11 @@ msgstr "" "de votre ordinateur). C'est un moyen puissant pour tester de nouvelles idées " "ou étudier de nouveaux modules (souvenez-vous de ``help(x)``)." -#: glossary.rst:575 +#: glossary.rst:611 msgid "interpreted" msgstr "interprété" -#: glossary.rst:577 +#: glossary.rst:613 msgid "" "Python is an interpreted language, as opposed to a compiled one, though the " "distinction can be blurry because of the presence of the bytecode compiler. " @@ -1399,11 +1453,11 @@ msgstr "" "développement / débogage plus court que les langages compilés. Cependant, " "ils s'exécutent généralement plus lentement. Voir aussi :term:`interactif`." -#: glossary.rst:584 +#: glossary.rst:620 msgid "interpreter shutdown" msgstr "arrêt de l'interpréteur" -#: glossary.rst:586 +#: glossary.rst:622 msgid "" "When asked to shut down, the Python interpreter enters a special phase where " "it gradually releases all allocated resources, such as modules and various " @@ -1424,7 +1478,7 @@ msgstr "" "fonctionner, (typiquement les modules des bibliothèques ou le mécanisme de " "*warning*)." -#: glossary.rst:595 +#: glossary.rst:631 msgid "" "The main reason for interpreter shutdown is that the ``__main__`` module or " "the script being run has finished executing." @@ -1432,11 +1486,11 @@ msgstr "" "La principale raison d'arrêt de l'interpréteur est que le module " "``__main__`` ou le script en cours d'exécution a terminé de s'exécuter." -#: glossary.rst:597 +#: glossary.rst:633 msgid "iterable" msgstr "itérable" -#: glossary.rst:599 +#: glossary.rst:635 msgid "" "An object capable of returning its members one at a time. Examples of " "iterables include all sequence types (such as :class:`list`, :class:`str`, " @@ -1451,7 +1505,7 @@ msgstr "" "tout objet d'une classe ayant une méthode :meth:`__iter__` ou :meth:" "`__getitem__` qui implémente la sémantique d'une :term:`Sequence `." -#: glossary.rst:606 +#: glossary.rst:642 msgid "" "Iterables can be used in a :keyword:`for` loop and in many other places " "where a sequence is needed (:func:`zip`, :func:`map`, ...). When an " @@ -1474,11 +1528,11 @@ msgstr "" "temporaire anonyme pour garder l'itérateur durant la boucle. Voir aussi :" "term:`itérateur`, :term:`séquence` et :term:`générateur`." -#: glossary.rst:616 +#: glossary.rst:652 msgid "iterator" msgstr "itérateur" -#: glossary.rst:618 +#: glossary.rst:654 msgid "" "An object representing a stream of data. Repeated calls to the iterator's :" "meth:`~iterator.__next__` method (or passing it to the built-in function :" @@ -1511,15 +1565,15 @@ msgstr "" "itérateur donnerait simplement le même objet itérateur épuisé utilisé dans " "son itération précédente, le faisant ressembler à un conteneur vide." -#: glossary.rst:633 +#: glossary.rst:669 msgid "More information can be found in :ref:`typeiter`." msgstr "Vous trouverez davantage d'informations dans :ref:`typeiter`." -#: glossary.rst:634 +#: glossary.rst:670 msgid "key function" msgstr "fonction clé" -#: glossary.rst:636 +#: glossary.rst:672 msgid "" "A key function or collation function is a callable that returns a value used " "for sorting or ordering. For example, :func:`locale.strxfrm` is used to " @@ -1530,7 +1584,7 @@ msgstr "" "utilisée pour générer une clé de classement prenant en compte les " "conventions de classement spécifiques aux paramètres régionaux courants." -#: glossary.rst:641 +#: glossary.rst:677 msgid "" "A number of tools in Python accept key functions to control how elements are " "ordered or grouped. They include :func:`min`, :func:`max`, :func:`sorted`, :" @@ -1543,7 +1597,7 @@ msgstr "" "merge`, :func:`heapq.nsmallest`, :func:`heapq.nlargest` et :func:`itertools." "groupby`." -#: glossary.rst:647 +#: glossary.rst:683 msgid "" "There are several ways to create a key function. For example. the :meth:" "`str.lower` method can serve as a key function for case insensitive sorts. " @@ -1564,19 +1618,19 @@ msgstr "" "Trier ` pour des exemples de création et d'utilisation de " "fonctions clefs." -#: glossary.rst:655 +#: glossary.rst:691 msgid "keyword argument" msgstr "argument nommé" -#: glossary.rst:934 +#: glossary.rst:982 msgid "See :term:`argument`." msgstr "Voir :term:`argument`." -#: glossary.rst:658 +#: glossary.rst:694 msgid "lambda" msgstr "lambda" -#: glossary.rst:660 +#: glossary.rst:696 msgid "" "An anonymous inline function consisting of a single :term:`expression` which " "is evaluated when the function is called. The syntax to create a lambda " @@ -1587,11 +1641,11 @@ msgstr "" "syntaxe pour créer des fonctions lambda est : ``lambda [parameters]: " "expression``" -#: glossary.rst:663 +#: glossary.rst:699 msgid "LBYL" msgstr "LBYL" -#: glossary.rst:665 +#: glossary.rst:701 msgid "" "Look before you leap. This coding style explicitly tests for pre-conditions " "before making calls or lookups. This style contrasts with the :term:`EAFP` " @@ -1603,7 +1657,7 @@ msgstr "" "appels ou des accès. Ce style contraste avec le style :term:`EAFP` et se " "caractérise par la présence de beaucoup d'instructions :keyword:`if`." -#: glossary.rst:670 +#: glossary.rst:706 msgid "" "In a multi-threaded environment, the LBYL approach can risk introducing a " "race condition between \"the looking\" and \"the leaping\". For example, " @@ -1619,11 +1673,38 @@ msgstr "" "l'accès. Ce problème peut être résolu avec des verrous (*locks*) ou avec " "l'approche EAFP." -#: glossary.rst:675 +#: glossary.rst:711 +#, fuzzy +msgid "locale encoding" +msgstr "encodage de texte" + +#: glossary.rst:713 +msgid "" +"On Unix, it is the encoding of the LC_CTYPE locale. It can be set with " +"``locale.setlocale(locale.LC_CTYPE, new_locale)``." +msgstr "" + +#: glossary.rst:716 +msgid "On Windows, it is the ANSI code page (ex: ``cp1252``)." +msgstr "" + +#: glossary.rst:718 +msgid "" +"``locale.getpreferredencoding(False)`` can be used to get the locale " +"encoding." +msgstr "" + +#: glossary.rst:721 +msgid "" +"Python uses the :term:`filesystem encoding and error handler` to convert " +"between Unicode filenames and bytes filenames." +msgstr "" + +#: glossary.rst:723 msgid "list" msgstr "list" -#: glossary.rst:677 +#: glossary.rst:725 msgid "" "A built-in Python :term:`sequence`. Despite its name it is more akin to an " "array in other languages than to a linked list since access to elements is " @@ -1633,11 +1714,11 @@ msgstr "" "``list`` ressemble plus à un tableau (*array* dans la plupart des langages) " "qu'à une liste chaînée puisque les accès se font en O(1)." -#: glossary.rst:680 +#: glossary.rst:728 msgid "list comprehension" msgstr "liste en compréhension (ou liste en intention)" -#: glossary.rst:682 +#: glossary.rst:730 msgid "" "A compact way to process all or part of the elements in a sequence and " "return a list with the results. ``result = ['{:#04x}'.format(x) for x in " @@ -1652,11 +1733,11 @@ msgstr "" "hexadécimal (``0x…``). La clause :keyword:`if` est optionnelle. Si elle est " "omise, tous les éléments du ``range(256)`` seront utilisés." -#: glossary.rst:688 +#: glossary.rst:736 msgid "loader" msgstr "chargeur" -#: glossary.rst:690 +#: glossary.rst:738 msgid "" "An object that loads a module. It must define a method named :meth:" "`load_module`. A loader is typically returned by a :term:`finder`. See :pep:" @@ -1668,19 +1749,19 @@ msgstr "" "`. Voir la :pep:`302` pour plus de détails et :class:`importlib.ABC." "Loader` pour sa :term:`classe de base abstraite`." -#: glossary.rst:694 +#: glossary.rst:742 msgid "magic method" msgstr "méthode magique" -#: glossary.rst:698 +#: glossary.rst:746 msgid "An informal synonym for :term:`special method`." msgstr "Un synonyme informel de :term:`special method`." -#: glossary.rst:699 +#: glossary.rst:747 msgid "mapping" msgstr "tableau de correspondances" -#: glossary.rst:701 +#: glossary.rst:749 msgid "" "A container object that supports arbitrary key lookups and implements the " "methods specified in the :class:`~collections.abc.Mapping` or :class:" @@ -1697,11 +1778,11 @@ msgstr "" "`dict`, :class:`collections.defaultdict`, :class:`collections.OrderedDict` " "et :class:`collections.Counter`." -#: glossary.rst:707 +#: glossary.rst:755 msgid "meta path finder" msgstr "chercheur dans les méta-chemins" -#: glossary.rst:709 +#: glossary.rst:757 msgid "" "A :term:`finder` returned by a search of :data:`sys.meta_path`. Meta path " "finders are related to, but different from :term:`path entry finders `." -#: glossary.rst:713 +#: glossary.rst:761 msgid "" "See :class:`importlib.abc.MetaPathFinder` for the methods that meta path " "finders implement." @@ -1719,11 +1800,11 @@ msgstr "" "Voir :class:`importlib.abc.MetaPathFinder` pour les méthodes que les " "chercheurs dans les méta-chemins doivent implémenter." -#: glossary.rst:715 +#: glossary.rst:763 msgid "metaclass" msgstr "métaclasse" -#: glossary.rst:717 +#: glossary.rst:765 msgid "" "The class of a class. Class definitions create a class name, a class " "dictionary, and a list of base classes. The metaclass is responsible for " @@ -1747,15 +1828,15 @@ msgstr "" "*multi-threads*, suivre la création d'objets, implémenter des singletons et " "bien d'autres tâches." -#: glossary.rst:727 +#: glossary.rst:775 msgid "More information can be found in :ref:`metaclasses`." msgstr "Plus d'informations sont disponibles dans : :ref:`metaclasses`." -#: glossary.rst:728 +#: glossary.rst:776 msgid "method" msgstr "méthode" -#: glossary.rst:730 +#: glossary.rst:778 msgid "" "A function which is defined inside a class body. If called as an attribute " "of an instance of that class, the method will get the instance object as its " @@ -1767,11 +1848,11 @@ msgstr "" "premier :term:`argument` (qui, par convention, est habituellement nommé " "``self``). Voir :term:`function` et :term:`nested scope`." -#: glossary.rst:734 +#: glossary.rst:782 msgid "method resolution order" msgstr "ordre de résolution des méthodes" -#: glossary.rst:736 +#: glossary.rst:784 msgid "" "Method Resolution Order is the order in which base classes are searched for " "a member during lookup. See `The Python 2.3 Method Resolution Order `_ pour plus de détails sur l'algorithme utilisé par " "l'interpréteur Python depuis la version 2.3." -#: glossary.rst:740 +#: glossary.rst:788 msgid "module" msgstr "module" -#: glossary.rst:742 +#: glossary.rst:790 msgid "" "An object that serves as an organizational unit of Python code. Modules " "have a namespace containing arbitrary Python objects. Modules are loaded " @@ -1799,15 +1880,15 @@ msgstr "" "modules ont un espace de nommage et peuvent contenir n'importe quels objets " "Python. Charger des modules est appelé :term:`importer `." -#: glossary.rst:746 +#: glossary.rst:794 msgid "See also :term:`package`." msgstr "Voir aussi :term:`paquet`." -#: glossary.rst:747 +#: glossary.rst:795 msgid "module spec" msgstr "spécificateur de module" -#: glossary.rst:749 +#: glossary.rst:797 msgid "" "A namespace containing the import-related information used to load a module. " "An instance of :class:`importlib.machinery.ModuleSpec`." @@ -1816,19 +1897,19 @@ msgstr "" "utilisées pour charger un module. C'est une instance de la classe :class:" "`importlib.machinery.ModuleSpec`." -#: glossary.rst:751 +#: glossary.rst:799 msgid "MRO" msgstr "MRO" -#: glossary.rst:753 +#: glossary.rst:801 msgid "See :term:`method resolution order`." msgstr "Voir :term:`ordre de résolution des méthodes`." -#: glossary.rst:754 +#: glossary.rst:802 msgid "mutable" msgstr "muable" -#: glossary.rst:756 +#: glossary.rst:804 msgid "" "Mutable objects can change their value but keep their :func:`id`. See also :" "term:`immutable`." @@ -1836,11 +1917,11 @@ msgstr "" "Un objet muable peut changer de valeur tout en gardant le même :func:`id`. " "Voir aussi :term:`immuable`." -#: glossary.rst:758 +#: glossary.rst:806 msgid "named tuple" msgstr "n-uplet nommé" -#: glossary.rst:760 +#: glossary.rst:808 msgid "" "The term \"named tuple\" applies to any type or class that inherits from " "tuple and whose indexable elements are also accessible using named " @@ -1851,7 +1932,7 @@ msgstr "" "accessibles en utilisant des attributs nommés. Les types et classes peuvent " "avoir aussi d'autres caractéristiques." -#: glossary.rst:764 +#: glossary.rst:812 msgid "" "Several built-in types are named tuples, including the values returned by :" "func:`time.localtime` and :func:`os.stat`. Another example is :data:`sys." @@ -1861,7 +1942,7 @@ msgstr "" "retournées par :func:`time.localtime` et :func:`os.stat`. Un autre exemple " "est :data:`sys.float_info` ::" -#: glossary.rst:775 +#: glossary.rst:823 msgid "" "Some named tuples are built-in types (such as the above examples). " "Alternatively, a named tuple can be created from a regular class definition " @@ -1878,11 +1959,11 @@ msgstr "" "méthodes supplémentaires qui ne seront pas trouvées dans celles écrites à la " "main ni dans les n-uplets nommés natifs." -#: glossary.rst:782 +#: glossary.rst:830 msgid "namespace" msgstr "espace de nommage" -#: glossary.rst:784 +#: glossary.rst:832 msgid "" "The place where a variable is stored. Namespaces are implemented as " "dictionaries. There are the local, global and built-in namespaces as well " @@ -1906,11 +1987,11 @@ msgstr "" "implémentées respectivement dans les modules :mod:`random` et :mod:" "`itertools`." -#: glossary.rst:794 +#: glossary.rst:842 msgid "namespace package" msgstr "paquet-espace de nommage" -#: glossary.rst:796 +#: glossary.rst:844 msgid "" "A :pep:`420` :term:`package` which serves only as a container for " "subpackages. Namespace packages may have no physical representation, and " @@ -1922,15 +2003,15 @@ msgstr "" "aucune représentation physique et, plus spécifiquement, ne sont pas comme " "un :term:`paquet classique` puisqu'ils n'ont pas de fichier ``__init__.py``." -#: glossary.rst:801 +#: glossary.rst:849 msgid "See also :term:`module`." msgstr "Voir aussi :term:`module`." -#: glossary.rst:802 +#: glossary.rst:850 msgid "nested scope" msgstr "portée imbriquée" -#: glossary.rst:804 +#: glossary.rst:852 msgid "" "The ability to refer to a variable in an enclosing definition. For " "instance, a function defined inside another function can refer to variables " @@ -1948,11 +2029,11 @@ msgstr "" "dans l'espace de nommage global, le mot clef :keyword:`nonlocal` permet " "d'écrire dans l'espace de nommage dans lequel est déclarée la variable." -#: glossary.rst:811 +#: glossary.rst:859 msgid "new-style class" msgstr "nouvelle classe" -#: glossary.rst:813 +#: glossary.rst:861 msgid "" "Old name for the flavor of classes now used for all class objects. In " "earlier Python versions, only new-style classes could use Python's newer, " @@ -1965,11 +2046,11 @@ msgstr "" "__slots__`, les descripteurs, les propriétés, :meth:`__getattribute__`, les " "méthodes de classe et les méthodes statiques." -#: glossary.rst:817 +#: glossary.rst:865 msgid "object" msgstr "objet" -#: glossary.rst:819 +#: glossary.rst:867 msgid "" "Any data with state (attributes or value) and defined behavior (methods). " "Also the ultimate base class of any :term:`new-style class`." @@ -1979,11 +2060,11 @@ msgstr "" "l'ancêtre commun à absolument toutes les :term:`nouvelles classes `." -#: glossary.rst:822 +#: glossary.rst:870 msgid "package" msgstr "paquet" -#: glossary.rst:824 +#: glossary.rst:872 msgid "" "A Python :term:`module` which can contain submodules or recursively, " "subpackages. Technically, a package is a Python module with an ``__path__`` " @@ -1993,15 +2074,15 @@ msgstr "" "paquets. Techniquement, un paquet est un module qui possède un attribut " "``__path__``." -#: glossary.rst:828 +#: glossary.rst:876 msgid "See also :term:`regular package` and :term:`namespace package`." msgstr "Voir aussi :term:`paquet classique` et :term:`namespace package`." -#: glossary.rst:829 +#: glossary.rst:877 msgid "parameter" msgstr "paramètre" -#: glossary.rst:831 +#: glossary.rst:879 msgid "" "A named entity in a :term:`function` (or method) definition that specifies " "an :term:`argument` (or in some cases, arguments) that the function can " @@ -2011,7 +2092,7 @@ msgstr "" "décrivant un :term:`argument` (ou dans certains cas des arguments) que la " "fonction accepte. Il existe cinq sortes de paramètres :" -#: glossary.rst:835 +#: glossary.rst:883 msgid "" ":dfn:`positional-or-keyword`: specifies an argument that can be passed " "either :term:`positionally ` or as a :term:`keyword argument " @@ -2023,7 +2104,7 @@ msgstr "" "C'est le type de paramètre par défaut. Par exemple, *foo* et *bar* dans " "l'exemple suivant ::" -#: glossary.rst:844 +#: glossary.rst:892 msgid "" ":dfn:`positional-only`: specifies an argument that can be supplied only by " "position. Positional-only parameters can be defined by including a ``/`` " @@ -2035,7 +2116,7 @@ msgstr "" "un caractère \"/\" dans la liste de paramètres de la définition de fonction " "après eux. Par exemple : *posonly1* et *posonly2* dans le code suivant ::" -#: glossary.rst:853 +#: glossary.rst:901 msgid "" ":dfn:`keyword-only`: specifies an argument that can be supplied only by " "keyword. Keyword-only parameters can be defined by including a single var-" @@ -2049,7 +2130,7 @@ msgstr "" "liste des paramètres avant eux. Par exemple, *kw_only1* et *kw_only2* dans " "le code suivant ::" -#: glossary.rst:861 +#: glossary.rst:909 msgid "" ":dfn:`var-positional`: specifies that an arbitrary sequence of positional " "arguments can be provided (in addition to any positional arguments already " @@ -2062,7 +2143,7 @@ msgstr "" "d'autres paramètres). Un tel paramètre peut être défini en préfixant son nom " "par une ``*``. Par exemple *args* ci-après ::" -#: glossary.rst:869 +#: glossary.rst:917 msgid "" ":dfn:`var-keyword`: specifies that arbitrarily many keyword arguments can be " "provided (in addition to any keyword arguments already accepted by other " @@ -2074,7 +2155,7 @@ msgstr "" "d'autres paramètres). Un tel paramètre est défini en préfixant le nom du " "paramètre par ``**``. Par exemple, *kwargs* ci-dessus." -#: glossary.rst:875 +#: glossary.rst:923 msgid "" "Parameters can specify both optional and required arguments, as well as " "default values for some optional arguments." @@ -2082,7 +2163,7 @@ msgstr "" "Les paramètres peuvent spécifier des arguments obligatoires ou optionnels, " "ainsi que des valeurs par défaut pour les arguments optionnels." -#: glossary.rst:878 +#: glossary.rst:926 msgid "" "See also the :term:`argument` glossary entry, the FAQ question on :ref:`the " "difference between arguments and parameters `, " @@ -2094,11 +2175,11 @@ msgstr "" "parameter>` dans la FAQ, la classe :class:`inspect.Parameter`, la section :" "ref:`function` et la :pep:`362`." -#: glossary.rst:882 +#: glossary.rst:930 msgid "path entry" msgstr "entrée de chemin" -#: glossary.rst:884 +#: glossary.rst:932 msgid "" "A single location on the :term:`import path` which the :term:`path based " "finder` consults to find modules for importing." @@ -2107,11 +2188,11 @@ msgstr "" "path* en anglais, d'où le *path*) que le :term:`chercheur basé sur les " "chemins ` consulte pour trouver des modules à importer." -#: glossary.rst:886 +#: glossary.rst:934 msgid "path entry finder" msgstr "chercheur de chemins" -#: glossary.rst:888 +#: glossary.rst:936 msgid "" "A :term:`finder` returned by a callable on :data:`sys.path_hooks` (i.e. a :" "term:`path entry hook`) which knows how to locate modules given a :term:" @@ -2122,7 +2203,7 @@ msgstr "" "path `) qui sait où trouver des modules lorsqu'on lui donne " "une :term:`entrée de path `." -#: glossary.rst:892 +#: glossary.rst:940 msgid "" "See :class:`importlib.abc.PathEntryFinder` for the methods that path entry " "finders implement." @@ -2130,11 +2211,11 @@ msgstr "" "Voir :class:`importlib.abc.PathEntryFinder` pour les méthodes qu'un " "chercheur d'entrée dans *path* doit implémenter." -#: glossary.rst:894 +#: glossary.rst:942 msgid "path entry hook" msgstr "point d'entrée pour la recherche dans *path*" -#: glossary.rst:896 +#: glossary.rst:944 msgid "" "A callable on the :data:`sys.path_hook` list which returns a :term:`path " "entry finder` if it knows how to find modules on a specific :term:`path " @@ -2144,11 +2225,11 @@ msgstr "" "d'entrée dans path ` s'il sait où trouver des modules " "pour une :term:`entrée dans path ` donnée." -#: glossary.rst:899 +#: glossary.rst:947 msgid "path based finder" msgstr "chercheur basé sur les chemins" -#: glossary.rst:901 +#: glossary.rst:949 msgid "" "One of the default :term:`meta path finders ` which " "searches an :term:`import path` for modules." @@ -2157,11 +2238,11 @@ msgstr "" "défaut qui cherche des modules dans un :term:`chemin des importations " "`." -#: glossary.rst:903 +#: glossary.rst:951 msgid "path-like object" msgstr "objet simili-chemin" -#: glossary.rst:905 +#: glossary.rst:953 msgid "" "An object representing a file system path. A path-like object is either a :" "class:`str` or :class:`bytes` object representing a path, or an object " @@ -2181,11 +2262,11 @@ msgstr "" "peuvent être utilisées, respectivement, pour garantir un résultat de type :" "class:`str` ou :class:`bytes` à la place. A été Introduit par la :pep:`519`." -#: glossary.rst:913 +#: glossary.rst:961 msgid "PEP" msgstr "PEP" -#: glossary.rst:915 +#: glossary.rst:963 msgid "" "Python Enhancement Proposal. A PEP is a design document providing " "information to the Python community, or describing a new feature for Python " @@ -2198,7 +2279,7 @@ msgstr "" "ou son environnement. Les PEP doivent fournir une spécification technique " "concise et une justification des fonctionnalités proposées." -#: glossary.rst:921 +#: glossary.rst:969 msgid "" "PEPs are intended to be the primary mechanisms for proposing major new " "features, for collecting community input on an issue, and for documenting " @@ -2213,15 +2294,15 @@ msgstr "" "l’établissement d’un consensus au sein de la communauté et de documenter les " "opinions contradictoires." -#: glossary.rst:927 +#: glossary.rst:975 msgid "See :pep:`1`." msgstr "Voir :pep:`1`." -#: glossary.rst:928 +#: glossary.rst:976 msgid "portion" msgstr "portion" -#: glossary.rst:930 +#: glossary.rst:978 msgid "" "A set of files in a single directory (possibly stored in a zip file) that " "contribute to a namespace package, as defined in :pep:`420`." @@ -2230,15 +2311,15 @@ msgstr "" "fichier zip) qui contribue à l'espace de nommage d'un paquet, tel que défini " "dans la :pep:`420`." -#: glossary.rst:932 +#: glossary.rst:980 msgid "positional argument" msgstr "argument positionnel" -#: glossary.rst:935 +#: glossary.rst:983 msgid "provisional API" msgstr "API provisoire" -#: glossary.rst:937 +#: glossary.rst:985 msgid "" "A provisional API is one which has been deliberately excluded from the " "standard library's backwards compatibility guarantees. While major changes " @@ -2257,7 +2338,7 @@ msgstr "" "surviendront que si de sérieux problèmes sont découverts et qu'ils n'avaient " "pas été identifiés avant l'ajout de l'API." -#: glossary.rst:946 +#: glossary.rst:994 msgid "" "Even for provisional APIs, backwards incompatible changes are seen as a " "\"solution of last resort\" - every attempt will still be made to find a " @@ -2268,7 +2349,7 @@ msgstr "" "possible sera fait pour tenter de résoudre les problèmes en conservant la " "rétrocompatibilité." -#: glossary.rst:950 +#: glossary.rst:998 msgid "" "This process allows the standard library to continue to evolve over time, " "without locking in problematic design errors for extended periods of time. " @@ -2278,19 +2359,19 @@ msgstr "" "le temps, sans se bloquer longtemps sur des erreurs d'architecture. Voir la :" "pep:`411` pour plus de détails." -#: glossary.rst:953 +#: glossary.rst:1001 msgid "provisional package" msgstr "paquet provisoire" -#: glossary.rst:955 +#: glossary.rst:1003 msgid "See :term:`provisional API`." msgstr "Voir :term:`provisional API`." -#: glossary.rst:956 +#: glossary.rst:1004 msgid "Python 3000" msgstr "Python 3000" -#: glossary.rst:958 +#: glossary.rst:1006 msgid "" "Nickname for the Python 3.x release line (coined long ago when the release " "of version 3 was something in the distant future.) This is also abbreviated " @@ -2299,11 +2380,11 @@ msgstr "" "Surnom donné à la série des Python 3.x (très vieux surnom donné à l'époque " "où Python 3 représentait un futur lointain). Aussi abrégé *Py3k*." -#: glossary.rst:961 +#: glossary.rst:1009 msgid "Pythonic" msgstr "*Pythonique*" -#: glossary.rst:963 +#: glossary.rst:1011 msgid "" "An idea or piece of code which closely follows the most common idioms of the " "Python language, rather than implementing code using concepts common to " @@ -2319,16 +2400,16 @@ msgstr "" "les gens qui ne sont pas habitués à Python utilisent parfois un compteur " "numérique à la place ::" -#: glossary.rst:973 +#: glossary.rst:1021 msgid "As opposed to the cleaner, Pythonic method::" msgstr "" "Plutôt qu'utiliser la méthode, plus propre et élégante, donc *Pythonique* ::" -#: glossary.rst:977 +#: glossary.rst:1025 msgid "qualified name" msgstr "nom qualifié" -#: glossary.rst:979 +#: glossary.rst:1027 msgid "" "A dotted name showing the \"path\" from a module's global scope to a class, " "function or method defined in that module, as defined in :pep:`3155`. For " @@ -2340,7 +2421,7 @@ msgstr "" "module, tel que défini dans la :pep:`3155`. Pour les fonctions et classes de " "premier niveau, le nom qualifié est le même que le nom de l'objet ::" -#: glossary.rst:996 +#: glossary.rst:1044 msgid "" "When used to refer to modules, the *fully qualified name* means the entire " "dotted path to the module, including any parent packages, e.g. ``email.mime." @@ -2351,11 +2432,11 @@ msgstr "" "par des points) vers le module, incluant tous les paquets parents. Par " "exemple : ``email.mime.text`` ::" -#: glossary.rst:1003 +#: glossary.rst:1051 msgid "reference count" msgstr "nombre de références" -#: glossary.rst:1005 +#: glossary.rst:1053 msgid "" "The number of references to an object. When the reference count of an " "object drops to zero, it is deallocated. Reference counting is generally " @@ -2371,11 +2452,11 @@ msgstr "" "func:`~sys.getrefcount` que les développeurs peuvent utiliser pour obtenir " "le nombre de références à un objet donné." -#: glossary.rst:1011 +#: glossary.rst:1059 msgid "regular package" msgstr "paquet classique" -#: glossary.rst:1013 +#: glossary.rst:1061 msgid "" "A traditional :term:`package`, such as a directory containing an ``__init__." "py`` file." @@ -2383,15 +2464,15 @@ msgstr "" ":term:`paquet` traditionnel, tel qu'un dossier contenant un fichier " "``__init__.py``." -#: glossary.rst:1016 +#: glossary.rst:1064 msgid "See also :term:`namespace package`." msgstr "Voir aussi :term:`paquet-espace de nommage `." -#: glossary.rst:1017 +#: glossary.rst:1065 msgid "__slots__" msgstr "__slots__" -#: glossary.rst:1019 +#: glossary.rst:1067 msgid "" "A declaration inside a class that saves memory by pre-declaring space for " "instance attributes and eliminating instance dictionaries. Though popular, " @@ -2406,11 +2487,11 @@ msgstr "" "nombre d'instances dans une application devient un sujet critique pour la " "mémoire." -#: glossary.rst:1024 +#: glossary.rst:1072 msgid "sequence" msgstr "séquence" -#: glossary.rst:1026 +#: glossary.rst:1074 msgid "" "An :term:`iterable` which supports efficient element access using integer " "indices via the :meth:`__getitem__` special method and defines a :meth:" @@ -2429,7 +2510,7 @@ msgstr "" "*mapping* plutôt qu'une séquence, car ses accès se font par une clé " "arbitraire :term:`immuable` plutôt qu'un nombre entier." -#: glossary.rst:1035 +#: glossary.rst:1083 msgid "" "The :class:`collections.abc.Sequence` abstract base class defines a much " "richer interface that goes beyond just :meth:`__getitem__` and :meth:" @@ -2443,11 +2524,11 @@ msgstr "" "et :meth:`__reversed__`. Les types qui implémentent cette interface étendue " "peuvent s'enregistrer explicitement en utilisant :func:`~abc.register`." -#: glossary.rst:1042 +#: glossary.rst:1090 msgid "set comprehension" msgstr "ensemble en compréhension (ou ensemble en intension)" -#: glossary.rst:1044 +#: glossary.rst:1092 msgid "" "A compact way to process all or part of the elements in an iterable and " "return a set with the results. ``results = {c for c in 'abracadabra' if c " @@ -2459,11 +2540,11 @@ msgstr "" "'abracadabra' if c not in 'abc'}`` génère l'ensemble contenant les lettres " "« r » et « d » ``{'r', 'd'}``. Voir :ref:`comprehensions`." -#: glossary.rst:1048 +#: glossary.rst:1096 msgid "single dispatch" msgstr "distribution simple" -#: glossary.rst:1050 +#: glossary.rst:1098 msgid "" "A form of :term:`generic function` dispatch where the implementation is " "chosen based on the type of a single argument." @@ -2472,11 +2553,11 @@ msgstr "" "générique>`, où l'implémentation est choisie en fonction du type d'un seul " "argument." -#: glossary.rst:1052 +#: glossary.rst:1100 msgid "slice" msgstr "tranche" -#: glossary.rst:1054 +#: glossary.rst:1102 msgid "" "An object usually containing a portion of a :term:`sequence`. A slice is " "created using the subscript notation, ``[]`` with colons between numbers " @@ -2489,11 +2570,11 @@ msgstr "" "``variable_name[1:3:5]``. Cette notation utilise des objets :class:`slice` " "en interne." -#: glossary.rst:1058 +#: glossary.rst:1106 msgid "special method" msgstr "méthode spéciale" -#: glossary.rst:1062 +#: glossary.rst:1110 msgid "" "A method that is called implicitly by Python to execute a certain operation " "on a type, such as addition. Such methods have names starting and ending " @@ -2505,11 +2586,11 @@ msgstr "" "ont des noms commençant et terminant par des doubles tirets bas. Les " "méthodes spéciales sont documentées dans :ref:`specialnames`." -#: glossary.rst:1066 +#: glossary.rst:1114 msgid "statement" msgstr "instruction" -#: glossary.rst:1068 +#: glossary.rst:1116 msgid "" "A statement is part of a suite (a \"block\" of code). A statement is either " "an :term:`expression` or one of several constructs with a keyword, such as :" @@ -2520,21 +2601,45 @@ msgstr "" "constructions basées sur un mot-clé, comme :keyword:`if`, :keyword:`while` " "ou :keyword:`for`." -#: glossary.rst:1071 +#: glossary.rst:1119 +msgid "strong reference" +msgstr "" + +#: glossary.rst:1121 +msgid "" +"In Python's C API, a strong reference is a reference to an object which " +"increments the object's reference count when it is created and decrements " +"the object's reference count when it is deleted." +msgstr "" + +#: glossary.rst:1125 +msgid "" +"The :c:func:`Py_NewRef` function can be used to create a strong reference to " +"an object. Usually, the :c:func:`Py_DECREF` function must be called on the " +"strong reference before exiting the scope of the strong reference, to avoid " +"leaking one reference." +msgstr "" + +#: glossary.rst:1130 +#, fuzzy +msgid "See also :term:`borrowed reference`." +msgstr "Voir aussi :term:`module`." + +#: glossary.rst:1131 msgid "text encoding" msgstr "encodage de texte" -#: glossary.rst:1073 +#: glossary.rst:1133 msgid "A codec which encodes Unicode strings to bytes." msgstr "" "Codec (codeur-décodeur) qui convertit des chaînes de caractères Unicode en " "octets (classe *bytes*)." -#: glossary.rst:1074 +#: glossary.rst:1134 msgid "text file" msgstr "fichier texte" -#: glossary.rst:1076 +#: glossary.rst:1136 msgid "" "A :term:`file object` able to read and write :class:`str` objects. Often, a " "text file actually accesses a byte-oriented datastream and handles the :term:" @@ -2549,7 +2654,7 @@ msgstr "" "ou ``'w'``), :data:`sys.stdin`, :data:`sys.stdout` et les instances de :" "class:`io.StringIO`." -#: glossary.rst:1083 +#: glossary.rst:1143 msgid "" "See also :term:`binary file` for a file object able to read and write :term:" "`bytes-like objects `." @@ -2557,11 +2662,11 @@ msgstr "" "Voir aussi :term:`binary file` pour un objet fichier capable de lire et " "d'écrire :term:`bytes-like objects `." -#: glossary.rst:1085 +#: glossary.rst:1145 msgid "triple-quoted string" msgstr "chaîne entre triple guillemets" -#: glossary.rst:1087 +#: glossary.rst:1147 msgid "" "A string which is bound by three instances of either a quotation mark (\") " "or an apostrophe ('). While they don't provide any functionality not " @@ -2580,11 +2685,11 @@ msgstr "" "\\``. Elle est ainsi particulièrement utile pour les chaînes de " "documentation (*docstrings*)." -#: glossary.rst:1094 +#: glossary.rst:1154 msgid "type" msgstr "type" -#: glossary.rst:1096 +#: glossary.rst:1156 msgid "" "The type of a Python object determines what kind of object it is; every " "object has a type. An object's type is accessible as its :attr:`~instance." @@ -2594,15 +2699,15 @@ msgstr "" "objets ont un type. Le type d'un objet peut être obtenu via son attribut :" "attr:`~instance.__class__` ou via ``type(obj)``." -#: glossary.rst:1100 +#: glossary.rst:1160 msgid "type alias" msgstr "alias de type" -#: glossary.rst:1102 +#: glossary.rst:1162 msgid "A synonym for a type, created by assigning the type to an identifier." msgstr "Synonyme d'un type, créé en affectant le type à un identifiant." -#: glossary.rst:1104 +#: glossary.rst:1164 msgid "" "Type aliases are useful for simplifying :term:`type hints `. For " "example::" @@ -2610,19 +2715,19 @@ msgstr "" "Les alias de types sont utiles pour simplifier les :term:`indications de " "types `. Par exemple ::" -#: glossary.rst:1111 +#: glossary.rst:1171 msgid "could be made more readable like this::" msgstr "pourrait être rendu plus lisible comme ceci ::" -#: glossary.rst:1132 +#: glossary.rst:1192 msgid "See :mod:`typing` and :pep:`484`, which describe this functionality." msgstr "Voir :mod:`typing` et :pep:`484`, qui décrivent cette fonctionnalité." -#: glossary.rst:1119 +#: glossary.rst:1179 msgid "type hint" msgstr "indication de type" -#: glossary.rst:1121 +#: glossary.rst:1181 msgid "" "An :term:`annotation` that specifies the expected type for a variable, a " "class attribute, or a function parameter or return value." @@ -2630,7 +2735,7 @@ msgstr "" "Le :term:`annotation` qui spécifie le type attendu pour une variable, un " "attribut de classe, un paramètre de fonction ou une valeur de retour." -#: glossary.rst:1124 +#: glossary.rst:1184 msgid "" "Type hints are optional and are not enforced by Python but they are useful " "to static type analysis tools, and aid IDEs with code completion and " @@ -2641,7 +2746,7 @@ msgstr "" "statique et aident les IDE à compléter et à réusiner (*code refactoring* en " "anglais) le code." -#: glossary.rst:1128 +#: glossary.rst:1188 msgid "" "Type hints of global variables, class attributes, and functions, but not " "local variables, can be accessed using :func:`typing.get_type_hints`." @@ -2650,11 +2755,11 @@ msgstr "" "fonctions, mais pas de variables locales, peuvent être consultés en " "utilisant :func:`typing.get_type_hints`." -#: glossary.rst:1133 +#: glossary.rst:1193 msgid "universal newlines" msgstr "retours à la ligne universels" -#: glossary.rst:1135 +#: glossary.rst:1195 msgid "" "A manner of interpreting text streams in which all of the following are " "recognized as ending a line: the Unix end-of-line convention ``'\\n'``, the " @@ -2668,22 +2773,22 @@ msgstr "" "``'\\r'``. Voir la :pep:`278` et la :pep:`3116`, ainsi que la fonction :func:" "`bytes.splitlines` pour d'autres usages." -#: glossary.rst:1140 +#: glossary.rst:1200 msgid "variable annotation" msgstr "annotation de variable" -#: glossary.rst:1142 +#: glossary.rst:1202 msgid "An :term:`annotation` of a variable or a class attribute." msgstr ":term:`annotation` d'une variable ou d'un attribut de classe." -#: glossary.rst:1144 +#: glossary.rst:1204 msgid "" "When annotating a variable or a class attribute, assignment is optional::" msgstr "" "Lorsque vous annotez une variable ou un attribut de classe, l'affectation " "est facultative ::" -#: glossary.rst:1149 +#: glossary.rst:1209 msgid "" "Variable annotations are usually used for :term:`type hints `: " "for example this variable is expected to take :class:`int` values::" @@ -2692,25 +2797,27 @@ msgstr "" "`indications de types ` : par exemple, cette variable devrait " "prendre des valeurs de type :class:`int` ::" -#: glossary.rst:1155 +#: glossary.rst:1215 msgid "Variable annotation syntax is explained in section :ref:`annassign`." msgstr "" "La syntaxe d'annotation de la variable est expliquée dans la section :ref:" "`annassign`." -#: glossary.rst:1157 +#: glossary.rst:1217 +#, fuzzy msgid "" "See :term:`function annotation`, :pep:`484` and :pep:`526`, which describe " -"this functionality." +"this functionality. Also see :ref:`annotations-howto` for best practices on " +"working with annotations." msgstr "" "Reportez-vous à :term:`function annotation`, à la :pep:`484` et à la :pep:" "`526` qui décrivent cette fonctionnalité." -#: glossary.rst:1159 +#: glossary.rst:1221 msgid "virtual environment" msgstr "environnement virtuel" -#: glossary.rst:1161 +#: glossary.rst:1223 msgid "" "A cooperatively isolated runtime environment that allows Python users and " "applications to install and upgrade Python distribution packages without " @@ -2722,15 +2829,15 @@ msgstr "" "des paquets sans interférer avec d'autres applications Python fonctionnant " "sur le même système." -#: glossary.rst:1166 +#: glossary.rst:1228 msgid "See also :mod:`venv`." msgstr "Voir aussi :mod:`venv`." -#: glossary.rst:1167 +#: glossary.rst:1229 msgid "virtual machine" msgstr "machine virtuelle" -#: glossary.rst:1169 +#: glossary.rst:1231 msgid "" "A computer defined entirely in software. Python's virtual machine executes " "the :term:`bytecode` emitted by the bytecode compiler." @@ -2739,11 +2846,11 @@ msgstr "" "(*virtual machine*) de Python exécute le :term:`bytecode` produit par le " "compilateur de *bytecode*." -#: glossary.rst:1171 +#: glossary.rst:1233 msgid "Zen of Python" msgstr "Le zen de Python" -#: glossary.rst:1173 +#: glossary.rst:1235 msgid "" "Listing of Python design principles and philosophies that are helpful in " "understanding and using the language. The listing can be found by typing " @@ -2752,3 +2859,20 @@ msgstr "" "Liste de principes et de préceptes utiles pour comprendre et utiliser le " "langage. Cette liste peut être obtenue en tapant \"``import this``\" dans " "une invite Python interactive." + +#~ msgid "" +#~ "A pseudo-module which programmers can use to enable new language features " +#~ "which are not compatible with the current interpreter." +#~ msgstr "" +#~ "Pseudo-module que les développeurs peuvent utiliser pour activer de " +#~ "nouvelles fonctionnalités du langage qui ne sont pas compatibles avec " +#~ "l'interpréteur utilisé." + +#~ msgid "" +#~ "By importing the :mod:`__future__` module and evaluating its variables, " +#~ "you can see when a new feature was first added to the language and when " +#~ "it becomes the default::" +#~ msgstr "" +#~ "En important le module :mod:`__future__` et en affichant ses variables, " +#~ "vous pouvez voir à quel moment une nouvelle fonctionnalité a été rajoutée " +#~ "dans le langage et quand elle devient le comportement par défaut ::" diff --git a/howto/annotations.po b/howto/annotations.po new file mode 100644 index 000000000..26f3e4ed4 --- /dev/null +++ b/howto/annotations.po @@ -0,0 +1,314 @@ +# Copyright (C) 2001-2018, Python Software Foundation +# For licence information, see README file. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: FRENCH \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: howto/annotations.rst:5 +msgid "Annotations Best Practices" +msgstr "" + +#: howto/annotations.rst:0 +msgid "author" +msgstr "" + +#: howto/annotations.rst:7 +msgid "Larry Hastings" +msgstr "" + +#: howto/annotations.rst:None +msgid "Abstract" +msgstr "" + +#: howto/annotations.rst:11 +msgid "" +"This document is designed to encapsulate the best practices for working with " +"annotations dicts. If you write Python code that examines " +"``__annotations__`` on Python objects, we encourage you to follow the " +"guidelines described below." +msgstr "" + +#: howto/annotations.rst:16 +msgid "" +"The document is organized into four sections: best practices for accessing " +"the annotations of an object in Python versions 3.10 and newer, best " +"practices for accessing the annotations of an object in Python versions 3.9 " +"and older, other best practices for ``__annotations__`` that apply to any " +"Python version, and quirks of ``__annotations__``." +msgstr "" + +#: howto/annotations.rst:26 +msgid "" +"Note that this document is specifically about working with " +"``__annotations__``, not uses *for* annotations. If you're looking for " +"information on how to use \"type hints\" in your code, please see the :mod:" +"`typing` module." +msgstr "" + +#: howto/annotations.rst:33 +msgid "Accessing The Annotations Dict Of An Object In Python 3.10 And Newer" +msgstr "" + +#: howto/annotations.rst:35 +msgid "" +"Python 3.10 adds a new function to the standard library: :func:`inspect." +"get_annotations`. In Python versions 3.10 and newer, calling this function " +"is the best practice for accessing the annotations dict of any object that " +"supports annotations. This function can also \"un-stringize\" stringized " +"annotations for you." +msgstr "" + +#: howto/annotations.rst:42 +msgid "" +"If for some reason :func:`inspect.get_annotations` isn't viable for your use " +"case, you may access the ``__annotations__`` data member manually. Best " +"practice for this changed in Python 3.10 as well: as of Python 3.10, ``o." +"__annotations__`` is guaranteed to *always* work on Python functions, " +"classes, and modules. If you're certain the object you're examining is one " +"of these three *specific* objects, you may simply use ``o.__annotations__`` " +"to get at the object's annotations dict." +msgstr "" + +#: howto/annotations.rst:52 +msgid "" +"However, other types of callables--for example, callables created by :func:" +"`functools.partial`--may not have an ``__annotations__`` attribute defined. " +"When accessing the ``__annotations__`` of a possibly unknown object, best " +"practice in Python versions 3.10 and newer is to call :func:`getattr` with " +"three arguments, for example ``getattr(o, '__annotations__', None)``." +msgstr "" + +#: howto/annotations.rst:62 +msgid "Accessing The Annotations Dict Of An Object In Python 3.9 And Older" +msgstr "" + +#: howto/annotations.rst:64 +msgid "" +"In Python 3.9 and older, accessing the annotations dict of an object is much " +"more complicated than in newer versions. The problem is a design flaw in " +"these older versions of Python, specifically to do with class annotations." +msgstr "" + +#: howto/annotations.rst:69 +msgid "" +"Best practice for accessing the annotations dict of other objects--" +"functions, other callables, and modules--is the same as best practice for " +"3.10, assuming you aren't calling :func:`inspect.get_annotations`: you " +"should use three-argument :func:`getattr` to access the object's " +"``__annotations__`` attribute." +msgstr "" + +#: howto/annotations.rst:76 +msgid "" +"Unfortunately, this isn't best practice for classes. The problem is that, " +"since ``__annotations__`` is optional on classes, and because classes can " +"inherit attributes from their base classes, accessing the " +"``__annotations__`` attribute of a class may inadvertently return the " +"annotations dict of a *base class.* As an example::" +msgstr "" + +#: howto/annotations.rst:92 +msgid "This will print the annotations dict from ``Base``, not ``Derived``." +msgstr "" + +#: howto/annotations.rst:95 +msgid "" +"Your code will have to have a separate code path if the object you're " +"examining is a class (``isinstance(o, type)``). In that case, best practice " +"relies on an implementation detail of Python 3.9 and before: if a class has " +"annotations defined, they are stored in the class's ``__dict__`` " +"dictionary. Since the class may or may not have annotations defined, best " +"practice is to call the ``get`` method on the class dict." +msgstr "" + +#: howto/annotations.rst:103 +msgid "" +"To put it all together, here is some sample code that safely accesses the " +"``__annotations__`` attribute on an arbitrary object in Python 3.9 and " +"before::" +msgstr "" + +#: howto/annotations.rst:112 +msgid "" +"After running this code, ``ann`` should be either a dictionary or ``None``. " +"You're encouraged to double-check the type of ``ann`` using :func:" +"`isinstance` before further examination." +msgstr "" + +#: howto/annotations.rst:117 +msgid "" +"Note that some exotic or malformed type objects may not have a ``__dict__`` " +"attribute, so for extra safety you may also wish to use :func:`getattr` to " +"access ``__dict__``." +msgstr "" + +#: howto/annotations.rst:123 +msgid "Manually Un-Stringizing Stringized Annotations" +msgstr "" + +#: howto/annotations.rst:125 +msgid "" +"In situations where some annotations may be \"stringized\", and you wish to " +"evaluate those strings to produce the Python values they represent, it " +"really is best to call :func:`inspect.get_annotations` to do this work for " +"you." +msgstr "" + +#: howto/annotations.rst:131 +msgid "" +"If you're using Python 3.9 or older, or if for some reason you can't use :" +"func:`inspect.get_annotations`, you'll need to duplicate its logic. You're " +"encouraged to examine the implementation of :func:`inspect.get_annotations` " +"in the current Python version and follow a similar approach." +msgstr "" + +#: howto/annotations.rst:137 +msgid "" +"In a nutshell, if you wish to evaluate a stringized annotation on an " +"arbitrary object ``o``:" +msgstr "" + +#: howto/annotations.rst:140 +msgid "" +"If ``o`` is a module, use ``o.__dict__`` as the ``globals`` when calling :" +"func:`eval`." +msgstr "" + +#: howto/annotations.rst:142 +msgid "" +"If ``o`` is a class, use ``sys.modules[o.__module__].__dict__`` as the " +"``globals``, and ``dict(vars(o))`` as the ``locals``, when calling :func:" +"`eval`." +msgstr "" + +#: howto/annotations.rst:145 +msgid "" +"If ``o`` is a wrapped callable using :func:`functools.update_wrapper`, :func:" +"`functools.wraps`, or :func:`functools.partial`, iteratively unwrap it by " +"accessing either ``o.__wrapped__`` or ``o.func`` as appropriate, until you " +"have found the root unwrapped function." +msgstr "" + +#: howto/annotations.rst:149 +msgid "" +"If ``o`` is a callable (but not a class), use ``o.__globals__`` as the " +"globals when calling :func:`eval`." +msgstr "" + +#: howto/annotations.rst:152 +msgid "" +"However, not all string values used as annotations can be successfully " +"turned into Python values by :func:`eval`. String values could theoretically " +"contain any valid string, and in practice there are valid use cases for type " +"hints that require annotating with string values that specifically *can't* " +"be evaluated. For example:" +msgstr "" + +#: howto/annotations.rst:159 +msgid "" +":pep:`604` union types using `|`, before support for this was added to " +"Python 3.10." +msgstr "" + +#: howto/annotations.rst:161 +msgid "" +"Definitions that aren't needed at runtime, only imported when :const:`typing." +"TYPE_CHECKING` is true." +msgstr "" + +#: howto/annotations.rst:164 +msgid "" +"If :func:`eval` attempts to evaluate such values, it will fail and raise an " +"exception. So, when designing a library API that works with annotations, " +"it's recommended to only attempt to evaluate string values when explicitly " +"requested to by the caller." +msgstr "" + +#: howto/annotations.rst:172 +msgid "Best Practices For ``__annotations__`` In Any Python Version" +msgstr "" + +#: howto/annotations.rst:174 +msgid "" +"You should avoid assigning to the ``__annotations__`` member of objects " +"directly. Let Python manage setting ``__annotations__``." +msgstr "" + +#: howto/annotations.rst:177 +msgid "" +"If you do assign directly to the ``__annotations__`` member of an object, " +"you should always set it to a ``dict`` object." +msgstr "" + +#: howto/annotations.rst:180 +msgid "" +"If you directly access the ``__annotations__`` member of an object, you " +"should ensure that it's a dictionary before attempting to examine its " +"contents." +msgstr "" + +#: howto/annotations.rst:184 +msgid "You should avoid modifying ``__annotations__`` dicts." +msgstr "" + +#: howto/annotations.rst:186 +msgid "" +"You should avoid deleting the ``__annotations__`` attribute of an object." +msgstr "" + +#: howto/annotations.rst:191 +msgid "``__annotations__`` Quirks" +msgstr "" + +#: howto/annotations.rst:193 +msgid "" +"In all versions of Python 3, function objects lazy-create an annotations " +"dict if no annotations are defined on that object. You can delete the " +"``__annotations__`` attribute using ``del fn.__annotations__``, but if you " +"then access ``fn.__annotations__`` the object will create a new empty dict " +"that it will store and return as its annotations. Deleting the annotations " +"on a function before it has lazily created its annotations dict will throw " +"an ``AttributeError``; using ``del fn.__annotations__`` twice in a row is " +"guaranteed to always throw an ``AttributeError``." +msgstr "" + +#: howto/annotations.rst:203 +msgid "" +"Everything in the above paragraph also applies to class and module objects " +"in Python 3.10 and newer." +msgstr "" + +#: howto/annotations.rst:206 +msgid "" +"In all versions of Python 3, you can set ``__annotations__`` on a function " +"object to ``None``. However, subsequently accessing the annotations on that " +"object using ``fn.__annotations__`` will lazy-create an empty dictionary as " +"per the first paragraph of this section. This is *not* true of modules and " +"classes, in any Python version; those objects permit setting " +"``__annotations__`` to any Python value, and will retain whatever value is " +"set." +msgstr "" + +#: howto/annotations.rst:214 +msgid "" +"If Python stringizes your annotations for you (using ``from __future__ " +"import annotations``), and you specify a string as an annotation, the string " +"will itself be quoted. In effect the annotation is quoted *twice.* For " +"example::" +msgstr "" + +#: howto/annotations.rst:225 +msgid "" +"This prints ``{'a': \"'str'\"}``. This shouldn't really be considered a " +"\"quirk\"; it's mentioned here simply because it might be surprising." +msgstr "" diff --git a/howto/argparse.po b/howto/argparse.po index 07f93a536..c2f3cdcdc 100644 --- a/howto/argparse.po +++ b/howto/argparse.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-07-25 16:44+0200\n" "Last-Translator: Antonin Décimo \n" "Language-Team: FRENCH \n" @@ -417,14 +417,15 @@ msgstr "" "de la commande ``python --help``) ::" #: howto/argparse.rst:470 +#, fuzzy msgid "" "We have introduced another action, \"count\", to count the number of " -"occurrences of a specific optional arguments:" +"occurrences of specific options." msgstr "" "Nous avons introduit une autre action, ``\"count\"``, pour compter le nombre " "d’occurrences d'une argument optionnel en particulier :" -#: howto/argparse.rst:498 +#: howto/argparse.rst:499 msgid "" "Yes, it's now more of a flag (similar to ``action=\"store_true\"``) in the " "previous version of our script. That should explain the complaint." @@ -433,11 +434,11 @@ msgstr "" "\"store_true\"``) de la version précédente de notre script. Cela devrait " "expliquer le message d'erreur." -#: howto/argparse.rst:501 +#: howto/argparse.rst:502 msgid "It also behaves similar to \"store_true\" action." msgstr "Cela se comporte de la même manière que l'action ``\"store_true\"``." -#: howto/argparse.rst:503 +#: howto/argparse.rst:504 msgid "" "Now here's a demonstration of what the \"count\" action gives. You've " "probably seen this sort of usage before." @@ -445,7 +446,7 @@ msgstr "" "Maintenant voici une démonstration de ce que l'action ``\"count\"`` fait. " "Vous avez sûrement vu ce genre d'utilisation auparavant." -#: howto/argparse.rst:506 +#: howto/argparse.rst:507 msgid "" "And if you don't specify the ``-v`` flag, that flag is considered to have " "``None`` value." @@ -453,7 +454,7 @@ msgstr "" "Et si vous ne spécifiez pas l'option ``-v``, cette option prendra la valeur " "``None``." -#: howto/argparse.rst:509 +#: howto/argparse.rst:510 msgid "" "As should be expected, specifying the long form of the flag, we should get " "the same output." @@ -461,7 +462,7 @@ msgstr "" "Comme on s'y attend, en spécifiant l'option dans sa forme longue, on devrait " "obtenir la même sortie." -#: howto/argparse.rst:512 +#: howto/argparse.rst:513 msgid "" "Sadly, our help output isn't very informative on the new ability our script " "has acquired, but that can always be fixed by improving the documentation " @@ -471,19 +472,19 @@ msgstr "" "nouvelles possibilités de notre programme, mais cela peut toujours être " "corrigé en améliorant sa documentation (en utilisant l'argument ``help``)." -#: howto/argparse.rst:516 +#: howto/argparse.rst:517 msgid "That last output exposes a bug in our program." msgstr "La dernière sortie du programme montre que celui-ci contient un bogue." -#: howto/argparse.rst:519 +#: howto/argparse.rst:520 msgid "Let's fix::" msgstr "Corrigeons ::" -#: howto/argparse.rst:538 +#: howto/argparse.rst:539 msgid "And this is what it gives:" msgstr "Et c'est ce que ça donne :" -#: howto/argparse.rst:553 +#: howto/argparse.rst:554 msgid "" "First output went well, and fixes the bug we had before. That is, we want " "any value >= 2 to be as verbose as possible." @@ -492,15 +493,15 @@ msgstr "" "avons eu est corrigé. Cela dit, nous voulons que n'importe quelle valeur >= " "2 rende le programme aussi verbeux que possible." -#: howto/argparse.rst:556 +#: howto/argparse.rst:557 msgid "Third output not so good." msgstr "La troisième sortie de programme n'est pas si bien que ça." -#: howto/argparse.rst:558 +#: howto/argparse.rst:559 msgid "Let's fix that bug::" msgstr "Corrigeons ce bogue ::" -#: howto/argparse.rst:575 +#: howto/argparse.rst:576 msgid "" "We've just introduced yet another keyword, ``default``. We've set it to " "``0`` in order to make it comparable to the other int values. Remember that " @@ -514,11 +515,11 @@ msgstr "" "il sera définit à ``None``, et ne pourra pas être comparé à une valeur de " "type entier (une erreur :exc:`TypeError` serait alors levée)." -#: howto/argparse.rst:582 +#: howto/argparse.rst:583 msgid "And:" msgstr "Et :" -#: howto/argparse.rst:589 +#: howto/argparse.rst:590 msgid "" "You can go quite far just with what we've learned so far, and we have only " "scratched the surface. The :mod:`argparse` module is very powerful, and " @@ -529,11 +530,11 @@ msgstr "" "est très puissant, et nous allons l'explorer un peu plus avant la fin de ce " "tutoriel." -#: howto/argparse.rst:596 +#: howto/argparse.rst:597 msgid "Getting a little more advanced" msgstr "Aller un peu plus loin" -#: howto/argparse.rst:598 +#: howto/argparse.rst:599 msgid "" "What if we wanted to expand our tiny program to perform other powers, not " "just squares::" @@ -541,11 +542,11 @@ msgstr "" "Qu'en est-il si nous souhaitons étendre notre mini programme pour le rendre " "capable de calculer d'autres puissances, et pas seulement des carrés ::" -#: howto/argparse.rst:653 +#: howto/argparse.rst:654 msgid "Output:" msgstr "Sortie :" -#: howto/argparse.rst:636 +#: howto/argparse.rst:637 msgid "" "Notice that so far we've been using verbosity level to *change* the text " "that gets displayed. The following example instead uses verbosity level to " @@ -555,11 +556,11 @@ msgstr "" "pour *changer* le texte qui est affiché. L'exemple suivant au contraire " "utilise le niveau de verbosité pour afficher *plus* de texte à la place ::" -#: howto/argparse.rst:667 +#: howto/argparse.rst:668 msgid "Conflicting options" msgstr "Paramètres en conflit" -#: howto/argparse.rst:669 +#: howto/argparse.rst:670 msgid "" "So far, we have been working with two methods of an :class:`argparse." "ArgumentParser` instance. Let's introduce a third one, :meth:" @@ -576,7 +577,7 @@ msgstr "" "introduire l'option ``--quiet``, qui va avoir l'effet opposé de l'option ``--" "verbose`` ::" -#: howto/argparse.rst:695 +#: howto/argparse.rst:696 msgid "" "Our program is now simpler, and we've lost some functionality for the sake " "of demonstration. Anyways, here's the output:" @@ -585,7 +586,7 @@ msgstr "" "fonctionnalités pour faire cette démonstration. Peu importe, voici la sortie " "du programme :" -#: howto/argparse.rst:713 +#: howto/argparse.rst:714 msgid "" "That should be easy to follow. I've added that last output so you can see " "the sort of flexibility you get, i.e. mixing long form options with short " @@ -595,7 +596,7 @@ msgstr "" "que vous puissiez voir le genre de flexibilité que vous pouvez avoir, par " "exemple pour faire un mélange entre des paramètres courts et longs." -#: howto/argparse.rst:717 +#: howto/argparse.rst:718 msgid "" "Before we conclude, you probably want to tell your users the main purpose of " "your program, just in case they don't know::" @@ -604,7 +605,7 @@ msgstr "" "le but principal de votre programme, juste dans le cas ou ils ne le " "sauraient pas ::" -#: howto/argparse.rst:738 +#: howto/argparse.rst:739 msgid "" "Note that slight difference in the usage text. Note the ``[-v | -q]``, which " "tells us that we can either use ``-v`` or ``-q``, but not both at the same " @@ -614,11 +615,11 @@ msgstr "" "nous disent que nous pouvons utiliser au choix ``-v`` ou ``-q``, mais pas " "les deux ensemble :" -#: howto/argparse.rst:760 +#: howto/argparse.rst:761 msgid "Conclusion" msgstr "Conclusion" -#: howto/argparse.rst:762 +#: howto/argparse.rst:763 msgid "" "The :mod:`argparse` module offers a lot more than shown here. Its docs are " "quite detailed and thorough, and full of examples. Having gone through this " diff --git a/howto/clinic.po b/howto/clinic.po index 663457c89..fe7fda779 100644 --- a/howto/clinic.po +++ b/howto/clinic.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-06-04 15:16+0200\n" "Last-Translator: Mindiell \n" "Language-Team: FRENCH \n" @@ -1221,7 +1221,7 @@ msgstr "" "Tous les arguments passés aux adaptateurs d'Argument Clinic sont nommés. " "Tous les adaptateurs d'Argument Clinic acceptent les arguments suivants :" -#: howto/clinic.rst:1252 +#: howto/clinic.rst:1314 msgid "``c_default``" msgstr "``c_default``" @@ -1292,7 +1292,7 @@ msgstr "" "argument Python sera transcrite dans le paramètre sans aucune vérification " "de plage, même pour des valeurs négatives." -#: howto/clinic.rst:1266 +#: howto/clinic.rst:1328 msgid "``converter``" msgstr "``converter``" @@ -1331,7 +1331,7 @@ msgstr "" "Autorisé seulement pour l'adaptateur ``object``. Nécessite que la valeur " "Python soit une sous-classe d'un type Python, telle qu'exprimée en C." -#: howto/clinic.rst:1238 +#: howto/clinic.rst:1300 msgid "``type``" msgstr "``type``" @@ -2186,11 +2186,70 @@ msgid "" "``self_converter`` but overwriting the ``type`` member::" msgstr "" -#: howto/clinic.rst:1211 +#: howto/clinic.rst:1210 +msgid "Using a \"defining class\" converter" +msgstr "" + +#: howto/clinic.rst:1212 +msgid "" +"Argument Clinic facilitates gaining access to the defining class of a " +"method. This is useful for :ref:`heap type ` methods that need " +"to fetch module level state. Use :c:func:`PyType_FromModuleAndSpec` to " +"associate a new heap type with a module. You can now use :c:func:" +"`PyType_GetModuleState` on the defining class to fetch the module state, for " +"example from a module method." +msgstr "" + +#: howto/clinic.rst:1218 +msgid "" +"Example from ``Modules/zlibmodule.c``. First, ``defining_class`` is added " +"to the clinic input::" +msgstr "" + +#: howto/clinic.rst:1230 +msgid "" +"After running the Argument Clinic tool, the following function signature is " +"generated::" +msgstr "" + +#: howto/clinic.rst:1240 +msgid "" +"The following code can now use ``PyType_GetModuleState(cls)`` to fetch the " +"module state::" +msgstr "" + +#: howto/clinic.rst:1246 +msgid "" +"Each method may only have one argument using this converter, and it must " +"appear after ``self``, or, if ``self`` is not used, as the first argument. " +"The argument will be of type ``PyTypeObject *``. The argument will not " +"appear in the ``__text_signature__``." +msgstr "" + +#: howto/clinic.rst:1251 +msgid "" +"The ``defining_class`` converter is not compatible with ``__init__`` and " +"``__new__`` methods, which cannot use the ``METH_METHOD`` convention." +msgstr "" + +#: howto/clinic.rst:1254 +msgid "" +"It is not possible to use ``defining_class`` with slot methods. In order to " +"fetch the module state from such methods, use ``_PyType_GetModuleByDef`` to " +"look up the module and then :c:func:`PyModule_GetState` to fetch the module " +"state. Example from the ``setattro`` slot method in ``Modules/_threadmodule." +"c``::" +msgstr "" + +#: howto/clinic.rst:1269 +msgid "See also :pep:`573`." +msgstr "" + +#: howto/clinic.rst:1273 msgid "Writing a custom converter" msgstr "" -#: howto/clinic.rst:1213 +#: howto/clinic.rst:1275 msgid "" "As we hinted at in the previous section... you can write your own " "converters! A converter is simply a Python class that inherits from " @@ -2199,7 +2258,7 @@ msgid "" "a :c:func:`PyArg_ParseTuple` \"converter function\"." msgstr "" -#: howto/clinic.rst:1219 +#: howto/clinic.rst:1281 msgid "" "Your converter class should be named ``*something*_converter``. If the name " "follows this convention, then your converter class will be automatically " @@ -2208,7 +2267,7 @@ msgid "" "metaclass.)" msgstr "" -#: howto/clinic.rst:1225 +#: howto/clinic.rst:1287 msgid "" "You shouldn't subclass ``CConverter.__init__``. Instead, you should write a " "``converter_init()`` function. ``converter_init()`` always accepts a " @@ -2217,50 +2276,50 @@ msgid "" "passed along to your ``converter_init()``." msgstr "" -#: howto/clinic.rst:1232 +#: howto/clinic.rst:1294 msgid "" "There are some additional members of ``CConverter`` you may wish to specify " "in your subclass. Here's the current list:" msgstr "" -#: howto/clinic.rst:1236 +#: howto/clinic.rst:1298 msgid "" "The C type to use for this variable. ``type`` should be a Python string " "specifying the type, e.g. ``int``. If this is a pointer type, the type " "string should end with ``' *'``." msgstr "" -#: howto/clinic.rst:1242 +#: howto/clinic.rst:1304 msgid "``default``" msgstr "" -#: howto/clinic.rst:1241 +#: howto/clinic.rst:1303 msgid "" "The Python default value for this parameter, as a Python value. Or the magic " "value ``unspecified`` if there is no default." msgstr "" -#: howto/clinic.rst:1247 +#: howto/clinic.rst:1309 msgid "``py_default``" msgstr "" -#: howto/clinic.rst:1245 +#: howto/clinic.rst:1307 msgid "" "``default`` as it should appear in Python code, as a string. Or ``None`` if " "there is no default." msgstr "" -#: howto/clinic.rst:1250 +#: howto/clinic.rst:1312 msgid "" "``default`` as it should appear in C code, as a string. Or ``None`` if there " "is no default." msgstr "" -#: howto/clinic.rst:1263 +#: howto/clinic.rst:1325 msgid "``c_ignored_default``" msgstr "" -#: howto/clinic.rst:1255 +#: howto/clinic.rst:1317 msgid "" "The default value used to initialize the C variable when there is no " "default, but not specifying a default may result in an \"uninitialized " @@ -2271,37 +2330,37 @@ msgid "" "non-empty string." msgstr "" -#: howto/clinic.rst:1266 +#: howto/clinic.rst:1328 msgid "The name of the C converter function, as a string." msgstr "" -#: howto/clinic.rst:1271 +#: howto/clinic.rst:1333 msgid "``impl_by_reference``" msgstr "" -#: howto/clinic.rst:1269 +#: howto/clinic.rst:1331 msgid "" "A boolean value. If true, Argument Clinic will add a ``&`` in front of the " "name of the variable when passing it into the impl function." msgstr "" -#: howto/clinic.rst:1277 +#: howto/clinic.rst:1339 msgid "``parse_by_reference``" msgstr "" -#: howto/clinic.rst:1274 +#: howto/clinic.rst:1336 msgid "" "A boolean value. If true, Argument Clinic will add a ``&`` in front of the " "name of the variable when passing it into :c:func:`PyArg_ParseTuple`." msgstr "" -#: howto/clinic.rst:1279 +#: howto/clinic.rst:1341 msgid "" "Here's the simplest example of a custom converter, from ``Modules/zlibmodule." "c``::" msgstr "" -#: howto/clinic.rst:1290 +#: howto/clinic.rst:1352 msgid "" "This block adds a converter to Argument Clinic named ``ssize_t``. " "Parameters declared as ``ssize_t`` will be declared as type ``Py_ssize_t``, " @@ -2310,25 +2369,25 @@ msgid "" "automatically support default values." msgstr "" -#: howto/clinic.rst:1296 +#: howto/clinic.rst:1358 msgid "" "More sophisticated custom converters can insert custom C code to handle " "initialization and cleanup. You can see more examples of custom converters " "in the CPython source tree; grep the C files for the string ``CConverter``." msgstr "" -#: howto/clinic.rst:1302 +#: howto/clinic.rst:1364 msgid "Writing a custom return converter" msgstr "" -#: howto/clinic.rst:1304 +#: howto/clinic.rst:1366 msgid "" "Writing a custom return converter is much like writing a custom converter. " "Except it's somewhat simpler, because return converters are themselves much " "simpler." msgstr "" -#: howto/clinic.rst:1308 +#: howto/clinic.rst:1370 msgid "" "Return converters must subclass ``CReturnConverter``. There are no examples " "yet of custom return converters, because they are not widely used yet. If " @@ -2337,59 +2396,59 @@ msgid "" "its subclasses." msgstr "" -#: howto/clinic.rst:1316 +#: howto/clinic.rst:1378 msgid "METH_O and METH_NOARGS" msgstr "" -#: howto/clinic.rst:1318 +#: howto/clinic.rst:1380 msgid "" "To convert a function using ``METH_O``, make sure the function's single " "argument is using the ``object`` converter, and mark the arguments as " "positional-only::" msgstr "" -#: howto/clinic.rst:1330 +#: howto/clinic.rst:1392 msgid "" "To convert a function using ``METH_NOARGS``, just don't specify any " "arguments." msgstr "" -#: howto/clinic.rst:1333 +#: howto/clinic.rst:1395 msgid "" "You can still use a self converter, a return converter, and specify a " "``type`` argument to the object converter for ``METH_O``." msgstr "" -#: howto/clinic.rst:1337 +#: howto/clinic.rst:1399 msgid "tp_new and tp_init functions" msgstr "" -#: howto/clinic.rst:1339 +#: howto/clinic.rst:1401 msgid "" "You can convert ``tp_new`` and ``tp_init`` functions. Just name them " "``__new__`` or ``__init__`` as appropriate. Notes:" msgstr "" -#: howto/clinic.rst:1342 +#: howto/clinic.rst:1404 msgid "" "The function name generated for ``__new__`` doesn't end in ``__new__`` like " "it would by default. It's just the name of the class, converted into a " "valid C identifier." msgstr "" -#: howto/clinic.rst:1346 +#: howto/clinic.rst:1408 msgid "No ``PyMethodDef`` ``#define`` is generated for these functions." msgstr "" -#: howto/clinic.rst:1348 +#: howto/clinic.rst:1410 msgid "``__init__`` functions return ``int``, not ``PyObject *``." msgstr "" -#: howto/clinic.rst:1350 +#: howto/clinic.rst:1412 msgid "Use the docstring as the class docstring." msgstr "" -#: howto/clinic.rst:1352 +#: howto/clinic.rst:1414 msgid "" "Although ``__new__`` and ``__init__`` functions must always accept both the " "``args`` and ``kwargs`` objects, when converting you may specify any " @@ -2398,11 +2457,11 @@ msgid "" "it receives any.)" msgstr "" -#: howto/clinic.rst:1359 +#: howto/clinic.rst:1421 msgid "Changing and redirecting Clinic's output" msgstr "" -#: howto/clinic.rst:1361 +#: howto/clinic.rst:1423 msgid "" "It can be inconvenient to have Clinic's output interspersed with your " "conventional hand-edited C code. Luckily, Clinic is configurable: you can " @@ -2411,7 +2470,7 @@ msgid "" "Clinic's generated output." msgstr "" -#: howto/clinic.rst:1367 +#: howto/clinic.rst:1429 msgid "" "While changing Clinic's output in this manner can be a boon to readability, " "it may result in Clinic code using types before they are defined, or your " @@ -2423,15 +2482,15 @@ msgid "" "rearranging your code to fix definition-before-use problems.)" msgstr "" -#: howto/clinic.rst:1376 +#: howto/clinic.rst:1438 msgid "Let's start with defining some terminology:" msgstr "" -#: howto/clinic.rst:1403 +#: howto/clinic.rst:1465 msgid "*field*" msgstr "" -#: howto/clinic.rst:1379 +#: howto/clinic.rst:1441 msgid "" "A field, in this context, is a subsection of Clinic's output. For example, " "the ``#define`` for the ``PyMethodDef`` structure is a field, called " @@ -2439,7 +2498,7 @@ msgid "" "function definition:" msgstr "" -#: howto/clinic.rst:1394 +#: howto/clinic.rst:1456 msgid "" "All the names are of the form ``\"_\"``, where ``\"\"`` is the " "semantic object represented (the parsing function, the impl function, the " @@ -2452,42 +2511,42 @@ msgid "" "\"``, representing that it's a preprocessor #define.)" msgstr "" -#: howto/clinic.rst:1437 +#: howto/clinic.rst:1499 msgid "*destination*" msgstr "" -#: howto/clinic.rst:1406 +#: howto/clinic.rst:1468 msgid "" "A destination is a place Clinic can write output to. There are five built-" "in destinations:" msgstr "" -#: howto/clinic.rst:1486 howto/clinic.rst:1564 +#: howto/clinic.rst:1548 howto/clinic.rst:1626 msgid "``block``" msgstr "" -#: howto/clinic.rst:1410 +#: howto/clinic.rst:1472 msgid "" "The default destination: printed in the output section of the current Clinic " "block." msgstr "" -#: howto/clinic.rst:1513 howto/clinic.rst:1567 +#: howto/clinic.rst:1575 howto/clinic.rst:1629 msgid "``buffer``" msgstr "" -#: howto/clinic.rst:1414 +#: howto/clinic.rst:1476 msgid "" "A text buffer where you can save text for later. Text sent here is appended " "to the end of any existing text. It's an error to have any text left in the " "buffer when Clinic finishes processing a file." msgstr "" -#: howto/clinic.rst:1499 howto/clinic.rst:1593 +#: howto/clinic.rst:1561 howto/clinic.rst:1655 msgid "``file``" msgstr "" -#: howto/clinic.rst:1420 +#: howto/clinic.rst:1482 msgid "" "A separate \"clinic file\" that will be created automatically by Clinic. The " "filename chosen for the file is ``{basename}.clinic{extension}``, where " @@ -2496,64 +2555,64 @@ msgid "" "for ``_pickle.c`` would be written to ``_pickle.clinic.c``.)" msgstr "" -#: howto/clinic.rst:1427 +#: howto/clinic.rst:1489 msgid "" "**Important: When using a** ``file`` **destination, you** *must check in* " "**the generated file!**" msgstr "" -#: howto/clinic.rst:1526 howto/clinic.rst:1597 +#: howto/clinic.rst:1588 howto/clinic.rst:1659 msgid "``two-pass``" msgstr "" -#: howto/clinic.rst:1431 +#: howto/clinic.rst:1493 msgid "" "A buffer like ``buffer``. However, a two-pass buffer can only be dumped " "once, and it prints out all text sent to it during all processing, even from " "Clinic blocks *after* the dumping point." msgstr "" -#: howto/clinic.rst:1560 +#: howto/clinic.rst:1622 msgid "``suppress``" msgstr "" -#: howto/clinic.rst:1436 +#: howto/clinic.rst:1498 msgid "The text is suppressed—thrown away." msgstr "" -#: howto/clinic.rst:1439 +#: howto/clinic.rst:1501 msgid "Clinic defines five new directives that let you reconfigure its output." msgstr "" -#: howto/clinic.rst:1441 +#: howto/clinic.rst:1503 msgid "The first new directive is ``dump``:" msgstr "" -#: howto/clinic.rst:1447 +#: howto/clinic.rst:1509 msgid "" "This dumps the current contents of the named destination into the output of " "the current block, and empties it. This only works with ``buffer`` and " "``two-pass`` destinations." msgstr "" -#: howto/clinic.rst:1451 +#: howto/clinic.rst:1513 msgid "" "The second new directive is ``output``. The most basic form of ``output`` " "is like this:" msgstr "" -#: howto/clinic.rst:1458 +#: howto/clinic.rst:1520 msgid "" "This tells Clinic to output *field* to *destination*. ``output`` also " "supports a special meta-destination, called ``everything``, which tells " "Clinic to output *all* fields to that *destination*." msgstr "" -#: howto/clinic.rst:1462 +#: howto/clinic.rst:1524 msgid "``output`` has a number of other functions:" msgstr "" -#: howto/clinic.rst:1471 +#: howto/clinic.rst:1533 msgid "" "``output push`` and ``output pop`` allow you to push and pop configurations " "on an internal configuration stack, so that you can temporarily modify the " @@ -2562,25 +2621,25 @@ msgid "" "when you wish to restore the previous configuration." msgstr "" -#: howto/clinic.rst:1478 +#: howto/clinic.rst:1540 msgid "" "``output preset`` sets Clinic's output to one of several built-in preset " "configurations, as follows:" msgstr "" -#: howto/clinic.rst:1482 +#: howto/clinic.rst:1544 msgid "" "Clinic's original starting configuration. Writes everything immediately " "after the input block." msgstr "" -#: howto/clinic.rst:1485 +#: howto/clinic.rst:1547 msgid "" "Suppress the ``parser_prototype`` and ``docstring_prototype``, write " "everything else to ``block``." msgstr "" -#: howto/clinic.rst:1489 +#: howto/clinic.rst:1551 msgid "" "Designed to write everything to the \"clinic file\" that it can. You then " "``#include`` this file near the top of your file. You may need to rearrange " @@ -2588,17 +2647,17 @@ msgid "" "declarations for various ``typedef`` and ``PyTypeObject`` definitions." msgstr "" -#: howto/clinic.rst:1495 +#: howto/clinic.rst:1557 msgid "" "Suppress the ``parser_prototype`` and ``docstring_prototype``, write the " "``impl_definition`` to ``block``, and write everything else to ``file``." msgstr "" -#: howto/clinic.rst:1499 +#: howto/clinic.rst:1561 msgid "The default filename is ``\"{dirname}/clinic/{basename}.h\"``." msgstr "" -#: howto/clinic.rst:1502 +#: howto/clinic.rst:1564 msgid "" "Save up most of the output from Clinic, to be written into your file near " "the end. For Python files implementing modules or builtin types, it's " @@ -2608,14 +2667,14 @@ msgid "" "static ``PyMethodDef`` arrays defined in the middle of the file." msgstr "" -#: howto/clinic.rst:1511 +#: howto/clinic.rst:1573 msgid "" "Suppress the ``parser_prototype``, ``impl_prototype``, and " "``docstring_prototype``, write the ``impl_definition`` to ``block``, and " "write everything else to ``file``." msgstr "" -#: howto/clinic.rst:1516 +#: howto/clinic.rst:1578 msgid "" "Similar to the ``buffer`` preset, but writes forward declarations to the " "``two-pass`` buffer, and definitions to the ``buffer``. This is similar to " @@ -2624,18 +2683,18 @@ msgid "" "near the end just like you would when using the ``buffer`` preset." msgstr "" -#: howto/clinic.rst:1523 +#: howto/clinic.rst:1585 msgid "" "Suppresses the ``impl_prototype``, write the ``impl_definition`` to " "``block``, write ``docstring_prototype``, ``methoddef_define``, and " "``parser_prototype`` to ``two-pass``, write everything else to ``buffer``." msgstr "" -#: howto/clinic.rst:1537 +#: howto/clinic.rst:1599 msgid "``partial-buffer``" msgstr "" -#: howto/clinic.rst:1529 +#: howto/clinic.rst:1591 msgid "" "Similar to the ``buffer`` preset, but writes more things to ``block``, only " "writing the really big chunks of generated code to ``buffer``. This avoids " @@ -2645,137 +2704,137 @@ msgid "" "preset." msgstr "" -#: howto/clinic.rst:1536 +#: howto/clinic.rst:1598 msgid "" "Suppresses the ``impl_prototype``, write the ``docstring_definition`` and " "``parser_definition`` to ``buffer``, write everything else to ``block``." msgstr "" -#: howto/clinic.rst:1539 +#: howto/clinic.rst:1601 msgid "The third new directive is ``destination``:" msgstr "" -#: howto/clinic.rst:1545 +#: howto/clinic.rst:1607 msgid "This performs an operation on the destination named ``name``." msgstr "" -#: howto/clinic.rst:1547 +#: howto/clinic.rst:1609 msgid "There are two defined subcommands: ``new`` and ``clear``." msgstr "" -#: howto/clinic.rst:1549 +#: howto/clinic.rst:1611 msgid "The ``new`` subcommand works like this:" msgstr "" -#: howto/clinic.rst:1555 +#: howto/clinic.rst:1617 msgid "" "This creates a new destination with name ```` and type ````." msgstr "" -#: howto/clinic.rst:1557 +#: howto/clinic.rst:1619 msgid "There are five destination types:" msgstr "" -#: howto/clinic.rst:1560 +#: howto/clinic.rst:1622 msgid "Throws the text away." msgstr "" -#: howto/clinic.rst:1563 +#: howto/clinic.rst:1625 msgid "" "Writes the text to the current block. This is what Clinic originally did." msgstr "" -#: howto/clinic.rst:1567 +#: howto/clinic.rst:1629 msgid "A simple text buffer, like the \"buffer\" builtin destination above." msgstr "" -#: howto/clinic.rst:1570 +#: howto/clinic.rst:1632 msgid "" "A text file. The file destination takes an extra argument, a template to " "use for building the filename, like so:" msgstr "" -#: howto/clinic.rst:1573 +#: howto/clinic.rst:1635 msgid "destination new " msgstr "" -#: howto/clinic.rst:1575 +#: howto/clinic.rst:1637 msgid "" "The template can use three strings internally that will be replaced by bits " "of the filename:" msgstr "" -#: howto/clinic.rst:1578 +#: howto/clinic.rst:1640 msgid "{path}" msgstr "" -#: howto/clinic.rst:1579 +#: howto/clinic.rst:1641 msgid "The full path to the file, including directory and full filename." msgstr "" -#: howto/clinic.rst:1580 +#: howto/clinic.rst:1642 msgid "{dirname}" msgstr "" -#: howto/clinic.rst:1581 +#: howto/clinic.rst:1643 msgid "The name of the directory the file is in." msgstr "" -#: howto/clinic.rst:1582 +#: howto/clinic.rst:1644 msgid "{basename}" msgstr "" -#: howto/clinic.rst:1583 +#: howto/clinic.rst:1645 msgid "Just the name of the file, not including the directory." msgstr "" -#: howto/clinic.rst:1585 +#: howto/clinic.rst:1647 msgid "{basename_root}" msgstr "" -#: howto/clinic.rst:1585 +#: howto/clinic.rst:1647 msgid "" "Basename with the extension clipped off (everything up to but not including " "the last '.')." msgstr "" -#: howto/clinic.rst:1589 +#: howto/clinic.rst:1651 msgid "{basename_extension}" msgstr "" -#: howto/clinic.rst:1588 +#: howto/clinic.rst:1650 msgid "" "The last '.' and everything after it. If the basename does not contain a " "period, this will be the empty string." msgstr "" -#: howto/clinic.rst:1591 +#: howto/clinic.rst:1653 msgid "" "If there are no periods in the filename, {basename} and {filename} are the " "same, and {extension} is empty. \"{basename}{extension}\" is always exactly " "the same as \"{filename}\".\"" msgstr "" -#: howto/clinic.rst:1596 +#: howto/clinic.rst:1658 msgid "A two-pass buffer, like the \"two-pass\" builtin destination above." msgstr "" -#: howto/clinic.rst:1599 +#: howto/clinic.rst:1661 msgid "The ``clear`` subcommand works like this:" msgstr "" -#: howto/clinic.rst:1605 +#: howto/clinic.rst:1667 msgid "" "It removes all the accumulated text up to this point in the destination. (I " "don't know what you'd need this for, but I thought maybe it'd be useful " "while someone's experimenting.)" msgstr "" -#: howto/clinic.rst:1609 +#: howto/clinic.rst:1671 msgid "The fourth new directive is ``set``:" msgstr "" -#: howto/clinic.rst:1616 +#: howto/clinic.rst:1678 msgid "" "``set`` lets you set two internal variables in Clinic. ``line_prefix`` is a " "string that will be prepended to every line of Clinic's output; " @@ -2783,35 +2842,35 @@ msgid "" "output." msgstr "" -#: howto/clinic.rst:1620 +#: howto/clinic.rst:1682 msgid "Both of these support two format strings:" msgstr "" -#: howto/clinic.rst:1623 +#: howto/clinic.rst:1685 msgid "``{block comment start}``" msgstr "" -#: howto/clinic.rst:1623 +#: howto/clinic.rst:1685 msgid "" "Turns into the string ``/*``, the start-comment text sequence for C files." msgstr "" -#: howto/clinic.rst:1626 +#: howto/clinic.rst:1688 msgid "``{block comment end}``" msgstr "" -#: howto/clinic.rst:1626 +#: howto/clinic.rst:1688 msgid "" "Turns into the string ``*/``, the end-comment text sequence for C files." msgstr "" -#: howto/clinic.rst:1628 +#: howto/clinic.rst:1690 msgid "" "The final new directive is one you shouldn't need to use directly, called " "``preserve``:" msgstr "" -#: howto/clinic.rst:1635 +#: howto/clinic.rst:1697 msgid "" "This tells Clinic that the current contents of the output should be kept, " "unmodified. This is used internally by Clinic when dumping output into " @@ -2820,36 +2879,36 @@ msgid "" "gets overwritten." msgstr "" -#: howto/clinic.rst:1642 +#: howto/clinic.rst:1704 msgid "The #ifdef trick" msgstr "" -#: howto/clinic.rst:1644 +#: howto/clinic.rst:1706 msgid "" "If you're converting a function that isn't available on all platforms, " "there's a trick you can use to make life a little easier. The existing code " "probably looks like this::" msgstr "" -#: howto/clinic.rst:1655 +#: howto/clinic.rst:1717 msgid "" "And then in the ``PyMethodDef`` structure at the bottom the existing code " "will have:" msgstr "" -#: howto/clinic.rst:1664 +#: howto/clinic.rst:1726 msgid "" "In this scenario, you should enclose the body of your impl function inside " "the ``#ifdef``, like so::" msgstr "" -#: howto/clinic.rst:1678 +#: howto/clinic.rst:1740 msgid "" "Then, remove those three lines from the ``PyMethodDef`` structure, replacing " "them with the macro Argument Clinic generated:" msgstr "" -#: howto/clinic.rst:1685 +#: howto/clinic.rst:1747 msgid "" "(You can find the real name for this macro inside the generated code. Or you " "can calculate it yourself: it's the name of your function as defined on the " @@ -2857,27 +2916,27 @@ msgid "" "uppercased, and ``\"_METHODDEF\"`` added to the end.)" msgstr "" -#: howto/clinic.rst:1690 +#: howto/clinic.rst:1752 msgid "" "Perhaps you're wondering: what if ``HAVE_FUNCTIONNAME`` isn't defined? The " "``MODULE_FUNCTIONNAME_METHODDEF`` macro won't be defined either!" msgstr "" -#: howto/clinic.rst:1693 +#: howto/clinic.rst:1755 msgid "" "Here's where Argument Clinic gets very clever. It actually detects that the " "Argument Clinic block might be deactivated by the ``#ifdef``. When that " "happens, it generates a little extra code that looks like this::" msgstr "" -#: howto/clinic.rst:1701 +#: howto/clinic.rst:1763 msgid "" "That means the macro always works. If the function is defined, this turns " "into the correct structure, including the trailing comma. If the function " "is undefined, this turns into nothing." msgstr "" -#: howto/clinic.rst:1705 +#: howto/clinic.rst:1767 msgid "" "However, this causes one ticklish problem: where should Argument Clinic put " "this extra code when using the \"block\" output preset? It can't go in the " @@ -2885,24 +2944,24 @@ msgid "" "the whole point!)" msgstr "" -#: howto/clinic.rst:1709 +#: howto/clinic.rst:1771 msgid "" "In this situation, Argument Clinic writes the extra code to the \"buffer\" " "destination. This may mean that you get a complaint from Argument Clinic:" msgstr "" -#: howto/clinic.rst:1717 +#: howto/clinic.rst:1779 msgid "" "When this happens, just open your file, find the ``dump buffer`` block that " "Argument Clinic added to your file (it'll be at the very bottom), then move " "it above the ``PyMethodDef`` structure where that macro is used." msgstr "" -#: howto/clinic.rst:1724 +#: howto/clinic.rst:1786 msgid "Using Argument Clinic in Python files" msgstr "" -#: howto/clinic.rst:1726 +#: howto/clinic.rst:1788 msgid "" "It's actually possible to use Argument Clinic to preprocess Python files. " "There's no point to using Argument Clinic blocks, of course, as the output " @@ -2910,7 +2969,7 @@ msgid "" "Clinic to run Python blocks lets you use Python as a Python preprocessor!" msgstr "" -#: howto/clinic.rst:1731 +#: howto/clinic.rst:1793 msgid "" "Since Python comments are different from C comments, Argument Clinic blocks " "embedded in Python files look slightly different. They look like this:" diff --git a/howto/descriptor.po b/howto/descriptor.po index 6abdbe883..110ce9909 100644 --- a/howto/descriptor.po +++ b/howto/descriptor.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-12-17 21:41+0100\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -92,8 +92,8 @@ msgstr "" #: howto/descriptor.rst:45 msgid "" -"The :class:`Ten` class is a descriptor that always returns the constant " -"``10`` from its :meth:`__get__` method:" +"The :class:`Ten` class is a descriptor whose :meth:`__get__` method always " +"returns the constant ``10``:" msgstr "" #: howto/descriptor.rst:54 @@ -110,10 +110,10 @@ msgstr "" #: howto/descriptor.rst:73 msgid "" -"In the ``a.x`` attribute lookup, the dot operator finds the key ``x`` and " -"the value ``5`` in the class dictionary. In the ``a.y`` lookup, the dot " -"operator finds a descriptor instance, recognized by its ``__get__`` method, " -"and calls that method which returns ``10``." +"In the ``a.x`` attribute lookup, the dot operator finds ``'x': 5`` in the " +"class dictionary. In the ``a.y`` lookup, the dot operator finds a " +"descriptor instance, recognized by its ``__get__`` method. Calling that " +"method returns ``10``." msgstr "" #: howto/descriptor.rst:78 @@ -247,8 +247,8 @@ msgstr "" #: howto/descriptor.rst:305 msgid "" -"Descriptors get invoked by the dot \"operator\" during attribute lookup. If " -"a descriptor is accessed indirectly with ``vars(some_class)" +"Descriptors get invoked by the dot operator during attribute lookup. If a " +"descriptor is accessed indirectly with ``vars(some_class)" "[descriptor_name]``, the descriptor instance is returned without invoking it." msgstr "" @@ -826,7 +826,7 @@ msgstr "" "Pour voir comment :func:`property` est implémenté dans le protocole du " "descripteur, voici un un équivalent Python pur ::" -#: howto/descriptor.rst:1063 +#: howto/descriptor.rst:1073 msgid "" "The :func:`property` builtin helps whenever a user interface has granted " "attribute access and then subsequent changes require the intervention of a " @@ -836,7 +836,7 @@ msgstr "" "utilisateur a accordé l'accès à un attribut et que des modifications " "ultérieures nécessitent l'intervention d'une méthode." -#: howto/descriptor.rst:1067 +#: howto/descriptor.rst:1077 #, fuzzy msgid "" "For instance, a spreadsheet class may grant access to a cell value through " @@ -853,18 +853,18 @@ msgstr "" "directement à l'attribut. La solution consiste à envelopper l'accès à " "l'attribut de valeur dans un descripteur de données de propriété ::" -#: howto/descriptor.rst:1084 +#: howto/descriptor.rst:1094 msgid "" "Either the built-in :func:`property` or our :func:`Property` equivalent " "would work in this example." msgstr "" -#: howto/descriptor.rst:1089 +#: howto/descriptor.rst:1099 #, fuzzy msgid "Functions and methods" msgstr "Fonctions et méthodes" -#: howto/descriptor.rst:1091 +#: howto/descriptor.rst:1101 msgid "" "Python's object oriented features are built upon a function based " "environment. Using non-data descriptors, the two are merged seamlessly." @@ -873,7 +873,7 @@ msgstr "" "environnement basé sur des fonctions. À l'aide de descripteurs *non-data*, " "les deux sont fusionnés de façon transparente." -#: howto/descriptor.rst:1094 +#: howto/descriptor.rst:1104 #, fuzzy msgid "" "Functions stored in class dictionaries get turned into methods when invoked. " @@ -889,13 +889,13 @@ msgstr "" "convention Python, la référence de l'instance est appelée *self* mais peut " "être appelée *this* ou tout autre nom de variable." -#: howto/descriptor.rst:1099 +#: howto/descriptor.rst:1109 msgid "" "Methods can be created manually with :class:`types.MethodType` which is " "roughly equivalent to:" msgstr "" -#: howto/descriptor.rst:1116 +#: howto/descriptor.rst:1126 #, fuzzy msgid "" "To support automatic creation of methods, functions include the :meth:" @@ -909,7 +909,7 @@ msgstr "" "*non-data* qui renvoient des méthodes liées lorsqu'elles sont appelées " "depuis un objet. En Python pur, il fonctionne comme ceci ::" -#: howto/descriptor.rst:1132 +#: howto/descriptor.rst:1142 #, fuzzy msgid "" "Running the following class in the interpreter shows how the function " @@ -918,47 +918,47 @@ msgstr "" "L'exécution de l'interpréteur montre comment le descripteur de fonction se " "comporte dans la pratique ::" -#: howto/descriptor.rst:1141 +#: howto/descriptor.rst:1151 msgid "" "The function has a :term:`qualified name` attribute to support introspection:" msgstr "" -#: howto/descriptor.rst:1148 +#: howto/descriptor.rst:1158 msgid "" "Accessing the function through the class dictionary does not invoke :meth:" "`__get__`. Instead, it just returns the underlying function object::" msgstr "" -#: howto/descriptor.rst:1154 +#: howto/descriptor.rst:1164 msgid "" "Dotted access from a class calls :meth:`__get__` which just returns the " "underlying function unchanged::" msgstr "" -#: howto/descriptor.rst:1160 +#: howto/descriptor.rst:1170 msgid "" "The interesting behavior occurs during dotted access from an instance. The " "dotted lookup calls :meth:`__get__` which returns a bound method object::" msgstr "" -#: howto/descriptor.rst:1167 +#: howto/descriptor.rst:1177 msgid "" "Internally, the bound method stores the underlying function and the bound " "instance::" msgstr "" -#: howto/descriptor.rst:1176 +#: howto/descriptor.rst:1186 msgid "" "If you have ever wondered where *self* comes from in regular methods or " "where *cls* comes from in class methods, this is it!" msgstr "" -#: howto/descriptor.rst:1181 +#: howto/descriptor.rst:1191 #, fuzzy msgid "Kinds of methods" msgstr "Fonctions et méthodes" -#: howto/descriptor.rst:1183 +#: howto/descriptor.rst:1193 msgid "" "Non-data descriptors provide a simple mechanism for variations on the usual " "patterns of binding functions into methods." @@ -966,7 +966,7 @@ msgstr "" "Les descripteurs *non-data* fournissent un mécanisme simple pour les " "variations des patrons habituels des fonctions de liaison dans les méthodes." -#: howto/descriptor.rst:1186 +#: howto/descriptor.rst:1196 #, fuzzy msgid "" "To recap, functions have a :meth:`__get__` method so that they can be " @@ -979,60 +979,60 @@ msgstr "" "descripteur *non-data* transforme un appel ``obj.f(*args)``en ``f(obj, " "*args)``. Appeler ``klass.f(*args)`` devient ``f(*args)``." -#: howto/descriptor.rst:1191 +#: howto/descriptor.rst:1201 msgid "This chart summarizes the binding and its two most useful variants:" msgstr "" "Ce tableau résume le lien (*binding*) et ses deux variantes les plus " "utiles ::" -#: howto/descriptor.rst:1194 +#: howto/descriptor.rst:1204 msgid "Transformation" msgstr "Transformation" -#: howto/descriptor.rst:1194 +#: howto/descriptor.rst:1204 #, fuzzy msgid "Called from an object" msgstr "Appelé depuis un Objet" -#: howto/descriptor.rst:1194 +#: howto/descriptor.rst:1204 #, fuzzy msgid "Called from a class" msgstr "Appelé depuis un Classe" -#: howto/descriptor.rst:1197 +#: howto/descriptor.rst:1207 msgid "function" msgstr "fonction" -#: howto/descriptor.rst:1197 +#: howto/descriptor.rst:1207 msgid "f(obj, \\*args)" msgstr "f(obj, \\*args)" -#: howto/descriptor.rst:1199 +#: howto/descriptor.rst:1209 msgid "f(\\*args)" msgstr "f(\\*args)" -#: howto/descriptor.rst:1199 +#: howto/descriptor.rst:1209 msgid "staticmethod" msgstr "méthode statique" -#: howto/descriptor.rst:1201 +#: howto/descriptor.rst:1211 msgid "classmethod" msgstr "méthode de classe" -#: howto/descriptor.rst:1201 +#: howto/descriptor.rst:1211 msgid "f(type(obj), \\*args)" msgstr "f(type(obj), \\*args)" -#: howto/descriptor.rst:1201 +#: howto/descriptor.rst:1211 msgid "f(cls, \\*args)" msgstr "f(cls, \\*args)" -#: howto/descriptor.rst:1206 +#: howto/descriptor.rst:1216 #, fuzzy msgid "Static methods" msgstr "méthode statique" -#: howto/descriptor.rst:1208 +#: howto/descriptor.rst:1218 msgid "" "Static methods return the underlying function without changes. Calling " "either ``c.f`` or ``C.f`` is the equivalent of a direct lookup into ``object." @@ -1046,7 +1046,7 @@ msgstr "" "__getattribute__(C, \"f\")``. Par conséquent, la fonction devient accessible " "de manière identique à partir d'un objet ou d'une classe." -#: howto/descriptor.rst:1214 +#: howto/descriptor.rst:1224 msgid "" "Good candidates for static methods are methods that do not reference the " "``self`` variable." @@ -1054,7 +1054,7 @@ msgstr "" "Les bonnes candidates pour être méthode statique sont des méthodes qui ne " "font pas référence à la variable ``self``." -#: howto/descriptor.rst:1217 +#: howto/descriptor.rst:1227 msgid "" "For instance, a statistics package may include a container class for " "experimental data. The class provides normal methods for computing the " @@ -1076,7 +1076,7 @@ msgstr "" "appelée à partir d'un objet ou de la classe : ``s.erf(1.5) --> .9332``` ou " "``Sample.erf(1.5) --> .9332``." -#: howto/descriptor.rst:1226 +#: howto/descriptor.rst:1236 #, fuzzy msgid "" "Since static methods return the underlying function with no changes, the " @@ -1085,7 +1085,7 @@ msgstr "" "Depuis que les méthodes statiques renvoient la fonction sous-jacente sans " "changement, les exemples d’appels ne sont pas excitants ::" -#: howto/descriptor.rst:1243 +#: howto/descriptor.rst:1253 #, fuzzy msgid "" "Using the non-data descriptor protocol, a pure Python version of :func:" @@ -1094,12 +1094,12 @@ msgstr "" "En utilisant le protocole de descripteur *non-data*, une version Python pure " "de :func:`staticmethod` ressemblerait à ceci ::" -#: howto/descriptor.rst:1275 +#: howto/descriptor.rst:1285 #, fuzzy msgid "Class methods" msgstr "méthode de classe" -#: howto/descriptor.rst:1277 +#: howto/descriptor.rst:1287 #, fuzzy msgid "" "Unlike static methods, class methods prepend the class reference to the " @@ -1110,7 +1110,7 @@ msgstr "" "référence de classe dans la liste d'arguments avant d'appeler la fonction. " "Ce format est le même que l'appelant soit un objet ou une classe ::" -#: howto/descriptor.rst:1295 +#: howto/descriptor.rst:1305 #, fuzzy msgid "" "This behavior is useful whenever the method only needs to have a class " @@ -1126,14 +1126,14 @@ msgstr "" "nouveau dictionnaire à partir d'une liste de clés. L'équivalent Python pur " "est ::" -#: howto/descriptor.rst:1312 +#: howto/descriptor.rst:1322 #, fuzzy msgid "Now a new dictionary of unique keys can be constructed like this:" msgstr "" "Maintenant un nouveau dictionnaire de clés uniques peut être construit comme " "ceci ::" -#: howto/descriptor.rst:1322 +#: howto/descriptor.rst:1332 #, fuzzy msgid "" "Using the non-data descriptor protocol, a pure Python version of :func:" @@ -1142,7 +1142,7 @@ msgstr "" "En utilisant le protocole de descripteur *non-data*, une version Python pure " "de :func:`classmethod` ressemblerait à ceci ::" -#: howto/descriptor.rst:1371 +#: howto/descriptor.rst:1381 msgid "" "The code path for ``hasattr(type(self.f), '__get__')`` was added in Python " "3.9 and makes it possible for :func:`classmethod` to support chained " @@ -1150,30 +1150,30 @@ msgid "" "together:" msgstr "" -#: howto/descriptor.rst:1391 +#: howto/descriptor.rst:1401 msgid "Member objects and __slots__" msgstr "" -#: howto/descriptor.rst:1393 +#: howto/descriptor.rst:1403 msgid "" "When a class defines ``__slots__``, it replaces instance dictionaries with a " "fixed-length array of slot values. From a user point of view that has " "several effects:" msgstr "" -#: howto/descriptor.rst:1397 +#: howto/descriptor.rst:1407 msgid "" "1. Provides immediate detection of bugs due to misspelled attribute " "assignments. Only attribute names specified in ``__slots__`` are allowed:" msgstr "" -#: howto/descriptor.rst:1413 +#: howto/descriptor.rst:1423 msgid "" "2. Helps create immutable objects where descriptors manage access to private " "attributes stored in ``__slots__``:" msgstr "" -#: howto/descriptor.rst:1448 +#: howto/descriptor.rst:1458 msgid "" "3. Saves memory. On a 64-bit Linux build, an instance with two attributes " "takes 48 bytes with ``__slots__`` and 152 bytes without. This `flyweight " @@ -1181,13 +1181,19 @@ msgid "" "only matters when a large number of instances are going to be created." msgstr "" -#: howto/descriptor.rst:1453 +#: howto/descriptor.rst:1463 +msgid "" +"4. Improves speed. Reading instance variables is 35% faster with " +"``__slots__`` (as measured with Python 3.10 on an Apple M1 processor)." +msgstr "" + +#: howto/descriptor.rst:1466 msgid "" -"4. Blocks tools like :func:`functools.cached_property` which require an " +"5. Blocks tools like :func:`functools.cached_property` which require an " "instance dictionary to function correctly:" msgstr "" -#: howto/descriptor.rst:1475 +#: howto/descriptor.rst:1488 msgid "" "It is not possible to create an exact drop-in pure Python version of " "``__slots__`` because it requires direct access to C structures and control " @@ -1197,37 +1203,37 @@ msgid "" "managed by member descriptors:" msgstr "" -#: howto/descriptor.rst:1518 +#: howto/descriptor.rst:1531 msgid "" "The :meth:`type.__new__` method takes care of adding member objects to class " "variables:" msgstr "" -#: howto/descriptor.rst:1534 +#: howto/descriptor.rst:1547 msgid "" "The :meth:`object.__new__` method takes care of creating instances that have " "slots instead of an instance dictionary. Here is a rough simulation in pure " "Python:" msgstr "" -#: howto/descriptor.rst:1569 +#: howto/descriptor.rst:1582 msgid "" "To use the simulation in a real class, just inherit from :class:`Object` and " "set the :term:`metaclass` to :class:`Type`:" msgstr "" -#: howto/descriptor.rst:1583 +#: howto/descriptor.rst:1596 msgid "" "At this point, the metaclass has loaded member objects for *x* and *y*::" msgstr "" -#: howto/descriptor.rst:1604 +#: howto/descriptor.rst:1617 msgid "" "When instances are created, they have a ``slot_values`` list where the " "attributes are stored:" msgstr "" -#: howto/descriptor.rst:1616 +#: howto/descriptor.rst:1629 msgid "Misspelled or unassigned attributes will raise an exception:" msgstr "" diff --git a/howto/instrumentation.po b/howto/instrumentation.po index bccfff828..a349c6e68 100644 --- a/howto/instrumentation.po +++ b/howto/instrumentation.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-01-28 15:41+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -100,10 +100,13 @@ msgid "or::" msgstr "ou ::" #: howto/instrumentation.rst:49 -msgid "CPython must then be configured ``--with-dtrace``:" +#, fuzzy +msgid "" +"CPython must then be :option:`configured with the --with-dtrace option <--" +"with-dtrace>`:" msgstr "CPython doit être configuré avec l'option ``--with-dtrace`` ::" -#: howto/instrumentation.rst:55 +#: howto/instrumentation.rst:56 msgid "" "On macOS, you can list available DTrace probes by running a Python process " "in the background and listing all probes made available by the Python " @@ -113,7 +116,7 @@ msgstr "" "un processus Python en arrière-plan et en listant toutes les sondes mises à " "disposition par le fournisseur Python ::" -#: howto/instrumentation.rst:72 +#: howto/instrumentation.rst:73 msgid "" "On Linux, you can verify if the SystemTap static markers are present in the " "built binary by seeing if it contains a \".note.stapsdt\" section." @@ -122,22 +125,24 @@ msgstr "" "présents dans le binaire compilé, il suffit de regarder s'il contient une " "section ``.note.stapsdt``." -#: howto/instrumentation.rst:80 +#: howto/instrumentation.rst:81 +#, fuzzy msgid "" -"If you've built Python as a shared library (with --enable-shared), you need " -"to look instead within the shared library. For example::" +"If you've built Python as a shared library (with the :option:`--enable-" +"shared` configure option), you need to look instead within the shared " +"library. For example::" msgstr "" "Si vous avez compilé Python en tant que bibliothèque partagée (avec ``--" "enable-shared``), vous devez plutôt regarder dans la bibliothèque partagée. " "Par exemple ::" -#: howto/instrumentation.rst:86 +#: howto/instrumentation.rst:88 msgid "Sufficiently modern readelf can print the metadata::" msgstr "" "Une version suffisamment moderne de *readelf* peut afficher les " "métadonnées ::" -#: howto/instrumentation.rst:123 +#: howto/instrumentation.rst:125 msgid "" "The above metadata contains information for SystemTap describing how it can " "patch strategically-placed machine code instructions to enable the tracing " @@ -148,11 +153,11 @@ msgstr "" "stratégiquement placées pour activer les crochets de traçage utilisés par un " "script *SystemTap*." -#: howto/instrumentation.rst:129 +#: howto/instrumentation.rst:131 msgid "Static DTrace probes" msgstr "Sondes DTrace statiques" -#: howto/instrumentation.rst:131 +#: howto/instrumentation.rst:133 msgid "" "The following example DTrace script can be used to show the call/return " "hierarchy of a Python script, only tracing within the invocation of a " @@ -164,19 +169,19 @@ msgstr "" "En d'autres termes, les appels de fonctions lors de la phase d'import ne " "seront pas répertoriées ::" -#: howto/instrumentation.rst:228 +#: howto/instrumentation.rst:230 msgid "It can be invoked like this::" msgstr "Il peut être utilisé de cette manière ::" -#: howto/instrumentation.rst:234 +#: howto/instrumentation.rst:236 msgid "The output looks like this:" msgstr "La sortie ressemble à ceci ::" -#: howto/instrumentation.rst:199 +#: howto/instrumentation.rst:201 msgid "Static SystemTap markers" msgstr "Marqueurs statiques *SystemTap*" -#: howto/instrumentation.rst:201 +#: howto/instrumentation.rst:203 msgid "" "The low-level way to use the SystemTap integration is to use the static " "markers directly. This requires you to explicitly state the binary file " @@ -186,7 +191,7 @@ msgstr "" "directement les marqueurs statiques. Pour cela vous devez pointer " "explicitement le fichier binaire qui les contient." -#: howto/instrumentation.rst:205 +#: howto/instrumentation.rst:207 msgid "" "For example, this SystemTap script can be used to show the call/return " "hierarchy of a Python script:" @@ -194,52 +199,54 @@ msgstr "" "Par exemple, ce script *SystemTap* peut être utilisé pour afficher la " "hiérarchie d'appel/retour d'un script Python ::" -#: howto/instrumentation.rst:245 +#: howto/instrumentation.rst:247 msgid "where the columns are:" msgstr "où les colonnes sont ::" -#: howto/instrumentation.rst:247 +#: howto/instrumentation.rst:249 msgid "time in microseconds since start of script" msgstr "temps en microsecondes depuis le début du script" -#: howto/instrumentation.rst:249 +#: howto/instrumentation.rst:251 msgid "name of executable" msgstr "nom de l'exécutable" -#: howto/instrumentation.rst:251 +#: howto/instrumentation.rst:253 msgid "PID of process" msgstr "PID du processus" -#: howto/instrumentation.rst:253 +#: howto/instrumentation.rst:255 msgid "" "and the remainder indicates the call/return hierarchy as the script executes." msgstr "" "et le reste indique la hiérarchie d'appel/retour lorsque le script s'exécute." -#: howto/instrumentation.rst:255 +#: howto/instrumentation.rst:257 +#, fuzzy msgid "" -"For a `--enable-shared` build of CPython, the markers are contained within " -"the libpython shared library, and the probe's dotted path needs to reflect " -"this. For example, this line from the above example:" +"For a :option:`--enable-shared` build of CPython, the markers are contained " +"within the libpython shared library, and the probe's dotted path needs to " +"reflect this. For example, this line from the above example:" msgstr "" "Pour une compilation `--enable-shared` de CPython, les marqueurs sont " "contenus dans la bibliothèque partagée *libpython*, et le chemin du module " "de la sonde doit le refléter. Par exemple, la ligne de l'exemple ci-dessus :" -#: howto/instrumentation.rst:263 +#: howto/instrumentation.rst:265 msgid "should instead read:" msgstr "doit plutôt se lire comme ::" -#: howto/instrumentation.rst:269 -msgid "(assuming a debug build of CPython 3.6)" +#: howto/instrumentation.rst:271 +#, fuzzy +msgid "(assuming a :ref:`debug build ` of CPython 3.6)" msgstr "" "(en supposant une version compilée avec le débogage activé de CPython 3.6)" -#: howto/instrumentation.rst:273 +#: howto/instrumentation.rst:275 msgid "Available static markers" msgstr "Marqueurs statiques disponibles" -#: howto/instrumentation.rst:277 +#: howto/instrumentation.rst:279 msgid "" "This marker indicates that execution of a Python function has begun. It is " "only triggered for pure-Python (bytecode) functions." @@ -247,7 +254,7 @@ msgstr "" "Ce marqueur indique que l'exécution d'une fonction Python a commencé. Il " "n'est déclenché que pour les fonctions en Python pur (code intermédiaire)." -#: howto/instrumentation.rst:280 +#: howto/instrumentation.rst:282 msgid "" "The filename, function name, and line number are provided back to the " "tracing script as positional arguments, which must be accessed using ``" @@ -257,7 +264,7 @@ msgstr "" "au script de traçage sous forme d'arguments positionnels, auxquels il faut " "accéder en utilisant ``$arg1``, ``$arg2``, ``$arg3`` :" -#: howto/instrumentation.rst:284 +#: howto/instrumentation.rst:286 msgid "" "``$arg1`` : ``(const char *)`` filename, accessible using " "``user_string($arg1)``" @@ -265,7 +272,7 @@ msgstr "" "``$arg1`` : ``(const char *)`` nom de fichier, accessible via " "``user_string($arg1)``" -#: howto/instrumentation.rst:286 +#: howto/instrumentation.rst:288 msgid "" "``$arg2`` : ``(const char *)`` function name, accessible using " "``user_string($arg2)``" @@ -273,11 +280,11 @@ msgstr "" "``$arg2`` : ``(const char *)`` nom de la fonction, accessible via " "``user_string($arg2)``" -#: howto/instrumentation.rst:289 +#: howto/instrumentation.rst:291 msgid "``$arg3`` : ``int`` line number" msgstr "``$arg3`` : numéro de ligne ``int``" -#: howto/instrumentation.rst:293 +#: howto/instrumentation.rst:295 msgid "" "This marker is the converse of :c:func:`function__entry`, and indicates that " "execution of a Python function has ended (either via ``return``, or via an " @@ -288,11 +295,11 @@ msgstr "" "via une exception). Il n'est déclenché que pour les fonctions en Python pur " "(code intermédiaire)." -#: howto/instrumentation.rst:297 +#: howto/instrumentation.rst:299 msgid "The arguments are the same as for :c:func:`function__entry`" msgstr "Les arguments sont les mêmes que pour :c:func:`function__entry`" -#: howto/instrumentation.rst:301 +#: howto/instrumentation.rst:303 msgid "" "This marker indicates a Python line is about to be executed. It is the " "equivalent of line-by-line tracing with a Python profiler. It is not " @@ -302,11 +309,11 @@ msgstr "" "C'est l'équivalent du traçage ligne par ligne avec un profileur Python. Il " "n'est pas déclenché dans les fonctions C." -#: howto/instrumentation.rst:305 +#: howto/instrumentation.rst:307 msgid "The arguments are the same as for :c:func:`function__entry`." msgstr "Les arguments sont les mêmes que pour :c:func:`function__entry`." -#: howto/instrumentation.rst:309 +#: howto/instrumentation.rst:311 msgid "" "Fires when the Python interpreter starts a garbage collection cycle. " "``arg0`` is the generation to scan, like :func:`gc.collect()`." @@ -315,7 +322,7 @@ msgstr "" "ramasse-miettes. ``arg0`` est la génération à scanner, comme :func:`gc." "collect()`." -#: howto/instrumentation.rst:314 +#: howto/instrumentation.rst:316 msgid "" "Fires when the Python interpreter finishes a garbage collection cycle. " "``arg0`` is the number of collected objects." @@ -323,7 +330,7 @@ msgstr "" "Fonction appelée lorsque l'interpréteur Python termine un cycle de collecte " "du ramasse-miettes. ``Arg0`` est le nombre d'objets collectés." -#: howto/instrumentation.rst:319 +#: howto/instrumentation.rst:321 msgid "" "Fires before :mod:`importlib` attempts to find and load the module. ``arg0`` " "is the module name." @@ -331,7 +338,7 @@ msgstr "" "Fonction appelée avant que :mod:`importlib` essaye de trouver et de charger " "le module. ``arg0`` est le nom du module." -#: howto/instrumentation.rst:326 +#: howto/instrumentation.rst:328 msgid "" "Fires after :mod:`importlib`'s find_and_load function is called. ``arg0`` is " "the module name, ``arg1`` indicates if module was successfully loaded." @@ -340,7 +347,7 @@ msgstr "" "`importlib` soit appelée. ``arg0`` est le nom du module, ``arg1`` indique si " "le module a été chargé avec succès." -#: howto/instrumentation.rst:335 +#: howto/instrumentation.rst:337 msgid "" "Fires when :func:`sys.audit` or :c:func:`PySys_Audit` is called. ``arg0`` is " "the event name as C string, ``arg1`` is a :c:type:`PyObject` pointer to a " @@ -351,11 +358,11 @@ msgstr "" "chaîne de caractère C. ``arg1`` est un pointeur sur un *n*-uplet d'objet de " "type :c:type:`PyObject`." -#: howto/instrumentation.rst:343 +#: howto/instrumentation.rst:345 msgid "SystemTap Tapsets" msgstr "*Tapsets* de *SystemTap*" -#: howto/instrumentation.rst:345 +#: howto/instrumentation.rst:347 msgid "" "The higher-level way to use the SystemTap integration is to use a \"tapset" "\": SystemTap's equivalent of a library, which hides some of the lower-level " @@ -365,13 +372,13 @@ msgstr "" "un *« tapset »*. L'équivalent pour *SystemTap* d'une bibliothèque, qui " "permet de masquer les détails de niveau inférieur des marqueurs statiques." -#: howto/instrumentation.rst:349 +#: howto/instrumentation.rst:351 msgid "Here is a tapset file, based on a non-shared build of CPython:" msgstr "" "Voici un fichier *tapset*, basé sur une version non partagée compilée de " "CPython ::" -#: howto/instrumentation.rst:372 +#: howto/instrumentation.rst:374 msgid "" "If this file is installed in SystemTap's tapset directory (e.g. ``/usr/share/" "systemtap/tapset``), then these additional probepoints become available:" @@ -380,7 +387,7 @@ msgstr "" "exemple ``/usr/share/systemtap/tapset``), alors ces sondes supplémentaires " "deviennent disponibles ::" -#: howto/instrumentation.rst:378 +#: howto/instrumentation.rst:380 msgid "" "This probe point indicates that execution of a Python function has begun. It " "is only triggered for pure-Python (bytecode) functions." @@ -388,7 +395,7 @@ msgstr "" "Cette sonde indique que l'exécution d'une fonction Python a commencé. Elle " "n'est déclenchée que pour les fonctions en Python pur (code intermédiaire)." -#: howto/instrumentation.rst:383 +#: howto/instrumentation.rst:385 msgid "" "This probe point is the converse of ``python.function.return``, and " "indicates that execution of a Python function has ended (either via " @@ -400,11 +407,11 @@ msgstr "" "via une exception). Elle est uniquement déclenchée pour les fonctions en " "Python pur (code intermédiaire ou *bytecode*)." -#: howto/instrumentation.rst:390 +#: howto/instrumentation.rst:392 msgid "Examples" msgstr "Exemples" -#: howto/instrumentation.rst:391 +#: howto/instrumentation.rst:393 msgid "" "This SystemTap script uses the tapset above to more cleanly implement the " "example given above of tracing the Python function-call hierarchy, without " @@ -415,7 +422,7 @@ msgstr "" "fonctions Python, sans avoir besoin de nommer directement les marqueurs " "statiques ::" -#: howto/instrumentation.rst:410 +#: howto/instrumentation.rst:412 msgid "" "The following script uses the tapset above to provide a top-like view of all " "running CPython code, showing the top 20 most frequently-entered bytecode " diff --git a/howto/ipaddress.po b/howto/ipaddress.po index 89b788adf..20a9e3092 100644 --- a/howto/ipaddress.po +++ b/howto/ipaddress.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-01-11 23:02+0100\n" "Last-Translator: BAILLY Geoffroy \n" "Language-Team: FRENCH \n" @@ -69,13 +69,15 @@ msgid "A Note on IP Versions" msgstr "Note sur les versions d'IP" #: howto/ipaddress.rst:34 +#, fuzzy msgid "" "For readers that aren't particularly familiar with IP addressing, it's " -"important to know that the Internet Protocol is currently in the process of " -"moving from version 4 of the protocol to version 6. This transition is " -"occurring largely because version 4 of the protocol doesn't provide enough " -"addresses to handle the needs of the whole world, especially given the " -"increasing number of devices with direct connections to the internet." +"important to know that the Internet Protocol (IP) is currently in the " +"process of moving from version 4 of the protocol to version 6. This " +"transition is occurring largely because version 4 of the protocol doesn't " +"provide enough addresses to handle the needs of the whole world, especially " +"given the increasing number of devices with direct connections to the " +"internet." msgstr "" "Pour les lecteurs qui ne sont pas particulièrement familiers avec " "l'adressage IP il est important de savoir que le protocole IP est " diff --git a/howto/logging-cookbook.po b/howto/logging-cookbook.po index 5bdf06bcc..4403f783a 100644 --- a/howto/logging-cookbook.po +++ b/howto/logging-cookbook.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -166,7 +166,7 @@ msgstr "" #: howto/logging-cookbook.rst:334 msgid "" "Sometimes you have to get your logging handlers to do their work without " -"blocking the thread you're logging from. This is common in Web applications, " +"blocking the thread you're logging from. This is common in web applications, " "though of course it also occurs in other scenarios." msgstr "" @@ -1521,3 +1521,118 @@ msgid "" "Qt. Please refer to the comments in the code snippet for more detailed " "information." msgstr "" + +#: howto/logging-cookbook.rst:2987 +msgid "Patterns to avoid" +msgstr "" + +#: howto/logging-cookbook.rst:2989 +msgid "" +"Although the preceding sections have described ways of doing things you " +"might need to do or deal with, it is worth mentioning some usage patterns " +"which are *unhelpful*, and which should therefore be avoided in most cases. " +"The following sections are in no particular order." +msgstr "" + +#: howto/logging-cookbook.rst:2996 +msgid "Opening the same log file multiple times" +msgstr "" + +#: howto/logging-cookbook.rst:2998 +msgid "" +"On Windows, you will generally not be able to open the same file multiple " +"times as this will lead to a \"file is in use by another process\" error. " +"However, on POSIX platforms you'll not get any errors if you open the same " +"file multiple times. This could be done accidentally, for example by:" +msgstr "" + +#: howto/logging-cookbook.rst:3003 +msgid "" +"Adding a file handler more than once which references the same file (e.g. by " +"a copy/paste/forget-to-change error)." +msgstr "" + +#: howto/logging-cookbook.rst:3006 +msgid "" +"Opening two files that look different, as they have different names, but are " +"the same because one is a symbolic link to the other." +msgstr "" + +#: howto/logging-cookbook.rst:3009 +msgid "" +"Forking a process, following which both parent and child have a reference to " +"the same file. This might be through use of the :mod:`multiprocessing` " +"module, for example." +msgstr "" + +#: howto/logging-cookbook.rst:3013 +msgid "" +"Opening a file multiple times might *appear* to work most of the time, but " +"can lead to a number of problems in practice:" +msgstr "" + +#: howto/logging-cookbook.rst:3016 +msgid "" +"Logging output can be garbled because multiple threads or processes try to " +"write to the same file. Although logging guards against concurrent use of " +"the same handler instance by multiple threads, there is no such protection " +"if concurrent writes are attempted by two different threads using two " +"different handler instances which happen to point to the same file." +msgstr "" + +#: howto/logging-cookbook.rst:3022 +msgid "" +"An attempt to delete a file (e.g. during file rotation) silently fails, " +"because there is another reference pointing to it. This can lead to " +"confusion and wasted debugging time - log entries end up in unexpected " +"places, or are lost altogether." +msgstr "" + +#: howto/logging-cookbook.rst:3027 +msgid "" +"Use the techniques outlined in :ref:`multiple-processes` to circumvent such " +"issues." +msgstr "" + +#: howto/logging-cookbook.rst:3031 +msgid "Using loggers as attributes in a class or passing them as parameters" +msgstr "" + +#: howto/logging-cookbook.rst:3033 +msgid "" +"While there might be unusual cases where you'll need to do this, in general " +"there is no point because loggers are singletons. Code can always access a " +"given logger instance by name using ``logging.getLogger(name)``, so passing " +"instances around and holding them as instance attributes is pointless. Note " +"that in other languages such as Java and C#, loggers are often static class " +"attributes. However, this pattern doesn't make sense in Python, where the " +"module (and not the class) is the unit of software decomposition." +msgstr "" + +#: howto/logging-cookbook.rst:3043 +msgid "" +"Adding handlers other than :class:`NullHandler` to a logger in a library" +msgstr "" + +#: howto/logging-cookbook.rst:3045 +msgid "" +"Configuring logging by adding handlers, formatters and filters is the " +"responsibility of the application developer, not the library developer. If " +"you are maintaining a library, ensure that you don't add handlers to any of " +"your loggers other than a :class:`~logging.NullHandler` instance." +msgstr "" + +#: howto/logging-cookbook.rst:3052 +msgid "Creating a lot of loggers" +msgstr "" + +#: howto/logging-cookbook.rst:3054 +msgid "" +"Loggers are singletons that are never freed during a script execution, and " +"so creating lots of loggers will use up memory which can't then be freed. " +"Rather than create a logger per e.g. file processed or network connection " +"made, use the :ref:`existing mechanisms ` for passing " +"contextual information into your logs and restrict the loggers created to " +"those describing areas within your application (generally modules, but " +"occasionally slightly more fine-grained than that)." +msgstr "" diff --git a/howto/logging.po b/howto/logging.po index 06a50ee52..c129f9f97 100644 --- a/howto/logging.po +++ b/howto/logging.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-01-28 15:44+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -161,7 +161,7 @@ msgstr "" "sévérité des évènements qu'elles suivent. Les niveaux standards et leurs " "applications sont décrits ci-dessous (par ordre croissant de sévérité) :" -#: howto/logging.rst:855 +#: howto/logging.rst:854 msgid "Level" msgstr "Niveau" @@ -169,7 +169,7 @@ msgstr "Niveau" msgid "When it's used" msgstr "Quand il est utilisé" -#: howto/logging.rst:865 +#: howto/logging.rst:864 msgid "``DEBUG``" msgstr "``DEBUG``" @@ -180,7 +180,7 @@ msgstr "" "Information détaillée, intéressante seulement lorsqu'on diagnostique un " "problème." -#: howto/logging.rst:863 +#: howto/logging.rst:862 msgid "``INFO``" msgstr "``INFO``" @@ -188,7 +188,7 @@ msgstr "``INFO``" msgid "Confirmation that things are working as expected." msgstr "Confirmation que tout fonctionne comme prévu." -#: howto/logging.rst:861 +#: howto/logging.rst:860 msgid "``WARNING``" msgstr "``WARNING``" @@ -202,7 +202,7 @@ msgstr "" "d'un problème dans un futur proche (par exemple « espace disque faible »). " "Le logiciel fonctionne encore normalement." -#: howto/logging.rst:859 +#: howto/logging.rst:858 msgid "``ERROR``" msgstr "``ERROR``" @@ -214,7 +214,7 @@ msgstr "" "Du fait d'un problème plus sérieux, le logiciel n'a pas été capable de " "réaliser une tâche." -#: howto/logging.rst:857 +#: howto/logging.rst:856 msgid "``CRITICAL``" msgstr "``CRITICAL``" @@ -1170,14 +1170,14 @@ msgstr "" msgid "Here is the logging.conf file:" msgstr "Voici le fichier *logging.conf* :" -#: howto/logging.rst:689 +#: howto/logging.rst:688 msgid "" "The output is nearly identical to that of the non-config-file-based example:" msgstr "" "La sortie est presque identique à celle de l'exemple qui n'est pas basé sur " "un fichier de configuration :" -#: howto/logging.rst:700 +#: howto/logging.rst:699 msgid "" "You can see that the config file approach has a few advantages over the " "Python code approach, mainly separation of configuration and code and the " @@ -1188,7 +1188,7 @@ msgstr "" "séparation de la configuration et du code, et la possibilité pour une " "personne qui ne code pas de modifier facilement les propriétés de `logging`." -#: howto/logging.rst:704 +#: howto/logging.rst:703 msgid "" "The :func:`fileConfig` function takes a default parameter, " "``disable_existing_loggers``, which defaults to ``True`` for reasons of " @@ -1207,7 +1207,7 @@ msgstr "" "documentation pour plus de détails, et donner la valeur ``False`` à ce " "paramètre si vous le souhaitez." -#: howto/logging.rst:712 +#: howto/logging.rst:711 msgid "" "The dictionary passed to :func:`dictConfig` can also specify a Boolean value " "with key ``disable_existing_loggers``, which if not specified explicitly in " @@ -1222,7 +1222,7 @@ msgstr "" "forcément celui que vous souhaitez ; dans ce cas, donnez explicitement la " "valeur ``False`` à cette clef." -#: howto/logging.rst:722 +#: howto/logging.rst:721 msgid "" "Note that the class names referenced in config files need to be either " "relative to the logging module, or absolute values which can be resolved " @@ -1240,7 +1240,7 @@ msgstr "" "une classe définie dans le paquet ``mypackage`` et le module ``mymodule``, " "si ``mypackage`` est disponible dans les chemins d'importation de Python)." -#: howto/logging.rst:730 +#: howto/logging.rst:729 msgid "" "In Python 3.2, a new means of configuring logging has been introduced, using " "dictionaries to hold configuration information. This provides a superset of " @@ -1269,7 +1269,7 @@ msgstr "" "forme de *pickle* sur un connecteur, ou utiliser n'importe quelle approche " "suivant la logique de votre application." -#: howto/logging.rst:742 +#: howto/logging.rst:741 msgid "" "Here's an example of the same configuration as above, in YAML format for the " "new dictionary-based approach:" @@ -1277,7 +1277,7 @@ msgstr "" "Voici un exemple définissant la même configuration que ci-dessus, au format " "YAML pour le dictionnaire correspondant à cette nouvelle approche :" -#: howto/logging.rst:766 +#: howto/logging.rst:765 msgid "" "For more information about logging using a dictionary, see :ref:`logging-" "config-api`." @@ -1285,11 +1285,11 @@ msgstr "" "Pour plus d'informations sur la journalisation à l'aide d'un dictionnaire, " "consultez :ref:`logging-config-api`." -#: howto/logging.rst:770 +#: howto/logging.rst:769 msgid "What happens if no configuration is provided" msgstr "Comportement par défaut (si aucune configuration n'est fournie)" -#: howto/logging.rst:772 +#: howto/logging.rst:771 msgid "" "If no logging configuration is provided, it is possible to have a situation " "where a logging event needs to be output, but no handlers can be found to " @@ -1302,13 +1302,13 @@ msgstr "" "l'événement. Le comportement du paquet ``logging`` dans ces circonstances " "dépend de la version Python." -#: howto/logging.rst:777 +#: howto/logging.rst:776 msgid "For versions of Python prior to 3.2, the behaviour is as follows:" msgstr "" "Pour les versions de Python antérieures à 3.2, le comportement est le " "suivant :" -#: howto/logging.rst:779 +#: howto/logging.rst:778 msgid "" "If *logging.raiseExceptions* is ``False`` (production mode), the event is " "silently dropped." @@ -1316,7 +1316,7 @@ msgstr "" "Si *logging.raiseExceptions* vaut ``False`` (mode production), l’événement " "est silencieusement abandonné." -#: howto/logging.rst:782 +#: howto/logging.rst:781 msgid "" "If *logging.raiseExceptions* is ``True`` (development mode), a message 'No " "handlers could be found for logger X.Y.Z' is printed once." @@ -1325,11 +1325,11 @@ msgstr "" "message *No handlers could be found for logger X.Y.Z* est écrit sur la " "sortie standard une fois." -#: howto/logging.rst:785 +#: howto/logging.rst:784 msgid "In Python 3.2 and later, the behaviour is as follows:" msgstr "Dans Python 3.2 et ultérieur, le comportement est le suivant :" -#: howto/logging.rst:787 +#: howto/logging.rst:786 msgid "" "The event is output using a 'handler of last resort', stored in ``logging." "lastResort``. This internal handler is not associated with any logger, and " @@ -1350,7 +1350,7 @@ msgstr "" "gestionnaire est défini sur ``WARNING``, de sorte que tous les événements de " "cette sévérité et plus seront écrits." -#: howto/logging.rst:796 +#: howto/logging.rst:795 msgid "" "To obtain the pre-3.2 behaviour, ``logging.lastResort`` can be set to " "``None``." @@ -1358,11 +1358,11 @@ msgstr "" "Pour obtenir un comportement antérieur à 3.2, ``logging.lastResort`` peut " "être mis à ``None``." -#: howto/logging.rst:801 +#: howto/logging.rst:800 msgid "Configuring Logging for a Library" msgstr "Configuration de la journalisation pour une bibliothèque" -#: howto/logging.rst:803 +#: howto/logging.rst:802 msgid "" "When developing a library which uses logging, you should take care to " "document how the library uses logging - for example, the names of loggers " @@ -1382,7 +1382,7 @@ msgstr "" "``WARNING`` et au-dessus seront écrits sur ``sys.stderr``. Cela est " "considéré comme le meilleur comportement par défaut." -#: howto/logging.rst:811 +#: howto/logging.rst:810 msgid "" "If for some reason you *don't* want these messages printed in the absence of " "any logging configuration, you can attach a do-nothing handler to the top-" @@ -1405,7 +1405,7 @@ msgstr "" "appels effectués dans le code de bibliothèque enverra la sortie à ces " "gestionnaires, comme d'habitude." -#: howto/logging.rst:820 +#: howto/logging.rst:819 msgid "" "A do-nothing handler is included in the logging package: :class:`~logging." "NullHandler` (since Python 3.1). An instance of this handler could be added " @@ -1425,7 +1425,7 @@ msgstr "" "effectuée en utilisant des enregistreurs avec des noms correspondant à *foo." "x*, *foo.x.y*, etc., alors le code ::" -#: howto/logging.rst:831 +#: howto/logging.rst:830 msgid "" "should have the desired effect. If an organisation produces a number of " "libraries, then the logger name specified can be 'orgname.foo' rather than " @@ -1435,7 +1435,7 @@ msgstr "" "bibliothèques, le nom de l'enregistreur spécifié peut être ``orgname.foo`` " "plutôt que simplement ``foo``." -#: howto/logging.rst:835 +#: howto/logging.rst:834 msgid "" "It is strongly advised that you *do not add any handlers other than* :class:" "`~logging.NullHandler` *to your library's loggers*. This is because the " @@ -1454,11 +1454,11 @@ msgstr "" "le manteau », vous pourriez bien interférer avec les tests unitaires et la " "journalisation qui convient à ses exigences." -#: howto/logging.rst:846 +#: howto/logging.rst:845 msgid "Logging Levels" msgstr "Niveaux de journalisation" -#: howto/logging.rst:848 +#: howto/logging.rst:847 msgid "" "The numeric values of logging levels are given in the following table. These " "are primarily of interest if you want to define your own levels, and need " @@ -1472,39 +1472,39 @@ msgstr "" "prédéfinis. Si vous définissez un niveau avec la même valeur numérique, il " "écrase la valeur prédéfinie ; le nom prédéfini est perdu." -#: howto/logging.rst:855 +#: howto/logging.rst:854 msgid "Numeric value" msgstr "Valeur numérique" -#: howto/logging.rst:857 +#: howto/logging.rst:856 msgid "50" msgstr "50" -#: howto/logging.rst:859 +#: howto/logging.rst:858 msgid "40" msgstr "40" -#: howto/logging.rst:861 +#: howto/logging.rst:860 msgid "30" msgstr "30" -#: howto/logging.rst:863 +#: howto/logging.rst:862 msgid "20" msgstr "20" -#: howto/logging.rst:865 +#: howto/logging.rst:864 msgid "10" msgstr "10" -#: howto/logging.rst:867 +#: howto/logging.rst:866 msgid "``NOTSET``" msgstr "``NOTSET``" -#: howto/logging.rst:867 +#: howto/logging.rst:866 msgid "0" msgstr "0" -#: howto/logging.rst:870 +#: howto/logging.rst:869 msgid "" "Levels can also be associated with loggers, being set either by the " "developer or through loading a saved logging configuration. When a logging " @@ -1522,7 +1522,7 @@ msgstr "" "réellement généré. C'est le mécanisme de base contrôlant la verbosité de la " "sortie de journalisation." -#: howto/logging.rst:877 +#: howto/logging.rst:876 msgid "" "Logging messages are encoded as instances of the :class:`~logging.LogRecord` " "class. When a logger decides to actually log an event, a :class:`~logging." @@ -1533,7 +1533,7 @@ msgstr "" "enregistrer un événement, une instance de :class:`~logging.LogRecord` est " "créée à partir du message de journalisation." -#: howto/logging.rst:881 +#: howto/logging.rst:880 msgid "" "Logging messages are subjected to a dispatch mechanism through the use of :" "dfn:`handlers`, which are instances of subclasses of the :class:`Handler` " @@ -1567,7 +1567,7 @@ msgstr "" "enregistreur soit défini sur la valeur ``False``, auquel cas le passage à " "l'ancêtre gestionnaires s'arrête)." -#: howto/logging.rst:895 +#: howto/logging.rst:894 msgid "" "Just as for loggers, handlers can have levels associated with them. A " "handler's level acts as a filter in the same way as a logger's level does. " @@ -1584,11 +1584,11 @@ msgstr "" "classes définies par l'utilisateur de :class:`Handler` devront remplacer ce :" "meth:`~Handler.emit`." -#: howto/logging.rst:904 +#: howto/logging.rst:903 msgid "Custom Levels" msgstr "Niveaux personnalisés" -#: howto/logging.rst:906 +#: howto/logging.rst:905 msgid "" "Defining your own levels is possible, but should not be necessary, as the " "existing levels have been chosen on the basis of practical experience. " @@ -1612,11 +1612,11 @@ msgstr "" "contrôler et/ou interpréter, car une valeur numérique donnée peut signifier " "des choses différentes pour différentes bibliothèques." -#: howto/logging.rst:919 +#: howto/logging.rst:918 msgid "Useful Handlers" msgstr "Gestionnaires utiles" -#: howto/logging.rst:921 +#: howto/logging.rst:920 msgid "" "In addition to the base :class:`Handler` class, many useful subclasses are " "provided:" @@ -1624,7 +1624,7 @@ msgstr "" "En plus de la classe de base :class:`Handler`, de nombreuses sous-classes " "utiles sont fournies :" -#: howto/logging.rst:924 +#: howto/logging.rst:923 msgid "" ":class:`StreamHandler` instances send messages to streams (file-like " "objects)." @@ -1632,13 +1632,13 @@ msgstr "" "Les instances :class:`StreamHandler` envoient des messages aux flux (objets " "de type fichier)." -#: howto/logging.rst:927 +#: howto/logging.rst:926 msgid ":class:`FileHandler` instances send messages to disk files." msgstr "" "Les instances :class:`FileHandler` envoient des messages à des fichiers sur " "le disque." -#: howto/logging.rst:929 +#: howto/logging.rst:928 msgid "" ":class:`~handlers.BaseRotatingHandler` is the base class for handlers that " "rotate log files at a certain point. It is not meant to be instantiated " @@ -1651,7 +1651,7 @@ msgstr "" "directement. Utilisez plutôt :class:`~handlers.RotatingFileHandler` ou :" "class:`~handlers.TimedRotatingFileHandler`." -#: howto/logging.rst:934 +#: howto/logging.rst:933 msgid "" ":class:`~handlers.RotatingFileHandler` instances send messages to disk " "files, with support for maximum log file sizes and log file rotation." @@ -1660,7 +1660,7 @@ msgstr "" "des fichiers sur le disque, avec la prise en charge des tailles maximales de " "fichiers de journalisation et de la rotation des fichiers de journalisation." -#: howto/logging.rst:937 +#: howto/logging.rst:936 msgid "" ":class:`~handlers.TimedRotatingFileHandler` instances send messages to disk " "files, rotating the log file at certain timed intervals." @@ -1669,7 +1669,7 @@ msgstr "" "messages aux fichiers de disque, en permutant le fichier journal à " "intervalles réguliers." -#: howto/logging.rst:940 +#: howto/logging.rst:939 msgid "" ":class:`~handlers.SocketHandler` instances send messages to TCP/IP sockets. " "Since 3.4, Unix domain sockets are also supported." @@ -1678,7 +1678,7 @@ msgstr "" "connecteurs TCP/IP. Depuis 3.4, les connecteurs UNIX sont également pris en " "charge." -#: howto/logging.rst:943 +#: howto/logging.rst:942 msgid "" ":class:`~handlers.DatagramHandler` instances send messages to UDP sockets. " "Since 3.4, Unix domain sockets are also supported." @@ -1687,7 +1687,7 @@ msgstr "" "aux connecteurs UDP. Depuis 3.4, les connecteurs UNIX sont également pris en " "charge." -#: howto/logging.rst:946 +#: howto/logging.rst:945 msgid "" ":class:`~handlers.SMTPHandler` instances send messages to a designated email " "address." @@ -1695,7 +1695,7 @@ msgstr "" "Les instances de :class:`~handlers.SMTPHandler` envoient des messages à une " "adresse e-mail désignée." -#: howto/logging.rst:949 +#: howto/logging.rst:948 msgid "" ":class:`~handlers.SysLogHandler` instances send messages to a Unix syslog " "daemon, possibly on a remote machine." @@ -1703,7 +1703,7 @@ msgstr "" "Les instances de :class:`~handlers.SysLogHandler` envoient des messages à un " "*daemon* *syslog* UNIX, éventuellement sur un ordinateur distant." -#: howto/logging.rst:952 +#: howto/logging.rst:951 msgid "" ":class:`~handlers.NTEventLogHandler` instances send messages to a Windows " "NT/2000/XP event log." @@ -1711,7 +1711,7 @@ msgstr "" "Les instances de :class:`~handlers.NTEventLogHandler` envoient des messages " "à un journal des événements Windows NT/2000/XP." -#: howto/logging.rst:955 +#: howto/logging.rst:954 msgid "" ":class:`~handlers.MemoryHandler` instances send messages to a buffer in " "memory, which is flushed whenever specific criteria are met." @@ -1720,7 +1720,7 @@ msgstr "" "tampon en mémoire, qui est vidé chaque fois que des critères spécifiques " "sont remplis." -#: howto/logging.rst:958 +#: howto/logging.rst:957 msgid "" ":class:`~handlers.HTTPHandler` instances send messages to an HTTP server " "using either ``GET`` or ``POST`` semantics." @@ -1728,7 +1728,7 @@ msgstr "" "Les instances de :class:`~handlers.HTTPHandler` envoient des messages à un " "serveur HTTP à l'aide de la sémantique ``GET`` ou ``POST``." -#: howto/logging.rst:961 +#: howto/logging.rst:960 msgid "" ":class:`~handlers.WatchedFileHandler` instances watch the file they are " "logging to. If the file changes, it is closed and reopened using the file " @@ -1741,7 +1741,7 @@ msgstr "" "les systèmes de type UNIX ; Windows ne prend pas en charge le mécanisme sous-" "jacent utilisé." -#: howto/logging.rst:966 +#: howto/logging.rst:965 msgid "" ":class:`~handlers.QueueHandler` instances send messages to a queue, such as " "those implemented in the :mod:`queue` or :mod:`multiprocessing` modules." @@ -1750,7 +1750,7 @@ msgstr "" "file d'attente, telles que celles implémentées dans les modules :mod:`queue` " "ou :mod:`multiprocessing`." -#: howto/logging.rst:969 +#: howto/logging.rst:968 msgid "" ":class:`NullHandler` instances do nothing with error messages. They are used " "by library developers who want to use logging, but want to avoid the 'No " @@ -1765,15 +1765,15 @@ msgstr "" "n'a pas configuré la journalisation. Voir :ref:`library-config` pour plus " "d'informations." -#: howto/logging.rst:975 +#: howto/logging.rst:974 msgid "The :class:`NullHandler` class." msgstr "La classe :class:`NullHandler`." -#: howto/logging.rst:978 +#: howto/logging.rst:977 msgid "The :class:`~handlers.QueueHandler` class." msgstr "La classe :class:`~handlers.QueueHandler`." -#: howto/logging.rst:981 +#: howto/logging.rst:980 msgid "" "The :class:`NullHandler`, :class:`StreamHandler` and :class:`FileHandler` " "classes are defined in the core logging package. The other handlers are " @@ -1786,7 +1786,7 @@ msgstr "" "handlers` (il existe également un autre sous-module, :mod:`logging.config`, " "pour la fonctionnalité de configuration)." -#: howto/logging.rst:986 +#: howto/logging.rst:985 msgid "" "Logged messages are formatted for presentation through instances of the :" "class:`Formatter` class. They are initialized with a format string suitable " @@ -1797,7 +1797,7 @@ msgstr "" "chaîne de format appropriée pour une utilisation avec l'opérateur % et un " "dictionnaire." -#: howto/logging.rst:990 +#: howto/logging.rst:989 msgid "" "For formatting multiple messages in a batch, instances of :class:`~handlers." "BufferingFormatter` can be used. In addition to the format string (which is " @@ -1809,7 +1809,7 @@ msgstr "" "de format (qui est appliquée à chaque message dans le lot), il existe des " "dispositions pour les chaînes de format d'en-tête et de fin." -#: howto/logging.rst:995 +#: howto/logging.rst:994 msgid "" "When filtering based on logger level and/or handler level is not enough, " "instances of :class:`Filter` can be added to both :class:`Logger` and :class:" @@ -1826,7 +1826,7 @@ msgstr "" "consultent tous leurs filtres pour obtenir l'autorisation. Si un filtre " "renvoie une valeur ``False``, le traitement du message est arrêté." -#: howto/logging.rst:1002 +#: howto/logging.rst:1001 msgid "" "The basic :class:`Filter` functionality allows filtering by specific logger " "name. If this feature is used, messages sent to the named logger and its " @@ -1837,11 +1837,11 @@ msgstr "" "envoyés à l'enregistreur nommé et à ses enfants sont autorisés via le filtre " "et tous les autres sont abandonnés." -#: howto/logging.rst:1010 +#: howto/logging.rst:1009 msgid "Exceptions raised during logging" msgstr "Exceptions levées par la journalisation" -#: howto/logging.rst:1012 +#: howto/logging.rst:1011 msgid "" "The logging package is designed to swallow exceptions which occur while " "logging in production. This is so that errors which occur while handling " @@ -1855,7 +1855,7 @@ msgstr "" "journalisation, une erreur réseau ou d'autres erreurs similaires) ne " "provoquent pas l'arrêt de l'application utilisant la journalisation." -#: howto/logging.rst:1017 +#: howto/logging.rst:1016 msgid "" ":class:`SystemExit` and :class:`KeyboardInterrupt` exceptions are never " "swallowed. Other exceptions which occur during the :meth:`~Handler.emit` " @@ -1867,7 +1867,7 @@ msgstr "" "la méthode :meth:`~Handler.emit` d'une sous classe :class:`Handler` sont " "passées à sa méthode :meth:`~Handler.handleError`." -#: howto/logging.rst:1022 +#: howto/logging.rst:1021 msgid "" "The default implementation of :meth:`~Handler.handleError` in :class:" "`Handler` checks to see if a module-level variable, :data:`raiseExceptions`, " @@ -1880,7 +1880,7 @@ msgstr "" "pile d'appels est affichée sur :data:`sys.stderr`. Si elle n'est pas " "définie, l'exception est passée sous silence." -#: howto/logging.rst:1027 +#: howto/logging.rst:1026 msgid "" "The default value of :data:`raiseExceptions` is ``True``. This is because " "during development, you typically want to be notified of any exceptions that " @@ -1892,11 +1892,11 @@ msgstr "" "toutes les exceptions qui se produisent. Il est conseillé de définir :data:" "`raiseExceptions` à ``False`` pour une utilisation en production." -#: howto/logging.rst:1037 +#: howto/logging.rst:1036 msgid "Using arbitrary objects as messages" msgstr "Utilisation d'objets arbitraires comme messages" -#: howto/logging.rst:1039 +#: howto/logging.rst:1038 msgid "" "In the preceding sections and examples, it has been assumed that the message " "passed when logging the event is a string. However, this is not the only " @@ -1917,11 +1917,11 @@ msgstr "" "gestionnaires :class:`~handlers.SocketHandler` émettent un événement en lui " "appliquant *pickle* et en l'envoyant sur le réseau." -#: howto/logging.rst:1050 +#: howto/logging.rst:1049 msgid "Optimization" msgstr "Optimisation" -#: howto/logging.rst:1052 +#: howto/logging.rst:1051 msgid "" "Formatting of message arguments is deferred until it cannot be avoided. " "However, computing the arguments passed to the logging method can also be " @@ -1940,7 +1940,7 @@ msgstr "" "renvoie ``True`` si un événement est créé par l'enregistreur pour ce niveau " "d'appel. Vous pouvez écrire un code qui ressemble à ça ::" -#: howto/logging.rst:1064 +#: howto/logging.rst:1063 msgid "" "so that if the logger's threshold is set above ``DEBUG``, the calls to :func:" "`expensive_func1` and :func:`expensive_func2` are never made." @@ -1949,7 +1949,7 @@ msgstr "" "les appels à :func:`expensive_func1` et :func:`expensive_func2` ne sont " "jamais faits." -#: howto/logging.rst:1067 +#: howto/logging.rst:1066 msgid "" "In some cases, :meth:`~Logger.isEnabledFor` can itself be more expensive " "than you'd like (e.g. for deeply nested loggers where an explicit level is " @@ -1971,7 +1971,7 @@ msgstr "" "configuration de journalisation change dynamiquement pendant l'exécution de " "l'application (ce qui est rarement le cas)." -#: howto/logging.rst:1076 +#: howto/logging.rst:1075 msgid "" "There are other optimizations which can be made for specific applications " "which need more precise control over what logging information is collected. " @@ -1984,19 +1984,19 @@ msgstr "" "vous pouvez faire pour éviter le traitement pendant la journalisation dont " "vous n'avez pas besoin :" -#: howto/logging.rst:1082 +#: howto/logging.rst:1081 msgid "What you don't want to collect" msgstr "Ce que vous ne voulez pas collecter" -#: howto/logging.rst:1082 +#: howto/logging.rst:1081 msgid "How to avoid collecting it" msgstr "Comment éviter de le collecter" -#: howto/logging.rst:1084 +#: howto/logging.rst:1083 msgid "Information about where calls were made from." msgstr "Informations sur l'endroit où les appels ont été faits." -#: howto/logging.rst:1084 +#: howto/logging.rst:1083 msgid "" "Set ``logging._srcfile`` to ``None``. This avoids calling :func:`sys." "_getframe`, which may help to speed up your code in environments like PyPy " @@ -2007,23 +2007,36 @@ msgstr "" "comme PyPy (qui ne peut pas accélérer le code qui utilise :func:`sys." "_getframe`)." -#: howto/logging.rst:1091 +#: howto/logging.rst:1089 msgid "Threading information." msgstr "Informations de *threading*." -#: howto/logging.rst:1091 -msgid "Set ``logging.logThreads`` to ``0``." +#: howto/logging.rst:1089 +#, fuzzy +msgid "Set ``logging.logThreads`` to ``False``." msgstr "Mettez ``logging.logThreads`` à ``0``." +#: howto/logging.rst:1091 +msgid "Current process ID (:func:`os.getpid`)" +msgstr "" + +#: howto/logging.rst:1091 +#, fuzzy +msgid "Set ``logging.logProcesses`` to ``False``." +msgstr "Mettez ``logging.logProcesses`` à ``0``." + #: howto/logging.rst:1093 -msgid "Process information." -msgstr "Informations sur le processus." +msgid "" +"Current process name when using ``multiprocessing`` to manage multiple " +"processes." +msgstr "" #: howto/logging.rst:1093 -msgid "Set ``logging.logProcesses`` to ``0``." +#, fuzzy +msgid "Set ``logging.logMultiprocessing`` to ``False``." msgstr "Mettez ``logging.logProcesses`` à ``0``." -#: howto/logging.rst:1096 +#: howto/logging.rst:1097 msgid "" "Also note that the core logging module only includes the basic handlers. If " "you don't import :mod:`logging.handlers` and :mod:`logging.config`, they " @@ -2033,30 +2046,33 @@ msgstr "" "les gestionnaires de base. Si vous n'importez pas :mod:`logging.handlers` " "et :mod:`logging.config`, ils ne prendront pas de mémoire." -#: howto/logging.rst:1103 +#: howto/logging.rst:1104 msgid "Module :mod:`logging`" msgstr "Module :mod:`logging`" -#: howto/logging.rst:1103 +#: howto/logging.rst:1104 msgid "API reference for the logging module." msgstr "Référence d'API pour le module de journalisation." -#: howto/logging.rst:1106 +#: howto/logging.rst:1107 msgid "Module :mod:`logging.config`" msgstr "Module :mod:`logging.config`" -#: howto/logging.rst:1106 +#: howto/logging.rst:1107 msgid "Configuration API for the logging module." msgstr "API de configuration pour le module de journalisation." -#: howto/logging.rst:1109 +#: howto/logging.rst:1110 msgid "Module :mod:`logging.handlers`" msgstr "Module :mod:`logging.handlers`" -#: howto/logging.rst:1109 +#: howto/logging.rst:1110 msgid "Useful handlers included with the logging module." msgstr "Gestionnaires utiles inclus avec le module de journalisation." -#: howto/logging.rst:1111 +#: howto/logging.rst:1112 msgid ":ref:`A logging cookbook `" msgstr ":ref:`A logging cookbook `" + +#~ msgid "Process information." +#~ msgstr "Informations sur le processus." diff --git a/howto/pyporting.po b/howto/pyporting.po index e18dfabd0..ba0419e10 100644 --- a/howto/pyporting.po +++ b/howto/pyporting.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-01-28 15:50+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -61,10 +61,11 @@ msgstr "" "qui a motivé la création de Python 3, vous pouvez lire le `Python 3 Q & A`_ " "de Nick Coghlan ou bien `Why Python 3 exists`_ de Brett Cannon." -#: howto/pyporting.rst:23 +#: howto/pyporting.rst:24 +#, fuzzy msgid "" -"For help with porting, you can email the python-porting_ mailing list with " -"questions." +"For help with porting, you can view the archived python-porting_ mailing " +"list." msgstr "" "Vous pouvez solliciter par courriel l'aide de la liste de diffusion python-" "porting_ pour vos questions liées au portage." diff --git a/howto/sockets.po b/howto/sockets.po index 1bf566f59..5a44f94fa 100644 --- a/howto/sockets.po +++ b/howto/sockets.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-09-30 17:07+0200\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -111,9 +111,10 @@ msgstr "" "près la seule solution valable." #: howto/sockets.rst:47 +#, fuzzy msgid "" "They were invented in Berkeley as part of the BSD flavor of Unix. They " -"spread like wildfire with the Internet. With good reason --- the combination " +"spread like wildfire with the internet. With good reason --- the combination " "of sockets with INET makes talking to arbitrary machines around the world " "unbelievably easy (at least compared to other schemes)." msgstr "" diff --git a/howto/sorting.po b/howto/sorting.po index e63244675..c9cf2c22a 100644 --- a/howto/sorting.po +++ b/howto/sorting.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-01-28 15:46+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -58,14 +58,15 @@ msgid "Sorting Basics" msgstr "Les bases du tri" #: howto/sorting.rst:20 +#, fuzzy msgid "" "A simple ascending sort is very easy: just call the :func:`sorted` function. " -"It returns a new sorted list::" +"It returns a new sorted list:" msgstr "" "Un tri ascendant simple est très facile : il suffit d'appeler la fonction :" "func:`sorted`. Elle renvoie une nouvelle liste triée ::" -#: howto/sorting.rst:26 +#: howto/sorting.rst:28 msgid "" "You can also use the :meth:`list.sort` method. It modifies the list in-place " "(and returns ``None`` to avoid confusion). Usually it's less convenient " @@ -78,7 +79,7 @@ msgstr "" "`sorted` -- mais si vous n'avez pas besoin de la liste originale, cette " "technique est légèrement plus efficace." -#: howto/sorting.rst:36 +#: howto/sorting.rst:40 msgid "" "Another difference is that the :meth:`list.sort` method is only defined for " "lists. In contrast, the :func:`sorted` function accepts any iterable." @@ -87,11 +88,11 @@ msgstr "" "définie pour les listes. Au contraire, la fonction :func:`sorted` accepte " "n'importe quel itérable." -#: howto/sorting.rst:43 +#: howto/sorting.rst:49 msgid "Key Functions" msgstr "Fonctions clef" -#: howto/sorting.rst:45 +#: howto/sorting.rst:51 msgid "" "Both :meth:`list.sort` and :func:`sorted` have a *key* parameter to specify " "a function (or other callable) to be called on each list element prior to " @@ -101,11 +102,11 @@ msgstr "" "une fonction (ou autre appelable) qui peut être appelée sur chaque élément " "de la liste avant d'effectuer des comparaisons." -#: howto/sorting.rst:49 +#: howto/sorting.rst:55 msgid "For example, here's a case-insensitive string comparison:" msgstr "Par exemple, voici une comparaison de texte insensible à la casse:" -#: howto/sorting.rst:54 +#: howto/sorting.rst:62 msgid "" "The value of the *key* parameter should be a function (or other callable) " "that takes a single argument and returns a key to use for sorting purposes. " @@ -117,7 +118,7 @@ msgstr "" "Cette technique est rapide car la fonction clef est appelée exactement une " "seule fois pour chaque enregistrement en entrée." -#: howto/sorting.rst:59 +#: howto/sorting.rst:67 msgid "" "A common pattern is to sort complex objects using some of the object's " "indices as keys. For example:" @@ -125,18 +126,18 @@ msgstr "" "Un usage fréquent est de faire un tri sur des objets complexes en utilisant " "les indices des objets en tant que clef. Par exemple :" -#: howto/sorting.rst:70 +#: howto/sorting.rst:80 msgid "" "The same technique works for objects with named attributes. For example:" msgstr "" "La même technique marche pour des objets avec des attributs nommés. Par " "exemple :" -#: howto/sorting.rst:89 +#: howto/sorting.rst:101 msgid "Operator Module Functions" msgstr "Fonctions du module *operator*" -#: howto/sorting.rst:91 +#: howto/sorting.rst:103 msgid "" "The key-function patterns shown above are very common, so Python provides " "convenience functions to make accessor functions easier and faster. The :mod:" @@ -149,13 +150,13 @@ msgstr "" "func:`~operator.itemgetter`, :func:`~operator.attrgetter`, et :func:" "`~operator.methodcaller`." -#: howto/sorting.rst:96 +#: howto/sorting.rst:108 msgid "Using those functions, the above examples become simpler and faster:" msgstr "" "En utilisant ces fonctions, les exemples au dessus deviennent plus simples " "et plus rapides :" -#: howto/sorting.rst:106 +#: howto/sorting.rst:120 msgid "" "The operator module functions allow multiple levels of sorting. For example, " "to sort by *grade* then by *age*:" @@ -163,11 +164,11 @@ msgstr "" "Les fonctions du module *operator* permettent plusieurs niveaux de tri. Par " "exemple, pour trier par *grade* puis par *age* :" -#: howto/sorting.rst:116 +#: howto/sorting.rst:132 msgid "Ascending and Descending" msgstr "Ascendant et descendant" -#: howto/sorting.rst:118 +#: howto/sorting.rst:134 msgid "" "Both :meth:`list.sort` and :func:`sorted` accept a *reverse* parameter with " "a boolean value. This is used to flag descending sorts. For example, to get " @@ -178,11 +179,11 @@ msgstr "" "des tris. Par exemple, pour avoir les données des étudiants dans l'ordre " "inverse par *age* :" -#: howto/sorting.rst:129 +#: howto/sorting.rst:147 msgid "Sort Stability and Complex Sorts" msgstr "Stabilité des tris et tris complexes" -#: howto/sorting.rst:131 +#: howto/sorting.rst:149 msgid "" "Sorts are guaranteed to be `stable `_\\. That means that when multiple records have " @@ -192,7 +193,7 @@ msgstr "" "Algorithme_de_tri#Caract.C3.A8re_stable>`_\\. Cela signifie que lorsque " "plusieurs enregistrements on la même clef, leur ordre original est préservé." -#: howto/sorting.rst:139 +#: howto/sorting.rst:159 msgid "" "Notice how the two records for *blue* retain their original order so that " "``('blue', 1)`` is guaranteed to precede ``('blue', 2)``." @@ -201,7 +202,7 @@ msgstr "" "et que par conséquent il est garanti que ``('blue', 1)`` précède ``('blue', " "2)``." -#: howto/sorting.rst:142 +#: howto/sorting.rst:162 msgid "" "This wonderful property lets you build complex sorts in a series of sorting " "steps. For example, to sort the student data by descending *grade* and then " @@ -212,7 +213,7 @@ msgstr "" "des étudiants en ordre descendant par *grade* puis en ordre ascendant par " "*age*, effectuez un tri par *age* en premier puis un second tri par *grade* :" -#: howto/sorting.rst:150 +#: howto/sorting.rst:172 msgid "" "This can be abstracted out into a wrapper function that can take a list and " "tuples of field and order to sort them on multiple passes." @@ -220,7 +221,7 @@ msgstr "" "Ceci peut être encapsulé dans une fonction qui prend une liste et des n-" "uplets (attribut, ordre) pour les trier en plusieurs passes." -#: howto/sorting.rst:161 +#: howto/sorting.rst:185 msgid "" "The `Timsort `_ algorithm used in " "Python does multiple sorts efficiently because it can take advantage of any " @@ -230,17 +231,17 @@ msgstr "" "Python effectue de multiples tris efficacement parce qu'il peut tirer " "avantage de l'ordre existant dans un jeu de données." -#: howto/sorting.rst:166 +#: howto/sorting.rst:190 msgid "The Old Way Using Decorate-Sort-Undecorate" msgstr "La méthode traditionnelle utilisant Decorate-Sort-Undecorate" -#: howto/sorting.rst:168 +#: howto/sorting.rst:192 msgid "This idiom is called Decorate-Sort-Undecorate after its three steps:" msgstr "" "Cette technique est appelée Decorate-Sort-Undecorate et se base sur trois " "étapes :" -#: howto/sorting.rst:170 +#: howto/sorting.rst:194 msgid "" "First, the initial list is decorated with new values that control the sort " "order." @@ -248,11 +249,11 @@ msgstr "" "Premièrement, la liste de départ est décorée avec les nouvelles valeurs qui " "contrôlent l'ordre du tri." -#: howto/sorting.rst:172 +#: howto/sorting.rst:196 msgid "Second, the decorated list is sorted." msgstr "En second lieu, la liste décorée est triée." -#: howto/sorting.rst:174 +#: howto/sorting.rst:198 msgid "" "Finally, the decorations are removed, creating a list that contains only the " "initial values in the new order." @@ -260,14 +261,14 @@ msgstr "" "Enfin, la décoration est supprimée, créant ainsi une liste qui contient " "seulement la valeur initiale dans le nouvel ordre." -#: howto/sorting.rst:177 +#: howto/sorting.rst:201 msgid "" "For example, to sort the student data by *grade* using the DSU approach:" msgstr "" "Par exemple, pour trier les données étudiant par *grade* en utilisant " "l'approche DSU :" -#: howto/sorting.rst:184 +#: howto/sorting.rst:208 msgid "" "This idiom works because tuples are compared lexicographically; the first " "items are compared; if they are the same then the second items are compared, " @@ -277,7 +278,7 @@ msgstr "" "lexicographique; les premiers objets sont comparés; si il y a des objets " "identiques, alors l'objet suivant est comparé, et ainsi de suite." -#: howto/sorting.rst:188 +#: howto/sorting.rst:212 msgid "" "It is not strictly necessary in all cases to include the index *i* in the " "decorated list, but including it gives two benefits:" @@ -285,7 +286,7 @@ msgstr "" "Il n'est pas strictement nécessaire dans tous les cas d’inclure l'indice *i* " "dans la liste décorée, mais l'inclure donne deux avantages :" -#: howto/sorting.rst:191 +#: howto/sorting.rst:215 msgid "" "The sort is stable -- if two items have the same key, their order will be " "preserved in the sorted list." @@ -293,7 +294,7 @@ msgstr "" "Le tri est stable -- si deux objets on la même clef, leur ordre sera " "préservé dans la liste triée." -#: howto/sorting.rst:194 +#: howto/sorting.rst:218 msgid "" "The original items do not have to be comparable because the ordering of the " "decorated tuples will be determined by at most the first two items. So for " @@ -305,7 +306,7 @@ msgstr "" "par exemple la liste originale pourrait contenir des nombres complexes qui " "pourraient ne pas être triés directement." -#: howto/sorting.rst:199 +#: howto/sorting.rst:223 msgid "" "Another name for this idiom is `Schwartzian transform `_\\, after Randal L. Schwartz, who " @@ -315,7 +316,7 @@ msgstr "" "wikipedia.org/wiki/Schwartzian_transform>`_\\, après que Randal L. Schwartz " "l'ait popularisé chez les développeurs Perl." -#: howto/sorting.rst:203 +#: howto/sorting.rst:227 msgid "" "Now that Python sorting provides key-functions, this technique is not often " "needed." @@ -323,11 +324,11 @@ msgstr "" "Maintenant que le tri Python fournit des fonctions-clef, cette technique " "n'est plus souvent utilisée." -#: howto/sorting.rst:207 +#: howto/sorting.rst:231 msgid "The Old Way Using the *cmp* Parameter" msgstr "La méthode traditionnelle d'utiliser le paramètre *cmp*" -#: howto/sorting.rst:209 +#: howto/sorting.rst:233 msgid "" "Many constructs given in this HOWTO assume Python 2.4 or later. Before that, " "there was no :func:`sorted` builtin and :meth:`list.sort` took no keyword " @@ -340,7 +341,7 @@ msgstr "" "versions Python 2.x utilisaient un paramètre *cmp* pour prendre en charge " "les fonctions de comparaisons définies par les utilisateurs." -#: howto/sorting.rst:214 +#: howto/sorting.rst:238 msgid "" "In Py3.0, the *cmp* parameter was removed entirely (as part of a larger " "effort to simplify and unify the language, eliminating the conflict between " @@ -350,7 +351,7 @@ msgstr "" "effort plus général pour simplifier et unifier le langage, en éliminant le " "conflit entre les comparaisons riches et la méthode magique :meth:`__cmp__`)." -#: howto/sorting.rst:218 +#: howto/sorting.rst:242 msgid "" "In Py2.x, sort allowed an optional function which can be called for doing " "the comparisons. That function should take two arguments to be compared and " @@ -363,28 +364,29 @@ msgstr "" "inférieur-à, renvoyer zéro si ils sont égaux, ou renvoyer une valeur " "positive pour supérieur-à. Par exemple, nous pouvons faire :" -#: howto/sorting.rst:228 +#: howto/sorting.rst:254 msgid "Or you can reverse the order of comparison with:" msgstr "Ou nous pouvons inverser l'ordre de comparaison avec :" -#: howto/sorting.rst:235 +#: howto/sorting.rst:263 +#, fuzzy msgid "" "When porting code from Python 2.x to 3.x, the situation can arise when you " "have the user supplying a comparison function and you need to convert that " -"to a key function. The following wrapper makes that easy to do::" +"to a key function. The following wrapper makes that easy to do:" msgstr "" "En portant du code depuis Python 2.X vers 3.x, des problèmes peuvent " "survenir quand des utilisateurs fournissent une fonction de comparaison et " "qu'il faut convertir cette fonction en une fonction-clef. La fonction " "d'encapsulation suivante rend cela plus facile à faire ::" -#: howto/sorting.rst:258 +#: howto/sorting.rst:294 msgid "To convert to a key function, just wrap the old comparison function:" msgstr "" "Pour convertir une fonction clef, ils suffit d'encapsuler l'ancienne " "fonction de comparaison :" -#: howto/sorting.rst:269 +#: howto/sorting.rst:305 msgid "" "In Python 3.2, the :func:`functools.cmp_to_key` function was added to the :" "mod:`functools` module in the standard library." @@ -392,11 +394,11 @@ msgstr "" "En Python 3.2, la fonction :func:`functools.cmp_to_key` à été ajoutée au " "module :mod:`functools` dans la librairie standard." -#: howto/sorting.rst:273 +#: howto/sorting.rst:309 msgid "Odd and Ends" msgstr "Curiosités et conclusion" -#: howto/sorting.rst:275 +#: howto/sorting.rst:311 msgid "" "For locale aware sorting, use :func:`locale.strxfrm` for a key function or :" "func:`locale.strcoll` for a comparison function." @@ -404,7 +406,7 @@ msgstr "" "Pour du tri de texte localisé, utilisez :func:`locale.strxfrm` en tant que " "fonction clef ou :func:`locale.strcoll` comme fonction de comparaison." -#: howto/sorting.rst:278 +#: howto/sorting.rst:314 msgid "" "The *reverse* parameter still maintains sort stability (so that records with " "equal keys retain the original order). Interestingly, that effect can be " @@ -416,18 +418,19 @@ msgstr "" "cet effet peut être simulé sans le paramètre en utilisant la fonction " "native :func:`reversed` deux fois :" -#: howto/sorting.rst:290 +#: howto/sorting.rst:328 +#, fuzzy msgid "" "The sort routines are guaranteed to use :meth:`__lt__` when making " "comparisons between two objects. So, it is easy to add a standard sort order " -"to a class by defining an :meth:`__lt__` method::" +"to a class by defining an :meth:`__lt__` method:" msgstr "" "Il est garanti que les routines de tri utilisent les méthodes :meth:`__lt__` " "lorsqu'elles effectuent des comparaisons entre deux objets. Donc il est " "facile d'ajouter un ordre de tri standard à une classe en définissant sa " "méthode :meth:`__lt__` ::" -#: howto/sorting.rst:298 +#: howto/sorting.rst:338 msgid "" "Key functions need not depend directly on the objects being sorted. A key " "function can also access external resources. For instance, if the student " diff --git a/howto/unicode.po b/howto/unicode.po index c8ea85114..bd4039b7b 100644 --- a/howto/unicode.po +++ b/howto/unicode.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-09-30 17:16+0200\n" "Last-Translator: Melançon Victor \n" "Language-Team: FRENCH \n" @@ -1027,15 +1027,17 @@ msgid "Unicode filenames" msgstr "Noms de fichiers Unicode" #: howto/unicode.rst:606 +#, fuzzy msgid "" "Most of the operating systems in common use today support filenames that " "contain arbitrary Unicode characters. Usually this is implemented by " "converting the Unicode string into some encoding that varies depending on " "the system. Today Python is converging on using UTF-8: Python on MacOS has " "used UTF-8 for several versions, and Python 3.6 switched to using UTF-8 on " -"Windows as well. On Unix systems, there will only be a filesystem encoding " -"if you've set the ``LANG`` or ``LC_CTYPE`` environment variables; if you " -"haven't, the default encoding is again UTF-8." +"Windows as well. On Unix systems, there will only be a :term:`filesystem " +"encoding `. if you've set the " +"``LANG`` or ``LC_CTYPE`` environment variables; if you haven't, the default " +"encoding is again UTF-8." msgstr "" "La plupart des systèmes d'exploitation couramment utilisés aujourd'hui " "prennent en charge les noms de fichiers qui contiennent des caractères " @@ -1071,6 +1073,7 @@ msgstr "" "également les noms de fichiers Unicode." #: howto/unicode.rst:629 +#, fuzzy msgid "" "The :func:`os.listdir` function returns filenames, which raises an issue: " "should it return the Unicode version of filenames, or should it return bytes " @@ -1079,8 +1082,8 @@ msgid "" "you pass a Unicode string as the path, filenames will be decoded using the " "filesystem's encoding and a list of Unicode strings will be returned, while " "passing a byte path will return the filenames as bytes. For example, " -"assuming the default filesystem encoding is UTF-8, running the following " -"program::" +"assuming the default :term:`filesystem encoding ` is UTF-8, running the following program::" msgstr "" "La fonction :func:`os.listdir` renvoie des noms de fichiers, ce qui soulève " "un problème : doit-elle renvoyer la version Unicode des noms de fichiers ou " diff --git a/install/index.po b/install/index.po index d6552a6d5..37c122e13 100644 --- a/install/index.po +++ b/install/index.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-24 17:33+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-04-27 15:27+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -27,11 +27,19 @@ msgstr "Auteur" msgid "Greg Ward" msgstr "Greg Ward" -#: install/index.rst:16 +#: install/index.rst:15 +msgid "" +"The entire ``distutils`` package has been deprecated and will be removed in " +"Python 3.12. This documentation is retained as a reference only, and will be " +"removed with the package. See the :ref:`What's New ` " +"entry for more information." +msgstr "" + +#: install/index.rst:23 msgid ":ref:`installing-index`" msgstr ":ref:`installing-index`" -#: install/index.rst:16 +#: install/index.rst:23 msgid "" "The up to date module installation documentation. For regular Python usage, " "you almost certainly want that document rather than this one." @@ -50,7 +58,7 @@ msgstr "" "html couvre de manière indépendante toutes les informations pertinentes " "actuellement incluses ici." -#: install/index.rst:23 +#: install/index.rst:30 msgid "" "This guide only covers the basic tools for building and distributing " "extensions that are provided as part of this version of Python. Third party " @@ -65,11 +73,11 @@ msgstr "" "recommendations/>`__ dans le *Python Packaging User Guide* pour plus " "d'informations." -#: install/index.rst:34 +#: install/index.rst:41 msgid "Introduction" msgstr "Introduction" -#: install/index.rst:36 +#: install/index.rst:43 msgid "" "In Python 2.0, the ``distutils`` API was first added to the standard " "library. This provided Linux distro maintainers with a standard way of " @@ -83,7 +91,7 @@ msgstr "" "administrateurs système une façon standard de les installer directement sur " "les systèmes cibles." -#: install/index.rst:41 +#: install/index.rst:48 msgid "" "In the many years since Python 2.0 was released, tightly coupling the build " "system and package installer to the language runtime release cycle has " @@ -97,14 +105,14 @@ msgstr "" "gestionnaire de paquets ``pip`` ainsi que le système d'intégration " "``setuptools`` plutôt que d'utiliser ``distutils`` directement." -#: install/index.rst:47 +#: install/index.rst:54 msgid "" "See :ref:`installing-index` and :ref:`distributing-index` for more details." msgstr "" "Voir :ref:`installing-index` et :ref:`distributing-index` pour plus de " "détails." -#: install/index.rst:49 +#: install/index.rst:56 msgid "" "This legacy documentation is being retained only until we're confident that " "the ``setuptools`` documentation covers everything needed." @@ -113,11 +121,11 @@ msgstr "" "certains que la documentation sur ``setuptools`` couvre tout ce qui est " "nécessaire." -#: install/index.rst:55 +#: install/index.rst:62 msgid "Distutils based source distributions" msgstr "Distributions basées sur *distutils*" -#: install/index.rst:57 +#: install/index.rst:64 msgid "" "If you download a module source distribution, you can tell pretty quickly if " "it was packaged and distributed in the standard way, i.e. using the " @@ -142,7 +150,7 @@ msgstr "" "doit expliquer que la construction et l'installation de la distribution du " "module se fait simplement en exécutant ceci ::" -#: install/index.rst:70 +#: install/index.rst:77 msgid "" "For Windows, this command should be run from a command prompt window (:" "menuselection:`Start --> Accessories`)::" @@ -150,7 +158,7 @@ msgstr "" "Sous Windows, cette commande doit être lancée depuis une invite de commande " "(:menuselection:`Démarrer --> Accessoires`) ::" -#: install/index.rst:75 +#: install/index.rst:82 msgid "" "If all these things are true, then you already know how to build and install " "the modules you've just downloaded: Run the command above. Unless you need " @@ -165,11 +173,11 @@ msgstr "" "construction, vous n'avez pas vraiment besoin de ce manuel. Ou plutôt, la " "commande ci-dessus est tout ce dont vous avez besoin de retenir de ce manuel." -#: install/index.rst:85 +#: install/index.rst:92 msgid "Standard Build and Install" msgstr "Construction standard et installation" -#: install/index.rst:87 +#: install/index.rst:94 msgid "" "As described in section :ref:`inst-new-standard`, building and installing a " "module distribution using the Distutils is usually one simple command to run " @@ -179,11 +187,11 @@ msgstr "" "installer une distribution de modules en utilisant les Distutils consiste " "généralement à exécuter une simple commande dans un terminal ::" -#: install/index.rst:97 +#: install/index.rst:104 msgid "Platform variations" msgstr "Différences selon les plateformes" -#: install/index.rst:99 +#: install/index.rst:106 msgid "" "You should always run the setup command from the distribution root " "directory, i.e. the top-level subdirectory that the module source " @@ -198,7 +206,7 @@ msgstr "" "distribution du module :file:`foo-1.0.tar.gz` sous un système UNIX, la " "méthode normale consiste à faire ::" -#: install/index.rst:108 +#: install/index.rst:115 msgid "" "On Windows, you'd probably download :file:`foo-1.0.zip`. If you downloaded " "the archive file to :file:`C:\\\\Temp`, then it would unpack into :file:`C:\\" @@ -215,11 +223,11 @@ msgstr "" "pour décompresser l'archive. Ensuite, ouvrez une fenêtre d'invite de " "commandes et exécutez ::" -#: install/index.rst:122 +#: install/index.rst:129 msgid "Splitting the job up" msgstr "Fractionnement du travail" -#: install/index.rst:124 +#: install/index.rst:131 msgid "" "Running ``setup.py install`` builds and installs all modules in one run. If " "you prefer to work incrementally---especially useful if you want to " @@ -241,7 +249,7 @@ msgstr "" "l'installation (ou le faire vous-même, avec les privilèges de super-" "utilisateur)." -#: install/index.rst:132 +#: install/index.rst:139 msgid "" "For example, you can build everything in one step, and then install " "everything in a second step, by invoking the setup script twice::" @@ -250,7 +258,7 @@ msgstr "" "installer le tout dans une deuxième étape, en invoquant le script " "d'installation deux fois ::" -#: install/index.rst:138 +#: install/index.rst:145 msgid "" "If you do this, you will notice that running the :command:`install` command " "first runs the :command:`build` command, which---in this case---quickly " @@ -262,7 +270,7 @@ msgstr "" "cas, s'aperçoit vite qu'il n'a rien à faire, puisque tout dans le dossier :" "file:`build` est à jour." -#: install/index.rst:143 +#: install/index.rst:150 msgid "" "You may not need this ability to break things down often if all you do is " "install modules downloaded off the 'net, but it's very handy for more " @@ -276,11 +284,11 @@ msgstr "" "Python, vous allez exécuter beaucoup de commandes individuelles de " "Distutils, indépendamment les unes des autres." -#: install/index.rst:152 +#: install/index.rst:159 msgid "How building works" msgstr "Comment fonctionne une construction" -#: install/index.rst:154 +#: install/index.rst:161 msgid "" "As implied above, the :command:`build` command is responsible for putting " "the files to install into a *build directory*. By default, this is :file:" @@ -295,7 +303,7 @@ msgstr "" "sources d'origine, vous pouvez changer le répertoire de construction avec " "l'option :option:`!--build-base`. Par exemple ::" -#: install/index.rst:162 +#: install/index.rst:169 msgid "" "(Or you could do this permanently with a directive in your system or " "personal Distutils configuration file; see section :ref:`inst-config-" @@ -305,13 +313,13 @@ msgstr "" "système ou dans le fichier de configuration personnelle de Distutils ; voir " "la section :ref:`inst-config-files`.) Normalement, ce n'est pas nécessaire." -#: install/index.rst:166 +#: install/index.rst:173 msgid "The default layout for the build tree is as follows::" msgstr "" "L'arborescence par défaut produite par la compilation se présente comme " "suit ::" -#: install/index.rst:173 +#: install/index.rst:180 msgid "" "where ```` expands to a brief description of the current OS/hardware " "platform and Python version. The first form, with just a :file:`lib` " @@ -337,7 +345,7 @@ msgstr "" "`) contient tous les modules Python (Python pur et extensions) qui seront " "installés." -#: install/index.rst:183 +#: install/index.rst:190 msgid "" "In the future, more directories will be added to handle Python scripts, " "documentation, binary executables, and whatever else is needed to handle the " @@ -348,11 +356,11 @@ msgstr "" "nécessaire pour gérer le travail de l'installation de modules et " "d'applications Python." -#: install/index.rst:191 +#: install/index.rst:198 msgid "How installation works" msgstr "Comment fonctionne l'installation" -#: install/index.rst:193 +#: install/index.rst:200 msgid "" "After the :command:`build` command runs (whether you run it explicitly, or " "the :command:`install` command does it for you), the work of the :command:" @@ -367,13 +375,14 @@ msgstr "" "file:`build/lib.{plat}`) dans le répertoire que vous avez choisi pour " "l'installation." -#: install/index.rst:199 +#: install/index.rst:206 +#, fuzzy msgid "" "If you don't choose an installation directory---i.e., if you just run " "``setup.py install``\\ ---then the :command:`install` command installs to " "the standard location for third-party Python modules. This location varies " -"by platform and by how you built/installed Python itself. On Unix (and Mac " -"OS X, which is also Unix-based), it also depends on whether the module " +"by platform and by how you built/installed Python itself. On Unix (and " +"macOS, which is also Unix-based), it also depends on whether the module " "distribution being installed is pure Python or contains extensions (\"non-" "pure\"):" msgstr "" @@ -386,67 +395,67 @@ msgstr "" "distribution en cours d'installation, suivant qu'il est en pur Python ou " "s'il contient des extensions (« non-pur ») :" -#: install/index.rst:209 +#: install/index.rst:216 msgid "Platform" msgstr "Plateforme" -#: install/index.rst:209 +#: install/index.rst:216 msgid "Standard installation location" msgstr "Emplacement standard de l'installation" -#: install/index.rst:209 +#: install/index.rst:216 msgid "Default value" msgstr "Valeur par défaut" -#: install/index.rst:735 install/index.rst:747 +#: install/index.rst:742 install/index.rst:754 msgid "Notes" msgstr "Notes" -#: install/index.rst:211 +#: install/index.rst:218 msgid "Unix (pure)" msgstr "UNIX (pur)" -#: install/index.rst:424 +#: install/index.rst:431 msgid ":file:`{prefix}/lib/python{X.Y}/site-packages`" msgstr ":file:`{prefix}/lib/python{X.Y}/site-packages`" -#: install/index.rst:213 +#: install/index.rst:220 msgid ":file:`/usr/local/lib/python{X.Y}/site-packages`" msgstr ":file:`/usr/local/lib/python{X.Y}/site-packages`" -#: install/index.rst:213 install/index.rst:737 +#: install/index.rst:220 install/index.rst:744 msgid "\\(1)" msgstr "\\(1)" -#: install/index.rst:213 +#: install/index.rst:220 msgid "Unix (non-pure)" msgstr "UNIX (non-pur)" -#: install/index.rst:425 +#: install/index.rst:432 msgid ":file:`{exec-prefix}/lib/python{X.Y}/site-packages`" msgstr ":file:`{exec-prefix}/lib/python{X.Y}/site-packages`" -#: install/index.rst:215 +#: install/index.rst:222 msgid "Windows" msgstr "Windows" -#: install/index.rst:476 +#: install/index.rst:483 msgid ":file:`{prefix}\\\\Lib\\\\site-packages`" msgstr ":file:`{prefix}\\\\Lib\\\\site-packages`" -#: install/index.rst:215 +#: install/index.rst:222 msgid ":file:`C:\\\\Python{XY}\\\\Lib\\\\site-packages`" msgstr ":file:`C:\\\\Python{XY}\\\\Lib\\\\site-packages`" -#: install/index.rst:739 +#: install/index.rst:746 msgid "\\(2)" msgstr "\\(2)" -#: install/index.rst:759 +#: install/index.rst:766 msgid "Notes:" msgstr "Notes :" -#: install/index.rst:221 +#: install/index.rst:228 msgid "" "Most Linux distributions include Python as a standard part of the system, " "so :file:`{prefix}` and :file:`{exec-prefix}` are usually both :file:`/usr` " @@ -460,7 +469,7 @@ msgstr "" "sous Linux (ou tout autre système de type Unix), les valeurs par défaut de :" "file:`{prefix}` et :file:`{exec-prefix}` sont souvent :file:`/usr/local`." -#: install/index.rst:227 +#: install/index.rst:234 msgid "" "The default installation directory on Windows was :file:`C:\\\\Program Files" "\\\\Python` under Python 1.6a1, 1.5.2, and earlier." @@ -468,12 +477,13 @@ msgstr "" "Sous Windows, le dossier d'installation par défaut était : :file:`C:\\" "\\Program Files\\\\Python` sous Python 1.6a1, 1.5.2 et avant." -#: install/index.rst:230 +#: install/index.rst:237 +#, fuzzy msgid "" ":file:`{prefix}` and :file:`{exec-prefix}` stand for the directories that " "Python is installed to, and where it finds its libraries at run-time. They " "are always the same under Windows, and very often the same under Unix and " -"Mac OS X. You can find out what your Python installation uses for :file:" +"macOS. You can find out what your Python installation uses for :file:" "`{prefix}` and :file:`{exec-prefix}` by running Python in interactive mode " "and typing a few simple commands. Under Unix, just type ``python`` at the " "shell prompt. Under Windows, choose :menuselection:`Start --> Programs --> " @@ -495,7 +505,7 @@ msgstr "" "tape les trois instructions ci-dessous et obtiens la sortie suivante pour " "trouver mes :file:`{prefix}` et :file:`{exec-prefix}` :" -#: install/index.rst:252 +#: install/index.rst:259 msgid "" "A few other placeholders are used in this document: :file:`{X.Y}` stands for " "the version of Python, for example ``3.2``; :file:`{abiflags}` will be " @@ -514,7 +524,7 @@ msgstr "" "chemins ; par exemple, une valeur qui utilise ``python3.2`` sur Unix " "utilisera typiquement ``Python32`` sur Windows." -#: install/index.rst:260 +#: install/index.rst:267 msgid "" "If you don't want to install modules to the standard location, or if you " "don't have permission to write there, then you need to read about alternate " @@ -529,11 +539,11 @@ msgstr "" "lisez la section :ref:`inst-custom-install` sur les installations " "personnalisées." -#: install/index.rst:270 +#: install/index.rst:277 msgid "Alternate Installation" msgstr "Installation alternative" -#: install/index.rst:272 +#: install/index.rst:279 msgid "" "Often, it is necessary or desirable to install modules to a location other " "than the standard location for third-party Python modules. For example, on " @@ -554,7 +564,7 @@ msgstr "" "base de scripts fonctionne encore avec la nouvelle version avant de faire la " "mise à jour pour de bon." -#: install/index.rst:280 +#: install/index.rst:287 msgid "" "The Distutils :command:`install` command is designed to make installing " "module distributions to an alternate location simple and painless. The " @@ -572,7 +582,7 @@ msgstr "" "lequel elle installe les fichiers. Les détails diffèrent d’une plateforme à " "une autre, donc lisez les sections ci-dessous qui s’appliquent à vous." -#: install/index.rst:288 +#: install/index.rst:295 msgid "" "Note that the various alternate installation schemes are mutually exclusive: " "you can pass ``--user``, or ``--home``, or ``--prefix`` and ``--exec-" @@ -584,11 +594,11 @@ msgstr "" "``--prefix`` et ``--exc-prefix``, ou ``--install-base`` et ``--install-" "platbase``, mais vous ne pouvez pas mélanger ces groupes." -#: install/index.rst:297 +#: install/index.rst:304 msgid "Alternate installation: the user scheme" msgstr "Installation alternative : le schéma *user*" -#: install/index.rst:299 +#: install/index.rst:306 msgid "" "This scheme is designed to be the most convenient solution for users that " "don't have write permission to the global site-packages directory or don't " @@ -599,12 +609,13 @@ msgstr "" "packages global, ou qui ne veulent pas y écrire. Il est activé avec une " "simple option ::" -#: install/index.rst:305 +#: install/index.rst:312 +#, fuzzy msgid "" "Files will be installed into subdirectories of :data:`site.USER_BASE` " "(written as :file:`{userbase}` hereafter). This scheme installs pure Python " "modules and extension modules in the same location (also known as :data:" -"`site.USER_SITE`). Here are the values for UNIX, including Mac OS X:" +"`site.USER_SITE`). Here are the values for UNIX, including macOS:" msgstr "" "Les fichiers seront installés dans des sous-dossiers de :data:`site." "USER_BASE` (écrit :file:`{userbase}` dans la suite). Ce schéma installe des " @@ -612,64 +623,64 @@ msgstr "" "sous le nom de :data:`site.USER_SITE`).Voici les valeurs pour UNIX, y " "compris Mac OS X ::" -#: install/index.rst:322 install/index.rst:422 install/index.rst:499 -#: install/index.rst:747 +#: install/index.rst:329 install/index.rst:429 install/index.rst:506 +#: install/index.rst:754 msgid "Type of file" msgstr "Type de fichier" -#: install/index.rst:322 install/index.rst:422 install/index.rst:474 +#: install/index.rst:329 install/index.rst:429 install/index.rst:481 msgid "Installation directory" msgstr "Dossier d'installation" -#: install/index.rst:324 install/index.rst:476 +#: install/index.rst:331 install/index.rst:483 msgid "modules" msgstr "modules" -#: install/index.rst:313 +#: install/index.rst:320 msgid ":file:`{userbase}/lib/python{X.Y}/site-packages`" msgstr ":file:`{userbase}/lib/python{X.Y}/site-packages`" -#: install/index.rst:325 install/index.rst:426 install/index.rst:504 +#: install/index.rst:332 install/index.rst:433 install/index.rst:511 msgid "scripts" msgstr "scripts" -#: install/index.rst:314 +#: install/index.rst:321 msgid ":file:`{userbase}/bin`" msgstr ":file:`{userbase}/bin`" -#: install/index.rst:326 install/index.rst:427 install/index.rst:505 +#: install/index.rst:333 install/index.rst:434 install/index.rst:512 msgid "data" msgstr "données" -#: install/index.rst:326 +#: install/index.rst:333 msgid ":file:`{userbase}`" msgstr ":file:`{userbase}`" -#: install/index.rst:327 install/index.rst:428 install/index.rst:506 +#: install/index.rst:334 install/index.rst:435 install/index.rst:513 msgid "C headers" msgstr "en-têtes C" -#: install/index.rst:316 +#: install/index.rst:323 msgid ":file:`{userbase}/include/python{X.Y}{abiflags}/{distname}`" msgstr ":file:`{userbase}/include/python{X.Y}{abiflags}/{distname}`" -#: install/index.rst:319 +#: install/index.rst:326 msgid "And here are the values used on Windows:" msgstr "Et voici les valeurs utilisées sur Windows ::" -#: install/index.rst:324 +#: install/index.rst:331 msgid ":file:`{userbase}\\\\Python{XY}\\\\site-packages`" msgstr ":file:`{userbase}\\\\Python{XY}\\\\site-packages`" -#: install/index.rst:325 +#: install/index.rst:332 msgid ":file:`{userbase}\\\\Python{XY}\\\\Scripts`" msgstr ":file:`{userbase}\\\\Python{XY}\\\\Scripts`" -#: install/index.rst:327 +#: install/index.rst:334 msgid ":file:`{userbase}\\\\Python{XY}\\\\Include\\\\{distname}`" msgstr ":file:`{userbase}\\\\Python{XY}\\\\Include\\\\{distname}`" -#: install/index.rst:330 +#: install/index.rst:337 msgid "" "The advantage of using this scheme compared to the other ones described " "below is that the user site-packages directory is under normal conditions " @@ -683,7 +694,7 @@ msgstr "" "qui signifie qu’il n’y a rien d’autre à faire après avoir exécuté le script :" "file:`setup.py` pour finaliser l’installation." -#: install/index.rst:336 +#: install/index.rst:343 msgid "" "The :command:`build_ext` command also has a ``--user`` option to add :file:" "`{userbase}/include` to the compiler search path for header files and :file:" @@ -696,11 +707,11 @@ msgstr "" "où le compilateur recherche les bibliothèques ainsi que les bibliothèques C " "partagées chargeables à l'exécution (`rpath`)." -#: install/index.rst:345 +#: install/index.rst:352 msgid "Alternate installation: the home scheme" msgstr "Installation alternative : le schéma *home*" -#: install/index.rst:347 +#: install/index.rst:354 msgid "" "The idea behind the \"home scheme\" is that you build and maintain a " "personal stash of Python modules. This scheme's name is derived from the " @@ -716,11 +727,11 @@ msgstr "" "file:`/usr/local/`. Ce schéma peut être utilisé par n’importe qui, quel que " "soit le système d’exploitation." -#: install/index.rst:354 +#: install/index.rst:361 msgid "Installing a new module distribution is as simple as ::" msgstr "Installer une nouvelle distribution de module est aussi simple que ::" -#: install/index.rst:358 +#: install/index.rst:365 msgid "" "where you can supply any directory you like for the :option:`!--home` " "option. On Unix, lazy typists can just type a tilde (``~``); the :command:" @@ -731,7 +742,7 @@ msgstr "" "commande :command:`install` le remplacera par le chemin vers votre dossier " "personnel ::" -#: install/index.rst:364 +#: install/index.rst:371 msgid "" "To make Python find the distributions installed with this scheme, you may " "have to :ref:`modify Python's search path ` or edit :mod:" @@ -743,7 +754,7 @@ msgstr "" "path>` ou modifier :mod:`sitecustomize` (voir :mod:`site`) pour appeler :" "func:`site.addsitedir` ou modifier :data:`sys.path`." -#: install/index.rst:369 +#: install/index.rst:376 msgid "" "The :option:`!--home` option defines the installation base directory. Files " "are installed to the following directories under the installation base as " @@ -753,33 +764,33 @@ msgstr "" "fichiers sont installés dans les dossiers suivants sous la base de " "l'installation de la façon suivante ::" -#: install/index.rst:375 +#: install/index.rst:382 msgid ":file:`{home}/lib/python`" msgstr ":file:`{home}/lib/python`" -#: install/index.rst:376 +#: install/index.rst:383 msgid ":file:`{home}/bin`" msgstr ":file:`{home}/bin`" -#: install/index.rst:377 +#: install/index.rst:384 msgid ":file:`{home}`" msgstr ":file:`{home}`" -#: install/index.rst:378 +#: install/index.rst:385 msgid ":file:`{home}/include/python/{distname}`" msgstr ":file:`{home}/include/python/{distname}`" -#: install/index.rst:381 +#: install/index.rst:388 msgid "(Mentally replace slashes with backslashes if you're on Windows.)" msgstr "" "(Remplacez mentalement les slashs avec des antislashs si vous êtes sur " "Windows.)" -#: install/index.rst:387 +#: install/index.rst:394 msgid "Alternate installation: Unix (the prefix scheme)" msgstr "Installation alternative : Unix (le schéma de préfixe)" -#: install/index.rst:389 +#: install/index.rst:396 msgid "" "The \"prefix scheme\" is useful when you wish to use one Python installation " "to perform the build/install (i.e., to run the setup script), but install " @@ -797,7 +808,7 @@ msgstr "" "schémas *user* et *home* viennent avant. Cependant, il y a au moins deux cas " "connus où le schéma *prefix* est utile." -#: install/index.rst:396 +#: install/index.rst:403 msgid "" "First, consider that many Linux distributions put Python in :file:`/usr`, " "rather than the more traditional :file:`/usr/local`. This is entirely " @@ -814,7 +825,7 @@ msgstr "" "file:`/usr/local/lib/python2.{X}` plutôt que dans :file:`/usr/lib/python2.{X}" "`. Ça peut être fait avec ::" -#: install/index.rst:405 +#: install/index.rst:412 msgid "" "Another possibility is a network filesystem where the name used to write to " "a remote directory is different from the name used to read it: for example, " @@ -830,7 +841,7 @@ msgstr "" "python2.{X}`, mais ces modules doivent être installés dans, par exemple, :" "file:`/mnt/{@server}/export/lib/python2.{X}`. Ça peut être fait avec ::" -#: install/index.rst:414 +#: install/index.rst:421 msgid "" "In either case, the :option:`!--prefix` option defines the installation " "base, and the :option:`!--exec-prefix` option defines the platform-specific " @@ -849,27 +860,27 @@ msgstr "" "n’est pas fournie, elle vaut par défaut :option:`!--prefix`. Les fichiers " "sont installés ainsi :" -#: install/index.rst:501 +#: install/index.rst:508 msgid "Python modules" msgstr "Modules Python" -#: install/index.rst:502 +#: install/index.rst:509 msgid "extension modules" msgstr "modules d'extension" -#: install/index.rst:426 +#: install/index.rst:433 msgid ":file:`{prefix}/bin`" msgstr ":file:`{prefix}/bin`" -#: install/index.rst:478 +#: install/index.rst:485 msgid ":file:`{prefix}`" msgstr ":file:`{prefix}`" -#: install/index.rst:428 +#: install/index.rst:435 msgid ":file:`{prefix}/include/python{X.Y}{abiflags}/{distname}`" msgstr ":file:`{prefix}/include/python{X.Y}{abiflags}/{distname}`" -#: install/index.rst:431 +#: install/index.rst:438 msgid "" "There is no requirement that :option:`!--prefix` or :option:`!--exec-prefix` " "actually point to an alternate Python installation; if the directories " @@ -879,7 +890,7 @@ msgstr "" "pointent vers une installation alternative de Python. Si les dossiers listés " "ci-dessus n’existent pas, ils sont créés au moment de l’installation." -#: install/index.rst:435 +#: install/index.rst:442 msgid "" "Incidentally, the real reason the prefix scheme is important is simply that " "a standard Unix installation uses the prefix scheme, but with :option:`!--" @@ -896,7 +907,7 @@ msgstr "" "schéma *prefix*, mais à chaque fois que vous lancez ``python setup.py " "install`` sans autre option, vous l’utilisez." -#: install/index.rst:442 +#: install/index.rst:449 msgid "" "Note that installing extensions to an alternate Python installation has no " "effect on how those extensions are built: in particular, the Python header " @@ -923,11 +934,11 @@ msgstr "" "`!--prefix` et :option:`!--exec-prefix` ne pointent pas vers une " "installation alternative de Python, cela n’a pas de sens.)" -#: install/index.rst:457 +#: install/index.rst:464 msgid "Alternate installation: Windows (the prefix scheme)" msgstr "Installation alternative : Windows (le schéma de préfixe)" -#: install/index.rst:459 +#: install/index.rst:466 msgid "" "Windows has no concept of a user's home directory, and since the standard " "Python installation under Windows is simpler than under Unix, the :option:" @@ -939,7 +950,7 @@ msgstr "" "l':option:`!--prefix` option a traditionnellement été utilisée pour " "installer des paquets supplémentaires à des endroits séparés sur Windows. ::" -#: install/index.rst:466 +#: install/index.rst:473 msgid "" "to install modules to the :file:`\\\\Temp\\\\Python` directory on the " "current drive." @@ -947,7 +958,7 @@ msgstr "" "pour installer des modules dans le dossier :file:`\\\\Temp\\\\Python` du " "disque courant." -#: install/index.rst:468 +#: install/index.rst:475 msgid "" "The installation base is defined by the :option:`!--prefix` option; the :" "option:`!--exec-prefix` option is not supported under Windows, which means " @@ -959,19 +970,19 @@ msgstr "" "qui signifie que les modules Python et les modules d'extension sont " "installés au même endroit. Les fichiers sont installés selon ce tableau :" -#: install/index.rst:477 +#: install/index.rst:484 msgid ":file:`{prefix}\\\\Scripts`" msgstr ":file:`{prefix}\\\\Scripts`" -#: install/index.rst:479 +#: install/index.rst:486 msgid ":file:`{prefix}\\\\Include\\\\{distname}`" msgstr ":file:`{prefix}\\\\Include\\\\{distname}`" -#: install/index.rst:486 +#: install/index.rst:493 msgid "Custom Installation" msgstr "Installation personnalisée" -#: install/index.rst:488 +#: install/index.rst:495 msgid "" "Sometimes, the alternate installation schemes described in section :ref:" "`inst-alt-install` just don't do what you want. You might want to tweak " @@ -986,7 +997,7 @@ msgstr "" "d'installation. Quel que soit le cas, vous créez ainsi un *procédé " "d'installation personnalisé*." -#: install/index.rst:494 +#: install/index.rst:501 msgid "" "To create a custom installation scheme, you start with one of the alternate " "schemes and override some of the installation directories used for the " @@ -996,39 +1007,39 @@ msgstr "" "alternatif et remplacez les dossiers d'installation de types de fichiers " "donnés via ces options :" -#: install/index.rst:499 +#: install/index.rst:506 msgid "Override option" msgstr "Option" -#: install/index.rst:501 +#: install/index.rst:508 msgid "``--install-purelib``" msgstr "``--install-purelib``" -#: install/index.rst:502 +#: install/index.rst:509 msgid "``--install-platlib``" msgstr "``--install-platlib``" -#: install/index.rst:503 +#: install/index.rst:510 msgid "all modules" msgstr "tous les modules" -#: install/index.rst:503 +#: install/index.rst:510 msgid "``--install-lib``" msgstr "``--install-lib``" -#: install/index.rst:504 +#: install/index.rst:511 msgid "``--install-scripts``" msgstr "``--install-scripts``" -#: install/index.rst:505 +#: install/index.rst:512 msgid "``--install-data``" msgstr "``--install-data``" -#: install/index.rst:506 +#: install/index.rst:513 msgid "``--install-headers``" msgstr "``--install-headers``" -#: install/index.rst:509 +#: install/index.rst:516 msgid "" "These override options can be relative, absolute, or explicitly defined in " "terms of one of the installation base directories. (There are two " @@ -1040,7 +1051,7 @@ msgid "" "between Python and extension modules.)" msgstr "" -#: install/index.rst:518 +#: install/index.rst:525 msgid "" "For example, say you're installing a module distribution to your home " "directory under Unix---but you want scripts to go in :file:`~/scripts` " @@ -1051,7 +1062,7 @@ msgid "" "case)::" msgstr "" -#: install/index.rst:527 +#: install/index.rst:534 msgid "" "Another Unix example: suppose your Python installation was built and " "installed with a prefix of :file:`/usr/local/python`, so under a standard " @@ -1060,14 +1071,14 @@ msgid "" "directory for the :option:`!--install-scripts` option::" msgstr "" -#: install/index.rst:535 +#: install/index.rst:542 msgid "" "(This performs an installation using the \"prefix scheme\", where the prefix " "is whatever your Python interpreter was installed with--- :file:`/usr/local/" "python` in this case.)" msgstr "" -#: install/index.rst:539 +#: install/index.rst:546 msgid "" "If you maintain Python on Windows, you might want third-party modules to " "live in a subdirectory of :file:`{prefix}`, rather than right in :file:" @@ -1077,7 +1088,7 @@ msgid "" "conveniently be both controlled by one option::" msgstr "" -#: install/index.rst:548 +#: install/index.rst:555 msgid "" "The specified installation directory is relative to :file:`{prefix}`. Of " "course, you also have to ensure that this directory is in Python's module " @@ -1086,7 +1097,7 @@ msgid "" "modify Python's search path." msgstr "" -#: install/index.rst:554 +#: install/index.rst:561 msgid "" "If you want to define an entire installation scheme, you just have to supply " "all of the installation directory options. The recommended way to do this " @@ -1096,18 +1107,18 @@ msgid "" "from, you might define the following installation scheme::" msgstr "" -#: install/index.rst:567 +#: install/index.rst:574 msgid "or, equivalently, ::" msgstr "ou ::" -#: install/index.rst:575 +#: install/index.rst:582 msgid "" "``$PLAT`` is not (necessarily) an environment variable---it will be expanded " "by the Distutils as it parses your command line options, just as it does " "when parsing your configuration file(s)." msgstr "" -#: install/index.rst:579 +#: install/index.rst:586 msgid "" "Obviously, specifying the entire installation scheme every time you install " "a new module distribution would be very tedious. Thus, you can put these " @@ -1115,24 +1126,24 @@ msgid "" "files`):" msgstr "" -#: install/index.rst:592 +#: install/index.rst:599 msgid "or, equivalently," msgstr "ou (équivalent)," -#: install/index.rst:603 +#: install/index.rst:610 msgid "" "Note that these two are *not* equivalent if you supply a different " "installation base directory when you run the setup script. For example, ::" msgstr "" -#: install/index.rst:608 +#: install/index.rst:615 msgid "" "would install pure modules to :file:`/tmp/python/lib` in the first case, and " "to :file:`/tmp/lib` in the second case. (For the second case, you probably " "want to supply an installation base of :file:`/tmp/python`.)" msgstr "" -#: install/index.rst:612 +#: install/index.rst:619 msgid "" "You probably noticed the use of ``$HOME`` and ``$PLAT`` in the sample " "configuration file input. These are Distutils configuration variables, " @@ -1145,7 +1156,7 @@ msgid "" "section :ref:`inst-config-files` for details." msgstr "" -#: install/index.rst:622 +#: install/index.rst:629 msgid "" "When a :ref:`virtual environment ` is activated, any options that " "change the installation path will be ignored from all distutils " @@ -1153,11 +1164,11 @@ msgid "" "the virtual environment." msgstr "" -#: install/index.rst:636 +#: install/index.rst:643 msgid "Modifying Python's Search Path" msgstr "" -#: install/index.rst:638 +#: install/index.rst:645 msgid "" "When the Python interpreter executes an :keyword:`import` statement, it " "searches for both Python code and extension modules along a search path. A " @@ -1166,12 +1177,12 @@ msgid "" "module and printing the value of ``sys.path``. ::" msgstr "" -#: install/index.rst:655 +#: install/index.rst:662 msgid "" "The null string in ``sys.path`` represents the current working directory." msgstr "" -#: install/index.rst:657 +#: install/index.rst:664 msgid "" "The expected convention for locally installed packages is to put them in " "the :file:`{...}/site-packages/` directory, but you may want to install " @@ -1182,7 +1193,7 @@ msgid "" "There are several different ways to add the directory." msgstr "" -#: install/index.rst:665 +#: install/index.rst:672 msgid "" "The most convenient way is to add a path configuration file to a directory " "that's already on Python's path, usually to the :file:`.../site-packages/` " @@ -1193,14 +1204,14 @@ msgid "" "this mechanism for installing fixed versions of standard modules.)" msgstr "" -#: install/index.rst:673 +#: install/index.rst:680 msgid "" "Paths can be absolute or relative, in which case they're relative to the " "directory containing the :file:`.pth` file. See the documentation of the :" "mod:`site` module for more information." msgstr "" -#: install/index.rst:677 +#: install/index.rst:684 msgid "" "A slightly less convenient way is to edit the :file:`site.py` file in " "Python's standard library, and modify ``sys.path``. :file:`site.py` is " @@ -1209,7 +1220,7 @@ msgid "" "simply edit :file:`site.py` and add two lines to it:" msgstr "" -#: install/index.rst:688 +#: install/index.rst:695 msgid "" "However, if you reinstall the same major version of Python (perhaps when " "upgrading from 2.2 to 2.2.2, for example) :file:`site.py` will be " @@ -1217,7 +1228,7 @@ msgid "" "modified and save a copy before doing the installation." msgstr "" -#: install/index.rst:693 +#: install/index.rst:700 msgid "" "There are two environment variables that can modify ``sys.path``. :envvar:" "`PYTHONHOME` sets an alternate value for the prefix of the Python " @@ -1226,7 +1237,7 @@ msgid "" "Y/', '/www/python/lib/pythonX.Y/plat-linux2', ...]``." msgstr "" -#: install/index.rst:699 +#: install/index.rst:706 msgid "" "The :envvar:`PYTHONPATH` variable can be set to a list of paths that will be " "added to the beginning of ``sys.path``. For example, if :envvar:" @@ -1236,17 +1247,17 @@ msgid "" "don't exist.)" msgstr "" -#: install/index.rst:706 +#: install/index.rst:713 msgid "" "Finally, ``sys.path`` is just a regular Python list, so any Python " "application can modify it by adding or removing entries." msgstr "" -#: install/index.rst:713 +#: install/index.rst:720 msgid "Distutils Configuration Files" msgstr "" -#: install/index.rst:715 +#: install/index.rst:722 msgid "" "As mentioned above, you can use Distutils configuration files to record " "personal or site preferences for any Distutils options. That is, any option " @@ -1258,76 +1269,76 @@ msgid "" "files are overridden by \"later\" files." msgstr "" -#: install/index.rst:728 +#: install/index.rst:735 msgid "Location and names of config files" msgstr "" -#: install/index.rst:730 +#: install/index.rst:737 msgid "" "The names and locations of the configuration files vary slightly across " -"platforms. On Unix and Mac OS X, the three configuration files (in the " -"order they are processed) are:" +"platforms. On Unix and macOS, the three configuration files (in the order " +"they are processed) are:" msgstr "" -#: install/index.rst:747 +#: install/index.rst:754 msgid "Location and filename" msgstr "" -#: install/index.rst:749 +#: install/index.rst:756 msgid "system" msgstr "" -#: install/index.rst:737 +#: install/index.rst:744 msgid ":file:`{prefix}/lib/python{ver}/distutils/distutils.cfg`" msgstr "" -#: install/index.rst:751 +#: install/index.rst:758 msgid "personal" msgstr "" -#: install/index.rst:739 +#: install/index.rst:746 msgid ":file:`$HOME/.pydistutils.cfg`" msgstr "" -#: install/index.rst:753 +#: install/index.rst:760 msgid "local" msgstr "" -#: install/index.rst:753 +#: install/index.rst:760 msgid ":file:`setup.cfg`" msgstr "" -#: install/index.rst:753 +#: install/index.rst:760 msgid "\\(3)" msgstr "\\(3)" -#: install/index.rst:744 +#: install/index.rst:751 msgid "And on Windows, the configuration files are:" msgstr "" -#: install/index.rst:749 +#: install/index.rst:756 msgid ":file:`{prefix}\\\\Lib\\\\distutils\\\\distutils.cfg`" msgstr "" -#: install/index.rst:749 +#: install/index.rst:756 msgid "\\(4)" msgstr "\\(4)" -#: install/index.rst:751 +#: install/index.rst:758 msgid ":file:`%HOME%\\\\pydistutils.cfg`" msgstr "" -#: install/index.rst:751 +#: install/index.rst:758 msgid "\\(5)" msgstr "\\(5)" -#: install/index.rst:756 +#: install/index.rst:763 msgid "" "On all platforms, the \"personal\" file can be temporarily disabled by " "passing the `--no-user-cfg` option." msgstr "" -#: install/index.rst:762 +#: install/index.rst:769 msgid "" "Strictly speaking, the system-wide configuration file lives in the directory " "where the Distutils are installed; under Python 1.6 and later on Unix, this " @@ -1336,7 +1347,7 @@ msgid "" "configuration file should be put there under Python 1.5.2." msgstr "" -#: install/index.rst:769 +#: install/index.rst:776 msgid "" "On Unix, if the :envvar:`HOME` environment variable is not defined, the " "user's home directory will be determined with the :func:`getpwuid` function " @@ -1344,12 +1355,12 @@ msgid "" "expanduser` function used by Distutils." msgstr "" -#: install/index.rst:775 +#: install/index.rst:782 msgid "" "I.e., in the current directory (usually the location of the setup script)." msgstr "" -#: install/index.rst:778 +#: install/index.rst:785 msgid "" "(See also note (1).) Under Python 1.6 and later, Python's default " "\"installation prefix\" is :file:`C:\\\\Python`, so the system configuration " @@ -1361,7 +1372,7 @@ msgid "" "Windows." msgstr "" -#: install/index.rst:787 +#: install/index.rst:794 msgid "" "On Windows, if the :envvar:`HOME` environment variable is not defined, :" "envvar:`USERPROFILE` then :envvar:`HOMEDRIVE` and :envvar:`HOMEPATH` will be " @@ -1369,11 +1380,11 @@ msgid "" "Distutils." msgstr "" -#: install/index.rst:796 +#: install/index.rst:803 msgid "Syntax of config files" msgstr "" -#: install/index.rst:798 +#: install/index.rst:805 msgid "" "The Distutils configuration files all have the same syntax. The config " "files are grouped into sections. There is one section for each Distutils " @@ -1382,13 +1393,13 @@ msgid "" "``option=value``." msgstr "" -#: install/index.rst:803 +#: install/index.rst:810 msgid "" "For example, the following is a complete config file that just forces all " "commands to run quietly by default:" msgstr "" -#: install/index.rst:811 +#: install/index.rst:818 msgid "" "If this is installed as the system config file, it will affect all " "processing of any Python module distribution by any user on the current " @@ -1398,18 +1409,18 @@ msgid "" "distribution, it affects only that distribution." msgstr "" -#: install/index.rst:818 +#: install/index.rst:825 msgid "" "You could override the default \"build base\" directory and make the :" "command:`build\\*` commands always forcibly rebuild all files with the " "following:" msgstr "" -#: install/index.rst:828 +#: install/index.rst:835 msgid "which corresponds to the command-line arguments ::" msgstr "" -#: install/index.rst:832 +#: install/index.rst:839 msgid "" "except that including the :command:`build` command on the command-line means " "that command will be run. Including a particular command in config files " @@ -1418,29 +1429,29 @@ msgid "" "values from it are run, they will use the values in the config file.)" msgstr "" -#: install/index.rst:838 +#: install/index.rst:845 msgid "" "You can find out the complete list of options for any command using the :" "option:`!--help` option, e.g.::" msgstr "" -#: install/index.rst:843 +#: install/index.rst:850 msgid "" "and you can find out the complete list of global options by using :option:" "`!--help` without a command::" msgstr "" -#: install/index.rst:848 +#: install/index.rst:855 msgid "" "See also the \"Reference\" section of the \"Distributing Python Modules\" " "manual." msgstr "" -#: install/index.rst:854 +#: install/index.rst:861 msgid "Building Extensions: Tips and Tricks" msgstr "" -#: install/index.rst:856 +#: install/index.rst:863 msgid "" "Whenever possible, the Distutils try to use the configuration information " "made available by the Python interpreter used to run the :file:`setup.py` " @@ -1450,11 +1461,11 @@ msgid "" "section discusses how to override the usual Distutils behaviour." msgstr "" -#: install/index.rst:867 +#: install/index.rst:874 msgid "Tweaking compiler/linker flags" msgstr "" -#: install/index.rst:869 +#: install/index.rst:876 msgid "" "Compiling a Python extension written in C or C++ will sometimes require " "specifying custom flags for the compiler and linker in order to use a " @@ -1463,7 +1474,7 @@ msgid "" "you're trying to cross-compile Python." msgstr "" -#: install/index.rst:875 +#: install/index.rst:882 msgid "" "In the most general case, the extension author might have foreseen that " "compiling the extensions would be complicated, and provided a :file:`Setup` " @@ -1472,18 +1483,18 @@ msgid "" "require elaborate sets of compiler flags in order to work." msgstr "" -#: install/index.rst:881 +#: install/index.rst:888 msgid "" "A :file:`Setup` file, if present, is parsed in order to get a list of " "extensions to build. Each line in a :file:`Setup` describes a single " "module. Lines have the following structure::" msgstr "" -#: install/index.rst:888 +#: install/index.rst:895 msgid "Let's examine each of the fields in turn." msgstr "" -#: install/index.rst:890 +#: install/index.rst:897 msgid "" "*module* is the name of the extension module to be built, and should be a " "valid Python identifier. You can't just change this in order to rename a " @@ -1491,7 +1502,7 @@ msgid "" "left alone." msgstr "" -#: install/index.rst:894 +#: install/index.rst:901 msgid "" "*sourcefile* is anything that's likely to be a source code file, at least " "judging by the filename. Filenames ending in :file:`.c` are assumed to be " @@ -1500,38 +1511,38 @@ msgid "" "assumed to be in Objective C." msgstr "" -#: install/index.rst:900 +#: install/index.rst:907 msgid "" "*cpparg* is an argument for the C preprocessor, and is anything starting " "with :option:`!-I`, :option:`!-D`, :option:`!-U` or :option:`!-C`." msgstr "" -#: install/index.rst:903 +#: install/index.rst:910 msgid "" "*library* is anything ending in :file:`.a` or beginning with :option:`!-l` " "or :option:`!-L`." msgstr "" -#: install/index.rst:906 +#: install/index.rst:913 msgid "" "If a particular platform requires a special library on your platform, you " "can add it by editing the :file:`Setup` file and running ``python setup.py " "build``. For example, if the module defined by the line ::" msgstr "" -#: install/index.rst:912 +#: install/index.rst:919 msgid "" "must be linked with the math library :file:`libm.a` on your platform, simply " "add :option:`!-lm` to the line::" msgstr "" -#: install/index.rst:917 +#: install/index.rst:924 msgid "" "Arbitrary switches intended for the compiler or the linker can be supplied " "with the :option:`!-Xcompiler` *arg* and :option:`!-Xlinker` *arg* options::" msgstr "" -#: install/index.rst:922 +#: install/index.rst:929 msgid "" "The next option after :option:`!-Xcompiler` and :option:`!-Xlinker` will be " "appended to the proper command line, so in the above example the compiler " @@ -1542,33 +1553,33 @@ msgid "" "c++``." msgstr "" -#: install/index.rst:929 +#: install/index.rst:936 msgid "" "Compiler flags can also be supplied through setting the :envvar:`CFLAGS` " "environment variable. If set, the contents of :envvar:`CFLAGS` will be " "added to the compiler flags specified in the :file:`Setup` file." msgstr "" -#: install/index.rst:937 +#: install/index.rst:944 msgid "Using non-Microsoft compilers on Windows" msgstr "" -#: install/index.rst:944 +#: install/index.rst:951 msgid "Borland/CodeGear C++" msgstr "" -#: install/index.rst:946 +#: install/index.rst:953 msgid "" "This subsection describes the necessary steps to use Distutils with the " "Borland C++ compiler version 5.5. First you have to know that Borland's " "object file format (OMF) is different from the format used by the Python " -"version you can download from the Python or ActiveState Web site. (Python " +"version you can download from the Python or ActiveState web site. (Python " "is built with Microsoft Visual C++, which uses COFF as the object file " "format.) For this reason you have to convert Python's library :file:" "`python25.lib` into the Borland format. You can do this as follows:" msgstr "" -#: install/index.rst:961 +#: install/index.rst:968 msgid "" "The :file:`coff2omf` program comes with the Borland compiler. The file :" "file:`python25.lib` is in the :file:`Libs` directory of your Python " @@ -1576,13 +1587,13 @@ msgid "" "to convert them too." msgstr "" -#: install/index.rst:966 +#: install/index.rst:973 msgid "" "The converted files have to reside in the same directories as the normal " "libraries." msgstr "" -#: install/index.rst:969 +#: install/index.rst:976 msgid "" "How does Distutils manage to use these libraries with their changed names? " "If the extension needs a library (eg. :file:`foo`) Distutils checks first if " @@ -1591,46 +1602,46 @@ msgid "" "it uses the default name (:file:`foo.lib`.) [#]_" msgstr "" -#: install/index.rst:975 +#: install/index.rst:982 msgid "" "To let Distutils compile your extension with Borland C++ you now have to " "type::" msgstr "" -#: install/index.rst:979 +#: install/index.rst:986 msgid "" "If you want to use the Borland C++ compiler as the default, you could " "specify this in your personal or system-wide configuration file for " "Distutils (see section :ref:`inst-config-files`.)" msgstr "" -#: install/index.rst:988 +#: install/index.rst:995 msgid "`C++Builder Compiler `_" msgstr "" -#: install/index.rst:987 +#: install/index.rst:994 msgid "" "Information about the free C++ compiler from Borland, including links to the " "download pages." msgstr "" -#: install/index.rst:991 +#: install/index.rst:998 msgid "" "`Creating Python Extensions Using Borland's Free Compiler `_" msgstr "" -#: install/index.rst:991 +#: install/index.rst:998 msgid "" "Document describing how to use Borland's free command-line C++ compiler to " "build Python." msgstr "" -#: install/index.rst:996 +#: install/index.rst:1003 msgid "GNU C / Cygwin / MinGW" msgstr "" -#: install/index.rst:998 +#: install/index.rst:1005 msgid "" "This section describes the necessary steps to use Distutils with the GNU C/C+" "+ compilers in their Cygwin and MinGW distributions. [#]_ For a Python " @@ -1638,40 +1649,40 @@ msgid "" "of these following steps." msgstr "" -#: install/index.rst:1003 +#: install/index.rst:1010 msgid "" "Not all extensions can be built with MinGW or Cygwin, but many can. " "Extensions most likely to not work are those that use C++ or depend on " "Microsoft Visual C extensions." msgstr "" -#: install/index.rst:1007 +#: install/index.rst:1014 msgid "To let Distutils compile your extension with Cygwin you have to type::" msgstr "" -#: install/index.rst:1011 +#: install/index.rst:1018 msgid "and for Cygwin in no-cygwin mode [#]_ or for MinGW type::" msgstr "" -#: install/index.rst:1015 +#: install/index.rst:1022 msgid "" "If you want to use any of these options/compilers as default, you should " "consider writing it in your personal or system-wide configuration file for " "Distutils (see section :ref:`inst-config-files`.)" msgstr "" -#: install/index.rst:1020 +#: install/index.rst:1027 msgid "Older Versions of Python and MinGW" msgstr "" -#: install/index.rst:1021 +#: install/index.rst:1028 msgid "" "The following instructions only apply if you're using a version of Python " "inferior to 2.4.1 with a MinGW inferior to 3.0.0 (with " "binutils-2.13.90-20030111-1)." msgstr "" -#: install/index.rst:1025 +#: install/index.rst:1032 msgid "" "These compilers require some special libraries. This task is more complex " "than for Borland's C++, because there is no program to convert the library. " @@ -1680,7 +1691,7 @@ msgid "" "projects/mingw/files/MinGW/Extension/pexports/)." msgstr "" -#: install/index.rst:1038 +#: install/index.rst:1045 msgid "" "The location of an installed :file:`python25.dll` will depend on the " "installation options and the version and language of Windows. In a \"just " @@ -1689,51 +1700,51 @@ msgid "" "directory." msgstr "" -#: install/index.rst:1043 +#: install/index.rst:1050 msgid "" "Then you can create from these information an import library for gcc. ::" msgstr "" -#: install/index.rst:1047 +#: install/index.rst:1054 msgid "" "The resulting library has to be placed in the same directory as :file:" "`python25.lib`. (Should be the :file:`libs` directory under your Python " "installation directory.)" msgstr "" -#: install/index.rst:1051 +#: install/index.rst:1058 msgid "" "If your extension uses other libraries (zlib,...) you might have to convert " "them too. The converted files have to reside in the same directories as the " "normal libraries do." msgstr "" -#: install/index.rst:1058 +#: install/index.rst:1065 msgid "" "`Building Python modules on MS Windows platform with MinGW `_" msgstr "" -#: install/index.rst:1059 +#: install/index.rst:1066 msgid "" "Information about building the required libraries for the MinGW environment." msgstr "" -#: install/index.rst:1063 +#: install/index.rst:1070 msgid "Footnotes" msgstr "Notes" -#: install/index.rst:1064 +#: install/index.rst:1071 msgid "" "This also means you could replace all existing COFF-libraries with OMF-" "libraries of the same name." msgstr "" -#: install/index.rst:1067 +#: install/index.rst:1074 msgid "Check https://www.sourceware.org/cygwin/ for more information" msgstr "" -#: install/index.rst:1069 +#: install/index.rst:1076 msgid "" "Then you have no POSIX emulation available, but you also don't need :file:" "`cygwin1.dll`." diff --git a/installing/index.po b/installing/index.po index 3b4b7dea9..d69e03191 100644 --- a/installing/index.po +++ b/installing/index.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-12-15 21:18+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -194,8 +194,9 @@ msgstr "" "dépendances depuis le *Python Package Index* ::" #: installing/index.rst:87 +#, fuzzy msgid "" -"For POSIX users (including Mac OS X and Linux users), the examples in this " +"For POSIX users (including macOS and Linux users), the examples in this " "guide assume the use of a :term:`virtual environment`." msgstr "" "Pour les utilisateurs POSIX (y compris Mac OS X et Linux), les exemples de " @@ -339,10 +340,11 @@ msgstr "" "... Travailler avec plusieurs versions de Python installés en parallèle ?" #: installing/index.rst:166 +#, fuzzy msgid "" -"On Linux, Mac OS X, and other POSIX systems, use the versioned Python " -"commands in combination with the ``-m`` switch to run the appropriate copy " -"of ``pip``::" +"On Linux, macOS, and other POSIX systems, use the versioned Python commands " +"in combination with the ``-m`` switch to run the appropriate copy of " +"``pip``::" msgstr "" "Sous Linux, Max OS X et autres systèmes POSIX, utiliser les commandes Python " "de la version souhaitée en combinaison avec l'option ``-m`` permet de lancer " @@ -430,12 +432,13 @@ msgstr "" "l'installation, les modules d'extension à partir des sources." #: installing/index.rst:227 +#, fuzzy msgid "" "With the introduction of support for the binary ``wheel`` format, and the " -"ability to publish wheels for at least Windows and Mac OS X through the " -"Python Packaging Index, this problem is expected to diminish over time, as " -"users are more regularly able to install pre-built extensions rather than " -"needing to build them themselves." +"ability to publish wheels for at least Windows and macOS through the Python " +"Packaging Index, this problem is expected to diminish over time, as users " +"are more regularly able to install pre-built extensions rather than needing " +"to build them themselves." msgstr "" "Avec l'introduction du format binaire ``wheel``, et la possibilité de " "publier des *wheels*, pour, au moins Windows et Mac OS X, via le *Python " diff --git a/library/2to3.po b/library/2to3.po index 819a3cdb0..5bae2df56 100644 --- a/library/2to3.po +++ b/library/2to3.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-04-29 13:57+0200\n" "Last-Translator: Dimitri Merejkowsky \n" "Language-Team: FRENCH \n" @@ -771,13 +771,17 @@ msgstr ":mod:`lib2to3` — la bibliothèque de *2to3*" msgid "**Source code:** :source:`Lib/lib2to3/`" msgstr "**Code source:** :source:`Lib/lib2to3/`" -#: library/2to3.rst:467 +#: library/2to3.rst:476 +#, fuzzy msgid "" -"Python 3.9 will switch 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`_." +"Python 3.9 switched to a PEG parser (see :pep:`617`) while lib2to3 is using " +"a less flexible LL(1) parser. Python 3.10 includes new language syntax that " +"is not parsable by lib2to3's LL(1) parser (see :pep:`634`). The ``lib2to3`` " +"module was marked pending for deprecation in Python 3.9 (raising :exc:" +"`PendingDeprecationWarning` on import) and fully deprecated in Python 3.11 " +"(raising :exc:`DeprecationWarning`). It will be removed from the standard " +"library in Python 3.13. Consider third-party alternatives such as `LibCST`_ " +"or `parso`_." msgstr "" "Python 3.9 utilisera prochainement un analyseur syntaxique PEG (voir :pep:" "`617`) et il est possible que Python 3.10 introduise une nouvelle syntaxe " @@ -787,7 +791,7 @@ msgstr "" "une approche alternative, vous pouvez utiliser des outils tiers tels que " "`LibCST`_ ou `parso`_." -#: library/2to3.rst:476 +#: library/2to3.rst:479 msgid "" "The :mod:`lib2to3` API should be considered unstable and may change " "drastically in the future." diff --git a/library/__future__.po b/library/__future__.po index abfb222ea..65197891f 100644 --- a/library/__future__.po +++ b/library/__future__.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 02:45+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -277,8 +277,8 @@ msgid "3.7.0b1" msgstr "3.7.0b1" #: library/__future__.rst:93 -msgid "3.10" -msgstr "3.10" +msgid "3.11" +msgstr "" #: library/__future__.rst:93 msgid ":pep:`563`: *Postponed evaluation of annotations*" @@ -292,5 +292,8 @@ msgstr ":ref:`future`" msgid "How the compiler treats future imports." msgstr "Comment le compilateur gère les importations « futures »." +#~ msgid "3.10" +#~ msgstr "3.10" + #~ msgid "4.0" #~ msgstr "4.0" diff --git a/library/__main__.po b/library/__main__.po index 2c954e7ee..9c8096838 100644 --- a/library/__main__.po +++ b/library/__main__.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2017-11-07 22:52+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -14,38 +14,374 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: library/__main__.rst:3 -msgid ":mod:`__main__` --- Top-level script environment" +#: library/__main__.rst:2 +#, fuzzy +msgid ":mod:`__main__` --- Top-level code environment" msgstr ":mod:`__main__` — Point d'entrée des scripts" #: library/__main__.rst:10 msgid "" -"``'__main__'`` is the name of the scope in which top-level code executes. A " -"module's __name__ is set equal to ``'__main__'`` when read from standard " -"input, a script, or from an interactive prompt." +"In Python, the special name ``__main__`` is used for two important " +"constructs:" +msgstr "" + +#: library/__main__.rst:12 +msgid "" +"the name of the top-level environment of the program, which can be checked " +"using the ``__name__ == '__main__'`` expression; and" msgstr "" -"``'__main__'`` est le nom du *scope* dans lequel le code s'exécute en " -"premier. Le nom d'un module (son *__name__*) vaut ``'__main__'`` lorsqu'il " -"est lu de l'entrée standard, lorsque c'est un script, ou une invite " -"interactive." #: library/__main__.rst:14 +msgid "the ``__main__.py`` file in Python packages." +msgstr "" + +#: library/__main__.rst:16 +msgid "" +"Both of these mechanisms are related to Python modules; how users interact " +"with them and how they interact with each other. They are explained in " +"detail below. If you're new to Python modules, see the tutorial section :" +"ref:`tut-modules` for an introduction." +msgstr "" + +#: library/__main__.rst:25 +msgid "``__name__ == '__main__'``" +msgstr "" + +#: library/__main__.rst:27 +msgid "" +"When a Python module or package is imported, ``__name__`` is set to the " +"module's name. Usually, this is the name of the Python file itself without " +"the ``.py`` extension::" +msgstr "" + +#: library/__main__.rst:35 +msgid "" +"If the file is part of a package, ``__name__`` will also include the parent " +"package's path::" +msgstr "" + +#: library/__main__.rst:42 +msgid "" +"However, if the module is executed in the top-level code environment, its " +"``__name__`` is set to the string ``'__main__'``." +msgstr "" + +#: library/__main__.rst:46 +msgid "What is the \"top-level code environment\"?" +msgstr "" + +#: library/__main__.rst:48 +msgid "" +"``__main__`` is the name of the environment where top-level code is run. " +"\"Top-level code\" is the first user-specified Python module that starts " +"running. It's \"top-level\" because it imports all other modules that the " +"program needs. Sometimes \"top-level code\" is called an *entry point* to " +"the application." +msgstr "" + +#: library/__main__.rst:53 +msgid "The top-level code environment can be:" +msgstr "" + +#: library/__main__.rst:55 +msgid "the scope of an interactive prompt::" +msgstr "" + +#: library/__main__.rst:60 +msgid "the Python module passed to the Python interpreter as a file argument:" +msgstr "" + +#: library/__main__.rst:67 +msgid "" +"the Python module or package passed to the Python interpreter with the :" +"option:`-m` argument:" +msgstr "" + +#: library/__main__.rst:75 +msgid "Python code read by the Python interpreter from standard input:" +msgstr "" + +#: library/__main__.rst:86 msgid "" -"A module can discover whether or not it is running in the main scope by " -"checking its own ``__name__``, which allows a common idiom for conditionally " -"executing code in a module when it is run as a script or with ``python -m`` " -"but not when it is imported::" +"Python code passed to the Python interpreter with the :option:`-c` argument:" +msgstr "" + +#: library/__main__.rst:97 +msgid "" +"In each of these situations, the top-level module's ``__name__`` is set to " +"``'__main__'``." +msgstr "" + +#: library/__main__.rst:100 +#, fuzzy +msgid "" +"As a result, a module can discover whether or not it is running in the top-" +"level environment by checking its own ``__name__``, which allows a common " +"idiom for conditionally executing code when the module is not initialized " +"from an import statement::" msgstr "" "Un module peut découvrir s'il est exécuté dans le *scope* principal en " "vérifiant son ``__name__``, ce qui permet typiquement d'exécuter du code " "lorsque le module est exécuté avec ``python -m`` mais pas lorsqu'il est " "importé ::" -#: library/__main__.rst:23 +#: library/__main__.rst:111 +msgid "" +"For a more detailed look at how ``__name__`` is set in all situations, see " +"the tutorial section :ref:`tut-modules`." +msgstr "" + +#: library/__main__.rst:239 +msgid "Idiomatic Usage" +msgstr "" + +#: library/__main__.rst:118 +msgid "" +"Some modules contain code that is intended for script use only, like parsing " +"command-line arguments or fetching data from standard input. When a module " +"like this were to be imported from a different module, for example to unit " +"test it, the script code would unintentionally execute as well." +msgstr "" + +#: library/__main__.rst:123 +msgid "" +"This is where using the ``if __name__ == '__main__'`` code block comes in " +"handy. Code within this block won't run unless the module is executed in the " +"top-level environment." +msgstr "" + +#: library/__main__.rst:127 +msgid "" +"Putting as few statements as possible in the block below ``if __name___ == " +"'__main__'`` can improve code clarity and correctness. Most often, a " +"function named ``main`` encapsulates the program's primary behavior::" +msgstr "" + +#: library/__main__.rst:151 +msgid "" +"Note that if the module didn't encapsulate code inside the ``main`` function " +"but instead put it directly within the ``if __name__ == '__main__'`` block, " +"the ``phrase`` variable would be global to the entire module. This is error-" +"prone as other functions within the module could be unintentionally using " +"the global variable instead of a local name. A ``main`` function solves " +"this problem." +msgstr "" + +#: library/__main__.rst:158 +msgid "" +"Using a ``main`` function has the added benefit of the ``echo`` function " +"itself being isolated and importable elsewhere. When ``echo.py`` is " +"imported, the ``echo`` and ``main`` functions will be defined, but neither " +"of them will be called, because ``__name__ != '__main__'``." +msgstr "" + +#: library/__main__.rst:165 +msgid "Packaging Considerations" +msgstr "" + +#: library/__main__.rst:167 +msgid "" +"``main`` functions are often used to create command-line tools by specifying " +"them as entry points for console scripts. When this is done, `pip `_ inserts the function call into a template script, where the " +"return value of ``main`` is passed into :func:`sys.exit`. For example::" +msgstr "" + +#: library/__main__.rst:175 +msgid "" +"Since the call to ``main`` is wrapped in :func:`sys.exit`, the expectation " +"is that your function will return some value acceptable as an input to :func:" +"`sys.exit`; typically, an integer or ``None`` (which is implicitly returned " +"if your function does not have a return statement)." +msgstr "" + +#: library/__main__.rst:180 msgid "" -"For a package, the same effect can be achieved by including a ``__main__." -"py`` module, the contents of which will be executed when the module is run " -"with ``-m``." +"By proactively following this convention ourselves, our module will have the " +"same behavior when run directly (i.e. ``python3 echo.py``) as it will have " +"if we later package it as a console script entry-point in a pip-installable " +"package." msgstr "" -"Pour un paquet, le même effet peut être obtenu en utilisant un module " -"``__main__.py``, son contenu sera exécuté si le paquet est lancé via ``-m``." + +#: library/__main__.rst:185 +msgid "" +"In particular, be careful about returning strings from your ``main`` " +"function. :func:`sys.exit` will interpret a string argument as a failure " +"message, so your program will have an exit code of ``1``, indicating " +"failure, and the string will be written to :data:`sys.stderr`. The ``echo." +"py`` example from earlier exemplifies using the ``sys.exit(main())`` " +"convention." +msgstr "" + +#: library/__main__.rst:193 +msgid "" +"`Python Packaging User Guide `_ contains a " +"collection of tutorials and references on how to distribute and install " +"Python packages with modern tools." +msgstr "" + +#: library/__main__.rst:199 +msgid "``__main__.py`` in Python Packages" +msgstr "" + +#: library/__main__.rst:201 +msgid "" +"If you are not familiar with Python packages, see section :ref:`tut-" +"packages` of the tutorial. Most commonly, the ``__main__.py`` file is used " +"to provide a command-line interface for a package. Consider the following " +"hypothetical package, \"bandclass\":" +msgstr "" + +#: library/__main__.rst:213 +msgid "" +"``__main__.py`` will be executed when the package itself is invoked directly " +"from the command line using the :option:`-m` flag. For example:" +msgstr "" + +#: library/__main__.rst:220 +msgid "" +"This command will cause ``__main__.py`` to run. How you utilize this " +"mechanism will depend on the nature of the package you are writing, but in " +"this hypothetical case, it might make sense to allow the teacher to search " +"for students::" +msgstr "" + +#: library/__main__.rst:233 +msgid "" +"Note that ``from .student import search_students`` is an example of a " +"relative import. This import style must be used when referencing modules " +"within a package. For more details, see :ref:`intra-package-references` in " +"the :ref:`tut-modules` section of the tutorial." +msgstr "" + +#: library/__main__.rst:241 +msgid "" +"The contents of ``__main__.py`` typically isn't fenced with ``if __name__ == " +"'__main__'`` blocks. Instead, those files are kept short, functions to " +"execute from other modules. Those other modules can then be easily unit-" +"tested and are properly reusable." +msgstr "" + +#: library/__main__.rst:246 +msgid "" +"If used, an ``if __name__ == '__main__'`` block will still work as expected " +"for a ``__main__.py`` file within a package, because its ``__name__`` " +"attribute will include the package's path if imported::" +msgstr "" + +#: library/__main__.rst:254 +msgid "" +"This won't work for ``__main__.py`` files in the root directory of a .zip " +"file though. Hence, for consistency, minimal ``__main__.py`` like the :mod:" +"`venv` one mentioned above are preferred." +msgstr "" + +#: library/__main__.rst:260 +msgid "" +"See :mod:`venv` for an example of a package with a minimal ``__main__.py`` " +"in the standard library. It doesn't contain a ``if __name__ == '__main__'`` " +"block. You can invoke it with ``python3 -m venv [directory]``." +msgstr "" + +#: library/__main__.rst:264 +msgid "" +"See :mod:`runpy` for more details on the :option:`-m` flag to the " +"interpreter executable." +msgstr "" + +#: library/__main__.rst:267 +msgid "" +"See :mod:`zipapp` for how to run applications packaged as *.zip* files. In " +"this case Python looks for a ``__main__.py`` file in the root directory of " +"the archive." +msgstr "" + +#: library/__main__.rst:274 +msgid "``import __main__``" +msgstr "" + +#: library/__main__.rst:276 +msgid "" +"Regardless of which module a Python program was started with, other modules " +"running within that same program can import the top-level environment's " +"scope (:term:`namespace`) by importing the ``__main__`` module. This " +"doesn't import a ``__main__.py`` file but rather whichever module that " +"received the special name ``'__main__'``." +msgstr "" + +#: library/__main__.rst:282 +msgid "Here is an example module that consumes the ``__main__`` namespace::" +msgstr "" + +#: library/__main__.rst:300 +msgid "Example usage of this module could be as follows::" +msgstr "" + +#: library/__main__.rst:319 +msgid "Now, if we started our program, the result would look like this:" +msgstr "" + +#: library/__main__.rst:326 +msgid "" +"The exit code of the program would be 1, indicating an error. Uncommenting " +"the line with ``my_name = \"Dinsdale\"`` fixes the program and now it exits " +"with status code 0, indicating success:" +msgstr "" + +#: library/__main__.rst:335 +msgid "" +"Note that importing ``__main__`` doesn't cause any issues with " +"unintentionally running top-level code meant for script use which is put in " +"the ``if __name__ == \"__main__\"`` block of the ``start`` module. Why does " +"this work?" +msgstr "" + +#: library/__main__.rst:339 +msgid "" +"Python inserts an empty ``__main__`` module in :attr:`sys.modules` at " +"interpreter startup, and populates it by running top-level code. In our " +"example this is the ``start`` module which runs line by line and imports " +"``namely``. In turn, ``namely`` imports ``__main__`` (which is really " +"``start``). That's an import cycle! Fortunately, since the partially " +"populated ``__main__`` module is present in :attr:`sys.modules`, Python " +"passes that to ``namely``. See :ref:`Special considerations for __main__ " +"` in the import system's reference for details on how " +"this works." +msgstr "" + +#: library/__main__.rst:348 +msgid "" +"The Python REPL is another example of a \"top-level environment\", so " +"anything defined in the REPL becomes part of the ``__main__`` scope::" +msgstr "" + +#: library/__main__.rst:364 +msgid "" +"Note that in this case the ``__main__`` scope doesn't contain a ``__file__`` " +"attribute as it's interactive." +msgstr "" + +#: library/__main__.rst:367 +msgid "" +"The ``__main__`` scope is used in the implementation of :mod:`pdb` and :mod:" +"`rlcompleter`." +msgstr "" + +#~ msgid "" +#~ "``'__main__'`` is the name of the scope in which top-level code executes. " +#~ "A module's __name__ is set equal to ``'__main__'`` when read from " +#~ "standard input, a script, or from an interactive prompt." +#~ msgstr "" +#~ "``'__main__'`` est le nom du *scope* dans lequel le code s'exécute en " +#~ "premier. Le nom d'un module (son *__name__*) vaut ``'__main__'`` " +#~ "lorsqu'il est lu de l'entrée standard, lorsque c'est un script, ou une " +#~ "invite interactive." + +#~ msgid "" +#~ "For a package, the same effect can be achieved by including a ``__main__." +#~ "py`` module, the contents of which will be executed when the module is " +#~ "run with ``-m``." +#~ msgstr "" +#~ "Pour un paquet, le même effet peut être obtenu en utilisant un module " +#~ "``__main__.py``, son contenu sera exécuté si le paquet est lancé via ``-" +#~ "m``." diff --git a/library/_thread.po b/library/_thread.po index 123d6eac8..189dfc38b 100644 --- a/library/_thread.po +++ b/library/_thread.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-10-15 09:06+0200\n" "Last-Translator: Inebhis \n" "Language-Team: FRENCH \n" @@ -100,24 +100,44 @@ msgstr "" "exceptions non gérées." #: library/_thread.rst:66 +#, fuzzy msgid "" -"Simulate the effect of a :data:`signal.SIGINT` signal arriving in the main " -"thread. A thread can use this function to interrupt the main thread." +"Simulate the effect of a signal arriving in the main thread. A thread can " +"use this function to interrupt the main thread, though there is no guarantee " +"that the interruption will happen immediately." msgstr "" "Simule l'effet d'un signal :data:`signal.SIGINT` arrivant au fil d'exécution " "principal. Un fil d'exécution peut utiliser cette fonction pour interrompre " "le fil d'exécution principal." -#: library/_thread.rst:69 +#: library/_thread.rst:70 msgid "" -"If :data:`signal.SIGINT` isn't handled by Python (it was set to :data:" -"`signal.SIG_DFL` or :data:`signal.SIG_IGN`), this function does nothing." +"If given, *signum* is the number of the signal to simulate. If *signum* is " +"not given, :data:`signal.SIGINT` is simulated." +msgstr "" + +#: library/_thread.rst:73 +#, fuzzy +msgid "" +"If the given signal isn't handled by Python (it was set to :data:`signal." +"SIG_DFL` or :data:`signal.SIG_IGN`), this function does nothing." msgstr "" "Si le signal :data:`signal.SIGINT` n'est pas géré par Python (s'il a été " "paramétré à :data:`signal.SIG_DFL` ou :data:`signal.SIG_IGN`), cette " "fonction ne fait rien." -#: library/_thread.rst:76 +#: library/_thread.rst:77 +msgid "The *signum* argument is added to customize the signal number." +msgstr "" + +#: library/_thread.rst:81 +msgid "" +"This does not emit the corresponding signal but schedules a call to the " +"associated handler (if it exists). If you want to truly emit the signal, " +"use :func:`signal.raise_signal`." +msgstr "" + +#: library/_thread.rst:88 msgid "" "Raise the :exc:`SystemExit` exception. When not caught, this will cause the " "thread to exit silently." @@ -125,7 +145,7 @@ msgstr "" "Lève une exception :exc:`SystemExit`. Quand elle n'est pas interceptée, le " "fil d'exécution se terminera silencieusement." -#: library/_thread.rst:90 +#: library/_thread.rst:102 msgid "" "Return a new lock object. Methods of locks are described below. The lock " "is initially unlocked." @@ -133,7 +153,7 @@ msgstr "" "Renvoie un nouveau verrou. Les méthodes des verrous sont décrites ci-" "dessous. Le verrou est initialement déverrouillé." -#: library/_thread.rst:96 +#: library/_thread.rst:108 msgid "" "Return the 'thread identifier' of the current thread. This is a nonzero " "integer. Its value has no direct meaning; it is intended as a magic cookie " @@ -148,7 +168,7 @@ msgstr "" "être recyclés lorsqu'un fil d'exécution se termine et qu'un autre fil est " "créé." -#: library/_thread.rst:104 +#: library/_thread.rst:116 msgid "" "Return the native integral Thread ID of the current thread assigned by the " "kernel. This is a non-negative integer. Its value may be used to uniquely " @@ -161,7 +181,7 @@ msgstr "" "fil d'exécution se termine, après quoi la valeur peut être recyclée par le " "système d'exploitation)." -#: library/_thread.rst:110 +#: library/_thread.rst:122 msgid "" ":ref:`Availability `: Windows, FreeBSD, Linux, macOS, OpenBSD, " "NetBSD, AIX." @@ -169,7 +189,7 @@ msgstr "" ":ref:`Disponibilité ` : Windows, FreeBSD, Linux, macOS, " "OpenBSD, NetBSD, AIX." -#: library/_thread.rst:116 +#: library/_thread.rst:128 msgid "" "Return the thread stack size used when creating new threads. The optional " "*size* argument specifies the stack size to be used for subsequently created " @@ -206,14 +226,14 @@ msgstr "" "en l'absence de renseignements plus spécifiques, l'approche suggérée est " "l'utilisation de multiples de 4 096 octets pour la taille de la pile)." -#: library/_thread.rst:131 +#: library/_thread.rst:143 msgid "" ":ref:`Availability `: Windows, systems with POSIX threads." msgstr "" ":ref:`Disponibilité ` : Windows et systèmes gérant les fils " "d'exécution POSIX." -#: library/_thread.rst:136 +#: library/_thread.rst:148 msgid "" "The maximum value allowed for the *timeout* parameter of :meth:`Lock." "acquire`. Specifying a timeout greater than this value will raise an :exc:" @@ -223,11 +243,11 @@ msgstr "" "meth:`Lock.acquire`. Préciser un délai d'attente supérieur à cette valeur " "lève une exception :exc:`OverflowError`." -#: library/_thread.rst:143 +#: library/_thread.rst:155 msgid "Lock objects have the following methods:" msgstr "Les verrous ont les méthodes suivantes :" -#: library/_thread.rst:148 +#: library/_thread.rst:160 msgid "" "Without any optional argument, this method acquires the lock " "unconditionally, if necessary waiting until it is released by another thread " @@ -239,7 +259,7 @@ msgstr "" "par un autre fil d'exécution (un seul fil d'exécution à la fois peut " "acquérir le verrou — c'est leur raison d'être)." -#: library/_thread.rst:152 +#: library/_thread.rst:164 msgid "" "If the integer *waitflag* argument is present, the action depends on its " "value: if it is zero, the lock is only acquired if it can be acquired " @@ -251,7 +271,7 @@ msgstr "" "acquis immédiatement, sans attendre, sinon le verrou est acquis " "inconditionnellement comme ci-dessus." -#: library/_thread.rst:157 +#: library/_thread.rst:169 msgid "" "If the floating-point *timeout* argument is present and positive, it " "specifies the maximum wait time in seconds before returning. A negative " @@ -263,7 +283,7 @@ msgstr "" "argument *timeout* négatif spécifie une attente illimitée. Vous ne pouvez " "pas spécifier un *timeout* si *waitflag* est à zéro." -#: library/_thread.rst:162 +#: library/_thread.rst:174 msgid "" "The return value is ``True`` if the lock is acquired successfully, ``False`` " "if not." @@ -271,16 +291,16 @@ msgstr "" "La valeur renvoyée est ``True`` si le verrou est acquis avec succès, sinon " "``False``." -#: library/_thread.rst:165 +#: library/_thread.rst:177 msgid "The *timeout* parameter is new." msgstr "Le paramètre *timeout* est nouveau." -#: library/_thread.rst:168 +#: library/_thread.rst:180 msgid "Lock acquires can now be interrupted by signals on POSIX." msgstr "" "Le verrou acquis peut maintenant être interrompu par des signaux sur POSIX." -#: library/_thread.rst:174 +#: library/_thread.rst:186 msgid "" "Releases the lock. The lock must have been acquired earlier, but not " "necessarily by the same thread." @@ -288,7 +308,7 @@ msgstr "" "Relâche le verrou. Le verrou doit avoir été acquis plus tôt, mais pas " "nécessairement par le même fil d'exécution." -#: library/_thread.rst:180 +#: library/_thread.rst:192 msgid "" "Return the status of the lock: ``True`` if it has been acquired by some " "thread, ``False`` if not." @@ -296,7 +316,7 @@ msgstr "" "Renvoie le statut du verrou : ``True`` s'il a été acquis par certains fils " "d'exécution, sinon ``False``." -#: library/_thread.rst:183 +#: library/_thread.rst:195 msgid "" "In addition to these methods, lock objects can also be used via the :keyword:" "`with` statement, e.g.::" @@ -304,11 +324,11 @@ msgstr "" "En plus de ces méthodes, les objets verrous peuvent aussi être utilisés via " "l'instruction :keyword:`with`, e.g. ::" -#: library/_thread.rst:193 +#: library/_thread.rst:205 msgid "**Caveats:**" msgstr "**Avertissements :**" -#: library/_thread.rst:197 +#: library/_thread.rst:209 msgid "" "Threads interact strangely with interrupts: the :exc:`KeyboardInterrupt` " "exception will be received by an arbitrary thread. (When the :mod:`signal` " @@ -319,7 +339,7 @@ msgstr "" "arbitraire. (Quand le module :mod:`signal` est disponible, les interruptions " "vont toujours au fil d'exécution principal)." -#: library/_thread.rst:201 +#: library/_thread.rst:213 msgid "" "Calling :func:`sys.exit` or raising the :exc:`SystemExit` exception is " "equivalent to calling :func:`_thread.exit`." @@ -327,7 +347,7 @@ msgstr "" "Appeler la fonction :func:`sys.exit` ou lever l'exception :exc:`SystemExit` " "est équivalent à appeler la fonction :func:`_thread.exit`." -#: library/_thread.rst:204 +#: library/_thread.rst:216 msgid "" "It is not possible to interrupt the :meth:`acquire` method on a lock --- " "the :exc:`KeyboardInterrupt` exception will happen after the lock has been " @@ -337,7 +357,7 @@ msgstr "" "— l'exception :exc:`KeyboardInterrupt` surviendra après que le verrou a été " "acquis." -#: library/_thread.rst:207 +#: library/_thread.rst:219 msgid "" "When the main thread exits, it is system defined whether the other threads " "survive. On most systems, they are killed without executing :keyword:" @@ -348,7 +368,7 @@ msgstr "" "tués sans l'exécution des clauses :keyword:`try`… :keyword:`finally` ou " "l'exécution des destructeurs d'objets." -#: library/_thread.rst:212 +#: library/_thread.rst:224 msgid "" "When the main thread exits, it does not do any of its usual cleanup (except " "that :keyword:`try` ... :keyword:`finally` clauses are honored), and the " diff --git a/library/abc.po b/library/abc.po index 202130fcf..8283949b2 100644 --- a/library/abc.po +++ b/library/abc.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-02-21 17:32+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -256,12 +256,14 @@ msgstr "" "des méthodes abstraites pour les propriétés et descripteurs." #: library/abc.rst:176 +#, fuzzy msgid "" "Dynamically adding abstract methods to a class, or attempting to modify the " -"abstraction status of a method or class once it is created, are not " -"supported. The :func:`abstractmethod` only affects subclasses derived using " -"regular inheritance; \"virtual subclasses\" registered with the ABC's :meth:" -"`register` method are not affected." +"abstraction status of a method or class once it is created, are only " +"supported using the :func:`update_abstractmethods` function. The :func:" +"`abstractmethod` only affects subclasses derived using regular inheritance; " +"\"virtual subclasses\" registered with the ABC's :meth:`register` method are " +"not affected." msgstr "" "Python ne gère pas l'ajout dynamique de méthodes abstraites à une classe, il " "n'est pas non plus possible de modifier l'état d'abstraction d'une méthode " @@ -270,7 +272,7 @@ msgstr "" "classes virtuelles\" enregistrées avec la méthode :meth:`register` de l'ABC " "ne sont pas affectées." -#: library/abc.rst:182 +#: library/abc.rst:183 msgid "" "When :func:`abstractmethod` is applied in combination with other method " "descriptors, it should be applied as the innermost decorator, as shown in " @@ -280,7 +282,7 @@ msgstr "" "d'autres descripteurs de méthodes, il doit être appliqué en tant que " "décorateur le plus interne. Voir les exemples d'utilisation suivants ::" -#: library/abc.rst:216 +#: library/abc.rst:217 msgid "" "In order to correctly interoperate with the abstract base class machinery, " "the descriptor must identify itself as abstract using :attr:" @@ -294,7 +296,7 @@ msgstr "" "moins une des méthodes faisant partie du descripteur est abstraite. Par " "exemple, la classe native :class:`property` de python fait l'équivalent de ::" -#: library/abc.rst:231 +#: library/abc.rst:232 msgid "" "Unlike Java abstract methods, these abstract methods may have an " "implementation. This implementation can be called via the :func:`super` " @@ -428,10 +430,35 @@ msgstr "" "n'importe quelle ABC." #: library/abc.rst:340 +msgid "" +"A function to recalculate an abstract class's abstraction status. This " +"function should be called if a class's abstract methods have been " +"implemented or changed after it was created. Usually, this function should " +"be called from within a class decorator." +msgstr "" + +#: library/abc.rst:345 +#, fuzzy +msgid "Returns *cls*, to allow usage as a class decorator." +msgstr "" +"Renvoie la sous-classe enregistrée pour permettre l'utilisation en tant que " +"décorateur de classe." + +#: library/abc.rst:347 +msgid "If *cls* is not an instance of :class:`ABCMeta`, does nothing." +msgstr "" + +#: library/abc.rst:351 +msgid "" +"This function assumes that *cls*'s superclasses are already updated. It does " +"not update any subclasses." +msgstr "" + +#: library/abc.rst:357 msgid "Footnotes" msgstr "Notes" -#: library/abc.rst:341 +#: library/abc.rst:358 msgid "" "C++ programmers should note that Python's virtual base class concept is not " "the same as C++'s." diff --git a/library/argparse.po b/library/argparse.po index acfd44124..35a16f2e6 100644 --- a/library/argparse.po +++ b/library/argparse.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 03:00+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -1019,7 +1019,7 @@ msgstr "" "``BooleanOptionalAction`` est disponible dans ``argparse`` et elle ajoute la " "gestion des options booléennes telles que ``--foo`` et ``--no-foo`` ::" -#: library/argparse.rst:856 +#: library/argparse.rst:858 msgid "" "The recommended way to create a custom action is to extend :class:`Action`, " "overriding the ``__call__`` method and optionally the ``__init__`` and " @@ -1029,19 +1029,19 @@ msgstr "" "class:`Action` en surchargeant la méthode ``__call__``. Vous avez également " "l'option de surcharger les méthodes ``__init__`` et ``format_usage``." -#: library/argparse.rst:860 +#: library/argparse.rst:862 msgid "An example of a custom action::" msgstr "Un exemple d'action personnalisée ::" -#: library/argparse.rst:880 +#: library/argparse.rst:882 msgid "For more details, see :class:`Action`." msgstr "Pour plus d'information, voir :class:`Action`." -#: library/argparse.rst:883 +#: library/argparse.rst:885 msgid "nargs" msgstr "Le paramètre *nargs*" -#: library/argparse.rst:885 +#: library/argparse.rst:887 msgid "" "ArgumentParser objects usually associate a single command-line argument with " "a single action to be taken. The ``nargs`` keyword argument associates a " @@ -1053,7 +1053,7 @@ msgstr "" "``nargs`` associe un nombre différent d'arguments de la ligne de commande à " "une action. Les valeurs reconnues sont :" -#: library/argparse.rst:890 +#: library/argparse.rst:892 msgid "" "``N`` (an integer). ``N`` arguments from the command line will be gathered " "together into a list. For example::" @@ -1061,7 +1061,7 @@ msgstr "" "``N`` (un entier). ``N`` arguments de la ligne de commande seront capturés " "ensemble et stockés dans une liste. Par exemple ::" -#: library/argparse.rst:899 +#: library/argparse.rst:901 msgid "" "Note that ``nargs=1`` produces a list of one item. This is different from " "the default, in which the item is produced by itself." @@ -1070,7 +1070,7 @@ msgstr "" "différent du comportement par défaut qui produit l'élément directement " "(comme un scalaire)." -#: library/argparse.rst:904 +#: library/argparse.rst:906 msgid "" "``'?'``. One argument will be consumed from the command line if possible, " "and produced as a single item. If no command-line argument is present, the " @@ -1086,7 +1086,7 @@ msgstr "" "qu'elle ne soit pas suivie d'un argument. Dans ce cas, la valeur de const_ " "est produite. Voici quelques exemples pour illustrer ceci ::" -#: library/argparse.rst:921 +#: library/argparse.rst:923 msgid "" "One of the more common uses of ``nargs='?'`` is to allow optional input and " "output files::" @@ -1094,7 +1094,7 @@ msgstr "" "``nargs='?'`` est fréquemment utilisé pour accepter des fichiers d'entrée et " "de sortie optionnels ::" -#: library/argparse.rst:938 +#: library/argparse.rst:940 msgid "" "``'*'``. All command-line arguments present are gathered into a list. Note " "that it generally doesn't make much sense to have more than one positional " @@ -1107,7 +1107,7 @@ msgstr "" "d'avoir plusieurs arguments optionnels qui spécifient ``nargs='*'``. Par " "exemple ::" -#: library/argparse.rst:952 +#: library/argparse.rst:954 msgid "" "``'+'``. Just like ``'*'``, all command-line args present are gathered into " "a list. Additionally, an error message will be generated if there wasn't at " @@ -1118,7 +1118,7 @@ msgstr "" "produit s'il n'y a pas au moins un argument présent sur la ligne de " "commande. Par exemple ::" -#: library/argparse.rst:964 +#: library/argparse.rst:966 msgid "" "If the ``nargs`` keyword argument is not provided, the number of arguments " "consumed is determined by the action_. Generally this means a single " @@ -1129,11 +1129,11 @@ msgstr "" "capturés est déterminé par l'action_. En général, c'est un seul argument de " "la ligne de commande qui est capturé et il est produit directement." -#: library/argparse.rst:970 +#: library/argparse.rst:972 msgid "const" msgstr "Le paramètre *const*" -#: library/argparse.rst:972 +#: library/argparse.rst:974 msgid "" "The ``const`` argument of :meth:`~ArgumentParser.add_argument` is used to " "hold constant values that are not read from the command line but are " @@ -1145,7 +1145,7 @@ msgstr "" "est requise par certaines actions d':class:`ArgumentParser`. Les deux " "utilisations les plus communes sont :" -#: library/argparse.rst:976 +#: library/argparse.rst:978 msgid "" "When :meth:`~ArgumentParser.add_argument` is called with " "``action='store_const'`` or ``action='append_const'``. These actions add " @@ -1160,7 +1160,7 @@ msgstr "" # Nous sommes dans une énumération après un :, donc pas de majuscule et le # paragraphe doit se terminer par ;. -#: library/argparse.rst:981 +#: library/argparse.rst:983 msgid "" "When :meth:`~ArgumentParser.add_argument` is called with option strings " "(like ``-f`` or ``--foo``) and ``nargs='?'``. This creates an optional " @@ -1177,7 +1177,7 @@ msgstr "" "valeur de ``const`` est utilisée. Consultez la description de nargs_ pour " "voir quelques exemples." -#: library/argparse.rst:988 +#: library/argparse.rst:990 msgid "" "With the ``'store_const'`` and ``'append_const'`` actions, the ``const`` " "keyword argument must be given. For other actions, it defaults to ``None``." @@ -1186,11 +1186,11 @@ msgstr "" "``const`` doit être spécifié. Pour toutes les autres actions, il est " "optionnel et sa valeur par défaut est ``None``." -#: library/argparse.rst:993 +#: library/argparse.rst:995 msgid "default" msgstr "Le paramètre *default*" -#: library/argparse.rst:995 +#: library/argparse.rst:997 msgid "" "All optional arguments and some positional arguments may be omitted at the " "command line. The ``default`` keyword argument of :meth:`~ArgumentParser." @@ -1206,7 +1206,7 @@ msgstr "" "commande. Pour les arguments optionnels, la valeur de ``default`` est " "utilisée si la chaîne d'option n'est pas présente sur la ligne de commande ::" -#: library/argparse.rst:1009 +#: library/argparse.rst:1011 msgid "" "If the target namespace already has an attribute set, the action *default* " "will not over write it::" @@ -1214,7 +1214,7 @@ msgstr "" "Si l'objet ``namespace`` cible a déjà un attribut assigné, l'action " "*default* ne l'écrase pas ::" -#: library/argparse.rst:1017 +#: library/argparse.rst:1019 msgid "" "If the ``default`` value is a string, the parser parses the value as if it " "were a command-line argument. In particular, the parser applies any type_ " @@ -1227,7 +1227,7 @@ msgstr "" "est fournie) avant d'affecter l'attribut à l'objet :class:`Namespace` " "renvoyé. Autrement, l'analyseur utilise la valeur telle qu'elle ::" -#: library/argparse.rst:1028 +#: library/argparse.rst:1030 msgid "" "For positional arguments with nargs_ equal to ``?`` or ``*``, the " "``default`` value is used when no command-line argument was present::" @@ -1236,7 +1236,7 @@ msgstr "" "valeur de ``default`` est utilisée quand l'argument est absent de la ligne " "de commande ::" -#: library/argparse.rst:1039 +#: library/argparse.rst:1041 msgid "" "Providing ``default=argparse.SUPPRESS`` causes no attribute to be added if " "the command-line argument was not present::" @@ -1245,11 +1245,11 @@ msgstr "" "à l'objet ``Namespace`` quand l'argument est absent de la ligne de " "commande ::" -#: library/argparse.rst:1051 +#: library/argparse.rst:1053 msgid "type" msgstr "Le paramètre *type*" -#: library/argparse.rst:1053 +#: library/argparse.rst:1055 msgid "" "By default, the parser reads command-line arguments in as simple strings. " "However, quite often the command-line string should instead be interpreted " @@ -1263,7 +1263,7 @@ msgstr "" "`int`. L'argument nommé ``type`` d':meth:`~ArgumentParser.add_argument` nous " "permet de faire les vérifications et les conversions de type nécessaires." -#: library/argparse.rst:1059 +#: library/argparse.rst:1061 msgid "" "If the type_ keyword is used with the default_ keyword, the type converter " "is only applied if the default is a string." @@ -1272,7 +1272,7 @@ msgstr "" "keyword_, le convertisseur de type n'est appliqué que si la valeur par " "défaut est une chaîne." -#: library/argparse.rst:1062 +#: library/argparse.rst:1064 msgid "" "The argument to ``type`` can be any callable that accepts a single string. " "If the function raises :exc:`ArgumentTypeError`, :exc:`TypeError`, or :exc:" @@ -1285,18 +1285,18 @@ msgstr "" "d'erreur agréablement formaté est affiché. Aucun autre type d'exception " "n'est géré." -#: library/argparse.rst:1067 +#: library/argparse.rst:1069 msgid "Common built-in types and functions can be used as type converters:" msgstr "" "Les types et les fonctions natives peuvent être utilisés comme " "convertisseurs de types :" -#: library/argparse.rst:1083 +#: library/argparse.rst:1085 msgid "User defined functions can be used as well:" msgstr "" "Des fonctions définies par l'utilisateur peuvent aussi être utilisées :" -#: library/argparse.rst:1095 +#: library/argparse.rst:1097 msgid "" "The :func:`bool` function is not recommended as a type converter. All it " "does is convert empty strings to ``False`` and non-empty strings to " @@ -1306,7 +1306,7 @@ msgstr "" "comportement se limite à convertir les chaînes vides à ``False`` et les " "chaînes non-vides à ``True``. Ce n'est généralement pas le résultat désiré." -#: library/argparse.rst:1099 +#: library/argparse.rst:1101 msgid "" "In general, the ``type`` keyword is a convenience that should only be used " "for simple conversions that can only raise one of the three supported " @@ -1319,7 +1319,7 @@ msgstr "" "d'erreurs plus intéressant ou une gestion de ressources devraient être " "effectuées plus tard dans l’exécution suite à l'analyse des arguments." -#: library/argparse.rst:1104 +#: library/argparse.rst:1106 msgid "" "For example, JSON or YAML conversions have complex error cases that require " "better reporting than can be given by the ``type`` keyword. An :exc:`~json." @@ -1332,7 +1332,7 @@ msgstr "" "JSONDecodeError` ne serait pas adéquatement formatée et une exception :exc:" "`FileNotFound` ne serait pas du tout traitée." -#: library/argparse.rst:1109 +#: library/argparse.rst:1111 msgid "" "Even :class:`~argparse.FileType` has its limitations for use with the " "``type`` keyword. If one argument uses *FileType* and then a subsequent " @@ -1347,7 +1347,7 @@ msgstr "" "fin de l'exécution de l'analyseur puis de gérer les fichiers à l'aide d'un " "bloc :keyword:`with`." -#: library/argparse.rst:1115 +#: library/argparse.rst:1117 msgid "" "For type checkers that simply check against a fixed set of values, consider " "using the choices_ keyword instead." @@ -1355,11 +1355,11 @@ msgstr "" "Pour les vérificateurs de types qui ne font que tester l'appartenance à un " "ensemble de valeurs, pensez plutôt à utiliser l'argument nommé choices_." -#: library/argparse.rst:1120 +#: library/argparse.rst:1122 msgid "choices" msgstr "Le paramètre *choices*" -#: library/argparse.rst:1122 +#: library/argparse.rst:1124 msgid "" "Some command-line arguments should be selected from a restricted set of " "values. These can be handled by passing a container object as the *choices* " @@ -1374,7 +1374,7 @@ msgstr "" "l'argument sont comparées et un message d'erreur est affiché si l'argument " "n'est pas parmi les valeurs acceptables ::" -#: library/argparse.rst:1137 +#: library/argparse.rst:1139 msgid "" "Note that inclusion in the *choices* container is checked after any type_ " "conversions have been performed, so the type of the objects in the *choices* " @@ -1384,7 +1384,7 @@ msgstr "" "la conversion de type_. Le type des objets dans le conteneur *choices* " "doivent donc correspondre au type_ spécifié ::" -#: library/argparse.rst:1149 +#: library/argparse.rst:1151 msgid "" "Any container can be passed as the *choices* value, so :class:`list` " "objects, :class:`set` objects, and custom containers are all supported." @@ -1393,7 +1393,7 @@ msgstr "" "les objets :class:`list`, les objets :class:`set` et les conteneurs " "personnalisés sont tous acceptés." -#: library/argparse.rst:1152 +#: library/argparse.rst:1154 msgid "" "Use of :class:`enum.Enum` is not recommended because it is difficult to " "control its appearance in usage, help, and error messages." @@ -1401,7 +1401,7 @@ msgstr "" "L'utilisation d':class:`enum.Enum` est déconseillée, car il est difficile de " "contrôler son apparence dans les messages d'usage, d'aide et d'erreur." -#: library/argparse.rst:1155 +#: library/argparse.rst:1157 msgid "" "Formatted choices overrides the default *metavar* which is normally derived " "from *dest*. This is usually what you want because the user never sees the " @@ -1414,11 +1414,11 @@ msgstr "" "pas souhaité (comme lorsque les choix sont nombreux) spécifiez simplement " "metavar_ de façon explicite." -#: library/argparse.rst:1162 +#: library/argparse.rst:1164 msgid "required" msgstr "Le paramètre *required*" -#: library/argparse.rst:1164 +#: library/argparse.rst:1166 msgid "" "In general, the :mod:`argparse` module assumes that flags like ``-f`` and " "``--bar`` indicate *optional* arguments, which can always be omitted at the " @@ -1431,7 +1431,7 @@ msgstr "" "*obligatoire*, ``True`` peut être passé à l'argument nommé ``required=`` d':" "meth:`~ArgumentParser.add_argument` ::" -#: library/argparse.rst:1177 +#: library/argparse.rst:1179 msgid "" "As the example shows, if an option is marked as ``required``, :meth:" "`~ArgumentParser.parse_args` will report an error if that option is not " @@ -1441,7 +1441,7 @@ msgstr "" "``required``, :meth:`~ArgumentParser.parse_args` mentionne une erreur si " "l'option est absente de la ligne de commande." -#: library/argparse.rst:1183 +#: library/argparse.rst:1185 msgid "" "Required options are generally considered bad form because users expect " "*options* to be *optional*, and thus they should be avoided when possible." @@ -1450,11 +1450,11 @@ msgstr "" "utilisateurs s'attendent que les *options* soient *optionnelles*. Elles " "devraient donc être évitées si possible." -#: library/argparse.rst:1188 +#: library/argparse.rst:1190 msgid "help" msgstr "Le paramètre *help*" -#: library/argparse.rst:1190 +#: library/argparse.rst:1192 msgid "" "The ``help`` value is a string containing a brief description of the " "argument. When a user requests help (usually by using ``-h`` or ``--help`` " @@ -1466,7 +1466,7 @@ msgstr "" "l'utilisation de ``-h`` ou ``--help`` sur la ligne de commande), ces " "descriptions d'aide seront affichées pour chacun des arguments ::" -#: library/argparse.rst:1210 +#: library/argparse.rst:1212 msgid "" "The ``help`` strings can include various format specifiers to avoid " "repetition of things like the program name or the argument default_. The " @@ -1481,7 +1481,7 @@ msgstr "" "plupart des arguments nommés d':meth:`~ArgumentParser.add_argument`, tels " "que ``%(default)s``, ``%(type)s``, etc. ::" -#: library/argparse.rst:1227 +#: library/argparse.rst:1229 msgid "" "As the help string supports %-formatting, if you want a literal ``%`` to " "appear in the help string, you must escape it as ``%%``." @@ -1490,7 +1490,7 @@ msgstr "" "désirez afficher un ``%`` littéral dans la chaîne d'aide, vous devez en " "faire l’échappement avec ``%%``." -#: library/argparse.rst:1230 +#: library/argparse.rst:1232 msgid "" ":mod:`argparse` supports silencing the help entry for certain options, by " "setting the ``help`` value to ``argparse.SUPPRESS``::" @@ -1498,11 +1498,11 @@ msgstr "" ":mod:`argparse` peut supprimer la rubrique d'aide de certaines options. Pour " "ce faire, passez ``argparse.SUPPRESS`` à ``help`` ::" -#: library/argparse.rst:1243 +#: library/argparse.rst:1245 msgid "metavar" msgstr "Le paramètre *metavar*" -#: library/argparse.rst:1245 +#: library/argparse.rst:1247 msgid "" "When :class:`ArgumentParser` generates help messages, it needs some way to " "refer to each expected argument. By default, ArgumentParser objects use the " @@ -1523,11 +1523,11 @@ msgstr "" "positionnel unique ``--foo`` qui prend un seul argument sur la ligne de " "commande sera affiché comme ``FOO``. Par exemple ::" -#: library/argparse.rst:1269 +#: library/argparse.rst:1271 msgid "An alternative name can be specified with ``metavar``::" msgstr "Un nom alternatif peut être fourni à ``metavar`` ::" -#: library/argparse.rst:1286 +#: library/argparse.rst:1288 msgid "" "Note that ``metavar`` only changes the *displayed* name - the name of the " "attribute on the :meth:`~ArgumentParser.parse_args` object is still " @@ -1537,7 +1537,7 @@ msgstr "" "l'attribut ajouté à l'objet renvoyé par :meth:`~ArgumentParser.parse_args` " "est toujours déterminé par la valeur de dest_." -#: library/argparse.rst:1290 +#: library/argparse.rst:1292 msgid "" "Different values of ``nargs`` may cause the metavar to be used multiple " "times. Providing a tuple to ``metavar`` specifies a different display for " @@ -1547,11 +1547,11 @@ msgstr "" "plus d'une fois. Passer un *n-uplet* à ``metavar`` indique les différents " "noms à afficher pour chacun des arguments ::" -#: library/argparse.rst:1307 +#: library/argparse.rst:1309 msgid "dest" msgstr "Le paramètre *dest*" -#: library/argparse.rst:1309 +#: library/argparse.rst:1311 msgid "" "Most :class:`ArgumentParser` actions add some value as an attribute of the " "object returned by :meth:`~ArgumentParser.parse_args`. The name of this " @@ -1567,7 +1567,7 @@ msgstr "" "est généralement le premier argument d':meth:`~ArgumentParser." "add_argument` ::" -#: library/argparse.rst:1321 +#: library/argparse.rst:1323 msgid "" "For optional argument actions, the value of ``dest`` is normally inferred " "from the option strings. :class:`ArgumentParser` generates the value of " @@ -1587,15 +1587,15 @@ msgstr "" "s'assurer que la chaîne est un nom d'attribut valide. Les exemples suivants " "illustrent ce comportement ::" -#: library/argparse.rst:1338 +#: library/argparse.rst:1340 msgid "``dest`` allows a custom attribute name to be provided::" msgstr "``dest`` vous permet de fournir un nom d'attribut personnalisé ::" -#: library/argparse.rst:1346 +#: library/argparse.rst:1348 msgid "Action classes" msgstr "Classes Action" -#: library/argparse.rst:1348 +#: library/argparse.rst:1350 msgid "" "Action classes implement the Action API, a callable which returns a callable " "which processes arguments from the command-line. Any object which follows " @@ -1606,7 +1606,7 @@ msgstr "" "qui suit cette API peut être passé comme paramètre ``action`` d':meth:" "`add_argument`." -#: library/argparse.rst:1357 +#: library/argparse.rst:1359 msgid "" "Action objects are used by an ArgumentParser to represent the information " "needed to parse a single argument from one or more strings from the command " @@ -1620,7 +1620,7 @@ msgstr "" "doit accepter les deux arguments positionnels d':meth:`ArgumentParser." "add_argument` ainsi que tous ses arguments nommés, sauf ``action``." -#: library/argparse.rst:1363 +#: library/argparse.rst:1365 msgid "" "Instances of Action (or return value of any callable to the ``action`` " "parameter) should have attributes \"dest\", \"option_strings\", \"default\", " @@ -1633,7 +1633,7 @@ msgstr "" "plus simple de s'assurer que ces attributs sont définis est d'appeler " "``Action.__init__``." -#: library/argparse.rst:1368 +#: library/argparse.rst:1370 msgid "" "Action instances should be callable, so subclasses must override the " "``__call__`` method, which should accept four parameters:" @@ -1642,11 +1642,11 @@ msgstr "" "doivent surcharger la méthode ``__call__``. Cette méthode doit accepter " "quatre paramètres :" -#: library/argparse.rst:1371 +#: library/argparse.rst:1373 msgid "``parser`` - The ArgumentParser object which contains this action." msgstr "``parser`` – L'objet ``ArgumentParser`` qui contient cette action ;" -#: library/argparse.rst:1373 +#: library/argparse.rst:1375 msgid "" "``namespace`` - The :class:`Namespace` object that will be returned by :meth:" "`~ArgumentParser.parse_args`. Most actions add an attribute to this object " @@ -1656,7 +1656,7 @@ msgstr "" "`~ArgumentParser.parse_args`. La majorité des actions ajoutent un attribut à " "cet objet avec :func:`setattr` ;" -#: library/argparse.rst:1377 +#: library/argparse.rst:1379 msgid "" "``values`` - The associated command-line arguments, with any type " "conversions applied. Type conversions are specified with the type_ keyword " @@ -1667,7 +1667,7 @@ msgstr "" "spécifiées grâce à l’argument nommé type_ d':meth:`~ArgumentParser." "add_argument` ;" -#: library/argparse.rst:1381 +#: library/argparse.rst:1383 msgid "" "``option_string`` - The option string that was used to invoke this action. " "The ``option_string`` argument is optional, and will be absent if the action " @@ -1677,7 +1677,7 @@ msgstr "" "L'argument ``option_string`` est optionnel et est absent si l'action est " "associée à un argument positionnel." -#: library/argparse.rst:1385 +#: library/argparse.rst:1387 msgid "" "The ``__call__`` method may perform arbitrary actions, but will typically " "set attributes on the ``namespace`` based on ``dest`` and ``values``." @@ -1686,7 +1686,7 @@ msgstr "" "général elle affecte des attributs sur le ``namespace`` en fonction de " "``dest`` et de ``values``." -#: library/argparse.rst:1388 +#: library/argparse.rst:1390 msgid "" "Action subclasses can define a ``format_usage`` method that takes no " "argument and return a string which will be used when printing the usage of " @@ -1697,11 +1697,11 @@ msgstr "" "utilisée lors de l'affichage du message d'utilisation du programme. Si cette " "méthode n'est pas fournie, une valeur raisonnable est utilisée par défaut." -#: library/argparse.rst:1393 +#: library/argparse.rst:1395 msgid "The parse_args() method" msgstr "La méthode *parse_args()*" -#: library/argparse.rst:1397 +#: library/argparse.rst:1399 msgid "" "Convert argument strings to objects and assign them as attributes of the " "namespace. Return the populated namespace." @@ -1709,7 +1709,7 @@ msgstr "" "Convertie les chaînes d'arguments en objets et les assigne comme attributs " "de l'objet ``namespace``. Retourne l'objet ``namespace`` rempli." -#: library/argparse.rst:1400 +#: library/argparse.rst:1402 msgid "" "Previous calls to :meth:`add_argument` determine exactly what objects are " "created and how they are assigned. See the documentation for :meth:" @@ -1719,7 +1719,7 @@ msgstr "" "quels objets sont créés et comment ils sont affectés. Consultez la rubrique " "d':meth:`add_argument` pour les détails." -#: library/argparse.rst:1404 +#: library/argparse.rst:1406 msgid "" "args_ - List of strings to parse. The default is taken from :data:`sys." "argv`." @@ -1727,7 +1727,7 @@ msgstr "" "args_ – Liste de chaînes à analyser. La valeur par défaut est récupérée " "dans : :data:`sys.argv`." -#: library/argparse.rst:1407 +#: library/argparse.rst:1409 msgid "" "namespace_ - An object to take the attributes. The default is a new empty :" "class:`Namespace` object." @@ -1735,11 +1735,11 @@ msgstr "" "namespace_ – Un objet pour recevoir les attributs. Par défaut : une nouvelle " "instance (vide) de :class:`Namespace`." -#: library/argparse.rst:1412 +#: library/argparse.rst:1414 msgid "Option value syntax" msgstr "Syntaxe de la valeur des options" -#: library/argparse.rst:1414 +#: library/argparse.rst:1416 msgid "" "The :meth:`~ArgumentParser.parse_args` method supports several ways of " "specifying the value of an option (if it takes one). In the simplest case, " @@ -1750,7 +1750,7 @@ msgstr "" "simple, l'option et sa valeur sont passées en tant que deux arguments " "distincts ::" -#: library/argparse.rst:1426 +#: library/argparse.rst:1428 msgid "" "For long options (options with names longer than a single character), the " "option and value can also be passed as a single command-line argument, using " @@ -1760,7 +1760,7 @@ msgstr "" "caractère), l'option et sa valeur peuvent être passées comme un seul " "argument de la ligne de commande en utilisant ``=`` comme séparateur ::" -#: library/argparse.rst:1433 +#: library/argparse.rst:1435 msgid "" "For short options (options only one character long), the option and its " "value can be concatenated::" @@ -1768,7 +1768,7 @@ msgstr "" "Pour les options courtes (les options qui utilisent un seul caractère), " "l'option et sa valeur peuvent être concaténées ::" -#: library/argparse.rst:1439 +#: library/argparse.rst:1441 msgid "" "Several short options can be joined together, using only a single ``-`` " "prefix, as long as only the last option (or none of them) requires a value::" @@ -1777,11 +1777,11 @@ msgstr "" "préfixe ``-`` pour autant que seule la dernière (ou aucune) nécessite une " "valeur ::" -#: library/argparse.rst:1451 +#: library/argparse.rst:1453 msgid "Invalid arguments" msgstr "Arguments invalides" -#: library/argparse.rst:1453 +#: library/argparse.rst:1455 msgid "" "While parsing the command line, :meth:`~ArgumentParser.parse_args` checks " "for a variety of errors, including ambiguous options, invalid types, invalid " @@ -1795,11 +1795,11 @@ msgstr "" "elle affiche l'erreur accompagnée du message d'aide puis termine " "l'exécution ::" -#: library/argparse.rst:1479 +#: library/argparse.rst:1481 msgid "Arguments containing ``-``" msgstr "Arguments contenant ``-``" -#: library/argparse.rst:1481 +#: library/argparse.rst:1483 msgid "" "The :meth:`~ArgumentParser.parse_args` method attempts to give errors " "whenever the user has clearly made a mistake, but some situations are " @@ -1820,7 +1820,7 @@ msgstr "" "que l'analyseur ne contient aucune option qui a l'apparence d'un nombre " "négatif ::" -#: library/argparse.rst:1519 +#: library/argparse.rst:1521 msgid "" "If you have positional arguments that must begin with ``-`` and don't look " "like negative numbers, you can insert the pseudo-argument ``'--'`` which " @@ -1832,11 +1832,11 @@ msgstr "" "argument ``'--'`` qui indique à :meth:`~ArgumentParser.parse_args` de " "traiter tout ce qui suit comme un argument positionnel ::" -#: library/argparse.rst:1530 +#: library/argparse.rst:1532 msgid "Argument abbreviations (prefix matching)" msgstr "Arguments abrégés (Par comparaison de leurs préfixes)" -#: library/argparse.rst:1532 +#: library/argparse.rst:1534 msgid "" "The :meth:`~ArgumentParser.parse_args` method :ref:`by default " "` allows long options to be abbreviated to a prefix, if the " @@ -1847,7 +1847,7 @@ msgstr "" "autant que l’abréviation soit non-ambigüe, c'est-à-dire qu'elle ne " "corresponde qu'à une seule option ::" -#: library/argparse.rst:1547 +#: library/argparse.rst:1549 msgid "" "An error is produced for arguments that could produce more than one options. " "This feature can be disabled by setting :ref:`allow_abbrev` to ``False``." @@ -1856,11 +1856,11 @@ msgstr "" "option. Ce comportement peut être désactivé en passant ``False`` à :ref:" "`allow_abbrev`." -#: library/argparse.rst:1553 +#: library/argparse.rst:1555 msgid "Beyond ``sys.argv``" msgstr "Au-delà de ``sys.argv``" -#: library/argparse.rst:1555 +#: library/argparse.rst:1557 msgid "" "Sometimes it may be useful to have an ArgumentParser parse arguments other " "than those of :data:`sys.argv`. This can be accomplished by passing a list " @@ -1873,11 +1873,11 @@ msgstr "" "parse_args`. Cette approche est pratique pour faire des tests depuis " "l'invite de commande ::" -#: library/argparse.rst:1575 +#: library/argparse.rst:1577 msgid "The Namespace object" msgstr "L'objet ``Namespace``" -#: library/argparse.rst:1579 +#: library/argparse.rst:1581 msgid "" "Simple class used by default by :meth:`~ArgumentParser.parse_args` to create " "an object holding attributes and return it." @@ -1886,7 +1886,7 @@ msgstr "" "parse_args` pour créer un objet qui stock les attributs. Cet objet est " "renvoyé par ``ArgumentParser.parse_args``." -#: library/argparse.rst:1582 +#: library/argparse.rst:1584 msgid "" "This class is deliberately simple, just an :class:`object` subclass with a " "readable string representation. If you prefer to have dict-like view of the " @@ -1897,7 +1897,7 @@ msgstr "" "une vue *dict-compatible*, vous devez utiliser :func:`vars` (un idiome " "Python classique) ::" -#: library/argparse.rst:1592 +#: library/argparse.rst:1594 msgid "" "It may also be useful to have an :class:`ArgumentParser` assign attributes " "to an already existing object, rather than a new :class:`Namespace` object. " @@ -1908,15 +1908,15 @@ msgstr "" "création d'un nouvel objet :class:`Namespace`. Ceci peut être réalisé avec " "l'argument nommé ``namespace=`` ::" -#: library/argparse.rst:1608 +#: library/argparse.rst:1610 msgid "Other utilities" msgstr "Autres outils" -#: library/argparse.rst:1611 +#: library/argparse.rst:1613 msgid "Sub-commands" msgstr "Sous commandes" -#: library/argparse.rst:1618 +#: library/argparse.rst:1620 msgid "" "Many programs split up their functionality into a number of sub-commands, " "for example, the ``svn`` program can invoke sub-commands like ``svn " @@ -1944,11 +1944,11 @@ msgstr "" "constructeur d':class:`ArgumentParser` ; elle renvoie un objet :class:" "`ArgumentParser` qui peut être modifié normalement." -#: library/argparse.rst:1630 +#: library/argparse.rst:1632 msgid "Description of parameters:" msgstr "Description des paramètres :" -#: library/argparse.rst:1632 +#: library/argparse.rst:1634 msgid "" "title - title for the sub-parser group in help output; by default " "\"subcommands\" if description is provided, otherwise uses title for " @@ -1958,7 +1958,7 @@ msgstr "" "défaut : ``\"subcommands\"`` si ``description`` est fournie, sinon utilise " "la valeur de ``title`` de la section sur les arguments positionnels ;" -#: library/argparse.rst:1636 +#: library/argparse.rst:1638 msgid "" "description - description for the sub-parser group in help output, by " "default ``None``" @@ -1968,7 +1968,7 @@ msgstr "" # I think the English version is very misleading here. Even for subcommands, # ``prog`` is only a tiny prefix of the auto generater usage string. -#: library/argparse.rst:1639 +#: library/argparse.rst:1641 msgid "" "prog - usage information that will be displayed with sub-command help, by " "default the name of the program and any positional arguments before the " @@ -1978,7 +1978,7 @@ msgstr "" "commandes ; par défaut : le nom du programme et les arguments positionnels " "qui arrivent avant l'argument de ce sous-analyseur ;" -#: library/argparse.rst:1643 +#: library/argparse.rst:1645 msgid "" "parser_class - class which will be used to create sub-parser instances, by " "default the class of the current parser (e.g. ArgumentParser)" @@ -1987,7 +1987,7 @@ msgstr "" "analyseurs ; par défaut : la classe de l'analyseur courant (par exemple " "``ArgumentParser``) ;" -#: library/argparse.rst:1646 +#: library/argparse.rst:1648 msgid "" "action_ - the basic type of action to be taken when this argument is " "encountered at the command line" @@ -1995,7 +1995,7 @@ msgstr "" "action_ – action à entreprendre quand cet argument est reconnu sur la ligne " "de commande ;" -#: library/argparse.rst:1649 +#: library/argparse.rst:1651 msgid "" "dest_ - name of the attribute under which sub-command name will be stored; " "by default ``None`` and no value is stored" @@ -2003,7 +2003,7 @@ msgstr "" "dest_ – nom de l'attribut sous lequel la sous-commande est stockée ; par " "défaut : ``None`` et aucune valeur n'est stockée ;" -#: library/argparse.rst:1652 +#: library/argparse.rst:1654 msgid "" "required_ - Whether or not a subcommand must be provided, by default " "``False`` (added in 3.7)" @@ -2011,13 +2011,13 @@ msgstr "" "required_ – ``True`` si la sous-commande est obligatoire ; par défaut : " "``False`` (ajouté dans 3.7) ;" -#: library/argparse.rst:1655 +#: library/argparse.rst:1657 msgid "help_ - help for sub-parser group in help output, by default ``None``" msgstr "" "help_ – message d'aide pour le groupe du sous-analyseur dans la sortie " "d'aide ; par défaut : ``None`` ;" -#: library/argparse.rst:1657 +#: library/argparse.rst:1659 msgid "" "metavar_ - string presenting available sub-commands in help; by default it " "is ``None`` and presents sub-commands in form {cmd1, cmd2, ..}" @@ -2026,11 +2026,11 @@ msgstr "" "messages d'aide ; par défaut : ``None``, ce qui entraine la génération d'une " "chaîne suivant le format ``'{cmd1, cmd2, …}'``." -#: library/argparse.rst:1660 +#: library/argparse.rst:1662 msgid "Some example usage::" msgstr "Quelques exemples d'utilisation ::" -#: library/argparse.rst:1681 +#: library/argparse.rst:1683 msgid "" "Note that the object returned by :meth:`parse_args` will only contain " "attributes for the main parser and the subparser that was selected by the " @@ -2047,7 +2047,7 @@ msgstr "" "présents ; quand la commande ``b`` est spécifiée, seuls les attributs " "``foo`` et ``baz`` sont présents." -#: library/argparse.rst:1688 +#: library/argparse.rst:1690 msgid "" "Similarly, when a help message is requested from a subparser, only the help " "for that particular parser will be printed. The help message will not " @@ -2062,7 +2062,7 @@ msgstr "" "d'aide pour chacun des sous-analyseurs grâce à l'argument ``help=`` d':meth:" "`add_parser` tel qu'illustré ci-dessus." -#: library/argparse.rst:1724 +#: library/argparse.rst:1726 msgid "" "The :meth:`add_subparsers` method also supports ``title`` and " "``description`` keyword arguments. When either is present, the subparser's " @@ -2073,7 +2073,7 @@ msgstr "" "sous-analyseur sont affichées dans leur propre groupe dans la sortie d'aide. " "Par exemple ::" -#: library/argparse.rst:1745 +#: library/argparse.rst:1747 msgid "" "Furthermore, ``add_parser`` supports an additional ``aliases`` argument, " "which allows multiple strings to refer to the same subparser. This example, " @@ -2084,7 +2084,7 @@ msgstr "" "L'exemple suivant, à la manière de ``svn``, utilise ``co`` comme une " "abréviation de ``checkout`` ::" -#: library/argparse.rst:1756 +#: library/argparse.rst:1758 msgid "" "One particularly effective way of handling sub-commands is to combine the " "use of the :meth:`add_subparsers` method with calls to :meth:`set_defaults` " @@ -2096,7 +2096,7 @@ msgstr "" "`set_defaults` pour que chaque sous-analyseur sache quelle fonction Python " "doit être exécutée. Par exemple ::" -#: library/argparse.rst:1793 +#: library/argparse.rst:1795 msgid "" "This way, you can let :meth:`parse_args` do the job of calling the " "appropriate function after argument parsing is complete. Associating " @@ -2112,15 +2112,15 @@ msgstr "" "avez besoin de consulter le nom de du sous-analyseur qui a été invoqué, vous " "pouvez utiliser l'argument nommé ``dest`` d':meth:`add_subparsers` ::" -#: library/argparse.rst:1809 +#: library/argparse.rst:1811 msgid "New *required* keyword argument." msgstr "Introduction des arguments nommés obligatoires." -#: library/argparse.rst:1814 +#: library/argparse.rst:1816 msgid "FileType objects" msgstr "Objets ``FileType``" -#: library/argparse.rst:1818 +#: library/argparse.rst:1820 msgid "" "The :class:`FileType` factory creates objects that can be passed to the type " "argument of :meth:`ArgumentParser.add_argument`. Arguments that have :class:" @@ -2135,7 +2135,7 @@ msgstr "" "taille du tampon, encodage et gestion des erreurs (voir la fonction :func:" "`open` pour plus de détails) ::" -#: library/argparse.rst:1830 +#: library/argparse.rst:1832 msgid "" "FileType objects understand the pseudo-argument ``'-'`` and automatically " "convert this into ``sys.stdin`` for readable :class:`FileType` objects and " @@ -2146,15 +2146,15 @@ msgstr "" "`FileType` ouverts en lecture et vers ``sys.stdout`` pour les objets :class:" "`FileType` ouverts en écriture ::" -#: library/argparse.rst:1839 +#: library/argparse.rst:1841 msgid "The *encodings* and *errors* keyword arguments." msgstr "Les arguments nommés ``encodings`` et ``errors``." -#: library/argparse.rst:1844 +#: library/argparse.rst:1846 msgid "Argument groups" msgstr "Groupes d'arguments" -#: library/argparse.rst:1848 +#: library/argparse.rst:1850 msgid "" "By default, :class:`ArgumentParser` groups command-line arguments into " "\"positional arguments\" and \"optional arguments\" when displaying help " @@ -2168,7 +2168,7 @@ msgstr "" "meilleur regroupement conceptuel des arguments, les groupes adéquats peuvent " "être créés avec la méthode :meth:`add_argument_group` ::" -#: library/argparse.rst:1865 +#: library/argparse.rst:1867 msgid "" "The :meth:`add_argument_group` method returns an argument group object which " "has an :meth:`~ArgumentParser.add_argument` method just like a regular :" @@ -2186,7 +2186,7 @@ msgstr "" "d'aide. Afin de personnaliser l'affichage, la méthode :meth:" "`add_argument_group` accepte les arguments ``title`` et ``description`` ::" -#: library/argparse.rst:1891 +#: library/argparse.rst:1893 msgid "" "Note that any arguments not in your user-defined groups will end up back in " "the usual \"positional arguments\" and \"optional arguments\" sections." @@ -2195,11 +2195,11 @@ msgstr "" "affiché dans l'une des sections usuelles *positional arguments* et *optional " "arguments*." -#: library/argparse.rst:1896 +#: library/argparse.rst:1898 msgid "Mutual exclusion" msgstr "Exclusion mutuelle" -#: library/argparse.rst:1900 +#: library/argparse.rst:1902 msgid "" "Create a mutually exclusive group. :mod:`argparse` will make sure that only " "one of the arguments in the mutually exclusive group was present on the " @@ -2209,7 +2209,7 @@ msgstr "" "qu'au plus un des arguments du groupe mutuellement exclusif est présent sur " "la ligne de commande ::" -#: library/argparse.rst:1916 +#: library/argparse.rst:1918 msgid "" "The :meth:`add_mutually_exclusive_group` method also accepts a *required* " "argument, to indicate that at least one of the mutually exclusive arguments " @@ -2219,7 +2219,7 @@ msgstr "" "``required`` pour indiquer qu'au moins un des arguments mutuellement " "exclusifs est nécessaire ::" -#: library/argparse.rst:1928 +#: library/argparse.rst:1930 msgid "" "Note that currently mutually exclusive argument groups do not support the " "*title* and *description* arguments of :meth:`~ArgumentParser." @@ -2229,11 +2229,11 @@ msgstr "" "n'acceptent pas les arguments ``title`` et ``description`` d':meth:" "`~ArgumentParser.add_argument_group`." -#: library/argparse.rst:1934 +#: library/argparse.rst:1936 msgid "Parser defaults" msgstr "Valeurs par défaut de l'analyseur" -#: library/argparse.rst:1938 +#: library/argparse.rst:1940 msgid "" "Most of the time, the attributes of the object returned by :meth:" "`parse_args` will be fully determined by inspecting the command-line " @@ -2247,14 +2247,14 @@ msgstr "" "`set_defaults` permet l'ajout d'attributs additionnels qui sont définis sans " "nécessiter l'inspection de la ligne de commande ::" -#: library/argparse.rst:1950 +#: library/argparse.rst:1952 msgid "" "Note that parser-level defaults always override argument-level defaults::" msgstr "" "Prenez note que les valeurs par défaut au niveau de l'analyseur ont " "précédence sur les valeurs par défaut au niveau de l'argument ::" -#: library/argparse.rst:1958 +#: library/argparse.rst:1960 msgid "" "Parser-level defaults can be particularly useful when working with multiple " "parsers. See the :meth:`~ArgumentParser.add_subparsers` method for an " @@ -2264,7 +2264,7 @@ msgstr "" "quand on travaille avec plusieurs analyseurs. Voir la méthode :meth:" "`~ArgumentParser.add_subparsers` pour un exemple de cette utilisation." -#: library/argparse.rst:1964 +#: library/argparse.rst:1966 msgid "" "Get the default value for a namespace attribute, as set by either :meth:" "`~ArgumentParser.add_argument` or by :meth:`~ArgumentParser.set_defaults`::" @@ -2273,11 +2273,11 @@ msgstr "" "qu'il a été défini soit par :meth:`~ArgumentParser.add_argument` ou par :" "meth:`~ArgumentParser.set_defaults` ::" -#: library/argparse.rst:1975 +#: library/argparse.rst:1977 msgid "Printing help" msgstr "Afficher l'aide" -#: library/argparse.rst:1977 +#: library/argparse.rst:1979 msgid "" "In most typical applications, :meth:`~ArgumentParser.parse_args` will take " "care of formatting and printing any usage or error messages. However, " @@ -2287,7 +2287,7 @@ msgstr "" "charge du formatage et de l'affichage des messages d'erreur et " "d'utilisation. Plusieurs méthodes de formatage sont toutefois disponibles :" -#: library/argparse.rst:1983 +#: library/argparse.rst:1985 msgid "" "Print a brief description of how the :class:`ArgumentParser` should be " "invoked on the command line. If *file* is ``None``, :data:`sys.stdout` is " @@ -2297,7 +2297,7 @@ msgstr "" "`ArgumentParser` depuis la ligne de commande. Si ``file`` est ``None``, " "utilise :data:`sys.stdout`." -#: library/argparse.rst:1989 +#: library/argparse.rst:1991 msgid "" "Print a help message, including the program usage and information about the " "arguments registered with the :class:`ArgumentParser`. If *file* is " @@ -2307,7 +2307,7 @@ msgstr "" "l'information sur les arguments répertoriés dans l':class:`ArgumentParser`. " "Si ``file`` est ``None``, utilise :data:`sys.stdout`." -#: library/argparse.rst:1993 +#: library/argparse.rst:1995 msgid "" "There are also variants of these methods that simply return a string instead " "of printing it:" @@ -2315,7 +2315,7 @@ msgstr "" "Des variantes de ces méthodes sont fournies pour renvoyer la chaîne plutôt " "que de l'afficher :" -#: library/argparse.rst:1998 +#: library/argparse.rst:2000 msgid "" "Return a string containing a brief description of how the :class:" "`ArgumentParser` should be invoked on the command line." @@ -2323,7 +2323,7 @@ msgstr "" "Renvoie une chaîne contenant une brève description sur la façon d'invoquer " "l':class:`ArgumentParser` depuis la ligne de commande." -#: library/argparse.rst:2003 +#: library/argparse.rst:2005 msgid "" "Return a string containing a help message, including the program usage and " "information about the arguments registered with the :class:`ArgumentParser`." @@ -2332,11 +2332,11 @@ msgstr "" "informations sur l'utilisation du programme et sur les arguments définis " "dans l':class:`ArgumentParser`." -#: library/argparse.rst:2008 +#: library/argparse.rst:2010 msgid "Partial parsing" msgstr "Analyse partielle" -#: library/argparse.rst:2012 +#: library/argparse.rst:2014 msgid "" "Sometimes a script may only parse a few of the command-line arguments, " "passing the remaining arguments on to another script or program. In these " @@ -2354,7 +2354,7 @@ msgstr "" "sont présents. Au lieu, elle renvoie une paire de valeurs : l'objet " "``Namespace`` rempli et la liste des arguments non-traités." -#: library/argparse.rst:2028 +#: library/argparse.rst:2030 msgid "" ":ref:`Prefix matching ` rules apply to :meth:" "`parse_known_args`. The parser may consume an option even if it's just a " @@ -2366,11 +2366,11 @@ msgstr "" "option même si elle n'est que le préfixe d'une option reconnue plutôt que de " "la laisser dans la liste des arguments non-traités." -#: library/argparse.rst:2035 +#: library/argparse.rst:2037 msgid "Customizing file parsing" msgstr "Personnaliser le *parsing* de fichiers" -#: library/argparse.rst:2039 +#: library/argparse.rst:2041 msgid "" "Arguments that are read from a file (see the *fromfile_prefix_chars* keyword " "argument to the :class:`ArgumentParser` constructor) are read one argument " @@ -2382,7 +2382,7 @@ msgstr "" "un traitement plus élaboré. Voir aussi l'argument nommé " "``fromfile_prefix_chars`` du constructeur d':class:`ArgumentParser`." -#: library/argparse.rst:2044 +#: library/argparse.rst:2046 msgid "" "This method takes a single argument *arg_line* which is a string read from " "the argument file. It returns a list of arguments parsed from this string. " @@ -2394,7 +2394,7 @@ msgstr "" "appelée une fois pour chaque ligne lue du fichier d'arguments. L'ordre est " "préservé." -#: library/argparse.rst:2048 +#: library/argparse.rst:2050 msgid "" "A useful override of this method is one that treats each space-separated " "word as an argument. The following example demonstrates how to do this::" @@ -2403,11 +2403,11 @@ msgstr "" "par des espaces d'être traité comme un argument. L'exemple suivant illustre " "comment réaliser ceci ::" -#: library/argparse.rst:2057 +#: library/argparse.rst:2059 msgid "Exiting methods" msgstr "Méthodes d'interruptions" -#: library/argparse.rst:2061 +#: library/argparse.rst:2063 msgid "" "This method terminates the program, exiting with the specified *status* and, " "if given, it prints a *message* before that. The user can override this " @@ -2418,7 +2418,7 @@ msgstr "" "est affichée avant la fin de l'exécution. Vous pouvez surcharger cette " "méthode pour traiter ces étapes différemment ::" -#: library/argparse.rst:2073 +#: library/argparse.rst:2075 msgid "" "This method prints a usage message including the *message* to the standard " "error and terminates the program with a status code of 2." @@ -2427,11 +2427,11 @@ msgstr "" "``message`` sur la sortie d'erreur standard puis termine l'exécution avec le " "code de fin d'exécution 2." -#: library/argparse.rst:2078 +#: library/argparse.rst:2080 msgid "Intermixed parsing" msgstr "Analyse entremêlée" -#: library/argparse.rst:2083 +#: library/argparse.rst:2085 msgid "" "A number of Unix commands allow the user to intermix optional arguments with " "positional arguments. The :meth:`~ArgumentParser.parse_intermixed_args` " @@ -2443,7 +2443,7 @@ msgstr "" "`~ArgumentParser.parse_intermixed_args` et :meth:`~ArgumentParser." "parse_known_intermixed_args` permettent ce style d'analyse." -#: library/argparse.rst:2088 +#: library/argparse.rst:2090 msgid "" "These parsers do not support all the argparse features, and will raise " "exceptions if unsupported features are used. In particular, subparsers, " @@ -2456,7 +2456,7 @@ msgstr "" "groupes mutuellement exclusifs qui contiennent à la fois des arguments " "optionnels et des arguments positionnels ne sont pas pris en charge." -#: library/argparse.rst:2093 +#: library/argparse.rst:2095 msgid "" "The following example shows the difference between :meth:`~ArgumentParser." "parse_known_args` and :meth:`~ArgumentParser.parse_intermixed_args`: the " @@ -2468,7 +2468,7 @@ msgstr "" "premier renvoie ``['2', '3']`` comme arguments non-traités alors que le " "second capture tous les arguments positionnels dans ``rest`` ::" -#: library/argparse.rst:2108 +#: library/argparse.rst:2110 msgid "" ":meth:`~ArgumentParser.parse_known_intermixed_args` returns a two item tuple " "containing the populated namespace and the list of remaining argument " @@ -2480,14 +2480,14 @@ msgstr "" "non-traités. :meth:`~ArgumentParser.parse_intermixed_args` lève une erreur " "s'il reste des chaînes d'arguments non-traités." -#: library/argparse.rst:2118 +#: library/argparse.rst:2120 msgid "Upgrading optparse code" msgstr "Mettre à jour du code ``optparse``" # Surchargé n'est pas une traduction exact de monkey-patch, mais c'est # probablement permission içi puisqu'on parle du context historique général # plutôt que de détails d'implantation. -#: library/argparse.rst:2120 +#: library/argparse.rst:2122 msgid "" "Originally, the :mod:`argparse` module had attempted to maintain " "compatibility with :mod:`optparse`. However, :mod:`optparse` was difficult " @@ -2504,7 +2504,7 @@ msgstr "" "d'utilisation améliorés. Après avoir porté ou surchargé tout le code d':mod:" "`optparse`, la rétro-compatibilité pouvait difficilement être conservée." -#: library/argparse.rst:2127 +#: library/argparse.rst:2129 msgid "" "The :mod:`argparse` module improves on the standard library :mod:`optparse` " "module in a number of ways including:" @@ -2512,38 +2512,38 @@ msgstr "" "Le module :mod:`argparse` fournit plusieurs améliorations par rapport au " "module :mod:`optparse` de la bibliothèque standard :" -#: library/argparse.rst:2130 +#: library/argparse.rst:2132 msgid "Handling positional arguments." msgstr "Gère les arguments positionnels ;" -#: library/argparse.rst:2131 +#: library/argparse.rst:2133 msgid "Supporting sub-commands." msgstr "Prise en charge des sous commandes ;" -#: library/argparse.rst:2132 +#: library/argparse.rst:2134 msgid "Allowing alternative option prefixes like ``+`` and ``/``." msgstr "" "Permet d'utiliser les alternatives ``+`` ou ``/`` comme préfixes d'option ;" -#: library/argparse.rst:2133 +#: library/argparse.rst:2135 msgid "Handling zero-or-more and one-or-more style arguments." msgstr "Prend en charge la répétition de valeurs (zéro ou plus, un ou plus) ;" -#: library/argparse.rst:2134 +#: library/argparse.rst:2136 msgid "Producing more informative usage messages." msgstr "Fournit des messages d'aide plus complets ;" -#: library/argparse.rst:2135 +#: library/argparse.rst:2137 msgid "Providing a much simpler interface for custom ``type`` and ``action``." msgstr "" "Fournit une interface plus simple pour les types et les actions " "personnalisés." -#: library/argparse.rst:2137 +#: library/argparse.rst:2139 msgid "A partial upgrade path from :mod:`optparse` to :mod:`argparse`:" msgstr "Le portage partiel d':mod:`optparse` à :mod:`argparse` :" -#: library/argparse.rst:2139 +#: library/argparse.rst:2141 msgid "" "Replace all :meth:`optparse.OptionParser.add_option` calls with :meth:" "`ArgumentParser.add_argument` calls." @@ -2551,7 +2551,7 @@ msgstr "" "Remplacer tous les appels à :meth:`optparse.OptionParser.add_option` par des " "appels à :meth:`ArgumentParser.add_argument` ;" -#: library/argparse.rst:2142 +#: library/argparse.rst:2144 msgid "" "Replace ``(options, args) = parser.parse_args()`` with ``args = parser." "parse_args()`` and add additional :meth:`ArgumentParser.add_argument` calls " @@ -2564,7 +2564,7 @@ msgstr "" "appelées ``options`` sont appelées ``args`` dans le contexte d':mod:" "`argparse` ;" -#: library/argparse.rst:2147 +#: library/argparse.rst:2149 msgid "" "Replace :meth:`optparse.OptionParser.disable_interspersed_args` by using :" "meth:`~ArgumentParser.parse_intermixed_args` instead of :meth:" @@ -2574,7 +2574,7 @@ msgstr "" "appelant :meth:`~ArgumentParser.parse_intermixed_args` plutôt que :meth:" "`~ArgumentParser.parse_args` ;" -#: library/argparse.rst:2151 +#: library/argparse.rst:2153 msgid "" "Replace callback actions and the ``callback_*`` keyword arguments with " "``type`` or ``action`` arguments." @@ -2582,7 +2582,7 @@ msgstr "" "Remplacer les actions de rappel (*callback actions* en anglais) et les " "arguments nommés ``callback_*`` par des arguments ``type`` et ``actions`` ;" -#: library/argparse.rst:2154 +#: library/argparse.rst:2156 msgid "" "Replace string names for ``type`` keyword arguments with the corresponding " "type objects (e.g. int, float, complex, etc)." @@ -2591,7 +2591,7 @@ msgstr "" "``type`` par les objets types correspondants (par exemple : ``int``, " "``float``, ``complex``, etc) ;" -#: library/argparse.rst:2157 +#: library/argparse.rst:2159 msgid "" "Replace :class:`optparse.Values` with :class:`Namespace` and :exc:`optparse." "OptionError` and :exc:`optparse.OptionValueError` with :exc:`ArgumentError`." @@ -2600,7 +2600,7 @@ msgstr "" "`optparse.OptionError` et :exc:`optparse.OptionValueError` par :exc:" "`ArgumentError` ;" -#: library/argparse.rst:2161 +#: library/argparse.rst:2163 msgid "" "Replace strings with implicit arguments such as ``%default`` or ``%prog`` " "with the standard Python syntax to use dictionaries to format strings, that " @@ -2611,7 +2611,7 @@ msgstr "" "l'interpolation d'un dictionnaire dans les chaînes de formatage (c'est-à-" "dire ``%(default)s`` et ``%(prog)s``) ;" -#: library/argparse.rst:2165 +#: library/argparse.rst:2167 msgid "" "Replace the OptionParser constructor ``version`` argument with a call to " "``parser.add_argument('--version', action='version', version='\n" "Language-Team: FRENCH \n" @@ -407,12 +407,16 @@ msgstr "" #: library/array.rst:182 msgid "" "Return the smallest *i* such that *i* is the index of the first occurrence " -"of *x* in the array." +"of *x* in the array. The optional arguments *start* and *stop* can be " +"specified to search for *x* within a subsection of the array. Raise :exc:" +"`ValueError` if *x* is not found." msgstr "" -"Renvoie le plus petit *i* tel que *i* est l'index de la première occurrence " -"de *x* dans le tableau." -#: library/array.rst:188 +#: library/array.rst:187 +msgid "Added optional *start* and *stop* parameters." +msgstr "" + +#: library/array.rst:192 msgid "" "Insert a new item with value *x* in the array before position *i*. Negative " "values are treated as being relative to the end of the array." @@ -421,7 +425,7 @@ msgstr "" "position *i*. Les valeurs négatives sont traitées relativement à la fin du " "tableau." -#: library/array.rst:194 +#: library/array.rst:198 msgid "" "Removes the item with the index *i* from the array and returns it. The " "optional argument defaults to ``-1``, so that by default the last item is " @@ -431,15 +435,15 @@ msgstr "" "optionnel par défaut est à ``-1``, de sorte que par défaut le dernier " "élément est supprimé et renvoyé." -#: library/array.rst:201 +#: library/array.rst:205 msgid "Remove the first occurrence of *x* from the array." msgstr "Supprime la première occurrence de *x* du tableau." -#: library/array.rst:206 +#: library/array.rst:210 msgid "Reverse the order of the items in the array." msgstr "Inverse l'ordre des éléments du tableau." -#: library/array.rst:211 +#: library/array.rst:215 msgid "" "Convert the array to an array of machine values and return the bytes " "representation (the same sequence of bytes that would be written to a file " @@ -449,22 +453,22 @@ msgstr "" "représentation en octets (la même séquence d'octets qui serait écrite par la " "méthode :meth:`tofile`)." -#: library/array.rst:215 +#: library/array.rst:219 msgid ":meth:`tostring` is renamed to :meth:`tobytes` for clarity." msgstr "" ":meth:`tostring` est renommé en :meth:`tobytes` pour plus de lisibilité." -#: library/array.rst:221 +#: library/array.rst:225 msgid "Write all items (as machine values) to the :term:`file object` *f*." msgstr "" "Écrit tous les éléments (en tant que valeurs machine) du :term:`file object` " "*f*." -#: library/array.rst:226 +#: library/array.rst:230 msgid "Convert the array to an ordinary list with the same items." msgstr "Convertit le tableau en une liste ordinaire avec les mêmes éléments." -#: library/array.rst:231 +#: library/array.rst:235 msgid "" "Convert the array to a unicode string. The array must be a type ``'u'`` " "array; otherwise a :exc:`ValueError` is raised. Use ``array.tobytes()." @@ -475,7 +479,7 @@ msgstr "" "tobytes().decode(enc)`` pour obtenir une chaîne Unicode depuis un tableau de " "tout autre type." -#: library/array.rst:236 +#: library/array.rst:240 msgid "" "When an array object is printed or converted to a string, it is represented " "as ``array(typecode, initializer)``. The *initializer* is omitted if the " @@ -493,19 +497,19 @@ msgstr "" "func:`eval`, tant que la classe :class:`~array.array` a été importée en " "utilisant ``from array import array``. Exemples ::" -#: library/array.rst:253 +#: library/array.rst:257 msgid "Module :mod:`struct`" msgstr "Module :mod:`struct`" -#: library/array.rst:253 +#: library/array.rst:257 msgid "Packing and unpacking of heterogeneous binary data." msgstr "Empaquetage et dépaquetage de données binaires hétérogènes." -#: library/array.rst:257 +#: library/array.rst:261 msgid "Module :mod:`xdrlib`" msgstr "Module :mod:`xdrlib`" -#: library/array.rst:256 +#: library/array.rst:260 msgid "" "Packing and unpacking of External Data Representation (XDR) data as used in " "some remote procedure call systems." @@ -514,17 +518,31 @@ msgstr "" "telles qu'elles sont utilisées dans certains systèmes d'appels de procédures " "à distance (ou RPC pour *remote procedure call* en anglais)." -#: library/array.rst:260 -msgid "`The Numerical Python Documentation `_" -msgstr "`La documentation de *Numerical Python* `" +#: library/array.rst:263 +msgid "`NumPy `_" +msgstr "" -#: library/array.rst:260 -msgid "" -"The Numeric Python extension (NumPy) defines another array type; see http://" -"www.numpy.org/ for further information about Numerical Python." +#: library/array.rst:264 +msgid "The NumPy package defines another array type." msgstr "" -"L'extension *Numeric Python* (NumPy) définit un autre type de tableau ; voir " -"http://www.numpy.org/ pour plus d'informations sur *Numeric Python*." + +#~ msgid "" +#~ "Return the smallest *i* such that *i* is the index of the first " +#~ "occurrence of *x* in the array." +#~ msgstr "" +#~ "Renvoie le plus petit *i* tel que *i* est l'index de la première " +#~ "occurrence de *x* dans le tableau." + +#~ msgid "`The Numerical Python Documentation `_" +#~ msgstr "" +#~ "`La documentation de *Numerical Python* `" + +#~ msgid "" +#~ "The Numeric Python extension (NumPy) defines another array type; see " +#~ "http://www.numpy.org/ for further information about Numerical Python." +#~ msgstr "" +#~ "L'extension *Numeric Python* (NumPy) définit un autre type de tableau ; " +#~ "voir http://www.numpy.org/ pour plus d'informations sur *Numeric Python*." #~ msgid "Py_UNICODE" #~ msgstr "Py_UNICODE" diff --git a/library/ast.po b/library/ast.po index 0012a69e0..16f823030 100644 --- a/library/ast.po +++ b/library/ast.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-15 23:54+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -130,12 +130,13 @@ msgstr "" "avec :func:`compile`." #: library/ast.rst:82 +#, fuzzy msgid "" "Instances of :class:`ast.expr` and :class:`ast.stmt` subclasses have :attr:" "`lineno`, :attr:`col_offset`, :attr:`end_lineno`, and :attr:`end_col_offset` " "attributes. The :attr:`lineno` and :attr:`end_lineno` are the first and " -"last line numbers of the source text span (1-indexed so the first line is " -"line 1), and the :attr:`col_offset` and :attr:`end_col_offset` are the " +"last line numbers of source text span (1-indexed so the first line is line " +"1) and the :attr:`col_offset` and :attr:`end_col_offset` are the " "corresponding UTF-8 byte offsets of the first and last tokens that generated " "the node. The UTF-8 offset is recorded because the parser uses UTF-8 " "internally." @@ -633,7 +634,7 @@ msgstr "" "représenté par des nœuds :class:`Tuple` ou :class:`List` comme éléments de " "*targets*." -#: library/ast.rst:1038 library/ast.rst:1264 +#: library/ast.rst:1038 library/ast.rst:1632 msgid "" "``type_comment`` is an optional string with the type annotation as a comment." msgstr "" @@ -671,8 +672,9 @@ msgstr "" "nœud :class:`Constant` contenant la valeur 1." #: library/ast.rst:841 +#, fuzzy msgid "" -"The ``target`` attribute connot be of class :class:`Tuple` or :class:`List`, " +"The ``target`` attribute cannot be of class :class:`Tuple` or :class:`List`, " "unlike the targets of :class:`Assign`." msgstr "" "Contrairement aux cibles acceptées par :class:`Assign`, le champ *target* ne " @@ -865,29 +867,159 @@ msgstr "" "*optional_vars* vaut ``None``." #: library/ast.rst:1249 +msgid "Pattern matching" +msgstr "" + +#: library/ast.rst:1254 +msgid "" +"A ``match`` statement. ``subject`` holds the subject of the match (the " +"object that is being matched against the cases) and ``cases`` contains an " +"iterable of :class:`match_case` nodes with the different cases." +msgstr "" + +#: library/ast.rst:1260 +msgid "" +"A single case pattern in a ``match`` statement. ``pattern`` contains the " +"match pattern that the subject will be matched against. Note that the :class:" +"`AST` nodes produced for patterns differ from those produced for " +"expressions, even when they share the same syntax." +msgstr "" + +#: library/ast.rst:1265 +msgid "" +"The ``guard`` attribute contains an expression that will be evaluated if the " +"pattern matches the subject." +msgstr "" + +#: library/ast.rst:1268 +msgid "" +"``body`` contains a list of nodes to execute if the pattern matches and the " +"result of evaluating the guard expression is truthy." +msgstr "" + +#: library/ast.rst:1311 +msgid "" +"A match literal or value pattern that compares by equality. ``value`` is an " +"expression node. Permitted value nodes are restricted as described in the " +"match statement documentation. This pattern succeeds if the match subject is " +"equal to the evaluated value." +msgstr "" + +#: library/ast.rst:1338 +msgid "" +"A match literal pattern that compares by identity. ``value`` is the " +"singleton to be compared against: ``None``, ``True``, or ``False``. This " +"pattern succeeds if the match subject is the given constant." +msgstr "" + +#: library/ast.rst:1363 +msgid "" +"A match sequence pattern. ``patterns`` contains the patterns to be matched " +"against the subject elements if the subject is a sequence. Matches a " +"variable length sequence if one of the subpatterns is a ``MatchStar`` node, " +"otherwise matches a fixed length sequence." +msgstr "" + +#: library/ast.rst:1394 +msgid "" +"Matches the rest of the sequence in a variable length match sequence " +"pattern. If ``name`` is not ``None``, a list containing the remaining " +"sequence elements is bound to that name if the overall sequence pattern is " +"successful." +msgstr "" + +#: library/ast.rst:1434 +msgid "" +"A match mapping pattern. ``keys`` is a sequence of expression nodes. " +"``patterns`` is a corresponding sequence of pattern nodes. ``rest`` is an " +"optional name that can be specified to capture the remaining mapping " +"elements. Permitted key expressions are restricted as described in the match " +"statement documentation." +msgstr "" + +#: library/ast.rst:1440 +msgid "" +"This pattern succeeds if the subject is a mapping, all evaluated key " +"expressions are present in the mapping, and the value corresponding to each " +"key matches the corresponding subpattern. If ``rest`` is not ``None``, a " +"dict containing the remaining mapping elements is bound to that name if the " +"overall mapping pattern is successful." +msgstr "" + +#: library/ast.rst:1480 +msgid "" +"A match class pattern. ``cls`` is an expression giving the nominal class to " +"be matched. ``patterns`` is a sequence of pattern nodes to be matched " +"against the class defined sequence of pattern matching attributes. " +"``kwd_attrs`` is a sequence of additional attributes to be matched " +"(specified as keyword arguments in the class pattern), ``kwd_patterns`` are " +"the corresponding patterns (specified as keyword values in the class " +"pattern)." +msgstr "" + +#: library/ast.rst:1487 +msgid "" +"This pattern succeeds if the subject is an instance of the nominated class, " +"all positional patterns match the corresponding class-defined attributes, " +"and any specified keyword attributes match their corresponding pattern." +msgstr "" + +#: library/ast.rst:1491 +msgid "" +"Note: classes may define a property that returns self in order to match a " +"pattern node against the instance being matched. Several builtin types are " +"also matched that way, as described in the match statement documentation." +msgstr "" + +#: library/ast.rst:1544 +msgid "" +"A match \"as-pattern\", capture pattern or wildcard pattern. ``pattern`` " +"contains the match pattern that the subject will be matched against. If the " +"pattern is ``None``, the node represents a capture pattern (i.e a bare name) " +"and will always succeed." +msgstr "" + +#: library/ast.rst:1549 +msgid "" +"The ``name`` attribute contains the name that will be bound if the pattern " +"is successful. If ``name`` is ``None``, ``pattern`` must also be ``None`` " +"and the node represents the wildcard pattern." +msgstr "" + +#: library/ast.rst:1585 +msgid "" +"A match \"or-pattern\". An or-pattern matches each of its subpatterns in " +"turn to the subject, until one succeeds. The or-pattern is then deemed to " +"succeed. If none of the subpatterns succeed the or-pattern fails. The " +"``patterns`` attribute contains a list of match pattern nodes that will be " +"matched against the subject." +msgstr "" + +#: library/ast.rst:1617 msgid "Function and class definitions" msgstr "Définition de fonctions et de classes" -#: library/ast.rst:1253 +#: library/ast.rst:1621 msgid "A function definition." msgstr "Définition d'une fonction." -#: library/ast.rst:1255 +#: library/ast.rst:1623 msgid "``name`` is a raw string of the function name." msgstr "" "*name* donne le nom de la fonction sous forme d'une chaîne de caractères." -#: library/ast.rst:1256 -msgid "``args`` is a :class:`arguments` node." +#: library/ast.rst:1624 +#, fuzzy +msgid "``args`` is an :class:`arguments` node." msgstr "" "*args* est un nœud de type :class:`arguments` qui contient les arguments de " "la signature." -#: library/ast.rst:1257 +#: library/ast.rst:1625 msgid "``body`` is the list of nodes inside the function." msgstr "*body* est la liste des instructions dans le corps de la fonction." -#: library/ast.rst:1258 +#: library/ast.rst:1626 msgid "" "``decorator_list`` is the list of decorators to be applied, stored outermost " "first (i.e. the first in the list will be applied last)." @@ -896,11 +1028,11 @@ msgstr "" "sont rangés dans leur ordre d'apparition, c'est-à-dire que le premier de la " "liste est appliqué en dernier." -#: library/ast.rst:1260 +#: library/ast.rst:1628 msgid "``returns`` is the return annotation." msgstr "*returns* est l'annotation de renvoi éventuelle." -#: library/ast.rst:1269 +#: library/ast.rst:1637 msgid "" "``lambda`` is a minimal function definition that can be used inside an " "expression. Unlike :class:`FunctionDef`, ``body`` holds a single node." @@ -911,11 +1043,11 @@ msgstr "" "*args* est une instance de ``arguments`` qui contient les arguments de la " "signature." -#: library/ast.rst:1293 +#: library/ast.rst:1661 msgid "The arguments for a function." msgstr "Arguments d'une fonction." -#: library/ast.rst:1295 +#: library/ast.rst:1663 msgid "" "``posonlyargs``, ``args`` and ``kwonlyargs`` are lists of :class:`arg` nodes." msgstr "" @@ -923,7 +1055,7 @@ msgstr "" "qui correspondent respectivement aux arguments obligatoirement positionnels, " "positionnels ou nommés et obligatoirement nommés." -#: library/ast.rst:1296 +#: library/ast.rst:1664 msgid "" "``vararg`` and ``kwarg`` are single :class:`arg` nodes, referring to the " "``*args, **kwargs`` parameters." @@ -932,7 +1064,7 @@ msgstr "" "capture des arguments restants, positionnels (``*arguments_positionnels``) " "et nommés (``**arguments_nommés``)." -#: library/ast.rst:1298 +#: library/ast.rst:1666 msgid "" "``kw_defaults`` is a list of default values for keyword-only arguments. If " "one is ``None``, the corresponding argument is required." @@ -942,7 +1074,7 @@ msgstr "" "``None``, il n'y a pas de valeur par défaut et l'argument correspondant doit " "être passé obligatoirement à la fonction." -#: library/ast.rst:1300 +#: library/ast.rst:1668 msgid "" "``defaults`` is a list of default values for arguments that can be passed " "positionally. If there are fewer defaults, they correspond to the last n " @@ -954,25 +1086,25 @@ msgstr "" "positionnels, ces éléments donnent les valeurs par défaut des *n* derniers " "arguments positionnels (avec *n* la longueur de *defaults*)." -#: library/ast.rst:1307 +#: library/ast.rst:1675 msgid "" "A single argument in a list. ``arg`` is a raw string of the argument name, " "``annotation`` is its annotation, such as a :class:`Str` or :class:`Name` " "node." msgstr "" -#: library/ast.rst:1313 +#: library/ast.rst:1681 msgid "" "``type_comment`` is an optional string with the type annotation as a comment" msgstr "" "Le champ facultatif *type_comment* est, sous forme de chaîne, une annotation " "de type fournie par un commentaire." -#: library/ast.rst:1357 +#: library/ast.rst:1725 msgid "A ``return`` statement." msgstr "Instruction ``return``, qui renvoie *value*." -#: library/ast.rst:1372 +#: library/ast.rst:1740 msgid "" "A ``yield`` or ``yield from`` expression. Because these are expressions, " "they must be wrapped in a :class:`Expr` node if the value sent back is not " @@ -983,59 +1115,60 @@ msgstr "" "la valeur qu'elles renvoient n'est pas utilisée dans une expression plus " "large." -#: library/ast.rst:1397 +#: library/ast.rst:1765 msgid "" "``global`` and ``nonlocal`` statements. ``names`` is a list of raw strings." msgstr "" "Instruction ``global`` ou ``nonlocal``. Elle s'applique aux noms de " "variables donnés dans *names*, une liste de chaînes de caractères." -#: library/ast.rst:1424 +#: library/ast.rst:1792 msgid "A class definition." msgstr "Définition d'une classe." -#: library/ast.rst:1426 +#: library/ast.rst:1794 msgid "``name`` is a raw string for the class name" msgstr "*name* est le nom de la classe sous forme de chaîne de caractères ;" -#: library/ast.rst:1427 +#: library/ast.rst:1795 msgid "``bases`` is a list of nodes for explicitly specified base classes." msgstr "*bases* est la liste des classes mères données explicitement ;" -#: library/ast.rst:1428 +#: library/ast.rst:1796 +#, fuzzy msgid "" "``keywords`` is a list of :class:`keyword` nodes, principally for " "'metaclass'. Other keywords will be passed to the metaclass, as per " -"`PEP-3115 `_." +"`PEP-3115 `_." msgstr "" "*keywords* est une liste de nœuds de type :class:`keyword`. Le principal mot-" "clé qui peut y apparaître est ``metaclass``. Les autres sont passés à la " "métaclasse (voir la :pep:`3115`) ;" -#: library/ast.rst:1431 +#: library/ast.rst:1799 msgid "" "``starargs`` and ``kwargs`` are each a single node, as in a function call. " "starargs will be expanded to join the list of base classes, and kwargs will " "be passed to the metaclass." msgstr "" -#: library/ast.rst:1434 +#: library/ast.rst:1802 msgid "" "``body`` is a list of nodes representing the code within the class " "definition." msgstr "" "*body* est la liste des instructions contenues dans la définition de classe ;" -#: library/ast.rst:1436 +#: library/ast.rst:1804 msgid "``decorator_list`` is a list of nodes, as in :class:`FunctionDef`." msgstr "" "*decorators_list* est une liste de nœuds, comme pour :class:`FunctionDef`." -#: library/ast.rst:1465 +#: library/ast.rst:1833 msgid "Async and await" msgstr "``async`` et ``await``" -#: library/ast.rst:1469 +#: library/ast.rst:1837 msgid "" "An ``async def`` function definition. Has the same fields as :class:" "`FunctionDef`." @@ -1043,7 +1176,7 @@ msgstr "" "Fonction déclarée avec ``async def``. Les champs sont les mêmes que dans :" "class:`FunctionDef`." -#: library/ast.rst:1475 +#: library/ast.rst:1843 msgid "" "An ``await`` expression. ``value`` is what it waits for. Only valid in the " "body of an :class:`AsyncFunctionDef`." @@ -1051,7 +1184,7 @@ msgstr "" "Expression ``await``, qui attend *value*. Ces nœuds ne peuvent apparaître " "qu'à l'intérieur de :class:`AsyncFunctionDef`." -#: library/ast.rst:1508 +#: library/ast.rst:1876 msgid "" "``async for`` loops and ``async with`` context managers. They have the same " "fields as :class:`For` and :class:`With`, respectively. Only valid in the " @@ -1061,7 +1194,7 @@ msgstr "" "ceux de :class:`For` et :class:`With`. Ces nœuds ne peuvent apparaître qu'à " "l'intérieur de :class:`AsyncFunctionDef`." -#: library/ast.rst:1513 +#: library/ast.rst:1881 msgid "" "When a string is parsed by :func:`ast.parse`, operator nodes (subclasses of :" "class:`ast.operator`, :class:`ast.unaryop`, :class:`ast.cmpop`, :class:`ast." @@ -1077,11 +1210,11 @@ msgstr "" "muté, la modification sera visible sur toutes les autres apparitions de " "l'opérateur." -#: library/ast.rst:1521 +#: library/ast.rst:1889 msgid ":mod:`ast` Helpers" msgstr "Outils du module :mod:`ast`" -#: library/ast.rst:1523 +#: library/ast.rst:1891 msgid "" "Apart from the node classes, the :mod:`ast` module defines these utility " "functions and classes for traversing abstract syntax trees:" @@ -1090,7 +1223,7 @@ msgstr "" "fonctions et classes utilitaires pour traverser les arbres syntaxiques " "abstraits." -#: library/ast.rst:1528 +#: library/ast.rst:1896 msgid "" "Parse the source into an AST node. Equivalent to ``compile(source, " "filename, mode, ast.PyCF_ONLY_AST)``." @@ -1098,7 +1231,7 @@ msgstr "" "Analyse le code source et renvoie un arbre syntaxique. Équivalent à " "``compile(source, filename, mode, ast.PyCF_ONLY_AST)``." -#: library/ast.rst:1531 +#: library/ast.rst:1899 msgid "" "If ``type_comments=True`` is given, the parser is modified to check and " "return type comments as specified by :pep:`484` and :pep:`526`. This is " @@ -1121,14 +1254,14 @@ msgstr "" "ignorés tout comme les commentaires ordinaires, et l'attribut *type_comment* " "des nœuds dont le type possède ce champ sera toujours mis à ``None``." -#: library/ast.rst:1541 +#: library/ast.rst:1909 msgid "" "In addition, if ``mode`` is ``'func_type'``, the input syntax is modified to " "correspond to :pep:`484` \"signature type comments\", e.g. ``(str, int) -> " "List[str]``." msgstr "" -#: library/ast.rst:1545 +#: library/ast.rst:1913 msgid "" "Also, setting ``feature_version`` to a tuple ``(major, minor)`` will attempt " "to parse using that Python version's grammar. Currently ``major`` must equal " @@ -1143,7 +1276,28 @@ msgstr "" "des variables. La version la plus ancienne prise en charge est actuellement " "``(3, 4)`` ; la plus récente est ``sys.version_info[0:2]``." -#: library/ast.rst:1592 +#: library/ast.rst:1920 +msgid "" +"If source contains a null character ('\\0'), :exc:`ValueError` is raised." +msgstr "" + +#: library/ast.rst:1923 +msgid "" +"Note that succesfully parsing souce code into an AST object doesn't " +"guarantee that the source code provided is valid Python code that can be " +"executed as the compilation step can raise further :exc:`SyntaxError` " +"exceptions. For instance, the source ``return 42`` generates a valid AST " +"node for a return statement, but it cannot be compiled alone (it needs to be " +"inside a function node)." +msgstr "" + +#: library/ast.rst:1930 +msgid "" +"In particular, :func:`ast.parse` won't do any scoping checks, which the " +"compilation step does." +msgstr "" + +#: library/ast.rst:1973 msgid "" "It is possible to crash the Python interpreter with a sufficiently large/" "complex string due to stack depth limitations in Python's AST compiler." @@ -1152,13 +1306,13 @@ msgstr "" "suffisamment grandes ou complexes lors de la compilation d'un arbre " "syntaxique en raison de la limitation de la profondeur de la pile d'appels." -#: library/ast.rst:1557 +#: library/ast.rst:1938 msgid "Added ``type_comments``, ``mode='func_type'`` and ``feature_version``." msgstr "" "ajout des paramètres *type_comments* et *feature_version* ainsi que de la " "valeur ``'func_type'`` pour *mode*." -#: library/ast.rst:1563 +#: library/ast.rst:1944 msgid "" "Unparse an :class:`ast.AST` object and generate a string with code that " "would produce an equivalent :class:`ast.AST` object if parsed back with :" @@ -1168,14 +1322,14 @@ msgstr "" "forme de chaîne de caractères. S'il est passé à :func:`ast.parse`, le " "résultat produit un arbre :class:`ast.AST` équivalent à l'original." -#: library/ast.rst:1568 +#: library/ast.rst:1949 msgid "" "The produced code string will not necessarily be equal to the original code " "that generated the :class:`ast.AST` object (without any compiler " "optimizations, such as constant tuples/frozensets)." msgstr "" -#: library/ast.rst:1573 +#: library/ast.rst:1954 msgid "" "Trying to unparse a highly complex expression would result with :exc:" "`RecursionError`." @@ -1183,12 +1337,13 @@ msgstr "" "Une :exc:`RecursionError` est levée si l'expression comporte de très " "nombreux niveaux d'imbrication." -#: library/ast.rst:1581 +#: library/ast.rst:1962 +#, fuzzy msgid "" "Safely evaluate an expression node or a string containing a Python literal " "or container display. The string or node provided may only consist of the " "following Python literal structures: strings, bytes, numbers, tuples, lists, " -"dicts, sets, booleans, and ``None``." +"dicts, sets, booleans, ``None`` and ``Ellipsis``." msgstr "" "Évalue de manière sûre un nœud d'expression, ou bien une chaîne de " "caractères contenant une valeur littérale simple ou un conteneur sous forme " @@ -1196,7 +1351,7 @@ msgstr "" "des littéraux parmi les types suivants : chaînes de caractères, octets, " "nombres, *n*-uplets, listes, dictionnaires, ensembles, booléens, et ``None``." -#: library/ast.rst:1586 +#: library/ast.rst:1967 msgid "" "This can be used for safely evaluating strings containing Python values from " "untrusted sources without the need to parse the values oneself. It is not " @@ -1209,15 +1364,25 @@ msgstr "" "d'évaluer des expressions arbitrairement complexes, par exemple impliquant " "des opérateurs ou de l'indiçage." -#: library/ast.rst:1596 +#: library/ast.rst:1977 +msgid "" +"It can raise :exc:`ValueError`, :exc:`TypeError`, :exc:`SyntaxError`, :exc:" +"`MemoryError` and :exc:`RecursionError` depending on the malformed input." +msgstr "" + +#: library/ast.rst:1981 msgid "Now allows bytes and set literals." msgstr "accepte maintenant les octets et ensembles littéraux." -#: library/ast.rst:1599 +#: library/ast.rst:1984 msgid "Now supports creating empty sets with ``'set()'``." msgstr "accepte ``set()`` pour les ensembles vides." -#: library/ast.rst:1605 +#: library/ast.rst:1987 +msgid "For string inputs, leading spaces and tabs are now stripped." +msgstr "" + +#: library/ast.rst:1993 msgid "" "Return the docstring of the given *node* (which must be a :class:" "`FunctionDef`, :class:`AsyncFunctionDef`, :class:`ClassDef`, or :class:" @@ -1229,11 +1394,11 @@ msgstr "" "n'a pas de *docstring*. Si *clean* est vrai, cette fonction nettoie " "l'indentation de la *docstring* avec :func:`inspect.cleandoc`." -#: library/ast.rst:1611 +#: library/ast.rst:1999 msgid ":class:`AsyncFunctionDef` is now supported." msgstr ":class:`AsyncFunctionDef` est maintenant gérée." -#: library/ast.rst:1617 +#: library/ast.rst:2005 msgid "" "Get source code segment of the *source* that generated *node*. If some " "location information (:attr:`lineno`, :attr:`end_lineno`, :attr:" @@ -1244,13 +1409,13 @@ msgstr "" "`end_lineno`, :attr:`col_offset` et :attr:`end_col_offset`) n'est pas " "rempli, cette fonction renvoie ``None``." -#: library/ast.rst:1621 +#: library/ast.rst:2009 msgid "" "If *padded* is ``True``, the first line of a multi-line statement will be " "padded with spaces to match its original position." msgstr "" -#: library/ast.rst:1629 +#: library/ast.rst:2017 msgid "" "When you compile a node tree with :func:`compile`, the compiler expects :" "attr:`lineno` and :attr:`col_offset` attributes for every node that supports " @@ -1266,7 +1431,7 @@ msgstr "" "comme les valeurs du nœud parent. Elle fonctionne récursivement en démarrant " "de *node*." -#: library/ast.rst:1638 +#: library/ast.rst:2026 msgid "" "Increment the line number and end line number of each node in the tree " "starting at *node* by *n*. This is useful to \"move code\" to a different " @@ -1276,7 +1441,7 @@ msgstr "" "nœud dans l'arbre, en commençant par le nœud *node*. C'est utile pour " "« déplacer du code » à un endroit différent dans un fichier." -#: library/ast.rst:1645 +#: library/ast.rst:2033 msgid "" "Copy source location (:attr:`lineno`, :attr:`col_offset`, :attr:" "`end_lineno`, and :attr:`end_col_offset`) from *old_node* to *new_node* if " @@ -1287,7 +1452,7 @@ msgstr "" "*old_node* vers le nouveau nœud *new_node*, si possible, et renvoie " "*new_node*." -#: library/ast.rst:1652 +#: library/ast.rst:2040 msgid "" "Yield a tuple of ``(fieldname, value)`` for each field in ``node._fields`` " "that is present on *node*." @@ -1295,7 +1460,7 @@ msgstr "" "Produit un *n*-uplet de couples ``(nom_du_champ, valeur)`` pour chaque champ " "de ``node._fields`` qui est présent dans *node*." -#: library/ast.rst:1658 +#: library/ast.rst:2046 msgid "" "Yield all direct child nodes of *node*, that is, all fields that are nodes " "and all items of fields that are lists of nodes." @@ -1304,7 +1469,7 @@ msgstr "" "champs qui sont des nœuds et tous les éléments des champs qui sont des " "listes de nœuds." -#: library/ast.rst:1664 +#: library/ast.rst:2052 msgid "" "Recursively yield all descendant nodes in the tree starting at *node* " "(including *node* itself), in no specified order. This is useful if you " @@ -1315,7 +1480,7 @@ msgstr "" "lorsque l'on souhaite modifier les nœuds sur place sans prêter attention au " "contexte." -#: library/ast.rst:1671 +#: library/ast.rst:2059 msgid "" "A node visitor base class that walks the abstract syntax tree and calls a " "visitor function for every node found. This function may return a value " @@ -1326,7 +1491,7 @@ msgstr "" "Cette fonction peut renvoyer une valeur, qui est transmise par la méthode :" "meth:`visit`." -#: library/ast.rst:1675 +#: library/ast.rst:2063 msgid "" "This class is meant to be subclassed, with the subclass adding visitor " "methods." @@ -1334,7 +1499,7 @@ msgstr "" "Cette classe est faite pour être dérivée, en ajoutant des méthodes de visite " "à la sous-classe." -#: library/ast.rst:1680 +#: library/ast.rst:2068 msgid "" "Visit a node. The default implementation calls the method called :samp:" "`self.visit_{classname}` where *classname* is the name of the node class, " @@ -1344,12 +1509,12 @@ msgstr "" "visit_{classe}` où *classe* représente le nom de la classe du nœud, ou :meth:" "`generic_visit` si cette méthode n'existe pas." -#: library/ast.rst:1686 +#: library/ast.rst:2074 msgid "This visitor calls :meth:`visit` on all children of the node." msgstr "" "Le visiteur appelle la méthode :meth:`visit` de tous les enfants du nœud." -#: library/ast.rst:1688 +#: library/ast.rst:2076 msgid "" "Note that child nodes of nodes that have a custom visitor method won't be " "visited unless the visitor calls :meth:`generic_visit` or visits them itself." @@ -1358,7 +1523,7 @@ msgstr "" "sont pas visités à moins que le visiteur n'appelle la méthode :meth:" "`generic_visit` ou ne les visite lui-même." -#: library/ast.rst:1692 +#: library/ast.rst:2080 msgid "" "Don't use the :class:`NodeVisitor` if you want to apply changes to nodes " "during traversal. For this a special visitor exists (:class:" @@ -1368,7 +1533,7 @@ msgstr "" "changements sur les nœuds lors du parcours. Pour cela, un visiteur spécial " "existe (:class:`NodeTransformer`) qui permet les modifications." -#: library/ast.rst:1698 +#: library/ast.rst:2086 msgid "" "Methods :meth:`visit_Num`, :meth:`visit_Str`, :meth:`visit_Bytes`, :meth:" "`visit_NameConstant` and :meth:`visit_Ellipsis` are deprecated now and will " @@ -1381,7 +1546,7 @@ msgstr "" "une méthode :meth:`visit_Constant` pour traiter tous les nœuds qui " "représentent des valeurs constantes." -#: library/ast.rst:1706 +#: library/ast.rst:2094 msgid "" "A :class:`NodeVisitor` subclass that walks the abstract syntax tree and " "allows modification of nodes." @@ -1389,7 +1554,7 @@ msgstr "" "Une sous-classe de :class:`NodeVisitor` qui traverse l'arbre syntaxique " "abstrait et permet de modifier les nœuds." -#: library/ast.rst:1709 +#: library/ast.rst:2097 msgid "" "The :class:`NodeTransformer` will walk the AST and use the return value of " "the visitor methods to replace or remove the old node. If the return value " @@ -1403,7 +1568,7 @@ msgstr "" "est supprimé de sa position, sinon il est remplacé par cette valeur. Elle " "peut être le nœud original, auquel cas il n'y a pas de remplacement." -#: library/ast.rst:1715 +#: library/ast.rst:2103 msgid "" "Here is an example transformer that rewrites all occurrences of name lookups " "(``foo``) to ``data['foo']``::" @@ -1411,7 +1576,7 @@ msgstr "" "Voici un exemple de transformation qui réécrit tous les accès à la valeur " "d'une variable ``toto`` en ``data['toto']`` ::" -#: library/ast.rst:1727 +#: library/ast.rst:2115 msgid "" "Keep in mind that if the node you're operating on has child nodes you must " "either transform the child nodes yourself or call the :meth:`generic_visit` " @@ -1421,7 +1586,7 @@ msgstr "" "enfants, vous devez transformer également ces nœuds enfants vous-même ou " "appeler d'abord la méthode :meth:`generic_visit` sur le nœud." -#: library/ast.rst:1731 +#: library/ast.rst:2119 msgid "" "For nodes that were part of a collection of statements (that applies to all " "statement nodes), the visitor may also return a list of nodes rather than " @@ -1431,7 +1596,7 @@ msgstr "" "instructions), le visiteur peut aussi renvoyer une liste des nœuds plutôt " "qu'un seul nœud." -#: library/ast.rst:1735 +#: library/ast.rst:2123 msgid "" "If :class:`NodeTransformer` introduces new nodes (that weren't part of " "original tree) without giving them location information (such as :attr:" @@ -1443,11 +1608,11 @@ msgstr "" "consorts), il faut passer le nouvel arbre (ou la nouvelle partie de l'arbre) " "à :func:`fix_missing_locations` pour calculer les positions manquantes :" -#: library/ast.rst:1743 +#: library/ast.rst:2131 msgid "Usually you use the transformer like this::" msgstr "Utilisation typique des transformations ::" -#: library/ast.rst:1750 +#: library/ast.rst:2138 msgid "" "Return a formatted dump of the tree in *node*. This is mainly useful for " "debugging purposes. If *annotate_fields* is true (by default), the returned " @@ -1467,7 +1632,7 @@ msgstr "" "masqués par défaut, mais on peut les inclure en mettant *include_attributes* " "à ``True``." -#: library/ast.rst:1758 +#: library/ast.rst:2146 msgid "" "If *indent* is a non-negative integer or string, then the tree will be " "pretty-printed with that indent level. An indent level of 0, negative, or ``" @@ -1484,15 +1649,15 @@ msgstr "" "la chaîne vide, c'est-à-dire des retours à la ligne sans indentation. Avec " "la valeur par défaut de ``None``, la sortie tient sur une seule ligne." -#: library/ast.rst:1765 +#: library/ast.rst:2153 msgid "Added the *indent* option." msgstr "ajout du paramètre *indent*." -#: library/ast.rst:1772 +#: library/ast.rst:2160 msgid "Compiler Flags" msgstr "Options du compilateur" -#: library/ast.rst:1774 +#: library/ast.rst:2162 msgid "" "The following flags may be passed to :func:`compile` in order to change " "effects on the compilation of a program:" @@ -1500,7 +1665,7 @@ msgstr "" "Les options suivantes sont prises en charge par la fonction :func:`compile`. " "Elles permettent de modifier le comportement de la compilation." -#: library/ast.rst:1779 +#: library/ast.rst:2167 msgid "" "Enables support for top-level ``await``, ``async for``, ``async with`` and " "async comprehensions." @@ -1508,14 +1673,14 @@ msgstr "" "Active la reconnaissance de ``await``, ``async for``, ``async with`` et des " "compréhensions asynchrones au niveau le plus haut." -#: library/ast.rst:1786 +#: library/ast.rst:2174 msgid "" "Generates and returns an abstract syntax tree instead of returning a " "compiled code object." msgstr "" "Génère et renvoie un arbre syntaxique au lieu d'un objet de code compilé." -#: library/ast.rst:1791 +#: library/ast.rst:2179 msgid "" "Enables support for :pep:`484` and :pep:`526` style type comments (``# type: " "``, ``# type: ignore ``)." @@ -1523,11 +1688,11 @@ msgstr "" "Ajoute la prise en charge des commentaires de types tels que définis dans " "la :pep:`484` et la :pep:`526` (``# type: un_type`` et ``# type: ignore``)." -#: library/ast.rst:1800 +#: library/ast.rst:2188 msgid "Command-Line Usage" msgstr "Utilisation en ligne de commande" -#: library/ast.rst:1804 +#: library/ast.rst:2192 msgid "" "The :mod:`ast` module can be executed as a script from the command line. It " "is as simple as:" @@ -1535,15 +1700,15 @@ msgstr "" "Le module :mod:`ast` peut être exécuté en tant que script en ligne de " "commande. C'est aussi simple que ceci :" -#: library/ast.rst:1811 +#: library/ast.rst:2199 msgid "The following options are accepted:" msgstr "Les options suivantes sont acceptées :" -#: library/ast.rst:1817 +#: library/ast.rst:2205 msgid "Show the help message and exit." msgstr "Affiche un message d'aide et quitte." -#: library/ast.rst:1822 +#: library/ast.rst:2210 msgid "" "Specify what kind of code must be compiled, like the *mode* argument in :" "func:`parse`." @@ -1551,21 +1716,21 @@ msgstr "" "Précise le type de code à compiler, comme l'argument *mode* de la fonction :" "func:`parse`." -#: library/ast.rst:1827 +#: library/ast.rst:2215 msgid "Don't parse type comments." msgstr "Désactive la reconnaissance des commentaires de type." -#: library/ast.rst:1831 +#: library/ast.rst:2219 msgid "Include attributes such as line numbers and column offsets." msgstr "" "Affiche les attributs comme les numéros de lignes et les décalages par " "rapport aux débuts des lignes." -#: library/ast.rst:1836 +#: library/ast.rst:2224 msgid "Indentation of nodes in AST (number of spaces)." msgstr "Nombre d'espaces pour chaque niveau d'indentation dans la sortie." -#: library/ast.rst:1838 +#: library/ast.rst:2226 msgid "" "If :file:`infile` is specified its contents are parsed to AST and dumped to " "stdout. Otherwise, the content is read from stdin." @@ -1574,7 +1739,7 @@ msgstr "" "standard sinon. Le code source est transformé en un arbre syntaxique, qui " "est affiché sur la sortie standard." -#: library/ast.rst:1844 +#: library/ast.rst:2232 msgid "" "`Green Tree Snakes `_, an external " "documentation resource, has good details on working with Python ASTs." @@ -1583,7 +1748,7 @@ msgstr "" "ressource documentaire externe, qui possède plus de détails pour travailler " "avec des arbres syntaxiques Python." -#: library/ast.rst:1847 +#: library/ast.rst:2235 msgid "" "`ASTTokens `_ " "annotates Python ASTs with the positions of tokens and text in the source " @@ -1595,7 +1760,7 @@ msgstr "" "extraits de code source à partir desquels ils sont produits. Ceci est utile " "pour les outils qui transforment du code source." -#: library/ast.rst:1852 +#: library/ast.rst:2240 msgid "" "`leoAst.py `_ unifies the " "token-based and parse-tree-based views of python programs by inserting two-" @@ -1605,7 +1770,7 @@ msgstr "" "visions des lexèmes et des arbres syntaxiques en insérant des liens " "bidirectionnels entre les deux." -#: library/ast.rst:1856 +#: library/ast.rst:2244 msgid "" "`LibCST `_ parses code as a Concrete Syntax " "Tree that looks like an ast tree and keeps all formatting details. It's " @@ -1616,7 +1781,7 @@ msgstr "" "abstraits et conservent tous les détails du formatage. Cette bibliothèque " "est utile aux outils de réusinage et d'analyse de code." -#: library/ast.rst:1861 +#: library/ast.rst:2249 msgid "" "`Parso `_ is a Python parser that supports " "error recovery and round-trip parsing for different Python versions (in " diff --git a/library/asyncio-api-index.po b/library/asyncio-api-index.po index 0a5d13a1c..e9fc621ba 100644 --- a/library/asyncio-api-index.po +++ b/library/asyncio-api-index.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -119,7 +119,7 @@ msgid ":func:`to_thread`" msgstr ":func:`round`" #: library/asyncio-api-index.rst:52 -msgid "Asychronously run a function in a separate OS thread." +msgid "Asynchronously run a function in a separate OS thread." msgstr "" #: library/asyncio-api-index.rst:54 diff --git a/library/asyncio-eventloop.po b/library/asyncio-eventloop.po index 32b59e959..3f8a3f29c 100644 --- a/library/asyncio-eventloop.po +++ b/library/asyncio-eventloop.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-06-10 15:50+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -90,92 +90,98 @@ msgid "" "level functions to manually create and close an event loop." msgstr "" -#: library/asyncio-eventloop.rst:58 +#: library/asyncio-eventloop.rst:56 +msgid "" +"Deprecation warning is emitted if there is no running event loop. In future " +"Python releases, this function will be an alias of :func:`get_running_loop`." +msgstr "" + +#: library/asyncio-eventloop.rst:63 msgid "Set *loop* as a current event loop for the current OS thread." msgstr "" -#: library/asyncio-eventloop.rst:62 +#: library/asyncio-eventloop.rst:67 msgid "Create a new event loop object." msgstr "" -#: library/asyncio-eventloop.rst:64 +#: library/asyncio-eventloop.rst:69 msgid "" "Note that the behaviour of :func:`get_event_loop`, :func:`set_event_loop`, " "and :func:`new_event_loop` functions can be altered by :ref:`setting a " "custom event loop policy `." msgstr "" -#: library/asyncio-eventloop.rst:70 +#: library/asyncio-eventloop.rst:75 msgid "Contents" msgstr "Sommaire" -#: library/asyncio-eventloop.rst:71 +#: library/asyncio-eventloop.rst:76 msgid "This documentation page contains the following sections:" msgstr "" -#: library/asyncio-eventloop.rst:73 +#: library/asyncio-eventloop.rst:78 msgid "" "The `Event Loop Methods`_ section is the reference documentation of the " "event loop APIs;" msgstr "" -#: library/asyncio-eventloop.rst:76 +#: library/asyncio-eventloop.rst:81 msgid "" "The `Callback Handles`_ section documents the :class:`Handle` and :class:" "`TimerHandle` instances which are returned from scheduling methods such as :" "meth:`loop.call_soon` and :meth:`loop.call_later`;" msgstr "" -#: library/asyncio-eventloop.rst:80 +#: library/asyncio-eventloop.rst:85 msgid "" "The `Server Objects`_ section documents types returned from event loop " "methods like :meth:`loop.create_server`;" msgstr "" -#: library/asyncio-eventloop.rst:83 +#: library/asyncio-eventloop.rst:88 msgid "" "The `Event Loop Implementations`_ section documents the :class:" "`SelectorEventLoop` and :class:`ProactorEventLoop` classes;" msgstr "" -#: library/asyncio-eventloop.rst:86 +#: library/asyncio-eventloop.rst:91 msgid "" "The `Examples`_ section showcases how to work with some event loop APIs." msgstr "" -#: library/asyncio-eventloop.rst:93 +#: library/asyncio-eventloop.rst:98 msgid "Event Loop Methods" msgstr "Méthodes de la boucle d'évènements" -#: library/asyncio-eventloop.rst:95 +#: library/asyncio-eventloop.rst:100 msgid "Event loops have **low-level** APIs for the following:" msgstr "" -#: library/asyncio-eventloop.rst:103 +#: library/asyncio-eventloop.rst:108 msgid "Running and stopping the loop" msgstr "Démarrer et arrêter une boucle d'évènements" -#: library/asyncio-eventloop.rst:107 +#: library/asyncio-eventloop.rst:112 msgid "Run until the *future* (an instance of :class:`Future`) has completed." msgstr "" "Lance la boucle jusqu'à ce que *future* (une instance de :class:`Future`) " "soit terminée." -#: library/asyncio-eventloop.rst:110 +#: library/asyncio-eventloop.rst:115 msgid "" "If the argument is a :ref:`coroutine object ` it is implicitly " "scheduled to run as a :class:`asyncio.Task`." msgstr "" -#: library/asyncio-eventloop.rst:113 +#: library/asyncio-eventloop.rst:118 msgid "Return the Future's result or raise its exception." msgstr "" -#: library/asyncio-eventloop.rst:117 +#: library/asyncio-eventloop.rst:122 msgid "Run the event loop until :meth:`stop` is called." msgstr "" -#: library/asyncio-eventloop.rst:119 +#: library/asyncio-eventloop.rst:124 msgid "" "If :meth:`stop` is called before :meth:`run_forever()` is called, the loop " "will poll the I/O selector once with a timeout of zero, run all callbacks " @@ -183,7 +189,7 @@ msgid "" "and then exit." msgstr "" -#: library/asyncio-eventloop.rst:124 +#: library/asyncio-eventloop.rst:129 msgid "" "If :meth:`stop` is called while :meth:`run_forever` is running, the loop " "will run the current batch of callbacks and then exit. Note that new " @@ -192,41 +198,41 @@ msgid "" "called." msgstr "" -#: library/asyncio-eventloop.rst:132 +#: library/asyncio-eventloop.rst:137 msgid "Stop the event loop." msgstr "Arrête l'exécution de la boucle d'évènements." -#: library/asyncio-eventloop.rst:136 +#: library/asyncio-eventloop.rst:141 msgid "Return ``True`` if the event loop is currently running." msgstr "Renvoie ``True`` si la boucle d'évènements est démarrée." -#: library/asyncio-eventloop.rst:140 +#: library/asyncio-eventloop.rst:145 msgid "Return ``True`` if the event loop was closed." msgstr "Renvoie ``True`` si la boucle d'évènements est arrêtée." -#: library/asyncio-eventloop.rst:144 +#: library/asyncio-eventloop.rst:149 msgid "Close the event loop." msgstr "Arrête la boucle d'évènements." -#: library/asyncio-eventloop.rst:146 +#: library/asyncio-eventloop.rst:151 msgid "" "The loop must not be running when this function is called. Any pending " "callbacks will be discarded." msgstr "" -#: library/asyncio-eventloop.rst:149 +#: library/asyncio-eventloop.rst:154 msgid "" "This method clears all queues and shuts down the executor, but does not wait " "for the executor to finish." msgstr "" -#: library/asyncio-eventloop.rst:152 +#: library/asyncio-eventloop.rst:157 msgid "" "This method is idempotent and irreversible. No other methods should be " "called after the event loop is closed." msgstr "" -#: library/asyncio-eventloop.rst:157 +#: library/asyncio-eventloop.rst:162 msgid "" "Schedule all currently open :term:`asynchronous generator` objects to close " "with an :meth:`~agen.aclose()` call. After calling this method, the event " @@ -234,18 +240,18 @@ msgid "" "should be used to reliably finalize all scheduled asynchronous generators." msgstr "" -#: library/asyncio-eventloop.rst:163 library/asyncio-eventloop.rst:183 +#: library/asyncio-eventloop.rst:168 library/asyncio-eventloop.rst:188 msgid "" "Note that there is no need to call this function when :func:`asyncio.run` is " "used." msgstr "" -#: library/asyncio-eventloop.rst:166 library/asyncio-eventloop.rst:1074 -#: library/asyncio-eventloop.rst:1456 +#: library/asyncio-eventloop.rst:171 library/asyncio-eventloop.rst:1083 +#: library/asyncio-eventloop.rst:1468 msgid "Example::" msgstr "Exemple ::" -#: library/asyncio-eventloop.rst:178 +#: library/asyncio-eventloop.rst:183 msgid "" "Schedule the closure of the default executor and wait for it to join all of " "the threads in the :class:`ThreadPoolExecutor`. After calling this method, " @@ -253,46 +259,52 @@ msgid "" "called while using the default executor." msgstr "" -#: library/asyncio-eventloop.rst:190 +#: library/asyncio-eventloop.rst:195 msgid "Scheduling callbacks" msgstr "" -#: library/asyncio-eventloop.rst:194 +#: library/asyncio-eventloop.rst:199 msgid "" "Schedule the *callback* :term:`callback` to be called with *args* arguments " "at the next iteration of the event loop." msgstr "" -#: library/asyncio-eventloop.rst:197 +#: library/asyncio-eventloop.rst:202 msgid "" "Callbacks are called in the order in which they are registered. Each " "callback will be called exactly once." msgstr "" -#: library/asyncio-eventloop.rst:200 library/asyncio-eventloop.rst:263 +#: library/asyncio-eventloop.rst:205 library/asyncio-eventloop.rst:272 msgid "" "An optional keyword-only *context* argument allows specifying a custom :" "class:`contextvars.Context` for the *callback* to run in. The current " "context is used when no *context* is provided." msgstr "" -#: library/asyncio-eventloop.rst:204 +#: library/asyncio-eventloop.rst:209 msgid "" "An instance of :class:`asyncio.Handle` is returned, which can be used later " "to cancel the callback." msgstr "" -#: library/asyncio-eventloop.rst:207 +#: library/asyncio-eventloop.rst:212 msgid "This method is not thread-safe." msgstr "" -#: library/asyncio-eventloop.rst:211 +#: library/asyncio-eventloop.rst:216 msgid "" "A thread-safe variant of :meth:`call_soon`. Must be used to schedule " "callbacks *from another thread*." msgstr "" -#: library/asyncio-eventloop.rst:214 +#: library/asyncio-eventloop.rst:219 +msgid "" +"Raises :exc:`RuntimeError` if called on a loop that's been closed. This can " +"happen on a secondary thread when the main application is shutting down." +msgstr "" + +#: library/asyncio-eventloop.rst:223 msgid "" "See the :ref:`concurrency and multithreading ` " "section of the documentation." @@ -300,141 +312,141 @@ msgstr "" "Voir la section :ref:`exécution concurrente et multi-fils d'exécution " "` de la documentation." -#: library/asyncio-eventloop.rst:217 library/asyncio-eventloop.rst:267 -#: library/asyncio-eventloop.rst:287 +#: library/asyncio-eventloop.rst:226 library/asyncio-eventloop.rst:276 +#: library/asyncio-eventloop.rst:296 msgid "" "The *context* keyword-only parameter was added. See :pep:`567` for more " "details." msgstr "" -#: library/asyncio-eventloop.rst:225 +#: library/asyncio-eventloop.rst:234 msgid "" "Most :mod:`asyncio` scheduling functions don't allow passing keyword " "arguments. To do that, use :func:`functools.partial`::" msgstr "" -#: library/asyncio-eventloop.rst:232 +#: library/asyncio-eventloop.rst:241 msgid "" "Using partial objects is usually more convenient than using lambdas, as " "asyncio can render partial objects better in debug and error messages." msgstr "" -#: library/asyncio-eventloop.rst:240 +#: library/asyncio-eventloop.rst:249 msgid "Scheduling delayed callbacks" msgstr "" -#: library/asyncio-eventloop.rst:242 +#: library/asyncio-eventloop.rst:251 msgid "" "Event loop provides mechanisms to schedule callback functions to be called " "at some point in the future. Event loop uses monotonic clocks to track time." msgstr "" -#: library/asyncio-eventloop.rst:249 +#: library/asyncio-eventloop.rst:258 msgid "" "Schedule *callback* to be called after the given *delay* number of seconds " "(can be either an int or a float)." msgstr "" -#: library/asyncio-eventloop.rst:252 library/asyncio-eventloop.rst:284 +#: library/asyncio-eventloop.rst:261 library/asyncio-eventloop.rst:293 msgid "" "An instance of :class:`asyncio.TimerHandle` is returned which can be used to " "cancel the callback." msgstr "" -#: library/asyncio-eventloop.rst:255 +#: library/asyncio-eventloop.rst:264 msgid "" "*callback* will be called exactly once. If two callbacks are scheduled for " "exactly the same time, the order in which they are called is undefined." msgstr "" -#: library/asyncio-eventloop.rst:259 +#: library/asyncio-eventloop.rst:268 msgid "" "The optional positional *args* will be passed to the callback when it is " "called. If you want the callback to be called with keyword arguments use :" "func:`functools.partial`." msgstr "" -#: library/asyncio-eventloop.rst:271 +#: library/asyncio-eventloop.rst:280 msgid "" "In Python 3.7 and earlier with the default event loop implementation, the " "*delay* could not exceed one day. This has been fixed in Python 3.8." msgstr "" -#: library/asyncio-eventloop.rst:278 +#: library/asyncio-eventloop.rst:287 msgid "" "Schedule *callback* to be called at the given absolute timestamp *when* (an " "int or a float), using the same time reference as :meth:`loop.time`." msgstr "" -#: library/asyncio-eventloop.rst:282 +#: library/asyncio-eventloop.rst:291 msgid "This method's behavior is the same as :meth:`call_later`." msgstr "" -#: library/asyncio-eventloop.rst:291 +#: library/asyncio-eventloop.rst:300 msgid "" "In Python 3.7 and earlier with the default event loop implementation, the " "difference between *when* and the current time could not exceed one day. " "This has been fixed in Python 3.8." msgstr "" -#: library/asyncio-eventloop.rst:298 +#: library/asyncio-eventloop.rst:307 msgid "" "Return the current time, as a :class:`float` value, according to the event " "loop's internal monotonic clock." msgstr "" -#: library/asyncio-eventloop.rst:302 +#: library/asyncio-eventloop.rst:311 msgid "" "In Python 3.7 and earlier timeouts (relative *delay* or absolute *when*) " "should not exceed one day. This has been fixed in Python 3.8." msgstr "" -#: library/asyncio-eventloop.rst:308 +#: library/asyncio-eventloop.rst:317 msgid "The :func:`asyncio.sleep` function." msgstr "La fonction :func:`asyncio.sleep`." -#: library/asyncio-eventloop.rst:312 +#: library/asyncio-eventloop.rst:321 msgid "Creating Futures and Tasks" msgstr "" -#: library/asyncio-eventloop.rst:316 +#: library/asyncio-eventloop.rst:325 msgid "Create an :class:`asyncio.Future` object attached to the event loop." msgstr "" -#: library/asyncio-eventloop.rst:318 +#: library/asyncio-eventloop.rst:327 msgid "" "This is the preferred way to create Futures in asyncio. This lets third-" "party event loops provide alternative implementations of the Future object " "(with better performance or instrumentation)." msgstr "" -#: library/asyncio-eventloop.rst:326 +#: library/asyncio-eventloop.rst:335 msgid "" "Schedule the execution of a :ref:`coroutine`. Return a :class:`Task` object." msgstr "" -#: library/asyncio-eventloop.rst:329 +#: library/asyncio-eventloop.rst:338 msgid "" "Third-party event loops can use their own subclass of :class:`Task` for " "interoperability. In this case, the result type is a subclass of :class:" "`Task`." msgstr "" -#: library/asyncio-eventloop.rst:333 +#: library/asyncio-eventloop.rst:342 msgid "" "If the *name* argument is provided and not ``None``, it is set as the name " "of the task using :meth:`Task.set_name`." msgstr "" -#: library/asyncio-eventloop.rst:336 +#: library/asyncio-eventloop.rst:345 msgid "Added the ``name`` parameter." msgstr "ajout du paramètre ``name``." -#: library/asyncio-eventloop.rst:341 +#: library/asyncio-eventloop.rst:350 msgid "Set a task factory that will be used by :meth:`loop.create_task`." msgstr "" -#: library/asyncio-eventloop.rst:344 +#: library/asyncio-eventloop.rst:353 msgid "" "If *factory* is ``None`` the default task factory will be set. Otherwise, " "*factory* must be a *callable* with the signature matching ``(loop, coro)``, " @@ -443,80 +455,80 @@ msgid "" "compatible object." msgstr "" -#: library/asyncio-eventloop.rst:352 +#: library/asyncio-eventloop.rst:361 msgid "Return a task factory or ``None`` if the default one is in use." msgstr "" -#: library/asyncio-eventloop.rst:356 +#: library/asyncio-eventloop.rst:365 msgid "Opening network connections" msgstr "Créer des connexions" -#: library/asyncio-eventloop.rst:365 +#: library/asyncio-eventloop.rst:374 msgid "" "Open a streaming transport connection to a given address specified by *host* " "and *port*." msgstr "" -#: library/asyncio-eventloop.rst:368 +#: library/asyncio-eventloop.rst:377 msgid "" "The socket family can be either :py:data:`~socket.AF_INET` or :py:data:" "`~socket.AF_INET6` depending on *host* (or the *family* argument, if " "provided)." msgstr "" -#: library/asyncio-eventloop.rst:372 +#: library/asyncio-eventloop.rst:381 msgid "The socket type will be :py:data:`~socket.SOCK_STREAM`." msgstr "" -#: library/asyncio-eventloop.rst:374 library/asyncio-eventloop.rst:990 -#: library/asyncio-eventloop.rst:1006 +#: library/asyncio-eventloop.rst:383 library/asyncio-eventloop.rst:999 +#: library/asyncio-eventloop.rst:1015 msgid "" "*protocol_factory* must be a callable returning an :ref:`asyncio protocol " "` implementation." msgstr "" -#: library/asyncio-eventloop.rst:377 +#: library/asyncio-eventloop.rst:386 msgid "" "This method will try to establish the connection in the background. When " "successful, it returns a ``(transport, protocol)`` pair." msgstr "" -#: library/asyncio-eventloop.rst:380 +#: library/asyncio-eventloop.rst:389 msgid "The chronological synopsis of the underlying operation is as follows:" msgstr "" -#: library/asyncio-eventloop.rst:382 +#: library/asyncio-eventloop.rst:391 msgid "" "The connection is established and a :ref:`transport ` is " "created for it." msgstr "" -#: library/asyncio-eventloop.rst:385 +#: library/asyncio-eventloop.rst:394 msgid "" "*protocol_factory* is called without arguments and is expected to return a :" "ref:`protocol ` instance." msgstr "" -#: library/asyncio-eventloop.rst:388 +#: library/asyncio-eventloop.rst:397 msgid "" "The protocol instance is coupled with the transport by calling its :meth:" "`~BaseProtocol.connection_made` method." msgstr "" -#: library/asyncio-eventloop.rst:391 +#: library/asyncio-eventloop.rst:400 msgid "A ``(transport, protocol)`` tuple is returned on success." msgstr "" -#: library/asyncio-eventloop.rst:393 +#: library/asyncio-eventloop.rst:402 msgid "" "The created transport is an implementation-dependent bidirectional stream." msgstr "" -#: library/asyncio-eventloop.rst:396 library/asyncio-eventloop.rst:518 +#: library/asyncio-eventloop.rst:405 library/asyncio-eventloop.rst:527 msgid "Other arguments:" msgstr "" -#: library/asyncio-eventloop.rst:398 +#: library/asyncio-eventloop.rst:407 msgid "" "*ssl*: if given and not false, a SSL/TLS transport is created (by default a " "plain TCP transport is created). If *ssl* is a :class:`ssl.SSLContext` " @@ -525,11 +537,11 @@ msgid "" "is used." msgstr "" -#: library/asyncio-eventloop.rst:404 +#: library/asyncio-eventloop.rst:413 msgid ":ref:`SSL/TLS security considerations `" msgstr "" -#: library/asyncio-eventloop.rst:406 +#: library/asyncio-eventloop.rst:415 msgid "" "*server_hostname* sets or overrides the hostname that the target server's " "certificate will be matched against. Should only be passed if *ssl* is not " @@ -540,7 +552,7 @@ msgid "" "potential man-in-the-middle attacks)." msgstr "" -#: library/asyncio-eventloop.rst:414 +#: library/asyncio-eventloop.rst:423 msgid "" "*family*, *proto*, *flags* are the optional address family, protocol and " "flags to be passed through to getaddrinfo() for *host* resolution. If given, " @@ -548,7 +560,7 @@ msgid "" "constants." msgstr "" -#: library/asyncio-eventloop.rst:419 +#: library/asyncio-eventloop.rst:428 msgid "" "*happy_eyeballs_delay*, if given, enables Happy Eyeballs for this " "connection. It should be a floating-point number representing the amount of " @@ -558,7 +570,7 @@ msgid "" "RFC is ``0.25`` (250 milliseconds)." msgstr "" -#: library/asyncio-eventloop.rst:427 +#: library/asyncio-eventloop.rst:436 msgid "" "*interleave* controls address reordering when a host name resolves to " "multiple IP addresses. If ``0`` or unspecified, no reordering is done, and " @@ -569,7 +581,7 @@ msgid "" "is not specified, and ``1`` if it is." msgstr "" -#: library/asyncio-eventloop.rst:436 +#: library/asyncio-eventloop.rst:445 msgid "" "*sock*, if given, should be an existing, already connected :class:`socket." "socket` object to be used by the transport. If *sock* is given, none of " @@ -577,25 +589,25 @@ msgid "" "*interleave* and *local_addr* should be specified." msgstr "" -#: library/asyncio-eventloop.rst:442 +#: library/asyncio-eventloop.rst:451 msgid "" "*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind " "the socket locally. The *local_host* and *local_port* are looked up using " "``getaddrinfo()``, similarly to *host* and *port*." msgstr "" -#: library/asyncio-eventloop.rst:446 library/asyncio-eventloop.rst:799 +#: library/asyncio-eventloop.rst:455 library/asyncio-eventloop.rst:808 msgid "" "*ssl_handshake_timeout* is (for a TLS connection) the time in seconds to " "wait for the TLS handshake to complete before aborting the connection. " "``60.0`` seconds if ``None`` (default)." msgstr "" -#: library/asyncio-eventloop.rst:452 +#: library/asyncio-eventloop.rst:461 msgid "Added the *happy_eyeballs_delay* and *interleave* parameters." msgstr "" -#: library/asyncio-eventloop.rst:454 +#: library/asyncio-eventloop.rst:463 msgid "" "Happy Eyeballs Algorithm: Success with Dual-Stack Hosts. When a server's " "IPv4 path and protocol are working, but the server's IPv6 path and protocol " @@ -606,47 +618,47 @@ msgid "" "visible delay and provides an algorithm." msgstr "" -#: library/asyncio-eventloop.rst:463 +#: library/asyncio-eventloop.rst:472 msgid "For more information: https://tools.ietf.org/html/rfc6555" msgstr "" -#: library/asyncio-eventloop.rst:467 library/asyncio-eventloop.rst:584 -#: library/asyncio-eventloop.rst:737 +#: library/asyncio-eventloop.rst:476 library/asyncio-eventloop.rst:593 +#: library/asyncio-eventloop.rst:746 msgid "The *ssl_handshake_timeout* parameter." msgstr "" -#: library/asyncio-eventloop.rst:471 library/asyncio-eventloop.rst:667 +#: library/asyncio-eventloop.rst:480 library/asyncio-eventloop.rst:676 msgid "" "The socket option :py:data:`~socket.TCP_NODELAY` is set by default for all " "TCP connections." msgstr "" -#: library/asyncio-eventloop.rst:476 library/asyncio-eventloop.rst:672 +#: library/asyncio-eventloop.rst:485 library/asyncio-eventloop.rst:681 msgid "Added support for SSL/TLS in :class:`ProactorEventLoop`." msgstr "" -#: library/asyncio-eventloop.rst:480 +#: library/asyncio-eventloop.rst:489 msgid "" "The :func:`open_connection` function is a high-level alternative API. It " "returns a pair of (:class:`StreamReader`, :class:`StreamWriter`) that can be " "used directly in async/await code." msgstr "" -#: library/asyncio-eventloop.rst:491 +#: library/asyncio-eventloop.rst:500 msgid "" "The parameter *reuse_address* is no longer supported, as using :py:data:" "`~sockets.SO_REUSEADDR` poses a significant security concern for UDP. " "Explicitly passing ``reuse_address=True`` will raise an exception." msgstr "" -#: library/asyncio-eventloop.rst:495 +#: library/asyncio-eventloop.rst:504 msgid "" "When multiple processes with differing UIDs assign sockets to an identical " "UDP socket address with ``SO_REUSEADDR``, incoming packets can become " "randomly distributed among the sockets." msgstr "" -#: library/asyncio-eventloop.rst:499 +#: library/asyncio-eventloop.rst:508 msgid "" "For supported platforms, *reuse_port* can be used as a replacement for " "similar functionality. With *reuse_port*, :py:data:`~sockets.SO_REUSEPORT` " @@ -654,47 +666,47 @@ msgid "" "from assigning sockets to the same socket address." msgstr "" -#: library/asyncio-eventloop.rst:505 +#: library/asyncio-eventloop.rst:514 msgid "Create a datagram connection." msgstr "Créer une connexion par datagramme" -#: library/asyncio-eventloop.rst:507 +#: library/asyncio-eventloop.rst:516 msgid "" "The socket family can be either :py:data:`~socket.AF_INET`, :py:data:" "`~socket.AF_INET6`, or :py:data:`~socket.AF_UNIX`, depending on *host* (or " "the *family* argument, if provided)." msgstr "" -#: library/asyncio-eventloop.rst:511 +#: library/asyncio-eventloop.rst:520 msgid "The socket type will be :py:data:`~socket.SOCK_DGRAM`." msgstr "" -#: library/asyncio-eventloop.rst:513 library/asyncio-eventloop.rst:609 -#: library/asyncio-eventloop.rst:720 +#: library/asyncio-eventloop.rst:522 library/asyncio-eventloop.rst:618 +#: library/asyncio-eventloop.rst:729 msgid "" "*protocol_factory* must be a callable returning a :ref:`protocol ` implementation." msgstr "" -#: library/asyncio-eventloop.rst:516 library/asyncio-eventloop.rst:570 +#: library/asyncio-eventloop.rst:525 library/asyncio-eventloop.rst:579 msgid "A tuple of ``(transport, protocol)`` is returned on success." msgstr "" -#: library/asyncio-eventloop.rst:520 +#: library/asyncio-eventloop.rst:529 msgid "" "*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind " "the socket locally. The *local_host* and *local_port* are looked up using :" "meth:`getaddrinfo`." msgstr "" -#: library/asyncio-eventloop.rst:524 +#: library/asyncio-eventloop.rst:533 msgid "" "*remote_addr*, if given, is a ``(remote_host, remote_port)`` tuple used to " "connect the socket to a remote address. The *remote_host* and *remote_port* " "are looked up using :meth:`getaddrinfo`." msgstr "" -#: library/asyncio-eventloop.rst:528 +#: library/asyncio-eventloop.rst:537 msgid "" "*family*, *proto*, *flags* are the optional address family, protocol and " "flags to be passed through to :meth:`getaddrinfo` for *host* resolution. If " @@ -702,7 +714,7 @@ msgid "" "module constants." msgstr "" -#: library/asyncio-eventloop.rst:533 +#: library/asyncio-eventloop.rst:542 msgid "" "*reuse_port* tells the kernel to allow this endpoint to be bound to the same " "port as other existing endpoints are bound to, so long as they all set this " @@ -711,13 +723,13 @@ msgid "" "this capability is unsupported." msgstr "" -#: library/asyncio-eventloop.rst:539 +#: library/asyncio-eventloop.rst:548 msgid "" "*allow_broadcast* tells the kernel to allow this endpoint to send messages " "to the broadcast address." msgstr "" -#: library/asyncio-eventloop.rst:542 +#: library/asyncio-eventloop.rst:551 msgid "" "*sock* can optionally be specified in order to use a preexisting, already " "connected, :class:`socket.socket` object to be used by the transport. If " @@ -725,155 +737,155 @@ msgid "" "`None`)." msgstr "" -#: library/asyncio-eventloop.rst:547 +#: library/asyncio-eventloop.rst:556 msgid "" "See :ref:`UDP echo client protocol ` and :" "ref:`UDP echo server protocol ` examples." msgstr "" -#: library/asyncio-eventloop.rst:550 +#: library/asyncio-eventloop.rst:559 msgid "" "The *family*, *proto*, *flags*, *reuse_address*, *reuse_port, " "*allow_broadcast*, and *sock* parameters were added." msgstr "" -#: library/asyncio-eventloop.rst:554 +#: library/asyncio-eventloop.rst:563 msgid "" "The *reuse_address* parameter is no longer supported due to security " "concerns." msgstr "" -#: library/asyncio-eventloop.rst:558 +#: library/asyncio-eventloop.rst:567 msgid "Added support for Windows." msgstr "Prise en charge sur Windows." -#: library/asyncio-eventloop.rst:565 +#: library/asyncio-eventloop.rst:574 msgid "Create a Unix connection." msgstr "Créer une connexion Unix" -#: library/asyncio-eventloop.rst:567 +#: library/asyncio-eventloop.rst:576 msgid "" "The socket family will be :py:data:`~socket.AF_UNIX`; socket type will be :" "py:data:`~socket.SOCK_STREAM`." msgstr "" -#: library/asyncio-eventloop.rst:572 +#: library/asyncio-eventloop.rst:581 msgid "" "*path* is the name of a Unix domain socket and is required, unless a *sock* " "parameter is specified. Abstract Unix sockets, :class:`str`, :class:" "`bytes`, and :class:`~pathlib.Path` paths are supported." msgstr "" -#: library/asyncio-eventloop.rst:577 +#: library/asyncio-eventloop.rst:586 msgid "" "See the documentation of the :meth:`loop.create_connection` method for " "information about arguments to this method." msgstr "" -#: library/asyncio-eventloop.rst:581 library/asyncio-eventloop.rst:701 -#: library/asyncio-eventloop.rst:1057 +#: library/asyncio-eventloop.rst:590 library/asyncio-eventloop.rst:710 +#: library/asyncio-eventloop.rst:1066 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." -#: library/asyncio-eventloop.rst:588 +#: library/asyncio-eventloop.rst:597 msgid "The *path* parameter can now be a :term:`path-like object`." msgstr "" -#: library/asyncio-eventloop.rst:592 +#: library/asyncio-eventloop.rst:601 msgid "Creating network servers" msgstr "Créer des serveurs" -#: library/asyncio-eventloop.rst:602 +#: library/asyncio-eventloop.rst:611 msgid "" "Create a TCP server (socket type :data:`~socket.SOCK_STREAM`) listening on " "*port* of the *host* address." msgstr "" -#: library/asyncio-eventloop.rst:605 +#: library/asyncio-eventloop.rst:614 msgid "Returns a :class:`Server` object." msgstr "" -#: library/asyncio-eventloop.rst:607 +#: library/asyncio-eventloop.rst:616 #, fuzzy msgid "Arguments:" msgstr "Arguments" -#: library/asyncio-eventloop.rst:612 +#: library/asyncio-eventloop.rst:621 msgid "" "The *host* parameter can be set to several types which determine where the " "server would be listening:" msgstr "" -#: library/asyncio-eventloop.rst:615 +#: library/asyncio-eventloop.rst:624 msgid "" "If *host* is a string, the TCP server is bound to a single network interface " "specified by *host*." msgstr "" -#: library/asyncio-eventloop.rst:618 +#: library/asyncio-eventloop.rst:627 msgid "" "If *host* is a sequence of strings, the TCP server is bound to all network " "interfaces specified by the sequence." msgstr "" -#: library/asyncio-eventloop.rst:621 +#: library/asyncio-eventloop.rst:630 msgid "" "If *host* is an empty string or ``None``, all interfaces are assumed and a " "list of multiple sockets will be returned (most likely one for IPv4 and " "another one for IPv6)." msgstr "" -#: library/asyncio-eventloop.rst:625 +#: library/asyncio-eventloop.rst:634 msgid "" "*family* can be set to either :data:`socket.AF_INET` or :data:`~socket." "AF_INET6` to force the socket to use IPv4 or IPv6. If not set, the *family* " "will be determined from host name (defaults to :data:`~socket.AF_UNSPEC`)." msgstr "" -#: library/asyncio-eventloop.rst:630 +#: library/asyncio-eventloop.rst:639 msgid "*flags* is a bitmask for :meth:`getaddrinfo`." msgstr "*flags* est un masque de bits pour :meth:`getaddrinfo`." -#: library/asyncio-eventloop.rst:632 +#: library/asyncio-eventloop.rst:641 msgid "" "*sock* can optionally be specified in order to use a preexisting socket " "object. If specified, *host* and *port* must not be specified." msgstr "" -#: library/asyncio-eventloop.rst:635 +#: library/asyncio-eventloop.rst:644 msgid "" "*backlog* is the maximum number of queued connections passed to :meth:" "`~socket.socket.listen` (defaults to 100)." msgstr "" -#: library/asyncio-eventloop.rst:638 +#: library/asyncio-eventloop.rst:647 msgid "" "*ssl* can be set to an :class:`~ssl.SSLContext` instance to enable TLS over " "the accepted connections." msgstr "" -#: library/asyncio-eventloop.rst:641 +#: library/asyncio-eventloop.rst:650 msgid "" "*reuse_address* tells the kernel to reuse a local socket in ``TIME_WAIT`` " "state, without waiting for its natural timeout to expire. If not specified " "will automatically be set to ``True`` on Unix." msgstr "" -#: library/asyncio-eventloop.rst:646 +#: library/asyncio-eventloop.rst:655 msgid "" "*reuse_port* tells the kernel to allow this endpoint to be bound to the same " "port as other existing endpoints are bound to, so long as they all set this " "flag when being created. This option is not supported on Windows." msgstr "" -#: library/asyncio-eventloop.rst:651 +#: library/asyncio-eventloop.rst:660 msgid "" "*ssl_handshake_timeout* is (for a TLS server) the time in seconds to wait " "for the TLS handshake to complete before aborting the connection. ``60.0`` " "seconds if ``None`` (default)." msgstr "" -#: library/asyncio-eventloop.rst:655 +#: library/asyncio-eventloop.rst:664 msgid "" "*start_serving* set to ``True`` (the default) causes the created server to " "start accepting connections immediately. When set to ``False``, the user " @@ -881,103 +893,103 @@ msgid "" "to make the server to start accepting connections." msgstr "" -#: library/asyncio-eventloop.rst:663 +#: library/asyncio-eventloop.rst:672 msgid "Added *ssl_handshake_timeout* and *start_serving* parameters." msgstr "" -#: library/asyncio-eventloop.rst:676 +#: library/asyncio-eventloop.rst:685 msgid "The *host* parameter can be a sequence of strings." msgstr "" -#: library/asyncio-eventloop.rst:680 +#: library/asyncio-eventloop.rst:689 msgid "" "The :func:`start_server` function is a higher-level alternative API that " "returns a pair of :class:`StreamReader` and :class:`StreamWriter` that can " "be used in an async/await code." msgstr "" -#: library/asyncio-eventloop.rst:689 +#: library/asyncio-eventloop.rst:698 msgid "" "Similar to :meth:`loop.create_server` but works with the :py:data:`~socket." "AF_UNIX` socket family." msgstr "" -#: library/asyncio-eventloop.rst:692 +#: library/asyncio-eventloop.rst:701 msgid "" "*path* is the name of a Unix domain socket, and is required, unless a *sock* " "argument is provided. Abstract Unix sockets, :class:`str`, :class:`bytes`, " "and :class:`~pathlib.Path` paths are supported." msgstr "" -#: library/asyncio-eventloop.rst:697 +#: library/asyncio-eventloop.rst:706 msgid "" "See the documentation of the :meth:`loop.create_server` method for " "information about arguments to this method." msgstr "" -#: library/asyncio-eventloop.rst:704 +#: library/asyncio-eventloop.rst:713 msgid "The *ssl_handshake_timeout* and *start_serving* parameters." msgstr "" -#: library/asyncio-eventloop.rst:708 +#: library/asyncio-eventloop.rst:717 msgid "The *path* parameter can now be a :class:`~pathlib.Path` object." msgstr "" -#: library/asyncio-eventloop.rst:713 +#: library/asyncio-eventloop.rst:722 msgid "Wrap an already accepted connection into a transport/protocol pair." msgstr "" -#: library/asyncio-eventloop.rst:715 +#: library/asyncio-eventloop.rst:724 msgid "" "This method can be used by servers that accept connections outside of " "asyncio but that use asyncio to handle them." msgstr "" -#: library/asyncio-eventloop.rst:718 library/asyncio-eventloop.rst:785 +#: library/asyncio-eventloop.rst:727 library/asyncio-eventloop.rst:794 msgid "Parameters:" msgstr "Paramètres :" -#: library/asyncio-eventloop.rst:723 +#: library/asyncio-eventloop.rst:732 msgid "" "*sock* is a preexisting socket object returned from :meth:`socket.accept " "`." msgstr "" -#: library/asyncio-eventloop.rst:726 +#: library/asyncio-eventloop.rst:735 msgid "" "*ssl* can be set to an :class:`~ssl.SSLContext` to enable SSL over the " "accepted connections." msgstr "" -#: library/asyncio-eventloop.rst:729 +#: library/asyncio-eventloop.rst:738 msgid "" "*ssl_handshake_timeout* is (for an SSL connection) the time in seconds to " "wait for the SSL handshake to complete before aborting the connection. " "``60.0`` seconds if ``None`` (default)." msgstr "" -#: library/asyncio-eventloop.rst:733 +#: library/asyncio-eventloop.rst:742 msgid "Returns a ``(transport, protocol)`` pair." msgstr "" -#: library/asyncio-eventloop.rst:743 +#: library/asyncio-eventloop.rst:752 msgid "Transferring files" msgstr "" -#: library/asyncio-eventloop.rst:748 +#: library/asyncio-eventloop.rst:757 msgid "" "Send a *file* over a *transport*. Return the total number of bytes sent." msgstr "" -#: library/asyncio-eventloop.rst:751 +#: library/asyncio-eventloop.rst:760 msgid "The method uses high-performance :meth:`os.sendfile` if available." msgstr "" -#: library/asyncio-eventloop.rst:753 +#: library/asyncio-eventloop.rst:762 msgid "*file* must be a regular file object opened in binary mode." msgstr "" -#: library/asyncio-eventloop.rst:755 library/asyncio-eventloop.rst:945 +#: library/asyncio-eventloop.rst:764 library/asyncio-eventloop.rst:954 msgid "" "*offset* tells from where to start reading the file. If specified, *count* " "is the total number of bytes to transmit as opposed to sending the file " @@ -986,97 +998,97 @@ msgid "" "obtain the actual number of bytes sent." msgstr "" -#: library/asyncio-eventloop.rst:762 +#: library/asyncio-eventloop.rst:771 msgid "" "*fallback* set to ``True`` makes asyncio to manually read and send the file " "when the platform does not support the sendfile system call (e.g. Windows or " "SSL socket on Unix)." msgstr "" -#: library/asyncio-eventloop.rst:766 +#: library/asyncio-eventloop.rst:775 msgid "" "Raise :exc:`SendfileNotAvailableError` if the system does not support the " "*sendfile* syscall and *fallback* is ``False``." msgstr "" -#: library/asyncio-eventloop.rst:773 +#: library/asyncio-eventloop.rst:782 msgid "TLS Upgrade" msgstr "" -#: library/asyncio-eventloop.rst:779 +#: library/asyncio-eventloop.rst:788 msgid "Upgrade an existing transport-based connection to TLS." msgstr "Convertit une connexion existante en connexion TLS." -#: library/asyncio-eventloop.rst:781 +#: library/asyncio-eventloop.rst:790 msgid "" "Return a new transport instance, that the *protocol* must start using " "immediately after the *await*. The *transport* instance passed to the " "*start_tls* method should never be used again." msgstr "" -#: library/asyncio-eventloop.rst:787 +#: library/asyncio-eventloop.rst:796 msgid "" "*transport* and *protocol* instances that methods like :meth:`~loop." "create_server` and :meth:`~loop.create_connection` return." msgstr "" -#: library/asyncio-eventloop.rst:791 +#: library/asyncio-eventloop.rst:800 msgid "*sslcontext*: a configured instance of :class:`~ssl.SSLContext`." msgstr "" -#: library/asyncio-eventloop.rst:793 +#: library/asyncio-eventloop.rst:802 msgid "" "*server_side* pass ``True`` when a server-side connection is being upgraded " "(like the one created by :meth:`~loop.create_server`)." msgstr "" -#: library/asyncio-eventloop.rst:796 +#: library/asyncio-eventloop.rst:805 msgid "" "*server_hostname*: sets or overrides the host name that the target server's " "certificate will be matched against." msgstr "" -#: library/asyncio-eventloop.rst:807 +#: library/asyncio-eventloop.rst:816 msgid "Watching file descriptors" msgstr "Surveiller des descripteurs de fichiers" -#: library/asyncio-eventloop.rst:811 +#: library/asyncio-eventloop.rst:820 msgid "" "Start monitoring the *fd* file descriptor for read availability and invoke " "*callback* with the specified arguments once *fd* is available for reading." msgstr "" -#: library/asyncio-eventloop.rst:817 +#: library/asyncio-eventloop.rst:826 msgid "Stop monitoring the *fd* file descriptor for read availability." msgstr "" -#: library/asyncio-eventloop.rst:821 +#: library/asyncio-eventloop.rst:830 msgid "" "Start monitoring the *fd* file descriptor for write availability and invoke " "*callback* with the specified arguments once *fd* is available for writing." msgstr "" -#: library/asyncio-eventloop.rst:825 library/asyncio-eventloop.rst:1044 +#: library/asyncio-eventloop.rst:834 library/asyncio-eventloop.rst:1053 msgid "" "Use :func:`functools.partial` :ref:`to pass keyword arguments ` to *callback*." msgstr "" -#: library/asyncio-eventloop.rst:830 +#: library/asyncio-eventloop.rst:839 msgid "Stop monitoring the *fd* file descriptor for write availability." msgstr "" -#: library/asyncio-eventloop.rst:832 +#: library/asyncio-eventloop.rst:841 msgid "" "See also :ref:`Platform Support ` section for some " "limitations of these methods." msgstr "" -#: library/asyncio-eventloop.rst:837 +#: library/asyncio-eventloop.rst:846 msgid "Working with socket objects directly" msgstr "" -#: library/asyncio-eventloop.rst:839 +#: library/asyncio-eventloop.rst:848 msgid "" "In general, protocol implementations that use transport-based APIs such as :" "meth:`loop.create_connection` and :meth:`loop.create_server` are faster than " @@ -1085,46 +1097,46 @@ msgid "" "socket` objects directly is more convenient." msgstr "" -#: library/asyncio-eventloop.rst:848 +#: library/asyncio-eventloop.rst:857 msgid "" "Receive up to *nbytes* from *sock*. Asynchronous version of :meth:`socket." "recv() `." msgstr "" -#: library/asyncio-eventloop.rst:851 +#: library/asyncio-eventloop.rst:860 msgid "Return the received data as a bytes object." msgstr "" -#: library/asyncio-eventloop.rst:853 library/asyncio-eventloop.rst:867 -#: library/asyncio-eventloop.rst:882 library/asyncio-eventloop.rst:895 -#: library/asyncio-eventloop.rst:921 library/asyncio-eventloop.rst:959 +#: library/asyncio-eventloop.rst:862 library/asyncio-eventloop.rst:876 +#: library/asyncio-eventloop.rst:891 library/asyncio-eventloop.rst:904 +#: library/asyncio-eventloop.rst:930 library/asyncio-eventloop.rst:968 msgid "*sock* must be a non-blocking socket." msgstr "Le connecteur *sock* ne doit pas être bloquant." -#: library/asyncio-eventloop.rst:855 +#: library/asyncio-eventloop.rst:864 msgid "" "Even though this method was always documented as a coroutine method, " "releases before Python 3.7 returned a :class:`Future`. Since Python 3.7 this " "is an ``async def`` method." msgstr "" -#: library/asyncio-eventloop.rst:862 +#: library/asyncio-eventloop.rst:871 msgid "" "Receive data from *sock* into the *buf* buffer. Modeled after the blocking :" "meth:`socket.recv_into() ` method." msgstr "" -#: library/asyncio-eventloop.rst:865 +#: library/asyncio-eventloop.rst:874 msgid "Return the number of bytes written to the buffer." msgstr "" -#: library/asyncio-eventloop.rst:873 +#: library/asyncio-eventloop.rst:882 msgid "" "Send *data* to the *sock* socket. Asynchronous version of :meth:`socket." "sendall() `." msgstr "" -#: library/asyncio-eventloop.rst:876 +#: library/asyncio-eventloop.rst:885 msgid "" "This method continues to send to the socket until either all data in *data* " "has been sent or an error occurs. ``None`` is returned on success. On " @@ -1133,23 +1145,23 @@ msgid "" "the connection." msgstr "" -#: library/asyncio-eventloop.rst:884 +#: library/asyncio-eventloop.rst:893 msgid "" "Even though the method was always documented as a coroutine method, before " "Python 3.7 it returned an :class:`Future`. Since Python 3.7, this is an " "``async def`` method." msgstr "" -#: library/asyncio-eventloop.rst:891 +#: library/asyncio-eventloop.rst:900 msgid "Connect *sock* to a remote socket at *address*." msgstr "" -#: library/asyncio-eventloop.rst:893 +#: library/asyncio-eventloop.rst:902 msgid "" "Asynchronous version of :meth:`socket.connect() `." msgstr "" -#: library/asyncio-eventloop.rst:897 +#: library/asyncio-eventloop.rst:906 msgid "" "``address`` no longer needs to be resolved. ``sock_connect`` will try to " "check if the *address* is already resolved by calling :func:`socket." @@ -1157,19 +1169,19 @@ msgid "" "*address*." msgstr "" -#: library/asyncio-eventloop.rst:906 +#: library/asyncio-eventloop.rst:915 msgid "" ":meth:`loop.create_connection` and :func:`asyncio.open_connection() " "`." msgstr "" -#: library/asyncio-eventloop.rst:912 +#: library/asyncio-eventloop.rst:921 msgid "" "Accept a connection. Modeled after the blocking :meth:`socket.accept() " "` method." msgstr "" -#: library/asyncio-eventloop.rst:915 +#: library/asyncio-eventloop.rst:924 msgid "" "The socket must be bound to an address and listening for connections. The " "return value is a pair ``(conn, address)`` where *conn* is a *new* socket " @@ -1177,64 +1189,64 @@ msgid "" "the address bound to the socket on the other end of the connection." msgstr "" -#: library/asyncio-eventloop.rst:923 +#: library/asyncio-eventloop.rst:932 msgid "" "Even though the method was always documented as a coroutine method, before " "Python 3.7 it returned a :class:`Future`. Since Python 3.7, this is an " "``async def`` method." msgstr "" -#: library/asyncio-eventloop.rst:930 +#: library/asyncio-eventloop.rst:939 msgid ":meth:`loop.create_server` and :func:`start_server`." msgstr "" -#: library/asyncio-eventloop.rst:935 +#: library/asyncio-eventloop.rst:944 msgid "" "Send a file using high-performance :mod:`os.sendfile` if possible. Return " "the total number of bytes sent." msgstr "" -#: library/asyncio-eventloop.rst:938 +#: library/asyncio-eventloop.rst:947 msgid "" "Asynchronous version of :meth:`socket.sendfile() `." msgstr "" -#: library/asyncio-eventloop.rst:940 +#: library/asyncio-eventloop.rst:949 msgid "" "*sock* must be a non-blocking :const:`socket.SOCK_STREAM` :class:`~socket." "socket`." msgstr "" -#: library/asyncio-eventloop.rst:943 +#: library/asyncio-eventloop.rst:952 msgid "*file* must be a regular file object open in binary mode." msgstr "" -#: library/asyncio-eventloop.rst:952 +#: library/asyncio-eventloop.rst:961 msgid "" "*fallback*, when set to ``True``, makes asyncio manually read and send the " "file when the platform does not support the sendfile syscall (e.g. Windows " "or SSL socket on Unix)." msgstr "" -#: library/asyncio-eventloop.rst:956 +#: library/asyncio-eventloop.rst:965 msgid "" "Raise :exc:`SendfileNotAvailableError` if the system does not support " "*sendfile* syscall and *fallback* is ``False``." msgstr "" -#: library/asyncio-eventloop.rst:965 +#: library/asyncio-eventloop.rst:974 msgid "DNS" msgstr "" -#: library/asyncio-eventloop.rst:970 +#: library/asyncio-eventloop.rst:979 msgid "Asynchronous version of :meth:`socket.getaddrinfo`." msgstr "" -#: library/asyncio-eventloop.rst:974 +#: library/asyncio-eventloop.rst:983 msgid "Asynchronous version of :meth:`socket.getnameinfo`." msgstr "" -#: library/asyncio-eventloop.rst:976 +#: library/asyncio-eventloop.rst:985 msgid "" "Both *getaddrinfo* and *getnameinfo* methods were always documented to " "return a coroutine, but prior to Python 3.7 they were, in fact, returning :" @@ -1242,67 +1254,67 @@ msgid "" "coroutines." msgstr "" -#: library/asyncio-eventloop.rst:984 +#: library/asyncio-eventloop.rst:993 msgid "Working with pipes" msgstr "" -#: library/asyncio-eventloop.rst:988 +#: library/asyncio-eventloop.rst:997 msgid "Register the read end of *pipe* in the event loop." msgstr "" "Branche l'extrémité en lecture du tube *pipe* à la boucle d'évènements." -#: library/asyncio-eventloop.rst:993 +#: library/asyncio-eventloop.rst:1002 msgid "*pipe* is a :term:`file-like object `." msgstr "" -#: library/asyncio-eventloop.rst:995 +#: library/asyncio-eventloop.rst:1004 msgid "" "Return pair ``(transport, protocol)``, where *transport* supports the :class:" "`ReadTransport` interface and *protocol* is an object instantiated by the " "*protocol_factory*." msgstr "" -#: library/asyncio-eventloop.rst:999 library/asyncio-eventloop.rst:1015 +#: library/asyncio-eventloop.rst:1008 library/asyncio-eventloop.rst:1024 msgid "" "With :class:`SelectorEventLoop` event loop, the *pipe* is set to non-" "blocking mode." msgstr "" -#: library/asyncio-eventloop.rst:1004 +#: library/asyncio-eventloop.rst:1013 msgid "Register the write end of *pipe* in the event loop." msgstr "Branche l'extrémité en écriture de *pipe* à la boucle d'évènements." -#: library/asyncio-eventloop.rst:1009 +#: library/asyncio-eventloop.rst:1018 msgid "*pipe* is :term:`file-like object `." msgstr "" -#: library/asyncio-eventloop.rst:1011 +#: library/asyncio-eventloop.rst:1020 msgid "" "Return pair ``(transport, protocol)``, where *transport* supports :class:" "`WriteTransport` interface and *protocol* is an object instantiated by the " "*protocol_factory*." msgstr "" -#: library/asyncio-eventloop.rst:1020 +#: library/asyncio-eventloop.rst:1029 msgid "" ":class:`SelectorEventLoop` does not support the above methods on Windows. " "Use :class:`ProactorEventLoop` instead for Windows." msgstr "" -#: library/asyncio-eventloop.rst:1025 +#: library/asyncio-eventloop.rst:1034 msgid "" "The :meth:`loop.subprocess_exec` and :meth:`loop.subprocess_shell` methods." msgstr "" -#: library/asyncio-eventloop.rst:1030 +#: library/asyncio-eventloop.rst:1039 msgid "Unix signals" msgstr "Signaux Unix" -#: library/asyncio-eventloop.rst:1034 +#: library/asyncio-eventloop.rst:1043 msgid "Set *callback* as the handler for the *signum* signal." msgstr "" -#: library/asyncio-eventloop.rst:1036 +#: library/asyncio-eventloop.rst:1045 msgid "" "The callback will be invoked by *loop*, along with other queued callbacks " "and runnable coroutines of that event loop. Unlike signal handlers " @@ -1310,56 +1322,56 @@ msgid "" "function is allowed to interact with the event loop." msgstr "" -#: library/asyncio-eventloop.rst:1041 +#: library/asyncio-eventloop.rst:1050 msgid "" "Raise :exc:`ValueError` if the signal number is invalid or uncatchable. " "Raise :exc:`RuntimeError` if there is a problem setting up the handler." msgstr "" -#: library/asyncio-eventloop.rst:1047 +#: library/asyncio-eventloop.rst:1056 msgid "" "Like :func:`signal.signal`, this function must be invoked in the main thread." msgstr "" -#: library/asyncio-eventloop.rst:1052 +#: library/asyncio-eventloop.rst:1061 msgid "Remove the handler for the *sig* signal." msgstr "Supprime le gestionnaire du signal *sig*." -#: library/asyncio-eventloop.rst:1054 +#: library/asyncio-eventloop.rst:1063 msgid "" "Return ``True`` if the signal handler was removed, or ``False`` if no " "handler was set for the given signal." msgstr "" -#: library/asyncio-eventloop.rst:1061 +#: library/asyncio-eventloop.rst:1070 msgid "The :mod:`signal` module." msgstr "Le module :mod:`signal`." -#: library/asyncio-eventloop.rst:1065 +#: library/asyncio-eventloop.rst:1074 msgid "Executing code in thread or process pools" msgstr "" -#: library/asyncio-eventloop.rst:1069 +#: library/asyncio-eventloop.rst:1078 msgid "Arrange for *func* to be called in the specified executor." msgstr "" -#: library/asyncio-eventloop.rst:1071 +#: library/asyncio-eventloop.rst:1080 msgid "" "The *executor* argument should be an :class:`concurrent.futures.Executor` " "instance. The default executor is used if *executor* is ``None``." msgstr "" -#: library/asyncio-eventloop.rst:1115 +#: library/asyncio-eventloop.rst:1124 msgid "This method returns a :class:`asyncio.Future` object." msgstr "" -#: library/asyncio-eventloop.rst:1117 +#: library/asyncio-eventloop.rst:1126 msgid "" "Use :func:`functools.partial` :ref:`to pass keyword arguments ` to *func*." msgstr "" -#: library/asyncio-eventloop.rst:1120 +#: library/asyncio-eventloop.rst:1129 msgid "" ":meth:`loop.run_in_executor` no longer configures the ``max_workers`` of the " "thread pool executor it creates, instead leaving it up to the thread pool " @@ -1367,38 +1379,38 @@ msgid "" "default." msgstr "" -#: library/asyncio-eventloop.rst:1129 +#: library/asyncio-eventloop.rst:1138 msgid "" "Set *executor* as the default executor used by :meth:`run_in_executor`. " "*executor* should be an instance of :class:`~concurrent.futures." "ThreadPoolExecutor`." msgstr "" -#: library/asyncio-eventloop.rst:1133 +#: library/asyncio-eventloop.rst:1142 msgid "" "Using an executor that is not an instance of :class:`~concurrent.futures." "ThreadPoolExecutor` is deprecated and will trigger an error in Python 3.9." msgstr "" -#: library/asyncio-eventloop.rst:1138 +#: library/asyncio-eventloop.rst:1147 msgid "" "*executor* must be an instance of :class:`concurrent.futures." "ThreadPoolExecutor`." msgstr "" -#: library/asyncio-eventloop.rst:1143 +#: library/asyncio-eventloop.rst:1152 msgid "Error Handling API" msgstr "API de gestion d'erreur" -#: library/asyncio-eventloop.rst:1145 +#: library/asyncio-eventloop.rst:1154 msgid "Allows customizing how exceptions are handled in the event loop." msgstr "" -#: library/asyncio-eventloop.rst:1149 +#: library/asyncio-eventloop.rst:1158 msgid "Set *handler* as the new event loop exception handler." msgstr "" -#: library/asyncio-eventloop.rst:1151 +#: library/asyncio-eventloop.rst:1160 msgid "" "If *handler* is ``None``, the default exception handler will be set. " "Otherwise, *handler* must be a callable with the signature matching ``(loop, " @@ -1407,148 +1419,161 @@ msgid "" "(see :meth:`call_exception_handler` documentation for details about context)." msgstr "" -#: library/asyncio-eventloop.rst:1161 +#: library/asyncio-eventloop.rst:1170 msgid "" "Return the current exception handler, or ``None`` if no custom exception " "handler was set." msgstr "" -#: library/asyncio-eventloop.rst:1168 +#: library/asyncio-eventloop.rst:1177 msgid "Default exception handler." msgstr "Gestionnaire d'exception par défaut." -#: library/asyncio-eventloop.rst:1170 +#: library/asyncio-eventloop.rst:1179 msgid "" "This is called when an exception occurs and no exception handler is set. " "This can be called by a custom exception handler that wants to defer to the " "default handler behavior." msgstr "" -#: library/asyncio-eventloop.rst:1174 +#: library/asyncio-eventloop.rst:1183 msgid "" "*context* parameter has the same meaning as in :meth:" "`call_exception_handler`." msgstr "" -#: library/asyncio-eventloop.rst:1179 +#: library/asyncio-eventloop.rst:1188 msgid "Call the current event loop exception handler." msgstr "" "Appelle le gestionnaire d'exception de la boucle d'évènements actuelle." -#: library/asyncio-eventloop.rst:1181 +#: library/asyncio-eventloop.rst:1190 msgid "" "*context* is a ``dict`` object containing the following keys (new keys may " "be introduced in future Python versions):" msgstr "" -#: library/asyncio-eventloop.rst:1184 +#: library/asyncio-eventloop.rst:1193 msgid "'message': Error message;" msgstr "``message`` : Message d'erreur ;" -#: library/asyncio-eventloop.rst:1185 +#: library/asyncio-eventloop.rst:1194 msgid "'exception' (optional): Exception object;" msgstr "``exception`` (optionnel): Un objet exception ;" -#: library/asyncio-eventloop.rst:1186 +#: library/asyncio-eventloop.rst:1195 msgid "'future' (optional): :class:`asyncio.Future` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1187 +#: library/asyncio-eventloop.rst:1196 +msgid "'task' (optional): :class:`asyncio.Task` instance;" +msgstr "" + +#: library/asyncio-eventloop.rst:1197 msgid "'handle' (optional): :class:`asyncio.Handle` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1188 +#: library/asyncio-eventloop.rst:1198 msgid "'protocol' (optional): :ref:`Protocol ` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1189 +#: library/asyncio-eventloop.rst:1199 msgid "'transport' (optional): :ref:`Transport ` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1190 -msgid "'socket' (optional): :class:`socket.socket` instance." +#: library/asyncio-eventloop.rst:1200 +msgid "'socket' (optional): :class:`socket.socket` instance;" msgstr "" -#: library/asyncio-eventloop.rst:1194 +#: library/asyncio-eventloop.rst:1202 +msgid "'asyncgen' (optional): Asynchronous generator that caused" +msgstr "" + +#: library/asyncio-eventloop.rst:1202 +#, fuzzy +msgid "the exception." +msgstr "Gestionnaire d'exception par défaut." + +#: library/asyncio-eventloop.rst:1206 msgid "" "This method should not be overloaded in subclassed event loops. For custom " "exception handling, use the :meth:`set_exception_handler()` method." msgstr "" -#: library/asyncio-eventloop.rst:1199 +#: library/asyncio-eventloop.rst:1211 msgid "Enabling debug mode" msgstr "Active le mode débogage" -#: library/asyncio-eventloop.rst:1203 +#: library/asyncio-eventloop.rst:1215 msgid "Get the debug mode (:class:`bool`) of the event loop." msgstr "" -#: library/asyncio-eventloop.rst:1205 +#: library/asyncio-eventloop.rst:1217 msgid "" "The default value is ``True`` if the environment variable :envvar:" "`PYTHONASYNCIODEBUG` is set to a non-empty string, ``False`` otherwise." msgstr "" -#: library/asyncio-eventloop.rst:1211 +#: library/asyncio-eventloop.rst:1223 msgid "Set the debug mode of the event loop." msgstr "Active le mode débogage pour la boucle d'évènements." -#: library/asyncio-eventloop.rst:1215 +#: library/asyncio-eventloop.rst:1227 msgid "" "The new :ref:`Python Development Mode ` can now also be used to " "enable the debug mode." msgstr "" -#: library/asyncio-eventloop.rst:1220 +#: library/asyncio-eventloop.rst:1232 msgid "The :ref:`debug mode of asyncio `." msgstr "" -#: library/asyncio-eventloop.rst:1224 +#: library/asyncio-eventloop.rst:1236 msgid "Running Subprocesses" msgstr "" -#: library/asyncio-eventloop.rst:1226 +#: library/asyncio-eventloop.rst:1238 msgid "" "Methods described in this subsections are low-level. In regular async/await " "code consider using the high-level :func:`asyncio.create_subprocess_shell` " "and :func:`asyncio.create_subprocess_exec` convenience functions instead." msgstr "" -#: library/asyncio-eventloop.rst:1233 +#: library/asyncio-eventloop.rst:1245 msgid "" "The default asyncio event loop on **Windows** does not support subprocesses. " "See :ref:`Subprocess Support on Windows ` for " "details." msgstr "" -#: library/asyncio-eventloop.rst:1241 +#: library/asyncio-eventloop.rst:1253 msgid "" "Create a subprocess from one or more string arguments specified by *args*." msgstr "" -#: library/asyncio-eventloop.rst:1244 +#: library/asyncio-eventloop.rst:1256 msgid "*args* must be a list of strings represented by:" msgstr "" -#: library/asyncio-eventloop.rst:1246 +#: library/asyncio-eventloop.rst:1258 #, fuzzy msgid ":class:`str`;" msgstr ":class:`str`" -#: library/asyncio-eventloop.rst:1247 +#: library/asyncio-eventloop.rst:1259 msgid "" "or :class:`bytes`, encoded to the :ref:`filesystem encoding `." msgstr "" -#: library/asyncio-eventloop.rst:1250 +#: library/asyncio-eventloop.rst:1262 msgid "" "The first string specifies the program executable, and the remaining strings " "specify the arguments. Together, string arguments form the ``argv`` of the " "program." msgstr "" -#: library/asyncio-eventloop.rst:1254 +#: library/asyncio-eventloop.rst:1266 msgid "" "This is similar to the standard library :class:`subprocess.Popen` class " "called with ``shell=False`` and the list of strings passed as the first " @@ -1556,133 +1581,133 @@ msgid "" "which is list of strings, *subprocess_exec* takes multiple string arguments." msgstr "" -#: library/asyncio-eventloop.rst:1260 +#: library/asyncio-eventloop.rst:1272 msgid "" "The *protocol_factory* must be a callable returning a subclass of the :class:" "`asyncio.SubprocessProtocol` class." msgstr "" -#: library/asyncio-eventloop.rst:1263 +#: library/asyncio-eventloop.rst:1275 msgid "Other parameters:" msgstr "Autres paramètres :" -#: library/asyncio-eventloop.rst:1265 +#: library/asyncio-eventloop.rst:1277 msgid "*stdin* can be any of these:" msgstr "" -#: library/asyncio-eventloop.rst:1267 +#: library/asyncio-eventloop.rst:1279 msgid "" "a file-like object representing a pipe to be connected to the subprocess's " "standard input stream using :meth:`~loop.connect_write_pipe`" msgstr "" -#: library/asyncio-eventloop.rst:1270 library/asyncio-eventloop.rst:1282 -#: library/asyncio-eventloop.rst:1294 +#: library/asyncio-eventloop.rst:1282 library/asyncio-eventloop.rst:1294 +#: library/asyncio-eventloop.rst:1306 msgid "" "the :const:`subprocess.PIPE` constant (default) which will create a new pipe " "and connect it," msgstr "" -#: library/asyncio-eventloop.rst:1272 library/asyncio-eventloop.rst:1284 -#: library/asyncio-eventloop.rst:1296 +#: library/asyncio-eventloop.rst:1284 library/asyncio-eventloop.rst:1296 +#: library/asyncio-eventloop.rst:1308 msgid "" "the value ``None`` which will make the subprocess inherit the file " "descriptor from this process" msgstr "" -#: library/asyncio-eventloop.rst:1274 library/asyncio-eventloop.rst:1286 -#: library/asyncio-eventloop.rst:1298 +#: library/asyncio-eventloop.rst:1286 library/asyncio-eventloop.rst:1298 +#: library/asyncio-eventloop.rst:1310 msgid "" "the :const:`subprocess.DEVNULL` constant which indicates that the special :" "data:`os.devnull` file will be used" msgstr "" -#: library/asyncio-eventloop.rst:1277 +#: library/asyncio-eventloop.rst:1289 msgid "*stdout* can be any of these:" msgstr "" -#: library/asyncio-eventloop.rst:1279 +#: library/asyncio-eventloop.rst:1291 msgid "" "a file-like object representing a pipe to be connected to the subprocess's " "standard output stream using :meth:`~loop.connect_write_pipe`" msgstr "" -#: library/asyncio-eventloop.rst:1289 +#: library/asyncio-eventloop.rst:1301 msgid "*stderr* can be any of these:" msgstr "" -#: library/asyncio-eventloop.rst:1291 +#: library/asyncio-eventloop.rst:1303 msgid "" "a file-like object representing a pipe to be connected to the subprocess's " "standard error stream using :meth:`~loop.connect_write_pipe`" msgstr "" -#: library/asyncio-eventloop.rst:1300 +#: library/asyncio-eventloop.rst:1312 msgid "" "the :const:`subprocess.STDOUT` constant which will connect the standard " "error stream to the process' standard output stream" msgstr "" -#: library/asyncio-eventloop.rst:1303 +#: library/asyncio-eventloop.rst:1315 msgid "" "All other keyword arguments are passed to :class:`subprocess.Popen` without " "interpretation, except for *bufsize*, *universal_newlines*, *shell*, *text*, " "*encoding* and *errors*, which should not be specified at all." msgstr "" -#: library/asyncio-eventloop.rst:1308 +#: library/asyncio-eventloop.rst:1320 msgid "" "The ``asyncio`` subprocess API does not support decoding the streams as " "text. :func:`bytes.decode` can be used to convert the bytes returned from " "the stream to text." msgstr "" -#: library/asyncio-eventloop.rst:1312 +#: library/asyncio-eventloop.rst:1324 msgid "" "See the constructor of the :class:`subprocess.Popen` class for documentation " "on other arguments." msgstr "" -#: library/asyncio-eventloop.rst:1315 +#: library/asyncio-eventloop.rst:1327 msgid "" "Returns a pair of ``(transport, protocol)``, where *transport* conforms to " "the :class:`asyncio.SubprocessTransport` base class and *protocol* is an " "object instantiated by the *protocol_factory*." msgstr "" -#: library/asyncio-eventloop.rst:1323 +#: library/asyncio-eventloop.rst:1335 msgid "" "Create a subprocess from *cmd*, which can be a :class:`str` or a :class:" "`bytes` string encoded to the :ref:`filesystem encoding `, using the platform's \"shell\" syntax." msgstr "" -#: library/asyncio-eventloop.rst:1328 +#: library/asyncio-eventloop.rst:1340 msgid "" "This is similar to the standard library :class:`subprocess.Popen` class " "called with ``shell=True``." msgstr "" -#: library/asyncio-eventloop.rst:1331 +#: library/asyncio-eventloop.rst:1343 msgid "" "The *protocol_factory* must be a callable returning a subclass of the :class:" "`SubprocessProtocol` class." msgstr "" -#: library/asyncio-eventloop.rst:1334 +#: library/asyncio-eventloop.rst:1346 msgid "" "See :meth:`~loop.subprocess_exec` for more details about the remaining " "arguments." msgstr "" -#: library/asyncio-eventloop.rst:1337 +#: library/asyncio-eventloop.rst:1349 msgid "" "Returns a pair of ``(transport, protocol)``, where *transport* conforms to " "the :class:`SubprocessTransport` base class and *protocol* is an object " "instantiated by the *protocol_factory*." msgstr "" -#: library/asyncio-eventloop.rst:1342 +#: library/asyncio-eventloop.rst:1354 msgid "" "It is the application's responsibility to ensure that all whitespace and " "special characters are quoted appropriately to avoid `shell injection " @@ -1692,105 +1717,105 @@ msgid "" "used to construct shell commands." msgstr "" -#: library/asyncio-eventloop.rst:1351 +#: library/asyncio-eventloop.rst:1363 msgid "Callback Handles" msgstr "" -#: library/asyncio-eventloop.rst:1355 +#: library/asyncio-eventloop.rst:1367 msgid "" "A callback wrapper object returned by :meth:`loop.call_soon`, :meth:`loop." "call_soon_threadsafe`." msgstr "" -#: library/asyncio-eventloop.rst:1360 +#: library/asyncio-eventloop.rst:1372 msgid "" "Cancel the callback. If the callback has already been canceled or executed, " "this method has no effect." msgstr "" -#: library/asyncio-eventloop.rst:1365 +#: library/asyncio-eventloop.rst:1377 msgid "Return ``True`` if the callback was cancelled." msgstr "Renvoie ``True`` si la fonction de rappel à été annulé." -#: library/asyncio-eventloop.rst:1371 +#: library/asyncio-eventloop.rst:1383 msgid "" "A callback wrapper object returned by :meth:`loop.call_later`, and :meth:" "`loop.call_at`." msgstr "" -#: library/asyncio-eventloop.rst:1374 +#: library/asyncio-eventloop.rst:1386 msgid "This class is a subclass of :class:`Handle`." msgstr "" -#: library/asyncio-eventloop.rst:1378 +#: library/asyncio-eventloop.rst:1390 msgid "Return a scheduled callback time as :class:`float` seconds." msgstr "" -#: library/asyncio-eventloop.rst:1380 +#: library/asyncio-eventloop.rst:1392 msgid "" "The time is an absolute timestamp, using the same time reference as :meth:" "`loop.time`." msgstr "" -#: library/asyncio-eventloop.rst:1387 +#: library/asyncio-eventloop.rst:1399 msgid "Server Objects" msgstr "Objets Serveur" -#: library/asyncio-eventloop.rst:1389 +#: library/asyncio-eventloop.rst:1401 msgid "" "Server objects are created by :meth:`loop.create_server`, :meth:`loop." "create_unix_server`, :func:`start_server`, and :func:`start_unix_server` " "functions." msgstr "" -#: library/asyncio-eventloop.rst:1393 +#: library/asyncio-eventloop.rst:1405 msgid "Do not instantiate the class directly." msgstr "" -#: library/asyncio-eventloop.rst:1397 +#: library/asyncio-eventloop.rst:1409 msgid "" "*Server* objects are asynchronous context managers. When used in an ``async " "with`` statement, it's guaranteed that the Server object is closed and not " "accepting new connections when the ``async with`` statement is completed::" msgstr "" -#: library/asyncio-eventloop.rst:1410 +#: library/asyncio-eventloop.rst:1422 msgid "Server object is an asynchronous context manager since Python 3.7." msgstr "" -#: library/asyncio-eventloop.rst:1415 +#: library/asyncio-eventloop.rst:1427 msgid "" "Stop serving: close listening sockets and set the :attr:`sockets` attribute " "to ``None``." msgstr "" -#: library/asyncio-eventloop.rst:1418 +#: library/asyncio-eventloop.rst:1430 msgid "" "The sockets that represent existing incoming client connections are left " "open." msgstr "" -#: library/asyncio-eventloop.rst:1421 +#: library/asyncio-eventloop.rst:1433 msgid "" "The server is closed asynchronously, use the :meth:`wait_closed` coroutine " "to wait until the server is closed." msgstr "" -#: library/asyncio-eventloop.rst:1426 +#: library/asyncio-eventloop.rst:1438 msgid "Return the event loop associated with the server object." msgstr "" -#: library/asyncio-eventloop.rst:1432 +#: library/asyncio-eventloop.rst:1444 msgid "Start accepting connections." msgstr "Commence à accepter les connexions." -#: library/asyncio-eventloop.rst:1434 +#: library/asyncio-eventloop.rst:1446 msgid "" "This method is idempotent, so it can be called when the server is already " "being serving." msgstr "" -#: library/asyncio-eventloop.rst:1437 +#: library/asyncio-eventloop.rst:1449 msgid "" "The *start_serving* keyword-only parameter to :meth:`loop.create_server` " "and :meth:`asyncio.start_server` allows creating a Server object that is not " @@ -1799,97 +1824,97 @@ msgid "" "accepting connections." msgstr "" -#: library/asyncio-eventloop.rst:1448 +#: library/asyncio-eventloop.rst:1460 msgid "" "Start accepting connections until the coroutine is cancelled. Cancellation " "of ``serve_forever`` task causes the server to be closed." msgstr "" -#: library/asyncio-eventloop.rst:1452 +#: library/asyncio-eventloop.rst:1464 msgid "" "This method can be called if the server is already accepting connections. " "Only one ``serve_forever`` task can exist per one *Server* object." msgstr "" -#: library/asyncio-eventloop.rst:1474 +#: library/asyncio-eventloop.rst:1486 msgid "Return ``True`` if the server is accepting new connections." msgstr "Donne ``True`` si le serveur accepte de nouvelles connexions." -#: library/asyncio-eventloop.rst:1480 +#: library/asyncio-eventloop.rst:1492 msgid "Wait until the :meth:`close` method completes." msgstr "Attends que la méthode :meth:`close` se termine." -#: library/asyncio-eventloop.rst:1484 +#: library/asyncio-eventloop.rst:1496 msgid "List of :class:`socket.socket` objects the server is listening on." msgstr "" -#: library/asyncio-eventloop.rst:1486 +#: library/asyncio-eventloop.rst:1498 msgid "" "Prior to Python 3.7 ``Server.sockets`` used to return an internal list of " "server sockets directly. In 3.7 a copy of that list is returned." msgstr "" -#: library/asyncio-eventloop.rst:1495 +#: library/asyncio-eventloop.rst:1507 msgid "Event Loop Implementations" msgstr "Implémentations de boucle d'évènements" -#: library/asyncio-eventloop.rst:1497 +#: library/asyncio-eventloop.rst:1509 msgid "" "asyncio ships with two different event loop implementations: :class:" "`SelectorEventLoop` and :class:`ProactorEventLoop`." msgstr "" -#: library/asyncio-eventloop.rst:1500 +#: library/asyncio-eventloop.rst:1512 msgid "" "By default asyncio is configured to use :class:`SelectorEventLoop` on Unix " "and :class:`ProactorEventLoop` on Windows." msgstr "" -#: library/asyncio-eventloop.rst:1506 +#: library/asyncio-eventloop.rst:1518 msgid "An event loop based on the :mod:`selectors` module." msgstr "" -#: library/asyncio-eventloop.rst:1508 +#: library/asyncio-eventloop.rst:1520 msgid "" "Uses the most efficient *selector* available for the given platform. It is " "also possible to manually configure the exact selector implementation to be " "used::" msgstr "" -#: library/asyncio-eventloop.rst:1520 +#: library/asyncio-eventloop.rst:1532 msgid ":ref:`Availability `: Unix, Windows." msgstr ":ref:`Disponibilité ` : Unix, Windows." -#: library/asyncio-eventloop.rst:1525 +#: library/asyncio-eventloop.rst:1537 msgid "An event loop for Windows that uses \"I/O Completion Ports\" (IOCP)." msgstr "" -#: library/asyncio-eventloop.rst:1528 +#: library/asyncio-eventloop.rst:1540 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: library/asyncio-eventloop.rst:1531 +#: library/asyncio-eventloop.rst:1543 msgid "" "`MSDN documentation on I/O Completion Ports `_." msgstr "" -#: library/asyncio-eventloop.rst:1537 +#: library/asyncio-eventloop.rst:1549 msgid "Abstract base class for asyncio-compliant event loops." msgstr "" -#: library/asyncio-eventloop.rst:1539 +#: library/asyncio-eventloop.rst:1551 msgid "" "The :ref:`Event Loop Methods ` section lists all methods " "that an alternative implementation of ``AbstractEventLoop`` should have " "defined." msgstr "" -#: library/asyncio-eventloop.rst:1545 +#: library/asyncio-eventloop.rst:1557 msgid "Examples" msgstr "Exemples" -#: library/asyncio-eventloop.rst:1547 +#: library/asyncio-eventloop.rst:1559 msgid "" "Note that all examples in this section **purposefully** show how to use the " "low-level event loop APIs, such as :meth:`loop.run_forever` and :meth:`loop." @@ -1897,70 +1922,70 @@ msgid "" "consider using the high-level functions like :func:`asyncio.run`." msgstr "" -#: library/asyncio-eventloop.rst:1557 +#: library/asyncio-eventloop.rst:1569 msgid "Hello World with call_soon()" msgstr "\"Hello World\" avec ``call_soon()``" -#: library/asyncio-eventloop.rst:1559 +#: library/asyncio-eventloop.rst:1571 msgid "" "An example using the :meth:`loop.call_soon` method to schedule a callback. " "The callback displays ``\"Hello World\"`` and then stops the event loop::" msgstr "" -#: library/asyncio-eventloop.rst:1583 +#: library/asyncio-eventloop.rst:1595 msgid "" "A similar :ref:`Hello World ` example created with a coroutine " "and the :func:`run` function." msgstr "" -#: library/asyncio-eventloop.rst:1590 +#: library/asyncio-eventloop.rst:1602 msgid "Display the current date with call_later()" msgstr "Afficher la date actuelle avec ``call_later()``" -#: library/asyncio-eventloop.rst:1592 +#: library/asyncio-eventloop.rst:1604 msgid "" "An example of a callback displaying the current date every second. The " "callback uses the :meth:`loop.call_later` method to reschedule itself after " "5 seconds, and then stops the event loop::" msgstr "" -#: library/asyncio-eventloop.rst:1620 +#: library/asyncio-eventloop.rst:1632 msgid "" "A similar :ref:`current date ` example created with a " "coroutine and the :func:`run` function." msgstr "" -#: library/asyncio-eventloop.rst:1627 +#: library/asyncio-eventloop.rst:1639 msgid "Watch a file descriptor for read events" msgstr "" -#: library/asyncio-eventloop.rst:1629 +#: library/asyncio-eventloop.rst:1641 msgid "" "Wait until a file descriptor received some data using the :meth:`loop." "add_reader` method and then close the event loop::" msgstr "" -#: library/asyncio-eventloop.rst:1667 +#: library/asyncio-eventloop.rst:1679 msgid "" "A similar :ref:`example ` using " "transports, protocols, and the :meth:`loop.create_connection` method." msgstr "" -#: library/asyncio-eventloop.rst:1671 +#: library/asyncio-eventloop.rst:1683 msgid "" "Another similar :ref:`example ` " "using the high-level :func:`asyncio.open_connection` function and streams." msgstr "" -#: library/asyncio-eventloop.rst:1679 +#: library/asyncio-eventloop.rst:1691 msgid "Set signal handlers for SIGINT and SIGTERM" msgstr "Définit les gestionnaires de signaux pour *SIGINT* et *SIGTERM*" -#: library/asyncio-eventloop.rst:1681 +#: library/asyncio-eventloop.rst:1693 msgid "(This ``signals`` example only works on Unix.)" msgstr "(Cet exemple ne fonctionne que sur Unix.)" -#: library/asyncio-eventloop.rst:1683 +#: library/asyncio-eventloop.rst:1695 msgid "" "Register handlers for signals :py:data:`SIGINT` and :py:data:`SIGTERM` using " "the :meth:`loop.add_signal_handler` method::" diff --git a/library/asyncio-future.po b/library/asyncio-future.po index b908f0f7e..b7873b099 100644 --- a/library/asyncio-future.po +++ b/library/asyncio-future.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -87,37 +87,49 @@ msgstr "" msgid "The function accepts any :term:`awaitable` object." msgstr "La fonction accepte n'importe quel objet :term:`awaitable`." -#: library/asyncio-future.rst:63 +#: library/asyncio-future.rst:60 +msgid "" +"Deprecation warning is emitted if *obj* is not a Future-like object and " +"*loop* is not specified and there is no running event loop." +msgstr "" + +#: library/asyncio-future.rst:67 msgid "" "Wrap a :class:`concurrent.futures.Future` object in a :class:`asyncio." "Future` object." msgstr "" -#: library/asyncio-future.rst:68 +#: library/asyncio-future.rst:70 +msgid "" +"Deprecation warning is emitted if *future* is not a Future-like object and " +"*loop* is not specified and there is no running event loop." +msgstr "" + +#: library/asyncio-future.rst:76 msgid "Future Object" msgstr "" -#: library/asyncio-future.rst:72 +#: library/asyncio-future.rst:80 msgid "" "A Future represents an eventual result of an asynchronous operation. Not " "thread-safe." msgstr "" -#: library/asyncio-future.rst:75 +#: library/asyncio-future.rst:83 msgid "" "Future is an :term:`awaitable` object. Coroutines can await on Future " "objects until they either have a result or an exception set, or until they " "are cancelled." msgstr "" -#: library/asyncio-future.rst:79 +#: library/asyncio-future.rst:87 msgid "" "Typically Futures are used to enable low-level callback-based code (e.g. in " "protocols implemented using asyncio :ref:`transports `) to interoperate with high-level async/await code." msgstr "" -#: library/asyncio-future.rst:84 +#: library/asyncio-future.rst:92 msgid "" "The rule of thumb is to never expose Future objects in user-facing APIs, and " "the recommended way to create a Future object is to call :meth:`loop." @@ -125,27 +137,33 @@ msgid "" "their own optimized implementations of a Future object." msgstr "" -#: library/asyncio-future.rst:90 +#: library/asyncio-future.rst:98 msgid "Added support for the :mod:`contextvars` module." msgstr "Ajout du support du module :mod:`contextvars`." -#: library/asyncio-future.rst:95 +#: library/asyncio-future.rst:101 +msgid "" +"Deprecation warning is emitted if *loop* is not specified and there is no " +"running event loop." +msgstr "" + +#: library/asyncio-future.rst:107 msgid "Return the result of the Future." msgstr "" -#: library/asyncio-future.rst:97 +#: library/asyncio-future.rst:109 msgid "" "If the Future is *done* and has a result set by the :meth:`set_result` " "method, the result value is returned." msgstr "" -#: library/asyncio-future.rst:100 +#: library/asyncio-future.rst:112 msgid "" "If the Future is *done* and has an exception set by the :meth:" "`set_exception` method, this method raises the exception." msgstr "" -#: library/asyncio-future.rst:191 +#: library/asyncio-future.rst:203 #, fuzzy msgid "" "If the Future has been *cancelled*, this method raises a :exc:" @@ -154,7 +172,7 @@ msgstr "" "Si la tâche a été *annulée*, cette méthode lève une exception :exc:" "`CancelledError`." -#: library/asyncio-future.rst:106 +#: library/asyncio-future.rst:118 #, fuzzy msgid "" "If the Future's result isn't yet available, this method raises a :exc:" @@ -163,110 +181,110 @@ msgstr "" "Si le résultat de la tâche n'est pas encore disponible, cette méthode lève " "une exception :exc:`InvalidStateError`." -#: library/asyncio-future.rst:111 +#: library/asyncio-future.rst:123 #, fuzzy msgid "Mark the Future as *done* and set its result." msgstr "Marque le futur comme terminé et définit son résultat." -#: library/asyncio-future.rst:120 +#: library/asyncio-future.rst:132 msgid "" "Raises a :exc:`InvalidStateError` error if the Future is already *done*." msgstr "" -#: library/asyncio-future.rst:118 +#: library/asyncio-future.rst:130 #, fuzzy msgid "Mark the Future as *done* and set an exception." msgstr "Marque le futur comme terminé et définit une exception." -#: library/asyncio-future.rst:125 +#: library/asyncio-future.rst:137 msgid "Return ``True`` if the Future is *done*." msgstr "" -#: library/asyncio-future.rst:127 +#: library/asyncio-future.rst:139 msgid "" "A Future is *done* if it was *cancelled* or if it has a result or an " "exception set with :meth:`set_result` or :meth:`set_exception` calls." msgstr "" -#: library/asyncio-future.rst:133 +#: library/asyncio-future.rst:145 msgid "Return ``True`` if the Future was *cancelled*." msgstr "" -#: library/asyncio-future.rst:135 +#: library/asyncio-future.rst:147 msgid "" "The method is usually used to check if a Future is not *cancelled* before " "setting a result or an exception for it::" msgstr "" -#: library/asyncio-future.rst:143 +#: library/asyncio-future.rst:155 msgid "Add a callback to be run when the Future is *done*." msgstr "" -#: library/asyncio-future.rst:145 +#: library/asyncio-future.rst:157 msgid "The *callback* is called with the Future object as its only argument." msgstr "" -#: library/asyncio-future.rst:148 +#: library/asyncio-future.rst:160 msgid "" "If the Future is already *done* when this method is called, the callback is " "scheduled with :meth:`loop.call_soon`." msgstr "" -#: library/asyncio-future.rst:151 +#: library/asyncio-future.rst:163 msgid "" "An optional keyword-only *context* argument allows specifying a custom :" "class:`contextvars.Context` for the *callback* to run in. The current " "context is used when no *context* is provided." msgstr "" -#: library/asyncio-future.rst:155 +#: library/asyncio-future.rst:167 msgid "" ":func:`functools.partial` can be used to pass parameters to the callback, e." "g.::" msgstr "" -#: library/asyncio-future.rst:162 +#: library/asyncio-future.rst:174 msgid "" "The *context* keyword-only parameter was added. See :pep:`567` for more " "details." msgstr "" -#: library/asyncio-future.rst:168 +#: library/asyncio-future.rst:180 msgid "Remove *callback* from the callbacks list." msgstr "Retire *callback* de la liste de fonctions de rappel." -#: library/asyncio-future.rst:170 +#: library/asyncio-future.rst:182 msgid "" "Returns the number of callbacks removed, which is typically 1, unless a " "callback was added more than once." msgstr "" -#: library/asyncio-future.rst:175 +#: library/asyncio-future.rst:187 msgid "Cancel the Future and schedule callbacks." msgstr "" -#: library/asyncio-future.rst:177 +#: library/asyncio-future.rst:189 msgid "" "If the Future is already *done* or *cancelled*, return ``False``. Otherwise, " "change the Future's state to *cancelled*, schedule the callbacks, and return " "``True``." msgstr "" -#: library/asyncio-future.rst:181 +#: library/asyncio-future.rst:193 msgid "Added the ``msg`` parameter." msgstr "" -#: library/asyncio-future.rst:186 +#: library/asyncio-future.rst:198 msgid "Return the exception that was set on this Future." msgstr "" -#: library/asyncio-future.rst:188 +#: library/asyncio-future.rst:200 msgid "" "The exception (or ``None`` if no exception was set) is returned only if the " "Future is *done*." msgstr "" -#: library/asyncio-future.rst:194 +#: library/asyncio-future.rst:206 #, fuzzy msgid "" "If the Future isn't *done* yet, this method raises an :exc:" @@ -275,53 +293,53 @@ msgstr "" "Si la tâche n'est pas encore *achevée*, cette méthode lève une exception :" "exc:`InvalidStateError`." -#: library/asyncio-future.rst:199 +#: library/asyncio-future.rst:211 msgid "Return the event loop the Future object is bound to." msgstr "" -#: library/asyncio-future.rst:206 +#: library/asyncio-future.rst:218 msgid "" "This example creates a Future object, creates and schedules an asynchronous " "Task to set result for the Future, and waits until the Future has a result::" msgstr "" -#: library/asyncio-future.rst:241 +#: library/asyncio-future.rst:253 msgid "" "The Future object was designed to mimic :class:`concurrent.futures.Future`. " "Key differences include:" msgstr "" -#: library/asyncio-future.rst:244 +#: library/asyncio-future.rst:256 msgid "" "unlike asyncio Futures, :class:`concurrent.futures.Future` instances cannot " "be awaited." msgstr "" -#: library/asyncio-future.rst:247 +#: library/asyncio-future.rst:259 msgid "" ":meth:`asyncio.Future.result` and :meth:`asyncio.Future.exception` do not " "accept the *timeout* argument." msgstr "" -#: library/asyncio-future.rst:250 +#: library/asyncio-future.rst:262 msgid "" ":meth:`asyncio.Future.result` and :meth:`asyncio.Future.exception` raise an :" "exc:`InvalidStateError` exception when the Future is not *done*." msgstr "" -#: library/asyncio-future.rst:254 +#: library/asyncio-future.rst:266 msgid "" "Callbacks registered with :meth:`asyncio.Future.add_done_callback` are not " "called immediately. They are scheduled with :meth:`loop.call_soon` instead." msgstr "" -#: library/asyncio-future.rst:258 +#: library/asyncio-future.rst:270 msgid "" "asyncio Future is not compatible with the :func:`concurrent.futures.wait` " "and :func:`concurrent.futures.as_completed` functions." msgstr "" -#: library/asyncio-future.rst:262 +#: library/asyncio-future.rst:274 msgid "" ":meth:`asyncio.Future.cancel` accepts an optional ``msg`` argument, but :" "func:`concurrent.futures.cancel` does not." diff --git a/library/asyncio-queue.po b/library/asyncio-queue.po index 3f9e44725..52b056759 100644 --- a/library/asyncio-queue.po +++ b/library/asyncio-queue.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-10-13 17:37+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -61,51 +61,47 @@ msgid "" "always known and can be returned by calling the :meth:`qsize` method." msgstr "" -#: library/asyncio-queue.rst:42 -msgid "The *loop* parameter." -msgstr "Le paramètre *loop*." - -#: library/asyncio-queue.rst:43 +#: library/asyncio-queue.rst:40 msgid "This class is :ref:`not thread safe `." msgstr "" -#: library/asyncio-queue.rst:47 +#: library/asyncio-queue.rst:44 msgid "Number of items allowed in the queue." msgstr "Nombre d'éléments autorisés dans la queue." -#: library/asyncio-queue.rst:51 +#: library/asyncio-queue.rst:48 msgid "Return ``True`` if the queue is empty, ``False`` otherwise." msgstr "Renvoie ``True`` si la queue est vide, ``False`` sinon." -#: library/asyncio-queue.rst:55 +#: library/asyncio-queue.rst:52 msgid "Return ``True`` if there are :attr:`maxsize` items in the queue." msgstr "" -#: library/asyncio-queue.rst:57 +#: library/asyncio-queue.rst:54 msgid "" "If the queue was initialized with ``maxsize=0`` (the default), then :meth:" "`full()` never returns ``True``." msgstr "" -#: library/asyncio-queue.rst:62 +#: library/asyncio-queue.rst:59 msgid "" "Remove and return an item from the queue. If queue is empty, wait until an " "item is available." msgstr "" -#: library/asyncio-queue.rst:67 +#: library/asyncio-queue.rst:64 msgid "" "Return an item if one is immediately available, else raise :exc:`QueueEmpty`." msgstr "" -#: library/asyncio-queue.rst:72 +#: library/asyncio-queue.rst:69 #, fuzzy msgid "Block until all items in the queue have been received and processed." msgstr "" "Bloque jusqu'à ce que tous les éléments de la queue aient été récupérés et " "traités." -#: library/asyncio-queue.rst:74 +#: library/asyncio-queue.rst:71 #, fuzzy msgid "" "The count of unfinished tasks goes up whenever an item is added to the " @@ -120,36 +116,36 @@ msgstr "" "tout le travail à effectuer dessus est terminé. Lorsque le nombre de tâches " "non terminées devient nul, :meth:`join` débloque." -#: library/asyncio-queue.rst:82 +#: library/asyncio-queue.rst:79 msgid "" "Put an item into the queue. If the queue is full, wait until a free slot is " "available before adding the item." msgstr "" -#: library/asyncio-queue.rst:87 +#: library/asyncio-queue.rst:84 msgid "Put an item into the queue without blocking." msgstr "Ajoute un élément dans la queue sans bloquer." -#: library/asyncio-queue.rst:89 +#: library/asyncio-queue.rst:86 msgid "If no free slot is immediately available, raise :exc:`QueueFull`." msgstr "" -#: library/asyncio-queue.rst:93 +#: library/asyncio-queue.rst:90 msgid "Return the number of items in the queue." msgstr "Renvoie le nombre d'éléments dans la queue." -#: library/asyncio-queue.rst:97 +#: library/asyncio-queue.rst:94 msgid "Indicate that a formerly enqueued task is complete." msgstr "" -#: library/asyncio-queue.rst:99 +#: library/asyncio-queue.rst:96 msgid "" "Used by queue consumers. For each :meth:`~Queue.get` used to fetch a task, a " "subsequent call to :meth:`task_done` tells the queue that the processing on " "the task is complete." msgstr "" -#: library/asyncio-queue.rst:103 +#: library/asyncio-queue.rst:100 #, fuzzy msgid "" "If a :meth:`join` is currently blocking, it will resume when all items have " @@ -160,7 +156,7 @@ msgstr "" "éléments auront été traités (ce qui signifie qu'un appel à :meth:`task_done` " "a été effectué pour chaque élément qui a été :meth:`put` dans la file)." -#: library/asyncio-queue.rst:108 +#: library/asyncio-queue.rst:105 #, fuzzy msgid "" "Raises :exc:`ValueError` if called more times than there were items placed " @@ -169,51 +165,61 @@ msgstr "" "Lève une exception :exc:`ValueError` si appelée plus de fois qu'il y avait " "d'éléments dans la file." -#: library/asyncio-queue.rst:113 +#: library/asyncio-queue.rst:110 +msgid "" +"The ``loop`` parameter. This function has been implicitly getting the " +"current running loop since 3.7. See :ref:`What's New in 3.10's Removed " +"section ` for more information." +msgstr "" + +#: library/asyncio-queue.rst:117 msgid "Priority Queue" msgstr "File de priorité" -#: library/asyncio-queue.rst:117 +#: library/asyncio-queue.rst:121 msgid "" "A variant of :class:`Queue`; retrieves entries in priority order (lowest " "first)." msgstr "" -#: library/asyncio-queue.rst:120 +#: library/asyncio-queue.rst:124 msgid "Entries are typically tuples of the form ``(priority_number, data)``." msgstr "" -#: library/asyncio-queue.rst:125 +#: library/asyncio-queue.rst:129 msgid "LIFO Queue" msgstr "" -#: library/asyncio-queue.rst:129 +#: library/asyncio-queue.rst:133 msgid "" "A variant of :class:`Queue` that retrieves most recently added entries first " "(last in, first out)." msgstr "" -#: library/asyncio-queue.rst:134 +#: library/asyncio-queue.rst:138 msgid "Exceptions" msgstr "Exceptions" -#: library/asyncio-queue.rst:138 +#: library/asyncio-queue.rst:142 msgid "" "This exception is raised when the :meth:`~Queue.get_nowait` method is called " "on an empty queue." msgstr "" -#: library/asyncio-queue.rst:144 +#: library/asyncio-queue.rst:148 msgid "" "Exception raised when the :meth:`~Queue.put_nowait` method is called on a " "queue that has reached its *maxsize*." msgstr "" -#: library/asyncio-queue.rst:149 +#: library/asyncio-queue.rst:153 msgid "Examples" msgstr "Exemples" -#: library/asyncio-queue.rst:153 +#: library/asyncio-queue.rst:157 msgid "" "Queues can be used to distribute workload between several concurrent tasks::" msgstr "" + +#~ msgid "The *loop* parameter." +#~ msgstr "Le paramètre *loop*." diff --git a/library/asyncio-stream.po b/library/asyncio-stream.po index d5337ffed..85203275b 100644 --- a/library/asyncio-stream.po +++ b/library/asyncio-stream.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-09-06 13:48+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -60,33 +60,34 @@ msgid "" "`StreamReader` and :class:`StreamWriter` classes." msgstr "" -#: library/asyncio-stream.rst:62 -msgid "" -"The *loop* argument is optional and can always be determined automatically " -"when this function is awaited from a coroutine." -msgstr "" - -#: library/asyncio-stream.rst:98 +#: library/asyncio-stream.rst:100 msgid "" "*limit* determines the buffer size limit used by the returned :class:" "`StreamReader` instance. By default the *limit* is set to 64 KiB." msgstr "" -#: library/asyncio-stream.rst:69 +#: library/asyncio-stream.rst:66 msgid "" "The rest of the arguments are passed directly to :meth:`loop." "create_connection`." msgstr "" -#: library/asyncio-stream.rst:127 +#: library/asyncio-stream.rst:136 msgid "The *ssl_handshake_timeout* parameter." msgstr "" -#: library/asyncio-stream.rst:84 +#: library/asyncio-stream.rst:113 library/asyncio-stream.rst:172 +msgid "" +"The ``loop`` parameter. This function has been implicitly getting the " +"current running loop since 3.7. See :ref:`What's New in 3.10's Removed " +"section ` for more information." +msgstr "" + +#: library/asyncio-stream.rst:89 msgid "Start a socket server." msgstr "" -#: library/asyncio-stream.rst:86 +#: library/asyncio-stream.rst:91 msgid "" "The *client_connected_cb* callback is called whenever a new client " "connection is established. It receives a ``(reader, writer)`` pair as two " @@ -94,143 +95,137 @@ msgid "" "classes." msgstr "" -#: library/asyncio-stream.rst:91 +#: library/asyncio-stream.rst:96 msgid "" "*client_connected_cb* can be a plain callable or a :ref:`coroutine function " "`; if it is a coroutine function, it will be automatically " "scheduled as a :class:`Task`." msgstr "" -#: library/asyncio-stream.rst:95 -msgid "" -"The *loop* argument is optional and can always be determined automatically " -"when this method is awaited from a coroutine." -msgstr "" - -#: library/asyncio-stream.rst:102 +#: library/asyncio-stream.rst:104 msgid "" "The rest of the arguments are passed directly to :meth:`loop.create_server`." msgstr "" -#: library/asyncio-stream.rst:149 +#: library/asyncio-stream.rst:164 msgid "The *ssl_handshake_timeout* and *start_serving* parameters." msgstr "" -#: library/asyncio-stream.rst:111 +#: library/asyncio-stream.rst:120 msgid "Unix Sockets" msgstr "" -#: library/asyncio-stream.rst:116 +#: library/asyncio-stream.rst:125 msgid "" "Establish a Unix socket connection and return a pair of ``(reader, writer)``." msgstr "" -#: library/asyncio-stream.rst:119 +#: library/asyncio-stream.rst:128 msgid "Similar to :func:`open_connection` but operates on Unix sockets." msgstr "" -#: library/asyncio-stream.rst:121 +#: library/asyncio-stream.rst:130 msgid "See also the documentation of :meth:`loop.create_unix_connection`." msgstr "" -#: library/asyncio-stream.rst:146 +#: library/asyncio-stream.rst:161 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." -#: library/asyncio-stream.rst:131 +#: library/asyncio-stream.rst:140 msgid "The *path* parameter can now be a :term:`path-like object`" msgstr "" -#: library/asyncio-stream.rst:139 +#: library/asyncio-stream.rst:154 msgid "Start a Unix socket server." msgstr "" -#: library/asyncio-stream.rst:141 +#: library/asyncio-stream.rst:156 msgid "Similar to :func:`start_server` but works with Unix sockets." msgstr "" -#: library/asyncio-stream.rst:143 +#: library/asyncio-stream.rst:158 msgid "See also the documentation of :meth:`loop.create_unix_server`." msgstr "" -#: library/asyncio-stream.rst:153 +#: library/asyncio-stream.rst:168 msgid "The *path* parameter can now be a :term:`path-like object`." msgstr "" -#: library/asyncio-stream.rst:157 +#: library/asyncio-stream.rst:179 msgid "StreamReader" msgstr "StreamReader" -#: library/asyncio-stream.rst:161 +#: library/asyncio-stream.rst:183 msgid "" "Represents a reader object that provides APIs to read data from the IO " "stream." msgstr "" -#: library/asyncio-stream.rst:164 +#: library/asyncio-stream.rst:186 msgid "" "It is not recommended to instantiate *StreamReader* objects directly; use :" "func:`open_connection` and :func:`start_server` instead." msgstr "" -#: library/asyncio-stream.rst:170 +#: library/asyncio-stream.rst:192 msgid "" "Read up to *n* bytes. If *n* is not provided, or set to ``-1``, read until " "EOF and return all read bytes." msgstr "" -#: library/asyncio-stream.rst:173 +#: library/asyncio-stream.rst:195 msgid "" "If EOF was received and the internal buffer is empty, return an empty " "``bytes`` object." msgstr "" -#: library/asyncio-stream.rst:178 +#: library/asyncio-stream.rst:200 msgid "" "Read one line, where \"line\" is a sequence of bytes ending with ``\\n``." msgstr "" -#: library/asyncio-stream.rst:181 +#: library/asyncio-stream.rst:203 msgid "" "If EOF is received and ``\\n`` was not found, the method returns partially " "read data." msgstr "" -#: library/asyncio-stream.rst:184 +#: library/asyncio-stream.rst:206 msgid "" "If EOF is received and the internal buffer is empty, return an empty " "``bytes`` object." msgstr "" -#: library/asyncio-stream.rst:189 +#: library/asyncio-stream.rst:211 msgid "Read exactly *n* bytes." msgstr "" -#: library/asyncio-stream.rst:191 +#: library/asyncio-stream.rst:213 msgid "" "Raise an :exc:`IncompleteReadError` if EOF is reached before *n* can be " "read. Use the :attr:`IncompleteReadError.partial` attribute to get the " "partially read data." msgstr "" -#: library/asyncio-stream.rst:197 +#: library/asyncio-stream.rst:219 msgid "Read data from the stream until *separator* is found." msgstr "" -#: library/asyncio-stream.rst:199 +#: library/asyncio-stream.rst:221 msgid "" "On success, the data and separator will be removed from the internal buffer " "(consumed). Returned data will include the separator at the end." msgstr "" -#: library/asyncio-stream.rst:203 +#: library/asyncio-stream.rst:225 msgid "" "If the amount of data read exceeds the configured stream limit, a :exc:" "`LimitOverrunError` exception is raised, and the data is left in the " "internal buffer and can be read again." msgstr "" -#: library/asyncio-stream.rst:207 +#: library/asyncio-stream.rst:229 msgid "" "If EOF is reached before the complete separator is found, an :exc:" "`IncompleteReadError` exception is raised, and the internal buffer is " @@ -238,77 +233,77 @@ msgid "" "portion of the separator." msgstr "" -#: library/asyncio-stream.rst:216 +#: library/asyncio-stream.rst:238 msgid "Return ``True`` if the buffer is empty and :meth:`feed_eof` was called." msgstr "" -#: library/asyncio-stream.rst:221 +#: library/asyncio-stream.rst:243 msgid "StreamWriter" msgstr "StreamWriter" -#: library/asyncio-stream.rst:225 +#: library/asyncio-stream.rst:247 msgid "" "Represents a writer object that provides APIs to write data to the IO stream." msgstr "" -#: library/asyncio-stream.rst:228 +#: library/asyncio-stream.rst:250 msgid "" "It is not recommended to instantiate *StreamWriter* objects directly; use :" "func:`open_connection` and :func:`start_server` instead." msgstr "" -#: library/asyncio-stream.rst:234 +#: library/asyncio-stream.rst:256 msgid "" "The method attempts to write the *data* to the underlying socket " "immediately. If that fails, the data is queued in an internal write buffer " "until it can be sent." msgstr "" -#: library/asyncio-stream.rst:250 +#: library/asyncio-stream.rst:272 msgid "The method should be used along with the ``drain()`` method::" msgstr "" -#: library/asyncio-stream.rst:245 +#: library/asyncio-stream.rst:267 msgid "" "The method writes a list (or any iterable) of bytes to the underlying socket " "immediately. If that fails, the data is queued in an internal write buffer " "until it can be sent." msgstr "" -#: library/asyncio-stream.rst:257 +#: library/asyncio-stream.rst:279 msgid "The method closes the stream and the underlying socket." msgstr "" -#: library/asyncio-stream.rst:259 +#: library/asyncio-stream.rst:281 msgid "The method should be used along with the ``wait_closed()`` method::" msgstr "" -#: library/asyncio-stream.rst:266 +#: library/asyncio-stream.rst:288 msgid "" "Return ``True`` if the underlying transport supports the :meth:`write_eof` " "method, ``False`` otherwise." msgstr "" -#: library/asyncio-stream.rst:271 +#: library/asyncio-stream.rst:293 msgid "" "Close the write end of the stream after the buffered write data is flushed." msgstr "" -#: library/asyncio-stream.rst:276 +#: library/asyncio-stream.rst:298 msgid "Return the underlying asyncio transport." msgstr "" -#: library/asyncio-stream.rst:280 +#: library/asyncio-stream.rst:302 msgid "" "Access optional transport information; see :meth:`BaseTransport." "get_extra_info` for details." msgstr "" -#: library/asyncio-stream.rst:285 +#: library/asyncio-stream.rst:307 msgid "Wait until it is appropriate to resume writing to the stream. Example::" msgstr "" -#: library/asyncio-stream.rst:291 +#: library/asyncio-stream.rst:313 msgid "" "This is a flow control method that interacts with the underlying IO write " "buffer. When the size of the buffer reaches the high watermark, *drain()* " @@ -317,90 +312,90 @@ msgid "" "`drain` returns immediately." msgstr "" -#: library/asyncio-stream.rst:300 +#: library/asyncio-stream.rst:322 msgid "" "Return ``True`` if the stream is closed or in the process of being closed." msgstr "" -#: library/asyncio-stream.rst:307 +#: library/asyncio-stream.rst:329 msgid "Wait until the stream is closed." msgstr "" -#: library/asyncio-stream.rst:309 +#: library/asyncio-stream.rst:331 msgid "" "Should be called after :meth:`close` to wait until the underlying connection " "is closed." msgstr "" -#: library/asyncio-stream.rst:316 +#: library/asyncio-stream.rst:338 msgid "Examples" msgstr "Exemples" -#: library/asyncio-stream.rst:321 +#: library/asyncio-stream.rst:343 msgid "TCP echo client using streams" msgstr "" -#: library/asyncio-stream.rst:323 +#: library/asyncio-stream.rst:345 msgid "TCP echo client using the :func:`asyncio.open_connection` function::" msgstr "" -#: library/asyncio-stream.rst:345 +#: library/asyncio-stream.rst:367 msgid "" "The :ref:`TCP echo client protocol " "` example uses the low-level :meth:" "`loop.create_connection` method." msgstr "" -#: library/asyncio-stream.rst:352 +#: library/asyncio-stream.rst:374 msgid "TCP echo server using streams" msgstr "" -#: library/asyncio-stream.rst:354 +#: library/asyncio-stream.rst:376 msgid "TCP echo server using the :func:`asyncio.start_server` function::" msgstr "" -#: library/asyncio-stream.rst:387 +#: library/asyncio-stream.rst:409 msgid "" "The :ref:`TCP echo server protocol " "` example uses the :meth:`loop." "create_server` method." msgstr "" -#: library/asyncio-stream.rst:392 +#: library/asyncio-stream.rst:414 msgid "Get HTTP headers" msgstr "Récupère les en-têtes HTTP" -#: library/asyncio-stream.rst:394 +#: library/asyncio-stream.rst:416 msgid "" "Simple example querying HTTP headers of the URL passed on the command line::" msgstr "" -#: library/asyncio-stream.rst:432 +#: library/asyncio-stream.rst:454 msgid "Usage::" msgstr "Utilisation ::" -#: library/asyncio-stream.rst:436 +#: library/asyncio-stream.rst:458 msgid "or with HTTPS::" msgstr "ou avec HTTPS ::" -#: library/asyncio-stream.rst:444 +#: library/asyncio-stream.rst:466 msgid "Register an open socket to wait for data using streams" msgstr "" -#: library/asyncio-stream.rst:446 +#: library/asyncio-stream.rst:468 msgid "" "Coroutine waiting until a socket receives data using the :func:" "`open_connection` function::" msgstr "" -#: library/asyncio-stream.rst:480 +#: library/asyncio-stream.rst:502 msgid "" "The :ref:`register an open socket to wait for data using a protocol " "` example uses a low-level protocol and " "the :meth:`loop.create_connection` method." msgstr "" -#: library/asyncio-stream.rst:484 +#: library/asyncio-stream.rst:506 msgid "" "The :ref:`watch a file descriptor for read events " "` example uses the low-level :meth:`loop." diff --git a/library/asyncio-subprocess.po b/library/asyncio-subprocess.po index e5f7edabd..0ef75fa6d 100644 --- a/library/asyncio-subprocess.po +++ b/library/asyncio-subprocess.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-10-15 00:37+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -57,41 +57,43 @@ msgstr "" msgid "Creating Subprocesses" msgstr "" -#: library/asyncio-subprocess.rst:68 +#: library/asyncio-subprocess.rst:67 msgid "Create a subprocess." msgstr "" -#: library/asyncio-subprocess.rst:70 library/asyncio-subprocess.rst:89 +#: library/asyncio-subprocess.rst:69 library/asyncio-subprocess.rst:91 msgid "" "The *limit* argument sets the buffer limit for :class:`StreamReader` " "wrappers for :attr:`Process.stdout` and :attr:`Process.stderr` (if :attr:" "`subprocess.PIPE` is passed to *stdout* and *stderr* arguments)." msgstr "" -#: library/asyncio-subprocess.rst:74 library/asyncio-subprocess.rst:93 +#: library/asyncio-subprocess.rst:73 library/asyncio-subprocess.rst:95 msgid "Return a :class:`~asyncio.subprocess.Process` instance." msgstr "" -#: library/asyncio-subprocess.rst:76 +#: library/asyncio-subprocess.rst:75 msgid "" "See the documentation of :meth:`loop.subprocess_exec` for other parameters." msgstr "" -#: library/asyncio-subprocess.rst:81 library/asyncio-subprocess.rst:109 -#, fuzzy -msgid "The *loop* parameter." -msgstr "Autres paramètres :" +#: library/asyncio-subprocess.rst:80 library/asyncio-subprocess.rst:111 +msgid "" +"The ``loop`` parameter. This function has been implicitly getting the " +"current running loop since 3.7. See :ref:`What's New in 3.10's Removed " +"section ` for more information." +msgstr "" -#: library/asyncio-subprocess.rst:87 +#: library/asyncio-subprocess.rst:89 msgid "Run the *cmd* shell command." msgstr "Exécute la commande *cmd* dans un *shell*." -#: library/asyncio-subprocess.rst:95 +#: library/asyncio-subprocess.rst:97 msgid "" "See the documentation of :meth:`loop.subprocess_shell` for other parameters." msgstr "" -#: library/asyncio-subprocess.rst:100 +#: library/asyncio-subprocess.rst:102 msgid "" "It is the application's responsibility to ensure that all whitespace and " "special characters are quoted appropriately to avoid `shell injection " @@ -101,14 +103,14 @@ msgid "" "be used to construct shell commands." msgstr "" -#: library/asyncio-subprocess.rst:113 +#: library/asyncio-subprocess.rst:118 msgid "" "Subprocesses are available for Windows if a :class:`ProactorEventLoop` is " "used. See :ref:`Subprocess Support on Windows ` " "for details." msgstr "" -#: library/asyncio-subprocess.rst:119 +#: library/asyncio-subprocess.rst:124 msgid "" "asyncio also has the following *low-level* APIs to work with subprocesses: :" "meth:`loop.subprocess_exec`, :meth:`loop.subprocess_shell`, :meth:`loop." @@ -117,22 +119,22 @@ msgid "" "Protocols `." msgstr "" -#: library/asyncio-subprocess.rst:127 +#: library/asyncio-subprocess.rst:132 msgid "Constants" msgstr "Constantes" -#: library/asyncio-subprocess.rst:131 +#: library/asyncio-subprocess.rst:136 msgid "Can be passed to the *stdin*, *stdout* or *stderr* parameters." msgstr "" -#: library/asyncio-subprocess.rst:133 +#: library/asyncio-subprocess.rst:138 msgid "" "If *PIPE* is passed to *stdin* argument, the :attr:`Process.stdin ` attribute will point to a :class:`StreamWriter` " "instance." msgstr "" -#: library/asyncio-subprocess.rst:137 +#: library/asyncio-subprocess.rst:142 msgid "" "If *PIPE* is passed to *stdout* or *stderr* arguments, the :attr:`Process." "stdout ` and :attr:`Process.stderr " @@ -140,24 +142,24 @@ msgid "" "`StreamReader` instances." msgstr "" -#: library/asyncio-subprocess.rst:144 +#: library/asyncio-subprocess.rst:149 msgid "" "Special value that can be used as the *stderr* argument and indicates that " "standard error should be redirected into standard output." msgstr "" -#: library/asyncio-subprocess.rst:149 +#: library/asyncio-subprocess.rst:154 msgid "" "Special value that can be used as the *stdin*, *stdout* or *stderr* argument " "to process creation functions. It indicates that the special file :data:`os." "devnull` will be used for the corresponding subprocess stream." msgstr "" -#: library/asyncio-subprocess.rst:155 +#: library/asyncio-subprocess.rst:160 msgid "Interacting with Subprocesses" msgstr "" -#: library/asyncio-subprocess.rst:157 +#: library/asyncio-subprocess.rst:162 msgid "" "Both :func:`create_subprocess_exec` and :func:`create_subprocess_shell` " "functions return instances of the *Process* class. *Process* is a high-" @@ -165,47 +167,47 @@ msgid "" "their completion." msgstr "" -#: library/asyncio-subprocess.rst:164 +#: library/asyncio-subprocess.rst:169 msgid "" "An object that wraps OS processes created by the :func:" "`create_subprocess_exec` and :func:`create_subprocess_shell` functions." msgstr "" -#: library/asyncio-subprocess.rst:168 +#: library/asyncio-subprocess.rst:173 msgid "" "This class is designed to have a similar API to the :class:`subprocess." "Popen` class, but there are some notable differences:" msgstr "" -#: library/asyncio-subprocess.rst:172 +#: library/asyncio-subprocess.rst:177 msgid "" "unlike Popen, Process instances do not have an equivalent to the :meth:" "`~subprocess.Popen.poll` method;" msgstr "" -#: library/asyncio-subprocess.rst:175 +#: library/asyncio-subprocess.rst:180 msgid "" "the :meth:`~asyncio.subprocess.Process.communicate` and :meth:`~asyncio." "subprocess.Process.wait` methods don't have a *timeout* parameter: use the :" "func:`wait_for` function;" msgstr "" -#: library/asyncio-subprocess.rst:179 +#: library/asyncio-subprocess.rst:184 msgid "" "the :meth:`Process.wait() ` method is " "asynchronous, whereas :meth:`subprocess.Popen.wait` method is implemented as " "a blocking busy loop;" msgstr "" -#: library/asyncio-subprocess.rst:183 +#: library/asyncio-subprocess.rst:188 msgid "the *universal_newlines* parameter is not supported." msgstr "" -#: library/asyncio-subprocess.rst:185 +#: library/asyncio-subprocess.rst:190 msgid "This class is :ref:`not thread safe `." msgstr "" -#: library/asyncio-subprocess.rst:187 +#: library/asyncio-subprocess.rst:192 msgid "" "See also the :ref:`Subprocess and Threads ` " "section." @@ -213,15 +215,15 @@ msgstr "" "Voir aussi la section :ref:`sous-processus et fils d'exécution `." -#: library/asyncio-subprocess.rst:192 +#: library/asyncio-subprocess.rst:197 msgid "Wait for the child process to terminate." msgstr "" -#: library/asyncio-subprocess.rst:194 +#: library/asyncio-subprocess.rst:199 msgid "Set and return the :attr:`returncode` attribute." msgstr "" -#: library/asyncio-subprocess.rst:198 +#: library/asyncio-subprocess.rst:203 msgid "" "This method can deadlock when using ``stdout=PIPE`` or ``stderr=PIPE`` and " "the child process generates so much output that it blocks waiting for the OS " @@ -229,33 +231,33 @@ msgid "" "using pipes to avoid this condition." msgstr "" -#: library/asyncio-subprocess.rst:206 +#: library/asyncio-subprocess.rst:211 msgid "Interact with process:" msgstr "" -#: library/asyncio-subprocess.rst:208 +#: library/asyncio-subprocess.rst:213 msgid "send data to *stdin* (if *input* is not ``None``);" msgstr "" -#: library/asyncio-subprocess.rst:209 +#: library/asyncio-subprocess.rst:214 msgid "read data from *stdout* and *stderr*, until EOF is reached;" msgstr "" -#: library/asyncio-subprocess.rst:210 +#: library/asyncio-subprocess.rst:215 msgid "wait for process to terminate." msgstr "" -#: library/asyncio-subprocess.rst:212 +#: library/asyncio-subprocess.rst:217 msgid "" "The optional *input* argument is the data (:class:`bytes` object) that will " "be sent to the child process." msgstr "" -#: library/asyncio-subprocess.rst:215 +#: library/asyncio-subprocess.rst:220 msgid "Return a tuple ``(stdout_data, stderr_data)``." msgstr "" -#: library/asyncio-subprocess.rst:217 +#: library/asyncio-subprocess.rst:222 msgid "" "If either :exc:`BrokenPipeError` or :exc:`ConnectionResetError` exception is " "raised when writing *input* into *stdin*, the exception is ignored. This " @@ -263,7 +265,7 @@ msgid "" "*stdin*." msgstr "" -#: library/asyncio-subprocess.rst:222 +#: library/asyncio-subprocess.rst:227 msgid "" "If it is desired to send data to the process' *stdin*, the process needs to " "be created with ``stdin=PIPE``. Similarly, to get anything other than " @@ -271,7 +273,7 @@ msgid "" "``stdout=PIPE`` and/or ``stderr=PIPE`` arguments." msgstr "" -#: library/asyncio-subprocess.rst:228 +#: library/asyncio-subprocess.rst:233 msgid "" "Note, that the data read is buffered in memory, so do not use this method if " "the data size is large or unlimited." @@ -279,11 +281,11 @@ msgstr "" "Notez que les données lues sont mises en cache en mémoire, donc n'utilisez " "pas cette méthode si la taille des données est importante voire illimitée." -#: library/asyncio-subprocess.rst:233 +#: library/asyncio-subprocess.rst:238 msgid "Sends the signal *signal* to the child process." msgstr "Envoie le signal *signal* au sous-processus." -#: library/asyncio-subprocess.rst:237 +#: library/asyncio-subprocess.rst:242 #, fuzzy msgid "" "On Windows, :py:data:`SIGTERM` is an alias for :meth:`terminate`. " @@ -294,11 +296,11 @@ msgstr "" "et *CTRL_BREAK_EVENT* peuvent être envoyés aux processus démarrés avec un " "paramètre *creationflags* incluant `CREATE_NEW_PROCESS_GROUP`." -#: library/asyncio-subprocess.rst:244 +#: library/asyncio-subprocess.rst:249 msgid "Stop the child process." msgstr "Arrête le sous-processus." -#: library/asyncio-subprocess.rst:246 +#: library/asyncio-subprocess.rst:251 msgid "" "On POSIX systems this method sends :py:data:`signal.SIGTERM` to the child " "process." @@ -306,18 +308,18 @@ msgstr "" "Sur les systèmes POSIX, cette méthode envoie un :py:data:`signal.SIGTERM` au " "sous-processus." -#: library/asyncio-subprocess.rst:249 +#: library/asyncio-subprocess.rst:254 msgid "" "On Windows the Win32 API function :c:func:`TerminateProcess` is called to " "stop the child process." msgstr "" -#: library/asyncio-subprocess.rst:254 +#: library/asyncio-subprocess.rst:259 #, fuzzy msgid "Kill the child process." msgstr "Arrête le sous-processus." -#: library/asyncio-subprocess.rst:256 +#: library/asyncio-subprocess.rst:261 #, fuzzy msgid "" "On POSIX systems this method sends :py:data:`SIGKILL` to the child process." @@ -325,29 +327,29 @@ msgstr "" "Sur les systèmes POSIX, cette méthode envoie un :py:data:`signal.SIGTERM` au " "sous-processus." -#: library/asyncio-subprocess.rst:259 +#: library/asyncio-subprocess.rst:264 msgid "On Windows this method is an alias for :meth:`terminate`." msgstr "" -#: library/asyncio-subprocess.rst:263 +#: library/asyncio-subprocess.rst:268 msgid "" "Standard input stream (:class:`StreamWriter`) or ``None`` if the process was " "created with ``stdin=None``." msgstr "" -#: library/asyncio-subprocess.rst:268 +#: library/asyncio-subprocess.rst:273 msgid "" "Standard output stream (:class:`StreamReader`) or ``None`` if the process " "was created with ``stdout=None``." msgstr "" -#: library/asyncio-subprocess.rst:273 +#: library/asyncio-subprocess.rst:278 msgid "" "Standard error stream (:class:`StreamReader`) or ``None`` if the process was " "created with ``stderr=None``." msgstr "" -#: library/asyncio-subprocess.rst:278 +#: library/asyncio-subprocess.rst:283 msgid "" "Use the :meth:`communicate` method rather than :attr:`process.stdin.write() " "`, :attr:`await process.stdout.read() ` or :attr:`await " @@ -355,25 +357,25 @@ msgid "" "reading or writing and blocking the child process." msgstr "" -#: library/asyncio-subprocess.rst:287 +#: library/asyncio-subprocess.rst:292 msgid "Process identification number (PID)." msgstr "" -#: library/asyncio-subprocess.rst:289 +#: library/asyncio-subprocess.rst:294 msgid "" "Note that for processes created by the :func:`create_subprocess_shell` " "function, this attribute is the PID of the spawned shell." msgstr "" -#: library/asyncio-subprocess.rst:294 +#: library/asyncio-subprocess.rst:299 msgid "Return code of the process when it exits." msgstr "" -#: library/asyncio-subprocess.rst:296 +#: library/asyncio-subprocess.rst:301 msgid "A ``None`` value indicates that the process has not terminated yet." msgstr "" -#: library/asyncio-subprocess.rst:298 +#: library/asyncio-subprocess.rst:303 msgid "" "A negative value ``-N`` indicates that the child was terminated by signal " "``N`` (POSIX only)." @@ -381,70 +383,74 @@ msgstr "" "Une valeur négative ``-N`` indique que le sous-processus a été terminé par " "un signal ``N`` (seulement sur les systèmes *POSIX*)." -#: library/asyncio-subprocess.rst:305 +#: library/asyncio-subprocess.rst:310 msgid "Subprocess and Threads" msgstr "Sous-processus et fils d'exécution" -#: library/asyncio-subprocess.rst:307 +#: library/asyncio-subprocess.rst:312 msgid "" "Standard asyncio event loop supports running subprocesses from different " "threads by default." msgstr "" -#: library/asyncio-subprocess.rst:310 +#: library/asyncio-subprocess.rst:315 msgid "" "On Windows subprocesses are provided by :class:`ProactorEventLoop` only " "(default), :class:`SelectorEventLoop` has no subprocess support." msgstr "" -#: library/asyncio-subprocess.rst:313 +#: library/asyncio-subprocess.rst:318 msgid "" "On UNIX *child watchers* are used for subprocess finish waiting, see :ref:" "`asyncio-watchers` for more info." msgstr "" -#: library/asyncio-subprocess.rst:319 +#: library/asyncio-subprocess.rst:324 msgid "" "UNIX switched to use :class:`ThreadedChildWatcher` for spawning subprocesses " "from different threads without any limitation." msgstr "" -#: library/asyncio-subprocess.rst:322 +#: library/asyncio-subprocess.rst:327 msgid "" "Spawning a subprocess with *inactive* current child watcher raises :exc:" "`RuntimeError`." msgstr "" -#: library/asyncio-subprocess.rst:325 +#: library/asyncio-subprocess.rst:330 msgid "" "Note that alternative event loop implementations might have own limitations; " "please refer to their documentation." msgstr "" -#: library/asyncio-subprocess.rst:330 +#: library/asyncio-subprocess.rst:335 msgid "" "The :ref:`Concurrency and multithreading in asyncio ` section." msgstr "" -#: library/asyncio-subprocess.rst:335 +#: library/asyncio-subprocess.rst:340 msgid "Examples" msgstr "Exemples" -#: library/asyncio-subprocess.rst:337 +#: library/asyncio-subprocess.rst:342 msgid "" "An example using the :class:`~asyncio.subprocess.Process` class to control a " "subprocess and the :class:`StreamReader` class to read from its standard " "output." msgstr "" -#: library/asyncio-subprocess.rst:343 +#: library/asyncio-subprocess.rst:348 msgid "" "The subprocess is created by the :func:`create_subprocess_exec` function::" msgstr "" -#: library/asyncio-subprocess.rst:370 +#: library/asyncio-subprocess.rst:375 msgid "" "See also the :ref:`same example ` written " "using low-level APIs." msgstr "" + +#, fuzzy +#~ msgid "The *loop* parameter." +#~ msgstr "Autres paramètres :" diff --git a/library/asyncio-sync.po b/library/asyncio-sync.po index 74698634b..7b44ee387 100644 --- a/library/asyncio-sync.po +++ b/library/asyncio-sync.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-10-15 00:46+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -84,68 +84,71 @@ msgstr "" msgid "The preferred way to use a Lock is an :keyword:`async with` statement::" msgstr "" -#: library/asyncio-sync.rst:200 library/asyncio-sync.rst:300 +#: library/asyncio-sync.rst:207 library/asyncio-sync.rst:309 msgid "which is equivalent to::" msgstr "" -#: library/asyncio-sync.rst:114 library/asyncio-sync.rst:290 -#: library/asyncio-sync.rst:345 -msgid "The *loop* parameter." -msgstr "Le paramètre *loop*." +#: library/asyncio-sync.rst:119 library/asyncio-sync.rst:299 +#: library/asyncio-sync.rst:354 +msgid "" +"The ``loop`` parameter. This class has been implicitly getting the current " +"running loop since 3.7. See :ref:`What's New in 3.10's Removed section " +"` for more information." +msgstr "" -#: library/asyncio-sync.rst:71 +#: library/asyncio-sync.rst:74 msgid "Acquire the lock." msgstr "" -#: library/asyncio-sync.rst:73 +#: library/asyncio-sync.rst:76 msgid "" "This method waits until the lock is *unlocked*, sets it to *locked* and " "returns ``True``." msgstr "" -#: library/asyncio-sync.rst:76 +#: library/asyncio-sync.rst:79 msgid "" "When more than one coroutine is blocked in :meth:`acquire` waiting for the " "lock to be unlocked, only one coroutine eventually proceeds." msgstr "" -#: library/asyncio-sync.rst:80 +#: library/asyncio-sync.rst:83 msgid "" "Acquiring a lock is *fair*: the coroutine that proceeds will be the first " "coroutine that started waiting on the lock." msgstr "" -#: library/asyncio-sync.rst:85 +#: library/asyncio-sync.rst:88 msgid "Release the lock." msgstr "Libère un verrou." -#: library/asyncio-sync.rst:87 +#: library/asyncio-sync.rst:90 msgid "When the lock is *locked*, reset it to *unlocked* and return." msgstr "" -#: library/asyncio-sync.rst:89 +#: library/asyncio-sync.rst:92 msgid "If the lock is *unlocked*, a :exc:`RuntimeError` is raised." msgstr "" -#: library/asyncio-sync.rst:93 +#: library/asyncio-sync.rst:96 msgid "Return ``True`` if the lock is *locked*." msgstr "Donne ``True`` si le verrou est verrouillé." -#: library/asyncio-sync.rst:97 +#: library/asyncio-sync.rst:100 msgid "Event" msgstr "" -#: library/asyncio-sync.rst:101 +#: library/asyncio-sync.rst:104 msgid "An event object. Not thread-safe." msgstr "" -#: library/asyncio-sync.rst:103 +#: library/asyncio-sync.rst:106 msgid "" "An asyncio event can be used to notify multiple asyncio tasks that some " "event has happened." msgstr "" -#: library/asyncio-sync.rst:106 +#: library/asyncio-sync.rst:109 msgid "" "An Event object manages an internal flag that can be set to *true* with the :" "meth:`~Event.set` method and reset to *false* with the :meth:`clear` " @@ -153,57 +156,57 @@ msgid "" "*true*. The flag is set to *false* initially." msgstr "" -#: library/asyncio-sync.rst:117 +#: library/asyncio-sync.rst:122 msgid "Example::" msgstr "Exemple ::" -#: library/asyncio-sync.rst:142 +#: library/asyncio-sync.rst:147 msgid "Wait until the event is set." msgstr "Attend que l'évènement ait une valeur." -#: library/asyncio-sync.rst:144 +#: library/asyncio-sync.rst:149 msgid "" "If the event is set, return ``True`` immediately. Otherwise block until " "another task calls :meth:`~Event.set`." msgstr "" -#: library/asyncio-sync.rst:149 +#: library/asyncio-sync.rst:154 msgid "Set the event." msgstr "" -#: library/asyncio-sync.rst:151 +#: library/asyncio-sync.rst:156 msgid "All tasks waiting for event to be set will be immediately awakened." msgstr "" -#: library/asyncio-sync.rst:156 +#: library/asyncio-sync.rst:161 msgid "Clear (unset) the event." msgstr "" -#: library/asyncio-sync.rst:158 +#: library/asyncio-sync.rst:163 msgid "" "Tasks awaiting on :meth:`~Event.wait` will now block until the :meth:`~Event." "set` method is called again." msgstr "" -#: library/asyncio-sync.rst:163 +#: library/asyncio-sync.rst:168 msgid "Return ``True`` if the event is set." msgstr "Renvoie ``True`` si l'évènement a une valeur." -#: library/asyncio-sync.rst:167 +#: library/asyncio-sync.rst:172 msgid "Condition" msgstr "" -#: library/asyncio-sync.rst:171 +#: library/asyncio-sync.rst:176 msgid "A Condition object. Not thread-safe." msgstr "" -#: library/asyncio-sync.rst:173 +#: library/asyncio-sync.rst:178 msgid "" "An asyncio condition primitive can be used by a task to wait for some event " "to happen and then get exclusive access to a shared resource." msgstr "" -#: library/asyncio-sync.rst:177 +#: library/asyncio-sync.rst:182 msgid "" "In essence, a Condition object combines the functionality of an :class:" "`Event` and a :class:`Lock`. It is possible to have multiple Condition " @@ -212,96 +215,96 @@ msgid "" "that shared resource." msgstr "" -#: library/asyncio-sync.rst:183 +#: library/asyncio-sync.rst:188 msgid "" "The optional *lock* argument must be a :class:`Lock` object or ``None``. In " "the latter case a new Lock object is created automatically." msgstr "" -#: library/asyncio-sync.rst:191 +#: library/asyncio-sync.rst:198 msgid "" "The preferred way to use a Condition is an :keyword:`async with` statement::" msgstr "" -#: library/asyncio-sync.rst:213 +#: library/asyncio-sync.rst:220 msgid "Acquire the underlying lock." msgstr "" -#: library/asyncio-sync.rst:215 +#: library/asyncio-sync.rst:222 msgid "" "This method waits until the underlying lock is *unlocked*, sets it to " "*locked* and returns ``True``." msgstr "" -#: library/asyncio-sync.rst:220 +#: library/asyncio-sync.rst:227 msgid "" "Wake up at most *n* tasks (1 by default) waiting on this condition. The " "method is no-op if no tasks are waiting." msgstr "" -#: library/asyncio-sync.rst:238 +#: library/asyncio-sync.rst:245 msgid "" "The lock must be acquired before this method is called and released shortly " "after. If called with an *unlocked* lock a :exc:`RuntimeError` error is " "raised." msgstr "" -#: library/asyncio-sync.rst:229 +#: library/asyncio-sync.rst:236 msgid "Return ``True`` if the underlying lock is acquired." msgstr "" -#: library/asyncio-sync.rst:233 +#: library/asyncio-sync.rst:240 msgid "Wake up all tasks waiting on this condition." msgstr "" -#: library/asyncio-sync.rst:235 +#: library/asyncio-sync.rst:242 msgid "This method acts like :meth:`notify`, but wakes up all waiting tasks." msgstr "" -#: library/asyncio-sync.rst:244 +#: library/asyncio-sync.rst:251 msgid "Release the underlying lock." msgstr "Libère le verrou sous-jacent." -#: library/asyncio-sync.rst:246 +#: library/asyncio-sync.rst:253 msgid "When invoked on an unlocked lock, a :exc:`RuntimeError` is raised." msgstr "" -#: library/asyncio-sync.rst:251 +#: library/asyncio-sync.rst:258 msgid "Wait until notified." msgstr "Attends d'être notifié." -#: library/asyncio-sync.rst:253 +#: library/asyncio-sync.rst:260 msgid "" "If the calling task has not acquired the lock when this method is called, a :" "exc:`RuntimeError` is raised." msgstr "" -#: library/asyncio-sync.rst:256 +#: library/asyncio-sync.rst:263 msgid "" "This method releases the underlying lock, and then blocks until it is " "awakened by a :meth:`notify` or :meth:`notify_all` call. Once awakened, the " "Condition re-acquires its lock and this method returns ``True``." msgstr "" -#: library/asyncio-sync.rst:263 +#: library/asyncio-sync.rst:270 msgid "Wait until a predicate becomes *true*." msgstr "Attends jusqu'à ce qu'un prédicat devienne vrai." -#: library/asyncio-sync.rst:265 +#: library/asyncio-sync.rst:272 msgid "" "The predicate must be a callable which result will be interpreted as a " "boolean value. The final value is the return value." msgstr "" -#: library/asyncio-sync.rst:271 +#: library/asyncio-sync.rst:278 msgid "Semaphore" msgstr "Sémaphore" -#: library/asyncio-sync.rst:275 +#: library/asyncio-sync.rst:282 msgid "A Semaphore object. Not thread-safe." msgstr "" -#: library/asyncio-sync.rst:277 +#: library/asyncio-sync.rst:284 msgid "" "A semaphore manages an internal counter which is decremented by each :meth:" "`acquire` call and incremented by each :meth:`release` call. The counter can " @@ -309,63 +312,66 @@ msgid "" "waiting until some task calls :meth:`release`." msgstr "" -#: library/asyncio-sync.rst:283 +#: library/asyncio-sync.rst:290 msgid "" "The optional *value* argument gives the initial value for the internal " "counter (``1`` by default). If the given value is less than ``0`` a :exc:" "`ValueError` is raised." msgstr "" -#: library/asyncio-sync.rst:291 +#: library/asyncio-sync.rst:300 msgid "" "The preferred way to use a Semaphore is an :keyword:`async with` statement::" msgstr "" -#: library/asyncio-sync.rst:313 +#: library/asyncio-sync.rst:322 msgid "Acquire a semaphore." msgstr "" -#: library/asyncio-sync.rst:315 +#: library/asyncio-sync.rst:324 msgid "" "If the internal counter is greater than zero, decrement it by one and return " "``True`` immediately. If it is zero, wait until a :meth:`release` is called " "and return ``True``." msgstr "" -#: library/asyncio-sync.rst:321 +#: library/asyncio-sync.rst:330 msgid "Returns ``True`` if semaphore can not be acquired immediately." msgstr "" -#: library/asyncio-sync.rst:325 +#: library/asyncio-sync.rst:334 msgid "" "Release a semaphore, incrementing the internal counter by one. Can wake up a " "task waiting to acquire the semaphore." msgstr "" -#: library/asyncio-sync.rst:328 +#: library/asyncio-sync.rst:337 msgid "" "Unlike :class:`BoundedSemaphore`, :class:`Semaphore` allows making more " "``release()`` calls than ``acquire()`` calls." msgstr "" -#: library/asyncio-sync.rst:333 +#: library/asyncio-sync.rst:342 msgid "BoundedSemaphore" msgstr "BoundedSemaphore" -#: library/asyncio-sync.rst:337 +#: library/asyncio-sync.rst:346 msgid "A bounded semaphore object. Not thread-safe." msgstr "" -#: library/asyncio-sync.rst:339 +#: library/asyncio-sync.rst:348 msgid "" "Bounded Semaphore is a version of :class:`Semaphore` that raises a :exc:" "`ValueError` in :meth:`~Semaphore.release` if it increases the internal " "counter above the initial *value*." msgstr "" -#: library/asyncio-sync.rst:352 +#: library/asyncio-sync.rst:364 msgid "" "Acquiring a lock using ``await lock`` or ``yield from lock`` and/or :keyword:" "`with` statement (``with await lock``, ``with (yield from lock)``) was " "removed. Use ``async with lock`` instead." msgstr "" + +#~ msgid "The *loop* parameter." +#~ msgstr "Le paramètre *loop*." diff --git a/library/asyncio-task.po b/library/asyncio-task.po index 1d50f6fcd..a57814f89 100644 --- a/library/asyncio-task.po +++ b/library/asyncio-task.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-09-22 17:11+0200\n" "Last-Translator: Philippe GALVAN \n" "Language-Team: FRENCH \n" @@ -267,7 +267,7 @@ msgstr "" "fin. Elle doit être utilisée comme point d'entrée principal des programmes " "*asyncio* et ne doit être idéalement appelée qu'une seule fois." -#: library/asyncio-task.rst:360 library/asyncio-task.rst:613 +#: library/asyncio-task.rst:374 library/asyncio-task.rst:665 msgid "Example::" msgstr "Exemple ::" @@ -321,7 +321,7 @@ msgstr "" "antérieures à la 3.7, la fonction de bas-niveau :func:`asyncio." "ensure_future` peut-être utilisée ::" -#: library/asyncio-task.rst:795 +#: library/asyncio-task.rst:857 msgid "Added the ``name`` parameter." msgstr "ajout du paramètre ``name``." @@ -355,23 +355,27 @@ msgid "" "loop for the full duration of the function call." msgstr "" -#: library/asyncio-task.rst:357 library/asyncio-task.rst:478 -#: library/asyncio-task.rst:612 library/asyncio-task.rst:800 -msgid "The *loop* parameter." -msgstr "Le paramètre *loop*." +#: library/asyncio-task.rst:328 library/asyncio-task.rst:428 +#: library/asyncio-task.rst:513 library/asyncio-task.rst:608 +#: library/asyncio-task.rst:664 library/asyncio-task.rst:676 +msgid "" +"The ``loop`` parameter. This function has been implicitly getting the " +"current running loop since 3.7. See :ref:`What's New in 3.10's Removed " +"section ` for more information." +msgstr "" -#: library/asyncio-task.rst:305 +#: library/asyncio-task.rst:308 msgid "" "Example of coroutine displaying the current date every second for 5 seconds::" msgstr "" "Exemple d'une coroutine affichant la date toutes les secondes pendant 5 " "secondes ::" -#: library/asyncio-task.rst:324 +#: library/asyncio-task.rst:335 msgid "Running Tasks Concurrently" msgstr "Exécution de tâches de manière concurrente" -#: library/asyncio-task.rst:328 +#: library/asyncio-task.rst:339 msgid "" "Run :ref:`awaitable objects ` in the *aws* sequence " "*concurrently*." @@ -379,7 +383,7 @@ msgstr "" "Exécute les objets :ref:`awaitable ` de la séquence " "*aws*, *de manière concurrente*." -#: library/asyncio-task.rst:331 +#: library/asyncio-task.rst:342 msgid "" "If any awaitable in *aws* is a coroutine, it is automatically scheduled as a " "Task." @@ -387,7 +391,7 @@ msgstr "" "Si un *attendable* de *aws* est une coroutine, celui-ci est automatiquement " "planifié comme une tâche *Task*." -#: library/asyncio-task.rst:334 +#: library/asyncio-task.rst:345 msgid "" "If all awaitables are completed successfully, the result is an aggregate " "list of returned values. The order of result values corresponds to the " @@ -397,7 +401,7 @@ msgstr "" "des valeurs renvoyées. L'ordre de cette liste correspond à l'ordre des " "*awaitables* dans *aws*." -#: library/asyncio-task.rst:338 +#: library/asyncio-task.rst:349 msgid "" "If *return_exceptions* is ``False`` (default), the first raised exception is " "immediately propagated to the task that awaits on ``gather()``. Other " @@ -409,7 +413,7 @@ msgstr "" "``gather()``. Les autres *attendables* dans la séquence *aws* **ne sont pas " "annulés** et poursuivent leur exécution." -#: library/asyncio-task.rst:343 +#: library/asyncio-task.rst:354 msgid "" "If *return_exceptions* is ``True``, exceptions are treated the same as " "successful results, and aggregated in the result list." @@ -418,7 +422,7 @@ msgstr "" "même manière que les exécutions normales, et incluses dans la liste des " "résultats." -#: library/asyncio-task.rst:346 +#: library/asyncio-task.rst:357 msgid "" "If ``gather()`` is *cancelled*, all submitted awaitables (that have not " "completed yet) are also *cancelled*." @@ -426,7 +430,7 @@ msgstr "" "Si ``gather()`` est *annulé*, tous les *awaitables* en cours (ceux qui n'ont " "pas encore fini de s'exécuter) sont également *annulés*." -#: library/asyncio-task.rst:349 +#: library/asyncio-task.rst:360 msgid "" "If any Task or Future from the *aws* sequence is *cancelled*, it is treated " "as if it raised :exc:`CancelledError` -- the ``gather()`` call is **not** " @@ -439,7 +443,7 @@ msgstr "" "l'annulation d'une tâche ou d'un futur entraîne l'annulation des autres " "tâches ou futurs." -#: library/asyncio-task.rst:398 +#: library/asyncio-task.rst:412 msgid "" "If *return_exceptions* is False, cancelling gather() after it has been " "marked done won't cancel any submitted awaitables. For instance, gather can " @@ -448,7 +452,7 @@ msgid "" "the awaitables) from gather won't cancel any other awaitables." msgstr "" -#: library/asyncio-task.rst:405 +#: library/asyncio-task.rst:419 msgid "" "If the *gather* itself is cancelled, the cancellation is propagated " "regardless of *return_exceptions*." @@ -456,11 +460,18 @@ msgstr "" "Si *gather* est lui-même annulé, l'annulation est propagée indépendamment de " "*return_exceptions*." -#: library/asyncio-task.rst:411 +#: library/asyncio-task.rst:429 +msgid "" +"Deprecation warning is emitted if no positional arguments are provided or " +"not all positional arguments are Future-like objects and there is no running " +"event loop." +msgstr "" + +#: library/asyncio-task.rst:436 msgid "Shielding From Cancellation" msgstr "Protection contre l'annulation" -#: library/asyncio-task.rst:415 +#: library/asyncio-task.rst:440 msgid "" "Protect an :ref:`awaitable object ` from being :meth:" "`cancelled `." @@ -468,21 +479,21 @@ msgstr "" "Empêche qu'un objet :ref:`awaitable ` puisse être :meth:" "`annulé `." -#: library/asyncio-task.rst:458 +#: library/asyncio-task.rst:490 msgid "If *aw* is a coroutine it is automatically scheduled as a Task." msgstr "" "Si *aw* est une coroutine, elle est planifiée automatiquement comme une " "tâche." -#: library/asyncio-task.rst:420 +#: library/asyncio-task.rst:445 msgid "The statement::" msgstr "L'instruction ::" -#: library/asyncio-task.rst:424 +#: library/asyncio-task.rst:449 msgid "is equivalent to::" msgstr "est équivalente à ::" -#: library/asyncio-task.rst:428 +#: library/asyncio-task.rst:453 msgid "" "*except* that if the coroutine containing it is cancelled, the Task running " "in ``something()`` is not cancelled. From the point of view of " @@ -495,7 +506,7 @@ msgstr "" "``something()``, il n'y a pas eu d'annulation. Cependant, son appelant est " "bien annulé, donc l'expression *await* lève bien une :exc:`CancelledError`." -#: library/asyncio-task.rst:434 +#: library/asyncio-task.rst:459 msgid "" "If ``something()`` is cancelled by other means (i.e. from within itself) " "that would also cancel ``shield()``." @@ -503,7 +514,7 @@ msgstr "" "Si ``something()`` est annulée d'une autre façon (c.-à-d. depuis elle-même) " "ceci annule également ``shield()``." -#: library/asyncio-task.rst:437 +#: library/asyncio-task.rst:462 msgid "" "If it is desired to completely ignore cancellation (not recommended) the " "``shield()`` function should be combined with a try/except clause, as " @@ -513,11 +524,17 @@ msgstr "" "``shield()`` peut être combinée à une clause *try* / *except*, comme dans le " "code ci-dessous ::" -#: library/asyncio-task.rst:451 +#: library/asyncio-task.rst:477 +msgid "" +"Deprecation warning is emitted if *aw* is not Future-like object and there " +"is no running event loop." +msgstr "" + +#: library/asyncio-task.rst:483 msgid "Timeouts" msgstr "Délais d'attente" -#: library/asyncio-task.rst:455 +#: library/asyncio-task.rst:487 msgid "" "Wait for the *aw* :ref:`awaitable ` to complete with a " "timeout." @@ -525,7 +542,7 @@ msgstr "" "Attend la fin de l':ref:`awaitable ` *aw* avec délai " "d'attente." -#: library/asyncio-task.rst:460 +#: library/asyncio-task.rst:492 msgid "" "*timeout* can either be ``None`` or a float or int number of seconds to wait " "for. If *timeout* is ``None``, block until the future completes." @@ -534,7 +551,7 @@ msgstr "" "décimal) d'attente. Si *timeout* vaut ``None``, la fonction s'interrompt " "jusqu'à ce que le futur s'achève." -#: library/asyncio-task.rst:464 +#: library/asyncio-task.rst:496 msgid "" "If a timeout occurs, it cancels the task and raises :exc:`asyncio." "TimeoutError`." @@ -542,7 +559,7 @@ msgstr "" "Si le délai d'attente maximal est dépassé, la tâche est annulée et " "l'exception :exc:`asyncio.TimeoutError` est levée." -#: library/asyncio-task.rst:467 +#: library/asyncio-task.rst:499 msgid "" "To avoid the task :meth:`cancellation `, wrap it in :func:" "`shield`." @@ -550,7 +567,7 @@ msgstr "" "Pour empêcher :meth:`l'annulation ` de la tâche, il est " "nécessaire de l'encapsuler dans une fonction :func:`shield`." -#: library/asyncio-task.rst:470 +#: library/asyncio-task.rst:502 #, fuzzy msgid "" "The function will wait until the future is actually cancelled, so the total " @@ -560,11 +577,11 @@ msgstr "" "Cette fonction attend que le futur soit réellement annulé, donc le temps " "d'attente total peut être supérieur à *timeout*." -#: library/asyncio-task.rst:474 +#: library/asyncio-task.rst:506 msgid "If the wait is cancelled, the future *aw* is also cancelled." msgstr "Si l'attente est annulée, le futur *aw* est également annulé." -#: library/asyncio-task.rst:501 +#: library/asyncio-task.rst:536 msgid "" "When *aw* is cancelled due to a timeout, ``wait_for`` waits for *aw* to be " "cancelled. Previously, it raised :exc:`asyncio.TimeoutError` immediately." @@ -573,11 +590,11 @@ msgstr "" "``wait_for`` attend que *aw* soit annulée. Auparavant, l'exception :exc:" "`asyncio.TimeoutError` était immédiatement levée." -#: library/asyncio-task.rst:508 +#: library/asyncio-task.rst:549 msgid "Waiting Primitives" msgstr "Primitives d'attente" -#: library/asyncio-task.rst:513 +#: library/asyncio-task.rst:553 #, fuzzy msgid "" "Run :ref:`awaitable objects ` in the *aws* iterable " @@ -587,19 +604,19 @@ msgstr "" "*aws* de manière concurrente, et s'interrompt jusqu'à ce que la condition " "décrite dans *return_when* soit vraie." -#: library/asyncio-task.rst:517 +#: library/asyncio-task.rst:557 msgid "The *aws* iterable must not be empty." msgstr "" -#: library/asyncio-task.rst:519 +#: library/asyncio-task.rst:559 msgid "Returns two sets of Tasks/Futures: ``(done, pending)``." msgstr "Renvoie deux ensembles de *Tasks* / *Futures* : ``(done, pending)``." -#: library/asyncio-task.rst:521 +#: library/asyncio-task.rst:561 msgid "Usage::" msgstr "Utilisation ::" -#: library/asyncio-task.rst:525 +#: library/asyncio-task.rst:565 msgid "" "*timeout* (a float or int), if specified, can be used to control the maximum " "number of seconds to wait before returning." @@ -607,7 +624,7 @@ msgstr "" "*timeout* (entier ou décimal), si précisé, peut-être utilisé pour contrôler " "le nombre maximal de secondes d'attente avant de se terminer." -#: library/asyncio-task.rst:528 +#: library/asyncio-task.rst:568 msgid "" "Note that this function does not raise :exc:`asyncio.TimeoutError`. Futures " "or Tasks that aren't done when the timeout occurs are simply returned in the " @@ -617,7 +634,7 @@ msgstr "" "tâches qui ne sont pas finis quand le délai d'attente maximal est dépassé " "sont tout simplement renvoyés dans le second ensemble." -#: library/asyncio-task.rst:532 +#: library/asyncio-task.rst:572 msgid "" "*return_when* indicates when this function should return. It must be one of " "the following constants:" @@ -625,28 +642,28 @@ msgstr "" "*return_when* indique quand la fonction doit se terminer. Il peut prendre " "les valeurs suivantes :" -#: library/asyncio-task.rst:538 +#: library/asyncio-task.rst:578 msgid "Constant" msgstr "Constante" -#: library/asyncio-task.rst:538 +#: library/asyncio-task.rst:578 msgid "Description" msgstr "Description" -#: library/asyncio-task.rst:540 +#: library/asyncio-task.rst:580 msgid ":const:`FIRST_COMPLETED`" msgstr ":const:`FIRST_COMPLETED`" -#: library/asyncio-task.rst:540 +#: library/asyncio-task.rst:580 msgid "The function will return when any future finishes or is cancelled." msgstr "" "La fonction se termine lorsque n'importe quel futur se termine ou est annulé." -#: library/asyncio-task.rst:543 +#: library/asyncio-task.rst:583 msgid ":const:`FIRST_EXCEPTION`" msgstr ":const:`FIRST_EXCEPTION`" -#: library/asyncio-task.rst:543 +#: library/asyncio-task.rst:583 msgid "" "The function will return when any future finishes by raising an exception. " "If no future raises an exception then it is equivalent to :const:" @@ -656,16 +673,16 @@ msgstr "" "exception. Si aucun *futur* ne lève d'exception, équivaut à :const:" "`ALL_COMPLETED`." -#: library/asyncio-task.rst:549 +#: library/asyncio-task.rst:589 msgid ":const:`ALL_COMPLETED`" msgstr ":const:`ALL_COMPLETED`" -#: library/asyncio-task.rst:549 +#: library/asyncio-task.rst:589 msgid "The function will return when all futures finish or are cancelled." msgstr "" "La fonction se termine lorsque les *futurs* sont tous finis ou annulés." -#: library/asyncio-task.rst:553 +#: library/asyncio-task.rst:593 msgid "" "Unlike :func:`~asyncio.wait_for`, ``wait()`` does not cancel the futures " "when a timeout occurs." @@ -673,7 +690,7 @@ msgstr "" "À la différence de :func:`~asyncio.wait_for`, ``wait()`` n'annule pas les " "futurs quand le délai d'attente est dépassé." -#: library/asyncio-task.rst:558 +#: library/asyncio-task.rst:598 msgid "" "If any awaitable in *aws* is a coroutine, it is automatically scheduled as a " "Task. Passing coroutines objects to ``wait()`` directly is deprecated as it " @@ -684,7 +701,7 @@ msgstr "" "``wait()`` est obsolète, car ceci conduisait :ref:`à un comportement portant " "à confusion `." -#: library/asyncio-task.rst:570 +#: library/asyncio-task.rst:612 msgid "" "``wait()`` schedules coroutines as Tasks automatically and later returns " "those implicitly created Task objects in ``(done, pending)`` sets. " @@ -694,15 +711,15 @@ msgstr "" "renvoie les objets *Task* ainsi créés dans les ensembles ``(done, " "pending)``. Le code suivant ne fonctionne donc pas comme voulu ::" -#: library/asyncio-task.rst:583 +#: library/asyncio-task.rst:625 msgid "Here is how the above snippet can be fixed::" msgstr "Voici comment corriger le morceau de code ci-dessus ::" -#: library/asyncio-task.rst:596 +#: library/asyncio-task.rst:645 msgid "Passing coroutine objects to ``wait()`` directly is deprecated." msgstr "Passer directement des objets coroutines à ``wait()`` est obsolète." -#: library/asyncio-task.rst:602 +#: library/asyncio-task.rst:651 #, fuzzy msgid "" "Run :ref:`awaitable objects ` in the *aws* iterable " @@ -715,7 +732,7 @@ msgstr "" "`Future`. Chaque objet *futur* renvoyé représente le résultat le plus récent " "de l'ensemble des *awaitables* restants." -#: library/asyncio-task.rst:607 +#: library/asyncio-task.rst:656 msgid "" "Raises :exc:`asyncio.TimeoutError` if the timeout occurs before all Futures " "are done." @@ -723,15 +740,21 @@ msgstr "" "Lève une exception :exc:`asyncio.TimeoutError` si le délai d'attente est " "dépassé avant que tous les futurs ne soient achevés." -#: library/asyncio-task.rst:621 +#: library/asyncio-task.rst:677 +msgid "" +"Deprecation warning is emitted if not all awaitable objects in the *aws* " +"iterable are Future-like objects and there is no running event loop." +msgstr "" + +#: library/asyncio-task.rst:683 msgid "Running in Threads" msgstr "" -#: library/asyncio-task.rst:625 +#: library/asyncio-task.rst:687 msgid "Asynchronously run function *func* in a separate thread." msgstr "" -#: library/asyncio-task.rst:627 +#: library/asyncio-task.rst:689 msgid "" "Any \\*args and \\*\\*kwargs supplied for this function are directly passed " "to *func*. Also, the current :class:`contextvars.Context` is propagated, " @@ -739,19 +762,19 @@ msgid "" "separate thread." msgstr "" -#: library/asyncio-task.rst:632 +#: library/asyncio-task.rst:694 msgid "" "Return a coroutine that can be awaited to get the eventual result of *func*." msgstr "" -#: library/asyncio-task.rst:634 +#: library/asyncio-task.rst:696 msgid "" "This coroutine function is primarily intended to be used for executing IO-" "bound functions/methods that would otherwise block the event loop if they " "were ran in the main thread. For example::" msgstr "" -#: library/asyncio-task.rst:664 +#: library/asyncio-task.rst:726 msgid "" "Directly calling `blocking_io()` in any coroutine would block the event loop " "for its duration, resulting in an additional 1 second of run time. Instead, " @@ -759,7 +782,7 @@ msgid "" "blocking the event loop." msgstr "" -#: library/asyncio-task.rst:671 +#: library/asyncio-task.rst:733 msgid "" "Due to the :term:`GIL`, `asyncio.to_thread()` can typically only be used to " "make IO-bound functions non-blocking. However, for extension modules that " @@ -767,18 +790,18 @@ msgid "" "`asyncio.to_thread()` can also be used for CPU-bound functions." msgstr "" -#: library/asyncio-task.rst:680 +#: library/asyncio-task.rst:742 msgid "Scheduling From Other Threads" msgstr "Planification depuis d'autres fils d'exécution" -#: library/asyncio-task.rst:684 +#: library/asyncio-task.rst:746 msgid "Submit a coroutine to the given event loop. Thread-safe." msgstr "" "Enregistre une coroutine dans la boucle d'exécution actuelle. Cette " "opération est compatible avec les programmes à multiples fils d'exécution " "(*thread-safe*)." -#: library/asyncio-task.rst:686 +#: library/asyncio-task.rst:748 msgid "" "Return a :class:`concurrent.futures.Future` to wait for the result from " "another OS thread." @@ -786,7 +809,7 @@ msgstr "" "Renvoie un :class:`concurrent.futures.Future` pour attendre le résultat d'un " "autre fil d'exécution du système d'exploitation." -#: library/asyncio-task.rst:689 +#: library/asyncio-task.rst:751 msgid "" "This function is meant to be called from a different OS thread than the one " "where the event loop is running. Example::" @@ -794,7 +817,7 @@ msgstr "" "Cette fonction est faite pour être appelée par un fil d'exécution distinct " "de celui dans laquelle la boucle d'événement s'exécute. Exemple ::" -#: library/asyncio-task.rst:701 +#: library/asyncio-task.rst:763 msgid "" "If an exception is raised in the coroutine, the returned Future will be " "notified. It can also be used to cancel the task in the event loop::" @@ -803,7 +826,7 @@ msgstr "" "averti. Elle peut également être utilisée pour annuler la tâche de la boucle " "d'événement ::" -#: library/asyncio-task.rst:715 +#: library/asyncio-task.rst:777 msgid "" "See the :ref:`concurrency and multithreading ` " "section of the documentation." @@ -811,7 +834,7 @@ msgstr "" "Voir la section :ref:`exécution concurrente et multi-fils d'exécution " "` de la documentation." -#: library/asyncio-task.rst:718 +#: library/asyncio-task.rst:780 msgid "" "Unlike other asyncio functions this function requires the *loop* argument to " "be passed explicitly." @@ -819,11 +842,11 @@ msgstr "" "À la différence des autres fonctions d'*asyncio*, cette fonction requiert " "que *loop* soit passé de manière explicite." -#: library/asyncio-task.rst:725 +#: library/asyncio-task.rst:787 msgid "Introspection" msgstr "Introspection" -#: library/asyncio-task.rst:730 +#: library/asyncio-task.rst:792 msgid "" "Return the currently running :class:`Task` instance, or ``None`` if no task " "is running." @@ -831,7 +854,7 @@ msgstr "" "Renvoie l'instance de la :class:`Task` en cours d'exécution, ou ``None`` " "s'il n'y a pas de tâche en cours." -#: library/asyncio-task.rst:733 +#: library/asyncio-task.rst:795 msgid "" "If *loop* is ``None`` :func:`get_running_loop` is used to get the current " "loop." @@ -839,13 +862,13 @@ msgstr "" "Si *loop* vaut ``None``, :func:`get_running_loop` est appelée pour récupérer " "la boucle en cours d'exécution." -#: library/asyncio-task.rst:741 +#: library/asyncio-task.rst:803 msgid "Return a set of not yet finished :class:`Task` objects run by the loop." msgstr "" "Renvoie l'ensemble des :class:`Task` non terminés en cours d'exécution dans " "la boucle." -#: library/asyncio-task.rst:744 +#: library/asyncio-task.rst:806 msgid "" "If *loop* is ``None``, :func:`get_running_loop` is used for getting current " "loop." @@ -853,11 +876,11 @@ msgstr "" "Si *loop* vaut ``None``, :func:`get_running_loop` est appelée pour récupérer " "la boucle en cours d'exécution." -#: library/asyncio-task.rst:751 +#: library/asyncio-task.rst:813 msgid "Task Object" msgstr "Objets *Task*" -#: library/asyncio-task.rst:755 +#: library/asyncio-task.rst:817 msgid "" "A :class:`Future-like ` object that runs a Python :ref:`coroutine " "`. Not thread-safe." @@ -866,7 +889,7 @@ msgstr "" "`coroutine ` Python. Cet objet n'est pas utilisable dans des " "programmes à fils d'exécution multiples." -#: library/asyncio-task.rst:758 +#: library/asyncio-task.rst:820 msgid "" "Tasks are used to run coroutines in event loops. If a coroutine awaits on a " "Future, the Task suspends the execution of the coroutine and waits for the " @@ -878,7 +901,7 @@ msgstr "" "attend la fin de ce *futur*. Quand celui-ci est terminé, l'exécution de la " "coroutine encapsulée reprend." -#: library/asyncio-task.rst:764 +#: library/asyncio-task.rst:826 msgid "" "Event loops use cooperative scheduling: an event loop runs one Task at a " "time. While a Task awaits for the completion of a Future, the event loop " @@ -889,7 +912,7 @@ msgstr "" "futur, la boucle d'événement exécute d'autres tâches, des fonctions de " "rappel, ou effectue des opérations d'entrées-sorties." -#: library/asyncio-task.rst:769 +#: library/asyncio-task.rst:831 msgid "" "Use the high-level :func:`asyncio.create_task` function to create Tasks, or " "the low-level :meth:`loop.create_task` or :func:`ensure_future` functions. " @@ -900,7 +923,7 @@ msgstr "" "créer des tâches. Il est déconseillé d'instancier manuellement des objets " "*Task*." -#: library/asyncio-task.rst:774 +#: library/asyncio-task.rst:836 msgid "" "To cancel a running Task use the :meth:`cancel` method. Calling it will " "cause the Task to throw a :exc:`CancelledError` exception into the wrapped " @@ -912,7 +935,7 @@ msgstr "" "`CancelledError` dans la coroutine encapsulée. Si la coroutine attendait un " "*futur* au moment de l'annulation, celui-ci est annulé." -#: library/asyncio-task.rst:779 +#: library/asyncio-task.rst:841 msgid "" ":meth:`cancelled` can be used to check if the Task was cancelled. The method " "returns ``True`` if the wrapped coroutine did not suppress the :exc:" @@ -922,7 +945,7 @@ msgstr "" "Elle renvoie ``True`` si la coroutine encapsulée n'a pas ignoré l'exception :" "exc:`CancelledError` et a bien été annulée." -#: library/asyncio-task.rst:784 +#: library/asyncio-task.rst:846 msgid "" ":class:`asyncio.Task` inherits from :class:`Future` all of its APIs except :" "meth:`Future.set_result` and :meth:`Future.set_exception`." @@ -930,7 +953,7 @@ msgstr "" ":class:`asyncio.Task` hérite de :class:`Future`, de toute son API, à " "l'exception de :meth:`Future.set_result` et de :meth:`Future.set_exception`." -#: library/asyncio-task.rst:788 +#: library/asyncio-task.rst:850 msgid "" "Tasks support the :mod:`contextvars` module. When a Task is created it " "copies the current context and later runs its coroutine in the copied " @@ -940,15 +963,25 @@ msgstr "" "tâche effectue une copie du contexte actuel et exécutera ses coroutines dans " "cette copie." -#: library/asyncio-task.rst:792 +#: library/asyncio-task.rst:854 msgid "Added support for the :mod:`contextvars` module." msgstr "Ajout du support du module :mod:`contextvars`." -#: library/asyncio-task.rst:803 +#: library/asyncio-task.rst:862 +msgid "The *loop* parameter." +msgstr "Le paramètre *loop*." + +#: library/asyncio-task.rst:863 +msgid "" +"Deprecation warning is emitted if *loop* is not specified and there is no " +"running event loop." +msgstr "" + +#: library/asyncio-task.rst:869 msgid "Request the Task to be cancelled." msgstr "Demande l'annulation d'une tâche." -#: library/asyncio-task.rst:805 +#: library/asyncio-task.rst:871 msgid "" "This arranges for a :exc:`CancelledError` exception to be thrown into the " "wrapped coroutine on the next cycle of the event loop." @@ -957,7 +990,7 @@ msgstr "" "encapsulée. L'exception sera levée au prochain cycle de la boucle " "d'exécution." -#: library/asyncio-task.rst:808 +#: library/asyncio-task.rst:874 msgid "" "The coroutine then has a chance to clean up or even deny the request by " "suppressing the exception with a :keyword:`try` ... ... ``except " @@ -973,11 +1006,11 @@ msgstr "" "annulée, bien qu'ignorer totalement une annulation ne soit ni une pratique " "courante, ni encouragé." -#: library/asyncio-task.rst:816 +#: library/asyncio-task.rst:882 msgid "Added the ``msg`` parameter." msgstr "" -#: library/asyncio-task.rst:821 +#: library/asyncio-task.rst:887 msgid "" "The following example illustrates how coroutines can intercept the " "cancellation request::" @@ -985,11 +1018,11 @@ msgstr "" "L'exemple ci-dessous illustre comment une coroutine peut intercepter une " "requête d'annulation ::" -#: library/asyncio-task.rst:860 +#: library/asyncio-task.rst:926 msgid "Return ``True`` if the Task is *cancelled*." msgstr "Renvoie ``True`` si la tâche est *annulée*." -#: library/asyncio-task.rst:862 +#: library/asyncio-task.rst:928 msgid "" "The Task is *cancelled* when the cancellation was requested with :meth:" "`cancel` and the wrapped coroutine propagated the :exc:`CancelledError` " @@ -999,11 +1032,11 @@ msgstr "" "et la coroutine encapsulée a propagé l'exception :exc:`CancelledError` qui a " "été levée en son sein." -#: library/asyncio-task.rst:868 +#: library/asyncio-task.rst:934 msgid "Return ``True`` if the Task is *done*." msgstr "Renvoie ``True`` si la tâche est *achevée*." -#: library/asyncio-task.rst:870 +#: library/asyncio-task.rst:936 msgid "" "A Task is *done* when the wrapped coroutine either returned a value, raised " "an exception, or the Task was cancelled." @@ -1011,11 +1044,11 @@ msgstr "" "Une tâche est dite *achevée* quand la coroutine encapsulée a soit renvoyé " "une valeur, soit levé une exception, ou que la tâche a été annulée." -#: library/asyncio-task.rst:875 +#: library/asyncio-task.rst:941 msgid "Return the result of the Task." msgstr "Renvoie le résultat de la tâche." -#: library/asyncio-task.rst:877 +#: library/asyncio-task.rst:943 msgid "" "If the Task is *done*, the result of the wrapped coroutine is returned (or " "if the coroutine raised an exception, that exception is re-raised.)" @@ -1024,7 +1057,7 @@ msgstr "" "renvoyé (sinon, dans le cas où la coroutine a levé une exception, cette " "exception est de nouveau levée)." -#: library/asyncio-task.rst:895 +#: library/asyncio-task.rst:961 msgid "" "If the Task has been *cancelled*, this method raises a :exc:`CancelledError` " "exception." @@ -1032,7 +1065,7 @@ msgstr "" "Si la tâche a été *annulée*, cette méthode lève une exception :exc:" "`CancelledError`." -#: library/asyncio-task.rst:884 +#: library/asyncio-task.rst:950 msgid "" "If the Task's result isn't yet available, this method raises a :exc:" "`InvalidStateError` exception." @@ -1040,11 +1073,11 @@ msgstr "" "Si le résultat de la tâche n'est pas encore disponible, cette méthode lève " "une exception :exc:`InvalidStateError`." -#: library/asyncio-task.rst:889 +#: library/asyncio-task.rst:955 msgid "Return the exception of the Task." msgstr "Renvoie l'exception de la tâche." -#: library/asyncio-task.rst:891 +#: library/asyncio-task.rst:957 msgid "" "If the wrapped coroutine raised an exception that exception is returned. If " "the wrapped coroutine returned normally this method returns ``None``." @@ -1052,7 +1085,7 @@ msgstr "" "Si la coroutine encapsulée lève une exception, cette exception est renvoyée. " "Si la coroutine s'est exécutée normalement, cette méthode renvoie ``None``." -#: library/asyncio-task.rst:898 +#: library/asyncio-task.rst:964 msgid "" "If the Task isn't *done* yet, this method raises an :exc:`InvalidStateError` " "exception." @@ -1060,30 +1093,30 @@ msgstr "" "Si la tâche n'est pas encore *achevée*, cette méthode lève une exception :" "exc:`InvalidStateError`." -#: library/asyncio-task.rst:903 +#: library/asyncio-task.rst:969 msgid "Add a callback to be run when the Task is *done*." msgstr "" "Ajoute une fonction de rappel qui sera exécutée quand la tâche sera " "*achevée*." -#: library/asyncio-task.rst:914 +#: library/asyncio-task.rst:980 msgid "This method should only be used in low-level callback-based code." msgstr "" "Cette méthode ne doit être utilisée que dans du code basé sur les fonctions " "de rappel de bas-niveau." -#: library/asyncio-task.rst:907 +#: library/asyncio-task.rst:973 msgid "" "See the documentation of :meth:`Future.add_done_callback` for more details." msgstr "" "Se référer à la documentation de :meth:`Future.add_done_callback` pour plus " "de détails." -#: library/asyncio-task.rst:912 +#: library/asyncio-task.rst:978 msgid "Remove *callback* from the callbacks list." msgstr "Retire *callback* de la liste de fonctions de rappel." -#: library/asyncio-task.rst:916 +#: library/asyncio-task.rst:982 msgid "" "See the documentation of :meth:`Future.remove_done_callback` for more " "details." @@ -1091,11 +1124,11 @@ msgstr "" "Se référer à la documentation de :meth:`Future.remove_done_callback` pour " "plus de détails." -#: library/asyncio-task.rst:921 +#: library/asyncio-task.rst:987 msgid "Return the list of stack frames for this Task." msgstr "Renvoie une liste représentant la pile d'appels de la tâche." -#: library/asyncio-task.rst:923 +#: library/asyncio-task.rst:989 msgid "" "If the wrapped coroutine is not done, this returns the stack where it is " "suspended. If the coroutine has completed successfully or was cancelled, " @@ -1108,15 +1141,15 @@ msgstr "" "renvoie une liste vide. Si la coroutine a été terminée par une exception, " "ceci renvoie la pile d'erreurs." -#: library/asyncio-task.rst:929 +#: library/asyncio-task.rst:995 msgid "The frames are always ordered from oldest to newest." msgstr "La pile est toujours affichée de l'appelant à l'appelé." -#: library/asyncio-task.rst:931 +#: library/asyncio-task.rst:997 msgid "Only one stack frame is returned for a suspended coroutine." msgstr "Une seule ligne est renvoyée si la coroutine est suspendue." -#: library/asyncio-task.rst:933 +#: library/asyncio-task.rst:999 msgid "" "The optional *limit* argument sets the maximum number of frames to return; " "by default all available frames are returned. The ordering of the returned " @@ -1130,11 +1163,11 @@ msgstr "" "renvoyés, si la pile est une pile d'erreurs, ce sont les appels les plus " "anciens qui le sont (dans un souci de cohérence avec le module *traceback*)." -#: library/asyncio-task.rst:942 +#: library/asyncio-task.rst:1008 msgid "Print the stack or traceback for this Task." msgstr "Affiche la pile d'appels ou d'erreurs de la tâche." -#: library/asyncio-task.rst:944 +#: library/asyncio-task.rst:1010 msgid "" "This produces output similar to that of the traceback module for the frames " "retrieved by :meth:`get_stack`." @@ -1142,11 +1175,11 @@ msgstr "" "Le format de sortie des appels produits par :meth:`get_stack` est similaire " "à celui du module *traceback*." -#: library/asyncio-task.rst:947 +#: library/asyncio-task.rst:1013 msgid "The *limit* argument is passed to :meth:`get_stack` directly." msgstr "Le paramètre *limit* est directement passé à :meth:`get_stack`." -#: library/asyncio-task.rst:949 +#: library/asyncio-task.rst:1015 msgid "" "The *file* argument is an I/O stream to which the output is written; by " "default output is written to :data:`sys.stderr`." @@ -1154,15 +1187,15 @@ msgstr "" "Le paramètre *file* est un flux d'entrées-sorties sur lequel le résultat est " "écrit ; par défaut, :data:`sys.stderr`." -#: library/asyncio-task.rst:954 +#: library/asyncio-task.rst:1020 msgid "Return the coroutine object wrapped by the :class:`Task`." msgstr "Renvoie l’objet *coroutine* encapsulé par la :class:`Task`." -#: library/asyncio-task.rst:960 +#: library/asyncio-task.rst:1026 msgid "Return the name of the Task." msgstr "Renvoie le nom de la tâche." -#: library/asyncio-task.rst:962 +#: library/asyncio-task.rst:1028 msgid "" "If no name has been explicitly assigned to the Task, the default asyncio " "Task implementation generates a default name during instantiation." @@ -1171,18 +1204,18 @@ msgstr "" "défaut d’une *Task* *asyncio* génère un nom par défaut durant " "l’instanciation." -#: library/asyncio-task.rst:970 +#: library/asyncio-task.rst:1036 msgid "Set the name of the Task." msgstr "Définit le nom de la tâche." -#: library/asyncio-task.rst:972 +#: library/asyncio-task.rst:1038 msgid "" "The *value* argument can be any object, which is then converted to a string." msgstr "" "L’argument *value* peut être n’importe quel objet qui sera ensuite converti " "en chaine de caractères." -#: library/asyncio-task.rst:975 +#: library/asyncio-task.rst:1041 msgid "" "In the default Task implementation, the name will be visible in the :func:" "`repr` output of a task object." @@ -1190,11 +1223,11 @@ msgstr "" "Dans l’implémentation par défaut de *Task*, le nom sera visible dans le " "résultat de :func:`repr` d’un objet *Task*." -#: library/asyncio-task.rst:984 +#: library/asyncio-task.rst:1050 msgid "Generator-based Coroutines" msgstr "Coroutines basées sur des générateurs" -#: library/asyncio-task.rst:988 +#: library/asyncio-task.rst:1054 msgid "" "Support for generator-based coroutines is **deprecated** and is scheduled " "for removal in Python 3.10." @@ -1202,7 +1235,7 @@ msgstr "" "Les coroutines basées sur des générateurs sont **obsolètes** et il est prévu " "de les supprimer en Python 3.10." -#: library/asyncio-task.rst:991 +#: library/asyncio-task.rst:1057 msgid "" "Generator-based coroutines predate async/await syntax. They are Python " "generators that use ``yield from`` expressions to await on Futures and other " @@ -1212,7 +1245,7 @@ msgstr "" "*async* / *await*. Il existe des générateurs *Python* qui utilisent les " "expressions ``yield from`` pour attendre des *futurs* et autres coroutines." -#: library/asyncio-task.rst:995 +#: library/asyncio-task.rst:1061 msgid "" "Generator-based coroutines should be decorated with :func:`@asyncio." "coroutine `, although this is not enforced." @@ -1221,11 +1254,11 @@ msgstr "" "`@asyncio.coroutine `, même si ce n'est pas vérifié par " "l'interpréteur." -#: library/asyncio-task.rst:1002 +#: library/asyncio-task.rst:1068 msgid "Decorator to mark generator-based coroutines." msgstr "Décorateur pour coroutines basées sur des générateurs." -#: library/asyncio-task.rst:1004 +#: library/asyncio-task.rst:1070 msgid "" "This decorator enables legacy generator-based coroutines to be compatible " "with async/await code::" @@ -1233,22 +1266,22 @@ msgstr "" "Ce décorateur rend compatibles les coroutines basées sur des générateurs " "avec le code *async* / *await* ::" -#: library/asyncio-task.rst:1014 +#: library/asyncio-task.rst:1080 msgid "This decorator should not be used for :keyword:`async def` coroutines." msgstr "" "Ce décorateur ne doit pas être utilisé avec des coroutines :keyword:`async " "def`." # pas de majuscule car suit un deux-points -#: library/asyncio-task.rst:1019 +#: library/asyncio-task.rst:1085 msgid "Use :keyword:`async def` instead." msgstr "utilisez :keyword:`async def` à la place." -#: library/asyncio-task.rst:1023 +#: library/asyncio-task.rst:1089 msgid "Return ``True`` if *obj* is a :ref:`coroutine object `." msgstr "Renvoie ``True`` si *obj* est un :ref:`objet coroutine `." -#: library/asyncio-task.rst:1025 +#: library/asyncio-task.rst:1091 msgid "" "This method is different from :func:`inspect.iscoroutine` because it returns " "``True`` for generator-based coroutines." @@ -1256,12 +1289,12 @@ msgstr "" "Cette méthode est différente de :func:`inspect.iscoroutine` car elle renvoie " "``True`` pour des coroutines basées sur des générateurs." -#: library/asyncio-task.rst:1030 +#: library/asyncio-task.rst:1096 msgid "Return ``True`` if *func* is a :ref:`coroutine function `." msgstr "" "Renvoie ``True`` si *func* est une :ref:`fonction coroutine `." -#: library/asyncio-task.rst:1033 +#: library/asyncio-task.rst:1099 msgid "" "This method is different from :func:`inspect.iscoroutinefunction` because it " "returns ``True`` for generator-based coroutine functions decorated with :" diff --git a/library/atexit.po b/library/atexit.po index 6decdc308..97b580848 100644 --- a/library/atexit.po +++ b/library/atexit.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-10-15 09:15+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -83,10 +83,11 @@ msgstr "" "nettoyés en dernier." #: library/atexit.rst:40 +#, fuzzy msgid "" "If an exception is raised during execution of the exit handlers, a traceback " "is printed (unless :exc:`SystemExit` is raised) and the exception " -"information is saved. After all exit handlers have had a chance to run the " +"information is saved. After all exit handlers have had a chance to run, the " "last exception to be raised is re-raised." msgstr "" "Si une exception est levée durant l'exécution du gestionnaire de fin de " @@ -105,22 +106,19 @@ msgstr "" #: library/atexit.rst:51 msgid "" -"Remove *func* from the list of functions to be run at interpreter shutdown. " -"After calling :func:`unregister`, *func* is guaranteed not to be called when " -"the interpreter shuts down, even if it was registered more than once. :func:" -"`unregister` silently does nothing if *func* was not previously registered." +"Remove *func* from the list of functions to be run at interpreter shutdown. :" +"func:`unregister` silently does nothing if *func* was not previously " +"registered. If *func* has been registered more than once, every occurrence " +"of that function in the :mod:`atexit` call stack will be removed. Equality " +"comparisons (``==``) are used internally during unregistration, so function " +"references do not need to have matching identities." msgstr "" -"Retire *func* de la liste des fonctions à exécuter à l'arrêt de " -"l’interpréteur. Après avoir appelé :func:`unregister`, *func* est garantie " -"de ne pas être appelée à l'arrêt de l’interpréteur, même si elle a été " -"inscrite plus d'une fois. :func:`unregister` ne fait rien et reste muette " -"dans le cas où *func* n'a pas été inscrite précédemment." -#: library/atexit.rst:61 +#: library/atexit.rst:62 msgid "Module :mod:`readline`" msgstr "Module :mod:`readline`" -#: library/atexit.rst:61 +#: library/atexit.rst:62 msgid "" "Useful example of :mod:`atexit` to read and write :mod:`readline` history " "files." @@ -128,11 +126,11 @@ msgstr "" "Un exemple utile de l'usage de :mod:`atexit` pour lire et écrire des " "fichiers d'historique :mod:`readline`." -#: library/atexit.rst:68 +#: library/atexit.rst:69 msgid ":mod:`atexit` Example" msgstr "Exemple avec :mod:`atexit`" -#: library/atexit.rst:70 +#: library/atexit.rst:71 msgid "" "The following simple example demonstrates how a module can initialize a " "counter from a file when it is imported and save the counter's updated value " @@ -145,7 +143,7 @@ msgstr "" "besoin que l'application fasse un appel explicite dans ce module au moment " "de l'arrêt de l'interpréteur. ::" -#: library/atexit.rst:92 +#: library/atexit.rst:94 msgid "" "Positional and keyword arguments may also be passed to :func:`register` to " "be passed along to the registered function when it is called::" @@ -153,12 +151,25 @@ msgstr "" "Les arguments positionnels et nommés peuvent aussi être passés à :func:" "`register` afin d'être repassés à la fonction inscrite lors de son appel ::" -#: library/atexit.rst:104 +#: library/atexit.rst:106 msgid "Usage as a :term:`decorator`::" msgstr "Utilisation en tant que :term:`décorateur ` ::" -#: library/atexit.rst:112 +#: library/atexit.rst:114 msgid "This only works with functions that can be called without arguments." msgstr "" "Ceci fonctionne uniquement avec des fonctions qui peuvent être appelées sans " "argument." + +#~ msgid "" +#~ "Remove *func* from the list of functions to be run at interpreter " +#~ "shutdown. After calling :func:`unregister`, *func* is guaranteed not to " +#~ "be called when the interpreter shuts down, even if it was registered more " +#~ "than once. :func:`unregister` silently does nothing if *func* was not " +#~ "previously registered." +#~ msgstr "" +#~ "Retire *func* de la liste des fonctions à exécuter à l'arrêt de " +#~ "l’interpréteur. Après avoir appelé :func:`unregister`, *func* est " +#~ "garantie de ne pas être appelée à l'arrêt de l’interpréteur, même si elle " +#~ "a été inscrite plus d'une fois. :func:`unregister` ne fait rien et reste " +#~ "muette dans le cas où *func* n'a pas été inscrite précédemment." diff --git a/library/base64.po b/library/base64.po index be41c8a36..b1ee22dad 100644 --- a/library/base64.po +++ b/library/base64.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-08-20 15:51+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -24,10 +24,11 @@ msgid "**Source code:** :source:`Lib/base64.py`" msgstr "**Code source :** :source:`Lib/base64.py`" #: library/base64.rst:16 +#, fuzzy msgid "" "This module provides functions for encoding binary data to printable ASCII " "characters and decoding such encodings back to binary data. It provides " -"encoding and decoding functions for the encodings specified in :rfc:`3548`, " +"encoding and decoding functions for the encodings specified in :rfc:`4648`, " "which defines the Base16, Base32, and Base64 algorithms, and for the de-" "facto standard Ascii85 and Base85 encodings." msgstr "" @@ -39,11 +40,12 @@ msgstr "" "facto* Ascii85 et base85." #: library/base64.rst:22 +#, fuzzy msgid "" -"The :rfc:`3548` encodings are suitable for encoding binary data so that it " -"can safely sent by email, used as parts of URLs, or included as part of an " -"HTTP POST request. The encoding algorithm is not the same as the :program:" -"`uuencode` program." +"The :rfc:`4648` encodings are suitable for encoding binary data so that it " +"can be safely sent by email, used as parts of URLs, or included as part of " +"an HTTP POST request. The encoding algorithm is not the same as the :" +"program:`uuencode` program." msgstr "" "Les encodages définis par la :rfc:`3548` sont adaptés au codage des données " "binaires pour leur transfert par courriel, comme éléments d'une URL ou d'une " @@ -51,12 +53,13 @@ msgstr "" "programme :program:`uuencode`." #: library/base64.rst:27 +#, fuzzy msgid "" "There are two interfaces provided by this module. The modern interface " "supports encoding :term:`bytes-like objects ` to ASCII :" "class:`bytes`, and decoding :term:`bytes-like objects ` " "or strings containing ASCII to :class:`bytes`. Both base-64 alphabets " -"defined in :rfc:`3548` (normal, and URL- and filesystem-safe) are supported." +"defined in :rfc:`4648` (normal, and URL- and filesystem-safe) are supported." msgstr "" "Ce module présente deux interfaces. L'interface moderne gère l'encodage d':" "term:`objets octet-compatibles ` en :class:`bytes` ASCII " @@ -225,7 +228,7 @@ msgstr "" "de caractères ASCII *s* encodé en base32 et renvoie les :class:`bytes` " "décodés." -#: library/base64.rst:150 +#: library/base64.rst:171 msgid "" "Optional *casefold* is a flag specifying whether a lowercase alphabet is " "acceptable as input. For security purposes, the default is ``False``." @@ -235,8 +238,9 @@ msgstr "" "cette option est à ``False`` par défaut." #: library/base64.rst:127 +#, fuzzy msgid "" -":rfc:`3548` allows for optional mapping of the digit 0 (zero) to the letter " +":rfc:`4648` allows for optional mapping of the digit 0 (zero) to the letter " "O (oh), and for optional mapping of the digit 1 (one) to either the letter I " "(eye) or letter L (el). The optional argument *map01* when not ``None``, " "specifies which letter the digit 1 should be mapped to (when *map01* is not " @@ -252,7 +256,7 @@ msgstr "" "la lettre O). Pour des raisons de sécurité, le défaut est ``None``, de telle " "sorte que 0 et 1 ne sont pas autorisés dans l'entrée." -#: library/base64.rst:154 +#: library/base64.rst:175 msgid "" "A :exc:`binascii.Error` is raised if *s* is incorrectly padded or if there " "are non-alphabet characters present in the input." @@ -262,13 +266,33 @@ msgstr "" #: library/base64.rst:141 msgid "" +"Similar to :func:`b32encode` but uses the Extended Hex Alphabet, as defined " +"in :rfc:`4648`." +msgstr "" + +#: library/base64.rst:149 +msgid "" +"Similar to :func:`b32decode` but uses the Extended Hex Alphabet, as defined " +"in :rfc:`4648`." +msgstr "" + +#: library/base64.rst:152 +msgid "" +"This version does not allow the digit 0 (zero) to the letter O (oh) and " +"digit 1 (one) to either the letter I (eye) or letter L (el) mappings, all " +"these characters are included in the Extended Hex Alphabet and are not " +"interchangable." +msgstr "" + +#: library/base64.rst:162 +msgid "" "Encode the :term:`bytes-like object` *s* using Base16 and return the " "encoded :class:`bytes`." msgstr "" "Encode un :term:`objet byte-compatible ` *s* en utilisant " "l'algorithme base16 et renvoie les :class:`bytes` encodés." -#: library/base64.rst:147 +#: library/base64.rst:168 msgid "" "Decode the Base16 encoded :term:`bytes-like object` or ASCII string *s* and " "return the decoded :class:`bytes`." @@ -277,7 +301,7 @@ msgstr "" "de caractères ASCII *s* encodé en base16 et renvoie les :class:`bytes` " "décodés." -#: library/base64.rst:161 +#: library/base64.rst:182 msgid "" "Encode the :term:`bytes-like object` *b* using Ascii85 and return the " "encoded :class:`bytes`." @@ -285,7 +309,7 @@ msgstr "" "Encode un :term:`objet byte-compatible ` *s* en utilisant " "l'algorithme Ascii85 et renvoie les :class:`bytes` encodés." -#: library/base64.rst:164 +#: library/base64.rst:185 msgid "" "*foldspaces* is an optional flag that uses the special short sequence 'y' " "instead of 4 consecutive spaces (ASCII 0x20) as supported by 'btoa'. This " @@ -296,7 +320,7 @@ msgstr "" "*btoa*. Cette fonctionnalité n'est pas gérée par l'encodage « standard » " "Ascii85." -#: library/base64.rst:168 +#: library/base64.rst:189 msgid "" "*wrapcol* controls whether the output should have newline (``b'\\n'``) " "characters added to it. If this is non-zero, each output line will be at " @@ -306,7 +330,7 @@ msgstr "" "sortie. Chaque ligne de sortie contient au maximum *wrapcol* caractères si " "cette option diffère de zéro." -#: library/base64.rst:172 +#: library/base64.rst:193 msgid "" "*pad* controls whether the input is padded to a multiple of 4 before " "encoding. Note that the ``btoa`` implementation always pads." @@ -315,7 +339,7 @@ msgstr "" "l'entrée jusqu'à ce que sa longueur soit un multiple de 4 avant encodage. " "Notez que l'implémentation ``btoa`` effectue systématiquement ce remplissage." -#: library/base64.rst:175 +#: library/base64.rst:196 msgid "" "*adobe* controls whether the encoded byte sequence is framed with ``<~`` and " "``~>``, which is used by the Adobe implementation." @@ -323,7 +347,7 @@ msgstr "" "*adobe* contrôle si oui ou non la séquence encodée d'octets est encadrée par " "``<~`` et ``~>`` comme utilisé dans l'implémentation Adobe." -#: library/base64.rst:183 +#: library/base64.rst:204 msgid "" "Decode the Ascii85 encoded :term:`bytes-like object` or ASCII string *b* and " "return the decoded :class:`bytes`." @@ -332,7 +356,7 @@ msgstr "" "de caractères ASCII *s* encodé en Ascii85 et renvoie les :class:`bytes` " "décodés." -#: library/base64.rst:186 +#: library/base64.rst:207 msgid "" "*foldspaces* is a flag that specifies whether the 'y' short sequence should " "be accepted as shorthand for 4 consecutive spaces (ASCII 0x20). This feature " @@ -343,7 +367,7 @@ msgstr "" "*btoa*. Cette fonctionnalité n'est pas gérée par l'encodage « standard » " "Ascii85." -#: library/base64.rst:190 +#: library/base64.rst:211 msgid "" "*adobe* controls whether the input sequence is in Adobe Ascii85 format (i.e. " "is framed with <~ and ~>)." @@ -351,7 +375,7 @@ msgstr "" "*adobe* indique si la séquence d'entrée utilise le format Adobe Ascii85 " "(c'est-à-dire utilise l'encadrement par ``<~`` et ``~>``)." -#: library/base64.rst:193 +#: library/base64.rst:214 msgid "" "*ignorechars* should be a :term:`bytes-like object` or ASCII string " "containing characters to ignore from the input. This should only contain " @@ -363,7 +387,7 @@ msgstr "" "des caractères d'espacement et contient par défaut l'ensemble des caractères " "d'espacement de l'alphabet ASCII." -#: library/base64.rst:203 +#: library/base64.rst:224 msgid "" "Encode the :term:`bytes-like object` *b* using base85 (as used in e.g. git-" "style binary diffs) and return the encoded :class:`bytes`." @@ -372,7 +396,7 @@ msgstr "" "l'algorithme base85 (tel qu'utilisé par exemple par le programme *git-diff* " "sur des données binaires) et renvoie les :class:`bytes` encodés." -#: library/base64.rst:206 +#: library/base64.rst:227 msgid "" "If *pad* is true, the input is padded with ``b'\\0'`` so its length is a " "multiple of 4 bytes before encoding." @@ -381,7 +405,7 @@ msgstr "" "anglais) sont ajoutés à l'entrée jusqu'à ce que sa longueur soit un multiple " "de 4 octets avant encodage." -#: library/base64.rst:214 +#: library/base64.rst:235 msgid "" "Decode the base85-encoded :term:`bytes-like object` or ASCII string *b* and " "return the decoded :class:`bytes`. Padding is implicitly removed, if " @@ -392,11 +416,11 @@ msgstr "" "décodés. Les caractères de remplissage sont implicitement retirés si " "nécessaire." -#: library/base64.rst:221 +#: library/base64.rst:242 msgid "The legacy interface:" msgstr "L'interface historique :" -#: library/base64.rst:225 +#: library/base64.rst:246 msgid "" "Decode the contents of the binary *input* file and write the resulting " "binary data to the *output* file. *input* and *output* must be :term:`file " @@ -408,7 +432,7 @@ msgstr "" "term:`objets fichiers `. *input* est lu jusqu'à ce que ``input." "readline()`` renvoie un objet *bytes* vide." -#: library/base64.rst:233 +#: library/base64.rst:254 msgid "" "Decode the :term:`bytes-like object` *s*, which must contain one or more " "lines of base64 encoded data, and return the decoded :class:`bytes`." @@ -417,7 +441,7 @@ msgstr "" "contenir une ou plusieurs lignes de données encodées en base64 et renvoie " "les :class:`bytes` décodés." -#: library/base64.rst:241 +#: library/base64.rst:262 msgid "" "Encode the contents of the binary *input* file and write the resulting " "base64 encoded data to the *output* file. *input* and *output* must be :term:" @@ -434,7 +458,7 @@ msgstr "" "sortie et assure que celle-ci se termine par une nouvelle ligne, comme " "spécifié par la :rfc:`2045` (MIME)." -#: library/base64.rst:251 +#: library/base64.rst:272 msgid "" "Encode the :term:`bytes-like object` *s*, which can contain arbitrary binary " "data, and return :class:`bytes` containing the base64-encoded data, with " @@ -447,22 +471,33 @@ msgstr "" "(``b'\\n'``) est inséré tous les 76 octets de sortie et celle-ci se termine " "par une nouvelle ligne, comme spécifié par la :rfc:`2045` (MIME)." -#: library/base64.rst:259 +#: library/base64.rst:280 msgid "An example usage of the module:" msgstr "Un exemple d'utilisation du module :" -#: library/base64.rst:273 +#: library/base64.rst:293 +msgid "Security Considerations" +msgstr "" + +#: library/base64.rst:295 +msgid "" +"A new security considerations section was added to :rfc:`4648` (section 12); " +"it's recommended to review the security section for any code deployed to " +"production." +msgstr "" + +#: library/base64.rst:301 msgid "Module :mod:`binascii`" msgstr "Module :mod:`binascii`" -#: library/base64.rst:273 +#: library/base64.rst:301 msgid "" "Support module containing ASCII-to-binary and binary-to-ASCII conversions." msgstr "" "Module secondaire contenant les conversions ASCII vers binaire et binaire " "vers ASCII." -#: library/base64.rst:276 +#: library/base64.rst:304 msgid "" ":rfc:`1521` - MIME (Multipurpose Internet Mail Extensions) Part One: " "Mechanisms for Specifying and Describing the Format of Internet Message " @@ -472,7 +507,7 @@ msgstr "" "Mechanisms for Specifying and Describing the Format of Internet Message " "Bodies*" -#: library/base64.rst:276 +#: library/base64.rst:304 msgid "" "Section 5.2, \"Base64 Content-Transfer-Encoding,\" provides the definition " "of the base64 encoding." diff --git a/library/bisect.po b/library/bisect.po index 6592c4a1c..f5a026b95 100644 --- a/library/bisect.po +++ b/library/bisect.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-07-29 01:03+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -61,16 +61,28 @@ msgstr "" "directement être utilisée comme premier paramètre de ``list.insert()``." #: library/bisect.rst:33 +#, fuzzy msgid "" "The returned insertion point *i* partitions the array *a* into two halves so " -"that ``all(val < x for val in a[lo:i])`` for the left side and ``all(val >= " -"x for val in a[i:hi])`` for the right side." +"that ``all(val < x for val in a[lo : i])`` for the left side and ``all(val " +">= x for val in a[i : hi])`` for the right side." msgstr "" "Le point d'insertion renvoyé, *i*, coupe la liste *a* en deux moitiés telles " "que, pour la moitié de gauche : ``all(val < x for val in a[lo:i])``, et pour " "la partie de droite : ``all(val >= x for val in a[i:hi])``." -#: library/bisect.rst:40 +#: library/bisect.rst:55 library/bisect.rst:88 +msgid "" +"*key* specifies a :term:`key function` of one argument that is used to " +"extract a comparison key from each input element. The default value is " +"``None`` (compare the elements directly)." +msgstr "" + +#: library/bisect.rst:59 library/bisect.rst:99 +msgid "Added the *key* parameter." +msgstr "" + +#: library/bisect.rst:48 msgid "" "Similar to :func:`bisect_left`, but returns an insertion point which comes " "after (to the right of) any existing entries of *x* in *a*." @@ -78,29 +90,35 @@ msgstr "" "Semblable à :func:`bisect_left`, mais renvoie un point d'insertion après (à " "droite) d'une potentielle entrée existante valant *x* dans *a*." -#: library/bisect.rst:43 +#: library/bisect.rst:51 +#, fuzzy msgid "" "The returned insertion point *i* partitions the array *a* into two halves so " -"that ``all(val <= x for val in a[lo:i])`` for the left side and ``all(val > " -"x for val in a[i:hi])`` for the right side." +"that ``all(val <= x for val in a[lo : i])`` for the left side and ``all(val " +"> x for val in a[i : hi])`` for the right side." msgstr "" "Le point d'insertion renvoyé, *i*, coupe la liste *a* en deux moitiés telles " "que, pour la moitié de gauche : ``all(val <= x for val in a[lo:i])`` et pour " "la moitié de droite : ``all(val > x for val in a[i:hi])``." -#: library/bisect.rst:49 +#: library/bisect.rst:65 +msgid "Insert *x* in *a* in sorted order." +msgstr "" + +#: library/bisect.rst:71 +msgid "" +"This function first runs :func:`bisect_left` to locate an insertion point. " +"Next, it runs the :meth:`insert` method on *a* to insert *x* at the " +"appropriate position to maintain sort order." +msgstr "" + +#: library/bisect.rst:96 msgid "" -"Insert *x* in *a* in sorted order. This is equivalent to ``a.insert(bisect." -"bisect_left(a, x, lo, hi), x)`` assuming that *a* is already sorted. Keep " -"in mind that the O(log n) search is dominated by the slow O(n) insertion " -"step." +"Keep in mind that the ``O(log n)`` search is dominated by the slow O(n) " +"insertion step." msgstr "" -"Insère *x* dans *a* en conservant le tri. C'est l'équivalent de ``a." -"insert(bisect.bisect_left(a, x, lo, hi), x)``, tant que *a* est déjà triée. " -"Gardez en tête que bien que la recherche ne coûte que O(log n), l'insertion " -"coûte O(n)." -#: library/bisect.rst:57 +#: library/bisect.rst:85 msgid "" "Similar to :func:`insort_left`, but inserting *x* in *a* after any existing " "entries of *x*." @@ -108,13 +126,61 @@ msgstr "" "Similaire à :func:`insort_left`, mais en insérant *x* dans *a* après une " "potentielle entrée existante égale à *x*." -#: library/bisect.rst:62 +#: library/bisect.rst:92 msgid "" -"`SortedCollection recipe `_ that uses bisect to build a full-featured collection " -"class with straight-forward search methods and support for a key-function. " -"The keys are precomputed to save unnecessary calls to the key function " -"during searches." +"This function first runs :func:`bisect_right` to locate an insertion point. " +"Next, it runs the :meth:`insert` method on *a* to insert *x* at the " +"appropriate position to maintain sort order." +msgstr "" + +#: library/bisect.rst:104 +msgid "Performance Notes" +msgstr "" + +#: library/bisect.rst:106 +msgid "" +"When writing time sensitive code using *bisect()* and *insort()*, keep these " +"thoughts in mind:" +msgstr "" + +#: library/bisect.rst:109 +msgid "" +"Bisection is effective for searching ranges of values. For locating specific " +"values, dictionaries are more performant." +msgstr "" + +#: library/bisect.rst:112 +msgid "" +"The *insort()* functions are ``O(n)`` because the logarithmic search step is " +"dominated by the linear time insertion step." +msgstr "" + +#: library/bisect.rst:115 +msgid "" +"The search functions are stateless and discard key function results after " +"they are used. Consequently, if the search functions are used in a loop, " +"the key function may be called again and again on the same array elements. " +"If the key function isn't fast, consider wrapping it with :func:`functools." +"cache` to avoid duplicate computations. Alternatively, consider searching " +"an array of precomputed keys to locate the insertion point (as shown in the " +"examples section below)." +msgstr "" + +#: library/bisect.rst:125 +msgid "" +"`Sorted Collections `_ is " +"a high performance module that uses *bisect* to managed sorted collections " +"of data." +msgstr "" + +#: library/bisect.rst:129 +#, fuzzy +msgid "" +"The `SortedCollection recipe `_ uses bisect to build a full-featured collection class " +"with straight-forward search methods and support for a key-function. The " +"keys are precomputed to save unnecessary calls to the key function during " +"searches." msgstr "" "`SortedCollection recipe `_ utilise le module *bisect* pour construire une classe " @@ -122,11 +188,11 @@ msgstr "" "fonction clef. Les clefs sont pré-calculées pour économiser des appels " "inutiles à la fonction clef durant les recherches." -#: library/bisect.rst:70 +#: library/bisect.rst:137 msgid "Searching Sorted Lists" msgstr "Chercher dans des listes triées" -#: library/bisect.rst:72 +#: library/bisect.rst:139 msgid "" "The above :func:`bisect` functions are useful for finding insertion points " "but can be tricky or awkward to use for common searching tasks. The " @@ -138,11 +204,12 @@ msgstr "" "rechercher des éléments. Les cinq fonctions suivantes montrent comment les " "transformer en recherche plus classique pour les listes triées ::" -#: library/bisect.rst:114 -msgid "Other Examples" +#: library/bisect.rst:181 +#, fuzzy +msgid "Examples" msgstr "Autres Exemples" -#: library/bisect.rst:118 +#: library/bisect.rst:185 msgid "" "The :func:`bisect` function can be useful for numeric table lookups. This " "example uses :func:`bisect` to look up a letter grade for an exam score " @@ -155,23 +222,34 @@ msgstr "" "se basant sur une échelle prédéfinie : plus de 90 vaut 'A', de 80 à 89 vaut " "'B', etc… ::" -#: library/bisect.rst:130 +#: library/bisect.rst:197 +#, fuzzy msgid "" -"Unlike the :func:`sorted` function, it does not make sense for the :func:" -"`bisect` functions to have *key* or *reversed* arguments because that would " -"lead to an inefficient design (successive calls to bisect functions would " -"not \"remember\" all of the previous key lookups)." -msgstr "" -"Contrairement à la fonction :func:`sorted`, ça n'aurait pas de sens pour la " -"fonction :func:`bisect` d'avoir un paramètre *key* ou *reversed*, qui " -"conduiraient à une utilisation inefficace (des appels successifs à la " -"fonction *bisect* n'auraient aucun moyen de se \"souvenir\" des recherches " -"de clef précédentes)." - -#: library/bisect.rst:135 -msgid "" -"Instead, it is better to search a list of precomputed keys to find the index " -"of the record in question::" +"One technique to avoid repeated calls to a key function is to search a list " +"of precomputed keys to find the index of a record::" msgstr "" "Il est préférable d'utiliser une liste de clefs pré-calculée pour chercher " "l'index de l'enregistrement en question ::" + +#~ msgid "" +#~ "Insert *x* in *a* in sorted order. This is equivalent to ``a." +#~ "insert(bisect.bisect_left(a, x, lo, hi), x)`` assuming that *a* is " +#~ "already sorted. Keep in mind that the O(log n) search is dominated by " +#~ "the slow O(n) insertion step." +#~ msgstr "" +#~ "Insère *x* dans *a* en conservant le tri. C'est l'équivalent de ``a." +#~ "insert(bisect.bisect_left(a, x, lo, hi), x)``, tant que *a* est déjà " +#~ "triée. Gardez en tête que bien que la recherche ne coûte que O(log n), " +#~ "l'insertion coûte O(n)." + +#~ msgid "" +#~ "Unlike the :func:`sorted` function, it does not make sense for the :func:" +#~ "`bisect` functions to have *key* or *reversed* arguments because that " +#~ "would lead to an inefficient design (successive calls to bisect functions " +#~ "would not \"remember\" all of the previous key lookups)." +#~ msgstr "" +#~ "Contrairement à la fonction :func:`sorted`, ça n'aurait pas de sens pour " +#~ "la fonction :func:`bisect` d'avoir un paramètre *key* ou *reversed*, qui " +#~ "conduiraient à une utilisation inefficace (des appels successifs à la " +#~ "fonction *bisect* n'auraient aucun moyen de se \"souvenir\" des " +#~ "recherches de clef précédentes)." diff --git a/library/bz2.po b/library/bz2.po index fc751c235..71fcb1c36 100644 --- a/library/bz2.po +++ b/library/bz2.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-12-17 16:05+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-09-25 16:52-0600\n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -58,19 +58,11 @@ msgstr "" "Les fonctions :func:`compress` et :func:`decompress` pour la (dé)compression " "en une seule fois." -#: library/bz2.rst:28 -msgid "" -"All of the classes in this module may safely be accessed from multiple " -"threads." -msgstr "" -"Toutes les classes de ce module peuvent en toute sécurité être accédées " -"depuis de multiples fils d'exécution." - -#: library/bz2.rst:32 +#: library/bz2.rst:30 msgid "(De)compression of files" msgstr "(Dé)compression de fichiers" -#: library/bz2.rst:36 +#: library/bz2.rst:34 msgid "" "Open a bzip2-compressed file in binary or text mode, returning a :term:`file " "object`." @@ -78,7 +70,7 @@ msgstr "" "Ouvre un fichier compressé par *bzip2* en mode binaire ou texte, le " "renvoyant en :term:`file object`." -#: library/bz2.rst:39 +#: library/bz2.rst:37 msgid "" "As with the constructor for :class:`BZ2File`, the *filename* argument can be " "an actual filename (a :class:`str` or :class:`bytes` object), or an existing " @@ -88,7 +80,7 @@ msgstr "" "*filename* peut être un nom de fichier réel (un objet :class:`str` ou :class:" "`bytes`), ou un objet fichier existant à lire ou à écrire." -#: library/bz2.rst:43 +#: library/bz2.rst:41 msgid "" "The *mode* argument can be any of ``'r'``, ``'rb'``, ``'w'``, ``'wb'``, " "``'x'``, ``'xb'``, ``'a'`` or ``'ab'`` for binary mode, or ``'rt'``, " @@ -98,7 +90,7 @@ msgstr "" "``'xb'``, ``'a'`` ou ``'ab'`` pour le mode binaire, ou ``'rt'``, ``'wt'``, " "``'xt'`` ou ``'at'`` pour le mode texte. Il vaut par défaut ``'rb'``." -#: library/bz2.rst:47 +#: library/bz2.rst:45 msgid "" "The *compresslevel* argument is an integer from 1 to 9, as for the :class:" "`BZ2File` constructor." @@ -106,7 +98,7 @@ msgstr "" "L'argument *compresslevel* est un entier de 1 à 9, comme pour le " "constructeur :class:`BZ2File`." -#: library/bz2.rst:50 +#: library/bz2.rst:48 msgid "" "For binary mode, this function is equivalent to the :class:`BZ2File` " "constructor: ``BZ2File(filename, mode, compresslevel=compresslevel)``. In " @@ -118,7 +110,7 @@ msgstr "" "ce cas, les arguments *encoding*, *errors* et *newline* arguments ne doivent " "pas être fournis." -#: library/bz2.rst:55 +#: library/bz2.rst:53 msgid "" "For text mode, a :class:`BZ2File` object is created, and wrapped in an :" "class:`io.TextIOWrapper` instance with the specified encoding, error " @@ -128,19 +120,19 @@ msgstr "" "instance :class:`io.TextIOWrapper` avec l'encodage spécifié, le comportement " "de gestion des erreurs et les fins de ligne." -#: library/bz2.rst:126 +#: library/bz2.rst:124 msgid "The ``'x'`` (exclusive creation) mode was added." msgstr "Le mode ``'x'`` (création exclusive) est ajouté." -#: library/bz2.rst:133 +#: library/bz2.rst:131 msgid "Accepts a :term:`path-like object`." msgstr "Accepte un :term:`path-like object`." -#: library/bz2.rst:70 +#: library/bz2.rst:68 msgid "Open a bzip2-compressed file in binary mode." msgstr "Ouvre un fichier *bzip2* en mode binaire." -#: library/bz2.rst:72 +#: library/bz2.rst:70 msgid "" "If *filename* is a :class:`str` or :class:`bytes` object, open the named " "file directly. Otherwise, *filename* should be a :term:`file object`, which " @@ -150,7 +142,7 @@ msgstr "" "fichier directement. Autrement, *filename* doit être un :term:`file object`, " "qui est utilisé pour lire ou écrire les données compressées." -#: library/bz2.rst:76 +#: library/bz2.rst:74 msgid "" "The *mode* argument can be either ``'r'`` for reading (default), ``'w'`` for " "overwriting, ``'x'`` for exclusive creation, or ``'a'`` for appending. These " @@ -162,7 +154,7 @@ msgstr "" "peuvent également être écrits respectivement comme ``'rb'``, ``'wb'``, " "``'xb'`` et ``'ab'``." -#: library/bz2.rst:81 +#: library/bz2.rst:79 msgid "" "If *filename* is a file object (rather than an actual file name), a mode of " "``'w'`` does not truncate the file, and is instead equivalent to ``'a'``." @@ -170,7 +162,7 @@ msgstr "" "Si *filename* est un objet fichier (plutôt que le nom de fichier réel), le " "mode ``'w'`` ne tronque pas le fichier, mais équivaut à ``'a'``." -#: library/bz2.rst:84 +#: library/bz2.rst:82 msgid "" "If *mode* is ``'w'`` or ``'a'``, *compresslevel* can be an integer between " "``1`` and ``9`` specifying the level of compression: ``1`` produces the " @@ -181,7 +173,7 @@ msgstr "" "compression la moins forte, et ``9`` (par défaut) la compression la plus " "forte." -#: library/bz2.rst:88 +#: library/bz2.rst:86 msgid "" "If *mode* is ``'r'``, the input file may be the concatenation of multiple " "compressed streams." @@ -189,7 +181,7 @@ msgstr "" "Si *mode* est ``'r'``, le fichier d'entrée peut être la concaténation de " "plusieurs flux compressés." -#: library/bz2.rst:91 +#: library/bz2.rst:89 msgid "" ":class:`BZ2File` provides all of the members specified by the :class:`io." "BufferedIOBase`, except for :meth:`detach` and :meth:`truncate`. Iteration " @@ -199,11 +191,11 @@ msgstr "" "BufferedIOBase`, excepté les méthodes :meth:`detach` et :meth:`truncate`. " "L'itération et l'instruction :keyword:`with` sont prises en charge." -#: library/bz2.rst:95 +#: library/bz2.rst:93 msgid ":class:`BZ2File` also provides the following method:" msgstr ":class:`BZ2File` fournit aussi la méthode suivante :" -#: library/bz2.rst:99 +#: library/bz2.rst:97 msgid "" "Return buffered data without advancing the file position. At least one byte " "of data will be returned (unless at EOF). The exact number of bytes returned " @@ -213,7 +205,7 @@ msgstr "" "Au moins un octet de donnée (sauf l'EOF) est renvoyé. Le nombre exact " "d'octets renvoyés n'est pas spécifié." -#: library/bz2.rst:103 +#: library/bz2.rst:101 msgid "" "While calling :meth:`peek` does not change the file position of the :class:" "`BZ2File`, it may change the position of the underlying file object (e.g. if " @@ -225,11 +217,11 @@ msgstr "" "l'objet fichier sous-jacent (e.g. si la classe :class:`BZ2File` a été " "construite en passant un objet fichier à *filename*)." -#: library/bz2.rst:111 +#: library/bz2.rst:109 msgid "Support for the :keyword:`with` statement was added." msgstr "La prise en charge de l'instruction :keyword:`with` a été ajoutée." -#: library/bz2.rst:114 +#: library/bz2.rst:112 msgid "" "The :meth:`fileno`, :meth:`readable`, :meth:`seekable`, :meth:`writable`, :" "meth:`read1` and :meth:`readinto` methods were added." @@ -237,7 +229,7 @@ msgstr "" "Les méthodes :meth:`fileno`, :meth:`readable`, :meth:`seekable`, :meth:" "`writable`, :meth:`read1` et :meth:`readinto` ont été ajoutées." -#: library/bz2.rst:118 +#: library/bz2.rst:116 msgid "" "Support was added for *filename* being a :term:`file object` instead of an " "actual filename." @@ -245,7 +237,7 @@ msgstr "" "La gestion de *filename* comme :term:`file object` au lieu d'un nom de " "fichier réel a été ajoutée." -#: library/bz2.rst:122 +#: library/bz2.rst:120 msgid "" "The ``'a'`` (append) mode was added, along with support for reading multi-" "stream files." @@ -253,7 +245,7 @@ msgstr "" "Le mode ``'a'`` (ajout) a été ajouté, avec la prise en charge de la lecture " "des fichiers *multiflux*." -#: library/bz2.rst:129 +#: library/bz2.rst:127 msgid "" "The :meth:`~io.BufferedIOBase.read` method now accepts an argument of " "``None``." @@ -261,7 +253,7 @@ msgstr "" "La méthode :meth:`~io.BufferedIOBase.read` accepte maintenant un argument " "``None``." -#: library/bz2.rst:136 +#: library/bz2.rst:134 msgid "" "The *buffering* parameter has been removed. It was ignored and deprecated " "since Python 3.0. Pass an open file object to control how the file is opened." @@ -270,16 +262,23 @@ msgstr "" "Python 3.0. Passez un objet fichier déjà ouvert si vous voulez contrôler la " "façon dont le fichier est ouvert." -#: library/bz2.rst:141 +#: library/bz2.rst:139 msgid "The *compresslevel* parameter became keyword-only." msgstr "" "Le paramètre *compresslevel* est devenu un paramètre exclusivement nommé." -#: library/bz2.rst:145 +#: library/bz2.rst:141 +msgid "" +"This class is thread unsafe in the face of multiple simultaneous readers or " +"writers, just like its equivalent classes in :mod:`gzip` and :mod:`lzma` " +"have always been." +msgstr "" + +#: library/bz2.rst:148 msgid "Incremental (de)compression" msgstr "(Dé)compression incrémentielle" -#: library/bz2.rst:149 +#: library/bz2.rst:152 msgid "" "Create a new compressor object. This object may be used to compress data " "incrementally. For one-shot compression, use the :func:`compress` function " @@ -289,7 +288,7 @@ msgstr "" "compresser les données de manière incrémentielle. Pour une compression en " "une seule fois, utilisez à la place la fonction :func:`compress`." -#: library/bz2.rst:241 +#: library/bz2.rst:244 msgid "" "*compresslevel*, if given, must be an integer between ``1`` and ``9``. The " "default is ``9``." @@ -297,7 +296,7 @@ msgstr "" "*compresslevel*, s'il est fourni, doit être un entier entre ``1`` et ``9``. " "Sa valeur par défaut est ``9``." -#: library/bz2.rst:158 +#: library/bz2.rst:161 msgid "" "Provide data to the compressor object. Returns a chunk of compressed data if " "possible, or an empty byte string otherwise." @@ -305,7 +304,7 @@ msgstr "" "Fournit la donnée à l'objet compresseur. Renvoie un bloc de données " "compressées si possible, ou autrement une chaîne d'octet vide." -#: library/bz2.rst:161 +#: library/bz2.rst:164 msgid "" "When you have finished providing data to the compressor, call the :meth:" "`flush` method to finish the compression process." @@ -313,7 +312,7 @@ msgstr "" "Quand vous avez fini de fournir des données au compresseur, appelez la " "méthode :meth:`flush` pour finir le processus de compression." -#: library/bz2.rst:167 +#: library/bz2.rst:170 msgid "" "Finish the compression process. Returns the compressed data left in internal " "buffers." @@ -321,14 +320,14 @@ msgstr "" "Finit le processus de compression. Renvoie la donnée compressée restante " "dans les tampons internes." -#: library/bz2.rst:170 +#: library/bz2.rst:173 msgid "" "The compressor object may not be used after this method has been called." msgstr "" "L'objet compresseur ne peut pas être utilisé après que cette méthode a été " "appelée." -#: library/bz2.rst:175 +#: library/bz2.rst:178 msgid "" "Create a new decompressor object. This object may be used to decompress data " "incrementally. For one-shot compression, use the :func:`decompress` function " @@ -338,7 +337,7 @@ msgstr "" "décompresser les données de manière incrémentielle. Pour une compression en " "une seule fois, utilisez à la place la fonction :func:`decompress`." -#: library/bz2.rst:180 +#: library/bz2.rst:183 msgid "" "This class does not transparently handle inputs containing multiple " "compressed streams, unlike :func:`decompress` and :class:`BZ2File`. If you " @@ -351,7 +350,7 @@ msgstr "" "la classe :class:`BZ2Decompressor`, vous devez utiliser un nouveau " "décompresseur pour chaque flux." -#: library/bz2.rst:187 +#: library/bz2.rst:190 msgid "" "Decompress *data* (a :term:`bytes-like object`), returning uncompressed data " "as bytes. Some of *data* may be buffered internally, for use in later calls " @@ -364,7 +363,7 @@ msgstr "" "méthode :meth:`decompress`. La donnée renvoyée doit être concaténée avec la " "sortie des appels précédents à la méthode :meth:`decompress`." -#: library/bz2.rst:193 +#: library/bz2.rst:196 msgid "" "If *max_length* is nonnegative, returns at most *max_length* bytes of " "decompressed data. If this limit is reached and further output can be " @@ -378,7 +377,7 @@ msgstr "" "Dans ce cas, lors de l'appel suivant à la méthode :meth:`~.decompress`, vous " "pouvez fournir ``b''`` dans *data* afin d'obtenir la suite de la sortie." -#: library/bz2.rst:200 +#: library/bz2.rst:203 msgid "" "If all of the input data was decompressed and returned (either because this " "was less than *max_length* bytes, or because *max_length* was negative), " @@ -388,7 +387,7 @@ msgstr "" "qu'il y avait moins de *max_length* octets, ou parce que *max_length* était " "négatif), l'attribut :attr:`~.needs_input` sera configuré sur ``True``." -#: library/bz2.rst:205 +#: library/bz2.rst:208 msgid "" "Attempting to decompress data after the end of stream is reached raises an " "`EOFError`. Any data found after the end of the stream is ignored and saved " @@ -398,19 +397,19 @@ msgstr "" "lève une erreur ``EOFError``. Toute donnée trouvée après la fin du flux est " "ignorée et sauvegardée dans l'attribut :attr:`~.unused_data`." -#: library/bz2.rst:209 +#: library/bz2.rst:212 msgid "Added the *max_length* parameter." msgstr "Ajout du paramètre *max_length*." -#: library/bz2.rst:214 +#: library/bz2.rst:217 msgid "``True`` if the end-of-stream marker has been reached." msgstr "``True`` si le marqueur de fin de flux a été atteint." -#: library/bz2.rst:221 +#: library/bz2.rst:224 msgid "Data found after the end of the compressed stream." msgstr "Donnée trouvée après la fin du flux compressé." -#: library/bz2.rst:223 +#: library/bz2.rst:226 msgid "" "If this attribute is accessed before the end of the stream has been reached, " "its value will be ``b''``." @@ -418,7 +417,7 @@ msgstr "" "Si l'attribut est accédé avant que la fin du flux ait été atteint, sa valeur " "sera ``b''``." -#: library/bz2.rst:228 +#: library/bz2.rst:231 msgid "" "``False`` if the :meth:`.decompress` method can provide more decompressed " "data before requiring new uncompressed input." @@ -426,25 +425,25 @@ msgstr "" "``False`` si la méthode :meth:`.decompress` peut fournir plus de données " "décompressées avant l'acquisition d'une nouvelle entrée non compressée." -#: library/bz2.rst:235 +#: library/bz2.rst:238 msgid "One-shot (de)compression" msgstr "(Dé)compression en une fois" -#: library/bz2.rst:239 +#: library/bz2.rst:242 msgid "Compress *data*, a :term:`bytes-like object `." msgstr "Compresse *data*, un :term:`bytes-like object `." -#: library/bz2.rst:244 +#: library/bz2.rst:247 msgid "For incremental compression, use a :class:`BZ2Compressor` instead." msgstr "" "Pour la compression incrémentielle, utilisez à la place la classe :class:" "`BZ2Compressor`." -#: library/bz2.rst:249 +#: library/bz2.rst:252 msgid "Decompress *data*, a :term:`bytes-like object `." msgstr "Décompresse *data*, un :term:`bytes-like object `." -#: library/bz2.rst:251 +#: library/bz2.rst:254 msgid "" "If *data* is the concatenation of multiple compressed streams, decompress " "all of the streams." @@ -452,27 +451,27 @@ msgstr "" "Si *data* est la concaténation de multiples flux compressés, décompresse " "tous les flux." -#: library/bz2.rst:254 +#: library/bz2.rst:257 msgid "For incremental decompression, use a :class:`BZ2Decompressor` instead." msgstr "" "Pour une décompression incrémentielle, utilisez à la place la classe :class:" "`BZ2Decompressor`." -#: library/bz2.rst:256 +#: library/bz2.rst:259 msgid "Support for multi-stream inputs was added." msgstr "Prise en charge des entrées *multiflux*." -#: library/bz2.rst:262 +#: library/bz2.rst:265 msgid "Examples of usage" msgstr "Exemples d'utilisation" -#: library/bz2.rst:264 +#: library/bz2.rst:267 msgid "Below are some examples of typical usage of the :mod:`bz2` module." msgstr "" "Ci-dessous, nous présentons quelques exemples typiques de l'utilisation du " "module :mod:`bz2`." -#: library/bz2.rst:266 +#: library/bz2.rst:269 msgid "" "Using :func:`compress` and :func:`decompress` to demonstrate round-trip " "compression:" @@ -480,13 +479,13 @@ msgstr "" "Utilise les fonctions :func:`compress` et :func:`decompress` pour démontrer " "une compression aller-retour :" -#: library/bz2.rst:284 +#: library/bz2.rst:287 msgid "Using :class:`BZ2Compressor` for incremental compression:" msgstr "" "Utilise la classe :class:`BZ2Compressor` pour une compression " "incrémentielle :" -#: library/bz2.rst:302 +#: library/bz2.rst:305 msgid "" "The example above uses a very \"nonrandom\" stream of data (a stream of `b\"z" "\"` chunks). Random data tends to compress poorly, while ordered, " @@ -497,11 +496,18 @@ msgstr "" "compresser, alors que les données répétitives ou ordonnées donnent " "généralement un taux de compression élevé." -#: library/bz2.rst:306 +#: library/bz2.rst:309 msgid "Writing and reading a bzip2-compressed file in binary mode:" msgstr "" "Écriture et lecture en mode binaire d'un fichier compressé avec *bzip2* :" +#~ msgid "" +#~ "All of the classes in this module may safely be accessed from multiple " +#~ "threads." +#~ msgstr "" +#~ "Toutes les classes de ce module peuvent en toute sécurité être accédées " +#~ "depuis de multiples fils d'exécution." + #~ msgid "" #~ "The *buffering* argument is ignored. Its use is deprecated since Python " #~ "3.0." diff --git a/library/calendar.po b/library/calendar.po index 5a9cb88bd..f2456a87a 100644 --- a/library/calendar.po +++ b/library/calendar.po @@ -8,7 +8,7 @@ msgstr "" "POT-Creation-Date: 2020-08-24 09:01+0200\n" "PO-Revision-Date: 2021-03-20 19:35+0100\n" "Last-Translator: Loc Cosnier \n" -"Language-Team: French \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff --git a/library/cgi.po b/library/cgi.po index ac84ad376..27d4f3244 100644 --- a/library/cgi.po +++ b/library/cgi.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -92,7 +92,7 @@ msgstr "" #: library/cgi.rst:75 msgid "" "This activates a special exception handler that will display detailed " -"reports in the Web browser if any errors occur. If you'd rather not show " +"reports in the web browser if any errors occur. If you'd rather not show " "the guts of your program to users of your script, you can have the reports " "saved to files instead, with code like this::" msgstr "" @@ -111,7 +111,7 @@ msgid "" "form contains non-ASCII characters, use the *encoding* keyword parameter set " "to the value of the encoding defined for the document. It is usually " "contained in the META tag in the HEAD section of the HTML document or by " -"the :mailheader:`Content-Type` header). This reads the form contents from " +"the :mailheader:`Content-Type` header. This reads the form contents from " "the standard input or the environment (depending on the value of various " "environment variables set according to the CGI standard). Since it may " "consume standard input, it should be instantiated only once." @@ -398,7 +398,7 @@ msgid "" "system`, :func:`os.popen` or other functions with similar functionality), " "make very sure you don't pass arbitrary strings received from the client to " "the shell. This is a well-known security hole whereby clever hackers " -"anywhere on the Web can exploit a gullible CGI script to invoke arbitrary " +"anywhere on the web can exploit a gullible CGI script to invoke arbitrary " "shell commands. Even parts of the URL or field names cannot be trusted, " "since the request doesn't have to come from your form!" msgstr "" @@ -540,7 +540,7 @@ msgstr "" #: library/cgi.rst:459 msgid "" "Fortunately, once you have managed to get your script to execute *some* " -"code, you can easily send tracebacks to the Web browser using the :mod:" +"code, you can easily send tracebacks to the web browser using the :mod:" "`cgitb` module. If you haven't done so already, just add the lines::" msgstr "" diff --git a/library/codecs.po b/library/codecs.po index ea22b15a2..5eb0b8333 100644 --- a/library/codecs.po +++ b/library/codecs.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-10-15 09:15+0200\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -270,17 +270,13 @@ msgstr "" msgid "Hyphens and spaces are converted to underscore." msgstr "" -# Pas de majuscule en début car suit un deux-points. -#: library/codecs.rst:172 +#: library/codecs.rst:173 msgid "" -"Search function registration is not currently reversible, which may cause " -"problems in some cases, such as unit testing or module reloading." +"Unregister a codec search function and clear the registry's cache. If the " +"search function is not registered, do nothing." msgstr "" -"l'enregistrement d'une fonction de recherche n'est actuellement pas " -"réversible, ce qui peut entraîner des problèmes dans certains cas, par " -"exemple pour les tests unitaires ou le rechargement de module." -#: library/codecs.rst:176 +#: library/codecs.rst:179 msgid "" "While the builtin :func:`open` and the associated :mod:`io` module are the " "recommended approach for working with encoded text files, this module " @@ -293,7 +289,7 @@ msgstr "" "qui permettent l'utilisation d'une plus large gamme de codecs si vous " "travaillez avec des fichiers binaires :" -#: library/codecs.rst:183 +#: library/codecs.rst:186 msgid "" "Open an encoded file using the given *mode* and return an instance of :class:" "`StreamReaderWriter`, providing transparent encoding/decoding. The default " @@ -305,7 +301,7 @@ msgstr "" "est ouvert en lecture." # Pas de majuscule en début car suit un deux-points. -#: library/codecs.rst:189 +#: library/codecs.rst:192 msgid "" "Underlying encoded files are always opened in binary mode. No automatic " "conversion of ``'\\n'`` is done on reading and writing. The *mode* argument " @@ -318,7 +314,7 @@ msgstr "" "acceptable pour la fonction native :func:`open` ; le ``'b'`` est " "automatiquement ajouté." -#: library/codecs.rst:194 +#: library/codecs.rst:197 msgid "" "*encoding* specifies the encoding which is to be used for the file. Any " "encoding that encodes to and decodes from bytes is allowed, and the data " @@ -329,7 +325,7 @@ msgstr "" "données pris en charge par les méthodes relatives aux fichiers dépendent du " "codec utilisé." -#: library/codecs.rst:198 +#: library/codecs.rst:201 msgid "" "*errors* may be given to define the error handling. It defaults to " "``'strict'`` which causes a :exc:`ValueError` to be raised in case an " @@ -339,7 +335,7 @@ msgstr "" "par défaut est ``'strict'``, ce qui lève une :exc:`ValueError` en cas " "d'erreur lors du codage." -#: library/codecs.rst:201 +#: library/codecs.rst:204 msgid "" "*buffering* has the same meaning as for the built-in :func:`open` function. " "It defaults to -1 which means that the default buffer size will be used." @@ -348,7 +344,7 @@ msgstr "" "`open`. Il vaut `-1` par défaut, ce qui signifie que la taille par défaut du " "tampon est utilisée." -#: library/codecs.rst:207 +#: library/codecs.rst:210 msgid "" "Return a :class:`StreamRecoder` instance, a wrapped version of *file* which " "provides transparent transcoding. The original file is closed when the " @@ -358,7 +354,7 @@ msgstr "" "qui fournit un transcodage transparent. Le fichier original est fermé quand " "la version encapsulée est fermée." -#: library/codecs.rst:211 +#: library/codecs.rst:214 msgid "" "Data written to the wrapped file is decoded according to the given " "*data_encoding* and then written to the original file as bytes using " @@ -371,13 +367,13 @@ msgstr "" "original sont décodés conformément à *file_encoding* et le résultat est " "encodé en utilisant *data_encoding*." -#: library/codecs.rst:217 +#: library/codecs.rst:220 msgid "If *file_encoding* is not given, it defaults to *data_encoding*." msgstr "" "Si *file_encoding* n'est pas spécifié, la valeur par défaut est " "*data_encoding*." -#: library/codecs.rst:219 +#: library/codecs.rst:222 msgid "" "*errors* may be given to define the error handling. It defaults to " "``'strict'``, which causes :exc:`ValueError` to be raised in case an " @@ -387,7 +383,7 @@ msgstr "" "par défaut est ``'strict'``, ce qui lève une :exc:`ValueError` en cas " "d'erreur lors du codage." -#: library/codecs.rst:226 +#: library/codecs.rst:229 msgid "" "Uses an incremental encoder to iteratively encode the input provided by " "*iterator*. This function is a :term:`generator`. The *errors* argument (as " @@ -399,7 +395,7 @@ msgstr "" "`. L'argument *errors* (ainsi que tout autre argument passé par " "son nom) est transmis à l'encodeur incrémental." -#: library/codecs.rst:231 +#: library/codecs.rst:234 msgid "" "This function requires that the codec accept text :class:`str` objects to " "encode. Therefore it does not support bytes-to-bytes encoders such as " @@ -409,7 +405,7 @@ msgstr "" "class:`str`) en entrée. Par conséquent, il ne prend pas en charge les " "encodeurs *bytes* vers *bytes* tels que ``base64_codec``." -#: library/codecs.rst:238 +#: library/codecs.rst:241 msgid "" "Uses an incremental decoder to iteratively decode the input provided by " "*iterator*. This function is a :term:`generator`. The *errors* argument (as " @@ -421,7 +417,7 @@ msgstr "" "*errors* (ainsi que tout autre argument passé par son nom) est transmis au " "décodeur incrémental." -#: library/codecs.rst:243 +#: library/codecs.rst:246 msgid "" "This function requires that the codec accept :class:`bytes` objects to " "decode. Therefore it does not support text-to-text encoders such as " @@ -433,7 +429,7 @@ msgstr "" "vers texte tels que ``rot_13``, bien que ``rot_13`` puisse être utilisé de " "manière équivalente avec :func:`iterencode`." -#: library/codecs.rst:249 +#: library/codecs.rst:252 msgid "" "The module also provides the following constants which are useful for " "reading and writing to platform dependent files:" @@ -441,7 +437,7 @@ msgstr "" "Le module fournit également les constantes suivantes qui sont utiles pour " "lire et écrire les fichiers dépendants de la plateforme :" -#: library/codecs.rst:264 +#: library/codecs.rst:267 msgid "" "These constants define various byte sequences, being Unicode byte order " "marks (BOMs) for several encodings. They are used in UTF-16 and UTF-32 data " @@ -462,11 +458,11 @@ msgstr "" "et :const:`BOM_BE` pour :const:`BOM_UTF16_BE`. Les autres sont les marques " "BOM dans les encodages UTF-8 et UTF-32." -#: library/codecs.rst:278 +#: library/codecs.rst:281 msgid "Codec Base Classes" msgstr "Classes de base de codecs" -#: library/codecs.rst:280 +#: library/codecs.rst:283 msgid "" "The :mod:`codecs` module defines a set of base classes which define the " "interfaces for working with codec objects, and can also be used as the basis " @@ -477,7 +473,7 @@ msgstr "" "peuvent également être utilisées comme base pour des implémentations de " "codecs personnalisés." -#: library/codecs.rst:284 +#: library/codecs.rst:287 msgid "" "Each codec has to define four interfaces to make it usable as codec in " "Python: stateless encoder, stateless decoder, stream reader and stream " @@ -492,11 +488,11 @@ msgstr "" "Les auteurs de codecs doivent également définir comment le codec gère les " "erreurs d'encodage et de décodage." -#: library/codecs.rst:295 +#: library/codecs.rst:298 msgid "Error Handlers" msgstr "Gestionnaires d'erreurs" -#: library/codecs.rst:297 +#: library/codecs.rst:300 msgid "" "To simplify and standardize error handling, codecs may implement different " "error handling schemes by accepting the *errors* string argument. The " @@ -509,19 +505,19 @@ msgstr "" "les gestionnaires correspondants implémentés par tous les codecs Python " "standards :" -#: library/codecs.rst:328 library/codecs.rst:361 +#: library/codecs.rst:331 library/codecs.rst:364 msgid "Value" msgstr "Valeur" -#: library/codecs.rst:328 library/codecs.rst:1273 library/codecs.rst:1395 +#: library/codecs.rst:331 library/codecs.rst:1276 library/codecs.rst:1398 msgid "Meaning" msgstr "Signification" -#: library/codecs.rst:307 +#: library/codecs.rst:310 msgid "``'strict'``" msgstr "``'strict'``" -#: library/codecs.rst:307 +#: library/codecs.rst:310 msgid "" "Raise :exc:`UnicodeError` (or a subclass); this is the default. Implemented " "in :func:`strict_errors`." @@ -529,11 +525,11 @@ msgstr "" "Lève :exc:`UnicodeError` (ou une sous-classe) ; c'est la valeur par défaut. " "Implémenté dans :func:`strict_errors`." -#: library/codecs.rst:311 +#: library/codecs.rst:314 msgid "``'ignore'``" msgstr "``'ignore'``" -#: library/codecs.rst:311 +#: library/codecs.rst:314 msgid "" "Ignore the malformed data and continue without further notice. Implemented " "in :func:`ignore_errors`." @@ -541,7 +537,7 @@ msgstr "" "Ignore les données incorrectement formatées et continue sans rien signaler. " "Implémenté dans :func:`ignore_errors`." -#: library/codecs.rst:316 +#: library/codecs.rst:319 msgid "" "The following error handlers are only applicable to :term:`text encodings " "`:" @@ -549,11 +545,11 @@ msgstr "" "Les gestionnaires d'erreurs suivants ne s'appliquent que pour les :term:" "`encodeurs de texte ` :" -#: library/codecs.rst:330 +#: library/codecs.rst:333 msgid "``'replace'``" msgstr "``'replace'``" -#: library/codecs.rst:330 +#: library/codecs.rst:333 msgid "" "Replace with a suitable replacement marker; Python will use the official ``U" "+FFFD`` REPLACEMENT CHARACTER for the built-in codecs on decoding, and '?' " @@ -563,11 +559,11 @@ msgstr "" "caractère de substitution officiel ``U+FFFD`` pour les codecs natifs lors du " "décodage et `'?'` lors de l'encodage. Implémenté dans :func:`replace_errors`." -#: library/codecs.rst:337 +#: library/codecs.rst:340 msgid "``'xmlcharrefreplace'``" msgstr "``'xmlcharrefreplace'``" -#: library/codecs.rst:337 +#: library/codecs.rst:340 msgid "" "Replace with the appropriate XML character reference (only for encoding). " "Implemented in :func:`xmlcharrefreplace_errors`." @@ -575,11 +571,11 @@ msgstr "" "Remplace avec la référence de caractère XML adaptée (uniquement pour " "l'encodage). Implémenté dans :func:`xmlcharrefreplace_errors`." -#: library/codecs.rst:341 +#: library/codecs.rst:344 msgid "``'backslashreplace'``" msgstr "``'backslashreplace'``" -#: library/codecs.rst:341 +#: library/codecs.rst:344 msgid "" "Replace with backslashed escape sequences. Implemented in :func:" "`backslashreplace_errors`." @@ -587,11 +583,11 @@ msgstr "" "Remplace avec une séquence échappée par des antislashs. Implémenté dans :" "func:`backslashreplace_errors`." -#: library/codecs.rst:345 +#: library/codecs.rst:348 msgid "``'namereplace'``" msgstr "``'namereplace'``" -#: library/codecs.rst:345 +#: library/codecs.rst:348 msgid "" "Replace with ``\\N{...}`` escape sequences (only for encoding). Implemented " "in :func:`namereplace_errors`." @@ -599,11 +595,11 @@ msgstr "" "Remplace avec des séquences échappées par ``\\N{...}`` (uniquement pour " "l'encodage). Implémenté dans :func:`namereplace_errors`." -#: library/codecs.rst:349 +#: library/codecs.rst:352 msgid "``'surrogateescape'``" msgstr "``'surrogateescape'``" -#: library/codecs.rst:349 +#: library/codecs.rst:352 msgid "" "On decoding, replace byte with individual surrogate code ranging from ``U" "+DC80`` to ``U+DCFF``. This code will then be turned back into the same byte " @@ -615,26 +611,26 @@ msgstr "" "départ quand le gestionnaire d'erreurs ``'surrogateescape'`` est utilisé " "pour l'encodage des données (voir la :pep:`383` pour plus de détails)." -#: library/codecs.rst:358 +#: library/codecs.rst:361 msgid "" "In addition, the following error handler is specific to the given codecs:" msgstr "" "En plus, le gestionnaire d'erreurs suivant est spécifique aux codecs " "suivants :" -#: library/codecs.rst:361 +#: library/codecs.rst:364 msgid "Codecs" msgstr "Codecs" -#: library/codecs.rst:363 +#: library/codecs.rst:366 msgid "``'surrogatepass'``" msgstr "``'surrogatepass'``" -#: library/codecs.rst:363 +#: library/codecs.rst:366 msgid "utf-8, utf-16, utf-32, utf-16-be, utf-16-le, utf-32-be, utf-32-le" msgstr "utf-8, utf-16, utf-32, utf-16-be, utf-16-le, utf-32-be, utf-32-le" -#: library/codecs.rst:363 +#: library/codecs.rst:366 msgid "" "Allow encoding and decoding of surrogate codes. These codecs normally treat " "the presence of surrogates as an error." @@ -643,13 +639,13 @@ msgstr "" "traitent normalement la présence d'un code de substitution comme une erreur." # pas de majuscule en début de phrase car suit un deux-points. -#: library/codecs.rst:368 +#: library/codecs.rst:371 msgid "The ``'surrogateescape'`` and ``'surrogatepass'`` error handlers." msgstr "" "les gestionnaires d'erreurs ``'surrogateescape'`` et ``'surrogatepass'``." # pas de majuscule en début de phrase car suit un deux-points. -#: library/codecs.rst:371 +#: library/codecs.rst:374 msgid "" "The ``'surrogatepass'`` error handlers now works with utf-16\\* and " "utf-32\\* codecs." @@ -658,12 +654,12 @@ msgstr "" "codecs utf-16\\* et utf-32\\*." # pas de majuscule en début de phrase car suit un deux-points. -#: library/codecs.rst:374 +#: library/codecs.rst:377 msgid "The ``'namereplace'`` error handler." msgstr "le gestionnaire d'erreurs ``'namereplace'``." # pas de majuscule en début de phrase car suit un deux-points. -#: library/codecs.rst:377 +#: library/codecs.rst:380 msgid "" "The ``'backslashreplace'`` error handlers now works with decoding and " "translating." @@ -671,7 +667,7 @@ msgstr "" "le gestionnaire d'erreurs ``'backslashreplace'`` fonctionne maintenant pour " "le décodage et la traduction." -#: library/codecs.rst:381 +#: library/codecs.rst:384 msgid "" "The set of allowed values can be extended by registering a new named error " "handler:" @@ -679,14 +675,14 @@ msgstr "" "L'ensemble des valeurs autorisées peut être étendu en enregistrant un " "nouveau gestionnaire d'erreurs nommé :" -#: library/codecs.rst:386 +#: library/codecs.rst:389 msgid "" "Register the error handling function *error_handler* under the name *name*. " "The *error_handler* argument will be called during encoding and decoding in " "case of an error, when *name* is specified as the errors parameter." msgstr "" -#: library/codecs.rst:390 +#: library/codecs.rst:393 msgid "" "For encoding, *error_handler* will be called with a :exc:" "`UnicodeEncodeError` instance, which contains information about the location " @@ -701,40 +697,40 @@ msgid "" "position is out of bound an :exc:`IndexError` will be raised." msgstr "" -#: library/codecs.rst:402 +#: library/codecs.rst:405 msgid "" "Decoding and translating works similarly, except :exc:`UnicodeDecodeError` " "or :exc:`UnicodeTranslateError` will be passed to the handler and that the " "replacement from the error handler will be put into the output directly." msgstr "" -#: library/codecs.rst:407 +#: library/codecs.rst:410 msgid "" "Previously registered error handlers (including the standard error handlers) " "can be looked up by name:" msgstr "" -#: library/codecs.rst:412 +#: library/codecs.rst:415 msgid "Return the error handler previously registered under the name *name*." msgstr "" -#: library/codecs.rst:414 +#: library/codecs.rst:417 msgid "Raises a :exc:`LookupError` in case the handler cannot be found." msgstr "" -#: library/codecs.rst:416 +#: library/codecs.rst:419 msgid "" "The following standard error handlers are also made available as module " "level functions:" msgstr "" -#: library/codecs.rst:421 +#: library/codecs.rst:424 msgid "" "Implements the ``'strict'`` error handling: each encoding or decoding error " "raises a :exc:`UnicodeError`." msgstr "" -#: library/codecs.rst:427 +#: library/codecs.rst:430 msgid "" "Implements the ``'replace'`` error handling (for :term:`text encodings ` only): substitutes ``'?'`` for encoding errors (to be encoded by " @@ -742,44 +738,44 @@ msgid "" "decoding errors." msgstr "" -#: library/codecs.rst:435 +#: library/codecs.rst:438 msgid "" "Implements the ``'ignore'`` error handling: malformed data is ignored and " "encoding or decoding is continued without further notice." msgstr "" -#: library/codecs.rst:441 +#: library/codecs.rst:444 msgid "" "Implements the ``'xmlcharrefreplace'`` error handling (for encoding with :" "term:`text encodings ` only): the unencodable character is " "replaced by an appropriate XML character reference." msgstr "" -#: library/codecs.rst:448 +#: library/codecs.rst:451 msgid "" "Implements the ``'backslashreplace'`` error handling (for :term:`text " "encodings ` only): malformed data is replaced by a " "backslashed escape sequence." msgstr "" -#: library/codecs.rst:454 +#: library/codecs.rst:457 msgid "" "Implements the ``'namereplace'`` error handling (for encoding with :term:" "`text encodings ` only): the unencodable character is " "replaced by a ``\\N{...}`` escape sequence." msgstr "" -#: library/codecs.rst:464 +#: library/codecs.rst:467 msgid "Stateless Encoding and Decoding" msgstr "" -#: library/codecs.rst:466 +#: library/codecs.rst:469 msgid "" "The base :class:`Codec` class defines these methods which also define the " "function interfaces of the stateless encoder and decoder:" msgstr "" -#: library/codecs.rst:472 +#: library/codecs.rst:475 msgid "" "Encodes the object *input* and returns a tuple (output object, length " "consumed). For instance, :term:`text encoding` converts a string object to a " @@ -787,26 +783,26 @@ msgid "" "``iso-8859-1``)." msgstr "" -#: library/codecs.rst:499 +#: library/codecs.rst:502 msgid "" "The *errors* argument defines the error handling to apply. It defaults to " "``'strict'`` handling." msgstr "" -#: library/codecs.rst:480 +#: library/codecs.rst:483 msgid "" "The method may not store state in the :class:`Codec` instance. Use :class:" "`StreamWriter` for codecs which have to keep state in order to make encoding " "efficient." msgstr "" -#: library/codecs.rst:484 +#: library/codecs.rst:487 msgid "" "The encoder must be able to handle zero length input and return an empty " "object of the output object type in this situation." msgstr "" -#: library/codecs.rst:490 +#: library/codecs.rst:493 msgid "" "Decodes the object *input* and returns a tuple (output object, length " "consumed). For instance, for a :term:`text encoding`, decoding converts a " @@ -814,31 +810,31 @@ msgid "" "object." msgstr "" -#: library/codecs.rst:495 +#: library/codecs.rst:498 msgid "" "For text encodings and bytes-to-bytes codecs, *input* must be a bytes object " "or one which provides the read-only buffer interface -- for example, buffer " "objects and memory mapped files." msgstr "" -#: library/codecs.rst:502 +#: library/codecs.rst:505 msgid "" "The method may not store state in the :class:`Codec` instance. Use :class:" "`StreamReader` for codecs which have to keep state in order to make decoding " "efficient." msgstr "" -#: library/codecs.rst:506 +#: library/codecs.rst:509 msgid "" "The decoder must be able to handle zero length input and return an empty " "object of the output object type in this situation." msgstr "" -#: library/codecs.rst:511 +#: library/codecs.rst:514 msgid "Incremental Encoding and Decoding" msgstr "" -#: library/codecs.rst:513 +#: library/codecs.rst:516 msgid "" "The :class:`IncrementalEncoder` and :class:`IncrementalDecoder` classes " "provide the basic interface for incremental encoding and decoding. Encoding/" @@ -849,7 +845,7 @@ msgid "" "during method calls." msgstr "" -#: library/codecs.rst:521 +#: library/codecs.rst:524 msgid "" "The joined output of calls to the :meth:`~IncrementalEncoder.encode`/:meth:" "`~IncrementalDecoder.decode` method is the same as if all the single inputs " @@ -857,36 +853,36 @@ msgid "" "encoder/decoder." msgstr "" -#: library/codecs.rst:530 +#: library/codecs.rst:533 msgid "IncrementalEncoder Objects" msgstr "" -#: library/codecs.rst:532 +#: library/codecs.rst:535 msgid "" "The :class:`IncrementalEncoder` class is used for encoding an input in " "multiple steps. It defines the following methods which every incremental " "encoder must define in order to be compatible with the Python codec registry." msgstr "" -#: library/codecs.rst:539 +#: library/codecs.rst:542 msgid "Constructor for an :class:`IncrementalEncoder` instance." msgstr "" -#: library/codecs.rst:541 +#: library/codecs.rst:544 msgid "" "All incremental encoders must provide this constructor interface. They are " "free to add additional keyword arguments, but only the ones defined here are " "used by the Python codec registry." msgstr "" -#: library/codecs.rst:545 +#: library/codecs.rst:548 msgid "" "The :class:`IncrementalEncoder` may implement different error handling " "schemes by providing the *errors* keyword argument. See :ref:`error-" "handlers` for possible values." msgstr "" -#: library/codecs.rst:549 +#: library/codecs.rst:552 msgid "" "The *errors* argument will be assigned to an attribute of the same name. " "Assigning to this attribute makes it possible to switch between different " @@ -894,21 +890,21 @@ msgid "" "`IncrementalEncoder` object." msgstr "" -#: library/codecs.rst:557 +#: library/codecs.rst:560 msgid "" "Encodes *object* (taking the current state of the encoder into account) and " "returns the resulting encoded object. If this is the last call to :meth:" "`encode` *final* must be true (the default is false)." msgstr "" -#: library/codecs.rst:564 +#: library/codecs.rst:567 msgid "" "Reset the encoder to the initial state. The output is discarded: call ``." "encode(object, final=True)``, passing an empty byte or text string if " "necessary, to reset the encoder and to get the output." msgstr "" -#: library/codecs.rst:571 +#: library/codecs.rst:574 msgid "" "Return the current state of the encoder which must be an integer. The " "implementation should make sure that ``0`` is the most common state. (States " @@ -917,42 +913,42 @@ msgid "" "into an integer.)" msgstr "" -#: library/codecs.rst:580 +#: library/codecs.rst:583 msgid "" "Set the state of the encoder to *state*. *state* must be an encoder state " "returned by :meth:`getstate`." msgstr "" -#: library/codecs.rst:587 +#: library/codecs.rst:590 msgid "IncrementalDecoder Objects" msgstr "" -#: library/codecs.rst:589 +#: library/codecs.rst:592 msgid "" "The :class:`IncrementalDecoder` class is used for decoding an input in " "multiple steps. It defines the following methods which every incremental " "decoder must define in order to be compatible with the Python codec registry." msgstr "" -#: library/codecs.rst:596 +#: library/codecs.rst:599 msgid "Constructor for an :class:`IncrementalDecoder` instance." msgstr "" -#: library/codecs.rst:598 +#: library/codecs.rst:601 msgid "" "All incremental decoders must provide this constructor interface. They are " "free to add additional keyword arguments, but only the ones defined here are " "used by the Python codec registry." msgstr "" -#: library/codecs.rst:602 +#: library/codecs.rst:605 msgid "" "The :class:`IncrementalDecoder` may implement different error handling " "schemes by providing the *errors* keyword argument. See :ref:`error-" "handlers` for possible values." msgstr "" -#: library/codecs.rst:606 +#: library/codecs.rst:609 msgid "" "The *errors* argument will be assigned to an attribute of the same name. " "Assigning to this attribute makes it possible to switch between different " @@ -960,7 +956,7 @@ msgid "" "`IncrementalDecoder` object." msgstr "" -#: library/codecs.rst:614 +#: library/codecs.rst:617 msgid "" "Decodes *object* (taking the current state of the decoder into account) and " "returns the resulting decoded object. If this is the last call to :meth:" @@ -971,11 +967,11 @@ msgid "" "(which might raise an exception)." msgstr "" -#: library/codecs.rst:625 +#: library/codecs.rst:628 msgid "Reset the decoder to the initial state." msgstr "" -#: library/codecs.rst:630 +#: library/codecs.rst:633 msgid "" "Return the current state of the decoder. This must be a tuple with two " "items, the first must be the buffer containing the still undecoded input. " @@ -990,59 +986,59 @@ msgid "" "bytes of the resulting string into an integer.)" msgstr "" -#: library/codecs.rst:645 +#: library/codecs.rst:648 msgid "" "Set the state of the decoder to *state*. *state* must be a decoder state " "returned by :meth:`getstate`." msgstr "" -#: library/codecs.rst:650 +#: library/codecs.rst:653 msgid "Stream Encoding and Decoding" msgstr "" -#: library/codecs.rst:653 +#: library/codecs.rst:656 msgid "" "The :class:`StreamWriter` and :class:`StreamReader` classes provide generic " "working interfaces which can be used to implement new encoding submodules " "very easily. See :mod:`encodings.utf_8` for an example of how this is done." msgstr "" -#: library/codecs.rst:661 +#: library/codecs.rst:664 msgid "StreamWriter Objects" msgstr "" -#: library/codecs.rst:663 +#: library/codecs.rst:666 msgid "" "The :class:`StreamWriter` class is a subclass of :class:`Codec` and defines " "the following methods which every stream writer must define in order to be " "compatible with the Python codec registry." msgstr "" -#: library/codecs.rst:670 +#: library/codecs.rst:673 msgid "Constructor for a :class:`StreamWriter` instance." msgstr "" -#: library/codecs.rst:672 +#: library/codecs.rst:675 msgid "" "All stream writers must provide this constructor interface. They are free to " "add additional keyword arguments, but only the ones defined here are used by " "the Python codec registry." msgstr "" -#: library/codecs.rst:676 +#: library/codecs.rst:679 msgid "" "The *stream* argument must be a file-like object open for writing text or " "binary data, as appropriate for the specific codec." msgstr "" -#: library/codecs.rst:679 +#: library/codecs.rst:682 msgid "" "The :class:`StreamWriter` may implement different error handling schemes by " "providing the *errors* keyword argument. See :ref:`error-handlers` for the " "standard error handlers the underlying stream codec may support." msgstr "" -#: library/codecs.rst:683 +#: library/codecs.rst:686 msgid "" "The *errors* argument will be assigned to an attribute of the same name. " "Assigning to this attribute makes it possible to switch between different " @@ -1050,70 +1046,70 @@ msgid "" "object." msgstr "" -#: library/codecs.rst:689 +#: library/codecs.rst:692 msgid "Writes the object's contents encoded to the stream." msgstr "" -#: library/codecs.rst:694 +#: library/codecs.rst:697 msgid "" "Writes the concatenated list of strings to the stream (possibly by reusing " "the :meth:`write` method). The standard bytes-to-bytes codecs do not support " "this method." msgstr "" -#: library/codecs.rst:796 +#: library/codecs.rst:799 msgid "Resets the codec buffers used for keeping internal state." msgstr "" -#: library/codecs.rst:703 +#: library/codecs.rst:706 msgid "" "Calling this method should ensure that the data on the output is put into a " "clean state that allows appending of new fresh data without having to rescan " "the whole stream to recover state." msgstr "" -#: library/codecs.rst:708 +#: library/codecs.rst:711 msgid "" "In addition to the above methods, the :class:`StreamWriter` must also " "inherit all other methods and attributes from the underlying stream." msgstr "" -#: library/codecs.rst:715 +#: library/codecs.rst:718 msgid "StreamReader Objects" msgstr "" -#: library/codecs.rst:717 +#: library/codecs.rst:720 msgid "" "The :class:`StreamReader` class is a subclass of :class:`Codec` and defines " "the following methods which every stream reader must define in order to be " "compatible with the Python codec registry." msgstr "" -#: library/codecs.rst:724 +#: library/codecs.rst:727 msgid "Constructor for a :class:`StreamReader` instance." msgstr "" -#: library/codecs.rst:726 +#: library/codecs.rst:729 msgid "" "All stream readers must provide this constructor interface. They are free to " "add additional keyword arguments, but only the ones defined here are used by " "the Python codec registry." msgstr "" -#: library/codecs.rst:730 +#: library/codecs.rst:733 msgid "" "The *stream* argument must be a file-like object open for reading text or " "binary data, as appropriate for the specific codec." msgstr "" -#: library/codecs.rst:733 +#: library/codecs.rst:736 msgid "" "The :class:`StreamReader` may implement different error handling schemes by " "providing the *errors* keyword argument. See :ref:`error-handlers` for the " "standard error handlers the underlying stream codec may support." msgstr "" -#: library/codecs.rst:737 +#: library/codecs.rst:740 msgid "" "The *errors* argument will be assigned to an attribute of the same name. " "Assigning to this attribute makes it possible to switch between different " @@ -1121,24 +1117,24 @@ msgid "" "object." msgstr "" -#: library/codecs.rst:741 +#: library/codecs.rst:744 msgid "" "The set of allowed values for the *errors* argument can be extended with :" "func:`register_error`." msgstr "" -#: library/codecs.rst:747 +#: library/codecs.rst:750 msgid "Decodes data from the stream and returns the resulting object." msgstr "" -#: library/codecs.rst:749 +#: library/codecs.rst:752 msgid "" "The *chars* argument indicates the number of decoded code points or bytes to " "return. The :func:`read` method will never return more data than requested, " "but it might return less, if there is not enough available." msgstr "" -#: library/codecs.rst:754 +#: library/codecs.rst:757 msgid "" "The *size* argument indicates the approximate maximum number of encoded " "bytes or code points to read for decoding. The decoder can modify this " @@ -1147,13 +1143,13 @@ msgid "" "huge files in one step." msgstr "" -#: library/codecs.rst:761 +#: library/codecs.rst:764 msgid "" "The *firstline* flag indicates that it would be sufficient to only return " "the first line, if there are decoding errors on later lines." msgstr "" -#: library/codecs.rst:765 +#: library/codecs.rst:768 msgid "" "The method should use a greedy read strategy meaning that it should read as " "much data as is allowed within the definition of the encoding and the given " @@ -1161,68 +1157,68 @@ msgid "" "the stream, these should be read too." msgstr "" -#: library/codecs.rst:773 +#: library/codecs.rst:776 msgid "Read one line from the input stream and return the decoded data." msgstr "" -#: library/codecs.rst:775 +#: library/codecs.rst:778 msgid "" "*size*, if given, is passed as size argument to the stream's :meth:`read` " "method." msgstr "" -#: library/codecs.rst:778 +#: library/codecs.rst:781 msgid "" "If *keepends* is false line-endings will be stripped from the lines returned." msgstr "" -#: library/codecs.rst:784 +#: library/codecs.rst:787 msgid "" "Read all lines available on the input stream and return them as a list of " "lines." msgstr "" -#: library/codecs.rst:787 +#: library/codecs.rst:790 msgid "" "Line-endings are implemented using the codec's :meth:`decode` method and are " "included in the list entries if *keepends* is true." msgstr "" -#: library/codecs.rst:790 +#: library/codecs.rst:793 msgid "" "*sizehint*, if given, is passed as the *size* argument to the stream's :meth:" "`read` method." msgstr "" -#: library/codecs.rst:798 +#: library/codecs.rst:801 msgid "" "Note that no stream repositioning should take place. This method is " "primarily intended to be able to recover from decoding errors." msgstr "" -#: library/codecs.rst:802 +#: library/codecs.rst:805 msgid "" "In addition to the above methods, the :class:`StreamReader` must also " "inherit all other methods and attributes from the underlying stream." msgstr "" -#: library/codecs.rst:808 +#: library/codecs.rst:811 msgid "StreamReaderWriter Objects" msgstr "" -#: library/codecs.rst:810 +#: library/codecs.rst:813 msgid "" "The :class:`StreamReaderWriter` is a convenience class that allows wrapping " "streams which work in both read and write modes." msgstr "" -#: library/codecs.rst:837 +#: library/codecs.rst:840 msgid "" "The design is such that one can use the factory functions returned by the :" "func:`lookup` function to construct the instance." msgstr "" -#: library/codecs.rst:819 +#: library/codecs.rst:822 msgid "" "Creates a :class:`StreamReaderWriter` instance. *stream* must be a file-like " "object. *Reader* and *Writer* must be factory functions or classes providing " @@ -1231,24 +1227,24 @@ msgid "" "writers." msgstr "" -#: library/codecs.rst:824 +#: library/codecs.rst:827 msgid "" ":class:`StreamReaderWriter` instances define the combined interfaces of :" "class:`StreamReader` and :class:`StreamWriter` classes. They inherit all " "other methods and attributes from the underlying stream." msgstr "" -#: library/codecs.rst:832 +#: library/codecs.rst:835 msgid "StreamRecoder Objects" msgstr "" -#: library/codecs.rst:834 +#: library/codecs.rst:837 msgid "" "The :class:`StreamRecoder` translates data from one encoding to another, " "which is sometimes useful when dealing with different encoding environments." msgstr "" -#: library/codecs.rst:843 +#: library/codecs.rst:846 msgid "" "Creates a :class:`StreamRecoder` instance which implements a two-way " "conversion: *encode* and *decode* work on the frontend — the data visible to " @@ -1256,17 +1252,17 @@ msgid "" "work on the backend — the data in *stream*." msgstr "" -#: library/codecs.rst:848 +#: library/codecs.rst:851 msgid "" "You can use these objects to do transparent transcodings, e.g., from Latin-1 " "to UTF-8 and back." msgstr "" -#: library/codecs.rst:851 +#: library/codecs.rst:854 msgid "The *stream* argument must be a file-like object." msgstr "" -#: library/codecs.rst:853 +#: library/codecs.rst:856 msgid "" "The *encode* and *decode* arguments must adhere to the :class:`Codec` " "interface. *Reader* and *Writer* must be factory functions or classes " @@ -1274,24 +1270,24 @@ msgid "" "interface respectively." msgstr "" -#: library/codecs.rst:858 +#: library/codecs.rst:861 msgid "" "Error handling is done in the same way as defined for the stream readers and " "writers." msgstr "" -#: library/codecs.rst:862 +#: library/codecs.rst:865 msgid "" ":class:`StreamRecoder` instances define the combined interfaces of :class:" "`StreamReader` and :class:`StreamWriter` classes. They inherit all other " "methods and attributes from the underlying stream." msgstr "" -#: library/codecs.rst:870 +#: library/codecs.rst:873 msgid "Encodings and Unicode" msgstr "" -#: library/codecs.rst:872 +#: library/codecs.rst:875 msgid "" "Strings are stored internally as sequences of code points in range ``0x0``--" "``0x10FFFF``. (See :pep:`393` for more details about the implementation.) " @@ -1303,7 +1299,7 @@ msgid "" "collectivity referred to as :term:`text encodings `." msgstr "" -#: library/codecs.rst:882 +#: library/codecs.rst:885 msgid "" "The simplest text encoding (called ``'latin-1'`` or ``'iso-8859-1'``) maps " "the code points 0--255 to the bytes ``0x0``--``0xff``, which means that a " @@ -1314,7 +1310,7 @@ msgid "" "position 3: ordinal not in range(256)``." msgstr "" -#: library/codecs.rst:890 +#: library/codecs.rst:893 msgid "" "There's another group of encodings (the so called charmap encodings) that " "choose a different subset of all Unicode code points and how these code " @@ -1324,7 +1320,7 @@ msgid "" "that shows you which character is mapped to which byte value." msgstr "" -#: library/codecs.rst:897 +#: library/codecs.rst:900 msgid "" "All of these encodings can only encode 256 of the 1114112 code points " "defined in Unicode. A simple and straightforward way that can store each " @@ -1354,7 +1350,7 @@ msgid "" "normal character that will be decoded like any other." msgstr "" -#: library/codecs.rst:923 +#: library/codecs.rst:926 msgid "" "There's another encoding that is able to encoding the full range of Unicode " "characters: UTF-8. UTF-8 is an 8-bit encoding, which means there are no " @@ -1365,60 +1361,60 @@ msgid "" "which when concatenated give the Unicode character):" msgstr "" -#: library/codecs.rst:932 +#: library/codecs.rst:935 msgid "Range" msgstr "*Range*" -#: library/codecs.rst:932 +#: library/codecs.rst:935 #, fuzzy msgid "Encoding" msgstr "Encodages" -#: library/codecs.rst:934 +#: library/codecs.rst:937 msgid "``U-00000000`` ... ``U-0000007F``" msgstr "``U-00000000`` ... ``U-0000007F``" -#: library/codecs.rst:934 +#: library/codecs.rst:937 msgid "0xxxxxxx" msgstr "0xxxxxxx" -#: library/codecs.rst:936 +#: library/codecs.rst:939 msgid "``U-00000080`` ... ``U-000007FF``" msgstr "``U-00000080`` ... ``U-000007FF``" -#: library/codecs.rst:936 +#: library/codecs.rst:939 msgid "110xxxxx 10xxxxxx" msgstr "110xxxxx 10xxxxxx" -#: library/codecs.rst:938 +#: library/codecs.rst:941 msgid "``U-00000800`` ... ``U-0000FFFF``" msgstr "``U-00000800`` ... ``U-0000FFFF``" -#: library/codecs.rst:938 +#: library/codecs.rst:941 msgid "1110xxxx 10xxxxxx 10xxxxxx" msgstr "1110xxxx 10xxxxxx 10xxxxxx" -#: library/codecs.rst:940 +#: library/codecs.rst:943 msgid "``U-00010000`` ... ``U-0010FFFF``" msgstr "``U-00010000`` ... ``U-0010FFFF``" -#: library/codecs.rst:940 +#: library/codecs.rst:943 msgid "11110xxx 10xxxxxx 10xxxxxx 10xxxxxx" msgstr "11110xxx 10xxxxxx 10xxxxxx 10xxxxxx" -#: library/codecs.rst:943 +#: library/codecs.rst:946 msgid "" "The least significant bit of the Unicode character is the rightmost x bit." msgstr "" -#: library/codecs.rst:945 +#: library/codecs.rst:948 msgid "" "As UTF-8 is an 8-bit encoding no BOM is required and any ``U+FEFF`` " "character in the decoded string (even if it's the first character) is " "treated as a ``ZERO WIDTH NO-BREAK SPACE``." msgstr "" -#: library/codecs.rst:949 +#: library/codecs.rst:952 msgid "" "Without external information it's impossible to reliably determine which " "encoding was used for encoding a string. Each charmap encoding can decode " @@ -1445,7 +1441,7 @@ msgstr "RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK" msgid "INVERTED QUESTION MARK" msgstr "INVERTED QUESTION MARK" -#: library/codecs.rst:965 +#: library/codecs.rst:968 msgid "" "in iso-8859-1), this increases the probability that a ``utf-8-sig`` encoding " "can be correctly guessed from the byte sequence. So here the BOM is not used " @@ -1457,11 +1453,11 @@ msgid "" "the use of the BOM is discouraged and should generally be avoided." msgstr "" -#: library/codecs.rst:978 +#: library/codecs.rst:981 msgid "Standard Encodings" msgstr "" -#: library/codecs.rst:980 +#: library/codecs.rst:983 msgid "" "Python comes with a number of codecs built-in, either implemented as C " "functions or with dictionaries as mapping tables. The following table lists " @@ -1473,7 +1469,7 @@ msgid "" "alias for the ``'utf_8'`` codec." msgstr "" -#: library/codecs.rst:990 +#: library/codecs.rst:993 msgid "" "Some common encodings can bypass the codecs lookup machinery to improve " "performance. These optimization opportunities are only recognized by CPython " @@ -1483,11 +1479,11 @@ msgid "" "Using alternative aliases for these encodings may result in slower execution." msgstr "" -#: library/codecs.rst:998 +#: library/codecs.rst:1001 msgid "Optimization opportunity recognized for us-ascii." msgstr "" -#: library/codecs.rst:1001 +#: library/codecs.rst:1004 msgid "" "Many of the character sets support the same languages. They vary in " "individual characters (e.g. whether the EURO SIGN is supported or not), and " @@ -1495,485 +1491,485 @@ msgid "" "languages in particular, the following variants typically exist:" msgstr "" -#: library/codecs.rst:1006 +#: library/codecs.rst:1009 msgid "an ISO 8859 codeset" msgstr "" -#: library/codecs.rst:1008 +#: library/codecs.rst:1011 msgid "" "a Microsoft Windows code page, which is typically derived from an 8859 " "codeset, but replaces control characters with additional graphic characters" msgstr "" -#: library/codecs.rst:1011 +#: library/codecs.rst:1014 msgid "an IBM EBCDIC code page" msgstr "" -#: library/codecs.rst:1013 +#: library/codecs.rst:1016 msgid "an IBM PC code page, which is ASCII compatible" msgstr "" -#: library/codecs.rst:1273 library/codecs.rst:1395 +#: library/codecs.rst:1276 library/codecs.rst:1398 msgid "Codec" msgstr "" -#: library/codecs.rst:1273 library/codecs.rst:1395 +#: library/codecs.rst:1276 library/codecs.rst:1398 msgid "Aliases" msgstr "" -#: library/codecs.rst:1018 +#: library/codecs.rst:1021 msgid "Languages" msgstr "" -#: library/codecs.rst:1020 +#: library/codecs.rst:1023 msgid "ascii" msgstr "*ascii*" -#: library/codecs.rst:1020 +#: library/codecs.rst:1023 msgid "646, us-ascii" msgstr "*646*, *us-ascii*" -#: library/codecs.rst:1026 library/codecs.rst:1034 +#: library/codecs.rst:1029 library/codecs.rst:1037 msgid "English" msgstr "Anglais" -#: library/codecs.rst:1022 +#: library/codecs.rst:1025 msgid "big5" msgstr "*big5*" -#: library/codecs.rst:1022 +#: library/codecs.rst:1025 msgid "big5-tw, csbig5" msgstr "*big5-tw*, *csbig5*" -#: library/codecs.rst:1024 library/codecs.rst:1082 +#: library/codecs.rst:1027 library/codecs.rst:1085 msgid "Traditional Chinese" msgstr "Chinois Traditionnel" -#: library/codecs.rst:1024 +#: library/codecs.rst:1027 msgid "big5hkscs" msgstr "*big5hkscs*" -#: library/codecs.rst:1024 +#: library/codecs.rst:1027 msgid "big5-hkscs, hkscs" msgstr "*big5-hkscs*, *hkscs*" -#: library/codecs.rst:1026 +#: library/codecs.rst:1029 msgid "cp037" msgstr "*cp037*" -#: library/codecs.rst:1026 +#: library/codecs.rst:1029 msgid "IBM037, IBM039" msgstr "*IBM037*, *IBM039*" -#: library/codecs.rst:1028 +#: library/codecs.rst:1031 msgid "cp273" msgstr "*cp273*" -#: library/codecs.rst:1028 +#: library/codecs.rst:1031 msgid "273, IBM273, csIBM273" msgstr "*273*, *IBM273*, *csIBM273*" -#: library/codecs.rst:1028 +#: library/codecs.rst:1031 msgid "German" msgstr "Allemand" -#: library/codecs.rst:1032 +#: library/codecs.rst:1035 msgid "cp424" msgstr "*cp424*" -#: library/codecs.rst:1032 +#: library/codecs.rst:1035 msgid "EBCDIC-CP-HE, IBM424" msgstr "*EBCDIC-CP-HE*, *IBM424*" -#: library/codecs.rst:1052 library/codecs.rst:1105 library/codecs.rst:1168 +#: library/codecs.rst:1055 library/codecs.rst:1108 library/codecs.rst:1171 msgid "Hebrew" msgstr "Hébreux" -#: library/codecs.rst:1034 +#: library/codecs.rst:1037 msgid "cp437" msgstr "*cp437*" -#: library/codecs.rst:1034 +#: library/codecs.rst:1037 msgid "437, IBM437" msgstr "*437*, *IBM437*" -#: library/codecs.rst:1036 +#: library/codecs.rst:1039 msgid "cp500" msgstr "*cp500*" -#: library/codecs.rst:1036 +#: library/codecs.rst:1039 msgid "EBCDIC-CP-BE, EBCDIC-CP-CH, IBM500" msgstr "*EBCDIC-CP-BE*, *EBCDIC-CP-CH*, *IBM500*" -#: library/codecs.rst:1045 library/codecs.rst:1092 library/codecs.rst:1152 -#: library/codecs.rst:1208 +#: library/codecs.rst:1048 library/codecs.rst:1095 library/codecs.rst:1155 +#: library/codecs.rst:1211 msgid "Western Europe" msgstr "Europe de l'ouest" -#: library/codecs.rst:1039 +#: library/codecs.rst:1042 msgid "cp720" msgstr "*cp720*" -#: library/codecs.rst:1066 library/codecs.rst:1164 +#: library/codecs.rst:1069 library/codecs.rst:1167 msgid "Arabic" msgstr "Arabe" -#: library/codecs.rst:1041 +#: library/codecs.rst:1044 msgid "cp737" msgstr "*cp737*" -#: library/codecs.rst:1072 library/codecs.rst:1101 library/codecs.rst:1201 +#: library/codecs.rst:1075 library/codecs.rst:1104 library/codecs.rst:1204 msgid "Greek" msgstr "Grec" -#: library/codecs.rst:1043 +#: library/codecs.rst:1046 msgid "cp775" msgstr "*cp775*" -#: library/codecs.rst:1043 +#: library/codecs.rst:1046 msgid "IBM775" msgstr "*IBM775*" -#: library/codecs.rst:1109 library/codecs.rst:1176 +#: library/codecs.rst:1112 library/codecs.rst:1179 msgid "Baltic languages" msgstr "Langues Baltiques" -#: library/codecs.rst:1045 +#: library/codecs.rst:1048 msgid "cp850" msgstr "*cp850*" -#: library/codecs.rst:1045 +#: library/codecs.rst:1048 msgid "850, IBM850" msgstr "*850*, *IBM850*" -#: library/codecs.rst:1047 +#: library/codecs.rst:1050 msgid "cp852" msgstr "*cp852*" -#: library/codecs.rst:1047 +#: library/codecs.rst:1050 msgid "852, IBM852" msgstr "*852*, *IBM852*" -#: library/codecs.rst:1094 library/codecs.rst:1205 +#: library/codecs.rst:1097 library/codecs.rst:1208 msgid "Central and Eastern Europe" msgstr "Europe centrale et Europe de l'Est" -#: library/codecs.rst:1049 +#: library/codecs.rst:1052 msgid "cp855" msgstr "*cp855*" -#: library/codecs.rst:1049 +#: library/codecs.rst:1052 msgid "855, IBM855" msgstr "*855*, *IBM855*" -#: library/codecs.rst:1096 library/codecs.rst:1198 +#: library/codecs.rst:1099 library/codecs.rst:1201 msgid "Bulgarian, Byelorussian, Macedonian, Russian, Serbian" msgstr "Bulgare, Biélorusse, Macédonien, Russe, Serbe" -#: library/codecs.rst:1052 +#: library/codecs.rst:1055 msgid "cp856" msgstr "*cp856*" -#: library/codecs.rst:1054 +#: library/codecs.rst:1057 msgid "cp857" msgstr "*cp857*" -#: library/codecs.rst:1054 +#: library/codecs.rst:1057 msgid "857, IBM857" msgstr "*857*, *IBM857*" -#: library/codecs.rst:1086 library/codecs.rst:1170 library/codecs.rst:1210 +#: library/codecs.rst:1089 library/codecs.rst:1173 library/codecs.rst:1213 msgid "Turkish" msgstr "Turc" -#: library/codecs.rst:1056 +#: library/codecs.rst:1059 msgid "cp858" msgstr "*cp858*" -#: library/codecs.rst:1056 +#: library/codecs.rst:1059 msgid "858, IBM858" msgstr "*858*, *IBM858*" -#: library/codecs.rst:1058 +#: library/codecs.rst:1061 msgid "cp860" msgstr "*cp860*" -#: library/codecs.rst:1058 +#: library/codecs.rst:1061 msgid "860, IBM860" msgstr "*860*, *IBM860*" -#: library/codecs.rst:1058 +#: library/codecs.rst:1061 msgid "Portuguese" msgstr "Portugais" -#: library/codecs.rst:1060 +#: library/codecs.rst:1063 msgid "cp861" msgstr "*cp861*" -#: library/codecs.rst:1060 +#: library/codecs.rst:1063 msgid "861, CP-IS, IBM861" msgstr "*861*, *CP-IS*, *IBM861*" -#: library/codecs.rst:1203 +#: library/codecs.rst:1206 msgid "Icelandic" msgstr "Islandais" -#: library/codecs.rst:1062 +#: library/codecs.rst:1065 msgid "cp862" msgstr "*cp862*" -#: library/codecs.rst:1062 +#: library/codecs.rst:1065 msgid "862, IBM862" msgstr "*862*, *IBM862*" -#: library/codecs.rst:1064 +#: library/codecs.rst:1067 msgid "cp863" msgstr "*cp863*" -#: library/codecs.rst:1064 +#: library/codecs.rst:1067 msgid "863, IBM863" msgstr "*863*, *IBM863*" -#: library/codecs.rst:1064 +#: library/codecs.rst:1067 msgid "Canadian" msgstr "Canadien" -#: library/codecs.rst:1066 +#: library/codecs.rst:1069 msgid "cp864" msgstr "*cp864*" -#: library/codecs.rst:1066 +#: library/codecs.rst:1069 msgid "IBM864" msgstr "*IBM864*" -#: library/codecs.rst:1068 +#: library/codecs.rst:1071 msgid "cp865" msgstr "*cp865*" -#: library/codecs.rst:1068 +#: library/codecs.rst:1071 msgid "865, IBM865" msgstr "*865*, *IBM865*" -#: library/codecs.rst:1068 +#: library/codecs.rst:1071 msgid "Danish, Norwegian" msgstr "" -#: library/codecs.rst:1070 +#: library/codecs.rst:1073 msgid "cp866" msgstr "*cp866*" -#: library/codecs.rst:1070 +#: library/codecs.rst:1073 msgid "866, IBM866" msgstr "*866*, *IBM866*" -#: library/codecs.rst:1186 +#: library/codecs.rst:1189 msgid "Russian" msgstr "Russe" -#: library/codecs.rst:1072 +#: library/codecs.rst:1075 msgid "cp869" msgstr "*cp869*" -#: library/codecs.rst:1072 +#: library/codecs.rst:1075 msgid "869, CP-GR, IBM869" msgstr "*869*, *CP-GR*, *IBM869*" -#: library/codecs.rst:1074 +#: library/codecs.rst:1077 msgid "cp874" msgstr "*cp874*" -#: library/codecs.rst:1074 +#: library/codecs.rst:1077 msgid "Thai" msgstr "" -#: library/codecs.rst:1076 +#: library/codecs.rst:1079 msgid "cp875" msgstr "*cp875*" -#: library/codecs.rst:1078 +#: library/codecs.rst:1081 msgid "cp932" msgstr "*cp932*" -#: library/codecs.rst:1078 +#: library/codecs.rst:1081 msgid "932, ms932, mskanji, ms-kanji" msgstr "*932*, *ms932*, *mskanji*, *ms-kanji*" -#: library/codecs.rst:1113 library/codecs.rst:1117 library/codecs.rst:1137 -#: library/codecs.rst:1145 library/codecs.rst:1215 library/codecs.rst:1221 +#: library/codecs.rst:1116 library/codecs.rst:1120 library/codecs.rst:1140 +#: library/codecs.rst:1148 library/codecs.rst:1218 library/codecs.rst:1224 msgid "Japanese" msgstr "" -#: library/codecs.rst:1080 +#: library/codecs.rst:1083 msgid "cp949" msgstr "*cp949*" -#: library/codecs.rst:1080 +#: library/codecs.rst:1083 msgid "949, ms949, uhc" msgstr "*949*, *ms949*, *uhc*" -#: library/codecs.rst:1119 library/codecs.rst:1184 +#: library/codecs.rst:1122 library/codecs.rst:1187 msgid "Korean" msgstr "" -#: library/codecs.rst:1082 +#: library/codecs.rst:1085 msgid "cp950" msgstr "*cp950*" -#: library/codecs.rst:1082 +#: library/codecs.rst:1085 msgid "950, ms950" msgstr "*950*, *ms950*" -#: library/codecs.rst:1084 +#: library/codecs.rst:1087 msgid "cp1006" msgstr "*cp1006*" -#: library/codecs.rst:1084 +#: library/codecs.rst:1087 msgid "Urdu" msgstr "" -#: library/codecs.rst:1086 +#: library/codecs.rst:1089 msgid "cp1026" msgstr "*cp1026*" -#: library/codecs.rst:1086 +#: library/codecs.rst:1089 msgid "ibm1026" msgstr "*ibm1026*" -#: library/codecs.rst:1088 +#: library/codecs.rst:1091 msgid "cp1125" msgstr "*cp1125*" -#: library/codecs.rst:1088 +#: library/codecs.rst:1091 msgid "1125, ibm1125, cp866u, ruscii" msgstr "*1125*, *ibm1125*, *cp866u*, *ruscii*" -#: library/codecs.rst:1192 +#: library/codecs.rst:1195 msgid "Ukrainian" msgstr "" -#: library/codecs.rst:1092 +#: library/codecs.rst:1095 msgid "cp1140" msgstr "*cp1140*" -#: library/codecs.rst:1092 +#: library/codecs.rst:1095 msgid "ibm1140" msgstr "*ibm1140*" -#: library/codecs.rst:1094 +#: library/codecs.rst:1097 msgid "cp1250" msgstr "*cp1250*" -#: library/codecs.rst:1094 +#: library/codecs.rst:1097 msgid "windows-1250" msgstr "*windows-1250*" -#: library/codecs.rst:1096 +#: library/codecs.rst:1099 msgid "cp1251" msgstr "*cp1251*" -#: library/codecs.rst:1096 +#: library/codecs.rst:1099 msgid "windows-1251" msgstr "*windows-1251*" -#: library/codecs.rst:1099 +#: library/codecs.rst:1102 msgid "cp1252" msgstr "*cp1252*" -#: library/codecs.rst:1099 +#: library/codecs.rst:1102 msgid "windows-1252" msgstr "*windows-1252*" -#: library/codecs.rst:1101 +#: library/codecs.rst:1104 msgid "cp1253" msgstr "*cp1253*" -#: library/codecs.rst:1101 +#: library/codecs.rst:1104 msgid "windows-1253" msgstr "*windows-1253*" -#: library/codecs.rst:1103 +#: library/codecs.rst:1106 msgid "cp1254" msgstr "*cp1254*" -#: library/codecs.rst:1103 +#: library/codecs.rst:1106 msgid "windows-1254" msgstr "*windows-1254*" -#: library/codecs.rst:1105 +#: library/codecs.rst:1108 msgid "cp1255" msgstr "*cp1255*" -#: library/codecs.rst:1105 +#: library/codecs.rst:1108 msgid "windows-1255" msgstr "*windows-1255*" -#: library/codecs.rst:1107 +#: library/codecs.rst:1110 msgid "cp1256" msgstr "*cp1256*" -#: library/codecs.rst:1107 +#: library/codecs.rst:1110 msgid "windows-1256" msgstr "*windows-1256*" -#: library/codecs.rst:1109 +#: library/codecs.rst:1112 msgid "cp1257" msgstr "*cp1257*" -#: library/codecs.rst:1109 +#: library/codecs.rst:1112 msgid "windows-1257" msgstr "*windows-1257*" -#: library/codecs.rst:1111 +#: library/codecs.rst:1114 msgid "cp1258" msgstr "*cp1258*" -#: library/codecs.rst:1111 +#: library/codecs.rst:1114 msgid "windows-1258" msgstr "*windows-1258*" -#: library/codecs.rst:1111 +#: library/codecs.rst:1114 msgid "Vietnamese" msgstr "" -#: library/codecs.rst:1113 +#: library/codecs.rst:1116 msgid "euc_jp" msgstr "*euc_jp*" -#: library/codecs.rst:1113 +#: library/codecs.rst:1116 msgid "eucjp, ujis, u-jis" msgstr "*eucjp*, *ujis*, *u-jis*" -#: library/codecs.rst:1115 +#: library/codecs.rst:1118 msgid "euc_jis_2004" msgstr "*euc_jis_2004*" -#: library/codecs.rst:1115 +#: library/codecs.rst:1118 msgid "jisx0213, eucjis2004" msgstr "*jisx0213*, *eucjis2004*" -#: library/codecs.rst:1117 +#: library/codecs.rst:1120 msgid "euc_jisx0213" msgstr "*euc_jisx0213*" -#: library/codecs.rst:1117 +#: library/codecs.rst:1120 msgid "eucjisx0213" msgstr "*eucjisx0213*" -#: library/codecs.rst:1119 +#: library/codecs.rst:1122 msgid "euc_kr" msgstr "*euc_kr*" -#: library/codecs.rst:1119 +#: library/codecs.rst:1122 msgid "euckr, korean, ksc5601, ks_c-5601, ks_c-5601-1987, ksx1001, ks_x-1001" msgstr "" "*euckr*, *korean*, *ksc5601*, *ks_c-5601*, *ks_c-5601-1987*, *ksx1001*, " "*ks_x-1001*" -#: library/codecs.rst:1123 +#: library/codecs.rst:1126 msgid "gb2312" msgstr "*gb2312*" -#: library/codecs.rst:1123 +#: library/codecs.rst:1126 msgid "" "chinese, csiso58gb231280, euc-cn, euccn, eucgb2312-cn, gb2312-1980, " "gb2312-80, iso-ir-58" @@ -1981,445 +1977,445 @@ msgstr "" "*chinese*, *csiso58gb231280*, *euc-cn*, *euccn*, *eucgb2312-cn*, " "*gb2312-1980*, *gb2312-80*, *iso-ir-58*" -#: library/codecs.rst:1132 +#: library/codecs.rst:1135 msgid "Simplified Chinese" msgstr "" -#: library/codecs.rst:1128 +#: library/codecs.rst:1131 msgid "gbk" msgstr "*gbk*" -#: library/codecs.rst:1128 +#: library/codecs.rst:1131 msgid "936, cp936, ms936" msgstr "*936*, *cp936*, *ms936*" -#: library/codecs.rst:1130 +#: library/codecs.rst:1133 msgid "Unified Chinese" msgstr "" -#: library/codecs.rst:1130 +#: library/codecs.rst:1133 msgid "gb18030" msgstr "*gb18030*" -#: library/codecs.rst:1130 +#: library/codecs.rst:1133 msgid "gb18030-2000" msgstr "*gb18030-2000*" -#: library/codecs.rst:1132 +#: library/codecs.rst:1135 msgid "hz" msgstr "*hz*" -#: library/codecs.rst:1132 +#: library/codecs.rst:1135 msgid "hzgb, hz-gb, hz-gb-2312" msgstr "*hzgb*, *hz-gb*, *hz-gb-2312*" -#: library/codecs.rst:1134 +#: library/codecs.rst:1137 msgid "iso2022_jp" msgstr "*iso2022_jp*" -#: library/codecs.rst:1134 +#: library/codecs.rst:1137 msgid "csiso2022jp, iso2022jp, iso-2022-jp" msgstr "*csiso2022jp*, *iso2022jp*, *iso-2022-jp*" -#: library/codecs.rst:1137 +#: library/codecs.rst:1140 msgid "iso2022_jp_1" msgstr "*iso2022_jp_1*" -#: library/codecs.rst:1137 +#: library/codecs.rst:1140 msgid "iso2022jp-1, iso-2022-jp-1" msgstr "*iso2022jp-1*, *iso-2022-jp-1*" -#: library/codecs.rst:1139 +#: library/codecs.rst:1142 msgid "iso2022_jp_2" msgstr "*iso2022_jp_2*" -#: library/codecs.rst:1139 +#: library/codecs.rst:1142 msgid "iso2022jp-2, iso-2022-jp-2" msgstr "*iso2022jp-2*, *iso-2022-jp-2*" -#: library/codecs.rst:1139 +#: library/codecs.rst:1142 msgid "Japanese, Korean, Simplified Chinese, Western Europe, Greek" msgstr "" -#: library/codecs.rst:1142 +#: library/codecs.rst:1145 msgid "iso2022_jp_2004" msgstr "*iso2022_jp_2004*" -#: library/codecs.rst:1142 +#: library/codecs.rst:1145 msgid "iso2022jp-2004, iso-2022-jp-2004" msgstr "*iso2022jp-2004*, *iso-2022-jp-2004*" -#: library/codecs.rst:1145 +#: library/codecs.rst:1148 msgid "iso2022_jp_3" msgstr "*iso2022_jp_3*" -#: library/codecs.rst:1145 +#: library/codecs.rst:1148 msgid "iso2022jp-3, iso-2022-jp-3" msgstr "*iso2022jp-3*, *iso-2022-jp-3*" -#: library/codecs.rst:1147 +#: library/codecs.rst:1150 msgid "iso2022_jp_ext" msgstr "*iso2022_jp_ext*" -#: library/codecs.rst:1147 +#: library/codecs.rst:1150 msgid "iso2022jp-ext, iso-2022-jp-ext" msgstr "*iso2022jp-ext*, *iso-2022-jp-ext*" -#: library/codecs.rst:1149 +#: library/codecs.rst:1152 msgid "iso2022_kr" msgstr "*iso2022_kr*" -#: library/codecs.rst:1149 +#: library/codecs.rst:1152 msgid "csiso2022kr, iso2022kr, iso-2022-kr" msgstr "*csiso2022kr*, *iso2022kr*, *iso-2022-kr*" -#: library/codecs.rst:1152 +#: library/codecs.rst:1155 msgid "latin_1" msgstr "*latin_1*" -#: library/codecs.rst:1152 +#: library/codecs.rst:1155 msgid "iso-8859-1, iso8859-1, 8859, cp819, latin, latin1, L1" msgstr "*iso-8859-1*, *iso8859-1*, *8859*, *cp819*, *latin*, *latin1*, *L1*" -#: library/codecs.rst:1155 +#: library/codecs.rst:1158 msgid "iso8859_2" msgstr "*iso8859_2*" -#: library/codecs.rst:1155 +#: library/codecs.rst:1158 msgid "iso-8859-2, latin2, L2" msgstr "*iso-8859-2*, *latin2*, *L2*" -#: library/codecs.rst:1157 +#: library/codecs.rst:1160 msgid "iso8859_3" msgstr "*iso8859_3*" -#: library/codecs.rst:1157 +#: library/codecs.rst:1160 msgid "iso-8859-3, latin3, L3" msgstr "*iso-8859-3*, *latin3*, *L3*" -#: library/codecs.rst:1157 +#: library/codecs.rst:1160 msgid "Esperanto, Maltese" msgstr "" -#: library/codecs.rst:1159 +#: library/codecs.rst:1162 msgid "iso8859_4" msgstr "*iso8859_4*" -#: library/codecs.rst:1159 +#: library/codecs.rst:1162 msgid "iso-8859-4, latin4, L4" msgstr "*iso-8859-4*, *latin4*, *L4*" -#: library/codecs.rst:1161 +#: library/codecs.rst:1164 msgid "iso8859_5" msgstr "*iso8859_5*" -#: library/codecs.rst:1161 +#: library/codecs.rst:1164 msgid "iso-8859-5, cyrillic" msgstr "*iso-8859-5*, *cyrillic*" -#: library/codecs.rst:1164 +#: library/codecs.rst:1167 msgid "iso8859_6" msgstr "*iso8859_6*" -#: library/codecs.rst:1164 +#: library/codecs.rst:1167 msgid "iso-8859-6, arabic" msgstr "*iso-8859-6*, *arabic*" -#: library/codecs.rst:1166 +#: library/codecs.rst:1169 msgid "iso8859_7" msgstr "*iso8859_7*" -#: library/codecs.rst:1166 +#: library/codecs.rst:1169 msgid "iso-8859-7, greek, greek8" msgstr "*iso-8859-7*, *greek*, *greek8*" -#: library/codecs.rst:1168 +#: library/codecs.rst:1171 msgid "iso8859_8" msgstr "*iso8859_8*" -#: library/codecs.rst:1168 +#: library/codecs.rst:1171 msgid "iso-8859-8, hebrew" msgstr "*iso-8859-8*, *hebrew*" -#: library/codecs.rst:1170 +#: library/codecs.rst:1173 msgid "iso8859_9" msgstr "*iso8859_9*" -#: library/codecs.rst:1170 +#: library/codecs.rst:1173 msgid "iso-8859-9, latin5, L5" msgstr "*iso-8859-9*, *latin5*, *L5*" -#: library/codecs.rst:1172 +#: library/codecs.rst:1175 msgid "iso8859_10" msgstr "*iso8859_10*" -#: library/codecs.rst:1172 +#: library/codecs.rst:1175 msgid "iso-8859-10, latin6, L6" msgstr "*iso-8859-10*, *latin6*, *L6*" -#: library/codecs.rst:1172 +#: library/codecs.rst:1175 msgid "Nordic languages" msgstr "" -#: library/codecs.rst:1174 +#: library/codecs.rst:1177 msgid "iso8859_11" msgstr "*iso8859_11*" -#: library/codecs.rst:1174 +#: library/codecs.rst:1177 msgid "iso-8859-11, thai" msgstr "*iso-8859-11*, *thai*" -#: library/codecs.rst:1174 +#: library/codecs.rst:1177 msgid "Thai languages" msgstr "" -#: library/codecs.rst:1176 +#: library/codecs.rst:1179 msgid "iso8859_13" msgstr "*iso8859_13*" -#: library/codecs.rst:1176 +#: library/codecs.rst:1179 msgid "iso-8859-13, latin7, L7" msgstr "*iso-8859-13*, *latin7*, *L7*" -#: library/codecs.rst:1178 +#: library/codecs.rst:1181 msgid "iso8859_14" msgstr "*iso8859_14*" -#: library/codecs.rst:1178 +#: library/codecs.rst:1181 msgid "iso-8859-14, latin8, L8" msgstr "*iso-8859-14*, *latin8*, *L8*" -#: library/codecs.rst:1178 +#: library/codecs.rst:1181 msgid "Celtic languages" msgstr "" -#: library/codecs.rst:1180 +#: library/codecs.rst:1183 msgid "iso8859_15" msgstr "*iso8859_15*" -#: library/codecs.rst:1180 +#: library/codecs.rst:1183 msgid "iso-8859-15, latin9, L9" msgstr "*iso-8859-15*, *latin9*, *L9*" -#: library/codecs.rst:1182 +#: library/codecs.rst:1185 msgid "iso8859_16" msgstr "*iso8859_16*" -#: library/codecs.rst:1182 +#: library/codecs.rst:1185 msgid "iso-8859-16, latin10, L10" msgstr "*iso-8859-16*, *latin10*, *L10*" -#: library/codecs.rst:1182 +#: library/codecs.rst:1185 msgid "South-Eastern Europe" msgstr "" -#: library/codecs.rst:1184 +#: library/codecs.rst:1187 msgid "johab" msgstr "*johab*" -#: library/codecs.rst:1184 +#: library/codecs.rst:1187 msgid "cp1361, ms1361" msgstr "*cp1361*, *ms1361*" -#: library/codecs.rst:1186 +#: library/codecs.rst:1189 msgid "koi8_r" msgstr "*koi8_r*" -#: library/codecs.rst:1188 +#: library/codecs.rst:1191 msgid "koi8_t" msgstr "*koi8_t*" -#: library/codecs.rst:1188 +#: library/codecs.rst:1191 msgid "Tajik" msgstr "*Tajik*" -#: library/codecs.rst:1192 +#: library/codecs.rst:1195 msgid "koi8_u" msgstr "*koi8_u*" -#: library/codecs.rst:1194 +#: library/codecs.rst:1197 msgid "kz1048" msgstr "*kz1048*" -#: library/codecs.rst:1194 +#: library/codecs.rst:1197 msgid "kz_1048, strk1048_2002, rk1048" msgstr "*kz_1048*, *strk1048_2002*, *rk1048*" -#: library/codecs.rst:1212 +#: library/codecs.rst:1215 msgid "Kazakh" msgstr "" -#: library/codecs.rst:1198 +#: library/codecs.rst:1201 msgid "mac_cyrillic" msgstr "*mac_cyrillic*" -#: library/codecs.rst:1198 +#: library/codecs.rst:1201 msgid "maccyrillic" msgstr "*maccyrillic*" -#: library/codecs.rst:1201 +#: library/codecs.rst:1204 msgid "mac_greek" msgstr "*mac_greek*" -#: library/codecs.rst:1201 +#: library/codecs.rst:1204 msgid "macgreek" msgstr "*macgreek*" -#: library/codecs.rst:1203 +#: library/codecs.rst:1206 msgid "mac_iceland" msgstr "*mac_iceland*" -#: library/codecs.rst:1203 +#: library/codecs.rst:1206 msgid "maciceland" msgstr "*maciceland*" -#: library/codecs.rst:1205 +#: library/codecs.rst:1208 msgid "mac_latin2" msgstr "*mac_latin2*" -#: library/codecs.rst:1205 +#: library/codecs.rst:1208 #, fuzzy msgid "maclatin2, maccentraleurope, mac_centeuro" msgstr "*maclatin2*, *maccentraleurope*" -#: library/codecs.rst:1208 +#: library/codecs.rst:1211 msgid "mac_roman" msgstr "*mac_roman*" -#: library/codecs.rst:1208 +#: library/codecs.rst:1211 msgid "macroman, macintosh" msgstr "*macroman*, *macintosh*" -#: library/codecs.rst:1210 +#: library/codecs.rst:1213 msgid "mac_turkish" msgstr "*mac_turkish*" -#: library/codecs.rst:1210 +#: library/codecs.rst:1213 msgid "macturkish" msgstr "*macturkish*" -#: library/codecs.rst:1212 +#: library/codecs.rst:1215 msgid "ptcp154" msgstr "*ptcp154*" -#: library/codecs.rst:1212 +#: library/codecs.rst:1215 msgid "csptcp154, pt154, cp154, cyrillic-asian" msgstr "*csptcp154*, *pt154*, *cp154*, *cyrillic-asian*" -#: library/codecs.rst:1215 +#: library/codecs.rst:1218 msgid "shift_jis" msgstr "*shift_jis*" -#: library/codecs.rst:1215 +#: library/codecs.rst:1218 msgid "csshiftjis, shiftjis, sjis, s_jis" msgstr "*csshiftjis*, *shiftjis*, *sjis*, *s_jis*" -#: library/codecs.rst:1218 +#: library/codecs.rst:1221 msgid "shift_jis_2004" msgstr "*shift_jis_2004*" -#: library/codecs.rst:1218 +#: library/codecs.rst:1221 msgid "shiftjis2004, sjis_2004, sjis2004" msgstr "*shiftjis2004*, *sjis_2004*, *sjis2004*" -#: library/codecs.rst:1221 +#: library/codecs.rst:1224 msgid "shift_jisx0213" msgstr "*shift_jisx0213*" -#: library/codecs.rst:1221 +#: library/codecs.rst:1224 msgid "shiftjisx0213, sjisx0213, s_jisx0213" msgstr "*shiftjisx0213*, *sjisx0213*, *s_jisx0213*" -#: library/codecs.rst:1224 +#: library/codecs.rst:1227 msgid "utf_32" msgstr "*utf_32*" -#: library/codecs.rst:1224 +#: library/codecs.rst:1227 msgid "U32, utf32" msgstr "*U32*, *utf32*" -#: library/codecs.rst:1226 library/codecs.rst:1230 library/codecs.rst:1234 -#: library/codecs.rst:1238 library/codecs.rst:1240 +#: library/codecs.rst:1229 library/codecs.rst:1233 library/codecs.rst:1237 +#: library/codecs.rst:1241 library/codecs.rst:1243 msgid "all languages" msgstr "" -#: library/codecs.rst:1226 +#: library/codecs.rst:1229 msgid "utf_32_be" msgstr "*utf_32_be*" -#: library/codecs.rst:1226 +#: library/codecs.rst:1229 msgid "UTF-32BE" msgstr "*UTF-32BE*" -#: library/codecs.rst:1228 +#: library/codecs.rst:1231 msgid "utf_32_le" msgstr "*utf_32_le*" -#: library/codecs.rst:1228 +#: library/codecs.rst:1231 msgid "UTF-32LE" msgstr "*UTF-32LE*" -#: library/codecs.rst:1230 +#: library/codecs.rst:1233 msgid "utf_16" msgstr "*utf_16*" -#: library/codecs.rst:1230 +#: library/codecs.rst:1233 msgid "U16, utf16" msgstr "*U16*, *utf16*" -#: library/codecs.rst:1232 +#: library/codecs.rst:1235 msgid "utf_16_be" msgstr "*utf_16_be*" -#: library/codecs.rst:1232 +#: library/codecs.rst:1235 msgid "UTF-16BE" msgstr "*UTF-16BE*" -#: library/codecs.rst:1234 +#: library/codecs.rst:1237 msgid "utf_16_le" msgstr "*utf_16_le*" -#: library/codecs.rst:1234 +#: library/codecs.rst:1237 msgid "UTF-16LE" msgstr "*UTF-16LE*" -#: library/codecs.rst:1236 +#: library/codecs.rst:1239 msgid "utf_7" msgstr "*utf_7*" -#: library/codecs.rst:1236 +#: library/codecs.rst:1239 msgid "U7, unicode-1-1-utf-7" msgstr "*U7*, *unicode-1-1-utf-7*" -#: library/codecs.rst:1238 +#: library/codecs.rst:1241 msgid "utf_8" msgstr "*utf_8*" -#: library/codecs.rst:1238 +#: library/codecs.rst:1241 #, fuzzy msgid "U8, UTF, utf8, cp65001" msgstr "*U8*, *UTF*, *utf8*" -#: library/codecs.rst:1240 +#: library/codecs.rst:1243 msgid "utf_8_sig" msgstr "*utf_8_sig*" -#: library/codecs.rst:1243 +#: library/codecs.rst:1246 msgid "" "The utf-16\\* and utf-32\\* encoders no longer allow surrogate code points " "(``U+D800``--``U+DFFF``) to be encoded. The utf-32\\* decoders no longer " "decode byte sequences that correspond to surrogate code points." msgstr "" -#: library/codecs.rst:1249 +#: library/codecs.rst:1252 msgid "``cp65001`` is now an alias to ``utf_8``." msgstr "" -#: library/codecs.rst:1254 +#: library/codecs.rst:1257 msgid "Python Specific Encodings" msgstr "" -#: library/codecs.rst:1256 +#: library/codecs.rst:1259 msgid "" "A number of predefined codecs are specific to Python, so their codec names " "have no meaning outside Python. These are listed in the tables below based " @@ -2429,272 +2425,272 @@ msgid "" "asymmetric codecs, the stated meaning describes the encoding direction." msgstr "" -#: library/codecs.rst:1264 +#: library/codecs.rst:1267 msgid "Text Encodings" msgstr "" -#: library/codecs.rst:1266 +#: library/codecs.rst:1269 msgid "" "The following codecs provide :class:`str` to :class:`bytes` encoding and :" "term:`bytes-like object` to :class:`str` decoding, similar to the Unicode " "text encodings." msgstr "" -#: library/codecs.rst:1275 +#: library/codecs.rst:1278 msgid "idna" msgstr "idna" -#: library/codecs.rst:1275 +#: library/codecs.rst:1278 msgid "" "Implement :rfc:`3490`, see also :mod:`encodings.idna`. Only " "``errors='strict'`` is supported." msgstr "" -#: library/codecs.rst:1281 +#: library/codecs.rst:1284 msgid "mbcs" msgstr "mbcs" -#: library/codecs.rst:1281 +#: library/codecs.rst:1284 msgid "ansi, dbcs" msgstr "" -#: library/codecs.rst:1281 +#: library/codecs.rst:1284 msgid "" "Windows only: Encode the operand according to the ANSI codepage (CP_ACP)." msgstr "" -#: library/codecs.rst:1285 +#: library/codecs.rst:1288 msgid "oem" msgstr "" -#: library/codecs.rst:1285 +#: library/codecs.rst:1288 msgid "" "Windows only: Encode the operand according to the OEM codepage (CP_OEMCP)." msgstr "" -#: library/codecs.rst:1291 +#: library/codecs.rst:1294 msgid "palmos" msgstr "palmos" -#: library/codecs.rst:1291 +#: library/codecs.rst:1294 msgid "Encoding of PalmOS 3.5." msgstr "" -#: library/codecs.rst:1293 +#: library/codecs.rst:1296 msgid "punycode" msgstr "punycode" -#: library/codecs.rst:1293 +#: library/codecs.rst:1296 msgid "Implement :rfc:`3492`. Stateful codecs are not supported." msgstr "" -#: library/codecs.rst:1297 +#: library/codecs.rst:1300 msgid "raw_unicode_escape" msgstr "raw_unicode_escape" -#: library/codecs.rst:1297 +#: library/codecs.rst:1300 msgid "" "Latin-1 encoding with ``\\uXXXX`` and ``\\UXXXXXXXX`` for other code points. " "Existing backslashes are not escaped in any way. It is used in the Python " "pickle protocol." msgstr "" -#: library/codecs.rst:1306 +#: library/codecs.rst:1309 msgid "undefined" msgstr "undefined" -#: library/codecs.rst:1306 +#: library/codecs.rst:1309 msgid "" "Raise an exception for all conversions, even empty strings. The error " "handler is ignored." msgstr "" -#: library/codecs.rst:1311 +#: library/codecs.rst:1314 msgid "unicode_escape" msgstr "unicode_escape" -#: library/codecs.rst:1311 +#: library/codecs.rst:1314 msgid "" "Encoding suitable as the contents of a Unicode literal in ASCII-encoded " "Python source code, except that quotes are not escaped. Decode from Latin-1 " "source code. Beware that Python source code actually uses UTF-8 by default." msgstr "" -#: library/codecs.rst:1323 +#: library/codecs.rst:1326 msgid "\"unicode_internal\" codec is removed." msgstr "" -#: library/codecs.rst:1330 +#: library/codecs.rst:1333 msgid "Binary Transforms" msgstr "" -#: library/codecs.rst:1332 +#: library/codecs.rst:1335 msgid "" "The following codecs provide binary transforms: :term:`bytes-like object` " "to :class:`bytes` mappings. They are not supported by :meth:`bytes.decode` " "(which only produces :class:`str` output)." msgstr "" -#: library/codecs.rst:1340 +#: library/codecs.rst:1343 msgid "Encoder / decoder" msgstr "" -#: library/codecs.rst:1342 +#: library/codecs.rst:1345 msgid "base64_codec [#b64]_" msgstr "base64_codec [#b64]_" -#: library/codecs.rst:1342 +#: library/codecs.rst:1345 msgid "base64, base_64" msgstr "base64, base_64" -#: library/codecs.rst:1342 +#: library/codecs.rst:1345 msgid "" "Convert the operand to multiline MIME base64 (the result always includes a " "trailing ``'\\n'``)." msgstr "" -#: library/codecs.rst:1347 +#: library/codecs.rst:1350 msgid "" "accepts any :term:`bytes-like object` as input for encoding and decoding" msgstr "" -#: library/codecs.rst:1342 +#: library/codecs.rst:1345 msgid ":meth:`base64.encodebytes` / :meth:`base64.decodebytes`" msgstr "" -#: library/codecs.rst:1353 +#: library/codecs.rst:1356 msgid "bz2_codec" msgstr "bz2_codec" -#: library/codecs.rst:1353 +#: library/codecs.rst:1356 msgid "bz2" msgstr "bz2" -#: library/codecs.rst:1353 +#: library/codecs.rst:1356 msgid "Compress the operand using bz2." msgstr "" -#: library/codecs.rst:1353 +#: library/codecs.rst:1356 msgid ":meth:`bz2.compress` / :meth:`bz2.decompress`" msgstr "" -#: library/codecs.rst:1356 +#: library/codecs.rst:1359 msgid "hex_codec" msgstr "hex_codec" -#: library/codecs.rst:1356 +#: library/codecs.rst:1359 msgid "hex" msgstr "hex" -#: library/codecs.rst:1356 +#: library/codecs.rst:1359 msgid "" "Convert the operand to hexadecimal representation, with two digits per byte." msgstr "" -#: library/codecs.rst:1356 +#: library/codecs.rst:1359 msgid ":meth:`binascii.b2a_hex` / :meth:`binascii.a2b_hex`" msgstr "" -#: library/codecs.rst:1361 +#: library/codecs.rst:1364 msgid "quopri_codec" msgstr "quopri_codec" -#: library/codecs.rst:1361 +#: library/codecs.rst:1364 msgid "quopri, quotedprintable, quoted_printable" msgstr "" -#: library/codecs.rst:1361 +#: library/codecs.rst:1364 msgid "Convert the operand to MIME quoted printable." msgstr "" -#: library/codecs.rst:1361 +#: library/codecs.rst:1364 msgid ":meth:`quopri.encode` with ``quotetabs=True`` / :meth:`quopri.decode`" msgstr "" -#: library/codecs.rst:1365 +#: library/codecs.rst:1368 msgid "uu_codec" msgstr "uu_codec" -#: library/codecs.rst:1365 +#: library/codecs.rst:1368 msgid "uu" msgstr "uu" -#: library/codecs.rst:1365 +#: library/codecs.rst:1368 msgid "Convert the operand using uuencode." msgstr "" -#: library/codecs.rst:1365 +#: library/codecs.rst:1368 msgid ":meth:`uu.encode` / :meth:`uu.decode`" msgstr "" -#: library/codecs.rst:1368 +#: library/codecs.rst:1371 msgid "zlib_codec" msgstr "zlib_codec" -#: library/codecs.rst:1368 +#: library/codecs.rst:1371 msgid "zip, zlib" msgstr "zip, zlib" -#: library/codecs.rst:1368 +#: library/codecs.rst:1371 msgid "Compress the operand using gzip." msgstr "" -#: library/codecs.rst:1368 +#: library/codecs.rst:1371 msgid ":meth:`zlib.compress` / :meth:`zlib.decompress`" msgstr ":meth:`zlib.compress` / :meth:`zlib.decompress`" -#: library/codecs.rst:1372 +#: library/codecs.rst:1375 msgid "" "In addition to :term:`bytes-like objects `, " "``'base64_codec'`` also accepts ASCII-only instances of :class:`str` for " "decoding" msgstr "" -#: library/codecs.rst:1376 +#: library/codecs.rst:1379 msgid "Restoration of the binary transforms." msgstr "" -#: library/codecs.rst:1379 +#: library/codecs.rst:1382 msgid "Restoration of the aliases for the binary transforms." msgstr "" -#: library/codecs.rst:1386 +#: library/codecs.rst:1389 msgid "Text Transforms" msgstr "" -#: library/codecs.rst:1388 +#: library/codecs.rst:1391 msgid "" "The following codec provides a text transform: a :class:`str` to :class:" "`str` mapping. It is not supported by :meth:`str.encode` (which only " "produces :class:`bytes` output)." msgstr "" -#: library/codecs.rst:1397 +#: library/codecs.rst:1400 msgid "rot_13" msgstr "rot_13" -#: library/codecs.rst:1397 +#: library/codecs.rst:1400 msgid "rot13" msgstr "rot13" -#: library/codecs.rst:1397 +#: library/codecs.rst:1400 msgid "Return the Caesar-cypher encryption of the operand." msgstr "" -#: library/codecs.rst:1402 +#: library/codecs.rst:1405 msgid "Restoration of the ``rot_13`` text transform." msgstr "" -#: library/codecs.rst:1405 +#: library/codecs.rst:1408 msgid "Restoration of the ``rot13`` alias." msgstr "" -#: library/codecs.rst:1410 +#: library/codecs.rst:1413 msgid "" ":mod:`encodings.idna` --- Internationalized Domain Names in Applications" msgstr "" -#: library/codecs.rst:1416 +#: library/codecs.rst:1419 msgid "" "This module implements :rfc:`3490` (Internationalized Domain Names in " "Applications) and :rfc:`3492` (Nameprep: A Stringprep Profile for " @@ -2702,13 +2698,13 @@ msgid "" "encoding and :mod:`stringprep`." msgstr "" -#: library/codecs.rst:1421 +#: library/codecs.rst:1424 msgid "" "If you need the IDNA 2008 standard from :rfc:`5891` and :rfc:`5895`, use the " "third-party `idna module _`." msgstr "" -#: library/codecs.rst:1424 +#: library/codecs.rst:1427 msgid "" "These RFCs together define a protocol to support non-ASCII characters in " "domain names. A domain name containing non-ASCII characters (such as ``www." @@ -2722,7 +2718,7 @@ msgid "" "presenting them to the user." msgstr "" -#: library/codecs.rst:1435 +#: library/codecs.rst:1438 msgid "" "Python supports this conversion in several ways: the ``idna`` codec " "performs conversion between Unicode and ACE, separating an input string into " @@ -2739,14 +2735,14 @@ msgid "" "sends that field at all)." msgstr "" -#: library/codecs.rst:1448 +#: library/codecs.rst:1451 msgid "" "When receiving host names from the wire (such as in reverse name lookup), no " "automatic conversion to Unicode is performed: applications wishing to " "present such host names to the user should decode them to Unicode." msgstr "" -#: library/codecs.rst:1452 +#: library/codecs.rst:1455 msgid "" "The module :mod:`encodings.idna` also implements the nameprep procedure, " "which performs certain normalizations on host names, to achieve case-" @@ -2754,49 +2750,49 @@ msgid "" "characters. The nameprep functions can be used directly if desired." msgstr "" -#: library/codecs.rst:1460 +#: library/codecs.rst:1463 msgid "" "Return the nameprepped version of *label*. The implementation currently " "assumes query strings, so ``AllowUnassigned`` is true." msgstr "" -#: library/codecs.rst:1466 +#: library/codecs.rst:1469 msgid "" "Convert a label to ASCII, as specified in :rfc:`3490`. ``UseSTD3ASCIIRules`` " "is assumed to be false." msgstr "" -#: library/codecs.rst:1472 +#: library/codecs.rst:1475 msgid "Convert a label to Unicode, as specified in :rfc:`3490`." msgstr "" -#: library/codecs.rst:1476 +#: library/codecs.rst:1479 msgid ":mod:`encodings.mbcs` --- Windows ANSI codepage" msgstr "" -#: library/codecs.rst:1481 +#: library/codecs.rst:1484 msgid "This module implements the ANSI codepage (CP_ACP)." msgstr "" -#: library/codecs.rst:1484 +#: library/codecs.rst:1487 msgid ":ref:`Availability `: Windows only." msgstr ":ref:`Disponibilité ` : Windows uniquement." -#: library/codecs.rst:1485 +#: library/codecs.rst:1488 msgid "Support any error handler." msgstr "" -#: library/codecs.rst:1488 +#: library/codecs.rst:1491 msgid "" "Before 3.2, the *errors* argument was ignored; ``'replace'`` was always used " "to encode, and ``'ignore'`` to decode." msgstr "" -#: library/codecs.rst:1494 +#: library/codecs.rst:1497 msgid ":mod:`encodings.utf_8_sig` --- UTF-8 codec with BOM signature" msgstr "" -#: library/codecs.rst:1500 +#: library/codecs.rst:1503 msgid "" "This module implements a variant of the UTF-8 codec. On encoding, a UTF-8 " "encoded BOM will be prepended to the UTF-8 encoded bytes. For the stateful " @@ -2804,3 +2800,12 @@ msgid "" "decoding, an optional UTF-8 encoded BOM at the start of the data will be " "skipped." msgstr "" + +# Pas de majuscule en début car suit un deux-points. +#~ msgid "" +#~ "Search function registration is not currently reversible, which may cause " +#~ "problems in some cases, such as unit testing or module reloading." +#~ msgstr "" +#~ "l'enregistrement d'une fonction de recherche n'est actuellement pas " +#~ "réversible, ce qui peut entraîner des problèmes dans certains cas, par " +#~ "exemple pour les tests unitaires ou le rechargement de module." diff --git a/library/collections.abc.po b/library/collections.abc.po index d5c81f4f7..9e7053caf 100644 --- a/library/collections.abc.po +++ b/library/collections.abc.po @@ -5,10 +5,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-12-17 16:05+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-03-21 16:06+0100\n" "Last-Translator: Loc Cosnier \n" -"Language-Team: French \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -40,11 +40,60 @@ msgstr "" "interface particulière (par exemple, savoir s'il s'agit d'un hachable ou " "d'une table de correspondance)." -#: library/collections.abc.rst:31 +#: library/collections.abc.rst:27 +msgid "" +"An :func:`issubclass` or :func:`isinstance` test for an interface works in " +"one of three ways." +msgstr "" + +#: library/collections.abc.rst:30 +msgid "" +"1) A newly written class can inherit directly from one of the abstract base " +"classes. The class must supply the required abstract methods. The " +"remaining mixin methods come from inheritance and can be overridden if " +"desired. Other methods may be added as needed:" +msgstr "" + +#: library/collections.abc.rst:50 +msgid "" +"2) Existing classes and built-in classes can be registered as \"virtual " +"subclasses\" of the ABCs. Those classes should define the full API " +"including all of the abstract methods and all of the mixin methods. This " +"lets users rely on :func:`issubclass` or :func:`isinstance` tests to " +"determine whether the full interface is supported. The exception to this " +"rule is for methods that are automatically inferred from the rest of the API:" +msgstr "" + +#: library/collections.abc.rst:76 +msgid "" +"In this example, class :class:`D` does not need to define ``__contains__``, " +"``__iter__``, and ``__reversed__`` because the :ref:`in-operator " +"`, the :term:`iteration ` logic, and the :func:" +"`reversed` function automatically fall back to using ``__getitem__`` and " +"``__len__``." +msgstr "" + +#: library/collections.abc.rst:82 +msgid "" +"3) Some simple interfaces are directly recognizable by the presence of the " +"required methods (unless those methods have been set to :const:`None`):" +msgstr "" + +#: library/collections.abc.rst:99 +msgid "" +"Complex interfaces do not support this last technique because an interface " +"is more than just the presence of method names. Interfaces specify " +"semantics and relationships between methods that cannot be inferred solely " +"from the presence of specific method names. For example, knowing that a " +"class supplies ``__getitem__``, ``__len__``, and ``__iter__`` is " +"insufficient for distinguishing a :class:`Sequence` from a :class:`Mapping`." +msgstr "" + +#: library/collections.abc.rst:111 msgid "Collections Abstract Base Classes" msgstr "Classes de base abstraites de collections" -#: library/collections.abc.rst:33 +#: library/collections.abc.rst:113 msgid "" "The collections module offers the following :term:`ABCs `:" @@ -52,131 +101,149 @@ msgstr "" "Le module collections apporte les :term:`ABC ` " "suivantes :" -#: library/collections.abc.rst:38 +#: library/collections.abc.rst:118 msgid "ABC" msgstr "ABC" -#: library/collections.abc.rst:38 +#: library/collections.abc.rst:118 msgid "Inherits from" msgstr "Hérite de" -#: library/collections.abc.rst:38 +#: library/collections.abc.rst:118 msgid "Abstract Methods" msgstr "Méthodes abstraites" -#: library/collections.abc.rst:38 +#: library/collections.abc.rst:118 msgid "Mixin Methods" msgstr "Méthodes *mixin*" -#: library/collections.abc.rst:40 -msgid ":class:`Container`" +#: library/collections.abc.rst:120 +#, fuzzy +msgid ":class:`Container` [1]_" msgstr ":class:`Container`" -#: library/collections.abc.rst:40 +#: library/collections.abc.rst:120 msgid "``__contains__``" msgstr "``__contains__``" -#: library/collections.abc.rst:41 -msgid ":class:`Hashable`" +#: library/collections.abc.rst:121 +#, fuzzy +msgid ":class:`Hashable` [1]_" msgstr ":class:`Hashable`" -#: library/collections.abc.rst:41 +#: library/collections.abc.rst:121 msgid "``__hash__``" msgstr "``__hash__``" -#: library/collections.abc.rst:43 library/collections.abc.rst:44 -msgid ":class:`Iterable`" +#: library/collections.abc.rst:122 +#, fuzzy +msgid ":class:`Iterable` [1]_ [2]_" msgstr ":class:`Iterable`" -#: library/collections.abc.rst:43 +#: library/collections.abc.rst:122 library/collections.abc.rst:123 msgid "``__iter__``" msgstr "``__iter__``" -#: library/collections.abc.rst:45 -msgid ":class:`Iterator`" +#: library/collections.abc.rst:123 +#, fuzzy +msgid ":class:`Iterator` [1]_" msgstr ":class:`Iterator`" -#: library/collections.abc.rst:43 +#: library/collections.abc.rst:123 library/collections.abc.rst:124 +msgid ":class:`Iterable`" +msgstr ":class:`Iterable`" + +#: library/collections.abc.rst:123 msgid "``__next__``" msgstr "``__next__``" -#: library/collections.abc.rst:44 -msgid ":class:`Reversible`" +#: library/collections.abc.rst:124 +#, fuzzy +msgid ":class:`Reversible` [1]_" msgstr ":class:`Reversible`" -#: library/collections.abc.rst:44 +#: library/collections.abc.rst:124 msgid "``__reversed__``" msgstr "``__reversed__``" -#: library/collections.abc.rst:45 -msgid ":class:`Generator`" +#: library/collections.abc.rst:125 +#, fuzzy +msgid ":class:`Generator` [1]_" msgstr ":class:`Generator`" -#: library/collections.abc.rst:93 +#: library/collections.abc.rst:125 +msgid ":class:`Iterator`" +msgstr ":class:`Iterator`" + +#: library/collections.abc.rst:125 library/collections.abc.rst:173 msgid "``send``, ``throw``" msgstr "``send``, ``throw``" -#: library/collections.abc.rst:45 +#: library/collections.abc.rst:125 msgid "``close``, ``__iter__``, ``__next__``" msgstr "``close``, ``__iter__``, ``__next__``" -#: library/collections.abc.rst:85 -msgid ":class:`Sized`" +#: library/collections.abc.rst:126 +#, fuzzy +msgid ":class:`Sized` [1]_" msgstr ":class:`Sized`" -#: library/collections.abc.rst:85 +#: library/collections.abc.rst:126 library/collections.abc.rst:165 msgid "``__len__``" msgstr "``__len__``" -#: library/collections.abc.rst:47 -msgid ":class:`Callable`" +#: library/collections.abc.rst:127 +#, fuzzy +msgid ":class:`Callable` [1]_" msgstr ":class:`Callable`" -#: library/collections.abc.rst:47 +#: library/collections.abc.rst:127 msgid "``__call__``" msgstr "``__call__``" -#: library/collections.abc.rst:64 library/collections.abc.rst:74 -msgid ":class:`Collection`" +#: library/collections.abc.rst:128 +#, fuzzy +msgid ":class:`Collection` [1]_" msgstr ":class:`Collection`" -#: library/collections.abc.rst:48 +#: library/collections.abc.rst:128 msgid ":class:`Sized`, :class:`Iterable`, :class:`Container`" msgstr ":class:`Sized`, :class:`Iterable`, :class:`Container`" -#: library/collections.abc.rst:64 +#: library/collections.abc.rst:128 library/collections.abc.rst:144 msgid "``__contains__``, ``__iter__``, ``__len__``" msgstr "``__contains__``, ``__iter__``, ``__len__``" -#: library/collections.abc.rst:55 library/collections.abc.rst:61 +#: library/collections.abc.rst:132 library/collections.abc.rst:135 +#: library/collections.abc.rst:141 msgid ":class:`Sequence`" msgstr ":class:`Sequence`" -#: library/collections.abc.rst:52 +#: library/collections.abc.rst:132 msgid ":class:`Reversible`, :class:`Collection`" msgstr ":class:`Reversible`, :class:`Collection`" -#: library/collections.abc.rst:61 +#: library/collections.abc.rst:132 library/collections.abc.rst:141 msgid "``__getitem__``, ``__len__``" msgstr "``__getitem__``, ``__len__``" -#: library/collections.abc.rst:52 +#: library/collections.abc.rst:132 msgid "" "``__contains__``, ``__iter__``, ``__reversed__``, ``index``, and ``count``" msgstr "" "``__contains__``, ``__iter__``, ``__reversed__``, ``index`` et ``count``" -#: library/collections.abc.rst:55 +#: library/collections.abc.rst:135 msgid ":class:`MutableSequence`" msgstr ":class:`MutableSequence`" -#: library/collections.abc.rst:55 +#: library/collections.abc.rst:135 msgid "" "``__getitem__``, ``__setitem__``, ``__delitem__``, ``__len__``, ``insert``" msgstr "" "``__getitem__``, ``__setitem__``, ``__delitem__``, ``__len__``, ``insert``" -#: library/collections.abc.rst:55 +#: library/collections.abc.rst:135 msgid "" "Inherited :class:`Sequence` methods and ``append``, ``reverse``, ``extend``, " "``pop``, ``remove``, and ``__iadd__``" @@ -184,19 +251,23 @@ msgstr "" "Méthodes héritées de :class:`Sequence`, et ``append``, ``reverse``, " "``extend``, ``pop``, ``remove`` et ``__iadd__``" -#: library/collections.abc.rst:61 +#: library/collections.abc.rst:141 msgid ":class:`ByteString`" msgstr ":class:`ByteString`" -#: library/collections.abc.rst:61 +#: library/collections.abc.rst:141 msgid "Inherited :class:`Sequence` methods" msgstr "Méthodes héritées de :class:`Sequence`" -#: library/collections.abc.rst:68 +#: library/collections.abc.rst:144 library/collections.abc.rst:148 msgid ":class:`Set`" msgstr ":class:`Set`" -#: library/collections.abc.rst:64 +#: library/collections.abc.rst:144 library/collections.abc.rst:154 +msgid ":class:`Collection`" +msgstr ":class:`Collection`" + +#: library/collections.abc.rst:144 msgid "" "``__le__``, ``__lt__``, ``__eq__``, ``__ne__``, ``__gt__``, ``__ge__``, " "``__and__``, ``__or__``, ``__sub__``, ``__xor__``, and ``isdisjoint``" @@ -204,15 +275,15 @@ msgstr "" "``__le__``, ``__lt__``, ``__eq__``, ``__ne__``, ``__gt__``, ``__ge__``, " "``__and__``, ``__or__``, ``__sub__``, ``__xor__`` et ``isdisjoint``" -#: library/collections.abc.rst:68 +#: library/collections.abc.rst:148 msgid ":class:`MutableSet`" msgstr ":class:`MutableSet`" -#: library/collections.abc.rst:68 +#: library/collections.abc.rst:148 msgid "``__contains__``, ``__iter__``, ``__len__``, ``add``, ``discard``" msgstr "``__contains__``, ``__iter__``, ``__len__``, ``add``, ``discard``" -#: library/collections.abc.rst:68 +#: library/collections.abc.rst:148 msgid "" "Inherited :class:`Set` methods and ``clear``, ``pop``, ``remove``, " "``__ior__``, ``__iand__``, ``__ixor__``, and ``__isub__``" @@ -220,15 +291,15 @@ msgstr "" "Méthodes héritées de :class:`Set`, et ``clear``, ``pop``, ``remove``, " "``__ior__``, ``__iand__``, ``__ixor__`` et ``__isub__``" -#: library/collections.abc.rst:78 +#: library/collections.abc.rst:154 library/collections.abc.rst:158 msgid ":class:`Mapping`" msgstr ":class:`Mapping`" -#: library/collections.abc.rst:74 +#: library/collections.abc.rst:154 msgid "``__getitem__``, ``__iter__``, ``__len__``" msgstr "``__getitem__``, ``__iter__``, ``__len__``" -#: library/collections.abc.rst:74 +#: library/collections.abc.rst:154 msgid "" "``__contains__``, ``keys``, ``items``, ``values``, ``get``, ``__eq__``, and " "``__ne__``" @@ -236,17 +307,17 @@ msgstr "" "``__contains__``, ``keys``, ``items``, ``values``, ``get``, ``__eq__`` et " "``__ne__``" -#: library/collections.abc.rst:78 +#: library/collections.abc.rst:158 msgid ":class:`MutableMapping`" msgstr ":class:`MutableMapping`" -#: library/collections.abc.rst:78 +#: library/collections.abc.rst:158 msgid "" "``__getitem__``, ``__setitem__``, ``__delitem__``, ``__iter__``, ``__len__``" msgstr "" "``__getitem__``, ``__setitem__``, ``__delitem__``, ``__iter__``, ``__len__``" -#: library/collections.abc.rst:78 +#: library/collections.abc.rst:158 msgid "" "Inherited :class:`Mapping` methods and ``pop``, ``popitem``, ``clear``, " "``update``, and ``setdefault``" @@ -254,99 +325,153 @@ msgstr "" "Méthodes héritées de :class:`Mapping`, et ``pop``, ``popitem``, ``clear``, " "``update`` et ``setdefault``" -#: library/collections.abc.rst:85 +#: library/collections.abc.rst:165 msgid ":class:`MappingView`" msgstr ":class:`MappingView`" -#: library/collections.abc.rst:86 +#: library/collections.abc.rst:165 +msgid ":class:`Sized`" +msgstr ":class:`Sized`" + +#: library/collections.abc.rst:166 msgid ":class:`ItemsView`" msgstr ":class:`ItemsView`" -#: library/collections.abc.rst:88 +#: library/collections.abc.rst:166 library/collections.abc.rst:168 msgid ":class:`MappingView`, :class:`Set`" msgstr ":class:`MappingView`, :class:`Set`" -#: library/collections.abc.rst:88 library/collections.abc.rst:90 +#: library/collections.abc.rst:166 library/collections.abc.rst:168 +#: library/collections.abc.rst:170 msgid "``__contains__``, ``__iter__``" msgstr "``__contains__``, ``__iter__``" -#: library/collections.abc.rst:88 +#: library/collections.abc.rst:168 msgid ":class:`KeysView`" msgstr ":class:`KeysView`" -#: library/collections.abc.rst:90 +#: library/collections.abc.rst:170 msgid ":class:`ValuesView`" msgstr ":class:`ValuesView`" -#: library/collections.abc.rst:90 +#: library/collections.abc.rst:170 msgid ":class:`MappingView`, :class:`Collection`" msgstr ":class:`MappingView`, :class:`Collection`" -#: library/collections.abc.rst:93 -msgid ":class:`Awaitable`" +#: library/collections.abc.rst:172 +#, fuzzy +msgid ":class:`Awaitable` [1]_" msgstr ":class:`Awaitable`" -#: library/collections.abc.rst:92 +#: library/collections.abc.rst:172 msgid "``__await__``" msgstr "``__await__``" -#: library/collections.abc.rst:93 -msgid ":class:`Coroutine`" +#: library/collections.abc.rst:173 +#, fuzzy +msgid ":class:`Coroutine` [1]_" msgstr ":class:`Coroutine`" -#: library/collections.abc.rst:93 +#: library/collections.abc.rst:173 +msgid ":class:`Awaitable`" +msgstr ":class:`Awaitable`" + +#: library/collections.abc.rst:173 msgid "``close``" msgstr "``close``" -#: library/collections.abc.rst:95 -msgid ":class:`AsyncIterable`" +#: library/collections.abc.rst:174 +#, fuzzy +msgid ":class:`AsyncIterable` [1]_" msgstr ":class:`AsyncIterable`" -#: library/collections.abc.rst:95 +#: library/collections.abc.rst:174 library/collections.abc.rst:175 msgid "``__aiter__``" msgstr "``__aiter__``" -#: library/collections.abc.rst:96 -msgid ":class:`AsyncIterator`" +#: library/collections.abc.rst:175 +#, fuzzy +msgid ":class:`AsyncIterator` [1]_" msgstr ":class:`AsyncIterator`" -#: library/collections.abc.rst:95 +#: library/collections.abc.rst:175 +msgid ":class:`AsyncIterable`" +msgstr ":class:`AsyncIterable`" + +#: library/collections.abc.rst:175 msgid "``__anext__``" msgstr "``__anext__``" -#: library/collections.abc.rst:96 -msgid ":class:`AsyncGenerator`" +#: library/collections.abc.rst:176 +#, fuzzy +msgid ":class:`AsyncGenerator` [1]_" msgstr ":class:`AsyncGenerator`" -#: library/collections.abc.rst:96 +#: library/collections.abc.rst:176 +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +#: library/collections.abc.rst:176 msgid "``asend``, ``athrow``" msgstr "``asend``, ``athrow``" -#: library/collections.abc.rst:96 +#: library/collections.abc.rst:176 msgid "``aclose``, ``__aiter__``, ``__anext__``" msgstr "``aclose``, ``__aiter__``, ``__anext__``" -#: library/collections.abc.rst:102 +#: library/collections.abc.rst:181 +msgid "Footnotes" +msgstr "" + +#: library/collections.abc.rst:182 +msgid "" +"These ABCs override :meth:`object.__subclasshook__` to support testing an " +"interface by verifying the required methods are present and have not been " +"set to :const:`None`. This only works for simple interfaces. More complex " +"interfaces require registration or direct subclassing." +msgstr "" + +#: library/collections.abc.rst:188 +#, fuzzy +msgid "" +"Checking ``isinstance(obj, Iterable)`` detects classes that are registered " +"as :class:`Iterable` or that have an :meth:`__iter__` method, but it does " +"not detect classes that iterate with the :meth:`__getitem__` method. The " +"only reliable way to determine whether an object is :term:`iterable` is to " +"call ``iter(obj)``." +msgstr "" +"Évaluer ``isinstance(obj, Iterable)`` détecte les classes qui sont " +"enregistrées comme :class:`Iterable` ou qui possèdent une méthode :meth:" +"`__iter__`, mais ne détecte pas les classes qui itèrent avec la méthode :" +"meth:`__getitem__`. Le seul moyen fiable de déterminer si un objet est :term:" +"`itérable ` est d'appeler ``iter(obj)``." + +#: library/collections.abc.rst:196 +#, fuzzy +msgid "Collections Abstract Base Classes -- Detailed Descriptions" +msgstr "Classes de base abstraites de collections" + +#: library/collections.abc.rst:201 msgid "ABC for classes that provide the :meth:`__contains__` method." msgstr "ABC pour les classes qui définissent la méthode :meth:`__contains__`." -#: library/collections.abc.rst:106 +#: library/collections.abc.rst:205 msgid "ABC for classes that provide the :meth:`__hash__` method." msgstr "ABC pour les classes qui définissent la méthode :meth:`__hash__`." -#: library/collections.abc.rst:110 +#: library/collections.abc.rst:209 msgid "ABC for classes that provide the :meth:`__len__` method." msgstr "ABC pour les classes qui définissent la méthode :meth:`__len__`." -#: library/collections.abc.rst:114 +#: library/collections.abc.rst:213 msgid "ABC for classes that provide the :meth:`__call__` method." msgstr "ABC pour les classes qui définissent la méthode :meth:`__call__`." -#: library/collections.abc.rst:118 +#: library/collections.abc.rst:217 msgid "ABC for classes that provide the :meth:`__iter__` method." msgstr "ABC pour les classes qui définissent la méthode :meth:`__iter__`." -#: library/collections.abc.rst:120 +#: library/collections.abc.rst:219 msgid "" "Checking ``isinstance(obj, Iterable)`` detects classes that are registered " "as :class:`Iterable` or that have an :meth:`__iter__` method, but it does " @@ -360,11 +485,11 @@ msgstr "" "meth:`__getitem__`. Le seul moyen fiable de déterminer si un objet est :term:" "`itérable ` est d'appeler ``iter(obj)``." -#: library/collections.abc.rst:128 +#: library/collections.abc.rst:227 msgid "ABC for sized iterable container classes." msgstr "ABC pour les classes de conteneurs itérables et *sized*." -#: library/collections.abc.rst:134 +#: library/collections.abc.rst:233 msgid "" "ABC for classes that provide the :meth:`~iterator.__iter__` and :meth:" "`~iterator.__next__` methods. See also the definition of :term:`iterator`." @@ -373,14 +498,14 @@ msgstr "" "et :meth:`~iterator.__next__`. Voir aussi la définition d':term:`itérateur " "`." -#: library/collections.abc.rst:140 +#: library/collections.abc.rst:239 msgid "" "ABC for iterable classes that also provide the :meth:`__reversed__` method." msgstr "" "ABC pour les classes d'itérables qui implémentent également la méthode :meth:" "`__reversed__`." -#: library/collections.abc.rst:147 +#: library/collections.abc.rst:246 msgid "" "ABC for generator classes that implement the protocol defined in :pep:`342` " "that extends iterators with the :meth:`~generator.send`, :meth:`~generator." @@ -392,11 +517,11 @@ msgstr "" "`~generator.send`, :meth:`~generator.throw` et :meth:`~generator.close`. " "Voir aussi la définition de :term:`générateur `." -#: library/collections.abc.rst:158 +#: library/collections.abc.rst:257 msgid "ABCs for read-only and mutable :term:`sequences `." msgstr "ABC pour les :term:`séquences ` immuables et muables." -#: library/collections.abc.rst:160 +#: library/collections.abc.rst:259 msgid "" "Implementation note: Some of the mixin methods, such as :meth:`__iter__`, :" "meth:`__reversed__` and :meth:`index`, make repeated calls to the " @@ -414,29 +539,29 @@ msgstr "" "*mixin* auront une performance quadratique, il serait alors judicieux de les " "surcharger." -#: library/collections.abc.rst:169 +#: library/collections.abc.rst:268 msgid "The index() method added support for *stop* and *start* arguments." msgstr "" "La méthode index() a ajouté le support des arguments *start* et *stop*." -#: library/collections.abc.rst:176 +#: library/collections.abc.rst:275 msgid "ABCs for read-only and mutable sets." msgstr "ABC pour les ensembles immuables et muables." -#: library/collections.abc.rst:181 +#: library/collections.abc.rst:280 msgid "ABCs for read-only and mutable :term:`mappings `." msgstr "" "ABC pour les :term:`tables de correspondances ` immuables et " "muables." -#: library/collections.abc.rst:188 +#: library/collections.abc.rst:287 msgid "" "ABCs for mapping, items, keys, and values :term:`views `." msgstr "" "ABC pour les :term:`vues` de *mappings* (tableaux de " "correspondances), d'éléments, de clés et de valeurs." -#: library/collections.abc.rst:192 +#: library/collections.abc.rst:291 msgid "" "ABC for :term:`awaitable` objects, which can be used in :keyword:`await` " "expressions. Custom implementations must provide the :meth:`__await__` " @@ -446,7 +571,7 @@ msgstr "" "utilisés dans les expressions :keyword:`await`. Les implémentations " "personnalisées doivent définir la méthode :meth:`__await__`." -#: library/collections.abc.rst:196 +#: library/collections.abc.rst:295 msgid "" ":term:`Coroutine ` objects and instances of the :class:" "`~collections.abc.Coroutine` ABC are all instances of this ABC." @@ -454,7 +579,7 @@ msgstr "" "Les objets :term:`coroutines ` et les instances de l'ABC :class:" "`~collections.abc.Coroutine` sont tous des instances de cette ABC." -#: library/collections.abc.rst:200 +#: library/collections.abc.rst:299 msgid "" "In CPython, generator-based coroutines (generators decorated with :func:" "`types.coroutine` or :func:`asyncio.coroutine`) are *awaitables*, even " @@ -469,7 +594,7 @@ msgstr "" "décoré va renvoyer ``False``. Utilisez :func:`inspect.isawaitable` pour les " "détecter." -#: library/collections.abc.rst:210 +#: library/collections.abc.rst:309 msgid "" "ABC for coroutine compatible classes. These implement the following " "methods, defined in :ref:`coroutine-objects`: :meth:`~coroutine.send`, :meth:" @@ -485,7 +610,7 @@ msgstr "" "Toutes les instances de :class:`Coroutine` sont également des instances de :" "class:`Awaitable`. Voir aussi la définition de :term:`coroutine`." -#: library/collections.abc.rst:218 +#: library/collections.abc.rst:317 msgid "" "In CPython, generator-based coroutines (generators decorated with :func:" "`types.coroutine` or :func:`asyncio.coroutine`) are *awaitables*, even " @@ -500,7 +625,7 @@ msgstr "" "décoré va renvoyer ``False``. Utilisez :func:`inspect.isawaitable` pour les " "détecter." -#: library/collections.abc.rst:228 +#: library/collections.abc.rst:327 msgid "" "ABC for classes that provide ``__aiter__`` method. See also the definition " "of :term:`asynchronous iterable`." @@ -508,7 +633,7 @@ msgstr "" "ABC pour les classes qui définissent la méthode ``__aiter__``. Voir aussi la " "définition d':term:`itérable asynchrone `." -#: library/collections.abc.rst:235 +#: library/collections.abc.rst:334 msgid "" "ABC for classes that provide ``__aiter__`` and ``__anext__`` methods. See " "also the definition of :term:`asynchronous iterator`." @@ -517,7 +642,7 @@ msgstr "" "``__anext__``. Voir aussi la définition d':term:`itérateur asynchrone " "`." -#: library/collections.abc.rst:242 +#: library/collections.abc.rst:341 msgid "" "ABC for asynchronous generator classes that implement the protocol defined " "in :pep:`525` and :pep:`492`." @@ -525,15 +650,20 @@ msgstr "" "ABC pour les classes de générateurs asynchrones qui implémentent le " "protocole défini dans la :pep:`525` et dans la :pep:`492`." -#: library/collections.abc.rst:248 +#: library/collections.abc.rst:347 +msgid "Examples and Recipes" +msgstr "" + +#: library/collections.abc.rst:349 +#, fuzzy msgid "" -"These ABCs allow us to ask classes or instances if they provide particular " +"ABCs allow us to ask classes or instances if they provide particular " "functionality, for example::" msgstr "" "Ces ABC permettent de demander à des classes ou à des instances si elles " "fournissent des fonctionnalités particulières, par exemple ::" -#: library/collections.abc.rst:255 +#: library/collections.abc.rst:356 msgid "" "Several of the ABCs are also useful as mixins that make it easier to develop " "classes supporting container APIs. For example, to write a class supporting " @@ -550,13 +680,13 @@ msgstr "" "apporte les méthodes restantes, comme :meth:`__and__` et :meth:" "`isdisjoint` ::" -#: library/collections.abc.rst:284 +#: library/collections.abc.rst:385 msgid "Notes on using :class:`Set` and :class:`MutableSet` as a mixin:" msgstr "" "Notes à propos de l'utilisation de :class:`Set` et :class:`MutableSet` comme " "*mixin* :" -#: library/collections.abc.rst:287 +#: library/collections.abc.rst:388 msgid "" "Since some set operations create new sets, the default mixin methods need a " "way to create new instances from an iterable. The class constructor is " @@ -579,7 +709,7 @@ msgstr "" "`_from_iterable` avec une méthode de classe ou une méthode ordinaire qui " "peut construire de nouvelles instances à partir d'un argument itérable." -#: library/collections.abc.rst:298 +#: library/collections.abc.rst:399 msgid "" "To override the comparisons (presumably for speed, as the semantics are " "fixed), redefine :meth:`__le__` and :meth:`__ge__`, then the other " @@ -589,7 +719,7 @@ msgstr "" "sémantique est fixe), il faut redéfinir :meth:`__le__` et :meth:`__ge__`, " "puis les autres opérations seront automatiquement adaptées." -#: library/collections.abc.rst:303 +#: library/collections.abc.rst:404 msgid "" "The :class:`Set` mixin provides a :meth:`_hash` method to compute a hash " "value for the set; however, :meth:`__hash__` is not defined because not all " @@ -603,7 +733,7 @@ msgstr "" "Pour rendre un ensemble hachable en utilisant les *mixins*, héritez de :meth:" "`Set` et de :meth:`Hashable`, puis définissez ``__hash__ = Set._hash``." -#: library/collections.abc.rst:311 +#: library/collections.abc.rst:412 msgid "" "`OrderedSet recipe `_ for an " "example built on :class:`MutableSet`." @@ -611,7 +741,7 @@ msgstr "" "`OrderedSet recipe `_ pour un " "exemple construit sur :class:`MutableSet`." -#: library/collections.abc.rst:314 +#: library/collections.abc.rst:415 msgid "For more about ABCs, see the :mod:`abc` module and :pep:`3119`." msgstr "" "Pour plus d'informations à propos des ABC, voir le module :mod:`abc` et la :" diff --git a/library/collections.po b/library/collections.po index 8b254bdcf..e8339f7cf 100644 --- a/library/collections.po +++ b/library/collections.po @@ -5,10 +5,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-03-20 19:28+0100\n" "Last-Translator: Loc Cosnier \n" -"Language-Team: French \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -121,21 +121,11 @@ msgstr "" "surcouche autour des objets chaînes de caractères pour faciliter l'héritage " "de ``str``" -#: library/collections.rst:41 -msgid "" -"Moved :ref:`collections-abstract-base-classes` to the :mod:`collections.abc` " -"module. For backwards compatibility, they continue to be visible in this " -"module through Python 3.9." -msgstr "" -"Les :ref:`collections-abstract-base-classes` ont été déplacées vers le " -"module :mod:`collections.abc`. Pour assurer la rétrocompatibilité, elles " -"sont toujours disponibles dans ce module dans Python 3.9." - -#: library/collections.rst:43 +#: library/collections.rst:38 msgid ":class:`ChainMap` objects" msgstr "Objets :class:`ChainMap`" -#: library/collections.rst:47 +#: library/collections.rst:42 msgid "" "A :class:`ChainMap` class is provided for quickly linking a number of " "mappings so they can be treated as a single unit. It is often much faster " @@ -147,14 +137,14 @@ msgstr "" "que de créer un nouveau dictionnaire et d'effectuer plusieurs appels de :" "meth:`~dict.update`." -#: library/collections.rst:51 +#: library/collections.rst:46 msgid "" "The class can be used to simulate nested scopes and is useful in templating." msgstr "" "Cette classe peut être utilisée pour simuler des portées imbriquées, elle " "est aussi utile pour le *templating*." -#: library/collections.rst:55 +#: library/collections.rst:50 msgid "" "A :class:`ChainMap` groups multiple dicts or other mappings together to " "create a single, updateable view. If no *maps* are specified, a single " @@ -166,7 +156,7 @@ msgstr "" "paramètre *maps* est vide, un dictionnaire vide est fourni de telle manière " "qu'une nouvelle chaîne possède toujours au moins un dictionnaire." -#: library/collections.rst:59 +#: library/collections.rst:54 msgid "" "The underlying mappings are stored in a list. That list is public and can " "be accessed or updated using the *maps* attribute. There is no other state." @@ -175,7 +165,7 @@ msgstr "" "publique et peut être consultée ou mise à jour via l'attribut *maps*. Il n'y " "a pas d'autre état." -#: library/collections.rst:62 +#: library/collections.rst:57 msgid "" "Lookups search the underlying mappings successively until a key is found. " "In contrast, writes, updates, and deletions only operate on the first " @@ -185,7 +175,7 @@ msgstr "" "la première clé correspondante. En revanche, les écritures, mises à jour et " "suppressions n'affectent que le premier dictionnaire." -#: library/collections.rst:65 +#: library/collections.rst:60 msgid "" "A :class:`ChainMap` incorporates the underlying mappings by reference. So, " "if one of the underlying mappings gets updated, those changes will be " @@ -195,7 +185,7 @@ msgstr "" "référence. Ainsi, si l'un d'eux est modifié, les changements affectent " "également la :class:`ChainMap`." -#: library/collections.rst:69 +#: library/collections.rst:64 msgid "" "All of the usual dictionary methods are supported. In addition, there is a " "*maps* attribute, a method for creating new subcontexts, and a property for " @@ -206,7 +196,7 @@ msgstr "" "contextes et une propriété pour accéder à tous les dictionnaires sous-" "jacents excepté le premier :" -#: library/collections.rst:75 +#: library/collections.rst:70 msgid "" "A user updateable list of mappings. The list is ordered from first-searched " "to last-searched. It is the only stored state and can be modified to change " @@ -218,13 +208,15 @@ msgstr "" "pour changer l'ordre de recherche. La liste doit toujours contenir au moins " "un dictionnaire." -#: library/collections.rst:82 +#: library/collections.rst:77 +#, fuzzy msgid "" "Returns a new :class:`ChainMap` containing a new map followed by all of the " "maps in the current instance. If ``m`` is specified, it becomes the new map " "at the front of the list of mappings; if not specified, an empty dict is " "used, so that a call to ``d.new_child()`` is equivalent to: ``ChainMap({}, " -"*d.maps)``. This method is used for creating subcontexts that can be " +"*d.maps)``. If any keyword arguments are specified, they update passed map " +"or new empty dict. This method is used for creating subcontexts that can be " "updated without altering values in any of the parent mappings." msgstr "" "Renvoie un nouvel objet :class:`ChainMap` contenant un nouveau dictionnaire " @@ -235,11 +227,15 @@ msgstr "" "créer des sous-contextes qui peuvent être mis à jour sans altérer les " "valeurs dans les dictionnaires parents." -#: library/collections.rst:90 +#: library/collections.rst:86 msgid "The optional ``m`` parameter was added." msgstr "Ajout du paramètre optionnel ``m``." -#: library/collections.rst:95 +#: library/collections.rst:89 +msgid "Keyword arguments support was added." +msgstr "" + +#: library/collections.rst:94 msgid "" "Property returning a new :class:`ChainMap` containing all of the maps in the " "current instance except the first one. This is useful for skipping the " @@ -256,7 +252,7 @@ msgstr "" "`super`. Une référence à ``d.parents`` est équivalente à : ``ChainMap(*d." "maps[1:])``." -#: library/collections.rst:103 +#: library/collections.rst:102 msgid "" "Note, the iteration order of a :class:`ChainMap()` is determined by scanning " "the mappings last to first::" @@ -264,7 +260,7 @@ msgstr "" "Notez que l'itération de :class:`ChainMap()` se fait en parcourant les " "tableaux de correspondances du dernier jusqu'au premier ::" -#: library/collections.rst:111 +#: library/collections.rst:110 msgid "" "This gives the same ordering as a series of :meth:`dict.update` calls " "starting with the last mapping::" @@ -272,13 +268,13 @@ msgstr "" "Cela produit le même ordre qu'une suite d'appels à :meth:`dict.update` en " "commençant par le dernier tableau de correspondances ::" -#: library/collections.rst:119 +#: library/collections.rst:118 msgid "Added support for ``|`` and ``|=`` operators, specified in :pep:`584`." msgstr "" "Ajout de la gestion des opérateurs ``|`` et ``|=`` tels que définis dans :" "pep:`584`." -#: library/collections.rst:124 +#: library/collections.rst:123 msgid "" "The `MultiContext class `_ in the Enthought `CodeTools package " @@ -290,7 +286,7 @@ msgstr "" "github.com/enthought/codetools>`_ d'Enthought possède des options pour gérer " "l'écriture dans n'importe quel dictionnaire de la chaîne." -#: library/collections.rst:130 +#: library/collections.rst:129 msgid "" "Django's `Context class `_ for templating is a read-only chain of mappings. It " @@ -305,7 +301,7 @@ msgstr "" "`~collections.ChainMap.new_child` et à la propriété :attr:`~collections." "ChainMap.parents`." -#: library/collections.rst:137 +#: library/collections.rst:136 msgid "" "The `Nested Contexts recipe `_ " "has options to control whether writes and other mutations apply only to the " @@ -316,7 +312,7 @@ msgstr "" "mutations ne s'appliquent qu'au premier ou à un autre dictionnaire de la " "chaîne." -#: library/collections.rst:142 +#: library/collections.rst:141 msgid "" "A `greatly simplified read-only version of Chainmap `_." @@ -324,21 +320,21 @@ msgstr "" "Une `version grandement simplifiée de Chainmap en lecture seule `_." -#: library/collections.rst:147 +#: library/collections.rst:146 msgid ":class:`ChainMap` Examples and Recipes" msgstr "Exemples et cas pratiques utilisant :class:`ChainMap`" -#: library/collections.rst:149 +#: library/collections.rst:148 msgid "This section shows various approaches to working with chained maps." msgstr "" "Cette partie montre diverses approches afin de travailler avec les " "dictionnaires chaînés." -#: library/collections.rst:152 +#: library/collections.rst:151 msgid "Example of simulating Python's internal lookup chain::" msgstr "Exemple 1 : simulation de la chaîne de recherche interne de Python ::" -#: library/collections.rst:157 +#: library/collections.rst:156 msgid "" "Example of letting user specified command-line arguments take precedence " "over environment variables which in turn take precedence over default " @@ -347,7 +343,7 @@ msgstr "" "Exemple 2 : spécification d'une hiérarchie pour les options : ligne de " "commande, variable d'environnement, valeurs par défaut ::" -#: library/collections.rst:174 +#: library/collections.rst:173 msgid "" "Example patterns for using the :class:`ChainMap` class to simulate nested " "contexts::" @@ -355,7 +351,7 @@ msgstr "" "Exemple 3 : modèles pour simuler des contextes imbriqués avec la classe :" "class:`ChainMap` ::" -#: library/collections.rst:193 +#: library/collections.rst:192 msgid "" "The :class:`ChainMap` class only makes updates (writes and deletions) to the " "first mapping in the chain while lookups will search the full chain. " @@ -368,11 +364,11 @@ msgstr "" "profondeur, on peut facilement faire une sous-classe qui met à jour les clés " "trouvées de la chaîne en profondeur ::" -#: library/collections.rst:224 +#: library/collections.rst:223 msgid ":class:`Counter` objects" msgstr "Objets :class:`Counter`" -#: library/collections.rst:226 +#: library/collections.rst:225 msgid "" "A counter tool is provided to support convenient and rapid tallies. For " "example::" @@ -380,7 +376,7 @@ msgstr "" "Ce module fournit un outil pour effectuer rapidement et facilement des " "dénombrements. Par exemple ::" -#: library/collections.rst:245 +#: library/collections.rst:244 msgid "" "A :class:`Counter` is a :class:`dict` subclass for counting hashable " "objects. It is a collection where elements are stored as dictionary keys and " @@ -395,7 +391,7 @@ msgstr "" "entiers relatifs (positifs, négatifs ou nuls). La classe :class:`Counter` " "est similaire aux sacs ou aux multiensembles dans d'autres langages." -#: library/collections.rst:251 +#: library/collections.rst:250 msgid "" "Elements are counted from an *iterable* or initialized from another " "*mapping* (or counter):" @@ -403,7 +399,7 @@ msgstr "" "Les éléments sont comptés à partir d'un itérable ou initialisés à partir " "d'un autre dictionnaire (ou compteur) :" -#: library/collections.rst:259 +#: library/collections.rst:258 msgid "" "Counter objects have a dictionary interface except that they return a zero " "count for missing items instead of raising a :exc:`KeyError`:" @@ -412,7 +408,7 @@ msgstr "" "qu'ils renvoient zéro au lieu de lever une exception :exc:`KeyError` pour " "des éléments manquants :" -#: library/collections.rst:266 +#: library/collections.rst:265 msgid "" "Setting a count to zero does not remove an element from a counter. Use " "``del`` to remove it entirely:" @@ -420,7 +416,7 @@ msgstr "" "Mettre un comptage à zéro pour un élément ne le retire pas de l'objet " "Counter. Il faut utiliser ``del`` pour le supprimer complètement :" -#: library/collections.rst:274 +#: library/collections.rst:273 msgid "" "As a :class:`dict` subclass, :class:`Counter` Inherited the capability to " "remember insertion order. Math operations on *Counter* objects also " @@ -434,7 +430,7 @@ msgstr "" "ordonnés d'abord en fonction de la recherche d'apparition pour l'opérande de " "gauche, puis dans l'ordre d'apparition de l'opérande de droite." -#: library/collections.rst:280 +#: library/collections.rst:279 msgid "" "Counter objects support three methods beyond those available for all " "dictionaries:" @@ -442,7 +438,7 @@ msgstr "" "En plus des méthodes disponibles pour tous les dictionnaires, les objets " "compteurs gèrent trois méthodes supplémentaires :" -#: library/collections.rst:285 +#: library/collections.rst:284 msgid "" "Return an iterator over elements repeating each as many times as its count. " "Elements are returned in the order first encountered. If an element's count " @@ -453,7 +449,7 @@ msgstr "" "lequel ils sont rencontrés pour la première fois. Si le comptage d'un " "élément est strictement inférieur à 1, alors :meth:`elements` l'ignore." -#: library/collections.rst:295 +#: library/collections.rst:294 msgid "" "Return a list of the *n* most common elements and their counts from the most " "common to the least. If *n* is omitted or ``None``, :meth:`most_common` " @@ -466,7 +462,7 @@ msgstr "" "éléments qui ont le même nombre d'occurrences sont ordonnés par l'ordre " "selon lequel ils ont été rencontrés pour la première fois :" -#: library/collections.rst:305 +#: library/collections.rst:304 msgid "" "Elements are subtracted from an *iterable* or from another *mapping* (or " "counter). Like :meth:`dict.update` but subtracts counts instead of " @@ -477,7 +473,11 @@ msgstr "" "update` mais soustrait les nombres d'occurrences au lieu de les remplacer. " "Les entrées et sorties peuvent être négatives ou nulles." -#: library/collections.rst:317 +#: library/collections.rst:318 +msgid "Compute the sum of the counts." +msgstr "" + +#: library/collections.rst:326 msgid "" "The usual dictionary methods are available for :class:`Counter` objects " "except for two which work differently for counters." @@ -486,13 +486,13 @@ msgstr "" "class:`Counter` à l'exception de deux méthodes qui fonctionnent différemment " "pour les compteurs." -#: library/collections.rst:322 +#: library/collections.rst:331 msgid "This class method is not implemented for :class:`Counter` objects." msgstr "" "Cette méthode de classe n'est pas implémentée pour les objets :class:" "`Counter`." -#: library/collections.rst:326 +#: library/collections.rst:335 msgid "" "Elements are counted from an *iterable* or added-in from another *mapping* " "(or counter). Like :meth:`dict.update` but adds counts instead of replacing " @@ -505,11 +505,30 @@ msgstr "" "De plus, l'itérable doit être une séquence d'éléments et non une séquence de " "paires ``(clé, valeur)``." -#: library/collections.rst:331 +#: library/collections.rst:340 +msgid "" +"Counters support rich comparison operators for equality, subset, and " +"superset relationships: ``==``, ``!=``, ``<``, ``<=``, ``>``, ``>=``. All of " +"those tests treat missing elements as having zero counts so that " +"``Counter(a=1) == Counter(a=1, b=0)`` returns true." +msgstr "" + +#: library/collections.rst:345 +msgid "Rich comparison operations we were added" +msgstr "" + +#: library/collections.rst:348 +msgid "" +"In equality tests, missing elements are treated as having zero counts. " +"Formerly, ``Counter(a=3)`` and ``Counter(a=3, b=0)`` were considered " +"distinct." +msgstr "" + +#: library/collections.rst:353 msgid "Common patterns for working with :class:`Counter` objects::" msgstr "Opérations usuelles sur les objets :class:`Counter` ::" -#: library/collections.rst:343 +#: library/collections.rst:365 msgid "" "Several mathematical operations are provided for combining :class:`Counter` " "objects to produce multisets (counters that have counts greater than zero). " @@ -529,7 +548,7 @@ msgstr "" "comptages relatifs, mais la sortie exclut les résultats avec des comptages " "négatifs ou nuls." -#: library/collections.rst:361 +#: library/collections.rst:383 msgid "" "Unary addition and subtraction are shortcuts for adding an empty counter or " "subtracting from an empty counter." @@ -538,14 +557,14 @@ msgstr "" "raccourcis pour respectivement additionner un compteur avec un compteur vide " "ou et pour retrancher un compteur d'un compteur vide." -#: library/collections.rst:370 +#: library/collections.rst:392 msgid "" "Added support for unary plus, unary minus, and in-place multiset operations." msgstr "" "Ajout de la gestion des additions et soustractions unaires, et des " "remplacements dans les multiensembles." -#: library/collections.rst:375 +#: library/collections.rst:397 msgid "" "Counters were primarily designed to work with positive integers to represent " "running counts; however, care was taken to not unnecessarily preclude use " @@ -558,7 +577,7 @@ msgstr "" "n'ont pas été écartés. Pour vous aider dans ces cas particuliers, cette " "section documente la plage minimale et les restrictions de type." -#: library/collections.rst:380 +#: library/collections.rst:402 msgid "" "The :class:`Counter` class itself is a dictionary subclass with no " "restrictions on its keys and values. The values are intended to be numbers " @@ -569,7 +588,7 @@ msgstr "" "vocation à être des nombres représentants des comptages, mais il est " "*possible* de stocker n'importe quel type de valeur." -#: library/collections.rst:384 +#: library/collections.rst:406 msgid "" "The :meth:`~Counter.most_common` method requires only that the values be " "orderable." @@ -577,7 +596,7 @@ msgstr "" "La méthode :meth:`~Counter.most_common` exige uniquement que les valeurs " "soient ordonnables." -#: library/collections.rst:386 +#: library/collections.rst:408 msgid "" "For in-place operations such as ``c[key] += 1``, the value type need only " "support addition and subtraction. So fractions, floats, and decimals would " @@ -591,7 +610,7 @@ msgstr "" "même pour :meth:`~Counter.update` et :meth:`~Cointer.substract` qui " "acceptent des valeurs négatives ou nulles dans les entrées et sorties." -#: library/collections.rst:392 +#: library/collections.rst:414 msgid "" "The multiset methods are designed only for use cases with positive values. " "The inputs may be negative or zero, but only outputs with positive values " @@ -604,7 +623,7 @@ msgstr "" "positives sont créées. Il n'y a pas de restriction de type, mais les types " "des valeurs doivent gérer l'addition, la soustraction et la comparaison." -#: library/collections.rst:397 +#: library/collections.rst:419 msgid "" "The :meth:`~Counter.elements` method requires integer counts. It ignores " "zero and negative counts." @@ -612,7 +631,7 @@ msgstr "" "La méthode :meth:`~Counter.elements` exige des valeurs entières et ignore " "les valeurs négatives ou nulles." -#: library/collections.rst:402 +#: library/collections.rst:424 msgid "" "`Bag class `_ in Smalltalk." @@ -620,7 +639,7 @@ msgstr "" "`Bag class `_ dans Smalltalk." -#: library/collections.rst:405 +#: library/collections.rst:427 msgid "" "Wikipedia entry for `Multisets `_." msgstr "" @@ -628,7 +647,7 @@ msgstr "" "Multiensemble>`_ sur Wikipédia (ou `l'article en anglais `_)." -#: library/collections.rst:407 +#: library/collections.rst:429 msgid "" "`C++ multisets `_ tutorial with examples." @@ -636,7 +655,7 @@ msgstr "" "Des guides et exemples à propos des `multiensembles en C++ `_." -#: library/collections.rst:410 +#: library/collections.rst:432 msgid "" "For mathematical operations on multisets and their use cases, see *Knuth, " "Donald. The Art of Computer Programming Volume II, Section 4.6.3, Exercise " @@ -646,7 +665,7 @@ msgstr "" "applications, voir *Knuth, Donald. The Art of Computer Programming Volume " "II, Section 4.6.3, Exercise 19*." -#: library/collections.rst:414 +#: library/collections.rst:436 msgid "" "To enumerate all distinct multisets of a given size over a given set of " "elements, see :func:`itertools.combinations_with_replacement`::" @@ -655,11 +674,11 @@ msgstr "" "ensemble donné d'éléments, voir :func:`itertools." "combinations_with_replacement` ::" -#: library/collections.rst:421 +#: library/collections.rst:443 msgid ":class:`deque` objects" msgstr "Objets :class:`deque`" -#: library/collections.rst:425 +#: library/collections.rst:447 msgid "" "Returns a new deque object initialized left-to-right (using :meth:`append`) " "with data from *iterable*. If *iterable* is not specified, the new deque is " @@ -669,7 +688,7 @@ msgstr "" "meth:`append`) avec les données d'*iterable*. Si *iterable* n'est pas " "spécifié, alors la nouvelle *deque* est vide." -#: library/collections.rst:428 +#: library/collections.rst:450 msgid "" "Deques are a generalization of stacks and queues (the name is pronounced " "\"deck\" and is short for \"double-ended queue\"). Deques support thread-" @@ -684,7 +703,7 @@ msgstr "" "vue de la mémoire des deux côtés de la *deque*, avec approximativement la " "même performance en *O(1)* dans les deux sens." -#: library/collections.rst:433 +#: library/collections.rst:455 msgid "" "Though :class:`list` objects support similar operations, they are optimized " "for fast fixed-length operations and incur O(n) memory movement costs for " @@ -697,7 +716,7 @@ msgstr "" "position de la représentation des données sous-jacentes entraînent des coûts " "de déplacement de mémoire en *O(n)*." -#: library/collections.rst:439 +#: library/collections.rst:461 msgid "" "If *maxlen* is not specified or is ``None``, deques may grow to an arbitrary " "length. Otherwise, the deque is bounded to the specified maximum length. " @@ -716,32 +735,32 @@ msgstr "" "Elles sont aussi utiles pour le suivi de transactions et autres lots de " "données où seule l'activité récente est intéressante." -#: library/collections.rst:448 +#: library/collections.rst:470 msgid "Deque objects support the following methods:" msgstr "Les objets *deques* gèrent les méthodes suivantes :" -#: library/collections.rst:452 +#: library/collections.rst:474 msgid "Add *x* to the right side of the deque." msgstr "Ajoute *x* à l'extrémité droite de la *deque*." -#: library/collections.rst:457 +#: library/collections.rst:479 msgid "Add *x* to the left side of the deque." msgstr "Ajoute *x* à l'extrémité gauche de la *deque*." -#: library/collections.rst:462 +#: library/collections.rst:484 msgid "Remove all elements from the deque leaving it with length 0." msgstr "" "Supprime tous les éléments de la *deque* et la laisse avec une longueur de 0." -#: library/collections.rst:467 +#: library/collections.rst:489 msgid "Create a shallow copy of the deque." msgstr "Crée une copie superficielle de la *deque*." -#: library/collections.rst:474 +#: library/collections.rst:496 msgid "Count the number of deque elements equal to *x*." msgstr "Compte le nombre d'éléments de la *deque* égaux à *x*." -#: library/collections.rst:481 +#: library/collections.rst:503 msgid "" "Extend the right side of the deque by appending elements from the iterable " "argument." @@ -749,7 +768,7 @@ msgstr "" "Étend la *deque* en ajoutant les éléments de l'itérable en argument à son " "extrémité droite." -#: library/collections.rst:487 +#: library/collections.rst:509 msgid "" "Extend the left side of the deque by appending elements from *iterable*. " "Note, the series of left appends results in reversing the order of elements " @@ -759,7 +778,7 @@ msgstr "" "gauche. Dans ce cas, notez que la série d'ajouts inverse l'ordre des " "éléments de l'argument itérable." -#: library/collections.rst:494 +#: library/collections.rst:516 msgid "" "Return the position of *x* in the deque (at or after index *start* and " "before index *stop*). Returns the first match or raises :exc:`ValueError` " @@ -769,11 +788,11 @@ msgstr "" "jusqu'à *stop* exclus). Renvoie la première correspondance ou lève :exc:" "`ValueError` si aucune n'est trouvée." -#: library/collections.rst:503 +#: library/collections.rst:525 msgid "Insert *x* into the deque at position *i*." msgstr "Insère *x* dans la *deque* à la position *i*." -#: library/collections.rst:505 +#: library/collections.rst:527 msgid "" "If the insertion would cause a bounded deque to grow beyond *maxlen*, an :" "exc:`IndexError` is raised." @@ -781,7 +800,7 @@ msgstr "" "Si une insertion provoque un dépassement de la taille limitée d'une *deque*, " "alors elle lève une exception :exc:`IndexError`." -#: library/collections.rst:513 +#: library/collections.rst:535 msgid "" "Remove and return an element from the right side of the deque. If no " "elements are present, raises an :exc:`IndexError`." @@ -789,7 +808,7 @@ msgstr "" "Retire et renvoie un élément de l'extrémité droite de la *deque*. S'il n'y a " "aucun élément, lève une exception :exc:`IndexError`." -#: library/collections.rst:519 +#: library/collections.rst:541 msgid "" "Remove and return an element from the left side of the deque. If no elements " "are present, raises an :exc:`IndexError`." @@ -797,7 +816,7 @@ msgstr "" "Retire et renvoie un élément de l'extrémité gauche de la *deque*. S'il n'y a " "aucun élément, lève une exception :exc:`IndexError`." -#: library/collections.rst:525 +#: library/collections.rst:547 msgid "" "Remove the first occurrence of *value*. If not found, raises a :exc:" "`ValueError`." @@ -805,13 +824,13 @@ msgstr "" "Supprime la première occurrence de *value*. Si aucune occurrence n'est " "trouvée, lève une exception :exc:`ValueError`." -#: library/collections.rst:531 +#: library/collections.rst:553 msgid "Reverse the elements of the deque in-place and then return ``None``." msgstr "" "Inverse le sens des éléments de la *deque* sans créer de copie et renvoie " "``None``." -#: library/collections.rst:538 +#: library/collections.rst:560 msgid "" "Rotate the deque *n* steps to the right. If *n* is negative, rotate to the " "left." @@ -819,7 +838,7 @@ msgstr "" "Décale les éléments de la *deque* de *n* places vers la droite (le dernier " "élément revient au début). Si *n* est négatif, décale vers la gauche." -#: library/collections.rst:541 +#: library/collections.rst:563 msgid "" "When the deque is not empty, rotating one step to the right is equivalent to " "``d.appendleft(d.pop())``, and rotating one step to the left is equivalent " @@ -829,16 +848,16 @@ msgstr "" "équivaut à ``d.appendleft(d.pop())`` et un décalage d'une place vers la " "gauche est équivalent à ``d.append(d.popleft())``." -#: library/collections.rst:546 +#: library/collections.rst:568 msgid "Deque objects also provide one read-only attribute:" msgstr "" "Les objets *deques* fournissent également un attribut en lecture seule :" -#: library/collections.rst:550 +#: library/collections.rst:572 msgid "Maximum size of a deque or ``None`` if unbounded." msgstr "La taille maximale d'une *deque*, ou ``None`` si illimitée." -#: library/collections.rst:555 +#: library/collections.rst:577 msgid "" "In addition to the above, deques support iteration, pickling, ``len(d)``, " "``reversed(d)``, ``copy.copy(d)``, ``copy.deepcopy(d)``, membership testing " @@ -853,7 +872,7 @@ msgstr "" "L'accès par indice est en *O(1)* aux extrémités mais en *O(n)* au milieu. " "Pour des accès aléatoires rapides, il est préférable d'utiliser des listes." -#: library/collections.rst:561 +#: library/collections.rst:583 msgid "" "Starting in version 3.5, deques support ``__add__()``, ``__mul__()``, and " "``__imul__()``." @@ -861,20 +880,20 @@ msgstr "" "Depuis la version 3.5, les *deques* gèrent ``__add__()``, ``__mul__()`` et " "``__imul__()``." -#: library/collections.rst:564 +#: library/collections.rst:586 msgid "Example:" msgstr "Exemple :" -#: library/collections.rst:621 +#: library/collections.rst:643 msgid ":class:`deque` Recipes" msgstr "Cas pratiques utilisant :class:`deque`" -#: library/collections.rst:623 +#: library/collections.rst:645 msgid "This section shows various approaches to working with deques." msgstr "" "Cette partie montre diverses approches afin de travailler avec les *deques*." -#: library/collections.rst:625 +#: library/collections.rst:647 msgid "" "Bounded length deques provide functionality similar to the ``tail`` filter " "in Unix::" @@ -882,7 +901,7 @@ msgstr "" "Les *deques* à taille limitée apportent une fonctionnalité similaire au " "filtre ``tail`` d'Unix ::" -#: library/collections.rst:633 +#: library/collections.rst:655 msgid "" "Another approach to using deques is to maintain a sequence of recently added " "elements by appending to the right and popping to the left::" @@ -891,7 +910,7 @@ msgstr "" "d'éléments récemment ajoutés en les ajoutant à droite et en retirant les " "anciens par la gauche ::" -#: library/collections.rst:648 +#: library/collections.rst:670 msgid "" "A `round-robin scheduler `_ can be implemented with input iterators stored in a :" @@ -907,7 +926,7 @@ msgstr "" "avec la méthode :meth:`~deque.popleft` ; ou bien il peut être remis à la fin " "avec la méthode :meth:`~ deque.rotate` ::" -#: library/collections.rst:667 +#: library/collections.rst:689 msgid "" "The :meth:`~deque.rotate` method provides a way to implement :class:`deque` " "slicing and deletion. For example, a pure Python implementation of ``del " @@ -919,7 +938,7 @@ msgstr "" "utilise la méthode ``rotate()`` pour mettre en position les éléments à " "éjecter ::" -#: library/collections.rst:676 +#: library/collections.rst:698 msgid "" "To implement :class:`deque` slicing, use a similar approach applying :meth:" "`~deque.rotate` to bring a target element to the left side of the deque. " @@ -936,13 +955,14 @@ msgstr "" "aisé d'implémenter les manipulations des piles inspirées du Forth telles que " "``dup``, ``drop``, ``swap``, ``over``, ``pick``, ``rot`` et ``roll``." -#: library/collections.rst:686 +#: library/collections.rst:708 msgid ":class:`defaultdict` objects" msgstr "Objets :class:`defaultdict`" -#: library/collections.rst:690 +#: library/collections.rst:712 +#, fuzzy msgid "" -"Returns a new dictionary-like object. :class:`defaultdict` is a subclass of " +"Return a new dictionary-like object. :class:`defaultdict` is a subclass of " "the built-in :class:`dict` class. It overrides one method and adds one " "writable instance variable. The remaining functionality is the same as for " "the :class:`dict` class and is not documented here." @@ -953,7 +973,7 @@ msgstr "" "autres fonctionnalités sont les mêmes que celles des objets :class:`dict` et " "ne sont pas documentées ici." -#: library/collections.rst:695 +#: library/collections.rst:717 msgid "" "The first argument provides the initial value for the :attr:" "`default_factory` attribute; it defaults to ``None``. All remaining " @@ -966,7 +986,7 @@ msgstr "" "si on les passait au constructeur de :class:`dict`, y compris les arguments " "nommés." -#: library/collections.rst:701 +#: library/collections.rst:723 msgid "" ":class:`defaultdict` objects support the following method in addition to the " "standard :class:`dict` operations:" @@ -974,7 +994,7 @@ msgstr "" "En plus des opérations usuelles de :class:`dict`, les objets :class:" "`defaultdict` gèrent les méthodes supplémentaires suivantes :" -#: library/collections.rst:706 +#: library/collections.rst:728 msgid "" "If the :attr:`default_factory` attribute is ``None``, this raises a :exc:" "`KeyError` exception with the *key* as argument." @@ -982,7 +1002,7 @@ msgstr "" "Si l'attribut :attr:`default_factory` est ``None``, lève une exception :exc:" "`KeyError` avec *key* comme argument." -#: library/collections.rst:709 +#: library/collections.rst:731 msgid "" "If :attr:`default_factory` is not ``None``, it is called without arguments " "to provide a default value for the given *key*, this value is inserted in " @@ -992,7 +1012,7 @@ msgstr "" "argument pour fournir une valeur par défaut pour la *key* demandée. Cette " "valeur est insérée dans le dictionnaire avec pour clé *key* et est renvoyée." -#: library/collections.rst:713 +#: library/collections.rst:735 msgid "" "If calling :attr:`default_factory` raises an exception this exception is " "propagated unchanged." @@ -1000,7 +1020,7 @@ msgstr "" "Si appeler :attr:`default_factory` lève une exception, celle-ci est " "transmise inchangée." -#: library/collections.rst:716 +#: library/collections.rst:738 msgid "" "This method is called by the :meth:`__getitem__` method of the :class:`dict` " "class when the requested key is not found; whatever it returns or raises is " @@ -1010,7 +1030,7 @@ msgstr "" "class:`dict` lorsque la clé demandée n'est pas trouvée. Ce qu'elle renvoie " "ou lève est alors renvoyé ou levé par :meth:`__getitem__`." -#: library/collections.rst:720 +#: library/collections.rst:742 msgid "" "Note that :meth:`__missing__` is *not* called for any operations besides :" "meth:`__getitem__`. This means that :meth:`get` will, like normal " @@ -1022,11 +1042,11 @@ msgstr "" "``None`` comme les dictionnaires natifs dans les cas triviaux et n'utilise " "pas :attr:`default_factory`." -#: library/collections.rst:726 +#: library/collections.rst:748 msgid ":class:`defaultdict` objects support the following instance variable:" msgstr "Les objets :class:`defaultdict` gèrent la variable d'instance :" -#: library/collections.rst:731 +#: library/collections.rst:753 msgid "" "This attribute is used by the :meth:`__missing__` method; it is initialized " "from the first argument to the constructor, if present, or to ``None``, if " @@ -1036,18 +1056,18 @@ msgstr "" "initialisé par le premier argument passé au constructeur, s'il est spécifié, " "sinon par ``None``." -#: library/collections.rst:1132 +#: library/collections.rst:1154 msgid "" "Added merge (``|``) and update (``|=``) operators, specified in :pep:`584`." msgstr "" "ajout des opérateurs fusion (``|``) et mise-à-jour (``|=``) tels que définis " "dans :pep:`584`." -#: library/collections.rst:741 +#: library/collections.rst:763 msgid ":class:`defaultdict` Examples" msgstr "Exemples utilisant :class:`defaultdict`" -#: library/collections.rst:743 +#: library/collections.rst:765 msgid "" "Using :class:`list` as the :attr:`~defaultdict.default_factory`, it is easy " "to group a sequence of key-value pairs into a dictionary of lists:" @@ -1056,7 +1076,7 @@ msgstr "" "le regroupement d'une séquence de paires clé-valeur en un dictionnaire de " "listes :" -#: library/collections.rst:754 +#: library/collections.rst:776 msgid "" "When each key is encountered for the first time, it is not already in the " "mapping; so an entry is automatically created using the :attr:`~defaultdict." @@ -1077,7 +1097,7 @@ msgstr "" "technique est plus simple et plus rapide qu'une technique équivalente " "utilisant :meth:`dict.setdefault` :" -#: library/collections.rst:769 +#: library/collections.rst:791 msgid "" "Setting the :attr:`~defaultdict.default_factory` to :class:`int` makes the :" "class:`defaultdict` useful for counting (like a bag or multiset in other " @@ -1087,7 +1107,7 @@ msgstr "" "classe :class:`defaultdict` pratique pour le comptage (comme un sac ou multi-" "ensemble dans d'autres langages) :" -#: library/collections.rst:781 +#: library/collections.rst:803 msgid "" "When a letter is first encountered, it is missing from the mapping, so the :" "attr:`~defaultdict.default_factory` function calls :func:`int` to supply a " @@ -1099,7 +1119,7 @@ msgstr "" "appelle :func:`int` pour mettre un nouveau compteur à zéro. L'incrémentation " "augmente ensuite le comptage pour chaque lettre." -#: library/collections.rst:785 +#: library/collections.rst:807 msgid "" "The function :func:`int` which always returns zero is just a special case of " "constant functions. A faster and more flexible way to create constant " @@ -1111,7 +1131,7 @@ msgstr "" "une fonction constante est d'utiliser une fonction lambda qui peut fournir " "n'importe quelle valeur constante (pas seulement zéro) :" -#: library/collections.rst:797 +#: library/collections.rst:819 msgid "" "Setting the :attr:`~defaultdict.default_factory` to :class:`set` makes the :" "class:`defaultdict` useful for building a dictionary of sets:" @@ -1119,13 +1139,13 @@ msgstr "" "Utiliser :class:`set` comme :attr:`~defaultdict.default_factory` rend la " "classe :class:`defaultdict` pratique pour créer un dictionnaire d'ensembles :" -#: library/collections.rst:810 +#: library/collections.rst:832 msgid ":func:`namedtuple` Factory Function for Tuples with Named Fields" msgstr "" ":func:`namedtuple` : fonction de construction pour *n*-uplets avec des " "champs nommés" -#: library/collections.rst:812 +#: library/collections.rst:834 msgid "" "Named tuples assign meaning to each position in a tuple and allow for more " "readable, self-documenting code. They can be used wherever regular tuples " @@ -1138,7 +1158,7 @@ msgstr "" "possibilité d'accéder à leurs champs grâce à leur nom au lieu de leur index " "de position." -#: library/collections.rst:818 +#: library/collections.rst:840 msgid "" "Returns a new tuple subclass named *typename*. The new subclass is used to " "create tuple-like objects that have fields accessible by attribute lookup as " @@ -1154,7 +1174,7 @@ msgstr "" "méthode :meth:`__repr__` pratique qui liste le contenu du *n*-uplet au " "format ``nom=valeur``." -#: library/collections.rst:824 +#: library/collections.rst:846 msgid "" "The *field_names* are a sequence of strings such as ``['x', 'y']``. " "Alternatively, *field_names* can be a single string with each fieldname " @@ -1165,7 +1185,7 @@ msgstr "" "sont séparés par un espace et/ou une virgule, par exemple ``'x y'`` ou ``'x, " "y'``." -#: library/collections.rst:828 +#: library/collections.rst:850 msgid "" "Any valid Python identifier may be used for a fieldname except for names " "starting with an underscore. Valid identifiers consist of letters, digits, " @@ -1179,7 +1199,7 @@ msgstr "" "`keyword` tel que ``class``, ``for``, ``return``, ``global``, ``pass`` ou " "``raise``." -#: library/collections.rst:834 +#: library/collections.rst:856 msgid "" "If *rename* is true, invalid fieldnames are automatically replaced with " "positional names. For example, ``['abc', 'def', 'ghi', 'abc']`` is " @@ -1191,7 +1211,7 @@ msgstr "" "'ghi', 'abc']`` est converti en ``['abc, '_1', 'ghi', '_3']`` afin " "d'éliminer le mot-clé ``def`` et le doublon de ``abc``." -#: library/collections.rst:839 +#: library/collections.rst:861 msgid "" "*defaults* can be ``None`` or an :term:`iterable` of default values. Since " "fields with a default value must come after any fields without a default, " @@ -1207,7 +1227,7 @@ msgstr "" "'z']`` et les valeurs par défaut ``(1, 2)``, alors ``x`` est un argument " "obligatoire tandis que ``y`` et ``y`` valent par défaut ``1`` et ``2``." -#: library/collections.rst:846 +#: library/collections.rst:868 msgid "" "If *module* is defined, the ``__module__`` attribute of the named tuple is " "set to that value." @@ -1215,7 +1235,7 @@ msgstr "" "Si *module* est spécifié, alors il est assigné à l'attribut ``__module__`` " "du *n*-uplet nommé." -#: library/collections.rst:849 +#: library/collections.rst:871 msgid "" "Named tuple instances do not have per-instance dictionaries, so they are " "lightweight and require no more memory than regular tuples." @@ -1224,7 +1244,7 @@ msgstr "" "sont donc légères et ne requièrent pas plus de mémoire que les *n*-uplets " "natifs." -#: library/collections.rst:852 +#: library/collections.rst:874 msgid "" "To support pickling, the named tuple class should be assigned to a variable " "that matches *typename*." @@ -1232,11 +1252,11 @@ msgstr "" "Pour permettre la sérialisation, la classe de *n*-uplet nommée doit être " "assignée à une variable qui correspond à *typename*." -#: library/collections.rst:855 +#: library/collections.rst:877 msgid "Added support for *rename*." msgstr "Gestion de *rename*." -#: library/collections.rst:858 +#: library/collections.rst:880 msgid "" "The *verbose* and *rename* parameters became :ref:`keyword-only arguments " "`." @@ -1244,21 +1264,21 @@ msgstr "" "Les paramètres *verbose* et *rename* deviennent des :ref:`arguments " "obligatoirement nommés `." -#: library/collections.rst:862 +#: library/collections.rst:884 msgid "Added the *module* parameter." msgstr "Ajout du paramètre *module*." -#: library/collections.rst:865 +#: library/collections.rst:887 msgid "Removed the *verbose* parameter and the :attr:`_source` attribute." msgstr "Suppression du paramètre *verbose* et de l'attribut :attr:`_source`." -#: library/collections.rst:868 +#: library/collections.rst:890 msgid "" "Added the *defaults* parameter and the :attr:`_field_defaults` attribute." msgstr "" "Ajout du paramètre *defaults* et de l'attribut :attr:`_field_defaults`." -#: library/collections.rst:888 +#: library/collections.rst:910 msgid "" "Named tuples are especially useful for assigning field names to result " "tuples returned by the :mod:`csv` or :mod:`sqlite3` modules::" @@ -1267,7 +1287,7 @@ msgstr "" "champs à des *n*-uplets renvoyés par les modules :mod:`csv` ou :mod:" "`sqlite3` ::" -#: library/collections.rst:904 +#: library/collections.rst:926 msgid "" "In addition to the methods inherited from tuples, named tuples support three " "additional methods and two attributes. To prevent conflicts with field " @@ -1277,14 +1297,14 @@ msgstr "" "implémentent trois méthodes et deux attributs supplémentaires. Pour éviter " "les conflits avec noms de champs, leurs noms commencent par un tiret bas." -#: library/collections.rst:910 +#: library/collections.rst:932 msgid "" "Class method that makes a new instance from an existing sequence or iterable." msgstr "" "Méthode de classe qui construit une nouvelle instance à partir d'une " "séquence ou d'un itérable existant." -#: library/collections.rst:920 +#: library/collections.rst:942 msgid "" "Return a new :class:`dict` which maps field names to their corresponding " "values:" @@ -1292,11 +1312,11 @@ msgstr "" "Renvoie un nouveau :class:`dict` qui associe chaque nom de champ à sa valeur " "correspondante :" -#: library/collections.rst:929 +#: library/collections.rst:951 msgid "Returns an :class:`OrderedDict` instead of a regular :class:`dict`." msgstr "Renvoie un :class:`OrderedDict` au lieu d'un :class:`dict` natif." -#: library/collections.rst:932 +#: library/collections.rst:954 msgid "" "Returns a regular :class:`dict` instead of an :class:`OrderedDict`. As of " "Python 3.7, regular dicts are guaranteed to be ordered. If the extra " @@ -1309,7 +1329,7 @@ msgstr "" "nécessaires, la solution préconisée est de convertir le résultat vers le " "type souhaité : ``OrderedDict(nt._asdict())``." -#: library/collections.rst:941 +#: library/collections.rst:963 msgid "" "Return a new instance of the named tuple replacing specified fields with new " "values::" @@ -1317,7 +1337,7 @@ msgstr "" "Renvoie une nouvelle instance du *n*-uplet nommé en remplaçant les champs " "spécifiés par leurs nouvelles valeurs ::" -#: library/collections.rst:953 +#: library/collections.rst:975 msgid "" "Tuple of strings listing the field names. Useful for introspection and for " "creating new named tuple types from existing named tuples." @@ -1326,11 +1346,11 @@ msgstr "" "l'introspection et pour créer de nouveaux types de *n*-uplets nommés à " "partir d'existants." -#: library/collections.rst:968 +#: library/collections.rst:990 msgid "Dictionary mapping field names to default values." msgstr "Dictionnaire qui assigne les valeurs par défaut aux noms des champs." -#: library/collections.rst:978 +#: library/collections.rst:1000 msgid "" "To retrieve a field whose name is stored in a string, use the :func:" "`getattr` function:" @@ -1338,7 +1358,7 @@ msgstr "" "Pour récupérer un champ dont le nom est une chaîne de caractères, utilisez " "la fonction :func:`getattr` :" -#: library/collections.rst:984 +#: library/collections.rst:1006 msgid "" "To convert a dictionary to a named tuple, use the double-star-operator (as " "described in :ref:`tut-unpacking-arguments`):" @@ -1346,7 +1366,7 @@ msgstr "" "Pour convertir un dictionnaire en *n*-uplet nommé, utilisez l'opérateur " "double-étoile (comme expliqué dans :ref:`tut-unpacking-arguments`) :" -#: library/collections.rst:991 +#: library/collections.rst:1013 msgid "" "Since a named tuple is a regular Python class, it is easy to add or change " "functionality with a subclass. Here is how to add a calculated field and a " @@ -1356,7 +1376,7 @@ msgstr "" "nommés grâce à l'héritage puisqu'il s'agit de simples classes. Voici comment " "ajouter un champ calculé avec une longueur fixe d'affichage :" -#: library/collections.rst:1010 +#: library/collections.rst:1032 msgid "" "The subclass shown above sets ``__slots__`` to an empty tuple. This helps " "keep memory requirements low by preventing the creation of instance " @@ -1366,7 +1386,7 @@ msgstr "" "permet de garder une emprunte mémoire faible en empêchant la création de " "dictionnaire d'instance." -#: library/collections.rst:1013 +#: library/collections.rst:1035 msgid "" "Subclassing is not useful for adding new, stored fields. Instead, simply " "create a new named tuple type from the :attr:`~somenamedtuple._fields` " @@ -1376,7 +1396,7 @@ msgstr "" "préférable de simplement créer un nouveau type de *n*-uplet nommé avec " "l'attribut :attr:`~somenamedtuple._fields` :" -#: library/collections.rst:1018 +#: library/collections.rst:1040 msgid "" "Docstrings can be customized by making direct assignments to the ``__doc__`` " "fields:" @@ -1384,11 +1404,11 @@ msgstr "" "Les *docstrings* peuvent être personnalisées en modifiant directement " "l'attribut ``__doc__`` :" -#: library/collections.rst:1027 +#: library/collections.rst:1049 msgid "Property docstrings became writeable." msgstr "La propriété devient éditable." -#: library/collections.rst:1032 +#: library/collections.rst:1054 msgid "" "See :class:`typing.NamedTuple` for a way to add type hints for named " "tuples. It also provides an elegant notation using the :keyword:`class` " @@ -1398,7 +1418,7 @@ msgstr "" "type pour les *n*-uplets nommés. Cela propose aussi une notation élégante " "utilisant le mot-clé :keyword:`class` ::" -#: library/collections.rst:1041 +#: library/collections.rst:1063 msgid "" "See :meth:`types.SimpleNamespace` for a mutable namespace based on an " "underlying dictionary instead of a tuple." @@ -1406,7 +1426,7 @@ msgstr "" "Voir :meth:`types.SimpleNamespace` pour un espace de nommage muable basé sur " "un dictionnaire sous-jacent à la place d'un *n*-uplet." -#: library/collections.rst:1044 +#: library/collections.rst:1066 msgid "" "The :mod:`dataclasses` module provides a decorator and functions for " "automatically adding generated special methods to user-defined classes." @@ -1415,11 +1435,11 @@ msgstr "" "ajouter automatiquement des méthodes spéciales générées aux classes définies " "par l’utilisateur." -#: library/collections.rst:1049 +#: library/collections.rst:1071 msgid ":class:`OrderedDict` objects" msgstr "Objets :class:`OrderedDict`" -#: library/collections.rst:1051 +#: library/collections.rst:1073 msgid "" "Ordered dictionaries are just like regular dictionaries but have some extra " "capabilities relating to ordering operations. They have become less " @@ -1431,11 +1451,11 @@ msgstr "" "moins importants puisque la classe native :class:`dict` sait se souvenir de " "l'ordre d'insertion (cette fonctionnalité a été garantie par Python 3.7)." -#: library/collections.rst:1057 +#: library/collections.rst:1079 msgid "Some differences from :class:`dict` still remain:" msgstr "Quelques différences persistent vis-à-vis de :class:`dict` :" -#: library/collections.rst:1059 +#: library/collections.rst:1081 msgid "" "The regular :class:`dict` was designed to be very good at mapping " "operations. Tracking insertion order was secondary." @@ -1444,7 +1464,7 @@ msgstr "" "opérations de correspondance. Garder une trace de l'ordre d'insertion était " "secondaire." -#: library/collections.rst:1062 +#: library/collections.rst:1084 msgid "" "The :class:`OrderedDict` was designed to be good at reordering operations. " "Space efficiency, iteration speed, and the performance of update operations " @@ -1454,7 +1474,7 @@ msgstr "" "opérations de ré-arrangement. L'occupation mémoire, la vitesse de parcours " "et les performances de mise à jour étaient secondaires." -#: library/collections.rst:1066 +#: library/collections.rst:1088 msgid "" "Algorithmically, :class:`OrderedDict` can handle frequent reordering " "operations better than :class:`dict`. This makes it suitable for tracking " @@ -1467,13 +1487,13 @@ msgstr "" "com/@krishankantsinghal/my-first-blog-on-medium-583159139237>`_ pour *Least " "Recently Used* en anglais)." -#: library/collections.rst:1071 +#: library/collections.rst:1093 msgid "" "The equality operation for :class:`OrderedDict` checks for matching order." msgstr "" "Le test d'égalité de :class:`OrderedDict` vérifie si l'ordre correspond." -#: library/collections.rst:1073 +#: library/collections.rst:1095 msgid "" "The :meth:`popitem` method of :class:`OrderedDict` has a different " "signature. It accepts an optional argument to specify which item is popped." @@ -1482,7 +1502,7 @@ msgstr "" "différente. Elle accepte un argument optionnel pour spécifier quel élément " "doit être enlevé." -#: library/collections.rst:1076 +#: library/collections.rst:1098 msgid "" ":class:`OrderedDict` has a :meth:`move_to_end` method to efficiently " "reposition an element to an endpoint." @@ -1490,12 +1510,12 @@ msgstr "" ":class:`OrderedDict` possède une méthode :meth:`move_to_end` pour déplacer " "efficacement un élément à la fin." -#: library/collections.rst:1079 +#: library/collections.rst:1101 msgid "Until Python 3.8, :class:`dict` lacked a :meth:`__reversed__` method." msgstr "" "Avant Python 3.8, :class:`dict` n'a pas de méthode :meth:`__reversed__`." -#: library/collections.rst:1084 +#: library/collections.rst:1106 msgid "" "Return an instance of a :class:`dict` subclass that has methods specialized " "for rearranging dictionary order." @@ -1503,7 +1523,7 @@ msgstr "" "Renvoie une instance d'une sous-classe de :class:`dict` qui possède des " "méthodes spécialisées pour redéfinir l'ordre du dictionnaire." -#: library/collections.rst:1091 +#: library/collections.rst:1113 msgid "" "The :meth:`popitem` method for ordered dictionaries returns and removes a " "(key, value) pair. The pairs are returned in :abbr:`LIFO (last-in, first-" @@ -1517,7 +1537,7 @@ msgstr "" "paires sont renvoyées comme pour une file, c'est-à-dire premier entré, " "premier sorti (en anglais :abbr:`FIFO (first-in, first-out)`)." -#: library/collections.rst:1098 +#: library/collections.rst:1120 msgid "" "Move an existing *key* to either end of an ordered dictionary. The item is " "moved to the right end if *last* is true (the default) or to the beginning " @@ -1528,7 +1548,7 @@ msgstr "" "à gauche sinon. Lève une exception :exc:`KeyError` si la clé *key* n'est pas " "trouvée ::" -#: library/collections.rst:1113 +#: library/collections.rst:1135 msgid "" "In addition to the usual mapping methods, ordered dictionaries also support " "reverse iteration using :func:`reversed`." @@ -1536,7 +1556,7 @@ msgstr "" "En plus des méthodes usuelles des dictionnaires, les dictionnaires ordonnés " "gèrent l'itération en sens inverse grâce à :func:`reversed`." -#: library/collections.rst:1116 +#: library/collections.rst:1138 msgid "" "Equality tests between :class:`OrderedDict` objects are order-sensitive and " "are implemented as ``list(od1.items())==list(od2.items())``. Equality tests " @@ -1552,7 +1572,7 @@ msgstr "" "(comme les dictionnaires natifs). Cela permet substituer des objets :class:" "`OrderedDict` partout où les dictionnaires natifs sont utilisés." -#: library/collections.rst:1123 +#: library/collections.rst:1145 msgid "" "The items, keys, and values :term:`views ` of :class:" "`OrderedDict` now support reverse iteration using :func:`reversed`." @@ -1561,7 +1581,7 @@ msgstr "" "class:`OrderedDict` gèrent maintenant l'itération en sens inverse en " "utilisant :func:`reversed`." -#: library/collections.rst:1127 +#: library/collections.rst:1149 msgid "" "With the acceptance of :pep:`468`, order is retained for keyword arguments " "passed to the :class:`OrderedDict` constructor and its :meth:`update` method." @@ -1570,11 +1590,11 @@ msgstr "" "au constructeur et à la méthode :meth:`update` de :class:`OrderedDict` est " "conservé." -#: library/collections.rst:1137 +#: library/collections.rst:1159 msgid ":class:`OrderedDict` Examples and Recipes" msgstr "Exemples et cas pratiques utilisant :class:`OrderDict`" -#: library/collections.rst:1139 +#: library/collections.rst:1161 msgid "" "It is straightforward to create an ordered dictionary variant that remembers " "the order the keys were *last* inserted. If a new entry overwrites an " @@ -1586,19 +1606,20 @@ msgstr "" "entrée écrase une existante, la position d'insertion d'origine est modifiée " "et déplacée à la fin ::" -#: library/collections.rst:1151 +#: library/collections.rst:1173 +#, fuzzy msgid "" "An :class:`OrderedDict` would also be useful for implementing variants of :" -"func:`functools.lru_cache`::" +"func:`functools.lru_cache`:" msgstr "" "Un :class:`OrderedDict` peut aussi être utile pour implémenter des variantes " "de :func:`functools.lru_cache` ::" -#: library/collections.rst:1176 +#: library/collections.rst:1271 msgid ":class:`UserDict` objects" msgstr "Objets :class:`UserDict`" -#: library/collections.rst:1178 +#: library/collections.rst:1273 msgid "" "The class, :class:`UserDict` acts as a wrapper around dictionary objects. " "The need for this class has been partially supplanted by the ability to " @@ -1611,13 +1632,14 @@ msgstr "" "travailler avec celle-ci, car le dictionnaire sous-jacent est accessible " "comme attribut." -#: library/collections.rst:1186 +#: library/collections.rst:1281 +#, fuzzy msgid "" "Class that simulates a dictionary. The instance's contents are kept in a " "regular dictionary, which is accessible via the :attr:`data` attribute of :" "class:`UserDict` instances. If *initialdata* is provided, :attr:`data` is " "initialized with its contents; note that a reference to *initialdata* will " -"not be kept, allowing it be used for other purposes." +"not be kept, allowing it to be used for other purposes." msgstr "" "Classe simulant un dictionnaire. Les instances de :class:`UserDict` " "possèdent un attribut :attr:`data` où est stocké leur contenu sous forme de " @@ -1625,7 +1647,7 @@ msgstr "" "initialisé avec son contenu. Remarquez qu'une référence vers *initialdata* " "n'est pas conservée, ce qui permet de l'utiliser pour d'autres tâches." -#: library/collections.rst:1192 +#: library/collections.rst:1287 msgid "" "In addition to supporting the methods and operations of mappings, :class:" "`UserDict` instances provide the following attribute:" @@ -1633,18 +1655,18 @@ msgstr "" "En plus de gérer les méthodes et opérations des dictionnaires, les instances " "de :class:`UserDict` fournissent l'attribut suivant :" -#: library/collections.rst:1197 +#: library/collections.rst:1292 msgid "" "A real dictionary used to store the contents of the :class:`UserDict` class." msgstr "" "Un dictionnaire natif où est stocké le contenu de la classe :class:" "`UserDict`." -#: library/collections.rst:1203 +#: library/collections.rst:1298 msgid ":class:`UserList` objects" msgstr "Objets :class:`UserList`" -#: library/collections.rst:1205 +#: library/collections.rst:1300 msgid "" "This class acts as a wrapper around list objects. It is a useful base class " "for your own list-like classes which can inherit from them and override " @@ -1656,7 +1678,7 @@ msgstr "" "et surcharger les méthodes existantes ou en ajouter de nouvelles. Ainsi, on " "peut ajouter de nouveaux comportements aux listes." -#: library/collections.rst:1210 +#: library/collections.rst:1305 msgid "" "The need for this class has been partially supplanted by the ability to " "subclass directly from :class:`list`; however, this class can be easier to " @@ -1667,7 +1689,7 @@ msgstr "" "de travailler avec cette classe, car la liste sous-jacente est accessible " "via un attribut." -#: library/collections.rst:1216 +#: library/collections.rst:1311 msgid "" "Class that simulates a list. The instance's contents are kept in a regular " "list, which is accessible via the :attr:`data` attribute of :class:" @@ -1681,7 +1703,7 @@ msgstr "" "*list* peut être un itérable, par exemple une liste native ou un objet :" "class:`UserList`." -#: library/collections.rst:1222 +#: library/collections.rst:1317 msgid "" "In addition to supporting the methods and operations of mutable sequences, :" "class:`UserList` instances provide the following attribute:" @@ -1689,7 +1711,7 @@ msgstr "" "En plus de gérer les méthodes et opérations des séquences muables, les " "instances de :class:`UserList` possèdent l'attribut suivant :" -#: library/collections.rst:1227 +#: library/collections.rst:1322 msgid "" "A real :class:`list` object used to store the contents of the :class:" "`UserList` class." @@ -1697,7 +1719,7 @@ msgstr "" "Un objet :class:`list` natif utilisé pour stocker le contenu de la classe :" "class:`UserList`." -#: library/collections.rst:1230 +#: library/collections.rst:1325 msgid "" "**Subclassing requirements:** Subclasses of :class:`UserList` are expected " "to offer a constructor which can be called with either no arguments or one " @@ -1713,7 +1735,7 @@ msgstr "" "constructeur doit pouvoir être appelé avec un unique paramètre, un objet " "séquence utilisé comme source de données." -#: library/collections.rst:1237 +#: library/collections.rst:1332 msgid "" "If a derived class does not wish to comply with this requirement, all of the " "special methods supported by this class will need to be overridden; please " @@ -1725,11 +1747,11 @@ msgstr "" "de consulter les sources pour obtenir des informations sur les méthodes qui " "doivent être fournies dans ce cas." -#: library/collections.rst:1243 +#: library/collections.rst:1338 msgid ":class:`UserString` objects" msgstr "Objets :class:`UserString`" -#: library/collections.rst:1245 +#: library/collections.rst:1340 msgid "" "The class, :class:`UserString` acts as a wrapper around string objects. The " "need for this class has been partially supplanted by the ability to subclass " @@ -1742,7 +1764,7 @@ msgstr "" "plus facile de travailler avec cette classe, car la chaîne de caractère sous-" "jacente est accessible via un attribut." -#: library/collections.rst:1253 +#: library/collections.rst:1348 msgid "" "Class that simulates a string object. The instance's content is kept in a " "regular string object, which is accessible via the :attr:`data` attribute " @@ -1756,7 +1778,7 @@ msgstr "" "initialement une copie de *seq*, qui peut être n'importe quel objet " "convertible en chaîne de caractère avec la fonction native :func:`str`." -#: library/collections.rst:1260 +#: library/collections.rst:1355 msgid "" "In addition to supporting the methods and operations of strings, :class:" "`UserString` instances provide the following attribute:" @@ -1764,7 +1786,7 @@ msgstr "" "En plus de gérer les méthodes et opérations sur les chaînes de caractères, " "les instances de :class:`UserString` possèdent l'attribut suivant :" -#: library/collections.rst:1265 +#: library/collections.rst:1360 msgid "" "A real :class:`str` object used to store the contents of the :class:" "`UserString` class." @@ -1772,10 +1794,19 @@ msgstr "" "Un objet :class:`str` natif utilisé pour stocker le contenu de la classe :" "class:`UserString`." -#: library/collections.rst:1268 +#: library/collections.rst:1363 msgid "" "New methods ``__getnewargs__``, ``__rmod__``, ``casefold``, ``format_map``, " "``isprintable``, and ``maketrans``." msgstr "" "Nouvelles méthodes ``__getnewargs__``, ``__rmod__``, ``casefold``, " "``format_map``, ``isprintable`` et ``maketrans``." + +#~ msgid "" +#~ "Moved :ref:`collections-abstract-base-classes` to the :mod:`collections." +#~ "abc` module. For backwards compatibility, they continue to be visible in " +#~ "this module through Python 3.9." +#~ msgstr "" +#~ "Les :ref:`collections-abstract-base-classes` ont été déplacées vers le " +#~ "module :mod:`collections.abc`. Pour assurer la rétrocompatibilité, elles " +#~ "sont toujours disponibles dans ce module dans Python 3.9." diff --git a/library/concurrent.futures.po b/library/concurrent.futures.po index 0103e6285..11e081e64 100644 --- a/library/concurrent.futures.po +++ b/library/concurrent.futures.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-12-17 16:05+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -340,7 +340,8 @@ msgid "" msgstr "" #: library/concurrent.futures.rst:353 -msgid "If the call raised, this method will raise the same exception." +msgid "" +"If the call raised an exception, this method will raise the same exception." msgstr "" #: library/concurrent.futures.rst:357 diff --git a/library/configparser.po b/library/configparser.po index f63e1ec8a..60070f726 100644 --- a/library/configparser.po +++ b/library/configparser.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-05-17 13:06+0200\n" "Last-Translator: Dimitri Merejkowsky \n" "Language-Team: FRENCH \n" @@ -70,17 +70,17 @@ msgstr "" "Le module *json* implémente un sous-ensemble de la syntaxe JavaScript, qui " "peut aussi être utilisée à cet effet." -#: library/configparser.rst:51 +#: library/configparser.rst:56 msgid "Quick Start" msgstr "Premiers pas" -#: library/configparser.rst:53 +#: library/configparser.rst:58 msgid "Let's take a very basic configuration file that looks like this:" msgstr "" "Prenons pour exemple un fichier de configuration très simple ressemblant à " "ceci :" -#: library/configparser.rst:70 +#: library/configparser.rst:75 msgid "" "The structure of INI files is described `in the following section " "<#supported-ini-file-structure>`_. Essentially, the file consists of " @@ -94,7 +94,7 @@ msgstr "" "Les classes du module :mod:`configparser` peuvent écrire et lire de tels " "fichiers. Commençons par le code qui permet de générer le fichier ci-dessus." -#: library/configparser.rst:94 +#: library/configparser.rst:99 msgid "" "As you can see, we can treat a config parser much like a dictionary. There " "are differences, `outlined later <#mapping-protocol-access>`_, but the " @@ -106,7 +106,7 @@ msgstr "" "protocol-access>`_, mais le comportement de l'instance est très proche de ce " "que vous pourriez attendre d'un dictionnaire." -#: library/configparser.rst:98 +#: library/configparser.rst:103 msgid "" "Now that we have created and saved a configuration file, let's read it back " "and explore the data it holds." @@ -115,7 +115,7 @@ msgstr "" "maintenant comment nous pouvons le lire et accéder aux données qu'il " "contient." -#: library/configparser.rst:133 +#: library/configparser.rst:138 msgid "" "As we can see above, the API is pretty straightforward. The only bit of " "magic involves the ``DEFAULT`` section which provides default values for all " @@ -128,11 +128,25 @@ msgstr "" "l’intérieur des sections ne sont pas sensibles à la casse et qu'elles sont " "stockées en minuscules. [1]_." -#: library/configparser.rst:140 +#: library/configparser.rst:143 +msgid "" +"It is possible to read several configurations into a single :class:" +"`ConfigParser`, where the most recently added configuration has the highest " +"priority. Any conflicting keys are taken from the more recent configuration " +"while the previously existing keys are retained." +msgstr "" + +#: library/configparser.rst:164 +msgid "" +"This behaviour is equivalent to a :meth:`ConfigParser.read` call with " +"several files passed to the *filenames* parameter." +msgstr "" + +#: library/configparser.rst:169 msgid "Supported Datatypes" msgstr "Types de données prises en charge" -#: library/configparser.rst:142 +#: library/configparser.rst:171 msgid "" "Config parsers do not guess datatypes of values in configuration files, " "always storing them internally as strings. This means that if you need " @@ -143,7 +157,7 @@ msgstr "" "stockées en tant que chaînes de caractères. Ainsi, si vous avez besoin d'un " "type différent, vous devez effectuer la conversion vous-même :" -#: library/configparser.rst:153 +#: library/configparser.rst:182 msgid "" "Since this task is so common, config parsers provide a range of handy getter " "methods to handle integers, floats and booleans. The last one is the most " @@ -164,7 +178,7 @@ msgstr "" "chaînes de caractères comme ``'yes'``-``'no'``, ``'on'``-``'off'``, " "``'true'``-``'false'`` et ``'1'``-``'0'`` [1]_. Par exemple :" -#: library/configparser.rst:170 +#: library/configparser.rst:199 msgid "" "Apart from :meth:`~ConfigParser.getboolean`, config parsers also provide " "equivalent :meth:`~ConfigParser.getint` and :meth:`~ConfigParser.getfloat` " @@ -176,11 +190,11 @@ msgstr "" "getint` et :meth:`~ConfigParser.getfloat`. Vous pouvez enregistrer vos " "propres convertisseurs et personnaliser ceux déjà fournis. [1]_" -#: library/configparser.rst:176 +#: library/configparser.rst:205 msgid "Fallback Values" msgstr "Valeurs de substitution" -#: library/configparser.rst:178 +#: library/configparser.rst:207 msgid "" "As with a dictionary, you can use a section's :meth:`get` method to provide " "fallback values:" @@ -188,7 +202,7 @@ msgstr "" "Comme pour un dictionnaire, vous pouvez utiliser la méthode :meth:`get` " "d'une section en spécifiant une valeur de substitution :" -#: library/configparser.rst:191 +#: library/configparser.rst:220 msgid "" "Please note that default values have precedence over fallback values. For " "instance, in our example the ``'CompressionLevel'`` key was specified only " @@ -202,7 +216,7 @@ msgstr "" "la récupérer depuis la section ``'topsecret.server.com'``, nous obtenons la " "valeur par défaut, même en ayant spécifié une valeur de substitution :" -#: library/configparser.rst:202 +#: library/configparser.rst:231 msgid "" "One more thing to be aware of is that the parser-level :meth:`get` method " "provides a custom, more complex interface, maintained for backwards " @@ -214,7 +228,7 @@ msgstr "" "maintenue pour des raisons de rétrocompatibilité. Vous pouvez fournir une " "valeur de substitution via l'argument obligatoirement nommé ``fallback`` :" -#: library/configparser.rst:213 +#: library/configparser.rst:242 msgid "" "The same ``fallback`` argument can be used with the :meth:`~ConfigParser." "getint`, :meth:`~ConfigParser.getfloat` and :meth:`~ConfigParser.getboolean` " @@ -224,20 +238,22 @@ msgstr "" "méthodes :meth:`~ConfigParser.getint`, :meth:`~ConfigParser.getfloat` et :" "meth:`~ConfigParser.getboolean`. Par exemple :" -#: library/configparser.rst:229 +#: library/configparser.rst:258 msgid "Supported INI File Structure" msgstr "Structure des fichiers *INI* prise en change" -#: library/configparser.rst:231 +#: library/configparser.rst:260 +#, fuzzy msgid "" "A configuration file consists of sections, each led by a ``[section]`` " "header, followed by key/value entries separated by a specific string (``=`` " "or ``:`` by default [1]_). By default, section names are case sensitive but " "keys are not [1]_. Leading and trailing whitespace is removed from keys and " -"values. Values can be omitted, in which case the key/value delimiter may " -"also be left out. Values can also span multiple lines, as long as they are " -"indented deeper than the first line of the value. Depending on the parser's " -"mode, blank lines may be treated as parts of multiline values or ignored." +"values. Values can be omitted if the parser is configured to allow it [1]_, " +"in which case the key/value delimiter may also be left out. Values can also " +"span multiple lines, as long as they are indented deeper than the first line " +"of the value. Depending on the parser's mode, blank lines may be treated as " +"parts of multiline values or ignored." msgstr "" "Un fichier de configuration est constitué de sections. Chacune des sections " "commence par un en-tête ``[section]``, suivi d'une liste de définitions clés-" @@ -251,7 +267,7 @@ msgstr "" "vides peuvent être considérées comme faisant partie des valeurs multi " "lignes, en fonction de la configuration de l'analyseur." -#: library/configparser.rst:240 +#: library/configparser.rst:270 msgid "" "Configuration files may include comments, prefixed by specific characters " "(``#`` and ``;`` by default [1]_). Comments may appear on their own on an " @@ -262,15 +278,15 @@ msgstr "" "commentaires peuvent apparaître à l'emplacement d'une ligne vide, et peuvent " "aussi être indentés. [1]_" -#: library/configparser.rst:307 +#: library/configparser.rst:337 msgid "For example:" msgstr "Par exemple :" -#: library/configparser.rst:292 +#: library/configparser.rst:322 msgid "Interpolation of values" msgstr "Interpolation des valeurs" -#: library/configparser.rst:294 +#: library/configparser.rst:324 msgid "" "On top of the core functionality, :class:`ConfigParser` supports " "interpolation. This means values can be preprocessed before returning them " @@ -280,7 +296,7 @@ msgstr "" "fonctionnalités de base. Cela signifie que les valeurs peuvent être traitées " "avant d'être renvoyées par les appels aux méthodes ``get()``." -#: library/configparser.rst:302 +#: library/configparser.rst:332 msgid "" "The default implementation used by :class:`ConfigParser`. It enables values " "to contain format strings which refer to other values in the same section, " @@ -293,7 +309,7 @@ msgstr "" "section spéciale par défaut [1]_. D'autres valeurs par défaut peuvent être " "fournies au moment de l'initialisation de cette classe." -#: library/configparser.rst:319 +#: library/configparser.rst:349 msgid "" "In the example above, :class:`ConfigParser` with *interpolation* set to " "``BasicInterpolation()`` would resolve ``%(home_dir)s`` to the value of " @@ -310,7 +326,7 @@ msgstr "" "utilisées comme référence à l’intérieur des chaînes de formatage peuvent " "être définies dans le fichier de configuration dans n'importe quel ordre." -#: library/configparser.rst:326 +#: library/configparser.rst:356 msgid "" "With ``interpolation`` set to ``None``, the parser would simply return ``" "%(my_dir)s/Pictures`` as the value of ``my_pictures`` and ``%(home_dir)s/" @@ -320,7 +336,7 @@ msgstr "" "%(my_dir)s/Pictures`` comme valeur pour ``my_pictures`` et ``%(home_dir)s/" "lumberjack`` comme valeur pour ``my_dir``." -#: library/configparser.rst:334 +#: library/configparser.rst:364 msgid "" "An alternative handler for interpolation which implements a more advanced " "syntax, used for instance in ``zc.buildout``. Extended interpolation is " @@ -337,7 +353,7 @@ msgstr "" "l'interpolation utilise la section courante par défaut (et, le cas échéant, " "les valeurs de la section par défaut spéciale)." -#: library/configparser.rst:341 +#: library/configparser.rst:371 msgid "" "For example, the configuration specified above with basic interpolation, " "would look like this with extended interpolation:" @@ -345,16 +361,16 @@ msgstr "" "Voici comment transformer la configuration ci-dessus avec la syntaxe " "d'interpolation étendue :" -#: library/configparser.rst:354 +#: library/configparser.rst:384 msgid "Values from other sections can be fetched as well:" msgstr "" "Vous pouvez également récupérer des valeurs appartenant aux autres sections :" -#: library/configparser.rst:376 +#: library/configparser.rst:406 msgid "Mapping Protocol Access" msgstr "Protocole d'accès associatif" -#: library/configparser.rst:380 +#: library/configparser.rst:410 msgid "" "Mapping protocol access is a generic name for functionality that enables " "using custom objects as if they were dictionaries. In case of :mod:" @@ -367,7 +383,7 @@ msgstr "" "l’implémentation du protocole utilise la notation ``parser['section']" "['option']``." -#: library/configparser.rst:385 +#: library/configparser.rst:415 msgid "" "``parser['section']`` in particular returns a proxy for the section's data " "in the parser. This means that the values are not copied but they are taken " @@ -382,7 +398,7 @@ msgstr "" "mandataire pour une section, elles sont en réalité changées dans l'analyseur " "initial." -#: library/configparser.rst:391 +#: library/configparser.rst:421 msgid "" ":mod:`configparser` objects behave as close to actual dictionaries as " "possible. The mapping interface is complete and adheres to the :class:" @@ -395,7 +411,7 @@ msgstr "" "MutableMapping`. Cependant, il faut prendre en compte un certain nombre de " "différences :" -#: library/configparser.rst:396 +#: library/configparser.rst:426 msgid "" "By default, all keys in sections are accessible in a case-insensitive manner " "[1]_. E.g. ``for option in parser[\"section\"]`` yields only " @@ -409,7 +425,7 @@ msgstr "" "c'est-à-dire des clés transformées en minuscules. De même, pour une section " "contenant la clé ``a``, les deux expressions suivantes renvoient ``True`` ::" -#: library/configparser.rst:404 +#: library/configparser.rst:434 msgid "" "All sections include ``DEFAULTSECT`` values as well which means that ``." "clear()`` on a section may not leave the section visibly empty. This is " @@ -427,25 +443,25 @@ msgstr "" "visible. Essayer de détruire une valeur par défaut lève l'exception :exc:" "`KeyError`." -#: library/configparser.rst:411 +#: library/configparser.rst:441 msgid "``DEFAULTSECT`` cannot be removed from the parser:" msgstr "La section ``DEFAULTSECT`` ne peut pas être supprimée ::" # fausse alerte dans poedit - garder le point-virgule -#: library/configparser.rst:413 +#: library/configparser.rst:443 msgid "trying to delete it raises :exc:`ValueError`," msgstr "l'exception :exc:`ValueError` est levée si on essaye de la supprimer ;" # fausse alerte dans poedit - garder le point-virgule -#: library/configparser.rst:415 +#: library/configparser.rst:445 msgid "``parser.clear()`` leaves it intact," msgstr "appeler ``parser.clear()`` la laisse intacte ;" -#: library/configparser.rst:417 +#: library/configparser.rst:447 msgid "``parser.popitem()`` never returns it." msgstr "appeler ```parser.popitem()`` ne la renvoie jamais." -#: library/configparser.rst:419 +#: library/configparser.rst:449 msgid "" "``parser.get(section, option, **kwargs)`` - the second argument is **not** a " "fallback value. Note however that the section-level ``get()`` methods are " @@ -456,7 +472,7 @@ msgstr "" "``get()`` fournies par les sections sont compatibles à la fois avec le " "protocole associatif et avec l'API classique de *configparser*." -#: library/configparser.rst:423 +#: library/configparser.rst:453 msgid "" "``parser.items()`` is compatible with the mapping protocol (returns a list " "of *section_name*, *section_proxy* pairs including the DEFAULTSECT). " @@ -473,7 +489,7 @@ msgstr "" "section spécifiée, en interprétant les interpolations (à moins d'utiliser " "``raw=True``)." -#: library/configparser.rst:430 +#: library/configparser.rst:460 msgid "" "The mapping protocol is implemented on top of the existing legacy API so " "that subclasses overriding the original interface still should have mappings " @@ -483,11 +499,11 @@ msgstr "" "sous-classes qui écrasent des méthodes de l'interface originale se " "comportent correctement du point de vue du protocole d'accès." -#: library/configparser.rst:436 +#: library/configparser.rst:466 msgid "Customizing Parser Behaviour" msgstr "Personnalisation du comportement de l'analyseur" -#: library/configparser.rst:438 +#: library/configparser.rst:468 msgid "" "There are nearly as many INI format variants as there are applications using " "it. :mod:`configparser` goes a long way to provide support for the largest " @@ -502,7 +518,7 @@ msgstr "" "raisons historiques. De ce fait, il est très probable qu'il soit nécessaire " "de personnaliser certaines des fonctionnalités de ce module." -#: library/configparser.rst:444 +#: library/configparser.rst:474 msgid "" "The most common way to change the way a specific config parser works is to " "use the :meth:`__init__` options:" @@ -511,11 +527,11 @@ msgstr "" "comporte un analyseur est d’utiliser les options de la méthode :meth:" "`__init__` :" -#: library/configparser.rst:447 +#: library/configparser.rst:477 msgid "*defaults*, default value: ``None``" msgstr "*defaults*, valeur par défaut : ``None``" -#: library/configparser.rst:449 +#: library/configparser.rst:479 msgid "" "This option accepts a dictionary of key-value pairs which will be initially " "put in the ``DEFAULT`` section. This makes for an elegant way to support " @@ -528,7 +544,7 @@ msgstr "" "besoin de spécifier de valeurs lorsque celles-ci sont identiques aux valeurs " "par défaut documentées." -#: library/configparser.rst:454 +#: library/configparser.rst:484 msgid "" "Hint: if you want to specify default values for a specific section, use :" "meth:`read_dict` before you read the actual file." @@ -537,11 +553,11 @@ msgstr "" "configuration si vous voulez spécifier des valeurs par défaut pour une " "section spécifique." -#: library/configparser.rst:457 +#: library/configparser.rst:487 msgid "*dict_type*, default value: :class:`dict`" msgstr "*dict_type*, valeur par défaut : :class:`dict`" -#: library/configparser.rst:459 +#: library/configparser.rst:489 msgid "" "This option has a major impact on how the mapping protocol will behave and " "how the written configuration files look. With the standard dictionary, " @@ -554,7 +570,7 @@ msgstr "" "sont stockées dans l'ordre où elles ont été ajoutées à l'analyseur. Ceci est " "également vrai pour les options à l'intérieur des sections." -#: library/configparser.rst:464 +#: library/configparser.rst:494 msgid "" "An alternative dictionary type can be used for example to sort sections and " "options on write-back." @@ -562,7 +578,7 @@ msgstr "" "Si vous souhaitez classer les sections et les options lors de l'écriture par " "exemple, vous pouvez utiliser un type de dictionnaire différent." -#: library/configparser.rst:467 +#: library/configparser.rst:497 msgid "" "Please note: there are ways to add a set of key-value pairs in a single " "operation. When you use a regular dictionary in those operations, the order " @@ -572,11 +588,11 @@ msgstr "" "une seule opération. L'ordre des clés est préservé si vous utilisez un " "dictionnaire standard pour cela. Par exemple :" -#: library/configparser.rst:489 +#: library/configparser.rst:519 msgid "*allow_no_value*, default value: ``False``" msgstr "*allow_no_value*, valeur par défaut : ``False``" -#: library/configparser.rst:491 +#: library/configparser.rst:521 msgid "" "Some configuration files are known to include settings without values, but " "which otherwise conform to the syntax supported by :mod:`configparser`. The " @@ -589,11 +605,11 @@ msgstr "" "valeurs sont acceptables, utilisez le paramètre *allow_no_value* lors de la " "construction de l'instance :" -#: library/configparser.rst:526 +#: library/configparser.rst:556 msgid "*delimiters*, default value: ``('=', ':')``" msgstr "*delimiters*, valeur par défaut : ``('=', ':')``" -#: library/configparser.rst:528 +#: library/configparser.rst:558 msgid "" "Delimiters are substrings that delimit keys from values within a section. " "The first occurrence of a delimiting substring on a line is considered a " @@ -604,7 +620,7 @@ msgstr "" "est considérée comme un délimiteur. Cela signifie que les valeurs peuvent " "contenir certains des délimiteurs (mais pas les clés)." -#: library/configparser.rst:532 +#: library/configparser.rst:562 msgid "" "See also the *space_around_delimiters* argument to :meth:`ConfigParser." "write`." @@ -612,19 +628,19 @@ msgstr "" "Voir aussi l'argument *space_around_delimiters* de la méthode :meth:" "`ConfigParser.write`." -#: library/configparser.rst:535 +#: library/configparser.rst:565 msgid "*comment_prefixes*, default value: ``('#', ';')``" msgstr "" "*comment_prefixes* (préfixes de commentaire) — valeur par défaut : ``('#', " "';')``" -#: library/configparser.rst:537 +#: library/configparser.rst:567 msgid "*inline_comment_prefixes*, default value: ``None``" msgstr "" "*inline_comment_prefixes* (préfixes de commentaire en ligne) — valeur par " "défaut : ``('#', ';')``" -#: library/configparser.rst:539 +#: library/configparser.rst:569 msgid "" "Comment prefixes are strings that indicate the start of a valid comment " "within a config file. *comment_prefixes* are used only on otherwise empty " @@ -642,7 +658,7 @@ msgstr "" "préfixes utilisés pour les commentaires à l'emplacement d'une ligne vide " "sont `'#'`` et ``';'``." -#: library/configparser.rst:546 +#: library/configparser.rst:576 msgid "" "In previous versions of :mod:`configparser` behaviour matched " "``comment_prefixes=('#',';')`` and ``inline_comment_prefixes=(';',)``." @@ -651,7 +667,7 @@ msgstr "" "en utilisant ``comment_prefixes=('#',';')`` et " "``inline_comment_prefixes=(';',)``." -#: library/configparser.rst:550 +#: library/configparser.rst:580 msgid "" "Please note that config parsers don't support escaping of comment prefixes " "so using *inline_comment_prefixes* may prevent users from specifying option " @@ -668,11 +684,11 @@ msgstr "" "la seule façon de stocker des préfixes de commentaires au début d'une valeur " "multi lignes est d'interpoler ceux-ci, par exemple ::" -#: library/configparser.rst:596 +#: library/configparser.rst:626 msgid "*strict*, default value: ``True``" msgstr "*scrict*, valeur par défaut : ``True``" -#: library/configparser.rst:598 +#: library/configparser.rst:628 msgid "" "When set to ``True``, the parser will not allow for any section or option " "duplicates while reading from a single source (using :meth:`read_file`, :" @@ -685,7 +701,7 @@ msgstr "" "est recommandé d'utiliser un mode de fonctionnement strict pour les " "analyseurs employés par de nouvelles applications." -#: library/configparser.rst:603 +#: library/configparser.rst:633 msgid "" "In previous versions of :mod:`configparser` behaviour matched " "``strict=False``." @@ -693,11 +709,11 @@ msgstr "" "Les versions précédentes du module :mod:`configparser` se comportent comme " "en utilisant ``strict=False``." -#: library/configparser.rst:607 +#: library/configparser.rst:637 msgid "*empty_lines_in_values*, default value: ``True``" msgstr "*empty_lines_in_values*, valeur par défaut : ``True``" -#: library/configparser.rst:609 +#: library/configparser.rst:639 msgid "" "In config parsers, values can span multiple lines as long as they are " "indented more than the key that holds them. By default parsers also let " @@ -714,7 +730,7 @@ msgstr "" "est probable que l'utilisateur perde de vue la structure du fichier lorsque " "celui-ci devient long et complexe. Prenez par exemple :" -#: library/configparser.rst:624 +#: library/configparser.rst:654 msgid "" "This can be especially problematic for the user to see if she's using a " "proportional font to edit the file. That is why when your application does " @@ -729,7 +745,7 @@ msgstr "" "sont toujours interprétées comme séparant des clés. Dans l'exemple ci-" "dessus, cela produit deux clés : ``key`` et ``this``." -#: library/configparser.rst:630 +#: library/configparser.rst:660 msgid "" "*default_section*, default value: ``configparser.DEFAULTSECT`` (that is: ``" "\"DEFAULT\"``)" @@ -737,7 +753,7 @@ msgstr "" "*default_section*, valeur par défaut : ``configparser.DEFAULTSECT`` " "(autrement dit : ``\"DEFAULT\"``)" -#: library/configparser.rst:633 +#: library/configparser.rst:663 msgid "" "The convention of allowing a special section of default values for other " "sections or interpolation purposes is a powerful concept of this library, " @@ -751,11 +767,11 @@ msgid "" "files from one format to another)." msgstr "" -#: library/configparser.rst:644 +#: library/configparser.rst:674 msgid "*interpolation*, default value: ``configparser.BasicInterpolation``" msgstr "" -#: library/configparser.rst:646 +#: library/configparser.rst:676 msgid "" "Interpolation behaviour may be customized by providing a custom handler " "through the *interpolation* argument. ``None`` can be used to turn off " @@ -765,11 +781,11 @@ msgid "" "`RawConfigParser` has a default value of ``None``." msgstr "" -#: library/configparser.rst:653 +#: library/configparser.rst:683 msgid "*converters*, default value: not set" msgstr "" -#: library/configparser.rst:655 +#: library/configparser.rst:685 msgid "" "Config parsers provide option value getters that perform type conversion. " "By default :meth:`~ConfigParser.getint`, :meth:`~ConfigParser.getfloat`, " @@ -783,7 +799,7 @@ msgid "" "``parser_instance['section'].getdecimal('key', 0)``." msgstr "" -#: library/configparser.rst:666 +#: library/configparser.rst:696 msgid "" "If the converter needs to access the state of the parser, it can be " "implemented as a method on a config parser subclass. If the name of this " @@ -791,14 +807,14 @@ msgid "" "the dict-compatible form (see the ``getdecimal()`` example above)." msgstr "" -#: library/configparser.rst:671 +#: library/configparser.rst:701 msgid "" "More advanced customization may be achieved by overriding default values of " "these parser attributes. The defaults are defined on the classes, so they " "may be overridden by subclasses or by attribute assignment." msgstr "" -#: library/configparser.rst:677 +#: library/configparser.rst:707 msgid "" "By default when using :meth:`~ConfigParser.getboolean`, config parsers " "consider the following values ``True``: ``'1'``, ``'yes'``, ``'true'``, " @@ -813,13 +829,13 @@ msgstr "" "dictionnaire associant des chaînes de caractères à des valeurs booléennes. " "Par exemple :" -#: library/configparser.rst:695 +#: library/configparser.rst:725 msgid "" "Other typical Boolean pairs include ``accept``/``reject`` or ``enabled``/" "``disabled``." msgstr "" -#: library/configparser.rst:701 +#: library/configparser.rst:731 msgid "" "This method transforms option names on every read, get, or set operation. " "The default converts the name to lowercase. This also means that when a " @@ -827,14 +843,14 @@ msgid "" "method if that's unsuitable. For example:" msgstr "" -#: library/configparser.rst:731 +#: library/configparser.rst:761 msgid "" "The optionxform function transforms option names to a canonical form. This " "should be an idempotent function: if the name is already in canonical form, " "it should be returned unchanged." msgstr "" -#: library/configparser.rst:738 +#: library/configparser.rst:768 msgid "" "A compiled regular expression used to parse section headers. The default " "matches ``[section]`` to the name ``\"section\"``. Whitespace is considered " @@ -843,18 +859,18 @@ msgid "" "example:" msgstr "" -#: library/configparser.rst:766 +#: library/configparser.rst:796 msgid "" "While ConfigParser objects also use an ``OPTCRE`` attribute for recognizing " "option lines, it's not recommended to override it because that would " "interfere with constructor options *allow_no_value* and *delimiters*." msgstr "" -#: library/configparser.rst:772 +#: library/configparser.rst:802 msgid "Legacy API Examples" msgstr "" -#: library/configparser.rst:774 +#: library/configparser.rst:804 msgid "" "Mainly because of backwards compatibility concerns, :mod:`configparser` " "provides also a legacy API with explicit ``get``/``set`` methods. While " @@ -863,29 +879,29 @@ msgid "" "advanced, low-level and downright counterintuitive." msgstr "" -#: library/configparser.rst:780 +#: library/configparser.rst:810 msgid "An example of writing to a configuration file::" msgstr "" -#: library/configparser.rst:803 +#: library/configparser.rst:833 msgid "An example of reading the configuration file again::" msgstr "" -#: library/configparser.rst:821 +#: library/configparser.rst:851 msgid "To get interpolation, use :class:`ConfigParser`::" msgstr "" -#: library/configparser.rst:854 +#: library/configparser.rst:884 msgid "" "Default values are available in both types of ConfigParsers. They are used " "in interpolation if an option used is not defined elsewhere. ::" msgstr "" -#: library/configparser.rst:872 +#: library/configparser.rst:902 msgid "ConfigParser Objects" msgstr "" -#: library/configparser.rst:876 +#: library/configparser.rst:906 msgid "" "The main configuration parser. When *defaults* is given, it is initialized " "into the dictionary of intrinsic defaults. When *dict_type* is given, it " @@ -893,7 +909,7 @@ msgid "" "the options within a section, and for the default values." msgstr "" -#: library/configparser.rst:881 +#: library/configparser.rst:911 msgid "" "When *delimiters* is given, it is used as the set of substrings that divide " "keys from values. When *comment_prefixes* is given, it will be used as the " @@ -902,7 +918,7 @@ msgid "" "as the set of substrings that prefix comments in non-empty lines." msgstr "" -#: library/configparser.rst:887 +#: library/configparser.rst:917 msgid "" "When *strict* is ``True`` (the default), the parser won't allow for any " "section or option duplicates while reading from a single source (file, " @@ -915,7 +931,7 @@ msgid "" "without the trailing delimiter." msgstr "" -#: library/configparser.rst:897 +#: library/configparser.rst:927 msgid "" "When *default_section* is given, it specifies the name for the special " "section holding default values for other sections and interpolation purposes " @@ -923,7 +939,7 @@ msgid "" "on runtime using the ``default_section`` instance attribute." msgstr "" -#: library/configparser.rst:902 +#: library/configparser.rst:932 msgid "" "Interpolation behaviour may be customized by providing a custom handler " "through the *interpolation* argument. ``None`` can be used to turn off " @@ -932,7 +948,7 @@ msgid "" "`dedicated documentation section <#interpolation-of-values>`_." msgstr "" -#: library/configparser.rst:908 +#: library/configparser.rst:938 msgid "" "All option names used in interpolation will be passed through the :meth:" "`optionxform` method just like any other option name reference. For " @@ -941,7 +957,7 @@ msgid "" "%(BAR)s`` are equivalent." msgstr "" -#: library/configparser.rst:914 +#: library/configparser.rst:944 msgid "" "When *converters* is given, it should be a dictionary where each key " "represents the name of a type converter and each value is a callable " @@ -950,44 +966,44 @@ msgid "" "object and section proxies." msgstr "" -#: library/configparser.rst:920 +#: library/configparser.rst:950 msgid "The default *dict_type* is :class:`collections.OrderedDict`." msgstr "" -#: library/configparser.rst:923 +#: library/configparser.rst:953 msgid "" "*allow_no_value*, *delimiters*, *comment_prefixes*, *strict*, " "*empty_lines_in_values*, *default_section* and *interpolation* were added." msgstr "" -#: library/configparser.rst:928 +#: library/configparser.rst:958 msgid "The *converters* argument was added." msgstr "" -#: library/configparser.rst:931 +#: library/configparser.rst:961 msgid "" "The *defaults* argument is read with :meth:`read_dict()`, providing " "consistent behavior across the parser: non-string keys and values are " "implicitly converted to strings." msgstr "" -#: library/configparser.rst:1221 +#: library/configparser.rst:1251 msgid "" "The default *dict_type* is :class:`dict`, since it now preserves insertion " "order." msgstr "" -#: library/configparser.rst:942 +#: library/configparser.rst:972 msgid "Return a dictionary containing the instance-wide defaults." msgstr "" -#: library/configparser.rst:947 +#: library/configparser.rst:977 msgid "" "Return a list of the sections available; the *default section* is not " "included in the list." msgstr "" -#: library/configparser.rst:953 +#: library/configparser.rst:983 msgid "" "Add a section named *section* to the instance. If a section by the given " "name already exists, :exc:`DuplicateSectionError` is raised. If the " @@ -995,34 +1011,34 @@ msgid "" "the section must be a string; if not, :exc:`TypeError` is raised." msgstr "" -#: library/configparser.rst:958 +#: library/configparser.rst:988 msgid "Non-string section names raise :exc:`TypeError`." msgstr "" -#: library/configparser.rst:964 +#: library/configparser.rst:994 msgid "" "Indicates whether the named *section* is present in the configuration. The " "*default section* is not acknowledged." msgstr "" -#: library/configparser.rst:970 +#: library/configparser.rst:1000 msgid "Return a list of options available in the specified *section*." msgstr "" -#: library/configparser.rst:975 +#: library/configparser.rst:1005 msgid "" "If the given *section* exists, and contains the given *option*, return :" "const:`True`; otherwise return :const:`False`. If the specified *section* " "is :const:`None` or an empty string, DEFAULT is assumed." msgstr "" -#: library/configparser.rst:982 +#: library/configparser.rst:1012 msgid "" "Attempt to read and parse an iterable of filenames, returning a list of " "filenames which were successfully parsed." msgstr "" -#: library/configparser.rst:985 +#: library/configparser.rst:1015 msgid "" "If *filenames* is a string, a :class:`bytes` object or a :term:`path-like " "object`, it is treated as a single filename. If a file named in *filenames* " @@ -1033,7 +1049,7 @@ msgid "" "be read." msgstr "" -#: library/configparser.rst:994 +#: library/configparser.rst:1024 msgid "" "If none of the named files exist, the :class:`ConfigParser` instance will " "contain an empty dataset. An application which requires initial values to " @@ -1041,52 +1057,52 @@ msgid "" "`read_file` before calling :meth:`read` for any optional files::" msgstr "" -#: library/configparser.rst:1007 +#: library/configparser.rst:1037 msgid "" "The *encoding* parameter. Previously, all files were read using the default " "encoding for :func:`open`." msgstr "" -#: library/configparser.rst:1011 +#: library/configparser.rst:1041 #, fuzzy msgid "The *filenames* parameter accepts a :term:`path-like object`." msgstr "" "Le paramètre *filename* accepte un objet chemin-compatible :term:`path-like " "object`." -#: library/configparser.rst:1014 +#: library/configparser.rst:1044 msgid "The *filenames* parameter accepts a :class:`bytes` object." msgstr "" -#: library/configparser.rst:1020 +#: library/configparser.rst:1050 msgid "" "Read and parse configuration data from *f* which must be an iterable " "yielding Unicode strings (for example files opened in text mode)." msgstr "" -#: library/configparser.rst:1023 +#: library/configparser.rst:1053 msgid "" "Optional argument *source* specifies the name of the file being read. If " "not given and *f* has a :attr:`name` attribute, that is used for *source*; " "the default is ``''``." msgstr "" -#: library/configparser.rst:1027 +#: library/configparser.rst:1057 msgid "Replaces :meth:`readfp`." msgstr "" -#: library/configparser.rst:1032 +#: library/configparser.rst:1062 msgid "Parse configuration data from a string." msgstr "" -#: library/configparser.rst:1034 +#: library/configparser.rst:1064 msgid "" "Optional argument *source* specifies a context-specific name of the string " "passed. If not given, ``''`` is used. This should commonly be a " "filesystem path or a URL." msgstr "" -#: library/configparser.rst:1043 +#: library/configparser.rst:1073 msgid "" "Load configuration from any object that provides a dict-like ``items()`` " "method. Keys are section names, values are dictionaries with keys and " @@ -1095,17 +1111,17 @@ msgid "" "automatically converted to strings." msgstr "" -#: library/configparser.rst:1049 +#: library/configparser.rst:1079 msgid "" "Optional argument *source* specifies a context-specific name of the " "dictionary passed. If not given, ```` is used." msgstr "" -#: library/configparser.rst:1052 +#: library/configparser.rst:1082 msgid "This method can be used to copy state between parsers." msgstr "" -#: library/configparser.rst:1059 +#: library/configparser.rst:1089 msgid "" "Get an *option* value for the named *section*. If *vars* is provided, it " "must be a dictionary. The *option* is looked up in *vars* (if provided), " @@ -1114,35 +1130,35 @@ msgid "" "provided as a *fallback* value." msgstr "" -#: library/configparser.rst:1065 +#: library/configparser.rst:1095 msgid "" "All the ``'%'`` interpolations are expanded in the return values, unless the " "*raw* argument is true. Values for interpolation keys are looked up in the " "same manner as the option." msgstr "" -#: library/configparser.rst:1069 +#: library/configparser.rst:1099 msgid "" "Arguments *raw*, *vars* and *fallback* are keyword only to protect users " "from trying to use the third argument as the *fallback* fallback (especially " "when using the mapping protocol)." msgstr "" -#: library/configparser.rst:1077 +#: library/configparser.rst:1107 msgid "" "A convenience method which coerces the *option* in the specified *section* " "to an integer. See :meth:`get` for explanation of *raw*, *vars* and " "*fallback*." msgstr "" -#: library/configparser.rst:1084 +#: library/configparser.rst:1114 msgid "" "A convenience method which coerces the *option* in the specified *section* " "to a floating point number. See :meth:`get` for explanation of *raw*, " "*vars* and *fallback*." msgstr "" -#: library/configparser.rst:1091 +#: library/configparser.rst:1121 msgid "" "A convenience method which coerces the *option* in the specified *section* " "to a Boolean value. Note that the accepted values for the option are " @@ -1154,34 +1170,34 @@ msgid "" "*fallback*." msgstr "" -#: library/configparser.rst:1104 +#: library/configparser.rst:1134 msgid "" "When *section* is not given, return a list of *section_name*, " "*section_proxy* pairs, including DEFAULTSECT." msgstr "" -#: library/configparser.rst:1107 +#: library/configparser.rst:1137 msgid "" "Otherwise, return a list of *name*, *value* pairs for the options in the " "given *section*. Optional arguments have the same meaning as for the :meth:" "`get` method." msgstr "" -#: library/configparser.rst:1111 +#: library/configparser.rst:1141 msgid "" "Items present in *vars* no longer appear in the result. The previous " "behaviour mixed actual parser options with variables provided for " "interpolation." msgstr "" -#: library/configparser.rst:1119 +#: library/configparser.rst:1149 msgid "" "If the given section exists, set the given option to the specified value; " "otherwise raise :exc:`NoSectionError`. *option* and *value* must be " "strings; if not, :exc:`TypeError` is raised." msgstr "" -#: library/configparser.rst:1126 +#: library/configparser.rst:1156 msgid "" "Write a representation of the configuration to the specified :term:`file " "object`, which must be opened in text mode (accepting strings). This " @@ -1190,27 +1206,27 @@ msgid "" "surrounded by spaces." msgstr "" -#: library/configparser.rst:1134 +#: library/configparser.rst:1164 msgid "" "Comments in the original configuration file are not preserved when writing " "the configuration back. What is considered a comment, depends on the given " "values for *comment_prefix* and *inline_comment_prefix*." msgstr "" -#: library/configparser.rst:1142 +#: library/configparser.rst:1172 msgid "" "Remove the specified *option* from the specified *section*. If the section " "does not exist, raise :exc:`NoSectionError`. If the option existed to be " "removed, return :const:`True`; otherwise return :const:`False`." msgstr "" -#: library/configparser.rst:1150 +#: library/configparser.rst:1180 msgid "" "Remove the specified *section* from the configuration. If the section in " "fact existed, return ``True``. Otherwise return ``False``." msgstr "" -#: library/configparser.rst:1156 +#: library/configparser.rst:1186 msgid "" "Transforms the option name *option* as found in an input file or as passed " "in by client code to the form that should be used in the internal " @@ -1219,7 +1235,7 @@ msgid "" "of this name on instances to affect this behavior." msgstr "" -#: library/configparser.rst:1162 +#: library/configparser.rst:1192 msgid "" "You don't need to subclass the parser to use this method, you can also set " "it on an instance, to a function that takes a string argument and returns a " @@ -1227,46 +1243,46 @@ msgid "" "sensitive::" msgstr "" -#: library/configparser.rst:1170 +#: library/configparser.rst:1200 msgid "" "Note that when reading configuration files, whitespace around the option " "names is stripped before :meth:`optionxform` is called." msgstr "" -#: library/configparser.rst:1176 +#: library/configparser.rst:1206 msgid "Use :meth:`read_file` instead." msgstr "" -#: library/configparser.rst:1179 +#: library/configparser.rst:1209 msgid "" ":meth:`readfp` now iterates on *fp* instead of calling ``fp.readline()``." msgstr "" -#: library/configparser.rst:1182 +#: library/configparser.rst:1212 msgid "" "For existing code calling :meth:`readfp` with arguments which don't support " "iteration, the following generator may be used as a wrapper around the file-" "like object::" msgstr "" -#: library/configparser.rst:1192 +#: library/configparser.rst:1222 msgid "" "Instead of ``parser.readfp(fp)`` use ``parser." "read_file(readline_generator(fp))``." msgstr "" -#: library/configparser.rst:1198 +#: library/configparser.rst:1228 msgid "" "The maximum depth for recursive interpolation for :meth:`get` when the *raw* " "parameter is false. This is relevant only when the default *interpolation* " "is used." msgstr "" -#: library/configparser.rst:1206 +#: library/configparser.rst:1236 msgid "RawConfigParser Objects" msgstr "" -#: library/configparser.rst:1216 +#: library/configparser.rst:1246 msgid "" "Legacy variant of the :class:`ConfigParser`. It has interpolation disabled " "by default and allows for non-string section names, option names, and values " @@ -1274,27 +1290,27 @@ msgid "" "``defaults=`` keyword argument handling." msgstr "" -#: library/configparser.rst:1226 +#: library/configparser.rst:1256 msgid "" "Consider using :class:`ConfigParser` instead which checks types of the " "values to be stored internally. If you don't want interpolation, you can " "use ``ConfigParser(interpolation=None)``." msgstr "" -#: library/configparser.rst:1233 +#: library/configparser.rst:1263 msgid "" "Add a section named *section* to the instance. If a section by the given " "name already exists, :exc:`DuplicateSectionError` is raised. If the " "*default section* name is passed, :exc:`ValueError` is raised." msgstr "" -#: library/configparser.rst:1237 +#: library/configparser.rst:1267 msgid "" "Type of *section* is not checked which lets users create non-string named " "sections. This behaviour is unsupported and may cause internal errors." msgstr "" -#: library/configparser.rst:1243 +#: library/configparser.rst:1273 msgid "" "If the given section exists, set the given option to the specified value; " "otherwise raise :exc:`NoSectionError`. While it is possible to use :class:" @@ -1304,7 +1320,7 @@ msgid "" "string values." msgstr "" -#: library/configparser.rst:1250 +#: library/configparser.rst:1280 msgid "" "This method lets users assign non-string values to keys internally. This " "behaviour is unsupported and will cause errors when attempting to write to a " @@ -1312,32 +1328,32 @@ msgid "" "not allow such assignments to take place." msgstr "" -#: library/configparser.rst:1257 +#: library/configparser.rst:1287 msgid "Exceptions" msgstr "Exceptions" -#: library/configparser.rst:1261 +#: library/configparser.rst:1291 msgid "Base class for all other :mod:`configparser` exceptions." msgstr "" -#: library/configparser.rst:1266 +#: library/configparser.rst:1296 msgid "Exception raised when a specified section is not found." msgstr "" -#: library/configparser.rst:1271 +#: library/configparser.rst:1301 msgid "" "Exception raised if :meth:`add_section` is called with the name of a section " "that is already present or in strict parsers when a section if found more " "than once in a single input file, string or dictionary." msgstr "" -#: library/configparser.rst:1275 +#: library/configparser.rst:1305 msgid "" "Optional ``source`` and ``lineno`` attributes and arguments to :meth:" "`__init__` were added." msgstr "" -#: library/configparser.rst:1282 +#: library/configparser.rst:1312 msgid "" "Exception raised by strict parsers if a single option appears twice during " "reading from a single file, string or dictionary. This catches misspellings " @@ -1345,58 +1361,58 @@ msgid "" "representing the same case-insensitive configuration key." msgstr "" -#: library/configparser.rst:1290 +#: library/configparser.rst:1320 msgid "" "Exception raised when a specified option is not found in the specified " "section." msgstr "" -#: library/configparser.rst:1296 +#: library/configparser.rst:1326 msgid "" "Base class for exceptions raised when problems occur performing string " "interpolation." msgstr "" -#: library/configparser.rst:1302 +#: library/configparser.rst:1332 msgid "" "Exception raised when string interpolation cannot be completed because the " "number of iterations exceeds :const:`MAX_INTERPOLATION_DEPTH`. Subclass of :" "exc:`InterpolationError`." msgstr "" -#: library/configparser.rst:1309 +#: library/configparser.rst:1339 msgid "" "Exception raised when an option referenced from a value does not exist. " "Subclass of :exc:`InterpolationError`." msgstr "" -#: library/configparser.rst:1315 +#: library/configparser.rst:1345 msgid "" "Exception raised when the source text into which substitutions are made does " "not conform to the required syntax. Subclass of :exc:`InterpolationError`." msgstr "" -#: library/configparser.rst:1321 +#: library/configparser.rst:1351 msgid "" "Exception raised when attempting to parse a file which has no section " "headers." msgstr "" -#: library/configparser.rst:1327 +#: library/configparser.rst:1357 msgid "Exception raised when errors occur attempting to parse a file." msgstr "" -#: library/configparser.rst:1329 +#: library/configparser.rst:1359 msgid "" "The ``filename`` attribute and :meth:`__init__` argument were renamed to " "``source`` for consistency." msgstr "" -#: library/configparser.rst:1335 +#: library/configparser.rst:1365 msgid "Footnotes" msgstr "Notes" -#: library/configparser.rst:1336 +#: library/configparser.rst:1366 msgid "" "Config parsers allow for heavy customization. If you are interested in " "changing the behaviour outlined by the footnote reference, consult the " diff --git a/library/constants.po b/library/constants.po index f78760cea..fadbdf270 100644 --- a/library/constants.po +++ b/library/constants.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-02-21 17:13+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -42,26 +42,28 @@ msgstr "" "pas autorisées et lèvent une :exc:`SyntaxError`." #: library/constants.rst:22 +#, fuzzy msgid "" -"The sole value of the type ``NoneType``. ``None`` is frequently used to " -"represent the absence of a value, as when default arguments are not passed " -"to a function. Assignments to ``None`` are illegal and raise a :exc:" -"`SyntaxError`." +"An object frequently used to represent the absence of a value, as when " +"default arguments are not passed to a function. Assignments to ``None`` are " +"illegal and raise a :exc:`SyntaxError`. ``None`` is the sole instance of " +"the :data:`NoneType` type." msgstr "" "``None`` est l'unique valeur du type ``NoneType``. Elle est utilisée " "fréquemment pour représenter l'absence de valeur, comme lorsque des " "arguments par défaut ne sont pas passés à une fonction. Les assignations à " "``None`` ne sont pas autorisées et lèvent une :exc:`SyntaxError`." -#: library/constants.rst:29 +#: library/constants.rst:30 #, fuzzy msgid "" -"Special value which should be returned by the binary special methods (e.g. :" -"meth:`__eq__`, :meth:`__lt__`, :meth:`__add__`, :meth:`__rsub__`, etc.) to " -"indicate that the operation is not implemented with respect to the other " +"A special value which should be returned by the binary special methods (e." +"g. :meth:`__eq__`, :meth:`__lt__`, :meth:`__add__`, :meth:`__rsub__`, etc.) " +"to indicate that the operation is not implemented with respect to the other " "type; may be returned by the in-place binary special methods (e.g. :meth:" "`__imul__`, :meth:`__iand__`, etc.) for the same purpose. It should not be " -"evaluated in a boolean context." +"evaluated in a boolean context. ``NotImplemented`` is the sole instance of " +"the :data:`types.NotImplementedType` type." msgstr "" "Valeur spéciale qui devrait être renvoyée par les méthodes magiques à deux " "opérandes (e.g. :meth:`__eq__`, :meth:`__lt__`, :meth:`__add__`, :meth:" @@ -70,7 +72,7 @@ msgstr "" "opérandes (e.g. :meth:`__imul__`, :meth:`__iand__`, etc.) avec le même " "objectif. Sa valeur booléenne est ``True``." -#: library/constants.rst:38 +#: library/constants.rst:40 msgid "" "When a binary (or in-place) method returns ``NotImplemented`` the " "interpreter will try the reflected operation on the other type (or some " @@ -87,11 +89,11 @@ msgstr "" "message d'erreur peu clair ou au renvoi de la valeur ``NotImplemented`` pour " "le code Python." -#: library/constants.rst:45 +#: library/constants.rst:47 msgid "See :ref:`implementing-the-arithmetic-operations` for examples." msgstr "Voir :ref:`implementing-the-arithmetic-operations` pour des exemples." -#: library/constants.rst:49 +#: library/constants.rst:51 msgid "" "``NotImplementedError`` and ``NotImplemented`` are not interchangeable, even " "though they have similar names and purposes. See :exc:`NotImplementedError` " @@ -101,7 +103,7 @@ msgstr "" "même s'ils ont un nom et un objectif similaire. Voir :exc:" "`NotImplementedError` pour savoir quand l'utiliser." -#: library/constants.rst:53 +#: library/constants.rst:55 msgid "" "Evaluating ``NotImplemented`` in a boolean context is deprecated. While it " "currently evaluates as true, it will emit a :exc:`DeprecationWarning`. It " @@ -111,17 +113,19 @@ msgstr "" "l'évalue aujourd'hui à ``True`` mais émet un :exc:`DeprecationWarning`. Il " "lèvera une :exc:`TypeError` dans une version ultérieure de Python." -#: library/constants.rst:62 +#: library/constants.rst:64 +#, fuzzy msgid "" -"The same as the ellipsis literal \"``...``\". Special value used mostly in " +"The same as the ellipsis literal \"``...``\". Special value used mostly in " "conjunction with extended slicing syntax for user-defined container data " -"types." +"types. ``Ellipsis`` is the sole instance of the :data:`types.EllipsisType` " +"type." msgstr "" "Identique au littéral *points de suspension* (\"``...``\"). Valeur spéciale " "utilisée principalement de manière conjointe avec la syntaxe de découpage " "(*slicing*) étendu pour les conteneurs personnalisés." -#: library/constants.rst:68 +#: library/constants.rst:71 msgid "" "This constant is true if Python was not started with an :option:`-O` option. " "See also the :keyword:`assert` statement." @@ -129,7 +133,7 @@ msgstr "" "Cette constante est vraie si Python n'a pas été démarré avec une option :" "option:`-O`. Voir aussi l'expression :keyword:`assert`." -#: library/constants.rst:74 +#: library/constants.rst:77 msgid "" "The names :data:`None`, :data:`False`, :data:`True` and :data:`__debug__` " "cannot be reassigned (assignments to them, even as an attribute name, raise :" @@ -140,11 +144,11 @@ msgstr "" "leurs attributs, lèvent une :exc:`SyntaxError`), donc ils peuvent être " "considérés comme des \"vraies\" constantes." -#: library/constants.rst:80 +#: library/constants.rst:83 msgid "Constants added by the :mod:`site` module" msgstr "Constantes ajoutées par le module :mod:`site`" -#: library/constants.rst:82 +#: library/constants.rst:85 msgid "" "The :mod:`site` module (which is imported automatically during startup, " "except if the :option:`-S` command-line option is given) adds several " @@ -157,7 +161,7 @@ msgstr "" "l'interpréteur interactif et ne devraient pas être utilisées par des " "programmes." -#: library/constants.rst:90 +#: library/constants.rst:93 msgid "" "Objects that when printed, print a message like \"Use quit() or Ctrl-D (i.e. " "EOF) to exit\", and when called, raise :exc:`SystemExit` with the specified " @@ -167,7 +171,7 @@ msgstr "" "quit() or Ctrl-D (i.e. EOF) to exit\"*, et lorsqu'ils sont appelés, lèvent " "un :exc:`SystemExit` avec le code de retour spécifié." -#: library/constants.rst:97 +#: library/constants.rst:100 msgid "" "Objects that when printed or called, print the text of copyright or credits, " "respectively." @@ -175,7 +179,7 @@ msgstr "" "Objets qui, lorsqu'ils sont affichés ou appelés, affichent le copyright ou " "les crédits, respectivement." -#: library/constants.rst:102 +#: library/constants.rst:105 msgid "" "Object that when printed, prints the message \"Type license() to see the " "full license text\", and when called, displays the full license text in a " diff --git a/library/contextlib.po b/library/contextlib.po index a9aadb893..8612d0848 100644 --- a/library/contextlib.po +++ b/library/contextlib.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-06-22 09:58+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-05-23 14:41-0400\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -194,7 +194,39 @@ msgstr "" msgid "A simple example::" msgstr "Un exemple simple ::" -#: library/contextlib.rst:132 +#: library/contextlib.rst:129 +msgid "" +"Context managers defined with :func:`asynccontextmanager` can be used either " +"as decorators or with :keyword:`async with` statements::" +msgstr "" + +#: library/contextlib.rst:145 +#, fuzzy +msgid "" +"When used as a decorator, a new generator instance is implicitly created on " +"each function call. This allows the otherwise \"one-shot\" context managers " +"created by :func:`asynccontextmanager` to meet the requirement that context " +"managers support multiple invocations in order to be used as decorators." +msgstr "" +"Le décorateur :func:`contextmanager` utilise la classe :class:" +"`ContextDecorator` afin que les gestionnaires de contexte qu'il crée " +"puissent être utilisés aussi bien en tant que décorateurs qu'avec des " +"instructions :keyword:`with`. Quand vous l'utilisez comme décorateur, une " +"nouvelle instance du générateur est créée à chaque appel de la fonction " +"(cela permet aux gestionnaires de contexte à usage unique créés par :func:" +"`contextmanager` de remplir la condition de pouvoir être invoqués plusieurs " +"fois afin d'être utilisés comme décorateurs)." + +#: library/contextlib.rst:150 +#, fuzzy +msgid "" +"Async context managers created with :func:`asynccontextmanager` can be used " +"as decorators." +msgstr "" +"Une classe mère qui permet à un gestionnaire de contexte d'être aussi " +"utilisé comme décorateur." + +#: library/contextlib.rst:157 msgid "" "Return a context manager that closes *thing* upon completion of the block. " "This is basically equivalent to::" @@ -202,11 +234,11 @@ msgstr "" "Renvoie un gestionnaire de contexte qui ferme *thing* à la fin du bloc. " "C'est essentiellement équivalent à ::" -#: library/contextlib.rst:144 +#: library/contextlib.rst:169 msgid "And lets you write code like this::" msgstr "Et cela vous permet d'écrire du code tel que ::" -#: library/contextlib.rst:153 +#: library/contextlib.rst:178 msgid "" "without needing to explicitly close ``page``. Even if an error occurs, " "``page.close()`` will be called when the :keyword:`with` block is exited." @@ -214,7 +246,31 @@ msgstr "" "sans besoin de fermer explicitement ``page``. Même si une erreur survient, " "``page.close()`` est appelée à la fermeture du bloc :keyword:`with`." -#: library/contextlib.rst:161 +#: library/contextlib.rst:184 +#, fuzzy +msgid "" +"Return an async context manager that calls the ``aclose()`` method of " +"*thing* upon completion of the block. This is basically equivalent to::" +msgstr "" +"Renvoie un gestionnaire de contexte qui ferme *thing* à la fin du bloc. " +"C'est essentiellement équivalent à ::" + +#: library/contextlib.rst:196 +msgid "" +"Significantly, ``aclosing()`` supports deterministic cleanup of async " +"generators when they happen to exit early by :keyword:`break` or an " +"exception. For example::" +msgstr "" + +#: library/contextlib.rst:207 +msgid "" +"This pattern ensures that the generator's async exit code is executed in the " +"same context as its iterations (so that exceptions and context variables " +"work as expected, and the exit code isn't run after the lifetime of some " +"task it depends on)." +msgstr "" + +#: library/contextlib.rst:219 msgid "" "Return a context manager that returns *enter_result* from ``__enter__``, but " "otherwise does nothing. It is intended to be used as a stand-in for an " @@ -224,11 +280,24 @@ msgstr "" "*enter_result*, mais ne fait rien d'autre. L'idée est de l'utiliser comme " "remplaçant pour un gestionnaire de contexte optionnel, par exemple ::" -#: library/contextlib.rst:175 +#: library/contextlib.rst:233 msgid "An example using *enter_result*::" msgstr "Un exemple utilisant *enter_result* ::" -#: library/contextlib.rst:193 +#: library/contextlib.rst:246 +#, fuzzy +msgid "" +"It can also be used as a stand-in for :ref:`asynchronous context managers " +"`::" +msgstr "" +"Similaire à :func:`~contextlib.contextmanager`, mais crée un :ref:" +"`gestionnaire de contexte asynchrone `." + +#: library/contextlib.rst:262 +msgid ":term:`asynchronous context manager` support was added." +msgstr "" + +#: library/contextlib.rst:269 #, fuzzy msgid "" "Return a context manager that suppresses any of the specified exceptions if " @@ -240,7 +309,7 @@ msgstr "" "spécifiées si elles surviennent dans le corps du bloc *with*, et reprend " "l'exécution sur la première instruction qui suit la fin du bloc *with*." -#: library/contextlib.rst:198 +#: library/contextlib.rst:274 msgid "" "As with any other mechanism that completely suppresses exceptions, this " "context manager should be used only to cover very specific errors where " @@ -252,19 +321,19 @@ msgstr "" "très spécifiques d'erreurs où il est certain que continuer silencieusement " "l'exécution du programme est la bonne chose à faire." -#: library/contextlib.rst:203 +#: library/contextlib.rst:279 msgid "For example::" msgstr "Par exemple ::" -#: library/contextlib.rst:213 +#: library/contextlib.rst:289 msgid "This code is equivalent to::" msgstr "Ce code est équivalent à ::" -#: library/contextlib.rst:265 library/contextlib.rst:275 +#: library/contextlib.rst:341 library/contextlib.rst:351 msgid "This context manager is :ref:`reentrant `." msgstr "Ce gestionnaire de contexte est :ref:`réentrant `." -#: library/contextlib.rst:232 +#: library/contextlib.rst:308 msgid "" "Context manager for temporarily redirecting :data:`sys.stdout` to another " "file or file-like object." @@ -272,7 +341,7 @@ msgstr "" "Gestionnaire de contexte servant à rediriger temporairement :data:`sys." "stdout` vers un autre fichier ou objet fichier-compatible." -#: library/contextlib.rst:235 +#: library/contextlib.rst:311 msgid "" "This tool adds flexibility to existing functions or classes whose output is " "hardwired to stdout." @@ -280,7 +349,7 @@ msgstr "" "Cet outil ajoute une certaine flexibilité aux fonctions ou classes " "existantes dont la sortie est envoyée vers la sortie standard." -#: library/contextlib.rst:238 +#: library/contextlib.rst:314 #, fuzzy msgid "" "For example, the output of :func:`help` normally is sent to *sys.stdout*. " @@ -293,7 +362,7 @@ msgstr "" "stdout*. Vous pouvez capturer cette sortie dans une chaîne de caractères en " "la redirigeant vers un objet :class:`io.StringIO` ::" -#: library/contextlib.rst:248 +#: library/contextlib.rst:324 msgid "" "To send the output of :func:`help` to a file on disk, redirect the output to " "a regular file::" @@ -301,11 +370,11 @@ msgstr "" "Pour envoyer la sortie de :func:`help` vers un fichier sur le disque, " "redirigez-la sur un fichier normal ::" -#: library/contextlib.rst:255 +#: library/contextlib.rst:331 msgid "To send the output of :func:`help` to *sys.stderr*::" msgstr "Pour envoyer la sortie de :func:`help` sur *sys.stderr* ::" -#: library/contextlib.rst:260 +#: library/contextlib.rst:336 msgid "" "Note that the global side effect on :data:`sys.stdout` means that this " "context manager is not suitable for use in library code and most threaded " @@ -319,7 +388,7 @@ msgstr "" "Cependant, cela reste une approche utile pour beaucoup de scripts " "utilitaires." -#: library/contextlib.rst:272 +#: library/contextlib.rst:348 msgid "" "Similar to :func:`~contextlib.redirect_stdout` but redirecting :data:`sys." "stderr` to another file or file-like object." @@ -327,14 +396,14 @@ msgstr "" "Similaire à :func:`~contextlib.redirect_stdout` mais redirige :data:`sys." "stderr` vers un autre fichier ou objet fichier-compatible." -#: library/contextlib.rst:282 +#: library/contextlib.rst:358 msgid "" "A base class that enables a context manager to also be used as a decorator." msgstr "" "Une classe mère qui permet à un gestionnaire de contexte d'être aussi " "utilisé comme décorateur." -#: library/contextlib.rst:284 +#: library/contextlib.rst:360 msgid "" "Context managers inheriting from ``ContextDecorator`` have to implement " "``__enter__`` and ``__exit__`` as normal. ``__exit__`` retains its optional " @@ -345,7 +414,7 @@ msgstr "" "conserve sa gestion optionnelle des exceptions même lors de l'utilisation en " "décorateur." -#: library/contextlib.rst:288 +#: library/contextlib.rst:364 msgid "" "``ContextDecorator`` is used by :func:`contextmanager`, so you get this " "functionality automatically." @@ -353,22 +422,22 @@ msgstr "" "``ContextDecorator`` est utilisé par :func:`contextmanager`, donc vous " "bénéficiez automatiquement de cette fonctionnalité." -#: library/contextlib.rst:291 +#: library/contextlib.rst:367 msgid "Example of ``ContextDecorator``::" msgstr "Exemple de ``ContextDecorator`` ::" -#: library/contextlib.rst:320 +#: library/contextlib.rst:396 msgid "" "This change is just syntactic sugar for any construct of the following form::" msgstr "" "Ce changement est simplement un sucre syntaxique pour les constructions de " "la forme suivante ::" -#: library/contextlib.rst:326 +#: library/contextlib.rst:402 msgid "``ContextDecorator`` lets you instead write::" msgstr "``ContextDecorator`` vous permet d'écrire à la place ::" -#: library/contextlib.rst:332 +#: library/contextlib.rst:408 msgid "" "It makes it clear that the ``cm`` applies to the whole function, rather than " "just a piece of it (and saving an indentation level is nice, too)." @@ -377,7 +446,7 @@ msgstr "" "seulement à un morceau en particulier (et gagner un niveau d'indentation est " "toujours appréciable)." -#: library/contextlib.rst:335 +#: library/contextlib.rst:411 msgid "" "Existing context managers that already have a base class can be extended by " "using ``ContextDecorator`` as a mixin class::" @@ -385,7 +454,7 @@ msgstr "" "Les gestionnaires de contexte existants qui ont déjà une classe mère peuvent " "être étendus en utilisant ``ContextDecorator`` comme une *mixin* ::" -#: library/contextlib.rst:348 +#: library/contextlib.rst:424 msgid "" "As the decorated function must be able to be called multiple times, the " "underlying context manager must support use in multiple :keyword:`with` " @@ -398,7 +467,20 @@ msgstr "" "construction d'origine avec de multiples instructions :keyword:`!with` au " "sein de la fonction doit être utilisée." -#: library/contextlib.rst:358 +#: library/contextlib.rst:434 +#, fuzzy +msgid "" +"Similar to :class:`ContextDecorator` but only for asynchronous functions." +msgstr "" +"Similaire à :meth:`enter_context` mais attend un gestionnaire de contexte " +"asynchrone." + +#: library/contextlib.rst:436 +#, fuzzy +msgid "Example of ``AsyncContextDecorator``::" +msgstr "Exemple de ``ContextDecorator`` ::" + +#: library/contextlib.rst:473 msgid "" "A context manager that is designed to make it easy to programmatically " "combine other context managers and cleanup functions, especially those that " @@ -409,7 +491,7 @@ msgstr "" "nettoyage, spécifiquement ceux qui sont optionnels ou pilotés par des " "données d'entrée." -#: library/contextlib.rst:362 +#: library/contextlib.rst:477 msgid "" "For example, a set of files may easily be handled in a single with statement " "as follows::" @@ -417,7 +499,7 @@ msgstr "" "Par exemple, un ensemble de fichiers peut facilement être géré dans une " "unique instruction *with* comme suit ::" -#: library/contextlib.rst:371 +#: library/contextlib.rst:486 msgid "" "Each instance maintains a stack of registered callbacks that are called in " "reverse order when the instance is closed (either explicitly or implicitly " @@ -430,7 +512,7 @@ msgstr "" "que ces fonctions ne sont *pas* invoquées implicitement quand l'instance de " "la pile de contextes est collectée par le ramasse-miettes." -#: library/contextlib.rst:376 +#: library/contextlib.rst:491 msgid "" "This stack model is used so that context managers that acquire their " "resources in their ``__init__`` method (such as file objects) can be handled " @@ -440,7 +522,7 @@ msgstr "" "acquièrent leurs ressources dans leur méthode ``__init__`` (tels que les " "objets-fichiers) puissent être gérés correctement." -#: library/contextlib.rst:380 +#: library/contextlib.rst:495 msgid "" "Since registered callbacks are invoked in the reverse order of registration, " "this ends up behaving as if multiple nested :keyword:`with` statements had " @@ -456,7 +538,7 @@ msgstr "" "de rappel intérieure supprime ou remplace une exception, alors les fonctions " "extérieures reçoivent des arguments basés sur ce nouvel état." -#: library/contextlib.rst:387 +#: library/contextlib.rst:502 msgid "" "This is a relatively low level API that takes care of the details of " "correctly unwinding the stack of exit callbacks. It provides a suitable " @@ -468,7 +550,7 @@ msgstr "" "pour des gestionnaires de contexte de plus haut niveau qui manipulent la " "pile de sortie de manière spécifique à l'application." -#: library/contextlib.rst:396 +#: library/contextlib.rst:511 msgid "" "Enters a new context manager and adds its :meth:`__exit__` method to the " "callback stack. The return value is the result of the context manager's own :" @@ -478,7 +560,7 @@ msgstr "" "`__exit__` à la pile d'appels. La valeur de retour est le résultat de la " "méthode :meth:`__enter__` du gestionnaire de contexte donné." -#: library/contextlib.rst:400 +#: library/contextlib.rst:515 msgid "" "These context managers may suppress exceptions just as they normally would " "if used directly as part of a :keyword:`with` statement." @@ -487,13 +569,13 @@ msgstr "" "feraient normalement s'ils étaient utilisés directement derrière une " "instruction :keyword:`with`." -#: library/contextlib.rst:405 +#: library/contextlib.rst:520 msgid "Adds a context manager's :meth:`__exit__` method to the callback stack." msgstr "" "Ajoute la méthode :meth:`__exit__` d'un gestionnaire de contexte à la pile " "d'appels." -#: library/contextlib.rst:407 +#: library/contextlib.rst:522 msgid "" "As ``__enter__`` is *not* invoked, this method can be used to cover part of " "an :meth:`__enter__` implementation with a context manager's own :meth:" @@ -503,7 +585,7 @@ msgstr "" "pour couvrir une partie de l'implémentation de :meth:`__enter__` avec la " "propre méthode :meth:`__exit__` d'un gestionnaire de contexte." -#: library/contextlib.rst:411 +#: library/contextlib.rst:526 msgid "" "If passed an object that is not a context manager, this method assumes it is " "a callback with the same signature as a context manager's :meth:`__exit__` " @@ -514,7 +596,7 @@ msgstr "" "meth:`__exit__` des gestionnaires de contexte pour l'ajouter directement à " "la pile d'appels." -#: library/contextlib.rst:415 +#: library/contextlib.rst:530 msgid "" "By returning true values, these callbacks can suppress exceptions the same " "way context manager :meth:`__exit__` methods can." @@ -523,7 +605,7 @@ msgstr "" "exceptions de la même manière que le peuvent les méthodes :meth:`__exit__` " "des gestionnaires de contexte." -#: library/contextlib.rst:418 +#: library/contextlib.rst:533 msgid "" "The passed in object is returned from the function, allowing this method to " "be used as a function decorator." @@ -531,7 +613,7 @@ msgstr "" "L'objet passé en paramètre est renvoyé par la fonction, ce qui permet à la " "méthode d'être utilisée comme décorateur de fonction." -#: library/contextlib.rst:423 +#: library/contextlib.rst:538 msgid "" "Accepts an arbitrary callback function and arguments and adds it to the " "callback stack." @@ -539,7 +621,7 @@ msgstr "" "Accepte une fonction arbitraire et ses arguments et les ajoute à la pile des " "fonctions de rappel." -#: library/contextlib.rst:426 +#: library/contextlib.rst:541 msgid "" "Unlike the other methods, callbacks added this way cannot suppress " "exceptions (as they are never passed the exception details)." @@ -548,7 +630,7 @@ msgstr "" "cette manière ne peuvent pas supprimer les exceptions (puisqu'elles ne " "reçoivent jamais les détails de l'exception)." -#: library/contextlib.rst:429 +#: library/contextlib.rst:544 msgid "" "The passed in callback is returned from the function, allowing this method " "to be used as a function decorator." @@ -556,7 +638,7 @@ msgstr "" "La fonction passée en paramètre est renvoyée par la méthode, ce qui permet à " "la méthode d'être utilisée comme décorateur de fonction." -#: library/contextlib.rst:434 +#: library/contextlib.rst:549 msgid "" "Transfers the callback stack to a fresh :class:`ExitStack` instance and " "returns it. No callbacks are invoked by this operation - instead, they will " @@ -568,7 +650,7 @@ msgstr "" "la place, elles sont dorénavant invoquées quand la nouvelle pile sera close " "(soit explicitement soit implicitement à la fin d'un bloc :keyword:`with`)." -#: library/contextlib.rst:439 +#: library/contextlib.rst:554 msgid "" "For example, a group of files can be opened as an \"all or nothing\" " "operation as follows::" @@ -576,7 +658,7 @@ msgstr "" "Par exemple, un groupe de fichiers peut être ouvert comme une opération " "« tout ou rien » comme suit ::" -#: library/contextlib.rst:453 +#: library/contextlib.rst:568 msgid "" "Immediately unwinds the callback stack, invoking callbacks in the reverse " "order of registration. For any context managers and exit callbacks " @@ -587,7 +669,7 @@ msgstr "" "et fonction de sortie enregistré, les arguments passés indiqueront qu'aucune " "exception n'est survenue." -#: library/contextlib.rst:460 +#: library/contextlib.rst:575 msgid "" "An :ref:`asynchronous context manager `, similar to :" "class:`ExitStack`, that supports combining both synchronous and asynchronous " @@ -598,7 +680,7 @@ msgstr "" "de contexte synchrones et asynchrones, ainsi que la gestion de coroutines " "pour la logique de nettoyage." -#: library/contextlib.rst:465 +#: library/contextlib.rst:580 msgid "" "The :meth:`close` method is not implemented, :meth:`aclose` must be used " "instead." @@ -606,14 +688,14 @@ msgstr "" "La méthode :meth:`close` n'est pas implémentée, :meth:`aclose` doit plutôt " "être utilisée." -#: library/contextlib.rst:470 +#: library/contextlib.rst:585 msgid "" "Similar to :meth:`enter_context` but expects an asynchronous context manager." msgstr "" "Similaire à :meth:`enter_context` mais attend un gestionnaire de contexte " "asynchrone." -#: library/contextlib.rst:475 +#: library/contextlib.rst:590 msgid "" "Similar to :meth:`push` but expects either an asynchronous context manager " "or a coroutine function." @@ -621,24 +703,24 @@ msgstr "" "Similaire à :meth:`push` mais attend soit un gestionnaire de contexte " "asynchrone soit une fonction coroutine." -#: library/contextlib.rst:480 +#: library/contextlib.rst:595 msgid "Similar to :meth:`callback` but expects a coroutine function." msgstr "Similaire à :meth:`callback` mais attend une fonction coroutine." -#: library/contextlib.rst:484 +#: library/contextlib.rst:599 msgid "Similar to :meth:`close` but properly handles awaitables." msgstr "" "Similaire à :meth:`close` mais gère correctement les tâches asynchrones." -#: library/contextlib.rst:486 +#: library/contextlib.rst:601 msgid "Continuing the example for :func:`asynccontextmanager`::" msgstr "En continuité de l'exemple de :func:`asynccontextmanager` ::" -#: library/contextlib.rst:498 +#: library/contextlib.rst:613 msgid "Examples and Recipes" msgstr "Exemples et Recettes" -#: library/contextlib.rst:500 +#: library/contextlib.rst:615 msgid "" "This section describes some examples and recipes for making effective use of " "the tools provided by :mod:`contextlib`." @@ -646,11 +728,11 @@ msgstr "" "Cette section décrit quelques exemples et recettes pour décrire une " "utilisation réelle des outils fournis par :mod:`contextlib`." -#: library/contextlib.rst:505 +#: library/contextlib.rst:620 msgid "Supporting a variable number of context managers" msgstr "Gérer un nombre variable de gestionnaires de contexte" -#: library/contextlib.rst:507 +#: library/contextlib.rst:622 msgid "" "The primary use case for :class:`ExitStack` is the one given in the class " "documentation: supporting a variable number of context managers and other " @@ -667,7 +749,7 @@ msgstr "" "collection spécifique de fichiers de l'utilisateur), ou de certains " "gestionnaires de contexte qui peuvent être optionnels ::" -#: library/contextlib.rst:522 +#: library/contextlib.rst:637 msgid "" "As shown, :class:`ExitStack` also makes it quite easy to use :keyword:`with` " "statements to manage arbitrary resources that don't natively support the " @@ -677,11 +759,11 @@ msgstr "" "instructions :keyword:`with` pour gérer des ressources arbitraires qui ne " "gèrent pas nativement le protocole des gestionnaires de contexte." -#: library/contextlib.rst:528 +#: library/contextlib.rst:643 msgid "Catching exceptions from ``__enter__`` methods" msgstr "Attraper des exceptions depuis les méthodes ``__enter__``" -#: library/contextlib.rst:530 +#: library/contextlib.rst:645 msgid "" "It is occasionally desirable to catch exceptions from an ``__enter__`` " "method implementation, *without* inadvertently catching exceptions from the :" @@ -696,7 +778,7 @@ msgstr "" "`ExitStack`, les étapes du protocole des gestionnaires de contexte peuvent " "être légèrement séparées pour permettre le code suivant ::" -#: library/contextlib.rst:545 +#: library/contextlib.rst:660 msgid "" "Actually needing to do this is likely to indicate that the underlying API " "should be providing a direct resource management interface for use with :" @@ -715,11 +797,11 @@ msgstr "" "gestion de plusieurs situations qui ne peuvent pas être traitées directement " "dans une instruction :keyword:`with`." -#: library/contextlib.rst:555 +#: library/contextlib.rst:670 msgid "Cleaning up in an ``__enter__`` implementation" msgstr "Nettoyer dans une méthode ``__enter__``" -#: library/contextlib.rst:557 +#: library/contextlib.rst:672 msgid "" "As noted in the documentation of :meth:`ExitStack.push`, this method can be " "useful in cleaning up an already allocated resource if later steps in the :" @@ -729,7 +811,7 @@ msgstr "" "peut être utile pour nettoyer une ressource déjà allouée si les dernières " "étapes de l'implémentation de :meth:`__enter__` échouent." -#: library/contextlib.rst:561 +#: library/contextlib.rst:676 msgid "" "Here's an example of doing this for a context manager that accepts resource " "acquisition and release functions, along with an optional validation " @@ -739,11 +821,11 @@ msgstr "" "d'acquisition de ressources et de libération, avec une méthode de validation " "optionnelle, et qui les adapte au protocole des gestionnaires de contexte ::" -#: library/contextlib.rst:601 +#: library/contextlib.rst:716 msgid "Replacing any use of ``try-finally`` and flag variables" msgstr "Remplacer un ``try-finally`` avec une option variable" -#: library/contextlib.rst:603 +#: library/contextlib.rst:718 msgid "" "A pattern you will sometimes see is a ``try-finally`` statement with a flag " "variable to indicate whether or not the body of the ``finally`` clause " @@ -755,7 +837,7 @@ msgstr "" "ou non. Dans sa forme la plus simple (qui ne peut pas déjà être gérée avec " "juste une clause ``except``), cela ressemble à ::" -#: library/contextlib.rst:617 +#: library/contextlib.rst:732 msgid "" "As with any ``try`` statement based code, this can cause problems for " "development and review, because the setup code and the cleanup code can end " @@ -766,7 +848,7 @@ msgstr "" "codes d'installation et de nettoyage peuvent finir par être séparés par des " "sections de code arbitrairement longues." -#: library/contextlib.rst:621 +#: library/contextlib.rst:736 msgid "" ":class:`ExitStack` makes it possible to instead register a callback for " "execution at the end of a ``with`` statement, and then later decide to skip " @@ -776,7 +858,7 @@ msgstr "" "rappel pour être exécutée à la fin d'une instruction ``with``, et décider " "ensuite de passer l'exécution de cet appel ::" -#: library/contextlib.rst:633 +#: library/contextlib.rst:748 msgid "" "This allows the intended cleanup up behaviour to be made explicit up front, " "rather than requiring a separate flag variable." @@ -784,7 +866,7 @@ msgstr "" "Cela permet de rendre explicite dès le départ le comportement de nettoyage " "attendu, plutôt que de nécessiter une option séparée." -#: library/contextlib.rst:636 +#: library/contextlib.rst:751 msgid "" "If a particular application uses this pattern a lot, it can be simplified " "even further by means of a small helper class::" @@ -792,7 +874,7 @@ msgstr "" "Si une application particulière utilise beaucoup ce modèle, cela peut-être " "simplifié encore plus au moyen d'une petite classe d'aide ::" -#: library/contextlib.rst:654 +#: library/contextlib.rst:769 msgid "" "If the resource cleanup isn't already neatly bundled into a standalone " "function, then it is still possible to use the decorator form of :meth:" @@ -803,7 +885,7 @@ msgstr "" "`ExitStack.callback` pour déclarer la fonction de nettoyage de ressource en " "avance ::" -#: library/contextlib.rst:669 +#: library/contextlib.rst:784 msgid "" "Due to the way the decorator protocol works, a callback function declared " "this way cannot take any parameters. Instead, any resources to be released " @@ -814,12 +896,12 @@ msgstr "" "doivent être récupérées depuis l'extérieur comme des variables de fermeture " "(*closure*)." -#: library/contextlib.rst:675 +#: library/contextlib.rst:790 msgid "Using a context manager as a function decorator" msgstr "" "Utiliser un gestionnaire de contexte en tant que décorateur de fonction" -#: library/contextlib.rst:677 +#: library/contextlib.rst:792 msgid "" ":class:`ContextDecorator` makes it possible to use a context manager in both " "an ordinary ``with`` statement and also as a function decorator." @@ -828,7 +910,7 @@ msgstr "" "contexte à la fois ordinairement avec une instruction ``with`` ou comme un " "décorateur de fonction." -#: library/contextlib.rst:680 +#: library/contextlib.rst:795 msgid "" "For example, it is sometimes useful to wrap functions or groups of " "statements with a logger that can track the time of entry and time of exit. " @@ -843,17 +925,17 @@ msgstr "" "`ContextDecorator` fournit les deux fonctionnalités en une seule " "définition ::" -#: library/contextlib.rst:701 +#: library/contextlib.rst:816 msgid "Instances of this class can be used as both a context manager::" msgstr "" "Les instances de cette classe peuvent être utilisées comme gestionnaires de " "contexte ::" -#: library/contextlib.rst:707 +#: library/contextlib.rst:822 msgid "And also as a function decorator::" msgstr "Et comme décorateurs de fonctions ::" -#: library/contextlib.rst:714 +#: library/contextlib.rst:829 msgid "" "Note that there is one additional limitation when using context managers as " "function decorators: there's no way to access the return value of :meth:" @@ -865,11 +947,11 @@ msgstr "" "de retour de :meth:`__enter__`. Si cette valeur est nécessaire, il faut " "utiliser explicitement une instruction ``with``." -#: library/contextlib.rst:722 +#: library/contextlib.rst:837 msgid ":pep:`343` - The \"with\" statement" msgstr ":pep:`343` - The \"with\" statement" -#: library/contextlib.rst:722 +#: library/contextlib.rst:837 msgid "" "The specification, background, and examples for the Python :keyword:`with` " "statement." @@ -877,11 +959,11 @@ msgstr "" "La spécification, les motivations et des exemples de l'instruction :keyword:" "`with` en Python." -#: library/contextlib.rst:728 +#: library/contextlib.rst:843 msgid "Single use, reusable and reentrant context managers" msgstr "Gestionnaires de contexte à usage unique, réutilisables et réentrants" -#: library/contextlib.rst:730 +#: library/contextlib.rst:845 msgid "" "Most context managers are written in a way that means they can only be used " "effectively in a :keyword:`with` statement once. These single use context " @@ -894,7 +976,7 @@ msgstr "" "chaque fois qu'ils sont utilisés — tenter de les utiliser une seconde fois " "lève une exception ou ne fonctionne pas correctement." -#: library/contextlib.rst:736 +#: library/contextlib.rst:851 msgid "" "This common limitation means that it is generally advisable to create " "context managers directly in the header of the :keyword:`with` statement " @@ -905,7 +987,7 @@ msgstr "" "`with` où ils sont utilisés (comme montré dans tous les exemples " "d'utilisation au-dessus)." -#: library/contextlib.rst:740 +#: library/contextlib.rst:855 msgid "" "Files are an example of effectively single use context managers, since the " "first :keyword:`with` statement will close the file, preventing any further " @@ -916,7 +998,7 @@ msgstr "" "`with` ferme le fichier, empêchant d'autres opérations d'entrée/sortie " "d'être exécutées sur ce fichier." -#: library/contextlib.rst:744 +#: library/contextlib.rst:859 msgid "" "Context managers created using :func:`contextmanager` are also single use " "context managers, and will complain about the underlying generator failing " @@ -926,11 +1008,11 @@ msgstr "" "usage unique, et se plaindront du fait que le générateur sous-jacent ne " "produise plus de valeur si vous essayez de les utiliser une seconde fois ::" -#: library/contextlib.rst:772 +#: library/contextlib.rst:887 msgid "Reentrant context managers" msgstr "Gestionnaires de contexte réentrants" -#: library/contextlib.rst:774 +#: library/contextlib.rst:889 msgid "" "More sophisticated context managers may be \"reentrant\". These context " "managers can not only be used in multiple :keyword:`with` statements, but " @@ -943,7 +1025,7 @@ msgstr "" "l'intérieur* d'une instruction :keyword:`!with` qui utilise déjà ce même " "gestionnaire de contexte." -#: library/contextlib.rst:779 +#: library/contextlib.rst:894 msgid "" ":class:`threading.RLock` is an example of a reentrant context manager, as " "are :func:`suppress` and :func:`redirect_stdout`. Here's a very simple " @@ -953,7 +1035,7 @@ msgstr "" "réentrant, comme le sont aussi :func:`suppress` et :func:`redirect_stdout`. " "Voici un très simple exemple d'utilisation réentrante ::" -#: library/contextlib.rst:798 +#: library/contextlib.rst:913 msgid "" "Real world examples of reentrancy are more likely to involve multiple " "functions calling each other and hence be far more complicated than this " @@ -963,7 +1045,7 @@ msgstr "" "fonctions s'entre-appelant, et donc être bien plus compliqués que cet " "exemple." -#: library/contextlib.rst:802 +#: library/contextlib.rst:917 msgid "" "Note also that being reentrant is *not* the same thing as being thread " "safe. :func:`redirect_stdout`, for example, is definitely not thread safe, " @@ -975,11 +1057,11 @@ msgstr "" "puisqu'il effectue des changements globaux sur l'état du système en " "branchant :data:`sys.stdout` sur différents flux." -#: library/contextlib.rst:811 +#: library/contextlib.rst:926 msgid "Reusable context managers" msgstr "Gestionnaires de contexte réutilisables" -#: library/contextlib.rst:813 +#: library/contextlib.rst:928 msgid "" "Distinct from both single use and reentrant context managers are \"reusable" "\" context managers (or, to be completely explicit, \"reusable, but not " @@ -997,7 +1079,7 @@ msgstr "" "contexte référencée a déjà été utilisée dans une instruction *with* " "englobante." -#: library/contextlib.rst:820 +#: library/contextlib.rst:935 msgid "" ":class:`threading.Lock` is an example of a reusable, but not reentrant, " "context manager (for a reentrant lock, it is necessary to use :class:" @@ -1007,7 +1089,7 @@ msgstr "" "réutilisable mais pas réentrant (pour un verrou réentrant, il faut à la " "place utiliser :class:`threading.RLock`)." -#: library/contextlib.rst:824 +#: library/contextlib.rst:939 msgid "" "Another example of a reusable, but not reentrant, context manager is :class:" "`ExitStack`, as it invokes *all* currently registered callbacks when leaving " @@ -1018,7 +1100,7 @@ msgstr "" "actuellement enregistrées en quittant l'instruction *with*, sans regarder où " "ces fonctions ont été ajoutées ::" -#: library/contextlib.rst:855 +#: library/contextlib.rst:970 msgid "" "As the output from the example shows, reusing a single stack object across " "multiple with statements works correctly, but attempting to nest them will " @@ -1030,7 +1112,7 @@ msgstr "" "imbriquer fait que la pile est vidée à la fin du *with* le plus imbriqué, ce " "qui n'est probablement pas le comportement voulu." -#: library/contextlib.rst:860 +#: library/contextlib.rst:975 msgid "" "Using separate :class:`ExitStack` instances instead of reusing a single " "instance avoids that problem::" diff --git a/library/copy.po b/library/copy.po index e5dfb381f..264fc7cb1 100644 --- a/library/copy.po +++ b/library/copy.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-02-21 17:18+0100\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -164,6 +164,7 @@ msgstr "" "`copyreg`." #: library/copy.rst:82 +#, fuzzy msgid "" "In order for a class to define its own copy implementation, it can define " "special methods :meth:`__copy__` and :meth:`__deepcopy__`. The former is " @@ -172,7 +173,8 @@ msgid "" "passed one argument, the ``memo`` dictionary. If the :meth:`__deepcopy__` " "implementation needs to make a deep copy of a component, it should call the :" "func:`deepcopy` function with the component as first argument and the memo " -"dictionary as second argument." +"dictionary as second argument. The memo dictionary should be treated as an " +"opaque object." msgstr "" "Afin qu'une classe définisse sa propre implémentation de copie, elle peut " "définir les méthodes spéciales :meth:`__copy__` et :meth:`__deepcopy__`. La " @@ -184,11 +186,11 @@ msgstr "" "func:`deepcopy` avec le composant comme premier argument et le dictionnaire " "*memo* comme second argument." -#: library/copy.rst:94 +#: library/copy.rst:95 msgid "Module :mod:`pickle`" msgstr "Module :mod:`pickle`" -#: library/copy.rst:94 +#: library/copy.rst:95 msgid "" "Discussion of the special methods used to support object state retrieval and " "restoration." diff --git a/library/csv.po b/library/csv.po index 9124f52f3..f08a631bc 100644 --- a/library/csv.po +++ b/library/csv.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-01-27 19:45+0100\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -141,6 +141,7 @@ msgid "A short usage example::" msgstr "Un court exemple d'utilisation ::" #: library/csv.rst:88 +#, fuzzy msgid "" "Return a writer object responsible for converting the user's data into " "delimited strings on the given file-like object. *csvfile* can be any " @@ -151,9 +152,9 @@ msgid "" "`Dialect` class or one of the strings returned by the :func:`list_dialects` " "function. The other optional *fmtparams* keyword arguments can be given to " "override individual formatting parameters in the current dialect. For full " -"details about the dialect and formatting parameters, see section :ref:`csv-" -"fmt-params`. To make it as easy as possible to interface with modules which " -"implement the DB API, the value :const:`None` is written as the empty " +"details about dialects and formatting parameters, see the :ref:`csv-fmt-" +"params` section. To make it as easy as possible to interface with modules " +"which implement the DB API, the value :const:`None` is written as the empty " "string. While this isn't a reversible transformation, it makes it easier to " "dump SQL NULL data values to CSV files without preprocessing the data " "returned from a ``cursor.fetch*`` call. All other non-string data are " @@ -180,11 +181,12 @@ msgstr "" "d'être écrites." #: library/csv.rst:117 +#, fuzzy msgid "" "Associate *dialect* with *name*. *name* must be a string. The dialect can " "be specified either by passing a sub-class of :class:`Dialect`, or by " "*fmtparams* keyword arguments, or both, with keyword arguments overriding " -"parameters of the dialect. For full details about the dialect and formatting " +"parameters of the dialect. For full details about dialects and formatting " "parameters, see section :ref:`csv-fmt-params`." msgstr "" "Associe *dialect* avec *name*. *name* doit être une chaîne de caractères. " @@ -318,15 +320,21 @@ msgstr "" #: library/csv.rst:228 msgid "" -"The :class:`Dialect` class is a container class relied on primarily for its " -"attributes, which are used to define the parameters for a specific :class:" -"`reader` or :class:`writer` instance." +"The :class:`Dialect` class is a container class whose attributes contain " +"information for how to handle doublequotes, whitespace, delimiters, etc. Due " +"to the lack of a strict CSV specification, different applications produce " +"subtly different CSV data. :class:`Dialect` instances define how :class:" +"`reader` and :class:`writer` instances behave." msgstr "" -"La classe :class:`Dialect` est une classe de conteneurs utilisée " -"principalement pour ses attributs, qui servent à définir des paramètres pour " -"des instances spécifiques de :class:`reader` ou :class:`writer`." -#: library/csv.rst:235 +#: library/csv.rst:234 +msgid "" +"All available :class:`Dialect` names are returned by :func:`list_dialects`, " +"and they can be registered with specific :class:`reader` and :class:`writer` " +"classes through their initializer (``__init__``) functions like this::" +msgstr "" + +#: library/csv.rst:247 msgid "" "The :class:`excel` class defines the usual properties of an Excel-generated " "CSV file. It is registered with the dialect name ``'excel'``." @@ -334,7 +342,7 @@ msgstr "" "La classe :class:`excel` définit les propriétés usuelles d'un fichier CSV " "généré par Excel. Elle est enregistrée avec le nom de dialecte ``'excel'``." -#: library/csv.rst:241 +#: library/csv.rst:253 msgid "" "The :class:`excel_tab` class defines the usual properties of an Excel-" "generated TAB-delimited file. It is registered with the dialect name " @@ -344,7 +352,7 @@ msgstr "" "CSV généré par Excel avec des tabulations comme séparateurs. Elle est " "enregistrée avec le nom de dialecte ``'excel-tab'``." -#: library/csv.rst:247 +#: library/csv.rst:259 msgid "" "The :class:`unix_dialect` class defines the usual properties of a CSV file " "generated on UNIX systems, i.e. using ``'\\n'`` as line terminator and " @@ -355,17 +363,17 @@ msgstr "" "marqueur de fin de ligne et délimitant tous les champs par des guillemets. " "Elle est enregistrée avec le nom de dialecte ``'unix'``." -#: library/csv.rst:256 +#: library/csv.rst:268 msgid "The :class:`Sniffer` class is used to deduce the format of a CSV file." msgstr "" "La classe :class:`Sniffer` est utilisée pour déduire le format d'un fichier " "CSV." -#: library/csv.rst:258 +#: library/csv.rst:270 msgid "The :class:`Sniffer` class provides two methods:" msgstr "La classe :class:`Sniffer` fournit deux méthodes :" -#: library/csv.rst:262 +#: library/csv.rst:274 msgid "" "Analyze the given *sample* and return a :class:`Dialect` subclass reflecting " "the parameters found. If the optional *delimiters* parameter is given, it " @@ -376,29 +384,54 @@ msgstr "" "*delimiters* est donné, il est interprété comme une chaîne contenant tous " "les caractères valides de séparation possibles." -#: library/csv.rst:270 +#: library/csv.rst:282 +#, fuzzy msgid "" "Analyze the sample text (presumed to be in CSV format) and return :const:" -"`True` if the first row appears to be a series of column headers." +"`True` if the first row appears to be a series of column headers. Inspecting " +"each column, one of two key criteria will be considered to estimate if the " +"sample contains a header:" msgstr "" "Analyse l'extrait de texte (présumé être au format CSV) et renvoie :const:" "`True` si la première ligne semble être une série d'en-têtes de colonnes." -#: library/csv.rst:273 +#: library/csv.rst:287 +msgid "the second through n-th rows contain numeric values" +msgstr "" + +#: library/csv.rst:288 +msgid "" +"the second through n-th rows contain strings where at least one value's " +"length differs from that of the putative header of that column." +msgstr "" + +#: library/csv.rst:291 +msgid "" +"Twenty rows after the first row are sampled; if more than half of columns + " +"rows meet the criteria, :const:`True` is returned." +msgstr "" + +#: library/csv.rst:296 +msgid "" +"This method is a rough heuristic and may produce both false positives and " +"negatives." +msgstr "" + +#: library/csv.rst:299 msgid "An example for :class:`Sniffer` use::" msgstr "Un exemple d'utilisation de :class:`Sniffer` ::" -#: library/csv.rst:282 +#: library/csv.rst:308 msgid "The :mod:`csv` module defines the following constants:" msgstr "Le module :mod:`csv` définit les constantes suivantes :" -#: library/csv.rst:286 +#: library/csv.rst:312 msgid "Instructs :class:`writer` objects to quote all fields." msgstr "" "Indique aux objets :class:`writer` de délimiter tous les champs par des " "guillemets." -#: library/csv.rst:291 +#: library/csv.rst:317 msgid "" "Instructs :class:`writer` objects to only quote those fields which contain " "special characters such as *delimiter*, *quotechar* or any of the characters " @@ -408,19 +441,19 @@ msgstr "" "contenant un caractère spécial comme *delimiter*, *quotechar* ou n'importe " "quel caractère de *lineterminator*." -#: library/csv.rst:298 +#: library/csv.rst:324 msgid "Instructs :class:`writer` objects to quote all non-numeric fields." msgstr "" "Indique aux objets :class:`writer` de délimiter ainsi tous les champs non-" "numériques." -#: library/csv.rst:300 +#: library/csv.rst:326 msgid "Instructs the reader to convert all non-quoted fields to type *float*." msgstr "" "Indique au lecteur de convertir tous les champs non délimités par des " "guillemets vers des *float*." -#: library/csv.rst:305 +#: library/csv.rst:331 msgid "" "Instructs :class:`writer` objects to never quote fields. When the current " "*delimiter* occurs in output data it is preceded by the current *escapechar* " @@ -433,7 +466,7 @@ msgstr "" "pas précisé, le transcripteur lèvera une :exc:`Error` si un caractère " "nécessitant un échappement est rencontré." -#: library/csv.rst:310 +#: library/csv.rst:336 msgid "" "Instructs :class:`reader` to perform no special processing of quote " "characters." @@ -441,19 +474,19 @@ msgstr "" "Indique au :class:`reader` de ne pas opérer de traitement spécial sur les " "guillemets." -#: library/csv.rst:312 +#: library/csv.rst:338 msgid "The :mod:`csv` module defines the following exception:" msgstr "Le module :mod:`csv` définit les exceptions suivantes :" -#: library/csv.rst:317 +#: library/csv.rst:343 msgid "Raised by any of the functions when an error is detected." msgstr "Levée par les fonctions du module quand une erreur détectée." -#: library/csv.rst:322 +#: library/csv.rst:348 msgid "Dialects and Formatting Parameters" msgstr "Dialectes et paramètres de formatage" -#: library/csv.rst:324 +#: library/csv.rst:350 msgid "" "To make it easier to specify the format of input and output records, " "specific formatting parameters are grouped together into dialects. A " @@ -475,18 +508,18 @@ msgstr "" "paramètres de formatage individuels, qui ont les mêmes noms que les " "attributs de :class:`Dialect` définis ci-dessous." -#: library/csv.rst:334 +#: library/csv.rst:360 msgid "Dialects support the following attributes:" msgstr "Les dialectes supportent les attributs suivants :" -#: library/csv.rst:339 +#: library/csv.rst:365 msgid "" "A one-character string used to separate fields. It defaults to ``','``." msgstr "" "Une chaîne d'un seul caractère utilisée pour séparer les champs. Elle vaut " "``','`` par défaut." -#: library/csv.rst:344 +#: library/csv.rst:370 msgid "" "Controls how instances of *quotechar* appearing inside a field should " "themselves be quoted. When :const:`True`, the character is doubled. When :" @@ -498,7 +531,7 @@ msgstr "" "doublé. Quand il vaut :const:`False`, le caractère *escapechar* est utilisé " "comme préfixe à *quotechar*. Il vaut :const:`True` par défaut." -#: library/csv.rst:349 +#: library/csv.rst:375 msgid "" "On output, if *doublequote* is :const:`False` and no *escapechar* is set, :" "exc:`Error` is raised if a *quotechar* is found in a field." @@ -507,7 +540,7 @@ msgstr "" "n'est précisé, une :exc:`Error` est levée si un *quotechar* est trouvé dans " "le champ." -#: library/csv.rst:355 +#: library/csv.rst:381 msgid "" "A one-character string used by the writer to escape the *delimiter* if " "*quoting* is set to :const:`QUOTE_NONE` and the *quotechar* if *doublequote* " @@ -521,7 +554,7 @@ msgstr "" "retire toute signification spéciale au caractère qui le suit. Elle vaut par " "défaut :const:`None`, ce qui désactive l'échappement." -#: library/csv.rst:363 +#: library/csv.rst:389 msgid "" "The string used to terminate lines produced by the :class:`writer`. It " "defaults to ``'\\r\\n'``." @@ -529,7 +562,7 @@ msgstr "" "La chaîne utilisée pour terminer les lignes produites par un :class:" "`writer`. Elle vaut par défaut ``'\\r\\n'``." -#: library/csv.rst:368 +#: library/csv.rst:394 msgid "" "The :class:`reader` is hard-coded to recognise either ``'\\r'`` or ``'\\n'`` " "as end-of-line, and ignores *lineterminator*. This behavior may change in " @@ -539,7 +572,7 @@ msgstr "" "``'\\n'`` comme marqueurs de fin de ligne, et ignorer *lineterminator*. Ce " "comportement pourrait changer dans le futur." -#: library/csv.rst:375 +#: library/csv.rst:401 msgid "" "A one-character string used to quote fields containing special characters, " "such as the *delimiter* or *quotechar*, or which contain new-line " @@ -549,7 +582,7 @@ msgstr "" "des caractères spéciaux, comme *delimiter* ou *quotechar*, ou contenant un " "caractère de fin de ligne. Elle vaut ``'\"'`` par défaut." -#: library/csv.rst:382 +#: library/csv.rst:408 msgid "" "Controls when quotes should be generated by the writer and recognised by the " "reader. It can take on any of the :const:`QUOTE_\\*` constants (see " @@ -560,7 +593,7 @@ msgstr "" "const:`QUOTE_\\*` (voir la section :ref:`csv-contents`) et vaut par défaut :" "const:`QUOTE_MINIMAL`." -#: library/csv.rst:389 +#: library/csv.rst:415 msgid "" "When :const:`True`, whitespace immediately following the *delimiter* is " "ignored. The default is :const:`False`." @@ -568,7 +601,7 @@ msgstr "" "Quand il vaut :const:`True`, les espaces suivant directement *delimiter* " "sont ignorés. Il vaut :const:`False` par défaut." -#: library/csv.rst:395 +#: library/csv.rst:421 msgid "" "When ``True``, raise exception :exc:`Error` on bad CSV input. The default is " "``False``." @@ -576,11 +609,11 @@ msgstr "" "Quand il vaut ``True``, une exception :exc:`Error` est levée lors de " "mauvaises entrées CSV. Il vaut ``False`` par défaut." -#: library/csv.rst:399 +#: library/csv.rst:425 msgid "Reader Objects" msgstr "Objets lecteurs" -#: library/csv.rst:401 +#: library/csv.rst:427 msgid "" "Reader objects (:class:`DictReader` instances and objects returned by the :" "func:`reader` function) have the following public methods:" @@ -588,27 +621,28 @@ msgstr "" "Les objets lecteurs (instances de :class:`DictReader` ou objets renvoyés par " "la fonction :func:`reader`) ont les méthodes publiques suivantes :" -#: library/csv.rst:406 +#: library/csv.rst:432 +#, fuzzy msgid "" "Return the next row of the reader's iterable object as a list (if the object " "was returned from :func:`reader`) or a dict (if it is a :class:`DictReader` " -"instance), parsed according to the current dialect. Usually you should call " -"this as ``next(reader)``." +"instance), parsed according to the current :class:`Dialect`. Usually you " +"should call this as ``next(reader)``." msgstr "" "Renvoie la ligne suivante de l'objet itérable du lecteur en tant que liste " "(si l'objet est renvoyé depuis :func:`reader`) ou dictionnaire (si l'objet " "est un :class:`DictReader`), analysé suivant le dialecte courant. " "Généralement, vous devez appeler la méthode à l'aide de ``next(reader)``." -#: library/csv.rst:412 +#: library/csv.rst:438 msgid "Reader objects have the following public attributes:" msgstr "Les objets lecteurs ont les attributs publics suivants :" -#: library/csv.rst:416 +#: library/csv.rst:442 msgid "A read-only description of the dialect in use by the parser." msgstr "Une description en lecture seule du dialecte utilisé par l'analyseur." -#: library/csv.rst:421 +#: library/csv.rst:447 msgid "" "The number of lines read from the source iterator. This is not the same as " "the number of records returned, as records can span multiple lines." @@ -617,11 +651,11 @@ msgstr "" "au nombre d'enregistrements renvoyés, puisque certains enregistrements " "peuvent s'étendre sur plusieurs lignes." -#: library/csv.rst:425 +#: library/csv.rst:451 msgid "DictReader objects have the following public attribute:" msgstr "Les objets *DictReader* ont les attributs publics suivants :" -#: library/csv.rst:429 +#: library/csv.rst:455 msgid "" "If not passed as a parameter when creating the object, this attribute is " "initialized upon first access or when the first record is read from the file." @@ -630,11 +664,11 @@ msgstr "" "est initialisé lors du premier accès ou quand le premier enregistrement est " "lu depuis le fichier." -#: library/csv.rst:436 +#: library/csv.rst:462 msgid "Writer Objects" msgstr "Objets transcripteurs" -#: library/csv.rst:438 +#: library/csv.rst:464 msgid "" ":class:`Writer` objects (:class:`DictWriter` instances and objects returned " "by the :func:`writer` function) have the following public methods. A *row* " @@ -655,21 +689,22 @@ msgstr "" "quelques problèmes pour d'autres programmes qui liraient ces fichiers CSV " "(en supposant qu'ils supportent les nombres complexes)." -#: library/csv.rst:449 +#: library/csv.rst:475 +#, fuzzy msgid "" "Write the *row* parameter to the writer's file object, formatted according " -"to the current dialect. Return the return value of the call to the *write* " -"method of the underlying file object." +"to the current :class:`Dialect`. Return the return value of the call to the " +"*write* method of the underlying file object." msgstr "" "Écrit le paramètre *row* vers le fichier associé au transcripteur, formaté " "selon le dialecte courant. Renvoie la valeur de retour de l'appel à la " "méthode *write* de l'objet fichier sous-jacent." -#: library/csv.rst:453 +#: library/csv.rst:479 msgid "Added support of arbitrary iterables." msgstr "Ajout du support d'itérables arbitraires." -#: library/csv.rst:458 +#: library/csv.rst:484 msgid "" "Write all elements in *rows* (an iterable of *row* objects as described " "above) to the writer's file object, formatted according to the current " @@ -679,20 +714,20 @@ msgstr "" "précédemment) vers le fichier associé au transcripteur, formatés selon le " "dialecte courant." -#: library/csv.rst:462 +#: library/csv.rst:488 msgid "Writer objects have the following public attribute:" msgstr "Les objets transcripteurs ont les attributs publics suivants :" -#: library/csv.rst:467 +#: library/csv.rst:493 msgid "A read-only description of the dialect in use by the writer." msgstr "" "Une description en lecture seule du dialecte utilisé par le transcripteur." -#: library/csv.rst:470 +#: library/csv.rst:496 msgid "DictWriter objects have the following public method:" msgstr "Les objets *DictWriter* ont les attributs publics suivants :" -#: library/csv.rst:475 +#: library/csv.rst:501 msgid "" "Write a row with the field names (as specified in the constructor) to the " "writer's file object, formatted according to the current dialect. Return the " @@ -703,7 +738,7 @@ msgstr "" "le dialecte courant. Renvoie la valeur de retour de l'appel :meth:`csvwriter." "writerow` utilisé en interne." -#: library/csv.rst:480 +#: library/csv.rst:506 msgid "" ":meth:`writeheader` now also returns the value returned by the :meth:" "`csvwriter.writerow` method it uses internally." @@ -711,23 +746,23 @@ msgstr "" ":meth:`writeheader` renvoie maintenant aussi la valeur renvoyée par la " "méthode :meth:`csvwriter.writerow` qu'il utilise en interne." -#: library/csv.rst:488 +#: library/csv.rst:514 msgid "Examples" msgstr "Exemples" -#: library/csv.rst:490 +#: library/csv.rst:516 msgid "The simplest example of reading a CSV file::" msgstr "Le plus simple exemple de lecture d'un fichier CSV ::" -#: library/csv.rst:498 +#: library/csv.rst:524 msgid "Reading a file with an alternate format::" msgstr "Lire un fichier avec un format alternatif ::" -#: library/csv.rst:506 +#: library/csv.rst:532 msgid "The corresponding simplest possible writing example is::" msgstr "Le plus simple exemple d'écriture correspondant est ::" -#: library/csv.rst:513 +#: library/csv.rst:539 msgid "" "Since :func:`open` is used to open a CSV file for reading, the file will by " "default be decoded into unicode using the system default encoding (see :func:" @@ -740,7 +775,7 @@ msgstr "" "utilisant un encodage différent, utilisez l'argument ``encoding`` de " "*open* ::" -#: library/csv.rst:524 +#: library/csv.rst:550 msgid "" "The same applies to writing in something other than the system default " "encoding: specify the encoding argument when opening the output file." @@ -749,11 +784,11 @@ msgstr "" "par défaut du système : spécifiez l'encodage en argument lors de l'ouverture " "du fichier de sortie." -#: library/csv.rst:527 +#: library/csv.rst:553 msgid "Registering a new dialect::" msgstr "Enregistrer un nouveau dialecte ::" -#: library/csv.rst:534 +#: library/csv.rst:560 msgid "" "A slightly more advanced use of the reader --- catching and reporting " "errors::" @@ -761,7 +796,7 @@ msgstr "" "Un exemple d'utilisation un peu plus avancé du lecteur --- attrapant et " "notifiant les erreurs ::" -#: library/csv.rst:546 +#: library/csv.rst:572 msgid "" "And while the module doesn't directly support parsing strings, it can easily " "be done::" @@ -769,11 +804,11 @@ msgstr "" "Et bien que le module ne permette pas d'analyser directement des chaînes, " "cela peut être fait facilement ::" -#: library/csv.rst:555 +#: library/csv.rst:581 msgid "Footnotes" msgstr "Notes" -#: library/csv.rst:556 +#: library/csv.rst:582 msgid "" "If ``newline=''`` is not specified, newlines embedded inside quoted fields " "will not be interpreted correctly, and on platforms that use ``\\r\\n`` " @@ -787,3 +822,12 @@ msgstr "" "comme marqueur de fin de ligne, un ``\\r`` sera ajouté. Vous devriez " "toujours spécifier sans crainte ``newline=''``, puisque le module *csv* gère " "lui-même les fins de lignes (:term:`universelles `)." + +#~ msgid "" +#~ "The :class:`Dialect` class is a container class relied on primarily for " +#~ "its attributes, which are used to define the parameters for a specific :" +#~ "class:`reader` or :class:`writer` instance." +#~ msgstr "" +#~ "La classe :class:`Dialect` est une classe de conteneurs utilisée " +#~ "principalement pour ses attributs, qui servent à définir des paramètres " +#~ "pour des instances spécifiques de :class:`reader` ou :class:`writer`." diff --git a/library/ctypes.po b/library/ctypes.po index 374a34015..211d57bc9 100644 --- a/library/ctypes.po +++ b/library/ctypes.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-08-17 23:01+0200\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -36,10 +36,11 @@ msgid "ctypes tutorial" msgstr "Didacticiel de *ctypes*" #: library/ctypes.rst:21 +#, fuzzy msgid "" "Note: The code samples in this tutorial use :mod:`doctest` to make sure that " "they actually work. Since some code samples behave differently under Linux, " -"Windows, or Mac OS X, they contain doctest directives in comments." +"Windows, or macOS, they contain doctest directives in comments." msgstr "" "Remarque : Les exemples de code de ce didacticiel utilisent :mod:`doctest` " "pour s'assurer de leur propre bon fonctionnement. Vu que certains de ces " @@ -1612,8 +1613,9 @@ msgid "Here are some examples::" msgstr "Voici quelques exemples :" #: library/ctypes.rst:1291 +#, fuzzy msgid "" -"On OS X, :func:`find_library` tries several predefined naming schemes and " +"On macOS, :func:`find_library` tries several predefined naming schemes and " "paths to locate the library, and returns a full pathname if successful::" msgstr "" "Sous OS X, :func:`find_library` regarde dans des chemins et conventions de " diff --git a/library/curses.po b/library/curses.po index bc3605e1f..3b6dc09d9 100644 --- a/library/curses.po +++ b/library/curses.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-07-04 11:32+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -269,40 +269,57 @@ msgid "" "coordinates. (*z* is currently unused.) *bstate* is an integer value whose " "bits will be set to indicate the type of event, and will be the bitwise OR " "of one or more of the following constants, where *n* is the button number " -"from 1 to 4: :const:`BUTTONn_PRESSED`, :const:`BUTTONn_RELEASED`, :const:" +"from 1 to 5: :const:`BUTTONn_PRESSED`, :const:`BUTTONn_RELEASED`, :const:" "`BUTTONn_CLICKED`, :const:`BUTTONn_DOUBLE_CLICKED`, :const:" "`BUTTONn_TRIPLE_CLICKED`, :const:`BUTTON_SHIFT`, :const:`BUTTON_CTRL`, :" "const:`BUTTON_ALT`." msgstr "" -#: library/curses.rst:231 +#: library/curses.rst:228 +msgid "" +"The ``BUTTON5_*`` constants are now exposed if they are provided by the " +"underlying curses library." +msgstr "" + +#: library/curses.rst:235 msgid "" "Return the current coordinates of the virtual screen cursor as a tuple ``(y, " "x)``. If :meth:`leaveok ` is currently ``True``, then " "return ``(-1, -1)``." msgstr "" -#: library/curses.rst:237 +#: library/curses.rst:241 msgid "" "Read window related data stored in the file by an earlier :func:`putwin` " "call. The routine then creates and initializes a new window using that data, " "returning the new window object." msgstr "" -#: library/curses.rst:244 +#: library/curses.rst:248 msgid "" "Return ``True`` if the terminal can display colors; otherwise, return " "``False``." msgstr "" -#: library/curses.rst:249 +#: library/curses.rst:252 +msgid "" +"Return ``True`` if the module supports extended colors; otherwise, return " +"``False``. Extended color support allows more than 256 color pairs for " +"terminals that support more than 16 colors (e.g. xterm-256color)." +msgstr "" + +#: library/curses.rst:256 +msgid "Extended color support requires ncurses version 6.1 or later." +msgstr "" + +#: library/curses.rst:262 msgid "" "Return ``True`` if the terminal has insert- and delete-character " "capabilities. This function is included for historical reasons only, as all " "modern software terminal emulators have such capabilities." msgstr "" -#: library/curses.rst:256 +#: library/curses.rst:269 msgid "" "Return ``True`` if the terminal has insert- and delete-line capabilities, or " "can simulate them using scrolling regions. This function is included for " @@ -310,13 +327,13 @@ msgid "" "capabilities." msgstr "" -#: library/curses.rst:264 +#: library/curses.rst:277 msgid "" "Take a key value *ch*, and return ``True`` if the current terminal type " "recognizes a key with that value." msgstr "" -#: library/curses.rst:270 +#: library/curses.rst:283 msgid "" "Used for half-delay mode, which is similar to cbreak mode in that characters " "typed by the user are immediately available to the program. However, after " @@ -325,7 +342,7 @@ msgid "" "``255``. Use :func:`nocbreak` to leave half-delay mode." msgstr "" -#: library/curses.rst:279 +#: library/curses.rst:292 msgid "" "Change the definition of a color, taking the number of the color to be " "changed followed by three RGB values (for the amounts of red, green, and " @@ -337,7 +354,7 @@ msgid "" "``True``." msgstr "" -#: library/curses.rst:290 +#: library/curses.rst:303 msgid "" "Change the definition of a color-pair. It takes three arguments: the number " "of the color-pair to be changed, the foreground color number, and the " @@ -350,31 +367,31 @@ msgid "" "definition." msgstr "" -#: library/curses.rst:303 +#: library/curses.rst:316 msgid "" "Initialize the library. Return a :ref:`window ` " "object which represents the whole screen." msgstr "" -#: library/curses.rst:308 +#: library/curses.rst:321 msgid "" "If there is an error opening the terminal, the underlying curses library may " "cause the interpreter to exit." msgstr "" -#: library/curses.rst:314 +#: library/curses.rst:327 msgid "" "Return ``True`` if :func:`resize_term` would modify the window structure, " "``False`` otherwise." msgstr "" -#: library/curses.rst:320 +#: library/curses.rst:333 msgid "" "Return ``True`` if :func:`endwin` has been called (that is, the curses " "library has been deinitialized)." msgstr "" -#: library/curses.rst:326 +#: library/curses.rst:339 msgid "" "Return the name of the key numbered *k* as a bytes object. The name of a " "key generating printable ASCII character is the key's character. The name " @@ -385,27 +402,27 @@ msgid "" "character." msgstr "" -#: library/curses.rst:336 +#: library/curses.rst:349 msgid "" "Return the user's current line kill character as a one-byte bytes object. " "Under Unix operating systems this is a property of the controlling tty of " "the curses program, and is not set by the curses library itself." msgstr "" -#: library/curses.rst:343 +#: library/curses.rst:356 msgid "" "Return a bytes object containing the terminfo long name field describing the " "current terminal. The maximum length of a verbose description is 128 " "characters. It is defined only after the call to :func:`initscr`." msgstr "" -#: library/curses.rst:350 +#: library/curses.rst:363 msgid "" "If *flag* is ``True``, allow 8-bit characters to be input. If *flag* is " "``False``, allow only 7-bit chars." msgstr "" -#: library/curses.rst:356 +#: library/curses.rst:369 msgid "" "Set the maximum time in milliseconds that can elapse between press and " "release events in order for them to be recognized as a click, and return the " @@ -413,7 +430,7 @@ msgid "" "second." msgstr "" -#: library/curses.rst:363 +#: library/curses.rst:376 msgid "" "Set the mouse events to be reported, and return a tuple ``(availmask, " "oldmask)``. *availmask* indicates which of the specified mouse events can " @@ -422,17 +439,17 @@ msgid "" "never called, no mouse events are ever reported." msgstr "" -#: library/curses.rst:372 +#: library/curses.rst:385 msgid "Sleep for *ms* milliseconds." msgstr "" -#: library/curses.rst:377 +#: library/curses.rst:390 msgid "" "Create and return a pointer to a new pad data structure with the given " "number of lines and columns. Return a pad as a window object." msgstr "" -#: library/curses.rst:380 +#: library/curses.rst:393 msgid "" "A pad is like a window, except that it is not restricted by the screen size, " "and is not necessarily associated with a particular part of the screen. " @@ -448,35 +465,35 @@ msgid "" "to be displayed." msgstr "" -#: library/curses.rst:396 +#: library/curses.rst:409 msgid "" "Return a new :ref:`window `, whose left-upper corner " "is at ``(begin_y, begin_x)``, and whose height/width is *nlines*/*ncols*." msgstr "" -#: library/curses.rst:399 +#: library/curses.rst:412 msgid "" "By default, the window will extend from the specified position to the lower " "right corner of the screen." msgstr "" -#: library/curses.rst:405 +#: library/curses.rst:418 msgid "" "Enter newline mode. This mode translates the return key into newline on " "input, and translates newline into return and line-feed on output. Newline " "mode is initially on." msgstr "" -#: library/curses.rst:412 +#: library/curses.rst:425 msgid "" "Leave cbreak mode. Return to normal \"cooked\" mode with line buffering." msgstr "" -#: library/curses.rst:417 +#: library/curses.rst:430 msgid "Leave echo mode. Echoing of input characters is turned off." msgstr "" -#: library/curses.rst:422 +#: library/curses.rst:435 msgid "" "Leave newline mode. Disable translation of return into newline on input, " "and disable low-level translation of newline into newline/return on output " @@ -486,7 +503,7 @@ msgid "" "also, it will be able to detect the return key on input." msgstr "" -#: library/curses.rst:432 +#: library/curses.rst:445 msgid "" "When the :func:`!noqiflush` routine is used, normal flush of input and " "output queues associated with the ``INTR``, ``QUIT`` and ``SUSP`` characters " @@ -495,63 +512,63 @@ msgid "" "occurred, after the handler exits." msgstr "" -#: library/curses.rst:440 +#: library/curses.rst:453 msgid "Leave raw mode. Return to normal \"cooked\" mode with line buffering." msgstr "" -#: library/curses.rst:445 +#: library/curses.rst:458 msgid "" "Return a tuple ``(fg, bg)`` containing the colors for the requested color " "pair. The value of *pair_number* must be between ``0`` and ``COLOR_PAIRS - " "1``." msgstr "" -#: library/curses.rst:451 +#: library/curses.rst:464 msgid "" "Return the number of the color-pair set by the attribute value *attr*. :func:" "`color_pair` is the counterpart to this function." msgstr "" -#: library/curses.rst:457 +#: library/curses.rst:470 msgid "" "Equivalent to ``tputs(str, 1, putchar)``; emit the value of a specified " "terminfo capability for the current terminal. Note that the output of :func:" "`putp` always goes to standard output." msgstr "" -#: library/curses.rst:464 +#: library/curses.rst:477 msgid "" "If *flag* is ``False``, the effect is the same as calling :func:`noqiflush`. " "If *flag* is ``True``, or no argument is provided, the queues will be " "flushed when these control characters are read." msgstr "" -#: library/curses.rst:471 +#: library/curses.rst:484 msgid "" "Enter raw mode. In raw mode, normal line buffering and processing of " "interrupt, quit, suspend, and flow control keys are turned off; characters " "are presented to curses input functions one by one." msgstr "" -#: library/curses.rst:478 +#: library/curses.rst:491 msgid "" "Restore the terminal to \"program\" mode, as previously saved by :func:" "`def_prog_mode`." msgstr "" -#: library/curses.rst:484 +#: library/curses.rst:497 msgid "" "Restore the terminal to \"shell\" mode, as previously saved by :func:" "`def_shell_mode`." msgstr "" -#: library/curses.rst:490 +#: library/curses.rst:503 msgid "" "Restore the state of the terminal modes to what it was at the last call to :" "func:`savetty`." msgstr "" -#: library/curses.rst:496 +#: library/curses.rst:509 msgid "" "Backend function used by :func:`resizeterm`, performing most of the work; " "when resizing the windows, :func:`resize_term` blank-fills the areas that " @@ -561,47 +578,47 @@ msgid "" "to resize these without additional interaction with the application." msgstr "" -#: library/curses.rst:506 +#: library/curses.rst:519 msgid "" "Resize the standard and current windows to the specified dimensions, and " "adjusts other bookkeeping data used by the curses library that record the " "window dimensions (in particular the SIGWINCH handler)." msgstr "" -#: library/curses.rst:513 +#: library/curses.rst:526 msgid "" "Save the current state of the terminal modes in a buffer, usable by :func:" "`resetty`." msgstr "" -#: library/curses.rst:518 +#: library/curses.rst:531 msgid "Retrieves the value set by :func:`set_escdelay`." msgstr "" -#: library/curses.rst:524 +#: library/curses.rst:537 msgid "" "Sets the number of milliseconds to wait after reading an escape character, " "to distinguish between an individual escape character entered on the " "keyboard from escape sequences sent by cursor and function keys." msgstr "" -#: library/curses.rst:532 +#: library/curses.rst:545 msgid "Retrieves the value set by :func:`set_tabsize`." msgstr "" -#: library/curses.rst:538 +#: library/curses.rst:551 msgid "" "Sets the number of columns used by the curses library when converting a tab " "character to spaces as it adds the tab to a window." msgstr "" -#: library/curses.rst:545 +#: library/curses.rst:558 msgid "" "Set the virtual screen cursor to *y*, *x*. If *y* and *x* are both ``-1``, " "then :meth:`leaveok ` is set ``True``." msgstr "" -#: library/curses.rst:551 +#: library/curses.rst:564 msgid "" "Initialize the terminal. *term* is a string giving the terminal name, or " "``None``; if omitted or ``None``, the value of the :envvar:`TERM` " @@ -610,14 +627,14 @@ msgid "" "descriptor for ``sys.stdout`` will be used." msgstr "" -#: library/curses.rst:560 +#: library/curses.rst:573 msgid "" "Must be called if the programmer wants to use colors, and before any other " "color manipulation routine is called. It is good practice to call this " "routine right after :func:`initscr`." msgstr "" -#: library/curses.rst:564 +#: library/curses.rst:577 msgid "" ":func:`start_color` initializes eight basic colors (black, red, green, " "yellow, blue, magenta, cyan, and white), and two global variables in the :" @@ -627,20 +644,20 @@ msgid "" "terminal was just turned on." msgstr "" -#: library/curses.rst:573 +#: library/curses.rst:586 msgid "" "Return a logical OR of all video attributes supported by the terminal. This " "information is useful when a curses program needs complete control over the " "appearance of the screen." msgstr "" -#: library/curses.rst:580 +#: library/curses.rst:593 msgid "" "Return the value of the environment variable :envvar:`TERM`, as a bytes " "object, truncated to 14 characters." msgstr "" -#: library/curses.rst:586 +#: library/curses.rst:599 msgid "" "Return the value of the Boolean capability corresponding to the terminfo " "capability name *capname* as an integer. Return the value ``-1`` if " @@ -648,7 +665,7 @@ msgid "" "from the terminal description." msgstr "" -#: library/curses.rst:594 +#: library/curses.rst:607 msgid "" "Return the value of the numeric capability corresponding to the terminfo " "capability name *capname* as an integer. Return the value ``-2`` if " @@ -656,7 +673,7 @@ msgid "" "from the terminal description." msgstr "" -#: library/curses.rst:602 +#: library/curses.rst:615 msgid "" "Return the value of the string capability corresponding to the terminfo " "capability name *capname* as a bytes object. Return ``None`` if *capname* " @@ -664,7 +681,7 @@ msgid "" "terminal description." msgstr "" -#: library/curses.rst:610 +#: library/curses.rst:623 msgid "" "Instantiate the bytes object *str* with the supplied parameters, where *str* " "should be a parameterized string obtained from the terminfo database. E.g. " @@ -672,13 +689,13 @@ msgid "" "exact result depending on terminal type." msgstr "" -#: library/curses.rst:618 +#: library/curses.rst:631 msgid "" "Specify that the file descriptor *fd* be used for typeahead checking. If " "*fd* is ``-1``, then no typeahead checking is done." msgstr "" -#: library/curses.rst:621 +#: library/curses.rst:634 msgid "" "The curses library does \"line-breakout optimization\" by looking for " "typeahead periodically while updating the screen. If input is found, and it " @@ -688,7 +705,7 @@ msgid "" "typeahead checking." msgstr "" -#: library/curses.rst:630 +#: library/curses.rst:643 msgid "" "Return a bytes object which is a printable representation of the character " "*ch*. Control characters are represented as a caret followed by the " @@ -696,35 +713,35 @@ msgid "" "are." msgstr "" -#: library/curses.rst:637 +#: library/curses.rst:650 msgid "Push *ch* so the next :meth:`~window.getch` will return it." msgstr "" -#: library/curses.rst:641 +#: library/curses.rst:654 msgid "Only one *ch* can be pushed before :meth:`!getch` is called." msgstr "" -#: library/curses.rst:646 +#: library/curses.rst:659 msgid "" "Update :envvar:`LINES` and :envvar:`COLS`. Useful for detecting manual " "screen resize." msgstr "" -#: library/curses.rst:653 +#: library/curses.rst:666 msgid "Push *ch* so the next :meth:`~window.get_wch` will return it." msgstr "" -#: library/curses.rst:657 +#: library/curses.rst:670 msgid "Only one *ch* can be pushed before :meth:`!get_wch` is called." msgstr "" -#: library/curses.rst:664 +#: library/curses.rst:677 msgid "" "Push a :const:`KEY_MOUSE` event onto the input queue, associating the given " "state data with it." msgstr "" -#: library/curses.rst:670 +#: library/curses.rst:683 msgid "" "If used, this function should be called before :func:`initscr` or newterm " "are called. When *flag* is ``False``, the values of lines and columns " @@ -734,7 +751,7 @@ msgid "" "to use the window size if :envvar:`LINES` and :envvar:`COLUMNS` are not set)." msgstr "" -#: library/curses.rst:680 +#: library/curses.rst:693 msgid "" "Allow use of default values for colors on terminals supporting this feature. " "Use this to support transparency in your application. The default color is " @@ -743,7 +760,7 @@ msgid "" "*x* to a red foreground color on the default background." msgstr "" -#: library/curses.rst:689 +#: library/curses.rst:702 msgid "" "Initialize curses and call another callable object, *func*, which should be " "the rest of your curses-using application. If the application raises an " @@ -757,50 +774,50 @@ msgid "" "echo, and disables the terminal keypad." msgstr "" -#: library/curses.rst:703 +#: library/curses.rst:716 msgid "Window Objects" msgstr "" -#: library/curses.rst:705 +#: library/curses.rst:718 msgid "" "Window objects, as returned by :func:`initscr` and :func:`newwin` above, " "have the following methods and attributes:" msgstr "" -#: library/curses.rst:712 +#: library/curses.rst:725 msgid "" "Paint character *ch* at ``(y, x)`` with attributes *attr*, overwriting any " "character previously painted at that location. By default, the character " "position and attributes are the current settings for the window object." msgstr "" -#: library/curses.rst:718 +#: library/curses.rst:731 msgid "" "Writing outside the window, subwindow, or pad raises a :exc:`curses.error`. " "Attempting to write to the lower right corner of a window, subwindow, or pad " "will cause an exception to be raised after the character is printed." msgstr "" -#: library/curses.rst:726 +#: library/curses.rst:739 msgid "" "Paint at most *n* characters of the character string *str* at ``(y, x)`` " "with attributes *attr*, overwriting anything previously on the display." msgstr "" -#: library/curses.rst:734 +#: library/curses.rst:747 msgid "" "Paint the character string *str* at ``(y, x)`` with attributes *attr*, " "overwriting anything previously on the display." msgstr "" -#: library/curses.rst:739 +#: library/curses.rst:752 msgid "" "Writing outside the window, subwindow, or pad raises :exc:`curses.error`. " "Attempting to write to the lower right corner of a window, subwindow, or pad " "will cause an exception to be raised after the string is printed." msgstr "" -#: library/curses.rst:743 +#: library/curses.rst:756 msgid "" "A `bug in ncurses `_, the backend for " "this Python module, can cause SegFaults when resizing windows. This is fixed " @@ -810,44 +827,44 @@ msgid "" "line." msgstr "" -#: library/curses.rst:753 +#: library/curses.rst:766 msgid "" "Remove attribute *attr* from the \"background\" set applied to all writes to " "the current window." msgstr "" -#: library/curses.rst:759 +#: library/curses.rst:772 msgid "" "Add attribute *attr* from the \"background\" set applied to all writes to " "the current window." msgstr "" -#: library/curses.rst:765 +#: library/curses.rst:778 msgid "" "Set the \"background\" set of attributes to *attr*. This set is initially " "``0`` (no attributes)." msgstr "" -#: library/curses.rst:771 +#: library/curses.rst:784 msgid "" "Set the background property of the window to the character *ch*, with " "attributes *attr*. The change is then applied to every character position " "in that window:" msgstr "" -#: library/curses.rst:775 +#: library/curses.rst:788 msgid "" "The attribute of every character in the window is changed to the new " "background attribute." msgstr "" -#: library/curses.rst:778 +#: library/curses.rst:791 msgid "" "Wherever the former background character appears, it is changed to the new " "background character." msgstr "" -#: library/curses.rst:784 +#: library/curses.rst:797 msgid "" "Set the window's background. A window's background consists of a character " "and any combination of attributes. The attribute part of the background is " @@ -858,128 +875,128 @@ msgid "" "delete line/character operations." msgstr "" -#: library/curses.rst:794 +#: library/curses.rst:807 msgid "" "Draw a border around the edges of the window. Each parameter specifies the " "character to use for a specific part of the border; see the table below for " "more details." msgstr "" -#: library/curses.rst:800 +#: library/curses.rst:813 msgid "" "A ``0`` value for any parameter will cause the default character to be used " "for that parameter. Keyword parameters can *not* be used. The defaults are " "listed in this table:" msgstr "" -#: library/curses.rst:805 +#: library/curses.rst:818 msgid "Parameter" msgstr "Paramètre" -#: library/curses.rst:805 +#: library/curses.rst:818 msgid "Description" msgstr "Description" -#: library/curses.rst:805 +#: library/curses.rst:818 msgid "Default value" msgstr "Valeur par défaut" -#: library/curses.rst:807 +#: library/curses.rst:820 msgid "*ls*" msgstr "*ls*" -#: library/curses.rst:807 +#: library/curses.rst:820 msgid "Left side" msgstr "" -#: library/curses.rst:809 +#: library/curses.rst:822 msgid ":const:`ACS_VLINE`" msgstr ":const:`ACS_VLINE`" -#: library/curses.rst:809 +#: library/curses.rst:822 msgid "*rs*" msgstr "*rs*" -#: library/curses.rst:809 +#: library/curses.rst:822 msgid "Right side" msgstr "" -#: library/curses.rst:811 +#: library/curses.rst:824 msgid "*ts*" msgstr "*ts*" -#: library/curses.rst:811 +#: library/curses.rst:824 msgid "Top" msgstr "" -#: library/curses.rst:813 +#: library/curses.rst:826 msgid ":const:`ACS_HLINE`" msgstr ":const:`ACS_HLINE`" -#: library/curses.rst:813 +#: library/curses.rst:826 msgid "*bs*" msgstr "*bs*" -#: library/curses.rst:813 +#: library/curses.rst:826 msgid "Bottom" msgstr "" -#: library/curses.rst:815 +#: library/curses.rst:828 msgid "*tl*" msgstr "*tl*" -#: library/curses.rst:815 +#: library/curses.rst:828 msgid "Upper-left corner" msgstr "" -#: library/curses.rst:815 +#: library/curses.rst:828 msgid ":const:`ACS_ULCORNER`" msgstr ":const:`ACS_ULCORNER`" -#: library/curses.rst:817 +#: library/curses.rst:830 msgid "*tr*" msgstr "" -#: library/curses.rst:817 +#: library/curses.rst:830 msgid "Upper-right corner" msgstr "" -#: library/curses.rst:817 +#: library/curses.rst:830 msgid ":const:`ACS_URCORNER`" msgstr ":const:`ACS_URCORNER`" -#: library/curses.rst:819 +#: library/curses.rst:832 msgid "*bl*" msgstr "" -#: library/curses.rst:819 +#: library/curses.rst:832 msgid "Bottom-left corner" msgstr "" -#: library/curses.rst:819 +#: library/curses.rst:832 msgid ":const:`ACS_LLCORNER`" msgstr ":const:`ACS_LLCORNER`" -#: library/curses.rst:821 +#: library/curses.rst:834 msgid "*br*" msgstr "" -#: library/curses.rst:821 +#: library/curses.rst:834 msgid "Bottom-right corner" msgstr "" -#: library/curses.rst:821 +#: library/curses.rst:834 msgid ":const:`ACS_LRCORNER`" msgstr ":const:`ACS_LRCORNER`" -#: library/curses.rst:827 +#: library/curses.rst:840 msgid "" "Similar to :meth:`border`, but both *ls* and *rs* are *vertch* and both *ts* " "and *bs* are *horch*. The default corner characters are always used by this " "function." msgstr "" -#: library/curses.rst:836 +#: library/curses.rst:849 msgid "" "Set the attributes of *num* characters at the current cursor position, or at " "position ``(y, x)`` if supplied. If *num* is not given or is ``-1``, the " @@ -989,45 +1006,45 @@ msgid "" "be redisplayed by the next window refresh." msgstr "" -#: library/curses.rst:846 +#: library/curses.rst:859 msgid "" "Like :meth:`erase`, but also cause the whole window to be repainted upon " "next call to :meth:`refresh`." msgstr "" -#: library/curses.rst:852 +#: library/curses.rst:865 msgid "" "If *flag* is ``True``, the next call to :meth:`refresh` will clear the " "window completely." msgstr "" -#: library/curses.rst:858 +#: library/curses.rst:871 msgid "" "Erase from cursor to the end of the window: all lines below the cursor are " "deleted, and then the equivalent of :meth:`clrtoeol` is performed." msgstr "" -#: library/curses.rst:864 +#: library/curses.rst:877 msgid "Erase from cursor to the end of the line." msgstr "" -#: library/curses.rst:869 +#: library/curses.rst:882 msgid "" "Update the current cursor position of all the ancestors of the window to " "reflect the current cursor position of the window." msgstr "" -#: library/curses.rst:875 +#: library/curses.rst:888 msgid "Delete any character at ``(y, x)``." msgstr "" -#: library/curses.rst:880 +#: library/curses.rst:893 msgid "" "Delete the line under the cursor. All following lines are moved up by one " "line." msgstr "" -#: library/curses.rst:886 +#: library/curses.rst:899 msgid "" "An abbreviation for \"derive window\", :meth:`derwin` is the same as " "calling :meth:`subwin`, except that *begin_y* and *begin_x* are relative to " @@ -1035,13 +1052,13 @@ msgid "" "a window object for the derived window." msgstr "" -#: library/curses.rst:894 +#: library/curses.rst:907 msgid "" "Add character *ch* with attribute *attr*, and immediately call :meth:" "`refresh` on the window." msgstr "" -#: library/curses.rst:900 +#: library/curses.rst:913 msgid "" "Test whether the given pair of screen-relative character-cell coordinates " "are enclosed by the given window, returning ``True`` or ``False``. It is " @@ -1049,7 +1066,11 @@ msgid "" "location of a mouse event." msgstr "" -#: library/curses.rst:908 +#: library/curses.rst:918 +msgid "Previously it returned ``1`` or ``0`` instead of ``True`` or ``False``." +msgstr "" + +#: library/curses.rst:924 msgid "" "Encoding used to encode method arguments (Unicode strings and characters). " "The encoding attribute is inherited from the parent window when a subwindow " @@ -1057,19 +1078,19 @@ msgid "" "encoding is used (see :func:`locale.getpreferredencoding`)." msgstr "" -#: library/curses.rst:918 +#: library/curses.rst:934 msgid "Clear the window." msgstr "" -#: library/curses.rst:923 +#: library/curses.rst:939 msgid "Return a tuple ``(y, x)`` of co-ordinates of upper-left corner." msgstr "" -#: library/curses.rst:928 +#: library/curses.rst:944 msgid "Return the given window's current background character/attribute pair." msgstr "" -#: library/curses.rst:933 +#: library/curses.rst:949 msgid "" "Get a character. Note that the integer returned does *not* have to be in " "ASCII range: function keys, keypad keys and so on are represented by numbers " @@ -1077,14 +1098,14 @@ msgid "" "otherwise wait until a key is pressed." msgstr "" -#: library/curses.rst:941 +#: library/curses.rst:957 msgid "" "Get a wide character. Return a character for most keys, or an integer for " "function keys, keypad keys, and other special keys. In no-delay mode, raise " "an exception if there is no input." msgstr "" -#: library/curses.rst:950 +#: library/curses.rst:966 msgid "" "Get a character, returning a string instead of an integer, as :meth:`getch` " "does. Function keys, keypad keys and other special keys return a multibyte " @@ -1092,35 +1113,35 @@ msgid "" "there is no input." msgstr "" -#: library/curses.rst:958 +#: library/curses.rst:974 msgid "Return a tuple ``(y, x)`` of the height and width of the window." msgstr "" -#: library/curses.rst:963 +#: library/curses.rst:979 msgid "" "Return the beginning coordinates of this window relative to its parent " "window as a tuple ``(y, x)``. Return ``(-1, -1)`` if this window has no " "parent." msgstr "" -#: library/curses.rst:973 +#: library/curses.rst:989 msgid "" "Read a bytes object from the user, with primitive line editing capacity." msgstr "" -#: library/curses.rst:978 +#: library/curses.rst:994 msgid "" "Return a tuple ``(y, x)`` of current cursor position relative to the " "window's upper-left corner." msgstr "" -#: library/curses.rst:985 +#: library/curses.rst:1001 msgid "" "Display a horizontal line starting at ``(y, x)`` with length *n* consisting " "of the character *ch*." msgstr "" -#: library/curses.rst:991 +#: library/curses.rst:1007 msgid "" "If *flag* is ``False``, curses no longer considers using the hardware insert/" "delete character feature of the terminal; if *flag* is ``True``, use of " @@ -1128,13 +1149,13 @@ msgid "" "initialized, use of character insert/delete is enabled by default." msgstr "" -#: library/curses.rst:999 +#: library/curses.rst:1015 msgid "" "If *flag* is ``True``, :mod:`curses` will try and use hardware line editing " "facilities. Otherwise, line insertion/deletion are disabled." msgstr "" -#: library/curses.rst:1005 +#: library/curses.rst:1021 msgid "" "If *flag* is ``True``, any change in the window image automatically causes " "the window to be refreshed; you no longer have to call :meth:`refresh` " @@ -1142,19 +1163,19 @@ msgid "" "calls to wrefresh. This option is disabled by default." msgstr "" -#: library/curses.rst:1013 +#: library/curses.rst:1029 msgid "" "Return the character at the given position in the window. The bottom 8 bits " "are the character proper, and upper bits are the attributes." msgstr "" -#: library/curses.rst:1020 +#: library/curses.rst:1036 msgid "" "Paint character *ch* at ``(y, x)`` with attributes *attr*, moving the line " "from position *x* right by one character." msgstr "" -#: library/curses.rst:1026 +#: library/curses.rst:1042 msgid "" "Insert *nlines* lines into the specified window above the current line. The " "*nlines* bottom lines are lost. For negative *nlines*, delete *nlines* " @@ -1163,13 +1184,13 @@ msgid "" "remains the same." msgstr "" -#: library/curses.rst:1035 +#: library/curses.rst:1051 msgid "" "Insert a blank line under the cursor. All following lines are moved down by " "one line." msgstr "" -#: library/curses.rst:1042 +#: library/curses.rst:1058 msgid "" "Insert a character string (as many characters as will fit on the line) " "before the character under the cursor, up to *n* characters. If *n* is " @@ -1179,7 +1200,7 @@ msgid "" "if specified)." msgstr "" -#: library/curses.rst:1052 +#: library/curses.rst:1068 msgid "" "Insert a character string (as many characters as will fit on the line) " "before the character under the cursor. All characters to the right of the " @@ -1188,7 +1209,7 @@ msgid "" "specified)." msgstr "" -#: library/curses.rst:1061 +#: library/curses.rst:1077 msgid "" "Return a bytes object of characters, extracted from the window starting at " "the current cursor position, or at *y*, *x* if specified. Attributes are " @@ -1196,76 +1217,76 @@ msgid "" "string at most *n* characters long (exclusive of the trailing NUL)." msgstr "" -#: library/curses.rst:1069 +#: library/curses.rst:1085 msgid "" "Return ``True`` if the specified line was modified since the last call to :" "meth:`refresh`; otherwise return ``False``. Raise a :exc:`curses.error` " "exception if *line* is not valid for the given window." msgstr "" -#: library/curses.rst:1076 +#: library/curses.rst:1092 msgid "" "Return ``True`` if the specified window was modified since the last call to :" "meth:`refresh`; otherwise return ``False``." msgstr "" -#: library/curses.rst:1082 +#: library/curses.rst:1098 msgid "" "If *flag* is ``True``, escape sequences generated by some keys (keypad, " "function keys) will be interpreted by :mod:`curses`. If *flag* is ``False``, " "escape sequences will be left as is in the input stream." msgstr "" -#: library/curses.rst:1089 +#: library/curses.rst:1105 msgid "" "If *flag* is ``True``, cursor is left where it is on update, instead of " "being at \"cursor position.\" This reduces cursor movement where possible. " "If possible the cursor will be made invisible." msgstr "" -#: library/curses.rst:1093 +#: library/curses.rst:1109 msgid "" "If *flag* is ``False``, cursor will always be at \"cursor position\" after " "an update." msgstr "" -#: library/curses.rst:1098 +#: library/curses.rst:1114 msgid "Move cursor to ``(new_y, new_x)``." msgstr "" -#: library/curses.rst:1103 +#: library/curses.rst:1119 msgid "" "Move the window inside its parent window. The screen-relative parameters of " "the window are not changed. This routine is used to display different parts " "of the parent window at the same physical position on the screen." msgstr "" -#: library/curses.rst:1110 +#: library/curses.rst:1126 msgid "Move the window so its upper-left corner is at ``(new_y, new_x)``." msgstr "" -#: library/curses.rst:1115 +#: library/curses.rst:1131 msgid "If *flag* is ``True``, :meth:`getch` will be non-blocking." msgstr "" -#: library/curses.rst:1120 +#: library/curses.rst:1136 msgid "If *flag* is ``True``, escape sequences will not be timed out." msgstr "" -#: library/curses.rst:1122 +#: library/curses.rst:1138 msgid "" "If *flag* is ``False``, after a few milliseconds, an escape sequence will " "not be interpreted, and will be left in the input stream as is." msgstr "" -#: library/curses.rst:1128 +#: library/curses.rst:1144 msgid "" "Mark for refresh but wait. This function updates the data structure " "representing the desired state of the window, but does not force an update " "of the physical screen. To accomplish that, call :func:`doupdate`." msgstr "" -#: library/curses.rst:1135 +#: library/curses.rst:1151 msgid "" "Overlay the window on top of *destwin*. The windows need not be the same " "size, only the overlapping region is copied. This copy is non-destructive, " @@ -1273,7 +1294,7 @@ msgid "" "contents of *destwin*." msgstr "" -#: library/curses.rst:1140 +#: library/curses.rst:1156 msgid "" "To get fine-grained control over the copied region, the second form of :meth:" "`overlay` can be used. *sminrow* and *smincol* are the upper-left " @@ -1281,7 +1302,7 @@ msgid "" "in the destination window." msgstr "" -#: library/curses.rst:1148 +#: library/curses.rst:1164 msgid "" "Overwrite the window on top of *destwin*. The windows need not be the same " "size, in which case only the overlapping region is copied. This copy is " @@ -1289,7 +1310,7 @@ msgid "" "the old contents of *destwin*." msgstr "" -#: library/curses.rst:1153 +#: library/curses.rst:1169 msgid "" "To get fine-grained control over the copied region, the second form of :meth:" "`overwrite` can be used. *sminrow* and *smincol* are the upper-left " @@ -1297,31 +1318,31 @@ msgid "" "the destination window." msgstr "" -#: library/curses.rst:1161 +#: library/curses.rst:1177 msgid "" "Write all data associated with the window into the provided file object. " "This information can be later retrieved using the :func:`getwin` function." msgstr "" -#: library/curses.rst:1167 +#: library/curses.rst:1183 msgid "" "Indicate that the *num* screen lines, starting at line *beg*, are corrupted " "and should be completely redrawn on the next :meth:`refresh` call." msgstr "" -#: library/curses.rst:1173 +#: library/curses.rst:1189 msgid "" "Touch the entire window, causing it to be completely redrawn on the next :" "meth:`refresh` call." msgstr "" -#: library/curses.rst:1179 +#: library/curses.rst:1195 msgid "" "Update the display immediately (sync actual screen with previous drawing/" "deleting methods)." msgstr "" -#: library/curses.rst:1182 +#: library/curses.rst:1198 msgid "" "The 6 optional arguments can only be specified when the window is a pad " "created with :func:`newpad`. The additional parameters are needed to " @@ -1336,7 +1357,7 @@ msgid "" "*smincol* are treated as if they were zero." msgstr "" -#: library/curses.rst:1196 +#: library/curses.rst:1212 msgid "" "Reallocate storage for a curses window to adjust its dimensions to the " "specified values. If either dimension is larger than the current values, " @@ -1344,11 +1365,11 @@ msgid "" "rendition (as set by :meth:`bkgdset`) merged into them." msgstr "" -#: library/curses.rst:1204 +#: library/curses.rst:1220 msgid "Scroll the screen or scrolling region upward by *lines* lines." msgstr "" -#: library/curses.rst:1209 +#: library/curses.rst:1225 msgid "" "Control what happens when the cursor of a window is moved off the edge of " "the window or scrolling region, either as a result of a newline action on " @@ -1358,54 +1379,54 @@ msgid "" "scrolling effect on the terminal, it is also necessary to call :meth:`idlok`." msgstr "" -#: library/curses.rst:1219 +#: library/curses.rst:1235 msgid "" "Set the scrolling region from line *top* to line *bottom*. All scrolling " "actions will take place in this region." msgstr "" -#: library/curses.rst:1225 +#: library/curses.rst:1241 msgid "" "Turn off the standout attribute. On some terminals this has the side effect " "of turning off all attributes." msgstr "" -#: library/curses.rst:1231 +#: library/curses.rst:1247 msgid "Turn on attribute *A_STANDOUT*." msgstr "" -#: library/curses.rst:1244 +#: library/curses.rst:1260 msgid "" "Return a sub-window, whose upper-left corner is at ``(begin_y, begin_x)``, " "and whose width/height is *ncols*/*nlines*." msgstr "" -#: library/curses.rst:1247 +#: library/curses.rst:1263 msgid "" "By default, the sub-window will extend from the specified position to the " "lower right corner of the window." msgstr "" -#: library/curses.rst:1253 +#: library/curses.rst:1269 msgid "" "Touch each location in the window that has been touched in any of its " "ancestor windows. This routine is called by :meth:`refresh`, so it should " "almost never be necessary to call it manually." msgstr "" -#: library/curses.rst:1260 +#: library/curses.rst:1276 msgid "" "If *flag* is ``True``, then :meth:`syncup` is called automatically whenever " "there is a change in the window." msgstr "" -#: library/curses.rst:1266 +#: library/curses.rst:1282 msgid "" "Touch all locations in ancestors of the window that have been changed in " "the window." msgstr "" -#: library/curses.rst:1272 +#: library/curses.rst:1288 msgid "" "Set blocking or non-blocking read behavior for the window. If *delay* is " "negative, blocking read is used (which will wait indefinitely for input). " @@ -1415,7 +1436,7 @@ msgid "" "still no input at the end of that time." msgstr "" -#: library/curses.rst:1282 +#: library/curses.rst:1298 msgid "" "Pretend *count* lines have been changed, starting with line *start*. If " "*changed* is supplied, it specifies whether the affected lines are marked as " @@ -1423,51 +1444,51 @@ msgid "" "``=False``)." msgstr "" -#: library/curses.rst:1289 +#: library/curses.rst:1305 msgid "" "Pretend the whole window has been changed, for purposes of drawing " "optimizations." msgstr "" -#: library/curses.rst:1295 +#: library/curses.rst:1311 msgid "" "Mark all lines in the window as unchanged since the last call to :meth:" "`refresh`." msgstr "" -#: library/curses.rst:1302 +#: library/curses.rst:1318 msgid "" "Display a vertical line starting at ``(y, x)`` with length *n* consisting of " "the character *ch*." msgstr "" -#: library/curses.rst:1307 +#: library/curses.rst:1323 msgid "Constants" msgstr "Constantes" -#: library/curses.rst:1309 +#: library/curses.rst:1325 msgid "The :mod:`curses` module defines the following data members:" msgstr "" -#: library/curses.rst:1314 +#: library/curses.rst:1330 msgid "" "Some curses routines that return an integer, such as :meth:`~window." "getch`, return :const:`ERR` upon failure." msgstr "" -#: library/curses.rst:1320 +#: library/curses.rst:1336 msgid "" "Some curses routines that return an integer, such as :func:`napms`, " "return :const:`OK` upon success." msgstr "" -#: library/curses.rst:1326 +#: library/curses.rst:1342 msgid "" "A bytes object representing the current version of the module. Also " "available as :const:`__version__`." msgstr "" -#: library/curses.rst:1332 +#: library/curses.rst:1348 msgid "" "A named tuple containing the three components of the ncurses library " "version: *major*, *minor*, and *patch*. All values are integers. The " @@ -1475,965 +1496,965 @@ msgid "" "is equivalent to ``curses.ncurses_version.major`` and so on." msgstr "" -#: library/curses.rst:1337 +#: library/curses.rst:1353 msgid "Availability: if the ncurses library is used." msgstr "" -#: library/curses.rst:1342 +#: library/curses.rst:1358 msgid "" "Some constants are available to specify character cell attributes. The exact " "constants available are system dependent." msgstr "" -#: library/curses.rst:1346 +#: library/curses.rst:1362 msgid "Attribute" msgstr "Attribut" -#: library/curses.rst:1394 library/curses.rst:1638 +#: library/curses.rst:1410 library/curses.rst:1654 msgid "Meaning" msgstr "Signification" -#: library/curses.rst:1348 +#: library/curses.rst:1364 msgid "``A_ALTCHARSET``" msgstr "``A_ALTCHARSET``" -#: library/curses.rst:1348 +#: library/curses.rst:1364 msgid "Alternate character set mode" msgstr "" -#: library/curses.rst:1350 +#: library/curses.rst:1366 msgid "``A_BLINK``" msgstr "``A_BLINK``" -#: library/curses.rst:1350 +#: library/curses.rst:1366 msgid "Blink mode" msgstr "" -#: library/curses.rst:1352 +#: library/curses.rst:1368 msgid "``A_BOLD``" msgstr "``A_BOLD``" -#: library/curses.rst:1352 +#: library/curses.rst:1368 msgid "Bold mode" msgstr "" -#: library/curses.rst:1354 +#: library/curses.rst:1370 msgid "``A_DIM``" msgstr "``A_DIM``" -#: library/curses.rst:1354 +#: library/curses.rst:1370 msgid "Dim mode" msgstr "" -#: library/curses.rst:1356 +#: library/curses.rst:1372 msgid "``A_INVIS``" msgstr "``A_INVIS``" -#: library/curses.rst:1356 +#: library/curses.rst:1372 msgid "Invisible or blank mode" msgstr "" -#: library/curses.rst:1358 +#: library/curses.rst:1374 msgid "``A_ITALIC``" msgstr "``A_ITALIC``" -#: library/curses.rst:1358 +#: library/curses.rst:1374 msgid "Italic mode" msgstr "" -#: library/curses.rst:1360 +#: library/curses.rst:1376 msgid "``A_NORMAL``" msgstr "``A_NORMAL``" -#: library/curses.rst:1360 +#: library/curses.rst:1376 msgid "Normal attribute" msgstr "Attribut normal" -#: library/curses.rst:1362 +#: library/curses.rst:1378 msgid "``A_PROTECT``" msgstr "``A_PROTECT``" -#: library/curses.rst:1362 +#: library/curses.rst:1378 msgid "Protected mode" msgstr "" -#: library/curses.rst:1364 +#: library/curses.rst:1380 msgid "``A_REVERSE``" msgstr "``A_REVERSE``" -#: library/curses.rst:1364 +#: library/curses.rst:1380 msgid "Reverse background and foreground colors" msgstr "" -#: library/curses.rst:1367 +#: library/curses.rst:1383 msgid "``A_STANDOUT``" msgstr "``A_STANDOUT``" -#: library/curses.rst:1367 +#: library/curses.rst:1383 msgid "Standout mode" msgstr "" -#: library/curses.rst:1369 +#: library/curses.rst:1385 msgid "``A_UNDERLINE``" msgstr "``A_UNDERLINE``" -#: library/curses.rst:1369 +#: library/curses.rst:1385 msgid "Underline mode" msgstr "" -#: library/curses.rst:1371 +#: library/curses.rst:1387 msgid "``A_HORIZONTAL``" msgstr "``A_HORIZONTAL``" -#: library/curses.rst:1371 +#: library/curses.rst:1387 msgid "Horizontal highlight" msgstr "" -#: library/curses.rst:1373 +#: library/curses.rst:1389 msgid "``A_LEFT``" msgstr "``A_LEFT``" -#: library/curses.rst:1373 +#: library/curses.rst:1389 msgid "Left highlight" msgstr "" -#: library/curses.rst:1375 +#: library/curses.rst:1391 msgid "``A_LOW``" msgstr "``A_LOW``" -#: library/curses.rst:1375 +#: library/curses.rst:1391 msgid "Low highlight" msgstr "" -#: library/curses.rst:1377 +#: library/curses.rst:1393 msgid "``A_RIGHT``" msgstr "``A_RIGHT``" -#: library/curses.rst:1377 +#: library/curses.rst:1393 msgid "Right highlight" msgstr "" -#: library/curses.rst:1379 +#: library/curses.rst:1395 msgid "``A_TOP``" msgstr "``A_TOP``" -#: library/curses.rst:1379 +#: library/curses.rst:1395 msgid "Top highlight" msgstr "" -#: library/curses.rst:1381 +#: library/curses.rst:1397 msgid "``A_VERTICAL``" msgstr "``A_VERTICAL``" -#: library/curses.rst:1381 +#: library/curses.rst:1397 msgid "Vertical highlight" msgstr "" -#: library/curses.rst:1399 +#: library/curses.rst:1415 msgid "``A_CHARTEXT``" msgstr "``A_CHARTEXT``" -#: library/curses.rst:1399 +#: library/curses.rst:1415 msgid "Bit-mask to extract a character" msgstr "" -#: library/curses.rst:1387 +#: library/curses.rst:1403 msgid "``A_ITALIC`` was added." msgstr "" -#: library/curses.rst:1390 +#: library/curses.rst:1406 msgid "" "Several constants are available to extract corresponding attributes returned " "by some methods." msgstr "" -#: library/curses.rst:1394 +#: library/curses.rst:1410 msgid "Bit-mask" msgstr "" -#: library/curses.rst:1396 +#: library/curses.rst:1412 msgid "``A_ATTRIBUTES``" msgstr "``A_ATTRIBUTES``" -#: library/curses.rst:1396 +#: library/curses.rst:1412 msgid "Bit-mask to extract attributes" msgstr "" -#: library/curses.rst:1402 +#: library/curses.rst:1418 msgid "``A_COLOR``" msgstr "``A_COLOR``" -#: library/curses.rst:1402 +#: library/curses.rst:1418 msgid "Bit-mask to extract color-pair field information" msgstr "" -#: library/curses.rst:1406 +#: library/curses.rst:1422 msgid "" "Keys are referred to by integer constants with names starting with " "``KEY_``. The exact keycaps available are system dependent." msgstr "" -#: library/curses.rst:1412 +#: library/curses.rst:1428 msgid "Key constant" msgstr "" -#: library/curses.rst:1412 +#: library/curses.rst:1428 msgid "Key" msgstr "Clé" -#: library/curses.rst:1414 +#: library/curses.rst:1430 msgid "``KEY_MIN``" msgstr "``KEY_MIN``" -#: library/curses.rst:1414 +#: library/curses.rst:1430 msgid "Minimum key value" msgstr "" -#: library/curses.rst:1416 +#: library/curses.rst:1432 msgid "``KEY_BREAK``" msgstr "``KEY_BREAK``" -#: library/curses.rst:1416 +#: library/curses.rst:1432 msgid "Break key (unreliable)" msgstr "" -#: library/curses.rst:1418 +#: library/curses.rst:1434 msgid "``KEY_DOWN``" msgstr "``KEY_DOWN``" -#: library/curses.rst:1418 +#: library/curses.rst:1434 msgid "Down-arrow" msgstr "" -#: library/curses.rst:1420 +#: library/curses.rst:1436 msgid "``KEY_UP``" msgstr "``KEY_UP``" -#: library/curses.rst:1420 +#: library/curses.rst:1436 msgid "Up-arrow" msgstr "" -#: library/curses.rst:1422 +#: library/curses.rst:1438 msgid "``KEY_LEFT``" msgstr "``KEY_LEFT``" -#: library/curses.rst:1422 +#: library/curses.rst:1438 msgid "Left-arrow" msgstr "" -#: library/curses.rst:1424 +#: library/curses.rst:1440 msgid "``KEY_RIGHT``" msgstr "``KEY_RIGHT``" -#: library/curses.rst:1424 +#: library/curses.rst:1440 msgid "Right-arrow" msgstr "" -#: library/curses.rst:1426 +#: library/curses.rst:1442 msgid "``KEY_HOME``" msgstr "``KEY_HOME``" -#: library/curses.rst:1426 +#: library/curses.rst:1442 msgid "Home key (upward+left arrow)" msgstr "" -#: library/curses.rst:1428 +#: library/curses.rst:1444 msgid "``KEY_BACKSPACE``" msgstr "``KEY_BACKSPACE``" -#: library/curses.rst:1428 +#: library/curses.rst:1444 msgid "Backspace (unreliable)" msgstr "" -#: library/curses.rst:1430 +#: library/curses.rst:1446 msgid "``KEY_F0``" msgstr "``KEY_F0``" -#: library/curses.rst:1430 +#: library/curses.rst:1446 msgid "Function keys. Up to 64 function keys are supported." msgstr "" -#: library/curses.rst:1433 +#: library/curses.rst:1449 msgid "``KEY_Fn``" msgstr "``KEY_Fn``" -#: library/curses.rst:1433 +#: library/curses.rst:1449 msgid "Value of function key *n*" msgstr "" -#: library/curses.rst:1435 +#: library/curses.rst:1451 msgid "``KEY_DL``" msgstr "``KEY_DL``" -#: library/curses.rst:1435 +#: library/curses.rst:1451 msgid "Delete line" msgstr "" -#: library/curses.rst:1437 +#: library/curses.rst:1453 msgid "``KEY_IL``" msgstr "``KEY_IL``" -#: library/curses.rst:1437 +#: library/curses.rst:1453 msgid "Insert line" msgstr "" -#: library/curses.rst:1439 +#: library/curses.rst:1455 msgid "``KEY_DC``" msgstr "``KEY_DC``" -#: library/curses.rst:1439 +#: library/curses.rst:1455 msgid "Delete character" msgstr "" -#: library/curses.rst:1441 +#: library/curses.rst:1457 msgid "``KEY_IC``" msgstr "``KEY_IC``" -#: library/curses.rst:1441 +#: library/curses.rst:1457 msgid "Insert char or enter insert mode" msgstr "" -#: library/curses.rst:1443 +#: library/curses.rst:1459 msgid "``KEY_EIC``" msgstr "``KEY_EIC``" -#: library/curses.rst:1443 +#: library/curses.rst:1459 msgid "Exit insert char mode" msgstr "" -#: library/curses.rst:1445 +#: library/curses.rst:1461 msgid "``KEY_CLEAR``" msgstr "``KEY_CLEAR``" -#: library/curses.rst:1445 +#: library/curses.rst:1461 msgid "Clear screen" msgstr "" -#: library/curses.rst:1447 +#: library/curses.rst:1463 msgid "``KEY_EOS``" msgstr "``KEY_EOS``" -#: library/curses.rst:1447 +#: library/curses.rst:1463 msgid "Clear to end of screen" msgstr "" -#: library/curses.rst:1449 +#: library/curses.rst:1465 msgid "``KEY_EOL``" msgstr "``KEY_EOL``" -#: library/curses.rst:1449 +#: library/curses.rst:1465 msgid "Clear to end of line" msgstr "" -#: library/curses.rst:1451 +#: library/curses.rst:1467 msgid "``KEY_SF``" msgstr "``KEY_SF``" -#: library/curses.rst:1451 +#: library/curses.rst:1467 msgid "Scroll 1 line forward" msgstr "" -#: library/curses.rst:1453 +#: library/curses.rst:1469 msgid "``KEY_SR``" msgstr "``KEY_SR``" -#: library/curses.rst:1453 +#: library/curses.rst:1469 msgid "Scroll 1 line backward (reverse)" msgstr "" -#: library/curses.rst:1455 +#: library/curses.rst:1471 msgid "``KEY_NPAGE``" msgstr "``KEY_NPAGE``" -#: library/curses.rst:1455 +#: library/curses.rst:1471 msgid "Next page" msgstr "" -#: library/curses.rst:1457 +#: library/curses.rst:1473 msgid "``KEY_PPAGE``" msgstr "``KEY_PPAGE``" -#: library/curses.rst:1457 +#: library/curses.rst:1473 msgid "Previous page" msgstr "" -#: library/curses.rst:1459 +#: library/curses.rst:1475 msgid "``KEY_STAB``" msgstr "``KEY_STAB``" -#: library/curses.rst:1459 +#: library/curses.rst:1475 msgid "Set tab" msgstr "" -#: library/curses.rst:1461 +#: library/curses.rst:1477 msgid "``KEY_CTAB``" msgstr "``KEY_CTAB``" -#: library/curses.rst:1461 +#: library/curses.rst:1477 msgid "Clear tab" msgstr "" -#: library/curses.rst:1463 +#: library/curses.rst:1479 msgid "``KEY_CATAB``" msgstr "``KEY_CATAB``" -#: library/curses.rst:1463 +#: library/curses.rst:1479 msgid "Clear all tabs" msgstr "" -#: library/curses.rst:1465 +#: library/curses.rst:1481 msgid "``KEY_ENTER``" msgstr "``KEY_ENTER``" -#: library/curses.rst:1465 +#: library/curses.rst:1481 msgid "Enter or send (unreliable)" msgstr "" -#: library/curses.rst:1467 +#: library/curses.rst:1483 msgid "``KEY_SRESET``" msgstr "``KEY_SRESET``" -#: library/curses.rst:1467 +#: library/curses.rst:1483 msgid "Soft (partial) reset (unreliable)" msgstr "" -#: library/curses.rst:1469 +#: library/curses.rst:1485 msgid "``KEY_RESET``" msgstr "``KEY_RESET``" -#: library/curses.rst:1469 +#: library/curses.rst:1485 msgid "Reset or hard reset (unreliable)" msgstr "" -#: library/curses.rst:1471 +#: library/curses.rst:1487 msgid "``KEY_PRINT``" msgstr "``KEY_PRINT``" -#: library/curses.rst:1471 +#: library/curses.rst:1487 msgid "Print" msgstr "" -#: library/curses.rst:1473 +#: library/curses.rst:1489 msgid "``KEY_LL``" msgstr "``KEY_LL``" -#: library/curses.rst:1473 +#: library/curses.rst:1489 msgid "Home down or bottom (lower left)" msgstr "" -#: library/curses.rst:1475 +#: library/curses.rst:1491 msgid "``KEY_A1``" msgstr "``KEY_A1``" -#: library/curses.rst:1475 +#: library/curses.rst:1491 msgid "Upper left of keypad" msgstr "" -#: library/curses.rst:1477 +#: library/curses.rst:1493 msgid "``KEY_A3``" msgstr "``KEY_A3``" -#: library/curses.rst:1477 +#: library/curses.rst:1493 msgid "Upper right of keypad" msgstr "" -#: library/curses.rst:1479 +#: library/curses.rst:1495 msgid "``KEY_B2``" msgstr "``KEY_B2``" -#: library/curses.rst:1479 +#: library/curses.rst:1495 msgid "Center of keypad" msgstr "" -#: library/curses.rst:1481 +#: library/curses.rst:1497 msgid "``KEY_C1``" msgstr "``KEY_C1``" -#: library/curses.rst:1481 +#: library/curses.rst:1497 msgid "Lower left of keypad" msgstr "" -#: library/curses.rst:1483 +#: library/curses.rst:1499 msgid "``KEY_C3``" msgstr "``KEY_C3``" -#: library/curses.rst:1483 +#: library/curses.rst:1499 msgid "Lower right of keypad" msgstr "" -#: library/curses.rst:1485 +#: library/curses.rst:1501 msgid "``KEY_BTAB``" msgstr "``KEY_BTAB``" -#: library/curses.rst:1485 +#: library/curses.rst:1501 msgid "Back tab" msgstr "" -#: library/curses.rst:1487 +#: library/curses.rst:1503 msgid "``KEY_BEG``" msgstr "``KEY_BEG``" -#: library/curses.rst:1487 +#: library/curses.rst:1503 msgid "Beg (beginning)" msgstr "" -#: library/curses.rst:1489 +#: library/curses.rst:1505 msgid "``KEY_CANCEL``" msgstr "``KEY_CANCEL``" -#: library/curses.rst:1489 +#: library/curses.rst:1505 msgid "Cancel" msgstr "" -#: library/curses.rst:1491 +#: library/curses.rst:1507 msgid "``KEY_CLOSE``" msgstr "``KEY_CLOSE``" -#: library/curses.rst:1491 +#: library/curses.rst:1507 msgid "Close" msgstr "*Close*" -#: library/curses.rst:1493 +#: library/curses.rst:1509 msgid "``KEY_COMMAND``" msgstr "``KEY_COMMAND``" -#: library/curses.rst:1493 +#: library/curses.rst:1509 msgid "Cmd (command)" msgstr "" -#: library/curses.rst:1495 +#: library/curses.rst:1511 msgid "``KEY_COPY``" msgstr "``KEY_COPY``" -#: library/curses.rst:1495 +#: library/curses.rst:1511 msgid "Copy" msgstr "*Copy*" -#: library/curses.rst:1497 +#: library/curses.rst:1513 msgid "``KEY_CREATE``" msgstr "``KEY_CREATE``" -#: library/curses.rst:1497 +#: library/curses.rst:1513 msgid "Create" msgstr "" -#: library/curses.rst:1499 +#: library/curses.rst:1515 msgid "``KEY_END``" msgstr "``KEY_END``" -#: library/curses.rst:1499 +#: library/curses.rst:1515 msgid "End" msgstr "" -#: library/curses.rst:1501 +#: library/curses.rst:1517 msgid "``KEY_EXIT``" msgstr "``KEY_EXIT``" -#: library/curses.rst:1501 +#: library/curses.rst:1517 msgid "Exit" msgstr "*Exit*" -#: library/curses.rst:1503 +#: library/curses.rst:1519 msgid "``KEY_FIND``" msgstr "``KEY_FIND``" -#: library/curses.rst:1503 +#: library/curses.rst:1519 msgid "Find" msgstr "" -#: library/curses.rst:1505 +#: library/curses.rst:1521 msgid "``KEY_HELP``" msgstr "``KEY_HELP``" -#: library/curses.rst:1505 +#: library/curses.rst:1521 msgid "Help" msgstr "" -#: library/curses.rst:1507 +#: library/curses.rst:1523 msgid "``KEY_MARK``" msgstr "``KEY_MARK``" -#: library/curses.rst:1507 +#: library/curses.rst:1523 msgid "Mark" msgstr "" -#: library/curses.rst:1509 +#: library/curses.rst:1525 msgid "``KEY_MESSAGE``" msgstr "``KEY_MESSAGE``" -#: library/curses.rst:1509 +#: library/curses.rst:1525 msgid "Message" msgstr "" -#: library/curses.rst:1511 +#: library/curses.rst:1527 msgid "``KEY_MOVE``" msgstr "``KEY_MOVE``" -#: library/curses.rst:1511 +#: library/curses.rst:1527 msgid "Move" msgstr "" -#: library/curses.rst:1513 +#: library/curses.rst:1529 msgid "``KEY_NEXT``" msgstr "``KEY_NEXT``" -#: library/curses.rst:1513 +#: library/curses.rst:1529 msgid "Next" msgstr "" -#: library/curses.rst:1515 +#: library/curses.rst:1531 msgid "``KEY_OPEN``" msgstr "``KEY_OPEN``" -#: library/curses.rst:1515 +#: library/curses.rst:1531 msgid "Open" msgstr "" -#: library/curses.rst:1517 +#: library/curses.rst:1533 msgid "``KEY_OPTIONS``" msgstr "``KEY_OPTIONS``" -#: library/curses.rst:1517 +#: library/curses.rst:1533 msgid "Options" msgstr "Options" -#: library/curses.rst:1519 +#: library/curses.rst:1535 msgid "``KEY_PREVIOUS``" msgstr "``KEY_PREVIOUS``" -#: library/curses.rst:1519 +#: library/curses.rst:1535 msgid "Prev (previous)" msgstr "" -#: library/curses.rst:1521 +#: library/curses.rst:1537 msgid "``KEY_REDO``" msgstr "``KEY_REDO``" -#: library/curses.rst:1521 +#: library/curses.rst:1537 msgid "Redo" msgstr "*Redo*" -#: library/curses.rst:1523 +#: library/curses.rst:1539 msgid "``KEY_REFERENCE``" msgstr "``KEY_REFERENCE``" -#: library/curses.rst:1523 +#: library/curses.rst:1539 msgid "Ref (reference)" msgstr "" -#: library/curses.rst:1525 +#: library/curses.rst:1541 msgid "``KEY_REFRESH``" msgstr "``KEY_REFRESH``" -#: library/curses.rst:1525 +#: library/curses.rst:1541 msgid "Refresh" msgstr "" -#: library/curses.rst:1527 +#: library/curses.rst:1543 msgid "``KEY_REPLACE``" msgstr "``KEY_REPLACE``" -#: library/curses.rst:1527 +#: library/curses.rst:1543 msgid "Replace" msgstr "" -#: library/curses.rst:1529 +#: library/curses.rst:1545 msgid "``KEY_RESTART``" msgstr "``KEY_RESTART``" -#: library/curses.rst:1529 +#: library/curses.rst:1545 msgid "Restart" msgstr "" -#: library/curses.rst:1531 +#: library/curses.rst:1547 msgid "``KEY_RESUME``" msgstr "``KEY_RESUME``" -#: library/curses.rst:1531 +#: library/curses.rst:1547 msgid "Resume" msgstr "" -#: library/curses.rst:1533 +#: library/curses.rst:1549 msgid "``KEY_SAVE``" msgstr "``KEY_SAVE``" -#: library/curses.rst:1533 +#: library/curses.rst:1549 msgid "Save" msgstr "*Save*" -#: library/curses.rst:1535 +#: library/curses.rst:1551 msgid "``KEY_SBEG``" msgstr "``KEY_SBEG``" -#: library/curses.rst:1535 +#: library/curses.rst:1551 msgid "Shifted Beg (beginning)" msgstr "" -#: library/curses.rst:1537 +#: library/curses.rst:1553 msgid "``KEY_SCANCEL``" msgstr "``KEY_SCANCEL``" -#: library/curses.rst:1537 +#: library/curses.rst:1553 msgid "Shifted Cancel" msgstr "" -#: library/curses.rst:1539 +#: library/curses.rst:1555 msgid "``KEY_SCOMMAND``" msgstr "``KEY_SCOMMAND``" -#: library/curses.rst:1539 +#: library/curses.rst:1555 msgid "Shifted Command" msgstr "" -#: library/curses.rst:1541 +#: library/curses.rst:1557 msgid "``KEY_SCOPY``" msgstr "``KEY_SCOPY``" -#: library/curses.rst:1541 +#: library/curses.rst:1557 msgid "Shifted Copy" msgstr "" -#: library/curses.rst:1543 +#: library/curses.rst:1559 msgid "``KEY_SCREATE``" msgstr "``KEY_SCREATE``" -#: library/curses.rst:1543 +#: library/curses.rst:1559 msgid "Shifted Create" msgstr "" -#: library/curses.rst:1545 +#: library/curses.rst:1561 msgid "``KEY_SDC``" msgstr "``KEY_SDC``" -#: library/curses.rst:1545 +#: library/curses.rst:1561 msgid "Shifted Delete char" msgstr "" -#: library/curses.rst:1547 +#: library/curses.rst:1563 msgid "``KEY_SDL``" msgstr "``KEY_SDL``" -#: library/curses.rst:1547 +#: library/curses.rst:1563 msgid "Shifted Delete line" msgstr "" -#: library/curses.rst:1549 +#: library/curses.rst:1565 msgid "``KEY_SELECT``" msgstr "``KEY_SELECT``" -#: library/curses.rst:1549 +#: library/curses.rst:1565 msgid "Select" msgstr "" -#: library/curses.rst:1551 +#: library/curses.rst:1567 msgid "``KEY_SEND``" msgstr "``KEY_SEND``" -#: library/curses.rst:1551 +#: library/curses.rst:1567 msgid "Shifted End" msgstr "" -#: library/curses.rst:1553 +#: library/curses.rst:1569 msgid "``KEY_SEOL``" msgstr "``KEY_SEOL``" -#: library/curses.rst:1553 +#: library/curses.rst:1569 msgid "Shifted Clear line" msgstr "" -#: library/curses.rst:1555 +#: library/curses.rst:1571 msgid "``KEY_SEXIT``" msgstr "``KEY_SEXIT``" -#: library/curses.rst:1555 +#: library/curses.rst:1571 msgid "Shifted Exit" msgstr "" -#: library/curses.rst:1557 +#: library/curses.rst:1573 msgid "``KEY_SFIND``" msgstr "``KEY_SFIND``" -#: library/curses.rst:1557 +#: library/curses.rst:1573 msgid "Shifted Find" msgstr "" -#: library/curses.rst:1559 +#: library/curses.rst:1575 msgid "``KEY_SHELP``" msgstr "``KEY_SHELP``" -#: library/curses.rst:1559 +#: library/curses.rst:1575 msgid "Shifted Help" msgstr "" -#: library/curses.rst:1561 +#: library/curses.rst:1577 msgid "``KEY_SHOME``" msgstr "``KEY_SHOME``" -#: library/curses.rst:1561 +#: library/curses.rst:1577 msgid "Shifted Home" msgstr "" -#: library/curses.rst:1563 +#: library/curses.rst:1579 msgid "``KEY_SIC``" msgstr "``KEY_SIC``" -#: library/curses.rst:1563 +#: library/curses.rst:1579 msgid "Shifted Input" msgstr "" -#: library/curses.rst:1565 +#: library/curses.rst:1581 msgid "``KEY_SLEFT``" msgstr "``KEY_SLEFT``" -#: library/curses.rst:1565 +#: library/curses.rst:1581 msgid "Shifted Left arrow" msgstr "" -#: library/curses.rst:1567 +#: library/curses.rst:1583 msgid "``KEY_SMESSAGE``" msgstr "``KEY_SMESSAGE``" -#: library/curses.rst:1567 +#: library/curses.rst:1583 msgid "Shifted Message" msgstr "" -#: library/curses.rst:1569 +#: library/curses.rst:1585 msgid "``KEY_SMOVE``" msgstr "``KEY_SMOVE``" -#: library/curses.rst:1569 +#: library/curses.rst:1585 msgid "Shifted Move" msgstr "" -#: library/curses.rst:1571 +#: library/curses.rst:1587 msgid "``KEY_SNEXT``" msgstr "``KEY_SNEXT``" -#: library/curses.rst:1571 +#: library/curses.rst:1587 msgid "Shifted Next" msgstr "" -#: library/curses.rst:1573 +#: library/curses.rst:1589 msgid "``KEY_SOPTIONS``" msgstr "``KEY_SOPTIONS``" -#: library/curses.rst:1573 +#: library/curses.rst:1589 msgid "Shifted Options" msgstr "" -#: library/curses.rst:1575 +#: library/curses.rst:1591 msgid "``KEY_SPREVIOUS``" msgstr "``KEY_SPREVIOUS``" -#: library/curses.rst:1575 +#: library/curses.rst:1591 msgid "Shifted Prev" msgstr "" -#: library/curses.rst:1577 +#: library/curses.rst:1593 msgid "``KEY_SPRINT``" msgstr "``KEY_SPRINT``" -#: library/curses.rst:1577 +#: library/curses.rst:1593 msgid "Shifted Print" msgstr "" -#: library/curses.rst:1579 +#: library/curses.rst:1595 msgid "``KEY_SREDO``" msgstr "``KEY_SREDO``" -#: library/curses.rst:1579 +#: library/curses.rst:1595 msgid "Shifted Redo" msgstr "" -#: library/curses.rst:1581 +#: library/curses.rst:1597 msgid "``KEY_SREPLACE``" msgstr "``KEY_SREPLACE``" -#: library/curses.rst:1581 +#: library/curses.rst:1597 msgid "Shifted Replace" msgstr "" -#: library/curses.rst:1583 +#: library/curses.rst:1599 msgid "``KEY_SRIGHT``" msgstr "``KEY_SRIGHT``" -#: library/curses.rst:1583 +#: library/curses.rst:1599 msgid "Shifted Right arrow" msgstr "" -#: library/curses.rst:1585 +#: library/curses.rst:1601 msgid "``KEY_SRSUME``" msgstr "``KEY_SRSUME``" -#: library/curses.rst:1585 +#: library/curses.rst:1601 msgid "Shifted Resume" msgstr "" -#: library/curses.rst:1587 +#: library/curses.rst:1603 msgid "``KEY_SSAVE``" msgstr "``KEY_SSAVE``" -#: library/curses.rst:1587 +#: library/curses.rst:1603 msgid "Shifted Save" msgstr "" -#: library/curses.rst:1589 +#: library/curses.rst:1605 msgid "``KEY_SSUSPEND``" msgstr "``KEY_SSUSPEND``" -#: library/curses.rst:1589 +#: library/curses.rst:1605 msgid "Shifted Suspend" msgstr "" -#: library/curses.rst:1591 +#: library/curses.rst:1607 msgid "``KEY_SUNDO``" msgstr "``KEY_SUNDO``" -#: library/curses.rst:1591 +#: library/curses.rst:1607 msgid "Shifted Undo" msgstr "" -#: library/curses.rst:1593 +#: library/curses.rst:1609 msgid "``KEY_SUSPEND``" msgstr "``KEY_SUSPEND``" -#: library/curses.rst:1593 +#: library/curses.rst:1609 msgid "Suspend" msgstr "" -#: library/curses.rst:1595 +#: library/curses.rst:1611 msgid "``KEY_UNDO``" msgstr "``KEY_UNDO``" -#: library/curses.rst:1595 +#: library/curses.rst:1611 msgid "Undo" msgstr "*Undo*" -#: library/curses.rst:1597 +#: library/curses.rst:1613 msgid "``KEY_MOUSE``" msgstr "``KEY_MOUSE``" -#: library/curses.rst:1597 +#: library/curses.rst:1613 msgid "Mouse event has occurred" msgstr "" -#: library/curses.rst:1599 +#: library/curses.rst:1615 msgid "``KEY_RESIZE``" msgstr "``KEY_RESIZE``" -#: library/curses.rst:1599 +#: library/curses.rst:1615 msgid "Terminal resize event" msgstr "" -#: library/curses.rst:1601 +#: library/curses.rst:1617 msgid "``KEY_MAX``" msgstr "``KEY_MAX``" -#: library/curses.rst:1601 +#: library/curses.rst:1617 msgid "Maximum key value" msgstr "" -#: library/curses.rst:1604 +#: library/curses.rst:1620 msgid "" "On VT100s and their software emulations, such as X terminal emulators, there " "are normally at least four function keys (:const:`KEY_F1`, :const:`KEY_F2`, :" @@ -2444,63 +2465,63 @@ msgid "" "function keys); also, the following keypad mappings are standard:" msgstr "" -#: library/curses.rst:1613 +#: library/curses.rst:1629 msgid "Keycap" msgstr "" -#: library/curses.rst:1730 library/curses.rst:1854 +#: library/curses.rst:1746 library/curses.rst:1870 msgid "Constant" msgstr "Constante" -#: library/curses.rst:1615 +#: library/curses.rst:1631 msgid ":kbd:`Insert`" msgstr ":kbd:`Insert`" -#: library/curses.rst:1615 +#: library/curses.rst:1631 msgid "KEY_IC" msgstr "" -#: library/curses.rst:1617 +#: library/curses.rst:1633 msgid ":kbd:`Delete`" msgstr ":kbd:`Delete`" -#: library/curses.rst:1617 +#: library/curses.rst:1633 msgid "KEY_DC" msgstr "" -#: library/curses.rst:1619 +#: library/curses.rst:1635 msgid ":kbd:`Home`" msgstr ":kbd:`Home`" -#: library/curses.rst:1619 +#: library/curses.rst:1635 msgid "KEY_HOME" msgstr "KEY_HOME" -#: library/curses.rst:1621 +#: library/curses.rst:1637 msgid ":kbd:`End`" msgstr ":kbd:`End`" -#: library/curses.rst:1621 +#: library/curses.rst:1637 msgid "KEY_END" msgstr "KEY_END" -#: library/curses.rst:1623 +#: library/curses.rst:1639 msgid ":kbd:`Page Up`" msgstr ":kbd:`Page Up`" -#: library/curses.rst:1623 +#: library/curses.rst:1639 msgid "KEY_PPAGE" msgstr "KEY_PPAGE" -#: library/curses.rst:1625 +#: library/curses.rst:1641 msgid ":kbd:`Page Down`" msgstr ":kbd:`Page Down`" -#: library/curses.rst:1625 +#: library/curses.rst:1641 msgid "KEY_NPAGE" msgstr "KEY_NPAGE" -#: library/curses.rst:1628 +#: library/curses.rst:1644 msgid "" "The following table lists characters from the alternate character set. These " "are inherited from the VT100 terminal, and will generally be available on " @@ -2508,435 +2529,435 @@ msgid "" "available, curses falls back on a crude printable ASCII approximation." msgstr "" -#: library/curses.rst:1635 +#: library/curses.rst:1651 msgid "These are available only after :func:`initscr` has been called." msgstr "" -#: library/curses.rst:1638 +#: library/curses.rst:1654 msgid "ACS code" msgstr "" -#: library/curses.rst:1640 +#: library/curses.rst:1656 msgid "``ACS_BBSS``" msgstr "``ACS_BBSS``" -#: library/curses.rst:1640 +#: library/curses.rst:1656 msgid "alternate name for upper right corner" msgstr "" -#: library/curses.rst:1642 +#: library/curses.rst:1658 msgid "``ACS_BLOCK``" msgstr "``ACS_BLOCK``" -#: library/curses.rst:1642 +#: library/curses.rst:1658 msgid "solid square block" msgstr "" -#: library/curses.rst:1644 +#: library/curses.rst:1660 msgid "``ACS_BOARD``" msgstr "``ACS_BOARD``" -#: library/curses.rst:1644 +#: library/curses.rst:1660 msgid "board of squares" msgstr "" -#: library/curses.rst:1646 +#: library/curses.rst:1662 msgid "``ACS_BSBS``" msgstr "``ACS_BSBS``" -#: library/curses.rst:1646 +#: library/curses.rst:1662 msgid "alternate name for horizontal line" msgstr "" -#: library/curses.rst:1648 +#: library/curses.rst:1664 msgid "``ACS_BSSB``" msgstr "``ACS_BSSB``" -#: library/curses.rst:1648 +#: library/curses.rst:1664 msgid "alternate name for upper left corner" msgstr "" -#: library/curses.rst:1650 +#: library/curses.rst:1666 msgid "``ACS_BSSS``" msgstr "``ACS_BSSS``" -#: library/curses.rst:1650 +#: library/curses.rst:1666 msgid "alternate name for top tee" msgstr "" -#: library/curses.rst:1652 +#: library/curses.rst:1668 msgid "``ACS_BTEE``" msgstr "``ACS_BTEE``" -#: library/curses.rst:1652 +#: library/curses.rst:1668 msgid "bottom tee" msgstr "" -#: library/curses.rst:1654 +#: library/curses.rst:1670 msgid "``ACS_BULLET``" msgstr "``ACS_BULLET``" -#: library/curses.rst:1654 +#: library/curses.rst:1670 msgid "bullet" msgstr "" -#: library/curses.rst:1656 +#: library/curses.rst:1672 msgid "``ACS_CKBOARD``" msgstr "``ACS_CKBOARD``" -#: library/curses.rst:1656 +#: library/curses.rst:1672 msgid "checker board (stipple)" msgstr "" -#: library/curses.rst:1658 +#: library/curses.rst:1674 msgid "``ACS_DARROW``" msgstr "``ACS_DARROW``" -#: library/curses.rst:1658 +#: library/curses.rst:1674 msgid "arrow pointing down" msgstr "" -#: library/curses.rst:1660 +#: library/curses.rst:1676 msgid "``ACS_DEGREE``" msgstr "``ACS_DEGREE``" -#: library/curses.rst:1660 +#: library/curses.rst:1676 msgid "degree symbol" msgstr "" -#: library/curses.rst:1662 +#: library/curses.rst:1678 msgid "``ACS_DIAMOND``" msgstr "``ACS_DIAMOND``" -#: library/curses.rst:1662 +#: library/curses.rst:1678 msgid "diamond" msgstr "" -#: library/curses.rst:1664 +#: library/curses.rst:1680 msgid "``ACS_GEQUAL``" msgstr "``ACS_GEQUAL``" -#: library/curses.rst:1664 +#: library/curses.rst:1680 msgid "greater-than-or-equal-to" msgstr "" -#: library/curses.rst:1666 +#: library/curses.rst:1682 msgid "``ACS_HLINE``" msgstr "``ACS_HLINE``" -#: library/curses.rst:1666 +#: library/curses.rst:1682 msgid "horizontal line" msgstr "" -#: library/curses.rst:1668 +#: library/curses.rst:1684 msgid "``ACS_LANTERN``" msgstr "``ACS_LANTERN``" -#: library/curses.rst:1668 +#: library/curses.rst:1684 msgid "lantern symbol" msgstr "" -#: library/curses.rst:1670 +#: library/curses.rst:1686 msgid "``ACS_LARROW``" msgstr "``ACS_LARROW``" -#: library/curses.rst:1670 +#: library/curses.rst:1686 msgid "left arrow" msgstr "" -#: library/curses.rst:1672 +#: library/curses.rst:1688 msgid "``ACS_LEQUAL``" msgstr "``ACS_LEQUAL``" -#: library/curses.rst:1672 +#: library/curses.rst:1688 msgid "less-than-or-equal-to" msgstr "" -#: library/curses.rst:1674 +#: library/curses.rst:1690 msgid "``ACS_LLCORNER``" msgstr "``ACS_LLCORNER``" -#: library/curses.rst:1674 +#: library/curses.rst:1690 msgid "lower left-hand corner" msgstr "" -#: library/curses.rst:1676 +#: library/curses.rst:1692 msgid "``ACS_LRCORNER``" msgstr "``ACS_LRCORNER``" -#: library/curses.rst:1676 +#: library/curses.rst:1692 msgid "lower right-hand corner" msgstr "" -#: library/curses.rst:1678 +#: library/curses.rst:1694 msgid "``ACS_LTEE``" msgstr "``ACS_LTEE``" -#: library/curses.rst:1678 +#: library/curses.rst:1694 msgid "left tee" msgstr "" -#: library/curses.rst:1680 +#: library/curses.rst:1696 msgid "``ACS_NEQUAL``" msgstr "``ACS_NEQUAL``" -#: library/curses.rst:1680 +#: library/curses.rst:1696 msgid "not-equal sign" msgstr "" -#: library/curses.rst:1682 +#: library/curses.rst:1698 msgid "``ACS_PI``" msgstr "``ACS_PI``" -#: library/curses.rst:1682 +#: library/curses.rst:1698 msgid "letter pi" msgstr "" -#: library/curses.rst:1684 +#: library/curses.rst:1700 msgid "``ACS_PLMINUS``" msgstr "``ACS_PLMINUS``" -#: library/curses.rst:1684 +#: library/curses.rst:1700 msgid "plus-or-minus sign" msgstr "" -#: library/curses.rst:1686 +#: library/curses.rst:1702 msgid "``ACS_PLUS``" msgstr "``ACS_PLUS``" -#: library/curses.rst:1686 +#: library/curses.rst:1702 msgid "big plus sign" msgstr "" -#: library/curses.rst:1688 +#: library/curses.rst:1704 msgid "``ACS_RARROW``" msgstr "``ACS_RARROW``" -#: library/curses.rst:1688 +#: library/curses.rst:1704 msgid "right arrow" msgstr "" -#: library/curses.rst:1690 +#: library/curses.rst:1706 msgid "``ACS_RTEE``" msgstr "``ACS_RTEE``" -#: library/curses.rst:1690 +#: library/curses.rst:1706 msgid "right tee" msgstr "" -#: library/curses.rst:1692 +#: library/curses.rst:1708 msgid "``ACS_S1``" msgstr "``ACS_S1``" -#: library/curses.rst:1692 +#: library/curses.rst:1708 msgid "scan line 1" msgstr "" -#: library/curses.rst:1694 +#: library/curses.rst:1710 msgid "``ACS_S3``" msgstr "``ACS_S3``" -#: library/curses.rst:1694 +#: library/curses.rst:1710 msgid "scan line 3" msgstr "" -#: library/curses.rst:1696 +#: library/curses.rst:1712 msgid "``ACS_S7``" msgstr "``ACS_S7``" -#: library/curses.rst:1696 +#: library/curses.rst:1712 msgid "scan line 7" msgstr "" -#: library/curses.rst:1698 +#: library/curses.rst:1714 msgid "``ACS_S9``" msgstr "``ACS_S9``" -#: library/curses.rst:1698 +#: library/curses.rst:1714 msgid "scan line 9" msgstr "" -#: library/curses.rst:1700 +#: library/curses.rst:1716 msgid "``ACS_SBBS``" msgstr "``ACS_SBBS``" -#: library/curses.rst:1700 +#: library/curses.rst:1716 msgid "alternate name for lower right corner" msgstr "" -#: library/curses.rst:1702 +#: library/curses.rst:1718 msgid "``ACS_SBSB``" msgstr "``ACS_SBSB``" -#: library/curses.rst:1702 +#: library/curses.rst:1718 msgid "alternate name for vertical line" msgstr "" -#: library/curses.rst:1704 +#: library/curses.rst:1720 msgid "``ACS_SBSS``" msgstr "``ACS_SBSS``" -#: library/curses.rst:1704 +#: library/curses.rst:1720 msgid "alternate name for right tee" msgstr "" -#: library/curses.rst:1706 +#: library/curses.rst:1722 msgid "``ACS_SSBB``" msgstr "``ACS_SSBB``" -#: library/curses.rst:1706 +#: library/curses.rst:1722 msgid "alternate name for lower left corner" msgstr "" -#: library/curses.rst:1708 +#: library/curses.rst:1724 msgid "``ACS_SSBS``" msgstr "``ACS_SSBS``" -#: library/curses.rst:1708 +#: library/curses.rst:1724 msgid "alternate name for bottom tee" msgstr "" -#: library/curses.rst:1710 +#: library/curses.rst:1726 msgid "``ACS_SSSB``" msgstr "``ACS_SSSB``" -#: library/curses.rst:1710 +#: library/curses.rst:1726 msgid "alternate name for left tee" msgstr "" -#: library/curses.rst:1712 +#: library/curses.rst:1728 msgid "``ACS_SSSS``" msgstr "``ACS_SSSS``" -#: library/curses.rst:1712 +#: library/curses.rst:1728 msgid "alternate name for crossover or big plus" msgstr "" -#: library/curses.rst:1714 +#: library/curses.rst:1730 msgid "``ACS_STERLING``" msgstr "``ACS_STERLING``" -#: library/curses.rst:1714 +#: library/curses.rst:1730 msgid "pound sterling" msgstr "" -#: library/curses.rst:1716 +#: library/curses.rst:1732 msgid "``ACS_TTEE``" msgstr "``ACS_TTEE``" -#: library/curses.rst:1716 +#: library/curses.rst:1732 msgid "top tee" msgstr "" -#: library/curses.rst:1718 +#: library/curses.rst:1734 msgid "``ACS_UARROW``" msgstr "``ACS_UARROW``" -#: library/curses.rst:1718 +#: library/curses.rst:1734 msgid "up arrow" msgstr "" -#: library/curses.rst:1720 +#: library/curses.rst:1736 msgid "``ACS_ULCORNER``" msgstr "``ACS_ULCORNER``" -#: library/curses.rst:1720 +#: library/curses.rst:1736 msgid "upper left corner" msgstr "" -#: library/curses.rst:1722 +#: library/curses.rst:1738 msgid "``ACS_URCORNER``" msgstr "``ACS_URCORNER``" -#: library/curses.rst:1722 +#: library/curses.rst:1738 msgid "upper right corner" msgstr "" -#: library/curses.rst:1724 +#: library/curses.rst:1740 msgid "``ACS_VLINE``" msgstr "``ACS_VLINE``" -#: library/curses.rst:1724 +#: library/curses.rst:1740 msgid "vertical line" msgstr "" -#: library/curses.rst:1727 +#: library/curses.rst:1743 msgid "The following table lists the predefined colors:" msgstr "" -#: library/curses.rst:1730 +#: library/curses.rst:1746 msgid "Color" msgstr "" -#: library/curses.rst:1732 +#: library/curses.rst:1748 msgid "``COLOR_BLACK``" msgstr "``COLOR_BLACK``" -#: library/curses.rst:1732 +#: library/curses.rst:1748 msgid "Black" msgstr "" -#: library/curses.rst:1734 +#: library/curses.rst:1750 msgid "``COLOR_BLUE``" msgstr "``COLOR_BLUE``" -#: library/curses.rst:1734 +#: library/curses.rst:1750 msgid "Blue" msgstr "" -#: library/curses.rst:1736 +#: library/curses.rst:1752 msgid "``COLOR_CYAN``" msgstr "``COLOR_CYAN``" -#: library/curses.rst:1736 +#: library/curses.rst:1752 msgid "Cyan (light greenish blue)" msgstr "" -#: library/curses.rst:1738 +#: library/curses.rst:1754 msgid "``COLOR_GREEN``" msgstr "``COLOR_GREEN``" -#: library/curses.rst:1738 +#: library/curses.rst:1754 msgid "Green" msgstr "" -#: library/curses.rst:1740 +#: library/curses.rst:1756 msgid "``COLOR_MAGENTA``" msgstr "``COLOR_MAGENTA``" -#: library/curses.rst:1740 +#: library/curses.rst:1756 msgid "Magenta (purplish red)" msgstr "" -#: library/curses.rst:1742 +#: library/curses.rst:1758 msgid "``COLOR_RED``" msgstr "``COLOR_RED``" -#: library/curses.rst:1742 +#: library/curses.rst:1758 msgid "Red" msgstr "" -#: library/curses.rst:1744 +#: library/curses.rst:1760 msgid "``COLOR_WHITE``" msgstr "``COLOR_WHITE``" -#: library/curses.rst:1744 +#: library/curses.rst:1760 msgid "White" msgstr "" -#: library/curses.rst:1746 +#: library/curses.rst:1762 msgid "``COLOR_YELLOW``" msgstr "``COLOR_YELLOW``" -#: library/curses.rst:1746 +#: library/curses.rst:1762 msgid "Yellow" msgstr "" -#: library/curses.rst:1751 +#: library/curses.rst:1767 msgid ":mod:`curses.textpad` --- Text input widget for curses programs" msgstr "" -#: library/curses.rst:1759 +#: library/curses.rst:1775 msgid "" "The :mod:`curses.textpad` module provides a :class:`Textbox` class that " "handles elementary text editing in a curses window, supporting a set of " @@ -2946,11 +2967,11 @@ msgid "" "purposes." msgstr "" -#: library/curses.rst:1765 +#: library/curses.rst:1781 msgid "The module :mod:`curses.textpad` defines the following function:" msgstr "" -#: library/curses.rst:1770 +#: library/curses.rst:1786 msgid "" "Draw a rectangle. The first argument must be a window object; the remaining " "arguments are coordinates relative to that window. The second and third " @@ -2962,15 +2983,15 @@ msgid "" "will be drawn with ASCII dashes, vertical bars, and plus signs." msgstr "" -#: library/curses.rst:1783 +#: library/curses.rst:1799 msgid "Textbox objects" msgstr "" -#: library/curses.rst:1785 +#: library/curses.rst:1801 msgid "You can instantiate a :class:`Textbox` object as follows:" msgstr "" -#: library/curses.rst:1790 +#: library/curses.rst:1806 msgid "" "Return a textbox widget object. The *win* argument should be a curses :ref:" "`window ` object in which the textbox is to be " @@ -2979,13 +3000,13 @@ msgid "" "instance's :attr:`stripspaces` flag is initially on." msgstr "" -#: library/curses.rst:1796 +#: library/curses.rst:1812 #, fuzzy msgid ":class:`Textbox` objects have the following methods:" msgstr "" "Les objets de la classe :class:`TestLoader` ont les attributs suivants :" -#: library/curses.rst:1801 +#: library/curses.rst:1817 msgid "" "This is the entry point you will normally use. It accepts editing " "keystrokes until one of the termination keystrokes is entered. If " @@ -2996,167 +3017,167 @@ msgid "" "`stripspaces` attribute." msgstr "" -#: library/curses.rst:1812 +#: library/curses.rst:1828 msgid "" "Process a single command keystroke. Here are the supported special " "keystrokes:" msgstr "" -#: library/curses.rst:1854 +#: library/curses.rst:1870 msgid "Keystroke" msgstr "" -#: library/curses.rst:1816 +#: library/curses.rst:1832 msgid "Action" msgstr "Action" -#: library/curses.rst:1818 +#: library/curses.rst:1834 msgid ":kbd:`Control-A`" msgstr ":kbd:`Control-A`" -#: library/curses.rst:1818 +#: library/curses.rst:1834 msgid "Go to left edge of window." msgstr "" -#: library/curses.rst:1856 +#: library/curses.rst:1872 msgid ":kbd:`Control-B`" msgstr ":kbd:`Control-B`" -#: library/curses.rst:1820 +#: library/curses.rst:1836 msgid "Cursor left, wrapping to previous line if appropriate." msgstr "" -#: library/curses.rst:1823 +#: library/curses.rst:1839 msgid ":kbd:`Control-D`" msgstr ":kbd:`Control-D`" -#: library/curses.rst:1823 +#: library/curses.rst:1839 msgid "Delete character under cursor." msgstr "" -#: library/curses.rst:1825 +#: library/curses.rst:1841 msgid ":kbd:`Control-E`" msgstr ":kbd:`Control-E`" -#: library/curses.rst:1825 +#: library/curses.rst:1841 msgid "Go to right edge (stripspaces off) or end of line (stripspaces on)." msgstr "" -#: library/curses.rst:1858 +#: library/curses.rst:1874 msgid ":kbd:`Control-F`" msgstr ":kbd:`Control-F`" -#: library/curses.rst:1828 +#: library/curses.rst:1844 msgid "Cursor right, wrapping to next line when appropriate." msgstr "" -#: library/curses.rst:1831 +#: library/curses.rst:1847 msgid ":kbd:`Control-G`" msgstr ":kbd:`Control-G`" -#: library/curses.rst:1831 +#: library/curses.rst:1847 msgid "Terminate, returning the window contents." msgstr "" -#: library/curses.rst:1833 +#: library/curses.rst:1849 msgid ":kbd:`Control-H`" msgstr ":kbd:`Control-H`" -#: library/curses.rst:1833 +#: library/curses.rst:1849 msgid "Delete character backward." msgstr "" -#: library/curses.rst:1835 +#: library/curses.rst:1851 msgid ":kbd:`Control-J`" msgstr ":kbd:`Control-J`" -#: library/curses.rst:1835 +#: library/curses.rst:1851 msgid "Terminate if the window is 1 line, otherwise insert newline." msgstr "" -#: library/curses.rst:1838 +#: library/curses.rst:1854 msgid ":kbd:`Control-K`" msgstr ":kbd:`Control-K`" -#: library/curses.rst:1838 +#: library/curses.rst:1854 msgid "If line is blank, delete it, otherwise clear to end of line." msgstr "" -#: library/curses.rst:1841 +#: library/curses.rst:1857 msgid ":kbd:`Control-L`" msgstr ":kbd:`Control-L`" -#: library/curses.rst:1841 +#: library/curses.rst:1857 msgid "Refresh screen." msgstr "" -#: library/curses.rst:1862 +#: library/curses.rst:1878 msgid ":kbd:`Control-N`" msgstr ":kbd:`Control-N`" -#: library/curses.rst:1843 +#: library/curses.rst:1859 msgid "Cursor down; move down one line." msgstr "" -#: library/curses.rst:1845 +#: library/curses.rst:1861 msgid ":kbd:`Control-O`" msgstr ":kbd:`Control-O`" -#: library/curses.rst:1845 +#: library/curses.rst:1861 msgid "Insert a blank line at cursor location." msgstr "" -#: library/curses.rst:1860 +#: library/curses.rst:1876 msgid ":kbd:`Control-P`" msgstr ":kbd:`Control-P`" -#: library/curses.rst:1847 +#: library/curses.rst:1863 msgid "Cursor up; move up one line." msgstr "" -#: library/curses.rst:1850 +#: library/curses.rst:1866 msgid "" "Move operations do nothing if the cursor is at an edge where the movement is " "not possible. The following synonyms are supported where possible:" msgstr "" -#: library/curses.rst:1856 +#: library/curses.rst:1872 msgid ":const:`KEY_LEFT`" msgstr ":const:`KEY_LEFT`" -#: library/curses.rst:1858 +#: library/curses.rst:1874 msgid ":const:`KEY_RIGHT`" msgstr ":const:`KEY_RIGHT`" -#: library/curses.rst:1860 +#: library/curses.rst:1876 msgid ":const:`KEY_UP`" msgstr ":const:`KEY_UP`" -#: library/curses.rst:1862 +#: library/curses.rst:1878 msgid ":const:`KEY_DOWN`" msgstr ":const:`KEY_DOWN`" -#: library/curses.rst:1864 +#: library/curses.rst:1880 msgid ":const:`KEY_BACKSPACE`" msgstr ":const:`KEY_BACKSPACE`" -#: library/curses.rst:1864 +#: library/curses.rst:1880 msgid ":kbd:`Control-h`" msgstr ":kbd:`Control-h`" -#: library/curses.rst:1867 +#: library/curses.rst:1883 msgid "" "All other keystrokes are treated as a command to insert the given character " "and move right (with line wrapping)." msgstr "" -#: library/curses.rst:1873 +#: library/curses.rst:1889 msgid "" "Return the window contents as a string; whether blanks in the window are " "included is affected by the :attr:`stripspaces` member." msgstr "" -#: library/curses.rst:1879 +#: library/curses.rst:1895 msgid "" "This attribute is a flag which controls the interpretation of blanks in the " "window. When it is on, trailing blanks on each line are ignored; any cursor " diff --git a/library/dataclasses.po b/library/dataclasses.po index 336e06a9a..322fb8325 100644 --- a/library/dataclasses.po +++ b/library/dataclasses.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-21 09:00+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -58,8 +58,8 @@ msgstr "" "la classe. Elle n’est jamais écrite dans la définition de ``InventoryItem``." #: library/dataclasses.rst:47 -msgid "Module-level decorators, classes, and functions" -msgstr "Décorateurs, classes et fonctions du module" +msgid "Module contents" +msgstr "" #: library/dataclasses.rst:51 msgid "" @@ -300,13 +300,47 @@ msgstr "" #: library/dataclasses.rst:164 msgid "" +"``match_args``: If true (the default is ``True``), the ``__match_args__`` " +"tuple will be created from the list of parameters to the generated :meth:" +"`__init__` method (even if :meth:`__init__` is not generated, see above). " +"If false, or if ``__match_args__`` is already defined in the class, then " +"``__match_args__`` will not be generated." +msgstr "" + +#: library/dataclasses.rst:173 +msgid "" +"``kw_only``: If true (the default value is ``False``), then all fields will " +"be marked as keyword-only. If a field is marked as keyword-only, then the " +"only affect is that the :meth:`__init__` parameter generated from a keyword-" +"only field must be specified with a keyword when :meth:`__init__` is " +"called. There is no effect on any other aspect of dataclasses. See the :" +"term:`parameter` glossary entry for details. Also see the :const:`KW_ONLY` " +"section." +msgstr "" + +#: library/dataclasses.rst:184 +#, fuzzy +msgid "" +"``slots``: If true (the default is ``False``), :attr:`__slots__` attribute " +"will be generated and new class will be returned instead of the original " +"one. If :attr:`__slots__` is already defined in the class, then :exc:" +"`TypeError` is raised." +msgstr "" +"*frozen* : si vrai (faux par défaut), assigner une valeur à un champ lève " +"une exception. Cela simule le comportement des instances figées en lecture " +"seule. Si la méthode :meth:`__setattr__` ou :meth:`__delattr__` est définie " +"sur la classe, alors une :exc:`TypeError` est levée. Voir la discussion ci-" +"dessous." + +#: library/dataclasses.rst:191 +msgid "" "``field``\\s may optionally specify a default value, using normal Python " "syntax::" msgstr "" "Les champs peuvent éventuellement préciser une valeur par défaut, en " "utilisant la syntaxe Python normale ::" -#: library/dataclasses.rst:172 +#: library/dataclasses.rst:199 msgid "" "In this example, both ``a`` and ``b`` will be included in the added :meth:" "`__init__` method, which will be defined as::" @@ -314,7 +348,7 @@ msgstr "" "Dans cet exemple, ``a`` et ``b`` sont tous deux inclus dans la signature de " "la méthode générée :meth:`__init__`, qui est définie comme suit ::" -#: library/dataclasses.rst:177 +#: library/dataclasses.rst:204 msgid "" ":exc:`TypeError` will be raised if a field without a default value follows a " "field with a default value. This is true whether this occurs in a single " @@ -324,7 +358,7 @@ msgstr "" "après un champ avec une valeur par défaut. C’est le cas que ce soit dans " "une seule classe ou si c’est le résultat d’un héritage de classes." -#: library/dataclasses.rst:183 +#: library/dataclasses.rst:210 msgid "" "For common and simple use cases, no other functionality is required. There " "are, however, some dataclass features that require additional per-field " @@ -338,12 +372,13 @@ msgstr "" "remplir ces métadonnées, il suffit de mettre un appel à la fonction :func:" "`field` à la place de la valeur par défaut, comme dans cet exemple :" -#: library/dataclasses.rst:196 +#: library/dataclasses.rst:223 +#, fuzzy msgid "" -"As shown above, the ``MISSING`` value is a sentinel object used to detect if " -"the ``default`` and ``default_factory`` parameters are provided. This " -"sentinel is used because ``None`` is a valid value for ``default``. No code " -"should directly use the ``MISSING`` value." +"As shown above, the :const:`MISSING` value is a sentinel object used to " +"detect if some parameters are provided by the user. This sentinel is used " +"because ``None`` is a valid value for some parameters with a distinct " +"meaning. No code should directly use the :const:`MISSING` value." msgstr "" "Comme le montre la signature, la valeur ``MISSING`` est une valeur " "sentinelle. Elle permet de déterminer si les paramètres ``default`` et " @@ -352,11 +387,11 @@ msgstr "" "sentinelle ``MISSING`` est interne au module et ne doit pas être utilisée " "dans vos programmes." -#: library/dataclasses.rst:202 +#: library/dataclasses.rst:228 msgid "The parameters to :func:`field` are:" msgstr "Les paramètres de :func:`field` sont :" -#: library/dataclasses.rst:204 +#: library/dataclasses.rst:230 msgid "" "``default``: If provided, this will be the default value for this field. " "This is needed because the :meth:`field` call itself replaces the normal " @@ -366,7 +401,7 @@ msgstr "" "L'appel à :meth:`field` est mis à la place normale de la valeur par défaut, " "d'où la nécessité de ce paramètre." -#: library/dataclasses.rst:208 +#: library/dataclasses.rst:234 msgid "" "``default_factory``: If provided, it must be a zero-argument callable that " "will be called when a default value is needed for this field. Among other " @@ -380,7 +415,7 @@ msgstr "" "les valeurs par défaut sont muables. Une erreur se produit si *default* et " "*default_factory* sont donnés tous les deux." -#: library/dataclasses.rst:214 +#: library/dataclasses.rst:240 msgid "" "``init``: If true (the default), this field is included as a parameter to " "the generated :meth:`__init__` method." @@ -388,7 +423,7 @@ msgstr "" "*init* : si vrai (par défaut), la méthode :meth:`__init__` générée possède " "un paramètre correspondant à ce champ." -#: library/dataclasses.rst:217 +#: library/dataclasses.rst:243 msgid "" "``repr``: If true (the default), this field is included in the string " "returned by the generated :meth:`__repr__` method." @@ -396,16 +431,7 @@ msgstr "" "*repr* : si vrai (par défaut), le champ est inclus dans les chaînes " "construites par la méthode :meth:`__repr__` générée." -#: library/dataclasses.rst:220 -msgid "" -"``compare``: If true (the default), this field is included in the generated " -"equality and comparison methods (:meth:`__eq__`, :meth:`__gt__`, et al.)." -msgstr "" -"*compare* : si vrai (par défaut), le champ est considéré dans les " -"comparaisons d'égalité et d'inégalité dans les méthodes générées :meth:" -"`__eq__`, :meth:`__gt__`, etc." - -#: library/dataclasses.rst:224 +#: library/dataclasses.rst:246 msgid "" "``hash``: This can be a bool or ``None``. If true, this field is included " "in the generated :meth:`__hash__` method. If ``None`` (the default), use " @@ -420,7 +446,7 @@ msgstr "" "hachage les champs employés pour les comparaisons. Il est déconseillé de " "mettre ce paramètre à autre chose que ``None``." -#: library/dataclasses.rst:231 +#: library/dataclasses.rst:253 msgid "" "One possible reason to set ``hash=False`` but ``compare=True`` would be if a " "field is expensive to compute a hash value for, that field is needed for " @@ -435,7 +461,16 @@ msgstr "" "moment, on peut alors se passer du champ dans le hachage tout en le faisant " "participer aux comparaisons." -#: library/dataclasses.rst:237 +#: library/dataclasses.rst:259 +msgid "" +"``compare``: If true (the default), this field is included in the generated " +"equality and comparison methods (:meth:`__eq__`, :meth:`__gt__`, et al.)." +msgstr "" +"*compare* : si vrai (par défaut), le champ est considéré dans les " +"comparaisons d'égalité et d'inégalité dans les méthodes générées :meth:" +"`__eq__`, :meth:`__gt__`, etc." + +#: library/dataclasses.rst:263 msgid "" "``metadata``: This can be a mapping or None. None is treated as an empty " "dict. This value is wrapped in :func:`~types.MappingProxyType` to make it " @@ -449,7 +484,13 @@ msgstr "" "tableau associatif devient accessible sur l'objet :class:`Field`, sous la " "forme d'un :func:`~types.MappingProxyType` afin qu'il soit en lecture seule." -#: library/dataclasses.rst:245 +#: library/dataclasses.rst:271 +msgid "" +"``kw_only``: If true, this field will be marked as keyword-only. This is " +"used when the generated :meth:`__init__` method's parameters are computed." +msgstr "" + +#: library/dataclasses.rst:277 msgid "" "If the default value of a field is specified by a call to :func:`field()`, " "then the class attribute for this field will be replaced by the specified " @@ -467,7 +508,7 @@ msgstr "" "des champs exactement comme si elles avaient été définies directement. Par " "exemple :" -#: library/dataclasses.rst:261 +#: library/dataclasses.rst:293 msgid "" "The class attribute ``C.z`` will be ``10``, the class attribute ``C.t`` will " "be ``20``, and the class attributes ``C.x`` and ``C.y`` will not be set." @@ -476,7 +517,7 @@ msgstr "" "l'attribut ``C.t`` vaut ``20``, alors que les attributs ``C.x`` et ``C.y`` " "n'existent pas." -#: library/dataclasses.rst:267 +#: library/dataclasses.rst:299 msgid "" ":class:`Field` objects describe each defined field. These objects are " "created internally, and are returned by the :func:`fields` module-level " @@ -489,25 +530,26 @@ msgstr "" "instancier un objet :class:`Field` eux-mêmes. Les attributs documentés sont " "les suivants :" -#: library/dataclasses.rst:272 +#: library/dataclasses.rst:304 msgid "``name``: The name of the field." msgstr "*name* : le nom du champ ;" -#: library/dataclasses.rst:274 +#: library/dataclasses.rst:306 msgid "``type``: The type of the field." msgstr "*type* : le type associé au champ par l'annotation ;" -#: library/dataclasses.rst:276 +#: library/dataclasses.rst:308 +#, fuzzy msgid "" "``default``, ``default_factory``, ``init``, ``repr``, ``hash``, ``compare``, " -"and ``metadata`` have the identical meaning and values as they do in the :" -"func:`field` declaration." +"``metadata``, and ``kw_only`` have the identical meaning and values as they " +"do in the :func:`field` function." msgstr "" "*default*, *default_factory*, *init*, *repr*, *hash*, *compare* et " "*metadata*, qui correspondent aux paramètres de :func:`field` et en prennent " "les valeurs." -#: library/dataclasses.rst:280 +#: library/dataclasses.rst:312 msgid "" "Other attributes may exist, but they are private and must not be inspected " "or relied on." @@ -515,7 +557,7 @@ msgstr "" "D'autres attributs peuvent exister, mais ils sont privés et ne sont pas " "censés être inspectés. Le code ne doit jamais reposer sur eux." -#: library/dataclasses.rst:285 +#: library/dataclasses.rst:317 msgid "" "Returns a tuple of :class:`Field` objects that define the fields for this " "dataclass. Accepts either a dataclass, or an instance of a dataclass. " @@ -528,7 +570,7 @@ msgstr "" "telle classe ; si ce n'est pas le cas, une exception :exc:`TypeError` est " "levée." -#: library/dataclasses.rst:292 +#: library/dataclasses.rst:324 msgid "" "Converts the dataclass ``instance`` to a dict (by using the factory function " "``dict_factory``). Each dataclass is converted to a dict of its fields, as " @@ -542,13 +584,13 @@ msgstr "" "convertir récursivement toutes les instances de classes de données qu'ils " "contiennent. Voici un exemple :" -#: library/dataclasses.rst:326 +#: library/dataclasses.rst:358 msgid "Raises :exc:`TypeError` if ``instance`` is not a dataclass instance." msgstr "" "Lève :exc:`TypeError` si *instance* n'est pas une instance d'une classe de " "données." -#: library/dataclasses.rst:316 +#: library/dataclasses.rst:348 msgid "" "Converts the dataclass ``instance`` to a tuple (by using the factory " "function ``tuple_factory``). Each dataclass is converted to a tuple of its " @@ -559,11 +601,12 @@ msgstr "" "*tuple_factory*. Cette fonction agit récursivement sur les dictionnaires, " "listes, *n*-uplets et instances de classes de données." -#: library/dataclasses.rst:321 +#: library/dataclasses.rst:353 msgid "Continuing from the previous example::" msgstr "Pour continuer l'exemple précédent :" -#: library/dataclasses.rst:330 +#: library/dataclasses.rst:362 +#, fuzzy msgid "" "Creates a new dataclass with name ``cls_name``, fields as defined in " "``fields``, base classes as given in ``bases``, and initialized with a " @@ -571,8 +614,8 @@ msgid "" "elements are each either ``name``, ``(name, type)``, or ``(name, type, " "Field)``. If just ``name`` is supplied, ``typing.Any`` is used for " "``type``. The values of ``init``, ``repr``, ``eq``, ``order``, " -"``unsafe_hash``, and ``frozen`` have the same meaning as they do in :func:" -"`dataclass`." +"``unsafe_hash``, ``frozen``, ``match_args``, ``kw_only``, and ``slots`` " +"have the same meaning as they do in :func:`dataclass`." msgstr "" "Crée une nouvelle classe de données avec le nom *cls_name*. Les champs " "proviennent de l'objet itérable *fields*. Les classes mères sont lues dans " @@ -583,7 +626,7 @@ msgstr "" "à savoir *init*, *repr*, *eq*, *order*, *unsafe_hash* et *frozen*, sont les " "mêmes que dans :func:`dataclass`." -#: library/dataclasses.rst:339 +#: library/dataclasses.rst:372 msgid "" "This function is not strictly required, because any Python mechanism for " "creating a new class with ``__annotations__`` can then apply the :func:" @@ -595,11 +638,11 @@ msgstr "" "``__annotation__`` et de lui appliquer la fonction :func:`dataclass`, qui la " "convertit en une classe de données. Par exemple, ceci :" -#: library/dataclasses.rst:351 +#: library/dataclasses.rst:384 msgid "Is equivalent to::" msgstr "est équivalent à :" -#: library/dataclasses.rst:364 +#: library/dataclasses.rst:397 msgid "" "Creates a new object of the same type as ``instance``, replacing fields with " "values from ``changes``. If ``instance`` is not a Data Class, raises :exc:" @@ -612,7 +655,7 @@ msgstr "" "est levée. De même, si une clé dans *changes* ne correspond à aucun champ de " "l'instance, :exc:`TypeError` est levée." -#: library/dataclasses.rst:369 +#: library/dataclasses.rst:402 msgid "" "The newly returned object is created by calling the :meth:`__init__` method " "of the dataclass. This ensures that :meth:`__post_init__`, if present, is " @@ -622,7 +665,7 @@ msgstr "" "classe de données, ce qui garantit que :meth:`__post_init__` est appelée (si " "elle existe)." -#: library/dataclasses.rst:373 +#: library/dataclasses.rst:406 msgid "" "Init-only variables without default values, if any exist, must be specified " "on the call to :func:`replace` so that they can be passed to :meth:" @@ -632,7 +675,7 @@ msgstr "" "il faut l'inclure dans l'appel à :func:`replace` afin qu'il soit passé à :" "meth:`__init__` et :meth:`__post_init__`." -#: library/dataclasses.rst:377 +#: library/dataclasses.rst:410 msgid "" "It is an error for ``changes`` to contain any fields that are defined as " "having ``init=False``. A :exc:`ValueError` will be raised in this case." @@ -640,7 +683,7 @@ msgstr "" "Si une clé de *changes* correspond à un champ défini avec ``init=False``, :" "exc:`ValueError` est levée." -#: library/dataclasses.rst:381 +#: library/dataclasses.rst:414 msgid "" "Be forewarned about how ``init=False`` fields work during a call to :func:" "`replace`. They are not copied from the source object, but rather are " @@ -658,7 +701,7 @@ msgstr "" "instances par des constructeurs de classe alternatifs, ou bien une méthode " "personnalisée ``replace()`` (ou un nom similaire)." -#: library/dataclasses.rst:392 +#: library/dataclasses.rst:425 msgid "" "Return ``True`` if its parameter is a dataclass or an instance of one, " "otherwise return ``False``." @@ -666,7 +709,7 @@ msgstr "" "Renvoie ``True`` si l'argument est soit une classe de données, soit une " "instance d'une telle classe. Sinon, renvoie ``False``." -#: library/dataclasses.rst:395 +#: library/dataclasses.rst:428 msgid "" "If you need to know if a class is an instance of a dataclass (and not a " "dataclass itself), then add a further check for ``not isinstance(obj, " @@ -676,11 +719,48 @@ msgstr "" "non pas lui-même une classe de données, ajoutez le test ``not " "isinstance(obj, type)``." -#: library/dataclasses.rst:403 +#: library/dataclasses.rst:437 +msgid "A sentinel value signifying a missing default or default_factory." +msgstr "" + +#: library/dataclasses.rst:441 +msgid "" +"A sentinel value used as a type annotation. Any fields after a pseudo-field " +"with the type of :const:`KW_ONLY` are marked as keyword-only fields. Note " +"that a pseudo-field of type :const:`KW_ONLY` is otherwise completely " +"ignored. This includes the name of such a field. By convention, a name of " +"``_`` is used for a :const:`KW_ONLY` field. Keyword-only fields signify :" +"meth:`__init__` parameters that must be specified as keywords when the class " +"is instantiated." +msgstr "" + +#: library/dataclasses.rst:450 +msgid "" +"In this example, the fields ``y`` and ``z`` will be marked as keyword-only " +"fields::" +msgstr "" + +#: library/dataclasses.rst:461 +msgid "" +"In a single dataclass, it is an error to specify more than one field whose " +"type is :const:`KW_ONLY`." +msgstr "" + +#: library/dataclasses.rst:466 +msgid "" +"Raised when an implicitly defined :meth:`__setattr__` or :meth:`__delattr__` " +"is called on a dataclass which was defined with ``frozen=True``. It is a " +"subclass of :exc:`AttributeError`." +msgstr "" +"Sous-classe de :exc:`AttributeError`, levée lorsqu'une méthode :meth:" +"`__setattr__` ou :meth:`__delattr__` définie implicitement est appelée dans " +"une classe de données définie avec ``frozen=True``." + +#: library/dataclasses.rst:471 msgid "Post-init processing" msgstr "Post-initialisation" -#: library/dataclasses.rst:405 +#: library/dataclasses.rst:473 msgid "" "The generated :meth:`__init__` code will call a method named :meth:" "`__post_init__`, if :meth:`__post_init__` is defined on the class. It will " @@ -697,7 +777,7 @@ msgstr "" "qu'elles ont été fournies à :meth:`__init__`. Si la classe est créée avec " "``init=False``, :meth:`__post_init__` n'est jamais appelée automatiquement." -#: library/dataclasses.rst:413 +#: library/dataclasses.rst:481 msgid "" "Among other uses, this allows for initializing field values that depend on " "one or more other fields. For example::" @@ -705,7 +785,7 @@ msgstr "" "Cette méthode permet, entre autres, d'initialiser des champs qui dépendent " "d'autres champs. Par exemple :" -#: library/dataclasses.rst:425 +#: library/dataclasses.rst:493 msgid "" "The :meth:`__init__` method generated by :func:`dataclass` does not call " "base class :meth:`__init__` methods. If the base class has an :meth:" @@ -717,7 +797,7 @@ msgstr "" "`dataclass`. S'il faut appeler ces méthodes :meth:`__init__`, il est courant " "de le faire dans :meth:`__post_init__` :" -#: library/dataclasses.rst:442 +#: library/dataclasses.rst:510 msgid "" "Note, however, that in general the dataclass-generated :meth:`__init__` " "methods don't need to be called, since the derived dataclass will take care " @@ -728,7 +808,7 @@ msgstr "" "classe de données, car la classe fille initialise elle-même les champs " "apportés par toute classe mère qui est aussi une classe de données." -#: library/dataclasses.rst:446 +#: library/dataclasses.rst:514 msgid "" "See the section below on init-only variables for ways to pass parameters to :" "meth:`__post_init__`. Also see the warning about how :func:`replace` " @@ -739,11 +819,11 @@ msgstr "" "l'avertissement sur le traitement par :func:`replace` des champs définis " "avec ``init=False``." -#: library/dataclasses.rst:451 +#: library/dataclasses.rst:519 msgid "Class variables" msgstr "Variables de classe" -#: library/dataclasses.rst:453 +#: library/dataclasses.rst:521 msgid "" "One of two places where :func:`dataclass` actually inspects the type of a " "field is to determine if a field is a class variable as defined in :pep:" @@ -759,11 +839,11 @@ msgstr "" "complètement ignorés du point de vue des classes de données. Ils " "n'apparaissent pas dans le résultat de :func:`fields`." -#: library/dataclasses.rst:462 +#: library/dataclasses.rst:530 msgid "Init-only variables" msgstr "Variables d'initialisation" -#: library/dataclasses.rst:464 +#: library/dataclasses.rst:532 msgid "" "The other place where :func:`dataclass` inspects a type annotation is to " "determine if a field is an init-only variable. It does this by seeing if " @@ -782,7 +862,7 @@ msgstr "" "Leurs valeurs sont passées à :meth:`__post_init__`, si cette méthode existe. " "C'est la seule manière dont elles sont utilisées." -#: library/dataclasses.rst:474 +#: library/dataclasses.rst:542 msgid "" "For example, suppose a field will be initialized from a database, if a value " "is not provided when creating the class::" @@ -790,7 +870,7 @@ msgstr "" "On peut par exemple imaginer un champ initialisé à partir d'une base de " "données s'il n'a pas reçu de valeur explicite :" -#: library/dataclasses.rst:489 +#: library/dataclasses.rst:557 msgid "" "In this case, :func:`fields` will return :class:`Field` objects for ``i`` " "and ``j``, but not for ``database``." @@ -798,11 +878,11 @@ msgstr "" "Ici, :func:`fields` renvoie des objets :class:`Field` correspondant à ``i`` " "et à ``j``, mais pas à ``database``." -#: library/dataclasses.rst:493 +#: library/dataclasses.rst:561 msgid "Frozen instances" msgstr "Instances figées" -#: library/dataclasses.rst:495 +#: library/dataclasses.rst:563 msgid "" "It is not possible to create truly immutable Python objects. However, by " "passing ``frozen=True`` to the :meth:`dataclass` decorator you can emulate " @@ -816,7 +896,7 @@ msgstr "" "lui fait générer des méthodes :meth:`__setattr__` et :meth:`__delattr__`. " "Celles-ci lèvent systématiquement l'exception :exc:`FrozenInstanceError`." -#: library/dataclasses.rst:501 +#: library/dataclasses.rst:569 msgid "" "There is a tiny performance penalty when using ``frozen=True``: :meth:" "`__init__` cannot use simple assignment to initialize fields, and must use :" @@ -826,11 +906,11 @@ msgstr "" "`__init__` doit passer par :meth:`object.__setattr__` au lieu de simples " "affectations pour initialiser les champs." -#: library/dataclasses.rst:506 +#: library/dataclasses.rst:574 msgid "Inheritance" msgstr "Héritage" -#: library/dataclasses.rst:508 +#: library/dataclasses.rst:576 msgid "" "When the dataclass is being created by the :meth:`dataclass` decorator, it " "looks through all of the class's base classes in reverse MRO (that is, " @@ -850,7 +930,7 @@ msgstr "" "tableau associatif. Puisqu'il est ordonné, les champs des classes filles " "écrasent ceux des classes mères. Voici un exemple :" -#: library/dataclasses.rst:528 +#: library/dataclasses.rst:596 msgid "" "The final list of fields is, in order, ``x``, ``y``, ``z``. The final type " "of ``x`` is ``int``, as specified in class ``C``." @@ -858,15 +938,51 @@ msgstr "" "La liste finale des champs contient, dans l'ordre, ``x``, ``y``, ``z``. Le " "type de ``x`` est ``int``, comme déclaré dans ``C``." -#: library/dataclasses.rst:531 +#: library/dataclasses.rst:599 msgid "The generated :meth:`__init__` method for ``C`` will look like::" msgstr "La méthode :meth:`__init__` générée pour ``C`` ressemble à :" -#: library/dataclasses.rst:536 +#: library/dataclasses.rst:604 +msgid "Re-ordering of keyword-only parameters in :meth:`__init__`" +msgstr "" + +#: library/dataclasses.rst:606 +msgid "" +"After the parameters needed for :meth:`__init__` are computed, any keyword-" +"only parameters are moved to come after all regular (non-keyword-only) " +"parameters. This is a requirement of how keyword-only parameters are " +"implemented in Python: they must come after non-keyword-only parameters." +msgstr "" + +#: library/dataclasses.rst:612 +msgid "" +"In this example, ``Base.y``, ``Base.w``, and ``D.t`` are keyword-only " +"fields, and ``Base.x`` and ``D.z`` are regular fields::" +msgstr "" + +#: library/dataclasses.rst:627 +#, fuzzy +msgid "The generated :meth:`__init__` method for ``D`` will look like::" +msgstr "La méthode :meth:`__init__` générée pour ``C`` ressemble à :" + +#: library/dataclasses.rst:631 +msgid "" +"Note that the parameters have been re-ordered from how they appear in the " +"list of fields: parameters derived from regular fields are followed by " +"parameters derived from keyword-only fields." +msgstr "" + +#: library/dataclasses.rst:635 +msgid "" +"The relative ordering of keyword-only parameters is maintained in the re-" +"ordered :meth:`__init__` parameter list." +msgstr "" + +#: library/dataclasses.rst:640 msgid "Default factory functions" msgstr "Fabriques de valeurs par défaut" -#: library/dataclasses.rst:538 +#: library/dataclasses.rst:642 msgid "" "If a :func:`field` specifies a ``default_factory``, it is called with zero " "arguments when a default value for the field is needed. For example, to " @@ -876,7 +992,7 @@ msgstr "" "qui est appelée sans argument pour fournir des valeurs par défaut. Par " "exemple, voici comment donner la valeur par défaut d'une liste vide :" -#: library/dataclasses.rst:544 +#: library/dataclasses.rst:648 msgid "" "If a field is excluded from :meth:`__init__` (using ``init=False``) and the " "field also specifies ``default_factory``, then the default factory function " @@ -888,11 +1004,11 @@ msgstr "" "chaque nouvelle instance, puisque c'est le seul moyen d'obtenir une valeur à " "laquelle initialiser le champ." -#: library/dataclasses.rst:551 +#: library/dataclasses.rst:655 msgid "Mutable default values" msgstr "Valeurs par défaut muables" -#: library/dataclasses.rst:553 +#: library/dataclasses.rst:657 msgid "" "Python stores default member variable values in class attributes. Consider " "this example, not using dataclasses::" @@ -900,7 +1016,7 @@ msgstr "" "En Python, les valeurs par défaut des attributs sont stockées dans des " "attributs de la classe. Observez cet exemple, sans classe de données :" -#: library/dataclasses.rst:568 +#: library/dataclasses.rst:672 msgid "" "Note that the two instances of class ``C`` share the same class variable " "``x``, as expected." @@ -908,24 +1024,26 @@ msgstr "" "Comme attendu, les deux instances de ``C`` partagent le même objet pour " "l'attribut ``x``." -#: library/dataclasses.rst:571 +#: library/dataclasses.rst:675 msgid "Using dataclasses, *if* this code was valid::" msgstr "Avec les classes de données, si ce code était valide :" -#: library/dataclasses.rst:579 +#: library/dataclasses.rst:683 msgid "it would generate code similar to::" msgstr "il générerait un code équivalent à :" -#: library/dataclasses.rst:590 +#: library/dataclasses.rst:694 +#, fuzzy msgid "" "This has the same issue as the original example using class ``C``. That is, " "two instances of class ``D`` that do not specify a value for ``x`` when " "creating a class instance will share the same copy of ``x``. Because " "dataclasses just use normal Python class creation they also share this " "behavior. There is no general way for Data Classes to detect this " -"condition. Instead, dataclasses will raise a :exc:`TypeError` if it detects " -"a default parameter of type ``list``, ``dict``, or ``set``. This is a " -"partial solution, but it does protect against many common errors." +"condition. Instead, the :func:`dataclass` decorator will raise a :exc:" +"`TypeError` if it detects a default parameter of type ``list``, ``dict``, or " +"``set``. This is a partial solution, but it does protect against many common " +"errors." msgstr "" "On se retrouve avec le même problème qu'au premier exemple avec la classe " "``C``. Les classes de données étant créées comme toutes les autres classes " @@ -937,7 +1055,7 @@ msgstr "" "défaut est de type ``list``, ``dict`` ou ``set``. Cette solution n'est pas " "parfaite, mais permet d'éviter la majorité des erreurs." -#: library/dataclasses.rst:600 +#: library/dataclasses.rst:705 msgid "" "Using default factory functions is a way to create new instances of mutable " "types as default values for fields::" @@ -945,16 +1063,8 @@ msgstr "" "Pour qu'un champ d'un type muable soit par défaut initialisé à un nouvel " "objet pour chaque instance, utilisez une fonction de fabrique :" -#: library/dataclasses.rst:610 -msgid "Exceptions" -msgstr "Exceptions" +#~ msgid "Module-level decorators, classes, and functions" +#~ msgstr "Décorateurs, classes et fonctions du module" -#: library/dataclasses.rst:614 -msgid "" -"Raised when an implicitly defined :meth:`__setattr__` or :meth:`__delattr__` " -"is called on a dataclass which was defined with ``frozen=True``. It is a " -"subclass of :exc:`AttributeError`." -msgstr "" -"Sous-classe de :exc:`AttributeError`, levée lorsqu'une méthode :meth:" -"`__setattr__` ou :meth:`__delattr__` définie implicitement est appelée dans " -"une classe de données définie avec ``frozen=True``." +#~ msgid "Exceptions" +#~ msgstr "Exceptions" diff --git a/library/datetime.po b/library/datetime.po index c6157edc4..2749ea1dc 100644 --- a/library/datetime.po +++ b/library/datetime.po @@ -5,10 +5,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-03-20 17:48+0100\n" "Last-Translator: Loc Cosnier \n" -"Language-Team: French \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -684,7 +684,7 @@ msgstr "" "Renvoie une chaîne de la forme objet :class:`timedelta` comme un appel " "construit avec des valeurs d'attributs canoniques." -#: library/datetime.rst:593 library/datetime.rst:2472 +#: library/datetime.rst:593 library/datetime.rst:2473 msgid "Notes:" msgstr "Notes :" @@ -2024,7 +2024,7 @@ msgstr "" "inférieure à un jour." #: library/datetime.rst:1868 library/datetime.rst:2220 -#: library/datetime.rst:2528 +#: library/datetime.rst:2529 msgid "The UTC offset is not restricted to a whole number of minutes." msgstr "Le décalage UTC peut aussi être autre chose qu'un ensemble de minutes." @@ -3609,7 +3609,7 @@ msgstr "000000, 000001, ..., 999999" msgid "\\(5)" msgstr "\\(5)" -#: library/datetime.rst:2526 +#: library/datetime.rst:2527 msgid "``%z``" msgstr "``%z``" @@ -3629,7 +3629,7 @@ msgstr "(vide), +0000, -0400, +1030, +063415, -030712.345216" msgid "\\(6)" msgstr "\\(6)" -#: library/datetime.rst:2550 +#: library/datetime.rst:2551 msgid "``%Z``" msgstr "``%Z``" @@ -3833,7 +3833,9 @@ msgid "" "The full set of format codes supported varies across platforms, because " "Python calls the platform C library's :func:`strftime` function, and " "platform variations are common. To see the full set of format codes " -"supported on your platform, consult the :manpage:`strftime(3)` documentation." +"supported on your platform, consult the :manpage:`strftime(3)` " +"documentation. There are also differences between platforms in handling of " +"unsupported format specifiers." msgstr "" "L'ensemble complet des codes de formatage implémentés varie selon les " "plateformes, parce que Python appelle la fonction :func:`strftime` de la " @@ -3841,15 +3843,15 @@ msgstr "" "voir un ensemble complet des codes de formatage implémentés par votre " "plateforme, consultez la documentation de :manpage:`strftime(3)`." -#: library/datetime.rst:2436 +#: library/datetime.rst:2437 msgid "``%G``, ``%u`` and ``%V`` were added." msgstr "``%G``, ``%u`` et ``%V`` ont été ajoutés." -#: library/datetime.rst:2440 +#: library/datetime.rst:2441 msgid "Technical Detail" msgstr "Détail technique" -#: library/datetime.rst:2442 +#: library/datetime.rst:2443 #, fuzzy msgid "" "Broadly speaking, ``d.strftime(fmt)`` acts like the :mod:`time` module's " @@ -3863,7 +3865,7 @@ msgstr "" "la fonction ``time.strftime(fmt, d.timetuple())`` du module :mod:`time`, " "bien que tous les objets ne comportent pas de méthode :meth:`timetuple`." -#: library/datetime.rst:2446 +#: library/datetime.rst:2447 msgid "" "For the :meth:`datetime.strptime` class method, the default value is " "``1900-01-01T00:00:00.000``: any components not specified in the format " @@ -3873,12 +3875,12 @@ msgstr "" "``1900-01-01T00:00:00.000`` : tous les composants non spécifiés dans la " "chaîne de formatage seront retirés de la valeur par défaut. [#]_" -#: library/datetime.rst:2450 +#: library/datetime.rst:2451 msgid "Using ``datetime.strptime(date_string, format)`` is equivalent to::" msgstr "" "L'utilisation de ``datetime.strptime(date_string, format)`` équivaut à ::" -#: library/datetime.rst:2454 +#: library/datetime.rst:2455 msgid "" "except when the format includes sub-second components or timezone offset " "information, which are supported in ``datetime.strptime`` but are discarded " @@ -3888,7 +3890,7 @@ msgstr "" "informations de décalage de fuseau horaire, qui sont prises en charge dans " "``datetime.strptime`` mais pas par ``time.strptime``." -#: library/datetime.rst:2458 +#: library/datetime.rst:2459 #, fuzzy msgid "" "For :class:`.time` objects, the format codes for year, month, and day should " @@ -3901,7 +3903,7 @@ msgstr "" "possèdent pas de telles valeurs. S'ils sont tout de même utilisés, ``1900`` " "est substitué à l'année, et ``1`` au mois et au jour." -#: library/datetime.rst:2462 +#: library/datetime.rst:2463 #, fuzzy msgid "" "For :class:`date` objects, the format codes for hours, minutes, seconds, and " @@ -3913,7 +3915,7 @@ msgstr "" "les objets :class:`date` ne possèdent pas de telles valeurs. S'ils sont " "tous de même utilisés, ils sont substitués par ``0``." -#: library/datetime.rst:2466 +#: library/datetime.rst:2467 msgid "" "For the same reason, handling of format strings containing Unicode code " "points that can't be represented in the charset of the current locale is " @@ -3928,7 +3930,7 @@ msgstr "" "plateformes ``strftime`` lève une :exc:`UnicodeError` ou renvoie une chaîne " "vide." -#: library/datetime.rst:2475 +#: library/datetime.rst:2476 msgid "" "Because the format depends on the current locale, care should be taken when " "making assumptions about the output value. Field orderings will vary (for " @@ -3947,7 +3949,7 @@ msgstr "" "utilisez :meth:`locale.getlocale` pour déterminer l'encodage de la locale " "courante)." -#: library/datetime.rst:2484 +#: library/datetime.rst:2485 msgid "" "The :meth:`strptime` method can parse years in the full [1, 9999] range, but " "years < 1000 must be zero-filled to 4-digit width." @@ -3956,7 +3958,7 @@ msgstr "" "[1, 9999], mais toutes les années < 1000 doivent être représentées sur " "quatre chiffres." -#: library/datetime.rst:2487 +#: library/datetime.rst:2488 msgid "" "In previous versions, :meth:`strftime` method was restricted to years >= " "1900." @@ -3964,13 +3966,13 @@ msgstr "" "Dans les versions précédentes, la méthode :meth:`strftime` était limitée aux " "années >= 1900." -#: library/datetime.rst:2491 +#: library/datetime.rst:2492 msgid "" "In version 3.2, :meth:`strftime` method was restricted to years >= 1000." msgstr "" "En version 3.2, la méthode :meth:`strftime` était limitée aux années >= 1000." -#: library/datetime.rst:2496 +#: library/datetime.rst:2497 msgid "" "When used with the :meth:`strptime` method, the ``%p`` directive only " "affects the output hour field if the ``%I`` directive is used to parse the " @@ -3980,7 +3982,7 @@ msgstr "" "n'affecte l'heure extraite que si la directive ``%I`` est utilisée pour " "analyser l'heure." -#: library/datetime.rst:2500 +#: library/datetime.rst:2501 msgid "" "Unlike the :mod:`time` module, the :mod:`datetime` module does not support " "leap seconds." @@ -3988,7 +3990,7 @@ msgstr "" "À l'inverse du module :mod:`time`, le module :mod:`datetime` ne gère pas les " "secondes intercalaires." -#: library/datetime.rst:2504 +#: library/datetime.rst:2505 #, fuzzy msgid "" "When used with the :meth:`strptime` method, the ``%f`` directive accepts " @@ -4002,7 +4004,7 @@ msgstr "" "caractères de formatage du standard C (mais implémentée séparément dans les " "objets *datetime*, la rendant ainsi toujours disponible)." -#: library/datetime.rst:2511 +#: library/datetime.rst:2512 msgid "" "For a naive object, the ``%z`` and ``%Z`` format codes are replaced by empty " "strings." @@ -4010,11 +4012,11 @@ msgstr "" "Pour les objets naïfs, les codes de formatage ``%z`` et ``%Z`` sont " "remplacés par des chaînes vides." -#: library/datetime.rst:2514 +#: library/datetime.rst:2515 msgid "For an aware object:" msgstr "Pour un objet avisé :" -#: library/datetime.rst:2517 +#: library/datetime.rst:2518 #, fuzzy msgid "" ":meth:`utcoffset` is transformed into a string of the form ``±HHMM[SS[." @@ -4038,7 +4040,7 @@ msgstr "" "``timedelta(hours=-3, minutes=-30)``, ``%z`` est remplacé par la chaîne " "`'-0330'``." -#: library/datetime.rst:2531 +#: library/datetime.rst:2532 msgid "" "When the ``%z`` directive is provided to the :meth:`strptime` method, the " "UTC offsets can have a colon as a separator between hours, minutes and " @@ -4050,7 +4052,7 @@ msgstr "" "minutes et secondes. Par exemple, ``'+01:00:00'``, est analysé comme un " "décalage d'une heure. Par ailleurs, ``'Z'`` est identique à ``'+00:00'``." -#: library/datetime.rst:2539 +#: library/datetime.rst:2540 #, fuzzy msgid "" "In :meth:`strftime`, ``%Z`` is replaced by an empty string if :meth:`tzname` " @@ -4061,19 +4063,19 @@ msgstr "" "vide. Autrement ``%Z`` est remplacé par la valeur renvoyée, qui doit être " "une chaîne." -#: library/datetime.rst:2543 +#: library/datetime.rst:2544 msgid ":meth:`strptime` only accepts certain values for ``%Z``:" msgstr ":meth:`strptime` accepte seulement certaines valeurs pour ``%Z`` :" -#: library/datetime.rst:2545 +#: library/datetime.rst:2546 msgid "any value in ``time.tzname`` for your machine's locale" msgstr "toute valeur dans ``time.tzname`` pour votre machine locale" -#: library/datetime.rst:2546 +#: library/datetime.rst:2547 msgid "the hard-coded values ``UTC`` and ``GMT``" msgstr "les valeurs ``UTC`` et ``GMT`` codés en dur" -#: library/datetime.rst:2548 +#: library/datetime.rst:2549 msgid "" "So someone living in Japan may have ``JST``, ``UTC``, and ``GMT`` as valid " "values, but probably not ``EST``. It will raise ``ValueError`` for invalid " @@ -4083,7 +4085,7 @@ msgstr "" "``UTC`` et ``GMT``, mais probablement pas ``EST``. Les valeurs invalides " "lèvent ``ValueError``." -#: library/datetime.rst:2552 +#: library/datetime.rst:2553 #, fuzzy msgid "" "When the ``%z`` directive is provided to the :meth:`strptime` method, an " @@ -4094,7 +4096,7 @@ msgstr "" "objet :class:`.datetime` avisé est construit. L'attribut ``tzinfo`` du " "résultat aura pour valeur une instance de :class:`timezone`." -#: library/datetime.rst:2558 +#: library/datetime.rst:2559 msgid "" "When used with the :meth:`strptime` method, ``%U`` and ``%W`` are only used " "in calculations when the day of the week and the calendar year (``%Y``) are " @@ -4104,7 +4106,7 @@ msgstr "" "et ``%W`` ne sont utilisées dans les calculs que si le jour de la semaine et " "l'année calendaire (``%Y``) sont spécifiés." -#: library/datetime.rst:2563 +#: library/datetime.rst:2564 msgid "" "Similar to ``%U`` and ``%W``, ``%V`` is only used in calculations when the " "day of the week and the ISO year (``%G``) are specified in a :meth:" @@ -4116,7 +4118,7 @@ msgstr "" "dans la chaîne de formatage :meth:`strptime`. Notez aussi que ``%G`` et ``" "%Y`` ne sont pas interchangeables." -#: library/datetime.rst:2569 +#: library/datetime.rst:2570 msgid "" "When used with the :meth:`strptime` method, the leading zero is optional " "for formats ``%d``, ``%m``, ``%H``, ``%I``, ``%M``, ``%S``, ``%J``, ``%U``, " @@ -4127,15 +4129,15 @@ msgstr "" "%M``, ``%S``, ``%J``, ``%U``, ``%W`` et ``%V``. Le format ``%y`` requiert un " "zéro en entête." -#: library/datetime.rst:2574 +#: library/datetime.rst:2575 msgid "Footnotes" msgstr "Notes" -#: library/datetime.rst:2575 +#: library/datetime.rst:2576 msgid "If, that is, we ignore the effects of Relativity" msgstr "Si on ignore les effets de la Relativité" -#: library/datetime.rst:2577 +#: library/datetime.rst:2578 #, fuzzy msgid "" "This matches the definition of the \"proleptic Gregorian\" calendar in " @@ -4153,7 +4155,7 @@ msgstr "" "base de tous les calculs. Référez-vous au livre pour les algorithmes de " "conversion entre calendriers grégorien proleptique et les autres systèmes." -#: library/datetime.rst:2583 +#: library/datetime.rst:2584 msgid "" "See R. H. van Gent's `guide to the mathematics of the ISO 8601 calendar " "`_ for a " @@ -4163,7 +4165,7 @@ msgstr "" "www.staff.science.uu.nl/~gent0113/calendar/isocalendar.htm>`_ pour une bonne " "explication." -#: library/datetime.rst:2587 +#: library/datetime.rst:2588 msgid "" "Passing ``datetime.strptime('Feb 29', '%b %d')`` will fail since ``1900`` is " "not a leap year." diff --git a/library/decimal.po b/library/decimal.po index 2dc929a75..e1e5f453c 100644 --- a/library/decimal.po +++ b/library/decimal.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-10-07 18:55+0200\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -1659,65 +1659,66 @@ msgstr "" #: library/decimal.rst:1487 msgid "" -"The default value is ``True``. If Python is compiled ``--without-decimal-" -"contextvar``, the C version uses a thread-local rather than a coroutine-" -"local context and the value is ``False``. This is slightly faster in some " -"nested context scenarios." +"The default value is ``True``. If Python is :option:`configured using the --" +"without-decimal-contextvar option <--without-decimal-contextvar>`, the C " +"version uses a thread-local rather than a coroutine-local context and the " +"value is ``False``. This is slightly faster in some nested context " +"scenarios." msgstr "" -#: library/decimal.rst:1491 +#: library/decimal.rst:1492 msgid "backported to 3.7 and 3.8." msgstr "" -#: library/decimal.rst:1495 +#: library/decimal.rst:1496 msgid "Rounding modes" msgstr "" -#: library/decimal.rst:1499 +#: library/decimal.rst:1500 msgid "Round towards :const:`Infinity`." msgstr "" -#: library/decimal.rst:1503 +#: library/decimal.rst:1504 msgid "Round towards zero." msgstr "" -#: library/decimal.rst:1507 +#: library/decimal.rst:1508 msgid "Round towards :const:`-Infinity`." msgstr "" -#: library/decimal.rst:1511 +#: library/decimal.rst:1512 msgid "Round to nearest with ties going towards zero." msgstr "" -#: library/decimal.rst:1515 +#: library/decimal.rst:1516 msgid "Round to nearest with ties going to nearest even integer." msgstr "" -#: library/decimal.rst:1519 +#: library/decimal.rst:1520 msgid "Round to nearest with ties going away from zero." msgstr "" -#: library/decimal.rst:1523 +#: library/decimal.rst:1524 msgid "Round away from zero." msgstr "" -#: library/decimal.rst:1527 +#: library/decimal.rst:1528 msgid "" "Round away from zero if last digit after rounding towards zero would have " "been 0 or 5; otherwise round towards zero." msgstr "" -#: library/decimal.rst:1534 +#: library/decimal.rst:1535 msgid "Signals" msgstr "" -#: library/decimal.rst:1536 +#: library/decimal.rst:1537 msgid "" "Signals represent conditions that arise during computation. Each corresponds " "to one context flag and one context trap enabler." msgstr "" -#: library/decimal.rst:1539 +#: library/decimal.rst:1540 msgid "" "The context flag is set whenever the condition is encountered. After the " "computation, flags may be checked for informational purposes (for instance, " @@ -1725,7 +1726,7 @@ msgid "" "sure to clear all flags before starting the next computation." msgstr "" -#: library/decimal.rst:1544 +#: library/decimal.rst:1545 msgid "" "If the context's trap enabler is set for the signal, then the condition " "causes a Python exception to be raised. For example, if the :class:" @@ -1733,26 +1734,26 @@ msgid "" "raised upon encountering the condition." msgstr "" -#: library/decimal.rst:1552 +#: library/decimal.rst:1553 msgid "Altered an exponent to fit representation constraints." msgstr "" -#: library/decimal.rst:1554 +#: library/decimal.rst:1555 msgid "" "Typically, clamping occurs when an exponent falls outside the context's :" "attr:`Emin` and :attr:`Emax` limits. If possible, the exponent is reduced " "to fit by adding zeros to the coefficient." msgstr "" -#: library/decimal.rst:1561 +#: library/decimal.rst:1562 msgid "Base class for other signals and a subclass of :exc:`ArithmeticError`." msgstr "" -#: library/decimal.rst:1566 +#: library/decimal.rst:1567 msgid "Signals the division of a non-infinite number by zero." msgstr "" -#: library/decimal.rst:1568 +#: library/decimal.rst:1569 msgid "" "Can occur with division, modulo division, or when raising a number to a " "negative power. If this signal is not trapped, returns :const:`Infinity` " @@ -1760,32 +1761,32 @@ msgid "" "calculation." msgstr "" -#: library/decimal.rst:1575 +#: library/decimal.rst:1576 msgid "Indicates that rounding occurred and the result is not exact." msgstr "" -#: library/decimal.rst:1577 +#: library/decimal.rst:1578 msgid "" "Signals when non-zero digits were discarded during rounding. The rounded " "result is returned. The signal flag or trap is used to detect when results " "are inexact." msgstr "" -#: library/decimal.rst:1584 +#: library/decimal.rst:1585 msgid "An invalid operation was performed." msgstr "" -#: library/decimal.rst:1586 +#: library/decimal.rst:1587 msgid "" "Indicates that an operation was requested that does not make sense. If not " "trapped, returns :const:`NaN`. Possible causes include::" msgstr "" -#: library/decimal.rst:1602 +#: library/decimal.rst:1603 msgid "Numerical overflow." msgstr "" -#: library/decimal.rst:1604 +#: library/decimal.rst:1605 msgid "" "Indicates the exponent is larger than :attr:`Emax` after rounding has " "occurred. If not trapped, the result depends on the rounding mode, either " @@ -1794,11 +1795,11 @@ msgid "" "`Rounded` are also signaled." msgstr "" -#: library/decimal.rst:1613 +#: library/decimal.rst:1614 msgid "Rounding occurred though possibly no information was lost." msgstr "" -#: library/decimal.rst:1615 +#: library/decimal.rst:1616 msgid "" "Signaled whenever rounding discards digits; even if those digits are zero " "(such as rounding :const:`5.00` to :const:`5.0`). If not trapped, returns " @@ -1806,31 +1807,31 @@ msgid "" "digits." msgstr "" -#: library/decimal.rst:1623 +#: library/decimal.rst:1624 msgid "Exponent was lower than :attr:`Emin` prior to rounding." msgstr "" -#: library/decimal.rst:1625 +#: library/decimal.rst:1626 msgid "" "Occurs when an operation result is subnormal (the exponent is too small). If " "not trapped, returns the result unchanged." msgstr "" -#: library/decimal.rst:1631 +#: library/decimal.rst:1632 msgid "Numerical underflow with result rounded to zero." msgstr "" -#: library/decimal.rst:1633 +#: library/decimal.rst:1634 msgid "" "Occurs when a subnormal result is pushed to zero by rounding. :class:" "`Inexact` and :class:`Subnormal` are also signaled." msgstr "" -#: library/decimal.rst:1639 +#: library/decimal.rst:1640 msgid "Enable stricter semantics for mixing floats and Decimals." msgstr "" -#: library/decimal.rst:1641 +#: library/decimal.rst:1642 msgid "" "If the signal is not trapped (default), mixing floats and Decimals is " "permitted in the :class:`~decimal.Decimal` constructor, :meth:`~decimal." @@ -1841,26 +1842,26 @@ msgid "" "Context.create_decimal_from_float` do not set the flag." msgstr "" -#: library/decimal.rst:1649 +#: library/decimal.rst:1650 msgid "" "Otherwise (the signal is trapped), only equality comparisons and explicit " "conversions are silent. All other mixed operations raise :exc:" "`FloatOperation`." msgstr "" -#: library/decimal.rst:1653 +#: library/decimal.rst:1654 msgid "The following table summarizes the hierarchy of signals::" msgstr "" -#: library/decimal.rst:1674 +#: library/decimal.rst:1675 msgid "Floating Point Notes" msgstr "" -#: library/decimal.rst:1678 +#: library/decimal.rst:1679 msgid "Mitigating round-off error with increased precision" msgstr "" -#: library/decimal.rst:1680 +#: library/decimal.rst:1681 msgid "" "The use of decimal floating point eliminates decimal representation error " "(making it possible to represent :const:`0.1` exactly); however, some " @@ -1868,7 +1869,7 @@ msgid "" "fixed precision." msgstr "" -#: library/decimal.rst:1684 +#: library/decimal.rst:1685 msgid "" "The effects of round-off error can be amplified by the addition or " "subtraction of nearly offsetting quantities resulting in loss of " @@ -1877,24 +1878,24 @@ msgid "" "of the associative and distributive properties of addition:" msgstr "" -#: library/decimal.rst:1708 +#: library/decimal.rst:1709 msgid "" "The :mod:`decimal` module makes it possible to restore the identities by " "expanding the precision sufficiently to avoid loss of significance:" msgstr "" -#: library/decimal.rst:1728 +#: library/decimal.rst:1729 msgid "Special values" msgstr "" -#: library/decimal.rst:1730 +#: library/decimal.rst:1731 msgid "" "The number system for the :mod:`decimal` module provides special values " "including :const:`NaN`, :const:`sNaN`, :const:`-Infinity`, :const:" "`Infinity`, and two zeros, :const:`+0` and :const:`-0`." msgstr "" -#: library/decimal.rst:1734 +#: library/decimal.rst:1735 msgid "" "Infinities can be constructed directly with: ``Decimal('Infinity')``. Also, " "they can arise from dividing by zero when the :exc:`DivisionByZero` signal " @@ -1903,14 +1904,14 @@ msgid "" "representable number." msgstr "" -#: library/decimal.rst:1739 +#: library/decimal.rst:1740 msgid "" "The infinities are signed (affine) and can be used in arithmetic operations " "where they get treated as very large, indeterminate numbers. For instance, " "adding a constant to infinity gives another infinite result." msgstr "" -#: library/decimal.rst:1743 +#: library/decimal.rst:1744 msgid "" "Some operations are indeterminate and return :const:`NaN`, or if the :exc:" "`InvalidOperation` signal is trapped, raise an exception. For example, " @@ -1921,14 +1922,14 @@ msgid "" "the calculation to proceed while flagging specific results as invalid." msgstr "" -#: library/decimal.rst:1751 +#: library/decimal.rst:1752 msgid "" "A variant is :const:`sNaN` which signals rather than remaining quiet after " "every operation. This is a useful return value when an invalid result needs " "to interrupt a calculation for special handling." msgstr "" -#: library/decimal.rst:1755 +#: library/decimal.rst:1756 msgid "" "The behavior of Python's comparison operators can be a little surprising " "where a :const:`NaN` is involved. A test for equality where one of the " @@ -1945,7 +1946,7 @@ msgid "" "methods instead." msgstr "" -#: library/decimal.rst:1768 +#: library/decimal.rst:1769 msgid "" "The signed zeros can result from calculations that underflow. They keep the " "sign that would have resulted if the calculation had been carried out to " @@ -1953,7 +1954,7 @@ msgid "" "negative zeros are treated as equal and their sign is informational." msgstr "" -#: library/decimal.rst:1773 +#: library/decimal.rst:1774 msgid "" "In addition to the two signed zeros which are distinct yet equal, there are " "various representations of zero with differing precisions yet equivalent in " @@ -1962,11 +1963,11 @@ msgid "" "that the following calculation returns a value equal to zero:" msgstr "" -#: library/decimal.rst:1788 +#: library/decimal.rst:1789 msgid "Working with threads" msgstr "" -#: library/decimal.rst:1790 +#: library/decimal.rst:1791 msgid "" "The :func:`getcontext` function accesses a different :class:`Context` object " "for each thread. Having separate thread contexts means that threads may " @@ -1974,20 +1975,20 @@ msgid "" "other threads." msgstr "" -#: library/decimal.rst:1794 +#: library/decimal.rst:1795 msgid "" "Likewise, the :func:`setcontext` function automatically assigns its target " "to the current thread." msgstr "" -#: library/decimal.rst:1797 +#: library/decimal.rst:1798 msgid "" "If :func:`setcontext` has not been called before :func:`getcontext`, then :" "func:`getcontext` will automatically create a new context for use in the " "current thread." msgstr "" -#: library/decimal.rst:1801 +#: library/decimal.rst:1802 msgid "" "The new context is copied from a prototype context called *DefaultContext*. " "To control the defaults so that each thread will use the same values " @@ -1996,21 +1997,21 @@ msgid "" "a race condition between threads calling :func:`getcontext`. For example::" msgstr "" -#: library/decimal.rst:1826 +#: library/decimal.rst:1827 msgid "Recipes" msgstr "Cas pratiques" -#: library/decimal.rst:1828 +#: library/decimal.rst:1829 msgid "" "Here are a few recipes that serve as utility functions and that demonstrate " "ways to work with the :class:`Decimal` class::" msgstr "" -#: library/decimal.rst:1983 +#: library/decimal.rst:1984 msgid "Decimal FAQ" msgstr "FAQ *decimal*" -#: library/decimal.rst:1985 +#: library/decimal.rst:1986 msgid "" "Q. It is cumbersome to type ``decimal.Decimal('1234.5')``. Is there a way " "to minimize typing when using the interactive interpreter?" @@ -2018,31 +2019,31 @@ msgstr "" "Q. C'est fastidieux de taper ``decimal.Decimal('1234.5')``. Y a-t-il un " "moyen de réduire la frappe quand on utilise l'interpréteur interactif ?" -#: library/decimal.rst:1988 +#: library/decimal.rst:1989 msgid "A. Some users abbreviate the constructor to just a single letter:" msgstr "" "R. Certains utilisateurs abrègent le constructeur en une seule lettre :" -#: library/decimal.rst:1994 +#: library/decimal.rst:1995 msgid "" "Q. In a fixed-point application with two decimal places, some inputs have " "many places and need to be rounded. Others are not supposed to have excess " "digits and need to be validated. What methods should be used?" msgstr "" -#: library/decimal.rst:1998 +#: library/decimal.rst:1999 msgid "" "A. The :meth:`quantize` method rounds to a fixed number of decimal places. " "If the :const:`Inexact` trap is set, it is also useful for validation:" msgstr "" -#: library/decimal.rst:2016 +#: library/decimal.rst:2017 msgid "" "Q. Once I have valid two place inputs, how do I maintain that invariant " "throughout an application?" msgstr "" -#: library/decimal.rst:2019 +#: library/decimal.rst:2020 msgid "" "A. Some operations like addition, subtraction, and multiplication by an " "integer will automatically preserve fixed point. Others operations, like " @@ -2050,13 +2051,13 @@ msgid "" "places and need to be followed-up with a :meth:`quantize` step:" msgstr "" -#: library/decimal.rst:2037 +#: library/decimal.rst:2038 msgid "" "In developing fixed-point applications, it is convenient to define functions " "to handle the :meth:`quantize` step:" msgstr "" -#: library/decimal.rst:2050 +#: library/decimal.rst:2051 msgid "" "Q. There are many ways to express the same value. The numbers :const:" "`200`, :const:`200.000`, :const:`2E2`, and :const:`.02E+4` all have the same " @@ -2064,19 +2065,19 @@ msgid "" "recognizable canonical value?" msgstr "" -#: library/decimal.rst:2055 +#: library/decimal.rst:2056 msgid "" "A. The :meth:`normalize` method maps all equivalent values to a single " "representative:" msgstr "" -#: library/decimal.rst:2062 +#: library/decimal.rst:2063 msgid "" "Q. Some decimal values always print with exponential notation. Is there a " "way to get a non-exponential representation?" msgstr "" -#: library/decimal.rst:2065 +#: library/decimal.rst:2066 msgid "" "A. For some values, exponential notation is the only way to express the " "number of significant places in the coefficient. For example, expressing :" @@ -2084,31 +2085,31 @@ msgid "" "original's two-place significance." msgstr "" -#: library/decimal.rst:2070 +#: library/decimal.rst:2071 msgid "" "If an application does not care about tracking significance, it is easy to " "remove the exponent and trailing zeroes, losing significance, but keeping " "the value unchanged:" msgstr "" -#: library/decimal.rst:2080 +#: library/decimal.rst:2081 msgid "Q. Is there a way to convert a regular float to a :class:`Decimal`?" msgstr "" -#: library/decimal.rst:2082 +#: library/decimal.rst:2083 msgid "" "A. Yes, any binary floating point number can be exactly expressed as a " "Decimal though an exact conversion may take more precision than intuition " "would suggest:" msgstr "" -#: library/decimal.rst:2091 +#: library/decimal.rst:2092 msgid "" "Q. Within a complex calculation, how can I make sure that I haven't gotten a " "spurious result because of insufficient precision or rounding anomalies." msgstr "" -#: library/decimal.rst:2094 +#: library/decimal.rst:2095 msgid "" "A. The decimal module makes it easy to test results. A best practice is to " "re-run calculations using greater precision and with various rounding modes. " @@ -2116,14 +2117,14 @@ msgid "" "issues, ill-conditioned inputs, or a numerically unstable algorithm." msgstr "" -#: library/decimal.rst:2099 +#: library/decimal.rst:2100 msgid "" "Q. I noticed that context precision is applied to the results of operations " "but not to the inputs. Is there anything to watch out for when mixing " "values of different precisions?" msgstr "" -#: library/decimal.rst:2103 +#: library/decimal.rst:2104 msgid "" "A. Yes. The principle is that all values are considered to be exact and so " "is the arithmetic on those values. Only the results are rounded. The " @@ -2132,23 +2133,23 @@ msgid "" "haven't been rounded:" msgstr "" -#: library/decimal.rst:2116 +#: library/decimal.rst:2117 msgid "" "The solution is either to increase precision or to force rounding of inputs " "using the unary plus operation:" msgstr "" -#: library/decimal.rst:2125 +#: library/decimal.rst:2126 msgid "" "Alternatively, inputs can be rounded upon creation using the :meth:`Context." "create_decimal` method:" msgstr "" -#: library/decimal.rst:2131 +#: library/decimal.rst:2132 msgid "Q. Is the CPython implementation fast for large numbers?" msgstr "" -#: library/decimal.rst:2133 +#: library/decimal.rst:2134 msgid "" "A. Yes. In the CPython and PyPy3 implementations, the C/CFFI versions of " "the decimal module integrate the high speed `libmpdec \n" "Language-Team: FRENCH \n" @@ -32,142 +32,146 @@ msgid "" "setting the :envvar:`PYTHONDEVMODE` environment variable to ``1``." msgstr "" -#: library/devmode.rst:17 -msgid "Effects of the Python Development Mode" +#: library/devmode.rst:16 +msgid "See also :ref:`Python debug build `." msgstr "" #: library/devmode.rst:19 +msgid "Effects of the Python Development Mode" +msgstr "" + +#: library/devmode.rst:21 msgid "" "Enabling the Python Development Mode is similar to the following command, " "but with additional effects described below::" msgstr "" -#: library/devmode.rst:24 +#: library/devmode.rst:26 msgid "Effects of the Python Development Mode:" msgstr "" -#: library/devmode.rst:26 +#: library/devmode.rst:28 msgid "" "Add ``default`` :ref:`warning filter `. The " "following warnings are shown:" msgstr "" -#: library/devmode.rst:29 +#: library/devmode.rst:31 msgid ":exc:`DeprecationWarning`" msgstr ":exc:`DeprecationWarning`" -#: library/devmode.rst:30 +#: library/devmode.rst:32 msgid ":exc:`ImportWarning`" msgstr ":exc:`ImportWarning`" -#: library/devmode.rst:31 +#: library/devmode.rst:33 msgid ":exc:`PendingDeprecationWarning`" msgstr ":exc:`PendingDeprecationWarning`" -#: library/devmode.rst:32 +#: library/devmode.rst:34 msgid ":exc:`ResourceWarning`" msgstr ":exc:`ResourceWarning`" -#: library/devmode.rst:34 +#: library/devmode.rst:36 msgid "" "Normally, the above warnings are filtered by the default :ref:`warning " "filters `." msgstr "" -#: library/devmode.rst:37 +#: library/devmode.rst:39 msgid "" "It behaves as if the :option:`-W default <-W>` command line option is used." msgstr "" -#: library/devmode.rst:39 +#: library/devmode.rst:41 msgid "" "Use the :option:`-W error <-W>` command line option or set the :envvar:" "`PYTHONWARNINGS` environment variable to ``error`` to treat warnings as " "errors." msgstr "" -#: library/devmode.rst:43 +#: library/devmode.rst:45 msgid "Install debug hooks on memory allocators to check for:" msgstr "" -#: library/devmode.rst:45 +#: library/devmode.rst:47 msgid "Buffer underflow" msgstr "" -#: library/devmode.rst:46 +#: library/devmode.rst:48 msgid "Buffer overflow" msgstr "" -#: library/devmode.rst:47 +#: library/devmode.rst:49 msgid "Memory allocator API violation" msgstr "" -#: library/devmode.rst:48 +#: library/devmode.rst:50 msgid "Unsafe usage of the GIL" msgstr "" -#: library/devmode.rst:50 +#: library/devmode.rst:52 msgid "See the :c:func:`PyMem_SetupDebugHooks` C function." msgstr "" -#: library/devmode.rst:52 +#: library/devmode.rst:54 msgid "" "It behaves as if the :envvar:`PYTHONMALLOC` environment variable is set to " "``debug``." msgstr "" -#: library/devmode.rst:55 +#: library/devmode.rst:57 msgid "" "To enable the Python Development Mode without installing debug hooks on " "memory allocators, set the :envvar:`PYTHONMALLOC` environment variable to " "``default``." msgstr "" -#: library/devmode.rst:59 +#: library/devmode.rst:61 msgid "" "Call :func:`faulthandler.enable` at Python startup to install handlers for " "the :const:`SIGSEGV`, :const:`SIGFPE`, :const:`SIGABRT`, :const:`SIGBUS` " "and :const:`SIGILL` signals to dump the Python traceback on a crash." msgstr "" -#: library/devmode.rst:63 +#: library/devmode.rst:65 msgid "" "It behaves as if the :option:`-X faulthandler <-X>` command line option is " "used or if the :envvar:`PYTHONFAULTHANDLER` environment variable is set to " "``1``." msgstr "" -#: library/devmode.rst:67 +#: library/devmode.rst:69 msgid "" "Enable :ref:`asyncio debug mode `. For example, :mod:" "`asyncio` checks for coroutines that were not awaited and logs them." msgstr "" -#: library/devmode.rst:70 +#: library/devmode.rst:72 msgid "" "It behaves as if the :envvar:`PYTHONASYNCIODEBUG` environment variable is " "set to ``1``." msgstr "" -#: library/devmode.rst:73 +#: library/devmode.rst:75 msgid "" "Check the *encoding* and *errors* arguments for string encoding and decoding " "operations. Examples: :func:`open`, :meth:`str.encode` and :meth:`bytes." "decode`." msgstr "" -#: library/devmode.rst:77 +#: library/devmode.rst:79 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." msgstr "" -#: library/devmode.rst:81 +#: library/devmode.rst:83 msgid "The :class:`io.IOBase` destructor logs ``close()`` exceptions." msgstr "" -#: library/devmode.rst:82 +#: library/devmode.rst:84 msgid "" "Set the :attr:`~sys.flags.dev_mode` attribute of :attr:`sys.flags` to " "``True``." @@ -175,7 +179,7 @@ msgstr "" "Définit l'attribut :attr:`~sys.flags.dev_mode` de :attr:`sys.flags` à " "``True``" -#: library/devmode.rst:85 +#: library/devmode.rst:87 msgid "" "The Python Development Mode does not enable the :mod:`tracemalloc` module by " "default, because the overhead cost (to performance and memory) would be too " @@ -186,57 +190,63 @@ msgid "" "allocated." msgstr "" -#: library/devmode.rst:92 +#: library/devmode.rst:94 msgid "" "The Python Development Mode does not prevent the :option:`-O` command line " "option from removing :keyword:`assert` statements nor from setting :const:" "`__debug__` to ``False``." msgstr "" -#: library/devmode.rst:96 +#: library/devmode.rst:98 +msgid "" +"The Python Development Mode can only be enabled at the Python startup. Its " +"value can be read from :data:`sys.flags.dev_mode `." +msgstr "" + +#: library/devmode.rst:101 msgid "The :class:`io.IOBase` destructor now logs ``close()`` exceptions." msgstr "" -#: library/devmode.rst:99 +#: library/devmode.rst:104 msgid "" "The *encoding* and *errors* arguments are now checked for string encoding " "and decoding operations." msgstr "" -#: library/devmode.rst:105 +#: library/devmode.rst:110 msgid "ResourceWarning Example" msgstr "" -#: library/devmode.rst:107 +#: library/devmode.rst:112 msgid "" "Example of a script counting the number of lines of the text file specified " "in the command line::" msgstr "" -#: library/devmode.rst:121 +#: library/devmode.rst:126 msgid "" "The script does not close the file explicitly. By default, Python does not " "emit any warning. Example using README.txt, which has 269 lines:" msgstr "" -#: library/devmode.rst:129 +#: library/devmode.rst:134 msgid "" "Enabling the Python Development Mode displays a :exc:`ResourceWarning` " "warning:" msgstr "" -#: library/devmode.rst:139 +#: library/devmode.rst:144 msgid "" "In addition, enabling :mod:`tracemalloc` shows the line where the file was " "opened:" msgstr "" -#: library/devmode.rst:154 +#: library/devmode.rst:159 msgid "" "The fix is to close explicitly the file. Example using a context manager::" msgstr "" -#: library/devmode.rst:162 +#: library/devmode.rst:167 msgid "" "Not closing a resource explicitly can leave a resource open for way longer " "than expected; it can cause severe issues upon exiting Python. It is bad in " @@ -244,25 +254,25 @@ msgid "" "application more deterministic and more reliable." msgstr "" -#: library/devmode.rst:169 +#: library/devmode.rst:174 msgid "Bad file descriptor error example" msgstr "" -#: library/devmode.rst:171 +#: library/devmode.rst:176 msgid "Script displaying the first line of itself::" msgstr "" -#: library/devmode.rst:184 +#: library/devmode.rst:189 msgid "By default, Python does not emit any warning:" msgstr "" -#: library/devmode.rst:191 +#: library/devmode.rst:196 msgid "" "The Python Development Mode shows a :exc:`ResourceWarning` and logs a \"Bad " "file descriptor\" error when finalizing the file object:" msgstr "" -#: library/devmode.rst:207 +#: library/devmode.rst:212 msgid "" "``os.close(fp.fileno())`` closes the file descriptor. When the file object " "finalizer tries to close the file descriptor again, it fails with the ``Bad " @@ -271,7 +281,7 @@ msgid "" "`18748` for an example)." msgstr "" -#: library/devmode.rst:213 +#: library/devmode.rst:218 msgid "" "The fix is to remove the ``os.close(fp.fileno())`` line, or open the file " "with ``closefd=False``." diff --git a/library/difflib.po b/library/difflib.po index 4790874a3..d3c633f6d 100644 --- a/library/difflib.po +++ b/library/difflib.po @@ -8,7 +8,7 @@ msgstr "" "POT-Creation-Date: 2020-10-01 16:00+0200\n" "PO-Revision-Date: 2020-10-15 09:15+0200\n" "Last-Translator: Loc Cosnier \n" -"Language-Team: French \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff --git a/library/dis.po b/library/dis.po index bd017d256..b88095320 100644 --- a/library/dis.po +++ b/library/dis.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-24 17:33+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-07-18 21:03+0200\n" "Last-Translator: Aya Keddam \n" "Language-Team: FRENCH \n" @@ -791,10 +791,13 @@ msgid "" msgstr "" #: library/dis.rst:711 -msgid "Re-raises the exception currently on top of the stack." +msgid "" +"Re-raises the exception currently on top of the stack. If oparg is non-zero, " +"restores ``f_lasti`` of the current frame to its value when the exception " +"was raised." msgstr "" -#: library/dis.rst:718 +#: library/dis.rst:719 msgid "" "Calls the function in position 7 on the stack with the top three items on " "the stack as arguments. Used to implement the call ``context_manager." @@ -802,23 +805,23 @@ msgid "" "statement." msgstr "" -#: library/dis.rst:728 +#: library/dis.rst:729 msgid "" "Pushes :exc:`AssertionError` onto the stack. Used by the :keyword:`assert` " "statement." msgstr "" -#: library/dis.rst:736 +#: library/dis.rst:737 msgid "" "Pushes :func:`builtins.__build_class__` onto the stack. It is later called " "by :opcode:`CALL_FUNCTION` to construct a class." msgstr "" -#: library/dis.rst:742 +#: library/dis.rst:743 msgid "" "This opcode performs several operations before a with block starts. First, " "it loads :meth:`~object.__exit__` from the context manager and pushes it " -"onto the stack for later use by :opcode:`WITH_CLEANUP_START`. Then, :meth:" +"onto the stack for later use by :opcode:`WITH_EXCEPT_START`. Then, :meth:" "`~object.__enter__` is called, and a finally block pointing to *delta* is " "pushed. Finally, the result of calling the ``__enter__()`` method is pushed " "onto the stack. The next opcode will either ignore it (:opcode:`POP_TOP`), " @@ -826,30 +829,66 @@ msgid "" "or :opcode:`UNPACK_SEQUENCE`)." msgstr "" -#: library/dis.rst:754 +#: library/dis.rst:757 +msgid "" +"TOS is a tuple of mapping keys, and TOS1 is the match subject. Replace TOS " +"with a :class:`dict` formed from the items of TOS1, but without any of the " +"keys in TOS." +msgstr "" + +#: library/dis.rst:766 +msgid "Push ``len(TOS)`` onto the stack." +msgstr "" + +#: library/dis.rst:773 +msgid "" +"If TOS is an instance of :class:`collections.abc.Mapping` (or, more " +"technically: if it has the :const:`Py_TPFLAGS_MAPPING` flag set in its :c:" +"member:`~PyTypeObject.tp_flags`), push ``True`` onto the stack. Otherwise, " +"push ``False``." +msgstr "" + +#: library/dis.rst:783 +msgid "" +"If TOS is an instance of :class:`collections.abc.Sequence` and is *not* an " +"instance of :class:`str`/:class:`bytes`/:class:`bytearray` (or, more " +"technically: if it has the :const:`Py_TPFLAGS_SEQUENCE` flag set in its :c:" +"member:`~PyTypeObject.tp_flags`), push ``True`` onto the stack. Otherwise, " +"push ``False``." +msgstr "" + +#: library/dis.rst:793 +msgid "" +"TOS is a tuple of mapping keys, and TOS1 is the match subject. If TOS1 " +"contains all of the keys in TOS, push a :class:`tuple` containing the " +"corresponding values, followed by ``True``. Otherwise, push ``None``, " +"followed by ``False``." +msgstr "" + +#: library/dis.rst:801 msgid "All of the following opcodes use their arguments." msgstr "" -#: library/dis.rst:758 +#: library/dis.rst:805 msgid "" "Implements ``name = TOS``. *namei* is the index of *name* in the attribute :" "attr:`co_names` of the code object. The compiler tries to use :opcode:" "`STORE_FAST` or :opcode:`STORE_GLOBAL` if possible." msgstr "" -#: library/dis.rst:765 +#: library/dis.rst:812 msgid "" "Implements ``del name``, where *namei* is the index into :attr:`co_names` " "attribute of the code object." msgstr "" -#: library/dis.rst:771 +#: library/dis.rst:818 msgid "" "Unpacks TOS into *count* individual values, which are put onto the stack " "right-to-left." msgstr "" -#: library/dis.rst:777 +#: library/dis.rst:824 msgid "" "Implements assignment with a starred target: Unpacks an iterable in TOS into " "individual values, where the total number of values can be smaller than the " @@ -857,119 +896,119 @@ msgid "" "leftover items." msgstr "" -#: library/dis.rst:782 +#: library/dis.rst:829 msgid "" "The low byte of *counts* is the number of values before the list value, the " "high byte of *counts* the number of values after it. The resulting values " "are put onto the stack right-to-left." msgstr "" -#: library/dis.rst:789 +#: library/dis.rst:836 msgid "" "Implements ``TOS.name = TOS1``, where *namei* is the index of name in :attr:" "`co_names`." msgstr "" -#: library/dis.rst:795 +#: library/dis.rst:842 msgid "" "Implements ``del TOS.name``, using *namei* as index into :attr:`co_names`." msgstr "" -#: library/dis.rst:800 +#: library/dis.rst:847 msgid "Works as :opcode:`STORE_NAME`, but stores the name as a global." msgstr "" -#: library/dis.rst:805 +#: library/dis.rst:852 msgid "Works as :opcode:`DELETE_NAME`, but deletes a global name." msgstr "" -#: library/dis.rst:810 +#: library/dis.rst:857 msgid "Pushes ``co_consts[consti]`` onto the stack." msgstr "" -#: library/dis.rst:815 +#: library/dis.rst:862 msgid "Pushes the value associated with ``co_names[namei]`` onto the stack." msgstr "" -#: library/dis.rst:820 +#: library/dis.rst:867 msgid "" "Creates a tuple consuming *count* items from the stack, and pushes the " "resulting tuple onto the stack." msgstr "" -#: library/dis.rst:826 +#: library/dis.rst:873 msgid "Works as :opcode:`BUILD_TUPLE`, but creates a list." msgstr "" -#: library/dis.rst:831 +#: library/dis.rst:878 msgid "Works as :opcode:`BUILD_TUPLE`, but creates a set." msgstr "" -#: library/dis.rst:836 +#: library/dis.rst:883 msgid "" "Pushes a new dictionary object onto the stack. Pops ``2 * count`` items so " "that the dictionary holds *count* entries: ``{..., TOS3: TOS2, TOS1: TOS}``." msgstr "" -#: library/dis.rst:840 +#: library/dis.rst:887 msgid "" "The dictionary is created from stack items instead of creating an empty " "dictionary pre-sized to hold *count* items." msgstr "" -#: library/dis.rst:847 +#: library/dis.rst:894 msgid "" "The version of :opcode:`BUILD_MAP` specialized for constant keys. Pops the " "top element on the stack which contains a tuple of keys, then starting from " "``TOS1``, pops *count* values to form values in the built dictionary." msgstr "" -#: library/dis.rst:856 +#: library/dis.rst:903 msgid "" "Concatenates *count* strings from the stack and pushes the resulting string " "onto the stack." msgstr "" -#: library/dis.rst:864 +#: library/dis.rst:911 msgid "" "Pops a list from the stack and pushes a tuple containing the same values." msgstr "" -#: library/dis.rst:871 +#: library/dis.rst:918 msgid "Calls ``list.extend(TOS1[-i], TOS)``. Used to build lists." msgstr "" -#: library/dis.rst:878 +#: library/dis.rst:925 msgid "Calls ``set.update(TOS1[-i], TOS)``. Used to build sets." msgstr "" -#: library/dis.rst:885 +#: library/dis.rst:932 msgid "Calls ``dict.update(TOS1[-i], TOS)``. Used to build dicts." msgstr "" -#: library/dis.rst:892 +#: library/dis.rst:939 msgid "Like :opcode:`DICT_UPDATE` but raises an exception for duplicate keys." msgstr "" -#: library/dis.rst:899 +#: library/dis.rst:946 msgid "Replaces TOS with ``getattr(TOS, co_names[namei])``." msgstr "" -#: library/dis.rst:904 +#: library/dis.rst:951 msgid "" "Performs a Boolean operation. The operation name can be found in " "``cmp_op[opname]``." msgstr "" -#: library/dis.rst:910 +#: library/dis.rst:957 msgid "Performs ``is`` comparison, or ``is not`` if ``invert`` is 1." msgstr "" -#: library/dis.rst:917 +#: library/dis.rst:964 msgid "Performs ``in`` comparison, or ``not in`` if ``invert`` is 1." msgstr "" -#: library/dis.rst:924 +#: library/dis.rst:971 msgid "" "Imports the module ``co_names[namei]``. TOS and TOS1 are popped and provide " "the *fromlist* and *level* arguments of :func:`__import__`. The module " @@ -978,48 +1017,48 @@ msgid "" "modifies the namespace." msgstr "" -#: library/dis.rst:933 +#: library/dis.rst:980 msgid "" "Loads the attribute ``co_names[namei]`` from the module found in TOS. The " "resulting object is pushed onto the stack, to be subsequently stored by a :" "opcode:`STORE_FAST` instruction." msgstr "" -#: library/dis.rst:940 +#: library/dis.rst:987 msgid "Increments bytecode counter by *delta*." msgstr "" -#: library/dis.rst:945 +#: library/dis.rst:992 msgid "If TOS is true, sets the bytecode counter to *target*. TOS is popped." msgstr "" -#: library/dis.rst:952 +#: library/dis.rst:999 msgid "If TOS is false, sets the bytecode counter to *target*. TOS is popped." msgstr "" -#: library/dis.rst:958 +#: library/dis.rst:1005 msgid "" "Tests whether the second value on the stack is an exception matching TOS, " "and jumps if it is not. Pops two values from the stack." msgstr "" -#: library/dis.rst:966 +#: library/dis.rst:1013 msgid "" "If TOS is true, sets the bytecode counter to *target* and leaves TOS on the " "stack. Otherwise (TOS is false), TOS is popped." msgstr "" -#: library/dis.rst:974 +#: library/dis.rst:1021 msgid "" "If TOS is false, sets the bytecode counter to *target* and leaves TOS on the " "stack. Otherwise (TOS is true), TOS is popped." msgstr "" -#: library/dis.rst:982 +#: library/dis.rst:1029 msgid "Set bytecode counter to *target*." msgstr "" -#: library/dis.rst:987 +#: library/dis.rst:1034 msgid "" "TOS is an :term:`iterator`. Call its :meth:`~iterator.__next__` method. If " "this yields a new value, push it on the stack (leaving the iterator below " @@ -1027,30 +1066,30 @@ msgid "" "code counter is incremented by *delta*." msgstr "" -#: library/dis.rst:995 +#: library/dis.rst:1042 msgid "Loads the global named ``co_names[namei]`` onto the stack." msgstr "" -#: library/dis.rst:1000 +#: library/dis.rst:1047 msgid "" "Pushes a try block from a try-finally or try-except clause onto the block " "stack. *delta* points to the finally block or the first except block." msgstr "" -#: library/dis.rst:1006 +#: library/dis.rst:1053 msgid "" "Pushes a reference to the local ``co_varnames[var_num]`` onto the stack." msgstr "" -#: library/dis.rst:1011 +#: library/dis.rst:1058 msgid "Stores TOS into the local ``co_varnames[var_num]``." msgstr "" -#: library/dis.rst:1016 +#: library/dis.rst:1063 msgid "Deletes local ``co_varnames[var_num]``." msgstr "" -#: library/dis.rst:1021 +#: library/dis.rst:1068 msgid "" "Pushes a reference to the cell contained in slot *i* of the cell and free " "variable storage. The name of the variable is ``co_cellvars[i]`` if *i* is " @@ -1058,52 +1097,52 @@ msgid "" "len(co_cellvars)]``." msgstr "" -#: library/dis.rst:1029 +#: library/dis.rst:1076 msgid "" "Loads the cell contained in slot *i* of the cell and free variable storage. " "Pushes a reference to the object the cell contains on the stack." msgstr "" -#: library/dis.rst:1035 +#: library/dis.rst:1082 msgid "" "Much like :opcode:`LOAD_DEREF` but first checks the locals dictionary before " "consulting the cell. This is used for loading free variables in class " "bodies." msgstr "" -#: library/dis.rst:1044 +#: library/dis.rst:1091 msgid "" "Stores TOS into the cell contained in slot *i* of the cell and free variable " "storage." msgstr "" -#: library/dis.rst:1050 +#: library/dis.rst:1097 msgid "" "Empties the cell contained in slot *i* of the cell and free variable " "storage. Used by the :keyword:`del` statement." msgstr "" -#: library/dis.rst:1058 +#: library/dis.rst:1105 msgid "" "Raises an exception using one of the 3 forms of the ``raise`` statement, " "depending on the value of *argc*:" msgstr "" -#: library/dis.rst:1061 +#: library/dis.rst:1108 msgid "0: ``raise`` (re-raise previous exception)" msgstr "" -#: library/dis.rst:1062 +#: library/dis.rst:1109 msgid "1: ``raise TOS`` (raise exception instance or type at ``TOS``)" msgstr "" -#: library/dis.rst:1063 +#: library/dis.rst:1110 msgid "" "2: ``raise TOS1 from TOS`` (raise exception instance or type at ``TOS1`` " "with ``__cause__`` set to ``TOS``)" msgstr "" -#: library/dis.rst:1069 +#: library/dis.rst:1116 msgid "" "Calls a callable object with positional arguments. *argc* indicates the " "number of positional arguments. The top of the stack contains positional " @@ -1113,11 +1152,11 @@ msgid "" "arguments, and pushes the return value returned by the callable object." msgstr "" -#: library/dis.rst:1077 +#: library/dis.rst:1124 msgid "This opcode is used only for calls with positional arguments." msgstr "" -#: library/dis.rst:1083 +#: library/dis.rst:1130 msgid "" "Calls a callable object with positional (if any) and keyword arguments. " "*argc* indicates the total number of positional and keyword arguments. The " @@ -1131,13 +1170,13 @@ msgid "" "object." msgstr "" -#: library/dis.rst:1095 +#: library/dis.rst:1142 msgid "" "Keyword arguments are packed in a tuple instead of a dictionary, *argc* " "indicates the total number of arguments." msgstr "" -#: library/dis.rst:1102 +#: library/dis.rst:1149 msgid "" "Calls a callable object with variable set of positional and keyword " "arguments. If the lowest bit of *flags* is set, the top of the stack " @@ -1149,7 +1188,7 @@ msgid "" "arguments, and pushes the return value returned by the callable object." msgstr "" -#: library/dis.rst:1117 +#: library/dis.rst:1164 msgid "" "Loads a method named ``co_names[namei]`` from the TOS object. TOS is popped. " "This bytecode distinguishes two cases: if TOS has a method with the correct " @@ -1159,7 +1198,7 @@ msgid "" "lookup are pushed." msgstr "" -#: library/dis.rst:1129 +#: library/dis.rst:1176 msgid "" "Calls a method. *argc* is the number of positional arguments. Keyword " "arguments are not supported. This opcode is designed to be used with :" @@ -1169,46 +1208,50 @@ msgid "" "callable). All of them are popped and the return value is pushed." msgstr "" -#: library/dis.rst:1141 +#: library/dis.rst:1188 msgid "" "Pushes a new function object on the stack. From bottom to top, the consumed " "stack must consist of values if the argument carries a specified flag value" msgstr "" -#: library/dis.rst:1144 +#: library/dis.rst:1191 msgid "" "``0x01`` a tuple of default values for positional-only and positional-or-" "keyword parameters in positional order" msgstr "" -#: library/dis.rst:1146 +#: library/dis.rst:1193 msgid "``0x02`` a dictionary of keyword-only parameters' default values" msgstr "" -#: library/dis.rst:1147 -msgid "``0x04`` an annotation dictionary" +#: library/dis.rst:1194 +msgid "``0x04`` a tuple of strings containing parameters' annotations" msgstr "" -#: library/dis.rst:1148 +#: library/dis.rst:1195 msgid "``0x08`` a tuple containing cells for free variables, making a closure" msgstr "" -#: library/dis.rst:1149 +#: library/dis.rst:1196 msgid "the code associated with the function (at TOS1)" msgstr "" -#: library/dis.rst:1150 +#: library/dis.rst:1197 msgid "the :term:`qualified name` of the function (at TOS)" msgstr "" -#: library/dis.rst:1157 +#: library/dis.rst:1199 +msgid "Flag value ``0x04`` is a tuple of strings instead of dictionary" +msgstr "" + +#: library/dis.rst:1206 msgid "" "Pushes a slice object on the stack. *argc* must be 2 or 3. If it is 2, " "``slice(TOS1, TOS)`` is pushed; if it is 3, ``slice(TOS2, TOS1, TOS)`` is " "pushed. See the :func:`slice` built-in function for more information." msgstr "" -#: library/dis.rst:1164 +#: library/dis.rst:1213 msgid "" "Prefixes any opcode which has an argument too big to fit into the default " "one byte. *ext* holds an additional byte which act as higher bits in the " @@ -1216,86 +1259,114 @@ msgid "" "allowed, forming an argument from two-byte to four-byte." msgstr "" -#: library/dis.rst:1172 +#: library/dis.rst:1221 msgid "" "Used for implementing formatted literal strings (f-strings). Pops an " "optional *fmt_spec* from the stack, then a required *value*. *flags* is " "interpreted as follows:" msgstr "" -#: library/dis.rst:1176 +#: library/dis.rst:1225 msgid "``(flags & 0x03) == 0x00``: *value* is formatted as-is." msgstr "" -#: library/dis.rst:1177 +#: library/dis.rst:1226 msgid "" "``(flags & 0x03) == 0x01``: call :func:`str` on *value* before formatting it." msgstr "" -#: library/dis.rst:1179 +#: library/dis.rst:1228 msgid "" "``(flags & 0x03) == 0x02``: call :func:`repr` on *value* before formatting " "it." msgstr "" -#: library/dis.rst:1181 +#: library/dis.rst:1230 msgid "" "``(flags & 0x03) == 0x03``: call :func:`ascii` on *value* before formatting " "it." msgstr "" -#: library/dis.rst:1183 +#: library/dis.rst:1232 msgid "" "``(flags & 0x04) == 0x04``: pop *fmt_spec* from the stack and use it, else " "use an empty *fmt_spec*." msgstr "" -#: library/dis.rst:1186 +#: library/dis.rst:1235 msgid "" "Formatting is performed using :c:func:`PyObject_Format`. The result is " "pushed on the stack." msgstr "" -#: library/dis.rst:1194 +#: library/dis.rst:1243 +msgid "" +"TOS is a tuple of keyword attribute names, TOS1 is the class being matched " +"against, and TOS2 is the match subject. *count* is the number of positional " +"sub-patterns." +msgstr "" + +#: library/dis.rst:1247 +msgid "" +"Pop TOS. If TOS2 is an instance of TOS1 and has the positional and keyword " +"attributes required by *count* and TOS, set TOS to ``True`` and TOS1 to a " +"tuple of extracted attributes. Otherwise, set TOS to ``False``." +msgstr "" + +#: library/dis.rst:1255 +msgid "" +"Pops TOS. If TOS was not ``None``, raises an exception. The ``kind`` operand " +"corresponds to the type of generator or coroutine and determines the error " +"message. The legal kinds are 0 for generator, 1 for coroutine, and 2 for " +"async generator." +msgstr "" + +#: library/dis.rst:1265 +msgid "" +"Lift the top *count* stack items one position up, and move TOS down to " +"position *count*." +msgstr "" + +#: library/dis.rst:1273 msgid "" "This is not really an opcode. It identifies the dividing line between " "opcodes which don't use their argument and those that do (``< " "HAVE_ARGUMENT`` and ``>= HAVE_ARGUMENT``, respectively)." msgstr "" -#: library/dis.rst:1198 +#: library/dis.rst:1277 msgid "" "Now every instruction has an argument, but opcodes ``< HAVE_ARGUMENT`` " "ignore it. Before, only opcodes ``>= HAVE_ARGUMENT`` had an argument." msgstr "" -#: library/dis.rst:1206 +#: library/dis.rst:1285 msgid "Opcode collections" msgstr "" -#: library/dis.rst:1208 +#: library/dis.rst:1287 msgid "" "These collections are provided for automatic introspection of bytecode " "instructions:" msgstr "" -#: library/dis.rst:1213 +#: library/dis.rst:1292 msgid "Sequence of operation names, indexable using the bytecode." msgstr "" -#: library/dis.rst:1218 +#: library/dis.rst:1297 msgid "Dictionary mapping operation names to bytecodes." msgstr "" -#: library/dis.rst:1223 +#: library/dis.rst:1302 msgid "Sequence of all compare operation names." msgstr "" -#: library/dis.rst:1228 +#: library/dis.rst:1307 msgid "Sequence of bytecodes that access a constant." msgstr "" -#: library/dis.rst:1233 +#: library/dis.rst:1312 msgid "" "Sequence of bytecodes that access a free variable (note that 'free' in this " "context refers to names in the current scope that are referenced by inner " @@ -1303,22 +1374,22 @@ msgid "" "does *not* include references to global or builtin scopes)." msgstr "" -#: library/dis.rst:1241 +#: library/dis.rst:1320 msgid "Sequence of bytecodes that access an attribute by name." msgstr "" -#: library/dis.rst:1246 +#: library/dis.rst:1325 msgid "Sequence of bytecodes that have a relative jump target." msgstr "" -#: library/dis.rst:1251 +#: library/dis.rst:1330 msgid "Sequence of bytecodes that have an absolute jump target." msgstr "" -#: library/dis.rst:1256 +#: library/dis.rst:1335 msgid "Sequence of bytecodes that access a local variable." msgstr "" -#: library/dis.rst:1261 +#: library/dis.rst:1340 msgid "Sequence of bytecodes of Boolean operations." msgstr "" diff --git a/library/distutils.po b/library/distutils.po index 07b2adf59..b31a7207c 100644 --- a/library/distutils.po +++ b/library/distutils.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-09-28 12:38+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -21,6 +21,12 @@ msgstr ":mod:`distutils` — Création et installation des modules Python" #: library/distutils.rst:12 msgid "" +":mod:`distutils` is deprecated with removal planned for Python 3.12. See " +"the :ref:`What's New ` entry for more information." +msgstr "" + +#: library/distutils.rst:17 +msgid "" "The :mod:`distutils` package provides support for building and installing " "additional modules into a Python installation. The new modules may be " "either 100%-pure Python, or may be extension modules written in C, or may be " @@ -33,7 +39,7 @@ msgstr "" "d'extension écrits en C, soit des collections de paquets Python qui incluent " "des modules codés en C et en Python." -#: library/distutils.rst:17 +#: library/distutils.rst:22 msgid "" "Most Python users will *not* want to use this module directly, but instead " "use the cross-version tools maintained by the Python Packaging Authority. In " @@ -46,11 +52,11 @@ msgstr "" "readthedocs.io/en/latest/>`__ est une alternative améliorée à :mod:" "`distutils` qui fournit :" -#: library/distutils.rst:23 +#: library/distutils.rst:28 msgid "support for declaring project dependencies" msgstr "support pour la déclaration des dépendances de projets" -#: library/distutils.rst:24 +#: library/distutils.rst:29 msgid "" "additional mechanisms for configuring which files to include in source " "releases (including plugins for integration with version control systems)" @@ -59,7 +65,7 @@ msgstr "" "distributions source (y compris les extensions pour l'intégration avec les " "systèmes de contrôle de version)" -#: library/distutils.rst:26 +#: library/distutils.rst:31 msgid "" "the ability to declare project \"entry points\", which can be used as the " "basis for application plugin systems" @@ -67,7 +73,7 @@ msgstr "" "la possibilité de déclarer les \"points d'entrée\" du projet, qui peuvent " "être utilisés comme base pour les systèmes d'extensions" -#: library/distutils.rst:28 +#: library/distutils.rst:33 msgid "" "the ability to automatically generate Windows command line executables at " "installation time rather than needing to prebuild them" @@ -76,11 +82,11 @@ msgstr "" "commande Windows au moment de l'installation plutôt que de devoir les pré-" "construire" -#: library/distutils.rst:30 +#: library/distutils.rst:35 msgid "consistent behaviour across all supported Python versions" msgstr "comportement cohérent entre toutes les versions Python supportées" -#: library/distutils.rst:32 +#: library/distutils.rst:37 msgid "" "The recommended `pip `__ installer runs all ``setup." "py`` scripts with ``setuptools``, even if the script itself only imports " @@ -93,7 +99,7 @@ msgstr "" "reportez-vous au `Python Packaging User Guide `_." -#: library/distutils.rst:38 +#: library/distutils.rst:43 msgid "" "For the benefits of packaging tool authors and users seeking a deeper " "understanding of the details of the current packaging and distribution " @@ -105,10 +111,10 @@ msgstr "" "de paquets et de leur distribution, la documentation utilisateur historique " "de :mod:`distutils` la référence de son API restent disponibles :" -#: library/distutils.rst:43 +#: library/distutils.rst:48 msgid ":ref:`install-index`" msgstr ":ref:`install-index`" -#: library/distutils.rst:44 +#: library/distutils.rst:49 msgid ":ref:`distutils-index`" msgstr ":ref:`distutils-index`" diff --git a/library/email.errors.po b/library/email.errors.po index 2c6fafeb9..6860f1416 100644 --- a/library/email.errors.po +++ b/library/email.errors.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-09-29 06:16-0400\n" "Last-Translator: G. Robert \n" "Language-Team: FRENCH \n" @@ -234,3 +234,9 @@ msgstr "" ":class:`InvalidBase64LengthDefect` — Le nombre de caractères (autres que de " "remplissage) d'un bloc d'octets encodés en base64 est invalide (1 de plus " "qu'un multiple de 4). Le bloc encodé n'a pas été modifié." + +#: library/email.errors.rst:116 +msgid "" +":class:`InvalidDateDefect` -- When decoding an invalid or unparsable date " +"field. The original value is kept as-is." +msgstr "" diff --git a/library/email.po b/library/email.po index ea4ff5173..ab5181ce6 100644 --- a/library/email.po +++ b/library/email.po @@ -5,14 +5,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-06 21:25+0200\n" +"Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Last-Translator: Jean Abou Samra \n" "X-Generator: Poedit 2.4.1\n" #: library/email.rst:2 diff --git a/library/email.utils.po b/library/email.utils.po index a185e2e2a..14d7ec795 100644 --- a/library/email.utils.po +++ b/library/email.utils.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -140,7 +140,9 @@ msgstr "" #: library/email.utils.rst:126 msgid "" "The inverse of :func:`format_datetime`. Performs the same function as :func:" -"`parsedate`, but on success returns a :mod:`~datetime.datetime`. If the " +"`parsedate`, but on success returns a :mod:`~datetime.datetime`; otherwise " +"``ValueError`` is raised if *date* contains an invalid value such as an hour " +"greater than 23 or a timezone offset not between -24 and 24 hours. If the " "input date has a timezone of ``-0000``, the ``datetime`` will be a naive " "``datetime``, and if the date is conforming to the RFCs it will represent a " "time in UTC but with no indication of the actual source timezone of the " @@ -149,25 +151,25 @@ msgid "" "corresponding a :class:`~datetime.timezone` :class:`~datetime.tzinfo`." msgstr "" -#: library/email.utils.rst:140 +#: library/email.utils.rst:142 msgid "" "Turn a 10-tuple as returned by :func:`parsedate_tz` into a UTC timestamp " "(seconds since the Epoch). If the timezone item in the tuple is ``None``, " "assume local time." msgstr "" -#: library/email.utils.rst:147 +#: library/email.utils.rst:149 msgid "Returns a date string as per :rfc:`2822`, e.g.::" msgstr "" -#: library/email.utils.rst:151 +#: library/email.utils.rst:153 msgid "" "Optional *timeval* if given is a floating point time value as accepted by :" "func:`time.gmtime` and :func:`time.localtime`, otherwise the current time is " "used." msgstr "" -#: library/email.utils.rst:155 +#: library/email.utils.rst:157 msgid "" "Optional *localtime* is a flag that when ``True``, interprets *timeval*, and " "returns a date relative to the local timezone instead of UTC, properly " @@ -175,7 +177,7 @@ msgid "" "UTC is used." msgstr "" -#: library/email.utils.rst:160 +#: library/email.utils.rst:162 msgid "" "Optional *usegmt* is a flag that when ``True``, outputs a date string with " "the timezone as an ascii string ``GMT``, rather than a numeric ``-0000``. " @@ -183,7 +185,7 @@ msgid "" "*localtime* is ``False``. The default is ``False``." msgstr "" -#: library/email.utils.rst:168 +#: library/email.utils.rst:170 msgid "" "Like ``formatdate``, but the input is a :mod:`datetime` instance. If it is " "a naive datetime, it is assumed to be \"UTC with no information about the " @@ -195,11 +197,11 @@ msgid "" "date headers." msgstr "" -#: library/email.utils.rst:182 +#: library/email.utils.rst:184 msgid "Decode the string *s* according to :rfc:`2231`." msgstr "" -#: library/email.utils.rst:187 +#: library/email.utils.rst:189 msgid "" "Encode the string *s* according to :rfc:`2231`. Optional *charset* and " "*language*, if given is the character set name and language name to use. If " @@ -208,7 +210,7 @@ msgid "" "*language*." msgstr "" -#: library/email.utils.rst:195 +#: library/email.utils.rst:197 msgid "" "When a header parameter is encoded in :rfc:`2231` format, :meth:`Message." "get_param ` may return a 3-tuple containing " @@ -220,23 +222,23 @@ msgid "" "defaults to ``'us-ascii'``." msgstr "" -#: library/email.utils.rst:204 +#: library/email.utils.rst:206 msgid "" "For convenience, if the *value* passed to :func:`collapse_rfc2231_value` is " "not a tuple, it should be a string and it is returned unquoted." msgstr "" -#: library/email.utils.rst:210 +#: library/email.utils.rst:212 msgid "" "Decode parameters list according to :rfc:`2231`. *params* is a sequence of " "2-tuples containing elements of the form ``(content-type, string-value)``." msgstr "" -#: library/email.utils.rst:215 +#: library/email.utils.rst:217 msgid "Footnotes" msgstr "Notes" -#: library/email.utils.rst:216 +#: library/email.utils.rst:218 msgid "" "Note that the sign of the timezone offset is the opposite of the sign of the " "``time.timezone`` variable for the same timezone; the latter variable " diff --git a/library/ensurepip.po b/library/ensurepip.po index f68d024b1..84c1339a2 100644 --- a/library/ensurepip.po +++ b/library/ensurepip.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2017-08-10 00:59+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -77,7 +77,7 @@ msgstr "" msgid "" "This invocation will install ``pip`` if it is not already installed, but " "otherwise does nothing. To ensure the installed version of ``pip`` is at " -"least as recent as the one bundled with ``ensurepip``, pass the ``--" +"least as recent as the one available in ``ensurepip``, pass the ``--" "upgrade`` option::" msgstr "" @@ -137,7 +137,7 @@ msgstr "" #: library/ensurepip.rst:89 msgid "" -"Returns a string specifying the bundled version of pip that will be " +"Returns a string specifying the available version of pip that will be " "installed when bootstrapping an environment." msgstr "" @@ -155,7 +155,7 @@ msgstr "" #: library/ensurepip.rst:102 msgid "" "*upgrade* indicates whether or not to upgrade an existing installation of an " -"earlier version of ``pip`` to the bundled version." +"earlier version of ``pip`` to the available version." msgstr "" #: library/ensurepip.rst:105 diff --git a/library/exceptions.po b/library/exceptions.po index c1adb2eee..c46caeef0 100644 --- a/library/exceptions.po +++ b/library/exceptions.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-06-22 09:58+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-10-15 09:04+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -195,13 +195,16 @@ msgstr "" #: library/exceptions.rst:92 msgid "" "This method sets *tb* as the new traceback for the exception and returns the " -"exception object. It is usually used in exception handling code like this::" +"exception object. It was more commonly used before the exception chaining " +"features of :pep:`3134` became available. The following example shows how " +"we can convert an instance of ``SomeException`` into an instance of " +"``OtherException`` while preserving the traceback. Once raised, the current " +"frame is pushed onto the traceback of the ``OtherException``, as would have " +"happened to the traceback of the original ``SomeException`` had we allowed " +"it to propagate to the caller. ::" msgstr "" -"Cette méthode définit *tb* en tant que nouvelle trace d'appels pour " -"l'exception et retourne l'objet exception. Elle est généralement utilisée " -"dans du code de gestion d'exceptions comme ceci ::" -#: library/exceptions.rst:105 +#: library/exceptions.rst:110 msgid "" "All built-in, non-system-exiting exceptions are derived from this class. " "All user-defined exceptions should also be derived from this class." @@ -210,7 +213,7 @@ msgstr "" "dérivent de cette classe. Toutes les exceptions définies par l'utilisateur " "devraient également être dérivées de cette classe." -#: library/exceptions.rst:111 +#: library/exceptions.rst:116 msgid "" "The base class for those built-in exceptions that are raised for various " "arithmetic errors: :exc:`OverflowError`, :exc:`ZeroDivisionError`, :exc:" @@ -220,7 +223,7 @@ msgstr "" "erreurs arithmétiques : :exc:`OverflowError`, :exc:`ZeroDivisionError`, :exc:" "`FloatingPointError`." -#: library/exceptions.rst:118 +#: library/exceptions.rst:123 msgid "" "Raised when a :ref:`buffer ` related operation cannot be " "performed." @@ -228,7 +231,7 @@ msgstr "" "Levée lorsqu'une opération liée à un :ref:`tampon ` ne peut " "pas être exécutée." -#: library/exceptions.rst:124 +#: library/exceptions.rst:129 msgid "" "The base class for the exceptions that are raised when a key or index used " "on a mapping or sequence is invalid: :exc:`IndexError`, :exc:`KeyError`. " @@ -239,19 +242,19 @@ msgstr "" "invalide : :exc:`IndexError`, :exc:`KeyError`. Peut être levée directement " "par :func:`codecs.lookup`." -#: library/exceptions.rst:130 +#: library/exceptions.rst:135 msgid "Concrete exceptions" msgstr "Exceptions concrètes" -#: library/exceptions.rst:132 +#: library/exceptions.rst:137 msgid "The following exceptions are the exceptions that are usually raised." msgstr "Les exceptions suivantes sont celles qui sont habituellement levées." -#: library/exceptions.rst:138 +#: library/exceptions.rst:143 msgid "Raised when an :keyword:`assert` statement fails." msgstr "Levée lorsqu'une instruction :keyword:`assert` échoue." -#: library/exceptions.rst:143 +#: library/exceptions.rst:148 msgid "" "Raised when an attribute reference (see :ref:`attribute-references`) or " "assignment fails. (When an object does not support attribute references or " @@ -261,7 +264,25 @@ msgstr "" "`attribute-references`) échoue. (Lorsqu'un objet ne supporte pas du tout la " "référence ou l'assignation d'attribut, :exc:`TypeError` est levé.)" -#: library/exceptions.rst:150 +#: library/exceptions.rst:152 +#, fuzzy +msgid "" +"The :attr:`name` and :attr:`obj` attributes can be set using keyword-only " +"arguments to the constructor. When set they represent the name of the " +"attribute that was attempted to be accessed and the object that was accessed " +"for said attribute, respectively." +msgstr "" +"Les attributs :attr:`name` et :attr:`path` peuvent être définis uniquement à " +"l'aide d'arguments nommés passés au constructeur. Lorsqu'ils sont définis, " +"ils représentent respectivement le nom du module qui a été tenté d'être " +"importé et le chemin d'accès au fichier qui a déclenché l'exception." + +#: library/exceptions.rst:157 +#, fuzzy +msgid "Added the :attr:`name` and :attr:`obj` attributes." +msgstr "Ajout des attributs :attr:`name` et :attr:`path`." + +#: library/exceptions.rst:162 msgid "" "Raised when the :func:`input` function hits an end-of-file condition (EOF) " "without reading any data. (N.B.: the :meth:`io.IOBase.read` and :meth:`io." @@ -272,11 +293,11 @@ msgstr "" "read` et :meth:`io.IOBase.readline` retournent une chaîne vide lorsqu'elles " "atteignent EOF.)" -#: library/exceptions.rst:157 +#: library/exceptions.rst:169 msgid "Not currently used." msgstr "N’est pas utilisé pour le moment." -#: library/exceptions.rst:162 +#: library/exceptions.rst:174 msgid "" "Raised when a :term:`generator` or :term:`coroutine` is closed; see :meth:" "`generator.close` and :meth:`coroutine.close`. It directly inherits from :" @@ -288,7 +309,7 @@ msgstr "" "de :exc:`BaseException` au lieu de :exc:`Exception` puisqu'il ne s'agit pas " "techniquement d'une erreur." -#: library/exceptions.rst:170 +#: library/exceptions.rst:182 msgid "" "Raised when the :keyword:`import` statement has troubles trying to load a " "module. Also raised when the \"from list\" in ``from ... import`` has a " @@ -298,7 +319,7 @@ msgstr "" "de charger un module. Également levée lorsque Python ne trouve pas un nom " "dans ``from ... import``." -#: library/exceptions.rst:174 +#: library/exceptions.rst:186 msgid "" "The :attr:`name` and :attr:`path` attributes can be set using keyword-only " "arguments to the constructor. When set they represent the name of the module " @@ -310,11 +331,11 @@ msgstr "" "ils représentent respectivement le nom du module qui a été tenté d'être " "importé et le chemin d'accès au fichier qui a déclenché l'exception." -#: library/exceptions.rst:179 +#: library/exceptions.rst:191 msgid "Added the :attr:`name` and :attr:`path` attributes." msgstr "Ajout des attributs :attr:`name` et :attr:`path`." -#: library/exceptions.rst:184 +#: library/exceptions.rst:196 msgid "" "A subclass of :exc:`ImportError` which is raised by :keyword:`import` when a " "module could not be located. It is also raised when ``None`` is found in :" @@ -324,7 +345,7 @@ msgstr "" "lorsqu'un module n'a pas pu être localisé. Elle est généralement levée quand " "``None`` est trouvé dans :data:`sys.modules`." -#: library/exceptions.rst:193 +#: library/exceptions.rst:205 msgid "" "Raised when a sequence subscript is out of range. (Slice indices are " "silently truncated to fall in the allowed range; if an index is not an " @@ -334,7 +355,7 @@ msgstr "" "tranches (*slices*) sont tronqués silencieusement pour tomber dans la plage " "autorisée ; si un indice n'est pas un entier, :exc:`TypeError` est levée.)" -#: library/exceptions.rst:202 +#: library/exceptions.rst:214 msgid "" "Raised when a mapping (dictionary) key is not found in the set of existing " "keys." @@ -342,7 +363,7 @@ msgstr "" "Levée lorsqu'une clef (de dictionnaire) n'est pas trouvée dans l'ensemble " "des clefs existantes." -#: library/exceptions.rst:209 +#: library/exceptions.rst:221 msgid "" "Raised when the user hits the interrupt key (normally :kbd:`Control-C` or :" "kbd:`Delete`). During execution, a check for interrupts is made regularly. " @@ -357,7 +378,7 @@ msgstr "" "du code qui intercepte :exc:`Exception` et ainsi empêcher l'interpréteur de " "quitter." -#: library/exceptions.rst:218 +#: library/exceptions.rst:230 msgid "" "Raised when an operation runs out of memory but the situation may still be " "rescued (by deleting some objects). The associated value is a string " @@ -376,7 +397,7 @@ msgstr "" "une exception pour qu'une pile d'appels puisse être affichée, dans le cas où " "un programme en cours d'exécution en était la cause." -#: library/exceptions.rst:229 +#: library/exceptions.rst:241 msgid "" "Raised when a local or global name is not found. This applies only to " "unqualified names. The associated value is an error message that includes " @@ -386,7 +407,24 @@ msgstr "" "qu'aux noms non qualifiés. La valeur associée est un message d'erreur qui " "inclut le nom qui n'a pas pu être trouvé." -#: library/exceptions.rst:236 +#: library/exceptions.rst:245 +#, fuzzy +msgid "" +"The :attr:`name` attribute can be set using a keyword-only argument to the " +"constructor. When set it represent the name of the variable that was " +"attempted to be accessed." +msgstr "" +"Les attributs :attr:`name` et :attr:`path` peuvent être définis uniquement à " +"l'aide d'arguments nommés passés au constructeur. Lorsqu'ils sont définis, " +"ils représentent respectivement le nom du module qui a été tenté d'être " +"importé et le chemin d'accès au fichier qui a déclenché l'exception." + +#: library/exceptions.rst:249 +#, fuzzy +msgid "Added the :attr:`name` attribute." +msgstr "Ajout des attributs :attr:`name` et :attr:`path`." + +#: library/exceptions.rst:255 msgid "" "This exception is derived from :exc:`RuntimeError`. In user defined base " "classes, abstract methods should raise this exception when they require " @@ -399,7 +437,7 @@ msgstr "" "méthode, ou lorsque la classe est en cours de développement pour indiquer " "que l'implémentation concrète doit encore être ajoutée." -#: library/exceptions.rst:243 +#: library/exceptions.rst:262 msgid "" "It should not be used to indicate that an operator or method is not meant to " "be supported at all -- in that case either leave the operator / method " @@ -410,7 +448,7 @@ msgstr "" "laissez soit l'opérateur / la méthode non défini, soit, s'il s'agit d'une " "sous-classe, assignez-le à :data:`None`." -#: library/exceptions.rst:249 +#: library/exceptions.rst:268 msgid "" "``NotImplementedError`` and ``NotImplemented`` are not interchangeable, even " "though they have similar names and purposes. See :data:`NotImplemented` for " @@ -420,7 +458,7 @@ msgstr "" "même s'ils ont des noms et des objectifs similaires. Voir :data:" "`NotImplemented` pour des détails sur la façon de les utiliser." -#: library/exceptions.rst:258 +#: library/exceptions.rst:277 msgid "" "This exception is raised when a system function returns a system-related " "error, including I/O failures such as \"file not found\" or \"disk full" @@ -431,7 +469,7 @@ msgstr "" "non trouvé\" ou \"disque plein\" (pas pour les types d'arguments illégaux ou " "d'autres erreurs accidentelles)." -#: library/exceptions.rst:262 +#: library/exceptions.rst:281 msgid "" "The second form of the constructor sets the corresponding attributes, " "described below. The attributes default to :const:`None` if not specified. " @@ -445,7 +483,7 @@ msgstr "" "l'attribut :attr:`~BaseException.args` contient seulement une paire avec les " "valeurs des deux premiers arguments du constructeur." -#: library/exceptions.rst:268 +#: library/exceptions.rst:287 msgid "" "The constructor often actually returns a subclass of :exc:`OSError`, as " "described in `OS exceptions`_ below. The particular subclass depends on the " @@ -459,11 +497,11 @@ msgstr "" "de la construction d':exc:`OSError` directement ou via un alias, et n'est " "pas hérité lors du sous-classement." -#: library/exceptions.rst:276 +#: library/exceptions.rst:295 msgid "A numeric error code from the C variable :c:data:`errno`." msgstr "Code d'erreur numérique de la variable C :c:data:`errno`." -#: library/exceptions.rst:280 +#: library/exceptions.rst:299 msgid "" "Under Windows, this gives you the native Windows error code. The :attr:`." "errno` attribute is then an approximate translation, in POSIX terms, of that " @@ -473,7 +511,7 @@ msgstr "" "errno` est alors une traduction approximative, en termes POSIX, de ce code " "d'erreur natif." -#: library/exceptions.rst:284 +#: library/exceptions.rst:303 msgid "" "Under Windows, if the *winerror* constructor argument is an integer, the :" "attr:`.errno` attribute is determined from the Windows error code, and the " @@ -485,7 +523,7 @@ msgstr "" "et l'argument *errno* est ignoré. Sur d'autres plateformes, l'argument " "*winerror* est ignoré, et l'attribut :attr:`winerror` n'existe pas." -#: library/exceptions.rst:292 +#: library/exceptions.rst:311 msgid "" "The corresponding error message, as provided by the operating system. It is " "formatted by the C functions :c:func:`perror` under POSIX, and :c:func:" @@ -495,7 +533,7 @@ msgstr "" "d'exploitation. Il est formaté par les fonctions C :c:func:`perror` sous " "POSIX, et :c:func:`FormatMessage` sous Windows." -#: library/exceptions.rst:300 +#: library/exceptions.rst:319 msgid "" "For exceptions that involve a file system path (such as :func:`open` or :" "func:`os.unlink`), :attr:`filename` is the file name passed to the function. " @@ -509,7 +547,7 @@ msgstr "" "à deux chemins d'accès au système de fichiers (comme :func:`os.rename`), :" "attr:`filename2` correspond au deuxième nom de fichier passé à la fonction." -#: library/exceptions.rst:307 +#: library/exceptions.rst:326 msgid "" ":exc:`EnvironmentError`, :exc:`IOError`, :exc:`WindowsError`, :exc:`socket." "error`, :exc:`select.error` and :exc:`mmap.error` have been merged into :exc:" @@ -519,19 +557,20 @@ msgstr "" "error`, :exc:`select.error` et :exc:`mmap.error` ont fusionnées en :exc:" "`OSError`, et le constructeur peut renvoyer une sous-classe." -#: library/exceptions.rst:313 +#: library/exceptions.rst:332 +#, fuzzy msgid "" "The :attr:`filename` attribute is now the original file name passed to the " -"function, instead of the name encoded to or decoded from the filesystem " -"encoding. Also, the *filename2* constructor argument and attribute was " -"added." +"function, instead of the name encoded to or decoded from the :term:" +"`filesystem encoding and error handler`. Also, the *filename2* constructor " +"argument and attribute was added." msgstr "" "L'attribut :attr:`filename` est maintenant le nom du fichier originel passé " "à la fonction, au lieu du nom encodé ou décodé à partir de l'encodage du " "système de fichiers. De plus, l'argument du constructeur et attribut " "*filename2* a été ajouté." -#: library/exceptions.rst:322 +#: library/exceptions.rst:341 msgid "" "Raised when the result of an arithmetic operation is too large to be " "represented. This cannot occur for integers (which would rather raise :exc:" @@ -548,7 +587,7 @@ msgstr "" "normalisation de la gestion des exceptions de virgule flottante en C, la " "plupart des opérations en virgule flottante ne sont pas vérifiées." -#: library/exceptions.rst:332 +#: library/exceptions.rst:351 msgid "" "This exception is derived from :exc:`RuntimeError`. It is raised when the " "interpreter detects that the maximum recursion depth (see :func:`sys." @@ -558,11 +597,11 @@ msgstr "" "l'interpréteur détecte que la profondeur de récursivité maximale (voir :func:" "`sys.getrecursionlimit`) est dépassée." -#: library/exceptions.rst:336 +#: library/exceptions.rst:355 msgid "Previously, a plain :exc:`RuntimeError` was raised." msgstr "Auparavant, une simple :exc:`RuntimeError` était levée." -#: library/exceptions.rst:342 +#: library/exceptions.rst:361 msgid "" "This exception is raised when a weak reference proxy, created by the :func:" "`weakref.proxy` function, is used to access an attribute of the referent " @@ -575,7 +614,7 @@ msgstr "" "Pour plus d'informations sur les pointeurs faibles, voir le module :mod:" "`weakref`." -#: library/exceptions.rst:350 +#: library/exceptions.rst:369 msgid "" "Raised when an error is detected that doesn't fall in any of the other " "categories. The associated value is a string indicating what precisely went " @@ -585,7 +624,7 @@ msgstr "" "détectée. La valeur associée est une chaîne de caractères indiquant " "précisément ce qui s'est mal passé." -#: library/exceptions.rst:357 +#: library/exceptions.rst:376 msgid "" "Raised by built-in function :func:`next` and an :term:`iterator`\\'s :meth:" "`~iterator.__next__` method to signal that there are no further items " @@ -595,7 +634,7 @@ msgstr "" "__next__` d'un :term:`iterator` (itérateur) pour signaler qu'il n'y a pas " "d'autres éléments produits par l'itérateur." -#: library/exceptions.rst:361 +#: library/exceptions.rst:380 msgid "" "The exception object has a single attribute :attr:`value`, which is given as " "an argument when constructing the exception, and defaults to :const:`None`." @@ -604,7 +643,7 @@ msgstr "" "argument lors de la construction de l'exception, et vaut :const:`None` par " "défaut." -#: library/exceptions.rst:365 +#: library/exceptions.rst:384 msgid "" "When a :term:`generator` or :term:`coroutine` function returns, a new :exc:" "`StopIteration` instance is raised, and the value returned by the function " @@ -615,7 +654,7 @@ msgstr "" "valeur retournée par la fonction est passée au paramètre :attr:`value` du " "constructeur de l'exception." -#: library/exceptions.rst:370 +#: library/exceptions.rst:389 msgid "" "If a generator code directly or indirectly raises :exc:`StopIteration`, it " "is converted into a :exc:`RuntimeError` (retaining the :exc:`StopIteration` " @@ -625,7 +664,7 @@ msgstr "" "`StopIteration`, elle est convertie en :exc:`RuntimeError` (en conservant :" "exc:`StopIteration` comme cause de la nouvelle exception)." -#: library/exceptions.rst:374 +#: library/exceptions.rst:393 msgid "" "Added ``value`` attribute and the ability for generator functions to use it " "to return a value." @@ -633,7 +672,7 @@ msgstr "" "Ajout de l'attribut ``value`` et de la possibilité pour les fonctions de " "générateur de l'utiliser pour retourner une valeur." -#: library/exceptions.rst:378 +#: library/exceptions.rst:397 msgid "" "Introduced the RuntimeError transformation via ``from __future__ import " "generator_stop``, see :pep:`479`." @@ -641,7 +680,7 @@ msgstr "" "Introduit la transformation des erreurs RuntimeError via ``from __future__ " "import generator_stop``, cf. :pep:`479`." -#: library/exceptions.rst:382 +#: library/exceptions.rst:401 msgid "" "Enable :pep:`479` for all code by default: a :exc:`StopIteration` error " "raised in a generator is transformed into a :exc:`RuntimeError`." @@ -650,7 +689,7 @@ msgstr "" "`StopIteration` est levée dans un générateur elle est transformée en une :" "exc:`RuntimeError`." -#: library/exceptions.rst:388 +#: library/exceptions.rst:407 msgid "" "Must be raised by :meth:`__anext__` method of an :term:`asynchronous " "iterator` object to stop the iteration." @@ -658,7 +697,7 @@ msgstr "" "Doit être levée par la méthode :meth:`__anext__` d'un objet :term:" "`asynchronous iterator` pour arrêter l'itération." -#: library/exceptions.rst:395 +#: library/exceptions.rst:414 #, fuzzy msgid "" "Raised when the parser encounters a syntax error. This may occur in an :" @@ -671,43 +710,60 @@ msgstr "" "fonctions natives :func:`exec` ou :func:`eval`, ou lors de la lecture du " "script initial ou de l'entrée standard (également de manière interactive)." -#: library/exceptions.rst:401 +#: library/exceptions.rst:420 msgid "" "The :func:`str` of the exception instance returns only the error message. " "Details is a tuple whose members are also available as separate attributes." msgstr "" -#: library/exceptions.rst:406 +#: library/exceptions.rst:425 #, fuzzy msgid "The name of the file the syntax error occurred in." msgstr "Le nom de l'encodage qui a provoqué l'erreur." -#: library/exceptions.rst:410 +#: library/exceptions.rst:429 msgid "" "Which line number in the file the error occurred in. This is 1-indexed: the " "first line in the file has a ``lineno`` of 1." msgstr "" -#: library/exceptions.rst:415 +#: library/exceptions.rst:434 msgid "" "The column in the line where the error occurred. This is 1-indexed: the " "first character in the line has an ``offset`` of 1." msgstr "" -#: library/exceptions.rst:420 +#: library/exceptions.rst:439 #, fuzzy msgid "The source code text involved in the error." msgstr "Le nom de l'encodage qui a provoqué l'erreur." -#: library/exceptions.rst:422 +#: library/exceptions.rst:443 +msgid "" +"Which line number in the file the error occurred ends in. This is 1-indexed: " +"the first line in the file has a ``lineno`` of 1." +msgstr "" + +#: library/exceptions.rst:448 +msgid "" +"The column in the end line where the error occurred finishes. This is 1-" +"indexed: the first character in the line has an ``offset`` of 1." +msgstr "" + +#: library/exceptions.rst:451 msgid "" "For errors in f-string fields, the message is prefixed by \"f-string: \" and " "the offsets are offsets in a text constructed from the replacement " "expression. For example, compiling f'Bad {a b} field' results in this args " -"attribute: ('f-string: ...', ('', 1, 4, '(a b)\\n'))." +"attribute: ('f-string: ...', ('', 1, 2, '(a b)\\n', 1, 5))." msgstr "" -#: library/exceptions.rst:430 +#: library/exceptions.rst:456 +#, fuzzy +msgid "Added the :attr:`end_lineno` and :attr:`end_offset` attributes." +msgstr "Ajout des attributs :attr:`name` et :attr:`path`." + +#: library/exceptions.rst:461 msgid "" "Base class for syntax errors related to incorrect indentation. This is a " "subclass of :exc:`SyntaxError`." @@ -715,7 +771,7 @@ msgstr "" "Classe de base pour les erreurs de syntaxe liées à une indentation " "incorrecte. C'est une sous-classe de :exc:`SyntaxError`." -#: library/exceptions.rst:436 +#: library/exceptions.rst:467 msgid "" "Raised when indentation contains an inconsistent use of tabs and spaces. " "This is a subclass of :exc:`IndentationError`." @@ -723,7 +779,7 @@ msgstr "" "Levée lorsqu'une indentation contient une utilisation incohérente des " "tabulations et des espaces. C'est une sous-classe de :exc:`IndentationError`." -#: library/exceptions.rst:442 +#: library/exceptions.rst:473 msgid "" "Raised when the interpreter finds an internal error, but the situation does " "not look so serious to cause it to abandon all hope. The associated value is " @@ -734,7 +790,7 @@ msgstr "" "espoir. La valeur associée est une chaîne de caractères indiquant l'erreur " "qui est survenue (en termes bas niveau)." -#: library/exceptions.rst:446 +#: library/exceptions.rst:477 msgid "" "You should report this to the author or maintainer of your Python " "interpreter. Be sure to report the version of the Python interpreter (``sys." @@ -748,7 +804,7 @@ msgstr "" "interactive), le message d'erreur exact (la valeur associée à l'exception) " "et si possible le code source du programme qui a déclenché l'erreur." -#: library/exceptions.rst:455 +#: library/exceptions.rst:486 msgid "" "This exception is raised by the :func:`sys.exit` function. It inherits " "from :exc:`BaseException` instead of :exc:`Exception` so that it is not " @@ -773,7 +829,7 @@ msgstr "" "autre type (comme une chaîne de caractères), la valeur de l'objet est " "affichée et l'état de sortie est un." -#: library/exceptions.rst:466 +#: library/exceptions.rst:497 msgid "" "A call to :func:`sys.exit` is translated into an exception so that clean-up " "handlers (:keyword:`finally` clauses of :keyword:`try` statements) can be " @@ -790,7 +846,7 @@ msgstr "" "immédiatement (par exemple, dans le processus enfant après un appel à :func:" "`os.fork`)." -#: library/exceptions.rst:475 +#: library/exceptions.rst:506 msgid "" "The exit status or error message that is passed to the constructor. " "(Defaults to ``None``.)" @@ -798,7 +854,7 @@ msgstr "" "L'état de sortie ou le message d'erreur passé au constructeur. (``None`` par " "défaut.)" -#: library/exceptions.rst:481 +#: library/exceptions.rst:512 msgid "" "Raised when an operation or function is applied to an object of " "inappropriate type. The associated value is a string giving details about " @@ -808,7 +864,7 @@ msgstr "" "inapproprié. La valeur associée est une chaîne de caractères donnant des " "détails sur le type d'inadéquation." -#: library/exceptions.rst:484 +#: library/exceptions.rst:515 msgid "" "This exception may be raised by user code to indicate that an attempted " "operation on an object is not supported, and is not meant to be. If an " @@ -821,7 +877,7 @@ msgstr "" "donnée mais n'a pas encore fourni une implémentation, lever :exc:" "`NotImplementedError` est plus approprié." -#: library/exceptions.rst:489 +#: library/exceptions.rst:520 msgid "" "Passing arguments of the wrong type (e.g. passing a :class:`list` when an :" "class:`int` is expected) should result in a :exc:`TypeError`, but passing " @@ -833,7 +889,7 @@ msgstr "" "le passage d'arguments avec la mauvaise valeur (e.g. un nombre en dehors des " "limites attendues) devrait résulter en une :exc:`ValueError`." -#: library/exceptions.rst:496 +#: library/exceptions.rst:527 msgid "" "Raised when a reference is made to a local variable in a function or method, " "but no value has been bound to that variable. This is a subclass of :exc:" @@ -843,7 +899,7 @@ msgstr "" "ou une méthode, mais qu'aucune valeur n'a été liée à cette variable. C'est " "une sous-classe de :exc:`NameError`." -#: library/exceptions.rst:503 +#: library/exceptions.rst:534 msgid "" "Raised when a Unicode-related encoding or decoding error occurs. It is a " "subclass of :exc:`ValueError`." @@ -851,7 +907,7 @@ msgstr "" "Levée lorsqu'une erreur d'encodage ou de décodage liée à Unicode se produit. " "C'est une sous-classe de :exc:`ValueError`." -#: library/exceptions.rst:506 +#: library/exceptions.rst:537 msgid "" ":exc:`UnicodeError` has attributes that describe the encoding or decoding " "error. For example, ``err.object[err.start:err.end]`` gives the particular " @@ -861,27 +917,27 @@ msgstr "" "décodage. Par exemple, ``err.object[err.start:err.end]`` donne l'entrée " "particulière invalide sur laquelle le codec a échoué." -#: library/exceptions.rst:512 +#: library/exceptions.rst:543 msgid "The name of the encoding that raised the error." msgstr "Le nom de l'encodage qui a provoqué l'erreur." -#: library/exceptions.rst:516 +#: library/exceptions.rst:547 msgid "A string describing the specific codec error." msgstr "Une chaîne de caractères décrivant l'erreur de codec spécifique." -#: library/exceptions.rst:520 +#: library/exceptions.rst:551 msgid "The object the codec was attempting to encode or decode." msgstr "L'objet que le codec essayait d'encoder ou de décoder." -#: library/exceptions.rst:524 +#: library/exceptions.rst:555 msgid "The first index of invalid data in :attr:`object`." msgstr "Le premier index des données invalides dans :attr:`object`." -#: library/exceptions.rst:528 +#: library/exceptions.rst:559 msgid "The index after the last invalid data in :attr:`object`." msgstr "L'index après la dernière donnée invalide dans :attr:`object`." -#: library/exceptions.rst:533 +#: library/exceptions.rst:564 msgid "" "Raised when a Unicode-related error occurs during encoding. It is a " "subclass of :exc:`UnicodeError`." @@ -889,7 +945,7 @@ msgstr "" "Levée lorsqu'une erreur liée à Unicode se produit durant l'encodage. C'est " "une sous-classe d':exc:`UnicodeError`." -#: library/exceptions.rst:539 +#: library/exceptions.rst:570 msgid "" "Raised when a Unicode-related error occurs during decoding. It is a " "subclass of :exc:`UnicodeError`." @@ -897,7 +953,7 @@ msgstr "" "Levée lorsqu'une erreur liée à Unicode se produit durant le décodage. C'est " "une sous-classe d':exc:`UnicodeError`." -#: library/exceptions.rst:545 +#: library/exceptions.rst:576 msgid "" "Raised when a Unicode-related error occurs during translating. It is a " "subclass of :exc:`UnicodeError`." @@ -905,7 +961,7 @@ msgstr "" "Levée lorsqu'une erreur liée à Unicode se produit durant la traduction. " "C'est une sous-classe d':exc:`UnicodeError`." -#: library/exceptions.rst:551 +#: library/exceptions.rst:582 msgid "" "Raised when an operation or function receives an argument that has the right " "type but an inappropriate value, and the situation is not described by a " @@ -915,7 +971,7 @@ msgstr "" "le bon type mais une valeur inappropriée, et que la situation n'est pas " "décrite par une exception plus précise telle que :exc:`IndexError`." -#: library/exceptions.rst:558 +#: library/exceptions.rst:589 msgid "" "Raised when the second argument of a division or modulo operation is zero. " "The associated value is a string indicating the type of the operands and the " @@ -925,7 +981,7 @@ msgstr "" "est zéro. La valeur associée est une chaîne indiquant le type des opérandes " "et de l'opération." -#: library/exceptions.rst:563 +#: library/exceptions.rst:594 msgid "" "The following exceptions are kept for compatibility with previous versions; " "starting from Python 3.3, they are aliases of :exc:`OSError`." @@ -933,15 +989,15 @@ msgstr "" "Les exceptions suivantes sont conservées pour la compatibilité avec les " "anciennes versions ; depuis Python 3.3, ce sont des alias d':exc:`OSError`." -#: library/exceptions.rst:572 +#: library/exceptions.rst:603 msgid "Only available on Windows." msgstr "Seulement disponible sous Windows." -#: library/exceptions.rst:576 +#: library/exceptions.rst:607 msgid "OS exceptions" msgstr "Exceptions système" -#: library/exceptions.rst:578 +#: library/exceptions.rst:609 msgid "" "The following exceptions are subclasses of :exc:`OSError`, they get raised " "depending on the system error code." @@ -949,7 +1005,7 @@ msgstr "" "Les exceptions suivantes sont des sous-classes d':exc:`OSError`, elles sont " "levées en fonction du code d'erreur système." -#: library/exceptions.rst:583 +#: library/exceptions.rst:614 msgid "" "Raised when an operation would block on an object (e.g. socket) set for non-" "blocking operation. Corresponds to :c:data:`errno` ``EAGAIN``, ``EALREADY``, " @@ -959,7 +1015,7 @@ msgstr "" "configuré pour une opération non-bloquante. Correspond à :c:data:`errno` " "``EAGAIN``, ``EALREADY``, ``EWOULDBLOCK`` et ``EINPROGRESS``." -#: library/exceptions.rst:588 +#: library/exceptions.rst:619 msgid "" "In addition to those of :exc:`OSError`, :exc:`BlockingIOError` can have one " "more attribute:" @@ -967,7 +1023,7 @@ msgstr "" "En plus de ceux de :exc:`OSError`, :exc:`BlockingIOError` peut avoir un " "attribut de plus :" -#: library/exceptions.rst:593 +#: library/exceptions.rst:624 msgid "" "An integer containing the number of characters written to the stream before " "it blocked. This attribute is available when using the buffered I/O classes " @@ -977,7 +1033,7 @@ msgstr "" "qu'il ne soit bloqué. Cet attribut est disponible lors de l'utilisation des " "classes tampon entrées-sorties du module :mod:`io`." -#: library/exceptions.rst:599 +#: library/exceptions.rst:630 msgid "" "Raised when an operation on a child process failed. Corresponds to :c:data:" "`errno` ``ECHILD``." @@ -985,11 +1041,11 @@ msgstr "" "Levée lorsqu'une opération sur un processus enfant a échoué. Correspond à :c:" "data:`errno` ``ECHILD``." -#: library/exceptions.rst:604 +#: library/exceptions.rst:635 msgid "A base class for connection-related issues." msgstr "Une classe de base pour les problèmes de connexion." -#: library/exceptions.rst:606 +#: library/exceptions.rst:637 msgid "" "Subclasses are :exc:`BrokenPipeError`, :exc:`ConnectionAbortedError`, :exc:" "`ConnectionRefusedError` and :exc:`ConnectionResetError`." @@ -998,7 +1054,7 @@ msgstr "" "`ConnectionAbortedError`, :exc:`ConnectionRefusedError` et :exc:" "`ConnectionResetError`." -#: library/exceptions.rst:611 +#: library/exceptions.rst:642 msgid "" "A subclass of :exc:`ConnectionError`, raised when trying to write on a pipe " "while the other end has been closed, or trying to write on a socket which " @@ -1010,7 +1066,7 @@ msgstr "" "un connecteur (*socket* en anglais) qui a été fermé pour l'écriture. " "Correspond à :c:data:`errno` ``EPIPE`` et ``ESHUTDOWN``." -#: library/exceptions.rst:618 +#: library/exceptions.rst:649 msgid "" "A subclass of :exc:`ConnectionError`, raised when a connection attempt is " "aborted by the peer. Corresponds to :c:data:`errno` ``ECONNABORTED``." @@ -1019,7 +1075,7 @@ msgstr "" "connexion est interrompue par le pair. Correspond à :c:data:`errno` " "``ECONNABORTED``." -#: library/exceptions.rst:624 +#: library/exceptions.rst:655 msgid "" "A subclass of :exc:`ConnectionError`, raised when a connection attempt is " "refused by the peer. Corresponds to :c:data:`errno` ``ECONNREFUSED``." @@ -1028,7 +1084,7 @@ msgstr "" "connexion est refusée par le pair. Correspond à :c:data:`errno` " "``ECONNREFUSED``." -#: library/exceptions.rst:630 +#: library/exceptions.rst:661 msgid "" "A subclass of :exc:`ConnectionError`, raised when a connection is reset by " "the peer. Corresponds to :c:data:`errno` ``ECONNRESET``." @@ -1036,7 +1092,7 @@ msgstr "" "Une sous-classe de :exc:`ConnectionError`, levée lorsqu'une connexion est " "réinitialisée par le pair. Correspond à :c:data:`errno` ``ECONNRESET``." -#: library/exceptions.rst:636 +#: library/exceptions.rst:667 msgid "" "Raised when trying to create a file or directory which already exists. " "Corresponds to :c:data:`errno` ``EEXIST``." @@ -1044,7 +1100,7 @@ msgstr "" "Levée en essayant de créer un fichier ou un répertoire qui existe déjà. " "Correspond à :c:data:`errno` ``EEXIST``." -#: library/exceptions.rst:641 +#: library/exceptions.rst:672 msgid "" "Raised when a file or directory is requested but doesn't exist. Corresponds " "to :c:data:`errno` ``ENOENT``." @@ -1052,7 +1108,7 @@ msgstr "" "Levée lorsqu'un fichier ou répertoire est demandé mais n'existe pas. " "Correspond à :c:data:`errno` ``ENOENT``." -#: library/exceptions.rst:646 +#: library/exceptions.rst:677 msgid "" "Raised when a system call is interrupted by an incoming signal. Corresponds " "to :c:data:`errno` :py:data:`~errno.EINTR`." @@ -1060,7 +1116,7 @@ msgstr "" "Levée lorsqu'un appel système est interrompu par un signal entrant. " "Correspond à :c:data:`errno` :py:data:`~errno.EINTR`." -#: library/exceptions.rst:649 +#: library/exceptions.rst:680 msgid "" "Python now retries system calls when a syscall is interrupted by a signal, " "except if the signal handler raises an exception (see :pep:`475` for the " @@ -1070,7 +1126,7 @@ msgstr "" "un signal, sauf si le gestionnaire de signal lève une exception (voir :pep:" "`475` pour les raisons), au lieu de lever :exc:`InterruptedError`." -#: library/exceptions.rst:656 +#: library/exceptions.rst:687 msgid "" "Raised when a file operation (such as :func:`os.remove`) is requested on a " "directory. Corresponds to :c:data:`errno` ``EISDIR``." @@ -1078,17 +1134,19 @@ msgstr "" "Levée lorsqu'une opération sur un fichier (comme :func:`os.remove`) est " "demandée sur un répertoire. Correspond à :c:data:`errno` ``EISDIR``." -#: library/exceptions.rst:662 +#: library/exceptions.rst:693 +#, fuzzy msgid "" "Raised when a directory operation (such as :func:`os.listdir`) is requested " -"on something which is not a directory. Corresponds to :c:data:`errno` " -"``ENOTDIR``." +"on something which is not a directory. On most POSIX platforms, it may also " +"be raised if an operation attempts to open or traverse a non-directory file " +"as if it were a directory. Corresponds to :c:data:`errno` ``ENOTDIR``." msgstr "" "Levée lorsqu'une opération sur un répertoire (comme :func:`os.listdir`) est " "demandée sur autre chose qu'un répertoire. Correspond à :c:data:`errno` " "``ENOTDIR``." -#: library/exceptions.rst:668 +#: library/exceptions.rst:701 msgid "" "Raised when trying to run an operation without the adequate access rights - " "for example filesystem permissions. Corresponds to :c:data:`errno` " @@ -1098,7 +1156,7 @@ msgstr "" "adéquats — par exemple les permissions du système de fichiers. Correspond à :" "c:data:`errno` ``EACCES`` et ``EPERM``." -#: library/exceptions.rst:674 +#: library/exceptions.rst:707 msgid "" "Raised when a given process doesn't exist. Corresponds to :c:data:`errno` " "``ESRCH``." @@ -1106,7 +1164,7 @@ msgstr "" "Levée lorsqu'un processus donné n'existe pas. Correspond à :c:data:`errno` " "``ESRCH``." -#: library/exceptions.rst:679 +#: library/exceptions.rst:712 msgid "" "Raised when a system function timed out at the system level. Corresponds to :" "c:data:`errno` ``ETIMEDOUT``." @@ -1114,19 +1172,19 @@ msgstr "" "Levée lorsqu'une fonction système a expiré au niveau système. Correspond à :" "c:data:`errno` ``ETIMEDOUT``." -#: library/exceptions.rst:682 +#: library/exceptions.rst:715 msgid "All the above :exc:`OSError` subclasses were added." msgstr "Toutes les sous-classes d':exc:`OSError` ci-dessus ont été ajoutées." -#: library/exceptions.rst:688 +#: library/exceptions.rst:721 msgid ":pep:`3151` - Reworking the OS and IO exception hierarchy" msgstr ":pep:`3151` -- Refonte de la hiérarchie des exceptions système et IO" -#: library/exceptions.rst:694 +#: library/exceptions.rst:727 msgid "Warnings" msgstr "Avertissements" -#: library/exceptions.rst:696 +#: library/exceptions.rst:729 msgid "" "The following exceptions are used as warning categories; see the :ref:" "`warning-categories` documentation for more details." @@ -1134,16 +1192,16 @@ msgstr "" "Les exceptions suivantes sont utilisées comme catégories d'avertissement ; " "voir :mod:`warning-categories` pour plus d'informations." -#: library/exceptions.rst:701 +#: library/exceptions.rst:734 msgid "Base class for warning categories." msgstr "Classe de base pour les catégories d'avertissement." -#: library/exceptions.rst:706 +#: library/exceptions.rst:739 msgid "Base class for warnings generated by user code." msgstr "" "Classe de base pour les avertissements générés par du code utilisateur." -#: library/exceptions.rst:711 +#: library/exceptions.rst:744 msgid "" "Base class for warnings about deprecated features when those warnings are " "intended for other Python developers." @@ -1151,14 +1209,18 @@ msgstr "" "Classe de base pour les avertissements sur les fonctionnalités obsolètes, " "lorsque ces avertissements sont destinés aux autres développeurs Python." -#: library/exceptions.rst:714 +#: library/exceptions.rst:747 msgid "" "Ignored by the default warning filters, except in the ``__main__`` module (:" "pep:`565`). Enabling the :ref:`Python Development Mode ` shows this " "warning." msgstr "" -#: library/exceptions.rst:721 +#: library/exceptions.rst:767 +msgid "The deprecation policy is described in :pep:`387`." +msgstr "" + +#: library/exceptions.rst:756 msgid "" "Base class for warnings about features which are obsolete and expected to be " "deprecated in the future, but are not deprecated at the moment." @@ -1167,7 +1229,7 @@ msgstr "" "indiquent que la fonctionnalité peut encore être utilisée actuellement, mais " "qu'elle sera supprimée dans le futur." -#: library/exceptions.rst:725 +#: library/exceptions.rst:760 msgid "" "This class is rarely used as emitting a warning about a possible upcoming " "deprecation is unusual, and :exc:`DeprecationWarning` is preferred for " @@ -1177,23 +1239,23 @@ msgstr "" "d’une obsolescence à venir est inhabituel, et :exc:`DeprecationWarning` est " "préféré pour les obsolescences actuelles." -#: library/exceptions.rst:753 library/exceptions.rst:771 +#: library/exceptions.rst:790 library/exceptions.rst:817 msgid "" "Ignored by the default warning filters. Enabling the :ref:`Python " "Development Mode ` shows this warning." msgstr "" -#: library/exceptions.rst:735 +#: library/exceptions.rst:772 msgid "Base class for warnings about dubious syntax." msgstr "Classe de base pour les avertissements sur de la syntaxe douteuse." -#: library/exceptions.rst:740 +#: library/exceptions.rst:777 msgid "Base class for warnings about dubious runtime behavior." msgstr "" "Classe de base pour les avertissements sur les comportements d'exécution " "douteux." -#: library/exceptions.rst:745 +#: library/exceptions.rst:782 msgid "" "Base class for warnings about deprecated features when those warnings are " "intended for end users of applications that are written in Python." @@ -1202,36 +1264,54 @@ msgstr "" "seront obsolètes dans le futur quand ces avertissements destinés aux " "utilisateurs finaux des applications écrites en Python." -#: library/exceptions.rst:751 +#: library/exceptions.rst:788 msgid "Base class for warnings about probable mistakes in module imports." msgstr "" "Classe de base pour les avertissements sur des erreurs probables dans les " "importations de modules." -#: library/exceptions.rst:759 +#: library/exceptions.rst:796 msgid "Base class for warnings related to Unicode." msgstr "Classe de base pour les avertissements liés à l'Unicode." -#: library/exceptions.rst:764 +#: library/exceptions.rst:801 +#, fuzzy +msgid "Base class for warnings related to encodings." +msgstr "Classe de base pour les avertissements liés à l'Unicode." + +#: library/exceptions.rst:803 +msgid "See :ref:`io-encoding-warning` for details." +msgstr "" + +#: library/exceptions.rst:810 msgid "" "Base class for warnings related to :class:`bytes` and :class:`bytearray`." msgstr "" "Classe de base pour les avertissements liés à :class:`bytes` et :class:" "`bytearray`." -#: library/exceptions.rst:769 +#: library/exceptions.rst:815 #, fuzzy msgid "Base class for warnings related to resource usage." msgstr "Classe de base pour les avertissements liés à l'Unicode." -#: library/exceptions.rst:779 +#: library/exceptions.rst:825 msgid "Exception hierarchy" msgstr "Hiérarchie des exceptions" -#: library/exceptions.rst:781 +#: library/exceptions.rst:827 msgid "The class hierarchy for built-in exceptions is:" msgstr "La hiérarchie de classes pour les exceptions natives est la suivante :" +#~ msgid "" +#~ "This method sets *tb* as the new traceback for the exception and returns " +#~ "the exception object. It is usually used in exception handling code like " +#~ "this::" +#~ msgstr "" +#~ "Cette méthode définit *tb* en tant que nouvelle trace d'appels pour " +#~ "l'exception et retourne l'objet exception. Elle est généralement utilisée " +#~ "dans du code de gestion d'exceptions comme ceci ::" + #~ msgid "" #~ "Instances of this class have attributes :attr:`filename`, :attr:" #~ "`lineno`, :attr:`offset` and :attr:`text` for easier access to the " diff --git a/library/faulthandler.po b/library/faulthandler.po index 1f224e666..05808053d 100644 --- a/library/faulthandler.po +++ b/library/faulthandler.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -98,7 +98,7 @@ msgid "" "``False``, dump only the current thread." msgstr "" -#: library/faulthandler.rst:73 library/faulthandler.rst:133 +#: library/faulthandler.rst:73 library/faulthandler.rst:137 msgid "Added support for passing file descriptor to this function." msgstr "" @@ -124,21 +124,27 @@ msgstr "" msgid "On Windows, a handler for Windows exception is also installed." msgstr "" -#: library/faulthandler.rst:81 +#: library/faulthandler.rst:79 +msgid "" +"The dump now mentions if a garbage collector collection is running if " +"*all_threads* is true." +msgstr "" + +#: library/faulthandler.rst:85 msgid "" "Disable the fault handler: uninstall the signal handlers installed by :func:" "`enable`." msgstr "" -#: library/faulthandler.rst:86 +#: library/faulthandler.rst:90 msgid "Check if the fault handler is enabled." msgstr "" -#: library/faulthandler.rst:90 +#: library/faulthandler.rst:94 msgid "Dumping the tracebacks after a timeout" msgstr "" -#: library/faulthandler.rst:94 +#: library/faulthandler.rst:98 msgid "" "Dump the tracebacks of all threads, after a timeout of *timeout* seconds, or " "every *timeout* seconds if *repeat* is ``True``. If *exit* is ``True``, " @@ -149,58 +155,58 @@ msgid "" "a sub-second resolution." msgstr "" -#: library/faulthandler.rst:102 +#: library/faulthandler.rst:106 msgid "" "The *file* must be kept open until the traceback is dumped or :func:" "`cancel_dump_traceback_later` is called: see :ref:`issue with file " "descriptors `." msgstr "" -#: library/faulthandler.rst:106 +#: library/faulthandler.rst:110 msgid "This function is implemented using a watchdog thread." msgstr "" -#: library/faulthandler.rst:108 +#: library/faulthandler.rst:112 msgid "This function is now always available." msgstr "" -#: library/faulthandler.rst:116 +#: library/faulthandler.rst:120 msgid "Cancel the last call to :func:`dump_traceback_later`." msgstr "" -#: library/faulthandler.rst:120 +#: library/faulthandler.rst:124 msgid "Dumping the traceback on a user signal" msgstr "" -#: library/faulthandler.rst:124 +#: library/faulthandler.rst:128 msgid "" "Register a user signal: install a handler for the *signum* signal to dump " "the traceback of all threads, or of the current thread if *all_threads* is " "``False``, into *file*. Call the previous handler if chain is ``True``." msgstr "" -#: library/faulthandler.rst:128 +#: library/faulthandler.rst:132 msgid "" "The *file* must be kept open until the signal is unregistered by :func:" "`unregister`: see :ref:`issue with file descriptors `." msgstr "" -#: library/faulthandler.rst:142 +#: library/faulthandler.rst:146 msgid "Not available on Windows." msgstr "" -#: library/faulthandler.rst:138 +#: library/faulthandler.rst:142 msgid "" "Unregister a user signal: uninstall the handler of the *signum* signal " "installed by :func:`register`. Return ``True`` if the signal was registered, " "``False`` otherwise." msgstr "" -#: library/faulthandler.rst:148 +#: library/faulthandler.rst:152 msgid "Issue with file descriptors" msgstr "" -#: library/faulthandler.rst:150 +#: library/faulthandler.rst:154 msgid "" ":func:`enable`, :func:`dump_traceback_later` and :func:`register` keep the " "file descriptor of their *file* argument. If the file is closed and its file " @@ -209,11 +215,11 @@ msgid "" "Call these functions again each time that the file is replaced." msgstr "" -#: library/faulthandler.rst:158 +#: library/faulthandler.rst:162 msgid "Example" msgstr "Exemple" -#: library/faulthandler.rst:160 +#: library/faulthandler.rst:164 msgid "" "Example of a segmentation fault on Linux with and without enabling the fault " "handler:" diff --git a/library/fcntl.po b/library/fcntl.po index fd4d1271c..68d2b2d96 100644 --- a/library/fcntl.po +++ b/library/fcntl.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2017-08-10 00:59+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -58,10 +58,17 @@ msgid "" msgstr "" #: library/fcntl.rst:42 +msgid "" +"On Linux >= 2.6.11, the fcntl module exposes the ``F_GETPIPE_SZ`` and " +"``F_SETPIPE_SZ`` constants, which allow to check and modify a pipe's size " +"respectively." +msgstr "" + +#: library/fcntl.rst:47 msgid "The module defines the following functions:" msgstr "Le module définit les fonctions suivantes :" -#: library/fcntl.rst:47 +#: library/fcntl.rst:52 msgid "" "Perform the operation *cmd* on file descriptor *fd* (file objects providing " "a :meth:`~io.IOBase.fileno` method are accepted as well). The values used " @@ -80,23 +87,23 @@ msgid "" "result in a segmentation violation or a more subtle data corruption." msgstr "" -#: library/fcntl.rst:64 +#: library/fcntl.rst:69 msgid "If the :c:func:`fcntl` fails, an :exc:`OSError` is raised." msgstr "" -#: library/fcntl.rst:66 +#: library/fcntl.rst:71 msgid "" "Raises an :ref:`auditing event ` ``fcntl.fcntl`` with arguments " "``fd``, ``cmd``, ``arg``." msgstr "" -#: library/fcntl.rst:71 +#: library/fcntl.rst:76 msgid "" "This function is identical to the :func:`~fcntl.fcntl` function, except that " "the argument handling is even more complicated." msgstr "" -#: library/fcntl.rst:74 +#: library/fcntl.rst:79 msgid "" "The *request* parameter is limited to values that can fit in 32-bits. " "Additional constants of interest for use as the *request* argument can be " @@ -104,26 +111,26 @@ msgid "" "relevant C header files." msgstr "" -#: library/fcntl.rst:79 +#: library/fcntl.rst:84 msgid "" "The parameter *arg* can be one of an integer, an object supporting the read-" "only buffer interface (like :class:`bytes`) or an object supporting the read-" "write buffer interface (like :class:`bytearray`)." msgstr "" -#: library/fcntl.rst:83 +#: library/fcntl.rst:88 msgid "" "In all but the last case, behaviour is as for the :func:`~fcntl.fcntl` " "function." msgstr "" -#: library/fcntl.rst:86 +#: library/fcntl.rst:91 msgid "" "If a mutable buffer is passed, then the behaviour is determined by the value " "of the *mutate_flag* parameter." msgstr "" -#: library/fcntl.rst:89 +#: library/fcntl.rst:94 msgid "" "If it is false, the buffer's mutability is ignored and behaviour is as for a " "read-only buffer, except that the 1024 byte limit mentioned above is avoided " @@ -131,7 +138,7 @@ msgid "" "system wants to put there, things should work." msgstr "" -#: library/fcntl.rst:94 +#: library/fcntl.rst:99 msgid "" "If *mutate_flag* is true (the default), then the buffer is (in effect) " "passed to the underlying :func:`ioctl` system call, the latter's return code " @@ -142,21 +149,21 @@ msgid "" "copied back into the supplied buffer." msgstr "" -#: library/fcntl.rst:102 +#: library/fcntl.rst:107 msgid "If the :c:func:`ioctl` fails, an :exc:`OSError` exception is raised." msgstr "" -#: library/fcntl.rst:104 +#: library/fcntl.rst:109 msgid "An example::" msgstr "Un exemple ::" -#: library/fcntl.rst:117 +#: library/fcntl.rst:122 msgid "" "Raises an :ref:`auditing event ` ``fcntl.ioctl`` with arguments " "``fd``, ``request``, ``arg``." msgstr "" -#: library/fcntl.rst:122 +#: library/fcntl.rst:127 msgid "" "Perform the lock operation *operation* on file descriptor *fd* (file objects " "providing a :meth:`~io.IOBase.fileno` method are accepted as well). See the " @@ -164,17 +171,17 @@ msgid "" "function is emulated using :c:func:`fcntl`.)" msgstr "" -#: library/fcntl.rst:127 +#: library/fcntl.rst:132 msgid "If the :c:func:`flock` fails, an :exc:`OSError` exception is raised." msgstr "" -#: library/fcntl.rst:129 +#: library/fcntl.rst:134 msgid "" "Raises an :ref:`auditing event ` ``fcntl.flock`` with arguments " "``fd``, ``operation``." msgstr "" -#: library/fcntl.rst:134 +#: library/fcntl.rst:139 msgid "" "This is essentially a wrapper around the :func:`~fcntl.fcntl` locking calls. " "*fd* is the file descriptor (file objects providing a :meth:`~io.IOBase." @@ -182,19 +189,19 @@ msgid "" "*cmd* is one of the following values:" msgstr "" -#: library/fcntl.rst:139 +#: library/fcntl.rst:144 msgid ":const:`LOCK_UN` -- unlock" msgstr "" -#: library/fcntl.rst:140 +#: library/fcntl.rst:145 msgid ":const:`LOCK_SH` -- acquire a shared lock" msgstr "" -#: library/fcntl.rst:141 +#: library/fcntl.rst:146 msgid ":const:`LOCK_EX` -- acquire an exclusive lock" msgstr "" -#: library/fcntl.rst:143 +#: library/fcntl.rst:148 msgid "" "When *cmd* is :const:`LOCK_SH` or :const:`LOCK_EX`, it can also be bitwise " "ORed with :const:`LOCK_NB` to avoid blocking on lock acquisition. If :const:" @@ -206,44 +213,44 @@ msgid "" "for writing." msgstr "" -#: library/fcntl.rst:152 +#: library/fcntl.rst:157 msgid "" "*len* is the number of bytes to lock, *start* is the byte offset at which " "the lock starts, relative to *whence*, and *whence* is as with :func:`io." "IOBase.seek`, specifically:" msgstr "" -#: library/fcntl.rst:156 +#: library/fcntl.rst:161 msgid ":const:`0` -- relative to the start of the file (:data:`os.SEEK_SET`)" msgstr "" -#: library/fcntl.rst:157 +#: library/fcntl.rst:162 msgid "" ":const:`1` -- relative to the current buffer position (:data:`os.SEEK_CUR`)" msgstr "" -#: library/fcntl.rst:158 +#: library/fcntl.rst:163 msgid ":const:`2` -- relative to the end of the file (:data:`os.SEEK_END`)" msgstr "" -#: library/fcntl.rst:160 +#: library/fcntl.rst:165 msgid "" "The default for *start* is 0, which means to start at the beginning of the " "file. The default for *len* is 0 which means to lock to the end of the " "file. The default for *whence* is also 0." msgstr "" -#: library/fcntl.rst:164 +#: library/fcntl.rst:169 msgid "" "Raises an :ref:`auditing event ` ``fcntl.lockf`` with arguments " "``fd``, ``cmd``, ``len``, ``start``, ``whence``." msgstr "" -#: library/fcntl.rst:166 +#: library/fcntl.rst:171 msgid "Examples (all on a SVR4 compliant system)::" msgstr "" -#: library/fcntl.rst:176 +#: library/fcntl.rst:181 msgid "" "Note that in the first example the return value variable *rv* will hold an " "integer value; in the second example it will hold a :class:`bytes` object. " @@ -251,11 +258,11 @@ msgid "" "therefore using the :func:`flock` call may be better." msgstr "" -#: library/fcntl.rst:187 +#: library/fcntl.rst:192 msgid "Module :mod:`os`" msgstr "Module :mod:`os`" -#: library/fcntl.rst:185 +#: library/fcntl.rst:190 msgid "" "If the locking flags :data:`~os.O_SHLOCK` and :data:`~os.O_EXLOCK` are " "present in the :mod:`os` module (on BSD only), the :func:`os.open` function " diff --git a/library/filecmp.po b/library/filecmp.po index e9e81bce8..34a8d4b6d 100644 --- a/library/filecmp.po +++ b/library/filecmp.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-05-23 20:39+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -46,15 +46,23 @@ msgstr "" "égaux, ``False`` sinon." #: library/filecmp.rst:25 +#, fuzzy msgid "" -"If *shallow* is true, files with identical :func:`os.stat` signatures are " -"taken to be equal. Otherwise, the contents of the files are compared." +"If *shallow* is true and the :func:`os.stat` signatures (file type, size, " +"and modification time) of both files are identical, the files are taken to " +"be equal." msgstr "" "Si *shallow* est vrai, les fichiers avec des signatures :func:`os.stat()` " "identiques sont considérés comme égaux. Sinon, le contenu des fichiers est " "comparé." -#: library/filecmp.rst:28 +#: library/filecmp.rst:29 +msgid "" +"Otherwise, the files are treated as different if their sizes or contents " +"differ." +msgstr "" + +#: library/filecmp.rst:31 msgid "" "Note that no external programs are called from this function, giving it " "portability and efficiency." @@ -62,7 +70,7 @@ msgstr "" "Notez qu'aucun programme externe n'est appelé à partir de cette fonction, ce " "qui lui confère des qualités de portabilité et d'efficacité." -#: library/filecmp.rst:31 +#: library/filecmp.rst:34 msgid "" "This function uses a cache for past comparisons and the results, with cache " "entries invalidated if the :func:`os.stat` information for the file " @@ -73,7 +81,7 @@ msgstr "" "`os.stat()` du fichier sont modifiées. La totalité du cache peut être " "effacée avec :func:`clear_cache()`." -#: library/filecmp.rst:38 +#: library/filecmp.rst:41 msgid "" "Compare the files in the two directories *dir1* and *dir2* whose names are " "given by *common*." @@ -81,7 +89,7 @@ msgstr "" "Compare les fichiers des deux répertoires *dir1* et *dir2* dont les noms " "sont donnés par *common*." -#: library/filecmp.rst:41 +#: library/filecmp.rst:44 msgid "" "Returns three lists of file names: *match*, *mismatch*, *errors*. *match* " "contains the list of files that match, *mismatch* contains the names of " @@ -98,7 +106,7 @@ msgstr "" "l'utilisateur ne dispose pas de l'autorisation nécessaire pour les lire ou " "si la comparaison n'a pas pu être effectuée pour une autre raison." -#: library/filecmp.rst:48 +#: library/filecmp.rst:51 msgid "" "The *shallow* parameter has the same meaning and default value as for :func:" "`filecmp.cmp`." @@ -106,7 +114,7 @@ msgstr "" "Le paramètre *shallow* a la même signification et la même valeur par défaut " "que pour :func:`filecmp.cmp`." -#: library/filecmp.rst:51 +#: library/filecmp.rst:54 msgid "" "For example, ``cmpfiles('a', 'b', ['c', 'd/e'])`` will compare ``a/c`` with " "``b/c`` and ``a/d/e`` with ``b/d/e``. ``'c'`` and ``'d/e'`` will each be in " @@ -116,7 +124,7 @@ msgstr "" "c`` et ``a/d/e`` avec ``b/d/e``. ``'c'`` et ``'d/e'`` seront chacun dans " "l'une des trois listes renvoyées." -#: library/filecmp.rst:58 +#: library/filecmp.rst:61 msgid "" "Clear the filecmp cache. This may be useful if a file is compared so quickly " "after it is modified that it is within the mtime resolution of the " @@ -126,11 +134,11 @@ msgstr "" "juste après avoir été modifié (dans un délai inférieur à la résolution " "*mtime* du système de fichiers sous-jacent)." -#: library/filecmp.rst:68 +#: library/filecmp.rst:71 msgid "The :class:`dircmp` class" msgstr "La classe :class:`dircmp`" -#: library/filecmp.rst:72 +#: library/filecmp.rst:75 msgid "" "Construct a new directory comparison object, to compare the directories *a* " "and *b*. *ignore* is a list of names to ignore, and defaults to :attr:" @@ -142,7 +150,7 @@ msgstr "" "à :attr:`filecmp.DEFAULT_IGNORES`. *hide* est une liste de noms à cacher, " "par défaut à ``[os.curdir, os.pardir]``." -#: library/filecmp.rst:77 +#: library/filecmp.rst:80 msgid "" "The :class:`dircmp` class compares files by doing *shallow* comparisons as " "described for :func:`filecmp.cmp`." @@ -150,22 +158,22 @@ msgstr "" "La classe :class:`dircmp` compare les fichiers en faisant des comparaisons " "*superficielles* comme décrit pour :func:`filecmp.cmp`." -#: library/filecmp.rst:80 +#: library/filecmp.rst:83 msgid "The :class:`dircmp` class provides the following methods:" msgstr "La classe :class:`dircmp` fournit les méthodes suivantes :" -#: library/filecmp.rst:84 +#: library/filecmp.rst:87 msgid "Print (to :data:`sys.stdout`) a comparison between *a* and *b*." msgstr "Affiche (sur :data:`sys.stdout`) une comparaison entre *a* et *b*." -#: library/filecmp.rst:88 +#: library/filecmp.rst:91 msgid "" "Print a comparison between *a* and *b* and common immediate subdirectories." msgstr "" "Affiche une comparaison entre *a* et *b* et les sous-répertoires immédiats " "communs." -#: library/filecmp.rst:93 +#: library/filecmp.rst:96 msgid "" "Print a comparison between *a* and *b* and common subdirectories " "(recursively)." @@ -173,7 +181,7 @@ msgstr "" "Affiche une comparaison entre a et b et les sous-répertoires communs " "(récursivement)." -#: library/filecmp.rst:96 +#: library/filecmp.rst:99 msgid "" "The :class:`dircmp` class offers a number of interesting attributes that may " "be used to get various bits of information about the directory trees being " @@ -183,7 +191,7 @@ msgstr "" "qui peuvent être utilisés pour obtenir diverses informations sur les " "arborescences de répertoires comparées." -#: library/filecmp.rst:100 +#: library/filecmp.rst:103 msgid "" "Note that via :meth:`__getattr__` hooks, all attributes are computed lazily, " "so there is no speed penalty if only those attributes which are lightweight " @@ -193,45 +201,45 @@ msgstr "" "sont calculés de manière paresseuse. Il n'y a donc pas de pénalité en " "vitesse si seuls les attributs rapides à calculer sont utilisés." -#: library/filecmp.rst:107 +#: library/filecmp.rst:110 msgid "The directory *a*." msgstr "Le répertoire *a*." -#: library/filecmp.rst:112 +#: library/filecmp.rst:115 msgid "The directory *b*." msgstr "Le répertoire *b*." -#: library/filecmp.rst:117 +#: library/filecmp.rst:120 msgid "Files and subdirectories in *a*, filtered by *hide* and *ignore*." msgstr "" "Fichiers et sous-répertoires dans *a* , filtrés par *hide* et *ignore*." -#: library/filecmp.rst:122 +#: library/filecmp.rst:125 msgid "Files and subdirectories in *b*, filtered by *hide* and *ignore*." msgstr "" "Fichiers et sous-répertoires dans *b* , filtrés par *hide* et *ignore*." -#: library/filecmp.rst:127 +#: library/filecmp.rst:130 msgid "Files and subdirectories in both *a* and *b*." msgstr "Fichiers et sous-répertoires à la fois dans *a* et *b*." -#: library/filecmp.rst:132 +#: library/filecmp.rst:135 msgid "Files and subdirectories only in *a*." msgstr "Fichiers et sous-répertoires uniquement dans *a*." -#: library/filecmp.rst:137 +#: library/filecmp.rst:140 msgid "Files and subdirectories only in *b*." msgstr "Fichiers et sous-répertoires uniquement dans *b*." -#: library/filecmp.rst:142 +#: library/filecmp.rst:145 msgid "Subdirectories in both *a* and *b*." msgstr "Sous-répertoires à la fois dans *a* et *b*." -#: library/filecmp.rst:147 +#: library/filecmp.rst:150 msgid "Files in both *a* and *b*." msgstr "Fichiers à la fois dans *a* et *b*." -#: library/filecmp.rst:152 +#: library/filecmp.rst:155 msgid "" "Names in both *a* and *b*, such that the type differs between the " "directories, or names for which :func:`os.stat` reports an error." @@ -239,7 +247,7 @@ msgstr "" "Noms dans *a* et *b* , tels que le type diffère entre les répertoires, ou " "noms pour lesquels :func:`os.stat` signale une erreur." -#: library/filecmp.rst:158 +#: library/filecmp.rst:161 msgid "" "Files which are identical in both *a* and *b*, using the class's file " "comparison operator." @@ -247,7 +255,7 @@ msgstr "" "Fichiers identiques dans *a* et *b*, en utilisant l'opérateur de comparaison " "de fichiers de la classe." -#: library/filecmp.rst:164 +#: library/filecmp.rst:167 msgid "" "Files which are in both *a* and *b*, whose contents differ according to the " "class's file comparison operator." @@ -255,23 +263,32 @@ msgstr "" "Fichiers figurant à la fois dans *a* et dans *b* , dont le contenu diffère " "en fonction de l'opérateur de comparaison de fichiers de la classe." -#: library/filecmp.rst:170 +#: library/filecmp.rst:173 msgid "Files which are in both *a* and *b*, but could not be compared." msgstr "" "Fichiers à la fois dans *a* et dans *b* , mais ne pouvant pas être comparés." -#: library/filecmp.rst:175 +#: library/filecmp.rst:178 +#, fuzzy msgid "" -"A dictionary mapping names in :attr:`common_dirs` to :class:`dircmp` objects." +"A dictionary mapping names in :attr:`common_dirs` to :class:`dircmp` " +"instances (or MyDirCmp instances if this instance is of type MyDirCmp, a " +"subclass of :class:`dircmp`)." msgstr "" "Un dictionnaire faisant correspondre les noms dans :attr:`common_dirs` vers " "des objets :class:`dircmp`." #: library/filecmp.rst:182 +msgid "" +"Previously entries were always :class:`dircmp` instances. Now entries are " +"the same type as *self*, if *self* is a subclass of :class:`dircmp`." +msgstr "" + +#: library/filecmp.rst:191 msgid "List of directories ignored by :class:`dircmp` by default." msgstr "Liste des répertoires ignorés par défaut par :class:`dircmp`." -#: library/filecmp.rst:185 +#: library/filecmp.rst:194 msgid "" "Here is a simplified example of using the ``subdirs`` attribute to search " "recursively through two directories to show common different files::" diff --git a/library/fileinput.po b/library/fileinput.po index 424fd5741..029ada13b 100644 --- a/library/fileinput.po +++ b/library/fileinput.po @@ -5,14 +5,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-08 14:47+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-19 23:19+0200\n" +"Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Last-Translator: Jean Abou Samra \n" "X-Generator: Poedit 2.4.1\n" #: library/fileinput.rst:2 @@ -103,12 +103,15 @@ msgstr "" "fichier." #: library/fileinput.rst:49 +#, fuzzy msgid "" "You can control how files are opened by providing an opening hook via the " "*openhook* parameter to :func:`fileinput.input` or :class:`FileInput()`. The " "hook must be a function that takes two arguments, *filename* and *mode*, and " -"returns an accordingly opened file-like object. Two useful hooks are already " -"provided by this module." +"returns an accordingly opened file-like object. If *encoding* and/or " +"*errors* are specified, they will be passed to the hook as aditional keyword " +"arguments. This module provides a :func:`hook_compressed` to support " +"compressed files." msgstr "" "Le paramètre *openhook* donne le contrôle sur la manière dont les fichiers " "sont ouverts par :func:`fileinput.input` ou :class:`FileInput()`. Il s'agit " @@ -118,11 +121,11 @@ msgstr "" "module contient deux fonctions prédéfinies qui peuvent être passées pour " "*openhook*." -#: library/fileinput.rst:55 +#: library/fileinput.rst:56 msgid "The following function is the primary interface of this module:" msgstr "La fonction suivante constitue l'interface principale du module :" -#: library/fileinput.rst:60 +#: library/fileinput.rst:61 msgid "" "Create an instance of the :class:`FileInput` class. The instance will be " "used as global state for the functions of this module, and is also returned " @@ -135,7 +138,7 @@ msgstr "" "paramètres de cette fonction sont transmis au constructeur de :class:" "`FileInput`." -#: library/fileinput.rst:65 +#: library/fileinput.rst:66 msgid "" "The :class:`FileInput` instance can be used as a context manager in the :" "keyword:`with` statement. In this example, *input* is closed after the :" @@ -146,15 +149,21 @@ msgstr "" "*input* est fermé lorsque le bloc :keyword:`!with` se termine, y compris si " "une exception l'a interrompu." -#: library/fileinput.rst:166 +#: library/fileinput.rst:171 msgid "Can be used as a context manager." msgstr "prise en charge du protocole de gestionnaire de contexte." -#: library/fileinput.rst:76 +#: library/fileinput.rst:77 msgid "The keyword parameters *mode* and *openhook* are now keyword-only." msgstr "les paramètres *mode* et *openhook* doivent être nommés." -#: library/fileinput.rst:80 +#: library/fileinput.rst:183 library/fileinput.rst:213 +#, fuzzy +msgid "The keyword-only parameter *encoding* and *errors* are added." +msgstr "" +"les paramètres *mode* et *openhook* doivent impérativement être nommés." + +#: library/fileinput.rst:84 msgid "" "The following functions use the global state created by :func:`fileinput." "input`; if there is no active state, :exc:`RuntimeError` is raised." @@ -163,7 +172,7 @@ msgstr "" "place par :func:`fileinput.input`. L'absence de cet état déclenche " "l'exception :exc:`RuntimeError`." -#: library/fileinput.rst:86 +#: library/fileinput.rst:90 msgid "" "Return the name of the file currently being read. Before the first line has " "been read, returns ``None``." @@ -171,7 +180,7 @@ msgstr "" "Renvoie le nom du fichier en train d'être lu, ou ``None`` avant la lecture " "de la toute première ligne." -#: library/fileinput.rst:92 +#: library/fileinput.rst:96 msgid "" "Return the integer \"file descriptor\" for the current file. When no file is " "opened (before the first line and between files), returns ``-1``." @@ -180,7 +189,7 @@ msgstr "" "fichier courant. Si aucun fichier n'est ouvert (avant la première ligne et " "entre les fichiers), le résultat est ``-1``." -#: library/fileinput.rst:98 +#: library/fileinput.rst:102 msgid "" "Return the cumulative line number of the line that has just been read. " "Before the first line has been read, returns ``0``. After the last line of " @@ -191,7 +200,7 @@ msgstr "" "``0``. Après la dernière ligne du dernier fichier, renvoie le numéro de " "cette ligne." -#: library/fileinput.rst:105 +#: library/fileinput.rst:109 msgid "" "Return the line number in the current file. Before the first line has been " "read, returns ``0``. After the last line of the last file has been read, " @@ -201,7 +210,7 @@ msgstr "" "première ligne, renvoie ``0``. Après la toute dernière ligne, renvoie le " "numéro de cette ligne par rapport à son fichier source." -#: library/fileinput.rst:112 +#: library/fileinput.rst:116 msgid "" "Return ``True`` if the line just read is the first line of its file, " "otherwise return ``False``." @@ -209,7 +218,7 @@ msgstr "" "Renvoie ``True`` ou ``False`` selon que la ligne qui vient d'être lue est la " "première du fichier." -#: library/fileinput.rst:118 +#: library/fileinput.rst:122 msgid "" "Return ``True`` if the last line was read from ``sys.stdin``, otherwise " "return ``False``." @@ -217,7 +226,7 @@ msgstr "" "``True`` ou ``False`` selon que la dernière ligne lue provenait de ``sys." "stdin`` ou non." -#: library/fileinput.rst:124 +#: library/fileinput.rst:128 msgid "" "Close the current file so that the next iteration will read the first line " "from the next file (if any); lines not read from the file will not count " @@ -235,13 +244,13 @@ msgstr "" "fichier suivant a été lue. Cette fonction n'a pas d'effet avant la lecture " "de la première ligne (elle ne peut pas sauter le premier fichier)." -#: library/fileinput.rst:134 +#: library/fileinput.rst:138 msgid "Close the sequence." msgstr "" "Ferme le fichier courant et termine la lecture en sautant les fichiers " "suivants." -#: library/fileinput.rst:136 +#: library/fileinput.rst:140 msgid "" "The class which implements the sequence behavior provided by the module is " "available for subclassing as well:" @@ -249,7 +258,7 @@ msgstr "" "La classe qui implémente ce comportement du module est publique. On peut en " "créer des classes filles." -#: library/fileinput.rst:142 +#: library/fileinput.rst:146 msgid "" "Class :class:`FileInput` is the implementation; its methods :meth:" "`filename`, :meth:`fileno`, :meth:`lineno`, :meth:`filelineno`, :meth:" @@ -270,7 +279,7 @@ msgstr "" "dans l'ordre (l'accès à un indice arbitraire n'étant pas compatible avec :" "meth:`~io.TextIOBase.readline`)." -#: library/fileinput.rst:151 +#: library/fileinput.rst:155 msgid "" "With *mode* you can specify which file mode will be passed to :func:`open`. " "It must be one of ``'r'``, ``'rU'``, ``'U'`` and ``'rb'``." @@ -279,7 +288,7 @@ msgstr "" "est passé directement à :func:`open`. Les valeurs possibles sont ``'r'``, " "``'rU'``, ``'U'`` et ``'rb'``." -#: library/fileinput.rst:154 +#: library/fileinput.rst:158 msgid "" "The *openhook*, when given, must be a function that takes two arguments, " "*filename* and *mode*, and returns an accordingly opened file-like object. " @@ -290,7 +299,13 @@ msgstr "" "compatible ouvert selon *mode*. Notez que *openhook* et *inplace* sont " "mutuellement exclusifs." -#: library/fileinput.rst:158 +#: library/fileinput.rst:162 +msgid "" +"You can specify *encoding* and *errors* that is passed to :func:`open` or " +"*openhook*." +msgstr "" + +#: library/fileinput.rst:164 msgid "" "A :class:`FileInput` instance can be used as a context manager in the :" "keyword:`with` statement. In this example, *input* is closed after the :" @@ -300,20 +315,20 @@ msgstr "" "de contexte dans un bloc :keyword:`with`. Dans l'exemple suivant, *input* " "est fermé à la fin du bloc :keyword:`!with`, même arrêté par une exception." -#: library/fileinput.rst:169 +#: library/fileinput.rst:174 msgid "The ``'rU'`` and ``'U'`` modes." msgstr "modes ``'rU'`` et ``'U'``." -#: library/fileinput.rst:172 +#: library/fileinput.rst:177 msgid "Support for :meth:`__getitem__` method is deprecated." msgstr "accès à un indice avec :meth:`__getitem__`." -#: library/fileinput.rst:175 +#: library/fileinput.rst:180 msgid "The keyword parameter *mode* and *openhook* are now keyword-only." msgstr "" "les paramètres *mode* et *openhook* doivent impérativement être nommés." -#: library/fileinput.rst:180 +#: library/fileinput.rst:187 msgid "" "**Optional in-place filtering:** if the keyword argument ``inplace=True`` is " "passed to :func:`fileinput.input` or to the :class:`FileInput` constructor, " @@ -337,13 +352,13 @@ msgstr "" "fermé. Si un fichier existe avec le même nom que la sauvegarde, il est " "écrasé. Le filtrage sur place ne fait rien pour l'entrée standard." -#: library/fileinput.rst:192 +#: library/fileinput.rst:199 msgid "The two following opening hooks are provided by this module:" msgstr "" "Les deux fonctions suivantes fournissent des valeurs prédéfinies pour " "*openhook*." -#: library/fileinput.rst:196 +#: library/fileinput.rst:203 msgid "" "Transparently opens files compressed with gzip and bzip2 (recognized by the " "extensions ``'.gz'`` and ``'.bz2'``) using the :mod:`gzip` and :mod:`bz2` " @@ -356,15 +371,22 @@ msgstr "" "pas l'une de ces deux extensions sont ouverts normalement (avec :func:" "`open`, sans décompression)." -#: library/fileinput.rst:201 +#: library/fileinput.rst:208 +msgid "" +"The *encoding* and *errors* values are passed to :class:`io.TextIOWrapper` " +"for compressed files and open for normal files." +msgstr "" + +#: library/fileinput.rst:211 +#, fuzzy msgid "" "Usage example: ``fi = fileinput.FileInput(openhook=fileinput." -"hook_compressed)``" +"hook_compressed, encoding=\"utf-8\")``" msgstr "" "Exemple d'utilisation : ``fi = fileinput.FileInput(openhook=fileinput." "hook_compressed)``." -#: library/fileinput.rst:206 +#: library/fileinput.rst:219 msgid "" "Returns a hook which opens each file with :func:`open`, using the given " "*encoding* and *errors* to read the file." @@ -373,7 +395,7 @@ msgstr "" "arguments *encoding* et *errors*. Le résultat peut être exploité à travers " "le point d'entrée automatique *openhook*." -#: library/fileinput.rst:209 +#: library/fileinput.rst:222 msgid "" "Usage example: ``fi = fileinput.FileInput(openhook=fileinput." "hook_encoded(\"utf-8\", \"surrogateescape\"))``" @@ -381,6 +403,12 @@ msgstr "" "Exemple d'utilisation : ``fi = fileinput.FileInput(openhook=fileinput." "hook_encoded(\"utf-8\", \"surrogateescape\"))``." -#: library/fileinput.rst:213 +#: library/fileinput.rst:226 msgid "Added the optional *errors* parameter." msgstr "ajout du paramètre facultatif *errors*." + +#: library/fileinput.rst:229 +msgid "" +"This function is deprecated since :func:`input` and :class:`FileInput` now " +"have *encoding* and *errors* parameters." +msgstr "" diff --git a/library/fractions.po b/library/fractions.po index a3fce028b..e3896a6fc 100644 --- a/library/fractions.po +++ b/library/fractions.po @@ -8,7 +8,7 @@ msgstr "" "POT-Creation-Date: 2020-08-24 09:01+0200\n" "PO-Revision-Date: 2021-03-22 14:55+0100\n" "Last-Translator: Loc Cosnier \n" -"Language-Team: French \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff --git a/library/ftplib.po b/library/ftplib.po index b010659c6..c9e40e8ec 100644 --- a/library/ftplib.po +++ b/library/ftplib.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -29,7 +29,7 @@ msgid "" "use this to write Python programs that perform a variety of automated FTP " "jobs, such as mirroring other FTP servers. It is also used by the module :" "mod:`urllib.request` to handle URLs that use FTP. For more information on " -"FTP (File Transfer Protocol), see Internet :rfc:`959`." +"FTP (File Transfer Protocol), see internet :rfc:`959`." msgstr "" #: library/ftplib.rst:22 diff --git a/library/functions.po b/library/functions.po index f70cbfdc0..d3387ff04 100644 --- a/library/functions.po +++ b/library/functions.po @@ -5,10 +5,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-08-30 23:21+0200\n" "Last-Translator: Antoine Wecxsteen\n" -"Language-Team: French \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -28,283 +28,373 @@ msgstr "" "L'interpréteur Python propose quelques fonctions et types natifs qui sont " "toujours disponibles. Ils sont listés ici par ordre alphabétique." -#: library/functions.rst:13 +#: library/functions.rst:0 +msgid "**A**" +msgstr "" + +#: library/functions.rst:0 msgid ":func:`abs`" msgstr ":func:`abs`" -#: library/functions.rst:13 -msgid ":func:`delattr`" -msgstr ":func:`delattr`" +#: library/functions.rst:0 +#, fuzzy +msgid ":func:`aiter`" +msgstr ":func:`iter`" -#: library/functions.rst:13 -msgid ":func:`hash`" -msgstr ":func:`hash`" +#: library/functions.rst:0 +msgid ":func:`all`" +msgstr ":func:`all`" -#: library/functions.rst:13 -msgid "|func-memoryview|_" -msgstr "|func-memoryview|_" +#: library/functions.rst:0 +msgid ":func:`any`" +msgstr ":func:`any`" -#: library/functions.rst:13 -msgid "|func-set|_" -msgstr "|func-set|_" +#: library/functions.rst:0 +#, fuzzy +msgid ":func:`anext`" +msgstr ":func:`next`" -#: library/functions.rst:14 -msgid ":func:`all`" -msgstr ":func:`all`" +#: library/functions.rst:0 +msgid ":func:`ascii`" +msgstr ":func:`ascii`" -#: library/functions.rst:14 -msgid "|func-dict|_" -msgstr "|func-dict|_" +#: library/functions.rst:0 +msgid "**B**" +msgstr "" -#: library/functions.rst:14 -msgid ":func:`help`" -msgstr ":func:`help`" +#: library/functions.rst:0 +msgid ":func:`bin`" +msgstr ":func:`bin`" -#: library/functions.rst:14 -msgid ":func:`min`" -msgstr ":func:`min`" +#: library/functions.rst:0 +msgid ":func:`bool`" +msgstr ":func:`bool`" -#: library/functions.rst:14 -msgid ":func:`setattr`" -msgstr ":func:`setattr`" +#: library/functions.rst:0 +msgid ":func:`breakpoint`" +msgstr ":func:`breakpoint`" -#: library/functions.rst:15 -msgid ":func:`any`" -msgstr ":func:`any`" +#: library/functions.rst:0 +msgid "|func-bytearray|_" +msgstr "|func-bytearray|_" -#: library/functions.rst:15 -msgid ":func:`dir`" -msgstr ":func:`dir`" +#: library/functions.rst:0 +msgid "|func-bytes|_" +msgstr "|func-bytes|_" -#: library/functions.rst:15 -msgid ":func:`hex`" -msgstr ":func:`hex`" +#: library/functions.rst:0 +msgid "**C**" +msgstr "" -#: library/functions.rst:15 -msgid ":func:`next`" -msgstr ":func:`next`" +#: library/functions.rst:0 +msgid ":func:`callable`" +msgstr ":func:`callable`" -#: library/functions.rst:15 -msgid ":func:`slice`" -msgstr ":func:`slice`" +#: library/functions.rst:0 +msgid ":func:`chr`" +msgstr ":func:`chr`" -#: library/functions.rst:16 -msgid ":func:`ascii`" -msgstr ":func:`ascii`" +#: library/functions.rst:0 +msgid ":func:`classmethod`" +msgstr ":func:`classmethod`" -#: library/functions.rst:16 -msgid ":func:`divmod`" -msgstr ":func:`divmod`" +#: library/functions.rst:0 +msgid ":func:`compile`" +msgstr ":func:`compile`" -#: library/functions.rst:16 -msgid ":func:`id`" -msgstr ":func:`id`" +#: library/functions.rst:0 +msgid ":func:`complex`" +msgstr ":func:`complex`" -#: library/functions.rst:16 -msgid ":func:`object`" -msgstr ":func:`object`" +#: library/functions.rst:0 +msgid "**D**" +msgstr "" -#: library/functions.rst:16 -msgid ":func:`sorted`" -msgstr ":func:`sorted`" +#: library/functions.rst:0 +msgid ":func:`delattr`" +msgstr ":func:`delattr`" -#: library/functions.rst:17 -msgid ":func:`bin`" -msgstr ":func:`bin`" +#: library/functions.rst:0 +msgid "|func-dict|_" +msgstr "|func-dict|_" -#: library/functions.rst:17 +#: library/functions.rst:0 +msgid ":func:`dir`" +msgstr ":func:`dir`" + +#: library/functions.rst:0 +msgid ":func:`divmod`" +msgstr ":func:`divmod`" + +#: library/functions.rst:0 +msgid "**E**" +msgstr "" + +#: library/functions.rst:0 msgid ":func:`enumerate`" msgstr ":func:`enumerate`" -#: library/functions.rst:17 -msgid ":func:`input`" -msgstr ":func:`input`" +#: library/functions.rst:0 +msgid ":func:`eval`" +msgstr ":func:`eval`" -#: library/functions.rst:17 -msgid ":func:`oct`" -msgstr ":func:`oct`" +#: library/functions.rst:0 +msgid ":func:`exec`" +msgstr ":func:`exec`" -#: library/functions.rst:17 -msgid ":func:`staticmethod`" -msgstr ":func:`staticmethod`" +#: library/functions.rst:0 +msgid "**F**" +msgstr "" -#: library/functions.rst:18 -msgid ":func:`bool`" -msgstr ":func:`bool`" +#: library/functions.rst:0 +msgid ":func:`filter`" +msgstr ":func:`filter`" -#: library/functions.rst:18 -msgid ":func:`eval`" -msgstr ":func:`eval`" +#: library/functions.rst:0 +msgid ":func:`float`" +msgstr ":func:`float`" -#: library/functions.rst:18 -msgid ":func:`int`" -msgstr ":func:`int`" +#: library/functions.rst:0 +msgid ":func:`format`" +msgstr ":func:`format`" -#: library/functions.rst:18 -msgid ":func:`open`" -msgstr ":func:`open`" +#: library/functions.rst:0 +msgid "|func-frozenset|_" +msgstr "|func-frozenset|_" -#: library/functions.rst:18 -msgid "|func-str|_" -msgstr "|func-str|_" +#: library/functions.rst:0 +msgid "**G**" +msgstr "" -#: library/functions.rst:19 -msgid ":func:`breakpoint`" -msgstr ":func:`breakpoint`" +#: library/functions.rst:0 +msgid ":func:`getattr`" +msgstr ":func:`getattr`" -#: library/functions.rst:19 -msgid ":func:`exec`" -msgstr ":func:`exec`" +#: library/functions.rst:0 +msgid ":func:`globals`" +msgstr ":func:`globals`" -#: library/functions.rst:19 -msgid ":func:`isinstance`" -msgstr ":func:`isinstance`" +#: library/functions.rst:0 +msgid "**H**" +msgstr "" -#: library/functions.rst:19 -msgid ":func:`ord`" -msgstr ":func:`ord`" +#: library/functions.rst:0 +msgid ":func:`hasattr`" +msgstr ":func:`hasattr`" -#: library/functions.rst:19 -msgid ":func:`sum`" -msgstr ":func:`sum`" +#: library/functions.rst:0 +msgid ":func:`hash`" +msgstr ":func:`hash`" -#: library/functions.rst:20 -msgid "|func-bytearray|_" -msgstr "|func-bytearray|_" +#: library/functions.rst:0 +msgid ":func:`help`" +msgstr ":func:`help`" -#: library/functions.rst:20 -msgid ":func:`filter`" -msgstr ":func:`filter`" +#: library/functions.rst:0 +msgid ":func:`hex`" +msgstr ":func:`hex`" -#: library/functions.rst:20 -msgid ":func:`issubclass`" -msgstr ":func:`issubclass`" +#: library/functions.rst:0 +msgid "**I**" +msgstr "" -#: library/functions.rst:20 -msgid ":func:`pow`" -msgstr ":func:`pow`" +#: library/functions.rst:0 +msgid ":func:`id`" +msgstr ":func:`id`" -#: library/functions.rst:20 -msgid ":func:`super`" -msgstr ":func:`super`" +#: library/functions.rst:0 +msgid ":func:`input`" +msgstr ":func:`input`" -#: library/functions.rst:21 -msgid "|func-bytes|_" -msgstr "|func-bytes|_" +#: library/functions.rst:0 +msgid ":func:`int`" +msgstr ":func:`int`" -#: library/functions.rst:21 -msgid ":func:`float`" -msgstr ":func:`float`" +#: library/functions.rst:0 +msgid ":func:`isinstance`" +msgstr ":func:`isinstance`" + +#: library/functions.rst:0 +msgid ":func:`issubclass`" +msgstr ":func:`issubclass`" -#: library/functions.rst:21 +#: library/functions.rst:0 msgid ":func:`iter`" msgstr ":func:`iter`" -#: library/functions.rst:21 -msgid ":func:`print`" -msgstr ":func:`print`" +#: library/functions.rst:0 +msgid "**L**" +msgstr "" -#: library/functions.rst:21 -msgid "|func-tuple|_" -msgstr "|func-tuple|_" +#: library/functions.rst:0 +msgid ":func:`len`" +msgstr ":func:`len`" -#: library/functions.rst:22 -msgid ":func:`callable`" -msgstr ":func:`callable`" +#: library/functions.rst:0 +msgid "|func-list|_" +msgstr "|func-list|_" -#: library/functions.rst:22 -msgid ":func:`format`" -msgstr ":func:`format`" +#: library/functions.rst:0 +msgid ":func:`locals`" +msgstr ":func:`locals`" -#: library/functions.rst:22 -msgid ":func:`len`" -msgstr ":func:`len`" +#: library/functions.rst:0 +msgid "**M**" +msgstr "" -#: library/functions.rst:22 -msgid ":func:`property`" -msgstr ":func:`property`" +#: library/functions.rst:0 +msgid ":func:`map`" +msgstr ":func:`map`" -#: library/functions.rst:22 -msgid ":func:`type`" -msgstr ":func:`type`" +#: library/functions.rst:0 +msgid ":func:`max`" +msgstr ":func:`max`" -#: library/functions.rst:23 -msgid ":func:`chr`" -msgstr ":func:`chr`" +#: library/functions.rst:0 +msgid "|func-memoryview|_" +msgstr "|func-memoryview|_" -#: library/functions.rst:23 -msgid "|func-frozenset|_" -msgstr "|func-frozenset|_" +#: library/functions.rst:0 +msgid ":func:`min`" +msgstr ":func:`min`" -#: library/functions.rst:23 -msgid "|func-list|_" -msgstr "|func-list|_" +#: library/functions.rst:0 +msgid "**N**" +msgstr "" + +#: library/functions.rst:0 +msgid ":func:`next`" +msgstr ":func:`next`" + +#: library/functions.rst:0 +msgid "**O**" +msgstr "" -#: library/functions.rst:23 +#: library/functions.rst:0 +msgid ":func:`object`" +msgstr ":func:`object`" + +#: library/functions.rst:0 +msgid ":func:`oct`" +msgstr ":func:`oct`" + +#: library/functions.rst:0 +msgid ":func:`open`" +msgstr ":func:`open`" + +#: library/functions.rst:0 +msgid ":func:`ord`" +msgstr ":func:`ord`" + +#: library/functions.rst:0 +msgid "**P**" +msgstr "" + +#: library/functions.rst:0 +msgid ":func:`pow`" +msgstr ":func:`pow`" + +#: library/functions.rst:0 +msgid ":func:`print`" +msgstr ":func:`print`" + +#: library/functions.rst:0 +msgid ":func:`property`" +msgstr ":func:`property`" + +#: library/functions.rst:0 +msgid "**R**" +msgstr "" + +#: library/functions.rst:0 msgid "|func-range|_" msgstr "|func-range|_" -#: library/functions.rst:23 -msgid ":func:`vars`" -msgstr ":func:`vars`" +#: library/functions.rst:0 +msgid ":func:`repr`" +msgstr ":func:`repr`" -#: library/functions.rst:24 -msgid ":func:`classmethod`" -msgstr ":func:`classmethod`" +#: library/functions.rst:0 +msgid ":func:`reversed`" +msgstr ":func:`reversed`" + +#: library/functions.rst:0 +msgid ":func:`round`" +msgstr ":func:`round`" + +#: library/functions.rst:0 +msgid "**S**" +msgstr "" + +#: library/functions.rst:0 +msgid "|func-set|_" +msgstr "|func-set|_" + +#: library/functions.rst:0 +msgid ":func:`setattr`" +msgstr ":func:`setattr`" + +#: library/functions.rst:0 +msgid ":func:`slice`" +msgstr ":func:`slice`" + +#: library/functions.rst:0 +msgid ":func:`sorted`" +msgstr ":func:`sorted`" + +#: library/functions.rst:0 +msgid ":func:`staticmethod`" +msgstr ":func:`staticmethod`" + +#: library/functions.rst:0 +msgid "|func-str|_" +msgstr "|func-str|_" + +#: library/functions.rst:0 +msgid ":func:`sum`" +msgstr ":func:`sum`" + +#: library/functions.rst:0 +msgid ":func:`super`" +msgstr ":func:`super`" + +#: library/functions.rst:0 +msgid "**T**" +msgstr "" + +#: library/functions.rst:0 +msgid "|func-tuple|_" +msgstr "|func-tuple|_" + +#: library/functions.rst:0 +msgid ":func:`type`" +msgstr ":func:`type`" -#: library/functions.rst:24 -msgid ":func:`getattr`" -msgstr ":func:`getattr`" +#: library/functions.rst:0 +msgid "**V**" +msgstr "" -#: library/functions.rst:24 -msgid ":func:`locals`" -msgstr ":func:`locals`" +#: library/functions.rst:0 +msgid ":func:`vars`" +msgstr ":func:`vars`" -#: library/functions.rst:24 -msgid ":func:`repr`" -msgstr ":func:`repr`" +#: library/functions.rst:0 +msgid "**Z**" +msgstr "" -#: library/functions.rst:24 +#: library/functions.rst:0 msgid ":func:`zip`" msgstr ":func:`zip`" -#: library/functions.rst:25 -msgid ":func:`compile`" -msgstr ":func:`compile`" - -#: library/functions.rst:25 -msgid ":func:`globals`" -msgstr ":func:`globals`" - -#: library/functions.rst:25 -msgid ":func:`map`" -msgstr ":func:`map`" - -#: library/functions.rst:25 -msgid ":func:`reversed`" -msgstr ":func:`reversed`" +#: library/functions.rst:0 +msgid "**_**" +msgstr "" -#: library/functions.rst:25 +#: library/functions.rst:0 msgid ":func:`__import__`" msgstr ":func:`__import__`" -#: library/functions.rst:26 -msgid ":func:`complex`" -msgstr ":func:`complex`" - -#: library/functions.rst:26 -msgid ":func:`hasattr`" -msgstr ":func:`hasattr`" - -#: library/functions.rst:26 -msgid ":func:`max`" -msgstr ":func:`max`" - -#: library/functions.rst:26 -msgid ":func:`round`" -msgstr ":func:`round`" - -#: library/functions.rst:45 +#: library/functions.rst:59 msgid "" "Return the absolute value of a number. The argument may be an integer, a " "floating point number, or an object implementing :meth:`__abs__`. If the " @@ -314,7 +404,23 @@ msgstr "" "entier, un nombre à virgule flottante, ou tout objet définissant :meth:" "`__abs__`. Si l'argument est un nombre complexe, son module est renvoyé." -#: library/functions.rst:52 +#: library/functions.rst:66 +msgid "" +"Return an :term:`asynchronous iterator` for an :term:`asynchronous " +"iterable`. Equivalent to calling ``x.__aiter__()``." +msgstr "" + +#: library/functions.rst:69 +msgid "" +"``aiter(x)`` itself has an ``__aiter__()`` method that returns ``x``, so " +"``aiter(aiter(x))`` is the same as ``aiter(x)``." +msgstr "" + +#: library/functions.rst:72 +msgid "Note: Unlike :func:`iter`, :func:`aiter` has no 2-argument variant." +msgstr "" + +#: library/functions.rst:78 msgid "" "Return ``True`` if all elements of the *iterable* are true (or if the " "iterable is empty). Equivalent to::" @@ -322,7 +428,30 @@ msgstr "" "Renvoie ``True`` si tous les éléments de *iterable* sont vrais (ou s'il est " "vide). Équivaut à ::" -#: library/functions.rst:64 +#: library/functions.rst:90 +msgid "" +"When awaited, return the next item from the given :term:`asynchronous " +"iterator`, or *default* if given and the iterator is exhausted." +msgstr "" + +#: library/functions.rst:93 +msgid "" +"This is the async variant of the :func:`next` builtin, and behaves similarly." +msgstr "" + +#: library/functions.rst:96 +#, fuzzy +msgid "" +"This calls the :meth:`~object.__anext__` method of *async_iterator*, " +"returning an :term:`awaitable`. Awaiting this returns the next value of the " +"iterator. If *default* is given, it is returned if the iterator is " +"exhausted, otherwise :exc:`StopAsyncIteration` is raised." +msgstr "" +"Donne l'élément suivant d'*iterator* en appelant sa méthode :meth:`~iterator." +"__next__`. Si *default* est fourni, il sera renvoyé si l'itérateur est " +"épuisé, sinon :exc:`StopIteration` est levée." + +#: library/functions.rst:105 msgid "" "Return ``True`` if any element of the *iterable* is true. If the iterable " "is empty, return ``False``. Equivalent to::" @@ -330,11 +459,12 @@ msgstr "" "Renvoie ``True`` si au moins un élément de *iterable* est vrai. ``False`` " "est renvoyé dans le cas où *iterable* est vide. Équivaut à ::" -#: library/functions.rst:76 +#: library/functions.rst:117 +#, fuzzy msgid "" "As :func:`repr`, return a string containing a printable representation of an " "object, but escape the non-ASCII characters in the string returned by :func:" -"`repr` using ``\\x``, ``\\u`` or ``\\U`` escapes. This generates a string " +"`repr` using ``\\x``, ``\\u``, or ``\\U`` escapes. This generates a string " "similar to that returned by :func:`repr` in Python 2." msgstr "" "Renvoie, tout comme :func:`repr`, une chaîne contenant une représentation " @@ -343,7 +473,7 @@ msgstr "" "ou ``\\U``. Cela génère une chaîne similaire à ce que renvoie :func:`repr` " "dans Python 2." -#: library/functions.rst:84 +#: library/functions.rst:125 msgid "" "Convert an integer number to a binary string prefixed with \"0b\". The " "result is a valid Python expression. If *x* is not a Python :class:`int` " @@ -355,22 +485,25 @@ msgstr "" "class:`int`, il doit définir une méthode :meth:`__index__` donnant un nombre " "entier. Voici quelques exemples :" -#: library/functions.rst:94 +#: library/functions.rst:135 +#, fuzzy msgid "" -"If prefix \"0b\" is desired or not, you can use either of the following ways." +"If the prefix \"0b\" is desired or not, you can use either of the following " +"ways." msgstr "" "Pour contrôler l'affichage du préfixe ``0b``, vous pouvez utiliser les " "moyens suivants." -#: library/functions.rst:757 library/functions.rst:1044 +#: library/functions.rst:807 library/functions.rst:1102 msgid "See also :func:`format` for more information." msgstr "Voir aussi :func:`format` pour plus d'informations." -#: library/functions.rst:106 +#: library/functions.rst:147 +#, fuzzy msgid "" "Return a Boolean value, i.e. one of ``True`` or ``False``. *x* is converted " "using the standard :ref:`truth testing procedure `. If *x* is false " -"or omitted, this returns ``False``; otherwise it returns ``True``. The :" +"or omitted, this returns ``False``; otherwise, it returns ``True``. The :" "class:`bool` class is a subclass of :class:`int` (see :ref:`typesnumeric`). " "It cannot be subclassed further. Its only instances are ``False`` and " "``True`` (see :ref:`bltin-boolean-values`)." @@ -383,11 +516,11 @@ msgstr "" "ses seules instances sont ``False`` et ``True`` (voir :ref:`bltin-boolean-" "values`)." -#: library/functions.rst:625 library/functions.rst:841 +#: library/functions.rst:675 library/functions.rst:891 msgid "*x* is now a positional-only parameter." msgstr "*x* est désormais un argument exclusivement optionnel." -#: library/functions.rst:120 +#: library/functions.rst:161 msgid "" "This function drops you into the debugger at the call site. Specifically, " "it calls :func:`sys.breakpointhook`, passing ``args`` and ``kws`` straight " @@ -408,7 +541,7 @@ msgstr "" "`sys.breakpointhook`, que :func:`breakpoint` appellera automatiquement, vous " "permettant ainsi de basculer dans le débogueur de votre choix." -#: library/functions.rst:130 +#: library/functions.rst:171 msgid "" "Raises an :ref:`auditing event ` ``builtins.breakpoint`` with " "argument ``breakpointhook``." @@ -416,7 +549,7 @@ msgstr "" "Lève un :ref:`auditing event ` ``builtins.breakpoint`` avec " "l'argument ``breakpointhook``." -#: library/functions.rst:138 +#: library/functions.rst:179 msgid "" "Return a new array of bytes. The :class:`bytearray` class is a mutable " "sequence of integers in the range 0 <= x < 256. It has most of the usual " @@ -429,7 +562,7 @@ msgstr "" "`typesseq-mutable`, ainsi que la plupart des méthodes de la classe :class:" "`bytes`, voir :ref:`bytes-methods`." -#: library/functions.rst:143 +#: library/functions.rst:184 msgid "" "The optional *source* parameter can be used to initialize the array in a few " "different ways:" @@ -437,7 +570,7 @@ msgstr "" "Le paramètre optionnel *source* peut être utilisé pour initialiser le " "tableau de plusieurs façons :" -#: library/functions.rst:146 +#: library/functions.rst:187 msgid "" "If it is a *string*, you must also give the *encoding* (and optionally, " "*errors*) parameters; :func:`bytearray` then converts the string to bytes " @@ -447,7 +580,7 @@ msgstr "" "l'encodage (et éventuellement *errors*). La fonction :func:`bytearray` " "convertit ensuite la chaîne en octets via la méthode :meth:`str.encode` ;" -#: library/functions.rst:150 +#: library/functions.rst:191 msgid "" "If it is an *integer*, the array will have that size and will be initialized " "with null bytes." @@ -455,7 +588,7 @@ msgstr "" "si c'est un *entier*, le tableau a cette taille et est initialisé d'octets " "*null* ;" -#: library/functions.rst:153 +#: library/functions.rst:194 #, fuzzy msgid "" "If it is an object conforming to the :ref:`buffer interface " @@ -465,7 +598,7 @@ msgstr "" "si c'est un objet conforme au protocole tampon, un tampon en lecture seule " "de l'objet est utilisé pour initialiser le tableau ;" -#: library/functions.rst:156 +#: library/functions.rst:197 msgid "" "If it is an *iterable*, it must be an iterable of integers in the range ``0 " "<= x < 256``, which are used as the initial contents of the array." @@ -474,17 +607,18 @@ msgstr "" "l'intervalle ``0 <= x < 256``, qui sont utilisés pour initialiser le contenu " "du tableau." -#: library/functions.rst:159 +#: library/functions.rst:200 msgid "Without an argument, an array of size 0 is created." msgstr "Sans argument, un tableau vide est créé." -#: library/functions.rst:161 +#: library/functions.rst:202 msgid "See also :ref:`binaryseq` and :ref:`typebytearray`." msgstr "Voir :ref:`binaryseq` et :ref:`typebytearray`." -#: library/functions.rst:168 +#: library/functions.rst:209 +#, fuzzy msgid "" -"Return a new \"bytes\" object, which is an immutable sequence of integers in " +"Return a new \"bytes\" object which is an immutable sequence of integers in " "the range ``0 <= x < 256``. :class:`bytes` is an immutable version of :" "class:`bytearray` -- it has the same non-mutating methods and the same " "indexing and slicing behavior." @@ -494,25 +628,25 @@ msgstr "" "version immuable de :class:`bytearray` — avec les mêmes méthodes d'accès, et " "le même comportement lors de l'indexation ou la découpe." -#: library/functions.rst:173 +#: library/functions.rst:214 msgid "" "Accordingly, constructor arguments are interpreted as for :func:`bytearray`." msgstr "" "En conséquence, les arguments du constructeur sont les mêmes que pour :func:" "`bytearray`." -#: library/functions.rst:175 +#: library/functions.rst:216 msgid "Bytes objects can also be created with literals, see :ref:`strings`." msgstr "" "Les objets *bytes* peuvent aussi être créés à partir de littéraux, voir :ref:" "`strings`." -#: library/functions.rst:177 +#: library/functions.rst:218 msgid "See also :ref:`binaryseq`, :ref:`typebytes`, and :ref:`bytes-methods`." msgstr "" "Voir aussi :ref:`binaryseq`, :ref:`typebytes`, et :ref:`bytes-methods`." -#: library/functions.rst:182 +#: library/functions.rst:223 msgid "" "Return :const:`True` if the *object* argument appears callable, :const:" "`False` if not. If this returns ``True``, it is still possible that a call " @@ -527,7 +661,7 @@ msgstr "" "(appeler une classe donne une nouvelle instance) ; une instance n'est " "appelable que si sa classe définit une méthode :meth:`__call__`." -#: library/functions.rst:188 +#: library/functions.rst:229 msgid "" "This function was first removed in Python 3.0 and then brought back in " "Python 3.2." @@ -535,7 +669,7 @@ msgstr "" "cette fonction a d'abord été supprimée avec Python 3.0 puis elle a été " "remise dans Python 3.2." -#: library/functions.rst:195 +#: library/functions.rst:236 msgid "" "Return the string representing a character whose Unicode code point is the " "integer *i*. For example, ``chr(97)`` returns the string ``'a'``, while " @@ -546,7 +680,7 @@ msgstr "" "de caractères ``'a'``, tandis que ``chr(8364)`` renvoie ``'€'``. Il s'agit " "de l'inverse de :func:`ord`." -#: library/functions.rst:199 +#: library/functions.rst:240 msgid "" "The valid range for the argument is from 0 through 1,114,111 (0x10FFFF in " "base 16). :exc:`ValueError` will be raised if *i* is outside that range." @@ -555,21 +689,22 @@ msgstr "" "(``0x10FFFF`` en base 16). Une exception :exc:`ValueError` est levée si *i* " "est en dehors de l'intervalle." -#: library/functions.rst:205 +#: library/functions.rst:246 msgid "Transform a method into a class method." msgstr "Transforme une méthode en méthode de classe." -#: library/functions.rst:207 +#: library/functions.rst:248 +#, fuzzy msgid "" -"A class method receives the class as implicit first argument, just like an " -"instance method receives the instance. To declare a class method, use this " -"idiom::" +"A class method receives the class as an implicit first argument, just like " +"an instance method receives the instance. To declare a class method, use " +"this idiom::" msgstr "" "Une méthode de classe reçoit implicitement la classe en premier argument, " "tout comme une méthode d'instance reçoit l'instance. Voici comment déclarer " "une méthode de classe ::" -#: library/functions.rst:215 +#: library/functions.rst:256 msgid "" "The ``@classmethod`` form is a function :term:`decorator` -- see :ref:" "`function` for details." @@ -577,7 +712,7 @@ msgstr "" "La forme ``@classmethod`` est un :term:`décorateur ` de fonction " "— consultez :ref:`function` pour plus de détails." -#: library/functions.rst:218 +#: library/functions.rst:259 msgid "" "A class method can be called either on the class (such as ``C.f()``) or on " "an instance (such as ``C().f()``). The instance is ignored except for its " @@ -589,7 +724,7 @@ msgstr "" "sa classe. Si la méthode est appelée sur une instance de classe fille, c'est " "la classe fille qui sera donnée en premier argument implicite." -#: library/functions.rst:223 +#: library/functions.rst:264 msgid "" "Class methods are different than C++ or Java static methods. If you want " "those, see :func:`staticmethod` in this section. For more information on " @@ -599,7 +734,7 @@ msgstr "" "Java. Si ce sont elles dont vous avez besoin, regardez du côté de :func:" "`staticmethod` dans cette section. Voir aussi :ref:`types`." -#: library/functions.rst:227 +#: library/functions.rst:268 msgid "" "Class methods can now wrap other :term:`descriptors ` such as :" "func:`property`." @@ -607,7 +742,14 @@ msgstr "" "les méthodes de classe peuvent encapsuler d'autres :term:`descripteurs " "` comme :func:`property`." -#: library/functions.rst:233 +#: library/functions.rst:272 +msgid "" +"Class methods now inherit the method attributes (``__module__``, " +"``__name__``, ``__qualname__``, ``__doc__`` and ``__annotations__``) and " +"have a new ``__wrapped__`` attribute." +msgstr "" + +#: library/functions.rst:279 msgid "" "Compile the *source* into a code or AST object. Code objects can be " "executed by :func:`exec` or :func:`eval`. *source* can either be a normal " @@ -619,7 +761,7 @@ msgstr "" "une chaîne d'octets, ou un objet AST. Consultez la documentation du module :" "mod:`ast` pour des informations sur la manipulation d'objets AST." -#: library/functions.rst:238 +#: library/functions.rst:284 msgid "" "The *filename* argument should give the file from which the code was read; " "pass some recognizable value if it wasn't read from a file (``''`` " @@ -629,7 +771,7 @@ msgstr "" "lu. Donnez quelque chose de reconnaissable lorsqu'il n'a pas été lu depuis " "un fichier (typiquement ``\"\"``)." -#: library/functions.rst:242 +#: library/functions.rst:288 msgid "" "The *mode* argument specifies what kind of code must be compiled; it can be " "``'exec'`` if *source* consists of a sequence of statements, ``'eval'`` if " @@ -643,7 +785,7 @@ msgstr "" "(dans ce dernier cas, les résultats d'expressions donnant autre chose que " "``None`` sont affichés)." -#: library/functions.rst:248 +#: library/functions.rst:294 #, fuzzy msgid "" "The optional arguments *flags* and *dont_inherit* control which :ref:" @@ -667,7 +809,7 @@ msgstr "" "un entier différent de zéro, *flags* est utilisé seul — les instructions " "futures déclarées autour de l'appel à *compile* sont ignorées." -#: library/functions.rst:259 +#: library/functions.rst:305 #, fuzzy msgid "" "Compiler options and future statements are specified by bits which can be " @@ -683,7 +825,7 @@ msgstr "" "l'attribut :attr:`~__future__._Feature.compiler_flag` de la classe :class:" "`~__future__.Feature` du module :mod:`__future__`." -#: library/functions.rst:267 +#: library/functions.rst:313 msgid "" "The argument *optimize* specifies the optimization level of the compiler; " "the default value of ``-1`` selects the optimization level of the " @@ -698,7 +840,7 @@ msgstr "" "``1`` (les ``assert`` sont supprimés, ``__debug__`` est ``False``) ou ``2`` " "(les *docstrings* sont également supprimées)." -#: library/functions.rst:273 +#: library/functions.rst:319 msgid "" "This function raises :exc:`SyntaxError` if the compiled source is invalid, " "and :exc:`ValueError` if the source contains null bytes." @@ -706,7 +848,7 @@ msgstr "" "Cette fonction lève une :exc:`SyntaxError` si la source n'est pas valide, " "et :exc:`ValueError` si la source contient des octets *null*." -#: library/functions.rst:276 +#: library/functions.rst:322 msgid "" "If you want to parse Python code into its AST representation, see :func:`ast." "parse`." @@ -714,7 +856,7 @@ msgstr "" "Si vous voulez transformer du code Python en sa représentation AST, voyez :" "func:`ast.parse`." -#: library/functions.rst:279 +#: library/functions.rst:325 #, fuzzy msgid "" "Raises an :ref:`auditing event ` ``compile`` with arguments " @@ -723,7 +865,7 @@ msgstr "" "Lève un :ref:`auditing event ` ``open`` avec les arguments " "``file``, ``mode``, ``flags``." -#: library/functions.rst:281 +#: library/functions.rst:327 msgid "" "Raises an :ref:`auditing event ` ``compile`` with arguments " "``source`` and ``filename``. This event may also be raised by implicit " @@ -733,7 +875,7 @@ msgstr "" "``source`` et ``filename``. Cet événement peut également être levé par une " "compilation implicite." -#: library/functions.rst:287 +#: library/functions.rst:333 msgid "" "When compiling a string with multi-line code in ``'single'`` or ``'eval'`` " "mode, input must be terminated by at least one newline character. This is " @@ -745,7 +887,7 @@ msgstr "" "moins un retour à la ligne. Cela permet de faciliter la distinction entre " "les instructions complètes et incomplètes dans le module :mod:`code`." -#: library/functions.rst:294 +#: library/functions.rst:340 msgid "" "It is possible to crash the Python interpreter with a sufficiently large/" "complex string when compiling to an AST object due to stack depth " @@ -755,16 +897,17 @@ msgstr "" "suffisamment grandes ou complexes lors de la compilation d'un objet AST. " "Ceci est dû à limitation de la profondeur de la pile d'appels." -#: library/functions.rst:298 +#: library/functions.rst:344 +#, fuzzy msgid "" -"Allowed use of Windows and Mac newlines. Also input in ``'exec'`` mode does " -"not have to end in a newline anymore. Added the *optimize* parameter." +"Allowed use of Windows and Mac newlines. Also, input in ``'exec'`` mode " +"does not have to end in a newline anymore. Added the *optimize* parameter." msgstr "" "autorise l'utilisation de retours à la ligne Mac et Windows. Par ailleurs, " "la chaîne donnée à ``'exec'`` n'a plus besoin de terminer par un retour à la " "ligne. Ajout du paramètre *optimize*." -#: library/functions.rst:302 +#: library/functions.rst:348 msgid "" "Previously, :exc:`TypeError` was raised when null bytes were encountered in " "*source*." @@ -772,7 +915,7 @@ msgstr "" "Précédemment, l'exception :exc:`TypeError` était levée quand un caractère " "nul était rencontré dans *source*." -#: library/functions.rst:306 +#: library/functions.rst:352 msgid "" "``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` can now be passed in flags to enable " "support for top-level ``await``, ``async for``, and ``async with``." @@ -781,7 +924,7 @@ msgstr "" "pour permettre une gestion de ``await``, ``async for``, et ``async with`` de " "haut niveau." -#: library/functions.rst:313 +#: library/functions.rst:359 msgid "" "Return a complex number with the value *real* + *imag*\\*1j or convert a " "string or number to a complex number. If the first parameter is a string, " @@ -802,7 +945,7 @@ msgstr "" "class:`int` ou :class:`float`. Si aucun argument n'est fourni, renvoie " "``0j``." -#: library/functions.rst:322 +#: library/functions.rst:368 msgid "" "For a general Python object ``x``, ``complex(x)`` delegates to ``x." "__complex__()``. If ``__complex__()`` is not defined then it falls back to :" @@ -814,7 +957,7 @@ msgstr "" "meth:`__float__`. Si ``__float__()`` n'est pas défini, alors il délègue à :" "meth:`__index__`." -#: library/functions.rst:329 +#: library/functions.rst:375 msgid "" "When converting from a string, the string must not contain whitespace around " "the central ``+`` or ``-`` operator. For example, ``complex('1+2j')`` is " @@ -825,17 +968,17 @@ msgstr "" "``complex('1+2j')`` est correct, mais ``complex('1 + 2j')`` lève une :exc:" "`ValueError`." -#: library/functions.rst:334 +#: library/functions.rst:380 msgid "The complex type is described in :ref:`typesnumeric`." msgstr "Le type complexe est décrit dans :ref:`typesnumeric`." -#: library/functions.rst:622 library/functions.rst:838 +#: library/functions.rst:672 library/functions.rst:888 msgid "Grouping digits with underscores as in code literals is allowed." msgstr "" "les chiffres peuvent être groupés avec des tirets bas comme dans les " "expressions littérales." -#: library/functions.rst:339 +#: library/functions.rst:385 msgid "" "Falls back to :meth:`__index__` if :meth:`__complex__` and :meth:`__float__` " "are not defined." @@ -843,7 +986,7 @@ msgstr "" "revient à :meth:`__index__` si :meth:`__complex__` et :meth:`__float__` ne " "sont pas définis." -#: library/functions.rst:346 +#: library/functions.rst:392 msgid "" "This is a relative of :func:`setattr`. The arguments are an object and a " "string. The string must be the name of one of the object's attributes. The " @@ -855,7 +998,7 @@ msgstr "" "fonction supprime l'attribut nommé, si l'objet l'y autorise. Par exemple " "``delattr(x, 'foobar')`` est l'équivalent de ``del x.foobar``." -#: library/functions.rst:358 +#: library/functions.rst:404 msgid "" "Create a new dictionary. The :class:`dict` object is the dictionary class. " "See :class:`dict` and :ref:`typesmapping` for documentation about this class." @@ -864,7 +1007,7 @@ msgstr "" "dictionnaire. Voir :class:`dict` et :ref:`typesmapping` pour vous documenter " "sur cette classe." -#: library/functions.rst:361 +#: library/functions.rst:407 msgid "" "For other containers see the built-in :class:`list`, :class:`set`, and :" "class:`tuple` classes, as well as the :mod:`collections` module." @@ -872,7 +1015,7 @@ msgstr "" "Pour les autres conteneurs, voir les classes natives :class:`list`, :class:" "`set`, et :class:`tuple`, ainsi que le module :mod:`collections`." -#: library/functions.rst:367 +#: library/functions.rst:413 msgid "" "Without arguments, return the list of names in the current local scope. " "With an argument, attempt to return a list of valid attributes for that " @@ -882,7 +1025,7 @@ msgstr "" "Avec un argument, elle essaye de donner une liste d'attributs valides pour " "cet objet." -#: library/functions.rst:370 +#: library/functions.rst:416 msgid "" "If the object has a method named :meth:`__dir__`, this method will be called " "and must return the list of attributes. This allows objects that implement a " @@ -894,12 +1037,13 @@ msgstr "" "`__getattr__` ou :func:`__getattribute__` de personnaliser ce que donnera :" "func:`dir`." -#: library/functions.rst:375 +#: library/functions.rst:421 +#, fuzzy msgid "" "If the object does not provide :meth:`__dir__`, the function tries its best " "to gather information from the object's :attr:`~object.__dict__` attribute, " "if defined, and from its type object. The resulting list is not necessarily " -"complete, and may be inaccurate when the object has a custom :func:" +"complete and may be inaccurate when the object has a custom :func:" "`__getattr__`." msgstr "" "Si l'objet ne fournit pas de méthode :meth:`__dir__`, la fonction fait de " @@ -908,7 +1052,7 @@ msgstr "" "n'est pas nécessairement complète, et peut être inadaptée quand l'objet a " "un :func:`__getattr__` personnalisé." -#: library/functions.rst:380 +#: library/functions.rst:426 msgid "" "The default :func:`dir` mechanism behaves differently with different types " "of objects, as it attempts to produce the most relevant, rather than " @@ -918,7 +1062,7 @@ msgstr "" "différents types d'objets, car elle préfère donner une information " "pertinente plutôt qu'exhaustive :" -#: library/functions.rst:384 +#: library/functions.rst:430 msgid "" "If the object is a module object, the list contains the names of the " "module's attributes." @@ -926,7 +1070,7 @@ msgstr "" "si l'objet est un module, la liste contiendra les noms des attributs du " "module ;" -#: library/functions.rst:387 +#: library/functions.rst:433 msgid "" "If the object is a type or class object, the list contains the names of its " "attributes, and recursively of the attributes of its bases." @@ -934,7 +1078,7 @@ msgstr "" "si l'objet est un type ou une classe, la liste contiendra les noms de ses " "attributs et, récursivement, des attributs de ses parents ;" -#: library/functions.rst:390 +#: library/functions.rst:436 msgid "" "Otherwise, the list contains the object's attributes' names, the names of " "its class's attributes, and recursively of the attributes of its class's " @@ -944,11 +1088,11 @@ msgstr "" "attributs de la classe, et récursivement des attributs des parents de la " "classe." -#: library/functions.rst:394 +#: library/functions.rst:440 msgid "The resulting list is sorted alphabetically. For example:" msgstr "La liste donnée est triée par ordre alphabétique, par exemple :" -#: library/functions.rst:413 +#: library/functions.rst:459 msgid "" "Because :func:`dir` is supplied primarily as a convenience for use at an " "interactive prompt, it tries to supply an interesting set of names more than " @@ -962,9 +1106,10 @@ msgstr "" "peut aussi changer d'une version à l'autre. Par exemple, les attributs de " "méta-classes ne sont pas donnés lorsque l'argument est une classe." -#: library/functions.rst:423 +#: library/functions.rst:469 +#, fuzzy msgid "" -"Take two (non complex) numbers as arguments and return a pair of numbers " +"Take two (non-complex) numbers as arguments and return a pair of numbers " "consisting of their quotient and remainder when using integer division. " "With mixed operand types, the rules for binary arithmetic operators apply. " "For integers, the result is the same as ``(a // b, a % b)``. For floating " @@ -982,7 +1127,7 @@ msgstr "" "b + a % b`` est très proche de *a*. Si ``a % b`` est différent de zéro, il a " "le même signe que *b*, et ``0 <= abs(a % b) < abs(b)``." -#: library/functions.rst:435 +#: library/functions.rst:481 msgid "" "Return an enumerate object. *iterable* must be a sequence, an :term:" "`iterator`, or some other object which supports iteration. The :meth:" @@ -996,11 +1141,11 @@ msgstr "" "`enumerate` renvoie un *n*-uplet contenant un compte (démarrant à *start*, 0 " "par défaut) et les valeurs obtenues de l'itération sur *iterable*." -#: library/functions.rst:447 +#: library/functions.rst:493 msgid "Equivalent to::" msgstr "Équivalent à ::" -#: library/functions.rst:458 +#: library/functions.rst:504 msgid "" "The arguments are a string and optional globals and locals. If provided, " "*globals* must be a dictionary. If provided, *locals* can be any mapping " @@ -1010,21 +1155,22 @@ msgstr "" "globales. S'il est fourni, *globals* doit être un dictionnaire. S'il est " "fourni, *locals* peut être n'importe quel objet *mapping*." -#: library/functions.rst:462 +#: library/functions.rst:508 +#, fuzzy msgid "" "The *expression* argument is parsed and evaluated as a Python expression " "(technically speaking, a condition list) using the *globals* and *locals* " "dictionaries as global and local namespace. If the *globals* dictionary is " "present and does not contain a value for the key ``__builtins__``, a " "reference to the dictionary of the built-in module :mod:`builtins` is " -"inserted under that key before *expression* is parsed. This means that " -"*expression* normally has full access to the standard :mod:`builtins` module " -"and restricted environments are propagated. If the *locals* dictionary is " -"omitted it defaults to the *globals* dictionary. If both dictionaries are " -"omitted, the expression is executed with the *globals* and *locals* in the " -"environment where :func:`eval` is called. Note, *eval()* does not have " -"access to the :term:`nested scopes ` (non-locals) in the " -"enclosing environment." +"inserted under that key before *expression* is parsed. That way you can " +"control what builtins are available to the executed code by inserting your " +"own ``__builtins__`` dictionary into *globals* before passing it to :func:" +"`eval`. If the *locals* dictionary is omitted it defaults to the *globals* " +"dictionary. If both dictionaries are omitted, the expression is executed " +"with the *globals* and *locals* in the environment where :func:`eval` is " +"called. Note, *eval()* does not have access to the :term:`nested scopes " +"` (non-locals) in the enclosing environment." msgstr "" "L'argument *expression* est analysé et évalué comme une expression Python " "(techniquement, une *condition list*) en utilisant les dictionnaires " @@ -1040,7 +1186,7 @@ msgstr "" "`eval` est appelée. Note, *eval()* n'a pas accès aux :term:`portées " "imbriquées ` (non locales) dans l'environnement englobant." -#: library/functions.rst:476 +#: library/functions.rst:523 msgid "" "The return value is the result of the evaluated expression. Syntax errors " "are reported as exceptions. Example:" @@ -1048,10 +1194,11 @@ msgstr "" "La valeur de retour est le résultat de l'expression évaluée. Les erreurs de " "syntaxe sont signalées comme des exceptions. Exemple :" -#: library/functions.rst:483 +#: library/functions.rst:530 +#, fuzzy msgid "" "This function can also be used to execute arbitrary code objects (such as " -"those created by :func:`compile`). In this case pass a code object instead " +"those created by :func:`compile`). In this case, pass a code object instead " "of a string. If the code object has been compiled with ``'exec'`` as the " "*mode* argument, :func:`eval`\\'s return value will be ``None``." msgstr "" @@ -1060,10 +1207,11 @@ msgstr "" "code plutôt qu'une chaîne. Si l'objet code a été compilé avec l'argument " "*mode* à ``'exec'``, :func:`eval` donnera ``None``." -#: library/functions.rst:488 +#: library/functions.rst:535 +#, fuzzy msgid "" "Hints: dynamic execution of statements is supported by the :func:`exec` " -"function. The :func:`globals` and :func:`locals` functions returns the " +"function. The :func:`globals` and :func:`locals` functions return the " "current global and local dictionary, respectively, which may be useful to " "pass around for use by :func:`eval` or :func:`exec`." msgstr "" @@ -1072,7 +1220,13 @@ msgstr "" "respectivement les dictionnaires globaux et locaux, qui peuvent être utiles " "lors de l'usage de :func:`eval` et :func:`exec`." -#: library/functions.rst:493 +#: library/functions.rst:540 +msgid "" +"If the given source is a string, then leading and trailing spaces and tabs " +"are stripped." +msgstr "" + +#: library/functions.rst:543 msgid "" "See :func:`ast.literal_eval` for a function that can safely evaluate strings " "with expressions containing only literals." @@ -1081,7 +1235,7 @@ msgstr "" "peut évaluer en toute sécurité des chaînes avec des expressions ne contenant " "que des valeurs littérales." -#: library/functions.rst:532 +#: library/functions.rst:582 #, fuzzy msgid "" "Raises an :ref:`auditing event ` ``exec`` with argument " @@ -1090,7 +1244,7 @@ msgstr "" "Lève un :ref:`auditing event ` ``open`` avec les arguments " "``file``, ``mode``, ``flags``." -#: library/functions.rst:534 +#: library/functions.rst:584 msgid "" "Raises an :ref:`auditing event ` ``exec`` with the code object as " "the argument. Code compilation events may also be raised." @@ -1099,7 +1253,7 @@ msgstr "" "comme argument. Les événements de compilation de code peuvent également être " "levés." -#: library/functions.rst:505 +#: library/functions.rst:555 #, fuzzy msgid "" "This function supports dynamic execution of Python code. *object* must be " @@ -1123,15 +1277,16 @@ msgstr "" "utilisés en dehors d'une fonction, même dans du code passé à :func:`exec`. " "La fonction renvoie ``None``." -#: library/functions.rst:516 +#: library/functions.rst:566 +#, fuzzy msgid "" "In all cases, if the optional parts are omitted, the code is executed in the " "current scope. If only *globals* is provided, it must be a dictionary (and " "not a subclass of dictionary), which will be used for both the global and " "the local variables. If *globals* and *locals* are given, they are used for " "the global and local variables, respectively. If provided, *locals* can be " -"any mapping object. Remember that at module level, globals and locals are " -"the same dictionary. If exec gets two separate objects as *globals* and " +"any mapping object. Remember that at the module level, globals and locals " +"are the same dictionary. If exec gets two separate objects as *globals* and " "*locals*, the code will be executed as if it were embedded in a class " "definition." msgstr "" @@ -1145,7 +1300,7 @@ msgstr "" "``exec`` reçoit deux objets distincts dans *globals* et *locals*, le code " "est exécuté comme s'il était inclus dans une définition de classe." -#: library/functions.rst:526 +#: library/functions.rst:576 msgid "" "If the *globals* dictionary does not contain a value for the key " "``__builtins__``, a reference to the dictionary of the built-in module :mod:" @@ -1159,7 +1314,7 @@ msgstr "" "exposées au code exécuté en insérant votre propre dictionnaire " "``__builtins__`` dans *globals* avant de le donner à :func:`exec`." -#: library/functions.rst:539 +#: library/functions.rst:589 msgid "" "The built-in functions :func:`globals` and :func:`locals` return the current " "global and local dictionary, respectively, which may be useful to pass " @@ -1169,7 +1324,7 @@ msgstr "" "respectivement les dictionnaires globaux et locaux, qui peuvent être utiles " "en deuxième et troisième argument de :func:`exec`." -#: library/functions.rst:545 +#: library/functions.rst:595 msgid "" "The default *locals* act as described for function :func:`locals` below: " "modifications to the default *locals* dictionary should not be attempted. " @@ -1182,7 +1337,7 @@ msgstr "" "observer l'effet du code sur les variables locales, après que :func:`exec` " "soit terminée." -#: library/functions.rst:553 +#: library/functions.rst:603 msgid "" "Construct an iterator from those elements of *iterable* for which *function* " "returns true. *iterable* may be either a sequence, a container which " @@ -1196,7 +1351,7 @@ msgstr "" "est ``None``, la fonction identité est prise, c'est-à-dire que tous les " "éléments faux d'*iterable* sont supprimés." -#: library/functions.rst:559 +#: library/functions.rst:609 msgid "" "Note that ``filter(function, iterable)`` is equivalent to the generator " "expression ``(item for item in iterable if function(item))`` if function is " @@ -1208,7 +1363,7 @@ msgstr "" "``None``, et de ``(item for item in iterable if item)`` si *function* est " "``None``." -#: library/functions.rst:564 +#: library/functions.rst:614 msgid "" "See :func:`itertools.filterfalse` for the complementary function that " "returns elements of *iterable* for which *function* returns false." @@ -1216,18 +1371,19 @@ msgstr "" "Voir :func:`itertools.filterfalse` pour la fonction complémentaire qui donne " "les éléments d'*iterable* pour lesquels *function* renvoie ``False``." -#: library/functions.rst:574 +#: library/functions.rst:624 msgid "Return a floating point number constructed from a number or string *x*." msgstr "" "Renvoie un nombre a virgule flottante depuis un nombre ou une chaîne *x*." -#: library/functions.rst:576 +#: library/functions.rst:626 +#, fuzzy msgid "" "If the argument is a string, it should contain a decimal number, optionally " "preceded by a sign, and optionally embedded in whitespace. The optional " "sign may be ``'+'`` or ``'-'``; a ``'+'`` sign has no effect on the value " "produced. The argument may also be a string representing a NaN (not-a-" -"number), or a positive or negative infinity. More precisely, the input must " +"number), or positive or negative infinity. More precisely, the input must " "conform to the following grammar after leading and trailing whitespace " "characters are removed:" msgstr "" @@ -1240,19 +1396,20 @@ msgstr "" "conformer à la grammaire suivante, après que les espaces en début et fin de " "chaîne aient été retirées :" -#: library/functions.rst:591 +#: library/functions.rst:641 +#, fuzzy msgid "" "Here ``floatnumber`` is the form of a Python floating-point literal, " "described in :ref:`floating`. Case is not significant, so, for example, " -"\"inf\", \"Inf\", \"INFINITY\" and \"iNfINity\" are all acceptable spellings " -"for positive infinity." +"\"inf\", \"Inf\", \"INFINITY\", and \"iNfINity\" are all acceptable " +"spellings for positive infinity." msgstr "" "Ici ``floatnumber`` est un nombre a virgule flottante littéral Python, " "décrit dans :ref:`floating`. La casse n'y est pas significative, donc, par " "exemple, ``\"inf\"``, ``\" Inf\"``, ``\"INFINITY\"``, et ``\" iNfiNity\"`` " "sont tous des orthographes valides pour un infini positif." -#: library/functions.rst:596 +#: library/functions.rst:646 msgid "" "Otherwise, if the argument is an integer or a floating point number, a " "floating point number with the same value (within Python's floating point " @@ -1265,7 +1422,7 @@ msgstr "" "dehors de l'intervalle d'un nombre a virgule flottante pour Python, :exc:" "`OverflowError` est levée." -#: library/functions.rst:601 +#: library/functions.rst:651 msgid "" "For a general Python object ``x``, ``float(x)`` delegates to ``x." "__float__()``. If ``__float__()`` is not defined then it falls back to :" @@ -1275,27 +1432,28 @@ msgstr "" "__float__()``. Si ``__float__()`` n'est pas défini alors il est délégué à :" "meth:`__index__`." -#: library/functions.rst:605 +#: library/functions.rst:655 msgid "If no argument is given, ``0.0`` is returned." msgstr "Sans argument, ``0.0`` est renvoyé." -#: library/functions.rst:607 +#: library/functions.rst:657 msgid "Examples::" msgstr "Exemples ::" -#: library/functions.rst:620 +#: library/functions.rst:670 msgid "The float type is described in :ref:`typesnumeric`." msgstr "Le type *float* est décrit dans :ref:`typesnumeric`." -#: library/functions.rst:628 +#: library/functions.rst:678 msgid "Falls back to :meth:`__index__` if :meth:`__float__` is not defined." msgstr "revient à :meth:`__index__` si :meth:`__float__` n'est pas défini." -#: library/functions.rst:638 +#: library/functions.rst:688 +#, fuzzy msgid "" "Convert a *value* to a \"formatted\" representation, as controlled by " "*format_spec*. The interpretation of *format_spec* will depend on the type " -"of the *value* argument, however there is a standard formatting syntax that " +"of the *value* argument; however, there is a standard formatting syntax that " "is used by most built-in types: :ref:`formatspec`." msgstr "" "Convertit une valeur en sa représentation « formatée », contrôlée par " @@ -1303,7 +1461,7 @@ msgstr "" "valeur, cependant il existe une syntaxe standard utilisée par la plupart des " "types natifs : :ref:`formatspec`." -#: library/functions.rst:643 +#: library/functions.rst:693 msgid "" "The default *format_spec* is an empty string which usually gives the same " "effect as calling :func:`str(value) `." @@ -1311,7 +1469,7 @@ msgstr "" "Par défaut, *format_spec* est une chaîne vide. Dans ce cas, appeler cette " "fonction a généralement le même effet qu'appeler :func:`str(value) `." -#: library/functions.rst:646 +#: library/functions.rst:696 msgid "" "A call to ``format(value, format_spec)`` is translated to ``type(value)." "__format__(value, format_spec)`` which bypasses the instance dictionary when " @@ -1327,7 +1485,7 @@ msgstr "" "mod:`object` et que *format_spec* n'est pas vide, ou si *format_spec* ou le " "résultat ne sont pas des chaînes de caractères." -#: library/functions.rst:653 +#: library/functions.rst:703 msgid "" "``object().__format__(format_spec)`` raises :exc:`TypeError` if " "*format_spec* is not an empty string." @@ -1335,7 +1493,7 @@ msgstr "" "``object().__format__(format_spec)`` lève :exc:`TypeError` si *format_spec* " "n'est pas une chaîne vide." -#: library/functions.rst:662 +#: library/functions.rst:712 msgid "" "Return a new :class:`frozenset` object, optionally with elements taken from " "*iterable*. ``frozenset`` is a built-in class. See :class:`frozenset` and :" @@ -1345,7 +1503,7 @@ msgstr "" "tirés d'*iterable*. ``frozenset`` est une classe native. Voir :class:" "`frozenset` et :ref:`types-set` pour la documentation sur cette classe." -#: library/functions.rst:666 +#: library/functions.rst:716 msgid "" "For other containers see the built-in :class:`set`, :class:`list`, :class:" "`tuple`, and :class:`dict` classes, as well as the :mod:`collections` module." @@ -1354,7 +1512,7 @@ msgstr "" "`list`, :class:`tuple`, et :class:`dict`, ainsi que le module :mod:" "`collections`." -#: library/functions.rst:673 +#: library/functions.rst:723 msgid "" "Return the value of the named attribute of *object*. *name* must be a " "string. If the string is the name of one of the object's attributes, the " @@ -1370,7 +1528,7 @@ msgstr "" "que *default* est fourni, celui-ci est renvoyé. Sinon l'exception :exc:" "`AttributeError` est levée." -#: library/functions.rst:681 +#: library/functions.rst:731 msgid "" "Since :ref:`private name mangling ` happens at " "compilation time, one must manually mangle a private attribute's (attributes " @@ -1378,7 +1536,7 @@ msgid "" "`getattr`." msgstr "" -#: library/functions.rst:689 +#: library/functions.rst:739 msgid "" "Return a dictionary representing the current global symbol table. This is " "always the dictionary of the current module (inside a function or method, " @@ -1390,7 +1548,7 @@ msgstr "" "fonction ou méthode, c'est le module où elle est définie, et non le module " "d'où elle est appelée)." -#: library/functions.rst:696 +#: library/functions.rst:746 msgid "" "The arguments are an object and a string. The result is ``True`` if the " "string is the name of one of the object's attributes, ``False`` if not. " @@ -1402,7 +1560,7 @@ msgstr "" "``False`` (l'implémentation appelle ``getattr(object, name)`` et regarde si " "une exception :exc:`AttributeError` a été levée)." -#: library/functions.rst:704 +#: library/functions.rst:754 msgid "" "Return the hash value of the object (if it has one). Hash values are " "integers. They are used to quickly compare dictionary keys during a " @@ -1415,7 +1573,7 @@ msgstr "" "ont la même valeur de hachage (même si leurs types sont différents, comme " "pour ``1`` et ``1.0``)." -#: library/functions.rst:711 +#: library/functions.rst:761 msgid "" "For objects with custom :meth:`__hash__` methods, note that :func:`hash` " "truncates the return value based on the bit width of the host machine. See :" @@ -1425,7 +1583,7 @@ msgstr "" "func:`hash` tronque la valeur donnée en fonction du nombre de bits de la " "machine hôte. Voir :meth:`__hash__` pour plus d'information." -#: library/functions.rst:717 +#: library/functions.rst:767 msgid "" "Invoke the built-in help system. (This function is intended for interactive " "use.) If no argument is given, the interactive help system starts on the " @@ -1442,9 +1600,10 @@ msgstr "" "la console. Si l'argument est d'un autre type, une page d'aide sur cet objet " "est générée." -#: library/functions.rst:724 +#: library/functions.rst:774 +#, fuzzy msgid "" -"Note that if a slash(/) appears in the parameter list of a function, when " +"Note that if a slash(/) appears in the parameter list of a function when " "invoking :func:`help`, it means that the parameters prior to the slash are " "positional-only. For more info, see :ref:`the FAQ entry on positional-only " "parameters `." @@ -1455,14 +1614,14 @@ msgstr "" "plus d'informations, voir :ref:`La FAQ sur les arguments positionnels `." -#: library/functions.rst:729 +#: library/functions.rst:779 msgid "" "This function is added to the built-in namespace by the :mod:`site` module." msgstr "" "Cette fonction est ajoutée à l'espace de nommage natif par le module :mod:" "`site`." -#: library/functions.rst:731 +#: library/functions.rst:781 msgid "" "Changes to :mod:`pydoc` and :mod:`inspect` mean that the reported signatures " "for callables are now more comprehensive and consistent." @@ -1470,7 +1629,7 @@ msgstr "" "les changements aux modules :mod:`pydoc` et :mod:`inspect` rendent les " "signatures des appelables plus compréhensibles et cohérentes." -#: library/functions.rst:738 +#: library/functions.rst:788 msgid "" "Convert an integer number to a lowercase hexadecimal string prefixed with " "\"0x\". If *x* is not a Python :class:`int` object, it has to define an :" @@ -1480,7 +1639,7 @@ msgstr "" "pas un :class:`int`, il doit définir une méthode :meth:`__index__` qui " "renvoie un entier. Quelques exemples :" -#: library/functions.rst:747 +#: library/functions.rst:797 msgid "" "If you want to convert an integer number to an uppercase or lower " "hexadecimal string with prefix or not, you can use either of the following " @@ -1490,7 +1649,7 @@ msgstr "" "majuscule ou non, préfixée ou non, vous pouvez utiliser l'une des méthodes " "suivantes :" -#: library/functions.rst:759 +#: library/functions.rst:809 msgid "" "See also :func:`int` for converting a hexadecimal string to an integer using " "a base of 16." @@ -1498,7 +1657,7 @@ msgstr "" "Voir aussi :func:`int` pour convertir une chaîne hexadécimale en un entier " "(en affectant 16 à l'argument *base*)." -#: library/functions.rst:764 +#: library/functions.rst:814 msgid "" "To obtain a hexadecimal string representation for a float, use the :meth:" "`float.hex` method." @@ -1506,7 +1665,7 @@ msgstr "" "Pour obtenir une représentation hexadécimale sous forme de chaîne d'un " "nombre à virgule flottante, utilisez la méthode :meth:`float.hex`." -#: library/functions.rst:770 +#: library/functions.rst:820 msgid "" "Return the \"identity\" of an object. This is an integer which is " "guaranteed to be unique and constant for this object during its lifetime. " @@ -1517,7 +1676,7 @@ msgstr "" "constant pour cet objet durant sa durée de vie. Deux objets dont les durées " "de vie ne se chevauchent pas peuvent partager le même :func:`id`." -#: library/functions.rst:777 +#: library/functions.rst:827 #, fuzzy msgid "" "Raises an :ref:`auditing event ` ``builtins.id`` with argument " @@ -1526,7 +1685,7 @@ msgstr "" "Lève un :ref:`auditing event ` ``builtins.breakpoint`` avec " "l'argument ``breakpointhook``." -#: library/functions.rst:782 +#: library/functions.rst:832 msgid "" "If the *prompt* argument is present, it is written to standard output " "without a trailing newline. The function then reads a line from input, " @@ -1538,7 +1697,7 @@ msgstr "" "standard et la convertit en chaîne (supprimant le retour à la ligne final) " "quelle renvoie. Lorsque EOF est lu, :exc:`EOFError` est levée. Exemple ::" -#: library/functions.rst:792 +#: library/functions.rst:842 msgid "" "If the :mod:`readline` module was loaded, then :func:`input` will use it to " "provide elaborate line editing and history features." @@ -1546,7 +1705,7 @@ msgstr "" "Si le module :mod:`readline` est chargé, :func:`input` l'utilisera pour " "fournir des fonctionnalités d'édition et d'historique élaborées." -#: library/functions.rst:795 +#: library/functions.rst:845 #, fuzzy msgid "" "Raises an :ref:`auditing event ` ``builtins.input`` with argument " @@ -1555,7 +1714,7 @@ msgstr "" "Lève un :ref:`auditing event ` ``builtins.input`` avec l'argument " "``prompt`` avant de lire l'entrée." -#: library/functions.rst:797 +#: library/functions.rst:847 msgid "" "Raises an :ref:`auditing event ` ``builtins.input`` with argument " "``prompt`` before reading input" @@ -1563,7 +1722,7 @@ msgstr "" "Lève un :ref:`auditing event ` ``builtins.input`` avec l'argument " "``prompt`` avant de lire l'entrée." -#: library/functions.rst:800 +#: library/functions.rst:850 #, fuzzy msgid "" "Raises an :ref:`auditing event ` ``builtins.input/result`` with " @@ -1572,7 +1731,7 @@ msgstr "" "Lève un :ref:`auditing event ` ``builtins.breakpoint`` avec " "l'argument ``breakpointhook``." -#: library/functions.rst:802 +#: library/functions.rst:852 msgid "" "Raises an auditing event ``builtins.input/result`` with the result after " "successfully reading input." @@ -1580,7 +1739,7 @@ msgstr "" "Lève un événement d'audit ``builtins.input/result`` avec le résultat après " "avoir lu avec succès l'entrée." -#: library/functions.rst:809 +#: library/functions.rst:859 msgid "" "Return an integer object constructed from a number or string *x*, or return " "``0`` if no arguments are given. If *x* defines :meth:`__int__`, ``int(x)`` " @@ -1595,7 +1754,7 @@ msgstr "" "``int(x)`` renvoie ``x.__trunc__()``. Les nombres à virgule flottante sont " "tronqués vers zéro." -#: library/functions.rst:816 +#: library/functions.rst:866 msgid "" "If *x* is not a number or if *base* is given, then *x* must be a string, :" "class:`bytes`, or :class:`bytearray` instance representing an :ref:`integer " @@ -1624,11 +1783,11 @@ msgstr "" "0)`` n'est pas légal, alors que ``int('010')`` l'est tout comme ``int('010', " "8)``." -#: library/functions.rst:829 +#: library/functions.rst:879 msgid "The integer type is described in :ref:`typesnumeric`." msgstr "Le type des entiers est décrit dans :ref:`typesnumeric`." -#: library/functions.rst:831 +#: library/functions.rst:881 msgid "" "If *base* is not an instance of :class:`int` and the *base* object has a :" "meth:`base.__index__ ` method, that method is called to " @@ -1641,19 +1800,21 @@ msgstr "" "meth:`base.__int__ ` au lieu de :meth:`base.__index__ " "`." -#: library/functions.rst:844 +#: library/functions.rst:894 msgid "Falls back to :meth:`__index__` if :meth:`__int__` is not defined." msgstr "revient à :meth:`__index__` si :meth:`__int__` n'est pas défini." -#: library/functions.rst:850 +#: library/functions.rst:900 +#, fuzzy msgid "" "Return ``True`` if the *object* argument is an instance of the *classinfo* " -"argument, or of a (direct, indirect or :term:`virtual `) subclass thereof. If *object* is not an object of the given type, " "the function always returns ``False``. If *classinfo* is a tuple of type " -"objects (or recursively, other such tuples), return ``True`` if *object* is " -"an instance of any of the types. If *classinfo* is not a type or tuple of " -"types and such tuples, a :exc:`TypeError` exception is raised." +"objects (or recursively, other such tuples) or a :ref:`types-union` of " +"multiple types, return ``True`` if *object* is an instance of any of the " +"types. If *classinfo* is not a type or tuple of types and such tuples, a :" +"exc:`TypeError` exception is raised." msgstr "" "Renvoie ``True`` si *object* est une instance de *classinfo*, ou d'une de " "ses classes filles, directe, indirecte, ou :term:`abstraite `) of *classinfo*. A class is considered a subclass of " -"itself. *classinfo* may be a tuple of class objects, in which case every " -"entry in *classinfo* will be checked. In any other case, a :exc:`TypeError` " -"exception is raised." +"Return ``True`` if *class* is a subclass (direct, indirect, or :term:" +"`virtual `) of *classinfo*. A class is considered a " +"subclass of itself. *classinfo* may be a tuple of class objects or a :ref:" +"`types-union`, in which case return ``True`` if *class* is a subclass of any " +"entry in *classinfo*. In any other case, a :exc:`TypeError` exception is " +"raised." msgstr "" "Renvoie ``True`` si *class* est une classe fille (directe, indirecte ou :" "term:`abstraite `) de *classinfo*. Une classe est " @@ -1678,7 +1845,7 @@ msgstr "" "classes, dans ce cas la vérification sera faite pour chaque classe de " "*classinfo*. Dans tous les autres cas, :exc:`TypeError` est levée." -#: library/functions.rst:871 +#: library/functions.rst:929 msgid "" "Return an :term:`iterator` object. The first argument is interpreted very " "differently depending on the presence of the second argument. Without a " @@ -1703,11 +1870,11 @@ msgstr "" "de :meth:`~iterator.__next__`. Si la valeur reçue est égale à *sentinel* :" "exc:`StopIteration` est levée, sinon la valeur est renvoyée." -#: library/functions.rst:884 +#: library/functions.rst:942 msgid "See also :ref:`typeiter`." msgstr "Voir aussi :ref:`typeiter`." -#: library/functions.rst:886 +#: library/functions.rst:944 msgid "" "One useful application of the second form of :func:`iter` is to build a " "block-reader. For example, reading fixed-width blocks from a binary database " @@ -1717,7 +1884,7 @@ msgstr "" "construire un lecteur par blocs. Par exemple, lire des blocs de taille fixe " "d'une base de donnée binaire jusqu'à ce que la fin soit atteinte ::" -#: library/functions.rst:898 +#: library/functions.rst:956 msgid "" "Return the length (the number of items) of an object. The argument may be a " "sequence (such as a string, bytes, tuple, list, or range) or a collection " @@ -1728,13 +1895,13 @@ msgstr "" "liste ou un intervalle) ou une collection (telle qu'un dictionnaire, un " "ensemble ou un ensemble figé)." -#: library/functions.rst:904 +#: library/functions.rst:962 msgid "" "``len`` raises :exc:`OverflowError` on lengths larger than :data:`sys." "maxsize`, such as :class:`range(2 ** 100) `." msgstr "" -#: library/functions.rst:912 +#: library/functions.rst:970 msgid "" "Rather than being a function, :class:`list` is actually a mutable sequence " "type, as documented in :ref:`typesseq-list` and :ref:`typesseq`." @@ -1743,7 +1910,7 @@ msgstr "" "type séquentiel muable, comme décrit dans :ref:`typesseq-list` et :ref:" "`typesseq`." -#: library/functions.rst:918 +#: library/functions.rst:976 msgid "" "Update and return a dictionary representing the current local symbol table. " "Free variables are returned by :func:`locals` when it is called in function " @@ -1756,7 +1923,7 @@ msgstr "" "corps d'une classe. Notez qu’au niveau d’un module, :func:`locals` et :func:" "`globals` sont le même dictionnaire." -#: library/functions.rst:924 +#: library/functions.rst:982 msgid "" "The contents of this dictionary should not be modified; changes may not " "affect the values of local and free variables used by the interpreter." @@ -1765,7 +1932,7 @@ msgstr "" "n'affectent pas les valeurs des variables locales ou libres utilisées par " "l'interpréteur." -#: library/functions.rst:929 +#: library/functions.rst:987 msgid "" "Return an iterator that applies *function* to every item of *iterable*, " "yielding the results. If additional *iterable* arguments are passed, " @@ -1782,7 +1949,7 @@ msgstr "" "où les arguments sont déjà rangés sous forme de *n*-uplets, voir :func:" "`itertools.starmap`." -#: library/functions.rst:940 +#: library/functions.rst:998 msgid "" "Return the largest item in an iterable or the largest of two or more " "arguments." @@ -1790,7 +1957,7 @@ msgstr "" "Renvoie le plus grand élément d'un itérable, ou l'argument le plus grand " "parmi au moins deux arguments." -#: library/functions.rst:943 +#: library/functions.rst:1001 msgid "" "If one positional argument is provided, it should be an :term:`iterable`. " "The largest item in the iterable is returned. If two or more positional " @@ -1801,7 +1968,7 @@ msgstr "" "deux arguments positionnels sont fournis, l'argument le plus grand sera " "renvoyé." -#: library/functions.rst:985 +#: library/functions.rst:1043 msgid "" "There are two optional keyword-only arguments. The *key* argument specifies " "a one-argument ordering function like that used for :meth:`list.sort`. The " @@ -1815,7 +1982,7 @@ msgstr "" "fourni est vide. Si l'itérable est vide et que *default* n'est pas fourni, :" "exc:`ValueError` est levée." -#: library/functions.rst:954 +#: library/functions.rst:1012 msgid "" "If multiple items are maximal, the function returns the first one " "encountered. This is consistent with other sort-stability preserving tools " @@ -1827,15 +1994,15 @@ msgstr "" "stabilité lors du tri, tels que ``sorted(iterable, key=keyfunc, reverse=True)" "[0]`` et ``heapq.nlargest(1, iterable, key=keyfunc)``." -#: library/functions.rst:996 +#: library/functions.rst:1054 msgid "The *default* keyword-only argument." msgstr "L'argument nommé (et seulement donné par son nom) *default*." -#: library/functions.rst:999 +#: library/functions.rst:1057 msgid "The *key* can be ``None``." msgstr "l'argument *key* peut être ``None``." -#: library/functions.rst:970 +#: library/functions.rst:1028 msgid "" "Return a \"memory view\" object created from the given argument. See :ref:" "`typememoryview` for more information." @@ -1843,7 +2010,7 @@ msgstr "" "Renvoie une « vue mémoire » (*memory view*) créée depuis l'argument. Voir :" "ref:`typememoryview` pour plus d'informations." -#: library/functions.rst:977 +#: library/functions.rst:1035 msgid "" "Return the smallest item in an iterable or the smallest of two or more " "arguments." @@ -1851,7 +2018,7 @@ msgstr "" "Renvoie le plus petit élément d'un itérable ou le plus petit d'au moins deux " "arguments." -#: library/functions.rst:980 +#: library/functions.rst:1038 msgid "" "If one positional argument is provided, it should be an :term:`iterable`. " "The smallest item in the iterable is returned. If two or more positional " @@ -1861,7 +2028,7 @@ msgstr "" "plus petit élément de l'itérable est renvoyé. Si au moins deux arguments " "positionnels sont fournis, le plus petit argument positionnel est renvoyé." -#: library/functions.rst:991 +#: library/functions.rst:1049 msgid "" "If multiple items are minimal, the function returns the first one " "encountered. This is consistent with other sort-stability preserving tools " @@ -1873,7 +2040,7 @@ msgstr "" "du tri, tels que ``sorted(iterable, key=keyfunc)[0]`` et ``heapq." "nsmallest(1, iterable, key=keyfunc)``." -#: library/functions.rst:1005 +#: library/functions.rst:1063 msgid "" "Retrieve the next item from the *iterator* by calling its :meth:`~iterator." "__next__` method. If *default* is given, it is returned if the iterator is " @@ -1883,17 +2050,18 @@ msgstr "" "__next__`. Si *default* est fourni, il sera renvoyé si l'itérateur est " "épuisé, sinon :exc:`StopIteration` est levée." -#: library/functions.rst:1012 +#: library/functions.rst:1070 +#, fuzzy msgid "" "Return a new featureless object. :class:`object` is a base for all classes. " -"It has the methods that are common to all instances of Python classes. This " +"It has methods that are common to all instances of Python classes. This " "function does not accept any arguments." msgstr "" "Renvoie un objet vide. :class:`object` est la classe parente de toutes les " "classes. C'est elle qui porte les méthodes communes à toutes les instances " "de classes en Python. Cette fonction n'accepte aucun argument." -#: library/functions.rst:1018 +#: library/functions.rst:1076 msgid "" ":class:`object` does *not* have a :attr:`~object.__dict__`, so you can't " "assign arbitrary attributes to an instance of the :class:`object` class." @@ -1902,7 +2070,7 @@ msgstr "" "pouvez donc pas assigner d'attributs arbitraires à une instance d':class:" "`object`." -#: library/functions.rst:1024 +#: library/functions.rst:1082 msgid "" "Convert an integer number to an octal string prefixed with \"0o\". The " "result is a valid Python expression. If *x* is not a Python :class:`int` " @@ -1914,15 +2082,16 @@ msgstr "" "objet :class:`int`, il doit définir une méthode :meth:`__index__` qui donne " "un entier, par exemple :" -#: library/functions.rst:1034 +#: library/functions.rst:1092 +#, fuzzy msgid "" -"If you want to convert an integer number to octal string either with prefix " -"\"0o\" or not, you can use either of the following ways." +"If you want to convert an integer number to an octal string either with the " +"prefix \"0o\" or not, you can use either of the following ways." msgstr "" "Si vous voulez convertir un nombre entier en chaîne octale, avec ou sans le " "préfixe ``0o``, vous pouvez utiliser l'une des méthodes suivantes." -#: library/functions.rst:1051 +#: library/functions.rst:1109 msgid "" "Open *file* and return a corresponding :term:`file object`. If the file " "cannot be opened, an :exc:`OSError` is raised. See :ref:`tut-files` for more " @@ -1932,12 +2101,13 @@ msgstr "" "Si le fichier ne peut pas être ouvert, une :exc:`OSError` est levée. Voir :" "ref:`tut-files` pour plus d'exemple d'utilisation de cette fonction." -#: library/functions.rst:1055 +#: library/functions.rst:1113 +#, fuzzy msgid "" "*file* is a :term:`path-like object` giving the pathname (absolute or " "relative to the current working directory) of the file to be opened or an " "integer file descriptor of the file to be wrapped. (If a file descriptor is " -"given, it is closed when the returned I/O object is closed, unless *closefd* " +"given, it is closed when the returned I/O object is closed unless *closefd* " "is set to ``False``.)" msgstr "" "*file* est un :term:`objet simili-chemin ` donnant le " @@ -1946,15 +2116,16 @@ msgstr "" "descripteur de fichier est donné, il sera fermé en même temps que l'objet " "d'entrée-sortie renvoyé, sauf si *closefd* est mis à ``False``)." -#: library/functions.rst:1061 +#: library/functions.rst:1119 +#, fuzzy msgid "" "*mode* is an optional string that specifies the mode in which the file is " "opened. It defaults to ``'r'`` which means open for reading in text mode. " "Other common values are ``'w'`` for writing (truncating the file if it " -"already exists), ``'x'`` for exclusive creation and ``'a'`` for appending " +"already exists), ``'x'`` for exclusive creation, and ``'a'`` for appending " "(which on *some* Unix systems, means that *all* writes append to the end of " "the file regardless of the current seek position). In text mode, if " -"*encoding* is not specified the encoding used is platform dependent: " +"*encoding* is not specified the encoding used is platform-dependent: " "``locale.getpreferredencoding(False)`` is called to get the current locale " "encoding. (For reading and writing raw bytes use binary mode and leave " "*encoding* unspecified.) The available modes are:" @@ -1973,73 +2144,75 @@ msgstr "" "mode binaire sans préciser *encoding* non spécifié). Les modes disponibles " "sont :" -#: library/functions.rst:1078 +#: library/functions.rst:1136 msgid "Character" msgstr "Caractère" -#: library/functions.rst:1078 +#: library/functions.rst:1136 msgid "Meaning" msgstr "Signification" -#: library/functions.rst:1080 +#: library/functions.rst:1138 msgid "``'r'``" msgstr "``'r'``" -#: library/functions.rst:1080 +#: library/functions.rst:1138 msgid "open for reading (default)" msgstr "ouvre en lecture (par défaut)" -#: library/functions.rst:1081 +#: library/functions.rst:1139 msgid "``'w'``" msgstr "``'w'``" -#: library/functions.rst:1081 +#: library/functions.rst:1139 msgid "open for writing, truncating the file first" msgstr "ouvre en écriture, en effaçant le contenu du fichier" -#: library/functions.rst:1082 +#: library/functions.rst:1140 msgid "``'x'``" msgstr "``'x'``" -#: library/functions.rst:1082 +#: library/functions.rst:1140 msgid "open for exclusive creation, failing if the file already exists" msgstr "ouvre pour une création exclusive, échouant si le fichier existe déjà" -#: library/functions.rst:1083 +#: library/functions.rst:1141 msgid "``'a'``" msgstr "``'a'``" -#: library/functions.rst:1083 -msgid "open for writing, appending to the end of the file if it exists" +#: library/functions.rst:1141 +#, fuzzy +msgid "open for writing, appending to the end of file if it exists" msgstr "ouvre en écriture, ajoutant à la fin du fichier s'il existe" -#: library/functions.rst:1084 +#: library/functions.rst:1142 msgid "``'b'``" msgstr "``'b'``" -#: library/functions.rst:1084 +#: library/functions.rst:1142 msgid "binary mode" msgstr "mode binaire" -#: library/functions.rst:1085 +#: library/functions.rst:1143 msgid "``'t'``" msgstr "``'t'``" -#: library/functions.rst:1085 +#: library/functions.rst:1143 msgid "text mode (default)" msgstr "mode texte (par défaut)" -#: library/functions.rst:1086 +#: library/functions.rst:1144 msgid "``'+'``" msgstr "``'+'``" -#: library/functions.rst:1086 +#: library/functions.rst:1144 msgid "open for updating (reading and writing)" msgstr "ouvre en modification (lecture et écriture)" -#: library/functions.rst:1089 +#: library/functions.rst:1147 +#, fuzzy msgid "" -"The default mode is ``'r'`` (open for reading text, synonym of ``'rt'``). " +"The default mode is ``'r'`` (open for reading text, a synonym of ``'rt'``). " "Modes ``'w+'`` and ``'w+b'`` open and truncate the file. Modes ``'r+'`` and " "``'r+b'`` open the file with no truncation." msgstr "" @@ -2047,7 +2220,7 @@ msgstr "" "``'rt'``). Les modes ``'w+'`` et ``'w+b'`` ouvrent et vident le fichier. Les " "modes ``'r+'`` et ``'r+b'`` ouvrent le fichier sans le vider." -#: library/functions.rst:1093 +#: library/functions.rst:1151 msgid "" "As mentioned in the :ref:`io-overview`, Python distinguishes between binary " "and text I/O. Files opened in binary mode (including ``'b'`` in the *mode* " @@ -2065,11 +2238,12 @@ msgstr "" "octets ayant été décodés au préalable en utilisant un encodage déduit de " "l'environnement ou *encoding* s'il est donné." -#: library/functions.rst:1101 +#: library/functions.rst:1159 +#, fuzzy msgid "" "There is an additional mode character permitted, ``'U'``, which no longer " "has any effect, and is considered deprecated. It previously enabled :term:" -"`universal newlines` in text mode, which became the default behaviour in " +"`universal newlines` in text mode, which became the default behavior in " "Python 3.0. Refer to the documentation of the :ref:`newline ` parameter for further details." msgstr "" @@ -2080,7 +2254,7 @@ msgstr "" "documentation du paramètre :ref:`newline ` pour plus " "de détails." -#: library/functions.rst:1109 +#: library/functions.rst:1167 msgid "" "Python doesn't depend on the underlying operating system's notion of text " "files; all the processing is done by Python itself, and is therefore " @@ -2090,7 +2264,7 @@ msgstr "" "jacent. Tout le traitement est effectué par Python lui-même, et est ainsi " "indépendant de la plate-forme." -#: library/functions.rst:1113 +#: library/functions.rst:1171 msgid "" "*buffering* is an optional integer used to set the buffering policy. Pass 0 " "to switch buffering off (only allowed in binary mode), 1 to select line " @@ -2105,7 +2279,7 @@ msgstr "" "en octets d'un tampon de taille fixe. Sans l'argument *buffering*, les " "comportements par défaut sont les suivants :" -#: library/functions.rst:1119 +#: library/functions.rst:1177 msgid "" "Binary files are buffered in fixed-size chunks; the size of the buffer is " "chosen using a heuristic trying to determine the underlying device's \"block " @@ -2118,7 +2292,7 @@ msgstr "" "DEFAULT_BUFFER_SIZE`. Sur de nombreux systèmes, le tampon sera de 4096 ou " "8192 octets." -#: library/functions.rst:1124 +#: library/functions.rst:1182 msgid "" "\"Interactive\" text files (files for which :meth:`~io.IOBase.isatty` " "returns ``True``) use line buffering. Other text files use the policy " @@ -2128,7 +2302,7 @@ msgstr "" "isatty` renvoie ``True``) utilisent un tampon par lignes. Les autres " "fichiers texte sont traités comme les fichiers binaires." -#: library/functions.rst:1128 +#: library/functions.rst:1186 msgid "" "*encoding* is the name of the encoding used to decode or encode the file. " "This should only be used in text mode. The default encoding is platform " @@ -2143,7 +2317,7 @@ msgstr "" "par Python peut être utilisé. Voir :mod:`codecs` pour une liste des " "encodages pris en charge." -#: library/functions.rst:1135 +#: library/functions.rst:1193 msgid "" "*errors* is an optional string that specifies how encoding and decoding " "errors are to be handled—this cannot be used in binary mode. A variety of " @@ -2158,7 +2332,7 @@ msgstr "" "d'erreur enregistré avec :func:`codecs.register_error` est aussi un argument " "valide. Les noms standards sont :" -#: library/functions.rst:1143 +#: library/functions.rst:1201 msgid "" "``'strict'`` to raise a :exc:`ValueError` exception if there is an encoding " "error. The default value of ``None`` has the same effect." @@ -2166,7 +2340,7 @@ msgstr "" "``'strict'`` pour lever une :exc:`ValueError` si une erreur d'encodage est " "rencontrée. La valeur par défaut, ``None``, a le même effet." -#: library/functions.rst:1147 +#: library/functions.rst:1205 msgid "" "``'ignore'`` ignores errors. Note that ignoring encoding errors can lead to " "data loss." @@ -2174,7 +2348,7 @@ msgstr "" "``'ignore'`` ignore les erreurs. Notez qu'ignorer les erreurs d'encodage " "peut mener à des pertes de données." -#: library/functions.rst:1150 +#: library/functions.rst:1208 msgid "" "``'replace'`` causes a replacement marker (such as ``'?'``) to be inserted " "where there is malformed data." @@ -2182,13 +2356,14 @@ msgstr "" "``'replace'`` insère un marqueur de substitution (tel que ``'?'``) en place " "des données mal formées." -#: library/functions.rst:1153 +#: library/functions.rst:1211 +#, fuzzy msgid "" -"``'surrogateescape'`` will represent any incorrect bytes as code points in " -"the Unicode Private Use Area ranging from U+DC80 to U+DCFF. These private " -"code points will then be turned back into the same bytes when the " -"``surrogateescape`` error handler is used when writing data. This is useful " -"for processing files in an unknown encoding." +"``'surrogateescape'`` will represent any incorrect bytes as low surrogate " +"code units ranging from U+DC80 to U+DCFF. These surrogate code units will " +"then be turned back into the same bytes when the ``surrogateescape`` error " +"handler is used when writing data. This is useful for processing files in " +"an unknown encoding." msgstr "" "``'surrogateescape'`` représente chaque octet incorrect par un code " "caractère de la zone *Private Use Area* d'Unicode, de *U+DC80* à *U+DCFF*. " @@ -2197,7 +2372,7 @@ msgstr "" "l'écriture de la donnée. C'est utile pour traiter des fichiers d'un encodage " "inconnu." -#: library/functions.rst:1160 +#: library/functions.rst:1218 msgid "" "``'xmlcharrefreplace'`` is only supported when writing to a file. Characters " "not supported by the encoding are replaced with the appropriate XML " @@ -2207,7 +2382,7 @@ msgstr "" "fichier. Les caractères non gérés par l'encodage sont remplacés par une " "entité XML de la forme ``&#nnn;``." -#: library/functions.rst:1164 +#: library/functions.rst:1222 msgid "" "``'backslashreplace'`` replaces malformed data by Python's backslashed " "escape sequences." @@ -2215,7 +2390,7 @@ msgstr "" "``'backslashreplace'`` remplace les données mal formées par des séquences " "d'échappement Python (utilisant des barres obliques inverses)." -#: library/functions.rst:1167 +#: library/functions.rst:1225 msgid "" "``'namereplace'`` (also only supported when writing) replaces unsupported " "characters with ``\\N{...}`` escape sequences." @@ -2223,7 +2398,7 @@ msgstr "" "``'namereplace'`` (aussi supporté lors de l'écriture) remplace les " "caractères non gérés par des séquences d'échappement ``\\N{...}``." -#: library/functions.rst:1175 +#: library/functions.rst:1233 msgid "" "*newline* controls how :term:`universal newlines` mode works (it only " "applies to text mode). It can be ``None``, ``''``, ``'\\n'``, ``'\\r'``, " @@ -2234,7 +2409,7 @@ msgstr "" "``None``, ``''``, ``'\\n'``, ``'\\r'``, et ``'\\r\\n'``. Il fonctionne comme " "suit :" -#: library/functions.rst:1179 +#: library/functions.rst:1237 msgid "" "When reading input from the stream, if *newline* is ``None``, universal " "newlines mode is enabled. Lines in the input can end in ``'\\n'``, " @@ -2252,7 +2427,7 @@ msgstr "" "valeur autorisée, les lignes sont seulement terminées par la chaîne donnée, " "qui est rendue telle quelle." -#: library/functions.rst:1187 +#: library/functions.rst:1245 msgid "" "When writing output to the stream, if *newline* is ``None``, any ``'\\n'`` " "characters written are translated to the system default line separator, :" @@ -2266,19 +2441,20 @@ msgstr "" "*newline* est un autre caractère valide, chaque ``'\\n'`` sera remplacé par " "la chaîne donnée." -#: library/functions.rst:1193 +#: library/functions.rst:1251 +#, fuzzy msgid "" "If *closefd* is ``False`` and a file descriptor rather than a filename was " "given, the underlying file descriptor will be kept open when the file is " -"closed. If a filename is given *closefd* must be ``True`` (the default) " -"otherwise an error will be raised." +"closed. If a filename is given *closefd* must be ``True`` (the default); " +"otherwise, an error will be raised." msgstr "" "Si *closefd* est ``False`` et qu'un descripteur de fichier est fourni plutôt " "qu'un nom de fichier, le descripteur de fichier sera laissé ouvert lorsque " "le fichier sera fermé. Si un nom de fichier est donné, *closefd* doit rester " "``True`` (la valeur par défaut) sans quoi une erreur est levée." -#: library/functions.rst:1198 +#: library/functions.rst:1256 msgid "" "A custom opener can be used by passing a callable as *opener*. The " "underlying file descriptor for the file object is then obtained by calling " @@ -2292,13 +2468,13 @@ msgstr "" "descripteur de fichier ouvert (fournir :mod:`os.open` en tant qu'*opener* " "aura le même effet que donner ``None``)." -#: library/functions.rst:1204 +#: library/functions.rst:1262 msgid "The newly created file is :ref:`non-inheritable `." msgstr "" "Il n'est :ref:`pas possible d'hériter du fichier ` " "nouvellement créé." -#: library/functions.rst:1206 +#: library/functions.rst:1264 msgid "" "The following example uses the :ref:`dir_fd ` parameter of the :func:" "`os.open` function to open a file relative to a given directory::" @@ -2306,7 +2482,7 @@ msgstr "" "L'exemple suivant utilise le paramètre :ref:`dir_fd ` de la " "fonction :func:`os.open` pour ouvrir un fichier relatif au dossier courant ::" -#: library/functions.rst:1219 +#: library/functions.rst:1277 msgid "" "The type of :term:`file object` returned by the :func:`open` function " "depends on the mode. When :func:`open` is used to open a file in a text " @@ -2332,9 +2508,10 @@ msgstr "" "BufferedRandom`. Lorsque le tampon est désactivé, le flux brut, une classe " "fille de :class:`io.RawIOBase`, :class:`io.FileIO` est renvoyée." -#: library/functions.rst:1240 +#: library/functions.rst:1298 +#, fuzzy msgid "" -"See also the file handling modules, such as, :mod:`fileinput`, :mod:`io` " +"See also the file handling modules, such as :mod:`fileinput`, :mod:`io` " "(where :func:`open` is declared), :mod:`os`, :mod:`os.path`, :mod:" "`tempfile`, and :mod:`shutil`." msgstr "" @@ -2342,7 +2519,7 @@ msgstr "" "`fileinput`, :mod:`io` (où :func:`open` est déclarée), :mod:`os`, :mod:`os." "path`, :mod:`tmpfile`, et :mod:`shutil`." -#: library/functions.rst:1244 +#: library/functions.rst:1302 msgid "" "Raises an :ref:`auditing event ` ``open`` with arguments ``file``, " "``mode``, ``flags``." @@ -2350,7 +2527,7 @@ msgstr "" "Lève un :ref:`auditing event ` ``open`` avec les arguments " "``file``, ``mode``, ``flags``." -#: library/functions.rst:1246 +#: library/functions.rst:1304 msgid "" "The ``mode`` and ``flags`` arguments may have been modified or inferred from " "the original call." @@ -2358,21 +2535,21 @@ msgstr "" "Les arguments ``mode`` et ``flags`` peuvent avoir été modifiés ou déduits de " "l'appel original." -#: library/functions.rst:1252 +#: library/functions.rst:1310 msgid "The *opener* parameter was added." msgstr "ajout du paramètre *opener*." -#: library/functions.rst:1253 +#: library/functions.rst:1311 msgid "The ``'x'`` mode was added." msgstr "ajout du mode ``'x'``." -#: library/functions.rst:1254 +#: library/functions.rst:1312 msgid ":exc:`IOError` used to be raised, it is now an alias of :exc:`OSError`." msgstr "" ":exc:`IOError` était normalement levée, elle est maintenant un alias de :exc:" "`OSError`." -#: library/functions.rst:1255 +#: library/functions.rst:1313 msgid "" ":exc:`FileExistsError` is now raised if the file opened in exclusive " "creation mode (``'x'``) already exists." @@ -2380,15 +2557,15 @@ msgstr "" ":exc:`FileExistsError` est maintenant levée si le fichier ouvert en mode " "création exclusive (``'x'``) existe déjà." -#: library/functions.rst:1261 +#: library/functions.rst:1319 msgid "The file is now non-inheritable." msgstr "Il n'est plus possible d'hériter de *file*." -#: library/functions.rst:1265 +#: library/functions.rst:1323 msgid "The ``'U'`` mode." msgstr "Le mode ``'U'``." -#: library/functions.rst:1270 +#: library/functions.rst:1328 msgid "" "If the system call is interrupted and the signal handler does not raise an " "exception, the function now retries the system call instead of raising an :" @@ -2398,15 +2575,15 @@ msgstr "" "aucune exception, la fonction réessaye l'appel système au lieu de lever une :" "exc:`InterruptedError` (voir la :pep:`475` pour la justification)." -#: library/functions.rst:1273 +#: library/functions.rst:1331 msgid "The ``'namereplace'`` error handler was added." msgstr "ajout du gestionnaire d'erreurs ``'namereplace'``." -#: library/functions.rst:1278 +#: library/functions.rst:1336 msgid "Support added to accept objects implementing :class:`os.PathLike`." msgstr "prise en charge des objets implémentant :class:`os.PathLike`." -#: library/functions.rst:1279 +#: library/functions.rst:1337 msgid "" "On Windows, opening a console buffer may return a subclass of :class:`io." "RawIOBase` other than :class:`io.FileIO`." @@ -2414,7 +2591,7 @@ msgstr "" "Sous Windows, ouvrir un *buffer* du terminal peut renvoyer une sous-classe " "de :class:`io.RawIOBase` autre que :class:`io.FileIO`." -#: library/functions.rst:1284 +#: library/functions.rst:1342 msgid "" "Given a string representing one Unicode character, return an integer " "representing the Unicode code point of that character. For example, " @@ -2426,7 +2603,7 @@ msgstr "" "entier ``97`` et ``ord('€')`` (symbole euro) renvoie ``8364``. Il s'agit de " "l'inverse de :func:`chr`." -#: library/functions.rst:1292 +#: library/functions.rst:1350 msgid "" "Return *base* to the power *exp*; if *mod* is present, return *base* to the " "power *exp*, modulo *mod* (computed more efficiently than ``pow(base, exp) % " @@ -2438,7 +2615,7 @@ msgstr "" "``pow(base, exp) % mod``). La forme à deux arguments ``pow(base, exp)`` est " "équivalente à l'opérateur puissance : ``base**exp``." -#: library/functions.rst:1297 +#: library/functions.rst:1355 msgid "" "The arguments must have numeric types. With mixed operand types, the " "coercion rules for binary arithmetic operators apply. For :class:`int` " @@ -2455,7 +2632,7 @@ msgstr "" "convertis en ``float``, et le résultat sera un ``float`` aussi. Par exemple, " "``10**2`` donne ``100``, alors que ``10**-2`` donne ``0.01``." -#: library/functions.rst:1304 +#: library/functions.rst:1362 msgid "" "For :class:`int` operands *base* and *exp*, if *mod* is present, *mod* must " "also be of integer type and *mod* must be nonzero. If *mod* is present and " @@ -2469,11 +2646,11 @@ msgstr "" "être premiers entre eux. Dans ce cas, ``pow(inv_base, -exp, mod)`` est " "renvoyé, où *inv_base* est un inverse de *base* modulo *mod*." -#: library/functions.rst:1310 +#: library/functions.rst:1368 msgid "Here's an example of computing an inverse for ``38`` modulo ``97``::" msgstr "Voici un exemple de calcul d'un inverse de ``38`` modulo ``97`` ::" -#: library/functions.rst:1317 +#: library/functions.rst:1375 msgid "" "For :class:`int` operands, the three-argument form of ``pow`` now allows the " "second argument to be negative, permitting computation of modular inverses." @@ -2482,24 +2659,25 @@ msgstr "" "permet maintenant au deuxième argument d'être négatif, permettant le calcul " "des inverses modulaires." -#: library/functions.rst:1322 +#: library/functions.rst:1380 msgid "" "Allow keyword arguments. Formerly, only positional arguments were supported." msgstr "" "Autorise les arguments par mots-clés. Auparavant, seuls les arguments " "positionnels étaient autorisés." -#: library/functions.rst:1329 +#: library/functions.rst:1387 +#, fuzzy msgid "" "Print *objects* to the text stream *file*, separated by *sep* and followed " -"by *end*. *sep*, *end*, *file* and *flush*, if present, must be given as " +"by *end*. *sep*, *end*, *file*, and *flush*, if present, must be given as " "keyword arguments." msgstr "" "Écrit *objects* dans le flux texte *file*, séparés par *sep* et suivis de " "*end*. Les arguments *sep*, *end*, *file*, et *flush*, s'ils sont présents, " "doivent être nommés." -#: library/functions.rst:1333 +#: library/functions.rst:1391 msgid "" "All non-keyword arguments are converted to strings like :func:`str` does and " "written to the stream, separated by *sep* and followed by *end*. Both *sep* " @@ -2513,7 +2691,7 @@ msgstr "" "les valeurs par défaut. Si aucun *objects* n'est donné :func:`print` écris " "seulement *end*." -#: library/functions.rst:1339 +#: library/functions.rst:1397 msgid "" "The *file* argument must be an object with a ``write(string)`` method; if it " "is not present or ``None``, :data:`sys.stdout` will be used. Since printed " @@ -2526,23 +2704,24 @@ msgstr "" "peut pas être utilisé avec des fichiers ouverts en mode binaire. Pour ceux-" "ci utilisez plutôt ``file.write(...)``." -#: library/functions.rst:1344 +#: library/functions.rst:1402 +#, fuzzy msgid "" -"Whether output is buffered is usually determined by *file*, but if the " +"Whether the output is buffered is usually determined by *file*, but if the " "*flush* keyword argument is true, the stream is forcibly flushed." msgstr "" "Que la sortie utilise un *buffer* ou non est souvent décidé par *file*, mais " "si l'argument *flush* est vrai, le tampon du flux est vidé explicitement." -#: library/functions.rst:1347 +#: library/functions.rst:1405 msgid "Added the *flush* keyword argument." msgstr "ajout de l'argument nommé *flush*." -#: library/functions.rst:1353 +#: library/functions.rst:1411 msgid "Return a property attribute." msgstr "Renvoie un attribut propriété." -#: library/functions.rst:1355 +#: library/functions.rst:1413 msgid "" "*fget* is a function for getting an attribute value. *fset* is a function " "for setting an attribute value. *fdel* is a function for deleting an " @@ -2553,20 +2732,21 @@ msgstr "" "supprimer la valeur d'un attribut, et *doc* créé une *docstring* pour " "l'attribut." -#: library/functions.rst:1359 +#: library/functions.rst:1417 msgid "A typical use is to define a managed attribute ``x``::" msgstr "Une utilisation courante : définir un attribut managé ``x`` ::" -#: library/functions.rst:1376 +#: library/functions.rst:1434 +#, fuzzy msgid "" "If *c* is an instance of *C*, ``c.x`` will invoke the getter, ``c.x = " -"value`` will invoke the setter and ``del c.x`` the deleter." +"value`` will invoke the setter, and ``del c.x`` the deleter." msgstr "" "Si *c* est une instance de *C*, ``c.x`` appelle l'accesseur (*getter* en " "anglais), ``c.x = value`` invoque le mutateur (*setter*), et ``del x`` le " "destructeur (*deleter*)." -#: library/functions.rst:1379 +#: library/functions.rst:1437 msgid "" "If given, *doc* will be the docstring of the property attribute. Otherwise, " "the property will copy *fget*'s docstring (if it exists). This makes it " @@ -2578,7 +2758,7 @@ msgstr "" "création de propriétés en lecture seule en utilisant simplement :func:" "`property` comme un :term:`décorateur ` ::" -#: library/functions.rst:1392 +#: library/functions.rst:1450 msgid "" "The ``@property`` decorator turns the :meth:`voltage` method into a \"getter" "\" for a read-only attribute with the same name, and it sets the docstring " @@ -2588,7 +2768,7 @@ msgstr "" "*getter* d'un attribut du même nom, et donne *\"Get the current voltage\"* " "comme *docstring* de *voltage*." -#: library/functions.rst:1396 +#: library/functions.rst:1454 msgid "" "A property object has :attr:`~property.getter`, :attr:`~property.setter`, " "and :attr:`~property.deleter` methods usable as decorators that create a " @@ -2600,7 +2780,7 @@ msgstr "" "une copie de la propriété avec les accesseurs correspondants définis par la " "fonction de décoration. C'est plus clair avec un exemple ::" -#: library/functions.rst:1418 +#: library/functions.rst:1476 msgid "" "This code is exactly equivalent to the first example. Be sure to give the " "additional functions the same name as the original property (``x`` in this " @@ -2610,7 +2790,7 @@ msgstr "" "donner aux fonctions additionnelles le même nom que la propriété (``x`` dans " "ce cas)." -#: library/functions.rst:1422 +#: library/functions.rst:1480 msgid "" "The returned property object also has the attributes ``fget``, ``fset``, and " "``fdel`` corresponding to the constructor arguments." @@ -2618,11 +2798,11 @@ msgstr "" "L'objet propriété renvoyé à aussi les attributs ``fget``, ``fset`` et " "``fdel`` correspondants aux arguments du constructeur." -#: library/functions.rst:1425 +#: library/functions.rst:1483 msgid "The docstrings of property objects are now writeable." msgstr "Les *docstrings* des objets propriété peuvent maintenant être écrits." -#: library/functions.rst:1434 +#: library/functions.rst:1492 msgid "" "Rather than being a function, :class:`range` is actually an immutable " "sequence type, as documented in :ref:`typesseq-range` and :ref:`typesseq`." @@ -2631,11 +2811,12 @@ msgstr "" "type de séquence immuable, comme décrit dans :ref:`typesseq-range` et :ref:" "`typesseq`." -#: library/functions.rst:1440 +#: library/functions.rst:1498 +#, fuzzy msgid "" "Return a string containing a printable representation of an object. For " "many types, this function makes an attempt to return a string that would " -"yield an object with the same value when passed to :func:`eval`, otherwise " +"yield an object with the same value when passed to :func:`eval`; otherwise, " "the representation is a string enclosed in angle brackets that contains the " "name of the type of the object together with additional information often " "including the name and address of the object. A class can control what this " @@ -2649,7 +2830,7 @@ msgstr "" "l'adresse de l'objet. Une classe peut contrôler ce que cette fonction " "renvoie pour ses instances en définissant une méthode :meth:`__repr__`." -#: library/functions.rst:1451 +#: library/functions.rst:1509 msgid "" "Return a reverse :term:`iterator`. *seq* must be an object which has a :" "meth:`__reversed__` method or supports the sequence protocol (the :meth:" @@ -2661,7 +2842,7 @@ msgstr "" "séquence (la méthode :meth:`__len__` et la méthode :meth:`__getitem__` avec " "des arguments entiers commençant à zéro)." -#: library/functions.rst:1459 +#: library/functions.rst:1517 msgid "" "Return *number* rounded to *ndigits* precision after the decimal point. If " "*ndigits* is omitted or is ``None``, it returns the nearest integer to its " @@ -2671,7 +2852,8 @@ msgstr "" "virgule. Si *ndigits* est omis (ou est ``None``), l'entier le plus proche " "est renvoyé." -#: library/functions.rst:1463 +#: library/functions.rst:1521 +#, fuzzy msgid "" "For the built-in types supporting :func:`round`, values are rounded to the " "closest multiple of 10 to the power minus *ndigits*; if two multiples are " @@ -2679,7 +2861,7 @@ msgid "" "both ``round(0.5)`` and ``round(-0.5)`` are ``0``, and ``round(1.5)`` is " "``2``). Any integer value is valid for *ndigits* (positive, zero, or " "negative). The return value is an integer if *ndigits* is omitted or " -"``None``. Otherwise the return value has the same type as *number*." +"``None``. Otherwise, the return value has the same type as *number*." msgstr "" "Pour les types natifs supportant :func:`round`, les valeurs sont arrondies " "au multiple de 10 puissance moins *ndigits*, si deux multiples sont " @@ -2689,7 +2871,7 @@ msgstr "" "zéro, ou négatif). La valeur renvoyée est un entier si *ndigits* n'est pas " "donné, (ou est ``None``). Sinon elle est du même type que *number*." -#: library/functions.rst:1472 +#: library/functions.rst:1530 msgid "" "For a general Python object ``number``, ``round`` delegates to ``number." "__round__``." @@ -2697,7 +2879,7 @@ msgstr "" "Pour tout autre objet Python ``number``, ``round`` délègue à ``number." "__round__``." -#: library/functions.rst:1477 +#: library/functions.rst:1535 msgid "" "The behavior of :func:`round` for floats can be surprising: for example, " "``round(2.675, 2)`` gives ``2.67`` instead of the expected ``2.68``. This is " @@ -2711,7 +2893,7 @@ msgstr "" "fractions de décimaux ne peuvent pas être représentés exactement en nombre a " "virgule flottante. Voir :ref:`tut-fp-issues` pour plus d'information." -#: library/functions.rst:1488 +#: library/functions.rst:1546 msgid "" "Return a new :class:`set` object, optionally with elements taken from " "*iterable*. ``set`` is a built-in class. See :class:`set` and :ref:`types-" @@ -2721,7 +2903,7 @@ msgstr "" "d'*iterable*. ``set`` est une classe native. Voir :class:`set` et :ref:" "`types-set` pour la documentation de cette classe." -#: library/functions.rst:1492 +#: library/functions.rst:1550 msgid "" "For other containers see the built-in :class:`frozenset`, :class:`list`, :" "class:`tuple`, and :class:`dict` classes, as well as the :mod:`collections` " @@ -2730,13 +2912,14 @@ msgstr "" "D'autres conteneurs existent, comme : :class:`frozenset`, :class:`list`, :" "class:`tuple`, et :class:`dict`, ainsi que le module :mod:`collections`." -#: library/functions.rst:1499 +#: library/functions.rst:1557 +#, fuzzy msgid "" "This is the counterpart of :func:`getattr`. The arguments are an object, a " -"string and an arbitrary value. The string may name an existing attribute or " -"a new attribute. The function assigns the value to the attribute, provided " -"the object allows it. For example, ``setattr(x, 'foobar', 123)`` is " -"equivalent to ``x.foobar = 123``." +"string, and an arbitrary value. The string may name an existing attribute " +"or a new attribute. The function assigns the value to the attribute, " +"provided the object allows it. For example, ``setattr(x, 'foobar', 123)`` " +"is equivalent to ``x.foobar = 123``." msgstr "" "C'est le complément de :func:`getattr`. Les arguments sont : un objet, une " "chaîne, et une valeur de type arbitraire. La chaîne peut nommer un attribut " @@ -2744,25 +2927,25 @@ msgstr "" "si l'objet l'autorise. Par exemple, ``setattr(x, 'foobar', 123)`` équivaut à " "``x.foobar = 123``." -#: library/functions.rst:1507 +#: library/functions.rst:1565 msgid "" "Since :ref:`private name mangling ` happens at " "compilation time, one must manually mangle a private attribute's (attributes " "with two leading underscores) name in order to set it with :func:`setattr`." msgstr "" -#: library/functions.rst:1518 +#: library/functions.rst:1574 +#, fuzzy msgid "" "Return a :term:`slice` object representing the set of indices specified by " "``range(start, stop, step)``. The *start* and *step* arguments default to " "``None``. Slice objects have read-only data attributes :attr:`~slice." -"start`, :attr:`~slice.stop` and :attr:`~slice.step` which merely return the " +"start`, :attr:`~slice.stop`, and :attr:`~slice.step` which merely return the " "argument values (or their default). They have no other explicit " -"functionality; however they are used by Numerical Python and other third " -"party extensions. Slice objects are also generated when extended indexing " -"syntax is used. For example: ``a[start:stop:step]`` or ``a[start:stop, " -"i]``. See :func:`itertools.islice` for an alternate version that returns an " -"iterator." +"functionality; however, they are used by NumPy and other third-party " +"packages. Slice objects are also generated when extended indexing syntax is " +"used. For example: ``a[start:stop:step]`` or ``a[start:stop, i]``. See :" +"func:`itertools.islice` for an alternate version that returns an iterator." msgstr "" "Renvoie une :term:`tranche ` représentant un ensemble d'indices " "spécifiés par ``range(start, stop, step)``. Les arguments *start* et *step* " @@ -2776,16 +2959,16 @@ msgstr "" "Voir :func:`itertools.islice` pour une version alternative renvoyant un " "itérateur." -#: library/functions.rst:1531 +#: library/functions.rst:1587 msgid "Return a new sorted list from the items in *iterable*." msgstr "Renvoie une nouvelle liste triée depuis les éléments d'*iterable*." -#: library/functions.rst:1533 +#: library/functions.rst:1589 msgid "" "Has two optional arguments which must be specified as keyword arguments." msgstr "A deux arguments optionnels qui doivent être nommés." -#: library/functions.rst:1535 +#: library/functions.rst:1591 msgid "" "*key* specifies a function of one argument that is used to extract a " "comparison key from each element in *iterable* (for example, ``key=str." @@ -2796,7 +2979,7 @@ msgstr "" "lower``). La valeur par défaut est ``None`` (compare les éléments " "directement)." -#: library/functions.rst:1539 +#: library/functions.rst:1595 msgid "" "*reverse* is a boolean value. If set to ``True``, then the list elements " "are sorted as if each comparison were reversed." @@ -2804,7 +2987,7 @@ msgstr "" "*reverse*, une valeur booléenne. Si elle est ``True``, la liste d'éléments " "est triée comme si toutes les comparaisons étaient inversées." -#: library/functions.rst:1542 +#: library/functions.rst:1598 msgid "" "Use :func:`functools.cmp_to_key` to convert an old-style *cmp* function to a " "*key* function." @@ -2812,7 +2995,7 @@ msgstr "" "Utilisez :func:`functools.cmp_to_key` pour convertir l'ancienne notation " "*cmp* en une fonction *key*." -#: library/functions.rst:1545 +#: library/functions.rst:1601 msgid "" "The built-in :func:`sorted` function is guaranteed to be stable. A sort is " "stable if it guarantees not to change the relative order of elements that " @@ -2824,17 +3007,29 @@ msgstr "" "eux. C'est utile pour trier en plusieurs passes (par exemple par département " "puis par salaire)." -#: library/functions.rst:1550 +#: library/functions.rst:1606 +msgid "" +"The sort algorithm uses only ``<`` comparisons between items. While " +"defining an :meth:`~object.__lt__` method will suffice for sorting, :PEP:`8` " +"recommends that all six :ref:`rich comparisons ` be " +"implemented. This will help avoid bugs when using the same data with other " +"ordering tools such as :func:`max` that rely on a different underlying " +"method. Implementing all six comparisons also helps avoid confusion for " +"mixed type comparisons which can call reflected the :meth:`~object.__gt__` " +"method." +msgstr "" + +#: library/functions.rst:1615 msgid "" "For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`." msgstr "" "Pour des exemples de tris et un bref tutoriel, consultez :ref:`sortinghowto`." -#: library/functions.rst:1554 +#: library/functions.rst:1619 msgid "Transform a method into a static method." msgstr "Transforme une méthode en méthode statique." -#: library/functions.rst:1556 +#: library/functions.rst:1621 msgid "" "A static method does not receive an implicit first argument. To declare a " "static method, use this idiom::" @@ -2842,7 +3037,7 @@ msgstr "" "Une méthode statique ne reçoit pas de premier argument implicitement. Voilà " "comment déclarer une méthode statique ::" -#: library/functions.rst:1563 +#: library/functions.rst:1628 msgid "" "The ``@staticmethod`` form is a function :term:`decorator` -- see :ref:" "`function` for details." @@ -2850,17 +3045,20 @@ msgstr "" "La forme ``@staticmethod`` est un :term:`décorateur ` de " "fonction. Consultez :ref:`function` pour plus de détails." -#: library/functions.rst:1566 +#: library/functions.rst:1631 +#, fuzzy msgid "" "A static method can be called either on the class (such as ``C.f()``) or on " -"an instance (such as ``C().f()``)." +"an instance (such as ``C().f()``). Moreover, they can be called as regular " +"functions (such as ``f()``)." msgstr "" "Une méthode statique peut être appelée sur une classe (par exemple, ``C." "f()``) comme sur une instance (par exemple, ``C().f()``)." -#: library/functions.rst:1569 +#: library/functions.rst:1635 +#, fuzzy msgid "" -"Static methods in Python are similar to those found in Java or C++. Also " +"Static methods in Python are similar to those found in Java or C++. Also, " "see :func:`classmethod` for a variant that is useful for creating alternate " "class constructors." msgstr "" @@ -2868,7 +3066,7 @@ msgstr "" "ou en C++. Consultez :func:`classmethod` pour une variante utile pour créer " "des constructeurs alternatifs." -#: library/functions.rst:1573 +#: library/functions.rst:1639 msgid "" "Like all decorators, it is also possible to call ``staticmethod`` as a " "regular function and do something with its result. This is needed in some " @@ -2882,19 +3080,26 @@ msgstr "" "depuis le corps d'une classe, et souhaiteriez éviter sa transformation en " "méthode d'instance. Pour ces cas, faites comme suit ::" -#: library/functions.rst:1582 +#: library/functions.rst:1651 msgid "For more information on static methods, see :ref:`types`." msgstr "" "Pour plus d'informations sur les méthodes statiques, consultez :ref:`types`." -#: library/functions.rst:1593 +#: library/functions.rst:1653 +msgid "" +"Static methods now inherit the method attributes (``__module__``, " +"``__name__``, ``__qualname__``, ``__doc__`` and ``__annotations__``), have a " +"new ``__wrapped__`` attribute, and are now callable as regular functions." +msgstr "" + +#: library/functions.rst:1668 msgid "" "Return a :class:`str` version of *object*. See :func:`str` for details." msgstr "" "Renvoie une version d'*object* sous forme de :class:`str`. Voir :func:`str` " "pour plus de détails." -#: library/functions.rst:1595 +#: library/functions.rst:1670 msgid "" "``str`` is the built-in string :term:`class`. For general information about " "strings, see :ref:`textseq`." @@ -2902,7 +3107,7 @@ msgstr "" "``str`` est la :term:`classe ` native des chaînes de caractères. Pour " "des informations générales à propos des chaînes, consultez :ref:`textseq`." -#: library/functions.rst:1601 +#: library/functions.rst:1676 msgid "" "Sums *start* and the items of an *iterable* from left to right and returns " "the total. The *iterable*'s items are normally numbers, and the start value " @@ -2912,7 +3117,7 @@ msgstr "" "donne le total. Les éléments de l'*iterable* sont normalement des nombres, " "et la valeur de *start* ne peut pas être une chaîne de caractères." -#: library/functions.rst:1605 +#: library/functions.rst:1680 msgid "" "For some use cases, there are good alternatives to :func:`sum`. The " "preferred, fast way to concatenate a sequence of strings is by calling ``''." @@ -2926,11 +3131,11 @@ msgstr "" "meilleure précision, voir :func:`math.fsum`. Pour concaténer une série " "d'itérables, utilisez plutôt :func:`itertools.chain`." -#: library/functions.rst:1611 +#: library/functions.rst:1686 msgid "The *start* parameter can be specified as a keyword argument." msgstr "le paramètre *start* peut être passé comme un argument nommé." -#: library/functions.rst:1616 +#: library/functions.rst:1691 msgid "" "Return a proxy object that delegates method calls to a parent or sibling " "class of *type*. This is useful for accessing inherited methods that have " @@ -2940,7 +3145,7 @@ msgstr "" "de méthode à une classe parente ou sœur de *type*. C'est utile pour accéder " "aux méthodes héritées qui ont été remplacées dans une classe." -#: library/functions.rst:1620 +#: library/functions.rst:1695 msgid "" "The *object-or-type* determines the :term:`method resolution order` to be " "searched. The search starts from the class right after the *type*." @@ -2949,7 +3154,7 @@ msgstr "" "` est utilisé pour la recherche. La recherche " "commence à partir de la classe qui suit immédiatement le *type*." -#: library/functions.rst:1624 +#: library/functions.rst:1699 msgid "" "For example, if :attr:`~class.__mro__` of *object-or-type* is ``D -> B -> C -" "> A -> object`` and the value of *type* is ``B``, then :func:`super` " @@ -2959,7 +3164,7 @@ msgstr "" "-> A -> object`` et la valeur de *type* est ``B``, alors :func:`super` " "recherche ``C -> A -> object``." -#: library/functions.rst:1628 +#: library/functions.rst:1703 msgid "" "The :attr:`~class.__mro__` attribute of the *object-or-type* lists the " "method resolution search order used by both :func:`getattr` and :func:" @@ -2971,7 +3176,7 @@ msgstr "" "`super`. L'attribut est dynamique et peut changer lorsque la hiérarchie " "d'héritage est modifiée." -#: library/functions.rst:1633 +#: library/functions.rst:1708 msgid "" "If the second argument is omitted, the super object returned is unbound. If " "the second argument is an object, ``isinstance(obj, type)`` must be true. " @@ -2983,7 +3188,7 @@ msgstr "" "le second argument est un type, ``issubclass(type2, type)`` doit être vrai " "(c'est utile pour les méthodes de classe)." -#: library/functions.rst:1638 +#: library/functions.rst:1713 msgid "" "There are two typical use cases for *super*. In a class hierarchy with " "single inheritance, *super* can be used to refer to parent classes without " @@ -2996,7 +3201,7 @@ msgstr "" "maintenable. Cet usage se rapproche de l'usage de *super* dans d'autres " "langages de programmation." -#: library/functions.rst:1643 +#: library/functions.rst:1718 #, fuzzy msgid "" "The second use case is to support cooperative multiple inheritance in a " @@ -3020,12 +3225,12 @@ msgstr "" "dans la hiérarchie, et parce que l'ordre peut inclure des classes sœurs " "inconnues avant l'exécution)." -#: library/functions.rst:1653 +#: library/functions.rst:1728 msgid "For both use cases, a typical superclass call looks like this::" msgstr "" "Dans tous les cas, un appel typique à une classe parente ressemble à ::" -#: library/functions.rst:1660 +#: library/functions.rst:1735 msgid "" "In addition to method lookups, :func:`super` also works for attribute " "lookups. One possible use case for this is calling :term:`descriptors " @@ -3035,7 +3240,7 @@ msgstr "" "la recherche d'attributs. Un cas d'utilisation possible est l'appel d'un :" "term:`descripteur ` d'une classe parente ou sœur." -#: library/functions.rst:1664 +#: library/functions.rst:1739 msgid "" "Note that :func:`super` is implemented as part of the binding process for " "explicit dotted attribute lookups such as ``super().__getitem__(name)``. It " @@ -3052,7 +3257,7 @@ msgstr "" "n'est pas défini pour les recherches implicites via des instructions ou des " "opérateurs tels que ``super()[name]``." -#: library/functions.rst:1671 +#: library/functions.rst:1746 msgid "" "Also note that, aside from the zero argument form, :func:`super` is not " "limited to use inside methods. The two argument form specifies the " @@ -3069,7 +3274,7 @@ msgstr "" "propos de la classe en cours de définition, ainsi qu'accéder à l'instance " "courante pour les méthodes ordinaires." -#: library/functions.rst:1678 +#: library/functions.rst:1753 msgid "" "For practical suggestions on how to design cooperative classes using :func:" "`super`, see `guide to using super() `_." -#: library/functions.rst:1687 +#: library/functions.rst:1762 msgid "" "Rather than being a function, :class:`tuple` is actually an immutable " "sequence type, as documented in :ref:`typesseq-tuple` and :ref:`typesseq`." @@ -3087,7 +3292,7 @@ msgstr "" "Plutôt qu'être une fonction, :class:`tuple` est en fait un type de séquence " "immuable, comme documenté dans :ref:`typesseq-tuple` et :ref:`typesseq`." -#: library/functions.rst:1696 +#: library/functions.rst:1771 msgid "" "With one argument, return the type of an *object*. The return value is a " "type object and generally the same object as returned by :attr:`object." @@ -3097,7 +3302,7 @@ msgstr "" "objet type et généralement la même que la valeur de l'attribut :attr:`object." "__class__ `." -#: library/functions.rst:1700 +#: library/functions.rst:1775 msgid "" "The :func:`isinstance` built-in function is recommended for testing the type " "of an object, because it takes subclasses into account." @@ -3105,7 +3310,7 @@ msgstr "" "La fonction native :func:`isinstance` est recommandée pour tester le type " "d'un objet, car elle prend en compte l'héritage." -#: library/functions.rst:1704 +#: library/functions.rst:1779 #, fuzzy msgid "" "With three arguments, return a new type object. This is essentially a " @@ -3128,11 +3333,11 @@ msgstr "" "exemple, les deux instructions suivantes créent deux instances identiques " "de :class:`type` :" -#: library/functions.rst:1719 +#: library/functions.rst:1794 msgid "See also :ref:`bltin-type-objects`." msgstr "Voir aussi :ref:`bltin-type-objects`." -#: library/functions.rst:1721 +#: library/functions.rst:1796 msgid "" "Keyword arguments provided to the three argument form are passed to the " "appropriate metaclass machinery (usually :meth:`~object.__init_subclass__`) " @@ -3140,12 +3345,12 @@ msgid "" "would." msgstr "" -#: library/functions.rst:1726 +#: library/functions.rst:1801 #, fuzzy msgid "See also :ref:`class-customization`." msgstr "Voir aussi :ref:`typeiter`." -#: library/functions.rst:1728 +#: library/functions.rst:1803 msgid "" "Subclasses of :class:`type` which don't override ``type.__new__`` may no " "longer use the one-argument form to get the type of an object." @@ -3154,7 +3359,7 @@ msgstr "" "ne doivent plus utiliser la forme à un argument pour récupérer le type d'un " "objet." -#: library/functions.rst:1734 +#: library/functions.rst:1809 msgid "" "Return the :attr:`~object.__dict__` attribute for a module, class, instance, " "or any other object with a :attr:`~object.__dict__` attribute." @@ -3163,7 +3368,7 @@ msgstr "" "instance ou de n'importe quel objet avec un attribut :attr:`~object." "__dict__`." -#: library/functions.rst:1737 +#: library/functions.rst:1812 msgid "" "Objects such as modules and instances have an updateable :attr:`~object." "__dict__` attribute; however, other objects may have write restrictions on " @@ -3176,7 +3381,7 @@ msgstr "" "exemple, les classes utilisent un :class:`types.MappingProxyType` pour " "éviter les modifications directes du dictionnaire)." -#: library/functions.rst:1742 +#: library/functions.rst:1817 msgid "" "Without an argument, :func:`vars` acts like :func:`locals`. Note, the " "locals dictionary is only useful for reads since updates to the locals " @@ -3186,38 +3391,104 @@ msgstr "" "dictionnaire des variables locales n'est utile qu'en lecture, car ses " "écritures sont ignorées." -#: library/functions.rst:1746 +#: library/functions.rst:1821 msgid "" "A :exc:`TypeError` exception is raised if an object is specified but it " "doesn't have a :attr:`~object.__dict__` attribute (for example, if its class " "defines the :attr:`~object.__slots__` attribute)." msgstr "" -#: library/functions.rst:1752 -msgid "Make an iterator that aggregates elements from each of the iterables." -msgstr "Construit un itérateur agrégeant les éléments de tous les itérables." +#: library/functions.rst:1827 +msgid "" +"Iterate over several iterables in parallel, producing tuples with an item " +"from each one." +msgstr "" + +#: library/functions.rst:1830 +#, fuzzy +msgid "Example::" +msgstr "Exemples ::" + +#: library/functions.rst:1839 +msgid "" +"More formally: :func:`zip` returns an iterator of tuples, where the *i*-th " +"tuple contains the *i*-th element from each of the argument iterables." +msgstr "" + +#: library/functions.rst:1842 +msgid "" +"Another way to think of :func:`zip` is that it turns rows into columns, and " +"columns into rows. This is similar to `transposing a matrix `_." +msgstr "" + +#: library/functions.rst:1846 +msgid "" +":func:`zip` is lazy: The elements won't be processed until the iterable is " +"iterated on, e.g. by a :keyword:`!for` loop or by wrapping in a :class:" +"`list`." +msgstr "" + +#: library/functions.rst:1850 +msgid "" +"One thing to consider is that the iterables passed to :func:`zip` could have " +"different lengths; sometimes by design, and sometimes because of a bug in " +"the code that prepared these iterables. Python offers three different " +"approaches to dealing with this issue:" +msgstr "" + +#: library/functions.rst:1855 +msgid "" +"By default, :func:`zip` stops when the shortest iterable is exhausted. It " +"will ignore the remaining items in the longer iterables, cutting off the " +"result to the length of the shortest iterable::" +msgstr "" + +#: library/functions.rst:1862 +msgid "" +":func:`zip` is often used in cases where the iterables are assumed to be of " +"equal length. In such cases, it's recommended to use the ``strict=True`` " +"option. Its output is the same as regular :func:`zip`::" +msgstr "" + +#: library/functions.rst:1869 +msgid "" +"Unlike the default behavior, it checks that the lengths of iterables are " +"identical, raising a :exc:`ValueError` if they aren't:" +msgstr "" + +#: library/functions.rst:1877 +msgid "" +"Without the ``strict=True`` argument, any bug that results in iterables of " +"different lengths will be silenced, possibly manifesting as a hard-to-find " +"bug in another part of the program." +msgstr "" + +#: library/functions.rst:1881 +msgid "" +"Shorter iterables can be padded with a constant value to make all the " +"iterables have the same length. This is done by :func:`itertools." +"zip_longest`." +msgstr "" -#: library/functions.rst:1754 +#: library/functions.rst:1885 msgid "" -"Returns an iterator of tuples, where the *i*-th tuple contains the *i*-th " -"element from each of the argument sequences or iterables. The iterator " -"stops when the shortest input iterable is exhausted. With a single iterable " -"argument, it returns an iterator of 1-tuples. With no arguments, it returns " -"an empty iterator. Equivalent to::" +"Edge cases: With a single iterable argument, :func:`zip` returns an iterator " +"of 1-tuples. With no arguments, it returns an empty iterator." +msgstr "" + +#: library/functions.rst:1888 +msgid "Tips and tricks:" msgstr "" -"Renvoie un itérateur de *n*-uplets, où le *i*\\ :sup:`e` *n*-uplet contient " -"le *i*\\ :sup:`e` élément de chacune des séquences ou itérables fournis. " -"L'itérateur s'arrête lorsque le plus petit itérable fourni est épuisé. Avec " -"un seul argument itérable, elle renvoie un itérateur sur des *n*-uplets d'un " -"élément. Sans argument, elle renvoie un itérateur vide. Équivalent à ::" -#: library/functions.rst:1773 +#: library/functions.rst:1890 +#, fuzzy msgid "" "The left-to-right evaluation order of the iterables is guaranteed. This " "makes possible an idiom for clustering a data series into n-length groups " -"using ``zip(*[iter(s)]*n)``. This repeats the *same* iterator ``n`` times " -"so that each output tuple has the result of ``n`` calls to the iterator. " -"This has the effect of dividing the input into n-length chunks." +"using ``zip(*[iter(s)]*n, strict=True)``. This repeats the *same* iterator " +"``n`` times so that each output tuple has the result of ``n`` calls to the " +"iterator. This has the effect of dividing the input into n-length chunks." msgstr "" "Il est garanti que les itérables soient évalués de gauche à droite. Cela " "rend possible de grouper une séquence de données en groupes de taille *n* " @@ -3226,18 +3497,7 @@ msgstr "" "l'itérateur. Cela a pour effet de diviser la séquence en morceaux de taille " "*n*." -#: library/functions.rst:1779 -msgid "" -":func:`zip` should only be used with unequal length inputs when you don't " -"care about trailing, unmatched values from the longer iterables. If those " -"values are important, use :func:`itertools.zip_longest` instead." -msgstr "" -":func:`zip` ne doit être utilisée avec des itérables de longueurs " -"différentes que lorsque les dernières données des itérables les plus longs " -"peuvent être ignorées. Si ces valeurs sont importantes, utilisez plutôt :" -"func:`itertools.zip_longest`." - -#: library/functions.rst:1783 +#: library/functions.rst:1896 msgid "" ":func:`zip` in conjunction with the ``*`` operator can be used to unzip a " "list::" @@ -3245,7 +3505,12 @@ msgstr "" ":func:`zip` peut être utilisée conjointement avec l'opérateur ``*`` pour " "dézipper une liste ::" -#: library/functions.rst:1804 +#: library/functions.rst:1907 +#, fuzzy +msgid "Added the ``strict`` argument." +msgstr "ajout de l'argument nommé *flush*." + +#: library/functions.rst:1919 msgid "" "This is an advanced function that is not needed in everyday Python " "programming, unlike :func:`importlib.import_module`." @@ -3253,7 +3518,7 @@ msgstr "" "C'est une fonction avancée qui n'est pas fréquemment nécessaire, " "contrairement à :func:`importlib.import_module`." -#: library/functions.rst:1807 +#: library/functions.rst:1922 msgid "" "This function is invoked by the :keyword:`import` statement. It can be " "replaced (by importing the :mod:`builtins` module and assigning to " @@ -3273,13 +3538,14 @@ msgstr "" "à trouver l'implémentation par défaut. L'usage direct de :func:`__import__` " "est aussi déconseillé en faveur de :func:`importlib.import_module`." -#: library/functions.rst:1816 +#: library/functions.rst:1931 +#, fuzzy msgid "" "The function imports the module *name*, potentially using the given " "*globals* and *locals* to determine how to interpret the name in a package " "context. The *fromlist* gives the names of objects or submodules that should " "be imported from the module given by *name*. The standard implementation " -"does not use its *locals* argument at all, and uses its *globals* only to " +"does not use its *locals* argument at all and uses its *globals* only to " "determine the package context of the :keyword:`import` statement." msgstr "" "La fonction importe le module *name*, utilisant potentiellement *globals* et " @@ -3289,7 +3555,7 @@ msgstr "" "l'argument *locals* et n'utilise *globals* que pour déterminer le contexte " "du paquet de l'instruction :keyword:`import`." -#: library/functions.rst:1823 +#: library/functions.rst:1938 msgid "" "*level* specifies whether to use absolute or relative imports. ``0`` (the " "default) means only perform absolute imports. Positive values for *level* " @@ -3302,7 +3568,7 @@ msgstr "" "positive indique le nombre de dossiers parents relativement au dossier du " "module appelant :func:`__import__` (voir la :pep:`328`)." -#: library/functions.rst:1829 +#: library/functions.rst:1944 msgid "" "When the *name* variable is of the form ``package.module``, normally, the " "top-level package (the name up till the first dot) is returned, *not* the " @@ -3314,7 +3580,7 @@ msgstr "" "et *pas* le module nommé par *name*. Cependant, lorsqu'un argument " "*fromlist* est fourni, le module nommé par *name* est renvoyé." -#: library/functions.rst:1834 +#: library/functions.rst:1949 msgid "" "For example, the statement ``import spam`` results in bytecode resembling " "the following code::" @@ -3322,11 +3588,11 @@ msgstr "" "Par exemple, l'instruction ``import spam`` renvoie un code intermédiaire " "(*bytecode* en anglais) ressemblant au code suivant ::" -#: library/functions.rst:1839 +#: library/functions.rst:1954 msgid "The statement ``import spam.ham`` results in this call::" msgstr "L'instruction ``import spam.ham`` appelle ::" -#: library/functions.rst:1843 +#: library/functions.rst:1958 msgid "" "Note how :func:`__import__` returns the toplevel module here because this is " "the object that is bound to a name by the :keyword:`import` statement." @@ -3334,7 +3600,7 @@ msgstr "" "Notez comment :func:`__import__` renvoie ici le module de plus haut niveau " "parce que c'est l'objet lié à un nom par l'instruction :keyword:`import`." -#: library/functions.rst:1846 +#: library/functions.rst:1961 msgid "" "On the other hand, the statement ``from spam.ham import eggs, sausage as " "saus`` results in ::" @@ -3342,7 +3608,7 @@ msgstr "" "En revanche, l'instruction ``from spam.ham import eggs, sausage as saus`` " "donne ::" -#: library/functions.rst:1853 +#: library/functions.rst:1968 msgid "" "Here, the ``spam.ham`` module is returned from :func:`__import__`. From " "this object, the names to import are retrieved and assigned to their " @@ -3351,7 +3617,7 @@ msgstr "" "Ici le module ``spam.ham`` est renvoyé par :func:`__import__`. De cet objet, " "les noms à importer sont récupérés et assignés à leurs noms respectifs." -#: library/functions.rst:1857 +#: library/functions.rst:1972 msgid "" "If you simply want to import a module (potentially within a package) by " "name, use :func:`importlib.import_module`." @@ -3359,7 +3625,7 @@ msgstr "" "Si vous voulez simplement importer un module (potentiellement dans un " "paquet) par son nom, utilisez :func:`importlib.import_module`." -#: library/functions.rst:1860 +#: library/functions.rst:1975 msgid "" "Negative values for *level* are no longer supported (which also changes the " "default value to 0)." @@ -3367,7 +3633,7 @@ msgstr "" "les valeurs négatives pour *level* ne sont plus prises en charge (et sa " "valeur par défaut est 0)." -#: library/functions.rst:1864 +#: library/functions.rst:1979 msgid "" "When the command line options :option:`-E` or :option:`-I` are being used, " "the environment variable :envvar:`PYTHONCASEOK` is now ignored." @@ -3375,11 +3641,11 @@ msgstr "" "quand les options :option:`-E` ou :option:`-I` sont précisées dans la ligne " "de commande, la variable d'environnement :envvar:`PYTHONCASEOK` est ignorée." -#: library/functions.rst:1869 +#: library/functions.rst:1984 msgid "Footnotes" msgstr "Notes" -#: library/functions.rst:1870 +#: library/functions.rst:1985 msgid "" "Note that the parser only accepts the Unix-style end of line convention. If " "you are reading the code from a file, make sure to use newline conversion " @@ -3389,6 +3655,35 @@ msgstr "" "lisez le code depuis un fichier, assurez-vous d'utiliser la conversion de " "retours à la ligne pour convertir les fin de lignes Windows et Mac." +#~ msgid "" +#~ "Make an iterator that aggregates elements from each of the iterables." +#~ msgstr "" +#~ "Construit un itérateur agrégeant les éléments de tous les itérables." + +#~ msgid "" +#~ "Returns an iterator of tuples, where the *i*-th tuple contains the *i*-th " +#~ "element from each of the argument sequences or iterables. The iterator " +#~ "stops when the shortest input iterable is exhausted. With a single " +#~ "iterable argument, it returns an iterator of 1-tuples. With no " +#~ "arguments, it returns an empty iterator. Equivalent to::" +#~ msgstr "" +#~ "Renvoie un itérateur de *n*-uplets, où le *i*\\ :sup:`e` *n*-uplet " +#~ "contient le *i*\\ :sup:`e` élément de chacune des séquences ou itérables " +#~ "fournis. L'itérateur s'arrête lorsque le plus petit itérable fourni est " +#~ "épuisé. Avec un seul argument itérable, elle renvoie un itérateur sur des " +#~ "*n*-uplets d'un élément. Sans argument, elle renvoie un itérateur vide. " +#~ "Équivalent à ::" + +#~ msgid "" +#~ ":func:`zip` should only be used with unequal length inputs when you don't " +#~ "care about trailing, unmatched values from the longer iterables. If " +#~ "those values are important, use :func:`itertools.zip_longest` instead." +#~ msgstr "" +#~ ":func:`zip` ne doit être utilisée avec des itérables de longueurs " +#~ "différentes que lorsque les dernières données des itérables les plus " +#~ "longs peuvent être ignorées. Si ces valeurs sont importantes, utilisez " +#~ "plutôt :func:`itertools.zip_longest`." + #~ msgid "" #~ "The optional argument *flags* also controls whether the compiled source " #~ "is allowed to contain top-level ``await``, ``async for`` and ``async " diff --git a/library/functools.po b/library/functools.po index 2d8057a93..281210ea2 100644 --- a/library/functools.po +++ b/library/functools.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-02-06 18:15+0100\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -63,7 +63,7 @@ msgstr "" "Comme elle ne nettoie jamais les anciennes entrées, elle est plus simple et " "plus rapide que :func:`lru_cache()` avec une limite." -#: library/functools.rst:255 +#: library/functools.rst:258 msgid "For example::" msgstr "Par exemple ::" @@ -75,7 +75,7 @@ msgid "" "computed properties of instances that are otherwise effectively immutable." msgstr "" -#: library/functools.rst:127 library/functools.rst:340 +#: library/functools.rst:127 library/functools.rst:350 msgid "Example::" msgstr "Exemple ::" @@ -200,7 +200,7 @@ msgstr "" "*lru_cache* d'être appliqué directement sur une fonction de l'utilisateur, " "sans préciser *maxsize* (qui est alors défini à sa valeur par défaut, 128) ::" -#: library/functools.rst:160 +#: library/functools.rst:159 msgid "" "If *maxsize* is set to ``None``, the LRU feature is disabled and the cache " "can grow without bound." @@ -208,17 +208,20 @@ msgstr "" "Si *maxsize* est à ``None``, la fonctionnalité LRU est désactivée et le " "cache peut grossir sans limite." -#: library/functools.rst:163 +#: library/functools.rst:162 +#, fuzzy msgid "" "If *typed* is set to true, function arguments of different types will be " -"cached separately. For example, ``f(3)`` and ``f(3.0)`` will be treated as " -"distinct calls with distinct results." +"cached separately. For example, ``f(3)`` and ``f(3.0)`` will always be " +"treated as distinct calls with distinct results. If *typed* is false, the " +"implementation will usually but not always regard them as equivalent calls " +"and only cache a single result." msgstr "" "Si *typed* est vrai, les arguments de différents types seront mis en cache " "séparément. Par exemple, ``f(3)`` et ``f(3.0)`` seront considérés comme des " "appels distincts avec des résultats distincts." -#: library/functools.rst:167 +#: library/functools.rst:168 msgid "" "The wrapped function is instrumented with a :func:`cache_parameters` " "function that returns a new :class:`dict` showing the values for *maxsize* " @@ -230,13 +233,13 @@ msgstr "" "*maxsize* et de *typed*. Cela ne sert qu'au débogage, changer ces valeurs " "n'a pas d'incidence." -#: library/functools.rst:172 +#: library/functools.rst:173 +#, fuzzy msgid "" "To help measure the effectiveness of the cache and tune the *maxsize* " "parameter, the wrapped function is instrumented with a :func:`cache_info` " "function that returns a :term:`named tuple` showing *hits*, *misses*, " -"*maxsize* and *currsize*. In a multi-threaded environment, the hits and " -"misses are approximate." +"*maxsize* and *currsize*." msgstr "" "Pour aider à mesurer l'efficacité du cache et ajuster le paramètre " "*maxsize*, la fonction englobée est surveillée avec une fonction :func:" @@ -264,6 +267,12 @@ msgstr "" #: library/functools.rst:185 msgid "" +"The cache keeps references to the arguments and return values until they age " +"out of the cache or until the cache is cleared." +msgstr "" + +#: library/functools.rst:188 +msgid "" "An `LRU (least recently used) cache `_ works best when the " "most recent calls are the best predictors of upcoming calls (for example, " @@ -279,7 +288,7 @@ msgstr "" "taille limite du cache permet de s'assurer que le cache ne grossisse pas " "sans limite dans les processus à longue durée de vie comme les serveurs Web." -#: library/functools.rst:192 +#: library/functools.rst:195 msgid "" "In general, the LRU cache should only be used when you want to reuse " "previously computed values. Accordingly, it doesn't make sense to cache " @@ -292,11 +301,11 @@ msgstr "" "mutable distinct à chaque appel ou des fonctions *impures* telles que ``!" "time()`` ou ``!random()``." -#: library/functools.rst:197 +#: library/functools.rst:200 msgid "Example of an LRU cache for static web content::" msgstr "Exemple d'un cache LRU pour du contenu web statique ::" -#: library/functools.rst:216 +#: library/functools.rst:219 msgid "" "Example of efficiently computing `Fibonacci numbers `_ using a cache to implement a `dynamic " @@ -307,19 +316,19 @@ msgstr "" "technique de `programmation dynamique `_ ::" -#: library/functools.rst:236 +#: library/functools.rst:239 msgid "Added the *typed* option." msgstr "L'option *typed* a été ajoutée." -#: library/functools.rst:239 +#: library/functools.rst:242 msgid "Added the *user_function* option." msgstr "Ajout de l'option *user_function*." -#: library/functools.rst:242 +#: library/functools.rst:245 msgid "Added the function :func:`cache_parameters`" msgstr "Ajout de la fonction :func:`cache_parameters`" -#: library/functools.rst:247 +#: library/functools.rst:250 msgid "" "Given a class defining one or more rich comparison ordering methods, this " "class decorator supplies the rest. This simplifies the effort involved in " @@ -329,7 +338,7 @@ msgstr "" "riches, ce décorateur de classe fournit le reste. Ceci simplifie l'effort à " "fournir dans la spécification de toutes les opérations de comparaison riche :" -#: library/functools.rst:251 +#: library/functools.rst:254 msgid "" "The class must define one of :meth:`__lt__`, :meth:`__le__`, :meth:`__gt__`, " "or :meth:`__ge__`. In addition, the class should supply an :meth:`__eq__` " @@ -339,7 +348,7 @@ msgstr "" "`__le__`, :meth:`__gt__`, or :meth:`__ge__`. De plus, la classe doit fournir " "une méthode :meth:`__eq__`." -#: library/functools.rst:275 +#: library/functools.rst:278 msgid "" "While this decorator makes it easy to create well behaved totally ordered " "types, it *does* come at the cost of slower execution and more complex stack " @@ -354,7 +363,15 @@ msgstr "" "méthodes de comparaison riches résoudra normalement vos problèmes de " "rapidité." -#: library/functools.rst:284 +#: library/functools.rst:287 +msgid "" +"This decorator makes no attempt to override methods that have been declared " +"in the class *or its superclasses*. Meaning that if a superclass defines a " +"comparison operator, *total_ordering* will not implement it again, even if " +"the original method is abstract." +msgstr "" + +#: library/functools.rst:294 msgid "" "Returning NotImplemented from the underlying comparison function for " "unrecognised types is now supported." @@ -362,7 +379,7 @@ msgstr "" "Retourner NotImplemented dans les fonction de comparaison sous-jacentes pour " "les types non reconnus est maintenant supporté." -#: library/functools.rst:290 +#: library/functools.rst:300 msgid "" "Return a new :ref:`partial object` which when called will " "behave like *func* called with the positional arguments *args* and keyword " @@ -376,7 +393,7 @@ msgstr "" "à l'appel, ils sont ajoutés à *args*. Si plus d'arguments nommés sont " "fournis, ils étendent et surchargent *keywords*. À peu près équivalent à ::" -#: library/functools.rst:306 +#: library/functools.rst:316 msgid "" "The :func:`partial` is used for partial function application which \"freezes" "\" some portion of a function's arguments and/or keywords resulting in a new " @@ -390,7 +407,7 @@ msgstr "" "peut être utilisé pour créer un appelable qui se comporte comme la fonction :" "func:`int` ou l'argument *base* est deux par défaut :" -#: library/functools.rst:321 +#: library/functools.rst:331 msgid "" "Return a new :class:`partialmethod` descriptor which behaves like :class:" "`partial` except that it is designed to be used as a method definition " @@ -400,7 +417,7 @@ msgstr "" "comme :class:`partial` sauf qu'il est fait pour être utilisé comme une " "définition de méthode plutôt que d'être appelé directement." -#: library/functools.rst:325 +#: library/functools.rst:335 msgid "" "*func* must be a :term:`descriptor` or a callable (objects which are both, " "like normal functions, are handled as descriptors)." @@ -408,7 +425,7 @@ msgstr "" "*func* doit être un :term:`descriptor` ou un appelable (les objets qui sont " "les deux, comme les fonction normales, sont gérés comme des descripteurs)." -#: library/functools.rst:328 +#: library/functools.rst:338 msgid "" "When *func* is a descriptor (such as a normal Python function, :func:" "`classmethod`, :func:`staticmethod`, :func:`abstractmethod` or another " @@ -422,7 +439,7 @@ msgstr "" "au descripteur sous-jacent, et un :ref:`objet partiel ` " "approprié est renvoyé comme résultat." -#: library/functools.rst:334 +#: library/functools.rst:344 msgid "" "When *func* is a non-descriptor callable, an appropriate bound method is " "created dynamically. This behaves like a normal Python function when used as " @@ -436,7 +453,7 @@ msgstr "" "premier argument positionnel, avant les *args* et *keywords* fournis au " "constructeur :class:`partialmethod`." -#: library/functools.rst:365 +#: library/functools.rst:375 msgid "" "Apply *function* of two arguments cumulatively to the items of *iterable*, " "from left to right, so as to reduce the iterable to a single value. For " @@ -458,11 +475,11 @@ msgstr "" "la séquence est vide. Si *initializer* n'est pas renseigné et que *iterable* " "ne contient qu'un élément, le premier élément est renvoyé." -#: library/functools.rst:374 +#: library/functools.rst:384 msgid "Roughly equivalent to::" msgstr "À peu près équivalent à ::" -#: library/functools.rst:386 +#: library/functools.rst:396 msgid "" "See :func:`itertools.accumulate` for an iterator that yields all " "intermediate values." @@ -470,7 +487,7 @@ msgstr "" "Voir :func:`itertools.accumulate` pour un itérateur qui génère toutes les " "valeurs intermédiaires." -#: library/functools.rst:391 +#: library/functools.rst:401 msgid "" "Transform a function into a :term:`single-dispatch ` :term:" "`generic function`." @@ -478,7 +495,7 @@ msgstr "" "Transforme une fonction en une :term:`fonction générique ` :term:`single-dispatch `." -#: library/functools.rst:394 +#: library/functools.rst:404 msgid "" "To define a generic function, decorate it with the ``@singledispatch`` " "decorator. Note that the dispatch happens on the type of the first argument, " @@ -488,7 +505,7 @@ msgstr "" "``@singledispatch``. Noter que la distribution est effectuée sur le type du " "premier argument, donc la fonction doit être créée en conséquence ::" -#: library/functools.rst:405 +#: library/functools.rst:415 msgid "" "To add overloaded implementations to the function, use the :func:`register` " "attribute of the generic function. It is a decorator. For functions " @@ -500,7 +517,7 @@ msgstr "" "Pour les fonctions annotées avec des types, le décorateur infère le type du " "premier argument automatiquement ::" -#: library/functools.rst:423 +#: library/functools.rst:433 msgid "" "For code which doesn't use type annotations, the appropriate type argument " "can be passed explicitly to the decorator itself::" @@ -508,7 +525,7 @@ msgstr "" "Pour le code qui n’utilise pas les indications de type, le type souhaité " "peut être passé explicitement en argument au décorateur ::" -#: library/functools.rst:434 +#: library/functools.rst:444 msgid "" "To enable registering lambdas and pre-existing functions, the :func:" "`register` attribute can be used in a functional form::" @@ -516,7 +533,7 @@ msgstr "" "Pour permettre l'enregistrement de *lambdas* et de fonctions pré-existantes, " "l'attribut :func:`register` peut être utilisé sous forme fonctionnelle ::" -#: library/functools.rst:442 +#: library/functools.rst:452 msgid "" "The :func:`register` attribute returns the undecorated function which " "enables decorator stacking, pickling, as well as creating unit tests for " @@ -526,7 +543,7 @@ msgstr "" "d'empiler les décorateurs, la sérialisation, et la création de tests " "unitaires pour chaque variante indépendamment ::" -#: library/functools.rst:456 +#: library/functools.rst:466 msgid "" "When called, the generic function dispatches on the type of the first " "argument::" @@ -534,7 +551,7 @@ msgstr "" "Quand elle est appelée, la fonction générique distribue sur le type du " "premier argument ::" -#: library/functools.rst:476 +#: library/functools.rst:486 msgid "" "Where there is no registered implementation for a specific type, its method " "resolution order is used to find a more generic implementation. The original " @@ -547,13 +564,13 @@ msgstr "" "est enregistrée pour le type d'``object``, et elle sera utilisée si aucune " "implémentation n'est trouvée." -#: library/functools.rst:482 +#: library/functools.rst:492 msgid "" "If an implementation registered to :term:`abstract base class`, virtual " "subclasses will be dispatched to that implementation::" msgstr "" -#: library/functools.rst:496 +#: library/functools.rst:506 msgid "" "To check which implementation will the generic function choose for a given " "type, use the ``dispatch()`` attribute::" @@ -561,7 +578,7 @@ msgstr "" "Pour vérifier quelle implémentation la fonction générique choisira pour un " "type donné, utiliser l'attribut ``dispatch()`` ::" -#: library/functools.rst:504 +#: library/functools.rst:514 msgid "" "To access all registered implementations, use the read-only ``registry`` " "attribute::" @@ -569,12 +586,12 @@ msgstr "" "Pour accéder à toutes les implémentations enregistrées, utiliser l'attribut " "en lecture seule ``registry`` ::" -#: library/functools.rst:518 +#: library/functools.rst:528 msgid "The :func:`register` attribute supports using type annotations." msgstr "" "L’attribut :func:`register` gère l’utilisation des indications de type." -#: library/functools.rst:524 +#: library/functools.rst:534 msgid "" "Transform a method into a :term:`single-dispatch ` :term:" "`generic function`." @@ -582,7 +599,7 @@ msgstr "" "Transforme une méthode en une :term:`fonction générique ` :" "term:`single-dispatch `." -#: library/functools.rst:527 +#: library/functools.rst:537 msgid "" "To define a generic method, decorate it with the ``@singledispatchmethod`` " "decorator. Note that the dispatch happens on the type of the first non-self " @@ -593,7 +610,7 @@ msgstr "" "type du premier argument non *self* ni *cls*, donc la fonction doit être " "conçue en conséquence ::" -#: library/functools.rst:544 +#: library/functools.rst:554 msgid "" "``@singledispatchmethod`` supports nesting with other decorators such as " "``@classmethod``. Note that to allow for ``dispatcher.register``, " @@ -601,13 +618,13 @@ msgid "" "``Negator`` class with the ``neg`` methods being class bound::" msgstr "" -#: library/functools.rst:565 +#: library/functools.rst:575 msgid "" "The same pattern can be used for other similar decorators: ``staticmethod``, " "``abstractmethod``, and others." msgstr "" -#: library/functools.rst:573 +#: library/functools.rst:583 msgid "" "Update a *wrapper* function to look like the *wrapped* function. The " "optional arguments are tuples to specify which attributes of the original " @@ -632,7 +649,7 @@ msgstr "" "met à jour le ``__dict__`` de la fonction englobante, c'est-à-dire le " "dictionnaire de l'instance)." -#: library/functools.rst:583 +#: library/functools.rst:593 msgid "" "To allow access to the original function for introspection and other " "purposes (e.g. bypassing a caching decorator such as :func:`lru_cache`), " @@ -644,7 +661,7 @@ msgstr "" "func:`lru_cache`), cette fonction ajoute automatiquement un attribut " "``__wrapped__`` qui référence la fonction englobée." -#: library/functools.rst:588 +#: library/functools.rst:598 msgid "" "The main intended use for this function is in :term:`decorator` functions " "which wrap the decorated function and return the wrapper. If the wrapper " @@ -658,7 +675,7 @@ msgstr "" "décorateur, au lieu de la définition originale, métadonnées souvent bien " "moins utiles." -#: library/functools.rst:594 +#: library/functools.rst:604 msgid "" ":func:`update_wrapper` may be used with callables other than functions. Any " "attributes named in *assigned* or *updated* that are missing from the object " @@ -672,20 +689,20 @@ msgstr "" "dans la fonction englobante). :exc:`AttributeError` est toujours levée si le " "fonction englobante elle même a des attributs non existants dans *updated*." -#: library/functools.rst:600 +#: library/functools.rst:610 msgid "Automatic addition of the ``__wrapped__`` attribute." msgstr "Ajout automatique de l'attribut ``__wrapped__``." -#: library/functools.rst:603 +#: library/functools.rst:613 msgid "Copying of the ``__annotations__`` attribute by default." msgstr "Copie de l'attribut ``__annotations__`` par défaut." -#: library/functools.rst:606 +#: library/functools.rst:616 msgid "Missing attributes no longer trigger an :exc:`AttributeError`." msgstr "" "Les attributs manquants ne lèvent plus d'exception :exc:`AttributeError`." -#: library/functools.rst:609 +#: library/functools.rst:619 msgid "" "The ``__wrapped__`` attribute now always refers to the wrapped function, " "even if that function defined a ``__wrapped__`` attribute. (see :issue:" @@ -694,7 +711,7 @@ msgstr "" "L'attribut ``__wrapped__`` renvoie toujours la fonction englobée, même si " "cette fonction définit un attribut ``__wrapped__``. (voir :issue:`17482`)" -#: library/functools.rst:617 +#: library/functools.rst:627 msgid "" "This is a convenience function for invoking :func:`update_wrapper` as a " "function decorator when defining a wrapper function. It is equivalent to " @@ -706,7 +723,7 @@ msgstr "" "C'est équivalent à ``partial(update_wrapper, wrapped=wrapped, " "assigned=assigned, updated=updated)``. Par exemple ::" -#: library/functools.rst:643 +#: library/functools.rst:653 msgid "" "Without the use of this decorator factory, the name of the example function " "would have been ``'wrapper'``, and the docstring of the original :func:" @@ -716,11 +733,11 @@ msgstr "" "d'exemple aurait été ``'wrapper'``, et la chaîne de documentation de la " "fonction :func:`example` originale aurait été perdue." -#: library/functools.rst:651 +#: library/functools.rst:661 msgid ":class:`partial` Objects" msgstr "Objets :class:`partial`" -#: library/functools.rst:653 +#: library/functools.rst:663 msgid "" ":class:`partial` objects are callable objects created by :func:`partial`. " "They have three read-only attributes:" @@ -728,7 +745,7 @@ msgstr "" "Les objets :class:`partial` sont des objets appelables créés par :func:" "`partial`. Ils ont trois attributs en lecture seule :" -#: library/functools.rst:659 +#: library/functools.rst:669 msgid "" "A callable object or function. Calls to the :class:`partial` object will be " "forwarded to :attr:`func` with new arguments and keywords." @@ -736,7 +753,7 @@ msgstr "" "Un objet ou une fonction appelable. Les appels à l'objet :class:`partial` " "seront transmis à :attr:`func` avec les nouveaux arguments et mots-clés." -#: library/functools.rst:665 +#: library/functools.rst:675 msgid "" "The leftmost positional arguments that will be prepended to the positional " "arguments provided to a :class:`partial` object call." @@ -744,7 +761,7 @@ msgstr "" "Les arguments positionnels qui seront ajoutés avant les arguments fournis " "lors de l'appel d'un objet :class:`partial`." -#: library/functools.rst:671 +#: library/functools.rst:681 msgid "" "The keyword arguments that will be supplied when the :class:`partial` object " "is called." @@ -752,7 +769,7 @@ msgstr "" "Les arguments nommés qui seront fournis quand l'objet :class:`partial` est " "appelé." -#: library/functools.rst:674 +#: library/functools.rst:684 msgid "" ":class:`partial` objects are like :class:`function` objects in that they are " "callable, weak referencable, and can have attributes. There are some " diff --git a/library/gc.po b/library/gc.po index 9713f052e..84a6f0356 100644 --- a/library/gc.po +++ b/library/gc.po @@ -5,14 +5,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-07 00:51+0200\n" +"Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Last-Translator: Jean Abou Samra \n" "X-Generator: Poedit 2.4.1\n" #: library/gc.rst:2 diff --git a/library/glob.po b/library/glob.po index f3d348418..d91633cbf 100644 --- a/library/glob.po +++ b/library/glob.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-09-28 12:40+0200\n" "Last-Translator: Julien VITARD \n" "Language-Team: FRENCH \n" @@ -82,7 +82,21 @@ msgstr "" "symboliques cassés sont aussi inclus dans les résultats (comme pour le " "shell)." -#: library/glob.rst:53 +#: library/glob.rst:50 +msgid "" +"If *root_dir* is not ``None``, it should be a :term:`path-like object` " +"specifying the root directory for searching. It has the same effect on :" +"func:`glob` as changing the current directory before calling it. If " +"*pathname* is relative, the result will contain paths relative to *root_dir*." +msgstr "" + +#: library/glob.rst:56 +msgid "" +"This function can support :ref:`paths relative to directory descriptors " +"` with the *dir_fd* parameter." +msgstr "" + +#: library/glob.rst:62 #, fuzzy msgid "" "If *recursive* is true, the pattern \"``**``\" will match any files and zero " @@ -95,13 +109,19 @@ msgstr "" "caractère de séparation ``os.sep``, seuls les répertoires et sous-" "répertoires sont reconnus." -#: library/glob.rst:73 +#: library/glob.rst:86 msgid "" "Raises an :ref:`auditing event ` ``glob.glob`` with arguments " "``pathname``, ``recursive``." msgstr "" -#: library/glob.rst:61 +#: library/glob.rst:87 +msgid "" +"Raises an :ref:`auditing event ` ``glob.glob/2`` with arguments " +"``pathname``, ``recursive``, ``root_dir``, ``dir_fd``." +msgstr "" + +#: library/glob.rst:71 msgid "" "Using the \"``**``\" pattern in large directory trees may consume an " "inordinate amount of time." @@ -109,11 +129,15 @@ msgstr "" "Utiliser le motif \"``**``\" dans de grandes arborescences de dossier peut " "consommer une quantité de temps démesurée." -#: library/glob.rst:64 +#: library/glob.rst:89 msgid "Support for recursive globs using \"``**``\"." msgstr "Gestion des chemins récursifs utilisant le motif \"``**``\"." -#: library/glob.rst:70 +#: library/glob.rst:92 +msgid "Added the *root_dir* and *dir_fd* parameters." +msgstr "" + +#: library/glob.rst:83 msgid "" "Return an :term:`iterator` which yields the same values as :func:`glob` " "without actually storing them all simultaneously." @@ -121,7 +145,7 @@ msgstr "" "Renvoie un :term:`iterator` qui produit les mêmes valeurs que :func:`glob`, " "sans toutes les charger en mémoire simultanément." -#: library/glob.rst:78 +#: library/glob.rst:98 msgid "" "Escape all special characters (``'?'``, ``'*'`` and ``'['``). This is useful " "if you want to match an arbitrary literal string that may have special " @@ -136,7 +160,7 @@ msgstr "" "Windows ``escape('//?/c:/Quo vadis?.txt')`` renvoie ``'//?/c:/Quo vadis[?]." "txt'``." -#: library/glob.rst:87 +#: library/glob.rst:107 msgid "" "For example, consider a directory containing the following files: :file:`1." "gif`, :file:`2.txt`, :file:`card.gif` and a subdirectory :file:`sub` which " @@ -150,7 +174,7 @@ msgstr "" "les résultats suivants. Notons que les composantes principales des chemins " "sont préservées. ::" -#: library/glob.rst:105 +#: library/glob.rst:125 msgid "" "If the directory contains files starting with ``.`` they won't be matched by " "default. For example, consider a directory containing :file:`card.gif` and :" @@ -160,11 +184,11 @@ msgstr "" "reconnus par défaut. Par exemple, considérons un répertoire contenant :file:" "`card.gif` et :file:`.card.gif` ::" -#: library/glob.rst:117 +#: library/glob.rst:137 msgid "Module :mod:`fnmatch`" msgstr "Module :mod:`fnmatch`" -#: library/glob.rst:118 +#: library/glob.rst:138 msgid "Shell-style filename (not path) expansion" msgstr "" "Recherche de noms de fichiers de style shell (ne concerne pas les chemins)" diff --git a/library/graphlib.po b/library/graphlib.po index ade7c9591..976c7d256 100644 --- a/library/graphlib.po +++ b/library/graphlib.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -175,18 +175,19 @@ msgstr "" #: library/graphlib.rst:157 msgid "" -"Returns an iterable of nodes in a topological order. Using this method does " -"not require to call :meth:`TopologicalSorter.prepare` or :meth:" -"`TopologicalSorter.done`. This method is equivalent to::" +"Returns an iterator object which will iterate over nodes in a topological " +"order. When using this method, :meth:`~TopologicalSorter.prepare` and :meth:" +"`~TopologicalSorter.done` should not be called. This method is equivalent " +"to::" msgstr "" -#: library/graphlib.rst:168 +#: library/graphlib.rst:169 msgid "" "The particular order that is returned may depend on the specific order in " "which the items were inserted in the graph. For example:" msgstr "" -#: library/graphlib.rst:185 +#: library/graphlib.rst:186 msgid "" "This is due to the fact that \"0\" and \"2\" are in the same level in the " "graph (they would have been returned in the same call to :meth:" @@ -194,26 +195,26 @@ msgid "" "the order of insertion." msgstr "" -#: library/graphlib.rst:191 +#: library/graphlib.rst:192 msgid "If any cycle is detected, :exc:`CycleError` will be raised." msgstr "" -#: library/graphlib.rst:197 +#: library/graphlib.rst:198 msgid "Exceptions" msgstr "Exceptions" -#: library/graphlib.rst:198 +#: library/graphlib.rst:199 msgid "The :mod:`graphlib` module defines the following exception classes:" msgstr "" -#: library/graphlib.rst:202 +#: library/graphlib.rst:203 msgid "" "Subclass of :exc:`ValueError` raised by :meth:`TopologicalSorter.prepare` if " "cycles exist in the working graph. If multiple cycles exist, only one " "undefined choice among them will be reported and included in the exception." msgstr "" -#: library/graphlib.rst:206 +#: library/graphlib.rst:207 msgid "" "The detected cycle can be accessed via the second element in the :attr:" "`~CycleError.args` attribute of the exception instance and consists in a " diff --git a/library/hashlib.po b/library/hashlib.po index dffb1ebd6..31b3e01ae 100644 --- a/library/hashlib.po +++ b/library/hashlib.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-04-27 22:47+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -25,11 +25,12 @@ msgid "**Source code:** :source:`Lib/hashlib.py`" msgstr "**Code source :** :source:`Lib/hashlib.py`" #: library/hashlib.rst:23 +#, fuzzy msgid "" "This module implements a common interface to many different secure hash and " "message digest algorithms. Included are the FIPS secure hash algorithms " "SHA1, SHA224, SHA256, SHA384, and SHA512 (defined in FIPS 180-2) as well as " -"RSA's MD5 algorithm (defined in Internet :rfc:`1321`). The terms \"secure " +"RSA's MD5 algorithm (defined in internet :rfc:`1321`). The terms \"secure " "hash\" and \"message digest\" are interchangeable. Older algorithms were " "called message digests. The modern term is secure hash." msgstr "" @@ -135,7 +136,7 @@ msgstr "" msgid ":func:`blake2b` and :func:`blake2s` were added." msgstr "Les fonctions :func:`blake2b` et :func:`blake2s` ont été ajoutées." -#: library/hashlib.rst:83 +#: library/hashlib.rst:85 msgid "" "All hashlib constructors take a keyword-only argument *usedforsecurity* with " "default value ``True``. A false value allows the use of insecure and blocked " @@ -144,11 +145,11 @@ msgid "" "cryptographic one-way compression function." msgstr "" -#: library/hashlib.rst:90 +#: library/hashlib.rst:92 msgid "Hashlib now uses SHA3 and SHAKE from OpenSSL 1.1.1 and newer." msgstr "" -#: library/hashlib.rst:92 +#: library/hashlib.rst:94 msgid "" "For example, to obtain the digest of the byte string ``b'Nobody inspects the " "spammish repetition'``::" @@ -156,11 +157,11 @@ msgstr "" "Par exemple, pour obtenir l'empreinte de la chaîne ``b'Nobody inspects the " "spammish repetition'`` ::" -#: library/hashlib.rst:106 +#: library/hashlib.rst:108 msgid "More condensed:" msgstr "En plus condensé ::" -#: library/hashlib.rst:113 +#: library/hashlib.rst:115 msgid "" "Is a generic constructor that takes the string *name* of the desired " "algorithm as its first parameter. It also exists to allow access to the " @@ -174,15 +175,15 @@ msgstr "" "librairie OpenSSL peut offrir. Les constructeurs nommés sont beaucoup plus " "rapides que :func:`new` et doivent être privilégiés." -#: library/hashlib.rst:119 +#: library/hashlib.rst:121 msgid "Using :func:`new` with an algorithm provided by OpenSSL:" msgstr "En utilisant :func:`new` avec un algorithme fourni par OpenSSL ::" -#: library/hashlib.rst:126 +#: library/hashlib.rst:128 msgid "Hashlib provides the following constant attributes:" msgstr "*Hashlib* fournit les constantes suivantes ::" -#: library/hashlib.rst:130 +#: library/hashlib.rst:132 msgid "" "A set containing the names of the hash algorithms guaranteed to be supported " "by this module on all platforms. Note that 'md5' is in this list despite " @@ -194,7 +195,7 @@ msgstr "" "dans cette liste malgré certains éditeurs qui offrent une implémentation " "Python de la librairie compatible FIPS l'excluant." -#: library/hashlib.rst:139 +#: library/hashlib.rst:141 msgid "" "A set containing the names of the hash algorithms that are available in the " "running Python interpreter. These names will be recognized when passed to :" @@ -208,7 +209,7 @@ msgstr "" "ensemble. Le même algorithme peut apparaître plusieurs fois dans cet " "ensemble sous un nom différent (grâce à OpenSSL)." -#: library/hashlib.rst:147 +#: library/hashlib.rst:149 msgid "" "The following values are provided as constant attributes of the hash objects " "returned by the constructors:" @@ -216,19 +217,19 @@ msgstr "" "Les valeurs suivantes sont fournis en tant qu'attributs constants des objets " "hachés retournés par les constructeurs ::" -#: library/hashlib.rst:153 +#: library/hashlib.rst:155 msgid "The size of the resulting hash in bytes." msgstr "La taille du *hash* résultant en octets." -#: library/hashlib.rst:157 +#: library/hashlib.rst:159 msgid "The internal block size of the hash algorithm in bytes." msgstr "La taille interne d'un bloc de l'algorithme de hachage en octets." -#: library/hashlib.rst:159 +#: library/hashlib.rst:161 msgid "A hash object has the following attributes:" msgstr "L'objet haché possède les attributs suivants ::" -#: library/hashlib.rst:163 +#: library/hashlib.rst:165 msgid "" "The canonical name of this hash, always lowercase and always suitable as a " "parameter to :func:`new` to create another hash of this type." @@ -237,7 +238,7 @@ msgstr "" "transmissible à la fonction :func:`new` pour créer un autre objet haché de " "ce type." -#: library/hashlib.rst:166 +#: library/hashlib.rst:168 msgid "" "The name attribute has been present in CPython since its inception, but " "until Python 3.4 was not formally specified, so may not exist on some " @@ -247,11 +248,11 @@ msgstr "" "pas spécifié formellement jusqu'à Python 3.4, il peut ne pas exister sur " "certaines plate-formes." -#: library/hashlib.rst:171 +#: library/hashlib.rst:173 msgid "A hash object has the following methods:" msgstr "L'objet haché possède les méthodes suivantes ::" -#: library/hashlib.rst:176 +#: library/hashlib.rst:178 msgid "" "Update the hash object with the :term:`bytes-like object`. Repeated calls " "are equivalent to a single call with the concatenation of all the arguments: " @@ -261,7 +262,7 @@ msgstr "" "sont équivalent à la concaténation de tous les arguments : ``m.update(a); m." "update(b)`` est équivalent à ``m.update(a+b)``." -#: library/hashlib.rst:181 +#: library/hashlib.rst:183 msgid "" "The Python GIL is released to allow other threads to run while hash updates " "on data larger than 2047 bytes is taking place when using hash algorithms " @@ -272,7 +273,7 @@ msgstr "" "larges que 2047 octets, lorsque les algorithmes fournis par OpenSSL sont " "utilisés." -#: library/hashlib.rst:189 +#: library/hashlib.rst:191 msgid "" "Return the digest of the data passed to the :meth:`update` method so far. " "This is a bytes object of size :attr:`digest_size` which may contain bytes " @@ -282,7 +283,7 @@ msgstr "" "un objet de type *bytes* de taille :attr:`digest_size` qui contient des " "octets dans l'intervalle 0 à 255." -#: library/hashlib.rst:224 +#: library/hashlib.rst:226 msgid "" "Like :meth:`digest` except the digest is returned as a string object of " "double length, containing only hexadecimal digits. This may be used to " @@ -293,7 +294,7 @@ msgstr "" "hexadécimaux. Cela peut être utilisé pour échanger sans risque des valeurs " "dans les *e-mails* ou dans les environnements non binaires." -#: library/hashlib.rst:203 +#: library/hashlib.rst:205 msgid "" "Return a copy (\"clone\") of the hash object. This can be used to " "efficiently compute the digests of data sharing a common initial substring." @@ -302,11 +303,11 @@ msgstr "" "calculer efficacement les *digests* de données partageant des sous-chaînes " "communes." -#: library/hashlib.rst:208 +#: library/hashlib.rst:210 msgid "SHAKE variable length digests" msgstr "Synthèse de messages de taille variable SHAKE" -#: library/hashlib.rst:210 +#: library/hashlib.rst:212 msgid "" "The :func:`shake_128` and :func:`shake_256` algorithms provide variable " "length digests with length_in_bits//2 up to 128 or 256 bits of security. As " @@ -319,7 +320,7 @@ msgstr "" "longueur. Les longueurs maximales ne sont pas limitées par l'algorithme " "SHAKE." -#: library/hashlib.rst:217 +#: library/hashlib.rst:219 msgid "" "Return the digest of the data passed to the :meth:`update` method so far. " "This is a bytes object of size *length* which may contain bytes in the whole " @@ -329,11 +330,11 @@ msgstr "" "un objet de type *bytes* de taille *length* qui contient des octets dans " "l'intervalle 0 à 255." -#: library/hashlib.rst:230 +#: library/hashlib.rst:232 msgid "Key derivation" msgstr "Dérivation de clé" -#: library/hashlib.rst:232 +#: library/hashlib.rst:234 msgid "" "Key derivation and key stretching algorithms are designed for secure " "password hashing. Naive algorithms such as ``sha1(password)`` are not " @@ -347,7 +348,7 @@ msgstr "" "bonne fonction de hachage doit être paramétrable, lente, et inclure un `sel " "`_." -#: library/hashlib.rst:240 +#: library/hashlib.rst:242 msgid "" "The function provides PKCS#5 password-based key derivation function 2. It " "uses HMAC as pseudorandom function." @@ -356,7 +357,7 @@ msgstr "" "Cryptographic Standards #5 v2.0*). Elle utilise HMAC comme fonction de " "pseudo-aléatoire." -#: library/hashlib.rst:243 +#: library/hashlib.rst:245 msgid "" "The string *hash_name* is the desired name of the hash digest algorithm for " "HMAC, e.g. 'sha1' or 'sha256'. *password* and *salt* are interpreted as " @@ -371,7 +372,7 @@ msgstr "" "``1024``). *salt* doit être de 16 octets ou plus provenant d'une source " "correcte, e.g. :func:`os.urandom`." -#: library/hashlib.rst:249 +#: library/hashlib.rst:251 msgid "" "The number of *iterations* should be chosen based on the hash algorithm and " "computing power. As of 2013, at least 100,000 iterations of SHA-256 are " @@ -381,7 +382,7 @@ msgstr "" "hachage et de la puissance de calcul. En 2013, au moins 100000 itérations de " "SHA-256 sont recommandées." -#: library/hashlib.rst:253 +#: library/hashlib.rst:255 msgid "" "*dklen* is the length of the derived key. If *dklen* is ``None`` then the " "digest size of the hash algorithm *hash_name* is used, e.g. 64 for SHA-512." @@ -390,7 +391,7 @@ msgstr "" "taille du message de l'algorithme de hachage *hash_name* est utilisé, e.g. " "64 pour SHA-512." -#: library/hashlib.rst:265 +#: library/hashlib.rst:267 msgid "" "A fast implementation of *pbkdf2_hmac* is available with OpenSSL. The " "Python implementation uses an inline version of :mod:`hmac`. It is about " @@ -400,7 +401,13 @@ msgstr "" "L'implémentation Python utilise une version anonyme de :mod:`hmac`. Elle est " "trois fois plus lente et ne libère pas le GIL." -#: library/hashlib.rst:271 +#: library/hashlib.rst:273 +msgid "" +"Slow Python implementation of *pbkdf2_hmac* is deprecated. In the future the " +"function will only be available when Python is compiled with OpenSSL." +msgstr "" + +#: library/hashlib.rst:279 msgid "" "The function provides scrypt password-based key derivation function as " "defined in :rfc:`7914`." @@ -408,7 +415,7 @@ msgstr "" "La fonction fournit la fonction de dérivation de clé *scrypt* comme définie " "dans :rfc:`7914`." -#: library/hashlib.rst:274 +#: library/hashlib.rst:282 msgid "" "*password* and *salt* must be :term:`bytes-like objects `. Applications and libraries should limit *password* to a sensible " @@ -420,7 +427,7 @@ msgstr "" "longueur raisonnable (e.g. 1024). *salt* doit être de 16 octets ou plus " "provenant d'une source correcte, e.g. :func:`os.urandom`." -#: library/hashlib.rst:279 +#: library/hashlib.rst:287 msgid "" "*n* is the CPU/Memory cost factor, *r* the block size, *p* parallelization " "factor and *maxmem* limits memory (OpenSSL 1.1.0 defaults to 32 MiB). " @@ -430,15 +437,11 @@ msgstr "" "facteur de parallélisation et *maxmem* limite la mémoire (OpenSSL 1.1.0 " "limite à 32 MB par défaut). *dklen* est la longueur de la clé dérivée." -#: library/hashlib.rst:284 -msgid ":ref:`Availability `: OpenSSL 1.1+." -msgstr ":ref:`Disponibilité ` : OpenSSL 1.1+." - -#: library/hashlib.rst:289 +#: library/hashlib.rst:295 msgid "BLAKE2" msgstr "BLAKE2" -#: library/hashlib.rst:296 +#: library/hashlib.rst:302 msgid "" "BLAKE2_ is a cryptographic hash function defined in :rfc:`7693` that comes " "in two flavors:" @@ -446,7 +449,7 @@ msgstr "" "BLAKE2_ est une fonction de hachage cryptographique définie dans la :rfc:" "`7693` et disponible en deux versions ::" -#: library/hashlib.rst:299 +#: library/hashlib.rst:305 msgid "" "**BLAKE2b**, optimized for 64-bit platforms and produces digests of any size " "between 1 and 64 bytes," @@ -454,7 +457,7 @@ msgstr "" "**BLAKE2b**, optimisée pour les plates-formes 64-bit et produisant des " "messages de toutes tailles entre 1 et 64 octets," -#: library/hashlib.rst:302 +#: library/hashlib.rst:308 msgid "" "**BLAKE2s**, optimized for 8- to 32-bit platforms and produces digests of " "any size between 1 and 32 bytes." @@ -462,7 +465,7 @@ msgstr "" "**BLAKE2s**, optimisée pour les plates-formes de 8 à 32-bit et produisant " "des messages de toutes tailles entre 1 et 32 octets." -#: library/hashlib.rst:305 +#: library/hashlib.rst:311 msgid "" "BLAKE2 supports **keyed mode** (a faster and simpler replacement for HMAC_), " "**salted hashing**, **personalization**, and **tree hashing**." @@ -471,7 +474,7 @@ msgstr "" "rapide et plus simple pour HMAC_), **salted hashing**, **personalization**, " "et **tree hashing**." -#: library/hashlib.rst:308 +#: library/hashlib.rst:314 msgid "" "Hash objects from this module follow the API of standard library's :mod:" "`hashlib` objects." @@ -479,15 +482,15 @@ msgstr "" "Les objets hachés de ce module suivent l'API des objets du module :mod:" "`hashlib` de la librairie standard." -#: library/hashlib.rst:313 +#: library/hashlib.rst:319 msgid "Creating hash objects" msgstr "Création d'objets hachés" -#: library/hashlib.rst:315 +#: library/hashlib.rst:321 msgid "New hash objects are created by calling constructor functions:" msgstr "Les nouveaux objets hachés sont créés en appelant les constructeurs ::" -#: library/hashlib.rst:329 +#: library/hashlib.rst:335 msgid "" "These functions return the corresponding hash objects for calculating " "BLAKE2b or BLAKE2s. They optionally take these general parameters:" @@ -495,7 +498,7 @@ msgstr "" "Ces fonctions produisent l'objet haché correspondant aux calculs de BLAKE2b " "ou BLAKE2s. Elles prennent ces paramètres optionnels ::" -#: library/hashlib.rst:332 +#: library/hashlib.rst:338 msgid "" "*data*: initial chunk of data to hash, which must be :term:`bytes-like " "object`. It can be passed only as positional argument." @@ -503,11 +506,11 @@ msgstr "" "*data*: morceau initial de données à hacher, qui doit être un objet de type :" "term:`bytes-like object`. Il peut être passé comme argument positionnel." -#: library/hashlib.rst:335 +#: library/hashlib.rst:341 msgid "*digest_size*: size of output digest in bytes." msgstr "*digest_size*: taille en sortie du message en octets." -#: library/hashlib.rst:337 +#: library/hashlib.rst:343 msgid "" "*key*: key for keyed hashing (up to 64 bytes for BLAKE2b, up to 32 bytes for " "BLAKE2s)." @@ -515,7 +518,7 @@ msgstr "" "*key*: clé pour les code d'authentification de message *keyed hashing* " "(jusqu'à 64 octets pour BLAKE2b, jusqu'à 32 octets pour BLAKE2s)." -#: library/hashlib.rst:340 +#: library/hashlib.rst:346 msgid "" "*salt*: salt for randomized hashing (up to 16 bytes for BLAKE2b, up to 8 " "bytes for BLAKE2s)." @@ -523,7 +526,7 @@ msgstr "" "*salt*: sel pour le hachage randomisé *randomized hashing* (jusqu'à 16 " "octets pour BLAKE2b, jusqu'à 8 octets pour BLAKE2s)." -#: library/hashlib.rst:343 +#: library/hashlib.rst:349 msgid "" "*person*: personalization string (up to 16 bytes for BLAKE2b, up to 8 bytes " "for BLAKE2s)." @@ -531,57 +534,57 @@ msgstr "" "*person*: chaîne de personnalisation (jusqu'à 16 octets pour BLAKE2b, " "jusqu'à 8 octets pour BLAKE2s)." -#: library/hashlib.rst:346 +#: library/hashlib.rst:352 msgid "The following table shows limits for general parameters (in bytes):" msgstr "" "Le tableau suivant présente les limites des paramètres généraux (en " "octets) ::" -#: library/hashlib.rst:349 +#: library/hashlib.rst:355 msgid "Hash" msgstr "Hash" -#: library/hashlib.rst:349 +#: library/hashlib.rst:355 msgid "digest_size" msgstr "digest_size" -#: library/hashlib.rst:349 +#: library/hashlib.rst:355 msgid "len(key)" msgstr "len(key)" -#: library/hashlib.rst:349 +#: library/hashlib.rst:355 msgid "len(salt)" msgstr "len(salt)" -#: library/hashlib.rst:349 +#: library/hashlib.rst:355 msgid "len(person)" msgstr "len(person)" -#: library/hashlib.rst:351 +#: library/hashlib.rst:357 msgid "BLAKE2b" msgstr "BLAKE2b" -#: library/hashlib.rst:351 +#: library/hashlib.rst:357 msgid "64" msgstr "64" -#: library/hashlib.rst:351 +#: library/hashlib.rst:357 msgid "16" msgstr "16" -#: library/hashlib.rst:352 +#: library/hashlib.rst:358 msgid "BLAKE2s" msgstr "BLAKE2s" -#: library/hashlib.rst:352 +#: library/hashlib.rst:358 msgid "32" msgstr "32" -#: library/hashlib.rst:352 +#: library/hashlib.rst:358 msgid "8" msgstr "8" -#: library/hashlib.rst:357 +#: library/hashlib.rst:363 msgid "" "BLAKE2 specification defines constant lengths for salt and personalization " "parameters, however, for convenience, this implementation accepts byte " @@ -598,24 +601,24 @@ msgstr "" "``b'salt'`` et ``b'salt\\x00'`` sont la même valeur (Ce n'est pas le cas " "pour *key*.)" -#: library/hashlib.rst:364 +#: library/hashlib.rst:370 msgid "These sizes are available as module `constants`_ described below." msgstr "" "Ces tailles sont disponibles comme `constants`_ du module et décrites ci-" "dessous." -#: library/hashlib.rst:366 +#: library/hashlib.rst:372 msgid "" "Constructor functions also accept the following tree hashing parameters:" msgstr "" "Les fonctions constructeur acceptent aussi les paramètres suivants pour le " "*tree hashing* ::" -#: library/hashlib.rst:368 +#: library/hashlib.rst:374 msgid "*fanout*: fanout (0 to 255, 0 if unlimited, 1 in sequential mode)." msgstr "*fanout*: *fanout* (0 à 255, 0 si illimité, 1 en mode séquentiel)." -#: library/hashlib.rst:370 +#: library/hashlib.rst:376 msgid "" "*depth*: maximal depth of tree (1 to 255, 255 if unlimited, 1 in sequential " "mode)." @@ -623,7 +626,7 @@ msgstr "" "*depth*: profondeur maximale de l'arbre (1 à 255, 255 si illimité, 1 en mode " "séquentiel)." -#: library/hashlib.rst:373 +#: library/hashlib.rst:379 msgid "" "*leaf_size*: maximal byte length of leaf (0 to 2**32-1, 0 if unlimited or in " "sequential mode)." @@ -631,7 +634,7 @@ msgstr "" "*leaf_size*: taille maximale en octets d'une feuille (0 à 2**32-1, 0 si " "illimité ou en mode séquentiel)." -#: library/hashlib.rst:376 +#: library/hashlib.rst:382 msgid "" "*node_offset*: node offset (0 to 2**64-1 for BLAKE2b, 0 to 2**48-1 for " "BLAKE2s, 0 for the first, leftmost, leaf, or in sequential mode)." @@ -639,14 +642,14 @@ msgstr "" "*node_offset*: décalage de nœud (0 à 2**64-1 pour BLAKE2b, 0 à 2**48-1 pour " "BLAKE2s, 0 pour la première feuille la plus à gauche, ou en mode séquentiel)." -#: library/hashlib.rst:379 +#: library/hashlib.rst:385 msgid "" "*node_depth*: node depth (0 to 255, 0 for leaves, or in sequential mode)." msgstr "" "*node_depth*: profondeur de nœuds (0 à 255, 0 pour les feuilles, ou en mode " "séquentiel)." -#: library/hashlib.rst:381 +#: library/hashlib.rst:387 msgid "" "*inner_size*: inner digest size (0 to 64 for BLAKE2b, 0 to 32 for BLAKE2s, 0 " "in sequential mode)." @@ -654,7 +657,7 @@ msgstr "" "*inner_size*: taille interne du message (0 à 64 pour BLAKE2b, 0 à 32 pour " "BLAKE2s, 0 en mode séquentiel)." -#: library/hashlib.rst:384 +#: library/hashlib.rst:390 msgid "" "*last_node*: boolean indicating whether the processed node is the last one " "(`False` for sequential mode)." @@ -662,7 +665,7 @@ msgstr "" "*last_node*: booléen indiquant si le nœud traité est le dernier (`False` " "pour le mode séquentiel)." -#: library/hashlib.rst:390 +#: library/hashlib.rst:396 msgid "" "See section 2.10 in `BLAKE2 specification `_ for comprehensive review of tree hashing." @@ -670,38 +673,38 @@ msgstr "" "Voir section 2.10 dans `BLAKE2 specification `_ pour une approche compréhensive du *tree hashing*." -#: library/hashlib.rst:396 +#: library/hashlib.rst:402 msgid "Constants" msgstr "Constantes" -#: library/hashlib.rst:401 +#: library/hashlib.rst:407 msgid "Salt length (maximum length accepted by constructors)." msgstr "Longueur du sel (longueur maximale acceptée par les constructeurs)." -#: library/hashlib.rst:407 +#: library/hashlib.rst:413 msgid "" "Personalization string length (maximum length accepted by constructors)." msgstr "" "Longueur de la chaîne de personnalisation (longueur maximale acceptée par " "les constructeurs)." -#: library/hashlib.rst:413 +#: library/hashlib.rst:419 msgid "Maximum key size." msgstr "Taille maximale de clé." -#: library/hashlib.rst:419 +#: library/hashlib.rst:425 msgid "Maximum digest size that the hash function can output." msgstr "Taille maximale du message que peut fournir la fonction de hachage." -#: library/hashlib.rst:423 +#: library/hashlib.rst:429 msgid "Examples" msgstr "Exemples" -#: library/hashlib.rst:426 +#: library/hashlib.rst:432 msgid "Simple hashing" msgstr "Hachage simple" -#: library/hashlib.rst:428 +#: library/hashlib.rst:434 msgid "" "To calculate hash of some data, you should first construct a hash object by " "calling the appropriate constructor function (:func:`blake2b` or :func:" @@ -716,7 +719,7 @@ msgstr "" "l'empreinte du message en appelant la méthode :meth:`digest` (ou :meth:" "`hexdigest` pour les chaînes hexadécimales)." -#: library/hashlib.rst:441 +#: library/hashlib.rst:447 msgid "" "As a shortcut, you can pass the first chunk of data to update directly to " "the constructor as the positional argument:" @@ -724,7 +727,7 @@ msgstr "" "Pour raccourcir, vous pouvez passer directement au constructeur, comme " "argument positionnel, le premier morceau du message à mettre à jour ::" -#: library/hashlib.rst:448 +#: library/hashlib.rst:454 msgid "" "You can call :meth:`hash.update` as many times as you need to iteratively " "update the hash:" @@ -732,11 +735,11 @@ msgstr "" "Vous pouvez appeler la méthode :meth:`hash.update` autant de fois que " "nécessaire pour mettre à jour le *hash* de manière itérative ::" -#: library/hashlib.rst:461 +#: library/hashlib.rst:467 msgid "Using different digest sizes" msgstr "Usage de tailles d'empreintes différentes" -#: library/hashlib.rst:463 +#: library/hashlib.rst:469 msgid "" "BLAKE2 has configurable size of digests up to 64 bytes for BLAKE2b and up to " "32 bytes for BLAKE2s. For example, to replace SHA-1 with BLAKE2b without " @@ -747,7 +750,7 @@ msgstr "" "par BLAKE2b sans changer la taille de la sortie, nous pouvons dire à BLAKE2b " "de produire une empreinte de 20 octets ::" -#: library/hashlib.rst:477 +#: library/hashlib.rst:483 msgid "" "Hash objects with different digest sizes have completely different outputs " "(shorter hashes are *not* prefixes of longer hashes); BLAKE2b and BLAKE2s " @@ -758,11 +761,11 @@ msgstr "" "de *hash* plus longs); BLAKE2b et BLAKE2s produisent des sorties différentes " "même si les longueurs des sorties sont les mêmes ::" -#: library/hashlib.rst:493 +#: library/hashlib.rst:499 msgid "Keyed hashing" msgstr "Code d'authentification de message" -#: library/hashlib.rst:495 +#: library/hashlib.rst:501 msgid "" "Keyed hashing can be used for authentication as a faster and simpler " "replacement for `Hash-based message authentication code `_)" @@ -867,7 +870,7 @@ msgstr "" "(`NIST SP-800-106 \"Randomized Hashing for Digital Signatures\" `_, article en anglais)" -#: library/hashlib.rst:579 +#: library/hashlib.rst:585 msgid "" "In BLAKE2 the salt is processed as a one-time input to the hash function " "during initialization, rather than as an input to each compression function." @@ -875,7 +878,7 @@ msgstr "" "Dans BLAKE2, le sel est passé une seule fois lors de l'initialisation de la " "fonction de hachage, plutôt qu'à chaque appel d'une fonction de compression." -#: library/hashlib.rst:584 +#: library/hashlib.rst:590 msgid "" "*Salted hashing* (or just hashing) with BLAKE2 or any other general-purpose " "cryptographic hash function, such as SHA-256, is not suitable for hashing " @@ -886,11 +889,11 @@ msgstr "" "mots de passe. Voir `BLAKE2 FAQ `_ pour plus " "d'informations." -#: library/hashlib.rst:607 +#: library/hashlib.rst:613 msgid "Personalization" msgstr "Personnalisation" -#: library/hashlib.rst:609 +#: library/hashlib.rst:615 msgid "" "Sometimes it is useful to force hash function to produce different digests " "for the same input for different purposes. Quoting the authors of the Skein " @@ -900,7 +903,7 @@ msgstr "" "différentes empreintes de message d'une même entrée pour différentes " "utilisations. Pour citer les auteurs de la fonction de hachage Skein  ::" -#: library/hashlib.rst:613 +#: library/hashlib.rst:619 msgid "" "We recommend that all application designers seriously consider doing this; " "we have seen many protocols where a hash that is computed in one part of the " @@ -917,7 +920,7 @@ msgstr "" "prendre en entrée le même *hash*. Personnaliser chaque fonction de hachage " "utilisée dans le protocole stoppe immédiatement ce genre d'attaque." -#: library/hashlib.rst:620 +#: library/hashlib.rst:626 msgid "" "(`The Skein Hash Function Family `_, p. 21)" @@ -925,12 +928,12 @@ msgstr "" "(`The Skein Hash Function Family `_, p. 21, article en anglais)" -#: library/hashlib.rst:624 +#: library/hashlib.rst:630 msgid "BLAKE2 can be personalized by passing bytes to the *person* argument::" msgstr "" "BLAKE2 peut être personnalisé en passant des *bytes* à l'argument *person* ::" -#: library/hashlib.rst:638 +#: library/hashlib.rst:644 msgid "" "Personalization together with the keyed mode can also be used to derive " "different keys from a single one." @@ -938,17 +941,17 @@ msgstr "" "La personnalisation et le *keyed mode* peuvent être utilisés ensemble pour " "dériver différentes clés à partir d'une seule." -#: library/hashlib.rst:652 +#: library/hashlib.rst:658 msgid "Tree mode" msgstr "Mode Arbre" -#: library/hashlib.rst:654 +#: library/hashlib.rst:660 msgid "Here's an example of hashing a minimal tree with two leaf nodes::" msgstr "" "L'exemple ci-dessous présente comment hacher un arbre minimal avec deux " "nœuds terminaux ::" -#: library/hashlib.rst:660 +#: library/hashlib.rst:666 msgid "" "This example uses 64-byte internal digests, and returns the 32-byte final " "digest::" @@ -956,11 +959,11 @@ msgstr "" "Cet exemple utilise en interne des empreintes de 64 octets, et produit " "finalement des empreintes 32 octets ::" -#: library/hashlib.rst:690 +#: library/hashlib.rst:696 msgid "Credits" msgstr "Crédits" -#: library/hashlib.rst:692 +#: library/hashlib.rst:698 msgid "" "BLAKE2_ was designed by *Jean-Philippe Aumasson*, *Samuel Neves*, *Zooko " "Wilcox-O'Hearn*, and *Christian Winnerlein* based on SHA-3_ finalist BLAKE_ " @@ -972,7 +975,7 @@ msgstr "" "créé par *Jean-Philippe Aumasson*, *Luca Henzen*, *Willi Meier*, et *Raphael " "C.-W. Phan*." -#: library/hashlib.rst:697 +#: library/hashlib.rst:703 msgid "" "It uses core algorithm from ChaCha_ cipher designed by *Daniel J. " "Bernstein*." @@ -980,7 +983,7 @@ msgstr "" "Il utilise le cœur de l'algorithme de chiffrement de ChaCha_ conçu par " "*Daniel J. Bernstein*." -#: library/hashlib.rst:699 +#: library/hashlib.rst:705 msgid "" "The stdlib implementation is based on pyblake2_ module. It was written by " "*Dmitry Chestnykh* based on C implementation written by *Samuel Neves*. The " @@ -991,12 +994,12 @@ msgstr "" "l'implémentation C écrite par *Samuel Neves*. La documentation a été copiée " "depuis pyblake2_ et écrite par *Dmitry Chestnykh*." -#: library/hashlib.rst:703 +#: library/hashlib.rst:709 msgid "The C code was partly rewritten for Python by *Christian Heimes*." msgstr "" "Le code C a été partiellement réécrit pour Python par *Christian Heimes*." -#: library/hashlib.rst:705 +#: library/hashlib.rst:711 msgid "" "The following public domain dedication applies for both C hash function " "implementation, extension code, and this documentation:" @@ -1004,7 +1007,7 @@ msgstr "" "Le transfert dans le domaine publique s'applique pour l'implémentation C de " "la fonction de hachage, ses extensions et cette documentation ::" -#: library/hashlib.rst:708 +#: library/hashlib.rst:714 msgid "" "To the extent possible under law, the author(s) have dedicated all copyright " "and related and neighboring rights to this software to the public domain " @@ -1015,7 +1018,7 @@ msgstr "" "domaine public dans le monde entier. Ce logiciel est distribué sans aucune " "garantie." -#: library/hashlib.rst:712 +#: library/hashlib.rst:718 msgid "" "You should have received a copy of the CC0 Public Domain Dedication along " "with this software. If not, see https://creativecommons.org/publicdomain/" @@ -1025,7 +1028,7 @@ msgstr "" "Domain Dedication*. Sinon, voir https://creativecommons.org/publicdomain/" "zero/1.0/." -#: library/hashlib.rst:716 +#: library/hashlib.rst:722 msgid "" "The following people have helped with development or contributed their " "changes to the project and the public domain according to the Creative " @@ -1035,38 +1038,38 @@ msgstr "" "modification du projet et au domaine public selon la licence Creative " "Commons Public Domain Dedication 1.0 Universal ::" -#: library/hashlib.rst:720 +#: library/hashlib.rst:726 msgid "*Alexandr Sokolovskiy*" msgstr "*Alexandr Sokolovskiy*" -#: library/hashlib.rst:734 +#: library/hashlib.rst:740 msgid "Module :mod:`hmac`" msgstr "Module :mod:`hmac`" -#: library/hashlib.rst:734 +#: library/hashlib.rst:740 msgid "A module to generate message authentication codes using hashes." msgstr "" "Un module pour générer des codes d'authentification utilisant des *hash*." -#: library/hashlib.rst:737 +#: library/hashlib.rst:743 msgid "Module :mod:`base64`" msgstr "Module :mod:`base64`" -#: library/hashlib.rst:737 +#: library/hashlib.rst:743 msgid "Another way to encode binary hashes for non-binary environments." msgstr "" "Un autre moyen d'encoder des *hash* binaires dans des environnements non " "binaires." -#: library/hashlib.rst:740 +#: library/hashlib.rst:746 msgid "https://blake2.net" msgstr "https://blake2.net" -#: library/hashlib.rst:740 +#: library/hashlib.rst:746 msgid "Official BLAKE2 website." msgstr "Site officiel de BLAKE2." -#: library/hashlib.rst:743 +#: library/hashlib.rst:749 msgid "" "https://csrc.nist.gov/csrc/media/publications/fips/180/2/archive/2002-08-01/" "documents/fips180-2.pdf" @@ -1074,11 +1077,11 @@ msgstr "" "https://csrc.nist.gov/csrc/media/publications/fips/180/2/archive/2002-08-01/" "documents/fips180-2.pdf" -#: library/hashlib.rst:743 +#: library/hashlib.rst:749 msgid "The FIPS 180-2 publication on Secure Hash Algorithms." msgstr "La publication FIPS 180-2 sur les algorithmes de hachage sécurisés." -#: library/hashlib.rst:747 +#: library/hashlib.rst:753 msgid "" "https://en.wikipedia.org/wiki/" "Cryptographic_hash_function#Cryptographic_hash_algorithms" @@ -1086,7 +1089,7 @@ msgstr "" "https://en.wikipedia.org/wiki/" "Cryptographic_hash_function#Cryptographic_hash_algorithms" -#: library/hashlib.rst:746 +#: library/hashlib.rst:752 msgid "" "Wikipedia article with information on which algorithms have known issues and " "what that means regarding their use." @@ -1094,10 +1097,15 @@ msgstr "" "Article Wikipedia contenant les informations relatives aux algorithmes ayant " "des problèmes et leur interprétation au regard de leur utilisation." -#: library/hashlib.rst:749 -msgid "https://www.ietf.org/rfc/rfc2898.txt" +#: library/hashlib.rst:755 +#, fuzzy +msgid "https://www.ietf.org/rfc/rfc8018.txt" msgstr "https://www.ietf.org/rfc/rfc2898.txt" -#: library/hashlib.rst:750 -msgid "PKCS #5: Password-Based Cryptography Specification Version 2.0" +#: library/hashlib.rst:756 +#, fuzzy +msgid "PKCS #5: Password-Based Cryptography Specification Version 2.1" msgstr "PKCS #5: Password-Based Cryptography Specification Version 2.0" + +#~ msgid ":ref:`Availability `: OpenSSL 1.1+." +#~ msgstr ":ref:`Disponibilité ` : OpenSSL 1.1+." diff --git a/library/http.client.po b/library/http.client.po index f5e4cd08a..df30327e7 100644 --- a/library/http.client.po +++ b/library/http.client.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -121,44 +121,51 @@ msgid "" "*context*." msgstr "" -#: library/http.client.rst:104 +#: library/http.client.rst:102 +msgid "" +"This class now sends an ALPN extension with protocol indicator ``http/1.1`` " +"when no *context* is given. Custom *context* should set ALPN protocols with :" +"meth:`~ssl.SSLContext.set_alpn_protocol`." +msgstr "" + +#: library/http.client.rst:109 msgid "" "*key_file* and *cert_file* are deprecated in favor of *context*. Please use :" "meth:`ssl.SSLContext.load_cert_chain` instead, or let :func:`ssl." "create_default_context` select the system's trusted CA certificates for you." msgstr "" -#: library/http.client.rst:109 +#: library/http.client.rst:114 msgid "" "The *check_hostname* parameter is also deprecated; the :attr:`ssl.SSLContext." "check_hostname` attribute of *context* should be used instead." msgstr "" -#: library/http.client.rst:116 +#: library/http.client.rst:121 msgid "" "Class whose instances are returned upon successful connection. Not " "instantiated directly by user." msgstr "" -#: library/http.client.rst:119 +#: library/http.client.rst:124 msgid "" "The *strict* parameter was removed. HTTP 0.9 style \"Simple Responses\" are " "no longer supported." msgstr "" -#: library/http.client.rst:123 +#: library/http.client.rst:128 #, fuzzy msgid "This module provides the following function:" msgstr "Ce module fournit les fonctions suivantes." -#: library/http.client.rst:127 +#: library/http.client.rst:132 msgid "" "Parse the headers from a file pointer *fp* representing a HTTP request/" "response. The file has to be a :class:`BufferedIOBase` reader (i.e. not " "text) and must provide a valid :rfc:`2822` style header." msgstr "" -#: library/http.client.rst:131 +#: library/http.client.rst:136 msgid "" "This function returns an instance of :class:`http.client.HTTPMessage` that " "holds the header fields, but no payload (the same as :attr:`HTTPResponse." @@ -166,7 +173,7 @@ msgid "" "returning, the file pointer *fp* is ready to read the HTTP body." msgstr "" -#: library/http.client.rst:138 +#: library/http.client.rst:143 msgid "" ":meth:`parse_headers` does not parse the start-line of a HTTP message; it " "only parses the ``Name: value`` lines. The file has to be ready to read " @@ -174,44 +181,44 @@ msgid "" "calling the function." msgstr "" -#: library/http.client.rst:143 +#: library/http.client.rst:148 msgid "The following exceptions are raised as appropriate:" msgstr "" -#: library/http.client.rst:148 +#: library/http.client.rst:153 msgid "" "The base class of the other exceptions in this module. It is a subclass of :" "exc:`Exception`." msgstr "" -#: library/http.client.rst:165 library/http.client.rst:175 -#: library/http.client.rst:185 +#: library/http.client.rst:170 library/http.client.rst:180 +#: library/http.client.rst:190 msgid "A subclass of :exc:`HTTPException`." msgstr "" -#: library/http.client.rst:159 +#: library/http.client.rst:164 msgid "" "A subclass of :exc:`HTTPException`, raised if a port is given and is either " "non-numeric or empty." msgstr "" -#: library/http.client.rst:195 library/http.client.rst:200 +#: library/http.client.rst:200 library/http.client.rst:205 msgid "A subclass of :exc:`ImproperConnectionState`." msgstr "" -#: library/http.client.rst:205 +#: library/http.client.rst:210 msgid "" "A subclass of :exc:`HTTPException`. Raised if a server responds with a HTTP " "status code that we don't understand." msgstr "" -#: library/http.client.rst:211 +#: library/http.client.rst:216 msgid "" "A subclass of :exc:`HTTPException`. Raised if an excessively long line is " "received in the HTTP protocol from the server." msgstr "" -#: library/http.client.rst:217 +#: library/http.client.rst:222 msgid "" "A subclass of :exc:`ConnectionResetError` and :exc:`BadStatusLine`. Raised " "by :meth:`HTTPConnection.getresponse` when the attempt to read the response " @@ -219,52 +226,52 @@ msgid "" "has closed the connection." msgstr "" -#: library/http.client.rst:222 +#: library/http.client.rst:227 msgid "Previously, :exc:`BadStatusLine`\\ ``('')`` was raised." msgstr "" -#: library/http.client.rst:226 +#: library/http.client.rst:231 msgid "The constants defined in this module are:" msgstr "Les constantes définies dans ce module sont :" -#: library/http.client.rst:230 +#: library/http.client.rst:235 msgid "The default port for the HTTP protocol (always ``80``)." msgstr "" -#: library/http.client.rst:234 +#: library/http.client.rst:239 msgid "The default port for the HTTPS protocol (always ``443``)." msgstr "" -#: library/http.client.rst:238 +#: library/http.client.rst:243 msgid "This dictionary maps the HTTP 1.1 status codes to the W3C names." msgstr "" -#: library/http.client.rst:240 +#: library/http.client.rst:245 msgid "" "Example: ``http.client.responses[http.client.NOT_FOUND]`` is ``'Not Found'``." msgstr "" -#: library/http.client.rst:242 +#: library/http.client.rst:247 msgid "" "See :ref:`http-status-codes` for a list of HTTP status codes that are " "available in this module as constants." msgstr "" -#: library/http.client.rst:249 +#: library/http.client.rst:254 msgid "HTTPConnection Objects" msgstr "" -#: library/http.client.rst:251 +#: library/http.client.rst:256 msgid ":class:`HTTPConnection` instances have the following methods:" msgstr "" -#: library/http.client.rst:257 +#: library/http.client.rst:262 msgid "" "This will send a request to the server using the HTTP request method " "*method* and the selector *url*." msgstr "" -#: library/http.client.rst:260 +#: library/http.client.rst:265 msgid "" "If *body* is specified, the specified data is sent after the headers are " "finished. It may be a :class:`str`, a :term:`bytes-like object`, an open :" @@ -279,13 +286,13 @@ msgid "" "iterable is exhausted." msgstr "" -#: library/http.client.rst:272 +#: library/http.client.rst:277 msgid "" "The *headers* argument should be a mapping of extra HTTP headers to send " "with the request." msgstr "" -#: library/http.client.rst:275 +#: library/http.client.rst:280 msgid "" "If *headers* contains neither Content-Length nor Transfer-Encoding, but " "there is a request body, one of those header fields will be added " @@ -298,7 +305,7 @@ msgid "" "Length." msgstr "" -#: library/http.client.rst:287 +#: library/http.client.rst:292 msgid "" "The *encode_chunked* argument is only relevant if Transfer-Encoding is " "specified in *headers*. If *encode_chunked* is ``False``, the " @@ -306,7 +313,7 @@ msgid "" "code. If it is ``True``, the body will be chunk-encoded." msgstr "" -#: library/http.client.rst:293 +#: library/http.client.rst:298 msgid "" "Chunked transfer encoding has been added to the HTTP protocol version 1.1. " "Unless the HTTP server is known to handle HTTP 1.1, the caller must either " @@ -314,11 +321,11 @@ msgid "" "that is not also a file as the body representation." msgstr "" -#: library/http.client.rst:299 +#: library/http.client.rst:304 msgid "*body* can now be an iterable." msgstr "" -#: library/http.client.rst:302 +#: library/http.client.rst:307 msgid "" "If neither Content-Length nor Transfer-Encoding are set in *headers*, file " "and iterable *body* objects are now chunk-encoded. The *encode_chunked* " @@ -326,26 +333,26 @@ msgid "" "file objects." msgstr "" -#: library/http.client.rst:311 +#: library/http.client.rst:316 msgid "" "Should be called after a request is sent to get the response from the " "server. Returns an :class:`HTTPResponse` instance." msgstr "" -#: library/http.client.rst:316 +#: library/http.client.rst:321 msgid "" "Note that you must have read the whole response before you can send a new " "request to the server." msgstr "" -#: library/http.client.rst:319 +#: library/http.client.rst:324 msgid "" "If a :exc:`ConnectionError` or subclass is raised, the :class:" "`HTTPConnection` object will be ready to reconnect when a new request is " "sent." msgstr "" -#: library/http.client.rst:327 +#: library/http.client.rst:332 msgid "" "Set the debugging level. The default debug level is ``0``, meaning no " "debugging output is printed. Any value greater than ``0`` will cause all " @@ -353,26 +360,26 @@ msgid "" "is passed to any new :class:`HTTPResponse` objects that are created." msgstr "" -#: library/http.client.rst:337 +#: library/http.client.rst:342 msgid "" "Set the host and the port for HTTP Connect Tunnelling. This allows running " "the connection through a proxy server." msgstr "" -#: library/http.client.rst:340 +#: library/http.client.rst:345 msgid "" "The host and port arguments specify the endpoint of the tunneled connection " "(i.e. the address included in the CONNECT request, *not* the address of the " "proxy server)." msgstr "" -#: library/http.client.rst:344 +#: library/http.client.rst:349 msgid "" "The headers argument should be a mapping of extra HTTP headers to send with " "the CONNECT request." msgstr "" -#: library/http.client.rst:347 +#: library/http.client.rst:352 msgid "" "For example, to tunnel through a HTTPS proxy server running locally on port " "8080, we would pass the address of the proxy to the :class:`HTTPSConnection` " @@ -380,28 +387,34 @@ msgid "" "the :meth:`~HTTPConnection.set_tunnel` method::" msgstr "" -#: library/http.client.rst:362 +#: library/http.client.rst:367 msgid "" "Connect to the server specified when the object was created. By default, " "this is called automatically when making a request if the client does not " "already have a connection." msgstr "" -#: library/http.client.rst:369 +#: library/http.client.rst:371 +msgid "" +"Raises an :ref:`auditing event ` ``http.client.connect`` with " +"arguments ``self``, ``host``, ``port``." +msgstr "" + +#: library/http.client.rst:376 msgid "Close the connection to the server." msgstr "" -#: library/http.client.rst:374 +#: library/http.client.rst:381 msgid "Buffer size in bytes for sending a file-like message body." msgstr "" -#: library/http.client.rst:379 +#: library/http.client.rst:386 msgid "" "As an alternative to using the :meth:`request` method described above, you " "can also send your request step by step, by using the four functions below." msgstr "" -#: library/http.client.rst:386 +#: library/http.client.rst:393 msgid "" "This should be the first call after the connection to the server has been " "made. It sends a line to the server consisting of the *method* string, the " @@ -411,7 +424,7 @@ msgid "" "with non-False values." msgstr "" -#: library/http.client.rst:396 +#: library/http.client.rst:403 msgid "" "Send an :rfc:`822`\\ -style header to the server. It sends a line to the " "server consisting of the header, a colon and a space, and the first " @@ -419,14 +432,14 @@ msgid "" "consisting of a tab and an argument." msgstr "" -#: library/http.client.rst:404 +#: library/http.client.rst:411 msgid "" "Send a blank line to the server, signalling the end of the headers. The " "optional *message_body* argument can be used to pass a message body " "associated with the request." msgstr "" -#: library/http.client.rst:408 +#: library/http.client.rst:415 msgid "" "If *encode_chunked* is ``True``, the result of each iteration of " "*message_body* will be chunk-encoded as specified in :rfc:`7230`, Section " @@ -439,7 +452,7 @@ msgid "" "the chunk-encoded data immediately after *message_body*." msgstr "" -#: library/http.client.rst:419 +#: library/http.client.rst:426 msgid "" "Due to the chunked encoding specification, empty chunks yielded by an " "iterator body will be ignored by the chunk-encoder. This is to avoid " @@ -447,44 +460,50 @@ msgid "" "malformed encoding." msgstr "" -#: library/http.client.rst:424 +#: library/http.client.rst:431 msgid "Chunked encoding support. The *encode_chunked* parameter was added." msgstr "" -#: library/http.client.rst:431 +#: library/http.client.rst:438 msgid "" "Send data to the server. This should be used directly only after the :meth:" "`endheaders` method has been called and before :meth:`getresponse` is called." msgstr "" -#: library/http.client.rst:439 +#: library/http.client.rst:442 +msgid "" +"Raises an :ref:`auditing event ` ``http.client.send`` with " +"arguments ``self``, ``data``." +msgstr "" + +#: library/http.client.rst:448 msgid "HTTPResponse Objects" msgstr "" -#: library/http.client.rst:441 +#: library/http.client.rst:450 msgid "" "An :class:`HTTPResponse` instance wraps the HTTP response from the server. " "It provides access to the request headers and the entity body. The response " "is an iterable object and can be used in a with statement." msgstr "" -#: library/http.client.rst:446 +#: library/http.client.rst:455 msgid "" "The :class:`io.BufferedIOBase` interface is now implemented and all of its " "reader operations are supported." msgstr "" -#: library/http.client.rst:453 +#: library/http.client.rst:462 msgid "Reads and returns the response body, or up to the next *amt* bytes." msgstr "" -#: library/http.client.rst:457 +#: library/http.client.rst:466 msgid "" "Reads up to the next len(b) bytes of the response body into the buffer *b*. " "Returns the number of bytes read." msgstr "" -#: library/http.client.rst:464 +#: library/http.client.rst:473 msgid "" "Return the value of the header *name*, or *default* if there is no header " "matching *name*. If there is more than one header with the name *name*, " @@ -492,87 +511,87 @@ msgid "" "than a single string, its elements are similarly returned joined by commas." msgstr "" -#: library/http.client.rst:471 +#: library/http.client.rst:480 msgid "Return a list of (header, value) tuples." msgstr "" -#: library/http.client.rst:475 +#: library/http.client.rst:484 msgid "Return the ``fileno`` of the underlying socket." msgstr "" -#: library/http.client.rst:479 +#: library/http.client.rst:488 msgid "" "A :class:`http.client.HTTPMessage` instance containing the response " "headers. :class:`http.client.HTTPMessage` is a subclass of :class:`email." "message.Message`." msgstr "" -#: library/http.client.rst:485 +#: library/http.client.rst:494 msgid "" "HTTP protocol version used by server. 10 for HTTP/1.0, 11 for HTTP/1.1." msgstr "" -#: library/http.client.rst:489 +#: library/http.client.rst:498 msgid "" "URL of the resource retrieved, commonly used to determine if a redirect was " "followed." msgstr "" -#: library/http.client.rst:493 +#: library/http.client.rst:502 msgid "" "Headers of the response in the form of an :class:`email.message." "EmailMessage` instance." msgstr "" -#: library/http.client.rst:497 +#: library/http.client.rst:506 msgid "Status code returned by server." msgstr "" -#: library/http.client.rst:501 +#: library/http.client.rst:510 msgid "Reason phrase returned by server." msgstr "" -#: library/http.client.rst:505 +#: library/http.client.rst:514 msgid "" "A debugging hook. If :attr:`debuglevel` is greater than zero, messages will " "be printed to stdout as the response is read and parsed." msgstr "" -#: library/http.client.rst:510 +#: library/http.client.rst:519 msgid "Is ``True`` if the stream is closed." msgstr "" -#: library/http.client.rst:514 +#: library/http.client.rst:523 msgid "Deprecated in favor of :attr:`~HTTPResponse.url`." msgstr "" -#: library/http.client.rst:519 +#: library/http.client.rst:528 msgid "Deprecated in favor of :attr:`~HTTPResponse.headers`." msgstr "" -#: library/http.client.rst:524 +#: library/http.client.rst:533 msgid "Deprecated in favor of :attr:`~HTTPResponse.status`." msgstr "" -#: library/http.client.rst:528 +#: library/http.client.rst:537 msgid "Examples" msgstr "Exemples" -#: library/http.client.rst:530 +#: library/http.client.rst:539 msgid "Here is an example session that uses the ``GET`` method::" msgstr "" -#: library/http.client.rst:555 +#: library/http.client.rst:564 msgid "" "Here is an example session that uses the ``HEAD`` method. Note that the " "``HEAD`` method never returns any data. ::" msgstr "" -#: library/http.client.rst:570 +#: library/http.client.rst:579 msgid "Here is an example session that shows how to ``POST`` requests::" msgstr "" -#: library/http.client.rst:586 +#: library/http.client.rst:595 msgid "" "Client side ``HTTP PUT`` requests are very similar to ``POST`` requests. The " "difference lies only the server side where HTTP server will allow resources " @@ -582,11 +601,11 @@ msgid "" "send a ``PUT`` request using http.client::" msgstr "" -#: library/http.client.rst:608 +#: library/http.client.rst:617 msgid "HTTPMessage Objects" msgstr "" -#: library/http.client.rst:610 +#: library/http.client.rst:619 msgid "" "An :class:`http.client.HTTPMessage` instance holds the headers from an HTTP " "response. It is implemented using the :class:`email.message.Message` class." diff --git a/library/http.cookiejar.po b/library/http.cookiejar.po index cd4e5be79..c1fa203cc 100644 --- a/library/http.cookiejar.po +++ b/library/http.cookiejar.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -38,7 +38,7 @@ msgid "" "`2965` are handled. RFC 2965 handling is switched off by default. :rfc:" "`2109` cookies are parsed as Netscape cookies and subsequently treated " "either as Netscape or RFC 2965 cookies according to the 'policy' in effect. " -"Note that the great majority of cookies on the Internet are Netscape " +"Note that the great majority of cookies on the internet are Netscape " "cookies. :mod:`http.cookiejar` attempts to follow the de-facto Netscape " "cookie protocol (which differs substantially from that set out in the " "original Netscape specification), including taking note of the ``max-age`` " @@ -612,20 +612,20 @@ msgstr "" #: library/http.cookiejar.rst:465 msgid "" -"A domain blacklist and whitelist is provided (both off by default). Only " -"domains not in the blacklist and present in the whitelist (if the whitelist " +"A domain blocklist and allowlist is provided (both off by default). Only " +"domains not in the blocklist and present in the allowlist (if the allowlist " "is active) participate in cookie setting and returning. Use the " "*blocked_domains* constructor argument, and :meth:`blocked_domains` and :" "meth:`set_blocked_domains` methods (and the corresponding argument and " -"methods for *allowed_domains*). If you set a whitelist, you can turn it off " -"again by setting it to :const:`None`." +"methods for *allowed_domains*). If you set an allowlist, you can turn it " +"off again by setting it to :const:`None`." msgstr "" #: library/http.cookiejar.rst:473 msgid "" "Domains in block or allow lists that do not start with a dot must equal the " "cookie domain to be matched. For example, ``\"example.com\"`` matches a " -"blacklist entry of ``\"example.com\"``, but ``\"www.example.com\"`` does " +"blocklist entry of ``\"example.com\"``, but ``\"www.example.com\"`` does " "not. Domains that do start with a dot are matched by more specific domains " "too. For example, both ``\"www.example.com\"`` and ``\"www.coyote.example.com" "\"`` match ``\".example.com\"`` (but ``\"example.com\"`` itself does not). " @@ -649,7 +649,7 @@ msgstr "" #: library/http.cookiejar.rst:497 msgid "" -"Return whether *domain* is on the blacklist for setting or receiving cookies." +"Return whether *domain* is on the blocklist for setting or receiving cookies." msgstr "" #: library/http.cookiejar.rst:502 @@ -662,7 +662,7 @@ msgstr "" #: library/http.cookiejar.rst:512 msgid "" -"Return whether *domain* is not on the whitelist for setting or receiving " +"Return whether *domain* is not on the allowlist for setting or receiving " "cookies." msgstr "" diff --git a/library/http.server.po b/library/http.server.po index 0c5929a1b..d0d9c838f 100644 --- a/library/http.server.po +++ b/library/http.server.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -23,8 +23,7 @@ msgid "**Source code:** :source:`Lib/http/server.py`" msgstr "" #: library/http.server.rst:17 -msgid "" -"This module defines classes for implementing HTTP servers (Web servers)." +msgid "This module defines classes for implementing HTTP servers." msgstr "" #: library/http.server.rst:22 @@ -232,7 +231,7 @@ msgid "" "When a HTTP/1.1 compliant server receives an ``Expect: 100-continue`` " "request header it responds back with a ``100 Continue`` followed by ``200 " "OK`` headers. This method can be overridden to raise an error if the server " -"does not want the client to continue. For e.g. server can chose to send " +"does not want the client to continue. For e.g. server can choose to send " "``417 Expectation Failed`` as a response header and ``return False``." msgstr "" diff --git a/library/idle.po b/library/idle.po index 0c26b3627..3d03d52e7 100644 --- a/library/idle.po +++ b/library/idle.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-03-08 01:41+0100\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -1179,7 +1179,7 @@ msgstr "" #: library/idle.rst:521 msgid "" -"Completion boxes intially exclude names beginning with '_' or, for modules, " +"Completion boxes initially exclude names beginning with '_' or, for modules, " "not included in '__all__'. The hidden names can be accessed by typing '_' " "after '.', either before or after the box is opened." msgstr "" @@ -1391,6 +1391,15 @@ msgstr "" #: library/idle.rst:616 msgid "" +"IDLE also highlights the :ref:`soft keywords ` :keyword:" +"`match`, :keyword:`case `, and :keyword:`_ ` in " +"pattern-matching statements. However, this highlighting is not perfect and " +"will be incorrect in some rare cases, including some ``_``-s in ``case`` " +"patterns." +msgstr "" + +#: library/idle.rst:622 +msgid "" "Text coloring is done in the background, so uncolorized text is occasionally " "visible. To change the color scheme, use the Configure IDLE dialog " "Highlighting tab. The marking of debugger breakpoint lines in the editor " @@ -1402,11 +1411,11 @@ msgstr "" "points d'arrêt du débogueur dans l'éditeur et du texte dans les dialogues " "n'est pas configurable." -#: library/idle.rst:623 +#: library/idle.rst:629 msgid "Startup and code execution" msgstr "Démarrage et exécution du code" -#: library/idle.rst:625 +#: library/idle.rst:631 msgid "" "Upon startup with the ``-s`` option, IDLE will execute the file referenced " "by the environment variables :envvar:`IDLESTARTUP` or :envvar:" @@ -1426,7 +1435,7 @@ msgstr "" "fonctions qui sont utilisées fréquemment depuis la console d'*IDLE* ou pour " "exécuter des commandes d'importation des modules communs." -#: library/idle.rst:633 +#: library/idle.rst:639 msgid "" "In addition, ``Tk`` also loads a startup file if it is present. Note that " "the Tk file is loaded unconditionally. This additional file is ``.Idle.py`` " @@ -1441,15 +1450,15 @@ msgstr "" "nommage de *Tk*, donc ce fichier n'est pas utile pour importer des fonctions " "à utiliser depuis la console Python d'*IDLE*." -#: library/idle.rst:640 +#: library/idle.rst:646 msgid "Command line usage" msgstr "Utilisation de la ligne de commande" -#: library/idle.rst:656 +#: library/idle.rst:662 msgid "If there are arguments:" msgstr "S'il y a des arguments :" -#: library/idle.rst:658 +#: library/idle.rst:664 msgid "" "If ``-``, ``-c``, or ``r`` is used, all arguments are placed in ``sys." "argv[1:...]`` and ``sys.argv[0]`` is set to ``''``, ``'-c'``, or ``'-r'``. " @@ -1461,7 +1470,7 @@ msgstr "" "ou ``'-r'``. Aucune fenêtre d'édition n'est ouverte, même si c'est le " "comportement par défaut fixé dans la fenêtre d'options." -#: library/idle.rst:663 +#: library/idle.rst:669 msgid "" "Otherwise, arguments are files opened for editing and ``sys.argv`` reflects " "the arguments passed to IDLE itself." @@ -1469,11 +1478,11 @@ msgstr "" "Sinon, les arguments sont des fichiers ouverts pour édition et ``sys.argv`` " "reflète les arguments passés à *IDLE* lui-même." -#: library/idle.rst:667 +#: library/idle.rst:673 msgid "Startup failure" msgstr "Échec au démarrage" -#: library/idle.rst:669 +#: library/idle.rst:675 #, fuzzy msgid "" "IDLE uses a socket to communicate between the IDLE GUI process and the user " @@ -1492,7 +1501,7 @@ msgstr "" "message *\"connexion impossible\"* qui redirige l'utilisateur ici. Ensuite, " "il s'arrête." -#: library/idle.rst:676 +#: library/idle.rst:682 msgid "" "One specific connection failure on Unix systems results from misconfigured " "masquerading rules somewhere in a system's network setup. When IDLE is " @@ -1502,7 +1511,7 @@ msgid "" "``tcplisten `` in another." msgstr "" -#: library/idle.rst:684 +#: library/idle.rst:690 msgid "" "A common cause of failure is a user-written file with the same name as a " "standard library module, such as *random.py* and *tkinter.py*. When such a " @@ -1517,7 +1526,7 @@ msgstr "" "standard. La solution actuelle consiste à renommer le fichier de " "l'utilisateur." -#: library/idle.rst:690 +#: library/idle.rst:696 msgid "" "Though less common than in the past, an antivirus or firewall program may " "stop the connection. If the program cannot be taught to allow the " @@ -1533,7 +1542,7 @@ msgstr "" "visible depuis un port extérieur. Un problème similaire est une mauvaise " "configuration du réseau qui bloque les connexions." -#: library/idle.rst:697 +#: library/idle.rst:703 msgid "" "Python installation issues occasionally stop IDLE: multiple versions can " "clash, or a single installation might need admin access. If one undo the " @@ -1546,7 +1555,7 @@ msgstr "" "ne veut pas accorder de privilège, il peut être plus facile de désinstaller " "complètement Python et de recommencer." -#: library/idle.rst:702 +#: library/idle.rst:708 #, fuzzy msgid "" "A zombie pythonw.exe process could be a problem. On Windows, use Task " @@ -1565,7 +1574,7 @@ msgstr "" # ... this can be prevented by never editing the files by hand, using the # configuration dialog, under Options, instead Options. # Qu'est-ce que ça veut dire ??? -#: library/idle.rst:708 +#: library/idle.rst:714 #, fuzzy msgid "" "When IDLE first starts, it attempts to read user configuration files in ``~/." @@ -1587,7 +1596,7 @@ msgstr "" # Je suppose que c'est (``python -m idlelib)``, et pas (``python -m # idlelib``)... -#: library/idle.rst:716 +#: library/idle.rst:722 #, fuzzy msgid "" "If IDLE quits with no message, and it was not started from a console, try " @@ -1598,7 +1607,7 @@ msgstr "" "console, essayez de le démarrer depuis une console (``python -m idlelib``) " "et regardez si un message apparaît." -#: library/idle.rst:720 +#: library/idle.rst:726 msgid "" "On Unix-based systems with tcl/tk older than ``8.6.11`` (see ``About IDLE``) " "certain characters of certain fonts can cause a tk failure with a message to " @@ -1607,11 +1616,11 @@ msgid "" "upgrade tcl/tk, then re-configure IDLE to use a font that works better." msgstr "" -#: library/idle.rst:728 +#: library/idle.rst:734 msgid "Running user code" msgstr "Exécuter le code de l'utilisateur" -#: library/idle.rst:730 +#: library/idle.rst:736 #, fuzzy msgid "" "With rare exceptions, the result of executing Python code with IDLE is " @@ -1629,7 +1638,7 @@ msgstr "" "modules`` démarre avec plus d'entrées et ``threading.activeCount()`` renvoie " "2 plutôt que 1." -#: library/idle.rst:737 +#: library/idle.rst:743 msgid "" "By default, IDLE runs user code in a separate OS process rather than in the " "user interface process that runs the shell and editor. In the execution " @@ -1646,7 +1655,7 @@ msgstr "" "valeurs originales stockées dans ``sys.__stdin__``, ``sys.__stdout__`` et " "``sys.__stderr__`` ne sont pas touchées, mais peuvent être ``None``." -#: library/idle.rst:744 +#: library/idle.rst:750 msgid "" "Sending print output from one process to a text widget in another is slower " "than printing to a system terminal in the same process. This has the most " @@ -1658,7 +1667,7 @@ msgid "" "fields and lines." msgstr "" -#: library/idle.rst:753 +#: library/idle.rst:759 msgid "" "IDLE's standard stream replacements are not inherited by subprocesses " "created in the execution process, whether directly by user code or by " @@ -1675,7 +1684,7 @@ msgstr "" "de commande. Le sous-processus secondaire sera ensuite attaché à cette " "fenêtre pour les entrées et les sorties." -#: library/idle.rst:760 +#: library/idle.rst:766 msgid "" "If ``sys`` is reset by user code, such as with ``importlib.reload(sys)``, " "IDLE's changes are lost and input from the keyboard and output to the screen " @@ -1686,7 +1695,7 @@ msgstr "" "l'entrée du clavier et la sortie à l'écran ne fonctionneront pas " "correctement." -#: library/idle.rst:764 +#: library/idle.rst:770 msgid "" "When Shell has the focus, it controls the keyboard and screen. This is " "normally transparent, but functions that directly access the keyboard and " @@ -1699,7 +1708,7 @@ msgstr "" "fonctions spécifiques du système qui déterminent si une touche a été pressée " "et, le cas échéant, laquelle." -#: library/idle.rst:769 +#: library/idle.rst:775 msgid "" "The IDLE code running in the execution process adds frames to the call stack " "that would not be there otherwise. IDLE wraps ``sys.getrecursionlimit`` and " @@ -1711,7 +1720,7 @@ msgstr "" "encapsule ``sys.getrecursionlimit`` et ``sys.setrecursionlimit`` pour " "réduire l'effet des piles de fonctions supplémentaires." -#: library/idle.rst:774 +#: library/idle.rst:780 msgid "" "When user code raises SystemExit either directly or by calling sys.exit, " "IDLE returns to a Shell prompt instead of exiting." @@ -1719,11 +1728,11 @@ msgstr "" "Lorsque l'utilisateur lève `SystemExit` directement ou en appelant ``sys." "exit``, IDLE revient au terminal IDLE au lieu de quitter." -#: library/idle.rst:778 +#: library/idle.rst:784 msgid "User output in Shell" msgstr "Sortie de l'utilisateur sur la console" -#: library/idle.rst:780 +#: library/idle.rst:786 msgid "" "When a program outputs text, the result is determined by the corresponding " "output device. When IDLE executes user code, ``sys.stdout`` and ``sys." @@ -1740,7 +1749,7 @@ msgstr "" "programmées. Quand cela importe, la console est conçue pour le développement " "plutôt que l'exécution en production." -#: library/idle.rst:787 +#: library/idle.rst:793 msgid "" "For instance, Shell never throws away output. A program that sends " "unlimited output to Shell will eventually fill memory, resulting in a memory " @@ -1755,7 +1764,7 @@ msgstr "" "exemple, conserve une quantité de lignes configurable entre 1 et 9999, avec " "une valeur par défaut de 300." -#: library/idle.rst:793 +#: library/idle.rst:799 msgid "" "A Tk Text widget, and hence IDLE's Shell, displays characters (codepoints) " "in the BMP (Basic Multilingual Plane) subset of Unicode. Which characters " @@ -1781,7 +1790,7 @@ msgstr "" "texte sur un affichage de ce genre peut provoquer un comportement surprenant " "du point de vue de l'espacement). ::" -#: library/idle.rst:811 +#: library/idle.rst:817 msgid "" "The ``repr`` function is used for interactive echo of expression values. It " "returns an altered version of the input string in which control codes, some " @@ -1796,7 +1805,7 @@ msgstr "" "d'échappement. Comme montré ci-dessus, ceci permet d'identifier les " "caractères dans une chaîne, quelle que soit la façon dont elle est affichée." -#: library/idle.rst:817 +#: library/idle.rst:823 msgid "" "Normal and error output are generally kept separate (on separate lines) from " "code input and each other. They each get different highlight colors." @@ -1805,7 +1814,7 @@ msgstr "" "séparées) de l'entrée de code et entre elles. Elles ont chacune une " "coloration différente." -#: library/idle.rst:820 +#: library/idle.rst:826 msgid "" "For SyntaxError tracebacks, the normal '^' marking where the error was " "detected is replaced by coloring the text with an error highlight. When code " @@ -1820,7 +1829,7 @@ msgstr "" "d'accéder à la ligne correspondante dans un éditeur *IDLE*. Le fichier est " "ouvert si nécessaire." -#: library/idle.rst:826 +#: library/idle.rst:832 msgid "" "Shell has a special facility for squeezing output lines down to a 'Squeezed " "text' label. This is done automatically for output over N lines (N = 50 by " @@ -1836,7 +1845,7 @@ msgstr "" "sortie. Ceci peut être utile sur des lignes si longues qu'elles ralentissent " "la navigation." -#: library/idle.rst:834 +#: library/idle.rst:840 msgid "" "Squeezed output is expanded in place by double-clicking the label. It can " "also be sent to the clipboard or a separate view window by right-clicking " @@ -1846,11 +1855,11 @@ msgstr "" "l'étiquette Elles peuvent aussi être envoyées au presse-papier ou sur un " "fenêtre séparée par un clic-droit sur l'étiquette." -#: library/idle.rst:839 +#: library/idle.rst:845 msgid "Developing tkinter applications" msgstr "Développer des applications *tkinter*" -#: library/idle.rst:841 +#: library/idle.rst:847 msgid "" "IDLE is intentionally different from standard Python in order to facilitate " "development of tkinter programs. Enter ``import tkinter as tk; root = tk." @@ -1872,7 +1881,7 @@ msgstr "" "changement n'est visible en Python standard jusqu'à la saisie de ``root." "update()``." -#: library/idle.rst:850 +#: library/idle.rst:856 msgid "" "Most tkinter programs run ``root.mainloop()``, which usually does not return " "until the tk app is destroyed. If the program is run with ``python -i`` or " @@ -1885,7 +1894,7 @@ msgstr "" "une invite de commande ``>>>`` n'apparaît pas tant que ``mainloop()`` ne " "termine pas, c'est-à-dire quand il ne reste plus rien avec lequel interagir." -#: library/idle.rst:856 +#: library/idle.rst:862 msgid "" "When running a tkinter program from an IDLE editor, one can comment out the " "mainloop call. One then gets a shell prompt immediately and can interact " @@ -1898,15 +1907,16 @@ msgstr "" "se rappeler de réactiver l'appel à *mainloop* lors de l'exécution en Python " "standard." -#: library/idle.rst:862 +#: library/idle.rst:868 msgid "Running without a subprocess" msgstr "Exécution sans sous-processus" -#: library/idle.rst:864 +#: library/idle.rst:870 +#, fuzzy msgid "" "By default, IDLE executes user code in a separate subprocess via a socket, " "which uses the internal loopback interface. This connection is not " -"externally visible and no data is sent to or received from the Internet. If " +"externally visible and no data is sent to or received from the internet. If " "firewall software complains anyway, you can ignore it." msgstr "" "Par défaut *IDLE* exécute le code de l'utilisateur dans un sous-processus " @@ -1914,7 +1924,7 @@ msgstr "" "connexion n'est pas visible de l'extérieur et rien n'est envoyé ou reçu " "d'Internet. Si un pare-feu s'en plaint quand même, vous pouvez l'ignorer." -#: library/idle.rst:869 +#: library/idle.rst:875 msgid "" "If the attempt to make the socket connection fails, Idle will notify you. " "Such failures are sometimes transient, but if persistent, the problem may be " @@ -1929,7 +1939,7 @@ msgstr "" "résolu, vous pouvez exécuter *IDLE* avec l'option *-n* de la ligne de " "commande." -#: library/idle.rst:875 +#: library/idle.rst:881 msgid "" "If IDLE is started with the -n command line switch it will run in a single " "process and will not create the subprocess which runs the RPC Python " @@ -1954,15 +1964,15 @@ msgstr "" "effet. Pour toutes ces raisons, il est préférable d'exécuter *IDLE* avec le " "sous-processus par défaut si c'est possible." -#: library/idle.rst:890 +#: library/idle.rst:896 msgid "Help and preferences" msgstr "Aide et préférences" -#: library/idle.rst:895 +#: library/idle.rst:901 msgid "Help sources" msgstr "Sources d'aide" -#: library/idle.rst:897 +#: library/idle.rst:903 msgid "" "Help menu entry \"IDLE Help\" displays a formatted html version of the IDLE " "chapter of the Library Reference. The result, in a read-only tkinter text " @@ -1979,7 +1989,7 @@ msgstr "" "enfoncées. Ou cliquez sur le bouton TOC (*Table of Contents* : sommaire) et " "sélectionnez un titre de section dans l'espace ouvert." -#: library/idle.rst:905 +#: library/idle.rst:911 msgid "" "Help menu entry \"Python Docs\" opens the extensive sources of help, " "including tutorials, available at ``docs.python.org/x.y``, where 'x.y' is " @@ -1993,7 +2003,7 @@ msgstr "" "système a une copie locale de la documentation (cela peut être une option " "d'installation), c'est elle qui est ouverte." -#: library/idle.rst:911 +#: library/idle.rst:917 msgid "" "Selected URLs can be added or removed from the help menu at any time using " "the General tab of the Configure IDLE dialog." @@ -2002,11 +2012,11 @@ msgstr "" "n'importe quel moment en utilisant l'onglet « *General* » de la fenêtre " "« Configure IDLE »." -#: library/idle.rst:917 +#: library/idle.rst:923 msgid "Setting preferences" msgstr "Modifier les préférences" -#: library/idle.rst:919 +#: library/idle.rst:925 msgid "" "The font preferences, highlighting, keys, and general preferences can be " "changed via Configure IDLE on the Option menu. Non-default user settings are " @@ -2021,7 +2031,7 @@ msgstr "" "par des fichiers de configuration utilisateur corrompus sont résolus en " "modifiant ou en supprimant un ou plusieurs fichiers dans *.idlerc*." -#: library/idle.rst:925 +#: library/idle.rst:931 msgid "" "On the Font tab, see the text sample for the effect of font face and size on " "multiple characters in multiple languages. Edit the sample to add other " @@ -2037,7 +2047,7 @@ msgstr "" "console ou l'éditeur, ajoutez-les en haut des échantillons et essayez de " "changer d'abord la taille, puis la fonte." -#: library/idle.rst:932 +#: library/idle.rst:938 msgid "" "On the Highlights and Keys tab, select a built-in or custom color theme and " "key set. To use a newer built-in color theme or key set with older IDLEs, " @@ -2050,12 +2060,12 @@ msgstr "" "ancienne, enregistrez-le en tant que nouveau thème ou ensemble de raccourcis " "personnalisé ; il sera alors accessible aux *IDLE* plus anciens." -#: library/idle.rst:938 +#: library/idle.rst:944 msgid "IDLE on macOS" msgstr "*IDLE* sous *macOS*" # framework=>cadriciel ne pose pas de problème ? -#: library/idle.rst:940 +#: library/idle.rst:946 msgid "" "Under System Preferences: Dock, one can set \"Prefer tabs when opening " "documents\" to \"Always\". This setting is not compatible with the tk/" @@ -2066,11 +2076,11 @@ msgstr "" "avec le cadriciel *tk/tkinter* utilisé par *IDLE* et il casse quelques " "fonctionnalités d'*IDLE*." -#: library/idle.rst:945 +#: library/idle.rst:951 msgid "Extensions" msgstr "Extensions" -#: library/idle.rst:947 +#: library/idle.rst:953 msgid "" "IDLE contains an extension facility. Preferences for extensions can be " "changed with the Extensions tab of the preferences dialog. See the beginning " diff --git a/library/imghdr.po b/library/imghdr.po index 22c24b794..7267c7fa6 100644 --- a/library/imghdr.po +++ b/library/imghdr.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -35,9 +35,9 @@ msgstr "Le module :mod:`nis` définit les instructions suivantes :" #: library/imghdr.rst:19 msgid "" -"Tests the image data contained in the file named by *filename*, and returns " -"a string describing the image type. If optional *h* is provided, the " -"*filename* is ignored and *h* is assumed to contain the byte stream to test." +"Tests the image data contained in the file named by *file*, and returns a " +"string describing the image type. If optional *h* is provided, the *file* " +"argument is ignored and *h* is assumed to contain the byte stream to test." msgstr "" #: library/imghdr.rst:23 diff --git a/library/importlib.metadata.po b/library/importlib.metadata.po index 9ddfe9ea0..d27652cf0 100644 --- a/library/importlib.metadata.po +++ b/library/importlib.metadata.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-09-04 11:42+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -18,10 +18,12 @@ msgstr "" msgid "Using :mod:`!importlib.metadata`" msgstr "" -#: library/importlib.metadata.rst:13 -msgid "" -"This functionality is provisional and may deviate from the usual version " -"semantics of the standard library." +#: library/importlib.metadata.rst:11 +msgid "``importlib.metadata`` is no longer provisional." +msgstr "" + +#: library/importlib.metadata.rst:14 +msgid "**Source code:** :source:`Lib/importlib/metadata.py`" msgstr "" #: library/importlib.metadata.rst:16 @@ -93,16 +95,51 @@ msgstr "" #: library/importlib.metadata.rst:82 msgid "" -"The ``entry_points()`` function returns a dictionary of all entry points, " -"keyed by group. Entry points are represented by ``EntryPoint`` instances; " -"each ``EntryPoint`` has a ``.name``, ``.group``, and ``.value`` attributes " -"and a ``.load()`` method to resolve the value. There are also ``.module``, " -"``.attr``, and ``.extras`` attributes for getting the components of the ``." -"value`` attribute::" +"The ``entry_points()`` function returns a collection of entry points. Entry " +"points are represented by ``EntryPoint`` instances; each ``EntryPoint`` has " +"a ``.name``, ``.group``, and ``.value`` attributes and a ``.load()`` method " +"to resolve the value. There are also ``.module``, ``.attr``, and ``." +"extras`` attributes for getting the components of the ``.value`` attribute." +msgstr "" + +#: library/importlib.metadata.rst:89 +msgid "Query all entry points::" +msgstr "" + +#: library/importlib.metadata.rst:93 +msgid "" +"The ``entry_points()`` function returns an ``EntryPoints`` object, a " +"sequence of all ``EntryPoint`` objects with ``names`` and ``groups`` " +"attributes for convenience::" +msgstr "" + +#: library/importlib.metadata.rst:100 +msgid "" +"``EntryPoints`` has a ``select`` method to select entry points matching " +"specific properties. Select entry points in the ``console_scripts`` group::" msgstr "" #: library/importlib.metadata.rst:106 msgid "" +"Equivalently, since ``entry_points`` passes keyword arguments through to " +"select::" +msgstr "" + +#: library/importlib.metadata.rst:111 +msgid "" +"Pick out a specific script named \"wheel\" (found in the wheel project)::" +msgstr "" + +#: library/importlib.metadata.rst:117 +msgid "Equivalently, query for that entry point during selection::" +msgstr "" + +#: library/importlib.metadata.rst:122 +msgid "Inspect the resolved entry point::" +msgstr "" + +#: library/importlib.metadata.rst:136 +msgid "" "The ``group`` and ``name`` are arbitrary values defined by the package " "author and usually a client will wish to resolve all entry points for a " "particular group. Read `the setuptools docs ` on :data:`sys.meta_path`." msgstr "" -#: library/importlib.metadata.rst:232 +#: library/importlib.metadata.rst:306 msgid "" "The default ``PathFinder`` for Python includes a hook that calls into " "``importlib.metadata.MetadataPathFinder`` for finding distributions loaded " "from typical file-system-based paths." msgstr "" -#: library/importlib.metadata.rst:236 +#: library/importlib.metadata.rst:310 msgid "" "The abstract class :py:class:`importlib.abc.MetaPathFinder` defines the " "interface expected of finders by Python's import system. ``importlib." @@ -235,14 +322,14 @@ msgid "" "base class, which defines this abstract method::" msgstr "" -#: library/importlib.metadata.rst:250 +#: library/importlib.metadata.rst:324 msgid "" "The ``DistributionFinder.Context`` object provides ``.path`` and ``.name`` " "properties indicating the path to search and name to match and may supply " "other relevant context." msgstr "" -#: library/importlib.metadata.rst:254 +#: library/importlib.metadata.rst:328 msgid "" "What this means in practice is that to support finding distribution package " "metadata in locations other than the file system, subclass ``Distribution`` " @@ -251,14 +338,6 @@ msgid "" "method." msgstr "" -#: library/importlib.metadata.rst:267 +#: library/importlib.metadata.rst:340 msgid "Footnotes" msgstr "Notes" - -#: library/importlib.metadata.rst:268 -msgid "" -"Technically, the returned distribution metadata object is an :class:`email." -"message.EmailMessage` instance, but this is an implementation detail, and " -"not part of the stable API. You should only use dictionary-like methods and " -"syntax to access the metadata contents." -msgstr "" diff --git a/library/importlib.po b/library/importlib.po index cd16941bd..7d050d343 100644 --- a/library/importlib.po +++ b/library/importlib.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-07-04 11:26+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -339,7 +339,7 @@ msgstr "" #: library/importlib.rst:209 msgid "" ":exc:`ModuleNotFoundError` is raised when the module being reloaded lacks a :" -"class:`ModuleSpec`." +"class:`~importlib.machinery.ModuleSpec`." msgstr "" #: library/importlib.rst:215 @@ -382,13 +382,23 @@ msgid "" "Returns ``None`` when called instead of raising :exc:`NotImplementedError`." msgstr "" -#: library/importlib.rst:263 +#: library/importlib.rst:260 +msgid "" +"Implement :meth:`MetaPathFinder.find_spec` or :meth:`PathEntryFinder." +"find_spec` instead." +msgstr "" + +#: library/importlib.rst:267 msgid "" "An abstract base class representing a :term:`meta path finder`. For " "compatibility, this is a subclass of :class:`Finder`." msgstr "" -#: library/importlib.rst:270 +#: library/importlib.rst:327 +msgid "No longer a subclass of :class:`Finder`." +msgstr "" + +#: library/importlib.rst:277 msgid "" "An abstract method for finding a :term:`spec ` for the " "specified module. If this is a top-level import, *path* will be ``None``. " @@ -400,7 +410,7 @@ msgid "" "implementing concrete ``MetaPathFinders``." msgstr "" -#: library/importlib.rst:284 +#: library/importlib.rst:291 msgid "" "A legacy method for finding a :term:`loader` for the specified module. If " "this is a top-level import, *path* will be ``None``. Otherwise, this is a " @@ -409,43 +419,43 @@ msgid "" "returned." msgstr "" -#: library/importlib.rst:290 +#: library/importlib.rst:297 msgid "" "If :meth:`find_spec` is defined, backwards-compatible functionality is " "provided." msgstr "" -#: library/importlib.rst:293 +#: library/importlib.rst:300 msgid "" "Returns ``None`` when called instead of raising :exc:`NotImplementedError`. " "Can use :meth:`find_spec` to provide functionality." msgstr "" -#: library/importlib.rst:352 library/importlib.rst:1136 +#: library/importlib.rst:361 library/importlib.rst:1149 +#: library/importlib.rst:1206 msgid "Use :meth:`find_spec` instead." msgstr "" -#: library/importlib.rst:303 +#: library/importlib.rst:310 msgid "" "An optional method which, when called, should invalidate any internal cache " "used by the finder. Used by :func:`importlib.invalidate_caches` when " "invalidating the caches of all finders on :data:`sys.meta_path`." msgstr "" -#: library/importlib.rst:307 +#: library/importlib.rst:314 msgid "Returns ``None`` when called instead of ``NotImplemented``." msgstr "" -#: library/importlib.rst:313 +#: library/importlib.rst:320 msgid "" "An abstract base class representing a :term:`path entry finder`. Though it " "bears some similarities to :class:`MetaPathFinder`, ``PathEntryFinder`` is " "meant for use only within the path-based import subsystem provided by :class:" -"`PathFinder`. This ABC is a subclass of :class:`Finder` for compatibility " -"reasons only." +"`importlib.machinery.PathFinder`." msgstr "" -#: library/importlib.rst:323 +#: library/importlib.rst:332 msgid "" "An abstract method for finding a :term:`spec ` for the " "specified module. The finder will search for the module only within the :" @@ -456,7 +466,7 @@ msgid "" "concrete ``PathEntryFinders``." msgstr "" -#: library/importlib.rst:335 +#: library/importlib.rst:344 msgid "" "A legacy method for finding a :term:`loader` for the specified module. " "Returns a 2-tuple of ``(loader, portion)`` where ``portion`` is a sequence " @@ -469,62 +479,62 @@ msgid "" "failure to find anything for the module)." msgstr "" -#: library/importlib.rst:345 +#: library/importlib.rst:354 msgid "" "If :meth:`find_spec` is defined then backwards-compatible functionality is " "provided." msgstr "" -#: library/importlib.rst:348 +#: library/importlib.rst:357 msgid "" "Returns ``(None, [])`` instead of raising :exc:`NotImplementedError`. Uses :" "meth:`find_spec` when available to provide functionality." msgstr "" -#: library/importlib.rst:357 +#: library/importlib.rst:366 msgid "" "A concrete implementation of :meth:`Finder.find_module` which is equivalent " "to ``self.find_loader(fullname)[0]``." msgstr "" -#: library/importlib.rst:365 +#: library/importlib.rst:374 msgid "" "An optional method which, when called, should invalidate any internal cache " -"used by the finder. Used by :meth:`PathFinder.invalidate_caches` when " -"invalidating the caches of all cached finders." +"used by the finder. Used by :meth:`importlib.machinery.PathFinder." +"invalidate_caches` when invalidating the caches of all cached finders." msgstr "" -#: library/importlib.rst:372 +#: library/importlib.rst:382 msgid "" "An abstract base class for a :term:`loader`. See :pep:`302` for the exact " "definition for a loader." msgstr "" -#: library/importlib.rst:857 +#: library/importlib.rst:870 msgid "" "Loaders that wish to support resource reading should implement a " "``get_resource_reader(fullname)`` method as specified by :class:`importlib." "abc.ResourceReader`." msgstr "" -#: library/importlib.rst:379 +#: library/importlib.rst:389 msgid "Introduced the optional ``get_resource_reader()`` method." msgstr "" -#: library/importlib.rst:384 +#: library/importlib.rst:394 msgid "" "A method that returns the module object to use when importing a module. " "This method may return ``None``, indicating that default module creation " "semantics should take place." msgstr "" -#: library/importlib.rst:390 +#: library/importlib.rst:400 msgid "" "Starting in Python 3.6, this method will not be optional when :meth:" "`exec_module` is defined." msgstr "" -#: library/importlib.rst:396 +#: library/importlib.rst:406 msgid "" "An abstract method that executes the module in its own namespace when a " "module is imported or reloaded. The module should already be initialized " @@ -532,17 +542,17 @@ msgid "" "abc.Loader.create_module` must be defined." msgstr "" -#: library/importlib.rst:403 +#: library/importlib.rst:413 msgid ":meth:`~importlib.abc.Loader.create_module` must also be defined." msgstr "" -#: library/importlib.rst:408 +#: library/importlib.rst:418 msgid "" "A legacy method for loading a module. If the module cannot be loaded, :exc:" "`ImportError` is raised, otherwise the loaded module is returned." msgstr "" -#: library/importlib.rst:412 +#: library/importlib.rst:422 msgid "" "If the requested module already exists in :data:`sys.modules`, that module " "should be used and reloaded. Otherwise the loader should create a new module " @@ -553,54 +563,54 @@ msgid "" "left alone (see :func:`importlib.util.module_for_loader`)." msgstr "" -#: library/importlib.rst:421 +#: library/importlib.rst:431 msgid "" "The loader should set several attributes on the module. (Note that some of " "these attributes can change when a module is reloaded):" msgstr "" -#: library/importlib.rst:426 +#: library/importlib.rst:436 msgid ":attr:`__name__`" msgstr "" -#: library/importlib.rst:426 +#: library/importlib.rst:436 msgid "The name of the module." msgstr "" -#: library/importlib.rst:430 +#: library/importlib.rst:440 msgid ":attr:`__file__`" msgstr "" -#: library/importlib.rst:429 +#: library/importlib.rst:439 msgid "" "The path to where the module data is stored (not set for built-in modules)." msgstr "" -#: library/importlib.rst:434 +#: library/importlib.rst:444 msgid ":attr:`__cached__`" msgstr "" -#: library/importlib.rst:433 +#: library/importlib.rst:443 msgid "" "The path to where a compiled version of the module is/should be stored (not " "set when the attribute would be inappropriate)." msgstr "" -#: library/importlib.rst:438 +#: library/importlib.rst:448 msgid ":attr:`__path__`" msgstr "" -#: library/importlib.rst:437 +#: library/importlib.rst:447 msgid "" "A list of strings specifying the search path within a package. This " "attribute is not set on modules." msgstr "" -#: library/importlib.rst:445 +#: library/importlib.rst:455 msgid ":attr:`__package__`" msgstr "" -#: library/importlib.rst:441 +#: library/importlib.rst:451 msgid "" "The fully-qualified name of the package under which the module was loaded as " "a submodule (or the empty string for top-level modules). For packages, it is " @@ -608,29 +618,29 @@ msgid "" "decorator can handle the details for :attr:`__package__`." msgstr "" -#: library/importlib.rst:450 +#: library/importlib.rst:460 msgid ":attr:`__loader__`" msgstr "" -#: library/importlib.rst:448 +#: library/importlib.rst:458 msgid "" "The loader used to load the module. The :func:`importlib.util." "module_for_loader` decorator can handle the details for :attr:`__package__`." msgstr "" -#: library/importlib.rst:452 +#: library/importlib.rst:462 msgid "" "When :meth:`exec_module` is available then backwards-compatible " "functionality is provided." msgstr "" -#: library/importlib.rst:455 +#: library/importlib.rst:465 msgid "" "Raise :exc:`ImportError` when called instead of :exc:`NotImplementedError`. " "Functionality provided when :meth:`exec_module` is available." msgstr "" -#: library/importlib.rst:460 +#: library/importlib.rst:470 msgid "" "The recommended API for loading a module is :meth:`exec_module` (and :meth:" "`create_module`). Loaders should implement it instead of load_module(). " @@ -638,31 +648,31 @@ msgid "" "load_module() when exec_module() is implemented." msgstr "" -#: library/importlib.rst:469 +#: library/importlib.rst:479 msgid "" "A legacy method which when implemented calculates and returns the given " "module's repr, as a string. The module type's default repr() will use the " "result of this method as appropriate." msgstr "" -#: library/importlib.rst:475 +#: library/importlib.rst:485 msgid "Made optional instead of an abstractmethod." msgstr "" -#: library/importlib.rst:478 +#: library/importlib.rst:488 msgid "The import machinery now takes care of this automatically." msgstr "" -#: library/importlib.rst:484 +#: library/importlib.rst:494 msgid "*Superseded by TraversableResources*" msgstr "" -#: library/importlib.rst:486 +#: library/importlib.rst:496 msgid "" "An :term:`abstract base class` to provide the ability to read *resources*." msgstr "" -#: library/importlib.rst:489 +#: library/importlib.rst:499 msgid "" "From the perspective of this ABC, a *resource* is a binary artifact that is " "shipped within a package. Typically this is something like a data file that " @@ -672,7 +682,7 @@ msgid "" "file versus on the file system." msgstr "" -#: library/importlib.rst:497 +#: library/importlib.rst:507 msgid "" "For any of methods of this class, a *resource* argument is expected to be a :" "term:`path-like object` which represents conceptually just a file name. This " @@ -684,7 +694,7 @@ msgid "" "potentially representing multiple packages or a module)." msgstr "" -#: library/importlib.rst:508 +#: library/importlib.rst:518 msgid "" "Loaders that wish to support resource reading are expected to provide a " "method called ``get_resource_reader(fullname)`` which returns an object " @@ -693,33 +703,33 @@ msgid "" "with this ABC should only be returned when the specified module is a package." msgstr "" -#: library/importlib.rst:519 +#: library/importlib.rst:529 msgid "" "Returns an opened, :term:`file-like object` for binary reading of the " "*resource*." msgstr "" -#: library/importlib.rst:522 +#: library/importlib.rst:532 msgid "If the resource cannot be found, :exc:`FileNotFoundError` is raised." msgstr "" -#: library/importlib.rst:527 +#: library/importlib.rst:537 msgid "Returns the file system path to the *resource*." msgstr "" -#: library/importlib.rst:529 +#: library/importlib.rst:539 msgid "" "If the resource does not concretely exist on the file system, raise :exc:" "`FileNotFoundError`." msgstr "" -#: library/importlib.rst:534 +#: library/importlib.rst:544 msgid "" "Returns ``True`` if the named *name* is considered a resource. :exc:" "`FileNotFoundError` is raised if *name* does not exist." msgstr "" -#: library/importlib.rst:539 +#: library/importlib.rst:549 msgid "" "Returns an :term:`iterable` of strings over the contents of the package. Do " "note that it is not required that all names returned by the iterator be " @@ -727,7 +737,7 @@ msgid "" "`is_resource` would be false." msgstr "" -#: library/importlib.rst:545 +#: library/importlib.rst:555 msgid "" "Allowing non-resource names to be returned is to allow for situations where " "how a package and its resources are stored are known a priori and the non-" @@ -736,23 +746,23 @@ msgid "" "stored on the file system then those subdirectory names can be used directly." msgstr "" -#: library/importlib.rst:553 +#: library/importlib.rst:563 msgid "The abstract method returns an iterable of no items." msgstr "" -#: library/importlib.rst:558 +#: library/importlib.rst:568 msgid "" "An abstract base class for a :term:`loader` which implements the optional :" "pep:`302` protocol for loading arbitrary resources from the storage back-end." msgstr "" -#: library/importlib.rst:562 +#: library/importlib.rst:572 msgid "" "This ABC is deprecated in favour of supporting resource loading through :" "class:`importlib.abc.ResourceReader`." msgstr "" -#: library/importlib.rst:568 +#: library/importlib.rst:578 msgid "" "An abstract method to return the bytes for the data located at *path*. " "Loaders that have a file-like storage back-end that allows storing arbitrary " @@ -762,34 +772,34 @@ msgid "" "attribute or an item from a package's :attr:`__path__`." msgstr "" -#: library/importlib.rst:576 +#: library/importlib.rst:586 msgid "Raises :exc:`OSError` instead of :exc:`NotImplementedError`." msgstr "" -#: library/importlib.rst:582 +#: library/importlib.rst:592 msgid "" "An abstract base class for a :term:`loader` which implements the optional :" "pep:`302` protocol for loaders that inspect modules." msgstr "" -#: library/importlib.rst:587 +#: library/importlib.rst:597 msgid "" "Return the code object for a module, or ``None`` if the module does not have " "a code object (as would be the case, for example, for a built-in module). " "Raise an :exc:`ImportError` if loader cannot find the requested module." msgstr "" -#: library/importlib.rst:593 +#: library/importlib.rst:603 msgid "" "While the method has a default implementation, it is suggested that it be " "overridden if possible for performance." msgstr "" -#: library/importlib.rst:599 +#: library/importlib.rst:609 msgid "No longer abstract and a concrete implementation is provided." msgstr "" -#: library/importlib.rst:604 +#: library/importlib.rst:614 msgid "" "An abstract method to return the source of a module. It is returned as a " "text string using :term:`universal newlines`, translating all recognized " @@ -798,22 +808,22 @@ msgid "" "cannot find the module specified." msgstr "" -#: library/importlib.rst:619 library/importlib.rst:669 +#: library/importlib.rst:629 library/importlib.rst:679 msgid "Raises :exc:`ImportError` instead of :exc:`NotImplementedError`." msgstr "" -#: library/importlib.rst:615 +#: library/importlib.rst:625 msgid "" -"An abstract method to return a true value if the module is a package, a " +"An optional method to return a true value if the module is a package, a " "false value otherwise. :exc:`ImportError` is raised if the :term:`loader` " "cannot find the module." msgstr "" -#: library/importlib.rst:624 +#: library/importlib.rst:634 msgid "Create a code object from Python source." msgstr "" -#: library/importlib.rst:626 +#: library/importlib.rst:636 msgid "" "The *data* argument can be whatever the :func:`compile` function supports (i." "e. string or bytes). The *path* argument should be the \"path\" to where the " @@ -821,106 +831,106 @@ msgid "" "in a zip file)." msgstr "" -#: library/importlib.rst:631 +#: library/importlib.rst:641 msgid "" "With the subsequent code object one can execute it in a module by running " "``exec(code, module.__dict__)``." msgstr "" -#: library/importlib.rst:636 +#: library/importlib.rst:646 msgid "Made the method static." msgstr "" -#: library/importlib.rst:641 +#: library/importlib.rst:651 msgid "Implementation of :meth:`Loader.exec_module`." msgstr "" -#: library/importlib.rst:647 +#: library/importlib.rst:657 msgid "Implementation of :meth:`Loader.load_module`." msgstr "" -#: library/importlib.rst:649 +#: library/importlib.rst:659 msgid "use :meth:`exec_module` instead." msgstr "" -#: library/importlib.rst:655 +#: library/importlib.rst:665 msgid "" "An abstract base class which inherits from :class:`InspectLoader` that, when " "implemented, helps a module to be executed as a script. The ABC represents " "an optional :pep:`302` protocol." msgstr "" -#: library/importlib.rst:661 +#: library/importlib.rst:671 msgid "" "An abstract method that is to return the value of :attr:`__file__` for the " "specified module. If no path is available, :exc:`ImportError` is raised." msgstr "" -#: library/importlib.rst:665 +#: library/importlib.rst:675 msgid "" "If source code is available, then the method should return the path to the " "source file, regardless of whether a bytecode was used to load the module." msgstr "" -#: library/importlib.rst:675 +#: library/importlib.rst:685 msgid "" "An abstract base class which inherits from :class:`ResourceLoader` and :" "class:`ExecutionLoader`, providing concrete implementations of :meth:" "`ResourceLoader.get_data` and :meth:`ExecutionLoader.get_filename`." msgstr "" -#: library/importlib.rst:679 +#: library/importlib.rst:689 msgid "" "The *fullname* argument is a fully resolved name of the module the loader is " "to handle. The *path* argument is the path to the file for the module." msgstr "" -#: library/importlib.rst:686 +#: library/importlib.rst:696 msgid "The name of the module the loader can handle." msgstr "" -#: library/importlib.rst:690 +#: library/importlib.rst:700 msgid "Path to the file of the module." msgstr "" -#: library/importlib.rst:694 +#: library/importlib.rst:704 msgid "Calls super's ``load_module()``." msgstr "" -#: library/importlib.rst:696 +#: library/importlib.rst:706 msgid "Use :meth:`Loader.exec_module` instead." msgstr "" -#: library/importlib.rst:1335 +#: library/importlib.rst:1351 msgid "Returns :attr:`path`." msgstr "" -#: library/importlib.rst:705 +#: library/importlib.rst:715 msgid "Reads *path* as a binary file and returns the bytes from it." msgstr "" -#: library/importlib.rst:710 +#: library/importlib.rst:720 msgid "" "An abstract base class for implementing source (and optionally bytecode) " "file loading. The class inherits from both :class:`ResourceLoader` and :" "class:`ExecutionLoader`, requiring the implementation of:" msgstr "" -#: library/importlib.rst:714 +#: library/importlib.rst:724 msgid ":meth:`ResourceLoader.get_data`" msgstr "" -#: library/importlib.rst:717 +#: library/importlib.rst:727 msgid ":meth:`ExecutionLoader.get_filename`" msgstr "" -#: library/importlib.rst:716 +#: library/importlib.rst:726 msgid "" "Should only return the path to the source file; sourceless loading is not " "supported." msgstr "" -#: library/importlib.rst:719 +#: library/importlib.rst:729 msgid "" "The abstract methods defined by this class are to add optional bytecode file " "support. Not implementing these optional methods (or causing them to raise :" @@ -932,83 +942,83 @@ msgid "" "bytecode-specific API is exposed." msgstr "" -#: library/importlib.rst:730 +#: library/importlib.rst:740 msgid "" "Optional abstract method which returns a :class:`dict` containing metadata " "about the specified path. Supported dictionary keys are:" msgstr "" -#: library/importlib.rst:733 +#: library/importlib.rst:743 msgid "" "``'mtime'`` (mandatory): an integer or floating-point number representing " "the modification time of the source code;" msgstr "" -#: library/importlib.rst:735 +#: library/importlib.rst:745 msgid "``'size'`` (optional): the size in bytes of the source code." msgstr "" -#: library/importlib.rst:737 +#: library/importlib.rst:747 msgid "" "Any other keys in the dictionary are ignored, to allow for future " "extensions. If the path cannot be handled, :exc:`OSError` is raised." msgstr "" -#: library/importlib.rst:755 +#: library/importlib.rst:765 msgid "Raise :exc:`OSError` instead of :exc:`NotImplementedError`." msgstr "" -#: library/importlib.rst:747 +#: library/importlib.rst:757 msgid "" "Optional abstract method which returns the modification time for the " "specified path." msgstr "" -#: library/importlib.rst:750 +#: library/importlib.rst:760 msgid "" "This method is deprecated in favour of :meth:`path_stats`. You don't have " "to implement it, but it is still available for compatibility purposes. " "Raise :exc:`OSError` if the path cannot be handled." msgstr "" -#: library/importlib.rst:760 +#: library/importlib.rst:770 msgid "" "Optional abstract method which writes the specified bytes to a file path. " "Any intermediate directories which do not exist are to be created " "automatically." msgstr "" -#: library/importlib.rst:764 +#: library/importlib.rst:774 msgid "" "When writing to the path fails because the path is read-only (:attr:`errno." "EACCES`/:exc:`PermissionError`), do not propagate the exception." msgstr "" -#: library/importlib.rst:768 +#: library/importlib.rst:778 msgid "No longer raises :exc:`NotImplementedError` when called." msgstr "" -#: library/importlib.rst:773 +#: library/importlib.rst:783 msgid "Concrete implementation of :meth:`InspectLoader.get_code`." msgstr "" -#: library/importlib.rst:777 +#: library/importlib.rst:787 msgid "Concrete implementation of :meth:`Loader.exec_module`." msgstr "" -#: library/importlib.rst:783 +#: library/importlib.rst:793 msgid "Concrete implementation of :meth:`Loader.load_module`." msgstr "" -#: library/importlib.rst:785 +#: library/importlib.rst:795 msgid "Use :meth:`exec_module` instead." msgstr "" -#: library/importlib.rst:790 +#: library/importlib.rst:800 msgid "Concrete implementation of :meth:`InspectLoader.get_source`." msgstr "" -#: library/importlib.rst:794 +#: library/importlib.rst:804 msgid "" "Concrete implementation of :meth:`InspectLoader.is_package`. A module is " "determined to be a package if its file path (as provided by :meth:" @@ -1017,13 +1027,13 @@ msgid "" "``__init__``." msgstr "" -#: library/importlib.rst:803 +#: library/importlib.rst:813 msgid "" "An object with a subset of pathlib.Path methods suitable for traversing " "directories and opening files." msgstr "" -#: library/importlib.rst:811 +#: library/importlib.rst:821 msgid "" "An abstract base class for resource readers capable of serving the ``files`` " "interface. Subclasses ResourceReader and provides concrete implementations " @@ -1031,15 +1041,21 @@ msgid "" "TraversableReader also supplies ResourceReader." msgstr "" -#: library/importlib.rst:821 +#: library/importlib.rst:827 +msgid "" +"Loaders that wish to support resource reading are expected to implement this " +"interface." +msgstr "" + +#: library/importlib.rst:834 msgid ":mod:`importlib.resources` -- Resources" msgstr "" -#: library/importlib.rst:826 +#: library/importlib.rst:839 msgid "**Source code:** :source:`Lib/importlib/resources.py`" msgstr "" -#: library/importlib.rst:832 +#: library/importlib.rst:845 msgid "" "This module leverages Python's import system to provide access to " "*resources* within *packages*. If you can import a package, you can access " @@ -1047,7 +1063,7 @@ msgid "" "binary or text mode." msgstr "" -#: library/importlib.rst:837 +#: library/importlib.rst:850 msgid "" "Resources are roughly akin to files inside directories, though it's " "important to keep in mind that this is just a metaphor. Resources and " @@ -1055,7 +1071,7 @@ msgid "" "file system." msgstr "" -#: library/importlib.rst:843 +#: library/importlib.rst:856 msgid "" "This module provides functionality similar to `pkg_resources `_ `Basic Resource " @@ -1065,7 +1081,7 @@ msgid "" "consistent semantics." msgstr "" -#: library/importlib.rst:851 +#: library/importlib.rst:864 msgid "" "The standalone backport of this module provides more information on `using " "importlib.resources `_." msgstr "" -#: library/importlib.rst:861 +#: library/importlib.rst:874 msgid "The following types are defined." msgstr "" -#: library/importlib.rst:865 +#: library/importlib.rst:878 msgid "" "The ``Package`` type is defined as ``Union[str, ModuleType]``. This means " "that where the function describes accepting a ``Package``, you can pass in " @@ -1085,17 +1101,17 @@ msgid "" "``__spec__.submodule_search_locations`` that is not ``None``." msgstr "" -#: library/importlib.rst:872 +#: library/importlib.rst:885 msgid "" "This type describes the resource names passed into the various functions in " "this package. This is defined as ``Union[str, os.PathLike]``." msgstr "" -#: library/importlib.rst:876 +#: library/importlib.rst:889 msgid "The following functions are available." msgstr "" -#: library/importlib.rst:881 +#: library/importlib.rst:894 msgid "" "Returns an :class:`importlib.resources.abc.Traversable` object representing " "the resource container for the package (think directory) and its resources " @@ -1103,13 +1119,13 @@ msgid "" "subdirectories)." msgstr "" -#: library/importlib.rst:987 +#: library/importlib.rst:1000 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements." msgstr "" -#: library/importlib.rst:893 +#: library/importlib.rst:906 msgid "" "Given a :class:`importlib.resources.abc.Traversable` object representing a " "file, typically from :func:`importlib.resources.files`, return a context " @@ -1117,23 +1133,23 @@ msgid "" "a :class:`pathlib.Path` object." msgstr "" -#: library/importlib.rst:898 +#: library/importlib.rst:911 msgid "" "Exiting the context manager cleans up any temporary file created when the " "resource was extracted from e.g. a zip file." msgstr "" -#: library/importlib.rst:901 +#: library/importlib.rst:914 msgid "" "Use ``as_file`` when the Traversable methods (``read_text``, etc) are " "insufficient and an actual file on the file system is required." msgstr "" -#: library/importlib.rst:909 +#: library/importlib.rst:922 msgid "Open for binary reading the *resource* within *package*." msgstr "" -#: library/importlib.rst:911 +#: library/importlib.rst:924 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements. *resource* is the name of the resource to open " @@ -1142,13 +1158,13 @@ msgid "" "BinaryIO`` instance, a binary I/O stream open for reading." msgstr "" -#: library/importlib.rst:920 +#: library/importlib.rst:933 msgid "" "Open for text reading the *resource* within *package*. By default, the " "resource is opened for reading as UTF-8." msgstr "" -#: library/importlib.rst:923 +#: library/importlib.rst:936 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements. *resource* is the name of the resource to open " @@ -1157,18 +1173,18 @@ msgid "" "same meaning as with built-in :func:`open`." msgstr "" -#: library/importlib.rst:929 +#: library/importlib.rst:942 msgid "" "This function returns a ``typing.TextIO`` instance, a text I/O stream open " "for reading." msgstr "" -#: library/importlib.rst:935 +#: library/importlib.rst:948 msgid "" "Read and return the contents of the *resource* within *package* as ``bytes``." msgstr "" -#: library/importlib.rst:938 +#: library/importlib.rst:951 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements. *resource* is the name of the resource to open " @@ -1177,13 +1193,13 @@ msgid "" "contents of the resource as :class:`bytes`." msgstr "" -#: library/importlib.rst:947 +#: library/importlib.rst:960 msgid "" "Read and return the contents of *resource* within *package* as a ``str``. By " "default, the contents are read as strict UTF-8." msgstr "" -#: library/importlib.rst:950 +#: library/importlib.rst:963 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements. *resource* is the name of the resource to open " @@ -1193,20 +1209,20 @@ msgid "" "contents of the resource as :class:`str`." msgstr "" -#: library/importlib.rst:960 +#: library/importlib.rst:973 msgid "" "Return the path to the *resource* as an actual file system path. This " "function returns a context manager for use in a :keyword:`with` statement. " "The context manager provides a :class:`pathlib.Path` object." msgstr "" -#: library/importlib.rst:964 +#: library/importlib.rst:977 msgid "" "Exiting the context manager cleans up any temporary file created when the " "resource needs to be extracted from e.g. a zip file." msgstr "" -#: library/importlib.rst:967 +#: library/importlib.rst:980 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements. *resource* is the name of the resource to open " @@ -1214,7 +1230,7 @@ msgid "" "resources (i.e. it cannot be a directory)." msgstr "" -#: library/importlib.rst:975 +#: library/importlib.rst:988 msgid "" "Return ``True`` if there is a resource named *name* in the package, " "otherwise ``False``. Remember that directories are *not* resources! " @@ -1222,66 +1238,66 @@ msgid "" "``Package`` requirements." msgstr "" -#: library/importlib.rst:983 +#: library/importlib.rst:996 msgid "" "Return an iterable over the named items within the package. The iterable " "returns :class:`str` resources (e.g. files) and non-resources (e.g. " "directories). The iterable does not recurse into subdirectories." msgstr "" -#: library/importlib.rst:992 +#: library/importlib.rst:1005 msgid ":mod:`importlib.machinery` -- Importers and path hooks" msgstr "" -#: library/importlib.rst:997 +#: library/importlib.rst:1010 msgid "**Source code:** :source:`Lib/importlib/machinery.py`" msgstr "" -#: library/importlib.rst:1001 +#: library/importlib.rst:1014 msgid "" "This module contains the various objects that help :keyword:`import` find " "and load modules." msgstr "" -#: library/importlib.rst:1006 +#: library/importlib.rst:1019 msgid "" "A list of strings representing the recognized file suffixes for source " "modules." msgstr "" -#: library/importlib.rst:1013 +#: library/importlib.rst:1026 msgid "" "A list of strings representing the file suffixes for non-optimized bytecode " "modules." msgstr "" -#: library/importlib.rst:1028 +#: library/importlib.rst:1041 msgid "Use :attr:`BYTECODE_SUFFIXES` instead." msgstr "" -#: library/importlib.rst:1023 +#: library/importlib.rst:1036 msgid "" "A list of strings representing the file suffixes for optimized bytecode " "modules." msgstr "" -#: library/importlib.rst:1033 +#: library/importlib.rst:1046 msgid "" "A list of strings representing the recognized file suffixes for bytecode " "modules (including the leading dot)." msgstr "" -#: library/importlib.rst:1038 +#: library/importlib.rst:1051 msgid "The value is no longer dependent on ``__debug__``." msgstr "" -#: library/importlib.rst:1043 +#: library/importlib.rst:1056 msgid "" "A list of strings representing the recognized file suffixes for extension " "modules." msgstr "" -#: library/importlib.rst:1050 +#: library/importlib.rst:1063 msgid "" "Returns a combined list of strings representing all file suffixes for " "modules recognized by the standard import machinery. This is a helper for " @@ -1290,56 +1306,56 @@ msgid "" "`inspect.getmodulename`)." msgstr "" -#: library/importlib.rst:1061 +#: library/importlib.rst:1074 msgid "" "An :term:`importer` for built-in modules. All known built-in modules are " "listed in :data:`sys.builtin_module_names`. This class implements the :class:" "`importlib.abc.MetaPathFinder` and :class:`importlib.abc.InspectLoader` ABCs." msgstr "" -#: library/importlib.rst:1080 library/importlib.rst:1108 +#: library/importlib.rst:1093 library/importlib.rst:1121 msgid "" "Only class methods are defined by this class to alleviate the need for " "instantiation." msgstr "" -#: library/importlib.rst:1069 +#: library/importlib.rst:1082 msgid "" "As part of :pep:`489`, the builtin importer now implements :meth:`Loader." "create_module` and :meth:`Loader.exec_module`" msgstr "" -#: library/importlib.rst:1076 +#: library/importlib.rst:1089 msgid "" "An :term:`importer` for frozen modules. This class implements the :class:" "`importlib.abc.MetaPathFinder` and :class:`importlib.abc.InspectLoader` ABCs." msgstr "" -#: library/importlib.rst:1083 +#: library/importlib.rst:1096 msgid "" "Gained :meth:`~Loader.create_module` and :meth:`~Loader.exec_module` methods." msgstr "" -#: library/importlib.rst:1090 +#: library/importlib.rst:1103 msgid "" ":term:`Finder ` for modules declared in the Windows registry. This " "class implements the :class:`importlib.abc.MetaPathFinder` ABC." msgstr "" -#: library/importlib.rst:1098 +#: library/importlib.rst:1111 msgid "" "Use :mod:`site` configuration instead. Future versions of Python may not " "enable this finder by default." msgstr "" -#: library/importlib.rst:1105 +#: library/importlib.rst:1118 msgid "" "A :term:`Finder ` for :data:`sys.path` and package ``__path__`` " "attributes. This class implements the :class:`importlib.abc.MetaPathFinder` " "ABC." msgstr "" -#: library/importlib.rst:1113 +#: library/importlib.rst:1126 msgid "" "Class method that attempts to find a :term:`spec ` for the " "module specified by *fullname* on :data:`sys.path` or, if defined, on " @@ -1353,47 +1369,47 @@ msgid "" "cache and returned." msgstr "" -#: library/importlib.rst:1127 +#: library/importlib.rst:1140 msgid "" "If the current working directory -- represented by an empty string -- is no " "longer valid then ``None`` is returned but no value is cached in :data:`sys." "path_importer_cache`." msgstr "" -#: library/importlib.rst:1134 +#: library/importlib.rst:1147 msgid "A legacy wrapper around :meth:`find_spec`." msgstr "" -#: library/importlib.rst:1141 +#: library/importlib.rst:1154 msgid "" "Calls :meth:`importlib.abc.PathEntryFinder.invalidate_caches` on all finders " "stored in :data:`sys.path_importer_cache` that define the method. Otherwise " "entries in :data:`sys.path_importer_cache` set to ``None`` are deleted." msgstr "" -#: library/importlib.rst:1146 +#: library/importlib.rst:1159 msgid "Entries of ``None`` in :data:`sys.path_importer_cache` are deleted." msgstr "" -#: library/importlib.rst:1149 +#: library/importlib.rst:1162 msgid "" "Calls objects in :data:`sys.path_hooks` with the current working directory " "for ``''`` (i.e. the empty string)." msgstr "" -#: library/importlib.rst:1156 +#: library/importlib.rst:1169 msgid "" "A concrete implementation of :class:`importlib.abc.PathEntryFinder` which " "caches results from the file system." msgstr "" -#: library/importlib.rst:1159 +#: library/importlib.rst:1172 msgid "" "The *path* argument is the directory for which the finder is in charge of " "searching." msgstr "" -#: library/importlib.rst:1162 +#: library/importlib.rst:1175 msgid "" "The *loader_details* argument is a variable number of 2-item tuples each " "containing a loader and a sequence of file suffixes the loader recognizes. " @@ -1401,7 +1417,7 @@ msgid "" "module's name and the path to the file found." msgstr "" -#: library/importlib.rst:1167 +#: library/importlib.rst:1180 msgid "" "The finder will cache the directory contents as necessary, making stat calls " "for each module search to verify the cache is not outdated. Because cache " @@ -1414,152 +1430,152 @@ msgid "" "to call :func:`importlib.invalidate_caches`." msgstr "" -#: library/importlib.rst:1181 +#: library/importlib.rst:1194 msgid "The path the finder will search in." msgstr "" -#: library/importlib.rst:1185 +#: library/importlib.rst:1198 msgid "Attempt to find the spec to handle *fullname* within :attr:`path`." msgstr "" -#: library/importlib.rst:1191 +#: library/importlib.rst:1204 msgid "Attempt to find the loader to handle *fullname* within :attr:`path`." msgstr "" -#: library/importlib.rst:1195 +#: library/importlib.rst:1211 msgid "Clear out the internal cache." msgstr "" -#: library/importlib.rst:1199 +#: library/importlib.rst:1215 msgid "" "A class method which returns a closure for use on :attr:`sys.path_hooks`. An " "instance of :class:`FileFinder` is returned by the closure using the path " "argument given to the closure directly and *loader_details* indirectly." msgstr "" -#: library/importlib.rst:1204 +#: library/importlib.rst:1220 msgid "" "If the argument to the closure is not an existing directory, :exc:" "`ImportError` is raised." msgstr "" -#: library/importlib.rst:1210 +#: library/importlib.rst:1226 msgid "" "A concrete implementation of :class:`importlib.abc.SourceLoader` by " "subclassing :class:`importlib.abc.FileLoader` and providing some concrete " "implementations of other methods." msgstr "" -#: library/importlib.rst:1218 +#: library/importlib.rst:1234 msgid "The name of the module that this loader will handle." msgstr "" -#: library/importlib.rst:1222 +#: library/importlib.rst:1238 msgid "The path to the source file." msgstr "" -#: library/importlib.rst:1226 +#: library/importlib.rst:1242 msgid "Return ``True`` if :attr:`path` appears to be for a package." msgstr "" -#: library/importlib.rst:1230 +#: library/importlib.rst:1246 msgid "" "Concrete implementation of :meth:`importlib.abc.SourceLoader.path_stats`." msgstr "" -#: library/importlib.rst:1234 +#: library/importlib.rst:1250 msgid "Concrete implementation of :meth:`importlib.abc.SourceLoader.set_data`." msgstr "" -#: library/importlib.rst:1281 +#: library/importlib.rst:1297 msgid "" "Concrete implementation of :meth:`importlib.abc.Loader.load_module` where " "specifying the name of the module to load is optional." msgstr "" -#: library/importlib.rst:1286 +#: library/importlib.rst:1302 msgid "Use :meth:`importlib.abc.Loader.exec_module` instead." msgstr "" -#: library/importlib.rst:1248 +#: library/importlib.rst:1264 msgid "" "A concrete implementation of :class:`importlib.abc.FileLoader` which can " "import bytecode files (i.e. no source code files exist)." msgstr "" -#: library/importlib.rst:1251 +#: library/importlib.rst:1267 msgid "" "Please note that direct use of bytecode files (and thus not source code " "files) inhibits your modules from being usable by all Python implementations " "or new versions of Python which change the bytecode format." msgstr "" -#: library/importlib.rst:1260 +#: library/importlib.rst:1276 msgid "The name of the module the loader will handle." msgstr "" -#: library/importlib.rst:1264 +#: library/importlib.rst:1280 msgid "The path to the bytecode file." msgstr "" -#: library/importlib.rst:1268 +#: library/importlib.rst:1284 msgid "Determines if the module is a package based on :attr:`path`." msgstr "" -#: library/importlib.rst:1272 +#: library/importlib.rst:1288 msgid "Returns the code object for :attr:`name` created from :attr:`path`." msgstr "" -#: library/importlib.rst:1276 +#: library/importlib.rst:1292 msgid "" "Returns ``None`` as bytecode files have no source when this loader is used." msgstr "" -#: library/importlib.rst:1291 +#: library/importlib.rst:1307 msgid "" "A concrete implementation of :class:`importlib.abc.ExecutionLoader` for " "extension modules." msgstr "" -#: library/importlib.rst:1294 +#: library/importlib.rst:1310 msgid "" "The *fullname* argument specifies the name of the module the loader is to " "support. The *path* argument is the path to the extension module's file." msgstr "" -#: library/importlib.rst:1301 +#: library/importlib.rst:1317 msgid "Name of the module the loader supports." msgstr "" -#: library/importlib.rst:1305 +#: library/importlib.rst:1321 msgid "Path to the extension module." msgstr "" -#: library/importlib.rst:1309 +#: library/importlib.rst:1325 msgid "" "Creates the module object from the given specification in accordance with :" "pep:`489`." msgstr "" -#: library/importlib.rst:1316 +#: library/importlib.rst:1332 msgid "Initializes the given module object in accordance with :pep:`489`." msgstr "" -#: library/importlib.rst:1322 +#: library/importlib.rst:1338 msgid "" "Returns ``True`` if the file path points to a package's ``__init__`` module " "based on :attr:`EXTENSION_SUFFIXES`." msgstr "" -#: library/importlib.rst:1327 +#: library/importlib.rst:1343 msgid "Returns ``None`` as extension modules lack a code object." msgstr "" -#: library/importlib.rst:1331 +#: library/importlib.rst:1347 msgid "Returns ``None`` as extension modules do not have source code." msgstr "" -#: library/importlib.rst:1342 +#: library/importlib.rst:1358 msgid "" "A specification for a module's import-system-related state. This is " "typically exposed as the module's ``__spec__`` attribute. In the " @@ -1572,29 +1588,29 @@ msgid "" "``__spec__.submodule_search_locations``." msgstr "" -#: library/importlib.rst:1356 +#: library/importlib.rst:1372 msgid "(``__name__``)" msgstr "" -#: library/importlib.rst:1358 +#: library/importlib.rst:1374 msgid "A string for the fully-qualified name of the module." msgstr "" -#: library/importlib.rst:1362 +#: library/importlib.rst:1378 msgid "(``__loader__``)" msgstr "" -#: library/importlib.rst:1364 +#: library/importlib.rst:1380 msgid "" "The :term:`Loader ` that should be used when loading the module. :" "term:`Finders ` should always set this." msgstr "" -#: library/importlib.rst:1369 +#: library/importlib.rst:1385 msgid "(``__file__``)" msgstr "" -#: library/importlib.rst:1371 +#: library/importlib.rst:1387 msgid "" "Name of the place from which the module is loaded, e.g. \"builtin\" for " "built-in modules and the filename for modules loaded from source. Normally " @@ -1602,67 +1618,67 @@ msgid "" "indicates it is unspecified (e.g. for namespace packages)." msgstr "" -#: library/importlib.rst:1378 +#: library/importlib.rst:1394 msgid "(``__path__``)" msgstr "" -#: library/importlib.rst:1380 +#: library/importlib.rst:1396 msgid "" "List of strings for where to find submodules, if a package (``None`` " "otherwise)." msgstr "" -#: library/importlib.rst:1385 +#: library/importlib.rst:1401 msgid "" "Container of extra module-specific data for use during loading (or ``None``)." msgstr "" -#: library/importlib.rst:1390 +#: library/importlib.rst:1406 msgid "(``__cached__``)" msgstr "" -#: library/importlib.rst:1392 +#: library/importlib.rst:1408 msgid "String for where the compiled module should be stored (or ``None``)." msgstr "" -#: library/importlib.rst:1396 +#: library/importlib.rst:1412 msgid "(``__package__``)" msgstr "" -#: library/importlib.rst:1398 +#: library/importlib.rst:1414 msgid "" "(Read-only) The fully-qualified name of the package under which the module " "should be loaded as a submodule (or the empty string for top-level modules). " "For packages, it is the same as :attr:`__name__`." msgstr "" -#: library/importlib.rst:1404 +#: library/importlib.rst:1420 msgid "" "Boolean indicating whether or not the module's \"origin\" attribute refers " "to a loadable location." msgstr "" -#: library/importlib.rst:1408 +#: library/importlib.rst:1424 msgid ":mod:`importlib.util` -- Utility code for importers" msgstr "" -#: library/importlib.rst:1414 +#: library/importlib.rst:1430 msgid "**Source code:** :source:`Lib/importlib/util.py`" msgstr "" -#: library/importlib.rst:1418 +#: library/importlib.rst:1434 msgid "" "This module contains the various objects that help in the construction of " "an :term:`importer`." msgstr "" -#: library/importlib.rst:1423 +#: library/importlib.rst:1439 msgid "" "The bytes which represent the bytecode version number. If you need help with " "loading/writing bytecode then consider :class:`importlib.abc.SourceLoader`." msgstr "" -#: library/importlib.rst:1430 +#: library/importlib.rst:1446 msgid "" "Return the :pep:`3147`/:pep:`488` path to the byte-compiled file associated " "with the source *path*. For example, if *path* is ``/foo/bar/baz.py`` the " @@ -1672,7 +1688,7 @@ msgid "" "`NotImplementedError` will be raised)." msgstr "" -#: library/importlib.rst:1437 +#: library/importlib.rst:1453 msgid "" "The *optimization* parameter is used to specify the optimization level of " "the bytecode file. An empty string represents no optimization, so ``/foo/bar/" @@ -1685,7 +1701,7 @@ msgid "" "be alphanumeric, else :exc:`ValueError` is raised." msgstr "" -#: library/importlib.rst:1447 +#: library/importlib.rst:1463 msgid "" "The *debug_override* parameter is deprecated and can be used to override the " "system's value for ``__debug__``. A ``True`` value is the equivalent of " @@ -1694,17 +1710,17 @@ msgid "" "are not ``None`` then :exc:`TypeError` is raised." msgstr "" -#: library/importlib.rst:1455 +#: library/importlib.rst:1471 msgid "" "The *optimization* parameter was added and the *debug_override* parameter " "was deprecated." msgstr "" -#: library/importlib.rst:1475 library/importlib.rst:1624 +#: library/importlib.rst:1491 library/importlib.rst:1640 msgid "Accepts a :term:`path-like object`." msgstr "Accepte un :term:`path-like object`." -#: library/importlib.rst:1465 +#: library/importlib.rst:1481 msgid "" "Given the *path* to a :pep:`3147` file name, return the associated source " "code file path. For example, if *path* is ``/foo/bar/__pycache__/baz." @@ -1714,25 +1730,25 @@ msgid "" "cache_tag` is not defined, :exc:`NotImplementedError` is raised." msgstr "" -#: library/importlib.rst:1480 +#: library/importlib.rst:1496 msgid "" "Decode the given bytes representing source code and return it as a string " "with universal newlines (as required by :meth:`importlib.abc.InspectLoader." "get_source`)." msgstr "" -#: library/importlib.rst:1488 +#: library/importlib.rst:1504 msgid "Resolve a relative module name to an absolute one." msgstr "" -#: library/importlib.rst:1490 +#: library/importlib.rst:1506 msgid "" "If **name** has no leading dots, then **name** is simply returned. This " "allows for usage such as ``importlib.util.resolve_name('sys', __spec__." "parent)`` without doing a check to see if the **package** argument is needed." msgstr "" -#: library/importlib.rst:1495 +#: library/importlib.rst:1511 msgid "" ":exc:`ImportError` is raised if **name** is a relative module name but " "**package** is a false value (e.g. ``None`` or the empty string). :exc:" @@ -1740,13 +1756,13 @@ msgid "" "package (e.g. requesting ``..bacon`` from within the ``spam`` package)." msgstr "" -#: library/importlib.rst:1502 +#: library/importlib.rst:1518 msgid "" "To improve consistency with import statements, raise :exc:`ImportError` " "instead of :exc:`ValueError` for invalid relative import attempts." msgstr "" -#: library/importlib.rst:1509 +#: library/importlib.rst:1525 msgid "" "Find the :term:`spec ` for a module, optionally relative to the " "specified **package** name. If the module is in :attr:`sys.modules`, then " @@ -1756,30 +1772,30 @@ msgid "" "if no spec is found." msgstr "" -#: library/importlib.rst:1516 +#: library/importlib.rst:1532 msgid "" "If **name** is for a submodule (contains a dot), the parent module is " "automatically imported." msgstr "" -#: library/importlib.rst:1519 +#: library/importlib.rst:1535 msgid "**name** and **package** work the same as for :func:`import_module`." msgstr "" -#: library/importlib.rst:1523 +#: library/importlib.rst:1539 msgid "" "Raises :exc:`ModuleNotFoundError` instead of :exc:`AttributeError` if " "**package** is in fact not a package (i.e. lacks a :attr:`__path__` " "attribute)." msgstr "" -#: library/importlib.rst:1530 +#: library/importlib.rst:1546 msgid "" "Create a new module based on **spec** and :meth:`spec.loader.create_module " "`." msgstr "" -#: library/importlib.rst:1533 +#: library/importlib.rst:1549 msgid "" "If :meth:`spec.loader.create_module ` " "does not return ``None``, then any pre-existing attributes will not be " @@ -1787,14 +1803,14 @@ msgid "" "accessing **spec** or setting an attribute on the module." msgstr "" -#: library/importlib.rst:1538 +#: library/importlib.rst:1554 msgid "" "This function is preferred over using :class:`types.ModuleType` to create a " "new module as **spec** is used to set as many import-controlled attributes " "on the module as possible." msgstr "" -#: library/importlib.rst:1546 +#: library/importlib.rst:1562 msgid "" "A :term:`decorator` for :meth:`importlib.abc.Loader.load_module` to handle " "selecting the proper module object to load with. The decorated method is " @@ -1804,7 +1820,7 @@ msgid "" "work on static methods because of the assumption of two arguments." msgstr "" -#: library/importlib.rst:1555 +#: library/importlib.rst:1571 msgid "" "The decorated method will take in the **name** of the module to be loaded as " "expected for a :term:`loader`. If the module is not found in :data:`sys." @@ -1814,7 +1830,7 @@ msgid "" "available). These attributes are set unconditionally to support reloading." msgstr "" -#: library/importlib.rst:1563 +#: library/importlib.rst:1579 msgid "" "If an exception is raised by the decorated method and a module was added to :" "data:`sys.modules`, then the module will be removed to prevent a partially " @@ -1822,25 +1838,25 @@ msgid "" "was already in :data:`sys.modules` then it is left alone." msgstr "" -#: library/importlib.rst:1568 +#: library/importlib.rst:1584 msgid "" ":attr:`__loader__` and :attr:`__package__` are automatically set (when " "possible)." msgstr "" -#: library/importlib.rst:1572 +#: library/importlib.rst:1588 msgid "" "Set :attr:`__name__`, :attr:`__loader__` :attr:`__package__` unconditionally " "to support reloading." msgstr "" -#: library/importlib.rst:1576 +#: library/importlib.rst:1592 msgid "" "The import machinery now directly performs all the functionality provided by " "this function." msgstr "" -#: library/importlib.rst:1582 +#: library/importlib.rst:1598 msgid "" "A :term:`decorator` for :meth:`importlib.abc.Loader.load_module` to set the :" "attr:`__loader__` attribute on the returned module. If the attribute is " @@ -1849,51 +1865,53 @@ msgid "" "`__loader__` should be set to." msgstr "" -#: library/importlib.rst:1589 +#: library/importlib.rst:1605 msgid "" "Set ``__loader__`` if set to ``None``, as if the attribute does not exist." msgstr "" -#: library/importlib.rst:1602 +#: library/importlib.rst:1618 msgid "The import machinery takes care of this automatically." msgstr "" -#: library/importlib.rst:1598 +#: library/importlib.rst:1614 msgid "" "A :term:`decorator` for :meth:`importlib.abc.Loader.load_module` to set the :" "attr:`__package__` attribute on the returned module. If :attr:`__package__` " "is set and has a value other than ``None`` it will not be changed." msgstr "" -#: library/importlib.rst:1607 +#: library/importlib.rst:1623 msgid "" -"A factory function for creating a :class:`ModuleSpec` instance based on a " -"loader. The parameters have the same meaning as they do for ModuleSpec. " -"The function uses available :term:`loader` APIs, such as :meth:" -"`InspectLoader.is_package`, to fill in any missing information on the spec." +"A factory function for creating a :class:`~importlib.machinery.ModuleSpec` " +"instance based on a loader. The parameters have the same meaning as they do " +"for ModuleSpec. The function uses available :term:`loader` APIs, such as :" +"meth:`InspectLoader.is_package`, to fill in any missing information on the " +"spec." msgstr "" -#: library/importlib.rst:1617 +#: library/importlib.rst:1633 msgid "" -"A factory function for creating a :class:`ModuleSpec` instance based on the " -"path to a file. Missing information will be filled in on the spec by making " -"use of loader APIs and by the implication that the module will be file-based." +"A factory function for creating a :class:`~importlib.machinery.ModuleSpec` " +"instance based on the path to a file. Missing information will be filled in " +"on the spec by making use of loader APIs and by the implication that the " +"module will be file-based." msgstr "" -#: library/importlib.rst:1629 +#: library/importlib.rst:1645 msgid "" "Return the hash of *source_bytes* as bytes. A hash-based ``.pyc`` file " "embeds the :func:`source_hash` of the corresponding source file's contents " "in its header." msgstr "" -#: library/importlib.rst:1637 +#: library/importlib.rst:1653 msgid "" "A class which postpones the execution of the loader of a module until the " "module has an attribute accessed." msgstr "" -#: library/importlib.rst:1640 +#: library/importlib.rst:1656 msgid "" "This class **only** works with loaders that define :meth:`~importlib.abc." "Loader.exec_module` as control over what module type is used for the module " @@ -1906,7 +1924,7 @@ msgid "" "raised if such a substitution is detected." msgstr "" -#: library/importlib.rst:1651 +#: library/importlib.rst:1667 msgid "" "For projects where startup time is critical, this class allows for " "potentially minimizing the cost of loading a module if it is never used. For " @@ -1915,58 +1933,66 @@ msgid "" "postponed and thus occurring out of context." msgstr "" -#: library/importlib.rst:1659 +#: library/importlib.rst:1675 msgid "" "Began calling :meth:`~importlib.abc.Loader.create_module`, removing the " "compatibility warning for :class:`importlib.machinery.BuiltinImporter` and :" "class:`importlib.machinery.ExtensionFileLoader`." msgstr "" -#: library/importlib.rst:1666 +#: library/importlib.rst:1682 msgid "" "A static method which returns a callable that creates a lazy loader. This is " "meant to be used in situations where the loader is passed by class instead " "of by instance. ::" msgstr "" -#: library/importlib.rst:1679 +#: library/importlib.rst:1695 msgid "Examples" msgstr "Exemples" -#: library/importlib.rst:1682 +#: library/importlib.rst:1698 msgid "Importing programmatically" msgstr "" -#: library/importlib.rst:1684 +#: library/importlib.rst:1700 msgid "" "To programmatically import a module, use :func:`importlib.import_module`. ::" msgstr "" -#: library/importlib.rst:1693 +#: library/importlib.rst:1709 msgid "Checking if a module can be imported" msgstr "" -#: library/importlib.rst:1695 +#: library/importlib.rst:1711 msgid "" "If you need to find out if a module can be imported without actually doing " "the import, then you should use :func:`importlib.util.find_spec`. ::" msgstr "" -#: library/importlib.rst:1718 +#: library/importlib.rst:1734 msgid "Importing a source file directly" msgstr "" -#: library/importlib.rst:1720 +#: library/importlib.rst:1736 msgid "" "To import a Python source file directly, use the following recipe (Python " "3.5 and newer only)::" msgstr "" -#: library/importlib.rst:1739 +#: library/importlib.rst:1754 +msgid "Implementing lazy imports" +msgstr "" + +#: library/importlib.rst:1756 +msgid "The example below shows how to implement lazy imports::" +msgstr "" + +#: library/importlib.rst:1778 msgid "Setting up an importer" msgstr "" -#: library/importlib.rst:1741 +#: library/importlib.rst:1780 msgid "" "For deep customizations of import, you typically want to implement an :term:" "`importer`. This means managing both the :term:`finder` and :term:`loader` " @@ -1980,11 +2006,11 @@ msgid "" "for the appropriate classes defined within this package)::" msgstr "" -#: library/importlib.rst:1773 +#: library/importlib.rst:1812 msgid "Approximating :func:`importlib.import_module`" msgstr "" -#: library/importlib.rst:1775 +#: library/importlib.rst:1814 msgid "" "Import itself is implemented in Python code, making it possible to expose " "most of the import machinery through importlib. The following helps " diff --git a/library/inspect.po b/library/inspect.po index 8a4cbd463..ca1f676c8 100644 --- a/library/inspect.po +++ b/library/inspect.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" -"PO-Revision-Date: 2019-09-06 13:49+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"PO-Revision-Date: 2021-09-23 16:27+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -69,11 +69,11 @@ msgstr "Description" msgid "module" msgstr "module" -#: library/inspect.rst:48 library/inspect.rst:76 library/inspect.rst:231 +#: library/inspect.rst:48 library/inspect.rst:76 library/inspect.rst:233 msgid "__doc__" msgstr "__doc__" -#: library/inspect.rst:48 library/inspect.rst:76 library/inspect.rst:231 +#: library/inspect.rst:48 library/inspect.rst:76 library/inspect.rst:233 msgid "documentation string" msgstr "" @@ -89,7 +89,7 @@ msgstr "" msgid "class" msgstr "classe" -#: library/inspect.rst:60 library/inspect.rst:200 library/inspect.rst:233 +#: library/inspect.rst:60 library/inspect.rst:202 library/inspect.rst:235 msgid "__name__" msgstr "__name__" @@ -97,15 +97,15 @@ msgstr "__name__" msgid "name with which this class was defined" msgstr "" -#: library/inspect.rst:63 library/inspect.rst:202 library/inspect.rst:236 +#: library/inspect.rst:63 library/inspect.rst:204 library/inspect.rst:238 msgid "__qualname__" msgstr "__qualname__" -#: library/inspect.rst:63 library/inspect.rst:202 library/inspect.rst:236 +#: library/inspect.rst:63 library/inspect.rst:204 library/inspect.rst:238 msgid "qualified name" msgstr "nom qualifié" -#: library/inspect.rst:73 library/inspect.rst:104 +#: library/inspect.rst:73 library/inspect.rst:106 msgid "__module__" msgstr "__module__" @@ -129,7 +129,7 @@ msgstr "__func__" msgid "function object containing implementation of method" msgstr "" -#: library/inspect.rst:238 +#: library/inspect.rst:240 msgid "__self__" msgstr "__self__" @@ -182,345 +182,357 @@ msgid "global namespace in which this function was defined" msgstr "" #: library/inspect.rst:98 +msgid "__builtins__" +msgstr "__builtins__" + +#: library/inspect.rst:98 +msgid "builtins namespace" +msgstr "" + +#: library/inspect.rst:100 msgid "__annotations__" msgstr "__annotations__" -#: library/inspect.rst:98 +#: library/inspect.rst:100 msgid "" "mapping of parameters names to annotations; ``\"return\"`` key is reserved " "for return annotations." msgstr "" -#: library/inspect.rst:104 +#: library/inspect.rst:106 msgid "name of module in which this function was defined" msgstr "" -#: library/inspect.rst:107 +#: library/inspect.rst:109 msgid "traceback" msgstr "traceback" -#: library/inspect.rst:107 +#: library/inspect.rst:109 msgid "tb_frame" msgstr "tb_frame" -#: library/inspect.rst:107 +#: library/inspect.rst:109 msgid "frame object at this level" msgstr "" -#: library/inspect.rst:110 +#: library/inspect.rst:112 msgid "tb_lasti" msgstr "tb_lasti" -#: library/inspect.rst:132 +#: library/inspect.rst:134 msgid "index of last attempted instruction in bytecode" msgstr "" -#: library/inspect.rst:113 +#: library/inspect.rst:115 msgid "tb_lineno" msgstr "tb_lineno" -#: library/inspect.rst:135 +#: library/inspect.rst:137 msgid "current line number in Python source code" msgstr "" -#: library/inspect.rst:116 +#: library/inspect.rst:118 msgid "tb_next" msgstr "tb_next" -#: library/inspect.rst:116 +#: library/inspect.rst:118 msgid "next inner traceback object (called by this level)" msgstr "" -#: library/inspect.rst:204 library/inspect.rst:221 +#: library/inspect.rst:206 library/inspect.rst:223 msgid "frame" msgstr "" -#: library/inspect.rst:120 +#: library/inspect.rst:122 msgid "f_back" msgstr "f_back" -#: library/inspect.rst:120 +#: library/inspect.rst:122 msgid "next outer frame object (this frame's caller)" msgstr "" -#: library/inspect.rst:123 +#: library/inspect.rst:125 msgid "f_builtins" msgstr "f_builtins" -#: library/inspect.rst:123 +#: library/inspect.rst:125 msgid "builtins namespace seen by this frame" msgstr "" -#: library/inspect.rst:126 +#: library/inspect.rst:128 msgid "f_code" msgstr "f_code" -#: library/inspect.rst:126 +#: library/inspect.rst:128 msgid "code object being executed in this frame" msgstr "" -#: library/inspect.rst:129 +#: library/inspect.rst:131 msgid "f_globals" msgstr "f_globals" -#: library/inspect.rst:129 +#: library/inspect.rst:131 msgid "global namespace seen by this frame" msgstr "" -#: library/inspect.rst:132 +#: library/inspect.rst:134 msgid "f_lasti" msgstr "f_lasti" -#: library/inspect.rst:135 +#: library/inspect.rst:137 msgid "f_lineno" msgstr "f_lineno" -#: library/inspect.rst:138 +#: library/inspect.rst:140 msgid "f_locals" msgstr "f_locals" -#: library/inspect.rst:138 +#: library/inspect.rst:140 msgid "local namespace seen by this frame" msgstr "" -#: library/inspect.rst:141 +#: library/inspect.rst:143 msgid "f_trace" msgstr "f_trace" -#: library/inspect.rst:141 +#: library/inspect.rst:143 msgid "tracing function for this frame, or ``None``" msgstr "" -#: library/inspect.rst:208 library/inspect.rst:225 +#: library/inspect.rst:210 library/inspect.rst:227 msgid "code" msgstr "" -#: library/inspect.rst:144 +#: library/inspect.rst:146 msgid "co_argcount" msgstr "co_argcount" -#: library/inspect.rst:144 +#: library/inspect.rst:146 msgid "" "number of arguments (not including keyword only arguments, \\* or \\*\\* " "args)" msgstr "" -#: library/inspect.rst:149 +#: library/inspect.rst:151 msgid "co_code" msgstr "co_code" -#: library/inspect.rst:149 +#: library/inspect.rst:151 msgid "string of raw compiled bytecode" msgstr "" -#: library/inspect.rst:152 +#: library/inspect.rst:154 msgid "co_cellvars" msgstr "" -#: library/inspect.rst:152 +#: library/inspect.rst:154 msgid "tuple of names of cell variables (referenced by containing scopes)" msgstr "" -#: library/inspect.rst:156 +#: library/inspect.rst:158 msgid "co_consts" msgstr "co_consts" -#: library/inspect.rst:156 +#: library/inspect.rst:158 msgid "tuple of constants used in the bytecode" msgstr "" -#: library/inspect.rst:159 +#: library/inspect.rst:161 msgid "co_filename" msgstr "co_filename" -#: library/inspect.rst:159 +#: library/inspect.rst:161 msgid "name of file in which this code object was created" msgstr "" -#: library/inspect.rst:163 +#: library/inspect.rst:165 msgid "co_firstlineno" msgstr "co_firstlineno" -#: library/inspect.rst:163 +#: library/inspect.rst:165 msgid "number of first line in Python source code" msgstr "" -#: library/inspect.rst:166 +#: library/inspect.rst:168 msgid "co_flags" msgstr "co_flags" -#: library/inspect.rst:166 +#: library/inspect.rst:168 msgid "" "bitmap of ``CO_*`` flags, read more :ref:`here `" msgstr "" -#: library/inspect.rst:170 +#: library/inspect.rst:172 msgid "co_lnotab" msgstr "co_lnotab" -#: library/inspect.rst:170 +#: library/inspect.rst:172 msgid "encoded mapping of line numbers to bytecode indices" msgstr "" -#: library/inspect.rst:174 +#: library/inspect.rst:176 msgid "co_freevars" msgstr "co_freevars" -#: library/inspect.rst:174 +#: library/inspect.rst:176 msgid "tuple of names of free variables (referenced via a function's closure)" msgstr "" -#: library/inspect.rst:178 +#: library/inspect.rst:180 msgid "co_posonlyargcount" msgstr "co_posonlyargcount" -#: library/inspect.rst:178 +#: library/inspect.rst:180 msgid "number of positional only arguments" msgstr "" -#: library/inspect.rst:181 +#: library/inspect.rst:183 msgid "co_kwonlyargcount" msgstr "co_kwonlyargcount" -#: library/inspect.rst:181 +#: library/inspect.rst:183 msgid "number of keyword only arguments (not including \\*\\* arg)" msgstr "" -#: library/inspect.rst:185 +#: library/inspect.rst:187 msgid "co_name" msgstr "co_name" -#: library/inspect.rst:185 +#: library/inspect.rst:187 msgid "name with which this code object was defined" msgstr "" -#: library/inspect.rst:188 +#: library/inspect.rst:190 msgid "co_names" msgstr "co_names" -#: library/inspect.rst:188 +#: library/inspect.rst:190 msgid "tuple of names of local variables" msgstr "" -#: library/inspect.rst:191 +#: library/inspect.rst:193 msgid "co_nlocals" msgstr "co_nlocals" -#: library/inspect.rst:191 +#: library/inspect.rst:193 msgid "number of local variables" msgstr "" -#: library/inspect.rst:193 +#: library/inspect.rst:195 msgid "co_stacksize" msgstr "co_stacksize" -#: library/inspect.rst:193 +#: library/inspect.rst:195 msgid "virtual machine stack space required" msgstr "" -#: library/inspect.rst:196 +#: library/inspect.rst:198 msgid "co_varnames" msgstr "co_varnames" -#: library/inspect.rst:196 +#: library/inspect.rst:198 msgid "tuple of names of arguments and local variables" msgstr "" -#: library/inspect.rst:200 +#: library/inspect.rst:202 msgid "generator" msgstr "générateur" -#: library/inspect.rst:214 +#: library/inspect.rst:216 msgid "name" msgstr "" -#: library/inspect.rst:204 +#: library/inspect.rst:206 msgid "gi_frame" msgstr "gi_frame" -#: library/inspect.rst:206 +#: library/inspect.rst:208 msgid "gi_running" msgstr "gi_running" -#: library/inspect.rst:206 +#: library/inspect.rst:208 msgid "is the generator running?" msgstr "" -#: library/inspect.rst:208 +#: library/inspect.rst:210 msgid "gi_code" msgstr "gi_code" -#: library/inspect.rst:210 +#: library/inspect.rst:212 msgid "gi_yieldfrom" msgstr "gi_yieldfrom" -#: library/inspect.rst:210 +#: library/inspect.rst:212 msgid "object being iterated by ``yield from``, or ``None``" msgstr "" -#: library/inspect.rst:214 +#: library/inspect.rst:216 msgid "coroutine" msgstr "coroutine" -#: library/inspect.rst:218 +#: library/inspect.rst:220 msgid "cr_await" msgstr "cr_await" -#: library/inspect.rst:218 +#: library/inspect.rst:220 msgid "object being awaited on, or ``None``" msgstr "" -#: library/inspect.rst:221 +#: library/inspect.rst:223 msgid "cr_frame" msgstr "cr_frame" -#: library/inspect.rst:223 +#: library/inspect.rst:225 msgid "cr_running" msgstr "cr_running" -#: library/inspect.rst:223 +#: library/inspect.rst:225 msgid "is the coroutine running?" msgstr "" -#: library/inspect.rst:225 +#: library/inspect.rst:227 msgid "cr_code" msgstr "cr_code" -#: library/inspect.rst:227 +#: library/inspect.rst:229 msgid "cr_origin" msgstr "" -#: library/inspect.rst:227 +#: library/inspect.rst:229 msgid "where coroutine was created, or ``None``. See |coroutine-origin-link|" msgstr "" -#: library/inspect.rst:231 +#: library/inspect.rst:233 msgid "builtin" msgstr "" -#: library/inspect.rst:233 +#: library/inspect.rst:235 msgid "original name of this function or method" msgstr "" -#: library/inspect.rst:238 +#: library/inspect.rst:240 msgid "instance to which a method is bound, or ``None``" msgstr "" -#: library/inspect.rst:245 +#: library/inspect.rst:247 msgid "Add ``__qualname__`` and ``gi_yieldfrom`` attributes to generators." msgstr "" -#: library/inspect.rst:247 +#: library/inspect.rst:249 msgid "" "The ``__name__`` attribute of generators is now set from the function name, " "instead of the code name, and it can now be modified." msgstr "" -#: library/inspect.rst:252 +#: library/inspect.rst:254 msgid "Add ``cr_origin`` attribute to coroutines." msgstr "" -#: library/inspect.rst:256 +#: library/inspect.rst:258 +msgid "Add ``__builtins__`` attribute to functions." +msgstr "" + +#: library/inspect.rst:262 msgid "" "Return all the members of an object in a list of ``(name, value)`` pairs " "sorted by name. If the optional *predicate* argument—which will be called " @@ -528,14 +540,14 @@ msgid "" "the predicate returns a true value are included." msgstr "" -#: library/inspect.rst:263 +#: library/inspect.rst:269 msgid "" ":func:`getmembers` will only return class attributes defined in the " "metaclass when the argument is a class and those attributes have been listed " "in the metaclass' custom :meth:`__dir__`." msgstr "" -#: library/inspect.rst:270 +#: library/inspect.rst:276 msgid "" "Return the name of the module named by the file *path*, without including " "the names of enclosing packages. The file extension is checked against all " @@ -544,134 +556,134 @@ msgid "" "``None`` is returned." msgstr "" -#: library/inspect.rst:276 +#: library/inspect.rst:282 msgid "" "Note that this function *only* returns a meaningful name for actual Python " "modules - paths that potentially refer to Python packages will still return " "``None``." msgstr "" -#: library/inspect.rst:280 +#: library/inspect.rst:286 msgid "The function is based directly on :mod:`importlib`." msgstr "" -#: library/inspect.rst:286 +#: library/inspect.rst:292 msgid "Return ``True`` if the object is a module." msgstr "" -#: library/inspect.rst:291 +#: library/inspect.rst:297 msgid "" "Return ``True`` if the object is a class, whether built-in or created in " "Python code." msgstr "" -#: library/inspect.rst:297 +#: library/inspect.rst:303 msgid "Return ``True`` if the object is a bound method written in Python." msgstr "" -#: library/inspect.rst:302 +#: library/inspect.rst:308 msgid "" "Return ``True`` if the object is a Python function, which includes functions " "created by a :term:`lambda` expression." msgstr "" -#: library/inspect.rst:308 +#: library/inspect.rst:314 msgid "Return ``True`` if the object is a Python generator function." msgstr "" -#: library/inspect.rst:310 +#: library/inspect.rst:316 msgid "" "Functions wrapped in :func:`functools.partial` now return ``True`` if the " "wrapped function is a Python generator function." msgstr "" -#: library/inspect.rst:317 +#: library/inspect.rst:323 msgid "Return ``True`` if the object is a generator." msgstr "" -#: library/inspect.rst:322 +#: library/inspect.rst:328 msgid "" "Return ``True`` if the object is a :term:`coroutine function` (a function " "defined with an :keyword:`async def` syntax)." msgstr "" -#: library/inspect.rst:327 +#: library/inspect.rst:333 msgid "" "Functions wrapped in :func:`functools.partial` now return ``True`` if the " "wrapped function is a :term:`coroutine function`." msgstr "" -#: library/inspect.rst:334 +#: library/inspect.rst:340 msgid "" "Return ``True`` if the object is a :term:`coroutine` created by an :keyword:" "`async def` function." msgstr "" -#: library/inspect.rst:342 +#: library/inspect.rst:348 msgid "" "Return ``True`` if the object can be used in :keyword:`await` expression." msgstr "" -#: library/inspect.rst:344 +#: library/inspect.rst:350 msgid "" "Can also be used to distinguish generator-based coroutines from regular " "generators::" msgstr "" -#: library/inspect.rst:361 +#: library/inspect.rst:367 msgid "" "Return ``True`` if the object is an :term:`asynchronous generator` function, " "for example::" msgstr "" -#: library/inspect.rst:372 +#: library/inspect.rst:378 msgid "" "Functions wrapped in :func:`functools.partial` now return ``True`` if the " "wrapped function is a :term:`asynchronous generator` function." msgstr "" -#: library/inspect.rst:379 +#: library/inspect.rst:385 msgid "" "Return ``True`` if the object is an :term:`asynchronous generator iterator` " "created by an :term:`asynchronous generator` function." msgstr "" -#: library/inspect.rst:386 +#: library/inspect.rst:392 msgid "Return ``True`` if the object is a traceback." msgstr "" -#: library/inspect.rst:391 +#: library/inspect.rst:397 msgid "Return ``True`` if the object is a frame." msgstr "" -#: library/inspect.rst:396 +#: library/inspect.rst:402 msgid "Return ``True`` if the object is a code." msgstr "" -#: library/inspect.rst:401 +#: library/inspect.rst:407 msgid "" "Return ``True`` if the object is a built-in function or a bound built-in " "method." msgstr "" -#: library/inspect.rst:406 +#: library/inspect.rst:412 msgid "" "Return ``True`` if the object is a user-defined or built-in function or " "method." msgstr "" -#: library/inspect.rst:411 +#: library/inspect.rst:417 msgid "Return ``True`` if the object is an abstract base class." msgstr "" -#: library/inspect.rst:416 +#: library/inspect.rst:422 msgid "" "Return ``True`` if the object is a method descriptor, but not if :func:" "`ismethod`, :func:`isclass`, :func:`isfunction` or :func:`isbuiltin` are " "true." msgstr "" -#: library/inspect.rst:420 +#: library/inspect.rst:426 msgid "" "This, for example, is true of ``int.__add__``. An object passing this test " "has a :meth:`~object.__get__` method but not a :meth:`~object.__set__` " @@ -679,7 +691,7 @@ msgid "" "__name__` attribute is usually sensible, and :attr:`__doc__` often is." msgstr "" -#: library/inspect.rst:426 +#: library/inspect.rst:432 msgid "" "Methods implemented via descriptors that also pass one of the other tests " "return ``False`` from the :func:`ismethoddescriptor` test, simply because " @@ -687,11 +699,11 @@ msgid "" "`__func__` attribute (etc) when an object passes :func:`ismethod`." msgstr "" -#: library/inspect.rst:434 +#: library/inspect.rst:440 msgid "Return ``True`` if the object is a data descriptor." msgstr "" -#: library/inspect.rst:436 +#: library/inspect.rst:442 msgid "" "Data descriptors have a :attr:`~object.__set__` or a :attr:`~object." "__delete__` method. Examples are properties (defined in Python), getsets, " @@ -702,33 +714,33 @@ msgid "" "and members have both of these attributes), but this is not guaranteed." msgstr "" -#: library/inspect.rst:447 +#: library/inspect.rst:453 msgid "Return ``True`` if the object is a getset descriptor." msgstr "" -#: library/inspect.rst:451 +#: library/inspect.rst:457 msgid "" "getsets are attributes defined in extension modules via :c:type:" "`PyGetSetDef` structures. For Python implementations without such types, " "this method will always return ``False``." msgstr "" -#: library/inspect.rst:458 +#: library/inspect.rst:464 msgid "Return ``True`` if the object is a member descriptor." msgstr "" -#: library/inspect.rst:462 +#: library/inspect.rst:468 msgid "" "Member descriptors are attributes defined in extension modules via :c:type:" "`PyMemberDef` structures. For Python implementations without such types, " "this method will always return ``False``." msgstr "" -#: library/inspect.rst:470 +#: library/inspect.rst:476 msgid "Retrieving source code" msgstr "" -#: library/inspect.rst:474 +#: library/inspect.rst:480 msgid "" "Get the documentation string for an object, cleaned up with :func:" "`cleandoc`. If the documentation string for an object is not provided and " @@ -736,11 +748,11 @@ msgid "" "documentation string from the inheritance hierarchy." msgstr "" -#: library/inspect.rst:479 +#: library/inspect.rst:485 msgid "Documentation strings are now inherited if not overridden." msgstr "" -#: library/inspect.rst:485 +#: library/inspect.rst:491 msgid "" "Return in a single string any lines of comments immediately preceding the " "object's source code (for a class, function, or method), or at the top of " @@ -749,25 +761,25 @@ msgid "" "been defined in C or the interactive shell." msgstr "" -#: library/inspect.rst:494 +#: library/inspect.rst:500 msgid "" "Return the name of the (text or binary) file in which an object was defined. " "This will fail with a :exc:`TypeError` if the object is a built-in module, " "class, or function." msgstr "" -#: library/inspect.rst:501 +#: library/inspect.rst:507 msgid "Try to guess which module an object was defined in." msgstr "" -#: library/inspect.rst:506 +#: library/inspect.rst:512 msgid "" "Return the name of the Python source file in which an object was defined. " "This will fail with a :exc:`TypeError` if the object is a built-in module, " "class, or function." msgstr "" -#: library/inspect.rst:513 +#: library/inspect.rst:519 msgid "" "Return a list of source lines and starting line number for an object. The " "argument may be a module, class, method, function, traceback, frame, or code " @@ -777,13 +789,13 @@ msgid "" "code cannot be retrieved." msgstr "" -#: library/inspect.rst:532 +#: library/inspect.rst:538 msgid "" ":exc:`OSError` is raised instead of :exc:`IOError`, now an alias of the " "former." msgstr "" -#: library/inspect.rst:527 +#: library/inspect.rst:533 msgid "" "Return the text of the source code for an object. The argument may be a " "module, class, method, function, traceback, frame, or code object. The " @@ -791,13 +803,13 @@ msgid "" "the source code cannot be retrieved." msgstr "" -#: library/inspect.rst:539 +#: library/inspect.rst:545 msgid "" "Clean up indentation from docstrings that are indented to line up with " "blocks of code." msgstr "" -#: library/inspect.rst:542 +#: library/inspect.rst:548 msgid "" "All leading whitespace is removed from the first line. Any leading " "whitespace that can be uniformly removed from the second line onwards is " @@ -805,62 +817,80 @@ msgid "" "Also, all tabs are expanded to spaces." msgstr "" -#: library/inspect.rst:551 +#: library/inspect.rst:557 msgid "Introspecting callables with the Signature object" msgstr "" -#: library/inspect.rst:555 +#: library/inspect.rst:561 msgid "" "The Signature object represents the call signature of a callable object and " "its return annotation. To retrieve a Signature object, use the :func:" "`signature` function." msgstr "" -#: library/inspect.rst:561 +#: library/inspect.rst:567 msgid "Return a :class:`Signature` object for the given ``callable``::" msgstr "" -#: library/inspect.rst:578 +#: library/inspect.rst:584 msgid "" "Accepts a wide range of Python callables, from plain functions and classes " "to :func:`functools.partial` objects." msgstr "" -#: library/inspect.rst:581 +#: library/inspect.rst:587 +msgid "" +"For objects defined in modules using stringized annotations (``from " +"__future__ import annotations``), :func:`signature` will attempt to " +"automatically un-stringize the annotations using :func:`inspect." +"get_annotations()`. The ``global``, ``locals``, and ``eval_str`` parameters " +"are passed into :func:`inspect.get_annotations()` when resolving the " +"annotations; see the documentation for :func:`inspect.get_annotations()` for " +"instructions on how to use these parameters." +msgstr "" + +#: library/inspect.rst:596 msgid "" "Raises :exc:`ValueError` if no signature can be provided, and :exc:" -"`TypeError` if that type of object is not supported." +"`TypeError` if that type of object is not supported. Also, if the " +"annotations are stringized, and ``eval_str`` is not false, the ``eval()`` " +"call(s) to un-stringize the annotations could potentially raise any kind of " +"exception." msgstr "" -#: library/inspect.rst:584 +#: library/inspect.rst:602 msgid "" "A slash(/) in the signature of a function denotes that the parameters prior " "to it are positional-only. For more info, see :ref:`the FAQ entry on " "positional-only parameters `." msgstr "" -#: library/inspect.rst:588 +#: library/inspect.rst:606 msgid "" "``follow_wrapped`` parameter. Pass ``False`` to get a signature of " "``callable`` specifically (``callable.__wrapped__`` will not be used to " "unwrap decorated callables.)" msgstr "" -#: library/inspect.rst:595 +#: library/inspect.rst:611 +msgid "``globals``, ``locals``, and ``eval_str`` parameters." +msgstr "" + +#: library/inspect.rst:616 msgid "" "Some callables may not be introspectable in certain implementations of " "Python. For example, in CPython, some built-in functions defined in C " "provide no metadata about their arguments." msgstr "" -#: library/inspect.rst:602 +#: library/inspect.rst:623 msgid "" "A Signature object represents the call signature of a function and its " "return annotation. For each parameter accepted by the function it stores a :" "class:`Parameter` object in its :attr:`parameters` collection." msgstr "" -#: library/inspect.rst:606 +#: library/inspect.rst:627 msgid "" "The optional *parameters* argument is a sequence of :class:`Parameter` " "objects, which is validated to check that there are no parameters with " @@ -869,54 +899,54 @@ msgid "" "defaults follow parameters without defaults." msgstr "" -#: library/inspect.rst:612 +#: library/inspect.rst:633 msgid "" "The optional *return_annotation* argument, can be an arbitrary Python " "object, is the \"return\" annotation of the callable." msgstr "" -#: library/inspect.rst:615 +#: library/inspect.rst:636 msgid "" "Signature objects are *immutable*. Use :meth:`Signature.replace` to make a " "modified copy." msgstr "" -#: library/inspect.rst:618 +#: library/inspect.rst:639 msgid "Signature objects are picklable and hashable." msgstr "" -#: library/inspect.rst:623 +#: library/inspect.rst:644 msgid "A special class-level marker to specify absence of a return annotation." msgstr "" -#: library/inspect.rst:627 +#: library/inspect.rst:648 msgid "" "An ordered mapping of parameters' names to the corresponding :class:" "`Parameter` objects. Parameters appear in strict definition order, " "including keyword-only parameters." msgstr "" -#: library/inspect.rst:971 +#: library/inspect.rst:996 msgid "" "Python only explicitly guaranteed that it preserved the declaration order of " "keyword-only parameters as of version 3.7, although in practice this order " "had always been preserved in Python 3." msgstr "" -#: library/inspect.rst:638 +#: library/inspect.rst:659 msgid "" "The \"return\" annotation for the callable. If the callable has no \"return" "\" annotation, this attribute is set to :attr:`Signature.empty`." msgstr "" -#: library/inspect.rst:643 +#: library/inspect.rst:664 msgid "" "Create a mapping from positional and keyword arguments to parameters. " "Returns :class:`BoundArguments` if ``*args`` and ``**kwargs`` match the " "signature, or raises a :exc:`TypeError`." msgstr "" -#: library/inspect.rst:649 +#: library/inspect.rst:670 msgid "" "Works the same way as :meth:`Signature.bind`, but allows the omission of " "some required arguments (mimics :func:`functools.partial` behavior.) " @@ -924,7 +954,7 @@ msgid "" "arguments do not match the signature." msgstr "" -#: library/inspect.rst:656 +#: library/inspect.rst:677 msgid "" "Create a new Signature instance based on the instance replace was invoked " "on. It is possible to pass different ``parameters`` and/or " @@ -933,141 +963,146 @@ msgid "" "attr:`Signature.empty`." msgstr "" -#: library/inspect.rst:673 +#: library/inspect.rst:694 msgid "" "Return a :class:`Signature` (or its subclass) object for a given callable " "``obj``. Pass ``follow_wrapped=False`` to get a signature of ``obj`` " -"without unwrapping its ``__wrapped__`` chain." +"without unwrapping its ``__wrapped__`` chain. ``globalns`` and ``localns`` " +"will be used as the namespaces when resolving annotations." msgstr "" -#: library/inspect.rst:677 +#: library/inspect.rst:699 msgid "This method simplifies subclassing of :class:`Signature`::" msgstr "" -#: library/inspect.rst:689 +#: library/inspect.rst:708 +msgid "``globalns`` and ``localns`` parameters." +msgstr "" + +#: library/inspect.rst:714 msgid "" "Parameter objects are *immutable*. Instead of modifying a Parameter object, " "you can use :meth:`Parameter.replace` to create a modified copy." msgstr "" -#: library/inspect.rst:692 +#: library/inspect.rst:717 msgid "Parameter objects are picklable and hashable." msgstr "" -#: library/inspect.rst:697 +#: library/inspect.rst:722 msgid "" "A special class-level marker to specify absence of default values and " "annotations." msgstr "" -#: library/inspect.rst:702 +#: library/inspect.rst:727 msgid "" "The name of the parameter as a string. The name must be a valid Python " "identifier." msgstr "" -#: library/inspect.rst:707 +#: library/inspect.rst:732 msgid "" "CPython generates implicit parameter names of the form ``.0`` on the code " "objects used to implement comprehensions and generator expressions." msgstr "" -#: library/inspect.rst:711 +#: library/inspect.rst:736 msgid "" "These parameter names are exposed by this module as names like ``implicit0``." msgstr "" -#: library/inspect.rst:717 +#: library/inspect.rst:742 msgid "" "The default value for the parameter. If the parameter has no default value, " "this attribute is set to :attr:`Parameter.empty`." msgstr "" -#: library/inspect.rst:722 +#: library/inspect.rst:747 msgid "" "The annotation for the parameter. If the parameter has no annotation, this " "attribute is set to :attr:`Parameter.empty`." msgstr "" -#: library/inspect.rst:727 +#: library/inspect.rst:752 msgid "" "Describes how argument values are bound to the parameter. Possible values " "(accessible via :class:`Parameter`, like ``Parameter.KEYWORD_ONLY``):" msgstr "" -#: library/inspect.rst:733 +#: library/inspect.rst:758 msgid "Name" msgstr "Nom" -#: library/inspect.rst:733 +#: library/inspect.rst:758 msgid "Meaning" msgstr "Signification" -#: library/inspect.rst:735 +#: library/inspect.rst:760 msgid "*POSITIONAL_ONLY*" msgstr "" -#: library/inspect.rst:735 +#: library/inspect.rst:760 msgid "" "Value must be supplied as a positional argument. Positional only parameters " "are those which appear before a ``/`` entry (if present) in a Python " "function definition." msgstr "" -#: library/inspect.rst:740 +#: library/inspect.rst:765 msgid "*POSITIONAL_OR_KEYWORD*" msgstr "" -#: library/inspect.rst:740 +#: library/inspect.rst:765 msgid "" "Value may be supplied as either a keyword or positional argument (this is " "the standard binding behaviour for functions implemented in Python.)" msgstr "" -#: library/inspect.rst:745 +#: library/inspect.rst:770 msgid "*VAR_POSITIONAL*" msgstr "" -#: library/inspect.rst:745 +#: library/inspect.rst:770 msgid "" "A tuple of positional arguments that aren't bound to any other parameter. " "This corresponds to a ``*args`` parameter in a Python function definition." msgstr "" -#: library/inspect.rst:750 +#: library/inspect.rst:775 msgid "*KEYWORD_ONLY*" msgstr "" -#: library/inspect.rst:750 +#: library/inspect.rst:775 msgid "" "Value must be supplied as a keyword argument. Keyword only parameters are " "those which appear after a ``*`` or ``*args`` entry in a Python function " "definition." msgstr "" -#: library/inspect.rst:755 +#: library/inspect.rst:780 msgid "*VAR_KEYWORD*" msgstr "" -#: library/inspect.rst:755 +#: library/inspect.rst:780 msgid "" "A dict of keyword arguments that aren't bound to any other parameter. This " "corresponds to a ``**kwargs`` parameter in a Python function definition." msgstr "" -#: library/inspect.rst:761 +#: library/inspect.rst:786 msgid "Example: print all keyword-only arguments without default values::" msgstr "" -#: library/inspect.rst:775 +#: library/inspect.rst:800 msgid "Describes a enum value of Parameter.kind." msgstr "" -#: library/inspect.rst:779 +#: library/inspect.rst:804 msgid "Example: print all descriptions of arguments::" msgstr "" -#: library/inspect.rst:794 +#: library/inspect.rst:819 msgid "" "Create a new Parameter instance based on the instance replaced was invoked " "on. To override a :class:`Parameter` attribute, pass the corresponding " @@ -1075,94 +1110,94 @@ msgid "" "pass :attr:`Parameter.empty`." msgstr "" -#: library/inspect.rst:812 +#: library/inspect.rst:837 msgid "" "In Python 3.3 Parameter objects were allowed to have ``name`` set to " "``None`` if their ``kind`` was set to ``POSITIONAL_ONLY``. This is no longer " "permitted." msgstr "" -#: library/inspect.rst:819 +#: library/inspect.rst:844 msgid "" "Result of a :meth:`Signature.bind` or :meth:`Signature.bind_partial` call. " "Holds the mapping of arguments to the function's parameters." msgstr "" -#: library/inspect.rst:824 +#: library/inspect.rst:849 msgid "" "A mutable mapping of parameters' names to arguments' values. Contains only " "explicitly bound arguments. Changes in :attr:`arguments` will reflect in :" "attr:`args` and :attr:`kwargs`." msgstr "" -#: library/inspect.rst:828 +#: library/inspect.rst:853 msgid "" "Should be used in conjunction with :attr:`Signature.parameters` for any " "argument processing purposes." msgstr "" -#: library/inspect.rst:833 +#: library/inspect.rst:858 msgid "" "Arguments for which :meth:`Signature.bind` or :meth:`Signature.bind_partial` " "relied on a default value are skipped. However, if needed, use :meth:" "`BoundArguments.apply_defaults` to add them." msgstr "" -#: library/inspect.rst:838 +#: library/inspect.rst:863 msgid "" ":attr:`arguments` is now of type :class:`dict`. Formerly, it was of type :" "class:`collections.OrderedDict`." msgstr "" -#: library/inspect.rst:844 +#: library/inspect.rst:869 msgid "" "A tuple of positional arguments values. Dynamically computed from the :attr:" "`arguments` attribute." msgstr "" -#: library/inspect.rst:849 +#: library/inspect.rst:874 msgid "" "A dict of keyword arguments values. Dynamically computed from the :attr:" "`arguments` attribute." msgstr "" -#: library/inspect.rst:854 +#: library/inspect.rst:879 msgid "A reference to the parent :class:`Signature` object." msgstr "" -#: library/inspect.rst:858 +#: library/inspect.rst:883 msgid "Set default values for missing arguments." msgstr "" -#: library/inspect.rst:860 +#: library/inspect.rst:885 msgid "" "For variable-positional arguments (``*args``) the default is an empty tuple." msgstr "" -#: library/inspect.rst:863 +#: library/inspect.rst:888 msgid "" "For variable-keyword arguments (``**kwargs``) the default is an empty dict." msgstr "" -#: library/inspect.rst:876 +#: library/inspect.rst:901 msgid "" "The :attr:`args` and :attr:`kwargs` properties can be used to invoke " "functions::" msgstr "" -#: library/inspect.rst:889 +#: library/inspect.rst:914 msgid ":pep:`362` - Function Signature Object." msgstr "" -#: library/inspect.rst:890 +#: library/inspect.rst:915 msgid "The detailed specification, implementation details and examples." msgstr "" -#: library/inspect.rst:896 +#: library/inspect.rst:921 msgid "Classes and functions" msgstr "Classes et fonctions" -#: library/inspect.rst:900 +#: library/inspect.rst:925 msgid "" "Arrange the given list of classes into a hierarchy of nested lists. Where a " "nested list appears, it contains classes derived from the class whose entry " @@ -1173,7 +1208,7 @@ msgid "" "will appear multiple times." msgstr "" -#: library/inspect.rst:911 +#: library/inspect.rst:936 msgid "" "Get the names and default values of a Python function's parameters. A :term:" "`named tuple` ``ArgSpec(args, varargs, keywords, defaults)`` is returned. " @@ -1184,33 +1219,33 @@ msgid "" "in *args*." msgstr "" -#: library/inspect.rst:919 +#: library/inspect.rst:944 msgid "" "Use :func:`getfullargspec` for an updated API that is usually a drop-in " "replacement, but also correctly handles function annotations and keyword-" "only parameters." msgstr "" -#: library/inspect.rst:924 +#: library/inspect.rst:949 msgid "" "Alternatively, use :func:`signature` and :ref:`Signature Object `, which provide a more structured introspection API for " "callables." msgstr "" -#: library/inspect.rst:931 +#: library/inspect.rst:956 msgid "" "Get the names and default values of a Python function's parameters. A :term:" "`named tuple` is returned:" msgstr "" -#: library/inspect.rst:934 +#: library/inspect.rst:959 msgid "" "``FullArgSpec(args, varargs, varkw, defaults, kwonlyargs, kwonlydefaults, " "annotations)``" msgstr "" -#: library/inspect.rst:937 +#: library/inspect.rst:962 msgid "" "*args* is a list of the positional parameter names. *varargs* is the name of " "the ``*`` parameter or ``None`` if arbitrary positional arguments are not " @@ -1225,7 +1260,7 @@ msgid "" "report the function return value annotation (if any)." msgstr "" -#: library/inspect.rst:952 +#: library/inspect.rst:977 msgid "" "Note that :func:`signature` and :ref:`Signature Object ` provide the recommended API for callable introspection, and support " @@ -1235,14 +1270,14 @@ msgid "" "``inspect`` module API." msgstr "" -#: library/inspect.rst:959 +#: library/inspect.rst:984 msgid "" "This function is now based on :func:`signature`, but still ignores " "``__wrapped__`` attributes and includes the already bound first parameter in " "the signature output for bound methods." msgstr "" -#: library/inspect.rst:964 +#: library/inspect.rst:989 msgid "" "This method was previously documented as deprecated in favour of :func:" "`signature` in Python 3.5, but that decision has been reversed in order to " @@ -1250,7 +1285,7 @@ msgid "" "code migrating away from the legacy :func:`getargspec` API." msgstr "" -#: library/inspect.rst:979 +#: library/inspect.rst:1004 msgid "" "Get information about arguments passed into a particular frame. A :term:" "`named tuple` ``ArgInfo(args, varargs, keywords, locals)`` is returned. " @@ -1259,47 +1294,47 @@ msgid "" "dictionary of the given frame." msgstr "" -#: library/inspect.rst:1023 +#: library/inspect.rst:1048 msgid "This function was inadvertently marked as deprecated in Python 3.5." msgstr "" -#: library/inspect.rst:991 +#: library/inspect.rst:1016 msgid "" "Format a pretty argument spec from the values returned by :func:" "`getfullargspec`." msgstr "" -#: library/inspect.rst:994 +#: library/inspect.rst:1019 msgid "" "The first seven arguments are (``args``, ``varargs``, ``varkw``, " "``defaults``, ``kwonlyargs``, ``kwonlydefaults``, ``annotations``)." msgstr "" -#: library/inspect.rst:997 +#: library/inspect.rst:1022 msgid "" "The other six arguments are functions that are called to turn argument " "names, ``*`` argument name, ``**`` argument name, default values, return " "annotation and individual annotations into strings, respectively." msgstr "" -#: library/inspect.rst:1001 +#: library/inspect.rst:1026 msgid "For example:" msgstr "Par exemple :" -#: library/inspect.rst:1010 +#: library/inspect.rst:1035 msgid "" "Use :func:`signature` and :ref:`Signature Object `, which provide a better introspecting API for callables." msgstr "" -#: library/inspect.rst:1018 +#: library/inspect.rst:1043 msgid "" "Format a pretty argument spec from the four values returned by :func:" "`getargvalues`. The format\\* arguments are the corresponding optional " "formatting functions that are called to turn names and values into strings." msgstr "" -#: library/inspect.rst:1028 +#: library/inspect.rst:1053 msgid "" "Return a tuple of class cls's base classes, including cls, in method " "resolution order. No class appears more than once in this tuple. Note that " @@ -1307,7 +1342,7 @@ msgid "" "user-defined metatype is in use, cls will be the first element of the tuple." msgstr "" -#: library/inspect.rst:1036 +#: library/inspect.rst:1061 msgid "" "Bind the *args* and *kwds* to the argument names of the Python function or " "method *func*, as if it was called with them. For bound methods, bind also " @@ -1320,11 +1355,11 @@ msgid "" "example::" msgstr "" -#: library/inspect.rst:1059 +#: library/inspect.rst:1084 msgid "Use :meth:`Signature.bind` and :meth:`Signature.bind_partial` instead." msgstr "" -#: library/inspect.rst:1065 +#: library/inspect.rst:1090 msgid "" "Get the mapping of external name references in a Python function or method " "*func* to their current values. A :term:`named tuple` " @@ -1336,18 +1371,18 @@ msgid "" "builtins." msgstr "" -#: library/inspect.rst:1074 +#: library/inspect.rst:1099 msgid "" ":exc:`TypeError` is raised if *func* is not a Python function or method." msgstr "" -#: library/inspect.rst:1081 +#: library/inspect.rst:1106 msgid "" "Get the object wrapped by *func*. It follows the chain of :attr:" "`__wrapped__` attributes returning the last object in the chain." msgstr "" -#: library/inspect.rst:1084 +#: library/inspect.rst:1109 msgid "" "*stop* is an optional callback accepting an object in the wrapper chain as " "its sole argument that allows the unwrapping to be terminated early if the " @@ -1357,15 +1392,117 @@ msgid "" "``__signature__`` attribute defined." msgstr "" -#: library/inspect.rst:1091 +#: library/inspect.rst:1116 msgid ":exc:`ValueError` is raised if a cycle is encountered." msgstr "" -#: library/inspect.rst:1099 +#: library/inspect.rst:1123 +msgid "Compute the annotations dict for an object." +msgstr "" + +#: library/inspect.rst:1125 +msgid "" +"``obj`` may be a callable, class, or module. Passing in an object of any " +"other type raises :exc:`TypeError`." +msgstr "" + +#: library/inspect.rst:1128 +msgid "" +"Returns a dict. ``get_annotations()`` returns a new dict every time it's " +"called; calling it twice on the same object will return two different but " +"equivalent dicts." +msgstr "" + +#: library/inspect.rst:1132 +msgid "This function handles several details for you:" +msgstr "" + +#: library/inspect.rst:1134 +msgid "" +"If ``eval_str`` is true, values of type ``str`` will be un-stringized using :" +"func:`eval()`. This is intended for use with stringized annotations (``from " +"__future__ import annotations``)." +msgstr "" + +#: library/inspect.rst:1138 +msgid "" +"If ``obj`` doesn't have an annotations dict, returns an empty dict. " +"(Functions and methods always have an annotations dict; classes, modules, " +"and other types of callables may not.)" +msgstr "" + +#: library/inspect.rst:1142 +msgid "" +"Ignores inherited annotations on classes. If a class doesn't have its own " +"annotations dict, returns an empty dict." +msgstr "" + +#: library/inspect.rst:1144 +msgid "" +"All accesses to object members and dict values are done using ``getattr()`` " +"and ``dict.get()`` for safety." +msgstr "" + +#: library/inspect.rst:1146 +msgid "Always, always, always returns a freshly-created dict." +msgstr "" + +#: library/inspect.rst:1148 +msgid "" +"``eval_str`` controls whether or not values of type ``str`` are replaced " +"with the result of calling :func:`eval()` on those values:" +msgstr "" + +#: library/inspect.rst:1151 +msgid "" +"If eval_str is true, :func:`eval()` is called on values of type ``str``. " +"(Note that ``get_annotations`` doesn't catch exceptions; if :func:`eval()` " +"raises an exception, it will unwind the stack past the ``get_annotations`` " +"call.)" +msgstr "" + +#: library/inspect.rst:1155 +msgid "" +"If eval_str is false (the default), values of type ``str`` are unchanged." +msgstr "" + +#: library/inspect.rst:1157 +msgid "" +"``globals`` and ``locals`` are passed in to :func:`eval()`; see the " +"documentation for :func:`eval()` for more information. If ``globals`` or " +"``locals`` is ``None``, this function may replace that value with a context-" +"specific default, contingent on ``type(obj)``:" +msgstr "" + +#: library/inspect.rst:1162 +msgid "If ``obj`` is a module, ``globals`` defaults to ``obj.__dict__``." +msgstr "" + +#: library/inspect.rst:1163 +msgid "" +"If ``obj`` is a class, ``globals`` defaults to ``sys.modules[obj.__module__]." +"__dict__`` and ``locals`` defaults to the ``obj`` class namespace." +msgstr "" + +#: library/inspect.rst:1166 +msgid "" +"If ``obj`` is a callable, ``globals`` defaults to ``obj.__globals__``, " +"although if ``obj`` is a wrapped function (using ``functools." +"update_wrapper()``) it is first unwrapped." +msgstr "" + +#: library/inspect.rst:1170 +msgid "" +"Calling ``get_annotations`` is best practice for accessing the annotations " +"dict of any object. See :ref:`annotations-howto` for more information on " +"annotations best practices." +msgstr "" + +#: library/inspect.rst:1180 msgid "The interpreter stack" msgstr "" -#: library/inspect.rst:1101 +#: library/inspect.rst:1182 msgid "" "When the following functions return \"frame records,\" each record is a :" "term:`named tuple` ``FrameInfo(frame, filename, lineno, function, " @@ -1375,11 +1512,11 @@ msgid "" "list." msgstr "" -#: library/inspect.rst:1109 +#: library/inspect.rst:1190 msgid "Return a named tuple instead of a tuple." msgstr "" -#: library/inspect.rst:1114 +#: library/inspect.rst:1195 msgid "" "Keeping references to frame objects, as found in the first element of the " "frame records these functions return, can cause your program to create " @@ -1391,7 +1528,7 @@ msgid "" "consumption which occurs." msgstr "" -#: library/inspect.rst:1122 +#: library/inspect.rst:1203 msgid "" "Though the cycle detector will catch these, destruction of the frames (and " "local variables) can be made deterministic by removing the cycle in a :" @@ -1399,27 +1536,27 @@ msgid "" "disabled when Python was compiled or using :func:`gc.disable`. For example::" msgstr "" -#: library/inspect.rst:1134 +#: library/inspect.rst:1215 msgid "" "If you want to keep the frame around (for example to print a traceback " "later), you can also break reference cycles by using the :meth:`frame.clear` " "method." msgstr "" -#: library/inspect.rst:1138 +#: library/inspect.rst:1219 msgid "" "The optional *context* argument supported by most of these functions " "specifies the number of lines of context to return, which are centered " "around the current line." msgstr "" -#: library/inspect.rst:1145 +#: library/inspect.rst:1226 msgid "" "Get information about a frame or traceback object. A :term:`named tuple` " "``Traceback(filename, lineno, function, code_context, index)`` is returned." msgstr "" -#: library/inspect.rst:1151 +#: library/inspect.rst:1232 msgid "" "Get a list of frame records for a frame and all outer frames. These frames " "represent the calls that lead to the creation of *frame*. The first entry in " @@ -1427,13 +1564,13 @@ msgid "" "outermost call on *frame*'s stack." msgstr "" -#: library/inspect.rst:1169 library/inspect.rst:1206 +#: library/inspect.rst:1250 library/inspect.rst:1287 msgid "" "A list of :term:`named tuples ` ``FrameInfo(frame, filename, " "lineno, function, code_context, index)`` is returned." msgstr "" -#: library/inspect.rst:1164 +#: library/inspect.rst:1245 msgid "" "Get a list of frame records for a traceback's frame and all inner frames. " "These frames represent calls made as a consequence of *frame*. The first " @@ -1441,11 +1578,11 @@ msgid "" "the exception was raised." msgstr "" -#: library/inspect.rst:1177 +#: library/inspect.rst:1258 msgid "Return the frame object for the caller's stack frame." msgstr "" -#: library/inspect.rst:1181 +#: library/inspect.rst:1262 msgid "" "This function relies on Python stack frame support in the interpreter, which " "isn't guaranteed to exist in all implementations of Python. If running in " @@ -1453,14 +1590,14 @@ msgid "" "``None``." msgstr "" -#: library/inspect.rst:1189 +#: library/inspect.rst:1270 msgid "" "Return a list of frame records for the caller's stack. The first entry in " "the returned list represents the caller; the last entry represents the " "outermost call on the stack." msgstr "" -#: library/inspect.rst:1201 +#: library/inspect.rst:1282 msgid "" "Return a list of frame records for the stack between the current frame and " "the frame in which an exception currently being handled was raised in. The " @@ -1468,11 +1605,11 @@ msgid "" "where the exception was raised." msgstr "" -#: library/inspect.rst:1213 +#: library/inspect.rst:1294 msgid "Fetching attributes statically" msgstr "" -#: library/inspect.rst:1215 +#: library/inspect.rst:1296 msgid "" "Both :func:`getattr` and :func:`hasattr` can trigger code execution when " "fetching or checking for the existence of attributes. Descriptors, like " @@ -1480,20 +1617,20 @@ msgid "" "`__getattribute__` may be called." msgstr "" -#: library/inspect.rst:1220 +#: library/inspect.rst:1301 msgid "" "For cases where you want passive introspection, like documentation tools, " "this can be inconvenient. :func:`getattr_static` has the same signature as :" "func:`getattr` but avoids executing code when it fetches attributes." msgstr "" -#: library/inspect.rst:1226 +#: library/inspect.rst:1307 msgid "" "Retrieve attributes without triggering dynamic lookup via the descriptor " "protocol, :meth:`__getattr__` or :meth:`__getattribute__`." msgstr "" -#: library/inspect.rst:1229 +#: library/inspect.rst:1310 msgid "" "Note: this function may not be able to retrieve all attributes that getattr " "can fetch (like dynamically created attributes) and may find attributes that " @@ -1501,31 +1638,31 @@ msgid "" "return descriptors objects instead of instance members." msgstr "" -#: library/inspect.rst:1235 +#: library/inspect.rst:1316 msgid "" "If the instance :attr:`~object.__dict__` is shadowed by another member (for " "example a property) then this function will be unable to find instance " "members." msgstr "" -#: library/inspect.rst:1241 +#: library/inspect.rst:1322 msgid "" ":func:`getattr_static` does not resolve descriptors, for example slot " "descriptors or getset descriptors on objects implemented in C. The " "descriptor object is returned instead of the underlying attribute." msgstr "" -#: library/inspect.rst:1245 +#: library/inspect.rst:1326 msgid "" "You can handle these with code like the following. Note that for arbitrary " "getset descriptors invoking these may trigger code execution::" msgstr "" -#: library/inspect.rst:1271 +#: library/inspect.rst:1352 msgid "Current State of Generators and Coroutines" msgstr "" -#: library/inspect.rst:1273 +#: library/inspect.rst:1354 msgid "" "When implementing coroutine schedulers and for other advanced uses of " "generators, it is useful to determine whether a generator is currently " @@ -1534,31 +1671,31 @@ msgid "" "generator to be determined easily." msgstr "" -#: library/inspect.rst:1281 +#: library/inspect.rst:1362 msgid "Get current state of a generator-iterator." msgstr "" -#: library/inspect.rst:1302 +#: library/inspect.rst:1383 msgid "Possible states are:" msgstr "" -#: library/inspect.rst:1284 +#: library/inspect.rst:1365 msgid "GEN_CREATED: Waiting to start execution." msgstr "" -#: library/inspect.rst:1285 +#: library/inspect.rst:1366 msgid "GEN_RUNNING: Currently being executed by the interpreter." msgstr "" -#: library/inspect.rst:1286 +#: library/inspect.rst:1367 msgid "GEN_SUSPENDED: Currently suspended at a yield expression." msgstr "" -#: library/inspect.rst:1287 +#: library/inspect.rst:1368 msgid "GEN_CLOSED: Execution has completed." msgstr "" -#: library/inspect.rst:1293 +#: library/inspect.rst:1374 msgid "" "Get current state of a coroutine object. The function is intended to be " "used with coroutine objects created by :keyword:`async def` functions, but " @@ -1566,30 +1703,30 @@ msgid "" "``cr_frame`` attributes." msgstr "" -#: library/inspect.rst:1299 +#: library/inspect.rst:1380 msgid "CORO_CREATED: Waiting to start execution." msgstr "" -#: library/inspect.rst:1300 +#: library/inspect.rst:1381 msgid "CORO_RUNNING: Currently being executed by the interpreter." msgstr "" -#: library/inspect.rst:1301 +#: library/inspect.rst:1382 msgid "CORO_SUSPENDED: Currently suspended at an await expression." msgstr "" -#: library/inspect.rst:1302 +#: library/inspect.rst:1383 msgid "CORO_CLOSED: Execution has completed." msgstr "" -#: library/inspect.rst:1306 +#: library/inspect.rst:1387 msgid "" "The current internal state of the generator can also be queried. This is " "mostly useful for testing purposes, to ensure that internal state is being " "updated as expected:" msgstr "" -#: library/inspect.rst:1312 +#: library/inspect.rst:1393 msgid "" "Get the mapping of live local variables in *generator* to their current " "values. A dictionary is returned that maps from variable names to values. " @@ -1597,14 +1734,14 @@ msgid "" "generator, and all the same caveats apply." msgstr "" -#: library/inspect.rst:1317 +#: library/inspect.rst:1398 msgid "" "If *generator* is a :term:`generator` with no currently associated frame, " "then an empty dictionary is returned. :exc:`TypeError` is raised if " "*generator* is not a Python generator object." msgstr "" -#: library/inspect.rst:1323 +#: library/inspect.rst:1404 msgid "" "This function relies on the generator exposing a Python stack frame for " "introspection, which isn't guaranteed to be the case in all implementations " @@ -1612,76 +1749,76 @@ msgid "" "dictionary." msgstr "" -#: library/inspect.rst:1332 +#: library/inspect.rst:1413 msgid "" "This function is analogous to :func:`~inspect.getgeneratorlocals`, but works " "for coroutine objects created by :keyword:`async def` functions." msgstr "" -#: library/inspect.rst:1341 +#: library/inspect.rst:1422 msgid "Code Objects Bit Flags" msgstr "" -#: library/inspect.rst:1343 +#: library/inspect.rst:1424 msgid "" "Python code objects have a ``co_flags`` attribute, which is a bitmap of the " "following flags:" msgstr "" -#: library/inspect.rst:1348 +#: library/inspect.rst:1429 msgid "The code object is optimized, using fast locals." msgstr "" -#: library/inspect.rst:1352 +#: library/inspect.rst:1433 msgid "" "If set, a new dict will be created for the frame's ``f_locals`` when the " "code object is executed." msgstr "" -#: library/inspect.rst:1357 +#: library/inspect.rst:1438 msgid "The code object has a variable positional parameter (``*args``-like)." msgstr "" -#: library/inspect.rst:1361 +#: library/inspect.rst:1442 msgid "The code object has a variable keyword parameter (``**kwargs``-like)." msgstr "" -#: library/inspect.rst:1365 +#: library/inspect.rst:1446 msgid "The flag is set when the code object is a nested function." msgstr "" -#: library/inspect.rst:1369 +#: library/inspect.rst:1450 msgid "" "The flag is set when the code object is a generator function, i.e. a " "generator object is returned when the code object is executed." msgstr "" -#: library/inspect.rst:1374 +#: library/inspect.rst:1455 msgid "The flag is set if there are no free or cell variables." msgstr "" -#: library/inspect.rst:1378 +#: library/inspect.rst:1459 msgid "" "The flag is set when the code object is a coroutine function. When the code " "object is executed it returns a coroutine object. See :pep:`492` for more " "details." msgstr "" -#: library/inspect.rst:1386 +#: library/inspect.rst:1467 msgid "" "The flag is used to transform generators into generator-based coroutines. " "Generator objects with this flag can be used in ``await`` expression, and " "can ``yield from`` coroutine objects. See :pep:`492` for more details." msgstr "" -#: library/inspect.rst:1395 +#: library/inspect.rst:1476 msgid "" "The flag is set when the code object is an asynchronous generator function. " "When the code object is executed it returns an asynchronous generator " "object. See :pep:`525` for more details." msgstr "" -#: library/inspect.rst:1402 +#: library/inspect.rst:1483 msgid "" "The flags are specific to CPython, and may not be defined in other Python " "implementations. Furthermore, the flags are an implementation detail, and " @@ -1689,24 +1826,24 @@ msgid "" "use public APIs from the :mod:`inspect` module for any introspection needs." msgstr "" -#: library/inspect.rst:1412 +#: library/inspect.rst:1493 msgid "Command Line Interface" msgstr "Interface en ligne de commande" -#: library/inspect.rst:1414 +#: library/inspect.rst:1495 msgid "" "The :mod:`inspect` module also provides a basic introspection capability " "from the command line." msgstr "" -#: library/inspect.rst:1419 +#: library/inspect.rst:1500 msgid "" "By default, accepts the name of a module and prints the source of that " "module. A class or function within the module can be printed instead by " "appended a colon and the qualified name of the target object." msgstr "" -#: library/inspect.rst:1425 +#: library/inspect.rst:1506 msgid "" "Print information about the specified object rather than the source code" msgstr "" diff --git a/library/internet.po b/library/internet.po index c67e948f9..9027c63a6 100644 --- a/library/internet.po +++ b/library/internet.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-09-28 13:13+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -19,8 +19,9 @@ msgid "Internet Protocols and Support" msgstr "Gestion des protocoles internet" #: library/internet.rst:14 +#, fuzzy msgid "" -"The modules described in this chapter implement Internet protocols and " +"The modules described in this chapter implement internet protocols and " "support for related technology. They are all implemented in Python. Most of " "these modules require the presence of the system-dependent module :mod:" "`socket`, which is currently supported on most popular platforms. Here is " diff --git a/library/intro.po b/library/intro.po index f4effcd90..93076b1f8 100644 --- a/library/intro.po +++ b/library/intro.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-02-27 11:44+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -136,9 +136,10 @@ msgstr "" "pas l'existence de la fonction sur un système d'exploitation particulier." #: library/intro.rst:60 +#, fuzzy msgid "" "If not separately noted, all functions that claim \"Availability: Unix\" are " -"supported on Mac OS X, which builds on a Unix core." +"supported on macOS, which builds on a Unix core." msgstr "" "Si ce n'est pas mentionné séparément, toutes les fonctions se réclamant " "\"Disponibilité : Unix\" sont gérées sur Mac OS X, qui est basé sur Unix." diff --git a/library/io.po b/library/io.po index 60da3ca57..331cf4219 100644 --- a/library/io.po +++ b/library/io.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-07-03 11:13+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -60,7 +60,7 @@ msgid "" "since :exc:`IOError` is now an alias of :exc:`OSError`." msgstr "" -#: library/io.rst:771 library/io.rst:1028 +#: library/io.rst:850 library/io.rst:1112 msgid "Text I/O" msgstr "" @@ -89,7 +89,7 @@ msgid "" "`TextIOBase`." msgstr "" -#: library/io.rst:1016 +#: library/io.rst:1100 msgid "Binary I/O" msgstr "" @@ -142,45 +142,110 @@ msgid "" "The raw stream API is described in detail in the docs of :class:`RawIOBase`." msgstr "" -#: library/io.rst:110 -msgid "High-level Module Interface" +#: library/io.rst:112 +msgid "Text Encoding" msgstr "" #: library/io.rst:114 msgid "" +"The default encoding of :class:`TextIOWrapper` and :func:`open` is locale-" +"specific (:func:`locale.getpreferredencoding(False) `)." +msgstr "" + +#: library/io.rst:117 +msgid "" +"However, many developers forget to specify the encoding when opening text " +"files encoded in UTF-8 (e.g. JSON, TOML, Markdown, etc...) since most Unix " +"platforms use UTF-8 locale by default. This causes bugs because the locale " +"encoding is not UTF-8 for most Windows users. For example::" +msgstr "" + +#: library/io.rst:126 +msgid "" +"Additionally, while there is no concrete plan as of yet, Python may change " +"the default text file encoding to UTF-8 in the future." +msgstr "" + +#: library/io.rst:129 +msgid "" +"Accordingly, it is highly recommended that you specify the encoding " +"explicitly when opening text files. If you want to use UTF-8, pass " +"``encoding=\"utf-8\"``. To use the current locale encoding, ``encoding=" +"\"locale\"`` is supported in Python 3.10." +msgstr "" + +#: library/io.rst:134 +msgid "" +"When you need to run existing code on Windows that attempts to opens UTF-8 " +"files using the default locale encoding, you can enable the UTF-8 mode. See :" +"ref:`UTF-8 mode on Windows `." +msgstr "" + +#: library/io.rst:141 +msgid "Opt-in EncodingWarning" +msgstr "" + +#: library/io.rst:143 +msgid "See :pep:`597` for more details." +msgstr "" + +#: library/io.rst:146 +msgid "" +"To find where the default locale encoding is used, you can enable the ``-X " +"warn_default_encoding`` command line option or set the :envvar:" +"`PYTHONWARNDEFAULTENCODING` environment variable, which will emit an :exc:" +"`EncodingWarning` when the default encoding is used." +msgstr "" + +#: library/io.rst:151 +msgid "" +"If you are providing an API that uses :func:`open` or :class:`TextIOWrapper` " +"and passes ``encoding=None`` as a parameter, you can use :func:" +"`text_encoding` so that callers of the API will emit an :exc:" +"`EncodingWarning` if they don't pass an ``encoding``. However, please " +"consider using UTF-8 by default (i.e. ``encoding=\"utf-8\"``) for new APIs." +msgstr "" + +#: library/io.rst:160 +msgid "High-level Module Interface" +msgstr "" + +#: library/io.rst:164 +msgid "" "An int containing the default buffer size used by the module's buffered I/O " "classes. :func:`open` uses the file's blksize (as obtained by :func:`os." "stat`) if possible." msgstr "" -#: library/io.rst:121 +#: library/io.rst:171 msgid "This is an alias for the builtin :func:`open` function." msgstr "" -#: library/io.rst:123 +#: library/io.rst:173 msgid "" "Raises an :ref:`auditing event ` ``open`` with arguments ``path``, " "``mode``, ``flags``." msgstr "" -#: library/io.rst:125 +#: library/io.rst:175 msgid "" "This function raises an :ref:`auditing event ` ``open`` with " "arguments ``path``, ``mode`` and ``flags``. The ``mode`` and ``flags`` " "arguments may have been modified or inferred from the original call." msgstr "" -#: library/io.rst:132 +#: library/io.rst:182 msgid "" "Opens the provided file with mode ``'rb'``. This function should be used " "when the intent is to treat the contents as executable code." msgstr "" -#: library/io.rst:135 +#: library/io.rst:185 msgid "``path`` should be a :class:`str` and an absolute path." msgstr "" -#: library/io.rst:137 +#: library/io.rst:187 msgid "" "The behavior of this function may be overridden by an earlier call to the :c:" "func:`PyFile_SetOpenCodeHook`. However, assuming that ``path`` is a :class:" @@ -189,33 +254,62 @@ msgid "" "additional validation or preprocessing of the file." msgstr "" -#: library/io.rst:148 +#: library/io.rst:198 +msgid "" +"This is a helper function for callables that use :func:`open` or :class:" +"`TextIOWrapper` and have an ``encoding=None`` parameter." +msgstr "" + +#: library/io.rst:201 +msgid "" +"This function returns *encoding* if it is not ``None`` and ``\"locale\"`` if " +"*encoding* is ``None``." +msgstr "" + +#: library/io.rst:204 +msgid "" +"This function emits an :class:`EncodingWarning` if :data:`sys.flags." +"warn_default_encoding ` is true and *encoding* is None. " +"*stacklevel* specifies where the warning is emitted. For example::" +msgstr "" + +#: library/io.rst:214 +msgid "" +"In this example, an :class:`EncodingWarning` is emitted for the caller of " +"``read_text()``." +msgstr "" + +#: library/io.rst:217 +msgid "See :ref:`io-text-encoding` for more information." +msgstr "" + +#: library/io.rst:224 msgid "" "This is a compatibility alias for the builtin :exc:`BlockingIOError` " "exception." msgstr "" -#: library/io.rst:154 +#: library/io.rst:230 msgid "" "An exception inheriting :exc:`OSError` and :exc:`ValueError` that is raised " "when an unsupported operation is called on a stream." msgstr "" -#: library/io.rst:161 +#: library/io.rst:237 msgid ":mod:`sys`" msgstr "" -#: library/io.rst:161 +#: library/io.rst:237 msgid "" "contains the standard IO streams: :data:`sys.stdin`, :data:`sys.stdout`, " "and :data:`sys.stderr`." msgstr "" -#: library/io.rst:166 +#: library/io.rst:242 msgid "Class hierarchy" msgstr "" -#: library/io.rst:168 +#: library/io.rst:244 msgid "" "The implementation of I/O streams is organized as a hierarchy of classes. " "First :term:`abstract base classes ` (ABCs), which are " @@ -223,7 +317,7 @@ msgid "" "providing the standard stream implementations." msgstr "" -#: library/io.rst:175 +#: library/io.rst:251 msgid "" "The abstract base classes also provide default implementations of some " "methods in order to help implementation of concrete stream classes. For " @@ -231,7 +325,7 @@ msgid "" "meth:`~IOBase.readinto` and :meth:`~IOBase.readline`." msgstr "" -#: library/io.rst:180 +#: library/io.rst:256 msgid "" "At the top of the I/O hierarchy is the abstract base class :class:`IOBase`. " "It defines the basic interface to a stream. Note, however, that there is no " @@ -240,14 +334,14 @@ msgid "" "operation." msgstr "" -#: library/io.rst:185 +#: library/io.rst:261 msgid "" "The :class:`RawIOBase` ABC extends :class:`IOBase`. It deals with the " "reading and writing of bytes to a stream. :class:`FileIO` subclasses :class:" "`RawIOBase` to provide an interface to files in the machine's file system." msgstr "" -#: library/io.rst:189 +#: library/io.rst:265 msgid "" "The :class:`BufferedIOBase` ABC extends :class:`IOBase`. It deals with " "buffering on a raw binary stream (:class:`RawIOBase`). Its subclasses, :" @@ -258,7 +352,7 @@ msgid "" "class:`BytesIO`, is a stream of in-memory bytes." msgstr "" -#: library/io.rst:197 +#: library/io.rst:273 msgid "" "The :class:`TextIOBase` ABC extends :class:`IOBase`. It deals with streams " "whose bytes represent text, and handles encoding and decoding to and from " @@ -267,103 +361,103 @@ msgid "" "Finally, :class:`StringIO` is an in-memory stream for text." msgstr "" -#: library/io.rst:203 +#: library/io.rst:279 msgid "" "Argument names are not part of the specification, and only the arguments of :" "func:`open` are intended to be used as keyword arguments." msgstr "" -#: library/io.rst:206 +#: library/io.rst:282 msgid "" "The following table summarizes the ABCs provided by the :mod:`io` module:" msgstr "" -#: library/io.rst:211 +#: library/io.rst:287 msgid "ABC" msgstr "ABC" -#: library/io.rst:211 +#: library/io.rst:287 msgid "Inherits" msgstr "" -#: library/io.rst:211 +#: library/io.rst:287 msgid "Stub Methods" msgstr "" -#: library/io.rst:211 +#: library/io.rst:287 msgid "Mixin Methods and Properties" msgstr "" -#: library/io.rst:218 library/io.rst:222 +#: library/io.rst:294 library/io.rst:298 msgid ":class:`IOBase`" msgstr "" -#: library/io.rst:213 +#: library/io.rst:289 msgid "``fileno``, ``seek``, and ``truncate``" msgstr "``fileno``, ``seek``, et ``truncate``" -#: library/io.rst:213 +#: library/io.rst:289 msgid "" "``close``, ``closed``, ``__enter__``, ``__exit__``, ``flush``, ``isatty``, " "``__iter__``, ``__next__``, ``readable``, ``readline``, ``readlines``, " "``seekable``, ``tell``, ``writable``, and ``writelines``" msgstr "" -#: library/io.rst:218 +#: library/io.rst:294 msgid ":class:`RawIOBase`" msgstr "" -#: library/io.rst:218 +#: library/io.rst:294 msgid "``readinto`` and ``write``" msgstr "``readinto`` et ``write``" -#: library/io.rst:218 +#: library/io.rst:294 msgid "Inherited :class:`IOBase` methods, ``read``, and ``readall``" msgstr "" -#: library/io.rst:220 +#: library/io.rst:296 msgid ":class:`BufferedIOBase`" msgstr "" -#: library/io.rst:220 +#: library/io.rst:296 msgid "``detach``, ``read``, ``read1``, and ``write``" msgstr "``detach``, ``read``, ``read1``, et ``write``" -#: library/io.rst:220 +#: library/io.rst:296 msgid "Inherited :class:`IOBase` methods, ``readinto``, and ``readinto1``" msgstr "" -#: library/io.rst:222 +#: library/io.rst:298 msgid ":class:`TextIOBase`" msgstr "" -#: library/io.rst:222 +#: library/io.rst:298 msgid "``detach``, ``read``, ``readline``, and ``write``" msgstr "``detach``, ``read``, ``readline``, et ``write``" -#: library/io.rst:222 +#: library/io.rst:298 msgid "" "Inherited :class:`IOBase` methods, ``encoding``, ``errors``, and ``newlines``" msgstr "" -#: library/io.rst:229 +#: library/io.rst:305 msgid "I/O Base Classes" msgstr "" -#: library/io.rst:233 +#: library/io.rst:309 msgid "" "The abstract base class for all I/O classes, acting on streams of bytes. " "There is no public constructor." msgstr "" -#: library/io.rst:236 +#: library/io.rst:312 msgid "" "This class provides empty abstract implementations for many methods that " "derived classes can override selectively; the default implementations " "represent a file that cannot be read, written or seeked." msgstr "" -#: library/io.rst:241 +#: library/io.rst:317 msgid "" "Even though :class:`IOBase` does not declare :meth:`read` or :meth:`write` " "because their signatures will vary, implementations and clients should " @@ -372,20 +466,20 @@ msgid "" "they do not support are called." msgstr "" -#: library/io.rst:247 +#: library/io.rst:323 msgid "" "The basic type used for binary data read from or written to a file is :class:" "`bytes`. Other :term:`bytes-like objects ` are accepted " "as method arguments too. Text I/O classes work with :class:`str` data." msgstr "" -#: library/io.rst:251 +#: library/io.rst:327 msgid "" "Note that calling any method (even inquiries) on a closed stream is " "undefined. Implementations may raise :exc:`ValueError` in this case." msgstr "" -#: library/io.rst:254 +#: library/io.rst:330 msgid "" ":class:`IOBase` (and its subclasses) supports the iterator protocol, meaning " "that an :class:`IOBase` object can be iterated over yielding the lines in a " @@ -394,135 +488,140 @@ msgid "" "character strings). See :meth:`~IOBase.readline` below." msgstr "" -#: library/io.rst:260 +#: library/io.rst:336 msgid "" ":class:`IOBase` is also a context manager and therefore supports the :" "keyword:`with` statement. In this example, *file* is closed after the :" "keyword:`!with` statement's suite is finished---even if an exception occurs::" msgstr "" -#: library/io.rst:267 +#: library/io.rst:343 msgid ":class:`IOBase` provides these data attributes and methods:" msgstr "" -#: library/io.rst:271 +#: library/io.rst:347 msgid "" "Flush and close this stream. This method has no effect if the file is " "already closed. Once the file is closed, any operation on the file (e.g. " "reading or writing) will raise a :exc:`ValueError`." msgstr "" -#: library/io.rst:275 +#: library/io.rst:351 msgid "" "As a convenience, it is allowed to call this method more than once; only the " "first call, however, will have an effect." msgstr "" -#: library/io.rst:280 +#: library/io.rst:356 msgid "``True`` if the stream is closed." msgstr "" -#: library/io.rst:284 +#: library/io.rst:360 msgid "" "Return the underlying file descriptor (an integer) of the stream if it " "exists. An :exc:`OSError` is raised if the IO object does not use a file " "descriptor." msgstr "" -#: library/io.rst:290 +#: library/io.rst:366 msgid "" "Flush the write buffers of the stream if applicable. This does nothing for " "read-only and non-blocking streams." msgstr "" -#: library/io.rst:295 +#: library/io.rst:371 msgid "" "Return ``True`` if the stream is interactive (i.e., connected to a terminal/" "tty device)." msgstr "" -#: library/io.rst:300 +#: library/io.rst:376 msgid "" "Return ``True`` if the stream can be read from. If ``False``, :meth:`read` " "will raise :exc:`OSError`." msgstr "" -#: library/io.rst:305 +#: library/io.rst:381 msgid "" "Read and return one line from the stream. If *size* is specified, at most " "*size* bytes will be read." msgstr "" -#: library/io.rst:308 +#: library/io.rst:384 msgid "" "The line terminator is always ``b'\\n'`` for binary files; for text files, " "the *newline* argument to :func:`open` can be used to select the line " "terminator(s) recognized." msgstr "" -#: library/io.rst:314 +#: library/io.rst:390 msgid "" "Read and return a list of lines from the stream. *hint* can be specified to " "control the number of lines read: no more lines will be read if the total " "size (in bytes/characters) of all lines so far exceeds *hint*." msgstr "" -#: library/io.rst:318 +#: library/io.rst:394 +msgid "" +"*hint* values of ``0`` or less, as well as ``None``, are treated as no hint." +msgstr "" + +#: library/io.rst:397 msgid "" "Note that it's already possible to iterate on file objects using ``for line " "in file: ...`` without calling ``file.readlines()``." msgstr "" -#: library/io.rst:323 +#: library/io.rst:402 msgid "" "Change the stream position to the given byte *offset*. *offset* is " "interpreted relative to the position indicated by *whence*. The default " "value for *whence* is :data:`SEEK_SET`. Values for *whence* are:" msgstr "" -#: library/io.rst:327 +#: library/io.rst:406 msgid "" ":data:`SEEK_SET` or ``0`` -- start of the stream (the default); *offset* " "should be zero or positive" msgstr "" -#: library/io.rst:329 +#: library/io.rst:408 msgid "" ":data:`SEEK_CUR` or ``1`` -- current stream position; *offset* may be " "negative" msgstr "" -#: library/io.rst:331 +#: library/io.rst:410 msgid "" ":data:`SEEK_END` or ``2`` -- end of the stream; *offset* is usually negative" msgstr "" -#: library/io.rst:334 +#: library/io.rst:413 msgid "Return the new absolute position." msgstr "" -#: library/io.rst:847 +#: library/io.rst:926 msgid "The ``SEEK_*`` constants." msgstr "" -#: library/io.rst:339 +#: library/io.rst:418 msgid "" "Some operating systems could support additional values, like :data:`os." "SEEK_HOLE` or :data:`os.SEEK_DATA`. The valid values for a file could depend " "on it being open in text or binary mode." msgstr "" -#: library/io.rst:346 +#: library/io.rst:425 msgid "" "Return ``True`` if the stream supports random access. If ``False``, :meth:" "`seek`, :meth:`tell` and :meth:`truncate` will raise :exc:`OSError`." msgstr "" -#: library/io.rst:351 +#: library/io.rst:430 msgid "Return the current stream position." msgstr "" -#: library/io.rst:355 +#: library/io.rst:434 msgid "" "Resize the stream to the given *size* in bytes (or the current position if " "*size* is not specified). The current stream position isn't changed. This " @@ -531,36 +630,36 @@ msgid "" "additional bytes are zero-filled). The new file size is returned." msgstr "" -#: library/io.rst:362 +#: library/io.rst:441 msgid "Windows will now zero-fill files when extending." msgstr "" -#: library/io.rst:367 +#: library/io.rst:446 msgid "" "Return ``True`` if the stream supports writing. If ``False``, :meth:`write` " "and :meth:`truncate` will raise :exc:`OSError`." msgstr "" -#: library/io.rst:372 +#: library/io.rst:451 msgid "" "Write a list of lines to the stream. Line separators are not added, so it " "is usual for each of the lines provided to have a line separator at the end." msgstr "" -#: library/io.rst:378 +#: library/io.rst:457 msgid "" "Prepare for object destruction. :class:`IOBase` provides a default " "implementation of this method that calls the instance's :meth:`~IOBase." "close` method." msgstr "" -#: library/io.rst:385 +#: library/io.rst:464 msgid "" "Base class for raw binary streams. It inherits :class:`IOBase`. There is " "no public constructor." msgstr "" -#: library/io.rst:388 +#: library/io.rst:467 msgid "" "Raw binary streams typically provide low-level access to an underlying OS " "device or API, and do not try to encapsulate it in high-level primitives " @@ -568,13 +667,13 @@ msgid "" "text streams, described later in this page)." msgstr "" -#: library/io.rst:393 +#: library/io.rst:472 msgid "" ":class:`RawIOBase` provides these methods in addition to those from :class:" "`IOBase`:" msgstr "" -#: library/io.rst:398 +#: library/io.rst:477 msgid "" "Read up to *size* bytes from the object and return them. As a convenience, " "if *size* is unspecified or -1, all bytes until EOF are returned. Otherwise, " @@ -582,25 +681,25 @@ msgid "" "if the operating system call returns fewer than *size* bytes." msgstr "" -#: library/io.rst:403 +#: library/io.rst:482 msgid "" "If 0 bytes are returned, and *size* was not 0, this indicates end of file. " "If the object is in non-blocking mode and no bytes are available, ``None`` " "is returned." msgstr "" -#: library/io.rst:407 +#: library/io.rst:486 msgid "" "The default implementation defers to :meth:`readall` and :meth:`readinto`." msgstr "" -#: library/io.rst:412 +#: library/io.rst:491 msgid "" "Read and return all the bytes from the stream until EOF, using multiple " "calls to the stream if necessary." msgstr "" -#: library/io.rst:417 +#: library/io.rst:496 msgid "" "Read bytes into a pre-allocated, writable :term:`bytes-like object` *b*, and " "return the number of bytes read. For example, *b* might be a :class:" @@ -608,7 +707,7 @@ msgid "" "available, ``None`` is returned." msgstr "" -#: library/io.rst:425 +#: library/io.rst:504 msgid "" "Write the given :term:`bytes-like object`, *b*, to the underlying raw " "stream, and return the number of bytes written. This can be less than the " @@ -619,13 +718,13 @@ msgid "" "the implementation should only access *b* during the method call." msgstr "" -#: library/io.rst:438 +#: library/io.rst:517 msgid "" "Base class for binary streams that support some kind of buffering. It " "inherits :class:`IOBase`. There is no public constructor." msgstr "" -#: library/io.rst:441 +#: library/io.rst:520 msgid "" "The main difference with :class:`RawIOBase` is that methods :meth:`read`, :" "meth:`readinto` and :meth:`write` will try (respectively) to read as much " @@ -633,7 +732,7 @@ msgid "" "perhaps more than one system call." msgstr "" -#: library/io.rst:446 +#: library/io.rst:525 msgid "" "In addition, those methods can raise :exc:`BlockingIOError` if the " "underlying raw stream is in non-blocking mode and cannot take or give enough " @@ -641,55 +740,55 @@ msgid "" "``None``." msgstr "" -#: library/io.rst:451 +#: library/io.rst:530 msgid "" "Besides, the :meth:`read` method does not have a default implementation that " "defers to :meth:`readinto`." msgstr "" -#: library/io.rst:454 +#: library/io.rst:533 msgid "" "A typical :class:`BufferedIOBase` implementation should not inherit from a :" "class:`RawIOBase` implementation, but wrap one, like :class:`BufferedWriter` " "and :class:`BufferedReader` do." msgstr "" -#: library/io.rst:458 +#: library/io.rst:537 msgid "" ":class:`BufferedIOBase` provides or overrides these data attributes and " "methods in addition to those from :class:`IOBase`:" msgstr "" -#: library/io.rst:463 +#: library/io.rst:542 msgid "" "The underlying raw stream (a :class:`RawIOBase` instance) that :class:" "`BufferedIOBase` deals with. This is not part of the :class:" "`BufferedIOBase` API and may not exist on some implementations." msgstr "" -#: library/io.rst:469 +#: library/io.rst:548 msgid "Separate the underlying raw stream from the buffer and return it." msgstr "" -#: library/io.rst:471 +#: library/io.rst:550 msgid "" "After the raw stream has been detached, the buffer is in an unusable state." msgstr "" -#: library/io.rst:474 +#: library/io.rst:553 msgid "" "Some buffers, like :class:`BytesIO`, do not have the concept of a single raw " "stream to return from this method. They raise :exc:`UnsupportedOperation`." msgstr "" -#: library/io.rst:482 +#: library/io.rst:561 msgid "" "Read and return up to *size* bytes. If the argument is omitted, ``None``, " "or negative, data is read and returned until EOF is reached. An empty :" "class:`bytes` object is returned if the stream is already at EOF." msgstr "" -#: library/io.rst:486 +#: library/io.rst:565 msgid "" "If the argument is positive, and the underlying raw stream is not " "interactive, multiple raw reads may be issued to satisfy the byte count " @@ -698,13 +797,13 @@ msgid "" "imminent." msgstr "" -#: library/io.rst:515 library/io.rst:525 +#: library/io.rst:594 library/io.rst:604 msgid "" "A :exc:`BlockingIOError` is raised if the underlying raw stream is in non " "blocking-mode, and has no data available at the moment." msgstr "" -#: library/io.rst:497 +#: library/io.rst:576 msgid "" "Read and return up to *size* bytes, with at most one call to the underlying " "raw stream's :meth:`~RawIOBase.read` (or :meth:`~RawIOBase.readinto`) " @@ -712,26 +811,26 @@ msgid "" "top of a :class:`BufferedIOBase` object." msgstr "" -#: library/io.rst:503 +#: library/io.rst:582 msgid "" "If *size* is ``-1`` (the default), an arbitrary number of bytes are returned " "(more than zero unless EOF is reached)." msgstr "" -#: library/io.rst:508 +#: library/io.rst:587 msgid "" "Read bytes into a pre-allocated, writable :term:`bytes-like object` *b* and " "return the number of bytes read. For example, *b* might be a :class:" "`bytearray`." msgstr "" -#: library/io.rst:512 +#: library/io.rst:591 msgid "" "Like :meth:`read`, multiple reads may be issued to the underlying raw " "stream, unless the latter is interactive." msgstr "" -#: library/io.rst:520 +#: library/io.rst:599 msgid "" "Read bytes into a pre-allocated, writable :term:`bytes-like object` *b*, " "using at most one call to the underlying raw stream's :meth:`~RawIOBase." @@ -739,7 +838,7 @@ msgid "" "read." msgstr "" -#: library/io.rst:532 +#: library/io.rst:611 msgid "" "Write the given :term:`bytes-like object`, *b*, and return the number of " "bytes written (always equal to the length of *b* in bytes, since if the " @@ -748,41 +847,41 @@ msgid "" "or held in a buffer for performance and latency reasons." msgstr "" -#: library/io.rst:539 +#: library/io.rst:618 msgid "" "When in non-blocking mode, a :exc:`BlockingIOError` is raised if the data " "needed to be written to the raw stream but it couldn't accept all the data " "without blocking." msgstr "" -#: library/io.rst:543 +#: library/io.rst:622 msgid "" "The caller may release or mutate *b* after this method returns, so the " "implementation should only access *b* during the method call." msgstr "" -#: library/io.rst:548 +#: library/io.rst:627 msgid "Raw File I/O" msgstr "" -#: library/io.rst:552 +#: library/io.rst:631 msgid "" "A raw binary stream representing an OS-level file containing bytes data. It " "inherits :class:`RawIOBase`." msgstr "" -#: library/io.rst:555 +#: library/io.rst:634 msgid "The *name* can be one of two things:" msgstr "" -#: library/io.rst:557 +#: library/io.rst:636 msgid "" "a character string or :class:`bytes` object representing the path to the " "file which will be opened. In this case closefd must be ``True`` (the " "default) otherwise an error will be raised." msgstr "" -#: library/io.rst:560 +#: library/io.rst:639 msgid "" "an integer representing the number of an existing OS-level file descriptor " "to which the resulting :class:`FileIO` object will give access. When the " @@ -790,7 +889,7 @@ msgid "" "set to ``False``." msgstr "" -#: library/io.rst:565 +#: library/io.rst:644 msgid "" "The *mode* can be ``'r'``, ``'w'``, ``'x'`` or ``'a'`` for reading " "(default), writing, exclusive creation or appending. The file will be " @@ -801,13 +900,13 @@ msgid "" "``'+'`` to the mode to allow simultaneous reading and writing." msgstr "" -#: library/io.rst:573 +#: library/io.rst:652 msgid "" "The :meth:`read` (when called with a positive argument), :meth:`readinto` " "and :meth:`write` methods on this class will only make one system call." msgstr "" -#: library/io.rst:576 +#: library/io.rst:655 msgid "" "A custom opener can be used by passing a callable as *opener*. The " "underlying file descriptor for the file object is then obtained by calling " @@ -821,381 +920,383 @@ msgstr "" "descripteur de fichier ouvert (fournir :mod:`os.open` en temps qu'*opener* " "aura le même effet que donner ``None``)." -#: library/io.rst:582 +#: library/io.rst:661 msgid "The newly created file is :ref:`non-inheritable `." msgstr "" "Il n'est :ref:`pas possible d'hériter du fichier ` " "nouvellement créé." -#: library/io.rst:584 +#: library/io.rst:663 msgid "" "See the :func:`open` built-in function for examples on using the *opener* " "parameter." msgstr "" -#: library/io.rst:587 +#: library/io.rst:666 msgid "The *opener* parameter was added. The ``'x'`` mode was added." msgstr "" -#: library/io.rst:591 +#: library/io.rst:670 msgid "The file is now non-inheritable." msgstr "Il n'est plus possible d'hériter de *file*." -#: library/io.rst:594 +#: library/io.rst:673 msgid "" ":class:`FileIO` provides these data attributes in addition to those from :" "class:`RawIOBase` and :class:`IOBase`:" msgstr "" -#: library/io.rst:599 +#: library/io.rst:678 msgid "The mode as given in the constructor." msgstr "" -#: library/io.rst:603 +#: library/io.rst:682 msgid "" "The file name. This is the file descriptor of the file when no name is " "given in the constructor." msgstr "" -#: library/io.rst:608 +#: library/io.rst:687 msgid "Buffered Streams" msgstr "" -#: library/io.rst:610 +#: library/io.rst:689 msgid "" "Buffered I/O streams provide a higher-level interface to an I/O device than " "raw I/O does." msgstr "" -#: library/io.rst:615 +#: library/io.rst:694 msgid "" "A binary stream using an in-memory bytes buffer. It inherits :class:" "`BufferedIOBase`. The buffer is discarded when the :meth:`~IOBase.close` " "method is called." msgstr "" -#: library/io.rst:619 +#: library/io.rst:698 msgid "" "The optional argument *initial_bytes* is a :term:`bytes-like object` that " "contains initial data." msgstr "" -#: library/io.rst:622 +#: library/io.rst:701 msgid "" ":class:`BytesIO` provides or overrides these methods in addition to those " "from :class:`BufferedIOBase` and :class:`IOBase`:" msgstr "" -#: library/io.rst:627 +#: library/io.rst:706 msgid "" "Return a readable and writable view over the contents of the buffer without " "copying them. Also, mutating the view will transparently update the " "contents of the buffer::" msgstr "" -#: library/io.rst:638 +#: library/io.rst:717 msgid "" "As long as the view exists, the :class:`BytesIO` object cannot be resized or " "closed." msgstr "" -#: library/io.rst:645 +#: library/io.rst:724 msgid "Return :class:`bytes` containing the entire contents of the buffer." msgstr "" -#: library/io.rst:650 +#: library/io.rst:729 msgid "In :class:`BytesIO`, this is the same as :meth:`~BufferedIOBase.read`." msgstr "" -#: library/io.rst:695 +#: library/io.rst:774 msgid "The *size* argument is now optional." msgstr "" -#: library/io.rst:657 +#: library/io.rst:736 msgid "" "In :class:`BytesIO`, this is the same as :meth:`~BufferedIOBase.readinto`." msgstr "" -#: library/io.rst:663 +#: library/io.rst:742 msgid "" "A buffered binary stream providing higher-level access to a readable, non " "seekable :class:`RawIOBase` raw binary stream. It inherits :class:" "`BufferedIOBase`." msgstr "" -#: library/io.rst:667 +#: library/io.rst:746 msgid "" "When reading data from this object, a larger amount of data may be requested " "from the underlying raw stream, and kept in an internal buffer. The buffered " "data can then be returned directly on subsequent reads." msgstr "" -#: library/io.rst:671 +#: library/io.rst:750 msgid "" "The constructor creates a :class:`BufferedReader` for the given readable " "*raw* stream and *buffer_size*. If *buffer_size* is omitted, :data:" "`DEFAULT_BUFFER_SIZE` is used." msgstr "" -#: library/io.rst:675 +#: library/io.rst:754 msgid "" ":class:`BufferedReader` provides or overrides these methods in addition to " "those from :class:`BufferedIOBase` and :class:`IOBase`:" msgstr "" -#: library/io.rst:680 +#: library/io.rst:759 msgid "" "Return bytes from the stream without advancing the position. At most one " "single read on the raw stream is done to satisfy the call. The number of " "bytes returned may be less or more than requested." msgstr "" -#: library/io.rst:686 +#: library/io.rst:765 msgid "" "Read and return *size* bytes, or if *size* is not given or negative, until " "EOF or if the read call would block in non-blocking mode." msgstr "" -#: library/io.rst:691 +#: library/io.rst:770 msgid "" "Read and return up to *size* bytes with only one call on the raw stream. If " "at least one byte is buffered, only buffered bytes are returned. Otherwise, " "one raw stream read call is made." msgstr "" -#: library/io.rst:701 +#: library/io.rst:780 msgid "" "A buffered binary stream providing higher-level access to a writeable, non " "seekable :class:`RawIOBase` raw binary stream. It inherits :class:" "`BufferedIOBase`." msgstr "" -#: library/io.rst:705 +#: library/io.rst:784 msgid "" "When writing to this object, data is normally placed into an internal " "buffer. The buffer will be written out to the underlying :class:`RawIOBase` " "object under various conditions, including:" msgstr "" -#: library/io.rst:709 +#: library/io.rst:788 msgid "when the buffer gets too small for all pending data;" msgstr "" -#: library/io.rst:710 +#: library/io.rst:789 msgid "when :meth:`flush()` is called;" msgstr "" -#: library/io.rst:711 +#: library/io.rst:790 msgid "" "when a :meth:`seek()` is requested (for :class:`BufferedRandom` objects);" msgstr "" -#: library/io.rst:712 +#: library/io.rst:791 msgid "when the :class:`BufferedWriter` object is closed or destroyed." msgstr "" -#: library/io.rst:714 +#: library/io.rst:793 msgid "" "The constructor creates a :class:`BufferedWriter` for the given writeable " "*raw* stream. If the *buffer_size* is not given, it defaults to :data:" "`DEFAULT_BUFFER_SIZE`." msgstr "" -#: library/io.rst:718 +#: library/io.rst:797 msgid "" ":class:`BufferedWriter` provides or overrides these methods in addition to " "those from :class:`BufferedIOBase` and :class:`IOBase`:" msgstr "" -#: library/io.rst:723 +#: library/io.rst:802 msgid "" "Force bytes held in the buffer into the raw stream. A :exc:" "`BlockingIOError` should be raised if the raw stream blocks." msgstr "" -#: library/io.rst:728 +#: library/io.rst:807 msgid "" "Write the :term:`bytes-like object`, *b*, and return the number of bytes " "written. When in non-blocking mode, a :exc:`BlockingIOError` is raised if " "the buffer needs to be written out but the raw stream blocks." msgstr "" -#: library/io.rst:736 +#: library/io.rst:815 msgid "" "A buffered binary stream providing higher-level access to a seekable :class:" "`RawIOBase` raw binary stream. It inherits :class:`BufferedReader` and :" "class:`BufferedWriter`." msgstr "" -#: library/io.rst:740 +#: library/io.rst:819 msgid "" "The constructor creates a reader and writer for a seekable raw stream, given " "in the first argument. If the *buffer_size* is omitted it defaults to :data:" "`DEFAULT_BUFFER_SIZE`." msgstr "" -#: library/io.rst:744 +#: library/io.rst:823 msgid "" ":class:`BufferedRandom` is capable of anything :class:`BufferedReader` or :" "class:`BufferedWriter` can do. In addition, :meth:`seek` and :meth:`tell` " "are guaranteed to be implemented." msgstr "" -#: library/io.rst:751 +#: library/io.rst:830 msgid "" "A buffered binary stream providing higher-level access to two non seekable :" "class:`RawIOBase` raw binary streams---one readable, the other writeable. It " "inherits :class:`BufferedIOBase`." msgstr "" -#: library/io.rst:755 +#: library/io.rst:834 msgid "" "*reader* and *writer* are :class:`RawIOBase` objects that are readable and " "writeable respectively. If the *buffer_size* is omitted it defaults to :" "data:`DEFAULT_BUFFER_SIZE`." msgstr "" -#: library/io.rst:759 +#: library/io.rst:838 msgid "" ":class:`BufferedRWPair` implements all of :class:`BufferedIOBase`\\'s " "methods except for :meth:`~BufferedIOBase.detach`, which raises :exc:" "`UnsupportedOperation`." msgstr "" -#: library/io.rst:765 +#: library/io.rst:844 msgid "" ":class:`BufferedRWPair` does not attempt to synchronize accesses to its " "underlying raw streams. You should not pass it the same object as reader " "and writer; use :class:`BufferedRandom` instead." msgstr "" -#: library/io.rst:775 +#: library/io.rst:854 msgid "" "Base class for text streams. This class provides a character and line based " "interface to stream I/O. It inherits :class:`IOBase`. There is no public " "constructor." msgstr "" -#: library/io.rst:779 +#: library/io.rst:858 msgid "" ":class:`TextIOBase` provides or overrides these data attributes and methods " "in addition to those from :class:`IOBase`:" msgstr "" -#: library/io.rst:784 +#: library/io.rst:863 msgid "" "The name of the encoding used to decode the stream's bytes into strings, and " "to encode strings into bytes." msgstr "" -#: library/io.rst:789 +#: library/io.rst:868 msgid "The error setting of the decoder or encoder." msgstr "" -#: library/io.rst:793 +#: library/io.rst:872 msgid "" "A string, a tuple of strings, or ``None``, indicating the newlines " "translated so far. Depending on the implementation and the initial " "constructor flags, this may not be available." msgstr "" -#: library/io.rst:799 +#: library/io.rst:878 msgid "" "The underlying binary buffer (a :class:`BufferedIOBase` instance) that :" "class:`TextIOBase` deals with. This is not part of the :class:`TextIOBase` " "API and may not exist in some implementations." msgstr "" -#: library/io.rst:805 +#: library/io.rst:884 msgid "" "Separate the underlying binary buffer from the :class:`TextIOBase` and " "return it." msgstr "" -#: library/io.rst:808 +#: library/io.rst:887 msgid "" "After the underlying buffer has been detached, the :class:`TextIOBase` is in " "an unusable state." msgstr "" -#: library/io.rst:811 +#: library/io.rst:890 msgid "" "Some :class:`TextIOBase` implementations, like :class:`StringIO`, may not " "have the concept of an underlying buffer and calling this method will raise :" "exc:`UnsupportedOperation`." msgstr "" -#: library/io.rst:819 +#: library/io.rst:898 msgid "" "Read and return at most *size* characters from the stream as a single :class:" "`str`. If *size* is negative or ``None``, reads until EOF." msgstr "" -#: library/io.rst:824 +#: library/io.rst:903 msgid "" "Read until newline or EOF and return a single ``str``. If the stream is " "already at EOF, an empty string is returned." msgstr "" -#: library/io.rst:827 +#: library/io.rst:906 msgid "If *size* is specified, at most *size* characters will be read." msgstr "" -#: library/io.rst:831 +#: library/io.rst:910 msgid "" "Change the stream position to the given *offset*. Behaviour depends on the " "*whence* parameter. The default value for *whence* is :data:`SEEK_SET`." msgstr "" -#: library/io.rst:835 +#: library/io.rst:914 msgid "" ":data:`SEEK_SET` or ``0``: seek from the start of the stream (the default); " "*offset* must either be a number returned by :meth:`TextIOBase.tell`, or " "zero. Any other *offset* value produces undefined behaviour." msgstr "" -#: library/io.rst:839 +#: library/io.rst:918 msgid "" ":data:`SEEK_CUR` or ``1``: \"seek\" to the current position; *offset* must " "be zero, which is a no-operation (all other values are unsupported)." msgstr "" -#: library/io.rst:842 +#: library/io.rst:921 msgid "" ":data:`SEEK_END` or ``2``: seek to the end of the stream; *offset* must be " "zero (all other values are unsupported)." msgstr "" -#: library/io.rst:845 +#: library/io.rst:924 msgid "Return the new absolute position as an opaque number." msgstr "" -#: library/io.rst:852 +#: library/io.rst:931 msgid "" "Return the current stream position as an opaque number. The number does not " "usually represent a number of bytes in the underlying binary storage." msgstr "" -#: library/io.rst:858 +#: library/io.rst:937 msgid "" "Write the string *s* to the stream and return the number of characters " "written." msgstr "" -#: library/io.rst:865 +#: library/io.rst:944 msgid "" "A buffered text stream providing higher-level access to a :class:" "`BufferedIOBase` buffered binary stream. It inherits :class:`TextIOBase`." msgstr "" -#: library/io.rst:869 +#: library/io.rst:948 msgid "" "*encoding* gives the name of the encoding that the stream will be decoded or " "encoded with. It defaults to :func:`locale.getpreferredencoding(False) " -"`." +"`. ``encoding=\"locale\"`` can be used to " +"specify the current locale's encoding explicitly. See :ref:`io-text-" +"encoding` for more information." msgstr "" -#: library/io.rst:873 +#: library/io.rst:954 msgid "" "*errors* is an optional string that specifies how encoding and decoding " "errors are to be handled. Pass ``'strict'`` to raise a :exc:`ValueError` " @@ -1210,13 +1311,13 @@ msgid "" "that has been registered with :func:`codecs.register_error` is also valid." msgstr "" -#: library/io.rst:889 +#: library/io.rst:970 msgid "" "*newline* controls how line endings are handled. It can be ``None``, " "``''``, ``'\\n'``, ``'\\r'``, and ``'\\r\\n'``. It works as follows:" msgstr "" -#: library/io.rst:892 +#: library/io.rst:973 #, fuzzy msgid "" "When reading input from the stream, if *newline* is ``None``, :term:" @@ -1236,7 +1337,7 @@ msgstr "" "autre valeur autorisée, les lignes sont seulement terminées par la chaîne " "donnée, qui est rendue tel qu'elle." -#: library/io.rst:901 +#: library/io.rst:982 msgid "" "When writing output to the stream, if *newline* is ``None``, any ``'\\n'`` " "characters written are translated to the system default line separator, :" @@ -1250,24 +1351,24 @@ msgstr "" "*newline* est un autre caractère valide, chaque ``'\\n'`` sera remplacé par " "la chaîne donnée." -#: library/io.rst:907 +#: library/io.rst:988 msgid "" "If *line_buffering* is ``True``, :meth:`flush` is implied when a call to " "write contains a newline character or a carriage return." msgstr "" -#: library/io.rst:910 +#: library/io.rst:991 msgid "" "If *write_through* is ``True``, calls to :meth:`write` are guaranteed not to " "be buffered: any data written on the :class:`TextIOWrapper` object is " "immediately handled to its underlying binary *buffer*." msgstr "" -#: library/io.rst:914 +#: library/io.rst:995 msgid "The *write_through* argument has been added." msgstr "" -#: library/io.rst:917 +#: library/io.rst:998 msgid "" "The default *encoding* is now ``locale.getpreferredencoding(False)`` instead " "of ``locale.getpreferredencoding()``. Don't change temporary the locale " @@ -1275,103 +1376,108 @@ msgid "" "instead of the user preferred encoding." msgstr "" -#: library/io.rst:923 +#: library/io.rst:1004 +msgid "" +"The *encoding* argument now supports the ``\"locale\"`` dummy encoding name." +msgstr "" + +#: library/io.rst:1007 msgid "" ":class:`TextIOWrapper` provides these data attributes and methods in " "addition to those from :class:`TextIOBase` and :class:`IOBase`:" msgstr "" -#: library/io.rst:928 +#: library/io.rst:1012 msgid "Whether line buffering is enabled." msgstr "" -#: library/io.rst:932 +#: library/io.rst:1016 msgid "Whether writes are passed immediately to the underlying binary buffer." msgstr "" -#: library/io.rst:940 +#: library/io.rst:1024 msgid "" "Reconfigure this text stream using new settings for *encoding*, *errors*, " "*newline*, *line_buffering* and *write_through*." msgstr "" -#: library/io.rst:943 +#: library/io.rst:1027 msgid "" "Parameters not specified keep current settings, except ``errors='strict'`` " "is used when *encoding* is specified but *errors* is not specified." msgstr "" -#: library/io.rst:947 +#: library/io.rst:1031 msgid "" "It is not possible to change the encoding or newline if some data has " "already been read from the stream. On the other hand, changing encoding " "after write is possible." msgstr "" -#: library/io.rst:951 +#: library/io.rst:1035 msgid "" "This method does an implicit stream flush before setting the new parameters." msgstr "" -#: library/io.rst:959 +#: library/io.rst:1043 msgid "" "A text stream using an in-memory text buffer. It inherits :class:" "`TextIOBase`." msgstr "" -#: library/io.rst:962 +#: library/io.rst:1046 msgid "" "The text buffer is discarded when the :meth:`~IOBase.close` method is called." msgstr "" -#: library/io.rst:965 +#: library/io.rst:1049 msgid "" "The initial value of the buffer can be set by providing *initial_value*. If " "newline translation is enabled, newlines will be encoded as if by :meth:" "`~TextIOBase.write`. The stream is positioned at the start of the buffer." msgstr "" -#: library/io.rst:970 +#: library/io.rst:1054 msgid "" "The *newline* argument works like that of :class:`TextIOWrapper`, except " "that when writing output to the stream, if *newline* is ``None``, newlines " "are written as ``\\n`` on all platforms." msgstr "" -#: library/io.rst:974 +#: library/io.rst:1058 msgid "" ":class:`StringIO` provides this method in addition to those from :class:" "`TextIOBase` and :class:`IOBase`:" msgstr "" -#: library/io.rst:979 +#: library/io.rst:1063 msgid "" "Return a ``str`` containing the entire contents of the buffer. Newlines are " "decoded as if by :meth:`~TextIOBase.read`, although the stream position is " "not changed." msgstr "" -#: library/io.rst:983 +#: library/io.rst:1067 msgid "Example usage::" msgstr "Exemple d'utilisation ::" -#: library/io.rst:1005 +#: library/io.rst:1089 msgid "" "A helper codec that decodes newlines for :term:`universal newlines` mode. It " "inherits :class:`codecs.IncrementalDecoder`." msgstr "" -#: library/io.rst:1010 +#: library/io.rst:1094 msgid "Performance" msgstr "Performances" -#: library/io.rst:1012 +#: library/io.rst:1096 msgid "" "This section discusses the performance of the provided concrete I/O " "implementations." msgstr "" -#: library/io.rst:1018 +#: library/io.rst:1102 msgid "" "By reading and writing only large chunks of data even when the user asks for " "a single byte, buffered I/O hides any inefficiency in calling and executing " @@ -1384,7 +1490,7 @@ msgid "" "data." msgstr "" -#: library/io.rst:1030 +#: library/io.rst:1114 msgid "" "Text I/O over a binary storage (such as a file) is significantly slower than " "binary I/O over the same storage, because it requires conversions between " @@ -1394,23 +1500,23 @@ msgid "" "to the reconstruction algorithm used." msgstr "" -#: library/io.rst:1037 +#: library/io.rst:1121 msgid "" ":class:`StringIO`, however, is a native in-memory unicode container and will " "exhibit similar speed to :class:`BytesIO`." msgstr "" -#: library/io.rst:1041 +#: library/io.rst:1125 msgid "Multi-threading" msgstr "Fils d'exécution" -#: library/io.rst:1043 +#: library/io.rst:1127 msgid "" ":class:`FileIO` objects are thread-safe to the extent that the operating " "system calls (such as ``read(2)`` under Unix) they wrap are thread-safe too." msgstr "" -#: library/io.rst:1046 +#: library/io.rst:1130 msgid "" "Binary buffered objects (instances of :class:`BufferedReader`, :class:" "`BufferedWriter`, :class:`BufferedRandom` and :class:`BufferedRWPair`) " @@ -1418,15 +1524,15 @@ msgid "" "them from multiple threads at once." msgstr "" -#: library/io.rst:1051 +#: library/io.rst:1135 msgid ":class:`TextIOWrapper` objects are not thread-safe." msgstr "" -#: library/io.rst:1054 +#: library/io.rst:1138 msgid "Reentrancy" msgstr "" -#: library/io.rst:1056 +#: library/io.rst:1140 msgid "" "Binary buffered objects (instances of :class:`BufferedReader`, :class:" "`BufferedWriter`, :class:`BufferedRandom` and :class:`BufferedRWPair`) are " @@ -1437,7 +1543,7 @@ msgid "" "from entering the buffered object." msgstr "" -#: library/io.rst:1064 +#: library/io.rst:1148 msgid "" "The above implicitly extends to text files, since the :func:`open()` " "function will wrap a buffered object inside a :class:`TextIOWrapper`. This " diff --git a/library/ipaddress.po b/library/ipaddress.po index acc73674c..dd4daf332 100644 --- a/library/ipaddress.po +++ b/library/ipaddress.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-06-08 09:38+0200\n" "Last-Translator: Martin Chlumsky \n" "Language-Team: FRENCH \n" @@ -213,10 +213,19 @@ msgstr "" "version 3.9.5." #: library/ipaddress.rst:137 +#, fuzzy +msgid "" +"The above change was also included in Python 3.8 starting with version " +"3.8.12." +msgstr "" +"Le changement ci-dessus est aussi inclus dans Python 3.9 à partir de la " +"version 3.9.5." + +#: library/ipaddress.rst:142 msgid "The appropriate version number: ``4`` for IPv4, ``6`` for IPv6." msgstr "Numéro de version approprié : ``4`` pour IPv4, ``6`` pour IPv6." -#: library/ipaddress.rst:141 +#: library/ipaddress.rst:146 msgid "" "The total number of bits in the address representation for this version: " "``32`` for IPv4, ``128`` for IPv6." @@ -224,7 +233,7 @@ msgstr "" "Nombre total de bits dans la représentation d'adresse de cette version : " "``32`` pour IPv4, ``128`` pour IPv6." -#: library/ipaddress.rst:144 +#: library/ipaddress.rst:149 msgid "" "The prefix defines the number of leading bits in an address that are " "compared to determine whether or not an address is part of a network." @@ -232,7 +241,7 @@ msgstr "" "Le préfixe définit le nombre de bits en tête dans une adresse qui sont " "comparés pour déterminer si une adresse fait partie d'un réseau." -#: library/ipaddress.rst:151 +#: library/ipaddress.rst:156 msgid "" "The string representation in dotted decimal notation. Leading zeroes are " "never included in the representation." @@ -240,7 +249,7 @@ msgstr "" "Une chaîne en notation décimale par points. Les zéros en tête ne sont jamais " "inclus dans la représentation." -#: library/ipaddress.rst:154 +#: library/ipaddress.rst:159 msgid "" "As IPv4 does not define a shorthand notation for addresses with octets set " "to zero, these two attributes are always the same as ``str(addr)`` for IPv4 " @@ -253,7 +262,7 @@ msgstr "" "l'écriture de code d'affichage qui peut gérer à la fois les adresses IPv4 et " "IPv6." -#: library/ipaddress.rst:161 +#: library/ipaddress.rst:166 msgid "" "The binary representation of this address - a :class:`bytes` object of the " "appropriate length (most significant octet first). This is 4 bytes for IPv4 " @@ -263,11 +272,11 @@ msgstr "" "une taille appropriée (gros-boutiste). La taille est de 4 octets pour IPv4 " "et 16 octets pour IPv6." -#: library/ipaddress.rst:167 +#: library/ipaddress.rst:172 msgid "The name of the reverse DNS PTR record for the IP address, e.g.::" msgstr "Nom de l'enregistrement DNS PTR inverse pour l'adresse IP, p. ex. ::" -#: library/ipaddress.rst:174 +#: library/ipaddress.rst:179 msgid "" "This is the name that could be used for performing a PTR lookup, not the " "resolved hostname itself." @@ -275,7 +284,7 @@ msgstr "" "C'est le nom utilisé pour effectuer une recherche inverse PTR et non le nom " "de l'hôte résolu lui-même." -#: library/ipaddress.rst:181 +#: library/ipaddress.rst:186 msgid "" "``True`` if the address is reserved for multicast use. See :RFC:`3171` (for " "IPv4) or :RFC:`2373` (for IPv6)." @@ -283,7 +292,7 @@ msgstr "" "``True`` si l'adresse est réservée pour utilisation *multicast*. Voir :RFC:" "`3171` (pour IPv4) or :RFC:`2373` (pour IPv6)." -#: library/ipaddress.rst:186 +#: library/ipaddress.rst:191 msgid "" "``True`` if the address is allocated for private networks. See iana-ipv4-" "special-registry_ (for IPv4) or iana-ipv6-special-registry_ (for IPv6)." @@ -291,7 +300,7 @@ msgstr "" "``True`` si l'adresse est allouée à des réseaux privés. Voir iana-ipv4-" "special-registry_ (pour IPv4) ou iana-ipv6-special-registry_ (pour IPv6)." -#: library/ipaddress.rst:192 +#: library/ipaddress.rst:197 msgid "" "``True`` if the address is allocated for public networks. See iana-ipv4-" "special-registry_ (for IPv4) or iana-ipv6-special-registry_ (for IPv6)." @@ -299,7 +308,7 @@ msgstr "" "``True`` si l'adresse est allouée à des réseaux publics. Voir iana-ipv4-" "special-registry_ (pour IPv4) or iana-ipv6-special-registry_ (pour IPv6)." -#: library/ipaddress.rst:200 +#: library/ipaddress.rst:205 msgid "" "``True`` if the address is unspecified. See :RFC:`5735` (for IPv4) or :RFC:" "`2373` (for IPv6)." @@ -307,11 +316,11 @@ msgstr "" "``True`` si l'adresse est non-spécifiée. Voir :RFC:`5735` (pour IPv4) or :" "RFC:`2373` (pour IPv6)." -#: library/ipaddress.rst:205 +#: library/ipaddress.rst:210 msgid "``True`` if the address is otherwise IETF reserved." msgstr "``True`` si l'adresse est réservée par l'IETF." -#: library/ipaddress.rst:209 +#: library/ipaddress.rst:214 msgid "" "``True`` if this is a loopback address. See :RFC:`3330` (for IPv4) or :RFC:" "`2373` (for IPv6)." @@ -319,14 +328,14 @@ msgstr "" "``True`` si c'est une adresse de rebouclage (*loopback* en anglais). Voir :" "RFC:`3330` (pour IPv4) or :RFC:`2373` (pour IPv6)." -#: library/ipaddress.rst:214 +#: library/ipaddress.rst:219 msgid "" "``True`` if the address is reserved for link-local usage. See :RFC:`3927`." msgstr "" "``True`` si l'adresse est réservée pour les liaisons locales auto-" "configurées. Voir :RFC:`3927`." -#: library/ipaddress.rst:222 +#: library/ipaddress.rst:227 msgid "" "Returns a string representation of the IP address, controlled by an explicit " "format string. *fmt* can be one of the following: ``'s'``, the default " @@ -347,7 +356,7 @@ msgstr "" "disponibles. ``__format__`` est utilisé par ``format``, ``str.format`` et " "les f-strings." -#: library/ipaddress.rst:249 +#: library/ipaddress.rst:254 msgid "" "Construct an IPv6 address. An :exc:`AddressValueError` is raised if " "*address* is not a valid IPv6 address." @@ -355,11 +364,11 @@ msgstr "" "Construit une adresse IPv6. Une :exc:`AddressValueError` est levée si " "*address* n'est pas une adresse IPv6 valide." -#: library/ipaddress.rst:252 +#: library/ipaddress.rst:257 msgid "The following constitutes a valid IPv6 address:" msgstr "Une adresse IPv6 valide est constituée de :" -#: library/ipaddress.rst:254 +#: library/ipaddress.rst:259 msgid "" "A string consisting of eight groups of four hexadecimal digits, each group " "representing 16 bits. The groups are separated by colons. This describes an " @@ -376,7 +385,7 @@ msgstr "" "\"0000:0000:0000:0000:0000:0abc:0007:0def\"`` peut s'écrire ``\"::abc:7:def" "\"``." -#: library/ipaddress.rst:262 +#: library/ipaddress.rst:267 msgid "" "Optionally, the string may also have a scope zone ID, expressed with a " "suffix ``%scope_id``. If present, the scope ID must be non-empty, and may " @@ -390,17 +399,17 @@ msgstr "" "détails. Par exemple, ``fe80::1234%1`` pourrait identifier ``fe80::1234`` " "sur la première interface du nœud." -#: library/ipaddress.rst:267 +#: library/ipaddress.rst:272 msgid "An integer that fits into 128 bits." msgstr "Un entier qui tient dans 128 bits." -#: library/ipaddress.rst:268 +#: library/ipaddress.rst:273 msgid "" "An integer packed into a :class:`bytes` object of length 16, big-endian." msgstr "" "Un entier tassé dans un objet :class:`bytes` de taille 16, gros-boutiste." -#: library/ipaddress.rst:278 +#: library/ipaddress.rst:283 msgid "" "The short form of the address representation, with leading zeroes in groups " "omitted and the longest sequence of groups consisting entirely of zeroes " @@ -410,12 +419,12 @@ msgstr "" "tête omis et la séquence la plus longue de groupes constitués entièrement de " "zéros réduit à un seul groupe vide." -#: library/ipaddress.rst:282 +#: library/ipaddress.rst:287 msgid "This is also the value returned by ``str(addr)`` for IPv6 addresses." msgstr "" "C'est aussi la valeur renvoyée par ``str(addr)`` pour les adresses IPv6." -#: library/ipaddress.rst:286 +#: library/ipaddress.rst:291 msgid "" "The long form of the address representation, with all leading zeroes and " "groups consisting entirely of zeroes included." @@ -423,7 +432,7 @@ msgstr "" "Version longue de la représentation d'adresse, avec tous les zéros en tête " "et groupes composés entièrement de zéros inclus." -#: library/ipaddress.rst:290 +#: library/ipaddress.rst:295 msgid "" "For the following attributes and methods, see the corresponding " "documentation of the :class:`IPv4Address` class:" @@ -431,11 +440,11 @@ msgstr "" "Pour les attributs et méthodes suivants, voir la documentation de la classe :" "class:`IPv4Address` :" -#: library/ipaddress.rst:305 +#: library/ipaddress.rst:310 msgid "is_global" msgstr "is_global" -#: library/ipaddress.rst:310 +#: library/ipaddress.rst:315 msgid "" "``True`` if the address is reserved for site-local usage. Note that the " "site-local address space has been deprecated by :RFC:`3879`. Use :attr:" @@ -447,7 +456,7 @@ msgstr "" "Utilisez :attr:`~IPv4Address.is_private` pour tester si l'adresse est dans " "l'espace d'adresses locales et uniques défini par :RFC:`4193`." -#: library/ipaddress.rst:317 +#: library/ipaddress.rst:322 msgid "" "For addresses that appear to be IPv4 mapped addresses (starting with ``::" "FFFF/96``), this property will report the embedded IPv4 address. For any " @@ -457,7 +466,7 @@ msgstr "" "par ``::FFFF/96``), cette propriété rapporte l'adresse IPv4 imbriquée. Pour " "toute autre adresse, cette propriété sera ``None``." -#: library/ipaddress.rst:323 +#: library/ipaddress.rst:328 msgid "" "For scoped addresses as defined by :RFC:`4007`, this property identifies the " "particular zone of the address's scope that the address belongs to, as a " @@ -468,7 +477,7 @@ msgstr "" "cette adresse appartient, en tant que chaîne. Quand la zone de portée n'est " "pas spécifiée, cette propriété est ``None``." -#: library/ipaddress.rst:329 +#: library/ipaddress.rst:334 msgid "" "For addresses that appear to be 6to4 addresses (starting with " "``2002::/16``) as defined by :RFC:`3056`, this property will report the " @@ -480,7 +489,7 @@ msgstr "" "l'adresse IPv4 imbriquée. Pour toute autre adresse, cette propriété sera " "``None``." -#: library/ipaddress.rst:336 +#: library/ipaddress.rst:341 msgid "" "For addresses that appear to be Teredo addresses (starting with " "``2001::/32``) as defined by :RFC:`4380`, this property will report the " @@ -492,18 +501,18 @@ msgstr "" "paire ``(server, client)`` imbriquée. Pour toute autre adresse, cette " "propriété sera ``None``." -#: library/ipaddress.rst:343 +#: library/ipaddress.rst:348 msgid "" "Refer to the corresponding method documentation in :class:`IPv4Address`." msgstr "" "Référez-vous à la documentation de la méthode correspondante dans :class:" "`IPv4Address`." -#: library/ipaddress.rst:349 +#: library/ipaddress.rst:354 msgid "Conversion to Strings and Integers" msgstr "Conversion vers les chaînes et les entiers" -#: library/ipaddress.rst:351 +#: library/ipaddress.rst:356 msgid "" "To interoperate with networking interfaces such as the socket module, " "addresses must be converted to strings or integers. This is handled using " @@ -513,50 +522,50 @@ msgstr "" "adresses doivent être converties en chaînes et en entiers. Ceci est géré en " "utilisant les fonctions natives :func:`str` et :func:`int` ::" -#: library/ipaddress.rst:364 +#: library/ipaddress.rst:369 msgid "" "Note that IPv6 scoped addresses are converted to integers without scope zone " "ID." msgstr "" -#: library/ipaddress.rst:752 library/ipaddress.rst:888 +#: library/ipaddress.rst:757 library/ipaddress.rst:893 msgid "Operators" msgstr "Opérateurs" -#: library/ipaddress.rst:370 +#: library/ipaddress.rst:375 msgid "" "Address objects support some operators. Unless stated otherwise, operators " "can only be applied between compatible objects (i.e. IPv4 with IPv4, IPv6 " "with IPv6)." msgstr "" -#: library/ipaddress.rst:376 +#: library/ipaddress.rst:381 msgid "Comparison operators" msgstr "Opérateurs de comparaison" -#: library/ipaddress.rst:378 +#: library/ipaddress.rst:383 msgid "" "Address objects can be compared with the usual set of comparison operators. " "Same IPv6 addresses with different scope zone IDs are not equal. Some " "examples::" msgstr "" -#: library/ipaddress.rst:395 +#: library/ipaddress.rst:400 msgid "Arithmetic operators" msgstr "Opérateurs arithmétiques" -#: library/ipaddress.rst:397 +#: library/ipaddress.rst:402 msgid "" "Integers can be added to or subtracted from address objects. Some examples::" msgstr "" "Les entiers peuvent être additionnés ou soustraits des objets d'adresse. " "Quelques exemples ::" -#: library/ipaddress.rst:410 +#: library/ipaddress.rst:415 msgid "IP Network definitions" msgstr "Définitions de réseaux IP" -#: library/ipaddress.rst:412 +#: library/ipaddress.rst:417 msgid "" "The :class:`IPv4Network` and :class:`IPv6Network` objects provide a " "mechanism for defining and inspecting IP network definitions. A network " @@ -567,11 +576,11 @@ msgid "" "addresses in the inclusive range ``192.168.1.0`` to ``192.168.1.255``." msgstr "" -#: library/ipaddress.rst:422 +#: library/ipaddress.rst:427 msgid "Prefix, net mask and host mask" msgstr "Préfixe, masque réseau et masque de l'hôte" -#: library/ipaddress.rst:424 +#: library/ipaddress.rst:429 msgid "" "There are several equivalent ways to specify IP network masks. A *prefix* " "``/`` is a notation that denotes how many high-order bits are set in " @@ -583,11 +592,11 @@ msgid "" "mask equivalent to ``/24`` in IPv4 is ``0.0.0.255``." msgstr "" -#: library/ipaddress.rst:435 +#: library/ipaddress.rst:440 msgid "Network objects" msgstr "Objets réseau" -#: library/ipaddress.rst:437 +#: library/ipaddress.rst:442 msgid "" "All attributes implemented by address objects are implemented by network " "objects as well. In addition, network objects implement additional " @@ -597,12 +606,12 @@ msgid "" "keys in dictionaries." msgstr "" -#: library/ipaddress.rst:446 +#: library/ipaddress.rst:451 msgid "" "Construct an IPv4 network definition. *address* can be one of the following:" msgstr "Construit une définition de réseau IPv4. *address* peut valoir :" -#: library/ipaddress.rst:448 +#: library/ipaddress.rst:453 msgid "" "A string consisting of an IP address and an optional mask, separated by a " "slash (``/``). The IP address is the network address, and the mask can be " @@ -614,26 +623,26 @@ msgid "" "it's considered to be ``/32``." msgstr "" -#: library/ipaddress.rst:457 +#: library/ipaddress.rst:462 msgid "" "For example, the following *address* specifications are equivalent: " "``192.168.1.0/24``, ``192.168.1.0/255.255.255.0`` and " "``192.168.1.0/0.0.0.255``." msgstr "" -#: library/ipaddress.rst:461 +#: library/ipaddress.rst:466 msgid "" "An integer that fits into 32 bits. This is equivalent to a single-address " "network, with the network address being *address* and the mask being ``/32``." msgstr "" -#: library/ipaddress.rst:465 +#: library/ipaddress.rst:470 msgid "" "An integer packed into a :class:`bytes` object of length 4, big-endian. The " "interpretation is similar to an integer *address*." msgstr "" -#: library/ipaddress.rst:468 +#: library/ipaddress.rst:473 msgid "" "A two-tuple of an address description and a netmask, where the address " "description is either a string, a 32-bits integer, a 4-bytes packed integer, " @@ -642,96 +651,96 @@ msgid "" "prefix mask (e.g. ``255.255.255.0``)." msgstr "" -#: library/ipaddress.rst:474 +#: library/ipaddress.rst:479 msgid "" "An :exc:`AddressValueError` is raised if *address* is not a valid IPv4 " "address. A :exc:`NetmaskValueError` is raised if the mask is not valid for " "an IPv4 address." msgstr "" -#: library/ipaddress.rst:698 +#: library/ipaddress.rst:703 msgid "" "If *strict* is ``True`` and host bits are set in the supplied address, then :" "exc:`ValueError` is raised. Otherwise, the host bits are masked out to " "determine the appropriate network address." msgstr "" -#: library/ipaddress.rst:482 +#: library/ipaddress.rst:487 msgid "" "Unless stated otherwise, all network methods accepting other network/address " "objects will raise :exc:`TypeError` if the argument's IP version is " "incompatible to ``self``." msgstr "" -#: library/ipaddress.rst:704 +#: library/ipaddress.rst:709 msgid "Added the two-tuple form for the *address* constructor parameter." msgstr "Ajout de la forme paire pour le paramètre *address* du constructeur." -#: library/ipaddress.rst:493 +#: library/ipaddress.rst:498 msgid "" "Refer to the corresponding attribute documentation in :class:`IPv4Address`." msgstr "" "Référez-vous à la documentation de l'attribut correspondant dans :class:" "`IPv4Address`." -#: library/ipaddress.rst:503 +#: library/ipaddress.rst:508 msgid "" "These attributes are true for the network as a whole if they are true for " "both the network address and the broadcast address." msgstr "" -#: library/ipaddress.rst:508 +#: library/ipaddress.rst:513 msgid "" "The network address for the network. The network address and the prefix " "length together uniquely define a network." msgstr "" -#: library/ipaddress.rst:513 +#: library/ipaddress.rst:518 msgid "" "The broadcast address for the network. Packets sent to the broadcast address " "should be received by every host on the network." msgstr "" -#: library/ipaddress.rst:518 +#: library/ipaddress.rst:523 msgid "The host mask, as an :class:`IPv4Address` object." msgstr "Le masque de l'hôte, en tant qu'objet :class:`IPv4Address`." -#: library/ipaddress.rst:522 +#: library/ipaddress.rst:527 msgid "The net mask, as an :class:`IPv4Address` object." msgstr "Le masque réseau, en tant qu'objet :class:`IPv4Address`." -#: library/ipaddress.rst:528 +#: library/ipaddress.rst:533 msgid "" "A string representation of the network, with the mask in prefix notation." msgstr "" "Adresse IP du réseau sous forme d'une chaîne, avec le masque en notation " "CIDR." -#: library/ipaddress.rst:531 +#: library/ipaddress.rst:536 msgid "" "``with_prefixlen`` and ``compressed`` are always the same as " "``str(network)``. ``exploded`` uses the exploded form the network address." msgstr "" -#: library/ipaddress.rst:537 +#: library/ipaddress.rst:542 msgid "" "A string representation of the network, with the mask in net mask notation." msgstr "" -#: library/ipaddress.rst:542 +#: library/ipaddress.rst:547 msgid "" "A string representation of the network, with the mask in host mask notation." msgstr "" -#: library/ipaddress.rst:547 +#: library/ipaddress.rst:552 msgid "The total number of addresses in the network." msgstr "Le nombre total d'adresses dans le réseau." -#: library/ipaddress.rst:551 +#: library/ipaddress.rst:556 msgid "Length of the network prefix, in bits." msgstr "" -#: library/ipaddress.rst:555 +#: library/ipaddress.rst:560 msgid "" "Returns an iterator over the usable hosts in the network. The usable hosts " "are all the IP addresses that belong to the network, except the network " @@ -741,7 +750,7 @@ msgid "" "containing the single host address." msgstr "" -#: library/ipaddress.rst:573 +#: library/ipaddress.rst:578 msgid "" "``True`` if this network is partly or wholly contained in *other* or *other* " "is wholly contained in this network." @@ -749,14 +758,14 @@ msgstr "" "``True`` si ce réseau est partiellement ou complètement contenu dans *other* " "ou *other* est complètement contenu dans ce réseau." -#: library/ipaddress.rst:578 +#: library/ipaddress.rst:583 msgid "" "Computes the network definitions resulting from removing the given *network* " "from this one. Returns an iterator of network objects. Raises :exc:" "`ValueError` if *network* is not completely contained in this network." msgstr "" -#: library/ipaddress.rst:591 +#: library/ipaddress.rst:596 msgid "" "The subnets that join to make the current network definition, depending on " "the argument values. *prefixlen_diff* is the amount our prefix length " @@ -766,7 +775,7 @@ msgid "" "network objects." msgstr "" -#: library/ipaddress.rst:616 +#: library/ipaddress.rst:621 msgid "" "The supernet containing this network definition, depending on the argument " "values. *prefixlen_diff* is the amount our prefix length should be " @@ -775,22 +784,22 @@ msgid "" "*new_prefix* must be set. Returns a single network object." msgstr "" -#: library/ipaddress.rst:632 +#: library/ipaddress.rst:637 msgid "Return ``True`` if this network is a subnet of *other*." msgstr "Renvoie ``True`` si ce réseau est un sous-réseau de *other*." -#: library/ipaddress.rst:643 +#: library/ipaddress.rst:648 msgid "Return ``True`` if this network is a supernet of *other*." msgstr "Renvoie ``True`` si *other* est un sous-réseau de ce réseau." -#: library/ipaddress.rst:654 +#: library/ipaddress.rst:659 msgid "" "Compare this network to *other*. In this comparison only the network " "addresses are considered; host bits aren't. Returns either ``-1``, ``0`` or " "``1``." msgstr "" -#: library/ipaddress.rst:665 +#: library/ipaddress.rst:670 msgid "" "It uses the same ordering and comparison algorithm as \"<\", \"==\", and \">" "\"" @@ -798,12 +807,12 @@ msgstr "" "Utilise le même algorithme de relation d'ordre et de comparaison que `<`, " "`==`, et `>`." -#: library/ipaddress.rst:671 +#: library/ipaddress.rst:676 msgid "" "Construct an IPv6 network definition. *address* can be one of the following:" msgstr "Construit une définition de réseau IPv6. *address* peut valoir :" -#: library/ipaddress.rst:673 +#: library/ipaddress.rst:678 msgid "" "A string consisting of an IP address and an optional prefix length, " "separated by a slash (``/``). The IP address is the network address, and " @@ -811,26 +820,26 @@ msgid "" "length is provided, it's considered to be ``/128``." msgstr "" -#: library/ipaddress.rst:678 +#: library/ipaddress.rst:683 msgid "" "Note that currently expanded netmasks are not supported. That means ``2001:" "db00::0/24`` is a valid argument while ``2001:db00::0/ffff:ff00::`` not." msgstr "" -#: library/ipaddress.rst:682 +#: library/ipaddress.rst:687 msgid "" "An integer that fits into 128 bits. This is equivalent to a single-address " "network, with the network address being *address* and the mask being " "``/128``." msgstr "" -#: library/ipaddress.rst:686 +#: library/ipaddress.rst:691 msgid "" "An integer packed into a :class:`bytes` object of length 16, big-endian. The " "interpretation is similar to an integer *address*." msgstr "" -#: library/ipaddress.rst:689 +#: library/ipaddress.rst:694 msgid "" "A two-tuple of an address description and a netmask, where the address " "description is either a string, a 128-bits integer, a 16-bytes packed " @@ -838,14 +847,14 @@ msgid "" "representing the prefix length." msgstr "" -#: library/ipaddress.rst:694 +#: library/ipaddress.rst:699 msgid "" "An :exc:`AddressValueError` is raised if *address* is not a valid IPv6 " "address. A :exc:`NetmaskValueError` is raised if the mask is not valid for " "an IPv6 address." msgstr "" -#: library/ipaddress.rst:727 +#: library/ipaddress.rst:732 msgid "" "Returns an iterator over the usable hosts in the network. The usable hosts " "are all the IP addresses that belong to the network, except the Subnet-" @@ -854,62 +863,62 @@ msgid "" "of 128 will return a list containing the single host address." msgstr "" -#: library/ipaddress.rst:742 +#: library/ipaddress.rst:747 msgid "" "Refer to the corresponding attribute documentation in :class:`IPv4Network`." msgstr "" "Référez-vous à la documentation de l'attribut correspondant dans :class:" "`IPv4Network`." -#: library/ipaddress.rst:747 +#: library/ipaddress.rst:752 msgid "" "These attribute is true for the network as a whole if it is true for both " "the network address and the broadcast address." msgstr "" -#: library/ipaddress.rst:754 +#: library/ipaddress.rst:759 msgid "" "Network objects support some operators. Unless stated otherwise, operators " "can only be applied between compatible objects (i.e. IPv4 with IPv4, IPv6 " "with IPv6)." msgstr "" -#: library/ipaddress.rst:896 +#: library/ipaddress.rst:901 msgid "Logical operators" msgstr "Opérateurs logiques" -#: library/ipaddress.rst:762 +#: library/ipaddress.rst:767 msgid "" "Network objects can be compared with the usual set of logical operators. " "Network objects are ordered first by network address, then by net mask." msgstr "" -#: library/ipaddress.rst:767 +#: library/ipaddress.rst:772 msgid "Iteration" msgstr "Itération" -#: library/ipaddress.rst:769 +#: library/ipaddress.rst:774 msgid "" "Network objects can be iterated to list all the addresses belonging to the " "network. For iteration, *all* hosts are returned, including unusable hosts " "(for usable hosts, use the :meth:`~IPv4Network.hosts` method). An example::" msgstr "" -#: library/ipaddress.rst:796 +#: library/ipaddress.rst:801 msgid "Networks as containers of addresses" msgstr "Réseaux en tant que conteneurs d'adresses" -#: library/ipaddress.rst:798 +#: library/ipaddress.rst:803 msgid "Network objects can act as containers of addresses. Some examples::" msgstr "" "Les objets réseau peuvent agir en tant que conteneurs d'adresses. Quelques " "exemples ::" -#: library/ipaddress.rst:811 +#: library/ipaddress.rst:816 msgid "Interface objects" msgstr "Objets interface" -#: library/ipaddress.rst:813 +#: library/ipaddress.rst:818 msgid "" "Interface objects are :term:`hashable`, so they can be used as keys in " "dictionaries." @@ -917,84 +926,84 @@ msgstr "" "Les objets interface sont :term:`hachables`, ce qui signifie " "qu'ils peuvent être utilisés comme clés de dictionnaire." -#: library/ipaddress.rst:818 +#: library/ipaddress.rst:823 msgid "" "Construct an IPv4 interface. The meaning of *address* is as in the " "constructor of :class:`IPv4Network`, except that arbitrary host addresses " "are always accepted." msgstr "" -#: library/ipaddress.rst:822 +#: library/ipaddress.rst:827 msgid "" ":class:`IPv4Interface` is a subclass of :class:`IPv4Address`, so it inherits " "all the attributes from that class. In addition, the following attributes " "are available:" msgstr "" -#: library/ipaddress.rst:828 +#: library/ipaddress.rst:833 msgid "The address (:class:`IPv4Address`) without network information." msgstr "L'adresse (:class:`IPv4Address`) sans information de réseau." -#: library/ipaddress.rst:836 +#: library/ipaddress.rst:841 msgid "The network (:class:`IPv4Network`) this interface belongs to." msgstr "Le réseau (:class:`IPv4Network`) auquel cette interface appartient." -#: library/ipaddress.rst:844 +#: library/ipaddress.rst:849 msgid "" "A string representation of the interface with the mask in prefix notation." msgstr "" -#: library/ipaddress.rst:852 +#: library/ipaddress.rst:857 msgid "" "A string representation of the interface with the network as a net mask." msgstr "" -#: library/ipaddress.rst:860 +#: library/ipaddress.rst:865 msgid "" "A string representation of the interface with the network as a host mask." msgstr "" -#: library/ipaddress.rst:869 +#: library/ipaddress.rst:874 msgid "" "Construct an IPv6 interface. The meaning of *address* is as in the " "constructor of :class:`IPv6Network`, except that arbitrary host addresses " "are always accepted." msgstr "" -#: library/ipaddress.rst:873 +#: library/ipaddress.rst:878 msgid "" ":class:`IPv6Interface` is a subclass of :class:`IPv6Address`, so it inherits " "all the attributes from that class. In addition, the following attributes " "are available:" msgstr "" -#: library/ipaddress.rst:883 +#: library/ipaddress.rst:888 msgid "" "Refer to the corresponding attribute documentation in :class:`IPv4Interface`." msgstr "" "Référez-vous à la documentation de l'attribut correspondant dans :class:" "`IPv4Interface`." -#: library/ipaddress.rst:890 +#: library/ipaddress.rst:895 msgid "" "Interface objects support some operators. Unless stated otherwise, " "operators can only be applied between compatible objects (i.e. IPv4 with " "IPv4, IPv6 with IPv6)." msgstr "" -#: library/ipaddress.rst:898 +#: library/ipaddress.rst:903 msgid "" "Interface objects can be compared with the usual set of logical operators." msgstr "" -#: library/ipaddress.rst:900 +#: library/ipaddress.rst:905 msgid "" "For equality comparison (``==`` and ``!=``), both the IP address and network " "must be the same for the objects to be equal. An interface will not compare " "equal to any address or network object." msgstr "" -#: library/ipaddress.rst:904 +#: library/ipaddress.rst:909 msgid "" "For ordering (``<``, ``>``, etc) the rules are different. Interface and " "address objects with the same IP version can be compared, and the address " @@ -1003,15 +1012,15 @@ msgid "" "then by their IP addresses." msgstr "" -#: library/ipaddress.rst:912 +#: library/ipaddress.rst:917 msgid "Other Module Level Functions" msgstr "Autres fonctions au niveau de module" -#: library/ipaddress.rst:914 +#: library/ipaddress.rst:919 msgid "The module also provides the following module level functions:" msgstr "Le module fournit aussi les fonctions suivantes :" -#: library/ipaddress.rst:918 +#: library/ipaddress.rst:923 msgid "" "Represent an address as 4 packed bytes in network (big-endian) order. " "*address* is an integer representation of an IPv4 IP address. A :exc:" @@ -1019,7 +1028,7 @@ msgid "" "IP address." msgstr "" -#: library/ipaddress.rst:931 +#: library/ipaddress.rst:936 msgid "" "Represent an address as 16 packed bytes in network (big-endian) order. " "*address* is an integer representation of an IPv6 IP address. A :exc:" @@ -1027,7 +1036,7 @@ msgid "" "IP address." msgstr "" -#: library/ipaddress.rst:939 +#: library/ipaddress.rst:944 msgid "" "Return an iterator of the summarized network range given the first and last " "IP addresses. *first* is the first :class:`IPv4Address` or :class:" @@ -1038,7 +1047,7 @@ msgid "" "address version is not 4 or 6." msgstr "" -#: library/ipaddress.rst:955 +#: library/ipaddress.rst:960 msgid "" "Return an iterator of the collapsed :class:`IPv4Network` or :class:" "`IPv6Network` objects. *addresses* is an iterator of :class:`IPv4Network` " @@ -1046,38 +1055,38 @@ msgid "" "*addresses* contains mixed version objects." msgstr "" -#: library/ipaddress.rst:968 +#: library/ipaddress.rst:973 msgid "" "Return a key suitable for sorting between networks and addresses. Address " "and Network objects are not sortable by default; they're fundamentally " "different, so the expression::" msgstr "" -#: library/ipaddress.rst:974 +#: library/ipaddress.rst:979 msgid "" "doesn't make sense. There are some times however, where you may wish to " "have :mod:`ipaddress` sort these anyway. If you need to do this, you can " "use this function as the *key* argument to :func:`sorted()`." msgstr "" -#: library/ipaddress.rst:978 +#: library/ipaddress.rst:983 msgid "*obj* is either a network or address object." msgstr "*obj* est un objet réseau ou adresse." -#: library/ipaddress.rst:982 +#: library/ipaddress.rst:987 msgid "Custom Exceptions" msgstr "Exceptions personnalisées" -#: library/ipaddress.rst:984 +#: library/ipaddress.rst:989 msgid "" "To support more specific error reporting from class constructors, the module " "defines the following exceptions:" msgstr "" -#: library/ipaddress.rst:989 +#: library/ipaddress.rst:994 msgid "Any value error related to the address." msgstr "Toute erreur de valeur liée à l'adresse." -#: library/ipaddress.rst:994 +#: library/ipaddress.rst:999 msgid "Any value error related to the net mask." msgstr "Toute erreur de valeur liée au masque réseau." diff --git a/library/itertools.po b/library/itertools.po index e801594b7..680ea6955 100644 --- a/library/itertools.po +++ b/library/itertools.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-09-28 18:16+0200\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -69,15 +69,15 @@ msgstr "" msgid "**Infinite iterators:**" msgstr "**Itérateurs infinis :**" -#: library/itertools.rst:48 library/itertools.rst:67 +#: library/itertools.rst:48 library/itertools.rst:68 msgid "Iterator" msgstr "Itérateur" -#: library/itertools.rst:48 library/itertools.rst:67 +#: library/itertools.rst:48 library/itertools.rst:68 msgid "Arguments" msgstr "Arguments" -#: library/itertools.rst:48 library/itertools.rst:76 +#: library/itertools.rst:48 library/itertools.rst:77 msgid "Results" msgstr "Résultats" @@ -157,7 +157,7 @@ msgstr "``accumulate([1,2,3,4,5]) --> 1 3 6 10 15``" msgid ":func:`chain`" msgstr ":func:`chain`" -#: library/itertools.rst:61 +#: library/itertools.rst:62 msgid "p, q, ..." msgstr "p, q, ..." @@ -173,7 +173,7 @@ msgstr "``chain('ABC', 'DEF') --> A B C D E F``" msgid ":func:`chain.from_iterable`" msgstr ":func:`chain.from_iterable`" -#: library/itertools.rst:52 +#: library/itertools.rst:58 msgid "iterable" msgstr "itérable" @@ -201,7 +201,7 @@ msgstr "``compress('ABCDEF', [1,0,1,0,1,1]) --> A C E F``" msgid ":func:`dropwhile`" msgstr ":func:`dropwhile`" -#: library/itertools.rst:55 library/itertools.rst:59 +#: library/itertools.rst:55 library/itertools.rst:60 msgid "pred, seq" msgstr "pred, seq" @@ -254,148 +254,163 @@ msgid "``islice('ABCDEFG', 2, None) --> C D E F G``" msgstr "``islice('ABCDEFG', 2, None) --> C D E F G``" #: library/itertools.rst:58 +#, fuzzy +msgid ":func:`pairwise`" +msgstr ":func:`islice`" + +#: library/itertools.rst:58 +#, fuzzy +msgid "(p[0], p[1]), (p[1], p[2])" +msgstr "(p[0], q[0]), (p[1], q[1]), ..." + +#: library/itertools.rst:58 +#, fuzzy +msgid "``pairwise('ABCDEFG') --> AB BC CD DE EF FG``" +msgstr "``chain('ABC', 'DEF') --> A B C D E F``" + +#: library/itertools.rst:59 msgid ":func:`starmap`" msgstr ":func:`starmap`" -#: library/itertools.rst:58 +#: library/itertools.rst:59 msgid "func, seq" msgstr "func, seq" -#: library/itertools.rst:58 +#: library/itertools.rst:59 msgid "func(\\*seq[0]), func(\\*seq[1]), ..." msgstr "func(\\*seq[0]), func(\\*seq[1]), ..." -#: library/itertools.rst:58 +#: library/itertools.rst:59 msgid "``starmap(pow, [(2,5), (3,2), (10,3)]) --> 32 9 1000``" msgstr "``starmap(pow, [(2,5), (3,2), (10,3)]) --> 32 9 1000``" -#: library/itertools.rst:59 +#: library/itertools.rst:60 msgid ":func:`takewhile`" msgstr ":func:`takewhile`" -#: library/itertools.rst:59 +#: library/itertools.rst:60 msgid "seq[0], seq[1], until pred fails" msgstr "``seq[0]``, ``seq[1]``, jusqu'à ce que *pred* échoue" -#: library/itertools.rst:59 +#: library/itertools.rst:60 msgid "``takewhile(lambda x: x<5, [1,4,6,4,1]) --> 1 4``" msgstr "``takewhile(lambda x: x<5, [1,4,6,4,1]) --> 1 4``" -#: library/itertools.rst:60 +#: library/itertools.rst:61 msgid ":func:`tee`" msgstr ":func:`tee`" -#: library/itertools.rst:60 +#: library/itertools.rst:61 msgid "it, n" msgstr "it, n" -#: library/itertools.rst:60 +#: library/itertools.rst:61 msgid "it1, it2, ... itn splits one iterator into n" msgstr "*it1*, *it2*, ... *itn* sépare un itérateur en *n*" -#: library/itertools.rst:61 +#: library/itertools.rst:62 msgid ":func:`zip_longest`" msgstr ":func:`zip_longest`" -#: library/itertools.rst:61 +#: library/itertools.rst:62 msgid "(p[0], q[0]), (p[1], q[1]), ..." msgstr "(p[0], q[0]), (p[1], q[1]), ..." -#: library/itertools.rst:61 +#: library/itertools.rst:62 msgid "``zip_longest('ABCD', 'xy', fillvalue='-') --> Ax By C- D-``" msgstr "``zip_longest('ABCD', 'xy', fillvalue='-') --> Ax By C- D-``" -#: library/itertools.rst:64 +#: library/itertools.rst:65 msgid "**Combinatoric iterators:**" msgstr "**Itérateurs combinatoires :**" -#: library/itertools.rst:69 +#: library/itertools.rst:70 msgid ":func:`product`" msgstr ":func:`product`" -#: library/itertools.rst:69 +#: library/itertools.rst:70 msgid "p, q, ... [repeat=1]" msgstr "p, q, ... [repeat=1]" -#: library/itertools.rst:69 +#: library/itertools.rst:70 msgid "cartesian product, equivalent to a nested for-loop" msgstr "produit cartésien, équivalent à une boucle *for* imbriquée" -#: library/itertools.rst:70 +#: library/itertools.rst:71 msgid ":func:`permutations`" msgstr ":func:`permutations`" -#: library/itertools.rst:70 +#: library/itertools.rst:71 msgid "p[, r]" msgstr "p[, r]" -#: library/itertools.rst:70 +#: library/itertools.rst:71 msgid "r-length tuples, all possible orderings, no repeated elements" msgstr "" "*n*-uplets de longueur r, tous les ré-arrangements possibles, sans " "répétition d'éléments" -#: library/itertools.rst:71 +#: library/itertools.rst:72 msgid ":func:`combinations`" msgstr ":func:`combinations`" -#: library/itertools.rst:72 +#: library/itertools.rst:73 msgid "p, r" msgstr "p, r" -#: library/itertools.rst:71 +#: library/itertools.rst:72 msgid "r-length tuples, in sorted order, no repeated elements" msgstr "*n*-uplets de longueur r, ordonnés, sans répétition d'éléments" -#: library/itertools.rst:72 +#: library/itertools.rst:73 msgid ":func:`combinations_with_replacement`" msgstr ":func:`combinations_with_replacement`" -#: library/itertools.rst:72 +#: library/itertools.rst:73 msgid "r-length tuples, in sorted order, with repeated elements" msgstr "*n*-uplets de longueur r, ordonnés, avec répétition d'éléments" -#: library/itertools.rst:76 +#: library/itertools.rst:77 msgid "Examples" msgstr "Exemples" -#: library/itertools.rst:78 +#: library/itertools.rst:79 msgid "``product('ABCD', repeat=2)``" msgstr "``product('ABCD', repeat=2)``" -#: library/itertools.rst:78 +#: library/itertools.rst:79 msgid "``AA AB AC AD BA BB BC BD CA CB CC CD DA DB DC DD``" msgstr "``AA AB AC AD BA BB BC BD CA CB CC CD DA DB DC DD``" -#: library/itertools.rst:79 +#: library/itertools.rst:80 msgid "``permutations('ABCD', 2)``" msgstr "``permutations('ABCD', 2)``" -#: library/itertools.rst:79 +#: library/itertools.rst:80 msgid "``AB AC AD BA BC BD CA CB CD DA DB DC``" msgstr "``AB AC AD BA BC BD CA CB CD DA DB DC``" -#: library/itertools.rst:80 +#: library/itertools.rst:81 msgid "``combinations('ABCD', 2)``" msgstr "``combinations('ABCD', 2)``" -#: library/itertools.rst:80 +#: library/itertools.rst:81 msgid "``AB AC AD BC BD CD``" msgstr "``AB AC AD BC BD CD``" -#: library/itertools.rst:81 +#: library/itertools.rst:82 msgid "``combinations_with_replacement('ABCD', 2)``" msgstr "``combinations_with_replacement('ABCD', 2)``" -#: library/itertools.rst:81 +#: library/itertools.rst:82 msgid "``AA AB AC AD BB BC BD CC CD DD``" msgstr "``AA AB AC AD BB BC BD CC CD DD``" -#: library/itertools.rst:88 +#: library/itertools.rst:89 msgid "Itertool functions" msgstr "Fonctions d'*itertool*" -#: library/itertools.rst:90 +#: library/itertools.rst:91 msgid "" "The following module functions all construct and return iterators. Some " "provide streams of infinite length, so they should only be accessed by " @@ -406,7 +421,7 @@ msgstr "" "doivent donc être contrôlées que par des fonctions ou boucles qui " "interrompent le flux." -#: library/itertools.rst:96 +#: library/itertools.rst:97 msgid "" "Make an iterator that returns accumulated sums, or accumulated results of " "other binary functions (specified via the optional *func* argument)." @@ -414,7 +429,7 @@ msgstr "" "Crée un itérateur qui renvoie les sommes cumulées, ou les résultats cumulés " "d'autres fonctions binaires (spécifiées par l'argument optionnel *func*)." -#: library/itertools.rst:100 +#: library/itertools.rst:101 msgid "" "If *func* is supplied, it should be a function of two arguments. Elements of " "the input *iterable* may be any type that can be accepted as arguments to " @@ -429,7 +444,7 @@ msgstr "" "additionnable, :class:`~decimal.Decimal` ou :class:`~fractions.Fraction` " "inclus." -#: library/itertools.rst:107 +#: library/itertools.rst:108 msgid "" "Usually, the number of elements output matches the input iterable. However, " "if the keyword argument *initial* is provided, the accumulation leads off " @@ -442,12 +457,12 @@ msgstr "" "valeur de *initial* et donc la sortie compte un élément de plus que ce qui " "est produit par l'entrée *iterable*." -#: library/itertools.rst:210 library/itertools.rst:495 -#: library/itertools.rst:630 +#: library/itertools.rst:211 library/itertools.rst:487 +#: library/itertools.rst:596 library/itertools.rst:649 msgid "Roughly equivalent to::" msgstr "À peu près équivalent à ::" -#: library/itertools.rst:131 +#: library/itertools.rst:132 msgid "" "There are a number of uses for the *func* argument. It can be set to :func:" "`min` for a running minimum, :func:`max` for a running maximum, or :func:" @@ -467,7 +482,7 @@ msgstr "" "n'utilisant que le premier argument de *func*, qui contient le résultat des " "évaluations précédentes ::" -#: library/itertools.rst:161 +#: library/itertools.rst:162 msgid "" "See :func:`functools.reduce` for a similar function that returns only the " "final accumulated value." @@ -475,15 +490,15 @@ msgstr "" "Voir :func:`functools.reduce` pour une fonction similaire qui ne renvoie que " "la valeur accumulée finale." -#: library/itertools.rst:166 +#: library/itertools.rst:167 msgid "Added the optional *func* parameter." msgstr "Ajout du paramètre optionnel *func*." -#: library/itertools.rst:169 +#: library/itertools.rst:170 msgid "Added the optional *initial* parameter." msgstr "Ajout du paramètre optionnel *initial*." -#: library/itertools.rst:174 +#: library/itertools.rst:175 msgid "" "Make an iterator that returns elements from the first iterable until it is " "exhausted, then proceeds to the next iterable, until all of the iterables " @@ -495,7 +510,7 @@ msgstr "" "itérables soient épuisés. Utilisée pour traiter des séquences consécutives " "comme une seule séquence. À peu près équivalent à ::" -#: library/itertools.rst:188 +#: library/itertools.rst:189 msgid "" "Alternate constructor for :func:`chain`. Gets chained inputs from a single " "iterable argument that is evaluated lazily. Roughly equivalent to::" @@ -504,11 +519,11 @@ msgstr "" "depuis un unique itérable passé en argument, qui est évalué de manière " "paresseuse. À peu près équivalent à ::" -#: library/itertools.rst:200 +#: library/itertools.rst:201 msgid "Return *r* length subsequences of elements from the input *iterable*." msgstr "Renvoie les combinaisons de longueur *r* de *iterable*." -#: library/itertools.rst:251 +#: library/itertools.rst:252 #, fuzzy msgid "" "The combination tuples are emitted in lexicographic ordering according to " @@ -519,7 +534,7 @@ msgstr "" "l'itérable *iterable* est ordonné, les *n*-uplets de combinaison produits le " "sont aussi." -#: library/itertools.rst:206 +#: library/itertools.rst:207 msgid "" "Elements are treated as unique based on their position, not on their value. " "So if the input elements are unique, there will be no repeat values in each " @@ -529,7 +544,7 @@ msgstr "" "non pas de leur valeur. Ainsi, si les éléments en entrée sont uniques, il " "n'y aura pas de valeurs répétées dans chaque combinaison." -#: library/itertools.rst:232 +#: library/itertools.rst:233 msgid "" "The code for :func:`combinations` can be also expressed as a subsequence of :" "func:`permutations` after filtering entries where the elements are not in " @@ -539,7 +554,7 @@ msgstr "" "`permutations` en excluant les sorties dans lesquelles les éléments ne sont " "pas ordonnés (avec la même relation d'ordre que pour l'entrée) ::" -#: library/itertools.rst:243 +#: library/itertools.rst:244 msgid "" "The number of items returned is ``n! / r! / (n-r)!`` when ``0 <= r <= n`` or " "zero when ``r > n``." @@ -547,7 +562,7 @@ msgstr "" "Le nombre d'éléments renvoyés est ``n! / r! / (n-r)!`` quand ``0 <= r <= n`` " "ou zéro quand ``r > n``." -#: library/itertools.rst:248 +#: library/itertools.rst:249 msgid "" "Return *r* length subsequences of elements from the input *iterable* " "allowing individual elements to be repeated more than once." @@ -556,7 +571,7 @@ msgstr "" "*iterable* d'entrée, permettant aux éléments individuels d'être répétés plus " "d'une fois." -#: library/itertools.rst:255 +#: library/itertools.rst:256 msgid "" "Elements are treated as unique based on their position, not on their value. " "So if the input elements are unique, the generated combinations will also be " @@ -566,7 +581,7 @@ msgstr "" "non pas de leur valeur. Ainsi si les éléments d'entrée sont uniques, les " "combinaisons générées seront aussi uniques." -#: library/itertools.rst:278 +#: library/itertools.rst:279 msgid "" "The code for :func:`combinations_with_replacement` can be also expressed as " "a subsequence of :func:`product` after filtering entries where the elements " @@ -577,13 +592,13 @@ msgstr "" "ne sont pas dans ordonnés (avec la même relation d'ordre que pour " "l'entrée) ::" -#: library/itertools.rst:289 +#: library/itertools.rst:290 msgid "" "The number of items returned is ``(n+r-1)! / r! / (n-1)!`` when ``n > 0``." msgstr "" "Le nombre d'éléments renvoyés est ``(n+r-1)! / r! / (n-1)!`` quand ``n > 0``." -#: library/itertools.rst:296 +#: library/itertools.rst:297 msgid "" "Make an iterator that filters elements from *data* returning only those that " "have a corresponding element in *selectors* that evaluates to ``True``. " @@ -595,7 +610,7 @@ msgstr "" "S'arrête quand l'itérable *data* ou *selectors* a été épuisé. À peu près " "équivalent à ::" -#: library/itertools.rst:310 +#: library/itertools.rst:311 msgid "" "Make an iterator that returns evenly spaced values starting with number " "*start*. Often used as an argument to :func:`map` to generate consecutive " @@ -607,7 +622,7 @@ msgstr "" "`map` pour générer des points de données consécutifs. Aussi utilisé avec :" "func:`zip` pour ajouter des nombres de séquence. À peu près équivalent à ::" -#: library/itertools.rst:322 +#: library/itertools.rst:323 msgid "" "When counting with floating point numbers, better accuracy can sometimes be " "achieved by substituting multiplicative code such as: ``(start + step * i " @@ -617,13 +632,13 @@ msgstr "" "d'utiliser le code : ``(start + step * i for i in count())`` pour obtenir " "une meilleure précision." -#: library/itertools.rst:326 +#: library/itertools.rst:327 msgid "Added *step* argument and allowed non-integer arguments." msgstr "" "Ajout de l'argument *step* et ajout du support pour les arguments non-" "entiers." -#: library/itertools.rst:331 +#: library/itertools.rst:332 msgid "" "Make an iterator returning elements from the iterable and saving a copy of " "each. When the iterable is exhausted, return elements from the saved copy. " @@ -633,7 +648,7 @@ msgstr "" "une copie. Quand l'itérable est épuisé, renvoie les éléments depuis la " "sauvegarde. Répète à l'infini. À peu près équivalent à ::" -#: library/itertools.rst:345 +#: library/itertools.rst:346 msgid "" "Note, this member of the toolkit may require significant auxiliary storage " "(depending on the length of the iterable)." @@ -641,7 +656,7 @@ msgstr "" "Note, cette fonction peut avoir besoin d'un stockage auxiliaire important " "(en fonction de la longueur de l'itérable)." -#: library/itertools.rst:351 +#: library/itertools.rst:352 msgid "" "Make an iterator that drops elements from the iterable as long as the " "predicate is true; afterwards, returns every element. Note, the iterator " @@ -653,7 +668,7 @@ msgstr "" "*aucune* sortie avant que le prédicat ne devienne faux, il peut donc avoir " "un temps de démarrage long. À peu près équivalent à ::" -#: library/itertools.rst:368 +#: library/itertools.rst:369 msgid "" "Make an iterator that filters elements from iterable returning only those " "for which the predicate is ``False``. If *predicate* is ``None``, return the " @@ -663,7 +678,7 @@ msgstr "" "seulement ceux pour lesquels le prédicat est ``False``. Si *predicate* vaut " "``None``, renvoie les éléments qui sont faux. À peu près équivalent à ::" -#: library/itertools.rst:383 +#: library/itertools.rst:384 msgid "" "Make an iterator that returns consecutive keys and groups from the " "*iterable*. The *key* is a function computing a key value for each element. " @@ -678,7 +693,7 @@ msgstr "" "Généralement, l'itérable a besoin d'avoir ses éléments déjà classés selon " "cette même fonction de clé." -#: library/itertools.rst:389 +#: library/itertools.rst:390 msgid "" "The operation of :func:`groupby` is similar to the ``uniq`` filter in Unix. " "It generates a break or new group every time the value of the key function " @@ -693,7 +708,7 @@ msgstr "" "GROUP BY de SQL qui agrège les éléments sans prendre compte de leur ordre " "d'entrée." -#: library/itertools.rst:395 +#: library/itertools.rst:396 msgid "" "The returned group is itself an iterator that shares the underlying iterable " "with :func:`groupby`. Because the source is shared, when the :func:" @@ -706,11 +721,11 @@ msgstr "" "Ainsi, si cette donnée doit être utilisée plus tard, elle doit être stockée " "comme une liste ::" -#: library/itertools.rst:407 +#: library/itertools.rst:408 msgid ":func:`groupby` is roughly equivalent to::" msgstr ":func:`groupby` est à peu près équivalente à ::" -#: library/itertools.rst:440 +#: library/itertools.rst:441 msgid "" "Make an iterator that returns selected elements from the iterable. If " "*start* is non-zero, then elements from the iterable are skipped until start " @@ -736,7 +751,7 @@ msgstr "" "multi-lignes pourrait lister un nom de champ toutes les trois lignes). À peu " "près similaire à ::" -#: library/itertools.rst:475 +#: library/itertools.rst:476 msgid "" "If *start* is ``None``, then iteration starts at zero. If *step* is " "``None``, then the step defaults to one." @@ -745,13 +760,27 @@ msgstr "" "``None``, alors le pas est à 1 par défaut." #: library/itertools.rst:481 +#, fuzzy +msgid "Return successive overlapping pairs taken from the input *iterable*." +msgstr "" +"Renvoie les arrangements successifs de longueur *r* des éléments de " +"*iterable*." + +#: library/itertools.rst:483 +msgid "" +"The number of 2-tuples in the output iterator will be one fewer than the " +"number of inputs. It will be empty if the input iterable has fewer than two " +"values." +msgstr "" + +#: library/itertools.rst:500 msgid "" "Return successive *r* length permutations of elements in the *iterable*." msgstr "" "Renvoie les arrangements successifs de longueur *r* des éléments de " "*iterable*." -#: library/itertools.rst:483 +#: library/itertools.rst:502 msgid "" "If *r* is not specified or is ``None``, then *r* defaults to the length of " "the *iterable* and all possible full-length permutations are generated." @@ -760,7 +789,7 @@ msgstr "" "longueur de *iterable* et toutes les permutations de longueur *r* possibles " "sont générées." -#: library/itertools.rst:487 +#: library/itertools.rst:506 #, fuzzy msgid "" "The permutation tuples are emitted in lexicographic ordering according to " @@ -771,7 +800,7 @@ msgstr "" "l'itérable *iterable* est ordonné, les *n*-uplets de combinaison produits le " "sont aussi." -#: library/itertools.rst:491 +#: library/itertools.rst:510 msgid "" "Elements are treated as unique based on their position, not on their value. " "So if the input elements are unique, there will be no repeat values in each " @@ -781,7 +810,7 @@ msgstr "" "non pas de leur valeur. Ainsi, si l'élément est unique, il n'y aura pas de " "valeurs répétées dans chaque permutation." -#: library/itertools.rst:522 +#: library/itertools.rst:541 msgid "" "The code for :func:`permutations` can be also expressed as a subsequence of :" "func:`product`, filtered to exclude entries with repeated elements (those " @@ -791,7 +820,7 @@ msgstr "" "`product` en excluant les sorties avec des doublons (avec la même relation " "d'ordre que pour l'entrée) ::" -#: library/itertools.rst:534 +#: library/itertools.rst:553 msgid "" "The number of items returned is ``n! / (n-r)!`` when ``0 <= r <= n`` or zero " "when ``r > n``." @@ -799,11 +828,11 @@ msgstr "" "Le nombre d'éléments renvoyés est ``n! / (n-r)!`` quand ``0 <= r <= n`` ou " "zéro quand ``r > n``." -#: library/itertools.rst:539 +#: library/itertools.rst:558 msgid "Cartesian product of input iterables." msgstr "Produit cartésien des itérables d'entrée." -#: library/itertools.rst:541 +#: library/itertools.rst:560 msgid "" "Roughly equivalent to nested for-loops in a generator expression. For " "example, ``product(A, B)`` returns the same as ``((x,y) for x in A for y in " @@ -813,7 +842,7 @@ msgstr "" "générateur. Par exemple ``product(A, B)`` renvoie la même chose que ``((x, " "y) for x in A for y in B)``." -#: library/itertools.rst:544 +#: library/itertools.rst:563 msgid "" "The nested loops cycle like an odometer with the rightmost element advancing " "on every iteration. This pattern creates a lexicographic ordering so that " @@ -825,7 +854,7 @@ msgstr "" "ordre lexicographique afin que, si les éléments des itérables en l'entrée " "sont ordonnés, les *n*-uplets produits le sont aussi." -#: library/itertools.rst:549 +#: library/itertools.rst:568 msgid "" "To compute the product of an iterable with itself, specify the number of " "repetitions with the optional *repeat* keyword argument. For example, " @@ -835,7 +864,7 @@ msgstr "" "répétitions avec le paramètre nommé optionnel *repeat*. Par exemple, " "``product(A, repeat=4)`` est équivalent à ``product(A, A, A, A)``." -#: library/itertools.rst:553 +#: library/itertools.rst:572 msgid "" "This function is roughly equivalent to the following code, except that the " "actual implementation does not build up intermediate results in memory::" @@ -844,14 +873,14 @@ msgstr "" "près que la vraie implémentation ne crée pas de résultats intermédiaires en " "mémoire ::" -#: library/itertools.rst:566 +#: library/itertools.rst:585 msgid "" "Before :func:`product` runs, it completely consumes the input iterables, " "keeping pools of values in memory to generate the products. Accordingly, it " "is only useful with finite inputs." msgstr "" -#: library/itertools.rst:572 +#: library/itertools.rst:591 msgid "" "Make an iterator that returns *object* over and over again. Runs " "indefinitely unless the *times* argument is specified. Used as argument to :" @@ -863,7 +892,7 @@ msgstr "" "`map` pour les paramètres invariants de la fonction appelée. Aussi utilisée " "avec :func:`zip` pour créer une partie invariante d'un *n*-uplet." -#: library/itertools.rst:588 +#: library/itertools.rst:607 msgid "" "A common use for *repeat* is to supply a stream of constant values to *map* " "or *zip*::" @@ -871,7 +900,7 @@ msgstr "" "Une utilisation courante de *repeat* est de fournir un flux constant de " "valeurs à *map* ou *zip* ::" -#: library/itertools.rst:596 +#: library/itertools.rst:615 msgid "" "Make an iterator that computes the function using arguments obtained from " "the iterable. Used instead of :func:`map` when argument parameters are " @@ -887,7 +916,7 @@ msgstr "" "la différence entre ``fonction(a,b)`` et ``fonction(*c)``. À peu près " "équivalent à ::" -#: library/itertools.rst:610 +#: library/itertools.rst:629 msgid "" "Make an iterator that returns elements from the iterable as long as the " "predicate is true. Roughly equivalent to::" @@ -895,11 +924,11 @@ msgstr "" "Crée un itérateur qui renvoie les éléments d'un itérable tant que le " "prédicat est vrai. À peu près équivalent à ::" -#: library/itertools.rst:624 +#: library/itertools.rst:643 msgid "Return *n* independent iterators from a single iterable." msgstr "Renvoie *n* itérateurs indépendants depuis un unique itérable." -#: library/itertools.rst:626 +#: library/itertools.rst:645 msgid "" "The following Python code helps explain what *tee* does (although the actual " "implementation is more complex and uses only a single underlying :abbr:`FIFO " @@ -909,7 +938,7 @@ msgstr "" "vraie implémentation soit plus complexe et n'utilise qu'une file :abbr:`FIFO " "(premier entré, premier sorti ou *first-in, first-out* en anglais)`." -#: library/itertools.rst:647 +#: library/itertools.rst:666 msgid "" "Once :func:`tee` has made a split, the original *iterable* should not be " "used anywhere else; otherwise, the *iterable* could get advanced without the " @@ -919,14 +948,14 @@ msgstr "" "doit être utilisé nulle part ailleurs ; sinon, *iterable* pourrait être " "avancé sans que les objets tee ne soient informés." -#: library/itertools.rst:651 +#: library/itertools.rst:670 msgid "" "``tee`` iterators are not threadsafe. A :exc:`RuntimeError` may be raised " "when using simultaneously iterators returned by the same :func:`tee` call, " "even if the original *iterable* is threadsafe." msgstr "" -#: library/itertools.rst:655 +#: library/itertools.rst:674 msgid "" "This itertool may require significant auxiliary storage (depending on how " "much temporary data needs to be stored). In general, if one iterator uses " @@ -939,7 +968,7 @@ msgstr "" "ne commence, il est plus rapide d'utiliser :func:`list` à la place de :func:" "`tee`." -#: library/itertools.rst:663 +#: library/itertools.rst:682 msgid "" "Make an iterator that aggregates elements from each of the iterables. If the " "iterables are of uneven length, missing values are filled-in with " @@ -951,7 +980,7 @@ msgstr "" "remplacées par *fillvalue*. L'itération continue jusqu'à ce que l'itérable " "le plus long soit épuisé. À peu près équivalent à ::" -#: library/itertools.rst:687 +#: library/itertools.rst:706 msgid "" "If one of the iterables is potentially infinite, then the :func:" "`zip_longest` function should be wrapped with something that limits the " @@ -963,11 +992,11 @@ msgstr "" "d'appels (par exemple, :func:`islice` ou :func:`takewhile`). Si *fillvalue* " "n'est pas spécifié, il vaut ``None`` par défaut." -#: library/itertools.rst:696 +#: library/itertools.rst:715 msgid "Itertools Recipes" msgstr "Recettes *itertools*" -#: library/itertools.rst:698 +#: library/itertools.rst:717 msgid "" "This section shows recipes for creating an extended toolset using the " "existing itertools as building blocks." @@ -975,7 +1004,7 @@ msgstr "" "Cette section présente des recettes pour créer une vaste boîte à outils en " "se servant des *itertools* existants comme des briques." -#: library/itertools.rst:701 +#: library/itertools.rst:720 msgid "" "Substantially all of these recipes and many, many others can be installed " "from the `more-itertools project `_, " "disponible dans le Python Package Index ::" -#: library/itertools.rst:707 +#: library/itertools.rst:726 msgid "" "The extended tools offer the same high performance as the underlying " "toolset. The superior memory performance is kept by processing elements one " diff --git a/library/locale.po b/library/locale.po index e3122f06e..575b0d8b5 100644 --- a/library/locale.po +++ b/library/locale.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-05-19 08:26+0200\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -641,11 +641,12 @@ msgstr "" "`LC_CTYPE`." #: library/locale.rst:318 +#, fuzzy msgid "" -"Return the encoding used for text data, according to user preferences. User " -"preferences are expressed differently on different systems, and might not be " -"available programmatically on some systems, so this function only returns a " -"guess." +"Return the :term:`locale encoding` used for text data, according to user " +"preferences. User preferences are expressed differently on different " +"systems, and might not be available programmatically on some systems, so " +"this function only returns a guess." msgstr "" "Renvoie le codage utilisé pour les données textuelles, selon les préférences " "de l'utilisateur. Les préférences de l'utilisateur sont exprimées " @@ -666,23 +667,32 @@ msgstr "" "*do_setlocale* doit être réglé à ``False``." #: library/locale.rst:327 +#, fuzzy msgid "" -"On Android or in the UTF-8 mode (:option:`-X` ``utf8`` option), always " -"return ``'UTF-8'``, the locale and the *do_setlocale* argument are ignored." +"On Android or if the :ref:`Python UTF-8 Mode ` is enabled, always " +"return ``'UTF-8'``, the :term:`locale encoding` and the *do_setlocale* " +"argument are ignored." msgstr "" "Sur Android ou dans le mode UTF-8 (avec l'option :option:`-X` ``utf8``), " "renvoie toujours ``'UTF-8'``, la locale et l'argument *do_setlocale* sont " "ignorés." -#: library/locale.rst:330 +#: library/locale.rst:331 msgid "" -"The function now always returns ``UTF-8`` on Android or if the UTF-8 mode is " -"enabled." +"The :ref:`Python preinitialization ` configures the LC_CTYPE " +"locale. See also the :term:`filesystem encoding and error handler`." +msgstr "" + +#: library/locale.rst:334 +#, fuzzy +msgid "" +"The function now always returns ``UTF-8`` on Android or if the :ref:`Python " +"UTF-8 Mode ` is enabled." msgstr "" "La fonction renvoie maintenant toujours ``UTF-8`` sur Android ou si le mode " "UTF-8 est activé." -#: library/locale.rst:337 +#: library/locale.rst:341 msgid "" "Returns a normalized locale code for the given locale name. The returned " "locale code is formatted for use with :func:`setlocale`. If normalization " @@ -692,7 +702,7 @@ msgstr "" "renvoyé est structuré de façon à être utilisé avec :func:`setlocale`. Si la " "normalisation échoue, le nom d'origine est renvoyé inchangé." -#: library/locale.rst:341 +#: library/locale.rst:345 msgid "" "If the given encoding is not known, the function defaults to the default " "encoding for the locale code just like :func:`setlocale`." @@ -700,13 +710,13 @@ msgstr "" "Si l'encodage donné n'est pas connu, la fonction utilise l'encodage par " "défaut pour le code du paramètre régional, tout comme :func:`setlocale`." -#: library/locale.rst:347 +#: library/locale.rst:351 msgid "Sets the locale for *category* to the default setting." msgstr "" "Définit le paramètre régional de la catégorie *category* au réglage par " "défaut." -#: library/locale.rst:349 +#: library/locale.rst:353 msgid "" "The default setting is determined by calling :func:`getdefaultlocale`. " "*category* defaults to :const:`LC_ALL`." @@ -714,7 +724,7 @@ msgstr "" "Le réglage par défaut est déterminé en appelant :func:`getdefaultlocale`. La " "catégorie *category* vaut par défaut :const:`LC_ALL`." -#: library/locale.rst:355 +#: library/locale.rst:359 msgid "" "Compares two strings according to the current :const:`LC_COLLATE` setting. " "As any other compare function, returns a negative, or a positive value, or " @@ -726,7 +736,7 @@ msgstr "" "négative, positive, ou ``0``, selon si *string1* est lexicographiquement " "inférieure, supérieure, ou égale à *string2*." -#: library/locale.rst:363 +#: library/locale.rst:367 msgid "" "Transforms a string to one that can be used in locale-aware comparisons. " "For example, ``strxfrm(s1) < strxfrm(s2)`` is equivalent to ``strcoll(s1, " @@ -739,7 +749,7 @@ msgstr "" "Cette fonction peut être utilisée lorsque la même chaîne est comparée de " "façon répétitive, par exemple lors de l'assemblage d'une séquence de chaînes." -#: library/locale.rst:372 +#: library/locale.rst:376 msgid "" "Formats a number *val* according to the current :const:`LC_NUMERIC` setting. " "The format follows the conventions of the ``%`` operator. For floating " @@ -751,7 +761,7 @@ msgstr "" "valeurs à virgule flottante, le point décimal est modifié si nécessaire. Si " "*grouping* est vrai, le regroupement est également pris en compte." -#: library/locale.rst:377 +#: library/locale.rst:381 msgid "" "If *monetary* is true, the conversion uses monetary thousands separator and " "grouping strings." @@ -759,7 +769,7 @@ msgstr "" "Si *monetary* est vrai, la conversion utilise un séparateur des milliers " "monétaire et des chaînes de regroupement." -#: library/locale.rst:380 +#: library/locale.rst:384 msgid "" "Processes formatting specifiers as in ``format % val``, but takes the " "current locale settings into account." @@ -767,26 +777,26 @@ msgstr "" "Traite les marqueurs de structure en ``format % val``, mais en prenant en " "compte les paramètres régionaux actuels." -#: library/locale.rst:383 +#: library/locale.rst:387 msgid "The *monetary* keyword parameter was added." msgstr "" -#: library/locale.rst:389 +#: library/locale.rst:393 msgid "" "Please note that this function works like :meth:`format_string` but will " "only work for exactly one ``%char`` specifier. For example, ``'%f'`` and " "``'%.0f'`` are both valid specifiers, but ``'%f KiB'`` is not." msgstr "" -#: library/locale.rst:393 +#: library/locale.rst:397 msgid "For whole format strings, use :func:`format_string`." msgstr "" -#: library/locale.rst:395 +#: library/locale.rst:399 msgid "Use :meth:`format_string` instead." msgstr "" -#: library/locale.rst:401 +#: library/locale.rst:405 msgid "" "Formats a number *val* according to the current :const:`LC_MONETARY` " "settings." @@ -794,7 +804,7 @@ msgstr "" "Structure un nombre *val* en fonction du paramètre :const:`LC_MONETARY` " "actuel." -#: library/locale.rst:403 +#: library/locale.rst:407 msgid "" "The returned string includes the currency symbol if *symbol* is true, which " "is the default. If *grouping* is true (which is not the default), grouping " @@ -807,7 +817,7 @@ msgstr "" "vrai (ce qui n'est pas le cas par défaut), le symbole de la devise " "internationale est utilisé." -#: library/locale.rst:408 +#: library/locale.rst:412 msgid "" "Note that this function will not work with the 'C' locale, so you have to " "set a locale via :func:`setlocale` first." @@ -815,7 +825,7 @@ msgstr "" "Notez que cette fonction ne fonctionnera pas avec le paramètre régional 'C', " "vous devez donc d'abord en définir un via :func:`setlocale`." -#: library/locale.rst:414 +#: library/locale.rst:418 msgid "" "Formats a floating point number using the same format as the built-in " "function ``str(float)``, but takes the decimal point into account." @@ -823,7 +833,7 @@ msgstr "" "Structure un nombre flottant en utilisant le même format que la fonction " "native ``str(float)``, mais en prenant en compte le point décimal." -#: library/locale.rst:420 +#: library/locale.rst:424 msgid "" "Converts a string into a normalized number string, following the :const:" "`LC_NUMERIC` settings." @@ -831,7 +841,16 @@ msgstr "" "Convertit une chaîne de caractères en une chaîne de nombres normalisés, en " "suivant les réglages :const:`LC_NUMERIC`." -#: library/locale.rst:428 +#: library/locale.rst:432 +#, fuzzy +msgid "" +"Converts a normalized number string into a formatted string following the :" +"const:`LC_NUMERIC` settings." +msgstr "" +"Convertit une chaîne de caractères en une chaîne de nombres normalisés, en " +"suivant les réglages :const:`LC_NUMERIC`." + +#: library/locale.rst:440 msgid "" "Converts a string to a floating point number, following the :const:" "`LC_NUMERIC` settings." @@ -839,7 +858,7 @@ msgstr "" "Convertit une chaîne de caractères en nombre à virgule flottante, en suivant " "les réglages :const:`LC_NUMERIC`." -#: library/locale.rst:434 +#: library/locale.rst:446 msgid "" "Converts a string to an integer, following the :const:`LC_NUMERIC` " "conventions." @@ -847,7 +866,7 @@ msgstr "" "Convertit une chaîne de caractères en un entier, en suivant les réglages :" "const:`LC_NUMERIC`." -#: library/locale.rst:441 +#: library/locale.rst:453 msgid "" "Locale category for the character type functions. Depending on the settings " "of this category, the functions of module :mod:`string` dealing with case " @@ -857,7 +876,7 @@ msgstr "" "Suivant les réglages de la catégorie, les fonctions du module :mod:`string` " "gérant la casse peuvent changer leur comportement." -#: library/locale.rst:448 +#: library/locale.rst:460 msgid "" "Locale category for sorting strings. The functions :func:`strcoll` and :" "func:`strxfrm` of the :mod:`locale` module are affected." @@ -866,7 +885,7 @@ msgstr "" "fonctions :func:`strcoll` et :func:`strxfrm` du module :mod:`locale` sont " "concernées." -#: library/locale.rst:454 +#: library/locale.rst:466 msgid "" "Locale category for the formatting of time. The function :func:`time." "strftime` follows these conventions." @@ -874,7 +893,7 @@ msgstr "" "Catégorie de paramètre régional pour la mise en forme de la date et de " "l'heure. La fonction :func:`time.strftime` suit ces conventions." -#: library/locale.rst:460 +#: library/locale.rst:472 msgid "" "Locale category for formatting of monetary values. The available options " "are available from the :func:`localeconv` function." @@ -883,7 +902,7 @@ msgstr "" "monétaires. Les options disponibles sont accessibles à partir de la " "fonction :func:`localeconv`." -#: library/locale.rst:466 +#: library/locale.rst:478 msgid "" "Locale category for message display. Python currently does not support " "application specific locale-aware messages. Messages displayed by the " @@ -896,7 +915,7 @@ msgstr "" "d'exploitation, comme ceux renvoyés par :func:`os.strerror` peuvent être " "affectés par cette catégorie." -#: library/locale.rst:474 +#: library/locale.rst:486 msgid "" "Locale category for formatting numbers. The functions :func:`.format`, :" "func:`atoi`, :func:`atof` and :func:`.str` of the :mod:`locale` module are " @@ -908,7 +927,7 @@ msgstr "" "module :mod:`locale` sont affectées par cette catégorie. Toutes les autres " "opérations de mise en forme des nombres ne sont pas affectées." -#: library/locale.rst:482 +#: library/locale.rst:494 msgid "" "Combination of all locale settings. If this flag is used when the locale is " "changed, setting the locale for all categories is attempted. If that fails " @@ -925,7 +944,7 @@ msgstr "" "indiquant le réglage pour toutes les catégories est renvoyée. Cette chaîne " "peut alors être utilisée plus tard pour restaurer les paramètres d'origine." -#: library/locale.rst:491 +#: library/locale.rst:503 msgid "" "This is a symbolic constant used for different values returned by :func:" "`localeconv`." @@ -933,18 +952,19 @@ msgstr "" "Ceci est une constante symbolique utilisée pour différentes valeurs " "renvoyées par :func:`localeconv`." -#: library/locale.rst:495 +#: library/locale.rst:507 msgid "Example::" msgstr "Exemple ::" -#: library/locale.rst:508 +#: library/locale.rst:520 msgid "Background, details, hints, tips and caveats" msgstr "Contexte, détails, conseils, astuces et mises en garde" -#: library/locale.rst:510 +#: library/locale.rst:522 +#, fuzzy msgid "" "The C standard defines the locale as a program-wide property that may be " -"relatively expensive to change. On top of that, some implementation are " +"relatively expensive to change. On top of that, some implementations are " "broken in such a way that frequent locale changes may cause core dumps. " "This makes the locale somewhat painful to use correctly." msgstr "" @@ -954,7 +974,7 @@ msgstr "" "fréquents de paramètres régionaux peuvent causer des *core dumps*. Cela " "rend l'utilisation correcte de ces paramètres quelque peu pénible." -#: library/locale.rst:515 +#: library/locale.rst:527 msgid "" "Initially, when a program is started, the locale is the ``C`` locale, no " "matter what the user's preferred locale is. There is one exception: the :" @@ -971,7 +991,7 @@ msgstr "" "veut utiliser les réglages de l'utilisateur pour les autres catégories, en " "appelant ``setlocale(LC_ALL, '')``." -#: library/locale.rst:522 +#: library/locale.rst:534 msgid "" "It is generally a bad idea to call :func:`setlocale` in some library " "routine, since as a side effect it affects the entire program. Saving and " @@ -984,7 +1004,7 @@ msgstr "" "mauvais : c'est coûteux et cela affecte d'autres fils d'exécutions qui " "s'exécutent avant que les paramètres n'aient été restaurés." -#: library/locale.rst:527 +#: library/locale.rst:539 msgid "" "If, when coding a module for general use, you need a locale independent " "version of an operation that is affected by the locale (such as certain " @@ -1003,7 +1023,7 @@ msgstr "" "dernier recours que vous devez documenter que votre module n'est pas " "compatible avec les réglages du paramètre régional ``C``." -#: library/locale.rst:534 +#: library/locale.rst:546 msgid "" "The only way to perform numeric operations according to the locale is to use " "the special functions defined by this module: :func:`atof`, :func:`atoi`, :" @@ -1013,7 +1033,7 @@ msgstr "" "paramètres régionaux est d'utiliser les fonctions spéciales définies par ce " "module : :func:`atof`, :func:`atoi`, :func:`.format`, :func:`.str`." -#: library/locale.rst:538 +#: library/locale.rst:550 msgid "" "There is no way to perform case conversions and character classifications " "according to the locale. For (Unicode) text strings these are done " @@ -1032,11 +1052,11 @@ msgstr "" "dire les octets non ASCII) ne sont jamais convertis ou considérés comme " "faisant partie d'une classe de caractères comme une lettre ou une espace." -#: library/locale.rst:549 +#: library/locale.rst:561 msgid "For extension writers and programs that embed Python" msgstr "Pour les auteurs d'extensions et les programmes qui intègrent Python" -#: library/locale.rst:551 +#: library/locale.rst:563 msgid "" "Extension modules should never call :func:`setlocale`, except to find out " "what the current locale is. But since the return value can only be used " @@ -1048,7 +1068,7 @@ msgstr "" "ne peut être utilisée que pour le restaurer, ce n'est pas très utile (sauf " "peut-être pour savoir si le paramètre régional est défini à ``C`` ou non)." -#: library/locale.rst:556 +#: library/locale.rst:568 msgid "" "When Python code uses the :mod:`locale` module to change the locale, this " "also affects the embedding application. If the embedding application " @@ -1065,11 +1085,11 @@ msgstr "" "s'assurer que le module :mod:`_locale` n'est pas accessible en tant que " "bibliothèque partagée." -#: library/locale.rst:567 +#: library/locale.rst:579 msgid "Access to message catalogs" msgstr "Accéder aux catalogues de messages" -#: library/locale.rst:575 +#: library/locale.rst:587 msgid "" "The locale module exposes the C library's gettext interface on systems that " "provide this interface. It consists of the functions :func:`!gettext`, :" @@ -1086,7 +1106,7 @@ msgstr "" "similaires aux fonctions du module :mod:`gettext`, mais utilisent le format " "binaire de la bibliothèque C pour les catalogues de messages." -#: library/locale.rst:582 +#: library/locale.rst:594 msgid "" "Python applications should normally find no need to invoke these functions, " "and should use :mod:`gettext` instead. A known exception to this rule are " diff --git a/library/logging.config.po b/library/logging.config.po index 47be39752..a93cb3d12 100644 --- a/library/logging.config.po +++ b/library/logging.config.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -160,26 +160,51 @@ msgstr "" #: library/logging.config.rst:105 msgid "" -"If specified as ``False``, loggers which exist when this call is made are " -"left enabled. The default is ``True`` because this enables old behaviour in " -"a backward-compatible way. This behaviour is to disable any existing non-" -"root loggers unless they or their ancestors are explicitly named in the " -"logging configuration." +"If specified as ``False``, loggers which " +"exist when this call is made are left " +"enabled. The default is ``True`` because " +"this enables old behaviour in " +"a backward-compatible way. This behaviour is " +"to disable any existing non-root loggers " +"unless they or their ancestors are " +"explicitly named in the logging " +"configuration. :param encoding: The encoding used to open file when *fname* " +"is filename." +msgstr "" + +#: library/logging.config.rst:112 +msgid "If specified as ``False``, loggers which" +msgstr "" + +#: library/logging.config.rst:106 +msgid "" +"exist when this call is made are left enabled. The default is ``True`` " +"because this enables old behaviour in a backward-compatible way. This " +"behaviour is to disable any existing non-root loggers unless they or their " +"ancestors are explicitly named in the logging configuration." +msgstr "" + +#: library/logging.config.rst:0 +msgid "param encoding" msgstr "" #: library/logging.config.rst:114 +msgid "The encoding used to open file when *fname* is filename." +msgstr "" + +#: library/logging.config.rst:116 msgid "" -"An instance of a subclass of :class:`~configparser.RawConfigParser` is now " +"An instance of a subclass of :class:`~configparser.RawConfigParser` is now " "accepted as a value for ``fname``. This facilitates:" msgstr "" -#: library/logging.config.rst:118 +#: library/logging.config.rst:120 msgid "" "Use of a configuration file where logging configuration is just part of the " "overall application configuration." msgstr "" -#: library/logging.config.rst:120 +#: library/logging.config.rst:122 msgid "" "Use of a configuration read from a file, and then modified by the using " "application (e.g. based on command-line parameters or other aspects of the " @@ -187,6 +212,10 @@ msgid "" msgstr "" #: library/logging.config.rst:126 +msgid "The *encoding* parameter is added." +msgstr "" + +#: library/logging.config.rst:131 msgid "" "Starts up a socket server on the specified port, and listens for new " "configurations. If no port is specified, the module's default :const:" @@ -198,7 +227,7 @@ msgid "" "func:`stopListening`." msgstr "" -#: library/logging.config.rst:135 +#: library/logging.config.rst:140 msgid "" "The ``verify`` argument, if specified, should be a callable which should " "verify whether bytes received across the socket are valid and should be " @@ -212,14 +241,14 @@ msgid "" "(perhaps if decryption were performed)." msgstr "" -#: library/logging.config.rst:146 +#: library/logging.config.rst:151 msgid "" "To send a configuration to the socket, read in the configuration file and " "send it to the socket as a sequence of bytes preceded by a four-byte length " "string packed in binary using ``struct.pack('>L', n)``." msgstr "" -#: library/logging.config.rst:152 +#: library/logging.config.rst:159 msgid "" "Because portions of the configuration are passed through :func:`eval`, use " "of this function may open its users to a security risk. While the function " @@ -232,16 +261,16 @@ msgid "" "to the victim's :func:`listen` socket and sending a configuration which runs " "whatever code the attacker wants to have executed in the victim's process. " "This is especially easy to do if the default port is used, but not hard even " -"if a different port is used). To avoid the risk of this happening, use the " +"if a different port is used. To avoid the risk of this happening, use the " "``verify`` argument to :func:`listen` to prevent unrecognised configurations " "from being applied." msgstr "" -#: library/logging.config.rst:168 +#: library/logging.config.rst:175 msgid "The ``verify`` argument was added." msgstr "" -#: library/logging.config.rst:173 +#: library/logging.config.rst:180 msgid "" "If you want to send configurations to the listener which don't disable " "existing loggers, you will need to use a JSON format for the configuration, " @@ -250,18 +279,18 @@ msgid "" "you send." msgstr "" -#: library/logging.config.rst:182 +#: library/logging.config.rst:189 msgid "" "Stops the listening server which was created with a call to :func:`listen`. " "This is typically called before calling :meth:`join` on the return value " "from :func:`listen`." msgstr "" -#: library/logging.config.rst:190 +#: library/logging.config.rst:197 msgid "Configuration dictionary schema" msgstr "" -#: library/logging.config.rst:192 +#: library/logging.config.rst:199 msgid "" "Describing a logging configuration requires listing the various objects to " "create and the connections between them; for example, you may create a " @@ -274,23 +303,23 @@ msgid "" "connections` below." msgstr "" -#: library/logging.config.rst:204 +#: library/logging.config.rst:211 msgid "Dictionary Schema Details" msgstr "" -#: library/logging.config.rst:206 +#: library/logging.config.rst:213 msgid "" "The dictionary passed to :func:`dictConfig` must contain the following keys:" msgstr "" -#: library/logging.config.rst:209 +#: library/logging.config.rst:216 msgid "" "*version* - to be set to an integer value representing the schema version. " "The only valid value at present is 1, but having this key allows the schema " "to evolve while still preserving backwards compatibility." msgstr "" -#: library/logging.config.rst:214 +#: library/logging.config.rst:221 msgid "" "All other keys are optional, but if present they will be interpreted as " "described below. In all cases below where a 'configuring dict' is " @@ -300,77 +329,97 @@ msgid "" "otherwise, the context is used to determine what to instantiate." msgstr "" -#: library/logging.config.rst:221 +#: library/logging.config.rst:230 msgid "" "*formatters* - the corresponding value will be a dict in which each key is a " "formatter id and each value is a dict describing how to configure the " "corresponding :class:`~logging.Formatter` instance." msgstr "" -#: library/logging.config.rst:225 +#: library/logging.config.rst:234 msgid "" -"The configuring dict is searched for keys ``format`` and ``datefmt`` (with " -"defaults of ``None``) and these are used to construct a :class:`~logging." -"Formatter` instance." +"The configuring dict is searched for the following optional keys which " +"correspond to the arguments passed to create a :class:`~logging.Formatter` " +"object:" +msgstr "" + +#: library/logging.config.rst:238 +msgid "``format``" msgstr "" -#: library/logging.config.rst:229 +#: library/logging.config.rst:239 +msgid "``datefmt``" +msgstr "" + +#: library/logging.config.rst:240 +msgid "``style``" +msgstr "" + +#: library/logging.config.rst:241 +msgid "``validate`` (since version >=3.8)" +msgstr "" + +#: library/logging.config.rst:243 msgid "" -"a ``validate`` key (with default of ``True``) can be added into the " -"``formatters`` section of the configuring dict, this is to validate the " -"format." +"An optional ``class`` key indicates the name of the formatter's class (as a " +"dotted module and class name). The instantiation arguments are as for :" +"class:`~logging.Formatter`, thus this key is most useful for instantiating a " +"customised subclass of :class:`~logging.Formatter`. For example, the " +"alternative class might present exception tracebacks in an expanded or " +"condensed format. If your formatter requires different or extra " +"configuration keys, you should use :ref:`logging-config-dict-userdef`." msgstr "" -#: library/logging.config.rst:234 +#: library/logging.config.rst:252 msgid "" "*filters* - the corresponding value will be a dict in which each key is a " "filter id and each value is a dict describing how to configure the " "corresponding Filter instance." msgstr "" -#: library/logging.config.rst:238 +#: library/logging.config.rst:256 msgid "" "The configuring dict is searched for the key ``name`` (defaulting to the " "empty string) and this is used to construct a :class:`logging.Filter` " "instance." msgstr "" -#: library/logging.config.rst:242 +#: library/logging.config.rst:260 msgid "" "*handlers* - the corresponding value will be a dict in which each key is a " "handler id and each value is a dict describing how to configure the " "corresponding Handler instance." msgstr "" -#: library/logging.config.rst:288 +#: library/logging.config.rst:306 msgid "The configuring dict is searched for the following keys:" msgstr "" -#: library/logging.config.rst:248 +#: library/logging.config.rst:266 msgid "" "``class`` (mandatory). This is the fully qualified name of the handler " "class." msgstr "" -#: library/logging.config.rst:251 +#: library/logging.config.rst:269 msgid "``level`` (optional). The level of the handler." msgstr "" -#: library/logging.config.rst:253 +#: library/logging.config.rst:271 msgid "``formatter`` (optional). The id of the formatter for this handler." msgstr "" -#: library/logging.config.rst:256 +#: library/logging.config.rst:274 msgid "``filters`` (optional). A list of ids of the filters for this handler." msgstr "" -#: library/logging.config.rst:259 +#: library/logging.config.rst:277 msgid "" "All *other* keys are passed through as keyword arguments to the handler's " "constructor. For example, given the snippet:" msgstr "" -#: library/logging.config.rst:278 +#: library/logging.config.rst:296 msgid "" "the handler with id ``console`` is instantiated as a :class:`logging." "StreamHandler`, using ``sys.stdout`` as the underlying stream. The handler " @@ -379,44 +428,44 @@ msgid "" "maxBytes=1024, backupCount=3``." msgstr "" -#: library/logging.config.rst:284 +#: library/logging.config.rst:302 msgid "" "*loggers* - the corresponding value will be a dict in which each key is a " "logger name and each value is a dict describing how to configure the " "corresponding Logger instance." msgstr "" -#: library/logging.config.rst:290 +#: library/logging.config.rst:308 msgid "``level`` (optional). The level of the logger." msgstr "" -#: library/logging.config.rst:292 +#: library/logging.config.rst:310 msgid "``propagate`` (optional). The propagation setting of the logger." msgstr "" -#: library/logging.config.rst:294 +#: library/logging.config.rst:312 msgid "``filters`` (optional). A list of ids of the filters for this logger." msgstr "" -#: library/logging.config.rst:297 +#: library/logging.config.rst:315 msgid "" "``handlers`` (optional). A list of ids of the handlers for this logger." msgstr "" -#: library/logging.config.rst:300 +#: library/logging.config.rst:318 msgid "" "The specified loggers will be configured according to the level, " "propagation, filters and handlers specified." msgstr "" -#: library/logging.config.rst:303 +#: library/logging.config.rst:321 msgid "" "*root* - this will be the configuration for the root logger. Processing of " "the configuration will be as for any logger, except that the ``propagate`` " "setting will not be applicable." msgstr "" -#: library/logging.config.rst:307 +#: library/logging.config.rst:325 msgid "" "*incremental* - whether the configuration is to be interpreted as " "incremental to the existing configuration. This value defaults to " @@ -425,13 +474,13 @@ msgid "" "`fileConfig` API." msgstr "" -#: library/logging.config.rst:313 +#: library/logging.config.rst:331 msgid "" "If the specified value is ``True``, the configuration is processed as " "described in the section on :ref:`logging-config-dict-incremental`." msgstr "" -#: library/logging.config.rst:316 +#: library/logging.config.rst:334 msgid "" "*disable_existing_loggers* - whether any existing non-root loggers are to be " "disabled. This setting mirrors the parameter of the same name in :func:" @@ -439,11 +488,11 @@ msgid "" "ignored if *incremental* is ``True``." msgstr "" -#: library/logging.config.rst:324 +#: library/logging.config.rst:342 msgid "Incremental Configuration" msgstr "" -#: library/logging.config.rst:326 +#: library/logging.config.rst:344 msgid "" "It is difficult to provide complete flexibility for incremental " "configuration. For example, because objects such as filters and formatters " @@ -451,7 +500,7 @@ msgid "" "to such anonymous objects when augmenting a configuration." msgstr "" -#: library/logging.config.rst:332 +#: library/logging.config.rst:350 msgid "" "Furthermore, there is not a compelling case for arbitrarily altering the " "object graph of loggers, handlers, filters, formatters at run-time, once a " @@ -462,7 +511,7 @@ msgid "" "worth the complexity it adds to the implementation." msgstr "" -#: library/logging.config.rst:341 +#: library/logging.config.rst:359 msgid "" "Thus, when the ``incremental`` key of a configuration dict is present and is " "``True``, the system will completely ignore any ``formatters`` and " @@ -471,7 +520,7 @@ msgid "" "``loggers`` and ``root`` entries." msgstr "" -#: library/logging.config.rst:347 +#: library/logging.config.rst:365 msgid "" "Using a value in the configuration dict lets configurations to be sent over " "the wire as pickled dicts to a socket listener. Thus, the logging verbosity " @@ -479,11 +528,11 @@ msgid "" "and restart the application." msgstr "" -#: library/logging.config.rst:355 +#: library/logging.config.rst:373 msgid "Object connections" msgstr "" -#: library/logging.config.rst:357 +#: library/logging.config.rst:375 msgid "" "The schema describes a set of logging objects - loggers, handlers, " "formatters, filters - which are connected to each other in an object graph. " @@ -499,17 +548,17 @@ msgid "" "source and the destination object with that id." msgstr "" -#: library/logging.config.rst:371 +#: library/logging.config.rst:389 msgid "So, for example, consider the following YAML snippet:" msgstr "" -#: library/logging.config.rst:392 +#: library/logging.config.rst:410 msgid "" "(Note: YAML used here because it's a little more readable than the " "equivalent Python source form for the dictionary.)" msgstr "" -#: library/logging.config.rst:395 +#: library/logging.config.rst:413 msgid "" "The ids for loggers are the logger names which would be used " "programmatically to obtain a reference to those loggers, e.g. ``foo.bar." @@ -520,7 +569,7 @@ msgid "" "configuration call is complete." msgstr "" -#: library/logging.config.rst:403 +#: library/logging.config.rst:421 msgid "" "The above snippet indicates that logger named ``foo.bar.baz`` should have " "two handlers attached to it, which are described by the handler ids ``h1`` " @@ -528,11 +577,11 @@ msgid "" "the formatter for ``h2`` is that described by id ``precise``." msgstr "" -#: library/logging.config.rst:413 +#: library/logging.config.rst:431 msgid "User-defined objects" msgstr "" -#: library/logging.config.rst:415 +#: library/logging.config.rst:433 msgid "" "The schema supports user-defined objects for handlers, filters and " "formatters. (Loggers do not need to have different types for different " @@ -540,7 +589,7 @@ msgid "" "defined logger classes.)" msgstr "" -#: library/logging.config.rst:420 +#: library/logging.config.rst:438 msgid "" "Objects to be configured are described by dictionaries which detail their " "configuration. In some places, the logging system will be able to infer " @@ -553,7 +602,7 @@ msgid "" "made available under the special key ``'()'``. Here's a concrete example:" msgstr "" -#: library/logging.config.rst:446 +#: library/logging.config.rst:464 msgid "" "The above YAML snippet defines three formatters. The first, with id " "``brief``, is a standard :class:`logging.Formatter` instance with the " @@ -564,11 +613,11 @@ msgid "" "configuration sub-dictionaries::" msgstr "" -#: library/logging.config.rst:458 +#: library/logging.config.rst:476 msgid "and::" msgstr "et ::" -#: library/logging.config.rst:465 +#: library/logging.config.rst:483 msgid "" "respectively, and as these dictionaries do not contain the special key " "``'()'``, the instantiation is inferred from the context: as a result, " @@ -577,7 +626,7 @@ msgid "" "is::" msgstr "" -#: library/logging.config.rst:478 +#: library/logging.config.rst:496 msgid "" "and this contains the special key ``'()'``, which means that user-defined " "instantiation is wanted. In this case, the specified factory callable will " @@ -589,7 +638,7 @@ msgid "" "assumed to be returned by the call::" msgstr "" -#: library/logging.config.rst:490 +#: library/logging.config.rst:508 msgid "" "The key ``'()'`` has been used as the special key because it is not a valid " "keyword parameter name, and so will not clash with the names of the keyword " @@ -597,11 +646,11 @@ msgid "" "corresponding value is a callable." msgstr "" -#: library/logging.config.rst:499 +#: library/logging.config.rst:517 msgid "Access to external objects" msgstr "" -#: library/logging.config.rst:501 +#: library/logging.config.rst:519 msgid "" "There are times where a configuration needs to refer to objects external to " "the configuration, for example ``sys.stderr``. If the configuration dict is " @@ -616,7 +665,7 @@ msgid "" "import mechanisms." msgstr "" -#: library/logging.config.rst:514 +#: library/logging.config.rst:532 msgid "" "The handling of such prefixes is done in a way analogous to protocol " "handling: there is a generic mechanism to look for prefixes which match the " @@ -626,11 +675,11 @@ msgid "" "prefix is not recognised, then the string value will be left as-is." msgstr "" -#: library/logging.config.rst:526 +#: library/logging.config.rst:544 msgid "Access to internal objects" msgstr "" -#: library/logging.config.rst:528 +#: library/logging.config.rst:546 msgid "" "As well as external objects, there is sometimes also a need to refer to " "objects in the configuration. This will be done implicitly by the " @@ -641,7 +690,7 @@ msgid "" "and resolve to the appropriate destination object." msgstr "" -#: library/logging.config.rst:536 +#: library/logging.config.rst:554 msgid "" "However, a more generic mechanism is needed for user-defined objects which " "are not known to the :mod:`logging` module. For example, consider :class:" @@ -655,7 +704,7 @@ msgid "" "resolution system allows the user to specify:" msgstr "" -#: library/logging.config.rst:558 +#: library/logging.config.rst:576 msgid "" "The literal string ``'cfg://handlers.file'`` will be resolved in an " "analogous way to strings with the ``ext://`` prefix, but looking in the " @@ -664,23 +713,23 @@ msgid "" "format``. Thus, given the following snippet:" msgstr "" -#: library/logging.config.rst:576 +#: library/logging.config.rst:594 msgid "" "in the configuration, the string ``'cfg://handlers'`` would resolve to the " "dict with key ``handlers``, the string ``'cfg://handlers.email`` would " "resolve to the dict with key ``email`` in the ``handlers`` dict, and so on. " -"The string ``'cfg://handlers.email.toaddrs[1]`` would resolve to ``'dev_team." -"domain.tld'`` and the string ``'cfg://handlers.email.toaddrs[0]'`` would " -"resolve to the value ``'support_team@domain.tld'``. The ``subject`` value " -"could be accessed using either ``'cfg://handlers.email.subject'`` or, " -"equivalently, ``'cfg://handlers.email[subject]'``. The latter form only " -"needs to be used if the key contains spaces or non-alphanumeric characters. " -"If an index value consists only of decimal digits, access will be attempted " -"using the corresponding integer value, falling back to the string value if " -"needed." +"The string ``'cfg://handlers.email.toaddrs[1]`` would resolve to " +"``'dev_team@domain.tld'`` and the string ``'cfg://handlers.email." +"toaddrs[0]'`` would resolve to the value ``'support_team@domain.tld'``. The " +"``subject`` value could be accessed using either ``'cfg://handlers.email." +"subject'`` or, equivalently, ``'cfg://handlers.email[subject]'``. The " +"latter form only needs to be used if the key contains spaces or non-" +"alphanumeric characters. If an index value consists only of decimal digits, " +"access will be attempted using the corresponding integer value, falling back " +"to the string value if needed." msgstr "" -#: library/logging.config.rst:590 +#: library/logging.config.rst:608 msgid "" "Given a string ``cfg://handlers.myhandler.mykey.123``, this will resolve to " "``config_dict['handlers']['myhandler']['mykey']['123']``. If the string is " @@ -690,11 +739,11 @@ msgid "" "['mykey']['123']`` if that fails." msgstr "" -#: library/logging.config.rst:602 +#: library/logging.config.rst:620 msgid "Import resolution and custom importers" msgstr "" -#: library/logging.config.rst:604 +#: library/logging.config.rst:622 msgid "" "Import resolution, by default, uses the builtin :func:`__import__` function " "to do its importing. You may want to replace this with your own importing " @@ -706,17 +755,17 @@ msgid "" "instance level, you need to wrap it with :func:`staticmethod`. For example::" msgstr "" -#: library/logging.config.rst:619 +#: library/logging.config.rst:637 msgid "" "You don't need to wrap with :func:`staticmethod` if you're setting the " "import callable on a configurator *instance*." msgstr "" -#: library/logging.config.rst:626 +#: library/logging.config.rst:644 msgid "Configuration file format" msgstr "" -#: library/logging.config.rst:628 +#: library/logging.config.rst:646 msgid "" "The configuration file format understood by :func:`fileConfig` is based on :" "mod:`configparser` functionality. The file must contain sections called " @@ -733,7 +782,7 @@ msgid "" "specified in a section called ``[logger_root]``." msgstr "" -#: library/logging.config.rst:643 +#: library/logging.config.rst:661 msgid "" "The :func:`fileConfig` API is older than the :func:`dictConfig` API and does " "not provide functionality to cover certain aspects of logging. For example, " @@ -746,17 +795,17 @@ msgid "" "when it's convenient to do so." msgstr "" -#: library/logging.config.rst:653 +#: library/logging.config.rst:671 msgid "Examples of these sections in the file are given below." msgstr "" -#: library/logging.config.rst:666 +#: library/logging.config.rst:684 msgid "" "The root logger must specify a level and a list of handlers. An example of a " "root logger section is given below." msgstr "" -#: library/logging.config.rst:675 +#: library/logging.config.rst:693 msgid "" "The ``level`` entry can be one of ``DEBUG, INFO, WARNING, ERROR, CRITICAL`` " "or ``NOTSET``. For the root logger only, ``NOTSET`` means that all messages " @@ -764,7 +813,7 @@ msgid "" "``logging`` package's namespace." msgstr "" -#: library/logging.config.rst:680 +#: library/logging.config.rst:698 msgid "" "The ``handlers`` entry is a comma-separated list of handler names, which " "must appear in the ``[handlers]`` section. These names must appear in the " @@ -772,13 +821,13 @@ msgid "" "file." msgstr "" -#: library/logging.config.rst:685 +#: library/logging.config.rst:703 msgid "" "For loggers other than the root logger, some additional information is " "required. This is illustrated by the following example." msgstr "" -#: library/logging.config.rst:696 +#: library/logging.config.rst:714 msgid "" "The ``level`` and ``handlers`` entries are interpreted as for the root " "logger, except that if a non-root logger's level is specified as ``NOTSET``, " @@ -791,20 +840,20 @@ msgid "" "application to get the logger." msgstr "" -#: library/logging.config.rst:705 +#: library/logging.config.rst:723 msgid "" "Sections which specify handler configuration are exemplified by the " "following." msgstr "" -#: library/logging.config.rst:715 +#: library/logging.config.rst:733 msgid "" "The ``class`` entry indicates the handler's class (as determined by :func:" "`eval` in the ``logging`` package's namespace). The ``level`` is interpreted " "as for loggers, and ``NOTSET`` is taken to mean 'log everything'." msgstr "" -#: library/logging.config.rst:719 +#: library/logging.config.rst:737 msgid "" "The ``formatter`` entry indicates the key name of the formatter for this " "handler. If blank, a default formatter (``logging._defaultFormatter``) is " @@ -812,7 +861,7 @@ msgid "" "and have a corresponding section in the configuration file." msgstr "" -#: library/logging.config.rst:724 +#: library/logging.config.rst:742 msgid "" "The ``args`` entry, when :func:`eval`\\ uated in the context of the " "``logging`` package's namespace, is the list of arguments to the constructor " @@ -821,39 +870,26 @@ msgid "" "provided, it defaults to ``()``." msgstr "" -#: library/logging.config.rst:730 +#: library/logging.config.rst:748 msgid "" "The optional ``kwargs`` entry, when :func:`eval`\\ uated in the context of " "the ``logging`` package's namespace, is the keyword argument dict to the " "constructor for the handler class. If not provided, it defaults to ``{}``." msgstr "" -#: library/logging.config.rst:787 +#: library/logging.config.rst:805 msgid "" "Sections which specify formatter configuration are typified by the following." msgstr "" -#: library/logging.config.rst:796 +#: library/logging.config.rst:816 msgid "" -"The ``format`` entry is the overall format string, and the ``datefmt`` entry " -"is the :func:`strftime`\\ -compatible date/time format string. If empty, " -"the package substitutes something which is almost equivalent to specifying " -"the date format string ``'%Y-%m-%d %H:%M:%S'``. This format also specifies " -"milliseconds, which are appended to the result of using the above format " -"string, with a comma separator. An example time in this format is " -"``2003-01-23 00:29:50,411``." +"The arguments for the formatter configuration are the same as the keys in " +"the dictionary schema :ref:`formatters section `." msgstr "" -#: library/logging.config.rst:803 -msgid "" -"The ``class`` entry is optional. It indicates the name of the formatter's " -"class (as a dotted module and class name.) This option is useful for " -"instantiating a :class:`~logging.Formatter` subclass. Subclasses of :class:" -"`~logging.Formatter` can present exception tracebacks in an expanded or " -"condensed format." -msgstr "" - -#: library/logging.config.rst:811 +#: library/logging.config.rst:822 msgid "" "Due to the use of :func:`eval` as described above, there are potential " "security risks which result from using the :func:`listen` to send and " @@ -862,18 +898,18 @@ msgid "" "`listen` documentation for more information." msgstr "" -#: library/logging.config.rst:820 +#: library/logging.config.rst:831 msgid "Module :mod:`logging`" msgstr "Module :mod:`logging`" -#: library/logging.config.rst:820 +#: library/logging.config.rst:831 msgid "API reference for the logging module." msgstr "Référence d'API pour le module de journalisation." -#: library/logging.config.rst:822 +#: library/logging.config.rst:833 msgid "Module :mod:`logging.handlers`" msgstr "Module :mod:`logging.handlers`" -#: library/logging.config.rst:823 +#: library/logging.config.rst:834 msgid "Useful handlers included with the logging module." msgstr "Gestionnaires utiles inclus avec le module de journalisation." diff --git a/library/logging.handlers.po b/library/logging.handlers.po index 9b6de5e71..88e914b86 100644 --- a/library/logging.handlers.po +++ b/library/logging.handlers.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-12-17 16:05+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-12-14 10:12+0100\n" "Last-Translator: Philippe GALVAN \n" "Language-Team: FRENCH \n" @@ -1455,11 +1455,15 @@ msgid "HTTPHandler" msgstr "" #: library/logging.handlers.rst:929 +#, fuzzy msgid "" "The :class:`HTTPHandler` class, located in the :mod:`logging.handlers` " -"module, supports sending logging messages to a Web server, using either " +"module, supports sending logging messages to a web server, using either " "``GET`` or ``POST`` semantics." msgstr "" +"La classe :class:`TimedRotatingFileHandler`, située dans le module :mod:" +"`logging.handlers`, gère le roulement des fichiers de journalisation sur le " +"disque à un intervalle de temps spécifié." #: library/logging.handlers.rst:936 msgid "" @@ -1491,19 +1495,19 @@ msgstr "" #: library/logging.handlers.rst:960 msgid "" -"Sends the record to the Web server as a URL-encoded dictionary. The :meth:" +"Sends the record to the web server as a URL-encoded dictionary. The :meth:" "`mapLogRecord` method is used to convert the record to the dictionary to be " "sent." msgstr "" #: library/logging.handlers.rst:964 msgid "" -"Since preparing a record for sending it to a Web server is not the same as a " +"Since preparing a record for sending it to a web server is not the same as a " "generic formatting operation, using :meth:`~logging.Handler.setFormatter` to " "specify a :class:`~logging.Formatter` for a :class:`HTTPHandler` has no " "effect. Instead of calling :meth:`~logging.Handler.format`, this handler " "calls :meth:`mapLogRecord` and then :func:`urllib.parse.urlencode` to encode " -"the dictionary in a form suitable for sending to a Web server." +"the dictionary in a form suitable for sending to a web server." msgstr "" #: library/logging.handlers.rst:977 @@ -1521,7 +1525,7 @@ msgstr "" msgid "" "Along with the :class:`QueueListener` class, :class:`QueueHandler` can be " "used to let handlers do their work on a separate thread from the one which " -"does the logging. This is important in Web applications and also other " +"does the logging. This is important in web applications and also other " "service applications where threads servicing clients need to respond as " "quickly as possible, while any potentially slow operations (such as sending " "an email via :class:`SMTPHandler`) are done on a separate thread." @@ -1593,7 +1597,7 @@ msgstr "" msgid "" "Along with the :class:`QueueHandler` class, :class:`QueueListener` can be " "used to let handlers do their work on a separate thread from the one which " -"does the logging. This is important in Web applications and also other " +"does the logging. This is important in web applications and also other " "service applications where threads servicing clients need to respond as " "quickly as possible, while any potentially slow operations (such as sending " "an email via :class:`SMTPHandler`) are done on a separate thread." diff --git a/library/logging.po b/library/logging.po index d55498d16..7d3b97a26 100644 --- a/library/logging.po +++ b/library/logging.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-03-23 22:54+0100\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -346,7 +346,7 @@ msgid "" "information." msgstr "" -#: library/logging.rst:966 +#: library/logging.rst:977 msgid "" "The second optional keyword argument is *stack_info*, which defaults to " "``False``. If true, stack information is added to the logging message, " @@ -358,14 +358,14 @@ msgid "" "handlers." msgstr "" -#: library/logging.rst:975 +#: library/logging.rst:986 msgid "" "You can specify *stack_info* independently of *exc_info*, e.g. to just show " "how you got to a certain point in your code, even when no exceptions were " "raised. The stack frames are printed following a header line which says:" msgstr "" -#: library/logging.rst:983 +#: library/logging.rst:994 msgid "" "This mimics the ``Traceback (most recent call last):`` which is used when " "displaying exception frames." @@ -396,7 +396,7 @@ msgstr "" msgid "would print something like" msgstr "" -#: library/logging.rst:1003 +#: library/logging.rst:1014 msgid "" "The keys in the dictionary passed in *extra* should not clash with the keys " "used by the logging system. (See the :class:`Formatter` documentation for " @@ -414,7 +414,7 @@ msgid "" "dictionary with these keys." msgstr "" -#: library/logging.rst:1014 +#: library/logging.rst:1025 msgid "" "While this might be annoying, this feature is intended for use in " "specialized circumstances, such as multi-threaded servers where the same " @@ -425,7 +425,7 @@ msgid "" "particular :class:`Handler`\\ s." msgstr "" -#: library/logging.rst:1021 +#: library/logging.rst:1032 msgid "The *stack_info* parameter was added." msgstr "" @@ -796,18 +796,30 @@ msgid "" msgstr "" #: library/logging.rst:548 +msgid "" +"The *defaults* parameter can be a dictionary with default values to use in " +"custom fields. For example: ``logging.Formatter('%(ip)s %(message)s', " +"defaults={\"ip\": None})``" +msgstr "" + +#: library/logging.rst:552 #, fuzzy msgid "The *style* parameter was added." msgstr "Ajout du paramètre *start*." -#: library/logging.rst:551 +#: library/logging.rst:555 msgid "" "The *validate* parameter was added. Incorrect or mismatched style and fmt " "will raise a ``ValueError``. For example: ``logging.Formatter('%(asctime)s - " "%(message)s', style='{')``." msgstr "" -#: library/logging.rst:558 +#: library/logging.rst:560 +#, fuzzy +msgid "The *defaults* parameter was added." +msgstr "Ajout du paramètre *start*." + +#: library/logging.rst:565 msgid "" "The record's attribute dictionary is used as the operand to a string " "formatting operation. Returns the resulting string. Before formatting the " @@ -820,18 +832,19 @@ msgid "" "because the exception information can be pickled and sent across the wire, " "but you should be careful if you have more than one :class:`Formatter` " "subclass which customizes the formatting of exception information. In this " -"case, you will have to clear the cached value after a formatter has done its " -"formatting, so that the next formatter to handle the event doesn't use the " -"cached value but recalculates it afresh." +"case, you will have to clear the cached value (by setting the *exc_text* " +"attribute to ``None``) after a formatter has done its formatting, so that " +"the next formatter to handle the event doesn't use the cached value, but " +"recalculates it afresh." msgstr "" -#: library/logging.rst:574 +#: library/logging.rst:581 msgid "" "If stack information is available, it's appended after the exception " "information, using :meth:`formatStack` to transform it if necessary." msgstr "" -#: library/logging.rst:580 +#: library/logging.rst:587 msgid "" "This method should be called from :meth:`format` by a formatter which wants " "to make use of a formatted time. This method can be overridden in formatters " @@ -844,7 +857,7 @@ msgid "" "resulting string is returned." msgstr "" -#: library/logging.rst:590 +#: library/logging.rst:597 msgid "" "This function uses a user-configurable function to convert the creation time " "to a tuple. By default, :func:`time.localtime` is used; to change this for a " @@ -854,7 +867,7 @@ msgid "" "be shown in GMT, set the ``converter`` attribute in the ``Formatter`` class." msgstr "" -#: library/logging.rst:598 +#: library/logging.rst:605 msgid "" "Previously, the default format was hard-coded as in this example: " "``2010-09-06 22:38:15,292`` where the part before the comma is handled by a " @@ -869,11 +882,11 @@ msgid "" "the millisecond value)." msgstr "" -#: library/logging.rst:611 +#: library/logging.rst:618 msgid "The ``default_msec_format`` can be ``None``." msgstr "" -#: library/logging.rst:616 +#: library/logging.rst:623 msgid "" "Formats the specified exception information (a standard exception tuple as " "returned by :func:`sys.exc_info`) as a string. This default implementation " @@ -881,18 +894,18 @@ msgid "" "returned." msgstr "" -#: library/logging.rst:623 +#: library/logging.rst:630 msgid "" "Formats the specified stack information (a string as returned by :func:" "`traceback.print_stack`, but with the last newline removed) as a string. " "This default implementation just returns the input value." msgstr "" -#: library/logging.rst:630 +#: library/logging.rst:637 msgid "Filter Objects" msgstr "" -#: library/logging.rst:632 +#: library/logging.rst:639 msgid "" "``Filters`` can be used by ``Handlers`` and ``Loggers`` for more " "sophisticated filtering than is provided by levels. The base filter class " @@ -902,7 +915,7 @@ msgid "" "If initialized with the empty string, all events are passed." msgstr "" -#: library/logging.rst:642 +#: library/logging.rst:649 msgid "" "Returns an instance of the :class:`Filter` class. If *name* is specified, it " "names a logger which, together with its children, will have its events " @@ -910,13 +923,13 @@ msgid "" "event." msgstr "" -#: library/logging.rst:649 +#: library/logging.rst:656 msgid "" "Is the specified record to be logged? Returns zero for no, nonzero for yes. " "If deemed appropriate, the record may be modified in-place by this method." msgstr "" -#: library/logging.rst:653 +#: library/logging.rst:660 msgid "" "Note that filters attached to handlers are consulted before an event is " "emitted by the handler, whereas filters attached to loggers are consulted " @@ -926,13 +939,13 @@ msgid "" "setting, unless the filter has also been applied to those descendant loggers." msgstr "" -#: library/logging.rst:660 +#: library/logging.rst:667 msgid "" "You don't actually need to subclass ``Filter``: you can pass any instance " "which has a ``filter`` method with the same semantics." msgstr "" -#: library/logging.rst:663 +#: library/logging.rst:670 msgid "" "You don't need to create specialized ``Filter`` classes, or use other " "classes with a ``filter`` method: you can use a function (or other callable) " @@ -943,7 +956,7 @@ msgid "" "value should conform to that returned by :meth:`~Filter.filter`." msgstr "" -#: library/logging.rst:673 +#: library/logging.rst:680 msgid "" "Although filters are used primarily to filter records based on more " "sophisticated criteria than levels, they get to see every record which is " @@ -955,11 +968,11 @@ msgid "" "contextual information into logs (see :ref:`filters-contextual`)." msgstr "" -#: library/logging.rst:685 +#: library/logging.rst:692 msgid "LogRecord Objects" msgstr "" -#: library/logging.rst:687 +#: library/logging.rst:694 msgid "" ":class:`LogRecord` instances are created automatically by the :class:" "`Logger` every time something is logged, and can be created manually via :" @@ -967,11 +980,11 @@ msgid "" "wire)." msgstr "" -#: library/logging.rst:695 +#: library/logging.rst:702 msgid "Contains all the information pertinent to the event being logged." msgstr "" -#: library/logging.rst:697 +#: library/logging.rst:704 msgid "" "The primary information is passed in :attr:`msg` and :attr:`args`, which are " "combined using ``msg % args`` to create the :attr:`message` field of the " @@ -983,58 +996,58 @@ msgstr "" msgid "Parameters" msgstr "Paramètres :" -#: library/logging.rst:701 +#: library/logging.rst:708 msgid "" "The name of the logger used to log the event represented by this LogRecord. " "Note that this name will always have this value, even though it may be " "emitted by a handler attached to a different (ancestor) logger." msgstr "" -#: library/logging.rst:705 +#: library/logging.rst:712 msgid "" "The numeric level of the logging event (one of DEBUG, INFO etc.) Note that " "this is converted to *two* attributes of the LogRecord: ``levelno`` for the " "numeric value and ``levelname`` for the corresponding level name." msgstr "" -#: library/logging.rst:709 +#: library/logging.rst:716 msgid "The full pathname of the source file where the logging call was made." msgstr "" -#: library/logging.rst:711 +#: library/logging.rst:718 msgid "The line number in the source file where the logging call was made." msgstr "" -#: library/logging.rst:713 +#: library/logging.rst:720 msgid "" "The event description message, possibly a format string with placeholders " "for variable data." msgstr "" -#: library/logging.rst:715 +#: library/logging.rst:722 msgid "" "Variable data to merge into the *msg* argument to obtain the event " "description." msgstr "" -#: library/logging.rst:717 +#: library/logging.rst:724 msgid "" "An exception tuple with the current exception information, or ``None`` if no " "exception information is available." msgstr "" -#: library/logging.rst:719 +#: library/logging.rst:726 msgid "" "The name of the function or method from which the logging call was invoked." msgstr "" -#: library/logging.rst:721 +#: library/logging.rst:728 msgid "" "A text string representing stack information from the base of the stack in " "the current thread, up to the logging call." msgstr "" -#: library/logging.rst:726 +#: library/logging.rst:733 msgid "" "Returns the message for this :class:`LogRecord` instance after merging any " "user-supplied arguments with the message. If the user-supplied message " @@ -1043,7 +1056,7 @@ msgid "" "whose ``__str__`` method can return the actual format string to be used." msgstr "" -#: library/logging.rst:733 +#: library/logging.rst:740 msgid "" "The creation of a :class:`LogRecord` has been made more configurable by " "providing a factory which is used to create the record. The factory can be " @@ -1051,24 +1064,24 @@ msgid "" "this for the factory's signature)." msgstr "" -#: library/logging.rst:739 +#: library/logging.rst:746 msgid "" "This functionality can be used to inject your own values into a :class:" "`LogRecord` at creation time. You can use the following pattern::" msgstr "" -#: library/logging.rst:751 +#: library/logging.rst:758 msgid "" "With this pattern, multiple factories could be chained, and as long as they " "don't overwrite each other's attributes or unintentionally overwrite the " "standard attributes listed above, there should be no surprises." msgstr "" -#: library/logging.rst:760 +#: library/logging.rst:767 msgid "LogRecord attributes" msgstr "" -#: library/logging.rst:762 +#: library/logging.rst:769 msgid "" "The LogRecord has a number of attributes, most of which are derived from the " "parameters to the constructor. (Note that the names do not always correspond " @@ -1079,7 +1092,7 @@ msgid "" "style format string." msgstr "" -#: library/logging.rst:770 +#: library/logging.rst:777 msgid "" "If you are using {}-formatting (:func:`str.format`), you can use ``{attrname}" "`` as the placeholder in the format string. If you are using $-formatting (:" @@ -1087,7 +1100,7 @@ msgid "" "course, replace ``attrname`` with the actual attribute name you want to use." msgstr "" -#: library/logging.rst:776 +#: library/logging.rst:783 msgid "" "In the case of {}-formatting, you can specify formatting flags by placing " "them after the attribute name, separated from it with a colon. For example: " @@ -1096,15 +1109,15 @@ msgid "" "on the options available to you." msgstr "" -#: library/logging.rst:783 +#: library/logging.rst:790 msgid "Attribute name" msgstr "" -#: library/logging.rst:1168 +#: library/logging.rst:1179 msgid "Format" msgstr "Format" -#: library/logging.rst:1168 +#: library/logging.rst:1179 msgid "Description" msgstr "Description" @@ -1112,41 +1125,41 @@ msgstr "Description" msgid "args" msgstr "" -#: library/logging.rst:799 library/logging.rst:845 +#: library/logging.rst:806 library/logging.rst:852 msgid "You shouldn't need to format this yourself." msgstr "" -#: library/logging.rst:785 +#: library/logging.rst:792 msgid "" "The tuple of arguments merged into ``msg`` to produce ``message``, or a dict " "whose values are used for the merge (when there is only one argument, and it " "is a dictionary)." msgstr "" -#: library/logging.rst:790 +#: library/logging.rst:797 msgid "asctime" msgstr "" -#: library/logging.rst:790 +#: library/logging.rst:797 msgid "``%(asctime)s``" msgstr "``%(asctime)s``" -#: library/logging.rst:790 +#: library/logging.rst:797 msgid "" "Human-readable time when the :class:`LogRecord` was created. By default " "this is of the form '2003-07-08 16:49:45,896' (the numbers after the comma " "are millisecond portion of the time)." msgstr "" -#: library/logging.rst:796 +#: library/logging.rst:803 msgid "created" msgstr "created" -#: library/logging.rst:796 +#: library/logging.rst:803 msgid "``%(created)f``" msgstr "``%(created)f``" -#: library/logging.rst:796 +#: library/logging.rst:803 msgid "" "Time when the :class:`LogRecord` was created (as returned by :func:`time." "time`)." @@ -1156,111 +1169,111 @@ msgstr "" msgid "exc_info" msgstr "exc_info" -#: library/logging.rst:799 +#: library/logging.rst:806 msgid "" "Exception tuple (à la ``sys.exc_info``) or, if no exception has occurred, " "``None``." msgstr "" -#: library/logging.rst:802 +#: library/logging.rst:809 msgid "filename" msgstr "filename" -#: library/logging.rst:802 +#: library/logging.rst:809 msgid "``%(filename)s``" msgstr "``%(filename)s``" -#: library/logging.rst:802 +#: library/logging.rst:809 msgid "Filename portion of ``pathname``." msgstr "" -#: library/logging.rst:804 +#: library/logging.rst:811 msgid "funcName" msgstr "funcName" -#: library/logging.rst:804 +#: library/logging.rst:811 msgid "``%(funcName)s``" msgstr "``%(funcName)s``" -#: library/logging.rst:804 +#: library/logging.rst:811 msgid "Name of function containing the logging call." msgstr "" -#: library/logging.rst:806 +#: library/logging.rst:813 msgid "levelname" msgstr "levelname" -#: library/logging.rst:806 +#: library/logging.rst:813 msgid "``%(levelname)s``" msgstr "``%(levelname)s``" -#: library/logging.rst:806 +#: library/logging.rst:813 msgid "" "Text logging level for the message (``'DEBUG'``, ``'INFO'``, ``'WARNING'``, " "``'ERROR'``, ``'CRITICAL'``)." msgstr "" -#: library/logging.rst:810 +#: library/logging.rst:817 msgid "levelno" msgstr "" -#: library/logging.rst:810 +#: library/logging.rst:817 msgid "``%(levelno)s``" msgstr "``%(levelno)s``" -#: library/logging.rst:810 +#: library/logging.rst:817 msgid "" "Numeric logging level for the message (:const:`DEBUG`, :const:`INFO`, :const:" "`WARNING`, :const:`ERROR`, :const:`CRITICAL`)." msgstr "" -#: library/logging.rst:815 +#: library/logging.rst:822 msgid "lineno" msgstr "lineno" -#: library/logging.rst:815 +#: library/logging.rst:822 msgid "``%(lineno)d``" msgstr "``%(lineno)d``" -#: library/logging.rst:815 +#: library/logging.rst:822 msgid "Source line number where the logging call was issued (if available)." msgstr "" -#: library/logging.rst:818 +#: library/logging.rst:825 msgid "message" msgstr "message" -#: library/logging.rst:818 +#: library/logging.rst:825 msgid "``%(message)s``" msgstr "``%(message)s``" -#: library/logging.rst:818 +#: library/logging.rst:825 msgid "" "The logged message, computed as ``msg % args``. This is set when :meth:" "`Formatter.format` is invoked." msgstr "" -#: library/logging.rst:822 +#: library/logging.rst:829 msgid "module" msgstr "module" -#: library/logging.rst:822 +#: library/logging.rst:829 msgid "``%(module)s``" msgstr "``%(module)s``" -#: library/logging.rst:822 +#: library/logging.rst:829 msgid "Module (name portion of ``filename``)." msgstr "" -#: library/logging.rst:824 +#: library/logging.rst:831 msgid "msecs" msgstr "msecs" -#: library/logging.rst:824 +#: library/logging.rst:831 msgid "``%(msecs)d``" msgstr "``%(msecs)d``" -#: library/logging.rst:824 +#: library/logging.rst:831 msgid "" "Millisecond portion of the time when the :class:`LogRecord` was created." msgstr "" @@ -1269,7 +1282,7 @@ msgstr "" msgid "msg" msgstr "" -#: library/logging.rst:827 +#: library/logging.rst:834 msgid "" "The format string passed in the original logging call. Merged with ``args`` " "to produce ``message``, or an arbitrary object (see :ref:`arbitrary-object-" @@ -1280,123 +1293,123 @@ msgstr "" msgid "name" msgstr "" -#: library/logging.rst:832 +#: library/logging.rst:839 msgid "``%(name)s``" msgstr "``%(name)s``" -#: library/logging.rst:832 +#: library/logging.rst:839 msgid "Name of the logger used to log the call." msgstr "" -#: library/logging.rst:834 +#: library/logging.rst:841 msgid "pathname" msgstr "pathname" -#: library/logging.rst:834 +#: library/logging.rst:841 msgid "``%(pathname)s``" msgstr "``%(pathname)s``" -#: library/logging.rst:834 +#: library/logging.rst:841 msgid "" "Full pathname of the source file where the logging call was issued (if " "available)." msgstr "" -#: library/logging.rst:837 +#: library/logging.rst:844 msgid "process" msgstr "process" -#: library/logging.rst:837 +#: library/logging.rst:844 msgid "``%(process)d``" msgstr "``%(process)d``" -#: library/logging.rst:837 +#: library/logging.rst:844 msgid "Process ID (if available)." msgstr "" -#: library/logging.rst:839 +#: library/logging.rst:846 msgid "processName" msgstr "processName" -#: library/logging.rst:839 +#: library/logging.rst:846 msgid "``%(processName)s``" msgstr "``%(processName)s``" -#: library/logging.rst:839 +#: library/logging.rst:846 msgid "Process name (if available)." msgstr "" -#: library/logging.rst:841 +#: library/logging.rst:848 msgid "relativeCreated" msgstr "relativeCreated" -#: library/logging.rst:841 +#: library/logging.rst:848 msgid "``%(relativeCreated)d``" msgstr "``%(relativeCreated)d``" -#: library/logging.rst:841 +#: library/logging.rst:848 msgid "" "Time in milliseconds when the LogRecord was created, relative to the time " "the logging module was loaded." msgstr "" -#: library/logging.rst:845 +#: library/logging.rst:852 msgid "stack_info" msgstr "" -#: library/logging.rst:845 +#: library/logging.rst:852 msgid "" "Stack frame information (where available) from the bottom of the stack in " "the current thread, up to and including the stack frame of the logging call " "which resulted in the creation of this record." msgstr "" -#: library/logging.rst:851 +#: library/logging.rst:858 msgid "thread" msgstr "" -#: library/logging.rst:851 +#: library/logging.rst:858 msgid "``%(thread)d``" msgstr "``%(thread)d``" -#: library/logging.rst:851 +#: library/logging.rst:858 msgid "Thread ID (if available)." msgstr "" -#: library/logging.rst:853 +#: library/logging.rst:860 msgid "threadName" msgstr "" -#: library/logging.rst:853 +#: library/logging.rst:860 msgid "``%(threadName)s``" msgstr "``%(threadName)s``" -#: library/logging.rst:853 +#: library/logging.rst:860 msgid "Thread name (if available)." msgstr "" -#: library/logging.rst:856 +#: library/logging.rst:863 msgid "*processName* was added." msgstr "" -#: library/logging.rst:863 +#: library/logging.rst:870 msgid "LoggerAdapter Objects" msgstr "" -#: library/logging.rst:865 +#: library/logging.rst:872 msgid "" ":class:`LoggerAdapter` instances are used to conveniently pass contextual " "information into logging calls. For a usage example, see the section on :ref:" "`adding contextual information to your logging output `." msgstr "" -#: library/logging.rst:871 +#: library/logging.rst:878 msgid "" "Returns an instance of :class:`LoggerAdapter` initialized with an " "underlying :class:`Logger` instance and a dict-like object." msgstr "" -#: library/logging.rst:876 +#: library/logging.rst:883 msgid "" "Modifies the message and/or keyword arguments passed to a logging call in " "order to insert contextual information. This implementation takes the object " @@ -1405,7 +1418,7 @@ msgid "" "(possibly modified) versions of the arguments passed in." msgstr "" -#: library/logging.rst:882 +#: library/logging.rst:889 msgid "" "In addition to the above, :class:`LoggerAdapter` supports the following " "methods of :class:`Logger`: :meth:`~Logger.debug`, :meth:`~Logger.info`, :" @@ -1417,18 +1430,24 @@ msgid "" "interchangeably." msgstr "" -#: library/logging.rst:891 +#: library/logging.rst:898 msgid "" "The :meth:`~Logger.isEnabledFor`, :meth:`~Logger.getEffectiveLevel`, :meth:" "`~Logger.setLevel` and :meth:`~Logger.hasHandlers` methods were added to :" "class:`LoggerAdapter`. These methods delegate to the underlying logger." msgstr "" -#: library/logging.rst:898 +#: library/logging.rst:903 +msgid "" +"Attribute :attr:`manager` and method :meth:`_log` were added, which delegate " +"to the underlying logger and allow adapters to be nested." +msgstr "" + +#: library/logging.rst:909 msgid "Thread Safety" msgstr "" -#: library/logging.rst:900 +#: library/logging.rst:911 msgid "" "The logging module is intended to be thread-safe without any special work " "needing to be done by its clients. It achieves this though using threading " @@ -1437,7 +1456,7 @@ msgid "" "O." msgstr "" -#: library/logging.rst:905 +#: library/logging.rst:916 msgid "" "If you are implementing asynchronous signal handlers using the :mod:`signal` " "module, you may not be able to use logging from within such handlers. This " @@ -1445,17 +1464,17 @@ msgid "" "always re-entrant, and so cannot be invoked from such signal handlers." msgstr "" -#: library/logging.rst:912 +#: library/logging.rst:923 msgid "Module-Level Functions" msgstr "Fonctions de niveau module" -#: library/logging.rst:914 +#: library/logging.rst:925 msgid "" "In addition to the classes described above, there are a number of module-" "level functions." msgstr "" -#: library/logging.rst:920 +#: library/logging.rst:931 msgid "" "Return a logger with the specified name or, if name is ``None``, return a " "logger which is the root logger of the hierarchy. If specified, the name is " @@ -1464,14 +1483,14 @@ msgid "" "logging." msgstr "" -#: library/logging.rst:925 +#: library/logging.rst:936 msgid "" "All calls to this function with a given name return the same logger " "instance. This means that logger instances never need to be passed between " "different parts of an application." msgstr "" -#: library/logging.rst:932 +#: library/logging.rst:943 msgid "" "Return either the standard :class:`Logger` class, or the last class passed " "to :func:`setLoggerClass`. This function may be called from within a new " @@ -1480,24 +1499,24 @@ msgid "" "example::" msgstr "" -#: library/logging.rst:943 +#: library/logging.rst:954 msgid "Return a callable which is used to create a :class:`LogRecord`." msgstr "" -#: library/logging.rst:945 +#: library/logging.rst:956 msgid "" "This function has been provided, along with :func:`setLogRecordFactory`, to " "allow developers more control over how the :class:`LogRecord` representing a " "logging event is constructed." msgstr "" -#: library/logging.rst:950 +#: library/logging.rst:961 msgid "" "See :func:`setLogRecordFactory` for more information about the how the " "factory is called." msgstr "" -#: library/logging.rst:955 +#: library/logging.rst:966 msgid "" "Logs a message with level :const:`DEBUG` on the root logger. The *msg* is " "the message format string, and the *args* are the arguments which are merged " @@ -1506,7 +1525,7 @@ msgid "" "argument.)" msgstr "" -#: library/logging.rst:960 +#: library/logging.rst:971 msgid "" "There are three keyword arguments in *kwargs* which are inspected: " "*exc_info* which, if it does not evaluate as false, causes exception " @@ -1516,7 +1535,7 @@ msgid "" "exception information." msgstr "" -#: library/logging.rst:986 +#: library/logging.rst:997 msgid "" "The third optional keyword argument is *extra* which can be used to pass a " "dictionary which is used to populate the __dict__ of the LogRecord created " @@ -1525,11 +1544,11 @@ msgid "" "logged messages. For example::" msgstr "" -#: library/logging.rst:997 +#: library/logging.rst:1008 msgid "would print something like:" msgstr "" -#: library/logging.rst:1007 +#: library/logging.rst:1018 msgid "" "If you choose to use these attributes in logged messages, you need to " "exercise some care. In the above example, for instance, the :class:" @@ -1540,51 +1559,51 @@ msgid "" "dictionary with these keys." msgstr "" -#: library/logging.rst:1026 +#: library/logging.rst:1037 msgid "" "Logs a message with level :const:`INFO` on the root logger. The arguments " "are interpreted as for :func:`debug`." msgstr "" -#: library/logging.rst:1032 +#: library/logging.rst:1043 msgid "" "Logs a message with level :const:`WARNING` on the root logger. The arguments " "are interpreted as for :func:`debug`." msgstr "" -#: library/logging.rst:1035 +#: library/logging.rst:1046 msgid "" "There is an obsolete function ``warn`` which is functionally identical to " "``warning``. As ``warn`` is deprecated, please do not use it - use " "``warning`` instead." msgstr "" -#: library/logging.rst:1042 +#: library/logging.rst:1053 msgid "" "Logs a message with level :const:`ERROR` on the root logger. The arguments " "are interpreted as for :func:`debug`." msgstr "" -#: library/logging.rst:1048 +#: library/logging.rst:1059 msgid "" "Logs a message with level :const:`CRITICAL` on the root logger. The " "arguments are interpreted as for :func:`debug`." msgstr "" -#: library/logging.rst:1054 +#: library/logging.rst:1065 msgid "" "Logs a message with level :const:`ERROR` on the root logger. The arguments " "are interpreted as for :func:`debug`. Exception info is added to the logging " "message. This function should only be called from an exception handler." msgstr "" -#: library/logging.rst:1060 +#: library/logging.rst:1071 msgid "" "Logs a message with level *level* on the root logger. The other arguments " "are interpreted as for :func:`debug`." msgstr "" -#: library/logging.rst:1063 +#: library/logging.rst:1074 msgid "" "The above module-level convenience functions, which delegate to the root " "logger, call :func:`basicConfig` to ensure that at least one handler is " @@ -1597,7 +1616,7 @@ msgid "" "messages for the same event." msgstr "" -#: library/logging.rst:1075 +#: library/logging.rst:1086 msgid "" "Provides an overriding level *level* for all loggers which takes precedence " "over the logger's own level. When the need arises to temporarily throttle " @@ -1611,7 +1630,7 @@ msgid "" "individual loggers." msgstr "" -#: library/logging.rst:1086 +#: library/logging.rst:1097 msgid "" "Note that if you have defined any custom logging level higher than " "``CRITICAL`` (this is not recommended), you won't be able to rely on the " @@ -1619,13 +1638,13 @@ msgid "" "a suitable value." msgstr "" -#: library/logging.rst:1091 +#: library/logging.rst:1102 msgid "" "The *level* parameter was defaulted to level ``CRITICAL``. See :issue:" "`28524` for more information about this change." msgstr "" -#: library/logging.rst:1097 +#: library/logging.rst:1108 msgid "" "Associates level *level* with text *levelName* in an internal dictionary, " "which is used to map numeric levels to a textual representation, for example " @@ -1635,17 +1654,17 @@ msgid "" "and they should increase in increasing order of severity." msgstr "" -#: library/logging.rst:1104 +#: library/logging.rst:1115 msgid "" "If you are thinking of defining your own levels, please see the section on :" "ref:`custom-levels`." msgstr "" -#: library/logging.rst:1109 +#: library/logging.rst:1120 msgid "Returns the textual or numeric representation of logging level *level*." msgstr "" -#: library/logging.rst:1111 +#: library/logging.rst:1122 msgid "" "If *level* is one of the predefined levels :const:`CRITICAL`, :const:" "`ERROR`, :const:`WARNING`, :const:`INFO` or :const:`DEBUG` then you get the " @@ -1655,20 +1674,20 @@ msgid "" "the corresponding string representation is returned." msgstr "" -#: library/logging.rst:1118 +#: library/logging.rst:1129 msgid "" "The *level* parameter also accepts a string representation of the level such " "as 'INFO'. In such cases, this functions returns the corresponding numeric " "value of the level." msgstr "" -#: library/logging.rst:1122 +#: library/logging.rst:1133 msgid "" "If no matching numeric or string value is passed in, the string 'Level %s' % " "level is returned." msgstr "" -#: library/logging.rst:1125 +#: library/logging.rst:1136 msgid "" "Levels are internally integers (as they need to be compared in the logging " "logic). This function is used to convert between an integer level and the " @@ -1677,7 +1696,7 @@ msgid "" "versa." msgstr "" -#: library/logging.rst:1131 +#: library/logging.rst:1142 msgid "" "In Python versions earlier than 3.4, this function could also be passed a " "text level, and would return the corresponding numeric value of the level. " @@ -1685,7 +1704,7 @@ msgid "" "Python 3.4, but reinstated in 3.4.2 due to retain backward compatibility." msgstr "" -#: library/logging.rst:1139 +#: library/logging.rst:1150 msgid "" "Creates and returns a new :class:`LogRecord` instance whose attributes are " "defined by *attrdict*. This function is useful for taking a pickled :class:" @@ -1693,7 +1712,7 @@ msgid "" "as a :class:`LogRecord` instance at the receiving end." msgstr "" -#: library/logging.rst:1147 +#: library/logging.rst:1158 msgid "" "Does basic configuration for the logging system by creating a :class:" "`StreamHandler` with a default :class:`Formatter` and adding it to the root " @@ -1702,13 +1721,13 @@ msgid "" "no handlers are defined for the root logger." msgstr "" -#: library/logging.rst:1153 +#: library/logging.rst:1164 msgid "" "This function does nothing if the root logger already has handlers " "configured, unless the keyword argument *force* is set to ``True``." msgstr "" -#: library/logging.rst:1156 +#: library/logging.rst:1167 msgid "" "This function should be called from the main thread before other threads are " "started. In versions of Python prior to 2.7.1 and 3.2, if this function is " @@ -1717,54 +1736,54 @@ msgid "" "unexpected results such as messages being duplicated in the log." msgstr "" -#: library/logging.rst:1163 +#: library/logging.rst:1174 msgid "The following keyword arguments are supported." msgstr "" -#: library/logging.rst:1170 +#: library/logging.rst:1181 msgid "*filename*" msgstr "*filename*" -#: library/logging.rst:1170 +#: library/logging.rst:1181 msgid "" -"Specifies that a FileHandler be created, using the specified filename, " -"rather than a StreamHandler." +"Specifies that a :class:`FileHandler` be created, using the specified " +"filename, rather than a :class:`StreamHandler`." msgstr "" -#: library/logging.rst:1174 +#: library/logging.rst:1185 msgid "*filemode*" msgstr "*filemode*" -#: library/logging.rst:1174 +#: library/logging.rst:1185 msgid "" "If *filename* is specified, open the file in this :ref:`mode `. " "Defaults to ``'a'``." msgstr "" -#: library/logging.rst:1178 +#: library/logging.rst:1189 msgid "*format*" msgstr "*format*" -#: library/logging.rst:1178 +#: library/logging.rst:1189 msgid "" "Use the specified format string for the handler. Defaults to attributes " "``levelname``, ``name`` and ``message`` separated by colons." msgstr "" -#: library/logging.rst:1183 +#: library/logging.rst:1194 msgid "*datefmt*" msgstr "*datefmt*" -#: library/logging.rst:1183 +#: library/logging.rst:1194 msgid "" "Use the specified date/time format, as accepted by :func:`time.strftime`." msgstr "" -#: library/logging.rst:1186 +#: library/logging.rst:1197 msgid "*style*" msgstr "*style*" -#: library/logging.rst:1186 +#: library/logging.rst:1197 msgid "" "If *format* is specified, use this style for the format string. One of " "``'%'``, ``'{'`` or ``'$'`` for :ref:`printf-style `." msgstr "" -#: library/logging.rst:1197 +#: library/logging.rst:1208 msgid "*stream*" msgstr "*stream*" -#: library/logging.rst:1197 +#: library/logging.rst:1208 msgid "" -"Use the specified stream to initialize the StreamHandler. Note that this " -"argument is incompatible with *filename* - if both are present, a " +"Use the specified stream to initialize the :class:`StreamHandler`. Note that " +"this argument is incompatible with *filename* - if both are present, a " "``ValueError`` is raised." msgstr "" -#: library/logging.rst:1202 +#: library/logging.rst:1214 msgid "*handlers*" msgstr "*handlers*" -#: library/logging.rst:1202 +#: library/logging.rst:1214 msgid "" "If specified, this should be an iterable of already created handlers to add " "to the root logger. Any handlers which don't already have a formatter set " @@ -1804,75 +1823,75 @@ msgid "" "present, a ``ValueError`` is raised." msgstr "" -#: library/logging.rst:1211 +#: library/logging.rst:1223 #, fuzzy msgid "*force*" msgstr "*format*" -#: library/logging.rst:1211 +#: library/logging.rst:1223 msgid "" "If this keyword argument is specified as true, any existing handlers " "attached to the root logger are removed and closed, before carrying out the " "configuration as specified by the other arguments." msgstr "" -#: library/logging.rst:1217 +#: library/logging.rst:1229 msgid "*encoding*" msgstr "" -#: library/logging.rst:1217 +#: library/logging.rst:1229 msgid "" "If this keyword argument is specified along with *filename*, its value is " -"used when the FileHandler is created, and thus used when opening the output " -"file." +"used when the :class:`FileHandler` is created, and thus used when opening " +"the output file." msgstr "" -#: library/logging.rst:1222 +#: library/logging.rst:1234 msgid "*errors*" msgstr "" -#: library/logging.rst:1222 +#: library/logging.rst:1234 msgid "" "If this keyword argument is specified along with *filename*, its value is " -"used when the FileHandler is created, and thus used when opening the output " -"file. If not specified, the value 'backslashreplace' is used. Note that if " -"``None`` is specified, it will be passed as such to func:`open`, which means " -"that it will be treated the same as passing 'errors'." +"used when the :class:`FileHandler` is created, and thus used when opening " +"the output file. If not specified, the value 'backslashreplace' is used. " +"Note that if ``None`` is specified, it will be passed as such to :func:" +"`open`, which means that it will be treated the same as passing 'errors'." msgstr "" -#: library/logging.rst:1233 +#: library/logging.rst:1245 msgid "The *style* argument was added." msgstr "" -#: library/logging.rst:1236 +#: library/logging.rst:1248 msgid "" "The *handlers* argument was added. Additional checks were added to catch " "situations where incompatible arguments are specified (e.g. *handlers* " "together with *stream* or *filename*, or *stream* together with *filename*)." msgstr "" -#: library/logging.rst:1242 +#: library/logging.rst:1254 msgid "The *force* argument was added." msgstr "" -#: library/logging.rst:1245 +#: library/logging.rst:1257 msgid "The *encoding* and *errors* arguments were added." msgstr "" -#: library/logging.rst:1250 +#: library/logging.rst:1262 msgid "" "Informs the logging system to perform an orderly shutdown by flushing and " "closing all handlers. This should be called at application exit and no " "further use of the logging system should be made after this call." msgstr "" -#: library/logging.rst:1254 +#: library/logging.rst:1266 msgid "" "When the logging module is imported, it registers this function as an exit " "handler (see :mod:`atexit`), so normally there's no need to do that manually." msgstr "" -#: library/logging.rst:1261 +#: library/logging.rst:1273 msgid "" "Tells the logging system to use the class *klass* when instantiating a " "logger. The class should define :meth:`__init__` such that only a name " @@ -1884,26 +1903,26 @@ msgid "" "loggers." msgstr "" -#: library/logging.rst:1272 +#: library/logging.rst:1284 msgid "Set a callable which is used to create a :class:`LogRecord`." msgstr "" -#: library/logging.rst:1274 +#: library/logging.rst:1286 msgid "The factory callable to be used to instantiate a log record." msgstr "" -#: library/logging.rst:1276 +#: library/logging.rst:1288 msgid "" "This function has been provided, along with :func:`getLogRecordFactory`, to " "allow developers more control over how the :class:`LogRecord` representing a " "logging event is constructed." msgstr "" -#: library/logging.rst:1281 +#: library/logging.rst:1293 msgid "The factory has the following signature:" msgstr "" -#: library/logging.rst:1283 +#: library/logging.rst:1295 msgid "" "``factory(name, level, fn, lno, msg, args, exc_info, func=None, sinfo=None, " "**kwargs)``" @@ -1911,7 +1930,7 @@ msgstr "" "``factory(name, level, fn, lno, msg, args, exc_info, func=None, sinfo=None, " "**kwargs)``" -#: library/logging.rst:1285 +#: library/logging.rst:1297 msgid "The logger name." msgstr "" @@ -1919,7 +1938,7 @@ msgstr "" msgid "level" msgstr "level" -#: library/logging.rst:1286 +#: library/logging.rst:1298 msgid "The logging level (numeric)." msgstr "" @@ -1927,7 +1946,7 @@ msgstr "" msgid "fn" msgstr "fn" -#: library/logging.rst:1287 +#: library/logging.rst:1299 msgid "The full pathname of the file where the logging call was made." msgstr "" @@ -1935,19 +1954,19 @@ msgstr "" msgid "lno" msgstr "lno" -#: library/logging.rst:1288 +#: library/logging.rst:1300 msgid "The line number in the file where the logging call was made." msgstr "" -#: library/logging.rst:1289 +#: library/logging.rst:1301 msgid "The logging message." msgstr "" -#: library/logging.rst:1290 +#: library/logging.rst:1302 msgid "The arguments for the logging message." msgstr "" -#: library/logging.rst:1291 +#: library/logging.rst:1303 msgid "An exception tuple, or ``None``." msgstr "" @@ -1955,7 +1974,7 @@ msgstr "" msgid "func" msgstr "func" -#: library/logging.rst:1292 +#: library/logging.rst:1304 msgid "The name of the function or method which invoked the logging call." msgstr "" @@ -1963,7 +1982,7 @@ msgstr "" msgid "sinfo" msgstr "sinfo" -#: library/logging.rst:1294 +#: library/logging.rst:1306 msgid "" "A stack traceback such as is provided by :func:`traceback.print_stack`, " "showing the call hierarchy." @@ -1973,15 +1992,15 @@ msgstr "" msgid "kwargs" msgstr "" -#: library/logging.rst:1296 +#: library/logging.rst:1308 msgid "Additional keyword arguments." msgstr "" -#: library/logging.rst:1300 +#: library/logging.rst:1312 msgid "Module-Level Attributes" msgstr "" -#: library/logging.rst:1304 +#: library/logging.rst:1316 msgid "" "A \"handler of last resort\" is available through this attribute. This is a :" "class:`StreamHandler` writing to ``sys.stderr`` with a level of ``WARNING``, " @@ -1992,22 +2011,22 @@ msgid "" "reason, ``lastResort`` can be set to ``None``." msgstr "" -#: library/logging.rst:1315 +#: library/logging.rst:1327 msgid "Integration with the warnings module" msgstr "" -#: library/logging.rst:1317 +#: library/logging.rst:1329 msgid "" "The :func:`captureWarnings` function can be used to integrate :mod:`logging` " "with the :mod:`warnings` module." msgstr "" -#: library/logging.rst:1322 +#: library/logging.rst:1334 msgid "" "This function is used to turn the capture of warnings by logging on and off." msgstr "" -#: library/logging.rst:1325 +#: library/logging.rst:1337 msgid "" "If *capture* is ``True``, warnings issued by the :mod:`warnings` module will " "be redirected to the logging system. Specifically, a warning will be " @@ -2016,46 +2035,46 @@ msgid "" "`WARNING`." msgstr "" -#: library/logging.rst:1330 +#: library/logging.rst:1342 msgid "" "If *capture* is ``False``, the redirection of warnings to the logging system " "will stop, and warnings will be redirected to their original destinations (i." "e. those in effect before ``captureWarnings(True)`` was called)." msgstr "" -#: library/logging.rst:1338 +#: library/logging.rst:1350 msgid "Module :mod:`logging.config`" msgstr "Module :mod:`logging.config`" -#: library/logging.rst:1338 +#: library/logging.rst:1350 msgid "Configuration API for the logging module." msgstr "API de configuration pour le module de journalisation." -#: library/logging.rst:1341 +#: library/logging.rst:1353 msgid "Module :mod:`logging.handlers`" msgstr "Module :mod:`logging.handlers`" -#: library/logging.rst:1341 +#: library/logging.rst:1353 msgid "Useful handlers included with the logging module." msgstr "Gestionnaires utiles inclus avec le module de journalisation." -#: library/logging.rst:1345 +#: library/logging.rst:1357 msgid ":pep:`282` - A Logging System" msgstr "" -#: library/logging.rst:1344 +#: library/logging.rst:1356 msgid "" "The proposal which described this feature for inclusion in the Python " "standard library." msgstr "" -#: library/logging.rst:1350 +#: library/logging.rst:1362 msgid "" "`Original Python logging package `_" msgstr "" -#: library/logging.rst:1348 +#: library/logging.rst:1360 msgid "" "This is the original source for the :mod:`logging` package. The version of " "the package available from this site is suitable for use with Python 1.5.2, " diff --git a/library/lzma.po b/library/lzma.po index 9ea0125a3..f1d05bab7 100644 --- a/library/lzma.po +++ b/library/lzma.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-05-17 21:51+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -38,12 +38,12 @@ msgstr "" "`xz`, ainsi que les flux bruts compressés." #: library/lzma.rst:21 +#, fuzzy msgid "" "The interface provided by this module is very similar to that of the :mod:" -"`bz2` module. However, note that :class:`LZMAFile` is *not* thread-safe, " -"unlike :class:`bz2.BZ2File`, so if you need to use a single :class:" -"`LZMAFile` instance from multiple threads, it is necessary to protect it " -"with a lock." +"`bz2` module. Note that :class:`LZMAFile` and :class:`bz2.BZ2File` are *not* " +"thread-safe, so if you need to use a single :class:`LZMAFile` instance from " +"multiple threads, it is necessary to protect it with a lock." msgstr "" "L'interface disponible par ce module ressemble en de nombreux points à celle " "du module :mod:`bz2`. Cependant, notez que la :class:`LZMAFile` n'est pas " diff --git a/library/mailcap.po b/library/mailcap.po index 8ee8ed056..ceb1be798 100644 --- a/library/mailcap.po +++ b/library/mailcap.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-09-28 19:35+0200\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -24,12 +24,13 @@ msgid "**Source code:** :source:`Lib/mailcap.py`" msgstr "**Code source :** :source:`Lib/mailcap.py`" #: library/mailcap.rst:11 +#, fuzzy msgid "" "Mailcap files are used to configure how MIME-aware applications such as mail " -"readers and Web browsers react to files with different MIME types. (The name " +"readers and web browsers react to files with different MIME types. (The name " "\"mailcap\" is derived from the phrase \"mail capability\".) For example, a " "mailcap file might contain a line like ``video/mpeg; xmpeg %s``. Then, if " -"the user encounters an email message or Web document with the MIME type :" +"the user encounters an email message or web document with the MIME type :" "mimetype:`video/mpeg`, ``%s`` will be replaced by a filename (usually one " "belonging to a temporary file) and the :program:`xmpeg` program can be " "automatically started to view the file." @@ -50,7 +51,7 @@ msgstr "" msgid "" "The mailcap format is documented in :rfc:`1524`, \"A User Agent " "Configuration Mechanism For Multimedia Mail Format Information\", but is not " -"an Internet standard. However, mailcap files are supported on most Unix " +"an internet standard. However, mailcap files are supported on most Unix " "systems." msgstr "" "Le format *mailcap* est documenté dans la :rfc:`1524` « A User Agent " diff --git a/library/marshal.po b/library/marshal.po index f87dc1dc4..283770fe9 100644 --- a/library/marshal.po +++ b/library/marshal.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-12-17 16:05+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-11-25 20:44+0100\n" "Last-Translator: ZepmanBC \n" "Language-Team: FRENCH \n" @@ -139,7 +139,13 @@ msgstr "" "L'argument *version* indique le format de données que le ``dump`` doit " "utiliser (voir ci-dessous)." -#: library/marshal.rst:72 +#: library/marshal.rst:101 +msgid "" +"Raises an :ref:`auditing event ` ``marshal.dumps`` with arguments " +"``value``, ``version``." +msgstr "" + +#: library/marshal.rst:74 msgid "" "Read one value from the open file and return it. If no valid value is read " "(e.g. because the data has a different Python version's incompatible marshal " @@ -154,13 +160,25 @@ msgstr "" #: library/marshal.rst:79 msgid "" +"Raises an :ref:`auditing event ` ``marshal.load`` with no " +"arguments." +msgstr "" + +#: library/marshal.rst:83 +msgid "" "If an object containing an unsupported type was marshalled with :func:" "`dump`, :func:`load` will substitute ``None`` for the unmarshallable type." msgstr "" "Si un objet contenant un type non pris en charge a été dé-compilé avec :func:" "`dump`, :func:`load` remplacera le type non « dé-compilable » par ``None``." -#: library/marshal.rst:85 +#: library/marshal.rst:88 +msgid "" +"This call used to raise a ``code.__new__`` audit event for each code object. " +"Now it raises a single ``marshal.load`` event for the entire load operation." +msgstr "" + +#: library/marshal.rst:94 msgid "" "Return the bytes object that would be written to a file by ``dump(value, " "file)``. The value must be a supported type. Raise a :exc:`ValueError` " @@ -171,7 +189,7 @@ msgstr "" "exc:`ValueError` si la valeur a (ou contient un objet qui a) un type qui " "n'est pas pris en charge." -#: library/marshal.rst:89 +#: library/marshal.rst:98 msgid "" "The *version* argument indicates the data format that ``dumps`` should use " "(see below)." @@ -179,7 +197,7 @@ msgstr "" "L'argument *version* indique le format de données que ``dumps`` doivent " "utiliser (voir ci-dessous)." -#: library/marshal.rst:95 +#: library/marshal.rst:106 msgid "" "Convert the :term:`bytes-like object` to a value. If no valid value is " "found, raise :exc:`EOFError`, :exc:`ValueError` or :exc:`TypeError`. Extra " @@ -189,11 +207,23 @@ msgstr "" "valide n'est trouvée, :exc:`EOFError`, :exc:`ValueError` ou :exc:`TypeError` " "est levée. Les octets supplémentaires de l'entrée sont ignorés." -#: library/marshal.rst:100 +#: library/marshal.rst:110 +msgid "" +"Raises an :ref:`auditing event ` ``marshal.loads`` with argument " +"``bytes``." +msgstr "" + +#: library/marshal.rst:114 +msgid "" +"This call used to raise a ``code.__new__`` audit event for each code object. " +"Now it raises a single ``marshal.loads`` event for the entire load operation." +msgstr "" + +#: library/marshal.rst:118 msgid "In addition, the following constants are defined:" msgstr "De plus, les constantes suivantes sont définies :" -#: library/marshal.rst:104 +#: library/marshal.rst:122 msgid "" "Indicates the format that the module uses. Version 0 is the historical " "format, version 1 shares interned strings and version 2 uses a binary format " @@ -206,11 +236,11 @@ msgstr "" "version 3 ajoute la prise en charge de l'instanciation et de la récursivité " "des objets. La version actuelle est la 4." -#: library/marshal.rst:112 +#: library/marshal.rst:130 msgid "Footnotes" msgstr "Notes" -#: library/marshal.rst:113 +#: library/marshal.rst:131 msgid "" "The name of this module stems from a bit of terminology used by the " "designers of Modula-3 (amongst others), who use the term \"marshalling\" for " diff --git a/library/math.po b/library/math.po index 8044cb837..51b8c9583 100644 --- a/library/math.po +++ b/library/math.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-15 22:05+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-10-09 21:42+0200\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -761,31 +761,38 @@ msgstr "" "Ajout de la gestion des points à n-dimensions. Auparavant seuls les points " "bi-dimensionnels étaient gérés." -#: library/math.rst:487 +#: library/math.rst:484 +msgid "" +"Improved the algorithm's accuracy so that the maximum error is under 1 ulp " +"(unit in the last place). More typically, the result is almost always " +"correctly rounded to within 1/2 ulp." +msgstr "" + +#: library/math.rst:492 msgid "Return the sine of *x* radians." msgstr "Renvoie le sinus de *x* radians." -#: library/math.rst:492 +#: library/math.rst:497 msgid "Return the tangent of *x* radians." msgstr "Renvoie la tangente de *x* radians." -#: library/math.rst:496 +#: library/math.rst:501 msgid "Angular conversion" msgstr "Conversion angulaire" -#: library/math.rst:500 +#: library/math.rst:505 msgid "Convert angle *x* from radians to degrees." msgstr "Convertit l'angle *x* de radians en degrés." -#: library/math.rst:505 +#: library/math.rst:510 msgid "Convert angle *x* from degrees to radians." msgstr "Convertit l'ange *x* de degrés en radians." -#: library/math.rst:509 +#: library/math.rst:514 msgid "Hyperbolic functions" msgstr "Fonctions hyperboliques" -#: library/math.rst:511 +#: library/math.rst:516 msgid "" "`Hyperbolic functions `_ " "are analogs of trigonometric functions that are based on hyperbolas instead " @@ -795,35 +802,35 @@ msgstr "" "Fonction_hyperbolique>`_ sont analogues à des fonctions trigonométriques qui " "sont basées sur des hyperboles au lieu de cercles." -#: library/math.rst:517 +#: library/math.rst:522 msgid "Return the inverse hyperbolic cosine of *x*." msgstr "Renvoie l'arc cosinus hyperbolique de *x*." -#: library/math.rst:522 +#: library/math.rst:527 msgid "Return the inverse hyperbolic sine of *x*." msgstr "Renvoie l'arc sinus hyperbolique de *x*." -#: library/math.rst:527 +#: library/math.rst:532 msgid "Return the inverse hyperbolic tangent of *x*." msgstr "Renvoie l'arc tangente hyperbolique de *x*." -#: library/math.rst:532 +#: library/math.rst:537 msgid "Return the hyperbolic cosine of *x*." msgstr "Renvoie le cosinus hyperbolique de *x*." -#: library/math.rst:537 +#: library/math.rst:542 msgid "Return the hyperbolic sine of *x*." msgstr "Renvoie le sinus hyperbolique de *x*." -#: library/math.rst:542 +#: library/math.rst:547 msgid "Return the hyperbolic tangent of *x*." msgstr "Renvoie la tangente hyperbolique de *x*." -#: library/math.rst:546 +#: library/math.rst:551 msgid "Special functions" msgstr "Fonctions spéciales" -#: library/math.rst:550 +#: library/math.rst:555 msgid "" "Return the `error function `_ " "at *x*." @@ -831,7 +838,7 @@ msgstr "" "Renvoie la `fonction d'erreur `_ en *x*." -#: library/math.rst:553 +#: library/math.rst:558 msgid "" "The :func:`erf` function can be used to compute traditional statistical " "functions such as the `cumulative standard normal distribution `_ ::" -#: library/math.rst:566 +#: library/math.rst:571 msgid "" "Return the complementary error function at *x*. The `complementary error " "function `_ is defined as " @@ -856,7 +863,7 @@ msgstr "" "*x*, où la soustraction en partant de 1,0 entraînerait une `perte de " "précision `_\\." -#: library/math.rst:577 +#: library/math.rst:582 msgid "" "Return the `Gamma function `_ " "at *x*." @@ -864,7 +871,7 @@ msgstr "" "Renvoie la `fonction Gamma `_ " "en *x*." -#: library/math.rst:585 +#: library/math.rst:590 msgid "" "Return the natural logarithm of the absolute value of the Gamma function at " "*x*." @@ -872,19 +879,19 @@ msgstr "" "Renvoie le logarithme naturel de la valeur absolue de la fonction gamma en " "*x*." -#: library/math.rst:592 +#: library/math.rst:597 msgid "Constants" msgstr "Constantes" -#: library/math.rst:596 +#: library/math.rst:601 msgid "The mathematical constant *π* = 3.141592..., to available precision." msgstr "La constante mathématique *π* = 3.141592…, à la précision disponible." -#: library/math.rst:601 +#: library/math.rst:606 msgid "The mathematical constant *e* = 2.718281..., to available precision." msgstr "La constante mathématique *e* = 2.718281…, à la précision disponible." -#: library/math.rst:606 +#: library/math.rst:611 msgid "" "The mathematical constant *τ* = 6.283185..., to available precision. Tau is " "a circle constant equal to 2\\ *π*, the ratio of a circle's circumference to " @@ -899,7 +906,7 @@ msgstr "" "v=jG7vhMMXagQ>`_, et profitez-en pour célébrer le `Jour de Tau `_ en bavardant comme deux pies !" -#: library/math.rst:617 +#: library/math.rst:622 msgid "" "A floating-point positive infinity. (For negative infinity, use ``-math." "inf``.) Equivalent to the output of ``float('inf')``." @@ -907,13 +914,13 @@ msgstr "" "Un flottant positif infini. (Pour un infini négatif, utilisez ``-math." "inf``.) Équivalent au résultat de ``float('inf')``." -#: library/math.rst:625 +#: library/math.rst:630 msgid "" "A floating-point \"not a number\" (NaN) value. Equivalent to the output of " "``float('nan')``." msgstr "Un flottant valant NaN. Équivalent au résultat de ``float('nan')``." -#: library/math.rst:633 +#: library/math.rst:638 msgid "" "The :mod:`math` module consists mostly of thin wrappers around the platform " "C math library functions. Behavior in exceptional cases follows Annex F of " @@ -941,7 +948,7 @@ msgstr "" "cette règle, par exemple ``pow(float('nan'), 0.0)`` ou ``hypot(float('nan'), " "float('inf'))``." -#: library/math.rst:645 +#: library/math.rst:650 msgid "" "Note that Python makes no effort to distinguish signaling NaNs from quiet " "NaNs, and behavior for signaling NaNs remains unspecified. Typical behavior " @@ -952,10 +959,10 @@ msgstr "" "spécifié. Le comportement standard est de traiter tous les NaNs comme s'ils " "étaient silencieux." -#: library/math.rst:652 +#: library/math.rst:657 msgid "Module :mod:`cmath`" msgstr "Module :mod:`cmath`" -#: library/math.rst:653 +#: library/math.rst:658 msgid "Complex number versions of many of these functions." msgstr "Version complexe de beaucoup de ces fonctions." diff --git a/library/mmap.po b/library/mmap.po index 0605d77ab..331ef02b9 100644 --- a/library/mmap.po +++ b/library/mmap.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -104,7 +104,7 @@ msgid "" "`ALLOCATIONGRANULARITY`." msgstr "" -#: library/mmap.rst:159 +#: library/mmap.rst:161 msgid "" "Raises an :ref:`auditing event ` ``mmap.__new__`` with arguments " "``fileno``, ``length``, ``access``, ``offset``." @@ -124,10 +124,12 @@ msgid "" "private copy-on-write mapping, so changes to the contents of the mmap object " "will be private to this process, and :const:`MAP_SHARED` creates a mapping " "that's shared with all other processes mapping the same areas of the file. " -"The default value is :const:`MAP_SHARED`." +"The default value is :const:`MAP_SHARED`. Some systems have additional " +"possible flags with the full list specified in :ref:`MAP_* constants `." msgstr "" -#: library/mmap.rst:86 +#: library/mmap.rst:88 msgid "" "*prot*, if specified, gives the desired memory protection; the two most " "useful values are :const:`PROT_READ` and :const:`PROT_WRITE`, to specify " @@ -135,7 +137,7 @@ msgid "" "\\| PROT_WRITE`." msgstr "" -#: library/mmap.rst:91 +#: library/mmap.rst:93 msgid "" "*access* may be specified in lieu of *flags* and *prot* as an optional " "keyword parameter. It is an error to specify both *flags*, *prot* and " @@ -143,7 +145,7 @@ msgid "" "use this parameter." msgstr "" -#: library/mmap.rst:96 +#: library/mmap.rst:98 msgid "" "*offset* may be specified as a non-negative integer offset. mmap references " "will be relative to the offset from the beginning of the file. *offset* " @@ -151,48 +153,48 @@ msgid "" "which is equal to :const:`PAGESIZE` on Unix systems." msgstr "" -#: library/mmap.rst:101 +#: library/mmap.rst:103 msgid "" "To ensure validity of the created memory mapping the file specified by the " "descriptor *fileno* is internally automatically synchronized with physical " -"backing store on Mac OS X and OpenVMS." +"backing store on macOS and OpenVMS." msgstr "" -#: library/mmap.rst:105 +#: library/mmap.rst:107 msgid "This example shows a simple way of using :class:`~mmap.mmap`::" msgstr "" -#: library/mmap.rst:130 +#: library/mmap.rst:132 msgid "" ":class:`~mmap.mmap` can also be used as a context manager in a :keyword:" "`with` statement::" msgstr "" -#: library/mmap.rst:138 +#: library/mmap.rst:140 msgid "Context manager support." msgstr "" -#: library/mmap.rst:142 +#: library/mmap.rst:144 msgid "" "The next example demonstrates how to create an anonymous map and exchange " "data between the parent and child processes::" msgstr "" -#: library/mmap.rst:161 +#: library/mmap.rst:163 msgid "Memory-mapped file objects support the following methods:" msgstr "" -#: library/mmap.rst:165 +#: library/mmap.rst:167 msgid "" "Closes the mmap. Subsequent calls to other methods of the object will result " "in a ValueError exception being raised. This will not close the open file." msgstr "" -#: library/mmap.rst:172 +#: library/mmap.rst:174 msgid "``True`` if the file is closed." msgstr "" -#: library/mmap.rst:179 +#: library/mmap.rst:181 msgid "" "Returns the lowest index in the object where the subsequence *sub* is found, " "such that *sub* is contained in the range [*start*, *end*]. Optional " @@ -200,11 +202,11 @@ msgid "" "``-1`` on failure." msgstr "" -#: library/mmap.rst:265 library/mmap.rst:297 +#: library/mmap.rst:267 library/mmap.rst:299 msgid "Writable :term:`bytes-like object` is now accepted." msgstr "N'importe quel :term:`bytes-like object` est maintenant accepté." -#: library/mmap.rst:190 +#: library/mmap.rst:192 msgid "" "Flushes changes made to the in-memory copy of a file back to disk. Without " "use of this call there is no guarantee that changes are written back before " @@ -214,20 +216,20 @@ msgid "" "`PAGESIZE` or :const:`ALLOCATIONGRANULARITY`." msgstr "" -#: library/mmap.rst:197 +#: library/mmap.rst:199 msgid "" "``None`` is returned to indicate success. An exception is raised when the " "call failed." msgstr "" -#: library/mmap.rst:200 +#: library/mmap.rst:202 msgid "" "Previously, a nonzero value was returned on success; zero was returned on " "error under Windows. A zero value was returned on success; an exception was " "raised on error under Unix." msgstr "" -#: library/mmap.rst:208 +#: library/mmap.rst:210 msgid "" "Send advice *option* to the kernel about the memory region beginning at " "*start* and extending *length* bytes. *option* must be one of the :ref:" @@ -236,18 +238,18 @@ msgid "" "(including Linux), *start* must be a multiple of the :const:`PAGESIZE`." msgstr "" -#: library/mmap.rst:215 +#: library/mmap.rst:217 msgid "Availability: Systems with the ``madvise()`` system call." msgstr "" -#: library/mmap.rst:222 +#: library/mmap.rst:224 msgid "" "Copy the *count* bytes starting at offset *src* to the destination index " "*dest*. If the mmap was created with :const:`ACCESS_READ`, then calls to " "move will raise a :exc:`TypeError` exception." msgstr "" -#: library/mmap.rst:229 +#: library/mmap.rst:231 msgid "" "Return a :class:`bytes` containing up to *n* bytes starting from the current " "file position. If the argument is omitted, ``None`` or negative, return all " @@ -255,31 +257,31 @@ msgid "" "position is updated to point after the bytes that were returned." msgstr "" -#: library/mmap.rst:235 +#: library/mmap.rst:237 msgid "Argument can be omitted or ``None``." msgstr "" -#: library/mmap.rst:240 +#: library/mmap.rst:242 msgid "" "Returns a byte at the current file position as an integer, and advances the " "file position by 1." msgstr "" -#: library/mmap.rst:246 +#: library/mmap.rst:248 msgid "" "Returns a single line, starting at the current file position and up to the " "next newline. The file position is updated to point after the bytes that " "were returned." msgstr "" -#: library/mmap.rst:253 +#: library/mmap.rst:255 msgid "" "Resizes the map and the underlying file, if any. If the mmap was created " "with :const:`ACCESS_READ` or :const:`ACCESS_COPY`, resizing the map will " "raise a :exc:`TypeError` exception." msgstr "" -#: library/mmap.rst:260 +#: library/mmap.rst:262 msgid "" "Returns the highest index in the object where the subsequence *sub* is " "found, such that *sub* is contained in the range [*start*, *end*]. Optional " @@ -287,7 +289,7 @@ msgid "" "``-1`` on failure." msgstr "" -#: library/mmap.rst:271 +#: library/mmap.rst:273 msgid "" "Set the file's current position. *whence* argument is optional and defaults " "to ``os.SEEK_SET`` or ``0`` (absolute file positioning); other values are " @@ -295,17 +297,17 @@ msgid "" "SEEK_END`` or ``2`` (seek relative to the file's end)." msgstr "" -#: library/mmap.rst:279 +#: library/mmap.rst:281 msgid "" "Return the length of the file, which can be larger than the size of the " "memory-mapped area." msgstr "" -#: library/mmap.rst:285 +#: library/mmap.rst:287 msgid "Returns the current position of the file pointer." msgstr "" -#: library/mmap.rst:290 +#: library/mmap.rst:292 msgid "" "Write the bytes in *bytes* into memory at the current position of the file " "pointer and return the number of bytes written (never less than " @@ -315,11 +317,11 @@ msgid "" "it will raise a :exc:`TypeError` exception." msgstr "" -#: library/mmap.rst:300 +#: library/mmap.rst:302 msgid "The number of bytes written is now returned." msgstr "" -#: library/mmap.rst:306 +#: library/mmap.rst:308 msgid "" "Write the integer *byte* into memory at the current position of the file " "pointer; the file position is advanced by ``1``. If the mmap was created " @@ -327,16 +329,30 @@ msgid "" "exception." msgstr "" -#: library/mmap.rst:314 +#: library/mmap.rst:316 msgid "MADV_* Constants" msgstr "" -#: library/mmap.rst:339 +#: library/mmap.rst:343 msgid "" "These options can be passed to :meth:`mmap.madvise`. Not every option will " "be present on every system." msgstr "" -#: library/mmap.rst:342 +#: library/mmap.rst:346 msgid "Availability: Systems with the madvise() system call." msgstr "" + +#: library/mmap.rst:353 +msgid "MAP_* Constants" +msgstr "" + +#: library/mmap.rst:363 +msgid "" +"These are the various flags that can be passed to :meth:`mmap.mmap`. Note " +"that some options might not be present on some systems." +msgstr "" + +#: library/mmap.rst:365 +msgid "Added MAP_POPULATE constant." +msgstr "" diff --git a/library/multiprocessing.po b/library/multiprocessing.po index e1b090dd0..f6fe2428d 100644 --- a/library/multiprocessing.po +++ b/library/multiprocessing.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-07-16 22:51+0200\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -1115,9 +1115,10 @@ msgstr "" "raison des problématiques de *multithreading* et *multiprocessing*." #: library/multiprocessing.rst:785 +#, fuzzy msgid "" "Note that this may raise :exc:`NotImplementedError` on Unix platforms like " -"Mac OS X where ``sem_getvalue()`` is not implemented." +"macOS where ``sem_getvalue()`` is not implemented." msgstr "" "Notez que cela peut lever une :exc:`NotImplementedError` sous les " "plateformes Unix telles que Mac OS X où ``sem_getvalue()`` n'est pas " @@ -1257,11 +1258,12 @@ msgstr "" "voir :meth:`join_thread`." #: library/multiprocessing.rst:862 +#, fuzzy msgid "" "A better name for this method might be ``allow_exit_without_flush()``. It " -"is likely to cause enqueued data to lost, and you almost certainly will not " -"need to use it. It is really only there if you need the current process to " -"exit immediately without waiting to flush enqueued data to the underlying " +"is likely to cause enqueued data to be lost, and you almost certainly will " +"not need to use it. It is really only there if you need the current process " +"to exit immediately without waiting to flush enqueued data to the underlying " "pipe, and you don't care about lost data." msgstr "" "Un meilleur nom pour cette méthode pourrait être " @@ -1408,23 +1410,25 @@ msgstr "" "sched_getaffinity(0))``" #: library/multiprocessing.rst:954 -msgid "May raise :exc:`NotImplementedError`." -msgstr "Peut lever une :exc:`NotImplementedError`." +msgid "" +"When the number of CPUs cannot be determined a :exc:`NotImplementedError` is " +"raised." +msgstr "" -#: library/multiprocessing.rst:957 +#: library/multiprocessing.rst:958 msgid ":func:`os.cpu_count`" msgstr ":func:`os.cpu_count`" -#: library/multiprocessing.rst:961 +#: library/multiprocessing.rst:962 msgid "" "Return the :class:`Process` object corresponding to the current process." msgstr "Renvoie l'objet :class:`Process` correspondant au processus courant." -#: library/multiprocessing.rst:963 +#: library/multiprocessing.rst:964 msgid "An analogue of :func:`threading.current_thread`." msgstr "Un analogue à :func:`threading.current_thread`." -#: library/multiprocessing.rst:967 +#: library/multiprocessing.rst:968 msgid "" "Return the :class:`Process` object corresponding to the parent process of " "the :func:`current_process`. For the main process, ``parent_process`` will " @@ -1434,7 +1438,7 @@ msgstr "" "`current_process`. Pour le processus maître, ``parent_process`` vaut " "``None``." -#: library/multiprocessing.rst:975 +#: library/multiprocessing.rst:976 msgid "" "Add support for when a program which uses :mod:`multiprocessing` has been " "frozen to produce a Windows executable. (Has been tested with **py2exe**, " @@ -1444,7 +1448,7 @@ msgstr "" "été figés pour produire un exécutable Windows (testé avec **py2exe**, " "**PyInstaller** et **cx_Freeze**)." -#: library/multiprocessing.rst:979 +#: library/multiprocessing.rst:980 msgid "" "One needs to call this function straight after the ``if __name__ == " "'__main__'`` line of the main module. For example::" @@ -1452,7 +1456,7 @@ msgstr "" "Cette fonction doit être appelée juste après la ligne ``if __name__ == " "'__main__'`` du module principal. Par exemple ::" -#: library/multiprocessing.rst:991 +#: library/multiprocessing.rst:992 msgid "" "If the ``freeze_support()`` line is omitted then trying to run the frozen " "executable will raise :exc:`RuntimeError`." @@ -1460,7 +1464,7 @@ msgstr "" "Si la ligne ``freeze_support()`` est omise, alors tenter de lancer " "l'exécutable figé lève une :exc:`RuntimeError`." -#: library/multiprocessing.rst:994 +#: library/multiprocessing.rst:995 msgid "" "Calling ``freeze_support()`` has no effect when invoked on any operating " "system other than Windows. In addition, if the module is being run normally " @@ -1472,7 +1476,7 @@ msgstr "" "normalement par l'interpréteur Python sous Windows (le programme n'a pas été " "figé), alors ``freeze_support()`` n'a pas d'effet." -#: library/multiprocessing.rst:1001 +#: library/multiprocessing.rst:1002 msgid "" "Returns a list of the supported start methods, the first of which is the " "default. The possible start methods are ``'fork'``, ``'spawn'`` and " @@ -1486,7 +1490,7 @@ msgstr "" "disponible. Sous Unix ``'fork'`` et ``'spawn'`` sont disponibles, ``'fork'`` " "étant celle par défaut." -#: library/multiprocessing.rst:1011 +#: library/multiprocessing.rst:1012 msgid "" "Return a context object which has the same attributes as the :mod:" "`multiprocessing` module." @@ -1494,7 +1498,7 @@ msgstr "" "Renvoie un contexte ayant les mêmes attributs que le module :mod:" "`multiprocessing`." -#: library/multiprocessing.rst:1014 +#: library/multiprocessing.rst:1015 msgid "" "If *method* is ``None`` then the default context is returned. Otherwise " "*method* should be ``'fork'``, ``'spawn'``, ``'forkserver'``. :exc:" @@ -1505,13 +1509,13 @@ msgstr "" "`ValueError` est levée si la méthode de démarrage spécifiée n'est pas " "disponible." -#: library/multiprocessing.rst:1023 +#: library/multiprocessing.rst:1024 msgid "Return the name of start method used for starting processes." msgstr "" "Renvoie le nom de la méthode de démarrage utilisée pour démarrer le " "processus." -#: library/multiprocessing.rst:1025 +#: library/multiprocessing.rst:1026 msgid "" "If the start method has not been fixed and *allow_none* is false, then the " "start method is fixed to the default and the name is returned. If the start " @@ -1522,7 +1526,7 @@ msgstr "" "renvoyé. Si la méthode n'a pas été fixée et que *allow_none* est vrai, " "``None`` est renvoyé." -#: library/multiprocessing.rst:1030 +#: library/multiprocessing.rst:1031 msgid "" "The return value can be ``'fork'``, ``'spawn'``, ``'forkserver'`` or " "``None``. ``'fork'`` is the default on Unix, while ``'spawn'`` is the " @@ -1532,7 +1536,7 @@ msgstr "" "``None``. ``'fork'`` est la valeur par défaut sous Unix, ``'spawn'`` est " "celle sous Windows." -#: library/multiprocessing.rst:1038 +#: library/multiprocessing.rst:1039 msgid "" "Sets the path of the Python interpreter to use when starting a child " "process. (By default :data:`sys.executable` is used). Embedders will " @@ -1542,17 +1546,17 @@ msgstr "" "processus fils. (Par défaut :data:`sys.executable` est utilisé). Les " "intégrateurs devront probablement faire quelque chose comme ::" -#: library/multiprocessing.rst:1044 +#: library/multiprocessing.rst:1045 msgid "before they can create child processes." msgstr "avant de pouvoir créer des processus fils." -#: library/multiprocessing.rst:1046 +#: library/multiprocessing.rst:1047 msgid "Now supported on Unix when the ``'spawn'`` start method is used." msgstr "" "Maintenant supporté sous Unix quand la méthode de démarrage ``'spawn'`` est " "utilisée." -#: library/multiprocessing.rst:1051 +#: library/multiprocessing.rst:1052 msgid "" "Set the method which should be used to start child processes. *method* can " "be ``'fork'``, ``'spawn'`` or ``'forkserver'``." @@ -1560,7 +1564,7 @@ msgstr "" "Règle la méthode qui doit être utilisée pour démarrer un processus fils. " "*method* peut être ``'fork'``, ``'spawn'`` ou ``'forkserver'``." -#: library/multiprocessing.rst:1054 +#: library/multiprocessing.rst:1055 msgid "" "Note that this should be called at most once, and it should be protected " "inside the ``if __name__ == '__main__'`` clause of the main module." @@ -1569,7 +1573,7 @@ msgstr "" "l'appel devrait être protégé à l'intérieur d'une clause ``if __name__ == " "'__main__'`` dans le module principal." -#: library/multiprocessing.rst:1062 +#: library/multiprocessing.rst:1063 msgid "" ":mod:`multiprocessing` contains no analogues of :func:`threading." "active_count`, :func:`threading.enumerate`, :func:`threading.settrace`, :" @@ -1581,11 +1585,11 @@ msgstr "" "func:`threading.setprofile`, :class:`threading.Timer`, ou :class:`threading." "local`." -#: library/multiprocessing.rst:1069 +#: library/multiprocessing.rst:1070 msgid "Connection Objects" msgstr "Objets de connexions" -#: library/multiprocessing.rst:1073 +#: library/multiprocessing.rst:1074 msgid "" "Connection objects allow the sending and receiving of picklable objects or " "strings. They can be thought of as message oriented connected sockets." @@ -1594,7 +1598,7 @@ msgstr "" "sérialisables ou de chaînes de caractères. Ils peuvent être vus comme des " "interfaces de connexion (*sockets*) connectées orientées messages." -#: library/multiprocessing.rst:1076 +#: library/multiprocessing.rst:1077 msgid "" "Connection objects are usually created using :func:`Pipe ` -- see also :ref:`multiprocessing-listeners-clients`." @@ -1603,7 +1607,7 @@ msgstr "" "` – voir aussi :ref:`multiprocessing-listeners-" "clients`." -#: library/multiprocessing.rst:1084 +#: library/multiprocessing.rst:1085 msgid "" "Send an object to the other end of the connection which should be read " "using :meth:`recv`." @@ -1611,7 +1615,7 @@ msgstr "" "Envoie un objet sur l'autre extrémité de la connexion, qui devra être lu " "avec :meth:`recv`." -#: library/multiprocessing.rst:1087 +#: library/multiprocessing.rst:1088 msgid "" "The object must be picklable. Very large pickles (approximately 32 MiB+, " "though it depends on the OS) may raise a :exc:`ValueError` exception." @@ -1620,7 +1624,7 @@ msgstr "" "32 Mo+, bien que cela dépende de l'OS) pourront lever une exception :exc:" "`ValueError`." -#: library/multiprocessing.rst:1092 +#: library/multiprocessing.rst:1093 msgid "" "Return an object sent from the other end of the connection using :meth:" "`send`. Blocks until there is something to receive. Raises :exc:`EOFError` " @@ -1631,27 +1635,27 @@ msgstr "" "une :exc:`EOFError` s'il n'y a plus rien à recevoir et que l'autre extrémité " "a été fermée." -#: library/multiprocessing.rst:1099 +#: library/multiprocessing.rst:1100 msgid "Return the file descriptor or handle used by the connection." msgstr "" "Renvoie le descripteur de fichier ou identifiant utilisé par la connexion." -#: library/multiprocessing.rst:1103 +#: library/multiprocessing.rst:1104 msgid "Close the connection." msgstr "Ferme la connexion." -#: library/multiprocessing.rst:1105 +#: library/multiprocessing.rst:1106 msgid "This is called automatically when the connection is garbage collected." msgstr "" "Elle est appelée automatiquement quand la connexion est collectée par le " "ramasse-miettes." -#: library/multiprocessing.rst:1109 +#: library/multiprocessing.rst:1110 msgid "Return whether there is any data available to be read." msgstr "" "Renvoie vrai ou faux selon si des données sont disponibles à la lecture." -#: library/multiprocessing.rst:1111 +#: library/multiprocessing.rst:1112 msgid "" "If *timeout* is not specified then it will return immediately. If *timeout* " "is a number then this specifies the maximum time in seconds to block. If " @@ -1661,7 +1665,7 @@ msgstr "" "*timeout* est un nombre alors il spécifie le temps maximum de blocage en " "secondes. Si *timeout* est ``None``, un temps d'attente infini est utilisé." -#: library/multiprocessing.rst:1115 +#: library/multiprocessing.rst:1116 msgid "" "Note that multiple connection objects may be polled at once by using :func:" "`multiprocessing.connection.wait`." @@ -1669,13 +1673,13 @@ msgstr "" "Notez que plusieurs objets de connexions peuvent être attendus en même temps " "à l'aide de :func:`multiprocessing.connection.wait`." -#: library/multiprocessing.rst:1120 +#: library/multiprocessing.rst:1121 msgid "Send byte data from a :term:`bytes-like object` as a complete message." msgstr "" "Envoie des données binaires depuis un :term:`bytes-like object` comme un " "message complet." -#: library/multiprocessing.rst:1122 +#: library/multiprocessing.rst:1123 msgid "" "If *offset* is given then data is read from that position in *buffer*. If " "*size* is given then that many bytes will be read from buffer. Very large " @@ -1688,7 +1692,7 @@ msgstr "" "+, bien que cela dépende de l'OS) pourront lever une exception :exc:" "`ValueError`." -#: library/multiprocessing.rst:1129 +#: library/multiprocessing.rst:1130 msgid "" "Return a complete message of byte data sent from the other end of the " "connection as a string. Blocks until there is something to receive. Raises :" @@ -1700,7 +1704,7 @@ msgstr "" "qu'il y ait quelque chose à recevoir. Lève une :exc:`EOFError` s'il ne reste " "rien à recevoir et que l'autre côté de la connexion a été fermé." -#: library/multiprocessing.rst:1134 +#: library/multiprocessing.rst:1135 msgid "" "If *maxlength* is specified and the message is longer than *maxlength* then :" "exc:`OSError` is raised and the connection will no longer be readable." @@ -1708,7 +1712,7 @@ msgstr "" "Si *maxlength* est précisé que que le message est plus long que *maxlength* " "alors une :exc:`OSError` est levée et la connexion n'est plus lisible." -#: library/multiprocessing.rst:1138 +#: library/multiprocessing.rst:1139 msgid "" "This function used to raise :exc:`IOError`, which is now an alias of :exc:" "`OSError`." @@ -1716,7 +1720,7 @@ msgstr "" "Cette fonction levait auparavant une :exc:`IOError`, qui est maintenant un " "alias pour :exc:`OSError`." -#: library/multiprocessing.rst:1145 +#: library/multiprocessing.rst:1146 msgid "" "Read into *buffer* a complete message of byte data sent from the other end " "of the connection and return the number of bytes in the message. Blocks " @@ -1729,7 +1733,7 @@ msgstr "" "exc:`EOFError` s'il ne reste rien à recevoir et que l'autre côté de la " "connexion a été fermé." -#: library/multiprocessing.rst:1151 +#: library/multiprocessing.rst:1152 msgid "" "*buffer* must be a writable :term:`bytes-like object`. If *offset* is given " "then the message will be written into the buffer from that position. Offset " @@ -1740,7 +1744,7 @@ msgstr "" "position. *offset* doit être un entier positif, inférieur à la taille de " "*buffer* (en octets)." -#: library/multiprocessing.rst:1156 +#: library/multiprocessing.rst:1157 msgid "" "If the buffer is too short then a :exc:`BufferTooShort` exception is raised " "and the complete message is available as ``e.args[0]`` where ``e`` is the " @@ -1750,7 +1754,7 @@ msgstr "" "le message complet est accessible via ``e.args[0]`` où ``e`` est l'instance " "de l'exception." -#: library/multiprocessing.rst:1160 +#: library/multiprocessing.rst:1161 msgid "" "Connection objects themselves can now be transferred between processes " "using :meth:`Connection.send` and :meth:`Connection.recv`." @@ -1759,7 +1763,7 @@ msgstr "" "les processus en utilisant :meth:`Connection.send` et :meth:`Connection." "recv`." -#: library/multiprocessing.rst:1164 +#: library/multiprocessing.rst:1165 msgid "" "Connection objects now support the context management protocol -- see :ref:" "`typecontextmanager`. :meth:`~contextmanager.__enter__` returns the " @@ -1770,11 +1774,11 @@ msgstr "" "`~contextmanager.__enter__` renvoie l'objet de connexion, et :meth:" "`~contextmanager.__exit__` appelle :meth:`close`." -#: library/multiprocessing.rst:1169 +#: library/multiprocessing.rst:1170 msgid "For example:" msgstr "Par exemple :" -#: library/multiprocessing.rst:1193 +#: library/multiprocessing.rst:1195 msgid "" "The :meth:`Connection.recv` method automatically unpickles the data it " "receives, which can be a security risk unless you can trust the process " @@ -1784,7 +1788,7 @@ msgstr "" "qu'elle reçoit, ce qui peut être un risque de sécurité à moins que vous ne " "fassiez réellement confiance au processus émetteur du message." -#: library/multiprocessing.rst:1197 +#: library/multiprocessing.rst:1199 msgid "" "Therefore, unless the connection object was produced using :func:`Pipe` you " "should only use the :meth:`~Connection.recv` and :meth:`~Connection.send` " @@ -1796,7 +1800,7 @@ msgstr "" "recv` et :meth:`~Connection.send` après avoir effectué une quelconque forme " "d'authentification. Voir :ref:`multiprocessing-auth-keys`." -#: library/multiprocessing.rst:1204 +#: library/multiprocessing.rst:1206 msgid "" "If a process is killed while it is trying to read or write to a pipe then " "the data in the pipe is likely to become corrupted, because it may become " @@ -1806,11 +1810,11 @@ msgstr "" "alors les données du tube ont des chances d'être corrompues, parce qu'il " "devient impossible d'être sûr d'où se trouvent les bornes du message." -#: library/multiprocessing.rst:1210 +#: library/multiprocessing.rst:1212 msgid "Synchronization primitives" msgstr "Primitives de synchronisation" -#: library/multiprocessing.rst:1214 +#: library/multiprocessing.rst:1216 msgid "" "Generally synchronization primitives are not as necessary in a multiprocess " "program as they are in a multithreaded program. See the documentation for :" @@ -1820,7 +1824,7 @@ msgstr "" "un programme multi-processus comme elles le sont dans un programme multi-" "fils d'exécution. Voir la documentation du module :mod:`threading`." -#: library/multiprocessing.rst:1218 +#: library/multiprocessing.rst:1220 msgid "" "Note that one can also create synchronization primitives by using a manager " "object -- see :ref:`multiprocessing-managers`." @@ -1828,11 +1832,11 @@ msgstr "" "Notez que vous pouvez aussi créer des primitives de synchronisation en " "utilisant un objet gestionnaire – voir :ref:`multiprocessing-managers`." -#: library/multiprocessing.rst:1223 +#: library/multiprocessing.rst:1225 msgid "A barrier object: a clone of :class:`threading.Barrier`." msgstr "Un objet barrière : un clone de :class:`threading.Barrier`." -#: library/multiprocessing.rst:1229 +#: library/multiprocessing.rst:1231 msgid "" "A bounded semaphore object: a close analog of :class:`threading." "BoundedSemaphore`." @@ -1840,7 +1844,7 @@ msgstr "" "Un objet sémaphore lié : un analogue proche de :class:`threading." "BoundedSemaphore`." -#: library/multiprocessing.rst:1232 library/multiprocessing.rst:1370 +#: library/multiprocessing.rst:1234 library/multiprocessing.rst:1372 msgid "" "A solitary difference from its close analog exists: its ``acquire`` method's " "first argument is named *block*, as is consistent with :meth:`Lock.acquire`." @@ -1849,20 +1853,21 @@ msgstr "" "de sa méthode ``acquire`` est appelé *block*, pour la cohérence avec :meth:" "`Lock.acquire`." -#: library/multiprocessing.rst:1236 +#: library/multiprocessing.rst:1238 +#, fuzzy msgid "" -"On Mac OS X, this is indistinguishable from :class:`Semaphore` because " +"On macOS, this is indistinguishable from :class:`Semaphore` because " "``sem_getvalue()`` is not implemented on that platform." msgstr "" "Sur Mac OS X, elle n'est pas distinguable de la classe :class:`Semaphore` " "parce que ``sem_getvalue()`` n'est pas implémentée sur cette plateforme." -#: library/multiprocessing.rst:1241 +#: library/multiprocessing.rst:1243 msgid "A condition variable: an alias for :class:`threading.Condition`." msgstr "" "Une variable conditionnelle : un alias pour :class:`threading.Condition`." -#: library/multiprocessing.rst:1243 +#: library/multiprocessing.rst:1245 msgid "" "If *lock* is specified then it should be a :class:`Lock` or :class:`RLock` " "object from :mod:`multiprocessing`." @@ -1870,15 +1875,15 @@ msgstr "" "Si *lock* est spécifié il doit être un objet :class:`Lock` ou :class:`RLock` " "du module :mod:`multiprocessing`." -#: library/multiprocessing.rst:1246 library/multiprocessing.rst:1780 +#: library/multiprocessing.rst:1248 library/multiprocessing.rst:1782 msgid "The :meth:`~threading.Condition.wait_for` method was added." msgstr "La méthode :meth:`~threading.Condition.wait_for` a été ajoutée." -#: library/multiprocessing.rst:1251 +#: library/multiprocessing.rst:1253 msgid "A clone of :class:`threading.Event`." msgstr "Un clone de :class:`threading.Event`." -#: library/multiprocessing.rst:1256 +#: library/multiprocessing.rst:1258 msgid "" "A non-recursive lock object: a close analog of :class:`threading.Lock`. Once " "a process or thread has acquired a lock, subsequent attempts to acquire it " @@ -1897,7 +1902,7 @@ msgstr "" "dans :class:`multiprocessing.Lock` et s'appliquent aux processus et aux fils " "d'exécution, à l'exception de ce qui est indiqué." -#: library/multiprocessing.rst:1264 +#: library/multiprocessing.rst:1266 msgid "" "Note that :class:`Lock` is actually a factory function which returns an " "instance of ``multiprocessing.synchronize.Lock`` initialized with a default " @@ -1907,7 +1912,7 @@ msgstr "" "instance de ``multiprocessing.synchronize.Lock`` initialisée avec un " "contexte par défaut." -#: library/multiprocessing.rst:1268 +#: library/multiprocessing.rst:1270 msgid "" ":class:`Lock` supports the :term:`context manager` protocol and thus may be " "used in :keyword:`with` statements." @@ -1915,11 +1920,11 @@ msgstr "" ":class:`Lock` supporte le protocole :term:`context manager` et peut ainsi " "être utilisé avec une instruction :keyword:`with`." -#: library/multiprocessing.rst:1273 library/multiprocessing.rst:1324 +#: library/multiprocessing.rst:1275 library/multiprocessing.rst:1326 msgid "Acquire a lock, blocking or non-blocking." msgstr "Acquiert un verrou, bloquant ou non bloquant." -#: library/multiprocessing.rst:1275 +#: library/multiprocessing.rst:1277 msgid "" "With the *block* argument set to ``True`` (the default), the method call " "will block until the lock is in an unlocked state, then set it to locked and " @@ -1931,7 +1936,7 @@ msgstr "" "de renvoyer ``True``. Notez que le nom de ce premier argument diffère de " "celui de :meth:`threading.Lock.acquire`." -#: library/multiprocessing.rst:1280 +#: library/multiprocessing.rst:1282 msgid "" "With the *block* argument set to ``False``, the method call does not block. " "If the lock is currently in a locked state, return ``False``; otherwise set " @@ -1941,7 +1946,7 @@ msgstr "" "verrou est actuellement verrouillé, renvoie ``False`` ; autrement verrouille " "le verrou et renvoie ``True``." -#: library/multiprocessing.rst:1284 +#: library/multiprocessing.rst:1286 msgid "" "When invoked with a positive, floating-point value for *timeout*, block for " "at most the number of seconds specified by *timeout* as long as the lock can " @@ -1965,7 +1970,7 @@ msgstr "" "alors ignoré. Renvoie ``True`` si le verrou a été acquis et ``False`` si le " "temps de *timeout* a expiré." -#: library/multiprocessing.rst:1299 +#: library/multiprocessing.rst:1301 msgid "" "Release a lock. This can be called from any process or thread, not only the " "process or thread which originally acquired the lock." @@ -1974,7 +1979,7 @@ msgstr "" "fil d'exécution, pas uniquement le processus ou le fil qui a acquis le " "verrou à l'origine." -#: library/multiprocessing.rst:1302 +#: library/multiprocessing.rst:1304 msgid "" "Behavior is the same as in :meth:`threading.Lock.release` except that when " "invoked on an unlocked lock, a :exc:`ValueError` is raised." @@ -1983,7 +1988,7 @@ msgstr "" "lorsque la méthode est appelée sur un verrou déverrouillé, une :exc:" "`ValueError` est levée." -#: library/multiprocessing.rst:1308 +#: library/multiprocessing.rst:1310 msgid "" "A recursive lock object: a close analog of :class:`threading.RLock`. A " "recursive lock must be released by the process or thread that acquired it. " @@ -1997,7 +2002,7 @@ msgstr "" "même processus/fil peut l'acquérir à nouveau sans bloquer ; le processus/fil " "doit le libérer autant de fois qu'il l'acquiert." -#: library/multiprocessing.rst:1314 +#: library/multiprocessing.rst:1316 msgid "" "Note that :class:`RLock` is actually a factory function which returns an " "instance of ``multiprocessing.synchronize.RLock`` initialized with a default " @@ -2007,7 +2012,7 @@ msgstr "" "instance de ``multiprocessing.synchronize.RLock`` initialisée avec un " "contexte par défaut." -#: library/multiprocessing.rst:1318 +#: library/multiprocessing.rst:1320 msgid "" ":class:`RLock` supports the :term:`context manager` protocol and thus may be " "used in :keyword:`with` statements." @@ -2015,7 +2020,7 @@ msgstr "" ":class:`RLock` supporte le protocole :term:`context manager` et peut ainsi " "être utilisée avec une instruction :keyword:`with`." -#: library/multiprocessing.rst:1326 +#: library/multiprocessing.rst:1328 msgid "" "When invoked with the *block* argument set to ``True``, block until the lock " "is in an unlocked state (not owned by any process or thread) unless the lock " @@ -2036,7 +2041,7 @@ msgstr "" "le comportement de ce premier argument comparé à l'implémentation de :meth:" "`threading.RLock.acquire`, à commencer par le nom de l'argument lui-même." -#: library/multiprocessing.rst:1336 +#: library/multiprocessing.rst:1338 msgid "" "When invoked with the *block* argument set to ``False``, do not block. If " "the lock has already been acquired (and thus is owned) by another process or " @@ -2053,7 +2058,7 @@ msgstr "" "à ``False``. Si le verrou est déverrouillé, le processus/fil courant en " "prend possession et incrémente son niveau de récursion, renvoyant ``True``." -#: library/multiprocessing.rst:1344 +#: library/multiprocessing.rst:1346 msgid "" "Use and behaviors of the *timeout* argument are the same as in :meth:`Lock." "acquire`. Note that some of these behaviors of *timeout* differ from the " @@ -2063,7 +2068,7 @@ msgstr "" "pour :meth:`Lock.acquire`. Notez que certains de ces comportements diffèrent " "par rapport à ceux implémentés par :meth:`threading.RLock.acquire`." -#: library/multiprocessing.rst:1351 +#: library/multiprocessing.rst:1353 msgid "" "Release a lock, decrementing the recursion level. If after the decrement " "the recursion level is zero, reset the lock to unlocked (not owned by any " @@ -2080,7 +2085,7 @@ msgstr "" "récursion est toujours strictement positif, le verrou reste verrouillé et " "propriété du processus/fil appelant." -#: library/multiprocessing.rst:1359 +#: library/multiprocessing.rst:1361 msgid "" "Only call this method when the calling process or thread owns the lock. An :" "exc:`AssertionError` is raised if this method is called by a process or " @@ -2094,20 +2099,21 @@ msgstr "" "n'est pas verrouillé (possédé). Notez que le type d'exception levé dans " "cette situation diffère du comportement de :meth:`threading.RLock.release`." -#: library/multiprocessing.rst:1368 +#: library/multiprocessing.rst:1370 msgid "A semaphore object: a close analog of :class:`threading.Semaphore`." msgstr "Un objet sémaphore, proche analogue de :class:`threading.Semaphore`." -#: library/multiprocessing.rst:1375 +#: library/multiprocessing.rst:1377 +#, fuzzy msgid "" -"On Mac OS X, ``sem_timedwait`` is unsupported, so calling ``acquire()`` with " -"a timeout will emulate that function's behavior using a sleeping loop." +"On macOS, ``sem_timedwait`` is unsupported, so calling ``acquire()`` with a " +"timeout will emulate that function's behavior using a sleeping loop." msgstr "" "Sous Mac OS X, ``sem_timedwait`` n'est pas supporté, donc appeler " "``acquire()`` avec un temps d'exécution limité émulera le comportement de " "cette fonction en utilisant une boucle d'attente." -#: library/multiprocessing.rst:1380 +#: library/multiprocessing.rst:1382 msgid "" "If the SIGINT signal generated by :kbd:`Ctrl-C` arrives while the main " "thread is blocked by a call to :meth:`BoundedSemaphore.acquire`, :meth:`Lock." @@ -2121,7 +2127,7 @@ msgstr "" "acquire`, :meth:`Condition.acquire` ou :meth:`Condition.wait`, l'appel sera " "immédiatement interrompu et une :exc:`KeyboardInterrupt` sera levée." -#: library/multiprocessing.rst:1386 +#: library/multiprocessing.rst:1388 msgid "" "This differs from the behaviour of :mod:`threading` where SIGINT will be " "ignored while the equivalent blocking calls are in progress." @@ -2129,7 +2135,7 @@ msgstr "" "Cela diffère du comportement de :mod:`threading` où le *SIGINT* est ignoré " "tant que les appels bloquants sont en cours." -#: library/multiprocessing.rst:1391 +#: library/multiprocessing.rst:1393 msgid "" "Some of this package's functionality requires a functioning shared semaphore " "implementation on the host operating system. Without one, the :mod:" @@ -2143,11 +2149,11 @@ msgstr "" "de l'importer lèveront une :exc:`ImportError`. Voir :issue:`3770` pour plus " "d'informations." -#: library/multiprocessing.rst:1399 +#: library/multiprocessing.rst:1401 msgid "Shared :mod:`ctypes` Objects" msgstr "Objets :mod:`ctypes` partagés" -#: library/multiprocessing.rst:1401 +#: library/multiprocessing.rst:1403 msgid "" "It is possible to create shared objects using shared memory which can be " "inherited by child processes." @@ -2155,7 +2161,7 @@ msgstr "" "Il est possible de créer des objets partagés utilisant une mémoire partagée " "pouvant être héritée par les processus fils." -#: library/multiprocessing.rst:1406 +#: library/multiprocessing.rst:1408 msgid "" "Return a :mod:`ctypes` object allocated from shared memory. By default the " "return value is actually a synchronized wrapper for the object. The object " @@ -2166,7 +2172,7 @@ msgstr "" "L'objet en lui-même est accessible par l'attribut *value* de l'une :class:" "`Value`." -#: library/multiprocessing.rst:1410 library/multiprocessing.rst:1497 +#: library/multiprocessing.rst:1412 library/multiprocessing.rst:1499 msgid "" "*typecode_or_type* determines the type of the returned object: it is either " "a ctypes type or a one character typecode of the kind used by the :mod:" @@ -2176,7 +2182,7 @@ msgstr "" "d'un type *ctype* soit d'un caractère *typecode* tel qu'utilisé par le " "module :mod:`array`. *\\*args* est passé au constructeur de ce type." -#: library/multiprocessing.rst:1414 +#: library/multiprocessing.rst:1416 msgid "" "If *lock* is ``True`` (the default) then a new recursive lock object is " "created to synchronize access to the value. If *lock* is a :class:`Lock` " @@ -2192,7 +2198,7 @@ msgstr "" "automatiquement protégé par un verrou, donc il ne sera pas forcément " "« *process-safe* »." -#: library/multiprocessing.rst:1421 +#: library/multiprocessing.rst:1423 msgid "" "Operations like ``+=`` which involve a read and write are not atomic. So " "if, for instance, you want to atomically increment a shared value it is " @@ -2203,7 +2209,7 @@ msgstr "" "incrémentation atomique sur une valeur partagée, vous ne pouvez pas " "simplement faire ::" -#: library/multiprocessing.rst:1427 +#: library/multiprocessing.rst:1429 msgid "" "Assuming the associated lock is recursive (which it is by default) you can " "instead do ::" @@ -2211,12 +2217,12 @@ msgstr "" "En supposant que le verrou associé est récursif (ce qui est le cas par " "défaut), vous pouvez à la place faire ::" -#: library/multiprocessing.rst:1433 library/multiprocessing.rst:1523 -#: library/multiprocessing.rst:1538 +#: library/multiprocessing.rst:1435 library/multiprocessing.rst:1525 +#: library/multiprocessing.rst:1540 msgid "Note that *lock* is a keyword-only argument." msgstr "Notez que *lock* est un argument *keyword-only*." -#: library/multiprocessing.rst:1437 +#: library/multiprocessing.rst:1439 msgid "" "Return a ctypes array allocated from shared memory. By default the return " "value is actually a synchronized wrapper for the array." @@ -2224,7 +2230,7 @@ msgstr "" "Renvoie un tableau *ctypes* alloué depuis la mémoire partagée. Par défaut la " "valeur de retour est en fait un *wrapper* synchronisé autour du tableau." -#: library/multiprocessing.rst:1440 +#: library/multiprocessing.rst:1442 msgid "" "*typecode_or_type* determines the type of the elements of the returned " "array: it is either a ctypes type or a one character typecode of the kind " @@ -2240,7 +2246,7 @@ msgstr "" "zéros. Autrement, *size*or_initializer* est une séquence qui sera utilisée " "pour initialiser le tableau et dont la taille détermine celle du tableau." -#: library/multiprocessing.rst:1447 +#: library/multiprocessing.rst:1449 msgid "" "If *lock* is ``True`` (the default) then a new lock object is created to " "synchronize access to the value. If *lock* is a :class:`Lock` or :class:" @@ -2256,11 +2262,11 @@ msgstr "" "automatiquement protégé par un verrou, donc il ne sera pas forcément " "« *process-safe* »." -#: library/multiprocessing.rst:1454 +#: library/multiprocessing.rst:1456 msgid "Note that *lock* is a keyword only argument." msgstr "Notez que *lock* est un argument *keyword-only*." -#: library/multiprocessing.rst:1456 +#: library/multiprocessing.rst:1458 msgid "" "Note that an array of :data:`ctypes.c_char` has *value* and *raw* attributes " "which allow one to use it to store and retrieve strings." @@ -2269,11 +2275,11 @@ msgstr "" "*raw* qui permettent de l'utiliser pour stocker et récupérer des chaînes de " "caractères." -#: library/multiprocessing.rst:1461 +#: library/multiprocessing.rst:1463 msgid "The :mod:`multiprocessing.sharedctypes` module" msgstr "Le module :mod:`multiprocessing.sharedctypes`" -#: library/multiprocessing.rst:1466 +#: library/multiprocessing.rst:1468 msgid "" "The :mod:`multiprocessing.sharedctypes` module provides functions for " "allocating :mod:`ctypes` objects from shared memory which can be inherited " @@ -2283,7 +2289,7 @@ msgstr "" "allouer des objets :mod:`ctypes` depuis la mémoire partagée, qui peuvent " "être hérités par les processus fils." -#: library/multiprocessing.rst:1472 +#: library/multiprocessing.rst:1474 msgid "" "Although it is possible to store a pointer in shared memory remember that " "this will refer to a location in the address space of a specific process. " @@ -2297,11 +2303,11 @@ msgstr "" "chances d'être invalide dans le contexte d'un autre processus et " "déréférencer le pointeur depuis ce second processus peut causer un plantage." -#: library/multiprocessing.rst:1480 +#: library/multiprocessing.rst:1482 msgid "Return a ctypes array allocated from shared memory." msgstr "Renvoie un tableau *ctypes* alloué depuis la mémoire partagée." -#: library/multiprocessing.rst:1482 +#: library/multiprocessing.rst:1484 msgid "" "*typecode_or_type* determines the type of the elements of the returned " "array: it is either a ctypes type or a one character typecode of the kind " @@ -2318,7 +2324,7 @@ msgstr "" "*size_or_initializer* est une séquence qui sera utilisée pour initialiser le " "tableau et dont la taille détermine celle du tableau." -#: library/multiprocessing.rst:1489 +#: library/multiprocessing.rst:1491 msgid "" "Note that setting and getting an element is potentially non-atomic -- use :" "func:`Array` instead to make sure that access is automatically synchronized " @@ -2328,11 +2334,11 @@ msgstr "" "utilisez plutôt :func:`Array` pour vous assurer de synchroniser " "automatiquement avec un verrou." -#: library/multiprocessing.rst:1495 +#: library/multiprocessing.rst:1497 msgid "Return a ctypes object allocated from shared memory." msgstr "Renvoie un objet *ctypes* alloué depuis la mémoire partagée." -#: library/multiprocessing.rst:1501 +#: library/multiprocessing.rst:1503 msgid "" "Note that setting and getting the value is potentially non-atomic -- use :" "func:`Value` instead to make sure that access is automatically synchronized " @@ -2342,7 +2348,7 @@ msgstr "" "utilisez plutôt :func:`Value` pour vous assurer de synchroniser " "automatiquement avec un verrou." -#: library/multiprocessing.rst:1505 +#: library/multiprocessing.rst:1507 msgid "" "Note that an array of :data:`ctypes.c_char` has ``value`` and ``raw`` " "attributes which allow one to use it to store and retrieve strings -- see " @@ -2352,7 +2358,7 @@ msgstr "" "*raw* qui permettent de l'utiliser pour stocker et récupérer des chaînes de " "caractères – voir la documentation de :mod:`ctypes`." -#: library/multiprocessing.rst:1511 +#: library/multiprocessing.rst:1513 msgid "" "The same as :func:`RawArray` except that depending on the value of *lock* a " "process-safe synchronization wrapper may be returned instead of a raw ctypes " @@ -2362,7 +2368,7 @@ msgstr "" "un *wrapper* de synchronisation *process-safe* pourra être renvoyé à la " "place d'un tableau *ctypes* brut." -#: library/multiprocessing.rst:1515 library/multiprocessing.rst:1531 +#: library/multiprocessing.rst:1517 library/multiprocessing.rst:1533 msgid "" "If *lock* is ``True`` (the default) then a new lock object is created to " "synchronize access to the value. If *lock* is a :class:`~multiprocessing." @@ -2378,7 +2384,7 @@ msgstr "" "l'accès à l'objet renvoyé ne sera pas automatiquement protégé par un verrou, " "donc il ne sera pas forcément « *process-safe* »." -#: library/multiprocessing.rst:1527 +#: library/multiprocessing.rst:1529 msgid "" "The same as :func:`RawValue` except that depending on the value of *lock* a " "process-safe synchronization wrapper may be returned instead of a raw ctypes " @@ -2388,7 +2394,7 @@ msgstr "" "un *wrapper* de synchronisation *process-safe* pourra être renvoyé à la " "place d'un objet *ctypes* brut." -#: library/multiprocessing.rst:1542 +#: library/multiprocessing.rst:1544 msgid "" "Return a ctypes object allocated from shared memory which is a copy of the " "ctypes object *obj*." @@ -2396,7 +2402,7 @@ msgstr "" "Renvoie un objet *ctypes* alloué depuis la mémoire partagée, qui est une " "copie de l'objet *ctypes* *obj*." -#: library/multiprocessing.rst:1547 +#: library/multiprocessing.rst:1549 msgid "" "Return a process-safe wrapper object for a ctypes object which uses *lock* " "to synchronize access. If *lock* is ``None`` (the default) then a :class:" @@ -2406,7 +2412,7 @@ msgstr "" "*lock* pour synchroniser l'accès. Si *lock* est ``None`` (par défaut), un " "objet :class:`multiprocessing.RLock` est créé automatiquement." -#: library/multiprocessing.rst:1551 +#: library/multiprocessing.rst:1553 msgid "" "A synchronized wrapper will have two methods in addition to those of the " "object it wraps: :meth:`get_obj` returns the wrapped object and :meth:" @@ -2416,7 +2422,7 @@ msgstr "" "qu'il enveloppe : :meth:`get_obj` renvoie l'objet *wrappé* et :meth:" "`get_lock` renvoie le verrou utilisé pour la synchronisation." -#: library/multiprocessing.rst:1555 +#: library/multiprocessing.rst:1557 msgid "" "Note that accessing the ctypes object through the wrapper can be a lot " "slower than accessing the raw ctypes object." @@ -2424,12 +2430,12 @@ msgstr "" "Notez qu'accéder à l'objet *ctypes* à travers le *wrapper* peut s'avérer " "beaucoup plus lent qu'accéder directement à l'objet *ctypes* brut." -#: library/multiprocessing.rst:1558 +#: library/multiprocessing.rst:1560 msgid "Synchronized objects support the :term:`context manager` protocol." msgstr "" "Les objets synchronisés supportent le protocole :term:`context manager`." -#: library/multiprocessing.rst:1562 +#: library/multiprocessing.rst:1564 msgid "" "The table below compares the syntax for creating shared ctypes objects from " "shared memory with the normal ctypes syntax. (In the table ``MyStruct`` is " @@ -2440,63 +2446,63 @@ msgstr "" "le tableau, ``MyStruct`` est une sous-classe quelconque de :class:`ctypes." "Structure`.)" -#: library/multiprocessing.rst:1567 +#: library/multiprocessing.rst:1569 msgid "ctypes" msgstr "ctypes" -#: library/multiprocessing.rst:1567 +#: library/multiprocessing.rst:1569 msgid "sharedctypes using type" msgstr "*sharedctypes* utilisant un type" -#: library/multiprocessing.rst:1567 +#: library/multiprocessing.rst:1569 msgid "sharedctypes using typecode" msgstr "*sharedctypes* utilisant un *typecode*" -#: library/multiprocessing.rst:1569 +#: library/multiprocessing.rst:1571 msgid "c_double(2.4)" msgstr "c_double(2.4)" -#: library/multiprocessing.rst:1569 +#: library/multiprocessing.rst:1571 msgid "RawValue(c_double, 2.4)" msgstr "RawValue(c_double, 2.4)" -#: library/multiprocessing.rst:1569 +#: library/multiprocessing.rst:1571 msgid "RawValue('d', 2.4)" msgstr "RawValue('d', 2.4)" -#: library/multiprocessing.rst:1570 +#: library/multiprocessing.rst:1572 msgid "MyStruct(4, 6)" msgstr "MyStruct(4, 6)" -#: library/multiprocessing.rst:1570 +#: library/multiprocessing.rst:1572 msgid "RawValue(MyStruct, 4, 6)" msgstr "RawValue(MyStruct, 4, 6)" -#: library/multiprocessing.rst:1571 +#: library/multiprocessing.rst:1573 msgid "(c_short * 7)()" msgstr "(c_short * 7)()" -#: library/multiprocessing.rst:1571 +#: library/multiprocessing.rst:1573 msgid "RawArray(c_short, 7)" msgstr "RawArray(c_short, 7)" -#: library/multiprocessing.rst:1571 +#: library/multiprocessing.rst:1573 msgid "RawArray('h', 7)" msgstr "RawArray('h', 7)" -#: library/multiprocessing.rst:1572 +#: library/multiprocessing.rst:1574 msgid "(c_int * 3)(9, 2, 8)" msgstr "(c_int * 3)(9, 2, 8)" -#: library/multiprocessing.rst:1572 +#: library/multiprocessing.rst:1574 msgid "RawArray(c_int, (9, 2, 8))" msgstr "RawArray(c_int, (9, 2, 8))" -#: library/multiprocessing.rst:1572 +#: library/multiprocessing.rst:1574 msgid "RawArray('i', (9, 2, 8))" msgstr "RawArray('i', (9, 2, 8))" -#: library/multiprocessing.rst:1576 +#: library/multiprocessing.rst:1578 msgid "" "Below is an example where a number of ctypes objects are modified by a child " "process::" @@ -2504,15 +2510,15 @@ msgstr "" "Ci-dessous un exemple où des objets *ctypes* sont modifiés par un processus " "fils ::" -#: library/multiprocessing.rst:1614 +#: library/multiprocessing.rst:1616 msgid "The results printed are ::" msgstr "Les résultats affichés sont ::" -#: library/multiprocessing.rst:1627 +#: library/multiprocessing.rst:1629 msgid "Managers" msgstr "Gestionnaires" -#: library/multiprocessing.rst:1629 +#: library/multiprocessing.rst:1631 msgid "" "Managers provide a way to create data which can be shared between different " "processes, including sharing over a network between processes running on " @@ -2527,7 +2533,7 @@ msgstr "" "Les autres processus peuvent accéder aux objets partagés à l'aide de " "mandataires." -#: library/multiprocessing.rst:1637 +#: library/multiprocessing.rst:1639 msgid "" "Returns a started :class:`~multiprocessing.managers.SyncManager` object " "which can be used for sharing objects between processes. The returned " @@ -2540,7 +2546,7 @@ msgstr "" "méthodes pour créer des objets partagés et renvoyer les mandataires " "correspondants." -#: library/multiprocessing.rst:1645 +#: library/multiprocessing.rst:1647 msgid "" "Manager processes will be shutdown as soon as they are garbage collected or " "their parent process exits. The manager classes are defined in the :mod:" @@ -2550,11 +2556,11 @@ msgstr "" "le ramasse-miettes ou que leur processus parent se terminera. Les classes " "gestionnaires sont définies dans le module :mod:`multiprocessing.managers` :" -#: library/multiprocessing.rst:1651 +#: library/multiprocessing.rst:1653 msgid "Create a BaseManager object." msgstr "Crée un objet *BaseManager*." -#: library/multiprocessing.rst:1653 +#: library/multiprocessing.rst:1655 msgid "" "Once created one should call :meth:`start` or ``get_server()." "serve_forever()`` to ensure that the manager object refers to a started " @@ -2564,7 +2570,7 @@ msgstr "" "serve_forever()`` pour assurer que l'objet gestionnaire référence un " "processus gestionnaire démarré." -#: library/multiprocessing.rst:1656 +#: library/multiprocessing.rst:1658 msgid "" "*address* is the address on which the manager process listens for new " "connections. If *address* is ``None`` then an arbitrary one is chosen." @@ -2573,7 +2579,7 @@ msgstr "" "de nouvelles connexions. Si *address* est ``None``, une adresse arbitraire " "est choisie." -#: library/multiprocessing.rst:1659 +#: library/multiprocessing.rst:1661 msgid "" "*authkey* is the authentication key which will be used to check the validity " "of incoming connections to the server process. If *authkey* is ``None`` " @@ -2585,7 +2591,7 @@ msgstr "" "``None`` alors ``current_process().authkey`` est utilisée. Autrement " "*authkey* est utilisée et doit être une chaîne d'octets." -#: library/multiprocessing.rst:1666 +#: library/multiprocessing.rst:1668 msgid "" "Start a subprocess to start the manager. If *initializer* is not ``None`` " "then the subprocess will call ``initializer(*initargs)`` when it starts." @@ -2594,7 +2600,7 @@ msgstr "" "n'est pas ``None`` alors le sous-processus appellera " "``initializer(*initargs)`` quand il démarrera." -#: library/multiprocessing.rst:1671 +#: library/multiprocessing.rst:1673 msgid "" "Returns a :class:`Server` object which represents the actual server under " "the control of the Manager. The :class:`Server` object supports the :meth:" @@ -2604,16 +2610,16 @@ msgstr "" "du gestionnaire. L'objet :class:`Server` supporte la méthode :meth:" "`serve_forever` ::" -#: library/multiprocessing.rst:1680 +#: library/multiprocessing.rst:1682 msgid ":class:`Server` additionally has an :attr:`address` attribute." msgstr ":class:`Server` possède en plus un attribut :attr:`address`." -#: library/multiprocessing.rst:1684 +#: library/multiprocessing.rst:1686 msgid "Connect a local manager object to a remote manager process::" msgstr "" "Connecte un objet gestionnaire local au processus gestionnaire distant ::" -#: library/multiprocessing.rst:1692 +#: library/multiprocessing.rst:1694 msgid "" "Stop the process used by the manager. This is only available if :meth:" "`start` has been used to start the server process." @@ -2622,11 +2628,11 @@ msgstr "" "uniquement si :meth:`start` a été utilisée pour démarrer le processus " "serveur." -#: library/multiprocessing.rst:1695 +#: library/multiprocessing.rst:1697 msgid "This can be called multiple times." msgstr "Cette méthode peut être appelée plusieurs fois." -#: library/multiprocessing.rst:1699 +#: library/multiprocessing.rst:1701 msgid "" "A classmethod which can be used for registering a type or callable with the " "manager class." @@ -2634,7 +2640,7 @@ msgstr "" "Une méthode de classe qui peut être utilisée pour enregistrer un type ou un " "appelable avec la classe gestionnaire." -#: library/multiprocessing.rst:1702 +#: library/multiprocessing.rst:1704 msgid "" "*typeid* is a \"type identifier\" which is used to identify a particular " "type of shared object. This must be a string." @@ -2642,7 +2648,7 @@ msgstr "" "*typeif* est un « *type identifier* » qui est utilisé pour identifier un " "type particulier d'objet partagé. Cela doit être une chaîne de caractères." -#: library/multiprocessing.rst:1705 +#: library/multiprocessing.rst:1707 msgid "" "*callable* is a callable used for creating objects for this type " "identifier. If a manager instance will be connected to the server using " @@ -2655,7 +2661,7 @@ msgstr "" "*create_method* vaut ``False`` alors cet argument peut être laissé à " "``None``." -#: library/multiprocessing.rst:1711 +#: library/multiprocessing.rst:1713 msgid "" "*proxytype* is a subclass of :class:`BaseProxy` which is used to create " "proxies for shared objects with this *typeid*. If ``None`` then a proxy " @@ -2665,7 +2671,7 @@ msgstr "" "des mandataires autour des objets partagés avec ce *typeid*. S'il est " "``None``, une classe mandataire sera créée automatiquement." -#: library/multiprocessing.rst:1715 +#: library/multiprocessing.rst:1717 msgid "" "*exposed* is used to specify a sequence of method names which proxies for " "this typeid should be allowed to access using :meth:`BaseProxy." @@ -2684,7 +2690,7 @@ msgstr "" "quel attribut qui possède une méthode :meth:`~object.__call__` et dont le " "nom ne commence pas par un ``'_'``.)" -#: library/multiprocessing.rst:1724 +#: library/multiprocessing.rst:1726 msgid "" "*method_to_typeid* is a mapping used to specify the return type of those " "exposed methods which should return a proxy. It maps method names to typeid " @@ -2701,7 +2707,7 @@ msgstr "" "de ce tableau associatif ou si la valeur associée est ``None``, l'objet " "renvoyé par la méthode sera une copie de la valeur." -#: library/multiprocessing.rst:1731 +#: library/multiprocessing.rst:1733 msgid "" "*create_method* determines whether a method should be created with name " "*typeid* which can be used to tell the server process to create a new shared " @@ -2712,17 +2718,17 @@ msgstr "" "un nouvel objet partagé et d'en renvoyer un mandataire. a valeur par défaut " "est ``True``." -#: library/multiprocessing.rst:1735 +#: library/multiprocessing.rst:1737 msgid ":class:`BaseManager` instances also have one read-only property:" msgstr "" "Les instances de :class:`BaseManager` ont aussi une propriété en lecture " "seule :" -#: library/multiprocessing.rst:1739 +#: library/multiprocessing.rst:1741 msgid "The address used by the manager." msgstr "L'adresse utilisée par le gestionnaire." -#: library/multiprocessing.rst:1741 +#: library/multiprocessing.rst:1743 msgid "" "Manager objects support the context management protocol -- see :ref:" "`typecontextmanager`. :meth:`~contextmanager.__enter__` starts the server " @@ -2735,7 +2741,7 @@ msgstr "" "l'objet gestionnaire. :meth:`~contextmanager.__exit__` appelle :meth:" "`shutdown`." -#: library/multiprocessing.rst:1747 +#: library/multiprocessing.rst:1749 msgid "" "In previous versions :meth:`~contextmanager.__enter__` did not start the " "manager's server process if it was not already started." @@ -2743,7 +2749,7 @@ msgstr "" "Dans les versions précédentes :meth:`~contextmanager.__enter__` ne démarrait " "pas le processus serveur du gestionnaire s'il n'était pas déjà démarré." -#: library/multiprocessing.rst:1752 +#: library/multiprocessing.rst:1754 msgid "" "A subclass of :class:`BaseManager` which can be used for the synchronization " "of processes. Objects of this type are returned by :func:`multiprocessing." @@ -2753,7 +2759,7 @@ msgstr "" "synchronisation entre processus. Des objets de ce type sont renvoyés par :" "func:`multiprocessing.Manager`." -#: library/multiprocessing.rst:1756 +#: library/multiprocessing.rst:1758 msgid "" "Its methods create and return :ref:`multiprocessing-proxy_objects` for a " "number of commonly used data types to be synchronized across processes. This " @@ -2764,14 +2770,14 @@ msgstr "" "synchronisés entre les processus. Elles incluent notamment des listes et " "dictionnaires partagés." -#: library/multiprocessing.rst:1762 +#: library/multiprocessing.rst:1764 msgid "" "Create a shared :class:`threading.Barrier` object and return a proxy for it." msgstr "" "Crée un objet :class:`threading.Barrier` partagé et renvoie un mandataire " "pour cet objet." -#: library/multiprocessing.rst:1769 +#: library/multiprocessing.rst:1771 msgid "" "Create a shared :class:`threading.BoundedSemaphore` object and return a " "proxy for it." @@ -2779,7 +2785,7 @@ msgstr "" "Crée un objet :class:`threading.BoundedSemaphore` partagé et renvoie un " "mandataire pour cet objet." -#: library/multiprocessing.rst:1774 +#: library/multiprocessing.rst:1776 msgid "" "Create a shared :class:`threading.Condition` object and return a proxy for " "it." @@ -2787,7 +2793,7 @@ msgstr "" "Crée un objet :class:`threading.Condition` partagé et renvoie un mandataire " "pour cet objet." -#: library/multiprocessing.rst:1777 +#: library/multiprocessing.rst:1779 msgid "" "If *lock* is supplied then it should be a proxy for a :class:`threading." "Lock` or :class:`threading.RLock` object." @@ -2795,40 +2801,40 @@ msgstr "" "Si *lock* est fourni alors il doit être un mandataire pour un objet :class:" "`threading.Lock` ou :class:`threading.RLock`." -#: library/multiprocessing.rst:1785 +#: library/multiprocessing.rst:1787 msgid "" "Create a shared :class:`threading.Event` object and return a proxy for it." msgstr "" "Crée un objet :class:`threading.Event` partagé et renvoie un mandataire pour " "cet objet." -#: library/multiprocessing.rst:1789 +#: library/multiprocessing.rst:1791 msgid "" "Create a shared :class:`threading.Lock` object and return a proxy for it." msgstr "" "Crée un objet :class:`threading.Lock` partagé et renvoie un mandataire pour " "cet objet." -#: library/multiprocessing.rst:1793 +#: library/multiprocessing.rst:1795 msgid "Create a shared :class:`Namespace` object and return a proxy for it." msgstr "" "Crée un objet :class:`Namespace` partagé et renvoie un mandataire pour cet " "objet." -#: library/multiprocessing.rst:1797 +#: library/multiprocessing.rst:1799 msgid "Create a shared :class:`queue.Queue` object and return a proxy for it." msgstr "" "Crée un objet :class:`queue.Queue` partagé et renvoie un mandataire pour cet " "objet." -#: library/multiprocessing.rst:1801 +#: library/multiprocessing.rst:1803 msgid "" "Create a shared :class:`threading.RLock` object and return a proxy for it." msgstr "" "Crée un objet :class:`threading.RLock` partagé et renvoie un mandataire pour " "cet objet." -#: library/multiprocessing.rst:1805 +#: library/multiprocessing.rst:1807 msgid "" "Create a shared :class:`threading.Semaphore` object and return a proxy for " "it." @@ -2836,11 +2842,11 @@ msgstr "" "Crée un objet :class:`threading.Semaphore` partagé et renvoie un mandataire " "pour cet objet." -#: library/multiprocessing.rst:1810 +#: library/multiprocessing.rst:1812 msgid "Create an array and return a proxy for it." msgstr "Crée un tableau et renvoie un mandataire pour cet objet." -#: library/multiprocessing.rst:1814 +#: library/multiprocessing.rst:1816 msgid "" "Create an object with a writable ``value`` attribute and return a proxy for " "it." @@ -2848,17 +2854,17 @@ msgstr "" "Crée un objet avec un attribut ``value`` accessible en écriture et renvoie " "un mandataire pour cet objet." -#: library/multiprocessing.rst:1821 +#: library/multiprocessing.rst:1823 msgid "Create a shared :class:`dict` object and return a proxy for it." msgstr "" "Crée un objet :class:`dict` partagé et renvoie un mandataire pour cet objet." -#: library/multiprocessing.rst:1826 +#: library/multiprocessing.rst:1828 msgid "Create a shared :class:`list` object and return a proxy for it." msgstr "" "Crée un objet :class:`list` partagé et renvoie un mandataire pour cet objet." -#: library/multiprocessing.rst:1828 +#: library/multiprocessing.rst:1830 msgid "" "Shared objects are capable of being nested. For example, a shared container " "object such as a shared list can contain other shared objects which will all " @@ -2868,11 +2874,11 @@ msgstr "" "partagé tel qu'une liste partagée peu contenir d'autres objets partagés qui " "seront aussi gérés et synchronisés par le :class:`SyncManager`." -#: library/multiprocessing.rst:1835 +#: library/multiprocessing.rst:1837 msgid "A type that can register with :class:`SyncManager`." msgstr "Un type qui peut être enregistré avec :class:`SyncManager`." -#: library/multiprocessing.rst:1837 +#: library/multiprocessing.rst:1839 msgid "" "A namespace object has no public methods, but does have writable attributes. " "Its representation shows the values of its attributes." @@ -2881,7 +2887,7 @@ msgstr "" "attributs accessibles en écriture. Sa représentation montre les valeurs de " "ses attributs." -#: library/multiprocessing.rst:1840 +#: library/multiprocessing.rst:1842 msgid "" "However, when using a proxy for a namespace object, an attribute beginning " "with ``'_'`` will be an attribute of the proxy and not an attribute of the " @@ -2890,11 +2896,11 @@ msgstr "" "Cependant, en utilisant un mandataire pour un espace de nommage, un attribut " "débutant par ``'_'`` est un attribut du mandataire et non de l'objet cible :" -#: library/multiprocessing.rst:1856 +#: library/multiprocessing.rst:1858 msgid "Customized managers" msgstr "Gestionnaires personnalisés" -#: library/multiprocessing.rst:1858 +#: library/multiprocessing.rst:1860 msgid "" "To create one's own manager, one creates a subclass of :class:`BaseManager` " "and uses the :meth:`~BaseManager.register` classmethod to register new types " @@ -2905,11 +2911,11 @@ msgstr "" "pour enregistrer de nouveaux types ou *callables* au gestionnaire. Par " "exemple ::" -#: library/multiprocessing.rst:1883 +#: library/multiprocessing.rst:1885 msgid "Using a remote manager" msgstr "Utiliser un gestionnaire distant" -#: library/multiprocessing.rst:1885 +#: library/multiprocessing.rst:1887 msgid "" "It is possible to run a manager server on one machine and have clients use " "it from other machines (assuming that the firewalls involved allow it)." @@ -2918,7 +2924,7 @@ msgstr "" "des clients l'utilisant sur d'autres machines (en supposant que les pare-" "feus impliqués l'autorisent)." -#: library/multiprocessing.rst:1888 +#: library/multiprocessing.rst:1890 msgid "" "Running the following commands creates a server for a single shared queue " "which remote clients can access::" @@ -2926,15 +2932,15 @@ msgstr "" "Exécuter les commandes suivantes crée un serveur pour une file simple " "partagée à laquelle des clients distants peuvent accéder ::" -#: library/multiprocessing.rst:1900 +#: library/multiprocessing.rst:1902 msgid "One client can access the server as follows::" msgstr "Un client peut accéder au serveur comme suit ::" -#: library/multiprocessing.rst:1910 +#: library/multiprocessing.rst:1912 msgid "Another client can also use it::" msgstr "Un autre client peut aussi l'utiliser ::" -#: library/multiprocessing.rst:1921 +#: library/multiprocessing.rst:1923 msgid "" "Local processes can also access that queue, using the code from above on the " "client to access it remotely::" @@ -2942,11 +2948,11 @@ msgstr "" "Les processus locaux peuvent aussi accéder à cette file, utilisant le code " "précédent sur le client pour y accéder à distance ::" -#: library/multiprocessing.rst:1946 +#: library/multiprocessing.rst:1948 msgid "Proxy Objects" msgstr "Objets mandataires" -#: library/multiprocessing.rst:1948 +#: library/multiprocessing.rst:1950 msgid "" "A proxy is an object which *refers* to a shared object which lives " "(presumably) in a different process. The shared object is said to be the " @@ -2957,7 +2963,7 @@ msgstr "" "*référent* du mandataire. Plusieurs mandataires peuvent avoir un même " "référent." -#: library/multiprocessing.rst:1952 +#: library/multiprocessing.rst:1954 msgid "" "A proxy object has methods which invoke corresponding methods of its " "referent (although not every method of the referent will necessarily be " @@ -2969,7 +2975,7 @@ msgstr "" "soient pas nécessairement accessibles à travers le mandataire). De cette " "manière, un mandataire peut être utilisé comme le serait sont référent :" -#: library/multiprocessing.rst:1970 +#: library/multiprocessing.rst:1972 msgid "" "Notice that applying :func:`str` to a proxy will return the representation " "of the referent, whereas applying :func:`repr` will return the " @@ -2978,7 +2984,7 @@ msgstr "" "Notez qu'appliquer :func:`str` à un mandataire renvoie la représentation du " "référent, alors que :func:`repr` renvoie celle du mandataire." -#: library/multiprocessing.rst:1974 +#: library/multiprocessing.rst:1976 msgid "" "An important feature of proxy objects is that they are picklable so they can " "be passed between processes. As such, a referent can contain :ref:" @@ -2991,13 +2997,13 @@ msgstr "" "d'imbriquer des listes et dictionnaires gérés ainsi que d'autres :ref:" "`multiprocessing-proxy_objects` :" -#: library/multiprocessing.rst:1990 +#: library/multiprocessing.rst:1992 msgid "Similarly, dict and list proxies may be nested inside one another::" msgstr "" "De même, les mandataires de listes et dictionnaires peuvent être imbriqués " "dans d'autres ::" -#: library/multiprocessing.rst:2003 +#: library/multiprocessing.rst:2005 msgid "" "If standard (non-proxy) :class:`list` or :class:`dict` objects are contained " "in a referent, modifications to those mutable values will not be propagated " @@ -3016,7 +3022,7 @@ msgstr "" "travers le gestionnaire et modifie effectivement l'élément, il est ainsi " "possible de réassigner la valeur modifiée au conteneur mandataire ::" -#: library/multiprocessing.rst:2022 +#: library/multiprocessing.rst:2024 msgid "" "This approach is perhaps less convenient than employing nested :ref:" "`multiprocessing-proxy_objects` for most use cases but also demonstrates a " @@ -3027,7 +3033,7 @@ msgstr "" "d'utilisation, mais démontre aussi un certain niveau de contrôle sur la " "synchronisation." -#: library/multiprocessing.rst:2028 +#: library/multiprocessing.rst:2030 msgid "" "The proxy types in :mod:`multiprocessing` do nothing to support comparisons " "by value. So, for instance, we have:" @@ -3035,40 +3041,40 @@ msgstr "" "Les types de mandataires de :mod:`multiprocessing` n'implémentent rien pour " "la comparaison par valeurs. Par exemple, on a :" -#: library/multiprocessing.rst:2036 +#: library/multiprocessing.rst:2038 msgid "" "One should just use a copy of the referent instead when making comparisons." msgstr "" "Il faut à la place simplement utiliser une copie du référent pour faire les " "comparaisons." -#: library/multiprocessing.rst:2040 +#: library/multiprocessing.rst:2042 msgid "Proxy objects are instances of subclasses of :class:`BaseProxy`." msgstr "" "Les objets mandataires sont des instances de sous-classes de :class:" "`BaseProxy`." -#: library/multiprocessing.rst:2044 +#: library/multiprocessing.rst:2046 msgid "Call and return the result of a method of the proxy's referent." msgstr "" "Appelle et renvoie le résultat d'une méthode du référent du mandataire." -#: library/multiprocessing.rst:2046 +#: library/multiprocessing.rst:2048 msgid "" "If ``proxy`` is a proxy whose referent is ``obj`` then the expression ::" msgstr "" "Si ``proxy`` est un mandataire sont le référent est ``obj``, alors " "l'expression ::" -#: library/multiprocessing.rst:2050 +#: library/multiprocessing.rst:2052 msgid "will evaluate the expression ::" msgstr "s'évalue comme ::" -#: library/multiprocessing.rst:2054 +#: library/multiprocessing.rst:2056 msgid "in the manager's process." msgstr "dans le processus du gestionnaire." -#: library/multiprocessing.rst:2056 +#: library/multiprocessing.rst:2058 msgid "" "The returned value will be a copy of the result of the call or a proxy to a " "new shared object -- see documentation for the *method_to_typeid* argument " @@ -3078,7 +3084,7 @@ msgstr "" "sur un nouvel objet partagé – voir l'a documentation de l'argument " "*method_to_typeid* de :meth:`BaseManager.register`." -#: library/multiprocessing.rst:2060 +#: library/multiprocessing.rst:2062 msgid "" "If an exception is raised by the call, then is re-raised by :meth:" "`_callmethod`. If some other exception is raised in the manager's process " @@ -3090,7 +3096,7 @@ msgstr "" "gestionnaire, elle est convertie en une :exc:`RemoteError` et est levée par :" "meth:`_callmethod`." -#: library/multiprocessing.rst:2065 +#: library/multiprocessing.rst:2067 msgid "" "Note in particular that an exception will be raised if *methodname* has not " "been *exposed*." @@ -3098,31 +3104,31 @@ msgstr "" "Notez en particulier qu'une exception est levée si *methodname* n'est pas " "*exposée*." -#: library/multiprocessing.rst:2068 +#: library/multiprocessing.rst:2070 msgid "An example of the usage of :meth:`_callmethod`:" msgstr "Un exemple d'utilisation de :meth:`_callmethod` :" -#: library/multiprocessing.rst:2084 +#: library/multiprocessing.rst:2086 msgid "Return a copy of the referent." msgstr "Renvoie une copie du référent." -#: library/multiprocessing.rst:2086 +#: library/multiprocessing.rst:2088 msgid "If the referent is unpicklable then this will raise an exception." msgstr "Si le référent n'est pas sérialisable, une exception est levée." -#: library/multiprocessing.rst:2090 +#: library/multiprocessing.rst:2092 msgid "Return a representation of the proxy object." msgstr "Renvoie la représentation de l'objet mandataire." -#: library/multiprocessing.rst:2094 +#: library/multiprocessing.rst:2096 msgid "Return the representation of the referent." msgstr "Renvoie la représentation du référent." -#: library/multiprocessing.rst:2098 +#: library/multiprocessing.rst:2100 msgid "Cleanup" msgstr "Nettoyage" -#: library/multiprocessing.rst:2100 +#: library/multiprocessing.rst:2102 msgid "" "A proxy object uses a weakref callback so that when it gets garbage " "collected it deregisters itself from the manager which owns its referent." @@ -3131,7 +3137,7 @@ msgstr "" "que quand il est collecté par le ramasse-miettes, il se désenregistre auprès " "du gestionnaire qui possède le référent." -#: library/multiprocessing.rst:2103 +#: library/multiprocessing.rst:2105 msgid "" "A shared object gets deleted from the manager process when there are no " "longer any proxies referring to it." @@ -3139,11 +3145,11 @@ msgstr "" "Un objet partagé est supprimé par le processus gestionnaire quand plus aucun " "mandataire ne le référence." -#: library/multiprocessing.rst:2108 +#: library/multiprocessing.rst:2110 msgid "Process Pools" msgstr "Pools de processus" -#: library/multiprocessing.rst:2113 +#: library/multiprocessing.rst:2115 msgid "" "One can create a pool of processes which will carry out tasks submitted to " "it with the :class:`Pool` class." @@ -3151,7 +3157,7 @@ msgstr "" "On peut créer un pool de processus qui exécuteront les tâches qui lui seront " "soumises avec la classe :class:`Pool`." -#: library/multiprocessing.rst:2118 +#: library/multiprocessing.rst:2120 msgid "" "A process pool object which controls a pool of worker processes to which " "jobs can be submitted. It supports asynchronous results with timeouts and " @@ -3162,7 +3168,7 @@ msgstr "" "*timeouts* et des *callbacks* et possède une implémentation parallèle de " "*map*." -#: library/multiprocessing.rst:2122 +#: library/multiprocessing.rst:2124 msgid "" "*processes* is the number of worker processes to use. If *processes* is " "``None`` then the number returned by :func:`os.cpu_count` is used." @@ -3170,7 +3176,7 @@ msgstr "" "*processes* est le nombre de processus *workers* à utiliser. Si *processes* " "est ``None``, le nombre renvoyé par :func:`os.cpu_count` est utilisé." -#: library/multiprocessing.rst:2125 library/multiprocessing.rst:2684 +#: library/multiprocessing.rst:2127 library/multiprocessing.rst:2686 msgid "" "If *initializer* is not ``None`` then each worker process will call " "``initializer(*initargs)`` when it starts." @@ -3178,7 +3184,7 @@ msgstr "" "Si *initializer* n'est pas ``None``, chaque processus *worker* appellera " "``initializer(*initargs)`` en démarrant." -#: library/multiprocessing.rst:2128 +#: library/multiprocessing.rst:2130 msgid "" "*maxtasksperchild* is the number of tasks a worker process can complete " "before it will exit and be replaced with a fresh worker process, to enable " @@ -3191,7 +3197,7 @@ msgstr "" "*maxtasksperchild* est ``None``, ce qui signifie que le *worker* vit aussi " "longtemps que le pool." -#: library/multiprocessing.rst:2133 +#: library/multiprocessing.rst:2135 msgid "" "*context* can be used to specify the context used for starting the worker " "processes. Usually a pool is created using the function :func:" @@ -3203,7 +3209,7 @@ msgstr "" "fonction :func:`multiprocessing.Pool` ou de la méthode :meth:`Pool` d'un " "objet de contexte. Dans les deux cas *context* est réglé de façon appropriée." -#: library/multiprocessing.rst:2139 +#: library/multiprocessing.rst:2141 msgid "" "Note that the methods of the pool object should only be called by the " "process which created the pool." @@ -3211,7 +3217,7 @@ msgstr "" "Notez que les méthodes de l'objet *pool* ne doivent être appelées que par le " "processus qui l'a créé." -#: library/multiprocessing.rst:2143 +#: library/multiprocessing.rst:2145 msgid "" ":class:`multiprocessing.pool` objects have internal resources that need to " "be properly managed (like any other resource) by using the pool as a context " @@ -3224,25 +3230,26 @@ msgstr "" "`terminate` manuellement. Si cela n'est pas fait, le processus peut être " "bloqué à la finalisation." -#: library/multiprocessing.rst:2148 +#: library/multiprocessing.rst:2150 +#, fuzzy msgid "" -"Note that is **not correct** to rely on the garbage colletor to destroy the " -"pool as CPython does not assure that the finalizer of the pool will be " +"Note that it is **not correct** to rely on the garbage collector to destroy " +"the pool as CPython does not assure that the finalizer of the pool will be " "called (see :meth:`object.__del__` for more information)." msgstr "" "Notez qu'il n'est **pas correct** de compter sur le ramasse-miette pour " "détruire le pool car CPython n'assure pas que le *finalizer* du pool sera " "appelé (voir :meth:`object.__del__` pour plus d'informations)." -#: library/multiprocessing.rst:2152 +#: library/multiprocessing.rst:2154 msgid "*maxtasksperchild*" msgstr "*maxtasksperchild*" -#: library/multiprocessing.rst:2155 +#: library/multiprocessing.rst:2157 msgid "*context*" msgstr "*context*" -#: library/multiprocessing.rst:2160 +#: library/multiprocessing.rst:2162 msgid "" "Worker processes within a :class:`Pool` typically live for the complete " "duration of the Pool's work queue. A frequent pattern found in other systems " @@ -3261,7 +3268,7 @@ msgstr "" "fraîchement lancé. L'argument *maxtasksperchild* de :class:`Pool` expose " "cette fonctionnalité à l'utilisateur final." -#: library/multiprocessing.rst:2170 +#: library/multiprocessing.rst:2172 msgid "" "Call *func* with arguments *args* and keyword arguments *kwds*. It blocks " "until the result is ready. Given this blocks, :meth:`apply_async` is better " @@ -3273,7 +3280,7 @@ msgstr "" "meth:`apply_async` est préférable pour exécuter du travail en parallèle. De " "plus, *func* est exécutée sur un seul des *workers* du pool." -#: library/multiprocessing.rst:2177 +#: library/multiprocessing.rst:2179 msgid "" "A variant of the :meth:`apply` method which returns a :class:" "`~multiprocessing.pool.AsyncResult` object." @@ -3281,7 +3288,7 @@ msgstr "" "Une variante de la méthode :meth:`apply` qui renvoie un objet :class:" "`~multiprocessing.pool.AsyncResult`." -#: library/multiprocessing.rst:2180 library/multiprocessing.rst:2211 +#: library/multiprocessing.rst:2182 library/multiprocessing.rst:2213 msgid "" "If *callback* is specified then it should be a callable which accepts a " "single argument. When the result becomes ready *callback* is applied to it, " @@ -3293,7 +3300,7 @@ msgstr "" "résultat, si l'appel n'échoue pas auquel cas *error_callback* est appelé à " "la place." -#: library/multiprocessing.rst:2185 library/multiprocessing.rst:2216 +#: library/multiprocessing.rst:2187 library/multiprocessing.rst:2218 msgid "" "If *error_callback* is specified then it should be a callable which accepts " "a single argument. If the target function fails, then the *error_callback* " @@ -3303,7 +3310,7 @@ msgstr "" "accepte un seul argument. Si la fonction cible échoue, alors " "*error_callback* est appelé avec l'instance de l'exception." -#: library/multiprocessing.rst:2189 library/multiprocessing.rst:2220 +#: library/multiprocessing.rst:2191 library/multiprocessing.rst:2222 msgid "" "Callbacks should complete immediately since otherwise the thread which " "handles the results will get blocked." @@ -3311,7 +3318,7 @@ msgstr "" "Les *callbacks* doivent se terminer immédiatement, autrement le fil " "d'exécution qui gère les résultats se retrouverait bloqué." -#: library/multiprocessing.rst:2194 +#: library/multiprocessing.rst:2196 msgid "" "A parallel equivalent of the :func:`map` built-in function (it supports only " "one *iterable* argument though, for multiple iterables see :meth:`starmap`). " @@ -3321,7 +3328,7 @@ msgstr "" "qu'un seul argument *itérable* ; pour en passer plusieurs, référez-vous à :" "meth:`starmap`). Elle bloque jusqu'à ce que le résultat soit prêt." -#: library/multiprocessing.rst:2198 +#: library/multiprocessing.rst:2200 msgid "" "This method chops the iterable into a number of chunks which it submits to " "the process pool as separate tasks. The (approximate) size of these chunks " @@ -3331,7 +3338,7 @@ msgstr "" "pool de processus comme des tâches séparées. La taille (approximative) de " "ces morceaux peut être précisée en passant à *chunksize* un entier positif." -#: library/multiprocessing.rst:2202 +#: library/multiprocessing.rst:2204 msgid "" "Note that it may cause high memory usage for very long iterables. Consider " "using :meth:`imap` or :meth:`imap_unordered` with explicit *chunksize* " @@ -3342,7 +3349,7 @@ msgstr "" "`imap_unordered` avec l'option *chunksize* explicite pour une meilleure " "efficacité." -#: library/multiprocessing.rst:2208 +#: library/multiprocessing.rst:2210 msgid "" "A variant of the :meth:`.map` method which returns a :class:" "`~multiprocessing.pool.AsyncResult` object." @@ -3350,11 +3357,11 @@ msgstr "" "Une variante de la méthode :meth:`.map` qui renvoie un objet :class:" "`~multiprocessing.pool.AsyncResult`." -#: library/multiprocessing.rst:2225 +#: library/multiprocessing.rst:2227 msgid "A lazier version of :meth:`.map`." msgstr "Une version paresseuse de :meth:`map`." -#: library/multiprocessing.rst:2227 +#: library/multiprocessing.rst:2229 msgid "" "The *chunksize* argument is the same as the one used by the :meth:`.map` " "method. For very long iterables using a large value for *chunksize* can " @@ -3365,7 +3372,7 @@ msgstr "" "*chunksize* peut faire s'exécuter la tâche **beaucoup** plus rapidement " "qu'en utilisant la valeur par défaut de ``1``." -#: library/multiprocessing.rst:2232 +#: library/multiprocessing.rst:2234 msgid "" "Also if *chunksize* is ``1`` then the :meth:`!next` method of the iterator " "returned by the :meth:`imap` method has an optional *timeout* parameter: " @@ -3377,7 +3384,7 @@ msgstr "" "*timeout* : ``next(timeout)`` lève une :exc:`multiprocessing.TimeoutError` " "si le résultat ne peut pas être renvoyé avant *timeout* secondes." -#: library/multiprocessing.rst:2239 +#: library/multiprocessing.rst:2241 msgid "" "The same as :meth:`imap` except that the ordering of the results from the " "returned iterator should be considered arbitrary. (Only when there is only " @@ -3387,7 +3394,7 @@ msgstr "" "l'itérateur renvoyé doit être considéré comme arbitraire. (L'ordre n'est " "garanti que quand il n'y a qu'un *worker*.)" -#: library/multiprocessing.rst:2245 +#: library/multiprocessing.rst:2247 msgid "" "Like :meth:`map` except that the elements of the *iterable* are expected to " "be iterables that are unpacked as arguments." @@ -3395,7 +3402,7 @@ msgstr "" "Semblable à :meth:`map` à l'exception que les éléments d'*iterable* doivent " "être des itérables qui seront dépaquetés comme arguments pour la fonction." -#: library/multiprocessing.rst:2248 +#: library/multiprocessing.rst:2250 msgid "" "Hence an *iterable* of ``[(1,2), (3, 4)]`` results in ``[func(1,2), " "func(3,4)]``." @@ -3403,7 +3410,7 @@ msgstr "" "Par conséquent un *iterable* ``[(1,2), (3, 4)]`` donnera pour résultat " "``[func(1,2), func(3,4)]``." -#: library/multiprocessing.rst:2255 +#: library/multiprocessing.rst:2257 msgid "" "A combination of :meth:`starmap` and :meth:`map_async` that iterates over " "*iterable* of iterables and calls *func* with the iterables unpacked. " @@ -3413,7 +3420,7 @@ msgstr "" "*iterable* (composé d'itérables) et appelle *func* pour chaque itérable " "dépaqueté. Renvoie l'objet résultat." -#: library/multiprocessing.rst:2263 +#: library/multiprocessing.rst:2265 msgid "" "Prevents any more tasks from being submitted to the pool. Once all the " "tasks have been completed the worker processes will exit." @@ -3421,7 +3428,7 @@ msgstr "" "Empêche de nouvelles tâches d'être envoyées à la *pool*. Les processus " "*workers* se terminent une fois que toutes les tâches ont été complétées." -#: library/multiprocessing.rst:2268 +#: library/multiprocessing.rst:2270 msgid "" "Stops the worker processes immediately without completing outstanding work. " "When the pool object is garbage collected :meth:`terminate` will be called " @@ -3431,7 +3438,7 @@ msgstr "" "courants. Quand l'objet *pool* est collecté par le ramasse-miettes, sa " "méthode :meth:`terminate` est appelée immédiatement." -#: library/multiprocessing.rst:2274 +#: library/multiprocessing.rst:2276 msgid "" "Wait for the worker processes to exit. One must call :meth:`close` or :meth:" "`terminate` before using :meth:`join`." @@ -3439,7 +3446,7 @@ msgstr "" "Attend que les processus *workers* se terminent. Il est nécessaire " "d'appeler :meth:`close` ou :meth:`terminate` avant d'utiliser :meth:`join`." -#: library/multiprocessing.rst:2277 +#: library/multiprocessing.rst:2279 msgid "" "Pool objects now support the context management protocol -- see :ref:" "`typecontextmanager`. :meth:`~contextmanager.__enter__` returns the pool " @@ -3450,7 +3457,7 @@ msgstr "" "__enter__` renvoie l'objet *pool* et :meth:`~contextmanager.__exit__` " "appelle :meth:`terminate`." -#: library/multiprocessing.rst:2285 +#: library/multiprocessing.rst:2287 msgid "" "The class of the result returned by :meth:`Pool.apply_async` and :meth:`Pool." "map_async`." @@ -3458,7 +3465,7 @@ msgstr "" "La classe des résultats renvoyés par :meth:`Pool.apply_async` et :meth:`Pool." "map_async`." -#: library/multiprocessing.rst:2290 +#: library/multiprocessing.rst:2292 msgid "" "Return the result when it arrives. If *timeout* is not ``None`` and the " "result does not arrive within *timeout* seconds then :exc:`multiprocessing." @@ -3470,16 +3477,16 @@ msgstr "" "TimeoutError` est levée. Si l'appel distance lève une exception, alors elle " "est relayée par :meth:`get`." -#: library/multiprocessing.rst:2297 +#: library/multiprocessing.rst:2299 msgid "Wait until the result is available or until *timeout* seconds pass." msgstr "" "Attend que le résultat soit disponible ou que *timeout* secondes s'écoulent." -#: library/multiprocessing.rst:2301 +#: library/multiprocessing.rst:2303 msgid "Return whether the call has completed." msgstr "Renvoie ``True`` ou ``False`` suivant si la tâche est accomplie." -#: library/multiprocessing.rst:2305 +#: library/multiprocessing.rst:2307 msgid "" "Return whether the call completed without raising an exception. Will raise :" "exc:`ValueError` if the result is not ready." @@ -3487,7 +3494,7 @@ msgstr "" "Renvoie ``True`` ou ``False`` suivant si la tâche est accomplie sans lever " "d'exception. Lève une :exc:`ValueError` si le résultat n'est pas prêt." -#: library/multiprocessing.rst:2308 +#: library/multiprocessing.rst:2310 msgid "" "If the result is not ready, :exc:`ValueError` is raised instead of :exc:" "`AssertionError`." @@ -3495,16 +3502,16 @@ msgstr "" "Si le résultat n'est pas prêt, une :exc:`ValueError` est levée au lieu " "d'une :exc:`AssertionError` auparavant." -#: library/multiprocessing.rst:2312 +#: library/multiprocessing.rst:2314 msgid "The following example demonstrates the use of a pool::" msgstr "" "Les exemples suivants présentent l'utilisation d'un pool de *workers* ::" -#: library/multiprocessing.rst:2339 +#: library/multiprocessing.rst:2341 msgid "Listeners and Clients" msgstr "Auditeurs et Clients" -#: library/multiprocessing.rst:2344 +#: library/multiprocessing.rst:2346 msgid "" "Usually message passing between processes is done using queues or by using :" "class:`~Connection` objects returned by :func:`~multiprocessing.Pipe`." @@ -3513,7 +3520,7 @@ msgstr "" "utilisant des files ou des objets :class:`~Connection` renvoyés par :func:" "`~multiprocessing.Pipe`." -#: library/multiprocessing.rst:2348 +#: library/multiprocessing.rst:2350 msgid "" "However, the :mod:`multiprocessing.connection` module allows some extra " "flexibility. It basically gives a high level message oriented API for " @@ -3528,7 +3535,7 @@ msgstr "" "utilisant le module :mod:`hmac`, et pour interroger de multiples connexions " "en même temps." -#: library/multiprocessing.rst:2357 +#: library/multiprocessing.rst:2359 msgid "" "Send a randomly generated message to the other end of the connection and " "wait for a reply." @@ -3536,7 +3543,7 @@ msgstr "" "Envoie un message généré aléatoirement à l'autre extrémité de la connexion " "et attend une réponse." -#: library/multiprocessing.rst:2360 +#: library/multiprocessing.rst:2362 msgid "" "If the reply matches the digest of the message using *authkey* as the key " "then a welcome message is sent to the other end of the connection. " @@ -3547,7 +3554,7 @@ msgstr "" "connexion. Autrement, une :exc:`~multiprocessing.AuthenticationError` est " "levée." -#: library/multiprocessing.rst:2366 +#: library/multiprocessing.rst:2368 msgid "" "Receive a message, calculate the digest of the message using *authkey* as " "the key, and then send the digest back." @@ -3555,7 +3562,7 @@ msgstr "" "Reçoit un message, calcule le condensat du message en utilisant la clé " "*authkey*, et envoie le condensat en réponse." -#: library/multiprocessing.rst:2369 +#: library/multiprocessing.rst:2371 msgid "" "If a welcome message is not received, then :exc:`~multiprocessing." "AuthenticationError` is raised." @@ -3563,7 +3570,7 @@ msgstr "" "Si un message de bienvenue n'est pas reçu, une :exc:`~multiprocessing." "AuthenticationError` est levée." -#: library/multiprocessing.rst:2374 +#: library/multiprocessing.rst:2376 msgid "" "Attempt to set up a connection to the listener which is using address " "*address*, returning a :class:`~Connection`." @@ -3571,7 +3578,7 @@ msgstr "" "Essaie d'établir une connexion avec l'auditeur qui utilise l'adresse " "*address*, renvoie une :class:`~Connection`." -#: library/multiprocessing.rst:2377 +#: library/multiprocessing.rst:2379 msgid "" "The type of the connection is determined by *family* argument, but this can " "generally be omitted since it can usually be inferred from the format of " @@ -3581,7 +3588,7 @@ msgstr "" "généralement être omis puisqu'il peut être inféré depuis le format " "d'*address*. (Voir :ref:`multiprocessing-address-formats`)" -#: library/multiprocessing.rst:2381 library/multiprocessing.rst:2416 +#: library/multiprocessing.rst:2383 library/multiprocessing.rst:2418 msgid "" "If *authkey* is given and not None, it should be a byte string and will be " "used as the secret key for an HMAC-based authentication challenge. No " @@ -3595,7 +3602,7 @@ msgstr "" "``None``. Une :exc:`~multiprocessing.AuthenticationError` est levée si " "l'authentification échoue. Voir :ref:`multiprocessing-auth-keys`." -#: library/multiprocessing.rst:2389 +#: library/multiprocessing.rst:2391 msgid "" "A wrapper for a bound socket or Windows named pipe which is 'listening' for " "connections." @@ -3603,7 +3610,7 @@ msgstr "" "Une enveloppe autour d'un connecteur lié ou un tube nommé sous Windows qui " "écoute pour des connexions." -#: library/multiprocessing.rst:2392 +#: library/multiprocessing.rst:2394 msgid "" "*address* is the address to be used by the bound socket or named pipe of the " "listener object." @@ -3611,7 +3618,7 @@ msgstr "" "*address* est l'adresse à utiliser par le connecteur lié ou le tube nommé de " "l'objet auditeur." -#: library/multiprocessing.rst:2397 +#: library/multiprocessing.rst:2399 msgid "" "If an address of '0.0.0.0' is used, the address will not be a connectable " "end point on Windows. If you require a connectable end-point, you should use " @@ -3621,7 +3628,7 @@ msgstr "" "d'accès connectable sous Windows. Si vous avez besoin d'un point d'accès " "connectable, utilisez '127.0.0.1'." -#: library/multiprocessing.rst:2401 +#: library/multiprocessing.rst:2403 msgid "" "*family* is the type of socket (or named pipe) to use. This can be one of " "the strings ``'AF_INET'`` (for a TCP socket), ``'AF_UNIX'`` (for a Unix " @@ -3645,7 +3652,7 @@ msgstr "" "``'AF_UNIX'`` et qu'*address* est ``None``, le connecteur est créé dans un " "répertoire temporaire privé créé avec :func:`tempfile.mkstemp`." -#: library/multiprocessing.rst:2412 +#: library/multiprocessing.rst:2414 msgid "" "If the listener object uses a socket then *backlog* (1 by default) is passed " "to the :meth:`~socket.socket.listen` method of the socket once it has been " @@ -3655,7 +3662,7 @@ msgstr "" "passé à la méthode :meth:`~socket.socket.listen` du connecteur une fois " "qu'il a été lié." -#: library/multiprocessing.rst:2424 +#: library/multiprocessing.rst:2426 msgid "" "Accept a connection on the bound socket or named pipe of the listener object " "and return a :class:`~Connection` object. If authentication is attempted and " @@ -3666,7 +3673,7 @@ msgstr "" "d'authentification échoue, une :exc:`~multiprocessing.AuthenticationError` " "est levée." -#: library/multiprocessing.rst:2431 +#: library/multiprocessing.rst:2433 msgid "" "Close the bound socket or named pipe of the listener object. This is called " "automatically when the listener is garbage collected. However it is " @@ -3676,16 +3683,16 @@ msgstr "" "appelée automatiquement quand l'auditeur est collecté par le ramasse-" "miettes. Il est cependant conseillé de l'appeler explicitement." -#: library/multiprocessing.rst:2435 +#: library/multiprocessing.rst:2437 msgid "Listener objects have the following read-only properties:" msgstr "" "Les objets auditeurs ont aussi les propriétés en lecture seule suivantes :" -#: library/multiprocessing.rst:2439 +#: library/multiprocessing.rst:2441 msgid "The address which is being used by the Listener object." msgstr "L'adresse utilisée par l'objet auditeur." -#: library/multiprocessing.rst:2443 +#: library/multiprocessing.rst:2445 msgid "" "The address from which the last accepted connection came. If this is " "unavailable then it is ``None``." @@ -3693,7 +3700,7 @@ msgstr "" "L'adresse depuis laquelle a été établie la dernière connexion. ``None`` si " "aucune n'est disponible." -#: library/multiprocessing.rst:2446 +#: library/multiprocessing.rst:2448 msgid "" "Listener objects now support the context management protocol -- see :ref:" "`typecontextmanager`. :meth:`~contextmanager.__enter__` returns the " @@ -3704,7 +3711,7 @@ msgstr "" "renvoie l'objet auditeur, et :meth:`~contextmanager.__exit__` appelle :meth:" "`close`." -#: library/multiprocessing.rst:2453 +#: library/multiprocessing.rst:2455 msgid "" "Wait till an object in *object_list* is ready. Returns the list of those " "objects in *object_list* which are ready. If *timeout* is a float then the " @@ -3718,23 +3725,23 @@ msgstr "" "l'appelle bloquera pour une durée non limitée. Un *timeout* négatif est " "équivalent à un *timeout* nul." -#: library/multiprocessing.rst:2459 +#: library/multiprocessing.rst:2461 msgid "" "For both Unix and Windows, an object can appear in *object_list* if it is" msgstr "" "Pour Unix et Windows, un objet peut apparaître dans *object_list* s'il est" -#: library/multiprocessing.rst:2462 +#: library/multiprocessing.rst:2464 msgid "a readable :class:`~multiprocessing.connection.Connection` object;" msgstr "" "un objet :class:`~multiprocessing.connection.Connection` accessible en " "lecture ;" -#: library/multiprocessing.rst:2463 +#: library/multiprocessing.rst:2465 msgid "a connected and readable :class:`socket.socket` object; or" msgstr "un objet :class:`socket.socket` connecté et accessible en lecture ; ou" -#: library/multiprocessing.rst:2464 +#: library/multiprocessing.rst:2466 msgid "" "the :attr:`~multiprocessing.Process.sentinel` attribute of a :class:" "`~multiprocessing.Process` object." @@ -3742,7 +3749,7 @@ msgstr "" "l'attribut :attr:`~multiprocessing.Process.sentinel` d'un objet :class:" "`~multiprocessing.Process`." -#: library/multiprocessing.rst:2467 +#: library/multiprocessing.rst:2469 msgid "" "A connection or socket object is ready when there is data available to be " "read from it, or the other end has been closed." @@ -3750,7 +3757,7 @@ msgstr "" "Une connexion (*socket* en anglais) est prête quand il y a des données " "disponibles en lecture dessus, ou que l'autre extrémité a été fermée." -#: library/multiprocessing.rst:2470 +#: library/multiprocessing.rst:2472 msgid "" "**Unix**: ``wait(object_list, timeout)`` almost equivalent ``select." "select(object_list, [], [], timeout)``. The difference is that, if :func:" @@ -3763,7 +3770,7 @@ msgstr "" "`OSError` avec un numéro d'erreur ``EINTR``, alors que :func:`wait` ne le " "fera pas." -#: library/multiprocessing.rst:2476 +#: library/multiprocessing.rst:2478 msgid "" "**Windows**: An item in *object_list* must either be an integer handle which " "is waitable (according to the definition used by the documentation of the " @@ -3778,11 +3785,11 @@ msgstr "" "(notez que les identifiants de tubes et de connecteurs **ne sont pas** des " "identifiants *waitables*)." -#: library/multiprocessing.rst:2486 +#: library/multiprocessing.rst:2488 msgid "**Examples**" msgstr "**Exemples**" -#: library/multiprocessing.rst:2488 +#: library/multiprocessing.rst:2490 msgid "" "The following server code creates a listener which uses ``'secret " "password'`` as an authentication key. It then waits for a connection and " @@ -3792,13 +3799,13 @@ msgstr "" "comme clé d'authentification. Il attend ensuite une connexion et envoie les " "données au client ::" -#: library/multiprocessing.rst:2507 +#: library/multiprocessing.rst:2509 msgid "" "The following code connects to the server and receives some data from the " "server::" msgstr "Le code suivant se connecte au serveur et en reçoit des données ::" -#: library/multiprocessing.rst:2524 +#: library/multiprocessing.rst:2526 msgid "" "The following code uses :func:`~multiprocessing.connection.wait` to wait for " "messages from multiple processes at once::" @@ -3806,11 +3813,11 @@ msgstr "" "Le code suivant utilise :func:`~multiprocessing.connection.wait` pour " "attendre des messages depuis plusieurs processus à la fois ::" -#: library/multiprocessing.rst:2563 +#: library/multiprocessing.rst:2565 msgid "Address Formats" msgstr "Formats d'adresses" -#: library/multiprocessing.rst:2565 +#: library/multiprocessing.rst:2567 msgid "" "An ``'AF_INET'`` address is a tuple of the form ``(hostname, port)`` where " "*hostname* is a string and *port* is an integer." @@ -3818,7 +3825,7 @@ msgstr "" "une adresse ``'AF_INET'`` est une paire de la forme ``(hostname, port)`` où " "*hostname* est une chaîne et *port* un entier ;" -#: library/multiprocessing.rst:2568 +#: library/multiprocessing.rst:2570 msgid "" "An ``'AF_UNIX'`` address is a string representing a filename on the " "filesystem." @@ -3826,7 +3833,7 @@ msgstr "" "une adresse ``'AF_UNIX'`` est une chaîne représentant un nom de fichier sur " "le système de fichiers ;" -#: library/multiprocessing.rst:2571 +#: library/multiprocessing.rst:2573 msgid "" "An ``'AF_PIPE'`` address is a string of the form :samp:`r'\\\\\\\\.\\\\pipe\\" "\\{PipeName}'`. To use :func:`Client` to connect to a named pipe on a " @@ -3839,7 +3846,7 @@ msgstr "" "il faut utiliser une adresse de la forme :samp:`r'\\\\\\\\{NomDeLaMachine}\\" "\\pipe\\\\{NomDuTube}'`." -#: library/multiprocessing.rst:2576 +#: library/multiprocessing.rst:2578 msgid "" "Note that any string beginning with two backslashes is assumed by default to " "be an ``'AF_PIPE'`` address rather than an ``'AF_UNIX'`` address." @@ -3848,11 +3855,11 @@ msgstr "" "défaut comme l'adresse d'un ``'AF_PIPE'`` plutôt qu'une adresse " "``'AF_UNIX'``." -#: library/multiprocessing.rst:2583 +#: library/multiprocessing.rst:2585 msgid "Authentication keys" msgstr "Clés d'authentification" -#: library/multiprocessing.rst:2585 +#: library/multiprocessing.rst:2587 msgid "" "When one uses :meth:`Connection.recv `, the data received " "is automatically unpickled. Unfortunately unpickling data from an untrusted " @@ -3865,7 +3872,7 @@ msgstr "" "sécurité. Par conséquent :class:`Listener` et :func:`Client` utilisent le " "module :mod:`hmac` pour fournir une authentification par condensat." -#: library/multiprocessing.rst:2591 +#: library/multiprocessing.rst:2593 msgid "" "An authentication key is a byte string which can be thought of as a " "password: once a connection is established both ends will demand proof that " @@ -3878,7 +3885,7 @@ msgstr "" "(Démontrer que les deux utilisent la même clé n'implique **pas** d'échanger " "la clé sur la connexion.)" -#: library/multiprocessing.rst:2597 +#: library/multiprocessing.rst:2599 msgid "" "If authentication is requested but no authentication key is specified then " "the return value of ``current_process().authkey`` is used (see :class:" @@ -3896,7 +3903,7 @@ msgstr "" "processus partageront une clé d'authentification unique qui peut être " "utilisée pour mettre en place des connexions entre-eux." -#: library/multiprocessing.rst:2605 +#: library/multiprocessing.rst:2607 msgid "" "Suitable authentication keys can also be generated by using :func:`os." "urandom`." @@ -3904,11 +3911,11 @@ msgstr "" "Des clés d'authentification adaptées peuvent aussi être générées par :func:" "`os.urandom`." -#: library/multiprocessing.rst:2609 +#: library/multiprocessing.rst:2611 msgid "Logging" msgstr "Journalisation" -#: library/multiprocessing.rst:2611 +#: library/multiprocessing.rst:2613 msgid "" "Some support for logging is available. Note, however, that the :mod:" "`logging` package does not use process shared locks so it is possible " @@ -3920,7 +3927,7 @@ msgstr "" "processus et il est donc possible (dépendant du type de gestionnaire) que " "les messages de différents processus soient mélangés." -#: library/multiprocessing.rst:2618 +#: library/multiprocessing.rst:2620 msgid "" "Returns the logger used by :mod:`multiprocessing`. If necessary, a new one " "will be created." @@ -3928,7 +3935,7 @@ msgstr "" "Renvoie le journaliseur utilisé par :mod:`multiprocessing`. Si nécessaire, " "un nouveau sera créé." -#: library/multiprocessing.rst:2621 +#: library/multiprocessing.rst:2623 msgid "" "When first created the logger has level :data:`logging.NOTSET` and no " "default handler. Messages sent to this logger will not by default propagate " @@ -3938,7 +3945,7 @@ msgstr "" "et pas de gestionnaire par défaut. Les messages envoyés à ce journaliseur ne " "seront pas propagés par défaut au journaliseur principal." -#: library/multiprocessing.rst:2625 +#: library/multiprocessing.rst:2627 msgid "" "Note that on Windows child processes will only inherit the level of the " "parent process's logger -- any other customization of the logger will not be " @@ -3948,7 +3955,7 @@ msgstr "" "journaliseur du processus parent – toute autre personnalisation du " "journaliseur ne sera pas héritée." -#: library/multiprocessing.rst:2632 +#: library/multiprocessing.rst:2634 msgid "" "This function performs a call to :func:`get_logger` but in addition to " "returning the logger created by get_logger, it adds a handler which sends " @@ -3960,22 +3967,22 @@ msgstr "" "qui envoie la sortie sur :data:`sys.stderr` en utilisant le format " "``'[%(levelname)s/%(processName)s] %(message)s'``." -#: library/multiprocessing.rst:2637 +#: library/multiprocessing.rst:2639 msgid "Below is an example session with logging turned on::" msgstr "" "L'exemple ci-dessous présente une session avec la journalisation activée ::" -#: library/multiprocessing.rst:2652 +#: library/multiprocessing.rst:2654 msgid "For a full table of logging levels, see the :mod:`logging` module." msgstr "" "Pour un tableau complet des niveaux de journalisation, voir le module :mod:" "`logging`." -#: library/multiprocessing.rst:2656 +#: library/multiprocessing.rst:2658 msgid "The :mod:`multiprocessing.dummy` module" msgstr "Le module :mod:`multiprocessing.dummy`" -#: library/multiprocessing.rst:2661 +#: library/multiprocessing.rst:2663 msgid "" ":mod:`multiprocessing.dummy` replicates the API of :mod:`multiprocessing` " "but is no more than a wrapper around the :mod:`threading` module." @@ -3983,7 +3990,7 @@ msgstr "" ":mod:`multiprocessing.dummy` réplique toute l'API de :mod:`multiprocessing` " "mais n'est rien de plus qu'une interface autour du module :mod:`threading`." -#: library/multiprocessing.rst:2666 +#: library/multiprocessing.rst:2668 msgid "" "In particular, the ``Pool`` function provided by :mod:`multiprocessing." "dummy` returns an instance of :class:`ThreadPool`, which is a subclass of :" @@ -3995,7 +4002,7 @@ msgstr "" "class:`Pool`. Elle a la même interface, mais elle utilise un pool de fils " "d'exécution plutôt qu'un pool de processus." -#: library/multiprocessing.rst:2674 +#: library/multiprocessing.rst:2676 msgid "" "A thread pool object which controls a pool of worker threads to which jobs " "can be submitted. :class:`ThreadPool` instances are fully interface " @@ -4011,7 +4018,7 @@ msgstr "" "avec un contexte, soit en appelant explicitement :meth:`~multiprocessing." "pool.Pool.close` et :meth:`~multiprocessing.pool.Pool.terminate`." -#: library/multiprocessing.rst:2681 +#: library/multiprocessing.rst:2683 msgid "" "*processes* is the number of worker threads to use. If *processes* is " "``None`` then the number returned by :func:`os.cpu_count` is used." @@ -4019,14 +4026,14 @@ msgstr "" "*processes* est le nombre de fils d'exécution à utiliser. Si *processes* est " "``None``, le nombre renvoyé par :func:`os.cpu_count` est utilisé." -#: library/multiprocessing.rst:2687 +#: library/multiprocessing.rst:2689 msgid "" "Unlike :class:`Pool`, *maxtasksperchild* and *context* cannot be provided." msgstr "" "À la différence de :class:`Pool`, *maxtasksperchild* et *context* ne peuvent " "pas être passés en arguments." -#: library/multiprocessing.rst:2691 +#: library/multiprocessing.rst:2693 msgid "" "A :class:`ThreadPool` shares the same interface as :class:`Pool`, which is " "designed around a pool of processes and predates the introduction of the :" @@ -4043,7 +4050,7 @@ msgstr "" "représenter le statut de tâches asynchrones, :class:`AsyncResult`, qui n'est " "pas géré par les autres modules." -#: library/multiprocessing.rst:2698 +#: library/multiprocessing.rst:2700 msgid "" "Users should generally prefer to use :class:`concurrent.futures." "ThreadPoolExecutor`, which has a simpler interface that was designed around " @@ -4057,11 +4064,11 @@ msgstr "" "`concurrent.futures.Future` qui sont compatibles avec de nombreux modules, " "dont :mod:`asyncio`." -#: library/multiprocessing.rst:2708 +#: library/multiprocessing.rst:2710 msgid "Programming guidelines" msgstr "Lignes directrices de programmation" -#: library/multiprocessing.rst:2710 +#: library/multiprocessing.rst:2712 msgid "" "There are certain guidelines and idioms which should be adhered to when " "using :mod:`multiprocessing`." @@ -4069,19 +4076,19 @@ msgstr "" "Il y a certaines lignes directrices et idiomes à respecter pour utiliser :" "mod:`multiprocessing`." -#: library/multiprocessing.rst:2715 +#: library/multiprocessing.rst:2717 msgid "All start methods" msgstr "Toutes les méthodes de démarrage" -#: library/multiprocessing.rst:2717 +#: library/multiprocessing.rst:2719 msgid "The following applies to all start methods." msgstr "Les règles suivantes s'appliquent aux méthodes de démarrage." -#: library/multiprocessing.rst:2719 +#: library/multiprocessing.rst:2721 msgid "Avoid shared state" msgstr "Éviter les états partagés" -#: library/multiprocessing.rst:2721 +#: library/multiprocessing.rst:2723 msgid "" "As far as possible one should try to avoid shifting large amounts of data " "between processes." @@ -4089,7 +4096,7 @@ msgstr "" "Autant que possible, il faut éviter de transférer de gros volumes de données " "entre les processus." -#: library/multiprocessing.rst:2724 +#: library/multiprocessing.rst:2726 msgid "" "It is probably best to stick to using queues or pipes for communication " "between processes rather than using the lower level synchronization " @@ -4099,21 +4106,21 @@ msgstr "" "pour gérer la communication entre processus plutôt que d'utiliser des " "primitives de synchronisation plus bas-niveau." -#: library/multiprocessing.rst:2728 +#: library/multiprocessing.rst:2730 msgid "Picklability" msgstr "Sérialisation" -#: library/multiprocessing.rst:2730 +#: library/multiprocessing.rst:2732 msgid "Ensure that the arguments to the methods of proxies are picklable." msgstr "" "Assurez-vous que les arguments passés aux méthodes des mandataires soient " "sérialisables (*pickables*)." -#: library/multiprocessing.rst:2732 +#: library/multiprocessing.rst:2734 msgid "Thread safety of proxies" msgstr "Sûreté des mandataires à travers les fils d'exécution" -#: library/multiprocessing.rst:2734 +#: library/multiprocessing.rst:2736 msgid "" "Do not use a proxy object from more than one thread unless you protect it " "with a lock." @@ -4121,18 +4128,18 @@ msgstr "" "N'utilisez pas d'objet mandataire depuis plus d'un fil d'exécution à moins " "que vous ne le protégiez avec un verrou." -#: library/multiprocessing.rst:2737 +#: library/multiprocessing.rst:2739 msgid "" "(There is never a problem with different processes using the *same* proxy.)" msgstr "" "Il n'y a jamais de problème à avoir plusieurs processus qui utilisent un " "*même* mandataire." -#: library/multiprocessing.rst:2739 +#: library/multiprocessing.rst:2741 msgid "Joining zombie processes" msgstr "Attendre les processus zombies" -#: library/multiprocessing.rst:2741 +#: library/multiprocessing.rst:2743 msgid "" "On Unix when a process finishes but has not been joined it becomes a zombie. " "There should never be very many because each time a new process starts (or :" @@ -4151,11 +4158,11 @@ msgstr "" "processus. Toutefois, il est, en règle générale, conseillé d'attendre " "explicitement tous les processus que vous démarrez." -#: library/multiprocessing.rst:2749 +#: library/multiprocessing.rst:2751 msgid "Better to inherit than pickle/unpickle" msgstr "Mieux vaut hériter que sérialiser - désérialiser" -#: library/multiprocessing.rst:2751 +#: library/multiprocessing.rst:2753 msgid "" "When using the *spawn* or *forkserver* start methods many types from :mod:" "`multiprocessing` need to be picklable so that child processes can use " @@ -4172,11 +4179,11 @@ msgstr "" "processus qui nécessite l'accès à une ressource partagée créée autre part " "qu'il en hérite depuis un de ses processus ancêtres." -#: library/multiprocessing.rst:2759 +#: library/multiprocessing.rst:2761 msgid "Avoid terminating processes" msgstr "Éviter de terminer les processus" -#: library/multiprocessing.rst:2761 +#: library/multiprocessing.rst:2763 msgid "" "Using the :meth:`Process.terminate ` " "method to stop a process is liable to cause any shared resources (such as " @@ -4188,7 +4195,7 @@ msgstr "" "indisponible aux autres processus des ressources partagées (comme des " "verrous, sémaphores, tubes et files) actuellement utilisées par le processus." -#: library/multiprocessing.rst:2767 +#: library/multiprocessing.rst:2769 msgid "" "Therefore it is probably best to only consider using :meth:`Process." "terminate ` on processes which never use " @@ -4198,11 +4205,11 @@ msgstr "" "` que sur les processus qui n'utilisent " "jamais de ressources partagées." -#: library/multiprocessing.rst:2771 +#: library/multiprocessing.rst:2773 msgid "Joining processes that use queues" msgstr "Attendre les processus qui utilisent des files" -#: library/multiprocessing.rst:2773 +#: library/multiprocessing.rst:2775 msgid "" "Bear in mind that a process that has put items in a queue will wait before " "terminating until all the buffered items are fed by the \"feeder\" thread to " @@ -4217,7 +4224,7 @@ msgstr "" "` de la queue pour éviter ce " "comportement)." -#: library/multiprocessing.rst:2779 +#: library/multiprocessing.rst:2781 msgid "" "This means that whenever you use a queue you need to make sure that all " "items which have been put on the queue will eventually be removed before the " @@ -4232,11 +4239,11 @@ msgstr "" "termineront. Souvenez-vous aussi que tous les processus non *daemons* sont " "attendus automatiquement." -#: library/multiprocessing.rst:2785 +#: library/multiprocessing.rst:2787 msgid "An example which will deadlock is the following::" msgstr "L'exemple suivant provoque un interblocage ::" -#: library/multiprocessing.rst:2799 +#: library/multiprocessing.rst:2801 msgid "" "A fix here would be to swap the last two lines (or simply remove the ``p." "join()`` line)." @@ -4244,11 +4251,11 @@ msgstr "" "Une solution ici consiste à intervertir les deux dernières lignes (ou " "simplement à supprimer la ligne ``p.join()``)." -#: library/multiprocessing.rst:2802 +#: library/multiprocessing.rst:2804 msgid "Explicitly pass resources to child processes" msgstr "Passer explicitement les ressources aux processus fils" -#: library/multiprocessing.rst:2804 +#: library/multiprocessing.rst:2806 msgid "" "On Unix using the *fork* start method, a child process can make use of a " "shared resource created in a parent process using a global resource. " @@ -4260,7 +4267,7 @@ msgstr "" "utilisant une ressource globale. Cependant, il est préférable de passer " "l'objet en argument au constructeur du processus fils." -#: library/multiprocessing.rst:2809 +#: library/multiprocessing.rst:2811 msgid "" "Apart from making the code (potentially) compatible with Windows and the " "other start methods this also ensures that as long as the child process is " @@ -4275,24 +4282,24 @@ msgstr "" "libérées quand l'objet est collecté par le ramasse-miettes du processus " "parent." -#: library/multiprocessing.rst:2816 +#: library/multiprocessing.rst:2818 msgid "So for instance ::" msgstr "Donc par exemple ::" -#: library/multiprocessing.rst:2828 +#: library/multiprocessing.rst:2830 msgid "should be rewritten as ::" msgstr "devrait être réécrit comme ::" -#: library/multiprocessing.rst:2840 +#: library/multiprocessing.rst:2842 msgid "Beware of replacing :data:`sys.stdin` with a \"file like object\"" msgstr "" "Faire attention à remplacer :data:`sys.stdin` par un objet simili-fichier" -#: library/multiprocessing.rst:2842 +#: library/multiprocessing.rst:2844 msgid ":mod:`multiprocessing` originally unconditionally called::" msgstr "À l'origine, :mod:`multiprocessing` appelait inconditionnellement ::" -#: library/multiprocessing.rst:2846 +#: library/multiprocessing.rst:2848 msgid "" "in the :meth:`multiprocessing.Process._bootstrap` method --- this resulted " "in issues with processes-in-processes. This has been changed to::" @@ -4300,7 +4307,7 @@ msgstr "" "dans la méthode :meth:`multiprocessing.Process._bootstrap` — cela provoquait " "des problèmes avec les processus imbriqués. Cela peut être changé en ::" -#: library/multiprocessing.rst:2852 +#: library/multiprocessing.rst:2854 msgid "" "Which solves the fundamental issue of processes colliding with each other " "resulting in a bad file descriptor error, but introduces a potential danger " @@ -4317,7 +4324,7 @@ msgstr "" "peut amener les données à être transmises à l'objet à plusieurs reprises, " "résultant en une corruption." -#: library/multiprocessing.rst:2859 +#: library/multiprocessing.rst:2861 msgid "" "If you write a file-like object and implement your own caching, you can make " "it fork-safe by storing the pid whenever you append to the cache, and " @@ -4328,28 +4335,28 @@ msgstr "" "que vous ajoutez des données au cache, et annulez le cache quand le *pid* " "change. Par exemple ::" -#: library/multiprocessing.rst:2871 +#: library/multiprocessing.rst:2873 msgid "" "For more information, see :issue:`5155`, :issue:`5313` and :issue:`5331`" msgstr "" "Pour plus d'informations, voir :issue:`5155`, :issue:`5313` et :issue:`5331`" -#: library/multiprocessing.rst:2874 +#: library/multiprocessing.rst:2876 msgid "The *spawn* and *forkserver* start methods" msgstr "Les méthodes de démarrage *spawn* et *forkserver*" -#: library/multiprocessing.rst:2876 +#: library/multiprocessing.rst:2878 msgid "" "There are a few extra restriction which don't apply to the *fork* start " "method." msgstr "" "Certaines restrictions ne s'appliquent pas à la méthode de démarrage *fork*." -#: library/multiprocessing.rst:2879 +#: library/multiprocessing.rst:2881 msgid "More picklability" msgstr "Contraintes supplémentaires sur la sérialisation" -#: library/multiprocessing.rst:2881 +#: library/multiprocessing.rst:2883 msgid "" "Ensure that all arguments to :meth:`Process.__init__` are picklable. Also, " "if you subclass :class:`~multiprocessing.Process` then make sure that " @@ -4362,11 +4369,11 @@ msgstr "" "sérialisables quand la méthode :meth:`Process.start ` est appelée." -#: library/multiprocessing.rst:2886 +#: library/multiprocessing.rst:2888 msgid "Global variables" msgstr "Variables globales" -#: library/multiprocessing.rst:2888 +#: library/multiprocessing.rst:2890 msgid "" "Bear in mind that if code run in a child process tries to access a global " "variable, then the value it sees (if any) may not be the same as the value " @@ -4379,7 +4386,7 @@ msgstr "" "moment même où :meth:`Process.start ` est " "appelée." -#: library/multiprocessing.rst:2893 +#: library/multiprocessing.rst:2895 msgid "" "However, global variables which are just module level constants cause no " "problems." @@ -4387,11 +4394,11 @@ msgstr "" "Cependant, les variables globales qui sont juste des constantes de modules " "ne posent pas de problèmes." -#: library/multiprocessing.rst:2896 +#: library/multiprocessing.rst:2898 msgid "Safe importing of main module" msgstr "Importation sécurisée du module principal" -#: library/multiprocessing.rst:2898 +#: library/multiprocessing.rst:2900 msgid "" "Make sure that the main module can be safely imported by a new Python " "interpreter without causing unintended side effects (such a starting a new " @@ -4401,7 +4408,7 @@ msgstr "" "un nouvel interpréteur Python sans causer d'effets de bord inattendus (comme " "le démarrage d'un nouveau processus)." -#: library/multiprocessing.rst:2902 +#: library/multiprocessing.rst:2904 msgid "" "For example, using the *spawn* or *forkserver* start method running the " "following module would fail with a :exc:`RuntimeError`::" @@ -4409,7 +4416,7 @@ msgstr "" "Par exemple, utiliser la méthode de démarrage *spawn* ou *forkserver* pour " "lancer le module suivant échouerait avec une :exc:`RuntimeError` ::" -#: library/multiprocessing.rst:2914 +#: library/multiprocessing.rst:2916 msgid "" "Instead one should protect the \"entry point\" of the program by using ``if " "__name__ == '__main__':`` as follows::" @@ -4417,7 +4424,7 @@ msgstr "" "Vous devriez plutôt protéger le « point d'entrée » du programme en utilisant " "``if __name__ == '__main__':`` comme suit ::" -#: library/multiprocessing.rst:2928 +#: library/multiprocessing.rst:2930 msgid "" "(The ``freeze_support()`` line can be omitted if the program will be run " "normally instead of frozen.)" @@ -4425,7 +4432,7 @@ msgstr "" "(La ligne ``freeze_support()`` peut être omise si le programme est " "uniquement lancé normalement et pas figé.)" -#: library/multiprocessing.rst:2931 +#: library/multiprocessing.rst:2933 msgid "" "This allows the newly spawned Python interpreter to safely import the module " "and then run the module's ``foo()`` function." @@ -4433,7 +4440,7 @@ msgstr "" "Cela permet aux interpréteurs Python fraîchement instanciés d'importer en " "toute sécurité le module et d'exécution ensuite la fonction ``foo()``." -#: library/multiprocessing.rst:2934 +#: library/multiprocessing.rst:2936 msgid "" "Similar restrictions apply if a pool or manager is created in the main " "module." @@ -4441,21 +4448,21 @@ msgstr "" "Des restrictions similaires s'appliquent si un pool ou un gestionnaire est " "créé dans le module principal." -#: library/multiprocessing.rst:2941 +#: library/multiprocessing.rst:2943 msgid "Examples" msgstr "Exemples" -#: library/multiprocessing.rst:2943 +#: library/multiprocessing.rst:2945 msgid "Demonstration of how to create and use customized managers and proxies:" msgstr "" "Démonstration de comment créer et utiliser des gestionnaires et mandataires " "personnalisés :" -#: library/multiprocessing.rst:2949 +#: library/multiprocessing.rst:2951 msgid "Using :class:`~multiprocessing.pool.Pool`:" msgstr "En utilisant :class:`~multiprocessing.pool.Pool` :" -#: library/multiprocessing.rst:2955 +#: library/multiprocessing.rst:2957 msgid "" "An example showing how to use queues to feed tasks to a collection of worker " "processes and collect the results:" @@ -4463,5 +4470,8 @@ msgstr "" "Un exemple montrant comment utiliser des files pour alimenter en tâches une " "collection de processus *workers* et collecter les résultats :" +#~ msgid "May raise :exc:`NotImplementedError`." +#~ msgstr "Peut lever une :exc:`NotImplementedError`." + #~ msgid "An ``'AF_PIPE'`` address is a string of the form" #~ msgstr "Une adresse ``'AF_PIPE'`` est une chaîne de la forme" diff --git a/library/netdata.po b/library/netdata.po index d59ba5f64..e082df896 100644 --- a/library/netdata.po +++ b/library/netdata.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2017-09-24 22:55+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -19,9 +19,10 @@ msgid "Internet Data Handling" msgstr "Traitement des données provenant d'Internet" #: library/netdata.rst:8 +#, fuzzy msgid "" "This chapter describes modules which support handling data formats commonly " -"used on the Internet." +"used on the internet." msgstr "" "Ce chapitre décrit les modules qui prennent en charge le traitement des " "formats de données couramment utilisés sur Internet." diff --git a/library/netrc.po b/library/netrc.po index de1897dc3..9810e48bc 100644 --- a/library/netrc.po +++ b/library/netrc.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-12-05 21:32+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -75,7 +75,12 @@ msgstr "" ":func:`os.path.expanduser` est utilisée pour trouver l'emplacement du " "fichier :file:`netrc` lorsque *file* n'est pas passé en tant qu'argument." -#: library/netrc.rst:44 +#: library/netrc.rst:41 +msgid "" +":class:`netrc` try UTF-8 encoding before using locale specific encoding." +msgstr "" + +#: library/netrc.rst:48 msgid "" "Exception raised by the :class:`~netrc.netrc` class when syntactical errors " "are encountered in source text. Instances of this exception provide three " @@ -90,15 +95,15 @@ msgstr "" "source et :attr:`lineno` donne le numéro de la ligne sur laquelle l'erreur a " "été trouvée." -#: library/netrc.rst:54 +#: library/netrc.rst:58 msgid "netrc Objects" msgstr "Objets *netrc*" -#: library/netrc.rst:56 +#: library/netrc.rst:60 msgid "A :class:`~netrc.netrc` instance has the following methods:" msgstr "Une instance :class:`~netrc.netrc` a les méthodes suivantes :" -#: library/netrc.rst:61 +#: library/netrc.rst:65 msgid "" "Return a 3-tuple ``(login, account, password)`` of authenticators for " "*host*. If the netrc file did not contain an entry for the given host, " @@ -110,7 +115,7 @@ msgstr "" "donné, renvoie le triplet associé à l'entrée par défaut. Si aucun hôte " "correspondant ni aucune entrée par défaut n'est disponible, renvoie ``None``." -#: library/netrc.rst:69 +#: library/netrc.rst:73 msgid "" "Dump the class data as a string in the format of a netrc file. (This " "discards comments and may reorder the entries.)" @@ -119,13 +124,13 @@ msgstr "" "fichier *netrc*. (Ceci ignore les commentaires et peut réorganiser les " "entrées)." -#: library/netrc.rst:72 +#: library/netrc.rst:76 msgid "Instances of :class:`~netrc.netrc` have public instance variables:" msgstr "" "Les instances de :class:`~netrc.netrc` ont des variables d'instance " "publiques :" -#: library/netrc.rst:77 +#: library/netrc.rst:81 msgid "" "Dictionary mapping host names to ``(login, account, password)`` tuples. The " "'default' entry, if any, is represented as a pseudo-host by that name." @@ -134,12 +139,12 @@ msgstr "" "``(login, account, password)``. L'entrée par défaut, le cas échéant, est " "représentée en tant que pseudo-hôte par ce nom." -#: library/netrc.rst:83 +#: library/netrc.rst:87 msgid "Dictionary mapping macro names to string lists." msgstr "" "Dictionnaire faisant correspondre les noms de macro en listes de chaînes." -#: library/netrc.rst:87 +#: library/netrc.rst:91 msgid "" "Passwords are limited to a subset of the ASCII character set. All ASCII " "punctuation is allowed in passwords, however, note that whitespace and non-" diff --git a/library/operator.po b/library/operator.po index b782cff9e..76ac4b722 100644 --- a/library/operator.po +++ b/library/operator.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-12-11 22:46+0100\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -139,53 +139,59 @@ msgstr "Renvoie ``a // b``." msgid "Return *a* converted to an integer. Equivalent to ``a.__index__()``." msgstr "Renvoie *a* converti en entier. Équivaut à ``a.__index__()``." -#: library/operator.rst:121 +#: library/operator.rst:115 +msgid "" +"The result always has exact type :class:`int`. Previously, the result could " +"have been an instance of a subclass of ``int``." +msgstr "" + +#: library/operator.rst:125 msgid "" "Return the bitwise inverse of the number *obj*. This is equivalent to " "``~obj``." msgstr "Renvoie l'inverse bit à bit du nombre *obj*. Équivaut à ``~obj``." -#: library/operator.rst:127 +#: library/operator.rst:131 msgid "Return *a* shifted left by *b*." msgstr "Renvoie le décalage de *b* bits vers la gauche de *a*." -#: library/operator.rst:133 +#: library/operator.rst:137 msgid "Return ``a % b``." msgstr "Renvoie``a % b``." -#: library/operator.rst:139 +#: library/operator.rst:143 msgid "Return ``a * b``, for *a* and *b* numbers." msgstr "Renvoie ``a * b`` où *a* et *b* sont des nombres." -#: library/operator.rst:145 +#: library/operator.rst:149 msgid "Return ``a @ b``." msgstr "Renvoie ``a @ b``." -#: library/operator.rst:153 +#: library/operator.rst:157 msgid "Return *obj* negated (``-obj``)." msgstr "Renvoie l'opposé de *obj* (``-obj``)." -#: library/operator.rst:159 +#: library/operator.rst:163 msgid "Return the bitwise or of *a* and *b*." msgstr "Renvoie le *ou* bit à bit de *a* et *b*." -#: library/operator.rst:165 +#: library/operator.rst:169 msgid "Return *obj* positive (``+obj``)." msgstr "Renvoie la valeur positive de *obj* (``+obj``)." -#: library/operator.rst:171 +#: library/operator.rst:175 msgid "Return ``a ** b``, for *a* and *b* numbers." msgstr "Renvoie ``a ** b`` où *a* et *b* sont des nombres." -#: library/operator.rst:177 +#: library/operator.rst:181 msgid "Return *a* shifted right by *b*." msgstr "Renvoie le décalage de *b* bits vers la droite de *a*." -#: library/operator.rst:183 +#: library/operator.rst:187 msgid "Return ``a - b``." msgstr "Renvoie ``a - b``." -#: library/operator.rst:189 +#: library/operator.rst:193 msgid "" "Return ``a / b`` where 2/3 is .66 rather than 0. This is also known as " "\"true\" division." @@ -193,48 +199,48 @@ msgstr "" "Renvoie ``a / b`` où 2/3 est 0.66 et non 0. Appelée aussi division " "« réelle »." -#: library/operator.rst:196 +#: library/operator.rst:200 msgid "Return the bitwise exclusive or of *a* and *b*." msgstr "Renvoie le ou exclusif bit à bit de *a* et *b*." -#: library/operator.rst:199 +#: library/operator.rst:203 msgid "" "Operations which work with sequences (some of them with mappings too) " "include:" msgstr "" "Les opérations sur séquences (et pour certaines, sur correspondances) sont :" -#: library/operator.rst:204 +#: library/operator.rst:208 msgid "Return ``a + b`` for *a* and *b* sequences." msgstr "Renvoie ``a + b`` où *a* et *b* sont des séquences." -#: library/operator.rst:210 +#: library/operator.rst:214 msgid "Return the outcome of the test ``b in a``. Note the reversed operands." msgstr "" "Renvoie le résultat du test ``b in a``. Notez que les opérandes sont " "inversées." -#: library/operator.rst:215 +#: library/operator.rst:219 msgid "Return the number of occurrences of *b* in *a*." msgstr "Renvoie le nombre d’occurrences de *b* dans *a*." -#: library/operator.rst:221 +#: library/operator.rst:225 msgid "Remove the value of *a* at index *b*." msgstr "Renvoie la valeur de *a* à l'indice *b*." -#: library/operator.rst:227 +#: library/operator.rst:231 msgid "Return the value of *a* at index *b*." msgstr "Renvoie la valeur de *a* à l'indice *b*." -#: library/operator.rst:232 +#: library/operator.rst:236 msgid "Return the index of the first of occurrence of *b* in *a*." msgstr "Renvoie l'indice de la première occurrence de *b* dans *a*." -#: library/operator.rst:238 +#: library/operator.rst:242 msgid "Set the value of *a* at index *b* to *c*." msgstr "Affecte *c* dans *a* à l'indice *b*." -#: library/operator.rst:243 +#: library/operator.rst:247 msgid "" "Return an estimated length for the object *o*. First try to return its " "actual length, then an estimate using :meth:`object.__length_hint__`, and " @@ -244,7 +250,7 @@ msgstr "" "renvoyer la taille réelle, puis une estimation en appelant :meth:`object." "__length_hint__`, ou sinon la valeur par défaut." -#: library/operator.rst:249 +#: library/operator.rst:253 msgid "" "The :mod:`operator` module also defines tools for generalized attribute and " "item lookups. These are useful for making fast field extractors as " @@ -257,7 +263,7 @@ msgstr "" "func:`map`, :func:`sorted`, :meth:`itertools.groupby` ou à toute autre " "fonction prenant une fonction en paramètre." -#: library/operator.rst:258 +#: library/operator.rst:262 msgid "" "Return a callable object that fetches *attr* from its operand. If more than " "one attribute is requested, returns a tuple of attributes. The attribute " @@ -267,11 +273,11 @@ msgstr "" "attribut est demandé, renvoie un *n*-uplet d'attributs. Les noms des " "attributs peuvent aussi comporter des points. Par exemple :" -#: library/operator.rst:262 +#: library/operator.rst:266 msgid "After ``f = attrgetter('name')``, the call ``f(b)`` returns ``b.name``." msgstr "Avec ``f = attrgetter('name')``, l'appel ``f(b)`` renvoie ``b.name``." -#: library/operator.rst:264 +#: library/operator.rst:268 msgid "" "After ``f = attrgetter('name', 'date')``, the call ``f(b)`` returns ``(b." "name, b.date)``." @@ -279,7 +285,7 @@ msgstr "" "Avec ``f = attrgetter('name', 'date')``, l'appel ``f(b)`` renvoie ``(b.name, " "b.date)``." -#: library/operator.rst:267 +#: library/operator.rst:271 msgid "" "After ``f = attrgetter('name.first', 'name.last')``, the call ``f(b)`` " "returns ``(b.name.first, b.name.last)``." @@ -287,11 +293,11 @@ msgstr "" "Après ``f = attrgetter('name.first', 'name.last')``, l'appel ``f(b)`` " "renvoie ``(b.name.first, b.name.last)``." -#: library/operator.rst:302 library/operator.rst:350 +#: library/operator.rst:306 library/operator.rst:354 msgid "Equivalent to::" msgstr "Équivalent à ::" -#: library/operator.rst:293 +#: library/operator.rst:297 msgid "" "Return a callable object that fetches *item* from its operand using the " "operand's :meth:`__getitem__` method. If multiple items are specified, " @@ -301,18 +307,18 @@ msgstr "" "méthode :meth:`__getitem__`. Si plusieurs *item* sont passés en paramètre, " "renvoie un *n*-uplet des valeurs récupérées. Par exemple :" -#: library/operator.rst:297 +#: library/operator.rst:301 msgid "After ``f = itemgetter(2)``, the call ``f(r)`` returns ``r[2]``." msgstr "Avec ``f = itemgetter(2)``, ``f(r)`` renvoie ``r[2]``." -#: library/operator.rst:299 +#: library/operator.rst:303 msgid "" "After ``g = itemgetter(2, 5, 3)``, the call ``g(r)`` returns ``(r[2], r[5], " "r[3])``." msgstr "" "Avec ``g = itemgetter(2, 5, 3)``, ``g(r)`` renvoie ``(r[2], r[5], r[3])``." -#: library/operator.rst:314 +#: library/operator.rst:318 msgid "" "The items can be any type accepted by the operand's :meth:`__getitem__` " "method. Dictionaries accept any hashable value. Lists, tuples, and strings " @@ -323,7 +329,7 @@ msgstr "" "acceptent toute valeur hachable. Les listes, *n*-uplets et chaînes de " "caractères acceptent un index ou une tranche :" -#: library/operator.rst:328 +#: library/operator.rst:332 msgid "" "Example of using :func:`itemgetter` to retrieve specific fields from a tuple " "record:" @@ -331,7 +337,7 @@ msgstr "" "Exemple d'utilisation de :func:`itemgetter` pour récupérer des champs " "spécifiques d'un *n*-uplet :" -#: library/operator.rst:341 +#: library/operator.rst:345 msgid "" "Return a callable object that calls the method *name* on its operand. If " "additional arguments and/or keyword arguments are given, they will be given " @@ -341,12 +347,12 @@ msgstr "" "des paramètres supplémentaires et/ou des paramètres nommés sont donnés, ils " "seront aussi passés à la méthode. Par exemple :" -#: library/operator.rst:345 +#: library/operator.rst:349 msgid "" "After ``f = methodcaller('name')``, the call ``f(b)`` returns ``b.name()``." msgstr "Avec ``f = methodcaller('name')``, ``f(b)`` renvoie ``b.name()``." -#: library/operator.rst:347 +#: library/operator.rst:351 msgid "" "After ``f = methodcaller('name', 'foo', bar=1)``, the call ``f(b)`` returns " "``b.name('foo', bar=1)``." @@ -354,11 +360,11 @@ msgstr "" "Avec ``f = methodcaller('name', 'foo', bar=1)``, ``f(b)`` renvoie ``b." "name('foo', bar=1)``." -#: library/operator.rst:361 +#: library/operator.rst:365 msgid "Mapping Operators to Functions" msgstr "Correspondances entre opérateurs et fonctions" -#: library/operator.rst:363 +#: library/operator.rst:367 msgid "" "This table shows how abstract operations correspond to operator symbols in " "the Python syntax and the functions in the :mod:`operator` module." @@ -366,423 +372,423 @@ msgstr "" "Le tableau montre la correspondance entre les symboles des opérateurs Python " "et les fonctions du module :mod:`operator`." -#: library/operator.rst:367 +#: library/operator.rst:371 msgid "Operation" msgstr "Opération" -#: library/operator.rst:367 +#: library/operator.rst:371 msgid "Syntax" msgstr "Syntaxe" -#: library/operator.rst:367 +#: library/operator.rst:371 msgid "Function" msgstr "Fonction" -#: library/operator.rst:369 +#: library/operator.rst:373 msgid "Addition" msgstr "Addition" -#: library/operator.rst:369 +#: library/operator.rst:373 msgid "``a + b``" msgstr "``a + b``" -#: library/operator.rst:369 +#: library/operator.rst:373 msgid "``add(a, b)``" msgstr "``add(a, b)``" -#: library/operator.rst:371 +#: library/operator.rst:375 msgid "Concatenation" msgstr "Concaténation" -#: library/operator.rst:371 +#: library/operator.rst:375 msgid "``seq1 + seq2``" msgstr "``seq1 + seq2``" -#: library/operator.rst:371 +#: library/operator.rst:375 msgid "``concat(seq1, seq2)``" msgstr "``concat(seq1, seq2)``" -#: library/operator.rst:373 +#: library/operator.rst:377 msgid "Containment Test" msgstr "Test d'inclusion" -#: library/operator.rst:373 +#: library/operator.rst:377 msgid "``obj in seq``" msgstr "``obj in seq``" -#: library/operator.rst:373 +#: library/operator.rst:377 msgid "``contains(seq, obj)``" msgstr "``contains(seq, obj)``" -#: library/operator.rst:377 +#: library/operator.rst:381 msgid "Division" msgstr "Division" -#: library/operator.rst:375 +#: library/operator.rst:379 msgid "``a / b``" msgstr "``a / b``" -#: library/operator.rst:375 +#: library/operator.rst:379 msgid "``truediv(a, b)``" msgstr "``truediv(a, b)``" -#: library/operator.rst:377 +#: library/operator.rst:381 msgid "``a // b``" msgstr "``a // b``" -#: library/operator.rst:377 +#: library/operator.rst:381 msgid "``floordiv(a, b)``" msgstr "``floordiv(a, b)``" -#: library/operator.rst:379 +#: library/operator.rst:383 msgid "Bitwise And" msgstr "*Et* bit à bit" -#: library/operator.rst:379 +#: library/operator.rst:383 msgid "``a & b``" msgstr "``a & b``" -#: library/operator.rst:379 +#: library/operator.rst:383 msgid "``and_(a, b)``" msgstr "``and_(a, b)``" -#: library/operator.rst:381 +#: library/operator.rst:385 msgid "Bitwise Exclusive Or" msgstr "*Ou exclusif* bit à bit" -#: library/operator.rst:381 +#: library/operator.rst:385 msgid "``a ^ b``" msgstr "``a ^ b``" -#: library/operator.rst:381 +#: library/operator.rst:385 msgid "``xor(a, b)``" msgstr "``xor(a, b)``" -#: library/operator.rst:383 +#: library/operator.rst:387 msgid "Bitwise Inversion" msgstr "Inversion bit à bit" -#: library/operator.rst:383 +#: library/operator.rst:387 msgid "``~ a``" msgstr "``~ a``" -#: library/operator.rst:383 +#: library/operator.rst:387 msgid "``invert(a)``" msgstr "``invert(a)``" -#: library/operator.rst:385 +#: library/operator.rst:389 msgid "Bitwise Or" msgstr "*Ou* bit à bit" -#: library/operator.rst:385 +#: library/operator.rst:389 msgid "``a | b``" msgstr "``a | b``" -#: library/operator.rst:385 +#: library/operator.rst:389 msgid "``or_(a, b)``" msgstr "``or_(a, b)``" -#: library/operator.rst:387 +#: library/operator.rst:391 msgid "Exponentiation" msgstr "Exponentiation" -#: library/operator.rst:387 +#: library/operator.rst:391 msgid "``a ** b``" msgstr "``a ** b``" -#: library/operator.rst:387 +#: library/operator.rst:391 msgid "``pow(a, b)``" msgstr "``pow(a, b)``" -#: library/operator.rst:391 +#: library/operator.rst:395 msgid "Identity" msgstr "Identité" -#: library/operator.rst:389 +#: library/operator.rst:393 msgid "``a is b``" msgstr "``a is b``" -#: library/operator.rst:389 +#: library/operator.rst:393 msgid "``is_(a, b)``" msgstr "``is_(a, b)``" -#: library/operator.rst:391 +#: library/operator.rst:395 msgid "``a is not b``" msgstr "``a is not b``" -#: library/operator.rst:391 +#: library/operator.rst:395 msgid "``is_not(a, b)``" msgstr "``is_not(a, b)``" -#: library/operator.rst:393 +#: library/operator.rst:397 msgid "Indexed Assignment" msgstr "Affectation par index" -#: library/operator.rst:393 +#: library/operator.rst:397 msgid "``obj[k] = v``" msgstr "``obj[k] = v``" -#: library/operator.rst:393 +#: library/operator.rst:397 msgid "``setitem(obj, k, v)``" msgstr "``setitem(obj, k, v)``" -#: library/operator.rst:395 +#: library/operator.rst:399 msgid "Indexed Deletion" msgstr "Suppression par index" -#: library/operator.rst:395 +#: library/operator.rst:399 msgid "``del obj[k]``" msgstr "``del obj[k]``" -#: library/operator.rst:395 +#: library/operator.rst:399 msgid "``delitem(obj, k)``" msgstr "``delitem(obj, k)``" -#: library/operator.rst:397 +#: library/operator.rst:401 msgid "Indexing" msgstr "Indexation" -#: library/operator.rst:397 +#: library/operator.rst:401 msgid "``obj[k]``" msgstr "``obj[k]``" -#: library/operator.rst:397 +#: library/operator.rst:401 msgid "``getitem(obj, k)``" msgstr "``getitem(obj, k)``" -#: library/operator.rst:399 +#: library/operator.rst:403 msgid "Left Shift" msgstr "Décalage bit à bit gauche" -#: library/operator.rst:399 +#: library/operator.rst:403 msgid "``a << b``" msgstr "``a << b``" -#: library/operator.rst:399 +#: library/operator.rst:403 msgid "``lshift(a, b)``" msgstr "``lshift(a, b)``" -#: library/operator.rst:401 +#: library/operator.rst:405 msgid "Modulo" msgstr "Modulo" -#: library/operator.rst:401 +#: library/operator.rst:405 msgid "``a % b``" msgstr "``a % b``" -#: library/operator.rst:401 +#: library/operator.rst:405 msgid "``mod(a, b)``" msgstr "``mod(a, b)``" -#: library/operator.rst:403 +#: library/operator.rst:407 msgid "Multiplication" msgstr "Multiplication" -#: library/operator.rst:403 +#: library/operator.rst:407 msgid "``a * b``" msgstr "``a * b``" -#: library/operator.rst:403 +#: library/operator.rst:407 msgid "``mul(a, b)``" msgstr "``mul(a, b)``" -#: library/operator.rst:405 +#: library/operator.rst:409 msgid "Matrix Multiplication" msgstr "Multiplication matricielle" -#: library/operator.rst:405 +#: library/operator.rst:409 msgid "``a @ b``" msgstr "``a @ b``" -#: library/operator.rst:405 +#: library/operator.rst:409 msgid "``matmul(a, b)``" msgstr "``matmul(a, b)``" -#: library/operator.rst:407 +#: library/operator.rst:411 msgid "Negation (Arithmetic)" msgstr "Opposé" -#: library/operator.rst:407 +#: library/operator.rst:411 msgid "``- a``" msgstr "``- a``" -#: library/operator.rst:407 +#: library/operator.rst:411 msgid "``neg(a)``" msgstr "``neg(a)``" -#: library/operator.rst:409 +#: library/operator.rst:413 msgid "Negation (Logical)" msgstr "Négation (logique)" -#: library/operator.rst:409 +#: library/operator.rst:413 msgid "``not a``" msgstr "``not a``" -#: library/operator.rst:409 +#: library/operator.rst:413 msgid "``not_(a)``" msgstr "``not_(a)``" -#: library/operator.rst:411 +#: library/operator.rst:415 msgid "Positive" msgstr "Valeur positive" -#: library/operator.rst:411 +#: library/operator.rst:415 msgid "``+ a``" msgstr "``+ a``" -#: library/operator.rst:411 +#: library/operator.rst:415 msgid "``pos(a)``" msgstr "``pos(a)``" -#: library/operator.rst:413 +#: library/operator.rst:417 msgid "Right Shift" msgstr "Décalage bit à bit droite" -#: library/operator.rst:413 +#: library/operator.rst:417 msgid "``a >> b``" msgstr "``a >> b``" -#: library/operator.rst:413 +#: library/operator.rst:417 msgid "``rshift(a, b)``" msgstr "``rshift(a, b)``" -#: library/operator.rst:415 +#: library/operator.rst:419 msgid "Slice Assignment" msgstr "Affectation par tranche" -#: library/operator.rst:415 +#: library/operator.rst:419 msgid "``seq[i:j] = values``" msgstr "``seq[i:j] = values``" -#: library/operator.rst:415 +#: library/operator.rst:419 msgid "``setitem(seq, slice(i, j), values)``" msgstr "``setitem(seq, slice(i, j), values)``" -#: library/operator.rst:417 +#: library/operator.rst:421 msgid "Slice Deletion" msgstr "Suppression par tranche" -#: library/operator.rst:417 +#: library/operator.rst:421 msgid "``del seq[i:j]``" msgstr "``del seq[i:j]``" -#: library/operator.rst:417 +#: library/operator.rst:421 msgid "``delitem(seq, slice(i, j))``" msgstr "``delitem(seq, slice(i, j))``" -#: library/operator.rst:419 +#: library/operator.rst:423 msgid "Slicing" msgstr "Tranche" -#: library/operator.rst:419 +#: library/operator.rst:423 msgid "``seq[i:j]``" msgstr "``seq[i:j]``" -#: library/operator.rst:419 +#: library/operator.rst:423 msgid "``getitem(seq, slice(i, j))``" msgstr "``getitem(seq, slice(i, j))``" -#: library/operator.rst:421 +#: library/operator.rst:425 msgid "String Formatting" msgstr "Formatage de chaînes de caractères" -#: library/operator.rst:421 +#: library/operator.rst:425 msgid "``s % obj``" msgstr "``s % obj``" -#: library/operator.rst:421 +#: library/operator.rst:425 msgid "``mod(s, obj)``" msgstr "``mod(s, obj)``" -#: library/operator.rst:423 +#: library/operator.rst:427 msgid "Subtraction" msgstr "Soustraction" -#: library/operator.rst:423 +#: library/operator.rst:427 msgid "``a - b``" msgstr "``a - b``" -#: library/operator.rst:423 +#: library/operator.rst:427 msgid "``sub(a, b)``" msgstr "``sub(a, b)``" -#: library/operator.rst:425 +#: library/operator.rst:429 msgid "Truth Test" msgstr "Test de véracité" -#: library/operator.rst:425 +#: library/operator.rst:429 msgid "``obj``" msgstr "``obj``" -#: library/operator.rst:425 +#: library/operator.rst:429 msgid "``truth(obj)``" msgstr "``truth(obj)``" -#: library/operator.rst:429 library/operator.rst:437 +#: library/operator.rst:433 library/operator.rst:441 msgid "Ordering" msgstr "Ordre" -#: library/operator.rst:427 +#: library/operator.rst:431 msgid "``a < b``" msgstr "``a < b``" -#: library/operator.rst:427 +#: library/operator.rst:431 msgid "``lt(a, b)``" msgstr "``lt(a, b)``" -#: library/operator.rst:429 +#: library/operator.rst:433 msgid "``a <= b``" msgstr "``a <= b``" -#: library/operator.rst:429 +#: library/operator.rst:433 msgid "``le(a, b)``" msgstr "``le(a, b)``" -#: library/operator.rst:431 +#: library/operator.rst:435 msgid "Equality" msgstr "Égalité" -#: library/operator.rst:431 +#: library/operator.rst:435 msgid "``a == b``" msgstr "``a == b``" -#: library/operator.rst:431 +#: library/operator.rst:435 msgid "``eq(a, b)``" msgstr "``eq(a, b)``" -#: library/operator.rst:433 +#: library/operator.rst:437 msgid "Difference" msgstr "Inégalité" -#: library/operator.rst:433 +#: library/operator.rst:437 msgid "``a != b``" msgstr "``a != b``" -#: library/operator.rst:433 +#: library/operator.rst:437 msgid "``ne(a, b)``" msgstr "``ne(a, b)``" -#: library/operator.rst:435 +#: library/operator.rst:439 msgid "``a >= b``" msgstr "``a >= b``" -#: library/operator.rst:435 +#: library/operator.rst:439 msgid "``ge(a, b)``" msgstr "``ge(a, b)``" -#: library/operator.rst:437 +#: library/operator.rst:441 msgid "``a > b``" msgstr "``a > b``" -#: library/operator.rst:437 +#: library/operator.rst:441 msgid "``gt(a, b)``" msgstr "``gt(a, b)``" -#: library/operator.rst:441 +#: library/operator.rst:445 msgid "In-place Operators" msgstr "Opérateurs en-place" -#: library/operator.rst:443 +#: library/operator.rst:447 msgid "" "Many operations have an \"in-place\" version. Listed below are functions " "providing a more primitive access to in-place operators than the usual " @@ -798,7 +804,7 @@ msgstr "" "dit, l'expression ``z = operator.iadd(x, y)`` équivaut à l'expression " "composée ``z = x; z += y``." -#: library/operator.rst:450 +#: library/operator.rst:454 msgid "" "In those examples, note that when an in-place method is called, the " "computation and assignment are performed in two separate steps. The in-" @@ -811,7 +817,7 @@ msgstr "" "appelant la méthode en-place. La seconde étape, l'affectation, n'est pas " "effectuée." -#: library/operator.rst:455 +#: library/operator.rst:459 msgid "" "For immutable targets such as strings, numbers, and tuples, the updated " "value is computed, but not assigned back to the input variable:" @@ -820,7 +826,7 @@ msgstr "" "nombres et les *n*-uplets, la nouvelle valeur est calculée, mais pas " "affectée à la variable d'entrée:" -#: library/operator.rst:464 +#: library/operator.rst:468 msgid "" "For mutable targets such as lists and dictionaries, the in-place method will " "perform the update, so no subsequent assignment is necessary:" @@ -829,60 +835,60 @@ msgstr "" "méthode en-place modifiera la valeur, aucune affectation ultérieure n'est " "nécessaire :" -#: library/operator.rst:476 +#: library/operator.rst:480 msgid "``a = iadd(a, b)`` is equivalent to ``a += b``." msgstr "``a = iadd(a, b)`` équivaut à ``a += b``." -#: library/operator.rst:482 +#: library/operator.rst:486 msgid "``a = iand(a, b)`` is equivalent to ``a &= b``." msgstr "``a = iand(a, b)`` équivaut à ``a &= b``." -#: library/operator.rst:488 +#: library/operator.rst:492 msgid "" "``a = iconcat(a, b)`` is equivalent to ``a += b`` for *a* and *b* sequences." msgstr "" "``a = iconcat(a, b)`` équivaut à ``a += b`` où *a* et *b* sont des séquences." -#: library/operator.rst:494 +#: library/operator.rst:498 msgid "``a = ifloordiv(a, b)`` is equivalent to ``a //= b``." msgstr "``a = ifloordiv(a, b)``équivaut à ``a //= b``." -#: library/operator.rst:500 +#: library/operator.rst:504 msgid "``a = ilshift(a, b)`` is equivalent to ``a <<= b``." msgstr "``a = ilshift(a, b)`` équivaut à ``a <<= b``." -#: library/operator.rst:506 +#: library/operator.rst:510 msgid "``a = imod(a, b)`` is equivalent to ``a %= b``." msgstr "``a = imod(a, b)`` équivaut à ``a %= b``." -#: library/operator.rst:512 +#: library/operator.rst:516 msgid "``a = imul(a, b)`` is equivalent to ``a *= b``." msgstr "``a = imul(a, b)`` équivaut à ``a *= b``." -#: library/operator.rst:518 +#: library/operator.rst:522 msgid "``a = imatmul(a, b)`` is equivalent to ``a @= b``." msgstr "``a = imatmul(a, b)`` équivaut à ``a @= b``." -#: library/operator.rst:526 +#: library/operator.rst:530 msgid "``a = ior(a, b)`` is equivalent to ``a |= b``." msgstr "``a = ior(a, b)`` équivaut à ``a |= b``." -#: library/operator.rst:532 +#: library/operator.rst:536 msgid "``a = ipow(a, b)`` is equivalent to ``a **= b``." msgstr "``a = ipow(a, b)`` équivaut à ``a **= b``." -#: library/operator.rst:538 +#: library/operator.rst:542 msgid "``a = irshift(a, b)`` is equivalent to ``a >>= b``." msgstr "``a = irshift(a, b)`` équivaut à ``a >>= b``." -#: library/operator.rst:544 +#: library/operator.rst:548 msgid "``a = isub(a, b)`` is equivalent to ``a -= b``." msgstr "``a = isub(a, b)`` équivaut à ``a -= b``." -#: library/operator.rst:550 +#: library/operator.rst:554 msgid "``a = itruediv(a, b)`` is equivalent to ``a /= b``." msgstr "``a = itruediv(a, b)`` équivaut à ``a /= b``." -#: library/operator.rst:556 +#: library/operator.rst:560 msgid "``a = ixor(a, b)`` is equivalent to ``a ^= b``." msgstr "``a = ixor(a, b)`` équivaut à ``a ^= b``." diff --git a/library/os.path.po b/library/os.path.po index bfbf856bd..33401b060 100644 --- a/library/os.path.po +++ b/library/os.path.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-11-29 18:28+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -127,9 +127,9 @@ msgstr "" #: library/os.path.rst:83 library/os.path.rst:132 library/os.path.rst:158 #: library/os.path.rst:204 library/os.path.rst:233 library/os.path.rst:252 -#: library/os.path.rst:272 library/os.path.rst:301 library/os.path.rst:343 -#: library/os.path.rst:376 library/os.path.rst:407 library/os.path.rst:439 -#: library/os.path.rst:471 +#: library/os.path.rst:272 library/os.path.rst:301 library/os.path.rst:351 +#: library/os.path.rst:396 library/os.path.rst:427 library/os.path.rst:459 +#: library/os.path.rst:510 msgid "Accepts a :term:`path-like object`." msgstr "Accepte un :term:`path-like object`." @@ -155,7 +155,7 @@ msgid "" "empty. Unlike :func:`commonprefix`, this returns a valid path." msgstr "" -#: library/os.path.rst:375 library/os.path.rst:403 library/os.path.rst:419 +#: library/os.path.rst:395 library/os.path.rst:423 library/os.path.rst:439 msgid ":ref:`Availability `: Unix, Windows." msgstr ":ref:`Disponibilité ` : Unix, Windows." @@ -222,8 +222,9 @@ msgstr "" msgid "" "On Windows, :envvar:`USERPROFILE` will be used if set, otherwise a " "combination of :envvar:`HOMEPATH` and :envvar:`HOMEDRIVE` will be used. An " -"initial ``~user`` is handled by stripping the last directory component from " -"the created user path derived above." +"initial ``~user`` is handled by checking that the last directory component " +"of the current user's home directory matches :envvar:`USERNAME`, and " +"replacing it if so." msgstr "" #: library/os.path.rst:181 @@ -367,24 +368,53 @@ msgid "" "backward slashes. To normalize case, use :func:`normcase`." msgstr "" -#: library/os.path.rst:349 +#: library/os.path.rst:344 +msgid "" +"On POSIX systems, in accordance with `IEEE Std 1003.1 2013 Edition; 4.13 " +"Pathname Resolution `_, if a pathname begins with exactly two " +"slashes, the first component following the leading characters may be " +"interpreted in an implementation-defined manner, although more than two " +"leading characters shall be treated as a single character." +msgstr "" + +#: library/os.path.rst:357 msgid "" "Return the canonical path of the specified filename, eliminating any " "symbolic links encountered in the path (if they are supported by the " "operating system)." msgstr "" -#: library/os.path.rst:354 +#: library/os.path.rst:361 +msgid "" +"If a path doesn't exist or a symlink loop is encountered, and *strict* is " +"``True``, :exc:`OSError` is raised. If *strict* is ``False``, the path is " +"resolved as far as possible and any remainder is appended without checking " +"whether it exists." +msgstr "" + +#: library/os.path.rst:367 +msgid "" +"This function emulates the operating system's procedure for making a path " +"canonical, which differs slightly between Windows and UNIX with respect to " +"how links and subsequent path components interact." +msgstr "" + +#: library/os.path.rst:371 msgid "" -"When symbolic link cycles occur, the returned path will be one member of the " -"cycle, but no guarantee is made about which member that will be." +"Operating system APIs make paths canonical as needed, so it's not normally " +"necessary to call this function." msgstr "" -#: library/os.path.rst:360 +#: library/os.path.rst:377 msgid "Symbolic links and junctions are now resolved on Windows." msgstr "" -#: library/os.path.rst:366 +#: library/os.path.rst:380 +msgid "The *strict* parameter was added." +msgstr "" + +#: library/os.path.rst:386 msgid "" "Return a relative filepath to *path* either from the current directory or " "from an optional *start* directory. This is a path computation: the " @@ -393,32 +423,32 @@ msgid "" "are on different drives." msgstr "" -#: library/os.path.rst:372 +#: library/os.path.rst:392 msgid "*start* defaults to :attr:`os.curdir`." msgstr "" -#: library/os.path.rst:382 +#: library/os.path.rst:402 msgid "" "Return ``True`` if both pathname arguments refer to the same file or " "directory. This is determined by the device number and i-node number and " "raises an exception if an :func:`os.stat` call on either pathname fails." msgstr "" -#: library/os.path.rst:404 library/os.path.rst:420 +#: library/os.path.rst:424 library/os.path.rst:440 msgid "Added Windows support." msgstr "Prise en charge de Windows." -#: library/os.path.rst:391 +#: library/os.path.rst:411 msgid "Windows now uses the same implementation as all other platforms." msgstr "" -#: library/os.path.rst:400 +#: library/os.path.rst:420 msgid "" "Return ``True`` if the file descriptors *fp1* and *fp2* refer to the same " "file." msgstr "" -#: library/os.path.rst:413 +#: library/os.path.rst:433 msgid "" "Return ``True`` if the stat tuples *stat1* and *stat2* refer to the same " "file. These structures may have been returned by :func:`os.fstat`, :func:`os." @@ -426,7 +456,7 @@ msgid "" "comparison used by :func:`samefile` and :func:`sameopenfile`." msgstr "" -#: library/os.path.rst:429 +#: library/os.path.rst:449 msgid "" "Split the pathname *path* into a pair, ``(head, tail)`` where *tail* is the " "last pathname component and *head* is everything leading up to that. The " @@ -439,7 +469,7 @@ msgid "" "and :func:`basename`." msgstr "" -#: library/os.path.rst:445 +#: library/os.path.rst:465 msgid "" "Split the pathname *path* into a pair ``(drive, tail)`` where *drive* is " "either a mount point or the empty string. On systems which do not use drive " @@ -447,34 +477,45 @@ msgid "" "``drive + tail`` will be the same as *path*." msgstr "" -#: library/os.path.rst:450 +#: library/os.path.rst:470 msgid "" "On Windows, splits a pathname into drive/UNC sharepoint and relative path." msgstr "" -#: library/os.path.rst:452 +#: library/os.path.rst:472 msgid "" "If the path contains a drive letter, drive will contain everything up to and " -"including the colon. e.g. ``splitdrive(\"c:/dir\")`` returns ``(\"c:\", \"/" -"dir\")``" +"including the colon::" msgstr "" -#: library/os.path.rst:456 +#: library/os.path.rst:478 msgid "" "If the path contains a UNC path, drive will contain the host name and share, " -"up to but not including the fourth separator. e.g. ``splitdrive(\"//host/" -"computer/dir\")`` returns ``(\"//host/computer\", \"/dir\")``" +"up to but not including the fourth separator::" msgstr "" -#: library/os.path.rst:466 +#: library/os.path.rst:490 msgid "" "Split the pathname *path* into a pair ``(root, ext)`` such that ``root + " -"ext == path``, and *ext* is empty or begins with a period and contains at " -"most one period. Leading periods on the basename are ignored; ``splitext('." -"cshrc')`` returns ``('.cshrc', '')``." +"ext == path``, and the extension, *ext*, is empty or begins with a period " +"and contains at most one period." +msgstr "" + +#: library/os.path.rst:494 +msgid "If the path contains no extension, *ext* will be ``''``::" +msgstr "" + +#: library/os.path.rst:499 +msgid "" +"If the path contains an extension, then *ext* will be set to this extension, " +"including the leading period. Note that previous periods will be ignored::" +msgstr "" + +#: library/os.path.rst:505 +msgid "Leading periods on the basename are ignored::" msgstr "" -#: library/os.path.rst:477 +#: library/os.path.rst:516 msgid "" "``True`` if arbitrary Unicode strings can be used as file names (within " "limitations imposed by the file system)." diff --git a/library/os.po b/library/os.po index 28f1505ca..1298deebe 100644 --- a/library/os.po +++ b/library/os.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-07 13:39+0200\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -80,7 +80,9 @@ msgstr "" "fichier est renvoyé, il sera du même type." #: library/os.rst:35 -msgid "On VxWorks, os.fork, os.execv and os.spawn*p* are not supported." +#, fuzzy +msgid "" +"On VxWorks, os.popen, os.fork, os.execv and os.spawn*p* are not supported." msgstr "" "Sur VxWorks, *os.fork*, *os.execv* et *os.spawn\\*p\\** ne sont pas pris en " "charge." @@ -132,12 +134,13 @@ msgstr "" "d'environnement" #: library/os.rst:68 +#, fuzzy msgid "" "In Python, file names, command line arguments, and environment variables are " "represented using the string type. On some systems, decoding these strings " "to and from bytes is necessary before passing them to the operating system. " -"Python uses the file system encoding to perform this conversion (see :func:" -"`sys.getfilesystemencoding`)." +"Python uses the :term:`filesystem encoding and error handler` to perform " +"this conversion (see :func:`sys.getfilesystemencoding`)." msgstr "" "En Python, les noms de fichiers, les arguments en ligne de commandes, et les " "variables d'environnement sont des chaînes de caractères. Sur certains " @@ -148,6 +151,14 @@ msgstr "" #: library/os.rst:74 msgid "" +"The :term:`filesystem encoding and error handler` are configured at Python " +"startup by the :c:func:`PyConfig_Read` function: see :c:member:`~PyConfig." +"filesystem_encoding` and :c:member:`~PyConfig.filesystem_errors` members of :" +"c:type:`PyConfig`." +msgstr "" + +#: library/os.rst:79 +msgid "" "On some systems, conversion using the file system encoding may fail. In this " "case, Python uses the :ref:`surrogateescape encoding error handler " "`, which means that undecodable bytes are replaced by a " @@ -160,22 +171,139 @@ msgstr "" "que les octets indécodables sont remplacés par un code de substitution lors " "du décodage, qui est reconverti vers l'octet original lors de l'encodage." -#: library/os.rst:82 +#: library/os.rst:87 +#, fuzzy msgid "" -"The file system encoding must guarantee to successfully decode all bytes " -"below 128. If the file system encoding fails to provide this guarantee, API " -"functions may raise UnicodeErrors." +"The :term:`file system encoding ` " +"must guarantee to successfully decode all bytes below 128. If the file " +"system encoding fails to provide this guarantee, API functions can raise :" +"exc:`UnicodeError`." msgstr "" "L'encodage du système de fichiers doit garantir de pouvoir décoder " "correctement tous les octets en dessous de 128. Si l'encodage du système de " "fichiers ne peut garantir cela, les fonctions de l'API peuvent lever une " "``UnicodeError``." -#: library/os.rst:90 +#: library/os.rst:92 +msgid "See also the :term:`locale encoding`." +msgstr "" + +#: library/os.rst:98 +msgid "Python UTF-8 Mode" +msgstr "" + +#: library/os.rst:100 +msgid "See :pep:`540` for more details." +msgstr "" + +#: library/os.rst:103 +msgid "" +"The Python UTF-8 Mode ignores the :term:`locale encoding` and forces the " +"usage of the UTF-8 encoding:" +msgstr "" + +#: library/os.rst:106 +msgid "" +"Use UTF-8 as the :term:`filesystem encoding `." +msgstr "" + +#: library/os.rst:108 +msgid ":func:`sys.getfilesystemencoding()` returns ``'UTF-8'``." +msgstr "" + +#: library/os.rst:109 +msgid "" +":func:`locale.getpreferredencoding()` returns ``'UTF-8'`` (the " +"*do_setlocale* argument has no effect)." +msgstr "" + +#: library/os.rst:111 +msgid "" +":data:`sys.stdin`, :data:`sys.stdout`, and :data:`sys.stderr` all use UTF-8 " +"as their text encoding, with the ``surrogateescape`` :ref:`error handler " +"` being enabled for :data:`sys.stdin` and :data:`sys.stdout` " +"(:data:`sys.stderr` continues to use ``backslashreplace`` as it does in the " +"default locale-aware mode)" +msgstr "" + +#: library/os.rst:116 +msgid "" +"On Unix, :func:`os.device_encoding` returns ``'UTF-8'``. rather than the " +"device encoding." +msgstr "" + +#: library/os.rst:119 +msgid "" +"Note that the standard stream settings in UTF-8 mode can be overridden by :" +"envvar:`PYTHONIOENCODING` (just as they can be in the default locale-aware " +"mode)." +msgstr "" + +#: library/os.rst:123 +msgid "" +"As a consequence of the changes in those lower level APIs, other higher " +"level APIs also exhibit different default behaviours:" +msgstr "" + +#: library/os.rst:126 +msgid "" +"Command line arguments, environment variables and filenames are decoded to " +"text using the UTF-8 encoding." +msgstr "" + +#: library/os.rst:128 +msgid ":func:`os.fsdecode()` and :func:`os.fsencode()` use the UTF-8 encoding." +msgstr "" + +#: library/os.rst:129 +msgid "" +":func:`open()`, :func:`io.open()`, and :func:`codecs.open()` use the UTF-8 " +"encoding by default. However, they still use the strict error handler by " +"default so that attempting to open a binary file in text mode is likely to " +"raise an exception rather than producing nonsense data." +msgstr "" + +#: library/os.rst:134 +msgid "" +"The :ref:`Python UTF-8 Mode ` is enabled if the LC_CTYPE locale " +"is ``C`` or ``POSIX`` at Python startup (see the :c:func:`PyConfig_Read` " +"function)." +msgstr "" + +#: library/os.rst:138 +msgid "" +"It can be enabled or disabled using the :option:`-X utf8 <-X>` command line " +"option and the :envvar:`PYTHONUTF8` environment variable." +msgstr "" + +#: library/os.rst:141 +msgid "" +"If the :envvar:`PYTHONUTF8` environment variable is not set at all, then the " +"interpreter defaults to using the current locale settings, *unless* the " +"current locale is identified as a legacy ASCII-based locale (as described " +"for :envvar:`PYTHONCOERCECLOCALE`), and locale coercion is either disabled " +"or fails. In such legacy locales, the interpreter will default to enabling " +"UTF-8 mode unless explicitly instructed not to do so." +msgstr "" + +#: library/os.rst:148 +msgid "" +"The Python UTF-8 Mode can only be enabled at the Python startup. Its value " +"can be read from :data:`sys.flags.utf8_mode `." +msgstr "" + +#: library/os.rst:151 +msgid "" +"See also the :ref:`UTF-8 mode on Windows ` and the :term:" +"`filesystem encoding and error handler`." +msgstr "" + +#: library/os.rst:158 msgid "Process Parameters" msgstr "Paramètres de processus" -#: library/os.rst:92 +#: library/os.rst:160 msgid "" "These functions and data items provide information and operate on the " "current process and user." @@ -183,34 +311,34 @@ msgstr "" "Ces fonctions et valeurs fournissent des informations et agissent sur le " "processus actuel et sur l'utilisateur." -#: library/os.rst:98 +#: library/os.rst:166 msgid "" "Return the filename corresponding to the controlling terminal of the process." msgstr "" "Renvoie l'identifiant de fichier correspondant au terminal contrôlant le " "processus." -#: library/os.rst:264 library/os.rst:282 library/os.rst:301 library/os.rst:344 -#: library/os.rst:392 library/os.rst:412 library/os.rst:432 library/os.rst:471 -#: library/os.rst:488 library/os.rst:508 library/os.rst:534 library/os.rst:551 -#: library/os.rst:566 library/os.rst:582 library/os.rst:793 library/os.rst:824 -#: library/os.rst:882 library/os.rst:915 library/os.rst:1100 -#: library/os.rst:1128 library/os.rst:1297 library/os.rst:1329 -#: library/os.rst:1356 library/os.rst:1373 library/os.rst:1657 -#: library/os.rst:1740 library/os.rst:1780 library/os.rst:1808 -#: library/os.rst:2018 library/os.rst:2073 library/os.rst:2904 -#: library/os.rst:3433 library/os.rst:3448 library/os.rst:3462 -#: library/os.rst:3476 library/os.rst:3491 library/os.rst:3506 -#: library/os.rst:3522 library/os.rst:3538 library/os.rst:3552 -#: library/os.rst:3628 library/os.rst:3656 library/os.rst:3820 -#: library/os.rst:4055 library/os.rst:4086 library/os.rst:4156 -#: library/os.rst:4208 library/os.rst:4238 library/os.rst:4261 -#: library/os.rst:4277 library/os.rst:4295 library/os.rst:4450 -#: library/os.rst:4480 library/os.rst:4499 +#: library/os.rst:332 library/os.rst:350 library/os.rst:369 library/os.rst:412 +#: library/os.rst:460 library/os.rst:480 library/os.rst:500 library/os.rst:539 +#: library/os.rst:556 library/os.rst:576 library/os.rst:602 library/os.rst:619 +#: library/os.rst:634 library/os.rst:650 library/os.rst:867 library/os.rst:898 +#: library/os.rst:956 library/os.rst:989 library/os.rst:1184 +#: library/os.rst:1212 library/os.rst:1396 library/os.rst:1428 +#: library/os.rst:1488 library/os.rst:1505 library/os.rst:1789 +#: library/os.rst:1872 library/os.rst:1912 library/os.rst:1940 +#: library/os.rst:2150 library/os.rst:2205 library/os.rst:3036 +#: library/os.rst:3661 library/os.rst:3676 library/os.rst:3690 +#: library/os.rst:3704 library/os.rst:3719 library/os.rst:3734 +#: library/os.rst:3750 library/os.rst:3766 library/os.rst:3780 +#: library/os.rst:3856 library/os.rst:3884 library/os.rst:4048 +#: library/os.rst:4301 library/os.rst:4332 library/os.rst:4402 +#: library/os.rst:4454 library/os.rst:4484 library/os.rst:4507 +#: library/os.rst:4523 library/os.rst:4541 library/os.rst:4696 +#: library/os.rst:4726 library/os.rst:4745 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." -#: library/os.rst:105 +#: library/os.rst:173 msgid "" "A :term:`mapping` object representing the string environment. For example, " "``environ['HOME']`` is the pathname of your home directory (on some " @@ -220,7 +348,7 @@ msgstr "" "exemple ``environ['HOME']`` est le chemin vers votre répertoire personnel " "(sur certaines plate-formes), et est équivalent à ``getenv(\"HOME\")`` en C." -#: library/os.rst:109 +#: library/os.rst:177 msgid "" "This mapping is captured the first time the :mod:`os` module is imported, " "typically during Python startup as part of processing :file:`site.py`. " @@ -233,7 +361,7 @@ msgstr "" "capture ne sont pas répercutés dans ``os.environ``, à part les modifications " "directes de ``os.environ``." -#: library/os.rst:114 +#: library/os.rst:182 #, fuzzy msgid "" "This mapping may be used to modify the environment as well as query the " @@ -245,7 +373,7 @@ msgstr "" "l'interroger. :func:`putenv` sera appelée automatiquement quand le *mapping* " "sera modifié." -#: library/os.rst:118 +#: library/os.rst:186 msgid "" "On Unix, keys and values use :func:`sys.getfilesystemencoding` and " "``'surrogateescape'`` error handler. Use :data:`environb` if you would like " @@ -255,7 +383,7 @@ msgstr "" "getfilesystemencoding` et le gestionnaire d'erreurs ``surrogateescape``. " "Utilisez :data:`environb` si vous désirez utiliser un encodage différent." -#: library/os.rst:124 +#: library/os.rst:192 msgid "" "Calling :func:`putenv` directly does not change ``os.environ``, so it's " "better to modify ``os.environ``." @@ -263,16 +391,17 @@ msgstr "" "Appeler :func:`putenv` ne change pas directement ``os.environ``, donc il est " "préférable de modifier ``os.environ``." -#: library/os.rst:129 +#: library/os.rst:197 +#, fuzzy msgid "" -"On some platforms, including FreeBSD and Mac OS X, setting ``environ`` may " +"On some platforms, including FreeBSD and macOS, setting ``environ`` may " "cause memory leaks. Refer to the system documentation for :c:func:`putenv`." msgstr "" "Sur certaines plate-formes, dont FreeBSD et Mac OS X, procéder à des " "assignations sur ``environ`` peut causer des fuites de mémoire. Referez-vous " "à la documentation système de :func:`putenv`." -#: library/os.rst:133 +#: library/os.rst:201 #, fuzzy msgid "" "You can delete items in this mapping to unset environment variables. :func:" @@ -286,12 +415,12 @@ msgstr "" "quand un élément est supprimé de ``os.environ``, ou quand l'une des " "méthodes :meth:`pop` ou :meth:`clear` est appelée." -#: library/os.rst:154 +#: library/os.rst:222 msgid "" "Updated to support :pep:`584`'s merge (``|``) and update (``|=``) operators." msgstr "" -#: library/os.rst:144 +#: library/os.rst:212 msgid "" "Bytes version of :data:`environ`: a :term:`mapping` object representing the " "environment as byte strings. :data:`environ` and :data:`environb` are " @@ -303,7 +432,7 @@ msgstr "" "`environ` et :data:`environb` sont synchronisés (modifier :data:`environ` " "modifie :data:`environb`, et vice-versa)." -#: library/os.rst:149 +#: library/os.rst:217 msgid "" ":data:`environb` is only available if :data:`supports_bytes_environ` is " "``True``." @@ -311,26 +440,26 @@ msgstr "" ":data:`environb` n'est disponible que si :data:`supports_bytes_environ` vaut " "``True``." -#: library/os.rst:163 +#: library/os.rst:231 msgid "These functions are described in :ref:`os-file-dir`." msgstr "Ces fonctions sont décrites dans le chapitre :ref:`os-file-dir`." -#: library/os.rst:168 +#: library/os.rst:236 +#, fuzzy msgid "" -"Encode :term:`path-like ` *filename* to the filesystem " -"encoding with ``'surrogateescape'`` error handler, or ``'strict'`` on " -"Windows; return :class:`bytes` unchanged." +"Encode :term:`path-like ` *filename* to the :term:" +"`filesystem encoding and error handler`; return :class:`bytes` unchanged." msgstr "" "Encode *filename* (:term:`chemin-compatible `) vers " "l'encodage du système de fichiers avec une gestion d'erreurs " "``'surrogateescape'``, ou ``'strict'`` sous Windows ; renvoie un objet :" "class:`bytes` inchangé." -#: library/os.rst:172 +#: library/os.rst:240 msgid ":func:`fsdecode` is the reverse function." msgstr ":func:`fsdecode` est la fonction inverse." -#: library/os.rst:191 +#: library/os.rst:259 msgid "" "Support added to accept objects implementing the :class:`os.PathLike` " "interface." @@ -338,27 +467,27 @@ msgstr "" "Ajout de la prise en charge des objets implémentant l'interface :class:`os." "PathLike`." -#: library/os.rst:183 +#: library/os.rst:251 +#, fuzzy msgid "" -"Decode the :term:`path-like ` *filename* from the " -"filesystem encoding with ``'surrogateescape'`` error handler, or " -"``'strict'`` on Windows; return :class:`str` unchanged." +"Decode the :term:`path-like ` *filename* from the :term:" +"`filesystem encoding and error handler`; return :class:`str` unchanged." msgstr "" "Encode le :term:`chemin-compatible ` *filename* depuis " "l'encodage du système de fichiers avec une gestion d'erreurs " "``'surrogateescape'``, ou ``'strict'`` sous Windows ; renvoie un objet :" "class:`str` inchangé." -#: library/os.rst:187 +#: library/os.rst:255 msgid ":func:`fsencode` is the reverse function." msgstr ":func:`fsencode` est la fonction inverse." -#: library/os.rst:198 +#: library/os.rst:266 msgid "Return the file system representation of the path." msgstr "" "Renvoie une représentation du chemin utilisable par le système de fichiers." -#: library/os.rst:200 +#: library/os.rst:268 msgid "" "If :class:`str` or :class:`bytes` is passed in, it is returned unchanged. " "Otherwise :meth:`~os.PathLike.__fspath__` is called and its value is " @@ -370,7 +499,7 @@ msgstr "" "valeur renvoyée tant qu'elle est un objet :class:`str` ou :class:`bytes`. " "Dans tous les autres cas, une :exc:`TypeError` est levée." -#: library/os.rst:210 +#: library/os.rst:278 msgid "" "An :term:`abstract base class` for objects representing a file system path, " "e.g. :class:`pathlib.PurePath`." @@ -379,12 +508,12 @@ msgstr "" "représentant un chemin du système de fichiers, comme :class:`pathlib." "PurePath`." -#: library/os.rst:217 +#: library/os.rst:285 msgid "Return the file system path representation of the object." msgstr "" "Renvoie une représentation de l'objet utilisable par le système de fichiers." -#: library/os.rst:219 +#: library/os.rst:287 msgid "" "The method should only return a :class:`str` or :class:`bytes` object, with " "the preference being for :class:`str`." @@ -392,7 +521,7 @@ msgstr "" "La méthode ne devrait renvoyer que des objets :class:`str` ou :class:" "`bytes`, avec une préférence pour les :class:`str`." -#: library/os.rst:225 +#: library/os.rst:293 msgid "" "Return the value of the environment variable *key* if it exists, or " "*default* if it doesn't. *key*, *default* and the result are str." @@ -401,7 +530,7 @@ msgstr "" "*default* si elle n'existe pas. *key*, *default*, et la valeur renvoyée sont " "des *str*." -#: library/os.rst:228 +#: library/os.rst:296 msgid "" "On Unix, keys and values are decoded with :func:`sys.getfilesystemencoding` " "and ``'surrogateescape'`` error handler. Use :func:`os.getenvb` if you would " @@ -411,12 +540,12 @@ msgstr "" "getfilesystemencoding` et le gestionnaire d'erreurs ``surrogateescape``. " "Utilisez :func:`os.getenvb` si vous voulez utiliser un encodage différent." -#: library/os.rst:232 +#: library/os.rst:300 msgid ":ref:`Availability `: most flavors of Unix, Windows." msgstr "" ":ref:`Disponibilité ` : la plupart des dérivés d'Unix, Windows." -#: library/os.rst:237 +#: library/os.rst:305 msgid "" "Return the value of the environment variable *key* if it exists, or " "*default* if it doesn't. *key*, *default* and the result are bytes." @@ -425,7 +554,7 @@ msgstr "" "*default* si elle n'existe pas. *key*, *default*, et la valeur de retour " "sont des *bytes*." -#: library/os.rst:240 +#: library/os.rst:308 msgid "" ":func:`getenvb` is only available if :data:`supports_bytes_environ` is " "``True``." @@ -433,11 +562,11 @@ msgstr "" ":func:`getenvb` n'est disponible que si :data:`supports_bytes_environ` vaut " "``True``." -#: library/os.rst:244 +#: library/os.rst:312 msgid ":ref:`Availability `: most flavors of Unix." msgstr ":ref:`Disponibilité ` : la plupart des dérivés Unix." -#: library/os.rst:250 +#: library/os.rst:318 msgid "" "Returns the list of directories that will be searched for a named " "executable, similar to a shell, when launching a process. *env*, when " @@ -450,7 +579,7 @@ msgstr "" "rechercher le PATH. Par défaut quand *env* est ``None``, :data:`environ` est " "utilisé." -#: library/os.rst:261 +#: library/os.rst:329 msgid "" "Return the effective group id of the current process. This corresponds to " "the \"set id\" bit on the file being executed in the current process." @@ -458,15 +587,15 @@ msgstr "" "Renvoie l'identifiant du groupe effectif du processus actuel. Ça correspond " "au bit \"*set id*\" du fichier qui s'exécute dans le processus actuel." -#: library/os.rst:271 +#: library/os.rst:339 msgid "Return the current process's effective user id." msgstr "Renvoie l'identifiant de l'utilisateur effectif du processus actuel." -#: library/os.rst:280 +#: library/os.rst:348 msgid "Return the real group id of the current process." msgstr "Renvoie l'identifiant de groupe réel du processus actuel." -#: library/os.rst:287 +#: library/os.rst:355 msgid "" "Return list of group ids that *user* belongs to. If *group* is not in the " "list, it is included; typically, *group* is specified as the group ID field " @@ -476,16 +605,17 @@ msgstr "" "*group* n'est pas dans la liste, il y est inclus. Typiquement, *group* vaut " "le *group ID* de l'enregistrement *passwd* de *user*." -#: library/os.rst:298 +#: library/os.rst:366 msgid "" "Return list of supplemental group ids associated with the current process." msgstr "" "Renvoie une liste d'identifiants de groupes additionnels associés au " "processus actuel." -#: library/os.rst:304 +#: library/os.rst:372 +#, fuzzy msgid "" -"On Mac OS X, :func:`getgroups` behavior differs somewhat from other Unix " +"On macOS, :func:`getgroups` behavior differs somewhat from other Unix " "platforms. If the Python interpreter was built with a deployment target of :" "const:`10.5` or earlier, :func:`getgroups` returns the list of effective " "group ids associated with the current user process; this list is limited to " @@ -514,7 +644,7 @@ msgstr "" "valeur de la cible de déploiement, :const:`MACOSX_DEPLOYMENT_TARGET`, peut " "être obtenue par la fonction :func:`sysconfig.get_config_var`." -#: library/os.rst:321 +#: library/os.rst:389 msgid "" "Return the name of the user logged in on the controlling terminal of the " "process. For most purposes, it is more useful to use :func:`getpass." @@ -529,13 +659,13 @@ msgstr "" "l'utilisateur, et se replie finalement sur ``pwd.getpwduid(os.getuid())[0]`` " "pour avoir le nom lié à l'identifiant de l'utilisateur courant." -#: library/os.rst:363 library/os.rst:869 library/os.rst:1435 -#: library/os.rst:2096 library/os.rst:2918 library/os.rst:3905 -#: library/os.rst:3992 library/os.rst:4016 +#: library/os.rst:431 library/os.rst:943 library/os.rst:1567 +#: library/os.rst:2228 library/os.rst:3050 library/os.rst:4133 +#: library/os.rst:4238 library/os.rst:4262 msgid ":ref:`Availability `: Unix, Windows." msgstr ":ref:`Disponibilité ` : Unix, Windows." -#: library/os.rst:333 +#: library/os.rst:401 msgid "" "Return the process group id of the process with process id *pid*. If *pid* " "is 0, the process group id of the current process is returned." @@ -544,15 +674,15 @@ msgstr "" "*pid* vaut 0, l'identifiant de groupe de processus du processus actuel est " "renvoyé." -#: library/os.rst:342 +#: library/os.rst:410 msgid "Return the id of the current process group." msgstr "Renvoie l'identifiant du groupe de processus actuel." -#: library/os.rst:351 +#: library/os.rst:419 msgid "Return the current process id." msgstr "Renvoie l'identifiant du processus actuel." -#: library/os.rst:358 +#: library/os.rst:426 msgid "" "Return the parent's process id. When the parent process has exited, on Unix " "the id returned is the one of the init process (1), on Windows it is still " @@ -563,11 +693,11 @@ msgstr "" "Windows, c'est toujours le même id, qui peut déjà avoir été réutilisé par un " "autre processus." -#: library/os.rst:364 +#: library/os.rst:432 msgid "Added support for Windows." msgstr "Prise en charge sur Windows." -#: library/os.rst:372 +#: library/os.rst:440 msgid "" "Get program scheduling priority. The value *which* is one of :const:" "`PRIO_PROCESS`, :const:`PRIO_PGRP`, or :const:`PRIO_USER`, and *who* is " @@ -586,13 +716,13 @@ msgstr "" "processus appelant, le groupe de processus du processus appelant, ou " "l'identifiant d'utilisateur réel du processus appelant." -#: library/os.rst:389 +#: library/os.rst:457 msgid "" "Parameters for the :func:`getpriority` and :func:`setpriority` functions." msgstr "" "Paramètres pour les fonctions :func:`getpriority` et :func:`setpriority`." -#: library/os.rst:398 +#: library/os.rst:466 msgid "" "Return a tuple (ruid, euid, suid) denoting the current process's real, " "effective, and saved user ids." @@ -600,7 +730,7 @@ msgstr "" "Renvoie un triplet (*ruid*, *euid*, *suid*) dénotant les identifiants de " "l'utilisateur réel, effectif et sauvé du processus actuel." -#: library/os.rst:408 +#: library/os.rst:476 msgid "" "Return a tuple (rgid, egid, sgid) denoting the current process's real, " "effective, and saved group ids." @@ -608,11 +738,11 @@ msgstr "" "Renvoie un triplet (*rgid*, *egid*, *sgid*) dénotant les identifiants des " "groupes de processus réel effectif, et sauvé du processus actuel." -#: library/os.rst:420 +#: library/os.rst:488 msgid "Return the current process's real user id." msgstr "Renvoie l'identifiant réel du processus actuel." -#: library/os.rst:427 +#: library/os.rst:495 msgid "" "Call the system initgroups() to initialize the group access list with all of " "the groups of which the specified username is a member, plus the specified " @@ -622,7 +752,7 @@ msgstr "" "groupes d'accès des groupes dont *username* est membre, plus le groupe " "spécifié par *gid*." -#: library/os.rst:440 +#: library/os.rst:508 msgid "" "Set the environment variable named *key* to the string *value*. Such " "changes to the environment affect subprocesses started with :func:`os." @@ -632,7 +762,7 @@ msgstr "" "De tels changements à l'environnement affectent les sous-processus lancés " "par :func:`os.system`, :func:`popen` ou :func:`fork` et :func:`execv`." -#: library/os.rst:444 +#: library/os.rst:512 #, fuzzy msgid "" "Assignments to items in ``os.environ`` are automatically translated into " @@ -646,41 +776,41 @@ msgstr "" "environ`` à jour. Il est donc préférable d'assigner les éléments de ``os." "environ``." -#: library/os.rst:451 +#: library/os.rst:519 #, fuzzy msgid "" -"On some platforms, including FreeBSD and Mac OS X, setting ``environ`` may " +"On some platforms, including FreeBSD and macOS, setting ``environ`` may " "cause memory leaks. Refer to the system documentation for :c:func:`putenv`." msgstr "" "Sur certaines plate-formes, dont FreeBSD et Mac OS X, procéder à des " "assignations sur ``environ`` peut causer des fuites de mémoire. Referez-vous " "à la documentation système de :func:`putenv`." -#: library/os.rst:454 +#: library/os.rst:522 msgid "" "Raises an :ref:`auditing event ` ``os.putenv`` with arguments " "``key``, ``value``." msgstr "" -#: library/os.rst:456 +#: library/os.rst:524 #, fuzzy msgid "The function is now always available." msgstr "Cette fonction n'est pas disponible sur MacOS." -#: library/os.rst:462 +#: library/os.rst:530 msgid "Set the current process's effective group id." msgstr "" "Définit l'identifiant du groupe de processus effectif du processus actuel." -#: library/os.rst:469 +#: library/os.rst:537 msgid "Set the current process's effective user id." msgstr "Définit l'identifiant de l'utilisateur effectif du processus actuel." -#: library/os.rst:476 +#: library/os.rst:544 msgid "Set the current process' group id." msgstr "Définit l'identifiant du groupe de processus actuel." -#: library/os.rst:483 +#: library/os.rst:551 msgid "" "Set the list of supplemental group ids associated with the current process " "to *groups*. *groups* must be a sequence, and each element must be an " @@ -692,12 +822,13 @@ msgstr "" "nombre entier identifiant un groupe. Cette opération est typiquement " "disponible uniquement pour le super utilisateur." -#: library/os.rst:489 +#: library/os.rst:557 +#, fuzzy msgid "" -"On Mac OS X, the length of *groups* may not exceed the system-defined " -"maximum number of effective group ids, typically 16. See the documentation " -"for :func:`getgroups` for cases where it may not return the same group list " -"set by calling setgroups()." +"On macOS, the length of *groups* may not exceed the system-defined maximum " +"number of effective group ids, typically 16. See the documentation for :func:" +"`getgroups` for cases where it may not return the same group list set by " +"calling setgroups()." msgstr "" "Sur Mac OS X, la longueur de *groups* ne peut pas dépasser le nombre maximum " "d'identifiants effectifs de groupes défini par le système, typiquement 16. " @@ -705,7 +836,7 @@ msgstr "" "renvoie pas la même liste de groupes que celle définie par l'appel à " "*setgroups*." -#: library/os.rst:496 +#: library/os.rst:564 msgid "" "Call the system call :c:func:`setpgrp` or ``setpgrp(0, 0)`` depending on " "which version is implemented (if any). See the Unix manual for the " @@ -715,7 +846,7 @@ msgstr "" "version implémentée (s'il y en a une). Voir le manuel Unix pour la " "sémantique de l'opération." -#: library/os.rst:504 +#: library/os.rst:572 msgid "" "Call the system call :c:func:`setpgid` to set the process group id of the " "process with id *pid* to the process group with id *pgrp*. See the Unix " @@ -726,7 +857,7 @@ msgstr "" "groupe de processus d'identifiant *pgrp*. Voir le manuel Unix pour la " "sémantique." -#: library/os.rst:515 +#: library/os.rst:583 msgid "" "Set program scheduling priority. The value *which* is one of :const:" "`PRIO_PROCESS`, :const:`PRIO_PGRP`, or :const:`PRIO_USER`, and *who* is " @@ -749,29 +880,29 @@ msgstr "" "entre ``-20`` et ``19``. La priorité par défaut est 0 ; les priorités plus " "faibles amènent à un ordonnancement plus favorable." -#: library/os.rst:532 +#: library/os.rst:600 msgid "Set the current process's real and effective group ids." msgstr "" "Définit l'identifiant des groupes réel et effectif du processus actuel." -#: library/os.rst:539 +#: library/os.rst:607 msgid "Set the current process's real, effective, and saved group ids." msgstr "" "Définit l'identifiant des groupes réel, effectif et sauvé du processus " "actuel." -#: library/os.rst:548 +#: library/os.rst:616 msgid "Set the current process's real, effective, and saved user ids." msgstr "" "Définit l'identifiant des utilisateurs réel, effectif et sauvé du processus " "actuel." -#: library/os.rst:557 +#: library/os.rst:625 msgid "Set the current process's real and effective user ids." msgstr "" "Définit l'identifiant des utilisateurs réel et effectif du processus actuel." -#: library/os.rst:564 +#: library/os.rst:632 msgid "" "Call the system call :c:func:`getsid`. See the Unix manual for the " "semantics." @@ -779,7 +910,7 @@ msgstr "" "Produit l'appel système :c:func:`getsid`. Voir le manuel Unix pour la " "sémantique." -#: library/os.rst:571 +#: library/os.rst:639 msgid "" "Call the system call :c:func:`setsid`. See the Unix manual for the " "semantics." @@ -787,11 +918,11 @@ msgstr "" "Produit l'appel système :c:func:`setsid`. Voir le manuel Unix pour la " "sémantique." -#: library/os.rst:580 +#: library/os.rst:648 msgid "Set the current process's user id." msgstr "Définit l'identifiant de l'utilisateur du processus actuel." -#: library/os.rst:588 +#: library/os.rst:656 msgid "" "Return the error message corresponding to the error code in *code*. On " "platforms where :c:func:`strerror` returns ``NULL`` when given an unknown " @@ -801,7 +932,7 @@ msgstr "" "plate-formes où :c:func:`strerror` renvoie ``NULL`` quand un numéro d'erreur " "inconnu est donné, une :exc:`ValueError` est levée." -#: library/os.rst:595 +#: library/os.rst:663 msgid "" "``True`` if the native OS type of the environment is bytes (eg. ``False`` on " "Windows)." @@ -809,11 +940,11 @@ msgstr "" "``True`` si le type natif de l'environnement du système d'exploitation est " "*bytes* (par exemple : ``False`` sur Windows)." -#: library/os.rst:603 +#: library/os.rst:671 msgid "Set the current numeric umask and return the previous umask." msgstr "Définit le *umask* actuel et renvoie la valeur précédente." -#: library/os.rst:612 +#: library/os.rst:680 msgid "" "Returns information identifying the current operating system. The return " "value is an object with five attributes:" @@ -821,29 +952,29 @@ msgstr "" "Renvoie des informations identifiant le système d'exploitation actuel. La " "valeur de retour est un objet à cinq attributs :" -#: library/os.rst:615 +#: library/os.rst:683 msgid ":attr:`sysname` - operating system name" msgstr ":attr:`sysname` — nom du système d'exploitation" -#: library/os.rst:616 +#: library/os.rst:684 msgid ":attr:`nodename` - name of machine on network (implementation-defined)" msgstr "" ":attr:`nodename` — nom de la machine sur le réseau (dépendant de " "l'implémentation)" -#: library/os.rst:617 +#: library/os.rst:685 msgid ":attr:`release` - operating system release" msgstr ":attr:`release` — *release* du système d'exploitation" -#: library/os.rst:618 +#: library/os.rst:686 msgid ":attr:`version` - operating system version" msgstr ":attr:`version` — version du système d'exploitation" -#: library/os.rst:619 +#: library/os.rst:687 msgid ":attr:`machine` - hardware identifier" msgstr ":attr:`machine` — identifiant du matériel" -#: library/os.rst:621 +#: library/os.rst:689 msgid "" "For backwards compatibility, this object is also iterable, behaving like a " "five-tuple containing :attr:`sysname`, :attr:`nodename`, :attr:`release`, :" @@ -853,7 +984,7 @@ msgstr "" "comme un quintuplet contenant :attr:`sysname`, :attr:`nodename`, :attr:" "`release`, :attr:`version`, et :attr:`machine` dans cet ordre." -#: library/os.rst:626 +#: library/os.rst:694 msgid "" "Some systems truncate :attr:`nodename` to 8 characters or to the leading " "component; a better way to get the hostname is :func:`socket.gethostname` " @@ -864,11 +995,11 @@ msgstr "" "func:`socket.gethostname` ou encore ``socket.gethostbyaddr(socket." "gethostname())``." -#: library/os.rst:632 +#: library/os.rst:700 msgid ":ref:`Availability `: recent flavors of Unix." msgstr ":ref:`Disponibilité ` : dérivés récents de Unix." -#: library/os.rst:4017 +#: library/os.rst:4263 msgid "" "Return type changed from a tuple to a tuple-like object with named " "attributes." @@ -876,7 +1007,7 @@ msgstr "" "type de retour changé d'un quintuplet en un objet compatible avec le type " "*n*-uplet, avec des attributs nommés." -#: library/os.rst:642 +#: library/os.rst:710 msgid "" "Unset (delete) the environment variable named *key*. Such changes to the " "environment affect subprocesses started with :func:`os.system`, :func:" @@ -886,7 +1017,7 @@ msgstr "" "l'environnement affectent les sous-processus lancés avec :func:`os.system`, :" "func:`popen` ou :func:`fork` et :func:`execv`." -#: library/os.rst:646 +#: library/os.rst:714 #, fuzzy msgid "" "Deletion of items in ``os.environ`` is automatically translated into a " @@ -899,22 +1030,22 @@ msgstr "" "`unsetenv`, mais les appels à :func:`unsetenv` ne mettent pas ``os.environ`` " "à jour. Donc il est préférable de supprimer les éléments de ``os.environ``." -#: library/os.rst:651 +#: library/os.rst:719 msgid "" "Raises an :ref:`auditing event ` ``os.unsetenv`` with argument " "``key``." msgstr "" -#: library/os.rst:653 +#: library/os.rst:721 #, fuzzy msgid "The function is now always available and is also available on Windows." msgstr "Les constantes ci-dessus sont uniquement disponibles sur Windows." -#: library/os.rst:660 +#: library/os.rst:728 msgid "File Object Creation" msgstr "Création de fichiers objets" -#: library/os.rst:662 +#: library/os.rst:730 #, fuzzy msgid "" "These functions create new :term:`file objects `. (See also :" @@ -923,7 +1054,7 @@ msgstr "" "Cette fonction crée de nouveaux :term:`fichiers objets `. (Voir " "aussi :func:`~os.open` pour ouvrir des descripteurs de fichiers)." -#: library/os.rst:668 +#: library/os.rst:736 msgid "" "Return an open file object connected to the file descriptor *fd*. This is " "an alias of the :func:`open` built-in function and accepts the same " @@ -935,18 +1066,18 @@ msgstr "" "La seule différence est que le premier argument de :func:`fdopen` doit " "toujours être un entier." -#: library/os.rst:677 +#: library/os.rst:745 msgid "File Descriptor Operations" msgstr "Opérations sur les descripteurs de fichiers" -#: library/os.rst:679 +#: library/os.rst:747 msgid "" "These functions operate on I/O streams referenced using file descriptors." msgstr "" "Ces fonctions opèrent sur des flux d'entrées/sorties référencés par des " "descripteurs de fichiers." -#: library/os.rst:681 +#: library/os.rst:749 msgid "" "File descriptors are small integers corresponding to a file that has been " "opened by the current process. For example, standard input is usually file " @@ -964,7 +1095,7 @@ msgstr "" "connecteurs (*socket* en anglais) et les tubes (*pipe* en anglais) sont " "également référencés par des descripteurs." -#: library/os.rst:688 +#: library/os.rst:756 msgid "" "The :meth:`~io.IOBase.fileno` method can be used to obtain the file " "descriptor associated with a :term:`file object` when required. Note that " @@ -977,11 +1108,11 @@ msgstr "" "fichier objet, ignorant donc des aspects tels que la mise en tampon interne " "des données." -#: library/os.rst:696 +#: library/os.rst:764 msgid "Close file descriptor *fd*." msgstr "Ferme le descripteur de fichier *fd*." -#: library/os.rst:700 +#: library/os.rst:768 msgid "" "This function is intended for low-level I/O and must be applied to a file " "descriptor as returned by :func:`os.open` or :func:`pipe`. To close a " @@ -994,7 +1125,7 @@ msgstr "" "la primitive :func:`open`, :func:`popen` ou :func:`fdopen`, il faut utiliser " "sa méthode :meth:`~io.IOBase.close`." -#: library/os.rst:708 +#: library/os.rst:776 msgid "" "Close all file descriptors from *fd_low* (inclusive) to *fd_high* " "(exclusive), ignoring errors. Equivalent to (but much faster than)::" @@ -1003,7 +1134,7 @@ msgstr "" "*fd_high* (exclus), en ignorant les erreurs. Équivalent (mais beaucoup plus " "rapide) à ::" -#: library/os.rst:720 +#: library/os.rst:788 msgid "" "Copy *count* bytes from file descriptor *src*, starting from offset " "*offset_src*, to file descriptor *dst*, starting from offset *offset_dst*. " @@ -1013,7 +1144,7 @@ msgid "" "attr:`~OSError.errno` set to :data:`errno.EXDEV`." msgstr "" -#: library/os.rst:727 +#: library/os.rst:1443 msgid "" "This copy is done without the additional cost of transferring data from the " "kernel to user space and then back into the kernel. Additionally, some " @@ -1021,19 +1152,19 @@ msgid "" "files are opened as binary." msgstr "" -#: library/os.rst:732 +#: library/os.rst:800 msgid "" "The return value is the amount of bytes copied. This could be less than the " "amount requested." msgstr "" -#: library/os.rst:736 +#: library/os.rst:804 msgid "" ":ref:`Availability `: Linux kernel >= 4.5 or glibc >= 2.27." msgstr "" ":ref:`Disponibilité `: noyaux Linux >= 4.5 ou glibc >= 2.27." -#: library/os.rst:742 +#: library/os.rst:810 msgid "" "Return a string describing the encoding of the device associated with *fd* " "if it is connected to a terminal; else return :const:`None`." @@ -1041,7 +1172,17 @@ msgstr "" "Renvoie une chaîne de caractères décrivant l'encodage du périphérique " "associé à *fd* s'il est connecté à un terminal, sinon renvoie :const:`None`." -#: library/os.rst:748 +#: library/os.rst:813 +msgid "" +"On Unix, if the :ref:`Python UTF-8 Mode ` is enabled, return " +"``'UTF-8'`` rather than the device encoding." +msgstr "" + +#: library/os.rst:816 +msgid "On Unix, the function now implements the Python UTF-8 Mode." +msgstr "" + +#: library/os.rst:822 msgid "" "Return a duplicate of file descriptor *fd*. The new file descriptor is :ref:" "`non-inheritable `." @@ -1049,7 +1190,7 @@ msgstr "" "Renvoie une copie du descripteur de fichier *fd*. Le nouveau descripteur de " "fichier est :ref:`non-héritable `." -#: library/os.rst:751 +#: library/os.rst:825 msgid "" "On Windows, when duplicating a standard stream (0: stdin, 1: stdout, 2: " "stderr), the new file descriptor is :ref:`inheritable `." @@ -1058,11 +1199,11 @@ msgstr "" "2 : *stderr*), le nouveau descripteur de fichier est :ref:`héritable " "`." -#: library/os.rst:957 +#: library/os.rst:1031 msgid "The new file descriptor is now non-inheritable." msgstr "Le nouveau descripteur de fichier est maintenant non-héritable." -#: library/os.rst:761 +#: library/os.rst:835 msgid "" "Duplicate file descriptor *fd* to *fd2*, closing the latter first if " "necessary. Return *fd2*. The new file descriptor is :ref:`inheritable " @@ -1074,16 +1215,16 @@ msgstr "" "ref:`héritable ` par défaut, ou non-héritable si " "*inheritable* vaut ``False``." -#: library/os.rst:766 +#: library/os.rst:840 msgid "Add the optional *inheritable* parameter." msgstr "Ajout du paramètre optionnel *inheritable*." -#: library/os.rst:769 +#: library/os.rst:843 msgid "Return *fd2* on success. Previously, ``None`` was always returned." msgstr "" "Renvoie *fd2* en cas de succès. Auparavant, ``None`` était toujours renvoyé." -#: library/os.rst:775 +#: library/os.rst:849 msgid "" "Change the mode of the file given by *fd* to the numeric *mode*. See the " "docs for :func:`chmod` for possible values of *mode*. As of Python 3.3, " @@ -1093,13 +1234,13 @@ msgstr "" "la documentation de :func:`chmod` pour les valeurs possibles de *mode*. " "Depuis Python 3.3, c'est équivalent à ``os.chmod(fd, mode)``." -#: library/os.rst:1701 library/os.rst:1792 +#: library/os.rst:1833 library/os.rst:1924 msgid "" "Raises an :ref:`auditing event ` ``os.chmod`` with arguments " "``path``, ``mode``, ``dir_fd``." msgstr "" -#: library/os.rst:786 +#: library/os.rst:860 msgid "" "Change the owner and group id of the file given by *fd* to the numeric *uid* " "and *gid*. To leave one of the ids unchanged, set it to -1. See :func:" @@ -1110,13 +1251,13 @@ msgstr "" "inchangés, mettez-le à ``-1``. Voir :func:`chown`. Depuis Python 3.3, c'est " "équivalent à ``os.chown(fd, uid, gid)``." -#: library/os.rst:1723 library/os.rst:1805 +#: library/os.rst:1855 library/os.rst:1937 msgid "" "Raises an :ref:`auditing event ` ``os.chown`` with arguments " "``path``, ``uid``, ``gid``, ``dir_fd``." msgstr "" -#: library/os.rst:798 +#: library/os.rst:872 msgid "" "Force write of file with filedescriptor *fd* to disk. Does not force update " "of metadata." @@ -1124,11 +1265,11 @@ msgstr "" "Force l'écriture du fichier ayant le descripteur *fd* sur le disque. Ne " "force pas la mise à jour des méta-données." -#: library/os.rst:804 +#: library/os.rst:878 msgid "This function is not available on MacOS." msgstr "Cette fonction n'est pas disponible sur MacOS." -#: library/os.rst:809 +#: library/os.rst:883 msgid "" "Return system configuration information relevant to an open file. *name* " "specifies the configuration value to retrieve; it may be a string which is " @@ -1148,7 +1289,7 @@ msgstr "" "sont pas inclues dans ce *mapping*, passer un entier pour *name* est " "également accepté." -#: library/os.rst:2053 +#: library/os.rst:2185 msgid "" "If *name* is a string and is not known, :exc:`ValueError` is raised. If a " "specific value for *name* is not supported by the host system, even if it is " @@ -1160,11 +1301,11 @@ msgstr "" "par le système hôte, même si elle est incluse dans ``pathconf_names``, une :" "exc:`OSError` est levée avec :const:`errno.EINVAL` pour code d'erreur." -#: library/os.rst:822 +#: library/os.rst:896 msgid "As of Python 3.3, this is equivalent to ``os.pathconf(fd, name)``." msgstr "Depuis Python 3.3, c'est équivalent à ``os.pathconf(fd, name)``." -#: library/os.rst:829 +#: library/os.rst:903 msgid "" "Get the status of the file descriptor *fd*. Return a :class:`stat_result` " "object." @@ -1172,15 +1313,15 @@ msgstr "" "Récupère le statut du descripteur de fichier *fd*. Renvoie un objet :class:" "`stat_result`." -#: library/os.rst:832 +#: library/os.rst:906 msgid "As of Python 3.3, this is equivalent to ``os.stat(fd)``." msgstr "Depuis Python 3.3, c'est équivalent à ``os.stat(fd)``." -#: library/os.rst:1889 +#: library/os.rst:2021 msgid "The :func:`.stat` function." msgstr "La fonction :func:`.stat`." -#: library/os.rst:841 +#: library/os.rst:915 msgid "" "Return information about the filesystem containing the file associated with " "file descriptor *fd*, like :func:`statvfs`. As of Python 3.3, this is " @@ -1190,7 +1331,7 @@ msgstr "" "associé au descripteur *fd*, comme :func:`statvfs`. Depuis Python 3.3, c'est " "équivalent à ``os.statvfs(fd)``." -#: library/os.rst:850 +#: library/os.rst:924 msgid "" "Force write of file with filedescriptor *fd* to disk. On Unix, this calls " "the native :c:func:`fsync` function; on Windows, the MS :c:func:`_commit` " @@ -1200,7 +1341,7 @@ msgstr "" "Unix, cet appel appel la fonction native :c:func:`fsync`, sur Windows, la " "fonction MS :c:func:`_commit`." -#: library/os.rst:853 +#: library/os.rst:927 msgid "" "If you're starting with a buffered Python :term:`file object` *f*, first do " "``f.flush()``, and then do ``os.fsync(f.fileno())``, to ensure that all " @@ -1211,7 +1352,7 @@ msgstr "" "fileno())`` pour être sûr que tous les tampons internes associés à *f* " "soient écrits sur le disque." -#: library/os.rst:862 +#: library/os.rst:936 msgid "" "Truncate the file corresponding to file descriptor *fd*, so that it is at " "most *length* bytes in size. As of Python 3.3, this is equivalent to ``os." @@ -1221,17 +1362,17 @@ msgstr "" "long de *length* *bytes*. Depuis Python 3.3, c'est équivalent à ``os." "truncate(fd, length)``." -#: library/os.rst:866 +#: library/os.rst:940 msgid "" "Raises an :ref:`auditing event ` ``os.truncate`` with arguments " "``fd``, ``length``." msgstr "" -#: library/os.rst:2921 +#: library/os.rst:3053 msgid "Added support for Windows" msgstr "Prise en charge de Windows" -#: library/os.rst:876 +#: library/os.rst:950 msgid "" "Get the blocking mode of the file descriptor: ``False`` if the :data:" "`O_NONBLOCK` flag is set, ``True`` if the flag is cleared." @@ -1240,12 +1381,12 @@ msgstr "" "l'indicateur :data:`O_NONBLOCK` est mis, et ``True`` si l'indicateur est " "effacé." -#: library/os.rst:879 +#: library/os.rst:953 msgid "See also :func:`set_blocking` and :meth:`socket.socket.setblocking`." msgstr "" "Voir également :func:`set_blocking` et :meth:`socket.socket.setblocking`." -#: library/os.rst:888 +#: library/os.rst:962 msgid "" "Return ``True`` if the file descriptor *fd* is open and connected to a tty(-" "like) device, else ``False``." @@ -1253,7 +1394,7 @@ msgstr "" "Renvoie ``True`` si le descripteur de fichier *fd* est ouvert et connecté à " "un périphérique TTY (ou compatible), sinon ``False``." -#: library/os.rst:894 +#: library/os.rst:968 msgid "" "Apply, test or remove a POSIX lock on an open file descriptor. *fd* is an " "open file descriptor. *cmd* specifies the command to use - one of :data:" @@ -1266,17 +1407,17 @@ msgstr "" "`F_TLOCK`, :data:`F_ULOCK`, ou :data:`F_TEST`). *len* spécifie la section du " "fichier à verrouiller." -#: library/os.rst:900 +#: library/os.rst:974 msgid "" "Raises an :ref:`auditing event ` ``os.lockf`` with arguments " "``fd``, ``cmd``, ``len``." msgstr "" -#: library/os.rst:912 +#: library/os.rst:986 msgid "Flags that specify what action :func:`lockf` will take." msgstr "Indicateurs spécifiant quelle action :func:`lockf` va prendre." -#: library/os.rst:921 +#: library/os.rst:995 msgid "" "Set the current position of file descriptor *fd* to position *pos*, modified " "by *how*: :const:`SEEK_SET` or ``0`` to set the position relative to the " @@ -1292,7 +1433,7 @@ msgstr "" "la placer par rapport à la fin du fichier. Renvoie la nouvelle position du " "curseur en bytes, à partir du début." -#: library/os.rst:932 +#: library/os.rst:1006 msgid "" "Parameters to the :func:`lseek` function. Their values are 0, 1, and 2, " "respectively." @@ -1300,7 +1441,7 @@ msgstr "" "Paramètres de la fonction :func:`lseek`. Leur valeur est respectivement 0, " "1, et 2." -#: library/os.rst:935 +#: library/os.rst:1009 msgid "" "Some operating systems could support additional values, like :data:`os." "SEEK_HOLE` or :data:`os.SEEK_DATA`." @@ -1308,7 +1449,7 @@ msgstr "" "Certains systèmes d'exploitation pourraient gérer des valeurs additionnelles " "telles que :data:`os.SEEK_HOLE` ou :data:`os.SEEK_DATA`." -#: library/os.rst:942 +#: library/os.rst:1016 msgid "" "Open the file *path* and set various flags according to *flags* and possibly " "its mode according to *mode*. When computing *mode*, the current umask " @@ -1321,7 +1462,7 @@ msgstr "" "fichier nouvellement ouvert. Le nouveau descripteur de fichier est :ref:`non-" "héritable `." -#: library/os.rst:947 +#: library/os.rst:1021 msgid "" "For a description of the flag and mode values, see the C run-time " "documentation; flag constants (like :const:`O_RDONLY` and :const:`O_WRONLY`) " @@ -1334,7 +1475,7 @@ msgstr "" "module :mod:`os`. En particulier, sur Windows, ajouter :const:`O_BINARY` est " "nécessaire pour ouvrir des fichiers en binaire." -#: library/os.rst:952 +#: library/os.rst:1026 msgid "" "This function can support :ref:`paths relative to directory descriptors " "` with the *dir_fd* parameter." @@ -1342,13 +1483,13 @@ msgstr "" "Cette fonction prend en charge des :ref:`chemins relatifs à des descripteurs " "de répertoires ` avec le paramètre *dir_fd*." -#: library/os.rst:955 +#: library/os.rst:1029 msgid "" "Raises an :ref:`auditing event ` ``open`` with arguments ``path``, " "``mode``, ``flags``." msgstr "" -#: library/os.rst:962 +#: library/os.rst:1036 msgid "" "This function is intended for low-level I/O. For normal usage, use the " "built-in function :func:`open`, which returns a :term:`file object` with :" @@ -1361,11 +1502,11 @@ msgstr "" "Pour envelopper un descripteur de fichier dans un fichier objet, utilisez :" "func:`fdopen`." -#: library/os.rst:1929 library/os.rst:2019 library/os.rst:2131 +#: library/os.rst:2061 library/os.rst:2151 library/os.rst:2263 msgid "The *dir_fd* argument." msgstr "L'argument *dir_fd*." -#: library/os.rst:1264 library/os.rst:4138 +#: library/os.rst:1363 library/os.rst:4384 msgid "" "If the system call is interrupted and the signal handler does not raise an " "exception, the function now retries the system call instead of raising an :" @@ -1375,15 +1516,15 @@ msgstr "" "aucune exception, la fonction réessaye l'appel système au lieu de lever une :" "exc:`InterruptedError` (voir la :pep:`475` à propos du raisonnement)." -#: library/os.rst:1598 library/os.rst:1661 library/os.rst:1741 -#: library/os.rst:1796 library/os.rst:1868 library/os.rst:1932 -#: library/os.rst:2000 library/os.rst:2063 library/os.rst:2153 -#: library/os.rst:2512 library/os.rst:2924 library/os.rst:2980 -#: library/os.rst:3139 library/os.rst:3405 library/os.rst:3893 +#: library/os.rst:1730 library/os.rst:1793 library/os.rst:1873 +#: library/os.rst:1928 library/os.rst:2000 library/os.rst:2064 +#: library/os.rst:2132 library/os.rst:2195 library/os.rst:2285 +#: library/os.rst:2644 library/os.rst:3056 library/os.rst:3112 +#: library/os.rst:3271 library/os.rst:3633 library/os.rst:4121 msgid "Accepts a :term:`path-like object`." msgstr "Accepte un :term:`path-like object`." -#: library/os.rst:978 +#: library/os.rst:1052 msgid "" "The following constants are options for the *flags* parameter to the :func:" "`~os.open` function. They can be combined using the bitwise OR operator ``|" @@ -1399,23 +1540,34 @@ msgstr "" "consultez la page de manuel Unix :manpage:`open(2)` ou la `MSDN `_ sur Windows." -#: library/os.rst:993 +#: library/os.rst:1067 msgid "The above constants are available on Unix and Windows." msgstr "Les constantes ci-dessus sont disponibles sur Unix et Windows." -#: library/os.rst:1004 +#: library/os.rst:1078 msgid "The above constants are only available on Unix." msgstr "Les constantes ci-dessus sont uniquement disponibles sur Unix." -#: library/os.rst:1006 +#: library/os.rst:1080 msgid "Add :data:`O_CLOEXEC` constant." msgstr "Ajout de la constante :data:`O_CLOCEXEC`." -#: library/os.rst:1017 +#: library/os.rst:1091 msgid "The above constants are only available on Windows." msgstr "Les constantes ci-dessus sont uniquement disponibles sur Windows." -#: library/os.rst:1030 +#: library/os.rst:1098 +#, fuzzy +msgid "The above constants are only available on macOS." +msgstr "Les constantes ci-dessus sont uniquement disponibles sur Unix." + +#: library/os.rst:1100 +msgid "" +"Add :data:`O_EVTONLY`, :data:`O_FSYNC`, :data:`O_SYMLINK` and :data:" +"`O_NOFOLLOW_ANY` constants." +msgstr "" + +#: library/os.rst:1114 msgid "" "The above constants are extensions and not present if they are not defined " "by the C library." @@ -1423,7 +1575,7 @@ msgstr "" "Les constantes ci-dessus sont des extensions et ne sont pas présentes si " "elles ne sont pas définies par la bibliothèque C." -#: library/os.rst:1033 +#: library/os.rst:1117 msgid "" "Add :data:`O_PATH` on systems that support it. Add :data:`O_TMPFILE`, only " "available on Linux Kernel 3.11 or newer." @@ -1431,7 +1583,7 @@ msgstr "" "Ajout de :data:`O_PATH` sur les systèmes qui le gèrent. Ajout de :data:" "`O_TMPFILE`, uniquement disponible sur Linux Kernel 3.11 ou plus récent." -#: library/os.rst:1043 +#: library/os.rst:1127 msgid "" "Open a new pseudo-terminal pair. Return a pair of file descriptors " "``(master, slave)`` for the pty and the tty, respectively. The new file " @@ -1444,15 +1596,15 @@ msgstr "" "`. Pour une approche (légèrement) plus portable, utilisez le " "module :mod:`pty`." -#: library/os.rst:1075 library/os.rst:3590 +#: library/os.rst:1159 library/os.rst:3818 msgid ":ref:`Availability `: some flavors of Unix." msgstr ":ref:`Disponibilité ` : certains dérivés Unix." -#: library/os.rst:1062 +#: library/os.rst:1146 msgid "The new file descriptors are now non-inheritable." msgstr "Les nouveaux descripteurs de fichiers sont maintenant non-héritables." -#: library/os.rst:1056 +#: library/os.rst:1140 msgid "" "Create a pipe. Return a pair of file descriptors ``(r, w)`` usable for " "reading and writing, respectively. The new file descriptor is :ref:`non-" @@ -1462,7 +1614,7 @@ msgstr "" "``(r, w)`` utilisables respectivement pour lire et pour écrire. Les nouveaux " "descripteurs de fichiers sont :ref:`non-héritables `." -#: library/os.rst:1068 +#: library/os.rst:1152 msgid "" "Create a pipe with *flags* set atomically. *flags* can be constructed by " "ORing together one or more of these values: :data:`O_NONBLOCK`, :data:" @@ -1474,7 +1626,7 @@ msgstr "" "`O_NONBLOCK`, :data:`O_CLOEXEC`. Renvoie une paire de descripteurs de " "fichiers ``(r, w)`` utilisables respectivement pour lire et pour écrire." -#: library/os.rst:1081 +#: library/os.rst:1165 msgid "" "Ensures that enough disk space is allocated for the file specified by *fd* " "starting from *offset* and continuing for *len* bytes." @@ -1482,7 +1634,7 @@ msgstr "" "Assure que suffisamment d'espace sur le disque est alloué pour le fichier " "spécifié par *fd* partant de *offset* et continuant sur *len* bytes." -#: library/os.rst:1091 +#: library/os.rst:1175 msgid "" "Announces an intention to access data in a specific pattern thus allowing " "the kernel to make optimizations. The advice applies to the region of the " @@ -1500,7 +1652,7 @@ msgstr "" "`POSIX_FADV_RANDOM`, :data:`POSIX_FADV_NOREUSE`, :data:" "`POSIX_FADV_WILLNEED`, ou :data:`POSIX_FADV_DONTNEED`." -#: library/os.rst:1111 +#: library/os.rst:1195 msgid "" "Flags that can be used in *advice* in :func:`posix_fadvise` that specify the " "access pattern that is likely to be used." @@ -1509,7 +1661,7 @@ msgstr "" "`posix_fadvise` et qui spécifient le motif d'accès qui est censé être " "utilisé." -#: library/os.rst:1121 +#: library/os.rst:1205 msgid "" "Read at most *n* bytes from file descriptor *fd* at a position of *offset*, " "leaving the file offset unchanged." @@ -1517,7 +1669,7 @@ msgstr "" "Lit au maximum *n* octets depuis le descripteur de fichier *fd* à la " "position *offset* sans modifier cette position." -#: library/os.rst:1253 +#: library/os.rst:1352 msgid "" "Return a bytestring containing the bytes read. If the end of the file " "referred to by *fd* has been reached, an empty bytes object is returned." @@ -1525,7 +1677,7 @@ msgstr "" "Renvoie une chaîne d'octets contenant les octets lus, ou une chaîne d'octets " "vide si la fin du fichier pointé par *fd* est atteinte." -#: library/os.rst:1134 +#: library/os.rst:1218 msgid "" "Read from a file descriptor *fd* at a position of *offset* into mutable :" "term:`bytes-like objects ` *buffers*, leaving the file " @@ -1537,7 +1689,7 @@ msgstr "" "modifier la position dans le fichier. Les données sont transférées dans " "chaque tampon, jusqu'à ce qu'il soit plein, tour à tour." -#: library/os.rst:1209 +#: library/os.rst:1293 msgid "" "The flags argument contains a bitwise OR of zero or more of the following " "flags:" @@ -1545,15 +1697,15 @@ msgstr "" "L'argument *flags* contient un OU logique bit-à-bit de zéro ou plusieurs des " "indicateurs suivants :" -#: library/os.rst:1142 +#: library/os.rst:1226 msgid ":data:`RWF_HIPRI`" msgstr ":data:`RWF_HIPRI`" -#: library/os.rst:1143 +#: library/os.rst:1227 msgid ":data:`RWF_NOWAIT`" msgstr ":data:`RWF_NOWAIT`" -#: library/os.rst:1340 +#: library/os.rst:1472 msgid "" "Return the total number of bytes actually read which can be less than the " "total capacity of all the objects." @@ -1561,7 +1713,7 @@ msgstr "" "Renvoie le nombre total d'octets réellement lus, qui peut être inférieur à " "la capacité totale de tous les objets." -#: library/os.rst:1217 library/os.rst:1405 +#: library/os.rst:1302 library/os.rst:1537 msgid "" "The operating system may set a limit (:func:`sysconf` value " "``'SC_IOV_MAX'``) on the number of buffers that can be used." @@ -1569,11 +1721,11 @@ msgstr "" "Le système d'exploitation peut définir une limite (valeur :func:`sysconf` " "``'SC_IOV_MAX'``) sur le nombre de mémoires tampons pouvant être utilisées." -#: library/os.rst:1151 +#: library/os.rst:1235 msgid "Combine the functionality of :func:`os.readv` and :func:`os.pread`." msgstr "Combine les fonctionnalités de :func:`os.readv` et :func:`os.pread`." -#: library/os.rst:1156 +#: library/os.rst:1240 #, fuzzy msgid "" ":ref:`Availability `: Linux 2.6.30 and newer, FreeBSD 6.0 and " @@ -1584,7 +1736,7 @@ msgstr "" "6.0 et plus récent, OpenBSD 2.7 et plus récent. L'utilisation de *flags* " "requiert Linux 4.6 ou plus récent." -#: library/os.rst:1162 +#: library/os.rst:1246 msgid "" "Do not wait for data which is not immediately available. If this flag is " "specified, the system call will return instantly if it would have to read " @@ -1594,7 +1746,7 @@ msgstr "" "Si cette option est spécifiée, l'appel système retourne instantanément s'il " "doit lire les données du stockage sous-jacent ou attendre un verrou." -#: library/os.rst:1166 +#: library/os.rst:1250 msgid "" "If some data was successfully read, it will return the number of bytes read. " "If no bytes were read, it will return ``-1`` and set errno to :data:`errno." @@ -1604,11 +1756,11 @@ msgstr "" "renvoyé. Si aucun octet n'a été lu, renvoie ``-1`` et affecte à *errno* la " "valeur :data:`errno.EAGAIN`." -#: library/os.rst:1171 +#: library/os.rst:1255 msgid ":ref:`Availability `: Linux 4.14 and newer." msgstr ":ref:`Disponibilité ` : Linux 4.14 et ultérieures." -#: library/os.rst:1177 +#: library/os.rst:1261 msgid "" "High priority read/write. Allows block-based filesystems to use polling of " "the device, which provides lower latency, but may use additional resources." @@ -1617,7 +1769,7 @@ msgstr "" "bloc d'utiliser le *polling* du périphérique, qui fournit une latence " "inférieure, mais peut utiliser des ressources supplémentaires." -#: library/os.rst:1181 +#: library/os.rst:1265 msgid "" "Currently, on Linux, this feature is usable only on a file descriptor opened " "using the :data:`O_DIRECT` flag." @@ -1625,11 +1777,11 @@ msgstr "" "Actuellement, sous Linux, cette fonctionnalité est utilisable uniquement sur " "un descripteur de fichier ouvert à l'aide de l'option :data:`O_DIRECT`." -#: library/os.rst:1185 +#: library/os.rst:1269 msgid ":ref:`Availability `: Linux 4.6 and newer." msgstr ":ref:`Disponibilité ` : Linux 4.6 et ultérieures." -#: library/os.rst:1191 +#: library/os.rst:1275 msgid "" "Write the bytestring in *str* to file descriptor *fd* at position of " "*offset*, leaving the file offset unchanged." @@ -1637,11 +1789,11 @@ msgstr "" "Écrit la chaîne d'octets de *str* dans le descripteur de fichier *fd* à la " "position *offset* en laissant la position dans le fichier inchangée." -#: library/os.rst:1380 +#: library/os.rst:1512 msgid "Return the number of bytes actually written." msgstr "Renvoie le nombre d'octets effectivement écrits." -#: library/os.rst:1203 +#: library/os.rst:1287 msgid "" "Write the *buffers* contents to file descriptor *fd* at a offset *offset*, " "leaving the file offset unchanged. *buffers* must be a sequence of :term:" @@ -1655,24 +1807,29 @@ msgstr "" "object>`. Les tampons sont traités dans l'ordre du tableau. Le contenu " "entier du premier tampon est écrit avant le traitement du second, etc." -#: library/os.rst:1212 +#: library/os.rst:1296 msgid ":data:`RWF_DSYNC`" msgstr ":data:`RWF_DSYNC`" -#: library/os.rst:1213 +#: library/os.rst:1297 msgid ":data:`RWF_SYNC`" msgstr ":data:`RWF_SYNC`" -#: library/os.rst:1215 +#: library/os.rst:1298 +#, fuzzy +msgid ":data:`RWF_APPEND`" +msgstr ":data:`stat.UF_APPEND`" + +#: library/os.rst:1300 msgid "Return the total number of bytes actually written." msgstr "Renvoie le nombre total d'octets effectivement écrits." -#: library/os.rst:1220 +#: library/os.rst:1305 msgid "Combine the functionality of :func:`os.writev` and :func:`os.pwrite`." msgstr "" "Combine les fonctionnalités de :func:`os. writev` et :func:`os. pwrite`." -#: library/os.rst:1225 +#: library/os.rst:1310 #, fuzzy msgid "" ":ref:`Availability `: Linux 2.6.30 and newer, FreeBSD 6.0 and " @@ -1683,33 +1840,50 @@ msgstr "" "6.0 et plus récent, OpenBSD 2.7 et plus récent. L'utilisation de *flags* " "requiert Linux 4.6 ou plus récent." -#: library/os.rst:1231 +#: library/os.rst:1316 +#, fuzzy msgid "" -"Provide a per-write equivalent of the :data:`O_DSYNC` ``open(2)`` flag. This " -"flag effect applies only to the data range written by the system call." +"Provide a per-write equivalent of the :data:`O_DSYNC` :func:`os.open` flag. " +"This flag effect applies only to the data range written by the system call." msgstr "" "Fournit un équivalent par écriture de l'option :data:`O_DSYNC` de " "``open(2)``. L' effet de cette option s'applique uniquement à la plage de " "données écrite par l'appel système." -#: library/os.rst:1245 +#: library/os.rst:1330 msgid ":ref:`Availability `: Linux 4.7 and newer." msgstr ":ref:`Disponibilité ` : Linux 4.7 et ultérieures." -#: library/os.rst:1241 +#: library/os.rst:1326 +#, fuzzy msgid "" -"Provide a per-write equivalent of the :data:`O_SYNC` ``open(2)`` flag. This " -"flag effect applies only to the data range written by the system call." +"Provide a per-write equivalent of the :data:`O_SYNC` :func:`os.open` flag. " +"This flag effect applies only to the data range written by the system call." msgstr "" "Fournit un équivalent par écriture de l'option :data:`O_SYNC` de " "``open(2)``. L'effet de cette option s'applique uniquement à la plage de " "données écrite par l'appel système." -#: library/os.rst:1251 +#: library/os.rst:1336 +msgid "" +"Provide a per-write equivalent of the :data:`O_APPEND` :func:`os.open` flag. " +"This flag is meaningful only for :func:`os.pwritev`, and its effect applies " +"only to the data range written by the system call. The *offset* argument " +"does not affect the write operation; the data is always appended to the end " +"of the file. However, if the *offset* argument is ``-1``, the current file " +"*offset* is updated." +msgstr "" + +#: library/os.rst:1344 +#, fuzzy +msgid ":ref:`Availability `: Linux 4.16 and newer." +msgstr ":ref:`Disponibilité ` : Linux 4.6 et ultérieures." + +#: library/os.rst:1350 msgid "Read at most *n* bytes from file descriptor *fd*." msgstr "Lit au maximum *n* octets du descripteur de fichier *fd*." -#: library/os.rst:1258 +#: library/os.rst:1357 msgid "" "This function is intended for low-level I/O and must be applied to a file " "descriptor as returned by :func:`os.open` or :func:`pipe`. To read a \"file " @@ -1723,7 +1897,7 @@ msgstr "" "func:`popen` ou :func:`fdopen`, ou par :data:`stdin`, utilisez sa méthode :" "meth:`~file.read` ou :meth:`~file.readline`." -#: library/os.rst:1273 +#: library/os.rst:1372 #, fuzzy msgid "" "Copy *count* bytes from file descriptor *in_fd* to file descriptor *out_fd* " @@ -1734,7 +1908,7 @@ msgstr "" "descripteur de fichier *out* en démarrant à *offset*. Renvoie le nombre de " "bytes envoyés. Quand EOF est atteint, renvoie 0." -#: library/os.rst:1277 +#: library/os.rst:1376 msgid "" "The first function notation is supported by all platforms that define :func:" "`sendfile`." @@ -1742,7 +1916,7 @@ msgstr "" "La première notation de fonction est prise en charge par toutes les plate-" "formes qui définissent :func:`sendfile`." -#: library/os.rst:1280 +#: library/os.rst:1379 #, fuzzy msgid "" "On Linux, if *offset* is given as ``None``, the bytes are read from the " @@ -1751,10 +1925,10 @@ msgstr "" "Sur Linux, si *offset* est donné par ``None``, les bytes sont lus depuis la " "position actuelle de *in* et la position de *in* est mise à jour." -#: library/os.rst:1283 +#: library/os.rst:1382 #, fuzzy msgid "" -"The second case may be used on Mac OS X and FreeBSD where *headers* and " +"The second case may be used on macOS and FreeBSD where *headers* and " "*trailers* are arbitrary sequences of buffers that are written before and " "after the data from *in_fd* is written. It returns the same as the first " "case." @@ -1764,16 +1938,16 @@ msgstr "" "et après que les données de *in* ne soient écrites. Renvoie la même chose " "que le premier cas." -#: library/os.rst:1287 +#: library/os.rst:1386 #, fuzzy msgid "" -"On Mac OS X and FreeBSD, a value of ``0`` for *count* specifies to send " -"until the end of *in_fd* is reached." +"On macOS and FreeBSD, a value of ``0`` for *count* specifies to send until " +"the end of *in_fd* is reached." msgstr "" "Sur Mac OS X et FreeBSD, une valeur de 0 pour *count* spécifié d'envoyer " "jusqu'à ce que la fin de *in* ne soit atteinte." -#: library/os.rst:1290 +#: library/os.rst:1389 #, fuzzy msgid "" "All platforms support sockets as *out_fd* file descriptor, and some " @@ -1783,7 +1957,7 @@ msgstr "" "fichier *out*, et certaines plate-formes autorisent d'autres types (par " "exemple, un fichier normal ou un tube) également." -#: library/os.rst:1293 +#: library/os.rst:1392 msgid "" "Cross-platform applications should not use *headers*, *trailers* and *flags* " "arguments." @@ -1791,7 +1965,7 @@ msgstr "" "Les applications multiplate-formes ne devraient pas utiliser les arguments " "*headers*, *trailers*, et *flags*." -#: library/os.rst:1300 +#: library/os.rst:1399 msgid "" "For a higher-level wrapper of :func:`sendfile`, see :meth:`socket.socket." "sendfile`." @@ -1799,11 +1973,11 @@ msgstr "" "Pour une interface de plus haut niveau de :func:`sendfile`, voir :meth:" "`socket.socket.setfile`." -#: library/os.rst:1305 +#: library/os.rst:1404 msgid "Parameters *out* and *in* was renamed to *out_fd* and *in_fd*." msgstr "" -#: library/os.rst:1311 +#: library/os.rst:1410 msgid "" "Set the blocking mode of the specified file descriptor. Set the :data:" "`O_NONBLOCK` flag if blocking is ``False``, clear the flag otherwise." @@ -1812,18 +1986,46 @@ msgstr "" "l'indicateur :data:`O_NONBLOCK` si *blocking* vaut ``False``, efface " "l'indicateur sinon." -#: library/os.rst:1314 +#: library/os.rst:1413 msgid "See also :func:`get_blocking` and :meth:`socket.socket.setblocking`." msgstr "Voir aussi :func:`get_blocking` et :meth:`socket;socket.setblocking`." -#: library/os.rst:1325 +#: library/os.rst:1424 msgid "" "Parameters to the :func:`sendfile` function, if the implementation supports " "them." msgstr "" "Paramètres de la fonction :func:`sendfile`, si l'implémentation les gère." -#: library/os.rst:1335 +#: library/os.rst:1434 +msgid "" +"Transfer *count* bytes from file descriptor *src*, starting from offset " +"*offset_src*, to file descriptor *dst*, starting from offset *offset_dst*. " +"At least one of the file descriptors must refer to a pipe. If *offset_src* " +"is None, then *src* is read from the current position; respectively for " +"*offset_dst*. The offset associated to the file descriptor that refers to a " +"pipe must be ``None``. The files pointed by *src* and *dst* must reside in " +"the same filesystem, otherwise an :exc:`OSError` is raised with :attr:" +"`~OSError.errno` set to :data:`errno.EXDEV`." +msgstr "" + +#: library/os.rst:1448 +msgid "" +"Upon successful completion, returns the number of bytes spliced to or from " +"the pipe. A return value of 0 means end of input. If *src* refers to a pipe, " +"then this means that there was no data to transfer, and it would not make " +"sense to block because there are no writers connected to the write end of " +"the pipe." +msgstr "" + +#: library/os.rst:1455 +#, fuzzy +msgid "" +":ref:`Availability `: Linux kernel >= 2.6.17 and glibc >= 2.5" +msgstr "" +":ref:`Disponibilité `: noyaux Linux >= 4.5 ou glibc >= 2.27." + +#: library/os.rst:1467 msgid "" "Read from a file descriptor *fd* into a number of mutable :term:`bytes-like " "objects ` *buffers*. Transfer data into each buffer until " @@ -1834,7 +2036,7 @@ msgstr "" "bytes-compatibles ` muables : *buffers*. Les données sont " "transférées dans chaque tampon, jusqu'à ce qu'il soit plein, tour à tour." -#: library/os.rst:1353 +#: library/os.rst:1485 msgid "" "Return the process group associated with the terminal given by *fd* (an open " "file descriptor as returned by :func:`os.open`)." @@ -1842,7 +2044,7 @@ msgstr "" "Renvoie le groupe de processus associé au terminal donné par *fd* (un " "descripteur de fichier ouvert comme renvoyé par :func:`os.open`)." -#: library/os.rst:1361 +#: library/os.rst:1493 msgid "" "Set the process group associated with the terminal given by *fd* (an open " "file descriptor as returned by :func:`os.open`) to *pg*." @@ -1850,7 +2052,7 @@ msgstr "" "Place *pg* dans le groupe de processus associé au terminal donné par *fd* " "(un descripteur de fichier ouvert comme renvoyé par :func:`os.open`)." -#: library/os.rst:1369 +#: library/os.rst:1501 msgid "" "Return a string which specifies the terminal device associated with file " "descriptor *fd*. If *fd* is not associated with a terminal device, an " @@ -1860,11 +2062,11 @@ msgstr "" "au descripteur de fichier *fd*. Si *fd* n'est pas associé à un périphérique " "terminal, une exception est levée." -#: library/os.rst:1378 +#: library/os.rst:1510 msgid "Write the bytestring in *str* to file descriptor *fd*." msgstr "Écrit la chaîne d'octets de *str* vers le descripteur de fichier *fd*." -#: library/os.rst:1384 +#: library/os.rst:1516 msgid "" "This function is intended for low-level I/O and must be applied to a file " "descriptor as returned by :func:`os.open` or :func:`pipe`. To write a " @@ -1878,7 +2080,7 @@ msgstr "" "func:`open`, :func:`popen`, ou par :func:`fdopen`, ou par :data:`sys.stdout` " "ou :data:`sys.stderr`, utilisez sa méthode :meth:`~file.write`." -#: library/os.rst:1398 +#: library/os.rst:1530 msgid "" "Write the contents of *buffers* to file descriptor *fd*. *buffers* must be a " "sequence of :term:`bytes-like objects `. Buffers are " @@ -1890,15 +2092,15 @@ msgstr "" "object>`. Les tampons sont traités dans l'ordre du tableau. Le contenu " "entier du premier tampon est écrit avant le traitement du second, etc." -#: library/os.rst:1403 +#: library/os.rst:1535 msgid "Returns the total number of bytes actually written." msgstr "Renvoie le nombre total d'octets effectivement écrits." -#: library/os.rst:1416 +#: library/os.rst:1548 msgid "Querying the size of a terminal" msgstr "Demander la taille d'un terminal" -#: library/os.rst:1422 +#: library/os.rst:1554 msgid "" "Return the size of the terminal window as ``(columns, lines)``, tuple of " "type :class:`terminal_size`." @@ -1906,7 +2108,7 @@ msgstr "" "Renvoie la taille du terminal comme un couple ``(columns, lines)`` de type :" "class:`terminal_size`." -#: library/os.rst:1425 +#: library/os.rst:1557 msgid "" "The optional argument ``fd`` (default ``STDOUT_FILENO``, or standard output) " "specifies which file descriptor should be queried." @@ -1915,7 +2117,7 @@ msgstr "" "standard) spécifie le descripteur de fichier auquel la requête doit être " "envoyée." -#: library/os.rst:1428 +#: library/os.rst:1560 msgid "" "If the file descriptor is not connected to a terminal, an :exc:`OSError` is " "raised." @@ -1923,7 +2125,7 @@ msgstr "" "Si le descripteur de fichier n'est pas connecté à un terminal, une :exc:" "`OSError` est levée." -#: library/os.rst:1431 +#: library/os.rst:1563 msgid "" ":func:`shutil.get_terminal_size` is the high-level function which should " "normally be used, ``os.get_terminal_size`` is the low-level implementation." @@ -1932,7 +2134,7 @@ msgstr "" "normalement être utilisée, ``os.get_terminal_size`` en est l'implémentation " "bas-niveau." -#: library/os.rst:1439 +#: library/os.rst:1571 msgid "" "A subclass of tuple, holding ``(columns, lines)`` of the terminal window " "size." @@ -1940,19 +2142,19 @@ msgstr "" "Une sous-classe de *tuple*, contenant ``(columns, lines)``, la taille du " "terminal." -#: library/os.rst:1443 +#: library/os.rst:1575 msgid "Width of the terminal window in characters." msgstr "Longueur du terminal en caractères." -#: library/os.rst:1447 +#: library/os.rst:1579 msgid "Height of the terminal window in characters." msgstr "Hauteur du terminal en caractères." -#: library/os.rst:1453 +#: library/os.rst:1585 msgid "Inheritance of File Descriptors" msgstr "Héritage de descripteurs de fichiers" -#: library/os.rst:1457 +#: library/os.rst:1589 msgid "" "A file descriptor has an \"inheritable\" flag which indicates if the file " "descriptor can be inherited by child processes. Since Python 3.4, file " @@ -1962,7 +2164,7 @@ msgstr "" "par les processus-fils. Depuis Python 3.4, les descripteurs de fichiers " "créés par Python ne sont pas héritable par défaut." -#: library/os.rst:1461 +#: library/os.rst:1593 msgid "" "On UNIX, non-inheritable file descriptors are closed in child processes at " "the execution of a new program, other file descriptors are inherited." @@ -1970,7 +2172,7 @@ msgstr "" "Sur UNIX, les descripteurs de fichiers non-héritables sont fermés dans les " "processus-fils à l'exécution, les autres descripteurs sont hérités." -#: library/os.rst:1464 +#: library/os.rst:1596 msgid "" "On Windows, non-inheritable handles and file descriptors are closed in child " "processes, except for standard streams (file descriptors 0, 1 and 2: stdin, " @@ -1989,35 +2191,35 @@ msgstr "" "standards) sont fermés, et les identificateurs héritables sont hérités " "seulement si le paramètre *close_fds* vaut ``False``." -#: library/os.rst:1474 +#: library/os.rst:1606 msgid "" "Get the \"inheritable\" flag of the specified file descriptor (a boolean)." msgstr "" "Récupère le marqueur « héritable » (booléen) du descripteur de fichier " "spécifié." -#: library/os.rst:1478 +#: library/os.rst:1610 msgid "Set the \"inheritable\" flag of the specified file descriptor." msgstr "Définit le marqueur « héritable » du descripteur de fichier spécifié." -#: library/os.rst:1482 +#: library/os.rst:1614 msgid "Get the \"inheritable\" flag of the specified handle (a boolean)." msgstr "" "Récupère le marqueur « héritable » (booléen) de l'identificateur spécifié." -#: library/os.rst:1490 library/os.rst:3928 library/os.rst:3959 +#: library/os.rst:1622 library/os.rst:4156 library/os.rst:4202 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: library/os.rst:1488 +#: library/os.rst:1620 msgid "Set the \"inheritable\" flag of the specified handle." msgstr "Définit le marqueur « héritable » de l'identificateur spécifié." -#: library/os.rst:1496 +#: library/os.rst:1628 msgid "Files and Directories" msgstr "Fichiers et répertoires" -#: library/os.rst:1498 +#: library/os.rst:1630 msgid "" "On some Unix platforms, many of these functions support one or more of these " "features:" @@ -2025,7 +2227,7 @@ msgstr "" "Sur certaines plate-formes Unix, beaucoup de ces fonctions gèrent une ou " "plusieurs des fonctionnalités suivantes :" -#: library/os.rst:1503 +#: library/os.rst:1635 #, fuzzy msgid "" "**specifying a file descriptor:** Normally the *path* argument provided to " @@ -2042,7 +2244,7 @@ msgstr "" "fonction opérera alors sur le fichier référencé par le descripteur. (Pour " "les systèmes POSIX, Python appellera la version ``f...`` de la fonction.)" -#: library/os.rst:1511 +#: library/os.rst:1643 #, fuzzy msgid "" "You can check whether or not *path* can be specified as a file descriptor " @@ -2054,7 +2256,7 @@ msgstr "" "sur votre plate-forme en utilisant :data:`os.supports_fd`. Si c'est " "indisponible, l'utiliser lèvera une :exc:`NotImplementedError`." -#: library/os.rst:1516 +#: library/os.rst:1648 #, fuzzy msgid "" "If the function also supports *dir_fd* or *follow_symlinks* arguments, it's " @@ -2064,7 +2266,7 @@ msgstr "" "spécifier l'un de ces arguments est une erreur quand *path* est donné en " "tant que descripteur de fichier." -#: library/os.rst:1521 +#: library/os.rst:1653 #, fuzzy msgid "" "**paths relative to directory descriptors:** If *dir_fd* is not ``None``, it " @@ -2082,7 +2284,7 @@ msgstr "" "ignoré. (Pour les systèmes POSIX, Python appellera la version ``...at`` ou " "``f...at`` de la fonction.)" -#: library/os.rst:1528 +#: library/os.rst:1660 #, fuzzy msgid "" "You can check whether or not *dir_fd* is supported for a particular function " @@ -2093,7 +2295,7 @@ msgstr "" "utilisant :data:`os.supports_dir_fd`. Si c'est indisponible, l'utiliser " "lèvera une :exc:`NotImplementedError`." -#: library/os.rst:1534 +#: library/os.rst:1666 #, fuzzy msgid "" "**not following symlinks:** If *follow_symlinks* is ``False``, and the last " @@ -2108,7 +2310,7 @@ msgstr "" "pointé par le lien. (Pour les systèmes POSIX, Python appellera la version " "``l...`` de la fonction.)" -#: library/os.rst:1540 +#: library/os.rst:1672 #, fuzzy msgid "" "You can check whether or not *follow_symlinks* is supported for a particular " @@ -2119,7 +2321,7 @@ msgstr "" "utilisant :data:`os.supports_follow_symlinks`. Si c'est indisponible, " "l'utiliser lèvera une :exc:`NotImplementedError`." -#: library/os.rst:1548 +#: library/os.rst:1680 msgid "" "Use the real uid/gid to test for access to *path*. Note that most " "operations will use the effective uid/gid, therefore this routine can be " @@ -2141,7 +2343,7 @@ msgstr "" "pas. Voir la page de manuel Unix :manpage:`access(2)` pour plus " "d'informations." -#: library/os.rst:1557 +#: library/os.rst:1689 msgid "" "This function can support specifying :ref:`paths relative to directory " "descriptors ` and :ref:`not following symlinks `." @@ -2150,7 +2352,7 @@ msgstr "" "des descripteurs de fichiers ` et :ref:`le suivi des liens " "symboliques `." -#: library/os.rst:1560 +#: library/os.rst:1692 msgid "" "If *effective_ids* is ``True``, :func:`access` will perform its access " "checks using the effective uid/gid instead of the real uid/gid. " @@ -2165,7 +2367,7 @@ msgstr "" "supports_effective_ids`. S'il est indisponible, l'utiliser lèvera une :exc:" "`NotImplementedError`." -#: library/os.rst:1568 +#: library/os.rst:1700 msgid "" "Using :func:`access` to check if a user is authorized to e.g. open a file " "before actually doing so using :func:`open` creates a security hole, because " @@ -2180,11 +2382,11 @@ msgstr "" "pour le manipuler. Il est préférable d'utiliser les techniques :term:`EAFP`. " "Par exemple ::" -#: library/os.rst:1579 +#: library/os.rst:1711 msgid "is better written as::" msgstr "est mieux écrit comme suit ::" -#: library/os.rst:1591 +#: library/os.rst:1723 msgid "" "I/O operations may fail even when :func:`access` indicates that they would " "succeed, particularly for operations on network filesystems which may have " @@ -2195,11 +2397,11 @@ msgstr "" "les systèmes de fichiers réseaux qui peuvent avoir une sémantique de " "permissions au-delà du modèle de bits de permission usuel POSIX." -#: library/os.rst:1595 +#: library/os.rst:1727 msgid "Added the *dir_fd*, *effective_ids*, and *follow_symlinks* parameters." msgstr "Paramètres *dir_fd*, *effective_ids*, et *follow_symlinks* ajoutés." -#: library/os.rst:1607 +#: library/os.rst:1739 msgid "" "Values to pass as the *mode* parameter of :func:`access` to test the " "existence, readability, writability and executability of *path*, " @@ -2208,11 +2410,11 @@ msgstr "" "Valeurs à passer au paramètre *mode* de :func:`access` pour tester " "respectivement l'existence, les droits de lecture, d'écriture et d'exécution." -#: library/os.rst:1616 +#: library/os.rst:1748 msgid "Change the current working directory to *path*." msgstr "Change le répertoire de travail actuel par *path*." -#: library/os.rst:1618 +#: library/os.rst:1750 msgid "" "This function can support :ref:`specifying a file descriptor `. " "The descriptor must refer to an opened directory, not an open file." @@ -2221,7 +2423,7 @@ msgstr "" "fichier `. Le descripteur doit référencer un répertoire ouvert, pas " "un fichier ouvert." -#: library/os.rst:1621 +#: library/os.rst:1753 msgid "" "This function can raise :exc:`OSError` and subclasses such as :exc:" "`FileNotFoundError`, :exc:`PermissionError`, and :exc:`NotADirectoryError`." @@ -2229,20 +2431,20 @@ msgstr "" "Cette fonction peut lever :exc:`OSError` et des sous-classes telles que :exc:" "`FileNotFoundError`, :exc:`PermissionError` et :exc:`NotADirectoryError`." -#: library/os.rst:1751 +#: library/os.rst:1883 msgid "" "Raises an :ref:`auditing event ` ``os.chdir`` with argument " "``path``." msgstr "" -#: library/os.rst:1626 +#: library/os.rst:1758 msgid "" "Added support for specifying *path* as a file descriptor on some platforms." msgstr "" "Prise en charge de la spécification de *path* par un descripteur de fichier " "sur certaines plate-formes." -#: library/os.rst:1636 +#: library/os.rst:1768 msgid "" "Set the flags of *path* to the numeric *flags*. *flags* may take a " "combination (bitwise OR) of the following values (as defined in the :mod:" @@ -2252,72 +2454,72 @@ msgstr "" "peut prendre une combinaison (OU bit-à-bit) des valeurs suivantes (comme " "défini dans le module :mod:`stat`) :" -#: library/os.rst:1639 +#: library/os.rst:1771 msgid ":data:`stat.UF_NODUMP`" msgstr ":data:`stat.UF_NODUMP`" -#: library/os.rst:1640 +#: library/os.rst:1772 msgid ":data:`stat.UF_IMMUTABLE`" msgstr ":data:`stat.UF_IMMUTABLE`" -#: library/os.rst:1641 +#: library/os.rst:1773 msgid ":data:`stat.UF_APPEND`" msgstr ":data:`stat.UF_APPEND`" -#: library/os.rst:1642 +#: library/os.rst:1774 msgid ":data:`stat.UF_OPAQUE`" msgstr ":data:`stat.UF_OPAQUE`" -#: library/os.rst:1643 +#: library/os.rst:1775 msgid ":data:`stat.UF_NOUNLINK`" msgstr ":data:`stat.UF_NOUNLINK`" -#: library/os.rst:1644 +#: library/os.rst:1776 msgid ":data:`stat.UF_COMPRESSED`" msgstr ":data:`stat.UF_COMPRESSED`" -#: library/os.rst:1645 +#: library/os.rst:1777 msgid ":data:`stat.UF_HIDDEN`" msgstr ":data:`stat.UF_HIDDEN`" -#: library/os.rst:1646 +#: library/os.rst:1778 msgid ":data:`stat.SF_ARCHIVED`" msgstr ":data:`stat.SF_ARCHIVED`" -#: library/os.rst:1647 +#: library/os.rst:1779 msgid ":data:`stat.SF_IMMUTABLE`" msgstr ":data:`stat.SF_IMMUTABLE`" -#: library/os.rst:1648 +#: library/os.rst:1780 msgid ":data:`stat.SF_APPEND`" msgstr ":data:`stat.SF_APPEND`" -#: library/os.rst:1649 +#: library/os.rst:1781 msgid ":data:`stat.SF_NOUNLINK`" msgstr ":data:`stat.SF_NOUNLINK`" -#: library/os.rst:1650 +#: library/os.rst:1782 msgid ":data:`stat.SF_SNAPSHOT`" msgstr ":data:`stat.SF_SNAPSHOT`" -#: library/os.rst:1652 +#: library/os.rst:1784 msgid "" "This function can support :ref:`not following symlinks `." msgstr "" "Cette fonction prend en charge :ref:`le suivi des liens symboliques " "`." -#: library/os.rst:1777 +#: library/os.rst:1909 msgid "" "Raises an :ref:`auditing event ` ``os.chflags`` with arguments " "``path``, ``flags``." msgstr "" -#: library/os.rst:1658 +#: library/os.rst:1790 msgid "The *follow_symlinks* argument." msgstr "L'argument *follow_symlinks*." -#: library/os.rst:1667 +#: library/os.rst:1799 msgid "" "Change the mode of *path* to the numeric *mode*. *mode* may take one of the " "following values (as defined in the :mod:`stat` module) or bitwise ORed " @@ -2327,83 +2529,83 @@ msgstr "" "une des valeurs suivantes (comme défini dans le module :mod:`stat`) ou une " "combinaison (OU bit-à-bit) de ces valeurs :" -#: library/os.rst:1671 +#: library/os.rst:1803 msgid ":data:`stat.S_ISUID`" msgstr ":data:`stat.S_ISUID`" -#: library/os.rst:1672 +#: library/os.rst:1804 msgid ":data:`stat.S_ISGID`" msgstr ":data:`stat.S_ISGID`" -#: library/os.rst:1673 +#: library/os.rst:1805 msgid ":data:`stat.S_ENFMT`" msgstr ":data:`stat.S_ENFMT`" -#: library/os.rst:1674 +#: library/os.rst:1806 msgid ":data:`stat.S_ISVTX`" msgstr ":data:`stat.S_ISVTX`" -#: library/os.rst:1675 +#: library/os.rst:1807 msgid ":data:`stat.S_IREAD`" msgstr ":data:`stat.S_IREAD`" -#: library/os.rst:1676 +#: library/os.rst:1808 msgid ":data:`stat.S_IWRITE`" msgstr ":data:`stat.S_IWRITE`" -#: library/os.rst:1677 +#: library/os.rst:1809 msgid ":data:`stat.S_IEXEC`" msgstr ":data:`stat.S_IEXEC`" -#: library/os.rst:1678 +#: library/os.rst:1810 msgid ":data:`stat.S_IRWXU`" msgstr ":data:`stat.S_IRWXU`" -#: library/os.rst:1679 +#: library/os.rst:1811 msgid ":data:`stat.S_IRUSR`" msgstr ":data:`stat.S_IRUSR`" -#: library/os.rst:1680 +#: library/os.rst:1812 msgid ":data:`stat.S_IWUSR`" msgstr ":data:`stat.S_IWUSR`" -#: library/os.rst:1681 +#: library/os.rst:1813 msgid ":data:`stat.S_IXUSR`" msgstr ":data:`stat.S_IXUSR`" -#: library/os.rst:1682 +#: library/os.rst:1814 msgid ":data:`stat.S_IRWXG`" msgstr ":data:`stat.S_IRWXG`" -#: library/os.rst:1683 +#: library/os.rst:1815 msgid ":data:`stat.S_IRGRP`" msgstr ":data:`stat.S_IRGRP`" -#: library/os.rst:1684 +#: library/os.rst:1816 msgid ":data:`stat.S_IWGRP`" msgstr ":data:`stat.S_IWGRP`" -#: library/os.rst:1685 +#: library/os.rst:1817 msgid ":data:`stat.S_IXGRP`" msgstr ":data:`stat.S_IXGRP`" -#: library/os.rst:1686 +#: library/os.rst:1818 msgid ":data:`stat.S_IRWXO`" msgstr ":data:`stat.S_IRWXO`" -#: library/os.rst:1687 +#: library/os.rst:1819 msgid ":data:`stat.S_IROTH`" msgstr ":data:`stat.S_IROTH`" -#: library/os.rst:1688 +#: library/os.rst:1820 msgid ":data:`stat.S_IWOTH`" msgstr ":data:`stat.S_IWOTH`" -#: library/os.rst:1689 +#: library/os.rst:1821 msgid ":data:`stat.S_IXOTH`" msgstr ":data:`stat.S_IXOTH`" -#: library/os.rst:1716 library/os.rst:2970 +#: library/os.rst:1848 library/os.rst:3102 msgid "" "This function can support :ref:`specifying a file descriptor `, :" "ref:`paths relative to directory descriptors ` and :ref:`not " @@ -2414,7 +2616,7 @@ msgstr "" "répertoires `, et :ref:`le non-suivi des liens symboliques " "`." -#: library/os.rst:1697 +#: library/os.rst:1829 msgid "" "Although Windows supports :func:`chmod`, you can only set the file's read-" "only flag with it (via the ``stat.S_IWRITE`` and ``stat.S_IREAD`` constants " @@ -2425,7 +2627,7 @@ msgstr "" "et ``stat.S_IREAD`` ou une constante entière correspondante). Tous les " "autres bits sont ignorés." -#: library/os.rst:1727 +#: library/os.rst:1859 msgid "" "Added support for specifying *path* as an open file descriptor, and the " "*dir_fd* and *follow_symlinks* arguments." @@ -2433,7 +2635,7 @@ msgstr "" "Prise en charge de la spécification de *path* par un répertoire ouvert et " "des arguments *dir_fd* et *follow_symlinks* ajoutés." -#: library/os.rst:1713 +#: library/os.rst:1845 msgid "" "Change the owner and group id of *path* to the numeric *uid* and *gid*. To " "leave one of the ids unchanged, set it to -1." @@ -2442,7 +2644,7 @@ msgstr "" "numériques *uid* et *gid*. Pour laisser l'un de ces identifiants inchangé, " "le définir à ``-1``." -#: library/os.rst:1720 +#: library/os.rst:1852 msgid "" "See :func:`shutil.chown` for a higher-level function that accepts names in " "addition to numeric ids." @@ -2450,15 +2652,15 @@ msgstr "" "Voir :func:`shutil.chown` pour une fonction de plus haut-niveau qui accepte " "des noms en plus des identifiants numériques." -#: library/os.rst:1731 +#: library/os.rst:1863 msgid "Supports a :term:`path-like object`." msgstr "Accepte un :term:`path-like object`." -#: library/os.rst:1737 +#: library/os.rst:1869 msgid "Change the root directory of the current process to *path*." msgstr "Change le répertoire racine du processus actuel par *path*." -#: library/os.rst:1747 +#: library/os.rst:1879 msgid "" "Change the current working directory to the directory represented by the " "file descriptor *fd*. The descriptor must refer to an opened directory, not " @@ -2469,25 +2671,25 @@ msgstr "" "ouvert, pas un fichier ouvert. Depuis Python 3.3, c'est équivalent à ``os." "chdir(fd)``." -#: library/os.rst:1758 +#: library/os.rst:1890 msgid "Return a string representing the current working directory." msgstr "" "Renvoie une chaîne de caractères représentant le répertoire de travail " "actuel." -#: library/os.rst:1763 +#: library/os.rst:1895 msgid "Return a bytestring representing the current working directory." msgstr "" "Renvoie une chaîne de *bytes* représentant le répertoire de travail actuel." -#: library/os.rst:1765 +#: library/os.rst:1897 msgid "" "The function now uses the UTF-8 encoding on Windows, rather than the ANSI " "code page: see :pep:`529` for the rationale. The function is no longer " "deprecated on Windows." msgstr "" -#: library/os.rst:1773 +#: library/os.rst:1905 msgid "" "Set the flags of *path* to the numeric *flags*, like :func:`chflags`, but do " "not follow symbolic links. As of Python 3.3, this is equivalent to ``os." @@ -2497,7 +2699,7 @@ msgstr "" "`chflags`, mais ne suit pas les liens symboliques. Depuis Python 3.3, c'est " "équivalent à ``os.chflags(path, flags, follow_symlinks=False)``." -#: library/os.rst:1787 +#: library/os.rst:1919 msgid "" "Change the mode of *path* to the numeric *mode*. If path is a symlink, this " "affects the symlink rather than the target. See the docs for :func:`chmod` " @@ -2510,7 +2712,7 @@ msgstr "" "Depuis Python 3.3, c'est équivalent à ``os.chmod(path, mode, " "follow_symlinks=False)``." -#: library/os.rst:1801 +#: library/os.rst:1933 msgid "" "Change the owner and group id of *path* to the numeric *uid* and *gid*. " "This function will not follow symbolic links. As of Python 3.3, this is " @@ -2520,11 +2722,11 @@ msgstr "" "*gid*. Cette fonction ne suivra pas les liens symboliques. Depuis Python " "3.3, c'est équivalent à ``os.chown(path, uid, gid, follow_symlinks=False)``." -#: library/os.rst:1815 +#: library/os.rst:1947 msgid "Create a hard link pointing to *src* named *dst*." msgstr "Crée un lien matériel appelé *dst* pointant sur *src*." -#: library/os.rst:1817 +#: library/os.rst:1949 msgid "" "This function can support specifying *src_dir_fd* and/or *dst_dir_fd* to " "supply :ref:`paths relative to directory descriptors `, and :ref:" @@ -2535,25 +2737,25 @@ msgstr "" "répertoires `, et :ref:`le non-suivi des liens symboliques " "`." -#: library/os.rst:1821 +#: library/os.rst:1953 msgid "" "Raises an :ref:`auditing event ` ``os.link`` with arguments " "``src``, ``dst``, ``src_dir_fd``, ``dst_dir_fd``." msgstr "" -#: library/os.rst:1825 +#: library/os.rst:1957 msgid "Added Windows support." msgstr "Prise en charge de Windows." -#: library/os.rst:1828 +#: library/os.rst:1960 msgid "Added the *src_dir_fd*, *dst_dir_fd*, and *follow_symlinks* arguments." msgstr "Arguments *src_dir_fd*, *dst_dir_fd*, et *follow_symlinks* ajoutés." -#: library/os.rst:2183 library/os.rst:2892 +#: library/os.rst:2315 library/os.rst:3024 msgid "Accepts a :term:`path-like object` for *src* and *dst*." msgstr "Accepte un :term:`path-like object` pour *src* et *dst*." -#: library/os.rst:1837 +#: library/os.rst:1969 #, fuzzy msgid "" "Return a list containing the names of the entries in the directory given by " @@ -2567,7 +2769,7 @@ msgstr "" "spéciales ``'.'`` et ``'..'`` même si elles sont présentes dans le " "répertoire." -#: library/os.rst:1843 +#: library/os.rst:1975 msgid "" "*path* may be a :term:`path-like object`. If *path* is of type ``bytes`` " "(directly or indirectly through the :class:`PathLike` interface), the " @@ -2579,7 +2781,7 @@ msgstr "" "`PathLike`), les noms de fichiers renvoyés seront aussi de type ``bytes`` ; " "dans toutes les autres circonstances, ils seront de type ``str``." -#: library/os.rst:2268 +#: library/os.rst:2400 msgid "" "This function can also support :ref:`specifying a file descriptor " "`; the file descriptor must refer to a directory." @@ -2587,19 +2789,19 @@ msgstr "" "Cette fonction peut également gérer :ref:`la spécification de descripteurs " "de fichiers`. Le descripteur doit référencer un répertoire." -#: library/os.rst:1851 +#: library/os.rst:1983 msgid "" "Raises an :ref:`auditing event ` ``os.listdir`` with argument " "``path``." msgstr "" -#: library/os.rst:1854 +#: library/os.rst:1986 msgid "To encode ``str`` filenames to ``bytes``, use :func:`~os.fsencode`." msgstr "" "Pour encoder des noms de fichiers de type ``str`` en ``bytes``, utilisez la " "fonction :func:`~os.encode`." -#: library/os.rst:1858 +#: library/os.rst:1990 msgid "" "The :func:`scandir` function returns directory entries along with file " "attribute information, giving better performance for many common use cases." @@ -2608,17 +2810,17 @@ msgstr "" "leurs attributs , offrant une meilleure performance pour beaucoup de cas " "utilisés fréquemment." -#: library/os.rst:1862 +#: library/os.rst:1994 msgid "The *path* parameter became optional." msgstr "Le paramètre *path* est devenu optionnel." -#: library/os.rst:2754 +#: library/os.rst:2886 msgid "Added support for specifying *path* as an open file descriptor." msgstr "" "ajout de la possibilité de spécifier *path* comme descripteur de fichier " "ouvert." -#: library/os.rst:1874 +#: library/os.rst:2006 msgid "" "Perform the equivalent of an :c:func:`lstat` system call on the given path. " "Similar to :func:`~os.stat`, but does not follow symbolic links. Return a :" @@ -2628,7 +2830,7 @@ msgstr "" "donné. Similaire à :func:`~os.stat` mais ne suit pas les liens symboliques. " "Renvoie un objet de type :class:`stat_result`." -#: library/os.rst:1878 +#: library/os.rst:2010 msgid "" "On platforms that do not support symbolic links, this is an alias for :func:" "`~os.stat`." @@ -2636,7 +2838,7 @@ msgstr "" "Sur les plate-formes qui ne gérant pas les liens symboliques, c'est un alias " "pour :func:`~os.stat`." -#: library/os.rst:1881 +#: library/os.rst:2013 msgid "" "As of Python 3.3, this is equivalent to ``os.stat(path, dir_fd=dir_fd, " "follow_symlinks=False)``." @@ -2644,7 +2846,7 @@ msgstr "" "Depuis Python 3.3, c'est équivalent à ``os.stat(path, dir_fd=dir_fd, " "follow_symlinks=False)``." -#: library/os.rst:1921 library/os.rst:2014 library/os.rst:2088 +#: library/os.rst:2053 library/os.rst:2146 library/os.rst:2220 msgid "" "This function can also support :ref:`paths relative to directory descriptors " "`." @@ -2652,15 +2854,15 @@ msgstr "" "Cette fonction peut également gérer :ref:`des chemins relatifs à des " "descripteurs de répertoires `." -#: library/os.rst:2097 library/os.rst:2885 +#: library/os.rst:2229 library/os.rst:3017 msgid "Added support for Windows 6.0 (Vista) symbolic links." msgstr "Prise en charge des les liens symboliques sur Windows 6.0 (Vista)." -#: library/os.rst:1894 +#: library/os.rst:2026 msgid "Added the *dir_fd* parameter." msgstr "Paramètre *dir_fd* ajouté." -#: library/os.rst:1900 +#: library/os.rst:2032 msgid "" "On Windows, now opens reparse points that represent another path (name " "surrogates), including symbolic links and directory junctions. Other kinds " @@ -2668,16 +2870,16 @@ msgid "" "stat`." msgstr "" -#: library/os.rst:1909 +#: library/os.rst:2041 msgid "Create a directory named *path* with numeric mode *mode*." msgstr "" "Crée un répertoire appelé *path* avec pour mode, la valeur numérique *mode*." -#: library/os.rst:1911 +#: library/os.rst:2043 msgid "If the directory already exists, :exc:`FileExistsError` is raised." msgstr "Si le répertoire existe déjà, :exc:`FileExistsError` est levée." -#: library/os.rst:1915 +#: library/os.rst:2047 msgid "" "On some systems, *mode* is ignored. Where it is used, the current umask " "value is first masked out. If bits other than the last 9 (i.e. the last 3 " @@ -2692,7 +2894,7 @@ msgstr "" "plate-forme. Sous certaines plate-formes, ils seront ignorés et vous devrez " "appeler explicitement :func:`chmod` pour les modifier." -#: library/os.rst:1924 +#: library/os.rst:2056 msgid "" "It is also possible to create temporary directories; see the :mod:`tempfile` " "module's :func:`tempfile.mkdtemp` function." @@ -2700,13 +2902,13 @@ msgstr "" "Il est également possible de créer des répertoires temporaires, voir la " "fonction :func:`tempfile.mkdtemp` du module :mod:`tempfile`." -#: library/os.rst:1961 +#: library/os.rst:2093 msgid "" "Raises an :ref:`auditing event ` ``os.mkdir`` with arguments " "``path``, ``mode``, ``dir_fd``." msgstr "" -#: library/os.rst:1942 +#: library/os.rst:2074 msgid "" "Recursive directory creation function. Like :func:`mkdir`, but makes all " "intermediate-level directories needed to contain the leaf directory." @@ -2715,7 +2917,7 @@ msgstr "" "tous les répertoires de niveau intermédiaire nécessaires pour contenir le " "répertoire « feuille »." -#: library/os.rst:1945 +#: library/os.rst:2077 msgid "" "The *mode* parameter is passed to :func:`mkdir` for creating the leaf " "directory; see :ref:`the mkdir() description ` for how it is " @@ -2730,7 +2932,7 @@ msgstr "" "valeur de *umask* avant d'invoquer :func:`makedirs`. Les bits de permissions " "des répertoires intermédiaires déjà existants ne sont pas modifiés." -#: library/os.rst:1951 +#: library/os.rst:2083 msgid "" "If *exist_ok* is ``False`` (the default), an :exc:`FileExistsError` is " "raised if the target directory already exists." @@ -2738,7 +2940,7 @@ msgstr "" "Si *exist_ok* vaut ``False`` (valeur par défaut), une :exc:`FileExistsError` " "est levée si le répertoire cible existe déjà." -#: library/os.rst:1956 +#: library/os.rst:2088 msgid "" ":func:`makedirs` will become confused if the path elements to create " "include :data:`pardir` (eg. \"..\" on UNIX systems)." @@ -2746,15 +2948,15 @@ msgstr "" "Un appel à :func:`makedirs` est confus si les éléments du chemin à créer " "contiennent :data:`pardir` (par exemple, ``\"..\"`` sur les systèmes UNIX)." -#: library/os.rst:1959 +#: library/os.rst:2091 msgid "This function handles UNC paths correctly." msgstr "Cette fonction gère les chemins UNC correctement." -#: library/os.rst:1963 +#: library/os.rst:2095 msgid "The *exist_ok* parameter." msgstr "Le paramètre *exist_ok*." -#: library/os.rst:1968 +#: library/os.rst:2100 msgid "" "Before Python 3.4.1, if *exist_ok* was ``True`` and the directory existed, :" "func:`makedirs` would still raise an error if *mode* did not match the mode " @@ -2767,7 +2969,7 @@ msgstr "" "pas possible ) implémenter de manière sécurisée, il a été retiré pour Python " "3.4.1. Voir :issue:`21082`." -#: library/os.rst:1976 +#: library/os.rst:2108 msgid "" "The *mode* argument no longer affects the file permission bits of newly-" "created intermediate-level directories." @@ -2775,7 +2977,7 @@ msgstr "" "L'argument *mode* n'affecte plus les bits d'autorisation de fichier des " "répertoires intermédiaires créés." -#: library/os.rst:1983 +#: library/os.rst:2115 msgid "" "Create a FIFO (a named pipe) named *path* with numeric mode *mode*. The " "current umask value is first masked out from the mode." @@ -2784,7 +2986,7 @@ msgstr "" "appelé *path* avec le mode numérique *mode*. La valeur actuelle de *umask* " "est d'abord masquée du mode." -#: library/os.rst:1989 +#: library/os.rst:2121 msgid "" "FIFOs are pipes that can be accessed like regular files. FIFOs exist until " "they are deleted (for example with :func:`os.unlink`). Generally, FIFOs are " @@ -2801,7 +3003,7 @@ msgstr "" "Notez que :func:`mkfifo` n'ouvre pas le FIFO — il crée juste un point de " "rendez-vous." -#: library/os.rst:2006 +#: library/os.rst:2138 msgid "" "Create a filesystem node (file, device special file or named pipe) named " "*path*. *mode* specifies both the permissions to use and the type of node to " @@ -2820,7 +3022,7 @@ msgstr "" "définit le fichier spécial de périphérique tout juste créé (probablement en " "utilisant :func:`os.makedev`), sinon, cet argument est ignoré." -#: library/os.rst:2028 +#: library/os.rst:2160 msgid "" "Extract the device major number from a raw device number (usually the :attr:" "`st_dev` or :attr:`st_rdev` field from :c:type:`stat`)." @@ -2829,7 +3031,7 @@ msgstr "" "(habituellement le champ :attr:`st_dev` ou :attr:`st_rdev` de :c:type:" "`stat`)." -#: library/os.rst:2034 +#: library/os.rst:2166 msgid "" "Extract the device minor number from a raw device number (usually the :attr:" "`st_dev` or :attr:`st_rdev` field from :c:type:`stat`)." @@ -2838,13 +3040,13 @@ msgstr "" "(habituellement le champ :attr:`st_dev` ou :attr:`st_rdev` de :c:type:" "`stat`)." -#: library/os.rst:2040 +#: library/os.rst:2172 msgid "Compose a raw device number from the major and minor device numbers." msgstr "" "Compose un nombre de périphérique brut à partir des nombres de périphérique " "mineur et majeur." -#: library/os.rst:2045 +#: library/os.rst:2177 msgid "" "Return system configuration information relevant to a named file. *name* " "specifies the configuration value to retrieve; it may be a string which is " @@ -2864,14 +3066,14 @@ msgstr "" "configuration non incluses dans ce *mapping*, passer un entier pour *name* " "est également accepté." -#: library/os.rst:2747 library/os.rst:2913 +#: library/os.rst:2879 library/os.rst:3045 msgid "" "This function can support :ref:`specifying a file descriptor `." msgstr "" "Cette fonction prend en charge :ref:`la spécification d'un descripteur de " "fichier `." -#: library/os.rst:2069 +#: library/os.rst:2201 msgid "" "Dictionary mapping names accepted by :func:`pathconf` and :func:`fpathconf` " "to the integer values defined for those names by the host operating system. " @@ -2882,7 +3084,7 @@ msgstr "" "d'exploitation hôte. Cette variable peut être utilisée pour déterminer " "l'ensemble des noms connus du système d'exploitation." -#: library/os.rst:2078 +#: library/os.rst:2210 msgid "" "Return a string representing the path to which the symbolic link points. " "The result may be either an absolute or relative pathname; if it is " @@ -2894,7 +3096,7 @@ msgstr "" "chemin absolu. S'il est relatif, il peut être converti en chemin absolu en " "utilisant ``os.path.join(os.path.dirname(path), result)``." -#: library/os.rst:2083 +#: library/os.rst:2215 msgid "" "If the *path* is a string object (directly or indirectly through a :class:" "`PathLike` interface), the result will also be a string object, and the call " @@ -2907,7 +3109,7 @@ msgstr "" "une chaîne d'octets (directement ou indirectement), le résultat sera une " "chaîne d'octets." -#: library/os.rst:2091 +#: library/os.rst:2223 msgid "" "When trying to resolve a path that may contain links, use :func:`~os.path." "realpath` to properly handle recursion and platform differences." @@ -2916,23 +3118,23 @@ msgstr "" "utilisez :func:`~os.path.realpath` pour gérer correctement la récursion et " "les différences de plate-forme." -#: library/os.rst:2103 +#: library/os.rst:2235 msgid "Accepts a :term:`path-like object` on Unix." msgstr "Accepte un :term:`path-like object` sur Unix." -#: library/os.rst:2106 +#: library/os.rst:2238 msgid "Accepts a :term:`path-like object` and a bytes object on Windows." msgstr "" "Accepte un :term:`path-like object` et une chaine d’octets sous Windows." -#: library/os.rst:2109 +#: library/os.rst:2241 msgid "" "Added support for directory junctions, and changed to return the " "substitution path (which typically includes ``\\\\?\\`` prefix) rather than " "the optional \"print name\" field that was previously returned." msgstr "" -#: library/os.rst:2116 +#: library/os.rst:2248 #, fuzzy msgid "" "Remove (delete) the file *path*. If *path* is a directory, an :exc:" @@ -2943,7 +3145,7 @@ msgstr "" "`IsADirectoryError` est levée. Utilisez :func:`rmdir` pour supprimer les " "répertoires." -#: library/os.rst:2231 library/os.rst:2867 +#: library/os.rst:2363 library/os.rst:2999 msgid "" "This function can support :ref:`paths relative to directory descriptors " "`." @@ -2951,7 +3153,7 @@ msgstr "" "Cette fonction prend en charge :ref:`des chemins relatifs à des descripteurs " "de répertories `." -#: library/os.rst:2123 +#: library/os.rst:2255 msgid "" "On Windows, attempting to remove a file that is in use causes an exception " "to be raised; on Unix, the directory entry is removed but the storage " @@ -2963,17 +3165,17 @@ msgstr "" "l'espace de stockage alloué au fichier ne sera pas disponible avant que le " "fichier original ne soit plus utilisé." -#: library/os.rst:2127 +#: library/os.rst:2259 msgid "This function is semantically identical to :func:`unlink`." msgstr "La fonction est sémantiquement identique à :func:`unlink`." -#: library/os.rst:2151 library/os.rst:2935 +#: library/os.rst:2283 library/os.rst:3067 msgid "" "Raises an :ref:`auditing event ` ``os.remove`` with arguments " "``path``, ``dir_fd``." msgstr "" -#: library/os.rst:2142 +#: library/os.rst:2274 msgid "" "Remove directories recursively. Works like :func:`rmdir` except that, if " "the leaf directory is successfully removed, :func:`removedirs` tries to " @@ -2994,7 +3196,7 @@ msgstr "" "``'foo'`` s'ils sont vides. Lève une :exc:`OSError` si le répertoire feuille " "n'a pas pu être supprimé avec succès." -#: library/os.rst:2159 +#: library/os.rst:2291 msgid "" "Rename the file or directory *src* to *dst*. If *dst* exists, the operation " "will fail with an :exc:`OSError` subclass in a number of cases:" @@ -3003,12 +3205,12 @@ msgstr "" "l'opération échoue avec une sous-classe :exc:`OSError` dans un certain " "nombre de cas :" -#: library/os.rst:2162 +#: library/os.rst:2294 msgid "On Windows, if *dst* exists a :exc:`FileExistsError` is always raised." msgstr "" "Sous Windows, si *dst* existe, une :exc:`FileExistsError` est toujours levée." -#: library/os.rst:2164 +#: library/os.rst:2296 #, fuzzy msgid "" "On Unix, if *src* is a file and *dst* is a directory or vice-versa, an :exc:" @@ -3027,7 +3229,7 @@ msgstr "" "différent. Si le renommage est effectué avec succès, il est une opération " "atomique (nécessité POSIX)." -#: library/os.rst:2213 +#: library/os.rst:2345 msgid "" "This function can support specifying *src_dir_fd* and/or *dst_dir_fd* to " "supply :ref:`paths relative to directory descriptors `." @@ -3036,7 +3238,7 @@ msgstr "" "*dst_dir_fd* pour fournir :ref:`des chemins relatifs à des descripteurs de " "fichiers `." -#: library/os.rst:2176 +#: library/os.rst:2308 msgid "" "If you want cross-platform overwriting of the destination, use :func:" "`replace`." @@ -3044,17 +3246,17 @@ msgstr "" "Si cous désirez un écrasement multiplate-forme de la destination, utilisez " "la fonction :func:`replace`." -#: library/os.rst:2199 library/os.rst:2216 +#: library/os.rst:2331 library/os.rst:2348 msgid "" "Raises an :ref:`auditing event ` ``os.rename`` with arguments " "``src``, ``dst``, ``src_dir_fd``, ``dst_dir_fd``." msgstr "" -#: library/os.rst:2180 +#: library/os.rst:2312 msgid "The *src_dir_fd* and *dst_dir_fd* arguments." msgstr "Les arguments *src_dir_fd* et *dst_dir_fd*." -#: library/os.rst:2189 +#: library/os.rst:2321 msgid "" "Recursive directory or file renaming function. Works like :func:`rename`, " "except creation of any intermediate directories needed to make the new " @@ -3069,7 +3271,7 @@ msgstr "" "chemin les plus à droite de l'ancien nom seront élagués en utilisant :func:" "`removedirs`." -#: library/os.rst:2196 +#: library/os.rst:2328 msgid "" "This function can fail with the new directory structure made if you lack " "permissions needed to remove the leaf directory or file." @@ -3078,11 +3280,11 @@ msgstr "" "définie si vous n'avez pas les permissions nécessaires pour supprimer le " "répertoire ou fichier feuille." -#: library/os.rst:2201 +#: library/os.rst:2333 msgid "Accepts a :term:`path-like object` for *old* and *new*." msgstr "Accepte un :term:`path-like object` pour *old* et *new*." -#: library/os.rst:2207 +#: library/os.rst:2339 msgid "" "Rename the file or directory *src* to *dst*. If *dst* is a directory, :exc:" "`OSError` will be raised. If *dst* exists and is a file, it will be " @@ -3097,7 +3299,7 @@ msgstr "" "différent. Si le renommage est effectué avec succès, il est une opération " "atomique (nécessité POSIX)." -#: library/os.rst:2226 +#: library/os.rst:2358 msgid "" "Remove (delete) the directory *path*. If the directory does not exist or is " "not empty, an :exc:`FileNotFoundError` or an :exc:`OSError` is raised " @@ -3109,17 +3311,17 @@ msgstr "" "levée, selon le cas. Pour supprimer des arborescences de répertoires " "entières, utilisez :func:`shutil.rmtree`." -#: library/os.rst:2234 +#: library/os.rst:2366 msgid "" "Raises an :ref:`auditing event ` ``os.rmdir`` with arguments " "``path``, ``dir_fd``." msgstr "" -#: library/os.rst:2937 +#: library/os.rst:3069 msgid "The *dir_fd* parameter." msgstr "Le paramètre *dir_fd*." -#: library/os.rst:2245 +#: library/os.rst:2377 #, fuzzy msgid "" "Return an iterator of :class:`os.DirEntry` objects corresponding to the " @@ -3134,7 +3336,7 @@ msgstr "" "ordre arbitraire, et les entrées spéciales ``'.'`` et ``'..'`` ne sont pas " "incluses." -#: library/os.rst:2252 +#: library/os.rst:2384 msgid "" "Using :func:`scandir` instead of :func:`listdir` can significantly increase " "the performance of code that also needs file type or file attribute " @@ -3155,7 +3357,7 @@ msgstr "" "symboliques ; :func:`os.DirEntry.stat` nécessite toujours un appel système " "sous Unix, mais seulement pour les liens symboliques sous Windows." -#: library/os.rst:2262 +#: library/os.rst:2394 msgid "" "*path* may be a :term:`path-like object`. If *path* is of type ``bytes`` " "(directly or indirectly through the :class:`PathLike` interface), the type " @@ -3169,13 +3371,13 @@ msgstr "" "DirEntry.path` de chaque :class:`os.DirEntry` sera ``bytes`` ; dans toutes " "les autres circonstances, ils seront de type ``str``." -#: library/os.rst:2271 +#: library/os.rst:2403 msgid "" "Raises an :ref:`auditing event ` ``os.scandir`` with argument " "``path``." msgstr "" -#: library/os.rst:2273 +#: library/os.rst:2405 msgid "" "The :func:`scandir` iterator supports the :term:`context manager` protocol " "and has the following method:" @@ -3183,11 +3385,11 @@ msgstr "" "L'itérateur :func:`scandir` gère le protocole :term:`context manager` et " "possède la méthode suivante :" -#: library/os.rst:2278 +#: library/os.rst:2410 msgid "Close the iterator and free acquired resources." msgstr "Ferme l'itérateur et libère les ressources acquises." -#: library/os.rst:2280 +#: library/os.rst:2412 msgid "" "This is called automatically when the iterator is exhausted or garbage " "collected, or when an error happens during iterating. However it is " @@ -3198,7 +3400,7 @@ msgstr "" "l'itération. Il est cependant conseillé de l'appeler explicitement ou " "d'utiliser l'instruction :keyword:`with`." -#: library/os.rst:2287 +#: library/os.rst:2419 msgid "" "The following example shows a simple use of :func:`scandir` to display all " "the files (excluding directories) in the given *path* that don't start with " @@ -3210,7 +3412,7 @@ msgstr "" "*path* et ne débutant pas par ``'.'``. L'appel ``entry.is_file()`` ne va " "généralement pas faire d'appel système supplémentaire ::" -#: library/os.rst:2299 +#: library/os.rst:2431 msgid "" "On Unix-based systems, :func:`scandir` uses the system's `opendir() `_ and " @@ -3229,7 +3431,7 @@ msgstr "" "`_." -#: library/os.rst:2311 +#: library/os.rst:2443 msgid "" "Added support for the :term:`context manager` protocol and the :func:" "`~scandir.close()` method. If a :func:`scandir` iterator is neither " @@ -3241,16 +3443,16 @@ msgstr "" "entièrement consommé ni explicitement fermé, un :exc:`ResourceWarning` sera " "émis dans son destructeur." -#: library/os.rst:2317 +#: library/os.rst:2449 msgid "The function accepts a :term:`path-like object`." msgstr "La fonction accepte un :term:`path-like object`." -#: library/os.rst:2319 +#: library/os.rst:2451 msgid "Added support for :ref:`file descriptors ` on Unix." msgstr "" "Ajout de la gestion des :ref:`descripteurs de fichiers ` sur Unix." -#: library/os.rst:2325 +#: library/os.rst:2457 msgid "" "Object yielded by :func:`scandir` to expose the file path and other file " "attributes of a directory entry." @@ -3258,7 +3460,7 @@ msgstr "" "Objet donné par :func:`scandir` pour exposer le chemin du fichier et " "d'autres attributs de fichier d'une entrée du répertoire." -#: library/os.rst:2328 +#: library/os.rst:2460 msgid "" ":func:`scandir` will provide as much of this information as possible without " "making additional system calls. When a ``stat()`` or ``lstat()`` system call " @@ -3268,7 +3470,7 @@ msgstr "" "d'appels système additionnels. Quand un appel système ``stat()`` ou " "``lstat()`` est réalisé, l'objet ``os.DirEntry`` mettra le résultat en cache." -#: library/os.rst:2332 +#: library/os.rst:2464 msgid "" "``os.DirEntry`` instances are not intended to be stored in long-lived data " "structures; if you know the file metadata has changed or if a long time has " @@ -3281,7 +3483,7 @@ msgstr "" "l'appel à :func:`scandir`, appelez ``os.stat(entry.path)`` pour mettre à " "jour ces informations." -#: library/os.rst:2337 +#: library/os.rst:2469 msgid "" "Because the ``os.DirEntry`` methods can make operating system calls, they " "may also raise :exc:`OSError`. If you need very fine-grained control over " @@ -3293,7 +3495,7 @@ msgstr "" "contrôle fin des erreurs, vous pouvez attraper les :exc:`OSError` en " "appelant les méthodes de ``os.DirEntry`` et les traiter comme il vous semble." -#: library/os.rst:2342 +#: library/os.rst:2474 msgid "" "To be directly usable as a :term:`path-like object`, ``os.DirEntry`` " "implements the :class:`PathLike` interface." @@ -3301,20 +3503,20 @@ msgstr "" "Pour être directement utilisable comme un :term:`path-like object`, ``os." "DirEntry`` implémente l'interface :class:`PathLike`." -#: library/os.rst:2345 +#: library/os.rst:2477 msgid "Attributes and methods on a ``os.DirEntry`` instance are as follows:" msgstr "" "Les attributs et méthodes des instances de ``os.DirEntry`` sont les " "suivants :" -#: library/os.rst:2349 +#: library/os.rst:2481 msgid "" "The entry's base filename, relative to the :func:`scandir` *path* argument." msgstr "" "Le nom de fichier de base de l'entrée, relatif à l'argument *path* de :func:" "`scandir`." -#: library/os.rst:2352 +#: library/os.rst:2484 msgid "" "The :attr:`name` attribute will be ``bytes`` if the :func:`scandir` *path* " "argument is of type ``bytes`` and ``str`` otherwise. Use :func:`~os." @@ -3324,7 +3526,7 @@ msgstr "" "`scandir` est de type ``bytes``, sinon il sera de type ``str``. Utilisez :" "func:`~os.fsdecode` pour décoder des noms de fichiers de types *byte*." -#: library/os.rst:2358 +#: library/os.rst:2490 msgid "" "The entry's full path name: equivalent to ``os.path.join(scandir_path, entry." "name)`` where *scandir_path* is the :func:`scandir` *path* argument. The " @@ -3340,7 +3542,7 @@ msgstr "" "`descripteur de fichier ` l'attribut :attr:`path` sera égal à " "l'attribut :attr:`name`." -#: library/os.rst:2365 +#: library/os.rst:2497 msgid "" "The :attr:`path` attribute will be ``bytes`` if the :func:`scandir` *path* " "argument is of type ``bytes`` and ``str`` otherwise. Use :func:`~os." @@ -3351,11 +3553,11 @@ msgstr "" "``str``. Utilisez :func:`~os.fsdecode` pour décoder des noms de fichiers de " "type *bytes*." -#: library/os.rst:2371 +#: library/os.rst:2503 msgid "Return the inode number of the entry." msgstr "Renvoie le numéro d'*inode* de l'entrée." -#: library/os.rst:2373 +#: library/os.rst:2505 msgid "" "The result is cached on the ``os.DirEntry`` object. Use ``os.stat(entry." "path, follow_symlinks=False).st_ino`` to fetch up-to-date information." @@ -3364,7 +3566,7 @@ msgstr "" "stat(entry.path, follow_symlinks=False).st_ino`` pour obtenir l'information " "à jour." -#: library/os.rst:2377 +#: library/os.rst:2509 msgid "" "On the first, uncached call, a system call is required on Windows but not on " "Unix." @@ -3372,7 +3574,7 @@ msgstr "" "Au premier appel non mis en cache, un appel système est requis sur Windows, " "mais pas sur Unix." -#: library/os.rst:2382 +#: library/os.rst:2514 msgid "" "Return ``True`` if this entry is a directory or a symbolic link pointing to " "a directory; return ``False`` if the entry is or points to any other kind of " @@ -3382,7 +3584,7 @@ msgstr "" "pointant vers un répertoire ; renvoie ``False`` si l'entrée est (ou pointe " "vers) un autre type de fichier, ou s'il n'existe plus." -#: library/os.rst:2386 +#: library/os.rst:2518 msgid "" "If *follow_symlinks* is ``False``, return ``True`` only if this entry is a " "directory (without following symlinks); return ``False`` if the entry is any " @@ -3392,7 +3594,7 @@ msgstr "" "est un répertoire (sans suivre les liens symboliques) ; renvoie ``False`` si " "l'entrée est n'importe quel autre type de fichier ou s'il n'existe plus." -#: library/os.rst:2390 +#: library/os.rst:2522 msgid "" "The result is cached on the ``os.DirEntry`` object, with a separate cache " "for *follow_symlinks* ``True`` and ``False``. Call :func:`os.stat` along " @@ -3402,7 +3604,7 @@ msgstr "" "séparé pour les valeurs ``True`` ou ``False`` de *follow_symlinks*. Appelez :" "func:`os.stat` avec :func:`stat.S_ISDIR` pour obtenir l'information à jour." -#: library/os.rst:2394 +#: library/os.rst:2526 msgid "" "On the first, uncached call, no system call is required in most cases. " "Specifically, for non-symlinks, neither Windows or Unix require a system " @@ -3419,7 +3621,7 @@ msgstr "" "requis pour suivre le lien symbolique, à moins que *follow_symlinks* vaille " "``False``." -#: library/os.rst:2431 +#: library/os.rst:2563 msgid "" "This method can raise :exc:`OSError`, such as :exc:`PermissionError`, but :" "exc:`FileNotFoundError` is caught and not raised." @@ -3428,7 +3630,7 @@ msgstr "" "`PermissionError`, mais :exc:`FileNotFoundError` est interceptée et pas " "levée." -#: library/os.rst:2406 +#: library/os.rst:2538 msgid "" "Return ``True`` if this entry is a file or a symbolic link pointing to a " "file; return ``False`` if the entry is or points to a directory or other non-" @@ -3439,7 +3641,7 @@ msgstr "" "sur un dossier ou sur un répertoire ou autre entrée non-fichier, ou s'il " "n'existe plus." -#: library/os.rst:2410 +#: library/os.rst:2542 msgid "" "If *follow_symlinks* is ``False``, return ``True`` only if this entry is a " "file (without following symlinks); return ``False`` if the entry is a " @@ -3450,7 +3652,7 @@ msgstr "" "si l'entrée est un répertoire ou une autre entrée non-fichier, ou s'il " "n'existe plus." -#: library/os.rst:2414 +#: library/os.rst:2546 msgid "" "The result is cached on the ``os.DirEntry`` object. Caching, system calls " "made, and exceptions raised are as per :func:`~os.DirEntry.is_dir`." @@ -3459,7 +3661,7 @@ msgstr "" "les appels système réalisés, et les exceptions levées sont les mêmes que " "pour :func:`~os.DirEntry.is_dir`." -#: library/os.rst:2419 +#: library/os.rst:2551 msgid "" "Return ``True`` if this entry is a symbolic link (even if broken); return " "``False`` if the entry points to a directory or any kind of file, or if it " @@ -3469,7 +3671,7 @@ msgstr "" "``False`` si l'entrée pinte vers un répertoire ou tout autre type de " "fichier, ou s'il n'existe plus." -#: library/os.rst:2423 +#: library/os.rst:2555 msgid "" "The result is cached on the ``os.DirEntry`` object. Call :func:`os.path." "islink` to fetch up-to-date information." @@ -3477,7 +3679,7 @@ msgstr "" "Le résultat est mis en cache dans l'objet ``os.DirEntry``. Appelez :func:`os." "path.islink` pour obtenir l'information à jour." -#: library/os.rst:2426 +#: library/os.rst:2558 msgid "" "On the first, uncached call, no system call is required in most cases. " "Specifically, neither Windows or Unix require a system call, except on " @@ -3489,7 +3691,7 @@ msgstr "" "certains systèmes de fichiers Unix qui renvoient ``dirent.d_type == " "DT_UNKNOWN``." -#: library/os.rst:2436 +#: library/os.rst:2568 msgid "" "Return a :class:`stat_result` object for this entry. This method follows " "symbolic links by default; to stat a symbolic link add the " @@ -3499,7 +3701,7 @@ msgstr "" "méthode suit les liens symboliques par défaut. Pour avoir les statistiques " "sur un lien symbolique, ajouter l'argument ``follow_symlinks=False``." -#: library/os.rst:2440 +#: library/os.rst:2572 #, fuzzy msgid "" "On Unix, this method always requires a system call. On Windows, it only " @@ -3510,7 +3712,7 @@ msgstr "" "cela requiert uniquement un appel système si *follow_symlinks* vaut ``True`` " "et l'entrée n'est pas un lien symbolique." -#: library/os.rst:2445 +#: library/os.rst:2577 msgid "" "On Windows, the ``st_ino``, ``st_dev`` and ``st_nlink`` attributes of the :" "class:`stat_result` are always set to zero. Call :func:`os.stat` to get " @@ -3520,7 +3722,7 @@ msgstr "" "classe :class:`stat_result` sont toujours définis à 0. Appelez la fonction :" "func:`os.stat` pour avoir ces attributs." -#: library/os.rst:2449 +#: library/os.rst:2581 msgid "" "The result is cached on the ``os.DirEntry`` object, with a separate cache " "for *follow_symlinks* ``True`` and ``False``. Call :func:`os.stat` to fetch " @@ -3530,7 +3732,7 @@ msgstr "" "séparé pour les valeurs ``True`` ou ``False`` de *follow_symlinks*. Appelez :" "func:`os.stat` pour obtenir l'information à jour." -#: library/os.rst:2453 +#: library/os.rst:2585 msgid "" "Note that there is a nice correspondence between several attributes and " "methods of ``os.DirEntry`` and of :class:`pathlib.Path`. In particular, the " @@ -3542,7 +3744,7 @@ msgstr "" "``name`` a la même signification, ainsi que les méthodes ``is_dir()``, " "``is_file()``, ``is_symlink()`` et ``stat()``." -#: library/os.rst:2461 +#: library/os.rst:2593 msgid "" "Added support for the :class:`~os.PathLike` interface. Added support for :" "class:`bytes` paths on Windows." @@ -3550,7 +3752,7 @@ msgstr "" "Prise en charge de l'interface :class:`~os.PathLike`. Ajout du support des " "chemins :class:`bytes` sous Windows." -#: library/os.rst:2468 +#: library/os.rst:2600 msgid "" "Get the status of a file or a file descriptor. Perform the equivalent of a :" "c:func:`stat` system call on the given path. *path* may be specified as " @@ -3564,7 +3766,7 @@ msgstr "" "ou indirectement à travers une interface :class:`PathLike` -- ou comme un " "descripteur de fichier ouvert. Renvoie un objet :class:`stat_result`." -#: library/os.rst:2474 +#: library/os.rst:2606 msgid "" "This function normally follows symlinks; to stat a symlink add the argument " "``follow_symlinks=False``, or use :func:`lstat`." @@ -3573,7 +3775,7 @@ msgstr "" "informations d'un lien symbolique, ajoutez l'argument " "``follow_symlinks=False`` ou utilisez la fonction :func:`lstat`." -#: library/os.rst:3205 library/os.rst:3237 library/os.rst:3257 +#: library/os.rst:3433 library/os.rst:3465 library/os.rst:3485 msgid "" "This function can support :ref:`specifying a file descriptor ` and :" "ref:`not following symlinks `." @@ -3582,7 +3784,7 @@ msgstr "" "fichier ` et :ref:`le non-suivi des liens symboliques " "`." -#: library/os.rst:2480 +#: library/os.rst:2612 msgid "" "On Windows, passing ``follow_symlinks=False`` will disable following all " "name-surrogate reparse points, which includes symlinks and directory " @@ -3596,15 +3798,15 @@ msgid "" "junction points, which will raise the usual exceptions." msgstr "" -#: library/os.rst:2493 +#: library/os.rst:3353 msgid "Example::" msgstr "Exemple ::" -#: library/os.rst:2506 +#: library/os.rst:2638 msgid ":func:`fstat` and :func:`lstat` functions." msgstr "les fonctions :func:`fstat` et :func:`lstat`." -#: library/os.rst:2508 +#: library/os.rst:2640 msgid "" "Added the *dir_fd* and *follow_symlinks* arguments, specifying a file " "descriptor instead of a path." @@ -3612,7 +3814,7 @@ msgstr "" "Les arguments *dir_fd* et *follow_symlinks* ont été ajoutés, spécification " "d'un descripteur de fichier à la place d'un chemin ajoutée également." -#: library/os.rst:2515 +#: library/os.rst:2647 msgid "" "On Windows, all reparse points that can be resolved by the operating system " "are now followed, and passing ``follow_symlinks=False`` disables following " @@ -3622,7 +3824,7 @@ msgid "" "of raising an error." msgstr "" -#: library/os.rst:2526 +#: library/os.rst:2658 msgid "" "Object whose attributes correspond roughly to the members of the :c:type:" "`stat` structure. It is used for the result of :func:`os.stat`, :func:`os." @@ -3632,16 +3834,16 @@ msgstr "" "structure :c:func:`stat`. Utilisé pour le résultat des fonctions :func:`os." "stat`, :func:`os.fstat`, et :func:`os.lstat`." -#: library/os.rst:2530 +#: library/os.rst:2662 msgid "Attributes:" msgstr "Attributs :" -#: library/os.rst:2534 +#: library/os.rst:2666 msgid "File mode: file type and file mode bits (permissions)." msgstr "" "Mode du fichier : type du fichier et bits de mode du fichier (permissions)." -#: library/os.rst:2538 +#: library/os.rst:2670 msgid "" "Platform dependent, but if non-zero, uniquely identifies the file for a " "given value of ``st_dev``. Typically:" @@ -3650,11 +3852,11 @@ msgstr "" "manière unique le fichier pour une certaine valeur de ``st_dev``. " "Typiquement :" -#: library/os.rst:2541 +#: library/os.rst:2673 msgid "the inode number on Unix," msgstr "le numéro d'*inode* sur Unix," -#: library/os.rst:2542 +#: library/os.rst:2674 msgid "" "the `file index `_ on " "Windows" @@ -3662,23 +3864,23 @@ msgstr "" "l’`index de fichier `_ " "sur Windows" -#: library/os.rst:2548 +#: library/os.rst:2680 msgid "Identifier of the device on which this file resides." msgstr "Identifiant du périphérique sur lequel ce fichier se trouve." -#: library/os.rst:2552 +#: library/os.rst:2684 msgid "Number of hard links." msgstr "Nombre de liens matériels." -#: library/os.rst:2556 +#: library/os.rst:2688 msgid "User identifier of the file owner." msgstr "Identifiant d'utilisateur du propriétaire du fichier." -#: library/os.rst:2560 +#: library/os.rst:2692 msgid "Group identifier of the file owner." msgstr "Identifiant de groupe du propriétaire du fichier." -#: library/os.rst:2564 +#: library/os.rst:2696 msgid "" "Size of the file in bytes, if it is a regular file or a symbolic link. The " "size of a symbolic link is the length of the pathname it contains, without a " @@ -3688,37 +3890,37 @@ msgstr "" "symbolique. La taille d'un lien symbolique est la longueur du nom de chemin " "qu'il contient sans le byte nul final." -#: library/os.rst:2568 +#: library/os.rst:2700 msgid "Timestamps:" msgstr "Horodatages :" -#: library/os.rst:2572 +#: library/os.rst:2704 msgid "Time of most recent access expressed in seconds." msgstr "Moment de l'accès le plus récent, exprimé en secondes." -#: library/os.rst:2576 +#: library/os.rst:2708 msgid "Time of most recent content modification expressed in seconds." msgstr "" "Moment de la modification de contenu la plus récente, exprimé en secondes." -#: library/os.rst:2596 +#: library/os.rst:2728 msgid "Platform dependent:" msgstr "Dépendant de la plate-forme :" -#: library/os.rst:2598 +#: library/os.rst:2730 msgid "the time of most recent metadata change on Unix," msgstr "le moment du changement de méta-données le plus récent sur Unix," -#: library/os.rst:2583 +#: library/os.rst:2715 msgid "the time of creation on Windows, expressed in seconds." msgstr "le moment de création sur Windows, exprimé en secondes." -#: library/os.rst:2587 +#: library/os.rst:2719 msgid "Time of most recent access expressed in nanoseconds as an integer." msgstr "" "Moment de l'accès le plus récent, exprimé en nanosecondes, par un entier." -#: library/os.rst:2591 +#: library/os.rst:2723 msgid "" "Time of most recent content modification expressed in nanoseconds as an " "integer." @@ -3726,13 +3928,13 @@ msgstr "" "Moment de la modification de contenu la plus récente, exprimé en " "nanosecondes, par un entier." -#: library/os.rst:2599 +#: library/os.rst:2731 msgid "" "the time of creation on Windows, expressed in nanoseconds as an integer." msgstr "" "le moment de création sur Windows, exprimé en nanosecondes, par un entier." -#: library/os.rst:2604 +#: library/os.rst:2736 msgid "" "The exact meaning and resolution of the :attr:`st_atime`, :attr:`st_mtime`, " "and :attr:`st_ctime` attributes depend on the operating system and the file " @@ -3747,7 +3949,7 @@ msgstr "" "secondes, et :attr:`st_atime` a une précision de 1 jour. Regardez la " "documentation de votre système d'exploitation pour plus de détails." -#: library/os.rst:2611 +#: library/os.rst:2743 msgid "" "Similarly, although :attr:`st_atime_ns`, :attr:`st_mtime_ns`, and :attr:" "`st_ctime_ns` are always expressed in nanoseconds, many systems do not " @@ -3766,7 +3968,7 @@ msgstr "" "avez besoin d'horodatages exacts, vous devriez toujours utiliser :attr:" "`st_atime_ns`, :attr:`st_mtime_ns`, et :attr:`st_ctime_ns`." -#: library/os.rst:2620 +#: library/os.rst:2752 msgid "" "On some Unix systems (such as Linux), the following attributes may also be " "available:" @@ -3774,7 +3976,7 @@ msgstr "" "Sur certains systèmes Unix (tels que Linux), les attributs suivants peuvent " "également être disponibles :" -#: library/os.rst:2625 +#: library/os.rst:2757 msgid "" "Number of 512-byte blocks allocated for file. This may be smaller than :attr:" "`st_size`/512 when the file has holes." @@ -3782,7 +3984,7 @@ msgstr "" "Nombre de blocs de 512 *bytes* alloués pour le fichier. Cette valeur peut " "être inférieure à :attr:`st_size`/512 quand le fichier a des trous." -#: library/os.rst:2630 +#: library/os.rst:2762 msgid "" "\"Preferred\" blocksize for efficient file system I/O. Writing to a file in " "smaller chunks may cause an inefficient read-modify-rewrite." @@ -3791,15 +3993,15 @@ msgstr "" "système de fichiers. Écrire dans un fichier avec des blocs plus petits peut " "causer des modifications (lecture-écriture-réécriture) inefficaces." -#: library/os.rst:2635 +#: library/os.rst:2767 msgid "Type of device if an inode device." msgstr "Type de périphérique si l'*inode* représente un périphérique." -#: library/os.rst:2639 +#: library/os.rst:2771 msgid "User defined flags for file." msgstr "Marqueurs définis par l'utilisateur pour le fichier." -#: library/os.rst:2641 +#: library/os.rst:2773 msgid "" "On other Unix systems (such as FreeBSD), the following attributes may be " "available (but may be only filled out if root tries to use them):" @@ -3808,22 +4010,22 @@ msgstr "" "peuvent être disponibles (mais peuvent être complétés uniquement lorsque le " "super-utilisateur *root* tente de les utiliser) :" -#: library/os.rst:2646 +#: library/os.rst:2778 msgid "File generation number." msgstr "Nombre de génération de fichier." -#: library/os.rst:2650 +#: library/os.rst:2782 msgid "Time of file creation." msgstr "Moment de la création du fichier." -#: library/os.rst:2652 +#: library/os.rst:2784 msgid "" "On Solaris and derivatives, the following attributes may also be available:" msgstr "" "Sur les systèmes Solaris et dérivés, les attributs suivants peuvent " "également être disponibles :" -#: library/os.rst:2657 +#: library/os.rst:2789 msgid "" "String that uniquely identifies the type of the filesystem that contains the " "file." @@ -3831,31 +4033,32 @@ msgstr "" "Chaîne qui identifie de manière unique le type du système de fichiers qui " "contient le fichier." -#: library/os.rst:2660 -msgid "On Mac OS systems, the following attributes may also be available:" +#: library/os.rst:2792 +#, fuzzy +msgid "On macOS systems, the following attributes may also be available:" msgstr "" "Sur les systèmes Mac OS, les attributs suivants peuvent également être " "disponibles :" -#: library/os.rst:2664 +#: library/os.rst:2796 msgid "Real size of the file." msgstr "Taillé réelle du fichier." -#: library/os.rst:2668 +#: library/os.rst:2800 msgid "Creator of the file." msgstr "Créateur du fichier." -#: library/os.rst:2672 +#: library/os.rst:2804 msgid "File type." msgstr "Type du fichier." -#: library/os.rst:2674 +#: library/os.rst:2806 #, fuzzy msgid "On Windows systems, the following attributes are also available:" msgstr "" "Sur les systèmes Windows, les attributs suivants sont également disponibles :" -#: library/os.rst:2678 +#: library/os.rst:2810 msgid "" "Windows file attributes: ``dwFileAttributes`` member of the " "``BY_HANDLE_FILE_INFORMATION`` structure returned by :c:func:" @@ -3867,14 +4070,14 @@ msgstr "" "`GetileInformationByHandle`. Soir les constantes ``FILE_ATTRIBUTE_*`` du " "module :mod:`stat`." -#: library/os.rst:2685 +#: library/os.rst:2817 msgid "" "When :attr:`st_file_attributes` has the ``FILE_ATTRIBUTE_REPARSE_POINT`` " "set, this field contains the tag identifying the type of reparse point. See " "the ``IO_REPARSE_TAG_*`` constants in the :mod:`stat` module." msgstr "" -#: library/os.rst:2689 +#: library/os.rst:2821 msgid "" "The standard module :mod:`stat` defines functions and constants that are " "useful for extracting information from a :c:type:`stat` structure. (On " @@ -3884,7 +4087,7 @@ msgstr "" "sont utiles pour l'extraction d'informations d'une structure :c:type:`stat`. " "(Sur Windows, certains éléments sont remplis avec des valeurs factices.)" -#: library/os.rst:2693 +#: library/os.rst:2825 msgid "" "For backward compatibility, a :class:`stat_result` instance is also " "accessible as a tuple of at least 10 integers giving the most important (and " @@ -3906,7 +4109,7 @@ msgstr "" "élément de type :class:`stat_result` comme un *n*-uplet donne toujours des " "entiers." -#: library/os.rst:2702 +#: library/os.rst:2834 msgid "" "Added the :attr:`st_atime_ns`, :attr:`st_mtime_ns`, and :attr:`st_ctime_ns` " "members." @@ -3914,32 +4117,32 @@ msgstr "" "Les attributs :attr:`st_atime_ns`, :attr:`st_mtime_ns`, et :attr:" "`st_ctime_ns` ont été ajoutés." -#: library/os.rst:2706 +#: library/os.rst:2838 msgid "Added the :attr:`st_file_attributes` member on Windows." msgstr "L'attribut :attr:`st_file_attributes` a été ajouté sur Windows." -#: library/os.rst:2709 +#: library/os.rst:2841 msgid "Windows now returns the file index as :attr:`st_ino` when available." msgstr "" "Windows renvoie maintenant l'index du fichier dans l'attribut :attr:" "`st_ino`, lorsqu'il est disponible." -#: library/os.rst:2713 +#: library/os.rst:2845 msgid "Added the :attr:`st_fstype` member to Solaris/derivatives." msgstr "Ajout de l'attribut :attr:`st_fstype` sur Solaris et dérivés." -#: library/os.rst:2716 +#: library/os.rst:2848 #, fuzzy msgid "Added the :attr:`st_reparse_tag` member on Windows." msgstr "L'attribut :attr:`st_file_attributes` a été ajouté sur Windows." -#: library/os.rst:2719 +#: library/os.rst:2851 msgid "" "On Windows, the :attr:`st_mode` member now identifies special files as :" "const:`S_IFCHR`, :const:`S_IFIFO` or :const:`S_IFBLK` as appropriate." msgstr "" -#: library/os.rst:2726 +#: library/os.rst:2858 msgid "" "Perform a :c:func:`statvfs` system call on the given path. The return value " "is an object whose attributes describe the filesystem on the given path, and " @@ -3956,7 +4159,7 @@ msgstr "" "`f_ffree`, :attr:`f_favail`, :attr:`f_flag`, :attr:`f_namemax`, :attr:" "`f_fsid`." -#: library/os.rst:2733 +#: library/os.rst:2865 msgid "" "Two module-level constants are defined for the :attr:`f_flag` attribute's " "bit-flags: if :const:`ST_RDONLY` is set, the filesystem is mounted read-" @@ -3968,7 +4171,7 @@ msgstr "" "monté en lecture-seule, et si :const:`ST_NOSUID` est activé, la sémantique " "des bits de *setuid* / *getuid* est désactivée ou non gérée." -#: library/os.rst:2738 +#: library/os.rst:2870 msgid "" "Additional module-level constants are defined for GNU/glibc based systems. " "These are :const:`ST_NODEV` (disallow access to device special files), :" @@ -3992,11 +4195,11 @@ msgstr "" "à jour les moments d'accès aux répertoires), :const:`ST_REALTIME` (Met " "*atime* à jour relativement à *mtime* / *ctime*)." -#: library/os.rst:2751 +#: library/os.rst:2883 msgid "The :const:`ST_RDONLY` and :const:`ST_NOSUID` constants were added." msgstr "Ajout des constantes :const:`ST_RDONLY` et :const:`ST_NOSUID`." -#: library/os.rst:2757 +#: library/os.rst:2889 msgid "" "The :const:`ST_NODEV`, :const:`ST_NOEXEC`, :const:`ST_SYNCHRONOUS`, :const:" "`ST_MANDLOCK`, :const:`ST_WRITE`, :const:`ST_APPEND`, :const:" @@ -4008,11 +4211,11 @@ msgstr "" "`ST_APPEND`, :const:`ST_IMMUTABLE`, :const:`ST_NOATIME`, :const:" "`ST_NODIRATIME`, et :const:`ST_RELATIME`." -#: library/os.rst:2766 +#: library/os.rst:2898 msgid "Added :attr:`f_fsid`." msgstr "Ajout de :attr:`f_fsid`." -#: library/os.rst:2772 +#: library/os.rst:2904 #, fuzzy msgid "" "A :class:`set` object indicating which functions in the :mod:`os` module " @@ -4032,7 +4235,7 @@ msgstr "" "toujours de spécifier le paramètre, mais lèvent une exception si la " "fonctionnalité n'est pas réellement accessible." -#: library/os.rst:2782 +#: library/os.rst:2914 #, fuzzy msgid "" "To check whether a particular function accepts an open file descriptor for " @@ -4046,7 +4249,7 @@ msgstr "" "détermine si :func:`os.chdir` accepte un descripteur de fichier ouvert quand " "appelée sur votre plate-forme actuelle ::" -#: library/os.rst:2789 +#: library/os.rst:2921 msgid "" "Currently *dir_fd* parameters only work on Unix platforms; none of them work " "on Windows." @@ -4054,7 +4257,7 @@ msgstr "" "Actuellement, le paramètre *dir_fd* ne fonctionne que sur les plate-formes " "Unix. Il ne fonctionne jamais sur Windows." -#: library/os.rst:2797 +#: library/os.rst:2929 #, fuzzy msgid "" "A :class:`set` object indicating whether :func:`os.access` permits " @@ -4068,13 +4271,13 @@ msgstr "" "func:`os.access`. Si la plate-forme le gère, la collection contiendra :func:" "`os.access`, sinon elle sera vide." -#: library/os.rst:2803 +#: library/os.rst:2935 msgid "" "This expression evaluates to ``True`` if :func:`os.access` supports " "``effective_ids=True`` on the local platform::" msgstr "" -#: library/os.rst:2808 +#: library/os.rst:2940 #, fuzzy msgid "" "Currently *effective_ids* is only supported on Unix platforms; it does not " @@ -4083,7 +4286,7 @@ msgstr "" "Actuellement, *effective_ids* ne fonctionne que sur les plate-formes Unix, " "ça ne fonctionne pas sur Windows." -#: library/os.rst:2816 +#: library/os.rst:2948 #, fuzzy msgid "" "A :class:`set` object indicating which functions in the :mod:`os` module " @@ -4101,7 +4304,7 @@ msgstr "" "mais elles lèveront une exception si la fonctionnalité n'est pas réellement " "disponible." -#: library/os.rst:2823 +#: library/os.rst:2955 #, fuzzy msgid "" "To determine whether a particular function permits specifying an open file " @@ -4116,7 +4319,7 @@ msgstr "" "détermine si :func:`os.chdir` accepte un descripteur de fichier ouvert quand " "appelée sur votre plate-forme actuelle ::" -#: library/os.rst:2836 +#: library/os.rst:2968 #, fuzzy msgid "" "A :class:`set` object indicating which functions in the :mod:`os` module " @@ -4137,7 +4340,7 @@ msgstr "" "permettent toujours de spécifier le paramètre, mais lèvent une exception si " "la fonctionnalité n'est pas réellement disponible." -#: library/os.rst:2846 +#: library/os.rst:2978 #, fuzzy msgid "" "To check whether a particular function accepts ``False`` for its " @@ -4151,11 +4354,11 @@ msgstr "" "``supports_follow_symlinks``. Par exemple, cette expression détermine si le " "paramètre *follow_symlink* de :func:`os.stat` est disponible ::" -#: library/os.rst:2859 +#: library/os.rst:2991 msgid "Create a symbolic link pointing to *src* named *dst*." msgstr "Crée un lien symbolique pointant vers *src* et appelé *dst*." -#: library/os.rst:2861 +#: library/os.rst:2993 msgid "" "On Windows, a symlink represents either a file or a directory, and does not " "morph to the target dynamically. If the target is present, the type of the " @@ -4171,7 +4374,7 @@ msgstr "" "symbolique sera créé comme un répertoire, sinon comme un fichier (par " "défaut). Sur les autres plateformes, *target_id_directory* est ignoré." -#: library/os.rst:2872 +#: library/os.rst:3004 msgid "" "On newer versions of Windows 10, unprivileged accounts can create symlinks " "if Developer Mode is enabled. When Developer Mode is not available/enabled, " @@ -4179,20 +4382,20 @@ msgid "" "must be run as an administrator." msgstr "" -#: library/os.rst:2878 +#: library/os.rst:3010 msgid "" ":exc:`OSError` is raised when the function is called by an unprivileged user." msgstr "" ":exc:`OSError` est levée quand la fonction est appelée par un utilisateur " "sans privilèges." -#: library/os.rst:2881 +#: library/os.rst:3013 msgid "" "Raises an :ref:`auditing event ` ``os.symlink`` with arguments " "``src``, ``dst``, ``dir_fd``." msgstr "" -#: library/os.rst:2888 +#: library/os.rst:3020 msgid "" "Added the *dir_fd* argument, and now allow *target_is_directory* on non-" "Windows platforms." @@ -4200,15 +4403,15 @@ msgstr "" "Ajout de l'argument *dir_fd* et maintenant, permission de " "*target_is_directory* sur les plate-formes non Windows." -#: library/os.rst:2895 +#: library/os.rst:3027 msgid "Added support for unelevated symlinks on Windows with Developer Mode." msgstr "" -#: library/os.rst:2901 +#: library/os.rst:3033 msgid "Force write of everything to disk." msgstr "Force l'écriture de tout sur le disque." -#: library/os.rst:2910 +#: library/os.rst:3042 msgid "" "Truncate the file corresponding to *path*, so that it is at most *length* " "bytes in size." @@ -4216,13 +4419,13 @@ msgstr "" "Tronque le fichier correspondant à *path*, afin qu'il soit au maximum long " "de *length* bytes." -#: library/os.rst:2915 +#: library/os.rst:3047 msgid "" "Raises an :ref:`auditing event ` ``os.truncate`` with arguments " "``path``, ``length``." msgstr "" -#: library/os.rst:2930 +#: library/os.rst:3062 msgid "" "Remove (delete) the file *path*. This function is semantically identical " "to :func:`remove`; the ``unlink`` name is its traditional Unix name. Please " @@ -4232,13 +4435,13 @@ msgstr "" "identique à :func:`remove`. Le nom ``unlink`` est un nom Unix traditionnel. " "Veuillez voir la documentation de :func:`remove` pour plus d'informations." -#: library/os.rst:2946 +#: library/os.rst:3078 msgid "Set the access and modified times of the file specified by *path*." msgstr "" "Voir les derniers moments d'accès et de modification du fichier spécifiés " "par *path*." -#: library/os.rst:2948 +#: library/os.rst:3080 msgid "" ":func:`utime` takes two optional parameters, *times* and *ns*. These specify " "the times set on *path* and are used as follows:" @@ -4246,7 +4449,7 @@ msgstr "" "La fonction :func:`utime` prend deux paramètres optionnels, *times* et *ns*. " "Ils spécifient le temps mis pour *path* et est utilisé comme suit :" -#: library/os.rst:2951 +#: library/os.rst:3083 msgid "" "If *ns* is specified, it must be a 2-tuple of the form ``(atime_ns, " "mtime_ns)`` where each member is an int expressing nanoseconds." @@ -4254,7 +4457,7 @@ msgstr "" "Si *ns* est spécifié, ce doit être un couple de la forme ``(atime_ns, " "mtime_ns)`` où chaque membre est un entier qui exprime des nanosecondes." -#: library/os.rst:2954 +#: library/os.rst:3086 msgid "" "If *times* is not ``None``, it must be a 2-tuple of the form ``(atime, " "mtime)`` where each member is an int or float expressing seconds." @@ -4263,7 +4466,7 @@ msgstr "" "``(atime, mtime)`` où chaque membre est un entier ou une expression à " "virgule flottante." -#: library/os.rst:2957 +#: library/os.rst:3089 msgid "" "If *times* is ``None`` and *ns* is unspecified, this is equivalent to " "specifying ``ns=(atime_ns, mtime_ns)`` where both times are the current time." @@ -4272,12 +4475,12 @@ msgstr "" "spécifier ``ns = (atime_ns, mtime_ns)`` où les deux moments sont le moment " "actuel." -#: library/os.rst:2961 +#: library/os.rst:3093 msgid "It is an error to specify tuples for both *times* and *ns*." msgstr "" "Il est erroné de spécifier des *n*-uplets pour *times* et *ns* à la fois." -#: library/os.rst:2963 +#: library/os.rst:3095 #, fuzzy msgid "" "Note that the exact times you set here may not be returned by a subsequent :" @@ -4297,13 +4500,13 @@ msgstr "" "*st_atime_ns* et *st_mtime_ns* de l'objet résultat de la fonction :func:`os." "stat` avec le paramètre *ns* valant `utime`." -#: library/os.rst:2974 +#: library/os.rst:3106 msgid "" "Raises an :ref:`auditing event ` ``os.utime`` with arguments " "``path``, ``times``, ``ns``, ``dir_fd``." msgstr "" -#: library/os.rst:2976 +#: library/os.rst:3108 msgid "" "Added support for specifying *path* as an open file descriptor, and the " "*dir_fd*, *follow_symlinks*, and *ns* parameters." @@ -4311,7 +4514,7 @@ msgstr "" "Ajoute la prise en charge d'un descripteur de fichier pour *path* et des " "paramètres *dir_fd*, *follow_symlinks* et *ns*." -#: library/os.rst:2990 +#: library/os.rst:3122 msgid "" "Generate the file names in a directory tree by walking the tree either top-" "down or bottom-up. For each directory in the tree rooted at directory *top* " @@ -4323,7 +4526,7 @@ msgstr "" "l'arbre enraciné en le répertoire *rop* (incluant ledit répertoire *top*), " "fournit un triplet ``(dirpath, dirnames, filenames)``." -#: library/os.rst:2995 +#: library/os.rst:3127 #, fuzzy msgid "" "*dirpath* is a string, the path to the directory. *dirnames* is a list of " @@ -4344,7 +4547,7 @@ msgstr "" "(qui commence à *top*) vers un répertoire dans *dirpath*, faites ``os.path." "join(dirpath, name)``." -#: library/os.rst:3005 +#: library/os.rst:3137 msgid "" "If optional argument *topdown* is ``True`` or not specified, the triple for " "a directory is generated before the triples for any of its subdirectories " @@ -4363,7 +4566,7 @@ msgstr "" "avant que les *n*-uplets pour le répertoires et ses sous-répertoires ne " "soient générés." -#: library/os.rst:3013 +#: library/os.rst:3145 msgid "" "When *topdown* is ``True``, the caller can modify the *dirnames* list in-" "place (perhaps using :keyword:`del` or slice assignment), and :func:`walk` " @@ -4386,7 +4589,7 @@ msgstr "" "parce qu'en mode bas-en-haut, les répertoires dans *dirnames* sont générés " "avant que *dirpath* ne soit lui-même généré." -#: library/os.rst:3022 +#: library/os.rst:3154 msgid "" "By default, errors from the :func:`scandir` call are ignored. If optional " "argument *onerror* is specified, it should be a function; it will be called " @@ -4402,7 +4605,7 @@ msgstr "" "avorter le parcours. Notez que le nom de fichier est disponible dans " "l'attribut ``filename`` de l'objet exception." -#: library/os.rst:3028 +#: library/os.rst:3160 msgid "" "By default, :func:`walk` will not walk down into symbolic links that resolve " "to directories. Set *followlinks* to ``True`` to visit directories pointed " @@ -4412,7 +4615,7 @@ msgstr "" "un répertoire. Définissez *followlinks* avec ``True`` pour visiter les " "répertoires pointés par des liens symboliques sur les systèmes qui le gère." -#: library/os.rst:3034 +#: library/os.rst:3166 msgid "" "Be aware that setting *followlinks* to ``True`` can lead to infinite " "recursion if a link points to a parent directory of itself. :func:`walk` " @@ -4422,7 +4625,7 @@ msgstr "" "récursion infinie si un lien pointe vers un répertoire parent de lui-même. :" "func:`walk` ne garde pas de trace des répertoires qu'il a déjà visité." -#: library/os.rst:3040 +#: library/os.rst:3172 msgid "" "If you pass a relative pathname, don't change the current working directory " "between resumptions of :func:`walk`. :func:`walk` never changes the current " @@ -4432,7 +4635,7 @@ msgstr "" "actuel entre deux exécutions de :func:`walk`. :func:`walk` ne change jamais " "le répertoire actuel, et suppose que l'appelant ne le fait pas non plus." -#: library/os.rst:3105 +#: library/os.rst:3237 msgid "" "This example displays the number of bytes taken by non-directory files in " "each directory under the starting directory, except that it doesn't look " @@ -4442,7 +4645,7 @@ msgstr "" "dans chaque répertoire à partir du répertoire de départ, si ce n'est qu'il " "ne cherche pas après un sous-répertoire CSV ::" -#: library/os.rst:3057 +#: library/os.rst:3189 msgid "" "In the next example (simple implementation of :func:`shutil.rmtree`), " "walking the tree bottom-up is essential, :func:`rmdir` doesn't allow " @@ -4452,13 +4655,13 @@ msgstr "" "parcourir l'arbre de bas-en-haut est essentiel : :func:`rmdir` ne permet pas " "de supprimer un répertoire avant qu'un ne soit vide ::" -#: library/os.rst:3072 +#: library/os.rst:3204 msgid "" "Raises an :ref:`auditing event ` ``os.walk`` with arguments " "``top``, ``topdown``, ``onerror``, ``followlinks``." msgstr "" -#: library/os.rst:3074 +#: library/os.rst:3206 msgid "" "This function now calls :func:`os.scandir` instead of :func:`os.listdir`, " "making it faster by reducing the number of calls to :func:`os.stat`." @@ -4467,7 +4670,7 @@ msgstr "" "listdir`, ce qui la rend plus rapide en réduisant le nombre d'appels à :func:" "`os.stat`." -#: library/os.rst:3088 +#: library/os.rst:3220 msgid "" "This behaves exactly like :func:`walk`, except that it yields a 4-tuple " "``(dirpath, dirnames, filenames, dirfd)``, and it supports ``dir_fd``." @@ -4475,7 +4678,7 @@ msgstr "" "Se comporte exactement comme :func:`walk`, si ce n'est qu'il fournit un " "quadruplet ``(dirpath, dirnames, filenames, dirfd)``, et gère ``dir_fd``." -#: library/os.rst:3091 +#: library/os.rst:3223 msgid "" "*dirpath*, *dirnames* and *filenames* are identical to :func:`walk` output, " "and *dirfd* is a file descriptor referring to the directory *dirpath*." @@ -4484,7 +4687,7 @@ msgstr "" "`walk` et *dirfd* est un descripteur de fichier faisant référence au " "répertoire *dirpath*." -#: library/os.rst:3094 +#: library/os.rst:3226 msgid "" "This function always supports :ref:`paths relative to directory descriptors " "` and :ref:`not following symlinks `. Note however " @@ -4497,7 +4700,7 @@ msgstr "" "fonctions, la valeur par défaut de *follow_symlinks* pour :func:`walk` est " "``False``." -#: library/os.rst:3101 +#: library/os.rst:3233 msgid "" "Since :func:`fwalk` yields file descriptors, those are only valid until the " "next iteration step, so you should duplicate them (e.g. with :func:`dup`) if " @@ -4507,7 +4710,7 @@ msgstr "" "valides que jusque la prochaine itération. Donc vous devriez les dupliquer " "(par exemple avec :func:`dup`) si vous désirez les garder plus longtemps." -#: library/os.rst:3118 +#: library/os.rst:3250 msgid "" "In the next example, walking the tree bottom-up is essential: :func:`rmdir` " "doesn't allow deleting a directory before the directory is empty::" @@ -4516,17 +4719,17 @@ msgstr "" "func:`rmdir` ne permet pas de supprimer un répertoire avant qu'il ne soit " "vide ::" -#: library/os.rst:3133 +#: library/os.rst:3265 msgid "" "Raises an :ref:`auditing event ` ``os.fwalk`` with arguments " "``top``, ``topdown``, ``onerror``, ``follow_symlinks``, ``dir_fd``." msgstr "" -#: library/os.rst:3142 +#: library/os.rst:3274 msgid "Added support for :class:`bytes` paths." msgstr "Ajout de la gestion des chemins de type :class:`bytes`." -#: library/os.rst:3148 +#: library/os.rst:3280 msgid "" "Create an anonymous file and return a file descriptor that refers to it. " "*flags* must be one of the ``os.MFD_*`` constants available on the system " @@ -4534,7 +4737,7 @@ msgid "" "descriptor is :ref:`non-inheritable `." msgstr "" -#: library/os.rst:3153 +#: library/os.rst:3285 msgid "" "The name supplied in *name* is used as a filename and will be displayed as " "the target of the corresponding symbolic link in the directory ``/proc/self/" @@ -4544,7 +4747,7 @@ msgid "" "side effects." msgstr "" -#: library/os.rst:3161 +#: library/os.rst:3293 msgid "" ":ref:`Availability `: Linux 3.17 or newer with glibc 2.27 or " "newer." @@ -4552,11 +4755,11 @@ msgstr "" ":ref:`Disponibilité ` : Linux 3.17 ou plus récent avec glibc " "2.27 ou plus récente." -#: library/os.rst:3183 +#: library/os.rst:3315 msgid "These flags can be passed to :func:`memfd_create`." msgstr "" -#: library/os.rst:3187 +#: library/os.rst:3319 #, fuzzy msgid "" ":ref:`Availability `: Linux 3.17 or newer with glibc 2.27 or " @@ -4566,15 +4769,115 @@ msgstr "" "6.0 et plus récent, OpenBSD 2.7 et plus récent. L'utilisation de *flags* " "requiert Linux 4.6 ou plus récent." -#: library/os.rst:3192 +#: library/os.rst:3325 +msgid "" +"Create and return an event file descriptor. The file descriptors supports " +"raw :func:`read` and :func:`write` with a buffer size of 8, :func:`~select." +"select`, :func:`~select.poll` and similar. See man page :manpage:" +"`eventfd(2)` for more information. By default, the new file descriptor is :" +"ref:`non-inheritable `." +msgstr "" + +#: library/os.rst:3331 +msgid "" +"*initval* is the initial value of the event counter. The initial value must " +"be an 32 bit unsigned integer. Please note that the initial value is limited " +"to a 32 bit unsigned int although the event counter is an unsigned 64 bit " +"integer with a maximum value of 2\\ :sup:`64`\\ -\\ 2." +msgstr "" + +#: library/os.rst:3336 +msgid "" +"*flags* can be constructed from :const:`EFD_CLOEXEC`, :const:`EFD_NONBLOCK`, " +"and :const:`EFD_SEMAPHORE`." +msgstr "" + +#: library/os.rst:3339 +msgid "" +"If :const:`EFD_SEMAPHORE` is specified and the event counter is non-zero, :" +"func:`eventfd_read` returns 1 and decrements the counter by one." +msgstr "" + +#: library/os.rst:3342 +msgid "" +"If :const:`EFD_SEMAPHORE` is not specified and the event counter is non-" +"zero, :func:`eventfd_read` returns the current event counter value and " +"resets the counter to zero." +msgstr "" + +#: library/os.rst:3346 +msgid "" +"If the event counter is zero and :const:`EFD_NONBLOCK` is not specified, :" +"func:`eventfd_read` blocks." +msgstr "" + +#: library/os.rst:3349 +msgid "" +":func:`eventfd_write` increments the event counter. Write blocks if the " +"write operation would increment the counter to a value larger than 2\\ :sup:" +"`64`\\ -\\ 2." +msgstr "" + +#: library/os.rst:3371 +#, fuzzy +msgid "" +":ref:`Availability `: Linux 2.6.27 or newer with glibc 2.8 or " +"newer." +msgstr "" +":ref:`Disponibilité ` : Linux 3.17 ou plus récent avec glibc " +"2.27 ou plus récente." + +#: library/os.rst:3376 +msgid "" +"Read value from an :func:`eventfd` file descriptor and return a 64 bit " +"unsigned int. The function does not verify that *fd* is an :func:`eventfd`." +msgstr "" + +#: library/os.rst:3389 library/os.rst:3406 +#, fuzzy +msgid ":ref:`Availability `: See :func:`eventfd`" +msgstr ":ref:`Disponibilité ` : dérivés récents de Unix." + +#: library/os.rst:3385 +msgid "" +"Add value to an :func:`eventfd` file descriptor. *value* must be a 64 bit " +"unsigned int. The function does not verify that *fd* is an :func:`eventfd`." +msgstr "" + +#: library/os.rst:3394 +#, fuzzy +msgid "Set close-on-exec flag for new :func:`eventfd` file descriptor." +msgstr "Définit le marqueur « héritable » du descripteur de fichier spécifié." + +#: library/os.rst:3402 +msgid "" +"Set :const:`O_NONBLOCK` status flag for new :func:`eventfd` file descriptor." +msgstr "" + +#: library/os.rst:3411 +msgid "" +"Provide semaphore-like semantics for reads from a :func:`eventfd` file " +"descriptor. On read the internal counter is decremented by one." +msgstr "" + +#: library/os.rst:3415 +#, fuzzy +msgid "" +":ref:`Availability `: Linux 2.6.30 or newer with glibc 2.8 or " +"newer." +msgstr "" +":ref:`Disponibilité ` : Linux 3.17 ou plus récent avec glibc " +"2.27 ou plus récente." + +#: library/os.rst:3420 msgid "Linux extended attributes" msgstr "Attributs étendus pour Linux" -#: library/os.rst:3196 +#: library/os.rst:3424 msgid "These functions are all available on Linux only." msgstr "Toutes ces fonctions ne sont disponibles que sur Linux." -#: library/os.rst:3200 +#: library/os.rst:3428 msgid "" "Return the value of the extended filesystem attribute *attribute* for " "*path*. *attribute* can be bytes or str (directly or indirectly through the :" @@ -4587,17 +4890,17 @@ msgstr "" "`PathLike`). Si c'est une chaîne de caractères, elle est encodée avec " "l'encodage du système de fichiers." -#: library/os.rst:3208 +#: library/os.rst:3436 msgid "" "Raises an :ref:`auditing event ` ``os.getxattr`` with arguments " "``path``, ``attribute``." msgstr "" -#: library/os.rst:3242 library/os.rst:3267 +#: library/os.rst:3470 library/os.rst:3495 msgid "Accepts a :term:`path-like object` for *path* and *attribute*." msgstr "Accepte un :term:`path-like object` pour *path* et *attribute*." -#: library/os.rst:3216 +#: library/os.rst:3444 msgid "" "Return a list of the extended filesystem attributes on *path*. The " "attributes in the list are represented as strings decoded with the " @@ -4609,18 +4912,19 @@ msgstr "" "sont décodés avec l'encodage du système de fichier. Si *path* vaut " "``None``, :func:`listxattr` examinera le répertoire actuel." -#: library/os.rst:3224 +#: library/os.rst:3452 msgid "" "Raises an :ref:`auditing event ` ``os.listxattr`` with argument " "``path``." msgstr "" -#: library/os.rst:3232 +#: library/os.rst:3460 +#, fuzzy msgid "" "Removes the extended filesystem attribute *attribute* from *path*. " "*attribute* should be bytes or str (directly or indirectly through the :" -"class:`PathLike` interface). If it is a string, it is encoded with the " -"filesystem encoding." +"class:`PathLike` interface). If it is a string, it is encoded with the :term:" +"`filesystem encoding and error handler`." msgstr "" "Supprime l'attribut étendu *attribute* du système de fichier pour le chemin " "*path*. *attribute* devrait être une chaîne de caractères ou d'octets " @@ -4628,23 +4932,23 @@ msgstr "" "c'est une chaîne de caractères, elle est encodée avec l'encodage du système " "de fichiers." -#: library/os.rst:3240 +#: library/os.rst:3468 msgid "" "Raises an :ref:`auditing event ` ``os.removexattr`` with arguments " "``path``, ``attribute``." msgstr "" -#: library/os.rst:3248 +#: library/os.rst:3476 #, fuzzy msgid "" "Set the extended filesystem attribute *attribute* on *path* to *value*. " "*attribute* must be a bytes or str with no embedded NULs (directly or " "indirectly through the :class:`PathLike` interface). If it is a str, it is " -"encoded with the filesystem encoding. *flags* may be :data:`XATTR_REPLACE` " -"or :data:`XATTR_CREATE`. If :data:`XATTR_REPLACE` is given and the attribute " -"does not exist, ``ENODATA`` will be raised. If :data:`XATTR_CREATE` is given " -"and the attribute already exists, the attribute will not be created and " -"``EEXISTS`` will be raised." +"encoded with the :term:`filesystem encoding and error handler`. *flags* may " +"be :data:`XATTR_REPLACE` or :data:`XATTR_CREATE`. If :data:`XATTR_REPLACE` " +"is given and the attribute does not exist, ``ENODATA`` will be raised. If :" +"data:`XATTR_CREATE` is given and the attribute already exists, the attribute " +"will not be created and ``EEXISTS`` will be raised." msgstr "" "Règle l'attribut étendu *attribute* du système de fichier pour le chemin " "*path* à *value*. *attribute* doit être une chaîne de caractères ou d'octets " @@ -4656,7 +4960,7 @@ msgstr "" "donné et que l'attribut existe déjà, l'attribut ne sera pas créé et " "``ENODATA`` sera levée." -#: library/os.rst:3262 +#: library/os.rst:3490 msgid "" "A bug in Linux kernel versions less than 2.6.39 caused the flags argument to " "be ignored on some filesystems." @@ -4664,13 +4968,13 @@ msgstr "" "Un bogue des versions inférieures à 2.6.39 du noyau Linux faisait que les " "marqueurs de *flags* étaient ignorés sur certains systèmes." -#: library/os.rst:3265 +#: library/os.rst:3493 msgid "" "Raises an :ref:`auditing event ` ``os.setxattr`` with arguments " "``path``, ``attribute``, ``value``, ``flags``." msgstr "" -#: library/os.rst:3273 +#: library/os.rst:3501 msgid "" "The maximum size the value of an extended attribute can be. Currently, this " "is 64 KiB on Linux." @@ -4678,7 +4982,7 @@ msgstr "" "La taille maximum que peut faire la valeur d'un attribut étendu. " "Actuellement, c'est 64 KiB sur Lniux." -#: library/os.rst:3279 +#: library/os.rst:3507 msgid "" "This is a possible value for the flags argument in :func:`setxattr`. It " "indicates the operation must create an attribute." @@ -4686,7 +4990,7 @@ msgstr "" "C'est une valeur possible pour l'argument *flags* de :func:`setxattr`. Elle " "indique que l'opération doit créer un attribut." -#: library/os.rst:3285 +#: library/os.rst:3513 msgid "" "This is a possible value for the flags argument in :func:`setxattr`. It " "indicates the operation must replace an existing attribute." @@ -4694,16 +4998,16 @@ msgstr "" "C'est une valeur possible pour l'argument *flags* de :func:`setxattr`.Elle " "indique que l'opération doit remplacer un attribut existant." -#: library/os.rst:3292 +#: library/os.rst:3520 msgid "Process Management" msgstr "Gestion des processus" -#: library/os.rst:3294 +#: library/os.rst:3522 msgid "These functions may be used to create and manage processes." msgstr "" "Ces fonctions peuvent être utilisées pour créer et gérer des processus." -#: library/os.rst:3296 +#: library/os.rst:3524 msgid "" "The various :func:`exec\\* ` functions take a list of arguments for " "the new program loaded into the process. In each case, the first of these " @@ -4722,7 +5026,7 @@ msgstr "" "exemple, ``os.execv('/bin/echo/', ['foo', 'bar'])`` affichera uniquement " "``bar`` sur la sortie standard ; ``foo`` semblera être ignoré." -#: library/os.rst:3307 +#: library/os.rst:3535 msgid "" "Generate a :const:`SIGABRT` signal to the current process. On Unix, the " "default behavior is to produce a core dump; on Windows, the process " @@ -4736,37 +5040,37 @@ msgstr "" "Attention : appeler cette fonction n'appellera pas le gestionnaire de signal " "Python enregistré par :const:`SIGABRT` à l'aide de :func:`signal.signal`." -#: library/os.rst:3316 +#: library/os.rst:3544 msgid "Add a path to the DLL search path." msgstr "" -#: library/os.rst:3318 +#: library/os.rst:3546 msgid "" "This search path is used when resolving dependencies for imported extension " "modules (the module itself is resolved through sys.path), and also by :mod:" "`ctypes`." msgstr "" -#: library/os.rst:3322 +#: library/os.rst:3550 msgid "" "Remove the directory by calling **close()** on the returned object or using " "it in a :keyword:`with` statement." msgstr "" -#: library/os.rst:3325 +#: library/os.rst:3553 msgid "" "See the `Microsoft documentation `_ for more information about how " "DLLs are loaded." msgstr "" -#: library/os.rst:3329 +#: library/os.rst:3557 msgid "" "Raises an :ref:`auditing event ` ``os.add_dll_directory`` with " "argument ``path``." msgstr "" -#: library/os.rst:3333 +#: library/os.rst:3561 msgid "" "Previous versions of CPython would resolve DLLs using the default behavior " "for the current process. This led to inconsistencies, such as only sometimes " @@ -4774,14 +5078,14 @@ msgid "" "such as ``AddDllDirectory`` having no effect." msgstr "" -#: library/os.rst:3340 +#: library/os.rst:3568 msgid "" "In 3.8, the two primary ways DLLs are loaded now explicitly override the " "process-wide behavior to ensure consistency. See the :ref:`porting notes " "` for information on updating libraries." msgstr "" -#: library/os.rst:3355 +#: library/os.rst:3583 msgid "" "These functions all execute a new program, replacing the current process; " "they do not return. On Unix, the new executable is loaded into the current " @@ -4793,7 +5097,7 @@ msgstr "" "dans le processus actuel, et aura le même identifiant de processus (PID) que " "l'appelant. Les erreurs seront reportées par des exceptions :exc:`OSError`." -#: library/os.rst:3360 +#: library/os.rst:3588 msgid "" "The current process is replaced immediately. Open file objects and " "descriptors are not flushed, so if there may be data buffered on these open " @@ -4806,7 +5110,7 @@ msgstr "" "manuellement en utilisant :func:`sys.stdout.flush` ou :func:`os.fsync` avant " "d'appeler une fonction :func:`exec\\* `." -#: library/os.rst:3366 +#: library/os.rst:3594 msgid "" "The \"l\" and \"v\" variants of the :func:`exec\\* ` functions differ " "in how command-line arguments are passed. The \"l\" variants are perhaps " @@ -4829,7 +5133,7 @@ msgstr "" "devraient commencer avec le nom de la commande à lancer, mais ce n'est pas " "obligatoire." -#: library/os.rst:3375 +#: library/os.rst:3603 msgid "" "The variants which include a \"p\" near the end (:func:`execlp`, :func:" "`execlpe`, :func:`execvp`, and :func:`execvpe`) will use the :envvar:`PATH` " @@ -4852,7 +5156,7 @@ msgstr "" "localiser l'exécutable. *path* doit contenir un chemin absolue ou relatif " "approprié." -#: library/os.rst:3385 +#: library/os.rst:3613 msgid "" "For :func:`execle`, :func:`execlpe`, :func:`execve`, and :func:`execvpe` " "(note that these all end in \"e\"), the *env* parameter must be a mapping " @@ -4869,7 +5173,7 @@ msgstr "" "`execlp`, :func:`execv`, et :func:`execvp` causent toutes un héritage de " "l'environnement du processus actuel par le processus fils." -#: library/os.rst:3392 +#: library/os.rst:3620 msgid "" "For :func:`execve` on some platforms, *path* may also be specified as an " "open file descriptor. This functionality may not be supported on your " @@ -4883,13 +5187,13 @@ msgstr "" "disponible en utilisant :data:`os._supports_fd`. Si c'est indisponible, " "l'utiliser lèvera une :exc:`NotImplementedError`." -#: library/os.rst:3397 +#: library/os.rst:3625 msgid "" "Raises an :ref:`auditing event ` ``os.exec`` with arguments " "``path``, ``args``, ``env``." msgstr "" -#: library/os.rst:3401 +#: library/os.rst:3629 #, fuzzy msgid "" "Added support for specifying *path* as an open file descriptor for :func:" @@ -4898,7 +5202,7 @@ msgstr "" "Prise en charge de la spécification d'un descripteur de fichier ouvert pour " "*path* pour :func:`execve`." -#: library/os.rst:3410 +#: library/os.rst:3638 msgid "" "Exit the process with status *n*, without calling cleanup handlers, flushing " "stdio buffers, etc." @@ -4906,7 +5210,7 @@ msgstr "" "Quitte le processus avec le statut *n*, sans appeler les gestionnaires de " "nettoyage, sans purger les tampons des fichiers, etc." -#: library/os.rst:3415 +#: library/os.rst:3643 msgid "" "The standard way to exit is ``sys.exit(n)``. :func:`_exit` should normally " "only be used in the child process after a :func:`fork`." @@ -4915,7 +5219,7 @@ msgstr "" "normalement être utilisé uniquement par le processus fils après un :func:" "`fork`." -#: library/os.rst:3418 +#: library/os.rst:3646 msgid "" "The following exit codes are defined and can be used with :func:`_exit`, " "although they are not required. These are typically used for system " @@ -4927,7 +5231,7 @@ msgstr "" "utilisés pour les programmes systèmes écrits en Python, comme un programme " "de gestion de l'exécution des commandes d'un serveur de mails." -#: library/os.rst:3424 +#: library/os.rst:3652 msgid "" "Some of these may not be available on all Unix platforms, since there is " "some variation. These constants are defined where they are defined by the " @@ -4937,11 +5241,11 @@ msgstr "" "plate-formes Unix étant donné qu'il en existe des variations. Ces constantes " "sont définies là où elles sont définies par la plate-forme sous-jacente." -#: library/os.rst:3431 +#: library/os.rst:3659 msgid "Exit code that means no error occurred." msgstr "Code de sortie signifiant qu'aucune erreur n'est arrivée." -#: library/os.rst:3438 +#: library/os.rst:3666 msgid "" "Exit code that means the command was used incorrectly, such as when the " "wrong number of arguments are given." @@ -4949,36 +5253,36 @@ msgstr "" "Code de sortie signifiant que les commandes n'ont pas été utilisées " "correctement, comme quand le mauvais nombre d'arguments a été donné." -#: library/os.rst:3446 +#: library/os.rst:3674 msgid "Exit code that means the input data was incorrect." msgstr "" "Code de sortie signifiant que les données en entrées étaient incorrectes." -#: library/os.rst:3453 +#: library/os.rst:3681 msgid "Exit code that means an input file did not exist or was not readable." msgstr "" "Code de sortie signifiant qu'un des fichiers d'entrée n'existe pas ou n'est " "pas lisible." -#: library/os.rst:3460 +#: library/os.rst:3688 msgid "Exit code that means a specified user did not exist." msgstr "Code de sortie signifiant qu'un utilisateur spécifié n'existe pas." -#: library/os.rst:3467 +#: library/os.rst:3695 msgid "Exit code that means a specified host did not exist." msgstr "Code de sortie signifiant qu'un hôte spécifié n'existe pas." -#: library/os.rst:3474 +#: library/os.rst:3702 msgid "Exit code that means that a required service is unavailable." msgstr "Code de sortie signifiant qu'un service requis n'est pas disponible." -#: library/os.rst:3481 +#: library/os.rst:3709 msgid "Exit code that means an internal software error was detected." msgstr "" "Code de sortie signifiant qu'une erreur interne d'un programme a été " "détectée." -#: library/os.rst:3488 +#: library/os.rst:3716 msgid "" "Exit code that means an operating system error was detected, such as the " "inability to fork or create a pipe." @@ -4987,7 +5291,7 @@ msgstr "" "détectée, comme l'incapacité à réaliser un *fork* ou à créer un tuyau " "(*pipe*)." -#: library/os.rst:3496 +#: library/os.rst:3724 msgid "" "Exit code that means some system file did not exist, could not be opened, or " "had some other kind of error." @@ -4995,20 +5299,20 @@ msgstr "" "Code de sortie signifiant qu'un fichier n'existe pas, n'a pas pu être " "ouvert, ou avait une autre erreur." -#: library/os.rst:3504 +#: library/os.rst:3732 msgid "Exit code that means a user specified output file could not be created." msgstr "" "Code de sortie signifiant qu'un fichier spécifié par l'utilisateur n'a pas " "pu être créé." -#: library/os.rst:3511 +#: library/os.rst:3739 msgid "" "Exit code that means that an error occurred while doing I/O on some file." msgstr "" "Code de sortie signifiant qu'une erreur est apparue pendant une E/S sur un " "fichier." -#: library/os.rst:3518 +#: library/os.rst:3746 msgid "" "Exit code that means a temporary failure occurred. This indicates something " "that may not really be an error, such as a network connection that couldn't " @@ -5018,7 +5322,7 @@ msgstr "" "quelque chose qui pourrait ne pas être une erreur, comme une connexion au " "réseau qui n'a pas pu être établie pendant une opération réessayable." -#: library/os.rst:3527 +#: library/os.rst:3755 msgid "" "Exit code that means that a protocol exchange was illegal, invalid, or not " "understood." @@ -5026,7 +5330,7 @@ msgstr "" "Code de sortie signifiant qu'un protocole d'échange est illégal, invalide, " "ou non-compris." -#: library/os.rst:3535 +#: library/os.rst:3763 msgid "" "Exit code that means that there were insufficient permissions to perform the " "operation (but not intended for file system problems)." @@ -5034,17 +5338,17 @@ msgstr "" "Code de sortie signifiant qu'il manque certaines permissions pour réaliser " "une opération (mais n'est pas destiné au problèmes de système de fichiers)." -#: library/os.rst:3543 +#: library/os.rst:3771 msgid "Exit code that means that some kind of configuration error occurred." msgstr "Code de sortie signifiant qu'une erreur de configuration est apparue." -#: library/os.rst:3550 +#: library/os.rst:3778 msgid "Exit code that means something like \"an entry was not found\"." msgstr "" "Code de sortie signifiant quelque chose comme « une entrée n'a pas été " "trouvée »." -#: library/os.rst:3557 +#: library/os.rst:3785 msgid "" "Fork a child process. Return ``0`` in the child and the child's process id " "in the parent. If an error occurs :exc:`OSError` is raised." @@ -5053,7 +5357,7 @@ msgstr "" "processus fils dans le processus père. Si une erreur apparaît, une :exc:" "`OSError` est levée." -#: library/os.rst:3560 +#: library/os.rst:3788 #, fuzzy msgid "" "Note that some platforms including FreeBSD <= 6.3 and Cygwin have known " @@ -5062,24 +5366,24 @@ msgstr "" "Notez que certaines plate-formes (dont FreeBSD <= 6.3 et Cygwin) ont des " "problèmes connus lors d'utilisation de *fork()* depuis un fil d'exécution." -#: library/os.rst:3563 +#: library/os.rst:3791 msgid "" "Raises an :ref:`auditing event ` ``os.fork`` with no arguments." msgstr "" -#: library/os.rst:3565 +#: library/os.rst:3793 msgid "" "Calling ``fork()`` in a subinterpreter is no longer supported (:exc:" "`RuntimeError` is raised)." msgstr "" -#: library/os.rst:3571 +#: library/os.rst:3799 msgid "See :mod:`ssl` for applications that use the SSL module with fork()." msgstr "" "Voit :mod:`ssl` pour les application qui utilisent le module SSL avec " "*fork()*." -#: library/os.rst:3578 +#: library/os.rst:3806 msgid "" "Fork a child process, using a new pseudo-terminal as the child's controlling " "terminal. Return a pair of ``(pid, fd)``, where *pid* is ``0`` in the child, " @@ -5094,18 +5398,18 @@ msgstr "" "approche plus portable, utilisez le module :mod:`pty`. Si une erreur " "apparaît, une :exc:`OSError` est levée." -#: library/os.rst:3584 +#: library/os.rst:3812 msgid "" "Raises an :ref:`auditing event ` ``os.forkpty`` with no arguments." msgstr "" -#: library/os.rst:3586 +#: library/os.rst:3814 msgid "" "Calling ``forkpty()`` in a subinterpreter is no longer supported (:exc:" "`RuntimeError` is raised)." msgstr "" -#: library/os.rst:3599 +#: library/os.rst:3827 msgid "" "Send signal *sig* to the process *pid*. Constants for the specific signals " "available on the host platform are defined in the :mod:`signal` module." @@ -5113,7 +5417,7 @@ msgstr "" "Envoie le signal *sig* au processus *pid*. Les constantes pour les signaux " "spécifiques à la plate-forme hôte sont définies dans le module :mod:`signal`." -#: library/os.rst:3602 +#: library/os.rst:3830 msgid "" "Windows: The :data:`signal.CTRL_C_EVENT` and :data:`signal.CTRL_BREAK_EVENT` " "signals are special signals which can only be sent to console processes " @@ -5130,37 +5434,37 @@ msgstr "" "sera mis à *sig*. La version Windows de :func:`kill` prend en plus les " "identificateurs de processus à tuer." -#: library/os.rst:3610 +#: library/os.rst:3838 msgid "See also :func:`signal.pthread_kill`." msgstr "Voir également :func:`signal.pthread_kill`." -#: library/os.rst:3612 +#: library/os.rst:3840 msgid "" "Raises an :ref:`auditing event ` ``os.kill`` with arguments " "``pid``, ``sig``." msgstr "" -#: library/os.rst:3614 +#: library/os.rst:3842 msgid "Windows support." msgstr "Prise en charge de Windows." -#: library/os.rst:3624 +#: library/os.rst:3852 msgid "Send the signal *sig* to the process group *pgid*." msgstr "Envoie le signal *sig* au groupe de processus *pgid*." -#: library/os.rst:3626 +#: library/os.rst:3854 msgid "" "Raises an :ref:`auditing event ` ``os.killpg`` with arguments " "``pgid``, ``sig``." msgstr "" -#: library/os.rst:3633 +#: library/os.rst:3861 msgid "" "Add *increment* to the process's \"niceness\". Return the new niceness." msgstr "" "Ajoute *increment* à la priorité du processus. Renvoie la nouvelle priorité." -#: library/os.rst:3640 +#: library/os.rst:3868 msgid "" "Return a file descriptor referring to the process *pid*. This descriptor " "can be used to perform process management without races and signals. The " @@ -5168,16 +5472,16 @@ msgid "" "currently defined." msgstr "" -#: library/os.rst:3645 +#: library/os.rst:3873 msgid "See the :manpage:`pidfd_open(2)` man page for more details." msgstr "" -#: library/os.rst:3647 +#: library/os.rst:3875 #, fuzzy msgid ":ref:`Availability `: Linux 5.3+" msgstr ":ref:`Disponibilité ` : Unix." -#: library/os.rst:3653 +#: library/os.rst:3881 msgid "" "Lock program segments into memory. The value of *op* (defined in ````) determines which segments are locked." @@ -5185,7 +5489,7 @@ msgstr "" "Verrouille les segments du programme en mémoire. La valeur de *op* (définie " "dans ````) détermine quels segments sont verrouillés." -#: library/os.rst:3661 +#: library/os.rst:3889 msgid "" "Open a pipe to or from command *cmd*. The return value is an open file " "object connected to the pipe, which can be read or written depending on " @@ -5201,7 +5505,7 @@ msgstr "" "`open`. L'objet fichier renvoyé écrit (ou lit) des chaînes de caractères et " "non de bytes." -#: library/os.rst:3668 +#: library/os.rst:3896 msgid "" "The ``close`` method returns :const:`None` if the subprocess exited " "successfully, or the subprocess's return code if there was an error. On " @@ -5222,14 +5526,14 @@ msgstr "" "été tué). Sur les systèmes Windows, la valeur de retour contient le code de " "retour du processus fils dans un entier signé ." -#: library/os.rst:3678 +#: library/os.rst:3906 msgid "" "On Unix, :func:`waitstatus_to_exitcode` can be used to convert the ``close`` " "method result (exit status) into an exit code if it is not ``None``. On " "Windows, the ``close`` method result is directly the exit code (or ``None``)." msgstr "" -#: library/os.rst:3683 +#: library/os.rst:3911 msgid "" "This is implemented using :class:`subprocess.Popen`; see that class's " "documentation for more powerful ways to manage and communicate with " @@ -5239,29 +5543,29 @@ msgstr "" "documentation de cette classe pour des méthodes plus puissantes pour gérer " "et communiquer avec des sous-processus." -#: library/os.rst:3692 +#: library/os.rst:3920 msgid "Wraps the :c:func:`posix_spawn` C library API for use from Python." msgstr "" -#: library/os.rst:3694 +#: library/os.rst:3922 msgid "" "Most users should use :func:`subprocess.run` instead of :func:`posix_spawn`." msgstr "" -#: library/os.rst:3696 +#: library/os.rst:3924 msgid "" "The positional-only arguments *path*, *args*, and *env* are similar to :func:" "`execve`." msgstr "" -#: library/os.rst:3699 +#: library/os.rst:3927 msgid "" "The *path* parameter is the path to the executable file. The *path* should " "contain a directory. Use :func:`posix_spawnp` to pass an executable file " "without directory." msgstr "" -#: library/os.rst:3703 +#: library/os.rst:3931 msgid "" "The *file_actions* argument may be a sequence of tuples describing actions " "to take on specific file descriptors in the child process between the C " @@ -5270,31 +5574,31 @@ msgid "" "describing the remaining tuple elements:" msgstr "" -#: library/os.rst:3711 +#: library/os.rst:3939 msgid "(``os.POSIX_SPAWN_OPEN``, *fd*, *path*, *flags*, *mode*)" msgstr "" -#: library/os.rst:3713 +#: library/os.rst:3941 msgid "Performs ``os.dup2(os.open(path, flags, mode), fd)``." msgstr "" -#: library/os.rst:3717 +#: library/os.rst:3945 msgid "(``os.POSIX_SPAWN_CLOSE``, *fd*)" msgstr "" -#: library/os.rst:3719 +#: library/os.rst:3947 msgid "Performs ``os.close(fd)``." msgstr "" -#: library/os.rst:3723 +#: library/os.rst:3951 msgid "(``os.POSIX_SPAWN_DUP2``, *fd*, *new_fd*)" msgstr "" -#: library/os.rst:3725 +#: library/os.rst:3953 msgid "Performs ``os.dup2(fd, new_fd)``." msgstr "" -#: library/os.rst:3727 +#: library/os.rst:3955 msgid "" "These tuples correspond to the C library :c:func:" "`posix_spawn_file_actions_addopen`, :c:func:" @@ -5303,7 +5607,7 @@ msgid "" "`posix_spawn` call itself." msgstr "" -#: library/os.rst:3733 +#: library/os.rst:3961 msgid "" "The *setpgroup* argument will set the process group of the child to the " "value specified. If the value specified is 0, the child's process group ID " @@ -5312,7 +5616,7 @@ msgid "" "corresponds to the C library :c:data:`POSIX_SPAWN_SETPGROUP` flag." msgstr "" -#: library/os.rst:3739 +#: library/os.rst:3967 msgid "" "If the *resetids* argument is ``True`` it will reset the effective UID and " "GID of the child to the real UID and GID of the parent process. If the " @@ -5323,7 +5627,7 @@ msgid "" "library :c:data:`POSIX_SPAWN_RESETIDS` flag." msgstr "" -#: library/os.rst:3747 +#: library/os.rst:3975 msgid "" "If the *setsid* argument is ``True``, it will create a new session ID for " "`posix_spawn`. *setsid* requires :c:data:`POSIX_SPAWN_SETSID` or :c:data:" @@ -5331,7 +5635,7 @@ msgid "" "raised." msgstr "" -#: library/os.rst:3752 +#: library/os.rst:3980 msgid "" "The *setsigmask* argument will set the signal mask to the signal set " "specified. If the parameter is not used, then the child inherits the " @@ -5339,14 +5643,14 @@ msgid "" "`POSIX_SPAWN_SETSIGMASK` flag." msgstr "" -#: library/os.rst:3757 +#: library/os.rst:3985 msgid "" "The *sigdef* argument will reset the disposition of all signals in the set " "specified. This argument corresponds to the C library :c:data:" "`POSIX_SPAWN_SETSIGDEF` flag." msgstr "" -#: library/os.rst:3761 +#: library/os.rst:3989 msgid "" "The *scheduler* argument must be a tuple containing the (optional) scheduler " "policy and an instance of :class:`sched_param` with the scheduler " @@ -5356,30 +5660,30 @@ msgid "" "`POSIX_SPAWN_SETSCHEDULER` flags." msgstr "" -#: library/os.rst:3784 +#: library/os.rst:4012 msgid "" "Raises an :ref:`auditing event ` ``os.posix_spawn`` with arguments " "``path``, ``argv``, ``env``." msgstr "" -#: library/os.rst:3778 +#: library/os.rst:4006 msgid "Wraps the :c:func:`posix_spawnp` C library API for use from Python." msgstr "" -#: library/os.rst:3780 +#: library/os.rst:4008 msgid "" "Similar to :func:`posix_spawn` except that the system searches for the " "*executable* file in the list of directories specified by the :envvar:`PATH` " "environment variable (in the same way as for ``execvp(3)``)." msgstr "" -#: library/os.rst:3788 +#: library/os.rst:4016 #, fuzzy msgid "" ":ref:`Availability `: See :func:`posix_spawn` documentation." msgstr ":ref:`Disponibilité ` : dérivés récents de Unix." -#: library/os.rst:3794 +#: library/os.rst:4022 msgid "" "Register callables to be executed when a new child process is forked using :" "func:`os.fork` or similar process cloning APIs. The parameters are optional " @@ -5390,12 +5694,12 @@ msgstr "" "clonage de processus. Les paramètres sont optionnels et par mots-clé " "uniquement. Chacun spécifie un point d'appel différent." -#: library/os.rst:3799 +#: library/os.rst:4027 msgid "*before* is a function called before forking a child process." msgstr "" "*before* est une fonction appelée avant de *forker* un processus enfant." -#: library/os.rst:3800 +#: library/os.rst:4028 msgid "" "*after_in_parent* is a function called from the parent process after forking " "a child process." @@ -5403,11 +5707,11 @@ msgstr "" "*after_in_parent* est une fonction appelée depuis le processus parent après " "avoir *forké* un processus enfant." -#: library/os.rst:3802 +#: library/os.rst:4030 msgid "*after_in_child* is a function called from the child process." msgstr "*after_in_child* est une fonction appelée depuis le processus enfant." -#: library/os.rst:3804 +#: library/os.rst:4032 msgid "" "These calls are only made if control is expected to return to the Python " "interpreter. A typical :mod:`subprocess` launch will not trigger them as " @@ -5417,7 +5721,7 @@ msgstr "" "l'interpréteur Python. Un lancement de :mod:`subprocess` typique ne les " "déclenchera pas, car l'enfant ne ré-entre pas dans l'interpréteur." -#: library/os.rst:3808 +#: library/os.rst:4036 msgid "" "Functions registered for execution before forking are called in reverse " "registration order. Functions registered for execution after forking " @@ -5428,7 +5732,7 @@ msgstr "" "l'exécution après le *fork* (soit dans le parent ou dans l'enfant) sont " "appelées dans l'ordre de leur enregistrement." -#: library/os.rst:3813 +#: library/os.rst:4041 msgid "" "Note that :c:func:`fork` calls made by third-party C code may not call those " "functions, unless it explicitly calls :c:func:`PyOS_BeforeFork`, :c:func:" @@ -5439,15 +5743,15 @@ msgstr "" "explicitement :c:func:`PyOS_BeforeFork`, :c:func:`PyOS_AfterFork_Parent` et :" "c:func:`PyOS_AfterFork_Child`." -#: library/os.rst:3817 +#: library/os.rst:4045 msgid "There is no way to unregister a function." msgstr "Il n'y a aucun moyen d'annuler l'enregistrement d'une fonction." -#: library/os.rst:3833 +#: library/os.rst:4061 msgid "Execute the program *path* in a new process." msgstr "Exécute le programme *path* dans un nouveau processus." -#: library/os.rst:3835 +#: library/os.rst:4063 msgid "" "(Note that the :mod:`subprocess` module provides more powerful facilities " "for spawning new processes and retrieving their results; using that module " @@ -5459,7 +5763,7 @@ msgstr "" "est préférable d'utiliser ce module que ces fonctions. Voyez surtout la " "section :ref:`subprocess-replacements`.)" -#: library/os.rst:3840 +#: library/os.rst:4068 msgid "" "If *mode* is :const:`P_NOWAIT`, this function returns the process id of the " "new process; if *mode* is :const:`P_WAIT`, returns the process's exit code " @@ -5474,13 +5778,13 @@ msgstr "" "en fait l'identificateur du processus (*process handle*) et peut donc être " "utilisé avec la fonction :func:`waitpid`." -#: library/os.rst:3846 +#: library/os.rst:4074 msgid "" "Note on VxWorks, this function doesn't return ``-signal`` when the new " "process is killed. Instead it raises OSError exception." msgstr "" -#: library/os.rst:3849 +#: library/os.rst:4077 msgid "" "The \"l\" and \"v\" variants of the :func:`spawn\\* ` functions " "differ in how command-line arguments are passed. The \"l\" variants are " @@ -5502,7 +5806,7 @@ msgstr "" "fils devraient commencer avec le nom de la commande à lancer, mais ce n'est " "pas obligatoire." -#: library/os.rst:3858 +#: library/os.rst:4086 msgid "" "The variants which include a second \"p\" near the end (:func:`spawnlp`, :" "func:`spawnlpe`, :func:`spawnvp`, and :func:`spawnvpe`) will use the :envvar:" @@ -5525,7 +5829,7 @@ msgstr "" "envvar:`PATH` pour localiser l'exécutable. *path* doit contenir un chemin " "absolue ou relatif approprié." -#: library/os.rst:3868 +#: library/os.rst:4096 msgid "" "For :func:`spawnle`, :func:`spawnlpe`, :func:`spawnve`, and :func:`spawnvpe` " "(note that these all end in \"e\"), the *env* parameter must be a mapping " @@ -5547,7 +5851,7 @@ msgstr "" "caractères. Des valeurs invalides pour les clefs ou les valeurs met la " "fonction en échec et renvoie ``127``." -#: library/os.rst:3877 +#: library/os.rst:4105 msgid "" "As an example, the following calls to :func:`spawnlp` and :func:`spawnvpe` " "are equivalent::" @@ -5555,13 +5859,13 @@ msgstr "" "Par exemple, les appels suivants à :func:`spawnlp` et :func:`spawnvpe` sont " "équivalents ::" -#: library/os.rst:3886 +#: library/os.rst:4114 msgid "" "Raises an :ref:`auditing event ` ``os.spawn`` with arguments " "``mode``, ``path``, ``args``, ``env``." msgstr "" -#: library/os.rst:3892 +#: library/os.rst:4120 msgid "" ":ref:`Availability `: Unix, Windows. :func:`spawnlp`, :func:" "`spawnlpe`, :func:`spawnvp` and :func:`spawnvpe` are not available on " @@ -5574,7 +5878,7 @@ msgstr "" "appels concurrents (*thread-safe*) sur Windows, il est conseillé d'utiliser " "le module :mod:`subprocess` à la place." -#: library/os.rst:3900 +#: library/os.rst:4128 msgid "" "Possible values for the *mode* parameter to the :func:`spawn\\* ` " "family of functions. If either of these values is given, the :func:`spawn" @@ -5586,7 +5890,7 @@ msgstr "" "`spawn\\*` sortiront dès que le nouveau processus est créé, avec le PID du " "processus comme valeur de retour." -#: library/os.rst:3910 +#: library/os.rst:4138 msgid "" "Possible value for the *mode* parameter to the :func:`spawn\\* ` " "family of functions. If this is given as *mode*, the :func:`spawn\\*` " @@ -5601,7 +5905,7 @@ msgstr "" "l'exécution est effectuée avec succès, ou ``-signal`` si un signal tue le " "processus." -#: library/os.rst:3922 +#: library/os.rst:4150 msgid "" "Possible values for the *mode* parameter to the :func:`spawn\\* ` " "family of functions. These are less portable than those listed above. :" @@ -5617,11 +5921,11 @@ msgstr "" "`P_OVERLAY` est utilisé, le processus actuel sera remplacé. La fonction :" "func:`spawn\\* ` ne sort jamais." -#: library/os.rst:3933 +#: library/os.rst:4161 msgid "Start a file with its associated application." msgstr "Lance un fichier avec son application associée." -#: library/os.rst:3935 +#: library/os.rst:4163 msgid "" "When *operation* is not specified or ``'open'``, this acts like double-" "clicking the file in Windows Explorer, or giving the file name as an " @@ -5635,7 +5939,7 @@ msgstr "" "commande interactif : le fichier est ouvert avec l'application associée à " "l'extension (s'il y en a une)." -#: library/os.rst:3940 +#: library/os.rst:4168 msgid "" "When another *operation* is given, it must be a \"command verb\" that " "specifies what should be done with the file. Common verbs documented by " @@ -5648,15 +5952,37 @@ msgstr "" "utilisés sur des fichiers) ainsi que ``'explore'`` et ``'find'`` (qui " "doivent être utilisés sur des répertoires)." -#: library/os.rst:3945 +#: library/os.rst:4173 +msgid "" +"When launching an application, specify *arguments* to be passed as a single " +"string. This argument may have no effect when using this function to launch " +"a document." +msgstr "" + +#: library/os.rst:4177 +msgid "" +"The default working directory is inherited, but may be overridden by the " +"*cwd* argument. This should be an absolute path. A relative *path* will be " +"resolved against this argument." +msgstr "" + +#: library/os.rst:4181 +msgid "" +"Use *show_cmd* to override the default window style. Whether this has any " +"effect will depend on the application being launched. Values are integers as " +"supported by the Win32 :c:func:`ShellExecute` function." +msgstr "" + +#: library/os.rst:4185 +#, fuzzy msgid "" ":func:`startfile` returns as soon as the associated application is launched. " "There is no option to wait for the application to close, and no way to " "retrieve the application's exit status. The *path* parameter is relative to " -"the current directory. If you want to use an absolute path, make sure the " -"first character is not a slash (``'/'``); the underlying Win32 :c:func:" -"`ShellExecute` function doesn't work if it is. Use the :func:`os.path." -"normpath` function to ensure that the path is properly encoded for Win32." +"the current directory or *cwd*. If you want to use an absolute path, make " +"sure the first character is not a slash (``'/'``) Use :mod:`pathlib` or " +"the :func:`os.path.normpath` function to ensure that paths are properly " +"encoded for Win32." msgstr "" ":func:`startfile` termine dès que l'application associée est lancée.Il n'y a " "aucune option permettant d'attendre que l'application ne se ferme et aucun " @@ -5667,7 +5993,7 @@ msgstr "" "Utilisez la fonction :func:`os.path.normpath` pour vous assurer que le " "chemin est encodé correctement pour Win32." -#: library/os.rst:3953 +#: library/os.rst:4193 msgid "" "To reduce interpreter startup overhead, the Win32 :c:func:`ShellExecute` " "function is not resolved until this function is first called. If the " @@ -5678,13 +6004,25 @@ msgstr "" "fonction na pas été appelée. Si la fonction ne peut être interprétée, une :" "exc:`NotImplementedError` est levée." -#: library/os.rst:3957 +#: library/os.rst:4197 msgid "" "Raises an :ref:`auditing event ` ``os.startfile`` with arguments " "``path``, ``operation``." msgstr "" -#: library/os.rst:3964 +#: library/os.rst:4199 +msgid "" +"Raises an :ref:`auditing event ` ``os.startfile/2`` with arguments " +"``path``, ``operation``, ``arguments``, ``cwd``, ``show_cmd``." +msgstr "" + +#: library/os.rst:4203 +msgid "" +"Added the *arguments*, *cwd* and *show_cmd* arguments, and the ``os." +"startfile/2`` audit event." +msgstr "" + +#: library/os.rst:4210 #, fuzzy msgid "" "Execute the command (a string) in a subshell. This is implemented by " @@ -5702,13 +6040,13 @@ msgstr "" "*command* génère une sortie, elle sera envoyée à l'interpréteur standard de " "flux." -#: library/os.rst:3972 +#: library/os.rst:4218 msgid "" "On Unix, the return value is the exit status of the process encoded in the " "format specified for :func:`wait`." msgstr "" -#: library/os.rst:3975 +#: library/os.rst:4221 msgid "" "On Windows, the return value is that returned by the system shell after " "running *command*. The shell is given by the Windows environment variable :" @@ -5723,7 +6061,7 @@ msgstr "" "commande lancée. Sur les systèmes qui utilisent un invite de commande non-" "natif, consultez la documentation propre à l'invite." -#: library/os.rst:3981 +#: library/os.rst:4227 msgid "" "The :mod:`subprocess` module provides more powerful facilities for spawning " "new processes and retrieving their results; using that module is preferable " @@ -5736,20 +6074,20 @@ msgstr "" "ref:`subprocess-replacements` de la documentation du module :mod:" "`subprocess` pour des informations plus précises et utiles." -#: library/os.rst:3986 +#: library/os.rst:4232 msgid "" "On Unix, :func:`waitstatus_to_exitcode` can be used to convert the result " "(exit status) into an exit code. On Windows, the result is directly the exit " "code." msgstr "" -#: library/os.rst:3990 +#: library/os.rst:4236 msgid "" "Raises an :ref:`auditing event ` ``os.system`` with argument " "``command``." msgstr "" -#: library/os.rst:3997 +#: library/os.rst:4243 msgid "" "Returns the current global process times. The return value is an object with " "five attributes:" @@ -5757,27 +6095,27 @@ msgstr "" "Renvoie les temps globaux actuels d'exécution du processus. La valeur de " "retour est un objet avec cinq attributs :" -#: library/os.rst:4000 +#: library/os.rst:4246 msgid ":attr:`user` - user time" msgstr ":attr:`user` — le temps utilisateur" -#: library/os.rst:4001 +#: library/os.rst:4247 msgid ":attr:`system` - system time" msgstr ":attr:`system` — le temps système" -#: library/os.rst:4002 +#: library/os.rst:4248 msgid ":attr:`children_user` - user time of all child processes" msgstr ":attr:`children_user` — temps utilisateur de tous les processus fils" -#: library/os.rst:4003 +#: library/os.rst:4249 msgid ":attr:`children_system` - system time of all child processes" msgstr ":attr:`children_system` — le temps système de tous les processus fils" -#: library/os.rst:4004 +#: library/os.rst:4250 msgid ":attr:`elapsed` - elapsed real time since a fixed point in the past" msgstr ":attr:`elapsed` — temps écoulé réel depuis un point fixé dans le passé" -#: library/os.rst:4006 +#: library/os.rst:4252 msgid "" "For backwards compatibility, this object also behaves like a five-tuple " "containing :attr:`user`, :attr:`system`, :attr:`children_user`, :attr:" @@ -5787,7 +6125,7 @@ msgstr "" "comme un quintuplet contenant :attr:`user`, :attr:`system`, :attr:" "`children_user`, :attr:`children_system`, et :attr:`elapsed` dans cet ordre." -#: library/os.rst:4010 +#: library/os.rst:4256 #, fuzzy msgid "" "See the Unix manual page :manpage:`times(2)` and :manpage:`times(3)` manual " @@ -5800,7 +6138,7 @@ msgstr "" "Windows correspondante. Sur Windows, seuls :attr:`user` et :attr:`system` " "sont connus. Les autres attributs sont nuls." -#: library/os.rst:4024 +#: library/os.rst:4270 msgid "" "Wait for completion of a child process, and return a tuple containing its " "pid and exit status indication: a 16-bit number, whose low byte is the " @@ -5815,19 +6153,19 @@ msgstr "" "Le bit de poids fort du *byte* de poids faible est mis à 1 si un (fichier " "système) *core file* a été produit." -#: library/os.rst:4135 +#: library/os.rst:4381 msgid "" ":func:`waitstatus_to_exitcode` can be used to convert the exit status into " "an exit code." msgstr "" -#: library/os.rst:4037 +#: library/os.rst:4283 msgid "" ":func:`waitpid` can be used to wait for the completion of a specific child " "process and has more options." msgstr "" -#: library/os.rst:4042 +#: library/os.rst:4288 #, fuzzy msgid "" "Wait for the completion of one or more child processes. *idtype* can be :" @@ -5851,7 +6189,7 @@ msgstr "" "`si_code` ou ``None`` si :data:`WNOHANG` est spécifié et qu'il n'y a pas " "d'enfant dans un état que l'on peut attendre." -#: library/os.rst:4062 +#: library/os.rst:4308 msgid "" "These are the possible values for *idtype* in :func:`waitid`. They affect " "how *id* is interpreted." @@ -5859,18 +6197,18 @@ msgstr "" "Les valeurs possibles pour *idtypes* pour la fonction :func:`waitid`. Elles " "affectent l'interprétation de *id*." -#: library/os.rst:4071 +#: library/os.rst:4317 msgid "" "This is a Linux-specific *idtype* that indicates that *id* is a file " "descriptor that refers to a process." msgstr "" -#: library/os.rst:4075 +#: library/os.rst:4321 #, fuzzy msgid ":ref:`Availability `: Linux 5.4+" msgstr ":ref:`Disponibilité ` : Unix." -#: library/os.rst:4082 +#: library/os.rst:4328 msgid "" "Flags that can be used in *options* in :func:`waitid` that specify what " "child signal to wait for." @@ -5878,7 +6216,7 @@ msgstr "" "Marqueurs qui peuvent être utilisés pour la fonction :func:`waitid` qui " "spécifient quel signal attendre du fils." -#: library/os.rst:4097 +#: library/os.rst:4343 msgid "" "These are the possible values for :attr:`si_code` in the result returned by :" "func:`waitid`." @@ -5886,15 +6224,15 @@ msgstr "" "Les valeurs possibles pour :attr:`si_code` dans le résultat renvoyé par :" "func:`waitid`." -#: library/os.rst:4104 +#: library/os.rst:4350 msgid "Added :data:`CLD_KILLED` and :data:`CLD_STOPPED` values." msgstr "" -#: library/os.rst:4110 +#: library/os.rst:4356 msgid "The details of this function differ on Unix and Windows." msgstr "Les détails de cette fonction diffèrent sur Unix et Windows." -#: library/os.rst:4112 +#: library/os.rst:4358 msgid "" "On Unix: Wait for completion of a child process given by process id *pid*, " "and return a tuple containing its process id and exit status indication " @@ -5908,7 +6246,7 @@ msgstr "" "la valeur de l'argument entier *options*, qui devrait valoir ``0`` pour les " "opérations normales." -#: library/os.rst:4117 +#: library/os.rst:4363 msgid "" "If *pid* is greater than ``0``, :func:`waitpid` requests status information " "for that specific process. If *pid* is ``0``, the request is for the status " @@ -5925,7 +6263,7 @@ msgstr "" "``-1``, une requête est faite pour le statut de chaque processus du groupe " "de processus donné par ``-pid`` (la valeur absolue de *pid*)." -#: library/os.rst:4124 +#: library/os.rst:4370 msgid "" "An :exc:`OSError` is raised with the value of errno when the syscall returns " "-1." @@ -5933,7 +6271,7 @@ msgstr "" "Une :exc:`OSError` est levée avec la valeur de *errno* quand l'appel système " "renvoie ``-1``." -#: library/os.rst:4127 +#: library/os.rst:4373 msgid "" "On Windows: Wait for completion of a process given by process handle *pid*, " "and return a tuple containing *pid*, and its exit status shifted left by 8 " @@ -5955,7 +6293,7 @@ msgstr "" "appelées avec :const:`P_NOWAIT` renvoient des identificateurs de processus " "appropriés." -#: library/os.rst:4146 +#: library/os.rst:4392 msgid "" "Similar to :func:`waitpid`, except no process id argument is given and a 3-" "element tuple containing the child's process id, exit status indication, and " @@ -5971,13 +6309,13 @@ msgstr "" "ressources. L'argument *options* est le même que celui fourni à :func:" "`waitpid` et :func:`wait4`." -#: library/os.rst:4167 +#: library/os.rst:4413 msgid "" ":func:`waitstatus_to_exitcode` can be used to convert the exit status into " "an exitcode." msgstr "" -#: library/os.rst:4161 +#: library/os.rst:4407 msgid "" "Similar to :func:`waitpid`, except a 3-element tuple, containing the child's " "process id, exit status indication, and resource usage information is " @@ -5992,22 +6330,22 @@ msgstr "" "d'utilisation des ressources. Les arguments de :func:`wait4` sont les mêmes " "que ceux fournis à :func:`waitpid`." -#: library/os.rst:4175 +#: library/os.rst:4421 msgid "Convert a wait status to an exit code." msgstr "" -#: library/os.rst:4177 +#: library/os.rst:4423 msgid "On Unix:" msgstr "" -#: library/os.rst:4179 +#: library/os.rst:4425 msgid "" "If the process exited normally (if ``WIFEXITED(status)`` is true), return " "the process exit status (return ``WEXITSTATUS(status)``): result greater " "than or equal to 0." msgstr "" -#: library/os.rst:4182 +#: library/os.rst:4428 msgid "" "If the process was terminated by a signal (if ``WIFSIGNALED(status)`` is " "true), return ``-signum`` where *signum* is the number of the signal that " @@ -6015,15 +6353,15 @@ msgid "" "than 0." msgstr "" -#: library/os.rst:4186 +#: library/os.rst:4432 msgid "Otherwise, raise a :exc:`ValueError`." msgstr "" -#: library/os.rst:4188 +#: library/os.rst:4434 msgid "On Windows, return *status* shifted right by 8 bits." msgstr "" -#: library/os.rst:4190 +#: library/os.rst:4436 msgid "" "On Unix, if the process is being traced or if :func:`waitpid` was called " "with :data:`WUNTRACED` option, the caller must first check if " @@ -6031,13 +6369,13 @@ msgid "" "``WIFSTOPPED(status)`` is true." msgstr "" -#: library/os.rst:4197 +#: library/os.rst:4443 msgid "" ":func:`WIFEXITED`, :func:`WEXITSTATUS`, :func:`WIFSIGNALED`, :func:" "`WTERMSIG`, :func:`WIFSTOPPED`, :func:`WSTOPSIG` functions." msgstr "" -#: library/os.rst:4205 +#: library/os.rst:4451 msgid "" "The option for :func:`waitpid` to return immediately if no child process " "status is available immediately. The function returns ``(0, 0)`` in this " @@ -6047,7 +6385,7 @@ msgstr "" "processus fils n'est disponible dans l'immédiat. La fonction renvoie ``(0, " "0)`` dans ce cas." -#: library/os.rst:4213 +#: library/os.rst:4459 msgid "" "This option causes child processes to be reported if they have been " "continued from a job control stop since their status was last reported." @@ -6056,11 +6394,11 @@ msgstr "" "continués après un arrêt du *job control* depuis leurs derniers reports de " "statuts." -#: library/os.rst:4216 +#: library/os.rst:4462 msgid ":ref:`Availability `: some Unix systems." msgstr ":ref:`Disponibilité ` : certains systèmes Unix." -#: library/os.rst:4221 +#: library/os.rst:4467 msgid "" "This option causes child processes to be reported if they have been stopped " "but their current state has not been reported since they were stopped." @@ -6068,7 +6406,7 @@ msgstr "" "Cette option cause les processus fils à être reportés s'ils ont été stoppés " "mais que leur état actuel n'a pas été reporté depuis qu'ils ont été stoppés." -#: library/os.rst:4227 +#: library/os.rst:4473 msgid "" "The following functions take a process status code as returned by :func:" "`system`, :func:`wait`, or :func:`waitpid` as a parameter. They may be used " @@ -6078,7 +6416,7 @@ msgstr "" "`system`, :func:`wait`, ou :func:`waitpid` en paramètre. Ils peuvent être " "utilisés pour déterminer la disposition d'un processus." -#: library/os.rst:4233 +#: library/os.rst:4479 msgid "" "Return ``True`` if a core dump was generated for the process, otherwise " "return ``False``." @@ -6086,11 +6424,11 @@ msgstr "" "Renvoie ``True`` si un vidage système (*core dump*) a été généré pour le " "processus, sinon, renvoie ``False``." -#: library/os.rst:4302 +#: library/os.rst:4548 msgid "This function should be employed only if :func:`WIFSIGNALED` is true." msgstr "" -#: library/os.rst:4243 +#: library/os.rst:4489 #, fuzzy msgid "" "Return ``True`` if a stopped child has been resumed by delivery of :data:" @@ -6100,11 +6438,11 @@ msgstr "" "Renvoie ``True`` si le processus a été continué après un arrêt du *job " "control*, renvoie ``False`` autrement." -#: library/os.rst:4247 +#: library/os.rst:4493 msgid "See :data:`WCONTINUED` option." msgstr "" -#: library/os.rst:4254 +#: library/os.rst:4500 #, fuzzy msgid "" "Return ``True`` if the process was stopped by delivery of a signal, " @@ -6113,14 +6451,14 @@ msgstr "" "Renvoie ``True`` si le processus s'est terminé à cause d'un signal, sinon, " "renvoie ``False``." -#: library/os.rst:4257 +#: library/os.rst:4503 msgid "" ":func:`WIFSTOPPED` only returns ``True`` if the :func:`waitpid` call was " "done using :data:`WUNTRACED` option or when the process is being traced " "(see :manpage:`ptrace(2)`)." msgstr "" -#: library/os.rst:4265 +#: library/os.rst:4511 #, fuzzy msgid "" "Return ``True`` if the process was terminated by a signal, otherwise return " @@ -6129,7 +6467,7 @@ msgstr "" "Renvoie ``True`` si le processus s'est terminé à cause d'un signal, sinon, " "renvoie ``False``." -#: library/os.rst:4273 +#: library/os.rst:4519 #, fuzzy msgid "" "Return ``True`` if the process exited terminated normally, that is, by " @@ -6139,33 +6477,33 @@ msgstr "" "Renvoie ``True`` si le processus s'est terminé en faisant un appel système :" "manpage:`exit(2)`, sinon, renvoie ``False``." -#: library/os.rst:4282 +#: library/os.rst:4528 #, fuzzy msgid "Return the process exit status." msgstr "Renvoie l'identifiant du processus actuel." -#: library/os.rst:4284 +#: library/os.rst:4530 msgid "This function should be employed only if :func:`WIFEXITED` is true." msgstr "" -#: library/os.rst:4291 +#: library/os.rst:4537 msgid "Return the signal which caused the process to stop." msgstr "Renvoie le signal qui a causé l'arrêt du processus." -#: library/os.rst:4293 +#: library/os.rst:4539 msgid "This function should be employed only if :func:`WIFSTOPPED` is true." msgstr "" -#: library/os.rst:4300 +#: library/os.rst:4546 #, fuzzy msgid "Return the number of the signal that caused the process to terminate." msgstr "Renvoie le signal qui a amené le processus à quitter." -#: library/os.rst:4308 +#: library/os.rst:4554 msgid "Interface to the scheduler" msgstr "Interface pour l'ordonnanceur" -#: library/os.rst:4310 +#: library/os.rst:4556 msgid "" "These functions control how a process is allocated CPU time by the operating " "system. They are only available on some Unix platforms. For more detailed " @@ -6176,7 +6514,7 @@ msgstr "" "plate-formes Unix. Pour des informations plus détaillées, consultez les " "pages de manuels Unix." -#: library/os.rst:4316 +#: library/os.rst:4562 msgid "" "The following scheduling policies are exposed if they are supported by the " "operating system." @@ -6184,11 +6522,11 @@ msgstr "" "Les polices d'ordonnancement suivantes sont exposées si elles sont gérées " "par le système d'exploitation." -#: library/os.rst:4321 +#: library/os.rst:4567 msgid "The default scheduling policy." msgstr "La police d'ordonnancement par défaut." -#: library/os.rst:4325 +#: library/os.rst:4571 msgid "" "Scheduling policy for CPU-intensive processes that tries to preserve " "interactivity on the rest of the computer." @@ -6197,25 +6535,25 @@ msgstr "" "processeur. Cette police essaye de préserver l'interactivité pour le reste " "de l'ordinateur." -#: library/os.rst:4330 +#: library/os.rst:4576 msgid "Scheduling policy for extremely low priority background tasks." msgstr "" "Police d'ordonnancement pour les tâches de fond avec une priorité " "extrêmement faible." -#: library/os.rst:4334 +#: library/os.rst:4580 msgid "Scheduling policy for sporadic server programs." msgstr "Police d'ordonnancement pour des programmes serveurs sporadiques." -#: library/os.rst:4338 +#: library/os.rst:4584 msgid "A First In First Out scheduling policy." msgstr "Une police d'ordonnancement *FIFO* (dernier arrivé, premier servi)." -#: library/os.rst:4342 +#: library/os.rst:4588 msgid "A round-robin scheduling policy." msgstr "Une police d'ordonnancement *round-robin* (tourniquet)." -#: library/os.rst:4346 +#: library/os.rst:4592 msgid "" "This flag can be OR'ed with any other scheduling policy. When a process with " "this flag set forks, its child's scheduling policy and priority are reset to " @@ -6226,7 +6564,7 @@ msgstr "" "d'ordonnancement et la priorité du processus fils sont remises aux valeurs " "par défaut." -#: library/os.rst:4353 +#: library/os.rst:4599 msgid "" "This class represents tunable scheduling parameters used in :func:" "`sched_setparam`, :func:`sched_setscheduler`, and :func:`sched_getparam`. It " @@ -6236,15 +6574,15 @@ msgstr "" "pour :func:`sched_setparam`, :func:`sched_setscheduler`, et :func:" "`sched_getparam`. Un objet de ce type est immuable." -#: library/os.rst:4357 +#: library/os.rst:4603 msgid "At the moment, there is only one possible parameter:" msgstr "Pour le moment, il n'y a qu'un seul paramètre possible :" -#: library/os.rst:4361 +#: library/os.rst:4607 msgid "The scheduling priority for a scheduling policy." msgstr "La priorité d'ordonnancement pour une police d'ordonnancement." -#: library/os.rst:4366 +#: library/os.rst:4612 msgid "" "Get the minimum priority value for *policy*. *policy* is one of the " "scheduling policy constants above." @@ -6252,7 +6590,7 @@ msgstr "" "Récupère la valeur minimum pour une priorité pour la police *policy*. " "*policy* est une des constantes de police définies ci-dessus." -#: library/os.rst:4372 +#: library/os.rst:4618 msgid "" "Get the maximum priority value for *policy*. *policy* is one of the " "scheduling policy constants above." @@ -6260,7 +6598,7 @@ msgstr "" "Récupère la valeur maximum pour une priorité pour la police *policy*. " "*policy* est une des constantes de police définies ci-dessus." -#: library/os.rst:4378 +#: library/os.rst:4624 msgid "" "Set the scheduling policy for the process with PID *pid*. A *pid* of 0 means " "the calling process. *policy* is one of the scheduling policy constants " @@ -6271,7 +6609,7 @@ msgstr "" "police définies ci-dessus. *param* est une instance de la classe :class:" "`sched_param`." -#: library/os.rst:4385 +#: library/os.rst:4631 msgid "" "Return the scheduling policy for the process with PID *pid*. A *pid* of 0 " "means the calling process. The result is one of the scheduling policy " @@ -6281,7 +6619,7 @@ msgstr "" "de 0 signifie le processus appelant. Le résultat est une des constantes de " "police définies ci-dessus." -#: library/os.rst:4392 +#: library/os.rst:4638 #, fuzzy msgid "" "Set the scheduling parameters for the process with PID *pid*. A *pid* of 0 " @@ -6291,7 +6629,7 @@ msgstr "" "*pid* de ``0`` signifie le processus appelant. *param* est une instance de :" "class:`sched_param`." -#: library/os.rst:4398 +#: library/os.rst:4644 msgid "" "Return the scheduling parameters as a :class:`sched_param` instance for the " "process with PID *pid*. A *pid* of 0 means the calling process." @@ -6300,7 +6638,7 @@ msgstr "" "pour le processus de PID *pid*. Un *pid* de ``0`` signifie le processus " "appelant." -#: library/os.rst:4404 +#: library/os.rst:4650 msgid "" "Return the round-robin quantum in seconds for the process with PID *pid*. A " "*pid* of 0 means the calling process." @@ -6308,11 +6646,11 @@ msgstr "" "Renvoie le quantum de temps du *round-robin* (en secondes) pour le processus " "de PID *pid*. Un *pid* de ``0`` signifie le processus appelant." -#: library/os.rst:4410 +#: library/os.rst:4656 msgid "Voluntarily relinquish the CPU." msgstr "Abandonne volontairement le processeur." -#: library/os.rst:4415 +#: library/os.rst:4661 msgid "" "Restrict the process with PID *pid* (or the current process if zero) to a " "set of CPUs. *mask* is an iterable of integers representing the set of CPUs " @@ -6322,7 +6660,7 @@ msgstr "" "``0``) à un ensemble de CPUs. *mask* est un itérable d'entiers représentant " "l'ensemble de CPUs auquel le processus doit être restreint." -#: library/os.rst:4422 +#: library/os.rst:4668 msgid "" "Return the set of CPUs the process with PID *pid* (or the current process if " "zero) is restricted to." @@ -6330,11 +6668,11 @@ msgstr "" "Renvoie l'ensemble de CPUs auquel le processus de PID *pid* (ou le processus " "actuel si *pid* vaut ``0``) est restreint." -#: library/os.rst:4429 +#: library/os.rst:4675 msgid "Miscellaneous System Information" msgstr "Diverses informations sur le système" -#: library/os.rst:4434 +#: library/os.rst:4680 msgid "" "Return string-valued system configuration values. *name* specifies the " "configuration value to retrieve; it may be a string which is the name of a " @@ -6354,7 +6692,7 @@ msgstr "" "incluses dans ce *mapping*, passer un entier pour *name* est également " "accepté." -#: library/os.rst:4442 +#: library/os.rst:4688 msgid "" "If the configuration value specified by *name* isn't defined, ``None`` is " "returned." @@ -6362,7 +6700,7 @@ msgstr "" "Si la valeur de configuration spécifiée par *name* n'est pas définie, " "``None`` est renvoyé." -#: library/os.rst:4445 +#: library/os.rst:4691 msgid "" "If *name* is a string and is not known, :exc:`ValueError` is raised. If a " "specific value for *name* is not supported by the host system, even if it is " @@ -6374,7 +6712,7 @@ msgstr "" "par le système hôte, même si elle est incluse dans ``confstr_names``, une :" "exc:`OSError` est levée avec :const:`errno.EINVAL` pour numéro d'erreur." -#: library/os.rst:4455 +#: library/os.rst:4701 msgid "" "Dictionary mapping names accepted by :func:`confstr` to the integer values " "defined for those names by the host operating system. This can be used to " @@ -6384,13 +6722,13 @@ msgstr "" "entières définies pour ces noms par le système d'exploitation hôte. Cela " "peut être utilisé pour déterminer l'ensemble des noms connus du système." -#: library/os.rst:4464 +#: library/os.rst:4710 msgid "" "Return the number of CPUs in the system. Returns ``None`` if undetermined." msgstr "" "Renvoie le nombre de CPUs dans le système. Renvoie ``None`` si indéterminé." -#: library/os.rst:4466 +#: library/os.rst:4712 msgid "" "This number is not equivalent to the number of CPUs the current process can " "use. The number of usable CPUs can be obtained with ``len(os." @@ -6400,7 +6738,7 @@ msgstr "" "peut utiliser. Le nombre de CPUs utilisables peut être obtenu avec ``len(os." "sched_getaffinity(0))``" -#: library/os.rst:4476 +#: library/os.rst:4722 msgid "" "Return the number of processes in the system run queue averaged over the " "last 1, 5, and 15 minutes or raises :exc:`OSError` if the load average was " @@ -6410,7 +6748,7 @@ msgstr "" "moyenne dans les dernières 1, 5, et 15 minutes, ou lève une :exc:`OSError` " "si la charge moyenne est impossible à récupérer." -#: library/os.rst:4485 +#: library/os.rst:4731 msgid "" "Return integer-valued system configuration values. If the configuration " "value specified by *name* isn't defined, ``-1`` is returned. The comments " @@ -6424,7 +6762,7 @@ msgstr "" "s'appliquent également ici, le dictionnaire qui fournit les informations sur " "les noms connus est donné par ``sysconf_names``." -#: library/os.rst:4495 +#: library/os.rst:4741 msgid "" "Dictionary mapping names accepted by :func:`sysconf` to the integer values " "defined for those names by the host operating system. This can be used to " @@ -6434,7 +6772,7 @@ msgstr "" "entières définies pour ces noms par le système d'exploitation hôte. Cela " "peut être utilisé pour déterminer l'ensemble des noms connus du système." -#: library/os.rst:4501 +#: library/os.rst:4747 msgid "" "The following data values are used to support path manipulation operations. " "These are defined for all platforms." @@ -6442,7 +6780,7 @@ msgstr "" "Les valeurs suivantes sont utilisées pour gérer les opérations de " "manipulations de chemins. Elles sont définies pour toutes les plate-formes." -#: library/os.rst:4504 +#: library/os.rst:4750 msgid "" "Higher-level operations on pathnames are defined in the :mod:`os.path` " "module." @@ -6450,7 +6788,7 @@ msgstr "" "Des opérations de plus haut niveau sur les chemins sont définies dans le " "module :mod:`os.path`." -#: library/os.rst:4510 +#: library/os.rst:4756 msgid "" "The constant string used by the operating system to refer to the current " "directory. This is ``'.'`` for Windows and POSIX. Also available via :mod:" @@ -6460,7 +6798,7 @@ msgstr "" "référencer le répertoire actuel. Ça vaut ``'.'`` pour Windows et POSIX. " "Également disponible par :mod:`os.path`." -#: library/os.rst:4518 +#: library/os.rst:4764 msgid "" "The constant string used by the operating system to refer to the parent " "directory. This is ``'..'`` for Windows and POSIX. Also available via :mod:" @@ -6470,7 +6808,7 @@ msgstr "" "référencer le répertoire parent. Ça vaut ``'..'`` pour Windows et POSIX. " "Également disponible par :mod:`os.path`." -#: library/os.rst:4527 +#: library/os.rst:4773 msgid "" "The character used by the operating system to separate pathname components. " "This is ``'/'`` for POSIX and ``'\\\\'`` for Windows. Note that knowing " @@ -6485,7 +6823,7 @@ msgstr "" "et :func:`os.path.join`), mais ça peut s'avérer utile occasionnellement. " "Également disponible par :mod:`os.path`." -#: library/os.rst:4537 +#: library/os.rst:4783 msgid "" "An alternative character used by the operating system to separate pathname " "components, or ``None`` if only one separator character exists. This is set " @@ -6497,7 +6835,7 @@ msgstr "" "vaut ``'/'`` sur Windows où ``sep`` est un antislash ``'\\'``. Également " "disponible par :mod:`os.path`." -#: library/os.rst:4546 +#: library/os.rst:4792 msgid "" "The character which separates the base filename from the extension; for " "example, the ``'.'`` in :file:`os.py`. Also available via :mod:`os.path`." @@ -6506,7 +6844,7 @@ msgstr "" "exemple, le ``'.'`` de :file:`os.py`. Également disponible par :mod:`os." "path`." -#: library/os.rst:4554 +#: library/os.rst:4800 msgid "" "The character conventionally used by the operating system to separate search " "path components (as in :envvar:`PATH`), such as ``':'`` for POSIX or ``';'`` " @@ -6517,7 +6855,7 @@ msgstr "" "d'environnement :envvar:`PATH`). Cela vaut ``':'`` pour POSIX, ou ``';'`` " "pour Windows. Également disponible par :mod:`os.path`." -#: library/os.rst:4561 +#: library/os.rst:4807 msgid "" "The default search path used by :func:`exec\\*p\\* ` and :func:`spawn" "\\*p\\* ` if the environment doesn't have a ``'PATH'`` key. Also " @@ -6527,7 +6865,7 @@ msgstr "" "func:`spawn\\* ` si l'environnement n'a pas une clef ``'PATH'``. " "Également disponible par :mod:`os.path`." -#: library/os.rst:4568 +#: library/os.rst:4814 msgid "" "The string used to separate (or, rather, terminate) lines on the current " "platform. This may be a single character, such as ``'\\n'`` for POSIX, or " @@ -6542,7 +6880,7 @@ msgstr "" "écrivez dans un fichier ouvert en mode *texte* (par défaut). Utilisez un " "unique ``'\\n'`` à la place, sur toutes les plate-formes." -#: library/os.rst:4577 +#: library/os.rst:4823 msgid "" "The file path of the null device. For example: ``'/dev/null'`` for POSIX, " "``'nul'`` for Windows. Also available via :mod:`os.path`." @@ -6550,7 +6888,7 @@ msgstr "" "Le chemin de fichier du périphérique *null*. Par exemple : ``'/dev/null'`` " "pour POSIX, ``'nul'`` pour Windows. Également disponible par :mod:`os.path`." -#: library/os.rst:4588 +#: library/os.rst:4834 msgid "" "Flags for use with the :func:`~sys.setdlopenflags` and :func:`~sys." "getdlopenflags` functions. See the Unix manual page :manpage:`dlopen(3)` " @@ -6560,11 +6898,11 @@ msgstr "" "`~sys.getdlopenflags`. Voir les pages de manuel Unix :manpage:`dlopen(3)` " "pour les différences de significations entre les marqueurs." -#: library/os.rst:4596 +#: library/os.rst:4842 msgid "Random numbers" msgstr "Nombres aléatoires" -#: library/os.rst:4601 +#: library/os.rst:4847 msgid "" "Get up to *size* random bytes. The function can return less bytes than " "requested." @@ -6572,7 +6910,7 @@ msgstr "" "Obtient *size* octets aléatoires. La fonction renvoie éventuellement moins " "d'octets que demandé." -#: library/os.rst:4604 +#: library/os.rst:4850 msgid "" "These bytes can be used to seed user-space random number generators or for " "cryptographic purposes." @@ -6580,7 +6918,7 @@ msgstr "" "Ces octets peuvent être utilisés pour initialiser un générateur de nombres " "aléatoires dans l'espace utilisateur ou pour des raisons cryptographiques." -#: library/os.rst:4607 +#: library/os.rst:4853 msgid "" "``getrandom()`` relies on entropy gathered from device drivers and other " "sources of environmental noise. Unnecessarily reading large quantities of " @@ -6592,7 +6930,7 @@ msgstr "" "grosses quantités de données aura un impact négatif sur les autres " "utilisateurs des périphériques ``/dev/random`` et ``/dev/urandom``." -#: library/os.rst:4612 +#: library/os.rst:4858 msgid "" "The flags argument is a bit mask that can contain zero or more of the " "following values ORed together: :py:data:`os.GRND_RANDOM` and :py:data:" @@ -6602,7 +6940,7 @@ msgstr "" "valeurs suivantes combinées avec un OU bit-à-bit : :py:data:`os.GRND_RANDOM` " "et :py:data:`GRND_NONBLOCK`." -#: library/os.rst:4616 +#: library/os.rst:4862 msgid "" "See also the `Linux getrandom() manual page `_." @@ -6610,17 +6948,17 @@ msgstr "" "Voir aussi la `page de manuel Linux pour getrandom() `_." -#: library/os.rst:4620 +#: library/os.rst:4866 msgid ":ref:`Availability `: Linux 3.17 and newer." msgstr ":ref:`Disponibilité ` : Linux 3.17 et ultérieures." -#: library/os.rst:4625 +#: library/os.rst:4871 msgid "Return a string of *size* random bytes suitable for cryptographic use." msgstr "" "Renvoie une chaîne de *size* octets aléatoires utilisable dans un cadre " "cryptographique." -#: library/os.rst:4627 +#: library/os.rst:4873 msgid "" "This function returns random bytes from an OS-specific randomness source. " "The returned data should be unpredictable enough for cryptographic " @@ -6631,7 +6969,7 @@ msgstr "" "pour les applications cryptographiques, bien que la qualité dépende de " "l'implémentation du système." -#: library/os.rst:4631 +#: library/os.rst:4877 msgid "" "On Linux, if the ``getrandom()`` syscall is available, it is used in " "blocking mode: block until the system urandom entropy pool is initialized " @@ -6648,7 +6986,7 @@ msgstr "" "aléatoires en mode non-bloquant (avec l'option :data:`GRND_NONBLOCK`) ou " "attendre jusqu'à ce que la réserve d'entropie d'*urandom* soit initialisée." -#: library/os.rst:4638 +#: library/os.rst:4884 msgid "" "On a Unix-like system, random bytes are read from the ``/dev/urandom`` " "device. If the ``/dev/urandom`` device is not available or not readable, " @@ -6659,11 +6997,11 @@ msgstr "" "disponible ou n'est pas lisible, l'exception :exc:`NotImplementedError` est " "levée." -#: library/os.rst:4642 +#: library/os.rst:4888 msgid "On Windows, it will use ``CryptGenRandom()``." msgstr "Sous Windows, ``CryptGenRandom()`` est utilisée." -#: library/os.rst:4645 +#: library/os.rst:4891 msgid "" "The :mod:`secrets` module provides higher level functions. For an easy-to-" "use interface to the random number generator provided by your platform, " @@ -6673,7 +7011,7 @@ msgstr "" "interface facile à utiliser du générateur de nombres aléatoires fourni par " "votre plate-forme, veuillez regarder :class:`random.SystemRandom`." -#: library/os.rst:4649 +#: library/os.rst:4895 msgid "" "On Linux, ``getrandom()`` is now used in blocking mode to increase the " "security." @@ -6681,7 +7019,7 @@ msgstr "" "Sous Linux, ``getrandom()`` est maintenant utilisé en mode bloquant pour " "renforcer la sécurité." -#: library/os.rst:4653 +#: library/os.rst:4899 msgid "" "On Linux, if the ``getrandom()`` syscall blocks (the urandom entropy pool is " "not initialized yet), fall back on reading ``/dev/urandom``." @@ -6690,7 +7028,7 @@ msgstr "" "d'*urandom* n'est pas encore initialisée), réalise à la place une lecture de " "``/dev/urandom``." -#: library/os.rst:4657 +#: library/os.rst:4903 msgid "" "On Linux 3.17 and newer, the ``getrandom()`` syscall is now used when " "available. On OpenBSD 5.6 and newer, the C ``getentropy()`` function is now " @@ -6701,7 +7039,7 @@ msgstr "" "la fonction C ``getentropy()`` est utilisée. Ces fonctions évitent " "l'utilisation interne d'un descripteur de fichier." -#: library/os.rst:4665 +#: library/os.rst:4911 msgid "" "By default, when reading from ``/dev/random``, :func:`getrandom` blocks if " "no random bytes are available, and when reading from ``/dev/urandom``, it " @@ -6712,7 +7050,7 @@ msgstr "" "urandom``, elle bloque si la réserve d'entropie n'a pas encore été " "initialisée." -#: library/os.rst:4669 +#: library/os.rst:4915 msgid "" "If the :py:data:`GRND_NONBLOCK` flag is set, then :func:`getrandom` does not " "block in these cases, but instead immediately raises :exc:`BlockingIOError`." @@ -6720,7 +7058,7 @@ msgstr "" "Si l'option :py:data:`GRND_NONBLOCK` est activée, :func:`getrandom` ne " "bloque pas dans ces cas, mais lève immédiatement une :exc:`BlockingIOError`." -#: library/os.rst:4676 +#: library/os.rst:4922 msgid "" "If this bit is set, then random bytes are drawn from the ``/dev/" "random`` pool instead of the ``/dev/urandom`` pool." diff --git a/library/pathlib.po b/library/pathlib.po index 7f78ad0bd..b371553c5 100644 --- a/library/pathlib.po +++ b/library/pathlib.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" -"PO-Revision-Date: 2020-09-30 16:07+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"PO-Revision-Date: 2021-09-23 16:27+0200\n" "Last-Translator: Vincent Poulailleau \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -213,7 +213,7 @@ msgstr "" "Une sous-classe de :class:`PurePath`, cette famille de chemin représente les " "chemins de systèmes de fichiers en dehors des chemins Windows ::" -#: library/pathlib.rst:174 library/pathlib.rst:646 library/pathlib.rst:656 +#: library/pathlib.rst:174 library/pathlib.rst:648 library/pathlib.rst:658 msgid "*pathsegments* is specified similarly to :class:`PurePath`." msgstr "*pathsegments* est spécifié de manière similaire à :class:`PurePath`." @@ -362,19 +362,25 @@ msgid "" msgstr "" "Une séquence immuable fournissant accès aux ancêtres logiques du chemin ::" -#: library/pathlib.rst:342 +#: library/pathlib.rst:339 +msgid "" +"The parents sequence now supports :term:`slices ` and negative index " +"values." +msgstr "" + +#: library/pathlib.rst:344 msgid "The logical parent of the path::" msgstr "Le parent logique du chemin ::" -#: library/pathlib.rst:348 +#: library/pathlib.rst:350 msgid "You cannot go past an anchor, or empty path::" msgstr "Vous ne pouvez pas aller au-delà d'une ancre, ou d'un chemin vide ::" -#: library/pathlib.rst:358 +#: library/pathlib.rst:360 msgid "This is a purely lexical operation, hence the following behaviour::" msgstr "C'est une opération purement lexicale, d'où le comportement suivant ::" -#: library/pathlib.rst:364 +#: library/pathlib.rst:366 msgid "" "If you want to walk an arbitrary filesystem path upwards, it is recommended " "to first call :meth:`Path.resolve` so as to resolve symlinks and eliminate `" @@ -384,7 +390,7 @@ msgstr "" "recommandé de d'abord appeler :meth:`Path.resolve` de manière à résoudre les " "liens symboliques et éliminer les composantes `\"..\"`." -#: library/pathlib.rst:371 +#: library/pathlib.rst:373 msgid "" "A string representing the final path component, excluding the drive and " "root, if any::" @@ -392,30 +398,30 @@ msgstr "" "Une chaîne représentant la composante finale du chemin, en excluant le " "lecteur et la racine, si présent ::" -#: library/pathlib.rst:377 +#: library/pathlib.rst:379 msgid "UNC drive names are not considered::" msgstr "Les noms de lecteur UNC ne sont pas pris en compte ::" -#: library/pathlib.rst:387 +#: library/pathlib.rst:389 msgid "The file extension of the final component, if any::" msgstr "L'extension du fichier de la composante finale, si présente ::" -#: library/pathlib.rst:399 +#: library/pathlib.rst:401 msgid "A list of the path's file extensions::" msgstr "Une liste des extensions du chemin de fichier ::" -#: library/pathlib.rst:411 +#: library/pathlib.rst:413 msgid "The final path component, without its suffix::" msgstr "La composante finale du chemin, sans son suffixe ::" -#: library/pathlib.rst:423 +#: library/pathlib.rst:425 msgid "" "Return a string representation of the path with forward slashes (``/``)::" msgstr "" "Renvoie une représentation en chaîne de caractères du chemin avec des slashs " "(``/``) ::" -#: library/pathlib.rst:434 +#: library/pathlib.rst:436 msgid "" "Represent the path as a ``file`` URI. :exc:`ValueError` is raised if the " "path isn't absolute." @@ -423,7 +429,7 @@ msgstr "" "Représente le chemin en tant qu'URI de fichier. :exc:`ValueError` est levée " "si le chemin n'est pas absolu." -#: library/pathlib.rst:447 +#: library/pathlib.rst:449 msgid "" "Return whether the path is absolute or not. A path is considered absolute " "if it has both a root and (if the flavour allows) a drive::" @@ -431,11 +437,11 @@ msgstr "" "Renvoie si le chemin est absolu ou non. Un chemin est considéré absolu s'il " "a une racine et un lecteur (si la famille le permet) ::" -#: library/pathlib.rst:467 +#: library/pathlib.rst:469 msgid "Return whether or not this path is relative to the *other* path." msgstr "Renvoie si ce chemin est relatif ou non au chemin *other*." -#: library/pathlib.rst:480 +#: library/pathlib.rst:482 msgid "" "With :class:`PureWindowsPath`, return ``True`` if the path is considered " "reserved under Windows, ``False`` otherwise. With :class:`PurePosixPath`, " @@ -445,7 +451,7 @@ msgstr "" "réservé sous Windows, ``False`` sinon. Avec :class:`PurePosixPath`, " "``False`` est systématiquement renvoyé." -#: library/pathlib.rst:489 +#: library/pathlib.rst:491 msgid "" "File system calls on reserved paths can fail mysteriously or have unintended " "effects." @@ -453,7 +459,7 @@ msgstr "" "Les appels au système de fichier sur des chemins réservés peuvent échouer " "mystérieusement ou avoir des effets inattendus." -#: library/pathlib.rst:495 +#: library/pathlib.rst:497 msgid "" "Calling this method is equivalent to combining the path with each of the " "*other* arguments in turn::" @@ -461,7 +467,7 @@ msgstr "" "Appeler cette méthode équivaut à combiner le chemin avec chacun des " "arguments *other* ::" -#: library/pathlib.rst:510 +#: library/pathlib.rst:512 msgid "" "Match this path against the provided glob-style pattern. Return ``True`` if " "matching is successful, ``False`` otherwise." @@ -469,7 +475,7 @@ msgstr "" "Fait correspondre ce chemin avec le motif (*glob pattern*) fourni. Renvoie " "``True`` si la correspondance a réussi, ``False`` sinon." -#: library/pathlib.rst:513 +#: library/pathlib.rst:515 msgid "" "If *pattern* is relative, the path can be either relative or absolute, and " "matching is done from the right::" @@ -477,7 +483,7 @@ msgstr "" "Si *pattern* est relatif, le chemin peut être soit relatif, soit absolu, et " "la correspondance est faite à partir de la droite ::" -#: library/pathlib.rst:523 +#: library/pathlib.rst:525 msgid "" "If *pattern* is absolute, the path must be absolute, and the whole path must " "match::" @@ -485,13 +491,13 @@ msgstr "" "Si *pattern* est absolu, le chemin doit être absolu, et la correspondance " "doit être totale avec le chemin ::" -#: library/pathlib.rst:531 +#: library/pathlib.rst:533 msgid "As with other methods, case-sensitivity follows platform defaults::" msgstr "" "Comme pour les autres méthodes, la sensibilité à la casse est la sensibilité " "par défaut de la plate-forme ::" -#: library/pathlib.rst:541 +#: library/pathlib.rst:543 msgid "" "Compute a version of this path relative to the path represented by *other*. " "If it's impossible, ValueError is raised::" @@ -499,7 +505,7 @@ msgstr "" "Calcule une version du chemin en relatif au chemin représenté par *other*. " "Si c'est impossible, ValueError est levée ::" -#: library/pathlib.rst:556 +#: library/pathlib.rst:558 msgid "" "NOTE: This function is part of :class:`PurePath` and works with strings. It " "does not check or access the underlying file structure." @@ -508,7 +514,7 @@ msgstr "" "des chaînes de caractères. Elle n'accède donc pas au système de fichiers " "sous-jacente, et ne vérifie donc pas son résultat." -#: library/pathlib.rst:561 +#: library/pathlib.rst:563 msgid "" "Return a new path with the :attr:`name` changed. If the original path " "doesn't have a name, ValueError is raised::" @@ -516,7 +522,7 @@ msgstr "" "Renvoie un nouveau chemin avec :attr:`name` changé. Si le chemin original " "n'a pas de nom, ValueError est levée ::" -#: library/pathlib.rst:578 +#: library/pathlib.rst:580 msgid "" "Return a new path with the :attr:`stem` changed. If the original path " "doesn't have a name, ValueError is raised::" @@ -524,7 +530,7 @@ msgstr "" "Renvoie un nouveau chemin avec :attr:`stem` changé. Si le chemin original " "n'a pas de nom, *ValueError* est levée ::" -#: library/pathlib.rst:602 +#: library/pathlib.rst:604 msgid "" "Return a new path with the :attr:`suffix` changed. If the original path " "doesn't have a suffix, the new *suffix* is appended instead. If the " @@ -534,11 +540,11 @@ msgstr "" "n'a pas de suffixe, le nouveau *suffix* est alors ajouté. Si *suffix* est " "une chaîne vide, le suffixe d'origine est retiré ::" -#: library/pathlib.rst:621 +#: library/pathlib.rst:623 msgid "Concrete paths" msgstr "Chemins concrets" -#: library/pathlib.rst:623 +#: library/pathlib.rst:625 msgid "" "Concrete paths are subclasses of the pure path classes. In addition to " "operations provided by the latter, they also provide methods to do system " @@ -549,7 +555,7 @@ msgstr "" "pour faire appel au système sur des objets chemin. Il y a trois façons " "d'instancier des chemins concrets :" -#: library/pathlib.rst:629 +#: library/pathlib.rst:631 msgid "" "A subclass of :class:`PurePath`, this class represents concrete paths of the " "system's path flavour (instantiating it creates either a :class:`PosixPath` " @@ -559,7 +565,7 @@ msgstr "" "concrets d'une famille de chemins de système de fichiers (l'instancier créé " "soit un :class:`PosixPath`, soit un :class:`WindowsPath`) ::" -#: library/pathlib.rst:640 +#: library/pathlib.rst:642 msgid "" "A subclass of :class:`Path` and :class:`PurePosixPath`, this class " "represents concrete non-Windows filesystem paths::" @@ -567,7 +573,7 @@ msgstr "" "Une sous-classe de :class:`Path` et :class:`PurePosixPath`, cette classe " "représente les chemins concrets de systèmes de fichiers non Windows ::" -#: library/pathlib.rst:650 +#: library/pathlib.rst:652 msgid "" "A subclass of :class:`Path` and :class:`PureWindowsPath`, this class " "represents concrete Windows filesystem paths::" @@ -575,7 +581,7 @@ msgstr "" "Une sous-classe de :class:`Path` et :class:`PureWindowsPath`, cette classe " "représente les chemins concrets de systèmes de fichiers Windows ::" -#: library/pathlib.rst:658 +#: library/pathlib.rst:660 msgid "" "You can only instantiate the class flavour that corresponds to your system " "(allowing system calls on non-compatible path flavours could lead to bugs or " @@ -586,11 +592,11 @@ msgstr "" "non compatibles pourrait mener à des bogues ou à des pannes de votre " "application) ::" -#: library/pathlib.rst:678 +#: library/pathlib.rst:680 msgid "Methods" msgstr "Méthodes" -#: library/pathlib.rst:680 +#: library/pathlib.rst:682 msgid "" "Concrete paths provide the following methods in addition to pure paths " "methods. Many of these methods can raise an :exc:`OSError` if a system call " @@ -600,7 +606,7 @@ msgstr "" "des chemins purs. Beaucoup de ces méthodes peuvent lever :exc:`OSError` si " "un appel au système échoue (par exemple car le chemin n'existe pas)." -#: library/pathlib.rst:686 +#: library/pathlib.rst:688 msgid "" ":meth:`~Path.exists()`, :meth:`~Path.is_dir()`, :meth:`~Path.is_file()`, :" "meth:`~Path.is_mount()`, :meth:`~Path.is_symlink()`, :meth:`~Path." @@ -616,7 +622,7 @@ msgstr "" "une exception pour les chemins qui contiennent des caractères non " "représentables au niveau du système d'exploitation." -#: library/pathlib.rst:696 +#: library/pathlib.rst:698 msgid "" "Return a new path object representing the current directory (as returned by :" "func:`os.getcwd`)::" @@ -624,15 +630,17 @@ msgstr "" "Renvoie un nouveau chemin représentant le dossier courant (comme renvoyé " "par :func:`os.getcwd`) ::" -#: library/pathlib.rst:705 +#: library/pathlib.rst:707 +#, fuzzy msgid "" "Return a new path object representing the user's home directory (as returned " -"by :func:`os.path.expanduser` with ``~`` construct)::" +"by :func:`os.path.expanduser` with ``~`` construct). If the home directory " +"can't be resolved, :exc:`RuntimeError` is raised." msgstr "" "Renvoie un nouveau chemin représentant le dossier d’accueil de l'utilisateur " "(comme renvoyé par :func:`os.path.expanduser` avec la construction ``~`` ) ::" -#: library/pathlib.rst:716 +#: library/pathlib.rst:721 msgid "" "Return a :class:`os.stat_result` object containing information about this " "path, like :func:`os.stat`. The result is looked up at each call to this " @@ -642,16 +650,35 @@ msgstr "" "chemin, comme :func:`os.stat`. Le résultat est récupéré à chaque appel à " "cette méthode." -#: library/pathlib.rst:730 -msgid "Change the file mode and permissions, like :func:`os.chmod`::" +#: library/pathlib.rst:724 +msgid "" +"This method normally follows symlinks; to stat a symlink add the argument " +"``follow_symlinks=False``, or use :meth:`~Path.lstat`." +msgstr "" + +#: library/pathlib.rst:755 +#, fuzzy +msgid "The *follow_symlinks* parameter was added." +msgstr "Ajout du paramètre *missing_ok*." + +#: library/pathlib.rst:740 +#, fuzzy +msgid "Change the file mode and permissions, like :func:`os.chmod`." msgstr "" "Change le mode et les permissions du fichier, comme :func:`os.chmod` ::" #: library/pathlib.rst:742 +msgid "" +"This method normally follows symlinks. Some Unix flavours support changing " +"permissions on the symlink itself; on these platforms you may add the " +"argument ``follow_symlinks=False``, or use :meth:`~Path.lchmod`." +msgstr "" + +#: library/pathlib.rst:760 msgid "Whether the path points to an existing file or directory::" msgstr "Si le chemin pointe sur un fichier ou dossier existant ::" -#: library/pathlib.rst:754 +#: library/pathlib.rst:772 msgid "" "If the path points to a symlink, :meth:`exists` returns whether the symlink " "*points to* an existing file or directory." @@ -659,15 +686,17 @@ msgstr "" "Si le chemin pointe sur un lien symbolique, :meth:`exists` renvoie si le " "lien symbolique *pointe vers* un fichier ou un dossier existant." -#: library/pathlib.rst:760 +#: library/pathlib.rst:778 +#, fuzzy msgid "" "Return a new path with expanded ``~`` and ``~user`` constructs, as returned " -"by :meth:`os.path.expanduser`::" +"by :meth:`os.path.expanduser`. If a home directory can't be resolved, :exc:" +"`RuntimeError` is raised." msgstr "" "Renvoie un nouveau chemin avec les résolutions des constructions ``~`` et " "``~user``, comme retourné par :meth:`os.path.expanduser` ::" -#: library/pathlib.rst:772 +#: library/pathlib.rst:793 msgid "" "Glob the given relative *pattern* in the directory represented by this path, " "yielding all matching files (of any kind)::" @@ -676,16 +705,18 @@ msgstr "" "représenté par ce chemin, donnant tous les fichiers correspondants (de " "n'importe quelle sorte) ::" -#: library/pathlib.rst:780 +#: library/pathlib.rst:801 +#, fuzzy msgid "" -"The \"``**``\" pattern means \"this directory and all subdirectories, " -"recursively\". In other words, it enables recursive globbing::" +"Patterns are the same as for :mod:`fnmatch`, with the addition of \"``**``\" " +"which means \"this directory and all subdirectories, recursively\". In " +"other words, it enables recursive globbing::" msgstr "" "Le motif ``\"**\"`` signifie « ce dossier et ses sous-dossiers, " "récursivement ». En d'autres mots, il permet un d’effectuer un *globbing* " "récursif ::" -#: library/pathlib.rst:791 +#: library/pathlib.rst:813 msgid "" "Using the \"``**``\" pattern in large directory trees may consume an " "inordinate amount of time." @@ -693,7 +724,7 @@ msgstr "" "Utiliser le motif \"``**``\" dans de grandes arborescences de dossier peut " "consommer une quantité de temps démesurée." -#: library/pathlib.rst:794 +#: library/pathlib.rst:816 msgid "" "Raises an :ref:`auditing event ` ``pathlib.Path.glob`` with " "arguments ``self``, ``pattern``." @@ -701,7 +732,7 @@ msgstr "" "Lève un :ref:`évènement d’audit ` ``pathlib.Path.glob`` avec comme " "arguments ``self`` et ``pattern``." -#: library/pathlib.rst:799 +#: library/pathlib.rst:821 msgid "" "Return the name of the group owning the file. :exc:`KeyError` is raised if " "the file's gid isn't found in the system database." @@ -709,7 +740,7 @@ msgstr "" "Renvoie le nom du groupe propriétaire du fichier. :exc:`KeyError` est levée " "si le *gid* du fichier n'est pas trouvé dans la base de données du système." -#: library/pathlib.rst:805 +#: library/pathlib.rst:827 msgid "" "Return ``True`` if the path points to a directory (or a symbolic link " "pointing to a directory), ``False`` if it points to another kind of file." @@ -718,7 +749,7 @@ msgstr "" "pointant vers un dossier), ``False`` s'il pointe vers une autre sorte de " "fichier." -#: library/pathlib.rst:817 library/pathlib.rst:855 library/pathlib.rst:873 +#: library/pathlib.rst:839 library/pathlib.rst:877 library/pathlib.rst:895 msgid "" "``False`` is also returned if the path doesn't exist or is a broken symlink; " "other errors (such as permission errors) are propagated." @@ -727,7 +758,7 @@ msgstr "" "symbolique cassé. D’autres erreurs (telles que les erreurs de permission) " "sont propagées." -#: library/pathlib.rst:814 +#: library/pathlib.rst:836 msgid "" "Return ``True`` if the path points to a regular file (or a symbolic link " "pointing to a regular file), ``False`` if it points to another kind of file." @@ -736,7 +767,7 @@ msgstr "" "symbolique pointe vers un fichier normal), ``False`` s'il pointe vers une " "autre sorte de fichier." -#: library/pathlib.rst:823 +#: library/pathlib.rst:845 msgid "" "Return ``True`` if the path is a :dfn:`mount point`: a point in a file " "system where a different file system has been mounted. On POSIX, the " @@ -753,13 +784,13 @@ msgstr "" "détecter tous les points de montage pour toutes les variantes Unix et POSIX. " "Non implémenté sous Windows." -#: library/pathlib.rst:835 +#: library/pathlib.rst:857 msgid "" "Return ``True`` if the path points to a symbolic link, ``False`` otherwise." msgstr "" "Renvoie ``True`` si le chemin pointe sur un lien symbolique, ``False`` sinon." -#: library/pathlib.rst:837 +#: library/pathlib.rst:859 msgid "" "``False`` is also returned if the path doesn't exist; other errors (such as " "permission errors) are propagated." @@ -767,7 +798,7 @@ msgstr "" "``False`` est aussi renvoyé si le chemin n'existe pas ; d'autres erreurs " "(telles que les erreurs de permission) sont propagées." -#: library/pathlib.rst:843 +#: library/pathlib.rst:865 msgid "" "Return ``True`` if the path points to a Unix socket (or a symbolic link " "pointing to a Unix socket), ``False`` if it points to another kind of file." @@ -776,7 +807,7 @@ msgstr "" "symbolique pointant vers un connecteur Unix), ``False`` s'il pointe vers une " "autre sorte de fichier." -#: library/pathlib.rst:852 +#: library/pathlib.rst:874 msgid "" "Return ``True`` if the path points to a FIFO (or a symbolic link pointing to " "a FIFO), ``False`` if it points to another kind of file." @@ -785,7 +816,7 @@ msgstr "" "pointant vers une FIFO), ``False`` s'il pointe vers une autre sorte de " "fichier." -#: library/pathlib.rst:861 +#: library/pathlib.rst:883 msgid "" "Return ``True`` if the path points to a block device (or a symbolic link " "pointing to a block device), ``False`` if it points to another kind of file." @@ -794,7 +825,7 @@ msgstr "" "symbolique pointant vers un périphérique), ``False`` s'il pointe vers une " "autre sorte de fichier." -#: library/pathlib.rst:870 +#: library/pathlib.rst:892 msgid "" "Return ``True`` if the path points to a character device (or a symbolic link " "pointing to a character device), ``False`` if it points to another kind of " @@ -804,7 +835,7 @@ msgstr "" "un lien symbolique pointant vers un périphérique à caractères), ``False`` " "s'il pointe vers une autre sorte de fichier." -#: library/pathlib.rst:879 +#: library/pathlib.rst:901 msgid "" "When the path points to a directory, yield path objects of the directory " "contents::" @@ -812,7 +843,7 @@ msgstr "" "Quand le chemin pointe vers un dossier, donne par séquences les objets " "chemin du contenu du dossier ::" -#: library/pathlib.rst:893 +#: library/pathlib.rst:915 msgid "" "The children are yielded in arbitrary order, and the special entries ``'.'`` " "and ``'..'`` are not included. If a file is removed from or added to the " @@ -820,7 +851,7 @@ msgid "" "be included is unspecified." msgstr "" -#: library/pathlib.rst:900 +#: library/pathlib.rst:922 msgid "" "Like :meth:`Path.chmod` but, if the path points to a symbolic link, the " "symbolic link's mode is changed rather than its target's." @@ -828,7 +859,7 @@ msgstr "" "Comme :meth:`Path.chmod`, mais, si le chemin pointe vers un lien symbolique, " "le mode du lien symbolique est changé plutôt que celui de sa cible." -#: library/pathlib.rst:906 +#: library/pathlib.rst:928 msgid "" "Like :meth:`Path.stat` but, if the path points to a symbolic link, return " "the symbolic link's information rather than its target's." @@ -836,7 +867,7 @@ msgstr "" "Comme :meth:`Path.stat`, mais, si le chemin pointe vers un lien symbolique, " "renvoie les informations du lien symbolique plutôt que celui de sa cible." -#: library/pathlib.rst:912 +#: library/pathlib.rst:934 msgid "" "Create a new directory at this given path. If *mode* is given, it is " "combined with the process' ``umask`` value to determine the file mode and " @@ -847,7 +878,7 @@ msgstr "" "de fichier et les droits d'accès. Si le chemin existe déjà, :exc:" "`FileExistsError` est levée." -#: library/pathlib.rst:917 +#: library/pathlib.rst:939 msgid "" "If *parents* is true, any missing parents of this path are created as " "needed; they are created with the default permissions without taking *mode* " @@ -857,7 +888,7 @@ msgstr "" "sont créés avec les permissions par défaut sans prendre en compte *mode* " "(reproduisant la commande POSIX ``mkdir -p``)." -#: library/pathlib.rst:921 +#: library/pathlib.rst:943 msgid "" "If *parents* is false (the default), a missing parent raises :exc:" "`FileNotFoundError`." @@ -865,7 +896,7 @@ msgstr "" "Si *parents* est faux (valeur par défaut), un parent manquant lève :exc:" "`FileNotFoundError`." -#: library/pathlib.rst:924 +#: library/pathlib.rst:946 msgid "" "If *exist_ok* is false (the default), :exc:`FileExistsError` is raised if " "the target directory already exists." @@ -873,7 +904,7 @@ msgstr "" "Si *exist_ok* est faux (valeur par défaut), :exc:`FileExistsError` est levé " "si le dossier cible existe déjà." -#: library/pathlib.rst:927 +#: library/pathlib.rst:949 msgid "" "If *exist_ok* is true, :exc:`FileExistsError` exceptions will be ignored " "(same behavior as the POSIX ``mkdir -p`` command), but only if the last path " @@ -884,11 +915,11 @@ msgstr "" "seulement si le dernier segment de chemin existe et n'est pas un dossier." # « nouveau dans la version … » -#: library/pathlib.rst:931 +#: library/pathlib.rst:953 msgid "The *exist_ok* parameter was added." msgstr "ajout du paramètre *exist_ok*." -#: library/pathlib.rst:937 +#: library/pathlib.rst:959 msgid "" "Open the file pointed to by the path, like the built-in :func:`open` " "function does::" @@ -896,7 +927,7 @@ msgstr "" "Ouvre le fichier pointé par le chemin, comme la fonction native :func:`open` " "le fait ::" -#: library/pathlib.rst:949 +#: library/pathlib.rst:971 msgid "" "Return the name of the user owning the file. :exc:`KeyError` is raised if " "the file's uid isn't found in the system database." @@ -905,18 +936,18 @@ msgstr "" "`KeyError` est levée si l’*uid* de l’utilisateur du fichier n'est pas trouvé " "dans la base de données du système." -#: library/pathlib.rst:955 +#: library/pathlib.rst:977 msgid "Return the binary contents of the pointed-to file as a bytes object::" msgstr "" "Renvoie le contenu binaire du fichier pointé en tant que chaîne d’octets ::" -#: library/pathlib.rst:968 +#: library/pathlib.rst:990 msgid "Return the decoded contents of the pointed-to file as a string::" msgstr "" "Renvoie le contenu décodé du fichier pointé en tant que chaîne de " "caractères ::" -#: library/pathlib.rst:976 +#: library/pathlib.rst:998 msgid "" "The file is opened and then closed. The optional parameters have the same " "meaning as in :func:`open`." @@ -924,7 +955,7 @@ msgstr "" "Le fichier est ouvert, puis fermé. Les paramètres optionnels ont la même " "signification que dans :func:`open`." -#: library/pathlib.rst:984 +#: library/pathlib.rst:1006 msgid "" "Return the path to which the symbolic link points (as returned by :func:`os." "readlink`)::" @@ -932,7 +963,7 @@ msgstr "" "Renvoie le chemin vers lequel le lien symbolique pointe (tel que renvoyé " "par :func:`os.readlink`) ::" -#: library/pathlib.rst:997 +#: library/pathlib.rst:1019 msgid "" "Rename this file or directory to the given *target*, and return a new Path " "instance pointing to *target*. On Unix, if *target* exists and is a file, " @@ -945,7 +976,7 @@ msgstr "" "l'utilisateur en a la permission. *target* peut être soit une chaîne de " "caractères, soit un autre chemin ::" -#: library/pathlib.rst:1025 +#: library/pathlib.rst:1047 msgid "" "The target path may be absolute or relative. Relative paths are interpreted " "relative to the current working directory, *not* the directory of the Path " @@ -953,11 +984,11 @@ msgid "" msgstr "" # « nouveau dans la version … » -#: library/pathlib.rst:1029 +#: library/pathlib.rst:1051 msgid "Added return value, return the new Path instance." msgstr "ajout de la valeur de retour, renvoie une nouvelle instance *Path*." -#: library/pathlib.rst:1021 +#: library/pathlib.rst:1043 msgid "" "Rename this file or directory to the given *target*, and return a new Path " "instance pointing to *target*. If *target* points to an existing file or " @@ -967,7 +998,7 @@ msgstr "" "nouvelle instance de *Path* pointant sur *target*. Si *target* pointe sur un " "fichier ou un dossier existant, il est systématiquement remplacé." -#: library/pathlib.rst:1035 +#: library/pathlib.rst:1057 msgid "" "Make the path absolute, resolving any symlinks. A new path object is " "returned::" @@ -975,7 +1006,7 @@ msgstr "" "Rend le chemin absolu, résolvant les liens symboliques. Un nouveau chemin " "est renvoyé ::" -#: library/pathlib.rst:1044 +#: library/pathlib.rst:1066 msgid "" "\"``..``\" components are also eliminated (this is the only method to do " "so)::" @@ -983,7 +1014,7 @@ msgstr "" "Les composantes \"``..``\" sont aussi éliminées (c'est la seule méthode pour " "le faire) ::" -#: library/pathlib.rst:1050 +#: library/pathlib.rst:1072 msgid "" "If the path doesn't exist and *strict* is ``True``, :exc:`FileNotFoundError` " "is raised. If *strict* is ``False``, the path is resolved as far as " @@ -998,11 +1029,11 @@ msgstr "" "résolution du chemin, :exc:`RuntimeError` est levée." # « nouveau dans la version … » -#: library/pathlib.rst:1056 +#: library/pathlib.rst:1078 msgid "The *strict* argument (pre-3.6 behavior is strict)." msgstr "l'argument *strict* (le comportement *pré-3.6* est strict par défaut)." -#: library/pathlib.rst:1061 +#: library/pathlib.rst:1083 msgid "" "This is like calling :func:`Path.glob` with \"``**/``\" added in front of " "the given relative *pattern*::" @@ -1010,7 +1041,7 @@ msgstr "" "C'est similaire à appeler :func:`Path.glob` avec \"``**/``\" ajouté au début " "du motif *pattern* relatif ::" -#: library/pathlib.rst:1071 +#: library/pathlib.rst:1093 msgid "" "Raises an :ref:`auditing event ` ``pathlib.Path.rglob`` with " "arguments ``self``, ``pattern``." @@ -1018,11 +1049,11 @@ msgstr "" "Lève un :ref:`évènement d’audit ` ``pathlib.Path.glob`` avec comme " "arguments ``self`` et ``pattern``." -#: library/pathlib.rst:1076 +#: library/pathlib.rst:1098 msgid "Remove this directory. The directory must be empty." msgstr "Supprime ce dossier. Le dossier doit être vide." -#: library/pathlib.rst:1081 +#: library/pathlib.rst:1103 msgid "" "Return whether this path points to the same file as *other_path*, which can " "be either a Path object, or a string. The semantics are similar to :func:" @@ -1032,7 +1063,7 @@ msgstr "" "être soit un chemin, soit une chaîne de caractères. La sémantique est " "similaire à :func:`os.path.samefile` et :func:`os.path.samestat`." -#: library/pathlib.rst:1085 +#: library/pathlib.rst:1107 msgid "" "An :exc:`OSError` can be raised if either file cannot be accessed for some " "reason." @@ -1040,7 +1071,7 @@ msgstr "" ":exc:`OSError` peut être levée si l'un des fichiers ne peut être accédé pour " "quelque raison." -#: library/pathlib.rst:1102 +#: library/pathlib.rst:1124 msgid "" "Make this path a symbolic link to *target*. Under Windows, " "*target_is_directory* must be true (default ``False``) if the link's target " @@ -1051,26 +1082,46 @@ msgstr "" "si la cible du lien est un dossier. Sous POSIX, la valeur de " "*target_is_directory* est ignorée." -#: library/pathlib.rst:1118 +#: library/pathlib.rst:1140 msgid "" "The order of arguments (link, target) is the reverse of :func:`os.symlink`'s." msgstr "" "L'ordre des arguments (lien, cible) est l'opposé de ceux de :func:`os." "symlink`." -#: library/pathlib.rst:1124 +#: library/pathlib.rst:1145 +#, fuzzy +msgid "Make this path a hard link to the same file as *target*." +msgstr "Crée un lien matériel pointant sur le chemin nommé *target*." + +#: library/pathlib.rst:1148 +#, fuzzy +msgid "" +"The order of arguments (link, target) is the reverse of :func:`os.link`'s." +msgstr "" +"L'ordre des arguments (lien, cible) est l'opposé de ceux de :func:`os." +"symlink`." + +#: library/pathlib.rst:1155 msgid "Make *target* a hard link to this path." msgstr "" -#: library/pathlib.rst:1128 +#: library/pathlib.rst:1159 msgid "" "This function does not make this path a hard link to *target*, despite the " "implication of the function and argument names. The argument order (target, " -"link) is the reverse of :func:`Path.symlink_to`, but matches that of :func:" -"`os.link`." +"link) is the reverse of :func:`Path.symlink_to` and :func:`Path." +"hardlink_to`, but matches that of :func:`os.link`." msgstr "" -#: library/pathlib.rst:1138 +#: library/pathlib.rst:1168 +msgid "" +"This method is deprecated in favor of :meth:`Path.hardlink_to`, as the " +"argument order of :meth:`Path.link_to` does not match that of :meth:`Path." +"symlink_to`." +msgstr "" + +#: library/pathlib.rst:1175 msgid "" "Create a file at this given path. If *mode* is given, it is combined with " "the process' ``umask`` value to determine the file mode and access flags. " @@ -1084,7 +1135,7 @@ msgstr "" "*exist_ok* est vrai (et si l'heure de modification est mise à jour avec " "l'heure courante), sinon :exc:`FileExistsError` est levée." -#: library/pathlib.rst:1147 +#: library/pathlib.rst:1184 msgid "" "Remove this file or symbolic link. If the path points to a directory, use :" "func:`Path.rmdir` instead." @@ -1092,7 +1143,7 @@ msgstr "" "Supprime ce fichier ou lien symbolique. Si le chemin pointe vers un dossier, " "utilisez :func:`Path.rmdir` à la place." -#: library/pathlib.rst:1150 +#: library/pathlib.rst:1187 msgid "" "If *missing_ok* is false (the default), :exc:`FileNotFoundError` is raised " "if the path does not exist." @@ -1100,7 +1151,7 @@ msgstr "" "Si *missing_ok* est faux (valeur par défaut), une :exc:`FileNotFoundError` " "est levée si le chemin n'existe pas." -#: library/pathlib.rst:1153 +#: library/pathlib.rst:1190 msgid "" "If *missing_ok* is true, :exc:`FileNotFoundError` exceptions will be ignored " "(same behavior as the POSIX ``rm -f`` command)." @@ -1108,11 +1159,11 @@ msgstr "" "Si *missing_ok* est vrai, les exceptions :exc:`FileNotFoundError` sont " "ignorées (même comportement que la commande POSIX ``rm -f``)." -#: library/pathlib.rst:1156 +#: library/pathlib.rst:1193 msgid "The *missing_ok* parameter was added." msgstr "Ajout du paramètre *missing_ok*." -#: library/pathlib.rst:1162 +#: library/pathlib.rst:1199 msgid "" "Open the file pointed to in bytes mode, write *data* to it, and close the " "file::" @@ -1120,11 +1171,11 @@ msgstr "" "Ouvre le fichier pointé en mode binaire, écrit *data* dedans, et ferme le " "fichier ::" -#: library/pathlib.rst:1171 +#: library/pathlib.rst:1208 msgid "An existing file of the same name is overwritten." msgstr "Le fichier du même nom, s'il existe, est écrasé." -#: library/pathlib.rst:1178 +#: library/pathlib.rst:1215 msgid "" "Open the file pointed to in text mode, write *data* to it, and close the " "file::" @@ -1132,7 +1183,7 @@ msgstr "" "Ouvre le fichier pointé en mode texte, écrit *data* dedans, et ferme le " "fichier ::" -#: library/pathlib.rst:1187 +#: library/pathlib.rst:1224 msgid "" "An existing file of the same name is overwritten. The optional parameters " "have the same meaning as in :func:`open`." @@ -1140,11 +1191,17 @@ msgstr "" "Le fichier du même nom, s'il existe, est écrasé. Les paramètres optionnels " "ont la même signification que dans :func:`open`." -#: library/pathlib.rst:1193 +# « nouveau dans la version … » +#: library/pathlib.rst:1229 +#, fuzzy +msgid "The *newline* parameter was added." +msgstr "ajout du paramètre *exist_ok*." + +#: library/pathlib.rst:1233 msgid "Correspondence to tools in the :mod:`os` module" msgstr "Correspondance des outils du module :mod:`os`" -#: library/pathlib.rst:1195 +#: library/pathlib.rst:1235 msgid "" "Below is a table mapping various :mod:`os` functions to their corresponding :" "class:`PurePath`/:class:`Path` equivalent." @@ -1152,219 +1209,252 @@ msgstr "" "Ci-dessous se trouve un tableau associant diverses fonctions :mod:`os` à " "leur équivalent :class:`PurePath` / :class:`Path` correspondant." -#: library/pathlib.rst:1200 +#: library/pathlib.rst:1240 msgid "" -"Although :func:`os.path.relpath` and :meth:`PurePath.relative_to` have some " -"overlapping use-cases, their semantics differ enough to warrant not " -"considering them equivalent." +"Not all pairs of functions/methods below are equivalent. Some of them, " +"despite having some overlapping use-cases, have different semantics. They " +"include :func:`os.path.abspath` and :meth:`Path.resolve`, :func:`os.path." +"relpath` and :meth:`PurePath.relative_to`." msgstr "" -"Bien que :func:`os.path.relpath` et :meth:`PurePath.relative_to` aient des " -"cas d'utilisation qui se chevauchent, leur sémantique diffère suffisamment " -"pour ne pas les considérer comme équivalentes." -#: library/pathlib.rst:1205 -msgid "os and os.path" +#: library/pathlib.rst:1246 +#, fuzzy +msgid ":mod:`os` and :mod:`os.path`" msgstr "*os* et *os.path*" -#: library/pathlib.rst:1205 -msgid "pathlib" -msgstr "pathlib" +#: library/pathlib.rst:1246 +msgid ":mod:`pathlib`" +msgstr ":mod:`pathlib`" -#: library/pathlib.rst:1207 +#: library/pathlib.rst:1248 msgid ":func:`os.path.abspath`" msgstr ":func:`os.path.abspath`" -#: library/pathlib.rst:1207 -msgid ":meth:`Path.resolve`" +#: library/pathlib.rst:1248 +#, fuzzy +msgid ":meth:`Path.resolve` [#]_" msgstr ":meth:`Path.resolve`" -#: library/pathlib.rst:1208 +#: library/pathlib.rst:1249 msgid ":func:`os.chmod`" msgstr ":func:`os.chmod`" -#: library/pathlib.rst:1208 +#: library/pathlib.rst:1249 msgid ":meth:`Path.chmod`" msgstr ":meth:`Path.chmod`" -#: library/pathlib.rst:1209 +#: library/pathlib.rst:1250 msgid ":func:`os.mkdir`" msgstr ":func:`os.mkdir`" -#: library/pathlib.rst:1210 +#: library/pathlib.rst:1251 msgid ":meth:`Path.mkdir`" msgstr ":meth:`Path.mkdir`" -#: library/pathlib.rst:1210 +#: library/pathlib.rst:1251 msgid ":func:`os.makedirs`" msgstr ":func:`os.makedirs`" -#: library/pathlib.rst:1211 +#: library/pathlib.rst:1252 msgid ":func:`os.rename`" msgstr ":func:`os.rename`" -#: library/pathlib.rst:1211 +#: library/pathlib.rst:1252 msgid ":meth:`Path.rename`" msgstr ":meth:`Path.rename`" -#: library/pathlib.rst:1212 +#: library/pathlib.rst:1253 msgid ":func:`os.replace`" msgstr ":func:`os.replace`" -#: library/pathlib.rst:1212 +#: library/pathlib.rst:1253 msgid ":meth:`Path.replace`" msgstr ":meth:`Path.replace`" -#: library/pathlib.rst:1213 +#: library/pathlib.rst:1254 msgid ":func:`os.rmdir`" msgstr ":func:`os.rmdir`" -#: library/pathlib.rst:1213 +#: library/pathlib.rst:1254 msgid ":meth:`Path.rmdir`" msgstr ":meth:`Path.rmdir`" -#: library/pathlib.rst:1214 +#: library/pathlib.rst:1255 msgid ":func:`os.remove`, :func:`os.unlink`" msgstr ":func:`os.remove`, :func:`os.unlink`" -#: library/pathlib.rst:1214 +#: library/pathlib.rst:1255 msgid ":meth:`Path.unlink`" msgstr ":meth:`Path.unlink`" -#: library/pathlib.rst:1215 +#: library/pathlib.rst:1256 msgid ":func:`os.getcwd`" msgstr ":func:`os.getcwd`" -#: library/pathlib.rst:1215 +#: library/pathlib.rst:1256 msgid ":func:`Path.cwd`" msgstr ":func:`Path.cwd`" -#: library/pathlib.rst:1216 +#: library/pathlib.rst:1257 msgid ":func:`os.path.exists`" msgstr ":func:`os.path.exists`" -#: library/pathlib.rst:1216 +#: library/pathlib.rst:1257 msgid ":meth:`Path.exists`" msgstr ":meth:`Path.exists`" -#: library/pathlib.rst:1217 +#: library/pathlib.rst:1258 msgid ":func:`os.path.expanduser`" msgstr ":func:`os.path.expanduser`" -#: library/pathlib.rst:1217 +#: library/pathlib.rst:1258 msgid ":meth:`Path.expanduser` and :meth:`Path.home`" msgstr ":meth:`Path.expanduser` et :meth:`Path.home`" -#: library/pathlib.rst:1219 +#: library/pathlib.rst:1260 msgid ":func:`os.listdir`" msgstr ":func:`os.listdir`" -#: library/pathlib.rst:1219 +#: library/pathlib.rst:1260 msgid ":meth:`Path.iterdir`" msgstr ":meth:`Path.iterdir`" -#: library/pathlib.rst:1220 +#: library/pathlib.rst:1261 msgid ":func:`os.path.isdir`" msgstr ":func:`os.path.isdir`" -#: library/pathlib.rst:1220 +#: library/pathlib.rst:1261 msgid ":meth:`Path.is_dir`" msgstr ":meth:`Path.is_dir`" -#: library/pathlib.rst:1221 +#: library/pathlib.rst:1262 msgid ":func:`os.path.isfile`" msgstr ":func:`os.path.isfile`" -#: library/pathlib.rst:1221 +#: library/pathlib.rst:1262 msgid ":meth:`Path.is_file`" msgstr ":meth:`Path.is_file`" -#: library/pathlib.rst:1222 +#: library/pathlib.rst:1263 msgid ":func:`os.path.islink`" msgstr ":func:`os.path.islink`" -#: library/pathlib.rst:1222 +#: library/pathlib.rst:1263 msgid ":meth:`Path.is_symlink`" msgstr ":meth:`Path.is_symlink`" -#: library/pathlib.rst:1223 +#: library/pathlib.rst:1264 msgid ":func:`os.link`" msgstr ":func:`os.link`" -#: library/pathlib.rst:1223 -msgid ":meth:`Path.link_to`" +#: library/pathlib.rst:1264 +#, fuzzy +msgid ":meth:`Path.hardlink_to`" msgstr ":meth:`Path.link_to`" -#: library/pathlib.rst:1224 +#: library/pathlib.rst:1265 msgid ":func:`os.symlink`" msgstr ":func:`os.symlink`" -#: library/pathlib.rst:1224 +#: library/pathlib.rst:1265 msgid ":meth:`Path.symlink_to`" msgstr ":meth:`Path.symlink_to`" -#: library/pathlib.rst:1225 +#: library/pathlib.rst:1266 msgid ":func:`os.readlink`" msgstr ":func:`os.readlink`" -#: library/pathlib.rst:1225 +#: library/pathlib.rst:1266 msgid ":meth:`Path.readlink`" msgstr ":meth:`Path.readlink`" -#: library/pathlib.rst:1226 +#: library/pathlib.rst:1267 +#, fuzzy +msgid ":func:`os.path.relpath`" +msgstr ":func:`os.path.abspath`" + +#: library/pathlib.rst:1267 +#, fuzzy +msgid ":meth:`Path.relative_to` [#]_" +msgstr ":meth:`Path.resolve`" + +#: library/pathlib.rst:1268 msgid ":func:`os.stat`" msgstr ":func:`os.stat`" -#: library/pathlib.rst:1226 +#: library/pathlib.rst:1268 msgid ":meth:`Path.stat`, :meth:`Path.owner`, :meth:`Path.group`" msgstr ":meth:`Path.stat`, :meth:`Path.owner`, :meth:`Path.group`" -#: library/pathlib.rst:1229 +#: library/pathlib.rst:1271 msgid ":func:`os.path.isabs`" msgstr ":func:`os.path.isabs`" -#: library/pathlib.rst:1229 +#: library/pathlib.rst:1271 msgid ":meth:`PurePath.is_absolute`" msgstr ":meth:`PurePath.is_absolute`" -#: library/pathlib.rst:1230 +#: library/pathlib.rst:1272 msgid ":func:`os.path.join`" msgstr ":func:`os.path.join`" -#: library/pathlib.rst:1230 +#: library/pathlib.rst:1272 msgid ":func:`PurePath.joinpath`" msgstr ":func:`PurePath.joinpath`" -#: library/pathlib.rst:1231 +#: library/pathlib.rst:1273 msgid ":func:`os.path.basename`" msgstr ":func:`os.path.basename`" -#: library/pathlib.rst:1231 +#: library/pathlib.rst:1273 msgid ":data:`PurePath.name`" msgstr ":data:`PurePath.name`" -#: library/pathlib.rst:1232 +#: library/pathlib.rst:1274 msgid ":func:`os.path.dirname`" msgstr ":func:`os.path.dirname`" -#: library/pathlib.rst:1232 +#: library/pathlib.rst:1274 msgid ":data:`PurePath.parent`" msgstr ":data:`PurePath.parent`" -#: library/pathlib.rst:1233 +#: library/pathlib.rst:1275 msgid ":func:`os.path.samefile`" msgstr ":func:`os.path.samefile`" -#: library/pathlib.rst:1233 +#: library/pathlib.rst:1275 msgid ":meth:`Path.samefile`" msgstr ":meth:`Path.samefile`" -#: library/pathlib.rst:1234 +#: library/pathlib.rst:1276 msgid ":func:`os.path.splitext`" msgstr ":func:`os.path.splitext`" -#: library/pathlib.rst:1234 +#: library/pathlib.rst:1276 msgid ":data:`PurePath.suffix`" msgstr ":data:`PurePath.suffix`" -#~ msgid "Create a hard link pointing to a path named *target*." -#~ msgstr "Crée un lien matériel pointant sur le chemin nommé *target*." +#: library/pathlib.rst:1280 +msgid "Footnotes" +msgstr "" + +#: library/pathlib.rst:1281 +msgid "" +":func:`os.path.abspath` does not resolve symbolic links while :meth:`Path." +"resolve` does." +msgstr "" + +#: library/pathlib.rst:1282 +msgid "" +":meth:`Path.relative_to` requires ``self`` to be the subpath of the " +"argument, but :func:`os.path.relpath` does not." +msgstr "" + +#~ msgid "" +#~ "Although :func:`os.path.relpath` and :meth:`PurePath.relative_to` have " +#~ "some overlapping use-cases, their semantics differ enough to warrant not " +#~ "considering them equivalent." +#~ msgstr "" +#~ "Bien que :func:`os.path.relpath` et :meth:`PurePath.relative_to` aient " +#~ "des cas d'utilisation qui se chevauchent, leur sémantique diffère " +#~ "suffisamment pour ne pas les considérer comme équivalentes." diff --git a/library/pipes.po b/library/pipes.po index d374950bf..0a910d4f2 100644 --- a/library/pipes.po +++ b/library/pipes.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-09-28 18:32+0200\n" "Last-Translator: Bruno Inec \n" "Language-Team: FRENCH \n" @@ -39,35 +39,39 @@ msgstr "" "shell POSIX ou compatible est requis pour :func:`os.system` et :func:`os." "popen`." -#: library/pipes.rst:20 +#: library/pipes.rst:21 +msgid ":ref:`Availability `: Unix. Not available on VxWorks." +msgstr "" + +#: library/pipes.rst:22 msgid "The :mod:`pipes` module defines the following class:" msgstr "Le module :mod:`pipes` définit la classe suivante :" -#: library/pipes.rst:25 +#: library/pipes.rst:27 msgid "An abstraction of a pipeline." msgstr "Une abstraction d'un *pipeline*." -#: library/pipes.rst:27 +#: library/pipes.rst:29 msgid "Example::" msgstr "Exemple ::" -#: library/pipes.rst:42 +#: library/pipes.rst:44 msgid "Template Objects" msgstr "L'Objet *Template*" -#: library/pipes.rst:44 +#: library/pipes.rst:46 msgid "Template objects following methods:" msgstr "Les méthodes de l'objet *Template* :" -#: library/pipes.rst:49 +#: library/pipes.rst:51 msgid "Restore a pipeline template to its initial state." msgstr "Réinitialise un modèle de *pipeline* à son état initial." -#: library/pipes.rst:54 +#: library/pipes.rst:56 msgid "Return a new, equivalent, pipeline template." msgstr "Renvoie un nouveau modèle de *pipeline*, équivalent." -#: library/pipes.rst:59 +#: library/pipes.rst:61 msgid "" "If *flag* is true, turn debugging on. Otherwise, turn debugging off. When " "debugging is on, commands to be executed are printed, and the shell is given " @@ -77,7 +81,7 @@ msgstr "" "débogage est actif, les commandes à exécuter seront affichée et le shell est " "pourvu de la commande ``set -x`` afin d'être plus verbeux." -#: library/pipes.rst:66 +#: library/pipes.rst:68 msgid "" "Append a new action at the end. The *cmd* variable must be a valid bourne " "shell command. The *kind* variable consists of two letters." @@ -86,7 +90,7 @@ msgstr "" "commande *bourne shell* valide. La variable *kind* est composée de deux " "lettres." -#: library/pipes.rst:69 +#: library/pipes.rst:71 msgid "" "The first letter can be either of ``'-'`` (which means the command reads its " "standard input), ``'f'`` (which means the commands reads a given file on the " @@ -98,7 +102,7 @@ msgstr "" "fichier donné par la ligne de commande), soit ``'.'`` (qui signifie que la " "commande ne lit pas d'entrée, et donc doit être la première.)" -#: library/pipes.rst:74 +#: library/pipes.rst:76 msgid "" "Similarly, the second letter can be either of ``'-'`` (which means the " "command writes to standard output), ``'f'`` (which means the command writes " @@ -110,7 +114,7 @@ msgstr "" "commande écrit sur un fichier donné par la ligne de commande), soit ``'.'`` " "(qui signifie que la commande n'écrit rien, et donc doit être la dernière.)" -#: library/pipes.rst:82 +#: library/pipes.rst:84 msgid "" "Add a new action at the beginning. See :meth:`append` for explanations of " "the arguments." @@ -118,7 +122,7 @@ msgstr "" "Ajoute une nouvelle action au début. Voir :meth:`append` pour plus " "d'explications sur les arguments." -#: library/pipes.rst:88 +#: library/pipes.rst:90 msgid "" "Return a file-like object, open to *file*, but read from or written to by " "the pipeline. Note that only one of ``'r'``, ``'w'`` may be given." @@ -127,6 +131,6 @@ msgstr "" "le *pipeline* ou de lire depuis celui-ci. À noter que seulement un des deux " "('r' ou 'w') peut être donné." -#: library/pipes.rst:94 +#: library/pipes.rst:96 msgid "Copy *infile* to *outfile* through the pipe." msgstr "Copie *infile* vers *outfile* au travers du *pipe*." diff --git a/library/platform.po b/library/platform.po index 953f44bdc..9aec6ad79 100644 --- a/library/platform.po +++ b/library/platform.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-05-28 17:46+0200\n" "Last-Translator: Stephan Michaud \n" "Language-Team: FRENCH \n" @@ -80,8 +80,9 @@ msgstr "" "utilisées lorsque les conditions précédentes ne sont pas atteintes." #: library/platform.rst:45 +#, fuzzy msgid "" -"On Mac OS X (and perhaps other platforms), executable files may be universal " +"On macOS (and perhaps other platforms), executable files may be universal " "files containing multiple architectures." msgstr "" "Sur Mac OS X (ainsi que d'autres plateformes), les fichiers exécutables " @@ -373,12 +374,14 @@ msgstr "" "`win32_edition` est reconnue comme une édition IoT." #: library/platform.rst:229 -msgid "Mac OS Platform" +#, fuzzy +msgid "macOS Platform" msgstr "Plateforme Mac OS" #: library/platform.rst:234 +#, fuzzy msgid "" -"Get Mac OS version information and return it as tuple ``(release, " +"Get macOS version information and return it as tuple ``(release, " "versioninfo, machine)`` with *versioninfo* being a tuple ``(version, " "dev_stage, non_release_version)``." msgstr "" @@ -424,3 +427,44 @@ msgstr "" #: library/platform.rst:255 msgid "The file is read and scanned in chunks of *chunksize* bytes." msgstr "Le fichier est lu en blocs de *chunksize* octets." + +#: library/platform.rst:259 +#, fuzzy +msgid "Linux Platforms" +msgstr "Plateformes Unix" + +#: library/platform.rst:263 +msgid "" +"Get operating system identification from ``os-release`` file and return it " +"as a dict. The ``os-release`` file is a `freedesktop.org standard `_ and is available " +"in most Linux distributions. A noticeable exception is Android and Android-" +"based distributions." +msgstr "" + +#: library/platform.rst:269 +msgid "" +"Raises :exc:`OSError` or subclass when neither ``/etc/os-release`` nor ``/" +"usr/lib/os-release`` can be read." +msgstr "" + +#: library/platform.rst:272 +msgid "" +"On success, the function returns a dictionary where keys and values are " +"strings. Values have their special characters like ``\"`` and ``$`` " +"unquoted. The fields ``NAME``, ``ID``, and ``PRETTY_NAME`` are always " +"defined according to the standard. All other fields are optional. Vendors " +"may include additional fields." +msgstr "" + +#: library/platform.rst:278 +msgid "" +"Note that fields like ``NAME``, ``VERSION``, and ``VARIANT`` are strings " +"suitable for presentation to users. Programs should use fields like ``ID``, " +"``ID_LIKE``, ``VERSION_ID``, or ``VARIANT_ID`` to identify Linux " +"distributions." +msgstr "" + +#: library/platform.rst:283 +msgid "Example::" +msgstr "" diff --git a/library/posix.po b/library/posix.po index ccae9ad4b..386038707 100644 --- a/library/posix.po +++ b/library/posix.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-11-18 16:02+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -65,10 +65,11 @@ msgid "Large File Support" msgstr "Prise en charge de gros fichiers" #: library/posix.rst:40 +#, fuzzy msgid "" -"Several operating systems (including AIX, HP-UX, Irix and Solaris) provide " -"support for files that are larger than 2 GiB from a C programming model " -"where :c:type:`int` and :c:type:`long` are 32-bit values. This is typically " +"Several operating systems (including AIX, HP-UX and Solaris) provide support " +"for files that are larger than 2 GiB from a C programming model where :c:" +"type:`int` and :c:type:`long` are 32-bit values. This is typically " "accomplished by defining the relevant size and offset types as 64-bit " "values. Such files are sometimes referred to as :dfn:`large files`." msgstr "" @@ -79,13 +80,13 @@ msgstr "" "type de 64 bit. Ces fichiers sont parfois appelés fichiers volumineux." #: library/posix.rst:46 +#, fuzzy msgid "" "Large file support is enabled in Python when the size of an :c:type:`off_t` " "is larger than a :c:type:`long` and the :c:type:`long long` is at least as " "large as an :c:type:`off_t`. It may be necessary to configure and compile " -"Python with certain compiler flags to enable this mode. For example, it is " -"enabled by default with recent versions of Irix, but with Solaris 2.6 and " -"2.7 you need to do something like::" +"Python with certain compiler flags to enable this mode. For example, with " +"Solaris 2.6 and 2.7 you need to do something like::" msgstr "" "La prise en charge des fichiers volumineux dans Python est activée lorsque " "la taille de :c:type:`off_t` est supérieure à :c:type:`long` et que le type :" diff --git a/library/pprint.po b/library/pprint.po index 816be5fd3..6c106bd7f 100644 --- a/library/pprint.po +++ b/library/pprint.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-05-03 09:52+0200\n" "Last-Translator: ZepmanBC \n" "Language-Team: FRENCH \n" @@ -65,76 +65,103 @@ msgid "Added support for pretty-printing :class:`types.SimpleNamespace`." msgstr "" #: library/pprint.rst:31 +msgid "Added support for pretty-printing :class:`dataclasses.dataclass`." +msgstr "" + +#: library/pprint.rst:34 msgid "The :mod:`pprint` module defines one class:" msgstr "Le module :mod:`pprint` définit une seule classe : ::" -#: library/pprint.rst:41 +#: library/pprint.rst:44 msgid "" "Construct a :class:`PrettyPrinter` instance. This constructor understands " -"several keyword parameters. An output stream may be set using the *stream* " -"keyword; the only method used on the stream object is the file protocol's :" -"meth:`write` method. If not specified, the :class:`PrettyPrinter` adopts " -"``sys.stdout``. The amount of indentation added for each recursive level is " -"specified by *indent*; the default is one. Other values can cause output to " -"look a little odd, but can make nesting easier to spot. The number of " -"levels which may be printed is controlled by *depth*; if the data structure " -"being printed is too deep, the next contained level is replaced by ``...``. " -"By default, there is no constraint on the depth of the objects being " -"formatted. The desired output width is constrained using the *width* " -"parameter; the default is 80 characters. If a structure cannot be formatted " -"within the constrained width, a best effort will be made. If *compact* is " -"false (the default) each item of a long sequence will be formatted on a " -"separate line. If *compact* is true, as many items as will fit within the " -"*width* will be formatted on each output line. If *sort_dicts* is true (the " -"default), dictionaries will be formatted with their keys sorted, otherwise " -"they will display in insertion order." -msgstr "" -"Crée une instance de :class:`PrettyPrinter`. Ce constructeur accepte " -"plusieurs paramètres nommés. Un flux de sortie peut être défini par le mot " -"clé *stream*; la seule méthode utilisée sur l’objet *stream* est la méthode :" -"meth:`write` du protocole de fichiers. Si rien n’est spécifié, la classe :" -"class:`PrettyPrinter` utilise ``sys.stdout``. La taille de l’indentation " -"ajoutée à chaque niveau récursif est spécifiée par *indent*; la valeur par " -"défaut est *1*. D’autres valeurs pourraient donner des résultats " -"surprenants, mais peuvent aider à mieux visualiser les imbrications. Le " -"nombre de niveaux qui peuvent être affichés est contrôlé par *depth*; si la " -"structure de données est trop profonde, le niveau suivant est remplacé par " -"``…``. Par défaut il n’y a pas de contraintes sur la profondeur des objets " -"formatés. Vous pouvez limiter la largeur de la sortie à l’aide du paramètre " -"*width*; la valeur par défaut est de 80 caractères. Si une structure ne peut " -"pas être formatée dans les limites de la largeur contrainte, le module fait " -"au mieux. Si *compact* est initialisé à *False* (la valeur par défaut), " -"chaque élément d’une longue séquence est formaté sur une ligne séparée. Si " -"*compact* est initialisé à *True*, tous les éléments qui peuvent tenir dans " -"la largeur définie sont formatés sur chaque ligne de sortie. Si " -"*sort_dicts* est *True* (la valeur par défaut), les dictionnaires sont " -"formatés avec leurs clés triées, sinon ils sont affichés dans l'ordre " -"d'insertion." - -#: library/pprint.rst:100 library/pprint.rst:128 +"several keyword parameters." +msgstr "" + +#: library/pprint.rst:47 +msgid "" +"*stream* (default ``sys.stdout``) is a :term:`file-like object` to which the " +"output will be written by calling its :meth:`write` method." +msgstr "" + +#: library/pprint.rst:50 +msgid "" +"Other values configure the manner in which nesting of complex data " +"structures is displayed." +msgstr "" + +#: library/pprint.rst:53 +msgid "" +"*indent* (default 1) specifies the amount of indentation added for each " +"nesting level." +msgstr "" + +#: library/pprint.rst:56 +msgid "" +"*depth* controls the number of nesting levels which may be printed; if the " +"data structure being printed is too deep, the next contained level is " +"replaced by ``...``. By default, there is no constraint on the depth of the " +"objects being formatted." +msgstr "" + +#: library/pprint.rst:61 +msgid "" +"*width* (default 80) specifies the desired maximum number of characters per " +"line in the output. If a structure cannot be formatted within the width " +"constraint, a best effort will be made." +msgstr "" + +#: library/pprint.rst:65 +msgid "" +"*compact* impacts the way that long sequences (lists, tuples, sets, etc) are " +"formatted. If *compact* is false (the default) then each item of a sequence " +"will be formatted on a separate line. If *compact* is true, as many items " +"as will fit within the *width* will be formatted on each output line." +msgstr "" + +#: library/pprint.rst:71 +msgid "" +"If *sort_dicts* is true (the default), dictionaries will be formatted with " +"their keys sorted, otherwise they will display in insertion order." +msgstr "" + +#: library/pprint.rst:74 +msgid "" +"If *underscore_numbers* is true, integers will be formatted with the ``_`` " +"character for a thousands separator, otherwise underscores are not displayed " +"(the default)." +msgstr "" + +#: library/pprint.rst:120 library/pprint.rst:151 msgid "Added the *compact* parameter." msgstr "Ajout du paramètre *compact*." -#: library/pprint.rst:103 library/pprint.rst:131 +#: library/pprint.rst:123 library/pprint.rst:154 msgid "Added the *sort_dicts* parameter." msgstr "Ajout du paramètre *sort_dicts*." -#: library/pprint.rst:91 +#: library/pprint.rst:126 library/pprint.rst:157 +#, fuzzy +msgid "Added the *underscore_numbers* parameter." +msgstr "Ajout du paramètre *sort_dicts*." + +#: library/pprint.rst:111 msgid "The :mod:`pprint` module also provides several shortcut functions:" msgstr "" "Le module :mod:`pprint` fournit aussi quelques fonctions de raccourcis ::" -#: library/pprint.rst:96 +#: library/pprint.rst:116 +#, fuzzy msgid "" "Return the formatted representation of *object* as a string. *indent*, " -"*width*, *depth*, *compact* and *sort_dicts* will be passed to the :class:" -"`PrettyPrinter` constructor as formatting parameters." +"*width*, *depth*, *compact*, *sort_dicts* and *underscore_numbers* will be " +"passed to the :class:`PrettyPrinter` constructor as formatting parameters." msgstr "" "Renvoie une représentation formatée de *object* sous forme de chaîne de " "caractères. *indent*, *width*, *depth* et *compact* sont passés au " "constructeur de :class:`PrettyPrinter` comme paramètres de formatage." -#: library/pprint.rst:109 +#: library/pprint.rst:132 msgid "" "Prints the formatted representation of *object* followed by a newline. If " "*sort_dicts* is false (the default), dictionaries will be displayed with " @@ -148,15 +175,16 @@ msgstr "" "dictionnaires seront ordonnées. *args* et *kwargs* seront passés à :func:" "`pprint` comme paramètres de formatage." -#: library/pprint.rst:121 +#: library/pprint.rst:144 +#, fuzzy msgid "" "Prints the formatted representation of *object* on *stream*, followed by a " "newline. If *stream* is ``None``, ``sys.stdout`` is used. This may be used " "in the interactive interpreter instead of the :func:`print` function for " "inspecting values (you can even reassign ``print = pprint.pprint`` for use " -"within a scope). *indent*, *width*, *depth*, *compact* and *sort_dicts* " -"will be passed to the :class:`PrettyPrinter` constructor as formatting " -"parameters." +"within a scope). *indent*, *width*, *depth*, *compact*, *sort_dicts* and " +"*underscore_numbers* will be passed to the :class:`PrettyPrinter` " +"constructor as formatting parameters." msgstr "" "Affiche la représentation formatée de *object* sur *stream*, suivie d’un " "retour à la ligne. Si *stream* vaut ``None``, ``sys.stdout`` est alors " @@ -167,7 +195,7 @@ msgstr "" "au constructeur de classe :class:`PrettyPrinter` comme paramètres de " "formatage." -#: library/pprint.rst:150 +#: library/pprint.rst:176 msgid "" "Determine if the formatted representation of *object* is \"readable\", or " "can be used to reconstruct the value using :func:`eval`. This always " @@ -177,15 +205,15 @@ msgstr "" "peut être utilisé pour recomposer sa valeur en utilisant la fonction :func:" "`eval`. Cela renvoie toujours ``False`` pour les objets récursifs." -#: library/pprint.rst:160 +#: library/pprint.rst:186 msgid "Determine if *object* requires a recursive representation." msgstr "Détermine si *object* requiert une représentation récursive." -#: library/pprint.rst:163 +#: library/pprint.rst:189 msgid "One more support function is also defined:" msgstr "Une dernière fonction de support est définie ainsi ::" -#: library/pprint.rst:167 +#: library/pprint.rst:193 msgid "" "Return a string representation of *object*, protected against recursive data " "structures. If the representation of *object* exposes a recursive entry, " @@ -198,17 +226,17 @@ msgstr "" "représentée telle que ````. Par " "ailleurs, la représentation de l’objet n’est pas formatée." -#: library/pprint.rst:179 +#: library/pprint.rst:205 msgid "PrettyPrinter Objects" msgstr "Les Objets PrettyPrinter" -#: library/pprint.rst:181 +#: library/pprint.rst:207 msgid ":class:`PrettyPrinter` instances have the following methods:" msgstr "" "Les instances de la classe :class:`PrettyPrinter` ont les méthodes " "suivantes ::" -#: library/pprint.rst:186 +#: library/pprint.rst:212 msgid "" "Return the formatted representation of *object*. This takes into account " "the options passed to the :class:`PrettyPrinter` constructor." @@ -216,7 +244,7 @@ msgstr "" "Renvoie la représentation formatée de *object*. Cela prend en compte les " "options passées au constructeur de la classe :class:`PrettyPrinter`." -#: library/pprint.rst:192 +#: library/pprint.rst:218 msgid "" "Print the formatted representation of *object* on the configured stream, " "followed by a newline." @@ -224,7 +252,7 @@ msgstr "" "Affiche sur le flux configuré la représentation formatée de *object*, suivie " "d’une fin de ligne." -#: library/pprint.rst:195 +#: library/pprint.rst:221 msgid "" "The following methods provide the implementations for the corresponding " "functions of the same names. Using these methods on an instance is slightly " @@ -236,7 +264,7 @@ msgstr "" "instance est légèrement plus efficace, car les nouveaux objets :class:" "`PrettyPrinter` n’ont pas besoin d’être créés." -#: library/pprint.rst:205 +#: library/pprint.rst:231 msgid "" "Determine if the formatted representation of the object is \"readable,\" or " "can be used to reconstruct the value using :func:`eval`. Note that this " @@ -250,11 +278,11 @@ msgstr "" "le paramètre *depth* de la classe :class:`PrettyPrinter` est initialisé et " "que l’objet est plus « profond » que permis, cela renvoie ``False``." -#: library/pprint.rst:214 +#: library/pprint.rst:240 msgid "Determine if the object requires a recursive representation." msgstr "Détermine si l’objet nécessite une représentation récursive." -#: library/pprint.rst:216 +#: library/pprint.rst:242 msgid "" "This method is provided as a hook to allow subclasses to modify the way " "objects are converted to strings. The default implementation uses the " @@ -265,7 +293,7 @@ msgstr "" "classes de modifier la façon dont les objets sont convertis en chaînes. " "L’implémentation par défaut est celle de la fonction :func:`saferepr`." -#: library/pprint.rst:223 +#: library/pprint.rst:249 msgid "" "Returns three values: the formatted version of *object* as a string, a flag " "indicating whether the result is readable, and a flag indicating whether " @@ -298,11 +326,11 @@ msgstr "" "courant; les appels récursifs doivent être passés à une valeur inférieure à " "celle de l’appel courant." -#: library/pprint.rst:241 +#: library/pprint.rst:267 msgid "Example" msgstr "Exemple" -#: library/pprint.rst:243 +#: library/pprint.rst:269 msgid "" "To demonstrate several uses of the :func:`pprint` function and its " "parameters, let's fetch information about a project from `PyPI `_ ::" -#: library/pprint.rst:252 +#: library/pprint.rst:278 msgid "In its basic form, :func:`pprint` shows the whole object::" msgstr "" "Dans sa forme basique, la fonction :func:`pprint` affiche l’intégralité de " "l’objet ::" -#: library/pprint.rst:308 +#: library/pprint.rst:334 msgid "" "The result can be limited to a certain *depth* (ellipsis is used for deeper " "contents)::" @@ -326,7 +354,7 @@ msgstr "" "Le résultat peut être limité à une certaine profondeur en initialisant " "*depth*. ( ``…`` est utilisé pour des contenus plus « profonds ») ::" -#: library/pprint.rst:354 +#: library/pprint.rst:380 msgid "" "Additionally, maximum character *width* can be suggested. If a long object " "cannot be split, the specified width will be exceeded::" @@ -334,3 +362,47 @@ msgstr "" "De plus, une valeur maximale de caractères sur une ligne peut être définie " "en initialisant le paramètre *width*. Si un long objet ne peut être scindé, " "la valeur donnée à *width* sera outrepassée ::" + +#~ msgid "" +#~ "Construct a :class:`PrettyPrinter` instance. This constructor " +#~ "understands several keyword parameters. An output stream may be set " +#~ "using the *stream* keyword; the only method used on the stream object is " +#~ "the file protocol's :meth:`write` method. If not specified, the :class:" +#~ "`PrettyPrinter` adopts ``sys.stdout``. The amount of indentation added " +#~ "for each recursive level is specified by *indent*; the default is one. " +#~ "Other values can cause output to look a little odd, but can make nesting " +#~ "easier to spot. The number of levels which may be printed is controlled " +#~ "by *depth*; if the data structure being printed is too deep, the next " +#~ "contained level is replaced by ``...``. By default, there is no " +#~ "constraint on the depth of the objects being formatted. The desired " +#~ "output width is constrained using the *width* parameter; the default is " +#~ "80 characters. If a structure cannot be formatted within the constrained " +#~ "width, a best effort will be made. If *compact* is false (the default) " +#~ "each item of a long sequence will be formatted on a separate line. If " +#~ "*compact* is true, as many items as will fit within the *width* will be " +#~ "formatted on each output line. If *sort_dicts* is true (the default), " +#~ "dictionaries will be formatted with their keys sorted, otherwise they " +#~ "will display in insertion order." +#~ msgstr "" +#~ "Crée une instance de :class:`PrettyPrinter`. Ce constructeur accepte " +#~ "plusieurs paramètres nommés. Un flux de sortie peut être défini par le " +#~ "mot clé *stream*; la seule méthode utilisée sur l’objet *stream* est la " +#~ "méthode :meth:`write` du protocole de fichiers. Si rien n’est spécifié, " +#~ "la classe :class:`PrettyPrinter` utilise ``sys.stdout``. La taille de " +#~ "l’indentation ajoutée à chaque niveau récursif est spécifiée par " +#~ "*indent*; la valeur par défaut est *1*. D’autres valeurs pourraient " +#~ "donner des résultats surprenants, mais peuvent aider à mieux visualiser " +#~ "les imbrications. Le nombre de niveaux qui peuvent être affichés est " +#~ "contrôlé par *depth*; si la structure de données est trop profonde, le " +#~ "niveau suivant est remplacé par ``…``. Par défaut il n’y a pas de " +#~ "contraintes sur la profondeur des objets formatés. Vous pouvez limiter " +#~ "la largeur de la sortie à l’aide du paramètre *width*; la valeur par " +#~ "défaut est de 80 caractères. Si une structure ne peut pas être formatée " +#~ "dans les limites de la largeur contrainte, le module fait au mieux. Si " +#~ "*compact* est initialisé à *False* (la valeur par défaut), chaque élément " +#~ "d’une longue séquence est formaté sur une ligne séparée. Si *compact* " +#~ "est initialisé à *True*, tous les éléments qui peuvent tenir dans la " +#~ "largeur définie sont formatés sur chaque ligne de sortie. Si " +#~ "*sort_dicts* est *True* (la valeur par défaut), les dictionnaires sont " +#~ "formatés avec leurs clés triées, sinon ils sont affichés dans l'ordre " +#~ "d'insertion." diff --git a/library/profile.po b/library/profile.po index 615906f72..215f2d81b 100644 --- a/library/profile.po +++ b/library/profile.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -862,7 +862,7 @@ msgid "" "The method executes the number of Python calls given by the argument, " "directly and again under the profiler, measuring the time for both. It then " "computes the hidden overhead per profiler event, and returns that as a " -"float. For example, on a 1.8Ghz Intel Core i5 running Mac OS X, and using " +"float. For example, on a 1.8Ghz Intel Core i5 running macOS, and using " "Python's time.process_time() as the timer, the magical number is about " "4.04e-6." msgstr "" diff --git a/library/pty.po b/library/pty.po index 6ac942e1d..1d80bbb59 100644 --- a/library/pty.po +++ b/library/pty.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-03-25 16:25+0100\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -34,10 +34,11 @@ msgstr "" "processus, d'écrire et de lire depuis son terminal." #: library/pty.rst:19 +#, fuzzy msgid "" -"Because pseudo-terminal handling is highly platform dependent, there is code " -"to do it only for Linux. (The Linux code is supposed to work on other " -"platforms, but hasn't been tested yet.)" +"Pseudo-terminal handling is highly platform dependent. This code is mainly " +"tested on Linux, FreeBSD, and macOS (it is supposed to work on other POSIX " +"platforms but it's not been thoroughly tested)." msgstr "" "La gestion de pseudo-terminaux étant très dépendante de la plateforme, ce " "code ne gère que Linux. (Code supposé fonctionner sur d'autres plateformes, " @@ -88,17 +89,25 @@ msgstr "" #: library/pty.rst:50 msgid "" +"A loop copies STDIN of the current process to the child and data received " +"from the child to STDOUT of the current process. It is not signaled to the " +"child if STDIN of the current process closes down." +msgstr "" + +#: library/pty.rst:54 +#, fuzzy +msgid "" "The functions *master_read* and *stdin_read* are passed a file descriptor " "which they should read from, and they should always return a byte string. In " -"order to force spawn to return before the child process exits an :exc:" -"`OSError` should be thrown." +"order to force spawn to return before the child process exits an empty byte " +"array should be returned to signal end of file." msgstr "" "Les fonctions `master_read` et `stdin_read` reçoivent un descripteur de " "fichier qu'elles doivent lire, et elles doivent toujours renvoyer une chaîne " "d'octets. Afin de forcer le *spawn* à faire un renvoi avant que le processus " "enfant ne se termine, une exception :exc:`OSError` doit être levée." -#: library/pty.rst:55 +#: library/pty.rst:59 msgid "" "The default implementation for both functions will read and return up to " "1024 bytes each time the function is called. The *master_read* callback is " @@ -112,7 +121,7 @@ msgstr "" "pour lire la sortie du processus enfant, et `stdin_read` reçoit le " "descripteur de fichier 0, pour lire l'entrée standard du processus parent." -#: library/pty.rst:61 +#: library/pty.rst:65 msgid "" "Returning an empty byte string from either callback is interpreted as an end-" "of-file (EOF) condition, and that callback will not be called after that. If " @@ -129,18 +138,6 @@ msgstr "" "*spawn* sera lancé dans une boucle infinie. Si `master_read` indique la fin " "de fichier, on aura le même comportement (sur Linux au moins)." -#: library/pty.rst:68 -msgid "" -"If both callbacks signal EOF then *spawn* will probably never return, unless " -"*select* throws an error on your platform when passed three empty lists. " -"This is a bug, documented in `issue 26228 `_." -msgstr "" -"Si les deux fonctions de rappel indiquent la fin de fichier (*EOF*), alors " -"*spawn* ne fera probablement jamais de renvoi, à moins que *select* ne lance " -"une erreur sur votre plateforme lors du passage de trois listes vides. Il " -"s'agit d'un bogue, renseigné dans ``_." - #: library/pty.rst:72 #, fuzzy msgid "" @@ -182,3 +179,15 @@ msgstr "" "Le programme suivant se comporte comme la commande Unix :manpage:" "`script(1)`, utilisant un pseudo-terminal pour enregistrer toutes les " "entrées et sorties d'une session dans un fichier *typescript*. ::" + +#~ msgid "" +#~ "If both callbacks signal EOF then *spawn* will probably never return, " +#~ "unless *select* throws an error on your platform when passed three empty " +#~ "lists. This is a bug, documented in `issue 26228 `_." +#~ msgstr "" +#~ "Si les deux fonctions de rappel indiquent la fin de fichier (*EOF*), " +#~ "alors *spawn* ne fera probablement jamais de renvoi, à moins que *select* " +#~ "ne lance une erreur sur votre plateforme lors du passage de trois listes " +#~ "vides. Il s'agit d'un bogue, renseigné dans ``_." diff --git a/library/py_compile.po b/library/py_compile.po index df46fba3c..b98bc4190 100644 --- a/library/py_compile.po +++ b/library/py_compile.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-05-04 00:17+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -243,14 +243,18 @@ msgstr "" "Cette option est utile lorsque les fichiers ``.pyc`` sont maintenus par un " "outil externe, comme un système d'intégration." -#: library/py_compile.rst:130 +#: library/py_compile.rst:129 +msgid "Command-Line Interface" +msgstr "" + +#: library/py_compile.rst:131 +#, fuzzy msgid "" -"Compile several source files. The files named in *args* (or on the command " -"line, if *args* is ``None``) are compiled and the resulting byte-code is " -"cached in the normal manner. This function does not search a directory " -"structure to locate source files; it only compiles files named explicitly. " -"If ``'-'`` is the only parameter in args, the list of files is taken from " -"standard input." +"This module can be invoked as a script to compile several source files. The " +"files named in *filenames* are compiled and the resulting bytecode is cached " +"in the normal manner. This program does not search a directory structure to " +"locate source files; it only compiles files named explicitly. The exit " +"status is nonzero if one of the files could not be compiled." msgstr "" "Compile et met en cache tous les fichiers de la séquence *args*, ou ceux " "passés comme arguments en ligne de commande si *args* est ``None``. Cette " @@ -259,25 +263,41 @@ msgstr "" "seul paramètre dans *args*, la liste des fichiers est lue sur l'entrée " "standard." -#: library/py_compile.rst:137 -msgid "Added support for ``'-'``." -msgstr "prise en charge de ``'-'``." - -#: library/py_compile.rst:140 +#: library/py_compile.rst:143 msgid "" -"When this module is run as a script, the :func:`main` is used to compile all " -"the files named on the command line. The exit status is nonzero if one of " -"the files could not be compiled." +"Positional arguments are files to compile. If ``-`` is the only parameter, " +"the list of files is taken from standard input." +msgstr "" + +#: library/py_compile.rst:148 +msgid "Suppress errors output." msgstr "" -"Lorsque ce module est exécuté en tant que script, la fonction :func:`main` " -"compile tous les fichiers passés comme arguments sur la ligne de commande. " -"Le code de retour vaut zéro si tous ont été compilés sans erreur." -#: library/py_compile.rst:147 +#: library/py_compile.rst:150 +#, fuzzy +msgid "Added support for ``-``." +msgstr "prise en charge de ``'-'``." + +#: library/py_compile.rst:153 +#, fuzzy +msgid "Added support for :option:`-q`." +msgstr "prise en charge de ``'-'``." + +#: library/py_compile.rst:159 msgid "Module :mod:`compileall`" msgstr "Module :mod:`compileall`" -#: library/py_compile.rst:148 +#: library/py_compile.rst:160 msgid "Utilities to compile all Python source files in a directory tree." msgstr "" "Utilitaires pour compiler des fichiers source Python dans une arborescence" + +#~ msgid "" +#~ "When this module is run as a script, the :func:`main` is used to compile " +#~ "all the files named on the command line. The exit status is nonzero if " +#~ "one of the files could not be compiled." +#~ msgstr "" +#~ "Lorsque ce module est exécuté en tant que script, la fonction :func:" +#~ "`main` compile tous les fichiers passés comme arguments sur la ligne de " +#~ "commande. Le code de retour vaut zéro si tous ont été compilés sans " +#~ "erreur." diff --git a/library/pyclbr.po b/library/pyclbr.po index 7da580372..e5d7dc990 100644 --- a/library/pyclbr.po +++ b/library/pyclbr.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -95,7 +95,7 @@ msgstr "" msgid "The name of the function." msgstr "" -#: library/pyclbr.rst:125 +#: library/pyclbr.rst:132 msgid "The line number in the file where the definition starts." msgstr "" @@ -103,38 +103,44 @@ msgstr "" msgid "For top-level functions, None. For nested functions, the parent." msgstr "" -#: library/pyclbr.rst:137 +#: library/pyclbr.rst:144 msgid "" "A dictionary mapping names to descriptors for nested functions and classes." msgstr "" -#: library/pyclbr.rst:103 +#: library/pyclbr.rst:102 +msgid "" +"``True`` for functions that are defined with the ``async`` prefix, ``False`` " +"otherwise." +msgstr "" + +#: library/pyclbr.rst:110 msgid "Class Objects" msgstr "Objets classes" -#: library/pyclbr.rst:104 +#: library/pyclbr.rst:111 msgid "" "Class :class:`Class` instances describe classes defined by class " "statements. They have the same attributes as Functions and two more." msgstr "" -#: library/pyclbr.rst:110 +#: library/pyclbr.rst:117 msgid "Name of the file in which the class is defined." msgstr "" -#: library/pyclbr.rst:115 +#: library/pyclbr.rst:122 msgid "The name of the module defining the class described." msgstr "" -#: library/pyclbr.rst:120 +#: library/pyclbr.rst:127 msgid "The name of the class." msgstr "" -#: library/pyclbr.rst:130 +#: library/pyclbr.rst:137 msgid "For top-level classes, None. For nested classes, the parent." msgstr "" -#: library/pyclbr.rst:145 +#: library/pyclbr.rst:152 msgid "" "A list of :class:`Class` objects which describe the immediate base classes " "of the class being described. Classes which are named as superclasses but " @@ -142,7 +148,7 @@ msgid "" "with the class name instead of as :class:`Class` objects." msgstr "" -#: library/pyclbr.rst:154 +#: library/pyclbr.rst:161 msgid "" "A dictionary mapping method names to line numbers. This can be derived from " "the newer children dictionary, but remains for back-compatibility." diff --git a/library/pydoc.po b/library/pydoc.po index a0ab7a1aa..48efbf5d1 100644 --- a/library/pydoc.po +++ b/library/pydoc.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-04-27 22:41+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -24,10 +24,11 @@ msgid "**Source code:** :source:`Lib/pydoc.py`" msgstr "**Code source :** :source:`Lib/pydoc.py`" #: library/pydoc.rst:19 +#, fuzzy msgid "" "The :mod:`pydoc` module automatically generates documentation from Python " "modules. The documentation can be presented as pages of text on the " -"console, served to a Web browser, or saved to HTML files." +"console, served to a web browser, or saved to HTML files." msgstr "" "Le module :mod:`pydoc` génère automatiquement de la documentation à partir " "de modules Python. La documentation peut se présenter sous forme de pages de " @@ -133,11 +134,12 @@ msgstr "" "sont les premières lignes de sa *docstring*." #: library/pydoc.rst:67 +#, fuzzy msgid "" "You can also use :program:`pydoc` to start an HTTP server on the local " -"machine that will serve documentation to visiting Web browsers. :program:" +"machine that will serve documentation to visiting web browsers. :program:" "`pydoc -p 1234` will start a HTTP server on port 1234, allowing you to " -"browse the documentation at ``http://localhost:1234/`` in your preferred Web " +"browse the documentation at ``http://localhost:1234/`` in your preferred web " "browser. Specifying ``0`` as the port number will select an arbitrary unused " "port." msgstr "" diff --git a/library/random.po b/library/random.po index 0e6f43514..e44f3dd85 100644 --- a/library/random.po +++ b/library/random.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-27 19:26+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-10-31 15:32+0100\n" "Last-Translator: Khaïs COLIN \n" "Language-Team: FRENCH \n" @@ -269,7 +269,21 @@ msgstr "" "``int(random()*n)`` qui pouvait produire des distributions légèrement " "inégales." -#: library/random.rst:140 +#: library/random.rst:138 +msgid "" +"The automatic conversion of non-integer types to equivalent integers is " +"deprecated. Currently ``randrange(10.0)`` is losslessly converted to " +"``randrange(10)``. In the future, this will raise a :exc:`TypeError`." +msgstr "" + +#: library/random.rst:143 +msgid "" +"The exception raised for non-integral values such as ``randrange(10.5)`` or " +"``randrange('10')`` will be changed from :exc:`ValueError` to :exc:" +"`TypeError`." +msgstr "" + +#: library/random.rst:150 msgid "" "Return a random integer *N* such that ``a <= N <= b``. Alias for " "``randrange(a, b+1)``." @@ -277,7 +291,7 @@ msgstr "" "Renvoie un entier aléatoire *N* tel que ``a <= N <= b``. Alias pour " "``randrange(a, b+1)``." -#: library/random.rst:145 +#: library/random.rst:155 #, fuzzy msgid "" "Returns a non-negative Python integer with *k* random bits. This method is " @@ -291,15 +305,15 @@ msgstr "" "disponible, :meth:`getrandbits` permet à :meth:`randrange` de gérer des " "gammes arbitrairement larges." -#: library/random.rst:151 +#: library/random.rst:161 msgid "This method now accepts zero for *k*." msgstr "" -#: library/random.rst:156 +#: library/random.rst:166 msgid "Functions for sequences" msgstr "Fonctions pour les séquences" -#: library/random.rst:160 +#: library/random.rst:170 msgid "" "Return a random element from the non-empty sequence *seq*. If *seq* is " "empty, raises :exc:`IndexError`." @@ -307,7 +321,7 @@ msgstr "" "Renvoie un élément aléatoire de la séquence non vide *seq*. Si *seq* est " "vide, lève :exc:`IndexError`." -#: library/random.rst:165 +#: library/random.rst:175 msgid "" "Return a *k* sized list of elements chosen from the *population* with " "replacement. If the *population* is empty, raises :exc:`IndexError`." @@ -315,7 +329,7 @@ msgstr "" "Renvoie une liste de taille *k* d'éléments choisis dans la *population* avec " "remise. Si la *population* est vide, lève :exc:`IndexError`." -#: library/random.rst:168 +#: library/random.rst:178 msgid "" "If a *weights* sequence is specified, selections are made according to the " "relative weights. Alternatively, if a *cum_weights* sequence is given, the " @@ -334,7 +348,7 @@ msgstr "" "cumulatifs avant d'effectuer les tirages, ce qui vous permet d'économiser du " "travail en fournissant des pondérations cumulatives." -#: library/random.rst:177 +#: library/random.rst:187 msgid "" "If neither *weights* nor *cum_weights* are specified, selections are made " "with equal probability. If a weights sequence is supplied, it must be the " @@ -346,21 +360,21 @@ msgstr "" "fournie, elle doit être de la même longueur que la séquence *population*. " "Spécifier à la fois *weights* et *cum_weights* lève une :exc:`TypeError`." -#: library/random.rst:182 +#: library/random.rst:192 #, fuzzy msgid "" "The *weights* or *cum_weights* can use any numeric type that interoperates " "with the :class:`float` values returned by :func:`random` (that includes " -"integers, floats, and fractions but excludes decimals). Behavior is " -"undefined if any weight is negative. A :exc:`ValueError` is raised if all " -"weights are zero." +"integers, floats, and fractions but excludes decimals). Weights are assumed " +"to be non-negative and finite. A :exc:`ValueError` is raised if all weights " +"are zero." msgstr "" "Les *weights* ou *cum_weights* peuvent utiliser n'importe quel type " "numérique interopérable avec les valeurs :class:`float` renvoyées par :func:" "`random` (qui inclut les entiers, les flottants et les fractions mais exclut " "les décimaux). Les poids sont présumés être non négatifs." -#: library/random.rst:188 +#: library/random.rst:198 msgid "" "For a given seed, the :func:`choices` function with equal weighting " "typically produces a different sequence than repeated calls to :func:" @@ -377,16 +391,16 @@ msgstr "" "entière avec des tirages répétés pour éviter les petits biais dus aux " "erreurs d'arrondi." -#: library/random.rst:197 +#: library/random.rst:207 msgid "Raises a :exc:`ValueError` if all weights are zero." msgstr "" -#: library/random.rst:203 +#: library/random.rst:213 msgid "Shuffle the sequence *x* in place." msgstr "" "Mélange la séquence *x* sans créer de nouvelle instance (« sur place »)." -#: library/random.rst:205 +#: library/random.rst:215 msgid "" "The optional argument *random* is a 0-argument function returning a random " "float in [0.0, 1.0); by default, this is the function :func:`.random`." @@ -395,7 +409,7 @@ msgstr "" "nombre aléatoire à virgule flottante dans [0.0, 1.0); par défaut, c'est la " "fonction :func:`.random`." -#: library/random.rst:208 +#: library/random.rst:218 msgid "" "To shuffle an immutable sequence and return a new shuffled list, use " "``sample(x, k=len(x))`` instead." @@ -403,7 +417,7 @@ msgstr "" "Pour mélanger une séquence immuable et renvoyer une nouvelle liste mélangée, " "utilisez ``sample(x, k=len(x))`` à la place." -#: library/random.rst:211 +#: library/random.rst:221 msgid "" "Note that even for small ``len(x)``, the total number of permutations of *x* " "can quickly grow larger than the period of most random number generators. " @@ -418,11 +432,11 @@ msgstr "" "exemple, une séquence de longueur 2080 est la plus grande qui puisse tenir " "dans la période du générateur de nombres aléatoires Mersenne Twister." -#: library/random.rst:218 +#: library/random.rst:228 msgid "The optional parameter *random*." msgstr "" -#: library/random.rst:223 +#: library/random.rst:233 msgid "" "Return a *k* length list of unique elements chosen from the population " "sequence or set. Used for random sampling without replacement." @@ -430,7 +444,7 @@ msgstr "" "Renvoie une liste de *k* éléments uniques choisis dans la séquence ou " "l'ensemble de la population. Utilisé pour un tirage aléatoire sans remise." -#: library/random.rst:226 +#: library/random.rst:236 msgid "" "Returns a new list containing elements from the population while leaving the " "original population unchanged. The resulting list is in selection order so " @@ -445,7 +459,7 @@ msgstr "" "tirage (l'échantillon) d'être divisés en gagnants du grand prix et en " "gagnants de la deuxième place (les sous-tranches)." -#: library/random.rst:232 +#: library/random.rst:242 msgid "" "Members of the population need not be :term:`hashable` or unique. If the " "population contains repeats, then each occurrence is a possible selection in " @@ -455,7 +469,7 @@ msgstr "" "`hachables` ou uniques. Si la population contient des répétitions, " "alors chaque occurrence est un tirage possible dans l'échantillon." -#: library/random.rst:235 +#: library/random.rst:245 msgid "" "Repeated elements can be specified one at a time or with the optional " "keyword-only *counts* parameter. For example, ``sample(['red', 'blue'], " @@ -463,7 +477,7 @@ msgid "" "'blue', 'blue'], k=5)``." msgstr "" -#: library/random.rst:240 +#: library/random.rst:250 msgid "" "To choose a sample from a range of integers, use a :func:`range` object as " "an argument. This is especially fast and space efficient for sampling from " @@ -474,7 +488,7 @@ msgstr "" "économe en mémoire pour un tirage dans une grande population : " "``échantillon(range(10000000), k=60)``." -#: library/random.rst:244 +#: library/random.rst:254 msgid "" "If the sample size is larger than the population size, a :exc:`ValueError` " "is raised." @@ -482,11 +496,11 @@ msgstr "" "Si la taille de l'échantillon est supérieure à la taille de la population, " "une :exc:`ValueError` est levée." -#: library/random.rst:247 +#: library/random.rst:257 msgid "Added the *counts* parameter." msgstr "" -#: library/random.rst:250 +#: library/random.rst:260 msgid "" "In the future, the *population* must be a sequence. Instances of :class:" "`set` are no longer supported. The set must first be converted to a :class:" @@ -494,11 +508,11 @@ msgid "" "sample is reproducible." msgstr "" -#: library/random.rst:260 +#: library/random.rst:270 msgid "Real-valued distributions" msgstr "Distributions pour les nombre réels" -#: library/random.rst:262 +#: library/random.rst:272 msgid "" "The following functions generate specific real-valued distributions. " "Function parameters are named after the corresponding variables in the " @@ -511,13 +525,13 @@ msgstr "" "utilisées dans la pratique mathématique courante ; la plupart de ces " "équations peuvent être trouvées dans tout document traitant de statistiques." -#: library/random.rst:270 +#: library/random.rst:280 msgid "Return the next random floating point number in the range [0.0, 1.0)." msgstr "" "Renvoie le nombre aléatoire à virgule flottante suivant dans la plage [0.0, " "1.0)." -#: library/random.rst:275 +#: library/random.rst:285 msgid "" "Return a random floating point number *N* such that ``a <= N <= b`` for ``a " "<= b`` and ``b <= N <= a`` for ``b < a``." @@ -525,7 +539,7 @@ msgstr "" "Renvoie un nombre aléatoire à virgule flottante *N* tel que ``a <= N <= b`` " "pour ``a <= b`` et ``b <= N <= a`` pour ``b < a``." -#: library/random.rst:278 +#: library/random.rst:288 msgid "" "The end-point value ``b`` may or may not be included in the range depending " "on floating-point rounding in the equation ``a + (b-a) * random()``." @@ -533,7 +547,7 @@ msgstr "" "La valeur finale ``b`` peut ou non être incluse dans la plage selon " "l'arrondi à virgule flottante dans l'équation ``a + (b-a) * random()``." -#: library/random.rst:284 +#: library/random.rst:294 msgid "" "Return a random floating point number *N* such that ``low <= N <= high`` and " "with the specified *mode* between those bounds. The *low* and *high* bounds " @@ -545,7 +559,7 @@ msgstr "" "*high* par défaut sont zéro et un. L'argument *mode* est par défaut le " "point médian entre les bornes, ce qui donne une distribution symétrique." -#: library/random.rst:292 +#: library/random.rst:302 msgid "" "Beta distribution. Conditions on the parameters are ``alpha > 0`` and " "``beta > 0``. Returned values range between 0 and 1." @@ -553,7 +567,7 @@ msgstr "" "Distribution bêta. Les conditions sur les paramètres sont ``alpha > 0`` et " "``beta > 0``. Les valeurs renvoyées varient entre 0 et 1." -#: library/random.rst:298 +#: library/random.rst:308 msgid "" "Exponential distribution. *lambd* is 1.0 divided by the desired mean. It " "should be nonzero. (The parameter would be called \"lambda\", but that is a " @@ -567,7 +581,7 @@ msgstr "" "plus l'infini positif si *lambd* est positif, et de moins l'infini à 0 si " "*lambd* est négatif." -#: library/random.rst:307 +#: library/random.rst:317 msgid "" "Gamma distribution. (*Not* the gamma function!) Conditions on the " "parameters are ``alpha > 0`` and ``beta > 0``." @@ -575,21 +589,22 @@ msgstr "" "Distribution gamma. (*Ce n'est pas* la fonction gamma !) Les conditions sur " "les paramètres sont ``alpha > 0`` et ``beta > 0``." -#: library/random.rst:310 +#: library/random.rst:320 msgid "The probability distribution function is::" msgstr "La fonction de distribution de probabilité est ::" -#: library/random.rst:319 +#: library/random.rst:329 +#, fuzzy msgid "" -"Gaussian distribution. *mu* is the mean, and *sigma* is the standard " -"deviation. This is slightly faster than the :func:`normalvariate` function " -"defined below." +"Normal distribution, also called the Gaussian distribution. *mu* is the " +"mean, and *sigma* is the standard deviation. This is slightly faster than " +"the :func:`normalvariate` function defined below." msgstr "" "Distribution gaussienne. *mu* est la moyenne et *sigma* est la écart type. " "C'est légèrement plus rapide que la fonction :func:`normalvariate` définie " "ci-dessous." -#: library/random.rst:323 +#: library/random.rst:333 msgid "" "Multithreading note: When two threads call this function simultaneously, it " "is possible that they will receive the same return value. This can be " @@ -598,7 +613,7 @@ msgid "" "but thread-safe :func:`normalvariate` function instead." msgstr "" -#: library/random.rst:333 +#: library/random.rst:343 msgid "" "Log normal distribution. If you take the natural logarithm of this " "distribution, you'll get a normal distribution with mean *mu* and standard " @@ -610,14 +625,14 @@ msgstr "" "moyen et écart-type *sigma*. *mu* peut avoir n'importe quelle valeur et " "*sigma* doit être supérieur à zéro." -#: library/random.rst:341 +#: library/random.rst:351 msgid "" "Normal distribution. *mu* is the mean, and *sigma* is the standard " "deviation." msgstr "" "Distribution normale. *mu* est la moyenne et *sigma* est l'écart type." -#: library/random.rst:346 +#: library/random.rst:356 msgid "" "*mu* is the mean angle, expressed in radians between 0 and 2\\*\\ *pi*, and " "*kappa* is the concentration parameter, which must be greater than or equal " @@ -629,11 +644,11 @@ msgstr "" "zéro. Si *kappa* est égal à zéro, cette distribution se réduit à un angle " "aléatoire uniforme sur la plage de 0 à 2\\*\\ *pi*." -#: library/random.rst:354 +#: library/random.rst:364 msgid "Pareto distribution. *alpha* is the shape parameter." msgstr "Distribution de Pareto. *alpha* est le paramètre de forme." -#: library/random.rst:359 +#: library/random.rst:369 msgid "" "Weibull distribution. *alpha* is the scale parameter and *beta* is the " "shape parameter." @@ -641,11 +656,11 @@ msgstr "" "Distribution de Weibull. *alpha* est le paramètre de l'échelle et *beta* " "est le paramètre de forme." -#: library/random.rst:364 +#: library/random.rst:374 msgid "Alternative Generator" msgstr "Générateur alternatif" -#: library/random.rst:368 +#: library/random.rst:378 msgid "" "Class that implements the default pseudo-random number generator used by " "the :mod:`random` module." @@ -653,14 +668,14 @@ msgstr "" "Classe qui implémente le générateur de nombres pseudo-aléatoires par défaut " "utilisé par le module :mod:`random`." -#: library/random.rst:371 +#: library/random.rst:381 msgid "" "In the future, the *seed* must be one of the following types: :class:" "`NoneType`, :class:`int`, :class:`float`, :class:`str`, :class:`bytes`, or :" "class:`bytearray`." msgstr "" -#: library/random.rst:378 +#: library/random.rst:388 msgid "" "Class that uses the :func:`os.urandom` function for generating random " "numbers from sources provided by the operating system. Not available on all " @@ -677,11 +692,11 @@ msgstr "" "`getstate` et :meth:`setstate` lèvent :exc:`NotImplementedError` si vous les " "appelez." -#: library/random.rst:387 +#: library/random.rst:397 msgid "Notes on Reproducibility" msgstr "Remarques sur la reproductibilité" -#: library/random.rst:389 +#: library/random.rst:399 #, fuzzy msgid "" "Sometimes it is useful to be able to reproduce the sequences given by a " @@ -694,7 +709,7 @@ msgstr "" "même séquence devrait être reproductible d'une exécution à l'autre tant que " "plusieurs processus ne sont pas en cours." -#: library/random.rst:393 +#: library/random.rst:403 msgid "" "Most of the random module's algorithms and seeding functions are subject to " "change across Python versions, but two aspects are guaranteed not to change:" @@ -703,7 +718,7 @@ msgstr "" "module aléatoire sont susceptibles d'être modifiés d'une version à l'autre " "de Python, mais deux aspects sont garantis de ne pas changer ::" -#: library/random.rst:396 +#: library/random.rst:406 msgid "" "If a new seeding method is added, then a backward compatible seeder will be " "offered." @@ -711,7 +726,7 @@ msgstr "" "Si une nouvelle méthode de génération de graine est ajoutée, une fonction " "rétro-compatible sera offerte." -#: library/random.rst:399 +#: library/random.rst:409 msgid "" "The generator's :meth:`~Random.random` method will continue to produce the " "same sequence when the compatible seeder is given the same seed." @@ -720,19 +735,19 @@ msgstr "" "même séquence lorsque la fonction de génération de graine compatible recevra " "la même semence." -#: library/random.rst:405 +#: library/random.rst:415 msgid "Examples" msgstr "Exemples" -#: library/random.rst:407 +#: library/random.rst:417 msgid "Basic examples::" msgstr "Exemples de base ::" -#: library/random.rst:435 +#: library/random.rst:445 msgid "Simulations::" msgstr "Simulations : ::" -#: library/random.rst:463 +#: library/random.rst:473 #, fuzzy msgid "" "Example of `statistical bootstrapping `_ to determine the statistical " @@ -757,7 +772,7 @@ msgstr "" "Valeur_p>`_ d'une différence observée entre les effets d'un médicament et " "ceux d'un placebo ::" -#: library/random.rst:503 +#: library/random.rst:513 #, fuzzy msgid "" "Simulation of arrival times and service deliveries for a multiserver queue::" @@ -765,7 +780,7 @@ msgstr "" "Simulation des heures d'arrivée et des livraisons de services dans une seule " "file d'attente de serveurs ::" -#: library/random.rst:531 +#: library/random.rst:541 msgid "" "`Statistics for Hackers `_ a " "video tutorial by `Jake Vanderplas `_ a simulation of a marketplace by `Peter Norvig `_ a tutorial by `Peter " @@ -806,11 +821,11 @@ msgstr "" "théorie des probabilités, comment écrire des simulations, et comment " "effectuer des analyses de données avec Python." -#: library/random.rst:552 +#: library/random.rst:562 msgid "Recipes" msgstr "Cas pratiques" -#: library/random.rst:554 +#: library/random.rst:564 msgid "" "The default :func:`.random` returns multiples of 2⁻⁵³ in the range *0.0 ≤ x " "< 1.0*. All such numbers are evenly spaced and are exactly representable as " @@ -819,7 +834,7 @@ msgid "" "integer multiple of 2⁻⁵³." msgstr "" -#: library/random.rst:560 +#: library/random.rst:570 msgid "" "The following recipe takes a different approach. All floats in the interval " "are possible selections. The mantissa comes from a uniform distribution of " @@ -828,13 +843,13 @@ msgid "" "often as the next larger exponent." msgstr "" -#: library/random.rst:582 +#: library/random.rst:592 msgid "" "All :ref:`real valued distributions ` in the " "class will use the new method::" msgstr "" -#: library/random.rst:591 +#: library/random.rst:601 msgid "" "The recipe is conceptually equivalent to an algorithm that chooses from all " "the multiples of 2⁻¹⁰⁷⁴ in the range *0.0 ≤ x < 1.0*. All such numbers are " @@ -843,7 +858,7 @@ msgid "" "and is equal to ``math.ulp(0.0)``.)" msgstr "" -#: library/random.rst:600 +#: library/random.rst:610 msgid "" "`Generating Pseudo-random Floating-Point Values `_ a paper by Allen B. Downey describing " diff --git a/library/re.po b/library/re.po index 3358e9ea5..da8f77197 100644 --- a/library/re.po +++ b/library/re.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-02-11 22:50+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -217,7 +217,7 @@ msgstr "" msgid "The special characters are:" msgstr "Les caractères spéciaux sont :" -#: library/re.rst:1409 +#: library/re.rst:1419 msgid "``.``" msgstr "``.``" @@ -1528,7 +1528,7 @@ msgstr "" "seulement lorsqu'ils ne sont pas adjacents à une correspondance vide " "précédente." -#: library/re.rst:897 library/re.rst:921 +#: library/re.rst:907 library/re.rst:931 msgid "Added the optional flags argument." msgstr "ajout de l'argument optionnel *flags*." @@ -1540,28 +1540,36 @@ msgstr "" "caractère vide." #: library/re.rst:826 +#, fuzzy msgid "" "Return all non-overlapping matches of *pattern* in *string*, as a list of " -"strings. The *string* is scanned left-to-right, and matches are returned in " -"the order found. If one or more groups are present in the pattern, return a " -"list of groups; this will be a list of tuples if the pattern has more than " -"one group. Empty matches are included in the result." +"strings or tuples. The *string* is scanned left-to-right, and matches are " +"returned in the order found. Empty matches are included in the result." msgstr "" -"Renvoie toutes les correspondances de *pattern* dans *string* qui ne se " -"chevauchent pas, sous forme d'une liste de chaînes. La chaîne *string* est " +"Renvoie un :term:`iterator` produisant des :ref:`objets de correspondance " +"` pour toutes les correspondances non chevauchantes de " +"l'expression rationnelle *pattern* sur la chaîne *string*. *string* est " "analysée de la gauche vers la droite, et les correspondances sont renvoyées " -"dans l'ordre où elles sont trouvées. Si un groupe ou plus sont présents " -"dans le motif, renvoie une liste de groupes ; il s'agira d'une liste de *n*-" -"uplets si le motif a plus d'un groupe. Les correspondances vides sont " -"incluses dans le résultat." +"dans l'ordre où elles sont trouvées. Les correspondances vides sont inclues " +"dans le résultat." -#: library/re.rst:843 +#: library/re.rst:830 +msgid "" +"The result depends on the number of capturing groups in the pattern. If " +"there are no groups, return a list of strings matching the whole pattern. " +"If there is exactly one group, return a list of strings matching that " +"group. If multiple groups are present, return a list of tuples of strings " +"matching the groups. Non-capturing groups do not affect the form of the " +"result." +msgstr "" + +#: library/re.rst:853 msgid "Non-empty matches can now start just after a previous empty match." msgstr "" "Les correspondances non vides peuvent maintenant démarrer juste après une " "correspondance vide précédente." -#: library/re.rst:838 +#: library/re.rst:848 msgid "" "Return an :term:`iterator` yielding :ref:`match objects ` " "over all non-overlapping matches for the RE *pattern* in *string*. The " @@ -1575,7 +1583,7 @@ msgstr "" "dans l'ordre où elles sont trouvées. Les correspondances vides sont inclues " "dans le résultat." -#: library/re.rst:849 +#: library/re.rst:859 msgid "" "Return the string obtained by replacing the leftmost non-overlapping " "occurrences of *pattern* in *string* by the replacement *repl*. If the " @@ -1600,7 +1608,7 @@ msgstr "" "arrières, telles que ``\\6``, sont remplacées par la sous-chaîne " "correspondant au groupe 6 dans le motif. Par exemple ::" -#: library/re.rst:865 +#: library/re.rst:875 msgid "" "If *repl* is a function, it is called for every non-overlapping occurrence " "of *pattern*. The function takes a single :ref:`match object `, et renvoie la chaîne de remplacement. " "Par exemple ::" -#: library/re.rst:877 +#: library/re.rst:887 msgid "The pattern may be a string or a :ref:`pattern object `." msgstr "" "Le motif peut être une chaîne de caractères ou un :ref:`objet expression " "rationnelle `." -#: library/re.rst:879 +#: library/re.rst:889 msgid "" "The optional argument *count* is the maximum number of pattern occurrences " "to be replaced; *count* must be a non-negative integer. If omitted or zero, " @@ -1632,7 +1640,7 @@ msgstr "" "précédente correspondance, ainsi ``sub('x*', '-', 'abxd')`` renvoie ``'-a-b--" "d-'``." -#: library/re.rst:887 +#: library/re.rst:897 msgid "" "In string-type *repl* arguments, in addition to the character escapes and " "backreferences described above, ``\\g`` will use the substring matched " @@ -1654,11 +1662,11 @@ msgstr "" "par un caractère littéral ``'0'``. La référence arrière ``\\g<0>`` est " "remplacée par la sous-chaîne entière validée par l'expression rationnelle." -#: library/re.rst:924 library/re.rst:1155 +#: library/re.rst:934 library/re.rst:1165 msgid "Unmatched groups are replaced with an empty string." msgstr "Les groupes sans correspondance sont remplacés par une chaîne vide." -#: library/re.rst:903 +#: library/re.rst:913 msgid "" "Unknown escapes in *pattern* consisting of ``'\\'`` and an ASCII letter now " "are errors." @@ -1666,7 +1674,7 @@ msgstr "" "Les séquences d'échappement inconnues dans *pattern* formées par ``'\\'`` et " "une lettre ASCII sont maintenant des erreurs." -#: library/re.rst:907 +#: library/re.rst:917 msgid "" "Unknown escapes in *repl* consisting of ``'\\'`` and an ASCII letter now are " "errors." @@ -1674,7 +1682,7 @@ msgstr "" "Les séquences d'échappement inconnues dans *repl* formées par ``'\\'`` et " "une lettre ASCII sont maintenant des erreurs." -#: library/re.rst:911 +#: library/re.rst:921 msgid "" "Empty matches for the pattern are replaced when adjacent to a previous non-" "empty match." @@ -1682,7 +1690,7 @@ msgstr "" "Les correspondances vides pour le motif sont remplacées lorsqu'elles sont " "adjacentes à une correspondance non vide précédente." -#: library/re.rst:918 +#: library/re.rst:928 msgid "" "Perform the same operation as :func:`sub`, but return a tuple ``(new_string, " "number_of_subs_made)``." @@ -1690,7 +1698,7 @@ msgstr "" "Réalise la même opération que :func:`sub`, mais renvoie une paire " "``(nouvelle_chaîne, nombre_de_substitutions_réalisées)``." -#: library/re.rst:930 +#: library/re.rst:940 msgid "" "Escape special characters in *pattern*. This is useful if you want to match " "an arbitrary literal string that may have regular expression metacharacters " @@ -1700,7 +1708,7 @@ msgstr "" "voulez valider une quelconque chaîne littérale qui pourrait contenir des " "métacaractères d'expressions rationnelles. Par exemple ::" -#: library/re.rst:945 +#: library/re.rst:955 msgid "" "This function must not be used for the replacement string in :func:`sub` " "and :func:`subn`, only backslashes should be escaped. For example::" @@ -1709,11 +1717,11 @@ msgstr "" "dans :func:`sub` et :func:`subn`, seuls les antislash devraient être " "échappés. Par exemple ::" -#: library/re.rst:953 +#: library/re.rst:963 msgid "The ``'_'`` character is no longer escaped." msgstr "Le caractère ``'_'`` n'est plus échappé." -#: library/re.rst:956 +#: library/re.rst:966 msgid "" "Only characters that can have special meaning in a regular expression are " "escaped. As a result, ``'!'``, ``'\"'``, ``'%'``, ``\"'\"``, ``','``, " @@ -1725,11 +1733,11 @@ msgstr "" "``'%'``, ``\"'\"``, ``','``, ``'/'``, ``':'``, ``';'``, ``'<'``, ``'='``, " "``'>'``, ``'@'``, et ``\"`\"`` ne sont plus échappés." -#: library/re.rst:965 +#: library/re.rst:975 msgid "Clear the regular expression cache." msgstr "Vide le cache d'expressions rationnelles." -#: library/re.rst:970 +#: library/re.rst:980 msgid "" "Exception raised when a string passed to one of the functions here is not a " "valid regular expression (for example, it might contain unmatched " @@ -1744,36 +1752,36 @@ msgstr "" "contient aucune correspondance pour un motif. Les instances de l'erreur ont " "les attributs additionnels suivants :" -#: library/re.rst:978 +#: library/re.rst:988 msgid "The unformatted error message." msgstr "Le message d'erreur non formaté." -#: library/re.rst:982 +#: library/re.rst:992 msgid "The regular expression pattern." msgstr "Le motif d'expression rationnelle." -#: library/re.rst:986 +#: library/re.rst:996 msgid "The index in *pattern* where compilation failed (may be ``None``)." msgstr "" "L'index dans *pattern* où la compilation a échoué (peut valoir ``None``)." -#: library/re.rst:990 +#: library/re.rst:1000 msgid "The line corresponding to *pos* (may be ``None``)." msgstr "La ligne correspondant à *pos* (peut valoir ``None``)." -#: library/re.rst:994 +#: library/re.rst:1004 msgid "The column corresponding to *pos* (may be ``None``)." msgstr "La colonne correspondant à *pos* (peut valoir ``None``)." -#: library/re.rst:996 +#: library/re.rst:1006 msgid "Added additional attributes." msgstr "Ajout des attributs additionnels." -#: library/re.rst:1002 +#: library/re.rst:1012 msgid "Regular Expression Objects" msgstr "Objets d'expressions rationnelles" -#: library/re.rst:1004 +#: library/re.rst:1014 msgid "" "Compiled regular expression objects support the following methods and " "attributes:" @@ -1781,7 +1789,7 @@ msgstr "" "Les expressions rationnelles compilées supportent les méthodes et attributs " "suivants :" -#: library/re.rst:1009 +#: library/re.rst:1019 msgid "" "Scan through *string* looking for the first location where this regular " "expression produces a match, and return a corresponding :ref:`match object " @@ -1795,7 +1803,7 @@ msgstr "" "dans la chaîne ne satisfait le motif ; notez que cela est différent que de " "trouver une correspondance vide dans la chaîne." -#: library/re.rst:1015 +#: library/re.rst:1025 msgid "" "The optional second parameter *pos* gives an index in the string where the " "search is to start; it defaults to ``0``. This is not completely equivalent " @@ -1809,7 +1817,7 @@ msgstr "" "``'^'`` correspond au début réel de la chaîne et aux positions juste après " "un saut de ligne, mais pas nécessairement à l'index où la recherche commence." -#: library/re.rst:1021 +#: library/re.rst:1031 msgid "" "The optional parameter *endpos* limits how far the string will be searched; " "it will be as if the string is *endpos* characters long, so only the " @@ -1826,7 +1834,7 @@ msgstr "" "expression rationnelle compilée, ``rx.search(string, 0, 50)`` est équivalent " "à ``rx.search(string[:50], 0)``. ::" -#: library/re.rst:1036 +#: library/re.rst:1046 msgid "" "If zero or more characters at the *beginning* of *string* match this regular " "expression, return a corresponding :ref:`match object `. " @@ -1838,7 +1846,7 @@ msgstr "" "objects>` trouvé. Renvoie ``None`` si la chaîne ne correspond pas au motif ; " "notez que cela est différent d'une correspondance vide." -#: library/re.rst:1059 +#: library/re.rst:1069 msgid "" "The optional *pos* and *endpos* parameters have the same meaning as for the :" "meth:`~Pattern.search` method. ::" @@ -1846,7 +1854,7 @@ msgstr "" "Les paramètres optionnels *pos* et *endpos* ont le même sens que pour la " "méthode :meth:`~Pattern.search`. ::" -#: library/re.rst:1049 +#: library/re.rst:1059 msgid "" "If you want to locate a match anywhere in *string*, use :meth:`~Pattern." "search` instead (see also :ref:`search-vs-match`)." @@ -1854,7 +1862,7 @@ msgstr "" "Si vous voulez une recherche n'importe où dans *string*, utilisez plutôt :" "meth:`~Pattern.search` (voir aussi :ref:`search-vs-match`)." -#: library/re.rst:1055 +#: library/re.rst:1065 msgid "" "If the whole *string* matches this regular expression, return a " "corresponding :ref:`match object `. Return ``None`` if the " @@ -1866,11 +1874,11 @@ msgstr "" "la chaîne ne correspond pas au motif ; notez que cela est différent d'une " "correspondance vide." -#: library/re.rst:1073 +#: library/re.rst:1083 msgid "Identical to the :func:`split` function, using the compiled pattern." msgstr "Identique à la fonction :func:`split`, en utilisant le motif compilé." -#: library/re.rst:1078 +#: library/re.rst:1088 msgid "" "Similar to the :func:`findall` function, using the compiled pattern, but " "also accepts optional *pos* and *endpos* parameters that limit the search " @@ -1880,7 +1888,7 @@ msgstr "" "accepte aussi des paramètres *pos* et *endpos* optionnels qui limitent la " "région de recherche comme pour :meth:`search`." -#: library/re.rst:1085 +#: library/re.rst:1095 msgid "" "Similar to the :func:`finditer` function, using the compiled pattern, but " "also accepts optional *pos* and *endpos* parameters that limit the search " @@ -1890,15 +1898,15 @@ msgstr "" "mais accepte aussi des paramètres *pos* et *endpos* optionnels qui limitent " "la région de recherche comme pour :meth:`search`." -#: library/re.rst:1092 +#: library/re.rst:1102 msgid "Identical to the :func:`sub` function, using the compiled pattern." msgstr "Identique à la fonction :func:`sub`, en utilisant le motif compilé." -#: library/re.rst:1097 +#: library/re.rst:1107 msgid "Identical to the :func:`subn` function, using the compiled pattern." msgstr "Identique à la fonction :func:`subn`, en utilisant le motif compilé." -#: library/re.rst:1102 +#: library/re.rst:1112 msgid "" "The regex matching flags. This is a combination of the flags given to :func:" "`.compile`, any ``(?...)`` inline flags in the pattern, and implicit flags " @@ -1909,11 +1917,11 @@ msgstr "" "``(?...)`` dans le motif, et des options implicites comme :data:`UNICODE` si " "le motif est une chaîne Unicode." -#: library/re.rst:1109 +#: library/re.rst:1119 msgid "The number of capturing groups in the pattern." msgstr "Le nombre de groupes de capture dans le motif." -#: library/re.rst:1114 +#: library/re.rst:1124 msgid "" "A dictionary mapping any symbolic group names defined by ``(?P)`` to " "group numbers. The dictionary is empty if no symbolic groups were used in " @@ -1923,11 +1931,11 @@ msgstr "" "P)`` aux groupes numérotés. Le dictionnaire est vide si aucun groupe " "symbolique n'est utilisé dans le motif." -#: library/re.rst:1121 +#: library/re.rst:1131 msgid "The pattern string from which the pattern object was compiled." msgstr "La chaîne de motif depuis laquelle l'objet motif a été compilé." -#: library/re.rst:1124 +#: library/re.rst:1134 msgid "" "Added support of :func:`copy.copy` and :func:`copy.deepcopy`. Compiled " "regular expression objects are considered atomic." @@ -1935,11 +1943,11 @@ msgstr "" "Ajout du support des fonctions :func:`copy.copy` et :func:`copy.deepcopy`. " "Les expressions régulières compilées sont considérées atomiques." -#: library/re.rst:1132 +#: library/re.rst:1142 msgid "Match Objects" msgstr "Objets de correspondance" -#: library/re.rst:1134 +#: library/re.rst:1144 msgid "" "Match objects always have a boolean value of ``True``. Since :meth:`~Pattern." "match` and :meth:`~Pattern.search` return ``None`` when there is no match, " @@ -1950,12 +1958,12 @@ msgstr "" "quand il n'y a pas de correspondance, vous pouvez tester s'il y a eu " "correspondance avec une simple instruction ``if`` ::" -#: library/re.rst:1143 +#: library/re.rst:1153 msgid "Match objects support the following methods and attributes:" msgstr "" "Les objets de correspondance supportent les méthodes et attributs suivants :" -#: library/re.rst:1148 +#: library/re.rst:1158 msgid "" "Return the string obtained by doing backslash substitution on the template " "string *template*, as done by the :meth:`~Pattern.sub` method. Escapes such " @@ -1970,7 +1978,7 @@ msgstr "" "\\g<1>``, ``\\g``) sont remplacées par les contenus des groupes " "correspondant." -#: library/re.rst:1160 +#: library/re.rst:1170 msgid "" "Returns one or more subgroups of the match. If there is a single argument, " "the result is a single string; if there are multiple arguments, the result " @@ -1997,7 +2005,7 @@ msgstr "" "sera ``None``. Si un groupe est contenu dans une partie du motif qui a " "plusieurs correspondances, seule la dernière correspondance est renvoyée. ::" -#: library/re.rst:1182 +#: library/re.rst:1192 msgid "" "If the regular expression uses the ``(?P...)`` syntax, the *groupN* " "arguments may also be strings identifying groups by their group name. If a " @@ -2009,20 +2017,20 @@ msgstr "" "groupes par leurs noms. Si une chaîne donnée en argument n'est pas utilisée " "comme nom de groupe dans le motif, une exception :exc:`IndexError` est levée." -#: library/re.rst:1187 +#: library/re.rst:1197 msgid "A moderately complicated example::" msgstr "Un exemple modérément compliqué ::" -#: library/re.rst:1195 +#: library/re.rst:1205 msgid "Named groups can also be referred to by their index::" msgstr "Les groupes nommés peuvent aussi être référencés par leur index ::" -#: library/re.rst:1202 +#: library/re.rst:1212 msgid "If a group matches multiple times, only the last match is accessible::" msgstr "" "Si un groupe a plusieurs correspondances, seule la dernière est accessible ::" -#: library/re.rst:1211 +#: library/re.rst:1221 msgid "" "This is identical to ``m.group(g)``. This allows easier access to an " "individual group from a match::" @@ -2030,7 +2038,7 @@ msgstr "" "Cela est identique à ``m.group(g)``. Cela permet un accès plus facile à un " "groupe individuel depuis une correspondance ::" -#: library/re.rst:1227 +#: library/re.rst:1237 msgid "" "Return a tuple containing all the subgroups of the match, from 1 up to " "however many groups are in the pattern. The *default* argument is used for " @@ -2040,11 +2048,11 @@ msgstr "" "de 1 jusqu'au nombre de groupes dans le motif. L'argument *default* est " "utilisé pour les groupes sans correspondance ; il vaut ``None`` par défaut." -#: library/re.rst:1453 +#: library/re.rst:1463 msgid "For example::" msgstr "Par exemple ::" -#: library/re.rst:1237 +#: library/re.rst:1247 msgid "" "If we make the decimal place and everything after it optional, not all " "groups might participate in the match. These groups will default to " @@ -2055,7 +2063,7 @@ msgstr "" "correspondance vaudront ``None`` sauf si une autre valeur est donnée à " "l'argument *default* ::" -#: library/re.rst:1250 +#: library/re.rst:1260 msgid "" "Return a dictionary containing all the *named* subgroups of the match, keyed " "by the subgroup name. The *default* argument is used for groups that did " @@ -2066,7 +2074,7 @@ msgstr "" "utilisé pour les groupes qui ne figurent pas dans la correspondance ; il " "vaut ``None`` par défaut. Par exemple ::" -#: library/re.rst:1262 +#: library/re.rst:1272 msgid "" "Return the indices of the start and end of the substring matched by *group*; " "*group* defaults to zero (meaning the whole matched substring). Return " @@ -2081,7 +2089,7 @@ msgstr "" "groupe *g* qui y figure, la sous-chaîne correspondant au groupe *g* " "(équivalente à ``m.group(g)``) est ::" -#: library/re.rst:1270 +#: library/re.rst:1280 msgid "" "Note that ``m.start(group)`` will equal ``m.end(group)`` if *group* matched " "a null string. For example, after ``m = re.search('b(c?)', 'cba')``, ``m." @@ -2094,11 +2102,11 @@ msgstr "" "end(1)`` valent tous deux 2, et ``m.start(2)`` lève une exception :exc:" "`IndexError`." -#: library/re.rst:1275 +#: library/re.rst:1285 msgid "An example that will remove *remove_this* from email addresses::" msgstr "Un exemple qui supprimera *remove_this* d'une adresse mail ::" -#: library/re.rst:1285 +#: library/re.rst:1295 msgid "" "For a match *m*, return the 2-tuple ``(m.start(group), m.end(group))``. Note " "that if *group* did not contribute to the match, this is ``(-1, -1)``. " @@ -2109,7 +2117,7 @@ msgstr "" "``(-1, -1)`` est renvoyé. *group* vaut par défaut zéro, pour la " "correspondance entière." -#: library/re.rst:1292 +#: library/re.rst:1302 msgid "" "The value of *pos* which was passed to the :meth:`~Pattern.search` or :meth:" "`~Pattern.match` method of a :ref:`regex object `. This is the " @@ -2120,7 +2128,7 @@ msgstr "" "objects>`. C'est l'index dans la chaîne à partir duquel le moteur " "d'expressions rationnelles recherche une correspondance." -#: library/re.rst:1299 +#: library/re.rst:1309 msgid "" "The value of *endpos* which was passed to the :meth:`~Pattern.search` or :" "meth:`~Pattern.match` method of a :ref:`regex object `. This is " @@ -2131,7 +2139,7 @@ msgstr "" "objects>`. C'est l'index dans la chaîne que le moteur d'expressions " "rationnelles ne dépassera pas." -#: library/re.rst:1306 +#: library/re.rst:1316 msgid "" "The integer index of the last matched capturing group, or ``None`` if no " "group was matched at all. For example, the expressions ``(a)b``, ``((a)" @@ -2145,7 +2153,7 @@ msgstr "" "``'ab'``, alors que l'expression ``(a)(b)`` aura un ``lastindex == 2`` si " "appliquée à la même chaîne." -#: library/re.rst:1315 +#: library/re.rst:1325 msgid "" "The name of the last matched capturing group, or ``None`` if the group " "didn't have a name, or if no group was matched at all." @@ -2153,7 +2161,7 @@ msgstr "" "Le nom du dernier groupe capturant validé, ou ``None`` si le groupe n'a pas " "de nom, ou si aucun groupe ne correspondait." -#: library/re.rst:1321 +#: library/re.rst:1331 msgid "" "The :ref:`regular expression object ` whose :meth:`~Pattern." "match` or :meth:`~Pattern.search` method produced this match instance." @@ -2161,11 +2169,11 @@ msgstr "" ":ref:`L'expression rationnelle ` dont la méthode :meth:`~Pattern." "match` ou :meth:`~Pattern.search` a produit cet objet de correspondance." -#: library/re.rst:1327 +#: library/re.rst:1337 msgid "The string passed to :meth:`~Pattern.match` or :meth:`~Pattern.search`." msgstr "La chaîne passée à :meth:`~Pattern.match` ou :meth:`~Pattern.search`." -#: library/re.rst:1330 +#: library/re.rst:1340 msgid "" "Added support of :func:`copy.copy` and :func:`copy.deepcopy`. Match objects " "are considered atomic." @@ -2173,15 +2181,15 @@ msgstr "" "Ajout du support des fonctions :func:`copy.copy` et :func:`copy.deepcopy`. " "Les objets correspondants sont considérés atomiques." -#: library/re.rst:1338 +#: library/re.rst:1348 msgid "Regular Expression Examples" msgstr "Exemples d'expressions rationnelles" -#: library/re.rst:1342 +#: library/re.rst:1352 msgid "Checking for a Pair" msgstr "Rechercher une paire" -#: library/re.rst:1344 +#: library/re.rst:1354 msgid "" "In this example, we'll use the following helper function to display match " "objects a little more gracefully::" @@ -2189,7 +2197,7 @@ msgstr "" "Dans cet exemple, nous nous aidons de la fonction suivante pour afficher de " "manière plus jolie les objets qui correspondent ::" -#: library/re.rst:1352 +#: library/re.rst:1362 msgid "" "Suppose you are writing a poker program where a player's hand is represented " "as a 5-character string with each character representing a card, \"a\" for " @@ -2203,13 +2211,13 @@ msgstr "" "(*ten*), et les caractères de « 2 » à « 9 » représentant les cartes avec ces " "valeurs." -#: library/re.rst:1357 +#: library/re.rst:1367 msgid "To see if a given string is a valid hand, one could do the following::" msgstr "" "Pour vérifier qu'une chaîne donnée est une main valide, on pourrait faire " "comme suit ::" -#: library/re.rst:1367 +#: library/re.rst:1377 msgid "" "That last hand, ``\"727ak\"``, contained a pair, or two of the same valued " "cards. To match this with a regular expression, one could use backreferences " @@ -2219,7 +2227,7 @@ msgstr "" "valeur. Pour valider cela avec une expression rationnelle, on pourrait " "utiliser des références arrière comme ::" -#: library/re.rst:1377 +#: library/re.rst:1387 msgid "" "To find out what card the pair consists of, one could use the :meth:`~Match." "group` method of the match object in the following manner::" @@ -2228,11 +2236,11 @@ msgstr "" "méthode :meth:`~Match.group` de l'objet de correspondance de la manière " "suivante ::" -#: library/re.rst:1396 +#: library/re.rst:1406 msgid "Simulating scanf()" msgstr "Simuler *scanf()*" -#: library/re.rst:1400 +#: library/re.rst:1410 msgid "" "Python does not currently have an equivalent to :c:func:`scanf`. Regular " "expressions are generally more powerful, though also more verbose, than :c:" @@ -2246,100 +2254,100 @@ msgstr "" "suivant présente des expressions rationnelles plus ou moins équivalentes aux " "éléments de formats de :c:func:`scanf`." -#: library/re.rst:1407 +#: library/re.rst:1417 msgid ":c:func:`scanf` Token" msgstr "Élément de :c:func:`scanf`" -#: library/re.rst:1407 +#: library/re.rst:1417 msgid "Regular Expression" msgstr "Expression rationnelle" -#: library/re.rst:1409 +#: library/re.rst:1419 msgid "``%c``" msgstr "``%c``" -#: library/re.rst:1411 +#: library/re.rst:1421 msgid "``%5c``" msgstr "``%5c``" -#: library/re.rst:1411 +#: library/re.rst:1421 msgid "``.{5}``" msgstr "``.{5}``" -#: library/re.rst:1413 +#: library/re.rst:1423 msgid "``%d``" msgstr "``%d``" -#: library/re.rst:1413 +#: library/re.rst:1423 msgid "``[-+]?\\d+``" msgstr "``[-+]?\\d+``" -#: library/re.rst:1415 +#: library/re.rst:1425 msgid "``%e``, ``%E``, ``%f``, ``%g``" msgstr "``%e``, ``%E``, ``%f``, ``%g``" -#: library/re.rst:1415 +#: library/re.rst:1425 msgid "``[-+]?(\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?``" msgstr "``[-+]?(\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?``" -#: library/re.rst:1417 +#: library/re.rst:1427 msgid "``%i``" msgstr "``%i``" -#: library/re.rst:1417 +#: library/re.rst:1427 msgid "``[-+]?(0[xX][\\dA-Fa-f]+|0[0-7]*|\\d+)``" msgstr "``[-+]?(0[xX][\\dA-Fa-f]+|0[0-7]*|\\d+)``" -#: library/re.rst:1419 +#: library/re.rst:1429 msgid "``%o``" msgstr "``%o``" -#: library/re.rst:1419 +#: library/re.rst:1429 msgid "``[-+]?[0-7]+``" msgstr "``[-+]?[0-7]+``" -#: library/re.rst:1421 +#: library/re.rst:1431 msgid "``%s``" msgstr "``%s``" -#: library/re.rst:1421 +#: library/re.rst:1431 msgid "``\\S+``" msgstr "``\\S+``" -#: library/re.rst:1423 +#: library/re.rst:1433 msgid "``%u``" msgstr "``%u``" -#: library/re.rst:1423 +#: library/re.rst:1433 msgid "``\\d+``" msgstr "``\\d+``" -#: library/re.rst:1425 +#: library/re.rst:1435 msgid "``%x``, ``%X``" msgstr "``%x``, ``%X``" -#: library/re.rst:1425 +#: library/re.rst:1435 msgid "``[-+]?(0[xX])?[\\dA-Fa-f]+``" msgstr "``[-+]?(0[xX])?[\\dA-Fa-f]+``" -#: library/re.rst:1428 +#: library/re.rst:1438 msgid "To extract the filename and numbers from a string like ::" msgstr "" "Pour extraire le nom de fichier et les nombres depuis une chaîne comme ::" -#: library/re.rst:1432 +#: library/re.rst:1442 msgid "you would use a :c:func:`scanf` format like ::" msgstr "vous utiliseriez un format :c:func:`scanf` comme ::" -#: library/re.rst:1436 +#: library/re.rst:1446 msgid "The equivalent regular expression would be ::" msgstr "L'expression rationnelle équivalente serait ::" -#: library/re.rst:1444 +#: library/re.rst:1454 msgid "search() vs. match()" msgstr "search() vs. match()" -#: library/re.rst:1448 +#: library/re.rst:1458 msgid "" "Python offers two different primitive operations based on regular " "expressions: :func:`re.match` checks for a match only at the beginning of " @@ -2351,7 +2359,7 @@ msgstr "" "début de la chaîne, tandis que :func:`re.search` en recherche une n'importe " "où dans la chaîne (ce que fait Perl par défaut)." -#: library/re.rst:1459 +#: library/re.rst:1469 msgid "" "Regular expressions beginning with ``'^'`` can be used with :func:`search` " "to restrict the match at the beginning of the string::" @@ -2359,7 +2367,7 @@ msgstr "" "Les expressions rationnelles commençant par ``'^'`` peuvent être utilisées " "avec :func:`search` pour restreindre la recherche au début de la chaîne ::" -#: library/re.rst:1467 +#: library/re.rst:1477 msgid "" "Note however that in :const:`MULTILINE` mode :func:`match` only matches at " "the beginning of the string, whereas using :func:`search` with a regular " @@ -2370,11 +2378,11 @@ msgstr "" "qu'au début de la chaîne, alors que :func:`search` avec une expression " "rationnelle commençant par ``'^'`` recherchera au début de chaque ligne. ::" -#: library/re.rst:1477 +#: library/re.rst:1487 msgid "Making a Phonebook" msgstr "Construire un répertoire téléphonique" -#: library/re.rst:1479 +#: library/re.rst:1489 msgid "" ":func:`split` splits a string into a list delimited by the passed pattern. " "The method is invaluable for converting textual data into data structures " @@ -2386,7 +2394,7 @@ msgstr "" "structures de données qui peuvent être lues et modifiées par Python comme " "démontré dans l'exemple suivant qui crée un répertoire téléphonique." -#: library/re.rst:1484 +#: library/re.rst:1494 msgid "" "First, here is the input. Normally it may come from a file, here we are " "using triple-quoted string syntax" @@ -2394,7 +2402,7 @@ msgstr "" "Tout d'abord, voici l'entrée. Elle provient normalement d'un fichier, nous " "utilisons ici une chaîne à guillemets triples" -#: library/re.rst:1497 +#: library/re.rst:1507 msgid "" "The entries are separated by one or more newlines. Now we convert the string " "into a list with each nonempty line having its own entry:" @@ -2403,7 +2411,7 @@ msgstr "" "maintenant la chaîne en une liste où chaque ligne non vide aura sa propre " "entrée :" -#: library/re.rst:1510 +#: library/re.rst:1520 msgid "" "Finally, split each entry into a list with first name, last name, telephone " "number, and address. We use the ``maxsplit`` parameter of :func:`split` " @@ -2414,7 +2422,7 @@ msgstr "" "`split` parce que l'adresse contient des espaces, qui sont notre motif de " "séparation :" -#: library/re.rst:1523 +#: library/re.rst:1533 msgid "" "The ``:?`` pattern matches the colon after the last name, so that it does " "not occur in the result list. With a ``maxsplit`` of ``4``, we could " @@ -2424,11 +2432,11 @@ msgstr "" "qu'ils n'apparaissent pas dans la liste résultante. Avec un ``maxsplit`` de " "``4``, nous pourrions séparer le numéro du nom de la rue :" -#: library/re.rst:1538 +#: library/re.rst:1548 msgid "Text Munging" msgstr "Mélanger les lettres des mots" -#: library/re.rst:1540 +#: library/re.rst:1550 msgid "" ":func:`sub` replaces every occurrence of a pattern with a string or the " "result of a function. This example demonstrates using :func:`sub` with a " @@ -2440,11 +2448,11 @@ msgstr "" "avec une fonction qui mélange aléatoirement les caractères de chaque mot " "dans une phrase (à l'exception des premiers et derniers caractères) ::" -#: library/re.rst:1557 +#: library/re.rst:1567 msgid "Finding all Adverbs" msgstr "Trouver tous les adverbes" -#: library/re.rst:1559 +#: library/re.rst:1569 msgid "" ":func:`findall` matches *all* occurrences of a pattern, not just the first " "one as :func:`search` does. For example, if a writer wanted to find all of " @@ -2456,11 +2464,11 @@ msgstr "" "voulait trouver tous les adverbes dans un texte, il/elle devrait utiliser :" "func:`findall` de la manière suivante ::" -#: library/re.rst:1570 +#: library/re.rst:1580 msgid "Finding all Adverbs and their Positions" msgstr "Trouver tous les adverbes et leurs positions" -#: library/re.rst:1572 +#: library/re.rst:1582 msgid "" "If one wants more information about all matches of a pattern than the " "matched text, :func:`finditer` is useful as it provides :ref:`match objects " @@ -2475,11 +2483,11 @@ msgstr "" "leurs positions* dans un texte, il/elle utiliserait :func:`finditer` de la " "manière suivante ::" -#: library/re.rst:1586 +#: library/re.rst:1596 msgid "Raw String Notation" msgstr "Notation brutes de chaînes" -#: library/re.rst:1588 +#: library/re.rst:1598 msgid "" "Raw string notation (``r\"text\"``) keeps regular expressions sane. Without " "it, every backslash (``'\\'``) in a regular expression would have to be " @@ -2492,7 +2500,7 @@ msgstr "" "Par exemple, les deux lignes de code suivantes sont fonctionnellement " "identiques ::" -#: library/re.rst:1598 +#: library/re.rst:1608 msgid "" "When one wants to match a literal backslash, it must be escaped in the " "regular expression. With raw string notation, this means ``r\"\\\\\"``. " @@ -2504,11 +2512,11 @@ msgstr "" "\"``. Sans elle, il faudrait utiliser ``\"\\\\\\\\\"``, faisant que les " "deux lignes de code suivantes sont fonctionnellement identiques ::" -#: library/re.rst:1610 +#: library/re.rst:1620 msgid "Writing a Tokenizer" msgstr "Écrire un analyseur lexical" -#: library/re.rst:1612 +#: library/re.rst:1622 msgid "" "A `tokenizer or scanner `_ " "analyzes a string to categorize groups of characters. This is a useful " @@ -2519,7 +2527,7 @@ msgstr "" "caractères. C'est une première étape utile dans l'écriture d'un compilateur " "ou d'un interpréteur." -#: library/re.rst:1616 +#: library/re.rst:1626 msgid "" "The text categories are specified with regular expressions. The technique " "is to combine those into a single master regular expression and to loop over " @@ -2529,11 +2537,11 @@ msgstr "" "La technique est de les combiner dans une unique expression rationnelle " "maîtresse, et de boucler sur les correspondances successives ::" -#: library/re.rst:1672 +#: library/re.rst:1682 msgid "The tokenizer produces the following output::" msgstr "L'analyseur produit la sortie suivante ::" -#: library/re.rst:1695 +#: library/re.rst:1705 msgid "" "Friedl, Jeffrey. Mastering Regular Expressions. 3rd ed., O'Reilly Media, " "2009. The third edition of the book no longer covers Python at all, but the " @@ -2544,3 +2552,18 @@ msgstr "" "2009*. La troisième édition de ce livre ne couvre plus du tout Python, mais " "la première version explique en détails comment écrire de bonnes expressions " "rationnelles." + +#~ msgid "" +#~ "Return all non-overlapping matches of *pattern* in *string*, as a list of " +#~ "strings. The *string* is scanned left-to-right, and matches are returned " +#~ "in the order found. If one or more groups are present in the pattern, " +#~ "return a list of groups; this will be a list of tuples if the pattern has " +#~ "more than one group. Empty matches are included in the result." +#~ msgstr "" +#~ "Renvoie toutes les correspondances de *pattern* dans *string* qui ne se " +#~ "chevauchent pas, sous forme d'une liste de chaînes. La chaîne *string* " +#~ "est analysée de la gauche vers la droite, et les correspondances sont " +#~ "renvoyées dans l'ordre où elles sont trouvées. Si un groupe ou plus sont " +#~ "présents dans le motif, renvoie une liste de groupes ; il s'agira d'une " +#~ "liste de *n*-uplets si le motif a plus d'un groupe. Les correspondances " +#~ "vides sont incluses dans le résultat." diff --git a/library/readline.po b/library/readline.po index 31df4cc20..5aa33b3d4 100644 --- a/library/readline.po +++ b/library/readline.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-12-13 14:14+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -390,16 +390,20 @@ msgstr "" "`rl_completion_type` dans la bibliothèque sous-jacente en tant qu'entier." #: library/readline.rst:258 +#, fuzzy msgid "" "Get the beginning or ending index of the completion scope. These indexes are " "the *start* and *end* arguments passed to the :c:data:" -"`rl_attempted_completion_function` callback of the underlying library." +"`rl_attempted_completion_function` callback of the underlying library. The " +"values may be different in the same input editing scenario based on the " +"underlying C readline implementation. Ex: libedit is known to behave " +"differently than libreadline." msgstr "" "Récupère l'indexe de début ou de fin d'un contexte de complétion. Ces " "indexes sont les arguments *start* et *end* passés à la fonction de retour :" "c:data:`rl_attempted_completion_function` de la bibliothèque sous-jacente." -#: library/readline.rst:267 +#: library/readline.rst:269 msgid "" "Set or get the word delimiters for completion. These determine the start of " "the word to be considered for completion (the completion scope). These " @@ -411,7 +415,7 @@ msgstr "" "contexte de la complétion). Ces fonctions accèdent à la variable :c:data:" "`rl_completer_word_break_characters` de la bibliothèque sous-jacente." -#: library/readline.rst:275 +#: library/readline.rst:277 msgid "" "Set or remove the completion display function. If *function* is specified, " "it will be used as the new completion display function; if omitted or " @@ -430,11 +434,11 @@ msgstr "" "``function(substitution, [matches], longest_match_length)`` une seule fois " "lorsque les correspondances doivent être affichées." -#: library/readline.rst:288 +#: library/readline.rst:290 msgid "Example" msgstr "Exemple" -#: library/readline.rst:290 +#: library/readline.rst:292 msgid "" "The following example demonstrates how to use the :mod:`readline` module's " "history reading and writing functions to automatically load and save a " @@ -449,7 +453,7 @@ msgstr "" "dessous doit normalement être exécuté automatiquement durant une session " "interactive depuis le fichier de l'utilisateur :envvar:`PYTHONSTARTUP`. ::" -#: library/readline.rst:310 +#: library/readline.rst:312 msgid "" "This code is actually automatically run when Python is run in :ref:" "`interactive mode ` (see :ref:`rlcompleter-config`)." @@ -457,7 +461,7 @@ msgstr "" "Ce code est en réalité automatiquement exécuté lorsque Python tourne en :ref:" "`mode interactif ` (voir :ref:`rlcompleter-config`)." -#: library/readline.rst:313 +#: library/readline.rst:315 msgid "" "The following example achieves the same goal but supports concurrent " "interactive sessions, by only appending the new history. ::" @@ -465,7 +469,7 @@ msgstr "" "L'exemple suivant atteint le même objectif mais gère des sessions " "interactives concurrentes, en ajoutant seulement le nouvel historique. ::" -#: library/readline.rst:334 +#: library/readline.rst:336 msgid "" "The following example extends the :class:`code.InteractiveConsole` class to " "support history save/restore. ::" diff --git a/library/resource.po b/library/resource.po index ef339730c..c668018d6 100644 --- a/library/resource.po +++ b/library/resource.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-11-29 21:18+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -283,15 +283,24 @@ msgstr "" msgid "The maximum number of pseudo-terminals created by this user id." msgstr "" -#: library/resource.rst:261 +#: library/resource.rst:262 +msgid "The maximum number of kqueues this user id is allowed to create." +msgstr "" + +#: library/resource.rst:265 +#, fuzzy +msgid ":ref:`Availability `: FreeBSD 11 or later." +msgstr ":ref:`Disponibilité ` : FreeBSD 9 et ultérieures." + +#: library/resource.rst:269 msgid "Resource Usage" msgstr "" -#: library/resource.rst:263 +#: library/resource.rst:271 msgid "These functions are used to retrieve resource usage information:" msgstr "" -#: library/resource.rst:268 +#: library/resource.rst:276 msgid "" "This function returns an object that describes the resources consumed by " "either the current process or its children, as specified by the *who* " @@ -299,11 +308,11 @@ msgid "" "`RUSAGE_\\*` constants described below." msgstr "" -#: library/resource.rst:273 +#: library/resource.rst:281 msgid "A simple example::" msgstr "Un exemple simple ::" -#: library/resource.rst:287 +#: library/resource.rst:295 msgid "" "The fields of the return value each describe how a particular system " "resource has been used, e.g. amount of time spent running is user mode or " @@ -312,13 +321,13 @@ msgid "" "is using." msgstr "" -#: library/resource.rst:292 +#: library/resource.rst:300 msgid "" "For backward compatibility, the return value is also accessible as a tuple " "of 16 elements." msgstr "" -#: library/resource.rst:295 +#: library/resource.rst:303 msgid "" "The fields :attr:`ru_utime` and :attr:`ru_stime` of the return value are " "floating point values representing the amount of time spent executing in " @@ -328,249 +337,249 @@ msgid "" "summary is presented here:" msgstr "" -#: library/resource.rst:302 +#: library/resource.rst:310 msgid "Index" msgstr "Index" -#: library/resource.rst:302 +#: library/resource.rst:310 msgid "Field" msgstr "Champ" -#: library/resource.rst:302 +#: library/resource.rst:310 msgid "Resource" msgstr "" -#: library/resource.rst:304 +#: library/resource.rst:312 msgid "``0``" msgstr "``0``" -#: library/resource.rst:304 +#: library/resource.rst:312 msgid ":attr:`ru_utime`" msgstr ":attr:`ru_utime`" -#: library/resource.rst:304 +#: library/resource.rst:312 msgid "time in user mode (float seconds)" msgstr "" -#: library/resource.rst:306 +#: library/resource.rst:314 msgid "``1``" msgstr "``1``" -#: library/resource.rst:306 +#: library/resource.rst:314 msgid ":attr:`ru_stime`" msgstr ":attr:`ru_stime`" -#: library/resource.rst:306 +#: library/resource.rst:314 msgid "time in system mode (float seconds)" msgstr "" -#: library/resource.rst:308 +#: library/resource.rst:316 msgid "``2``" msgstr "``2``" -#: library/resource.rst:308 +#: library/resource.rst:316 msgid ":attr:`ru_maxrss`" msgstr ":attr:`ru_maxrss`" -#: library/resource.rst:308 +#: library/resource.rst:316 msgid "maximum resident set size" msgstr "" -#: library/resource.rst:310 +#: library/resource.rst:318 msgid "``3``" msgstr "``3``" -#: library/resource.rst:310 +#: library/resource.rst:318 msgid ":attr:`ru_ixrss`" msgstr ":attr:`ru_ixrss`" -#: library/resource.rst:310 +#: library/resource.rst:318 msgid "shared memory size" msgstr "" -#: library/resource.rst:312 +#: library/resource.rst:320 msgid "``4``" msgstr "``4``" -#: library/resource.rst:312 +#: library/resource.rst:320 msgid ":attr:`ru_idrss`" msgstr ":attr:`ru_idrss`" -#: library/resource.rst:312 +#: library/resource.rst:320 msgid "unshared memory size" msgstr "" -#: library/resource.rst:314 +#: library/resource.rst:322 msgid "``5``" msgstr "``5``" -#: library/resource.rst:314 +#: library/resource.rst:322 msgid ":attr:`ru_isrss`" msgstr ":attr:`ru_isrss`" -#: library/resource.rst:314 +#: library/resource.rst:322 msgid "unshared stack size" msgstr "" -#: library/resource.rst:316 +#: library/resource.rst:324 msgid "``6``" msgstr "``6``" -#: library/resource.rst:316 +#: library/resource.rst:324 msgid ":attr:`ru_minflt`" msgstr ":attr:`ru_minflt`" -#: library/resource.rst:316 +#: library/resource.rst:324 msgid "page faults not requiring I/O" msgstr "" -#: library/resource.rst:318 +#: library/resource.rst:326 msgid "``7``" msgstr "``7``" -#: library/resource.rst:318 +#: library/resource.rst:326 msgid ":attr:`ru_majflt`" msgstr ":attr:`ru_majflt`" -#: library/resource.rst:318 +#: library/resource.rst:326 msgid "page faults requiring I/O" msgstr "" -#: library/resource.rst:320 +#: library/resource.rst:328 msgid "``8``" msgstr "``8``" -#: library/resource.rst:320 +#: library/resource.rst:328 msgid ":attr:`ru_nswap`" msgstr ":attr:`ru_nswap`" -#: library/resource.rst:320 +#: library/resource.rst:328 msgid "number of swap outs" msgstr "" -#: library/resource.rst:322 +#: library/resource.rst:330 msgid "``9``" msgstr "``9``" -#: library/resource.rst:322 +#: library/resource.rst:330 msgid ":attr:`ru_inblock`" msgstr ":attr:`ru_inblock`" -#: library/resource.rst:322 +#: library/resource.rst:330 msgid "block input operations" msgstr "" -#: library/resource.rst:324 +#: library/resource.rst:332 msgid "``10``" msgstr "``10``" -#: library/resource.rst:324 +#: library/resource.rst:332 msgid ":attr:`ru_oublock`" msgstr ":attr:`ru_oublock`" -#: library/resource.rst:324 +#: library/resource.rst:332 msgid "block output operations" msgstr "" -#: library/resource.rst:326 +#: library/resource.rst:334 msgid "``11``" msgstr "``11``" -#: library/resource.rst:326 +#: library/resource.rst:334 msgid ":attr:`ru_msgsnd`" msgstr ":attr:`ru_msgsnd`" -#: library/resource.rst:326 +#: library/resource.rst:334 msgid "messages sent" msgstr "" -#: library/resource.rst:328 +#: library/resource.rst:336 msgid "``12``" msgstr "``12``" -#: library/resource.rst:328 +#: library/resource.rst:336 msgid ":attr:`ru_msgrcv`" msgstr ":attr:`ru_msgrcv`" -#: library/resource.rst:328 +#: library/resource.rst:336 msgid "messages received" msgstr "" -#: library/resource.rst:330 +#: library/resource.rst:338 msgid "``13``" msgstr "``13``" -#: library/resource.rst:330 +#: library/resource.rst:338 msgid ":attr:`ru_nsignals`" msgstr ":attr:`ru_nsignals`" -#: library/resource.rst:330 +#: library/resource.rst:338 msgid "signals received" msgstr "" -#: library/resource.rst:332 +#: library/resource.rst:340 msgid "``14``" msgstr "``14``" -#: library/resource.rst:332 +#: library/resource.rst:340 msgid ":attr:`ru_nvcsw`" msgstr ":attr:`ru_nvcsw`" -#: library/resource.rst:332 +#: library/resource.rst:340 msgid "voluntary context switches" msgstr "" -#: library/resource.rst:334 +#: library/resource.rst:342 msgid "``15``" msgstr "``15``" -#: library/resource.rst:334 +#: library/resource.rst:342 msgid ":attr:`ru_nivcsw`" msgstr ":attr:`ru_nivcsw`" -#: library/resource.rst:334 +#: library/resource.rst:342 msgid "involuntary context switches" msgstr "" -#: library/resource.rst:337 +#: library/resource.rst:345 msgid "" "This function will raise a :exc:`ValueError` if an invalid *who* parameter " "is specified. It may also raise :exc:`error` exception in unusual " "circumstances." msgstr "" -#: library/resource.rst:343 +#: library/resource.rst:351 msgid "" "Returns the number of bytes in a system page. (This need not be the same as " "the hardware page size.)" msgstr "" -#: library/resource.rst:346 +#: library/resource.rst:354 msgid "" "The following :const:`RUSAGE_\\*` symbols are passed to the :func:" "`getrusage` function to specify which processes information should be " "provided for." msgstr "" -#: library/resource.rst:352 +#: library/resource.rst:360 msgid "" "Pass to :func:`getrusage` to request resources consumed by the calling " "process, which is the sum of resources used by all threads in the process." msgstr "" -#: library/resource.rst:358 +#: library/resource.rst:366 msgid "" "Pass to :func:`getrusage` to request resources consumed by child processes " "of the calling process which have been terminated and waited for." msgstr "" -#: library/resource.rst:364 +#: library/resource.rst:372 msgid "" "Pass to :func:`getrusage` to request resources consumed by both the current " "process and child processes. May not be available on all systems." msgstr "" -#: library/resource.rst:370 +#: library/resource.rst:378 msgid "" "Pass to :func:`getrusage` to request resources consumed by the current " "thread. May not be available on all systems." diff --git a/library/security_warnings.po b/library/security_warnings.po new file mode 100644 index 000000000..98521b982 --- /dev/null +++ b/library/security_warnings.po @@ -0,0 +1,100 @@ +# Copyright (C) 2001-2018, Python Software Foundation +# For licence information, see README file. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: FRENCH \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: library/security_warnings.rst:6 +msgid "Security Considerations" +msgstr "" + +#: library/security_warnings.rst:8 +msgid "The following modules have specific security considerations:" +msgstr "" + +#: library/security_warnings.rst:10 +msgid "" +":mod:`base64`: :ref:`base64 security considerations ` in :" +"rfc:`4648`" +msgstr "" + +#: library/security_warnings.rst:12 +msgid ":mod:`cgi`: :ref:`CGI security considerations `" +msgstr "" + +#: library/security_warnings.rst:13 +msgid "" +":mod:`hashlib`: :ref:`all constructors take a \"usedforsecurity\" keyword-" +"only argument disabling known insecure and blocked algorithms `" +msgstr "" + +#: library/security_warnings.rst:16 +msgid "" +":mod:`http.server` is not suitable for production use, only implementing " +"basic security checks" +msgstr "" + +#: library/security_warnings.rst:18 +msgid "" +":mod:`logging`: :ref:`Logging configuration uses eval() `" +msgstr "" + +#: library/security_warnings.rst:20 +msgid "" +":mod:`multiprocessing`: :ref:`Connection.recv() uses pickle `" +msgstr "" + +#: library/security_warnings.rst:22 +msgid ":mod:`pickle`: :ref:`Restricting globals in pickle `" +msgstr "" + +#: library/security_warnings.rst:23 +msgid "" +":mod:`random` shouldn't be used for security purposes, use :mod:`secrets` " +"instead" +msgstr "" + +#: library/security_warnings.rst:25 +msgid "" +":mod:`shelve`: :ref:`shelve is based on pickle and thus unsuitable for " +"dealing with untrusted sources `" +msgstr "" + +#: library/security_warnings.rst:27 +msgid ":mod:`ssl`: :ref:`SSL/TLS security considerations `" +msgstr "" + +#: library/security_warnings.rst:28 +msgid "" +":mod:`subprocess`: :ref:`Subprocess security considerations `" +msgstr "" + +#: library/security_warnings.rst:30 +msgid "" +":mod:`tempfile`: :ref:`mktemp is deprecated due to vulnerability to race " +"conditions `" +msgstr "" + +#: library/security_warnings.rst:32 +msgid ":mod:`xml`: :ref:`XML vulnerabilities `" +msgstr "" + +#: library/security_warnings.rst:33 +msgid "" +":mod:`zipfile`: :ref:`maliciously prepared .zip files can cause disk volume " +"exhaustion `" +msgstr "" diff --git a/library/select.po b/library/select.po index 14604bed1..1e0a7672c 100644 --- a/library/select.po +++ b/library/select.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -706,7 +706,7 @@ msgid ":const:`KQ_FILTER_NETDEV`" msgstr ":const:`KQ_FILTER_NETDEV`" #: library/select.rst:536 -msgid "Watch for events on a network device [not available on Mac OS X]" +msgid "Watch for events on a network device [not available on macOS]" msgstr "" #: library/select.rst:539 @@ -946,7 +946,7 @@ msgid "unable to attach to a child" msgstr "" #: library/select.rst:629 -msgid ":const:`KQ_FILTER_NETDEV` filter flags (not available on Mac OS X):" +msgid ":const:`KQ_FILTER_NETDEV` filter flags (not available on macOS):" msgstr "" #: library/select.rst:634 diff --git a/library/shelve.po b/library/shelve.po index ff69220f0..b512b4ea1 100644 --- a/library/shelve.po +++ b/library/shelve.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-09-04 11:44+0200\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -56,15 +56,17 @@ msgstr "" "possède la même interprétation que le paramètre *flag* de :func:`dbm.open`." #: library/shelve.rst:28 +#, fuzzy msgid "" -"By default, version 3 pickles are used to serialize values. The version of " -"the pickle protocol can be specified with the *protocol* parameter." +"By default, pickles created with :data:`pickle.DEFAULT_PROTOCOL` are used to " +"serialize values. The version of the pickle protocol can be specified with " +"the *protocol* parameter." msgstr "" "Par défaut, les *pickles* de version 3 sont utilisés pour sérialiser des " "valeurs. La version du protocole de *pickle* peut être spécifiée avec le " "paramètre *protocol*." -#: library/shelve.rst:31 +#: library/shelve.rst:32 msgid "" "Because of Python semantics, a shelf cannot know when a mutable persistent-" "dictionary entry is modified. By default modified objects are written " @@ -91,7 +93,12 @@ msgstr "" "écrites (il n'y a aucun moyen de savoir quelles entrées déjà accédées sont " "mutables, ni lesquelles ont été vraiment modifiées)." -#: library/shelve.rst:45 +#: library/shelve.rst:142 +msgid "" +":data:`pickle.DEFAULT_PROTOCOL` is now used as the default pickle protocol." +msgstr "" + +#: library/shelve.rst:50 msgid "" "Do not rely on the shelf being closed automatically; always call :meth:" "`~Shelf.close` explicitly when you don't need it any more, or use :func:" @@ -101,7 +108,7 @@ msgstr "" "meth:`~Shelf.close` explicitement quand vous n'en avez plus besoin, ou " "utilisez :func:`shelve.open` comme un gestionnaire de contexte ::" -#: library/shelve.rst:54 +#: library/shelve.rst:61 msgid "" "Because the :mod:`shelve` module is backed by :mod:`pickle`, it is insecure " "to load a shelf from an untrusted source. Like with pickle, loading a shelf " @@ -111,21 +118,23 @@ msgstr "" "n'est pas sûr de charger un *shelf* depuis une source non fiable. Comme avec " "*pickle*, charger un *shelf* peut exécuter du code arbitraire." -#: library/shelve.rst:58 +#: library/shelve.rst:65 +#, fuzzy msgid "" -"Shelf objects support all methods supported by dictionaries. This eases the " -"transition from dictionary based scripts to those requiring persistent " -"storage." +"Shelf objects support most of methods and operations supported by " +"dictionaries (except copying, constructors and operators ``|`` and ``|=``). " +"This eases the transition from dictionary based scripts to those requiring " +"persistent storage." msgstr "" "Les objets *shelf* gèrent toutes les méthodes des dictionnaires. Cela " "facilite la transition depuis les scripts utilisant des dictionnaires à ceux " "nécessitant un stockage persistant." -#: library/shelve.rst:61 +#: library/shelve.rst:69 msgid "Two additional methods are supported:" msgstr "Deux méthodes supplémentaires sont supportées :" -#: library/shelve.rst:65 +#: library/shelve.rst:73 msgid "" "Write back all entries in the cache if the shelf was opened with *writeback* " "set to :const:`True`. Also empty the cache and synchronize the persistent " @@ -137,7 +146,7 @@ msgstr "" "dictionnaire persistant sur le disque, si faisable. Elle est appelée " "automatiquement quand le *shelf* est fermé avec :meth:`close`." -#: library/shelve.rst:72 +#: library/shelve.rst:80 msgid "" "Synchronize and close the persistent *dict* object. Operations on a closed " "shelf will fail with a :exc:`ValueError`." @@ -145,7 +154,7 @@ msgstr "" "Synchronise et ferme l'objet *dict* persistant. Les opérations sur un " "*shelf* fermé échouent avec une :exc:`ValueError`." -#: library/shelve.rst:78 +#: library/shelve.rst:86 msgid "" "`Persistent dictionary recipe `_ with widely supported storage formats and having the speed of native " @@ -155,11 +164,11 @@ msgstr "" "recipes/576642/>`_ avec un large panel de formats de stockage et ayant la " "vitesse des dictionnaires natifs." -#: library/shelve.rst:84 +#: library/shelve.rst:92 msgid "Restrictions" msgstr "Limites" -#: library/shelve.rst:90 +#: library/shelve.rst:98 msgid "" "The choice of which database package will be used (such as :mod:`dbm.ndbm` " "or :mod:`dbm.gnu`) depends on which interface is available. Therefore it is " @@ -178,7 +187,7 @@ msgstr "" "des collisions de clés peuvent entraîner le refus de mises à jour de la base " "de données." -#: library/shelve.rst:98 +#: library/shelve.rst:106 msgid "" "The :mod:`shelve` module does not support *concurrent* read/write access to " "shelved objects. (Multiple simultaneous read accesses are safe.) When a " @@ -195,7 +204,7 @@ msgstr "" "version Unix et nécessite des connaissances à propos de l'implémentation de " "la base de données utilisée." -#: library/shelve.rst:108 +#: library/shelve.rst:116 msgid "" "A subclass of :class:`collections.abc.MutableMapping` which stores pickled " "values in the *dict* object." @@ -203,18 +212,20 @@ msgstr "" "Sous-classe de :class:`collections.abc.MutableMapping` qui stocke les " "valeurs sérialisées par *pickle* dans l'objet *dict*." -#: library/shelve.rst:111 +#: library/shelve.rst:119 +#, fuzzy msgid "" -"By default, version 3 pickles are used to serialize values. The version of " -"the pickle protocol can be specified with the *protocol* parameter. See the :" -"mod:`pickle` documentation for a discussion of the pickle protocols." +"By default, pickles created with :data:`pickle.DEFAULT_PROTOCOL` are used to " +"serialize values. The version of the pickle protocol can be specified with " +"the *protocol* parameter. See the :mod:`pickle` documentation for a " +"discussion of the pickle protocols." msgstr "" "Par défaut, les *pickles* de version 3 sont utilisés pour sérialiser les " "valeurs. La version du protocole *pickle* peut être spécifiée avec le " "paramètre *protocol*. Voir la documentation de :mod:`pickle` pour plus " "d'informations sur les protocoles *pickle*." -#: library/shelve.rst:115 +#: library/shelve.rst:124 msgid "" "If the *writeback* parameter is ``True``, the object will hold a cache of " "all entries accessed and write them back to the *dict* at sync and close " @@ -227,7 +238,7 @@ msgstr "" "modifiables, mais peut consommer beaucoup plus de mémoire et rendre les " "temps de synchronisation et de fermeture très longs." -#: library/shelve.rst:120 +#: library/shelve.rst:129 msgid "" "The *keyencoding* parameter is the encoding used to encode keys before they " "are used with the underlying dict." @@ -235,7 +246,7 @@ msgstr "" "Le paramètre *keyencoding* est l'encodage utilisé pour encoder les clés " "avant qu'elles soient utilisées avec le dictionnaire sous-jacent." -#: library/shelve.rst:123 +#: library/shelve.rst:132 msgid "" "A :class:`Shelf` object can also be used as a context manager, in which case " "it will be automatically closed when the :keyword:`with` block ends." @@ -244,7 +255,7 @@ msgstr "" "contexte ; il est automatiquement fermé lorsque le bloc :keyword:`with` est " "terminé." -#: library/shelve.rst:126 +#: library/shelve.rst:135 msgid "" "Added the *keyencoding* parameter; previously, keys were always encoded in " "UTF-8." @@ -252,11 +263,11 @@ msgstr "" "Ajout du paramètre *keyencoding* ; précédemment, les clés étaient toujours " "encodées en UTF-8." -#: library/shelve.rst:130 +#: library/shelve.rst:139 msgid "Added context manager support." msgstr "Ajout de la gestion des gestionnaires de contexte." -#: library/shelve.rst:136 +#: library/shelve.rst:149 msgid "" "A subclass of :class:`Shelf` which exposes :meth:`first`, :meth:`!next`, :" "meth:`previous`, :meth:`last` and :meth:`set_location` which are available " @@ -278,7 +289,7 @@ msgstr "" "rnopen`. Les paramètres optionnels *protocol*, *writeback*, et *keyencoding* " "ont la même signification que pour la classe :class:`Shelf`." -#: library/shelve.rst:149 +#: library/shelve.rst:162 msgid "" "A subclass of :class:`Shelf` which accepts a *filename* instead of a dict-" "like object. The underlying file will be opened using :func:`dbm.open`. By " @@ -295,11 +306,11 @@ msgstr "" "*writeback* s'interprètent de la même manière que pour la classe :class:" "`Shelf`." -#: library/shelve.rst:160 +#: library/shelve.rst:173 msgid "Example" msgstr "Exemple" -#: library/shelve.rst:162 +#: library/shelve.rst:175 msgid "" "To summarize the interface (``key`` is a string, ``data`` is an arbitrary " "object)::" @@ -307,18 +318,18 @@ msgstr "" "Pour résumer l'interface (``key`` est une chaîne de caractère, ``data`` est " "un objet arbitraire) ::" -#: library/shelve.rst:199 +#: library/shelve.rst:212 msgid "Module :mod:`dbm`" msgstr "Module :mod:`dbm`" -#: library/shelve.rst:199 +#: library/shelve.rst:212 msgid "Generic interface to ``dbm``-style databases." msgstr "Interface générique de base de données style ``dbm``." -#: library/shelve.rst:201 +#: library/shelve.rst:214 msgid "Module :mod:`pickle`" msgstr "Module :mod:`pickle`" -#: library/shelve.rst:202 +#: library/shelve.rst:215 msgid "Object serialization used by :mod:`shelve`." msgstr "Sérialisation d'objet utilisé par :mod:`shelve`." diff --git a/library/shlex.po b/library/shlex.po index ae86a5b40..343846553 100644 --- a/library/shlex.po +++ b/library/shlex.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -76,24 +76,42 @@ msgid "" "cases where you cannot use a list." msgstr "" -#: library/shlex.rst:64 +#: library/shlex.rst:68 +msgid "The ``shlex`` module is **only designed for Unix shells**." +msgstr "" + +#: library/shlex.rst:70 +msgid "" +"The :func:`quote` function is not guaranteed to be correct on non-POSIX " +"compliant shells or shells from other operating systems such as Windows. " +"Executing commands quoted by this module on such shells can open up the " +"possibility of a command injection vulnerability." +msgstr "" + +#: library/shlex.rst:75 +msgid "" +"Consider using functions that pass command arguments with lists such as :" +"func:`subprocess.run` with ``shell=False``." +msgstr "" + +#: library/shlex.rst:78 msgid "This idiom would be unsafe:" msgstr "" -#: library/shlex.rst:71 +#: library/shlex.rst:85 msgid ":func:`quote` lets you plug the security hole:" msgstr "" -#: library/shlex.rst:81 +#: library/shlex.rst:95 msgid "The quoting is compatible with UNIX shells and with :func:`split`:" msgstr "" -#: library/shlex.rst:93 +#: library/shlex.rst:107 #, fuzzy msgid "The :mod:`shlex` module defines the following class:" msgstr "Le module :mod:`csv` définit les classes suivantes :" -#: library/shlex.rst:98 +#: library/shlex.rst:112 msgid "" "A :class:`~shlex.shlex` instance or subclass instance is a lexical analyzer " "object. The initialization argument, if present, specifies where to read " @@ -120,28 +138,28 @@ msgid "" "creation and can't be modified later." msgstr "" -#: library/shlex.rst:123 +#: library/shlex.rst:137 msgid "The *punctuation_chars* parameter was added." msgstr "" -#: library/shlex.rst:128 +#: library/shlex.rst:142 msgid "Module :mod:`configparser`" msgstr "" -#: library/shlex.rst:129 +#: library/shlex.rst:143 msgid "" "Parser for configuration files similar to the Windows :file:`.ini` files." msgstr "" -#: library/shlex.rst:135 +#: library/shlex.rst:149 msgid "shlex Objects" msgstr "" -#: library/shlex.rst:137 +#: library/shlex.rst:151 msgid "A :class:`~shlex.shlex` instance has the following methods:" msgstr "" -#: library/shlex.rst:142 +#: library/shlex.rst:156 msgid "" "Return a token. If tokens have been stacked using :meth:`push_token`, pop a " "token off the stack. Otherwise, read one from the input stream. If reading " @@ -149,25 +167,25 @@ msgid "" "string (``''``) in non-POSIX mode, and ``None`` in POSIX mode)." msgstr "" -#: library/shlex.rst:150 +#: library/shlex.rst:164 msgid "Push the argument onto the token stack." msgstr "" -#: library/shlex.rst:155 +#: library/shlex.rst:169 msgid "" "Read a raw token. Ignore the pushback stack, and do not interpret source " "requests. (This is not ordinarily a useful entry point, and is documented " "here only for the sake of completeness.)" msgstr "" -#: library/shlex.rst:162 +#: library/shlex.rst:176 msgid "" "When :class:`~shlex.shlex` detects a source request (see :attr:`source` " "below) this method is given the following token as argument, and expected to " "return a tuple consisting of a filename and an open file-like object." msgstr "" -#: library/shlex.rst:166 +#: library/shlex.rst:180 msgid "" "Normally, this method first strips any quotes off the argument. If the " "result is an absolute pathname, or there was no previous source request in " @@ -178,7 +196,7 @@ msgid "" "preprocessor handles ``#include \"file.h\"``)." msgstr "" -#: library/shlex.rst:174 +#: library/shlex.rst:188 msgid "" "The result of the manipulations is treated as a filename, and returned as " "the first component of the tuple, with :func:`open` called on it to yield " @@ -186,7 +204,7 @@ msgid "" "in instance initialization!)" msgstr "" -#: library/shlex.rst:179 +#: library/shlex.rst:193 msgid "" "This hook is exposed so that you can use it to implement directory search " "paths, addition of file extensions, and other namespace hacks. There is no " @@ -194,26 +212,26 @@ msgid "" "IOBase.close` method of the sourced input stream when it returns EOF." msgstr "" -#: library/shlex.rst:185 +#: library/shlex.rst:199 msgid "" "For more explicit control of source stacking, use the :meth:`push_source` " "and :meth:`pop_source` methods." msgstr "" -#: library/shlex.rst:191 +#: library/shlex.rst:205 msgid "" "Push an input source stream onto the input stack. If the filename argument " "is specified it will later be available for use in error messages. This is " "the same method used internally by the :meth:`sourcehook` method." msgstr "" -#: library/shlex.rst:198 +#: library/shlex.rst:212 msgid "" "Pop the last-pushed input source from the input stack. This is the same " "method used internally when the lexer reaches EOF on a stacked input stream." msgstr "" -#: library/shlex.rst:204 +#: library/shlex.rst:218 msgid "" "This method generates an error message leader in the format of a Unix C " "compiler error label; the format is ``'\"%s\", line %d: '``, where the ``" @@ -222,27 +240,27 @@ msgid "" "override these)." msgstr "" -#: library/shlex.rst:209 +#: library/shlex.rst:223 msgid "" "This convenience is provided to encourage :mod:`shlex` users to generate " "error messages in the standard, parseable format understood by Emacs and " "other Unix tools." msgstr "" -#: library/shlex.rst:213 +#: library/shlex.rst:227 msgid "" "Instances of :class:`~shlex.shlex` subclasses have some public instance " "variables which either control lexical analysis or can be used for debugging:" msgstr "" -#: library/shlex.rst:219 +#: library/shlex.rst:233 msgid "" "The string of characters that are recognized as comment beginners. All " "characters from the comment beginner to end of line are ignored. Includes " "just ``'#'`` by default." msgstr "" -#: library/shlex.rst:226 +#: library/shlex.rst:240 msgid "" "The string of characters that will accumulate into multi-character tokens. " "By default, includes all ASCII alphanumerics and underscore. In POSIX mode, " @@ -255,20 +273,20 @@ msgid "" "effect." msgstr "" -#: library/shlex.rst:239 +#: library/shlex.rst:253 msgid "" "Characters that will be considered whitespace and skipped. Whitespace " "bounds tokens. By default, includes space, tab, linefeed and carriage-" "return." msgstr "" -#: library/shlex.rst:245 +#: library/shlex.rst:259 msgid "" "Characters that will be considered as escape. This will be only used in " "POSIX mode, and includes just ``'\\'`` by default." msgstr "" -#: library/shlex.rst:251 +#: library/shlex.rst:265 msgid "" "Characters that will be considered string quotes. The token accumulates " "until the same quote is encountered again (thus, different quote types " @@ -276,14 +294,14 @@ msgid "" "double quotes." msgstr "" -#: library/shlex.rst:258 +#: library/shlex.rst:272 msgid "" "Characters in :attr:`quotes` that will interpret escape characters defined " "in :attr:`escape`. This is only used in POSIX mode, and includes just " "``'\"'`` by default." msgstr "" -#: library/shlex.rst:265 +#: library/shlex.rst:279 msgid "" "If ``True``, tokens will only be split in whitespaces. This is useful, for " "example, for parsing command lines with :class:`~shlex.shlex`, getting " @@ -292,26 +310,26 @@ msgid "" "those characters." msgstr "" -#: library/shlex.rst:271 +#: library/shlex.rst:285 msgid "" "The :attr:`punctuation_chars` attribute was made compatible with the :attr:" "`whitespace_split` attribute." msgstr "" -#: library/shlex.rst:278 +#: library/shlex.rst:292 msgid "" "The name of the current input file, as initially set at class instantiation " "time or stacked by later source requests. It may be useful to examine this " "when constructing error messages." msgstr "" -#: library/shlex.rst:285 +#: library/shlex.rst:299 msgid "" "The input stream from which this :class:`~shlex.shlex` instance is reading " "characters." msgstr "" -#: library/shlex.rst:291 +#: library/shlex.rst:305 msgid "" "This attribute is ``None`` by default. If you assign a string to it, that " "string will be recognized as a lexical-level inclusion request similar to " @@ -323,29 +341,29 @@ msgid "" "deep." msgstr "" -#: library/shlex.rst:302 +#: library/shlex.rst:316 msgid "" "If this attribute is numeric and ``1`` or more, a :class:`~shlex.shlex` " "instance will print verbose progress output on its behavior. If you need to " "use this, you can read the module source code to learn the details." msgstr "" -#: library/shlex.rst:309 +#: library/shlex.rst:323 msgid "Source line number (count of newlines seen so far plus one)." msgstr "" -#: library/shlex.rst:314 +#: library/shlex.rst:328 msgid "" "The token buffer. It may be useful to examine this when catching exceptions." msgstr "" -#: library/shlex.rst:319 +#: library/shlex.rst:333 msgid "" "Token used to determine end of file. This will be set to the empty string " "(``''``), in non-POSIX mode, and to ``None`` in POSIX mode." msgstr "" -#: library/shlex.rst:325 +#: library/shlex.rst:339 msgid "" "A read-only property. Characters that will be considered punctuation. Runs " "of punctuation characters will be returned as a single token. However, note " @@ -354,39 +372,39 @@ msgid "" "by shells." msgstr "" -#: library/shlex.rst:336 +#: library/shlex.rst:350 msgid "Parsing Rules" msgstr "" -#: library/shlex.rst:338 +#: library/shlex.rst:352 msgid "" "When operating in non-POSIX mode, :class:`~shlex.shlex` will try to obey to " "the following rules." msgstr "" -#: library/shlex.rst:341 +#: library/shlex.rst:355 msgid "" "Quote characters are not recognized within words (``Do\"Not\"Separate`` is " "parsed as the single word ``Do\"Not\"Separate``);" msgstr "" -#: library/shlex.rst:344 +#: library/shlex.rst:358 msgid "Escape characters are not recognized;" msgstr "" -#: library/shlex.rst:346 +#: library/shlex.rst:360 msgid "" "Enclosing characters in quotes preserve the literal value of all characters " "within the quotes;" msgstr "" -#: library/shlex.rst:349 +#: library/shlex.rst:363 msgid "" "Closing quotes separate words (``\"Do\"Separate`` is parsed as ``\"Do\"`` " "and ``Separate``);" msgstr "" -#: library/shlex.rst:352 +#: library/shlex.rst:366 msgid "" "If :attr:`~shlex.whitespace_split` is ``False``, any character not declared " "to be a word character, whitespace, or a quote will be returned as a single-" @@ -394,40 +412,40 @@ msgid "" "words in whitespaces;" msgstr "" -#: library/shlex.rst:357 +#: library/shlex.rst:371 msgid "EOF is signaled with an empty string (``''``);" msgstr "" -#: library/shlex.rst:359 +#: library/shlex.rst:373 msgid "It's not possible to parse empty strings, even if quoted." msgstr "" -#: library/shlex.rst:361 +#: library/shlex.rst:375 msgid "" "When operating in POSIX mode, :class:`~shlex.shlex` will try to obey to the " "following parsing rules." msgstr "" -#: library/shlex.rst:364 +#: library/shlex.rst:378 msgid "" "Quotes are stripped out, and do not separate words (``\"Do\"Not\"Separate" "\"`` is parsed as the single word ``DoNotSeparate``);" msgstr "" -#: library/shlex.rst:367 +#: library/shlex.rst:381 msgid "" "Non-quoted escape characters (e.g. ``'\\'``) preserve the literal value of " "the next character that follows;" msgstr "" -#: library/shlex.rst:370 +#: library/shlex.rst:384 msgid "" "Enclosing characters in quotes which are not part of :attr:`~shlex." "escapedquotes` (e.g. ``\"'\"``) preserve the literal value of all characters " "within the quotes;" msgstr "" -#: library/shlex.rst:374 +#: library/shlex.rst:388 msgid "" "Enclosing characters in quotes which are part of :attr:`~shlex." "escapedquotes` (e.g. ``'\"'``) preserves the literal value of all characters " @@ -437,19 +455,19 @@ msgid "" "escape character will be considered a normal character." msgstr "" -#: library/shlex.rst:382 +#: library/shlex.rst:396 msgid "EOF is signaled with a :const:`None` value;" msgstr "" -#: library/shlex.rst:384 +#: library/shlex.rst:398 msgid "Quoted empty strings (``''``) are allowed." msgstr "" -#: library/shlex.rst:389 +#: library/shlex.rst:403 msgid "Improved Compatibility with Shells" msgstr "" -#: library/shlex.rst:393 +#: library/shlex.rst:407 msgid "" "The :class:`shlex` class provides compatibility with the parsing performed " "by common Unix shells like ``bash``, ``dash``, and ``sh``. To take " @@ -464,20 +482,20 @@ msgid "" "following snippet:" msgstr "" -#: library/shlex.rst:419 +#: library/shlex.rst:433 msgid "" "Of course, tokens will be returned which are not valid for shells, and " "you'll need to implement your own error checks on the returned tokens." msgstr "" -#: library/shlex.rst:422 +#: library/shlex.rst:436 msgid "" "Instead of passing ``True`` as the value for the punctuation_chars " "parameter, you can pass a string with specific characters, which will be " "used to determine which characters constitute punctuation. For example::" msgstr "" -#: library/shlex.rst:431 +#: library/shlex.rst:445 msgid "" "When ``punctuation_chars`` is specified, the :attr:`~shlex.wordchars` " "attribute is augmented with the characters ``~-./*?=``. That is because " @@ -485,7 +503,7 @@ msgid "" "line arguments (e.g. ``--color=auto``). Hence::" msgstr "" -#: library/shlex.rst:442 +#: library/shlex.rst:456 msgid "" "However, to match the shell as closely as possible, it is recommended to " "always use ``posix`` and :attr:`~shlex.whitespace_split` when using :attr:" @@ -493,7 +511,7 @@ msgid "" "entirely." msgstr "" -#: library/shlex.rst:447 +#: library/shlex.rst:461 msgid "" "For best effect, ``punctuation_chars`` should be set in conjunction with " "``posix=True``. (Note that ``posix=False`` is the default for :class:`~shlex." diff --git a/library/shutil.po b/library/shutil.po index cae0ec417..8e51b3b4a 100644 --- a/library/shutil.po +++ b/library/shutil.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-11-29 18:26+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -754,54 +754,58 @@ msgid "" "arguments ``base_name``, ``format``, ``root_dir``, ``base_dir``." msgstr "" -#: library/shutil.rst:598 +#: library/shutil.rst:600 +msgid "This function is not thread-safe." +msgstr "" + +#: library/shutil.rst:602 msgid "" "The modern pax (POSIX.1-2001) format is now used instead of the legacy GNU " "format for archives created with ``format=\"tar\"``." msgstr "" -#: library/shutil.rst:605 +#: library/shutil.rst:609 msgid "" "Return a list of supported formats for archiving. Each element of the " "returned sequence is a tuple ``(name, description)``." msgstr "" -#: library/shutil.rst:690 +#: library/shutil.rst:694 msgid "By default :mod:`shutil` provides these formats:" msgstr "" -#: library/shutil.rst:610 +#: library/shutil.rst:614 msgid "*zip*: ZIP file (if the :mod:`zlib` module is available)." msgstr "" -#: library/shutil.rst:611 +#: library/shutil.rst:615 msgid "" "*tar*: Uncompressed tar file. Uses POSIX.1-2001 pax format for new archives." msgstr "" -#: library/shutil.rst:695 +#: library/shutil.rst:699 msgid "*gztar*: gzip'ed tar-file (if the :mod:`zlib` module is available)." msgstr "" -#: library/shutil.rst:696 +#: library/shutil.rst:700 msgid "*bztar*: bzip2'ed tar-file (if the :mod:`bz2` module is available)." msgstr "" -#: library/shutil.rst:697 +#: library/shutil.rst:701 msgid "*xztar*: xz'ed tar-file (if the :mod:`lzma` module is available)." msgstr "" -#: library/shutil.rst:616 +#: library/shutil.rst:620 msgid "" "You can register new formats or provide your own archiver for any existing " "formats, by using :func:`register_archive_format`." msgstr "" -#: library/shutil.rst:622 +#: library/shutil.rst:626 msgid "Register an archiver for the format *name*." msgstr "" -#: library/shutil.rst:624 +#: library/shutil.rst:628 msgid "" "*function* is the callable that will be used to unpack archives. The " "callable will receive the *base_name* of the file to create, followed by the " @@ -810,33 +814,33 @@ msgid "" "*dry_run* and *logger* (as passed in :func:`make_archive`)." msgstr "" -#: library/shutil.rst:630 +#: library/shutil.rst:634 msgid "" "If given, *extra_args* is a sequence of ``(name, value)`` pairs that will be " "used as extra keywords arguments when the archiver callable is used." msgstr "" -#: library/shutil.rst:633 +#: library/shutil.rst:637 msgid "" "*description* is used by :func:`get_archive_formats` which returns the list " "of archivers. Defaults to an empty string." msgstr "" -#: library/shutil.rst:639 +#: library/shutil.rst:643 msgid "Remove the archive format *name* from the list of supported formats." msgstr "" -#: library/shutil.rst:644 +#: library/shutil.rst:648 msgid "Unpack an archive. *filename* is the full path of the archive." msgstr "" -#: library/shutil.rst:646 +#: library/shutil.rst:650 msgid "" "*extract_dir* is the name of the target directory where the archive is " "unpacked. If not provided, the current working directory is used." msgstr "" -#: library/shutil.rst:649 +#: library/shutil.rst:653 msgid "" "*format* is the archive format: one of \"zip\", \"tar\", \"gztar\", \"bztar" "\", or \"xztar\". Or any other format registered with :func:" @@ -845,126 +849,126 @@ msgid "" "that extension. In case none is found, a :exc:`ValueError` is raised." msgstr "" -#: library/shutil.rst:656 +#: library/shutil.rst:660 msgid "" "Raises an :ref:`auditing event ` ``shutil.unpack_archive`` with " "arguments ``filename``, ``extract_dir``, ``format``." msgstr "" -#: library/shutil.rst:658 +#: library/shutil.rst:662 msgid "Accepts a :term:`path-like object` for *filename* and *extract_dir*." msgstr "" -#: library/shutil.rst:664 +#: library/shutil.rst:668 msgid "" "Registers an unpack format. *name* is the name of the format and " "*extensions* is a list of extensions corresponding to the format, like ``." "zip`` for Zip files." msgstr "" -#: library/shutil.rst:668 +#: library/shutil.rst:672 msgid "" "*function* is the callable that will be used to unpack archives. The " "callable will receive the path of the archive, followed by the directory the " "archive must be extracted to." msgstr "" -#: library/shutil.rst:672 +#: library/shutil.rst:676 msgid "" "When provided, *extra_args* is a sequence of ``(name, value)`` tuples that " "will be passed as keywords arguments to the callable." msgstr "" -#: library/shutil.rst:675 +#: library/shutil.rst:679 msgid "" "*description* can be provided to describe the format, and will be returned " "by the :func:`get_unpack_formats` function." msgstr "" -#: library/shutil.rst:681 +#: library/shutil.rst:685 msgid "Unregister an unpack format. *name* is the name of the format." msgstr "" -#: library/shutil.rst:686 +#: library/shutil.rst:690 msgid "" "Return a list of all registered formats for unpacking. Each element of the " "returned sequence is a tuple ``(name, extensions, description)``." msgstr "" -#: library/shutil.rst:692 +#: library/shutil.rst:696 msgid "" "*zip*: ZIP file (unpacking compressed files works only if the corresponding " "module is available)." msgstr "" -#: library/shutil.rst:694 +#: library/shutil.rst:698 msgid "*tar*: uncompressed tar file." msgstr "" -#: library/shutil.rst:699 +#: library/shutil.rst:703 msgid "" "You can register new formats or provide your own unpacker for any existing " "formats, by using :func:`register_unpack_format`." msgstr "" -#: library/shutil.rst:706 +#: library/shutil.rst:710 msgid "Archiving example" msgstr "" -#: library/shutil.rst:708 +#: library/shutil.rst:712 msgid "" "In this example, we create a gzip'ed tar-file archive containing all files " "found in the :file:`.ssh` directory of the user::" msgstr "" -#: library/shutil.rst:718 +#: library/shutil.rst:722 msgid "The resulting archive contains:" msgstr "" -#: library/shutil.rst:736 +#: library/shutil.rst:740 msgid "Archiving example with *base_dir*" msgstr "" -#: library/shutil.rst:738 +#: library/shutil.rst:742 msgid "" "In this example, similar to the `one above `_, we " "show how to use :func:`make_archive`, but this time with the usage of " "*base_dir*. We now have the following directory structure:" msgstr "" -#: library/shutil.rst:752 +#: library/shutil.rst:756 msgid "" "In the final archive, :file:`please_add.txt` should be included, but :file:" "`do_not_add.txt` should not. Therefore we use the following::" msgstr "" -#: library/shutil.rst:766 +#: library/shutil.rst:770 msgid "Listing the files in the resulting archive gives us:" msgstr "" -#: library/shutil.rst:776 +#: library/shutil.rst:780 msgid "Querying the size of the output terminal" msgstr "" -#: library/shutil.rst:780 +#: library/shutil.rst:784 msgid "Get the size of the terminal window." msgstr "" -#: library/shutil.rst:782 +#: library/shutil.rst:786 msgid "" "For each of the two dimensions, the environment variable, ``COLUMNS`` and " "``LINES`` respectively, is checked. If the variable is defined and the value " "is a positive integer, it is used." msgstr "" -#: library/shutil.rst:786 +#: library/shutil.rst:790 msgid "" "When ``COLUMNS`` or ``LINES`` is not defined, which is the common case, the " "terminal connected to :data:`sys.__stdout__` is queried by invoking :func:" "`os.get_terminal_size`." msgstr "" -#: library/shutil.rst:790 +#: library/shutil.rst:794 msgid "" "If the terminal size cannot be successfully queried, either because the " "system doesn't support querying, or because we are not connected to a " @@ -973,11 +977,11 @@ msgid "" "emulators." msgstr "" -#: library/shutil.rst:796 +#: library/shutil.rst:800 msgid "The value returned is a named tuple of type :class:`os.terminal_size`." msgstr "" -#: library/shutil.rst:798 +#: library/shutil.rst:802 msgid "" "See also: The Single UNIX Specification, Version 2, `Other Environment " "Variables`_." diff --git a/library/signal.po b/library/signal.po index 8bd2524e8..fd29796c5 100644 --- a/library/signal.po +++ b/library/signal.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-11-29 18:27+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -491,10 +491,13 @@ msgid ":data:`SIGKILL` and :data:`SIGSTOP` cannot be blocked." msgstr "" #: library/signal.rst:421 +#, fuzzy msgid "" ":ref:`Availability `: Unix. See the man page :manpage:" -"`sigprocmask(3)` and :manpage:`pthread_sigmask(3)` for further information." +"`sigprocmask(2)` and :manpage:`pthread_sigmask(3)` for further information." msgstr "" +":ref:`Disponibilité ` : Unix (regardez la page man pour :" +"manpage:`pthread_getcpuclockid(3)` pour plus d’information)." #: library/signal.rst:422 msgid "See also :func:`pause`, :func:`sigpending` and :func:`sigwait`." diff --git a/library/site.po b/library/site.po index a848bab8c..3e77882b5 100644 --- a/library/site.po +++ b/library/site.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-15 22:05+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -50,7 +50,7 @@ msgid "" "part. For the head part, it uses ``sys.prefix`` and ``sys.exec_prefix``; " "empty heads are skipped. For the tail part, it uses the empty string and " "then :file:`lib/site-packages` (on Windows) or :file:`lib/python{X.Y}/site-" -"packages` (on Unix and Macintosh). For each of the distinct head-tail " +"packages` (on Unix and macOS). For each of the distinct head-tail " "combinations, it sees if it refers to an existing directory, and if so, adds " "it to ``sys.path`` and also inspects the newly added path for configuration " "files." @@ -198,8 +198,8 @@ msgstr "" msgid "" "Path to the user site-packages for the running Python. Can be ``None`` if :" "func:`getusersitepackages` hasn't been called yet. Default value is :file:" -"`~/.local/lib/python{X.Y}/site-packages` for UNIX and non-framework Mac OS X " -"builds, :file:`~/Library/Python/{X.Y}/lib/python/site-packages` for Mac " +"`~/.local/lib/python{X.Y}/site-packages` for UNIX and non-framework macOS " +"builds, :file:`~/Library/Python/{X.Y}/lib/python/site-packages` for macOS " "framework builds, and :file:`{%APPDATA%}\\\\Python\\\\Python{XY}\\\\site-" "packages` on Windows. This directory is a site directory, which means that :" "file:`.pth` files in it will be processed." @@ -209,8 +209,8 @@ msgstr "" msgid "" "Path to the base directory for the user site-packages. Can be ``None`` if :" "func:`getuserbase` hasn't been called yet. Default value is :file:`~/." -"local` for UNIX and Mac OS X non-framework builds, :file:`~/Library/Python/" -"{X.Y}` for Mac framework builds, and :file:`{%APPDATA%}\\\\Python` for " +"local` for UNIX and macOS non-framework builds, :file:`~/Library/Python/{X.Y}" +"` for macOS framework builds, and :file:`{%APPDATA%}\\\\Python` for " "Windows. This value is used by Distutils to compute the installation " "directories for scripts, data files, Python modules, etc. for the :ref:`user " "installation scheme `. See also :envvar:" diff --git a/library/smtpd.po b/library/smtpd.po index 6a103ddde..94182da30 100644 --- a/library/smtpd.po +++ b/library/smtpd.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-07-03 10:55+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -26,37 +26,37 @@ msgstr "**Code source :** :source:`Lib/smtpd.py`" msgid "This module offers several classes to implement SMTP (email) servers." msgstr "" -#: library/smtpd.rst:18 +#: library/smtpd.rst:16 msgid "" -"The `aiosmtpd `_ package is a recommended " +"The `aiosmtpd `_ package is a recommended " "replacement for this module. It is based on :mod:`asyncio` and provides a " -"more straightforward API. :mod:`smtpd` should be considered deprecated." +"more straightforward API." msgstr "" -#: library/smtpd.rst:22 +#: library/smtpd.rst:21 msgid "" "Several server implementations are present; one is a generic do-nothing " "implementation, which can be overridden, while the other two offer specific " "mail-sending strategies." msgstr "" -#: library/smtpd.rst:26 +#: library/smtpd.rst:25 msgid "" "Additionally the SMTPChannel may be extended to implement very specific " "interaction behaviour with SMTP clients." msgstr "" -#: library/smtpd.rst:29 +#: library/smtpd.rst:28 msgid "" "The code supports :RFC:`5321`, plus the :rfc:`1870` SIZE and :rfc:`6531` " "SMTPUTF8 extensions." msgstr "" -#: library/smtpd.rst:34 +#: library/smtpd.rst:33 msgid "SMTPServer Objects" msgstr "" -#: library/smtpd.rst:40 +#: library/smtpd.rst:39 msgid "" "Create a new :class:`SMTPServer` object, which binds to local address " "*localaddr*. It will treat *remoteaddr* as an upstream SMTP relayer. Both " @@ -65,20 +65,20 @@ msgid "" "insert itself into :mod:`asyncore`'s event loop on instantiation." msgstr "" -#: library/smtpd.rst:174 +#: library/smtpd.rst:173 msgid "" "*data_size_limit* specifies the maximum number of bytes that will be " "accepted in a ``DATA`` command. A value of ``None`` or ``0`` means no limit." msgstr "" -#: library/smtpd.rst:50 +#: library/smtpd.rst:49 msgid "" "*map* is the socket map to use for connections (an initially empty " "dictionary is a suitable value). If not specified the :mod:`asyncore` " "global socket map is used." msgstr "" -#: library/smtpd.rst:54 +#: library/smtpd.rst:53 msgid "" "*enable_SMTPUTF8* determines whether the ``SMTPUTF8`` extension (as defined " "in :RFC:`6531`) should be enabled. The default is ``False``. When ``True``, " @@ -88,7 +88,7 @@ msgid "" "be set to ``True`` at the same time." msgstr "" -#: library/smtpd.rst:61 +#: library/smtpd.rst:60 msgid "" "*decode_data* specifies whether the data portion of the SMTP transaction " "should be decoded using UTF-8. When *decode_data* is ``False`` (the " @@ -99,7 +99,7 @@ msgid "" "be set to ``True`` at the same time." msgstr "" -#: library/smtpd.rst:71 +#: library/smtpd.rst:70 msgid "" "Raise a :exc:`NotImplementedError` exception. Override this in subclasses to " "do something useful with this message. Whatever was passed in the " @@ -110,110 +110,110 @@ msgid "" "format)." msgstr "" -#: library/smtpd.rst:79 +#: library/smtpd.rst:78 msgid "" "If the *decode_data* constructor keyword is set to ``True``, the *data* " "argument will be a unicode string. If it is set to ``False``, it will be a " "bytes object." msgstr "" -#: library/smtpd.rst:83 +#: library/smtpd.rst:82 msgid "" "*kwargs* is a dictionary containing additional information. It is empty if " "``decode_data=True`` was given as an init argument, otherwise it contains " "the following keys:" msgstr "" -#: library/smtpd.rst:90 +#: library/smtpd.rst:89 msgid "*mail_options*:" msgstr "" -#: library/smtpd.rst:88 +#: library/smtpd.rst:87 msgid "" "a list of all received parameters to the ``MAIL`` command (the elements are " "uppercase strings; example: ``['BODY=8BITMIME', 'SMTPUTF8']``)." msgstr "" -#: library/smtpd.rst:95 +#: library/smtpd.rst:94 msgid "*rcpt_options*:" msgstr "" -#: library/smtpd.rst:93 +#: library/smtpd.rst:92 msgid "" "same as *mail_options* but for the ``RCPT`` command. Currently no ``RCPT " "TO`` options are supported, so for now this will always be an empty list." msgstr "" -#: library/smtpd.rst:97 +#: library/smtpd.rst:96 msgid "" "Implementations of ``process_message`` should use the ``**kwargs`` signature " "to accept arbitrary keyword arguments, since future feature enhancements may " "add keys to the kwargs dictionary." msgstr "" -#: library/smtpd.rst:101 +#: library/smtpd.rst:100 msgid "" "Return ``None`` to request a normal ``250 Ok`` response; otherwise return " "the desired response string in :RFC:`5321` format." msgstr "" -#: library/smtpd.rst:106 +#: library/smtpd.rst:105 msgid "" "Override this in subclasses to use a custom :class:`SMTPChannel` for " "managing SMTP clients." msgstr "" -#: library/smtpd.rst:109 +#: library/smtpd.rst:108 msgid "The *map* constructor argument." msgstr "" -#: library/smtpd.rst:112 +#: library/smtpd.rst:111 msgid "*localaddr* and *remoteaddr* may now contain IPv6 addresses." msgstr "" -#: library/smtpd.rst:115 +#: library/smtpd.rst:114 msgid "" "The *decode_data* and *enable_SMTPUTF8* constructor parameters, and the " "*kwargs* parameter to :meth:`process_message` when *decode_data* is " "``False``." msgstr "" -#: library/smtpd.rst:196 +#: library/smtpd.rst:195 msgid "*decode_data* is now ``False`` by default." msgstr "" -#: library/smtpd.rst:125 +#: library/smtpd.rst:124 msgid "DebuggingServer Objects" msgstr "" -#: library/smtpd.rst:130 +#: library/smtpd.rst:129 msgid "" "Create a new debugging server. Arguments are as per :class:`SMTPServer`. " "Messages will be discarded, and printed on stdout." msgstr "" -#: library/smtpd.rst:135 +#: library/smtpd.rst:134 msgid "PureProxy Objects" msgstr "" -#: library/smtpd.rst:140 +#: library/smtpd.rst:139 msgid "" "Create a new pure proxy server. Arguments are as per :class:`SMTPServer`. " "Everything will be relayed to *remoteaddr*. Note that running this has a " "good chance to make you into an open relay, so please be careful." msgstr "" -#: library/smtpd.rst:146 +#: library/smtpd.rst:145 msgid "MailmanProxy Objects" msgstr "" -#: library/smtpd.rst:153 +#: library/smtpd.rst:152 msgid "" ":class:`MailmanProxy` is deprecated, it depends on a ``Mailman`` module " "which no longer exists and therefore is already broken." msgstr "" -#: library/smtpd.rst:157 +#: library/smtpd.rst:156 msgid "" "Create a new pure proxy server. Arguments are as per :class:`SMTPServer`. " "Everything will be relayed to *remoteaddr*, unless local mailman " @@ -222,116 +222,116 @@ msgid "" "relay, so please be careful." msgstr "" -#: library/smtpd.rst:164 +#: library/smtpd.rst:163 msgid "SMTPChannel Objects" msgstr "" -#: library/smtpd.rst:169 +#: library/smtpd.rst:168 msgid "" "Create a new :class:`SMTPChannel` object which manages the communication " "between the server and a single SMTP client." msgstr "" -#: library/smtpd.rst:172 +#: library/smtpd.rst:171 msgid "*conn* and *addr* are as per the instance variables described below." msgstr "" -#: library/smtpd.rst:178 +#: library/smtpd.rst:177 msgid "" "*enable_SMTPUTF8* determines whether the ``SMTPUTF8`` extension (as defined " "in :RFC:`6531`) should be enabled. The default is ``False``. *decode_data* " "and *enable_SMTPUTF8* cannot be set to ``True`` at the same time." msgstr "" -#: library/smtpd.rst:183 +#: library/smtpd.rst:182 msgid "" "A dictionary can be specified in *map* to avoid using a global socket map." msgstr "" -#: library/smtpd.rst:185 +#: library/smtpd.rst:184 msgid "" "*decode_data* specifies whether the data portion of the SMTP transaction " "should be decoded using UTF-8. The default is ``False``. *decode_data* and " "*enable_SMTPUTF8* cannot be set to ``True`` at the same time." msgstr "" -#: library/smtpd.rst:190 +#: library/smtpd.rst:189 msgid "" "To use a custom SMTPChannel implementation you need to override the :attr:" "`SMTPServer.channel_class` of your :class:`SMTPServer`." msgstr "" -#: library/smtpd.rst:193 +#: library/smtpd.rst:192 msgid "The *decode_data* and *enable_SMTPUTF8* parameters were added." msgstr "" -#: library/smtpd.rst:199 +#: library/smtpd.rst:198 msgid "The :class:`SMTPChannel` has the following instance variables:" msgstr "" -#: library/smtpd.rst:203 +#: library/smtpd.rst:202 msgid "Holds the :class:`SMTPServer` that spawned this channel." msgstr "" -#: library/smtpd.rst:207 +#: library/smtpd.rst:206 msgid "Holds the socket object connecting to the client." msgstr "" -#: library/smtpd.rst:211 +#: library/smtpd.rst:210 msgid "" "Holds the address of the client, the second value returned by :func:`socket." "accept `" msgstr "" -#: library/smtpd.rst:216 +#: library/smtpd.rst:215 msgid "" "Holds a list of the line strings (decoded using UTF-8) received from the " "client. The lines have their ``\"\\r\\n\"`` line ending translated to ``\"\\n" "\"``." msgstr "" -#: library/smtpd.rst:222 +#: library/smtpd.rst:221 msgid "" "Holds the current state of the channel. This will be either :attr:`COMMAND` " "initially and then :attr:`DATA` after the client sends a \"DATA\" line." msgstr "" -#: library/smtpd.rst:228 +#: library/smtpd.rst:227 msgid "" "Holds a string containing the greeting sent by the client in its \"HELO\"." msgstr "" -#: library/smtpd.rst:232 +#: library/smtpd.rst:231 msgid "" "Holds a string containing the address identified in the \"MAIL FROM:\" line " "from the client." msgstr "" -#: library/smtpd.rst:237 +#: library/smtpd.rst:236 msgid "" "Holds a list of strings containing the addresses identified in the \"RCPT TO:" "\" lines from the client." msgstr "" -#: library/smtpd.rst:242 +#: library/smtpd.rst:241 msgid "" "Holds a string containing all of the data sent by the client during the DATA " "state, up to but not including the terminating ``\"\\r\\n.\\r\\n\"``." msgstr "" -#: library/smtpd.rst:247 +#: library/smtpd.rst:246 msgid "" "Holds the fully-qualified domain name of the server as returned by :func:" "`socket.getfqdn`." msgstr "" -#: library/smtpd.rst:252 +#: library/smtpd.rst:251 msgid "" "Holds the name of the client peer as returned by ``conn.getpeername()`` " "where ``conn`` is :attr:`conn`." msgstr "" -#: library/smtpd.rst:255 +#: library/smtpd.rst:254 msgid "" "The :class:`SMTPChannel` operates by invoking methods named " "``smtp_`` upon reception of a command line from the client. Built " @@ -339,112 +339,112 @@ msgid "" "following commands (and responding to them appropriately):" msgstr "" -#: library/smtpd.rst:261 +#: library/smtpd.rst:260 msgid "Command" msgstr "Commande" -#: library/smtpd.rst:261 +#: library/smtpd.rst:260 msgid "Action taken" msgstr "" -#: library/smtpd.rst:263 +#: library/smtpd.rst:262 msgid "HELO" msgstr "HELO" -#: library/smtpd.rst:263 +#: library/smtpd.rst:262 msgid "" "Accepts the greeting from the client and stores it in :attr:" "`seen_greeting`. Sets server to base command mode." msgstr "" -#: library/smtpd.rst:265 +#: library/smtpd.rst:264 msgid "EHLO" msgstr "EHLO" -#: library/smtpd.rst:265 +#: library/smtpd.rst:264 msgid "" "Accepts the greeting from the client and stores it in :attr:" "`seen_greeting`. Sets server to extended command mode." msgstr "" -#: library/smtpd.rst:267 +#: library/smtpd.rst:266 msgid "NOOP" msgstr "NOOP" -#: library/smtpd.rst:267 +#: library/smtpd.rst:266 msgid "Takes no action." msgstr "" -#: library/smtpd.rst:268 +#: library/smtpd.rst:267 msgid "QUIT" msgstr "QUIT" -#: library/smtpd.rst:268 +#: library/smtpd.rst:267 msgid "Closes the connection cleanly." msgstr "" -#: library/smtpd.rst:269 +#: library/smtpd.rst:268 msgid "MAIL" msgstr "MAIL" -#: library/smtpd.rst:269 +#: library/smtpd.rst:268 msgid "" "Accepts the \"MAIL FROM:\" syntax and stores the supplied address as :attr:" "`mailfrom`. In extended command mode, accepts the :rfc:`1870` SIZE " "attribute and responds appropriately based on the value of *data_size_limit*." msgstr "" -#: library/smtpd.rst:273 +#: library/smtpd.rst:272 msgid "RCPT" msgstr "RCPT" -#: library/smtpd.rst:273 +#: library/smtpd.rst:272 msgid "" "Accepts the \"RCPT TO:\" syntax and stores the supplied addresses in the :" "attr:`rcpttos` list." msgstr "" -#: library/smtpd.rst:275 +#: library/smtpd.rst:274 msgid "RSET" msgstr "RSET" -#: library/smtpd.rst:275 +#: library/smtpd.rst:274 msgid "" "Resets the :attr:`mailfrom`, :attr:`rcpttos`, and :attr:`received_data`, but " "not the greeting." msgstr "" -#: library/smtpd.rst:277 +#: library/smtpd.rst:276 msgid "DATA" msgstr "DATA" -#: library/smtpd.rst:277 +#: library/smtpd.rst:276 msgid "" "Sets the internal state to :attr:`DATA` and stores remaining lines from the " "client in :attr:`received_data` until the terminator ``\"\\r\\n.\\r\\n\"`` " "is received." msgstr "" -#: library/smtpd.rst:280 +#: library/smtpd.rst:279 msgid "HELP" msgstr "HELP" -#: library/smtpd.rst:280 +#: library/smtpd.rst:279 msgid "Returns minimal information on command syntax" msgstr "" -#: library/smtpd.rst:281 +#: library/smtpd.rst:280 msgid "VRFY" msgstr "VRFY" -#: library/smtpd.rst:281 +#: library/smtpd.rst:280 msgid "Returns code 252 (the server doesn't know if the address is valid)" msgstr "" -#: library/smtpd.rst:282 +#: library/smtpd.rst:281 msgid "EXPN" msgstr "EXPN" -#: library/smtpd.rst:282 +#: library/smtpd.rst:281 msgid "Reports that the command is not implemented." msgstr "" diff --git a/library/smtplib.po b/library/smtplib.po index 8d0a90b5b..caae4ce24 100644 --- a/library/smtplib.po +++ b/library/smtplib.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2017-08-10 00:55+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -26,7 +26,7 @@ msgstr "**Code source :** :source:`Lib/smtplib.py`" #: library/smtplib.rst:17 msgid "" "The :mod:`smtplib` module defines an SMTP client session object that can be " -"used to send mail to any Internet machine with an SMTP or ESMTP listener " +"used to send mail to any internet machine with an SMTP or ESMTP listener " "daemon. For details of SMTP and ESMTP operation, consult :rfc:`821` (Simple " "Mail Transfer Protocol) and :rfc:`1869` (SMTP Service Extensions)." msgstr "" @@ -43,12 +43,12 @@ msgid "" "code, an :exc:`SMTPConnectError` is raised. The optional *timeout* parameter " "specifies a timeout in seconds for blocking operations like the connection " "attempt (if not specified, the global default timeout setting will be " -"used). If the timeout expires, :exc:`socket.timeout` is raised. The " -"optional source_address parameter allows binding to some specific source " -"address in a machine with multiple network interfaces, and/or to some " -"specific source TCP port. It takes a 2-tuple (host, port), for the socket to " -"bind to as its source address before connecting. If omitted (or if host or " -"port are ``''`` and/or 0 respectively) the OS default behavior will be used." +"used). If the timeout expires, :exc:`TimeoutError` is raised. The optional " +"source_address parameter allows binding to some specific source address in a " +"machine with multiple network interfaces, and/or to some specific source TCP " +"port. It takes a 2-tuple (host, port), for the socket to bind to as its " +"source address before connecting. If omitted (or if host or port are ``''`` " +"and/or 0 respectively) the OS default behavior will be used." msgstr "" #: library/smtplib.rst:43 @@ -116,7 +116,7 @@ msgid "" "connection." msgstr "" -#: library/smtplib.rst:426 +#: library/smtplib.rst:427 msgid "*context* was added." msgstr "" @@ -126,7 +126,7 @@ msgid "" "check_hostname` and *Server Name Indication* (see :data:`ssl.HAS_SNI`)." msgstr "" -#: library/smtplib.rst:412 +#: library/smtplib.rst:413 msgid "" "*keyfile* and *certfile* are deprecated in favor of *context*. Please use :" "meth:`ssl.SSLContext.load_cert_chain` instead, or let :func:`ssl." @@ -323,41 +323,41 @@ msgid "" "defaults to the fully qualified domain name of the local host. Examine the " "response for ESMTP option and store them for use by :meth:`has_extn`. Also " "sets several informational attributes: the message returned by the server is " -"stored as the :attr:`ehlo_resp` attribute, :attr:`does_esmtp` is set to true " -"or false depending on whether the server supports ESMTP, and :attr:" -"`esmtp_features` will be a dictionary containing the names of the SMTP " +"stored as the :attr:`ehlo_resp` attribute, :attr:`does_esmtp` is set to " +"``True`` or ``False`` depending on whether the server supports ESMTP, and :" +"attr:`esmtp_features` will be a dictionary containing the names of the SMTP " "service extensions this server supports, and their parameters (if any)." msgstr "" -#: library/smtplib.rst:286 +#: library/smtplib.rst:287 msgid "" "Unless you wish to use :meth:`has_extn` before sending mail, it should not " "be necessary to call this method explicitly. It will be implicitly called " "by :meth:`sendmail` when necessary." msgstr "" -#: library/smtplib.rst:292 +#: library/smtplib.rst:293 msgid "" "This method calls :meth:`ehlo` and/or :meth:`helo` if there has been no " "previous ``EHLO`` or ``HELO`` command this session. It tries ESMTP ``EHLO`` " "first." msgstr "" -#: library/smtplib.rst:326 library/smtplib.rst:487 +#: library/smtplib.rst:327 library/smtplib.rst:488 msgid ":exc:`SMTPHeloError`" msgstr ":exc:`SMTPHeloError`" -#: library/smtplib.rst:326 library/smtplib.rst:487 +#: library/smtplib.rst:327 library/smtplib.rst:488 msgid "The server didn't reply properly to the ``HELO`` greeting." msgstr "" -#: library/smtplib.rst:301 +#: library/smtplib.rst:302 msgid "" "Return :const:`True` if *name* is in the set of SMTP service extensions " "returned by the server, :const:`False` otherwise. Case is ignored." msgstr "" -#: library/smtplib.rst:307 +#: library/smtplib.rst:308 msgid "" "Check the validity of an address on this server using SMTP ``VRFY``. Returns " "a tuple consisting of code 250 and a full :rfc:`822` address (including " @@ -365,11 +365,11 @@ msgid "" "code of 400 or greater and an error string." msgstr "" -#: library/smtplib.rst:314 +#: library/smtplib.rst:315 msgid "Many sites disable SMTP ``VRFY`` in order to foil spammers." msgstr "" -#: library/smtplib.rst:319 +#: library/smtplib.rst:320 msgid "" "Log in on an SMTP server that requires authentication. The arguments are the " "username and the password to authenticate with. If there has been no " @@ -378,31 +378,31 @@ msgid "" "successful, or may raise the following exceptions:" msgstr "" -#: library/smtplib.rst:329 +#: library/smtplib.rst:330 msgid ":exc:`SMTPAuthenticationError`" msgstr ":exc:`SMTPAuthenticationError`" -#: library/smtplib.rst:329 +#: library/smtplib.rst:330 msgid "The server didn't accept the username/password combination." msgstr "" -#: library/smtplib.rst:421 library/smtplib.rst:498 +#: library/smtplib.rst:422 library/smtplib.rst:499 msgid ":exc:`SMTPNotSupportedError`" msgstr "" -#: library/smtplib.rst:332 +#: library/smtplib.rst:333 msgid "The ``AUTH`` command is not supported by the server." msgstr "" -#: library/smtplib.rst:335 +#: library/smtplib.rst:336 msgid ":exc:`SMTPException`" msgstr ":exc:`SMTPException`" -#: library/smtplib.rst:335 +#: library/smtplib.rst:336 msgid "No suitable authentication method was found." msgstr "" -#: library/smtplib.rst:337 +#: library/smtplib.rst:338 msgid "" "Each of the authentication methods supported by :mod:`smtplib` are tried in " "turn if they are advertised as supported by the server. See :meth:`auth` " @@ -410,7 +410,7 @@ msgid "" "passed through to :meth:`auth`." msgstr "" -#: library/smtplib.rst:342 +#: library/smtplib.rst:343 msgid "" "Optional keyword argument *initial_response_ok* specifies whether, for " "authentication methods that support it, an \"initial response\" as specified " @@ -418,35 +418,35 @@ msgid "" "requiring a challenge/response." msgstr "" -#: library/smtplib.rst:347 +#: library/smtplib.rst:348 msgid "" ":exc:`SMTPNotSupportedError` may be raised, and the *initial_response_ok* " "parameter was added." msgstr "" -#: library/smtplib.rst:354 +#: library/smtplib.rst:355 msgid "" "Issue an ``SMTP`` ``AUTH`` command for the specified authentication " "*mechanism*, and handle the challenge response via *authobject*." msgstr "" -#: library/smtplib.rst:357 +#: library/smtplib.rst:358 msgid "" "*mechanism* specifies which authentication mechanism is to be used as " "argument to the ``AUTH`` command; the valid values are those listed in the " "``auth`` element of :attr:`esmtp_features`." msgstr "" -#: library/smtplib.rst:361 +#: library/smtplib.rst:362 msgid "" "*authobject* must be a callable object taking an optional single argument:" msgstr "" -#: library/smtplib.rst:363 +#: library/smtplib.rst:364 msgid "data = authobject(challenge=None)" msgstr "" -#: library/smtplib.rst:365 +#: library/smtplib.rst:366 msgid "" "If optional keyword argument *initial_response_ok* is true, ``authobject()`` " "will be called first with no argument. It can return the :rfc:`4954` " @@ -457,7 +457,7 @@ msgid "" "false, then ``authobject()`` will not be called first with ``None``." msgstr "" -#: library/smtplib.rst:373 +#: library/smtplib.rst:374 msgid "" "If the initial response check returns ``None``, or if *initial_response_ok* " "is false, ``authobject()`` will be called to process the server's challenge " @@ -466,7 +466,7 @@ msgid "" "the server." msgstr "" -#: library/smtplib.rst:379 +#: library/smtplib.rst:380 msgid "" "The ``SMTP`` class provides ``authobjects`` for the ``CRAM-MD5``, ``PLAIN``, " "and ``LOGIN`` mechanisms; they are named ``SMTP.auth_cram_md5``, ``SMTP." @@ -475,7 +475,7 @@ msgid "" "appropriate values." msgstr "" -#: library/smtplib.rst:385 +#: library/smtplib.rst:386 msgid "" "User code does not normally need to call ``auth`` directly, but can instead " "call the :meth:`login` method, which will try each of the above mechanisms " @@ -484,57 +484,57 @@ msgid "" "by :mod:`smtplib`." msgstr "" -#: library/smtplib.rst:396 +#: library/smtplib.rst:397 msgid "" "Put the SMTP connection in TLS (Transport Layer Security) mode. All SMTP " "commands that follow will be encrypted. You should then call :meth:`ehlo` " "again." msgstr "" -#: library/smtplib.rst:400 +#: library/smtplib.rst:401 msgid "" "If *keyfile* and *certfile* are provided, they are used to create an :class:" "`ssl.SSLContext`." msgstr "" -#: library/smtplib.rst:403 +#: library/smtplib.rst:404 msgid "" "Optional *context* parameter is an :class:`ssl.SSLContext` object; This is " "an alternative to using a keyfile and a certfile and if specified both " "*keyfile* and *certfile* should be ``None``." msgstr "" -#: library/smtplib.rst:407 +#: library/smtplib.rst:408 msgid "" "If there has been no previous ``EHLO`` or ``HELO`` command this session, " "this method tries ESMTP ``EHLO`` first." msgstr "" -#: library/smtplib.rst:421 +#: library/smtplib.rst:422 msgid "The server does not support the STARTTLS extension." msgstr "" -#: library/smtplib.rst:424 +#: library/smtplib.rst:425 msgid ":exc:`RuntimeError`" msgstr ":exc:`RuntimeError`" -#: library/smtplib.rst:424 +#: library/smtplib.rst:425 msgid "SSL/TLS support is not available to your Python interpreter." msgstr "" -#: library/smtplib.rst:429 +#: library/smtplib.rst:430 msgid "" "The method now supports hostname check with :attr:`SSLContext." "check_hostname` and *Server Name Indicator* (see :data:`~ssl.HAS_SNI`)." msgstr "" -#: library/smtplib.rst:434 +#: library/smtplib.rst:435 msgid "" "The error raised for lack of STARTTLS support is now the :exc:" "`SMTPNotSupportedError` subclass instead of the base :exc:`SMTPException`." msgstr "" -#: library/smtplib.rst:442 +#: library/smtplib.rst:443 msgid "" "Send mail. The required arguments are an :rfc:`822` from-address string, a " "list of :rfc:`822` to-address strings (a bare string will be treated as a " @@ -547,14 +547,14 @@ msgid "" "the message.)" msgstr "" -#: library/smtplib.rst:453 +#: library/smtplib.rst:454 msgid "" "The *from_addr* and *to_addrs* parameters are used to construct the message " "envelope used by the transport agents. ``sendmail`` does not modify the " "message headers in any way." msgstr "" -#: library/smtplib.rst:457 +#: library/smtplib.rst:458 msgid "" "*msg* may be a string containing characters in the ASCII range, or a byte " "string. A string is encoded to bytes using the ascii codec, and lone ``" @@ -562,7 +562,7 @@ msgid "" "string is not modified." msgstr "" -#: library/smtplib.rst:462 +#: library/smtplib.rst:463 msgid "" "If there has been no previous ``EHLO`` or ``HELO`` command this session, " "this method tries ESMTP ``EHLO`` first. If the server does ESMTP, message " @@ -571,7 +571,7 @@ msgid "" "will be tried and ESMTP options suppressed." msgstr "" -#: library/smtplib.rst:468 +#: library/smtplib.rst:469 msgid "" "This method will return normally if the mail is accepted for at least one " "recipient. Otherwise it will raise an exception. That is, if this method " @@ -581,21 +581,21 @@ msgid "" "SMTP error code and the accompanying error message sent by the server." msgstr "" -#: library/smtplib.rst:475 +#: library/smtplib.rst:476 msgid "" "If ``SMTPUTF8`` is included in *mail_options*, and the server supports it, " "*from_addr* and *to_addrs* may contain non-ASCII characters." msgstr "" -#: library/smtplib.rst:478 +#: library/smtplib.rst:479 msgid "This method may raise the following exceptions:" msgstr "" -#: library/smtplib.rst:484 +#: library/smtplib.rst:485 msgid ":exc:`SMTPRecipientsRefused`" msgstr "" -#: library/smtplib.rst:481 +#: library/smtplib.rst:482 msgid "" "All recipients were refused. Nobody got the mail. The :attr:`recipients` " "attribute of the exception object is a dictionary with information about the " @@ -603,47 +603,47 @@ msgid "" "accepted)." msgstr "" -#: library/smtplib.rst:490 +#: library/smtplib.rst:491 msgid ":exc:`SMTPSenderRefused`" msgstr "" -#: library/smtplib.rst:490 +#: library/smtplib.rst:491 msgid "The server didn't accept the *from_addr*." msgstr "" -#: library/smtplib.rst:494 +#: library/smtplib.rst:495 msgid ":exc:`SMTPDataError`" msgstr ":exc:`SMTPDataError`" -#: library/smtplib.rst:493 +#: library/smtplib.rst:494 msgid "" "The server replied with an unexpected error code (other than a refusal of a " "recipient)." msgstr "" -#: library/smtplib.rst:497 +#: library/smtplib.rst:498 msgid "" "``SMTPUTF8`` was given in the *mail_options* but is not supported by the " "server." msgstr "" -#: library/smtplib.rst:500 +#: library/smtplib.rst:501 msgid "" "Unless otherwise noted, the connection will be open even after an exception " "is raised." msgstr "" -#: library/smtplib.rst:503 +#: library/smtplib.rst:504 msgid "*msg* may be a byte string." msgstr "" -#: library/smtplib.rst:506 +#: library/smtplib.rst:507 msgid "" "``SMTPUTF8`` support added, and :exc:`SMTPNotSupportedError` may be raised " "if ``SMTPUTF8`` is specified but the server does not support it." msgstr "" -#: library/smtplib.rst:514 +#: library/smtplib.rst:515 msgid "" "This is a convenience method for calling :meth:`sendmail` with the message " "represented by an :class:`email.message.Message` object. The arguments have " @@ -651,7 +651,7 @@ msgid "" "object." msgstr "" -#: library/smtplib.rst:519 +#: library/smtplib.rst:520 msgid "" "If *from_addr* is ``None`` or *to_addrs* is ``None``, ``send_message`` fills " "those arguments with addresses extracted from the headers of *msg* as " @@ -666,7 +666,7 @@ msgid "" "most recent set of :mailheader:`Resent-` headers." msgstr "" -#: library/smtplib.rst:531 +#: library/smtplib.rst:532 msgid "" "``send_message`` serializes *msg* using :class:`~email.generator." "BytesGenerator` with ``\\r\\n`` as the *linesep*, and calls :meth:`sendmail` " @@ -681,17 +681,17 @@ msgid "" "to *mail_options*." msgstr "" -#: library/smtplib.rst:545 +#: library/smtplib.rst:546 msgid "Support for internationalized addresses (``SMTPUTF8``)." msgstr "" -#: library/smtplib.rst:551 +#: library/smtplib.rst:552 msgid "" "Terminate the SMTP session and close the connection. Return the result of " "the SMTP ``QUIT`` command." msgstr "" -#: library/smtplib.rst:555 +#: library/smtplib.rst:556 msgid "" "Low-level methods corresponding to the standard SMTP/ESMTP commands " "``HELP``, ``RSET``, ``NOOP``, ``MAIL``, ``RCPT``, and ``DATA`` are also " @@ -699,11 +699,11 @@ msgid "" "documented here. For details, consult the module code." msgstr "" -#: library/smtplib.rst:564 +#: library/smtplib.rst:565 msgid "SMTP Example" msgstr "" -#: library/smtplib.rst:566 +#: library/smtplib.rst:567 msgid "" "This example prompts the user for addresses needed in the message envelope " "('To' and 'From' addresses), and the message to be delivered. Note that the " @@ -713,7 +713,7 @@ msgid "" "headers explicitly. ::" msgstr "" -#: library/smtplib.rst:602 +#: library/smtplib.rst:603 msgid "" "In general, you will want to use the :mod:`email` package's features to " "construct an email message, which you can then send via :meth:`~smtplib.SMTP." diff --git a/library/socket.po b/library/socket.po index 44f523425..a1fc743df 100644 --- a/library/socket.po +++ b/library/socket.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-11-25 20:35+0100\n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -96,14 +96,14 @@ msgid "" "Previously, :const:`AF_UNIX` socket paths were assumed to use UTF-8 encoding." msgstr "" -#: library/socket.rst:965 library/socket.rst:1737 +#: library/socket.rst:975 library/socket.rst:1747 msgid "Writable :term:`bytes-like object` is now accepted." msgstr "N'importe quel :term:`bytes-like object` est maintenant accepté." #: library/socket.rst:68 msgid "" "A pair ``(host, port)`` is used for the :const:`AF_INET` address family, " -"where *host* is a string representing either a hostname in Internet domain " +"where *host* is a string representing either a hostname in internet domain " "notation like ``'daring.cwi.nl'`` or an IPv4 address like " "``'100.50.200.5'``, and *port* is an integer." msgstr "" @@ -415,7 +415,7 @@ msgid "" "description of *h_errno*, as returned by the :c:func:`hstrerror` C function." msgstr "" -#: library/socket.rst:281 library/socket.rst:292 +#: library/socket.rst:281 library/socket.rst:294 msgid "This class was made a subclass of :exc:`OSError`." msgstr "" @@ -430,6 +430,10 @@ msgid "" msgstr "" #: library/socket.rst:286 +msgid "A deprecated alias of :exc:`TimeoutError`." +msgstr "" + +#: library/socket.rst:288 msgid "" "A subclass of :exc:`OSError`, this exception is raised when a timeout occurs " "on a socket which has had timeouts enabled via a prior call to :meth:" @@ -439,16 +443,20 @@ msgid "" msgstr "" #: library/socket.rst:297 +msgid "This class was made an alias of :exc:`TimeoutError`." +msgstr "" + +#: library/socket.rst:302 msgid "Constants" msgstr "Constantes" -#: library/socket.rst:299 +#: library/socket.rst:304 msgid "" "The AF_* and SOCK_* constants are now :class:`AddressFamily` and :class:" "`SocketKind` :class:`.IntEnum` collections." msgstr "" -#: library/socket.rst:308 +#: library/socket.rst:313 msgid "" "These constants represent the address (and protocol) families, used for the " "first argument to :func:`.socket`. If the :const:`AF_UNIX` constant is not " @@ -456,7 +464,7 @@ msgid "" "depending on the system." msgstr "" -#: library/socket.rst:320 +#: library/socket.rst:325 msgid "" "These constants represent the socket types, used for the second argument to :" "func:`.socket`. More constants may be available depending on the system. " @@ -464,24 +472,24 @@ msgid "" "useful.)" msgstr "" -#: library/socket.rst:328 +#: library/socket.rst:333 msgid "" "These two constants, if defined, can be combined with the socket types and " "allow you to set some flags atomically (thus avoiding possible race " "conditions and the need for separate calls)." msgstr "" -#: library/socket.rst:334 +#: library/socket.rst:339 msgid "" "`Secure File Descriptor Handling `_ for a more thorough explanation." msgstr "" -#: library/socket.rst:338 +#: library/socket.rst:343 msgid ":ref:`Availability `: Linux >= 2.6.27." msgstr ":ref:`Disponibilité ` : Linux >= 2.6.27" -#: library/socket.rst:356 +#: library/socket.rst:361 msgid "" "Many constants of these forms, documented in the Unix documentation on " "sockets and/or the IP protocol, are also defined in the socket module. They " @@ -491,182 +499,189 @@ msgid "" "default values are provided." msgstr "" -#: library/socket.rst:363 +#: library/socket.rst:368 msgid "" "``SO_DOMAIN``, ``SO_PROTOCOL``, ``SO_PEERSEC``, ``SO_PASSSEC``, " "``TCP_USER_TIMEOUT``, ``TCP_CONGESTION`` were added." msgstr "" -#: library/socket.rst:367 +#: library/socket.rst:372 msgid "" "On Windows, ``TCP_FASTOPEN``, ``TCP_KEEPCNT`` appear if run-time Windows " "supports." msgstr "" -#: library/socket.rst:371 +#: library/socket.rst:376 msgid "``TCP_NOTSENT_LOWAT`` was added." msgstr "" -#: library/socket.rst:374 +#: library/socket.rst:379 msgid "" "On Windows, ``TCP_KEEPIDLE``, ``TCP_KEEPINTVL`` appear if run-time Windows " "supports." msgstr "" -#: library/socket.rst:449 library/socket.rst:460 +#: library/socket.rst:382 +msgid "" +"``IP_RECVTOS`` was added. Added ``TCP_KEEPALIVE``. On MacOS this constant " +"can be used in the same way that ``TCP_KEEPIDLE`` is used on Linux." +msgstr "" + +#: library/socket.rst:459 library/socket.rst:470 msgid "" "Many constants of these forms, documented in the Linux documentation, are " "also defined in the socket module." msgstr "" -#: library/socket.rst:397 library/socket.rst:432 +#: library/socket.rst:407 library/socket.rst:442 msgid ":ref:`Availability `: Linux >= 2.6.25." msgstr ":ref:`Disponibilité ` : Linux >= 2.6.25" -#: library/socket.rst:392 +#: library/socket.rst:402 msgid "" "CAN_BCM, in the CAN protocol family, is the broadcast manager (BCM) " "protocol. Broadcast manager constants, documented in the Linux " "documentation, are also defined in the socket module." msgstr "" -#: library/socket.rst:399 +#: library/socket.rst:409 msgid "" "The :data:`CAN_BCM_CAN_FD_FRAME` flag is only available on Linux >= 4.8." msgstr "" -#: library/socket.rst:405 +#: library/socket.rst:415 msgid "" "Enables CAN FD support in a CAN_RAW socket. This is disabled by default. " "This allows your application to send both CAN and CAN FD frames; however, " "you must accept both CAN and CAN FD frames when reading from the socket." msgstr "" -#: library/socket.rst:420 +#: library/socket.rst:430 msgid "This constant is documented in the Linux documentation." msgstr "" -#: library/socket.rst:412 +#: library/socket.rst:422 msgid ":ref:`Availability `: Linux >= 3.6." msgstr ":ref:`Disponibilité ` : Linux >= 3.6." -#: library/socket.rst:417 +#: library/socket.rst:427 msgid "" "Joins the applied CAN filters such that only CAN frames that match all given " "CAN filters are passed to user space." msgstr "" -#: library/socket.rst:423 +#: library/socket.rst:433 #, fuzzy msgid ":ref:`Availability `: Linux >= 4.1." msgstr ":ref:`Disponibilité ` : Linux >= 4.8." -#: library/socket.rst:428 +#: library/socket.rst:438 msgid "" "CAN_ISOTP, in the CAN protocol family, is the ISO-TP (ISO 15765-2) protocol. " "ISO-TP constants, documented in the Linux documentation." msgstr "" -#: library/socket.rst:437 +#: library/socket.rst:447 msgid "" "CAN_J1939, in the CAN protocol family, is the SAE J1939 protocol. J1939 " "constants, documented in the Linux documentation." msgstr "" -#: library/socket.rst:441 +#: library/socket.rst:451 #, fuzzy msgid ":ref:`Availability `: Linux >= 5.4." msgstr ":ref:`Disponibilité ` : Linux >= 3.6." -#: library/socket.rst:452 +#: library/socket.rst:462 msgid ":ref:`Availability `: Linux >= 2.2." msgstr ":ref:`Disponibilité ` : Linux >= 2.2." -#: library/socket.rst:464 +#: library/socket.rst:474 msgid ":ref:`Availability `: Linux >= 2.6.30." msgstr ":ref:`Disponibilité ` : Linux >= 2.6.30." -#: library/socket.rst:473 +#: library/socket.rst:483 msgid "" "Constants for Windows' WSAIoctl(). The constants are used as arguments to " "the :meth:`~socket.socket.ioctl` method of socket objects." msgstr "" -#: library/socket.rst:1359 +#: library/socket.rst:1369 msgid "``SIO_LOOPBACK_FAST_PATH`` was added." msgstr "" -#: library/socket.rst:482 +#: library/socket.rst:492 msgid "" "TIPC related constants, matching the ones exported by the C socket API. See " "the TIPC documentation for more information." msgstr "" -#: library/socket.rst:489 +#: library/socket.rst:499 msgid "Constants for Linux Kernel cryptography." msgstr "" -#: library/socket.rst:1659 +#: library/socket.rst:1669 msgid ":ref:`Availability `: Linux >= 2.6.38." msgstr ":ref:`Disponibilité ` : Linux >= 2.6.38." -#: library/socket.rst:501 +#: library/socket.rst:511 msgid "Constants for Linux host/guest communication." msgstr "" -#: library/socket.rst:504 +#: library/socket.rst:514 msgid ":ref:`Availability `: Linux >= 4.8." msgstr ":ref:`Disponibilité ` : Linux >= 4.8." -#: library/socket.rst:510 -msgid ":ref:`Availability `: BSD, OSX." +#: library/socket.rst:520 +#, fuzzy +msgid ":ref:`Availability `: BSD, macOS." msgstr ":ref:`Disponibilité ` : BSD, OSX." -#: library/socket.rst:515 +#: library/socket.rst:525 msgid "" "This constant contains a boolean value which indicates if IPv6 is supported " "on this platform." msgstr "" -#: library/socket.rst:521 +#: library/socket.rst:531 msgid "" "These are string constants containing Bluetooth addresses with special " "meanings. For example, :const:`BDADDR_ANY` can be used to indicate any " "address when specifying the binding socket with :const:`BTPROTO_RFCOMM`." msgstr "" -#: library/socket.rst:530 +#: library/socket.rst:540 msgid "" "For use with :const:`BTPROTO_HCI`. :const:`HCI_FILTER` is not available for " "NetBSD or DragonFlyBSD. :const:`HCI_TIME_STAMP` and :const:`HCI_DATA_DIR` " "are not available for FreeBSD, NetBSD, or DragonFlyBSD." msgstr "" -#: library/socket.rst:537 +#: library/socket.rst:547 msgid "" "Constant for Qualcomm's IPC router protocol, used to communicate with " "service providing remote processors." msgstr "" -#: library/socket.rst:540 +#: library/socket.rst:550 #, fuzzy msgid ":ref:`Availability `: Linux >= 4.7." msgstr ":ref:`Disponibilité ` : Linux >= 4.8." -#: library/socket.rst:543 +#: library/socket.rst:553 msgid "Functions" msgstr "Fonctions" -#: library/socket.rst:546 +#: library/socket.rst:556 msgid "Creating sockets" msgstr "" -#: library/socket.rst:548 +#: library/socket.rst:558 msgid "" "The following functions all create :ref:`socket objects `." msgstr "" -#: library/socket.rst:553 +#: library/socket.rst:563 msgid "" "Create a new socket using the given address family, socket type and protocol " "number. The address family should be :const:`AF_INET` (the default), :const:" @@ -679,7 +694,7 @@ msgid "" "`CAN_J1939`." msgstr "" -#: library/socket.rst:563 +#: library/socket.rst:573 msgid "" "If *fileno* is specified, the values for *family*, *type*, and *proto* are " "auto-detected from the specified file descriptor. Auto-detection can be " @@ -690,52 +705,56 @@ msgid "" "This may help close a detached socket using :meth:`socket.close()`." msgstr "" -#: library/socket.rst:706 library/socket.rst:1276 +#: library/socket.rst:719 library/socket.rst:1286 msgid "The newly created socket is :ref:`non-inheritable `." msgstr "" "Il n'est :ref:`pas possible d'hériter ` du connecteur " "nouvellement créé." -#: library/socket.rst:574 +#: library/socket.rst:584 msgid "" "Raises an :ref:`auditing event ` ``socket.__new__`` with arguments " "``self``, ``family``, ``type``, ``protocol``." msgstr "" -#: library/socket.rst:576 +#: library/socket.rst:586 msgid "The AF_CAN family was added. The AF_RDS family was added." msgstr "" -#: library/socket.rst:580 +#: library/socket.rst:590 msgid "The CAN_BCM protocol was added." msgstr "" -#: library/socket.rst:708 +#: library/socket.rst:721 msgid "The returned socket is now non-inheritable." msgstr "" -#: library/socket.rst:586 +#: library/socket.rst:596 msgid "The CAN_ISOTP protocol was added." msgstr "" -#: library/socket.rst:589 +#: library/socket.rst:599 msgid "" "When :const:`SOCK_NONBLOCK` or :const:`SOCK_CLOEXEC` bit flags are applied " "to *type* they are cleared, and :attr:`socket.type` will not reflect them. " "They are still passed to the underlying system `socket()` call. Therefore," msgstr "" -#: library/socket.rst:601 +#: library/socket.rst:611 msgid "" "will still create a non-blocking socket on OSes that support " "``SOCK_NONBLOCK``, but ``sock.type`` will be set to ``socket.SOCK_STREAM``." msgstr "" -#: library/socket.rst:605 +#: library/socket.rst:615 msgid "The CAN_J1939 protocol was added." msgstr "" -#: library/socket.rst:610 +#: library/socket.rst:618 +msgid "The IPPROTO_MPTCP protocol was added." +msgstr "" + +#: library/socket.rst:623 msgid "" "Build a pair of connected socket objects using the given address family, " "socket type, and protocol number. Address family, socket type, and protocol " @@ -744,31 +763,31 @@ msgid "" "`AF_INET`." msgstr "" -#: library/socket.rst:615 +#: library/socket.rst:628 #, fuzzy msgid "The newly created sockets are :ref:`non-inheritable `." msgstr "" "Il n'est :ref:`pas possible d'hériter ` du connecteur " "nouvellement créé." -#: library/socket.rst:617 +#: library/socket.rst:630 msgid "" "The returned socket objects now support the whole socket API, rather than a " "subset." msgstr "" -#: library/socket.rst:621 +#: library/socket.rst:634 msgid "The returned sockets are now non-inheritable." msgstr "" -#: library/socket.rst:624 +#: library/socket.rst:637 #, fuzzy msgid "Windows support added." msgstr "Ajout de la gestion de Windows" -#: library/socket.rst:630 +#: library/socket.rst:643 msgid "" -"Connect to a TCP service listening on the Internet *address* (a 2-tuple " +"Connect to a TCP service listening on the internet *address* (a 2-tuple " "``(host, port)``), and return the socket object. This is a higher-level " "function than :meth:`socket.connect`: if *host* is a non-numeric hostname, " "it will try to resolve it for both :data:`AF_INET` and :data:`AF_INET6`, and " @@ -777,31 +796,31 @@ msgid "" "IPv4 and IPv6." msgstr "" -#: library/socket.rst:638 +#: library/socket.rst:651 msgid "" "Passing the optional *timeout* parameter will set the timeout on the socket " "instance before attempting to connect. If no *timeout* is supplied, the " "global default timeout setting returned by :func:`getdefaulttimeout` is used." msgstr "" -#: library/socket.rst:643 +#: library/socket.rst:656 msgid "" "If supplied, *source_address* must be a 2-tuple ``(host, port)`` for the " "socket to bind to as its source address before connecting. If host or port " "are '' or 0 respectively the OS default behavior will be used." msgstr "" -#: library/socket.rst:647 +#: library/socket.rst:660 msgid "*source_address* was added." msgstr "" -#: library/socket.rst:652 +#: library/socket.rst:665 msgid "" "Convenience function which creates a TCP socket bound to *address* (a 2-" "tuple ``(host, port)``) and return the socket object." msgstr "" -#: library/socket.rst:655 +#: library/socket.rst:668 msgid "" "*family* should be either :data:`AF_INET` or :data:`AF_INET6`. *backlog* is " "the queue size passed to :meth:`socket.listen`; when ``0`` a default " @@ -809,7 +828,7 @@ msgid "" "`SO_REUSEPORT` socket option." msgstr "" -#: library/socket.rst:660 +#: library/socket.rst:673 msgid "" "If *dualstack_ipv6* is true and the platform supports it the socket will be " "able to accept both IPv4 and IPv6 connections, else it will raise :exc:" @@ -822,20 +841,20 @@ msgid "" "func:`has_dualstack_ipv6`:" msgstr "" -#: library/socket.rst:682 +#: library/socket.rst:695 msgid "" "On POSIX platforms the :data:`SO_REUSEADDR` socket option is set in order to " "immediately reuse previous sockets which were bound on the same *address* " "and remained in TIME_WAIT state." msgstr "" -#: library/socket.rst:690 +#: library/socket.rst:703 msgid "" "Return ``True`` if the platform supports creating a TCP socket which can " "handle both IPv4 and IPv6 connections." msgstr "" -#: library/socket.rst:697 +#: library/socket.rst:710 msgid "" "Duplicate the file descriptor *fd* (an integer as returned by a file " "object's :meth:`fileno` method) and build a socket object from the result. " @@ -848,38 +867,38 @@ msgid "" "socket is assumed to be in blocking mode." msgstr "" -#: library/socket.rst:714 +#: library/socket.rst:727 msgid "" "Instantiate a socket from data obtained from the :meth:`socket.share` " "method. The socket is assumed to be in blocking mode." msgstr "" -#: library/socket.rst:1762 +#: library/socket.rst:1772 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: library/socket.rst:724 +#: library/socket.rst:737 msgid "" "This is a Python type object that represents the socket object type. It is " "the same as ``type(socket(...))``." msgstr "" -#: library/socket.rst:729 +#: library/socket.rst:742 msgid "Other functions" msgstr "Autres fonctions" -#: library/socket.rst:731 +#: library/socket.rst:744 msgid "The :mod:`socket` module also offers various network-related services:" msgstr "" -#: library/socket.rst:736 +#: library/socket.rst:749 msgid "" "Close a socket file descriptor. This is like :func:`os.close`, but for " "sockets. On some platforms (most noticeable Windows) :func:`os.close` does " "not work for socket file descriptors." msgstr "" -#: library/socket.rst:744 +#: library/socket.rst:757 msgid "" "Translate the *host*/*port* argument into a sequence of 5-tuples that " "contain all the necessary arguments for creating a socket connected to that " @@ -889,7 +908,7 @@ msgid "" "and *port*, you can pass ``NULL`` to the underlying C API." msgstr "" -#: library/socket.rst:751 +#: library/socket.rst:764 msgid "" "The *family*, *type* and *proto* arguments can be optionally specified in " "order to narrow the list of addresses returned. Passing zero as a value for " @@ -900,15 +919,15 @@ msgid "" "domain name." msgstr "" -#: library/socket.rst:759 +#: library/socket.rst:772 msgid "The function returns a list of 5-tuples with the following structure:" msgstr "" -#: library/socket.rst:761 +#: library/socket.rst:774 msgid "``(family, type, proto, canonname, sockaddr)``" msgstr "" -#: library/socket.rst:763 +#: library/socket.rst:776 msgid "" "In these tuples, *family*, *type*, *proto* are all integers and are meant to " "be passed to the :func:`.socket` function. *canonname* will be a string " @@ -920,40 +939,41 @@ msgid "" "be passed to the :meth:`socket.connect` method." msgstr "" -#: library/socket.rst:773 +#: library/socket.rst:786 msgid "" "Raises an :ref:`auditing event ` ``socket.getaddrinfo`` with " "arguments ``host``, ``port``, ``family``, ``type``, ``protocol``." msgstr "" -#: library/socket.rst:775 +#: library/socket.rst:788 msgid "" "The following example fetches address information for a hypothetical TCP " "connection to ``example.org`` on port 80 (results may differ on your system " "if IPv6 isn't enabled)::" msgstr "" -#: library/socket.rst:785 +#: library/socket.rst:798 msgid "parameters can now be passed using keyword arguments." msgstr "" -#: library/socket.rst:788 +#: library/socket.rst:801 msgid "" "for IPv6 multicast addresses, string representing an address will not " "contain ``%scope_id`` part." msgstr "" -#: library/socket.rst:794 +#: library/socket.rst:807 msgid "" "Return a fully qualified domain name for *name*. If *name* is omitted or " "empty, it is interpreted as the local host. To find the fully qualified " "name, the hostname returned by :func:`gethostbyaddr` is checked, followed by " "aliases for the host, if available. The first name which includes a period " -"is selected. In case no fully qualified domain name is available, the " -"hostname as returned by :func:`gethostname` is returned." +"is selected. In case no fully qualified domain name is available and *name* " +"was provided, it is returned unchanged. If *name* was empty or equal to " +"``'0.0.0.0'``, the hostname from :func:`gethostname` is returned." msgstr "" -#: library/socket.rst:804 +#: library/socket.rst:818 msgid "" "Translate a host name to IPv4 address format. The IPv4 address is returned " "as a string, such as ``'100.50.200.5'``. If the host name is an IPv4 " @@ -963,13 +983,13 @@ msgid "" "stack support." msgstr "" -#: library/socket.rst:824 +#: library/socket.rst:838 msgid "" "Raises an :ref:`auditing event ` ``socket.gethostbyname`` with " "argument ``hostname``." msgstr "" -#: library/socket.rst:815 +#: library/socket.rst:829 msgid "" "Translate a host name to IPv4 address format, extended interface. Return a " "triple ``(hostname, aliaslist, ipaddrlist)`` where *hostname* is the primary " @@ -981,25 +1001,25 @@ msgid "" "IPv4/v6 dual stack support." msgstr "" -#: library/socket.rst:829 +#: library/socket.rst:843 msgid "" "Return a string containing the hostname of the machine where the Python " "interpreter is currently executing." msgstr "" -#: library/socket.rst:832 +#: library/socket.rst:846 msgid "" "Raises an :ref:`auditing event ` ``socket.gethostname`` with no " "arguments." msgstr "" -#: library/socket.rst:834 +#: library/socket.rst:848 msgid "" "Note: :func:`gethostname` doesn't always return the fully qualified domain " "name; use :func:`getfqdn` for that." msgstr "" -#: library/socket.rst:840 +#: library/socket.rst:854 msgid "" "Return a triple ``(hostname, aliaslist, ipaddrlist)`` where *hostname* is " "the primary host name responding to the given *ip_address*, *aliaslist* is a " @@ -1010,13 +1030,13 @@ msgid "" "`gethostbyaddr` supports both IPv4 and IPv6." msgstr "" -#: library/socket.rst:848 +#: library/socket.rst:862 msgid "" "Raises an :ref:`auditing event ` ``socket.gethostbyaddr`` with " "argument ``ip_address``." msgstr "" -#: library/socket.rst:853 +#: library/socket.rst:867 msgid "" "Translate a socket address *sockaddr* into a 2-tuple ``(host, port)``. " "Depending on the settings of *flags*, the result can contain a fully-" @@ -1024,95 +1044,92 @@ msgid "" "Similarly, *port* can contain a string port name or a numeric port number." msgstr "" -#: library/socket.rst:858 +#: library/socket.rst:872 msgid "" "For IPv6 addresses, ``%scope_id`` is appended to the host part if *sockaddr* " "contains meaningful *scope_id*. Usually this happens for multicast addresses." msgstr "" -#: library/socket.rst:861 +#: library/socket.rst:875 msgid "" "For more information about *flags* you can consult :manpage:`getnameinfo(3)`." msgstr "" -#: library/socket.rst:863 +#: library/socket.rst:877 msgid "" "Raises an :ref:`auditing event ` ``socket.getnameinfo`` with " "argument ``sockaddr``." msgstr "" -#: library/socket.rst:867 +#: library/socket.rst:881 msgid "" -"Translate an Internet protocol name (for example, ``'icmp'``) to a constant " +"Translate an internet protocol name (for example, ``'icmp'``) to a constant " "suitable for passing as the (optional) third argument to the :func:`.socket` " "function. This is usually only needed for sockets opened in \"raw\" mode (:" "const:`SOCK_RAW`); for the normal socket modes, the correct protocol is " "chosen automatically if the protocol is omitted or zero." msgstr "" -#: library/socket.rst:876 +#: library/socket.rst:890 msgid "" -"Translate an Internet service name and protocol name to a port number for " +"Translate an internet service name and protocol name to a port number for " "that service. The optional protocol name, if given, should be ``'tcp'`` or " "``'udp'``, otherwise any protocol will match." msgstr "" -#: library/socket.rst:880 +#: library/socket.rst:894 msgid "" "Raises an :ref:`auditing event ` ``socket.getservbyname`` with " "arguments ``servicename``, ``protocolname``." msgstr "" -#: library/socket.rst:885 +#: library/socket.rst:899 msgid "" -"Translate an Internet port number and protocol name to a service name for " +"Translate an internet port number and protocol name to a service name for " "that service. The optional protocol name, if given, should be ``'tcp'`` or " "``'udp'``, otherwise any protocol will match." msgstr "" -#: library/socket.rst:889 +#: library/socket.rst:903 msgid "" "Raises an :ref:`auditing event ` ``socket.getservbyport`` with " "arguments ``port``, ``protocolname``." msgstr "" -#: library/socket.rst:894 +#: library/socket.rst:908 msgid "" "Convert 32-bit positive integers from network to host byte order. On " "machines where the host byte order is the same as network byte order, this " "is a no-op; otherwise, it performs a 4-byte swap operation." msgstr "" -#: library/socket.rst:901 +#: library/socket.rst:915 msgid "" "Convert 16-bit positive integers from network to host byte order. On " "machines where the host byte order is the same as network byte order, this " "is a no-op; otherwise, it performs a 2-byte swap operation." msgstr "" -#: library/socket.rst:925 +#: library/socket.rst:937 msgid "" -"In case *x* does not fit in 16-bit unsigned integer, but does fit in a " -"positive C int, it is silently truncated to 16-bit unsigned integer. This " -"silent truncation feature is deprecated, and will raise an exception in " -"future versions of Python." +"Raises :exc:`OverflowError` if *x* does not fit in a 16-bit unsigned integer." msgstr "" -#: library/socket.rst:914 +#: library/socket.rst:926 msgid "" "Convert 32-bit positive integers from host to network byte order. On " "machines where the host byte order is the same as network byte order, this " "is a no-op; otherwise, it performs a 4-byte swap operation." msgstr "" -#: library/socket.rst:921 +#: library/socket.rst:933 msgid "" "Convert 16-bit positive integers from host to network byte order. On " "machines where the host byte order is the same as network byte order, this " "is a no-op; otherwise, it performs a 2-byte swap operation." msgstr "" -#: library/socket.rst:934 +#: library/socket.rst:944 msgid "" "Convert an IPv4 address from dotted-quad string format (for example, " "'123.45.67.89') to 32-bit packed binary format, as a bytes object four " @@ -1122,26 +1139,26 @@ msgid "" "returns." msgstr "" -#: library/socket.rst:940 +#: library/socket.rst:950 msgid "" ":func:`inet_aton` also accepts strings with less than three dots; see the " "Unix manual page :manpage:`inet(3)` for details." msgstr "" -#: library/socket.rst:943 +#: library/socket.rst:953 msgid "" "If the IPv4 address string passed to this function is invalid, :exc:" "`OSError` will be raised. Note that exactly what is valid depends on the " "underlying C implementation of :c:func:`inet_aton`." msgstr "" -#: library/socket.rst:947 +#: library/socket.rst:957 msgid "" ":func:`inet_aton` does not support IPv6, and :func:`inet_pton` should be " "used instead for IPv4/v6 dual stack support." msgstr "" -#: library/socket.rst:953 +#: library/socket.rst:963 msgid "" "Convert a 32-bit packed IPv4 address (a :term:`bytes-like object` four bytes " "in length) to its standard dotted-quad string representation (for example, " @@ -1151,7 +1168,7 @@ msgid "" "an argument." msgstr "" -#: library/socket.rst:960 +#: library/socket.rst:970 msgid "" "If the byte sequence passed to this function is not exactly 4 bytes in " "length, :exc:`OSError` will be raised. :func:`inet_ntoa` does not support " @@ -1159,7 +1176,7 @@ msgid "" "support." msgstr "" -#: library/socket.rst:971 +#: library/socket.rst:981 msgid "" "Convert an IP address from its family-specific string format to a packed, " "binary format. :func:`inet_pton` is useful when a library or network " @@ -1167,7 +1184,7 @@ msgid "" "func:`inet_aton`) or :c:type:`struct in6_addr`." msgstr "" -#: library/socket.rst:976 +#: library/socket.rst:986 msgid "" "Supported values for *address_family* are currently :const:`AF_INET` and :" "const:`AF_INET6`. If the IP address string *ip_string* is invalid, :exc:" @@ -1176,16 +1193,16 @@ msgid "" "`inet_pton`." msgstr "" -#: library/socket.rst:1003 +#: library/socket.rst:1013 msgid "" ":ref:`Availability `: Unix (maybe not all platforms), Windows." msgstr "" -#: library/socket.rst:1004 +#: library/socket.rst:1014 msgid "Windows support added" msgstr "Ajout de la gestion de Windows." -#: library/socket.rst:990 +#: library/socket.rst:1000 msgid "" "Convert a packed IP address (a :term:`bytes-like object` of some number of " "bytes) to its standard, family-specific string representation (for example, " @@ -1194,7 +1211,7 @@ msgid "" "in_addr` (similar to :func:`inet_ntoa`) or :c:type:`struct in6_addr`." msgstr "" -#: library/socket.rst:997 +#: library/socket.rst:1007 msgid "" "Supported values for *address_family* are currently :const:`AF_INET` and :" "const:`AF_INET6`. If the bytes object *packed_ip* is not the correct length " @@ -1202,7 +1219,7 @@ msgid "" "`OSError` is raised for errors from the call to :func:`inet_ntop`." msgstr "" -#: library/socket.rst:1019 +#: library/socket.rst:1029 msgid "" "Return the total length, without trailing padding, of an ancillary data item " "with associated data of the given *length*. This value can often be used as " @@ -1213,12 +1230,12 @@ msgid "" "the permissible range of values." msgstr "" -#: library/socket.rst:1050 library/socket.rst:1537 library/socket.rst:1643 +#: library/socket.rst:1060 library/socket.rst:1547 library/socket.rst:1653 msgid "" ":ref:`Availability `: most Unix platforms, possibly others." msgstr "" -#: library/socket.rst:1035 +#: library/socket.rst:1045 msgid "" "Return the buffer size needed for :meth:`~socket.recvmsg` to receive an " "ancillary data item with associated data of the given *length*, along with " @@ -1228,7 +1245,7 @@ msgid "" "values." msgstr "" -#: library/socket.rst:1043 +#: library/socket.rst:1053 msgid "" "Note that some systems might support ancillary data without providing this " "function. Also note that setting the buffer size using the results of this " @@ -1236,142 +1253,142 @@ msgid "" "received, since additional data may be able to fit into the padding area." msgstr "" -#: library/socket.rst:1056 +#: library/socket.rst:1066 msgid "" "Return the default timeout in seconds (float) for new socket objects. A " "value of ``None`` indicates that new socket objects have no timeout. When " "the socket module is first imported, the default is ``None``." msgstr "" -#: library/socket.rst:1063 +#: library/socket.rst:1073 msgid "" "Set the default timeout in seconds (float) for new socket objects. When the " "socket module is first imported, the default is ``None``. See :meth:" "`~socket.settimeout` for possible values and their respective meanings." msgstr "" -#: library/socket.rst:1071 +#: library/socket.rst:1081 msgid "" "Set the machine's hostname to *name*. This will raise an :exc:`OSError` if " "you don't have enough rights." msgstr "" -#: library/socket.rst:1074 +#: library/socket.rst:1084 msgid "" "Raises an :ref:`auditing event ` ``socket.sethostname`` with " "argument ``name``." msgstr "" -#: library/socket.rst:1077 +#: library/socket.rst:1087 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." -#: library/socket.rst:1083 +#: library/socket.rst:1093 msgid "" "Return a list of network interface information (index int, name string) " "tuples. :exc:`OSError` if the system call fails." msgstr "" -#: library/socket.rst:1115 library/socket.rst:1132 +#: library/socket.rst:1125 library/socket.rst:1142 msgid ":ref:`Availability `: Unix, Windows." msgstr ":ref:`Disponibilité ` : Unix, Windows." -#: library/socket.rst:1118 library/socket.rst:1135 +#: library/socket.rst:1128 library/socket.rst:1145 #, fuzzy msgid "Windows support was added." msgstr "Ajout de la gestion de Windows." -#: library/socket.rst:1096 +#: library/socket.rst:1106 msgid "" "On Windows network interfaces have different names in different contexts " "(all names are examples):" msgstr "" -#: library/socket.rst:1099 +#: library/socket.rst:1109 msgid "UUID: ``{FB605B73-AAC2-49A6-9A2F-25416AEA0573}``" msgstr "" -#: library/socket.rst:1100 +#: library/socket.rst:1110 msgid "name: ``ethernet_32770``" msgstr "" -#: library/socket.rst:1101 +#: library/socket.rst:1111 msgid "friendly name: ``vEthernet (nat)``" msgstr "" -#: library/socket.rst:1102 +#: library/socket.rst:1112 msgid "description: ``Hyper-V Virtual Ethernet Adapter``" msgstr "" -#: library/socket.rst:1104 +#: library/socket.rst:1114 msgid "" "This function returns names of the second form from the list, " "``ethernet_32770`` in this example case." msgstr "" -#: library/socket.rst:1110 +#: library/socket.rst:1120 msgid "" "Return a network interface index number corresponding to an interface name. :" "exc:`OSError` if no interface with the given name exists." msgstr "" -#: library/socket.rst:1139 +#: library/socket.rst:1149 msgid "\"Interface name\" is a name as documented in :func:`if_nameindex`." msgstr "" -#: library/socket.rst:1127 +#: library/socket.rst:1137 msgid "" "Return a network interface name corresponding to an interface index number. :" "exc:`OSError` if no interface with the given index exists." msgstr "" -#: library/socket.rst:1144 +#: library/socket.rst:1154 msgid "" "Send the list of file descriptors *fds* over an :const:`AF_UNIX` socket " "*sock*. The *fds* parameter is a sequence of file descriptors. Consult :meth:" "`sendmsg` for the documentation of these parameters." msgstr "" -#: library/socket.rst:1149 +#: library/socket.rst:1159 msgid "" ":ref:`Availability `: Unix supporting :meth:`~socket.sendmsg` " "and :const:`SCM_RIGHTS` mechanism." msgstr "" -#: library/socket.rst:1155 +#: library/socket.rst:1165 msgid "" "Receive up to *maxfds* file descriptors from an :const:`AF_UNIX` socket " "*sock*. Return ``(msg, list(fds), flags, addr)``. Consult :meth:`recvmsg` " "for the documentation of these parameters." msgstr "" -#: library/socket.rst:1160 +#: library/socket.rst:1170 msgid "" ":ref:`Availability `: Unix supporting :meth:`~socket.recvmsg` " "and :const:`SCM_RIGHTS` mechanism." msgstr "" -#: library/socket.rst:1165 +#: library/socket.rst:1175 msgid "Any truncated integers at the end of the list of file descriptors." msgstr "" -#: library/socket.rst:1171 +#: library/socket.rst:1181 msgid "Socket Objects" msgstr "" -#: library/socket.rst:1173 +#: library/socket.rst:1183 msgid "" "Socket objects have the following methods. Except for :meth:`~socket." "makefile`, these correspond to Unix system calls applicable to sockets." msgstr "" -#: library/socket.rst:1177 +#: library/socket.rst:1187 msgid "" "Support for the :term:`context manager` protocol was added. Exiting the " "context manager is equivalent to calling :meth:`~socket.close`." msgstr "" -#: library/socket.rst:1184 +#: library/socket.rst:1194 msgid "" "Accept a connection. The socket must be bound to an address and listening " "for connections. The return value is a pair ``(conn, address)`` where *conn* " @@ -1380,12 +1397,12 @@ msgid "" "connection." msgstr "" -#: library/socket.rst:1278 +#: library/socket.rst:1288 msgid "The socket is now non-inheritable." msgstr "" -#: library/socket.rst:1409 library/socket.rst:1498 library/socket.rst:1588 -#: library/socket.rst:1648 +#: library/socket.rst:1419 library/socket.rst:1508 library/socket.rst:1598 +#: library/socket.rst:1658 msgid "" "If the system call is interrupted and the signal handler does not raise an " "exception, the method now retries the system call instead of raising an :exc:" @@ -1395,19 +1412,19 @@ msgstr "" "aucune exception, la fonction réessaye l'appel système au lieu de lever une :" "exc:`InterruptedError` (voir la :pep:`475` à propos du raisonnement)." -#: library/socket.rst:1202 +#: library/socket.rst:1212 msgid "" "Bind the socket to *address*. The socket must not already be bound. (The " "format of *address* depends on the address family --- see above.)" msgstr "" -#: library/socket.rst:1205 +#: library/socket.rst:1215 msgid "" "Raises an :ref:`auditing event ` ``socket.bind`` with arguments " "``self``, ``address``." msgstr "" -#: library/socket.rst:1209 +#: library/socket.rst:1219 msgid "" "Mark the socket closed. The underlying system resource (e.g. a file " "descriptor) is also closed when all file objects from :meth:`makefile()` are " @@ -1416,20 +1433,20 @@ msgid "" "flushed)." msgstr "" -#: library/socket.rst:1215 +#: library/socket.rst:1225 msgid "" "Sockets are automatically closed when they are garbage-collected, but it is " "recommended to :meth:`close` them explicitly, or to use a :keyword:`with` " "statement around them." msgstr "" -#: library/socket.rst:1219 +#: library/socket.rst:1229 msgid "" ":exc:`OSError` is now raised if an error occurs when the underlying :c:func:" "`close` call is made." msgstr "" -#: library/socket.rst:1225 +#: library/socket.rst:1235 msgid "" ":meth:`close()` releases the resource associated with a connection but does " "not necessarily close the connection immediately. If you want to close the " @@ -1437,29 +1454,29 @@ msgid "" "`close()`." msgstr "" -#: library/socket.rst:1233 +#: library/socket.rst:1243 msgid "" "Connect to a remote socket at *address*. (The format of *address* depends on " "the address family --- see above.)" msgstr "" -#: library/socket.rst:1236 +#: library/socket.rst:1246 msgid "" "If the connection is interrupted by a signal, the method waits until the " -"connection completes, or raise a :exc:`socket.timeout` on timeout, if the " +"connection completes, or raise a :exc:`TimeoutError` on timeout, if the " "signal handler doesn't raise an exception and the socket is blocking or has " "a timeout. For non-blocking sockets, the method raises an :exc:" "`InterruptedError` exception if the connection is interrupted by a signal " "(or the exception raised by the signal handler)." msgstr "" -#: library/socket.rst:1261 +#: library/socket.rst:1271 msgid "" "Raises an :ref:`auditing event ` ``socket.connect`` with arguments " "``self``, ``address``." msgstr "" -#: library/socket.rst:1245 +#: library/socket.rst:1255 msgid "" "The method now waits until the connection completes instead of raising an :" "exc:`InterruptedError` exception if the connection is interrupted by a " @@ -1467,7 +1484,7 @@ msgid "" "blocking or has a timeout (see the :pep:`475` for the rationale)." msgstr "" -#: library/socket.rst:1254 +#: library/socket.rst:1264 msgid "" "Like ``connect(address)``, but return an error indicator instead of raising " "an exception for errors returned by the C-level :c:func:`connect` call " @@ -1477,38 +1494,38 @@ msgid "" "asynchronous connects." msgstr "" -#: library/socket.rst:1265 +#: library/socket.rst:1275 msgid "" "Put the socket object into closed state without actually closing the " "underlying file descriptor. The file descriptor is returned, and can be " "reused for other purposes." msgstr "" -#: library/socket.rst:1274 +#: library/socket.rst:1284 msgid "Duplicate the socket." msgstr "" -#: library/socket.rst:1284 +#: library/socket.rst:1294 msgid "" "Return the socket's file descriptor (a small integer), or -1 on failure. " "This is useful with :func:`select.select`." msgstr "" -#: library/socket.rst:1287 +#: library/socket.rst:1297 msgid "" "Under Windows the small integer returned by this method cannot be used where " "a file descriptor can be used (such as :func:`os.fdopen`). Unix does not " "have this limitation." msgstr "" -#: library/socket.rst:1293 +#: library/socket.rst:1303 msgid "" "Get the :ref:`inheritable flag ` of the socket's file " "descriptor or socket's handle: ``True`` if the socket can be inherited in " "child processes, ``False`` if it cannot." msgstr "" -#: library/socket.rst:1302 +#: library/socket.rst:1312 msgid "" "Return the remote address to which the socket is connected. This is useful " "to find out the port number of a remote IPv4/v6 socket, for instance. (The " @@ -1516,14 +1533,14 @@ msgid "" "above.) On some systems this function is not supported." msgstr "" -#: library/socket.rst:1310 +#: library/socket.rst:1320 msgid "" "Return the socket's own address. This is useful to find out the port number " "of an IPv4/v6 socket, for instance. (The format of the address returned " "depends on the address family --- see above.)" msgstr "" -#: library/socket.rst:1317 +#: library/socket.rst:1327 msgid "" "Return the value of the given socket option (see the Unix man page :manpage:" "`getsockopt(2)`). The needed symbolic constants (:const:`SO_\\*` etc.) are " @@ -1535,16 +1552,16 @@ msgid "" "`struct` for a way to decode C structures encoded as byte strings)." msgstr "" -#: library/socket.rst:1329 +#: library/socket.rst:1339 msgid "" "Return ``True`` if socket is in blocking mode, ``False`` if in non-blocking." msgstr "" -#: library/socket.rst:1332 +#: library/socket.rst:1342 msgid "This is equivalent to checking ``socket.gettimeout() == 0``." msgstr "" -#: library/socket.rst:1339 +#: library/socket.rst:1349 msgid "" "Return the timeout in seconds (float) associated with socket operations, or " "``None`` if no timeout is set. This reflects the last call to :meth:" @@ -1555,30 +1572,30 @@ msgstr "" msgid "platform" msgstr "" -#: library/socket.rst:1346 +#: library/socket.rst:1356 msgid "Windows" msgstr "Windows" -#: library/socket.rst:1348 +#: library/socket.rst:1358 msgid "" "The :meth:`ioctl` method is a limited interface to the WSAIoctl system " "interface. Please refer to the `Win32 documentation `_ for more information." msgstr "" -#: library/socket.rst:1353 +#: library/socket.rst:1363 msgid "" "On other platforms, the generic :func:`fcntl.fcntl` and :func:`fcntl.ioctl` " "functions may be used; they accept a socket object as their first argument." msgstr "" -#: library/socket.rst:1356 +#: library/socket.rst:1366 msgid "" "Currently only the following control codes are supported: ``SIO_RCVALL``, " "``SIO_KEEPALIVE_VALS``, and ``SIO_LOOPBACK_FAST_PATH``." msgstr "" -#: library/socket.rst:1364 +#: library/socket.rst:1374 msgid "" "Enable a server to accept connections. If *backlog* is specified, it must " "be at least 0 (if it is lower, it is set to 0); it specifies the number of " @@ -1586,11 +1603,11 @@ msgid "" "connections. If not specified, a default reasonable value is chosen." msgstr "" -#: library/socket.rst:1369 +#: library/socket.rst:1379 msgid "The *backlog* parameter is now optional." msgstr "" -#: library/socket.rst:1377 +#: library/socket.rst:1387 msgid "" "Return a :term:`file object` associated with the socket. The exact returned " "type depends on the arguments given to :meth:`makefile`. These arguments " @@ -1599,28 +1616,28 @@ msgid "" "``'b'``." msgstr "" -#: library/socket.rst:1382 +#: library/socket.rst:1392 msgid "" "The socket must be in blocking mode; it can have a timeout, but the file " "object's internal buffer may end up in an inconsistent state if a timeout " "occurs." msgstr "" -#: library/socket.rst:1386 +#: library/socket.rst:1396 msgid "" "Closing the file object returned by :meth:`makefile` won't close the " "original socket unless all other file objects have been closed and :meth:" "`socket.close` has been called on the socket object." msgstr "" -#: library/socket.rst:1392 +#: library/socket.rst:1402 msgid "" "On Windows, the file-like object created by :meth:`makefile` cannot be used " "where a file object with a file descriptor is expected, such as the stream " "arguments of :meth:`subprocess.Popen`." msgstr "" -#: library/socket.rst:1399 +#: library/socket.rst:1409 msgid "" "Receive data from the socket. The return value is a bytes object " "representing the data received. The maximum amount of data to be received " @@ -1629,13 +1646,13 @@ msgid "" "zero." msgstr "" -#: library/socket.rst:1406 +#: library/socket.rst:1416 msgid "" "For best match with hardware and network realities, the value of *bufsize* " "should be a relatively small power of 2, for example, 4096." msgstr "" -#: library/socket.rst:1417 +#: library/socket.rst:1427 msgid "" "Receive data from the socket. The return value is a pair ``(bytes, " "address)`` where *bytes* is a bytes object representing the data received " @@ -1645,14 +1662,14 @@ msgid "" "address family --- see above.)" msgstr "" -#: library/socket.rst:1428 +#: library/socket.rst:1438 msgid "" "For multicast IPv6 address, first item of *address* does not contain ``" "%scope_id`` part anymore. In order to get full IPv6 address use :func:" "`getnameinfo`." msgstr "" -#: library/socket.rst:1435 +#: library/socket.rst:1445 msgid "" "Receive normal data (up to *bufsize* bytes) and ancillary data from the " "socket. The *ancbufsize* argument sets the size in bytes of the internal " @@ -1663,7 +1680,7 @@ msgid "" "*flags* argument defaults to 0 and has the same meaning as for :meth:`recv`." msgstr "" -#: library/socket.rst:1445 +#: library/socket.rst:1455 msgid "" "The return value is a 4-tuple: ``(data, ancdata, msg_flags, address)``. The " "*data* item is a :class:`bytes` object holding the non-ancillary data " @@ -1678,7 +1695,7 @@ msgid "" "socket, if available; otherwise, its value is unspecified." msgstr "" -#: library/socket.rst:1459 +#: library/socket.rst:1469 msgid "" "On some systems, :meth:`sendmsg` and :meth:`recvmsg` can be used to pass " "file descriptors between processes over an :const:`AF_UNIX` socket. When " @@ -1691,7 +1708,7 @@ msgid "" "descriptors received via this mechanism." msgstr "" -#: library/socket.rst:1470 +#: library/socket.rst:1480 msgid "" "Some systems do not indicate the truncated length of ancillary data items " "which have been only partially received. If an item appears to extend " @@ -1700,7 +1717,7 @@ msgid "" "provided it has not been truncated before the start of its associated data." msgstr "" -#: library/socket.rst:1477 +#: library/socket.rst:1487 msgid "" "On systems which support the :const:`SCM_RIGHTS` mechanism, the following " "function will receive up to *maxfds* file descriptors, returning the message " @@ -1709,7 +1726,7 @@ msgid "" "meth:`sendmsg`. ::" msgstr "" -#: library/socket.rst:1506 +#: library/socket.rst:1516 msgid "" "Receive normal data and ancillary data from the socket, behaving as :meth:" "`recvmsg` would, but scatter the non-ancillary data into a series of buffers " @@ -1722,7 +1739,7 @@ msgid "" "arguments have the same meaning as for :meth:`recvmsg`." msgstr "" -#: library/socket.rst:1517 +#: library/socket.rst:1527 msgid "" "The return value is a 4-tuple: ``(nbytes, ancdata, msg_flags, address)``, " "where *nbytes* is the total number of bytes of non-ancillary data written " @@ -1730,11 +1747,11 @@ msgid "" "for :meth:`recvmsg`." msgstr "" -#: library/socket.rst:1522 +#: library/socket.rst:1532 msgid "Example::" msgstr "Exemple ::" -#: library/socket.rst:1543 +#: library/socket.rst:1553 msgid "" "Receive data from the socket, writing it into *buffer* instead of creating a " "new bytestring. The return value is a pair ``(nbytes, address)`` where " @@ -1744,7 +1761,7 @@ msgid "" "format of *address* depends on the address family --- see above.)" msgstr "" -#: library/socket.rst:1553 +#: library/socket.rst:1563 msgid "" "Receive up to *nbytes* bytes from the socket, storing the data into a buffer " "rather than creating a new bytestring. If *nbytes* is not specified (or 0), " @@ -1753,7 +1770,7 @@ msgid "" "of the optional argument *flags*; it defaults to zero." msgstr "" -#: library/socket.rst:1562 +#: library/socket.rst:1572 msgid "" "Send data to the socket. The socket must be connected to a remote socket. " "The optional *flags* argument has the same meaning as for :meth:`recv` " @@ -1763,7 +1780,7 @@ msgid "" "data. For further information on this topic, consult the :ref:`socket-howto`." msgstr "" -#: library/socket.rst:1577 +#: library/socket.rst:1587 msgid "" "Send data to the socket. The socket must be connected to a remote socket. " "The optional *flags* argument has the same meaning as for :meth:`recv` " @@ -1773,13 +1790,13 @@ msgid "" "to determine how much data, if any, was successfully sent." msgstr "" -#: library/socket.rst:1584 +#: library/socket.rst:1594 msgid "" "The socket timeout is no more reset each time data is sent successfully. The " "socket timeout is now the maximum total duration to send all data." msgstr "" -#: library/socket.rst:1597 +#: library/socket.rst:1607 msgid "" "Send data to the socket. The socket should not be connected to a remote " "socket, since the destination socket is specified by *address*. The " @@ -1788,13 +1805,13 @@ msgid "" "address family --- see above.)" msgstr "" -#: library/socket.rst:1603 +#: library/socket.rst:1613 msgid "" "Raises an :ref:`auditing event ` ``socket.sendto`` with arguments " "``self``, ``address``." msgstr "" -#: library/socket.rst:1613 +#: library/socket.rst:1623 msgid "" "Send normal and ancillary data to the socket, gathering the non-ancillary " "data from a series of buffers and concatenating it into a single message. " @@ -1814,27 +1831,27 @@ msgid "" "bytes of non-ancillary data sent." msgstr "" -#: library/socket.rst:1633 +#: library/socket.rst:1643 msgid "" "The following function sends the list of file descriptors *fds* over an :" "const:`AF_UNIX` socket, on systems which support the :const:`SCM_RIGHTS` " "mechanism. See also :meth:`recvmsg`. ::" msgstr "" -#: library/socket.rst:1644 +#: library/socket.rst:1654 msgid "" "Raises an :ref:`auditing event ` ``socket.sendmsg`` with arguments " "``self``, ``address``." msgstr "" -#: library/socket.rst:1655 +#: library/socket.rst:1665 msgid "" "Specialized version of :meth:`~socket.sendmsg` for :const:`AF_ALG` socket. " "Set mode, IV, AEAD associated data length and flags for :const:`AF_ALG` " "socket." msgstr "" -#: library/socket.rst:1664 +#: library/socket.rst:1674 msgid "" "Send a file until EOF is reached by using high-performance :mod:`os." "sendfile` and return the total number of bytes which were sent. *file* must " @@ -1848,38 +1865,38 @@ msgid "" "be of :const:`SOCK_STREAM` type. Non-blocking sockets are not supported." msgstr "" -#: library/socket.rst:1680 +#: library/socket.rst:1690 msgid "" "Set the :ref:`inheritable flag ` of the socket's file " "descriptor or socket's handle." msgstr "" -#: library/socket.rst:1688 +#: library/socket.rst:1698 msgid "" "Set blocking or non-blocking mode of the socket: if *flag* is false, the " "socket is set to non-blocking, else to blocking mode." msgstr "" -#: library/socket.rst:1691 +#: library/socket.rst:1701 msgid "" "This method is a shorthand for certain :meth:`~socket.settimeout` calls:" msgstr "" -#: library/socket.rst:1693 +#: library/socket.rst:1703 msgid "``sock.setblocking(True)`` is equivalent to ``sock.settimeout(None)``" msgstr "" -#: library/socket.rst:1695 +#: library/socket.rst:1705 msgid "``sock.setblocking(False)`` is equivalent to ``sock.settimeout(0.0)``" msgstr "" -#: library/socket.rst:1697 +#: library/socket.rst:1707 msgid "" "The method no longer applies :const:`SOCK_NONBLOCK` flag on :attr:`socket." "type`." msgstr "" -#: library/socket.rst:1704 +#: library/socket.rst:1714 msgid "" "Set a timeout on blocking socket operations. The *value* argument can be a " "nonnegative floating point number expressing seconds, or ``None``. If a non-" @@ -1889,19 +1906,19 @@ msgid "" "blocking mode. If ``None`` is given, the socket is put in blocking mode." msgstr "" -#: library/socket.rst:1711 +#: library/socket.rst:1721 msgid "" "For further information, please consult the :ref:`notes on socket timeouts " "`." msgstr "" -#: library/socket.rst:1713 +#: library/socket.rst:1723 msgid "" "The method no longer toggles :const:`SOCK_NONBLOCK` flag on :attr:`socket." "type`." msgstr "" -#: library/socket.rst:1726 +#: library/socket.rst:1736 msgid "" "Set the value of the given socket option (see the Unix manual page :manpage:" "`setsockopt(2)`). The needed symbolic constants are defined in the :mod:" @@ -1914,11 +1931,11 @@ msgid "" "C function with ``optval=NULL`` and ``optlen=optlen``." msgstr "" -#: library/socket.rst:1740 +#: library/socket.rst:1750 msgid "setsockopt(level, optname, None, optlen: int) form added." msgstr "" -#: library/socket.rst:1746 +#: library/socket.rst:1756 msgid "" "Shut down one or both halves of the connection. If *how* is :const:" "`SHUT_RD`, further receives are disallowed. If *how* is :const:`SHUT_WR`, " @@ -1926,7 +1943,7 @@ msgid "" "and receives are disallowed." msgstr "" -#: library/socket.rst:1754 +#: library/socket.rst:1764 msgid "" "Duplicate a socket and prepare it for sharing with a target process. The " "target process must be provided with *process_id*. The resulting bytes " @@ -1937,48 +1954,48 @@ msgid "" "process." msgstr "" -#: library/socket.rst:1766 +#: library/socket.rst:1776 msgid "" "Note that there are no methods :meth:`read` or :meth:`write`; use :meth:" "`~socket.recv` and :meth:`~socket.send` without *flags* argument instead." msgstr "" -#: library/socket.rst:1769 +#: library/socket.rst:1779 msgid "" "Socket objects also have these (read-only) attributes that correspond to the " "values given to the :class:`~socket.socket` constructor." msgstr "" -#: library/socket.rst:1775 +#: library/socket.rst:1785 msgid "The socket family." msgstr "" -#: library/socket.rst:1780 +#: library/socket.rst:1790 msgid "The socket type." msgstr "" -#: library/socket.rst:1785 +#: library/socket.rst:1795 msgid "The socket protocol." msgstr "" -#: library/socket.rst:1792 +#: library/socket.rst:1802 msgid "Notes on socket timeouts" msgstr "" -#: library/socket.rst:1794 +#: library/socket.rst:1804 msgid "" "A socket object can be in one of three modes: blocking, non-blocking, or " "timeout. Sockets are by default always created in blocking mode, but this " "can be changed by calling :func:`setdefaulttimeout`." msgstr "" -#: library/socket.rst:1798 +#: library/socket.rst:1808 msgid "" "In *blocking mode*, operations block until complete or the system returns an " "error (such as connection timed out)." msgstr "" -#: library/socket.rst:1801 +#: library/socket.rst:1811 msgid "" "In *non-blocking mode*, operations fail (with an error that is unfortunately " "system-dependent) if they cannot be completed immediately: functions from " @@ -1986,14 +2003,14 @@ msgid "" "for reading or writing." msgstr "" -#: library/socket.rst:1806 +#: library/socket.rst:1816 msgid "" "In *timeout mode*, operations fail if they cannot be completed within the " "timeout specified for the socket (they raise a :exc:`timeout` exception) or " "if the system returns an error." msgstr "" -#: library/socket.rst:1811 +#: library/socket.rst:1821 msgid "" "At the operating system level, sockets in *timeout mode* are internally set " "in non-blocking mode. Also, the blocking and timeout modes are shared " @@ -2002,11 +2019,11 @@ msgid "" "you decide to use the :meth:`~socket.fileno()` of a socket." msgstr "" -#: library/socket.rst:1818 +#: library/socket.rst:1828 msgid "Timeouts and the ``connect`` method" msgstr "" -#: library/socket.rst:1820 +#: library/socket.rst:1830 msgid "" "The :meth:`~socket.connect` operation is also subject to the timeout " "setting, and in general it is recommended to call :meth:`~socket.settimeout` " @@ -2016,24 +2033,24 @@ msgid "" "setting." msgstr "" -#: library/socket.rst:1828 +#: library/socket.rst:1838 msgid "Timeouts and the ``accept`` method" msgstr "" -#: library/socket.rst:1830 +#: library/socket.rst:1840 msgid "" "If :func:`getdefaulttimeout` is not :const:`None`, sockets returned by the :" "meth:`~socket.accept` method inherit that timeout. Otherwise, the behaviour " "depends on settings of the listening socket:" msgstr "" -#: library/socket.rst:1834 +#: library/socket.rst:1844 msgid "" "if the listening socket is in *blocking mode* or in *timeout mode*, the " "socket returned by :meth:`~socket.accept` is in *blocking mode*;" msgstr "" -#: library/socket.rst:1837 +#: library/socket.rst:1847 msgid "" "if the listening socket is in *non-blocking mode*, whether the socket " "returned by :meth:`~socket.accept` is in blocking or non-blocking mode is " @@ -2041,11 +2058,11 @@ msgid "" "it is recommended you manually override this setting." msgstr "" -#: library/socket.rst:1846 +#: library/socket.rst:1856 msgid "Example" msgstr "Exemple" -#: library/socket.rst:1848 +#: library/socket.rst:1858 msgid "" "Here are four minimal example programs using the TCP/IP protocol: a server " "that echoes all data that it receives back (servicing only one client), and " @@ -2058,11 +2075,11 @@ msgid "" "new socket returned by :meth:`~socket.accept`." msgstr "" -#: library/socket.rst:1858 +#: library/socket.rst:1868 msgid "The first two examples support IPv4 only. ::" msgstr "" -#: library/socket.rst:1889 +#: library/socket.rst:1899 msgid "" "The next two examples are identical to the above two, but support both IPv4 " "and IPv6. The server side will listen to the first address family available " @@ -2072,73 +2089,73 @@ msgid "" "resolution, and sends traffic to the first one connected successfully. ::" msgstr "" -#: library/socket.rst:1961 +#: library/socket.rst:1971 msgid "" "The next example shows how to write a very simple network sniffer with raw " "sockets on Windows. The example requires administrator privileges to modify " "the interface::" msgstr "" -#: library/socket.rst:1986 +#: library/socket.rst:1996 msgid "" "The next example shows how to use the socket interface to communicate to a " "CAN network using the raw socket protocol. To use CAN with the broadcast " "manager protocol instead, open a socket with::" msgstr "" -#: library/socket.rst:1992 +#: library/socket.rst:2002 msgid "" "After binding (:const:`CAN_RAW`) or connecting (:const:`CAN_BCM`) the " "socket, you can use the :meth:`socket.send`, and the :meth:`socket.recv` " "operations (and their counterparts) on the socket object as usual." msgstr "" -#: library/socket.rst:1996 +#: library/socket.rst:2006 msgid "This last example might require special privileges::" msgstr "" -#: library/socket.rst:2036 +#: library/socket.rst:2046 msgid "" "Running an example several times with too small delay between executions, " "could lead to this error::" msgstr "" -#: library/socket.rst:2041 +#: library/socket.rst:2051 msgid "" "This is because the previous execution has left the socket in a " "``TIME_WAIT`` state, and can't be immediately reused." msgstr "" -#: library/socket.rst:2044 +#: library/socket.rst:2054 msgid "" "There is a :mod:`socket` flag to set, in order to prevent this, :data:" "`socket.SO_REUSEADDR`::" msgstr "" -#: library/socket.rst:2051 +#: library/socket.rst:2061 msgid "" "the :data:`SO_REUSEADDR` flag tells the kernel to reuse a local socket in " "``TIME_WAIT`` state, without waiting for its natural timeout to expire." msgstr "" -#: library/socket.rst:2057 +#: library/socket.rst:2067 msgid "" "For an introduction to socket programming (in C), see the following papers:" msgstr "" -#: library/socket.rst:2059 +#: library/socket.rst:2069 msgid "" "*An Introductory 4.3BSD Interprocess Communication Tutorial*, by Stuart " "Sechrest" msgstr "" -#: library/socket.rst:2061 +#: library/socket.rst:2071 msgid "" "*An Advanced 4.3BSD Interprocess Communication Tutorial*, by Samuel J. " "Leffler et al," msgstr "" -#: library/socket.rst:2064 +#: library/socket.rst:2074 msgid "" "both in the UNIX Programmer's Manual, Supplementary Documents 1 (sections " "PS1:7 and PS1:8). The platform-specific reference material for the various " diff --git a/library/socketserver.po b/library/socketserver.po index 37e31786e..d1208ebf4 100644 --- a/library/socketserver.po +++ b/library/socketserver.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -34,7 +34,7 @@ msgstr "" #: library/socketserver.rst:18 msgid "" -"This uses the Internet TCP protocol, which provides for continuous streams " +"This uses the internet TCP protocol, which provides for continuous streams " "of data between the client and server. If *bind_and_activate* is true, the " "constructor automatically attempts to invoke :meth:`~BaseServer.server_bind` " "and :meth:`~BaseServer.server_activate`. The other parameters are passed to " @@ -295,7 +295,7 @@ msgstr "" msgid "" "The address on which the server is listening. The format of addresses " "varies depending on the protocol family; see the documentation for the :mod:" -"`socket` module for details. For Internet protocols, this is a tuple " +"`socket` module for details. For internet protocols, this is a tuple " "containing a string giving the address, and an integer port number: " "``('127.0.0.1', 80)``, for example." msgstr "" diff --git a/library/sqlite3.po b/library/sqlite3.po index c03030242..014a5edf4 100644 --- a/library/sqlite3.po +++ b/library/sqlite3.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-03-26 15:55+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -41,15 +41,16 @@ msgstr "" "robuste telle que PostgreSQL ou Oracle." #: library/sqlite3.rst:20 +#, fuzzy msgid "" "The sqlite3 module was written by Gerhard Häring. It provides a SQL " "interface compliant with the DB-API 2.0 specification described by :pep:" -"`249`." +"`249`, and requires SQLite 3.7.15 or newer." msgstr "" "Le module *sqlite3* a été écrit par Gerhard Häring. Il fournit une " "interface SQL conforme à la spécification DB-API 2.0 décrite par :pep:`249`." -#: library/sqlite3.rst:23 +#: library/sqlite3.rst:24 msgid "" "To use the module, you must first create a :class:`Connection` object that " "represents the database. Here the data will be stored in the :file:`example." @@ -59,7 +60,7 @@ msgstr "" "qui représente la base de données. Dans cet exemple, les données sont " "stockées dans le fichier :file:`example.db` ::" -#: library/sqlite3.rst:30 +#: library/sqlite3.rst:31 msgid "" "You can also supply the special name ``:memory:`` to create a database in " "RAM." @@ -67,7 +68,7 @@ msgstr "" "Vous pouvez également fournir le nom spécial ``:memory:`` pour créer une " "base de données dans la mémoire vive." -#: library/sqlite3.rst:32 +#: library/sqlite3.rst:33 msgid "" "Once you have a :class:`Connection`, you can create a :class:`Cursor` " "object and call its :meth:`~Cursor.execute` method to perform SQL commands::" @@ -76,14 +77,14 @@ msgstr "" "créer un objet :class:`Cursor` et appeler sa méthode :meth:`~Cursor.execute` " "pour exécuter les commandes SQL ::" -#: library/sqlite3.rst:51 +#: library/sqlite3.rst:52 msgid "" "The data you've saved is persistent and is available in subsequent sessions::" msgstr "" "Les données que vous avez sauvegardées sont persistantes et disponibles dans " "les sessions suivantes ::" -#: library/sqlite3.rst:57 +#: library/sqlite3.rst:58 msgid "" "To retrieve data after executing a SELECT statement, you can either treat " "the cursor as an :term:`iterator`, call the cursor's :meth:`~Cursor." @@ -96,11 +97,11 @@ msgstr "" "seule ligne correspondante ou appeler :meth:`~Cursor.fetchall` pour obtenir " "une liste des lignes correspondantes." -#: library/sqlite3.rst:62 +#: library/sqlite3.rst:63 msgid "This example uses the iterator form::" msgstr "Cet exemple utilise la forme itérateur ::" -#: library/sqlite3.rst:75 +#: library/sqlite3.rst:76 #, fuzzy msgid "" "Usually your SQL operations will need to use values from Python variables. " @@ -115,7 +116,7 @@ msgstr "" "votre programme vulnérable à une attaque par injection SQL (voir https://" "xkcd.com/327/ pour un exemple amusant de ce qui peut mal tourner)." -#: library/sqlite3.rst:85 +#: library/sqlite3.rst:86 msgid "" "Instead, use the DB-API's parameter substitution. Put a placeholder wherever " "you want to use a value, and then provide a tuple of values as the second " @@ -130,11 +131,11 @@ msgid "" "example of both styles:" msgstr "" -#: library/sqlite3.rst:104 +#: library/sqlite3.rst:105 msgid "https://www.sqlite.org" msgstr "https://www.sqlite.org" -#: library/sqlite3.rst:103 +#: library/sqlite3.rst:104 msgid "" "The SQLite web page; the documentation describes the syntax and the " "available data types for the supported SQL dialect." @@ -142,27 +143,27 @@ msgstr "" "Dans la page Web de SQLite, la documentation décrit la syntaxe et les types " "de données disponibles qui sont pris en charge par cette variante SQL." -#: library/sqlite3.rst:107 +#: library/sqlite3.rst:108 msgid "https://www.w3schools.com/sql/" msgstr "https://www.w3schools.com/sql/" -#: library/sqlite3.rst:107 +#: library/sqlite3.rst:108 msgid "Tutorial, reference and examples for learning SQL syntax." msgstr "Tutoriel, référence et exemples pour apprendre la syntaxe SQL." -#: library/sqlite3.rst:109 +#: library/sqlite3.rst:110 msgid ":pep:`249` - Database API Specification 2.0" msgstr ":pep:`249` — Spécifications de l'API 2.0 pour la base de données" -#: library/sqlite3.rst:110 +#: library/sqlite3.rst:111 msgid "PEP written by Marc-André Lemburg." msgstr "PEP écrite par Marc-André Lemburg." -#: library/sqlite3.rst:116 +#: library/sqlite3.rst:117 msgid "Module functions and constants" msgstr "Fonctions et constantes du module" -#: library/sqlite3.rst:121 +#: library/sqlite3.rst:122 msgid "" "The version number of this module, as a string. This is not the version of " "the SQLite library." @@ -170,7 +171,7 @@ msgstr "" "Le numéro de version de ce module, sous forme de chaîne. Ce n'est pas la " "version de la bibliothèque SQLite." -#: library/sqlite3.rst:127 +#: library/sqlite3.rst:128 msgid "" "The version number of this module, as a tuple of integers. This is not the " "version of the SQLite library." @@ -178,20 +179,20 @@ msgstr "" "Le numéro de version de ce module, sous forme d'un *n*-uplet d'entiers. Ce " "n'est pas la version de la bibliothèque SQLite." -#: library/sqlite3.rst:133 +#: library/sqlite3.rst:134 msgid "The version number of the run-time SQLite library, as a string." msgstr "" "Le numéro de version de la bibliothèque d'exécution SQLite, sous forme de " "chaîne." -#: library/sqlite3.rst:138 +#: library/sqlite3.rst:139 msgid "" "The version number of the run-time SQLite library, as a tuple of integers." msgstr "" "Le numéro de version de la bibliothèque d'exécution SQLite, sous forme " "d'entier." -#: library/sqlite3.rst:156 +#: library/sqlite3.rst:157 msgid "" "This constant is meant to be used with the *detect_types* parameter of the :" "func:`connect` function." @@ -199,7 +200,7 @@ msgstr "" "Cette constante est destinée à être utilisée avec le paramètre " "*detect_types* de la fonction :func:`connect`." -#: library/sqlite3.rst:146 +#: library/sqlite3.rst:147 msgid "" "Setting it makes the :mod:`sqlite3` module parse the declared type for each " "column it returns. It will parse out the first word of the declared type, " @@ -214,7 +215,7 @@ msgstr "" "de *number(10)* il gardera *number*. Ensuite, pour cette colonne, il " "utilisera une fonction de conversion du dictionnaire des convertisseurs." -#: library/sqlite3.rst:159 +#: library/sqlite3.rst:160 #, fuzzy msgid "" "Setting this makes the SQLite interface parse the column name for each " @@ -225,7 +226,7 @@ msgid "" "`Cursor.description` does not include the type, i. e. if you use something " "like ``'as \"Expiration date [datetime]\"'`` in your SQL, then we will parse " "out everything until the first ``'['`` for the column name and strip the " -"preceeding space: the column name would simply be \"Expiration date\"." +"preceding space: the column name would simply be \"Expiration date\"." msgstr "" "Permet à l’interface SQLite d'analyser le nom pour chaque colonne. Il y " "cherchera une chaîne comme ``[mytype]`` indiquant que la colonne est de type " @@ -236,7 +237,7 @@ msgstr "" "\\\"x [datetime]\\\"'`` dans votre code SQL, le nom de la colonne sera " "simplement *x*." -#: library/sqlite3.rst:172 +#: library/sqlite3.rst:173 msgid "" "Opens a connection to the SQLite database file *database*. By default " "returns a :class:`Connection` object, unless a custom *factory* is given." @@ -245,7 +246,7 @@ msgstr "" "cette commande renvoie un objet :class:`Connection`, sauf si *factory* est " "donné." -#: library/sqlite3.rst:175 +#: library/sqlite3.rst:176 msgid "" "*database* is a :term:`path-like object` giving the pathname (absolute or " "relative to the current working directory) of the database file to be " @@ -253,7 +254,7 @@ msgid "" "database that resides in RAM instead of on disk." msgstr "" -#: library/sqlite3.rst:180 +#: library/sqlite3.rst:181 msgid "" "When a database is accessed by multiple connections, and one of the " "processes modifies the database, the SQLite database is locked until that " @@ -262,13 +263,13 @@ msgid "" "The default for the timeout parameter is 5.0 (five seconds)." msgstr "" -#: library/sqlite3.rst:186 +#: library/sqlite3.rst:187 msgid "" "For the *isolation_level* parameter, please see the :attr:`~Connection." "isolation_level` property of :class:`Connection` objects." msgstr "" -#: library/sqlite3.rst:189 +#: library/sqlite3.rst:190 msgid "" "SQLite natively supports only the types TEXT, INTEGER, REAL, BLOB and NULL. " "If you want to use other types you must add support for them yourself. The " @@ -277,7 +278,7 @@ msgid "" "that." msgstr "" -#: library/sqlite3.rst:194 +#: library/sqlite3.rst:195 msgid "" "*detect_types* defaults to 0 (i. e. off, no type detection), you can set it " "to any combination of :const:`PARSE_DECLTYPES` and :const:`PARSE_COLNAMES` " @@ -286,7 +287,7 @@ msgid "" "parameter is set. In such case, the returned type is :class:`str`." msgstr "" -#: library/sqlite3.rst:200 +#: library/sqlite3.rst:201 msgid "" "By default, *check_same_thread* is :const:`True` and only the creating " "thread may use the connection. If set :const:`False`, the returned " @@ -295,7 +296,7 @@ msgid "" "the user to avoid data corruption." msgstr "" -#: library/sqlite3.rst:205 +#: library/sqlite3.rst:206 msgid "" "By default, the :mod:`sqlite3` module uses its :class:`Connection` class for " "the connect call. You can, however, subclass the :class:`Connection` class " @@ -303,11 +304,11 @@ msgid "" "the *factory* parameter." msgstr "" -#: library/sqlite3.rst:210 +#: library/sqlite3.rst:211 msgid "Consult the section :ref:`sqlite3-types` of this manual for details." msgstr "" -#: library/sqlite3.rst:212 +#: library/sqlite3.rst:213 msgid "" "The :mod:`sqlite3` module internally uses a statement cache to avoid SQL " "parsing overhead. If you want to explicitly set the number of statements " @@ -315,36 +316,46 @@ msgid "" "parameter. The currently implemented default is to cache 100 statements." msgstr "" -#: library/sqlite3.rst:217 +#: library/sqlite3.rst:218 msgid "" "If *uri* is true, *database* is interpreted as a URI. This allows you to " "specify options. For example, to open a database in read-only mode you can " "use::" msgstr "" -#: library/sqlite3.rst:223 +#: library/sqlite3.rst:224 msgid "" "More information about this feature, including a list of recognized options, " "can be found in the `SQLite URI documentation `_." msgstr "" -#: library/sqlite3.rst:226 +#: library/sqlite3.rst:227 msgid "" "Raises an :ref:`auditing event ` ``sqlite3.connect`` with argument " "``database``." msgstr "" #: library/sqlite3.rst:228 +msgid "" +"Raises an :ref:`auditing event ` ``sqlite3.connect/handle`` with " +"argument ``connection_handle``." +msgstr "" + +#: library/sqlite3.rst:230 msgid "Added the *uri* parameter." msgstr "" -#: library/sqlite3.rst:231 +#: library/sqlite3.rst:233 msgid "" "*database* can now also be a :term:`path-like object`, not only a string." msgstr "" -#: library/sqlite3.rst:237 +#: library/sqlite3.rst:236 +msgid "Added the ``sqlite3.connect/handle`` auditing event." +msgstr "" + +#: library/sqlite3.rst:242 msgid "" "Registers a callable to convert a bytestring from the database into a custom " "Python type. The callable will be invoked for all database values that are " @@ -354,7 +365,7 @@ msgid "" "manner." msgstr "" -#: library/sqlite3.rst:246 +#: library/sqlite3.rst:251 msgid "" "Registers a callable to convert the custom Python type *type* into one of " "SQLite's supported types. The callable *callable* accepts as single " @@ -362,7 +373,7 @@ msgid "" "int, float, str or bytes." msgstr "" -#: library/sqlite3.rst:254 +#: library/sqlite3.rst:259 msgid "" "Returns :const:`True` if the string *sql* contains one or more complete SQL " "statements terminated by semicolons. It does not verify that the SQL is " @@ -370,12 +381,12 @@ msgid "" "the statement is terminated by a semicolon." msgstr "" -#: library/sqlite3.rst:259 +#: library/sqlite3.rst:264 msgid "" "This can be used to build a shell for SQLite, as in the following example:" msgstr "" -#: library/sqlite3.rst:267 +#: library/sqlite3.rst:272 msgid "" "By default you will not get any tracebacks in user-defined functions, " "aggregates, converters, authorizer callbacks etc. If you want to debug them, " @@ -384,35 +395,35 @@ msgid "" "disable the feature again." msgstr "" -#: library/sqlite3.rst:277 +#: library/sqlite3.rst:282 msgid "Connection Objects" msgstr "Objets de connexions" -#: library/sqlite3.rst:281 +#: library/sqlite3.rst:286 msgid "A SQLite database connection has the following attributes and methods:" msgstr "" -#: library/sqlite3.rst:285 +#: library/sqlite3.rst:290 msgid "" "Get or set the current default isolation level. :const:`None` for autocommit " "mode or one of \"DEFERRED\", \"IMMEDIATE\" or \"EXCLUSIVE\". See section :" "ref:`sqlite3-controlling-transactions` for a more detailed explanation." msgstr "" -#: library/sqlite3.rst:291 +#: library/sqlite3.rst:296 msgid "" ":const:`True` if a transaction is active (there are uncommitted changes), :" "const:`False` otherwise. Read-only attribute." msgstr "" -#: library/sqlite3.rst:298 +#: library/sqlite3.rst:303 msgid "" "The cursor method accepts a single optional parameter *factory*. If " "supplied, this must be a callable returning an instance of :class:`Cursor` " "or its subclasses." msgstr "" -#: library/sqlite3.rst:304 +#: library/sqlite3.rst:309 msgid "" "This method commits the current transaction. If you don't call this method, " "anything you did since the last call to ``commit()`` is not visible from " @@ -420,41 +431,41 @@ msgid "" "written to the database, please check you didn't forget to call this method." msgstr "" -#: library/sqlite3.rst:311 +#: library/sqlite3.rst:316 msgid "" "This method rolls back any changes to the database since the last call to :" "meth:`commit`." msgstr "" -#: library/sqlite3.rst:316 +#: library/sqlite3.rst:321 msgid "" "This closes the database connection. Note that this does not automatically " "call :meth:`commit`. If you just close your database connection without " "calling :meth:`commit` first, your changes will be lost!" msgstr "" -#: library/sqlite3.rst:322 +#: library/sqlite3.rst:327 msgid "" "This is a nonstandard shortcut that creates a cursor object by calling the :" "meth:`~Connection.cursor` method, calls the cursor's :meth:`~Cursor.execute` " "method with the *parameters* given, and returns the cursor." msgstr "" -#: library/sqlite3.rst:329 +#: library/sqlite3.rst:334 msgid "" "This is a nonstandard shortcut that creates a cursor object by calling the :" "meth:`~Connection.cursor` method, calls the cursor's :meth:`~Cursor." "executemany` method with the *parameters* given, and returns the cursor." msgstr "" -#: library/sqlite3.rst:336 +#: library/sqlite3.rst:341 msgid "" "This is a nonstandard shortcut that creates a cursor object by calling the :" "meth:`~Connection.cursor` method, calls the cursor's :meth:`~Cursor." "executescript` method with the given *sql_script*, and returns the cursor." msgstr "" -#: library/sqlite3.rst:343 +#: library/sqlite3.rst:348 msgid "" "Creates a user-defined function that you can later use from within SQL " "statements under the function name *name*. *num_params* is the number of " @@ -467,25 +478,25 @@ msgid "" "older versions." msgstr "" -#: library/sqlite3.rst:353 +#: library/sqlite3.rst:358 msgid "" "The function can return any of the types supported by SQLite: bytes, str, " "int, float and ``None``." msgstr "" -#: library/sqlite3.rst:356 +#: library/sqlite3.rst:361 msgid "The *deterministic* parameter was added." msgstr "" -#: library/sqlite3.rst:376 library/sqlite3.rst:643 +#: library/sqlite3.rst:381 library/sqlite3.rst:664 msgid "Example:" msgstr "Exemple :" -#: library/sqlite3.rst:366 +#: library/sqlite3.rst:371 msgid "Creates a user-defined aggregate function." msgstr "" -#: library/sqlite3.rst:368 +#: library/sqlite3.rst:373 msgid "" "The aggregate class must implement a ``step`` method, which accepts the " "number of parameters *num_params* (if *num_params* is -1, the function may " @@ -493,13 +504,13 @@ msgid "" "the final result of the aggregate." msgstr "" -#: library/sqlite3.rst:373 +#: library/sqlite3.rst:378 msgid "" "The ``finalize`` method can return any of the types supported by SQLite: " "bytes, str, int, float and ``None``." msgstr "" -#: library/sqlite3.rst:383 +#: library/sqlite3.rst:388 msgid "" "Creates a collation with the specified *name* and *callable*. The callable " "will be passed two string arguments. It should return -1 if the first is " @@ -508,30 +519,30 @@ msgid "" "(ORDER BY in SQL) so your comparisons don't affect other SQL operations." msgstr "" -#: library/sqlite3.rst:389 +#: library/sqlite3.rst:394 msgid "" "Note that the callable will get its parameters as Python bytestrings, which " "will normally be encoded in UTF-8." msgstr "" -#: library/sqlite3.rst:392 +#: library/sqlite3.rst:397 msgid "" "The following example shows a custom collation that sorts \"the wrong way\":" msgstr "" -#: library/sqlite3.rst:396 +#: library/sqlite3.rst:401 msgid "" "To remove a collation, call ``create_collation`` with ``None`` as callable::" msgstr "" -#: library/sqlite3.rst:403 +#: library/sqlite3.rst:408 msgid "" "You can call this method from a different thread to abort any queries that " "might be executing on the connection. The query will then abort and the " "caller will get an exception." msgstr "" -#: library/sqlite3.rst:410 +#: library/sqlite3.rst:415 msgid "" "This routine registers a callback. The callback is invoked for each attempt " "to access a column of a table in the database. The callback should return :" @@ -541,7 +552,7 @@ msgid "" "in the :mod:`sqlite3` module." msgstr "" -#: library/sqlite3.rst:417 +#: library/sqlite3.rst:422 msgid "" "The first argument to the callback signifies what kind of operation is to be " "authorized. The second and third argument will be arguments or :const:`None` " @@ -552,7 +563,7 @@ msgid "" "code." msgstr "" -#: library/sqlite3.rst:424 +#: library/sqlite3.rst:429 msgid "" "Please consult the SQLite documentation about the possible values for the " "first argument and the meaning of the second and third argument depending on " @@ -560,7 +571,7 @@ msgid "" "module." msgstr "" -#: library/sqlite3.rst:431 +#: library/sqlite3.rst:436 msgid "" "This routine registers a callback. The callback is invoked for every *n* " "instructions of the SQLite virtual machine. This is useful if you want to " @@ -568,40 +579,48 @@ msgid "" "a GUI." msgstr "" -#: library/sqlite3.rst:436 +#: library/sqlite3.rst:441 msgid "" "If you want to clear any previously installed progress handler, call the " "method with :const:`None` for *handler*." msgstr "" -#: library/sqlite3.rst:439 +#: library/sqlite3.rst:444 msgid "" "Returning a non-zero value from the handler function will terminate the " "currently executing query and cause it to raise an :exc:`OperationalError` " "exception." msgstr "" -#: library/sqlite3.rst:446 +#: library/sqlite3.rst:451 msgid "" "Registers *trace_callback* to be called for each SQL statement that is " "actually executed by the SQLite backend." msgstr "" -#: library/sqlite3.rst:449 +#: library/sqlite3.rst:454 msgid "" -"The only argument passed to the callback is the statement (as string) that " -"is being executed. The return value of the callback is ignored. Note that " -"the backend does not only run statements passed to the :meth:`Cursor." -"execute` methods. Other sources include the transaction management of the " -"Python module and the execution of triggers defined in the current database." +"The only argument passed to the callback is the statement (as :class:`str`) " +"that is being executed. The return value of the callback is ignored. Note " +"that the backend does not only run statements passed to the :meth:`Cursor." +"execute` methods. Other sources include the :ref:`transaction management " +"` of the sqlite3 module and the execution " +"of triggers defined in the current database." msgstr "" -#: library/sqlite3.rst:455 +#: library/sqlite3.rst:462 msgid "" "Passing :const:`None` as *trace_callback* will disable the trace callback." msgstr "" -#: library/sqlite3.rst:462 +#: library/sqlite3.rst:465 +msgid "" +"Exceptions raised in the trace callback are not propagated. As a development " +"and debugging aid, use :meth:`~sqlite3.enable_callback_tracebacks` to enable " +"printing tracebacks from exceptions raised in the trace callback." +msgstr "" + +#: library/sqlite3.rst:475 msgid "" "This routine allows/disallows the SQLite engine to load SQLite extensions " "from shared libraries. SQLite extensions can define new functions, " @@ -609,18 +628,38 @@ msgid "" "extension is the fulltext-search extension distributed with SQLite." msgstr "" -#: library/sqlite3.rst:479 +#: library/sqlite3.rst:497 msgid "Loadable extensions are disabled by default. See [#f1]_." msgstr "" -#: library/sqlite3.rst:475 +#: library/sqlite3.rst:482 +msgid "" +"Raises an :ref:`auditing event ` ``sqlite3.enable_load_extension`` " +"with arguments ``connection``, ``enabled``." +msgstr "" + +#: library/sqlite3.rst:486 +msgid "Added the ``sqlite3.enable_load_extension`` auditing event." +msgstr "" + +#: library/sqlite3.rst:493 msgid "" "This routine loads a SQLite extension from a shared library. You have to " "enable extension loading with :meth:`enable_load_extension` before you can " "use this routine." msgstr "" -#: library/sqlite3.rst:485 +#: library/sqlite3.rst:499 +msgid "" +"Raises an :ref:`auditing event ` ``sqlite3.load_extension`` with " +"arguments ``connection``, ``path``." +msgstr "" + +#: library/sqlite3.rst:503 +msgid "Added the ``sqlite3.load_extension`` auditing event." +msgstr "" + +#: library/sqlite3.rst:508 msgid "" "You can change this attribute to a callable that accepts the cursor and the " "original row as a tuple and will return the real result row. This way, you " @@ -628,7 +667,7 @@ msgid "" "object that can also access columns by name." msgstr "" -#: library/sqlite3.rst:494 +#: library/sqlite3.rst:517 msgid "" "If returning a tuple doesn't suffice and you want name-based access to " "columns, you should consider setting :attr:`row_factory` to the highly-" @@ -638,7 +677,7 @@ msgid "" "approach or even a db_row based solution." msgstr "" -#: library/sqlite3.rst:506 +#: library/sqlite3.rst:529 msgid "" "Using this attribute you can control what objects are returned for the " "``TEXT`` data type. By default, this attribute is set to :class:`str` and " @@ -646,23 +685,23 @@ msgid "" "want to return bytestrings instead, you can set it to :class:`bytes`." msgstr "" -#: library/sqlite3.rst:511 +#: library/sqlite3.rst:534 msgid "" "You can also set it to any other callable that accepts a single bytestring " "parameter and returns the resulting object." msgstr "" -#: library/sqlite3.rst:514 +#: library/sqlite3.rst:537 msgid "See the following example code for illustration:" msgstr "" -#: library/sqlite3.rst:521 +#: library/sqlite3.rst:544 msgid "" "Returns the total number of database rows that have been modified, inserted, " "or deleted since the database connection was opened." msgstr "" -#: library/sqlite3.rst:527 +#: library/sqlite3.rst:550 msgid "" "Returns an iterator to dump the database in an SQL text format. Useful when " "saving an in-memory database for later restoration. This function provides " @@ -670,11 +709,11 @@ msgid "" "shell." msgstr "" -#: library/sqlite3.rst:532 +#: library/sqlite3.rst:555 msgid "Example::" msgstr "Exemple ::" -#: library/sqlite3.rst:546 +#: library/sqlite3.rst:569 msgid "" "This method makes a backup of a SQLite database even while it's being " "accessed by other clients, or concurrently by the same connection. The copy " @@ -682,14 +721,14 @@ msgid "" "class:`Connection` instance." msgstr "" -#: library/sqlite3.rst:551 +#: library/sqlite3.rst:574 msgid "" "By default, or when *pages* is either ``0`` or a negative integer, the " "entire database is copied in a single step; otherwise the method performs a " "loop copying up to *pages* pages at a time." msgstr "" -#: library/sqlite3.rst:555 +#: library/sqlite3.rst:578 msgid "" "If *progress* is specified, it must either be ``None`` or a callable object " "that will be executed at each iteration with three integer arguments, " @@ -697,7 +736,7 @@ msgid "" "pages still to be copied and the *total* number of pages." msgstr "" -#: library/sqlite3.rst:560 +#: library/sqlite3.rst:583 msgid "" "The *name* argument specifies the database name that will be copied: it must " "be a string containing either ``\"main\"``, the default, to indicate the " @@ -706,40 +745,36 @@ msgid "" "an attached database." msgstr "" -#: library/sqlite3.rst:566 +#: library/sqlite3.rst:589 msgid "" "The *sleep* argument specifies the number of seconds to sleep by between " "successive attempts to backup remaining pages, can be specified either as an " "integer or a floating point value." msgstr "" -#: library/sqlite3.rst:570 +#: library/sqlite3.rst:593 msgid "Example 1, copy an existing database into another::" msgstr "" -#: library/sqlite3.rst:584 +#: library/sqlite3.rst:607 msgid "Example 2, copy an existing database into a transient copy::" msgstr "" -#: library/sqlite3.rst:592 -msgid "Availability: SQLite 3.6.11 or higher" -msgstr "" - -#: library/sqlite3.rst:600 +#: library/sqlite3.rst:621 msgid "Cursor Objects" msgstr "" -#: library/sqlite3.rst:604 +#: library/sqlite3.rst:625 msgid "A :class:`Cursor` instance has the following attributes and methods." msgstr "" -#: library/sqlite3.rst:611 +#: library/sqlite3.rst:632 msgid "" "Executes an SQL statement. Values may be bound to the statement using :ref:" "`placeholders `." msgstr "" -#: library/sqlite3.rst:614 +#: library/sqlite3.rst:635 msgid "" ":meth:`execute` will only execute a single SQL statement. If you try to " "execute more than one statement with it, it will raise a :exc:`.Warning`. " @@ -747,7 +782,7 @@ msgid "" "with one call." msgstr "" -#: library/sqlite3.rst:622 +#: library/sqlite3.rst:643 msgid "" "Executes a :ref:`parameterized ` SQL command against " "all parameter sequences or mappings found in the sequence " @@ -755,35 +790,35 @@ msgid "" "`iterator` yielding parameters instead of a sequence." msgstr "" -#: library/sqlite3.rst:629 +#: library/sqlite3.rst:650 msgid "Here's a shorter example using a :term:`generator`:" msgstr "" -#: library/sqlite3.rst:636 +#: library/sqlite3.rst:657 msgid "" "This is a nonstandard convenience method for executing multiple SQL " "statements at once. It issues a ``COMMIT`` statement first, then executes " "the SQL script it gets as a parameter. This method disregards :attr:" -"`isolation_level`; any transation control must be added to *sql_script*." +"`isolation_level`; any transaction control must be added to *sql_script*." msgstr "" -#: library/sqlite3.rst:641 +#: library/sqlite3.rst:662 msgid "*sql_script* can be an instance of :class:`str`." msgstr "" -#: library/sqlite3.rst:650 +#: library/sqlite3.rst:671 msgid "" "Fetches the next row of a query result set, returning a single sequence, or :" "const:`None` when no more data is available." msgstr "" -#: library/sqlite3.rst:656 +#: library/sqlite3.rst:677 msgid "" "Fetches the next set of rows of a query result, returning a list. An empty " "list is returned when no more rows are available." msgstr "" -#: library/sqlite3.rst:659 +#: library/sqlite3.rst:680 msgid "" "The number of rows to fetch per call is specified by the *size* parameter. " "If it is not given, the cursor's arraysize determines the number of rows to " @@ -792,7 +827,7 @@ msgid "" "not being available, fewer rows may be returned." msgstr "" -#: library/sqlite3.rst:665 +#: library/sqlite3.rst:686 msgid "" "Note there are performance considerations involved with the *size* " "parameter. For optimal performance, it is usually best to use the arraysize " @@ -800,38 +835,38 @@ msgid "" "the same value from one :meth:`fetchmany` call to the next." msgstr "" -#: library/sqlite3.rst:672 +#: library/sqlite3.rst:693 msgid "" "Fetches all (remaining) rows of a query result, returning a list. Note that " "the cursor's arraysize attribute can affect the performance of this " "operation. An empty list is returned when no rows are available." msgstr "" -#: library/sqlite3.rst:678 +#: library/sqlite3.rst:699 msgid "Close the cursor now (rather than whenever ``__del__`` is called)." msgstr "" -#: library/sqlite3.rst:680 +#: library/sqlite3.rst:701 msgid "" "The cursor will be unusable from this point forward; a :exc:" "`ProgrammingError` exception will be raised if any operation is attempted " "with the cursor." msgstr "" -#: library/sqlite3.rst:685 +#: library/sqlite3.rst:706 msgid "" "Although the :class:`Cursor` class of the :mod:`sqlite3` module implements " "this attribute, the database engine's own support for the determination of " "\"rows affected\"/\"rows selected\" is quirky." msgstr "" -#: library/sqlite3.rst:689 +#: library/sqlite3.rst:710 msgid "" "For :meth:`executemany` statements, the number of modifications are summed " "up into :attr:`rowcount`." msgstr "" -#: library/sqlite3.rst:692 +#: library/sqlite3.rst:713 msgid "" "As required by the Python DB API Spec, the :attr:`rowcount` attribute \"is " "-1 in case no ``executeXX()`` has been performed on the cursor or the " @@ -840,13 +875,7 @@ msgid "" "rows a query produced until all rows were fetched." msgstr "" -#: library/sqlite3.rst:698 -msgid "" -"With SQLite versions before 3.6.5, :attr:`rowcount` is set to 0 if you make " -"a ``DELETE FROM table`` without any condition." -msgstr "" - -#: library/sqlite3.rst:703 +#: library/sqlite3.rst:721 msgid "" "This read-only attribute provides the rowid of the last modified row. It is " "only set if you issued an ``INSERT`` or a ``REPLACE`` statement using the :" @@ -855,35 +884,35 @@ msgid "" "`None`." msgstr "" -#: library/sqlite3.rst:709 +#: library/sqlite3.rst:727 msgid "" "If the ``INSERT`` or ``REPLACE`` statement failed to insert the previous " "successful rowid is returned." msgstr "" -#: library/sqlite3.rst:712 +#: library/sqlite3.rst:730 msgid "Added support for the ``REPLACE`` statement." msgstr "" -#: library/sqlite3.rst:717 +#: library/sqlite3.rst:735 msgid "" "Read/write attribute that controls the number of rows returned by :meth:" "`fetchmany`. The default value is 1 which means a single row would be " "fetched per call." msgstr "" -#: library/sqlite3.rst:722 +#: library/sqlite3.rst:740 msgid "" "This read-only attribute provides the column names of the last query. To " "remain compatible with the Python DB API, it returns a 7-tuple for each " "column where the last six items of each tuple are :const:`None`." msgstr "" -#: library/sqlite3.rst:726 +#: library/sqlite3.rst:744 msgid "It is set for ``SELECT`` statements without any matching rows as well." msgstr "" -#: library/sqlite3.rst:730 +#: library/sqlite3.rst:748 msgid "" "This read-only attribute provides the SQLite database :class:`Connection` " "used by the :class:`Cursor` object. A :class:`Cursor` object created by " @@ -891,79 +920,79 @@ msgid "" "`connection` attribute that refers to *con*::" msgstr "" -#: library/sqlite3.rst:743 +#: library/sqlite3.rst:761 msgid "Row Objects" msgstr "" -#: library/sqlite3.rst:747 +#: library/sqlite3.rst:765 msgid "" "A :class:`Row` instance serves as a highly optimized :attr:`~Connection." "row_factory` for :class:`Connection` objects. It tries to mimic a tuple in " "most of its features." msgstr "" -#: library/sqlite3.rst:751 +#: library/sqlite3.rst:769 msgid "" "It supports mapping access by column name and index, iteration, " "representation, equality testing and :func:`len`." msgstr "" -#: library/sqlite3.rst:754 +#: library/sqlite3.rst:772 msgid "" "If two :class:`Row` objects have exactly the same columns and their members " "are equal, they compare equal." msgstr "" -#: library/sqlite3.rst:759 +#: library/sqlite3.rst:777 msgid "" "This method returns a list of column names. Immediately after a query, it is " "the first member of each tuple in :attr:`Cursor.description`." msgstr "" -#: library/sqlite3.rst:762 +#: library/sqlite3.rst:780 msgid "Added support of slicing." msgstr "" -#: library/sqlite3.rst:765 +#: library/sqlite3.rst:783 msgid "Let's assume we initialize a table as in the example given above::" msgstr "" -#: library/sqlite3.rst:777 +#: library/sqlite3.rst:795 msgid "Now we plug :class:`Row` in::" msgstr "" -#: library/sqlite3.rst:809 +#: library/sqlite3.rst:827 msgid "Exceptions" msgstr "Exceptions" -#: library/sqlite3.rst:813 +#: library/sqlite3.rst:831 msgid "A subclass of :exc:`Exception`." msgstr "" -#: library/sqlite3.rst:817 +#: library/sqlite3.rst:835 msgid "" "The base class of the other exceptions in this module. It is a subclass of :" "exc:`Exception`." msgstr "" -#: library/sqlite3.rst:822 +#: library/sqlite3.rst:840 msgid "Exception raised for errors that are related to the database." msgstr "" -#: library/sqlite3.rst:826 +#: library/sqlite3.rst:844 msgid "" "Exception raised when the relational integrity of the database is affected, " "e.g. a foreign key check fails. It is a subclass of :exc:`DatabaseError`." msgstr "" -#: library/sqlite3.rst:831 +#: library/sqlite3.rst:849 msgid "" "Exception raised for programming errors, e.g. table not found or already " "exists, syntax error in the SQL statement, wrong number of parameters " "specified, etc. It is a subclass of :exc:`DatabaseError`." msgstr "" -#: library/sqlite3.rst:837 +#: library/sqlite3.rst:855 msgid "" "Exception raised for errors that are related to the database's operation and " "not necessarily under the control of the programmer, e.g. an unexpected " @@ -971,7 +1000,7 @@ msgid "" "not be processed, etc. It is a subclass of :exc:`DatabaseError`." msgstr "" -#: library/sqlite3.rst:844 +#: library/sqlite3.rst:862 msgid "" "Exception raised in case a method or database API was used which is not " "supported by the database, e.g. calling the :meth:`~Connection.rollback` " @@ -979,82 +1008,82 @@ msgid "" "turned off. It is a subclass of :exc:`DatabaseError`." msgstr "" -#: library/sqlite3.rst:853 +#: library/sqlite3.rst:871 msgid "SQLite and Python types" msgstr "" -#: library/sqlite3.rst:857 +#: library/sqlite3.rst:875 msgid "Introduction" msgstr "Introduction" -#: library/sqlite3.rst:859 +#: library/sqlite3.rst:877 msgid "" "SQLite natively supports the following types: ``NULL``, ``INTEGER``, " "``REAL``, ``TEXT``, ``BLOB``." msgstr "" -#: library/sqlite3.rst:862 +#: library/sqlite3.rst:880 msgid "" "The following Python types can thus be sent to SQLite without any problem:" msgstr "" -#: library/sqlite3.rst:882 +#: library/sqlite3.rst:900 msgid "Python type" msgstr "Type Python" -#: library/sqlite3.rst:882 +#: library/sqlite3.rst:900 msgid "SQLite type" msgstr "SQLite type" -#: library/sqlite3.rst:884 +#: library/sqlite3.rst:902 msgid ":const:`None`" msgstr ":const:`None`" -#: library/sqlite3.rst:884 +#: library/sqlite3.rst:902 msgid "``NULL``" msgstr "``NULL``" -#: library/sqlite3.rst:886 +#: library/sqlite3.rst:904 msgid ":class:`int`" msgstr ":class:`int`" -#: library/sqlite3.rst:886 +#: library/sqlite3.rst:904 msgid "``INTEGER``" msgstr "``INTEGER``" -#: library/sqlite3.rst:888 +#: library/sqlite3.rst:906 msgid ":class:`float`" msgstr ":class:`float`" -#: library/sqlite3.rst:888 +#: library/sqlite3.rst:906 msgid "``REAL``" msgstr "``REAL``" -#: library/sqlite3.rst:873 +#: library/sqlite3.rst:891 msgid ":class:`str`" msgstr ":class:`str`" -#: library/sqlite3.rst:890 +#: library/sqlite3.rst:908 msgid "``TEXT``" msgstr "``TEXT``" -#: library/sqlite3.rst:893 +#: library/sqlite3.rst:911 msgid ":class:`bytes`" msgstr ":class:`bytes`" -#: library/sqlite3.rst:893 +#: library/sqlite3.rst:911 msgid "``BLOB``" msgstr "``BLOB``" -#: library/sqlite3.rst:879 +#: library/sqlite3.rst:897 msgid "This is how SQLite types are converted to Python types by default:" msgstr "" -#: library/sqlite3.rst:890 +#: library/sqlite3.rst:908 msgid "depends on :attr:`~Connection.text_factory`, :class:`str` by default" msgstr "" -#: library/sqlite3.rst:896 +#: library/sqlite3.rst:914 msgid "" "The type system of the :mod:`sqlite3` module is extensible in two ways: you " "can store additional Python types in a SQLite database via object " @@ -1062,11 +1091,11 @@ msgid "" "to different Python types via converters." msgstr "" -#: library/sqlite3.rst:903 +#: library/sqlite3.rst:921 msgid "Using adapters to store additional Python types in SQLite databases" msgstr "" -#: library/sqlite3.rst:905 +#: library/sqlite3.rst:923 msgid "" "As described before, SQLite supports only a limited set of types natively. " "To use other Python types with SQLite, you must **adapt** them to one of the " @@ -1074,23 +1103,23 @@ msgid "" "str, bytes." msgstr "" -#: library/sqlite3.rst:910 +#: library/sqlite3.rst:928 msgid "" "There are two ways to enable the :mod:`sqlite3` module to adapt a custom " "Python type to one of the supported ones." msgstr "" -#: library/sqlite3.rst:915 +#: library/sqlite3.rst:933 msgid "Letting your object adapt itself" msgstr "" -#: library/sqlite3.rst:917 +#: library/sqlite3.rst:935 msgid "" "This is a good approach if you write the class yourself. Let's suppose you " "have a class like this::" msgstr "" -#: library/sqlite3.rst:924 +#: library/sqlite3.rst:942 msgid "" "Now you want to store the point in a single SQLite column. First you'll " "have to choose one of the supported types to be used for representing the " @@ -1100,18 +1129,18 @@ msgid "" "class:`PrepareProtocol`." msgstr "" -#: library/sqlite3.rst:934 +#: library/sqlite3.rst:952 msgid "Registering an adapter callable" msgstr "" -#: library/sqlite3.rst:936 +#: library/sqlite3.rst:954 msgid "" "The other possibility is to create a function that converts the type to the " "string representation and register the function with :meth:" "`register_adapter`." msgstr "" -#: library/sqlite3.rst:941 +#: library/sqlite3.rst:959 msgid "" "The :mod:`sqlite3` module has two default adapters for Python's built-in :" "class:`datetime.date` and :class:`datetime.datetime` types. Now let's " @@ -1119,110 +1148,110 @@ msgid "" "representation, but as a Unix timestamp." msgstr "" -#: library/sqlite3.rst:950 +#: library/sqlite3.rst:968 msgid "Converting SQLite values to custom Python types" msgstr "" -#: library/sqlite3.rst:952 +#: library/sqlite3.rst:970 msgid "" "Writing an adapter lets you send custom Python types to SQLite. But to make " "it really useful we need to make the Python to SQLite to Python roundtrip " "work." msgstr "" -#: library/sqlite3.rst:955 +#: library/sqlite3.rst:973 msgid "Enter converters." msgstr "" -#: library/sqlite3.rst:957 +#: library/sqlite3.rst:975 msgid "" "Let's go back to the :class:`Point` class. We stored the x and y coordinates " "separated via semicolons as strings in SQLite." msgstr "" -#: library/sqlite3.rst:960 +#: library/sqlite3.rst:978 msgid "" "First, we'll define a converter function that accepts the string as a " "parameter and constructs a :class:`Point` object from it." msgstr "" -#: library/sqlite3.rst:965 +#: library/sqlite3.rst:983 msgid "" "Converter functions **always** get called with a :class:`bytes` object, no " "matter under which data type you sent the value to SQLite." msgstr "" -#: library/sqlite3.rst:974 +#: library/sqlite3.rst:992 msgid "" "Now you need to make the :mod:`sqlite3` module know that what you select " "from the database is actually a point. There are two ways of doing this:" msgstr "" -#: library/sqlite3.rst:977 +#: library/sqlite3.rst:995 msgid "Implicitly via the declared type" msgstr "" -#: library/sqlite3.rst:979 +#: library/sqlite3.rst:997 msgid "Explicitly via the column name" msgstr "" -#: library/sqlite3.rst:981 +#: library/sqlite3.rst:999 msgid "" "Both ways are described in section :ref:`sqlite3-module-contents`, in the " "entries for the constants :const:`PARSE_DECLTYPES` and :const:" "`PARSE_COLNAMES`." msgstr "" -#: library/sqlite3.rst:984 +#: library/sqlite3.rst:1002 msgid "The following example illustrates both approaches." msgstr "" -#: library/sqlite3.rst:990 +#: library/sqlite3.rst:1008 msgid "Default adapters and converters" msgstr "" -#: library/sqlite3.rst:992 +#: library/sqlite3.rst:1010 msgid "" "There are default adapters for the date and datetime types in the datetime " "module. They will be sent as ISO dates/ISO timestamps to SQLite." msgstr "" -#: library/sqlite3.rst:995 +#: library/sqlite3.rst:1013 msgid "" "The default converters are registered under the name \"date\" for :class:" "`datetime.date` and under the name \"timestamp\" for :class:`datetime." "datetime`." msgstr "" -#: library/sqlite3.rst:999 +#: library/sqlite3.rst:1017 msgid "" "This way, you can use date/timestamps from Python without any additional " "fiddling in most cases. The format of the adapters is also compatible with " "the experimental SQLite date/time functions." msgstr "" -#: library/sqlite3.rst:1003 +#: library/sqlite3.rst:1021 msgid "The following example demonstrates this." msgstr "" -#: library/sqlite3.rst:1007 +#: library/sqlite3.rst:1025 msgid "" "If a timestamp stored in SQLite has a fractional part longer than 6 numbers, " "its value will be truncated to microsecond precision by the timestamp " "converter." msgstr "" -#: library/sqlite3.rst:1015 +#: library/sqlite3.rst:1033 msgid "Controlling Transactions" msgstr "" -#: library/sqlite3.rst:1017 +#: library/sqlite3.rst:1035 msgid "" "The underlying ``sqlite3`` library operates in ``autocommit`` mode by " "default, but the Python :mod:`sqlite3` module by default does not." msgstr "" -#: library/sqlite3.rst:1020 +#: library/sqlite3.rst:1038 msgid "" "``autocommit`` mode means that statements that modify the database take " "effect immediately. A ``BEGIN`` or ``SAVEPOINT`` statement disables " @@ -1230,14 +1259,14 @@ msgid "" "ends the outermost transaction, turns ``autocommit`` mode back on." msgstr "" -#: library/sqlite3.rst:1025 +#: library/sqlite3.rst:1043 msgid "" "The Python :mod:`sqlite3` module by default issues a ``BEGIN`` statement " "implicitly before a Data Modification Language (DML) statement (i.e. " "``INSERT``/``UPDATE``/``DELETE``/``REPLACE``)." msgstr "" -#: library/sqlite3.rst:1029 +#: library/sqlite3.rst:1047 msgid "" "You can control which kind of ``BEGIN`` statements :mod:`sqlite3` implicitly " "executes via the *isolation_level* parameter to the :func:`connect` call, or " @@ -1247,7 +1276,7 @@ msgid "" "``EXCLUSIVE``." msgstr "" -#: library/sqlite3.rst:1036 +#: library/sqlite3.rst:1054 msgid "" "You can disable the :mod:`sqlite3` module's implicit transaction management " "by setting :attr:`isolation_level` to ``None``. This will leave the " @@ -1257,27 +1286,27 @@ msgid "" "code." msgstr "" -#: library/sqlite3.rst:1042 +#: library/sqlite3.rst:1060 msgid "" "Note that :meth:`~Cursor.executescript` disregards :attr:`isolation_level`; " "any transaction control must be added explicitly." msgstr "" -#: library/sqlite3.rst:1045 +#: library/sqlite3.rst:1063 msgid "" ":mod:`sqlite3` used to implicitly commit an open transaction before DDL " "statements. This is no longer the case." msgstr "" -#: library/sqlite3.rst:1051 +#: library/sqlite3.rst:1069 msgid "Using :mod:`sqlite3` efficiently" msgstr "" -#: library/sqlite3.rst:1055 +#: library/sqlite3.rst:1073 msgid "Using shortcut methods" msgstr "" -#: library/sqlite3.rst:1057 +#: library/sqlite3.rst:1075 msgid "" "Using the nonstandard :meth:`execute`, :meth:`executemany` and :meth:" "`executescript` methods of the :class:`Connection` object, your code can be " @@ -1289,43 +1318,43 @@ msgid "" "object." msgstr "" -#: library/sqlite3.rst:1069 +#: library/sqlite3.rst:1087 msgid "Accessing columns by name instead of by index" msgstr "" -#: library/sqlite3.rst:1071 +#: library/sqlite3.rst:1089 msgid "" "One useful feature of the :mod:`sqlite3` module is the built-in :class:" "`sqlite3.Row` class designed to be used as a row factory." msgstr "" -#: library/sqlite3.rst:1074 +#: library/sqlite3.rst:1092 msgid "" "Rows wrapped with this class can be accessed both by index (like tuples) and " "case-insensitively by name:" msgstr "" -#: library/sqlite3.rst:1081 +#: library/sqlite3.rst:1099 msgid "Using the connection as a context manager" msgstr "" -#: library/sqlite3.rst:1083 +#: library/sqlite3.rst:1101 msgid "" "Connection objects can be used as context managers that automatically commit " "or rollback transactions. In the event of an exception, the transaction is " "rolled back; otherwise, the transaction is committed:" msgstr "" -#: library/sqlite3.rst:1092 +#: library/sqlite3.rst:1110 msgid "Footnotes" msgstr "Notes" -#: library/sqlite3.rst:1093 +#: library/sqlite3.rst:1111 msgid "" "The sqlite3 module is not built with loadable extension support by default, " -"because some platforms (notably Mac OS X) have SQLite libraries which are " +"because some platforms (notably macOS) have SQLite libraries which are " "compiled without this feature. To get loadable extension support, you must " -"pass ``--enable-loadable-sqlite-extensions`` to configure." +"pass the :option:`--enable-loadable-sqlite-extensions` option to configure." msgstr "" #~ msgid "" diff --git a/library/ssl.po b/library/ssl.po index db47e5096..ebbb13f46 100644 --- a/library/ssl.po +++ b/library/ssl.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-03-30 22:31+0200\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -24,13 +24,14 @@ msgid "**Source code:** :source:`Lib/ssl.py`" msgstr "**Code source :** :source:`Lib/ssl.py`" #: library/ssl.rst:18 +#, fuzzy msgid "" "This module provides access to Transport Layer Security (often known as " "\"Secure Sockets Layer\") encryption and peer authentication facilities for " "network sockets, both client-side and server-side. This module uses the " -"OpenSSL library. It is available on all modern Unix systems, Windows, Mac OS " -"X, and probably additional platforms, as long as OpenSSL is installed on " -"that platform." +"OpenSSL library. It is available on all modern Unix systems, Windows, macOS, " +"and probably additional platforms, as long as OpenSSL is installed on that " +"platform." msgstr "" "Ce module fournit un accès aux fonctions de chiffrement et " "d'authentification entre pairs : « *Transport Layer Security* » (souvent " @@ -41,11 +42,12 @@ msgstr "" "installé sur cette plate-forme." #: library/ssl.rst:26 +#, fuzzy msgid "" "Some behavior may be platform dependent, since calls are made to the " "operating system socket APIs. The installed version of OpenSSL may also " -"cause variations in behavior. For example, TLSv1.1 and TLSv1.2 come with " -"openssl version 1.0.1." +"cause variations in behavior. For example, TLSv1.3 with OpenSSL version " +"1.1.1." msgstr "" "Certains comportements peuvent dépendre de la plate-forme, car des appels " "sont passés aux API de connexions du système d'exploitation. La version " @@ -117,14 +119,25 @@ msgstr "" "ou 1.1.0." #: library/ssl.rst:63 +msgid "" +":pep:`644` has been implemented. The ssl module requires OpenSSL 1.1.1 or " +"newer." +msgstr "" + +#: library/ssl.rst:66 +msgid "" +"Use of deprecated constants and functions result in deprecation warnings." +msgstr "" + +#: library/ssl.rst:70 msgid "Functions, Constants, and Exceptions" msgstr "Fonctions, constantes et exceptions" -#: library/ssl.rst:67 +#: library/ssl.rst:74 msgid "Socket creation" msgstr "Création de connecteurs" -#: library/ssl.rst:69 +#: library/ssl.rst:76 msgid "" "Since Python 3.2 and 2.7.9, it is recommended to use the :meth:`SSLContext." "wrap_socket` of an :class:`SSLContext` instance to wrap sockets as :class:" @@ -141,25 +154,25 @@ msgstr "" "obsolète car elle est à la fois inefficace et ne prend pas en charge " "l'indication de nom de serveur (SNI) et la vérification du nom de l'hôte." -#: library/ssl.rst:77 +#: library/ssl.rst:84 msgid "Client socket example with default context and IPv4/IPv6 dual stack::" msgstr "" "Exemple de connecteur client avec contexte par défaut et double pile IPv4/" "IPv6 ::" -#: library/ssl.rst:90 +#: library/ssl.rst:97 msgid "Client socket example with custom context and IPv4::" msgstr "Exemple de connecteur client avec contexte personnalisé et IPv4 ::" -#: library/ssl.rst:102 +#: library/ssl.rst:109 msgid "Server socket example listening on localhost IPv4::" msgstr "Exemple de connecteur serveur à l'écoute sur IPv4 *localhost* ::" -#: library/ssl.rst:116 +#: library/ssl.rst:123 msgid "Context creation" msgstr "Création de contexte" -#: library/ssl.rst:118 +#: library/ssl.rst:125 msgid "" "A convenience function helps create :class:`SSLContext` objects for common " "purposes." @@ -167,7 +180,7 @@ msgstr "" "Une fonction utilitaire permettant de créer facilement des objets :class:" "`SSLContext` pour des usages classiques." -#: library/ssl.rst:123 +#: library/ssl.rst:130 msgid "" "Return a new :class:`SSLContext` object with default settings for the given " "*purpose*. The settings are chosen by the :mod:`ssl` module, and usually " @@ -180,7 +193,7 @@ msgstr "" "représentent généralement un niveau de sécurité supérieur à celui utilisé " "lorsque vous appelez directement le constructeur :class:`SSLContext`." -#: library/ssl.rst:128 +#: library/ssl.rst:135 msgid "" "*cafile*, *capath*, *cadata* represent optional CA certificates to trust for " "certificate verification, as in :meth:`SSLContext.load_verify_locations`. " @@ -193,15 +206,17 @@ msgstr "" "const:`None`, cette fonction peut choisir de faire confiance aux certificats " "d'autorité de certification par défaut du système." -#: library/ssl.rst:134 +#: library/ssl.rst:141 +#, fuzzy msgid "" -"The settings are: :data:`PROTOCOL_TLS`, :data:`OP_NO_SSLv2`, and :data:" -"`OP_NO_SSLv3` with high encryption cipher suites without RC4 and without " -"unauthenticated cipher suites. Passing :data:`~Purpose.SERVER_AUTH` as " -"*purpose* sets :data:`~SSLContext.verify_mode` to :data:`CERT_REQUIRED` and " -"either loads CA certificates (when at least one of *cafile*, *capath* or " -"*cadata* is given) or uses :meth:`SSLContext.load_default_certs` to load " -"default CA certificates." +"The settings are: :data:`PROTOCOL_TLS_CLIENT` or :data:" +"`PROTOCOL_TLS_SERVER`, :data:`OP_NO_SSLv2`, and :data:`OP_NO_SSLv3` with " +"high encryption cipher suites without RC4 and without unauthenticated cipher " +"suites. Passing :data:`~Purpose.SERVER_AUTH` as *purpose* sets :data:" +"`~SSLContext.verify_mode` to :data:`CERT_REQUIRED` and either loads CA " +"certificates (when at least one of *cafile*, *capath* or *cadata* is given) " +"or uses :meth:`SSLContext.load_default_certs` to load default CA " +"certificates." msgstr "" "Les paramètres sont : :data:`PROTOCOL_TLS`, :data:`OP_NO_SSLv2` et :data:" "`OP_NO_SSLv3` avec des algorithmes de chiffrement de grande robustesse, " @@ -213,7 +228,7 @@ msgstr "" "`SSLContext.load_default_certs` pour charger les certificats des autorités " "de certification par défaut." -#: library/ssl.rst:142 +#: library/ssl.rst:150 msgid "" "When :attr:`~SSLContext.keylog_filename` is supported and the environment " "variable :envvar:`SSLKEYLOGFILE` is set, :func:`create_default_context` " @@ -223,7 +238,7 @@ msgstr "" "variable d'environnement :envvar:`SSLKEYLOGFILE` est définie, :func:" "`create_default_context` active la journalisation des clés." -#: library/ssl.rst:147 +#: library/ssl.rst:155 msgid "" "The protocol, options, cipher and other settings may change to more " "restrictive values anytime without prior deprecation. The values represent " @@ -234,7 +249,7 @@ msgstr "" "sans avertissement préalable. Les valeurs représentent un juste équilibre " "entre compatibilité et sécurité." -#: library/ssl.rst:151 +#: library/ssl.rst:159 msgid "" "If your application needs specific settings, you should create a :class:" "`SSLContext` and apply the settings yourself." @@ -242,7 +257,7 @@ msgstr "" "Si votre application nécessite des paramètres spécifiques, vous devez créer " "une classe :class:`SSLContext` et appliquer les paramètres vous-même." -#: library/ssl.rst:155 +#: library/ssl.rst:163 msgid "" "If you find that when certain older clients or servers attempt to connect " "with a :class:`SSLContext` created by this function that they get an error " @@ -263,33 +278,39 @@ msgstr "" "fonction tout en autorisant les connexions SSL 3.0, vous pouvez les " "réactiver à l'aide de ::" -#: library/ssl.rst:171 +#: library/ssl.rst:179 msgid "RC4 was dropped from the default cipher string." msgstr "" "RC4 a été supprimé de la liste des algorithmes de chiffrement par défaut." -#: library/ssl.rst:175 +#: library/ssl.rst:183 msgid "ChaCha20/Poly1305 was added to the default cipher string." msgstr "" "*ChaCha20*/*Poly1305* a été ajouté à la liste des algorithmes de chiffrement " "par défaut." -#: library/ssl.rst:177 +#: library/ssl.rst:185 msgid "3DES was dropped from the default cipher string." msgstr "" "*3DES* a été supprimé de la liste des algorithmes de chiffrement par défaut." -#: library/ssl.rst:181 +#: library/ssl.rst:189 msgid "Support for key logging to :envvar:`SSLKEYLOGFILE` was added." msgstr "" "La prise en charge de la journalisation des clés dans :envvar:" "`SSLKEYLOGFILE` a été ajoutée." -#: library/ssl.rst:185 +#: library/ssl.rst:193 +msgid "" +"The context now uses :data:`PROTOCOL_TLS_CLIENT` or :data:" +"`PROTOCOL_TLS_SERVER` protocol instead of generic :data:`PROTOCOL_TLS`." +msgstr "" + +#: library/ssl.rst:199 msgid "Exceptions" msgstr "Exceptions" -#: library/ssl.rst:189 +#: library/ssl.rst:203 msgid "" "Raised to signal an error from the underlying SSL implementation (currently " "provided by the OpenSSL library). This signifies some problem in the higher-" @@ -305,11 +326,11 @@ msgstr "" "erreur est un sous-type de :exc:`OSError`. Le code d'erreur et le message " "des instances de :exc:`SSLError` sont fournis par la bibliothèque OpenSSL." -#: library/ssl.rst:196 +#: library/ssl.rst:210 msgid ":exc:`SSLError` used to be a subtype of :exc:`socket.error`." msgstr ":exc:`SSLError` était un sous-type de :exc:`socket.error`." -#: library/ssl.rst:201 +#: library/ssl.rst:215 msgid "" "A string mnemonic designating the OpenSSL submodule in which the error " "occurred, such as ``SSL``, ``PEM`` or ``X509``. The range of possible " @@ -319,21 +340,21 @@ msgstr "" "lequel l'erreur s'est produite, telle que ``SSL``, ``PEM`` ou ``X509``. " "L'étendue des valeurs possibles dépend de la version d'OpenSSL." -#: library/ssl.rst:209 +#: library/ssl.rst:223 msgid "" "A string mnemonic designating the reason this error occurred, for example " "``CERTIFICATE_VERIFY_FAILED``. The range of possible values depends on the " "OpenSSL version." msgstr "" -#: library/ssl.rst:217 +#: library/ssl.rst:231 msgid "" "A subclass of :exc:`SSLError` raised when trying to read or write and the " "SSL connection has been closed cleanly. Note that this doesn't mean that " "the underlying transport (read TCP) has been closed." msgstr "" -#: library/ssl.rst:225 +#: library/ssl.rst:239 msgid "" "A subclass of :exc:`SSLError` raised by a :ref:`non-blocking SSL socket ` when trying to read or write data, but more data needs to be " @@ -344,53 +365,53 @@ msgstr "" "données, alors que davantage de données doivent être reçues sur la couche " "TCP sous-jacente avant que la demande puisse être satisfaite." -#: library/ssl.rst:234 +#: library/ssl.rst:248 msgid "" "A subclass of :exc:`SSLError` raised by a :ref:`non-blocking SSL socket ` when trying to read or write data, but more data needs to be " "sent on the underlying TCP transport before the request can be fulfilled." msgstr "" -#: library/ssl.rst:243 +#: library/ssl.rst:257 msgid "" "A subclass of :exc:`SSLError` raised when a system error was encountered " "while trying to fulfill an operation on a SSL socket. Unfortunately, there " "is no easy way to inspect the original errno number." msgstr "" -#: library/ssl.rst:251 +#: library/ssl.rst:265 msgid "" "A subclass of :exc:`SSLError` raised when the SSL connection has been " "terminated abruptly. Generally, you shouldn't try to reuse the underlying " "transport when this error is encountered." msgstr "" -#: library/ssl.rst:259 +#: library/ssl.rst:273 msgid "" "A subclass of :exc:`SSLError` raised when certificate validation has failed." msgstr "" -#: library/ssl.rst:266 +#: library/ssl.rst:280 msgid "A numeric error number that denotes the verification error." msgstr "" -#: library/ssl.rst:270 +#: library/ssl.rst:284 msgid "A human readable string of the verification error." msgstr "" -#: library/ssl.rst:274 +#: library/ssl.rst:288 msgid "An alias for :exc:`SSLCertVerificationError`." msgstr "" -#: library/ssl.rst:276 +#: library/ssl.rst:290 msgid "The exception is now an alias for :exc:`SSLCertVerificationError`." msgstr "" -#: library/ssl.rst:281 +#: library/ssl.rst:295 msgid "Random generation" msgstr "" -#: library/ssl.rst:285 +#: library/ssl.rst:299 msgid "" "Return *num* cryptographically strong pseudo-random bytes. Raises an :class:" "`SSLError` if the PRNG has not been seeded with enough data or if the " @@ -399,11 +420,11 @@ msgid "" "to seed the PRNG." msgstr "" -#: library/ssl.rst:312 +#: library/ssl.rst:326 msgid "For almost all applications :func:`os.urandom` is preferable." msgstr "" -#: library/ssl.rst:293 +#: library/ssl.rst:307 msgid "" "Read the Wikipedia article, `Cryptographically secure pseudorandom number " "generator (CSPRNG) `: not available with LibreSSL and OpenSSL " -"> 1.1.0." -msgstr "" - -#: library/ssl.rst:343 +#: library/ssl.rst:344 msgid "" "Mix the given *bytes* into the SSL pseudo-random number generator. The " "parameter *entropy* (a float) is a lower bound on the entropy contained in " @@ -470,15 +470,15 @@ msgid "" "information on sources of entropy." msgstr "" -#: library/ssl.rst:348 +#: library/ssl.rst:349 msgid "Writable :term:`bytes-like object` is now accepted." msgstr "N'importe quel :term:`bytes-like object` est maintenant accepté." -#: library/ssl.rst:352 +#: library/ssl.rst:353 msgid "Certificate handling" msgstr "" -#: library/ssl.rst:360 +#: library/ssl.rst:361 msgid "" "Verify that *cert* (in decoded format as returned by :meth:`SSLSocket." "getpeercert`) matches the given *hostname*. The rules applied are those for " @@ -488,13 +488,13 @@ msgid "" "such as FTPS, IMAPS, POPS and others." msgstr "" -#: library/ssl.rst:367 +#: library/ssl.rst:368 msgid "" ":exc:`CertificateError` is raised on failure. On success, the function " "returns nothing::" msgstr "" -#: library/ssl.rst:380 +#: library/ssl.rst:381 msgid "" "The function now follows :rfc:`6125`, section 6.4.3 and does neither match " "multiple wildcards (e.g. ``*.*.com`` or ``*a*.example.org``) nor a wildcard " @@ -503,47 +503,47 @@ msgid "" "longer matches ``xn--tda.python.org``." msgstr "" -#: library/ssl.rst:387 +#: library/ssl.rst:388 msgid "" "Matching of IP addresses, when present in the subjectAltName field of the " "certificate, is now supported." msgstr "" -#: library/ssl.rst:391 +#: library/ssl.rst:392 msgid "" "The function is no longer used to TLS connections. Hostname matching is now " "performed by OpenSSL." msgstr "" -#: library/ssl.rst:395 +#: library/ssl.rst:396 msgid "" "Allow wildcard when it is the leftmost and the only character in that " "segment. Partial wildcards like ``www*.example.com`` are no longer supported." msgstr "" -#: library/ssl.rst:403 +#: library/ssl.rst:404 msgid "" "Return the time in seconds since the Epoch, given the ``cert_time`` string " "representing the \"notBefore\" or \"notAfter\" date from a certificate in ``" "\"%b %d %H:%M:%S %Y %Z\"`` strptime format (C locale)." msgstr "" -#: library/ssl.rst:408 +#: library/ssl.rst:409 msgid "Here's an example:" msgstr "" -#: library/ssl.rst:420 +#: library/ssl.rst:421 msgid "\"notBefore\" or \"notAfter\" dates must use GMT (:rfc:`5280`)." msgstr "" -#: library/ssl.rst:422 +#: library/ssl.rst:423 msgid "" "Interpret the input time as a time in UTC as specified by 'GMT' timezone in " "the input string. Local timezone was used previously. Return an integer (no " "fractions of a second in the input format)" msgstr "" -#: library/ssl.rst:430 +#: library/ssl.rst:432 msgid "" "Given the address ``addr`` of an SSL-protected server, as a (*hostname*, " "*port-number*) pair, fetches the server's certificate, and returns it as a " @@ -553,84 +553,88 @@ msgid "" "same format as used for the same parameter in :meth:`SSLContext." "wrap_socket`. The call will attempt to validate the server certificate " "against that set of root certificates, and will fail if the validation " -"attempt fails." +"attempt fails. A timeout can be specified with the ``timeout`` parameter." msgstr "" -#: library/ssl.rst:440 +#: library/ssl.rst:443 msgid "This function is now IPv6-compatible." msgstr "" -#: library/ssl.rst:443 +#: library/ssl.rst:446 msgid "" "The default *ssl_version* is changed from :data:`PROTOCOL_SSLv3` to :data:" "`PROTOCOL_TLS` for maximum compatibility with modern servers." msgstr "" -#: library/ssl.rst:449 +#: library/ssl.rst:450 +msgid "The *timeout* parameter was added." +msgstr "" + +#: library/ssl.rst:455 msgid "" "Given a certificate as a DER-encoded blob of bytes, returns a PEM-encoded " "string version of the same certificate." msgstr "" -#: library/ssl.rst:454 +#: library/ssl.rst:460 msgid "" "Given a certificate as an ASCII PEM string, returns a DER-encoded sequence " "of bytes for that same certificate." msgstr "" -#: library/ssl.rst:459 +#: library/ssl.rst:465 msgid "" "Returns a named tuple with paths to OpenSSL's default cafile and capath. The " "paths are the same as used by :meth:`SSLContext.set_default_verify_paths`. " "The return value is a :term:`named tuple` ``DefaultVerifyPaths``:" msgstr "" -#: library/ssl.rst:464 +#: library/ssl.rst:470 msgid "" ":attr:`cafile` - resolved path to cafile or ``None`` if the file doesn't " "exist," msgstr "" -#: library/ssl.rst:465 +#: library/ssl.rst:471 msgid "" ":attr:`capath` - resolved path to capath or ``None`` if the directory " "doesn't exist," msgstr "" -#: library/ssl.rst:466 +#: library/ssl.rst:472 msgid "" ":attr:`openssl_cafile_env` - OpenSSL's environment key that points to a " "cafile," msgstr "" -#: library/ssl.rst:467 +#: library/ssl.rst:473 msgid ":attr:`openssl_cafile` - hard coded path to a cafile," msgstr "" -#: library/ssl.rst:468 +#: library/ssl.rst:474 msgid "" ":attr:`openssl_capath_env` - OpenSSL's environment key that points to a " "capath," msgstr "" -#: library/ssl.rst:469 +#: library/ssl.rst:475 msgid ":attr:`openssl_capath` - hard coded path to a capath directory" msgstr "" -#: library/ssl.rst:473 +#: library/ssl.rst:479 msgid "" ":ref:`Availability `: LibreSSL ignores the environment vars :" "attr:`openssl_cafile_env` and :attr:`openssl_capath_env`." msgstr "" -#: library/ssl.rst:478 +#: library/ssl.rst:484 msgid "" "Retrieve certificates from Windows' system cert store. *store_name* may be " "one of ``CA``, ``ROOT`` or ``MY``. Windows may provide additional cert " "stores, too." msgstr "" -#: library/ssl.rst:482 +#: library/ssl.rst:488 msgid "" "The function returns a list of (cert_bytes, encoding_type, trust) tuples. " "The encoding_type specifies the encoding of cert_bytes. It is either :const:" @@ -639,28 +643,28 @@ msgid "" "exactly ``True`` if the certificate is trustworthy for all purposes." msgstr "" -#: library/ssl.rst:1585 library/ssl.rst:1900 +#: library/ssl.rst:1639 library/ssl.rst:1934 msgid "Example::" msgstr "Exemple ::" -#: library/ssl.rst:511 +#: library/ssl.rst:517 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: library/ssl.rst:501 +#: library/ssl.rst:507 msgid "" "Retrieve CRLs from Windows' system cert store. *store_name* may be one of " "``CA``, ``ROOT`` or ``MY``. Windows may provide additional cert stores, too." msgstr "" -#: library/ssl.rst:505 +#: library/ssl.rst:511 msgid "" "The function returns a list of (cert_bytes, encoding_type, trust) tuples. " "The encoding_type specifies the encoding of cert_bytes. It is either :const:" "`x509_asn` for X.509 ASN.1 data or :const:`pkcs_7_asn` for PKCS#7 ASN.1 data." msgstr "" -#: library/ssl.rst:519 +#: library/ssl.rst:525 msgid "" "Takes an instance ``sock`` of :class:`socket.socket`, and returns an " "instance of :class:`ssl.SSLSocket`, a subtype of :class:`socket.socket`, " @@ -668,7 +672,7 @@ msgid "" "data:`~socket.SOCK_STREAM` socket; other socket types are unsupported." msgstr "" -#: library/ssl.rst:524 +#: library/ssl.rst:530 msgid "" "Internally, function creates a :class:`SSLContext` with protocol " "*ssl_version* and :attr:`SSLContext.options` set to *cert_reqs*. If " @@ -677,14 +681,14 @@ msgid "" "load_verify_locations`, and :meth:`SSLContext.set_ciphers`." msgstr "" -#: library/ssl.rst:531 +#: library/ssl.rst:537 msgid "" "The arguments *server_side*, *do_handshake_on_connect*, and " "*suppress_ragged_eofs* have the same meaning as :meth:`SSLContext." "wrap_socket`." msgstr "" -#: library/ssl.rst:537 +#: library/ssl.rst:543 msgid "" "Since Python 3.2 and 2.7.9, it is recommended to use the :meth:`SSLContext." "wrap_socket` instead of :func:`wrap_socket`. The top-level function is " @@ -692,17 +696,17 @@ msgid "" "or hostname matching." msgstr "" -#: library/ssl.rst:543 +#: library/ssl.rst:549 msgid "Constants" msgstr "Constantes" -#: library/ssl.rst:545 +#: library/ssl.rst:551 msgid "" "All constants are now :class:`enum.IntEnum` or :class:`enum.IntFlag` " "collections." msgstr "" -#: library/ssl.rst:551 +#: library/ssl.rst:557 msgid "" "Possible value for :attr:`SSLContext.verify_mode`, or the ``cert_reqs`` " "parameter to :func:`wrap_socket`. Except for :const:`PROTOCOL_TLS_CLIENT`, " @@ -711,17 +715,17 @@ msgid "" "and do not abort the TLS/SSL handshake." msgstr "" -#: library/ssl.rst:557 +#: library/ssl.rst:563 msgid "" "In server mode, no certificate is requested from the client, so the client " "does not send any for client cert authentication." msgstr "" -#: library/ssl.rst:2330 +#: library/ssl.rst:2342 msgid "See the discussion of :ref:`ssl-security` below." msgstr "" -#: library/ssl.rst:564 +#: library/ssl.rst:570 msgid "" "Possible value for :attr:`SSLContext.verify_mode`, or the ``cert_reqs`` " "parameter to :func:`wrap_socket`. In client mode, :const:`CERT_OPTIONAL` " @@ -729,7 +733,7 @@ msgid "" "const:`CERT_REQUIRED` for client-side sockets instead." msgstr "" -#: library/ssl.rst:569 +#: library/ssl.rst:575 msgid "" "In server mode, a client certificate request is sent to the client. The " "client may either ignore the request or send a certificate in order perform " @@ -738,14 +742,14 @@ msgid "" "TLS handshake." msgstr "" -#: library/ssl.rst:595 +#: library/ssl.rst:601 msgid "" "Use of this setting requires a valid set of CA certificates to be passed, " "either to :meth:`SSLContext.load_verify_locations` or as a value of the " "``ca_certs`` parameter to :func:`wrap_socket`." msgstr "" -#: library/ssl.rst:581 +#: library/ssl.rst:587 msgid "" "Possible value for :attr:`SSLContext.verify_mode`, or the ``cert_reqs`` " "parameter to :func:`wrap_socket`. In this mode, certificates are required " @@ -758,25 +762,25 @@ msgid "" "default." msgstr "" -#: library/ssl.rst:591 +#: library/ssl.rst:597 msgid "" "With server socket, this mode provides mandatory TLS client cert " "authentication. A client certificate request is sent to the client and the " "client must provide a valid and trusted certificate." msgstr "" -#: library/ssl.rst:601 +#: library/ssl.rst:607 msgid ":class:`enum.IntEnum` collection of CERT_* constants." msgstr "" -#: library/ssl.rst:607 +#: library/ssl.rst:613 msgid "" "Possible value for :attr:`SSLContext.verify_flags`. In this mode, " "certificate revocation lists (CRLs) are not checked. By default OpenSSL does " "neither require nor verify CRLs." msgstr "" -#: library/ssl.rst:615 +#: library/ssl.rst:621 msgid "" "Possible value for :attr:`SSLContext.verify_flags`. In this mode, only the " "peer cert is checked but none of the intermediate CA certificates. The mode " @@ -785,174 +789,201 @@ msgid "" "load_verify_locations`, validation will fail." msgstr "" -#: library/ssl.rst:625 +#: library/ssl.rst:631 msgid "" "Possible value for :attr:`SSLContext.verify_flags`. In this mode, CRLs of " "all certificates in the peer cert chain are checked." msgstr "" -#: library/ssl.rst:632 +#: library/ssl.rst:638 msgid "" "Possible value for :attr:`SSLContext.verify_flags` to disable workarounds " "for broken X.509 certificates." msgstr "" -#: library/ssl.rst:639 +#: library/ssl.rst:645 +msgid "" +"Possible value for :attr:`SSLContext.verify_flags` to enables proxy " +"certificate verification." +msgstr "" + +#: library/ssl.rst:652 msgid "" "Possible value for :attr:`SSLContext.verify_flags`. It instructs OpenSSL to " "prefer trusted certificates when building the trust chain to validate a " "certificate. This flag is enabled by default." msgstr "" -#: library/ssl.rst:647 +#: library/ssl.rst:660 +msgid "" +"Possible value for :attr:`SSLContext.verify_flags`. It instructs OpenSSL to " +"accept intermediate CAs in the trust store to be treated as trust-anchors, " +"in the same way as the self-signed root CA certificates. This makes it " +"possible to trust certificates issued by an intermediate CA without having " +"to trust its ancestor root CA." +msgstr "" + +#: library/ssl.rst:671 msgid ":class:`enum.IntFlag` collection of VERIFY_* constants." msgstr "" -#: library/ssl.rst:653 +#: library/ssl.rst:677 msgid "" "Selects the highest protocol version that both the client and server " "support. Despite the name, this option can select both \"SSL\" and \"TLS\" " "protocols." msgstr "" -#: library/ssl.rst:660 +#: library/ssl.rst:684 msgid "" -"Auto-negotiate the highest protocol version like :data:`PROTOCOL_TLS`, but " -"only support client-side :class:`SSLSocket` connections. The protocol " +"TLS clients and servers require different default settings for secure " +"communication. The generic TLS protocol constant is deprecated in favor of :" +"data:`PROTOCOL_TLS_CLIENT` and :data:`PROTOCOL_TLS_SERVER`." +msgstr "" + +#: library/ssl.rst:690 +msgid "" +"Auto-negotiate the highest protocol version that both the client and server " +"support, and configure the context client-side connections. The protocol " "enables :data:`CERT_REQUIRED` and :attr:`~SSLContext.check_hostname` by " "default." msgstr "" -#: library/ssl.rst:669 +#: library/ssl.rst:699 msgid "" -"Auto-negotiate the highest protocol version like :data:`PROTOCOL_TLS`, but " -"only support server-side :class:`SSLSocket` connections." +"Auto-negotiate the highest protocol version that both the client and server " +"support, and configure the context server-side connections." msgstr "" -#: library/ssl.rst:676 +#: library/ssl.rst:706 msgid "Alias for :data:`PROTOCOL_TLS`." msgstr "" -#: library/ssl.rst:680 +#: library/ssl.rst:710 msgid "Use :data:`PROTOCOL_TLS` instead." msgstr "" -#: library/ssl.rst:684 +#: library/ssl.rst:714 msgid "Selects SSL version 2 as the channel encryption protocol." msgstr "" -#: library/ssl.rst:686 +#: library/ssl.rst:716 msgid "" "This protocol is not available if OpenSSL is compiled with the " "``OPENSSL_NO_SSL2`` flag." msgstr "" -#: library/ssl.rst:691 +#: library/ssl.rst:721 msgid "SSL version 2 is insecure. Its use is highly discouraged." msgstr "" -#: library/ssl.rst:695 +#: library/ssl.rst:725 msgid "OpenSSL has removed support for SSLv2." msgstr "" -#: library/ssl.rst:699 +#: library/ssl.rst:729 msgid "Selects SSL version 3 as the channel encryption protocol." msgstr "" -#: library/ssl.rst:701 +#: library/ssl.rst:731 msgid "" "This protocol is not be available if OpenSSL is compiled with the " "``OPENSSL_NO_SSLv3`` flag." msgstr "" -#: library/ssl.rst:706 +#: library/ssl.rst:736 msgid "SSL version 3 is insecure. Its use is highly discouraged." msgstr "" -#: library/ssl.rst:719 library/ssl.rst:744 +#: library/ssl.rst:740 msgid "" "OpenSSL has deprecated all version specific protocols. Use the default " -"protocol :data:`PROTOCOL_TLS` with flags like :data:`OP_NO_SSLv3` instead." +"protocol :data:`PROTOCOL_TLS_SERVER` or :data:`PROTOCOL_TLS_CLIENT` with :" +"attr:`SSLContext.minimum_version` and :attr:`SSLContext.maximum_version` " +"instead." msgstr "" -#: library/ssl.rst:715 +#: library/ssl.rst:748 msgid "Selects TLS version 1.0 as the channel encryption protocol." msgstr "" -#: library/ssl.rst:724 +#: library/ssl.rst:763 library/ssl.rst:774 +msgid "OpenSSL has deprecated all version specific protocols." +msgstr "" + +#: library/ssl.rst:756 msgid "" "Selects TLS version 1.1 as the channel encryption protocol. Available only " "with openssl version 1.0.1+." msgstr "" -#: library/ssl.rst:736 +#: library/ssl.rst:767 msgid "" -"Selects TLS version 1.2 as the channel encryption protocol. This is the most " -"modern version, and probably the best choice for maximum protection, if both " -"sides can speak it. Available only with openssl version 1.0.1+." +"Selects TLS version 1.2 as the channel encryption protocol. Available only " +"with openssl version 1.0.1+." msgstr "" -#: library/ssl.rst:749 +#: library/ssl.rst:778 msgid "" "Enables workarounds for various bugs present in other SSL implementations. " "This option is set by default. It does not necessarily set the same flags " "as OpenSSL's ``SSL_OP_ALL`` constant." msgstr "" -#: library/ssl.rst:757 +#: library/ssl.rst:786 msgid "" "Prevents an SSLv2 connection. This option is only applicable in conjunction " "with :const:`PROTOCOL_TLS`. It prevents the peers from choosing SSLv2 as " "the protocol version." msgstr "" -#: library/ssl.rst:765 +#: library/ssl.rst:794 msgid "SSLv2 is deprecated" msgstr "" -#: library/ssl.rst:770 +#: library/ssl.rst:798 msgid "" "Prevents an SSLv3 connection. This option is only applicable in conjunction " "with :const:`PROTOCOL_TLS`. It prevents the peers from choosing SSLv3 as " "the protocol version." msgstr "" -#: library/ssl.rst:778 +#: library/ssl.rst:806 msgid "SSLv3 is deprecated" msgstr "" -#: library/ssl.rst:782 +#: library/ssl.rst:810 msgid "" "Prevents a TLSv1 connection. This option is only applicable in conjunction " "with :const:`PROTOCOL_TLS`. It prevents the peers from choosing TLSv1 as " "the protocol version." msgstr "" -#: library/ssl.rst:788 +#: library/ssl.rst:816 msgid "" "The option is deprecated since OpenSSL 1.1.0, use the new :attr:`SSLContext." "minimum_version` and :attr:`SSLContext.maximum_version` instead." msgstr "" -#: library/ssl.rst:795 +#: library/ssl.rst:823 msgid "" "Prevents a TLSv1.1 connection. This option is only applicable in conjunction " "with :const:`PROTOCOL_TLS`. It prevents the peers from choosing TLSv1.1 as " "the protocol version. Available only with openssl version 1.0.1+." msgstr "" -#: library/ssl.rst:812 +#: library/ssl.rst:840 msgid "The option is deprecated since OpenSSL 1.1.0." msgstr "" -#: library/ssl.rst:806 +#: library/ssl.rst:834 msgid "" "Prevents a TLSv1.2 connection. This option is only applicable in conjunction " "with :const:`PROTOCOL_TLS`. It prevents the peers from choosing TLSv1.2 as " "the protocol version. Available only with openssl version 1.0.1+." msgstr "" -#: library/ssl.rst:817 +#: library/ssl.rst:845 msgid "" "Prevents a TLSv1.3 connection. This option is only applicable in conjunction " "with :const:`PROTOCOL_TLS`. It prevents the peers from choosing TLSv1.3 as " @@ -961,104 +992,100 @@ msgid "" "defaults to *0*." msgstr "" -#: library/ssl.rst:825 +#: library/ssl.rst:853 msgid "" "The option is deprecated since OpenSSL 1.1.0. It was added to 2.7.15, 3.6.3 " "and 3.7.0 for backwards compatibility with OpenSSL 1.0.2." msgstr "" -#: library/ssl.rst:831 +#: library/ssl.rst:859 msgid "" "Disable all renegotiation in TLSv1.2 and earlier. Do not send HelloRequest " "messages, and ignore renegotiation requests via ClientHello." msgstr "" -#: library/ssl.rst:834 +#: library/ssl.rst:862 msgid "This option is only available with OpenSSL 1.1.0h and later." msgstr "" -#: library/ssl.rst:840 +#: library/ssl.rst:868 msgid "" "Use the server's cipher ordering preference, rather than the client's. This " "option has no effect on client sockets and SSLv2 server sockets." msgstr "" -#: library/ssl.rst:847 +#: library/ssl.rst:875 msgid "" "Prevents re-use of the same DH key for distinct SSL sessions. This improves " "forward secrecy but requires more computational resources. This option only " "applies to server sockets." msgstr "" -#: library/ssl.rst:855 +#: library/ssl.rst:883 msgid "" "Prevents re-use of the same ECDH key for distinct SSL sessions. This " "improves forward secrecy but requires more computational resources. This " "option only applies to server sockets." msgstr "" -#: library/ssl.rst:863 +#: library/ssl.rst:891 msgid "" "Send dummy Change Cipher Spec (CCS) messages in TLS 1.3 handshake to make a " "TLS 1.3 connection look more like a TLS 1.2 connection." msgstr "" -#: library/ssl.rst:866 +#: library/ssl.rst:894 msgid "This option is only available with OpenSSL 1.1.1 and later." msgstr "" -#: library/ssl.rst:872 +#: library/ssl.rst:900 msgid "" "Disable compression on the SSL channel. This is useful if the application " "protocol supports its own compression scheme." msgstr "" -#: library/ssl.rst:875 -msgid "This option is only available with OpenSSL 1.0.0 and later." -msgstr "" - -#: library/ssl.rst:881 +#: library/ssl.rst:907 msgid ":class:`enum.IntFlag` collection of OP_* constants." msgstr "" -#: library/ssl.rst:885 +#: library/ssl.rst:911 msgid "Prevent client side from requesting a session ticket." msgstr "" -#: library/ssl.rst:891 +#: library/ssl.rst:917 msgid "Ignore unexpected shutdown of TLS connections." msgstr "" -#: library/ssl.rst:893 +#: library/ssl.rst:919 msgid "This option is only available with OpenSSL 3.0.0 and later." msgstr "" -#: library/ssl.rst:899 +#: library/ssl.rst:925 msgid "" "Whether the OpenSSL library has built-in support for the *Application-Layer " "Protocol Negotiation* TLS extension as described in :rfc:`7301`." msgstr "" -#: library/ssl.rst:906 +#: library/ssl.rst:932 msgid "" "Whether the OpenSSL library has built-in support not checking subject common " "name and :attr:`SSLContext.hostname_checks_common_name` is writeable." msgstr "" -#: library/ssl.rst:914 +#: library/ssl.rst:940 msgid "" "Whether the OpenSSL library has built-in support for the Elliptic Curve-" "based Diffie-Hellman key exchange. This should be true unless the feature " "was explicitly disabled by the distributor." msgstr "" -#: library/ssl.rst:922 +#: library/ssl.rst:948 msgid "" "Whether the OpenSSL library has built-in support for the *Server Name " "Indication* extension (as defined in :rfc:`6066`)." msgstr "" -#: library/ssl.rst:929 +#: library/ssl.rst:955 msgid "" "Whether the OpenSSL library has built-in support for the *Next Protocol " "Negotiation* as described in the `Application Layer Protocol Negotiation " @@ -1067,57 +1094,57 @@ msgid "" "advertise which protocols you want to support." msgstr "" -#: library/ssl.rst:939 +#: library/ssl.rst:965 msgid "" "Whether the OpenSSL library has built-in support for the SSL 2.0 protocol." msgstr "" -#: library/ssl.rst:945 +#: library/ssl.rst:971 msgid "" "Whether the OpenSSL library has built-in support for the SSL 3.0 protocol." msgstr "" -#: library/ssl.rst:951 +#: library/ssl.rst:977 msgid "" "Whether the OpenSSL library has built-in support for the TLS 1.0 protocol." msgstr "" -#: library/ssl.rst:957 +#: library/ssl.rst:983 msgid "" "Whether the OpenSSL library has built-in support for the TLS 1.1 protocol." msgstr "" -#: library/ssl.rst:963 +#: library/ssl.rst:989 msgid "" "Whether the OpenSSL library has built-in support for the TLS 1.2 protocol." msgstr "" -#: library/ssl.rst:969 +#: library/ssl.rst:995 msgid "" "Whether the OpenSSL library has built-in support for the TLS 1.3 protocol." msgstr "" -#: library/ssl.rst:975 +#: library/ssl.rst:1001 msgid "" "List of supported TLS channel binding types. Strings in this list can be " "used as arguments to :meth:`SSLSocket.get_channel_binding`." msgstr "" -#: library/ssl.rst:982 +#: library/ssl.rst:1008 msgid "The version string of the OpenSSL library loaded by the interpreter::" msgstr "" -#: library/ssl.rst:991 +#: library/ssl.rst:1017 msgid "" "A tuple of five integers representing version information about the OpenSSL " "library::" msgstr "" -#: library/ssl.rst:1001 +#: library/ssl.rst:1027 msgid "The raw version number of the OpenSSL library, as a single integer::" msgstr "" -#: library/ssl.rst:1014 +#: library/ssl.rst:1040 msgid "" "Alert Descriptions from :rfc:`5246` and others. The `IANA TLS Alert Registry " "`." msgstr "" -#: library/ssl.rst:1108 +#: library/ssl.rst:1139 msgid "" "Instances of :class:`SSLSocket` must be created using the :meth:`SSLContext." "wrap_socket` method." msgstr "" -#: library/ssl.rst:1111 +#: library/ssl.rst:1142 msgid "The :meth:`sendfile` method was added." msgstr "" -#: library/ssl.rst:1114 +#: library/ssl.rst:1145 msgid "" "The :meth:`shutdown` does not reset the socket timeout each time bytes are " "received or sent. The socket timeout is now to maximum total duration of the " "shutdown." msgstr "" -#: library/ssl.rst:1119 +#: library/ssl.rst:1150 msgid "" "It is deprecated to create a :class:`SSLSocket` instance directly, use :meth:" "`SSLContext.wrap_socket` to wrap a socket." msgstr "" -#: library/ssl.rst:1123 +#: library/ssl.rst:1154 msgid "" ":class:`SSLSocket` instances must to created with :meth:`~SSLContext." "wrap_socket`. In earlier versions, it was possible to create instances " "directly. This was never documented or officially supported." msgstr "" -#: library/ssl.rst:1129 +#: library/ssl.rst:1160 +msgid "" +"Python now uses ``SSL_read_ex`` and ``SSL_write_ex`` internally. The " +"functions support reading and writing of data larger than 2 GB. Writing zero-" +"length data no longer fails with a protocol violation error." +msgstr "" + +#: library/ssl.rst:1165 msgid "SSL sockets also have the following additional methods and attributes:" msgstr "" -#: library/ssl.rst:1133 +#: library/ssl.rst:1169 msgid "" "Read up to *len* bytes of data from the SSL socket and return the result as " "a ``bytes`` instance. If *buffer* is specified, then read into the buffer " "instead, and return the number of bytes read." msgstr "" -#: library/ssl.rst:1137 +#: library/ssl.rst:1173 msgid "" "Raise :exc:`SSLWantReadError` or :exc:`SSLWantWriteError` if the socket is :" "ref:`non-blocking ` and the read would block." msgstr "" -#: library/ssl.rst:1140 +#: library/ssl.rst:1176 msgid "" "As at any time a re-negotiation is possible, a call to :meth:`read` can also " "cause write operations." msgstr "" -#: library/ssl.rst:1143 +#: library/ssl.rst:1179 msgid "" "The socket timeout is no more reset each time bytes are received or sent. " "The socket timeout is now to maximum total duration to read up to *len* " "bytes." msgstr "" -#: library/ssl.rst:1148 +#: library/ssl.rst:1184 msgid "Use :meth:`~SSLSocket.recv` instead of :meth:`~SSLSocket.read`." msgstr "" -#: library/ssl.rst:1153 +#: library/ssl.rst:1189 msgid "" "Write *buf* to the SSL socket and return the number of bytes written. The " "*buf* argument must be an object supporting the buffer interface." msgstr "" -#: library/ssl.rst:1156 +#: library/ssl.rst:1192 msgid "" "Raise :exc:`SSLWantReadError` or :exc:`SSLWantWriteError` if the socket is :" "ref:`non-blocking ` and the write would block." msgstr "" -#: library/ssl.rst:1159 +#: library/ssl.rst:1195 msgid "" "As at any time a re-negotiation is possible, a call to :meth:`write` can " "also cause read operations." msgstr "" -#: library/ssl.rst:1162 +#: library/ssl.rst:1198 msgid "" "The socket timeout is no more reset each time bytes are received or sent. " "The socket timeout is now to maximum total duration to write *buf*." msgstr "" -#: library/ssl.rst:1166 +#: library/ssl.rst:1202 msgid "Use :meth:`~SSLSocket.send` instead of :meth:`~SSLSocket.write`." msgstr "" -#: library/ssl.rst:1171 +#: library/ssl.rst:1207 msgid "" "The :meth:`~SSLSocket.read` and :meth:`~SSLSocket.write` methods are the low-" "level methods that read and write unencrypted, application-level data and " @@ -1359,30 +1399,30 @@ msgid "" "unwrap` was not called." msgstr "" -#: library/ssl.rst:1177 +#: library/ssl.rst:1213 msgid "" "Normally you should use the socket API methods like :meth:`~socket.socket." "recv` and :meth:`~socket.socket.send` instead of these methods." msgstr "" -#: library/ssl.rst:1183 +#: library/ssl.rst:1219 msgid "Perform the SSL setup handshake." msgstr "" -#: library/ssl.rst:1185 +#: library/ssl.rst:1221 msgid "" "The handshake method also performs :func:`match_hostname` when the :attr:" "`~SSLContext.check_hostname` attribute of the socket's :attr:`~SSLSocket." "context` is true." msgstr "" -#: library/ssl.rst:1190 +#: library/ssl.rst:1226 msgid "" "The socket timeout is no more reset each time bytes are received or sent. " "The socket timeout is now to maximum total duration of the handshake." msgstr "" -#: library/ssl.rst:1194 +#: library/ssl.rst:1230 msgid "" "Hostname or IP address is matched by OpenSSL during handshake. The function :" "func:`match_hostname` is no longer used. In case OpenSSL refuses a hostname " @@ -1390,14 +1430,14 @@ msgid "" "send to the peer." msgstr "" -#: library/ssl.rst:1202 +#: library/ssl.rst:1238 msgid "" "If there is no certificate for the peer on the other end of the connection, " "return ``None``. If the SSL handshake hasn't been done yet, raise :exc:" "`ValueError`." msgstr "" -#: library/ssl.rst:1206 +#: library/ssl.rst:1242 msgid "" "If the ``binary_form`` parameter is :const:`False`, and a certificate was " "received from the peer, this method returns a :class:`dict` instance. If " @@ -1409,7 +1449,7 @@ msgid "" "also be a ``subjectAltName`` key in the dictionary." msgstr "" -#: library/ssl.rst:1215 +#: library/ssl.rst:1251 msgid "" "The ``subject`` and ``issuer`` fields are tuples containing the sequence of " "relative distinguished names (RDNs) given in the certificate's data " @@ -1417,13 +1457,13 @@ msgid "" "value pairs. Here is a real-world example::" msgstr "" -#: library/ssl.rst:1241 +#: library/ssl.rst:1277 msgid "" "To validate a certificate for a particular service, you can use the :func:" "`match_hostname` function." msgstr "" -#: library/ssl.rst:1244 +#: library/ssl.rst:1280 msgid "" "If the ``binary_form`` parameter is :const:`True`, and a certificate was " "provided, this method returns the DER-encoded form of the entire certificate " @@ -1432,13 +1472,13 @@ msgid "" "socket's role:" msgstr "" -#: library/ssl.rst:1250 +#: library/ssl.rst:1286 msgid "" "for a client SSL socket, the server will always provide a certificate, " "regardless of whether validation was required;" msgstr "" -#: library/ssl.rst:1253 +#: library/ssl.rst:1289 msgid "" "for a server SSL socket, the client will only provide a certificate when " "requested by the server; therefore :meth:`getpeercert` will return :const:" @@ -1446,24 +1486,24 @@ msgid "" "or :const:`CERT_REQUIRED`)." msgstr "" -#: library/ssl.rst:1258 +#: library/ssl.rst:1294 msgid "" "The returned dictionary includes additional items such as ``issuer`` and " "``notBefore``." msgstr "" -#: library/ssl.rst:1262 +#: library/ssl.rst:1298 msgid "" ":exc:`ValueError` is raised when the handshake isn't done. The returned " "dictionary includes additional X509v3 extension items such as " "``crlDistributionPoints``, ``caIssuers`` and ``OCSP`` URIs." msgstr "" -#: library/ssl.rst:1267 +#: library/ssl.rst:1303 msgid "IPv6 address strings no longer have a trailing new line." msgstr "" -#: library/ssl.rst:1272 +#: library/ssl.rst:1308 msgid "" "Returns a three-value tuple containing the name of the cipher being used, " "the version of the SSL protocol that defines its use, and the number of " @@ -1471,7 +1511,7 @@ msgid "" "``None``." msgstr "" -#: library/ssl.rst:1278 +#: library/ssl.rst:1314 msgid "" "Return the list of ciphers shared by the client during the handshake. Each " "entry of the returned list is a three-value tuple containing the name of the " @@ -1481,25 +1521,25 @@ msgid "" "socket." msgstr "" -#: library/ssl.rst:1289 +#: library/ssl.rst:1325 msgid "" "Return the compression algorithm being used as a string, or ``None`` if the " "connection isn't compressed." msgstr "" -#: library/ssl.rst:1292 +#: library/ssl.rst:1328 msgid "" "If the higher-level protocol supports its own compression mechanism, you can " "use :data:`OP_NO_COMPRESSION` to disable SSL-level compression." msgstr "" -#: library/ssl.rst:1299 +#: library/ssl.rst:1335 msgid "" "Get channel binding data for current connection, as a bytes object. Returns " "``None`` if not connected or the handshake has not been completed." msgstr "" -#: library/ssl.rst:1302 +#: library/ssl.rst:1338 msgid "" "The *cb_type* parameter allow selection of the desired channel binding type. " "Valid channel binding types are listed in the :data:`CHANNEL_BINDING_TYPES` " @@ -1508,7 +1548,7 @@ msgid "" "channel binding type is requested." msgstr "" -#: library/ssl.rst:1312 +#: library/ssl.rst:1348 msgid "" "Return the protocol that was selected during the TLS handshake. If :meth:" "`SSLContext.set_alpn_protocols` was not called, if the other party does not " @@ -1516,7 +1556,7 @@ msgid "" "protocols, or if the handshake has not happened yet, ``None`` is returned." msgstr "" -#: library/ssl.rst:1322 +#: library/ssl.rst:1358 msgid "" "Return the higher-level protocol that was selected during the TLS/SSL " "handshake. If :meth:`SSLContext.set_npn_protocols` was not called, or if the " @@ -1524,7 +1564,11 @@ msgid "" "this will return ``None``." msgstr "" -#: library/ssl.rst:1331 +#: library/ssl.rst:1727 +msgid "NPN has been superseded by ALPN" +msgstr "" + +#: library/ssl.rst:1371 msgid "" "Performs the SSL shutdown handshake, which removes the TLS layer from the " "underlying socket, and returns the underlying socket object. This can be " @@ -1533,7 +1577,7 @@ msgid "" "other side of the connection, rather than the original socket." msgstr "" -#: library/ssl.rst:1339 +#: library/ssl.rst:1379 msgid "" "Requests post-handshake authentication (PHA) from a TLS 1.3 client. PHA can " "only be initiated for a TLS 1.3 connection from a server-side socket, after " @@ -1541,26 +1585,26 @@ msgid "" "`SSLContext.post_handshake_auth`." msgstr "" -#: library/ssl.rst:1344 +#: library/ssl.rst:1384 msgid "" "The method does not perform a cert exchange immediately. The server-side " "sends a CertificateRequest during the next write event and expects the " "client to respond with a certificate on the next read event." msgstr "" -#: library/ssl.rst:1348 +#: library/ssl.rst:1388 msgid "" "If any precondition isn't met (e.g. not TLS 1.3, PHA not enabled), an :exc:" "`SSLError` is raised." msgstr "" -#: library/ssl.rst:1352 +#: library/ssl.rst:1392 msgid "" "Only available with OpenSSL 1.1.1 and TLS 1.3 enabled. Without TLS 1.3 " "support, the method raises :exc:`NotImplementedError`." msgstr "" -#: library/ssl.rst:1359 +#: library/ssl.rst:1399 msgid "" "Return the actual SSL protocol version negotiated by the connection as a " "string, or ``None`` is no secure connection is established. As of this " @@ -1569,13 +1613,13 @@ msgid "" "may define more return values." msgstr "" -#: library/ssl.rst:1369 +#: library/ssl.rst:1409 msgid "" "Returns the number of already decrypted bytes available for read, pending on " "the connection." msgstr "" -#: library/ssl.rst:1374 +#: library/ssl.rst:1414 msgid "" "The :class:`SSLContext` object this SSL socket is tied to. If the SSL " "socket was created using the deprecated :func:`wrap_socket` function (rather " @@ -1583,19 +1627,19 @@ msgid "" "created for this SSL socket." msgstr "" -#: library/ssl.rst:1383 +#: library/ssl.rst:1423 msgid "" "A boolean which is ``True`` for server-side sockets and ``False`` for client-" "side sockets." msgstr "" -#: library/ssl.rst:1390 +#: library/ssl.rst:1430 msgid "" "Hostname of the server: :class:`str` type, or ``None`` for server-side " "socket or if the hostname was not specified in the constructor." msgstr "" -#: library/ssl.rst:1395 +#: library/ssl.rst:1435 msgid "" "The attribute is now always ASCII text. When ``server_hostname`` is an " "internationalized domain name (IDN), this attribute now stores the A-label " @@ -1603,7 +1647,7 @@ msgid "" "org\"``)." msgstr "" -#: library/ssl.rst:1403 +#: library/ssl.rst:1443 msgid "" "The :class:`SSLSession` for this SSL connection. The session is available " "for client and server side sockets after the TLS handshake has been " @@ -1611,11 +1655,11 @@ msgid "" "`~SSLSocket.do_handshake` has been called to reuse a session." msgstr "" -#: library/ssl.rst:1416 +#: library/ssl.rst:1456 msgid "SSL Contexts" msgstr "" -#: library/ssl.rst:1420 +#: library/ssl.rst:1460 msgid "" "An SSL context holds various data longer-lived than single SSL connections, " "such as SSL configuration options, certificate(s) and private key(s). It " @@ -1623,7 +1667,7 @@ msgid "" "speed up repeated connections from the same clients." msgstr "" -#: library/ssl.rst:1427 +#: library/ssl.rst:1467 msgid "" "Create a new SSL context. You may pass *protocol* which must be one of the " "``PROTOCOL_*`` constants defined in this module. The parameter specifies " @@ -1634,105 +1678,105 @@ msgid "" "provides the most compatibility with other versions." msgstr "" -#: library/ssl.rst:1436 +#: library/ssl.rst:1476 msgid "" "Here's a table showing which versions in a client (down the side) can " "connect to which versions in a server (along the top):" msgstr "" -#: library/ssl.rst:1442 +#: library/ssl.rst:1482 msgid "*client* / **server**" msgstr "" -#: library/ssl.rst:1442 +#: library/ssl.rst:1482 msgid "**SSLv2**" msgstr "**SSLv2**" -#: library/ssl.rst:1442 +#: library/ssl.rst:1482 msgid "**SSLv3**" msgstr "**SSLv3**" -#: library/ssl.rst:1442 +#: library/ssl.rst:1482 msgid "**TLS** [3]_" msgstr "**TLS** [3]_" -#: library/ssl.rst:1442 +#: library/ssl.rst:1482 msgid "**TLSv1**" msgstr "**TLSv1**" -#: library/ssl.rst:1442 +#: library/ssl.rst:1482 msgid "**TLSv1.1**" msgstr "**TLSv1.1**" -#: library/ssl.rst:1442 +#: library/ssl.rst:1482 msgid "**TLSv1.2**" msgstr "**TLSv1.2**" -#: library/ssl.rst:1444 +#: library/ssl.rst:1484 msgid "*SSLv2*" msgstr "*SSLv2*" -#: library/ssl.rst:1445 library/ssl.rst:1447 library/ssl.rst:1449 +#: library/ssl.rst:1485 library/ssl.rst:1487 library/ssl.rst:1489 msgid "yes" msgstr "oui" -#: library/ssl.rst:1445 library/ssl.rst:1448 library/ssl.rst:1449 +#: library/ssl.rst:1485 library/ssl.rst:1488 library/ssl.rst:1489 msgid "no" msgstr "non" -#: library/ssl.rst:1446 +#: library/ssl.rst:1486 msgid "no [1]_" msgstr "" -#: library/ssl.rst:1445 +#: library/ssl.rst:1485 msgid "*SSLv3*" msgstr "*SSLv3*" -#: library/ssl.rst:1446 +#: library/ssl.rst:1486 msgid "no [2]_" msgstr "" -#: library/ssl.rst:1446 +#: library/ssl.rst:1486 msgid "*TLS* (*SSLv23*) [3]_" msgstr "" -#: library/ssl.rst:1447 +#: library/ssl.rst:1487 msgid "*TLSv1*" msgstr "*TLSv1*" -#: library/ssl.rst:1448 +#: library/ssl.rst:1488 msgid "*TLSv1.1*" msgstr "*TLSv1.1*" -#: library/ssl.rst:1449 +#: library/ssl.rst:1489 msgid "*TLSv1.2*" msgstr "*TLSv1.2*" -#: library/ssl.rst:1452 +#: library/ssl.rst:1492 msgid "Footnotes" msgstr "Notes" -#: library/ssl.rst:1453 +#: library/ssl.rst:1493 msgid ":class:`SSLContext` disables SSLv2 with :data:`OP_NO_SSLv2` by default." msgstr "" -#: library/ssl.rst:1454 +#: library/ssl.rst:1494 msgid ":class:`SSLContext` disables SSLv3 with :data:`OP_NO_SSLv3` by default." msgstr "" -#: library/ssl.rst:1455 +#: library/ssl.rst:1495 msgid "" "TLS 1.3 protocol will be available with :data:`PROTOCOL_TLS` in OpenSSL >= " "1.1.1. There is no dedicated PROTOCOL constant for just TLS 1.3." msgstr "" -#: library/ssl.rst:1460 +#: library/ssl.rst:1500 msgid "" ":func:`create_default_context` lets the :mod:`ssl` module choose security " "settings for a given purpose." msgstr "" -#: library/ssl.rst:1465 +#: library/ssl.rst:1505 msgid "" "The context is created with secure default values. The options :data:" "`OP_NO_COMPRESSION`, :data:`OP_CIPHER_SERVER_PREFERENCE`, :data:" @@ -1743,22 +1787,38 @@ msgid "" "for :data:`PROTOCOL_SSLv2`)." msgstr "" -#: library/ssl.rst:1475 +#: library/ssl.rst:1516 +msgid "" +":class:`SSLContext` without protocol argument is deprecated. The context " +"class will either require :data:`PROTOCOL_TLS_CLIENT` or :data:" +"`PROTOCOL_TLS_SERVER` protocol in the future." +msgstr "" + +#: library/ssl.rst:1522 +msgid "" +"The default cipher suites now include only secure AES and ChaCha20 ciphers " +"with forward secrecy and security level 2. RSA and DH keys with less than " +"2048 bits and ECC keys with less than 224 bits are prohibited. :data:" +"`PROTOCOL_TLS`, :data:`PROTOCOL_TLS_CLIENT`, and :data:`PROTOCOL_TLS_SERVER` " +"use TLS 1.2 as minimum TLS version." +msgstr "" + +#: library/ssl.rst:1529 msgid ":class:`SSLContext` objects have the following methods and attributes:" msgstr "" -#: library/ssl.rst:1479 +#: library/ssl.rst:1533 msgid "" "Get statistics about quantities of loaded X.509 certificates, count of X.509 " "certificates flagged as CA certificates and certificate revocation lists as " "dictionary." msgstr "" -#: library/ssl.rst:1483 +#: library/ssl.rst:1537 msgid "Example for a context with one CA cert and one other cert::" msgstr "" -#: library/ssl.rst:1493 +#: library/ssl.rst:1547 msgid "" "Load a private key and the corresponding certificate. The *certfile* string " "must be the path to a single file in PEM format containing the certificate " @@ -1770,7 +1830,7 @@ msgid "" "*certfile*." msgstr "" -#: library/ssl.rst:1502 +#: library/ssl.rst:1556 msgid "" "The *password* argument may be a function to call to get the password for " "decrypting the private key. It will only be called if the private key is " @@ -1782,24 +1842,24 @@ msgid "" "encrypted and no password is needed." msgstr "" -#: library/ssl.rst:1511 +#: library/ssl.rst:1565 msgid "" "If the *password* argument is not specified and a password is required, " "OpenSSL's built-in password prompting mechanism will be used to " "interactively prompt the user for a password." msgstr "" -#: library/ssl.rst:1515 +#: library/ssl.rst:1569 msgid "" "An :class:`SSLError` is raised if the private key doesn't match with the " "certificate." msgstr "" -#: library/ssl.rst:1518 +#: library/ssl.rst:1572 msgid "New optional argument *password*." msgstr "" -#: library/ssl.rst:1523 +#: library/ssl.rst:1577 msgid "" "Load a set of default \"certification authority\" (CA) certificates from " "default locations. On Windows it loads CA certs from the ``CA`` and ``ROOT`` " @@ -1808,7 +1868,7 @@ msgid "" "from other locations, too." msgstr "" -#: library/ssl.rst:1529 +#: library/ssl.rst:1583 msgid "" "The *purpose* flag specifies what kind of CA certificates are loaded. The " "default settings :data:`Purpose.SERVER_AUTH` loads certificates, that are " @@ -1817,28 +1877,28 @@ msgid "" "certificate verification on the server side." msgstr "" -#: library/ssl.rst:1539 +#: library/ssl.rst:1593 msgid "" "Load a set of \"certification authority\" (CA) certificates used to validate " "other peers' certificates when :data:`verify_mode` is other than :data:" "`CERT_NONE`. At least one of *cafile* or *capath* must be specified." msgstr "" -#: library/ssl.rst:1543 +#: library/ssl.rst:1597 msgid "" "This method can also load certification revocation lists (CRLs) in PEM or " "DER format. In order to make use of CRLs, :attr:`SSLContext.verify_flags` " "must be configured properly." msgstr "" -#: library/ssl.rst:1547 +#: library/ssl.rst:1601 msgid "" "The *cafile* string, if present, is the path to a file of concatenated CA " "certificates in PEM format. See the discussion of :ref:`ssl-certificates` " "for more information about how to arrange the certificates in this file." msgstr "" -#: library/ssl.rst:1552 +#: library/ssl.rst:1606 msgid "" "The *capath* string, if present, is the path to a directory containing " "several CA certificates in PEM format, following an `OpenSSL specific layout " @@ -1846,7 +1906,7 @@ msgid "" "html>`_." msgstr "" -#: library/ssl.rst:1557 +#: library/ssl.rst:1611 msgid "" "The *cadata* object, if present, is either an ASCII string of one or more " "PEM-encoded certificates or a :term:`bytes-like object` of DER-encoded " @@ -1854,11 +1914,11 @@ msgid "" "are ignored but at least one certificate must be present." msgstr "" -#: library/ssl.rst:1562 +#: library/ssl.rst:1616 msgid "New optional argument *cadata*" msgstr "" -#: library/ssl.rst:1567 +#: library/ssl.rst:1621 msgid "" "Get a list of loaded \"certification authority\" (CA) certificates. If the " "``binary_form`` parameter is :const:`False` each list entry is a dict like " @@ -1868,28 +1928,19 @@ msgid "" "a SSL connection." msgstr "" -#: library/ssl.rst:1575 +#: library/ssl.rst:1629 msgid "" "Certificates in a capath directory aren't loaded unless they have been used " "at least once." msgstr "" -#: library/ssl.rst:1582 +#: library/ssl.rst:1636 msgid "" "Get a list of enabled ciphers. The list is in order of cipher priority. See :" "meth:`SSLContext.set_ciphers`." msgstr "" -#: library/ssl.rst:1605 -msgid "On OpenSSL 1.1 and newer the cipher dict contains additional fields::" -msgstr "" - -#: library/ssl.rst:1634 -#, fuzzy -msgid ":ref:`Availability `: OpenSSL 1.0.2+." -msgstr ":ref:`Disponibilité ` : OpenSSL 1.1+." - -#: library/ssl.rst:1639 +#: library/ssl.rst:1673 msgid "" "Load a set of default \"certification authority\" (CA) certificates from a " "filesystem path defined when building the OpenSSL library. Unfortunately, " @@ -1899,7 +1950,7 @@ msgid "" "configured properly." msgstr "" -#: library/ssl.rst:1648 +#: library/ssl.rst:1682 msgid "" "Set the available ciphers for sockets created with this context. It should " "be a string in the `OpenSSL cipher list format `_" msgstr "" -#: library/ssl.rst:1786 +#: library/ssl.rst:1820 msgid "Vincent Bernat." msgstr "" -#: library/ssl.rst:1792 +#: library/ssl.rst:1826 msgid "" "Wrap an existing Python socket *sock* and return an instance of :attr:" "`SSLContext.sslsocket_class` (default :class:`SSLSocket`). The returned SSL " @@ -2095,13 +2139,13 @@ msgid "" "a :data:`~socket.SOCK_STREAM` socket; other socket types are unsupported." msgstr "" -#: library/ssl.rst:1798 +#: library/ssl.rst:1832 msgid "" "The parameter ``server_side`` is a boolean which identifies whether server-" "side or client-side behavior is desired from this socket." msgstr "" -#: library/ssl.rst:1801 +#: library/ssl.rst:1835 msgid "" "For client-side sockets, the context construction is lazy; if the underlying " "socket isn't connected yet, the context construction will be performed " @@ -2112,7 +2156,7 @@ msgid "" "exc:`SSLError`." msgstr "" -#: library/ssl.rst:1809 +#: library/ssl.rst:1843 msgid "" "On client connections, the optional parameter *server_hostname* specifies " "the hostname of the service which we are connecting to. This allows a " @@ -2121,7 +2165,7 @@ msgid "" "*server_hostname* will raise a :exc:`ValueError` if *server_side* is true." msgstr "" -#: library/ssl.rst:1815 +#: library/ssl.rst:1849 msgid "" "The parameter ``do_handshake_on_connect`` specifies whether to do the SSL " "handshake automatically after doing a :meth:`socket.connect`, or whether the " @@ -2131,7 +2175,7 @@ msgid "" "socket I/O involved in the handshake." msgstr "" -#: library/ssl.rst:1822 +#: library/ssl.rst:1856 msgid "" "The parameter ``suppress_ragged_eofs`` specifies how the :meth:`SSLSocket." "recv` method should signal unexpected EOF from the other end of the " @@ -2141,34 +2185,34 @@ msgid "" "exceptions back to the caller." msgstr "" -#: library/ssl.rst:1829 +#: library/ssl.rst:1863 msgid "*session*, see :attr:`~SSLSocket.session`." msgstr "" -#: library/ssl.rst:1831 +#: library/ssl.rst:1865 msgid "" "Always allow a server_hostname to be passed, even if OpenSSL does not have " "SNI." msgstr "" -#: library/ssl.rst:1861 +#: library/ssl.rst:1895 msgid "*session* argument was added." msgstr "" -#: library/ssl.rst:1838 +#: library/ssl.rst:1872 msgid "" "The method returns on instance of :attr:`SSLContext.sslsocket_class` instead " "of hard-coded :class:`SSLSocket`." msgstr "" -#: library/ssl.rst:1844 +#: library/ssl.rst:1878 msgid "" "The return type of :meth:`SSLContext.wrap_socket`, defaults to :class:" "`SSLSocket`. The attribute can be overridden on instance of class in order " "to return a custom subclass of :class:`SSLSocket`." msgstr "" -#: library/ssl.rst:1853 +#: library/ssl.rst:1887 msgid "" "Wrap the BIO objects *incoming* and *outgoing* and return an instance of :" "attr:`SSLContext.sslobject_class` (default :class:`SSLObject`). The SSL " @@ -2176,35 +2220,35 @@ msgid "" "outgoing BIO." msgstr "" -#: library/ssl.rst:1858 +#: library/ssl.rst:1892 msgid "" "The *server_side*, *server_hostname* and *session* parameters have the same " "meaning as in :meth:`SSLContext.wrap_socket`." msgstr "" -#: library/ssl.rst:1864 +#: library/ssl.rst:1898 msgid "" "The method returns on instance of :attr:`SSLContext.sslobject_class` instead " "of hard-coded :class:`SSLObject`." msgstr "" -#: library/ssl.rst:1870 +#: library/ssl.rst:1904 msgid "" "The return type of :meth:`SSLContext.wrap_bio`, defaults to :class:" "`SSLObject`. The attribute can be overridden on instance of class in order " "to return a custom subclass of :class:`SSLObject`." msgstr "" -#: library/ssl.rst:1878 +#: library/ssl.rst:1912 msgid "" "Get statistics about the SSL sessions created or managed by this context. A " "dictionary is returned which maps the names of each `piece of information " -"`_ to " +"`_ to " "their numeric values. For example, here is the total number of hits and " "misses in the session cache since the context was created::" msgstr "" -#: library/ssl.rst:1889 +#: library/ssl.rst:1923 msgid "" "Whether to match the peer cert's hostname in :meth:`SSLSocket.do_handshake`. " "The context's :attr:`~SSLContext.verify_mode` must be set to :data:" @@ -2217,7 +2261,7 @@ msgid "" "With other protocols, hostname checking must be enabled explicitly." msgstr "" -#: library/ssl.rst:1917 +#: library/ssl.rst:1951 msgid "" ":attr:`~SSLContext.verify_mode` is now automatically changed to :data:" "`CERT_REQUIRED` when hostname checking is enabled and :attr:`~SSLContext." @@ -2225,11 +2269,7 @@ msgid "" "failed with a :exc:`ValueError`." msgstr "" -#: library/ssl.rst:1924 -msgid "This features requires OpenSSL 0.9.8f or newer." -msgstr "" - -#: library/ssl.rst:1928 +#: library/ssl.rst:1958 msgid "" "Write TLS keys to a keylog file, whenever key material is generated or " "received. The keylog file is designed for debugging purposes only. The file " @@ -2238,11 +2278,7 @@ msgid "" "synchronized between threads, but not between processes." msgstr "" -#: library/ssl.rst:1938 -msgid "This features requires OpenSSL 1.1.1 or newer." -msgstr "" - -#: library/ssl.rst:1942 +#: library/ssl.rst:1968 msgid "" "A :class:`TLSVersion` enum member representing the highest supported TLS " "version. The value defaults to :attr:`TLSVersion.MAXIMUM_SUPPORTED`. The " @@ -2250,7 +2286,7 @@ msgid "" "`PROTOCOL_TLS_CLIENT`, and :attr:`PROTOCOL_TLS_SERVER`." msgstr "" -#: library/ssl.rst:1947 +#: library/ssl.rst:1973 msgid "" "The attributes :attr:`~SSLContext.maximum_version`, :attr:`~SSLContext." "minimum_version` and :attr:`SSLContext.options` all affect the supported SSL " @@ -2260,50 +2296,38 @@ msgid "" "`TLSVersion.TLSv1_2` will not be able to establish a TLS 1.2 connection." msgstr "" -#: library/ssl.rst:1970 -msgid "" -"This attribute is not available unless the ssl module is compiled with " -"OpenSSL 1.1.0g or newer." -msgstr "" - -#: library/ssl.rst:1965 +#: library/ssl.rst:1986 msgid "" "Like :attr:`SSLContext.maximum_version` except it is the lowest supported " "version or :attr:`TLSVersion.MINIMUM_SUPPORTED`." msgstr "" -#: library/ssl.rst:1977 +#: library/ssl.rst:1993 msgid "" "Control the number of TLS 1.3 session tickets of a :attr:" -"`TLS_PROTOCOL_SERVER` context. The setting has no impact on TLS 1.0 to 1.2 " +"`PROTOCOL_TLS_SERVER` context. The setting has no impact on TLS 1.0 to 1.2 " "connections." msgstr "" -#: library/ssl.rst:1983 -msgid "" -"This attribute is not available unless the ssl module is compiled with " -"OpenSSL 1.1.1 or newer." -msgstr "" - -#: library/ssl.rst:1990 +#: library/ssl.rst:2001 msgid "" "An integer representing the set of SSL options enabled on this context. The " "default value is :data:`OP_ALL`, but you can specify other options such as :" "data:`OP_NO_SSLv2` by ORing them together." msgstr "" -#: library/ssl.rst:1995 -msgid "" -"With versions of OpenSSL older than 0.9.8m, it is only possible to set " -"options, not to clear them. Attempting to clear an option (by resetting the " -"corresponding bits) will raise a :exc:`ValueError`." +#: library/ssl.rst:2005 +msgid ":attr:`SSLContext.options` returns :class:`Options` flags:" msgstr "" -#: library/ssl.rst:1999 -msgid ":attr:`SSLContext.options` returns :class:`Options` flags:" +#: library/ssl.rst:2013 +msgid "" +"All ``OP_NO_SSL*`` and ``OP_NO_TLS*`` options have been deprecated since " +"Python 3.7. Use :attr:`SSLContext.minimum_version` and :attr:`SSLContext." +"maximum_version` instead." msgstr "" -#: library/ssl.rst:2007 +#: library/ssl.rst:2019 msgid "" "Enable TLS 1.3 post-handshake client authentication. Post-handshake auth is " "disabled by default and a server can only request a TLS client certificate " @@ -2311,13 +2335,13 @@ msgid "" "client certificate at any time after the handshake." msgstr "" -#: library/ssl.rst:2012 +#: library/ssl.rst:2024 msgid "" "When enabled on client-side sockets, the client signals the server that it " "supports post-handshake authentication." msgstr "" -#: library/ssl.rst:2015 +#: library/ssl.rst:2027 msgid "" "When enabled on server-side sockets, :attr:`SSLContext.verify_mode` must be " "set to :data:`CERT_OPTIONAL` or :data:`CERT_REQUIRED`, too. The actual " @@ -2325,63 +2349,59 @@ msgid "" "verify_client_post_handshake` is called and some I/O is performed." msgstr "" -#: library/ssl.rst:2022 -msgid "" -"Only available with OpenSSL 1.1.1 and TLS 1.3 enabled. Without TLS 1.3 " -"support, the property value is None and can't be modified" -msgstr "" - -#: library/ssl.rst:2029 +#: library/ssl.rst:2037 msgid "" "The protocol version chosen when constructing the context. This attribute " "is read-only." msgstr "" -#: library/ssl.rst:2034 +#: library/ssl.rst:2042 msgid "" "Whether :attr:`~SSLContext.check_hostname` falls back to verify the cert's " "subject common name in the absence of a subject alternative name extension " "(default: true)." msgstr "" -#: library/ssl.rst:2039 -msgid "Only writeable with OpenSSL 1.1.0 or higher." -msgstr "" - -#: library/ssl.rst:2045 +#: library/ssl.rst:2050 msgid "" "The flag had no effect with OpenSSL before version 1.1.1k. Python 3.8.9, " "3.9.3, and 3.10 include workarounds for previous versions." msgstr "" -#: library/ssl.rst:2050 +#: library/ssl.rst:2055 +msgid "" +"An integer representing the `security level `_ for the context. This " +"attribute is read-only." +msgstr "" + +#: library/ssl.rst:2063 msgid "" "The flags for certificate verification operations. You can set flags like :" "data:`VERIFY_CRL_CHECK_LEAF` by ORing them together. By default OpenSSL does " -"neither require nor verify certificate revocation lists (CRLs). Available " -"only with openssl version 0.9.8+." +"neither require nor verify certificate revocation lists (CRLs)." msgstr "" -#: library/ssl.rst:2057 +#: library/ssl.rst:2069 msgid ":attr:`SSLContext.verify_flags` returns :class:`VerifyFlags` flags:" msgstr "" -#: library/ssl.rst:2065 +#: library/ssl.rst:2077 msgid "" "Whether to try to verify other peers' certificates and how to behave if " "verification fails. This attribute must be one of :data:`CERT_NONE`, :data:" "`CERT_OPTIONAL` or :data:`CERT_REQUIRED`." msgstr "" -#: library/ssl.rst:2069 +#: library/ssl.rst:2081 msgid ":attr:`SSLContext.verify_mode` returns :class:`VerifyMode` enum:" msgstr "" -#: library/ssl.rst:2082 +#: library/ssl.rst:2094 msgid "Certificates" msgstr "" -#: library/ssl.rst:2084 +#: library/ssl.rst:2096 msgid "" "Certificates in general are part of a public-key / private-key system. In " "this system, each *principal*, (which may be a machine, or a person, or an " @@ -2392,7 +2412,7 @@ msgid "" "other part, and **only** with the other part." msgstr "" -#: library/ssl.rst:2092 +#: library/ssl.rst:2104 msgid "" "A certificate contains information about two principals. It contains the " "name of a *subject*, and the subject's public key. It also contains a " @@ -2406,7 +2426,7 @@ msgid "" "as two fields, called \"notBefore\" and \"notAfter\"." msgstr "" -#: library/ssl.rst:2102 +#: library/ssl.rst:2114 msgid "" "In the Python use of certificates, a client or server can use a certificate " "to prove who they are. The other side of a network connection can also be " @@ -2419,18 +2439,18 @@ msgid "" "take place." msgstr "" -#: library/ssl.rst:2112 +#: library/ssl.rst:2124 msgid "" "Python uses files to contain certificates. They should be formatted as \"PEM" "\" (see :rfc:`1422`), which is a base-64 encoded form wrapped with a header " "line and a footer line::" msgstr "" -#: library/ssl.rst:2121 +#: library/ssl.rst:2133 msgid "Certificate chains" msgstr "" -#: library/ssl.rst:2123 +#: library/ssl.rst:2135 msgid "" "The Python files which contain certificates can contain a sequence of " "certificates, sometimes called a *certificate chain*. This chain should " @@ -2446,11 +2466,11 @@ msgid "" "agency which issued the certification authority's certificate::" msgstr "" -#: library/ssl.rst:2147 +#: library/ssl.rst:2159 msgid "CA certificates" msgstr "" -#: library/ssl.rst:2149 +#: library/ssl.rst:2161 msgid "" "If you are going to require validation of the other side of the connection's " "certificate, you need to provide a \"CA certs\" file, filled with the " @@ -2462,11 +2482,11 @@ msgid "" "create_default_context`." msgstr "" -#: library/ssl.rst:2158 +#: library/ssl.rst:2170 msgid "Combined key and certificate" msgstr "" -#: library/ssl.rst:2160 +#: library/ssl.rst:2172 msgid "" "Often the private key is stored in the same file as the certificate; in this " "case, only the ``certfile`` parameter to :meth:`SSLContext.load_cert_chain` " @@ -2475,11 +2495,11 @@ msgid "" "certificate chain::" msgstr "" -#: library/ssl.rst:2174 +#: library/ssl.rst:2186 msgid "Self-signed certificates" msgstr "" -#: library/ssl.rst:2176 +#: library/ssl.rst:2188 msgid "" "If you are going to create a server that provides SSL-encrypted connection " "services, you will need to acquire a certificate for that service. There " @@ -2489,51 +2509,51 @@ msgid "" "package, using something like the following::" msgstr "" -#: library/ssl.rst:2205 +#: library/ssl.rst:2217 msgid "" "The disadvantage of a self-signed certificate is that it is its own root " "certificate, and no one else will have it in their cache of known (and " "trusted) root certificates." msgstr "" -#: library/ssl.rst:2211 +#: library/ssl.rst:2223 msgid "Examples" msgstr "Exemples" -#: library/ssl.rst:2214 +#: library/ssl.rst:2226 msgid "Testing for SSL support" msgstr "" -#: library/ssl.rst:2216 +#: library/ssl.rst:2228 msgid "" "To test for the presence of SSL support in a Python installation, user code " "should use the following idiom::" msgstr "" -#: library/ssl.rst:2227 +#: library/ssl.rst:2239 msgid "Client-side operation" msgstr "" -#: library/ssl.rst:2229 +#: library/ssl.rst:2241 msgid "" "This example creates a SSL context with the recommended security settings " "for client sockets, including automatic certificate verification::" msgstr "" -#: library/ssl.rst:2234 +#: library/ssl.rst:2246 msgid "" "If you prefer to tune security settings yourself, you might create a context " "from scratch (but beware that you might not get the settings right)::" msgstr "" -#: library/ssl.rst:2241 +#: library/ssl.rst:2253 msgid "" "(this snippet assumes your operating system places a bundle of all CA " "certificates in ``/etc/ssl/certs/ca-bundle.crt``; if not, you'll get an " "error and have to adjust the location)" msgstr "" -#: library/ssl.rst:2245 +#: library/ssl.rst:2257 msgid "" "The :data:`PROTOCOL_TLS_CLIENT` protocol configures the context for cert " "validation and hostname verification. :attr:`~SSLContext.verify_mode` is set " @@ -2541,7 +2561,7 @@ msgid "" "``True``. All other protocols create SSL contexts with insecure defaults." msgstr "" -#: library/ssl.rst:2250 +#: library/ssl.rst:2262 msgid "" "When you use the context to connect to a server, :const:`CERT_REQUIRED` and :" "attr:`~SSLContext.check_hostname` validate the server certificate: it " @@ -2550,27 +2570,27 @@ msgid "" "properties like validity and identity of the hostname::" msgstr "" -#: library/ssl.rst:2260 +#: library/ssl.rst:2272 msgid "You may then fetch the certificate::" msgstr "" -#: library/ssl.rst:2264 +#: library/ssl.rst:2276 msgid "" "Visual inspection shows that the certificate does identify the desired " "service (that is, the HTTPS host ``www.python.org``)::" msgstr "" -#: library/ssl.rst:2307 +#: library/ssl.rst:2319 msgid "" "Now the SSL channel is established and the certificate verified, you can " "proceed to talk with the server::" msgstr "" -#: library/ssl.rst:2334 +#: library/ssl.rst:2346 msgid "Server-side operation" msgstr "" -#: library/ssl.rst:2336 +#: library/ssl.rst:2348 msgid "" "For server operation, typically you'll need to have a server certificate, " "and private key, each in a file. You'll first create a context holding the " @@ -2579,20 +2599,20 @@ msgid "" "start waiting for clients to connect::" msgstr "" -#: library/ssl.rst:2351 +#: library/ssl.rst:2363 msgid "" "When a client connects, you'll call :meth:`accept` on the socket to get the " "new socket from the other end, and use the context's :meth:`SSLContext." "wrap_socket` method to create a server-side SSL socket for the connection::" msgstr "" -#: library/ssl.rst:2364 +#: library/ssl.rst:2376 msgid "" "Then you'll read data from the ``connstream`` and do something with it till " "you are finished with the client (or the client is finished with you)::" msgstr "" -#: library/ssl.rst:2378 +#: library/ssl.rst:2390 msgid "" "And go back to listening for new client connections (of course, a real " "server would probably handle each client connection in a separate thread, or " @@ -2600,18 +2620,18 @@ msgid "" "event loop)." msgstr "" -#: library/ssl.rst:2386 +#: library/ssl.rst:2398 msgid "Notes on non-blocking sockets" msgstr "" -#: library/ssl.rst:2388 +#: library/ssl.rst:2400 msgid "" "SSL sockets behave slightly different than regular sockets in non-blocking " "mode. When working with non-blocking sockets, there are thus several things " "you need to be aware of:" msgstr "" -#: library/ssl.rst:2392 +#: library/ssl.rst:2404 msgid "" "Most :class:`SSLSocket` methods will raise either :exc:`SSLWantWriteError` " "or :exc:`SSLWantReadError` instead of :exc:`BlockingIOError` if an I/O " @@ -2623,13 +2643,13 @@ msgid "" "require a prior *write* to the underlying socket." msgstr "" -#: library/ssl.rst:2404 +#: library/ssl.rst:2416 msgid "" "In earlier Python versions, the :meth:`!SSLSocket.send` method returned zero " "instead of raising :exc:`SSLWantWriteError` or :exc:`SSLWantReadError`." msgstr "" -#: library/ssl.rst:2408 +#: library/ssl.rst:2420 msgid "" "Calling :func:`~select.select` tells you that the OS-level socket can be " "read from (or written to), but it does not imply that there is sufficient " @@ -2639,7 +2659,7 @@ msgid "" "`~select.select`." msgstr "" -#: library/ssl.rst:2415 +#: library/ssl.rst:2427 msgid "" "Conversely, since the SSL layer has its own framing, a SSL socket may still " "have data available for reading without :func:`~select.select` being aware " @@ -2648,13 +2668,13 @@ msgid "" "call if still necessary." msgstr "" -#: library/ssl.rst:2421 +#: library/ssl.rst:2433 msgid "" "(of course, similar provisions apply when using other primitives such as :" "func:`~select.poll`, or those in the :mod:`selectors` module)" msgstr "" -#: library/ssl.rst:2424 +#: library/ssl.rst:2436 msgid "" "The SSL handshake itself will be non-blocking: the :meth:`SSLSocket." "do_handshake` method has to be retried until it returns successfully. Here " @@ -2662,7 +2682,7 @@ msgid "" "readiness::" msgstr "" -#: library/ssl.rst:2440 +#: library/ssl.rst:2452 msgid "" "The :mod:`asyncio` module supports :ref:`non-blocking SSL sockets ` and provides a higher level API. It polls for events using " @@ -2671,26 +2691,26 @@ msgid "" "handshake asynchronously as well." msgstr "" -#: library/ssl.rst:2449 +#: library/ssl.rst:2461 msgid "Memory BIO Support" msgstr "" -#: library/ssl.rst:2453 +#: library/ssl.rst:2465 msgid "" "Ever since the SSL module was introduced in Python 2.6, the :class:" "`SSLSocket` class has provided two related but distinct areas of " "functionality:" msgstr "" -#: library/ssl.rst:2456 +#: library/ssl.rst:2468 msgid "SSL protocol handling" msgstr "" -#: library/ssl.rst:2457 +#: library/ssl.rst:2469 msgid "Network IO" msgstr "" -#: library/ssl.rst:2459 +#: library/ssl.rst:2471 msgid "" "The network IO API is identical to that provided by :class:`socket.socket`, " "from which :class:`SSLSocket` also inherits. This allows an SSL socket to be " @@ -2698,7 +2718,7 @@ msgid "" "add SSL support to an existing application." msgstr "" -#: library/ssl.rst:2464 +#: library/ssl.rst:2476 msgid "" "Combining SSL protocol handling and network IO usually works well, but there " "are some cases where it doesn't. An example is async IO frameworks that want " @@ -2710,7 +2730,7 @@ msgid "" "`SSLObject` is provided." msgstr "" -#: library/ssl.rst:2475 +#: library/ssl.rst:2487 msgid "" "A reduced-scope variant of :class:`SSLSocket` representing an SSL protocol " "instance that does not contain any network IO methods. This class is " @@ -2718,7 +2738,7 @@ msgid "" "for SSL through memory buffers." msgstr "" -#: library/ssl.rst:2480 +#: library/ssl.rst:2492 msgid "" "This class implements an interface on top of a low-level SSL object as " "implemented by OpenSSL. This object captures the state of an SSL connection " @@ -2726,7 +2746,7 @@ msgid "" "separate \"BIO\" objects which are OpenSSL's IO abstraction layer." msgstr "" -#: library/ssl.rst:2485 +#: library/ssl.rst:2497 msgid "" "This class has no public constructor. An :class:`SSLObject` instance must " "be created using the :meth:`~SSLContext.wrap_bio` method. This method will " @@ -2735,215 +2755,215 @@ msgid "" "instance, while the *outgoing* BIO is used to pass data the other way around." msgstr "" -#: library/ssl.rst:2492 +#: library/ssl.rst:2504 msgid "The following methods are available:" msgstr "" -#: library/ssl.rst:2494 +#: library/ssl.rst:2506 msgid ":attr:`~SSLSocket.context`" msgstr "" -#: library/ssl.rst:2495 +#: library/ssl.rst:2507 msgid ":attr:`~SSLSocket.server_side`" msgstr "" -#: library/ssl.rst:2496 +#: library/ssl.rst:2508 msgid ":attr:`~SSLSocket.server_hostname`" msgstr "" -#: library/ssl.rst:2497 +#: library/ssl.rst:2509 msgid ":attr:`~SSLSocket.session`" msgstr "" -#: library/ssl.rst:2498 +#: library/ssl.rst:2510 msgid ":attr:`~SSLSocket.session_reused`" msgstr "" -#: library/ssl.rst:2499 +#: library/ssl.rst:2511 msgid ":meth:`~SSLSocket.read`" msgstr "" -#: library/ssl.rst:2500 +#: library/ssl.rst:2512 msgid ":meth:`~SSLSocket.write`" msgstr "" -#: library/ssl.rst:2501 +#: library/ssl.rst:2513 msgid ":meth:`~SSLSocket.getpeercert`" msgstr "" -#: library/ssl.rst:2502 +#: library/ssl.rst:2514 msgid ":meth:`~SSLSocket.selected_alpn_protocol`" msgstr "" -#: library/ssl.rst:2503 +#: library/ssl.rst:2515 msgid ":meth:`~SSLSocket.selected_npn_protocol`" msgstr "" -#: library/ssl.rst:2504 +#: library/ssl.rst:2516 msgid ":meth:`~SSLSocket.cipher`" msgstr "" -#: library/ssl.rst:2505 +#: library/ssl.rst:2517 msgid ":meth:`~SSLSocket.shared_ciphers`" msgstr "" -#: library/ssl.rst:2506 +#: library/ssl.rst:2518 msgid ":meth:`~SSLSocket.compression`" msgstr "" -#: library/ssl.rst:2507 +#: library/ssl.rst:2519 msgid ":meth:`~SSLSocket.pending`" msgstr "" -#: library/ssl.rst:2508 +#: library/ssl.rst:2520 msgid ":meth:`~SSLSocket.do_handshake`" msgstr "" -#: library/ssl.rst:2509 +#: library/ssl.rst:2521 msgid ":meth:`~SSLSocket.verify_client_post_handshake`" msgstr "" -#: library/ssl.rst:2510 +#: library/ssl.rst:2522 msgid ":meth:`~SSLSocket.unwrap`" msgstr "" -#: library/ssl.rst:2511 +#: library/ssl.rst:2523 msgid ":meth:`~SSLSocket.get_channel_binding`" msgstr "" -#: library/ssl.rst:2512 +#: library/ssl.rst:2524 msgid ":meth:`~SSLSocket.version`" msgstr "" -#: library/ssl.rst:2514 +#: library/ssl.rst:2526 msgid "" "When compared to :class:`SSLSocket`, this object lacks the following " "features:" msgstr "" -#: library/ssl.rst:2517 +#: library/ssl.rst:2529 msgid "" "Any form of network IO; ``recv()`` and ``send()`` read and write only to the " "underlying :class:`MemoryBIO` buffers." msgstr "" -#: library/ssl.rst:2520 +#: library/ssl.rst:2532 msgid "" "There is no *do_handshake_on_connect* machinery. You must always manually " "call :meth:`~SSLSocket.do_handshake` to start the handshake." msgstr "" -#: library/ssl.rst:2523 +#: library/ssl.rst:2535 msgid "" "There is no handling of *suppress_ragged_eofs*. All end-of-file conditions " "that are in violation of the protocol are reported via the :exc:" "`SSLEOFError` exception." msgstr "" -#: library/ssl.rst:2527 +#: library/ssl.rst:2539 msgid "" "The method :meth:`~SSLSocket.unwrap` call does not return anything, unlike " "for an SSL socket where it returns the underlying socket." msgstr "" -#: library/ssl.rst:2530 +#: library/ssl.rst:2542 msgid "" "The *server_name_callback* callback passed to :meth:`SSLContext." "set_servername_callback` will get an :class:`SSLObject` instance instead of " "a :class:`SSLSocket` instance as its first parameter." msgstr "" -#: library/ssl.rst:2534 +#: library/ssl.rst:2546 msgid "Some notes related to the use of :class:`SSLObject`:" msgstr "" -#: library/ssl.rst:2536 +#: library/ssl.rst:2548 msgid "" "All IO on an :class:`SSLObject` is :ref:`non-blocking `. " "This means that for example :meth:`~SSLSocket.read` will raise an :exc:" "`SSLWantReadError` if it needs more data than the incoming BIO has available." msgstr "" -#: library/ssl.rst:2541 +#: library/ssl.rst:2553 msgid "" "There is no module-level ``wrap_bio()`` call like there is for :meth:" "`~SSLContext.wrap_socket`. An :class:`SSLObject` is always created via an :" "class:`SSLContext`." msgstr "" -#: library/ssl.rst:2545 +#: library/ssl.rst:2557 msgid "" ":class:`SSLObject` instances must to created with :meth:`~SSLContext." "wrap_bio`. In earlier versions, it was possible to create instances " "directly. This was never documented or officially supported." msgstr "" -#: library/ssl.rst:2551 +#: library/ssl.rst:2563 msgid "" "An SSLObject communicates with the outside world using memory buffers. The " "class :class:`MemoryBIO` provides a memory buffer that can be used for this " "purpose. It wraps an OpenSSL memory BIO (Basic IO) object:" msgstr "" -#: library/ssl.rst:2557 +#: library/ssl.rst:2569 msgid "" "A memory buffer that can be used to pass data between Python and an SSL " "protocol instance." msgstr "" -#: library/ssl.rst:2562 +#: library/ssl.rst:2574 msgid "Return the number of bytes currently in the memory buffer." msgstr "" -#: library/ssl.rst:2566 +#: library/ssl.rst:2578 msgid "" "A boolean indicating whether the memory BIO is current at the end-of-file " "position." msgstr "" -#: library/ssl.rst:2571 +#: library/ssl.rst:2583 msgid "" "Read up to *n* bytes from the memory buffer. If *n* is not specified or " "negative, all bytes are returned." msgstr "" -#: library/ssl.rst:2576 +#: library/ssl.rst:2588 msgid "" "Write the bytes from *buf* to the memory BIO. The *buf* argument must be an " "object supporting the buffer protocol." msgstr "" -#: library/ssl.rst:2579 +#: library/ssl.rst:2591 msgid "" "The return value is the number of bytes written, which is always equal to " "the length of *buf*." msgstr "" -#: library/ssl.rst:2584 +#: library/ssl.rst:2596 msgid "" "Write an EOF marker to the memory BIO. After this method has been called, it " "is illegal to call :meth:`~MemoryBIO.write`. The attribute :attr:`eof` will " "become true after all data currently in the buffer has been read." msgstr "" -#: library/ssl.rst:2590 +#: library/ssl.rst:2602 msgid "SSL session" msgstr "" -#: library/ssl.rst:2596 +#: library/ssl.rst:2608 msgid "Session object used by :attr:`~SSLSocket.session`." msgstr "" -#: library/ssl.rst:2608 +#: library/ssl.rst:2620 #, fuzzy msgid "Security considerations" msgstr "Considérations de sécurité" -#: library/ssl.rst:2611 +#: library/ssl.rst:2623 msgid "Best defaults" msgstr "" -#: library/ssl.rst:2613 +#: library/ssl.rst:2625 msgid "" "For **client use**, if you don't have any special requirements for your " "security policy, it is highly recommended that you use the :func:" @@ -2953,19 +2973,19 @@ msgid "" "settings." msgstr "" -#: library/ssl.rst:2620 +#: library/ssl.rst:2632 msgid "" "For example, here is how you would use the :class:`smtplib.SMTP` class to " "create a trusted, secure connection to a SMTP server::" msgstr "" -#: library/ssl.rst:2629 +#: library/ssl.rst:2641 msgid "" "If a client certificate is needed for the connection, it can be added with :" "meth:`SSLContext.load_cert_chain`." msgstr "" -#: library/ssl.rst:2632 +#: library/ssl.rst:2644 msgid "" "By contrast, if you create the SSL context by calling the :class:" "`SSLContext` constructor yourself, it will not have certificate validation " @@ -2973,15 +2993,15 @@ msgid "" "paragraphs below to achieve a good security level." msgstr "" -#: library/ssl.rst:2638 +#: library/ssl.rst:2650 msgid "Manual settings" msgstr "" -#: library/ssl.rst:2641 +#: library/ssl.rst:2653 msgid "Verifying certificates" msgstr "" -#: library/ssl.rst:2643 +#: library/ssl.rst:2655 msgid "" "When calling the :class:`SSLContext` constructor directly, :const:" "`CERT_NONE` is the default. Since it does not authenticate the other peer, " @@ -2996,13 +3016,13 @@ msgid "" "automatically performed when :attr:`SSLContext.check_hostname` is enabled." msgstr "" -#: library/ssl.rst:2656 +#: library/ssl.rst:2668 msgid "" "Hostname matchings is now performed by OpenSSL. Python no longer uses :func:" "`match_hostname`." msgstr "" -#: library/ssl.rst:2660 +#: library/ssl.rst:2672 msgid "" "In server mode, if you want to authenticate your clients using the SSL layer " "(rather than using a higher-level authentication mechanism), you'll also " @@ -3010,11 +3030,11 @@ msgid "" "certificate." msgstr "" -#: library/ssl.rst:2666 +#: library/ssl.rst:2678 msgid "Protocol versions" msgstr "" -#: library/ssl.rst:2668 +#: library/ssl.rst:2680 msgid "" "SSL versions 2 and 3 are considered insecure and are therefore dangerous to " "use. If you want maximum compatibility between clients and servers, it is " @@ -3023,7 +3043,7 @@ msgid "" "by default." msgstr "" -#: library/ssl.rst:2681 +#: library/ssl.rst:2693 msgid "" "The SSL context created above will only allow TLSv1.2 and later (if " "supported by your system) connections to a server. :const:" @@ -3031,11 +3051,11 @@ msgid "" "default. You have to load certificates into the context." msgstr "" -#: library/ssl.rst:2688 +#: library/ssl.rst:2700 msgid "Cipher selection" msgstr "" -#: library/ssl.rst:2690 +#: library/ssl.rst:2702 msgid "" "If you have advanced security requirements, fine-tuning of the ciphers " "enabled when negotiating a SSL session is possible through the :meth:" @@ -3048,11 +3068,11 @@ msgid "" "ciphers`` command on your system." msgstr "" -#: library/ssl.rst:2701 +#: library/ssl.rst:2713 msgid "Multi-processing" msgstr "" -#: library/ssl.rst:2703 +#: library/ssl.rst:2715 msgid "" "If using this module as part of a multi-processed application (using, for " "example the :mod:`multiprocessing` or :mod:`concurrent.futures` modules), be " @@ -3063,18 +3083,17 @@ msgid "" "`~ssl.RAND_pseudo_bytes` is sufficient." msgstr "" -#: library/ssl.rst:2715 +#: library/ssl.rst:2727 msgid "TLS 1.3" msgstr "" -#: library/ssl.rst:2719 +#: library/ssl.rst:2731 msgid "" -"Python has provisional and experimental support for TLS 1.3 with OpenSSL " -"1.1.1. The new protocol behaves slightly differently than previous version " -"of TLS/SSL. Some new TLS 1.3 features are not yet available." +"The TLS 1.3 protocol behaves slightly differently than previous version of " +"TLS/SSL. Some new TLS 1.3 features are not yet available." msgstr "" -#: library/ssl.rst:2723 +#: library/ssl.rst:2734 msgid "" "TLS 1.3 uses a disjunct set of cipher suites. All AES-GCM and ChaCha20 " "cipher suites are enabled by default. The method :meth:`SSLContext." @@ -3082,14 +3101,14 @@ msgid "" "`SSLContext.get_ciphers` returns them." msgstr "" -#: library/ssl.rst:2727 +#: library/ssl.rst:2738 msgid "" "Session tickets are no longer sent as part of the initial handshake and are " "handled differently. :attr:`SSLSocket.session` and :class:`SSLSession` are " "not compatible with TLS 1.3." msgstr "" -#: library/ssl.rst:2730 +#: library/ssl.rst:2741 msgid "" "Client-side certificates are also no longer verified during the initial " "handshake. A server can request a certificate at any time. Clients process " @@ -3097,127 +3116,106 @@ msgid "" "server." msgstr "" -#: library/ssl.rst:2734 +#: library/ssl.rst:2745 msgid "" "TLS 1.3 features like early data, deferred TLS client cert request, " "signature algorithm configuration, and rekeying are not supported yet." msgstr "" -#: library/ssl.rst:2741 -msgid "LibreSSL support" -msgstr "" - -#: library/ssl.rst:2743 -msgid "" -"LibreSSL is a fork of OpenSSL 1.0.1. The ssl module has limited support for " -"LibreSSL. Some features are not available when the ssl module is compiled " -"with LibreSSL." -msgstr "" - -#: library/ssl.rst:2747 -msgid "" -"LibreSSL >= 2.6.1 no longer supports NPN. The methods :meth:`SSLContext." -"set_npn_protocols` and :meth:`SSLSocket.selected_npn_protocol` are not " -"available." -msgstr "" - -#: library/ssl.rst:2750 -msgid "" -":meth:`SSLContext.set_default_verify_paths` ignores the env vars :envvar:" -"`SSL_CERT_FILE` and :envvar:`SSL_CERT_PATH` although :func:" -"`get_default_verify_paths` still reports them." -msgstr "" - -#: library/ssl.rst:2758 +#: library/ssl.rst:2752 msgid "Class :class:`socket.socket`" msgstr "" -#: library/ssl.rst:2758 +#: library/ssl.rst:2752 msgid "Documentation of underlying :mod:`socket` class" msgstr "" -#: library/ssl.rst:2761 +#: library/ssl.rst:2755 msgid "" "`SSL/TLS Strong Encryption: An Introduction `_" msgstr "" -#: library/ssl.rst:2761 +#: library/ssl.rst:2755 msgid "Intro from the Apache HTTP Server documentation" msgstr "" -#: library/ssl.rst:2764 +#: library/ssl.rst:2758 msgid "" ":rfc:`RFC 1422: Privacy Enhancement for Internet Electronic Mail: Part II: " "Certificate-Based Key Management <1422>`" msgstr "" -#: library/ssl.rst:2764 +#: library/ssl.rst:2758 msgid "Steve Kent" msgstr "" -#: library/ssl.rst:2767 +#: library/ssl.rst:2761 msgid ":rfc:`RFC 4086: Randomness Requirements for Security <4086>`" msgstr "" -#: library/ssl.rst:2767 +#: library/ssl.rst:2761 msgid "Donald E., Jeffrey I. Schiller" msgstr "" -#: library/ssl.rst:2770 +#: library/ssl.rst:2764 msgid "" ":rfc:`RFC 5280: Internet X.509 Public Key Infrastructure Certificate and " "Certificate Revocation List (CRL) Profile <5280>`" msgstr "" -#: library/ssl.rst:2770 +#: library/ssl.rst:2764 msgid "D. Cooper" msgstr "" -#: library/ssl.rst:2773 +#: library/ssl.rst:2767 msgid "" ":rfc:`RFC 5246: The Transport Layer Security (TLS) Protocol Version 1.2 " "<5246>`" msgstr "" -#: library/ssl.rst:2773 +#: library/ssl.rst:2767 msgid "T. Dierks et. al." msgstr "" -#: library/ssl.rst:2776 +#: library/ssl.rst:2770 msgid ":rfc:`RFC 6066: Transport Layer Security (TLS) Extensions <6066>`" msgstr "" -#: library/ssl.rst:2776 +#: library/ssl.rst:2770 msgid "D. Eastlake" msgstr "" -#: library/ssl.rst:2779 +#: library/ssl.rst:2773 msgid "" "`IANA TLS: Transport Layer Security (TLS) Parameters `_" msgstr "" -#: library/ssl.rst:2779 +#: library/ssl.rst:2773 msgid "IANA" msgstr "" -#: library/ssl.rst:2782 +#: library/ssl.rst:2776 msgid "" ":rfc:`RFC 7525: Recommendations for Secure Use of Transport Layer Security " "(TLS) and Datagram Transport Layer Security (DTLS) <7525>`" msgstr "" -#: library/ssl.rst:2782 +#: library/ssl.rst:2776 msgid "IETF" msgstr "" -#: library/ssl.rst:2784 +#: library/ssl.rst:2778 msgid "" "`Mozilla's Server Side TLS recommendations `_" msgstr "" -#: library/ssl.rst:2785 +#: library/ssl.rst:2779 msgid "Mozilla" msgstr "" + +#, fuzzy +#~ msgid ":ref:`Availability `: OpenSSL 1.0.2+." +#~ msgstr ":ref:`Disponibilité ` : OpenSSL 1.1+." diff --git a/library/stat.po b/library/stat.po index b9e3ced89..2a1c6266f 100644 --- a/library/stat.po +++ b/library/stat.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -369,11 +369,11 @@ msgid "The file may not be renamed or deleted." msgstr "" #: library/stat.rst:375 -msgid "The file is stored compressed (Mac OS X 10.6+)." +msgid "The file is stored compressed (macOS 10.6+)." msgstr "" #: library/stat.rst:379 -msgid "The file should not be displayed in a GUI (Mac OS X 10.5+)." +msgid "The file should not be displayed in a GUI (macOS 10.5+)." msgstr "" #: library/stat.rst:383 @@ -386,7 +386,7 @@ msgstr "" #: library/stat.rst:401 msgid "" -"See the \\*BSD or Mac OS systems man page :manpage:`chflags(2)` for more " +"See the \\*BSD or macOS systems man page :manpage:`chflags(2)` for more " "information." msgstr "" diff --git a/library/statistics.po b/library/statistics.po index f0d9891b6..bd0aa00e4 100644 --- a/library/statistics.po +++ b/library/statistics.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-05-14 16:36+0200\n" "Last-Translator: Nicolas Audebert \n" "Language-Team: FRENCH \n" @@ -156,7 +156,8 @@ msgid ":func:`multimode`" msgstr ":func:`multimode`" #: library/statistics.rst:54 -msgid "List of modes (most common values) of discrete or nomimal data." +#, fuzzy +msgid "List of modes (most common values) of discrete or nominal data." msgstr "" "Liste des modes (les valeurs les plus représentées) de données discrètes ou " "nominales." @@ -213,11 +214,47 @@ msgstr ":func:`variance`" msgid "Sample variance of data." msgstr "Variance d'un échantillon." -#: library/statistics.rst:73 +#: library/statistics.rst:72 +msgid "Statistics for relations between two inputs" +msgstr "" + +#: library/statistics.rst:74 +msgid "" +"These functions calculate statistics regarding relations between two inputs." +msgstr "" + +#: library/statistics.rst:77 +#, fuzzy +msgid ":func:`covariance`" +msgstr ":func:`variance`" + +#: library/statistics.rst:77 +#, fuzzy +msgid "Sample covariance for two variables." +msgstr "Variance d'un échantillon." + +#: library/statistics.rst:78 +#, fuzzy +msgid ":func:`correlation`" +msgstr ":func:`mean`" + +#: library/statistics.rst:78 +msgid "Pearson's correlation coefficient for two variables." +msgstr "" + +#: library/statistics.rst:79 +msgid ":func:`linear_regression`" +msgstr "" + +#: library/statistics.rst:79 +msgid "Slope and intercept for simple linear regression." +msgstr "" + +#: library/statistics.rst:84 msgid "Function details" msgstr "Détails des fonctions" -#: library/statistics.rst:75 +#: library/statistics.rst:86 msgid "" "Note: The functions do not require the data given to them to be sorted. " "However, for reading convenience, most of the examples show sorted sequences." @@ -226,7 +263,7 @@ msgstr "" "Toutefois, pour en faciliter la lecture, les exemples utiliseront des " "séquences croissantes." -#: library/statistics.rst:80 +#: library/statistics.rst:91 msgid "" "Return the sample arithmetic mean of *data* which can be a sequence or " "iterable." @@ -234,7 +271,7 @@ msgstr "" "Renvoie la moyenne arithmétique de l'échantillon *data* qui peut être une " "séquence ou un itérable." -#: library/statistics.rst:82 +#: library/statistics.rst:93 msgid "" "The arithmetic mean is the sum of the data divided by the number of data " "points. It is commonly called \"the average\", although it is only one of " @@ -247,15 +284,15 @@ msgstr "" "mathématiquement la moyenne. C'est une mesure de la tendance centrale des " "données." -#: library/statistics.rst:87 +#: library/statistics.rst:98 msgid "If *data* is empty, :exc:`StatisticsError` will be raised." msgstr "Une erreur :exc:`StatisticsError` est levée si *data* est vide." -#: library/statistics.rst:89 +#: library/statistics.rst:100 msgid "Some examples of use:" msgstr "Exemples d'utilisation :" -#: library/statistics.rst:108 +#: library/statistics.rst:119 msgid "" "The mean is strongly affected by outliers and is not a robust estimator for " "central location: the mean is not necessarily a typical example of the data " @@ -268,7 +305,7 @@ msgstr "" "Voir :func:`median` et :func:`mode` pour des mesures plus robustes de la " "tendance centrale." -#: library/statistics.rst:113 +#: library/statistics.rst:124 msgid "" "The sample mean gives an unbiased estimate of the true population mean, so " "that when taken on average over all the possible samples, ``mean(sample)`` " @@ -282,13 +319,13 @@ msgstr "" "la population entière. Si *data* est une population entière plutôt qu'un " "échantillon, alors ``mean(data)`` équivaut à calculer la véritable moyenne μ." -#: library/statistics.rst:122 +#: library/statistics.rst:133 msgid "Convert *data* to floats and compute the arithmetic mean." msgstr "" "Convertit *data* en nombres à virgule flottante et calcule la moyenne " "arithmétique." -#: library/statistics.rst:124 +#: library/statistics.rst:135 msgid "" "This runs faster than the :func:`mean` function and it always returns a :" "class:`float`. The *data* may be a sequence or iterable. If the input " @@ -298,13 +335,13 @@ msgstr "" "class:`float`. *data* peut être une séquence ou un itérable. Si les données " "d'entrée sont vides, la fonction lève une erreur :exc:`StatisticsError`." -#: library/statistics.rst:138 +#: library/statistics.rst:149 msgid "Convert *data* to floats and compute the geometric mean." msgstr "" "Convertit *data* en nombres à virgule flottante et calcule la moyenne " "géométrique." -#: library/statistics.rst:140 +#: library/statistics.rst:151 msgid "" "The geometric mean indicates the central tendency or typical value of the " "*data* using the product of the values (as opposed to the arithmetic mean " @@ -314,7 +351,7 @@ msgstr "" "*data* en utilisant le produit des valeurs (par opposition à la moyenne " "arithmétique qui utilise la somme)." -#: library/statistics.rst:144 +#: library/statistics.rst:155 msgid "" "Raises a :exc:`StatisticsError` if the input dataset is empty, if it " "contains a zero, or if it contains a negative value. The *data* may be a " @@ -324,7 +361,7 @@ msgstr "" "contiennent un zéro ou une valeur négative. *data* peut être une séquence ou " "un itérable." -#: library/statistics.rst:148 +#: library/statistics.rst:159 msgid "" "No special efforts are made to achieve exact results. (However, this may " "change in the future.)" @@ -332,37 +369,40 @@ msgstr "" "Aucune mesure particulière n'est prise pour garantir que le résultat est " "parfaitement exact (cela peut toutefois changer dans une version future)." -#: library/statistics.rst:161 +#: library/statistics.rst:172 +#, fuzzy msgid "" "Return the harmonic mean of *data*, a sequence or iterable of real-valued " -"numbers." +"numbers. If *weights* is omitted or *None*, then equal weighting is assumed." msgstr "" "Renvoie la moyenne harmonique de *data*, une séquence ou un itérable de " "nombres réels." -#: library/statistics.rst:164 +#: library/statistics.rst:176 +#, fuzzy msgid "" -"The harmonic mean, sometimes called the subcontrary mean, is the reciprocal " -"of the arithmetic :func:`mean` of the reciprocals of the data. For example, " -"the harmonic mean of three values *a*, *b* and *c* will be equivalent to ``3/" -"(1/a + 1/b + 1/c)``. If one of the values is zero, the result will be zero." +"The harmonic mean is the reciprocal of the arithmetic :func:`mean` of the " +"reciprocals of the data. For example, the harmonic mean of three values *a*, " +"*b* and *c* will be equivalent to ``3/(1/a + 1/b + 1/c)``. If one of the " +"values is zero, the result will be zero." msgstr "" "La moyenne harmonique est l'inverse de la moyenne arithmétique :func:`mean` " "des inverses. Par exemple, la moyenne harmonique de trois valeurs *a*, *b* " "et *c* vaut ``3/(1/a + 1/b + 1/c)``. Si une des valeurs est nulle, alors le " "résultat est zéro." -#: library/statistics.rst:170 +#: library/statistics.rst:181 +#, fuzzy msgid "" "The harmonic mean is a type of average, a measure of the central location of " -"the data. It is often appropriate when averaging rates or ratios, for " +"the data. It is often appropriate when averaging ratios or rates, for " "example speeds." msgstr "" "La moyenne harmonique est un type de moyenne, une mesure de la tendance " "centrale des données. Elle est généralement appropriée pour calculer des " "moyennes de taux ou de proportions, par exemple des vitesses." -#: library/statistics.rst:174 +#: library/statistics.rst:185 msgid "" "Suppose a car travels 10 km at 40 km/hr, then another 10 km at 60 km/hr. " "What is the average speed?" @@ -370,25 +410,26 @@ msgstr "" "Supposons qu'une voiture parcoure 10 km à 40 km/h puis 10 km à 60 km/h. " "Quelle a été sa vitesse moyenne ?" -#: library/statistics.rst:182 +#: library/statistics.rst:193 +#, fuzzy msgid "" -"Suppose an investor purchases an equal value of shares in each of three " -"companies, with P/E (price/earning) ratios of 2.5, 3 and 10. What is the " -"average P/E ratio for the investor's portfolio?" +"Suppose a car travels 40 km/hr for 5 km, and when traffic clears, speeds-up " +"to 60 km/hr for the remaining 30 km of the journey. What is the average " +"speed?" msgstr "" -"Supposons qu'un investisseur achète autant de parts dans trois compagnies " -"chacune de ratio cours sur bénéfices (*P/E*) 2,5, 3 et 10. Quel est le ratio " -"cours sur bénéfices moyen du portefeuille de l'investisseur ?" +"Supposons qu'une voiture parcoure 10 km à 40 km/h puis 10 km à 60 km/h. " +"Quelle a été sa vitesse moyenne ?" -#: library/statistics.rst:191 +#: library/statistics.rst:202 +#, fuzzy msgid "" -":exc:`StatisticsError` is raised if *data* is empty, or any element is less " -"than zero." +":exc:`StatisticsError` is raised if *data* is empty, any element is less " +"than zero, or if the weighted sum isn't positive." msgstr "" "Une erreur :exc:`StatisticsError` est levée si *data* est vide ou si l'un de " "ses éléments est inférieur à zéro." -#: library/statistics.rst:194 +#: library/statistics.rst:205 msgid "" "The current algorithm has an early-out when it encounters a zero in the " "input. This means that the subsequent inputs are not tested for validity. " @@ -399,7 +440,11 @@ msgstr "" "validité des valeurs suivantes n'est pas testée (ce comportement est " "susceptible de changer dans une version future)." -#: library/statistics.rst:203 +#: library/statistics.rst:211 +msgid "Added support for *weights*." +msgstr "" + +#: library/statistics.rst:216 msgid "" "Return the median (middle value) of numeric data, using the common \"mean of " "middle two\" method. If *data* is empty, :exc:`StatisticsError` is raised. " @@ -410,7 +455,7 @@ msgstr "" "`StatisticsError` si *data* est vide. *data* peut être une séquence ou un " "itérable." -#: library/statistics.rst:207 +#: library/statistics.rst:220 msgid "" "The median is a robust measure of central location and is less affected by " "the presence of outliers. When the number of data points is odd, the middle " @@ -420,7 +465,7 @@ msgstr "" "sensible à la présence de valeurs aberrantes que la moyenne. Lorsque le " "nombre d'observations est impair, la valeur du milieu est renvoyée :" -#: library/statistics.rst:216 +#: library/statistics.rst:229 msgid "" "When the number of data points is even, the median is interpolated by taking " "the average of the two middle values:" @@ -428,7 +473,7 @@ msgstr "" "Lorsque le nombre d'observations est pair, la médiane est interpolée en " "calculant la moyenne des deux valeurs du milieu :" -#: library/statistics.rst:224 +#: library/statistics.rst:237 msgid "" "This is suited for when your data is discrete, and you don't mind that the " "median may not be an actual data point." @@ -436,7 +481,7 @@ msgstr "" "Cette approche est adaptée à des données discrètes à condition que vous " "acceptiez que la médiane ne fasse pas nécessairement partie des observations." -#: library/statistics.rst:227 +#: library/statistics.rst:240 msgid "" "If the data is ordinal (supports order operations) but not numeric (doesn't " "support addition), consider using :func:`median_low` or :func:`median_high` " @@ -446,7 +491,7 @@ msgstr "" "numériques (elles ne peuvent être additionnées), utilisez :func:`median_low` " "ou :func:`median_high` à la place." -#: library/statistics.rst:233 +#: library/statistics.rst:246 msgid "" "Return the low median of numeric data. If *data* is empty, :exc:" "`StatisticsError` is raised. *data* can be a sequence or iterable." @@ -455,7 +500,7 @@ msgstr "" "`StatisticsError` si *data* est vide. *data* peut être une séquence ou un " "itérable." -#: library/statistics.rst:236 +#: library/statistics.rst:249 msgid "" "The low median is always a member of the data set. When the number of data " "points is odd, the middle value is returned. When it is even, the smaller " @@ -465,7 +510,7 @@ msgstr "" "Lorsque le nombre d'observations est impair, la valeur du milieu est " "renvoyée. Sinon, la plus petite des deux valeurs du milieu est renvoyée." -#: library/statistics.rst:247 +#: library/statistics.rst:260 msgid "" "Use the low median when your data are discrete and you prefer the median to " "be an actual data point rather than interpolated." @@ -474,7 +519,7 @@ msgstr "" "préférez que la médiane soit une valeur représentée dans vos observations " "plutôt que le résultat d'une interpolation." -#: library/statistics.rst:253 +#: library/statistics.rst:266 msgid "" "Return the high median of data. If *data* is empty, :exc:`StatisticsError` " "is raised. *data* can be a sequence or iterable." @@ -482,7 +527,7 @@ msgstr "" "Renvoie la médiane haute des données. Lève une erreur :exc:`StatisticsError` " "si *data* est vide. *data* peut être une séquence ou un itérable." -#: library/statistics.rst:256 +#: library/statistics.rst:269 msgid "" "The high median is always a member of the data set. When the number of data " "points is odd, the middle value is returned. When it is even, the larger of " @@ -492,7 +537,7 @@ msgstr "" "Lorsque le nombre d'observations est impair, la valeur du milieu est " "renvoyée. Sinon, la plus grande des deux valeurs du milieu est renvoyée." -#: library/statistics.rst:267 +#: library/statistics.rst:280 msgid "" "Use the high median when your data are discrete and you prefer the median to " "be an actual data point rather than interpolated." @@ -501,7 +546,7 @@ msgstr "" "préférez que la médiane soit une valeur représentée dans vos observations " "plutôt que le résultat d'une interpolation." -#: library/statistics.rst:273 +#: library/statistics.rst:286 msgid "" "Return the median of grouped continuous data, calculated as the 50th " "percentile, using interpolation. If *data* is empty, :exc:`StatisticsError` " @@ -511,7 +556,7 @@ msgstr "" "`e` percentile (avec interpolation). Lève une erreur :exc:`StatisticsError` " "si *data* est vide. *data* peut être une séquence ou un itérable." -#: library/statistics.rst:282 +#: library/statistics.rst:295 msgid "" "In the following example, the data are rounded, so that each value " "represents the midpoint of data classes, e.g. 1 is the midpoint of the class " @@ -525,7 +570,7 @@ msgstr "" " 3,5, etc. Compte-tenu des valeurs ci-dessous, la valeur centrale se situe " "quelque part dans le groupe 3,5 - 4,5 et est estimée par interpolation :" -#: library/statistics.rst:293 +#: library/statistics.rst:306 msgid "" "Optional argument *interval* represents the class interval, and defaults to " "1. Changing the class interval naturally will change the interpolation:" @@ -534,7 +579,7 @@ msgstr "" "groupes (par défaut, 1). Changer l'intervalle des groupes change bien sûr " "l'interpolation :" -#: library/statistics.rst:303 +#: library/statistics.rst:316 msgid "" "This function does not check whether the data points are at least *interval* " "apart." @@ -542,7 +587,7 @@ msgstr "" "Cette fonction ne vérifie pas que les valeurs sont bien séparées d'au moins " "une fois *interval*." -#: library/statistics.rst:308 +#: library/statistics.rst:321 msgid "" "Under some circumstances, :func:`median_grouped` may coerce data points to " "floats. This behaviour is likely to change in the future." @@ -551,7 +596,7 @@ msgstr "" "en nombres à virgule flottante. Ce comportement est susceptible de changer " "dans le futur." -#: library/statistics.rst:313 +#: library/statistics.rst:326 msgid "" "\"Statistics for the Behavioral Sciences\", Frederick J Gravetter and Larry " "B Wallnau (8th Edition)." @@ -559,7 +604,7 @@ msgstr "" "*Statistics for the Behavioral Sciences*, Frederick J Gravetter et Larry B " "Wallnau (8\\ :sup:`e` édition, ouvrage en anglais)." -#: library/statistics.rst:316 +#: library/statistics.rst:329 msgid "" "The `SSMEDIAN `_ function in the Gnome Gnumeric " @@ -571,7 +616,7 @@ msgstr "" "`cette discussion `_." -#: library/statistics.rst:324 +#: library/statistics.rst:337 msgid "" "Return the single most common data point from discrete or nominal *data*. " "The mode (when it exists) is the most typical value and serves as a measure " @@ -581,7 +626,7 @@ msgstr "" "nominale). Ce mode, lorsqu'il existe, est la valeur la plus représentative " "des données et est une mesure de la tendance centrale." -#: library/statistics.rst:328 +#: library/statistics.rst:341 msgid "" "If there are multiple modes with the same frequency, returns the first one " "encountered in the *data*. If the smallest or largest of those is desired " @@ -594,7 +639,7 @@ msgstr "" "petit mode ou le plus grand mode. Lève une erreur :exc:`StatisticsError` si " "*data* est vide." -#: library/statistics.rst:333 +#: library/statistics.rst:346 msgid "" "``mode`` assumes discrete data and returns a single value. This is the " "standard treatment of the mode as commonly taught in schools:" @@ -603,7 +648,7 @@ msgstr "" "Il s'agit de la définition usuelle du mode telle qu'enseignée dans à " "l'école :" -#: library/statistics.rst:341 +#: library/statistics.rst:354 msgid "" "The mode is unique in that it is the only statistic in this package that " "also applies to nominal (non-numeric) data:" @@ -611,7 +656,7 @@ msgstr "" "Le mode a la particularité d'être la seule statistique de ce module à " "pouvoir être calculée sur des données nominales (non numériques) :" -#: library/statistics.rst:349 +#: library/statistics.rst:362 msgid "" "Now handles multimodal datasets by returning the first mode encountered. " "Formerly, it raised :exc:`StatisticsError` when more than one mode was found." @@ -620,7 +665,7 @@ msgstr "" "premier mode rencontré. Précédemment, une erreur :exc:`StatisticsError` " "était levée si plusieurs modes étaient trouvés." -#: library/statistics.rst:357 +#: library/statistics.rst:370 msgid "" "Return a list of the most frequently occurring values in the order they were " "first encountered in the *data*. Will return more than one result if there " @@ -630,7 +675,7 @@ msgstr "" "d'apparition dans *data*. Renvoie plusieurs résultats s'il y a plusieurs " "modes ou une liste vide si *data* est vide :" -#: library/statistics.rst:373 +#: library/statistics.rst:386 msgid "" "Return the population standard deviation (the square root of the population " "variance). See :func:`pvariance` for arguments and other details." @@ -639,7 +684,7 @@ msgstr "" "population). Voir :func:`pvariance` pour les arguments et d'autres " "précisions." -#: library/statistics.rst:384 +#: library/statistics.rst:397 msgid "" "Return the population variance of *data*, a non-empty sequence or iterable " "of real-valued numbers. Variance, or second moment about the mean, is a " @@ -653,7 +698,7 @@ msgstr "" "indique une large dispersion des valeurs ; une faible variance indique que " "les valeurs sont resserrées autour de la moyenne." -#: library/statistics.rst:390 +#: library/statistics.rst:403 msgid "" "If the optional second argument *mu* is given, it is typically the mean of " "the *data*. It can also be used to compute the second moment around a point " @@ -666,7 +711,7 @@ msgstr "" "autrement, cela permet de calculer le moment de second ordre autour d'un " "point qui n'est pas la moyenne." -#: library/statistics.rst:395 +#: library/statistics.rst:408 msgid "" "Use this function to calculate the variance from the entire population. To " "estimate the variance from a sample, the :func:`variance` function is " @@ -676,15 +721,15 @@ msgstr "" "complète. Pour estimer la variance à partir d'un échantillon, utilisez " "plutôt :func:`variance` à la place." -#: library/statistics.rst:399 +#: library/statistics.rst:412 msgid "Raises :exc:`StatisticsError` if *data* is empty." msgstr "Lève une erreur :exc:`StatisticsError` si *data* est vide." -#: library/statistics.rst:471 +#: library/statistics.rst:484 library/statistics.rst:616 msgid "Examples:" msgstr "Exemples :" -#: library/statistics.rst:409 +#: library/statistics.rst:422 msgid "" "If you have already calculated the mean of your data, you can pass it as the " "optional second argument *mu* to avoid recalculation:" @@ -693,11 +738,11 @@ msgstr "" "comme argument optionnel *mu* lors de l'appel de fonction pour éviter de la " "calculer une nouvelle fois :" -#: library/statistics.rst:418 +#: library/statistics.rst:431 msgid "Decimals and Fractions are supported:" msgstr "La fonction gère les nombres décimaux et les fractions :" -#: library/statistics.rst:432 +#: library/statistics.rst:445 msgid "" "When called with the entire population, this gives the population variance " "σ². When called on a sample instead, this is the biased sample variance s², " @@ -708,7 +753,7 @@ msgstr "" "échantillon, le résultat est alors la variance de l'échantillon s² ou " "variance à N degrés de liberté." -#: library/statistics.rst:436 +#: library/statistics.rst:449 msgid "" "If you somehow know the true population mean μ, you may use this function to " "calculate the variance of a sample, giving the known population mean as the " @@ -723,7 +768,7 @@ msgstr "" "dans la population, le résultat sera une estimation non biaisée de la " "variance de la population." -#: library/statistics.rst:445 +#: library/statistics.rst:458 msgid "" "Return the sample standard deviation (the square root of the sample " "variance). See :func:`variance` for arguments and other details." @@ -731,7 +776,7 @@ msgstr "" "Renvoie l'écart-type de l'échantillon (racine carrée de la variance de " "l'échantillon). Voir :func:`variance` pour les arguments et plus de détails." -#: library/statistics.rst:456 +#: library/statistics.rst:469 msgid "" "Return the sample variance of *data*, an iterable of at least two real-" "valued numbers. Variance, or second moment about the mean, is a measure of " @@ -745,7 +790,7 @@ msgstr "" "les données sont très dispersées ; une variance faible indique que les " "valeurs sont resserrées autour de la moyenne." -#: library/statistics.rst:462 +#: library/statistics.rst:475 msgid "" "If the optional second argument *xbar* is given, it should be the mean of " "*data*. If it is missing or ``None`` (the default), the mean is " @@ -755,7 +800,7 @@ msgstr "" "correspondre à la moyenne de *data*. S'il n'est pas spécifié ou ``None`` " "(par défaut), la moyenne est automatiquement calculée." -#: library/statistics.rst:466 +#: library/statistics.rst:479 msgid "" "Use this function when your data is a sample from a population. To calculate " "the variance from the entire population, see :func:`pvariance`." @@ -764,13 +809,13 @@ msgstr "" "population plus grande. Pour calculer la variance d'une population complète, " "utilisez :func:`pvariance`." -#: library/statistics.rst:469 +#: library/statistics.rst:482 msgid "Raises :exc:`StatisticsError` if *data* has fewer than two values." msgstr "" "Lève une erreur :exc:`StatisticsError` si *data* contient moins de deux " "éléments." -#: library/statistics.rst:479 +#: library/statistics.rst:492 msgid "" "If you have already calculated the mean of your data, you can pass it as the " "optional second argument *xbar* to avoid recalculation:" @@ -779,7 +824,7 @@ msgstr "" "comme argument optionnel *xbar* lors de l'appel de fonction pour éviter de " "la calculer une nouvelle fois :" -#: library/statistics.rst:488 +#: library/statistics.rst:501 msgid "" "This function does not attempt to verify that you have passed the actual " "mean as *xbar*. Using arbitrary values for *xbar* can lead to invalid or " @@ -789,11 +834,11 @@ msgstr "" "correspond bien à la moyenne. Utiliser des valeurs arbitraires pour *xbar* " "produit des résultats impossibles ou incorrects." -#: library/statistics.rst:492 +#: library/statistics.rst:505 msgid "Decimal and Fraction values are supported:" msgstr "La fonction gère les nombres décimaux et les fractions :" -#: library/statistics.rst:506 +#: library/statistics.rst:519 msgid "" "This is the sample variance s² with Bessel's correction, also known as " "variance with N-1 degrees of freedom. Provided that the data points are " @@ -806,7 +851,7 @@ msgstr "" "identiquement distribuées), alors le résultat est une estimation non biaisée " "de la variance." -#: library/statistics.rst:511 +#: library/statistics.rst:524 msgid "" "If you somehow know the actual population mean μ you should pass it to the :" "func:`pvariance` function as the *mu* parameter to get the variance of a " @@ -816,7 +861,7 @@ msgstr "" "devriez la passer à :func:`pvariance` comme paramètre *mu* pour obtenir la " "variance de l'échantillon." -#: library/statistics.rst:517 +#: library/statistics.rst:530 msgid "" "Divide *data* into *n* continuous intervals with equal probability. Returns " "a list of ``n - 1`` cut points separating the intervals." @@ -824,7 +869,7 @@ msgstr "" "Divise *data* en *n* intervalles réels de même probabilité. Renvoie une " "liste de ``n - 1`` valeurs délimitant les intervalles (les quantiles)." -#: library/statistics.rst:520 +#: library/statistics.rst:533 msgid "" "Set *n* to 4 for quartiles (the default). Set *n* to 10 for deciles. Set " "*n* to 100 for percentiles which gives the 99 cuts points that separate " @@ -836,7 +881,7 @@ msgstr "" "99 valeurs qui séparent *data* en 100 groupes de même taille). Lève une " "erreur :exc:`StatisticsError` si *n* est strictement inférieur à 1." -#: library/statistics.rst:525 +#: library/statistics.rst:538 msgid "" "The *data* can be any iterable containing sample data. For meaningful " "results, the number of data points in *data* should be larger than *n*. " @@ -847,7 +892,7 @@ msgstr "" "d'observations dans l'échantillon *data* doit être plus grand que *n*. Lève " "une erreur :exc:`StatisticsError` s'il n'y a pas au moins deux observations." -#: library/statistics.rst:529 +#: library/statistics.rst:542 msgid "" "The cut points are linearly interpolated from the two nearest data points. " "For example, if a cut point falls one-third of the distance between two " @@ -858,7 +903,7 @@ msgstr "" "tiers de la distance entre les deux valeurs de l'échantillon ``100`` et " "``112``, le quantile vaudra ``104``." -#: library/statistics.rst:534 +#: library/statistics.rst:547 msgid "" "The *method* for computing quantiles can be varied depending on whether the " "*data* includes or excludes the lowest and highest possible values from the " @@ -868,7 +913,7 @@ msgstr "" "quantiles et peut être modifié pour spécifier s'il faut inclure ou exclure " "les valeurs basses et hautes de *data* de la population." -#: library/statistics.rst:538 +#: library/statistics.rst:551 msgid "" "The default *method* is \"exclusive\" and is used for data sampled from a " "population that can have more extreme values than found in the samples. The " @@ -886,7 +931,7 @@ msgstr "" "valeurs dans l'échantillon, cette méthode les ordonne et leur associe les " "quantiles suivants : 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90%." -#: library/statistics.rst:545 +#: library/statistics.rst:558 msgid "" "Setting the *method* to \"inclusive\" is used for describing population data " "or for samples that are known to include the most extreme values from the " @@ -907,24 +952,88 @@ msgstr "" "l'échantillon, cette méthode les ordonne et leur associe les quantiles " "suivants : 0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90%, 100%." -#: library/statistics.rst:569 +#: library/statistics.rst:582 +msgid "" +"Return the sample covariance of two inputs *x* and *y*. Covariance is a " +"measure of the joint variability of two inputs." +msgstr "" + +#: library/statistics.rst:585 +msgid "" +"Both inputs must be of the same length (no less than two), otherwise :exc:" +"`StatisticsError` is raised." +msgstr "" + +#: library/statistics.rst:606 +msgid "" +"Return the `Pearson's correlation coefficient `_ for two inputs. Pearson's correlation " +"coefficient *r* takes values between -1 and +1. It measures the strength and " +"direction of the linear relationship, where +1 means very strong, positive " +"linear relationship, -1 very strong, negative linear relationship, and 0 no " +"linear relationship." +msgstr "" + +#: library/statistics.rst:613 +msgid "" +"Both inputs must be of the same length (no less than two), and need not to " +"be constant, otherwise :exc:`StatisticsError` is raised." +msgstr "" + +#: library/statistics.rst:631 +msgid "" +"Return the slope and intercept of `simple linear regression `_ parameters estimated using " +"ordinary least squares. Simple linear regression describes the relationship " +"between an independent variable *x* and a dependent variable *y* in terms of " +"this linear function:" +msgstr "" + +#: library/statistics.rst:637 +msgid "*y = slope \\* x + intercept + noise*" +msgstr "" + +#: library/statistics.rst:639 +msgid "" +"where ``slope`` and ``intercept`` are the regression parameters that are " +"estimated, and ``noise`` represents the variability of the data that was not " +"explained by the linear regression (it is equal to the difference between " +"predicted and actual values of the dependent variable)." +msgstr "" + +#: library/statistics.rst:645 +msgid "" +"Both inputs must be of the same length (no less than two), and the " +"independent variable *x* cannot be constant; otherwise a :exc:" +"`StatisticsError` is raised." +msgstr "" + +#: library/statistics.rst:649 +msgid "" +"For example, we can use the `release dates of the Monty Python films " +"`_ to predict the " +"cumulative number of Monty Python films that would have been produced by " +"2019 assuming that they had kept the pace." +msgstr "" + +#: library/statistics.rst:667 msgid "Exceptions" msgstr "Exceptions" -#: library/statistics.rst:571 +#: library/statistics.rst:669 msgid "A single exception is defined:" msgstr "Une seule exception est définie :" -#: library/statistics.rst:575 +#: library/statistics.rst:673 msgid "Subclass of :exc:`ValueError` for statistics-related exceptions." msgstr "" "Sous-classe de :exc:`ValueError` pour les exceptions liées aux statistiques." -#: library/statistics.rst:579 +#: library/statistics.rst:677 msgid ":class:`NormalDist` objects" msgstr "Objets :class:`NormalDist`" -#: library/statistics.rst:581 +#: library/statistics.rst:679 msgid "" ":class:`NormalDist` is a tool for creating and manipulating normal " "distributions of a `random variable `_. Cette classe gère la moyenne et l'écart-type d'un ensemble " "d'observations comme une seule entité." -#: library/statistics.rst:587 +#: library/statistics.rst:685 msgid "" "Normal distributions arise from the `Central Limit Theorem `_ and have a wide range of " @@ -946,7 +1055,7 @@ msgstr "" "statistiques. Leur ubiquité découle du `théorème central limite `." -#: library/statistics.rst:593 +#: library/statistics.rst:691 msgid "" "Returns a new *NormalDist* object where *mu* represents the `arithmetic mean " "`_ and *sigma* represents the " @@ -956,11 +1065,11 @@ msgstr "" "arithmétique `_ et " "*sigma* `l'écart-type `_." -#: library/statistics.rst:598 +#: library/statistics.rst:696 msgid "If *sigma* is negative, raises :exc:`StatisticsError`." msgstr "Lève une erreur :exc:`StatisticsError` si *sigma* est négatif." -#: library/statistics.rst:602 +#: library/statistics.rst:700 msgid "" "A read-only property for the `arithmetic mean `_ of a normal distribution." @@ -968,7 +1077,7 @@ msgstr "" "Attribut en lecture seule correspondant à la `moyenne arithmétique `_ d'une loi normale." -#: library/statistics.rst:608 +#: library/statistics.rst:706 msgid "" "A read-only property for the `median `_ of a normal distribution." @@ -976,7 +1085,7 @@ msgstr "" "Attribut en lecture seule correspondant à la `médiane `_ d'une loi normale." -#: library/statistics.rst:614 +#: library/statistics.rst:712 msgid "" "A read-only property for the `mode `_ of a normal distribution." @@ -984,7 +1093,7 @@ msgstr "" "Attribut en lecture seule correspondant au `mode `_ d'une loi normale." -#: library/statistics.rst:620 +#: library/statistics.rst:718 msgid "" "A read-only property for the `standard deviation `_ of a normal distribution." @@ -992,7 +1101,7 @@ msgstr "" "Attribut en lecture seule correspondant à `l'écart-type `_ d'une loi normale." -#: library/statistics.rst:626 +#: library/statistics.rst:724 msgid "" "A read-only property for the `variance `_ of a normal distribution. Equal to the square of the standard " @@ -1002,7 +1111,7 @@ msgstr "" "org/wiki/Variance>`_ d'une loi normale. La variance est égale au carré de " "l'écart-type." -#: library/statistics.rst:632 +#: library/statistics.rst:730 msgid "" "Makes a normal distribution instance with *mu* and *sigma* parameters " "estimated from the *data* using :func:`fmean` and :func:`stdev`." @@ -1010,7 +1119,7 @@ msgstr "" "Crée une instance de loi normale de paramètres *mu* et *sigma* estimés à " "partir de *data* en utilisant :func:`fmean` et :func:`stdev`." -#: library/statistics.rst:635 +#: library/statistics.rst:733 msgid "" "The *data* can be any :term:`iterable` and should consist of values that can " "be converted to type :class:`float`. If *data* does not contain at least " @@ -1023,7 +1132,7 @@ msgstr "" "*data* ne contient pas au moins deux éléments car il faut au moins un point " "pour estimer la moyenne et deux points pour estimer la variance." -#: library/statistics.rst:643 +#: library/statistics.rst:741 msgid "" "Generates *n* random samples for a given mean and standard deviation. " "Returns a :class:`list` of :class:`float` values." @@ -1031,7 +1140,7 @@ msgstr "" "Génère *n* valeurs aléatoires suivant une loi normale de moyenne et écart-" "type connus. Renvoie une :class:`list` de :class:`float`." -#: library/statistics.rst:646 +#: library/statistics.rst:744 msgid "" "If *seed* is given, creates a new instance of the underlying random number " "generator. This is useful for creating reproducible results, even in a " @@ -1042,7 +1151,7 @@ msgstr "" "résultats reproductibles même dans un contexte de parallélisme par fils " "d'exécution." -#: library/statistics.rst:652 +#: library/statistics.rst:750 msgid "" "Using a `probability density function (pdf) `_, compute the relative likelihood that a " @@ -1055,7 +1164,7 @@ msgstr "" "correspond à la limite de la fraction ``P(x <= X < x + dx) / dx`` lorsque " "``dx`` tend vers zéro." -#: library/statistics.rst:658 +#: library/statistics.rst:756 msgid "" "The relative likelihood is computed as the probability of a sample occurring " "in a narrow range divided by the width of the range (hence the word \"density" @@ -1067,7 +1176,7 @@ msgstr "" "l'intervalle (d'où l'appellation « densité »). La vraisemblance étant " "relative aux autres points, sa valeur peut être supérieure à 1,0." -#: library/statistics.rst:665 +#: library/statistics.rst:763 msgid "" "Using a `cumulative distribution function (cdf) `_, compute the probability that a " @@ -1079,7 +1188,7 @@ msgstr "" "org/wiki/Fonction_de_r%C3%A9partition>`_. Mathématiquement, cela correspond " "à ``P(X <= x)``." -#: library/statistics.rst:672 +#: library/statistics.rst:770 msgid "" "Compute the inverse cumulative distribution function, also known as the " "`quantile function `_ or " @@ -1091,7 +1200,7 @@ msgstr "" "quantile `_. " "Mathématiquement, il s'agit de ``x : P(X <= x) = p``." -#: library/statistics.rst:678 +#: library/statistics.rst:776 msgid "" "Finds the value *x* of the random variable *X* such that the probability of " "the variable being less than or equal to that value equals the given " @@ -1101,7 +1210,7 @@ msgstr "" "probabilité que la variable soit inférieure ou égale à cette valeur *x* est " "égale à *p*." -#: library/statistics.rst:684 +#: library/statistics.rst:782 msgid "" "Measures the agreement between two normal probability distributions. Returns " "a value between 0.0 and 1.0 giving `the overlapping area for the two " @@ -1111,7 +1220,7 @@ msgstr "" "entre 0 et 1 indiquant `l'aire du recouvrement de deux densités de " "probabilité `_." -#: library/statistics.rst:691 +#: library/statistics.rst:789 msgid "" "Divide the normal distribution into *n* continuous intervals with equal " "probability. Returns a list of (n - 1) cut points separating the intervals." @@ -1119,7 +1228,7 @@ msgstr "" "Divise la loi normale entre *n* intervalles réels équiprobables. Renvoie une " "liste de ``(n - 1)`` quantiles séparant les intervalles." -#: library/statistics.rst:695 +#: library/statistics.rst:793 msgid "" "Set *n* to 4 for quartiles (the default). Set *n* to 10 for deciles. Set " "*n* to 100 for percentiles which gives the 99 cuts points that separate the " @@ -1129,7 +1238,7 @@ msgstr "" "obtenir les déciles et ``n = 100`` pour obtenir les centiles (ce qui produit " "99 valeurs qui séparent *data* en 100 groupes de même taille)." -#: library/statistics.rst:701 +#: library/statistics.rst:799 msgid "" "Compute the `Standard Score `_ describing *x* in terms of the number of standard " @@ -1137,7 +1246,7 @@ msgid "" "mean) / stdev``." msgstr "" -#: library/statistics.rst:709 +#: library/statistics.rst:807 msgid "" "Instances of :class:`NormalDist` support addition, subtraction, " "multiplication and division by a constant. These operations are used for " @@ -1148,7 +1257,7 @@ msgstr "" "opérations peuvent être utilisées pour la translation ou la mise à " "l'échelle, par exemple :" -#: library/statistics.rst:719 +#: library/statistics.rst:817 msgid "" "Dividing a constant by an instance of :class:`NormalDist` is not supported " "because the result wouldn't be normally distributed." @@ -1156,7 +1265,7 @@ msgstr "" "Diviser une constante par une instance de :class:`NormalDist` n'est pas pris " "en charge car le résultat ne serait pas une loi normale." -#: library/statistics.rst:722 +#: library/statistics.rst:820 msgid "" "Since normal distributions arise from additive effects of independent " "variables, it is possible to `add and subtract two independent normally " @@ -1170,17 +1279,17 @@ msgstr "" "Sum_of_normally_distributed_random_variables>`_ représentées par des " "instances de :class:`NormalDist`. Par exemple :" -#: library/statistics.rst:742 +#: library/statistics.rst:840 msgid ":class:`NormalDist` Examples and Recipes" msgstr "Exemples d'utilisation de :class:`NormalDist`" -#: library/statistics.rst:744 +#: library/statistics.rst:842 msgid ":class:`NormalDist` readily solves classic probability problems." msgstr "" ":class:`NormalDist` permet de résoudre aisément des problèmes probabilistes " "classiques." -#: library/statistics.rst:746 +#: library/statistics.rst:844 msgid "" "For example, given `historical data for SAT exams `_ showing that scores are " @@ -1193,7 +1302,7 @@ msgstr "" "moyenne 1060 et d'écart-type 195, déterminer le pourcentage d'étudiants dont " "les scores se situent entre 1100 et 1200, arrondi à l'entier le plus proche :" -#: library/statistics.rst:759 +#: library/statistics.rst:857 msgid "" "Find the `quartiles `_ and `deciles " "`_ for the SAT scores:" @@ -1201,7 +1310,7 @@ msgstr "" "Déterminer les `quartiles `_ et les " "`déciles `_ des scores SAT :" -#: library/statistics.rst:769 +#: library/statistics.rst:867 msgid "" "To estimate the distribution for a model than isn't easy to solve " "analytically, :class:`NormalDist` can generate input samples for a `Monte " @@ -1212,7 +1321,7 @@ msgstr "" "%C3%A9thode_de_Monte-Carlo>`_ afin d'estimer la distribution d'un modèle " "difficile à résoudre analytiquement :" -#: library/statistics.rst:785 +#: library/statistics.rst:883 msgid "" "Normal distributions can be used to approximate `Binomial distributions " "`_ when the sample " @@ -1223,7 +1332,7 @@ msgstr "" "d'observations est grand et que la probabilité de succès de l'épreuve est " "proche de 50%." -#: library/statistics.rst:790 +#: library/statistics.rst:888 msgid "" "For example, an open source conference has 750 attendees and two rooms with " "a 500 person capacity. There is a talk about Python and another about Ruby. " @@ -1239,11 +1348,11 @@ msgstr "" "les préférences de la population n'ont pas changé, quelle est la probabilité " "que la salle Python reste en-dessous de sa capacité d'accueil ?" -#: library/statistics.rst:821 +#: library/statistics.rst:919 msgid "Normal distributions commonly arise in machine learning problems." msgstr "Les lois normales interviennent souvent en apprentissage automatique." -#: library/statistics.rst:823 +#: library/statistics.rst:921 msgid "" "Wikipedia has a `nice example of a Naive Bayesian Classifier `_. The " @@ -1256,7 +1365,7 @@ msgstr "" "d'une personne à partir de caractéristiques physiques qui suivent une loi " "normale, telles que la hauteur, le poids et la pointure." -#: library/statistics.rst:828 +#: library/statistics.rst:926 msgid "" "We're given a training dataset with measurements for eight people. The " "measurements are assumed to be normally distributed, so we summarize the " @@ -1267,7 +1376,7 @@ msgstr "" "normale. Nous pouvons donc synthétiser les données à l'aide de :class:" "`NormalDist` :" -#: library/statistics.rst:841 +#: library/statistics.rst:939 msgid "" "Next, we encounter a new person whose feature measurements are known but " "whose gender is unknown:" @@ -1275,7 +1384,7 @@ msgstr "" "Ensuite, nous rencontrons un nouvel individu dont nous connaissons les " "proportions mais pas le sexe :" -#: library/statistics.rst:850 +#: library/statistics.rst:948 msgid "" "Starting with a 50% `prior probability `_ of being male or female, we compute the posterior as " @@ -1288,7 +1397,7 @@ msgstr "" "antérieure et de la vraisemblance des différentes mesures étant donné le " "sexe :" -#: library/statistics.rst:865 +#: library/statistics.rst:963 msgid "" "The final prediction goes to the largest posterior. This is known as the " "`maximum a posteriori `_ ou MAP :" + +#~ msgid "" +#~ "Suppose an investor purchases an equal value of shares in each of three " +#~ "companies, with P/E (price/earning) ratios of 2.5, 3 and 10. What is the " +#~ "average P/E ratio for the investor's portfolio?" +#~ msgstr "" +#~ "Supposons qu'un investisseur achète autant de parts dans trois compagnies " +#~ "chacune de ratio cours sur bénéfices (*P/E*) 2,5, 3 et 10. Quel est le " +#~ "ratio cours sur bénéfices moyen du portefeuille de l'investisseur ?" diff --git a/library/stdtypes.po b/library/stdtypes.po index 44e4b82f7..7838a515d 100644 --- a/library/stdtypes.po +++ b/library/stdtypes.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-08-09 15:32+0200\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -127,17 +127,17 @@ msgstr "" msgid "These are the Boolean operations, ordered by ascending priority:" msgstr "Ce sont les opérations booléennes, classées par priorité ascendante :" -#: library/stdtypes.rst:143 library/stdtypes.rst:363 library/stdtypes.rst:861 -#: library/stdtypes.rst:1056 +#: library/stdtypes.rst:143 library/stdtypes.rst:363 library/stdtypes.rst:881 +#: library/stdtypes.rst:1076 msgid "Operation" msgstr "Opération" -#: library/stdtypes.rst:274 library/stdtypes.rst:413 library/stdtypes.rst:1056 +#: library/stdtypes.rst:274 library/stdtypes.rst:413 library/stdtypes.rst:1076 msgid "Result" msgstr "Résultat" -#: library/stdtypes.rst:274 library/stdtypes.rst:861 library/stdtypes.rst:2286 -#: library/stdtypes.rst:3506 +#: library/stdtypes.rst:274 library/stdtypes.rst:881 library/stdtypes.rst:2308 +#: library/stdtypes.rst:3529 msgid "Notes" msgstr "Notes" @@ -149,8 +149,8 @@ msgstr "``x or y``" msgid "if *x* is false, then *y*, else *x*" msgstr "si *x* est faux, alors *y*, sinon *x*" -#: library/stdtypes.rst:284 library/stdtypes.rst:866 library/stdtypes.rst:2292 -#: library/stdtypes.rst:3512 +#: library/stdtypes.rst:284 library/stdtypes.rst:886 library/stdtypes.rst:2314 +#: library/stdtypes.rst:3535 msgid "\\(1)" msgstr "\\(1)" @@ -162,8 +162,8 @@ msgstr "``x and y``" msgid "if *x* is false, then *x*, else *y*" msgstr "si *x* est faux, alors *x*, sinon *y*" -#: library/stdtypes.rst:287 library/stdtypes.rst:1095 library/stdtypes.rst:2298 -#: library/stdtypes.rst:3518 +#: library/stdtypes.rst:287 library/stdtypes.rst:1115 library/stdtypes.rst:2320 +#: library/stdtypes.rst:3541 msgid "\\(2)" msgstr "\\(2)" @@ -175,14 +175,14 @@ msgstr "``not x``" msgid "if *x* is false, then ``True``, else ``False``" msgstr "si *x* est faux, alors ``True``, sinon ``False``" -#: library/stdtypes.rst:875 library/stdtypes.rst:2300 library/stdtypes.rst:2304 -#: library/stdtypes.rst:3520 library/stdtypes.rst:3524 -#: library/stdtypes.rst:3526 +#: library/stdtypes.rst:895 library/stdtypes.rst:2322 library/stdtypes.rst:2326 +#: library/stdtypes.rst:3543 library/stdtypes.rst:3547 +#: library/stdtypes.rst:3549 msgid "\\(3)" msgstr "\\(3)" -#: library/stdtypes.rst:318 library/stdtypes.rst:902 library/stdtypes.rst:2332 -#: library/stdtypes.rst:3556 +#: library/stdtypes.rst:318 library/stdtypes.rst:922 library/stdtypes.rst:2354 +#: library/stdtypes.rst:3579 msgid "Notes:" msgstr "Notes :" @@ -234,8 +234,8 @@ msgstr "" msgid "This table summarizes the comparison operations:" msgstr "Ce tableau résume les opérations de comparaison :" -#: library/stdtypes.rst:2263 library/stdtypes.rst:3483 -#: library/stdtypes.rst:3506 +#: library/stdtypes.rst:2285 library/stdtypes.rst:3506 +#: library/stdtypes.rst:3529 msgid "Meaning" msgstr "Signification" @@ -572,7 +572,7 @@ msgstr "" "un nombre complexe avec *re* pour partie réelle et *im* pour partie " "imaginaire. *im* vaut zéro par défaut." -#: library/stdtypes.rst:1088 library/stdtypes.rst:3543 +#: library/stdtypes.rst:1108 library/stdtypes.rst:3566 msgid "\\(6)" msgstr "\\(6)" @@ -608,8 +608,8 @@ msgstr "``pow(x, y)``" msgid "*x* to the power *y*" msgstr "*x* à la puissance *y*" -#: library/stdtypes.rst:311 library/stdtypes.rst:1080 library/stdtypes.rst:2322 -#: library/stdtypes.rst:3539 library/stdtypes.rst:3546 +#: library/stdtypes.rst:311 library/stdtypes.rst:1100 library/stdtypes.rst:2344 +#: library/stdtypes.rst:3562 library/stdtypes.rst:3569 msgid "\\(5)" msgstr "\\(5)" @@ -777,8 +777,8 @@ msgstr "``x | y``" msgid "bitwise :dfn:`or` of *x* and *y*" msgstr ":dfn:`ou ` binaire de *x* et *y*" -#: library/stdtypes.rst:418 library/stdtypes.rst:1101 library/stdtypes.rst:2312 -#: library/stdtypes.rst:3532 +#: library/stdtypes.rst:418 library/stdtypes.rst:1121 library/stdtypes.rst:2334 +#: library/stdtypes.rst:3555 msgid "\\(4)" msgstr "\\(4)" @@ -901,15 +901,21 @@ msgstr "" "correctement arrondi, ``k = 1 + int(log(abs(x), 2))``. Si ``x`` est nul, " "alors ``x.bit_length()`` donne ``0``." -#: library/stdtypes.rst:472 +#: library/stdtypes.rst:495 msgid "Equivalent to::" msgstr "Équivalent à ::" #: library/stdtypes.rst:483 +msgid "" +"Return the number of ones in the binary representation of the absolute value " +"of the integer. This is also known as the population count. Example::" +msgstr "" + +#: library/stdtypes.rst:504 msgid "Return an array of bytes representing an integer." msgstr "Renvoie un tableau d'octets représentant un nombre entier." -#: library/stdtypes.rst:495 +#: library/stdtypes.rst:516 msgid "" "The integer is represented using *length* bytes. An :exc:`OverflowError` is " "raised if the integer is not representable with the given number of bytes." @@ -918,7 +924,7 @@ msgstr "" "`OverflowError` est levée s'il n'est pas possible de représenter l'entier " "avec le nombre d'octets donnés." -#: library/stdtypes.rst:531 +#: library/stdtypes.rst:552 msgid "" "The *byteorder* argument determines the byte order used to represent the " "integer. If *byteorder* is ``\"big\"``, the most significant byte is at the " @@ -934,7 +940,7 @@ msgstr "" "demander l'ordre natif des octets du système hôte, donnez :data:`sys." "byteorder` comme *byteorder*." -#: library/stdtypes.rst:506 +#: library/stdtypes.rst:527 msgid "" "The *signed* argument determines whether two's complement is used to " "represent the integer. If *signed* is ``False`` and a negative integer is " @@ -946,11 +952,11 @@ msgstr "" "négatif est donné, une exception :exc:`OverflowError` est levée. La valeur " "par défaut pour *signed* est ``False``." -#: library/stdtypes.rst:515 +#: library/stdtypes.rst:536 msgid "Return the integer represented by the given array of bytes." msgstr "Donne le nombre entier représenté par le tableau d'octets fourni." -#: library/stdtypes.rst:528 +#: library/stdtypes.rst:549 msgid "" "The argument *bytes* must either be a :term:`bytes-like object` or an " "iterable producing bytes." @@ -958,7 +964,7 @@ msgstr "" "L'argument *bytes* doit être soit un :term:`bytes-like object` soit un " "itérable produisant des *bytes*." -#: library/stdtypes.rst:538 +#: library/stdtypes.rst:559 msgid "" "The *signed* argument indicates whether two's complement is used to " "represent the integer." @@ -966,7 +972,7 @@ msgstr "" "L'argument *signed* indique si le complément à deux est utilisé pour " "représenter le nombre entier." -#: library/stdtypes.rst:545 +#: library/stdtypes.rst:566 msgid "" "Return a pair of integers whose ratio is exactly equal to the original " "integer and with a positive denominator. The integer ratio of integers " @@ -978,11 +984,11 @@ msgstr "" "entier (tous les nombres entiers) est cet entier au numérateur et ``1`` " "comme dénominateur." -#: library/stdtypes.rst:553 +#: library/stdtypes.rst:574 msgid "Additional Methods on Float" msgstr "Méthodes supplémentaires sur les nombres à virgule flottante" -#: library/stdtypes.rst:555 +#: library/stdtypes.rst:576 msgid "" "The float type implements the :class:`numbers.Real` :term:`abstract base " "class`. float also has the following additional methods." @@ -990,7 +996,7 @@ msgstr "" "Le type *float* implémente la :term:`classe de base abstraite ` :class:`numbers.Real` et a également les méthodes suivantes." -#: library/stdtypes.rst:560 +#: library/stdtypes.rst:581 msgid "" "Return a pair of integers whose ratio is exactly equal to the original float " "and with a positive denominator. Raises :exc:`OverflowError` on infinities " @@ -1000,7 +1006,7 @@ msgstr "" "nombre d'origine et avec un dénominateur positif. Lève :exc:`OverflowError` " "avec un infini et :exc:`ValueError` avec un NaN." -#: library/stdtypes.rst:567 +#: library/stdtypes.rst:588 msgid "" "Return ``True`` if the float instance is finite with integral value, and " "``False`` otherwise::" @@ -1008,7 +1014,7 @@ msgstr "" "Donne ``True`` si l'instance de *float* est finie avec une valeur entière, " "et ``False`` autrement ::" -#: library/stdtypes.rst:575 +#: library/stdtypes.rst:596 msgid "" "Two methods support conversion to and from hexadecimal strings. Since " "Python's floats are stored internally as binary numbers, converting a float " @@ -1025,7 +1031,7 @@ msgstr "" "nombres à virgule flottante. Cela peut être utile lors du débogage, et dans " "un travail numérique." -#: library/stdtypes.rst:586 +#: library/stdtypes.rst:607 msgid "" "Return a representation of a floating-point number as a hexadecimal string. " "For finite floating-point numbers, this representation will always include a " @@ -1036,7 +1042,7 @@ msgstr "" "représentation comprendra toujours un préfixe ``0x``, un suffixe ``p``, et " "un exposant." -#: library/stdtypes.rst:594 +#: library/stdtypes.rst:615 msgid "" "Class method to return the float represented by a hexadecimal string *s*. " "The string *s* may have leading and trailing whitespace." @@ -1045,7 +1051,7 @@ msgstr "" "caractères hexadécimale *s*. La chaîne *s* peut contenir des espaces avant " "et après le chiffre." -#: library/stdtypes.rst:599 +#: library/stdtypes.rst:620 msgid "" "Note that :meth:`float.hex` is an instance method, while :meth:`float." "fromhex` is a class method." @@ -1053,11 +1059,11 @@ msgstr "" "Notez que :meth:`float.hex` est une méthode d'instance, alors que :meth:" "`float.fromhex` est une méthode de classe." -#: library/stdtypes.rst:602 +#: library/stdtypes.rst:623 msgid "A hexadecimal string takes the form::" msgstr "Une chaîne hexadécimale prend la forme ::" -#: library/stdtypes.rst:606 +#: library/stdtypes.rst:627 msgid "" "where the optional ``sign`` may by either ``+`` or ``-``, ``integer`` and " "``fraction`` are strings of hexadecimal digits, and ``exponent`` is a " @@ -1081,7 +1087,7 @@ msgstr "" "chaînes hexadécimales produites en C via un format ``%a`` ou Java via " "``Double.toHexString`` sont acceptées par :meth:`float.fromhex`." -#: library/stdtypes.rst:619 +#: library/stdtypes.rst:640 msgid "" "Note that the exponent is written in decimal rather than hexadecimal, and " "that it gives the power of 2 by which to multiply the coefficient. For " @@ -1093,7 +1099,7 @@ msgstr "" "la chaîne hexadécimale ``0x3.a7p10`` représente le nombre à virgule " "flottante ``(3 + 10./16 + 7./16**2) *2.0**10``, ou ``3740.0`` ::" -#: library/stdtypes.rst:629 +#: library/stdtypes.rst:650 msgid "" "Applying the reverse conversion to ``3740.0`` gives a different hexadecimal " "string representing the same number::" @@ -1101,11 +1107,11 @@ msgstr "" "L'application de la conversion inverse à ``3740.0`` donne une chaîne " "hexadécimale différente représentant le même nombre ::" -#: library/stdtypes.rst:639 +#: library/stdtypes.rst:660 msgid "Hashing of numeric types" msgstr "Hachage des types numériques" -#: library/stdtypes.rst:641 +#: library/stdtypes.rst:662 msgid "" "For numbers ``x`` and ``y``, possibly of different types, it's a requirement " "that ``hash(x) == hash(y)`` whenever ``x == y`` (see the :meth:`__hash__` " @@ -1133,7 +1139,7 @@ msgstr "" "réduction modulo ``P`` pour un nombre ``P`` premier fixe. La valeur de ``P`` " "est disponible comme attribut :attr:`modulus` de :data:`sys.hash_info`." -#: library/stdtypes.rst:656 +#: library/stdtypes.rst:677 msgid "" "Currently, the prime used is ``P = 2**31 - 1`` on machines with 32-bit C " "longs and ``P = 2**61 - 1`` on machines with 64-bit C longs." @@ -1142,11 +1148,11 @@ msgstr "" "dont les *longs* en C sont de 32 bits ``P = 2 ** 61 - 1`` sur des machines " "dont les *longs* en C font 64 bits." -#: library/stdtypes.rst:659 +#: library/stdtypes.rst:680 msgid "Here are the rules in detail:" msgstr "Voici les règles en détail :" -#: library/stdtypes.rst:661 +#: library/stdtypes.rst:682 msgid "" "If ``x = m / n`` is a nonnegative rational number and ``n`` is not divisible " "by ``P``, define ``hash(x)`` as ``m * invmod(n, P) % P``, where ``invmod(n, " @@ -1156,7 +1162,7 @@ msgstr "" "divisible par ``P``, définir ``hash(x)`` comme ``m * invmod(n, P) % P``, où " "``invmod(n, P)`` donne l'inverse de ``n`` modulo ``P``." -#: library/stdtypes.rst:665 +#: library/stdtypes.rst:686 msgid "" "If ``x = m / n`` is a nonnegative rational number and ``n`` is divisible by " "``P`` (but ``m`` is not) then ``n`` has no inverse modulo ``P`` and the rule " @@ -1168,7 +1174,7 @@ msgstr "" "``P`` et la règle ci-dessus n'est pas applicable ; dans ce cas définir " "``hash(x)`` comme étant la valeur de la constante ``sys.hash_info.inf``." -#: library/stdtypes.rst:670 +#: library/stdtypes.rst:691 msgid "" "If ``x = m / n`` is a negative rational number define ``hash(x)`` as ``-" "hash(-x)``. If the resulting hash is ``-1``, replace it with ``-2``." @@ -1176,19 +1182,19 @@ msgstr "" "Si ``x = m / n`` est un nombre rationnel négatif définir ``hash(x)`` comme " "``-hash(-x)``. Si le résultat est ``-1``, le remplacer par ``-2``." -#: library/stdtypes.rst:674 +#: library/stdtypes.rst:695 +#, fuzzy msgid "" -"The particular values ``sys.hash_info.inf``, ``-sys.hash_info.inf`` and " -"``sys.hash_info.nan`` are used as hash values for positive infinity, " -"negative infinity, or nans (respectively). (All hashable nans have the same " -"hash value.)" +"The particular values ``sys.hash_info.inf`` and ``-sys.hash_info.inf`` are " +"used as hash values for positive infinity or negative infinity " +"(respectively)." msgstr "" "Les valeurs particulières ``sys.hash_info.inf``, ``-sys.hash_info.inf`` et " "``sys.hash_info.nan`` sont utilisées comme valeurs de hachage pour l'infini " "positif, l'infini négatif, ou *nans* (respectivement). (Tous les *nans* " "hachables ont la même valeur de hachage.)" -#: library/stdtypes.rst:679 +#: library/stdtypes.rst:699 msgid "" "For a :class:`complex` number ``z``, the hash values of the real and " "imaginary parts are combined by computing ``hash(z.real) + sys.hash_info." @@ -1203,7 +1209,7 @@ msgstr "" "2**(sys.hash_info.width - 1))``. Encore une fois, si le résultat est ``-1``, " "il est remplacé par ``-2``." -#: library/stdtypes.rst:687 +#: library/stdtypes.rst:707 msgid "" "To clarify the above rules, here's some example Python code, equivalent to " "the built-in hash, for computing the hash of a rational number, :class:" @@ -1213,11 +1219,11 @@ msgstr "" "Python, équivalent à la fonction de hachage native, pour calculer le hachage " "d'un nombre rationnel, d'un :class:`float`, ou d'un :class:`complex` ::" -#: library/stdtypes.rst:742 +#: library/stdtypes.rst:762 msgid "Iterator Types" msgstr "Les types itérateurs" -#: library/stdtypes.rst:750 +#: library/stdtypes.rst:770 msgid "" "Python supports a concept of iteration over containers. This is implemented " "using two distinct methods; these are used to allow user-defined classes to " @@ -1229,7 +1235,7 @@ msgstr "" "par l'utilisateur de devenir itérables. Les séquences, décrites plus bas en " "détail, supportent toujours les méthodes d'itération." -#: library/stdtypes.rst:755 +#: library/stdtypes.rst:775 msgid "" "One method needs to be defined for container objects to provide iteration " "support:" @@ -1237,7 +1243,7 @@ msgstr "" "Une méthode doit être définie afin que les objets conteneurs supportent " "l'itération :" -#: library/stdtypes.rst:762 +#: library/stdtypes.rst:782 msgid "" "Return an iterator object. The object is required to support the iterator " "protocol described below. If a container supports different types of " @@ -1257,7 +1263,7 @@ msgstr "" "correspond à l'attribut :c:member:`~PyTypeObject.tp_iter` de la structure du " "type des objets Python dans l'API Python/C." -#: library/stdtypes.rst:771 +#: library/stdtypes.rst:791 msgid "" "The iterator objects themselves are required to support the following two " "methods, which together form the :dfn:`iterator protocol`:" @@ -1265,7 +1271,7 @@ msgstr "" "Les itérateurs eux-mêmes doivent implémenter les deux méthodes suivantes, " "qui forment ensemble le :dfn:`protocole d'itérateur ` :" -#: library/stdtypes.rst:777 +#: library/stdtypes.rst:797 msgid "" "Return the iterator object itself. This is required to allow both " "containers and iterators to be used with the :keyword:`for` and :keyword:" @@ -1278,7 +1284,7 @@ msgstr "" "l'attribut :c:member:`~PyTypeObject.tp_iter` de la structure des types des " "objets Python dans l'API Python/C." -#: library/stdtypes.rst:785 +#: library/stdtypes.rst:805 msgid "" "Return the next item from the container. If there are no further items, " "raise the :exc:`StopIteration` exception. This method corresponds to the :c:" @@ -1290,7 +1296,7 @@ msgstr "" "l'attribut :c:member:`PyTypeObject.tp_iternext` de la structure du type des " "objets Python dans l'API Python/C." -#: library/stdtypes.rst:790 +#: library/stdtypes.rst:810 msgid "" "Python defines several iterator objects to support iteration over general " "and specific sequence types, dictionaries, and other more specialized " @@ -1302,7 +1308,7 @@ msgstr "" "plus spécialisées. Les types spécifiques ne sont pas importants au-delà de " "leur implémentation du protocole d'itération." -#: library/stdtypes.rst:795 +#: library/stdtypes.rst:815 msgid "" "Once an iterator's :meth:`~iterator.__next__` method raises :exc:" "`StopIteration`, it must continue to do so on subsequent calls. " @@ -1313,11 +1319,11 @@ msgstr "" "Implémentations qui ne respectent pas cette propriété sont considérées " "cassées." -#: library/stdtypes.rst:803 +#: library/stdtypes.rst:823 msgid "Generator Types" msgstr "Types générateurs" -#: library/stdtypes.rst:805 +#: library/stdtypes.rst:825 msgid "" "Python's :term:`generator`\\s provide a convenient way to implement the " "iterator protocol. If a container object's :meth:`__iter__` method is " @@ -1334,11 +1340,11 @@ msgstr "" "générateurs peuvent être trouvés dans :ref:`la documentation de l'expression " "yield `." -#: library/stdtypes.rst:817 +#: library/stdtypes.rst:837 msgid "Sequence Types --- :class:`list`, :class:`tuple`, :class:`range`" msgstr "Types séquentiels — :class:`list`, :class:`tuple`, :class:`range`" -#: library/stdtypes.rst:819 +#: library/stdtypes.rst:839 msgid "" "There are three basic sequence types: lists, tuples, and range objects. " "Additional sequence types tailored for processing of :ref:`binary data " @@ -1351,11 +1357,11 @@ msgstr "" "` et :ref:`chaînes de caractères ` sont décrits dans des " "sections dédiées." -#: library/stdtypes.rst:828 +#: library/stdtypes.rst:848 msgid "Common Sequence Operations" msgstr "Opérations communes sur les séquences" -#: library/stdtypes.rst:832 +#: library/stdtypes.rst:852 msgid "" "The operations in the following table are supported by most sequence types, " "both mutable and immutable. The :class:`collections.abc.Sequence` ABC is " @@ -1367,7 +1373,7 @@ msgstr "" "class:`collections.abc.Sequence` est fournie pour aider à implémenter " "correctement ces opérations sur les types séquentiels personnalisés." -#: library/stdtypes.rst:837 +#: library/stdtypes.rst:857 msgid "" "This table lists the sequence operations sorted in ascending priority. In " "the table, *s* and *t* are sequences of the same type, *n*, *i*, *j* and *k* " @@ -1379,7 +1385,7 @@ msgstr "" "*n*, *i*, *j* et *k* sont des nombres entiers et *x* est un objet arbitraire " "qui répond à toutes les restrictions de type et de valeur imposée par *s*." -#: library/stdtypes.rst:842 +#: library/stdtypes.rst:862 msgid "" "The ``in`` and ``not in`` operations have the same priorities as the " "comparison operations. The ``+`` (concatenation) and ``*`` (repetition) " @@ -1391,107 +1397,107 @@ msgstr "" "(répétition) ont la même priorité que les opérations numériques " "correspondantes. [3]_" -#: library/stdtypes.rst:863 +#: library/stdtypes.rst:883 msgid "``x in s``" msgstr "``x in s``" -#: library/stdtypes.rst:863 +#: library/stdtypes.rst:883 msgid "``True`` if an item of *s* is equal to *x*, else ``False``" msgstr "``True`` si un élément de *s* est égal à *x*, sinon ``False``" -#: library/stdtypes.rst:866 +#: library/stdtypes.rst:886 msgid "``x not in s``" msgstr "``x not in s``" -#: library/stdtypes.rst:866 +#: library/stdtypes.rst:886 msgid "``False`` if an item of *s* is equal to *x*, else ``True``" msgstr "``False`` si un élément de *s* est égal à *x*, sinon ``True``" -#: library/stdtypes.rst:869 +#: library/stdtypes.rst:889 msgid "``s + t``" msgstr "``s + t``" -#: library/stdtypes.rst:869 +#: library/stdtypes.rst:889 msgid "the concatenation of *s* and *t*" msgstr "la concaténation de *s* et *t*" -#: library/stdtypes.rst:869 +#: library/stdtypes.rst:889 msgid "(6)(7)" msgstr "(6)(7)" -#: library/stdtypes.rst:872 +#: library/stdtypes.rst:892 msgid "``s * n`` or ``n * s``" msgstr "``s * n`` or ``n * s``" -#: library/stdtypes.rst:872 +#: library/stdtypes.rst:892 msgid "equivalent to adding *s* to itself *n* times" msgstr "équivalent à ajouter *s* *n* fois à lui même" -#: library/stdtypes.rst:872 +#: library/stdtypes.rst:892 msgid "(2)(7)" msgstr "(2)(7)" -#: library/stdtypes.rst:875 +#: library/stdtypes.rst:895 msgid "``s[i]``" msgstr "``s[i]``" -#: library/stdtypes.rst:875 +#: library/stdtypes.rst:895 msgid "*i*\\ th item of *s*, origin 0" msgstr "*i*\\ :sup:`e` élément de *s* en commençant par 0" -#: library/stdtypes.rst:877 +#: library/stdtypes.rst:897 msgid "``s[i:j]``" msgstr "``s[i:j]``" -#: library/stdtypes.rst:877 +#: library/stdtypes.rst:897 msgid "slice of *s* from *i* to *j*" msgstr "tranche (*slice*) de *s* de *i* à *j*" -#: library/stdtypes.rst:877 +#: library/stdtypes.rst:897 msgid "(3)(4)" msgstr "(3)(4)" -#: library/stdtypes.rst:879 +#: library/stdtypes.rst:899 msgid "``s[i:j:k]``" msgstr "``s[i:j:k]``" -#: library/stdtypes.rst:879 +#: library/stdtypes.rst:899 msgid "slice of *s* from *i* to *j* with step *k*" msgstr "tranche (*slice*) de *s* de *i* à *j* avec un pas de *k*" -#: library/stdtypes.rst:879 +#: library/stdtypes.rst:899 msgid "(3)(5)" msgstr "(3)(5)" -#: library/stdtypes.rst:882 +#: library/stdtypes.rst:902 msgid "``len(s)``" msgstr "``len(s)``" -#: library/stdtypes.rst:882 +#: library/stdtypes.rst:902 msgid "length of *s*" msgstr "longueur de *s*" -#: library/stdtypes.rst:884 +#: library/stdtypes.rst:904 msgid "``min(s)``" msgstr "``min(s)``" -#: library/stdtypes.rst:884 +#: library/stdtypes.rst:904 msgid "smallest item of *s*" msgstr "plus petit élément de *s*" -#: library/stdtypes.rst:886 +#: library/stdtypes.rst:906 msgid "``max(s)``" msgstr "``max(s)``" -#: library/stdtypes.rst:886 +#: library/stdtypes.rst:906 msgid "largest item of *s*" msgstr "plus grand élément de *s*" -#: library/stdtypes.rst:888 +#: library/stdtypes.rst:908 msgid "``s.index(x[, i[, j]])``" msgstr "``s.index(x[, i[, j]])``" -#: library/stdtypes.rst:888 +#: library/stdtypes.rst:908 msgid "" "index of the first occurrence of *x* in *s* (at or after index *i* and " "before index *j*)" @@ -1499,19 +1505,19 @@ msgstr "" "indice de la première occurrence de *x* dans *s* (à ou après l'indice *i* et " "avant indice *j*)" -#: library/stdtypes.rst:3514 +#: library/stdtypes.rst:3537 msgid "\\(8)" msgstr "\\(8)" -#: library/stdtypes.rst:892 +#: library/stdtypes.rst:912 msgid "``s.count(x)``" msgstr "``s.count(x)``" -#: library/stdtypes.rst:892 +#: library/stdtypes.rst:912 msgid "total number of occurrences of *x* in *s*" msgstr "nombre total d'occurrences de *x* dans *s*" -#: library/stdtypes.rst:896 +#: library/stdtypes.rst:916 msgid "" "Sequences of the same type also support comparisons. In particular, tuples " "and lists are compared lexicographically by comparing corresponding " @@ -1527,7 +1533,7 @@ msgstr "" "longueur. (Pour plus de détails voir :ref:`comparisons` dans la référence du " "langage.)" -#: library/stdtypes.rst:905 +#: library/stdtypes.rst:925 msgid "" "While the ``in`` and ``not in`` operations are used only for simple " "containment testing in the general case, some specialised sequences (such " @@ -1539,7 +1545,7 @@ msgstr "" "spécialisées (telles que :class:`str`, :class:`bytes` et :class:`bytearray`) " "les utilisent aussi pour tester l'existence de sous-séquences ::" -#: library/stdtypes.rst:914 +#: library/stdtypes.rst:934 msgid "" "Values of *n* less than ``0`` are treated as ``0`` (which yields an empty " "sequence of the same type as *s*). Note that items in the sequence *s* are " @@ -1551,7 +1557,7 @@ msgstr "" "ne sont pas copiés ; ils sont référencés plusieurs fois. Cela hante souvent " "de nouveaux développeurs Python, typiquement ::" -#: library/stdtypes.rst:926 +#: library/stdtypes.rst:946 msgid "" "What has happened is that ``[[]]`` is a one-element list containing an empty " "list, so all three elements of ``[[]] * 3`` are references to this single " @@ -1564,7 +1570,7 @@ msgstr "" "modifie cette liste unique. Vous pouvez créer une liste des différentes " "listes de cette façon ::" -#: library/stdtypes.rst:938 +#: library/stdtypes.rst:958 msgid "" "Further explanation is available in the FAQ entry :ref:`faq-multidimensional-" "list`." @@ -1572,7 +1578,7 @@ msgstr "" "De plus amples explications sont disponibles dans la FAQ à la question :ref:" "`faq-multidimensional-list`." -#: library/stdtypes.rst:942 +#: library/stdtypes.rst:962 msgid "" "If *i* or *j* is negative, the index is relative to the end of sequence *s*: " "``len(s) + i`` or ``len(s) + j`` is substituted. But note that ``-0`` is " @@ -1582,7 +1588,7 @@ msgstr "" "*s* : ``len(s) + i`` ou ``len(s) + j`` est substitué. Mais notez que ``-0`` " "est toujours ``0``." -#: library/stdtypes.rst:947 +#: library/stdtypes.rst:967 msgid "" "The slice of *s* from *i* to *j* is defined as the sequence of items with " "index *k* such that ``i <= k < j``. If *i* or *j* is greater than " @@ -1596,7 +1602,7 @@ msgstr "" "utilisé. Si *j* est omis ou ``None``, ``len(s)`` est utilisé. Si *i* est " "supérieure ou égale à *j*, la tranche est vide." -#: library/stdtypes.rst:954 +#: library/stdtypes.rst:974 msgid "" "The slice of *s* from *i* to *j* with step *k* is defined as the sequence of " "items with index ``x = i + n*k`` such that ``0 <= n < (j-i)/k``. In other " @@ -1619,7 +1625,7 @@ msgstr "" "Remarquez, *k* ne peut pas valoir zéro. Si *k* est ``None``, il est traité " "comme ``1``." -#: library/stdtypes.rst:965 +#: library/stdtypes.rst:985 msgid "" "Concatenating immutable sequences always results in a new object. This " "means that building up a sequence by repeated concatenation will have a " @@ -1632,7 +1638,7 @@ msgstr "" "totale. Pour obtenir un temps d'exécution linéaire, vous devez utiliser " "l'une des alternatives suivantes :" -#: library/stdtypes.rst:970 +#: library/stdtypes.rst:990 msgid "" "if concatenating :class:`str` objects, you can build a list and use :meth:" "`str.join` at the end or else write to an :class:`io.StringIO` instance and " @@ -1642,7 +1648,7 @@ msgstr "" "utiliser :meth:`str.join` à la fin, ou bien écrire dans une instance de :" "class:`io.StringIO` et récupérer sa valeur lorsque vous avez terminé" -#: library/stdtypes.rst:974 +#: library/stdtypes.rst:994 msgid "" "if concatenating :class:`bytes` objects, you can similarly use :meth:`bytes." "join` or :class:`io.BytesIO`, or you can do in-place concatenation with a :" @@ -1654,18 +1660,18 @@ msgstr "" "sur place avec un objet :class:`bytearray`. Les objets :class:`bytearray` " "sont muables et ont un mécanisme de sur-allocation efficace" -#: library/stdtypes.rst:979 +#: library/stdtypes.rst:999 msgid "if concatenating :class:`tuple` objects, extend a :class:`list` instead" msgstr "" "si vous concaténez des :class:`tuple`, utilisez plutôt *extend* sur une :" "class:`list`" -#: library/stdtypes.rst:981 +#: library/stdtypes.rst:1001 msgid "for other types, investigate the relevant class documentation" msgstr "" "pour d'autres types, cherchez dans la documentation de la classe concernée" -#: library/stdtypes.rst:985 +#: library/stdtypes.rst:1005 msgid "" "Some sequence types (such as :class:`range`) only support item sequences " "that follow specific patterns, and hence don't support sequence " @@ -1675,7 +1681,7 @@ msgstr "" "séquences qui suivent des modèles spécifiques, et donc ne prennent pas en " "charge la concaténation ou la répétition." -#: library/stdtypes.rst:990 +#: library/stdtypes.rst:1010 msgid "" "``index`` raises :exc:`ValueError` when *x* is not found in *s*. Not all " "implementations support passing the additional arguments *i* and *j*. These " @@ -1692,11 +1698,11 @@ msgstr "" "l'indice renvoyé alors relatif au début de la séquence plutôt qu'au début de " "la tranche." -#: library/stdtypes.rst:1001 +#: library/stdtypes.rst:1021 msgid "Immutable Sequence Types" msgstr "Types de séquences immuables" -#: library/stdtypes.rst:1008 +#: library/stdtypes.rst:1028 msgid "" "The only operation that immutable sequence types generally implement that is " "not also implemented by mutable sequence types is support for the :func:" @@ -1706,7 +1712,7 @@ msgstr "" "n'est pas implémentée par les types de séquences muables est le support de " "la fonction native :func:`hash`." -#: library/stdtypes.rst:1012 +#: library/stdtypes.rst:1032 msgid "" "This support allows immutable sequences, such as :class:`tuple` instances, " "to be used as :class:`dict` keys and stored in :class:`set` and :class:" @@ -1716,7 +1722,7 @@ msgstr "" "instances de :class:`tuple`, en tant que clés de :class:`dict` et stockées " "dans les instances de :class:`set` et :class:`frozenset`." -#: library/stdtypes.rst:1016 +#: library/stdtypes.rst:1036 msgid "" "Attempting to hash an immutable sequence that contains unhashable values " "will result in :exc:`TypeError`." @@ -1724,11 +1730,11 @@ msgstr "" "Essayer de hacher une séquence immuable qui contient des valeurs non-" "hachables lèvera une :exc:`TypeError`." -#: library/stdtypes.rst:1023 +#: library/stdtypes.rst:1043 msgid "Mutable Sequence Types" msgstr "Types de séquences muables" -#: library/stdtypes.rst:1030 +#: library/stdtypes.rst:1050 msgid "" "The operations in the following table are defined on mutable sequence types. " "The :class:`collections.abc.MutableSequence` ABC is provided to make it " @@ -1739,7 +1745,7 @@ msgstr "" "MutableSequence` est prévue pour faciliter l'implémentation correcte de ces " "opérations sur les types de séquence personnalisées." -#: library/stdtypes.rst:1034 +#: library/stdtypes.rst:1054 msgid "" "In the table *s* is an instance of a mutable sequence type, *t* is any " "iterable object and *x* is an arbitrary object that meets any type and value " @@ -1752,131 +1758,132 @@ msgstr "" "`bytearray` accepte uniquement des nombres entiers qui répondent à la " "restriction de la valeur ``0 <= x <= 255``)." -#: library/stdtypes.rst:1058 +#: library/stdtypes.rst:1078 msgid "``s[i] = x``" msgstr "``s[i] = x``" -#: library/stdtypes.rst:1058 +#: library/stdtypes.rst:1078 msgid "item *i* of *s* is replaced by *x*" msgstr "élément *i* de *s* est remplacé par *x*" -#: library/stdtypes.rst:1061 +#: library/stdtypes.rst:1081 msgid "``s[i:j] = t``" msgstr "``s[i:j] = t``" -#: library/stdtypes.rst:1061 +#: library/stdtypes.rst:1081 msgid "" "slice of *s* from *i* to *j* is replaced by the contents of the iterable *t*" msgstr "" "tranche de *s* de *i* à *j* est remplacée par le contenu de l'itérable *t*" -#: library/stdtypes.rst:1065 +#: library/stdtypes.rst:1085 msgid "``del s[i:j]``" msgstr "``del s[i:j]``" -#: library/stdtypes.rst:1065 +#: library/stdtypes.rst:1085 msgid "same as ``s[i:j] = []``" msgstr "identique à ``s[i:j] = []``" -#: library/stdtypes.rst:1067 +#: library/stdtypes.rst:1087 msgid "``s[i:j:k] = t``" msgstr "``s[i:j:k] = t``" -#: library/stdtypes.rst:1067 +#: library/stdtypes.rst:1087 msgid "the elements of ``s[i:j:k]`` are replaced by those of *t*" msgstr "les éléments de ``s[i:j:k]`` sont remplacés par ceux de *t*" -#: library/stdtypes.rst:1070 +#: library/stdtypes.rst:1090 msgid "``del s[i:j:k]``" msgstr "``del s[i:j:k]``" -#: library/stdtypes.rst:1070 +#: library/stdtypes.rst:1090 msgid "removes the elements of ``s[i:j:k]`` from the list" msgstr "supprime les éléments de ``s[i:j:k]`` de la liste" -#: library/stdtypes.rst:1073 +#: library/stdtypes.rst:1093 msgid "``s.append(x)``" msgstr "``s.append(x)``" -#: library/stdtypes.rst:1073 +#: library/stdtypes.rst:1093 msgid "" "appends *x* to the end of the sequence (same as ``s[len(s):len(s)] = [x]``)" msgstr "" "ajoute *x* à la fin de la séquence (identique à ``s[len(s):len(s)] = [x]``)" -#: library/stdtypes.rst:1077 +#: library/stdtypes.rst:1097 msgid "``s.clear()``" msgstr "``s.clear()``" -#: library/stdtypes.rst:1077 +#: library/stdtypes.rst:1097 msgid "removes all items from *s* (same as ``del s[:]``)" msgstr "supprime tous les éléments de *s* (identique à ``del s[:]``)" -#: library/stdtypes.rst:1080 +#: library/stdtypes.rst:1100 msgid "``s.copy()``" msgstr "``s.copy()``" -#: library/stdtypes.rst:1080 +#: library/stdtypes.rst:1100 msgid "creates a shallow copy of *s* (same as ``s[:]``)" msgstr "crée une copie superficielle de *s* (identique à ``s[:]``)" -#: library/stdtypes.rst:1083 +#: library/stdtypes.rst:1103 msgid "``s.extend(t)`` or ``s += t``" msgstr "``s.extend(t)`` or ``s += t``" -#: library/stdtypes.rst:1083 +#: library/stdtypes.rst:1103 msgid "" "extends *s* with the contents of *t* (for the most part the same as " "``s[len(s):len(s)] = t``)" msgstr "étend *s* avec le contenu de *t* (proche de ``s[len(s):len(s)] = t``)" -#: library/stdtypes.rst:1088 +#: library/stdtypes.rst:1108 msgid "``s *= n``" msgstr "``s *= n``" -#: library/stdtypes.rst:1088 +#: library/stdtypes.rst:1108 msgid "updates *s* with its contents repeated *n* times" msgstr "met à jour *s* avec son contenu répété *n* fois" -#: library/stdtypes.rst:1091 +#: library/stdtypes.rst:1111 msgid "``s.insert(i, x)``" msgstr "``s.insert(i, x)``" -#: library/stdtypes.rst:1091 +#: library/stdtypes.rst:1111 msgid "" "inserts *x* into *s* at the index given by *i* (same as ``s[i:i] = [x]``)" msgstr "" "insère *x* dans *s* à l'index donné par *i* (identique à ``s[i:i] = [x]``)" -#: library/stdtypes.rst:1095 -msgid "``s.pop([i])``" -msgstr "``s.pop([i])``" +#: library/stdtypes.rst:1115 +#, fuzzy +msgid "``s.pop()`` or ``s.pop(i)``" +msgstr "``s.extend(t)`` or ``s += t``" -#: library/stdtypes.rst:1095 +#: library/stdtypes.rst:1115 msgid "retrieves the item at *i* and also removes it from *s*" msgstr "récupère l'élément à *i* et le supprime de *s*" -#: library/stdtypes.rst:1098 +#: library/stdtypes.rst:1118 msgid "``s.remove(x)``" msgstr "``s.remove(x)``" -#: library/stdtypes.rst:1098 +#: library/stdtypes.rst:1118 msgid "remove the first item from *s* where ``s[i]`` is equal to *x*" msgstr "supprime le premier élément de *s* pour lequel ``s[i]`` est égal à *x*" -#: library/stdtypes.rst:1101 +#: library/stdtypes.rst:1121 msgid "``s.reverse()``" msgstr "``s.reverse()``" -#: library/stdtypes.rst:1101 +#: library/stdtypes.rst:1121 msgid "reverses the items of *s* in place" msgstr "inverse sur place les éléments de *s*" -#: library/stdtypes.rst:1109 +#: library/stdtypes.rst:1129 msgid "*t* must have the same length as the slice it is replacing." msgstr "*t* doit avoir la même longueur que la tranche qu'il remplace." -#: library/stdtypes.rst:1112 +#: library/stdtypes.rst:1132 msgid "" "The optional argument *i* defaults to ``-1``, so that by default the last " "item is removed and returned." @@ -1884,13 +1891,13 @@ msgstr "" "L'argument optionnel *i* vaut ``-1`` par défaut, afin que, par défaut, le " "dernier élément soit retiré et renvoyé." -#: library/stdtypes.rst:1116 +#: library/stdtypes.rst:1136 msgid ":meth:`remove` raises :exc:`ValueError` when *x* is not found in *s*." msgstr "" ":meth:`remove` lève une exception :exc:`ValueError` si *x* ne se trouve pas " "dans *s*." -#: library/stdtypes.rst:1119 +#: library/stdtypes.rst:1139 msgid "" "The :meth:`reverse` method modifies the sequence in place for economy of " "space when reversing a large sequence. To remind users that it operates by " @@ -1901,7 +1908,7 @@ msgstr "" "utilisateurs qu'elle a un effet de bord, elle ne renvoie pas la séquence " "inversée." -#: library/stdtypes.rst:1124 +#: library/stdtypes.rst:1144 msgid "" ":meth:`clear` and :meth:`!copy` are included for consistency with the " "interfaces of mutable containers that don't support slicing operations (such " @@ -1916,11 +1923,11 @@ msgstr "" "MutableSequence`, mais la plupart des classes implémentées gérant des " "séquences la proposent." -#: library/stdtypes.rst:1130 +#: library/stdtypes.rst:1150 msgid ":meth:`clear` and :meth:`!copy` methods." msgstr "méthodes :meth:`clear` et :meth:`!copy`." -#: library/stdtypes.rst:1134 +#: library/stdtypes.rst:1154 msgid "" "The value *n* is an integer, or an object implementing :meth:`~object." "__index__`. Zero and negative values of *n* clear the sequence. Items in " @@ -1933,11 +1940,11 @@ msgstr "" "référencés plusieurs fois, comme expliqué pour ``s * n`` dans :ref:`typesseq-" "common`." -#: library/stdtypes.rst:1143 +#: library/stdtypes.rst:1163 msgid "Lists" msgstr "Listes" -#: library/stdtypes.rst:1147 +#: library/stdtypes.rst:1167 msgid "" "Lists are mutable sequences, typically used to store collections of " "homogeneous items (where the precise degree of similarity will vary by " @@ -1947,32 +1954,32 @@ msgstr "" "des collections d'éléments homogènes (où le degré de similitude variera " "selon l'usage)." -#: library/stdtypes.rst:1153 +#: library/stdtypes.rst:1173 msgid "Lists may be constructed in several ways:" msgstr "Les listes peuvent être construites de différentes manières :" -#: library/stdtypes.rst:1155 +#: library/stdtypes.rst:1175 msgid "Using a pair of square brackets to denote the empty list: ``[]``" msgstr "" "En utilisant une paire de crochets pour indiquer une liste vide : ``[]``" -#: library/stdtypes.rst:1156 +#: library/stdtypes.rst:1176 msgid "" "Using square brackets, separating items with commas: ``[a]``, ``[a, b, c]``" msgstr "" "Au moyen de crochets, séparant les éléments par des virgules : ``[a]``, " "``[a, b, c]``" -#: library/stdtypes.rst:1157 +#: library/stdtypes.rst:1177 msgid "Using a list comprehension: ``[x for x in iterable]``" msgstr "En utilisant une liste en compréhension : ``[x for x in iterable]``" -#: library/stdtypes.rst:1158 +#: library/stdtypes.rst:1178 msgid "Using the type constructor: ``list()`` or ``list(iterable)``" msgstr "" "En utilisant le constructeur du type : ``list()`` ou ``list(iterable)``" -#: library/stdtypes.rst:1160 +#: library/stdtypes.rst:1180 msgid "" "The constructor builds a list whose items are the same and in the same order " "as *iterable*'s items. *iterable* may be either a sequence, a container " @@ -1990,7 +1997,7 @@ msgstr "" "``list( (1, 2, 3) )`` renvoie ``[1, 2, 3]``. Si aucun argument est donné, le " "constructeur crée une nouvelle liste vide, ``[]``." -#: library/stdtypes.rst:1169 +#: library/stdtypes.rst:1189 msgid "" "Many other operations also produce lists, including the :func:`sorted` built-" "in." @@ -1998,7 +2005,7 @@ msgstr "" "De nombreuses autres opérations produisent des listes, tel que la fonction " "native :func:`sorted`." -#: library/stdtypes.rst:1172 +#: library/stdtypes.rst:1192 msgid "" "Lists implement all of the :ref:`common ` and :ref:`mutable " "` sequence operations. Lists also provide the following " @@ -2008,7 +2015,7 @@ msgstr "" "` et :ref:`muables `. Les listes " "fournissent également la méthode supplémentaire suivante :" -#: library/stdtypes.rst:1178 +#: library/stdtypes.rst:1198 msgid "" "This method sorts the list in place, using only ``<`` comparisons between " "items. Exceptions are not suppressed - if any comparison operations fail, " @@ -2020,7 +2027,7 @@ msgstr "" "si n'importe quelle opération de comparaison échoue, le tri échouera (et la " "liste sera probablement laissée dans un état partiellement modifié)." -#: library/stdtypes.rst:1183 +#: library/stdtypes.rst:1203 msgid "" ":meth:`sort` accepts two arguments that can only be passed by keyword (:ref:" "`keyword-only arguments `):" @@ -2028,7 +2035,7 @@ msgstr "" ":meth:`sort` accepte deux arguments qui ne peuvent être fournis que par mot-" "clé (:ref:`keyword-only arguments `):" -#: library/stdtypes.rst:1186 +#: library/stdtypes.rst:1206 msgid "" "*key* specifies a function of one argument that is used to extract a " "comparison key from each list element (for example, ``key=str.lower``). The " @@ -2043,7 +2050,7 @@ msgstr "" "``None``, signifie que les éléments sont triés directement sans en calculer " "une valeur \"clé\" séparée." -#: library/stdtypes.rst:1193 +#: library/stdtypes.rst:1213 msgid "" "The :func:`functools.cmp_to_key` utility is available to convert a 2.x style " "*cmp* function to a *key* function." @@ -2051,7 +2058,7 @@ msgstr "" "La fonction utilitaire :func:`functools.cmp_to_key` est disponible pour " "convertir une fonction *cmp* du style 2.x à une fonction *key*." -#: library/stdtypes.rst:1196 +#: library/stdtypes.rst:1216 msgid "" "*reverse* is a boolean value. If set to ``True``, then the list elements " "are sorted as if each comparison were reversed." @@ -2059,7 +2066,7 @@ msgstr "" "*reverse*, une valeur booléenne. Si elle est ``True``, la liste d'éléments " "est triée comme si toutes les comparaisons étaient inversées." -#: library/stdtypes.rst:1199 +#: library/stdtypes.rst:1219 msgid "" "This method modifies the sequence in place for economy of space when sorting " "a large sequence. To remind users that it operates by side effect, it does " @@ -2071,7 +2078,7 @@ msgstr "" "bord, elle ne renvoie pas la séquence triée (utilisez :func:`sorted` pour " "demander explicitement une nouvelle instance de liste triée)." -#: library/stdtypes.rst:1204 +#: library/stdtypes.rst:1224 msgid "" "The :meth:`sort` method is guaranteed to be stable. A sort is stable if it " "guarantees not to change the relative order of elements that compare equal " @@ -2083,13 +2090,13 @@ msgstr "" "trier en plusieurs passes (par exemple, trier par département, puis par " "niveau de salaire)." -#: library/stdtypes.rst:1209 +#: library/stdtypes.rst:1229 msgid "" "For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`." msgstr "" "Pour des exemples de tris et un bref tutoriel, consultez :ref:`sortinghowto`." -#: library/stdtypes.rst:1213 +#: library/stdtypes.rst:1233 msgid "" "While a list is being sorted, the effect of attempting to mutate, or even " "inspect, the list is undefined. The C implementation of Python makes the " @@ -2101,11 +2108,11 @@ msgstr "" "liste comme vide pour la durée du traitement, et lève :exc:`ValueError` si " "elle détecte que la liste a été modifiée au cours du tri." -#: library/stdtypes.rst:1222 +#: library/stdtypes.rst:1242 msgid "Tuples" msgstr "Tuples" -#: library/stdtypes.rst:1226 +#: library/stdtypes.rst:1246 msgid "" "Tuples are immutable sequences, typically used to store collections of " "heterogeneous data (such as the 2-tuples produced by the :func:`enumerate` " @@ -2120,34 +2127,34 @@ msgstr "" "et immuable de données est nécessaire (pour, par exemple, les stocker dans " "un :class:`set` ou un :class:`dict`)." -#: library/stdtypes.rst:1234 +#: library/stdtypes.rst:1254 msgid "Tuples may be constructed in a number of ways:" msgstr "Les *n*-uplets peuvent être construits de différentes façons :" -#: library/stdtypes.rst:1236 +#: library/stdtypes.rst:1256 msgid "Using a pair of parentheses to denote the empty tuple: ``()``" msgstr "" "En utilisant une paire de parenthèses pour désigner le *n*-uplet vide : " "``()``" -#: library/stdtypes.rst:1237 +#: library/stdtypes.rst:1257 msgid "Using a trailing comma for a singleton tuple: ``a,`` or ``(a,)``" msgstr "" "En utilisant une virgule, pour créer un *n*-uplet d'un élément : ``a,`` ou " "``(a,)``" -#: library/stdtypes.rst:1238 +#: library/stdtypes.rst:1258 msgid "Separating items with commas: ``a, b, c`` or ``(a, b, c)``" msgstr "" "En séparant les éléments avec des virgules : ``a, b, c`` ou ``(a, b, c)``" -#: library/stdtypes.rst:1239 +#: library/stdtypes.rst:1259 msgid "Using the :func:`tuple` built-in: ``tuple()`` or ``tuple(iterable)``" msgstr "" "En utilisant la fonction native :func:`tuple` : ``tuple()`` ou " "``tuple(iterable)``" -#: library/stdtypes.rst:1241 +#: library/stdtypes.rst:1261 msgid "" "The constructor builds a tuple whose items are the same and in the same " "order as *iterable*'s items. *iterable* may be either a sequence, a " @@ -2165,7 +2172,7 @@ msgstr "" "3] )`` renvoie ``(1, 2, 3)``. Si aucun argument est donné, le constructeur " "crée un nouveau *n*-uplet vide, ``()``." -#: library/stdtypes.rst:1249 +#: library/stdtypes.rst:1269 msgid "" "Note that it is actually the comma which makes a tuple, not the parentheses. " "The parentheses are optional, except in the empty tuple case, or when they " @@ -2180,7 +2187,7 @@ msgstr "" "arguments, alors que ``f((a, b, c))`` est un appel de fonction avec un " "triplet comme unique argument." -#: library/stdtypes.rst:1255 +#: library/stdtypes.rst:1275 msgid "" "Tuples implement all of the :ref:`common ` sequence " "operations." @@ -2188,7 +2195,7 @@ msgstr "" "Les *n*-uplets implémentent toutes les opérations :ref:`communes ` des séquences." -#: library/stdtypes.rst:1258 +#: library/stdtypes.rst:1278 msgid "" "For heterogeneous collections of data where access by name is clearer than " "access by index, :func:`collections.namedtuple` may be a more appropriate " @@ -2198,11 +2205,11 @@ msgstr "" "clair que l'accès par index, :func:`collections.namedtuple` peut être un " "choix plus approprié qu'un simple *n*-uplet." -#: library/stdtypes.rst:1266 +#: library/stdtypes.rst:1286 msgid "Ranges" msgstr "*Ranges*" -#: library/stdtypes.rst:1270 +#: library/stdtypes.rst:1290 msgid "" "The :class:`range` type represents an immutable sequence of numbers and is " "commonly used for looping a specific number of times in :keyword:`for` loops." @@ -2211,7 +2218,7 @@ msgstr "" "couramment utilisé pour itérer un certain nombre de fois dans les boucles :" "keyword:`for`." -#: library/stdtypes.rst:1277 +#: library/stdtypes.rst:1297 msgid "" "The arguments to the range constructor must be integers (either built-in :" "class:`int` or any object that implements the ``__index__`` special " @@ -2225,7 +2232,7 @@ msgstr "" "valeur par défaut de l'argument *start* est ``0``. Si *step* est égal à " "zéro, une exception :exc:`ValueError` est levée." -#: library/stdtypes.rst:1283 +#: library/stdtypes.rst:1303 msgid "" "For a positive *step*, the contents of a range ``r`` are determined by the " "formula ``r[i] = start + step*i`` where ``i >= 0`` and ``r[i] < stop``." @@ -2233,7 +2240,7 @@ msgstr "" "Pour un *step* positif, le contenu d'un *range* ``r`` est déterminé par la " "formule ``r[i] = start + step*i`` où ``i >= 0`` et ``r[i] < stop``." -#: library/stdtypes.rst:1287 +#: library/stdtypes.rst:1307 msgid "" "For a negative *step*, the contents of the range are still determined by the " "formula ``r[i] = start + step*i``, but the constraints are ``i >= 0`` and " @@ -2243,7 +2250,7 @@ msgstr "" "formule ``r[i] = start + step*i``, mais les contraintes sont ``i >= 0`` et " "``r[i] > stop``." -#: library/stdtypes.rst:1291 +#: library/stdtypes.rst:1311 msgid "" "A range object will be empty if ``r[0]`` does not meet the value constraint. " "Ranges do support negative indices, but these are interpreted as indexing " @@ -2254,7 +2261,7 @@ msgstr "" "sont interprétées comme une indexation de la fin de la séquence déterminée " "par les indices positifs." -#: library/stdtypes.rst:1296 +#: library/stdtypes.rst:1316 msgid "" "Ranges containing absolute values larger than :data:`sys.maxsize` are " "permitted but some features (such as :func:`len`) may raise :exc:" @@ -2264,11 +2271,11 @@ msgstr "" "maxsize` sont permises, mais certaines fonctionnalités (comme :func:`len`) " "peuvent lever :exc:`OverflowError`." -#: library/stdtypes.rst:1300 +#: library/stdtypes.rst:1320 msgid "Range examples::" msgstr "Exemples avec *range* ::" -#: library/stdtypes.rst:1317 +#: library/stdtypes.rst:1337 msgid "" "Ranges implement all of the :ref:`common ` sequence " "operations except concatenation and repetition (due to the fact that range " @@ -2281,25 +2288,25 @@ msgstr "" "strict et que la répétition et la concaténation les feraient dévier de ce " "motif)." -#: library/stdtypes.rst:1324 +#: library/stdtypes.rst:1344 msgid "" "The value of the *start* parameter (or ``0`` if the parameter was not " "supplied)" msgstr "" "La valeur du paramètre *start* (ou ``0`` si le paramètre n'a pas été fourni)" -#: library/stdtypes.rst:1329 +#: library/stdtypes.rst:1349 msgid "The value of the *stop* parameter" msgstr "La valeur du paramètre *stop*" -#: library/stdtypes.rst:1333 +#: library/stdtypes.rst:1353 msgid "" "The value of the *step* parameter (or ``1`` if the parameter was not " "supplied)" msgstr "" "La valeur du paramètre *step* (ou ``1`` si le paramètre n'a pas été fourni)" -#: library/stdtypes.rst:1336 +#: library/stdtypes.rst:1356 msgid "" "The advantage of the :class:`range` type over a regular :class:`list` or :" "class:`tuple` is that a :class:`range` object will always take the same " @@ -2313,7 +2320,7 @@ msgstr "" "(car elle ne stocke que les valeurs ``start``, ``stop`` et ``step`` , le " "calcul des éléments individuels et les sous-intervalles au besoin)." -#: library/stdtypes.rst:1342 +#: library/stdtypes.rst:1362 msgid "" "Range objects implement the :class:`collections.abc.Sequence` ABC, and " "provide features such as containment tests, element index lookup, slicing " @@ -2324,7 +2331,7 @@ msgstr "" "(avec *in*), de recherche par index, le tranchage et ils gèrent les indices " "négatifs (voir :ref:`typesseq`):" -#: library/stdtypes.rst:1362 +#: library/stdtypes.rst:1382 msgid "" "Testing range objects for equality with ``==`` and ``!=`` compares them as " "sequences. That is, two range objects are considered equal if they " @@ -2340,7 +2347,7 @@ msgstr "" "et :attr:`~range.step` différents, par exemple ``range(0) == range(2, 1, " "3)`` ou ``range(0, 3, 2) == range(0, 4, 2)``.)" -#: library/stdtypes.rst:1369 +#: library/stdtypes.rst:1389 msgid "" "Implement the Sequence ABC. Support slicing and negative indices. Test :" "class:`int` objects for membership in constant time instead of iterating " @@ -2350,7 +2357,7 @@ msgstr "" "les indices négatifs. Tester l'appartenance d'un :class:`int` en temps " "constant au lieu d'itérer tous les éléments." -#: library/stdtypes.rst:1375 +#: library/stdtypes.rst:1395 msgid "" "Define '==' and '!=' to compare range objects based on the sequence of " "values they define (instead of comparing based on object identity)." @@ -2359,7 +2366,7 @@ msgstr "" "qu'ils définissent (au lieu d'une comparaison fondée sur l'identité de " "l'objet)." -#: library/stdtypes.rst:1380 +#: library/stdtypes.rst:1400 msgid "" "The :attr:`~range.start`, :attr:`~range.stop` and :attr:`~range.step` " "attributes." @@ -2367,7 +2374,7 @@ msgstr "" "Les attributs :attr:`~range.start`, :attr:`~range.stop` et :attr:`~range." "step`." -#: library/stdtypes.rst:1386 +#: library/stdtypes.rst:1406 msgid "" "The `linspace recipe `_ shows " "how to implement a lazy version of range suitable for floating point " @@ -2377,11 +2384,11 @@ msgstr "" "comment implémenter une version paresseuse de *range* adaptée aux nombres à " "virgule flottante." -#: library/stdtypes.rst:1398 +#: library/stdtypes.rst:1418 msgid "Text Sequence Type --- :class:`str`" msgstr "Type Séquence de Texte — :class:`str`" -#: library/stdtypes.rst:1400 +#: library/stdtypes.rst:1420 msgid "" "Textual data in Python is handled with :class:`str` objects, or :dfn:" "`strings`. Strings are immutable :ref:`sequences ` of Unicode code " @@ -2392,15 +2399,15 @@ msgstr "" "immuables de points de code Unicode. Les chaînes littérales peuvent être " "écrites de différentes manières :" -#: library/stdtypes.rst:1405 +#: library/stdtypes.rst:1425 msgid "Single quotes: ``'allows embedded \"double\" quotes'``" msgstr "Les guillemets simples : ``'autorisent les \"guillemets\"'``" -#: library/stdtypes.rst:1406 +#: library/stdtypes.rst:1426 msgid "Double quotes: ``\"allows embedded 'single' quotes\"``." msgstr "Les guillemets : ``\"autorisent les guillemets 'simples'\"``." -#: library/stdtypes.rst:1407 +#: library/stdtypes.rst:1427 msgid "" "Triple quoted: ``'''Three single quotes'''``, ``\"\"\"Three double quotes" "\"\"\"``" @@ -2408,7 +2415,7 @@ msgstr "" "Guillemets triples : ``'''Trois guillemets simples'''``, ``\"\"\"Trois " "guillemets\"\"\"``" -#: library/stdtypes.rst:1409 +#: library/stdtypes.rst:1429 msgid "" "Triple quoted strings may span multiple lines - all associated whitespace " "will be included in the string literal." @@ -2416,7 +2423,7 @@ msgstr "" "Les chaînes entre triple guillemets peuvent couvrir plusieurs lignes, tous " "les espaces associés seront inclus dans la chaîne littérale." -#: library/stdtypes.rst:1412 +#: library/stdtypes.rst:1432 msgid "" "String literals that are part of a single expression and have only " "whitespace between them will be implicitly converted to a single string " @@ -2426,7 +2433,7 @@ msgstr "" "seulement des espaces entre elles sont implicitement converties en une seule " "chaîne littérale. Autrement dit, ``(\"spam \" \"eggs\") == \"spam eggs\"``." -#: library/stdtypes.rst:1416 +#: library/stdtypes.rst:1436 msgid "" "See :ref:`strings` for more about the various forms of string literal, " "including supported escape sequences, and the ``r`` (\"raw\") prefix that " @@ -2437,7 +2444,7 @@ msgstr "" "et le préfixe ``r`` (*raw* (brut)) qui désactive la plupart des traitements " "de séquence d'échappement." -#: library/stdtypes.rst:1420 +#: library/stdtypes.rst:1440 msgid "" "Strings may also be created from other objects using the :class:`str` " "constructor." @@ -2445,7 +2452,7 @@ msgstr "" "Les chaînes peuvent également être créés à partir d'autres objets à l'aide " "du constructeur :class:`str`." -#: library/stdtypes.rst:1423 +#: library/stdtypes.rst:1443 msgid "" "Since there is no separate \"character\" type, indexing a string produces " "strings of length 1. That is, for a non-empty string *s*, ``s[0] == s[0:1]``." @@ -2454,7 +2461,7 @@ msgstr "" "produit des chaînes de longueur 1. Autrement dit, pour une chaîne non vide " "*s*, ``s[0] == s[0:1]``." -#: library/stdtypes.rst:1429 +#: library/stdtypes.rst:1449 msgid "" "There is also no mutable string type, but :meth:`str.join` or :class:`io." "StringIO` can be used to efficiently construct strings from multiple " @@ -2464,7 +2471,7 @@ msgstr "" "StringIO` peuvent être utilisées pour construire efficacement des chaînes à " "partir de plusieurs fragments." -#: library/stdtypes.rst:1433 +#: library/stdtypes.rst:1453 msgid "" "For backwards compatibility with the Python 2 series, the ``u`` prefix is " "once again permitted on string literals. It has no effect on the meaning of " @@ -2474,7 +2481,7 @@ msgstr "" "est à nouveau autorisé sur les chaînes littérales. Elle n'a aucun effet sur " "le sens des chaînes littérales et ne peut être combiné avec le préfixe ``r``." -#: library/stdtypes.rst:1445 +#: library/stdtypes.rst:1465 msgid "" "Return a :ref:`string ` version of *object*. If *object* is not " "provided, returns the empty string. Otherwise, the behavior of ``str()`` " @@ -2484,7 +2491,7 @@ msgstr "" "n'est pas fourni, renvoie une chaîne vide. Sinon, le comportement de " "``str()`` dépend de si *encoding* ou *errors* sont donnés, voir l'exemple." -#: library/stdtypes.rst:1449 +#: library/stdtypes.rst:1469 msgid "" "If neither *encoding* nor *errors* is given, ``str(object)`` returns :meth:" "`object.__str__() `, which is the \"informal\" or nicely " @@ -2498,7 +2505,7 @@ msgstr "" "chaîne elle-même. Si *object* n'a pas de méthode :meth:`~object.__str__`, :" "func:`str` utilise :meth:`repr(object) `." -#: library/stdtypes.rst:1460 +#: library/stdtypes.rst:1480 msgid "" "If at least one of *encoding* or *errors* is given, *object* should be a :" "term:`bytes-like object` (e.g. :class:`bytes` or :class:`bytearray`). In " @@ -2518,7 +2525,7 @@ msgstr "" "`binaryseq` et :ref:`bufferobjects` pour plus d'informations sur les " "*buffers*." -#: library/stdtypes.rst:1469 +#: library/stdtypes.rst:1489 msgid "" "Passing a :class:`bytes` object to :func:`str` without the *encoding* or " "*errors* arguments falls under the first case of returning the informal " @@ -2530,7 +2537,7 @@ msgstr "" "informelle de la chaîne est renvoyé (voir aussi l'option :option:`-b` de " "Python). Par exemple ::" -#: library/stdtypes.rst:1477 +#: library/stdtypes.rst:1497 msgid "" "For more information on the ``str`` class and its methods, see :ref:" "`textseq` and the :ref:`string-methods` section below. To output formatted " @@ -2542,11 +2549,11 @@ msgstr "" "de caractères, voir les sections :ref:`f-strings` et :ref:`formatstrings`. " "La section :ref:`stringservices` contient aussi des informations." -#: library/stdtypes.rst:1489 +#: library/stdtypes.rst:1509 msgid "String Methods" msgstr "Méthodes de chaînes de caractères" -#: library/stdtypes.rst:1494 +#: library/stdtypes.rst:1514 msgid "" "Strings implement all of the :ref:`common ` sequence " "operations, along with the additional methods described below." @@ -2554,7 +2561,7 @@ msgstr "" "Les chaînes implémentent toutes les opérations :ref:`communes des séquences " "`, ainsi que les autres méthodes décrites ci-dessous." -#: library/stdtypes.rst:1497 +#: library/stdtypes.rst:1517 msgid "" "Strings also support two styles of string formatting, one providing a large " "degree of flexibility and customization (see :meth:`str.format`, :ref:" @@ -2570,7 +2577,7 @@ msgstr "" "difficile à utiliser correctement, mais il est souvent plus rapide pour les " "cas, il peut gérer (:ref:`old-string-formatting`)." -#: library/stdtypes.rst:1504 +#: library/stdtypes.rst:1524 msgid "" "The :ref:`textservices` section of the standard library covers a number of " "other modules that provide various text related utilities (including regular " @@ -2580,7 +2587,7 @@ msgstr "" "nombre d'autres modules qui fournissent différents services relatifs au " "texte (y compris les expressions régulières dans le module :mod:`re`)." -#: library/stdtypes.rst:1510 +#: library/stdtypes.rst:1530 msgid "" "Return a copy of the string with its first character capitalized and the " "rest lowercased." @@ -2588,7 +2595,7 @@ msgstr "" "Renvoie une copie de la chaîne avec son premier caractère en majuscule et le " "reste en minuscule." -#: library/stdtypes.rst:1513 +#: library/stdtypes.rst:1533 msgid "" "The first character is now put into titlecase rather than uppercase. This " "means that characters like digraphs will only have their first letter " @@ -2598,7 +2605,7 @@ msgstr "" "majuscule. Cela veut dire que les caractères comme les digrammes auront " "seulement leur première lettre en majuscule, au lieu du caractère en entier." -#: library/stdtypes.rst:1520 +#: library/stdtypes.rst:1540 msgid "" "Return a casefolded copy of the string. Casefolded strings may be used for " "caseless matching." @@ -2606,7 +2613,7 @@ msgstr "" "Renvoie une copie *casefolded* de la chaîne. Les chaînes *casefolded* " "peuvent être utilisées dans des comparaison insensibles à la casse." -#: library/stdtypes.rst:1523 +#: library/stdtypes.rst:1543 msgid "" "Casefolding is similar to lowercasing but more aggressive because it is " "intended to remove all case distinctions in a string. For example, the " @@ -2620,7 +2627,7 @@ msgstr "" "Comme il est déjà minuscule, :meth:`lower` ferait rien à ``'ß'``; :meth:" "`casefold` le convertit en ``\"ss\"``." -#: library/stdtypes.rst:1529 +#: library/stdtypes.rst:1549 msgid "" "The casefolding algorithm is described in section 3.13 of the Unicode " "Standard." @@ -2628,7 +2635,7 @@ msgstr "" "L'algorithme de *casefolding* est décrit dans la section 3.13 de la norme " "Unicode." -#: library/stdtypes.rst:1537 +#: library/stdtypes.rst:1557 msgid "" "Return centered in a string of length *width*. Padding is done using the " "specified *fillchar* (default is an ASCII space). The original string is " @@ -2639,7 +2646,7 @@ msgstr "" "ASCII). La chaîne d'origine est renvoyée si *width* est inférieur ou égale à " "``len(s)``." -#: library/stdtypes.rst:1545 +#: library/stdtypes.rst:1565 msgid "" "Return the number of non-overlapping occurrences of substring *sub* in the " "range [*start*, *end*]. Optional arguments *start* and *end* are " @@ -2649,7 +2656,7 @@ msgstr "" "[*start*, *end*]. Les arguments facultatifs *start* et *end* sont " "interprétés comme pour des *slices*." -#: library/stdtypes.rst:1552 +#: library/stdtypes.rst:1572 msgid "" "Return an encoded version of the string as a bytes object. Default encoding " "is ``'utf-8'``. *errors* may be given to set a different error handling " @@ -2670,22 +2677,24 @@ msgstr "" "`error-handlers`. Pour une liste des encodages possibles, voir la section :" "ref:`standard-encodings`." -#: library/stdtypes.rst:1561 +#: library/stdtypes.rst:1581 msgid "" "By default, the *errors* argument is not checked for best performances, but " "only used at the first encoding error. Enable the :ref:`Python Development " -"Mode `, or use a debug build to check *errors*." +"Mode `, or use a :ref:`debug build ` to check *errors*." msgstr "" -#: library/stdtypes.rst:1565 +#: library/stdtypes.rst:1586 msgid "Support for keyword arguments added." msgstr "Gestion des arguments par mot clef." -#: library/stdtypes.rst:2703 -msgid "The *errors* is now checked in development mode and in debug mode." +#: library/stdtypes.rst:2725 +msgid "" +"The *errors* is now checked in development mode and in :ref:`debug mode " +"`." msgstr "" -#: library/stdtypes.rst:1574 +#: library/stdtypes.rst:1596 msgid "" "Return ``True`` if the string ends with the specified *suffix*, otherwise " "return ``False``. *suffix* can also be a tuple of suffixes to look for. " @@ -2698,7 +2707,7 @@ msgstr "" "position. Si l'argument optionnel *end* est fourni, la comparaison s'arrête " "à cette position." -#: library/stdtypes.rst:1582 +#: library/stdtypes.rst:1604 msgid "" "Return a copy of the string where all tab characters are replaced by one or " "more spaces, depending on the current column and the given tab size. Tab " @@ -2728,7 +2737,7 @@ msgstr "" "et la colonne en cours est incrémentée de un indépendamment de la façon dont " "le caractère est représenté lors de l'affichage." -#: library/stdtypes.rst:1603 +#: library/stdtypes.rst:1625 msgid "" "Return the lowest index in the string where substring *sub* is found within " "the slice ``s[start:end]``. Optional arguments *start* and *end* are " @@ -2739,7 +2748,7 @@ msgstr "" "interprétés comme dans la notation des *slice*. Donne ``-1`` si *sub* n'est " "pas trouvé." -#: library/stdtypes.rst:1609 +#: library/stdtypes.rst:1631 msgid "" "The :meth:`~str.find` method should be used only if you need to know the " "position of *sub*. To check if *sub* is a substring or not, use the :" @@ -2749,7 +2758,7 @@ msgstr "" "de connaître la position de *sub*. Pour vérifier si *sub* est une sous " "chaine ou non, utilisez l'opérateur :keyword:`in` ::" -#: library/stdtypes.rst:1619 +#: library/stdtypes.rst:1641 msgid "" "Perform a string formatting operation. The string on which this method is " "called can contain literal text or replacement fields delimited by braces " @@ -2765,7 +2774,7 @@ msgstr "" "clé. Renvoie une copie de la chaîne où chaque champ de remplacement est " "remplacé par la valeur de chaîne de l'argument correspondant." -#: library/stdtypes.rst:1629 +#: library/stdtypes.rst:1651 msgid "" "See :ref:`formatstrings` for a description of the various formatting options " "that can be specified in format strings." @@ -2773,7 +2782,7 @@ msgstr "" "Voir :ref:`formatstrings` pour une description des options de formatage qui " "peuvent être spécifiées dans les chaînes de format." -#: library/stdtypes.rst:1633 +#: library/stdtypes.rst:1655 msgid "" "When formatting a number (:class:`int`, :class:`float`, :class:`complex`, :" "class:`decimal.Decimal` and subclasses) with the ``n`` type (ex: ``'{:n}'." @@ -2792,7 +2801,7 @@ msgstr "" "est différent de ``LC_CTYPE``. Ce changement temporaire affecte les autres " "fils d'exécution." -#: library/stdtypes.rst:1642 +#: library/stdtypes.rst:1664 msgid "" "When formatting a number with the ``n`` type, the function sets temporarily " "the ``LC_CTYPE`` locale to the ``LC_NUMERIC`` locale in some cases." @@ -2801,7 +2810,7 @@ msgstr "" "temporairement ``LC_CTYPE`` par la valeur de ``LC_NUMERIC`` dans certains " "cas." -#: library/stdtypes.rst:1650 +#: library/stdtypes.rst:1672 msgid "" "Similar to ``str.format(**mapping)``, except that ``mapping`` is used " "directly and not copied to a :class:`dict`. This is useful if for example " @@ -2811,7 +2820,7 @@ msgstr "" "directement et non copié dans un :class:`dict`. C'est utile si, par exemple " "``mapping`` est une sous-classe de ``dict`` :" -#: library/stdtypes.rst:1666 +#: library/stdtypes.rst:1688 msgid "" "Like :meth:`~str.find`, but raise :exc:`ValueError` when the substring is " "not found." @@ -2819,7 +2828,7 @@ msgstr "" "Comme :meth:`~str.find`, mais lève une :exc:`ValueError` lorsque la chaîne " "est introuvable." -#: library/stdtypes.rst:1672 +#: library/stdtypes.rst:1694 msgid "" "Return ``True`` if all characters in the string are alphanumeric and there " "is at least one character, ``False`` otherwise. A character ``c`` is " @@ -2831,7 +2840,7 @@ msgstr "" "alphanumérique si l'un des tests suivants renvoie ``True`` : ``c." "isalpha()``, ``c.isdecimal()``, ``c.isdigit()`` ou ``c.isnumeric()``." -#: library/stdtypes.rst:1680 +#: library/stdtypes.rst:1702 msgid "" "Return ``True`` if all characters in the string are alphabetic and there is " "at least one character, ``False`` otherwise. Alphabetic characters are " @@ -2847,7 +2856,7 @@ msgstr "" "\"Lu\", \"Ll\" ou \"Lo\" comme catégorie générale. Notez que ceci est " "différent de la propriété *Alphabetic* définie dans la norme Unicode." -#: library/stdtypes.rst:1689 +#: library/stdtypes.rst:1711 msgid "" "Return ``True`` if the string is empty or all characters in the string are " "ASCII, ``False`` otherwise. ASCII characters have code points in the range U" @@ -2857,7 +2866,7 @@ msgstr "" "ASCII, ``False`` sinon. Les caractères ASCII ont un code dans l'intervalle ``" "\"U+0000\"``\\ ---\\ ``\"U+007F\"``." -#: library/stdtypes.rst:1698 +#: library/stdtypes.rst:1720 msgid "" "Return ``True`` if all characters in the string are decimal characters and " "there is at least one character, ``False`` otherwise. Decimal characters are " @@ -2871,7 +2880,7 @@ msgstr "" "en base 10, tels que U+0660, ARABIC-INDIC DIGIT ZERO. Spécifiquement, un " "caractère décimal est un caractère dans la catégorie Unicode générale \"Nd\"." -#: library/stdtypes.rst:1708 +#: library/stdtypes.rst:1730 msgid "" "Return ``True`` if all characters in the string are digits and there is at " "least one character, ``False`` otherwise. Digits include decimal characters " @@ -2889,7 +2898,7 @@ msgstr "" "chiffre est un caractère dont la valeur de la propriété *Numeric_Type* est " "*Digit* ou *Decimal*." -#: library/stdtypes.rst:1718 +#: library/stdtypes.rst:1740 msgid "" "Return ``True`` if the string is a valid identifier according to the " "language definition, section :ref:`identifiers`." @@ -2897,7 +2906,7 @@ msgstr "" "Renvoie ``True`` si la chaîne est un identifiant valide selon la définition " "du langage, section :ref:`identifiers`." -#: library/stdtypes.rst:1721 +#: library/stdtypes.rst:1743 msgid "" "Call :func:`keyword.iskeyword` to test whether string ``s`` is a reserved " "identifier, such as :keyword:`def` and :keyword:`class`." @@ -2905,11 +2914,11 @@ msgstr "" "Utilisez :func:`keyword.iskeyword` pour savoir si la chaîne ``s`` est un " "identifiant réservé, tels que :keyword:`def` et :keyword:`class`." -#: library/stdtypes.rst:1724 +#: library/stdtypes.rst:1746 msgid "Example: ::" msgstr "Par exemple ::" -#: library/stdtypes.rst:1737 +#: library/stdtypes.rst:1759 msgid "" "Return ``True`` if all cased characters [4]_ in the string are lowercase and " "there is at least one cased character, ``False`` otherwise." @@ -2918,7 +2927,7 @@ msgstr "" "sont en minuscules et qu'elle contient au moins un caractère capitalisable. " "Renvoie ``False`` dans le cas contraire." -#: library/stdtypes.rst:1743 +#: library/stdtypes.rst:1765 msgid "" "Return ``True`` if all characters in the string are numeric characters, and " "there is at least one character, ``False`` otherwise. Numeric characters " @@ -2935,7 +2944,7 @@ msgstr "" "les priorités *Numeric_Type=Digit*, *Numeric_Type=Decimal*, ou " "*Numeric_Type=Numeric*." -#: library/stdtypes.rst:1753 +#: library/stdtypes.rst:1775 msgid "" "Return ``True`` if all characters in the string are printable or the string " "is empty, ``False`` otherwise. Nonprintable characters are those characters " @@ -2954,7 +2963,7 @@ msgstr "" "`repr` est invoquée sur une chaîne. Ça n'a aucune incidence sur le " "traitement des chaînes écrites sur :data:`sys.stdout` ou :data:`sys.stderr`.)" -#: library/stdtypes.rst:1764 +#: library/stdtypes.rst:1786 msgid "" "Return ``True`` if there are only whitespace characters in the string and " "there is at least one character, ``False`` otherwise." @@ -2963,7 +2972,7 @@ msgstr "" "et qu'il y a au moins un autre caractère. Renvoie ``False`` dans le cas " "contraire." -#: library/stdtypes.rst:1767 +#: library/stdtypes.rst:1789 msgid "" "A character is *whitespace* if in the Unicode character database (see :mod:" "`unicodedata`), either its general category is ``Zs`` (\"Separator, space" @@ -2974,7 +2983,7 @@ msgstr "" "`unicodedata`) sa catégorie générale est ``Zs`` (« séparateur, espace »), ou " "sa classe bidirectionnelle est une de ``WS``, ``B``, ou ``S``." -#: library/stdtypes.rst:1775 +#: library/stdtypes.rst:1797 msgid "" "Return ``True`` if the string is a titlecased string and there is at least " "one character, for example uppercase characters may only follow uncased " @@ -2987,7 +2996,7 @@ msgstr "" "minuscules ne peuvent suivre que des caractères capitalisables. Renvoie " "``False`` dans le cas contraire." -#: library/stdtypes.rst:1782 +#: library/stdtypes.rst:1804 msgid "" "Return ``True`` if all cased characters [4]_ in the string are uppercase and " "there is at least one cased character, ``False`` otherwise." @@ -2996,7 +3005,7 @@ msgstr "" "la chaîne sont en majuscules et il y a au moins un caractère différentiable " "sur la casse, sinon ``False``." -#: library/stdtypes.rst:1798 +#: library/stdtypes.rst:1820 msgid "" "Return a string which is the concatenation of the strings in *iterable*. A :" "exc:`TypeError` will be raised if there are any non-string values in " @@ -3008,7 +3017,7 @@ msgstr "" "pas une chaîne, y compris pour les objets :class:`bytes`. Le séparateur " "entre les éléments est la chaîne fournissant cette méthode." -#: library/stdtypes.rst:1806 +#: library/stdtypes.rst:1828 msgid "" "Return the string left justified in a string of length *width*. Padding is " "done using the specified *fillchar* (default is an ASCII space). The " @@ -3019,7 +3028,7 @@ msgstr "" "ASCII). La chaîne d'origine est renvoyée si *width* est inférieur ou égale à " "``len(s)``." -#: library/stdtypes.rst:1813 +#: library/stdtypes.rst:1835 msgid "" "Return a copy of the string with all the cased characters [4]_ converted to " "lowercase." @@ -3027,7 +3036,7 @@ msgstr "" "Renvoie une copie de la chaîne avec tous les caractères capitalisables [4]_ " "convertis en minuscules." -#: library/stdtypes.rst:1816 +#: library/stdtypes.rst:1838 msgid "" "The lowercasing algorithm used is described in section 3.13 of the Unicode " "Standard." @@ -3035,7 +3044,7 @@ msgstr "" "L'algorithme de mise en minuscules utilisé est décrit dans la section 3.13 " "de la norme Unicode." -#: library/stdtypes.rst:1822 +#: library/stdtypes.rst:1844 msgid "" "Return a copy of the string with leading characters removed. The *chars* " "argument is a string specifying the set of characters to be removed. If " @@ -3049,13 +3058,13 @@ msgstr "" "des espaces. L'argument *chars* n'est pas un préfixe, toutes les " "combinaisons de ses valeurs sont supprimées ::" -#: library/stdtypes.rst:1832 +#: library/stdtypes.rst:1854 msgid "" "See :meth:`str.removeprefix` for a method that will remove a single prefix " "string rather than all of a set of characters. For example::" msgstr "" -#: library/stdtypes.rst:1843 +#: library/stdtypes.rst:1865 msgid "" "This static method returns a translation table usable for :meth:`str." "translate`." @@ -3063,7 +3072,7 @@ msgstr "" "Cette méthode statique renvoie une table de traduction utilisable pour :meth:" "`str.translate`." -#: library/stdtypes.rst:1845 +#: library/stdtypes.rst:1867 msgid "" "If there is only one argument, it must be a dictionary mapping Unicode " "ordinals (integers) or characters (strings of length 1) to Unicode ordinals, " @@ -3074,7 +3083,7 @@ msgstr "" "correspondre des points de code Unicode (nombres entiers) ou des caractères " "(chaînes de longueur 1) à des points de code Unicode." -#: library/stdtypes.rst:1850 +#: library/stdtypes.rst:1872 msgid "" "If there are two arguments, they must be strings of equal length, and in the " "resulting dictionary, each character in x will be mapped to the character at " @@ -3087,7 +3096,7 @@ msgstr "" "argument est fourni, ce doit être une chaîne dont chaque caractère " "correspondra à ``None`` dans le résultat." -#: library/stdtypes.rst:1858 +#: library/stdtypes.rst:1880 msgid "" "Split the string at the first occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself, and the part " @@ -3099,7 +3108,7 @@ msgstr "" "partie après le séparateur. Si le séparateur n'est pas trouvé, le triplet " "contiendra la chaîne elle-même, suivie de deux chaînes vides." -#: library/stdtypes.rst:1866 +#: library/stdtypes.rst:1888 msgid "" "If the string starts with the *prefix* string, return " "``string[len(prefix):]``. Otherwise, return a copy of the original string::" @@ -3107,7 +3116,7 @@ msgstr "" "Si la chaîne de caractères commence par la chaîne *prefix*, renvoie " "``string[len(prefix):]``. Sinon, renvoie une copie de la chaîne originale ::" -#: library/stdtypes.rst:1880 +#: library/stdtypes.rst:1902 msgid "" "If the string ends with the *suffix* string and that *suffix* is not empty, " "return ``string[:-len(suffix)]``. Otherwise, return a copy of the original " @@ -3117,7 +3126,7 @@ msgstr "" "*suffix* n'est pas vide, renvoie ``string[:-len(suffix)]``. Sinon, renvoie " "une copie de la chaîne originale ::" -#: library/stdtypes.rst:1894 +#: library/stdtypes.rst:1916 msgid "" "Return a copy of the string with all occurrences of substring *old* replaced " "by *new*. If the optional argument *count* is given, only the first *count* " @@ -3127,7 +3136,7 @@ msgstr "" "chaîne *old* sont remplacés par *new*. Si l'argument optionnel *count* est " "donné, seules les *count* premières occurrences sont remplacées." -#: library/stdtypes.rst:1901 +#: library/stdtypes.rst:1923 msgid "" "Return the highest index in the string where substring *sub* is found, such " "that *sub* is contained within ``s[start:end]``. Optional arguments *start* " @@ -3138,7 +3147,7 @@ msgstr "" "arguments facultatifs *start* et *end* sont interprétés comme dans la " "notation des *slices*. Donne ``-1`` en cas d'échec." -#: library/stdtypes.rst:1908 +#: library/stdtypes.rst:1930 msgid "" "Like :meth:`rfind` but raises :exc:`ValueError` when the substring *sub* is " "not found." @@ -3146,7 +3155,7 @@ msgstr "" "Comme :meth:`rfind` mais lève une exception :exc:`ValueError` lorsque la " "sous-chaîne *sub* est introuvable." -#: library/stdtypes.rst:1914 +#: library/stdtypes.rst:1936 msgid "" "Return the string right justified in a string of length *width*. Padding is " "done using the specified *fillchar* (default is an ASCII space). The " @@ -3157,7 +3166,7 @@ msgstr "" "défaut est un espace ASCII). La chaîne d'origine est renvoyée si *width* est " "inférieure ou égale à ``len(s)``." -#: library/stdtypes.rst:1921 +#: library/stdtypes.rst:1943 msgid "" "Split the string at the last occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself, and the part " @@ -3169,7 +3178,7 @@ msgstr "" "partie après le séparateur. Si le séparateur n'est pas trouvé, le triplet " "contiendra deux chaînes vides, puis par la chaîne elle-même." -#: library/stdtypes.rst:1929 +#: library/stdtypes.rst:1951 msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done, the " @@ -3184,7 +3193,7 @@ msgstr "" "par la droite, :meth:`rsplit` se comporte comme :meth:`split` qui est décrit " "en détail ci-dessous." -#: library/stdtypes.rst:1938 +#: library/stdtypes.rst:1960 msgid "" "Return a copy of the string with trailing characters removed. The *chars* " "argument is a string specifying the set of characters to be removed. If " @@ -3198,13 +3207,13 @@ msgstr "" "L'argument *chars* n'est pas un suffixe : toutes les combinaisons de ses " "valeurs sont retirées ::" -#: library/stdtypes.rst:1948 +#: library/stdtypes.rst:1970 msgid "" "See :meth:`str.removesuffix` for a method that will remove a single suffix " "string rather than all of a set of characters. For example::" msgstr "" -#: library/stdtypes.rst:1958 +#: library/stdtypes.rst:1980 msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done (thus, " @@ -3218,7 +3227,7 @@ msgstr "" "+1``). Si *maxsplit* n'est pas fourni, ou vaut ``-1``, le nombre de découpes " "n'est pas limité (Toutes les découpes possibles sont faites)." -#: library/stdtypes.rst:1964 +#: library/stdtypes.rst:1986 msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " "deemed to delimit empty strings (for example, ``'1,,2'.split(',')`` returns " @@ -3232,15 +3241,15 @@ msgstr "" "(par exemple, ``'1<>2<>3'.split('<>')`` renvoie ``['1', '2', '3']``). " "Découper une chaîne vide en spécifiant *sep* donne ``['']``." -#: library/stdtypes.rst:1986 library/stdtypes.rst:2106 -#: library/stdtypes.rst:3018 library/stdtypes.rst:3125 -#: library/stdtypes.rst:3166 library/stdtypes.rst:3208 -#: library/stdtypes.rst:3240 library/stdtypes.rst:3290 -#: library/stdtypes.rst:3359 library/stdtypes.rst:3383 +#: library/stdtypes.rst:2008 library/stdtypes.rst:2128 +#: library/stdtypes.rst:3041 library/stdtypes.rst:3148 +#: library/stdtypes.rst:3189 library/stdtypes.rst:3231 +#: library/stdtypes.rst:3263 library/stdtypes.rst:3313 +#: library/stdtypes.rst:3382 library/stdtypes.rst:3406 msgid "For example::" msgstr "Par exemple ::" -#: library/stdtypes.rst:1979 +#: library/stdtypes.rst:2001 msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " "applied: runs of consecutive whitespace are regarded as a single separator, " @@ -3256,7 +3265,7 @@ msgstr "" "diviser une chaîne vide ou une chaîne composée d'espaces avec un séparateur " "``None`` renvoie ``[]``." -#: library/stdtypes.rst:2001 +#: library/stdtypes.rst:2023 msgid "" "Return a list of the lines in the string, breaking at line boundaries. Line " "breaks are not included in the resulting list unless *keepends* is given and " @@ -3266,7 +3275,7 @@ msgstr "" "niveau des limites des lignes. Les sauts de ligne ne sont pas inclus dans la " "liste des résultats, sauf si *keepends* est donné, et est vrai." -#: library/stdtypes.rst:2005 +#: library/stdtypes.rst:2027 msgid "" "This method splits on the following line boundaries. In particular, the " "boundaries are a superset of :term:`universal newlines`." @@ -3274,107 +3283,107 @@ msgstr "" "Cette méthode découpe sur les limites de ligne suivantes. Ces limites sont " "un sur ensemble de :term:`universal newlines`." -#: library/stdtypes.rst:2009 +#: library/stdtypes.rst:2031 msgid "Representation" msgstr "Représentation" -#: library/stdtypes.rst:2009 +#: library/stdtypes.rst:2031 msgid "Description" msgstr "Description" -#: library/stdtypes.rst:2011 +#: library/stdtypes.rst:2033 msgid "``\\n``" msgstr "``\\n``" -#: library/stdtypes.rst:2011 +#: library/stdtypes.rst:2033 msgid "Line Feed" msgstr "Saut de ligne" -#: library/stdtypes.rst:2013 +#: library/stdtypes.rst:2035 msgid "``\\r``" msgstr "``\\r``" -#: library/stdtypes.rst:2013 +#: library/stdtypes.rst:2035 msgid "Carriage Return" msgstr "Retour chariot" -#: library/stdtypes.rst:2015 +#: library/stdtypes.rst:2037 msgid "``\\r\\n``" msgstr "``\\r\\n``" -#: library/stdtypes.rst:2015 +#: library/stdtypes.rst:2037 msgid "Carriage Return + Line Feed" msgstr "Retour chariot + saut de ligne" -#: library/stdtypes.rst:2017 +#: library/stdtypes.rst:2039 msgid "``\\v`` or ``\\x0b``" msgstr "``\\v`` or ``\\x0b``" -#: library/stdtypes.rst:2017 +#: library/stdtypes.rst:2039 msgid "Line Tabulation" msgstr "Tabulation verticale" -#: library/stdtypes.rst:2019 +#: library/stdtypes.rst:2041 msgid "``\\f`` or ``\\x0c``" msgstr "``\\f`` or ``\\x0c``" -#: library/stdtypes.rst:2019 +#: library/stdtypes.rst:2041 msgid "Form Feed" msgstr "Saut de page" -#: library/stdtypes.rst:2021 +#: library/stdtypes.rst:2043 msgid "``\\x1c``" msgstr "``\\x1c``" -#: library/stdtypes.rst:2021 +#: library/stdtypes.rst:2043 msgid "File Separator" msgstr "Séparateur de fichiers" -#: library/stdtypes.rst:2023 +#: library/stdtypes.rst:2045 msgid "``\\x1d``" msgstr "``\\x1d``" -#: library/stdtypes.rst:2023 +#: library/stdtypes.rst:2045 msgid "Group Separator" msgstr "Séparateur de groupes" -#: library/stdtypes.rst:2025 +#: library/stdtypes.rst:2047 msgid "``\\x1e``" msgstr "``\\x1e``" -#: library/stdtypes.rst:2025 +#: library/stdtypes.rst:2047 msgid "Record Separator" msgstr "Séparateur d'enregistrements" -#: library/stdtypes.rst:2027 +#: library/stdtypes.rst:2049 msgid "``\\x85``" msgstr "``\\x85``" -#: library/stdtypes.rst:2027 +#: library/stdtypes.rst:2049 msgid "Next Line (C1 Control Code)" msgstr "Ligne suivante (code de contrôle *C1*)" -#: library/stdtypes.rst:2029 +#: library/stdtypes.rst:2051 msgid "``\\u2028``" msgstr "``\\u2028``" -#: library/stdtypes.rst:2029 +#: library/stdtypes.rst:2051 msgid "Line Separator" msgstr "Séparateur de ligne" -#: library/stdtypes.rst:2031 +#: library/stdtypes.rst:2053 msgid "``\\u2029``" msgstr "``\\u2029``" -#: library/stdtypes.rst:2031 +#: library/stdtypes.rst:2053 msgid "Paragraph Separator" msgstr "Séparateur de paragraphe" -#: library/stdtypes.rst:2036 +#: library/stdtypes.rst:2058 msgid "``\\v`` and ``\\f`` added to list of line boundaries." msgstr "``\\v`` et ``\\f`` ajoutés à la liste des limites de lignes." -#: library/stdtypes.rst:2045 +#: library/stdtypes.rst:2067 msgid "" "Unlike :meth:`~str.split` when a delimiter string *sep* is given, this " "method returns an empty list for the empty string, and a terminal line break " @@ -3384,11 +3393,11 @@ msgstr "" "renvoie une liste vide pour la chaîne vide, et un saut de ligne à la fin ne " "se traduit pas par une ligne supplémentaire ::" -#: library/stdtypes.rst:2054 +#: library/stdtypes.rst:2076 msgid "For comparison, ``split('\\n')`` gives::" msgstr "À titre de comparaison, ``split('\\n')`` donne ::" -#: library/stdtypes.rst:2064 +#: library/stdtypes.rst:2086 msgid "" "Return ``True`` if string starts with the *prefix*, otherwise return " "``False``. *prefix* can also be a tuple of prefixes to look for. With " @@ -3400,7 +3409,7 @@ msgstr "" "*start* est donné, la comparaison commence à cette position, et lorsque " "*end* est donné, la comparaison s'arrête à celle ci." -#: library/stdtypes.rst:2072 +#: library/stdtypes.rst:2094 msgid "" "Return a copy of the string with the leading and trailing characters " "removed. The *chars* argument is a string specifying the set of characters " @@ -3414,7 +3423,7 @@ msgstr "" "L'argument *chars* est pas un préfixe ni un suffixe, toutes les combinaisons " "de ses valeurs sont supprimées ::" -#: library/stdtypes.rst:2083 +#: library/stdtypes.rst:2105 msgid "" "The outermost leading and trailing *chars* argument values are stripped from " "the string. Characters are removed from the leading end until reaching a " @@ -3426,7 +3435,7 @@ msgstr "" "figurant pas dans le jeu de caractères dans *chars*. La même opération à " "lieu par la droite. Par exemple ::" -#: library/stdtypes.rst:2096 +#: library/stdtypes.rst:2118 msgid "" "Return a copy of the string with uppercase characters converted to lowercase " "and vice versa. Note that it is not necessarily true that ``s.swapcase()." @@ -3436,7 +3445,7 @@ msgstr "" "convertis en minuscules et vice versa. Notez qu'il est pas nécessairement " "vrai que ``s.swapcase().swapcase() == s``." -#: library/stdtypes.rst:2103 +#: library/stdtypes.rst:2125 msgid "" "Return a titlecased version of the string where words start with an " "uppercase character and the remaining characters are lowercase." @@ -3444,7 +3453,7 @@ msgstr "" "Renvoie une version en initiales majuscules de la chaîne où les mots " "commencent par une capitale et les caractères restants sont en minuscules." -#: library/stdtypes.rst:3327 +#: library/stdtypes.rst:3350 msgid "" "The algorithm uses a simple language-independent definition of a word as " "groups of consecutive letters. The definition works in many contexts but it " @@ -3457,14 +3466,14 @@ msgstr "" "apostrophes (typiquement de la forme possessive en Anglais) forment les " "limites de mot, ce qui n'est pas toujours le résultat souhaité ::" -#: library/stdtypes.rst:3335 +#: library/stdtypes.rst:3358 msgid "" "A workaround for apostrophes can be constructed using regular expressions::" msgstr "" "Une solution pour contourner le problème des apostrophes peut être obtenue " "en utilisant des expressions rationnelles ::" -#: library/stdtypes.rst:2133 +#: library/stdtypes.rst:2155 msgid "" "Return a copy of the string in which each character has been mapped through " "the given translation table. The table must be an object that implements " @@ -3484,7 +3493,7 @@ msgstr "" "pour supprimer le caractère de la chaîne de renvoyée soit lever une " "exception :exc:`LookupError` pour ne pas changer le caractère." -#: library/stdtypes.rst:2142 +#: library/stdtypes.rst:2164 msgid "" "You can use :meth:`str.maketrans` to create a translation map from character-" "to-character mappings in different formats." @@ -3492,7 +3501,7 @@ msgstr "" "Vous pouvez utiliser :meth:`str.maketrans` pour créer une table de " "correspondances de caractères dans différents formats." -#: library/stdtypes.rst:2145 +#: library/stdtypes.rst:2167 msgid "" "See also the :mod:`codecs` module for a more flexible approach to custom " "character mappings." @@ -3500,7 +3509,7 @@ msgstr "" "Voir aussi le module :mod:`codecs` pour une approche plus souple de " "changements de caractères par correspondance." -#: library/stdtypes.rst:2151 +#: library/stdtypes.rst:2173 msgid "" "Return a copy of the string with all the cased characters [4]_ converted to " "uppercase. Note that ``s.upper().isupper()`` might be ``False`` if ``s`` " @@ -3514,7 +3523,7 @@ msgstr "" "catégorie Unicode d'un caractère du résultat n'est pas \"Lu\" (*Letter*, " "*uppercase*), mais par exemple \"Lt\" (*Letter*, *titlecase*)." -#: library/stdtypes.rst:2157 +#: library/stdtypes.rst:2179 msgid "" "The uppercasing algorithm used is described in section 3.13 of the Unicode " "Standard." @@ -3522,7 +3531,7 @@ msgstr "" "L'algorithme de capitalisation utilisé est décrit dans la section 3.13 de la " "norme Unicode." -#: library/stdtypes.rst:2163 +#: library/stdtypes.rst:2185 msgid "" "Return a copy of the string left filled with ASCII ``'0'`` digits to make a " "string of length *width*. A leading sign prefix (``'+'``/``'-'``) is handled " @@ -3535,11 +3544,11 @@ msgstr "" "rembourrage *après* le caractère désigne plutôt qu'avant. La chaîne " "d'origine est renvoyée si *width* est inférieur ou égale à ``len(s)``." -#: library/stdtypes.rst:2181 +#: library/stdtypes.rst:2203 msgid "``printf``-style String Formatting" msgstr "Formatage de chaines à la ``printf``" -#: library/stdtypes.rst:2194 +#: library/stdtypes.rst:2216 msgid "" "The formatting operations described here exhibit a variety of quirks that " "lead to a number of common errors (such as failing to display tuples and " @@ -3557,7 +3566,7 @@ msgstr "" "ces alternatives apporte son lot d'avantages et inconvénients en matière de " "simplicité, de flexibilité et/ou de généralisation possible." -#: library/stdtypes.rst:2202 +#: library/stdtypes.rst:2224 msgid "" "String objects have one unique built-in operation: the ``%`` operator " "(modulo). This is also known as the string *formatting* or *interpolation* " @@ -3573,7 +3582,7 @@ msgstr "" "plusieurs éléments de *values*. L'effet est similaire à la fonction :c:func:" "`sprintf` du langage C." -#: library/stdtypes.rst:2208 +#: library/stdtypes.rst:2230 msgid "" "If *format* requires a single argument, *values* may be a single non-tuple " "object. [5]_ Otherwise, *values* must be a tuple with exactly the number of " @@ -3585,7 +3594,7 @@ msgstr "" "nombre d'éléments spécifiés par la chaîne de format, ou un seul objet de " "correspondances ( *mapping object*, par exemple, un dictionnaire)." -#: library/stdtypes.rst:3438 +#: library/stdtypes.rst:3461 msgid "" "A conversion specifier contains two or more characters and has the following " "components, which must occur in this order:" @@ -3593,11 +3602,11 @@ msgstr "" "Un indicateur de conversion contient deux ou plusieurs caractères et " "comporte les éléments suivants, qui doivent apparaître dans cet ordre :" -#: library/stdtypes.rst:3441 +#: library/stdtypes.rst:3464 msgid "The ``'%'`` character, which marks the start of the specifier." msgstr "Le caractère ``'%'``, qui marque le début du marqueur." -#: library/stdtypes.rst:3443 +#: library/stdtypes.rst:3466 msgid "" "Mapping key (optional), consisting of a parenthesised sequence of characters " "(for example, ``(somename)``)." @@ -3605,7 +3614,7 @@ msgstr "" "La clé de correspondance (facultative), composée d'une suite de caractères " "entre parenthèse (par exemple, ``(somename)``)." -#: library/stdtypes.rst:3446 +#: library/stdtypes.rst:3469 msgid "" "Conversion flags (optional), which affect the result of some conversion " "types." @@ -3613,7 +3622,7 @@ msgstr "" "Des options de conversion, facultatives, qui affectent le résultat de " "certains types de conversion." -#: library/stdtypes.rst:3449 +#: library/stdtypes.rst:3472 msgid "" "Minimum field width (optional). If specified as an ``'*'`` (asterisk), the " "actual width is read from the next element of the tuple in *values*, and the " @@ -3623,7 +3632,7 @@ msgstr "" "est lue de l'élément suivant du *n*-uplet *values*, et l'objet à convertir " "vient après la largeur de champ minimale et la précision facultative." -#: library/stdtypes.rst:3453 +#: library/stdtypes.rst:3476 msgid "" "Precision (optional), given as a ``'.'`` (dot) followed by the precision. " "If specified as ``'*'`` (an asterisk), the actual precision is read from the " @@ -3635,15 +3644,15 @@ msgstr "" "lue à partir de l'élément suivant du *n*-uplet *values* et la valeur à " "convertir vient ensuite." -#: library/stdtypes.rst:3458 +#: library/stdtypes.rst:3481 msgid "Length modifier (optional)." msgstr "Modificateur de longueur (facultatif)." -#: library/stdtypes.rst:3460 +#: library/stdtypes.rst:3483 msgid "Conversion type." msgstr "Type de conversion." -#: library/stdtypes.rst:2242 +#: library/stdtypes.rst:2264 msgid "" "When the right argument is a dictionary (or other mapping type), then the " "formats in the string *must* include a parenthesised mapping key into that " @@ -3656,7 +3665,7 @@ msgstr "" "caractère ``'%'``. La clé indique quelle valeur du dictionnaire doit être " "formatée. Par exemple :" -#: library/stdtypes.rst:3471 +#: library/stdtypes.rst:3494 msgid "" "In this case no ``*`` specifiers may occur in a format (since they require a " "sequential parameter list)." @@ -3664,36 +3673,36 @@ msgstr "" "Dans ce cas, aucune ``*`` ne peuvent se trouver dans le format (car ces " "``*`` nécessitent une liste (accès séquentiel) de paramètres)." -#: library/stdtypes.rst:3474 +#: library/stdtypes.rst:3497 msgid "The conversion flag characters are:" msgstr "Les caractères indicateurs de conversion sont :" -#: library/stdtypes.rst:3483 +#: library/stdtypes.rst:3506 msgid "Flag" msgstr "Option" -#: library/stdtypes.rst:3485 +#: library/stdtypes.rst:3508 msgid "``'#'``" msgstr "``'#'``" -#: library/stdtypes.rst:3485 +#: library/stdtypes.rst:3508 msgid "" "The value conversion will use the \"alternate form\" (where defined below)." msgstr "La conversion utilisera la \"forme alternative\" (définie ci-dessous)." -#: library/stdtypes.rst:3488 +#: library/stdtypes.rst:3511 msgid "``'0'``" msgstr "``'0'``" -#: library/stdtypes.rst:3488 +#: library/stdtypes.rst:3511 msgid "The conversion will be zero padded for numeric values." msgstr "Les valeurs numériques converties seront complétée de zéros." -#: library/stdtypes.rst:3490 +#: library/stdtypes.rst:3513 msgid "``'-'``" msgstr "``'-'``" -#: library/stdtypes.rst:3490 +#: library/stdtypes.rst:3513 msgid "" "The converted value is left adjusted (overrides the ``'0'`` conversion if " "both are given)." @@ -3701,11 +3710,11 @@ msgstr "" "La valeur convertie est ajustée à gauche (remplace la conversion ``'0'`` si " "les deux sont données)." -#: library/stdtypes.rst:3493 +#: library/stdtypes.rst:3516 msgid "``' '``" msgstr "``' '``" -#: library/stdtypes.rst:3493 +#: library/stdtypes.rst:3516 msgid "" "(a space) A blank should be left before a positive number (or empty string) " "produced by a signed conversion." @@ -3713,11 +3722,11 @@ msgstr "" "(un espace) Un espace doit être laissé avant un nombre positif (ou chaîne " "vide) produite par la conversion d'une valeur signée." -#: library/stdtypes.rst:3496 +#: library/stdtypes.rst:3519 msgid "``'+'``" msgstr "``'+'``" -#: library/stdtypes.rst:3496 +#: library/stdtypes.rst:3519 msgid "" "A sign character (``'+'`` or ``'-'``) will precede the conversion (overrides " "a \"space\" flag)." @@ -3725,7 +3734,7 @@ msgstr "" "Un caractère de signe (``'+'`` ou ``'-'``) précède la valeur convertie " "(remplace le marqueur \"espace\")." -#: library/stdtypes.rst:3500 +#: library/stdtypes.rst:3523 msgid "" "A length modifier (``h``, ``l``, or ``L``) may be present, but is ignored as " "it is not necessary for Python -- so e.g. ``%ld`` is identical to ``%d``." @@ -3734,91 +3743,91 @@ msgstr "" "est ignoré car il est pas nécessaire pour Python, donc par exemple ``%ld`` " "est identique à ``%d``." -#: library/stdtypes.rst:3503 +#: library/stdtypes.rst:3526 msgid "The conversion types are:" msgstr "Les types utilisables dans les conversion sont :" -#: library/stdtypes.rst:3506 +#: library/stdtypes.rst:3529 msgid "Conversion" msgstr "Conversion" -#: library/stdtypes.rst:3508 +#: library/stdtypes.rst:3531 msgid "``'d'``" msgstr "``'d'``" -#: library/stdtypes.rst:2290 library/stdtypes.rst:3510 +#: library/stdtypes.rst:2312 library/stdtypes.rst:3533 msgid "Signed integer decimal." msgstr "Entier décimal signé." -#: library/stdtypes.rst:3510 +#: library/stdtypes.rst:3533 msgid "``'i'``" msgstr "``'i'``" -#: library/stdtypes.rst:3512 +#: library/stdtypes.rst:3535 msgid "``'o'``" msgstr "``'o'``" -#: library/stdtypes.rst:3512 +#: library/stdtypes.rst:3535 msgid "Signed octal value." msgstr "Valeur octale signée." -#: library/stdtypes.rst:3514 +#: library/stdtypes.rst:3537 msgid "``'u'``" msgstr "``'u'``" -#: library/stdtypes.rst:3514 +#: library/stdtypes.rst:3537 msgid "Obsolete type -- it is identical to ``'d'``." msgstr "Type obsolète — identique à ``'d'``." -#: library/stdtypes.rst:3516 +#: library/stdtypes.rst:3539 msgid "``'x'``" msgstr "``'x'``" -#: library/stdtypes.rst:3516 +#: library/stdtypes.rst:3539 msgid "Signed hexadecimal (lowercase)." msgstr "Hexadécimal signé (en minuscules)." -#: library/stdtypes.rst:3518 +#: library/stdtypes.rst:3541 msgid "``'X'``" msgstr "``'X'``" -#: library/stdtypes.rst:3518 +#: library/stdtypes.rst:3541 msgid "Signed hexadecimal (uppercase)." msgstr "Hexadécimal signé (capitales)." -#: library/stdtypes.rst:3520 +#: library/stdtypes.rst:3543 msgid "``'e'``" msgstr "``'e'``" -#: library/stdtypes.rst:3520 +#: library/stdtypes.rst:3543 msgid "Floating point exponential format (lowercase)." msgstr "Format exponentiel pour un *float* (minuscule)." -#: library/stdtypes.rst:3522 +#: library/stdtypes.rst:3545 msgid "``'E'``" msgstr "``'E'``" -#: library/stdtypes.rst:3522 +#: library/stdtypes.rst:3545 msgid "Floating point exponential format (uppercase)." msgstr "Format exponentiel pour un *float* (en capitales)." -#: library/stdtypes.rst:3524 +#: library/stdtypes.rst:3547 msgid "``'f'``" msgstr "``'f'``" -#: library/stdtypes.rst:2306 library/stdtypes.rst:3526 +#: library/stdtypes.rst:2328 library/stdtypes.rst:3549 msgid "Floating point decimal format." msgstr "Format décimal pour un *float*." -#: library/stdtypes.rst:3526 +#: library/stdtypes.rst:3549 msgid "``'F'``" msgstr "``'F'``" -#: library/stdtypes.rst:3528 +#: library/stdtypes.rst:3551 msgid "``'g'``" msgstr "``'g'``" -#: library/stdtypes.rst:3528 +#: library/stdtypes.rst:3551 msgid "" "Floating point format. Uses lowercase exponential format if exponent is less " "than -4 or not less than precision, decimal format otherwise." @@ -3827,11 +3836,11 @@ msgstr "" "inférieur à ``-4`` ou pas plus petit que la précision, sinon le format " "décimal." -#: library/stdtypes.rst:3532 +#: library/stdtypes.rst:3555 msgid "``'G'``" msgstr "``'G'``" -#: library/stdtypes.rst:3532 +#: library/stdtypes.rst:3555 msgid "" "Floating point format. Uses uppercase exponential format if exponent is less " "than -4 or not less than precision, decimal format otherwise." @@ -3840,51 +3849,51 @@ msgstr "" "inférieur à ``-4`` ou pas plus petit que la précision, sinon le format " "décimal." -#: library/stdtypes.rst:3536 +#: library/stdtypes.rst:3559 msgid "``'c'``" msgstr "``'c'``" -#: library/stdtypes.rst:2316 +#: library/stdtypes.rst:2338 msgid "Single character (accepts integer or single character string)." msgstr "" "Un seul caractère (accepte des entiers ou une chaîne d'un seul caractère)." -#: library/stdtypes.rst:3549 +#: library/stdtypes.rst:3572 msgid "``'r'``" msgstr "``'r'``" -#: library/stdtypes.rst:2319 +#: library/stdtypes.rst:2341 msgid "String (converts any Python object using :func:`repr`)." msgstr "String (convertit n'importe quel objet Python avec :func:`repr`)." -#: library/stdtypes.rst:3543 +#: library/stdtypes.rst:3566 msgid "``'s'``" msgstr "``'s'``" -#: library/stdtypes.rst:2322 +#: library/stdtypes.rst:2344 msgid "String (converts any Python object using :func:`str`)." msgstr "String (convertit n'importe quel objet Python avec :func:`str`)." -#: library/stdtypes.rst:3546 +#: library/stdtypes.rst:3569 msgid "``'a'``" msgstr "``'a'``" -#: library/stdtypes.rst:2325 +#: library/stdtypes.rst:2347 msgid "String (converts any Python object using :func:`ascii`)." msgstr "" "String (convertit n'importe quel objet Python en utilisant :func:`ascii`)." -#: library/stdtypes.rst:3552 +#: library/stdtypes.rst:3575 msgid "``'%'``" msgstr "``'%'``" -#: library/stdtypes.rst:3552 +#: library/stdtypes.rst:3575 msgid "No argument is converted, results in a ``'%'`` character in the result." msgstr "" "Aucun argument n'est converti, donne un caractère de ``'%'`` dans le " "résultat." -#: library/stdtypes.rst:3559 +#: library/stdtypes.rst:3582 msgid "" "The alternate form causes a leading octal specifier (``'0o'``) to be " "inserted before the first digit." @@ -3892,7 +3901,7 @@ msgstr "" "La forme alternative entraîne l'insertion d'un préfixe octal (``'0o'``) " "avant le premier chiffre." -#: library/stdtypes.rst:3563 +#: library/stdtypes.rst:3586 msgid "" "The alternate form causes a leading ``'0x'`` or ``'0X'`` (depending on " "whether the ``'x'`` or ``'X'`` format was used) to be inserted before the " @@ -3902,7 +3911,7 @@ msgstr "" "(respectivement pour les formats ``'x'`` et ``'X'``) avant le premier " "chiffre." -#: library/stdtypes.rst:3567 +#: library/stdtypes.rst:3590 msgid "" "The alternate form causes the result to always contain a decimal point, even " "if no digits follow it." @@ -3910,14 +3919,14 @@ msgstr "" "La forme alternative implique la présence d'un point décimal, même si aucun " "chiffre ne le suit." -#: library/stdtypes.rst:3570 +#: library/stdtypes.rst:3593 msgid "" "The precision determines the number of digits after the decimal point and " "defaults to 6." msgstr "" "La précision détermine le nombre de chiffres après la virgule, 6 par défaut." -#: library/stdtypes.rst:3574 +#: library/stdtypes.rst:3597 msgid "" "The alternate form causes the result to always contain a decimal point, and " "trailing zeroes are not removed as they would otherwise be." @@ -3925,7 +3934,7 @@ msgstr "" "La forme alternative implique la présence d'un point décimal et les zéros " "non significatifs sont conservés (ils ne le seraient pas autrement)." -#: library/stdtypes.rst:3577 +#: library/stdtypes.rst:3600 msgid "" "The precision determines the number of significant digits before and after " "the decimal point and defaults to 6." @@ -3933,15 +3942,15 @@ msgstr "" "La précision détermine le nombre de chiffres significatifs avant et après la " "virgule. 6 par défaut." -#: library/stdtypes.rst:3581 +#: library/stdtypes.rst:3604 msgid "If precision is ``N``, the output is truncated to ``N`` characters." msgstr "Si la précision est ``N``, la sortie est tronquée à ``N`` caractères." -#: library/stdtypes.rst:3590 +#: library/stdtypes.rst:3613 msgid "See :pep:`237`." msgstr "Voir la :pep:`237`." -#: library/stdtypes.rst:2362 +#: library/stdtypes.rst:2384 msgid "" "Since Python strings have an explicit length, ``%s`` conversions do not " "assume that ``'\\0'`` is the end of the string." @@ -3949,7 +3958,7 @@ msgstr "" "Puisque les chaînes Python ont une longueur explicite, les conversions ``" "%s`` ne considèrent pas ``'\\0'`` comme la fin de la chaîne." -#: library/stdtypes.rst:2367 +#: library/stdtypes.rst:2389 msgid "" "``%f`` conversions for numbers whose absolute value is over 1e50 are no " "longer replaced by ``%g`` conversions." @@ -3957,7 +3966,7 @@ msgstr "" "Les conversions ``%f`` pour nombres dont la valeur absolue est supérieure à " "``1e50`` ne sont plus remplacés par des conversions ``%g``." -#: library/stdtypes.rst:2378 +#: library/stdtypes.rst:2400 msgid "" "Binary Sequence Types --- :class:`bytes`, :class:`bytearray`, :class:" "`memoryview`" @@ -3965,7 +3974,7 @@ msgstr "" "Séquences Binaires --- :class:`bytes`, :class:`bytearray`, :class:" "`memoryview`" -#: library/stdtypes.rst:2386 +#: library/stdtypes.rst:2408 msgid "" "The core built-in types for manipulating binary data are :class:`bytes` and :" "class:`bytearray`. They are supported by :class:`memoryview` which uses the :" @@ -3977,7 +3986,7 @@ msgstr "" "qui utilise le :ref:`buffer protocol ` pour accéder à la " "mémoire d'autres objets binaires sans avoir besoin d'en faire une copie." -#: library/stdtypes.rst:2391 +#: library/stdtypes.rst:2413 msgid "" "The :mod:`array` module supports efficient storage of basic data types like " "32-bit integers and IEEE754 double-precision floating values." @@ -3985,11 +3994,11 @@ msgstr "" "Le module :mod:`array` permet le stockage efficace de types basiques comme " "les entiers de 32 bits et les *float* double précision IEEE754." -#: library/stdtypes.rst:2397 +#: library/stdtypes.rst:2419 msgid "Bytes Objects" msgstr "Objets *bytes*" -#: library/stdtypes.rst:2401 +#: library/stdtypes.rst:2423 msgid "" "Bytes objects are immutable sequences of single bytes. Since many major " "binary protocols are based on the ASCII text encoding, bytes objects offer " @@ -4001,7 +4010,7 @@ msgstr "" "méthodes qui ne sont valables que lors de la manipulation de données ASCII " "et sont étroitement liés aux objets *str* dans bien d'autres aspects." -#: library/stdtypes.rst:2408 +#: library/stdtypes.rst:2430 msgid "" "Firstly, the syntax for bytes literals is largely the same as that for " "string literals, except that a ``b`` prefix is added:" @@ -4009,24 +4018,24 @@ msgstr "" "Tout d'abord, la syntaxe des *bytes* littéraux est en grande partie la même " "que pour les chaînes littérales, en dehors du préfixe ``b`` :" -#: library/stdtypes.rst:2411 +#: library/stdtypes.rst:2433 msgid "Single quotes: ``b'still allows embedded \"double\" quotes'``" msgstr "" "Les guillemets simples : ``b'autorisent aussi les guillemets \"doubles\"'``" -#: library/stdtypes.rst:2412 +#: library/stdtypes.rst:2434 msgid "Double quotes: ``b\"still allows embedded 'single' quotes\"``." msgstr "" "Les guillemets doubles : ``b\"permettent aussi les guillemets 'simples'\"``." -#: library/stdtypes.rst:2413 +#: library/stdtypes.rst:2435 msgid "" "Triple quoted: ``b'''3 single quotes'''``, ``b\"\"\"3 double quotes\"\"\"``" msgstr "" "Les guillemets triples : ``b'''3 single quotes'''``, ``b\"\"\"3 double quotes" "\"\"\"``" -#: library/stdtypes.rst:2415 +#: library/stdtypes.rst:2437 msgid "" "Only ASCII characters are permitted in bytes literals (regardless of the " "declared source code encoding). Any binary values over 127 must be entered " @@ -4037,7 +4046,7 @@ msgstr "" "delà de 127 doivent être entrées dans littéraux de *bytes* en utilisant une " "séquence d'échappement appropriée." -#: library/stdtypes.rst:2419 +#: library/stdtypes.rst:2441 msgid "" "As with string literals, bytes literals may also use a ``r`` prefix to " "disable processing of escape sequences. See :ref:`strings` for more about " @@ -4049,7 +4058,7 @@ msgstr "" "différentes formes littérales de *bytes*, y compris les séquences " "d'échappement supportées." -#: library/stdtypes.rst:2423 +#: library/stdtypes.rst:2445 msgid "" "While bytes literals and representations are based on ASCII text, bytes " "objects actually behave like immutable sequences of integers, with each " @@ -4072,7 +4081,7 @@ msgstr "" "sur des données binaires qui ne sont pas compatibles ASCII conduit " "généralement à leur corruption)." -#: library/stdtypes.rst:2433 +#: library/stdtypes.rst:2455 msgid "" "In addition to the literal forms, bytes objects can be created in a number " "of other ways:" @@ -4080,26 +4089,26 @@ msgstr "" "En plus des formes littérales, des objets *bytes* peuvent être créés par de " "nombreux moyens :" -#: library/stdtypes.rst:2436 +#: library/stdtypes.rst:2458 msgid "A zero-filled bytes object of a specified length: ``bytes(10)``" msgstr "" "Un objet *bytes* rempli de zéros d'une longueur spécifiée : ``bytes(10)``" -#: library/stdtypes.rst:2437 +#: library/stdtypes.rst:2459 msgid "From an iterable of integers: ``bytes(range(20))``" msgstr "D'un itérable d'entiers : ``bytes(range(20))``" -#: library/stdtypes.rst:2438 +#: library/stdtypes.rst:2460 msgid "Copying existing binary data via the buffer protocol: ``bytes(obj)``" msgstr "" "Copier des données binaires existantes via le *buffer protocol* : " "``bytes(obj)``" -#: library/stdtypes.rst:2440 +#: library/stdtypes.rst:2462 msgid "Also see the :ref:`bytes ` built-in." msgstr "Voir aussi la fonction native :ref:`bytes `." -#: library/stdtypes.rst:2442 +#: library/stdtypes.rst:2464 msgid "" "Since 2 hexadecimal digits correspond precisely to a single byte, " "hexadecimal numbers are a commonly used format for describing binary data. " @@ -4111,7 +4120,7 @@ msgstr "" "données binaires. Par conséquent, le type *bytes* a une méthode de classe " "pour lire des données dans ce format :" -#: library/stdtypes.rst:2448 +#: library/stdtypes.rst:2470 msgid "" "This :class:`bytes` class method returns a bytes object, decoding the given " "string object. The string must contain two hexadecimal digits per byte, " @@ -4121,7 +4130,7 @@ msgstr "" "la chaîne donnée. La chaîne doit contenir deux chiffres hexadécimaux par " "octet, les espaces ASCII sont ignorés." -#: library/stdtypes.rst:2455 +#: library/stdtypes.rst:2477 msgid "" ":meth:`bytes.fromhex` now skips all ASCII whitespace in the string, not just " "spaces." @@ -4129,7 +4138,7 @@ msgstr "" ":meth:`bytes.fromhex` saute maintenant dans la chaîne tous les caractères " "ASCII \"blancs\", pas seulement les espaces." -#: library/stdtypes.rst:2459 +#: library/stdtypes.rst:2481 msgid "" "A reverse conversion function exists to transform a bytes object into its " "hexadecimal representation." @@ -4137,7 +4146,7 @@ msgstr "" "Une fonction de conversion inverse existe pour transformer un objet *bytes* " "en sa représentation hexadécimale." -#: library/stdtypes.rst:2558 +#: library/stdtypes.rst:2580 msgid "" "Return a string object containing two hexadecimal digits for each byte in " "the instance." @@ -4145,7 +4154,7 @@ msgstr "" "Renvoie une chaîne contenant deux chiffres hexadécimaux pour chaque octet du " "*byte*." -#: library/stdtypes.rst:2470 +#: library/stdtypes.rst:2492 msgid "" "If you want to make the hex string easier to read, you can specify a single " "character separator *sep* parameter to include in the output. By default " @@ -4160,7 +4169,7 @@ msgstr "" "Les valeurs positives calculent la position du séparateur en partant de la " "droite, les valeurs négatives de la gauche." -#: library/stdtypes.rst:2486 +#: library/stdtypes.rst:2508 msgid "" ":meth:`bytes.hex` now supports optional *sep* and *bytes_per_sep* parameters " "to insert separators between bytes in the hex output." @@ -4169,7 +4178,7 @@ msgstr "" "et *bytes_per_sep* pour insérer des séparateurs entre les octets dans la " "sortie hexadécimale." -#: library/stdtypes.rst:2490 +#: library/stdtypes.rst:2512 msgid "" "Since bytes objects are sequences of integers (akin to a tuple), for a bytes " "object *b*, ``b[0]`` will be an integer, while ``b[0:1]`` will be a bytes " @@ -4181,7 +4190,7 @@ msgstr "" "que``b[0:1]`` sera un objet *bytes* de longueur 1. (Cela contraste avec les " "chaînes, où l'indexation et le *slicing* donne une chaîne de longueur 1)" -#: library/stdtypes.rst:2495 +#: library/stdtypes.rst:2517 msgid "" "The representation of bytes objects uses the literal format (``b'...'``) " "since it is often more useful than e.g. ``bytes([46, 46, 46])``. You can " @@ -4191,7 +4200,7 @@ msgstr "" "est souvent plus utile que par exemple ``bytes([46, 46, 46])``. Vous pouvez " "toujours convertir un *bytes* en liste d'entiers en utilisant ``list(b)``." -#: library/stdtypes.rst:2500 +#: library/stdtypes.rst:2522 msgid "" "For Python 2.x users: In the Python 2.x series, a variety of implicit " "conversions between 8-bit strings (the closest thing 2.x offers to a built-" @@ -4212,11 +4221,11 @@ msgstr "" "conversions entre les données binaires et texte Unicode doivent être " "explicites, et les *bytes* sont toujours différents des chaînes." -#: library/stdtypes.rst:2513 +#: library/stdtypes.rst:2535 msgid "Bytearray Objects" msgstr "Objets *bytearray*" -#: library/stdtypes.rst:2517 +#: library/stdtypes.rst:2539 msgid "" ":class:`bytearray` objects are a mutable counterpart to :class:`bytes` " "objects." @@ -4224,7 +4233,7 @@ msgstr "" "Les objets :class:`bytearray` sont l'équivalent muable des objets :class:" "`bytes`." -#: library/stdtypes.rst:2522 +#: library/stdtypes.rst:2544 msgid "" "There is no dedicated literal syntax for bytearray objects, instead they are " "always created by calling the constructor:" @@ -4232,27 +4241,27 @@ msgstr "" "Il n'y a pas de syntaxe littérale dédiée aux *bytearray*, ils sont toujours " "créés en appelant le constructeur :" -#: library/stdtypes.rst:2525 +#: library/stdtypes.rst:2547 msgid "Creating an empty instance: ``bytearray()``" msgstr "Créer une instance vide: ``bytearray()``" -#: library/stdtypes.rst:2526 +#: library/stdtypes.rst:2548 msgid "Creating a zero-filled instance with a given length: ``bytearray(10)``" msgstr "" "Créer une instance remplie de zéros d'une longueur donnée : ``bytearray(10)``" -#: library/stdtypes.rst:2527 +#: library/stdtypes.rst:2549 msgid "From an iterable of integers: ``bytearray(range(20))``" msgstr "À partir d'un itérable d'entiers : ``bytearray(range(20))``" -#: library/stdtypes.rst:2528 +#: library/stdtypes.rst:2550 msgid "" "Copying existing binary data via the buffer protocol: ``bytearray(b'Hi!')``" msgstr "" "Copie des données binaires existantes via le *buffer protocol* : " "``bytearray(b'Hi!')``" -#: library/stdtypes.rst:2530 +#: library/stdtypes.rst:2552 msgid "" "As bytearray objects are mutable, they support the :ref:`mutable ` sequence operations in addition to the common bytes and bytearray " @@ -4262,11 +4271,11 @@ msgstr "" "séquence :ref:`muables ` en plus des opérations communes " "de *bytes* et *bytearray* décrites dans :ref:`bytes-methods`." -#: library/stdtypes.rst:2534 +#: library/stdtypes.rst:2556 msgid "Also see the :ref:`bytearray ` built-in." msgstr "Voir aussi la fonction native :ref:`bytearray `." -#: library/stdtypes.rst:2536 +#: library/stdtypes.rst:2558 msgid "" "Since 2 hexadecimal digits correspond precisely to a single byte, " "hexadecimal numbers are a commonly used format for describing binary data. " @@ -4278,7 +4287,7 @@ msgstr "" "données binaires. Par conséquent, le type *bytearray* a une méthode de " "classe pour lire les données dans ce format :" -#: library/stdtypes.rst:2542 +#: library/stdtypes.rst:2564 msgid "" "This :class:`bytearray` class method returns bytearray object, decoding the " "given string object. The string must contain two hexadecimal digits per " @@ -4288,7 +4297,7 @@ msgstr "" "décodant la chaîne donnée. La chaîne doit contenir deux chiffres " "hexadécimaux par octet, les espaces ASCII sont ignorés." -#: library/stdtypes.rst:2549 +#: library/stdtypes.rst:2571 msgid "" ":meth:`bytearray.fromhex` now skips all ASCII whitespace in the string, not " "just spaces." @@ -4296,7 +4305,7 @@ msgstr "" ":meth:`bytearray.fromhex` saute maintenant tous les caractères \"blancs\" " "ASCII dans la chaîne, pas seulement les espaces." -#: library/stdtypes.rst:2553 +#: library/stdtypes.rst:2575 msgid "" "A reverse conversion function exists to transform a bytearray object into " "its hexadecimal representation." @@ -4304,7 +4313,7 @@ msgstr "" "Une fonction de conversion inverse existe pour transformer un objet " "*bytearray* en sa représentation hexadécimale." -#: library/stdtypes.rst:2566 +#: library/stdtypes.rst:2588 #, fuzzy msgid "" "Similar to :meth:`bytes.hex`, :meth:`bytearray.hex` now supports optional " @@ -4315,7 +4324,7 @@ msgstr "" "et *bytes_per_sep* pour insérer des séparateurs entre les octets dans la " "sortie hexadécimale." -#: library/stdtypes.rst:2571 +#: library/stdtypes.rst:2593 msgid "" "Since bytearray objects are sequences of integers (akin to a list), for a " "bytearray object *b*, ``b[0]`` will be an integer, while ``b[0:1]`` will be " @@ -4328,7 +4337,7 @@ msgstr "" "chaînes de texte, où l'indexation et le *slicing* produit une chaîne de " "longueur 1)" -#: library/stdtypes.rst:2576 +#: library/stdtypes.rst:2598 msgid "" "The representation of bytearray objects uses the bytes literal format " "(``bytearray(b'...')``) since it is often more useful than e.g. " @@ -4340,11 +4349,11 @@ msgstr "" "exemple ``bytearray([46, 46, 46])``. Vous pouvez toujours convertir un objet " "*bytearray* en une liste de nombres entiers en utilisant ``list(b)``." -#: library/stdtypes.rst:2585 +#: library/stdtypes.rst:2607 msgid "Bytes and Bytearray Operations" msgstr "Opérations sur les *bytes* et *bytearray*" -#: library/stdtypes.rst:2590 +#: library/stdtypes.rst:2612 msgid "" "Both bytes and bytearray objects support the :ref:`common ` " "sequence operations. They interoperate not just with operands of the same " @@ -4359,7 +4368,7 @@ msgstr "" "opérations sans provoquer d'erreurs. Cependant, le type du résultat peut " "dépendre de l'ordre des opérandes." -#: library/stdtypes.rst:2598 +#: library/stdtypes.rst:2620 msgid "" "The methods on bytes and bytearray objects don't accept strings as their " "arguments, just as the methods on strings don't accept bytes as their " @@ -4369,11 +4378,11 @@ msgstr "" "comme arguments, tout comme les méthodes sur les chaînes n'acceptent pas les " "*bytes* comme arguments. Par exemple, vous devez écrire ::" -#: library/stdtypes.rst:2605 +#: library/stdtypes.rst:2627 msgid "and::" msgstr "et ::" -#: library/stdtypes.rst:2610 +#: library/stdtypes.rst:2632 msgid "" "Some bytes and bytearray operations assume the use of ASCII compatible " "binary formats, and hence should be avoided when working with arbitrary " @@ -4384,7 +4393,7 @@ msgstr "" "travaillez avec des données binaires arbitraires. Ces restrictions sont " "couvertes ci-dessous." -#: library/stdtypes.rst:2615 +#: library/stdtypes.rst:2637 msgid "" "Using these ASCII based operations to manipulate binary data that is not " "stored in an ASCII based format may lead to data corruption." @@ -4392,7 +4401,7 @@ msgstr "" "Utiliser ces opérations basées sur l'ASCII pour manipuler des données " "binaires qui ne sont pas au format ASCII peut les corrompre." -#: library/stdtypes.rst:2618 +#: library/stdtypes.rst:2640 msgid "" "The following methods on bytes and bytearray objects can be used with " "arbitrary binary data." @@ -4400,7 +4409,7 @@ msgstr "" "Les méthodes suivantes sur les *bytes* et *bytearray* peuvent être utilisées " "avec des données binaires arbitraires." -#: library/stdtypes.rst:2624 +#: library/stdtypes.rst:2646 msgid "" "Return the number of non-overlapping occurrences of subsequence *sub* in the " "range [*start*, *end*]. Optional arguments *start* and *end* are " @@ -4410,8 +4419,8 @@ msgstr "" "séquence *sub* dans l'intervalle [*start*, *end*]. Les arguments facultatifs " "*start* et *end* sont interprétés comme pour un *slice*." -#: library/stdtypes.rst:2726 library/stdtypes.rst:2814 -#: library/stdtypes.rst:2827 +#: library/stdtypes.rst:2749 library/stdtypes.rst:2837 +#: library/stdtypes.rst:2850 msgid "" "The subsequence to search for may be any :term:`bytes-like object` or an " "integer in the range 0 to 255." @@ -4419,31 +4428,31 @@ msgstr "" "La sous-séquence à rechercher peut être un quelconque :term:`bytes-like " "object` ou un nombre entier compris entre 0 et 255." -#: library/stdtypes.rst:2738 library/stdtypes.rst:2817 -#: library/stdtypes.rst:2830 +#: library/stdtypes.rst:2761 library/stdtypes.rst:2840 +#: library/stdtypes.rst:2853 msgid "Also accept an integer in the range 0 to 255 as the subsequence." msgstr "" "Accepte aussi un nombre entier compris entre 0 et 255 comme sous-séquence." -#: library/stdtypes.rst:2638 +#: library/stdtypes.rst:2660 msgid "" "If the binary data starts with the *prefix* string, return " "``bytes[len(prefix):]``. Otherwise, return a copy of the original binary " "data::" msgstr "" -#: library/stdtypes.rst:2647 +#: library/stdtypes.rst:2669 #, fuzzy msgid "The *prefix* may be any :term:`bytes-like object`." msgstr "" "Le préfixe(s) à rechercher peuvent être n'importe quel :term:`bytes-like " "object`." -#: library/stdtypes.rst:2673 library/stdtypes.rst:2895 -#: library/stdtypes.rst:2940 library/stdtypes.rst:2996 -#: library/stdtypes.rst:3084 library/stdtypes.rst:3251 -#: library/stdtypes.rst:3349 library/stdtypes.rst:3392 -#: library/stdtypes.rst:3594 +#: library/stdtypes.rst:2695 library/stdtypes.rst:2918 +#: library/stdtypes.rst:2963 library/stdtypes.rst:3019 +#: library/stdtypes.rst:3107 library/stdtypes.rst:3274 +#: library/stdtypes.rst:3372 library/stdtypes.rst:3415 +#: library/stdtypes.rst:3617 msgid "" "The bytearray version of this method does *not* operate in place - it always " "produces a new object, even if no changes were made." @@ -4452,21 +4461,21 @@ msgstr "" "produit toujours un nouvel objet, même si aucune modification n'a été " "effectuée." -#: library/stdtypes.rst:2660 +#: library/stdtypes.rst:2682 msgid "" "If the binary data ends with the *suffix* string and that *suffix* is not " "empty, return ``bytes[:-len(suffix)]``. Otherwise, return a copy of the " "original binary data::" msgstr "" -#: library/stdtypes.rst:2669 +#: library/stdtypes.rst:2691 #, fuzzy msgid "The *suffix* may be any :term:`bytes-like object`." msgstr "" "Les suffixes à rechercher peuvent être n'importe quel :term:`bytes-like " "object`." -#: library/stdtypes.rst:2682 +#: library/stdtypes.rst:2704 msgid "" "Return a string decoded from the given bytes. Default encoding is " "``'utf-8'``. *errors* may be given to set a different error handling " @@ -4485,14 +4494,14 @@ msgstr "" "register_error`, voir la section :ref:`error-handlers`. Pour une liste des " "encodages possibles, voir la section :ref:`standard-encodings`." -#: library/stdtypes.rst:2690 +#: library/stdtypes.rst:2712 msgid "" "By default, the *errors* argument is not checked for best performances, but " "only used at the first decoding error. Enable the :ref:`Python Development " -"Mode `, or use a debug build to check *errors*." +"Mode `, or use a :ref:`debug build ` to check *errors*." msgstr "" -#: library/stdtypes.rst:2696 +#: library/stdtypes.rst:2718 msgid "" "Passing the *encoding* argument to :class:`str` allows decoding any :term:" "`bytes-like object` directly, without needing to make a temporary bytes or " @@ -4502,11 +4511,11 @@ msgstr "" "`bytes-like object` directement, sans avoir besoin d'utiliser un *bytes* ou " "*bytearray* temporaire." -#: library/stdtypes.rst:2700 +#: library/stdtypes.rst:2722 msgid "Added support for keyword arguments." msgstr "Gère les arguments nommés." -#: library/stdtypes.rst:2710 +#: library/stdtypes.rst:2733 msgid "" "Return ``True`` if the binary data ends with the specified *suffix*, " "otherwise return ``False``. *suffix* can also be a tuple of suffixes to " @@ -4519,13 +4528,13 @@ msgstr "" "position. Avec l'argument optionnel *end*, la comparaison s'arrête à cette " "position." -#: library/stdtypes.rst:2715 +#: library/stdtypes.rst:2738 msgid "The suffix(es) to search for may be any :term:`bytes-like object`." msgstr "" "Les suffixes à rechercher peuvent être n'importe quel :term:`bytes-like " "object`." -#: library/stdtypes.rst:2721 +#: library/stdtypes.rst:2744 msgid "" "Return the lowest index in the data where the subsequence *sub* is found, " "such that *sub* is contained in the slice ``s[start:end]``. Optional " @@ -4537,7 +4546,7 @@ msgstr "" "facultatifs *start* et *end* sont interprétés comme dans la notation des " "*slices*. Donne ``-1`` si *sub* n'est pas trouvé." -#: library/stdtypes.rst:2731 +#: library/stdtypes.rst:2754 msgid "" "The :meth:`~bytes.find` method should be used only if you need to know the " "position of *sub*. To check if *sub* is a substring or not, use the :" @@ -4547,7 +4556,7 @@ msgstr "" "de connaître la position de *sub*. Pour vérifier si *sub* est présent ou " "non, utilisez l'opérateur :keyword:`in` ::" -#: library/stdtypes.rst:2745 +#: library/stdtypes.rst:2768 msgid "" "Like :meth:`~bytes.find`, but raise :exc:`ValueError` when the subsequence " "is not found." @@ -4555,7 +4564,7 @@ msgstr "" "Comme :meth:`~bytes.find`, mais lève une :exc:`ValueError` lorsque la " "séquence est introuvable." -#: library/stdtypes.rst:2758 +#: library/stdtypes.rst:2781 msgid "" "Return a bytes or bytearray object which is the concatenation of the binary " "data sequences in *iterable*. A :exc:`TypeError` will be raised if there " @@ -4571,7 +4580,7 @@ msgstr "" "éléments est le contenu du *bytes* ou du *bytearray* depuis lequel cette " "méthode est appelée." -#: library/stdtypes.rst:2769 +#: library/stdtypes.rst:2792 msgid "" "This static method returns a translation table usable for :meth:`bytes." "translate` that will map each character in *from* into the character at the " @@ -4584,7 +4593,7 @@ msgstr "" "être des :term:`bytes-like objects ` et avoir la même " "longueur." -#: library/stdtypes.rst:2780 +#: library/stdtypes.rst:2803 msgid "" "Split the sequence at the first occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself or its " @@ -4598,11 +4607,11 @@ msgstr "" "est pas trouvé, le triplet renvoyé contiendra une copie de la séquence " "d'origine, suivi de deux *bytes* ou *bytearray* vides." -#: library/stdtypes.rst:2844 +#: library/stdtypes.rst:2867 msgid "The separator to search for may be any :term:`bytes-like object`." msgstr "Le séparateur à rechercher peut être tout :term:`bytes-like object`." -#: library/stdtypes.rst:2793 +#: library/stdtypes.rst:2816 msgid "" "Return a copy of the sequence with all occurrences of subsequence *old* " "replaced by *new*. If the optional argument *count* is given, only the " @@ -4612,7 +4621,7 @@ msgstr "" "séquence *old* sont remplacées par *new*. Si l'argument optionnel *count* " "est donné, seules les *count* premières occurrences de sont remplacés." -#: library/stdtypes.rst:2797 +#: library/stdtypes.rst:2820 msgid "" "The subsequence to search for and its replacement may be any :term:`bytes-" "like object`." @@ -4620,7 +4629,7 @@ msgstr "" "La sous-séquence à rechercher et son remplacement peuvent être n'importe " "quel :term:`bytes-like object`." -#: library/stdtypes.rst:2809 +#: library/stdtypes.rst:2832 msgid "" "Return the highest index in the sequence where the subsequence *sub* is " "found, such that *sub* is contained within ``s[start:end]``. Optional " @@ -4632,7 +4641,7 @@ msgstr "" "sont interprétés comme dans la notation des *slices*. Donne ``-1`` si *sub* " "n'est pas trouvable." -#: library/stdtypes.rst:2824 +#: library/stdtypes.rst:2847 msgid "" "Like :meth:`~bytes.rfind` but raises :exc:`ValueError` when the subsequence " "*sub* is not found." @@ -4640,7 +4649,7 @@ msgstr "" "Semblable à :meth:`~bytes.rfind` mais lève une :exc:`ValueError` lorsque " "*sub* est introuvable." -#: library/stdtypes.rst:2837 +#: library/stdtypes.rst:2860 msgid "" "Split the sequence at the last occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself or its " @@ -4654,7 +4663,7 @@ msgstr "" "Si le séparateur n'est pas trouvé, le triplet contiendra deux *bytes* ou " "*bytesarray* vides suivi d’une copie de la séquence d'origine." -#: library/stdtypes.rst:2850 +#: library/stdtypes.rst:2873 msgid "" "Return ``True`` if the binary data starts with the specified *prefix*, " "otherwise return ``False``. *prefix* can also be a tuple of prefixes to " @@ -4666,13 +4675,13 @@ msgstr "" "rechercher. Avec l'argument *start* la recherche commence à cette position. " "Avec l'argument *end* option, la recherche s'arrête à cette position." -#: library/stdtypes.rst:2855 +#: library/stdtypes.rst:2878 msgid "The prefix(es) to search for may be any :term:`bytes-like object`." msgstr "" "Le préfixe(s) à rechercher peuvent être n'importe quel :term:`bytes-like " "object`." -#: library/stdtypes.rst:2861 +#: library/stdtypes.rst:2884 msgid "" "Return a copy of the bytes or bytearray object where all bytes occurring in " "the optional argument *delete* are removed, and the remaining bytes have " @@ -4683,25 +4692,25 @@ msgstr "" "*delete* sont supprimés, et les octets restants changés par la table de " "correspondance donnée, qui doit être un objet *bytes* d'une longueur de 256." -#: library/stdtypes.rst:2866 +#: library/stdtypes.rst:2889 msgid "" "You can use the :func:`bytes.maketrans` method to create a translation table." msgstr "" "Vous pouvez utiliser la méthode :func:`bytes.maketrans` pour créer une table " "de correspondance." -#: library/stdtypes.rst:2869 +#: library/stdtypes.rst:2892 msgid "" "Set the *table* argument to ``None`` for translations that only delete " "characters::" msgstr "" "Donnez ``None`` comme *table* pour seulement supprimer des caractères ::" -#: library/stdtypes.rst:2875 +#: library/stdtypes.rst:2898 msgid "*delete* is now supported as a keyword argument." msgstr "*delete* est maintenant accepté comme argument nommé." -#: library/stdtypes.rst:2879 +#: library/stdtypes.rst:2902 msgid "" "The following methods on bytes and bytearray objects have default behaviours " "that assume the use of ASCII compatible binary formats, but can still be " @@ -4715,7 +4724,7 @@ msgstr "" "appropriés. Notez que toutes les méthodes de *bytearray* de cette section " "ne travaillent jamais sur l'objet lui même, mais renvoient un nouvel objet." -#: library/stdtypes.rst:2888 +#: library/stdtypes.rst:2911 msgid "" "Return a copy of the object centered in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4727,7 +4736,7 @@ msgstr "" "espace ASCII). Pour les objets :class:`bytes`, la séquence initiale est " "renvoyée si *width* est inférieur ou égal à ``len(s)``." -#: library/stdtypes.rst:2902 +#: library/stdtypes.rst:2925 msgid "" "Return a copy of the object left justified in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4739,7 +4748,7 @@ msgstr "" "espace ASCII). Pour les objets :class:`bytes`, la séquence initiale est " "renvoyée si *width* est inférieure ou égale à ``len(s)``." -#: library/stdtypes.rst:2916 +#: library/stdtypes.rst:2939 msgid "" "Return a copy of the sequence with specified leading bytes removed. The " "*chars* argument is a binary sequence specifying the set of byte values to " @@ -4756,14 +4765,14 @@ msgstr "" "*chars* n’est pas un préfixe, toutes les combinaisons de ses valeurs sont " "supprimées ::" -#: library/stdtypes.rst:2928 +#: library/stdtypes.rst:2951 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`. See :meth:`~bytes.removeprefix` for a method that will remove a " "single prefix string rather than all of a set of characters. For example::" msgstr "" -#: library/stdtypes.rst:2947 +#: library/stdtypes.rst:2970 msgid "" "Return a copy of the object right justified in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4775,7 +4784,7 @@ msgstr "" "défaut est un espace ASCII). Pour les objets :class:`bytes`, la séquence " "d'origine est renvoyée si *width* est inférieure ou égale à ``len(s)``." -#: library/stdtypes.rst:2961 +#: library/stdtypes.rst:2984 msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given, at most *maxsplit* splits are " @@ -4792,7 +4801,7 @@ msgstr "" "meth:`rsplit` se comporte comme :meth:`split` qui est décrit en détail ci-" "dessous." -#: library/stdtypes.rst:2972 +#: library/stdtypes.rst:2995 msgid "" "Return a copy of the sequence with specified trailing bytes removed. The " "*chars* argument is a binary sequence specifying the set of byte values to " @@ -4807,14 +4816,14 @@ msgstr "" "supprimés. L'argument *chars* n'est pas un suffixe : toutes les combinaisons " "de ses valeurs sont retirées ::" -#: library/stdtypes.rst:2984 +#: library/stdtypes.rst:3007 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`. See :meth:`~bytes.removesuffix` for a method that will remove a " "single suffix string rather than all of a set of characters. For example::" msgstr "" -#: library/stdtypes.rst:3003 +#: library/stdtypes.rst:3026 msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given and non-negative, at most " @@ -4828,7 +4837,7 @@ msgstr "" "éléments), Si *maxsplit* n'est pas spécifié ou faut ``-1``, il n'y a aucune " "limite au nombre de découpes (elles sont toutes effectuées)." -#: library/stdtypes.rst:3009 +#: library/stdtypes.rst:3032 msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " "deemed to delimit empty subsequences (for example, ``b'1,,2'.split(b',')`` " @@ -4846,7 +4855,7 @@ msgstr "" "``[b'']`` ou ``[bytearray(b'')]`` en fonction du type de l'objet découpé. " "L'argument *sep* peut être n'importe quel :term:`bytes-like object`." -#: library/stdtypes.rst:3027 +#: library/stdtypes.rst:3050 msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " "applied: runs of consecutive ASCII whitespace are regarded as a single " @@ -4862,7 +4871,7 @@ msgstr "" "diviser une séquence vide ou une séquence composée d'espaces ASCII avec un " "séparateur ``None`` renvoie ``[]``." -#: library/stdtypes.rst:3048 +#: library/stdtypes.rst:3071 msgid "" "Return a copy of the sequence with specified leading and trailing bytes " "removed. The *chars* argument is a binary sequence specifying the set of " @@ -4878,14 +4887,14 @@ msgstr "" "espaces ASCII sont supprimés. L'argument *chars* n'est ni un préfixe ni un " "suffixe, toutes les combinaisons de ses valeurs sont supprimées ::" -#: library/stdtypes.rst:3061 +#: library/stdtypes.rst:3084 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`." msgstr "" "La séquence de valeurs à supprimer peut être tout :term:`bytes-like object`." -#: library/stdtypes.rst:3070 +#: library/stdtypes.rst:3093 msgid "" "The following methods on bytes and bytearray objects assume the use of ASCII " "compatible binary formats and should not be applied to arbitrary binary " @@ -4898,7 +4907,7 @@ msgstr "" "que toutes les méthodes de *bytearray* de cette section *ne modifient pas* " "les octets, ils produisent de nouveaux objets." -#: library/stdtypes.rst:3078 +#: library/stdtypes.rst:3101 msgid "" "Return a copy of the sequence with each byte interpreted as an ASCII " "character, and the first byte capitalized and the rest lowercased. Non-ASCII " @@ -4908,7 +4917,7 @@ msgstr "" "caractère ASCII, le premier octet en capitale et le reste en minuscules. Les " "octets non ASCII ne sont pas modifiés." -#: library/stdtypes.rst:3091 +#: library/stdtypes.rst:3114 msgid "" "Return a copy of the sequence where all ASCII tab characters are replaced by " "one or more ASCII spaces, depending on the current column and the given tab " @@ -4939,7 +4948,7 @@ msgstr "" "cours est incrémentée de un indépendamment de la façon dont l'octet est " "représenté lors de l’affichage ::" -#: library/stdtypes.rst:3119 +#: library/stdtypes.rst:3142 msgid "" "Return ``True`` if all bytes in the sequence are alphabetical ASCII " "characters or ASCII decimal digits and the sequence is not empty, ``False`` " @@ -4954,7 +4963,7 @@ msgstr "" "``b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'`` et les " "chiffres : ``b'0123456789'``." -#: library/stdtypes.rst:3136 +#: library/stdtypes.rst:3159 msgid "" "Return ``True`` if all bytes in the sequence are alphabetic ASCII characters " "and the sequence is not empty, ``False`` otherwise. Alphabetic ASCII " @@ -4966,7 +4975,7 @@ msgstr "" "caractères ASCII alphabétiques sont : " "``b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'``." -#: library/stdtypes.rst:3152 +#: library/stdtypes.rst:3175 msgid "" "Return ``True`` if the sequence is empty or all bytes in the sequence are " "ASCII, ``False`` otherwise. ASCII bytes are in the range 0-0x7F." @@ -4975,7 +4984,7 @@ msgstr "" "octets ASCII, renvoie ``False`` dans le cas contraire. Les octets ASCII dans " "l'intervalle ``0``---``0x7F``." -#: library/stdtypes.rst:3162 +#: library/stdtypes.rst:3185 msgid "" "Return ``True`` if all bytes in the sequence are ASCII decimal digits and " "the sequence is not empty, ``False`` otherwise. ASCII decimal digits are " @@ -4985,7 +4994,7 @@ msgstr "" "et que la séquence n'est pas vide, sinon ``False``. Les chiffres ASCII sont " "ceux dans la séquence d'octets ``b'0123456789'``." -#: library/stdtypes.rst:3177 +#: library/stdtypes.rst:3200 msgid "" "Return ``True`` if there is at least one lowercase ASCII character in the " "sequence and no uppercase ASCII characters, ``False`` otherwise." @@ -4993,8 +5002,8 @@ msgstr "" "Renvoie ``True`` s'il y a au moins un caractère ASCII minuscule dans la " "séquence et aucune capitale, sinon ``False``." -#: library/stdtypes.rst:3229 library/stdtypes.rst:3295 -#: library/stdtypes.rst:3364 +#: library/stdtypes.rst:3252 library/stdtypes.rst:3318 +#: library/stdtypes.rst:3387 msgid "" "Lowercase ASCII characters are those byte values in the sequence " "``b'abcdefghijklmnopqrstuvwxyz'``. Uppercase ASCII characters are those byte " @@ -5003,7 +5012,7 @@ msgstr "" "Les caractères ASCII minuscules sont ``b'abcdefghijklmnopqrstuvwxyz'``. Les " "capitales ASCII sont ``b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'``." -#: library/stdtypes.rst:3195 +#: library/stdtypes.rst:3218 msgid "" "Return ``True`` if all bytes in the sequence are ASCII whitespace and the " "sequence is not empty, ``False`` otherwise. ASCII whitespace characters are " @@ -5015,7 +5024,7 @@ msgstr "" "\\t\\n\\r\\x0b\\f'`` (espace, tabulation, saut de ligne, retour chariot, " "tabulation verticale, saut de page)." -#: library/stdtypes.rst:3204 +#: library/stdtypes.rst:3227 msgid "" "Return ``True`` if the sequence is ASCII titlecase and the sequence is not " "empty, ``False`` otherwise. See :meth:`bytes.title` for more details on the " @@ -5025,7 +5034,7 @@ msgstr "" "vide, sinon ``False``. Voir :meth:`bytes.title` pour plus de détails sur la " "définition de *titlecase*." -#: library/stdtypes.rst:3219 +#: library/stdtypes.rst:3242 msgid "" "Return ``True`` if there is at least one uppercase alphabetic ASCII " "character in the sequence and no lowercase ASCII characters, ``False`` " @@ -5034,7 +5043,7 @@ msgstr "" "Renvoie ``True`` s'il y a au moins un caractère alphabétique majuscule ASCII " "dans la séquence et aucun caractère ASCII minuscule, sinon ``False``." -#: library/stdtypes.rst:3237 +#: library/stdtypes.rst:3260 msgid "" "Return a copy of the sequence with all the uppercase ASCII characters " "converted to their corresponding lowercase counterpart." @@ -5042,7 +5051,7 @@ msgstr "" "Renvoie une copie de la séquence dont tous les caractères ASCII en " "majuscules sont convertis en leur équivalent en minuscules." -#: library/stdtypes.rst:3262 +#: library/stdtypes.rst:3285 msgid "" "Return a list of the lines in the binary sequence, breaking at ASCII line " "boundaries. This method uses the :term:`universal newlines` approach to " @@ -5054,7 +5063,7 @@ msgstr "" "newlines` pour découper les lignes. Les fins de ligne ne sont pas inclus " "dans la liste des résultats, sauf si *keepends* est donné et vrai." -#: library/stdtypes.rst:3274 +#: library/stdtypes.rst:3297 msgid "" "Unlike :meth:`~bytes.split` when a delimiter string *sep* is given, this " "method returns an empty list for the empty string, and a terminal line break " @@ -5064,7 +5073,7 @@ msgstr "" "cette méthode renvoie une liste vide pour la chaîne vide, et un saut de " "ligne à la fin ne se traduit pas par une ligne supplémentaire ::" -#: library/stdtypes.rst:3287 +#: library/stdtypes.rst:3310 msgid "" "Return a copy of the sequence with all the lowercase ASCII characters " "converted to their corresponding uppercase counterpart and vice-versa." @@ -5072,7 +5081,7 @@ msgstr "" "Renvoie une copie de la séquence dont tous les caractères ASCII minuscules " "sont convertis en majuscules et vice-versa." -#: library/stdtypes.rst:3299 +#: library/stdtypes.rst:3322 msgid "" "Unlike :func:`str.swapcase()`, it is always the case that ``bin.swapcase()." "swapcase() == bin`` for the binary versions. Case conversions are " @@ -5083,7 +5092,7 @@ msgstr "" "bin`` est toujours vrai. Les conversions majuscule/minuscule en ASCII étant " "toujours symétrique, ce qui n'est pas toujours vrai avec Unicode." -#: library/stdtypes.rst:3313 +#: library/stdtypes.rst:3336 msgid "" "Return a titlecased version of the binary sequence where words start with an " "uppercase ASCII character and the remaining characters are lowercase. " @@ -5093,7 +5102,7 @@ msgstr "" "commencent par un caractère ASCII majuscule et les caractères restants sont " "en minuscules. Les octets non capitalisables ne sont pas modifiés." -#: library/stdtypes.rst:3322 +#: library/stdtypes.rst:3345 msgid "" "Lowercase ASCII characters are those byte values in the sequence " "``b'abcdefghijklmnopqrstuvwxyz'``. Uppercase ASCII characters are those byte " @@ -5104,7 +5113,7 @@ msgstr "" "caractères ASCII majuscules sont ``b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'``. Aucun " "autre octet n'est capitalisable." -#: library/stdtypes.rst:3356 +#: library/stdtypes.rst:3379 msgid "" "Return a copy of the sequence with all the lowercase ASCII characters " "converted to their corresponding uppercase counterpart." @@ -5112,7 +5121,7 @@ msgstr "" "Renvoie une copie de la séquence dont tous les caractères ASCII minuscules " "sont convertis en leur équivalent majuscule." -#: library/stdtypes.rst:3377 +#: library/stdtypes.rst:3400 msgid "" "Return a copy of the sequence left filled with ASCII ``b'0'`` digits to make " "a sequence of length *width*. A leading sign prefix (``b'+'``/ ``b'-'``) is " @@ -5127,11 +5136,11 @@ msgstr "" "séquence d'origine est renvoyée si *width* est inférieur ou égale à " "``len(seq)``." -#: library/stdtypes.rst:3399 +#: library/stdtypes.rst:3422 msgid "``printf``-style Bytes Formatting" msgstr "Formatage de *bytes* a la ``printf``" -#: library/stdtypes.rst:3416 +#: library/stdtypes.rst:3439 msgid "" "The formatting operations described here exhibit a variety of quirks that " "lead to a number of common errors (such as failing to display tuples and " @@ -5144,7 +5153,7 @@ msgstr "" "correctement). Si la valeur à afficher peut être un *n*-uplet ou un " "dictionnaire, mettez le a l'intérieur d'un autre *n*-uplet." -#: library/stdtypes.rst:3421 +#: library/stdtypes.rst:3444 msgid "" "Bytes objects (``bytes``/``bytearray``) have one unique built-in operation: " "the ``%`` operator (modulo). This is also known as the bytes *formatting* or " @@ -5160,7 +5169,7 @@ msgstr "" "plus de *values*. L'effet est similaire à la fonction :c:func:`sprintf` du " "langage C." -#: library/stdtypes.rst:3428 +#: library/stdtypes.rst:3451 msgid "" "If *format* requires a single argument, *values* may be a single non-tuple " "object. [5]_ Otherwise, *values* must be a tuple with exactly the number of " @@ -5172,7 +5181,7 @@ msgstr "" "nombre d'éléments spécifiés dans le format en *bytes*, ou un seul objet de " "correspondances ( *mapping object*, par exemple, un dictionnaire)." -#: library/stdtypes.rst:3462 +#: library/stdtypes.rst:3485 msgid "" "When the right argument is a dictionary (or other mapping type), then the " "formats in the bytes object *must* include a parenthesised mapping key into " @@ -5185,15 +5194,15 @@ msgstr "" "caractère ``'%'``. La clé indique quelle valeur du dictionnaire doit être " "formatée. Par exemple :" -#: library/stdtypes.rst:3536 +#: library/stdtypes.rst:3559 msgid "Single byte (accepts integer or single byte objects)." msgstr "Octet simple (Accepte un nombre entier ou un seul objet *byte*)." -#: library/stdtypes.rst:3539 +#: library/stdtypes.rst:3562 msgid "``'b'``" msgstr "``'b'``" -#: library/stdtypes.rst:3539 +#: library/stdtypes.rst:3562 msgid "" "Bytes (any object that follows the :ref:`buffer protocol ` or " "has :meth:`__bytes__`)." @@ -5201,7 +5210,7 @@ msgstr "" "*Bytes* (tout objet respectant le :ref:`buffer protocol ` ou " "ayant la méthode :meth:`__bytes__`)." -#: library/stdtypes.rst:3543 +#: library/stdtypes.rst:3566 msgid "" "``'s'`` is an alias for ``'b'`` and should only be used for Python2/3 code " "bases." @@ -5209,7 +5218,7 @@ msgstr "" "``'s'`` est un alias de ``'b'`` et ne devrait être utilisé que pour du code " "Python2/3." -#: library/stdtypes.rst:3546 +#: library/stdtypes.rst:3569 msgid "" "Bytes (converts any Python object using ``repr(obj)." "encode('ascii','backslashreplace)``)." @@ -5217,7 +5226,7 @@ msgstr "" "*Bytes* (convertis n'importe quel objet Python en utilisant ``repr(obj)." "encode('ascii', 'backslashreplace)``)." -#: library/stdtypes.rst:3549 +#: library/stdtypes.rst:3572 msgid "" "``'r'`` is an alias for ``'a'`` and should only be used for Python2/3 code " "bases." @@ -5225,27 +5234,27 @@ msgstr "" "``'r'`` est un alias de ``'a'`` et ne devrait être utilise que dans du code " "Python2/3." -#: library/stdtypes.rst:3549 +#: library/stdtypes.rst:3572 msgid "\\(7)" msgstr "\\(7)" -#: library/stdtypes.rst:3584 +#: library/stdtypes.rst:3607 msgid "``b'%s'`` is deprecated, but will not be removed during the 3.x series." msgstr "``b'%s'`` est obsolète, mais ne sera pas retiré des version 3.x." -#: library/stdtypes.rst:3587 +#: library/stdtypes.rst:3610 msgid "``b'%r'`` is deprecated, but will not be removed during the 3.x series." msgstr "``b'%r'`` est obsolète mais ne sera pas retiré dans Python 3.x." -#: library/stdtypes.rst:3599 +#: library/stdtypes.rst:3622 msgid ":pep:`461` - Adding % formatting to bytes and bytearray" msgstr ":pep:`461` -- Ajout du formatage via % aux *bytes* et *bytesarray*" -#: library/stdtypes.rst:3606 +#: library/stdtypes.rst:3629 msgid "Memory Views" msgstr "Vues de mémoires" -#: library/stdtypes.rst:3608 +#: library/stdtypes.rst:3631 msgid "" ":class:`memoryview` objects allow Python code to access the internal data of " "an object that supports the :ref:`buffer protocol ` without " @@ -5255,7 +5264,7 @@ msgstr "" "données internes d'un objet prenant en charge le :ref:`buffer protocol " "`." -#: library/stdtypes.rst:3614 +#: library/stdtypes.rst:3637 #, fuzzy msgid "" "Create a :class:`memoryview` that references *object*. *object* must " @@ -5266,7 +5275,7 @@ msgstr "" "le *buffer protocol*. Les objets natifs prenant en charge le *buffer " "protocol* sont :class:`bytes` et :class:`bytearray`." -#: library/stdtypes.rst:3618 +#: library/stdtypes.rst:3641 #, fuzzy msgid "" "A :class:`memoryview` has the notion of an *element*, which is the atomic " @@ -5280,7 +5289,7 @@ msgstr "" "d'autres types tels que :class:`array.array` les éléments peuvent être plus " "grands." -#: library/stdtypes.rst:3623 +#: library/stdtypes.rst:3646 msgid "" "``len(view)`` is equal to the length of :class:`~memoryview.tolist`. If " "``view.ndim = 0``, the length is 1. If ``view.ndim = 1``, the length is " @@ -5296,7 +5305,7 @@ msgstr "" "L'attribut :class:`~memoryview.itemsize` vous donnera la taille en octets " "d'un élément." -#: library/stdtypes.rst:3630 +#: library/stdtypes.rst:3653 msgid "" "A :class:`memoryview` supports slicing and indexing to expose its data. One-" "dimensional slicing will result in a subview::" @@ -5304,7 +5313,7 @@ msgstr "" "Une :class:`memoryview` autorise le découpage et l'indiçage de ses données. " "Découper sur une dimension donnera une sous-vue ::" -#: library/stdtypes.rst:3643 +#: library/stdtypes.rst:3666 msgid "" "If :class:`~memoryview.format` is one of the native format specifiers from " "the :mod:`struct` module, indexing with an integer or a tuple of integers is " @@ -5323,11 +5332,11 @@ msgstr "" "Les *memoryviews* à zéro dimension peuvent être indexées avec un *n*-uplet " "vide." -#: library/stdtypes.rst:3652 +#: library/stdtypes.rst:3675 msgid "Here is an example with a non-byte format::" msgstr "Voici un exemple avec un autre format que *byte* ::" -#: library/stdtypes.rst:3664 +#: library/stdtypes.rst:3687 msgid "" "If the underlying object is writable, the memoryview supports one-" "dimensional slice assignment. Resizing is not allowed::" @@ -5336,7 +5345,7 @@ msgstr "" "autorisera les assignations de tranches à une dimension. Redimensionner " "n'est cependant pas autorisé ::" -#: library/stdtypes.rst:3685 +#: library/stdtypes.rst:3708 msgid "" "One-dimensional memoryviews of hashable (read-only) types with formats 'B', " "'b' or 'c' are also hashable. The hash is defined as ``hash(m) == hash(m." @@ -5346,7 +5355,7 @@ msgstr "" "les formats 'B', 'b', ou 'c' sont aussi hachables. La fonction de hachage " "est définie tel que ``hash(m) == hash(m.tobytes())`` ::" -#: library/stdtypes.rst:3697 +#: library/stdtypes.rst:3720 msgid "" "One-dimensional memoryviews can now be sliced. One-dimensional memoryviews " "with formats 'B', 'b' or 'c' are now hashable." @@ -5355,7 +5364,7 @@ msgstr "" "*memoryviews* à une dimension avec les formats 'B', 'b', ou 'c' sont " "maintenant hachables." -#: library/stdtypes.rst:3701 +#: library/stdtypes.rst:3724 msgid "" "memoryview is now registered automatically with :class:`collections.abc." "Sequence`" @@ -5363,16 +5372,16 @@ msgstr "" "*memoryview* est maintenant enregistrée automatiquement avec :class:" "`collections.abc.Sequence`" -#: library/stdtypes.rst:3705 +#: library/stdtypes.rst:3728 msgid "memoryviews can now be indexed with tuple of integers." msgstr "" "les *memoryviews* peut maintenant être indexées par un *n*-uplet d'entiers." -#: library/stdtypes.rst:3708 +#: library/stdtypes.rst:3731 msgid ":class:`memoryview` has several methods:" msgstr "La :class:`memoryview` dispose de plusieurs méthodes :" -#: library/stdtypes.rst:3712 +#: library/stdtypes.rst:3735 msgid "" "A memoryview and a :pep:`3118` exporter are equal if their shapes are " "equivalent and if all corresponding values are equal when the operands' " @@ -5383,7 +5392,7 @@ msgstr "" "égales, le format respectifs des opérandes étant interprétés en utilisant la " "syntaxe de :mod:`struct`." -#: library/stdtypes.rst:3716 +#: library/stdtypes.rst:3739 msgid "" "For the subset of :mod:`struct` format strings currently supported by :meth:" "`tolist`, ``v`` and ``w`` are equal if ``v.tolist() == w.tolist()``::" @@ -5391,7 +5400,7 @@ msgstr "" "Pour le sous-ensemble des formats de :mod:`struct` supportés par :meth:" "`tolist`, ``v`` et ``w`` sont égaux si ``v.tolist() ==w.tolist()`` ::" -#: library/stdtypes.rst:3735 +#: library/stdtypes.rst:3758 msgid "" "If either format string is not supported by the :mod:`struct` module, then " "the objects will always compare as unequal (even if the format strings and " @@ -5401,7 +5410,7 @@ msgstr "" "objets seront toujours considérés différents (même si les formats et les " "valeurs contenues sont identiques) ::" -#: library/stdtypes.rst:3751 +#: library/stdtypes.rst:3774 msgid "" "Note that, as with floating point numbers, ``v is w`` does *not* imply ``v " "== w`` for memoryview objects." @@ -5409,7 +5418,7 @@ msgstr "" "Notez que pour les *memoryview*, comme pour les nombres à virgule flottante, " "``v is w`` *n'implique pas* ``v == w``." -#: library/stdtypes.rst:3754 +#: library/stdtypes.rst:3777 msgid "" "Previous versions compared the raw memory disregarding the item format and " "the logical array structure." @@ -5417,7 +5426,7 @@ msgstr "" "Les versions précédentes comparaient la mémoire brute sans tenir compte du " "format de l'objet ni de sa structure logique." -#: library/stdtypes.rst:3760 +#: library/stdtypes.rst:3783 msgid "" "Return the data in the buffer as a bytestring. This is equivalent to " "calling the :class:`bytes` constructor on the memoryview. ::" @@ -5425,7 +5434,7 @@ msgstr "" "Renvoie les données du *buffer* sous forme de *bytes*. Cela équivaut à " "appeler le constructeur :class:`bytes` sur le *memoryview*. ::" -#: library/stdtypes.rst:3769 +#: library/stdtypes.rst:3792 msgid "" "For non-contiguous arrays the result is equal to the flattened list " "representation with all elements converted to bytes. :meth:`tobytes` " @@ -5437,7 +5446,7 @@ msgstr "" "`tobytes` supporte toutes les chaînes de format, y compris celles qui ne " "sont pas connues du module :mod:`struct`." -#: library/stdtypes.rst:3774 +#: library/stdtypes.rst:3797 msgid "" "*order* can be {'C', 'F', 'A'}. When *order* is 'C' or 'F', the data of the " "original array is converted to C or Fortran order. For contiguous views, 'A' " @@ -5452,7 +5461,7 @@ msgstr "" "contiguës, les données sont d'abord converties en C. `order=None` est " "identique à `order='C'`." -#: library/stdtypes.rst:3783 +#: library/stdtypes.rst:3806 msgid "" "Return a string object containing two hexadecimal digits for each byte in " "the buffer. ::" @@ -5460,7 +5469,7 @@ msgstr "" "Renvoie une chaîne contenant deux chiffres hexadécimaux pour chaque octet de " "la mémoire. ::" -#: library/stdtypes.rst:3792 +#: library/stdtypes.rst:3815 #, fuzzy msgid "" "Similar to :meth:`bytes.hex`, :meth:`memoryview.hex` now supports optional " @@ -5471,12 +5480,12 @@ msgstr "" "et *bytes_per_sep* pour insérer des séparateurs entre les octets dans la " "sortie hexadécimale." -#: library/stdtypes.rst:3799 +#: library/stdtypes.rst:3822 msgid "Return the data in the buffer as a list of elements. ::" msgstr "" "Renvoie les données de la mémoire sous la forme d'une liste d'éléments. ::" -#: library/stdtypes.rst:3809 +#: library/stdtypes.rst:3832 msgid "" ":meth:`tolist` now supports all single character native formats in :mod:" "`struct` module syntax as well as multi-dimensional representations." @@ -5484,7 +5493,7 @@ msgstr "" ":meth:`tolist` prend désormais en charge tous les formats d'un caractère du " "module :mod:`struct` ainsi que des représentations multidimensionnelles." -#: library/stdtypes.rst:3816 +#: library/stdtypes.rst:3839 msgid "" "Return a readonly version of the memoryview object. The original memoryview " "object is unchanged. ::" @@ -5492,7 +5501,7 @@ msgstr "" "Renvoie une version en lecture seule de l'objet *memoryview*. Cet objet " "original *memoryview* est inchangé. ::" -#: library/stdtypes.rst:3835 +#: library/stdtypes.rst:3858 msgid "" "Release the underlying buffer exposed by the memoryview object. Many " "objects take special actions when a view is held on them (for example, a :" @@ -5507,7 +5516,7 @@ msgstr "" "lever ces restrictions (et en libérer les ressources liées) aussi tôt que " "possible." -#: library/stdtypes.rst:3841 +#: library/stdtypes.rst:3864 msgid "" "After this method has been called, any further operation on the view raises " "a :class:`ValueError` (except :meth:`release()` itself which can be called " @@ -5517,7 +5526,7 @@ msgstr "" "*view* lève une :class:`ValueError` (sauf :meth:`release()` elle-même qui " "peut être appelée plusieurs fois) ::" -#: library/stdtypes.rst:3852 +#: library/stdtypes.rst:3875 msgid "" "The context management protocol can be used for a similar effect, using the " "``with`` statement::" @@ -5525,7 +5534,7 @@ msgstr "" "Le protocole de gestion de contexte peut être utilisé pour obtenir un effet " "similaire, via l'instruction ``with`` ::" -#: library/stdtypes.rst:3868 +#: library/stdtypes.rst:3891 msgid "" "Cast a memoryview to a new format or shape. *shape* defaults to " "``[byte_length//new_itemsize]``, which means that the result view will be " @@ -5539,7 +5548,7 @@ msgstr "" "mais la mémoire elle-même n'est pas copiée. Les changements supportés sont " "une dimension vers C-:term:`contiguous` et *C-contiguous* vers une dimension." -#: library/stdtypes.rst:3874 +#: library/stdtypes.rst:3897 msgid "" "The destination format is restricted to a single element native format in :" "mod:`struct` syntax. One of the formats must be a byte format ('B', 'b' or " @@ -5550,37 +5559,37 @@ msgstr "" "'c'). La longueur du résultat en octets doit être la même que la longueur " "initiale." -#: library/stdtypes.rst:3879 +#: library/stdtypes.rst:3902 msgid "Cast 1D/long to 1D/unsigned bytes::" msgstr "Transforme *1D/long* en *1D/unsigned bytes* ::" -#: library/stdtypes.rst:3902 +#: library/stdtypes.rst:3925 msgid "Cast 1D/unsigned bytes to 1D/char::" msgstr "Transforme *1D/unsigned bytes* en *1D/char* ::" -#: library/stdtypes.rst:3915 +#: library/stdtypes.rst:3938 msgid "Cast 1D/bytes to 3D/ints to 1D/signed char::" msgstr "Transforme *1D/bytes* en *3D/ints* en *1D/signed char* ::" -#: library/stdtypes.rst:3941 +#: library/stdtypes.rst:3964 msgid "Cast 1D/unsigned long to 2D/unsigned long::" msgstr "Transforme *1D/unsigned char* en *2D/unsigned long* ::" -#: library/stdtypes.rst:3955 +#: library/stdtypes.rst:3978 msgid "The source format is no longer restricted when casting to a byte view." msgstr "" "Le format de la source n'est plus restreint lors de la transformation vers " "une vue d'octets." -#: library/stdtypes.rst:3958 +#: library/stdtypes.rst:3981 msgid "There are also several readonly attributes available:" msgstr "Plusieurs attributs en lecture seule sont également disponibles :" -#: library/stdtypes.rst:3962 +#: library/stdtypes.rst:3985 msgid "The underlying object of the memoryview::" msgstr "L'objet sous-jacent de la *memoryview* ::" -#: library/stdtypes.rst:3973 +#: library/stdtypes.rst:3996 msgid "" "``nbytes == product(shape) * itemsize == len(m.tobytes())``. This is the " "amount of space in bytes that the array would use in a contiguous " @@ -5590,15 +5599,15 @@ msgstr "" "l'espace que la liste utiliserait en octets, dans une représentation " "contiguë. Ce n'est pas nécessairement égale à ``len(m)`` ::" -#: library/stdtypes.rst:3992 +#: library/stdtypes.rst:4015 msgid "Multi-dimensional arrays::" msgstr "Tableaux multidimensionnels ::" -#: library/stdtypes.rst:4009 +#: library/stdtypes.rst:4032 msgid "A bool indicating whether the memory is read only." msgstr "Un booléen indiquant si la mémoire est en lecture seule." -#: library/stdtypes.rst:4013 +#: library/stdtypes.rst:4036 msgid "" "A string containing the format (in :mod:`struct` module style) for each " "element in the view. A memoryview can be created from exporters with " @@ -5610,7 +5619,7 @@ msgstr "" "de formats arbitraires, mais certaines méthodes (comme :meth:`tolist`) sont " "limitées aux formats natifs à un seul élément." -#: library/stdtypes.rst:4018 +#: library/stdtypes.rst:4041 msgid "" "format ``'B'`` is now handled according to the struct module syntax. This " "means that ``memoryview(b'abc')[0] == b'abc'[0] == 97``." @@ -5618,11 +5627,11 @@ msgstr "" "le format ``'B'`` est maintenant traité selon la syntaxe du module *struct*. " "Cela signifie que ``memoryview(b'abc')[0] == b'abc'[0] == 97``." -#: library/stdtypes.rst:4024 +#: library/stdtypes.rst:4047 msgid "The size in bytes of each element of the memoryview::" msgstr "La taille en octets de chaque élément d'une *memoryview* ::" -#: library/stdtypes.rst:4037 +#: library/stdtypes.rst:4060 msgid "" "An integer indicating how many dimensions of a multi-dimensional array the " "memory represents." @@ -5630,7 +5639,7 @@ msgstr "" "Un nombre entier indiquant le nombre de dimensions d'un tableau multi-" "dimensionnel représenté par la *memoryview*." -#: library/stdtypes.rst:4042 +#: library/stdtypes.rst:4065 msgid "" "A tuple of integers the length of :attr:`ndim` giving the shape of the " "memory as an N-dimensional array." @@ -5638,11 +5647,11 @@ msgstr "" "Un *n*-uplet d'entiers de longueur :attr:`ndim` donnant la forme de la " "*memoryview* sous forme d'un tableau à N dimensions." -#: library/stdtypes.rst:4053 +#: library/stdtypes.rst:4076 msgid "An empty tuple instead of ``None`` when ndim = 0." msgstr "Un *n*-uplet vide au lieu de ``None`` lorsque *ndim = 0*." -#: library/stdtypes.rst:4050 +#: library/stdtypes.rst:4073 msgid "" "A tuple of integers the length of :attr:`ndim` giving the size in bytes to " "access each element for each dimension of the array." @@ -5650,29 +5659,29 @@ msgstr "" "Un *n*-uplet d'entiers de longueur :attr:`ndim` donnant la taille en octets " "permettant d'accéder à chaque dimensions du tableau." -#: library/stdtypes.rst:4058 +#: library/stdtypes.rst:4081 msgid "Used internally for PIL-style arrays. The value is informational only." msgstr "" "Détail de l'implémentation des *PIL-style arrays*. La valeur n'est donné " "qu'a titre d'information." -#: library/stdtypes.rst:4062 +#: library/stdtypes.rst:4085 msgid "A bool indicating whether the memory is C-:term:`contiguous`." msgstr "Un booléen indiquant si la mémoire est C-:term:`contiguous`." -#: library/stdtypes.rst:4068 +#: library/stdtypes.rst:4091 msgid "A bool indicating whether the memory is Fortran :term:`contiguous`." msgstr "Un booléen indiquant si la mémoire est Fortran :term:`contiguous`." -#: library/stdtypes.rst:4074 +#: library/stdtypes.rst:4097 msgid "A bool indicating whether the memory is :term:`contiguous`." msgstr "Un booléen indiquant si la mémoire est :term:`contiguous`." -#: library/stdtypes.rst:4082 +#: library/stdtypes.rst:4105 msgid "Set Types --- :class:`set`, :class:`frozenset`" msgstr "Types d'ensembles — :class:`set`, :class:`frozenset`" -#: library/stdtypes.rst:4086 +#: library/stdtypes.rst:4109 msgid "" "A :dfn:`set` object is an unordered collection of distinct :term:`hashable` " "objects. Common uses include membership testing, removing duplicates from a " @@ -5688,7 +5697,7 @@ msgstr "" "(Pour les autres conteneurs, voir les classes natives :class:`dict`, :class:" "`list`, et :class:`tuple`, ainsi que le module :mod:`collections`.)" -#: library/stdtypes.rst:4093 +#: library/stdtypes.rst:4116 msgid "" "Like other collections, sets support ``x in set``, ``len(set)``, and ``for x " "in set``. Being an unordered collection, sets do not record element " @@ -5701,7 +5710,7 @@ msgstr "" "d'insertion. En conséquence, les *sets* n'autorisent ni l'indexation, ni le " "découpage, ou tout autre comportement de séquence." -#: library/stdtypes.rst:4098 +#: library/stdtypes.rst:4121 msgid "" "There are currently two built-in set types, :class:`set` and :class:" "`frozenset`. The :class:`set` type is mutable --- the contents can be " @@ -5721,7 +5730,7 @@ msgstr "" "--- son contenu ne peut être modifié après sa création, il peut ainsi être " "utilisé comme clef de dictionnaire ou élément d'un autre *set*." -#: library/stdtypes.rst:4106 +#: library/stdtypes.rst:4129 msgid "" "Non-empty sets (not frozensets) can be created by placing a comma-separated " "list of elements within braces, for example: ``{'jack', 'sjoerd'}``, in " @@ -5731,11 +5740,11 @@ msgstr "" "d'éléments séparés par des virgules et entre accolades, par exemple : " "``{'jack', 'sjoerd'}``, en plus du constructeur de la classe :class:`set`." -#: library/stdtypes.rst:4110 +#: library/stdtypes.rst:4133 msgid "The constructors for both classes work the same:" msgstr "Les constructeurs des deux classes fonctionnent pareil :" -#: library/stdtypes.rst:4115 +#: library/stdtypes.rst:4138 msgid "" "Return a new set or frozenset object whose elements are taken from " "*iterable*. The elements of a set must be :term:`hashable`. To represent " @@ -5748,23 +5757,23 @@ msgstr "" "class:`frozenset`. Si *iterable* n'est pas spécifié, un nouveau *set* vide " "est renvoyé." -#: library/stdtypes.rst:4121 +#: library/stdtypes.rst:4144 #, fuzzy msgid "Sets can be created by several means:" msgstr "Les listes peuvent être construites de différentes manières :" -#: library/stdtypes.rst:4123 +#: library/stdtypes.rst:4146 msgid "" "Use a comma-separated list of elements within braces: ``{'jack', 'sjoerd'}``" msgstr "" -#: library/stdtypes.rst:4124 +#: library/stdtypes.rst:4147 #, fuzzy msgid "" "Use a set comprehension: ``{c for c in 'abracadabra' if c not in 'abc'}``" msgstr "En utilisant une liste en compréhension : ``[x for x in iterable]``" -#: library/stdtypes.rst:4125 +#: library/stdtypes.rst:4148 #, fuzzy msgid "" "Use the type constructor: ``set()``, ``set('foobar')``, ``set(['a', 'b', " @@ -5772,7 +5781,7 @@ msgid "" msgstr "" "En utilisant le constructeur du type : ``list()`` ou ``list(iterable)``" -#: library/stdtypes.rst:4127 +#: library/stdtypes.rst:4150 msgid "" "Instances of :class:`set` and :class:`frozenset` provide the following " "operations:" @@ -5780,19 +5789,19 @@ msgstr "" "Les instances de :class:`set` et :class:`frozenset` fournissent les " "opérations suivantes :" -#: library/stdtypes.rst:4132 +#: library/stdtypes.rst:4155 msgid "Return the number of elements in set *s* (cardinality of *s*)." msgstr "Donne le nombre d'éléments dans le *set* *s* (cardinalité de *s*)." -#: library/stdtypes.rst:4136 +#: library/stdtypes.rst:4159 msgid "Test *x* for membership in *s*." msgstr "Test d'appartenance de *x* dans *s*." -#: library/stdtypes.rst:4140 +#: library/stdtypes.rst:4163 msgid "Test *x* for non-membership in *s*." msgstr "Test de non-appartenance de *x* dans *s*." -#: library/stdtypes.rst:4144 +#: library/stdtypes.rst:4167 msgid "" "Return ``True`` if the set has no elements in common with *other*. Sets are " "disjoint if and only if their intersection is the empty set." @@ -5801,11 +5810,11 @@ msgstr "" "Les ensembles sont disjoints si et seulement si leurs intersection est un " "ensemble vide." -#: library/stdtypes.rst:4150 +#: library/stdtypes.rst:4173 msgid "Test whether every element in the set is in *other*." msgstr "Teste si tous les éléments du set sont dans *other*." -#: library/stdtypes.rst:4154 +#: library/stdtypes.rst:4177 msgid "" "Test whether the set is a proper subset of *other*, that is, ``set <= other " "and set != other``." @@ -5813,11 +5822,11 @@ msgstr "" "Teste si l'ensemble est un sous-ensemble de *other*, c'est-à-dire, ``set <= " "other and set != other``." -#: library/stdtypes.rst:4160 +#: library/stdtypes.rst:4183 msgid "Test whether every element in *other* is in the set." msgstr "Teste si tous les éléments de *other* sont dans l'ensemble." -#: library/stdtypes.rst:4164 +#: library/stdtypes.rst:4187 msgid "" "Test whether the set is a proper superset of *other*, that is, ``set >= " "other and set != other``." @@ -5825,43 +5834,44 @@ msgstr "" "Teste si l'ensemble est un sur-ensemble de *other*, c'est-à-dire, ``set >= " "other and set != other``." -#: library/stdtypes.rst:4170 +#: library/stdtypes.rst:4193 msgid "Return a new set with elements from the set and all others." msgstr "" "Renvoie un nouvel ensemble dont les éléments viennent de l'ensemble et de " "tous les autres." -#: library/stdtypes.rst:4175 +#: library/stdtypes.rst:4198 msgid "Return a new set with elements common to the set and all others." msgstr "" "Renvoie un nouvel ensemble dont les éléments sont commun à l'ensemble et à " "tous les autres." -#: library/stdtypes.rst:4180 +#: library/stdtypes.rst:4203 msgid "Return a new set with elements in the set that are not in the others." msgstr "" "Renvoie un nouvel ensemble dont les éléments sont dans l'ensemble mais ne " "sont dans aucun des autres." -#: library/stdtypes.rst:4185 +#: library/stdtypes.rst:4208 msgid "" "Return a new set with elements in either the set or *other* but not both." msgstr "" "Renvoie un nouvel ensemble dont les éléments sont soit dans l'ensemble, soit " "dans les autres, mais pas dans les deux." -#: library/stdtypes.rst:4189 +#: library/stdtypes.rst:4212 msgid "Return a shallow copy of the set." msgstr "Renvoie une copie de surface du dictionnaire." -#: library/stdtypes.rst:4192 +#: library/stdtypes.rst:4215 +#, fuzzy msgid "" "Note, the non-operator versions of :meth:`union`, :meth:`intersection`, :" -"meth:`difference`, and :meth:`symmetric_difference`, :meth:`issubset`, and :" -"meth:`issuperset` methods will accept any iterable as an argument. In " -"contrast, their operator based counterparts require their arguments to be " -"sets. This precludes error-prone constructions like ``set('abc') & 'cbs'`` " -"in favor of the more readable ``set('abc').intersection('cbs')``." +"meth:`difference`, :meth:`symmetric_difference`, :meth:`issubset`, and :meth:" +"`issuperset` methods will accept any iterable as an argument. In contrast, " +"their operator based counterparts require their arguments to be sets. This " +"precludes error-prone constructions like ``set('abc') & 'cbs'`` in favor of " +"the more readable ``set('abc').intersection('cbs')``." msgstr "" "Remarque : Les méthodes :meth:`union`, :meth:`intersection`, :meth:" "`difference`, et :meth:`symmetric_difference`, :meth:`issubset`, et :meth:" @@ -5871,7 +5881,7 @@ msgstr "" "typiques d'erreurs, en faveur d'une construction plus lisible : ``set('abc')." "intersection('cbs')``." -#: library/stdtypes.rst:4199 +#: library/stdtypes.rst:4222 msgid "" "Both :class:`set` and :class:`frozenset` support set to set comparisons. Two " "sets are equal if and only if every element of each set is contained in the " @@ -5889,7 +5899,7 @@ msgstr "" "autre ensemble si et seulement si le premier est un sur-ensemble du second " "(est un sur-ensemble mais n'est pas égal)." -#: library/stdtypes.rst:4206 +#: library/stdtypes.rst:4229 msgid "" "Instances of :class:`set` are compared to instances of :class:`frozenset` " "based on their members. For example, ``set('abc') == frozenset('abc')`` " @@ -5900,7 +5910,7 @@ msgstr "" "frozenset('abc')`` envoie ``True``, ainsi que ``set('abc') in " "set([frozenset('abc')])``." -#: library/stdtypes.rst:4210 +#: library/stdtypes.rst:4233 msgid "" "The subset and equality comparisons do not generalize to a total ordering " "function. For example, any two nonempty disjoint sets are not equal and are " @@ -5912,7 +5922,7 @@ msgstr "" "vides ne sont ni égaux et ni des sous-ensembles l'un de l'autre, donc toutes " "ces comparaisons donnent ``False`` : ``ab``." -#: library/stdtypes.rst:4215 +#: library/stdtypes.rst:4238 msgid "" "Since sets only define partial ordering (subset relationships), the output " "of the :meth:`list.sort` method is undefined for lists of sets." @@ -5921,13 +5931,13 @@ msgstr "" "de sous-ensembles), la sortie de la méthode :meth:`list.sort` n'est pas " "définie pour des listes d'ensembles." -#: library/stdtypes.rst:4218 +#: library/stdtypes.rst:4241 msgid "Set elements, like dictionary keys, must be :term:`hashable`." msgstr "" "Les éléments des *sets*, comme les clefs de dictionnaires, doivent être :" "term:`hashable`." -#: library/stdtypes.rst:4220 +#: library/stdtypes.rst:4243 msgid "" "Binary operations that mix :class:`set` instances with :class:`frozenset` " "return the type of the first operand. For example: ``frozenset('ab') | " @@ -5937,7 +5947,7 @@ msgstr "" "`frozenset` renvoient le type de la première opérande. Par exemple : " "``frozenset('ab') | set('bc')`` renvoie une instance de :class:`frozenset`." -#: library/stdtypes.rst:4224 +#: library/stdtypes.rst:4247 msgid "" "The following table lists operations available for :class:`set` that do not " "apply to immutable instances of :class:`frozenset`:" @@ -5945,32 +5955,32 @@ msgstr "" "La table suivante liste les opérations disponibles pour les :class:`set` " "mais qui ne s'appliquent pas aux instances de :class:`frozenset` :" -#: library/stdtypes.rst:4230 +#: library/stdtypes.rst:4253 msgid "Update the set, adding elements from all others." msgstr "Met à jour l'ensemble, ajoutant les éléments de tous les autres." -#: library/stdtypes.rst:4235 +#: library/stdtypes.rst:4258 msgid "Update the set, keeping only elements found in it and all others." msgstr "" "Met à jour l'ensemble, ne gardant que les éléments trouvés dans tous les " "autres." -#: library/stdtypes.rst:4240 +#: library/stdtypes.rst:4263 msgid "Update the set, removing elements found in others." msgstr "Met à jour l'ensemble, retirant les éléments trouvés dans les autres." -#: library/stdtypes.rst:4245 +#: library/stdtypes.rst:4268 msgid "" "Update the set, keeping only elements found in either set, but not in both." msgstr "" "Met à jour le set, ne gardant que les éléments trouvés dans un des ensembles " "mais pas dans les deux." -#: library/stdtypes.rst:4249 +#: library/stdtypes.rst:4272 msgid "Add element *elem* to the set." msgstr "Ajoute l'élément *elem* au set." -#: library/stdtypes.rst:4253 +#: library/stdtypes.rst:4276 msgid "" "Remove element *elem* from the set. Raises :exc:`KeyError` if *elem* is not " "contained in the set." @@ -5978,11 +5988,11 @@ msgstr "" "Retire l'élément *elem* de l'ensemble. Lève une exception :exc:`KeyError` si " "*elem* n'est pas dans l'ensemble." -#: library/stdtypes.rst:4258 +#: library/stdtypes.rst:4281 msgid "Remove element *elem* from the set if it is present." msgstr "Retire l'élément *elem* de l'ensemble s'il y est." -#: library/stdtypes.rst:4262 +#: library/stdtypes.rst:4285 msgid "" "Remove and return an arbitrary element from the set. Raises :exc:`KeyError` " "if the set is empty." @@ -5990,11 +6000,11 @@ msgstr "" "Retire et renvoie un élément arbitraire de l'ensemble. Lève une exception :" "exc:`KeyError` si l'ensemble est vide." -#: library/stdtypes.rst:4267 +#: library/stdtypes.rst:4290 msgid "Remove all elements from the set." msgstr "Supprime tous les éléments du *set*." -#: library/stdtypes.rst:4270 +#: library/stdtypes.rst:4293 msgid "" "Note, the non-operator versions of the :meth:`update`, :meth:" "`intersection_update`, :meth:`difference_update`, and :meth:" @@ -6006,7 +6016,7 @@ msgstr "" "`symmetric_difference_update` acceptent n'importe quel itérable comme " "argument." -#: library/stdtypes.rst:4275 +#: library/stdtypes.rst:4298 msgid "" "Note, the *elem* argument to the :meth:`__contains__`, :meth:`remove`, and :" "meth:`discard` methods may be a set. To support searching for an equivalent " @@ -6017,11 +6027,11 @@ msgstr "" "recherche d'un *frozenset* équivalent, un *frozenset* temporaire est crée " "depuis *elem*." -#: library/stdtypes.rst:4283 +#: library/stdtypes.rst:4306 msgid "Mapping Types --- :class:`dict`" msgstr "Les types de correspondances — :class:`dict`" -#: library/stdtypes.rst:4293 +#: library/stdtypes.rst:4316 msgid "" "A :term:`mapping` object maps :term:`hashable` values to arbitrary objects. " "Mappings are mutable objects. There is currently only one standard mapping " @@ -6035,7 +6045,7 @@ msgstr "" "(Pour les autres conteneurs, voir les types natifs :class:`list`, :class:" "`set`, et :class:`tuple`, ainsi que le module :mod:`collections`.)" -#: library/stdtypes.rst:4299 +#: library/stdtypes.rst:4322 msgid "" "A dictionary's keys are *almost* arbitrary values. Values that are not :" "term:`hashable`, that is, values containing lists, dictionaries or other " @@ -6058,7 +6068,7 @@ msgstr "" "d'approximations, il est généralement imprudent de les utiliser comme clefs " "de dictionnaires.)" -#: library/stdtypes.rst:4308 +#: library/stdtypes.rst:4331 msgid "" "Dictionaries can be created by placing a comma-separated list of ``key: " "value`` pairs within braces, for example: ``{'jack': 4098, 'sjoerd': 4127}`` " @@ -6069,7 +6079,7 @@ msgstr "" "``{'jack': 4098, 'sjoerd': 4127}`` ou ``{4098: 'jack', 4127: 'sjoerd'}``, ou " "en utilisant le constructeur de :class:`dict`." -#: library/stdtypes.rst:4316 +#: library/stdtypes.rst:4339 msgid "" "Return a new dictionary initialized from an optional positional argument and " "a possibly empty set of keyword arguments." @@ -6077,12 +6087,12 @@ msgstr "" "Renvoie un nouveau dictionnaire initialisé depuis un argument positionnel " "optionnel, et un ensemble (vide ou non) d'arguments par mot clef." -#: library/stdtypes.rst:4319 +#: library/stdtypes.rst:4342 #, fuzzy msgid "Dictionaries can be created by several means:" msgstr "Les listes peuvent être construites de différentes manières :" -#: library/stdtypes.rst:4321 +#: library/stdtypes.rst:4344 #, fuzzy msgid "" "Use a comma-separated list of ``key: value`` pairs within braces: ``{'jack': " @@ -6093,18 +6103,18 @@ msgstr "" "``{'jack': 4098, 'sjoerd': 4127}`` ou ``{4098: 'jack', 4127: 'sjoerd'}``, ou " "en utilisant le constructeur de :class:`dict`." -#: library/stdtypes.rst:4323 +#: library/stdtypes.rst:4346 #, fuzzy msgid "Use a dict comprehension: ``{}``, ``{x: x ** 2 for x in range(10)}``" msgstr "En utilisant une liste en compréhension : ``[x for x in iterable]``" -#: library/stdtypes.rst:4324 +#: library/stdtypes.rst:4347 msgid "" "Use the type constructor: ``dict()``, ``dict([('foo', 100), ('bar', " "200)])``, ``dict(foo=100, bar=200)``" msgstr "" -#: library/stdtypes.rst:4327 +#: library/stdtypes.rst:4350 msgid "" "If no positional argument is given, an empty dictionary is created. If a " "positional argument is given and it is a mapping object, a dictionary is " @@ -6126,7 +6136,7 @@ msgstr "" "pour cette clef devient la valeur correspondante à cette clef dans le " "nouveau dictionnaire." -#: library/stdtypes.rst:4337 +#: library/stdtypes.rst:4360 msgid "" "If keyword arguments are given, the keyword arguments and their values are " "added to the dictionary created from the positional argument. If a key " @@ -6137,7 +6147,7 @@ msgstr "" "depuis l'argument positionnel. Si une clef est déjà présente, la valeur de " "l'argument nommé remplace la valeur reçue par l'argument positionnel." -#: library/stdtypes.rst:4342 +#: library/stdtypes.rst:4365 msgid "" "To illustrate, the following examples all return a dictionary equal to " "``{\"one\": 1, \"two\": 2, \"three\": 3}``::" @@ -6145,7 +6155,7 @@ msgstr "" "Typiquement, les exemples suivants renvoient tous un dictionnaire valant " "``{\"one\": 1, \"two\": 2, \"three\": 3}`` ::" -#: library/stdtypes.rst:4354 +#: library/stdtypes.rst:4377 msgid "" "Providing keyword arguments as in the first example only works for keys that " "are valid Python identifiers. Otherwise, any valid keys can be used." @@ -6154,7 +6164,7 @@ msgstr "" "pour des clefs qui sont des identifiants valide en Python. Dans les autres " "cas, toutes les clefs valides sont utilisables." -#: library/stdtypes.rst:4358 +#: library/stdtypes.rst:4381 msgid "" "These are the operations that dictionaries support (and therefore, custom " "mapping types should support too):" @@ -6162,16 +6172,16 @@ msgstr "" "Voici les opérations gérées par les dictionnaires, (par conséquent, d'autres " "types de *mapping* peuvent les gérer aussi) :" -#: library/stdtypes.rst:4363 +#: library/stdtypes.rst:4386 msgid "Return a list of all the keys used in the dictionary *d*." msgstr "" "Renvoie une liste de toutes les clés utilisées dans le dictionnaire *d*." -#: library/stdtypes.rst:4367 +#: library/stdtypes.rst:4390 msgid "Return the number of items in the dictionary *d*." msgstr "Renvoie le nombre d'éléments dans le dictionnaire *d*." -#: library/stdtypes.rst:4371 +#: library/stdtypes.rst:4394 msgid "" "Return the item of *d* with key *key*. Raises a :exc:`KeyError` if *key* is " "not in the map." @@ -6179,7 +6189,7 @@ msgstr "" "Donne l'élément de *d* dont la clef est *key*. Lève une exception :exc:" "`KeyError` si *key* n'est pas dans le dictionnaire." -#: library/stdtypes.rst:4376 +#: library/stdtypes.rst:4399 msgid "" "If a subclass of dict defines a method :meth:`__missing__` and *key* is not " "present, the ``d[key]`` operation calls that method with the key *key* as " @@ -6198,7 +6208,7 @@ msgstr "" "meth:`__missing__` doit être une méthode; ça ne peut être une variable " "d'instance ::" -#: library/stdtypes.rst:4394 +#: library/stdtypes.rst:4417 msgid "" "The example above shows part of the implementation of :class:`collections." "Counter`. A different ``__missing__`` method is used by :class:`collections." @@ -6208,11 +6218,11 @@ msgstr "" "`collections.Counter`. :class:`collections.defaultdict` implémente aussi " "``__missing__``." -#: library/stdtypes.rst:4400 +#: library/stdtypes.rst:4423 msgid "Set ``d[key]`` to *value*." msgstr "Assigne ``d[key]`` à *value*." -#: library/stdtypes.rst:4404 +#: library/stdtypes.rst:4427 msgid "" "Remove ``d[key]`` from *d*. Raises a :exc:`KeyError` if *key* is not in the " "map." @@ -6220,15 +6230,15 @@ msgstr "" "Supprime ``d[key]`` de *d*. Lève une exception :exc:`KeyError` si *key* " "n'est pas dans le dictionnaire." -#: library/stdtypes.rst:4409 +#: library/stdtypes.rst:4432 msgid "Return ``True`` if *d* has a key *key*, else ``False``." msgstr "Renvoie ``True`` si *d* a la clef *key*, sinon ``False``." -#: library/stdtypes.rst:4413 +#: library/stdtypes.rst:4436 msgid "Equivalent to ``not key in d``." msgstr "Équivalent à ``not key in d``." -#: library/stdtypes.rst:4417 +#: library/stdtypes.rst:4440 msgid "" "Return an iterator over the keys of the dictionary. This is a shortcut for " "``iter(d.keys())``." @@ -6236,22 +6246,22 @@ msgstr "" "Renvoie un itérateur sur les clefs du dictionnaire. C'est un raccourci pour " "``iter(d.keys())``." -#: library/stdtypes.rst:4422 +#: library/stdtypes.rst:4445 msgid "Remove all items from the dictionary." msgstr "Supprime tous les éléments du dictionnaire." -#: library/stdtypes.rst:4426 +#: library/stdtypes.rst:4449 msgid "Return a shallow copy of the dictionary." msgstr "Renvoie une copie de surface du dictionnaire." -#: library/stdtypes.rst:4430 +#: library/stdtypes.rst:4453 msgid "" "Create a new dictionary with keys from *iterable* and values set to *value*." msgstr "" "Crée un nouveau dictionnaire avec les clefs de *iterable* et les valeurs à " "*value*." -#: library/stdtypes.rst:4432 +#: library/stdtypes.rst:4455 msgid "" ":meth:`fromkeys` is a class method that returns a new dictionary. *value* " "defaults to ``None``. All of the values refer to just a single instance, so " @@ -6265,7 +6275,7 @@ msgstr "" "*value* soit un objet mutable comme une liste vide. Pour avoir des valeurs " "distinctes, utiliser plutôt une :ref:`compréhension de dictionnaire `." -#: library/stdtypes.rst:4440 +#: library/stdtypes.rst:4463 msgid "" "Return the value for *key* if *key* is in the dictionary, else *default*. If " "*default* is not given, it defaults to ``None``, so that this method never " @@ -6275,7 +6285,7 @@ msgstr "" "*default*. Si *default* n'est pas donné, il vaut ``None`` par défaut, de " "manière à ce que cette méthode ne lève jamais :exc:`KeyError`." -#: library/stdtypes.rst:4446 +#: library/stdtypes.rst:4469 msgid "" "Return a new view of the dictionary's items (``(key, value)`` pairs). See " "the :ref:`documentation of view objects `." @@ -6283,7 +6293,7 @@ msgstr "" "Renvoie une nouvelle vue des éléments du dictionnaire (paires de ``(key, " "value)``). Voir la :ref:`documentation des vues `." -#: library/stdtypes.rst:4451 +#: library/stdtypes.rst:4474 msgid "" "Return a new view of the dictionary's keys. See the :ref:`documentation of " "view objects `." @@ -6291,7 +6301,7 @@ msgstr "" "Renvoie une nouvelle vue des clefs du dictionnaire. Voir la :ref:" "`documentation des vues `." -#: library/stdtypes.rst:4456 +#: library/stdtypes.rst:4479 msgid "" "If *key* is in the dictionary, remove it and return its value, else return " "*default*. If *default* is not given and *key* is not in the dictionary, a :" @@ -6301,7 +6311,7 @@ msgstr "" "renvoyée, sinon renvoie *default*. Si *default* n'est pas donné et que " "*key* n'est pas dans le dictionnaire, une :exc:`KeyError` est levée." -#: library/stdtypes.rst:4462 +#: library/stdtypes.rst:4485 msgid "" "Remove and return a ``(key, value)`` pair from the dictionary. Pairs are " "returned in :abbr:`LIFO (last-in, first-out)` order." @@ -6309,7 +6319,7 @@ msgstr "" "Supprime et renvoie une paire ``(key, value)`` du dictionnaire. Les paires " "sont renvoyées dans un ordre :abbr:`LIFO (dernière entrée, prenière sortie)`." -#: library/stdtypes.rst:4465 +#: library/stdtypes.rst:4488 msgid "" ":meth:`popitem` is useful to destructively iterate over a dictionary, as " "often used in set algorithms. If the dictionary is empty, calling :meth:" @@ -6319,7 +6329,7 @@ msgstr "" "destructive, comme souvent dans les algorithmes sur les ensembles. Si le " "dictionnaire est vide, appeler :meth:`popitem` lève une :exc:`KeyError`." -#: library/stdtypes.rst:4469 +#: library/stdtypes.rst:4492 msgid "" "LIFO order is now guaranteed. In prior versions, :meth:`popitem` would " "return an arbitrary key/value pair." @@ -6328,7 +6338,7 @@ msgstr "" "les versions précédentes, :meth:`popitem` renvoyait une paire clé/valeur " "arbitraire." -#: library/stdtypes.rst:4475 +#: library/stdtypes.rst:4498 msgid "" "Return a reverse iterator over the keys of the dictionary. This is a " "shortcut for ``reversed(d.keys())``." @@ -6336,7 +6346,7 @@ msgstr "" "Renvoie un itérateur inversé sur les clés du dictionnaire. C'est un " "raccourci pour ``reversed(d.keys())``." -#: library/stdtypes.rst:4482 +#: library/stdtypes.rst:4505 msgid "" "If *key* is in the dictionary, return its value. If not, insert *key* with " "a value of *default* and return *default*. *default* defaults to ``None``." @@ -6345,7 +6355,7 @@ msgstr "" "*key* avec comme valeur *default* et renvoie *default*. *default* vaut " "``None`` par défaut." -#: library/stdtypes.rst:4488 +#: library/stdtypes.rst:4511 msgid "" "Update the dictionary with the key/value pairs from *other*, overwriting " "existing keys. Return ``None``." @@ -6353,7 +6363,7 @@ msgstr "" "Met à jour le dictionnaire avec les paires de clef/valeur d'*other*, " "écrasant les clefs existantes. Renvoie ``None``." -#: library/stdtypes.rst:4491 +#: library/stdtypes.rst:4514 msgid "" ":meth:`update` accepts either another dictionary object or an iterable of " "key/value pairs (as tuples or other iterables of length two). If keyword " @@ -6366,7 +6376,7 @@ msgstr "" "ensuite mis à jour avec ces pairs de clef/valeurs : ``d.update(red=1, " "blue=2)``." -#: library/stdtypes.rst:4498 +#: library/stdtypes.rst:4521 msgid "" "Return a new view of the dictionary's values. See the :ref:`documentation " "of view objects `." @@ -6374,7 +6384,7 @@ msgstr "" "Renvoie une nouvelle vue des valeurs du dictionnaire. Voir la :ref:" "`documentation des vues `." -#: library/stdtypes.rst:4501 +#: library/stdtypes.rst:4524 msgid "" "An equality comparison between one ``dict.values()`` view and another will " "always return ``False``. This also applies when comparing ``dict.values()`` " @@ -6384,21 +6394,21 @@ msgstr "" "renvoie toujours ``False``. Cela s'applique aussi lorsque l'on compare " "``dict.values()`` à lui-même ::" -#: library/stdtypes.rst:4511 +#: library/stdtypes.rst:4534 msgid "" "Create a new dictionary with the merged keys and values of *d* and *other*, " "which must both be dictionaries. The values of *other* take priority when " "*d* and *other* share keys." msgstr "" -#: library/stdtypes.rst:4519 +#: library/stdtypes.rst:4542 msgid "" "Update the dictionary *d* with keys and values from *other*, which may be " "either a :term:`mapping` or an :term:`iterable` of key/value pairs. The " "values of *other* take priority when *d* and *other* share keys." msgstr "" -#: library/stdtypes.rst:4525 +#: library/stdtypes.rst:4548 msgid "" "Dictionaries compare equal if and only if they have the same ``(key, " "value)`` pairs (regardless of ordering). Order comparisons ('<', '<=', '>=', " @@ -6408,7 +6418,7 @@ msgstr "" "clé-valeur (``(key, value)``, peu importe leur ordre). Les comparaisons " "d'ordre (``<``, ``<=``, ``>=``, ``>``) lèvent une :exc:`TypeError`." -#: library/stdtypes.rst:4529 +#: library/stdtypes.rst:4552 msgid "" "Dictionaries preserve insertion order. Note that updating a key does not " "affect the order. Keys added after deletion are inserted at the end. ::" @@ -6417,7 +6427,7 @@ msgstr "" "clé n'affecte pas l'ordre. Les clés ajoutées après un effacement sont " "insérées à la fin. ::" -#: library/stdtypes.rst:4547 +#: library/stdtypes.rst:4570 msgid "" "Dictionary order is guaranteed to be insertion order. This behavior was an " "implementation detail of CPython from 3.6." @@ -6426,16 +6436,16 @@ msgstr "" "comportement était un détail d'implémentation de CPython depuis la version " "3.6." -#: library/stdtypes.rst:4551 +#: library/stdtypes.rst:4574 msgid "Dictionaries and dictionary views are reversible. ::" msgstr "Les dictionnaires et les vues de dictionnaires sont réversibles. ::" # suit un ':' ("changed in version X.Y") -#: library/stdtypes.rst:4563 +#: library/stdtypes.rst:4586 msgid "Dictionaries are now reversible." msgstr "les dictionnaires sont maintenant réversibles." -#: library/stdtypes.rst:4568 +#: library/stdtypes.rst:4591 msgid "" ":class:`types.MappingProxyType` can be used to create a read-only view of a :" "class:`dict`." @@ -6443,11 +6453,11 @@ msgstr "" ":class:`types.MappingProxyType` peut être utilisé pour créer une vue en " "lecture seule d'un :class:`dict`." -#: library/stdtypes.rst:4575 +#: library/stdtypes.rst:4598 msgid "Dictionary view objects" msgstr "Les vues de dictionnaires" -#: library/stdtypes.rst:4577 +#: library/stdtypes.rst:4600 msgid "" "The objects returned by :meth:`dict.keys`, :meth:`dict.values` and :meth:" "`dict.items` are *view objects*. They provide a dynamic view on the " @@ -6459,7 +6469,7 @@ msgstr "" "éléments du dictionnaire, ce qui signifie que si le dictionnaire change, la " "vue reflète ces changements." -#: library/stdtypes.rst:4582 +#: library/stdtypes.rst:4605 msgid "" "Dictionary views can be iterated over to yield their respective data, and " "support membership tests:" @@ -6467,11 +6477,11 @@ msgstr "" "Les vues de dictionnaires peuvent être itérées et ainsi renvoyer les données " "du dictionnaire, elle gèrent aussi les tests de présence :" -#: library/stdtypes.rst:4587 +#: library/stdtypes.rst:4610 msgid "Return the number of entries in the dictionary." msgstr "Renvoie le nombre d'entrées du dictionnaire." -#: library/stdtypes.rst:4591 +#: library/stdtypes.rst:4614 msgid "" "Return an iterator over the keys, values or items (represented as tuples of " "``(key, value)``) in the dictionary." @@ -6479,7 +6489,7 @@ msgstr "" "Renvoie un itérateur sur les clefs, les valeurs, ou les éléments " "(représentés par des paires ``(key, value)`` du dictionnaire." -#: library/stdtypes.rst:4594 +#: library/stdtypes.rst:4617 msgid "" "Keys and values are iterated over in insertion order. This allows the " "creation of ``(value, key)`` pairs using :func:`zip`: ``pairs = zip(d." @@ -6491,7 +6501,7 @@ msgstr "" "``pairs = zip(d.values(), d.keys())``. Un autre moyen de construire la même " "liste est ``pairs = [(v, k) for (k, v) in d.items()]``." -#: library/stdtypes.rst:4599 +#: library/stdtypes.rst:4622 msgid "" "Iterating views while adding or deleting entries in the dictionary may raise " "a :exc:`RuntimeError` or fail to iterate over all entries." @@ -6500,11 +6510,11 @@ msgstr "" "dictionnaire peut lever une :exc:`RuntimeError` ou ne pas fournir toutes les " "entrées." -#: library/stdtypes.rst:4602 +#: library/stdtypes.rst:4625 msgid "Dictionary order is guaranteed to be insertion order." msgstr "L'ordre d'un dictionnaire est toujours l'ordre des insertions." -#: library/stdtypes.rst:4607 +#: library/stdtypes.rst:4630 msgid "" "Return ``True`` if *x* is in the underlying dictionary's keys, values or " "items (in the latter case, *x* should be a ``(key, value)`` tuple)." @@ -6513,7 +6523,7 @@ msgstr "" "dictionnaire sous-jacent (dans le dernier cas, *x* doit être une paire " "``(key, value)``)." -#: library/stdtypes.rst:4612 +#: library/stdtypes.rst:4635 msgid "" "Return a reverse iterator over the keys, values or items of the dictionary. " "The view will be iterated in reverse order of the insertion." @@ -6522,11 +6532,17 @@ msgstr "" "dictionnaire. La vue est itérée dans l'ordre inverse d'insertion." # suit un ':' ("changed in version X.Y") -#: library/stdtypes.rst:4615 +#: library/stdtypes.rst:4638 msgid "Dictionary views are now reversible." msgstr "les vues de dictionnaires sont dorénavant réversibles." -#: library/stdtypes.rst:4619 +#: library/stdtypes.rst:4643 +msgid "" +"Return a :class:`types.MappingProxyType` that wraps the original dictionary " +"to which the view refers." +msgstr "" + +#: library/stdtypes.rst:4648 msgid "" "Keys views are set-like since their entries are unique and hashable. If all " "values are hashable, so that ``(key, value)`` pairs are unique and hashable, " @@ -6545,15 +6561,15 @@ msgstr "" "abstraite :class:`collections.abc.Set` sont disponibles (comme ``==``, " "``<``, ou ``^``)." -#: library/stdtypes.rst:4626 +#: library/stdtypes.rst:4655 msgid "An example of dictionary view usage::" msgstr "Exemple d'utilisation de vue de dictionnaire ::" -#: library/stdtypes.rst:4661 +#: library/stdtypes.rst:4696 msgid "Context Manager Types" msgstr "Le type gestionnaire de contexte" -#: library/stdtypes.rst:4668 +#: library/stdtypes.rst:4703 msgid "" "Python's :keyword:`with` statement supports the concept of a runtime context " "defined by a context manager. This is implemented using a pair of methods " @@ -6566,7 +6582,7 @@ msgstr "" "entré avant l'exécution du corps de l'instruction, et qui est quitté lorsque " "l'instruction se termine :" -#: library/stdtypes.rst:4676 +#: library/stdtypes.rst:4711 msgid "" "Enter the runtime context and return either this object or another object " "related to the runtime context. The value returned by this method is bound " @@ -6578,7 +6594,7 @@ msgstr "" "cette méthode est liée à l'identifiant donné au :keyword:`!as` de " "l'instruction :keyword:`with` utilisant ce gestionnaire de contexte." -#: library/stdtypes.rst:4681 +#: library/stdtypes.rst:4716 msgid "" "An example of a context manager that returns itself is a :term:`file " "object`. File objects return themselves from __enter__() to allow :func:" @@ -6589,7 +6605,7 @@ msgstr "" "autorisent :func:`open` à être utilisé comme contexte à une instruction :" "keyword:`with`." -#: library/stdtypes.rst:4685 +#: library/stdtypes.rst:4720 msgid "" "An example of a context manager that returns a related object is the one " "returned by :func:`decimal.localcontext`. These managers set the active " @@ -6604,7 +6620,7 @@ msgstr "" "renvoyée. Ça permet de changer le contexte courant dans le corps du :keyword:" "`with` sans affecter le code en dehors de l'instruction :keyword:`!with`." -#: library/stdtypes.rst:4695 +#: library/stdtypes.rst:4730 msgid "" "Exit the runtime context and return a Boolean flag indicating if any " "exception that occurred should be suppressed. If an exception occurred while " @@ -6618,7 +6634,7 @@ msgstr "" "l'exception, sa valeur, et la trace de la pile (*traceback*). Sinon les " "trois arguments valent ``None``." -#: library/stdtypes.rst:4700 +#: library/stdtypes.rst:4735 msgid "" "Returning a true value from this method will cause the :keyword:`with` " "statement to suppress the exception and continue execution with the " @@ -6635,7 +6651,7 @@ msgstr "" "pendant l'exécution de cette méthode remplaceront toute exception qui s'est " "produite dans le corps du :keyword:`!with`." -#: library/stdtypes.rst:4707 +#: library/stdtypes.rst:4742 msgid "" "The exception passed in should never be reraised explicitly - instead, this " "method should return a false value to indicate that the method completed " @@ -6649,7 +6665,7 @@ msgstr "" "Ceci permet au code de gestion du contexte de comprendre si une méthode :" "meth:`__exit__` a échoué." -#: library/stdtypes.rst:4713 +#: library/stdtypes.rst:4748 msgid "" "Python defines several context managers to support easy thread " "synchronisation, prompt closure of files or other objects, and simpler " @@ -6664,7 +6680,7 @@ msgstr "" "protocole de gestion du contexte. Voir les exemples dans la documentation du " "module :mod:`contextlib`." -#: library/stdtypes.rst:4719 +#: library/stdtypes.rst:4754 msgid "" "Python's :term:`generator`\\s and the :class:`contextlib.contextmanager` " "decorator provide a convenient way to implement these protocols. If a " @@ -6680,7 +6696,7 @@ msgstr "" "`__enter__` et :meth:`__exit__`, plutôt que l'itérateur produit par un " "générateur non décoré." -#: library/stdtypes.rst:4726 +#: library/stdtypes.rst:4761 msgid "" "Note that there is no specific slot for any of these methods in the type " "structure for Python objects in the Python/C API. Extension types wanting to " @@ -6695,19 +6711,31 @@ msgstr "" "d'exécution, les le coût d'un accès au dictionnaire d'une classe unique est " "négligeable." -#: library/stdtypes.rst:4736 +#: library/stdtypes.rst:4769 +msgid "" +"Type Annotation Types --- :ref:`Generic Alias `, :ref:" +"`Union `" +msgstr "" + +#: library/stdtypes.rst:4774 +msgid "" +"The core built-in types for :term:`type annotations ` are :ref:" +"`Generic Alias ` and :ref:`Union `." +msgstr "" + +#: library/stdtypes.rst:4781 #, fuzzy msgid "Generic Alias Type" msgstr "Types générateurs" -#: library/stdtypes.rst:4742 +#: library/stdtypes.rst:4787 msgid "" "``GenericAlias`` objects are created by subscripting a class (usually a " "container), such as ``list[int]``. They are intended primarily for :term:" "`type annotations `." msgstr "" -#: library/stdtypes.rst:4746 +#: library/stdtypes.rst:4791 msgid "" "Usually, the :ref:`subscription ` of container objects calls " "the method :meth:`__getitem__` of the object. However, the subscription of " @@ -6716,35 +6744,35 @@ msgid "" "return a ``GenericAlias`` object." msgstr "" -#: library/stdtypes.rst:4753 +#: library/stdtypes.rst:4798 msgid "" "If the :meth:`__getitem__` of the class' metaclass is present, it will take " "precedence over the :meth:`__class_getitem__` defined in the class (see :pep:" "`560` for more details)." msgstr "" -#: library/stdtypes.rst:4757 +#: library/stdtypes.rst:4802 msgid "" "The ``GenericAlias`` object acts as a proxy for :term:`generic types " "`, implementing *parameterized generics* - a specific instance " "of a generic which provides the types for container elements." msgstr "" -#: library/stdtypes.rst:4761 +#: library/stdtypes.rst:4806 msgid "" "The user-exposed type for the ``GenericAlias`` object can be accessed from :" "class:`types.GenericAlias` and used for :func:`isinstance` checks. It can " "also be used to create ``GenericAlias`` objects directly." msgstr "" -#: library/stdtypes.rst:4767 +#: library/stdtypes.rst:4812 msgid "" "Creates a ``GenericAlias`` representing a type ``T`` containing elements of " "types *X*, *Y*, and more depending on the ``T`` used. For example, a " "function expecting a :class:`list` containing :class:`float` elements::" msgstr "" -#: library/stdtypes.rst:4775 +#: library/stdtypes.rst:4820 msgid "" "Another example for :term:`mapping` objects, using a :class:`dict`, which is " "a generic type expecting two type parameters representing the key type and " @@ -6752,13 +6780,13 @@ msgid "" "of type :class:`str` and values of type :class:`int`::" msgstr "" -#: library/stdtypes.rst:4783 +#: library/stdtypes.rst:4828 msgid "" "The builtin functions :func:`isinstance` and :func:`issubclass` do not " "accept ``GenericAlias`` types for their second argument::" msgstr "" -#: library/stdtypes.rst:4791 +#: library/stdtypes.rst:4836 msgid "" "The Python runtime does not enforce :term:`type annotations `. " "This extends to generic types and their type parameters. When creating an " @@ -6767,25 +6795,25 @@ msgid "" "without errors::" msgstr "" -#: library/stdtypes.rst:4801 +#: library/stdtypes.rst:4846 msgid "" "Furthermore, parameterized generics erase type parameters during object " "creation::" msgstr "" -#: library/stdtypes.rst:4812 +#: library/stdtypes.rst:4857 msgid "" "Calling :func:`repr` or :func:`str` on a generic shows the parameterized " "type::" msgstr "" -#: library/stdtypes.rst:4820 +#: library/stdtypes.rst:4865 msgid "" "The :meth:`__getitem__` method of generics will raise an exception to " "disallow mistakes like ``dict[str][str]``::" msgstr "" -#: library/stdtypes.rst:4828 +#: library/stdtypes.rst:4873 msgid "" "However, such expressions are valid when :ref:`type variables ` " "are used. The index must have as many elements as there are type variable " @@ -6793,208 +6821,292 @@ msgid "" "__args__>`. ::" msgstr "" -#: library/stdtypes.rst:4839 +#: library/stdtypes.rst:4884 msgid "Standard Generic Collections" msgstr "" -#: library/stdtypes.rst:4841 +#: library/stdtypes.rst:4886 msgid "These standard library collections support parameterized generics." msgstr "" -#: library/stdtypes.rst:4843 +#: library/stdtypes.rst:4888 msgid ":class:`tuple`" msgstr "" -#: library/stdtypes.rst:4844 +#: library/stdtypes.rst:4889 msgid ":class:`list`" msgstr "" -#: library/stdtypes.rst:4845 +#: library/stdtypes.rst:4890 msgid ":class:`dict`" msgstr "" -#: library/stdtypes.rst:4846 +#: library/stdtypes.rst:4891 msgid ":class:`set`" msgstr "" -#: library/stdtypes.rst:4847 +#: library/stdtypes.rst:4892 msgid ":class:`frozenset`" msgstr "" -#: library/stdtypes.rst:4848 +#: library/stdtypes.rst:4893 msgid ":class:`type`" msgstr "" -#: library/stdtypes.rst:4849 +#: library/stdtypes.rst:4894 msgid ":class:`collections.deque`" msgstr "" -#: library/stdtypes.rst:4850 +#: library/stdtypes.rst:4895 msgid ":class:`collections.defaultdict`" msgstr "" -#: library/stdtypes.rst:4851 +#: library/stdtypes.rst:4896 msgid ":class:`collections.OrderedDict`" msgstr "" -#: library/stdtypes.rst:4852 +#: library/stdtypes.rst:4897 msgid ":class:`collections.Counter`" msgstr "" -#: library/stdtypes.rst:4853 +#: library/stdtypes.rst:4898 msgid ":class:`collections.ChainMap`" msgstr "" -#: library/stdtypes.rst:4854 +#: library/stdtypes.rst:4899 msgid ":class:`collections.abc.Awaitable`" msgstr "" -#: library/stdtypes.rst:4855 +#: library/stdtypes.rst:4900 msgid ":class:`collections.abc.Coroutine`" msgstr "" -#: library/stdtypes.rst:4856 +#: library/stdtypes.rst:4901 msgid ":class:`collections.abc.AsyncIterable`" msgstr "" -#: library/stdtypes.rst:4857 +#: library/stdtypes.rst:4902 msgid ":class:`collections.abc.AsyncIterator`" msgstr "" -#: library/stdtypes.rst:4858 +#: library/stdtypes.rst:4903 msgid ":class:`collections.abc.AsyncGenerator`" msgstr "" -#: library/stdtypes.rst:4859 +#: library/stdtypes.rst:4904 msgid ":class:`collections.abc.Iterable`" msgstr "" -#: library/stdtypes.rst:4860 +#: library/stdtypes.rst:4905 msgid ":class:`collections.abc.Iterator`" msgstr "" -#: library/stdtypes.rst:4861 +#: library/stdtypes.rst:4906 msgid ":class:`collections.abc.Generator`" msgstr "" -#: library/stdtypes.rst:4862 +#: library/stdtypes.rst:4907 msgid ":class:`collections.abc.Reversible`" msgstr "" -#: library/stdtypes.rst:4863 +#: library/stdtypes.rst:4908 msgid ":class:`collections.abc.Container`" msgstr "" -#: library/stdtypes.rst:4864 +#: library/stdtypes.rst:4909 msgid ":class:`collections.abc.Collection`" msgstr "" -#: library/stdtypes.rst:4865 +#: library/stdtypes.rst:4910 msgid ":class:`collections.abc.Callable`" msgstr "" -#: library/stdtypes.rst:4866 +#: library/stdtypes.rst:4911 msgid ":class:`collections.abc.Set`" msgstr "" -#: library/stdtypes.rst:4867 +#: library/stdtypes.rst:4912 msgid ":class:`collections.abc.MutableSet`" msgstr "" -#: library/stdtypes.rst:4868 +#: library/stdtypes.rst:4913 msgid ":class:`collections.abc.Mapping`" msgstr "" -#: library/stdtypes.rst:4869 +#: library/stdtypes.rst:4914 msgid ":class:`collections.abc.MutableMapping`" msgstr "" -#: library/stdtypes.rst:4870 +#: library/stdtypes.rst:4915 msgid ":class:`collections.abc.Sequence`" msgstr "" -#: library/stdtypes.rst:4871 +#: library/stdtypes.rst:4916 msgid ":class:`collections.abc.MutableSequence`" msgstr "" -#: library/stdtypes.rst:4872 +#: library/stdtypes.rst:4917 msgid ":class:`collections.abc.ByteString`" msgstr "" -#: library/stdtypes.rst:4873 +#: library/stdtypes.rst:4918 msgid ":class:`collections.abc.MappingView`" msgstr "" -#: library/stdtypes.rst:4874 +#: library/stdtypes.rst:4919 msgid ":class:`collections.abc.KeysView`" msgstr "" -#: library/stdtypes.rst:4875 +#: library/stdtypes.rst:4920 msgid ":class:`collections.abc.ItemsView`" msgstr "" -#: library/stdtypes.rst:4876 +#: library/stdtypes.rst:4921 msgid ":class:`collections.abc.ValuesView`" msgstr "" -#: library/stdtypes.rst:4877 +#: library/stdtypes.rst:4922 msgid ":class:`contextlib.AbstractContextManager`" msgstr "" -#: library/stdtypes.rst:4878 +#: library/stdtypes.rst:4923 msgid ":class:`contextlib.AbstractAsyncContextManager`" msgstr "" -#: library/stdtypes.rst:4879 +#: library/stdtypes.rst:4924 msgid ":ref:`re.Pattern `" msgstr "" -#: library/stdtypes.rst:4880 +#: library/stdtypes.rst:4925 msgid ":ref:`re.Match `" msgstr "" -#: library/stdtypes.rst:4884 +#: library/stdtypes.rst:4929 #, fuzzy msgid "Special Attributes of Generic Alias" msgstr "Attributs spéciaux" -#: library/stdtypes.rst:4886 +#: library/stdtypes.rst:4931 msgid "All parameterized generics implement special read-only attributes." msgstr "" -#: library/stdtypes.rst:4890 +#: library/stdtypes.rst:4935 msgid "This attribute points at the non-parameterized generic class::" msgstr "" -#: library/stdtypes.rst:4898 +#: library/stdtypes.rst:4943 msgid "" "This attribute is a :class:`tuple` (possibly of length 1) of generic types " "passed to the original :meth:`__class_getitem__` of the generic container::" msgstr "" -#: library/stdtypes.rst:4908 +#: library/stdtypes.rst:4953 msgid "" "This attribute is a lazily computed tuple (possibly empty) of unique type " "variables found in ``__args__``::" msgstr "" -#: library/stdtypes.rst:4920 +#: library/stdtypes.rst:4964 +msgid "" +"A ``GenericAlias`` object with :class:`typing.ParamSpec` parameters may not " +"have correct ``__parameters__`` after substitution because :class:`typing." +"ParamSpec` is intended primarily for static type checking." +msgstr "" + +#: library/stdtypes.rst:4970 msgid ":pep:`585` -- \"Type Hinting Generics In Standard Collections\"" msgstr "" -#: library/stdtypes.rst:4921 +#: library/stdtypes.rst:4971 msgid ":meth:`__class_getitem__` -- Used to implement parameterized generics." msgstr "" -#: library/stdtypes.rst:4922 +#: library/stdtypes.rst:4972 msgid ":ref:`generics` -- Generics in the :mod:`typing` module." msgstr "" -#: library/stdtypes.rst:4930 +#: library/stdtypes.rst:4980 +#, fuzzy +msgid "Union Type" +msgstr "Type de conversion." + +#: library/stdtypes.rst:4986 +msgid "" +"A union object holds the value of the ``|`` (bitwise or) operation on " +"multiple :ref:`type objects `. These types are intended " +"primarily for :term:`type annotations `. The union type " +"expression enables cleaner type hinting syntax compared to :data:`typing." +"Union`." +msgstr "" + +#: library/stdtypes.rst:4993 +msgid "" +"Defines a union object which holds types *X*, *Y*, and so forth. ``X | Y`` " +"means either X or Y. It is equivalent to ``typing.Union[X, Y]``. For " +"example, the following function expects an argument of type :class:`int` or :" +"class:`float`::" +msgstr "" + +#: library/stdtypes.rst:5003 +msgid "" +"Union objects can be tested for equality with other union objects. Details:" +msgstr "" + +#: library/stdtypes.rst:5005 +msgid "Unions of unions are flattened::" +msgstr "" + +#: library/stdtypes.rst:5009 +msgid "Redundant types are removed::" +msgstr "" + +#: library/stdtypes.rst:5013 +msgid "When comparing unions, the order is ignored::" +msgstr "" + +#: library/stdtypes.rst:5017 +msgid "It is compatible with :data:`typing.Union`::" +msgstr "" + +#: library/stdtypes.rst:5021 +msgid "Optional types can be spelled as a union with ``None``::" +msgstr "" + +#: library/stdtypes.rst:5028 +msgid "" +"Calls to :func:`isinstance` and :func:`issubclass` are also supported with a " +"union object::" +msgstr "" + +#: library/stdtypes.rst:5034 +msgid "" +"However, union objects containing :ref:`parameterized generics ` cannot be used::" +msgstr "" + +#: library/stdtypes.rst:5042 +msgid "" +"The user-exposed type for the union object can be accessed from :data:`types." +"UnionType` and used for :func:`isinstance` checks. An object cannot be " +"instantiated from the type::" +msgstr "" + +#: library/stdtypes.rst:5055 +msgid "" +"The :meth:`__or__` method for type objects was added to support the syntax " +"``X | Y``. If a metaclass implements :meth:`__or__`, the Union may override " +"it::" +msgstr "" + +#: library/stdtypes.rst:5073 +msgid ":pep:`604` -- PEP proposing the ``X | Y`` syntax and the Union type." +msgstr "" + +#: library/stdtypes.rst:5081 msgid "Other Built-in Types" msgstr "Autres types natifs" -#: library/stdtypes.rst:4932 +#: library/stdtypes.rst:5083 msgid "" "The interpreter supports several other kinds of objects. Most of these " "support only one or two operations." @@ -7002,11 +7114,11 @@ msgstr "" "L'interpréteur gère aussi d'autres types d'objets, la plupart ne supportant " "cependant qu'une ou deux opérations." -#: library/stdtypes.rst:4939 +#: library/stdtypes.rst:5090 msgid "Modules" msgstr "Modules" -#: library/stdtypes.rst:4941 +#: library/stdtypes.rst:5092 msgid "" "The only special operation on a module is attribute access: ``m.name``, " "where *m* is a module and *name* accesses a name defined in *m*'s symbol " @@ -7024,7 +7136,7 @@ msgstr "" "objet module nommé *foo* existe, il nécessite cependant une *définition* " "(externe) d'un module nommé *foo* quelque part.)" -#: library/stdtypes.rst:4948 +#: library/stdtypes.rst:5099 msgid "" "A special attribute of every module is :attr:`~object.__dict__`. This is the " "dictionary containing the module's symbol table. Modifying this dictionary " @@ -7042,7 +7154,7 @@ msgstr "" "vous ne pouvez pas écrire ``m.__dict__ = {}``). Modifier :attr:`~object." "__dict__` directement n'est pas recommandé." -#: library/stdtypes.rst:4956 +#: library/stdtypes.rst:5107 msgid "" "Modules built into the interpreter are written like this: ````. If loaded from a file, they are written as ````. S'ils sont chargés depuis un fichier, ils sont représentés " "````." -#: library/stdtypes.rst:4964 +#: library/stdtypes.rst:5115 msgid "Classes and Class Instances" msgstr "Les classes et instances de classes" -#: library/stdtypes.rst:4966 +#: library/stdtypes.rst:5117 msgid "See :ref:`objects` and :ref:`class` for these." msgstr "Voir :ref:`objects` et :ref:`class`." -#: library/stdtypes.rst:4972 +#: library/stdtypes.rst:5123 msgid "Functions" msgstr "Fonctions" -#: library/stdtypes.rst:4974 +#: library/stdtypes.rst:5125 msgid "" "Function objects are created by function definitions. The only operation on " "a function object is to call it: ``func(argument-list)``." @@ -7073,7 +7185,7 @@ msgstr "" "opération applicable à un objet fonction est de l'appeler : ``func(argument-" "list)``." -#: library/stdtypes.rst:4977 +#: library/stdtypes.rst:5128 msgid "" "There are really two flavors of function objects: built-in functions and " "user-defined functions. Both support the same operation (to call the " @@ -7085,15 +7197,15 @@ msgstr "" "opérations (l'appel à la fonction), mais leur implémentation est différente, " "d'où les deux types distincts." -#: library/stdtypes.rst:4981 +#: library/stdtypes.rst:5132 msgid "See :ref:`function` for more information." msgstr "Voir :ref:`function` pour plus d'information." -#: library/stdtypes.rst:4987 +#: library/stdtypes.rst:5138 msgid "Methods" msgstr "Méthodes" -#: library/stdtypes.rst:4991 +#: library/stdtypes.rst:5142 msgid "" "Methods are functions that are called using the attribute notation. There " "are two flavors: built-in methods (such as :meth:`append` on lists) and " @@ -7105,7 +7217,7 @@ msgstr "" "listes), et les méthodes d'instances de classes. Les méthodes natives sont " "représentées avec le type qui les supporte." -#: library/stdtypes.rst:4996 +#: library/stdtypes.rst:5147 msgid "" "If you access a method (a function defined in a class namespace) through an " "instance, you get a special object: a :dfn:`bound method` (also called :dfn:" @@ -7126,7 +7238,7 @@ msgstr "" "n)`` est tout à fait équivalent à appeler ``m.__func__(m.__self__, arg-1, " "arg-2, …, arg-n)``." -#: library/stdtypes.rst:5005 +#: library/stdtypes.rst:5156 msgid "" "Like function objects, bound method objects support getting arbitrary " "attributes. However, since method attributes are actually stored on the " @@ -7143,15 +7255,15 @@ msgstr "" "`AttributeError`. Pour affecter l'attribut, vous devrez explicitement " "l'affecter à sa fonction sous-jacente ::" -#: library/stdtypes.rst:5056 +#: library/stdtypes.rst:5207 msgid "See :ref:`types` for more information." msgstr "Voir :ref:`types` pour plus d'information." -#: library/stdtypes.rst:5033 +#: library/stdtypes.rst:5184 msgid "Code Objects" msgstr "Objets code" -#: library/stdtypes.rst:5039 +#: library/stdtypes.rst:5190 msgid "" "Code objects are used by the implementation to represent \"pseudo-compiled\" " "executable Python code such as a function body. They differ from function " @@ -7167,13 +7279,13 @@ msgstr "" "fonction native :func:`compile` et peuvent être obtenus des objets fonction " "via leur attribut :attr:`__code__`. Voir aussi le module :mod:`code`." -#: library/stdtypes.rst:5046 +#: library/stdtypes.rst:5197 msgid "" "Accessing ``__code__`` raises an :ref:`auditing event ` ``object." "__getattr__`` with arguments ``obj`` and ``\"__code__\"``." msgstr "" -#: library/stdtypes.rst:5053 +#: library/stdtypes.rst:5204 msgid "" "A code object can be executed or evaluated by passing it (instead of a " "source string) to the :func:`exec` or :func:`eval` built-in functions." @@ -7182,11 +7294,11 @@ msgstr "" "d'une chaîne contenant du code) aux fonction natives :func:`exec` ou :func:" "`eval`." -#: library/stdtypes.rst:5062 +#: library/stdtypes.rst:5213 msgid "Type Objects" msgstr "Objets type" -#: library/stdtypes.rst:5068 +#: library/stdtypes.rst:5219 msgid "" "Type objects represent the various object types. An object's type is " "accessed by the built-in function :func:`type`. There are no special " @@ -7198,15 +7310,15 @@ msgstr "" "opération spéciale sur les types. Le module standard :mod:`types` définit " "les noms de tous les types natifs." -#: library/stdtypes.rst:5073 +#: library/stdtypes.rst:5224 msgid "Types are written like this: ````." msgstr "Les types sont représentés : ````." -#: library/stdtypes.rst:5079 +#: library/stdtypes.rst:5230 msgid "The Null Object" msgstr "L'objet Null" -#: library/stdtypes.rst:5081 +#: library/stdtypes.rst:5232 msgid "" "This object is returned by functions that don't explicitly return a value. " "It supports no special operations. There is exactly one null object, named " @@ -7216,15 +7328,15 @@ msgstr "" "valeur. Il ne supporte aucune opération spéciale. Il existe exactement un " "objet *null* nommé ``None`` (c'est un nom natif). ``type(None)()``." -#: library/stdtypes.rst:5085 +#: library/stdtypes.rst:5236 msgid "It is written as ``None``." msgstr "C'est écrit ``None``." -#: library/stdtypes.rst:5092 +#: library/stdtypes.rst:5243 msgid "The Ellipsis Object" msgstr "L'objet points de suspension" -#: library/stdtypes.rst:5094 +#: library/stdtypes.rst:5245 msgid "" "This object is commonly used by slicing (see :ref:`slicings`). It supports " "no special operations. There is exactly one ellipsis object, named :const:" @@ -7236,15 +7348,15 @@ msgstr "" "objet *ellipsis*, nommé :const:`Ellipsis` (un nom natif). ``type(Ellipsis)" "()`` produit le *singleton* :const:`Ellipsis`." -#: library/stdtypes.rst:5099 +#: library/stdtypes.rst:5250 msgid "It is written as ``Ellipsis`` or ``...``." msgstr "C'est écrit ``Ellipsis`` ou ``...``." -#: library/stdtypes.rst:5105 +#: library/stdtypes.rst:5256 msgid "The NotImplemented Object" msgstr "L'objet *NotImplemented*" -#: library/stdtypes.rst:5107 +#: library/stdtypes.rst:5258 msgid "" "This object is returned from comparisons and binary operations when they are " "asked to operate on types they don't support. See :ref:`comparisons` for " @@ -7256,15 +7368,15 @@ msgstr "" "pour plus d'informations. Il n'y a qu'un seul objet ``NotImplemented``. " "``type(NotImplemented)()`` renvoie un *singleton*." -#: library/stdtypes.rst:5112 +#: library/stdtypes.rst:5263 msgid "It is written as ``NotImplemented``." msgstr "C'est écrit ``NotImplemented``." -#: library/stdtypes.rst:5118 +#: library/stdtypes.rst:5269 msgid "Boolean Values" msgstr "Valeurs booléennes" -#: library/stdtypes.rst:5120 +#: library/stdtypes.rst:5271 msgid "" "Boolean values are the two constant objects ``False`` and ``True``. They " "are used to represent truth values (although other values can also be " @@ -7283,15 +7395,15 @@ msgstr "" "valeur en booléen tant que la valeur peut être interprétée en une valeur de " "vérité (voir :ref:`truth` au dessus)." -#: library/stdtypes.rst:5133 +#: library/stdtypes.rst:5284 msgid "They are written as ``False`` and ``True``, respectively." msgstr "Ils s'écrivent ``False`` et ``True``, respectivement." -#: library/stdtypes.rst:5139 +#: library/stdtypes.rst:5290 msgid "Internal Objects" msgstr "Objets internes" -#: library/stdtypes.rst:5141 +#: library/stdtypes.rst:5292 msgid "" "See :ref:`types` for this information. It describes stack frame objects, " "traceback objects, and slice objects." @@ -7299,11 +7411,11 @@ msgstr "" "Voir :ref:`types`. Ils décrivent les objets *stack frame*, *traceback*, et " "*slice*." -#: library/stdtypes.rst:5148 +#: library/stdtypes.rst:5299 msgid "Special Attributes" msgstr "Attributs spéciaux" -#: library/stdtypes.rst:5150 +#: library/stdtypes.rst:5301 msgid "" "The implementation adds a few special read-only attributes to several object " "types, where they are relevant. Some of these are not reported by the :func:" @@ -7313,7 +7425,7 @@ msgstr "" "certains types, lorsque ça a du sens. Certains ne sont *pas* listés par la " "fonction native :func:`dir`." -#: library/stdtypes.rst:5157 +#: library/stdtypes.rst:5308 msgid "" "A dictionary or other mapping object used to store an object's (writable) " "attributes." @@ -7321,20 +7433,20 @@ msgstr "" "Un dictionnaire ou un autre *mapping object* utilisé pour stocker les " "attributs (modifiables) de l'objet." -#: library/stdtypes.rst:5163 +#: library/stdtypes.rst:5314 msgid "The class to which a class instance belongs." msgstr "La classe de l'instance de classe." -#: library/stdtypes.rst:5168 +#: library/stdtypes.rst:5319 msgid "The tuple of base classes of a class object." msgstr "Le *n*-uplet des classes parentes d'un objet classe." -#: library/stdtypes.rst:5173 +#: library/stdtypes.rst:5324 msgid "" "The name of the class, function, method, descriptor, or generator instance." msgstr "Le nom de la classe, fonction, méthode, descripteur, ou générateur." -#: library/stdtypes.rst:5179 +#: library/stdtypes.rst:5330 msgid "" "The :term:`qualified name` of the class, function, method, descriptor, or " "generator instance." @@ -7342,7 +7454,7 @@ msgstr "" "Le :term:`qualified name` de la classe, fonction, méthode, descripteur, ou " "générateur." -#: library/stdtypes.rst:5187 +#: library/stdtypes.rst:5338 msgid "" "This attribute is a tuple of classes that are considered when looking for " "base classes during method resolution." @@ -7350,7 +7462,7 @@ msgstr "" "Cet attribut est un *n*-uplet contenant les classes parents prises en compte " "lors de la résolution de méthode." -#: library/stdtypes.rst:5193 +#: library/stdtypes.rst:5344 msgid "" "This method can be overridden by a metaclass to customize the method " "resolution order for its instances. It is called at class instantiation, " @@ -7361,7 +7473,7 @@ msgstr "" "la l'initialisation de la classe, et son résultat est stocké dans " "l'attribut :attr:`~class.__mro__`." -#: library/stdtypes.rst:5200 +#: library/stdtypes.rst:5351 #, fuzzy msgid "" "Each class keeps a list of weak references to its immediate subclasses. " @@ -7372,11 +7484,11 @@ msgstr "" "immédiates. Cette méthode renvoie la liste de toutes ces références encore " "valables. Exemple ::" -#: library/stdtypes.rst:5209 +#: library/stdtypes.rst:5360 msgid "Footnotes" msgstr "Notes" -#: library/stdtypes.rst:5210 +#: library/stdtypes.rst:5361 msgid "" "Additional information on these special methods may be found in the Python " "Reference Manual (:ref:`customization`)." @@ -7384,7 +7496,7 @@ msgstr "" "Plus d'informations sur ces méthodes spéciales peuvent être trouvées dans le " "*Python Reference Manual* (:ref:`customization`)." -#: library/stdtypes.rst:5213 +#: library/stdtypes.rst:5364 msgid "" "As a consequence, the list ``[1, 2]`` is considered equal to ``[1.0, 2.0]``, " "and similarly for tuples." @@ -7392,13 +7504,13 @@ msgstr "" "Par conséquent, la liste ``[1, 2]`` est considérée égale à ``[1.0, 2.0]``. " "Idem avec des *n*-uplets." -#: library/stdtypes.rst:5216 +#: library/stdtypes.rst:5367 msgid "They must have since the parser can't tell the type of the operands." msgstr "" "Nécessairement, puisque l'analyseur ne peut pas discerner le type des " "opérandes." -#: library/stdtypes.rst:5218 +#: library/stdtypes.rst:5369 msgid "" "Cased characters are those with general category property being one of \"Lu" "\" (Letter, uppercase), \"Ll\" (Letter, lowercase), or \"Lt\" (Letter, " @@ -7408,10 +7520,13 @@ msgstr "" "category* est soit \"Lu\" (pour *Letter*, *uppercase*), soit \"Ll\" (pour " "*Letter*, *lowercase*), soit \"Lt\" (pour *Letter*, *titlecase*)." -#: library/stdtypes.rst:5221 +#: library/stdtypes.rst:5372 msgid "" "To format only a tuple you should therefore provide a singleton tuple whose " "only element is the tuple to be formatted." msgstr "" "Pour insérer un *n*-uplet, vous devez donc donner un *n*-uplet d'un seul " "élément, contenant le *n*-uplet à insérer." + +#~ msgid "``s.pop([i])``" +#~ msgstr "``s.pop([i])``" diff --git a/library/string.po b/library/string.po index 4e82a234c..a3b8bb6f4 100644 --- a/library/string.po +++ b/library/string.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 02:43+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -556,7 +556,7 @@ msgstr "Le sens des différentes options d'alignement est donné comme suit :" msgid "Option" msgstr "Option" -#: library/string.rst:370 library/string.rst:450 library/string.rst:485 +#: library/string.rst:370 library/string.rst:454 library/string.rst:489 msgid "Meaning" msgstr "Signification" @@ -589,11 +589,12 @@ msgid "``'='``" msgstr "``'='``" #: library/string.rst:347 +#, fuzzy msgid "" "Forces the padding to be placed after the sign (if any) but before the " "digits. This is used for printing fields in the form '+000000120'. This " "alignment option is only valid for numeric types. It becomes the default " -"when '0' immediately precedes the field width." +"for numbers when '0' immediately precedes the field width." msgstr "" "Force le remplissage (*padding*) à être placé après le signe (si signe il y " "a) mais avant les chiffres. L'option est utilisée pour afficher les champs " @@ -746,6 +747,12 @@ msgstr "" #: library/string.rst:427 msgid "" +"Preceding the *width* field by ``'0'`` no longer affects the default " +"alignment for strings." +msgstr "" + +#: library/string.rst:431 +msgid "" "The *precision* is a decimal number indicating how many digits should be " "displayed after the decimal point for a floating point value formatted with " "``'f'`` and ``'F'``, or before and after the decimal point for a floating " @@ -762,55 +769,55 @@ msgstr "" "autrement dit, combien de caractères du champ sont utilisés. Le " "spécificateur *precision* n'est pas autorisé sur les entiers." -#: library/string.rst:434 +#: library/string.rst:438 msgid "Finally, the *type* determines how the data should be presented." msgstr "" "Finalement, le spécificateur *type* détermine comment la donnée doit être " "représentée." -#: library/string.rst:436 +#: library/string.rst:440 msgid "The available string presentation types are:" msgstr "Les types disponibles de représentation de chaîne sont :" -#: library/string.rst:450 library/string.rst:485 +#: library/string.rst:454 library/string.rst:489 msgid "Type" msgstr "Type" -#: library/string.rst:441 +#: library/string.rst:445 msgid "``'s'``" msgstr "``'s'``" -#: library/string.rst:441 +#: library/string.rst:445 msgid "String format. This is the default type for strings and may be omitted." msgstr "" "Format de chaîne. C'est le type par défaut pour les chaînes de caractères et " "peut être omis." -#: library/string.rst:473 library/string.rst:560 +#: library/string.rst:477 library/string.rst:564 msgid "None" msgstr "``None``" -#: library/string.rst:444 +#: library/string.rst:448 msgid "The same as ``'s'``." msgstr "Pareil que ``'s'``." -#: library/string.rst:447 +#: library/string.rst:451 msgid "The available integer presentation types are:" msgstr "Les types disponibles de représentation d'entier sont :" -#: library/string.rst:452 +#: library/string.rst:456 msgid "``'b'``" msgstr "``'b'``" -#: library/string.rst:452 +#: library/string.rst:456 msgid "Binary format. Outputs the number in base 2." msgstr "Format binaire. Affiche le nombre en base 2." -#: library/string.rst:454 +#: library/string.rst:458 msgid "``'c'``" msgstr "``'c'``" -#: library/string.rst:454 +#: library/string.rst:458 msgid "" "Character. Converts the integer to the corresponding unicode character " "before printing." @@ -818,27 +825,27 @@ msgstr "" "Caractère. Convertit l'entier en caractère Unicode associé avant de " "l'afficher." -#: library/string.rst:457 +#: library/string.rst:461 msgid "``'d'``" msgstr "``'d'``" -#: library/string.rst:457 +#: library/string.rst:461 msgid "Decimal Integer. Outputs the number in base 10." msgstr "Entier décimal. Affiche le nombre en base 10." -#: library/string.rst:459 +#: library/string.rst:463 msgid "``'o'``" msgstr "``'o'``" -#: library/string.rst:459 +#: library/string.rst:463 msgid "Octal format. Outputs the number in base 8." msgstr "Format octal. Affiche le nombre en base 8." -#: library/string.rst:461 +#: library/string.rst:465 msgid "``'x'``" msgstr "``'x'``" -#: library/string.rst:461 +#: library/string.rst:465 msgid "" "Hex format. Outputs the number in base 16, using lower-case letters for the " "digits above 9." @@ -846,11 +853,11 @@ msgstr "" "Format hexadécimal. Affiche le nombre en base 16 en utilisant les lettres " "minuscules pour les chiffres au-dessus de 9." -#: library/string.rst:464 +#: library/string.rst:468 msgid "``'X'``" msgstr "``'X'``" -#: library/string.rst:464 +#: library/string.rst:468 msgid "" "Hex format. Outputs the number in base 16, using upper-case letters for the " "digits above 9. In case ``'#'`` is specified, the prefix ``'0x'`` will be " @@ -860,11 +867,11 @@ msgstr "" "majuscules pour les chiffres au-dessus de 9. Si ``'#'`` est présent, le " "préfixe ``'0x'`` est également passé en majuscules pour devenir ``'0X'``." -#: library/string.rst:553 +#: library/string.rst:557 msgid "``'n'``" msgstr "``'n'``" -#: library/string.rst:469 +#: library/string.rst:473 msgid "" "Number. This is the same as ``'d'``, except that it uses the current locale " "setting to insert the appropriate number separator characters." @@ -873,11 +880,11 @@ msgstr "" "localisation qui sont utilisés afin de déterminer le séparateur de nombres " "approprié." -#: library/string.rst:473 +#: library/string.rst:477 msgid "The same as ``'d'``." msgstr "Pareil que ``'d'``." -#: library/string.rst:476 +#: library/string.rst:480 msgid "" "In addition to the above presentation types, integers can be formatted with " "the floating point presentation types listed below (except ``'n'`` and " @@ -890,7 +897,7 @@ msgstr "" "func:`float` est utilisée pour convertir l'entier en flottant avant le " "formatage." -#: library/string.rst:481 +#: library/string.rst:485 msgid "" "The available presentation types for :class:`float` and :class:`~decimal." "Decimal` values are:" @@ -898,11 +905,11 @@ msgstr "" "Les représentations possibles pour les :class:`float` et les :class:" "`~decimal.Decimal` sont :" -#: library/string.rst:487 +#: library/string.rst:491 msgid "``'e'``" msgstr "``'e'``" -#: library/string.rst:487 +#: library/string.rst:491 msgid "" "Scientific notation. For a given precision ``p``, formats the number in " "scientific notation with the letter 'e' separating the coefficient from the " @@ -924,11 +931,11 @@ msgstr "" "la virgule (c.-à-d. le point décimal en Python) n'est pas affichée à moins " "que l'option ``#`` ne soit utilisée." -#: library/string.rst:499 +#: library/string.rst:503 msgid "``'E'``" msgstr "``'E'``" -#: library/string.rst:499 +#: library/string.rst:503 msgid "" "Scientific notation. Same as ``'e'`` except it uses an upper case 'E' as the " "separator character." @@ -936,11 +943,11 @@ msgstr "" "Notation scientifique. Pareil que ``'e'`` sauf que Python utilise la lettre " "majuscule 'E' comme séparateur." -#: library/string.rst:502 +#: library/string.rst:506 msgid "``'f'``" msgstr "``'f'``" -#: library/string.rst:502 +#: library/string.rst:506 msgid "" "Fixed-point notation. For a given precision ``p``, formats the number as a " "decimal number with exactly ``p`` digits following the decimal point. With " @@ -959,11 +966,11 @@ msgstr "" "la virgule, la virgule (c.-à-d. le point décimal en Python) n'est pas " "affichée à moins que l'option ``#`` ne soit utilisée." -#: library/string.rst:512 +#: library/string.rst:516 msgid "``'F'``" msgstr "``'F'``" -#: library/string.rst:512 +#: library/string.rst:516 msgid "" "Fixed-point notation. Same as ``'f'``, but converts ``nan`` to ``NAN`` and " "``inf`` to ``INF``." @@ -971,11 +978,11 @@ msgstr "" "Virgule fixe. Pareil que ``'f'`` à part ``nan`` qui devient ``NAN`` et " "``inf`` qui devient ``INF``." -#: library/string.rst:515 +#: library/string.rst:519 msgid "``'g'``" msgstr "``'g'``" -#: library/string.rst:515 +#: library/string.rst:519 msgid "" "General format. For a given precision ``p >= 1``, this rounds the number to " "``p`` significant digits and then formats the result in either fixed-point " @@ -987,7 +994,7 @@ msgstr "" "virgule fixe soit en notation scientifique, en fonction de la magnitude. Une " "précision de ``0`` est considérée équivalente à une précision de ``1``." -#: library/string.rst:522 +#: library/string.rst:526 msgid "" "The precise rules are as follows: suppose that the result formatted with " "presentation type ``'e'`` and precision ``p-1`` would have exponent " @@ -1010,7 +1017,7 @@ msgstr "" "retirée s'il n'y a aucun chiffre la suivant, sauf si l'option ``'#'`` est " "utilisée." -#: library/string.rst:535 +#: library/string.rst:539 msgid "" "With no precision given, uses a precision of ``6`` significant digits for :" "class:`float`. For :class:`~decimal.Decimal`, the coefficient of the result " @@ -1026,7 +1033,7 @@ msgstr "" "celles dont le dernier chiffre significatif a une position supérieure à 1 ; " "dans les autres cas, la notation en virgule fixe est utilisée." -#: library/string.rst:544 +#: library/string.rst:548 msgid "" "Positive and negative infinity, positive and negative zero, and nans, are " "formatted as ``inf``, ``-inf``, ``0``, ``-0`` and ``nan`` respectively, " @@ -1036,11 +1043,11 @@ msgstr "" "négatif, *not a number* sont formatées respectivement par ``inf``, ``-inf``, " "``0``, ``-0`` et ``nan``, peu importe la précision." -#: library/string.rst:549 +#: library/string.rst:553 msgid "``'G'``" msgstr "``'G'``" -#: library/string.rst:549 +#: library/string.rst:553 msgid "" "General format. Same as ``'g'`` except switches to ``'E'`` if the number " "gets too large. The representations of infinity and NaN are uppercased, too." @@ -1049,7 +1056,7 @@ msgstr "" "nombre est trop grand. La représentation des infinis et de *NaN* sont en " "majuscules également." -#: library/string.rst:553 +#: library/string.rst:557 msgid "" "Number. This is the same as ``'g'``, except that it uses the current locale " "setting to insert the appropriate number separator characters." @@ -1057,11 +1064,11 @@ msgstr "" "Nombre. Pareil que ``'g'``, si ce n'est que la configuration de localisation " "est prise en compte pour insérer le séparateur approprié." -#: library/string.rst:557 +#: library/string.rst:561 msgid "``'%'``" msgstr "``'%'``" -#: library/string.rst:557 +#: library/string.rst:561 msgid "" "Percentage. Multiplies the number by 100 and displays in fixed (``'f'``) " "format, followed by a percent sign." @@ -1069,7 +1076,7 @@ msgstr "" "Pourcentage. Multiplie le nombre par 100 et l'affiche en virgule fixe " "(``'f'``), suivi d'un symbole pourcent ``'%'``." -#: library/string.rst:560 +#: library/string.rst:564 msgid "" "For :class:`float` this is the same as ``'g'``, except that when fixed-point " "notation is used to format the result, it always includes at least one digit " @@ -1081,7 +1088,7 @@ msgstr "" "chiffre après la virgule. La précision utilisée est celle nécessaire pour " "afficher la valeur donnée fidèlement." -#: library/string.rst:566 +#: library/string.rst:570 msgid "" "For :class:`~decimal.Decimal`, this is the same as either ``'g'`` or ``'G'`` " "depending on the value of ``context.capitals`` for the current decimal " @@ -1090,7 +1097,7 @@ msgstr "" "Pour les :class:`~decimal.Decimal`, c'est identique à ``'g'`` ou ``'G'`` en " "fonction de la valeur de ``context.capitals`` du contexte décimal courant." -#: library/string.rst:570 +#: library/string.rst:574 msgid "" "The overall effect is to match the output of :func:`str` as altered by the " "other format modifiers." @@ -1098,11 +1105,11 @@ msgstr "" "L'effet visé est de coller à la valeur renvoyée par :func:`str` telle que " "modifiée par les autres modificateurs de format." -#: library/string.rst:578 +#: library/string.rst:582 msgid "Format examples" msgstr "Exemples de formats" -#: library/string.rst:580 +#: library/string.rst:584 msgid "" "This section contains examples of the :meth:`str.format` syntax and " "comparison with the old ``%``-formatting." @@ -1110,7 +1117,7 @@ msgstr "" "Cette section contient des exemples de la syntaxe de :meth:`str.format` et " "des comparaisons avec l'ancien formatage par ``%``." -#: library/string.rst:583 +#: library/string.rst:587 msgid "" "In most of the cases the syntax is similar to the old ``%``-formatting, with " "the addition of the ``{}`` and with ``:`` used instead of ``%``. For " @@ -1120,7 +1127,7 @@ msgstr "" "%``, avec l'ajout de ``{}`` et avec ``:`` au lieu de ``%``. Par exemple : " "``'%03.2f'`` peut être changé en ``'{03.2f}'``." -#: library/string.rst:587 +#: library/string.rst:591 msgid "" "The new format syntax also supports new and different options, shown in the " "following examples." @@ -1128,61 +1135,61 @@ msgstr "" "La nouvelle syntaxe de formatage gère également de nouvelles options et des " "options différentes, montrées dans les exemples qui suivent." -#: library/string.rst:590 +#: library/string.rst:594 msgid "Accessing arguments by position::" msgstr "Accéder à un argument par sa position ::" -#: library/string.rst:603 +#: library/string.rst:607 msgid "Accessing arguments by name::" msgstr "Accéder à un argument par son nom ::" -#: library/string.rst:611 +#: library/string.rst:615 msgid "Accessing arguments' attributes::" msgstr "Accéder aux attributs d'un argument ::" -#: library/string.rst:626 +#: library/string.rst:630 msgid "Accessing arguments' items::" msgstr "Accéder aux éléments d'un argument ::" -#: library/string.rst:632 +#: library/string.rst:636 msgid "Replacing ``%s`` and ``%r``::" msgstr "Remplacer ``%s`` et ``%r`` ::" -#: library/string.rst:637 +#: library/string.rst:641 msgid "Aligning the text and specifying a width::" msgstr "Aligner le texte et spécifier une longueur minimale ::" -#: library/string.rst:648 +#: library/string.rst:652 msgid "Replacing ``%+f``, ``%-f``, and ``% f`` and specifying a sign::" msgstr "Remplacer ``%+f``, ``%-f``, et ``%f`` et spécifier un signe ::" -#: library/string.rst:657 +#: library/string.rst:661 msgid "" "Replacing ``%x`` and ``%o`` and converting the value to different bases::" msgstr "" "Remplacer ``%x`` et ``%o`` et convertir la valeur dans différentes bases ::" -#: library/string.rst:666 +#: library/string.rst:670 msgid "Using the comma as a thousands separator::" msgstr "Utiliser une virgule comme séparateur des milliers ::" -#: library/string.rst:671 +#: library/string.rst:675 msgid "Expressing a percentage::" msgstr "Exprimer un pourcentage ::" -#: library/string.rst:678 +#: library/string.rst:682 msgid "Using type-specific formatting::" msgstr "Utiliser un formatage propre au type ::" -#: library/string.rst:685 +#: library/string.rst:689 msgid "Nesting arguments and more complex examples::" msgstr "Arguments imbriqués et des exemples plus complexes ::" -#: library/string.rst:719 +#: library/string.rst:723 msgid "Template strings" msgstr "Chaînes modèles" -#: library/string.rst:721 +#: library/string.rst:725 msgid "" "Template strings provide simpler string substitutions as described in :pep:" "`292`. A primary use case for template strings is for internationalization " @@ -1200,7 +1207,7 @@ msgstr "" "l'internationalisation, voir le paquet `flufl.i18n `_ (ressource en anglais)." -#: library/string.rst:731 +#: library/string.rst:735 msgid "" "Template strings support ``$``-based substitutions, using the following " "rules:" @@ -1208,11 +1215,11 @@ msgstr "" "Les chaînes modèles prennent en charge les substitutions basées sur ``$`` en " "utilisant les règles suivantes :" -#: library/string.rst:733 +#: library/string.rst:737 msgid "``$$`` is an escape; it is replaced with a single ``$``." msgstr "``$$`` est un échappement ; il est remplacé par un simple ``$``." -#: library/string.rst:735 +#: library/string.rst:739 msgid "" "``$identifier`` names a substitution placeholder matching a mapping key of ``" "\"identifier\"``. By default, ``\"identifier\"`` is restricted to any case-" @@ -1227,7 +1234,7 @@ msgstr "" "n'étant pas un identifieur après le ``$`` termine la spécification du " "substituant." -#: library/string.rst:742 +#: library/string.rst:746 msgid "" "``${identifier}`` is equivalent to ``$identifier``. It is required when " "valid identifier characters follow the placeholder but are not part of the " @@ -1238,7 +1245,7 @@ msgstr "" "directement le substituant mais ne fait pas partie du substituant, comme ``" "\"${noun}ification\"``." -#: library/string.rst:746 +#: library/string.rst:750 msgid "" "Any other appearance of ``$`` in the string will result in a :exc:" "`ValueError` being raised." @@ -1246,7 +1253,7 @@ msgstr "" "Tout autre présence du symbole ``$`` dans une chaîne résultera en la levée " "d'une :exc:`ValueError`." -#: library/string.rst:749 +#: library/string.rst:753 msgid "" "The :mod:`string` module provides a :class:`Template` class that implements " "these rules. The methods of :class:`Template` are:" @@ -1254,12 +1261,12 @@ msgstr "" "Le module :mod:`string` fournit une classe :class:`Template` qui implémente " "ces règles. Les méthodes de :class:`Template` sont :" -#: library/string.rst:755 +#: library/string.rst:759 msgid "The constructor takes a single argument which is the template string." msgstr "" "Le constructeur prend un seul argument qui est la chaîne du *template*." -#: library/string.rst:760 +#: library/string.rst:764 msgid "" "Performs the template substitution, returning a new string. *mapping* is " "any dictionary-like object with keys that match the placeholders in the " @@ -1274,7 +1281,7 @@ msgstr "" "*mapping* et *kwds* sont donnés et qu'il y a des doublons, les substituants " "de *kwds* sont prioritaires." -#: library/string.rst:769 +#: library/string.rst:773 msgid "" "Like :meth:`substitute`, except that if placeholders are missing from " "*mapping* and *kwds*, instead of raising a :exc:`KeyError` exception, the " @@ -1289,7 +1296,7 @@ msgstr "" "$`` renverra simplement ``$`` au lieu de lever une exception :exc:" "`ValueError`." -#: library/string.rst:775 +#: library/string.rst:779 msgid "" "While other exceptions may still occur, this method is called \"safe\" " "because it always tries to return a usable string instead of raising an " @@ -1305,13 +1312,13 @@ msgstr "" "contient des délimiteurs fantômes, des accolades non fermées, ou des " "substituants qui ne sont pas des identificateurs Python valides." -#: library/string.rst:782 +#: library/string.rst:786 msgid ":class:`Template` instances also provide one public data attribute:" msgstr "" "Les instances de la classe :class:`Template` fournissent également un " "attribut public :" -#: library/string.rst:786 +#: library/string.rst:790 msgid "" "This is the object passed to the constructor's *template* argument. In " "general, you shouldn't change it, but read-only access is not enforced." @@ -1320,11 +1327,11 @@ msgstr "" "vous ne devriez pas le changer, mais un accès en lecture-seule n'est pas " "possible à fournir." -#: library/string.rst:789 +#: library/string.rst:793 msgid "Here is an example of how to use a Template::" msgstr "Voici un exemple de comment utiliser un *Template* ::" -#: library/string.rst:807 +#: library/string.rst:811 msgid "" "Advanced usage: you can derive subclasses of :class:`Template` to customize " "the placeholder syntax, delimiter character, or the entire regular " @@ -1337,7 +1344,7 @@ msgstr "" "analyser les chaînes *templates*. Pour faire cela, vous pouvez redéfinir les " "attributs suivants :" -#: library/string.rst:812 +#: library/string.rst:816 msgid "" "*delimiter* -- This is the literal string describing a placeholder " "introducing delimiter. The default value is ``$``. Note that this should " @@ -1352,7 +1359,7 @@ msgstr "" "escape` sur cette chaîne si nécessaire. Notez aussi que le délimiteur ne " "peut pas être changé après la création de la classe." -#: library/string.rst:819 +#: library/string.rst:823 msgid "" "*idpattern* -- This is the regular expression describing the pattern for non-" "braced placeholders. The default value is the regular expression ``(?a:[_a-" @@ -1365,7 +1372,7 @@ msgstr "" "donné et *braceidpattern* est ``None``, ce motif est aussi utilisé pour les " "marqueurs entre accolades." -#: library/string.rst:826 +#: library/string.rst:830 msgid "" "Since default *flags* is ``re.IGNORECASE``, pattern ``[a-z]`` can match with " "some non-ASCII characters. That's why we use the local ``a`` flag here." @@ -1374,7 +1381,7 @@ msgstr "" "ASCII* peuvent correspondre au motif ``[a-z]``. C'est pourquoi on utilise " "une option locale ``a`` ici." -#: library/string.rst:830 +#: library/string.rst:834 msgid "" "*braceidpattern* can be used to define separate patterns used inside and " "outside the braces." @@ -1382,7 +1389,7 @@ msgstr "" "*braceidpattern* peut être utilisé pour définir des motifs des motifs " "différents suivant qu’ils sont à l’intérieur ou à l’extérieur des accolades." -#: library/string.rst:834 +#: library/string.rst:838 msgid "" "*braceidpattern* -- This is like *idpattern* but describes the pattern for " "braced placeholders. Defaults to ``None`` which means to fall back to " @@ -1396,7 +1403,7 @@ msgstr "" "l’intérieur d’accolades ou non). S’il est donné, cela vous permet de définir " "des motifs entre accolades différents des motifs sans accolades." -#: library/string.rst:842 +#: library/string.rst:846 msgid "" "*flags* -- The regular expression flags that will be applied when compiling " "the regular expression used for recognizing substitutions. The default " @@ -1411,7 +1418,7 @@ msgstr "" "personnalisé doit suivre les conventions des expressions rationnelles " "*verbose*." -#: library/string.rst:850 +#: library/string.rst:854 msgid "" "Alternatively, you can provide the entire regular expression pattern by " "overriding the class attribute *pattern*. If you do this, the value must be " @@ -1425,7 +1432,7 @@ msgstr "" "noms. Les groupes de capture correspondent aux règles données au-dessus, " "ainsi qu'à la règle du substituant invalide :" -#: library/string.rst:856 +#: library/string.rst:860 msgid "" "*escaped* -- This group matches the escape sequence, e.g. ``$$``, in the " "default pattern." @@ -1433,7 +1440,7 @@ msgstr "" "*escaped* — Ce groupe lie les séquences échappées (par exemple ``$$``) dans " "le motif par défaut." -#: library/string.rst:859 +#: library/string.rst:863 msgid "" "*named* -- This group matches the unbraced placeholder name; it should not " "include the delimiter in capturing group." @@ -1441,7 +1448,7 @@ msgstr "" "*named* — Ce groupe lie les substituants non entourés d'accolades ; il ne " "devrait pas inclure le délimiteur dans le groupe de capture." -#: library/string.rst:862 +#: library/string.rst:866 msgid "" "*braced* -- This group matches the brace enclosed placeholder name; it " "should not include either the delimiter or braces in the capturing group." @@ -1449,7 +1456,7 @@ msgstr "" "*braced* — Ce groupe lie le nom entouré d'accolades ; il ne devrait inclure " "ni le délimiteur, ni les accolades dans le groupe de capture." -#: library/string.rst:865 +#: library/string.rst:869 msgid "" "*invalid* -- This group matches any other delimiter pattern (usually a " "single delimiter), and it should appear last in the regular expression." @@ -1458,11 +1465,11 @@ msgstr "" "un seul délimiteur) et il devrait apparaître en dernier dans l'expression " "rationnelle." -#: library/string.rst:870 +#: library/string.rst:874 msgid "Helper functions" msgstr "Fonctions d'assistance" -#: library/string.rst:874 +#: library/string.rst:878 msgid "" "Split the argument into words using :meth:`str.split`, capitalize each word " "using :meth:`str.capitalize`, and join the capitalized words using :meth:" diff --git a/library/subprocess.po b/library/subprocess.po index 31143f9ce..7d56141a5 100644 --- a/library/subprocess.po +++ b/library/subprocess.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-06-17 20:34+0200\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -216,7 +216,7 @@ msgstr "" "Le code de statut du processus fils. Typiquement, un code de statut de 0 " "indique qu'il s'est exécuté avec succès." -#: library/subprocess.rst:865 +#: library/subprocess.rst:893 msgid "" "A negative value ``-N`` indicates that the child was terminated by signal " "``N`` (POSIX only)." @@ -500,7 +500,7 @@ msgstr "" "que ``locale.getpreferredencoding()``. Voir la classe :class:`io." "TextIOWrapper` pour plus d'informations sur ce changement." -#: library/subprocess.rst:424 +#: library/subprocess.rst:443 msgid "" "Read the `Security Considerations`_ section before using ``shell=True``." msgstr "" @@ -531,9 +531,10 @@ msgstr "" "communs, non couverts par les fonctions de convenance." #: library/subprocess.rst:346 +#, fuzzy msgid "" "Execute a child program in a new process. On POSIX, the class uses :meth:" -"`os.execvp`-like behavior to execute the child program. On Windows, the " +"`os.execvpe`-like behavior to execute the child program. On Windows, the " "class uses the Windows ``CreateProcess()`` function. The arguments to :" "class:`Popen` are as follows." msgstr "" @@ -561,13 +562,36 @@ msgstr "" "*executable* pour d'autres différences avec le comportement par défaut. Sans " "autre indication, il est recommandé de passer *args* comme une séquence." -#: library/subprocess.rst:359 +#: library/subprocess.rst:361 +msgid "" +"For maximum reliability, use a fully-qualified path for the executable. To " +"search for an unqualified name on :envvar:`PATH`, use :meth:`shutil.which`. " +"On all platforms, passing :data:`sys.executable` is the recommended way to " +"launch the current Python interpreter again, and use the ``-m`` command-line " +"format to launch an installed module." +msgstr "" + +#: library/subprocess.rst:367 +msgid "" +"Resolving the path of *executable* (or the first item of *args*) is platform " +"dependent. For POSIX, see :meth:`os.execvpe`, and note that when resolving " +"or searching for the executable path, *cwd* overrides the current working " +"directory and *env* can override the ``PATH`` environment variable. For " +"Windows, see the documentation of the ``lpApplicationName`` and " +"``lpCommandLine`` parameters of WinAPI ``CreateProcess``, and note that when " +"resolving or searching for the executable path with ``shell=False``, *cwd* " +"does not override the current working directory and *env* cannot override " +"the ``PATH`` environment variable. Using a full path avoids all of these " +"variations." +msgstr "" + +#: library/subprocess.rst:378 msgid "" "An example of passing some arguments to an external program as a sequence " "is::" msgstr "" -#: library/subprocess.rst:364 +#: library/subprocess.rst:383 msgid "" "On POSIX, if *args* is a string, the string is interpreted as the name or " "path of the program to execute. However, this can only be done if not " @@ -577,14 +601,14 @@ msgstr "" "comme le nom ou le chemin du programme à exécuter. Cependant, cela ne peut " "être fait que si le programme est passé sans arguments." -#: library/subprocess.rst:370 +#: library/subprocess.rst:389 msgid "" "It may not be obvious how to break a shell command into a sequence of " "arguments, especially in complex cases. :meth:`shlex.split` can illustrate " "how to determine the correct tokenization for *args*::" msgstr "" -#: library/subprocess.rst:382 +#: library/subprocess.rst:401 msgid "" "Note in particular that options (such as *-input*) and arguments (such as " "*eggs.txt*) that are separated by whitespace in the shell go in separate " @@ -599,7 +623,7 @@ msgstr "" "fichiers contenant des espaces ou la commande *echo* montrée plus haut) " "forment des éléments uniques." -#: library/subprocess.rst:388 +#: library/subprocess.rst:407 msgid "" "On Windows, if *args* is a sequence, it will be converted to a string in a " "manner described in :ref:`converting-argument-sequence`. This is because " @@ -610,7 +634,7 @@ msgstr "" "sequence`. Cela fonctionne ainsi parce que la fonction ``CreateProcess()`` " "opère sur des chaînes." -#: library/subprocess.rst:392 +#: library/subprocess.rst:411 msgid "" "*args* parameter accepts a :term:`path-like object` if *shell* is ``False`` " "and a sequence containing path-like objects on POSIX." @@ -619,7 +643,7 @@ msgstr "" "*shell* vaut ``False`` et une séquence contenant des objets fichier sur " "POSIX." -#: library/subprocess.rst:396 +#: library/subprocess.rst:415 msgid "" "*args* parameter accepts a :term:`path-like object` if *shell* is ``False`` " "and a sequence containing bytes and path-like objects on Windows." @@ -628,7 +652,7 @@ msgstr "" "*shell* vaut ``False`` et une séquence contenant des chaines d'octets et des " "objets chemins sur Windows." -#: library/subprocess.rst:401 +#: library/subprocess.rst:420 msgid "" "The *shell* argument (which defaults to ``False``) specifies whether to use " "the shell as the program to execute. If *shell* is ``True``, it is " @@ -639,7 +663,7 @@ msgstr "" "il est recommandé de passer *args* comme une chaîne de caractères plutôt " "qu'une séquence." -#: library/subprocess.rst:405 +#: library/subprocess.rst:424 msgid "" "On POSIX with ``shell=True``, the shell defaults to :file:`/bin/sh`. If " "*args* is a string, the string specifies the command to execute through the " @@ -661,7 +685,7 @@ msgstr "" "passer au *shell* lui-même. Pour ainsi dire, :class:`Popen` réalise " "l'équivalent de ::" -#: library/subprocess.rst:416 +#: library/subprocess.rst:435 msgid "" "On Windows with ``shell=True``, the :envvar:`COMSPEC` environment variable " "specifies the default shell. The only time you need to specify " @@ -676,7 +700,7 @@ msgstr "" "ou :command:`copy`). Vous n'avez pas besoin de ``shell=True`` pour lancer " "un fichier batch ou un exécutable console." -#: library/subprocess.rst:426 +#: library/subprocess.rst:445 msgid "" "*bufsize* will be supplied as the corresponding argument to the :func:`open` " "function when creating the stdin/stdout/stderr pipe file objects:" @@ -685,7 +709,7 @@ msgstr "" "`open`, lors de la création des objets de fichiers pour les tubes *stdin*/" "*stdout*/*stderr* :" -#: library/subprocess.rst:430 +#: library/subprocess.rst:449 msgid "" ":const:`0` means unbuffered (read and write are one system call and can " "return short)" @@ -693,7 +717,7 @@ msgstr "" ":const:`0` indique de ne pas utiliser de tampon (les lectures et écritures " "sont des appels systèmes et peuvent renvoyer des données incomplètes) ;" -#: library/subprocess.rst:432 +#: library/subprocess.rst:451 msgid "" ":const:`1` means line buffered (only usable if ``universal_newlines=True`` i." "e., in a text mode)" @@ -701,13 +725,13 @@ msgstr "" ":const:`1` indique une mise en cache par ligne (utilisable seulement si " "``universal_newlines=True``, c'est-à-dire en mode texte) ;" -#: library/subprocess.rst:434 +#: library/subprocess.rst:453 msgid "any other positive value means use a buffer of approximately that size" msgstr "" "toutes les autres valeurs positives indiquent d'utiliser un tampon " "d'approximativement cette taille ;" -#: library/subprocess.rst:436 +#: library/subprocess.rst:455 msgid "" "negative bufsize (the default) means the system default of io." "DEFAULT_BUFFER_SIZE will be used." @@ -715,7 +739,7 @@ msgstr "" "un *bufsize* négatif (par défaut) indique au système d'utiliser la valeur " "par défaut *io.DEFAULT_BUFFER_SIZE*." -#: library/subprocess.rst:439 +#: library/subprocess.rst:458 msgid "" "*bufsize* now defaults to -1 to enable buffering by default to match the " "behavior that most code expects. In versions prior to Python 3.2.4 and " @@ -731,7 +755,7 @@ msgstr "" "correspondait pas au comportement de Python 2 attendu par la plupart des " "codes." -#: library/subprocess.rst:446 +#: library/subprocess.rst:465 msgid "" "The *executable* argument specifies a replacement program to execute. It " "is very seldom needed. When ``shell=False``, *executable* replaces the " @@ -754,13 +778,13 @@ msgstr "" "``shell=True``, sur les systèmes POSIX, l'argument *executable* précise le " "*shell* à utiliser plutôt que :file:`/bin/sh` par défaut." -#: library/subprocess.rst:456 +#: library/subprocess.rst:475 msgid "*executable* parameter accepts a :term:`path-like object` on POSIX." msgstr "" "le paramètre *executable* accepte un :term:`objet chemin ` " "sur les systèmes POSIX." -#: library/subprocess.rst:459 +#: library/subprocess.rst:478 msgid "" "*executable* parameter accepts a bytes and :term:`path-like object` on " "Windows." @@ -768,7 +792,7 @@ msgstr "" "le paramètre *executable* accepte un objet *bytes* ou un :term:`objet chemin " "` sur Windows." -#: library/subprocess.rst:463 +#: library/subprocess.rst:482 msgid "" "*stdin*, *stdout* and *stderr* specify the executed program's standard " "input, standard output and standard error file handles, respectively. Valid " @@ -794,7 +818,7 @@ msgstr "" "fils doivent être capturées dans le même descripteur de fichier que la " "sortie standard." -#: library/subprocess.rst:474 +#: library/subprocess.rst:493 msgid "" "If *preexec_fn* is set to a callable object, this object will be called in " "the child process just before the child is executed. (POSIX only)" @@ -802,7 +826,7 @@ msgstr "" "Si un objet appelable est passé à *preexec_fn*, cet objet sera appelé dans " "le processus enfant juste avant d'exécuter le programme. (POSIX seulement)" -#: library/subprocess.rst:480 +#: library/subprocess.rst:499 msgid "" "The *preexec_fn* parameter is not safe to use in the presence of threads in " "your application. The child process could deadlock before exec is called. " @@ -815,7 +839,7 @@ msgstr "" "ce paramètre, gardez son utilisation triviale ! Minimisez le nombre de " "bibliothèques que vous y appelez." -#: library/subprocess.rst:488 +#: library/subprocess.rst:507 msgid "" "If you need to modify the environment for the child use the *env* parameter " "rather than doing it in a *preexec_fn*. The *start_new_session* parameter " @@ -827,7 +851,7 @@ msgstr "" "*start_new_session* peut prendre la place de *preexec_fn* qui était " "autrefois communément utilisé pour appeler *os.setsid()* dans le fils." -#: library/subprocess.rst:495 +#: library/subprocess.rst:514 msgid "" "The *preexec_fn* parameter is no longer supported in subinterpreters. The " "use of the parameter in a subinterpreter raises :exc:`RuntimeError`. The new " @@ -839,7 +863,7 @@ msgstr "" "nouvelle restriction peut affecter les applications déployées avec " "*mod_wsgi*, *uWSGI* et d'autres environnements qui peuvent embarquer Python." -#: library/subprocess.rst:500 +#: library/subprocess.rst:519 msgid "" "If *close_fds* is true, all file descriptors except :const:`0`, :const:`1` " "and :const:`2` will be closed before the child process is executed. " @@ -852,7 +876,7 @@ msgstr "" "fichiers se comportent conformément à leur option d'héritage décrite dans :" "ref:`fd_inheritance`." -#: library/subprocess.rst:505 +#: library/subprocess.rst:524 msgid "" "On Windows, if *close_fds* is true then no handles will be inherited by the " "child process unless explicitly passed in the ``handle_list`` element of :" @@ -863,7 +887,7 @@ msgstr "" "``handle_list`` de :attr:`STARTUPINFO.lpAttributeList`, ou par redirection " "des descripteurs standards." -#: library/subprocess.rst:509 +#: library/subprocess.rst:528 msgid "" "The default for *close_fds* was changed from :const:`False` to what is " "described above." @@ -871,7 +895,7 @@ msgstr "" "La valeur par défaut de *close_fds* n'est plus :const:`False`, comme décrit " "ci-dessus." -#: library/subprocess.rst:513 +#: library/subprocess.rst:532 msgid "" "On Windows the default for *close_fds* was changed from :const:`False` to :" "const:`True` when redirecting the standard handles. It's now possible to set " @@ -882,7 +906,7 @@ msgstr "" "Il est maintenant possible de donner la valeur :const:`True` à *close_fds* " "lors d'une redirection de descripteurs standards." -#: library/subprocess.rst:518 +#: library/subprocess.rst:537 msgid "" "*pass_fds* is an optional sequence of file descriptors to keep open between " "the parent and child. Providing any *pass_fds* forces *close_fds* to be :" @@ -892,16 +916,17 @@ msgstr "" "ouverts entre le parent et l'enfant. Fournir *pass_fds* force *close_fds* à " "valoir :const:`True`. (POSIX seulement)" -#: library/subprocess.rst:522 +#: library/subprocess.rst:541 msgid "The *pass_fds* parameter was added." msgstr "Ajout du paramètre *pass_fds*." -#: library/subprocess.rst:525 +#: library/subprocess.rst:544 +#, fuzzy msgid "" "If *cwd* is not ``None``, the function changes the working directory to " "*cwd* before executing the child. *cwd* can be a string, bytes or :term:" -"`path-like ` object. In particular, the function looks " -"for *executable* (or for the first item in *args*) relative to *cwd* if the " +"`path-like ` object. On POSIX, the function looks for " +"*executable* (or for the first item in *args*) relative to *cwd* if the " "executable path is a relative path." msgstr "" "Si *cwd* ne vaut pas ``None``, la fonction change de répertoire courant pour " @@ -910,23 +935,23 @@ msgstr "" "particulier, la fonction recherche *executable* (ou le premier élément dans " "*args*) relativement à *cwd* si le chemin d'exécution est relatif." -#: library/subprocess.rst:531 +#: library/subprocess.rst:550 msgid "*cwd* parameter accepts a :term:`path-like object` on POSIX." msgstr "" "le paramètre *cwd* accepte un :term:`objet chemin ` sur " "les systèmes POSIX." -#: library/subprocess.rst:534 +#: library/subprocess.rst:553 msgid "*cwd* parameter accepts a :term:`path-like object` on Windows." msgstr "" "le paramètre *cwd* accepte un :term:`objet chemin ` sur " "Windows." -#: library/subprocess.rst:537 +#: library/subprocess.rst:556 msgid "*cwd* parameter accepts a bytes object on Windows." msgstr "le paramètre *cwd* accepte une séquence d'octets sur Windows" -#: library/subprocess.rst:540 +#: library/subprocess.rst:559 msgid "" "If *restore_signals* is true (the default) all signals that Python has set " "to SIG_IGN are restored to SIG_DFL in the child process before the exec. " @@ -937,11 +962,11 @@ msgstr "" "l'appel à *exec*. Actuellement, cela inclut les signaux *SIGPIPE*, *SIGXFZ* " "et *SIGXFSZ*. (POSIX seulement)" -#: library/subprocess.rst:545 +#: library/subprocess.rst:564 msgid "*restore_signals* was added." msgstr "Ajout de *restore_signals*." -#: library/subprocess.rst:548 +#: library/subprocess.rst:567 msgid "" "If *start_new_session* is true the setsid() system call will be made in the " "child process prior to the execution of the subprocess. (POSIX only)" @@ -950,11 +975,11 @@ msgstr "" "dans le processus fils avant l'exécution du sous-processus. (POSIX " "seulement)" -#: library/subprocess.rst:551 +#: library/subprocess.rst:570 msgid "*start_new_session* was added." msgstr "Ajout de *start_new_session*." -#: library/subprocess.rst:554 +#: library/subprocess.rst:573 msgid "" "If *group* is not ``None``, the setregid() system call will be made in the " "child process prior to the execution of the subprocess. If the provided " @@ -963,12 +988,12 @@ msgid "" "passed verbatim. (POSIX only)" msgstr "" -#: library/subprocess.rst:569 library/subprocess.rst:584 +#: library/subprocess.rst:588 library/subprocess.rst:603 #, fuzzy msgid ":ref:`Availability `: POSIX" msgstr ":ref:`Disponibilité ` : POSIX et Windows." -#: library/subprocess.rst:563 +#: library/subprocess.rst:582 msgid "" "If *extra_groups* is not ``None``, the setgroups() system call will be made " "in the child process prior to the execution of the subprocess. Strings " @@ -977,7 +1002,7 @@ msgid "" "verbatim. (POSIX only)" msgstr "" -#: library/subprocess.rst:572 +#: library/subprocess.rst:591 msgid "" "If *user* is not ``None``, the setreuid() system call will be made in the " "child process prior to the execution of the subprocess. If the provided " @@ -986,7 +1011,7 @@ msgid "" "passed verbatim. (POSIX only)" msgstr "" -#: library/subprocess.rst:581 +#: library/subprocess.rst:600 #, fuzzy msgid "" "If *umask* is not negative, the umask() system call will be made in the " @@ -996,7 +1021,7 @@ msgstr "" "dans le processus fils avant l'exécution du sous-processus. (POSIX " "seulement)" -#: library/subprocess.rst:587 +#: library/subprocess.rst:606 msgid "" "If *env* is not ``None``, it must be a mapping that defines the environment " "variables for the new process; these are used instead of the default " @@ -1007,7 +1032,7 @@ msgstr "" "à la place du comportement par défaut qui est d'hériter de l'environnement " "du processus courant." -#: library/subprocess.rst:593 +#: library/subprocess.rst:612 msgid "" "If specified, *env* must provide any variables required for the program to " "execute. On Windows, in order to run a `side-by-side assembly`_ the " @@ -1018,7 +1043,7 @@ msgstr "" "l'environnement *env* spécifié **doit** contenir une variable :envvar:" "`SystemRoot` valide." -#: library/subprocess.rst:599 +#: library/subprocess.rst:618 msgid "" "If *encoding* or *errors* are specified, or *text* is true, the file objects " "*stdin*, *stdout* and *stderr* are opened in text mode with the specified " @@ -1034,16 +1059,16 @@ msgstr "" "à *text*, est fourni pour la rétrocompatibilité. Autrement, ils sont ouverts " "comme des flux binaires." -#: library/subprocess.rst:605 +#: library/subprocess.rst:624 msgid "*encoding* and *errors* were added." msgstr "Ajout d'*encoding* et *errors*." -#: library/subprocess.rst:1198 +#: library/subprocess.rst:1228 msgid "*text* was added as a more readable alias for *universal_newlines*." msgstr "" "*text* a été ajouté comme un alias plus lisible de *universal_newlines*." -#: library/subprocess.rst:611 +#: library/subprocess.rst:630 msgid "" "If given, *startupinfo* will be a :class:`STARTUPINFO` object, which is " "passed to the underlying ``CreateProcess`` function. *creationflags*, if " @@ -1053,55 +1078,68 @@ msgstr "" "à la fonction ``CreateProcess`` inhérente. *creationflags*, si fourni, peut " "avoir l'une des valeurs suivantes :" -#: library/subprocess.rst:615 +#: library/subprocess.rst:634 msgid ":data:`CREATE_NEW_CONSOLE`" msgstr ":data:`CREATE_NEW_CONSOLE`" -#: library/subprocess.rst:616 +#: library/subprocess.rst:635 msgid ":data:`CREATE_NEW_PROCESS_GROUP`" msgstr ":data:`CREATE_NEW_PROCESS_GROUP`" -#: library/subprocess.rst:617 +#: library/subprocess.rst:636 msgid ":data:`ABOVE_NORMAL_PRIORITY_CLASS`" msgstr ":data:`ABOVE_NORMAL_PRIORITY_CLASS`" -#: library/subprocess.rst:618 +#: library/subprocess.rst:637 msgid ":data:`BELOW_NORMAL_PRIORITY_CLASS`" msgstr ":data:`BELOW_NORMAL_PRIORITY_CLASS`" -#: library/subprocess.rst:619 +#: library/subprocess.rst:638 msgid ":data:`HIGH_PRIORITY_CLASS`" msgstr ":data:`HIGH_PRIORITY_CLASS`" -#: library/subprocess.rst:620 +#: library/subprocess.rst:639 msgid ":data:`IDLE_PRIORITY_CLASS`" msgstr ":data:`IDLE_PRIORITY_CLASS`" -#: library/subprocess.rst:621 +#: library/subprocess.rst:640 msgid ":data:`NORMAL_PRIORITY_CLASS`" msgstr ":data:`NORMAL_PRIORITY_CLASS`" -#: library/subprocess.rst:622 +#: library/subprocess.rst:641 msgid ":data:`REALTIME_PRIORITY_CLASS`" msgstr ":data:`REALTIME_PRIORITY_CLASS`" -#: library/subprocess.rst:623 +#: library/subprocess.rst:642 msgid ":data:`CREATE_NO_WINDOW`" msgstr ":data:`CREATE_NO_WINDOW`" -#: library/subprocess.rst:624 +#: library/subprocess.rst:643 msgid ":data:`DETACHED_PROCESS`" msgstr ":data:`DETACHED_PROCESS`" -#: library/subprocess.rst:625 +#: library/subprocess.rst:644 msgid ":data:`CREATE_DEFAULT_ERROR_MODE`" msgstr ":data:`CREATE_DEFAULT_ERROR_MODE`" -#: library/subprocess.rst:626 +#: library/subprocess.rst:645 msgid ":data:`CREATE_BREAKAWAY_FROM_JOB`" msgstr ":data:`CREATE_BREAKAWAY_FROM_JOB`" -#: library/subprocess.rst:628 +#: library/subprocess.rst:647 +msgid "" +"*pipesize* can be used to change the size of the pipe when :data:`PIPE` is " +"used for *stdin*, *stdout* or *stderr*. The size of the pipe is only changed " +"on platforms that support this (only Linux at this time of writing). Other " +"platforms will ignore this parameter." +msgstr "" + +#: library/subprocess.rst:652 +#, fuzzy +msgid "The ``pipesize`` parameter was added." +msgstr "Ajout du paramètre *pass_fds*." + +#: library/subprocess.rst:655 msgid "" "Popen objects are supported as context managers via the :keyword:`with` " "statement: on exit, standard file descriptors are closed, and the process is " @@ -1111,7 +1149,7 @@ msgstr "" "l'instruction :keyword:`with` : à la sortie, les descripteurs de fichiers " "standards sont fermés, et le processus est attendu ::" -#: library/subprocess.rst:635 +#: library/subprocess.rst:662 msgid "" "Raises an :ref:`auditing event ` ``subprocess.Popen`` with " "arguments ``executable``, ``args``, ``cwd``, ``env``." @@ -1119,7 +1157,7 @@ msgstr "" "Lève un :ref:`évènement d'audit ` ``subprocess.Popen`` avec comme " "arguments ``executable``, ``args``, ``cwd`` et ``env``." -#: library/subprocess.rst:637 +#: library/subprocess.rst:664 msgid "" "Popen and the other functions in this module that use it raise an :ref:" "`auditing event ` ``subprocess.Popen`` with arguments " @@ -1132,11 +1170,11 @@ msgstr "" "être une simple chaîne de caractères ou une liste de chaînes, en fonction de " "la plateforme." -#: library/subprocess.rst:642 +#: library/subprocess.rst:669 msgid "Added context manager support." msgstr "Ajout de la gestion des gestionnaires de contexte." -#: library/subprocess.rst:645 +#: library/subprocess.rst:672 msgid "" "Popen destructor now emits a :exc:`ResourceWarning` warning if the child " "process is still running." @@ -1144,7 +1182,7 @@ msgstr "" "Le destructeur de *Popen* émet maintenant un avertissement :exc:" "`ResourceWarning` si le processus fils est toujours en cours d'exécution." -#: library/subprocess.rst:649 +#: library/subprocess.rst:676 msgid "" "Popen can use :func:`os.posix_spawn` in some cases for better performance. " "On Windows Subsystem for Linux and QEMU User Emulation, Popen constructor " @@ -1159,11 +1197,11 @@ msgstr "" "manquant, mais le processus enfant échoue avec un :attr:`~Popen.returncode` " "différent de zéro." -#: library/subprocess.rst:658 +#: library/subprocess.rst:685 msgid "Exceptions" msgstr "Exceptions" -#: library/subprocess.rst:660 +#: library/subprocess.rst:687 msgid "" "Exceptions raised in the child process, before the new program has started " "to execute, will be re-raised in the parent." @@ -1171,17 +1209,18 @@ msgstr "" "Les exceptions levées dans le processus fils, avant que le nouveau programme " "ait commencé à s'exécuter, seront ré-levées dans le parent." -#: library/subprocess.rst:663 +#: library/subprocess.rst:690 msgid "" "The most common exception raised is :exc:`OSError`. This occurs, for " "example, when trying to execute a non-existent file. Applications should " -"prepare for :exc:`OSError` exceptions." +"prepare for :exc:`OSError` exceptions. Note that, when ``shell=True``, :exc:" +"`OSError` will be raised by the child only if the selected shell itself was " +"not found. To determine if the shell failed to find the requested " +"application, it is necessary to check the return code or output from the " +"subprocess." msgstr "" -"L'exception la plus communément levée est :exc:`OSError`. Elle survient, " -"par exemple, si vous essayez d'exécuter un fichier inexistant. Les " -"applications doivent se préparer à traiter des exceptions :exc:`OSError`." -#: library/subprocess.rst:667 +#: library/subprocess.rst:697 msgid "" "A :exc:`ValueError` will be raised if :class:`Popen` is called with invalid " "arguments." @@ -1189,7 +1228,7 @@ msgstr "" "Une :exc:`ValueError` sera levée si :class:`Popen` est appelé avec des " "arguments invalides." -#: library/subprocess.rst:670 +#: library/subprocess.rst:700 msgid "" ":func:`check_call` and :func:`check_output` will raise :exc:" "`CalledProcessError` if the called process returns a non-zero return code." @@ -1198,7 +1237,7 @@ msgstr "" "`CalledProcessError` si le processus appelé renvoie un code de retour non " "nul." -#: library/subprocess.rst:674 +#: library/subprocess.rst:704 msgid "" "All of the functions and methods that accept a *timeout* parameter, such as :" "func:`call` and :meth:`Popen.communicate` will raise :exc:`TimeoutExpired` " @@ -1208,22 +1247,23 @@ msgstr "" "telles que :func:`call` et :meth:`Popen.communicate` lèveront une :exc:" "`TImeoutExpired` si le *timeout* expire avant la fin du processus." -#: library/subprocess.rst:678 +#: library/subprocess.rst:708 msgid "" "Exceptions defined in this module all inherit from :exc:`SubprocessError`." msgstr "" "Toutes les exceptions définies dans ce module héritent de :exc:" "`SubprocessError`." -#: library/subprocess.rst:680 +#: library/subprocess.rst:710 msgid "The :exc:`SubprocessError` base class was added." msgstr "Ajout de la classe de base :exc:`SubprocessError`." -#: library/subprocess.rst:685 +#: library/subprocess.rst:716 msgid "Security Considerations" msgstr "Considérations de sécurité" -#: library/subprocess.rst:687 +#: library/subprocess.rst:718 +#, fuzzy msgid "" "Unlike some other popen functions, this implementation will never implicitly " "call a system shell. This means that all characters, including shell " @@ -1231,7 +1271,9 @@ msgid "" "invoked explicitly, via ``shell=True``, it is the application's " "responsibility to ensure that all whitespace and metacharacters are quoted " "appropriately to avoid `shell injection `_ vulnerabilities." +"Shell_injection#Shell_injection>`_ vulnerabilities. On :ref:`some platforms " +"`, it is possible to use :func:`shlex.quote` for this " +"escaping." msgstr "" "Contrairement à quelques autres fonctions *popen*, cette implémentation " "n'appellera jamais implicitement le *shell* du système. Cela signifie que " @@ -1242,26 +1284,16 @@ msgstr "" "correctement pour éviter les vulnérabilités de type `shell injection " "`_." -#: library/subprocess.rst:696 -msgid "" -"When using ``shell=True``, the :func:`shlex.quote` function can be used to " -"properly escape whitespace and shell metacharacters in strings that are " -"going to be used to construct shell commands." -msgstr "" -"Avec ``shell=True``, la fonction :func:`shlex.quote` peut être utilisée pour " -"échapper proprement les espaces et métacaractères dans les chaînes qui " -"seront utilisées pour construire les commandes *shell*." - -#: library/subprocess.rst:702 +#: library/subprocess.rst:730 msgid "Popen Objects" msgstr "Objets *Popen*" -#: library/subprocess.rst:704 +#: library/subprocess.rst:732 msgid "Instances of the :class:`Popen` class have the following methods:" msgstr "" "Les instances de la classe :class:`Popen` possèdent les méthodes suivantes :" -#: library/subprocess.rst:709 +#: library/subprocess.rst:737 msgid "" "Check if child process has terminated. Set and return :attr:`~Popen." "returncode` attribute. Otherwise, returns ``None``." @@ -1269,7 +1301,7 @@ msgstr "" "Vérifie que le processus enfant s'est terminé. Modifie et renvoie " "l'attribut :attr:`~Popen.returncode`, sinon, renvoie ``None``." -#: library/subprocess.rst:715 +#: library/subprocess.rst:743 msgid "" "Wait for child process to terminate. Set and return :attr:`~Popen." "returncode` attribute." @@ -1277,7 +1309,7 @@ msgstr "" "Attend qu'un processus enfant se termine. Modifie l'attribut :attr:`~Popen." "returncode` et le renvoie." -#: library/subprocess.rst:718 +#: library/subprocess.rst:746 msgid "" "If the process does not terminate after *timeout* seconds, raise a :exc:" "`TimeoutExpired` exception. It is safe to catch this exception and retry " @@ -1287,7 +1319,7 @@ msgstr "" "*timeout*, une exception :exc:`TimeoutExpired` est levée. Cela ne pose " "aucun problème d'attraper cette exception et de réessayer d'attendre." -#: library/subprocess.rst:724 +#: library/subprocess.rst:752 msgid "" "This will deadlock when using ``stdout=PIPE`` or ``stderr=PIPE`` and the " "child process generates enough output to a pipe such that it blocks waiting " @@ -1301,7 +1333,7 @@ msgstr "" "Utilisez :meth:`Popen.communicate` pour éviter ce problème lors de " "l'utilisation de tubes." -#: library/subprocess.rst:731 +#: library/subprocess.rst:759 msgid "" "The function is implemented using a busy loop (non-blocking call and short " "sleeps). Use the :mod:`asyncio` module for an asynchronous wait: see :class:" @@ -1311,12 +1343,12 @@ msgstr "" "et *sleep* courts). Utilisez le module :mod:`asyncio` pour une attente " "asynchrone : voir :class:`asyncio.create_subprocess_exec`." -#: library/subprocess.rst:776 library/subprocess.rst:1143 -#: library/subprocess.rst:1189 +#: library/subprocess.rst:804 library/subprocess.rst:1173 +#: library/subprocess.rst:1219 msgid "*timeout* was added." msgstr "Ajout de *timeout*." -#: library/subprocess.rst:740 +#: library/subprocess.rst:768 #, fuzzy msgid "" "Interact with process: Send data to stdin. Read data from stdout and " @@ -1333,7 +1365,7 @@ msgstr "" "transmettre. Si les flux sont ouverts en mode texte, *input* doit être une " "chaîne de caractère. Autrement, ce doit être un objet *bytes*." -#: library/subprocess.rst:747 +#: library/subprocess.rst:775 msgid "" ":meth:`communicate` returns a tuple ``(stdout_data, stderr_data)``. The data " "will be strings if streams were opened in text mode; otherwise, bytes." @@ -1342,7 +1374,7 @@ msgstr "" "données seront des chaînes de caractères si les flux sont ouverts en mode " "texte, et des objets *bytes* dans le cas contraire." -#: library/subprocess.rst:751 +#: library/subprocess.rst:779 msgid "" "Note that if you want to send data to the process's stdin, you need to " "create the Popen object with ``stdin=PIPE``. Similarly, to get anything " @@ -1354,7 +1386,7 @@ msgstr "" "Similairement, pour obtenir autre chose que ``None`` dans le *n*-uplet " "résultant, vous devez aussi préciser ``stdout=PIPE`` et/ou ``stderr=PIPE``." -#: library/subprocess.rst:756 +#: library/subprocess.rst:784 msgid "" "If the process does not terminate after *timeout* seconds, a :exc:" "`TimeoutExpired` exception will be raised. Catching this exception and " @@ -1364,7 +1396,7 @@ msgstr "" "exc:`TimeoutExpired` est levée. Attraper cette exception et retenter la " "communication ne fait perdre aucune donnée de sortie." -#: library/subprocess.rst:760 +#: library/subprocess.rst:788 msgid "" "The child process is not killed if the timeout expires, so in order to " "cleanup properly a well-behaved application should kill the child process " @@ -1374,7 +1406,7 @@ msgstr "" "nettoyer proprement le tout, une application polie devrait tuer le processus " "fils et terminer la communication ::" -#: library/subprocess.rst:773 +#: library/subprocess.rst:801 msgid "" "The data read is buffered in memory, so do not use this method if the data " "size is large or unlimited." @@ -1382,15 +1414,15 @@ msgstr "" "Les données lues sont mises en cache en mémoire, donc n'utilisez pas cette " "méthode si la taille des données est importante voire illimitée." -#: library/subprocess.rst:782 +#: library/subprocess.rst:810 msgid "Sends the signal *signal* to the child." msgstr "Envoie le signal *signal* au fils." -#: library/subprocess.rst:784 +#: library/subprocess.rst:812 msgid "Do nothing if the process completed." msgstr "" -#: library/subprocess.rst:788 +#: library/subprocess.rst:816 msgid "" "On Windows, SIGTERM is an alias for :meth:`terminate`. CTRL_C_EVENT and " "CTRL_BREAK_EVENT can be sent to processes started with a *creationflags* " @@ -1400,7 +1432,7 @@ msgstr "" "et *CTRL_BREAK_EVENT* peuvent être envoyés aux processus démarrés avec un " "paramètre *creationflags* incluant `CREATE_NEW_PROCESS_GROUP`." -#: library/subprocess.rst:795 +#: library/subprocess.rst:823 msgid "" "Stop the child. On POSIX OSs the method sends SIGTERM to the child. On " "Windows the Win32 API function :c:func:`TerminateProcess` is called to stop " @@ -1410,7 +1442,7 @@ msgstr "" "signal *SIGTERM* au fils. Sous Windows, la fonction :c:func:" "`TerminateProcess` de l'API *Win32* est appelée pour arrêter le fils." -#: library/subprocess.rst:802 +#: library/subprocess.rst:830 msgid "" "Kills the child. On POSIX OSs the function sends SIGKILL to the child. On " "Windows :meth:`kill` is an alias for :meth:`terminate`." @@ -1419,11 +1451,11 @@ msgstr "" "*SIGKILL* au fils. Sous Windows, :meth:`kill` est un alias pour :meth:" "`terminate`." -#: library/subprocess.rst:806 +#: library/subprocess.rst:834 msgid "The following attributes are also available:" msgstr "Les attributs suivants sont aussi disponibles :" -#: library/subprocess.rst:810 +#: library/subprocess.rst:838 msgid "" "The *args* argument as it was passed to :class:`Popen` -- a sequence of " "program arguments or else a single string." @@ -1431,7 +1463,7 @@ msgstr "" "L'argument *args* tel que passé à :class:`Popen` -- une séquence d'arguments " "du programme ou une simple chaîne de caractères." -#: library/subprocess.rst:817 +#: library/subprocess.rst:845 msgid "" "If the *stdin* argument was :data:`PIPE`, this attribute is a writeable " "stream object as returned by :func:`open`. If the *encoding* or *errors* " @@ -1445,7 +1477,7 @@ msgstr "" "``True``, le flux est textuel, il est autrement binaire. Si l'argument " "*stdin* ne valait pas :data:`PIPE`, cet attribut est ``None``." -#: library/subprocess.rst:826 +#: library/subprocess.rst:854 msgid "" "If the *stdout* argument was :data:`PIPE`, this attribute is a readable " "stream object as returned by :func:`open`. Reading from the stream provides " @@ -1461,7 +1493,7 @@ msgstr "" "textuel, il est autrement binaire. Si l'argument *stdout* ne valait pas :" "data:`PIPE`, cet attribut est ``None``." -#: library/subprocess.rst:836 +#: library/subprocess.rst:864 msgid "" "If the *stderr* argument was :data:`PIPE`, this attribute is a readable " "stream object as returned by :func:`open`. Reading from the stream provides " @@ -1477,7 +1509,7 @@ msgstr "" "flux est textuel, il est autrement binaire. Si l'argument *stderr* ne valait " "pas :data:`PIPE`, cet attribut est ``None``." -#: library/subprocess.rst:845 +#: library/subprocess.rst:873 msgid "" "Use :meth:`~Popen.communicate` rather than :attr:`.stdin.write `, :attr:`.stdout.read ` or :attr:`.stderr.read ` pour empêcher les *deadlocks* dus au remplissage des tampons des " "tubes de l'OS et bloquant le processus enfant." -#: library/subprocess.rst:853 +#: library/subprocess.rst:881 msgid "The process ID of the child process." msgstr "L'identifiant de processus du processus enfant." -#: library/subprocess.rst:855 +#: library/subprocess.rst:883 msgid "" "Note that if you set the *shell* argument to ``True``, this is the process " "ID of the spawned shell." @@ -1501,7 +1533,7 @@ msgstr "" "Notez que si vous passez l'argument *shell* à ``True``, il s'agit alors de " "l'identifiant du *shell* instancié." -#: library/subprocess.rst:861 +#: library/subprocess.rst:889 msgid "" "The child return code, set by :meth:`poll` and :meth:`wait` (and indirectly " "by :meth:`communicate`). A ``None`` value indicates that the process hasn't " @@ -1511,11 +1543,11 @@ msgstr "" "indirectement par :meth:`communicate`). Une valeur ``None`` indique que le " "processus ne s'est pas encore terminé." -#: library/subprocess.rst:870 +#: library/subprocess.rst:898 msgid "Windows Popen Helpers" msgstr "Utilitaires *Popen* pour Windows" -#: library/subprocess.rst:872 +#: library/subprocess.rst:900 msgid "" "The :class:`STARTUPINFO` class and following constants are only available on " "Windows." @@ -1523,7 +1555,7 @@ msgstr "" "La classe :class:`STARTUPINFO` et les constantes suivantes sont seulement " "disponibles sous Windows." -#: library/subprocess.rst:878 +#: library/subprocess.rst:906 msgid "" "Partial support of the Windows `STARTUPINFO `__ structure is used for :class:`Popen` " @@ -1535,11 +1567,11 @@ msgstr "" "création d'un objet :class:`Popen`. Les attributs ci-dessous peuvent être " "passés en tant que paramètres *keyword-only*." -#: library/subprocess.rst:883 +#: library/subprocess.rst:911 msgid "Keyword-only argument support was added." msgstr "Ajout de la gestion des paramètres *keyword-only*." -#: library/subprocess.rst:888 +#: library/subprocess.rst:916 msgid "" "A bit field that determines whether certain :class:`STARTUPINFO` attributes " "are used when the process creates a window. ::" @@ -1547,7 +1579,7 @@ msgstr "" "Un champ de bits déterminant si certains attributs :class:`STARTUPINFO` sont " "utilisés quand le processus crée une fenêtre ::" -#: library/subprocess.rst:896 +#: library/subprocess.rst:924 msgid "" "If :attr:`dwFlags` specifies :data:`STARTF_USESTDHANDLES`, this attribute is " "the standard input handle for the process. If :data:`STARTF_USESTDHANDLES` " @@ -1558,7 +1590,7 @@ msgstr "" "`STARTF_USESTDHANDLES` n'est pas spécifié, l'entrée standard par défaut est " "le tampon du clavier." -#: library/subprocess.rst:903 +#: library/subprocess.rst:931 msgid "" "If :attr:`dwFlags` specifies :data:`STARTF_USESTDHANDLES`, this attribute is " "the standard output handle for the process. Otherwise, this attribute is " @@ -1568,7 +1600,7 @@ msgstr "" "le descripteur de sortie standard du processus. Autrement, l'attribut est " "ignoré et la sortie standard par défaut est le tampon de la console." -#: library/subprocess.rst:910 +#: library/subprocess.rst:938 msgid "" "If :attr:`dwFlags` specifies :data:`STARTF_USESTDHANDLES`, this attribute is " "the standard error handle for the process. Otherwise, this attribute is " @@ -1578,7 +1610,7 @@ msgstr "" "le descripteur de sortie d'erreur du processus. Autrement, l'attribut est " "ignoré et la sortie d'erreur par défaut est le tampon de la console." -#: library/subprocess.rst:916 +#: library/subprocess.rst:944 msgid "" "If :attr:`dwFlags` specifies :data:`STARTF_USESHOWWINDOW`, this attribute " "can be any of the values that can be specified in the ``nCmdShow`` parameter " @@ -1592,7 +1624,7 @@ msgstr "" "ms633548(v=vs.85).aspx>`__, à l'exception de ``SW_SHOWDEFAULT``. Autrement, " "cet attribut est ignoré." -#: library/subprocess.rst:923 +#: library/subprocess.rst:951 msgid "" ":data:`SW_HIDE` is provided for this attribute. It is used when :class:" "`Popen` is called with ``shell=True``." @@ -1600,7 +1632,7 @@ msgstr "" ":data:`SW_HIDE` est fourni pour cet attribut. Il est utilisé quand :class:" "`Popen` est appelée avec ``shell=True``." -#: library/subprocess.rst:928 +#: library/subprocess.rst:956 msgid "" "A dictionary of additional attributes for process creation as given in " "``STARTUPINFOEX``, see `UpdateProcThreadAttribute `__ (ressource en anglais)." -#: library/subprocess.rst:932 +#: library/subprocess.rst:960 msgid "Supported attributes:" msgstr "Attributs gérés :" -#: library/subprocess.rst:950 +#: library/subprocess.rst:978 msgid "**handle_list**" msgstr "**handle_list**" -#: library/subprocess.rst:935 +#: library/subprocess.rst:963 msgid "" "Sequence of handles that will be inherited. *close_fds* must be true if non-" "empty." @@ -1627,7 +1659,7 @@ msgstr "" "Séquence des descripteurs qui hérités du parent. *close_fds* doit être vrai " "si la séquence n'est pas vide." -#: library/subprocess.rst:938 +#: library/subprocess.rst:966 msgid "" "The handles must be temporarily made inheritable by :func:`os." "set_handle_inheritable` when passed to the :class:`Popen` constructor, else :" @@ -1639,7 +1671,7 @@ msgstr "" "`Popen`, sinon :class:`OSError` est levée avec l'erreur Windows " "``ERROR_INVALID_PARAMETER`` (87)." -#: library/subprocess.rst:945 +#: library/subprocess.rst:973 msgid "" "In a multithreaded process, use caution to avoid leaking handles that are " "marked inheritable when combining this feature with concurrent calls to " @@ -1653,15 +1685,15 @@ msgstr "" "d'autres processus qui héritent de tous les descripteurs (telle que :func:" "`os.system`)." -#: library/subprocess.rst:955 +#: library/subprocess.rst:983 msgid "Windows Constants" msgstr "Constantes Windows" -#: library/subprocess.rst:957 +#: library/subprocess.rst:985 msgid "The :mod:`subprocess` module exposes the following constants." msgstr "Le module :mod:`subprocess` expose les constantes suivantes." -#: library/subprocess.rst:961 +#: library/subprocess.rst:989 msgid "" "The standard input device. Initially, this is the console input buffer, " "``CONIN$``." @@ -1669,7 +1701,7 @@ msgstr "" "Le périphérique d'entrée standard. Initialement, il s'agit du tampon de la " "console d'entrée, ``CONIN$``." -#: library/subprocess.rst:966 +#: library/subprocess.rst:994 msgid "" "The standard output device. Initially, this is the active console screen " "buffer, ``CONOUT$``." @@ -1677,7 +1709,7 @@ msgstr "" "Le périphérique de sortie standard. Initialement, il s'agit du tampon de " "l'écran de console actif, ``CONOUT$``." -#: library/subprocess.rst:971 +#: library/subprocess.rst:999 msgid "" "The standard error device. Initially, this is the active console screen " "buffer, ``CONOUT$``." @@ -1685,11 +1717,11 @@ msgstr "" "Le périphérique de sortie d'erreur. Initialement, il s'agit du tampon de " "l'écran de console actif, ``CONOUT$``." -#: library/subprocess.rst:976 +#: library/subprocess.rst:1004 msgid "Hides the window. Another window will be activated." msgstr "Cache la fenêtre. Une autre fenêtre sera activée." -#: library/subprocess.rst:980 +#: library/subprocess.rst:1008 msgid "" "Specifies that the :attr:`STARTUPINFO.hStdInput`, :attr:`STARTUPINFO." "hStdOutput`, and :attr:`STARTUPINFO.hStdError` attributes contain additional " @@ -1699,7 +1731,7 @@ msgstr "" "hStdOutput` et :attr:`STARTUPINFO.hStdError` contiennent des informations " "additionnelles." -#: library/subprocess.rst:986 +#: library/subprocess.rst:1014 msgid "" "Specifies that the :attr:`STARTUPINFO.wShowWindow` attribute contains " "additional information." @@ -1707,7 +1739,7 @@ msgstr "" "Spécifie que l'attribut :attr:`STARTUPINFO.wShowWindow` contient des " "informations additionnelles." -#: library/subprocess.rst:991 +#: library/subprocess.rst:1019 msgid "" "The new process has a new console, instead of inheriting its parent's " "console (the default)." @@ -1715,7 +1747,7 @@ msgstr "" "Le nouveau processus instancie une nouvelle console, plutôt que d'hériter de " "celle de son père (par défaut)." -#: library/subprocess.rst:996 +#: library/subprocess.rst:1024 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "group will be created. This flag is necessary for using :func:`os.kill` on " @@ -1725,11 +1757,11 @@ msgstr "" "groupe de processus doit être créé. Cette option est nécessaire pour " "utiliser :func:`os.kill` sur le sous-processus." -#: library/subprocess.rst:1000 +#: library/subprocess.rst:1028 msgid "This flag is ignored if :data:`CREATE_NEW_CONSOLE` is specified." msgstr "L'option est ignorée si :data:`CREATE_NEW_CONSOLE` est spécifié." -#: library/subprocess.rst:1004 +#: library/subprocess.rst:1032 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have an above average priority." @@ -1737,7 +1769,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "aura une priorité au-dessus de la moyenne." -#: library/subprocess.rst:1011 +#: library/subprocess.rst:1039 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have a below average priority." @@ -1745,7 +1777,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "aura une priorité au-dessous de la moyenne." -#: library/subprocess.rst:1018 +#: library/subprocess.rst:1046 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have a high priority." @@ -1753,7 +1785,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "aura une priorité haute." -#: library/subprocess.rst:1025 +#: library/subprocess.rst:1053 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have an idle (lowest) priority." @@ -1761,7 +1793,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "aura la priorité la plus basse (inactif ou *idle*)." -#: library/subprocess.rst:1032 +#: library/subprocess.rst:1060 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have an normal priority. (default)" @@ -1769,7 +1801,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "aura une priorité normale (le défaut)." -#: library/subprocess.rst:1039 +#: library/subprocess.rst:1067 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have realtime priority. You should almost never use " @@ -1786,7 +1818,7 @@ msgstr "" "« parlent » directement au matériel ou qui effectuent de brèves tâches " "nécessitant des interruptions limitées." -#: library/subprocess.rst:1050 +#: library/subprocess.rst:1078 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will not create a window." @@ -1794,7 +1826,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "ne créera pas une nouvelle fenêtre." -#: library/subprocess.rst:1057 +#: library/subprocess.rst:1085 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will not inherit its parent's console. This value cannot be used with " @@ -1804,7 +1836,7 @@ msgstr "" "processus n'héritera pas de la console du processus parent. Cette valeur ne " "peut pas être utilisée avec CREATE_NEW_CONSOLE." -#: library/subprocess.rst:1065 +#: library/subprocess.rst:1093 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "does not inherit the error mode of the calling process. Instead, the new " @@ -1818,7 +1850,7 @@ msgstr "" "de multiples fils d'exécution qui s'exécutent avec les erreurs irréversibles " "désactivées." -#: library/subprocess.rst:1075 +#: library/subprocess.rst:1103 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "is not associated with the job." @@ -1826,11 +1858,11 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "n'est pas associé au *job*." -#: library/subprocess.rst:1083 +#: library/subprocess.rst:1111 msgid "Older high-level API" msgstr "Ancienne interface (*API*) haut-niveau" -#: library/subprocess.rst:1085 +#: library/subprocess.rst:1113 msgid "" "Prior to Python 3.5, these three functions comprised the high level API to " "subprocess. You can now use :func:`run` in many cases, but lots of existing " @@ -1840,7 +1872,7 @@ msgstr "" "*subprocess*. Vous pouvez maintenant utiliser :func:`run` dans de nombreux " "cas, mais beaucoup de codes existant font appel à ces trois fonctions." -#: library/subprocess.rst:1092 +#: library/subprocess.rst:1120 msgid "" "Run the command described by *args*. Wait for command to complete, then " "return the :attr:`~Popen.returncode` attribute." @@ -1848,18 +1880,18 @@ msgstr "" "Lance la commande décrite par *args*, attend qu'elle se termine, et renvoie " "son attribut :attr:`~Popen.returncode`." -#: library/subprocess.rst:1125 +#: library/subprocess.rst:1155 msgid "" "Code needing to capture stdout or stderr should use :func:`run` instead::" msgstr "" "Le code ayant besoin de capturer *stdout* ou *stderr* doit plutôt utiliser ::" "func:`run` ::" -#: library/subprocess.rst:1129 +#: library/subprocess.rst:1159 msgid "To suppress stdout or stderr, supply a value of :data:`DEVNULL`." msgstr "Pour supprimer *stdout* ou *stderr*, passez la valeur :data:`DEVNULL`." -#: library/subprocess.rst:1131 +#: library/subprocess.rst:1161 msgid "" "The arguments shown above are merely some common ones. The full function " "signature is the same as that of the :class:`Popen` constructor - this " @@ -1871,7 +1903,7 @@ msgstr "" "class:`Popen` : cette fonction passe tous les arguments fournis autre que " "*timeout* directement à travers cette interface." -#: library/subprocess.rst:1138 +#: library/subprocess.rst:1168 msgid "" "Do not use ``stdout=PIPE`` or ``stderr=PIPE`` with this function. The child " "process will block if it generates enough output to a pipe to fill up the OS " @@ -1881,23 +1913,25 @@ msgstr "" "processus enfant bloquera s'il génère assez de données pour remplir le " "tampon du tube de l'OS, puisque les tubes ne seront jamais lus." -#: library/subprocess.rst:1120 +#: library/subprocess.rst:1148 +#, fuzzy msgid "" "Run command with arguments. Wait for command to complete. If the return " "code was zero then return, otherwise raise :exc:`CalledProcessError`. The :" "exc:`CalledProcessError` object will have the return code in the :attr:" -"`~CalledProcessError.returncode` attribute." +"`~CalledProcessError.returncode` attribute. If :func:`check_call` was unable " +"to start the process it will propagate the exception that was raised." msgstr "" "Lance la commande avec les arguments et attend qu'elle se termine. Se " "termine normalement si le code de retour est zéro, et lève une :exc:" "`CalledProcessError` autrement. L'objet :exc:`CalledProcessError` contiendra " "le code de retour dans son attribut :attr:`~CalledProcessError.returncode`." -#: library/subprocess.rst:1152 +#: library/subprocess.rst:1182 msgid "Run command with arguments and return its output." msgstr "Lance la commande avec les arguments et renvoie sa sortie." -#: library/subprocess.rst:1154 +#: library/subprocess.rst:1184 msgid "" "If the return code was non-zero it raises a :exc:`CalledProcessError`. The :" "exc:`CalledProcessError` object will have the return code in the :attr:" @@ -1909,11 +1943,11 @@ msgstr "" "de retour dans son attribut :attr:`~CalledProcessError.returncode`, et la " "sortie du programme dans son attribut :attr:`~CalledProcessError.output`." -#: library/subprocess.rst:1159 +#: library/subprocess.rst:1189 msgid "This is equivalent to::" msgstr "C’est équivalent à ::" -#: library/subprocess.rst:1163 +#: library/subprocess.rst:1193 #, fuzzy msgid "" "The arguments shown above are merely some common ones. The full function " @@ -1929,7 +1963,7 @@ msgstr "" "Cependant, passer explicitement ``input=None`` pour hériter du descripteur " "d'entrée standard du parent n'est pas géré." -#: library/subprocess.rst:1170 +#: library/subprocess.rst:1200 msgid "" "By default, this function will return the data as encoded bytes. The actual " "encoding of the output data may depend on the command being invoked, so the " @@ -1940,7 +1974,7 @@ msgstr "" "invoquée, donc le décodage du texte devra souvent être géré au niveau de " "l'application." -#: library/subprocess.rst:1174 +#: library/subprocess.rst:1204 msgid "" "This behaviour may be overridden by setting *text*, *encoding*, *errors*, or " "*universal_newlines* to ``True`` as described in :ref:`frequently-used-" @@ -1950,7 +1984,7 @@ msgstr "" "ou *universal_newlines* à ``True`` comme décrit dans :ref:`frequently-used-" "arguments` et :func:`run`." -#: library/subprocess.rst:1178 +#: library/subprocess.rst:1208 msgid "" "To also capture standard error in the result, use ``stderr=subprocess." "STDOUT``::" @@ -1958,21 +1992,21 @@ msgstr "" "Pour capturer aussi la sortie d'erreur dans le résultat, utilisez " "``stderr=subprocess.STDOUT`` ::" -#: library/subprocess.rst:1192 +#: library/subprocess.rst:1222 msgid "Support for the *input* keyword argument was added." msgstr "Ajout de la gestion de l'argument nommé *input*." -#: library/subprocess.rst:1195 +#: library/subprocess.rst:1225 msgid "*encoding* and *errors* were added. See :func:`run` for details." msgstr "" "Ajout d'*encoding* et *errors*. Consultez :func:`run` pour plus " "d'informations." -#: library/subprocess.rst:1205 +#: library/subprocess.rst:1235 msgid "Replacing Older Functions with the :mod:`subprocess` Module" msgstr "Remplacer les fonctions plus anciennes par le module :mod:`subprocess`" -#: library/subprocess.rst:1207 +#: library/subprocess.rst:1237 msgid "" "In this section, \"a becomes b\" means that b can be used as a replacement " "for a." @@ -1980,7 +2014,7 @@ msgstr "" "Dans cette section, « a devient b » signifie que b peut être utilisée en " "remplacement de a." -#: library/subprocess.rst:1211 +#: library/subprocess.rst:1241 msgid "" "All \"a\" functions in this section fail (more or less) silently if the " "executed program cannot be found; the \"b\" replacements raise :exc:" @@ -1990,7 +2024,7 @@ msgstr "" "silencieusement si le programme à exécuter ne peut être trouvé ; les " "fonctions « b » de remplacement lèvent à la place une :exc:`OSError`." -#: library/subprocess.rst:1215 +#: library/subprocess.rst:1245 msgid "" "In addition, the replacements using :func:`check_output` will fail with a :" "exc:`CalledProcessError` if the requested operation produces a non-zero " @@ -2002,7 +2036,7 @@ msgstr "" "retour non-nul. La sortie est toujours disponible par l'attribut :attr:" "`~CalledProcessError.output` de l'exception levée." -#: library/subprocess.rst:1220 +#: library/subprocess.rst:1250 msgid "" "In the following examples, we assume that the relevant functions have " "already been imported from the :mod:`subprocess` module." @@ -2010,20 +2044,20 @@ msgstr "" "Dans les exemples suivants, nous supposons que les fonctions utilisées ont " "déjà été importées depuis le module :mod:`subprocess`." -#: library/subprocess.rst:1225 +#: library/subprocess.rst:1255 msgid "Replacing :program:`/bin/sh` shell command substitution" msgstr "" "Remplacement de la substitution de commandes de terminal :program:`/bin/sh`" -#: library/subprocess.rst:1242 library/subprocess.rst:1259 +#: library/subprocess.rst:1272 library/subprocess.rst:1289 msgid "becomes::" msgstr "devient ::" -#: library/subprocess.rst:1236 +#: library/subprocess.rst:1266 msgid "Replacing shell pipeline" msgstr "Remplacer les *pipes* du *shell*" -#: library/subprocess.rst:1249 +#: library/subprocess.rst:1279 msgid "" "The ``p1.stdout.close()`` call after starting the p2 is important in order " "for p1 to receive a SIGPIPE if p2 exits before p1." @@ -2031,7 +2065,7 @@ msgstr "" "L'appel à ``p1.stdout.close()`` après le démarrage de *p2* est important " "pour que *p1* reçoive un *SIGPIPE* si *p2* se termine avant lui." -#: library/subprocess.rst:1252 +#: library/subprocess.rst:1282 msgid "" "Alternatively, for trusted input, the shell's own pipeline support may still " "be used directly:" @@ -2039,69 +2073,69 @@ msgstr "" "Alternativement, pour des entrées fiables, la gestion des tubes du *shell* " "peut directement être utilisé :" -#: library/subprocess.rst:1265 +#: library/subprocess.rst:1295 msgid "Replacing :func:`os.system`" msgstr "Remplacer :func:`os.system`" -#: library/subprocess.rst:1273 +#: library/subprocess.rst:1303 msgid "Notes:" msgstr "Notes :" -#: library/subprocess.rst:1275 +#: library/subprocess.rst:1305 msgid "Calling the program through the shell is usually not required." msgstr "" "Appeler le programme à travers un *shell* n'est habituellement pas requis." -#: library/subprocess.rst:1276 +#: library/subprocess.rst:1306 msgid "" "The :func:`call` return value is encoded differently to that of :func:`os." "system`." msgstr "" -#: library/subprocess.rst:1279 +#: library/subprocess.rst:1309 msgid "" "The :func:`os.system` function ignores SIGINT and SIGQUIT signals while the " "command is running, but the caller must do this separately when using the :" "mod:`subprocess` module." msgstr "" -#: library/subprocess.rst:1283 +#: library/subprocess.rst:1313 msgid "A more realistic example would look like this::" msgstr "Un exemple plus réaliste ressemblerait à cela ::" -#: library/subprocess.rst:1296 +#: library/subprocess.rst:1326 msgid "Replacing the :func:`os.spawn ` family" msgstr "Remplacer les fonctions de la famille :func:`os.spawn `" -#: library/subprocess.rst:1298 +#: library/subprocess.rst:1328 msgid "P_NOWAIT example::" msgstr "Exemple avec *P_NOWAIT* ::" -#: library/subprocess.rst:1304 +#: library/subprocess.rst:1334 msgid "P_WAIT example::" msgstr "Exemple avec *P_WAIT* ::" -#: library/subprocess.rst:1310 +#: library/subprocess.rst:1340 msgid "Vector example::" msgstr "Exemple avec un tableau ::" -#: library/subprocess.rst:1316 +#: library/subprocess.rst:1346 msgid "Environment example::" msgstr "Exemple en passant un environnement ::" -#: library/subprocess.rst:1325 +#: library/subprocess.rst:1355 msgid "Replacing :func:`os.popen`, :func:`os.popen2`, :func:`os.popen3`" msgstr "Remplacer :func:`os.popen`, :func:`os.popen2`, :func:`os.popen3`" -#: library/subprocess.rst:1355 +#: library/subprocess.rst:1385 msgid "Return code handling translates as follows::" msgstr "La gestion du code de retour se traduit comme suit ::" -#: library/subprocess.rst:1371 +#: library/subprocess.rst:1401 msgid "Replacing functions from the :mod:`popen2` module" msgstr "Remplacer les fonctions du module :mod:`popen2`" -#: library/subprocess.rst:1375 +#: library/subprocess.rst:1405 msgid "" "If the cmd argument to popen2 functions is a string, the command is executed " "through /bin/sh. If it is a list, the command is directly executed." @@ -2110,7 +2144,7 @@ msgstr "" "la commande est exécutée à travers */bin/sh*. Si c'est une liste, la " "commande est directement exécutée." -#: library/subprocess.rst:1394 +#: library/subprocess.rst:1424 msgid "" ":class:`popen2.Popen3` and :class:`popen2.Popen4` basically work as :class:" "`subprocess.Popen`, except that:" @@ -2118,19 +2152,19 @@ msgstr "" ":class:`popen2.Popen3` et :class:`popen2.Popen4` fonctionnent basiquement " "comme :class:`subprocess.Popen`, excepté que :" -#: library/subprocess.rst:1397 +#: library/subprocess.rst:1427 msgid ":class:`Popen` raises an exception if the execution fails." msgstr ":class:`Popen` lève une exception si l'exécution échoue." -#: library/subprocess.rst:1399 +#: library/subprocess.rst:1429 msgid "The *capturestderr* argument is replaced with the *stderr* argument." msgstr "L'argument *capturestderr* est remplacé par *stderr*." -#: library/subprocess.rst:1401 +#: library/subprocess.rst:1431 msgid "``stdin=PIPE`` and ``stdout=PIPE`` must be specified." msgstr "``stdin=PIPE`` et ``stdout=PIPE`` doivent être spécifiés." -#: library/subprocess.rst:1403 +#: library/subprocess.rst:1433 msgid "" "popen2 closes all file descriptors by default, but you have to specify " "``close_fds=True`` with :class:`Popen` to guarantee this behavior on all " @@ -2140,11 +2174,11 @@ msgstr "" "spécifier ``close_fds=True`` avec :class:`Popen` pour garantir ce " "comportement sur toutes les plateformes ou les anciennes versions de Python." -#: library/subprocess.rst:1409 +#: library/subprocess.rst:1439 msgid "Legacy Shell Invocation Functions" msgstr "Remplacement des fonctions originales d'invocation du *shell*" -#: library/subprocess.rst:1411 +#: library/subprocess.rst:1441 msgid "" "This module also provides the following legacy functions from the 2.x " "``commands`` module. These operations implicitly invoke the system shell and " @@ -2156,13 +2190,13 @@ msgstr "" "*shell* du système et n'apportent aucune des garanties décrites ci-dessus " "par rapport à la sécurité ou la cohérence de la gestion des exceptions." -#: library/subprocess.rst:1418 +#: library/subprocess.rst:1448 msgid "Return ``(exitcode, output)`` of executing *cmd* in a shell." msgstr "" "Renvoie les valeurs ``(exitcode, output)`` de l'exécution de *cmd* dans un " "*shell*." -#: library/subprocess.rst:1420 +#: library/subprocess.rst:1450 msgid "" "Execute the string *cmd* in a shell with :meth:`Popen.check_output` and " "return a 2-tuple ``(exitcode, output)``. The locale encoding is used; see " @@ -2173,7 +2207,7 @@ msgstr "" "les notes de la section :ref:`frequently-used-arguments` pour plus de " "détails." -#: library/subprocess.rst:1424 +#: library/subprocess.rst:1454 msgid "" "A trailing newline is stripped from the output. The exit code for the " "command can be interpreted as the return code of subprocess. Example::" @@ -2182,15 +2216,15 @@ msgstr "" "supprimé. Le code de statut de la commande peut être interprété comme le " "code de retour de *subprocess*. Par exemple ::" -#: library/subprocess.rst:1458 +#: library/subprocess.rst:1488 msgid ":ref:`Availability `: POSIX & Windows." msgstr ":ref:`Disponibilité ` : POSIX et Windows." -#: library/subprocess.rst:1439 +#: library/subprocess.rst:1469 msgid "Windows support was added." msgstr "Ajout de la gestion de Windows." -#: library/subprocess.rst:1442 +#: library/subprocess.rst:1472 msgid "" "The function now returns (exitcode, output) instead of (status, output) as " "it did in Python 3.3.3 and earlier. exitcode has the same value as :attr:" @@ -2200,13 +2234,13 @@ msgstr "" "output)`` comme dans les versions de Python 3.3.3 ou antérieures. " "*exitcode* vaut la même valeur que :attr:`~Popen.returncode`." -#: library/subprocess.rst:1449 +#: library/subprocess.rst:1479 msgid "Return output (stdout and stderr) of executing *cmd* in a shell." msgstr "" "Renvoie la sortie (standard et d'erreur) de l'exécution de *cmd* dans un " "*shell*." -#: library/subprocess.rst:1451 +#: library/subprocess.rst:1481 msgid "" "Like :func:`getstatusoutput`, except the exit code is ignored and the return " "value is a string containing the command's output. Example::" @@ -2215,20 +2249,20 @@ msgstr "" "ignoré et que la valeur de retour est une chaîne contenant la sortie de la " "commande. Exemple ::" -#: library/subprocess.rst:1459 +#: library/subprocess.rst:1489 msgid "Windows support added" msgstr "Ajout de la gestion de Windows" -#: library/subprocess.rst:1464 +#: library/subprocess.rst:1494 msgid "Notes" msgstr "Notes" -#: library/subprocess.rst:1469 +#: library/subprocess.rst:1499 msgid "Converting an argument sequence to a string on Windows" msgstr "" "Convertir une séquence d'arguments vers une chaîne de caractères sous Windows" -#: library/subprocess.rst:1471 +#: library/subprocess.rst:1501 msgid "" "On Windows, an *args* sequence is converted to a string that can be parsed " "using the following rules (which correspond to the rules used by the MS C " @@ -2238,14 +2272,14 @@ msgstr "" "être analysée avec les règles suivantes (qui correspondent aux règles " "utilisées par l'environnement *MS C*) :" -#: library/subprocess.rst:1475 +#: library/subprocess.rst:1505 msgid "" "Arguments are delimited by white space, which is either a space or a tab." msgstr "" "Les arguments sont délimités par des espacements, qui peuvent être des " "espaces ou des tabulations." -#: library/subprocess.rst:1478 +#: library/subprocess.rst:1508 msgid "" "A string surrounded by double quotation marks is interpreted as a single " "argument, regardless of white space contained within. A quoted string can " @@ -2255,7 +2289,7 @@ msgstr "" "seul, qu'elle contienne ou non des espacements. Une chaîne entre guillemets " "peut être intégrée dans un argument." -#: library/subprocess.rst:1483 +#: library/subprocess.rst:1513 msgid "" "A double quotation mark preceded by a backslash is interpreted as a literal " "double quotation mark." @@ -2263,7 +2297,7 @@ msgstr "" "Un guillemet double précédé d'un *backslash* est interprété comme un " "guillemet double littéral." -#: library/subprocess.rst:1486 +#: library/subprocess.rst:1516 msgid "" "Backslashes are interpreted literally, unless they immediately precede a " "double quotation mark." @@ -2271,7 +2305,7 @@ msgstr "" "Les *backslashs* sont interprétés littéralement, à moins qu'ils précèdent " "immédiatement un guillemet double." -#: library/subprocess.rst:1489 +#: library/subprocess.rst:1519 msgid "" "If backslashes immediately precede a double quotation mark, every pair of " "backslashes is interpreted as a literal backslash. If the number of " @@ -2283,12 +2317,30 @@ msgstr "" "de *backslashs* est impair, le dernier *backslash* échappe le prochain " "guillemet double comme décrit en règle 3." -#: library/subprocess.rst:1498 +#: library/subprocess.rst:1528 msgid ":mod:`shlex`" msgstr ":mod:`shlex`" -#: library/subprocess.rst:1499 +#: library/subprocess.rst:1529 msgid "Module which provides function to parse and escape command lines." msgstr "" "Module qui fournit des fonctions pour analyser et échapper les lignes de " "commandes." + +#~ msgid "" +#~ "The most common exception raised is :exc:`OSError`. This occurs, for " +#~ "example, when trying to execute a non-existent file. Applications should " +#~ "prepare for :exc:`OSError` exceptions." +#~ msgstr "" +#~ "L'exception la plus communément levée est :exc:`OSError`. Elle survient, " +#~ "par exemple, si vous essayez d'exécuter un fichier inexistant. Les " +#~ "applications doivent se préparer à traiter des exceptions :exc:`OSError`." + +#~ msgid "" +#~ "When using ``shell=True``, the :func:`shlex.quote` function can be used " +#~ "to properly escape whitespace and shell metacharacters in strings that " +#~ "are going to be used to construct shell commands." +#~ msgstr "" +#~ "Avec ``shell=True``, la fonction :func:`shlex.quote` peut être utilisée " +#~ "pour échapper proprement les espaces et métacaractères dans les chaînes " +#~ "qui seront utilisées pour construire les commandes *shell*." diff --git a/library/sys.po b/library/sys.po index 3f9389702..1f8032dae 100644 --- a/library/sys.po +++ b/library/sys.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-06-04 15:09+0200\n" "Last-Translator: louisMaury \n" "Language-Team: FRENCH \n" @@ -140,7 +140,11 @@ msgstr "" "Pour boucler sur l'entrée standard, ou la liste des fichiers donnés sur la " "ligne de commande, utilisez le module :mod:`fileinput`." -#: library/sys.rst:76 +#: library/sys.rst:75 +msgid "See also :data:`sys.orig_argv`." +msgstr "" + +#: library/sys.rst:78 msgid "" "On Unix, command line arguments are passed by bytes from OS. Python decodes " "them with filesystem encoding and \"surrogateescape\" error handler. When " @@ -153,7 +157,7 @@ msgstr "" "vous avez besoin des octets originaux, vous pouvez les récupérer avec ``[os." "fsencode(arg) for arg in sys.argv]``." -#: library/sys.rst:88 +#: library/sys.rst:90 #, fuzzy msgid "" "Raise an auditing event and trigger any active auditing hooks. *event* is a " @@ -168,13 +172,13 @@ msgstr "" "événement donné, le prototype est considéré comme une API publique et stable " "et ne doit pas être modifié entre les différentes versions de Python." -#: library/sys.rst:94 +#: library/sys.rst:96 msgid "" "For example, one auditing event is named ``os.chdir``. This event has one " "argument called *path* that will contain the requested new working directory." msgstr "" -#: library/sys.rst:98 +#: library/sys.rst:100 msgid "" ":func:`sys.audit` will call the existing auditing hooks, passing the event " "name and arguments, and will re-raise the first exception from any hook. In " @@ -184,25 +188,25 @@ msgid "" "merely log the event or abort the operation by raising an exception." msgstr "" -#: library/sys.rst:106 +#: library/sys.rst:108 msgid "" "Hooks are added using the :func:`sys.addaudithook` or :c:func:" "`PySys_AddAuditHook` functions." msgstr "" -#: library/sys.rst:109 +#: library/sys.rst:111 msgid "" "The native equivalent of this function is :c:func:`PySys_Audit`. Using the " "native function is preferred when possible." msgstr "" -#: library/sys.rst:112 +#: library/sys.rst:114 msgid "" "See the :ref:`audit events table ` for all events raised by " "CPython." msgstr "" -#: library/sys.rst:120 +#: library/sys.rst:122 #, fuzzy msgid "" "Set during Python startup, before ``site.py`` is run, to the same value as :" @@ -222,7 +226,7 @@ msgstr "" "à la racine de l'installation de Python (celui utilisé pour créer " "l'environnement virtuel)." -#: library/sys.rst:134 +#: library/sys.rst:136 msgid "" "Set during Python startup, before ``site.py`` is run, to the same value as :" "data:`prefix`. If not running in a :ref:`virtual environment `, " @@ -241,7 +245,7 @@ msgstr "" "à la racine de l'installation de Python (celui utilisé pour créer " "l'environnement virtuel)." -#: library/sys.rst:147 +#: library/sys.rst:149 msgid "" "An indicator of the native byte order. This will have the value ``'big'`` " "on big-endian (most-significant byte first) platforms, and ``'little'`` on " @@ -252,18 +256,23 @@ msgstr "" "``'little'`` sur les plateformes petit-boutiste (octet le moins significatif " "en premier)." -#: library/sys.rst:154 +#: library/sys.rst:156 +#, fuzzy msgid "" -"A tuple of strings giving the names of all modules that are compiled into " -"this Python interpreter. (This information is not available in any other " -"way --- ``modules.keys()`` only lists the imported modules.)" +"A tuple of strings containing the names of all modules that are compiled " +"into this Python interpreter. (This information is not available in any " +"other way --- ``modules.keys()`` only lists the imported modules.)" msgstr "" "Un *n*-uplet de chaînes de caractères donnant les noms de tous les modules " "compilés dans l'interpréteur Python. (Cette information n'est pas " "disponible autrement --- ```modules.keys()`` liste seulement les modules " "importés.)" -#: library/sys.rst:161 +#: library/sys.rst:160 +msgid "See also the :attr:`sys.stdlib_module_names` list." +msgstr "" + +#: library/sys.rst:165 msgid "" "Call ``func(*args)``, while tracing is enabled. The tracing state is saved, " "and restored afterwards. This is intended to be called from a debugger from " @@ -274,11 +283,11 @@ msgstr "" "un débogueur à partir d'un point de contrôle, pour déboguer récursivement un " "autre code." -#: library/sys.rst:168 +#: library/sys.rst:172 msgid "A string containing the copyright pertaining to the Python interpreter." msgstr "Une chaîne contenant le copyright relatif à l'interpréteur Python." -#: library/sys.rst:173 +#: library/sys.rst:177 msgid "" "Clear the internal type cache. The type cache is used to speed up attribute " "and method lookups. Use the function *only* to drop unnecessary references " @@ -289,14 +298,14 @@ msgstr "" "pour libérer des références inutiles durant le débogage de fuite de " "référence." -#: library/sys.rst:193 +#: library/sys.rst:197 library/sys.rst:210 msgid "" "This function should be used for internal and specialized purposes only." msgstr "" "Cette fonction ne devrait être utilisée que pour un usage interne et " "spécialisé." -#: library/sys.rst:182 +#: library/sys.rst:186 msgid "" "Return a dictionary mapping each thread's identifier to the topmost stack " "frame currently active in that thread at the time the function is called. " @@ -308,7 +317,7 @@ msgstr "" "au moment où la fonction est appelée. Notez que les fonctions du module :mod:" "`traceback` peuvent construire une *call stack* à partir d'une telle *frame*." -#: library/sys.rst:187 +#: library/sys.rst:191 msgid "" "This is most useful for debugging deadlock: this function does not require " "the deadlocked threads' cooperation, and such threads' call stacks are " @@ -323,13 +332,36 @@ msgstr "" "l'activité courante du fil d'exécution au moment où le code appelant examine " "la *frame*." -#: library/sys.rst:195 +#: library/sys.rst:199 msgid "" "Raises an :ref:`auditing event ` ``sys._current_frames`` with no " "arguments." msgstr "" -#: library/sys.rst:200 +#: library/sys.rst:203 +#, fuzzy +msgid "" +"Return a dictionary mapping each thread's identifier to the topmost " +"exception currently active in that thread at the time the function is " +"called. If a thread is not currently handling an exception, it is not " +"included in the result dictionary." +msgstr "" +"Renvoie un dictionnaire faisant correspondre chaque identifiant de fil " +"d'exécution à la *stack frame* actuellement active pour ces fils d'exécution " +"au moment où la fonction est appelée. Notez que les fonctions du module :mod:" +"`traceback` peuvent construire une *call stack* à partir d'une telle *frame*." + +#: library/sys.rst:208 +msgid "This is most useful for statistical profiling." +msgstr "" + +#: library/sys.rst:212 +msgid "" +"Raises an :ref:`auditing event ` ``sys._current_exceptions`` with " +"no arguments." +msgstr "" + +#: library/sys.rst:216 msgid "" "This hook function is called by built-in :func:`breakpoint`. By default, it " "drops you into the :mod:`pdb` debugger, but it can be set to any other " @@ -340,7 +372,7 @@ msgstr "" "débogueur :mod:`pdb`, mais elle peut être dirigée vers n'importe quelle " "autre fonction pour que vous puissiez choisir le débogueur utilisé." -#: library/sys.rst:204 +#: library/sys.rst:220 msgid "" "The signature of this function is dependent on what it calls. For example, " "the default binding (e.g. ``pdb.set_trace()``) expects no arguments, but you " @@ -356,7 +388,7 @@ msgstr "" "`breakpoint()` passe ses ``*args`` et ``**kws`` directement au travers. Tout " "ce que renvoie ``breakpointhooks()`` est renvoyé par ``breakpoint()``." -#: library/sys.rst:211 +#: library/sys.rst:227 msgid "" "The default implementation first consults the environment variable :envvar:" "`PYTHONBREAKPOINT`. If that is set to ``\"0\"`` then this function returns " @@ -381,7 +413,7 @@ msgstr "" "quoique renvoie ``function()``, ``sys.breakpointhook()`` retourne à la " "fonction native :func:`breakpoint`." -#: library/sys.rst:223 +#: library/sys.rst:239 msgid "" "Note that if anything goes wrong while importing the callable named by :" "envvar:`PYTHONBREAKPOINT`, a :exc:`RuntimeWarning` is reported and the " @@ -391,7 +423,7 @@ msgstr "" "nommée dans :envvar:`PYTHONBREAKPOINT`, une alerte :exc:`RuntimeWarning` est " "indiquée et le point d'arrêt est ignoré." -#: library/sys.rst:227 +#: library/sys.rst:243 msgid "" "Also note that if ``sys.breakpointhook()`` is overridden programmatically, :" "envvar:`PYTHONBREAKPOINT` is *not* consulted." @@ -399,7 +431,7 @@ msgstr "" "Notez également que si ``sys.breakpointhook()`` est surchargé de manière " "programmatique, :envvar:`PYTHONBREAKPOINT` *n'est pas* consulté." -#: library/sys.rst:234 +#: library/sys.rst:250 msgid "" "Print low-level information to stderr about the state of CPython's memory " "allocator." @@ -407,15 +439,17 @@ msgstr "" "Affiche des informations bas-niveau sur la sortie d'erreur à propos de " "l'état de l'allocateur de mémoire de CPython." -#: library/sys.rst:237 +#: library/sys.rst:253 +#, fuzzy msgid "" -"If Python is configured --with-pydebug, it also performs some expensive " -"internal consistency checks." +"If Python is `built in debug mode ` (:option:`configure --with-" +"pydebug option <--with-pydebug>`), it also performs some expensive internal " +"consistency checks." msgstr "" "Si Python est configuré avec l'option *--with-pydebug*, il effectuera aussi " "quelques coûteuses vérifications de cohérence interne." -#: library/sys.rst:244 +#: library/sys.rst:261 msgid "" "This function is specific to CPython. The exact output format is not " "defined here, and may change." @@ -423,15 +457,15 @@ msgstr "" "Cette fonction est spécifique à CPython. Le format de sa sortie n'est pas " "définit ici et pourrait changer." -#: library/sys.rst:250 +#: library/sys.rst:267 msgid "Integer specifying the handle of the Python DLL." msgstr "Nombre entier spécifiant le descripteur de la DLL Python." -#: library/sys.rst:791 library/sys.rst:1666 +#: library/sys.rst:810 library/sys.rst:1717 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: library/sys.rst:257 +#: library/sys.rst:274 msgid "" "If *value* is not ``None``, this function prints ``repr(value)`` to ``sys." "stdout``, and saves *value* in ``builtins._``. If ``repr(value)`` is not " @@ -446,7 +480,7 @@ msgstr "" "probablement ``'strict'``), elle sera encodée avec ``sys.stdout.encoding`` " "en utilisant le gestionnaire d'erreur ``'backslashreplace'``." -#: library/sys.rst:263 +#: library/sys.rst:280 msgid "" "``sys.displayhook`` is called on the result of evaluating an :term:" "`expression` entered in an interactive Python session. The display of these " @@ -458,17 +492,17 @@ msgstr "" "valeurs peut être personnalisé en assignant une autre fonction d'un argument " "à ``sys.displayhook``." -#: library/sys.rst:267 +#: library/sys.rst:284 msgid "Pseudo-code::" msgstr "Pseudo-code ::" -#: library/sys.rst:287 +#: library/sys.rst:304 msgid "Use ``'backslashreplace'`` error handler on :exc:`UnicodeEncodeError`." msgstr "" "Utiliser le gestionnaire d'erreur ``'backslashreplace'`` en cas d':exc:" "`UnicodeEncodeError`." -#: library/sys.rst:293 +#: library/sys.rst:310 msgid "" "If this is true, Python won't try to write ``.pyc`` files on the import of " "source modules. This value is initially set to ``True`` or ``False`` " @@ -483,7 +517,7 @@ msgstr "" "pouvez aussi la modifier vous-même pour contrôler la génération des fichiers " "de *bytecode*." -#: library/sys.rst:302 +#: library/sys.rst:319 msgid "" "If this is set (not ``None``), Python will write bytecode-cache ``.pyc`` " "files to (and read them from) a parallel directory tree rooted at this " @@ -494,12 +528,12 @@ msgid "" "the same pycache prefix (if any) that you will use at runtime." msgstr "" -#: library/sys.rst:310 +#: library/sys.rst:327 msgid "" "A relative path is interpreted relative to the current working directory." msgstr "" -#: library/sys.rst:312 +#: library/sys.rst:329 msgid "" "This value is initially set based on the value of the :option:`-X` " "``pycache_prefix=PATH`` command-line option or the :envvar:" @@ -507,14 +541,14 @@ msgid "" "If neither are set, it is ``None``." msgstr "" -#: library/sys.rst:322 +#: library/sys.rst:339 msgid "" "This function prints out a given traceback and exception to ``sys.stderr``." msgstr "" "Cette fonction affiche la *traceback* et l'exception donnée sur ``sys." "stderr``." -#: library/sys.rst:324 +#: library/sys.rst:341 msgid "" "When an exception is raised and uncaught, the interpreter calls ``sys." "excepthook`` with three arguments, the exception class, exception instance, " @@ -532,13 +566,13 @@ msgstr "" "quitte. La gestion de ces exceptions peut être personnalisé en affectant une " "autre fonction de trois arguments à ``sys.excepthook``." -#: library/sys.rst:331 +#: library/sys.rst:348 msgid "" "Raises an :ref:`auditing event ` ``sys.excepthook`` with arguments " "``hook``, ``type``, ``value``, ``traceback``." msgstr "" -#: library/sys.rst:333 +#: library/sys.rst:350 msgid "" "Raise an auditing event ``sys.excepthook`` with arguments ``hook``, " "``type``, ``value``, ``traceback`` when an uncaught exception occurs. If no " @@ -548,14 +582,14 @@ msgid "" "excepthook`` will be called." msgstr "" -#: library/sys.rst:342 +#: library/sys.rst:359 msgid "" "The :func:`sys.unraisablehook` function handles unraisable exceptions and " "the :func:`threading.excepthook` function handles exception raised by :func:" "`threading.Thread.run`." msgstr "" -#: library/sys.rst:352 +#: library/sys.rst:369 msgid "" "These objects contain the original values of ``breakpointhook``, " "``displayhook``, ``excepthook``, and ``unraisablehook`` at the start of the " @@ -569,15 +603,15 @@ msgstr "" "``excepthook`` et ``unraisablehook`` puissent être restaurés au cas où ils " "seraient remplacés par des objets cassés ou alternatifs." -#: library/sys.rst:358 +#: library/sys.rst:375 msgid "__breakpointhook__" msgstr "``__breakpointhook__``" -#: library/sys.rst:361 +#: library/sys.rst:378 msgid "__unraisablehook__" msgstr "``__unraisablehook__``" -#: library/sys.rst:366 +#: library/sys.rst:383 msgid "" "This function returns a tuple of three values that give information about " "the exception that is currently being handled. The information returned is " @@ -597,7 +631,7 @@ msgstr "" "signifie \"exécute une clause *except*\". Pour chaque *stack frame*, seule " "l'information à propos d'une exception actuellement traitée est accessible." -#: library/sys.rst:377 +#: library/sys.rst:394 msgid "" "If no exception is being handled anywhere on the stack, a tuple containing " "three ``None`` values is returned. Otherwise, the values returned are " @@ -616,7 +650,7 @@ msgstr "" "encapsule la pile d'appels au point où l'exception s'est produite à " "l'origine." -#: library/sys.rst:388 +#: library/sys.rst:405 msgid "" "A string giving the site-specific directory prefix where the platform-" "dependent Python files are installed; by default, this is also ``'/usr/" @@ -637,7 +671,7 @@ msgstr "" "python{X.Y}/lib-dynload`, où *X.Y* est le numéro de version de Python, par " "exemple ``3.2``." -#: library/sys.rst:399 +#: library/sys.rst:416 msgid "" "If a :ref:`virtual environment ` is in effect, this value will be " "changed in ``site.py`` to point to the virtual environment. The value for " @@ -648,7 +682,7 @@ msgstr "" "modifiée par ``site.py`` pour pointer vers l'environnement virtuel. La " "valeur d'origine sera toujours disponible via :data:`base_exec_prefix`." -#: library/sys.rst:407 +#: library/sys.rst:424 msgid "" "A string giving the absolute path of the executable binary for the Python " "interpreter, on systems where this makes sense. If Python is unable to " @@ -660,7 +694,7 @@ msgstr "" "n'est pas capable de récupérer le chemin réel de son exécutable, :data:`sys." "executable` sera une chaîne vide ou ``None``." -#: library/sys.rst:415 +#: library/sys.rst:432 msgid "" "Exit from Python. This is implemented by raising the :exc:`SystemExit` " "exception, so cleanup actions specified by finally clauses of :keyword:`try` " @@ -673,7 +707,7 @@ msgstr "" "est aussi possible d'intercepter la tentative de sortie à un niveau au " "dessus." -#: library/sys.rst:420 +#: library/sys.rst:437 msgid "" "The optional argument *arg* can be an integer giving the exit status " "(defaulting to zero), or another type of object. If it is an integer, zero " @@ -702,7 +736,7 @@ msgstr "" "1. Typiquement, ``sys.exit(\"some error message\")`` est un moyen rapide de " "quitter un programme en cas d'erreur." -#: library/sys.rst:433 +#: library/sys.rst:450 msgid "" "Since :func:`exit` ultimately \"only\" raises an exception, it will only " "exit the process when called from the main thread, and the exception is not " @@ -712,7 +746,7 @@ msgstr "" "ne fera quitter le processus que si elle est appelée depuis le fil " "d'exécution principal, et que l'exception n'est pas interceptée." -#: library/sys.rst:437 +#: library/sys.rst:454 msgid "" "If an error occurs in the cleanup after the Python interpreter has caught :" "exc:`SystemExit` (such as an error flushing buffered data in the standard " @@ -722,7 +756,7 @@ msgstr "" "intercepté un :exc:`SystemExit` (typiquement une erreur en vidant les " "tampons des sorties standard), le code de sortie est changé à 120." -#: library/sys.rst:445 +#: library/sys.rst:462 msgid "" "The :term:`named tuple` *flags* exposes the status of command line flags. " "The attributes are read only." @@ -730,149 +764,149 @@ msgstr "" "La :term:`named tuple` *flags* expose l'état des options de ligne de " "commande. Ces attributs sont en lecture seule." -#: library/sys.rst:498 library/sys.rst:836 +#: library/sys.rst:515 library/sys.rst:855 msgid "attribute" msgstr "attribut" -#: library/sys.rst:449 +#: library/sys.rst:466 msgid "flag" msgstr "option" -#: library/sys.rst:451 +#: library/sys.rst:468 msgid ":const:`debug`" msgstr ":const:`debug`" -#: library/sys.rst:451 +#: library/sys.rst:468 msgid ":option:`-d`" msgstr ":option:`-d`" -#: library/sys.rst:452 +#: library/sys.rst:469 msgid ":const:`inspect`" msgstr ":const:`inspect`" -#: library/sys.rst:453 +#: library/sys.rst:470 msgid ":option:`-i`" msgstr ":option:`-i`" -#: library/sys.rst:453 +#: library/sys.rst:470 msgid ":const:`interactive`" msgstr ":const:`interactive`" -#: library/sys.rst:454 +#: library/sys.rst:471 msgid ":const:`isolated`" msgstr ":const:`isolated`" -#: library/sys.rst:454 +#: library/sys.rst:471 msgid ":option:`-I`" msgstr ":option:`-I`" -#: library/sys.rst:455 +#: library/sys.rst:472 msgid ":const:`optimize`" msgstr ":const:`optimize`" -#: library/sys.rst:455 +#: library/sys.rst:472 msgid ":option:`-O` or :option:`-OO`" msgstr ":option:`-O` or :option:`-OO`" -#: library/sys.rst:456 +#: library/sys.rst:473 msgid ":const:`dont_write_bytecode`" msgstr ":const:`dont_write_bytecode`" -#: library/sys.rst:456 +#: library/sys.rst:473 msgid ":option:`-B`" msgstr ":option:`-B`" -#: library/sys.rst:457 +#: library/sys.rst:474 msgid ":const:`no_user_site`" msgstr ":const:`no_user_site`" -#: library/sys.rst:457 +#: library/sys.rst:474 msgid ":option:`-s`" msgstr ":option:`-s`" -#: library/sys.rst:458 +#: library/sys.rst:475 msgid ":const:`no_site`" msgstr ":const:`no_site`" -#: library/sys.rst:458 +#: library/sys.rst:475 msgid ":option:`-S`" msgstr ":option:`-S`" -#: library/sys.rst:459 +#: library/sys.rst:476 msgid ":const:`ignore_environment`" msgstr ":const:`ignore_environment`" -#: library/sys.rst:459 +#: library/sys.rst:476 msgid ":option:`-E`" msgstr ":option:`-E`" -#: library/sys.rst:460 +#: library/sys.rst:477 msgid ":const:`verbose`" msgstr ":const:`verbose`" -#: library/sys.rst:460 +#: library/sys.rst:477 msgid ":option:`-v`" msgstr ":option:`-v`" -#: library/sys.rst:461 +#: library/sys.rst:478 msgid ":const:`bytes_warning`" msgstr ":const:`bytes_warning`" -#: library/sys.rst:461 +#: library/sys.rst:478 msgid ":option:`-b`" msgstr ":option:`-b`" -#: library/sys.rst:462 +#: library/sys.rst:479 msgid ":const:`quiet`" msgstr ":const:`quiet`" -#: library/sys.rst:462 +#: library/sys.rst:479 msgid ":option:`-q`" msgstr ":option:`-q`" -#: library/sys.rst:463 +#: library/sys.rst:480 msgid ":const:`hash_randomization`" msgstr ":const:`hash_randomization`" -#: library/sys.rst:463 +#: library/sys.rst:480 msgid ":option:`-R`" msgstr ":option:`-R`" -#: library/sys.rst:464 +#: library/sys.rst:481 msgid ":const:`dev_mode`" msgstr ":const:`dev_mode`" -#: library/sys.rst:464 +#: library/sys.rst:481 msgid ":option:`-X dev <-X>` (:ref:`Python Development Mode `)" msgstr "" -#: library/sys.rst:465 +#: library/sys.rst:482 msgid ":const:`utf8_mode`" msgstr ":const:`utf8_mode`" -#: library/sys.rst:465 +#: library/sys.rst:482 #, fuzzy msgid ":option:`-X utf8 <-X>`" msgstr ":option:`-X` ``utf8``" -#: library/sys.rst:468 +#: library/sys.rst:485 msgid "Added ``quiet`` attribute for the new :option:`-q` flag." msgstr "Ajout de l'attribut ``quiet`` pour la nouvelle option :option:`-q`." -#: library/sys.rst:471 +#: library/sys.rst:488 msgid "The ``hash_randomization`` attribute." msgstr "L'attribut ``hash_randomization``." -#: library/sys.rst:474 +#: library/sys.rst:491 msgid "Removed obsolete ``division_warning`` attribute." msgstr "Suppression de l'attribut obsolète ``division_warning``." -#: library/sys.rst:477 +#: library/sys.rst:494 msgid "Added ``isolated`` attribute for :option:`-I` ``isolated`` flag." msgstr "" "Ajout de l'attribut ``isolated`` pour l'option :option:`-I` ``isolated``." -#: library/sys.rst:480 +#: library/sys.rst:497 #, fuzzy msgid "" "Added the ``dev_mode`` attribute for the new :ref:`Python Development Mode " @@ -883,7 +917,7 @@ msgstr "" "``dev`` et l'attribut ``utf8_mode`` pour la nouvelle option :option:`-X` " "``utf8``." -#: library/sys.rst:488 +#: library/sys.rst:505 msgid "" "A :term:`named tuple` holding information about the float type. It contains " "low level information about the precision and internal representation. The " @@ -900,23 +934,23 @@ msgstr "" "section 5.2.4.2.2 de *1999 ISO/IEC C standard* [C99]_, *Characteristics of " "floating types*, pour plus de détails." -#: library/sys.rst:498 +#: library/sys.rst:515 msgid "float.h macro" msgstr "macro *float.h*" -#: library/sys.rst:836 +#: library/sys.rst:855 msgid "explanation" msgstr "explication" -#: library/sys.rst:500 +#: library/sys.rst:517 msgid ":const:`epsilon`" msgstr ":const:`epsilon`" -#: library/sys.rst:500 +#: library/sys.rst:517 msgid "DBL_EPSILON" msgstr "DBL_EPSILON" -#: library/sys.rst:500 +#: library/sys.rst:517 #, fuzzy msgid "" "difference between 1.0 and the least value greater than 1.0 that is " @@ -925,19 +959,19 @@ msgstr "" "différence entre 1 et la plus petite valeur plus grande que 1 représentable " "en *float*" -#: library/sys.rst:503 +#: library/sys.rst:520 msgid "See also :func:`math.ulp`." msgstr "Voir aussi : :func:`math.ulp`." -#: library/sys.rst:505 +#: library/sys.rst:522 msgid ":const:`dig`" msgstr ":const:`dig`" -#: library/sys.rst:505 +#: library/sys.rst:522 msgid "DBL_DIG" msgstr "DBL_DIG" -#: library/sys.rst:505 +#: library/sys.rst:522 msgid "" "maximum number of decimal digits that can be faithfully represented in a " "float; see below" @@ -945,15 +979,15 @@ msgstr "" "nombre maximum de décimales pouvant être représentées fidèlement dans un " "*float* (voir ci-dessous)" -#: library/sys.rst:508 +#: library/sys.rst:525 msgid ":const:`mant_dig`" msgstr ":const:`mant_dig`" -#: library/sys.rst:508 +#: library/sys.rst:525 msgid "DBL_MANT_DIG" msgstr "DBL_MANT_DIG" -#: library/sys.rst:508 +#: library/sys.rst:525 msgid "" "float precision: the number of base-``radix`` digits in the significand of a " "float" @@ -961,28 +995,28 @@ msgstr "" "précision : nombre de *base-*\\ ``radix`` chiffres dans la mantisse du " "*float*" -#: library/sys.rst:511 +#: library/sys.rst:528 msgid ":const:`max`" msgstr ":const:`max`" -#: library/sys.rst:511 +#: library/sys.rst:528 msgid "DBL_MAX" msgstr "DBL_MAX" -#: library/sys.rst:511 +#: library/sys.rst:528 #, fuzzy msgid "maximum representable positive finite float" msgstr "plus grand `float` fini représentable" -#: library/sys.rst:513 +#: library/sys.rst:530 msgid ":const:`max_exp`" msgstr ":const:`max_exp`" -#: library/sys.rst:513 +#: library/sys.rst:530 msgid "DBL_MAX_EXP" msgstr "DBL_MAX_EXP" -#: library/sys.rst:513 +#: library/sys.rst:530 #, fuzzy msgid "" "maximum integer *e* such that ``radix**(e-1)`` is a representable finite " @@ -991,15 +1025,15 @@ msgstr "" "plus grand nombre entier *e* tel que ``radix**(e-1)`` soit représentable " "sous forme de *float* finit" -#: library/sys.rst:516 +#: library/sys.rst:533 msgid ":const:`max_10_exp`" msgstr ":const:`max_10_exp`" -#: library/sys.rst:516 +#: library/sys.rst:533 msgid "DBL_MAX_10_EXP" msgstr "DBL_MAX_10_EXP" -#: library/sys.rst:516 +#: library/sys.rst:533 #, fuzzy msgid "" "maximum integer *e* such that ``10**e`` is in the range of representable " @@ -1008,75 +1042,75 @@ msgstr "" "plus grand nombre entier *e* tel que ``10**e`` est dans l'intervalle des " "nombre flottants finis" -#: library/sys.rst:519 +#: library/sys.rst:536 msgid ":const:`min`" msgstr ":const:`min`" -#: library/sys.rst:519 +#: library/sys.rst:536 msgid "DBL_MIN" msgstr "DBL_MIN" -#: library/sys.rst:519 +#: library/sys.rst:536 #, fuzzy msgid "minimum representable positive *normalized* float" msgstr "plus petit nombre à virgule flottante positif normalisé" -#: library/sys.rst:521 +#: library/sys.rst:538 msgid "" "Use :func:`math.ulp(0.0) ` to get the smallest positive " "*denormalized* representable float." msgstr "" -#: library/sys.rst:525 +#: library/sys.rst:542 msgid ":const:`min_exp`" msgstr ":const:`min_exp`" -#: library/sys.rst:525 +#: library/sys.rst:542 msgid "DBL_MIN_EXP" msgstr "DBL_MIN_EXP" -#: library/sys.rst:525 +#: library/sys.rst:542 #, fuzzy msgid "minimum integer *e* such that ``radix**(e-1)`` is a normalized float" msgstr "" "plus petit entier *e* tel que ``radix**(e-1)`` est un *float* normalisé" -#: library/sys.rst:528 +#: library/sys.rst:545 msgid ":const:`min_10_exp`" msgstr ":const:`min_10_exp`" -#: library/sys.rst:528 +#: library/sys.rst:545 msgid "DBL_MIN_10_EXP" msgstr "DBL_MIN_10_EXP" -#: library/sys.rst:528 +#: library/sys.rst:545 #, fuzzy msgid "minimum integer *e* such that ``10**e`` is a normalized float" msgstr "" "plus petit nombre entier *e* tel que ``10**e`` est un nombre à virgule " "flottante normalisé" -#: library/sys.rst:531 +#: library/sys.rst:548 msgid ":const:`radix`" msgstr ":const:`radix`" -#: library/sys.rst:531 +#: library/sys.rst:548 msgid "FLT_RADIX" msgstr "FLT_RADIX" -#: library/sys.rst:531 +#: library/sys.rst:548 msgid "radix of exponent representation" msgstr "base de la représentation de l'exposant" -#: library/sys.rst:533 +#: library/sys.rst:550 msgid ":const:`rounds`" msgstr ":const:`rounds`" -#: library/sys.rst:533 +#: library/sys.rst:550 msgid "FLT_ROUNDS" msgstr "FLT_ROUNDS" -#: library/sys.rst:533 +#: library/sys.rst:550 msgid "" "integer constant representing the rounding mode used for arithmetic " "operations. This reflects the value of the system FLT_ROUNDS macro at " @@ -1089,7 +1123,7 @@ msgstr "" "5.2.4.4.2.2 de la norme C99 pour une explication des valeurs possibles et de " "leurs significations." -#: library/sys.rst:541 +#: library/sys.rst:558 msgid "" "The attribute :attr:`sys.float_info.dig` needs further explanation. If " "``s`` is any string representing a decimal number with at most :attr:`sys." @@ -1101,7 +1135,7 @@ msgstr "" "float_info.dig` chiffres significatifs, alors, convertir ``s`` en un nombre " "à virgule flottante puis à nouveau en chaîne redonnera la même valeur ::" -#: library/sys.rst:554 +#: library/sys.rst:571 msgid "" "But for strings with more than :attr:`sys.float_info.dig` significant " "digits, this isn't always true::" @@ -1109,7 +1143,7 @@ msgstr "" "Cependant, pour les chaînes avec plus de :attr:`sys.float_info.dig` chiffres " "significatifs, ce n'est pas toujours vrai ::" -#: library/sys.rst:563 +#: library/sys.rst:580 msgid "" "A string indicating how the :func:`repr` function behaves for floats. If " "the string has value ``'short'`` then for a finite float ``x``, ``repr(x)`` " @@ -1125,7 +1159,7 @@ msgstr "" "Python 3.1. Autrement, ``float_repr_style`` a la valeur ``'legacy'`` et\n" "``repr(x)`` se comporte comme les versions antérieures à 3.1." -#: library/sys.rst:576 +#: library/sys.rst:593 msgid "" "Return the number of memory blocks currently allocated by the interpreter, " "regardless of their size. This function is mainly useful for tracking and " @@ -1141,7 +1175,7 @@ msgstr "" "`_clear_type_cache()` et :func:`gc.collect()` peut permettre d'obtenir des " "résultats plus prévisibles." -#: library/sys.rst:583 +#: library/sys.rst:600 msgid "" "If a Python build or implementation cannot reasonably compute this " "information, :func:`getallocatedblocks()` is allowed to return 0 instead." @@ -1149,17 +1183,17 @@ msgstr "" "Si Python n'arrive pas a calculer raisonnablement cette information, :func:" "`getallocatedblocks()` est autorisé à renvoyer 0 à la place." -#: library/sys.rst:591 +#: library/sys.rst:608 msgid "Return the build time API version of Android as an integer." msgstr "" "Renvoie la version de l'API Android utilisée pour compiler sous forme d'un " "entier." -#: library/sys.rst:594 +#: library/sys.rst:611 msgid ":ref:`Availability `: Android." msgstr ":ref:`Disponibilité ` : Android." -#: library/sys.rst:600 +#: library/sys.rst:617 msgid "" "Return the name of the current default string encoding used by the Unicode " "implementation." @@ -1167,7 +1201,7 @@ msgstr "" "Renvoie le nom du codage par défaut actuellement utilisé par " "l'implémentation *Unicode* pour coder les chaînes." -#: library/sys.rst:606 +#: library/sys.rst:623 msgid "" "Return the current value of the flags that are used for :c:func:`dlopen` " "calls. Symbolic names for the flag values can be found in the :mod:`os` " @@ -1177,17 +1211,30 @@ msgstr "" "`dlopen`. Les noms symboliques valeurs peuvent être trouvées dans le module :" "mod:`os`. (Ce sont les constantes ``RTLD_xxx`` e.g. :data:`os.RTLD_LAZY`)." -#: library/sys.rst:1227 +#: library/sys.rst:1256 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." -#: library/sys.rst:616 +#: library/sys.rst:633 +#, fuzzy +msgid "" +"Get the :term:`filesystem encoding `: " +"the encoding used with the :term:`filesystem error handler ` to convert between Unicode filenames and bytes " +"filenames. The filesystem error handler is returned from :func:" +"`getfilesystemencoding`." +msgstr "" +"Donne le nom du mode de gestion d'erreur utilisé lors de la conversion des " +"noms de fichiers entre Unicode et octets. Le nom de l'encodage est renvoyé " +"par :func:`getfilesystemencoding`." + +#: library/sys.rst:639 +#, fuzzy msgid "" -"Return the name of the encoding used to convert between Unicode filenames " -"and bytes filenames. For best compatibility, str should be used for " -"filenames in all cases, although representing filenames as bytes is also " -"supported. Functions accepting or returning filenames should support either " -"str or bytes and internally convert to the system's preferred representation." +"For best compatibility, str should be used for filenames in all cases, " +"although representing filenames as bytes is also supported. Functions " +"accepting or returning filenames should support either str or bytes and " +"internally convert to the system's preferred representation." msgstr "" "Donne le nom de l'encodage utilisé pour les conversions entre les noms de " "fichiers Unicode et les noms de fichiers en octets. Pour une compatibilité " @@ -1197,11 +1244,7 @@ msgstr "" "fichiers devraient supporter les deux (*str* ou *bytes*), et convertir en " "interne dans la représentation du système." -#: library/sys.rst:623 -msgid "This encoding is always ASCII-compatible." -msgstr "Cet encodage est toujours compatible avec ASCII." - -#: library/sys.rst:658 +#: library/sys.rst:672 msgid "" ":func:`os.fsencode` and :func:`os.fsdecode` should be used to ensure that " "the correct encoding and errors mode are used." @@ -1210,40 +1253,19 @@ msgstr "" "utilisées pour s'assurer qu'un encodage et un gestionnaire d'erreurs correct " "sont utilisés." -#: library/sys.rst:628 -msgid "In the UTF-8 mode, the encoding is ``utf-8`` on any platform." -msgstr "" -"Dans le mode UTF-8, l'encodage est ``'utf-8'`` sur toutes les plate-formes." - -#: library/sys.rst:630 -msgid "On macOS, the encoding is ``'utf-8'``." -msgstr "Sur macOS, l'encodage est ``'utf-8'``." - -#: library/sys.rst:632 -msgid "On Unix, the encoding is the locale encoding." -msgstr "Sur Unix, l'encodage est celui des paramètres régionaux." - -#: library/sys.rst:634 +#: library/sys.rst:675 msgid "" -"On Windows, the encoding may be ``'utf-8'`` or ``'mbcs'``, depending on user " -"configuration." +"The :term:`filesystem encoding and error handler` are configured at Python " +"startup by the :c:func:`PyConfig_Read` function: see :c:member:`~PyConfig." +"filesystem_encoding` and :c:member:`~PyConfig.filesystem_errors` members of :" +"c:type:`PyConfig`." msgstr "" -"Sur Windows, l'encodage peut être ``'utf-8'`` ou ``'mbcs'``, en fonction des " -"paramètres de l'utilisateur." - -#: library/sys.rst:637 -msgid "On Android, the encoding is ``'utf-8'``." -msgstr "Sur Android, l'encodage est ``'utf-8'``." - -#: library/sys.rst:639 -msgid "On VxWorks, the encoding is ``'utf-8'``." -msgstr "Sur VxWorks, l'encodage est ``'utf-8'``." -#: library/sys.rst:641 +#: library/sys.rst:652 msgid ":func:`getfilesystemencoding` result cannot be ``None`` anymore." msgstr ":func:`getfilesystemencoding` ne peut plus renvoyer ``None``." -#: library/sys.rst:644 +#: library/sys.rst:655 msgid "" "Windows is no longer guaranteed to return ``'mbcs'``. See :pep:`529` and :" "func:`_enablelegacywindowsfsencoding` for more information." @@ -1251,21 +1273,25 @@ msgstr "" "Sur Windows, on est plus assurés d'obtenir ``'mbcs'``. Voir la :pep:`529` " "et :func:`_enablelegacywindowsfsencoding` pour plus d'informations." -#: library/sys.rst:648 -msgid "Return 'utf-8' in the UTF-8 mode." -msgstr "Renvoie `\"utf-8\"` en mode UTF-8." +#: library/sys.rst:659 +msgid "" +"Return ``'utf-8'`` if the :ref:`Python UTF-8 Mode ` is enabled." +msgstr "" -#: library/sys.rst:654 +#: library/sys.rst:666 +#, fuzzy msgid "" -"Return the name of the error mode used to convert between Unicode filenames " -"and bytes filenames. The encoding name is returned from :func:" -"`getfilesystemencoding`." +"Get the :term:`filesystem error handler `: the error handler used with the :term:`filesystem encoding " +"` to convert between Unicode " +"filenames and bytes filenames. The filesystem encoding is returned from :" +"func:`getfilesystemencoding`." msgstr "" "Donne le nom du mode de gestion d'erreur utilisé lors de la conversion des " "noms de fichiers entre Unicode et octets. Le nom de l'encodage est renvoyé " "par :func:`getfilesystemencoding`." -#: library/sys.rst:665 +#: library/sys.rst:684 msgid "" "Return the reference count of the *object*. The count returned is generally " "one higher than you might expect, because it includes the (temporary) " @@ -1275,7 +1301,7 @@ msgstr "" "généralement d'une référence de plus qu'attendu, puisqu'il compte la " "référence (temporaire) de l'argument à :func:`getrefcount`." -#: library/sys.rst:672 +#: library/sys.rst:691 msgid "" "Return the current value of the recursion limit, the maximum depth of the " "Python interpreter stack. This limit prevents infinite recursion from " @@ -1287,7 +1313,7 @@ msgstr "" "d'une récursion infinie à cause d'un débordement de la pile. Elle peut être " "modifiée par :func:`setrecursionlimit`." -#: library/sys.rst:680 +#: library/sys.rst:699 msgid "" "Return the size of an object in bytes. The object can be any type of object. " "All built-in objects will return correct results, but this does not have to " @@ -1298,7 +1324,7 @@ msgstr "" "peut ne pas être toujours vrai pour les extensions, la valeur étant " "dépendante de l'implémentation." -#: library/sys.rst:685 +#: library/sys.rst:704 msgid "" "Only the memory consumption directly attributed to the object is accounted " "for, not the memory consumption of objects it refers to." @@ -1306,7 +1332,7 @@ msgstr "" "Seule la mémoire directement attribuée à l'objet est prise en compte, pas la " "mémoire consommée par les objets vers lesquels il a des références." -#: library/sys.rst:688 +#: library/sys.rst:707 msgid "" "If given, *default* will be returned if the object does not provide means to " "retrieve the size. Otherwise a :exc:`TypeError` will be raised." @@ -1314,7 +1340,7 @@ msgstr "" "S'il est fourni, *default* sera renvoyé si l'objet ne fournit aucun moyen de " "récupérer sa taille. Sinon, une exception :exc:`TypeError` sera levée." -#: library/sys.rst:691 +#: library/sys.rst:710 msgid "" ":func:`getsizeof` calls the object's ``__sizeof__`` method and adds an " "additional garbage collector overhead if the object is managed by the " @@ -1323,7 +1349,7 @@ msgstr "" ":func:`getsizeof` appelle la méthode ``__sizeof__`` de l'objet, et s'il est " "géré par lui, ajoute le surcoût du ramasse-miettes." -#: library/sys.rst:695 +#: library/sys.rst:714 msgid "" "See `recursive sizeof recipe `_ " "for an example of using :func:`getsizeof` recursively to find the size of " @@ -1333,7 +1359,7 @@ msgstr "" "recipes/577504>`_ pour un exemple d'utilisation récursive de :func:" "`getsizeof` pour trouver la taille d'un contenant et de son contenu." -#: library/sys.rst:701 +#: library/sys.rst:720 msgid "" "Return the interpreter's \"thread switch interval\"; see :func:" "`setswitchinterval`." @@ -1341,7 +1367,7 @@ msgstr "" "Renvoie la valeur du *thread switch interval* de l'interpréteur, voir :func:" "`setswitchinterval`." -#: library/sys.rst:709 +#: library/sys.rst:728 msgid "" "Return a frame object from the call stack. If optional integer *depth* is " "given, return the frame object that many calls below the top of the stack. " @@ -1355,13 +1381,13 @@ msgstr "" "exc:`ValueError` est levée. La profondeur par défaut est zéro, donnant ainsi " "la *frame* du dessus de la pile." -#: library/sys.rst:714 +#: library/sys.rst:733 msgid "" "Raises an :ref:`auditing event ` ``sys._getframe`` with no " "arguments." msgstr "" -#: library/sys.rst:718 +#: library/sys.rst:737 msgid "" "This function should be used for internal and specialized purposes only. It " "is not guaranteed to exist in all implementations of Python." @@ -1370,16 +1396,16 @@ msgstr "" "spécifique. Il n'est pas garanti qu'elle existe dans toutes les " "implémentations de Python." -#: library/sys.rst:728 +#: library/sys.rst:747 msgid "Get the profiler function as set by :func:`setprofile`." msgstr "" "Renvoie la fonction de profilage tel que défini par :func:`setprofile`." -#: library/sys.rst:737 +#: library/sys.rst:756 msgid "Get the trace function as set by :func:`settrace`." msgstr "Renvoie la fonction de traçage tel que définie par :func:`settrace`." -#: library/sys.rst:741 +#: library/sys.rst:760 msgid "" "The :func:`gettrace` function is intended only for implementing debuggers, " "profilers, coverage tools and the like. Its behavior is part of the " @@ -1391,7 +1417,7 @@ msgstr "" "dépend de l'implémentation et non du langage, elle n'est donc pas forcément " "disponible dans toutes les implémentations de Python." -#: library/sys.rst:749 +#: library/sys.rst:768 msgid "" "Return a named tuple describing the Windows version currently running. The " "named elements are *major*, *minor*, *build*, *platform*, *service_pack*, " @@ -1414,47 +1440,47 @@ msgstr "" "versions antérieures, seuls les 5 premiers éléments sont accessibles par " "leur indice." -#: library/sys.rst:760 +#: library/sys.rst:779 msgid "*platform* will be :const:`2 (VER_PLATFORM_WIN32_NT)`." msgstr "*platform* sera :const:`2 (VER_PLATFORM_WIN32_NT)`." -#: library/sys.rst:762 +#: library/sys.rst:781 msgid "*product_type* may be one of the following values:" msgstr "*product_type* peut être une des valeurs suivantes :" -#: library/sys.rst:765 +#: library/sys.rst:784 msgid "Constant" msgstr "Constante" -#: library/sys.rst:765 +#: library/sys.rst:784 msgid "Meaning" msgstr "Signification" -#: library/sys.rst:767 +#: library/sys.rst:786 msgid ":const:`1 (VER_NT_WORKSTATION)`" msgstr ":const:`1 (VER_NT_WORKSTATION)`" -#: library/sys.rst:767 +#: library/sys.rst:786 msgid "The system is a workstation." msgstr "Le système une station de travail." -#: library/sys.rst:769 +#: library/sys.rst:788 msgid ":const:`2 (VER_NT_DOMAIN_CONTROLLER)`" msgstr ":const:`2 (VER_NT_DOMAIN_CONTROLLER)`" -#: library/sys.rst:769 +#: library/sys.rst:788 msgid "The system is a domain controller." msgstr "Le système est un contrôleur de domaine." -#: library/sys.rst:772 +#: library/sys.rst:791 msgid ":const:`3 (VER_NT_SERVER)`" msgstr ":const:`3 (VER_NT_SERVER)`" -#: library/sys.rst:772 +#: library/sys.rst:791 msgid "The system is a server, but not a domain controller." msgstr "Le système est un serveur, mais pas un contrôleur de domaine." -#: library/sys.rst:776 +#: library/sys.rst:795 msgid "" "This function wraps the Win32 :c:func:`GetVersionEx` function; see the " "Microsoft documentation on :c:func:`OSVERSIONINFOEX` for more information " @@ -1465,7 +1491,7 @@ msgstr "" "de Microsoft sur :c:func:`OSVERSIONINFOEX` pour plus d'informations sur ces " "champs." -#: library/sys.rst:780 +#: library/sys.rst:799 #, fuzzy msgid "" "*platform_version* returns the major version, minor version and build number " @@ -1478,14 +1504,14 @@ msgstr "" "émulée pour ce processus. Il est destiné à être utilisé pour de la " "journalisation plutôt que pour la détection de fonctionnalités." -#: library/sys.rst:786 +#: library/sys.rst:805 msgid "" "*platform_version* derives the version from kernel32.dll which can be of a " "different version than the OS version. Please use :mod:`platform` module for " "achieving accurate OS version." msgstr "" -#: library/sys.rst:792 +#: library/sys.rst:811 msgid "" "Changed to a named tuple and added *service_pack_minor*, " "*service_pack_major*, *suite_mask*, and *product_type*." @@ -1493,11 +1519,11 @@ msgstr "" "Changé en un *n*-uplet nommé, et ajout de *service_pack_minor*, " "*service_pack_major*, *suite_mask*, et *product_type*." -#: library/sys.rst:796 +#: library/sys.rst:815 msgid "Added *platform_version*" msgstr "Ajout de *platform_version*" -#: library/sys.rst:802 +#: library/sys.rst:821 msgid "" "Returns an *asyncgen_hooks* object, which is similar to a :class:" "`~collections.namedtuple` of the form `(firstiter, finalizer)`, where " @@ -1513,11 +1539,11 @@ msgstr "" "pour planifier la finalisation d'un générateur asynchrone par un *event " "loop*." -#: library/sys.rst:809 +#: library/sys.rst:828 msgid "See :pep:`525` for more details." msgstr "Voir la :pep:`525` pour plus d'informations." -#: library/sys.rst:1421 +#: library/sys.rst:1450 msgid "" "This function has been added on a provisional basis (see :pep:`411` for " "details.)" @@ -1525,7 +1551,7 @@ msgstr "" "Cette fonction à été ajoutée à titre provisoire (voir la :pep:`411` pour " "plus d'informations.)" -#: library/sys.rst:819 +#: library/sys.rst:838 msgid "" "Get the current coroutine origin tracking depth, as set by :func:" "`set_coroutine_origin_tracking_depth`." @@ -1534,7 +1560,7 @@ msgstr "" "le suivi de leur création, telle que défini par :func:" "`set_coroutine_origin_tracking_depth`." -#: library/sys.rst:1442 +#: library/sys.rst:1471 msgid "" "This function has been added on a provisional basis (see :pep:`411` for " "details.) Use it only for debugging purposes." @@ -1542,7 +1568,7 @@ msgstr "" "Cette fonction à été ajoutée à titre provisoire (Voir la :pep:`411` pour " "plus d'informations.) Utilisez la uniquement à des fins de débogage." -#: library/sys.rst:831 +#: library/sys.rst:850 msgid "" "A :term:`named tuple` giving parameters of the numeric hash implementation. " "For more details about hashing of numeric types, see :ref:`numeric-hash`." @@ -1551,77 +1577,77 @@ msgstr "" "fonction de hachage de nombres. Pour plus d'informations sur le hachage des " "types numériques, consultez :ref:`numeric-hash`." -#: library/sys.rst:838 +#: library/sys.rst:857 msgid ":const:`width`" msgstr ":const:`width`" -#: library/sys.rst:838 +#: library/sys.rst:857 msgid "width in bits used for hash values" msgstr "Nombre de bits des valeurs de *hash*" -#: library/sys.rst:840 +#: library/sys.rst:859 msgid ":const:`modulus`" msgstr ":const:`modulus`" -#: library/sys.rst:840 +#: library/sys.rst:859 msgid "prime modulus P used for numeric hash scheme" msgstr "" "contient le premier P utilisé dans le modulo pour les *hash* numériques" -#: library/sys.rst:842 +#: library/sys.rst:861 msgid ":const:`inf`" msgstr ":const:`inf`" -#: library/sys.rst:842 +#: library/sys.rst:861 msgid "hash value returned for a positive infinity" msgstr "valeur du *hash* pour un infini positif" -#: library/sys.rst:844 +#: library/sys.rst:863 msgid ":const:`nan`" msgstr ":const:`nan`" -#: library/sys.rst:844 -msgid "hash value returned for a nan" -msgstr "valeur du *hash* pour un *nan*" +#: library/sys.rst:863 +msgid "(this attribute is no longer used)" +msgstr "" -#: library/sys.rst:846 +#: library/sys.rst:865 msgid ":const:`imag`" msgstr ":const:`imag`" -#: library/sys.rst:846 +#: library/sys.rst:865 msgid "multiplier used for the imaginary part of a complex number" msgstr "multiplicateur utilisé pour la partie imaginaire d'un nombre complexe" -#: library/sys.rst:849 +#: library/sys.rst:868 msgid ":const:`algorithm`" msgstr ":const:`algorithm`" -#: library/sys.rst:849 +#: library/sys.rst:868 msgid "name of the algorithm for hashing of str, bytes, and memoryview" msgstr "" "nom de l'algorithme pour le hachage des *str*, *bytes*, et *memoryview*" -#: library/sys.rst:852 +#: library/sys.rst:871 msgid ":const:`hash_bits`" msgstr ":const:`hash_bits`" -#: library/sys.rst:852 +#: library/sys.rst:871 msgid "internal output size of the hash algorithm" msgstr "taille de la sortie interne de l'algorithme de hachage" -#: library/sys.rst:854 +#: library/sys.rst:873 msgid ":const:`seed_bits`" msgstr ":const:`seed_bits`" -#: library/sys.rst:854 +#: library/sys.rst:873 msgid "size of the seed key of the hash algorithm" msgstr "taille de la *seed key* utilisée par l'algorithme de hachage" -#: library/sys.rst:860 +#: library/sys.rst:879 msgid "Added *algorithm*, *hash_bits* and *seed_bits*" msgstr "Ajout de *algorithm*, *hash_bits* et *seed_bits*" -#: library/sys.rst:866 +#: library/sys.rst:885 msgid "" "The version number encoded as a single integer. This is guaranteed to " "increase with each version, including proper support for non-production " @@ -1633,7 +1659,7 @@ msgstr "" "Par exemple, pour vérifier que l'interpréteur Python est au moins la version " "1.5, utilisez ::" -#: library/sys.rst:877 +#: library/sys.rst:896 msgid "" "This is called ``hexversion`` since it only really looks meaningful when " "viewed as the result of passing it to the built-in :func:`hex` function. " @@ -1645,12 +1671,12 @@ msgstr "" "`hex`. Le :term:`named tuple` :data:`sys.version_info` représente la même " "information d'une manière plus humaine." -#: library/sys.rst:882 +#: library/sys.rst:901 msgid "More details of ``hexversion`` can be found at :ref:`apiabiversion`." msgstr "" "Consultez :ref:`apiabiversion` pour plus d'informations sur ``hexversion``." -#: library/sys.rst:887 +#: library/sys.rst:906 msgid "" "An object containing information about the implementation of the currently " "running Python interpreter. The following attributes are required to exist " @@ -1660,7 +1686,7 @@ msgstr "" "actuelle de l'interpréteur Python. Les attributs suivants existent " "obligatoirement sur toutes les implémentations Python." -#: library/sys.rst:891 +#: library/sys.rst:910 msgid "" "*name* is the implementation's identifier, e.g. ``'cpython'``. The actual " "string is defined by the Python implementation, but it is guaranteed to be " @@ -1670,7 +1696,7 @@ msgstr "" "chaîne est définie par l'implémentation de Python, mais sera toujours en " "minuscule." -#: library/sys.rst:895 +#: library/sys.rst:914 msgid "" "*version* is a named tuple, in the same format as :data:`sys.version_info`. " "It represents the version of the Python *implementation*. This has a " @@ -1690,7 +1716,7 @@ msgstr "" "valoir ``sys.version_info(2, 7, 2, 'final', 0)``. Pour CPython ces deux " "valeurs sont identiques puisque c'est l'implémentation de référence." -#: library/sys.rst:905 +#: library/sys.rst:924 msgid "" "*hexversion* is the implementation version in hexadecimal format, like :data:" "`sys.hexversion`." @@ -1698,7 +1724,7 @@ msgstr "" "*hexversion* est la version de l'implémentation sous forme hexadécimale, " "comme :data:`sys.hexversion`." -#: library/sys.rst:908 +#: library/sys.rst:927 msgid "" "*cache_tag* is the tag used by the import machinery in the filenames of " "cached modules. By convention, it would be a composite of the " @@ -1713,7 +1739,7 @@ msgstr "" "autre valeur si nécessaire. ``cache_tag`` à ``None`` signifie que la mise " "en cache des modules doit être désactivée." -#: library/sys.rst:915 +#: library/sys.rst:934 msgid "" ":data:`sys.implementation` may contain additional attributes specific to the " "Python implementation. These non-standard attributes must start with an " @@ -1730,13 +1756,13 @@ msgstr "" "cependant changer entre les versions du langage Python.) Voir la :pep:`421` " "pour plus d'informations." -#: library/sys.rst:926 +#: library/sys.rst:945 msgid "" "The addition of new required attributes must go through the normal PEP " "process. See :pep:`421` for more information." msgstr "" -#: library/sys.rst:931 +#: library/sys.rst:950 msgid "" "A :term:`named tuple` that holds information about Python's internal " "representation of integers. The attributes are read only." @@ -1744,19 +1770,19 @@ msgstr "" "Un :term:`named tuple` qui contient des informations sur la représentation " "interne des entiers de Python. Les attributs sont en lecture seule." -#: library/sys.rst:1551 +#: library/sys.rst:1602 msgid "Attribute" msgstr "Attribut" -#: library/sys.rst:1551 +#: library/sys.rst:1602 msgid "Explanation" msgstr "Explication" -#: library/sys.rst:939 +#: library/sys.rst:958 msgid ":const:`bits_per_digit`" msgstr ":const:`bits_per_digit`" -#: library/sys.rst:939 +#: library/sys.rst:958 msgid "" "number of bits held in each digit. Python integers are stored internally in " "base ``2**int_info.bits_per_digit``" @@ -1764,15 +1790,15 @@ msgstr "" "nombre de bits utilisés pour chaque chiffre. Les entiers Python sont " "stockés en interne en base ``2**int_info.bits_per_digit``" -#: library/sys.rst:943 +#: library/sys.rst:962 msgid ":const:`sizeof_digit`" msgstr ":const:`sizeof_digit`" -#: library/sys.rst:943 +#: library/sys.rst:962 msgid "size in bytes of the C type used to represent a digit" msgstr "taille en octets du type C utilisé pour représenter un chiffre" -#: library/sys.rst:952 +#: library/sys.rst:971 msgid "" "When this attribute exists, its value is automatically called (with no " "arguments) when the interpreter is launched in :ref:`interactive mode ` par le module :mod:`site`." -#: library/sys.rst:958 +#: library/sys.rst:977 msgid "" "Raises an :ref:`auditing event ` ``cpython.run_interactivehook`` " "with argument ``hook``." msgstr "" -#: library/sys.rst:960 +#: library/sys.rst:979 msgid "" "Raises an :ref:`auditing event ` ``cpython.run_interactivehook`` " "with the hook object as the argument when the hook is called on startup." msgstr "" -#: library/sys.rst:969 +#: library/sys.rst:988 msgid "" "Enter *string* in the table of \"interned\" strings and return the interned " "string -- which is *string* itself or a copy. Interning strings is useful to " @@ -1820,7 +1846,7 @@ msgstr "" "attributs de modules, de classes, ou d'instances ont aussi leurs clés " "internées." -#: library/sys.rst:977 +#: library/sys.rst:996 msgid "" "Interned strings are not immortal; you must keep a reference to the return " "value of :func:`intern` around to benefit from it." @@ -1828,7 +1854,7 @@ msgstr "" "Les chaînes internées ne sont pas immortelles ; vous devez garder une " "référence à la valeur renvoyée par :func:`intern` pour en bénéficier." -#: library/sys.rst:983 +#: library/sys.rst:1002 msgid "" "Return :const:`True` if the Python interpreter is :term:`shutting down " "`, :const:`False` otherwise." @@ -1836,7 +1862,7 @@ msgstr "" "Donne :const:`True` si l'interpréteur Python est :term:`en train de " "s'arrêter `, et :const:`False` dans le cas contraire." -#: library/sys.rst:993 +#: library/sys.rst:1012 msgid "" "These three variables are not always defined; they are set when an exception " "is not handled and the interpreter prints an error message and a stack " @@ -1855,7 +1881,7 @@ msgstr "" "mortem est ``import pdb; pdb.pm()``, voir :mod:`pdb` pour plus " "d'informations.)." -#: library/sys.rst:1001 +#: library/sys.rst:1020 msgid "" "The meaning of the variables is the same as that of the return values from :" "func:`exc_info` above." @@ -1863,7 +1889,7 @@ msgstr "" "La signification de ces variables est la même que celle des valeurs " "renvoyées par :func:`exc_info` ci-dessus." -#: library/sys.rst:1007 +#: library/sys.rst:1026 msgid "" "An integer giving the maximum value a variable of type :c:type:`Py_ssize_t` " "can take. It's usually ``2**31 - 1`` on a 32-bit platform and ``2**63 - 1`` " @@ -1873,7 +1899,7 @@ msgstr "" "`Py_ssize_t` peut prendre. C'est typiquement ``2**31 - 1`` sur une " "plateforme 32 bits et ``2**63 - 1``` sur une plateforme 64 bits." -#: library/sys.rst:1014 +#: library/sys.rst:1033 msgid "" "An integer giving the value of the largest Unicode code point, i.e. " "``1114111`` (``0x10FFFF`` in hexadecimal)." @@ -1881,7 +1907,7 @@ msgstr "" "Un entier donnant la valeur du plus grand point de code Unicode, c'est-à-" "dire ``1114111`` (```0x10FFFF`` en hexadécimal)." -#: library/sys.rst:1017 +#: library/sys.rst:1036 msgid "" "Before :pep:`393`, ``sys.maxunicode`` used to be either ``0xFFFF`` or " "``0x10FFFF``, depending on the configuration option that specified whether " @@ -1891,7 +1917,7 @@ msgstr "" "``0x10FFFF``, en fonction l'option de configuration qui spécifiait si les " "caractères Unicode étaient stockés en UCS-2 ou UCS-4." -#: library/sys.rst:1025 +#: library/sys.rst:1044 msgid "" "A list of :term:`meta path finder` objects that have their :meth:`~importlib." "abc.MetaPathFinder.find_spec` methods called to see if one of the objects " @@ -1910,11 +1936,11 @@ msgstr "" "attr:`__path__` du paquet parent est donné en deuxième argument. La méthode " "renvoie un :term:`module spec`, ou ``None`` si le module ne peut être trouvé." -#: library/sys.rst:1037 +#: library/sys.rst:1056 msgid ":class:`importlib.abc.MetaPathFinder`" msgstr ":class:`importlib.abc.MetaPathFinder`" -#: library/sys.rst:1037 +#: library/sys.rst:1056 msgid "" "The abstract base class defining the interface of finder objects on :data:" "`meta_path`." @@ -1922,11 +1948,11 @@ msgstr "" "La classe de base abstraite définissant l'interface des objets *finder* de :" "data:`meta_path`." -#: library/sys.rst:1041 +#: library/sys.rst:1060 msgid ":class:`importlib.machinery.ModuleSpec`" msgstr ":class:`importlib.machinery.ModuleSpec`" -#: library/sys.rst:1040 +#: library/sys.rst:1059 msgid "" "The concrete class which :meth:`~importlib.abc.MetaPathFinder.find_spec` " "should return instances of." @@ -1934,7 +1960,7 @@ msgstr "" "La classe concrète dont :meth:`~importlib.abc.MetaPathFinder.find_spec` " "devrait renvoyer des instances." -#: library/sys.rst:1046 +#: library/sys.rst:1065 msgid "" ":term:`Module specs ` were introduced in Python 3.4, by :pep:" "`451`. Earlier versions of Python looked for a method called :meth:" @@ -1948,7 +1974,7 @@ msgstr "" "toujours appelée en dernier recours, dans le cas où une :data:`meta_path` " "n'a pas de méthode :meth:`~importlib.abc.MetaPathFinder.find_spec`." -#: library/sys.rst:1054 +#: library/sys.rst:1073 msgid "" "This is a dictionary that maps module names to modules which have already " "been loaded. This can be manipulated to force reloading of modules and " @@ -1961,7 +1987,17 @@ msgstr "" "rechargé. Cependant, le remplacer ne fonctionnera pas forcément comme prévu " "et en supprimer des éléments essentiels peut planter Python." -#: library/sys.rst:1064 +#: library/sys.rst:1081 +msgid "" +"The list of the original command line arguments passed to the Python " +"executable." +msgstr "" + +#: library/sys.rst:1084 +msgid "See also :data:`sys.argv`." +msgstr "" + +#: library/sys.rst:1093 msgid "" "A list of strings that specifies the search path for modules. Initialized " "from the environment variable :envvar:`PYTHONPATH`, plus an installation-" @@ -1971,7 +2007,7 @@ msgstr "" "modules, initialisée à partir de la variable d'environnement :envvar:" "`PYTHONPATH` et d'une valeur par défaut dépendante de l'installation." -#: library/sys.rst:1068 +#: library/sys.rst:1097 msgid "" "As initialized upon program startup, the first item of this list, " "``path[0]``, is the directory containing the script that was used to invoke " @@ -1991,7 +2027,7 @@ msgstr "" "actuel. Notez que le dossier du script est inséré *avant* les dossiers de :" "envvar:`PYTHONPATH`." -#: library/sys.rst:1076 +#: library/sys.rst:1105 msgid "" "A program is free to modify this list for its own purposes. Only strings " "and bytes should be added to :data:`sys.path`; all other data types are " @@ -2001,7 +2037,7 @@ msgstr "" "Seuls des *str* ou des *bytes* ne devraient être ajoutés à :data:`sys.path`, " "tous les autres types de données étant ignorés durant l'importation." -#: library/sys.rst:1082 +#: library/sys.rst:1111 msgid "" "Module :mod:`site` This describes how to use .pth files to extend :data:`sys." "path`." @@ -2009,7 +2045,7 @@ msgstr "" "Le module :mod:`site` décrit comment utiliser les fichiers *.pth* pour " "étendre :data:`sys.path`." -#: library/sys.rst:1088 +#: library/sys.rst:1117 msgid "" "A list of callables that take a path argument to try to create a :term:" "`finder` for the path. If a finder can be created, it is to be returned by " @@ -2019,11 +2055,11 @@ msgstr "" "`finder` pour ce chemin. Si un *finder* peut être créé, il doit être renvoyé " "par l'appelable, sinon une :exc:`ImportError` doit être levée." -#: library/sys.rst:1103 +#: library/sys.rst:1132 msgid "Originally specified in :pep:`302`." msgstr "Précisé à l'origine dans la :pep:`302`." -#: library/sys.rst:1097 +#: library/sys.rst:1126 msgid "" "A dictionary acting as a cache for :term:`finder` objects. The keys are " "paths that have been passed to :data:`sys.path_hooks` and the values are the " @@ -2036,7 +2072,7 @@ msgstr "" "de fichiers mais qu'aucun *finder* n'est trouvé dans :data:`sys.path_hooks`, " "``None`` est stocké." -#: library/sys.rst:1105 +#: library/sys.rst:1134 msgid "" "``None`` is stored instead of :class:`imp.NullImporter` when no finder is " "found." @@ -2044,7 +2080,7 @@ msgstr "" "``None`` est stocké à la place de :class:`imp.NullImporter` si aucun " "localisateur n'est trouvé." -#: library/sys.rst:1112 +#: library/sys.rst:1141 msgid "" "This string contains a platform identifier that can be used to append " "platform-specific components to :data:`sys.path`, for instance." @@ -2053,7 +2089,7 @@ msgstr "" "typiquement utilisé pour ajouter des composants spécifiques à :data:`sys." "path`." -#: library/sys.rst:1115 +#: library/sys.rst:1144 msgid "" "For Unix systems, except on Linux and AIX, this is the lowercased OS name as " "returned by ``uname -s`` with the first part of the version as returned by " @@ -2068,59 +2104,59 @@ msgstr "" "souhaitiez tester pour une version spécifique du système, vous pouvez faire " "comme suit ::" -#: library/sys.rst:1128 +#: library/sys.rst:1157 msgid "For other systems, the values are:" msgstr "Pour les autres systèmes, les valeurs sont :" -#: library/sys.rst:1131 +#: library/sys.rst:1160 msgid "System" msgstr "Le système une station de travail." -#: library/sys.rst:1131 +#: library/sys.rst:1160 msgid "``platform`` value" msgstr "Valeur pour ``plateforme``" -#: library/sys.rst:1133 +#: library/sys.rst:1162 msgid "AIX" msgstr "AIX" -#: library/sys.rst:1133 +#: library/sys.rst:1162 msgid "``'aix'``" msgstr "``'aix'``" -#: library/sys.rst:1134 +#: library/sys.rst:1163 msgid "Linux" msgstr "Linux" -#: library/sys.rst:1134 +#: library/sys.rst:1163 msgid "``'linux'``" msgstr "``'linux'``" -#: library/sys.rst:1135 +#: library/sys.rst:1164 msgid "Windows" msgstr "Windows" -#: library/sys.rst:1135 +#: library/sys.rst:1164 msgid "``'win32'``" msgstr "``'win32'``" -#: library/sys.rst:1136 +#: library/sys.rst:1165 msgid "Windows/Cygwin" msgstr "Windows/Cygwin" -#: library/sys.rst:1136 +#: library/sys.rst:1165 msgid "``'cygwin'``" msgstr "``'cygwin'``" -#: library/sys.rst:1137 +#: library/sys.rst:1166 msgid "macOS" msgstr "macOS" -#: library/sys.rst:1137 +#: library/sys.rst:1166 msgid "``'darwin'``" msgstr "``'darwin'``" -#: library/sys.rst:1140 +#: library/sys.rst:1169 msgid "" "On Linux, :attr:`sys.platform` doesn't contain the major version anymore. It " "is always ``'linux'``, instead of ``'linux2'`` or ``'linux3'``. Since older " @@ -2132,7 +2168,7 @@ msgstr "" "anciennes versions de Python incluent le numéro de version, il est " "recommandé de toujours utiliser ``startswith``, tel qu'utilisé ci-dessus." -#: library/sys.rst:1146 +#: library/sys.rst:1175 msgid "" "On AIX, :attr:`sys.platform` doesn't contain the major version anymore. It " "is always ``'aix'``, instead of ``'aix5'`` or ``'aix7'``. Since older " @@ -2144,7 +2180,7 @@ msgstr "" "anciennes versions de Python incluent le numéro de version, il est " "recommandé de toujours utiliser ``startswith``, tel qu'utilisé ci-dessus." -#: library/sys.rst:1154 +#: library/sys.rst:1183 msgid "" ":attr:`os.name` has a coarser granularity. :func:`os.uname` gives system-" "dependent version information." @@ -2152,7 +2188,7 @@ msgstr "" ":attr:`os.name` a une granularité plus grossière. :func:`os.uname` donne des " "informations sur la version dépendantes du système." -#: library/sys.rst:1157 +#: library/sys.rst:1186 msgid "" "The :mod:`platform` module provides detailed checks for the system's " "identity." @@ -2160,45 +2196,45 @@ msgstr "" "Le module :mod:`platform` fournit des vérifications détaillées pour " "l'identité du système." -#: library/sys.rst:1163 +#: library/sys.rst:1192 msgid "" "Name of the platform-specific library directory. It is used to build the " "path of standard library and the paths of installed extension modules." msgstr "" -#: library/sys.rst:1166 +#: library/sys.rst:1195 msgid "" "It is equal to ``\"lib\"`` on most platforms. On Fedora and SuSE, it is " "equal to ``\"lib64\"`` on 64-bit platforms which gives the following ``sys." "path`` paths (where ``X.Y`` is the Python ``major.minor`` version):" msgstr "" -#: library/sys.rst:1170 +#: library/sys.rst:1199 msgid "" "``/usr/lib64/pythonX.Y/``: Standard library (like ``os.py`` of the :mod:`os` " "module)" msgstr "" -#: library/sys.rst:1172 +#: library/sys.rst:1201 msgid "" "``/usr/lib64/pythonX.Y/lib-dynload/``: C extension modules of the standard " "library (like the :mod:`errno` module, the exact filename is platform " "specific)" msgstr "" -#: library/sys.rst:1175 +#: library/sys.rst:1204 msgid "" "``/usr/lib/pythonX.Y/site-packages/`` (always use ``lib``, not :data:`sys." "platlibdir`): Third-party modules" msgstr "" -#: library/sys.rst:1177 +#: library/sys.rst:1206 msgid "" "``/usr/lib64/pythonX.Y/site-packages/``: C extension modules of third-party " "packages" msgstr "" -#: library/sys.rst:1185 +#: library/sys.rst:1214 msgid "" "A string giving the site-specific directory prefix where the platform " "independent Python files are installed; by default, this is the string ``'/" @@ -2219,7 +2255,7 @@ msgstr "" "stockées dans :file:`{prefix}/include/python{X.Y}`, où *X.Y* est le numéro " "de version de Python, par exemple ``3.2``." -#: library/sys.rst:1194 +#: library/sys.rst:1223 msgid "" "If a :ref:`virtual environment ` is in effect, this value will be " "changed in ``site.py`` to point to the virtual environment. The value for " @@ -2230,7 +2266,7 @@ msgstr "" "donnée au moment de la compilation de Python sera toujours disponible, dans :" "data:`base_prefix`." -#: library/sys.rst:1209 +#: library/sys.rst:1238 msgid "" "Strings specifying the primary and secondary prompt of the interpreter. " "These are only defined if the interpreter is in interactive mode. Their " @@ -2247,7 +2283,7 @@ msgstr "" "à lire une nouvelle commande interactive, c'est donc utilisable pour " "implémenter une invite dynamique." -#: library/sys.rst:1219 +#: library/sys.rst:1248 msgid "" "Set the flags used by the interpreter for :c:func:`dlopen` calls, such as " "when the interpreter loads extension modules. Among other things, this will " @@ -2266,7 +2302,7 @@ msgstr "" "trouvés dans le module :mod:`os` (ce sont les constantes ``RTLD_xxx``, " "comme :data:`os.RTLD_LAZY`)." -#: library/sys.rst:1235 +#: library/sys.rst:1264 msgid "" "Set the system's profile function, which allows you to implement a Python " "source code profiler in Python. See chapter :ref:`profile` for more " @@ -2294,7 +2330,7 @@ msgstr "" "*multithread*. Sa valeur de retour n'est pas utilisée, elle peut simplement " "renvoyer ``None``." -#: library/sys.rst:1246 +#: library/sys.rst:1275 msgid "" "Profile functions should have three arguments: *frame*, *event*, and *arg*. " "*frame* is the current stack frame. *event* is a string: ``'call'``, " @@ -2307,21 +2343,21 @@ msgstr "" "``'c_call'``, ``'c_return'`` ou ``'c_exception'``. *arg* dépend du type de " "l'évènement." -#: library/sys.rst:1251 +#: library/sys.rst:1280 msgid "" "Raises an :ref:`auditing event ` ``sys.setprofile`` with no " "arguments." msgstr "" -#: library/sys.rst:1334 +#: library/sys.rst:1363 msgid "The events have the following meaning:" msgstr "Les événements ont la signification suivante :" -#: library/sys.rst:1339 +#: library/sys.rst:1368 msgid "``'call'``" msgstr "``'call'``" -#: library/sys.rst:1256 +#: library/sys.rst:1285 msgid "" "A function is called (or some other code block entered). The profile " "function is called; *arg* is ``None``." @@ -2329,11 +2365,11 @@ msgstr "" "Une fonction est appelée (ou Python entre dans un autre bloc de code). La " "fonction de traçage est appelée, *arg* est ``None``." -#: library/sys.rst:1354 +#: library/sys.rst:1383 msgid "``'return'``" msgstr "``'return'``" -#: library/sys.rst:1260 +#: library/sys.rst:1289 msgid "" "A function (or other code block) is about to return. The profile function " "is called; *arg* is the value that will be returned, or ``None`` if the " @@ -2343,11 +2379,11 @@ msgstr "" "fonction de traçage est appelée, *arg* est la valeur qui sera renvoyée, ou " "``None`` si l'événement est causé par la levée d'une exception." -#: library/sys.rst:1266 +#: library/sys.rst:1295 msgid "``'c_call'``" msgstr "``'c_call'``" -#: library/sys.rst:1265 +#: library/sys.rst:1294 msgid "" "A C function is about to be called. This may be an extension function or a " "built-in. *arg* is the C function object." @@ -2355,23 +2391,23 @@ msgstr "" "Une fonction C est sur le point d'être appelée. C'est soit une fonction " "d'extension ou une fonction native. *arg* représente la fonction C." -#: library/sys.rst:1269 +#: library/sys.rst:1298 msgid "``'c_return'``" msgstr "``'c_return'``" -#: library/sys.rst:1269 +#: library/sys.rst:1298 msgid "A C function has returned. *arg* is the C function object." msgstr "Une fonction C a renvoyé une valeur. *arg* représente la fonction C." -#: library/sys.rst:1271 +#: library/sys.rst:1300 msgid "``'c_exception'``" msgstr "``'c_exception'``" -#: library/sys.rst:1272 +#: library/sys.rst:1301 msgid "A C function has raised an exception. *arg* is the C function object." msgstr "Une fonction C a levé une exception. *arg* représente la fonction C." -#: library/sys.rst:1276 +#: library/sys.rst:1305 msgid "" "Set the maximum depth of the Python interpreter stack to *limit*. This " "limit prevents infinite recursion from causing an overflow of the C stack " @@ -2381,7 +2417,7 @@ msgstr "" "*limit*. Cette limite empêche une récursion infinie de provoquer un " "débordement de la pile C et ainsi un crash de Python." -#: library/sys.rst:1280 +#: library/sys.rst:1309 msgid "" "The highest possible limit is platform-dependent. A user may need to set " "the limit higher when they have a program that requires deep recursion and a " @@ -2393,7 +2429,7 @@ msgstr "" "profonde, si sa plate-forme le permet. Cela doit être fait avec précaution, " "car une limite trop élevée peut conduire à un crash." -#: library/sys.rst:1285 +#: library/sys.rst:1314 msgid "" "If the new limit is too low at the current recursion depth, a :exc:" "`RecursionError` exception is raised." @@ -2401,7 +2437,7 @@ msgstr "" "Si la nouvelle limite est plus basse que la profondeur actuelle, une :exc:" "`RecursionError` est levée." -#: library/sys.rst:1288 +#: library/sys.rst:1317 msgid "" "A :exc:`RecursionError` exception is now raised if the new limit is too low " "at the current recursion depth." @@ -2409,7 +2445,7 @@ msgstr "" "Une :exc:`RecursionError` est maintenant levée si la nouvelle limite est " "plus basse que la profondeur de récursion actuelle." -#: library/sys.rst:1295 +#: library/sys.rst:1324 msgid "" "Set the interpreter's thread switch interval (in seconds). This floating-" "point value determines the ideal duration of the \"timeslices\" allocated to " @@ -2427,7 +2463,7 @@ msgstr "" "d'exécution prenant la main à la fin de l'intervalle revient au système " "d'exploitation. L'interpréteur n'a pas son propre ordonnanceur." -#: library/sys.rst:1312 +#: library/sys.rst:1341 msgid "" "Set the system's trace function, which allows you to implement a Python " "source code debugger in Python. The function is thread-specific; for a " @@ -2442,7 +2478,7 @@ msgstr "" "pour chaque fil d'exécution qu'il souhaite surveiller ou utilisez :func:" "`threading.settrace`." -#: library/sys.rst:1317 +#: library/sys.rst:1346 msgid "" "Trace functions should have three arguments: *frame*, *event*, and *arg*. " "*frame* is the current stack frame. *event* is a string: ``'call'``, " @@ -2454,7 +2490,7 @@ msgstr "" "chaîne de caractères pouvant valoir : ``'call'``, ``'line'``, ``'return'``, " "``'exception'`` ou ``'opcode'``. *arg* dépend du type de l'évènement." -#: library/sys.rst:1322 +#: library/sys.rst:1351 msgid "" "The trace function is invoked (with *event* set to ``'call'``) whenever a " "new local scope is entered; it should return a reference to a local trace " @@ -2466,7 +2502,7 @@ msgstr "" "référence à une fonction de traçage locale à utiliser pour ce *scope*, ou " "``None`` si le *Scope* ne doit pas être tracé." -#: library/sys.rst:1327 +#: library/sys.rst:1356 msgid "" "The local trace function should return a reference to itself (or to another " "function for further tracing in that scope), or ``None`` to turn off tracing " @@ -2476,7 +2512,7 @@ msgstr "" "autre fonction de traçage pour un traçage ultérieur dans cette portée), ou " "``None`` pour désactiver le traçage dans cette portée." -#: library/sys.rst:1331 +#: library/sys.rst:1360 msgid "" "If there is any error occurred in the trace function, it will be unset, just " "like ``settrace(None)`` is called." @@ -2484,7 +2520,7 @@ msgstr "" "Si une erreur se produit dans la fonction de trace, elle sera désactivée, " "tout comme si ``settrace(None)`` avait été appelée." -#: library/sys.rst:1337 +#: library/sys.rst:1366 msgid "" "A function is called (or some other code block entered). The global trace " "function is called; *arg* is ``None``; the return value specifies the local " @@ -2494,11 +2530,11 @@ msgstr "" "globale est appelée, *arg* est ``None``, la valeur renvoyée donne la " "fonction de traçage locale." -#: library/sys.rst:1348 +#: library/sys.rst:1377 msgid "``'line'``" msgstr "``'line'``" -#: library/sys.rst:1342 +#: library/sys.rst:1371 msgid "" "The interpreter is about to execute a new line of code or re-execute the " "condition of a loop. The local trace function is called; *arg* is ``None``; " @@ -2515,7 +2551,7 @@ msgstr "" "désactivés pour un cadre d'exécution en mettant :attr:`f_trace_lines` à :" "const:`False` pour ce cadre d'exécution." -#: library/sys.rst:1351 +#: library/sys.rst:1380 msgid "" "A function (or other code block) is about to return. The local trace " "function is called; *arg* is the value that will be returned, or ``None`` if " @@ -2527,11 +2563,11 @@ msgstr "" "renvoyée, ou ``None`` si l'événement est causé par la levée d'une exception. " "La valeur renvoyée par la fonction de traçage est ignorée." -#: library/sys.rst:1359 +#: library/sys.rst:1388 msgid "``'exception'``" msgstr "``'exception'``" -#: library/sys.rst:1357 +#: library/sys.rst:1386 msgid "" "An exception has occurred. The local trace function is called; *arg* is a " "tuple ``(exception, value, traceback)``; the return value specifies the new " @@ -2541,11 +2577,11 @@ msgstr "" "est le triplet ``(exception, valeur, traceback)``, la valeur renvoyée " "spécifie la nouvelle fonction de traçage locale." -#: library/sys.rst:1367 +#: library/sys.rst:1396 msgid "``'opcode'``" msgstr "``'opcode'``" -#: library/sys.rst:1362 +#: library/sys.rst:1391 msgid "" "The interpreter is about to execute a new opcode (see :mod:`dis` for opcode " "details). The local trace function is called; *arg* is ``None``; the return " @@ -2560,7 +2596,7 @@ msgstr "" "explicitement requis en mettant :attr:`f_trace_opcodes` à :const:`True` pour " "cette *frame*." -#: library/sys.rst:1369 +#: library/sys.rst:1398 msgid "" "Note that as an exception is propagated down the chain of callers, an " "``'exception'`` event is generated at each level." @@ -2568,7 +2604,7 @@ msgstr "" "Remarquez que, comme une exception se propage au travers de toute chaîne " "d'appelants, un événement ``'exception'`` est généré à chaque niveau." -#: library/sys.rst:1372 +#: library/sys.rst:1401 msgid "" "For more fine-grained usage, it's possible to set a trace function by " "assigning ``frame.f_trace = tracefunc`` explicitly, rather than relying on " @@ -2582,19 +2618,19 @@ msgid "" "on each frame)." msgstr "" -#: library/sys.rst:1383 +#: library/sys.rst:1412 msgid "For more information on code and frame objects, refer to :ref:`types`." msgstr "" "Pour plus d'informations sur les objets code et objets représentant une " "*frame* de la pile, consultez :ref:`types`." -#: library/sys.rst:1385 +#: library/sys.rst:1414 msgid "" "Raises an :ref:`auditing event ` ``sys.settrace`` with no " "arguments." msgstr "" -#: library/sys.rst:1389 +#: library/sys.rst:1418 msgid "" "The :func:`settrace` function is intended only for implementing debuggers, " "profilers, coverage tools and the like. Its behavior is part of the " @@ -2607,7 +2643,7 @@ msgstr "" "que de la définition du langage, et peut donc ne pas être disponible dans " "toutes les implémentations de Python." -#: library/sys.rst:1396 +#: library/sys.rst:1425 msgid "" "``'opcode'`` event type added; :attr:`f_trace_lines` and :attr:" "`f_trace_opcodes` attributes added to frames" @@ -2615,7 +2651,7 @@ msgstr "" "Ajout du type d’événement ``'opcode'`` ; les attributs :attr:`f_trace_lines` " "et :attr:`f_trace_opcodes` ont été ajoutés aux cadres d'exécution" -#: library/sys.rst:1401 +#: library/sys.rst:1430 msgid "" "Accepts two optional keyword arguments which are callables that accept an :" "term:`asynchronous generator iterator` as an argument. The *firstiter* " @@ -2629,25 +2665,25 @@ msgstr "" "première fois, et l'appelable *finalizer* sera appelé lorsqu'un générateur " "asynchrone est sur le point d'être détruit." -#: library/sys.rst:1407 +#: library/sys.rst:1436 msgid "" "Raises an :ref:`auditing event ` ``sys." "set_asyncgen_hooks_firstiter`` with no arguments." msgstr "" -#: library/sys.rst:1409 +#: library/sys.rst:1438 msgid "" "Raises an :ref:`auditing event ` ``sys." "set_asyncgen_hooks_finalizer`` with no arguments." msgstr "" -#: library/sys.rst:1411 +#: library/sys.rst:1440 msgid "" "Two auditing events are raised because the underlying API consists of two " "calls, each of which must raise its own event." msgstr "" -#: library/sys.rst:1414 +#: library/sys.rst:1443 msgid "" "See :pep:`525` for more details, and for a reference example of a " "*finalizer* method see the implementation of ``asyncio.Loop." @@ -2657,7 +2693,7 @@ msgstr "" "voir l'implémentation de ``asyncio.Loop.shutdown_asyncgens`` dans :source:" "`Lib/asyncio/base_events.py`" -#: library/sys.rst:1426 +#: library/sys.rst:1455 msgid "" "Allows enabling or disabling coroutine origin tracking. When enabled, the " "``cr_origin`` attribute on coroutine objects will contain a tuple of " @@ -2672,7 +2708,7 @@ msgstr "" "coroutine a été créé, avec l'appel le plus récent en premier. Lorsqu'il est " "désactivé, la valeur de ``cr_origin`` est ``None``." -#: library/sys.rst:1433 +#: library/sys.rst:1462 msgid "" "To enable, pass a *depth* value greater than zero; this sets the number of " "frames whose information will be captured. To disable, pass set *depth* to " @@ -2682,20 +2718,21 @@ msgstr "" "le nombre de cadres d'exécution dont les informations sont capturées. Pour " "le désactiver, mettez *depth* à zéro." -#: library/sys.rst:1437 +#: library/sys.rst:1466 msgid "This setting is thread-specific." msgstr "Ce paramètre est spécifique au fil d'exécution courant." -#: library/sys.rst:1447 +#: library/sys.rst:1476 +#, fuzzy msgid "" -"Changes the default filesystem encoding and errors mode to 'mbcs' and " +"Changes the :term:`filesystem encoding and error handler` to 'mbcs' and " "'replace' respectively, for consistency with versions of Python prior to 3.6." msgstr "" "Change l'encodage et le mode de gestion d'erreur par défaut du système de " "fichiers à *mbcs* et *replace* respectivement, par cohérence avec les " "versions de Python antérieures à la 3.6." -#: library/sys.rst:1450 +#: library/sys.rst:1480 msgid "" "This is equivalent to defining the :envvar:`PYTHONLEGACYWINDOWSFSENCODING` " "environment variable before launching Python." @@ -2703,11 +2740,17 @@ msgstr "" "Équivaut à définir la variable d'environnement :envvar:" "`PYTHONLEGACYWINDOWSFSENCODING` avant de lancer Python." -#: library/sys.rst:1455 +#: library/sys.rst:1483 +msgid "" +"See also :func:`sys.getfilesystemencoding` and :func:`sys." +"getfilesystemencodeerrors`." +msgstr "" + +#: library/sys.rst:1488 msgid "See :pep:`529` for more details." msgstr "Voir la :pep:`529` pour plus d'informations." -#: library/sys.rst:1462 +#: library/sys.rst:1495 msgid "" ":term:`File objects ` used by the interpreter for standard " "input, output and errors:" @@ -2715,7 +2758,7 @@ msgstr "" ":term:`objets fichiers ` utilisés par l'interpréteur pour " "l'entrée standard, la sortie standard et la sortie d'erreurs :" -#: library/sys.rst:1465 +#: library/sys.rst:1498 msgid "" "``stdin`` is used for all interactive input (including calls to :func:" "`input`);" @@ -2723,7 +2766,7 @@ msgstr "" "``stdin`` est utilisé pour toutes les entrées interactives (y compris les " "appels à :func:`input`)" -#: library/sys.rst:1467 +#: library/sys.rst:1500 msgid "" "``stdout`` is used for the output of :func:`print` and :term:`expression` " "statements and for the prompts of :func:`input`;" @@ -2731,13 +2774,13 @@ msgstr "" "``stdout`` est utilisé pour la sortie de :func:`print`, des :term:" "`expression` et pour les invites de :func:`input` ;" -#: library/sys.rst:1469 +#: library/sys.rst:1502 msgid "The interpreter's own prompts and its error messages go to ``stderr``." msgstr "" "Les invites de l'interpréteur et ses messages d'erreur sont écrits sur " "``stderr``." -#: library/sys.rst:1471 +#: library/sys.rst:1504 msgid "" "These streams are regular :term:`text files ` like those returned " "by the :func:`open` function. Their parameters are chosen as follows:" @@ -2746,24 +2789,22 @@ msgstr "" "renvoyés par la fonction :func:`open`. Leurs paramètres sont choisis comme " "suit :" -#: library/sys.rst:1475 +#: library/sys.rst:1508 msgid "" -"The character encoding is platform-dependent. Non-Windows platforms use the " -"locale encoding (see :meth:`locale.getpreferredencoding()`)." +"The encoding and error handling are is initialized from :c:member:`PyConfig." +"stdio_encoding` and :c:member:`PyConfig.stdio_errors`." msgstr "" -"L'encodage des caractères dépend de la plateforme. Les plateformes non " -"Windows utilisent l'encodage défini dans les paramètres régionaux (voir :" -"meth:`locale.getpreferredencoding()`)." -#: library/sys.rst:1479 +#: library/sys.rst:1511 +#, fuzzy msgid "" "On Windows, UTF-8 is used for the console device. Non-character devices " "such as disk files and pipes use the system locale encoding (i.e. the ANSI " "codepage). Non-console character devices such as NUL (i.e. where " "``isatty()`` returns ``True``) use the value of the console input and output " "codepages at startup, respectively for stdin and stdout/stderr. This " -"defaults to the system locale encoding if the process is not initially " -"attached to a console." +"defaults to the system :term:`locale encoding` if the process is not " +"initially attached to a console." msgstr "" "Sous Windows, UTF-8 est utilisé pour le périphérique de console. Les " "périphériques non-caractères tels que les fichiers de disque et les tubes " @@ -2776,7 +2817,7 @@ msgstr "" "régionaux système si le processus n'est pas attaché initialement à une " "console." -#: library/sys.rst:1488 +#: library/sys.rst:1520 msgid "" "The special behaviour of the console can be overridden by setting the " "environment variable PYTHONLEGACYWINDOWSSTDIO before starting Python. In " @@ -2787,7 +2828,7 @@ msgstr "" "Python. Dans ce cas, les pages de code de la console sont utilisées comme " "pour tout autre périphérique de caractères." -#: library/sys.rst:1493 +#: library/sys.rst:1525 msgid "" "Under all platforms, you can override the character encoding by setting the :" "envvar:`PYTHONIOENCODING` environment variable before starting Python or by " @@ -2802,7 +2843,7 @@ msgstr "" "Toutefois, pour la console Windows, cela s'applique uniquement lorsque :" "envvar:`PYTHONLEGACYWINDOWSSTDIO` est également défini." -#: library/sys.rst:1500 +#: library/sys.rst:1532 #, fuzzy msgid "" "When interactive, the ``stdout`` stream is line-buffered. Otherwise, it is " @@ -2816,12 +2857,12 @@ msgstr "" "fichiers textes classiques. Vous pouvez remplacer cette valeur avec " "l'option :option:`-u` en ligne de commande." -#: library/sys.rst:1506 +#: library/sys.rst:1538 msgid "" "Non-interactive ``stderr`` is now line-buffered instead of fully buffered." msgstr "" -#: library/sys.rst:1512 +#: library/sys.rst:1544 msgid "" "To write or read binary data from/to the standard streams, use the " "underlying binary :data:`~io.TextIOBase.buffer` object. For example, to " @@ -2832,7 +2873,7 @@ msgstr "" "pour écrire des octets sur :data:`stdout`, utilisez ``sys.stdout.buffer." "write(b'abc')``." -#: library/sys.rst:1516 +#: library/sys.rst:1548 msgid "" "However, if you are writing a library (and do not control in which context " "its code will be executed), be aware that the standard streams may be " @@ -2844,7 +2885,7 @@ msgstr "" "remplacés par des objets de type fichier tel un :class:`io.StringIO` qui " "n'ont pas l'attribut :attr:`~io.BufferedIOBase.buffer`." -#: library/sys.rst:1526 +#: library/sys.rst:1558 msgid "" "These objects contain the original values of ``stdin``, ``stderr`` and " "``stdout`` at the start of the program. They are used during finalization, " @@ -2856,7 +2897,7 @@ msgstr "" "pendant la finalisation, et peuvent être utiles pour écrire dans le vrai " "flux standard, peu importe si l'objet ``sys.std*`` a été redirigé." -#: library/sys.rst:1531 +#: library/sys.rst:1563 msgid "" "It can also be used to restore the actual files to known working file " "objects in case they have been overwritten with a broken object. However, " @@ -2868,7 +2909,7 @@ msgstr "" "cependant la bonne façon de faire serait de sauvegarder explicitement les " "flux avant de les remplacer et ainsi pouvoir les restaurer." -#: library/sys.rst:1537 +#: library/sys.rst:1569 msgid "" "Under some conditions ``stdin``, ``stdout`` and ``stderr`` as well as the " "original values ``__stdin__``, ``__stdout__`` and ``__stderr__`` can be " @@ -2881,59 +2922,84 @@ msgstr "" "Windows qui ne sont pas connectées à une console, ou les applications Python " "démarrées avec :program:`pythonw`." -#: library/sys.rst:1545 +#: library/sys.rst:1577 +msgid "" +"A frozenset of strings containing the names of standard library modules." +msgstr "" + +#: library/sys.rst:1579 +msgid "" +"It is the same on all platforms. Modules which are not available on some " +"platforms and modules disabled at Python build are also listed. All module " +"kinds are listed: pure Python, built-in, frozen and extension modules. Test " +"modules are excluded." +msgstr "" + +#: library/sys.rst:1584 +msgid "" +"For packages, only the main package is listed: sub-packages and sub-modules " +"are not listed. For example, the ``email`` package is listed, but the " +"``email.mime`` sub-package and the ``email.message`` sub-module are not " +"listed." +msgstr "" + +#: library/sys.rst:1589 +msgid "See also the :attr:`sys.builtin_module_names` list." +msgstr "" + +#: library/sys.rst:1596 msgid "" "A :term:`named tuple` holding information about the thread implementation." msgstr "" "Un :term:`named tuple` contenant des informations sur l'implémentation des " "fils d'exécution." -#: library/sys.rst:1553 +#: library/sys.rst:1604 msgid ":const:`name`" msgstr ":const:`name`" -#: library/sys.rst:1553 +#: library/sys.rst:1604 msgid "Name of the thread implementation:" msgstr "Nom de l'implémentation des fils d'exécution :" -#: library/sys.rst:1555 +#: library/sys.rst:1606 msgid "``'nt'``: Windows threads" msgstr "``'nt'`` : Fils d'exécution Windows" -#: library/sys.rst:1556 +#: library/sys.rst:1607 msgid "``'pthread'``: POSIX threads" msgstr "``'pthread'`` : Fils d'exécution POSIX" -#: library/sys.rst:1557 +#: library/sys.rst:1608 msgid "``'solaris'``: Solaris threads" msgstr "``'solaris'`` : Fils d'exécution Solaris" -#: library/sys.rst:1559 +#: library/sys.rst:1610 msgid ":const:`lock`" msgstr ":const:`lock`" -#: library/sys.rst:1559 +#: library/sys.rst:1610 msgid "Name of the lock implementation:" msgstr "Nom de l'implémentation du système de verrou :" -#: library/sys.rst:1561 +#: library/sys.rst:1612 msgid "``'semaphore'``: a lock uses a semaphore" msgstr "``'semaphore'`` : Verrou utilisant une sémaphore" -#: library/sys.rst:1562 +#: library/sys.rst:1613 msgid "``'mutex+cond'``: a lock uses a mutex and a condition variable" msgstr "" "``'mutex+cond'`` : Un verrou utilisant un *mutex* et une *condition variable*" -#: library/sys.rst:1564 +#: library/sys.rst:1615 msgid "``None`` if this information is unknown" msgstr "``None`` si cette information n'est pas connue" -#: library/sys.rst:1566 +#: library/sys.rst:1617 msgid ":const:`version`" msgstr ":const:`version`" -#: library/sys.rst:1566 +#: library/sys.rst:1617 msgid "" "Name and version of the thread library. It is a string, or ``None`` if this " "information is unknown." @@ -2941,7 +3007,7 @@ msgstr "" "Nom et version de l'implémentation des fils d'exécution, c'est une chaîne, " "ou ``None`` si ces informations sont inconnues." -#: library/sys.rst:1575 +#: library/sys.rst:1626 msgid "" "When this variable is set to an integer value, it determines the maximum " "number of levels of traceback information printed when an unhandled " @@ -2955,55 +3021,55 @@ msgstr "" "est égale ou inférieure à ``0``, la pile d'appels n'est pas affichée, seul " "seuls le type et la valeur de l'exception sont le sont." -#: library/sys.rst:1583 +#: library/sys.rst:1634 msgid "Handle an unraisable exception." msgstr "" -#: library/sys.rst:1585 +#: library/sys.rst:1636 msgid "" "Called when an exception has occurred but there is no way for Python to " "handle it. For example, when a destructor raises an exception or during " "garbage collection (:func:`gc.collect`)." msgstr "" -#: library/sys.rst:1589 +#: library/sys.rst:1640 msgid "The *unraisable* argument has the following attributes:" msgstr "Les arguments *unraisable* ont la signification suivante :" -#: library/sys.rst:1591 +#: library/sys.rst:1642 msgid "*exc_type*: Exception type." msgstr "*exc_type* : le type de l'exception ;" -#: library/sys.rst:1592 +#: library/sys.rst:1643 msgid "*exc_value*: Exception value, can be ``None``." msgstr "*exc_value*: la valeur de l'exception, peut être ``None`` ;" -#: library/sys.rst:1593 +#: library/sys.rst:1644 msgid "*exc_traceback*: Exception traceback, can be ``None``." msgstr "" "*exc_traceback* : la pile d'appels pour cette exception, peut être ``None`` ;" -#: library/sys.rst:1594 +#: library/sys.rst:1645 msgid "*err_msg*: Error message, can be ``None``." msgstr "" -#: library/sys.rst:1595 +#: library/sys.rst:1646 msgid "*object*: Object causing the exception, can be ``None``." msgstr "" -#: library/sys.rst:1597 +#: library/sys.rst:1648 msgid "" "The default hook formats *err_msg* and *object* as: ``f'{err_msg}: {object!" "r}'``; use \"Exception ignored in\" error message if *err_msg* is ``None``." msgstr "" -#: library/sys.rst:1601 +#: library/sys.rst:1652 msgid "" ":func:`sys.unraisablehook` can be overridden to control how unraisable " "exceptions are handled." msgstr "" -#: library/sys.rst:1604 +#: library/sys.rst:1655 msgid "" "Storing *exc_value* using a custom hook can create a reference cycle. It " "should be cleared explicitly to break the reference cycle when the exception " @@ -3013,7 +3079,7 @@ msgstr "" "créer un cycle de références. *exc_value* doit être nettoyée explicitement " "pour casser ce cycle lorsque l'exception n'est plus nécessaire." -#: library/sys.rst:1608 +#: library/sys.rst:1659 #, fuzzy msgid "" "Storing *object* using a custom hook can resurrect it if it is set to an " @@ -3025,17 +3091,17 @@ msgstr "" "*thread* après la fin de la fonction de rappel, pour éviter de ressusciter " "des objets." -#: library/sys.rst:1612 +#: library/sys.rst:1663 msgid "See also :func:`excepthook` which handles uncaught exceptions." msgstr "" -#: library/sys.rst:1614 +#: library/sys.rst:1665 msgid "" "Raises an :ref:`auditing event ` ``sys.unraisablehook`` with " "arguments ``hook``, ``unraisable``." msgstr "" -#: library/sys.rst:1616 +#: library/sys.rst:1667 msgid "" "Raise an auditing event ``sys.unraisablehook`` with arguments ``hook``, " "``unraisable`` when an exception that cannot be handled occurs. The " @@ -3043,7 +3109,7 @@ msgid "" "hook has been set, ``hook`` may be ``None``." msgstr "" -#: library/sys.rst:1625 +#: library/sys.rst:1676 msgid "" "A string containing the version number of the Python interpreter plus " "additional information on the build number and compiler used. This string " @@ -3058,7 +3124,7 @@ msgstr "" "utilisez plutôt :data:`version_info` et les fonctions fournies par le " "module :mod:`platform`." -#: library/sys.rst:1634 +#: library/sys.rst:1685 msgid "" "The C API version for this interpreter. Programmers may find this useful " "when debugging version conflicts between Python and extension modules." @@ -3067,7 +3133,7 @@ msgstr "" "trouver cette information utile en déboguant des conflits de versions entre " "Python et des modules d'extension." -#: library/sys.rst:1640 +#: library/sys.rst:1691 msgid "" "A tuple containing the five components of the version number: *major*, " "*minor*, *micro*, *releaselevel*, and *serial*. All values except " @@ -3085,11 +3151,11 @@ msgstr "" "attributs sont aussi accessibles par leur nom, ainsi ``sys.version_info[0]`` " "est équivalent à ``sys.version_info.major``, et ainsi de suite." -#: library/sys.rst:1648 +#: library/sys.rst:1699 msgid "Added named component attributes." msgstr "Ajout des attributs nommés." -#: library/sys.rst:1653 +#: library/sys.rst:1704 msgid "" "This is an implementation detail of the warnings framework; do not modify " "this value. Refer to the :mod:`warnings` module for more information on the " @@ -3099,7 +3165,7 @@ msgstr "" "Ne modifiez pas cette valeur. Reportez-vous au module :mod:`warnings` pour " "plus d'informations sur le gestionnaire d'avertissements." -#: library/sys.rst:1660 +#: library/sys.rst:1711 msgid "" "The version number used to form registry keys on Windows platforms. This is " "stored as string resource 1000 in the Python DLL. The value is normally the " @@ -3114,7 +3180,7 @@ msgstr "" "d'information, et la modifier n'a aucun effet sur les clés de registre " "utilisées par Python." -#: library/sys.rst:1671 +#: library/sys.rst:1722 msgid "" "A dictionary of the various implementation-specific flags passed through " "the :option:`-X` command-line option. Option names are either mapped to " @@ -3125,7 +3191,7 @@ msgstr "" "correspondent soit leur valeur, si elle est donnée explicitement, soit à :" "const:`True`. Exemple :" -#: library/sys.rst:1687 +#: library/sys.rst:1738 msgid "" "This is a CPython-specific way of accessing options passed through :option:`-" "X`. Other implementations may export them through other means, or not at " @@ -3135,11 +3201,11 @@ msgstr "" "l'option :option:`-X`. D'autres implémentations pourraient les exposer par " "d'autres moyens, ou pas du tout." -#: library/sys.rst:1695 +#: library/sys.rst:1746 msgid "Citations" msgstr "Citations" -#: library/sys.rst:1696 +#: library/sys.rst:1747 msgid "" "ISO/IEC 9899:1999. \"Programming languages -- C.\" A public draft of this " "standard is available at http://www.open-std.org/jtc1/sc22/wg14/www/docs/" @@ -3149,6 +3215,47 @@ msgstr "" "de ce standard est disponible à http://www.open-std.org/jtc1/sc22/wg14/www/" "docs/n1256.pdf\\ ." +#~ msgid "This encoding is always ASCII-compatible." +#~ msgstr "Cet encodage est toujours compatible avec ASCII." + +#~ msgid "In the UTF-8 mode, the encoding is ``utf-8`` on any platform." +#~ msgstr "" +#~ "Dans le mode UTF-8, l'encodage est ``'utf-8'`` sur toutes les plate-" +#~ "formes." + +#~ msgid "On macOS, the encoding is ``'utf-8'``." +#~ msgstr "Sur macOS, l'encodage est ``'utf-8'``." + +#~ msgid "On Unix, the encoding is the locale encoding." +#~ msgstr "Sur Unix, l'encodage est celui des paramètres régionaux." + +#~ msgid "" +#~ "On Windows, the encoding may be ``'utf-8'`` or ``'mbcs'``, depending on " +#~ "user configuration." +#~ msgstr "" +#~ "Sur Windows, l'encodage peut être ``'utf-8'`` ou ``'mbcs'``, en fonction " +#~ "des paramètres de l'utilisateur." + +#~ msgid "On Android, the encoding is ``'utf-8'``." +#~ msgstr "Sur Android, l'encodage est ``'utf-8'``." + +#~ msgid "On VxWorks, the encoding is ``'utf-8'``." +#~ msgstr "Sur VxWorks, l'encodage est ``'utf-8'``." + +#~ msgid "Return 'utf-8' in the UTF-8 mode." +#~ msgstr "Renvoie `\"utf-8\"` en mode UTF-8." + +#~ msgid "hash value returned for a nan" +#~ msgstr "valeur du *hash* pour un *nan*" + +#~ msgid "" +#~ "The character encoding is platform-dependent. Non-Windows platforms use " +#~ "the locale encoding (see :meth:`locale.getpreferredencoding()`)." +#~ msgstr "" +#~ "L'encodage des caractères dépend de la plateforme. Les plateformes non " +#~ "Windows utilisent l'encodage défini dans les paramètres régionaux (voir :" +#~ "meth:`locale.getpreferredencoding()`)." + #~ msgid ":option:`-X` ``dev``" #~ msgstr ":option:`-X` ``dev``" diff --git a/library/sysconfig.po b/library/sysconfig.po index 268deb5fd..707b5cdce 100644 --- a/library/sysconfig.po +++ b/library/sysconfig.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -76,7 +76,7 @@ msgstr "" "Retourne la valeur d'une seule variable. C'est l'équivalent de " "``get_config_vars().get(name)``." -#: library/sysconfig.rst:141 +#: library/sysconfig.rst:51 msgid "If *name* is not found, return ``None``." msgstr "" @@ -110,8 +110,8 @@ msgstr "" #: library/sysconfig.rst:77 msgid "" -"*posix_prefix*: scheme for POSIX platforms like Linux or Mac OS X. This is " -"the default scheme used when Python or a component is installed." +"*posix_prefix*: scheme for POSIX platforms like Linux or macOS. This is the " +"default scheme used when Python or a component is installed." msgstr "" #: library/sysconfig.rst:79 @@ -189,98 +189,144 @@ msgid "" msgstr "" #: library/sysconfig.rst:112 +msgid "Return the default scheme name for the current platform." +msgstr "" + +#: library/sysconfig.rst:114 +msgid "" +"This function was previously named ``_get_default_scheme()`` and considered " +"an implementation detail." +msgstr "" + +#: library/sysconfig.rst:121 +msgid "" +"Return a preferred scheme name for an installation layout specified by *key*." +msgstr "" + +#: library/sysconfig.rst:123 +msgid "*key* must be either ``\"prefix\"``, ``\"home\"``, or ``\"user\"``." +msgstr "" + +#: library/sysconfig.rst:125 +msgid "" +"The return value is a scheme name listed in :func:`get_scheme_names`. It can " +"be passed to :mod:`sysconfig` functions that take a *scheme* argument, such " +"as :func:`get_paths`." +msgstr "" + +#: library/sysconfig.rst:134 +msgid "" +"Return a dict containing preferred scheme names on the current platform. " +"Python implementers and redistributors may add their preferred schemes to " +"the ``_INSTALL_SCHEMES`` module-level global value, and modify this function " +"to return those scheme names, to e.g. provide different schemes for system " +"and language package managers to use, so packages installed by either do not " +"mix with those by the other." +msgstr "" + +#: library/sysconfig.rst:141 +msgid "" +"End users should not use this function, but :func:`get_default_scheme` and :" +"func:`get_preferred_scheme()` instead." +msgstr "" + +#: library/sysconfig.rst:149 msgid "" "Return a tuple containing all path names currently supported in :mod:" "`sysconfig`." msgstr "" -#: library/sysconfig.rst:118 +#: library/sysconfig.rst:155 msgid "" "Return an installation path corresponding to the path *name*, from the " "install scheme named *scheme*." msgstr "" -#: library/sysconfig.rst:121 +#: library/sysconfig.rst:158 msgid "" "*name* has to be a value from the list returned by :func:`get_path_names`." msgstr "" -#: library/sysconfig.rst:123 +#: library/sysconfig.rst:160 msgid "" ":mod:`sysconfig` stores installation paths corresponding to each path name, " "for each platform, with variables to be expanded. For instance the *stdlib* " "path for the *nt* scheme is: ``{base}/Lib``." msgstr "" -#: library/sysconfig.rst:127 +#: library/sysconfig.rst:164 msgid "" ":func:`get_path` will use the variables returned by :func:`get_config_vars` " "to expand the path. All variables have default values for each platform so " "one may call this function and get the default value." msgstr "" -#: library/sysconfig.rst:131 +#: library/sysconfig.rst:168 msgid "" "If *scheme* is provided, it must be a value from the list returned by :func:" "`get_scheme_names`. Otherwise, the default scheme for the current platform " "is used." msgstr "" -#: library/sysconfig.rst:135 +#: library/sysconfig.rst:172 msgid "" "If *vars* is provided, it must be a dictionary of variables that will update " "the dictionary return by :func:`get_config_vars`." msgstr "" -#: library/sysconfig.rst:138 +#: library/sysconfig.rst:175 msgid "" "If *expand* is set to ``False``, the path will not be expanded using the " "variables." msgstr "" -#: library/sysconfig.rst:146 +#: library/sysconfig.rst:178 +msgid "If *name* is not found, raise a :exc:`KeyError`." +msgstr "" + +#: library/sysconfig.rst:183 msgid "" "Return a dictionary containing all installation paths corresponding to an " "installation scheme. See :func:`get_path` for more information." msgstr "" -#: library/sysconfig.rst:149 +#: library/sysconfig.rst:186 msgid "" "If *scheme* is not provided, will use the default scheme for the current " "platform." msgstr "" -#: library/sysconfig.rst:152 +#: library/sysconfig.rst:189 msgid "" "If *vars* is provided, it must be a dictionary of variables that will update " "the dictionary used to expand the paths." msgstr "" -#: library/sysconfig.rst:155 +#: library/sysconfig.rst:192 msgid "If *expand* is set to false, the paths will not be expanded." msgstr "" -#: library/sysconfig.rst:157 +#: library/sysconfig.rst:194 msgid "" "If *scheme* is not an existing scheme, :func:`get_paths` will raise a :exc:" "`KeyError`." msgstr "" -#: library/sysconfig.rst:162 +#: library/sysconfig.rst:199 msgid "Other functions" msgstr "Autres fonctions" -#: library/sysconfig.rst:166 +#: library/sysconfig.rst:203 msgid "" "Return the ``MAJOR.MINOR`` Python version number as a string. Similar to " "``'%d.%d' % sys.version_info[:2]``." msgstr "" -#: library/sysconfig.rst:172 +#: library/sysconfig.rst:209 msgid "Return a string that identifies the current platform." msgstr "" -#: library/sysconfig.rst:174 +#: library/sysconfig.rst:211 msgid "" "This is used mainly to distinguish platform-specific build directories and " "platform-specific built distributions. Typically includes the OS name and " @@ -289,99 +335,99 @@ msgid "" "version isn't particularly important." msgstr "" -#: library/sysconfig.rst:180 +#: library/sysconfig.rst:217 msgid "Examples of returned values:" msgstr "Exemples de valeurs renvoyées :" -#: library/sysconfig.rst:182 +#: library/sysconfig.rst:219 msgid "linux-i586" msgstr "linux-i586" -#: library/sysconfig.rst:183 +#: library/sysconfig.rst:220 msgid "linux-alpha (?)" msgstr "linux-alpha (?)" -#: library/sysconfig.rst:184 +#: library/sysconfig.rst:221 msgid "solaris-2.6-sun4u" msgstr "solaris-2.6-sun4u" -#: library/sysconfig.rst:186 +#: library/sysconfig.rst:223 msgid "Windows will return one of:" msgstr "" -#: library/sysconfig.rst:188 +#: library/sysconfig.rst:225 msgid "win-amd64 (64bit Windows on AMD64, aka x86_64, Intel64, and EM64T)" msgstr "" -#: library/sysconfig.rst:189 +#: library/sysconfig.rst:226 msgid "win32 (all others - specifically, sys.platform is returned)" msgstr "" -#: library/sysconfig.rst:191 -msgid "Mac OS X can return:" +#: library/sysconfig.rst:228 +msgid "macOS can return:" msgstr "" -#: library/sysconfig.rst:193 +#: library/sysconfig.rst:230 msgid "macosx-10.6-ppc" msgstr "macosx-10.6-ppc" -#: library/sysconfig.rst:194 +#: library/sysconfig.rst:231 msgid "macosx-10.4-ppc64" msgstr "macosx-10.4-ppc64" -#: library/sysconfig.rst:195 +#: library/sysconfig.rst:232 msgid "macosx-10.3-i386" msgstr "macosx-10.3-i386" -#: library/sysconfig.rst:196 +#: library/sysconfig.rst:233 msgid "macosx-10.4-fat" msgstr "macosx-10.4-fat" -#: library/sysconfig.rst:198 +#: library/sysconfig.rst:235 msgid "" "For other non-POSIX platforms, currently just returns :data:`sys.platform`." msgstr "" -#: library/sysconfig.rst:203 +#: library/sysconfig.rst:240 msgid "" "Return ``True`` if the running Python interpreter was built from source and " "is being run from its built location, and not from a location resulting from " "e.g. running ``make install`` or installing via a binary installer." msgstr "" -#: library/sysconfig.rst:210 +#: library/sysconfig.rst:247 msgid "Parse a :file:`config.h`\\-style file." msgstr "" -#: library/sysconfig.rst:212 +#: library/sysconfig.rst:249 msgid "" "*fp* is a file-like object pointing to the :file:`config.h`\\-like file." msgstr "" -#: library/sysconfig.rst:214 +#: library/sysconfig.rst:251 msgid "" "A dictionary containing name/value pairs is returned. If an optional " "dictionary is passed in as the second argument, it is used instead of a new " "dictionary, and updated with the values read in the file." msgstr "" -#: library/sysconfig.rst:221 +#: library/sysconfig.rst:258 msgid "Return the path of :file:`pyconfig.h`." msgstr "" -#: library/sysconfig.rst:225 +#: library/sysconfig.rst:262 msgid "Return the path of :file:`Makefile`." msgstr "" -#: library/sysconfig.rst:228 +#: library/sysconfig.rst:266 msgid "Using :mod:`sysconfig` as a script" msgstr "" -#: library/sysconfig.rst:230 +#: library/sysconfig.rst:268 msgid "You can use :mod:`sysconfig` as a script with Python's *-m* option:" msgstr "" -#: library/sysconfig.rst:256 +#: library/sysconfig.rst:294 msgid "" "This call will print in the standard output the information returned by :" "func:`get_platform`, :func:`get_python_version`, :func:`get_path` and :func:" diff --git a/library/tarfile.po b/library/tarfile.po index 73c186758..f19f36df7 100644 --- a/library/tarfile.po +++ b/library/tarfile.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-12-17 16:05+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-04-11 07:53+0100\n" "Last-Translator: Clément Savalle \n" "Language-Team: FRENCH \n" @@ -279,6 +279,16 @@ msgstr "" "(par défaut à ``9``) pour spécifier le niveau de compression du fichier." #: library/tarfile.rst:105 +#, fuzzy +msgid "" +"For modes ``'w:xz'`` and ``'x:xz'``, :func:`tarfile.open` accepts the " +"keyword argument *preset* to specify the compression level of the file." +msgstr "" +"Pour les modes ``'w:gz'``, ``'r:gz'``, ``'w:bz2'``, ``'r:bz2'``, ``'x:gz'``, " +"``'x:bz2'``, :func:`tarfile.open` accepte l'argument nommé *compresslevel* " +"(par défaut à ``9``) pour spécifier le niveau de compression du fichier." + +#: library/tarfile.rst:108 msgid "" "For special purposes, there is a second format for *mode*: ``'filemode|" "[compression]'``. :func:`tarfile.open` will return a :class:`TarFile` " @@ -303,97 +313,97 @@ msgstr "" "objet :class:`TarFile` est limité en ce qu'il ne permet pas l'accès " "aléatoire, voir :ref:`tar-examples`. Les modes actuellement possibles :" -#: library/tarfile.rst:117 +#: library/tarfile.rst:120 msgid "Mode" msgstr "Mode" -#: library/tarfile.rst:117 +#: library/tarfile.rst:120 msgid "Action" msgstr "Action" -#: library/tarfile.rst:119 +#: library/tarfile.rst:122 msgid "``'r|*'``" msgstr "``'r|*'``" -#: library/tarfile.rst:119 +#: library/tarfile.rst:122 msgid "Open a *stream* of tar blocks for reading with transparent compression." msgstr "" "Ouvre un *flux* des blocs de *tar* en lecture avec une compression " "transparente." -#: library/tarfile.rst:122 +#: library/tarfile.rst:125 msgid "``'r|'``" msgstr "``'r|'``" -#: library/tarfile.rst:122 +#: library/tarfile.rst:125 msgid "Open a *stream* of uncompressed tar blocks for reading." msgstr "Ouvre un *flux* de blocs *tar* non compressés en lecture." -#: library/tarfile.rst:125 +#: library/tarfile.rst:128 msgid "``'r|gz'``" msgstr "``'r|gz'``" -#: library/tarfile.rst:125 +#: library/tarfile.rst:128 msgid "Open a gzip compressed *stream* for reading." msgstr "Ouvre un flux compressé avec *gzip* en lecture." -#: library/tarfile.rst:128 +#: library/tarfile.rst:131 msgid "``'r|bz2'``" msgstr "``'r|bz2'``" -#: library/tarfile.rst:128 +#: library/tarfile.rst:131 msgid "Open a bzip2 compressed *stream* for reading." msgstr "Ouvre un *flux* compressé avec *bzip2* en lecture." -#: library/tarfile.rst:131 +#: library/tarfile.rst:134 msgid "``'r|xz'``" msgstr "``'r|xz'``" -#: library/tarfile.rst:131 +#: library/tarfile.rst:134 msgid "Open an lzma compressed *stream* for reading." msgstr "Ouvre un *flux* compressé avec *lzma* en lecture." -#: library/tarfile.rst:134 +#: library/tarfile.rst:137 msgid "``'w|'``" msgstr "``'w|'``" -#: library/tarfile.rst:134 +#: library/tarfile.rst:137 msgid "Open an uncompressed *stream* for writing." msgstr "Ouvre un *flux* non compressé en écriture." -#: library/tarfile.rst:136 +#: library/tarfile.rst:139 msgid "``'w|gz'``" msgstr "``'w|gz'``" -#: library/tarfile.rst:136 +#: library/tarfile.rst:139 msgid "Open a gzip compressed *stream* for writing." msgstr "Ouvre un *flux* compressé avec *gzip* en écriture." -#: library/tarfile.rst:139 +#: library/tarfile.rst:142 msgid "``'w|bz2'``" msgstr "``'w|bz2'``" -#: library/tarfile.rst:139 +#: library/tarfile.rst:142 msgid "Open a bzip2 compressed *stream* for writing." msgstr "Ouvre un *flux* compressé avec *bzip2* en écriture." -#: library/tarfile.rst:142 +#: library/tarfile.rst:145 msgid "``'w|xz'``" msgstr "``'w|xz'``" -#: library/tarfile.rst:142 +#: library/tarfile.rst:145 msgid "Open an lzma compressed *stream* for writing." msgstr "Ouvre un *flux* compressé avec *lzma* en écriture." -#: library/tarfile.rst:333 +#: library/tarfile.rst:336 msgid "The ``'x'`` (exclusive creation) mode was added." msgstr "le mode ``'x'`` (création exclusive) a été ajouté." -#: library/tarfile.rst:336 library/tarfile.rst:505 +#: library/tarfile.rst:339 library/tarfile.rst:508 msgid "The *name* parameter accepts a :term:`path-like object`." msgstr "le paramètre *name* accepte un :term:`path-like object`." -#: library/tarfile.rst:156 +#: library/tarfile.rst:159 msgid "" "Class for reading and writing tar archives. Do not use this class directly: " "use :func:`tarfile.open` instead. See :ref:`tarfile-objects`." @@ -403,7 +413,7 @@ msgstr "" "objects`." # Erreur padpo: Mauvaise conjugaison? -#: library/tarfile.rst:162 +#: library/tarfile.rst:165 msgid "" "Return :const:`True` if *name* is a tar archive file, that the :mod:" "`tarfile` module can read. *name* may be a :class:`str`, file, or file-like " @@ -413,19 +423,19 @@ msgstr "" "module :mod:`tarfile` peut lire. *name* peut être une :class:`str`, un " "ficher ou un objet fichier-compatible." -#: library/tarfile.rst:165 +#: library/tarfile.rst:168 msgid "Support for file and file-like objects." msgstr "Prise en charge des fichiers et des objets fichier-compatibles." -#: library/tarfile.rst:169 +#: library/tarfile.rst:172 msgid "The :mod:`tarfile` module defines the following exceptions:" msgstr "Le module :mod:`tarfile` définit les exceptions suivantes :" -#: library/tarfile.rst:174 +#: library/tarfile.rst:177 msgid "Base class for all :mod:`tarfile` exceptions." msgstr "Classe de base pour toutes les exceptions du module :mod:`tarfile`." -#: library/tarfile.rst:179 +#: library/tarfile.rst:182 msgid "" "Is raised when a tar archive is opened, that either cannot be handled by " "the :mod:`tarfile` module or is somehow invalid." @@ -433,7 +443,7 @@ msgstr "" "Est levée lors de l'ouverture d'une archive *tar*, qui ne peut pas être " "gérée par le module :mod:`tarfile` ou est invalide." -#: library/tarfile.rst:185 +#: library/tarfile.rst:188 msgid "" "Is raised when a compression method is not supported or when the data cannot " "be decoded properly." @@ -441,7 +451,7 @@ msgstr "" "Est levée lorsqu'une méthode de compression n'est pas prise en charge ou " "lorsque les données ne peuvent pas être décodées correctement." -#: library/tarfile.rst:191 +#: library/tarfile.rst:194 msgid "" "Is raised for the limitations that are typical for stream-like :class:" "`TarFile` objects." @@ -449,7 +459,7 @@ msgstr "" "Est levée pour les limitations typiques des objets de type flux :class:" "`TarFile`." -#: library/tarfile.rst:197 +#: library/tarfile.rst:200 msgid "" "Is raised for *non-fatal* errors when using :meth:`TarFile.extract`, but " "only if :attr:`TarFile.errorlevel`\\ ``== 2``." @@ -457,17 +467,17 @@ msgstr "" "Est levée pour des erreurs *non-fatales* lors de l'utilisation de :meth:" "`TarFile.extract`, mais uniquement si :attr:`TarFile.errorlevel`\\ `` == 2``." -#: library/tarfile.rst:203 +#: library/tarfile.rst:206 msgid "Is raised by :meth:`TarInfo.frombuf` if the buffer it gets is invalid." msgstr "" "Est levée par :meth:`TarInfo.frombuf` si le tampon qu'il obtient n'est pas " "valide." -#: library/tarfile.rst:206 +#: library/tarfile.rst:209 msgid "The following constants are available at the module level:" msgstr "Les constantes suivantes sont disponibles au niveau du module :" -#: library/tarfile.rst:210 +#: library/tarfile.rst:213 msgid "" "The default character encoding: ``'utf-8'`` on Windows, the value returned " "by :func:`sys.getfilesystemencoding` otherwise." @@ -475,7 +485,7 @@ msgstr "" "L'encodage des caractères par défaut est ``'utf-8'`` sous Windows, sinon la " "valeur renvoyée par :func:`sys.getfilesystemencoding`." -#: library/tarfile.rst:214 +#: library/tarfile.rst:217 msgid "" "Each of the following constants defines a tar archive format that the :mod:" "`tarfile` module is able to create. See section :ref:`tar-formats` for " @@ -485,19 +495,19 @@ msgstr "" "module :mod:`tarfile` est capable de créer. Voir la section :ref:`tar-" "formats` pour plus de détails." -#: library/tarfile.rst:221 +#: library/tarfile.rst:224 msgid "POSIX.1-1988 (ustar) format." msgstr "Le format *POSIX.1-1988* (*ustar*)." -#: library/tarfile.rst:226 +#: library/tarfile.rst:229 msgid "GNU tar format." msgstr "Le format GNU *tar*." -#: library/tarfile.rst:231 +#: library/tarfile.rst:234 msgid "POSIX.1-2001 (pax) format." msgstr "Le format *POSIX.1-2001* (*pax*)." -#: library/tarfile.rst:236 +#: library/tarfile.rst:239 msgid "" "The default format for creating archives. This is currently :const:" "`PAX_FORMAT`." @@ -505,7 +515,7 @@ msgstr "" "Format par défaut pour la création d'archives. C'est actuellement :const:" "`PAX_FORMAT`." -#: library/tarfile.rst:238 +#: library/tarfile.rst:241 msgid "" "The default format for new archives was changed to :const:`PAX_FORMAT` from :" "const:`GNU_FORMAT`." @@ -513,19 +523,19 @@ msgstr "" "Le format par défaut des nouvelles archives a été changé de :const:" "`GNU_FORMAT` en :const:`PAX_FORMAT`." -#: library/tarfile.rst:246 +#: library/tarfile.rst:249 msgid "Module :mod:`zipfile`" msgstr "Module :mod:`zipfile`" -#: library/tarfile.rst:246 +#: library/tarfile.rst:249 msgid "Documentation of the :mod:`zipfile` standard module." msgstr "Documentation du module standard :mod:`zipfile`." -#: library/tarfile.rst:250 +#: library/tarfile.rst:253 msgid ":ref:`archiving-operations`" msgstr ":ref:`archiving-operations`" -#: library/tarfile.rst:249 +#: library/tarfile.rst:252 msgid "" "Documentation of the higher-level archiving facilities provided by the " "standard :mod:`shutil` module." @@ -533,7 +543,7 @@ msgstr "" "Documentation des outils d'archivage de haut niveau fournis par le module " "standard :mod:`shutil`." -#: library/tarfile.rst:252 +#: library/tarfile.rst:255 msgid "" "`GNU tar manual, Basic Tar Format `_" @@ -541,17 +551,17 @@ msgstr "" "`Manuel GNU *tar*, format *tar* basique (en anglais) `_" -#: library/tarfile.rst:253 +#: library/tarfile.rst:256 msgid "Documentation for tar archive files, including GNU tar extensions." msgstr "" "Documentation pour les fichiers d'archive *tar*, y compris les extensions " "*tar* GNU." -#: library/tarfile.rst:259 +#: library/tarfile.rst:262 msgid "TarFile Objects" msgstr "Les objets *TarFile*" -#: library/tarfile.rst:261 +#: library/tarfile.rst:264 msgid "" "The :class:`TarFile` object provides an interface to a tar archive. A tar " "archive is a sequence of blocks. An archive member (a stored file) is made " @@ -566,7 +576,7 @@ msgstr "" "membre d'archive est représenté par un objet :class:`TarInfo`, voir :ref:" "`tarinfo-objects` pour plus de détails." -#: library/tarfile.rst:267 +#: library/tarfile.rst:270 msgid "" "A :class:`TarFile` object can be used as a context manager in a :keyword:" "`with` statement. It will automatically be closed when the block is " @@ -580,11 +590,11 @@ msgstr "" "en écriture ne sera pas finalisée ; seul l'objet fichier utilisé en interne " "sera fermé. Voir la section :ref:`tar-examples` pour un cas d'utilisation." -#: library/tarfile.rst:273 +#: library/tarfile.rst:276 msgid "Added support for the context management protocol." msgstr "Ajout de la prise en charge du protocole de gestion de contexte." -#: library/tarfile.rst:278 +#: library/tarfile.rst:281 msgid "" "All following arguments are optional and can be accessed as instance " "attributes as well." @@ -592,7 +602,7 @@ msgstr "" "Tous les arguments suivants sont facultatifs et sont également accessibles " "en tant qu'instance d'attributs." -#: library/tarfile.rst:281 +#: library/tarfile.rst:284 msgid "" "*name* is the pathname of the archive. *name* may be a :term:`path-like " "object`. It can be omitted if *fileobj* is given. In this case, the file " @@ -602,7 +612,7 @@ msgstr "" "`path-like object`. Il peut être omis si *fileobj* est donné. Dans ce cas, " "l'attribut :attr:`name` de l'objet fichier est utilisé s'il existe." -#: library/tarfile.rst:285 +#: library/tarfile.rst:288 msgid "" "*mode* is either ``'r'`` to read from an existing archive, ``'a'`` to append " "data to an existing file, ``'w'`` to create a new file overwriting an " @@ -614,7 +624,7 @@ msgstr "" "un nouveau fichier en écrasant un existant, ou ``'x'`` pour créer un nouveau " "fichier uniquement s'il n'existe pas déjà." -#: library/tarfile.rst:289 +#: library/tarfile.rst:292 msgid "" "If *fileobj* is given, it is used for reading or writing data. If it can be " "determined, *mode* is overridden by *fileobj*'s mode. *fileobj* will be used " @@ -624,11 +634,11 @@ msgstr "" "S'il peut être déterminé, le *mode* est remplacé par le mode de *fileobj*. " "*fileobj* sera utilisé à partir de la position 0." -#: library/tarfile.rst:295 +#: library/tarfile.rst:298 msgid "*fileobj* is not closed, when :class:`TarFile` is closed." msgstr "*fileobj* n'est pas fermé, lorsque :class:`TarFile` est fermé." -#: library/tarfile.rst:297 +#: library/tarfile.rst:300 msgid "" "*format* controls the archive format for writing. It must be one of the " "constants :const:`USTAR_FORMAT`, :const:`GNU_FORMAT` or :const:`PAX_FORMAT` " @@ -641,7 +651,7 @@ msgstr "" "sera automatiquement détecté, même si différents formats sont présents dans " "une même archive." -#: library/tarfile.rst:302 +#: library/tarfile.rst:305 msgid "" "The *tarinfo* argument can be used to replace the default :class:`TarInfo` " "class with a different one." @@ -649,7 +659,7 @@ msgstr "" "L'argument *tarinfo* peut être utilisé pour remplacer la classe par défaut :" "class:`TarInfo` par une autre." -#: library/tarfile.rst:305 +#: library/tarfile.rst:308 msgid "" "If *dereference* is :const:`False`, add symbolic and hard links to the " "archive. If it is :const:`True`, add the content of the target files to the " @@ -660,7 +670,7 @@ msgstr "" "fichiers cibles à l'archive. Cela n'a aucun effet sur les systèmes qui ne " "prennent pas en charge les liens symboliques." -#: library/tarfile.rst:309 +#: library/tarfile.rst:312 msgid "" "If *ignore_zeros* is :const:`False`, treat an empty block as the end of the " "archive. If it is :const:`True`, skip empty (and invalid) blocks and try to " @@ -672,7 +682,7 @@ msgstr "" "invalides) et essaye d'obtenir autant de membres que possible. Ceci n'est " "utile que pour lire des archives concaténées ou endommagées." -#: library/tarfile.rst:313 +#: library/tarfile.rst:316 msgid "" "*debug* can be set from ``0`` (no debug messages) up to ``3`` (all debug " "messages). The messages are written to ``sys.stderr``." @@ -680,7 +690,7 @@ msgstr "" "*debug* peut être défini de ``0`` (aucun message de débogage) à ``3`` (tous " "les messages de débogage). Les messages sont écrits dans ``sys.stderr``." -#: library/tarfile.rst:316 +#: library/tarfile.rst:319 msgid "" "If *errorlevel* is ``0``, all errors are ignored when using :meth:`TarFile." "extract`. Nevertheless, they appear as error messages in the debug output, " @@ -695,7 +705,7 @@ msgstr "" "exceptions :exc:`OSError`. Si ``2``, toutes les erreurs *non-fatales* sont " "déclenchées comme des exceptions :exc:`TarError` également." -#: library/tarfile.rst:322 +#: library/tarfile.rst:325 msgid "" "The *encoding* and *errors* arguments define the character encoding to be " "used for reading or writing the archive and how conversion errors are going " @@ -708,7 +718,7 @@ msgstr "" "des utilisateurs. Voir la section :ref:`tar-unicode` pour des informations " "détaillées." -#: library/tarfile.rst:327 +#: library/tarfile.rst:330 msgid "" "The *pax_headers* argument is an optional dictionary of strings which will " "be added as a pax global header if *format* is :const:`PAX_FORMAT`." @@ -717,13 +727,13 @@ msgstr "" "caractères qui sera ajouté en tant qu'en-tête global *pax* si le *format* " "est :const:`PAX_FORMAT`." -#: library/tarfile.rst:558 +#: library/tarfile.rst:561 msgid "Use ``'surrogateescape'`` as the default for the *errors* argument." msgstr "" "Utilise ``'surrogateescape'`` comme valeur par défaut pour l'argument " "*errors*." -#: library/tarfile.rst:342 +#: library/tarfile.rst:345 msgid "" "Alternative constructor. The :func:`tarfile.open` function is actually a " "shortcut to this classmethod." @@ -731,7 +741,7 @@ msgstr "" "Constructeur alternatif. La fonction :func:`tarfile.open` est en fait un " "raccourci vers cette méthode de classe." -#: library/tarfile.rst:348 +#: library/tarfile.rst:351 msgid "" "Return a :class:`TarInfo` object for member *name*. If *name* can not be " "found in the archive, :exc:`KeyError` is raised." @@ -739,7 +749,7 @@ msgstr "" "Renvoie un objet :class:`TarInfo` pour le membre *name*. Si *name* est " "introuvable dans l'archive, :exc:`KeyError` est levée." -#: library/tarfile.rst:353 +#: library/tarfile.rst:356 msgid "" "If a member occurs more than once in the archive, its last occurrence is " "assumed to be the most up-to-date version." @@ -747,7 +757,7 @@ msgstr "" "Si un membre apparaît plus d'une fois dans l'archive, sa dernière occurrence " "est supposée être la version la plus récente." -#: library/tarfile.rst:359 +#: library/tarfile.rst:362 msgid "" "Return the members of the archive as a list of :class:`TarInfo` objects. The " "list has the same order as the members in the archive." @@ -755,7 +765,7 @@ msgstr "" "Renvoie les membres de l'archive sous la forme d'une liste d'objets :class:" "`TarInfo`. La liste a le même ordre que les membres de l'archive." -#: library/tarfile.rst:365 +#: library/tarfile.rst:368 msgid "" "Return the members as a list of their names. It has the same order as the " "list returned by :meth:`getmembers`." @@ -763,7 +773,7 @@ msgstr "" "Renvoie les membres comme une liste de leurs noms. Il a le même ordre que la " "liste renvoyée par :meth:`getmembers`." -#: library/tarfile.rst:371 +#: library/tarfile.rst:374 msgid "" "Print a table of contents to ``sys.stdout``. If *verbose* is :const:`False`, " "only the names of the members are printed. If it is :const:`True`, output " @@ -776,11 +786,11 @@ msgstr "" "*membres* facultatifs sont fournis, il doit s'agir d'un sous-ensemble de la " "liste renvoyée par :meth:`getmembers`." -#: library/tarfile.rst:376 +#: library/tarfile.rst:379 msgid "Added the *members* parameter." msgstr "Ajout du paramètre *members*." -#: library/tarfile.rst:382 +#: library/tarfile.rst:385 msgid "" "Return the next member of the archive as a :class:`TarInfo` object, when :" "class:`TarFile` is opened for reading. Return :const:`None` if there is no " @@ -790,7 +800,7 @@ msgstr "" "lorsque la classe :class:`TarFile` est ouverte en lecture. Renvoie :const:" "`None` s'il n'y a pas." -#: library/tarfile.rst:389 +#: library/tarfile.rst:392 msgid "" "Extract all members from the archive to the current working directory or " "directory *path*. If optional *members* is given, it must be a subset of the " @@ -811,7 +821,7 @@ msgstr "" "est créé. Et, si les autorisations d'un répertoire ne permettent pas " "l'écriture, l'extraction de fichiers échoue." -#: library/tarfile.rst:423 +#: library/tarfile.rst:426 msgid "" "If *numeric_owner* is :const:`True`, the uid and gid numbers from the " "tarfile are used to set the owner/group for the extracted files. Otherwise, " @@ -821,7 +831,7 @@ msgstr "" "*tar* sont utilisés pour définir le propriétaire et le groupe des fichiers " "extraits. Sinon, les valeurs nommées du fichier *tar* sont utilisées." -#: library/tarfile.rst:403 +#: library/tarfile.rst:406 msgid "" "Never extract archives from untrusted sources without prior inspection. It " "is possible that files are created outside of *path*, e.g. members that have " @@ -833,15 +843,15 @@ msgstr "" "*chemin*, par exemple : les membres qui ont des noms de fichiers absolus " "commençant par ``\"/\"`` ou des noms de fichiers avec deux points ``\"..\"``." -#: library/tarfile.rst:439 +#: library/tarfile.rst:442 msgid "Added the *numeric_owner* parameter." msgstr "Ajout du paramètre *numeric_owner*." -#: library/tarfile.rst:442 +#: library/tarfile.rst:445 msgid "The *path* parameter accepts a :term:`path-like object`." msgstr "Le paramètre *path* accepte un :term:`path-like object`." -#: library/tarfile.rst:417 +#: library/tarfile.rst:420 msgid "" "Extract a member from the archive to the current working directory, using " "its full name. Its file information is extracted as accurately as possible. " @@ -857,7 +867,7 @@ msgstr "" "attributs de fichier (propriétaire, *mtime*, mode) sont définis sauf si " "*set_attrs* est faux." -#: library/tarfile.rst:429 +#: library/tarfile.rst:432 msgid "" "The :meth:`extract` method does not take care of several extraction issues. " "In most cases you should consider using the :meth:`extractall` method." @@ -866,15 +876,15 @@ msgstr "" "d'extraction. Dans la plupart des cas, vous devriez envisager d'utiliser la " "méthode :meth:`extractall`." -#: library/tarfile.rst:434 +#: library/tarfile.rst:437 msgid "See the warning for :meth:`extractall`." msgstr "Voir l'avertissement pour :meth:`extractall`." -#: library/tarfile.rst:436 +#: library/tarfile.rst:439 msgid "Added the *set_attrs* parameter." msgstr "Ajout du paramètre *set_attrs*." -#: library/tarfile.rst:448 +#: library/tarfile.rst:451 msgid "" "Extract a member from the archive as a file object. *member* may be a " "filename or a :class:`TarInfo` object. If *member* is a regular file or a " @@ -888,11 +898,11 @@ msgstr "" "const:`None` est renvoyé. Lève une exception :exc:`KeyError` si *member* " "n'est pas présent dans l'archive." -#: library/tarfile.rst:454 +#: library/tarfile.rst:457 msgid "Return an :class:`io.BufferedReader` object." msgstr "Renvoie un objet :class:`io.BufferedReader`." -#: library/tarfile.rst:460 +#: library/tarfile.rst:463 msgid "" "Add the file *name* to the archive. *name* may be any type of file " "(directory, fifo, symbolic link, etc.). If given, *arcname* specifies an " @@ -915,15 +925,15 @@ msgstr "" "l'objet :class:`TarInfo` sera exclu de l'archive. Voir :ref:`tar-examples` " "pour un exemple." -#: library/tarfile.rst:471 +#: library/tarfile.rst:474 msgid "Added the *filter* parameter." msgstr "Ajout du paramètre *filter*." -#: library/tarfile.rst:474 +#: library/tarfile.rst:477 msgid "Recursion adds entries in sorted order." msgstr "La récursivité ajoute les entrées dans un ordre trié." -#: library/tarfile.rst:480 +#: library/tarfile.rst:483 msgid "" "Add the :class:`TarInfo` object *tarinfo* to the archive. If *fileobj* is " "given, it should be a :term:`binary file`, and ``tarinfo.size`` bytes are " @@ -936,7 +946,7 @@ msgstr "" "pouvez créer des objets :class:`TarInfo` directement, ou en utilisant :meth:" "`gettarinfo`." -#: library/tarfile.rst:488 +#: library/tarfile.rst:491 msgid "" "Create a :class:`TarInfo` object from the result of :func:`os.stat` or " "equivalent on an existing file. The file is either named by *name*, or " @@ -954,7 +964,7 @@ msgstr "" "sinon, le nom est tiré de l'attribut *fileobj* :attr:`~io.FileIO.name`, ou " "de l'argument *name*. Le nom doit être une chaîne de texte." -#: library/tarfile.rst:497 +#: library/tarfile.rst:500 msgid "" "You can modify some of the :class:`TarInfo`’s attributes before you add it " "using :meth:`addfile`. If the file object is not an ordinary file object " @@ -971,7 +981,7 @@ msgstr "" "également être modifié, auquel cas *arcname* pourrait être une chaîne " "factice." -#: library/tarfile.rst:511 +#: library/tarfile.rst:514 msgid "" "Close the :class:`TarFile`. In write mode, two finishing zero blocks are " "appended to the archive." @@ -979,16 +989,16 @@ msgstr "" "Ferme le :class:`TarFile`. En mode écriture, deux blocs de finition à zéro " "sont ajoutés à l'archive." -#: library/tarfile.rst:517 +#: library/tarfile.rst:520 msgid "A dictionary containing key-value pairs of pax global headers." msgstr "" "Un dictionnaire contenant des paires clé-valeur d'en-têtes globaux *pax*." -#: library/tarfile.rst:524 +#: library/tarfile.rst:527 msgid "TarInfo Objects" msgstr "Les objets *TarInfo*" -#: library/tarfile.rst:526 +#: library/tarfile.rst:529 msgid "" "A :class:`TarInfo` object represents one member in a :class:`TarFile`. Aside " "from storing all required attributes of a file (like file type, size, time, " @@ -1001,7 +1011,7 @@ msgstr "" "fournit quelques méthodes utiles pour déterminer son type. Il ne contient " "pas les données du fichier lui-même." -#: library/tarfile.rst:531 +#: library/tarfile.rst:534 msgid "" ":class:`TarInfo` objects are returned by :class:`TarFile`'s methods :meth:" "`getmember`, :meth:`getmembers` and :meth:`gettarinfo`." @@ -1009,20 +1019,20 @@ msgstr "" "Les objets :class:`TarInfo` sont renvoyés par les méthodes de :class:" "`TarFile` :meth:`getmember`, :meth:`getmembers` et :meth:`gettarinfo`." -#: library/tarfile.rst:537 +#: library/tarfile.rst:540 msgid "Create a :class:`TarInfo` object." msgstr "Crée un objet :class:`TarInfo`." -#: library/tarfile.rst:542 +#: library/tarfile.rst:545 msgid "Create and return a :class:`TarInfo` object from string buffer *buf*." msgstr "" "Crée et renvoie un objet :class:`TarInfo` à partir de la chaîne tampon *buf*." -#: library/tarfile.rst:544 +#: library/tarfile.rst:547 msgid "Raises :exc:`HeaderError` if the buffer is invalid." msgstr "Lève :exc:`HeaderError` si le tampon n'est pas valide." -#: library/tarfile.rst:549 +#: library/tarfile.rst:552 msgid "" "Read the next member from the :class:`TarFile` object *tarfile* and return " "it as a :class:`TarInfo` object." @@ -1030,7 +1040,7 @@ msgstr "" "Lit le membre suivant dans l'objet :class:`TarFile` *tarfile* et le renvoie " "comme un objet :class:`TarInfo`." -#: library/tarfile.rst:555 +#: library/tarfile.rst:558 msgid "" "Create a string buffer from a :class:`TarInfo` object. For information on " "the arguments see the constructor of the :class:`TarFile` class." @@ -1039,27 +1049,27 @@ msgstr "" "Pour plus d'informations sur les arguments, voir le constructeur de la " "classe :class:`TarFile`." -#: library/tarfile.rst:562 +#: library/tarfile.rst:565 msgid "A ``TarInfo`` object has the following public data attributes:" msgstr "Un objet ``TarInfo`` a les attributs de données publics suivants :" -#: library/tarfile.rst:567 +#: library/tarfile.rst:570 msgid "Name of the archive member." msgstr "Nom du membre de l'archive." -#: library/tarfile.rst:572 +#: library/tarfile.rst:575 msgid "Size in bytes." msgstr "La taille en octets." -#: library/tarfile.rst:577 +#: library/tarfile.rst:580 msgid "Time of last modification." msgstr "L'heure de la dernière modification." -#: library/tarfile.rst:582 +#: library/tarfile.rst:585 msgid "Permission bits." msgstr "Bits d'autorisation." -#: library/tarfile.rst:587 +#: library/tarfile.rst:590 msgid "" "File type. *type* is usually one of these constants: :const:`REGTYPE`, :" "const:`AREGTYPE`, :const:`LNKTYPE`, :const:`SYMTYPE`, :const:`DIRTYPE`, :" @@ -1073,7 +1083,7 @@ msgstr "" "const:`BLKTYPE`, :const:`GNUTYPE_SPARSE`. Pour déterminer plus facilement le " "type d'un objet :class:`TarInfo`, utilisez les méthodes ``is*()`` ci-dessous." -#: library/tarfile.rst:596 +#: library/tarfile.rst:599 msgid "" "Name of the target file name, which is only present in :class:`TarInfo` " "objects of type :const:`LNKTYPE` and :const:`SYMTYPE`." @@ -1081,80 +1091,80 @@ msgstr "" "Nom du fichier cible, qui n'est présent que dans les objets :class:" "`TarInfo` de type :const:`LNKTYPE` et :const:`SYMTYPE`." -#: library/tarfile.rst:602 +#: library/tarfile.rst:605 msgid "User ID of the user who originally stored this member." msgstr "ID de l'utilisateur qui a initialement stocké ce membre." -#: library/tarfile.rst:607 +#: library/tarfile.rst:610 msgid "Group ID of the user who originally stored this member." msgstr "ID de groupe de l'utilisateur qui a initialement stocké ce membre." -#: library/tarfile.rst:612 +#: library/tarfile.rst:615 msgid "User name." msgstr "Nom d'utilisateur." -#: library/tarfile.rst:617 +#: library/tarfile.rst:620 msgid "Group name." msgstr "Nom de groupe." -#: library/tarfile.rst:622 +#: library/tarfile.rst:625 msgid "" "A dictionary containing key-value pairs of an associated pax extended header." msgstr "" "Un dictionnaire contenant des paires clé-valeur d'un en-tête étendu *pax* " "associé." -#: library/tarfile.rst:625 +#: library/tarfile.rst:628 msgid "A :class:`TarInfo` object also provides some convenient query methods:" msgstr "" "Un objet :class:`TarInfo` fournit également des méthodes de requête " "pratiques :" -#: library/tarfile.rst:630 +#: library/tarfile.rst:633 msgid "Return :const:`True` if the :class:`Tarinfo` object is a regular file." msgstr "" "Renvoie :const:`True` si l'objet :class:`Tarinfo` est un fichier normal." -#: library/tarfile.rst:635 +#: library/tarfile.rst:638 msgid "Same as :meth:`isfile`." msgstr "Identique à :meth:`isfile`." -#: library/tarfile.rst:640 +#: library/tarfile.rst:643 msgid "Return :const:`True` if it is a directory." msgstr "Renvoie :const:`True` si c'est un dossier." -#: library/tarfile.rst:645 +#: library/tarfile.rst:648 msgid "Return :const:`True` if it is a symbolic link." msgstr "Renvoie :const:`True` s'il s'agit d'un lien symbolique." -#: library/tarfile.rst:650 +#: library/tarfile.rst:653 msgid "Return :const:`True` if it is a hard link." msgstr "Renvoie :const:`True` s'il s'agit d'un lien physique." -#: library/tarfile.rst:655 +#: library/tarfile.rst:658 msgid "Return :const:`True` if it is a character device." msgstr "Renvoie :const:`True` s'il s'agit d'un périphérique de caractères." -#: library/tarfile.rst:660 +#: library/tarfile.rst:663 msgid "Return :const:`True` if it is a block device." msgstr "Renvoie :const:`True` s'il s'agit d'un périphérique de bloc." -#: library/tarfile.rst:665 +#: library/tarfile.rst:668 msgid "Return :const:`True` if it is a FIFO." msgstr "Renvoie :const:`True` s'il s'agit d'un tube nommé (*FIFO*)." -#: library/tarfile.rst:670 +#: library/tarfile.rst:673 msgid "" "Return :const:`True` if it is one of character device, block device or FIFO." msgstr "" "Renvoie :const:`True` s'il s'agit d'un périphérique de caractères, d'un " "périphérique de bloc ou d'un tube nommé." -#: library/tarfile.rst:677 +#: library/tarfile.rst:680 msgid "Command-Line Interface" msgstr "Interface en ligne de commande" -#: library/tarfile.rst:681 +#: library/tarfile.rst:684 msgid "" "The :mod:`tarfile` module provides a simple command-line interface to " "interact with tar archives." @@ -1162,7 +1172,7 @@ msgstr "" "Le module :mod:`tarfile` fournit une interface de ligne de commande simple " "pour interagir avec les archives *tar*." -#: library/tarfile.rst:684 +#: library/tarfile.rst:687 msgid "" "If you want to create a new tar archive, specify its name after the :option:" "`-c` option and then list the filename(s) that should be included:" @@ -1170,11 +1180,11 @@ msgstr "" "Si vous souhaitez créer une nouvelle archive *tar*, spécifiez son nom après " "l'option :option:`-c`, puis répertorie-le ou les noms de fichiers à inclure :" -#: library/tarfile.rst:691 +#: library/tarfile.rst:694 msgid "Passing a directory is also acceptable:" msgstr "Passer un répertoire est aussi possible :" -#: library/tarfile.rst:697 +#: library/tarfile.rst:700 msgid "" "If you want to extract a tar archive into the current directory, use the :" "option:`-e` option:" @@ -1182,7 +1192,7 @@ msgstr "" "Si vous souhaitez extraire une archive *tar* dans le répertoire courant, " "utilisez l'option :option:`-e` :" -#: library/tarfile.rst:704 +#: library/tarfile.rst:707 msgid "" "You can also extract a tar archive into a different directory by passing the " "directory's name:" @@ -1190,49 +1200,49 @@ msgstr "" "Vous pouvez également extraire une archive *tar* dans un autre répertoire en " "passant le nom du répertoire :" -#: library/tarfile.rst:711 +#: library/tarfile.rst:714 msgid "For a list of the files in a tar archive, use the :option:`-l` option:" msgstr "" "Pour une liste des fichiers dans une archive *tar*, utilisez l'option :" "option:`-l` :" -#: library/tarfile.rst:719 +#: library/tarfile.rst:722 msgid "Command-line options" msgstr "Options de la ligne de commande" -#: library/tarfile.rst:724 +#: library/tarfile.rst:727 msgid "List files in a tarfile." msgstr "Liste les fichiers dans une archive *tar*." -#: library/tarfile.rst:729 +#: library/tarfile.rst:732 msgid "Create tarfile from source files." msgstr "Crée une archive *tar* à partir des fichiers sources." -#: library/tarfile.rst:734 +#: library/tarfile.rst:737 msgid "" "Extract tarfile into the current directory if *output_dir* is not specified." msgstr "" "Extrait l'archive *tar* dans le répertoire courant si *output_dir* n'est pas " "spécifié." -#: library/tarfile.rst:739 +#: library/tarfile.rst:742 msgid "Test whether the tarfile is valid or not." msgstr "Teste si l'archive *tar* est valide ou non." -#: library/tarfile.rst:743 +#: library/tarfile.rst:746 msgid "Verbose output." msgstr "Sortie verbeuse." -#: library/tarfile.rst:748 +#: library/tarfile.rst:751 msgid "Examples" msgstr "Exemples" -#: library/tarfile.rst:750 +#: library/tarfile.rst:753 msgid "How to extract an entire tar archive to the current working directory::" msgstr "" "Comment extraire une archive *tar* dans le dossier de travail courant ::" -#: library/tarfile.rst:757 +#: library/tarfile.rst:760 msgid "" "How to extract a subset of a tar archive with :meth:`TarFile.extractall` " "using a generator function instead of a list::" @@ -1240,17 +1250,17 @@ msgstr "" "Comment extraire un sous-ensemble d'une archive *tar* avec :meth:`TarFile." "extractall` en utilisant une fonction de générateur au lieu d'une liste ::" -#: library/tarfile.rst:772 +#: library/tarfile.rst:775 msgid "How to create an uncompressed tar archive from a list of filenames::" msgstr "" "Comment créer une archive *tar* non compressée à partir d'une liste de noms " "de fichiers ::" -#: library/tarfile.rst:780 +#: library/tarfile.rst:783 msgid "The same example using the :keyword:`with` statement::" msgstr "Le même exemple en utilisant l'instruction :keyword:`with` ::" -#: library/tarfile.rst:787 +#: library/tarfile.rst:790 msgid "" "How to read a gzip compressed tar archive and display some member " "information::" @@ -1258,7 +1268,7 @@ msgstr "" "Comment lire une archive *tar* compressée avec *gzip* et afficher des " "informations des membres ::" -#: library/tarfile.rst:801 +#: library/tarfile.rst:804 msgid "" "How to create an archive and reset the user information using the *filter* " "parameter in :meth:`TarFile.add`::" @@ -1266,11 +1276,11 @@ msgstr "" "Comment créer une archive et réinitialiser les informations de l'utilisateur " "en utilisant le paramètre *filter* dans :meth:`TarFile.add` ::" -#: library/tarfile.rst:817 +#: library/tarfile.rst:820 msgid "Supported tar formats" msgstr "Formats *tar* pris en charge" -#: library/tarfile.rst:819 +#: library/tarfile.rst:822 msgid "" "There are three tar formats that can be created with the :mod:`tarfile` " "module:" @@ -1278,7 +1288,7 @@ msgstr "" "Il existe trois formats *tar* qui peuvent être créés avec le module :mod:" "`tarfile` :" -#: library/tarfile.rst:821 +#: library/tarfile.rst:824 msgid "" "The POSIX.1-1988 ustar format (:const:`USTAR_FORMAT`). It supports filenames " "up to a length of at best 256 characters and linknames up to 100 characters. " @@ -1290,7 +1300,7 @@ msgstr "" "noms de liens jusqu'à 100 caractères. La taille maximale du fichier est de " "8 Go. Il s'agit d'un format ancien et limité mais largement pris en charge." -#: library/tarfile.rst:826 +#: library/tarfile.rst:829 msgid "" "The GNU tar format (:const:`GNU_FORMAT`). It supports long filenames and " "linknames, files bigger than 8 GiB and sparse files. It is the de facto " @@ -1303,7 +1313,7 @@ msgstr "" "`tarfile` prend entièrement en charge les extensions GNU *tar* pour les noms " "longs, la prise en charge des fichiers discontinus est en lecture seule." -#: library/tarfile.rst:831 +#: library/tarfile.rst:834 msgid "" "The POSIX.1-2001 pax format (:const:`PAX_FORMAT`). It is the most flexible " "format with virtually no limits. It supports long filenames and linknames, " @@ -1324,7 +1334,7 @@ msgstr "" "pris en charge. Il s'agit du format par défaut actuel pour les nouvelles " "archives." -#: library/tarfile.rst:839 +#: library/tarfile.rst:842 msgid "" "It extends the existing *ustar* format with extra headers for information " "that cannot be stored otherwise. There are two flavours of pax headers: " @@ -1339,7 +1349,7 @@ msgstr "" "et affectent tous les fichiers suivants. Toutes les données d'un en-tête " "*pax* sont encodées en *UTF-8* pour des raisons de portabilité." -#: library/tarfile.rst:845 +#: library/tarfile.rst:848 msgid "" "There are some more variants of the tar format which can be read, but not " "created:" @@ -1347,7 +1357,7 @@ msgstr "" "Il existe d'autres variantes du format *tar* qui peuvent être lues, mais pas " "créées" -#: library/tarfile.rst:848 +#: library/tarfile.rst:851 msgid "" "The ancient V7 format. This is the first tar format from Unix Seventh " "Edition, storing only regular files and directories. Names must not be " @@ -1361,7 +1371,7 @@ msgstr "" "d'utilisateur / groupe. Certaines archives ont des sommes de contrôle d'en-" "tête mal calculées dans le cas de champs avec des caractères non ASCII." -#: library/tarfile.rst:853 +#: library/tarfile.rst:856 msgid "" "The SunOS tar extended format. This format is a variant of the POSIX.1-2001 " "pax format, but is not compatible." @@ -1369,11 +1379,11 @@ msgstr "" "Format étendu *SunOS* *tar*. Ce format est une variante du format " "*POSIX.1-2001* *pax*, mais n'est pas compatible." -#: library/tarfile.rst:859 +#: library/tarfile.rst:862 msgid "Unicode issues" msgstr "Problèmes *unicode*" -#: library/tarfile.rst:861 +#: library/tarfile.rst:864 msgid "" "The tar format was originally conceived to make backups on tape drives with " "the main focus on preserving file system information. Nowadays tar archives " @@ -1403,7 +1413,7 @@ msgstr "" "métadonnées non ASCII en utilisant l'encodage universel des caractères " "*UTF-8*." -#: library/tarfile.rst:873 +#: library/tarfile.rst:876 msgid "" "The details of character conversion in :mod:`tarfile` are controlled by the " "*encoding* and *errors* keyword arguments of the :class:`TarFile` class." @@ -1412,7 +1422,7 @@ msgstr "" "contrôlés par les arguments nommés *encoding* et *errors* de la classe :" "class:`TarFile`." -#: library/tarfile.rst:876 +#: library/tarfile.rst:879 msgid "" "*encoding* defines the character encoding to use for the metadata in the " "archive. The default value is :func:`sys.getfilesystemencoding` or " @@ -1426,7 +1436,7 @@ msgstr "" "écrite, les métadonnées doivent être décodées ou encodées. Si l'encodage " "n'est pas défini correctement, cette conversion peut échouer." -#: library/tarfile.rst:882 +#: library/tarfile.rst:885 msgid "" "The *errors* argument defines how characters are treated that cannot be " "converted. Possible values are listed in section :ref:`error-handlers`. The " @@ -1439,7 +1449,7 @@ msgstr "" "utilise également pour ses appels de système de fichiers, voir :ref:`os-" "filenames`." -#: library/tarfile.rst:887 +#: library/tarfile.rst:890 msgid "" "For :const:`PAX_FORMAT` archives (the default), *encoding* is generally not " "needed because all the metadata is stored using *UTF-8*. *encoding* is only " diff --git a/library/tempfile.po b/library/tempfile.po index 87b650c71..dc2033ba3 100644 --- a/library/tempfile.po +++ b/library/tempfile.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-12-11 11:19+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -136,7 +136,7 @@ msgstr "" "L'option :py:data:`os.O_TMPFILE` est utilisé s'il est disponible et " "fonctionne (Linux exclusivement, nécessite un noyau Linux 3.11 ou plus)." -#: library/tempfile.rst:90 library/tempfile.rst:185 +#: library/tempfile.rst:90 library/tempfile.rst:194 msgid "" "Raises an :ref:`auditing event ` ``tempfile.mkstemp`` with " "argument ``fullpath``." @@ -222,11 +222,12 @@ msgid "the truncate method now accepts a ``size`` argument." msgstr "la méthode de troncature accepte maintenant un argument ``size``." #: library/tempfile.rst:123 +#, fuzzy msgid "" "This function securely creates a temporary directory using the same rules " "as :func:`mkdtemp`. The resulting object can be used as a context manager " "(see :ref:`tempfile-examples`). On completion of the context or destruction " -"of the temporary directory object the newly created temporary directory and " +"of the temporary directory object, the newly created temporary directory and " "all its contents are removed from the filesystem." msgstr "" "Cette fonction crée un répertoire temporaire de manière sécurisée utilisant " @@ -250,12 +251,16 @@ msgstr "" #: library/tempfile.rst:134 msgid "" "The directory can be explicitly cleaned up by calling the :func:`cleanup` " -"method." +"method. If *ignore_cleanup_errors* is true, any unhandled exceptions during " +"explicit or implicit cleanup (such as a :exc:`PermissionError` removing open " +"files on Windows) will be ignored, and the remaining removable items deleted " +"on a \"best-effort\" basis. Otherwise, errors will be raised in whatever " +"context cleanup occurs (the :func:`cleanup` call, exiting the context " +"manager, when the object is garbage-collected or during interpreter " +"shutdown)." msgstr "" -"Le répertoire peut être explicitement nettoyé en appelant la méthode :func:" -"`cleanup`." -#: library/tempfile.rst:211 +#: library/tempfile.rst:220 msgid "" "Raises an :ref:`auditing event ` ``tempfile.mkdtemp`` with " "argument ``fullpath``." @@ -263,7 +268,12 @@ msgstr "" "Lève un :ref:`évènement d'audit ` ``tempfile.mkdtemp`` avec comme " "argument ``fullpath``." -#: library/tempfile.rst:144 +#: library/tempfile.rst:147 +#, fuzzy +msgid "Added *ignore_cleanup_errors* parameter." +msgstr "Le paramètre *errors* a été ajouté." + +#: library/tempfile.rst:153 msgid "" "Creates a temporary file in the most secure manner possible. There are no " "race conditions in the file's creation, assuming that the platform properly " @@ -282,7 +292,7 @@ msgstr "" "alors le fichier n'est exécutable par personne. Le descripteur de fichier " "n'est pas hérité par les processus fils." -#: library/tempfile.rst:152 +#: library/tempfile.rst:161 msgid "" "Unlike :func:`TemporaryFile`, the user of :func:`mkstemp` is responsible for " "deleting the temporary file when done with it." @@ -291,7 +301,7 @@ msgstr "" "est responsable de la suppression du fichier temporaire quand il n'en a plus " "besoin." -#: library/tempfile.rst:155 +#: library/tempfile.rst:164 msgid "" "If *suffix* is not ``None``, the file name will end with that suffix, " "otherwise there will be no suffix. :func:`mkstemp` does not put a dot " @@ -303,7 +313,7 @@ msgstr "" "point entre le nom du fichier et le suffixe. Si vous en avez besoin, mettez " "le point au début de *suffix*." -#: library/tempfile.rst:160 +#: library/tempfile.rst:169 msgid "" "If *prefix* is not ``None``, the file name will begin with that prefix; " "otherwise, a default prefix is used. The default is the return value of :" @@ -313,7 +323,7 @@ msgstr "" "préfixe, sinon un préfixe par défaut est utilisé. La valeur par défaut est " "la valeur retournée par :func:`gettempprefix` ou :func:`gettempprefixb`." -#: library/tempfile.rst:164 +#: library/tempfile.rst:173 msgid "" "If *dir* is not ``None``, the file will be created in that directory; " "otherwise, a default directory is used. The default directory is chosen " @@ -332,7 +342,7 @@ msgstr "" "ne pas avoir besoin de le mettre entre guillemets lorsque celui-ci est passé " "à des commandes externes via ``os.popen()``." -#: library/tempfile.rst:172 +#: library/tempfile.rst:181 msgid "" "If any of *suffix*, *prefix*, and *dir* are not ``None``, they must be the " "same type. If they are bytes, the returned name will be bytes instead of " @@ -344,13 +354,13 @@ msgstr "" "sera de type ``bytes`` plutôt que de type ``str``. Si vous voulez forcer la " "valeur renvoyée en ``bytes``, passez ``suffix=b''``." -#: library/tempfile.rst:178 +#: library/tempfile.rst:187 msgid "" "If *text* is specified and true, the file is opened in text mode. Otherwise, " "(the default) the file is opened in binary mode." msgstr "" -#: library/tempfile.rst:181 +#: library/tempfile.rst:190 msgid "" ":func:`mkstemp` returns a tuple containing an OS-level handle to an open " "file (as would be returned by :func:`os.open`) and the absolute pathname of " @@ -361,7 +371,7 @@ msgstr "" "que renvoie :func:`os.open`) et le chemin d'accès absolu de ce fichier, dans " "cet ordre." -#: library/tempfile.rst:213 +#: library/tempfile.rst:222 msgid "" "*suffix*, *prefix*, and *dir* may now be supplied in bytes in order to " "obtain a bytes return value. Prior to this, only str was allowed. *suffix* " @@ -373,14 +383,14 @@ msgstr "" "seul autorisé. *suffix* et *prefix* acceptent maintenant la valeur par " "défaut ``None`` pour que la valeur par défaut appropriée soit utilisée." -#: library/tempfile.rst:219 +#: library/tempfile.rst:228 #, fuzzy msgid "The *dir* parameter now accepts a :term:`path-like object`." msgstr "" "Le paramètre *file* accepte un objet fichier-compatible :term:`path-like " "object`." -#: library/tempfile.rst:199 +#: library/tempfile.rst:208 msgid "" "Creates a temporary directory in the most secure manner possible. There are " "no race conditions in the directory's creation. The directory is readable, " @@ -391,7 +401,7 @@ msgstr "" "du répertoire. Le répertoire est accessible en lecture, en écriture, et son " "contenu lisible uniquement pour l'ID de l'utilisateur créateur." -#: library/tempfile.rst:203 +#: library/tempfile.rst:212 msgid "" "The user of :func:`mkdtemp` is responsible for deleting the temporary " "directory and its contents when done with it." @@ -399,7 +409,7 @@ msgstr "" "L'utilisateur de :func:`mkdtemp` est responsable de la suppression du " "répertoire temporaire et de son contenu lorsqu'il n'en a plus besoin." -#: library/tempfile.rst:206 +#: library/tempfile.rst:215 msgid "" "The *prefix*, *suffix*, and *dir* arguments are the same as for :func:" "`mkstemp`." @@ -407,11 +417,11 @@ msgstr "" "Les arguments *prefix*, *suffix*, et *dir* sont les mêmes que pour :func:" "`mkstemp`." -#: library/tempfile.rst:209 +#: library/tempfile.rst:218 msgid ":func:`mkdtemp` returns the absolute pathname of the new directory." msgstr ":func:`mkdtemp` renvoie le chemin absolu du nouveau répertoire." -#: library/tempfile.rst:225 +#: library/tempfile.rst:234 msgid "" "Return the name of the directory used for temporary files. This defines the " "default value for the *dir* argument to all functions in this module." @@ -419,7 +429,7 @@ msgstr "" "Renvoie le nom du répertoire utilisé pour les fichiers temporaires. C'est la " "valeur par défaut pour l'argument *dir* de toutes les fonctions de ce module." -#: library/tempfile.rst:229 +#: library/tempfile.rst:238 msgid "" "Python searches a standard list of directories to find one which the calling " "user can create files in. The list is:" @@ -427,26 +437,26 @@ msgstr "" "Python cherche un répertoire parmi une liste standard de répertoires dans " "lequel l'utilisateur final peut créer des fichiers. La liste est :" -#: library/tempfile.rst:232 +#: library/tempfile.rst:241 msgid "The directory named by the :envvar:`TMPDIR` environment variable." msgstr "" "Le répertoire correspondant à la variable d'environnement :envvar:`TMPDIR`." -#: library/tempfile.rst:234 +#: library/tempfile.rst:243 msgid "The directory named by the :envvar:`TEMP` environment variable." msgstr "" "Le répertoire correspondant à la variable d'environnement :envvar:`TEMP`." -#: library/tempfile.rst:236 +#: library/tempfile.rst:245 msgid "The directory named by the :envvar:`TMP` environment variable." msgstr "" "Le répertoire correspondant à la variable d'environnement :envvar:`TMP`." -#: library/tempfile.rst:238 +#: library/tempfile.rst:247 msgid "A platform-specific location:" msgstr "Un emplacement dépendant à la plateforme :" -#: library/tempfile.rst:240 +#: library/tempfile.rst:249 msgid "" "On Windows, the directories :file:`C:\\\\TEMP`, :file:`C:\\\\TMP`, :file:`\\" "\\TEMP`, and :file:`\\\\TMP`, in that order." @@ -454,7 +464,7 @@ msgstr "" "Sur Windows, les répertoires :file:`C:\\\\TEMP`, :file:`C:\\\\TMP`, :file:`\\" "\\TEMP`, et :file:`\\\\TMP`, dans cet ordre." -#: library/tempfile.rst:243 +#: library/tempfile.rst:252 msgid "" "On all other platforms, the directories :file:`/tmp`, :file:`/var/tmp`, and :" "file:`/usr/tmp`, in that order." @@ -462,11 +472,11 @@ msgstr "" "Sur toutes les autres plate-formes, les répertoires :file:`/tmp`, :file:`/" "var/tmp`, et :file:`/usr/tmp`, dans cet ordre." -#: library/tempfile.rst:246 +#: library/tempfile.rst:255 msgid "As a last resort, the current working directory." msgstr "En dernier ressort, le répertoire de travail courant." -#: library/tempfile.rst:248 +#: library/tempfile.rst:257 msgid "" "The result of this search is cached, see the description of :data:`tempdir` " "below." @@ -474,12 +484,18 @@ msgstr "" "Le résultat de cette recherche est mis en cache, voir la description de :" "data:`tempdir` dessous." -#: library/tempfile.rst:253 +#: library/tempfile.rst:262 +msgid "" +"Always returns a str. Previously it would return any :data:`tempdir` value " +"regardless of type so long as it was not ``None``." +msgstr "" + +#: library/tempfile.rst:267 msgid "Same as :func:`gettempdir` but the return value is in bytes." msgstr "" "Similaire à :func:`gettempdir` mais la valeur retournée est en *bytes*." -#: library/tempfile.rst:259 +#: library/tempfile.rst:273 msgid "" "Return the filename prefix used to create temporary files. This does not " "contain the directory component." @@ -487,18 +503,20 @@ msgstr "" "Renvoie le préfixe de nom de fichier utilisé pour créer les fichiers " "temporaires. Cela ne contient pas le nom du répertoire." -#: library/tempfile.rst:264 +#: library/tempfile.rst:278 msgid "Same as :func:`gettempprefix` but the return value is in bytes." msgstr "" "Similaire à :func:`gettempprefix` mais la valeur retournée est en *bytes*." -#: library/tempfile.rst:268 +#: library/tempfile.rst:282 +#, fuzzy msgid "" "The module uses a global variable to store the name of the directory used " "for temporary files returned by :func:`gettempdir`. It can be set directly " "to override the selection process, but this is discouraged. All functions in " -"this module take a *dir* argument which can be used to specify the directory " -"and this is the recommended approach." +"this module take a *dir* argument which can be used to specify the " +"directory. This is the recommended approach that does not surprise other " +"unsuspecting code by changing global API behavior." msgstr "" "Le module utilise une variable globale pour stocker le nom du répertoire " "utilisé pour les fichiers temporaires renvoyés par :func:`gettempdir`. Vous " @@ -507,16 +525,18 @@ msgstr "" "prennent un argument *dir* qui peut être utilisé pour spécifier le " "répertoire. Il s'agit de la méthode recommandée." -#: library/tempfile.rst:276 +#: library/tempfile.rst:291 +#, fuzzy msgid "" "When set to a value other than ``None``, this variable defines the default " -"value for the *dir* argument to the functions defined in this module." +"value for the *dir* argument to the functions defined in this module, " +"including its type, bytes or str. It cannot be a :term:`path-like object`." msgstr "" "Quand une valeur autre que ``None`` est spécifiée, cette variable définit la " "valeur par défaut pour l'argument *dir* des fonctions définies dans ce " "module." -#: library/tempfile.rst:280 +#: library/tempfile.rst:296 msgid "" "If ``tempdir`` is ``None`` (the default) at any call to any of the above " "functions except :func:`gettempprefix` it is initialized following the " @@ -526,20 +546,30 @@ msgstr "" "fonctions ci-dessus, sauf :func:`gettempprefix`, la variable est initialisée " "suivant l'algorithme décrit dans :func:`gettempdir`." -#: library/tempfile.rst:287 +#: library/tempfile.rst:302 +msgid "" +"Beware that if you set ``tempdir`` to a bytes value, there is a nasty side " +"effect: The global default return type of :func:`mkstemp` and :func:" +"`mkdtemp` changes to bytes when no explicit ``prefix``, ``suffix``, or " +"``dir`` arguments of type str are supplied. Please do not write code " +"expecting or depending on this. This awkward behavior is maintained for " +"compatibility with the historical implementation." +msgstr "" + +#: library/tempfile.rst:313 msgid "Examples" msgstr "Exemples" -#: library/tempfile.rst:289 +#: library/tempfile.rst:315 msgid "Here are some examples of typical usage of the :mod:`tempfile` module::" msgstr "" "Voici quelques exemples classiques d'utilisation du module :mod:`tempfile` ::" -#: library/tempfile.rst:320 +#: library/tempfile.rst:347 msgid "Deprecated functions and variables" msgstr "Fonctions et variables obsolètes" -#: library/tempfile.rst:322 +#: library/tempfile.rst:349 msgid "" "A historical way to create temporary files was to first generate a file name " "with the :func:`mktemp` function and then create a file using this name. " @@ -558,11 +588,11 @@ msgstr "" "de créer le fichier immédiatement. Cette approche est utilisée par :func:" "`mkstemp` et les autres fonctions décrites plus haut." -#: library/tempfile.rst:333 +#: library/tempfile.rst:360 msgid "Use :func:`mkstemp` instead." msgstr "Utilisez :func:`mkstemp` à la place." -#: library/tempfile.rst:336 +#: library/tempfile.rst:363 msgid "" "Return an absolute pathname of a file that did not exist at the time the " "call is made. The *prefix*, *suffix*, and *dir* arguments are similar to " @@ -574,7 +604,7 @@ msgstr "" "func:`mkstemp` mais les noms de fichiers en *bytes*, ``sufix=None`` et " "``prefix=None`` ne sont pas implémentées." -#: library/tempfile.rst:343 +#: library/tempfile.rst:370 msgid "" "Use of this function may introduce a security hole in your program. By the " "time you get around to doing anything with the file name it returns, someone " @@ -588,6 +618,13 @@ msgstr "" "`mktemp` peut être remplacée facilement avec :func:`NamedTemporaryFile` en y " "passant le paramètre ``delete=False`` ::" +#~ msgid "" +#~ "The directory can be explicitly cleaned up by calling the :func:`cleanup` " +#~ "method." +#~ msgstr "" +#~ "Le répertoire peut être explicitement nettoyé en appelant la méthode :" +#~ "func:`cleanup`." + #~ msgid "" #~ "If *text* is specified, it indicates whether to open the file in binary " #~ "mode (the default) or text mode. On some platforms, this makes no " diff --git a/library/test.po b/library/test.po index e1d951485..75c301056 100644 --- a/library/test.po +++ b/library/test.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-12-17 16:05+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -274,119 +274,83 @@ msgid "Path for shell if not on Windows; otherwise ``None``." msgstr "" #: library/test.rst:252 -msgid "A non-ASCII character encodable by :func:`os.fsencode`." -msgstr "" - -#: library/test.rst:257 -msgid "" -"Set to a name that is safe to use as the name of a temporary file. Any " -"temporary file that is created should be closed and unlinked (removed)." -msgstr "" - -#: library/test.rst:263 -msgid "Set to a non-ASCII name for a temporary file." -msgstr "" - -#: library/test.rst:268 -msgid "Set to :func:`sys.getfilesystemencoding`." -msgstr "" - -#: library/test.rst:273 -msgid "" -"Set to a filename (str type) that should not be able to be encoded by file " -"system encoding in strict mode. It may be ``None`` if it's not possible to " -"generate such a filename." -msgstr "" - -#: library/test.rst:280 -msgid "" -"Set to a filename (bytes type) that should not be able to be decoded by file " -"system encoding in strict mode. It may be ``None`` if it's not possible to " -"generate such a filename." -msgstr "" - -#: library/test.rst:287 -msgid "Set to a filename containing the :data:`FS_NONASCII` character." -msgstr "" - -#: library/test.rst:292 msgid "" "Timeout in seconds for tests using a network server listening on the network " "local loopback interface like ``127.0.0.1``." msgstr "" -#: library/test.rst:295 +#: library/test.rst:255 msgid "" "The timeout is long enough to prevent test failure: it takes into account " "that the client and the server can run in different threads or even " "different processes." msgstr "" -#: library/test.rst:299 +#: library/test.rst:259 msgid "" "The timeout should be long enough for :meth:`~socket.socket.connect`, :meth:" "`~socket.socket.recv` and :meth:`~socket.socket.send` methods of :class:" "`socket.socket`." msgstr "" -#: library/test.rst:303 +#: library/test.rst:263 msgid "Its default value is 5 seconds." msgstr "" -#: library/test.rst:305 +#: library/test.rst:265 msgid "See also :data:`INTERNET_TIMEOUT`." msgstr "" -#: library/test.rst:310 -msgid "Timeout in seconds for network requests going to the Internet." +#: library/test.rst:270 +msgid "Timeout in seconds for network requests going to the internet." msgstr "" -#: library/test.rst:312 +#: library/test.rst:272 msgid "" "The timeout is short enough to prevent a test to wait for too long if the " -"Internet request is blocked for whatever reason." +"internet request is blocked for whatever reason." msgstr "" -#: library/test.rst:315 +#: library/test.rst:275 msgid "" "Usually, a timeout using :data:`INTERNET_TIMEOUT` should not mark a test as " "failed, but skip the test instead: see :func:`~test.support.socket_helper." "transient_internet`." msgstr "" -#: library/test.rst:319 +#: library/test.rst:279 msgid "Its default value is 1 minute." msgstr "" -#: library/test.rst:321 +#: library/test.rst:281 msgid "See also :data:`LOOPBACK_TIMEOUT`." msgstr "" -#: library/test.rst:326 +#: library/test.rst:286 msgid "" "Timeout in seconds to mark a test as failed if the test takes \"too long\"." msgstr "" -#: library/test.rst:328 +#: library/test.rst:288 msgid "" "The timeout value depends on the regrtest ``--timeout`` command line option." msgstr "" -#: library/test.rst:330 +#: library/test.rst:290 msgid "" "If a test using :data:`SHORT_TIMEOUT` starts to fail randomly on slow " "buildbots, use :data:`LONG_TIMEOUT` instead." msgstr "" -#: library/test.rst:333 +#: library/test.rst:293 msgid "Its default value is 30 seconds." msgstr "" -#: library/test.rst:338 +#: library/test.rst:298 msgid "Timeout in seconds to detect when a test hangs." msgstr "" -#: library/test.rst:340 +#: library/test.rst:300 msgid "" "It is long enough to reduce the risk of test failure on the slowest Python " "buildbots. It should not be used to mark a test as failed if the test takes " @@ -394,158 +358,117 @@ msgid "" "command line option." msgstr "" -#: library/test.rst:345 +#: library/test.rst:305 msgid "Its default value is 5 minutes." msgstr "" -#: library/test.rst:347 +#: library/test.rst:307 msgid "" "See also :data:`LOOPBACK_TIMEOUT`, :data:`INTERNET_TIMEOUT` and :data:" "`SHORT_TIMEOUT`." msgstr "" -#: library/test.rst:353 -msgid "Set to :func:`os.getcwd`." -msgstr "" - -#: library/test.rst:358 +#: library/test.rst:313 msgid "Set when tests can be skipped when they are not useful for PGO." msgstr "" -#: library/test.rst:363 +#: library/test.rst:318 msgid "" "A constant that is likely larger than the underlying OS pipe buffer size, to " "make writes blocking." msgstr "" -#: library/test.rst:369 +#: library/test.rst:324 msgid "" "A constant that is likely larger than the underlying OS socket buffer size, " "to make writes blocking." msgstr "" -#: library/test.rst:375 +#: library/test.rst:330 msgid "Set to the top level directory that contains :mod:`test.support`." msgstr "" -#: library/test.rst:380 +#: library/test.rst:335 msgid "Set to the top level directory for the test package." msgstr "" -#: library/test.rst:385 +#: library/test.rst:340 msgid "Set to the ``data`` directory within the test package." msgstr "" -#: library/test.rst:390 +#: library/test.rst:345 msgid "Set to :data:`sys.maxsize` for big memory tests." msgstr "" -#: library/test.rst:395 +#: library/test.rst:350 msgid "" "Set by :func:`set_memlimit` as the memory limit for big memory tests. " "Limited by :data:`MAX_Py_ssize_t`." msgstr "" -#: library/test.rst:401 +#: library/test.rst:356 msgid "" "Set by :func:`set_memlimit` as the memory limit for big memory tests. Not " "limited by :data:`MAX_Py_ssize_t`." msgstr "" -#: library/test.rst:407 +#: library/test.rst:362 msgid "" "Return ``True`` if running on CPython, not on Windows, and configuration not " "set with ``WITH_DOC_STRINGS``." msgstr "" -#: library/test.rst:413 +#: library/test.rst:368 msgid "Check for presence of docstrings." msgstr "" -#: library/test.rst:418 +#: library/test.rst:373 msgid "Define the URL of a dedicated HTTP server for the network tests." msgstr "" -#: library/test.rst:423 +#: library/test.rst:378 msgid "Object that is equal to anything. Used to test mixed type comparison." msgstr "" -#: library/test.rst:428 +#: library/test.rst:383 msgid "" "Object that is not equal to anything (even to :data:`ALWAYS_EQ`). Used to " "test mixed type comparison." msgstr "" -#: library/test.rst:434 +#: library/test.rst:389 msgid "" "Object that is greater than anything (except itself). Used to test mixed " "type comparison." msgstr "" -#: library/test.rst:440 +#: library/test.rst:395 msgid "" "Object that is less than anything (except itself). Used to test mixed type " "comparison." msgstr "" -#: library/test.rst:444 +#: library/test.rst:399 #, fuzzy msgid "The :mod:`test.support` module defines the following functions:" msgstr "Le module :mod:`pty` expose les fonctions suivantes :" -#: library/test.rst:448 -msgid "" -"Remove the module named *module_name* from ``sys.modules`` and delete any " -"byte-compiled files of the module." -msgstr "" - -#: library/test.rst:454 -msgid "Delete *name* from ``sys.modules``." -msgstr "" - -#: library/test.rst:459 -msgid "" -"Call :func:`os.unlink` on *filename*. On Windows platforms, this is wrapped " -"with a wait loop that checks for the existence fo the file." -msgstr "" - -#: library/test.rst:465 -msgid "" -"Call :func:`os.rmdir` on *filename*. On Windows platforms, this is wrapped " -"with a wait loop that checks for the existence of the file." -msgstr "" - -#: library/test.rst:471 -msgid "" -"Call :func:`shutil.rmtree` on *path* or call :func:`os.lstat` and :func:`os." -"rmdir` to remove a path and its contents. On Windows platforms, this is " -"wrapped with a wait loop that checks for the existence of the files." -msgstr "" - -#: library/test.rst:478 -msgid "" -"Move a :pep:`3147`/:pep:`488` pyc file to its legacy pyc location and return " -"the file system path to the legacy pyc file. The *source* value is the file " -"system path to the source file. It does not need to exist, however the PEP " -"3147/488 pyc file must exist." -msgstr "" - -#: library/test.rst:486 +#: library/test.rst:403 msgid "" "Return ``True`` if *resource* is enabled and available. The list of " "available resources is only set when :mod:`test.regrtest` is executing the " "tests." msgstr "" -#: library/test.rst:493 +#: library/test.rst:410 msgid "Return ``True`` if Python was not built with ``-O0`` or ``-Og``." msgstr "" -#: library/test.rst:498 +#: library/test.rst:415 msgid "Return :data:`_testcapi.WITH_PYMALLOC`." msgstr "" -#: library/test.rst:503 +#: library/test.rst:420 msgid "" "Raise :exc:`ResourceDenied` if *resource* is not available. *msg* is the " "argument to :exc:`ResourceDenied` if it is raised. Always returns ``True`` " @@ -553,53 +476,44 @@ msgid "" "tests are executed by :mod:`test.regrtest`." msgstr "" -#: library/test.rst:511 +#: library/test.rst:428 msgid "" "Raise :exc:`unittest.SkipTest` on TLS certification validation failures." msgstr "" -#: library/test.rst:516 +#: library/test.rst:433 msgid "Return a repr of *dict* with keys sorted." msgstr "" -#: library/test.rst:521 +#: library/test.rst:438 msgid "" "Return the path to the file named *filename*. If no match is found " "*filename* is returned. This does not equal a failure since it could be the " "path to the file." msgstr "" -#: library/test.rst:525 +#: library/test.rst:442 msgid "" "Setting *subdir* indicates a relative path to use to find the file rather " "than looking directly in the path directories." msgstr "" -#: library/test.rst:531 -msgid "" -"Create an empty file with *filename*. If it already exists, truncate it." -msgstr "" - -#: library/test.rst:536 -msgid "Count the number of open file descriptors." -msgstr "" - -#: library/test.rst:541 +#: library/test.rst:448 msgid "Match *test* to patterns set in :func:`set_match_tests`." msgstr "" -#: library/test.rst:546 +#: library/test.rst:453 msgid "Define match test with regular expression *patterns*." msgstr "" -#: library/test.rst:551 +#: library/test.rst:458 msgid "" "Execute :class:`unittest.TestCase` subclasses passed to the function. The " "function scans the classes for methods starting with the prefix ``test_`` " "and executes the tests individually." msgstr "" -#: library/test.rst:555 +#: library/test.rst:462 msgid "" "It is also legal to pass strings as parameters; these should be keys in " "``sys.modules``. Each associated module will be scanned by ``unittest." @@ -607,17 +521,17 @@ msgid "" "func:`test_main` function::" msgstr "" -#: library/test.rst:563 +#: library/test.rst:470 msgid "This will run all tests defined in the named module." msgstr "" -#: library/test.rst:568 +#: library/test.rst:475 msgid "" "Run :func:`doctest.testmod` on the given *module*. Return ``(failure_count, " "test_count)``." msgstr "" -#: library/test.rst:571 +#: library/test.rst:478 msgid "" "If *verbosity* is ``None``, :func:`doctest.testmod` is run with verbosity " "set to :data:`verbose`. Otherwise, it is run with verbosity set to " @@ -625,199 +539,67 @@ msgid "" "testmod`." msgstr "" -#: library/test.rst:579 +#: library/test.rst:486 msgid "" "Set the :func:`sys.setswitchinterval` to the given *interval*. Defines a " "minimum interval for Android systems to prevent the system from hanging." msgstr "" -#: library/test.rst:585 +#: library/test.rst:492 msgid "" "Use this check to guard CPython's implementation-specific tests or to run " "them only on the implementations guarded by the arguments::" msgstr "" -#: library/test.rst:595 -msgid "" -"A convenience wrapper for :func:`warnings.catch_warnings()` that makes it " -"easier to test that a warning was correctly raised. It is approximately " -"equivalent to calling ``warnings.catch_warnings(record=True)`` with :meth:" -"`warnings.simplefilter` set to ``always`` and with the option to " -"automatically validate the results that are recorded." -msgstr "" - -#: library/test.rst:601 -msgid "" -"``check_warnings`` accepts 2-tuples of the form ``(\"message regexp\", " -"WarningCategory)`` as positional arguments. If one or more *filters* are " -"provided, or if the optional keyword argument *quiet* is ``False``, it " -"checks to make sure the warnings are as expected: each specified filter " -"must match at least one of the warnings raised by the enclosed code or the " -"test fails, and if any warnings are raised that do not match any of the " -"specified filters the test fails. To disable the first of these checks, set " -"*quiet* to ``True``." -msgstr "" - -#: library/test.rst:610 -msgid "If no arguments are specified, it defaults to::" -msgstr "" - -#: library/test.rst:614 -msgid "In this case all warnings are caught and no errors are raised." -msgstr "" - -#: library/test.rst:616 -msgid "" -"On entry to the context manager, a :class:`WarningRecorder` instance is " -"returned. The underlying warnings list from :func:`~warnings.catch_warnings` " -"is available via the recorder object's :attr:`warnings` attribute. As a " -"convenience, the attributes of the object representing the most recent " -"warning can also be accessed directly through the recorder object (see " -"example below). If no warning has been raised, then any of the attributes " -"that would otherwise be expected on an object representing a warning will " -"return ``None``." -msgstr "" - -#: library/test.rst:625 -msgid "" -"The recorder object also has a :meth:`reset` method, which clears the " -"warnings list." -msgstr "" - -#: library/test.rst:628 -msgid "The context manager is designed to be used like this::" -msgstr "" - -#: library/test.rst:635 -msgid "" -"In this case if either warning was not raised, or some other warning was " -"raised, :func:`check_warnings` would raise an error." -msgstr "" - -#: library/test.rst:638 -msgid "" -"When a test needs to look more deeply into the warnings, rather than just " -"checking whether or not they occurred, code like this can be used::" -msgstr "" - -#: library/test.rst:652 -msgid "" -"Here all warnings will be caught, and the test code tests the captured " -"warnings directly." -msgstr "" - -#: library/test.rst:655 -msgid "New optional arguments *filters* and *quiet*." -msgstr "" - -#: library/test.rst:661 -msgid "" -"Context manager to check that no :exc:`ResourceWarning` was raised. You " -"must remove the object which may emit :exc:`ResourceWarning` before the end " -"of the context manager." -msgstr "" - -#: library/test.rst:668 +#: library/test.rst:502 msgid "" "Set the values for :data:`max_memuse` and :data:`real_max_memuse` for big " "memory tests." msgstr "" -#: library/test.rst:674 +#: library/test.rst:508 msgid "" "Store the value from *stdout*. It is meant to hold the stdout at the time " "the regrtest began." msgstr "" -#: library/test.rst:680 +#: library/test.rst:514 msgid "" "Return the original stdout set by :func:`record_original_stdout` or ``sys." "stdout`` if it's not set." msgstr "" -#: library/test.rst:686 +#: library/test.rst:520 msgid "" "Return a list of command line arguments reproducing the current settings in " "``sys.flags`` and ``sys.warnoptions``." msgstr "" -#: library/test.rst:692 +#: library/test.rst:526 msgid "" "Return a list of command line arguments reproducing the current optimization " "settings in ``sys.flags``." msgstr "" -#: library/test.rst:700 +#: library/test.rst:534 msgid "" "A context managers that temporarily replaces the named stream with :class:" "`io.StringIO` object." msgstr "" -#: library/test.rst:703 +#: library/test.rst:537 msgid "Example use with output streams::" msgstr "" -#: library/test.rst:711 +#: library/test.rst:545 msgid "Example use with input stream::" msgstr "" -#: library/test.rst:723 -msgid "" -"A context manager that creates a temporary directory at *path* and yields " -"the directory." -msgstr "" - -#: library/test.rst:726 -msgid "" -"If *path* is ``None``, the temporary directory is created using :func:" -"`tempfile.mkdtemp`. If *quiet* is ``False``, the context manager raises an " -"exception on error. Otherwise, if *path* is specified and cannot be " -"created, only a warning is issued." -msgstr "" - -#: library/test.rst:734 -msgid "" -"A context manager that temporarily changes the current working directory to " -"*path* and yields the directory." -msgstr "" - -#: library/test.rst:737 -msgid "" -"If *quiet* is ``False``, the context manager raises an exception on error. " -"Otherwise, it issues only a warning and keeps the current working directory " -"the same." -msgstr "" - -#: library/test.rst:744 -msgid "" -"A context manager that temporarily creates a new directory and changes the " -"current working directory (CWD)." -msgstr "" - -#: library/test.rst:747 -msgid "" -"The context manager creates a temporary directory in the current directory " -"with name *name* before temporarily changing the current working directory. " -"If *name* is ``None``, the temporary directory is created using :func:" -"`tempfile.mkdtemp`." -msgstr "" - -#: library/test.rst:752 -msgid "" -"If *quiet* is ``False`` and it is not possible to create or change the CWD, " -"an error is raised. Otherwise, only a warning is raised and the original " -"CWD is used." -msgstr "" - -#: library/test.rst:759 -msgid "A context manager that temporarily sets the process umask." -msgstr "" - -#: library/test.rst:764 +#: library/test.rst:557 msgid "A context manager that replaces ``sys.stderr`` with ``sys.__stderr__``." msgstr "" -#: library/test.rst:769 +#: library/test.rst:562 msgid "" "Force as many objects as possible to be collected. This is needed because " "timely deallocation is not guaranteed by the garbage collector. This means " @@ -825,124 +607,96 @@ msgid "" "remain alive for longer than expected." msgstr "" -#: library/test.rst:777 +#: library/test.rst:570 msgid "" "A context manager that disables the garbage collector upon entry and " "reenables it upon exit." msgstr "" -#: library/test.rst:783 +#: library/test.rst:576 msgid "Context manager to swap out an attribute with a new object." msgstr "" -#: library/test.rst:803 library/test.rst:1189 +#: library/test.rst:596 library/test.rst:1263 msgid "Usage::" msgstr "Utilisation ::" -#: library/test.rst:790 +#: library/test.rst:583 msgid "" "This will set ``obj.attr`` to 5 for the duration of the ``with`` block, " "restoring the old value at the end of the block. If ``attr`` doesn't exist " "on ``obj``, it will be created and then deleted at the end of the block." msgstr "" -#: library/test.rst:813 +#: library/test.rst:606 msgid "" "The old value (or ``None`` if it doesn't exist) will be assigned to the " "target of the \"as\" clause, if there is one." msgstr "" -#: library/test.rst:801 +#: library/test.rst:594 msgid "Context manager to swap out an item with a new object." msgstr "" -#: library/test.rst:808 +#: library/test.rst:601 msgid "" "This will set ``obj[\"item\"]`` to 5 for the duration of the ``with`` block, " "restoring the old value at the end of the block. If ``item`` doesn't exist " "on ``obj``, it will be created and then deleted at the end of the block." msgstr "" -#: library/test.rst:819 +#: library/test.rst:612 msgid "" "Print a warning into :data:`sys.__stderr__`. Format the message as: ``f" "\"Warning -- {msg}\"``. If *msg* is made of multiple lines, add ``\"Warning " "-- \"`` prefix to each line." msgstr "" -#: library/test.rst:828 +#: library/test.rst:621 msgid "" "Wait until process *pid* completes and check that the process exit code is " "*exitcode*." msgstr "" -#: library/test.rst:831 +#: library/test.rst:624 msgid "" "Raise an :exc:`AssertionError` if the process exit code is not equal to " "*exitcode*." msgstr "" -#: library/test.rst:834 +#: library/test.rst:627 msgid "" "If the process runs longer than *timeout* seconds (:data:`SHORT_TIMEOUT` by " "default), kill the process and raise an :exc:`AssertionError`. The timeout " "feature is not available on Windows." msgstr "" -#: library/test.rst:843 -msgid "" -"Context manager to wait until all threads created in the ``with`` statement " -"exit." -msgstr "" - -#: library/test.rst:849 -msgid "" -"Context manager to start *threads*. It attempts to join the threads upon " -"exit." -msgstr "" - -#: library/test.rst:855 +#: library/test.rst:636 msgid "" "Return :func:`struct.calcsize` for ``nP{fmt}0n`` or, if ``gettotalrefcount`` " "exists, ``2PnP{fmt}0P``." msgstr "" -#: library/test.rst:861 +#: library/test.rst:642 msgid "" "Return :func:`struct.calcsize` for ``nPn{fmt}0n`` or, if " "``gettotalrefcount`` exists, ``2PnPn{fmt}0P``." msgstr "" -#: library/test.rst:867 +#: library/test.rst:648 msgid "" "For testcase *test*, assert that the ``sys.getsizeof`` for *o* plus the GC " "header size equals *size*." msgstr "" -#: library/test.rst:873 -msgid "Return ``True`` if the OS supports symbolic links, ``False`` otherwise." -msgstr "" - -#: library/test.rst:879 -msgid "Return ``True`` if the OS supports xattr, ``False`` otherwise." -msgstr "" - -#: library/test.rst:885 -msgid "A decorator for running tests that require support for symbolic links." -msgstr "" - -#: library/test.rst:890 -msgid "A decorator for running tests that require support for xattr." -msgstr "" - -#: library/test.rst:895 +#: library/test.rst:654 msgid "" "A decorator to conditionally mark tests with :func:`unittest." "expectedFailure`. Any use of this decorator should have an associated " "comment identifying the relevant tracker issue." msgstr "" -#: library/test.rst:902 +#: library/test.rst:661 msgid "" "A decorator for running a function in a different locale, correctly " "resetting it after it has finished. *catstr* is the locale category as a " @@ -950,73 +704,73 @@ msgid "" "sequentially, and the first valid locale will be used." msgstr "" -#: library/test.rst:910 +#: library/test.rst:669 msgid "" "A decorator for running a function in a specific timezone, correctly " "resetting it after it has finished." msgstr "" -#: library/test.rst:916 +#: library/test.rst:675 msgid "" "Decorator for the minimum version when running test on FreeBSD. If the " "FreeBSD version is less than the minimum, raise :exc:`unittest.SkipTest`." msgstr "" -#: library/test.rst:922 +#: library/test.rst:681 msgid "" "Decorator for the minimum version when running test on Linux. If the Linux " "version is less than the minimum, raise :exc:`unittest.SkipTest`." msgstr "" -#: library/test.rst:928 +#: library/test.rst:687 msgid "" -"Decorator for the minimum version when running test on Mac OS X. If the MAC " -"OS X version is less than the minimum, raise :exc:`unittest.SkipTest`." +"Decorator for the minimum version when running test on macOS. If the macOS " +"version is less than the minimum, raise :exc:`unittest.SkipTest`." msgstr "" -#: library/test.rst:934 +#: library/test.rst:693 msgid "Decorator for skipping tests on non-IEEE 754 platforms." msgstr "" -#: library/test.rst:939 +#: library/test.rst:698 msgid "Decorator for skipping tests if :mod:`zlib` doesn't exist." msgstr "" -#: library/test.rst:944 +#: library/test.rst:703 msgid "Decorator for skipping tests if :mod:`gzip` doesn't exist." msgstr "" -#: library/test.rst:949 +#: library/test.rst:708 msgid "Decorator for skipping tests if :mod:`bz2` doesn't exist." msgstr "" -#: library/test.rst:954 +#: library/test.rst:713 msgid "Decorator for skipping tests if :mod:`lzma` doesn't exist." msgstr "" -#: library/test.rst:959 +#: library/test.rst:718 msgid "Decorator for skipping tests if *resource* is not available." msgstr "" -#: library/test.rst:964 +#: library/test.rst:723 msgid "Decorator for only running the test if :data:`HAVE_DOCSTRINGS`." msgstr "" -#: library/test.rst:969 +#: library/test.rst:728 msgid "Decorator for tests only applicable to CPython." msgstr "" -#: library/test.rst:974 +#: library/test.rst:733 msgid "" "Decorator for invoking :func:`check_impl_detail` on *guards*. If that " "returns ``False``, then uses *msg* as the reason for skipping the test." msgstr "" -#: library/test.rst:980 +#: library/test.rst:739 msgid "Decorator to temporarily turn off tracing for the duration of the test." msgstr "" -#: library/test.rst:985 +#: library/test.rst:744 msgid "" "Decorator for tests which involve reference counting. The decorator does " "not run the test if it is not run by CPython. Any trace function is unset " @@ -1024,15 +778,11 @@ msgid "" "trace function." msgstr "" -#: library/test.rst:993 -msgid "Decorator to ensure the threads are cleaned up even if the test fails." -msgstr "" - -#: library/test.rst:998 +#: library/test.rst:752 msgid "Decorator for bigmem tests." msgstr "" -#: library/test.rst:1000 +#: library/test.rst:754 msgid "" "*size* is a requested size for the test (in arbitrary, test-interpreted " "units.) *memuse* is the number of bytes per unit for the test, or a good " @@ -1040,7 +790,7 @@ msgid "" "each, could be decorated with ``@bigmemtest(size=_4G, memuse=2)``." msgstr "" -#: library/test.rst:1005 +#: library/test.rst:759 msgid "" "The *size* argument is normally passed to the decorated test method as an " "extra argument. If *dry_run* is ``True``, the value passed to the test " @@ -1048,19 +798,13 @@ msgid "" "means the test doesn't support dummy runs when ``-M`` is not specified." msgstr "" -#: library/test.rst:1013 +#: library/test.rst:767 msgid "" "Decorator for tests that fill the address space. *f* is the function to " "wrap." msgstr "" -#: library/test.rst:1019 -msgid "" -"Create an invalid file descriptor by opening and closing a temporary file, " -"and returning its descriptor." -msgstr "" - -#: library/test.rst:1025 +#: library/test.rst:773 msgid "" "Test for syntax errors in *statement* by attempting to compile *statement*. " "*testcase* is the :mod:`unittest` instance for the test. *errtext* is the " @@ -1070,176 +814,44 @@ msgid "" "of the exception." msgstr "" -#: library/test.rst:1035 -msgid "" -"Test for syntax warning in *statement* by attempting to compile *statement*. " -"Test also that the :exc:`SyntaxWarning` is emitted only once, and that it " -"will be converted to a :exc:`SyntaxError` when turned into error. *testcase* " -"is the :mod:`unittest` instance for the test. *errtext* is the regular " -"expression which should match the string representation of the emitted :exc:" -"`SyntaxWarning` and raised :exc:`SyntaxError`. If *lineno* is not ``None``, " -"compares to the line of the warning and exception. If *offset* is not " -"``None``, compares to the offset of the exception." -msgstr "" - -#: library/test.rst:1049 -msgid "Open *url*. If open fails, raises :exc:`TestFailed`." -msgstr "" - -#: library/test.rst:1054 -msgid "" -"This function imports and returns the named module. Unlike a normal import, " -"this function raises :exc:`unittest.SkipTest` if the module cannot be " -"imported." -msgstr "" - -#: library/test.rst:1058 -msgid "" -"Module and package deprecation messages are suppressed during this import if " -"*deprecated* is ``True``. If a module is required on a platform but " -"optional for others, set *required_on* to an iterable of platform prefixes " -"which will be compared against :data:`sys.platform`." -msgstr "" - -#: library/test.rst:1068 -msgid "" -"This function imports and returns a fresh copy of the named Python module by " -"removing the named module from ``sys.modules`` before doing the import. Note " -"that unlike :func:`reload`, the original module is not affected by this " -"operation." -msgstr "" - -#: library/test.rst:1073 -msgid "" -"*fresh* is an iterable of additional module names that are also removed from " -"the ``sys.modules`` cache before doing the import." -msgstr "" - -#: library/test.rst:1076 -msgid "" -"*blocked* is an iterable of module names that are replaced with ``None`` in " -"the module cache during the import to ensure that attempts to import them " -"raise :exc:`ImportError`." -msgstr "" - -#: library/test.rst:1080 -msgid "" -"The named module and any modules named in the *fresh* and *blocked* " -"parameters are saved before starting the import and then reinserted into " -"``sys.modules`` when the fresh import is complete." -msgstr "" - -#: library/test.rst:1084 -msgid "" -"Module and package deprecation messages are suppressed during this import if " -"*deprecated* is ``True``." -msgstr "" - -#: library/test.rst:1087 -msgid "" -"This function will raise :exc:`ImportError` if the named module cannot be " -"imported." -msgstr "" - -#: library/test.rst:1283 -#, fuzzy -msgid "Example use::" -msgstr "Exemple d'utilisation ::" - -#: library/test.rst:1104 -msgid "Return a copy of :data:`sys.modules`." -msgstr "" - -#: library/test.rst:1109 -msgid "" -"Remove modules except for *oldmodules* and ``encodings`` in order to " -"preserve internal cache." -msgstr "" - -#: library/test.rst:1115 -msgid "Return current thread count and copy of dangling threads." -msgstr "" - -#: library/test.rst:1120 -msgid "" -"Cleanup up threads not specified in *original_values*. Designed to emit a " -"warning if a test leaves running threads in the background." -msgstr "" - -#: library/test.rst:1126 -msgid "" -"Join a *thread* within *timeout*. Raise an :exc:`AssertionError` if thread " -"is still alive after *timeout* seconds." -msgstr "" - -#: library/test.rst:1132 +#: library/test.rst:783 +msgid "Open *url*. If open fails, raises :exc:`TestFailed`." +msgstr "" + +#: library/test.rst:788 msgid "" "Use this at the end of ``test_main`` whenever sub-processes are started. " "This will help ensure that no extra children (zombies) stick around to hog " "resources and create problems when looking for refleaks." msgstr "" -#: library/test.rst:1139 +#: library/test.rst:795 msgid "" "Get an attribute, raising :exc:`unittest.SkipTest` if :exc:`AttributeError` " "is raised." msgstr "" -#: library/test.rst:1145 -msgid "" -"Context manager catching :class:`threading.Thread` exception using :func:" -"`threading.excepthook`." -msgstr "" - -#: library/test.rst:1148 -msgid "Attributes set when an exception is catched:" -msgstr "" - -#: library/test.rst:1150 -msgid "``exc_type``" -msgstr "" - -#: library/test.rst:1151 -msgid "``exc_value``" -msgstr "" - -#: library/test.rst:1152 -msgid "``exc_traceback``" -msgstr "" - -#: library/test.rst:1153 -msgid "``thread``" -msgstr "" - -#: library/test.rst:1155 -msgid "See :func:`threading.excepthook` documentation." -msgstr "" - -#: library/test.rst:1157 -msgid "These attributes are deleted at the context manager exit." -msgstr "" - -#: library/test.rst:1178 +#: library/test.rst:801 msgid "" "Context manager catching unraisable exception using :func:`sys." "unraisablehook`." msgstr "" -#: library/test.rst:1181 +#: library/test.rst:804 msgid "" "Storing the exception value (``cm.unraisable.exc_value``) creates a " "reference cycle. The reference cycle is broken explicitly when the context " "manager exits." msgstr "" -#: library/test.rst:1185 +#: library/test.rst:808 msgid "" "Storing the object (``cm.unraisable.object``) can resurrect it if it is set " "to an object which is being finalized. Exiting the context manager clears " "the stored object." msgstr "" -#: library/test.rst:1206 +#: library/test.rst:829 msgid "" "Generic implementation of the :mod:`unittest` ``load_tests`` protocol for " "use in test packages. *pkg_dir* is the root directory of the package; " @@ -1248,59 +860,55 @@ msgid "" "the following::" msgstr "" -#: library/test.rst:1221 -msgid "Return ``True`` if the file system for *directory* is case-insensitive." -msgstr "" - -#: library/test.rst:1226 +#: library/test.rst:844 msgid "" "Returns the set of attributes, functions or methods of *ref_api* not found " "on *other_api*, except for a defined list of items to be ignored in this " "check specified in *ignore*." msgstr "" -#: library/test.rst:1230 +#: library/test.rst:848 msgid "" "By default this skips private attributes beginning with '_' but includes all " "magic methods, i.e. those starting and ending in '__'." msgstr "" -#: library/test.rst:1238 +#: library/test.rst:856 msgid "" "Override *object_to_patch.attr_name* with *new_value*. Also add cleanup " "procedure to *test_instance* to restore *object_to_patch* for *attr_name*. " "The *attr_name* should be a valid attribute for *object_to_patch*." msgstr "" -#: library/test.rst:1246 +#: library/test.rst:864 msgid "" "Run *code* in subinterpreter. Raise :exc:`unittest.SkipTest` if :mod:" "`tracemalloc` is enabled." msgstr "" -#: library/test.rst:1252 +#: library/test.rst:870 msgid "Assert that *iter* is deallocated after iterating." msgstr "" -#: library/test.rst:1257 +#: library/test.rst:875 msgid "" "Check for the existence of the compiler executables whose names are listed " "in *cmd_names* or all the compiler executables when *cmd_names* is empty and " "return the first missing executable or ``None`` when none is found missing." msgstr "" -#: library/test.rst:1265 +#: library/test.rst:883 msgid "" "Assert that the ``__all__`` variable of *module* contains all public names." msgstr "" -#: library/test.rst:1267 +#: library/test.rst:885 msgid "" "The module's public names (its API) are detected automatically based on " "whether they match the public name convention and were defined in *module*." msgstr "" -#: library/test.rst:1271 +#: library/test.rst:889 msgid "" "The *name_of_module* argument can specify (as a string or tuple thereof) " "what module(s) an API could be defined in order to be detected as a public " @@ -1308,7 +916,7 @@ msgid "" "other modules, possibly a C backend (like ``csv`` and its ``_csv``)." msgstr "" -#: library/test.rst:1276 +#: library/test.rst:894 msgid "" "The *extra* argument can be a set of names that wouldn't otherwise be " "automatically detected as \"public\", like objects without a proper " @@ -1316,142 +924,88 @@ msgid "" "detected ones." msgstr "" -#: library/test.rst:1280 +#: library/test.rst:898 msgid "" -"The *blacklist* argument can be a set of names that must not be treated as " -"part of the public API even though their names indicate otherwise." +"The *not_exported* argument can be a set of names that must not be treated " +"as part of the public API even though their names indicate otherwise." msgstr "" -#: library/test.rst:1305 -msgid "The :mod:`test.support` module defines the following classes:" -msgstr "" - -#: library/test.rst:1309 -msgid "" -"Instances are a context manager that raises :exc:`ResourceDenied` if the " -"specified exception type is raised. Any keyword arguments are treated as " -"attribute/value pairs to be compared against any exception raised within " -"the :keyword:`with` statement. Only if all pairs match properly against " -"attributes on the exception is :exc:`ResourceDenied` raised." -msgstr "" +#: library/test.rst:1505 +#, fuzzy +msgid "Example use::" +msgstr "Exemple d'utilisation ::" -#: library/test.rst:1318 +#: library/test.rst:924 msgid "" -"Class used to temporarily set or unset environment variables. Instances can " -"be used as a context manager and have a complete dictionary interface for " -"querying/modifying the underlying ``os.environ``. After exit from the " -"context manager all changes to environment variables done through this " -"instance will be rolled back." -msgstr "" - -#: library/test.rst:1324 -msgid "Added dictionary interface." +"Skip tests if the :mod:`multiprocessing.synchronize` module is missing, if " +"there is no available semaphore implementation, or if creating a lock raises " +"an :exc:`OSError`." msgstr "" -#: library/test.rst:1329 -msgid "" -"Temporarily set the environment variable ``envvar`` to the value of " -"``value``." +#: library/test.rst:933 +msgid "Assert that type *tp* cannot be instantiated using *args* and *kwds*." msgstr "" -#: library/test.rst:1335 -msgid "Temporarily unset the environment variable ``envvar``." +#: library/test.rst:938 +msgid "The :mod:`test.support` module defines the following classes:" msgstr "" -#: library/test.rst:1340 +#: library/test.rst:943 msgid "" "A context manager used to try to prevent crash dialog popups on tests that " "are expected to crash a subprocess." msgstr "" -#: library/test.rst:1343 +#: library/test.rst:946 msgid "" "On Windows, it disables Windows Error Reporting dialogs using `SetErrorMode " "`_." msgstr "" -#: library/test.rst:1346 +#: library/test.rst:949 msgid "" "On UNIX, :func:`resource.setrlimit` is used to set :attr:`resource." "RLIMIT_CORE`'s soft limit to 0 to prevent coredump file creation." msgstr "" -#: library/test.rst:1350 +#: library/test.rst:953 msgid "On both platforms, the old value is restored by :meth:`__exit__`." msgstr "" -#: library/test.rst:1355 -msgid "" -"A context manager to force import to return a new module reference. This is " -"useful for testing module-level behaviors, such as the emission of a " -"DeprecationWarning on import. Example usage::" -msgstr "" - -#: library/test.rst:1365 -msgid "A context manager to temporarily add directories to sys.path." -msgstr "" - -#: library/test.rst:1367 -msgid "" -"This makes a copy of :data:`sys.path`, appends any directories given as " -"positional arguments, then reverts :data:`sys.path` to the copied settings " -"when the context ends." -msgstr "" - -#: library/test.rst:1371 -msgid "" -"Note that *all* :data:`sys.path` modifications in the body of the context " -"manager, including replacement of the object, will be reverted at the end of " -"the block." -msgstr "" - -#: library/test.rst:1378 +#: library/test.rst:958 msgid "" "Class to save and restore signal handlers registered by the Python signal " "handler." msgstr "" -#: library/test.rst:1386 +#: library/test.rst:966 msgid "Try to match a single dict with the supplied arguments." msgstr "" -#: library/test.rst:1391 +#: library/test.rst:971 msgid "Try to match a single stored value (*dv*) with a supplied value (*v*)." msgstr "" -#: library/test.rst:1396 -msgid "" -"Class used to record warnings for unit tests. See documentation of :func:" -"`check_warnings` above for more details." -msgstr "" - -#: library/test.rst:1404 +#: library/test.rst:978 msgid "Run *test* and return the result." msgstr "" -#: library/test.rst:1409 -msgid "" -"Simple :term:`path-like object`. It implements the :meth:`__fspath__` " -"method which just returns the *path* argument. If *path* is an exception, " -"it will be raised in :meth:`!__fspath__`." -msgstr "" - -#: library/test.rst:1415 +#: library/test.rst:982 msgid ":mod:`test.support.socket_helper` --- Utilities for socket tests" msgstr "" -#: library/test.rst:1421 +#: library/test.rst:988 #, fuzzy msgid "" "The :mod:`test.support.socket_helper` module provides support for socket " "tests." msgstr "Le module :mod:`pty` expose les fonctions suivantes :" -#: library/test.rst:1428 +#: library/test.rst:995 msgid "Set to ``True`` if IPv6 is enabled on this host, ``False`` otherwise." msgstr "" -#: library/test.rst:1433 +#: library/test.rst:1000 msgid "" "Returns an unused port that should be suitable for binding. This is " "achieved by creating a temporary socket with the same family and type as the " @@ -1462,7 +1016,7 @@ msgid "" "port is returned." msgstr "" -#: library/test.rst:1442 +#: library/test.rst:1009 msgid "" "Either this method or :func:`bind_port` should be used for any tests where a " "server socket needs to be bound to a particular port for the duration of the " @@ -1475,7 +1029,7 @@ msgid "" "simultaneously, which is a problem for buildbots." msgstr "" -#: library/test.rst:1456 +#: library/test.rst:1023 msgid "" "Bind the socket to a free port and return the port number. Relies on " "ephemeral ports in order to ensure we are using an unbound port. This is " @@ -1488,7 +1042,7 @@ msgid "" "testing multicasting via multiple UDP sockets." msgstr "" -#: library/test.rst:1467 +#: library/test.rst:1034 msgid "" "Additionally, if the :const:`~socket.SO_EXCLUSIVEADDRUSE` socket option is " "available (i.e. on Windows), it will be set on the socket. This will " @@ -1496,58 +1050,58 @@ msgid "" "test." msgstr "" -#: library/test.rst:1475 +#: library/test.rst:1042 msgid "" "Bind a unix socket, raising :exc:`unittest.SkipTest` if :exc:" "`PermissionError` is raised." msgstr "" -#: library/test.rst:1481 +#: library/test.rst:1048 msgid "" "A decorator for running tests that require a functional ``bind()`` for Unix " "sockets." msgstr "" -#: library/test.rst:1487 +#: library/test.rst:1054 msgid "" "A context manager that raises :exc:`~test.support.ResourceDenied` when " "various issues with the internet connection manifest themselves as " "exceptions." msgstr "" -#: library/test.rst:1493 +#: library/test.rst:1060 msgid "" ":mod:`test.support.script_helper` --- Utilities for the Python execution " "tests" msgstr "" -#: library/test.rst:1499 +#: library/test.rst:1066 msgid "" "The :mod:`test.support.script_helper` module provides support for Python's " "script execution tests." msgstr "" -#: library/test.rst:1504 +#: library/test.rst:1071 msgid "" "Return ``True`` if ``sys.executable interpreter`` requires environment " "variables in order to be able to run at all." msgstr "" -#: library/test.rst:1507 +#: library/test.rst:1074 msgid "" "This is designed to be used with ``@unittest.skipIf()`` to annotate tests " "that need to use an ``assert_python*()`` function to launch an isolated mode " "(``-I``) or no environment mode (``-E``) sub-interpreter process." msgstr "" -#: library/test.rst:1511 +#: library/test.rst:1078 msgid "" "A normal build & test does not run into this situation but it can happen " "when trying to run the standard library test suite from an interpreter that " "doesn't have an obvious home with Python's current home finding logic." msgstr "" -#: library/test.rst:1515 +#: library/test.rst:1082 msgid "" "Setting :envvar:`PYTHONHOME` is one way to get most of the testsuite to run " "in that situation. :envvar:`PYTHONPATH` or :envvar:`PYTHONUSERSITE` are " @@ -1555,84 +1109,84 @@ msgid "" "interpreter can start." msgstr "" -#: library/test.rst:1523 +#: library/test.rst:1090 msgid "" "Set up the environment based on *env_vars* for running the interpreter in a " "subprocess. The values can include ``__isolated``, ``__cleanenv``, " "``__cwd``, and ``TERM``." msgstr "" -#: library/test.rst:1543 library/test.rst:1555 +#: library/test.rst:1110 library/test.rst:1122 msgid "The function no longer strips whitespaces from *stderr*." msgstr "" -#: library/test.rst:1533 +#: library/test.rst:1100 msgid "" "Assert that running the interpreter with *args* and optional environment " "variables *env_vars* succeeds (``rc == 0``) and return a ``(return code, " "stdout, stderr)`` tuple." msgstr "" -#: library/test.rst:1537 +#: library/test.rst:1104 msgid "" "If the ``__cleanenv`` keyword is set, *env_vars* is used as a fresh " "environment." msgstr "" -#: library/test.rst:1540 +#: library/test.rst:1107 msgid "" "Python is started in isolated mode (command line option ``-I``), except if " "the ``__isolated`` keyword is set to ``False``." msgstr "" -#: library/test.rst:1549 +#: library/test.rst:1116 msgid "" "Assert that running the interpreter with *args* and optional environment " "variables *env_vars* fails (``rc != 0``) and return a ``(return code, " "stdout, stderr)`` tuple." msgstr "" -#: library/test.rst:1553 +#: library/test.rst:1120 msgid "See :func:`assert_python_ok` for more options." msgstr "" -#: library/test.rst:1561 +#: library/test.rst:1128 msgid "Run a Python subprocess with the given arguments." msgstr "" -#: library/test.rst:1563 +#: library/test.rst:1130 msgid "" "*kw* is extra keyword args to pass to :func:`subprocess.Popen`. Returns a :" "class:`subprocess.Popen` object." msgstr "" -#: library/test.rst:1569 +#: library/test.rst:1136 msgid "" "Run the given :class:`subprocess.Popen` process until completion and return " "stdout." msgstr "" -#: library/test.rst:1575 +#: library/test.rst:1142 msgid "" "Create script containing *source* in path *script_dir* and " "*script_basename*. If *omit_suffix* is ``False``, append ``.py`` to the " "name. Return the full script path." msgstr "" -#: library/test.rst:1582 +#: library/test.rst:1149 msgid "" "Create zip file at *zip_dir* and *zip_basename* with extension ``zip`` which " "contains the files in *script_name*. *name_in_zip* is the archive name. " "Return a tuple containing ``(full path, full path of archive name)``." msgstr "" -#: library/test.rst:1589 +#: library/test.rst:1156 msgid "" "Create a directory named *pkg_dir* containing an ``__init__`` file with " "*init_source* as its contents." msgstr "" -#: library/test.rst:1596 +#: library/test.rst:1163 msgid "" "Create a zip package directory with a path of *zip_dir* and *zip_basename* " "containing an empty ``__init__`` file and a file *script_basename* " @@ -1641,36 +1195,526 @@ msgid "" "path and the archive name for the zip file." msgstr "" -#: library/test.rst:1604 +#: library/test.rst:1171 msgid "" ":mod:`test.support.bytecode_helper` --- Support tools for testing correct " "bytecode generation" msgstr "" -#: library/test.rst:1609 +#: library/test.rst:1176 msgid "" "The :mod:`test.support.bytecode_helper` module provides support for testing " "and inspecting bytecode generation." msgstr "" -#: library/test.rst:1614 +#: library/test.rst:1181 #, fuzzy msgid "The module defines the following class:" msgstr "Ce module définit les fonctions suivantes :" -#: library/test.rst:1618 +#: library/test.rst:1185 msgid "This class has custom assertion methods for inspecting bytecode." msgstr "" -#: library/test.rst:1622 +#: library/test.rst:1189 msgid "Return the disassembly of *co* as string." msgstr "" -#: library/test.rst:1627 +#: library/test.rst:1194 msgid "" "Return instr if *opname* is found, otherwise throws :exc:`AssertionError`." msgstr "" -#: library/test.rst:1632 +#: library/test.rst:1199 msgid "Throws :exc:`AssertionError` if *opname* is found." msgstr "" + +#: library/test.rst:1203 +#, fuzzy +msgid ":mod:`test.support.threading_helper` --- Utilities for threading tests" +msgstr "Le module :mod:`pty` expose les fonctions suivantes :" + +#: library/test.rst:1208 +#, fuzzy +msgid "" +"The :mod:`test.support.threading_helper` module provides support for " +"threading tests." +msgstr "Le module :mod:`pty` expose les fonctions suivantes :" + +#: library/test.rst:1215 +msgid "" +"Join a *thread* within *timeout*. Raise an :exc:`AssertionError` if thread " +"is still alive after *timeout* seconds." +msgstr "" + +#: library/test.rst:1221 +msgid "Decorator to ensure the threads are cleaned up even if the test fails." +msgstr "" + +#: library/test.rst:1226 +msgid "" +"Context manager to start *threads*. It attempts to join the threads upon " +"exit." +msgstr "" + +#: library/test.rst:1232 +msgid "" +"Cleanup up threads not specified in *original_values*. Designed to emit a " +"warning if a test leaves running threads in the background." +msgstr "" + +#: library/test.rst:1238 +msgid "Return current thread count and copy of dangling threads." +msgstr "" + +#: library/test.rst:1243 +msgid "" +"Context manager to wait until all threads created in the ``with`` statement " +"exit." +msgstr "" + +#: library/test.rst:1249 +msgid "" +"Context manager catching :class:`threading.Thread` exception using :func:" +"`threading.excepthook`." +msgstr "" + +#: library/test.rst:1252 +msgid "Attributes set when an exception is catched:" +msgstr "" + +#: library/test.rst:1254 +msgid "``exc_type``" +msgstr "" + +#: library/test.rst:1255 +msgid "``exc_value``" +msgstr "" + +#: library/test.rst:1256 +msgid "``exc_traceback``" +msgstr "" + +#: library/test.rst:1257 +msgid "``thread``" +msgstr "" + +#: library/test.rst:1259 +msgid "See :func:`threading.excepthook` documentation." +msgstr "" + +#: library/test.rst:1261 +msgid "These attributes are deleted at the context manager exit." +msgstr "" + +#: library/test.rst:1281 +#, fuzzy +msgid ":mod:`test.support.os_helper` --- Utilities for os tests" +msgstr "Le module :mod:`pty` expose les fonctions suivantes :" + +#: library/test.rst:1286 +#, fuzzy +msgid "The :mod:`test.support.os_helper` module provides support for os tests." +msgstr "Le module :mod:`pty` expose les fonctions suivantes :" + +#: library/test.rst:1293 +msgid "A non-ASCII character encodable by :func:`os.fsencode`." +msgstr "" + +#: library/test.rst:1298 +msgid "Set to :func:`os.getcwd`." +msgstr "" + +#: library/test.rst:1303 +msgid "" +"Set to a name that is safe to use as the name of a temporary file. Any " +"temporary file that is created should be closed and unlinked (removed)." +msgstr "" + +#: library/test.rst:1309 +msgid "Set to a filename containing the :data:`FS_NONASCII` character." +msgstr "" + +#: library/test.rst:1314 +msgid "" +"Set to a filename (str type) that should not be able to be encoded by file " +"system encoding in strict mode. It may be ``None`` if it's not possible to " +"generate such a filename." +msgstr "" + +#: library/test.rst:1321 +msgid "" +"Set to a filename (bytes type) that should not be able to be decoded by file " +"system encoding in strict mode. It may be ``None`` if it's not possible to " +"generate such a filename." +msgstr "" + +#: library/test.rst:1328 +msgid "Set to a non-ASCII name for a temporary file." +msgstr "" + +#: library/test.rst:1333 +msgid "" +"Class used to temporarily set or unset environment variables. Instances can " +"be used as a context manager and have a complete dictionary interface for " +"querying/modifying the underlying ``os.environ``. After exit from the " +"context manager all changes to environment variables done through this " +"instance will be rolled back." +msgstr "" + +#: library/test.rst:1339 +msgid "Added dictionary interface." +msgstr "" + +#: library/test.rst:1345 +msgid "" +"Simple :term:`path-like object`. It implements the :meth:`__fspath__` " +"method which just returns the *path* argument. If *path* is an exception, " +"it will be raised in :meth:`!__fspath__`." +msgstr "" + +#: library/test.rst:1352 +msgid "" +"Temporarily set the environment variable ``envvar`` to the value of " +"``value``." +msgstr "" + +#: library/test.rst:1358 +msgid "Temporarily unset the environment variable ``envvar``." +msgstr "" + +#: library/test.rst:1363 +msgid "Return ``True`` if the OS supports symbolic links, ``False`` otherwise." +msgstr "" + +#: library/test.rst:1369 +msgid "Return ``True`` if the OS supports xattr, ``False`` otherwise." +msgstr "" + +#: library/test.rst:1375 +msgid "" +"A context manager that temporarily changes the current working directory to " +"*path* and yields the directory." +msgstr "" + +#: library/test.rst:1378 +msgid "" +"If *quiet* is ``False``, the context manager raises an exception on error. " +"Otherwise, it issues only a warning and keeps the current working directory " +"the same." +msgstr "" + +#: library/test.rst:1385 +msgid "" +"Create an empty file with *filename*. If it already exists, truncate it." +msgstr "" + +#: library/test.rst:1390 +msgid "Count the number of open file descriptors." +msgstr "" + +#: library/test.rst:1395 +msgid "Return ``True`` if the file system for *directory* is case-insensitive." +msgstr "" + +#: library/test.rst:1400 +msgid "" +"Create an invalid file descriptor by opening and closing a temporary file, " +"and returning its descriptor." +msgstr "" + +#: library/test.rst:1406 +msgid "" +"Call :func:`os.rmdir` on *filename*. On Windows platforms, this is wrapped " +"with a wait loop that checks for the existence of the file." +msgstr "" + +#: library/test.rst:1412 +msgid "" +"Call :func:`shutil.rmtree` on *path* or call :func:`os.lstat` and :func:`os." +"rmdir` to remove a path and its contents. On Windows platforms, this is " +"wrapped with a wait loop that checks for the existence of the files." +msgstr "" + +#: library/test.rst:1419 +msgid "A decorator for running tests that require support for symbolic links." +msgstr "" + +#: library/test.rst:1424 +msgid "A decorator for running tests that require support for xattr." +msgstr "" + +#: library/test.rst:1429 +msgid "" +"A context manager that temporarily creates a new directory and changes the " +"current working directory (CWD)." +msgstr "" + +#: library/test.rst:1432 +msgid "" +"The context manager creates a temporary directory in the current directory " +"with name *name* before temporarily changing the current working directory. " +"If *name* is ``None``, the temporary directory is created using :func:" +"`tempfile.mkdtemp`." +msgstr "" + +#: library/test.rst:1437 +msgid "" +"If *quiet* is ``False`` and it is not possible to create or change the CWD, " +"an error is raised. Otherwise, only a warning is raised and the original " +"CWD is used." +msgstr "" + +#: library/test.rst:1444 +msgid "" +"A context manager that creates a temporary directory at *path* and yields " +"the directory." +msgstr "" + +#: library/test.rst:1447 +msgid "" +"If *path* is ``None``, the temporary directory is created using :func:" +"`tempfile.mkdtemp`. If *quiet* is ``False``, the context manager raises an " +"exception on error. Otherwise, if *path* is specified and cannot be " +"created, only a warning is issued." +msgstr "" + +#: library/test.rst:1455 +msgid "A context manager that temporarily sets the process umask." +msgstr "" + +#: library/test.rst:1460 +msgid "" +"Call :func:`os.unlink` on *filename*. On Windows platforms, this is wrapped " +"with a wait loop that checks for the existence fo the file." +msgstr "" + +#: library/test.rst:1465 +#, fuzzy +msgid ":mod:`test.support.import_helper` --- Utilities for import tests" +msgstr "Le module :mod:`pty` expose les fonctions suivantes :" + +#: library/test.rst:1470 +#, fuzzy +msgid "" +"The :mod:`test.support.import_helper` module provides support for import " +"tests." +msgstr "Le module :mod:`pty` expose les fonctions suivantes :" + +#: library/test.rst:1477 +msgid "" +"Remove the module named *module_name* from ``sys.modules`` and delete any " +"byte-compiled files of the module." +msgstr "" + +#: library/test.rst:1483 +msgid "" +"This function imports and returns a fresh copy of the named Python module by " +"removing the named module from ``sys.modules`` before doing the import. Note " +"that unlike :func:`reload`, the original module is not affected by this " +"operation." +msgstr "" + +#: library/test.rst:1488 +msgid "" +"*fresh* is an iterable of additional module names that are also removed from " +"the ``sys.modules`` cache before doing the import." +msgstr "" + +#: library/test.rst:1491 +msgid "" +"*blocked* is an iterable of module names that are replaced with ``None`` in " +"the module cache during the import to ensure that attempts to import them " +"raise :exc:`ImportError`." +msgstr "" + +#: library/test.rst:1495 +msgid "" +"The named module and any modules named in the *fresh* and *blocked* " +"parameters are saved before starting the import and then reinserted into " +"``sys.modules`` when the fresh import is complete." +msgstr "" + +#: library/test.rst:1499 +msgid "" +"Module and package deprecation messages are suppressed during this import if " +"*deprecated* is ``True``." +msgstr "" + +#: library/test.rst:1502 +msgid "" +"This function will raise :exc:`ImportError` if the named module cannot be " +"imported." +msgstr "" + +#: library/test.rst:1519 +msgid "" +"This function imports and returns the named module. Unlike a normal import, " +"this function raises :exc:`unittest.SkipTest` if the module cannot be " +"imported." +msgstr "" + +#: library/test.rst:1523 +msgid "" +"Module and package deprecation messages are suppressed during this import if " +"*deprecated* is ``True``. If a module is required on a platform but " +"optional for others, set *required_on* to an iterable of platform prefixes " +"which will be compared against :data:`sys.platform`." +msgstr "" + +#: library/test.rst:1533 +msgid "Return a copy of :data:`sys.modules`." +msgstr "" + +#: library/test.rst:1538 +msgid "" +"Remove modules except for *oldmodules* and ``encodings`` in order to " +"preserve internal cache." +msgstr "" + +#: library/test.rst:1544 +msgid "Delete *name* from ``sys.modules``." +msgstr "" + +#: library/test.rst:1549 +msgid "" +"Move a :pep:`3147`/:pep:`488` pyc file to its legacy pyc location and return " +"the file system path to the legacy pyc file. The *source* value is the file " +"system path to the source file. It does not need to exist, however the PEP " +"3147/488 pyc file must exist." +msgstr "" + +#: library/test.rst:1557 +msgid "" +"A context manager to force import to return a new module reference. This is " +"useful for testing module-level behaviors, such as the emission of a " +"DeprecationWarning on import. Example usage::" +msgstr "" + +#: library/test.rst:1567 +msgid "A context manager to temporarily add directories to sys.path." +msgstr "" + +#: library/test.rst:1569 +msgid "" +"This makes a copy of :data:`sys.path`, appends any directories given as " +"positional arguments, then reverts :data:`sys.path` to the copied settings " +"when the context ends." +msgstr "" + +#: library/test.rst:1573 +msgid "" +"Note that *all* :data:`sys.path` modifications in the body of the context " +"manager, including replacement of the object, will be reverted at the end of " +"the block." +msgstr "" + +#: library/test.rst:1579 +#, fuzzy +msgid ":mod:`test.support.warnings_helper` --- Utilities for warnings tests" +msgstr "Le module :mod:`pty` expose les fonctions suivantes :" + +#: library/test.rst:1584 +#, fuzzy +msgid "" +"The :mod:`test.support.warnings_helper` module provides support for warnings " +"tests." +msgstr "Le module :mod:`pty` expose les fonctions suivantes :" + +#: library/test.rst:1591 +msgid "" +"Context manager to check that no :exc:`ResourceWarning` was raised. You " +"must remove the object which may emit :exc:`ResourceWarning` before the end " +"of the context manager." +msgstr "" + +#: library/test.rst:1598 +msgid "" +"Test for syntax warning in *statement* by attempting to compile *statement*. " +"Test also that the :exc:`SyntaxWarning` is emitted only once, and that it " +"will be converted to a :exc:`SyntaxError` when turned into error. *testcase* " +"is the :mod:`unittest` instance for the test. *errtext* is the regular " +"expression which should match the string representation of the emitted :exc:" +"`SyntaxWarning` and raised :exc:`SyntaxError`. If *lineno* is not ``None``, " +"compares to the line of the warning and exception. If *offset* is not " +"``None``, compares to the offset of the exception." +msgstr "" + +#: library/test.rst:1612 +msgid "" +"A convenience wrapper for :func:`warnings.catch_warnings()` that makes it " +"easier to test that a warning was correctly raised. It is approximately " +"equivalent to calling ``warnings.catch_warnings(record=True)`` with :meth:" +"`warnings.simplefilter` set to ``always`` and with the option to " +"automatically validate the results that are recorded." +msgstr "" + +#: library/test.rst:1618 +msgid "" +"``check_warnings`` accepts 2-tuples of the form ``(\"message regexp\", " +"WarningCategory)`` as positional arguments. If one or more *filters* are " +"provided, or if the optional keyword argument *quiet* is ``False``, it " +"checks to make sure the warnings are as expected: each specified filter " +"must match at least one of the warnings raised by the enclosed code or the " +"test fails, and if any warnings are raised that do not match any of the " +"specified filters the test fails. To disable the first of these checks, set " +"*quiet* to ``True``." +msgstr "" + +#: library/test.rst:1627 +msgid "If no arguments are specified, it defaults to::" +msgstr "" + +#: library/test.rst:1631 +msgid "In this case all warnings are caught and no errors are raised." +msgstr "" + +#: library/test.rst:1633 +msgid "" +"On entry to the context manager, a :class:`WarningRecorder` instance is " +"returned. The underlying warnings list from :func:`~warnings.catch_warnings` " +"is available via the recorder object's :attr:`warnings` attribute. As a " +"convenience, the attributes of the object representing the most recent " +"warning can also be accessed directly through the recorder object (see " +"example below). If no warning has been raised, then any of the attributes " +"that would otherwise be expected on an object representing a warning will " +"return ``None``." +msgstr "" + +#: library/test.rst:1642 +msgid "" +"The recorder object also has a :meth:`reset` method, which clears the " +"warnings list." +msgstr "" + +#: library/test.rst:1645 +msgid "The context manager is designed to be used like this::" +msgstr "" + +#: library/test.rst:1652 +msgid "" +"In this case if either warning was not raised, or some other warning was " +"raised, :func:`check_warnings` would raise an error." +msgstr "" + +#: library/test.rst:1655 +msgid "" +"When a test needs to look more deeply into the warnings, rather than just " +"checking whether or not they occurred, code like this can be used::" +msgstr "" + +#: library/test.rst:1669 +msgid "" +"Here all warnings will be caught, and the test code tests the captured " +"warnings directly." +msgstr "" + +#: library/test.rst:1672 +msgid "New optional arguments *filters* and *quiet*." +msgstr "" + +#: library/test.rst:1678 +msgid "" +"Class used to record warnings for unit tests. See documentation of :func:" +"`check_warnings` above for more details." +msgstr "" diff --git a/library/textwrap.po b/library/textwrap.po index 00f47532f..b3d0ec332 100644 --- a/library/textwrap.po +++ b/library/textwrap.po @@ -5,10 +5,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-03-22 14:37+0100\n" "Last-Translator: Loc Cosnier \n" -"Language-Team: French \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -38,7 +38,7 @@ msgstr "" "devraient être assez bonnes ; sinon, nous vous conseillons d'utiliser une " "instance de :class:`TextWrapper` pour une meilleure efficacité." -#: library/textwrap.rst:22 +#: library/textwrap.rst:26 msgid "" "Wraps the single paragraph in *text* (a string) so every line is at most " "*width* characters long. Returns a list of output lines, without final " @@ -49,15 +49,16 @@ msgstr "" "liste de lignes de sortie, sans ligne vide ou caractère de fin de ligne à la " "fin." -#: library/textwrap.rst:26 +#: library/textwrap.rst:30 +#, fuzzy msgid "" "Optional keyword arguments correspond to the instance attributes of :class:" -"`TextWrapper`, documented below. *width* defaults to ``70``." +"`TextWrapper`, documented below." msgstr "" "Les arguments nommés optionnels correspondent aux attributs d'instance de :" "class:`TextWrapper`, documentés ci-dessous. *width* vaut ``70`` par défaut." -#: library/textwrap.rst:29 +#: library/textwrap.rst:33 msgid "" "See the :meth:`TextWrapper.wrap` method for additional details on how :func:" "`wrap` behaves." @@ -65,7 +66,7 @@ msgstr "" "Consultez la méthode :meth:`TextWrapper.wrap` pour plus de détails sur le " "comportement de :func:`wrap`." -#: library/textwrap.rst:35 +#: library/textwrap.rst:44 msgid "" "Wraps the single paragraph in *text*, and returns a single string containing " "the wrapped paragraph. :func:`fill` is shorthand for ::" @@ -73,7 +74,7 @@ msgstr "" "Formate le paragraphe unique dans *text* et renvoie une seule chaîne dont le " "contenu est le paragraphe formaté. :func:`fill` est un raccourci pour ::" -#: library/textwrap.rst:40 +#: library/textwrap.rst:49 msgid "" "In particular, :func:`fill` accepts exactly the same keyword arguments as :" "func:`wrap`." @@ -81,12 +82,12 @@ msgstr "" "En particulier, :func:`fill` accepte exactement les mêmes arguments nommés " "que :func:`wrap`." -#: library/textwrap.rst:46 +#: library/textwrap.rst:57 msgid "Collapse and truncate the given *text* to fit in the given *width*." msgstr "" "Réduit et tronque le *text* donné pour l'adapter à la *largeur* donnée." -#: library/textwrap.rst:48 +#: library/textwrap.rst:59 msgid "" "First the whitespace in *text* is collapsed (all whitespace is replaced by " "single spaces). If the result fits in the *width*, it is returned. " @@ -99,7 +100,7 @@ msgstr "" "fin de chaîne de manière à ce que les mots restants plus le :attr:" "`placeholder` tiennent dans :attr:`width` ::" -#: library/textwrap.rst:60 +#: library/textwrap.rst:71 msgid "" "Optional keyword arguments correspond to the instance attributes of :class:" "`TextWrapper`, documented below. Note that the whitespace is collapsed " @@ -114,11 +115,11 @@ msgstr "" "expand_tabs`, :attr:`.drop_whitespace`, et :attr:`.replace_whitespace` est " "sans effet." -#: library/textwrap.rst:71 +#: library/textwrap.rst:81 msgid "Remove any common leading whitespace from every line in *text*." msgstr "Supprime toutes les espaces en de tête de chaque ligne dans *text*." -#: library/textwrap.rst:73 +#: library/textwrap.rst:83 msgid "" "This can be used to make triple-quoted strings line up with the left edge of " "the display, while still presenting them in the source code in indented form." @@ -127,7 +128,7 @@ msgstr "" "bord gauche de l'affichage, tout en les présentant sous forme indentée dans " "le code source." -#: library/textwrap.rst:76 +#: library/textwrap.rst:86 msgid "" "Note that tabs and spaces are both treated as whitespace, but they are not " "equal: the lines ``\" hello\"`` and ``\"\\thello\"`` are considered to have " @@ -137,7 +138,7 @@ msgstr "" "mais qu'elles ne sont pas égales : les lignes ``\" hello\"`` et ``\"\\thello" "\"`` sont considérées comme n'ayant pas d'espaces de tête communes." -#: library/textwrap.rst:80 +#: library/textwrap.rst:90 msgid "" "Lines containing only whitespace are ignored in the input and normalized to " "a single newline character in the output." @@ -145,19 +146,19 @@ msgstr "" "Les lignes contenant uniquement des espaces sont ignorées en entrée et " "réduites à un seul caractère de saut de ligne en sortie." -#: library/textwrap.rst:104 +#: library/textwrap.rst:114 msgid "For example::" msgstr "Par exemple ::" -#: library/textwrap.rst:97 +#: library/textwrap.rst:107 msgid "Add *prefix* to the beginning of selected lines in *text*." msgstr "Ajoute *prefix* au début des lignes sélectionnées dans *text*." -#: library/textwrap.rst:99 +#: library/textwrap.rst:109 msgid "Lines are separated by calling ``text.splitlines(True)``." msgstr "Les lignes sont séparées en appelant ``text.splitlines(True)``." -#: library/textwrap.rst:101 +#: library/textwrap.rst:111 msgid "" "By default, *prefix* is added to all lines that do not consist solely of " "whitespace (including any line endings)." @@ -165,7 +166,7 @@ msgstr "" "Par défaut, *prefix* est ajouté à toutes les lignes qui ne sont pas " "constituées uniquement d'espaces (y compris les fins de ligne)." -#: library/textwrap.rst:110 +#: library/textwrap.rst:120 msgid "" "The optional *predicate* argument can be used to control which lines are " "indented. For example, it is easy to add *prefix* to even empty and " @@ -175,7 +176,7 @@ msgstr "" "lignes sont en retrait. Par exemple, il est facile d'ajouter *prefix* aux " "lignes vides et aux lignes blanches seulement ::" -#: library/textwrap.rst:123 +#: library/textwrap.rst:133 msgid "" ":func:`wrap`, :func:`fill` and :func:`shorten` work by creating a :class:" "`TextWrapper` instance and calling a single method on it. That instance is " @@ -190,7 +191,7 @@ msgstr "" "`fill`, il peut être plus efficace de créer votre propre objet :class:" "`TextWrapper`." -#: library/textwrap.rst:129 +#: library/textwrap.rst:139 msgid "" "Text is preferably wrapped on whitespaces and right after the hyphens in " "hyphenated words; only then will long words be broken if necessary, unless :" @@ -201,7 +202,7 @@ msgstr "" "n'est qu'alors que les mots longs seront cassés si nécessaire, à moins que :" "attr:`TextWrapper.break_long_words` soit défini sur *False*." -#: library/textwrap.rst:135 +#: library/textwrap.rst:145 msgid "" "The :class:`TextWrapper` constructor accepts a number of optional keyword " "arguments. Each keyword argument corresponds to an instance attribute, so " @@ -211,11 +212,11 @@ msgstr "" "nommés optionnels. Chaque argument nommé correspond à un attribut " "d'instance, donc par exemple ::" -#: library/textwrap.rst:141 +#: library/textwrap.rst:151 msgid "is the same as ::" msgstr "est identique à ::" -#: library/textwrap.rst:146 +#: library/textwrap.rst:156 msgid "" "You can re-use the same :class:`TextWrapper` object many times, and you can " "change any of its options through direct assignment to instance attributes " @@ -225,7 +226,7 @@ msgstr "" "vous pouvez changer n'importe laquelle de ses options par assignation " "directe aux attributs d'instance entre les utilisations." -#: library/textwrap.rst:150 +#: library/textwrap.rst:160 msgid "" "The :class:`TextWrapper` instance attributes (and keyword arguments to the " "constructor) are as follows:" @@ -233,7 +234,7 @@ msgstr "" "Les attributs d'instance de la classe :class:`TextWrapper` (et les arguments " "nommés au constructeur) sont les suivants :" -#: library/textwrap.rst:156 +#: library/textwrap.rst:166 msgid "" "(default: ``70``) The maximum length of wrapped lines. As long as there are " "no individual words in the input text longer than :attr:`width`, :class:" @@ -245,7 +246,7 @@ msgstr "" "`width`, :class:`TextWrapper` garantit qu'aucune ligne de sortie n'est plus " "longue que :attr:`width` caractères." -#: library/textwrap.rst:164 +#: library/textwrap.rst:174 msgid "" "(default: ``True``) If true, then all tab characters in *text* will be " "expanded to spaces using the :meth:`expandtabs` method of *text*." @@ -254,7 +255,7 @@ msgstr "" "dans *text* sont transformés en espaces en utilisant la méthode :meth:" "`expandtabs` de *text*." -#: library/textwrap.rst:170 +#: library/textwrap.rst:180 msgid "" "(default: ``8``) If :attr:`expand_tabs` is true, then all tab characters in " "*text* will be expanded to zero or more spaces, depending on the current " @@ -264,7 +265,7 @@ msgstr "" "caractères de tabulation dans *text* sont transformés en zéro ou plus " "d'espaces, selon la colonne courante et la taille de tabulation donnée." -#: library/textwrap.rst:179 +#: library/textwrap.rst:189 msgid "" "(default: ``True``) If true, after tab expansion but before wrapping, the :" "meth:`wrap` method will replace each whitespace character with a single " @@ -277,7 +278,7 @@ msgstr "" "nouvelle ligne, tabulation verticale, saut de page et retour chariot (``'\\t" "\\n\\v\\f\\r'``)." -#: library/textwrap.rst:187 +#: library/textwrap.rst:197 msgid "" "If :attr:`expand_tabs` is false and :attr:`replace_whitespace` is true, each " "tab character will be replaced by a single space, which is *not* the same as " @@ -287,7 +288,7 @@ msgstr "" "chaque caractère de tabulation est remplacé par une espace unique, ce qui " "*n'est pas* la même chose que l'extension des tabulations." -#: library/textwrap.rst:193 +#: library/textwrap.rst:203 msgid "" "If :attr:`replace_whitespace` is false, newlines may appear in the middle of " "a line and cause strange output. For this reason, text should be split into " @@ -299,7 +300,7 @@ msgstr "" "raison, le texte doit être divisé en paragraphes (en utilisant :meth:`str." "splitlines` ou similaire) qui sont formatés séparément." -#: library/textwrap.rst:201 +#: library/textwrap.rst:211 msgid "" "(default: ``True``) If true, whitespace at the beginning and ending of every " "line (after wrapping but before indenting) is dropped. Whitespace at the " @@ -313,7 +314,7 @@ msgstr "" "suivie par une espace. Si les espaces en cours de suppression occupent une " "ligne entière, la ligne entière est supprimée." -#: library/textwrap.rst:210 +#: library/textwrap.rst:220 msgid "" "(default: ``''``) String that will be prepended to the first line of wrapped " "output. Counts towards the length of the first line. The empty string is " @@ -323,7 +324,7 @@ msgstr "" "sortie formatée. Elle compte pour le calcul de la longueur de la première " "ligne. La chaîne vide n'est pas indentée." -#: library/textwrap.rst:217 +#: library/textwrap.rst:227 msgid "" "(default: ``''``) String that will be prepended to all lines of wrapped " "output except the first. Counts towards the length of each line except the " @@ -333,7 +334,7 @@ msgstr "" "formatée sauf la première. Elle compte pour le calcul de la longueur de " "chaque ligne à l'exception de la première." -#: library/textwrap.rst:224 +#: library/textwrap.rst:234 msgid "" "(default: ``False``) If true, :class:`TextWrapper` attempts to detect " "sentence endings and ensure that sentences are always separated by exactly " @@ -354,15 +355,15 @@ msgstr "" "une espace. Un problème avec cet algorithme est qu'il est incapable de " "détecter la différence entre \"Dr\" dans ::" -#: library/textwrap.rst:235 +#: library/textwrap.rst:245 msgid "and \"Spot.\" in ::" msgstr "et \"Spot.\" dans ::" -#: library/textwrap.rst:239 +#: library/textwrap.rst:249 msgid ":attr:`fix_sentence_endings` is false by default." msgstr ":attr:`fix_sentence_endings` est *False* par défaut." -#: library/textwrap.rst:241 +#: library/textwrap.rst:251 msgid "" "Since the sentence detection algorithm relies on ``string.lowercase`` for " "the definition of \"lowercase letter\", and a convention of using two spaces " @@ -375,7 +376,7 @@ msgstr "" "les phrases sur la même ligne, ceci est spécifique aux textes de langue " "anglaise." -#: library/textwrap.rst:249 +#: library/textwrap.rst:259 msgid "" "(default: ``True``) If true, then words longer than :attr:`width` will be " "broken in order to ensure that no lines are longer than :attr:`width`. If " @@ -390,7 +391,7 @@ msgstr "" "seront mis sur une ligne qui leur est propre, afin de minimiser le " "dépassement de :attr:`width`)." -#: library/textwrap.rst:258 +#: library/textwrap.rst:268 msgid "" "(default: ``True``) If true, wrapping will occur preferably on whitespaces " "and right after hyphens in compound words, as it is customary in English. If " @@ -407,7 +408,7 @@ msgstr "" "insécables. Le comportement par défaut dans les versions précédentes était " "de toujours permettre de couper les mots avec trait d'union." -#: library/textwrap.rst:268 +#: library/textwrap.rst:278 msgid "" "(default: ``None``) If not ``None``, then the output will contain at most " "*max_lines* lines, with *placeholder* appearing at the end of the output." @@ -415,7 +416,7 @@ msgstr "" "(par défaut : ``None```) Si ce n'est pas ``None```, alors la sortie contient " "au maximum *max_lines* lignes, avec *placeholder* à la fin de la sortie." -#: library/textwrap.rst:278 +#: library/textwrap.rst:288 msgid "" "(default: ``' [...]'``) String that will appear at the end of the output " "text if it has been truncated." @@ -423,7 +424,7 @@ msgstr "" "(par défaut : ``'' [...]'``) Chaîne qui apparaît à la fin du texte de sortie " "s'il a été tronqué." -#: library/textwrap.rst:284 +#: library/textwrap.rst:294 msgid "" ":class:`TextWrapper` also provides some public methods, analogous to the " "module-level convenience functions:" @@ -431,7 +432,7 @@ msgstr "" ":class:`TextWrapper` fournit également quelques méthodes publiques, " "analogues aux fonctions de commodité au niveau du module :" -#: library/textwrap.rst:289 +#: library/textwrap.rst:299 msgid "" "Wraps the single paragraph in *text* (a string) so every line is at most :" "attr:`width` characters long. All wrapping options are taken from instance " @@ -446,7 +447,7 @@ msgstr "" "lignes finales. Si la sortie formatée n'a pas de contenu, la liste vide est " "renvoyée." -#: library/textwrap.rst:298 +#: library/textwrap.rst:308 msgid "" "Wraps the single paragraph in *text*, and returns a single string containing " "the wrapped paragraph." diff --git a/library/threading.po b/library/threading.po index 60214e164..727cd97f2 100644 --- a/library/threading.po +++ b/library/threading.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-03-29 11:56+0200\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -39,10 +39,11 @@ msgstr "" "Ce module était auparavant optionnel, il est maintenant toujours disponible." #: library/threading.rst:19 +#, fuzzy msgid "" -"While they are not listed below, the ``camelCase`` names used for some " -"methods and functions in this module in the Python 2.x series are still " -"supported by this module." +"In the Python 2.x series, this module contained ``camelCase`` names for some " +"methods and functions. These are deprecated as of Python 3.10, but they are " +"still supported for compatibility with Python 2.5 and lower." msgstr "" "Bien qu'ils ne soient pas listés ci-dessous, ce module gère toujours les " "noms en ``camelCase`` utilisés pour certaines méthodes et fonctions de ce " @@ -81,7 +82,11 @@ msgstr "" "Renvoie le nombre d'objets :class:`Thread` actuellement vivants. Le compte " "renvoyé est égal à la longueur de la liste renvoyée par :func:`.enumerate`." -#: library/threading.rst:48 +#: library/threading.rst:45 +msgid "The function ``activeCount`` is a deprecated alias for this function." +msgstr "" + +#: library/threading.rst:50 msgid "" "Return the current :class:`Thread` object, corresponding to the caller's " "thread of control. If the caller's thread of control was not created " @@ -93,33 +98,37 @@ msgstr "" "module :mod:`Thread`, un objet *thread* factice aux fonctionnalités limitées " "est renvoyé." -#: library/threading.rst:56 +#: library/threading.rst:55 +msgid "The function ``currentThread`` is a deprecated alias for this function." +msgstr "" + +#: library/threading.rst:60 msgid "Handle uncaught exception raised by :func:`Thread.run`." msgstr "Gère les exceptions non-attrapées levées par :func:`Thread.run`." -#: library/threading.rst:58 +#: library/threading.rst:62 msgid "The *args* argument has the following attributes:" msgstr "L'argument *arg* a les attributs suivants :" -#: library/threading.rst:60 +#: library/threading.rst:64 msgid "*exc_type*: Exception type." msgstr "*exc_type* : le type de l'exception ;" -#: library/threading.rst:61 +#: library/threading.rst:65 msgid "*exc_value*: Exception value, can be ``None``." msgstr "*exc_value*: la valeur de l'exception, peut être ``None`` ;" -#: library/threading.rst:62 +#: library/threading.rst:66 msgid "*exc_traceback*: Exception traceback, can be ``None``." msgstr "" "*exc_traceback* : la pile d'appels pour cette exception, peut être ``None`` ;" -#: library/threading.rst:63 +#: library/threading.rst:67 msgid "*thread*: Thread which raised the exception, can be ``None``." msgstr "" "*thread*: le fil d'exécution ayant levé l'exception, peut être ``None``." -#: library/threading.rst:65 +#: library/threading.rst:69 msgid "" "If *exc_type* is :exc:`SystemExit`, the exception is silently ignored. " "Otherwise, the exception is printed out on :data:`sys.stderr`." @@ -127,7 +136,7 @@ msgstr "" "Si *exc_type* est :exc:`SystemExit`, l'exception est ignorée " "silencieusement. Toutes les autres sont affichées sur :data:`sys.stderr`." -#: library/threading.rst:68 +#: library/threading.rst:72 msgid "" "If this function raises an exception, :func:`sys.excepthook` is called to " "handle it." @@ -135,7 +144,7 @@ msgstr "" "Si cette fonction lève une exception, :func:`sys.excepthook` est appelée " "pour la gérer." -#: library/threading.rst:71 +#: library/threading.rst:75 msgid "" ":func:`threading.excepthook` can be overridden to control how uncaught " "exceptions raised by :func:`Thread.run` are handled." @@ -144,7 +153,7 @@ msgstr "" "contrôler comment les exceptions non-attrapées levées par :func:`Thread.run` " "sont gérées." -#: library/threading.rst:74 +#: library/threading.rst:78 msgid "" "Storing *exc_value* using a custom hook can create a reference cycle. It " "should be cleared explicitly to break the reference cycle when the exception " @@ -154,7 +163,7 @@ msgstr "" "créer un cycle de références. *exc_value* doit être nettoyée explicitement " "pour casser ce cycle lorsque l'exception n'est plus nécessaire." -#: library/threading.rst:78 +#: library/threading.rst:82 msgid "" "Storing *thread* using a custom hook can resurrect it if it is set to an " "object which is being finalized. Avoid storing *thread* after the custom " @@ -165,12 +174,19 @@ msgstr "" "*thread* après la fin de la fonction de rappel, pour éviter de ressusciter " "des objets." -#: library/threading.rst:83 +#: library/threading.rst:87 msgid ":func:`sys.excepthook` handles uncaught exceptions." msgstr "" ":func:`sys.excepthook` gère les exceptions qui n'ont pas été attrapées." -#: library/threading.rst:90 +#: library/threading.rst:93 +msgid "" +"Holds the original value of :func:`threading.excepthook`. It is saved so " +"that the original value can be restored in case they happen to get replaced " +"with broken or alternative objects." +msgstr "" + +#: library/threading.rst:101 msgid "" "Return the 'thread identifier' of the current thread. This is a nonzero " "integer. Its value has no direct meaning; it is intended as a magic cookie " @@ -184,7 +200,7 @@ msgstr "" "dictionnaire de données pour chaque fil. Les identificateurs de fils peuvent " "être recyclés lorsqu'un fil se termine et qu'un autre fil est créé." -#: library/threading.rst:101 +#: library/threading.rst:112 msgid "" "Return the native integral Thread ID of the current thread assigned by the " "kernel. This is a non-negative integer. Its value may be used to uniquely " @@ -197,7 +213,7 @@ msgstr "" "fil d'exécution se termine, après quoi la valeur peut être recyclée par le " "système d'exploitation)." -#: library/threading.rst:107 +#: library/threading.rst:118 msgid "" ":ref:`Availability `: Windows, FreeBSD, Linux, macOS, OpenBSD, " "NetBSD, AIX." @@ -205,7 +221,7 @@ msgstr "" ":ref:`Disponibilité ` : Windows, FreeBSD, Linux, macOS, " "OpenBSD, NetBSD, AIX." -#: library/threading.rst:113 +#: library/threading.rst:124 #, fuzzy msgid "" "Return a list of all :class:`Thread` objects currently active. The list " @@ -219,7 +235,7 @@ msgstr "" "créés par :func:`current_thread` et le fil principal. Elle exclut les fils " "terminés et les fils qui n'ont pas encore été lancés." -#: library/threading.rst:122 +#: library/threading.rst:133 msgid "" "Return the main :class:`Thread` object. In normal conditions, the main " "thread is the thread from which the Python interpreter was started." @@ -228,7 +244,7 @@ msgstr "" "conditions normales, le fil principal est le fil à partir duquel " "l'interpréteur Python a été lancé." -#: library/threading.rst:133 +#: library/threading.rst:144 msgid "" "Set a trace function for all threads started from the :mod:`threading` " "module. The *func* will be passed to :func:`sys.settrace` for each thread, " @@ -239,7 +255,11 @@ msgstr "" "settrace` pour chaque fil, avant que sa méthode :meth:`~Thread.run` soit " "appelée." -#: library/threading.rst:142 +#: library/threading.rst:155 +msgid "Get the trace function as set by :func:`settrace`." +msgstr "" + +#: library/threading.rst:164 msgid "" "Set a profile function for all threads started from the :mod:`threading` " "module. The *func* will be passed to :func:`sys.setprofile` for each " @@ -250,7 +270,11 @@ msgstr "" "`sys.setprofile` pour chaque fil, avant que sa méthode :meth:`~Thread.run` " "soit appelée." -#: library/threading.rst:149 +#: library/threading.rst:173 +msgid "Get the profiler function as set by :func:`setprofile`." +msgstr "" + +#: library/threading.rst:180 msgid "" "Return the thread stack size used when creating new threads. The optional " "*size* argument specifies the stack size to be used for subsequently created " @@ -287,18 +311,18 @@ msgstr "" "spécifiques, l'approche proposée est l'utilisation de multiples de 4 096 " "pour la taille de la pile)." -#: library/threading.rst:164 +#: library/threading.rst:195 msgid "" ":ref:`Availability `: Windows, systems with POSIX threads." msgstr "" ":ref:`Disponibilité ` : Windows et systèmes gérant les fils " "d'exécution POSIX." -#: library/threading.rst:167 +#: library/threading.rst:198 msgid "This module also defines the following constant:" msgstr "Ce module définit également la constante suivante :" -#: library/threading.rst:171 +#: library/threading.rst:202 msgid "" "The maximum value allowed for the *timeout* parameter of blocking functions " "(:meth:`Lock.acquire`, :meth:`RLock.acquire`, :meth:`Condition.wait`, etc.). " @@ -310,7 +334,7 @@ msgstr "" "wait`, etc.). Spécifier un délai d'attente supérieur à cette valeur lève " "une :exc:`OverflowError`." -#: library/threading.rst:179 +#: library/threading.rst:210 msgid "" "This module defines a number of classes, which are detailed in the sections " "below." @@ -318,7 +342,7 @@ msgstr "" "Ce module définit un certain nombre de classes, qui sont détaillées dans les " "sections ci-dessous." -#: library/threading.rst:182 +#: library/threading.rst:213 msgid "" "The design of this module is loosely based on Java's threading model. " "However, where Java makes locks and condition variables basic behavior of " @@ -338,16 +362,16 @@ msgstr "" "méthodes statiques de la classe *Thread* de Java, lorsqu'elles sont " "implémentées, correspondent à des fonctions au niveau du module." -#: library/threading.rst:190 +#: library/threading.rst:221 msgid "All of the methods described below are executed atomically." msgstr "" "Toutes les méthodes décrites ci-dessous sont exécutées de manière atomique." -#: library/threading.rst:194 +#: library/threading.rst:225 msgid "Thread-Local Data" msgstr "Données locales au fil d'exécution" -#: library/threading.rst:196 +#: library/threading.rst:227 msgid "" "Thread-local data is data whose values are thread specific. To manage " "thread-local data, just create an instance of :class:`local` (or a subclass) " @@ -358,16 +382,16 @@ msgstr "" "locales au fil, il suffit de créer une instance de :class:`local` (ou une " "sous-classe) et d'y stocker des données ::" -#: library/threading.rst:203 +#: library/threading.rst:234 msgid "The instance's values will be different for separate threads." msgstr "" "Les valeurs dans l'instance sont différentes pour des *threads* différents." -#: library/threading.rst:208 +#: library/threading.rst:239 msgid "A class that represents thread-local data." msgstr "Classe qui représente les données locales au fil d'exécution." -#: library/threading.rst:210 +#: library/threading.rst:241 msgid "" "For more details and extensive examples, see the documentation string of " "the :mod:`_threading_local` module." @@ -375,11 +399,11 @@ msgstr "" "Pour plus de détails et de nombreux exemples, voir la chaîne de " "documentation du module :mod:`_threading_local`." -#: library/threading.rst:217 +#: library/threading.rst:248 msgid "Thread Objects" msgstr "Objets *Threads*" -#: library/threading.rst:219 +#: library/threading.rst:250 msgid "" "The :class:`Thread` class represents an activity that is run in a separate " "thread of control. There are two ways to specify the activity: by passing a " @@ -396,7 +420,7 @@ msgstr "" "une sous-classe. En d'autres termes, réimplémentez *seulement* les méthodes :" "meth:`~Thread.__init__` et :meth:`~Thread.run` de cette classe." -#: library/threading.rst:226 +#: library/threading.rst:257 msgid "" "Once a thread object is created, its activity must be started by calling the " "thread's :meth:`~Thread.start` method. This invokes the :meth:`~Thread.run` " @@ -406,7 +430,7 @@ msgstr "" "en appelant la méthode :meth:`~Thread.start` du fil. Ceci invoque la " "méthode :meth:`~Thread.run` dans un fil d'exécution séparé." -#: library/threading.rst:230 +#: library/threading.rst:261 msgid "" "Once the thread's activity is started, the thread is considered 'alive'. It " "stops being alive when its :meth:`~Thread.run` method terminates -- either " @@ -418,7 +442,7 @@ msgstr "" "run` se termine – soit normalement, soit en levant une exception non gérée. " "La méthode :meth:`~Thread.is_alive` teste si le fil est vivant." -#: library/threading.rst:235 +#: library/threading.rst:266 msgid "" "Other threads can call a thread's :meth:`~Thread.join` method. This blocks " "the calling thread until the thread whose :meth:`~Thread.join` method is " @@ -428,7 +452,7 @@ msgstr "" "d'un fil. Ceci bloque le fil appelant jusqu'à ce que le fil dont la méthode :" "meth:`~Thread.join` est appelée soit terminé." -#: library/threading.rst:239 +#: library/threading.rst:270 msgid "" "A thread has a name. The name can be passed to the constructor, and read or " "changed through the :attr:`~Thread.name` attribute." @@ -436,7 +460,7 @@ msgstr "" "Un fil d'exécution a un nom. Le nom peut être passé au constructeur, et lu " "ou modifié via l'attribut :attr:`~Thread.name`." -#: library/threading.rst:242 +#: library/threading.rst:273 msgid "" "If the :meth:`~Thread.run` method raises an exception, :func:`threading." "excepthook` is called to handle it. By default, :func:`threading.excepthook` " @@ -446,7 +470,7 @@ msgstr "" "excepthook` est appelée pour s'en occuper. Par défaut, :func:`threading." "excepthook` ignore silencieusement :exc:`SystemExit`." -#: library/threading.rst:246 +#: library/threading.rst:277 msgid "" "A thread can be flagged as a \"daemon thread\". The significance of this " "flag is that the entire Python program exits when only daemon threads are " @@ -460,7 +484,7 @@ msgstr "" "par la propriété :attr:`~Thread.daemon` ou par l'argument *daemon* du " "constructeur." -#: library/threading.rst:253 +#: library/threading.rst:284 msgid "" "Daemon threads are abruptly stopped at shutdown. Their resources (such as " "open files, database transactions, etc.) may not be released properly. If " @@ -474,7 +498,7 @@ msgstr "" "utilisez un mécanisme de signalisation approprié tel qu'un objet évènement :" "class:`Event`." -#: library/threading.rst:258 +#: library/threading.rst:289 msgid "" "There is a \"main thread\" object; this corresponds to the initial thread of " "control in the Python program. It is not a daemon thread." @@ -482,7 +506,7 @@ msgstr "" "Il y a un objet \"fil principal\", qui correspond au fil de contrôle initial " "dans le programme Python. Ce n'est pas un fil démon." -#: library/threading.rst:261 +#: library/threading.rst:292 msgid "" "There is the possibility that \"dummy thread objects\" are created. These " "are thread objects corresponding to \"alien threads\", which are threads of " @@ -500,7 +524,7 @@ msgstr "" "meth:`~Thread.join`. Ils ne sont jamais supprimés, car il est impossible de " "détecter la fin des fils d'exécution étrangers." -#: library/threading.rst:272 +#: library/threading.rst:303 msgid "" "This constructor should always be called with keyword arguments. Arguments " "are:" @@ -508,7 +532,7 @@ msgstr "" "Ce constructeur doit toujours être appelé avec des arguments nommés. Les " "arguments sont :" -#: library/threading.rst:275 +#: library/threading.rst:306 msgid "" "*group* should be ``None``; reserved for future extension when a :class:" "`ThreadGroup` class is implemented." @@ -516,7 +540,7 @@ msgstr "" "*group* doit être ``None`` ; cet argument est réservé pour une extension " "future lorsqu'une classe :class:`ThreadGroup` sera implémentée." -#: library/threading.rst:278 +#: library/threading.rst:309 msgid "" "*target* is the callable object to be invoked by the :meth:`run` method. " "Defaults to ``None``, meaning nothing is called." @@ -525,22 +549,25 @@ msgstr "" "`run`. La valeur par défaut est ``None``, ce qui signifie que rien n'est " "appelé." -#: library/threading.rst:281 +#: library/threading.rst:312 +#, fuzzy msgid "" -"*name* is the thread name. By default, a unique name is constructed of the " -"form \"Thread-*N*\" where *N* is a small decimal number." +"*name* is the thread name. By default, a unique name is constructed of the " +"form \"Thread-*N*\" where *N* is a small decimal number, or \"Thread-*N* " +"(target)\" where \"target\" is ``target.__name__`` if the *target* argument " +"is specified." msgstr "" "*name* est le nom du fil d'exécution. Par défaut, un nom unique est " "construit de la forme « Thread–*N* » où *N* est un petit nombre décimal." -#: library/threading.rst:284 +#: library/threading.rst:317 msgid "" "*args* is the argument tuple for the target invocation. Defaults to ``()``." msgstr "" "*args* est le *n*-uplet d'arguments pour l'invocation de l'objet appelable. " "La valeur par défaut est ``()``." -#: library/threading.rst:286 +#: library/threading.rst:319 msgid "" "*kwargs* is a dictionary of keyword arguments for the target invocation. " "Defaults to ``{}``." @@ -548,7 +575,7 @@ msgstr "" "*kwargs* est un dictionnaire d'arguments nommés pour l'invocation de l'objet " "appelable. La valeur par défaut est ``{}``." -#: library/threading.rst:289 +#: library/threading.rst:322 msgid "" "If not ``None``, *daemon* explicitly sets whether the thread is daemonic. If " "``None`` (the default), the daemonic property is inherited from the current " @@ -558,7 +585,7 @@ msgstr "" "d'exécution est démonique ou pas. S'il vaut ``None`` (par défaut), la valeur " "est héritée du fil courant." -#: library/threading.rst:293 +#: library/threading.rst:326 msgid "" "If the subclass overrides the constructor, it must make sure to invoke the " "base class constructor (``Thread.__init__()``) before doing anything else to " @@ -568,15 +595,19 @@ msgstr "" "d'appeler le constructeur de la classe de base (``Thread.__init__()``) avant " "de faire autre chose au fil d'exécution." -#: library/threading.rst:297 +#: library/threading.rst:330 +msgid "Use the *target* name if *name* argument is omitted." +msgstr "" + +#: library/threading.rst:333 msgid "Added the *daemon* argument." msgstr "Ajout de l'argument *daemon*." -#: library/threading.rst:302 +#: library/threading.rst:338 msgid "Start the thread's activity." msgstr "Lance l'activité du fil d'exécution." -#: library/threading.rst:304 +#: library/threading.rst:340 msgid "" "It must be called at most once per thread object. It arranges for the " "object's :meth:`~Thread.run` method to be invoked in a separate thread of " @@ -586,7 +617,7 @@ msgstr "" "que la méthode :meth:`~Thread.run` de l'objet soit invoquée dans un fil " "d'exécution." -#: library/threading.rst:308 +#: library/threading.rst:344 msgid "" "This method will raise a :exc:`RuntimeError` if called more than once on the " "same thread object." @@ -594,11 +625,11 @@ msgstr "" "Cette méthode lève une :exc:`RuntimeError` si elle est appelée plus d'une " "fois sur le même objet fil d'exécution." -#: library/threading.rst:313 +#: library/threading.rst:349 msgid "Method representing the thread's activity." msgstr "Méthode représentant l'activité du fil d'exécution." -#: library/threading.rst:315 +#: library/threading.rst:351 msgid "" "You may override this method in a subclass. The standard :meth:`run` method " "invokes the callable object passed to the object's constructor as the " @@ -611,7 +642,7 @@ msgstr "" "positionnels et des arguments nommés tirés respectivement des arguments " "*args* et *kwargs*." -#: library/threading.rst:322 +#: library/threading.rst:358 msgid "" "Wait until the thread terminates. This blocks the calling thread until the " "thread whose :meth:`~Thread.join` method is called terminates -- either " @@ -623,7 +654,7 @@ msgstr "" "termine – soit normalement, soit par une exception non gérée – ou jusqu'à ce " "que le délai optionnel *timeout* soit atteint." -#: library/threading.rst:327 +#: library/threading.rst:363 msgid "" "When the *timeout* argument is present and not ``None``, it should be a " "floating point number specifying a timeout for the operation in seconds (or " @@ -639,7 +670,7 @@ msgstr "" "`~Thread.join` pour déterminer si le délai a expiré – si le fil d'exécution " "est toujours vivant, c'est que l'appel à :meth:`~Thread.join` a expiré." -#: library/threading.rst:334 +#: library/threading.rst:370 msgid "" "When the *timeout* argument is not present or ``None``, the operation will " "block until the thread terminates." @@ -647,13 +678,13 @@ msgstr "" "Lorsque l'argument *timeout* n'est pas présent ou vaut ``None``, l'opération " "se bloque jusqu'à ce que le fil d'exécution se termine." -#: library/threading.rst:337 +#: library/threading.rst:373 msgid "A thread can be :meth:`~Thread.join`\\ ed many times." msgstr "" "Un fil d'exécution peut être attendu via :meth:`~Thread.join` de nombreuses " "fois." -#: library/threading.rst:339 +#: library/threading.rst:375 msgid "" ":meth:`~Thread.join` raises a :exc:`RuntimeError` if an attempt is made to " "join the current thread as that would cause a deadlock. It is also an error " @@ -666,7 +697,7 @@ msgstr "" "fil d'exécution avant son lancement est aussi une erreur et, si vous tentez " "de le faire, lève la même exception." -#: library/threading.rst:346 +#: library/threading.rst:382 msgid "" "A string used for identification purposes only. It has no semantics. " "Multiple threads may be given the same name. The initial name is set by the " @@ -676,15 +707,16 @@ msgstr "" "Elle n'a pas de sémantique. Plusieurs fils d'exécution peuvent porter le " "même nom. Le nom initial est défini par le constructeur." -#: library/threading.rst:353 +#: library/threading.rst:389 +#, fuzzy msgid "" -"Old getter/setter API for :attr:`~Thread.name`; use it directly as a " +"Deprecated getter/setter API for :attr:`~Thread.name`; use it directly as a " "property instead." msgstr "" "Anciens accesseur et mutateur pour :attr:`~Thread.name` ; utilisez plutôt ce " "dernier directement." -#: library/threading.rst:358 +#: library/threading.rst:396 msgid "" "The 'thread identifier' of this thread or ``None`` if the thread has not " "been started. This is a nonzero integer. See the :func:`get_ident` " @@ -698,14 +730,14 @@ msgstr "" "se termine et qu'un autre fil est créé. L'identifiant est disponible même " "après que le fil ait terminé." -#: library/threading.rst:366 +#: library/threading.rst:404 +#, fuzzy msgid "" -"The native integral thread ID of this thread. This is a non-negative " -"integer, or ``None`` if the thread has not been started. See the :func:" -"`get_native_id` function. This represents the Thread ID (``TID``) as " -"assigned to the thread by the OS (kernel). Its value may be used to " -"uniquely identify this particular thread system-wide (until the thread " -"terminates, after which the value may be recycled by the OS)." +"The Thread ID (``TID``) of this thread, as assigned by the OS (kernel). This " +"is a non-negative integer, or ``None`` if the thread has not been started. " +"See the :func:`get_native_id` function. This value may be used to uniquely " +"identify this particular thread system-wide (until the thread terminates, " +"after which the value may be recycled by the OS)." msgstr "" "Le *Thread ID* de ce thread. C'est un nombre entier non-négatif, ou ``None`` " "si le fil n'a pas encore démarré. Voir la fonction :func:`get_native_id`. " @@ -715,7 +747,7 @@ msgstr "" "tout le système (jusqu'à la fin de l'exécution de ce fil, après quoi le " "système d'exploitation peut recycler la valeur)." -#: library/threading.rst:376 +#: library/threading.rst:413 msgid "" "Similar to Process IDs, Thread IDs are only valid (guaranteed unique system-" "wide) from the time the thread is created until the thread has been " @@ -724,18 +756,18 @@ msgstr "" "Tout comme pour les *Process IDs*, les *Thread IDs* ne sont valides " "(garantis uniques sur le système) uniquement du démarrage du fil à sa fin." -#: library/threading.rst:381 +#: library/threading.rst:418 msgid "" ":ref:`Availability `: Requires :func:`get_native_id` function." msgstr "" ":ref:`Disponibilité ` : nécessite la fonction :func:" "`get_native_id`." -#: library/threading.rst:386 +#: library/threading.rst:423 msgid "Return whether the thread is alive." msgstr "Renvoie si le fil d'exécution est vivant ou pas." -#: library/threading.rst:388 +#: library/threading.rst:425 msgid "" "This method returns ``True`` just before the :meth:`~Thread.run` method " "starts until just after the :meth:`~Thread.run` method terminates. The " @@ -746,7 +778,7 @@ msgstr "" "méthode :meth:`~Thread.run`. La fonction :func:`.enumerate` du module " "renvoie une liste de tous les fils d'exécution vivants." -#: library/threading.rst:394 +#: library/threading.rst:431 msgid "" "A boolean value indicating whether this thread is a daemon thread (True) or " "not (False). This must be set before :meth:`~Thread.start` is called, " @@ -762,26 +794,27 @@ msgstr "" "démon et donc tous les fils créés dans ce fil principal ont par défaut la " "valeur :attr:`~Thread.daemon` = ``False``." -#: library/threading.rst:401 +#: library/threading.rst:438 msgid "" "The entire Python program exits when no alive non-daemon threads are left." msgstr "" "Le programme Python se termine lorsqu'il ne reste plus de fils d'exécution " "non-démons vivants." -#: library/threading.rst:406 +#: library/threading.rst:443 +#, fuzzy msgid "" -"Old getter/setter API for :attr:`~Thread.daemon`; use it directly as a " -"property instead." +"Deprecated getter/setter API for :attr:`~Thread.daemon`; use it directly as " +"a property instead." msgstr "" "Anciens accesseur et mutateur pour :attr:`~Thread.daemon` ; utilisez plutôt " "ce dernier directement." -#: library/threading.rst:413 +#: library/threading.rst:452 msgid "Lock Objects" msgstr "Verrous" -#: library/threading.rst:415 +#: library/threading.rst:454 msgid "" "A primitive lock is a synchronization primitive that is not owned by a " "particular thread when locked. In Python, it is currently the lowest level " @@ -793,7 +826,7 @@ msgstr "" "plus bas-niveau qui soit disponible, implémentée directement par le module " "d'extension :mod:`_thread`." -#: library/threading.rst:420 +#: library/threading.rst:459 msgid "" "A primitive lock is in one of two states, \"locked\" or \"unlocked\". It is " "created in the unlocked state. It has two basic methods, :meth:`~Lock." @@ -818,11 +851,11 @@ msgstr "" "Déverrouiller un verrou qui n'est pas verrouillé provoque une :exc:" "`RuntimeError`." -#: library/threading.rst:431 +#: library/threading.rst:470 msgid "Locks also support the :ref:`context management protocol `." msgstr "" -#: library/threading.rst:433 +#: library/threading.rst:472 msgid "" "When more than one thread is blocked in :meth:`~Lock.acquire` waiting for " "the state to turn to unlocked, only one thread proceeds when a :meth:`~Lock." @@ -830,42 +863,42 @@ msgid "" "proceeds is not defined, and may vary across implementations." msgstr "" -#: library/threading.rst:438 +#: library/threading.rst:477 msgid "All methods are executed atomically." msgstr "" -#: library/threading.rst:443 +#: library/threading.rst:482 msgid "" "The class implementing primitive lock objects. Once a thread has acquired a " "lock, subsequent attempts to acquire it block, until it is released; any " "thread may release it." msgstr "" -#: library/threading.rst:447 +#: library/threading.rst:486 msgid "" "Note that ``Lock`` is actually a factory function which returns an instance " "of the most efficient version of the concrete Lock class that is supported " "by the platform." msgstr "" -#: library/threading.rst:534 +#: library/threading.rst:573 msgid "Acquire a lock, blocking or non-blocking." msgstr "Acquiert un verrou, bloquant ou non bloquant." -#: library/threading.rst:456 +#: library/threading.rst:495 msgid "" "When invoked with the *blocking* argument set to ``True`` (the default), " "block until the lock is unlocked, then set it to locked and return ``True``." msgstr "" -#: library/threading.rst:459 +#: library/threading.rst:498 msgid "" "When invoked with the *blocking* argument set to ``False``, do not block. If " "a call with *blocking* set to ``True`` would block, return ``False`` " "immediately; otherwise, set the lock to locked and return ``True``." msgstr "" -#: library/threading.rst:463 +#: library/threading.rst:502 msgid "" "When invoked with the floating-point *timeout* argument set to a positive " "value, block for at most the number of seconds specified by *timeout* and as " @@ -874,52 +907,52 @@ msgid "" "*blocking* is false." msgstr "" -#: library/threading.rst:469 +#: library/threading.rst:508 msgid "" "The return value is ``True`` if the lock is acquired successfully, ``False`` " "if not (for example if the *timeout* expired)." msgstr "" -#: library/threading.rst:556 library/threading.rst:801 +#: library/threading.rst:595 library/threading.rst:842 msgid "The *timeout* parameter is new." msgstr "Le paramètre *timeout* est nouveau." -#: library/threading.rst:475 +#: library/threading.rst:514 msgid "" "Lock acquisition can now be interrupted by signals on POSIX if the " "underlying threading implementation supports it." msgstr "" -#: library/threading.rst:482 +#: library/threading.rst:521 msgid "" "Release a lock. This can be called from any thread, not only the thread " "which has acquired the lock." msgstr "" -#: library/threading.rst:485 +#: library/threading.rst:524 msgid "" "When the lock is locked, reset it to unlocked, and return. If any other " "threads are blocked waiting for the lock to become unlocked, allow exactly " "one of them to proceed." msgstr "" -#: library/threading.rst:489 +#: library/threading.rst:528 msgid "When invoked on an unlocked lock, a :exc:`RuntimeError` is raised." msgstr "" -#: library/threading.rst:572 +#: library/threading.rst:611 msgid "There is no return value." msgstr "Il n'y a pas de valeur de retour." -#: library/threading.rst:495 +#: library/threading.rst:534 msgid "Return true if the lock is acquired." msgstr "Renvoie ``True`` si le verrou est acquis." -#: library/threading.rst:502 +#: library/threading.rst:541 msgid "RLock Objects" msgstr "" -#: library/threading.rst:504 +#: library/threading.rst:543 msgid "" "A reentrant lock is a synchronization primitive that may be acquired " "multiple times by the same thread. Internally, it uses the concepts of " @@ -928,7 +961,7 @@ msgid "" "lock; in the unlocked state, no thread owns it." msgstr "" -#: library/threading.rst:510 +#: library/threading.rst:549 msgid "" "To lock the lock, a thread calls its :meth:`~RLock.acquire` method; this " "returns once the thread owns the lock. To unlock the lock, a thread calls " @@ -939,13 +972,13 @@ msgid "" "proceed." msgstr "" -#: library/threading.rst:517 +#: library/threading.rst:556 msgid "" "Reentrant locks also support the :ref:`context management protocol `." msgstr "" -#: library/threading.rst:522 +#: library/threading.rst:561 msgid "" "This class implements reentrant lock objects. A reentrant lock must be " "released by the thread that acquired it. Once a thread has acquired a " @@ -953,14 +986,14 @@ msgid "" "thread must release it once for each time it has acquired it." msgstr "" -#: library/threading.rst:527 +#: library/threading.rst:566 msgid "" "Note that ``RLock`` is actually a factory function which returns an instance " "of the most efficient version of the concrete RLock class that is supported " "by the platform." msgstr "" -#: library/threading.rst:536 +#: library/threading.rst:575 msgid "" "When invoked without arguments: if this thread already owns the lock, " "increment the recursion level by one, and return immediately. Otherwise, if " @@ -971,13 +1004,13 @@ msgid "" "ownership of the lock. There is no return value in this case." msgstr "" -#: library/threading.rst:544 +#: library/threading.rst:583 msgid "" "When invoked with the *blocking* argument set to true, do the same thing as " "when called without arguments, and return ``True``." msgstr "" -#: library/threading.rst:547 +#: library/threading.rst:586 msgid "" "When invoked with the *blocking* argument set to false, do not block. If a " "call without an argument would block, return ``False`` immediately; " @@ -985,7 +1018,7 @@ msgid "" "``True``." msgstr "" -#: library/threading.rst:551 +#: library/threading.rst:590 msgid "" "When invoked with the floating-point *timeout* argument set to a positive " "value, block for at most the number of seconds specified by *timeout* and as " @@ -993,7 +1026,7 @@ msgid "" "acquired, false if the timeout has elapsed." msgstr "" -#: library/threading.rst:562 +#: library/threading.rst:601 msgid "" "Release a lock, decrementing the recursion level. If after the decrement it " "is zero, reset the lock to unlocked (not owned by any thread), and if any " @@ -1002,17 +1035,17 @@ msgid "" "is still nonzero, the lock remains locked and owned by the calling thread." msgstr "" -#: library/threading.rst:568 +#: library/threading.rst:607 msgid "" "Only call this method when the calling thread owns the lock. A :exc:" "`RuntimeError` is raised if this method is called when the lock is unlocked." msgstr "" -#: library/threading.rst:578 +#: library/threading.rst:617 msgid "Condition Objects" msgstr "" -#: library/threading.rst:580 +#: library/threading.rst:619 msgid "" "A condition variable is always associated with some kind of lock; this can " "be passed in or one will be created by default. Passing one in is useful " @@ -1020,7 +1053,7 @@ msgid "" "of the condition object: you don't have to track it separately." msgstr "" -#: library/threading.rst:585 +#: library/threading.rst:624 msgid "" "A condition variable obeys the :ref:`context management protocol `: using the ``with`` statement acquires the associated lock for the " @@ -1029,7 +1062,7 @@ msgid "" "associated lock." msgstr "" -#: library/threading.rst:591 +#: library/threading.rst:630 msgid "" "Other methods must be called with the associated lock held. The :meth:" "`~Condition.wait` method releases the lock, and then blocks until another " @@ -1038,14 +1071,14 @@ msgid "" "and returns. It is also possible to specify a timeout." msgstr "" -#: library/threading.rst:597 +#: library/threading.rst:636 msgid "" "The :meth:`~Condition.notify` method wakes up one of the threads waiting for " "the condition variable, if any are waiting. The :meth:`~Condition." "notify_all` method wakes up all threads waiting for the condition variable." msgstr "" -#: library/threading.rst:601 +#: library/threading.rst:640 msgid "" "Note: the :meth:`~Condition.notify` and :meth:`~Condition.notify_all` " "methods don't release the lock; this means that the thread or threads " @@ -1054,7 +1087,7 @@ msgid "" "or :meth:`~Condition.notify_all` finally relinquishes ownership of the lock." msgstr "" -#: library/threading.rst:607 +#: library/threading.rst:646 msgid "" "The typical programming style using condition variables uses the lock to " "synchronize access to some shared state; threads that are interested in a " @@ -1066,7 +1099,7 @@ msgid "" "situation with unlimited buffer capacity::" msgstr "" -#: library/threading.rst:627 +#: library/threading.rst:666 msgid "" "The ``while`` loop checking for the application's condition is necessary " "because :meth:`~Condition.wait` can return after an arbitrary long time, and " @@ -1076,7 +1109,7 @@ msgid "" "checking, and eases the computation of timeouts::" msgstr "" -#: library/threading.rst:639 +#: library/threading.rst:678 msgid "" "To choose between :meth:`~Condition.notify` and :meth:`~Condition." "notify_all`, consider whether one state change can be interesting for only " @@ -1085,44 +1118,44 @@ msgid "" "thread." msgstr "" -#: library/threading.rst:647 +#: library/threading.rst:686 msgid "" "This class implements condition variable objects. A condition variable " "allows one or more threads to wait until they are notified by another thread." msgstr "" -#: library/threading.rst:650 +#: library/threading.rst:689 msgid "" "If the *lock* argument is given and not ``None``, it must be a :class:`Lock` " "or :class:`RLock` object, and it is used as the underlying lock. Otherwise, " "a new :class:`RLock` object is created and used as the underlying lock." msgstr "" -#: library/threading.rst:776 library/threading.rst:874 -#: library/threading.rst:943 +#: library/threading.rst:817 library/threading.rst:915 +#: library/threading.rst:986 msgid "changed from a factory function to a class." msgstr "" -#: library/threading.rst:659 +#: library/threading.rst:698 msgid "" "Acquire the underlying lock. This method calls the corresponding method on " "the underlying lock; the return value is whatever that method returns." msgstr "" -#: library/threading.rst:664 +#: library/threading.rst:703 msgid "" "Release the underlying lock. This method calls the corresponding method on " "the underlying lock; there is no return value." msgstr "" -#: library/threading.rst:669 +#: library/threading.rst:708 msgid "" "Wait until notified or until a timeout occurs. If the calling thread has not " "acquired the lock when this method is called, a :exc:`RuntimeError` is " "raised." msgstr "" -#: library/threading.rst:673 +#: library/threading.rst:712 msgid "" "This method releases the underlying lock, and then blocks until it is " "awakened by a :meth:`notify` or :meth:`notify_all` call for the same " @@ -1130,14 +1163,14 @@ msgid "" "Once awakened or timed out, it re-acquires the lock and returns." msgstr "" -#: library/threading.rst:678 +#: library/threading.rst:717 msgid "" "When the *timeout* argument is present and not ``None``, it should be a " "floating point number specifying a timeout for the operation in seconds (or " "fractions thereof)." msgstr "" -#: library/threading.rst:682 +#: library/threading.rst:721 msgid "" "When the underlying lock is an :class:`RLock`, it is not released using its :" "meth:`release` method, since this may not actually unlock the lock when it " @@ -1147,24 +1180,24 @@ msgid "" "used to restore the recursion level when the lock is reacquired." msgstr "" -#: library/threading.rst:690 +#: library/threading.rst:729 msgid "" "The return value is ``True`` unless a given *timeout* expired, in which case " "it is ``False``." msgstr "" -#: library/threading.rst:908 +#: library/threading.rst:951 msgid "Previously, the method always returned ``None``." msgstr "" -#: library/threading.rst:698 +#: library/threading.rst:737 msgid "" "Wait until a condition evaluates to true. *predicate* should be a callable " "which result will be interpreted as a boolean value. A *timeout* may be " "provided giving the maximum time to wait." msgstr "" -#: library/threading.rst:702 +#: library/threading.rst:741 msgid "" "This utility method may call :meth:`wait` repeatedly until the predicate is " "satisfied, or until a timeout occurs. The return value is the last return " @@ -1172,33 +1205,33 @@ msgid "" "out." msgstr "" -#: library/threading.rst:707 +#: library/threading.rst:746 msgid "" "Ignoring the timeout feature, calling this method is roughly equivalent to " "writing::" msgstr "" -#: library/threading.rst:713 +#: library/threading.rst:752 msgid "" "Therefore, the same rules apply as with :meth:`wait`: The lock must be held " "when called and is re-acquired on return. The predicate is evaluated with " "the lock held." msgstr "" -#: library/threading.rst:721 +#: library/threading.rst:760 msgid "" "By default, wake up one thread waiting on this condition, if any. If the " "calling thread has not acquired the lock when this method is called, a :exc:" "`RuntimeError` is raised." msgstr "" -#: library/threading.rst:725 +#: library/threading.rst:764 msgid "" "This method wakes up at most *n* of the threads waiting for the condition " "variable; it is a no-op if no threads are waiting." msgstr "" -#: library/threading.rst:728 +#: library/threading.rst:767 msgid "" "The current implementation wakes up exactly *n* threads, if at least *n* " "threads are waiting. However, it's not safe to rely on this behavior. A " @@ -1206,14 +1239,14 @@ msgid "" "threads." msgstr "" -#: library/threading.rst:733 +#: library/threading.rst:772 msgid "" "Note: an awakened thread does not actually return from its :meth:`wait` call " "until it can reacquire the lock. Since :meth:`notify` does not release the " "lock, its caller should." msgstr "" -#: library/threading.rst:739 +#: library/threading.rst:778 msgid "" "Wake up all threads waiting on this condition. This method acts like :meth:" "`notify`, but wakes up all waiting threads instead of one. If the calling " @@ -1221,11 +1254,15 @@ msgid "" "`RuntimeError` is raised." msgstr "" -#: library/threading.rst:748 +#: library/threading.rst:783 +msgid "The method ``notifyAll`` is a deprecated alias for this method." +msgstr "" + +#: library/threading.rst:789 msgid "Semaphore Objects" msgstr "" -#: library/threading.rst:750 +#: library/threading.rst:791 msgid "" "This is one of the oldest synchronization primitives in the history of " "computer science, invented by the early Dutch computer scientist Edsger W. " @@ -1233,7 +1270,7 @@ msgid "" "acquire` and :meth:`~Semaphore.release`)." msgstr "" -#: library/threading.rst:755 +#: library/threading.rst:796 msgid "" "A semaphore manages an internal counter which is decremented by each :meth:" "`~Semaphore.acquire` call and incremented by each :meth:`~Semaphore.release` " @@ -1242,12 +1279,12 @@ msgid "" "meth:`~Semaphore.release`." msgstr "" -#: library/threading.rst:761 +#: library/threading.rst:802 msgid "" "Semaphores also support the :ref:`context management protocol `." msgstr "" -#: library/threading.rst:766 +#: library/threading.rst:807 msgid "" "This class implements semaphore objects. A semaphore manages an atomic " "counter representing the number of :meth:`release` calls minus the number " @@ -1256,28 +1293,28 @@ msgid "" "If not given, *value* defaults to 1." msgstr "" -#: library/threading.rst:772 +#: library/threading.rst:813 msgid "" "The optional argument gives the initial *value* for the internal counter; it " "defaults to ``1``. If the *value* given is less than 0, :exc:`ValueError` is " "raised." msgstr "" -#: library/threading.rst:781 +#: library/threading.rst:822 msgid "Acquire a semaphore." msgstr "" -#: library/threading.rst:783 +#: library/threading.rst:824 msgid "When invoked without arguments:" msgstr "" -#: library/threading.rst:785 +#: library/threading.rst:826 msgid "" "If the internal counter is larger than zero on entry, decrement it by one " "and return ``True`` immediately." msgstr "" -#: library/threading.rst:787 +#: library/threading.rst:828 msgid "" "If the internal counter is zero on entry, block until awoken by a call to :" "meth:`~Semaphore.release`. Once awoken (and the counter is greater than 0), " @@ -1286,32 +1323,32 @@ msgid "" "threads are awoken should not be relied on." msgstr "" -#: library/threading.rst:793 +#: library/threading.rst:834 msgid "" "When invoked with *blocking* set to false, do not block. If a call without " "an argument would block, return ``False`` immediately; otherwise, do the " "same thing as when called without arguments, and return ``True``." msgstr "" -#: library/threading.rst:797 +#: library/threading.rst:838 msgid "" "When invoked with a *timeout* other than ``None``, it will block for at most " "*timeout* seconds. If acquire does not complete successfully in that " "interval, return ``False``. Return ``True`` otherwise." msgstr "" -#: library/threading.rst:806 +#: library/threading.rst:847 msgid "" "Release a semaphore, incrementing the internal counter by *n*. When it was " "zero on entry and other threads are waiting for it to become larger than " "zero again, wake up *n* of those threads." msgstr "" -#: library/threading.rst:810 +#: library/threading.rst:851 msgid "Added the *n* parameter to release multiple waiting threads at once." msgstr "" -#: library/threading.rst:816 +#: library/threading.rst:857 msgid "" "Class implementing bounded semaphore objects. A bounded semaphore checks to " "make sure its current value doesn't exceed its initial value. If it does, :" @@ -1320,11 +1357,11 @@ msgid "" "times it's a sign of a bug. If not given, *value* defaults to 1." msgstr "" -#: library/threading.rst:829 +#: library/threading.rst:870 msgid ":class:`Semaphore` Example" msgstr "" -#: library/threading.rst:831 +#: library/threading.rst:872 msgid "" "Semaphores are often used to guard resources with limited capacity, for " "example, a database server. In any situation where the size of the resource " @@ -1332,37 +1369,37 @@ msgid "" "threads, your main thread would initialize the semaphore::" msgstr "" -#: library/threading.rst:840 +#: library/threading.rst:881 msgid "" "Once spawned, worker threads call the semaphore's acquire and release " "methods when they need to connect to the server::" msgstr "" -#: library/threading.rst:850 +#: library/threading.rst:891 msgid "" "The use of a bounded semaphore reduces the chance that a programming error " "which causes the semaphore to be released more than it's acquired will go " "undetected." msgstr "" -#: library/threading.rst:857 +#: library/threading.rst:898 msgid "Event Objects" msgstr "" -#: library/threading.rst:859 +#: library/threading.rst:900 msgid "" "This is one of the simplest mechanisms for communication between threads: " "one thread signals an event and other threads wait for it." msgstr "" -#: library/threading.rst:862 +#: library/threading.rst:903 msgid "" "An event object manages an internal flag that can be set to true with the :" "meth:`~Event.set` method and reset to false with the :meth:`~Event.clear` " "method. The :meth:`~Event.wait` method blocks until the flag is true." msgstr "" -#: library/threading.rst:869 +#: library/threading.rst:910 msgid "" "Class implementing event objects. An event manages a flag that can be set " "to true with the :meth:`~Event.set` method and reset to false with the :meth:" @@ -1370,39 +1407,43 @@ msgid "" "flag is initially false." msgstr "" -#: library/threading.rst:879 +#: library/threading.rst:920 msgid "Return ``True`` if and only if the internal flag is true." msgstr "" -#: library/threading.rst:883 +#: library/threading.rst:922 +msgid "The method ``isSet`` is a deprecated alias for this method." +msgstr "" + +#: library/threading.rst:926 msgid "" "Set the internal flag to true. All threads waiting for it to become true are " "awakened. Threads that call :meth:`wait` once the flag is true will not " "block at all." msgstr "" -#: library/threading.rst:889 +#: library/threading.rst:932 msgid "" "Reset the internal flag to false. Subsequently, threads calling :meth:`wait` " "will block until :meth:`.set` is called to set the internal flag to true " "again." msgstr "" -#: library/threading.rst:895 +#: library/threading.rst:938 msgid "" "Block until the internal flag is true. If the internal flag is true on " "entry, return immediately. Otherwise, block until another thread calls :" "meth:`.set` to set the flag to true, or until the optional timeout occurs." msgstr "" -#: library/threading.rst:899 +#: library/threading.rst:942 msgid "" "When the timeout argument is present and not ``None``, it should be a " "floating point number specifying a timeout for the operation in seconds (or " "fractions thereof)." msgstr "" -#: library/threading.rst:903 +#: library/threading.rst:946 msgid "" "This method returns ``True`` if and only if the internal flag has been set " "to true, either before the wait call or after the wait starts, so it will " @@ -1410,11 +1451,11 @@ msgid "" "out." msgstr "" -#: library/threading.rst:915 +#: library/threading.rst:958 msgid "Timer Objects" msgstr "" -#: library/threading.rst:917 +#: library/threading.rst:960 msgid "" "This class represents an action that should be run only after a certain " "amount of time has passed --- a timer. :class:`Timer` is a subclass of :" @@ -1422,7 +1463,7 @@ msgid "" "threads." msgstr "" -#: library/threading.rst:921 +#: library/threading.rst:964 msgid "" "Timers are started, as with threads, by calling their :meth:`~Timer.start` " "method. The timer can be stopped (before its action has begun) by calling " @@ -1431,11 +1472,11 @@ msgid "" "by the user." msgstr "" -#: library/threading.rst:927 +#: library/threading.rst:970 msgid "For example::" msgstr "Par exemple ::" -#: library/threading.rst:938 +#: library/threading.rst:981 msgid "" "Create a timer that will run *function* with arguments *args* and keyword " "arguments *kwargs*, after *interval* seconds have passed. If *args* is " @@ -1443,17 +1484,17 @@ msgid "" "``None`` (the default) then an empty dict will be used." msgstr "" -#: library/threading.rst:948 +#: library/threading.rst:991 msgid "" "Stop the timer, and cancel the execution of the timer's action. This will " "only work if the timer is still in its waiting stage." msgstr "" -#: library/threading.rst:953 +#: library/threading.rst:996 msgid "Barrier Objects" msgstr "" -#: library/threading.rst:957 +#: library/threading.rst:1000 msgid "" "This class provides a simple synchronization primitive for use by a fixed " "number of threads that need to wait for each other. Each of the threads " @@ -1462,18 +1503,18 @@ msgid "" "calls. At this point, the threads are released simultaneously." msgstr "" -#: library/threading.rst:963 +#: library/threading.rst:1006 msgid "" "The barrier can be reused any number of times for the same number of threads." msgstr "" -#: library/threading.rst:965 +#: library/threading.rst:1008 msgid "" "As an example, here is a simple way to synchronize a client and server " "thread::" msgstr "" -#: library/threading.rst:985 +#: library/threading.rst:1028 msgid "" "Create a barrier object for *parties* number of threads. An *action*, when " "provided, is a callable to be called by one of the threads when they are " @@ -1481,7 +1522,7 @@ msgid "" "the :meth:`wait` method." msgstr "" -#: library/threading.rst:992 +#: library/threading.rst:1035 msgid "" "Pass the barrier. When all the threads party to the barrier have called " "this function, they are all released simultaneously. If a *timeout* is " @@ -1489,44 +1530,44 @@ msgid "" "constructor." msgstr "" -#: library/threading.rst:997 +#: library/threading.rst:1040 msgid "" "The return value is an integer in the range 0 to *parties* -- 1, different " "for each thread. This can be used to select a thread to do some special " "housekeeping, e.g.::" msgstr "" -#: library/threading.rst:1006 +#: library/threading.rst:1049 msgid "" "If an *action* was provided to the constructor, one of the threads will have " "called it prior to being released. Should this call raise an error, the " "barrier is put into the broken state." msgstr "" -#: library/threading.rst:1010 +#: library/threading.rst:1053 msgid "If the call times out, the barrier is put into the broken state." msgstr "" -#: library/threading.rst:1012 +#: library/threading.rst:1055 msgid "" "This method may raise a :class:`BrokenBarrierError` exception if the barrier " "is broken or reset while a thread is waiting." msgstr "" -#: library/threading.rst:1017 +#: library/threading.rst:1060 msgid "" "Return the barrier to the default, empty state. Any threads waiting on it " "will receive the :class:`BrokenBarrierError` exception." msgstr "" -#: library/threading.rst:1020 +#: library/threading.rst:1063 msgid "" "Note that using this function may require some external synchronization if " "there are other threads whose state is unknown. If a barrier is broken it " "may be better to just leave it and create a new one." msgstr "" -#: library/threading.rst:1026 +#: library/threading.rst:1069 msgid "" "Put the barrier into a broken state. This causes any active or future calls " "to :meth:`wait` to fail with the :class:`BrokenBarrierError`. Use this for " @@ -1534,36 +1575,36 @@ msgid "" "application." msgstr "" -#: library/threading.rst:1031 +#: library/threading.rst:1074 msgid "" "It may be preferable to simply create the barrier with a sensible *timeout* " "value to automatically guard against one of the threads going awry." msgstr "" -#: library/threading.rst:1037 +#: library/threading.rst:1080 msgid "The number of threads required to pass the barrier." msgstr "" -#: library/threading.rst:1041 +#: library/threading.rst:1084 msgid "The number of threads currently waiting in the barrier." msgstr "" -#: library/threading.rst:1045 +#: library/threading.rst:1088 msgid "A boolean that is ``True`` if the barrier is in the broken state." msgstr "" -#: library/threading.rst:1050 +#: library/threading.rst:1093 msgid "" "This exception, a subclass of :exc:`RuntimeError`, is raised when the :class:" "`Barrier` object is reset or broken." msgstr "" -#: library/threading.rst:1057 +#: library/threading.rst:1100 msgid "" "Using locks, conditions, and semaphores in the :keyword:`!with` statement" msgstr "" -#: library/threading.rst:1059 +#: library/threading.rst:1102 msgid "" "All of the objects provided by this module that have :meth:`acquire` and :" "meth:`release` methods can be used as context managers for a :keyword:`with` " @@ -1572,11 +1613,11 @@ msgid "" "Hence, the following snippet::" msgstr "" -#: library/threading.rst:1068 +#: library/threading.rst:1111 msgid "is equivalent to::" msgstr "est équivalente à ::" -#: library/threading.rst:1076 +#: library/threading.rst:1119 msgid "" "Currently, :class:`Lock`, :class:`RLock`, :class:`Condition`, :class:" "`Semaphore`, and :class:`BoundedSemaphore` objects may be used as :keyword:" diff --git a/library/time.po b/library/time.po index 3f11b8f41..0ae4ef2f0 100644 --- a/library/time.po +++ b/library/time.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-12-03 22:31+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -303,8 +303,8 @@ msgstr "" "Renvoie la résolution (précision) de l’horloge *clk_id*. Référez-vous à :ref:" "`time-clock-id-constants` pour une liste des valeurs acceptées pour *clk_id*." -#: library/time.rst:170 library/time.rst:189 library/time.rst:629 -#: library/time.rst:765 library/time.rst:828 +#: library/time.rst:173 library/time.rst:195 library/time.rst:658 +#: library/time.rst:794 library/time.rst:857 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." @@ -316,13 +316,19 @@ msgstr "" "Renvoie l’heure de l’horloge *clk_id*. Référez-vous à :ref:`time-clock-id-" "constants` pour une liste des valeurs acceptées pour *clk_id*." -#: library/time.rst:176 +#: library/time.rst:169 +msgid "" +"Use :func:`clock_gettime_ns` to avoid the precision loss caused by the :" +"class:`float` type." +msgstr "" + +#: library/time.rst:179 msgid "Similar to :func:`clock_gettime` but return time as nanoseconds." msgstr "" "Similaire à :func:`clock_gettime` mais le temps renvoyé est exprimé en " "nanosecondes." -#: library/time.rst:185 +#: library/time.rst:188 msgid "" "Set the time of the specified clock *clk_id*. Currently, :data:" "`CLOCK_REALTIME` is the only accepted value for *clk_id*." @@ -330,12 +336,18 @@ msgstr "" "Définit l’heure de l’horloge *clk_id*. Actuellement, :data:`CLOCK_REALTIME` " "est la seule valeur acceptée pour *clk_id*." -#: library/time.rst:195 +#: library/time.rst:191 +msgid "" +"Use :func:`clock_settime_ns` to avoid the precision loss caused by the :" +"class:`float` type." +msgstr "" + +#: library/time.rst:201 msgid "Similar to :func:`clock_settime` but set time with nanoseconds." msgstr "" "Similaire à :func:`clock_settime` mais définit l’heure avec des nanosecondes." -#: library/time.rst:204 +#: library/time.rst:210 msgid "" "Convert a time expressed in seconds since the epoch to a string of a form: " "``'Sun Jun 20 23:21:05 1993'`` representing local time. The day field is two " @@ -348,7 +360,7 @@ msgstr "" "espace si celui-ci n'a qu'un seul chiffre, par exemple : ``'Wed Jun 9 " "04:26:40 1993'``." -#: library/time.rst:209 +#: library/time.rst:215 msgid "" "If *secs* is not provided or :const:`None`, the current time as returned by :" "func:`.time` is used. ``ctime(secs)`` is equivalent to " @@ -360,7 +372,7 @@ msgstr "" "``asctime(localtime(secs))``. Les informations sur les paramètres régionaux " "ne sont pas utilisées par :func:`ctime`." -#: library/time.rst:217 +#: library/time.rst:223 msgid "" "Get information on the specified clock as a namespace object. Supported " "clock names and the corresponding functions to read their value are:" @@ -369,31 +381,31 @@ msgstr "" "de nom. Les noms d’horloge pris en charge et les fonctions correspondantes " "permettant de lire leur valeur sont les suivants :" -#: library/time.rst:221 +#: library/time.rst:227 msgid "``'monotonic'``: :func:`time.monotonic`" msgstr "``'monotonic'`` : :func:`time.monotonic`" -#: library/time.rst:222 +#: library/time.rst:228 msgid "``'perf_counter'``: :func:`time.perf_counter`" msgstr "``'perf_counter'`` : :func:`time.perf_counter`" -#: library/time.rst:223 +#: library/time.rst:229 msgid "``'process_time'``: :func:`time.process_time`" msgstr "``'process_time'`` : :func:`time.process_time`" -#: library/time.rst:224 +#: library/time.rst:230 msgid "``'thread_time'``: :func:`time.thread_time`" msgstr "``'thread_time'`` : :func:`time.thread_time`" -#: library/time.rst:225 +#: library/time.rst:231 msgid "``'time'``: :func:`time.time`" msgstr "``'time'`` : :func:`time.time`" -#: library/time.rst:227 +#: library/time.rst:233 msgid "The result has the following attributes:" msgstr "Le résultat a les attributs suivants :" -#: library/time.rst:229 +#: library/time.rst:235 msgid "" "*adjustable*: ``True`` if the clock can be changed automatically (e.g. by a " "NTP daemon) or manually by the system administrator, ``False`` otherwise" @@ -402,7 +414,7 @@ msgstr "" "exemple par un démon NTP) ou manuellement par l’administrateur système, " "``False`` autrement" -#: library/time.rst:231 +#: library/time.rst:237 msgid "" "*implementation*: The name of the underlying C function used to get the " "clock value. Refer to :ref:`time-clock-id-constants` for possible values." @@ -411,18 +423,18 @@ msgstr "" "la valeur d’horloge. Voir :ref:`time-clock-id-constants` pour les valeurs " "possibles." -#: library/time.rst:233 +#: library/time.rst:239 msgid "" "*monotonic*: ``True`` if the clock cannot go backward, ``False`` otherwise" msgstr "" "*monotonic* : ``True`` si l’horloge ne peut pas revenir en arrière, " "``False`` autrement" -#: library/time.rst:235 +#: library/time.rst:241 msgid "*resolution*: The resolution of the clock in seconds (:class:`float`)" msgstr "*resolution* : La résolution de l’horloge en secondes (:class:`float`)" -#: library/time.rst:242 +#: library/time.rst:248 msgid "" "Convert a time expressed in seconds since the epoch to a :class:" "`struct_time` in UTC in which the dst flag is always zero. If *secs* is not " @@ -438,7 +450,7 @@ msgstr "" "ignorées. Voir ci-dessus pour une description de l’objet :class:" "`struct_time`. Voir :func:`calendar.timegm` pour l’inverse de cette fonction." -#: library/time.rst:252 +#: library/time.rst:258 msgid "" "Like :func:`gmtime` but converts to local time. If *secs* is not provided " "or :const:`None`, the current time as returned by :func:`.time` is used. " @@ -449,7 +461,7 @@ msgstr "" "`.time` est utilisée. Le drapeau *dst* est mis à ``1`` lorsque l’heure d’été " "s’applique à l’heure indiquée." -#: library/time.rst:259 +#: library/time.rst:265 msgid "" "This is the inverse function of :func:`localtime`. Its argument is the :" "class:`struct_time` or full 9-tuple (since the dst flag is needed; use " @@ -471,7 +483,7 @@ msgstr "" "interceptée par Python ou par les bibliothèques C sous-jacentes). La date la " "plus proche pour laquelle il peut générer une heure dépend de la plate-forme." -#: library/time.rst:271 +#: library/time.rst:277 #, fuzzy msgid "" "Return the value (in fractional seconds) of a monotonic clock, i.e. a clock " @@ -485,19 +497,32 @@ msgstr "" "point de référence de la valeur renvoyée n’est pas défini, de sorte que " "seule la différence entre les résultats d’appels consécutifs est valide." -#: library/time.rst:277 +#: library/time.rst:282 +msgid "" +"Use :func:`monotonic_ns` to avoid the precision loss caused by the :class:" +"`float` type." +msgstr "" + +#: library/time.rst:287 msgid "The function is now always available and always system-wide." msgstr "" "La fonction est maintenant toujours disponible et toujours à l’échelle du " "système." -#: library/time.rst:283 +#: library/time.rst:290 +#, fuzzy +msgid "On macOS, the function is now system-wide." +msgstr "" +"La fonction est maintenant toujours disponible et toujours à l’échelle du " +"système." + +#: library/time.rst:296 msgid "Similar to :func:`monotonic`, but return time as nanoseconds." msgstr "" "Similaire à :func:`monotonique`, mais le temps de retour est exprimé en " "nanosecondes." -#: library/time.rst:292 +#: library/time.rst:305 #, fuzzy msgid "" "Return the value (in fractional seconds) of a performance counter, i.e. a " @@ -513,12 +538,22 @@ msgstr "" "de la valeur renvoyée n’est pas défini, de sorte que seule la différence " "entre les résultats d’appels consécutifs est valide." -#: library/time.rst:302 +#: library/time.rst:311 +msgid "" +"Use :func:`perf_counter_ns` to avoid the precision loss caused by the :class:" +"`float` type." +msgstr "" + +#: library/time.rst:316 +msgid "On Windows, the function is now system-wide." +msgstr "" + +#: library/time.rst:321 msgid "Similar to :func:`perf_counter`, but return time as nanoseconds." msgstr "" "Similaire à :func:`perf_counter`, mais renvoie le temps en nanosecondes." -#: library/time.rst:314 +#: library/time.rst:333 #, fuzzy msgid "" "Return the value (in fractional seconds) of the sum of the system and user " @@ -533,12 +568,18 @@ msgstr "" "référence de la valeur renvoyée n’est pas défini, de sorte que seule la " "différence entre les résultats d’appels consécutifs est valide." -#: library/time.rst:324 +#: library/time.rst:339 +msgid "" +"Use :func:`process_time_ns` to avoid the precision loss caused by the :class:" +"`float` type." +msgstr "" + +#: library/time.rst:346 msgid "Similar to :func:`process_time` but return time as nanoseconds." msgstr "" "Similaire à :func:`process_time` mais renvoie le temps en nanosecondes." -#: library/time.rst:330 +#: library/time.rst:352 msgid "" "Suspend execution of the calling thread for the given number of seconds. The " "argument may be a floating point number to indicate a more precise sleep " @@ -557,7 +598,7 @@ msgstr "" "demandé par un montant arbitraire en raison de la planification d’une autre " "activité dans le système." -#: library/time.rst:338 +#: library/time.rst:360 msgid "" "The function now sleeps at least *secs* even if the sleep is interrupted by " "a signal, except if the signal handler raises an exception (see :pep:`475` " @@ -567,7 +608,7 @@ msgstr "" "interrompu par un signal, sauf si le gestionnaire de signaux lève une " "exception (voir :pep:`475` pour la justification)." -#: library/time.rst:349 +#: library/time.rst:371 msgid "" "Convert a tuple or :class:`struct_time` representing a time as returned by :" "func:`gmtime` or :func:`localtime` to a string as specified by the *format* " @@ -582,7 +623,7 @@ msgstr "" "champs de *t* se situe en dehors de la plage autorisée, une :exc:" "`ValueError` est levée ." -#: library/time.rst:355 +#: library/time.rst:377 msgid "" "0 is a legal argument for any position in the time tuple; if it is normally " "illegal the value is forced to a correct one." @@ -590,7 +631,7 @@ msgstr "" "0 est un argument légal pour toute position dans le *n*-uplet temporel ; " "s’il est normalement illégal, la valeur est forcée à une valeur correcte." -#: library/time.rst:358 +#: library/time.rst:380 msgid "" "The following directives can be embedded in the *format* string. They are " "shown without the optional field width and precision specification, and are " @@ -601,137 +642,137 @@ msgstr "" "de précision, et sont remplacés par les caractères indiqués dans le résultat " "de :func:`strftime` :" -#: library/time.rst:363 +#: library/time.rst:385 msgid "Directive" msgstr "Directive" -#: library/time.rst:363 +#: library/time.rst:385 msgid "Meaning" msgstr "Signification" -#: library/time.rst:363 +#: library/time.rst:385 msgid "Notes" msgstr "Notes" -#: library/time.rst:365 +#: library/time.rst:387 msgid "``%a``" msgstr "``%a``" -#: library/time.rst:365 +#: library/time.rst:387 msgid "Locale's abbreviated weekday name." msgstr "Nom abrégé du jour de la semaine selon les paramètres régionaux." -#: library/time.rst:368 +#: library/time.rst:390 msgid "``%A``" msgstr "``%A``" -#: library/time.rst:368 +#: library/time.rst:390 msgid "Locale's full weekday name." msgstr "Le nom de semaine complet de la région." -#: library/time.rst:370 +#: library/time.rst:392 msgid "``%b``" msgstr "``%b``" -#: library/time.rst:370 +#: library/time.rst:392 msgid "Locale's abbreviated month name." msgstr "Nom abrégé du mois de la région." -#: library/time.rst:373 +#: library/time.rst:395 msgid "``%B``" msgstr "``%B``" -#: library/time.rst:373 +#: library/time.rst:395 msgid "Locale's full month name." msgstr "Nom complet du mois de la région." -#: library/time.rst:375 +#: library/time.rst:397 msgid "``%c``" msgstr "``%c``" -#: library/time.rst:375 +#: library/time.rst:397 msgid "Locale's appropriate date and time representation." msgstr "" "Représentation appropriée de la date et de l’heure selon les paramètres " "régionaux." -#: library/time.rst:378 +#: library/time.rst:400 msgid "``%d``" msgstr "``%d``" -#: library/time.rst:378 +#: library/time.rst:400 msgid "Day of the month as a decimal number [01,31]." msgstr "Jour du mois sous forme décimale [01,31]." -#: library/time.rst:381 +#: library/time.rst:403 msgid "``%H``" msgstr "``%H``" -#: library/time.rst:381 +#: library/time.rst:403 msgid "Hour (24-hour clock) as a decimal number [00,23]." msgstr "Heure (horloge sur 24 heures) sous forme de nombre décimal [00,23]." -#: library/time.rst:384 +#: library/time.rst:406 msgid "``%I``" msgstr "``%I``" -#: library/time.rst:384 +#: library/time.rst:406 msgid "Hour (12-hour clock) as a decimal number [01,12]." msgstr "Heure (horloge sur 12 heures) sous forme de nombre décimal [01,12]." -#: library/time.rst:387 +#: library/time.rst:409 msgid "``%j``" msgstr "``%j``" -#: library/time.rst:387 +#: library/time.rst:409 msgid "Day of the year as a decimal number [001,366]." msgstr "Jour de l’année sous forme de nombre décimal [001,366]." -#: library/time.rst:390 +#: library/time.rst:412 msgid "``%m``" msgstr "``%m``" -#: library/time.rst:390 +#: library/time.rst:412 msgid "Month as a decimal number [01,12]." msgstr "Mois sous forme décimale [01,12]." -#: library/time.rst:393 +#: library/time.rst:415 msgid "``%M``" msgstr "``%M``" -#: library/time.rst:393 +#: library/time.rst:415 msgid "Minute as a decimal number [00,59]." msgstr "Minutes sous forme décimale [00,59]." -#: library/time.rst:396 +#: library/time.rst:418 msgid "``%p``" msgstr "``%p``" -#: library/time.rst:396 +#: library/time.rst:418 msgid "Locale's equivalent of either AM or PM." msgstr "L’équivalent local de AM ou PM." -#: library/time.rst:396 +#: library/time.rst:418 msgid "\\(1)" msgstr "\\(1)" -#: library/time.rst:399 +#: library/time.rst:421 msgid "``%S``" msgstr "``%S``" -#: library/time.rst:399 +#: library/time.rst:421 msgid "Second as a decimal number [00,61]." msgstr "Secondes sous forme de nombre décimal [00,61]." -#: library/time.rst:399 +#: library/time.rst:421 msgid "\\(2)" msgstr "\\(2)" -#: library/time.rst:402 +#: library/time.rst:424 msgid "``%U``" msgstr "``%U``" -#: library/time.rst:402 +#: library/time.rst:424 msgid "" "Week number of the year (Sunday as the first day of the week) as a decimal " "number [00,53]. All days in a new year preceding the first Sunday are " @@ -742,23 +783,23 @@ msgstr "" "précédant le premier dimanche sont considérés comme appartenant à la semaine " "0." -#: library/time.rst:413 +#: library/time.rst:435 msgid "\\(3)" msgstr "\\(3)" -#: library/time.rst:410 +#: library/time.rst:432 msgid "``%w``" msgstr "``%w``" -#: library/time.rst:410 +#: library/time.rst:432 msgid "Weekday as a decimal number [0(Sunday),6]." msgstr "Jour de la semaine sous forme de nombre décimal [0 (dimanche), 6]." -#: library/time.rst:413 +#: library/time.rst:435 msgid "``%W``" msgstr "``%W``" -#: library/time.rst:413 +#: library/time.rst:435 msgid "" "Week number of the year (Monday as the first day of the week) as a decimal " "number [00,53]. All days in a new year preceding the first Monday are " @@ -768,43 +809,43 @@ msgstr "" "forme décimale [00,53]. Tous les jours d’une nouvelle année précédant le " "premier lundi sont considérés comme appartenant à la semaine 0." -#: library/time.rst:421 +#: library/time.rst:443 msgid "``%x``" msgstr "``%x``" -#: library/time.rst:421 +#: library/time.rst:443 msgid "Locale's appropriate date representation." msgstr "Représentation de la date appropriée par les paramètres régionaux." -#: library/time.rst:424 +#: library/time.rst:446 msgid "``%X``" msgstr "``%X``" -#: library/time.rst:424 +#: library/time.rst:446 msgid "Locale's appropriate time representation." msgstr "Représentation locale de l'heure." -#: library/time.rst:427 +#: library/time.rst:449 msgid "``%y``" msgstr "``%y``" -#: library/time.rst:427 +#: library/time.rst:449 msgid "Year without century as a decimal number [00,99]." msgstr "Année sans siècle comme un nombre décimal [00, 99]." -#: library/time.rst:430 +#: library/time.rst:452 msgid "``%Y``" msgstr "``%Y``" -#: library/time.rst:430 +#: library/time.rst:452 msgid "Year with century as a decimal number." msgstr "Année complète sur quatre chiffres." -#: library/time.rst:433 +#: library/time.rst:455 msgid "``%z``" msgstr "``%z``" -#: library/time.rst:433 +#: library/time.rst:455 msgid "" "Time zone offset indicating a positive or negative time difference from UTC/" "GMT of the form +HHMM or -HHMM, where H represents decimal hour digits and M " @@ -815,28 +856,28 @@ msgstr "" "représente les chiffres des heures décimales et M, les chiffres des minutes " "décimales [*-23:59*, *+23:59*]." -#: library/time.rst:439 +#: library/time.rst:461 msgid "``%Z``" msgstr "``%Z``" -#: library/time.rst:439 +#: library/time.rst:461 msgid "Time zone name (no characters if no time zone exists)." msgstr "" "Nom du fuseau horaire (pas de caractères s’il n’y a pas de fuseau horaire)." -#: library/time.rst:442 +#: library/time.rst:464 msgid "``%%``" msgstr "``%%``" -#: library/time.rst:442 +#: library/time.rst:464 msgid "A literal ``'%'`` character." msgstr "Un caractère ``'%'`` littéral." -#: library/time.rst:445 +#: library/time.rst:467 msgid "Notes:" msgstr "Notes :" -#: library/time.rst:448 +#: library/time.rst:470 msgid "" "When used with the :func:`strptime` function, the ``%p`` directive only " "affects the output hour field if the ``%I`` directive is used to parse the " @@ -846,7 +887,7 @@ msgstr "" "%p`` n’affecte le champ d’heure en sortie que si la directive ``%I`` est " "utilisée pour analyser l’heure." -#: library/time.rst:452 +#: library/time.rst:474 msgid "" "The range really is ``0`` to ``61``; value ``60`` is valid in timestamps " "representing `leap seconds`_ and value ``61`` is supported for historical " @@ -856,7 +897,7 @@ msgstr "" "les *timestamps* représentant des secondes intercalaires (`leap seconds`_) " "et la valeur ``61`` est prise en charge pour des raisons historiques." -#: library/time.rst:457 +#: library/time.rst:479 msgid "" "When used with the :func:`strptime` function, ``%U`` and ``%W`` are only " "used in calculations when the day of the week and the year are specified." @@ -865,7 +906,7 @@ msgstr "" "%W`` ne sont utilisées que dans les calculs lorsque le jour de la semaine et " "l’année sont spécifiés." -#: library/time.rst:460 +#: library/time.rst:482 msgid "" "Here is an example, a format for dates compatible with that specified in " "the :rfc:`2822` Internet email standard. [#]_ ::" @@ -873,7 +914,7 @@ msgstr "" "Voici un exemple de format de date compatible avec celui spécifié dans la " "norme de courrier électronique Internet suivante :rfc:`2822`. [#]_ ::" -#: library/time.rst:467 +#: library/time.rst:489 msgid "" "Additional directives may be supported on certain platforms, but only the " "ones listed here have a meaning standardized by ANSI C. To see the full set " @@ -886,7 +927,7 @@ msgstr "" "en charge sur votre plate-forme, consultez la documentation :manpage:" "`strftime(3)`." -#: library/time.rst:472 +#: library/time.rst:494 msgid "" "On some platforms, an optional field width and precision specification can " "immediately follow the initial ``'%'`` of a directive in the following " @@ -898,7 +939,7 @@ msgstr "" "directive dans l’ordre suivant ; ce n’est pas non plus portable. La largeur " "du champ est normalement 2 sauf pour ``%j`` où il est 3." -#: library/time.rst:483 +#: library/time.rst:505 msgid "" "Parse a string representing a time according to a format. The return value " "is a :class:`struct_time` as returned by :func:`gmtime` or :func:`localtime`." @@ -907,7 +948,7 @@ msgstr "" "renvoyée est une :class:`struct_time` tel que renvoyé par :func:`gmtime` ou :" "func:`localtime`." -#: library/time.rst:487 +#: library/time.rst:509 msgid "" "The *format* parameter uses the same directives as those used by :func:" "`strftime`; it defaults to ``\"%a %b %d %H:%M:%S %Y\"`` which matches the " @@ -926,11 +967,11 @@ msgstr "" "précises ne peuvent pas être inférées sont ``(1900, 1, 1, 0, 0, 0, 0, 1, " "-1)``. *string* et *format* doivent être des chaînes." -#: library/time.rst:495 +#: library/time.rst:517 msgid "For example:" msgstr "Par exemple :" -#: library/time.rst:502 +#: library/time.rst:524 msgid "" "Support for the ``%Z`` directive is based on the values contained in " "``tzname`` and whether ``daylight`` is true. Because of this, it is " @@ -943,7 +984,7 @@ msgstr "" "reconnaissance des heures UTC et GMT, qui sont toujours connues (et " "considérées comme des fuseaux horaires ne respectant pas l’heure d’été)." -#: library/time.rst:507 +#: library/time.rst:529 msgid "" "Only the directives specified in the documentation are supported. Because " "``strftime()`` is implemented per platform it can sometimes offer more " @@ -958,7 +999,7 @@ msgstr "" "supporte donc pas nécessairement toutes les directives disponibles qui ne " "sont pas documentées comme gérées." -#: library/time.rst:516 +#: library/time.rst:538 msgid "" "The type of the time value sequence returned by :func:`gmtime`, :func:" "`localtime`, and :func:`strptime`. It is an object with a :term:`named " @@ -970,147 +1011,147 @@ msgstr "" "ses valeurs sont accessibles par index et par nom d’attribut. Les valeurs " "suivantes sont présentes :" -#: library/time.rst:522 +#: library/time.rst:544 msgid "Index" msgstr "Index" -#: library/time.rst:522 +#: library/time.rst:544 msgid "Attribute" msgstr "Attribut" -#: library/time.rst:522 +#: library/time.rst:544 msgid "Values" msgstr "Valeurs" -#: library/time.rst:524 +#: library/time.rst:546 msgid "0" msgstr "0" -#: library/time.rst:524 +#: library/time.rst:546 msgid ":attr:`tm_year`" msgstr ":attr:`tm_year`" -#: library/time.rst:524 +#: library/time.rst:546 msgid "(for example, 1993)" msgstr "(par exemple, 1993)" -#: library/time.rst:526 +#: library/time.rst:548 msgid "1" msgstr "1" -#: library/time.rst:526 +#: library/time.rst:548 msgid ":attr:`tm_mon`" msgstr ":attr:`tm_mon`" -#: library/time.rst:526 +#: library/time.rst:548 msgid "range [1, 12]" msgstr "plage [1, 12]" -#: library/time.rst:528 +#: library/time.rst:550 msgid "2" msgstr "2" -#: library/time.rst:528 +#: library/time.rst:550 msgid ":attr:`tm_mday`" msgstr ":attr:`tm_mday`" -#: library/time.rst:528 +#: library/time.rst:550 msgid "range [1, 31]" msgstr "plage [1, 31]" -#: library/time.rst:530 +#: library/time.rst:552 msgid "3" msgstr "3" -#: library/time.rst:530 +#: library/time.rst:552 msgid ":attr:`tm_hour`" msgstr ":attr:`tm_hour`" -#: library/time.rst:530 +#: library/time.rst:552 msgid "range [0, 23]" msgstr "plage [0, 23]" -#: library/time.rst:532 +#: library/time.rst:554 msgid "4" msgstr "4" -#: library/time.rst:532 +#: library/time.rst:554 msgid ":attr:`tm_min`" msgstr ":attr:`tm_min`" -#: library/time.rst:532 +#: library/time.rst:554 msgid "range [0, 59]" msgstr "plage [0, 59]" -#: library/time.rst:534 +#: library/time.rst:556 msgid "5" msgstr "5" -#: library/time.rst:534 +#: library/time.rst:556 msgid ":attr:`tm_sec`" msgstr ":attr:`tm_sec`" -#: library/time.rst:534 +#: library/time.rst:556 msgid "range [0, 61]; see **(2)** in :func:`strftime` description" msgstr "plage [0, 61]; voir **(2)** dans la description :func:`strftime`" -#: library/time.rst:537 +#: library/time.rst:559 msgid "6" msgstr "6" -#: library/time.rst:537 +#: library/time.rst:559 msgid ":attr:`tm_wday`" msgstr ":attr:`tm_wday`" -#: library/time.rst:537 +#: library/time.rst:559 msgid "range [0, 6], Monday is 0" msgstr "plage [0, 6], lundi valant 0" -#: library/time.rst:539 +#: library/time.rst:561 msgid "7" msgstr "7" -#: library/time.rst:539 +#: library/time.rst:561 msgid ":attr:`tm_yday`" msgstr ":attr:`tm_yday`" -#: library/time.rst:539 +#: library/time.rst:561 msgid "range [1, 366]" msgstr "plage [1, 366]" -#: library/time.rst:541 +#: library/time.rst:563 msgid "8" msgstr "8" -#: library/time.rst:541 +#: library/time.rst:563 msgid ":attr:`tm_isdst`" msgstr ":attr:`tm_isdst`" -#: library/time.rst:541 +#: library/time.rst:563 msgid "0, 1 or -1; see below" msgstr "``0``, ``1`` or ``-1`` ; voir en bas" -#: library/time.rst:545 +#: library/time.rst:567 msgid "N/A" msgstr "N/A" -#: library/time.rst:543 +#: library/time.rst:565 msgid ":attr:`tm_zone`" msgstr ":attr:`tm_zone`" -#: library/time.rst:543 +#: library/time.rst:565 msgid "abbreviation of timezone name" msgstr "abréviation du nom du fuseau horaire" -#: library/time.rst:545 +#: library/time.rst:567 msgid ":attr:`tm_gmtoff`" msgstr ":attr:`tm_gmtoff`" -#: library/time.rst:545 +#: library/time.rst:567 msgid "offset east of UTC in seconds" msgstr "décalage à l’est de UTC en secondes" -#: library/time.rst:548 +#: library/time.rst:570 msgid "" "Note that unlike the C structure, the month value is a range of [1, 12], not " "[0, 11]." @@ -1118,7 +1159,7 @@ msgstr "" "Notez que contrairement à la structure C, la valeur du mois est une plage de " "[1, 12], pas de [0, 11]." -#: library/time.rst:551 +#: library/time.rst:573 msgid "" "In calls to :func:`mktime`, :attr:`tm_isdst` may be set to 1 when daylight " "savings time is in effect, and 0 when it is not. A value of -1 indicates " @@ -1130,7 +1171,7 @@ msgstr "" "Une valeur de ``-1`` indique que cela n’est pas connu et entraînera " "généralement le remplissage de l’état correct." -#: library/time.rst:555 +#: library/time.rst:577 msgid "" "When a tuple with an incorrect length is passed to a function expecting a :" "class:`struct_time`, or having elements of the wrong type, a :exc:" @@ -1140,7 +1181,7 @@ msgstr "" "acceptant une :class:`struct_time`, ou comportant des éléments de type " "incorrect, une exception :exc:`TypeError` est levé." -#: library/time.rst:561 +#: library/time.rst:583 msgid "" "Return the time in seconds since the epoch_ as a floating point number. The " "specific date of the epoch and the handling of `leap seconds`_ is platform " @@ -1159,7 +1200,7 @@ msgstr "" "`_. Pour savoir quelle est *epoch* " "sur une plate-forme donnée, consultez ``gmtime(0)``." -#: library/time.rst:571 +#: library/time.rst:593 msgid "" "Note that even though the time is always returned as a floating point " "number, not all systems provide time with a better precision than 1 second. " @@ -1174,7 +1215,7 @@ msgstr "" "inférieure à celle d’un appel précédent si l’horloge système a été réglée " "entre les deux appels." -#: library/time.rst:577 +#: library/time.rst:599 msgid "" "The number returned by :func:`.time` may be converted into a more common " "time format (i.e. year, month, day, hour, etc...) in UTC by passing it to :" @@ -1190,7 +1231,21 @@ msgstr "" "est renvoyé, à partir duquel les composants de la date du calendrier peuvent " "être consultés en tant qu’attributs." -#: library/time.rst:592 +#: library/time.rst:606 +msgid "" +"Use :func:`time_ns` to avoid the precision loss caused by the :class:`float` " +"type." +msgstr "" + +#: library/time.rst:612 +msgid "" +"Similar to :func:`~time.time` but returns time as an integer number of " +"nanoseconds since the epoch_." +msgstr "" +"Similaire à :func:`~time.time` mais renvoie le nombre de nanosecondes depuis " +"epoch_ sous la forme d'un entier." + +#: library/time.rst:625 #, fuzzy msgid "" "Return the value (in fractional seconds) of the sum of the system and user " @@ -1206,7 +1261,13 @@ msgstr "" "indéfini, de sorte que seule la différence entre les résultats d’appels " "consécutifs dans le même fil d'exécution est valide." -#: library/time.rst:600 +#: library/time.rst:631 +msgid "" +"Use :func:`thread_time_ns` to avoid the precision loss caused by the :class:" +"`float` type." +msgstr "" + +#: library/time.rst:636 msgid "" ":ref:`Availability `: Windows, Linux, Unix systems supporting " "``CLOCK_THREAD_CPUTIME_ID``." @@ -1214,19 +1275,11 @@ msgstr "" ":ref:`Disponibilité ` : Systèmes Windows, Linux, Unix prenant " "en charge ``CLOCK_THREAD_CPUTIME_ID``." -#: library/time.rst:606 +#: library/time.rst:642 msgid "Similar to :func:`thread_time` but return time as nanoseconds." msgstr "Similaire à :func:`thread_time` mais renvoie le temps en nanosecondes." -#: library/time.rst:613 -msgid "" -"Similar to :func:`~time.time` but returns time as an integer number of " -"nanoseconds since the epoch_." -msgstr "" -"Similaire à :func:`~time.time` mais renvoie le nombre de nanosecondes depuis " -"epoch_ sous la forme d'un entier." - -#: library/time.rst:620 +#: library/time.rst:649 msgid "" "Reset the time conversion rules used by the library routines. The " "environment variable :envvar:`TZ` specifies how this is done. It will also " @@ -1245,7 +1298,7 @@ msgstr "" "d’heure d’été, ou non nul s’il existe une heure, passée, présente ou future " "lorsque l’heure d’été est appliquée)." -#: library/time.rst:632 +#: library/time.rst:661 msgid "" "Although in many cases, changing the :envvar:`TZ` environment variable may " "affect the output of functions like :func:`localtime` without calling :func:" @@ -1256,12 +1309,12 @@ msgstr "" "que :func:`localtime` sans appeler :func:`tzset`, ce comportement n'est pas " "garanti." -#: library/time.rst:636 +#: library/time.rst:665 msgid "The :envvar:`TZ` environment variable should contain no whitespace." msgstr "" "La variable d’environnement :envvar:`TZ` ne doit contenir aucun espace." -#: library/time.rst:638 +#: library/time.rst:667 msgid "" "The standard format of the :envvar:`TZ` environment variable is (whitespace " "added for clarity)::" @@ -1269,15 +1322,15 @@ msgstr "" "Le format standard de la variable d’environnement :envvar:`TZ` est (espaces " "ajoutés pour plus de clarté) ::" -#: library/time.rst:643 +#: library/time.rst:672 msgid "Where the components are:" msgstr "Où les composants sont :" -#: library/time.rst:647 +#: library/time.rst:676 msgid "``std`` and ``dst``" msgstr "``std`` et ``dst``" -#: library/time.rst:646 +#: library/time.rst:675 msgid "" "Three or more alphanumerics giving the timezone abbreviations. These will be " "propagated into time.tzname" @@ -1285,11 +1338,11 @@ msgstr "" "Trois alphanumériques ou plus donnant les abréviations du fuseau horaire. " "Ceux-ci seront propagés dans *time.tzname*" -#: library/time.rst:653 +#: library/time.rst:682 msgid "``offset``" msgstr "``offset``" -#: library/time.rst:650 +#: library/time.rst:679 msgid "" "The offset has the form: ``± hh[:mm[:ss]]``. This indicates the value added " "the local time to arrive at UTC. If preceded by a '-', the timezone is east " @@ -1302,11 +1355,11 @@ msgstr "" "aucun décalage ne suit *dst*, l’heure d’été est supposée être en avance " "d’une heure sur l’heure standard." -#: library/time.rst:675 +#: library/time.rst:704 msgid "``start[/time], end[/time]``" msgstr "``start[/time], end[/time]``" -#: library/time.rst:656 +#: library/time.rst:685 msgid "" "Indicates when to change to and back from DST. The format of the start and " "end dates are one of the following:" @@ -1314,11 +1367,11 @@ msgstr "" "Indique quand passer à DST et en revenir. Le format des dates de début et de " "fin est l’un des suivants :" -#: library/time.rst:661 +#: library/time.rst:690 msgid ":samp:`J{n}`" msgstr ":samp:`J{n}`" -#: library/time.rst:660 +#: library/time.rst:689 msgid "" "The Julian day *n* (1 <= *n* <= 365). Leap days are not counted, so in all " "years February 28 is day 59 and March 1 is day 60." @@ -1327,11 +1380,11 @@ msgstr "" "comptabilisés. Par conséquent, le 28 février est le 59\\ :sup:`e` jour et le " "1\\ :sup:`er` mars est le 60\\ :sup:`e` jour de toutes les années." -#: library/time.rst:665 +#: library/time.rst:694 msgid ":samp:`{n}`" msgstr ":samp:`{n}`" -#: library/time.rst:664 +#: library/time.rst:693 msgid "" "The zero-based Julian day (0 <= *n* <= 365). Leap days are counted, and it " "is possible to refer to February 29." @@ -1339,11 +1392,11 @@ msgstr "" "Le jour Julien de base zéro (0 <= *n* <= 365). Les jours bissextiles sont " "comptés et il est possible de se référer au 29 février." -#: library/time.rst:672 +#: library/time.rst:701 msgid ":samp:`M{m}.{n}.{d}`" msgstr ":samp:`M{m}.{n}.{d}`" -#: library/time.rst:668 +#: library/time.rst:697 msgid "" "The *d*'th day (0 <= *d* <= 6) of week *n* of month *m* of the year (1 <= " "*n* <= 5, 1 <= *m* <= 12, where week 5 means \"the last *d* day in month *m*" @@ -1356,7 +1409,7 @@ msgstr "" "semaine). La semaine 1 est la première semaine au cours de laquelle le " "*jour* se produit. Le jour zéro est un dimanche." -#: library/time.rst:674 +#: library/time.rst:703 msgid "" "``time`` has the same format as ``offset`` except that no leading sign ('-' " "or '+') is allowed. The default, if time is not given, is 02:00:00." @@ -1365,7 +1418,7 @@ msgstr "" "(``'-'`` ou ``'+'``) n’est autorisé. La valeur par défaut, si l’heure n’est " "pas spécifiée, est 02:00:00." -#: library/time.rst:688 +#: library/time.rst:717 msgid "" "On many Unix systems (including \\*BSD, Linux, Solaris, and Darwin), it is " "more convenient to use the system's zoneinfo (:manpage:`tzfile(5)`) " @@ -1384,11 +1437,11 @@ msgstr "" "zoneinfo`. Par exemple, ``'US/Eastern'``, ``'Australia/Melbourne'``, " "``'Egypt'`` ou ``'Europe/Amsterdam'``. ::" -#: library/time.rst:709 +#: library/time.rst:738 msgid "Clock ID Constants" msgstr "Constantes d’identification d’horloge" -#: library/time.rst:711 +#: library/time.rst:740 msgid "" "These constants are used as parameters for :func:`clock_getres` and :func:" "`clock_gettime`." @@ -1396,7 +1449,7 @@ msgstr "" "Ces constantes sont utilisées comme paramètres pour :func:`clock_getres` et :" "func:`clock_gettime`." -#: library/time.rst:716 +#: library/time.rst:745 msgid "" "Identical to :data:`CLOCK_MONOTONIC`, except it also includes any time that " "the system is suspended." @@ -1404,7 +1457,7 @@ msgstr "" "Identique à :data:`CLOCK_MONOTONIC`, sauf qu'elle inclut également toute " "suspension du système." -#: library/time.rst:719 +#: library/time.rst:748 msgid "" "This allows applications to get a suspend-aware monotonic clock without " "having to deal with the complications of :data:`CLOCK_REALTIME`, which may " @@ -1416,11 +1469,11 @@ msgstr "" "`CLOCK_REALTIME`, qui peuvent présenter des discontinuités si l’heure est " "modifiée à l’aide de ``settimeofday()`` ou similaire." -#: library/time.rst:725 +#: library/time.rst:754 msgid ":ref:`Availability `: Linux 2.6.39 or later." msgstr ":ref:`Disponibilité ` : Linux 2.6.39 et ultérieures." -#: library/time.rst:731 +#: library/time.rst:760 msgid "" "The Solaris OS has a ``CLOCK_HIGHRES`` timer that attempts to use an optimal " "hardware source, and may give close to nanosecond resolution. " @@ -1431,11 +1484,11 @@ msgstr "" "résolution proche de la nanoseconde. ``CLOCK_HIGHRES`` est l’horloge haute " "résolution non ajustable." -#: library/time.rst:736 +#: library/time.rst:765 msgid ":ref:`Availability `: Solaris." msgstr ":ref:`Disponibilité ` : Solaris." -#: library/time.rst:742 +#: library/time.rst:771 msgid "" "Clock that cannot be set and represents monotonic time since some " "unspecified starting point." @@ -1443,7 +1496,7 @@ msgstr "" "Horloge qui ne peut pas être réglée et représente l’heure monotone depuis un " "point de départ non spécifié." -#: library/time.rst:752 +#: library/time.rst:781 msgid "" "Similar to :data:`CLOCK_MONOTONIC`, but provides access to a raw hardware-" "based time that is not subject to NTP adjustments." @@ -1451,7 +1504,7 @@ msgstr "" "Similaire à :data:`CLOCK_MONOTONIC`, mais donne accès à une heure matérielle " "brute qui n’est pas soumise aux ajustements NTP." -#: library/time.rst:756 +#: library/time.rst:785 msgid "" ":ref:`Availability `: Linux 2.6.28 and newer, macOS 10.12 and " "newer." @@ -1459,18 +1512,18 @@ msgstr "" ":ref:`Disponibilité ` : Linux 2.6.28 et ultérieur, MacOS 10.12 " "et ultérieur." -#: library/time.rst:771 +#: library/time.rst:800 msgid "High-resolution per-process timer from the CPU." msgstr "Minuterie haute résolution par processus du CPU." -#: library/time.rst:774 +#: library/time.rst:803 msgid "" ":ref:`Availability `: FreeBSD, NetBSD 7 or later, OpenBSD." msgstr "" ":ref:`Disponibilité ` : FreeBSD, NetBSD 7 ou version " "ultérieure, OpenBSD." -#: library/time.rst:779 +#: library/time.rst:808 msgid "" "`International Atomic Time `_" @@ -1478,7 +1531,7 @@ msgstr "" "`Temps Atomique International `_ (article en anglais)" -#: library/time.rst:781 +#: library/time.rst:810 msgid "" "The system must have a current leap second table in order for this to give " "the correct answer. PTP or NTP software can maintain a leap second table." @@ -1487,15 +1540,15 @@ msgstr "" "donner une réponse correcte. Les logiciels PTP ou NTP savent gérer un " "tableau des secondes intercalaires." -#: library/time.rst:785 +#: library/time.rst:814 msgid ":ref:`Availability `: Linux." msgstr ":ref:`Disponibilité ` : Linux." -#: library/time.rst:790 +#: library/time.rst:819 msgid "Thread-specific CPU-time clock." msgstr "Horloge de temps CPU spécifique au fil d'exécution." -#: library/time.rst:799 +#: library/time.rst:828 msgid "" "Time whose absolute value is the time the system has been running and not " "suspended, providing accurate uptime measurement, both absolute and interval." @@ -1504,13 +1557,13 @@ msgstr "" "été exécuté et non suspendu, fournissant une mesure précise du temps de " "disponibilité, à la fois absolue et à intervalle." -#: library/time.rst:804 +#: library/time.rst:833 msgid ":ref:`Availability `: FreeBSD, OpenBSD 5.5 or later." msgstr "" ":ref:`Disponibilité ` : FreeBSD, OpenBSD 5.5 ou version " "ultérieure." -#: library/time.rst:810 +#: library/time.rst:839 msgid "" "Clock that increments monotonically, tracking the time since an arbitrary " "point, unaffected by frequency or time adjustments and not incremented while " @@ -1521,11 +1574,11 @@ msgstr "" "fréquence ou de temps et n'est pas incrémentée lorsque le système est en " "veille." -#: library/time.rst:815 +#: library/time.rst:844 msgid ":ref:`Availability `: macOS 10.12 and newer." msgstr ":ref:`Disponibilité ` : MacOS 10.12 et ultérieur." -#: library/time.rst:818 +#: library/time.rst:847 msgid "" "The following constant is the only parameter that can be sent to :func:" "`clock_settime`." @@ -1533,7 +1586,7 @@ msgstr "" "La constante suivante est le seul paramètre pouvant être envoyé à :func:" "`clock_settime`." -#: library/time.rst:824 +#: library/time.rst:853 msgid "" "System-wide real-time clock. Setting this clock requires appropriate " "privileges." @@ -1541,11 +1594,11 @@ msgstr "" "Horloge en temps réel à l’échelle du système. Le réglage de cette horloge " "nécessite des privilèges appropriés." -#: library/time.rst:835 +#: library/time.rst:864 msgid "Timezone Constants" msgstr "Constantes de fuseau horaire" -#: library/time.rst:839 +#: library/time.rst:868 msgid "" "The offset of the local DST timezone, in seconds west of UTC, if one is " "defined. This is negative if the local DST timezone is east of UTC (as in " @@ -1557,11 +1610,11 @@ msgstr "" "de UTC (comme en Europe occidentale, y compris le Royaume-Uni). Utilisez " "ceci uniquement si ``daylight`` est différent de zéro. Voir note ci-dessous." -#: library/time.rst:845 +#: library/time.rst:874 msgid "Nonzero if a DST timezone is defined. See note below." msgstr "Non nul si un fuseau horaire DST est défini. Voir note ci-dessous." -#: library/time.rst:849 +#: library/time.rst:878 msgid "" "The offset of the local (non-DST) timezone, in seconds west of UTC (negative " "in most of Western Europe, positive in the US, zero in the UK). See note " @@ -1571,7 +1624,7 @@ msgstr "" "de l’UTC (négatif dans la plupart des pays d’Europe occidentale, positif aux " "États-Unis, nul au Royaume-Uni). Voir note ci-dessous." -#: library/time.rst:854 +#: library/time.rst:883 msgid "" "A tuple of two strings: the first is the name of the local non-DST timezone, " "the second is the name of the local DST timezone. If no DST timezone is " @@ -1582,7 +1635,7 @@ msgstr "" "horaire DST n’est défini, la deuxième chaîne ne doit pas être utilisée. Voir " "note ci-dessous." -#: library/time.rst:860 +#: library/time.rst:889 msgid "" "For the above Timezone constants (:data:`altzone`, :data:`daylight`, :data:" "`timezone`, and :data:`tzname`), the value is determined by the timezone " @@ -1599,19 +1652,19 @@ msgstr "" "attr:`tm_zone` résulte de :func:`localtime` pour obtenir des informations " "sur le fuseau horaire." -#: library/time.rst:870 +#: library/time.rst:899 msgid "Module :mod:`datetime`" msgstr "Module :mod:`datetime`" -#: library/time.rst:870 +#: library/time.rst:899 msgid "More object-oriented interface to dates and times." msgstr "Interface plus orientée objet vers les dates et les heures." -#: library/time.rst:874 +#: library/time.rst:903 msgid "Module :mod:`locale`" msgstr "Module :mod:`locale`" -#: library/time.rst:873 +#: library/time.rst:902 msgid "" "Internationalization services. The locale setting affects the " "interpretation of many format specifiers in :func:`strftime` and :func:" @@ -1621,11 +1674,11 @@ msgstr "" "l’interprétation de nombreux spécificateurs de format dans :func:`strftime` " "et :func:`strptime`." -#: library/time.rst:877 +#: library/time.rst:906 msgid "Module :mod:`calendar`" msgstr "Module :mod:`calendar`" -#: library/time.rst:877 +#: library/time.rst:906 msgid "" "General calendar-related functions. :func:`~calendar.timegm` is the " "inverse of :func:`gmtime` from this module." @@ -1633,11 +1686,11 @@ msgstr "" "Fonctions générales liées au calendrier. :func:`~calendar.timegm` est " "l’inverse de :func:`gmtime` à partir de ce module." -#: library/time.rst:881 +#: library/time.rst:910 msgid "Footnotes" msgstr "Notes" -#: library/time.rst:882 +#: library/time.rst:911 msgid "" "The use of ``%Z`` is now deprecated, but the ``%z`` escape that expands to " "the preferred hour/minute offset is not supported by all ANSI C libraries. " diff --git a/library/timeit.po b/library/timeit.po index 8cb5655e1..20c91a19b 100644 --- a/library/timeit.po +++ b/library/timeit.po @@ -8,7 +8,7 @@ msgstr "" "POT-Creation-Date: 2021-05-29 16:33+0200\n" "PO-Revision-Date: 2021-09-06 21:26+0200\n" "Last-Translator: Jean Abou Samra \n" -"Language-Team: French \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff --git a/library/tk.po b/library/tk.po index d05c24d79..396d5a73d 100644 --- a/library/tk.po +++ b/library/tk.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-09-28 11:34+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -31,13 +31,13 @@ msgstr "" "extensions, les modules :mod:`tkinter.tix` et :mod:`tkinter.ttk`." #: library/tk.rst:18 +#, fuzzy msgid "" "The :mod:`tkinter` package is a thin object-oriented layer on top of Tcl/Tk. " "To use :mod:`tkinter`, you don't need to write Tcl code, but you will need " "to consult the Tk documentation, and occasionally the Tcl documentation. :" "mod:`tkinter` is a set of wrappers that implement the Tk widgets as Python " -"classes. In addition, the internal module :mod:`_tkinter` provides a " -"threadsafe mechanism which allows Python and Tcl to interact." +"classes." msgstr "" "Le paquet :mod:`tkinter` est une fine couche orientée objet au dessus de Tcl/" "Tk. Pour utiliser le module :mod:`tkinter`, vous n'avez pas à écrire de code " @@ -47,15 +47,17 @@ msgstr "" "mod:`_tkinter` fournit un mécanisme robuste permettant à des fils " "d'exécution Python et Tcl d'interagir." -#: library/tk.rst:25 +#: library/tk.rst:24 +#, fuzzy msgid "" ":mod:`tkinter`'s chief virtues are that it is fast, and that it usually " "comes bundled with Python. Although its standard documentation is weak, good " "material is available, which includes: references, tutorials, a book and " "others. :mod:`tkinter` is also famous for having an outdated look and feel, " "which has been vastly improved in Tk 8.5. Nevertheless, there are many other " -"GUI libraries that you could be interested in. For more information about " -"alternatives, see the :ref:`other-gui-packages` section." +"GUI libraries that you could be interested in. The Python wiki lists several " +"alternative `GUI frameworks and tools `_." msgstr "" "Les avantages de :mod:`tkinter` sont sa rapidité, et qu'il est généralement " "fourni nativement avec Python. Bien que sa documentation soit mauvaise, " diff --git a/library/tkinter.font.po b/library/tkinter.font.po index 420cb596d..8bbbea9bc 100644 --- a/library/tkinter.font.po +++ b/library/tkinter.font.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-07-20 15:08+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -159,3 +159,7 @@ msgstr "" #: library/tkinter.font.rst:96 msgid "Return a :class:`Font` representation of a tk named font." msgstr "" + +#: library/tkinter.font.rst:98 +msgid "The *root* parameter was added." +msgstr "" diff --git a/library/tkinter.po b/library/tkinter.po index d78ea36a2..d017cf8c9 100644 --- a/library/tkinter.po +++ b/library/tkinter.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-12-13 23:41+0100\n" "Last-Translator: pierre choffe \n" "Language-Team: FRENCH \n" @@ -24,18 +24,19 @@ msgid "**Source code:** :source:`Lib/tkinter/__init__.py`" msgstr "**Code source :** :source:`Lib/tkinter/__init__.py`" #: library/tkinter.rst:13 +#, fuzzy msgid "" "The :mod:`tkinter` package (\"Tk interface\") is the standard Python " -"interface to the Tk GUI toolkit. Both Tk and :mod:`tkinter` are available " -"on most Unix platforms, as well as on Windows systems. (Tk itself is not " -"part of Python; it is maintained at ActiveState.)" +"interface to the Tcl/Tk GUI toolkit. Both Tk and :mod:`tkinter` are " +"available on most Unix platforms, including macOS, as well as on Windows " +"systems." msgstr "" "Le paquet :mod:`tkinter` (« interface Tk ») est l'interface Python standard " "de la boîte à outils d'IUG Tk. Tk et :mod:`tkinter` sont disponibles sur la " "plupart des plates-formes Unix, ainsi que sur les systèmes Windows (Tk lui-" "même ne fait pas partie de Python ; il est maintenu par ActiveState)." -#: library/tkinter.rst:18 +#: library/tkinter.rst:17 msgid "" "Running ``python -m tkinter`` from the command line should open a window " "demonstrating a simple Tk interface, letting you know that :mod:`tkinter` is " @@ -49,178 +50,212 @@ msgstr "" "quelle version de Tcl/Tk est installée ; vous pouvez donc lire la " "documentation Tcl/Tk spécifique à cette version." -#: library/tkinter.rst:25 -msgid "Tkinter documentation:" -msgstr "Documentation de Tkinter :" +#: library/tkinter.rst:22 +msgid "" +"Tkinter supports a range of Tcl/Tk versions, built either with or without " +"thread support. The official Python binary release bundles Tcl/Tk 8.6 " +"threaded. See the source code for the :mod:`_tkinter` module for more " +"information about supported versions." +msgstr "" -#: library/tkinter.rst:29 -msgid "`Python Tkinter Resources `_" -msgstr "`Python Tkinter Resources `_" +#: library/tkinter.rst:27 +msgid "" +"Tkinter is not a thin wrapper, but adds a fair amount of its own logic to " +"make the experience more pythonic. This documentation will concentrate on " +"these additions and changes, and refer to the official Tcl/Tk documentation " +"for details that are unchanged." +msgstr "" -#: library/tkinter.rst:28 +#: library/tkinter.rst:34 msgid "" -"The Python Tkinter Topic Guide provides a great deal of information on using " -"Tk from Python and links to other sources of information on Tk." +"Tcl/Tk 8.5 (2007) introduced a modern set of themed user interface " +"components along with a new API to use them. Both old and new APIs are still " +"available. Most documentation you will find online still uses the old API " +"and can be woefully outdated." msgstr "" -"Le *Python Tkinter Topic Guide* fournit beaucoup d'informations sur " -"l'utilisation de Tk à partir de Python et des liens vers d'autres sources " -"d'information sur Tk." -#: library/tkinter.rst:32 -msgid "`TKDocs `_" +#: library/tkinter.rst:43 +#, fuzzy +msgid "`TkDocs `_" msgstr "`TKDocs `_" -#: library/tkinter.rst:32 +#: library/tkinter.rst:42 msgid "" -"Extensive tutorial plus friendlier widget pages for some of the widgets." -msgstr "Tutoriel complet plus convivial pour certains des objets graphiques." +"Extensive tutorial on creating user interfaces with Tkinter. Explains key " +"concepts, and illustrates recommended approaches using the modern API." +msgstr "" -#: library/tkinter.rst:35 +#: library/tkinter.rst:46 msgid "" "`Tkinter 8.5 reference: a GUI for Python `_" msgstr "" -#: library/tkinter.rst:35 -msgid "On-line reference material." -msgstr "Documents de référence en ligne." +#: library/tkinter.rst:46 +msgid "" +"Reference documentation for Tkinter 8.5 detailing available classes, " +"methods, and options." +msgstr "" -#: library/tkinter.rst:38 -msgid "`Tkinter docs from effbot `_" -msgstr "`Documents Tkinter sur effbot `_" +#: library/tkinter.rst:48 +msgid "Tcl/Tk Resources:" +msgstr "" -#: library/tkinter.rst:38 -msgid "Online reference for tkinter supported by effbot.org." -msgstr "Référence en ligne pour *tkinter* réalisée par *effbot.org*." +#: library/tkinter.rst:51 +msgid "`Tk commands `_" +msgstr "`Commandes Tk `_" -#: library/tkinter.rst:41 -msgid "`Programming Python `_" -msgstr "`Programming Python `_" +#: library/tkinter.rst:51 +msgid "" +"Comprehensive reference to each of the underlying Tcl/Tk commands used by " +"Tkinter." +msgstr "" -#: library/tkinter.rst:41 -msgid "Book by Mark Lutz, has excellent coverage of Tkinter." -msgstr "Livre de Mark Lutz, qui couvre excellemment bien Tkinter." +#: library/tkinter.rst:54 +#, fuzzy +msgid "`Tcl/Tk Home Page `_" +msgstr "`Pages de manuel récentes de Tcl/Tk `_" -#: library/tkinter.rst:44 +#: library/tkinter.rst:54 +msgid "Additional documentation, and links to Tcl/Tk core development." +msgstr "" + +#: library/tkinter.rst:56 +msgid "Books:" +msgstr "" + +#: library/tkinter.rst:59 +#, fuzzy msgid "" -"`Modern Tkinter for Busy Python Developers `_" +"`Modern Tkinter for Busy Python Developers `_" msgstr "" "`Modern Tkinter for Busy Python Developers `_" -#: library/tkinter.rst:44 -msgid "" -"Book by Mark Roseman about building attractive and modern graphical user " -"interfaces with Python and Tkinter." +#: library/tkinter.rst:59 +msgid "By Mark Roseman. (ISBN 978-1999149567)" msgstr "" -"Livre de Mark Roseman sur la construction d'interfaces graphiques " -"esthétiques et modernes avec Python et Tkinter." -#: library/tkinter.rst:47 +#: library/tkinter.rst:62 +#, fuzzy msgid "" -"`Python and Tkinter Programming `_" +"`Python and Tkinter Programming `_" msgstr "" "`Python and Tkinter Programming `_" -#: library/tkinter.rst:47 -msgid "Book by John Grayson (ISBN 1-884777-81-3)." -msgstr "Livre de John Grayson (ISBN 1-884777-81-3)." +#: library/tkinter.rst:62 +msgid "By Alan Moore. (ISBN 978-1788835886)" +msgstr "" -#: library/tkinter.rst:49 -msgid "Tcl/Tk documentation:" -msgstr "Documentation de Tcl/Tk :" +#: library/tkinter.rst:65 +msgid "`Programming Python `_" +msgstr "`Programming Python `_" -#: library/tkinter.rst:53 -msgid "`Tk commands `_" -msgstr "`Commandes Tk `_" +#: library/tkinter.rst:65 +#, fuzzy +msgid "By Mark Lutz; has excellent coverage of Tkinter. (ISBN 978-0596158101)" +msgstr "Livre de Mark Lutz, qui couvre excellemment bien Tkinter." -#: library/tkinter.rst:52 +#: library/tkinter.rst:67 +#, fuzzy msgid "" -"Most commands are available as :mod:`tkinter` or :mod:`tkinter.ttk` classes. " -"Change '8.6' to match the version of your Tcl/Tk installation." +"`Tcl and the Tk Toolkit (2nd edition) `_" msgstr "" -"La plupart des commandes sont disponibles sous forme de classes :mod:" -"`tkinter` ou :mod:`tkinter.ttk`. Modifiez '8.6' pour correspondre à votre " -"version installée de Tcl/Tk." +"`Tcl and the Tk Toolkit `_" -#: library/tkinter.rst:56 -msgid "`Tcl/Tk recent man pages `_" -msgstr "`Pages de manuel récentes de Tcl/Tk `_" +#: library/tkinter.rst:68 +msgid "" +"By John Ousterhout, inventor of Tcl/Tk, and Ken Jones; does not cover " +"Tkinter. (ISBN 978-0321336330)" +msgstr "" -#: library/tkinter.rst:56 -msgid "Recent Tcl/Tk manuals on www.tcl.tk." -msgstr "Manuels récents de Tcl/Tk sur *www.tcl.tk*." +#: library/tkinter.rst:72 +msgid "Architecture" +msgstr "" -#: library/tkinter.rst:59 -msgid "`ActiveState Tcl Home Page `_" -msgstr "`Page d'accueil Tcl `_ chez ActiveState" +#: library/tkinter.rst:74 +msgid "" +"Tcl/Tk is not a single library but rather consists of a few distinct " +"modules, each with separate functionality and its own official " +"documentation. Python's binary releases also ship an add-on module together " +"with it." +msgstr "" -#: library/tkinter.rst:59 -msgid "The Tk/Tcl development is largely taking place at ActiveState." +#: library/tkinter.rst:90 +msgid "Tcl" msgstr "" -"Le développement de Tk/Tcl se déroule en grande partie au sein d'ActiveState." -#: library/tkinter.rst:62 +#: library/tkinter.rst:80 msgid "" -"`Tcl and the Tk Toolkit `_" +"Tcl is a dynamic interpreted programming language, just like Python. Though " +"it can be used on its own as a general-purpose programming language, it is " +"most commonly embedded into C applications as a scripting engine or an " +"interface to the Tk toolkit. The Tcl library has a C interface to create and " +"manage one or more instances of a Tcl interpreter, run Tcl commands and " +"scripts in those instances, and add custom commands implemented in either " +"Tcl or C. Each interpreter has an event queue, and there are facilities to " +"send events to it and process them. Unlike Python, Tcl's execution model is " +"designed around cooperative multitasking, and Tkinter bridges this " +"difference (see `Threading model`_ for details)." msgstr "" -"`Tcl and the Tk Toolkit `_" -#: library/tkinter.rst:62 -msgid "Book by John Ousterhout, the inventor of Tcl." -msgstr "Livre de John Ousterhout, l'inventeur de Tcl." +#: library/tkinter.rst:851 +msgid "Tk" +msgstr "Tk" -#: library/tkinter.rst:64 -msgid "`Practical Programming in Tcl and Tk `_" -msgstr "`Practical Programming in Tcl and Tk `_" +#: library/tkinter.rst:93 +msgid "" +"Tk is a `Tcl package `_ implemented in C that adds " +"custom commands to create and manipulate GUI widgets. Each :class:`Tk` " +"object embeds its own Tcl interpreter instance with Tk loaded into it. Tk's " +"widgets are very customizable, though at the cost of a dated appearance. Tk " +"uses Tcl's event queue to generate and process GUI events." +msgstr "" -#: library/tkinter.rst:65 -msgid "Brent Welch's encyclopedic book." -msgstr "Le livre encyclopédique de Brent Welch." +#: library/tkinter.rst:103 +#, fuzzy +msgid "Ttk" +msgstr "Tk" -#: library/tkinter.rst:69 -msgid "Tkinter Modules" -msgstr "Modules Tkinter" +#: library/tkinter.rst:100 +msgid "" +"Themed Tk (Ttk) is a newer family of Tk widgets that provide a much better " +"appearance on different platforms than many of the classic Tk widgets. Ttk " +"is distributed as part of Tk, starting with Tk version 8.5. Python bindings " +"are provided in a separate module, :mod:`tkinter.ttk`." +msgstr "" -#: library/tkinter.rst:71 +#: library/tkinter.rst:105 msgid "" -"Most of the time, :mod:`tkinter` is all you really need, but a number of " -"additional modules are available as well. The Tk interface is located in a " -"binary module named :mod:`_tkinter`. This module contains the low-level " -"interface to Tk, and should never be used directly by application " -"programmers. It is usually a shared library (or DLL), but might in some " -"cases be statically linked with the Python interpreter." +"Internally, Tk and Ttk use facilities of the underlying operating system, i." +"e., Xlib on Unix/X11, Cocoa on macOS, GDI on Windows." msgstr "" -"La plupart du temps, :mod:`tkinter` est tout ce dont vous avez vraiment " -"besoin mais un certain nombre de modules supplémentaires sont également " -"disponibles. L'interface Tk est située dans un module binaire nommé :mod:" -"`_tkinter`. Ce module contient l'interface de bas niveau vers Tk et ne doit " -"jamais être utilisé directement par les développeurs. Il s'agit généralement " -"d'une bibliothèque partagée (ou DLL) mais elle peut, dans certains cas, être " -"liée statiquement à l'interpréteur Python." -#: library/tkinter.rst:78 +#: library/tkinter.rst:108 msgid "" -"In addition to the Tk interface module, :mod:`tkinter` includes a number of " -"Python modules, :mod:`tkinter.constants` being one of the most important. " -"Importing :mod:`tkinter` will automatically import :mod:`tkinter.constants`, " -"so, usually, to use Tkinter all you need is a simple import statement::" +"When your Python application uses a class in Tkinter, e.g., to create a " +"widget, the :mod:`tkinter` module first assembles a Tcl/Tk command string. " +"It passes that Tcl command string to an internal :mod:`_tkinter` binary " +"module, which then calls the Tcl interpreter to evaluate it. The Tcl " +"interpreter will then call into the Tk and/or Ttk packages, which will in " +"turn make calls to Xlib, Cocoa, or GDI." msgstr "" -"En plus du module d'interface Tk, :mod:`tkinter` inclut un certain nombre de " -"modules Python, :mod:`tkinter.constants` étant l'un des plus importants. " -"Importer :mod:`tkinter` charge automatiquement :mod:`tkinter.constants` " -"donc, habituellement, pour utiliser Tkinter, tout ce dont vous avez besoin " -"est une simple commande d'importation ::" -#: library/tkinter.rst:85 -msgid "Or, more often::" -msgstr "Ou, plus souvent ::" +#: library/tkinter.rst:116 +msgid "Tkinter Modules" +msgstr "Modules Tkinter" -#: library/tkinter.rst:92 +#: library/tkinter.rst:118 +msgid "" +"Support for Tkinter is spread across several modules. Most applications will " +"need the main :mod:`tkinter` module, as well as the :mod:`tkinter.ttk` " +"module, which provides the modern themed widget set and API::" +msgstr "" + +#: library/tkinter.rst:129 msgid "" "The :class:`Tk` class is instantiated without arguments. This creates a " "toplevel widget of Tk which usually is the main window of an application. " @@ -230,7 +265,7 @@ msgstr "" "haut niveau de Tk qui est généralement la fenêtre principale d'une " "application. Chaque instance a son propre interpréteur Tcl associé." -#: library/tkinter.rst:101 +#: library/tkinter.rst:138 msgid "" "The :func:`Tcl` function is a factory function which creates an object much " "like that created by the :class:`Tk` class, except that it does not " @@ -250,550 +285,585 @@ msgstr "" "peut avoir une fenêtre de haut niveau créée (et le sous-système Tk " "initialisé) en appelant sa méthode :meth:`loadtk`." -#: library/tkinter.rst:110 -msgid "Other modules that provide Tk support include:" +#: library/tkinter.rst:147 +#, fuzzy +msgid "The modules that provide Tk support include:" msgstr "Parmi les modules qui savent gérer Tk, nous pouvons citer :" -#: library/tkinter.rst:113 +#: library/tkinter.rst:150 +#, fuzzy +msgid ":mod:`tkinter`" +msgstr ":mod:`tkinter.dnd`" + +#: library/tkinter.rst:150 +#, fuzzy +msgid "Main Tkinter module." +msgstr "Modules Tkinter" + +#: library/tkinter.rst:153 msgid ":mod:`tkinter.colorchooser`" msgstr ":mod:`tkinter.colorchooser`" -#: library/tkinter.rst:113 +#: library/tkinter.rst:153 msgid "Dialog to let the user choose a color." msgstr "Boîte de dialogue permettant à l'utilisateur de choisir une couleur." -#: library/tkinter.rst:116 +#: library/tkinter.rst:156 msgid ":mod:`tkinter.commondialog`" msgstr ":mod:`tkinter.commondialog`" -#: library/tkinter.rst:116 +#: library/tkinter.rst:156 msgid "Base class for the dialogs defined in the other modules listed here." msgstr "" "Classe de base pour les boîtes de dialogue définies dans les autres modules " "listés ici." -#: library/tkinter.rst:119 +#: library/tkinter.rst:159 msgid ":mod:`tkinter.filedialog`" msgstr ":mod:`tkinter.filedialog`" -#: library/tkinter.rst:119 +#: library/tkinter.rst:159 msgid "Common dialogs to allow the user to specify a file to open or save." msgstr "" "Boîtes de dialogue standard permettant à l'utilisateur de spécifier un " "fichier à ouvrir ou à enregistrer." -#: library/tkinter.rst:122 +#: library/tkinter.rst:162 msgid ":mod:`tkinter.font`" msgstr ":mod:`tkinter.font`" -#: library/tkinter.rst:122 +#: library/tkinter.rst:162 msgid "Utilities to help work with fonts." msgstr "Utilitaires pour gérer les polices de caractères." -#: library/tkinter.rst:125 +#: library/tkinter.rst:165 msgid ":mod:`tkinter.messagebox`" msgstr ":mod:`tkinter.messagebox`" -#: library/tkinter.rst:125 +#: library/tkinter.rst:165 msgid "Access to standard Tk dialog boxes." msgstr "Accès aux boîtes de dialogue Tk standard." -#: library/tkinter.rst:128 +#: library/tkinter.rst:168 msgid ":mod:`tkinter.scrolledtext`" msgstr ":mod:`tkinter.scrolledtext`" -#: library/tkinter.rst:128 +#: library/tkinter.rst:168 msgid "Text widget with a vertical scroll bar built in." msgstr "" "Outil d'affichage de texte avec une barre de défilement verticale intégrée." -#: library/tkinter.rst:131 +#: library/tkinter.rst:171 msgid ":mod:`tkinter.simpledialog`" msgstr ":mod:`tkinter.simpledialog`" -#: library/tkinter.rst:131 +#: library/tkinter.rst:171 msgid "Basic dialogs and convenience functions." msgstr "Boîtes de dialogue simples et fonctions utilitaires." -#: library/tkinter.rst:135 +#: library/tkinter.rst:175 +#, fuzzy +msgid ":mod:`tkinter.ttk`" +msgstr ":mod:`tkinter.font`" + +#: library/tkinter.rst:174 +msgid "" +"Themed widget set introduced in Tk 8.5, providing modern alternatives for " +"many of the classic widgets in the main :mod:`tkinter` module." +msgstr "" + +#: library/tkinter.rst:177 +msgid "Additional modules:" +msgstr "" + +#: library/tkinter.rst:184 +#, fuzzy +msgid ":mod:`_tkinter`" +msgstr ":mod:`tkinter.dnd`" + +#: library/tkinter.rst:180 +#, fuzzy +msgid "" +"A binary module that contains the low-level interface to Tcl/Tk. It is " +"automatically imported by the main :mod:`tkinter` module, and should never " +"be used directly by application programmers. It is usually a shared library " +"(or DLL), but might in some cases be statically linked with the Python " +"interpreter." +msgstr "" +"La plupart du temps, :mod:`tkinter` est tout ce dont vous avez vraiment " +"besoin mais un certain nombre de modules supplémentaires sont également " +"disponibles. L'interface Tk est située dans un module binaire nommé :mod:" +"`_tkinter`. Ce module contient l'interface de bas niveau vers Tk et ne doit " +"jamais être utilisé directement par les développeurs. Il s'agit généralement " +"d'une bibliothèque partagée (ou DLL) mais elle peut, dans certains cas, être " +"liée statiquement à l'interpréteur Python." + +#: library/tkinter.rst:188 +#, fuzzy +msgid ":mod:`idlelib`" +msgstr ":mod:`turtle`" + +#: library/tkinter.rst:187 +msgid "" +"Python's Integrated Development and Learning Environment (IDLE). Based on :" +"mod:`tkinter`." +msgstr "" + +#: library/tkinter.rst:193 +#, fuzzy +msgid ":mod:`tkinter.constants`" +msgstr ":mod:`tkinter.font`" + +#: library/tkinter.rst:191 +msgid "" +"Symbolic constants that can be used in place of strings when passing various " +"parameters to Tkinter calls. Automatically imported by the main :mod:" +"`tkinter` module." +msgstr "" + +#: library/tkinter.rst:197 msgid ":mod:`tkinter.dnd`" msgstr ":mod:`tkinter.dnd`" -#: library/tkinter.rst:134 +#: library/tkinter.rst:196 +#, fuzzy msgid "" -"Drag-and-drop support for :mod:`tkinter`. This is experimental and should " -"become deprecated when it is replaced with the Tk DND." +"(experimental) Drag-and-drop support for :mod:`tkinter`. This will become " +"deprecated when it is replaced with the Tk DND." msgstr "" "Support du glisser-déposer pour :mod:`tkinter`. Il s'agit d'une méthode " "expérimentale qui ne sera plus maintenue lorsqu'elle sera remplacée par Tk " "DND." -#: library/tkinter.rst:139 +#: library/tkinter.rst:201 +#, fuzzy +msgid ":mod:`tkinter.tix`" +msgstr ":mod:`tkinter.font`" + +#: library/tkinter.rst:200 +msgid "" +"(deprecated) An older third-party Tcl/Tk package that adds several new " +"widgets. Better alternatives for most can be found in :mod:`tkinter.ttk`." +msgstr "" + +#: library/tkinter.rst:205 msgid ":mod:`turtle`" msgstr ":mod:`turtle`" -#: library/tkinter.rst:138 +#: library/tkinter.rst:204 msgid "Turtle graphics in a Tk window." msgstr "Tortue graphique dans une fenêtre Tk." -#: library/tkinter.rst:142 +#: library/tkinter.rst:208 msgid "Tkinter Life Preserver" msgstr "Guide de survie Tkinter" -#: library/tkinter.rst:147 +#: library/tkinter.rst:210 msgid "" "This section is not designed to be an exhaustive tutorial on either Tk or " -"Tkinter. Rather, it is intended as a stop gap, providing some introductory " -"orientation on the system." +"Tkinter. For that, refer to one of the external resources noted earlier. " +"Instead, this section provides a very quick orientation to what a Tkinter " +"application looks like, identifies foundational Tk concepts, and explains " +"how the Tkinter wrapper is structured." msgstr "" -"Cette section n'est pas conçue pour être un tutoriel exhaustif de Tk ou " -"Tkinter. Il s'agit plutôt d'un guide d'introduction au système." -#: library/tkinter.rst:151 -msgid "Credits:" -msgstr "Crédits :" - -#: library/tkinter.rst:153 -msgid "Tk was written by John Ousterhout while at Berkeley." -msgstr "*Tk* a été écrit par John Ousterhout de Berkeley." +#: library/tkinter.rst:216 +msgid "" +"The remainder of this section will help you to identify the classes, " +"methods, and options you'll need in your Tkinter application, and where to " +"find more detailed documentation on them, including in the official Tcl/Tk " +"reference manual." +msgstr "" -#: library/tkinter.rst:155 -msgid "Tkinter was written by Steen Lumholt and Guido van Rossum." -msgstr "*Tkinter* a été écrit par Steen Lumholt et Guido van Rossum." +#: library/tkinter.rst:223 +#, fuzzy +msgid "A Hello World Program" +msgstr "Un simple programme *Hello World*" -#: library/tkinter.rst:157 +#: library/tkinter.rst:225 msgid "" -"This Life Preserver was written by Matt Conway at the University of Virginia." +"We'll start by walking through a \"Hello World\" application in Tkinter. " +"This isn't the smallest one we could write, but has enough to illustrate " +"some key concepts you'll need to know." msgstr "" -"Ce guide de survie a été écrit par Matt Conway de l'Université de Virginie." -#: library/tkinter.rst:159 +#: library/tkinter.rst:241 msgid "" -"The HTML rendering, and some liberal editing, was produced from a FrameMaker " -"version by Ken Manheimer." +"After the imports, the next line creates an instance of the :class:`Tk` " +"class, which initializes Tk and creates its associated Tcl interpreter. It " +"also creates a toplevel window, known as the root window, which serves as " +"the main window of the application." msgstr "" -"Le rendu HTML, avec quelques modifications, a été réalisé à partir d'une " -"version FrameMaker par Ken Manheimer." -#: library/tkinter.rst:162 +#: library/tkinter.rst:246 msgid "" -"Fredrik Lundh elaborated and revised the class interface descriptions, to " -"get them current with Tk 4.2." +"The following line creates a frame widget, which in this case will contain a " +"label and a button we'll create next. The frame is fit inside the root " +"window." msgstr "" -"Fredrik Lundh a élaboré et mis à jour les descriptions de l'interface des " -"classes, en cohérence avec Tk 4.2." -#: library/tkinter.rst:165 +#: library/tkinter.rst:250 msgid "" -"Mike Clarkson converted the documentation to LaTeX, and compiled the User " -"Interface chapter of the reference manual." +"The next line creates a label widget holding a static text string. The :meth:" +"`grid` method is used to specify the relative layout (position) of the label " +"within its containing frame widget, similar to how tables in HTML work." msgstr "" -"Mike Clarkson a converti la documentation en LaTeX et a compilé le chapitre " -"*Interface utilisateur* du manuel de référence." - -#: library/tkinter.rst:170 -msgid "How To Use This Section" -msgstr "Mode d'emploi" -#: library/tkinter.rst:172 +#: library/tkinter.rst:254 msgid "" -"This section is designed in two parts: the first half (roughly) covers " -"background material, while the second half can be taken to the keyboard as a " -"handy reference." +"A button widget is then created, and placed to the right of the label. When " +"pressed, it will call the :meth:`destroy` method of the root window." msgstr "" -"Cette section est divisée en deux parties : la première moitié (à peu près) " -"couvre la partie théorique, tandis que la seconde moitié peut être utilisée " -"comme guide pratique." -#: library/tkinter.rst:176 +#: library/tkinter.rst:257 msgid "" -"When trying to answer questions of the form \"how do I do blah\", it is " -"often best to find out how to do \"blah\" in straight Tk, and then convert " -"this back into the corresponding :mod:`tkinter` call. Python programmers can " -"often guess at the correct Python command by looking at the Tk " -"documentation. This means that in order to use Tkinter, you will have to " -"know a little bit about Tk. This document can't fulfill that role, so the " -"best we can do is point you to the best documentation that exists. Here are " -"some hints:" +"Finally, the :meth:`mainloop` method puts everything on the display, and " +"responds to user input until the program terminates." msgstr "" -"Lorsque l'on essaie de répondre à des questions sur la manière de faire " -"« ceci ou cela », il est souvent préférable de trouver comment le faire en " -"Tk, puis de le convertir en fonction correspondante :mod:`tkinter`. Les " -"programmeurs Python peuvent souvent deviner la commande Python correcte en " -"consultant la documentation Tk. Cela signifie que pour utiliser Tkinter, " -"vous devez en savoir un peu plus sur Tk. Ce document ne peut pas remplir ce " -"rôle, alors le mieux que nous puissions faire est de vous indiquer la " -"meilleure documentation qui existe. Voici quelques conseils :" -#: library/tkinter.rst:184 -msgid "" -"The authors strongly suggest getting a copy of the Tk man pages. " -"Specifically, the man pages in the ``manN`` directory are most useful. The " -"``man3`` man pages describe the C interface to the Tk library and thus are " -"not especially helpful for script writers." +#: library/tkinter.rst:263 +msgid "Important Tk Concepts" +msgstr "" + +#: library/tkinter.rst:265 +msgid "Even this simple program illustrates the following key Tk concepts:" msgstr "" -"Les auteurs conseillent fortement d'obtenir une copie des pages de manuel de " -"Tk. En particulier, les pages de manuel dans le répertoire ``manN`` sont les " -"plus utiles. Les pages de manuel ``man3`` décrivent l'interface C de la " -"bibliothèque Tk et ne sont donc pas particulièrement utiles aux développeurs " -"de scripts." -#: library/tkinter.rst:189 +#: library/tkinter.rst:270 +#, fuzzy +msgid "widgets" +msgstr "widget" + +#: library/tkinter.rst:268 msgid "" -"Addison-Wesley publishes a book called Tcl and the Tk Toolkit by John " -"Ousterhout (ISBN 0-201-63337-X) which is a good introduction to Tcl and Tk " -"for the novice. The book is not exhaustive, and for many details it defers " -"to the man pages." +"A Tkinter user interface is made up of individual *widgets*. Each widget is " +"represented as a Python object, instantiated from classes like :class:`ttk." +"Frame`, :class:`ttk.Label`, and :class:`ttk.Button`." +msgstr "" + +#: library/tkinter.rst:276 +msgid "widget hierarchy" msgstr "" -"Addison-Wesley a publié un livre intitulé *Tcl and the Tk Toolkit* de John " -"Ousterhout (ISBN 0-201-63337-X) qui est une bonne introduction à Tcl et Tk " -"pour débutants. Le livre n'est pas exhaustif et, pour beaucoup de détails, " -"il renvoie aux pages du manuel." -#: library/tkinter.rst:194 +#: library/tkinter.rst:273 msgid "" -":file:`tkinter/__init__.py` is a last resort for most, but can be a good " -"place to go when nothing else makes sense." +"Widgets are arranged in a *hierarchy*. The label and button were contained " +"within a frame, which in turn was contained within the root window. When " +"creating each *child* widget, its *parent* widget is passed as the first " +"argument to the widget constructor." msgstr "" -":file:`tkinter/__init__.py` est souvent un dernier recours, mais peut être " -"un bon endroit où aller quand rien d'autre ne fait sens." -#: library/tkinter.rst:199 -msgid "A Simple Hello World Program" -msgstr "Un simple programme *Hello World*" +#: library/tkinter.rst:281 +msgid "configuration options" +msgstr "" + +#: library/tkinter.rst:279 +msgid "" +"Widgets have *configuration options*, which modify their appearance and " +"behavior, such as the text to display in a label or button. Different " +"classes of widgets will have different sets of options." +msgstr "" -#: library/tkinter.rst:231 -msgid "A (Very) Quick Look at Tcl/Tk" -msgstr "Un (très) rapide aperçu de Tcl/Tk" +#: library/tkinter.rst:286 +msgid "geometry management" +msgstr "" -#: library/tkinter.rst:233 +#: library/tkinter.rst:284 msgid "" -"The class hierarchy looks complicated, but in actual practice, application " -"programmers almost always refer to the classes at the very bottom of the " -"hierarchy." +"Widgets aren't automatically added to the user interface when they are " +"created. A *geometry manager* like ``grid`` controls where in the user " +"interface they are placed." msgstr "" -"La hiérarchie de classes semble compliquée mais, dans la pratique, les " -"développeurs d'applications se réfèrent presque toujours aux classes situées " -"tout en bas de la hiérarchie." -#: library/tkinter.rst:237 -msgid "Notes:" -msgstr "Notes :" +#: library/tkinter.rst:292 +msgid "event loop" +msgstr "" -#: library/tkinter.rst:239 +#: library/tkinter.rst:289 msgid "" -"These classes are provided for the purposes of organizing certain functions " -"under one namespace. They aren't meant to be instantiated independently." +"Tkinter reacts to user input, changes from your program, and even refreshes " +"the display only when actively running an *event loop*. If your program " +"isn't running the event loop, your user interface won't update." +msgstr "" + +#: library/tkinter.rst:295 +msgid "Understanding How Tkinter Wraps Tcl/Tk" msgstr "" -"Ces classes sont fournies dans le but d'organiser certaines fonctions sous " -"un seul espace de nommage. Elles n'ont pas vocation à être instanciées " -"indépendamment." -#: library/tkinter.rst:242 +#: library/tkinter.rst:297 msgid "" -"The :class:`Tk` class is meant to be instantiated only once in an " -"application. Application programmers need not instantiate one explicitly, " -"the system creates one whenever any of the other classes are instantiated." +"When your application uses Tkinter's classes and methods, internally Tkinter " +"is assembling strings representing Tcl/Tk commands, and executing those " +"commands in the Tcl interpreter attached to your applicaton's :class:`Tk` " +"instance." msgstr "" -"La classe :class:`Tk` est destinée à être instanciée une seule fois dans une " -"application. Les développeurs d'applications n'ont pas besoin d'en " -"instancier une explicitement, Le système en crée une au besoin quand une des " -"autres classes est instanciée." -#: library/tkinter.rst:246 +#: library/tkinter.rst:302 msgid "" -"The :class:`Widget` class is not meant to be instantiated, it is meant only " -"for subclassing to make \"real\" widgets (in C++, this is called an " -"'abstract class')." +"Whether it's trying to navigate reference documentation, trying to find the " +"right method or option, adapting some existing code, or debugging your " +"Tkinter application, there are times that it will be useful to understand " +"what those underlying Tcl/Tk commands look like." msgstr "" -"La classe :class:`Widget` n'est pas destinée à être instanciée, elle est " -"destinée uniquement au sous-classement pour faire de « vrais » objets " -"graphiques (en C++, on appelle cela une « classe abstraite »)." -#: library/tkinter.rst:250 +#: library/tkinter.rst:307 msgid "" -"To make use of this reference material, there will be times when you will " -"need to know how to read short passages of Tk and how to identify the " -"various parts of a Tk command. (See section :ref:`tkinter-basic-mapping` " -"for the :mod:`tkinter` equivalents of what's below.)" +"To illustrate, here is the Tcl/Tk equivalent of the main part of the Tkinter " +"script above." msgstr "" -"Pour comprendre cette documentation, il y aura des moments où vous aurez " -"besoin de savoir comment lire de courts passages de Tk et comment identifier " -"les différentes parties d'une commande Tk. (Voir la section :ref:`tkinter-" -"basic-mapping` pour les équivalents :mod:`tkinter` de ce qui suit)." -#: library/tkinter.rst:255 +#: library/tkinter.rst:318 msgid "" -"Tk scripts are Tcl programs. Like all Tcl programs, Tk scripts are just " -"lists of tokens separated by spaces. A Tk widget is just its *class*, the " -"*options* that help configure it, and the *actions* that make it do useful " -"things." +"Tcl's syntax is similar to many shell languages, where the first word is the " +"command to be executed, with arguments to that command following it, " +"separated by spaces. Without getting into too many details, notice the " +"following:" msgstr "" -"Les scripts Tk sont des programmes Tcl. Comme tous les programmes Tcl, les " -"scripts Tk ne sont que des listes de commandes séparées par des espaces. Un " -"objet graphique Tk n'est constitué que de sa *classe*, des *options* qui " -"l'aident à se configurer et des *actions* qui lui font faire des choses " -"utiles." -#: library/tkinter.rst:259 -msgid "To make a widget in Tk, the command is always of the form::" +#: library/tkinter.rst:322 +msgid "" +"The commands used to create widgets (like ``ttk::frame``) correspond to " +"widget classes in Tkinter." msgstr "" -"Pour créer un objet graphique en Tk, la commande est toujours de la forme ::" -#: library/tkinter.rst:264 -msgid "*classCommand*" -msgstr "*classCommand*" +#: library/tkinter.rst:325 +msgid "" +"Tcl widget options (like ``-text``) correspond to keyword arguments in " +"Tkinter." +msgstr "" -#: library/tkinter.rst:264 -msgid "denotes which kind of widget to make (a button, a label, a menu...)" +#: library/tkinter.rst:328 +msgid "" +"Widgets are referred to by a *pathname* in Tcl (like ``.frm.btn``), whereas " +"Tkinter doesn't use names but object references." msgstr "" -"indique le type d'objet graphique à réaliser (un bouton, une étiquette, un " -"menu…)" -#: library/tkinter.rst:273 -msgid "*newPathname*" -msgstr "*newPathname*" +#: library/tkinter.rst:331 +msgid "" +"A widget's place in the widget hierarchy is encoded in its (hierarchical) " +"pathname, which uses a ``.`` (dot) as a path separator. The pathname for the " +"root window is just ``.`` (dot). In Tkinter, the hierarchy is defined not by " +"pathname but by specifying the parent widget when creating each child widget." +msgstr "" -#: library/tkinter.rst:269 +#: library/tkinter.rst:337 msgid "" -"is the new name for this widget. All names in Tk must be unique. To help " -"enforce this, widgets in Tk are named with *pathnames*, just like files in a " -"file system. The top level widget, the *root*, is called ``.`` (period) and " -"children are delimited by more periods. For example, ``.myApp.controlPanel." -"okButton`` might be the name of a widget." +"Operations which are implemented as separate *commands* in Tcl (like " +"``grid`` or ``destroy``) are represented as *methods* on Tkinter widget " +"objects. As you'll see shortly, at other times Tcl uses what appear to be " +"method calls on widget objects, which more closely mirror what would is used " +"in Tkinter." msgstr "" -"est le nouveau nom pour cet objet graphique. Tous les noms dans Tk doivent " -"être uniques. Pour vous aider à respecter cette règle, les objets " -"graphiques dans Tk sont nommés avec des *noms d'accès*, tout comme les " -"fichiers dans le système de fichiers. L'objet graphique de niveau " -"supérieur, la racine (*root* en anglais), s'appelle ``.`` (point) et les " -"enfants sont délimités par plusieurs points. Par exemple, ``.myApp." -"controlPanel.okButton`` pourrait être le nom d'un objet graphique." -#: library/tkinter.rst:279 -msgid "*options*" -msgstr "*options*" +#: library/tkinter.rst:345 +msgid "How do I...? What option does...?" +msgstr "" -#: library/tkinter.rst:276 +#: library/tkinter.rst:347 msgid "" -"configure the widget's appearance and in some cases, its behavior. The " -"options come in the form of a list of flags and values. Flags are preceded " -"by a '-', like Unix shell command flags, and values are put in quotes if " -"they are more than one word." +"If you're not sure how to do something in Tkinter, and you can't immediately " +"find it in the tutorial or reference documentation you're using, there are a " +"few strategies that can be helpful." msgstr "" -"configure l'apparence de l'objet graphique et, dans certains cas, son " -"comportement. Les options se présentent sous la forme d'une liste de " -"paramètres et de valeurs. Les paramètres sont précédés d'un « - », comme les " -"paramètres d'une ligne de commande du shell Unix, et les valeurs sont mises " -"entre guillemets si elles font plus d'un mot." -#: library/tkinter.rst:542 library/tkinter.rst:721 -msgid "For example::" -msgstr "Par exemple ::" +#: library/tkinter.rst:351 +msgid "" +"First, remember that the details of how individual widgets work may vary " +"across different versions of both Tkinter and Tcl/Tk. If you're searching " +"documentation, make sure it corresponds to the Python and Tcl/Tk versions " +"installed on your system." +msgstr "" -#: library/tkinter.rst:289 +#: library/tkinter.rst:356 msgid "" -"Once created, the pathname to the widget becomes a new command. This new " -"*widget command* is the programmer's handle for getting the new widget to " -"perform some *action*. In C, you'd express this as someAction(fred, " -"someOptions), in C++, you would express this as fred." -"someAction(someOptions), and in Tk, you say::" +"When searching for how to use an API, it helps to know the exact name of the " +"class, option, or method that you're using. Introspection, either in an " +"interactive Python shell or with :func:`print`, can help you identify what " +"you need." msgstr "" -"Une fois créé, le chemin d'accès à l'objet graphique devient une nouvelle " -"commande. Cette nouvelle *commande d'objet graphique* est l'interface du " -"programmeur pour que le nouvel objet graphique effectue une *action*. En C, " -"cela prend la forme ``someAction(fred, someOptions)``, en C++, cela prend la " -"forme `fred.someAction(someOptions)` et, en Tk, vous dites ::" -#: library/tkinter.rst:297 -msgid "Note that the object name, ``.fred``, starts with a dot." -msgstr "Notez que le nom de l'objet, ``.fred``, commence par un point." +#: library/tkinter.rst:361 +msgid "" +"To find out what configuration options are available on any widget, call " +"its :meth:`configure` method, which returns a dictionary containing a " +"variety of information about each object, including its default and current " +"values. Use :meth:`keys` to get just the names of each option." +msgstr "" -#: library/tkinter.rst:299 +#: library/tkinter.rst:371 msgid "" -"As you'd expect, the legal values for *someAction* will depend on the " -"widget's class: ``.fred disable`` works if fred is a button (fred gets " -"greyed out), but does not work if fred is a label (disabling of labels is " -"not supported in Tk)." +"As most widgets have many configuration options in common, it can be useful " +"to find out which are specific to a particular widget class. Comparing the " +"list of options to that of a simpler widget, like a frame, is one way to do " +"that." msgstr "" -"Comme vous pouvez vous y attendre, les valeurs autorisées pour *someAction* " -"dépendent de la classe de l'objet graphique : ``.fred disable`` fonctionne " -"si ``fred`` est un bouton (``fred`` devient grisé), mais ne fonctionne pas " -"si ``fred`` est une étiquette (la désactivation des étiquettes n'existe pas " -"dans Tk)." -#: library/tkinter.rst:303 +#: library/tkinter.rst:380 msgid "" -"The legal values of *someOptions* is action dependent. Some actions, like " -"``disable``, require no arguments, others, like a text-entry box's " -"``delete`` command, would need arguments to specify what range of text to " -"delete." +"Similarly, you can find the available methods for a widget object using the " +"standard :func:`dir` function. If you try it, you'll see there are over 200 " +"common widget methods, so again identifying those specific to a widget class " +"is helpful." msgstr "" -"Les valeurs possibles de *someOptions* dépendent de l'action. Certaines " -"actions, comme ``disable``, ne nécessitent aucun argument ; d'autres, comme " -"la commande ``delete`` d'une zone de saisie, nécessitent des arguments pour " -"spécifier l'étendue du texte à supprimer." -#: library/tkinter.rst:311 -msgid "Mapping Basic Tk into Tkinter" -msgstr "Correspondance entre *Basic Tk* et *Tkinter*" +#: library/tkinter.rst:392 +msgid "Navigating the Tcl/Tk Reference Manual" +msgstr "" -#: library/tkinter.rst:313 -msgid "Class commands in Tk correspond to class constructors in Tkinter. ::" +#: library/tkinter.rst:394 +msgid "" +"As noted, the official `Tk commands `_ reference manual (man pages) is often the most accurate " +"description of what specific operations on widgets do. Even when you know " +"the name of the option or method that you need, you may still have a few " +"places to look." msgstr "" -"Les commandes de classes dans Tk correspondent aux constructeurs de classes " -"dans Tkinter. ::" -#: library/tkinter.rst:317 +#: library/tkinter.rst:399 msgid "" -"The master of an object is implicit in the new name given to it at creation " -"time. In Tkinter, masters are specified explicitly. ::" +"While all operations in Tkinter are implemented as method calls on widget " +"objects, you've seen that many Tcl/Tk operations appear as commands that " +"take a widget pathname as its first parameter, followed by optional " +"parameters, e.g." msgstr "" -"Le constructeur d'un objet est implicite dans le nouveau nom qui lui est " -"donné lors de la création. Dans Tkinter, les constructeurs sont spécifiés " -"explicitement. ::" -#: library/tkinter.rst:322 +#: library/tkinter.rst:409 msgid "" -"The configuration options in Tk are given in lists of hyphened tags followed " -"by values. In Tkinter, options are specified as keyword-arguments in the " -"instance constructor, and keyword-args for configure calls or as instance " -"indices, in dictionary style, for established instances. See section :ref:" -"`tkinter-setting-options` on setting options. ::" -msgstr "" -"Les options de configuration dans Tk sont données dans des listes de " -"paramètres séparés par des traits d'union suivies de leurs valeurs. Dans " -"Tkinter, les options sont spécifiées sous forme d'arguments par mots-clés " -"dans le constructeur d'instance, et d'arguments par mots-clés pour " -"configurer les appels ou sous forme d'une entrée, dans le style " -"dictionnaire, d'instance pour les instances établies. Voir la section :ref:" -"`tkinter-setting-options` pour la façon de définir les options. ::" - -#: library/tkinter.rst:332 -msgid "" -"In Tk, to perform an action on a widget, use the widget name as a command, " -"and follow it with an action name, possibly with arguments (options). In " -"Tkinter, you call methods on the class instance to invoke actions on the " -"widget. The actions (methods) that a given widget can perform are listed " -"in :file:`tkinter/__init__.py`. ::" -msgstr "" -"Dans Tk, pour effectuer une action sur un objet graphique, utilisez le nom " -"de l'objet graphique comme une commande et faites-le suivre d'un nom " -"d'action, éventuellement avec des arguments (options). Dans Tkinter, vous " -"appelez des méthodes sur l'instance de classe pour invoquer des actions sur " -"l'objet graphique. Les actions (méthodes) qu'un objet graphique donné peut " -"effectuer sont listées dans :file:`tkinter/__init__.py`. ::" - -#: library/tkinter.rst:340 -msgid "" -"To give a widget to the packer (geometry manager), you call pack with " -"optional arguments. In Tkinter, the Pack class holds all this " -"functionality, and the various forms of the pack command are implemented as " -"methods. All widgets in :mod:`tkinter` are subclassed from the Packer, and " -"so inherit all the packing methods. See the :mod:`tkinter.tix` module " -"documentation for additional information on the Form geometry manager. ::" -msgstr "" -"Pour donner un objet graphique à l'empaqueteur (ce qui gère la disposition à " -"l'écran), appelez ``pack`` avec des arguments optionnels. Dans Tkinter, la " -"classe ``Pack`` contient toutes ces fonctionnalités et les différentes " -"formes de la commande ``pack`` sont implémentées comme méthodes. Tous les " -"objets graphiques de :mod:`tkinter` sont sous-classés depuis l'empaqueteur " -"et donc héritent de toutes les méthodes d'empaquetage. Voir la documentation " -"du module :mod:`tkinter.tix` pour plus d'informations sur le gestionnaire de " -"disposition des formulaires. ::" +"Others, however, look more like methods called on a widget object (in fact, " +"when you create a widget in Tcl/Tk, it creates a Tcl command with the name " +"of the widget pathname, with the first parameter to that command being the " +"name of a method to call)." +msgstr "" -#: library/tkinter.rst:351 -msgid "How Tk and Tkinter are Related" -msgstr "Relations entre Tk et Tkinter" +#: library/tkinter.rst:420 +msgid "" +"In the official Tcl/Tk reference documentation, you'll find most operations " +"that look like method calls on the man page for a specific widget (e.g., " +"you'll find the :meth:`invoke` method on the `ttk::button `_ man page), while functions that take a " +"widget as a parameter often have their own man page (e.g., `grid `_)." +msgstr "" -#: library/tkinter.rst:353 -msgid "From the top down:" -msgstr "De haut en bas :" +#: library/tkinter.rst:428 +msgid "" +"You'll find many common options and methods in the `options `_ or `ttk::widget `_ man pages, while others are found in the man " +"page for a specific widget class." +msgstr "" -#: library/tkinter.rst:356 -msgid "Your App Here (Python)" -msgstr "Votre application (Python)" +#: library/tkinter.rst:433 +msgid "" +"You'll also find that many Tkinter methods have compound names, e.g., :func:" +"`winfo_x`, :func:`winfo_height`, :func:`winfo_viewable`. You'd find " +"documentation for all of these in the `winfo `_ man page." +msgstr "" -#: library/tkinter.rst:356 -msgid "A Python application makes a :mod:`tkinter` call." -msgstr "Une application Python fait un appel :mod:`tkinter`." +#: library/tkinter.rst:439 +msgid "" +"Somewhat confusingly, there are also methods on all Tkinter widgets that " +"don't actually operate on the widget, but operate at a global scope, " +"independent of any widget. Examples are methods for accessing the clipboard " +"or the system bell. (They happen to be implemented as methods in the base :" +"class:`Widget` class that all Tkinter widgets inherit from)." +msgstr "" -#: library/tkinter.rst:363 -msgid "tkinter (Python Package)" -msgstr "*tkinter* (paquet Python)" +#: library/tkinter.rst:448 +msgid "Threading model" +msgstr "" -#: library/tkinter.rst:359 +#: library/tkinter.rst:450 msgid "" -"This call (say, for example, creating a button widget), is implemented in " -"the :mod:`tkinter` package, which is written in Python. This Python " -"function will parse the commands and the arguments and convert them into a " -"form that makes them look as if they had come from a Tk script instead of a " -"Python script." +"Python and Tcl/Tk have very different threading models, which :mod:`tkinter` " +"tries to bridge. If you use threads, you may need to be aware of this." msgstr "" -"Cet appel (par exemple, la création d'un objet graphique de type bouton) est " -"implémenté dans le paquet :mod:`tkinter`, qui est écrit en Python. Cette " -"fonction Python analyse les commandes et les arguments et les convertit en " -"une forme qui les fait ressembler à un script Tk au lieu d'un script Python." -#: library/tkinter.rst:367 -msgid "_tkinter (C)" -msgstr "_tkinter (C)" +#: library/tkinter.rst:453 +msgid "" +"A Python interpreter may have many threads associated with it. In Tcl, " +"multiple threads can be created, but each thread has a separate Tcl " +"interpreter instance associated with it. Threads can also create more than " +"one interpreter instance, though each interpreter instance can be used only " +"by the one thread that created it." +msgstr "" -#: library/tkinter.rst:366 +#: library/tkinter.rst:458 msgid "" -"These commands and their arguments will be passed to a C function in the :" -"mod:`_tkinter` - note the underscore - extension module." +"Each :class:`Tk` object created by :mod:`tkinter` contains a Tcl " +"interpreter. It also keeps track of which thread created that interpreter. " +"Calls to :mod:`tkinter` can be made from any Python thread. Internally, if a " +"call comes from a thread other than the one that created the :class:`Tk` " +"object, an event is posted to the interpreter's event queue, and when " +"executed, the result is returned to the calling Python thread." msgstr "" -"Ces commandes et leurs arguments sont passés à une fonction C dans le module " -"d'extension :mod:`_tkinter` — notez le tiret bas." -#: library/tkinter.rst:374 -msgid "Tk Widgets (C and Tcl)" -msgstr "Objets graphiques Tk (C et Tcl)" +#: library/tkinter.rst:465 +msgid "" +"Tcl/Tk applications are normally event-driven, meaning that after " +"initialization, the interpreter runs an event loop (i.e. :func:`Tk." +"mainloop`) and responds to events. Because it is single-threaded, event " +"handlers must respond quickly, otherwise they will block other events from " +"being processed. To avoid this, any long-running computations should not run " +"in an event handler, but are either broken into smaller pieces using timers, " +"or run in another thread. This is different from many GUI toolkits where the " +"GUI runs in a completely separate thread from all application code including " +"event handlers." +msgstr "" -#: library/tkinter.rst:370 +#: library/tkinter.rst:474 msgid "" -"This C function is able to make calls into other C modules, including the C " -"functions that make up the Tk library. Tk is implemented in C and some Tcl. " -"The Tcl part of the Tk widgets is used to bind certain default behaviors to " -"widgets, and is executed once at the point where the Python :mod:`tkinter` " -"package is imported. (The user never sees this stage)." +"If the Tcl interpreter is not running the event loop and processing events, " +"any :mod:`tkinter` calls made from threads other than the one running the " +"Tcl interpreter will fail." msgstr "" -"Cette fonction C est capable d'effectuer des appels vers d'autres modules C, " -"y compris les fonctions C qui composent la bibliothèque Tk. Tk est " -"implémenté en C et un peu en Tcl. La partie Tcl des objets graphiques Tk est " -"utilisée pour lier certains comportements par défaut aux objets graphiques, " -"et est exécutée une fois au moment où le paquet Python :mod:`tkinter` est " -"importé (cette étape est transparente pour l'utilisateur)." -#: library/tkinter.rst:377 -msgid "Tk (C)" -msgstr "Tk (C)" +#: library/tkinter.rst:478 +msgid "A number of special cases exist:" +msgstr "" -#: library/tkinter.rst:377 -msgid "The Tk part of the Tk Widgets implement the final mapping to ..." +#: library/tkinter.rst:480 +msgid "" +"Tcl/Tk libraries can be built so they are not thread-aware. In this case, :" +"mod:`tkinter` calls the library from the originating Python thread, even if " +"this is different than the thread that created the Tcl interpreter. A global " +"lock ensures only one call occurs at a time." msgstr "" -"La partie Tk des objets graphiques Tk implémente la correspondance finale " -"avec …" -#: library/tkinter.rst:381 -msgid "Xlib (C)" -msgstr "Xlib (C)" +#: library/tkinter.rst:485 +msgid "" +"While :mod:`tkinter` allows you to create more than one instance of a :class:" +"`Tk` object (with its own interpreter), all interpreters that are part of " +"the same thread share a common event queue, which gets ugly fast. In " +"practice, don't create more than one instance of :class:`Tk` at a time. " +"Otherwise, it's best to create them in separate threads and ensure you're " +"running a thread-aware Tcl/Tk build." +msgstr "" -#: library/tkinter.rst:380 -msgid "the Xlib library to draw graphics on the screen." +#: library/tkinter.rst:491 +msgid "" +"Blocking event handlers are not the only way to prevent the Tcl interpreter " +"from reentering the event loop. It is even possible to run multiple nested " +"event loops or abandon the event loop entirely. If you're doing anything " +"tricky when it comes to events or threads, be aware of these possibilities." +msgstr "" + +#: library/tkinter.rst:496 +msgid "" +"There are a few select :mod:`tkinter` functions that presently work only " +"when called from the thread that created the Tcl interpreter." msgstr "" -"la bibliothèque *Xlib* pour dessiner des éléments graphiques à l'écran." -#: library/tkinter.rst:384 +#: library/tkinter.rst:501 msgid "Handy Reference" msgstr "Guide pratique" -#: library/tkinter.rst:390 +#: library/tkinter.rst:507 msgid "Setting Options" msgstr "Définition des options" -#: library/tkinter.rst:392 +#: library/tkinter.rst:509 msgid "" "Options control things like the color and border width of a widget. Options " "can be set in three ways:" @@ -802,17 +872,17 @@ msgstr "" "la bordure d'un objet graphique. Les options peuvent être réglées de trois " "façons :" -#: library/tkinter.rst:398 +#: library/tkinter.rst:515 msgid "At object creation time, using keyword arguments" msgstr "Lors de la création de l'objet, à l'aide d'arguments par mots-clés" -#: library/tkinter.rst:404 +#: library/tkinter.rst:521 msgid "After object creation, treating the option name like a dictionary index" msgstr "" "Après la création de l'objet, en manipulant le nom de l'option comme une " "entrée de dictionnaire" -#: library/tkinter.rst:409 +#: library/tkinter.rst:526 msgid "" "Use the config() method to update multiple attrs subsequent to object " "creation" @@ -820,7 +890,7 @@ msgstr "" "Utilisez la méthode ``config()`` pour mettre à jour plusieurs attributs " "après la création de l'objet" -#: library/tkinter.rst:411 +#: library/tkinter.rst:528 msgid "" "For a complete explanation of a given option and its behavior, see the Tk " "man pages for the widget in question." @@ -828,7 +898,7 @@ msgstr "" "Pour l'explication complète d'une option donnée et de son comportement, voir " "les pages de manuel Tk de l'objet graphique en question." -#: library/tkinter.rst:414 +#: library/tkinter.rst:531 msgid "" "Note that the man pages list \"STANDARD OPTIONS\" and \"WIDGET SPECIFIC " "OPTIONS\" for each widget. The former is a list of options that are common " @@ -843,7 +913,7 @@ msgstr "" "options standard sont documentées sur la page de manuel :manpage:" "`options(3)`." -#: library/tkinter.rst:420 +#: library/tkinter.rst:537 msgid "" "No distinction between standard and widget-specific options is made in this " "document. Some options don't apply to some kinds of widgets. Whether a " @@ -857,7 +927,7 @@ msgstr "" "l'objet graphique ; les boutons possèdent une option ``command``, pas les " "étiquettes." -#: library/tkinter.rst:425 +#: library/tkinter.rst:542 msgid "" "The options supported by a given widget are listed in that widget's man " "page, or can be queried at runtime by calling the :meth:`config` method " @@ -872,7 +942,7 @@ msgstr "" "un dictionnaire dont la clé est le nom de l'option sous forme de chaîne (par " "exemple, ``'relief'``) et dont les valeurs sont des *5-uplets*." -#: library/tkinter.rst:431 +#: library/tkinter.rst:548 msgid "" "Some options, like ``bg`` are synonyms for common options with long names " "(``bg`` is shorthand for \"background\"). Passing the ``config()`` method " @@ -886,79 +956,79 @@ msgstr "" "un couple, pas un quintuplet. Le couple renvoyé contient le nom abrégé et le " "nom *réel* de l'option, par exemple ``('bg','background')``." -#: library/tkinter.rst:438 +#: library/tkinter.rst:555 msgid "Index" msgstr "Index" -#: library/tkinter.rst:438 +#: library/tkinter.rst:555 msgid "Meaning" msgstr "Signification" -#: library/tkinter.rst:438 +#: library/tkinter.rst:555 msgid "Example" msgstr "Exemple" -#: library/tkinter.rst:440 +#: library/tkinter.rst:557 msgid "0" msgstr "0" -#: library/tkinter.rst:440 +#: library/tkinter.rst:557 msgid "option name" msgstr "nom des options" -#: library/tkinter.rst:442 +#: library/tkinter.rst:559 msgid "``'relief'``" msgstr "``'relief'``" -#: library/tkinter.rst:442 +#: library/tkinter.rst:559 msgid "1" msgstr "1" -#: library/tkinter.rst:442 +#: library/tkinter.rst:559 msgid "option name for database lookup" msgstr "nom de l'option pour la recherche dans la base de données" -#: library/tkinter.rst:444 +#: library/tkinter.rst:561 msgid "2" msgstr "2" -#: library/tkinter.rst:444 +#: library/tkinter.rst:561 msgid "option class for database lookup" msgstr "classe de l'option pour la recherche dans la base de données" -#: library/tkinter.rst:444 +#: library/tkinter.rst:561 msgid "``'Relief'``" msgstr "``'Relief'``" -#: library/tkinter.rst:447 +#: library/tkinter.rst:564 msgid "3" msgstr "3" -#: library/tkinter.rst:447 +#: library/tkinter.rst:564 msgid "default value" msgstr "valeur par défaut" -#: library/tkinter.rst:447 +#: library/tkinter.rst:564 msgid "``'raised'``" msgstr "``'raised'``" -#: library/tkinter.rst:449 +#: library/tkinter.rst:566 msgid "4" msgstr "4" -#: library/tkinter.rst:449 +#: library/tkinter.rst:566 msgid "current value" msgstr "valeur actuelle" -#: library/tkinter.rst:449 +#: library/tkinter.rst:566 msgid "``'groove'``" msgstr "``'groove'``" -#: library/tkinter.rst:452 +#: library/tkinter.rst:569 msgid "Example::" msgstr "Exemple ::" -#: library/tkinter.rst:457 +#: library/tkinter.rst:574 msgid "" "Of course, the dictionary printed will include all the options available and " "their values. This is meant only as an example." @@ -966,11 +1036,11 @@ msgstr "" "Bien sûr, le dictionnaire affiché contient toutes les options disponibles et " "leurs valeurs. Ceci n'est donné qu'à titre d'exemple." -#: library/tkinter.rst:462 +#: library/tkinter.rst:579 msgid "The Packer" msgstr "L'empaqueteur" -#: library/tkinter.rst:466 +#: library/tkinter.rst:583 #, fuzzy msgid "" "The packer is one of Tk's geometry-management mechanisms. Geometry " @@ -990,7 +1060,7 @@ msgstr "" "qualitatives de relation — *above*, *to the left of*, *filling*, etc — et " "calcule tout pour déterminer les coordonnées exactes du placement pour vous." -#: library/tkinter.rst:473 +#: library/tkinter.rst:590 msgid "" "The size of any *master* widget is determined by the size of the \"slave " "widgets\" inside. The packer is used to control where slave widgets appear " @@ -1008,7 +1078,7 @@ msgstr "" "l'arrangement est ajusté dynamiquement pour s'adapter aux changements " "incrémentiels de la configuration, une fois qu'elle est empaquetées." -#: library/tkinter.rst:480 +#: library/tkinter.rst:597 msgid "" "Note that widgets do not appear until they have had their geometry specified " "with a geometry manager. It's a common early mistake to leave out the " @@ -1023,7 +1093,7 @@ msgstr "" "rien n'apparaît. Un objet graphique n'apparaît qu'après que, par exemple, " "la méthode :meth:`pack` de l'empaqueteur lui ait été appliquée." -#: library/tkinter.rst:486 +#: library/tkinter.rst:603 msgid "" "The pack() method can be called with keyword-option/value pairs that control " "where the widget is to appear within its container, and how it is to behave " @@ -1034,11 +1104,11 @@ msgstr "" "comment il doit se comporter lorsque la fenêtre principale de l'application " "est redimensionnée. En voici quelques exemples ::" -#: library/tkinter.rst:496 +#: library/tkinter.rst:613 msgid "Packer Options" msgstr "Options de l'empaqueteur" -#: library/tkinter.rst:498 +#: library/tkinter.rst:615 msgid "" "For more extensive information on the packer and the options that it can " "take, see the man pages and page 183 of John Ousterhout's book." @@ -1046,68 +1116,68 @@ msgstr "" "Pour de plus amples informations sur l'empaqueteur et les options qu'il peut " "prendre, voir les pages de manuel et la page 183 du livre de John Ousterhout." -#: library/tkinter.rst:622 +#: library/tkinter.rst:739 msgid "anchor" msgstr "*anchor*" -#: library/tkinter.rst:502 +#: library/tkinter.rst:619 msgid "" "Anchor type. Denotes where the packer is to place each slave in its parcel." msgstr "" "Type d'ancrage. Indique l'endroit où l'empaqueteur doit placer chaque " "enfant dans son espace." -#: library/tkinter.rst:505 +#: library/tkinter.rst:622 msgid "expand" msgstr "*expand*" -#: library/tkinter.rst:505 +#: library/tkinter.rst:622 msgid "Boolean, ``0`` or ``1``." msgstr "Booléen, ``0`` ou ``1``." -#: library/tkinter.rst:508 +#: library/tkinter.rst:625 msgid "fill" msgstr "*fill*" -#: library/tkinter.rst:508 +#: library/tkinter.rst:625 msgid "Legal values: ``'x'``, ``'y'``, ``'both'``, ``'none'``." msgstr "Valeurs acceptées : ``'x'``, ``'y'``, ``'both'``, ``'none'``." -#: library/tkinter.rst:511 +#: library/tkinter.rst:628 msgid "ipadx and ipady" msgstr "*ipadx* et *ipady*" -#: library/tkinter.rst:511 +#: library/tkinter.rst:628 msgid "" "A distance - designating internal padding on each side of the slave widget." msgstr "" "Une distance — désignant l'écart interne de chaque côté de l'objet graphique " "hérité." -#: library/tkinter.rst:514 +#: library/tkinter.rst:631 msgid "padx and pady" msgstr "*padx* et *pady*" -#: library/tkinter.rst:514 +#: library/tkinter.rst:631 msgid "" "A distance - designating external padding on each side of the slave widget." msgstr "" "Une distance — désignant l'écart externe de chaque côté de l'objet graphique " "hérité." -#: library/tkinter.rst:518 +#: library/tkinter.rst:635 msgid "side" msgstr "*side*" -#: library/tkinter.rst:517 +#: library/tkinter.rst:634 msgid "Legal values are: ``'left'``, ``'right'``, ``'top'``, ``'bottom'``." msgstr "Valeurs acceptées : ``'left'``, ``'right'``, ``'top'``, ``'bottom'``." -#: library/tkinter.rst:521 +#: library/tkinter.rst:638 msgid "Coupling Widget Variables" msgstr "Association des variables de l'objet graphique" -#: library/tkinter.rst:523 +#: library/tkinter.rst:640 msgid "" "The current-value setting of some widgets (like text entry widgets) can be " "connected directly to application variables by using special options. These " @@ -1124,7 +1194,7 @@ msgstr "" "ou pour une autre, l'objet graphique auquel elle est connectée est mis à " "jour pour refléter la nouvelle valeur." -#: library/tkinter.rst:529 +#: library/tkinter.rst:646 msgid "" "Unfortunately, in the current implementation of :mod:`tkinter` it is not " "possible to hand over an arbitrary Python variable to a widget through a " @@ -1139,7 +1209,7 @@ msgstr "" "classées à partir d'une classe appelée `Variable`, définie dans :mod:" "`tkinter`." -#: library/tkinter.rst:535 +#: library/tkinter.rst:652 msgid "" "There are many useful subclasses of Variable already defined: :class:" "`StringVar`, :class:`IntVar`, :class:`DoubleVar`, and :class:`BooleanVar`. " @@ -1155,11 +1225,15 @@ msgstr "" "meth:`!set`. Si vous suivez ce protocole, l'objet graphique suivra toujours " "la valeur de la variable, sans autre intervention de votre part." -#: library/tkinter.rst:575 +#: library/tkinter.rst:838 +msgid "For example::" +msgstr "Par exemple ::" + +#: library/tkinter.rst:692 msgid "The Window Manager" msgstr "Le gestionnaire de fenêtres" -#: library/tkinter.rst:579 +#: library/tkinter.rst:696 msgid "" "In Tk, there is a utility command, ``wm``, for interacting with the window " "manager. Options to the ``wm`` command allow you to control things like " @@ -1176,7 +1250,7 @@ msgstr "" "graphiques de haut niveau sont sous-classés à partir de la classe :class:" "`Wm`, ils peuvent donc appeler directement les méthodes de :class:`Wm`." -#: library/tkinter.rst:586 +#: library/tkinter.rst:703 msgid "" "To get at the toplevel window that contains a given widget, you can often " "just refer to the widget's master. Of course if the widget has been packed " @@ -1196,15 +1270,15 @@ msgstr "" "fait partie de l'implémentation, et non d'une interface avec la " "fonctionnalité Tk." -#: library/tkinter.rst:593 +#: library/tkinter.rst:710 msgid "Here are some examples of typical usage::" msgstr "Voici quelques exemples d'utilisation courante ::" -#: library/tkinter.rst:616 +#: library/tkinter.rst:733 msgid "Tk Option Data Types" msgstr "Types de données des options Tk" -#: library/tkinter.rst:621 +#: library/tkinter.rst:738 msgid "" "Legal values are points of the compass: ``\"n\"``, ``\"ne\"``, ``\"e\"``, ``" "\"se\"``, ``\"s\"``, ``\"sw\"``, ``\"w\"``, ``\"nw\"``, and also ``\"center" @@ -1214,11 +1288,11 @@ msgstr "" "\"e\"``, ``\"se\"``, ``\"s\"``, ``\"sw\"``, ``\"w\"``, ``\"nw\"`` et ``" "\"center\"``." -#: library/tkinter.rst:628 +#: library/tkinter.rst:745 msgid "bitmap" msgstr "*bitmap*" -#: library/tkinter.rst:625 +#: library/tkinter.rst:742 msgid "" "There are eight built-in, named bitmaps: ``'error'``, ``'gray25'``, " "``'gray50'``, ``'hourglass'``, ``'info'``, ``'questhead'``, ``'question'``, " @@ -1231,30 +1305,30 @@ msgstr "" "indiquez le chemin complet du fichier, précédé de ``@``, comme dans ``\"@/" "usr/contrib/bitmap/gumby.bit\"``." -#: library/tkinter.rst:631 +#: library/tkinter.rst:748 msgid "boolean" msgstr "*boolean*" -#: library/tkinter.rst:631 +#: library/tkinter.rst:748 msgid "You can pass integers 0 or 1 or the strings ``\"yes\"`` or ``\"no\"``." msgstr "" "Vous pouvez lui donner les entiers 0 ou 1 ou les chaînes de caractères ``" "\"yes\"`` ou ``\"no\"``." -#: library/tkinter.rst:638 +#: library/tkinter.rst:755 msgid "callback" msgstr "*callback*" -#: library/tkinter.rst:634 +#: library/tkinter.rst:751 msgid "This is any Python function that takes no arguments. For example::" msgstr "" "N'importe quelle fonction Python qui ne prend pas d'argument. Par exemple ::" -#: library/tkinter.rst:644 +#: library/tkinter.rst:761 msgid "color" msgstr "*color*" -#: library/tkinter.rst:641 +#: library/tkinter.rst:758 msgid "" "Colors can be given as the names of X colors in the rgb.txt file, or as " "strings representing RGB values in 4 bit: ``\"#RGB\"``, 8 bit: ``\"#RRGGBB" @@ -1269,11 +1343,11 @@ msgstr "" "hexadécimal valide. Voir page 160 du livre d'Ousterhout pour plus de " "détails." -#: library/tkinter.rst:650 +#: library/tkinter.rst:767 msgid "cursor" msgstr "*cursor*" -#: library/tkinter.rst:647 +#: library/tkinter.rst:764 msgid "" "The standard X cursor names from :file:`cursorfont.h` can be used, without " "the ``XC_`` prefix. For example to get a hand cursor (:const:`XC_hand2`), " @@ -1286,11 +1360,11 @@ msgstr "" "\"hand2\"``. Vous pouvez également spécifier votre propre bitmap et fichier " "masque. Voir page 179 du livre d'Ousterhout." -#: library/tkinter.rst:657 +#: library/tkinter.rst:774 msgid "distance" msgstr "*distance*" -#: library/tkinter.rst:653 +#: library/tkinter.rst:770 msgid "" "Screen distances can be specified in either pixels or absolute distances. " "Pixels are given as numbers and absolute distances as strings, with the " @@ -1305,11 +1379,11 @@ msgstr "" "anglais), ``m`` pour les millimètres, ``p`` pour les points d'impression. " "Par exemple, 3,5 pouces est noté ``\"3.5i\"``." -#: library/tkinter.rst:662 +#: library/tkinter.rst:779 msgid "font" msgstr "*font*" -#: library/tkinter.rst:660 +#: library/tkinter.rst:777 msgid "" "Tk uses a list font name format, such as ``{courier 10 bold}``. Font sizes " "with positive numbers are measured in points; sizes with negative numbers " @@ -1320,11 +1394,11 @@ msgstr "" "mesurées en points ; les tailles avec des nombres négatifs sont mesurées en " "pixels." -#: library/tkinter.rst:667 +#: library/tkinter.rst:784 msgid "geometry" msgstr "*geometry*" -#: library/tkinter.rst:665 +#: library/tkinter.rst:782 msgid "" "This is a string of the form ``widthxheight``, where width and height are " "measured in pixels for most widgets (in characters for widgets displaying " @@ -1335,11 +1409,11 @@ msgstr "" "graphiques (en caractères pour les objets graphiques affichant du texte). " "Par exemple : ``fred[\"geometry\"] = \"200x100\"``." -#: library/tkinter.rst:671 +#: library/tkinter.rst:788 msgid "justify" msgstr "*justify*" -#: library/tkinter.rst:670 +#: library/tkinter.rst:787 msgid "" "Legal values are the strings: ``\"left\"``, ``\"center\"``, ``\"right\"``, " "and ``\"fill\"``." @@ -1347,11 +1421,11 @@ msgstr "" "Les valeurs acceptées sont les chaînes de caractères : ``\"left\"``, ``" "\"center\"``, ``\"right\"`` et ``\"fill\"``." -#: library/tkinter.rst:676 +#: library/tkinter.rst:793 msgid "region" msgstr "*region*" -#: library/tkinter.rst:674 +#: library/tkinter.rst:791 msgid "" "This is a string with four space-delimited elements, each of which is a " "legal distance (see above). For example: ``\"2 3 4 5\"`` and ``\"3i 2i 4.5i " @@ -1362,11 +1436,11 @@ msgstr "" "\"2 3 4 5\"``, ``\" 3i 2i 4.5i 2i\"`` et ``\"3c 2c 4c 10.43c\"`` sont toutes " "des régions valides." -#: library/tkinter.rst:680 +#: library/tkinter.rst:797 msgid "relief" msgstr "*relief*" -#: library/tkinter.rst:679 +#: library/tkinter.rst:796 msgid "" "Determines what the border style of a widget will be. Legal values are: ``" "\"raised\"``, ``\"sunken\"``, ``\"flat\"``, ``\"groove\"``, and ``\"ridge" @@ -1376,11 +1450,11 @@ msgstr "" "sont : ``\"raised\"``, ``\"sunken\"``, ``\"flat\"``, ``\"groove\"``, et ``" "\"ridge\"``." -#: library/tkinter.rst:684 +#: library/tkinter.rst:801 msgid "scrollcommand" msgstr "*scrollcommand*" -#: library/tkinter.rst:683 +#: library/tkinter.rst:800 msgid "" "This is almost always the :meth:`!set` method of some scrollbar widget, but " "can be any widget method that takes a single argument." @@ -1389,20 +1463,20 @@ msgstr "" "défilement, mais peut être n'importe quelle méthode d'objet graphique qui " "prend un seul argument." -#: library/tkinter.rst:687 +#: library/tkinter.rst:804 #, fuzzy msgid "wrap" msgstr "*wrap*" -#: library/tkinter.rst:687 +#: library/tkinter.rst:804 msgid "Must be one of: ``\"none\"``, ``\"char\"``, or ``\"word\"``." msgstr "Doit être l'un d'eux : ``\"none\"``, ``\"char\"``, ou ``\"word\"``." -#: library/tkinter.rst:692 +#: library/tkinter.rst:809 msgid "Bindings and Events" msgstr "Liaisons et événements" -#: library/tkinter.rst:698 +#: library/tkinter.rst:815 msgid "" "The bind method from the widget command allows you to watch for certain " "events and to have a callback function trigger when that event type occurs. " @@ -1413,15 +1487,15 @@ msgstr "" "ce type d'événement se produit. La forme de la méthode de liaison est la " "suivante ::" -#: library/tkinter.rst:704 +#: library/tkinter.rst:821 msgid "where:" msgstr "où :" -#: library/tkinter.rst:708 +#: library/tkinter.rst:825 msgid "sequence" msgstr "*sequence*" -#: library/tkinter.rst:707 +#: library/tkinter.rst:824 msgid "" "is a string that denotes the target kind of event. (See the bind man page " "and page 201 of John Ousterhout's book for details)." @@ -1430,11 +1504,11 @@ msgstr "" "la page du manuel de *bind* et la page 201 du livre de John Ousterhout pour " "plus de détails)." -#: library/tkinter.rst:713 +#: library/tkinter.rst:830 msgid "func" msgstr "*func*" -#: library/tkinter.rst:711 +#: library/tkinter.rst:828 msgid "" "is a Python function, taking one argument, to be invoked when the event " "occurs. An Event instance will be passed as the argument. (Functions " @@ -1445,11 +1519,11 @@ msgstr "" "déployées de cette façon sont communément appelées *callbacks* ou " "« fonctions de rappel » en français)." -#: library/tkinter.rst:719 +#: library/tkinter.rst:836 msgid "add" msgstr "*add*" -#: library/tkinter.rst:716 +#: library/tkinter.rst:833 msgid "" "is optional, either ``''`` or ``'+'``. Passing an empty string denotes that " "this binding is to replace any other bindings that this event is associated " @@ -1461,7 +1535,7 @@ msgstr "" "cet événement est associé. L'envoi de ``\"+\"`` signifie que cette fonction " "doit être ajoutée à la liste des fonctions liées à ce type d'événement." -#: library/tkinter.rst:728 +#: library/tkinter.rst:845 msgid "" "Notice how the widget field of the event is being accessed in the " "``turn_red()`` callback. This field contains the widget that caught the X " @@ -1476,147 +1550,143 @@ msgstr "" "dans Tk, ce qui peut être utile lorsque vous vous référez aux pages de " "manuel Tk." -#: library/tkinter.rst:734 -msgid "Tk" -msgstr "Tk" - -#: library/tkinter.rst:734 +#: library/tkinter.rst:851 msgid "Tkinter Event Field" msgstr "Champ *évènement* de Tkinter" -#: library/tkinter.rst:736 +#: library/tkinter.rst:853 msgid "%f" msgstr "%f" -#: library/tkinter.rst:736 +#: library/tkinter.rst:853 msgid "focus" msgstr "focus" -#: library/tkinter.rst:736 +#: library/tkinter.rst:853 msgid "%A" msgstr "%A" -#: library/tkinter.rst:736 +#: library/tkinter.rst:853 msgid "char" msgstr "char" -#: library/tkinter.rst:738 +#: library/tkinter.rst:855 msgid "%h" msgstr "%h" -#: library/tkinter.rst:738 +#: library/tkinter.rst:855 msgid "height" msgstr "hauteur" -#: library/tkinter.rst:738 +#: library/tkinter.rst:855 msgid "%E" msgstr "%E" -#: library/tkinter.rst:738 +#: library/tkinter.rst:855 msgid "send_event" msgstr "send_event" -#: library/tkinter.rst:740 +#: library/tkinter.rst:857 msgid "%k" msgstr "%k" -#: library/tkinter.rst:740 +#: library/tkinter.rst:857 msgid "keycode" msgstr "keycode" -#: library/tkinter.rst:740 +#: library/tkinter.rst:857 msgid "%K" msgstr "%K" -#: library/tkinter.rst:740 +#: library/tkinter.rst:857 msgid "keysym" msgstr "keysym" -#: library/tkinter.rst:742 +#: library/tkinter.rst:859 msgid "%s" msgstr "%s" -#: library/tkinter.rst:742 +#: library/tkinter.rst:859 msgid "state" msgstr "state" -#: library/tkinter.rst:742 +#: library/tkinter.rst:859 msgid "%N" msgstr "%N" -#: library/tkinter.rst:742 +#: library/tkinter.rst:859 msgid "keysym_num" msgstr "keysym_num" -#: library/tkinter.rst:744 +#: library/tkinter.rst:861 msgid "%t" msgstr "%t" -#: library/tkinter.rst:744 +#: library/tkinter.rst:861 msgid "time" msgstr "time" -#: library/tkinter.rst:744 +#: library/tkinter.rst:861 msgid "%T" msgstr "%T" -#: library/tkinter.rst:744 +#: library/tkinter.rst:861 msgid "type" msgstr "type" -#: library/tkinter.rst:746 +#: library/tkinter.rst:863 msgid "%w" msgstr "%w" -#: library/tkinter.rst:746 +#: library/tkinter.rst:863 msgid "width" msgstr "width" -#: library/tkinter.rst:746 +#: library/tkinter.rst:863 msgid "%W" msgstr "%W" -#: library/tkinter.rst:746 +#: library/tkinter.rst:863 msgid "widget" msgstr "widget" -#: library/tkinter.rst:748 +#: library/tkinter.rst:865 msgid "%x" msgstr "%x" -#: library/tkinter.rst:748 +#: library/tkinter.rst:865 msgid "x" msgstr "x" -#: library/tkinter.rst:748 +#: library/tkinter.rst:865 msgid "%X" msgstr "%X" -#: library/tkinter.rst:748 +#: library/tkinter.rst:865 msgid "x_root" msgstr "x_root" -#: library/tkinter.rst:750 +#: library/tkinter.rst:867 msgid "%y" msgstr "%y" -#: library/tkinter.rst:750 +#: library/tkinter.rst:867 msgid "y" msgstr "y" -#: library/tkinter.rst:750 +#: library/tkinter.rst:867 msgid "%Y" msgstr "%Y" -#: library/tkinter.rst:750 +#: library/tkinter.rst:867 msgid "y_root" msgstr "y_root" -#: library/tkinter.rst:755 +#: library/tkinter.rst:872 msgid "The index Parameter" msgstr "Le paramètre index" -#: library/tkinter.rst:757 +#: library/tkinter.rst:874 msgid "" "A number of widgets require \"index\" parameters to be passed. These are " "used to point at a specific place in a Text widget, or to particular " @@ -1628,12 +1698,12 @@ msgstr "" "un objet graphique de type *Entrée*, ou vers des éléments de menu " "particuliers dans un objet graphique de type *Menu*." -#: library/tkinter.rst:764 +#: library/tkinter.rst:881 msgid "Entry widget indexes (index, view index, etc.)" msgstr "" "Index des objets graphique de type *Entrée* (``index``, ``view index``, etc.)" -#: library/tkinter.rst:762 +#: library/tkinter.rst:879 msgid "" "Entry widgets have options that refer to character positions in the text " "being displayed. You can use these :mod:`tkinter` functions to access these " @@ -1644,11 +1714,11 @@ msgstr "" "fonctions :mod:`tkinter` pour accéder à ces points spéciaux dans les objets " "graphiques texte :" -#: library/tkinter.rst:768 +#: library/tkinter.rst:885 msgid "Text widget indexes" msgstr "Index des objets graphiques texte" -#: library/tkinter.rst:767 +#: library/tkinter.rst:884 msgid "" "The index notation for Text widgets is very rich and is best described in " "the Tk man pages." @@ -1656,11 +1726,11 @@ msgstr "" "La notation de l'index des objets graphiques de type *Texte* est très riche " "et mieux décrite dans les pages du manuel Tk." -#: library/tkinter.rst:793 +#: library/tkinter.rst:910 msgid "Menu indexes (menu.invoke(), menu.entryconfig(), etc.)" msgstr "Index menu (`menu.invoke()`, `menu.entryconfig()`, etc.)" -#: library/tkinter.rst:771 +#: library/tkinter.rst:888 msgid "" "Some options and methods for menus manipulate specific menu entries. Anytime " "a menu index is needed for an option or a parameter, you may pass in:" @@ -1669,7 +1739,7 @@ msgstr "" "éléments de spécifiques. Chaque fois qu'un index de menu est nécessaire pour " "une option ou un paramètre, vous pouvez utiliser :" -#: library/tkinter.rst:774 +#: library/tkinter.rst:891 msgid "" "an integer which refers to the numeric position of the entry in the widget, " "counted from the top, starting with 0;" @@ -1677,7 +1747,7 @@ msgstr "" "un entier qui fait référence à la position numérique de l'entrée dans " "l'objet graphique, comptée à partir du haut, en commençant par 0 ;" -#: library/tkinter.rst:777 +#: library/tkinter.rst:894 msgid "" "the string ``\"active\"``, which refers to the menu position that is " "currently under the cursor;" @@ -1685,13 +1755,13 @@ msgstr "" "la chaîne de caractères ``\"active\"``, qui fait référence à la position du " "menu qui se trouve actuellement sous le curseur ;" -#: library/tkinter.rst:780 +#: library/tkinter.rst:897 msgid "the string ``\"last\"`` which refers to the last menu item;" msgstr "" "la chaîne de caractères ``\"last\"`` qui fait référence au dernier élément " "du menu ;" -#: library/tkinter.rst:782 +#: library/tkinter.rst:899 msgid "" "An integer preceded by ``@``, as in ``@6``, where the integer is interpreted " "as a y pixel coordinate in the menu's coordinate system;" @@ -1699,7 +1769,7 @@ msgstr "" "un entier précédé de ``@``, comme dans ``@6``, où l'entier est interprété " "comme une coordonnée y de pixels dans le système de coordonnées du menu ;" -#: library/tkinter.rst:785 +#: library/tkinter.rst:902 msgid "" "the string ``\"none\"``, which indicates no menu entry at all, most often " "used with menu.activate() to deactivate all entries, and finally," @@ -1708,7 +1778,7 @@ msgstr "" "le plus souvent utilisée avec ``menu.activate()`` pour désactiver toutes les " "entrées, et enfin," -#: library/tkinter.rst:788 +#: library/tkinter.rst:905 msgid "" "a text string that is pattern matched against the label of the menu entry, " "as scanned from the top of the menu to the bottom. Note that this index " @@ -1722,11 +1792,11 @@ msgstr "" "correspondances pour les éléments de menu étiquetés ``last``, ``active`` ou " "``none`` peuvent être interprétés comme les littéraux ci-dessus, plutôt." -#: library/tkinter.rst:796 +#: library/tkinter.rst:913 msgid "Images" msgstr "Images" -#: library/tkinter.rst:798 +#: library/tkinter.rst:915 msgid "" "Images of different formats can be created through the corresponding " "subclass of :class:`tkinter.Image`:" @@ -1734,11 +1804,11 @@ msgstr "" "Des images de différents formats peuvent être créées à travers la sous-" "classe correspondante de :class:`tkinter.Image` :" -#: library/tkinter.rst:801 +#: library/tkinter.rst:918 msgid ":class:`BitmapImage` for images in XBM format." msgstr ":class:`BitmapImage` pour les images au format *XBM*." -#: library/tkinter.rst:803 +#: library/tkinter.rst:920 msgid "" ":class:`PhotoImage` for images in PGM, PPM, GIF and PNG formats. The latter " "is supported starting with Tk 8.6." @@ -1746,7 +1816,7 @@ msgstr "" ":class:`PhotoImage` pour les images aux formats *PGM*, *PPM*, *GIF* et " "*PNG*. Ce dernier est géré à partir de Tk 8.6." -#: library/tkinter.rst:806 +#: library/tkinter.rst:923 msgid "" "Either type of image is created through either the ``file`` or the ``data`` " "option (other options are available as well)." @@ -1754,7 +1824,7 @@ msgstr "" "L'un ou l'autre type d'image est créé par l'option ``file`` ou ``data`` " "(d'autres options sont également disponibles)." -#: library/tkinter.rst:809 +#: library/tkinter.rst:926 msgid "" "The image object can then be used wherever an ``image`` option is supported " "by some widget (e.g. labels, buttons, menus). In these cases, Tk will not " @@ -1769,7 +1839,7 @@ msgstr "" "également supprimées, et Tk affiche une boite vide à l'endroit où l'image " "était utilisée." -#: library/tkinter.rst:817 +#: library/tkinter.rst:934 msgid "" "The `Pillow `_ package adds support for formats " "such as BMP, JPEG, TIFF, and WebP, among others." @@ -1777,11 +1847,11 @@ msgstr "" "Le paquet `Pillow `_ ajoute la prise en charge de " "formats tels que *BMP*, *JPEG*, *TIFF* et *WebP*, entre autres." -#: library/tkinter.rst:823 +#: library/tkinter.rst:940 msgid "File Handlers" msgstr "Gestionnaires de fichiers" -#: library/tkinter.rst:825 +#: library/tkinter.rst:942 msgid "" "Tk allows you to register and unregister a callback function which will be " "called from the Tk mainloop when I/O is possible on a file descriptor. Only " @@ -1792,11 +1862,11 @@ msgstr "" "sorties sont possibles sur un descripteur de fichier. Un seul gestionnaire " "peut être enregistré par descripteur de fichier. Exemple de code ::" -#: library/tkinter.rst:836 +#: library/tkinter.rst:953 msgid "This feature is not available on Windows." msgstr "Cette fonction n'est pas disponible sous Windows." -#: library/tkinter.rst:838 +#: library/tkinter.rst:955 msgid "" "Since you don't know how many bytes are available for reading, you may not " "want to use the :class:`~io.BufferedIOBase` or :class:`~io.TextIOBase` :meth:" @@ -1815,7 +1885,7 @@ msgstr "" "fichiers, utilisez des lectures brutes ou ``os.read(file.fileno(), " "maxbytecount)``." -#: library/tkinter.rst:849 +#: library/tkinter.rst:966 msgid "" "Registers the file handler callback function *func*. The *file* argument may " "either be an object with a :meth:`~io.IOBase.fileno` method (such as a file " @@ -1830,14 +1900,494 @@ msgstr "" "l'une des trois constantes ci-dessous. La fonction de rappel s'utilise comme " "suit ::" -#: library/tkinter.rst:860 +#: library/tkinter.rst:977 msgid "Unregisters a file handler." msgstr "Désenregistre un gestionnaire de fichiers." -#: library/tkinter.rst:867 +#: library/tkinter.rst:984 msgid "Constants used in the *mask* arguments." msgstr "Constantes utilisées dans les arguments ``mask``." +#~ msgid "Tkinter documentation:" +#~ msgstr "Documentation de Tkinter :" + +#~ msgid "`Python Tkinter Resources `_" +#~ msgstr "`Python Tkinter Resources `_" + +#~ msgid "" +#~ "The Python Tkinter Topic Guide provides a great deal of information on " +#~ "using Tk from Python and links to other sources of information on Tk." +#~ msgstr "" +#~ "Le *Python Tkinter Topic Guide* fournit beaucoup d'informations sur " +#~ "l'utilisation de Tk à partir de Python et des liens vers d'autres sources " +#~ "d'information sur Tk." + +#~ msgid "" +#~ "Extensive tutorial plus friendlier widget pages for some of the widgets." +#~ msgstr "" +#~ "Tutoriel complet plus convivial pour certains des objets graphiques." + +#~ msgid "On-line reference material." +#~ msgstr "Documents de référence en ligne." + +#~ msgid "`Tkinter docs from effbot `_" +#~ msgstr "`Documents Tkinter sur effbot `_" + +#~ msgid "Online reference for tkinter supported by effbot.org." +#~ msgstr "Référence en ligne pour *tkinter* réalisée par *effbot.org*." + +#~ msgid "" +#~ "Book by Mark Roseman about building attractive and modern graphical user " +#~ "interfaces with Python and Tkinter." +#~ msgstr "" +#~ "Livre de Mark Roseman sur la construction d'interfaces graphiques " +#~ "esthétiques et modernes avec Python et Tkinter." + +#~ msgid "Book by John Grayson (ISBN 1-884777-81-3)." +#~ msgstr "Livre de John Grayson (ISBN 1-884777-81-3)." + +#~ msgid "Tcl/Tk documentation:" +#~ msgstr "Documentation de Tcl/Tk :" + +#~ msgid "" +#~ "Most commands are available as :mod:`tkinter` or :mod:`tkinter.ttk` " +#~ "classes. Change '8.6' to match the version of your Tcl/Tk installation." +#~ msgstr "" +#~ "La plupart des commandes sont disponibles sous forme de classes :mod:" +#~ "`tkinter` ou :mod:`tkinter.ttk`. Modifiez '8.6' pour correspondre à votre " +#~ "version installée de Tcl/Tk." + +#~ msgid "Recent Tcl/Tk manuals on www.tcl.tk." +#~ msgstr "Manuels récents de Tcl/Tk sur *www.tcl.tk*." + +#~ msgid "`ActiveState Tcl Home Page `_" +#~ msgstr "`Page d'accueil Tcl `_ chez ActiveState" + +#~ msgid "The Tk/Tcl development is largely taking place at ActiveState." +#~ msgstr "" +#~ "Le développement de Tk/Tcl se déroule en grande partie au sein " +#~ "d'ActiveState." + +#~ msgid "Book by John Ousterhout, the inventor of Tcl." +#~ msgstr "Livre de John Ousterhout, l'inventeur de Tcl." + +#~ msgid "`Practical Programming in Tcl and Tk `_" +#~ msgstr "" +#~ "`Practical Programming in Tcl and Tk `_" + +#~ msgid "Brent Welch's encyclopedic book." +#~ msgstr "Le livre encyclopédique de Brent Welch." + +#~ msgid "" +#~ "In addition to the Tk interface module, :mod:`tkinter` includes a number " +#~ "of Python modules, :mod:`tkinter.constants` being one of the most " +#~ "important. Importing :mod:`tkinter` will automatically import :mod:" +#~ "`tkinter.constants`, so, usually, to use Tkinter all you need is a simple " +#~ "import statement::" +#~ msgstr "" +#~ "En plus du module d'interface Tk, :mod:`tkinter` inclut un certain nombre " +#~ "de modules Python, :mod:`tkinter.constants` étant l'un des plus " +#~ "importants. Importer :mod:`tkinter` charge automatiquement :mod:`tkinter." +#~ "constants` donc, habituellement, pour utiliser Tkinter, tout ce dont vous " +#~ "avez besoin est une simple commande d'importation ::" + +#~ msgid "Or, more often::" +#~ msgstr "Ou, plus souvent ::" + +#~ msgid "" +#~ "This section is not designed to be an exhaustive tutorial on either Tk or " +#~ "Tkinter. Rather, it is intended as a stop gap, providing some " +#~ "introductory orientation on the system." +#~ msgstr "" +#~ "Cette section n'est pas conçue pour être un tutoriel exhaustif de Tk ou " +#~ "Tkinter. Il s'agit plutôt d'un guide d'introduction au système." + +#~ msgid "Credits:" +#~ msgstr "Crédits :" + +#~ msgid "Tk was written by John Ousterhout while at Berkeley." +#~ msgstr "*Tk* a été écrit par John Ousterhout de Berkeley." + +#~ msgid "Tkinter was written by Steen Lumholt and Guido van Rossum." +#~ msgstr "*Tkinter* a été écrit par Steen Lumholt et Guido van Rossum." + +#~ msgid "" +#~ "This Life Preserver was written by Matt Conway at the University of " +#~ "Virginia." +#~ msgstr "" +#~ "Ce guide de survie a été écrit par Matt Conway de l'Université de " +#~ "Virginie." + +#~ msgid "" +#~ "The HTML rendering, and some liberal editing, was produced from a " +#~ "FrameMaker version by Ken Manheimer." +#~ msgstr "" +#~ "Le rendu HTML, avec quelques modifications, a été réalisé à partir d'une " +#~ "version FrameMaker par Ken Manheimer." + +#~ msgid "" +#~ "Fredrik Lundh elaborated and revised the class interface descriptions, to " +#~ "get them current with Tk 4.2." +#~ msgstr "" +#~ "Fredrik Lundh a élaboré et mis à jour les descriptions de l'interface des " +#~ "classes, en cohérence avec Tk 4.2." + +#~ msgid "" +#~ "Mike Clarkson converted the documentation to LaTeX, and compiled the " +#~ "User Interface chapter of the reference manual." +#~ msgstr "" +#~ "Mike Clarkson a converti la documentation en LaTeX et a compilé le " +#~ "chapitre *Interface utilisateur* du manuel de référence." + +#~ msgid "How To Use This Section" +#~ msgstr "Mode d'emploi" + +#~ msgid "" +#~ "This section is designed in two parts: the first half (roughly) covers " +#~ "background material, while the second half can be taken to the keyboard " +#~ "as a handy reference." +#~ msgstr "" +#~ "Cette section est divisée en deux parties : la première moitié (à peu " +#~ "près) couvre la partie théorique, tandis que la seconde moitié peut être " +#~ "utilisée comme guide pratique." + +#~ msgid "" +#~ "When trying to answer questions of the form \"how do I do blah\", it is " +#~ "often best to find out how to do \"blah\" in straight Tk, and then " +#~ "convert this back into the corresponding :mod:`tkinter` call. Python " +#~ "programmers can often guess at the correct Python command by looking at " +#~ "the Tk documentation. This means that in order to use Tkinter, you will " +#~ "have to know a little bit about Tk. This document can't fulfill that " +#~ "role, so the best we can do is point you to the best documentation that " +#~ "exists. Here are some hints:" +#~ msgstr "" +#~ "Lorsque l'on essaie de répondre à des questions sur la manière de faire " +#~ "« ceci ou cela », il est souvent préférable de trouver comment le faire " +#~ "en Tk, puis de le convertir en fonction correspondante :mod:`tkinter`. " +#~ "Les programmeurs Python peuvent souvent deviner la commande Python " +#~ "correcte en consultant la documentation Tk. Cela signifie que pour " +#~ "utiliser Tkinter, vous devez en savoir un peu plus sur Tk. Ce document ne " +#~ "peut pas remplir ce rôle, alors le mieux que nous puissions faire est de " +#~ "vous indiquer la meilleure documentation qui existe. Voici quelques " +#~ "conseils :" + +#~ msgid "" +#~ "The authors strongly suggest getting a copy of the Tk man pages. " +#~ "Specifically, the man pages in the ``manN`` directory are most useful. " +#~ "The ``man3`` man pages describe the C interface to the Tk library and " +#~ "thus are not especially helpful for script writers." +#~ msgstr "" +#~ "Les auteurs conseillent fortement d'obtenir une copie des pages de manuel " +#~ "de Tk. En particulier, les pages de manuel dans le répertoire ``manN`` " +#~ "sont les plus utiles. Les pages de manuel ``man3`` décrivent l'interface " +#~ "C de la bibliothèque Tk et ne sont donc pas particulièrement utiles aux " +#~ "développeurs de scripts." + +#~ msgid "" +#~ "Addison-Wesley publishes a book called Tcl and the Tk Toolkit by John " +#~ "Ousterhout (ISBN 0-201-63337-X) which is a good introduction to Tcl and " +#~ "Tk for the novice. The book is not exhaustive, and for many details it " +#~ "defers to the man pages." +#~ msgstr "" +#~ "Addison-Wesley a publié un livre intitulé *Tcl and the Tk Toolkit* de " +#~ "John Ousterhout (ISBN 0-201-63337-X) qui est une bonne introduction à Tcl " +#~ "et Tk pour débutants. Le livre n'est pas exhaustif et, pour beaucoup de " +#~ "détails, il renvoie aux pages du manuel." + +#~ msgid "" +#~ ":file:`tkinter/__init__.py` is a last resort for most, but can be a good " +#~ "place to go when nothing else makes sense." +#~ msgstr "" +#~ ":file:`tkinter/__init__.py` est souvent un dernier recours, mais peut " +#~ "être un bon endroit où aller quand rien d'autre ne fait sens." + +#~ msgid "A (Very) Quick Look at Tcl/Tk" +#~ msgstr "Un (très) rapide aperçu de Tcl/Tk" + +#~ msgid "" +#~ "The class hierarchy looks complicated, but in actual practice, " +#~ "application programmers almost always refer to the classes at the very " +#~ "bottom of the hierarchy." +#~ msgstr "" +#~ "La hiérarchie de classes semble compliquée mais, dans la pratique, les " +#~ "développeurs d'applications se réfèrent presque toujours aux classes " +#~ "situées tout en bas de la hiérarchie." + +#~ msgid "Notes:" +#~ msgstr "Notes :" + +#~ msgid "" +#~ "These classes are provided for the purposes of organizing certain " +#~ "functions under one namespace. They aren't meant to be instantiated " +#~ "independently." +#~ msgstr "" +#~ "Ces classes sont fournies dans le but d'organiser certaines fonctions " +#~ "sous un seul espace de nommage. Elles n'ont pas vocation à être " +#~ "instanciées indépendamment." + +#~ msgid "" +#~ "The :class:`Tk` class is meant to be instantiated only once in an " +#~ "application. Application programmers need not instantiate one explicitly, " +#~ "the system creates one whenever any of the other classes are instantiated." +#~ msgstr "" +#~ "La classe :class:`Tk` est destinée à être instanciée une seule fois dans " +#~ "une application. Les développeurs d'applications n'ont pas besoin d'en " +#~ "instancier une explicitement, Le système en crée une au besoin quand une " +#~ "des autres classes est instanciée." + +#~ msgid "" +#~ "The :class:`Widget` class is not meant to be instantiated, it is meant " +#~ "only for subclassing to make \"real\" widgets (in C++, this is called an " +#~ "'abstract class')." +#~ msgstr "" +#~ "La classe :class:`Widget` n'est pas destinée à être instanciée, elle est " +#~ "destinée uniquement au sous-classement pour faire de « vrais » objets " +#~ "graphiques (en C++, on appelle cela une « classe abstraite »)." + +#~ msgid "" +#~ "To make use of this reference material, there will be times when you will " +#~ "need to know how to read short passages of Tk and how to identify the " +#~ "various parts of a Tk command. (See section :ref:`tkinter-basic-" +#~ "mapping` for the :mod:`tkinter` equivalents of what's below.)" +#~ msgstr "" +#~ "Pour comprendre cette documentation, il y aura des moments où vous aurez " +#~ "besoin de savoir comment lire de courts passages de Tk et comment " +#~ "identifier les différentes parties d'une commande Tk. (Voir la section :" +#~ "ref:`tkinter-basic-mapping` pour les équivalents :mod:`tkinter` de ce qui " +#~ "suit)." + +#~ msgid "" +#~ "Tk scripts are Tcl programs. Like all Tcl programs, Tk scripts are just " +#~ "lists of tokens separated by spaces. A Tk widget is just its *class*, " +#~ "the *options* that help configure it, and the *actions* that make it do " +#~ "useful things." +#~ msgstr "" +#~ "Les scripts Tk sont des programmes Tcl. Comme tous les programmes Tcl, " +#~ "les scripts Tk ne sont que des listes de commandes séparées par des " +#~ "espaces. Un objet graphique Tk n'est constitué que de sa *classe*, des " +#~ "*options* qui l'aident à se configurer et des *actions* qui lui font " +#~ "faire des choses utiles." + +#~ msgid "To make a widget in Tk, the command is always of the form::" +#~ msgstr "" +#~ "Pour créer un objet graphique en Tk, la commande est toujours de la " +#~ "forme ::" + +#~ msgid "*classCommand*" +#~ msgstr "*classCommand*" + +#~ msgid "denotes which kind of widget to make (a button, a label, a menu...)" +#~ msgstr "" +#~ "indique le type d'objet graphique à réaliser (un bouton, une étiquette, " +#~ "un menu…)" + +#~ msgid "*newPathname*" +#~ msgstr "*newPathname*" + +#~ msgid "" +#~ "is the new name for this widget. All names in Tk must be unique. To " +#~ "help enforce this, widgets in Tk are named with *pathnames*, just like " +#~ "files in a file system. The top level widget, the *root*, is called ``." +#~ "`` (period) and children are delimited by more periods. For example, ``." +#~ "myApp.controlPanel.okButton`` might be the name of a widget." +#~ msgstr "" +#~ "est le nouveau nom pour cet objet graphique. Tous les noms dans Tk " +#~ "doivent être uniques. Pour vous aider à respecter cette règle, les " +#~ "objets graphiques dans Tk sont nommés avec des *noms d'accès*, tout comme " +#~ "les fichiers dans le système de fichiers. L'objet graphique de niveau " +#~ "supérieur, la racine (*root* en anglais), s'appelle ``.`` (point) et les " +#~ "enfants sont délimités par plusieurs points. Par exemple, ``.myApp." +#~ "controlPanel.okButton`` pourrait être le nom d'un objet graphique." + +#~ msgid "*options*" +#~ msgstr "*options*" + +#~ msgid "" +#~ "configure the widget's appearance and in some cases, its behavior. The " +#~ "options come in the form of a list of flags and values. Flags are " +#~ "preceded by a '-', like Unix shell command flags, and values are put in " +#~ "quotes if they are more than one word." +#~ msgstr "" +#~ "configure l'apparence de l'objet graphique et, dans certains cas, son " +#~ "comportement. Les options se présentent sous la forme d'une liste de " +#~ "paramètres et de valeurs. Les paramètres sont précédés d'un « - », comme " +#~ "les paramètres d'une ligne de commande du shell Unix, et les valeurs sont " +#~ "mises entre guillemets si elles font plus d'un mot." + +#~ msgid "" +#~ "Once created, the pathname to the widget becomes a new command. This new " +#~ "*widget command* is the programmer's handle for getting the new widget to " +#~ "perform some *action*. In C, you'd express this as someAction(fred, " +#~ "someOptions), in C++, you would express this as fred." +#~ "someAction(someOptions), and in Tk, you say::" +#~ msgstr "" +#~ "Une fois créé, le chemin d'accès à l'objet graphique devient une nouvelle " +#~ "commande. Cette nouvelle *commande d'objet graphique* est l'interface du " +#~ "programmeur pour que le nouvel objet graphique effectue une *action*. En " +#~ "C, cela prend la forme ``someAction(fred, someOptions)``, en C++, cela " +#~ "prend la forme `fred.someAction(someOptions)` et, en Tk, vous dites ::" + +#~ msgid "Note that the object name, ``.fred``, starts with a dot." +#~ msgstr "Notez que le nom de l'objet, ``.fred``, commence par un point." + +#~ msgid "" +#~ "As you'd expect, the legal values for *someAction* will depend on the " +#~ "widget's class: ``.fred disable`` works if fred is a button (fred gets " +#~ "greyed out), but does not work if fred is a label (disabling of labels is " +#~ "not supported in Tk)." +#~ msgstr "" +#~ "Comme vous pouvez vous y attendre, les valeurs autorisées pour " +#~ "*someAction* dépendent de la classe de l'objet graphique : ``.fred " +#~ "disable`` fonctionne si ``fred`` est un bouton (``fred`` devient grisé), " +#~ "mais ne fonctionne pas si ``fred`` est une étiquette (la désactivation " +#~ "des étiquettes n'existe pas dans Tk)." + +#~ msgid "" +#~ "The legal values of *someOptions* is action dependent. Some actions, " +#~ "like ``disable``, require no arguments, others, like a text-entry box's " +#~ "``delete`` command, would need arguments to specify what range of text to " +#~ "delete." +#~ msgstr "" +#~ "Les valeurs possibles de *someOptions* dépendent de l'action. Certaines " +#~ "actions, comme ``disable``, ne nécessitent aucun argument ; d'autres, " +#~ "comme la commande ``delete`` d'une zone de saisie, nécessitent des " +#~ "arguments pour spécifier l'étendue du texte à supprimer." + +#~ msgid "Mapping Basic Tk into Tkinter" +#~ msgstr "Correspondance entre *Basic Tk* et *Tkinter*" + +#~ msgid "Class commands in Tk correspond to class constructors in Tkinter. ::" +#~ msgstr "" +#~ "Les commandes de classes dans Tk correspondent aux constructeurs de " +#~ "classes dans Tkinter. ::" + +#~ msgid "" +#~ "The master of an object is implicit in the new name given to it at " +#~ "creation time. In Tkinter, masters are specified explicitly. ::" +#~ msgstr "" +#~ "Le constructeur d'un objet est implicite dans le nouveau nom qui lui est " +#~ "donné lors de la création. Dans Tkinter, les constructeurs sont " +#~ "spécifiés explicitement. ::" + +#~ msgid "" +#~ "The configuration options in Tk are given in lists of hyphened tags " +#~ "followed by values. In Tkinter, options are specified as keyword-" +#~ "arguments in the instance constructor, and keyword-args for configure " +#~ "calls or as instance indices, in dictionary style, for established " +#~ "instances. See section :ref:`tkinter-setting-options` on setting " +#~ "options. ::" +#~ msgstr "" +#~ "Les options de configuration dans Tk sont données dans des listes de " +#~ "paramètres séparés par des traits d'union suivies de leurs valeurs. Dans " +#~ "Tkinter, les options sont spécifiées sous forme d'arguments par mots-clés " +#~ "dans le constructeur d'instance, et d'arguments par mots-clés pour " +#~ "configurer les appels ou sous forme d'une entrée, dans le style " +#~ "dictionnaire, d'instance pour les instances établies. Voir la section :" +#~ "ref:`tkinter-setting-options` pour la façon de définir les options. ::" + +#~ msgid "" +#~ "In Tk, to perform an action on a widget, use the widget name as a " +#~ "command, and follow it with an action name, possibly with arguments " +#~ "(options). In Tkinter, you call methods on the class instance to invoke " +#~ "actions on the widget. The actions (methods) that a given widget can " +#~ "perform are listed in :file:`tkinter/__init__.py`. ::" +#~ msgstr "" +#~ "Dans Tk, pour effectuer une action sur un objet graphique, utilisez le " +#~ "nom de l'objet graphique comme une commande et faites-le suivre d'un nom " +#~ "d'action, éventuellement avec des arguments (options). Dans Tkinter, " +#~ "vous appelez des méthodes sur l'instance de classe pour invoquer des " +#~ "actions sur l'objet graphique. Les actions (méthodes) qu'un objet " +#~ "graphique donné peut effectuer sont listées dans :file:`tkinter/__init__." +#~ "py`. ::" + +#~ msgid "" +#~ "To give a widget to the packer (geometry manager), you call pack with " +#~ "optional arguments. In Tkinter, the Pack class holds all this " +#~ "functionality, and the various forms of the pack command are implemented " +#~ "as methods. All widgets in :mod:`tkinter` are subclassed from the " +#~ "Packer, and so inherit all the packing methods. See the :mod:`tkinter." +#~ "tix` module documentation for additional information on the Form geometry " +#~ "manager. ::" +#~ msgstr "" +#~ "Pour donner un objet graphique à l'empaqueteur (ce qui gère la " +#~ "disposition à l'écran), appelez ``pack`` avec des arguments optionnels. " +#~ "Dans Tkinter, la classe ``Pack`` contient toutes ces fonctionnalités et " +#~ "les différentes formes de la commande ``pack`` sont implémentées comme " +#~ "méthodes. Tous les objets graphiques de :mod:`tkinter` sont sous-classés " +#~ "depuis l'empaqueteur et donc héritent de toutes les méthodes " +#~ "d'empaquetage. Voir la documentation du module :mod:`tkinter.tix` pour " +#~ "plus d'informations sur le gestionnaire de disposition des formulaires. ::" + +#~ msgid "How Tk and Tkinter are Related" +#~ msgstr "Relations entre Tk et Tkinter" + +#~ msgid "From the top down:" +#~ msgstr "De haut en bas :" + +#~ msgid "Your App Here (Python)" +#~ msgstr "Votre application (Python)" + +#~ msgid "A Python application makes a :mod:`tkinter` call." +#~ msgstr "Une application Python fait un appel :mod:`tkinter`." + +#~ msgid "tkinter (Python Package)" +#~ msgstr "*tkinter* (paquet Python)" + +#~ msgid "" +#~ "This call (say, for example, creating a button widget), is implemented in " +#~ "the :mod:`tkinter` package, which is written in Python. This Python " +#~ "function will parse the commands and the arguments and convert them into " +#~ "a form that makes them look as if they had come from a Tk script instead " +#~ "of a Python script." +#~ msgstr "" +#~ "Cet appel (par exemple, la création d'un objet graphique de type bouton) " +#~ "est implémenté dans le paquet :mod:`tkinter`, qui est écrit en Python. " +#~ "Cette fonction Python analyse les commandes et les arguments et les " +#~ "convertit en une forme qui les fait ressembler à un script Tk au lieu " +#~ "d'un script Python." + +#~ msgid "_tkinter (C)" +#~ msgstr "_tkinter (C)" + +#~ msgid "" +#~ "These commands and their arguments will be passed to a C function in the :" +#~ "mod:`_tkinter` - note the underscore - extension module." +#~ msgstr "" +#~ "Ces commandes et leurs arguments sont passés à une fonction C dans le " +#~ "module d'extension :mod:`_tkinter` — notez le tiret bas." + +#~ msgid "Tk Widgets (C and Tcl)" +#~ msgstr "Objets graphiques Tk (C et Tcl)" + +#~ msgid "" +#~ "This C function is able to make calls into other C modules, including the " +#~ "C functions that make up the Tk library. Tk is implemented in C and some " +#~ "Tcl. The Tcl part of the Tk widgets is used to bind certain default " +#~ "behaviors to widgets, and is executed once at the point where the Python :" +#~ "mod:`tkinter` package is imported. (The user never sees this stage)." +#~ msgstr "" +#~ "Cette fonction C est capable d'effectuer des appels vers d'autres modules " +#~ "C, y compris les fonctions C qui composent la bibliothèque Tk. Tk est " +#~ "implémenté en C et un peu en Tcl. La partie Tcl des objets graphiques Tk " +#~ "est utilisée pour lier certains comportements par défaut aux objets " +#~ "graphiques, et est exécutée une fois au moment où le paquet Python :mod:" +#~ "`tkinter` est importé (cette étape est transparente pour l'utilisateur)." + +#~ msgid "Tk (C)" +#~ msgstr "Tk (C)" + +#~ msgid "The Tk part of the Tk Widgets implement the final mapping to ..." +#~ msgstr "" +#~ "La partie Tk des objets graphiques Tk implémente la correspondance finale " +#~ "avec …" + +#~ msgid "Xlib (C)" +#~ msgstr "Xlib (C)" + +#~ msgid "the Xlib library to draw graphics on the screen." +#~ msgstr "" +#~ "la bibliothèque *Xlib* pour dessiner des éléments graphiques à l'écran." + #~ msgid "" #~ "`Tkinter 8.5 reference: a GUI for Python \n" "Language-Team: FRENCH \n" @@ -1134,7 +1134,7 @@ msgstr "" #: library/tkinter.ttk.rst:762 msgid "" -"On MacOS X, toplevel windows automatically include a built-in size grip by " +"On macOS, toplevel windows automatically include a built-in size grip by " "default. Adding a :class:`Sizegrip` is harmless, since the built-in grip " "will just mask the widget." msgstr "" diff --git a/library/token.po b/library/token.po index 00e68c950..ab88bdc1e 100644 --- a/library/token.po +++ b/library/token.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-09-28 10:04+0200\n" "Last-Translator: Mickaël Bergem \n" "Language-Team: FRENCH \n" @@ -26,10 +26,11 @@ msgid "**Source code:** :source:`Lib/token.py`" msgstr "**Code source :** :source:`Lib/token.py`" #: library/token.rst:13 +#, fuzzy msgid "" "This module provides constants which represent the numeric values of leaf " "nodes of the parse tree (terminal tokens). Refer to the file :file:`Grammar/" -"Grammar` in the Python distribution for the definitions of the names in the " +"Tokens` in the Python distribution for the definitions of the names in the " "context of the language grammar. The specific numeric values which the " "names map to may change between Python versions." msgstr "" diff --git a/library/traceback.po b/library/traceback.po index 9b40a24b4..4aefe706f 100644 --- a/library/traceback.po +++ b/library/traceback.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -53,34 +53,41 @@ msgid "" "the output." msgstr "" -#: library/traceback.rst:89 +#: library/traceback.rst:98 msgid "Added negative *limit* support." msgstr "" -#: library/traceback.rst:41 +#: library/traceback.rst:42 msgid "" "Print exception information and stack trace entries from traceback object " "*tb* to *file*. This differs from :func:`print_tb` in the following ways:" msgstr "" -#: library/traceback.rst:45 +#: library/traceback.rst:46 msgid "" "if *tb* is not ``None``, it prints a header ``Traceback (most recent call " "last):``" msgstr "" -#: library/traceback.rst:48 -msgid "it prints the exception *etype* and *value* after the stack trace" +#: library/traceback.rst:49 +msgid "it prints the exception type and *value* after the stack trace" msgstr "" -#: library/traceback.rst:52 +#: library/traceback.rst:53 msgid "" "if *type(value)* is :exc:`SyntaxError` and *value* has the appropriate " "format, it prints the line where the syntax error occurred with a caret " "indicating the approximate position of the error." msgstr "" -#: library/traceback.rst:56 +#: library/traceback.rst:57 +msgid "" +"Since Python 3.10, instead of passing *value* and *tb*, an exception object " +"can be passed as the first argument. If *value* and *tb* are provided, the " +"first argument is ignored in order to provide backwards compatibility." +msgstr "" + +#: library/traceback.rst:61 msgid "" "The optional *limit* argument has the same meaning as for :func:`print_tb`. " "If *chain* is true (the default), then chained exceptions (the :attr:" @@ -89,24 +96,29 @@ msgid "" "exception." msgstr "" -#: library/traceback.rst:143 +#: library/traceback.rst:160 msgid "The *etype* argument is ignored and inferred from the type of *value*." msgstr "" -#: library/traceback.rst:68 +#: library/traceback.rst:147 +msgid "" +"The *etype* parameter has been renamed to *exc* and is now positional-only." +msgstr "" + +#: library/traceback.rst:77 msgid "" "This is a shorthand for ``print_exception(*sys.exc_info(), limit, file, " "chain)``." msgstr "" -#: library/traceback.rst:74 +#: library/traceback.rst:83 msgid "" "This is a shorthand for ``print_exception(sys.last_type, sys.last_value, sys." "last_traceback, limit, file, chain)``. In general it will work only after " "an exception has reached an interactive prompt (see :data:`sys.last_type`)." msgstr "" -#: library/traceback.rst:82 +#: library/traceback.rst:91 msgid "" "Print up to *limit* stack trace entries (starting from the invocation point) " "if *limit* is positive. Otherwise, print the last ``abs(limit)`` entries. " @@ -115,7 +127,7 @@ msgid "" "optional *file* argument has the same meaning as for :func:`print_tb`." msgstr "" -#: library/traceback.rst:95 +#: library/traceback.rst:104 msgid "" "Return a :class:`StackSummary` object representing a list of \"pre-processed" "\" stack trace entries extracted from the traceback object *tb*. It is " @@ -129,14 +141,14 @@ msgid "" "stripped; if the source is not available it is ``None``." msgstr "" -#: library/traceback.rst:109 +#: library/traceback.rst:118 msgid "" "Extract the raw traceback from the current stack frame. The return value " "has the same format as for :func:`extract_tb`. The optional *f* and *limit* " "arguments have the same meaning as for :func:`print_stack`." msgstr "" -#: library/traceback.rst:116 +#: library/traceback.rst:125 msgid "" "Given a list of tuples or :class:`FrameSummary` objects as returned by :func:" "`extract_tb` or :func:`extract_stack`, return a list of strings ready for " @@ -146,18 +158,25 @@ msgid "" "text line is not ``None``." msgstr "" -#: library/traceback.rst:126 +#: library/traceback.rst:135 msgid "" -"Format the exception part of a traceback. The arguments are the exception " -"type and value such as given by ``sys.last_type`` and ``sys.last_value``. " -"The return value is a list of strings, each ending in a newline. Normally, " -"the list contains a single string; however, for :exc:`SyntaxError` " -"exceptions, it contains several lines that (when printed) display detailed " -"information about where the syntax error occurred. The message indicating " -"which exception occurred is the always last string in the list." +"Format the exception part of a traceback using an exception value such as " +"given by ``sys.last_value``. The return value is a list of strings, each " +"ending in a newline. Normally, the list contains a single string; however, " +"for :exc:`SyntaxError` exceptions, it contains several lines that (when " +"printed) display detailed information about where the syntax error occurred. " +"The message indicating which exception occurred is the always last string in " +"the list." msgstr "" -#: library/traceback.rst:137 +#: library/traceback.rst:143 +msgid "" +"Since Python 3.10, instead of passing *value*, an exception object can be " +"passed as the first argument. If *value* is provided, the first argument is " +"ignored in order to provide backwards compatibility." +msgstr "" + +#: library/traceback.rst:154 msgid "" "Format a stack trace and the exception information. The arguments have the " "same meaning as the corresponding arguments to :func:`print_exception`. The " @@ -166,158 +185,176 @@ msgid "" "printed, exactly the same text is printed as does :func:`print_exception`." msgstr "" -#: library/traceback.rst:149 +#: library/traceback.rst:163 +msgid "" +"This function's behavior and signature were modified to match :func:" +"`print_exception`." +msgstr "" + +#: library/traceback.rst:170 msgid "" "This is like ``print_exc(limit)`` but returns a string instead of printing " "to a file." msgstr "" -#: library/traceback.rst:155 +#: library/traceback.rst:176 msgid "A shorthand for ``format_list(extract_tb(tb, limit))``." msgstr "" -#: library/traceback.rst:160 +#: library/traceback.rst:181 msgid "A shorthand for ``format_list(extract_stack(f, limit))``." msgstr "" -#: library/traceback.rst:164 +#: library/traceback.rst:185 msgid "" "Clears the local variables of all the stack frames in a traceback *tb* by " "calling the :meth:`clear` method of each frame object." msgstr "" -#: library/traceback.rst:171 +#: library/traceback.rst:192 msgid "" "Walk a stack following ``f.f_back`` from the given frame, yielding the frame " "and line number for each frame. If *f* is ``None``, the current stack is " "used. This helper is used with :meth:`StackSummary.extract`." msgstr "" -#: library/traceback.rst:179 +#: library/traceback.rst:200 msgid "" "Walk a traceback following ``tb_next`` yielding the frame and line number " "for each frame. This helper is used with :meth:`StackSummary.extract`." msgstr "" -#: library/traceback.rst:184 +#: library/traceback.rst:205 msgid "The module also defines the following classes:" msgstr "" -#: library/traceback.rst:187 +#: library/traceback.rst:208 msgid ":class:`TracebackException` Objects" msgstr "" -#: library/traceback.rst:191 +#: library/traceback.rst:212 msgid "" ":class:`TracebackException` objects are created from actual exceptions to " "capture data for later printing in a lightweight fashion." msgstr "" -#: library/traceback.rst:243 +#: library/traceback.rst:269 msgid "" "Capture an exception for later rendering. *limit*, *lookup_lines* and " "*capture_locals* are as for the :class:`StackSummary` class." msgstr "" -#: library/traceback.rst:246 +#: library/traceback.rst:220 +msgid "" +"If *compact* is true, only data that is required by :class:" +"`TracebackException`'s ``format`` method is saved in the class attributes. " +"In particular, the ``__context__`` field is calculated only if ``__cause__`` " +"is ``None`` and ``__suppress_context__`` is false." +msgstr "" + +#: library/traceback.rst:272 msgid "" "Note that when locals are captured, they are also shown in the traceback." msgstr "" -#: library/traceback.rst:203 +#: library/traceback.rst:229 msgid "A :class:`TracebackException` of the original ``__cause__``." msgstr "" -#: library/traceback.rst:207 +#: library/traceback.rst:233 msgid "A :class:`TracebackException` of the original ``__context__``." msgstr "" -#: library/traceback.rst:211 +#: library/traceback.rst:237 msgid "The ``__suppress_context__`` value from the original exception." msgstr "" -#: library/traceback.rst:215 +#: library/traceback.rst:241 msgid "A :class:`StackSummary` representing the traceback." msgstr "" -#: library/traceback.rst:219 +#: library/traceback.rst:245 msgid "The class of the original traceback." msgstr "" -#: library/traceback.rst:223 +#: library/traceback.rst:249 msgid "For syntax errors - the file name where the error occurred." msgstr "" -#: library/traceback.rst:227 +#: library/traceback.rst:253 msgid "For syntax errors - the line number where the error occurred." msgstr "" -#: library/traceback.rst:231 +#: library/traceback.rst:257 msgid "For syntax errors - the text where the error occurred." msgstr "" -#: library/traceback.rst:235 +#: library/traceback.rst:261 msgid "For syntax errors - the offset into the text where the error occurred." msgstr "" -#: library/traceback.rst:239 +#: library/traceback.rst:265 msgid "For syntax errors - the compiler error message." msgstr "" -#: library/traceback.rst:250 +#: library/traceback.rst:276 msgid "Format the exception." msgstr "" -#: library/traceback.rst:252 +#: library/traceback.rst:278 msgid "" "If *chain* is not ``True``, ``__cause__`` and ``__context__`` will not be " "formatted." msgstr "" -#: library/traceback.rst:255 +#: library/traceback.rst:281 msgid "" "The return value is a generator of strings, each ending in a newline and " "some containing internal newlines. :func:`~traceback.print_exception` is a " "wrapper around this method which just prints the lines to a file." msgstr "" -#: library/traceback.rst:273 +#: library/traceback.rst:299 msgid "" "The message indicating which exception occurred is always the last string in " "the output." msgstr "" -#: library/traceback.rst:264 +#: library/traceback.rst:290 msgid "Format the exception part of the traceback." msgstr "" -#: library/traceback.rst:266 +#: library/traceback.rst:292 msgid "The return value is a generator of strings, each ending in a newline." msgstr "" -#: library/traceback.rst:268 +#: library/traceback.rst:294 msgid "" "Normally, the generator emits a single string; however, for :exc:" "`SyntaxError` exceptions, it emits several lines that (when printed) display " "detailed information about where the syntax error occurred." msgstr "" -#: library/traceback.rst:278 +#: library/traceback.rst:302 +msgid "Added the *compact* parameter." +msgstr "" + +#: library/traceback.rst:307 msgid ":class:`StackSummary` Objects" msgstr "" -#: library/traceback.rst:282 +#: library/traceback.rst:311 msgid "" ":class:`StackSummary` objects represent a call stack ready for formatting." msgstr "" -#: library/traceback.rst:288 +#: library/traceback.rst:317 msgid "" "Construct a :class:`StackSummary` object from a frame generator (such as is " "returned by :func:`~traceback.walk_stack` or :func:`~traceback.walk_tb`)." msgstr "" -#: library/traceback.rst:292 +#: library/traceback.rst:321 msgid "" "If *limit* is supplied, only this many frames are taken from *frame_gen*. If " "*lookup_lines* is ``False``, the returned :class:`FrameSummary` objects will " @@ -327,14 +364,14 @@ msgid "" "class:`FrameSummary` are captured as object representations." msgstr "" -#: library/traceback.rst:302 +#: library/traceback.rst:331 msgid "" "Construct a :class:`StackSummary` object from a supplied list of :class:" "`FrameSummary` objects or old-style list of tuples. Each tuple should be a " "4-tuple with filename, lineno, name, line as the elements." msgstr "" -#: library/traceback.rst:308 +#: library/traceback.rst:337 msgid "" "Returns a list of strings ready for printing. Each string in the resulting " "list corresponds to a single frame from the stack. Each string ends in a " @@ -342,26 +379,26 @@ msgid "" "with source text lines." msgstr "" -#: library/traceback.rst:313 +#: library/traceback.rst:342 msgid "" "For long sequences of the same frame and line, the first few repetitions are " "shown, followed by a summary line stating the exact number of further " "repetitions." msgstr "" -#: library/traceback.rst:317 +#: library/traceback.rst:346 msgid "Long sequences of repeated frames are now abbreviated." msgstr "" -#: library/traceback.rst:322 +#: library/traceback.rst:351 msgid ":class:`FrameSummary` Objects" msgstr "" -#: library/traceback.rst:326 +#: library/traceback.rst:355 msgid ":class:`FrameSummary` objects represent a single frame in a traceback." msgstr "" -#: library/traceback.rst:330 +#: library/traceback.rst:359 msgid "" "Represent a single frame in the traceback or stack that is being formatted " "or printed. It may optionally have a stringified version of the frames " @@ -374,11 +411,11 @@ msgid "" "display." msgstr "" -#: library/traceback.rst:343 +#: library/traceback.rst:372 msgid "Traceback Examples" msgstr "" -#: library/traceback.rst:345 +#: library/traceback.rst:374 msgid "" "This simple example implements a basic read-eval-print loop, similar to (but " "less useful than) the standard Python interactive interpreter loop. For a " @@ -386,22 +423,22 @@ msgid "" "`code` module. ::" msgstr "" -#: library/traceback.rst:367 +#: library/traceback.rst:396 msgid "" "The following example demonstrates the different ways to print and format " "the exception and traceback:" msgstr "" -#: library/traceback.rst:406 +#: library/traceback.rst:435 msgid "The output for the example would look similar to this:" msgstr "" -#: library/traceback.rst:448 +#: library/traceback.rst:477 msgid "" "The following example shows the different ways to print and format the " "stack::" msgstr "" -#: library/traceback.rst:474 +#: library/traceback.rst:503 msgid "This last example demonstrates the final few formatting functions:" msgstr "" diff --git a/library/tracemalloc.po b/library/tracemalloc.po index fda9cd974..e986ddc98 100644 --- a/library/tracemalloc.po +++ b/library/tracemalloc.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -768,12 +768,12 @@ msgstr "" #: library/tracemalloc.rst:743 msgid "" -"Format the traceback as a list of lines with newlines. Use the :mod:" -"`linecache` module to retrieve lines from the source code. If *limit* is " -"set, format the *limit* most recent frames if *limit* is positive. " -"Otherwise, format the ``abs(limit)`` oldest frames. If *most_recent_first* " -"is ``True``, the order of the formatted frames is reversed, returning the " -"most recent frame first instead of last." +"Format the traceback as a list of lines. Use the :mod:`linecache` module to " +"retrieve lines from the source code. If *limit* is set, format the *limit* " +"most recent frames if *limit* is positive. Otherwise, format the " +"``abs(limit)`` oldest frames. If *most_recent_first* is ``True``, the order " +"of the formatted frames is reversed, returning the most recent frame first " +"instead of last." msgstr "" #: library/tracemalloc.rst:750 diff --git a/library/turtle.po b/library/turtle.po index 9248575cb..6a1cfa132 100644 --- a/library/turtle.po +++ b/library/turtle.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-24 17:33+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-03-15 23:21+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -256,7 +256,7 @@ msgstr ":func:`setheading` | :func:`seth`" msgid ":func:`home`" msgstr ":func:`home`" -#: library/turtle.rst:2459 +#: library/turtle.rst:2463 msgid ":func:`circle`" msgstr ":func:`circle`" @@ -264,7 +264,7 @@ msgstr ":func:`circle`" msgid ":func:`dot`" msgstr ":func:`dot`" -#: library/turtle.rst:2437 +#: library/turtle.rst:2441 msgid ":func:`stamp`" msgstr ":func:`stamp`" @@ -400,11 +400,11 @@ msgstr ":func:`clear`" msgid ":func:`write`" msgstr ":func:`write`" -#: library/turtle.rst:1117 +#: library/turtle.rst:1115 msgid "Turtle state" msgstr "État de la tortue" -#: library/turtle.rst:1120 +#: library/turtle.rst:1118 msgid "Visibility" msgstr "Visibilité" @@ -420,7 +420,7 @@ msgstr ":func:`hideturtle` | :func:`ht`" msgid ":func:`isvisible`" msgstr ":func:`isvisible`" -#: library/turtle.rst:1159 +#: library/turtle.rst:1157 msgid "Appearance" msgstr "Apparence" @@ -460,11 +460,11 @@ msgstr ":func:`shapetransform`" msgid ":func:`get_shapepoly`" msgstr ":func:`get_shapepoly`" -#: library/turtle.rst:1364 +#: library/turtle.rst:1362 msgid "Using events" msgstr "Utilisation des événements" -#: library/turtle.rst:2431 +#: library/turtle.rst:2435 msgid ":func:`onclick`" msgstr ":func:`onclick`" @@ -472,11 +472,11 @@ msgstr ":func:`onclick`" msgid ":func:`onrelease`" msgstr ":func:`onrelease`" -#: library/turtle.rst:2414 +#: library/turtle.rst:2418 msgid ":func:`ondrag`" msgstr ":func:`ondrag`" -#: library/turtle.rst:1438 +#: library/turtle.rst:1436 msgid "Special Turtle methods" msgstr "Méthodes spéciales de la tortue" @@ -492,7 +492,7 @@ msgstr ":func:`end_poly`" msgid ":func:`get_poly`" msgstr ":func:`get_poly`" -#: library/turtle.rst:2450 +#: library/turtle.rst:2454 msgid ":func:`clone`" msgstr ":func:`clone`" @@ -516,7 +516,7 @@ msgstr ":func:`undobufferentries`" msgid "Methods of TurtleScreen/Screen" msgstr "Méthodes de *TurtleScreen*/*Screen*" -#: library/turtle.rst:1592 +#: library/turtle.rst:1590 msgid "Window control" msgstr "Réglage de la fenêtre" @@ -529,12 +529,14 @@ msgid ":func:`bgpic`" msgstr ":func:`bgpic`" #: library/turtle.rst:0 -msgid ":func:`clear` | :func:`clearscreen`" -msgstr ":func:`clear` | :func:`clearscreen`" +#, fuzzy +msgid ":func:`clearscreen`" +msgstr ":func:`getscreen`" #: library/turtle.rst:0 -msgid ":func:`reset` | :func:`resetscreen`" -msgstr ":func:`reset` | :func:`resetscreen`" +#, fuzzy +msgid ":func:`resetscreen`" +msgstr ":func:`getscreen`" #: library/turtle.rst:0 msgid ":func:`screensize`" @@ -544,7 +546,7 @@ msgstr ":func:`screensize`" msgid ":func:`setworldcoordinates`" msgstr ":func:`setworldcoordinates`" -#: library/turtle.rst:1709 +#: library/turtle.rst:1713 msgid "Animation control" msgstr "Réglage de l'animation" @@ -560,7 +562,7 @@ msgstr ":func:`tracer`" msgid ":func:`update`" msgstr ":func:`update`" -#: library/turtle.rst:1762 +#: library/turtle.rst:1766 msgid "Using screen events" msgstr "Utilisation des événements concernant l'écran" @@ -588,7 +590,7 @@ msgstr ":func:`ontimer`" msgid ":func:`mainloop` | :func:`done`" msgstr ":func:`mainloop` | :func:`done`" -#: library/turtle.rst:1907 +#: library/turtle.rst:1911 msgid "Settings and special methods" msgstr "Paramétrages et méthodes spéciales" @@ -624,7 +626,7 @@ msgstr ":func:`window_height`" msgid ":func:`window_width`" msgstr ":func:`window_width`" -#: library/turtle.rst:1871 +#: library/turtle.rst:1875 msgid "Input methods" msgstr "Méthodes de saisie" @@ -684,7 +686,7 @@ msgstr "" "Avance la tortue de la *distance* spécifiée, dans la direction où elle se " "dirige." -#: library/turtle.rst:473 library/turtle.rst:1258 library/turtle.rst:1277 +#: library/turtle.rst:473 library/turtle.rst:1256 library/turtle.rst:1275 msgid "a number" msgstr "un nombre" @@ -1368,7 +1370,7 @@ msgstr "" "l'étoile (*Turtle star* en anglais) ci-dessus peut être entièrement jaune ou " "comporter quelques régions blanches." -#: library/turtle.rst:1074 +#: library/turtle.rst:1073 msgid "" "Delete the turtle's drawings from the screen, re-center the turtle and set " "variables to the default values." @@ -1376,7 +1378,7 @@ msgstr "" "Supprime les dessins de la tortue de l'écran, recentre la tortue et assigne " "les variables aux valeurs par défaut." -#: library/turtle.rst:1096 +#: library/turtle.rst:1094 msgid "" "Delete the turtle's drawings from the screen. Do not move turtle. State " "and position of the turtle as well as drawings of other turtles are not " @@ -1386,25 +1388,25 @@ msgstr "" "L'état et la position de la tortue ainsi que les dessins des autres tortues " "ne sont pas affectés." -#: library/turtle.rst:1102 +#: library/turtle.rst:1100 msgid "object to be written to the TurtleScreen" msgstr "objet à écrire sur le *TurtleScreen*" -#: library/turtle.rst:1103 +#: library/turtle.rst:1101 msgid "True/False" msgstr "``True`` / ``False``" -#: library/turtle.rst:1104 +#: library/turtle.rst:1102 msgid "one of the strings \"left\", \"center\" or right\"" msgstr "" "l'une des chaînes de caractères suivantes : `\"left\"`, `\"center\"` ou `" "\"right\"`" -#: library/turtle.rst:1105 +#: library/turtle.rst:1103 msgid "a triple (fontname, fontsize, fonttype)" msgstr "triplet (nom de police, taille de police, type de police)" -#: library/turtle.rst:1107 +#: library/turtle.rst:1105 msgid "" "Write text - the string representation of *arg* - at the current turtle " "position according to *align* (\"left\", \"center\" or \"right\") and with " @@ -1417,7 +1419,7 @@ msgstr "" "déplacé vers le coin inférieur droit du texte. Par défaut, *move* est " "``False``." -#: library/turtle.rst:1125 +#: library/turtle.rst:1123 msgid "" "Make the turtle invisible. It's a good idea to do this while you're in the " "middle of doing some complex drawing, because hiding the turtle speeds up " @@ -1426,20 +1428,20 @@ msgstr "" "Rend la tortue invisible. C'est recommandé lorsque vous êtes en train de " "faire un dessin complexe, vous observerez alors une accélération notable." -#: library/turtle.rst:1138 +#: library/turtle.rst:1136 msgid "Make the turtle visible." msgstr "Rend la tortue visible." -#: library/turtle.rst:1148 +#: library/turtle.rst:1146 msgid "Return ``True`` if the Turtle is shown, ``False`` if it's hidden." msgstr "" "Renvoie ``True`` si la tortue est visible, et ``False`` si elle est cachée." -#: library/turtle.rst:1163 +#: library/turtle.rst:1161 msgid "a string which is a valid shapename" msgstr "une chaîne de caractères qui correspond à un nom de forme valide" -#: library/turtle.rst:1165 +#: library/turtle.rst:1163 msgid "" "Set turtle shape to shape with given *name* or, if name is not given, return " "name of current shape. Shape with *name* must exist in the TurtleScreen's " @@ -1454,11 +1456,11 @@ msgstr "" "\"*triangle*\", \"*classic*\". Pour en apprendre plus sur comment gérer les " "formes, voir la méthode de *Screen* :func:`register_shape`." -#: library/turtle.rst:1183 +#: library/turtle.rst:1181 msgid "one of the strings \"auto\", \"user\", \"noresize\"" msgstr "l'une des chaînes suivantes : `\"auto\"`, `\"user\"`, `\"noresize\"`" -#: library/turtle.rst:1185 +#: library/turtle.rst:1183 msgid "" "Set resizemode to one of the values: \"auto\", \"user\", \"noresize\". If " "*rmode* is not given, return current resizemode. Different resizemodes have " @@ -1468,7 +1470,7 @@ msgstr "" "\"*noresize*\". Si \"*rmode*\" n'est pas donné, renvoie le *resizemode* " "actuel. Les différents *resizemode* ont les effets suivants :" -#: library/turtle.rst:1189 +#: library/turtle.rst:1187 msgid "" "\"auto\": adapts the appearance of the turtle corresponding to the value of " "pensize." @@ -1476,7 +1478,7 @@ msgstr "" "*\"auto\"* : adapte l'apparence de la tortue en fonction de la largeur du " "stylo (*value of pensize* en anglais)." -#: library/turtle.rst:1190 +#: library/turtle.rst:1188 msgid "" "\"user\": adapts the appearance of the turtle according to the values of " "stretchfactor and outlinewidth (outline), which are set by :func:`shapesize`." @@ -1485,12 +1487,12 @@ msgstr "" "paramètre d'étirement et de la largeur des contours, déterminés par :func:" "`shapesize`." -#: library/turtle.rst:1193 +#: library/turtle.rst:1191 msgid "\"noresize\": no adaption of the turtle's appearance takes place." msgstr "" "*\"noresize\"* : il n'y a pas de modification de l'apparence de la tortue." -#: library/turtle.rst:1195 +#: library/turtle.rst:1193 msgid "" "``resizemode(\"user\")`` is called by :func:`shapesize` when used with " "arguments." @@ -1498,11 +1500,11 @@ msgstr "" "``resizemode(\"user\")`` est appelé par :func:`shapesize` quand utilisé sans " "arguments." -#: library/turtle.rst:1211 library/turtle.rst:1212 +#: library/turtle.rst:1209 library/turtle.rst:1210 msgid "positive number" msgstr "nombre positif" -#: library/turtle.rst:1214 +#: library/turtle.rst:1212 msgid "" "Return or set the pen's attributes x/y-stretchfactors and/or outline. Set " "resizemode to \"user\". If and only if resizemode is set to \"user\", the " @@ -1519,11 +1521,11 @@ msgstr "" "en direction de son orientation, *outlline* détermine la largeur de la " "bordure de la forme." -#: library/turtle.rst:1890 library/turtle.rst:1892 +#: library/turtle.rst:1894 library/turtle.rst:1896 msgid "number (optional)" msgstr "un nombre (facultatif)" -#: library/turtle.rst:1239 +#: library/turtle.rst:1237 msgid "" "Set or return the current shearfactor. Shear the turtleshape according to " "the given shearfactor shear, which is the tangent of the shear angle. Do " @@ -1539,7 +1541,7 @@ msgstr "" "celui par rapport auquel les lignes parallèles à la direction de la tortue " "sont cisaillées." -#: library/turtle.rst:1260 +#: library/turtle.rst:1258 msgid "" "Rotate the turtleshape by *angle* from its current tilt-angle, but do *not* " "change the turtle's heading (direction of movement)." @@ -1547,7 +1549,7 @@ msgstr "" "Tourne la forme de la tortue de *angle* depuis son angle d'inclinaison " "actuel, mais *ne change pas* le cap de la tortue (direction du mouvement)." -#: library/turtle.rst:1279 +#: library/turtle.rst:1277 msgid "" "Rotate the turtleshape to point in the direction specified by *angle*, " "regardless of its current tilt-angle. *Do not* change the turtle's heading " @@ -1557,11 +1559,11 @@ msgstr "" "*angle*, indépendamment de son angle d'inclinaison actuel. *Ne change pas* " "le cap de la tortue (direction du mouvement)." -#: library/turtle.rst:1322 library/turtle.rst:1324 library/turtle.rst:1325 +#: library/turtle.rst:1320 library/turtle.rst:1322 library/turtle.rst:1323 msgid "a number (optional)" msgstr "un nombre (facultatif)" -#: library/turtle.rst:1301 +#: library/turtle.rst:1299 msgid "" "Set or return the current tilt-angle. If angle is given, rotate the " "turtleshape to point in the direction specified by angle, regardless of its " @@ -1577,13 +1579,13 @@ msgstr "" "renvoie l'angle d'inclinaison actuel (L'angle entre l'orientation de la " "forme de la tortue et le cap de la tortue (sa direction de mouvement))." -#: library/turtle.rst:1327 +#: library/turtle.rst:1325 msgid "Set or return the current transformation matrix of the turtle shape." msgstr "" "Définit ou renvoie la matrice de transformation actuelle de la forme de la " "tortue." -#: library/turtle.rst:1329 +#: library/turtle.rst:1327 msgid "" "If none of the matrix elements are given, return the transformation matrix " "as a tuple of 4 elements. Otherwise set the given elements and transform the " @@ -1600,7 +1602,7 @@ msgstr "" "est levée. Cela modifie le facteur d'étirement, le facteur de cisaillement " "et l'angle d'inclinaison en fonction de la matrice donnée." -#: library/turtle.rst:1351 +#: library/turtle.rst:1349 msgid "" "Return the current shape polygon as tuple of coordinate pairs. This can be " "used to define a new shape or components of a compound shape." @@ -1609,7 +1611,7 @@ msgstr "" "Vous pouvez l'utiliser afin de définir une nouvelle forme ou en tant que " "composant pour une forme plus complexe." -#: library/turtle.rst:1391 library/turtle.rst:1814 +#: library/turtle.rst:1389 library/turtle.rst:1818 msgid "" "a function with two arguments which will be called with the coordinates of " "the clicked point on the canvas" @@ -1617,11 +1619,11 @@ msgstr "" "une fonction à deux arguments qui sera appelée avec les coordonnées du point " "cliqué sur le canevas" -#: library/turtle.rst:1393 library/turtle.rst:1816 +#: library/turtle.rst:1391 library/turtle.rst:1820 msgid "number of the mouse-button, defaults to 1 (left mouse button)" msgstr "numéro du bouton de la souris, par défaut 1 (bouton de gauche)" -#: library/turtle.rst:1394 library/turtle.rst:1817 +#: library/turtle.rst:1392 library/turtle.rst:1821 msgid "" "``True`` or ``False`` -- if ``True``, a new binding will be added, otherwise " "it will replace a former binding" @@ -1629,7 +1631,7 @@ msgstr "" "``True`` ou ``False`` — si``True``, un nouveau lien est ajouté, sinon il " "remplace un ancien lien" -#: library/turtle.rst:1375 +#: library/turtle.rst:1373 msgid "" "Bind *fun* to mouse-click events on this turtle. If *fun* is ``None``, " "existing bindings are removed. Example for the anonymous turtle, i.e. the " @@ -1639,7 +1641,7 @@ msgstr "" "tortue. Si *fun* est ``None``, les liens existants sont supprimés. Exemple " "pour la tortue anonyme, c'est-à-dire la manière procédurale :" -#: library/turtle.rst:1397 +#: library/turtle.rst:1395 msgid "" "Bind *fun* to mouse-button-release events on this turtle. If *fun* is " "``None``, existing bindings are removed." @@ -1648,7 +1650,7 @@ msgstr "" "souris sur cette tortue. Si *fun* est ``None``, les liens existants sont " "supprimés." -#: library/turtle.rst:1422 +#: library/turtle.rst:1420 msgid "" "Bind *fun* to mouse-move events on this turtle. If *fun* is ``None``, " "existing bindings are removed." @@ -1656,7 +1658,7 @@ msgstr "" "Crée un lien vers *fun* pour les événements de mouvement de la souris sur " "cette tortue. Si *fun* est ``None``, les liens existants sont supprimés." -#: library/turtle.rst:1425 +#: library/turtle.rst:1423 msgid "" "Remark: Every sequence of mouse-move-events on a turtle is preceded by a " "mouse-click event on that turtle." @@ -1665,7 +1667,7 @@ msgstr "" "une tortue sont précédées par un événement de clic de la souris sur cette " "tortue." -#: library/turtle.rst:1433 +#: library/turtle.rst:1431 msgid "" "Subsequently, clicking and dragging the Turtle will move it across the " "screen thereby producing handdrawings (if pen is down)." @@ -1674,7 +1676,7 @@ msgstr "" "travers de l'écran, produisant ainsi des dessins « à la main » (si le stylo " "est posé)." -#: library/turtle.rst:1442 +#: library/turtle.rst:1440 msgid "" "Start recording the vertices of a polygon. Current turtle position is first " "vertex of polygon." @@ -1682,7 +1684,7 @@ msgstr "" "Démarre l'enregistrement des sommets d'un polygone. La position actuelle de " "la tortue est le premier sommet du polygone." -#: library/turtle.rst:1448 +#: library/turtle.rst:1446 msgid "" "Stop recording the vertices of a polygon. Current turtle position is last " "vertex of polygon. This will be connected with the first vertex." @@ -1691,11 +1693,11 @@ msgstr "" "la tortue sera le dernier sommet du polygone. Il sera connecté au premier " "sommet." -#: library/turtle.rst:1454 +#: library/turtle.rst:1452 msgid "Return the last recorded polygon." msgstr "Renvoie le dernier polygone sauvegardé." -#: library/turtle.rst:1473 +#: library/turtle.rst:1471 msgid "" "Create and return a clone of the turtle with same position, heading and " "turtle properties." @@ -1703,7 +1705,7 @@ msgstr "" "Crée et renvoie un clone de la tortue avec les mêmes position, cap et " "propriétés." -#: library/turtle.rst:1486 +#: library/turtle.rst:1484 msgid "" "Return the Turtle object itself. Only reasonable use: as a function to " "return the \"anonymous turtle\":" @@ -1711,7 +1713,7 @@ msgstr "" "Renvoie l'objet *Turtle* lui-même. Sa seule utilisation : comme fonction " "pour renvoyer la \"tortue anonyme\" :" -#: library/turtle.rst:1500 +#: library/turtle.rst:1498 msgid "" "Return the :class:`TurtleScreen` object the turtle is drawing on. " "TurtleScreen methods can then be called for that object." @@ -1719,11 +1721,11 @@ msgstr "" "Renvoie l'objet :class:`TurtleScreen` sur lequel la tortue dessine. Les " "méthodes de TurtleScreen peuvent être appelées pour cet objet." -#: library/turtle.rst:1514 +#: library/turtle.rst:1512 msgid "an integer or ``None``" msgstr "un entier ou ``None``" -#: library/turtle.rst:1516 +#: library/turtle.rst:1514 msgid "" "Set or disable undobuffer. If *size* is an integer, an empty undobuffer of " "given size is installed. *size* gives the maximum number of turtle actions " @@ -1736,15 +1738,15 @@ msgstr "" "fonction/méthode :func:`undo`. Si *size* est ``None``, la mémoire " "d'annulation est désactivée." -#: library/turtle.rst:1529 +#: library/turtle.rst:1527 msgid "Return number of entries in the undobuffer." msgstr "Renvoie le nombre d'entrées dans la mémoire d'annulation." -#: library/turtle.rst:1542 +#: library/turtle.rst:1540 msgid "Compound shapes" msgstr "Formes composées" -#: library/turtle.rst:1544 +#: library/turtle.rst:1542 msgid "" "To use compound turtle shapes, which consist of several polygons of " "different color, you must use the helper class :class:`Shape` explicitly as " @@ -1754,11 +1756,11 @@ msgstr "" "polygones de différentes couleurs, vous devez utiliser la classe utilitaire :" "class:`Shape` explicitement comme décrit ci-dessous :" -#: library/turtle.rst:1548 +#: library/turtle.rst:1546 msgid "Create an empty Shape object of type \"compound\"." msgstr "Créez un objet Shape vide de type \"compound\"." -#: library/turtle.rst:1549 +#: library/turtle.rst:1547 msgid "" "Add as many components to this object as desired, using the :meth:" "`addcomponent` method." @@ -1766,17 +1768,17 @@ msgstr "" "Ajoutez autant de composants que désirés à cet objet, en utilisant la " "méthode :meth:`addcomponent`." -#: library/turtle.rst:1552 +#: library/turtle.rst:1550 msgid "For example:" msgstr "Par exemple :" -#: library/turtle.rst:1563 +#: library/turtle.rst:1561 msgid "Now add the Shape to the Screen's shapelist and use it:" msgstr "" "Maintenant ajoutez la *Shape* à la liste des formes de *Screen* et utilisez " "la :" -#: library/turtle.rst:1574 +#: library/turtle.rst:1572 msgid "" "The :class:`Shape` class is used internally by the :func:`register_shape` " "method in different ways. The application programmer has to deal with the " @@ -1787,11 +1789,11 @@ msgstr "" "classe Shape *que* lorsqu'il utilise des formes composées comme montré ci-" "dessus !" -#: library/turtle.rst:1580 +#: library/turtle.rst:1578 msgid "Methods of TurtleScreen/Screen and corresponding functions" msgstr "Méthodes de TurtleScreen/Screen et leurs fonctions correspondantes" -#: library/turtle.rst:1582 +#: library/turtle.rst:1580 msgid "" "Most of the examples in this section refer to a TurtleScreen instance called " "``screen``." @@ -1799,7 +1801,7 @@ msgstr "" "La plupart des exemples dans cette section font référence à une instance de " "TurtleScreen appelée ``screen``." -#: library/turtle.rst:1596 +#: library/turtle.rst:1594 msgid "" "a color string or three numbers in the range 0..colormode or a 3-tuple of " "such numbers" @@ -1807,19 +1809,19 @@ msgstr "" "chaîne spécifiant une couleur ou trois nombres dans l'intervalle *0.." "colormode* ou *n*-uplet de ces trois nombres" -#: library/turtle.rst:1600 +#: library/turtle.rst:1598 msgid "Set or return background color of the TurtleScreen." msgstr "" "Définit ou renvoie la couleur de fond de l'écran de la tortue " "(*TurtleScreen* en anglais)." -#: library/turtle.rst:1615 +#: library/turtle.rst:1613 msgid "a string, name of a gif-file or ``\"nopic\"``, or ``None``" msgstr "" "une chaîne de caractères, le nom d'un fichier *gif*, ou ``\"nopic\"``, ou " "``None``" -#: library/turtle.rst:1617 +#: library/turtle.rst:1615 msgid "" "Set background image or return name of current backgroundimage. If " "*picname* is a filename, set the corresponding image as background. If " @@ -1831,17 +1833,7 @@ msgstr "" "\"nopic\"``, l'image de fond sera supprimée si présente. SI *picname* est " "``None``, le nom du fichier de l'image de fond actuelle est renvoyé. ::" -#: library/turtle.rst:1632 -msgid "" -"Delete all drawings and all turtles from the TurtleScreen. Reset the now " -"empty TurtleScreen to its initial state: white background, no background " -"image, no event bindings and tracing on." -msgstr "" -"Supprime tous les dessins et toutes les tortues du TurtleScreen. " -"Réinitialise le TurtleScreen maintenant vide à son état initial : fond " -"blanc, pas d'image de fond, pas d'événement liés, et traçage activé." - -#: library/turtle.rst:1637 +#: library/turtle.rst:1631 msgid "" "This TurtleScreen method is available as a global function only under the " "name ``clearscreen``. The global function ``clear`` is a different one " @@ -1851,11 +1843,17 @@ msgstr "" "seulement sous le nom ``clearscreen``. La fonction globale ``clear`` est une " "fonction différente dérivée de la méthode Turtle ``clear``." -#: library/turtle.rst:1645 -msgid "Reset all Turtles on the Screen to their initial state." -msgstr "Remet toutes les tortues à l'écran dans leur état initial." +#: library/turtle.rst:1638 +msgid "" +"Delete all drawings and all turtles from the TurtleScreen. Reset the now " +"empty TurtleScreen to its initial state: white background, no background " +"image, no event bindings and tracing on." +msgstr "" +"Supprime tous les dessins et toutes les tortues du TurtleScreen. " +"Réinitialise le TurtleScreen maintenant vide à son état initial : fond " +"blanc, pas d'image de fond, pas d'événement liés, et traçage activé." -#: library/turtle.rst:1648 +#: library/turtle.rst:1647 msgid "" "This TurtleScreen method is available as a global function only under the " "name ``resetscreen``. The global function ``reset`` is another one derived " @@ -1865,23 +1863,27 @@ msgstr "" "seulement sous le nom ``resetscreen``. La fonction globale ``reset`` est une " "fonction différente dérivée de la méthode Turtle ``reset``." -#: library/turtle.rst:1655 +#: library/turtle.rst:1654 +msgid "Reset all Turtles on the Screen to their initial state." +msgstr "Remet toutes les tortues à l'écran dans leur état initial." + +#: library/turtle.rst:1659 msgid "positive integer, new width of canvas in pixels" msgstr "" "nombre entier positif, nouvelle largeur du canevas (zone sur laquelle se " "déplace la tortue), en pixels" -#: library/turtle.rst:1656 +#: library/turtle.rst:1660 msgid "positive integer, new height of canvas in pixels" msgstr "nombre entier positif, nouvelle hauteur du canevas, en pixels" -#: library/turtle.rst:1657 +#: library/turtle.rst:1661 msgid "colorstring or color-tuple, new background color" msgstr "" "chaîne de caractères indiquant la couleur ou triplet de couleurs, nouvelle " "couleur de fond" -#: library/turtle.rst:1659 +#: library/turtle.rst:1663 msgid "" "If no arguments are given, return current (canvaswidth, canvasheight). Else " "resize the canvas the turtles are drawing on. Do not alter the drawing " @@ -1896,27 +1898,27 @@ msgstr "" "on peut rendre visible les parties d'un dessin qui étaient en dehors du " "canevas précédemment." -#: library/turtle.rst:1671 +#: library/turtle.rst:1675 msgid "e.g. to search for an erroneously escaped turtle ;-)" msgstr "par exemple, chercher une tortue échappée de manière erronée" -#: library/turtle.rst:1676 +#: library/turtle.rst:1680 msgid "a number, x-coordinate of lower left corner of canvas" msgstr "un nombre, coordonnée x du coin inférieur gauche du canevas" -#: library/turtle.rst:1677 +#: library/turtle.rst:1681 msgid "a number, y-coordinate of lower left corner of canvas" msgstr "un nombre, la coordonnée y du coin inférieur gauche du canevas" -#: library/turtle.rst:1678 +#: library/turtle.rst:1682 msgid "a number, x-coordinate of upper right corner of canvas" msgstr "un nombre, la coordonnée x du coin supérieur droit du canevas" -#: library/turtle.rst:1679 +#: library/turtle.rst:1683 msgid "a number, y-coordinate of upper right corner of canvas" msgstr "un nombre, la coordonnée y du coin supérieur droit du canevas" -#: library/turtle.rst:1681 +#: library/turtle.rst:1685 msgid "" "Set up user-defined coordinate system and switch to mode \"world\" if " "necessary. This performs a ``screen.reset()``. If mode \"world\" is " @@ -1927,7 +1929,7 @@ msgstr "" "le mode \"world\" est déjà actif, tous les dessins sont re-déssinés par " "rapport aux nouveaux coordonnées." -#: library/turtle.rst:1685 +#: library/turtle.rst:1689 msgid "" "**ATTENTION**: in user-defined coordinate systems angles may appear " "distorted." @@ -1935,11 +1937,11 @@ msgstr "" "**ATTENTION** : dans les systèmes de coordonnées définis par l'utilisateur, " "les angles peuvent apparaître déformés." -#: library/turtle.rst:1713 +#: library/turtle.rst:1717 msgid "positive integer" msgstr "entier positif" -#: library/turtle.rst:1715 +#: library/turtle.rst:1719 msgid "" "Set or return the drawing *delay* in milliseconds. (This is approximately " "the time interval between two consecutive canvas updates.) The longer the " @@ -1949,15 +1951,15 @@ msgstr "" "approximativement le temps passé entre deux mises à jour du canevas.) Plus " "le délai est long, plus l'animation sera lente." -#: library/turtle.rst:1719 +#: library/turtle.rst:1723 msgid "Optional argument:" msgstr "Argument facultatif :" -#: library/turtle.rst:1734 +#: library/turtle.rst:1738 msgid "nonnegative integer" msgstr "entier non-négatif" -#: library/turtle.rst:1736 +#: library/turtle.rst:1740 msgid "" "Turn turtle animation on/off and set delay for update drawings. If *n* is " "given, only each n-th regular screen update is really performed. (Can be " @@ -1972,17 +1974,17 @@ msgstr "" "renvoie la valeur actuelle de *n*. Le deuxième argument défini la valeur du " "délai (voir :func:`delay`)." -#: library/turtle.rst:1756 +#: library/turtle.rst:1760 msgid "Perform a TurtleScreen update. To be used when tracer is turned off." msgstr "" "Effectue une mise à jour de *TurtleScreen*. À utiliser lorsque le traceur " "est désactivé." -#: library/turtle.rst:1758 +#: library/turtle.rst:1762 msgid "See also the RawTurtle/Turtle method :func:`speed`." msgstr "Voir aussi la méthode :func:`speed` de *RawTurtle*/*Turtle*." -#: library/turtle.rst:1766 +#: library/turtle.rst:1770 msgid "" "Set focus on TurtleScreen (in order to collect key-events). Dummy arguments " "are provided in order to be able to pass :func:`listen` to the onclick " @@ -1992,17 +1994,17 @@ msgstr "" "arguments factices sont fournis afin de pouvoir passer :func:`listen` à la " "méthode *onclick*." -#: library/turtle.rst:1793 +#: library/turtle.rst:1797 msgid "a function with no arguments or ``None``" msgstr "une fonction sans arguments ou ``None``" -#: library/turtle.rst:1794 +#: library/turtle.rst:1798 msgid "a string: key (e.g. \"a\") or key-symbol (e.g. \"space\")" msgstr "" "une chaîne : clé (par exemple \"*a*\") ou clé symbole (Par exemple \"*space*" "\")" -#: library/turtle.rst:1776 +#: library/turtle.rst:1780 msgid "" "Bind *fun* to key-release event of key. If *fun* is ``None``, event " "bindings are removed. Remark: in order to be able to register key-events, " @@ -2013,7 +2015,7 @@ msgstr "" "enregistrer les événements lié au touches, TurtleScreen doit avoir le " "*focus* (fenêtre en premier plan). (Voir la méthode :func:`listen`.)" -#: library/turtle.rst:1796 +#: library/turtle.rst:1800 msgid "" "Bind *fun* to key-press event of key if key is given, or to any key-press-" "event if no key is given. Remark: in order to be able to register key-" @@ -2024,7 +2026,7 @@ msgstr "" "Pour pouvoir enregistrer des événements liés au touches, TurtleScreen doit " "être en premier plan. (voir la méthode :func:`listen`.)" -#: library/turtle.rst:1820 +#: library/turtle.rst:1824 msgid "" "Bind *fun* to mouse-click events on this screen. If *fun* is ``None``, " "existing bindings are removed." @@ -2032,7 +2034,7 @@ msgstr "" "Crée un lien vers *fun* pour les événements de clique de la souris sur cet " "écran. Si *fun* est ``None``, les liens existants sont supprimés." -#: library/turtle.rst:1823 +#: library/turtle.rst:1827 msgid "" "Example for a TurtleScreen instance named ``screen`` and a Turtle instance " "named ``turtle``:" @@ -2040,7 +2042,7 @@ msgstr "" "Exemple pour une instance de TurtleScreen nommée ``screen`` et une instance " "Turtle nommée ``turtle`` :" -#: library/turtle.rst:1834 +#: library/turtle.rst:1838 msgid "" "This TurtleScreen method is available as a global function only under the " "name ``onscreenclick``. The global function ``onclick`` is another one " @@ -2050,19 +2052,19 @@ msgstr "" "seulement sous le nom de ``onscreenclick``. La fonction globale ``onclick`` " "est une autre fonction dérivée de la méthode Turtle ``onclick``." -#: library/turtle.rst:1841 +#: library/turtle.rst:1845 msgid "a function with no arguments" msgstr "une fonction sans arguments" -#: library/turtle.rst:1842 +#: library/turtle.rst:1846 msgid "a number >= 0" msgstr "un nombre supérieur ou égal à 0" -#: library/turtle.rst:1844 +#: library/turtle.rst:1848 msgid "Install a timer that calls *fun* after *t* milliseconds." msgstr "Installe un minuteur qui appelle *fun* après *t* millisecondes." -#: library/turtle.rst:1862 +#: library/turtle.rst:1866 msgid "" "Starts event loop - calling Tkinter's mainloop function. Must be the last " "statement in a turtle graphics program. Must *not* be used if a script is " @@ -2075,11 +2077,11 @@ msgstr "" "(pas de sous processus) - pour une utilisation interactive des graphiques " "*turtle* ::" -#: library/turtle.rst:1876 library/turtle.rst:1889 +#: library/turtle.rst:1880 library/turtle.rst:1893 msgid "string" msgstr "chaîne de caractères" -#: library/turtle.rst:1878 +#: library/turtle.rst:1882 msgid "" "Pop up a dialog window for input of a string. Parameter title is the title " "of the dialog window, prompt is a text mostly describing what information to " @@ -2091,7 +2093,7 @@ msgstr "" "expliquant quelle information écrire. Renvoie l'entrée utilisateur sous " "forme de chaîne. Si le dialogue est annulé, renvoie ``None``. ::" -#: library/turtle.rst:1894 +#: library/turtle.rst:1898 msgid "" "Pop up a dialog window for input of a number. title is the title of the " "dialog window, prompt is a text mostly describing what numerical information " @@ -2110,12 +2112,12 @@ msgstr "" "l'entrée utilisateur sous forme de nombre. Si le dialogue est annulé, " "renvoie ``None``. ::" -#: library/turtle.rst:1911 +#: library/turtle.rst:1915 msgid "one of the strings \"standard\", \"logo\" or \"world\"" msgstr "" "l'une des chaînes de caractères : `\"standard\"`, `\"logo\"` ou `\"world\"`" -#: library/turtle.rst:1913 +#: library/turtle.rst:1917 msgid "" "Set turtle mode (\"standard\", \"logo\" or \"world\") and perform reset. If " "mode is not given, current mode is returned." @@ -2123,7 +2125,7 @@ msgstr "" "Règle le mode de la tortue (\"*standard*\", \"*logo*\" ou \"*world*\") et la " "réinitialise. Si le mode n'est pas donné, le mode actuel est renvoyé." -#: library/turtle.rst:1916 +#: library/turtle.rst:1920 msgid "" "Mode \"standard\" is compatible with old :mod:`turtle`. Mode \"logo\" is " "compatible with most Logo turtle graphics. Mode \"world\" uses user-defined " @@ -2136,47 +2138,47 @@ msgstr "" "définis par l'utilisateur. **Attention** : Dans ce mode, les angles " "apparaissent déformés si le ratio unitaire de ``x/y`` n'est pas 1." -#: library/turtle.rst:1922 +#: library/turtle.rst:1926 msgid "Mode" msgstr "Mode" -#: library/turtle.rst:1922 +#: library/turtle.rst:1926 msgid "Initial turtle heading" msgstr "Orientation initiale de la tortue" -#: library/turtle.rst:1922 +#: library/turtle.rst:1926 msgid "positive angles" msgstr "angles positifs" -#: library/turtle.rst:1924 +#: library/turtle.rst:1928 msgid "\"standard\"" msgstr "\"standard\"" -#: library/turtle.rst:1924 +#: library/turtle.rst:1928 msgid "to the right (east)" msgstr "vers la droite (vers l'Est)" -#: library/turtle.rst:1924 +#: library/turtle.rst:1928 msgid "counterclockwise" msgstr "dans le sens inverse des aiguilles d'une montre" -#: library/turtle.rst:1925 +#: library/turtle.rst:1929 msgid "\"logo\"" msgstr "\"logo\"" -#: library/turtle.rst:1925 +#: library/turtle.rst:1929 msgid "upward (north)" msgstr "vers le haut (vers le Nord)" -#: library/turtle.rst:1925 +#: library/turtle.rst:1929 msgid "clockwise" msgstr "dans le sens des aiguilles d'une montre" -#: library/turtle.rst:1938 +#: library/turtle.rst:1942 msgid "one of the values 1.0 or 255" msgstr "l'une des valeurs suivantes : 1.0 ou 255" -#: library/turtle.rst:1940 +#: library/turtle.rst:1944 msgid "" "Return the colormode or set it to 1.0 or 255. Subsequently *r*, *g*, *b* " "values of color triples have to be in the range 0..\\ *cmode*." @@ -2184,7 +2186,7 @@ msgstr "" "Renvoie le mode de couleur (*colormode*) ou le défini à 1.0 ou 255. Les " "valeurs *r*, *g* et *b* doivent aussi être dans la gamme `0..*cmode*`." -#: library/turtle.rst:1961 +#: library/turtle.rst:1965 msgid "" "Return the Canvas of this TurtleScreen. Useful for insiders who know what " "to do with a Tkinter Canvas." @@ -2192,17 +2194,17 @@ msgstr "" "Renvoie le canevas de ce TurtleScreen. Utile pour les initiés qui savent " "quoi faire avec un canevas Tkinter." -#: library/turtle.rst:1974 +#: library/turtle.rst:1978 msgid "Return a list of names of all currently available turtle shapes." msgstr "" "Renvoie une liste de noms de toutes les formes actuellement disponibles pour " "les tortues." -#: library/turtle.rst:1986 +#: library/turtle.rst:1990 msgid "There are three different ways to call this function:" msgstr "Il existe trois façons différentes d’appeler cette fonction :" -#: library/turtle.rst:1988 +#: library/turtle.rst:1992 msgid "" "*name* is the name of a gif-file and *shape* is ``None``: Install the " "corresponding image shape. ::" @@ -2210,7 +2212,7 @@ msgstr "" "*name* est le nom d'un fichier *gif* et *shape* est ``None`` : Installe la " "forme d'image correspondante. ::" -#: library/turtle.rst:1994 +#: library/turtle.rst:1998 msgid "" "Image shapes *do not* rotate when turning the turtle, so they do not display " "the heading of the turtle!" @@ -2218,7 +2220,7 @@ msgstr "" "Les formes d'images *ne tournent pas* lorsque la tortue tourne, donc elles " "n'indiquent pas le cap de la tortue !" -#: library/turtle.rst:1997 +#: library/turtle.rst:2001 msgid "" "*name* is an arbitrary string and *shape* is a tuple of pairs of " "coordinates: Install the corresponding polygon shape." @@ -2226,7 +2228,7 @@ msgstr "" "*name* est une chaîne de caractères arbitraire et *shape* est un *n*-uplet " "de paires de coordonnées : Installe le polygone correspondant." -#: library/turtle.rst:2005 +#: library/turtle.rst:2009 msgid "" "*name* is an arbitrary string and shape is a (compound) :class:`Shape` " "object: Install the corresponding compound shape." @@ -2234,7 +2236,7 @@ msgstr "" "*name* est une chaîne de caractères arbitraire et *shape* est un objet :" "class:`Shape` (composé) : Installe la forme composée correspondante." -#: library/turtle.rst:2008 +#: library/turtle.rst:2012 msgid "" "Add a turtle shape to TurtleScreen's shapelist. Only thusly registered " "shapes can be used by issuing the command ``shape(shapename)``." @@ -2243,31 +2245,31 @@ msgstr "" "les formes enregistrées de cette façon peuvent être utilisée avec la " "commande ``shape(shapename)``." -#: library/turtle.rst:2014 +#: library/turtle.rst:2018 msgid "Return the list of turtles on the screen." msgstr "Renvoie la liste des tortues présentes sur l'écran." -#: library/turtle.rst:2025 +#: library/turtle.rst:2029 msgid "Return the height of the turtle window. ::" msgstr "Renvoie la hauteur de la fenêtre de la tortue. ::" -#: library/turtle.rst:2033 +#: library/turtle.rst:2037 msgid "Return the width of the turtle window. ::" msgstr "Renvoie la largeur de la fenêtre de la tortue. ::" -#: library/turtle.rst:2042 +#: library/turtle.rst:2046 msgid "Methods specific to Screen, not inherited from TurtleScreen" msgstr "Méthodes spécifiques à Screen, non héritées de TurtleScreen" -#: library/turtle.rst:2046 +#: library/turtle.rst:2050 msgid "Shut the turtlegraphics window." msgstr "Éteins la fenêtre *turtlegraphics*." -#: library/turtle.rst:2051 +#: library/turtle.rst:2055 msgid "Bind ``bye()`` method to mouse clicks on the Screen." msgstr "Lie la méthode ``bye()`` à un clique de souris sur l'écran (*Screen*)." -#: library/turtle.rst:2054 +#: library/turtle.rst:2058 msgid "" "If the value \"using_IDLE\" in the configuration dictionary is ``False`` " "(default value), also enter mainloop. Remark: If IDLE with the ``-n`` " @@ -2282,7 +2284,7 @@ msgstr "" "ce cas, la boucle principale d'IDLE est active aussi pour le script du " "client." -#: library/turtle.rst:2063 +#: library/turtle.rst:2067 msgid "" "Set the size and position of the main window. Default values of arguments " "are stored in the configuration dictionary and can be changed via a :file:" @@ -2292,7 +2294,7 @@ msgstr "" "défaut des arguments sont stockées dans le dictionnaire de configuration et " "peuvent être modifiées via un fichier :file:`turtle.cfg`." -#: library/turtle.rst:2067 +#: library/turtle.rst:2071 msgid "" "if an integer, a size in pixels, if a float, a fraction of the screen; " "default is 50% of screen" @@ -2301,7 +2303,7 @@ msgstr "" "nombre flottant, une fraction de l'écran ; la valeur par défaut est de 50 % " "de l'écran" -#: library/turtle.rst:2069 +#: library/turtle.rst:2073 msgid "" "if an integer, the height in pixels, if a float, a fraction of the screen; " "default is 75% of screen" @@ -2310,7 +2312,7 @@ msgstr "" "nombre flottant, une fraction de l'écran ; la valeur par défaut est 75 % de " "l'écran" -#: library/turtle.rst:2071 +#: library/turtle.rst:2075 msgid "" "if positive, starting position in pixels from the left edge of the screen, " "if negative from the right edge, if ``None``, center window horizontally" @@ -2320,7 +2322,7 @@ msgstr "" "en pixels à partir du bord droit, si c'est ``None``, centre la fenêtre " "horizontalement" -#: library/turtle.rst:2074 +#: library/turtle.rst:2078 msgid "" "if positive, starting position in pixels from the top edge of the screen, if " "negative from the bottom edge, if ``None``, center window vertically" @@ -2329,21 +2331,21 @@ msgstr "" "négatif, depuis de bas de l'écran. Si ``None``, Le centre de la fenêtre " "verticalement" -#: library/turtle.rst:2089 +#: library/turtle.rst:2093 msgid "a string that is shown in the titlebar of the turtle graphics window" msgstr "" "chaîne de caractères affichée dans la barre de titre de la fenêtre graphique " "de la tortue" -#: library/turtle.rst:2092 +#: library/turtle.rst:2096 msgid "Set title of turtle window to *titlestring*." msgstr "Défini le titre de la fenêtre de la tortue à *titlestring*." -#: library/turtle.rst:2101 +#: library/turtle.rst:2105 msgid "Public classes" msgstr "Classes publiques" -#: library/turtle.rst:2107 +#: library/turtle.rst:2111 msgid "" "a :class:`tkinter.Canvas`, a :class:`ScrolledCanvas` or a :class:" "`TurtleScreen`" @@ -2351,7 +2353,7 @@ msgstr "" "un :class:`tkinter.Canvas`, un :class:`ScrolledCanvas` ou un :class:" "`TurtleScreen`" -#: library/turtle.rst:2110 +#: library/turtle.rst:2114 msgid "" "Create a turtle. The turtle has all methods described above as \"methods of " "Turtle/RawTurtle\"." @@ -2359,7 +2361,7 @@ msgstr "" "Crée une tortue. Cette tortue à toutes les méthodes décrites ci-dessus comme " "\"Méthode de Turtle/RawTurtle\"." -#: library/turtle.rst:2116 +#: library/turtle.rst:2120 msgid "" "Subclass of RawTurtle, has the same interface but draws on a default :class:" "`Screen` object created automatically when needed for the first time." @@ -2368,11 +2370,11 @@ msgstr "" "class:`screen` par défaut créé automatiquement lorsque nécessaire pour la " "première fois." -#: library/turtle.rst:2122 +#: library/turtle.rst:2126 msgid "a :class:`tkinter.Canvas`" msgstr "un :class:`tkinter.Canvas`" -#: library/turtle.rst:2124 +#: library/turtle.rst:2128 msgid "" "Provides screen oriented methods like :func:`setbg` etc. that are described " "above." @@ -2380,14 +2382,14 @@ msgstr "" "Fournis les méthodes liées à l'écran comme :func:`setbg`, etc. qui sont " "décrites ci-dessus." -#: library/turtle.rst:2129 +#: library/turtle.rst:2133 msgid "" "Subclass of TurtleScreen, with :ref:`four methods added `." msgstr "" "Sous-classess de TurtleScreen, avec :ref:`quatre nouvelles méthodes " "`." -#: library/turtle.rst:2134 +#: library/turtle.rst:2138 msgid "" "some Tkinter widget to contain the ScrolledCanvas, i.e. a Tkinter-canvas " "with scrollbars added" @@ -2395,7 +2397,7 @@ msgstr "" "certain modules Tkinter pour contenir le ScrolledCanvas, c'est à dire, un " "canevas Tkinter avec des barres de défilement ajoutées" -#: library/turtle.rst:2137 +#: library/turtle.rst:2141 msgid "" "Used by class Screen, which thus automatically provides a ScrolledCanvas as " "playground for the turtles." @@ -2403,12 +2405,12 @@ msgstr "" "Utilisé par la classe Screen, qui fournit donc automatiquement un " "ScrolledCanvas comme terrain de jeu pour les tortues." -#: library/turtle.rst:2142 +#: library/turtle.rst:2146 msgid "one of the strings \"polygon\", \"image\", \"compound\"" msgstr "" "l'une des chaînes suivantes : `\"polygon\"`, `\"image\"` ou `\"compound\"`" -#: library/turtle.rst:2144 +#: library/turtle.rst:2148 msgid "" "Data structure modeling shapes. The pair ``(type_, data)`` must follow this " "specification:" @@ -2416,37 +2418,37 @@ msgstr "" "Formes de modélisation de la structure des données. La paire ``(type_, " "data)`` doit suivre cette spécification :" -#: library/turtle.rst:2149 +#: library/turtle.rst:2153 msgid "*type_*" msgstr "*type_*" -#: library/turtle.rst:2149 +#: library/turtle.rst:2153 msgid "*data*" msgstr "*données*" -#: library/turtle.rst:2151 +#: library/turtle.rst:2155 msgid "\"polygon\"" msgstr "\"polygon\"" -#: library/turtle.rst:2151 +#: library/turtle.rst:2155 msgid "a polygon-tuple, i.e. a tuple of pairs of coordinates" msgstr "" "un polygone *n*-uplet, c'est-à-dire un *n*-uplet constitué de paires (chaque " "paire définissant des coordonnées)" -#: library/turtle.rst:2152 +#: library/turtle.rst:2156 msgid "\"image\"" msgstr "\"image\"" -#: library/turtle.rst:2152 +#: library/turtle.rst:2156 msgid "an image (in this form only used internally!)" msgstr "une image (utilisée uniquement en interne sous ce format !)" -#: library/turtle.rst:2153 +#: library/turtle.rst:2157 msgid "\"compound\"" msgstr "\"compound\"" -#: library/turtle.rst:2153 +#: library/turtle.rst:2157 msgid "" "``None`` (a compound shape has to be constructed using the :meth:" "`addcomponent` method)" @@ -2454,27 +2456,27 @@ msgstr "" "``None`` (une forme composée doit être construite en utilisant la méthode :" "meth:`addcomponent`)" -#: library/turtle.rst:2159 +#: library/turtle.rst:2163 msgid "a polygon, i.e. a tuple of pairs of numbers" msgstr "un polygone, c.-à-d. un *n*-uplet de paires de nombres" -#: library/turtle.rst:2160 +#: library/turtle.rst:2164 msgid "a color the *poly* will be filled with" msgstr "une couleur de remplissage pour *poly*" -#: library/turtle.rst:2161 +#: library/turtle.rst:2165 msgid "a color for the poly's outline (if given)" msgstr "une couleur pour le contour du polygone (si elle est donnée)" -#: library/turtle.rst:2163 +#: library/turtle.rst:2167 msgid "Example:" msgstr "Exemple :" -#: library/turtle.rst:2173 +#: library/turtle.rst:2177 msgid "See :ref:`compoundshapes`." msgstr "Voir :ref:`compoundshapes`." -#: library/turtle.rst:2178 +#: library/turtle.rst:2182 msgid "" "A two-dimensional vector class, used as a helper class for implementing " "turtle graphics. May be useful for turtle graphics programs too. Derived " @@ -2485,43 +2487,43 @@ msgstr "" "programmes graphiques faits avec *turtle*. Dérivé des *n*-uplets, donc un " "vecteur est un *n*-uplet !" -#: library/turtle.rst:2182 +#: library/turtle.rst:2186 msgid "Provides (for *a*, *b* vectors, *k* number):" msgstr "Permet (pour les vecteurs *a*, *b* et le nombre *k*) :" -#: library/turtle.rst:2184 +#: library/turtle.rst:2188 msgid "``a + b`` vector addition" msgstr "``a + b`` addition de vecteurs" -#: library/turtle.rst:2185 +#: library/turtle.rst:2189 msgid "``a - b`` vector subtraction" msgstr "``a - b`` soustraction de deux vecteurs" -#: library/turtle.rst:2186 +#: library/turtle.rst:2190 msgid "``a * b`` inner product" msgstr "``a * b`` produit scalaire" -#: library/turtle.rst:2187 +#: library/turtle.rst:2191 msgid "``k * a`` and ``a * k`` multiplication with scalar" msgstr "``k * a`` et ``a * k`` multiplication avec un scalaire" -#: library/turtle.rst:2188 +#: library/turtle.rst:2192 msgid "``abs(a)`` absolute value of a" msgstr "``abs(a)`` valeur absolue de a" -#: library/turtle.rst:2189 +#: library/turtle.rst:2193 msgid "``a.rotate(angle)`` rotation" msgstr "``a.rotate(angle)`` rotation" -#: library/turtle.rst:2193 +#: library/turtle.rst:2197 msgid "Help and configuration" msgstr "Aide et configuration" -#: library/turtle.rst:2196 +#: library/turtle.rst:2200 msgid "How to use help" msgstr "Utilisation de l'aide" -#: library/turtle.rst:2198 +#: library/turtle.rst:2202 msgid "" "The public methods of the Screen and Turtle classes are documented " "extensively via docstrings. So these can be used as online-help via the " @@ -2531,7 +2533,7 @@ msgstr "" "documentées dans les *docstrings*. Elles peuvent donc être utilisées comme " "aide en ligne via les fonctions d'aide de Python :" -#: library/turtle.rst:2202 +#: library/turtle.rst:2206 msgid "" "When using IDLE, tooltips show the signatures and first lines of the " "docstrings of typed in function-/method calls." @@ -2539,13 +2541,13 @@ msgstr "" "Lors de l'utilisation d'IDLE, des info-bulles apparaissent avec la signature " "et les premières lignes de *docstring* de la fonction/méthode appelée." -#: library/turtle.rst:2205 +#: library/turtle.rst:2209 msgid "Calling :func:`help` on methods or functions displays the docstrings::" msgstr "" "L'appel de :func:`help` sur les méthodes ou fonctions affichera les " "*docstrings* ::" -#: library/turtle.rst:2236 +#: library/turtle.rst:2240 msgid "" "The docstrings of the functions which are derived from methods have a " "modified form::" @@ -2553,7 +2555,7 @@ msgstr "" "Les *docstrings* des fonctions qui sont dérivées des méthodes ont une forme " "modifiée ::" -#: library/turtle.rst:2270 +#: library/turtle.rst:2274 msgid "" "These modified docstrings are created automatically together with the " "function definitions that are derived from the methods at import time." @@ -2562,11 +2564,11 @@ msgstr "" "définitions de fonctions qui sont dérivées des méthodes au moment de " "l'importation." -#: library/turtle.rst:2275 +#: library/turtle.rst:2279 msgid "Translation of docstrings into different languages" msgstr "Traduction de chaînes de documents en différentes langues" -#: library/turtle.rst:2277 +#: library/turtle.rst:2281 msgid "" "There is a utility to create a dictionary the keys of which are the method " "names and the values of which are the docstrings of the public methods of " @@ -2576,11 +2578,11 @@ msgstr "" "méthodes et les valeurs sont les *docstrings* de méthodes publiques des " "classes Screen et Turtle." -#: library/turtle.rst:2283 +#: library/turtle.rst:2287 msgid "a string, used as filename" msgstr "une chaîne de caractères, utilisée en tant que nom de fichier" -#: library/turtle.rst:2285 +#: library/turtle.rst:2289 msgid "" "Create and write docstring-dictionary to a Python script with the given " "filename. This function has to be called explicitly (it is not used by the " @@ -2594,7 +2596,7 @@ msgstr "" "*doctrings* sera écrit dans le script Python :file:`{filename}.py`. Il sert " "de modèle pour la traduction des *docstrings* dans différentes langues." -#: library/turtle.rst:2291 +#: library/turtle.rst:2295 msgid "" "If you (or your students) want to use :mod:`turtle` with online help in your " "native language, you have to translate the docstrings and save the resulting " @@ -2605,7 +2607,7 @@ msgstr "" "sauvegarder les fichiers résultants en, par exemple, :file:" "`turtle_docstringdict_german.py`." -#: library/turtle.rst:2295 +#: library/turtle.rst:2299 msgid "" "If you have an appropriate entry in your :file:`turtle.cfg` file this " "dictionary will be read in at import time and will replace the original " @@ -2615,7 +2617,7 @@ msgstr "" "dictionnaire est lu au moment de l'importation et remplace la *docstrings* " "originale en anglais par cette entrée." -#: library/turtle.rst:2298 +#: library/turtle.rst:2302 msgid "" "At the time of this writing there are docstring dictionaries in German and " "in Italian. (Requests please to glingl@aon.at.)" @@ -2624,11 +2626,11 @@ msgstr "" "des *docstrings* en Allemand et Italien. (Merci de faire vos demandes à " "glingl@aon.at.)" -#: library/turtle.rst:2304 +#: library/turtle.rst:2308 msgid "How to configure Screen and Turtles" msgstr "Comment configurer *Screen* et *Turtle*" -#: library/turtle.rst:2306 +#: library/turtle.rst:2310 msgid "" "The built-in default configuration mimics the appearance and behaviour of " "the old turtle module in order to retain best possible compatibility with it." @@ -2637,7 +2639,7 @@ msgstr "" "module *turtle* pour pouvoir maintenir la meilleure compatibilité avec celui-" "ci." -#: library/turtle.rst:2309 +#: library/turtle.rst:2313 msgid "" "If you want to use a different configuration which better reflects the " "features of this module or which better fits to your needs, e.g. for use in " @@ -2651,16 +2653,16 @@ msgstr "" "``turtle.cfg`` qui sera lu au moment de l'importation et qui modifiera la " "configuration en utilisant les paramètres du fichier." -#: library/turtle.rst:2314 +#: library/turtle.rst:2318 msgid "" "The built in configuration would correspond to the following turtle.cfg::" msgstr "La configuration native correspondrait au *turtle.cfg* suivant ::" -#: library/turtle.rst:2337 +#: library/turtle.rst:2341 msgid "Short explanation of selected entries:" msgstr "Brève explication des entrées sélectionnées :" -#: library/turtle.rst:2339 +#: library/turtle.rst:2343 msgid "" "The first four lines correspond to the arguments of the :meth:`Screen.setup` " "method." @@ -2668,7 +2670,7 @@ msgstr "" "Les quatre premières lignes correspondent aux arguments de la méthode :meth:" "`Screen.setup`." -#: library/turtle.rst:2341 +#: library/turtle.rst:2345 msgid "" "Line 5 and 6 correspond to the arguments of the method :meth:`Screen." "screensize`." @@ -2676,7 +2678,7 @@ msgstr "" "Les lignes 5 et 6 correspondent aux arguments de la méthode :meth:`Screen." "screensize`." -#: library/turtle.rst:2343 +#: library/turtle.rst:2347 msgid "" "*shape* can be any of the built-in shapes, e.g: arrow, turtle, etc. For " "more info try ``help(shape)``." @@ -2684,7 +2686,7 @@ msgstr "" "*shape* peut être n'importe quelle forme native, par exemple *arrow*, " "*turtle* etc. Pour plus d'informations, essayez ``help(shape)``." -#: library/turtle.rst:2345 +#: library/turtle.rst:2349 msgid "" "If you want to use no fillcolor (i.e. make the turtle transparent), you have " "to write ``fillcolor = \"\"`` (but all nonempty strings must not have quotes " @@ -2695,7 +2697,7 @@ msgstr "" "toutes les chaînes non vides ne doivent pas avoir de guillemets dans le " "fichier *cfg*)." -#: library/turtle.rst:2348 +#: library/turtle.rst:2352 msgid "" "If you want to reflect the turtle its state, you have to use ``resizemode = " "auto``." @@ -2703,7 +2705,7 @@ msgstr "" "Si vous voulez refléter l'état de la tortue, vous devez utiliser " "``resizemode = auto``." -#: library/turtle.rst:2350 +#: library/turtle.rst:2354 msgid "" "If you set e.g. ``language = italian`` the docstringdict :file:" "`turtle_docstringdict_italian.py` will be loaded at import time (if present " @@ -2714,7 +2716,7 @@ msgstr "" "de l'importation (si présent dans les chemins d'importations, par exemple " "dans le même dossier que :mod:`turtle`)." -#: library/turtle.rst:2353 +#: library/turtle.rst:2357 msgid "" "The entries *exampleturtle* and *examplescreen* define the names of these " "objects as they occur in the docstrings. The transformation of method-" @@ -2726,7 +2728,7 @@ msgstr "" "méthodes-*docstrings* vers fonction-*docstrings* supprimera ces noms des " "*docstrings*." -#: library/turtle.rst:2357 +#: library/turtle.rst:2361 msgid "" "*using_IDLE*: Set this to ``True`` if you regularly work with IDLE and its -" "n switch (\"no subprocess\"). This will prevent :func:`exitonclick` to " @@ -2736,7 +2738,7 @@ msgstr "" "avec IDLE et son option ``-n`` (pas de sous processus). Cela évitera " "l'entrée de :func:`exitonclick` dans la boucle principale." -#: library/turtle.rst:2361 +#: library/turtle.rst:2365 msgid "" "There can be a :file:`turtle.cfg` file in the directory where :mod:`turtle` " "is stored and an additional one in the current working directory. The " @@ -2746,7 +2748,7 @@ msgstr "" "`turtle` et un autre dans le dossier de travail courant. Ce dernier prendra " "le dessus." -#: library/turtle.rst:2365 +#: library/turtle.rst:2369 msgid "" "The :file:`Lib/turtledemo` directory contains a :file:`turtle.cfg` file. " "You can study it as an example and see its effects when running the demos " @@ -2757,11 +2759,11 @@ msgstr "" "les démos (il est préférable de ne pas le faire depuis la visionneuse de " "démos)." -#: library/turtle.rst:2371 +#: library/turtle.rst:2375 msgid ":mod:`turtledemo` --- Demo scripts" msgstr ":mod:`turtledemo` — Scripts de démonstration" -#: library/turtle.rst:2376 +#: library/turtle.rst:2380 msgid "" "The :mod:`turtledemo` package includes a set of demo scripts. These scripts " "can be run and viewed using the supplied demo viewer as follows::" @@ -2770,18 +2772,18 @@ msgstr "" "Ces scripts peuvent être lancés et observés en utilisant la visionneuse de " "démos comme suit ::" -#: library/turtle.rst:2381 +#: library/turtle.rst:2385 msgid "" "Alternatively, you can run the demo scripts individually. For example, ::" msgstr "" "Alternativement, vous pouvez lancer les scripts de démo individuellement. " "Par exemple ::" -#: library/turtle.rst:2385 +#: library/turtle.rst:2389 msgid "The :mod:`turtledemo` package directory contains:" msgstr "Le paquet :mod:`turtledemo` contient :" -#: library/turtle.rst:2387 +#: library/turtle.rst:2391 msgid "" "A demo viewer :file:`__main__.py` which can be used to view the sourcecode " "of the scripts and run them at the same time." @@ -2789,7 +2791,7 @@ msgstr "" "Une visionneuse :file:`__main__.py` qui peut être utilisée pour lire le code " "source de ces scripts et pour les faire tourner en même temps." -#: library/turtle.rst:2389 +#: library/turtle.rst:2393 msgid "" "Multiple scripts demonstrating different features of the :mod:`turtle` " "module. Examples can be accessed via the Examples menu. They can also be " @@ -2799,7 +2801,7 @@ msgstr "" "`turtle`. Les exemples peuvent être consultés via le menu *Examples*. Ils " "peuvent aussi être lancés de manière autonome." -#: library/turtle.rst:2392 +#: library/turtle.rst:2396 msgid "" "A :file:`turtle.cfg` file which serves as an example of how to write and use " "such files." @@ -2807,39 +2809,39 @@ msgstr "" "Un fichier exemple :file:`turtle.cfg` montrant comment rédiger de tels " "fichiers." -#: library/turtle.rst:2395 +#: library/turtle.rst:2399 msgid "The demo scripts are:" msgstr "Les scripts de démonstration sont :" -#: library/turtle.rst:2400 +#: library/turtle.rst:2404 msgid "Name" msgstr "Nom" -#: library/turtle.rst:2400 +#: library/turtle.rst:2404 msgid "Description" msgstr "Description" -#: library/turtle.rst:2400 +#: library/turtle.rst:2404 msgid "Features" msgstr "Caractéristiques" -#: library/turtle.rst:2402 +#: library/turtle.rst:2406 msgid "bytedesign" msgstr "*bytedesign*" -#: library/turtle.rst:2402 +#: library/turtle.rst:2406 msgid "complex classical turtle graphics pattern" msgstr "motif complexe de la tortue graphique classique" -#: library/turtle.rst:2402 +#: library/turtle.rst:2406 msgid ":func:`tracer`, delay, :func:`update`" msgstr ":func:`tracer`, temps mort, :func:`update`" -#: library/turtle.rst:2405 +#: library/turtle.rst:2409 msgid "chaos" msgstr "chaos" -#: library/turtle.rst:2405 +#: library/turtle.rst:2409 msgid "" "graphs Verhulst dynamics, shows that computer's computations can generate " "results sometimes against the common sense expectations" @@ -2848,211 +2850,211 @@ msgstr "" "l'ordinateur peuvent générer des résultats qui vont parfois à l'encontre du " "bon sens" -#: library/turtle.rst:2405 +#: library/turtle.rst:2409 msgid "world coordinates" msgstr "*world coordinates*" -#: library/turtle.rst:2411 +#: library/turtle.rst:2415 msgid "clock" msgstr "*clock*" -#: library/turtle.rst:2411 +#: library/turtle.rst:2415 msgid "analog clock showing time of your computer" msgstr "horloge analogique indiquant l'heure de votre ordinateur" -#: library/turtle.rst:2411 +#: library/turtle.rst:2415 msgid "turtles as clock's hands, ontimer" msgstr "tortues sous forme des aiguilles d'horloge, sur minuterie" -#: library/turtle.rst:2414 +#: library/turtle.rst:2418 msgid "colormixer" msgstr "*colormixer* (mélangeur de couleurs)" -#: library/turtle.rst:2414 +#: library/turtle.rst:2418 msgid "experiment with r, g, b" msgstr "des expériences en rouge, vert, bleu" -#: library/turtle.rst:2416 +#: library/turtle.rst:2420 msgid "forest" msgstr "*forest* (forêt)" -#: library/turtle.rst:2416 +#: library/turtle.rst:2420 msgid "3 breadth-first trees" msgstr "3 arbres tracés par un parcours en largeur" -#: library/turtle.rst:2416 +#: library/turtle.rst:2420 msgid "randomization" msgstr "*randomization* (répartition aléatoire)" -#: library/turtle.rst:2418 +#: library/turtle.rst:2422 msgid "fractalcurves" msgstr "*fractalcurves*" -#: library/turtle.rst:2418 +#: library/turtle.rst:2422 msgid "Hilbert & Koch curves" msgstr "Courbes de Hilbert et de Koch" -#: library/turtle.rst:2418 +#: library/turtle.rst:2422 msgid "recursion" msgstr "récursivité" -#: library/turtle.rst:2420 +#: library/turtle.rst:2424 msgid "lindenmayer" msgstr "*lindenmayer*" -#: library/turtle.rst:2420 +#: library/turtle.rst:2424 msgid "ethnomathematics (indian kolams)" msgstr "ethnomathématiques (kolams indiens)" -#: library/turtle.rst:2420 +#: library/turtle.rst:2424 msgid "L-System" msgstr "*L-Système*" -#: library/turtle.rst:2423 +#: library/turtle.rst:2427 msgid "minimal_hanoi" msgstr "*minimal_hanoi*" -#: library/turtle.rst:2423 +#: library/turtle.rst:2427 msgid "Towers of Hanoi" msgstr "Tours de Hanoï" -#: library/turtle.rst:2423 +#: library/turtle.rst:2427 msgid "Rectangular Turtles as Hanoi discs (shape, shapesize)" msgstr "" "Des tortues rectangulaires à la place des disques (*shape*, *shapesize*)" -#: library/turtle.rst:2427 +#: library/turtle.rst:2431 msgid "nim" msgstr "*nim*" -#: library/turtle.rst:2427 +#: library/turtle.rst:2431 msgid "" "play the classical nim game with three heaps of sticks against the computer." msgstr "" "jouez au classique jeu de *nim* avec trois piles de bâtons contre " "l'ordinateur." -#: library/turtle.rst:2427 +#: library/turtle.rst:2431 msgid "turtles as nimsticks, event driven (mouse, keyboard)" msgstr "" "tortues en tant que bâtons de *nim*, géré par des événements (clavier et " "souris)" -#: library/turtle.rst:2431 +#: library/turtle.rst:2435 msgid "paint" msgstr "*paint* (peinture)" -#: library/turtle.rst:2431 +#: library/turtle.rst:2435 msgid "super minimalistic drawing program" msgstr "programme de dessin extra minimaliste" -#: library/turtle.rst:2434 +#: library/turtle.rst:2438 msgid "peace" msgstr "*peace* (paix)" -#: library/turtle.rst:2434 +#: library/turtle.rst:2438 msgid "elementary" msgstr "basique" -#: library/turtle.rst:2434 +#: library/turtle.rst:2438 msgid "turtle: appearance and animation" msgstr "tortue : apparence et animation" -#: library/turtle.rst:2437 +#: library/turtle.rst:2441 msgid "penrose" msgstr "*penrose*" -#: library/turtle.rst:2437 +#: library/turtle.rst:2441 msgid "aperiodic tiling with kites and darts" msgstr "tuiles apériodiques avec cerfs-volants et fléchettes" -#: library/turtle.rst:2440 +#: library/turtle.rst:2444 msgid "planet_and_moon" msgstr "*planet_and_moon* (planète et lune)" -#: library/turtle.rst:2440 +#: library/turtle.rst:2444 msgid "simulation of gravitational system" msgstr "simulation d'un système gravitationnel" -#: library/turtle.rst:2440 +#: library/turtle.rst:2444 msgid "compound shapes, :class:`Vec2D`" msgstr "formes composées, :class:`Vec2D`" -#: library/turtle.rst:2443 +#: library/turtle.rst:2447 msgid "round_dance" msgstr "*round_dance*" -#: library/turtle.rst:2443 +#: library/turtle.rst:2447 msgid "dancing turtles rotating pairwise in opposite direction" msgstr "tortues dansantes tournant par paires en sens inverse" -#: library/turtle.rst:2443 +#: library/turtle.rst:2447 msgid "compound shapes, clone shapesize, tilt, get_shapepoly, update" msgstr "" "formes composées, clones de la forme (*shapesize*), rotation, " "*get_shapepoly*, *update*" -#: library/turtle.rst:2447 +#: library/turtle.rst:2451 msgid "sorting_animate" msgstr "*sorting_animate*" -#: library/turtle.rst:2447 +#: library/turtle.rst:2451 msgid "visual demonstration of different sorting methods" msgstr "démonstration visuelle des différentes méthodes de classement" -#: library/turtle.rst:2447 +#: library/turtle.rst:2451 msgid "simple alignment, randomization" msgstr "alignement simple, répartition aléatoire" -#: library/turtle.rst:2450 +#: library/turtle.rst:2454 msgid "tree" msgstr "*tree* (arbre)" -#: library/turtle.rst:2450 +#: library/turtle.rst:2454 msgid "a (graphical) breadth first tree (using generators)" msgstr "un arbre (tracé) par un parcours en largeur (à l’aide de générateurs)" -#: library/turtle.rst:2453 +#: library/turtle.rst:2457 msgid "two_canvases" msgstr "*two_canvases* (deux toiles)" -#: library/turtle.rst:2453 +#: library/turtle.rst:2457 msgid "simple design" msgstr "design simple" -#: library/turtle.rst:2453 +#: library/turtle.rst:2457 msgid "turtles on two canvases" msgstr "tortues sur deux canevas" -#: library/turtle.rst:2456 +#: library/turtle.rst:2460 msgid "wikipedia" msgstr "*wikipedia*" -#: library/turtle.rst:2456 +#: library/turtle.rst:2460 msgid "a pattern from the wikipedia article on turtle graphics" msgstr "un motif issu de l'article de *wikipedia* sur la tortue graphique" -#: library/turtle.rst:2456 +#: library/turtle.rst:2460 msgid ":func:`clone`, :func:`undo`" msgstr ":func:`clone`, :func:`undo`" -#: library/turtle.rst:2459 +#: library/turtle.rst:2463 msgid "yinyang" msgstr "*yinyang*" -#: library/turtle.rst:2459 +#: library/turtle.rst:2463 msgid "another elementary example" msgstr "un autre exemple élémentaire" -#: library/turtle.rst:2462 +#: library/turtle.rst:2466 msgid "Have fun!" msgstr "Amusez-vous !" -#: library/turtle.rst:2466 +#: library/turtle.rst:2470 msgid "Changes since Python 2.6" msgstr "Modifications depuis Python 2.6" -#: library/turtle.rst:2468 +#: library/turtle.rst:2472 msgid "" "The methods :meth:`Turtle.tracer`, :meth:`Turtle.window_width` and :meth:" "`Turtle.window_height` have been eliminated. Methods with these names and " @@ -3068,7 +3070,7 @@ msgstr "" "2.6 ces méthodes n'étaient que de simples duplicatas des méthodes " "correspondantes des classes :class:`TurtleScreen`/:class:`Screen`)" -#: library/turtle.rst:2476 +#: library/turtle.rst:2480 msgid "" "The method :meth:`Turtle.fill` has been eliminated. The behaviour of :meth:" "`begin_fill` and :meth:`end_fill` have changed slightly: now every filling-" @@ -3078,7 +3080,7 @@ msgstr "" "`begin_fill` et :meth:`end_fill` a légèrement changé : chaque opération de " "remplissage doit maintenant se terminer par un appel à ``end_fill()``." -#: library/turtle.rst:2481 +#: library/turtle.rst:2485 msgid "" "A method :meth:`Turtle.filling` has been added. It returns a boolean value: " "``True`` if a filling process is under way, ``False`` otherwise. This " @@ -3088,11 +3090,11 @@ msgstr "" "``True`` si une opération de remplissage est en cours,``False`` sinon. Ce " "comportement correspond à un appel à ``fill()`` sans argument en Python 2.6." -#: library/turtle.rst:2487 +#: library/turtle.rst:2491 msgid "Changes since Python 3.0" msgstr "Modifications depuis Python 3.0" -#: library/turtle.rst:2489 +#: library/turtle.rst:2493 msgid "" "The methods :meth:`Turtle.shearfactor`, :meth:`Turtle.shapetransform` and :" "meth:`Turtle.get_shapepoly` have been added. Thus the full range of regular " @@ -3107,7 +3109,7 @@ msgstr "" "améliorée : Elle peut maintenant récupérer ou définir l'angle " "d'inclinaison. :meth:`Turtle.settiltangle` est désormais obsolète." -#: library/turtle.rst:2496 +#: library/turtle.rst:2500 msgid "" "The method :meth:`Screen.onkeypress` has been added as a complement to :meth:" "`Screen.onkey` which in fact binds actions to the keyrelease event. " @@ -3118,7 +3120,7 @@ msgstr "" "conséquence, ce dernier s'est vu doté d'un alias : :meth:`Screen." "onkeyrelease`." -#: library/turtle.rst:2500 +#: library/turtle.rst:2504 msgid "" "The method :meth:`Screen.mainloop` has been added. So when working only " "with Screen and Turtle objects one must not additionally import :func:" @@ -3128,7 +3130,7 @@ msgstr "" "travaillez uniquement avec des objets Screen et Turtle, vous n'avez plus " "besoin d'importer :func:`mainloop`." -#: library/turtle.rst:2504 +#: library/turtle.rst:2508 msgid "" "Two input methods has been added :meth:`Screen.textinput` and :meth:`Screen." "numinput`. These popup input dialogs and return strings and numbers " @@ -3138,10 +3140,16 @@ msgstr "" "`Screen.numinput`. Ces dialogues d'entrées renvoient des chaînes de " "caractères et des nombres respectivement." -#: library/turtle.rst:2508 +#: library/turtle.rst:2512 msgid "" "Two example scripts :file:`tdemo_nim.py` and :file:`tdemo_round_dance.py` " "have been added to the :file:`Lib/turtledemo` directory." msgstr "" "Deux exemples de scripts :file:`tdemo_nim.py` et :file:`tdemo_round_dance." "py` ont été ajoutés au répertoire :file:`Lib/turtledemo`." + +#~ msgid ":func:`clear` | :func:`clearscreen`" +#~ msgstr ":func:`clear` | :func:`clearscreen`" + +#~ msgid ":func:`reset` | :func:`resetscreen`" +#~ msgstr ":func:`reset` | :func:`resetscreen`" diff --git a/library/types.po b/library/types.po index c85c197c4..035f13f24 100644 --- a/library/types.po +++ b/library/types.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-09-28 10:04+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -160,132 +160,140 @@ msgstr "" msgid "Standard names are defined for the following types:" msgstr "" -#: library/types.rst:109 +#: library/types.rst:108 +msgid "The type of :data:`None`." +msgstr "" + +#: library/types.rst:116 msgid "" "The type of user-defined functions and functions created by :keyword:" "`lambda` expressions." msgstr "" -#: library/types.rst:112 +#: library/types.rst:119 msgid "" "Raises an :ref:`auditing event ` ``function.__new__`` with " "argument ``code``." msgstr "" -#: library/types.rst:114 +#: library/types.rst:121 msgid "" "The audit event only occurs for direct instantiation of function objects, " "and is not raised for normal compilation." msgstr "" -#: library/types.rst:120 +#: library/types.rst:127 msgid "" "The type of :term:`generator`-iterator objects, created by generator " "functions." msgstr "" -#: library/types.rst:126 +#: library/types.rst:133 msgid "" "The type of :term:`coroutine` objects, created by :keyword:`async def` " "functions." msgstr "" -#: library/types.rst:134 +#: library/types.rst:141 msgid "" "The type of :term:`asynchronous generator`-iterator objects, created by " "asynchronous generator functions." msgstr "" -#: library/types.rst:144 +#: library/types.rst:151 msgid "The type for code objects such as returned by :func:`compile`." msgstr "" -#: library/types.rst:146 +#: library/types.rst:153 msgid "" "Raises an :ref:`auditing event ` ``code.__new__`` with arguments " "``code``, ``filename``, ``name``, ``argcount``, ``posonlyargcount``, " "``kwonlyargcount``, ``nlocals``, ``stacksize``, ``flags``." msgstr "" -#: library/types.rst:148 +#: library/types.rst:155 msgid "" "Note that the audited arguments may not match the names or positions " "required by the initializer. The audit event only occurs for direct " "instantiation of code objects, and is not raised for normal compilation." msgstr "" -#: library/types.rst:154 +#: library/types.rst:161 msgid "" "Return a copy of the code object with new values for the specified fields." msgstr "" -#: library/types.rst:160 +#: library/types.rst:167 msgid "" "The type for cell objects: such objects are used as containers for a " "function's free variables." msgstr "" -#: library/types.rst:168 +#: library/types.rst:175 msgid "The type of methods of user-defined class instances." msgstr "" -#: library/types.rst:174 +#: library/types.rst:181 msgid "" "The type of built-in functions like :func:`len` or :func:`sys.exit`, and " "methods of built-in classes. (Here, the term \"built-in\" means \"written " "in C\".)" msgstr "" -#: library/types.rst:181 +#: library/types.rst:188 msgid "" "The type of methods of some built-in data types and base classes such as :" "meth:`object.__init__` or :meth:`object.__lt__`." msgstr "" -#: library/types.rst:189 +#: library/types.rst:196 msgid "" "The type of *bound* methods of some built-in data types and base classes. " "For example it is the type of :code:`object().__str__`." msgstr "" -#: library/types.rst:197 +#: library/types.rst:204 +msgid "The type of :data:`NotImplemented`." +msgstr "" + +#: library/types.rst:211 msgid "" "The type of methods of some built-in data types such as :meth:`str.join`." msgstr "" -#: library/types.rst:204 +#: library/types.rst:218 msgid "" "The type of *unbound* class methods of some built-in data types such as " "``dict.__dict__['fromkeys']``." msgstr "" -#: library/types.rst:212 +#: library/types.rst:226 msgid "" "The type of :term:`modules `. The constructor takes the name of the " "module to be created and optionally its :term:`docstring`." msgstr "" -#: library/types.rst:216 +#: library/types.rst:230 msgid "" "Use :func:`importlib.util.module_from_spec` to create a new module if you " "wish to set the various import-controlled attributes." msgstr "" -#: library/types.rst:221 +#: library/types.rst:235 msgid "The :term:`docstring` of the module. Defaults to ``None``." msgstr "" -#: library/types.rst:225 +#: library/types.rst:239 msgid "The :term:`loader` which loaded the module. Defaults to ``None``." msgstr "" -#: library/types.rst:227 +#: library/types.rst:241 msgid "" "This attribute is to match :attr:`importlib.machinery.ModuleSpec.loader` as " "stored in the attr:`__spec__` object." msgstr "" -#: library/types.rst:231 +#: library/types.rst:245 msgid "" "A future version of Python may stop setting this attribute by default. To " "guard against this potential change, preferrably read from the :attr:" @@ -293,17 +301,17 @@ msgid "" "None)`` if you explicitly need to use this attribute." msgstr "" -#: library/types.rst:262 +#: library/types.rst:276 msgid "Defaults to ``None``. Previously the attribute was optional." msgstr "" -#: library/types.rst:242 +#: library/types.rst:256 msgid "" "The name of the module. Expected to match :attr:`importlib.machinery." "ModuleSpec.name`." msgstr "" -#: library/types.rst:247 +#: library/types.rst:261 msgid "" "Which :term:`package` a module belongs to. If the module is top-level (i.e. " "not a part of any specific package) then the attribute should be set to " @@ -311,13 +319,13 @@ msgid "" "`__name__` if the module is a package itself). Defaults to ``None``." msgstr "" -#: library/types.rst:252 +#: library/types.rst:266 msgid "" "This attribute is to match :attr:`importlib.machinery.ModuleSpec.parent` as " "stored in the attr:`__spec__` object." msgstr "" -#: library/types.rst:256 +#: library/types.rst:270 msgid "" "A future version of Python may stop setting this attribute by default. To " "guard against this potential change, preferrably read from the :attr:" @@ -325,53 +333,61 @@ msgid "" "None)`` if you explicitly need to use this attribute." msgstr "" -#: library/types.rst:267 +#: library/types.rst:281 msgid "" "A record of the module's import-system-related state. Expected to be an " "instance of :class:`importlib.machinery.ModuleSpec`." msgstr "" -#: library/types.rst:275 +#: library/types.rst:289 +msgid "The type of :data:`Ellipsis`." +msgstr "" + +#: library/types.rst:295 msgid "" "The type of :ref:`parameterized generics ` such as " "``list[int]``." msgstr "" -#: library/types.rst:278 +#: library/types.rst:298 msgid "" "``t_origin`` should be a non-parameterized generic class, such as ``list``, " "``tuple`` or ``dict``. ``t_args`` should be a :class:`tuple` (possibly of " "length 1) of types which parameterize ``t_origin``::" msgstr "" -#: library/types.rst:291 +#: library/types.rst:311 msgid "This type can now be subclassed." msgstr "" -#: library/types.rst:297 +#: library/types.rst:317 +msgid "The type of :ref:`union type expressions`." +msgstr "" + +#: library/types.rst:323 msgid "The type of traceback objects such as found in ``sys.exc_info()[2]``." msgstr "" -#: library/types.rst:299 +#: library/types.rst:325 msgid "" "See :ref:`the language reference ` for details of the " "available attributes and operations, and guidance on creating tracebacks " "dynamically." msgstr "" -#: library/types.rst:306 +#: library/types.rst:332 msgid "" "The type of frame objects such as found in ``tb.tb_frame`` if ``tb`` is a " "traceback object." msgstr "" -#: library/types.rst:309 +#: library/types.rst:335 msgid "" "See :ref:`the language reference ` for details of the " "available attributes and operations." msgstr "" -#: library/types.rst:315 +#: library/types.rst:341 msgid "" "The type of objects defined in extension modules with ``PyGetSetDef``, such " "as ``FrameType.f_locals`` or ``array.array.typecode``. This type is used as " @@ -379,7 +395,7 @@ msgid "" "`property` type, but for classes defined in extension modules." msgstr "" -#: library/types.rst:323 +#: library/types.rst:349 msgid "" "The type of objects defined in extension modules with ``PyMemberDef``, such " "as ``datetime.timedelta.days``. This type is used as descriptor for simple " @@ -388,51 +404,51 @@ msgid "" "modules." msgstr "" -#: library/types.rst:330 +#: library/types.rst:356 msgid "" "In other implementations of Python, this type may be identical to " "``GetSetDescriptorType``." msgstr "" -#: library/types.rst:335 +#: library/types.rst:361 msgid "" "Read-only proxy of a mapping. It provides a dynamic view on the mapping's " "entries, which means that when the mapping changes, the view reflects these " "changes." msgstr "" -#: library/types.rst:343 +#: library/types.rst:369 msgid "" "Updated to support the new union (``|``) operator from :pep:`584`, which " "simply delegates to the underlying mapping." msgstr "" -#: library/types.rst:348 +#: library/types.rst:374 msgid "" "Return ``True`` if the underlying mapping has a key *key*, else ``False``." msgstr "" -#: library/types.rst:353 +#: library/types.rst:379 msgid "" "Return the item of the underlying mapping with key *key*. Raises a :exc:" "`KeyError` if *key* is not in the underlying mapping." msgstr "" -#: library/types.rst:358 +#: library/types.rst:384 msgid "" "Return an iterator over the keys of the underlying mapping. This is a " "shortcut for ``iter(proxy.keys())``." msgstr "" -#: library/types.rst:363 +#: library/types.rst:389 msgid "Return the number of items in the underlying mapping." msgstr "" -#: library/types.rst:367 +#: library/types.rst:393 msgid "Return a shallow copy of the underlying mapping." msgstr "" -#: library/types.rst:371 +#: library/types.rst:397 #, fuzzy msgid "" "Return the value for *key* if *key* is in the underlying mapping, else " @@ -443,62 +459,62 @@ msgstr "" "*default*. Si *default* n'est pas donné, il vaut ``None`` par défaut, de " "manière à ce que cette méthode ne lève jamais :exc:`KeyError`." -#: library/types.rst:377 +#: library/types.rst:403 msgid "" "Return a new view of the underlying mapping's items (``(key, value)`` pairs)." msgstr "" -#: library/types.rst:382 +#: library/types.rst:408 msgid "Return a new view of the underlying mapping's keys." msgstr "" -#: library/types.rst:386 +#: library/types.rst:412 msgid "Return a new view of the underlying mapping's values." msgstr "" -#: library/types.rst:390 +#: library/types.rst:416 msgid "Return a reverse iterator over the keys of the underlying mapping." msgstr "" -#: library/types.rst:396 +#: library/types.rst:422 msgid "Additional Utility Classes and Functions" msgstr "" -#: library/types.rst:400 +#: library/types.rst:426 msgid "" "A simple :class:`object` subclass that provides attribute access to its " "namespace, as well as a meaningful repr." msgstr "" -#: library/types.rst:403 +#: library/types.rst:429 msgid "" "Unlike :class:`object`, with ``SimpleNamespace`` you can add and remove " "attributes. If a ``SimpleNamespace`` object is initialized with keyword " "arguments, those are directly added to the underlying namespace." msgstr "" -#: library/types.rst:407 +#: library/types.rst:433 msgid "The type is roughly equivalent to the following code::" msgstr "" -#: library/types.rst:422 +#: library/types.rst:448 msgid "" "``SimpleNamespace`` may be useful as a replacement for ``class NS: pass``. " "However, for a structured record type use :func:`~collections.namedtuple` " "instead." msgstr "" -#: library/types.rst:428 +#: library/types.rst:454 msgid "" "Attribute order in the repr changed from alphabetical to insertion (like " "``dict``)." msgstr "" -#: library/types.rst:434 +#: library/types.rst:460 msgid "Route attribute access on a class to __getattr__." msgstr "" -#: library/types.rst:436 +#: library/types.rst:462 msgid "" "This is a descriptor, used to define attributes that act differently when " "accessed through an instance and through a class. Instance access remains " @@ -506,18 +522,18 @@ msgid "" "class's __getattr__ method; this is done by raising AttributeError." msgstr "" -#: library/types.rst:441 +#: library/types.rst:467 msgid "" "This allows one to have properties active on an instance, and have virtual " "attributes on the class with the same name (see :class:`enum.Enum` for an " "example)." msgstr "" -#: library/types.rst:448 +#: library/types.rst:474 msgid "Coroutine Utility Functions" msgstr "" -#: library/types.rst:452 +#: library/types.rst:478 msgid "" "This function transforms a :term:`generator` function into a :term:" "`coroutine function` which returns a generator-based coroutine. The " @@ -526,11 +542,11 @@ msgid "" "However, it may not necessarily implement the :meth:`__await__` method." msgstr "" -#: library/types.rst:459 +#: library/types.rst:485 msgid "If *gen_func* is a generator function, it will be modified in-place." msgstr "" -#: library/types.rst:461 +#: library/types.rst:487 msgid "" "If *gen_func* is not a generator function, it will be wrapped. If it returns " "an instance of :class:`collections.abc.Generator`, the instance will be " diff --git a/library/typing.po b/library/typing.po index 7cb7bb26c..18e0d9b8d 100644 --- a/library/typing.po +++ b/library/typing.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-06-22 09:58+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-05-18 11:06-0400\n" "Last-Translator: Jean-Michel Laprise \n" "Language-Team: FRENCH \n" @@ -34,13 +34,14 @@ msgstr "" "tiers tels que les contrôleurs de type, les IDE, les analyseurs de code, etc." #: library/typing.rst:20 +#, fuzzy msgid "" "This module provides runtime support for type hints as specified by :pep:" -"`484`, :pep:`526`, :pep:`544`, :pep:`586`, :pep:`589`, and :pep:`591`. The " -"most fundamental support consists of the types :data:`Any`, :data:`Union`, :" -"data:`Tuple`, :data:`Callable`, :class:`TypeVar`, and :class:`Generic`. For " -"full specification please see :pep:`484`. For a simplified introduction to " -"type hints see :pep:`483`." +"`484`, :pep:`526`, :pep:`544`, :pep:`586`, :pep:`589`, :pep:`591`, :pep:" +"`612` and :pep:`613`. The most fundamental support consists of the types :" +"data:`Any`, :data:`Union`, :data:`Tuple`, :data:`Callable`, :class:" +"`TypeVar`, and :class:`Generic`. For full specification please see :pep:" +"`484`. For a simplified introduction to type hints see :pep:`483`." msgstr "" "Ce module fournit la gestion des annotations de type à l'exécution " "conformément à ce qui est spécifié dans les :pep:`484`, :pep:`526`, :pep:" @@ -50,14 +51,14 @@ msgstr "" "complètes, voir la :pep:`484`. Pour une introduction simplifiée aux " "annotations de type, voir la :pep:`483`." -#: library/typing.rst:28 +#: library/typing.rst:29 msgid "" "The function below takes and returns a string and is annotated as follows::" msgstr "" "La fonction ci-dessous prend et renvoie une chaîne de caractères, et est " "annotée comme suit ::" -#: library/typing.rst:33 +#: library/typing.rst:34 msgid "" "In the function ``greeting``, the argument ``name`` is expected to be of " "type :class:`str` and the return type :class:`str`. Subtypes are accepted as " @@ -67,11 +68,11 @@ msgstr "" "class:`str` et le type de retour :class:`str`. Les sous-types sont acceptés " "comme arguments." -#: library/typing.rst:38 +#: library/typing.rst:41 msgid "Type aliases" msgstr "Alias de type" -#: library/typing.rst:40 +#: library/typing.rst:43 #, fuzzy msgid "" "A type alias is defined by assigning the type to the alias. In this example, " @@ -81,7 +82,7 @@ msgstr "" "exemple, ``Vector`` et ``List[float]`` sont traités comme des synonymes " "interchangeables ::" -#: library/typing.rst:51 +#: library/typing.rst:54 msgid "" "Type aliases are useful for simplifying complex type signatures. For " "example::" @@ -89,7 +90,7 @@ msgstr "" "Les alias de type sont utiles pour simplifier les signatures complexes. Par " "exemple ::" -#: library/typing.rst:69 +#: library/typing.rst:72 msgid "" "Note that ``None`` as a type hint is a special case and is replaced by " "``type(None)``." @@ -97,16 +98,17 @@ msgstr "" "Notez que ``None`` comme indication de type est un cas particulier et est " "remplacé par ``type(None)``." -#: library/typing.rst:75 +#: library/typing.rst:78 msgid "NewType" msgstr "*NewType*" -#: library/typing.rst:77 -msgid "Use the :func:`NewType` helper function to create distinct types::" +#: library/typing.rst:80 +#, fuzzy +msgid "Use the :class:`NewType` helper class to create distinct types::" msgstr "" "Aidez-vous de la fonction :func:`NewType` pour créer des types distincts ::" -#: library/typing.rst:84 +#: library/typing.rst:87 msgid "" "The static type checker will treat the new type as if it were a subclass of " "the original type. This is useful in helping catch logical errors::" @@ -115,7 +117,7 @@ msgstr "" "s'agissait d'une sous-classe du type original. C'est utile pour aider à " "détecter les erreurs logiques ::" -#: library/typing.rst:96 +#: library/typing.rst:99 msgid "" "You may still perform all ``int`` operations on a variable of type " "``UserId``, but the result will always be of type ``int``. This lets you " @@ -128,13 +130,14 @@ msgstr "" "où un ``int`` est attendu, mais vous empêche de créer accidentellement un " "``UserId`` d'une manière invalide ::" -#: library/typing.rst:104 +#: library/typing.rst:107 +#, fuzzy msgid "" "Note that these checks are enforced only by the static type checker. At " "runtime, the statement ``Derived = NewType('Derived', Base)`` will make " -"``Derived`` a function that immediately returns whatever parameter you pass " -"it. That means the expression ``Derived(some_value)`` does not create a new " -"class or introduce any overhead beyond that of a regular function call." +"``Derived`` a class that immediately returns whatever parameter you pass it. " +"That means the expression ``Derived(some_value)`` does not create a new " +"class or introduce much overhead beyond that of a regular function call." msgstr "" "Notez que ces contrôles ne sont exécutés que par le vérificateur de type " "statique. À l'exécution, l'instruction ``Derived = NewType('Derived', " @@ -143,7 +146,7 @@ msgstr "" "``Derived(some_value)`` ne crée pas une nouvelle classe ou n'introduit pas " "de surcharge au-delà de celle d'un appel de fonction normal." -#: library/typing.rst:110 +#: library/typing.rst:113 msgid "" "More precisely, the expression ``some_value is Derived(some_value)`` is " "always true at runtime." @@ -151,32 +154,28 @@ msgstr "" "Plus précisément, l'expression ``some_value is Derived(some_value)`` est " "toujours vraie au moment de l'exécution." -#: library/typing.rst:113 -msgid "" -"This also means that it is not possible to create a subtype of ``Derived`` " -"since it is an identity function at runtime, not an actual type::" +#: library/typing.rst:116 +msgid "It is invalid to create a subtype of ``Derived``::" msgstr "" -"Cela signifie également qu'il n'est pas possible de créer un sous-type de " -"``Derived`` puisqu'il s'agit d'une fonction d'identité au moment de " -"l'exécution, pas d'un type réel ::" -#: library/typing.rst:123 +#: library/typing.rst:125 +#, fuzzy msgid "" -"However, it is possible to create a :func:`NewType` based on a 'derived' " +"However, it is possible to create a :class:`NewType` based on a 'derived' " "``NewType``::" msgstr "" "Cependant, il est possible de créer un :func:`NewType` basé sur un " "``NewType`` « dérivé » ::" -#: library/typing.rst:131 +#: library/typing.rst:133 msgid "and typechecking for ``ProUserId`` will work as expected." msgstr "et la vérification de type pour ``ProUserId`` fonctionne comme prévu." -#: library/typing.rst:133 +#: library/typing.rst:135 msgid "See :pep:`484` for more details." msgstr "Voir la :pep:`484` pour plus de détails." -#: library/typing.rst:137 +#: library/typing.rst:139 msgid "" "Recall that the use of a type alias declares two types to be *equivalent* to " "one another. Doing ``Alias = Original`` will make the static type checker " @@ -189,7 +188,7 @@ msgstr "" "équivalent* à ``Original`` dans tous les cas. C'est utile lorsque vous " "voulez simplifier des signatures complexes." -#: library/typing.rst:142 +#: library/typing.rst:144 msgid "" "In contrast, ``NewType`` declares one type to be a *subtype* of another. " "Doing ``Derived = NewType('Derived', Original)`` will make the static type " @@ -206,11 +205,18 @@ msgstr "" "prévue. C'est utile lorsque vous voulez éviter les erreurs logiques avec un " "coût d'exécution minimal." -#: library/typing.rst:152 +#: library/typing.rst:153 +msgid "" +"``NewType`` is now a class rather than a function. There is some additional " +"runtime cost when calling ``NewType`` over a regular function. However, " +"this cost will be reduced in 3.11.0." +msgstr "" + +#: library/typing.rst:160 msgid "Callable" msgstr "Appelable" -#: library/typing.rst:154 +#: library/typing.rst:162 msgid "" "Frameworks expecting callback functions of specific signatures might be type " "hinted using ``Callable[[Arg1Type, Arg2Type], ReturnType]``." @@ -219,11 +225,11 @@ msgstr "" "rappel ayant des signatures spécifiques peuvent être typés en utilisant " "``Callable[[Arg1Type, Arg2Type], ReturnType]``." -#: library/typing.rst:157 +#: library/typing.rst:976 library/typing.rst:2054 msgid "For example::" msgstr "Par exemple ::" -#: library/typing.rst:168 +#: library/typing.rst:176 msgid "" "It is possible to declare the return type of a callable without specifying " "the call signature by substituting a literal ellipsis for the list of " @@ -233,11 +239,34 @@ msgstr "" "la signature de l'appel en indiquant des points de suspension à la liste des " "arguments dans l'indice de type : ``Callable[..., ReturnType]``." -#: library/typing.rst:175 +#: library/typing.rst:666 +msgid "" +"Callables which take other callables as arguments may indicate that their " +"parameter types are dependent on each other using :class:`ParamSpec`. " +"Additionally, if that callable adds or removes arguments from other " +"callables, the :data:`Concatenate` operator may be used. They take the form " +"``Callable[ParamSpecVariable, ReturnType]`` and " +"``Callable[Concatenate[Arg1Type, Arg2Type, ..., ParamSpecVariable], " +"ReturnType]`` respectively." +msgstr "" + +#: library/typing.rst:678 +msgid "" +"``Callable`` now supports :class:`ParamSpec` and :data:`Concatenate`. See :" +"pep:`612` for more information." +msgstr "" + +#: library/typing.rst:193 +msgid "" +"The documentation for :class:`ParamSpec` and :class:`Concatenate` provide " +"examples of usage in ``Callable``." +msgstr "" + +#: library/typing.rst:199 msgid "Generics" msgstr "Génériques" -#: library/typing.rst:177 +#: library/typing.rst:201 msgid "" "Since type information about objects kept in containers cannot be statically " "inferred in a generic way, abstract base classes have been extended to " @@ -249,7 +278,7 @@ msgstr "" "(*subscription* en anglais) et indiquer les types attendus pour les éléments " "de conteneur." -#: library/typing.rst:188 +#: library/typing.rst:212 msgid "" "Generics can be parameterized by using a new factory available in typing " "called :class:`TypeVar`." @@ -257,17 +286,17 @@ msgstr "" "Les génériques peuvent être paramétrés en utilisant une nouvelle fabrique " "(au sens des patrons de conception) disponible en tapant :class:`TypeVar`." -#: library/typing.rst:203 +#: library/typing.rst:227 msgid "User-defined generic types" msgstr "Types génériques définis par l'utilisateur" -#: library/typing.rst:205 +#: library/typing.rst:229 msgid "A user-defined class can be defined as a generic class." msgstr "" "Une classe définie par l'utilisateur peut être définie comme une classe " "générique." -#: library/typing.rst:231 +#: library/typing.rst:255 msgid "" "``Generic[T]`` as a base class defines that the class ``LoggedVar`` takes a " "single type parameter ``T`` . This also makes ``T`` valid as a type within " @@ -277,7 +306,7 @@ msgstr "" "``LoggedVar`` prend un paramètre de type unique ``T``. Ceci rend également " "``T`` valide en tant que type dans le corps de la classe." -#: library/typing.rst:235 +#: library/typing.rst:259 msgid "" "The :class:`Generic` base class defines :meth:`__class_getitem__` so that " "``LoggedVar[t]`` is valid as a type::" @@ -285,7 +314,7 @@ msgstr "" "La classe de base :class:`Generic` définit :meth:`__class_getitem__` de " "sorte que ``LoggedVar[t]`` est valide comme type ::" -#: library/typing.rst:244 +#: library/typing.rst:268 msgid "" "A generic type can have any number of type variables, and type variables may " "be constrained::" @@ -293,7 +322,7 @@ msgstr "" "Un type générique peut avoir un nombre quelconque de variables de type et " "vous pouvez fixer des contraintes sur les variables de type ::" -#: library/typing.rst:256 +#: library/typing.rst:280 msgid "" "Each type variable argument to :class:`Generic` must be distinct. This is " "thus invalid::" @@ -301,22 +330,22 @@ msgstr "" "Chaque argument de variable de type :class:`Generic` doit être distinct. " "Ceci n'est donc pas valable ::" -#: library/typing.rst:267 +#: library/typing.rst:291 msgid "You can use multiple inheritance with :class:`Generic`::" msgstr "Vous pouvez utiliser l'héritage multiple avec :class:`Generic` ::" -#: library/typing.rst:277 +#: library/typing.rst:301 msgid "" "When inheriting from generic classes, some type variables could be fixed::" msgstr "" "Lors de l'héritage de classes génériques, certaines variables de type " "peuvent être corrigées ::" -#: library/typing.rst:287 +#: library/typing.rst:311 msgid "In this case ``MyDict`` has a single parameter, ``T``." msgstr "Dans ce cas, ``MyDict`` a un seul paramètre, ``T``." -#: library/typing.rst:289 +#: library/typing.rst:313 msgid "" "Using a generic class without specifying type parameters assumes :data:`Any` " "for each position. In the following example, ``MyIterable`` is not generic " @@ -327,17 +356,48 @@ msgstr "" "``MyIterable`` n'est pas générique mais hérite implicitement de " "``Iterable[Any]`` ::" -#: library/typing.rst:297 +#: library/typing.rst:321 msgid "User defined generic type aliases are also supported. Examples::" msgstr "" "Les alias de type générique définis par l'utilisateur sont également pris en " "charge. Exemples ::" -#: library/typing.rst:314 +#: library/typing.rst:338 msgid ":class:`Generic` no longer has a custom metaclass." msgstr ":class:`Generic` n'a plus de métaclasse personnalisée." -#: library/typing.rst:317 +#: library/typing.rst:341 +msgid "" +"User-defined generics for parameter expressions are also supported via " +"parameter specification variables in the form ``Generic[P]``. The behavior " +"is consistent with type variables' described above as parameter " +"specification variables are treated by the typing module as a specialized " +"type variable. The one exception to this is that a list of types can be " +"used to substitute a :class:`ParamSpec`::" +msgstr "" + +#: library/typing.rst:358 +msgid "" +"Furthermore, a generic with only one parameter specification variable will " +"accept parameter lists in the forms ``X[[Type1, Type2, ...]]`` and also " +"``X[Type1, Type2, ...]`` for aesthetic reasons. Internally, the latter is " +"converted to the former and are thus equivalent::" +msgstr "" + +#: library/typing.rst:370 +msgid "" +"Do note that generics with :class:`ParamSpec` may not have correct " +"``__parameters__`` after substitution in some cases because they are " +"intended primarily for static type checking." +msgstr "" + +#: library/typing.rst:374 +msgid "" +":class:`Generic` can now be parameterized over parameter expressions. See :" +"class:`ParamSpec` and :pep:`612` for more details." +msgstr "" + +#: library/typing.rst:378 msgid "" "A user-defined generic class can have ABCs as base classes without a " "metaclass conflict. Generic metaclasses are not supported. The outcome of " @@ -350,11 +410,11 @@ msgstr "" "paramétrage des génériques est mis en cache et la plupart des types dans le " "module ``typing`` sont hachables et comparables pour l'égalité." -#: library/typing.rst:324 +#: library/typing.rst:385 msgid "The :data:`Any` type" msgstr "Le type :data:`Any`" -#: library/typing.rst:326 +#: library/typing.rst:387 msgid "" "A special kind of type is :data:`Any`. A static type checker will treat " "every type as being compatible with :data:`Any` and :data:`Any` as being " @@ -364,7 +424,7 @@ msgstr "" "chaque type comme étant compatible avec :data:`Any` et :data:`Any` comme " "étant compatible avec chaque type." -#: library/typing.rst:330 +#: library/typing.rst:391 #, fuzzy msgid "" "This means that it is possible to perform any operation or method call on a " @@ -374,7 +434,7 @@ msgstr "" "appel de méthode sur une valeur de type :data:`Any` et de l'affecter à " "n'importe quelle variable ::" -#: library/typing.rst:348 +#: library/typing.rst:409 msgid "" "Notice that no typechecking is performed when assigning a value of type :" "data:`Any` to a more precise type. For example, the static type checker did " @@ -388,7 +448,7 @@ msgstr "" "de ``a`` à ``s`` même si ``s`` était déclaré être de type :class:`str` et " "reçoit une valeur :class:`int` au moment de son exécution !" -#: library/typing.rst:354 +#: library/typing.rst:415 msgid "" "Furthermore, all functions without a return type or parameter types will " "implicitly default to using :data:`Any`::" @@ -396,7 +456,7 @@ msgstr "" "De plus, toutes les fonctions sans type de retour ni type de paramètre sont " "considérées comme utilisant :data:`Any` implicitement par défaut ::" -#: library/typing.rst:367 +#: library/typing.rst:428 msgid "" "This behavior allows :data:`Any` to be used as an *escape hatch* when you " "need to mix dynamically and statically typed code." @@ -404,7 +464,7 @@ msgstr "" "Ce comportement permet à :data:`Any` d'être utilisé comme succédané lorsque " "vous avez besoin de mélanger du code typé dynamiquement et statiquement." -#: library/typing.rst:370 +#: library/typing.rst:431 msgid "" "Contrast the behavior of :data:`Any` with the behavior of :class:`object`. " "Similar to :data:`Any`, every type is a subtype of :class:`object`. However, " @@ -416,7 +476,7 @@ msgstr "" "`object`. Cependant, contrairement à :data:`Any`, l'inverse n'est pas " "vrai : :class:`object` n'est *pas* un sous-type de chaque autre type." -#: library/typing.rst:375 +#: library/typing.rst:436 msgid "" "That means when the type of a value is :class:`object`, a type checker will " "reject almost all operations on it, and assigning it to a variable (or using " @@ -428,7 +488,7 @@ msgstr "" "l'affecter à une variable (ou l'utiliser comme une valeur de retour) d'un " "type plus spécialisé est une erreur de typage. Par exemple ::" -#: library/typing.rst:397 +#: library/typing.rst:458 msgid "" "Use :class:`object` to indicate that a value could be any type in a typesafe " "manner. Use :data:`Any` to indicate that a value is dynamically typed." @@ -437,11 +497,11 @@ msgstr "" "quel type de manière sûre. Utiliser :data:`Any` pour indiquer qu'une valeur " "est typée dynamiquement." -#: library/typing.rst:402 +#: library/typing.rst:463 msgid "Nominal vs structural subtyping" msgstr "Sous-typage nominal et sous-typage structurel" -#: library/typing.rst:404 +#: library/typing.rst:465 msgid "" "Initially :pep:`484` defined Python static type system as using *nominal " "subtyping*. This means that a class ``A`` is allowed where a class ``B`` is " @@ -452,7 +512,7 @@ msgstr "" "est permise lorsqu'une classe ``B`` est prévue si et seulement si ``A`` est " "une sous-classe de ``B``." -#: library/typing.rst:408 +#: library/typing.rst:469 #, fuzzy msgid "" "This requirement previously also applied to abstract base classes, such as :" @@ -468,7 +528,7 @@ msgstr "" "Python idiomatique typé dynamiquement. Par exemple, ceci est conforme à la :" "pep:`484` ::" -#: library/typing.rst:421 +#: library/typing.rst:482 msgid "" ":pep:`544` allows to solve this problem by allowing users to write the above " "code without explicit base classes in the class definition, allowing " @@ -483,7 +543,7 @@ msgstr "" "de type statique. C'est ce qu'on appelle le *sous-typage structurel* (ou " "typage canard) ::" -#: library/typing.rst:437 +#: library/typing.rst:498 msgid "" "Moreover, by subclassing a special class :class:`Protocol`, a user can " "define new custom protocols to fully enjoy structural subtyping (see " @@ -493,16 +553,16 @@ msgstr "" "utilisateur peut définir de nouveaux protocoles personnalisés pour profiter " "pleinement du sous-typage structurel (voir exemples ci-dessous)." -#: library/typing.rst:442 +#: library/typing.rst:503 msgid "Module contents" msgstr "" -#: library/typing.rst:444 +#: library/typing.rst:505 #, fuzzy msgid "The module defines the following classes, functions and decorators." msgstr "Ce module définit les classes, fonctions et décorateurs suivants :" -#: library/typing.rst:448 +#: library/typing.rst:509 msgid "" "This module defines several types that are subclasses of pre-existing " "standard library classes which also extend :class:`Generic` to support type " @@ -510,7 +570,7 @@ msgid "" "corresponding pre-existing classes were enhanced to support ``[]``." msgstr "" -#: library/typing.rst:454 +#: library/typing.rst:515 msgid "" "The redundant types are deprecated as of Python 3.9 but no deprecation " "warnings will be issued by the interpreter. It is expected that type " @@ -518,53 +578,64 @@ msgid "" "Python 3.9 or newer." msgstr "" -#: library/typing.rst:459 +#: library/typing.rst:520 msgid "" "The deprecated types will be removed from the :mod:`typing` module in the " "first Python version released 5 years after the release of Python 3.9.0. See " "details in :pep:`585`—*Type Hinting Generics In Standard Collections*." msgstr "" -#: library/typing.rst:465 +#: library/typing.rst:526 msgid "Special typing primitives" msgstr "" -#: library/typing.rst:468 +#: library/typing.rst:529 #, fuzzy msgid "Special types" msgstr "Type « optionnel »." -#: library/typing.rst:470 +#: library/typing.rst:531 msgid "These can be used as types in annotations and do not support ``[]``." msgstr "" -#: library/typing.rst:474 +#: library/typing.rst:535 msgid "Special type indicating an unconstrained type." msgstr "Type spécial indiquant un type non contraint." -#: library/typing.rst:476 +#: library/typing.rst:537 msgid "Every type is compatible with :data:`Any`." msgstr "Chaque type est compatible avec :data:`Any`." -#: library/typing.rst:477 +#: library/typing.rst:538 msgid ":data:`Any` is compatible with every type." msgstr ":data:`Any` est compatible avec tous les types." -#: library/typing.rst:481 +#: library/typing.rst:542 msgid "Special type indicating that a function never returns. For example::" msgstr "Type spécial indiquant qu'une fonction ne renvoie rien. Par exemple ::" -#: library/typing.rst:493 +#: library/typing.rst:555 +msgid "" +"Special annotation for explicitly declaring a :ref:`type alias `. For example::" +msgstr "" + +#: library/typing.rst:562 +#, fuzzy +msgid "See :pep:`613` for more details about explicit type aliases." +msgstr "Voir la :pep:`484` pour plus de détails." + +#: library/typing.rst:567 msgid "Special forms" msgstr "" -#: library/typing.rst:495 +#: library/typing.rst:569 msgid "" "These can be used as types in annotations using ``[]``, each having a unique " "syntax." msgstr "" -#: library/typing.rst:499 +#: library/typing.rst:573 msgid "" "Tuple type; ``Tuple[X, Y]`` is the type of a tuple of two items with the " "first item of type X and the second of type Y. The type of the empty tuple " @@ -574,7 +645,7 @@ msgstr "" "éléments avec le premier élément de type X et le second de type Y. Le type " "du *n*-uplet vide peut être écrit comme ``Tuple[()]``." -#: library/typing.rst:503 +#: library/typing.rst:577 msgid "" "Example: ``Tuple[T1, T2]`` is a tuple of two elements corresponding to type " "variables T1 and T2. ``Tuple[int, float, str]`` is a tuple of an int, a " @@ -584,7 +655,7 @@ msgstr "" "type ``T1`` et ``T2``. ``Tuple[int, float, str]`` est un triplet composé " "d'un entier, d'un flottant et d'une chaîne de caractères." -#: library/typing.rst:507 +#: library/typing.rst:581 msgid "" "To specify a variable-length tuple of homogeneous type, use literal " "ellipsis, e.g. ``Tuple[int, ...]``. A plain :data:`Tuple` is equivalent to " @@ -595,7 +666,7 @@ msgstr "" "`Tuple` est équivalent à ``Tuple[Any, ....]`` et, à son tour, à :class:" "`tuple`." -#: library/typing.rst:511 +#: library/typing.rst:585 msgid "" ":class:`builtins.tuple ` now supports ``[]``. See :pep:`585` and :ref:" "`types-genericalias`." @@ -603,64 +674,73 @@ msgstr "" ":class:`builtins.tuple ` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:517 -msgid "Union type; ``Union[X, Y]`` means either X or Y." +#: library/typing.rst:591 +#, fuzzy +msgid "" +"Union type; ``Union[X, Y]`` is equivalent to ``X | Y`` and means either X or " +"Y." msgstr "Type « union » ; ``Union[X, Y]`` signifie X ou Y." -#: library/typing.rst:519 -msgid "To define a union, use e.g. ``Union[int, str]``. Details:" +#: library/typing.rst:593 +#, fuzzy +msgid "" +"To define a union, use e.g. ``Union[int, str]`` or the shorthand ``int | " +"str``. Details:" msgstr "" "Pour définir une union, utilisez par exemple ``Union[int, str]``. Détail :" -#: library/typing.rst:521 +#: library/typing.rst:595 msgid "The arguments must be types and there must be at least one." msgstr "" "Les arguments doivent être des types et il doit y en avoir au moins un." -#: library/typing.rst:523 +#: library/typing.rst:597 msgid "Unions of unions are flattened, e.g.::" msgstr "Les unions d'unions sont aplanies, par exemple ::" -#: library/typing.rst:527 +#: library/typing.rst:601 msgid "Unions of a single argument vanish, e.g.::" msgstr "Les unions d'un seul argument disparaissent, par exemple ::" -#: library/typing.rst:531 +#: library/typing.rst:605 msgid "Redundant arguments are skipped, e.g.::" msgstr "Les arguments redondants sont ignorés, par exemple ::" -#: library/typing.rst:535 +#: library/typing.rst:609 msgid "When comparing unions, the argument order is ignored, e.g.::" msgstr "" "Lors de la comparaison d'unions, l'ordre des arguments est ignoré, par " "exemple ::" -#: library/typing.rst:539 -msgid "You cannot subclass or instantiate a union." +#: library/typing.rst:613 +#, fuzzy +msgid "You cannot subclass or instantiate a ``Union``." msgstr "Vous ne pouvez pas sous-classer ou instancier une union." -#: library/typing.rst:541 +#: library/typing.rst:615 msgid "You cannot write ``Union[X][Y]``." msgstr "Vous ne pouvez pas écrire ``Union[X][Y]``." -#: library/typing.rst:543 -msgid "You can use ``Optional[X]`` as a shorthand for ``Union[X, None]``." -msgstr "" -"Vous pouvez utiliser l'abréviation ``Optional[X]`` pour ``Union[X, None]``." - -#: library/typing.rst:545 +#: library/typing.rst:617 msgid "Don't remove explicit subclasses from unions at runtime." msgstr "Ne supprime pas les sous-classes explicites des unions à l'exécution." -#: library/typing.rst:550 +#: library/typing.rst:620 +msgid "" +"Unions can now be written as ``X | Y``. See :ref:`union type " +"expressions`." +msgstr "" + +#: library/typing.rst:626 msgid "Optional type." msgstr "Type « optionnel »." -#: library/typing.rst:552 -msgid "``Optional[X]`` is equivalent to ``Union[X, None]``." +#: library/typing.rst:628 +#, fuzzy +msgid "``Optional[X]`` is equivalent to ``X | None`` (or ``Union[X, None]``)." msgstr "``Optional[X]`` équivaut à ``Union[X, None]``." -#: library/typing.rst:554 +#: library/typing.rst:630 msgid "" "Note that this is not the same concept as an optional argument, which is one " "that has a default. An optional argument with a default does not require " @@ -672,7 +752,7 @@ msgstr "" "valeur par défaut) ne nécessite pas, à ce titre, le qualificatif " "``Optional`` sur son annotation de type. Par exemple ::" -#: library/typing.rst:562 +#: library/typing.rst:638 msgid "" "On the other hand, if an explicit value of ``None`` is allowed, the use of " "``Optional`` is appropriate, whether the argument is optional or not. For " @@ -682,13 +762,19 @@ msgstr "" "de ``Optional`` est appropriée, que l'argument soit facultatif ou non. Par " "exemple ::" -#: library/typing.rst:571 +#: library/typing.rst:645 +msgid "" +"Optional can now be written as ``X | None``. See :ref:`union type " +"expressions`." +msgstr "" + +#: library/typing.rst:651 msgid "Callable type; ``Callable[[int], str]`` is a function of (int) -> str." msgstr "" "Type Appelable. ``Callable[[int], str]`` est une fonction de type ``(int) -> " "str``." -#: library/typing.rst:573 +#: library/typing.rst:653 msgid "" "The subscription syntax must always be used with exactly two values: the " "argument list and the return type. The argument list must be a list of " @@ -699,7 +785,7 @@ msgstr "" "retour. La liste d'arguments doit être une liste de types ou une ellipse ; " "il doit y avoir un seul type de retour." -#: library/typing.rst:578 +#: library/typing.rst:658 msgid "" "There is no syntax to indicate optional or keyword arguments; such function " "types are rarely used as callback types. ``Callable[..., ReturnType]`` " @@ -716,7 +802,7 @@ msgstr "" "équivalent à ``Callable[..., Any]`` et, à son tour, à :class:`collections." "abc.Callable`." -#: library/typing.rst:586 +#: library/typing.rst:674 msgid "" ":class:`collections.abc.Callable` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -724,7 +810,44 @@ msgstr "" ":class:`collections.abc.Callable` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:592 +#: library/typing.rst:683 +msgid "" +"The documentation for :class:`ParamSpec` and :class:`Concatenate` provide " +"examples of usage with ``Callable``." +msgstr "" + +#: library/typing.rst:688 +msgid "" +"Used with :data:`Callable` and :class:`ParamSpec` to type annotate a higher " +"order callable which adds, removes, or transforms parameters of another " +"callable. Usage is in the form ``Concatenate[Arg1Type, Arg2Type, ..., " +"ParamSpecVariable]``. ``Concatenate`` is currently only valid when used as " +"the first argument to a :data:`Callable`. The last parameter to " +"``Concatenate`` must be a :class:`ParamSpec`." +msgstr "" + +#: library/typing.rst:695 +msgid "" +"For example, to annotate a decorator ``with_lock`` which provides a :class:" +"`threading.Lock` to the decorated function, ``Concatenate`` can be used to " +"indicate that ``with_lock`` expects a callable which takes in a ``Lock`` as " +"the first argument, and returns a callable with a different type signature. " +"In this case, the :class:`ParamSpec` indicates that the returned callable's " +"parameter types are dependent on the parameter types of the callable being " +"passed in::" +msgstr "" + +#: library/typing.rst:1155 +msgid "" +":pep:`612` -- Parameter Specification Variables (the PEP which introduced " +"``ParamSpec`` and ``Concatenate``)." +msgstr "" + +#: library/typing.rst:737 +msgid ":class:`ParamSpec` and :class:`Callable`." +msgstr "" + +#: library/typing.rst:742 msgid "" "A variable annotated with ``C`` may accept a value of type ``C``. In " "contrast, a variable annotated with ``Type[C]`` may accept values that are " @@ -736,11 +859,11 @@ msgstr "" "qui sont elles-mêmes des classes — plus précisément, elle accepte l'objet " "*class* de ``C``. Par exemple ::" -#: library/typing.rst:601 +#: library/typing.rst:751 msgid "Note that ``Type[C]`` is covariant::" msgstr "Notez que ``Type[C]`` est covariant ::" -#: library/typing.rst:613 +#: library/typing.rst:763 msgid "" "The fact that ``Type[C]`` is covariant implies that all subclasses of ``C`` " "should implement the same constructor signature and class method signatures " @@ -758,7 +881,7 @@ msgstr "" "de type est tenu de traiter ce cas particulier peut changer dans les futures " "révisions de :pep:`484`." -#: library/typing.rst:621 +#: library/typing.rst:771 msgid "" "The only legal parameters for :class:`Type` are classes, :data:`Any`, :ref:" "`type variables `, and unions of any of these types. For example::" @@ -767,7 +890,7 @@ msgstr "" "`Any`, :ref:`type variables `, et les unions de ces types. Par " "exemple ::" -#: library/typing.rst:627 +#: library/typing.rst:777 msgid "" "``Type[Any]`` is equivalent to ``Type`` which in turn is equivalent to " "``type``, which is the root of Python's metaclass hierarchy." @@ -775,7 +898,7 @@ msgstr "" "``Type[Any]`` est équivalent à ``Type`` qui à son tour est équivalent à " "``type``, qui est la racine de la hiérarchie des métaclasses de Python." -#: library/typing.rst:632 +#: library/typing.rst:782 msgid "" ":class:`builtins.type ` now supports ``[]``. See :pep:`585` and :ref:" "`types-genericalias`." @@ -783,7 +906,7 @@ msgstr "" ":class:`builtins.type ` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:638 +#: library/typing.rst:788 msgid "" "A type that can be used to indicate to type checkers that the corresponding " "variable or function parameter has a value equivalent to the provided " @@ -793,7 +916,7 @@ msgstr "" "de fonction correspondant a une valeur équivalente au littéral fourni (ou un " "parmi plusieurs littéraux). Par exemple ::" -#: library/typing.rst:652 +#: library/typing.rst:802 msgid "" "``Literal[...]`` cannot be subclassed. At runtime, an arbitrary value is " "allowed as type argument to ``Literal[...]``, but type checkers may impose " @@ -804,7 +927,7 @@ msgstr "" "les vérificateurs de type peuvent imposer des restrictions. Voir la :pep:" "`586` pour plus de détails sur les types littéraux." -#: library/typing.rst:658 +#: library/typing.rst:808 msgid "" "``Literal`` now de-duplicates parameters. Equality comparisons of " "``Literal`` objects are no longer order dependent. ``Literal`` objects will " @@ -812,12 +935,12 @@ msgid "" "their parameters are not :term:`hashable`." msgstr "" -#: library/typing.rst:666 +#: library/typing.rst:816 msgid "Special type construct to mark class variables." msgstr "" "Construction de type particulière pour indiquer les variables de classe." -#: library/typing.rst:668 +#: library/typing.rst:818 msgid "" "As introduced in :pep:`526`, a variable annotation wrapped in ClassVar " "indicates that a given attribute is intended to be used as a class variable " @@ -828,11 +951,11 @@ msgstr "" "utilisé comme une variable de classe et ne doit pas être défini sur des " "instances de cette classe. Utilisation ::" -#: library/typing.rst:676 +#: library/typing.rst:826 msgid ":data:`ClassVar` accepts only types and cannot be further subscribed." msgstr ":data:`ClassVar` n'accepte que les types et ne peut plus être dérivé." -#: library/typing.rst:678 +#: library/typing.rst:828 msgid "" ":data:`ClassVar` is not a class itself, and should not be used with :func:" "`isinstance` or :func:`issubclass`. :data:`ClassVar` does not change Python " @@ -845,7 +968,7 @@ msgstr "" "par des vérificateurs tiers. Par exemple, un vérificateur de type peut " "marquer le code suivant comme une erreur ::" -#: library/typing.rst:692 +#: library/typing.rst:842 msgid "" "A special typing construct to indicate to type checkers that a name cannot " "be re-assigned or overridden in a subclass. For example::" @@ -854,7 +977,7 @@ msgstr "" "qu'un nom ne peut pas être réassigné ou remplacé dans une sous-classe. Par " "exemple ::" -#: library/typing.rst:1624 +#: library/typing.rst:1949 msgid "" "There is no runtime checking of these properties. See :pep:`591` for more " "details." @@ -862,7 +985,7 @@ msgstr "" "Ces propriétés ne sont pas vérifiées à l'exécution. Voir la :pep:`591` pour " "plus de détails." -#: library/typing.rst:711 +#: library/typing.rst:861 msgid "" "A type, introduced in :pep:`593` (``Flexible function and variable " "annotations``), to decorate existing types with context-specific metadata " @@ -879,7 +1002,7 @@ msgid "" "``x`` within a specific application." msgstr "" -#: library/typing.rst:725 +#: library/typing.rst:875 msgid "" "Ultimately, the responsibility of how to interpret the annotations (if at " "all) is the responsibility of the tool or library encountering the " @@ -888,21 +1011,21 @@ msgid "" "using ``isinstance()``)." msgstr "" -#: library/typing.rst:731 +#: library/typing.rst:881 msgid "" "When a tool or a library does not support annotations or encounters an " "unknown annotation it should just ignore it and treat annotated type as the " "underlying type." msgstr "" -#: library/typing.rst:735 +#: library/typing.rst:885 msgid "" "It's up to the tool consuming the annotations to decide whether the client " "is allowed to have several annotations on one type and how to merge those " "annotations." msgstr "" -#: library/typing.rst:739 +#: library/typing.rst:889 msgid "" "Since the ``Annotated`` type allows you to put several annotations of the " "same (or different) type(s) on any node, the tools or libraries consuming " @@ -910,67 +1033,135 @@ msgid "" "example, if you are doing value range analysis you might allow this::" msgstr "" -#: library/typing.rst:748 +#: library/typing.rst:898 msgid "" "Passing ``include_extras=True`` to :func:`get_type_hints` lets one access " "the extra annotations at runtime." msgstr "" -#: library/typing.rst:751 +#: library/typing.rst:901 msgid "The details of the syntax:" msgstr "" -#: library/typing.rst:753 +#: library/typing.rst:903 msgid "The first argument to ``Annotated`` must be a valid type" msgstr "" -#: library/typing.rst:755 +#: library/typing.rst:905 msgid "" "Multiple type annotations are supported (``Annotated`` supports variadic " "arguments)::" msgstr "" -#: library/typing.rst:760 +#: library/typing.rst:910 msgid "" "``Annotated`` must be called with at least two arguments " "( ``Annotated[int]`` is not valid)" msgstr "" -#: library/typing.rst:763 +#: library/typing.rst:913 msgid "" "The order of the annotations is preserved and matters for equality checks::" msgstr "" -#: library/typing.rst:770 +#: library/typing.rst:920 msgid "" "Nested ``Annotated`` types are flattened, with metadata ordered starting " "with the innermost annotation::" msgstr "" -#: library/typing.rst:777 +#: library/typing.rst:927 msgid "Duplicated annotations are not removed::" msgstr "" -#: library/typing.rst:783 +#: library/typing.rst:933 msgid "``Annotated`` can be used with nested and generic aliases::" msgstr "" -#: library/typing.rst:794 +#: library/typing.rst:946 +msgid "" +"Special typing form used to annotate the return type of a user-defined type " +"guard function. ``TypeGuard`` only accepts a single type argument. At " +"runtime, functions marked this way should return a boolean." +msgstr "" + +#: library/typing.rst:950 +msgid "" +"``TypeGuard`` aims to benefit *type narrowing* -- a technique used by static " +"type checkers to determine a more precise type of an expression within a " +"program's code flow. Usually type narrowing is done by analyzing " +"conditional code flow and applying the narrowing to a block of code. The " +"conditional expression here is sometimes referred to as a \"type guard\"::" +msgstr "" + +#: library/typing.rst:965 +msgid "" +"Sometimes it would be convenient to use a user-defined boolean function as a " +"type guard. Such a function should use ``TypeGuard[...]`` as its return " +"type to alert static type checkers to this intention." +msgstr "" + +#: library/typing.rst:969 +msgid "" +"Using ``-> TypeGuard`` tells the static type checker that for a given " +"function:" +msgstr "" + +#: library/typing.rst:972 +msgid "The return value is a boolean." +msgstr "" + +#: library/typing.rst:973 +msgid "" +"If the return value is ``True``, the type of its argument is the type inside " +"``TypeGuard``." +msgstr "" + +#: library/typing.rst:990 +msgid "" +"If ``is_str_list`` is a class or instance method, then the type in " +"``TypeGuard`` maps to the type of the second parameter after ``cls`` or " +"``self``." +msgstr "" + +#: library/typing.rst:994 +msgid "" +"In short, the form ``def foo(arg: TypeA) -> TypeGuard[TypeB]: ...``, means " +"that if ``foo(arg)`` returns ``True``, then ``arg`` narrows from ``TypeA`` " +"to ``TypeB``." +msgstr "" + +#: library/typing.rst:1000 +msgid "" +"``TypeB`` need not be a narrower form of ``TypeA`` -- it can even be a wider " +"form. The main reason is to allow for things like narrowing ``List[object]`` " +"to ``List[str]`` even though the latter is not a subtype of the former, " +"since ``List`` is invariant. The responsibility of writing type-safe type " +"guards is left to the user." +msgstr "" + +#: library/typing.rst:1006 +msgid "" +"``TypeGuard`` also works with type variables. For more information, see :" +"pep:`647` (User-Defined Type Guards)." +msgstr "" + +#: library/typing.rst:1013 #, fuzzy msgid "Building generic types" msgstr "Types génériques définis par l'utilisateur" -#: library/typing.rst:796 +#: library/typing.rst:1015 msgid "" "These are not used in annotations. They are building blocks for creating " "generic types." msgstr "" -#: library/typing.rst:800 +#: library/typing.rst:1019 msgid "Abstract base class for generic types." msgstr "Classe de base abstraite pour les types génériques." -#: library/typing.rst:802 +#: library/typing.rst:1021 msgid "" "A generic type is typically declared by inheriting from an instantiation of " "this class with one or more type variables. For example, a generic mapping " @@ -980,19 +1171,19 @@ msgstr "" "de cette classe avec une ou plusieurs variables de type. Par exemple, un " "type de correspondance générique peut être défini comme suit ::" -#: library/typing.rst:811 +#: library/typing.rst:1030 msgid "This class can then be used as follows::" msgstr "Cette classe peut alors être utilisée comme suit ::" -#: library/typing.rst:824 +#: library/typing.rst:1043 msgid "Type variable." msgstr "Variables de type." -#: library/typing.rst:942 +#: library/typing.rst:1084 library/typing.rst:1261 msgid "Usage::" msgstr "Utilisation ::" -#: library/typing.rst:831 +#: library/typing.rst:1050 #, fuzzy msgid "" "Type variables exist primarily for the benefit of static type checkers. " @@ -1006,7 +1197,7 @@ msgstr "" "``Generic`` pour plus d'informations sur les types génériques. Les fonctions " "génériques fonctionnent comme suit ::" -#: library/typing.rst:844 +#: library/typing.rst:1063 msgid "" "The latter example's signature is essentially the overloading of ``(str, " "str) -> str`` and ``(bytes, bytes) -> bytes``. Also note that if the " @@ -1018,7 +1209,7 @@ msgstr "" "les arguments sont des instances d'une sous-classe de la classe :class:" "`str`, le type de retour est toujours la classe :class:`str`." -#: library/typing.rst:849 +#: library/typing.rst:1068 msgid "" "At runtime, ``isinstance(x, T)`` will raise :exc:`TypeError`. In general, :" "func:`isinstance` and :func:`issubclass` should not be used with types." @@ -1027,7 +1218,7 @@ msgstr "" "général, :func:`isinstance` et :func:`issubclass` ne devraient pas être " "utilisés avec les types." -#: library/typing.rst:852 +#: library/typing.rst:1071 msgid "" "Type variables may be marked covariant or contravariant by passing " "``covariant=True`` or ``contravariant=True``. See :pep:`484` for more " @@ -1044,7 +1235,97 @@ msgstr "" "(explicitement ou implicitement) à la variable type doit être une sous-" "classe du type frontière (*boundary* en anglais), voir la :pep:`484`." -#: library/typing.rst:862 +#: library/typing.rst:1081 +msgid "" +"Parameter specification variable. A specialized version of :class:`type " +"variables `." +msgstr "" + +#: library/typing.rst:1088 +msgid "" +"Parameter specification variables exist primarily for the benefit of static " +"type checkers. They are used to forward the parameter types of one callable " +"to another callable -- a pattern commonly found in higher order functions " +"and decorators. They are only valid when used in ``Concatenate``, or as the " +"first argument to ``Callable``, or as parameters for user-defined Generics. " +"See :class:`Generic` for more information on generic types." +msgstr "" + +#: library/typing.rst:1095 +msgid "" +"For example, to add basic logging to a function, one can create a decorator " +"``add_logging`` to log function calls. The parameter specification variable " +"tells the type checker that the callable passed into the decorator and the " +"new callable returned by it have inter-dependent type parameters::" +msgstr "" + +#: library/typing.rst:1119 +msgid "" +"Without ``ParamSpec``, the simplest way to annotate this previously was to " +"use a :class:`TypeVar` with bound ``Callable[..., Any]``. However this " +"causes two problems:" +msgstr "" + +#: library/typing.rst:1123 +msgid "" +"The type checker can't type check the ``inner`` function because ``*args`` " +"and ``**kwargs`` have to be typed :data:`Any`." +msgstr "" + +#: library/typing.rst:1125 +msgid "" +":func:`~cast` may be required in the body of the ``add_logging`` decorator " +"when returning the ``inner`` function, or the static type checker must be " +"told to ignore the ``return inner``." +msgstr "" + +#: library/typing.rst:1132 +msgid "" +"Since ``ParamSpec`` captures both positional and keyword parameters, ``P." +"args`` and ``P.kwargs`` can be used to split a ``ParamSpec`` into its " +"components. ``P.args`` represents the tuple of positional parameters in a " +"given call and should only be used to annotate ``*args``. ``P.kwargs`` " +"represents the mapping of keyword parameters to their values in a given " +"call, and should be only be used to annotate ``**kwargs``. Both attributes " +"require the annotated parameter to be in scope. At runtime, ``P.args`` and " +"``P.kwargs`` are instances respectively of :class:`ParamSpecArgs` and :class:" +"`ParamSpecKwargs`." +msgstr "" + +#: library/typing.rst:1142 +msgid "" +"Parameter specification variables created with ``covariant=True`` or " +"``contravariant=True`` can be used to declare covariant or contravariant " +"generic types. The ``bound`` argument is also accepted, similar to :class:" +"`TypeVar`. However the actual semantics of these keywords are yet to be " +"decided." +msgstr "" + +#: library/typing.rst:1151 +msgid "" +"Only parameter specification variables defined in global scope can be " +"pickled." +msgstr "" + +#: library/typing.rst:1157 +msgid ":class:`Callable` and :class:`Concatenate`." +msgstr "" + +#: library/typing.rst:1162 +msgid "" +"Arguments and keyword arguments attributes of a :class:`ParamSpec`. The ``P." +"args`` attribute of a ``ParamSpec`` is an instance of ``ParamSpecArgs``, and " +"``P.kwargs`` is an instance of ``ParamSpecKwargs``. They are intended for " +"runtime introspection and have no special meaning to static type checkers." +msgstr "" + +#: library/typing.rst:1167 +msgid "" +"Calling :func:`get_origin` on either of these objects will return the " +"original ``ParamSpec``::" +msgstr "" + +#: library/typing.rst:1179 msgid "" "``AnyStr`` is a type variable defined as ``AnyStr = TypeVar('AnyStr', str, " "bytes)``." @@ -1052,7 +1333,7 @@ msgstr "" "``AnyStr`` est une variable de type définie comme ``AnyStr = " "TypeVar('AnyStr', str, bytes)``." -#: library/typing.rst:865 +#: library/typing.rst:1182 msgid "" "It is meant to be used for functions that may accept any kind of string " "without allowing different kinds of strings to mix. For example::" @@ -1061,14 +1342,14 @@ msgstr "" "n'importe quel type de chaîne de caractères sans permettre à différents " "types de chaînes de caractères de se mélanger. Par exemple ::" -#: library/typing.rst:877 +#: library/typing.rst:1194 msgid "" "Base class for protocol classes. Protocol classes are defined like this::" msgstr "" "Classe de base pour les classes de protocole. Les classes de protocole sont " "définies comme suit ::" -#: library/typing.rst:883 +#: library/typing.rst:1200 msgid "" "Such classes are primarily used with static type checkers that recognize " "structural subtyping (static duck-typing), for example::" @@ -1077,7 +1358,7 @@ msgstr "" "de type qui reconnaissent les sous-types structurels (typage canard " "statique), par exemple ::" -#: library/typing.rst:895 +#: library/typing.rst:1212 msgid "" "See :pep:`544` for details. Protocol classes decorated with :func:" "`runtime_checkable` (described later) act as simple-minded runtime protocols " @@ -1089,15 +1370,15 @@ msgstr "" "protocoles d'exécution simples qui ne vérifient que la présence d'attributs " "donnés, ignorant leurs signatures de type." -#: library/typing.rst:900 +#: library/typing.rst:1217 msgid "Protocol classes can be generic, for example::" msgstr "Les classes de protocole peuvent être génériques, par exemple ::" -#: library/typing.rst:910 +#: library/typing.rst:1227 msgid "Mark a protocol class as a runtime protocol." msgstr "Marquez une classe de protocole comme protocole d'exécution." -#: library/typing.rst:912 +#: library/typing.rst:1229 #, fuzzy msgid "" "Such a protocol can be used with :func:`isinstance` and :func:`issubclass`. " @@ -1112,49 +1393,49 @@ msgstr "" "similaire aux « classes qui ne savent faire qu'une chose » présentes dans :" "mod:`collections.abc` tel que :class:`Iterable`. Par exemple ::" -#: library/typing.rst:925 +#: library/typing.rst:1242 msgid "" ":func:`runtime_checkable` will check only the presence of the required " -"methods, not their type signatures! For example, :class:`builtins.complex " -"` implements :func:`__float__`, therefore it passes an :func:" -"`issubclass` check against :class:`SupportsFloat`. However, the ``complex." -"__float__`` method exists only to raise a :class:`TypeError` with a more " -"informative message." +"methods, not their type signatures. For example, :class:`ssl.SSLObject` is a " +"class, therefore it passes an :func:`issubclass` check against :data:" +"`Callable`. However, the :meth:`ssl.SSLObject.__init__` method exists only " +"to raise a :exc:`TypeError` with a more informative message, therefore " +"making it impossible to call (instantiate) :class:`ssl.SSLObject`." msgstr "" -#: library/typing.rst:934 +#: library/typing.rst:1253 msgid "Other special directives" msgstr "" -#: library/typing.rst:936 +#: library/typing.rst:1255 msgid "" "These are not used in annotations. They are building blocks for declaring " "types." msgstr "" -#: library/typing.rst:940 +#: library/typing.rst:1259 msgid "Typed version of :func:`collections.namedtuple`." msgstr "Version typée de :func:`collections.namedtuple`." -#: library/typing.rst:948 +#: library/typing.rst:1267 msgid "This is equivalent to::" msgstr "Ce qui est équivalent à ::" -#: library/typing.rst:952 +#: library/typing.rst:1271 msgid "" "To give a field a default value, you can assign to it in the class body::" msgstr "" "Pour assigner une valeur par défaut à un champ, vous pouvez lui donner dans " "le corps de classe ::" -#: library/typing.rst:961 +#: library/typing.rst:1280 msgid "" "Fields with a default value must come after any fields without a default." msgstr "" "Les champs avec une valeur par défaut doivent venir après tous les champs " "sans valeur par défaut." -#: library/typing.rst:963 +#: library/typing.rst:1282 msgid "" "The resulting class has an extra attribute ``__annotations__`` giving a dict " "that maps the field names to the field types. (The field names are in the " @@ -1167,28 +1448,28 @@ msgstr "" "défaut sont dans l'attribut ``_field_defaults`` qui font partie de l'API " "*namedtuple*.)" -#: library/typing.rst:969 +#: library/typing.rst:1288 msgid "``NamedTuple`` subclasses can also have docstrings and methods::" msgstr "" "Les sous-classes de ``NamedTuple`` peuvent aussi avoir des *docstrings* et " "des méthodes ::" -#: library/typing.rst:979 +#: library/typing.rst:1298 msgid "Backward-compatible usage::" msgstr "Utilisation rétrocompatible ::" -#: library/typing.rst:983 +#: library/typing.rst:1302 msgid "Added support for :pep:`526` variable annotation syntax." msgstr "" "Ajout de la gestion de la syntaxe d'annotation variable de la :pep:`526`." -#: library/typing.rst:986 +#: library/typing.rst:1305 msgid "Added support for default values, methods, and docstrings." msgstr "" "Ajout de la prise en charge des valeurs par défaut, des méthodes et des " "chaînes de caractères *docstrings*." -#: library/typing.rst:989 +#: library/typing.rst:1308 msgid "" "The ``_field_types`` and ``__annotations__`` attributes are now regular " "dictionaries instead of instances of ``OrderedDict``." @@ -1196,7 +1477,7 @@ msgstr "" "Les attributs ``_field_types`` et ``__annotations__`` sont maintenant des " "dictionnaires standards au lieu d'instances de ``OrderedDict``." -#: library/typing.rst:993 +#: library/typing.rst:1312 msgid "" "Removed the ``_field_types`` attribute in favor of the more standard " "``__annotations__`` attribute which has the same information." @@ -1204,18 +1485,22 @@ msgstr "" "rend l'attribut ``_field_types`` obsolète en faveur de l'attribut plus " "standard ``__annotations__`` qui a la même information." -#: library/typing.rst:999 +#: library/typing.rst:1318 #, fuzzy msgid "" -"A helper function to indicate a distinct type to a typechecker, see :ref:" -"`distinct`. At runtime it returns a function that returns its argument. " -"Usage::" +"A helper class to indicate a distinct type to a typechecker, see :ref:" +"`distinct`. At runtime it returns an object that returns its argument when " +"called. Usage::" msgstr "" "Une fonction pour faciliter l'indication d'un type distinct à un " "vérificateur de type, voir :ref:`distinct`. Lors de l'exécution, elle " "renvoie une fonction qui renvoie son argument. Utilisation ::" -#: library/typing.rst:1010 +#: library/typing.rst:1328 +msgid "``NewType`` is now a class rather than a function." +msgstr "" + +#: library/typing.rst:1333 #, fuzzy msgid "" "Special construct to add type hints to a dictionary. At runtime it is a " @@ -1224,7 +1509,7 @@ msgstr "" "Un simple espace de nommage typé. À l'exécution, c'est l'équivalent d'un " "simple :class:`dict`." -#: library/typing.rst:1013 +#: library/typing.rst:1336 #, fuzzy msgid "" "``TypedDict`` declares a dictionary type that expects all of its instances " @@ -1238,12 +1523,14 @@ msgstr "" "l'exécution mais n'est appliquée que par les vérificateurs de type. " "Utilisation ::" -#: library/typing.rst:1029 +#: library/typing.rst:1352 +#, fuzzy msgid "" "The type info for introspection can be accessed via ``Point2D." -"__annotations__`` and ``Point2D.__total__``. To allow using this feature " -"with older versions of Python that do not support :pep:`526`, ``TypedDict`` " -"supports two additional equivalent syntactic forms::" +"__annotations__``, ``Point2D.__total__``, ``Point2D.__required_keys__``, and " +"``Point2D.__optional_keys__``. To allow using this feature with older " +"versions of Python that do not support :pep:`526`, ``TypedDict`` supports " +"two additional equivalent syntactic forms::" msgstr "" "Les informations de type pour l'introspection sont accessibles via ``Point2D." "__annotations__`` et ``Point2D.__total__``. Pour permettre l'utilisation de " @@ -1251,21 +1538,21 @@ msgstr "" "pas en compte la :pep:`526`, ``TypedDict`` gère deux formes syntaxiques " "équivalentes supplémentaires ::" -#: library/typing.rst:1037 +#: library/typing.rst:1362 msgid "" -"By default, all keys must be present in a TypedDict. It is possible to " +"By default, all keys must be present in a ``TypedDict``. It is possible to " "override this by specifying totality. Usage::" msgstr "" -#: library/typing.rst:1045 +#: library/typing.rst:1370 msgid "" -"This means that a point2D TypedDict can have any of the keys omitted. A type " -"checker is only expected to support a literal False or True as the value of " -"the total argument. True is the default, and makes all items defined in the " -"class body be required." +"This means that a ``Point2D`` ``TypedDict`` can have any of the keys " +"omitted. A type checker is only expected to support a literal ``False`` or " +"``True`` as the value of the ``total`` argument. ``True`` is the default, " +"and makes all items defined in the class body required." msgstr "" -#: library/typing.rst:1050 +#: library/typing.rst:1375 #, fuzzy msgid "" "See :pep:`589` for more examples and detailed rules of using ``TypedDict``." @@ -1273,15 +1560,15 @@ msgstr "" "Voir la :pep:`589` pour plus d'exemples et de règles détaillées " "d'utilisation de ``TypedDict`` avec les vérificateurs de type." -#: library/typing.rst:1055 +#: library/typing.rst:1380 msgid "Generic concrete collections" msgstr "" -#: library/typing.rst:1058 +#: library/typing.rst:1383 msgid "Corresponding to built-in types" msgstr "" -#: library/typing.rst:1062 +#: library/typing.rst:1387 msgid "" "A generic version of :class:`dict`. Useful for annotating return types. To " "annotate arguments it is preferred to use an abstract collection type such " @@ -1291,11 +1578,11 @@ msgstr "" "retour. Pour annoter les arguments, il est préférable d'utiliser un type de " "collection abstraite tel que :class:`Mapping`." -#: library/typing.rst:1066 +#: library/typing.rst:1391 msgid "This type can be used as follows::" msgstr "Ce type peut être utilisé comme suit ::" -#: library/typing.rst:1071 +#: library/typing.rst:1396 msgid "" ":class:`builtins.dict ` now supports ``[]``. See :pep:`585` and :ref:" "`types-genericalias`." @@ -1303,7 +1590,7 @@ msgstr "" ":class:`builtins.dict ` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:1077 +#: library/typing.rst:1402 msgid "" "Generic version of :class:`list`. Useful for annotating return types. To " "annotate arguments it is preferred to use an abstract collection type such " @@ -1313,11 +1600,11 @@ msgstr "" "Pour annoter les arguments, il est préférable d'utiliser un type de " "collection abstraite tel que :class:`Sequence` ou :class:`Iterable`." -#: library/typing.rst:1082 +#: library/typing.rst:1407 msgid "This type may be used as follows::" msgstr "Ce type peut être utilisé comme suit ::" -#: library/typing.rst:1092 +#: library/typing.rst:1417 msgid "" ":class:`builtins.list ` now supports ``[]``. See :pep:`585` and :ref:" "`types-genericalias`." @@ -1325,7 +1612,7 @@ msgstr "" ":class:`builtins.list ` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:1098 +#: library/typing.rst:1423 msgid "" "A generic version of :class:`builtins.set `. Useful for annotating " "return types. To annotate arguments it is preferred to use an abstract " @@ -1335,7 +1622,7 @@ msgstr "" "types de retour. Pour annoter les arguments, il est préférable d'utiliser un " "type de collection abstraite tel que :class:`AbstractSet`." -#: library/typing.rst:1102 +#: library/typing.rst:1427 msgid "" ":class:`builtins.set ` now supports ``[]``. See :pep:`585` and :ref:" "`types-genericalias`." @@ -1343,11 +1630,11 @@ msgstr "" ":class:`builtins.set ` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:1108 +#: library/typing.rst:1433 msgid "A generic version of :class:`builtins.frozenset `." msgstr "Une version générique de :class:`builtins.frozenset `." -#: library/typing.rst:1110 +#: library/typing.rst:1435 msgid "" ":class:`builtins.frozenset ` now supports ``[]``. See :pep:`585` " "and :ref:`types-genericalias`." @@ -1355,19 +1642,19 @@ msgstr "" ":class:`builtins.frozenset ` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1114 +#: library/typing.rst:1439 msgid ":data:`Tuple` is a special form." msgstr "" -#: library/typing.rst:1117 +#: library/typing.rst:1442 msgid "Corresponding to types in :mod:`collections`" msgstr "" -#: library/typing.rst:1121 +#: library/typing.rst:1446 msgid "A generic version of :class:`collections.defaultdict`." msgstr "Une version générique de :class:`collections.defaultdict`." -#: library/typing.rst:1125 +#: library/typing.rst:1450 msgid "" ":class:`collections.defaultdict` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1375,11 +1662,11 @@ msgstr "" ":class:`collections.defaultdict` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:1131 +#: library/typing.rst:1456 msgid "A generic version of :class:`collections.OrderedDict`." msgstr "Une version générique de :class:`collections.OrderedDict`." -#: library/typing.rst:1135 +#: library/typing.rst:1460 msgid "" ":class:`collections.OrderedDict` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1387,11 +1674,11 @@ msgstr "" ":class:`collections.OrderedDict` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:1141 +#: library/typing.rst:1466 msgid "A generic version of :class:`collections.ChainMap`." msgstr "Une version générique de :class:`collections.ChainMap`." -#: library/typing.rst:1146 +#: library/typing.rst:1471 msgid "" ":class:`collections.ChainMap` now supports ``[]``. See :pep:`585` and :ref:" "`types-genericalias`." @@ -1399,11 +1686,11 @@ msgstr "" ":class:`collections.ChainMap` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:1152 +#: library/typing.rst:1477 msgid "A generic version of :class:`collections.Counter`." msgstr "Une version générique de :class:`collections.Counter`." -#: library/typing.rst:1157 +#: library/typing.rst:1482 msgid "" ":class:`collections.Counter` now supports ``[]``. See :pep:`585` and :ref:" "`types-genericalias`." @@ -1411,11 +1698,11 @@ msgstr "" ":class:`collections.Counter` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:1163 +#: library/typing.rst:1488 msgid "A generic version of :class:`collections.deque`." msgstr "Une version générique de :class:`collections.deque`." -#: library/typing.rst:1168 +#: library/typing.rst:1493 msgid "" ":class:`collections.deque` now supports ``[]``. See :pep:`585` and :ref:" "`types-genericalias`." @@ -1423,11 +1710,11 @@ msgstr "" ":class:`collections.deque` prend désormais en charge ``[]``. Voir :pep:`585` " "et :ref:`types-genericalias`." -#: library/typing.rst:1173 +#: library/typing.rst:1498 msgid "Other concrete types" msgstr "" -#: library/typing.rst:1179 +#: library/typing.rst:1504 #, fuzzy msgid "" "Generic type ``IO[AnyStr]`` and its subclasses ``TextIO(IO[str])`` and " @@ -1438,13 +1725,13 @@ msgstr "" "``BinaryIO(IO[bytes])`` représentent les types de flux d'entrées-sorties " "tels que renvoyés par :func:`open`." -#: library/typing.rst:1186 +#: library/typing.rst:1511 msgid "" -"These types are also in the ``typing.io`` namespace, which was never " -"supported by type checkers and will be removed." +"The ``typing.io`` namespace is deprecated and will be removed. These types " +"should be directly imported from ``typing`` instead." msgstr "" -#: library/typing.rst:1191 +#: library/typing.rst:1516 #, fuzzy msgid "" "These type aliases correspond to the return types from :func:`re.compile` " @@ -1457,19 +1744,19 @@ msgstr "" "génériques dans ``AnyStr`` et peuvent être rendus spécifiques en écrivant " "``Pattern[str]``, ``Pattern[bytes]``, ``Match[str]`` ou ``Match[bytes]``." -#: library/typing.rst:1201 +#: library/typing.rst:1526 msgid "" -"These types are also in the ``typing.re`` namespace, which was never " -"supported by type checkers and will be removed." +"The ``typing.re`` namespace is deprecated and will be removed. These types " +"should be directly imported from ``typing`` instead." msgstr "" -#: library/typing.rst:1202 +#: library/typing.rst:1527 msgid "" "Classes ``Pattern`` and ``Match`` from :mod:`re` now support ``[]``. See :" "pep:`585` and :ref:`types-genericalias`." msgstr "" -#: library/typing.rst:1208 +#: library/typing.rst:1533 msgid "" "``Text`` is an alias for ``str``. It is provided to supply a forward " "compatible path for Python 2 code: in Python 2, ``Text`` is an alias for " @@ -1479,7 +1766,7 @@ msgstr "" "compatibilité ascendante du code Python 2 : en Python 2, ``Text`` est un " "alias pour ``unicode``." -#: library/typing.rst:1212 +#: library/typing.rst:1537 msgid "" "Use ``Text`` to indicate that a value must contain a unicode string in a " "manner that is compatible with both Python 2 and Python 3::" @@ -1487,20 +1774,20 @@ msgstr "" "Utilisez ``Text`` pour indiquer qu'une valeur doit contenir une chaîne " "Unicode d'une manière compatible avec Python 2 et Python 3 ::" -#: library/typing.rst:1221 +#: library/typing.rst:1546 #, fuzzy msgid "Abstract Base Classes" msgstr "Classe de base abstraite pour les types génériques." -#: library/typing.rst:1224 +#: library/typing.rst:1549 msgid "Corresponding to collections in :mod:`collections.abc`" msgstr "" -#: library/typing.rst:1228 +#: library/typing.rst:1553 msgid "A generic version of :class:`collections.abc.Set`." msgstr "Une version générique de :class:`collections.abc.Set`." -#: library/typing.rst:1230 +#: library/typing.rst:1555 msgid "" ":class:`collections.abc.Set` now supports ``[]``. See :pep:`585` and :ref:" "`types-genericalias`." @@ -1508,11 +1795,11 @@ msgstr "" ":class:`collections.abc.Set` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:1236 +#: library/typing.rst:1561 msgid "A generic version of :class:`collections.abc.ByteString`." msgstr "Une version générique de :class:`collections.abc.ByteString`." -#: library/typing.rst:1238 +#: library/typing.rst:1563 #, fuzzy msgid "" "This type represents the types :class:`bytes`, :class:`bytearray`, and :" @@ -1521,7 +1808,7 @@ msgstr "" "Ce type représente les types :class:`bytes`, :class:`bytearray` et :class:" "`memoryview`." -#: library/typing.rst:1241 +#: library/typing.rst:1566 msgid "" "As a shorthand for this type, :class:`bytes` can be used to annotate " "arguments of any of the types mentioned above." @@ -1529,7 +1816,7 @@ msgstr "" "Comme abréviation pour ce type, :class:`bytes` peut être utilisé pour " "annoter des arguments de n'importe quel type mentionné ci-dessus." -#: library/typing.rst:1244 +#: library/typing.rst:1569 msgid "" ":class:`collections.abc.ByteString` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1537,11 +1824,11 @@ msgstr "" ":class:`collections.abc.ByteString` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1250 +#: library/typing.rst:1575 msgid "A generic version of :class:`collections.abc.Collection`" msgstr "Une version générique de :class:`collections.abc.Collection`" -#: library/typing.rst:1254 +#: library/typing.rst:1579 msgid "" ":class:`collections.abc.Collection` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1549,11 +1836,11 @@ msgstr "" ":class:`collections.abc.Collection` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1260 +#: library/typing.rst:1585 msgid "A generic version of :class:`collections.abc.Container`." msgstr "Une version générique de :class:`collections.abc.Container`." -#: library/typing.rst:1262 +#: library/typing.rst:1587 msgid "" ":class:`collections.abc.Container` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1561,11 +1848,11 @@ msgstr "" ":class:`collections.abc.Container` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1268 +#: library/typing.rst:1593 msgid "A generic version of :class:`collections.abc.ItemsView`." msgstr "Une version générique de :class:`collections.abc.ItemsView`." -#: library/typing.rst:1270 +#: library/typing.rst:1595 msgid "" ":class:`collections.abc.ItemsView` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1573,11 +1860,11 @@ msgstr "" ":class:`collections.abc.ItemsView` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1276 +#: library/typing.rst:1601 msgid "A generic version of :class:`collections.abc.KeysView`." msgstr "Une version générique de :class:`collections.abc.KeysView`." -#: library/typing.rst:1278 +#: library/typing.rst:1603 msgid "" ":class:`collections.abc.KeysView` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1585,7 +1872,7 @@ msgstr "" ":class:`collections.abc.KeysView` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1284 +#: library/typing.rst:1609 msgid "" "A generic version of :class:`collections.abc.Mapping`. This type can be used " "as follows::" @@ -1593,7 +1880,7 @@ msgstr "" "Une version générique de :class:`collections.abc.Mapping`. Ce type peut être " "utilisé comme suit ::" -#: library/typing.rst:1290 +#: library/typing.rst:1615 msgid "" ":class:`collections.abc.Mapping` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1601,11 +1888,11 @@ msgstr "" ":class:`collections.abc.Mapping` prend désormais en charge ``[]``. Voir :pep:" "`585` et :ref:`types-genericalias`." -#: library/typing.rst:1296 +#: library/typing.rst:1621 msgid "A generic version of :class:`collections.abc.MappingView`." msgstr "Une version générique de :class:`collections.abc.MappingView`." -#: library/typing.rst:1298 +#: library/typing.rst:1623 msgid "" ":class:`collections.abc.MappingView` now supports ``[]``. See :pep:`585` " "and :ref:`types-genericalias`." @@ -1613,11 +1900,11 @@ msgstr "" ":class:`collections.abc.MappingView` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1304 +#: library/typing.rst:1629 msgid "A generic version of :class:`collections.abc.MutableMapping`." msgstr "Une version générique de :class:`collections.abc.MutableMapping`." -#: library/typing.rst:1306 +#: library/typing.rst:1631 msgid "" ":class:`collections.abc.MutableMapping` now supports ``[]``. See :pep:`585` " "and :ref:`types-genericalias`." @@ -1625,11 +1912,11 @@ msgstr "" ":class:`collections.abc.MutableMapping` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1312 +#: library/typing.rst:1637 msgid "A generic version of :class:`collections.abc.MutableSequence`." msgstr "Une version générique de :class:`collections.abc.MutableSequence`." -#: library/typing.rst:1314 +#: library/typing.rst:1639 msgid "" ":class:`collections.abc.MutableSequence` now supports ``[]``. See :pep:`585` " "and :ref:`types-genericalias`." @@ -1637,11 +1924,11 @@ msgstr "" ":class:`collections.abc.MutableSequence` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1320 +#: library/typing.rst:1645 msgid "A generic version of :class:`collections.abc.MutableSet`." msgstr "Une version générique de :class:`collections.abc.MutableSet`." -#: library/typing.rst:1322 +#: library/typing.rst:1647 msgid "" ":class:`collections.abc.MutableSet` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1649,11 +1936,11 @@ msgstr "" ":class:`collections.abc.MutableSet` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1328 +#: library/typing.rst:1653 msgid "A generic version of :class:`collections.abc.Sequence`." msgstr "Une version générique de :class:`collections.abc.Sequence`." -#: library/typing.rst:1330 +#: library/typing.rst:1655 msgid "" ":class:`collections.abc.Sequence` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1661,11 +1948,11 @@ msgstr "" ":class:`collections.abc.Sequence` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1336 +#: library/typing.rst:1661 msgid "A generic version of :class:`collections.abc.ValuesView`." msgstr "Une version générique de :class:`collections.abc.ValuesView`." -#: library/typing.rst:1338 +#: library/typing.rst:1663 msgid "" ":class:`collections.abc.ValuesView` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1673,15 +1960,15 @@ msgstr "" ":class:`collections.abc.ValuesView` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1343 +#: library/typing.rst:1668 msgid "Corresponding to other types in :mod:`collections.abc`" msgstr "" -#: library/typing.rst:1347 +#: library/typing.rst:1672 msgid "A generic version of :class:`collections.abc.Iterable`." msgstr "Une version générique de :class:`collections.abc.Iterable`." -#: library/typing.rst:1349 +#: library/typing.rst:1674 msgid "" ":class:`collections.abc.Iterable` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1689,11 +1976,11 @@ msgstr "" ":class:`collections.abc.Iterable` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1355 +#: library/typing.rst:1680 msgid "A generic version of :class:`collections.abc.Iterator`." msgstr "Une version générique de :class:`collections.abc.Iterator`." -#: library/typing.rst:1357 +#: library/typing.rst:1682 msgid "" ":class:`collections.abc.Iterator` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1701,7 +1988,7 @@ msgstr "" ":class:`collections.abc.Iterator` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1363 +#: library/typing.rst:1688 msgid "" "A generator can be annotated by the generic type ``Generator[YieldType, " "SendType, ReturnType]``. For example::" @@ -1709,7 +1996,7 @@ msgstr "" "Un générateur peut être annoté par le type générique ``Generator[YieldType, " "SendType, ReturnType]``. Par exemple ::" -#: library/typing.rst:1372 +#: library/typing.rst:1697 msgid "" "Note that unlike many other generics in the typing module, the ``SendType`` " "of :class:`Generator` behaves contravariantly, not covariantly or " @@ -1719,7 +2006,7 @@ msgstr "" "*typing*, le ``SendType`` de :class:`Generator` se comporte de manière " "contravariante, pas de manière covariante ou invariante." -#: library/typing.rst:1376 +#: library/typing.rst:1701 msgid "" "If your generator will only yield values, set the ``SendType`` and " "``ReturnType`` to ``None``::" @@ -1727,7 +2014,7 @@ msgstr "" "Si votre générateur ne donne que des valeurs, réglez les paramètres " "``SendType`` et ``ReturnType`` sur ``None`` ::" -#: library/typing.rst:1384 +#: library/typing.rst:1709 msgid "" "Alternatively, annotate your generator as having a return type of either " "``Iterable[YieldType]`` or ``Iterator[YieldType]``::" @@ -1735,7 +2022,7 @@ msgstr "" "Alternativement, annotez votre générateur comme ayant un type de retour soit " "``Iterable[YieldType]`` ou ``Iterator[YieldType]`` ::" -#: library/typing.rst:1392 +#: library/typing.rst:1717 msgid "" ":class:`collections.abc.Generator` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1743,15 +2030,15 @@ msgstr "" ":class:`collections.abc.Generator` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1398 +#: library/typing.rst:1723 msgid "An alias to :class:`collections.abc.Hashable`" msgstr "Un alias pour :class:`collections.abc.Hashable`" -#: library/typing.rst:1402 +#: library/typing.rst:1727 msgid "A generic version of :class:`collections.abc.Reversible`." msgstr "Une version générique de :class:`collections.abc.Reversible`." -#: library/typing.rst:1404 +#: library/typing.rst:1729 msgid "" ":class:`collections.abc.Reversible` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1759,15 +2046,15 @@ msgstr "" ":class:`collections.abc.Reversible` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1410 +#: library/typing.rst:1735 msgid "An alias to :class:`collections.abc.Sized`" msgstr "Un alias pour :class:`collections.abc.Sized`" -#: library/typing.rst:1413 +#: library/typing.rst:1738 msgid "Asynchronous programming" msgstr "" -#: library/typing.rst:1417 +#: library/typing.rst:1742 msgid "" "A generic version of :class:`collections.abc.Coroutine`. The variance and " "order of type variables correspond to those of :class:`Generator`, for " @@ -1777,7 +2064,7 @@ msgstr "" "l'ordre des variables de type correspondent à ceux de la classe :class:" "`Generator`, par exemple ::" -#: library/typing.rst:1430 +#: library/typing.rst:1755 msgid "" ":class:`collections.abc.Coroutine` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1785,7 +2072,7 @@ msgstr "" ":class:`collections.abc.Coroutine` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1436 +#: library/typing.rst:1761 msgid "" "An async generator can be annotated by the generic type " "``AsyncGenerator[YieldType, SendType]``. For example::" @@ -1793,7 +2080,7 @@ msgstr "" "Un générateur asynchrone peut être annoté par le type générique " "``AsyncGenerator[YieldType, SendType]``. Par exemple ::" -#: library/typing.rst:1445 +#: library/typing.rst:1770 msgid "" "Unlike normal generators, async generators cannot return a value, so there " "is no ``ReturnType`` type parameter. As with :class:`Generator`, the " @@ -1804,14 +2091,14 @@ msgstr "" "``ReturnType``. Comme avec :class:`Generator`, le ``SendType`` se comporte " "de manière contravariante." -#: library/typing.rst:1449 +#: library/typing.rst:1774 msgid "" "If your generator will only yield values, set the ``SendType`` to ``None``::" msgstr "" "Si votre générateur ne donne que des valeurs, réglez le paramètre " "``SendType`` sur ``None`` ::" -#: library/typing.rst:1457 +#: library/typing.rst:1782 msgid "" "Alternatively, annotate your generator as having a return type of either " "``AsyncIterable[YieldType]`` or ``AsyncIterator[YieldType]``::" @@ -1819,7 +2106,7 @@ msgstr "" "Alternativement, annotez votre générateur comme ayant un type de retour soit " "``AsyncIterable[YieldType]`` ou ``AsyncIterator[YieldType]`` ::" -#: library/typing.rst:1467 +#: library/typing.rst:1792 msgid "" ":class:`collections.abc.AsyncGenerator` now supports ``[]``. See :pep:`585` " "and :ref:`types-genericalias`." @@ -1827,11 +2114,11 @@ msgstr "" ":class:`collections.abc.AsyncGenerator` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1473 +#: library/typing.rst:1798 msgid "A generic version of :class:`collections.abc.AsyncIterable`." msgstr "Une version générique de :class:`collections.abc.AsyncIterable`." -#: library/typing.rst:1477 +#: library/typing.rst:1802 msgid "" ":class:`collections.abc.AsyncIterable` now supports ``[]``. See :pep:`585` " "and :ref:`types-genericalias`." @@ -1839,11 +2126,11 @@ msgstr "" ":class:`collections.abc.AsyncIterable` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1483 +#: library/typing.rst:1808 msgid "A generic version of :class:`collections.abc.AsyncIterator`." msgstr "Une version générique de :class:`collections.abc.AsyncIterator`." -#: library/typing.rst:1487 +#: library/typing.rst:1812 msgid "" ":class:`collections.abc.AsyncIterator` now supports ``[]``. See :pep:`585` " "and :ref:`types-genericalias`." @@ -1851,11 +2138,11 @@ msgstr "" ":class:`collections.abc.AsyncIterator` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1493 +#: library/typing.rst:1818 msgid "A generic version of :class:`collections.abc.Awaitable`." msgstr "Une version générique de :class:`collections.abc.Awaitable`." -#: library/typing.rst:1497 +#: library/typing.rst:1822 msgid "" ":class:`collections.abc.Awaitable` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -1863,15 +2150,15 @@ msgstr "" ":class:`collections.abc.Awaitable` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1503 +#: library/typing.rst:1828 msgid "Context manager types" msgstr "" -#: library/typing.rst:1507 +#: library/typing.rst:1832 msgid "A generic version of :class:`contextlib.AbstractContextManager`." msgstr "Une version générique de :class:`contextlib.AbstractContextManager`." -#: library/typing.rst:1512 +#: library/typing.rst:1837 msgid "" ":class:`contextlib.AbstractContextManager` now supports ``[]``. See :pep:" "`585` and :ref:`types-genericalias`." @@ -1879,12 +2166,12 @@ msgstr "" ":class:`contextlib.AbstractContextManager` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1518 +#: library/typing.rst:1843 msgid "A generic version of :class:`contextlib.AbstractAsyncContextManager`." msgstr "" "Une version générique de :class:`contextlib.AbstractAsyncContextManager`." -#: library/typing.rst:1523 +#: library/typing.rst:1848 msgid "" ":class:`contextlib.AbstractAsyncContextManager` now supports ``[]``. See :" "pep:`585` and :ref:`types-genericalias`." @@ -1892,15 +2179,15 @@ msgstr "" ":class:`contextlib.AbstractAsyncContextManager` prend désormais en charge " "``[]``. Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1528 +#: library/typing.rst:1853 msgid "Protocols" msgstr "" -#: library/typing.rst:1530 +#: library/typing.rst:1855 msgid "These protocols are decorated with :func:`runtime_checkable`." msgstr "" -#: library/typing.rst:1534 +#: library/typing.rst:1859 msgid "" "An ABC with one abstract method ``__abs__`` that is covariant in its return " "type." @@ -1908,27 +2195,27 @@ msgstr "" "Une ABC avec une méthode abstraite ``__abs__`` qui est covariante dans son " "type de retour." -#: library/typing.rst:1539 +#: library/typing.rst:1864 msgid "An ABC with one abstract method ``__bytes__``." msgstr "Une ABC avec une méthode abstraite ``__bytes__``." -#: library/typing.rst:1543 +#: library/typing.rst:1868 msgid "An ABC with one abstract method ``__complex__``." msgstr "Une ABC avec une méthode abstraite ``__complex__``." -#: library/typing.rst:1547 +#: library/typing.rst:1872 msgid "An ABC with one abstract method ``__float__``." msgstr "Une ABC avec une méthode abstraite ``__float__``." -#: library/typing.rst:1551 +#: library/typing.rst:1876 msgid "An ABC with one abstract method ``__index__``." msgstr "Une ABC avec une méthode abstraite ``__index__``." -#: library/typing.rst:1557 +#: library/typing.rst:1882 msgid "An ABC with one abstract method ``__int__``." msgstr "Une ABC avec une méthode abstraite ``__int__``." -#: library/typing.rst:1561 +#: library/typing.rst:1886 msgid "" "An ABC with one abstract method ``__round__`` that is covariant in its " "return type." @@ -1936,16 +2223,16 @@ msgstr "" "Une ABC avec une méthode abstraite ``__round__`` qui est covariante dans son " "type de retour." -#: library/typing.rst:1565 +#: library/typing.rst:1890 #, fuzzy msgid "Functions and decorators" msgstr "Classes, fonctions et décorateurs" -#: library/typing.rst:1569 +#: library/typing.rst:1894 msgid "Cast a value to a type." msgstr "Convertit une valeur en un type." -#: library/typing.rst:1571 +#: library/typing.rst:1896 msgid "" "This returns the value unchanged. To the type checker this signals that the " "return value has the designated type, but at runtime we intentionally don't " @@ -1956,7 +2243,7 @@ msgstr "" "intentionnellement, rien n'est vérifié (afin que cela soit aussi rapide que " "possible)." -#: library/typing.rst:1578 +#: library/typing.rst:1903 msgid "" "The ``@overload`` decorator allows describing functions and methods that " "support multiple different combinations of argument types. A series of " @@ -1982,13 +2269,13 @@ msgstr "" "`NotImplementedError`. Un exemple de surcharge qui donne un type plus précis " "que celui qui peut être exprimé à l'aide d'une variable union ou type ::" -#: library/typing.rst:1602 +#: library/typing.rst:1927 msgid "See :pep:`484` for details and comparison with other typing semantics." msgstr "" "Voir la :pep:`484` pour plus de détails et la comparaison avec d'autres " "sémantiques de typage." -#: library/typing.rst:1606 +#: library/typing.rst:1931 msgid "" "A decorator to indicate to type checkers that the decorated method cannot be " "overridden, and the decorated class cannot be subclassed. For example::" @@ -1997,13 +2284,13 @@ msgstr "" "décorée ne peut pas être remplacée et que la classe décorée ne peut pas être " "sous-classée. Par exemple ::" -#: library/typing.rst:1631 +#: library/typing.rst:1956 msgid "Decorator to indicate that annotations are not type hints." msgstr "" "Décorateur pour indiquer que les annotations ne sont pas des indications de " "type." -#: library/typing.rst:1633 +#: library/typing.rst:1958 msgid "" "This works as class or function :term:`decorator`. With a class, it applies " "recursively to all methods defined in that class (but not to methods defined " @@ -2014,16 +2301,16 @@ msgstr "" "méthodes définies dans cette classe (mais pas aux méthodes définies dans ses " "superclasses ou sous-classes)." -#: library/typing.rst:1637 +#: library/typing.rst:1962 msgid "This mutates the function(s) in place." msgstr "Cela fait muter la ou les fonctions en place." -#: library/typing.rst:1641 +#: library/typing.rst:1966 msgid "Decorator to give another decorator the :func:`no_type_check` effect." msgstr "" "Décorateur pour donner à un autre décorateur l'effet :func:`no_type_check`." -#: library/typing.rst:1643 +#: library/typing.rst:1968 msgid "" "This wraps the decorator with something that wraps the decorated function " "in :func:`no_type_check`." @@ -2031,13 +2318,13 @@ msgstr "" "Ceci enveloppe le décorateur avec quelque chose qui enveloppe la fonction " "décorée dans :func:`no_type_check`." -#: library/typing.rst:1648 +#: library/typing.rst:1973 msgid "Decorator to mark a class or function to be unavailable at runtime." msgstr "" "Décorateur pour marquer une classe ou une fonction comme étant indisponible " "au moment de l'exécution." -#: library/typing.rst:1650 +#: library/typing.rst:1975 msgid "" "This decorator is itself not available at runtime. It is mainly intended to " "mark classes that are defined in type stub files if an implementation " @@ -2048,7 +2335,7 @@ msgstr "" "d'annotations de type (*type stub file*, en anglais) si une implémentation " "renvoie une instance d'une classe privée ::" -#: library/typing.rst:1661 +#: library/typing.rst:1986 msgid "" "Note that returning instances of private classes is not recommended. It is " "usually preferable to make such classes public." @@ -2056,11 +2343,11 @@ msgstr "" "Notez qu'il n'est pas recommandé de renvoyer les instances des classes " "privées. Il est généralement préférable de rendre ces classes publiques." -#: library/typing.rst:1665 +#: library/typing.rst:1990 msgid "Introspection helpers" msgstr "" -#: library/typing.rst:1669 +#: library/typing.rst:1994 msgid "" "Return a dictionary containing type hints for a function, method, module or " "class object." @@ -2068,7 +2355,7 @@ msgstr "" "renvoie un dictionnaire contenant des indications de type pour une fonction, " "une méthode, un module ou un objet de classe." -#: library/typing.rst:1672 +#: library/typing.rst:1997 msgid "" "This is often the same as ``obj.__annotations__``. In addition, forward " "references encoded as string literals are handled by evaluating them in " @@ -2085,40 +2372,51 @@ msgstr "" "classe ``C``, renvoie un dictionnaire construit en fusionnant toutes les " "``__annotations__`` en parcourant ``C.__mro__`` en ordre inverse." -#: library/typing.rst:1680 +#: library/typing.rst:2005 msgid "" "The function recursively replaces all ``Annotated[T, ...]`` with ``T``, " "unless ``include_extras`` is set to ``True`` (see :class:`Annotated` for " "more information). For example::" msgstr "" -#: library/typing.rst:1693 +#: library/typing.rst:2020 +msgid "" +":func:`get_type_hints` does not work with imported :ref:`type aliases ` that include forward references. Enabling postponed evaluation of " +"annotations (:pep:`563`) may remove the need for most forward references." +msgstr "" + +#: library/typing.rst:2025 msgid "Added ``include_extras`` parameter as part of :pep:`593`." msgstr "" -#: library/typing.rst:1699 +#: library/typing.rst:2031 msgid "Provide basic introspection for generic types and special typing forms." msgstr "" "Fournit une introspection de base pour les types génériques et les formes " "spéciales de typage." -#: library/typing.rst:1701 +#: library/typing.rst:2033 #, fuzzy msgid "" "For a typing object of the form ``X[Y, Z, ...]`` these functions return " "``X`` and ``(Y, Z, ...)``. If ``X`` is a generic alias for a builtin or :mod:" -"`collections` class, it gets normalized to the original class. If ``X`` is " -"a :class:`Union` or :class:`Literal` contained in another generic type, the " -"order of ``(Y, Z, ...)`` may be different from the order of the original " -"arguments ``[Y, Z, ...]`` due to type caching. For unsupported objects " -"return ``None`` and ``()`` correspondingly. Examples::" +"`collections` class, it gets normalized to the original class. If ``X`` is a " +"union or :class:`Literal` contained in another generic type, the order of " +"``(Y, Z, ...)`` may be different from the order of the original arguments " +"``[Y, Z, ...]`` due to type caching. For unsupported objects return ``None`` " +"and ``()`` correspondingly. Examples::" msgstr "" "Pour un objet de typage de la forme ``X[Y, Z, ....]``, ces fonctions " "renvoient ``X`` et ``(Y, Z,...)``. Si ``X`` est un alias pour une classe " "native ou de :mod:`collections`, il est normalisé en la classe originale. " "Pour les objets non gérés, renvoie la paire ``None`` , ``()``. Exemples ::" -#: library/typing.rst:1720 +#: library/typing.rst:2052 +msgid "Check if a type is a :class:`TypedDict`." +msgstr "" + +#: library/typing.rst:2067 #, fuzzy msgid "" "A class used for internal typing representation of string forward " @@ -2133,18 +2431,18 @@ msgstr "" "instanciée par un utilisateur, mais peut être utilisée par des outils " "d'introspection." -#: library/typing.rst:1726 +#: library/typing.rst:2073 msgid "" ":pep:`585` generic types such as ``list[\"SomeClass\"]`` will not be " "implicitly transformed into ``list[ForwardRef(\"SomeClass\")]`` and thus " "will not automatically resolve to ``list[SomeClass]``." msgstr "" -#: library/typing.rst:1733 +#: library/typing.rst:2080 msgid "Constant" msgstr "Constante" -#: library/typing.rst:1737 +#: library/typing.rst:2084 msgid "" "A special constant that is assumed to be ``True`` by 3rd party static type " "checkers. It is ``False`` at runtime. Usage::" @@ -2152,7 +2450,7 @@ msgstr "" "Constante spéciale qui vaut ``True`` pour les vérificateurs de type " "statiques tiers et ``False`` à l'exécution. Utilisation ::" -#: library/typing.rst:1746 +#: library/typing.rst:2093 #, fuzzy msgid "" "The first type annotation must be enclosed in quotes, making it a \"forward " @@ -2167,7 +2465,7 @@ msgstr "" "sorte que la deuxième annotation n'a pas besoin d'être placée entre " "guillemets." -#: library/typing.rst:1753 +#: library/typing.rst:2100 msgid "" "If ``from __future__ import annotations`` is used in Python 3.7 or later, " "annotations are not evaluated at function definition time. Instead, they are " @@ -2175,6 +2473,20 @@ msgid "" "quotes around the annotation. (see :pep:`563`)." msgstr "" +#~ msgid "" +#~ "This also means that it is not possible to create a subtype of " +#~ "``Derived`` since it is an identity function at runtime, not an actual " +#~ "type::" +#~ msgstr "" +#~ "Cela signifie également qu'il n'est pas possible de créer un sous-type de " +#~ "``Derived`` puisqu'il s'agit d'une fonction d'identité au moment de " +#~ "l'exécution, pas d'un type réel ::" + +#~ msgid "You can use ``Optional[X]`` as a shorthand for ``Union[X, None]``." +#~ msgstr "" +#~ "Vous pouvez utiliser l'abréviation ``Optional[X]`` pour ``Union[X, " +#~ "None]``." + #~ msgid "" #~ "**Warning:** this will check only the presence of the required methods, " #~ "not their type signatures!" diff --git a/library/unittest.mock.po b/library/unittest.mock.po index 1ed0b356b..14eef9d47 100644 --- a/library/unittest.mock.po +++ b/library/unittest.mock.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-04-22 12:07+0200\n" "Last-Translator: Bousquié Pierre \n" "Language-Team: FRENCH \n" @@ -374,16 +374,18 @@ msgstr "" "l'attribut :attr:`return_value`." #: library/unittest.mock.rst:265 +#, fuzzy msgid "" -"*unsafe*: By default if any attribute starts with *assert* or *assret* will " -"raise an :exc:`AttributeError`. Passing ``unsafe=True`` will allow access to " -"these attributes." +"*unsafe*: By default, accessing any attribute with name starting with " +"*assert*, *assret*, *asert*, *aseert* or *assrt* will raise an :exc:" +"`AttributeError`. Passing ``unsafe=True`` will allow access to these " +"attributes." msgstr "" "*unsafe* : par défaut, si un attribut commence par *assert* ou *assret*, une " "exception :exc:`AttributeError` est levée. Le fait de passer ``unsafe=True`` " "permet d'accéder à ces attributs." -#: library/unittest.mock.rst:271 +#: library/unittest.mock.rst:272 msgid "" "*wraps*: Item for the mock object to wrap. If *wraps* is not ``None`` then " "calling the Mock will pass the call through to the wrapped object (returning " @@ -399,7 +401,7 @@ msgstr "" "d'accéder à un attribut qui n'existe pas lève une exception :exc:" "`AttributeError`)." -#: library/unittest.mock.rst:278 +#: library/unittest.mock.rst:279 msgid "" "If the mock has an explicit *return_value* set then calls are not passed to " "the wrapped object and the *return_value* is returned instead." @@ -408,7 +410,7 @@ msgstr "" "appels ne sont pas passés à l'objet simulé et c'est *return_value* qui est " "renvoyée à la place." -#: library/unittest.mock.rst:281 +#: library/unittest.mock.rst:282 msgid "" "*name*: If the mock has a name then it will be used in the repr of the mock. " "This can be useful for debugging. The name is propagated to child mocks." @@ -417,7 +419,7 @@ msgstr "" "du *mock*. C'est utile pour le débogage. Le nom est propagé aux enfants de " "l'objet *mock*." -#: library/unittest.mock.rst:285 +#: library/unittest.mock.rst:286 msgid "" "Mocks can also be called with arbitrary keyword arguments. These will be " "used to set attributes on the mock after it is created. See the :meth:" @@ -428,15 +430,15 @@ msgstr "" "après sa création. Voir la méthode :meth:`configure_mock` pour plus de " "détails." -#: library/unittest.mock.rst:291 +#: library/unittest.mock.rst:292 msgid "Assert that the mock was called at least once." msgstr "Asserter que le *mock* a été appelé au moins une fois." -#: library/unittest.mock.rst:302 +#: library/unittest.mock.rst:303 msgid "Assert that the mock was called exactly once." msgstr "Asserter que le *mock* a été appelé exactement une fois." -#: library/unittest.mock.rst:320 +#: library/unittest.mock.rst:321 #, fuzzy msgid "" "This method is a convenient way of asserting that the last call has been " @@ -445,7 +447,7 @@ msgstr "" "Cette méthode est un moyen pratique d'asserter que les appels sont effectués " "d'une manière particulière ::" -#: library/unittest.mock.rst:330 +#: library/unittest.mock.rst:331 #, fuzzy msgid "" "Assert that the mock was called exactly once and that call was with the " @@ -454,11 +456,11 @@ msgstr "" "Asserter que le simulacre a été appelé exactement une fois et que cet appel " "était avec les arguments spécifiés." -#: library/unittest.mock.rst:345 +#: library/unittest.mock.rst:346 msgid "assert the mock has been called with the specified arguments." msgstr "Asserter que le simulacre a été appelé avec les arguments spécifiés." -#: library/unittest.mock.rst:347 +#: library/unittest.mock.rst:348 msgid "" "The assert passes if the mock has *ever* been called, unlike :meth:" "`assert_called_with` and :meth:`assert_called_once_with` that only pass if " @@ -471,7 +473,7 @@ msgstr "" "correspond bien au dernier appel, et dans le cas de :meth:" "`assert_called_once_with` l'appel au simulacre doit être unique." -#: library/unittest.mock.rst:360 +#: library/unittest.mock.rst:361 msgid "" "assert the mock has been called with the specified calls. The :attr:" "`mock_calls` list is checked for the calls." @@ -479,7 +481,7 @@ msgstr "" "Asserter que le simulacre a été appelé avec les appels spécifiés. " "L'attribut :attr:`mock_calls` est comparé à la liste des appels." -#: library/unittest.mock.rst:363 +#: library/unittest.mock.rst:364 #, fuzzy msgid "" "If *any_order* is false then the calls must be sequential. There can be " @@ -489,7 +491,7 @@ msgstr "" "séquentiels. Il peut y avoir des appels supplémentaires avant ou après les " "appels spécifiés." -#: library/unittest.mock.rst:367 +#: library/unittest.mock.rst:368 msgid "" "If *any_order* is true then the calls can be in any order, but they must all " "appear in :attr:`mock_calls`." @@ -497,21 +499,21 @@ msgstr "" "Si *any_order* est vrai alors les appels peuvent être dans n'importe quel " "ordre, mais ils doivent tous apparaître dans :attr:`mock_calls`." -#: library/unittest.mock.rst:382 +#: library/unittest.mock.rst:383 msgid "Assert the mock was never called." msgstr "Asserter que le simulacre n'a jamais été appelé." -#: library/unittest.mock.rst:397 +#: library/unittest.mock.rst:398 msgid "The reset_mock method resets all the call attributes on a mock object:" msgstr "" "La méthode *reset_mock* réinitialise tous les attributs d'appel sur un " "simulacre :" -#: library/unittest.mock.rst:407 +#: library/unittest.mock.rst:408 msgid "Added two keyword only argument to the reset_mock function." msgstr "Ajout de deux arguments nommés à la fonction *reset_mock*." -#: library/unittest.mock.rst:410 +#: library/unittest.mock.rst:411 msgid "" "This can be useful where you want to make a series of assertions that reuse " "the same object. Note that :meth:`reset_mock` *doesn't* clear the return " @@ -528,13 +530,13 @@ msgstr "" "``True``. Les simulacres enfants et le simulacre de valeur de retour (le cas " "échéant) seront également réinitialisés." -#: library/unittest.mock.rst:418 +#: library/unittest.mock.rst:419 msgid "*return_value*, and :attr:`side_effect` are keyword only argument." msgstr "" "*return_value*, et :attr:`side_effect` sont utilisable uniquement par " "arguments nommés." -#: library/unittest.mock.rst:424 +#: library/unittest.mock.rst:425 msgid "" "Add a spec to a mock. *spec* can either be an object or a list of strings. " "Only attributes on the *spec* can be fetched as attributes from the mock." @@ -543,13 +545,13 @@ msgstr "" "liste de chaînes de caractères. Seuls les attributs de la spécification " "*spec* peuvent être récupérés en tant qu'attributs du simulacre." -#: library/unittest.mock.rst:428 +#: library/unittest.mock.rst:429 msgid "If *spec_set* is true then only attributes on the spec can be set." msgstr "" "Si *spec_set* est vrai, seuls les attributs de la spécification peuvent être " "définis." -#: library/unittest.mock.rst:433 +#: library/unittest.mock.rst:434 msgid "" "Attach a mock as an attribute of this one, replacing its name and parent. " "Calls to the attached mock will be recorded in the :attr:`method_calls` and :" @@ -560,11 +562,11 @@ msgstr "" "les attributs :attr:`method_calls` et :attr:`mock_calls` de l'instance " "courante." -#: library/unittest.mock.rst:440 +#: library/unittest.mock.rst:441 msgid "Set attributes on the mock through keyword arguments." msgstr "Définir les attributs sur le simulacre à l'aide d'arguments nommés." -#: library/unittest.mock.rst:442 +#: library/unittest.mock.rst:443 msgid "" "Attributes plus return values and side effects can be set on child mocks " "using standard dot notation and unpacking a dictionary in the method call:" @@ -573,13 +575,13 @@ msgstr "" "définis sur des simulacres enfants en utilisant la notation par points " "standard et en dépaquetant un dictionnaire dans l'appel de méthode :" -#: library/unittest.mock.rst:456 +#: library/unittest.mock.rst:457 msgid "The same thing can be achieved in the constructor call to mocks:" msgstr "" "La même chose peut être réalisée en utilisant le constructeur des " "simulacres :" -#: library/unittest.mock.rst:469 +#: library/unittest.mock.rst:470 msgid "" ":meth:`configure_mock` exists to make it easier to do configuration after " "the mock has been created." @@ -587,7 +589,7 @@ msgstr "" ":meth:`configure_mock` existe pour faciliter la configuration après la " "création du simulacre." -#: library/unittest.mock.rst:475 +#: library/unittest.mock.rst:476 msgid "" ":class:`Mock` objects limit the results of ``dir(some_mock)`` to useful " "results. For mocks with a *spec* this includes all the permitted attributes " @@ -597,7 +599,7 @@ msgstr "" "résultats utiles. Pour les simulacres avec une spécification *spec*, cela " "inclut tous les attributs autorisés du simulacre." -#: library/unittest.mock.rst:479 +#: library/unittest.mock.rst:480 msgid "" "See :data:`FILTER_DIR` for what this filtering does, and how to switch it " "off." @@ -605,7 +607,7 @@ msgstr "" "Voir :data:`FILTER_DIR` pour savoir ce que fait ce filtrage, et comment le " "désactiver." -#: library/unittest.mock.rst:485 +#: library/unittest.mock.rst:486 msgid "" "Create the child mocks for attributes and return value. By default child " "mocks will be the same type as the parent. Subclasses of Mock may want to " @@ -616,7 +618,7 @@ msgstr "" "sous-classes de *Mock* peuvent surcharger cette méthode pour personnaliser " "la façon dont les simulacres enfants sont créés." -#: library/unittest.mock.rst:490 +#: library/unittest.mock.rst:491 msgid "" "For non-callable mocks the callable variant will be used (rather than any " "custom subclass)." @@ -624,34 +626,34 @@ msgstr "" "Pour les simulacres non appelables, la variante appelable est utilisée " "(plutôt qu'une sous-classe personnalisée)." -#: library/unittest.mock.rst:496 +#: library/unittest.mock.rst:497 msgid "A boolean representing whether or not the mock object has been called:" msgstr "Un booléen représentant si le simulacre a bien été appelé ou non :" -#: library/unittest.mock.rst:507 +#: library/unittest.mock.rst:508 msgid "An integer telling you how many times the mock object has been called:" msgstr "Un entier indiquant combien de fois le simulacre a été appelé :" -#: library/unittest.mock.rst:519 +#: library/unittest.mock.rst:520 msgid "Set this to configure the value returned by calling the mock:" msgstr "" "Définir cette option pour configurer la valeur renvoyé par appel du " "simulacre :" -#: library/unittest.mock.rst:526 +#: library/unittest.mock.rst:527 msgid "" "The default return value is a mock object and you can configure it in the " "normal way:" msgstr "" "La valeur de revoie par défaut est un simulacre configurable normalement :" -#: library/unittest.mock.rst:535 +#: library/unittest.mock.rst:536 msgid ":attr:`return_value` can also be set in the constructor:" msgstr "" "L'attribut :attr:`return_value` peut également être défini dans le " "constructeur :" -#: library/unittest.mock.rst:546 +#: library/unittest.mock.rst:547 msgid "" "This can either be a function to be called when the mock is called, an " "iterable or an exception (class or instance) to be raised." @@ -659,7 +661,7 @@ msgstr "" "C'est soit une fonction à appeler lors de l'appel du simulacre, soit une " "exception (classe ou instance) à lever." -#: library/unittest.mock.rst:549 +#: library/unittest.mock.rst:550 msgid "" "If you pass in a function it will be called with same arguments as the mock " "and unless the function returns the :data:`DEFAULT` singleton the call to " @@ -673,7 +675,7 @@ msgstr "" "Si la fonction renvoie :data:`DEFAULT` alors le simulacre renvoie sa valeur " "normale (celle de :attr:`return_value`)." -#: library/unittest.mock.rst:555 +#: library/unittest.mock.rst:556 msgid "" "If you pass in an iterable, it is used to retrieve an iterator which must " "yield a value on every call. This value can either be an exception instance " @@ -686,7 +688,7 @@ msgstr "" "simulacre (le traitement :data:`DEFAULT` est identique au renvoie de la " "fonction simulée)." -#: library/unittest.mock.rst:560 +#: library/unittest.mock.rst:561 msgid "" "An example of a mock that raises an exception (to test exception handling of " "an API):" @@ -694,15 +696,15 @@ msgstr "" "Un exemple d'un simulacre qui lève une exception (pour tester la gestion des " "exceptions d'une API) :" -#: library/unittest.mock.rst:570 +#: library/unittest.mock.rst:571 msgid "Using :attr:`side_effect` to return a sequence of values:" msgstr "Utiliser :attr:`side_effect` pour renvoyer une séquence de valeurs :" -#: library/unittest.mock.rst:577 +#: library/unittest.mock.rst:578 msgid "Using a callable:" msgstr "Utilisation d'un objet appelable :" -#: library/unittest.mock.rst:587 +#: library/unittest.mock.rst:588 msgid "" ":attr:`side_effect` can be set in the constructor. Here's an example that " "adds one to the value the mock is called with and returns it:" @@ -710,11 +712,11 @@ msgstr "" "Un attribut :attr:`side_effect` peut être défini dans le constructeur. Voici " "un exemple qui ajoute un à la valeur du simulacre appelé et qui le renvoie :" -#: library/unittest.mock.rst:597 +#: library/unittest.mock.rst:598 msgid "Setting :attr:`side_effect` to ``None`` clears it:" msgstr "Positionner :attr:`side_effect` sur ``None`` l'efface :" -#: library/unittest.mock.rst:611 +#: library/unittest.mock.rst:612 #, fuzzy msgid "" "This is either ``None`` (if the mock hasn't been called), or the arguments " @@ -730,7 +732,7 @@ msgstr "" "ordonnés avec lequel le simulacre a été appelé (ou un *n*-uplet vide) et le " "second élément est l'ensemble des arguments nommés (ou un dictionnaire vide)." -#: library/unittest.mock.rst:644 +#: library/unittest.mock.rst:645 msgid "" ":attr:`call_args`, along with members of the lists :attr:`call_args_list`, :" "attr:`method_calls` and :attr:`mock_calls` are :data:`call` objects. These " @@ -743,11 +745,11 @@ msgstr "" "de faire des affirmations plus complexes sur chacun des arguments. Voir :ref:" "`appels comme *n*-uplets `." -#: library/unittest.mock.rst:650 +#: library/unittest.mock.rst:651 msgid "Added ``args`` and ``kwargs`` properties." msgstr "" -#: library/unittest.mock.rst:656 +#: library/unittest.mock.rst:657 msgid "" "This is a list of all the calls made to the mock object in sequence (so the " "length of the list is the number of times it has been called). Before any " @@ -756,47 +758,47 @@ msgid "" "`call_args_list`." msgstr "" -#: library/unittest.mock.rst:672 +#: library/unittest.mock.rst:673 msgid "" "Members of :attr:`call_args_list` are :data:`call` objects. These can be " "unpacked as tuples to get at the individual arguments. See :ref:`calls as " "tuples `." msgstr "" -#: library/unittest.mock.rst:679 +#: library/unittest.mock.rst:680 msgid "" "As well as tracking calls to themselves, mocks also track calls to methods " "and attributes, and *their* methods and attributes:" msgstr "" -#: library/unittest.mock.rst:690 +#: library/unittest.mock.rst:691 msgid "" "Members of :attr:`method_calls` are :data:`call` objects. These can be " "unpacked as tuples to get at the individual arguments. See :ref:`calls as " "tuples `." msgstr "" -#: library/unittest.mock.rst:697 +#: library/unittest.mock.rst:698 msgid "" ":attr:`mock_calls` records *all* calls to the mock object, its methods, " "magic methods *and* return value mocks." msgstr "" -#: library/unittest.mock.rst:715 +#: library/unittest.mock.rst:716 msgid "" "Members of :attr:`mock_calls` are :data:`call` objects. These can be " "unpacked as tuples to get at the individual arguments. See :ref:`calls as " "tuples `." msgstr "" -#: library/unittest.mock.rst:721 +#: library/unittest.mock.rst:722 msgid "" "The way :attr:`mock_calls` are recorded means that where nested calls are " "made, the parameters of ancestor calls are not recorded and so will always " "compare equal:" msgstr "" -#: library/unittest.mock.rst:735 +#: library/unittest.mock.rst:736 msgid "" "Normally the :attr:`__class__` attribute of an object will return its type. " "For a mock object with a :attr:`spec`, ``__class__`` returns the spec class " @@ -804,32 +806,32 @@ msgid "" "object they are replacing / masquerading as:" msgstr "" -#: library/unittest.mock.rst:744 +#: library/unittest.mock.rst:745 msgid "" ":attr:`__class__` is assignable to, this allows a mock to pass an :func:" "`isinstance` check without forcing you to use a spec:" msgstr "" -#: library/unittest.mock.rst:754 +#: library/unittest.mock.rst:755 msgid "" "A non-callable version of :class:`Mock`. The constructor parameters have the " "same meaning of :class:`Mock`, with the exception of *return_value* and " "*side_effect* which have no meaning on a non-callable mock." msgstr "" -#: library/unittest.mock.rst:758 +#: library/unittest.mock.rst:759 msgid "" "Mock objects that use a class or an instance as a :attr:`spec` or :attr:" "`spec_set` are able to pass :func:`isinstance` tests:" msgstr "" -#: library/unittest.mock.rst:768 +#: library/unittest.mock.rst:769 msgid "" "The :class:`Mock` classes have support for mocking magic methods. See :ref:" "`magic methods ` for the full details." msgstr "" -#: library/unittest.mock.rst:771 +#: library/unittest.mock.rst:772 msgid "" "The mock classes and the :func:`patch` decorators all take arbitrary keyword " "arguments for configuration. For the :func:`patch` decorators the keywords " @@ -837,14 +839,14 @@ msgid "" "arguments are for configuring attributes of the mock:" msgstr "" -#: library/unittest.mock.rst:782 +#: library/unittest.mock.rst:783 msgid "" "The return value and side effect of child mocks can be set in the same way, " "using dotted notation. As you can't use dotted names directly in a call you " "have to create a dictionary and unpack it using ``**``:" msgstr "" -#: library/unittest.mock.rst:797 +#: library/unittest.mock.rst:798 msgid "" "A callable mock which was created with a *spec* (or a *spec_set*) will " "introspect the specification object's signature when matching calls to the " @@ -852,7 +854,7 @@ msgid "" "whether they were passed positionally or by name::" msgstr "" -#: library/unittest.mock.rst:810 +#: library/unittest.mock.rst:811 msgid "" "This applies to :meth:`~Mock.assert_called_with`, :meth:`~Mock." "assert_called_once_with`, :meth:`~Mock.assert_has_calls` and :meth:`~Mock." @@ -860,76 +862,76 @@ msgid "" "calls on the mock object." msgstr "" -#: library/unittest.mock.rst:815 +#: library/unittest.mock.rst:816 msgid "Added signature introspection on specced and autospecced mock objects." msgstr "" -#: library/unittest.mock.rst:821 +#: library/unittest.mock.rst:822 msgid "" "A mock intended to be used as a property, or other descriptor, on a class. :" "class:`PropertyMock` provides :meth:`__get__` and :meth:`__set__` methods so " "you can specify a return value when it is fetched." msgstr "" -#: library/unittest.mock.rst:825 +#: library/unittest.mock.rst:826 msgid "" "Fetching a :class:`PropertyMock` instance from an object calls the mock, " "with no args. Setting it calls the mock with the value being set. ::" msgstr "" -#: library/unittest.mock.rst:846 +#: library/unittest.mock.rst:847 msgid "" "Because of the way mock attributes are stored you can't directly attach a :" "class:`PropertyMock` to a mock object. Instead you can attach it to the mock " "type object::" msgstr "" -#: library/unittest.mock.rst:860 +#: library/unittest.mock.rst:861 msgid "" "An asynchronous version of :class:`MagicMock`. The :class:`AsyncMock` object " "will behave so the object is recognized as an async function, and the result " "of a call is an awaitable." msgstr "" -#: library/unittest.mock.rst:870 +#: library/unittest.mock.rst:871 msgid "" "The result of ``mock()`` is an async function which will have the outcome of " "``side_effect`` or ``return_value`` after it has been awaited:" msgstr "" -#: library/unittest.mock.rst:873 +#: library/unittest.mock.rst:874 msgid "" "if ``side_effect`` is a function, the async function will return the result " "of that function," msgstr "" -#: library/unittest.mock.rst:875 +#: library/unittest.mock.rst:876 msgid "" "if ``side_effect`` is an exception, the async function will raise the " "exception," msgstr "" -#: library/unittest.mock.rst:877 +#: library/unittest.mock.rst:878 msgid "" "if ``side_effect`` is an iterable, the async function will return the next " "value of the iterable, however, if the sequence of result is exhausted, " "``StopAsyncIteration`` is raised immediately," msgstr "" -#: library/unittest.mock.rst:880 +#: library/unittest.mock.rst:881 msgid "" "if ``side_effect`` is not defined, the async function will return the value " "defined by ``return_value``, hence, by default, the async function returns a " "new :class:`AsyncMock` object." msgstr "" -#: library/unittest.mock.rst:885 +#: library/unittest.mock.rst:886 msgid "" "Setting the *spec* of a :class:`Mock` or :class:`MagicMock` to an async " "function will result in a coroutine object being returned after calling." msgstr "" -#: library/unittest.mock.rst:897 +#: library/unittest.mock.rst:898 msgid "" "Setting the *spec* of a :class:`Mock`, :class:`MagicMock`, or :class:" "`AsyncMock` to a class with asynchronous and synchronous functions will " @@ -939,23 +941,23 @@ msgid "" "functions will be :class:`AsyncMock`." msgstr "" -#: library/unittest.mock.rst:925 +#: library/unittest.mock.rst:926 msgid "" "Assert that the mock was awaited at least once. Note that this is separate " "from the object having been called, the ``await`` keyword must be used:" msgstr "" -#: library/unittest.mock.rst:944 +#: library/unittest.mock.rst:945 #, fuzzy msgid "Assert that the mock was awaited exactly once." msgstr "Asserter que le *mock* a été appelé exactement une fois." -#: library/unittest.mock.rst:960 +#: library/unittest.mock.rst:961 #, fuzzy msgid "Assert that the last await was with the specified arguments." msgstr "Asserter que le simulacre a été appelé avec les arguments spécifiés." -#: library/unittest.mock.rst:977 +#: library/unittest.mock.rst:978 #, fuzzy msgid "" "Assert that the mock was awaited exactly once and with the specified " @@ -964,12 +966,12 @@ msgstr "" "Asserter que le simulacre a été appelé exactement une fois et que cet appel " "était avec les arguments spécifiés." -#: library/unittest.mock.rst:994 +#: library/unittest.mock.rst:995 #, fuzzy msgid "Assert the mock has ever been awaited with the specified arguments." msgstr "Asserter que le simulacre a été appelé avec les arguments spécifiés." -#: library/unittest.mock.rst:1010 +#: library/unittest.mock.rst:1011 #, fuzzy msgid "" "Assert the mock has been awaited with the specified calls. The :attr:" @@ -978,7 +980,7 @@ msgstr "" "Asserter que le simulacre a été appelé avec les appels spécifiés. " "L'attribut :attr:`mock_calls` est comparé à la liste des appels." -#: library/unittest.mock.rst:1013 +#: library/unittest.mock.rst:1014 #, fuzzy msgid "" "If *any_order* is false then the awaits must be sequential. There can be " @@ -988,7 +990,7 @@ msgstr "" "séquentiels. Il peut y avoir des appels supplémentaires avant ou après les " "appels spécifiés." -#: library/unittest.mock.rst:1017 +#: library/unittest.mock.rst:1018 #, fuzzy msgid "" "If *any_order* is true then the awaits can be in any order, but they must " @@ -997,42 +999,42 @@ msgstr "" "Si *any_order* est vrai alors les appels peuvent être dans n'importe quel " "ordre, mais ils doivent tous apparaître dans :attr:`mock_calls`." -#: library/unittest.mock.rst:1037 +#: library/unittest.mock.rst:1038 #, fuzzy msgid "Assert that the mock was never awaited." msgstr "Asserter que le simulacre n'a jamais été appelé." -#: library/unittest.mock.rst:1044 +#: library/unittest.mock.rst:1045 msgid "" "See :func:`Mock.reset_mock`. Also sets :attr:`await_count` to 0, :attr:" "`await_args` to None, and clears the :attr:`await_args_list`." msgstr "" -#: library/unittest.mock.rst:1049 +#: library/unittest.mock.rst:1050 #, fuzzy msgid "" "An integer keeping track of how many times the mock object has been awaited." msgstr "Un entier indiquant combien de fois le simulacre a été appelé :" -#: library/unittest.mock.rst:1064 +#: library/unittest.mock.rst:1065 msgid "" "This is either ``None`` (if the mock hasn’t been awaited), or the arguments " "that the mock was last awaited with. Functions the same as :attr:`Mock." "call_args`." msgstr "" -#: library/unittest.mock.rst:1082 +#: library/unittest.mock.rst:1083 msgid "" "This is a list of all the awaits made to the mock object in sequence (so the " "length of the list is the number of times it has been awaited). Before any " "awaits have been made it is an empty list." msgstr "" -#: library/unittest.mock.rst:1101 +#: library/unittest.mock.rst:1102 msgid "Calling" msgstr "" -#: library/unittest.mock.rst:1103 +#: library/unittest.mock.rst:1104 msgid "" "Mock objects are callable. The call will return the value set as the :attr:" "`~Mock.return_value` attribute. The default return value is a new Mock " @@ -1041,26 +1043,26 @@ msgid "" "returned each time." msgstr "" -#: library/unittest.mock.rst:1109 +#: library/unittest.mock.rst:1110 msgid "" "Calls made to the object will be recorded in the attributes like :attr:" "`~Mock.call_args` and :attr:`~Mock.call_args_list`." msgstr "" -#: library/unittest.mock.rst:1112 +#: library/unittest.mock.rst:1113 msgid "" "If :attr:`~Mock.side_effect` is set then it will be called after the call " "has been recorded, so if :attr:`side_effect` raises an exception the call is " "still recorded." msgstr "" -#: library/unittest.mock.rst:1116 +#: library/unittest.mock.rst:1117 msgid "" "The simplest way to make a mock raise an exception when called is to make :" "attr:`~Mock.side_effect` an exception class or instance:" msgstr "" -#: library/unittest.mock.rst:1134 +#: library/unittest.mock.rst:1135 msgid "" "If :attr:`side_effect` is a function then whatever that function returns is " "what calls to the mock return. The :attr:`side_effect` function is called " @@ -1068,7 +1070,7 @@ msgid "" "value of the call dynamically, based on the input:" msgstr "" -#: library/unittest.mock.rst:1150 +#: library/unittest.mock.rst:1151 msgid "" "If you want the mock to still return the default return value (a new mock), " "or any set return value, then there are two ways of doing this. Either " @@ -1076,36 +1078,36 @@ msgid "" "data:`DEFAULT`:" msgstr "" -#: library/unittest.mock.rst:1169 +#: library/unittest.mock.rst:1170 msgid "" "To remove a :attr:`side_effect`, and return to the default behaviour, set " "the :attr:`side_effect` to ``None``:" msgstr "" -#: library/unittest.mock.rst:1183 +#: library/unittest.mock.rst:1184 msgid "" "The :attr:`side_effect` can also be any iterable object. Repeated calls to " "the mock will return values from the iterable (until the iterable is " "exhausted and a :exc:`StopIteration` is raised):" msgstr "" -#: library/unittest.mock.rst:1199 +#: library/unittest.mock.rst:1200 msgid "" "If any members of the iterable are exceptions they will be raised instead of " "returned::" msgstr "" -#: library/unittest.mock.rst:1217 +#: library/unittest.mock.rst:1218 msgid "Deleting Attributes" msgstr "" -#: library/unittest.mock.rst:1219 +#: library/unittest.mock.rst:1220 msgid "" "Mock objects create attributes on demand. This allows them to pretend to be " "objects of any type." msgstr "" -#: library/unittest.mock.rst:1222 +#: library/unittest.mock.rst:1223 msgid "" "You may want a mock object to return ``False`` to a :func:`hasattr` call, or " "raise an :exc:`AttributeError` when an attribute is fetched. You can do this " @@ -1113,17 +1115,17 @@ msgid "" "convenient." msgstr "" -#: library/unittest.mock.rst:1226 +#: library/unittest.mock.rst:1227 msgid "" "You \"block\" attributes by deleting them. Once deleted, accessing an " "attribute will raise an :exc:`AttributeError`." msgstr "" -#: library/unittest.mock.rst:1243 +#: library/unittest.mock.rst:1244 msgid "Mock names and the name attribute" msgstr "" -#: library/unittest.mock.rst:1245 +#: library/unittest.mock.rst:1246 msgid "" "Since \"name\" is an argument to the :class:`Mock` constructor, if you want " "your mock object to have a \"name\" attribute you can't just pass it in at " @@ -1131,17 +1133,17 @@ msgid "" "configure_mock`::" msgstr "" -#: library/unittest.mock.rst:1255 +#: library/unittest.mock.rst:1256 msgid "" "A simpler option is to simply set the \"name\" attribute after mock " "creation::" msgstr "" -#: library/unittest.mock.rst:1262 +#: library/unittest.mock.rst:1263 msgid "Attaching Mocks as Attributes" msgstr "" -#: library/unittest.mock.rst:1264 +#: library/unittest.mock.rst:1265 msgid "" "When you attach a mock as an attribute of another mock (or as the return " "value) it becomes a \"child\" of that mock. Calls to the child are recorded " @@ -1152,20 +1154,20 @@ msgid "" "calls between mocks:" msgstr "" -#: library/unittest.mock.rst:1282 +#: library/unittest.mock.rst:1283 msgid "" "The exception to this is if the mock has a name. This allows you to prevent " "the \"parenting\" if for some reason you don't want it to happen." msgstr "" -#: library/unittest.mock.rst:1293 +#: library/unittest.mock.rst:1294 msgid "" "Mocks created for you by :func:`patch` are automatically given names. To " "attach mocks that have names to a parent you use the :meth:`~Mock." "attach_mock` method::" msgstr "" -#: library/unittest.mock.rst:1311 +#: library/unittest.mock.rst:1312 msgid "" "The only exceptions are magic methods and attributes (those that have " "leading and trailing double underscores). Mock doesn't create these but " @@ -1175,11 +1177,11 @@ msgid "" "support see :ref:`magic methods `." msgstr "" -#: library/unittest.mock.rst:1320 +#: library/unittest.mock.rst:1321 msgid "The patchers" msgstr "" -#: library/unittest.mock.rst:1322 +#: library/unittest.mock.rst:1323 msgid "" "The patch decorators are used for patching objects only within the scope of " "the function they decorate. They automatically handle the unpatching for " @@ -1187,17 +1189,17 @@ msgid "" "in with statements or as class decorators." msgstr "" -#: library/unittest.mock.rst:1329 +#: library/unittest.mock.rst:1330 msgid "patch" msgstr "" -#: library/unittest.mock.rst:1333 +#: library/unittest.mock.rst:1334 msgid "" "The key is to do the patching in the right namespace. See the section `where " "to patch`_." msgstr "" -#: library/unittest.mock.rst:1337 +#: library/unittest.mock.rst:1338 msgid "" ":func:`patch` acts as a function decorator, class decorator or a context " "manager. Inside the body of the function or with statement, the *target* is " @@ -1205,7 +1207,7 @@ msgid "" "patch is undone." msgstr "" -#: library/unittest.mock.rst:1342 +#: library/unittest.mock.rst:1343 msgid "" "If *new* is omitted, then the target is replaced with an :class:`AsyncMock` " "if the patched object is an async function or a :class:`MagicMock` " @@ -1215,7 +1217,7 @@ msgid "" "by the context manager." msgstr "" -#: library/unittest.mock.rst:1350 +#: library/unittest.mock.rst:1351 msgid "" "*target* should be a string in the form ``'package.module.ClassName'``. The " "*target* is imported and the specified object replaced with the *new* " @@ -1224,26 +1226,26 @@ msgid "" "function is executed, not at decoration time." msgstr "" -#: library/unittest.mock.rst:1356 +#: library/unittest.mock.rst:1357 msgid "" "The *spec* and *spec_set* keyword arguments are passed to the :class:" "`MagicMock` if patch is creating one for you." msgstr "" -#: library/unittest.mock.rst:1359 +#: library/unittest.mock.rst:1360 msgid "" "In addition you can pass ``spec=True`` or ``spec_set=True``, which causes " "patch to pass in the object being mocked as the spec/spec_set object." msgstr "" -#: library/unittest.mock.rst:1362 +#: library/unittest.mock.rst:1363 msgid "" "*new_callable* allows you to specify a different class, or callable object, " "that will be called to create the *new* object. By default :class:" "`AsyncMock` is used for async functions and :class:`MagicMock` for the rest." msgstr "" -#: library/unittest.mock.rst:1366 +#: library/unittest.mock.rst:1367 msgid "" "A more powerful form of *spec* is *autospec*. If you set ``autospec=True`` " "then the mock will be created with a spec from the object being replaced. " @@ -1255,13 +1257,13 @@ msgid "" "func:`create_autospec` function and :ref:`auto-speccing`." msgstr "" -#: library/unittest.mock.rst:1376 +#: library/unittest.mock.rst:1377 msgid "" "Instead of ``autospec=True`` you can pass ``autospec=some_object`` to use an " "arbitrary object as the spec instead of the one being replaced." msgstr "" -#: library/unittest.mock.rst:1379 +#: library/unittest.mock.rst:1380 msgid "" "By default :func:`patch` will fail to replace attributes that don't exist. " "If you pass in ``create=True``, and the attribute doesn't exist, patch will " @@ -1272,13 +1274,13 @@ msgid "" "write passing tests against APIs that don't actually exist!" msgstr "" -#: library/unittest.mock.rst:1389 +#: library/unittest.mock.rst:1390 msgid "" "If you are patching builtins in a module then you don't need to pass " "``create=True``, it will be added by default." msgstr "" -#: library/unittest.mock.rst:1393 +#: library/unittest.mock.rst:1394 msgid "" "Patch can be used as a :class:`TestCase` class decorator. It works by " "decorating each test method in the class. This reduces the boilerplate code " @@ -1289,7 +1291,7 @@ msgid "" "TEST_PREFIX``." msgstr "" -#: library/unittest.mock.rst:1400 +#: library/unittest.mock.rst:1401 msgid "" "Patch can be used as a context manager, with the with statement. Here the " "patching applies to the indented block after the with statement. If you use " @@ -1297,65 +1299,65 @@ msgid "" "very useful if :func:`patch` is creating a mock object for you." msgstr "" -#: library/unittest.mock.rst:1405 +#: library/unittest.mock.rst:1406 msgid "" ":func:`patch` takes arbitrary keyword arguments. These will be passed to :" "class:`AsyncMock` if the patched object is asynchronous, to :class:" "`MagicMock` otherwise or to *new_callable* if specified." msgstr "" -#: library/unittest.mock.rst:1409 +#: library/unittest.mock.rst:1410 msgid "" "``patch.dict(...)``, ``patch.multiple(...)`` and ``patch.object(...)`` are " "available for alternate use-cases." msgstr "" -#: library/unittest.mock.rst:1412 +#: library/unittest.mock.rst:1413 msgid "" ":func:`patch` as function decorator, creating the mock for you and passing " "it into the decorated function::" msgstr "" -#: library/unittest.mock.rst:1422 +#: library/unittest.mock.rst:1423 msgid "" "Patching a class replaces the class with a :class:`MagicMock` *instance*. If " "the class is instantiated in the code under test then it will be the :attr:" "`~Mock.return_value` of the mock that will be used." msgstr "" -#: library/unittest.mock.rst:1426 +#: library/unittest.mock.rst:1427 msgid "" "If the class is instantiated multiple times you could use :attr:`~Mock." "side_effect` to return a new mock each time. Alternatively you can set the " "*return_value* to be anything you want." msgstr "" -#: library/unittest.mock.rst:1430 +#: library/unittest.mock.rst:1431 msgid "" "To configure return values on methods of *instances* on the patched class " "you must do this on the :attr:`return_value`. For example::" msgstr "" -#: library/unittest.mock.rst:1444 +#: library/unittest.mock.rst:1445 msgid "" "If you use *spec* or *spec_set* and :func:`patch` is replacing a *class*, " "then the return value of the created mock will have the same spec. ::" msgstr "" -#: library/unittest.mock.rst:1454 +#: library/unittest.mock.rst:1455 msgid "" "The *new_callable* argument is useful where you want to use an alternative " "class to the default :class:`MagicMock` for the created mock. For example, " "if you wanted a :class:`NonCallableMock` to be used::" msgstr "" -#: library/unittest.mock.rst:1467 +#: library/unittest.mock.rst:1468 msgid "" "Another use case might be to replace an object with an :class:`io.StringIO` " "instance::" msgstr "" -#: library/unittest.mock.rst:1480 +#: library/unittest.mock.rst:1481 msgid "" "When :func:`patch` is creating a mock for you, it is common that the first " "thing you need to do is to configure the mock. Some of that configuration " @@ -1363,7 +1365,7 @@ msgid "" "call will be used to set attributes on the created mock::" msgstr "" -#: library/unittest.mock.rst:1492 +#: library/unittest.mock.rst:1493 msgid "" "As well as attributes on the created mock attributes, like the :attr:`~Mock." "return_value` and :attr:`~Mock.side_effect`, of child mocks can also be " @@ -1372,36 +1374,36 @@ msgid "" "func:`patch` call using ``**``::" msgstr "" -#: library/unittest.mock.rst:1508 +#: library/unittest.mock.rst:1509 msgid "" "By default, attempting to patch a function in a module (or a method or an " "attribute in a class) that does not exist will fail with :exc:" "`AttributeError`::" msgstr "" -#: library/unittest.mock.rst:1520 +#: library/unittest.mock.rst:1521 msgid "" "but adding ``create=True`` in the call to :func:`patch` will make the " "previous example work as expected::" msgstr "" -#: library/unittest.mock.rst:1531 +#: library/unittest.mock.rst:1532 msgid "" ":func:`patch` now returns an :class:`AsyncMock` if the target is an async " "function." msgstr "" -#: library/unittest.mock.rst:1535 +#: library/unittest.mock.rst:1536 msgid "patch.object" msgstr "" -#: library/unittest.mock.rst:1539 +#: library/unittest.mock.rst:1540 msgid "" "patch the named member (*attribute*) on an object (*target*) with a mock " "object." msgstr "" -#: library/unittest.mock.rst:1542 +#: library/unittest.mock.rst:1543 msgid "" ":func:`patch.object` can be used as a decorator, class decorator or a " "context manager. Arguments *new*, *spec*, *create*, *spec_set*, *autospec* " @@ -1410,80 +1412,80 @@ msgid "" "configuring the mock object it creates." msgstr "" -#: library/unittest.mock.rst:1548 +#: library/unittest.mock.rst:1549 msgid "" "When used as a class decorator :func:`patch.object` honours ``patch." "TEST_PREFIX`` for choosing which methods to wrap." msgstr "" -#: library/unittest.mock.rst:1551 +#: library/unittest.mock.rst:1552 msgid "" "You can either call :func:`patch.object` with three arguments or two " "arguments. The three argument form takes the object to be patched, the " "attribute name and the object to replace the attribute with." msgstr "" -#: library/unittest.mock.rst:1555 +#: library/unittest.mock.rst:1556 msgid "" "When calling with the two argument form you omit the replacement object, and " "a mock is created for you and passed in as an extra argument to the " "decorated function:" msgstr "" -#: library/unittest.mock.rst:1566 +#: library/unittest.mock.rst:1567 msgid "" "*spec*, *create* and the other arguments to :func:`patch.object` have the " "same meaning as they do for :func:`patch`." msgstr "" -#: library/unittest.mock.rst:1571 +#: library/unittest.mock.rst:1572 msgid "patch.dict" msgstr "" -#: library/unittest.mock.rst:1575 +#: library/unittest.mock.rst:1576 msgid "" "Patch a dictionary, or dictionary like object, and restore the dictionary to " "its original state after the test." msgstr "" -#: library/unittest.mock.rst:1578 +#: library/unittest.mock.rst:1579 msgid "" "*in_dict* can be a dictionary or a mapping like container. If it is a " "mapping then it must at least support getting, setting and deleting items " "plus iterating over keys." msgstr "" -#: library/unittest.mock.rst:1582 +#: library/unittest.mock.rst:1583 msgid "" "*in_dict* can also be a string specifying the name of the dictionary, which " "will then be fetched by importing it." msgstr "" -#: library/unittest.mock.rst:1585 +#: library/unittest.mock.rst:1586 msgid "" "*values* can be a dictionary of values to set in the dictionary. *values* " "can also be an iterable of ``(key, value)`` pairs." msgstr "" -#: library/unittest.mock.rst:1588 +#: library/unittest.mock.rst:1589 msgid "" "If *clear* is true then the dictionary will be cleared before the new values " "are set." msgstr "" -#: library/unittest.mock.rst:1591 +#: library/unittest.mock.rst:1592 msgid "" ":func:`patch.dict` can also be called with arbitrary keyword arguments to " "set values in the dictionary." msgstr "" -#: library/unittest.mock.rst:1596 +#: library/unittest.mock.rst:1597 msgid "" ":func:`patch.dict` now returns the patched dictionary when used as a context " "manager." msgstr "" -#: library/unittest.mock.rst:1599 +#: library/unittest.mock.rst:1600 #, fuzzy msgid "" ":func:`patch.dict` can be used as a context manager, decorator or class " @@ -1492,33 +1494,33 @@ msgstr "" "Comme tout décorateur, :func:`patch` peut être utilisé comme gestionnaire de " "contexte avec une instruction *with* ::" -#: library/unittest.mock.rst:1609 +#: library/unittest.mock.rst:1610 msgid "" "When used as a class decorator :func:`patch.dict` honours ``patch." "TEST_PREFIX`` (default to ``'test'``) for choosing which methods to wrap:" msgstr "" -#: library/unittest.mock.rst:1620 +#: library/unittest.mock.rst:1621 msgid "" "If you want to use a different prefix for your test, you can inform the " "patchers of the different prefix by setting ``patch.TEST_PREFIX``. For more " "details about how to change the value of see :ref:`test-prefix`." msgstr "" -#: library/unittest.mock.rst:1624 +#: library/unittest.mock.rst:1625 msgid "" ":func:`patch.dict` can be used to add members to a dictionary, or simply let " "a test change a dictionary, and ensure the dictionary is restored when the " "test ends." msgstr "" -#: library/unittest.mock.rst:1645 +#: library/unittest.mock.rst:1646 msgid "" "Keywords can be used in the :func:`patch.dict` call to set values in the " "dictionary:" msgstr "" -#: library/unittest.mock.rst:1655 +#: library/unittest.mock.rst:1656 msgid "" ":func:`patch.dict` can be used with dictionary like objects that aren't " "actually dictionaries. At the very minimum they must support item getting, " @@ -1527,18 +1529,18 @@ msgid "" "`__delitem__` and either :meth:`__iter__` or :meth:`__contains__`." msgstr "" -#: library/unittest.mock.rst:1684 +#: library/unittest.mock.rst:1685 msgid "patch.multiple" msgstr "" -#: library/unittest.mock.rst:1688 +#: library/unittest.mock.rst:1689 msgid "" "Perform multiple patches in a single call. It takes the object to be patched " "(either as an object or a string to fetch the object by importing) and " "keyword arguments for the patches::" msgstr "" -#: library/unittest.mock.rst:1695 +#: library/unittest.mock.rst:1696 msgid "" "Use :data:`DEFAULT` as the value if you want :func:`patch.multiple` to " "create mocks for you. In this case the created mocks are passed into a " @@ -1546,7 +1548,7 @@ msgid "" "`patch.multiple` is used as a context manager." msgstr "" -#: library/unittest.mock.rst:1700 +#: library/unittest.mock.rst:1701 msgid "" ":func:`patch.multiple` can be used as a decorator, class decorator or a " "context manager. The arguments *spec*, *spec_set*, *create*, *autospec* and " @@ -1554,13 +1556,13 @@ msgid "" "will be applied to *all* patches done by :func:`patch.multiple`." msgstr "" -#: library/unittest.mock.rst:1705 +#: library/unittest.mock.rst:1706 msgid "" "When used as a class decorator :func:`patch.multiple` honours ``patch." "TEST_PREFIX`` for choosing which methods to wrap." msgstr "" -#: library/unittest.mock.rst:1708 +#: library/unittest.mock.rst:1709 msgid "" "If you want :func:`patch.multiple` to create mocks for you, then you can " "use :data:`DEFAULT` as the value. If you use :func:`patch.multiple` as a " @@ -1568,32 +1570,32 @@ msgid "" "keyword. ::" msgstr "" -#: library/unittest.mock.rst:1722 +#: library/unittest.mock.rst:1723 msgid "" ":func:`patch.multiple` can be nested with other ``patch`` decorators, but " "put arguments passed by keyword *after* any of the standard arguments " "created by :func:`patch`::" msgstr "" -#: library/unittest.mock.rst:1734 +#: library/unittest.mock.rst:1735 msgid "" "If :func:`patch.multiple` is used as a context manager, the value returned " "by the context manager is a dictionary where created mocks are keyed by " "name::" msgstr "" -#: library/unittest.mock.rst:1748 +#: library/unittest.mock.rst:1749 msgid "patch methods: start and stop" msgstr "" -#: library/unittest.mock.rst:1750 +#: library/unittest.mock.rst:1751 msgid "" "All the patchers have :meth:`start` and :meth:`stop` methods. These make it " "simpler to do patching in ``setUp`` methods or where you want to do multiple " "patches without nesting decorators or with statements." msgstr "" -#: library/unittest.mock.rst:1754 +#: library/unittest.mock.rst:1755 msgid "" "To use them call :func:`patch`, :func:`patch.object` or :func:`patch.dict` " "as normal and keep a reference to the returned ``patcher`` object. You can " @@ -1601,19 +1603,19 @@ msgid "" "it." msgstr "" -#: library/unittest.mock.rst:1758 +#: library/unittest.mock.rst:1759 msgid "" "If you are using :func:`patch` to create a mock for you then it will be " "returned by the call to ``patcher.start``. ::" msgstr "" -#: library/unittest.mock.rst:1772 +#: library/unittest.mock.rst:1773 msgid "" "A typical use case for this might be for doing multiple patches in the " "``setUp`` method of a :class:`TestCase`::" msgstr "" -#: library/unittest.mock.rst:1794 +#: library/unittest.mock.rst:1795 msgid "" "If you use this technique you must ensure that the patching is \"undone\" by " "calling ``stop``. This can be fiddlier than you might think, because if an " @@ -1621,37 +1623,37 @@ msgid "" "`unittest.TestCase.addCleanup` makes this easier::" msgstr "" -#: library/unittest.mock.rst:1809 +#: library/unittest.mock.rst:1810 msgid "" "As an added bonus you no longer need to keep a reference to the ``patcher`` " "object." msgstr "" -#: library/unittest.mock.rst:1812 +#: library/unittest.mock.rst:1813 msgid "" "It is also possible to stop all patches which have been started by using :" "func:`patch.stopall`." msgstr "" -#: library/unittest.mock.rst:1817 +#: library/unittest.mock.rst:1818 msgid "Stop all active patches. Only stops patches started with ``start``." msgstr "" -#: library/unittest.mock.rst:1823 +#: library/unittest.mock.rst:1824 msgid "patch builtins" msgstr "" -#: library/unittest.mock.rst:1824 +#: library/unittest.mock.rst:1825 msgid "" "You can patch any builtins within a module. The following example patches " "builtin :func:`ord`::" msgstr "" -#: library/unittest.mock.rst:1839 +#: library/unittest.mock.rst:1840 msgid "TEST_PREFIX" msgstr "" -#: library/unittest.mock.rst:1841 +#: library/unittest.mock.rst:1842 msgid "" "All of the patchers can be used as class decorators. When used in this way " "they wrap every test method on the class. The patchers recognise methods " @@ -1659,39 +1661,39 @@ msgid "" "the :class:`unittest.TestLoader` finds test methods by default." msgstr "" -#: library/unittest.mock.rst:1846 +#: library/unittest.mock.rst:1847 msgid "" "It is possible that you want to use a different prefix for your tests. You " "can inform the patchers of the different prefix by setting ``patch." "TEST_PREFIX``::" msgstr "" -#: library/unittest.mock.rst:1869 +#: library/unittest.mock.rst:1870 msgid "Nesting Patch Decorators" msgstr "" -#: library/unittest.mock.rst:1871 +#: library/unittest.mock.rst:1872 msgid "" "If you want to perform multiple patches then you can simply stack up the " "decorators." msgstr "" -#: library/unittest.mock.rst:1874 +#: library/unittest.mock.rst:1875 msgid "You can stack up multiple patch decorators using this pattern:" msgstr "" -#: library/unittest.mock.rst:1890 +#: library/unittest.mock.rst:1891 msgid "" "Note that the decorators are applied from the bottom upwards. This is the " "standard way that Python applies decorators. The order of the created mocks " "passed into your test function matches this order." msgstr "" -#: library/unittest.mock.rst:1898 +#: library/unittest.mock.rst:1899 msgid "Where to patch" msgstr "" -#: library/unittest.mock.rst:1900 +#: library/unittest.mock.rst:1901 msgid "" ":func:`patch` works by (temporarily) changing the object that a *name* " "points to with another one. There can be many names pointing to any " @@ -1699,19 +1701,19 @@ msgid "" "the name used by the system under test." msgstr "" -#: library/unittest.mock.rst:1905 +#: library/unittest.mock.rst:1906 msgid "" "The basic principle is that you patch where an object is *looked up*, which " "is not necessarily the same place as where it is defined. A couple of " "examples will help to clarify this." msgstr "" -#: library/unittest.mock.rst:1909 +#: library/unittest.mock.rst:1910 msgid "" "Imagine we have a project that we want to test with the following structure::" msgstr "" -#: library/unittest.mock.rst:1918 +#: library/unittest.mock.rst:1919 msgid "" "Now we want to test ``some_function`` but we want to mock out ``SomeClass`` " "using :func:`patch`. The problem is that when we import module b, which we " @@ -1721,7 +1723,7 @@ msgid "" "like our patching had no effect." msgstr "" -#: library/unittest.mock.rst:1925 +#: library/unittest.mock.rst:1926 msgid "" "The key is to patch out ``SomeClass`` where it is used (or where it is " "looked up). In this case ``some_function`` will actually look up " @@ -1729,7 +1731,7 @@ msgid "" "look like::" msgstr "" -#: library/unittest.mock.rst:1931 +#: library/unittest.mock.rst:1932 msgid "" "However, consider the alternative scenario where instead of ``from a import " "SomeClass`` module b does ``import a`` and ``some_function`` uses ``a." @@ -1738,11 +1740,11 @@ msgid "" "``a.SomeClass`` instead::" msgstr "" -#: library/unittest.mock.rst:1940 +#: library/unittest.mock.rst:1941 msgid "Patching Descriptors and Proxy Objects" msgstr "" -#: library/unittest.mock.rst:1942 +#: library/unittest.mock.rst:1943 msgid "" "Both patch_ and patch.object_ correctly patch and restore descriptors: class " "methods, static methods and properties. You should patch these on the " @@ -1751,22 +1753,22 @@ msgid "" "voidspace.org.uk/python/weblog/arch_d7_2010_12_04.shtml#e1198>`_." msgstr "" -#: library/unittest.mock.rst:1950 +#: library/unittest.mock.rst:1951 msgid "MagicMock and magic method support" msgstr "" -#: library/unittest.mock.rst:1955 +#: library/unittest.mock.rst:1956 msgid "Mocking Magic Methods" msgstr "" -#: library/unittest.mock.rst:1957 +#: library/unittest.mock.rst:1958 msgid "" ":class:`Mock` supports mocking the Python protocol methods, also known as " "\"magic methods\". This allows mock objects to replace containers or other " "objects that implement Python protocols." msgstr "" -#: library/unittest.mock.rst:1961 +#: library/unittest.mock.rst:1962 msgid "" "Because magic methods are looked up differently from normal methods [#]_, " "this support has been specially implemented. This means that only specific " @@ -1774,74 +1776,74 @@ msgid "" "them. If there are any missing that you need please let us know." msgstr "" -#: library/unittest.mock.rst:1966 +#: library/unittest.mock.rst:1967 msgid "" "You mock magic methods by setting the method you are interested in to a " "function or a mock instance. If you are using a function then it *must* take " "``self`` as the first argument [#]_." msgstr "" -#: library/unittest.mock.rst:1989 +#: library/unittest.mock.rst:1990 msgid "" "One use case for this is for mocking objects used as context managers in a :" "keyword:`with` statement:" msgstr "" -#: library/unittest.mock.rst:2001 +#: library/unittest.mock.rst:2002 msgid "" "Calls to magic methods do not appear in :attr:`~Mock.method_calls`, but they " "are recorded in :attr:`~Mock.mock_calls`." msgstr "" -#: library/unittest.mock.rst:2006 +#: library/unittest.mock.rst:2007 msgid "" "If you use the *spec* keyword argument to create a mock then attempting to " "set a magic method that isn't in the spec will raise an :exc:" "`AttributeError`." msgstr "" -#: library/unittest.mock.rst:2009 +#: library/unittest.mock.rst:2010 msgid "The full list of supported magic methods is:" msgstr "" -#: library/unittest.mock.rst:2011 +#: library/unittest.mock.rst:2012 msgid "``__hash__``, ``__sizeof__``, ``__repr__`` and ``__str__``" msgstr "" -#: library/unittest.mock.rst:2012 +#: library/unittest.mock.rst:2013 msgid "``__dir__``, ``__format__`` and ``__subclasses__``" msgstr "``__dir__``, ``__format__`` et ``__subclasses__``" -#: library/unittest.mock.rst:2013 +#: library/unittest.mock.rst:2014 #, fuzzy msgid "``__round__``, ``__floor__``, ``__trunc__`` and ``__ceil__``" msgstr "``__floor__``, ``__trunc__`` et ``__ceil__``" -#: library/unittest.mock.rst:2014 +#: library/unittest.mock.rst:2015 msgid "" "Comparisons: ``__lt__``, ``__gt__``, ``__le__``, ``__ge__``, ``__eq__`` and " "``__ne__``" msgstr "" -#: library/unittest.mock.rst:2016 +#: library/unittest.mock.rst:2017 msgid "" "Container methods: ``__getitem__``, ``__setitem__``, ``__delitem__``, " "``__contains__``, ``__len__``, ``__iter__``, ``__reversed__`` and " "``__missing__``" msgstr "" -#: library/unittest.mock.rst:2019 +#: library/unittest.mock.rst:2020 #, fuzzy msgid "" "Context manager: ``__enter__``, ``__exit__``, ``__aenter__`` and " "``__aexit__``" msgstr "``__get__``, ``__set__`` et ``__delete__``" -#: library/unittest.mock.rst:2020 +#: library/unittest.mock.rst:2021 msgid "Unary numeric methods: ``__neg__``, ``__pos__`` and ``__invert__``" msgstr "" -#: library/unittest.mock.rst:2021 +#: library/unittest.mock.rst:2022 msgid "" "The numeric methods (including right hand and in-place variants): " "``__add__``, ``__sub__``, ``__mul__``, ``__matmul__``, ``__div__``, " @@ -1850,100 +1852,100 @@ msgid "" "``__pow__``" msgstr "" -#: library/unittest.mock.rst:2025 +#: library/unittest.mock.rst:2026 msgid "" "Numeric conversion methods: ``__complex__``, ``__int__``, ``__float__`` and " "``__index__``" msgstr "" -#: library/unittest.mock.rst:2027 +#: library/unittest.mock.rst:2028 msgid "Descriptor methods: ``__get__``, ``__set__`` and ``__delete__``" msgstr "" -#: library/unittest.mock.rst:2028 +#: library/unittest.mock.rst:2029 msgid "" "Pickling: ``__reduce__``, ``__reduce_ex__``, ``__getinitargs__``, " "``__getnewargs__``, ``__getstate__`` and ``__setstate__``" msgstr "" -#: library/unittest.mock.rst:2030 +#: library/unittest.mock.rst:2031 msgid "File system path representation: ``__fspath__``" msgstr "" -#: library/unittest.mock.rst:2031 +#: library/unittest.mock.rst:2032 msgid "Asynchronous iteration methods: ``__aiter__`` and ``__anext__``" msgstr "" -#: library/unittest.mock.rst:2033 +#: library/unittest.mock.rst:2034 msgid "Added support for :func:`os.PathLike.__fspath__`." msgstr "" -#: library/unittest.mock.rst:2036 +#: library/unittest.mock.rst:2037 msgid "" "Added support for ``__aenter__``, ``__aexit__``, ``__aiter__`` and " "``__anext__``." msgstr "" -#: library/unittest.mock.rst:2040 +#: library/unittest.mock.rst:2041 msgid "" "The following methods exist but are *not* supported as they are either in " "use by mock, can't be set dynamically, or can cause problems:" msgstr "" -#: library/unittest.mock.rst:2043 +#: library/unittest.mock.rst:2044 msgid "``__getattr__``, ``__setattr__``, ``__init__`` and ``__new__``" msgstr "" -#: library/unittest.mock.rst:2044 +#: library/unittest.mock.rst:2045 msgid "" "``__prepare__``, ``__instancecheck__``, ``__subclasscheck__``, ``__del__``" msgstr "" -#: library/unittest.mock.rst:2049 +#: library/unittest.mock.rst:2050 msgid "Magic Mock" msgstr "" -#: library/unittest.mock.rst:2051 +#: library/unittest.mock.rst:2052 msgid "" "There are two ``MagicMock`` variants: :class:`MagicMock` and :class:" "`NonCallableMagicMock`." msgstr "" -#: library/unittest.mock.rst:2056 +#: library/unittest.mock.rst:2057 msgid "" "``MagicMock`` is a subclass of :class:`Mock` with default implementations of " "most of the magic methods. You can use ``MagicMock`` without having to " "configure the magic methods yourself." msgstr "" -#: library/unittest.mock.rst:2060 +#: library/unittest.mock.rst:2061 msgid "The constructor parameters have the same meaning as for :class:`Mock`." msgstr "" -#: library/unittest.mock.rst:2062 +#: library/unittest.mock.rst:2063 msgid "" "If you use the *spec* or *spec_set* arguments then *only* magic methods that " "exist in the spec will be created." msgstr "" -#: library/unittest.mock.rst:2068 +#: library/unittest.mock.rst:2069 msgid "A non-callable version of :class:`MagicMock`." msgstr "" -#: library/unittest.mock.rst:2070 +#: library/unittest.mock.rst:2071 msgid "" "The constructor parameters have the same meaning as for :class:`MagicMock`, " "with the exception of *return_value* and *side_effect* which have no meaning " "on a non-callable mock." msgstr "" -#: library/unittest.mock.rst:2074 +#: library/unittest.mock.rst:2075 msgid "" "The magic methods are setup with :class:`MagicMock` objects, so you can " "configure them and use them in the usual way:" msgstr "" -#: library/unittest.mock.rst:2084 +#: library/unittest.mock.rst:2085 msgid "" "By default many of the protocol methods are required to return objects of a " "specific type. These methods are preconfigured with a default return value, " @@ -1952,83 +1954,83 @@ msgid "" "manually if you want to change the default." msgstr "" -#: library/unittest.mock.rst:2090 +#: library/unittest.mock.rst:2091 msgid "Methods and their defaults:" msgstr "" -#: library/unittest.mock.rst:2092 +#: library/unittest.mock.rst:2093 msgid "``__lt__``: ``NotImplemented``" msgstr "``__lt__``: ``NotImplemented``" -#: library/unittest.mock.rst:2093 +#: library/unittest.mock.rst:2094 msgid "``__gt__``: ``NotImplemented``" msgstr "``__gt__``: ``NotImplemented``" -#: library/unittest.mock.rst:2094 +#: library/unittest.mock.rst:2095 msgid "``__le__``: ``NotImplemented``" msgstr "``__le__``: ``NotImplemented``" -#: library/unittest.mock.rst:2095 +#: library/unittest.mock.rst:2096 msgid "``__ge__``: ``NotImplemented``" msgstr "``__ge__``: ``NotImplemented``" -#: library/unittest.mock.rst:2096 +#: library/unittest.mock.rst:2097 msgid "``__int__``: ``1``" msgstr "``__int__``: ``1``" -#: library/unittest.mock.rst:2097 +#: library/unittest.mock.rst:2098 msgid "``__contains__``: ``False``" msgstr "``__contains__``: ``False``" -#: library/unittest.mock.rst:2098 +#: library/unittest.mock.rst:2099 msgid "``__len__``: ``0``" msgstr "``__int__``: ``0``" -#: library/unittest.mock.rst:2099 +#: library/unittest.mock.rst:2100 msgid "``__iter__``: ``iter([])``" msgstr "``__iter__``: ``iter([])``" -#: library/unittest.mock.rst:2100 +#: library/unittest.mock.rst:2101 msgid "``__exit__``: ``False``" msgstr "``__exit__``: ``False``" -#: library/unittest.mock.rst:2101 +#: library/unittest.mock.rst:2102 msgid "``__aexit__``: ``False``" msgstr "``__exit__``: ``False``" -#: library/unittest.mock.rst:2102 +#: library/unittest.mock.rst:2103 msgid "``__complex__``: ``1j``" msgstr "``__complex__``: ``1j``" -#: library/unittest.mock.rst:2103 +#: library/unittest.mock.rst:2104 msgid "``__float__``: ``1.0``" msgstr "``__float__``: ``1.0``" -#: library/unittest.mock.rst:2104 +#: library/unittest.mock.rst:2105 msgid "``__bool__``: ``True``" msgstr "``__bool__``: ``True``" -#: library/unittest.mock.rst:2105 +#: library/unittest.mock.rst:2106 msgid "``__index__``: ``1``" msgstr "``__index__``: ``1``" -#: library/unittest.mock.rst:2106 +#: library/unittest.mock.rst:2107 msgid "``__hash__``: default hash for the mock" msgstr "" -#: library/unittest.mock.rst:2107 +#: library/unittest.mock.rst:2108 msgid "``__str__``: default str for the mock" msgstr "" -#: library/unittest.mock.rst:2108 +#: library/unittest.mock.rst:2109 msgid "``__sizeof__``: default sizeof for the mock" msgstr "" -#: library/unittest.mock.rst:2110 +#: library/unittest.mock.rst:2111 msgid "For example:" msgstr "Par exemple :" -#: library/unittest.mock.rst:2122 +#: library/unittest.mock.rst:2123 msgid "" "The two equality methods, :meth:`__eq__` and :meth:`__ne__`, are special. " "They do the default equality comparison on identity, using the :attr:`~Mock." @@ -2036,102 +2038,102 @@ msgid "" "something else::" msgstr "" -#: library/unittest.mock.rst:2136 +#: library/unittest.mock.rst:2137 msgid "" "The return value of :meth:`MagicMock.__iter__` can be any iterable object " "and isn't required to be an iterator:" msgstr "" -#: library/unittest.mock.rst:2146 +#: library/unittest.mock.rst:2147 msgid "" "If the return value *is* an iterator, then iterating over it once will " "consume it and subsequent iterations will result in an empty list:" msgstr "" -#: library/unittest.mock.rst:2155 +#: library/unittest.mock.rst:2156 msgid "" "``MagicMock`` has all of the supported magic methods configured except for " "some of the obscure and obsolete ones. You can still set these up if you " "want." msgstr "" -#: library/unittest.mock.rst:2158 +#: library/unittest.mock.rst:2159 msgid "" "Magic methods that are supported but not setup by default in ``MagicMock`` " "are:" msgstr "" -#: library/unittest.mock.rst:2160 +#: library/unittest.mock.rst:2161 msgid "``__subclasses__``" msgstr "``__subclasses__``" -#: library/unittest.mock.rst:2161 +#: library/unittest.mock.rst:2162 msgid "``__dir__``" msgstr "``__dir__``" -#: library/unittest.mock.rst:2162 +#: library/unittest.mock.rst:2163 msgid "``__format__``" msgstr "``__format__``" -#: library/unittest.mock.rst:2163 +#: library/unittest.mock.rst:2164 msgid "``__get__``, ``__set__`` and ``__delete__``" msgstr "``__get__``, ``__set__`` et ``__delete__``" -#: library/unittest.mock.rst:2164 +#: library/unittest.mock.rst:2165 msgid "``__reversed__`` and ``__missing__``" msgstr "``__reversed__`` et ``__missing__``" -#: library/unittest.mock.rst:2165 +#: library/unittest.mock.rst:2166 msgid "" "``__reduce__``, ``__reduce_ex__``, ``__getinitargs__``, ``__getnewargs__``, " "``__getstate__`` and ``__setstate__``" msgstr "" -#: library/unittest.mock.rst:2167 +#: library/unittest.mock.rst:2168 msgid "``__getformat__`` and ``__setformat__``" msgstr "``__getformat__`` et ``__setformat__``" -#: library/unittest.mock.rst:2171 +#: library/unittest.mock.rst:2172 msgid "" "Magic methods *should* be looked up on the class rather than the instance. " "Different versions of Python are inconsistent about applying this rule. The " "supported protocol methods should work with all supported versions of Python." msgstr "" -#: library/unittest.mock.rst:2175 +#: library/unittest.mock.rst:2176 msgid "" "The function is basically hooked up to the class, but each ``Mock`` instance " "is kept isolated from the others." msgstr "" -#: library/unittest.mock.rst:2180 +#: library/unittest.mock.rst:2181 msgid "Helpers" msgstr "" -#: library/unittest.mock.rst:2183 +#: library/unittest.mock.rst:2184 msgid "sentinel" msgstr "" -#: library/unittest.mock.rst:2187 +#: library/unittest.mock.rst:2188 msgid "" "The ``sentinel`` object provides a convenient way of providing unique " "objects for your tests." msgstr "" -#: library/unittest.mock.rst:2190 +#: library/unittest.mock.rst:2191 msgid "" "Attributes are created on demand when you access them by name. Accessing the " "same attribute will always return the same object. The objects returned have " "a sensible repr so that test failure messages are readable." msgstr "" -#: library/unittest.mock.rst:2194 +#: library/unittest.mock.rst:2195 msgid "" "The ``sentinel`` attributes now preserve their identity when they are :mod:" "`copied ` or :mod:`pickled `." msgstr "" -#: library/unittest.mock.rst:2198 +#: library/unittest.mock.rst:2199 msgid "" "Sometimes when testing you need to test that a specific object is passed as " "an argument to another method, or returned. It can be common to create named " @@ -2139,28 +2141,28 @@ msgid "" "creating and testing the identity of objects like this." msgstr "" -#: library/unittest.mock.rst:2203 +#: library/unittest.mock.rst:2204 msgid "" "In this example we monkey patch ``method`` to return ``sentinel." "some_object``:" msgstr "" -#: library/unittest.mock.rst:2215 +#: library/unittest.mock.rst:2216 msgid "DEFAULT" msgstr "" -#: library/unittest.mock.rst:2220 +#: library/unittest.mock.rst:2221 msgid "" "The :data:`DEFAULT` object is a pre-created sentinel (actually ``sentinel." "DEFAULT``). It can be used by :attr:`~Mock.side_effect` functions to " "indicate that the normal return value should be used." msgstr "" -#: library/unittest.mock.rst:2226 +#: library/unittest.mock.rst:2227 msgid "call" msgstr "" -#: library/unittest.mock.rst:2230 +#: library/unittest.mock.rst:2231 msgid "" ":func:`call` is a helper object for making simpler assertions, for comparing " "with :attr:`~Mock.call_args`, :attr:`~Mock.call_args_list`, :attr:`~Mock." @@ -2168,13 +2170,13 @@ msgid "" "with :meth:`~Mock.assert_has_calls`." msgstr "" -#: library/unittest.mock.rst:2243 +#: library/unittest.mock.rst:2244 msgid "" "For a call object that represents multiple calls, :meth:`call_list` returns " "a list of all the intermediate calls as well as the final call." msgstr "" -#: library/unittest.mock.rst:2247 +#: library/unittest.mock.rst:2248 msgid "" "``call_list`` is particularly useful for making assertions on \"chained calls" "\". A chained call is multiple calls on a single line of code. This results " @@ -2182,13 +2184,13 @@ msgid "" "constructing the sequence of calls can be tedious." msgstr "" -#: library/unittest.mock.rst:2252 +#: library/unittest.mock.rst:2253 msgid "" ":meth:`~call.call_list` can construct the sequence of calls from the same " "chained call:" msgstr "" -#: library/unittest.mock.rst:2269 +#: library/unittest.mock.rst:2270 msgid "" "A ``call`` object is either a tuple of (positional args, keyword args) or " "(name, positional args, keyword args) depending on how it was constructed. " @@ -2198,7 +2200,7 @@ msgid "" "to get at the individual arguments they contain." msgstr "" -#: library/unittest.mock.rst:2276 +#: library/unittest.mock.rst:2277 msgid "" "The ``call`` objects in :attr:`Mock.call_args` and :attr:`Mock." "call_args_list` are two-tuples of (positional args, keyword args) whereas " @@ -2207,7 +2209,7 @@ msgid "" "args)." msgstr "" -#: library/unittest.mock.rst:2281 +#: library/unittest.mock.rst:2282 msgid "" "You can use their \"tupleness\" to pull out the individual arguments for " "more complex introspection and assertions. The positional arguments are a " @@ -2215,29 +2217,29 @@ msgid "" "arguments are a dictionary:" msgstr "" -#: library/unittest.mock.rst:2314 +#: library/unittest.mock.rst:2315 msgid "create_autospec" msgstr "" -#: library/unittest.mock.rst:2318 +#: library/unittest.mock.rst:2319 msgid "" "Create a mock object using another object as a spec. Attributes on the mock " "will use the corresponding attribute on the *spec* object as their spec." msgstr "" -#: library/unittest.mock.rst:2322 +#: library/unittest.mock.rst:2323 msgid "" "Functions or methods being mocked will have their arguments checked to " "ensure that they are called with the correct signature." msgstr "" -#: library/unittest.mock.rst:2325 +#: library/unittest.mock.rst:2326 msgid "" "If *spec_set* is ``True`` then attempting to set attributes that don't exist " "on the spec object will raise an :exc:`AttributeError`." msgstr "" -#: library/unittest.mock.rst:2328 +#: library/unittest.mock.rst:2329 msgid "" "If a class is used as a spec then the return value of the mock (the instance " "of the class) will have the same spec. You can use a class as the spec for " @@ -2245,29 +2247,29 @@ msgid "" "be callable if instances of the mock are callable." msgstr "" -#: library/unittest.mock.rst:2333 +#: library/unittest.mock.rst:2334 msgid "" ":func:`create_autospec` also takes arbitrary keyword arguments that are " "passed to the constructor of the created mock." msgstr "" -#: library/unittest.mock.rst:2336 +#: library/unittest.mock.rst:2337 msgid "" "See :ref:`auto-speccing` for examples of how to use auto-speccing with :func:" "`create_autospec` and the *autospec* argument to :func:`patch`." msgstr "" -#: library/unittest.mock.rst:2342 +#: library/unittest.mock.rst:2343 msgid "" ":func:`create_autospec` now returns an :class:`AsyncMock` if the target is " "an async function." msgstr "" -#: library/unittest.mock.rst:2347 +#: library/unittest.mock.rst:2348 msgid "ANY" msgstr "" -#: library/unittest.mock.rst:2351 +#: library/unittest.mock.rst:2352 msgid "" "Sometimes you may need to make assertions about *some* of the arguments in a " "call to mock, but either not care about some of the arguments or want to " @@ -2275,24 +2277,24 @@ msgid "" "assertions on them." msgstr "" -#: library/unittest.mock.rst:2356 +#: library/unittest.mock.rst:2357 msgid "" "To ignore certain arguments you can pass in objects that compare equal to " "*everything*. Calls to :meth:`~Mock.assert_called_with` and :meth:`~Mock." "assert_called_once_with` will then succeed no matter what was passed in." msgstr "" -#: library/unittest.mock.rst:2365 +#: library/unittest.mock.rst:2366 msgid "" ":data:`ANY` can also be used in comparisons with call lists like :attr:" "`~Mock.mock_calls`:" msgstr "" -#: library/unittest.mock.rst:2378 +#: library/unittest.mock.rst:2379 msgid "FILTER_DIR" msgstr "" -#: library/unittest.mock.rst:2382 +#: library/unittest.mock.rst:2383 msgid "" ":data:`FILTER_DIR` is a module level variable that controls the way mock " "objects respond to :func:`dir` (only for Python 2.6 or more recent). The " @@ -2301,7 +2303,7 @@ msgid "" "diagnostic purposes, then set ``mock.FILTER_DIR = False``." msgstr "" -#: library/unittest.mock.rst:2388 +#: library/unittest.mock.rst:2389 msgid "" "With filtering on, ``dir(some_mock)`` shows only useful attributes and will " "include any dynamically created attributes that wouldn't normally be shown. " @@ -2310,7 +2312,7 @@ msgid "" "yet:" msgstr "" -#: library/unittest.mock.rst:2415 +#: library/unittest.mock.rst:2416 msgid "" "Many of the not-very-useful (private to :class:`Mock` rather than the thing " "being mocked) underscore and double underscore prefixed attributes have been " @@ -2319,31 +2321,31 @@ msgid "" "switch :data:`FILTER_DIR`:" msgstr "" -#: library/unittest.mock.rst:2436 +#: library/unittest.mock.rst:2437 msgid "" "Alternatively you can just use ``vars(my_mock)`` (instance members) and " "``dir(type(my_mock))`` (type members) to bypass the filtering irrespective " "of :data:`mock.FILTER_DIR`." msgstr "" -#: library/unittest.mock.rst:2442 +#: library/unittest.mock.rst:2443 msgid "mock_open" msgstr "" -#: library/unittest.mock.rst:2446 +#: library/unittest.mock.rst:2447 msgid "" "A helper function to create a mock to replace the use of :func:`open`. It " "works for :func:`open` called directly or used as a context manager." msgstr "" -#: library/unittest.mock.rst:2449 +#: library/unittest.mock.rst:2450 msgid "" "The *mock* argument is the mock object to configure. If ``None`` (the " "default) then a :class:`MagicMock` will be created for you, with the API " "limited to methods or attributes available on standard file handles." msgstr "" -#: library/unittest.mock.rst:2453 +#: library/unittest.mock.rst:2454 msgid "" "*read_data* is a string for the :meth:`~io.IOBase.read`, :meth:`~io.IOBase." "readline`, and :meth:`~io.IOBase.readlines` methods of the file handle to " @@ -2356,51 +2358,51 @@ msgid "" "realistic filesystem for testing." msgstr "" -#: library/unittest.mock.rst:2463 +#: library/unittest.mock.rst:2464 msgid "" "Added :meth:`~io.IOBase.readline` and :meth:`~io.IOBase.readlines` support. " "The mock of :meth:`~io.IOBase.read` changed to consume *read_data* rather " "than returning it on each call." msgstr "" -#: library/unittest.mock.rst:2468 +#: library/unittest.mock.rst:2469 msgid "*read_data* is now reset on each call to the *mock*." msgstr "" -#: library/unittest.mock.rst:2471 +#: library/unittest.mock.rst:2472 msgid "" "Added :meth:`__iter__` to implementation so that iteration (such as in for " "loops) correctly consumes *read_data*." msgstr "" -#: library/unittest.mock.rst:2475 +#: library/unittest.mock.rst:2476 msgid "" "Using :func:`open` as a context manager is a great way to ensure your file " "handles are closed properly and is becoming common::" msgstr "" -#: library/unittest.mock.rst:2481 +#: library/unittest.mock.rst:2482 msgid "" "The issue is that even if you mock out the call to :func:`open` it is the " "*returned object* that is used as a context manager (and has :meth:" "`__enter__` and :meth:`__exit__` called)." msgstr "" -#: library/unittest.mock.rst:2485 +#: library/unittest.mock.rst:2486 msgid "" "Mocking context managers with a :class:`MagicMock` is common enough and " "fiddly enough that a helper function is useful. ::" msgstr "" -#: library/unittest.mock.rst:2502 +#: library/unittest.mock.rst:2503 msgid "And for reading files::" msgstr "" -#: library/unittest.mock.rst:2515 +#: library/unittest.mock.rst:2516 msgid "Autospeccing" msgstr "" -#: library/unittest.mock.rst:2517 +#: library/unittest.mock.rst:2518 msgid "" "Autospeccing is based on the existing :attr:`spec` feature of mock. It " "limits the api of mocks to the api of an original object (the spec), but it " @@ -2410,11 +2412,11 @@ msgid "" "`TypeError` if they are called incorrectly." msgstr "" -#: library/unittest.mock.rst:2524 +#: library/unittest.mock.rst:2525 msgid "Before I explain how auto-speccing works, here's why it is needed." msgstr "" -#: library/unittest.mock.rst:2526 +#: library/unittest.mock.rst:2527 msgid "" ":class:`Mock` is a very powerful and flexible object, but it suffers from " "two flaws when used to mock out objects from a system under test. One of " @@ -2422,25 +2424,25 @@ msgid "" "general problem with using mock objects." msgstr "" -#: library/unittest.mock.rst:2531 +#: library/unittest.mock.rst:2532 msgid "" "First the problem specific to :class:`Mock`. :class:`Mock` has two assert " "methods that are extremely handy: :meth:`~Mock.assert_called_with` and :meth:" "`~Mock.assert_called_once_with`." msgstr "" -#: library/unittest.mock.rst:2544 +#: library/unittest.mock.rst:2545 msgid "" "Because mocks auto-create attributes on demand, and allow you to call them " "with arbitrary arguments, if you misspell one of these assert methods then " "your assertion is gone:" msgstr "" -#: library/unittest.mock.rst:2554 +#: library/unittest.mock.rst:2555 msgid "Your tests can pass silently and incorrectly because of the typo." msgstr "" -#: library/unittest.mock.rst:2556 +#: library/unittest.mock.rst:2557 msgid "" "The second issue is more general to mocking. If you refactor some of your " "code, rename members and so on, any tests for code that is still using the " @@ -2448,7 +2450,7 @@ msgid "" "means your tests can all pass even though your code is broken." msgstr "" -#: library/unittest.mock.rst:2561 +#: library/unittest.mock.rst:2562 msgid "" "Note that this is another reason why you need integration tests as well as " "unit tests. Testing everything in isolation is all fine and dandy, but if " @@ -2456,20 +2458,20 @@ msgid "" "room for bugs that tests might have caught." msgstr "" -#: library/unittest.mock.rst:2566 +#: library/unittest.mock.rst:2567 msgid "" ":mod:`mock` already provides a feature to help with this, called speccing. " "If you use a class or instance as the :attr:`spec` for a mock then you can " "only access attributes on the mock that exist on the real class:" msgstr "" -#: library/unittest.mock.rst:2577 +#: library/unittest.mock.rst:2578 msgid "" "The spec only applies to the mock itself, so we still have the same issue " "with any methods on the mock:" msgstr "" -#: library/unittest.mock.rst:2586 +#: library/unittest.mock.rst:2587 msgid "" "Auto-speccing solves this problem. You can either pass ``autospec=True`` to :" "func:`patch` / :func:`patch.object` or use the :func:`create_autospec` " @@ -2481,24 +2483,24 @@ msgid "" "import modules) without a big performance hit." msgstr "" -#: library/unittest.mock.rst:2595 +#: library/unittest.mock.rst:2596 msgid "Here's an example of it in use::" msgstr "" -#: library/unittest.mock.rst:2605 +#: library/unittest.mock.rst:2606 msgid "" "You can see that :class:`request.Request` has a spec. :class:`request." "Request` takes two arguments in the constructor (one of which is *self*). " "Here's what happens if we try to call it incorrectly::" msgstr "" -#: library/unittest.mock.rst:2614 +#: library/unittest.mock.rst:2615 msgid "" "The spec also applies to instantiated classes (i.e. the return value of " "specced mocks)::" msgstr "" -#: library/unittest.mock.rst:2621 +#: library/unittest.mock.rst:2622 msgid "" ":class:`Request` objects are not callable, so the return value of " "instantiating our mocked out :class:`request.Request` is a non-callable " @@ -2506,20 +2508,20 @@ msgid "" "error::" msgstr "" -#: library/unittest.mock.rst:2633 +#: library/unittest.mock.rst:2634 msgid "" "In many cases you will just be able to add ``autospec=True`` to your " "existing :func:`patch` calls and then be protected against bugs due to typos " "and api changes." msgstr "" -#: library/unittest.mock.rst:2637 +#: library/unittest.mock.rst:2638 msgid "" "As well as using *autospec* through :func:`patch` there is a :func:" "`create_autospec` for creating autospecced mocks directly:" msgstr "" -#: library/unittest.mock.rst:2645 +#: library/unittest.mock.rst:2646 msgid "" "This isn't without caveats and limitations however, which is why it is not " "the default behaviour. In order to know what attributes are available on the " @@ -2531,7 +2533,7 @@ msgid "" "objects so that introspection is safe [#]_." msgstr "" -#: library/unittest.mock.rst:2654 +#: library/unittest.mock.rst:2655 msgid "" "A more serious problem is that it is common for instance attributes to be " "created in the :meth:`__init__` method and not to exist on the class at all. " @@ -2539,7 +2541,7 @@ msgid "" "the api to visible attributes. ::" msgstr "" -#: library/unittest.mock.rst:2671 +#: library/unittest.mock.rst:2672 msgid "" "There are a few different ways of resolving this problem. The easiest, but " "not necessarily the least annoying, way is to simply set the required " @@ -2548,7 +2550,7 @@ msgid "" "setting them::" msgstr "" -#: library/unittest.mock.rst:2682 +#: library/unittest.mock.rst:2683 msgid "" "There is a more aggressive version of both *spec* and *autospec* that *does* " "prevent you setting non-existent attributes. This is useful if you want to " @@ -2556,7 +2558,7 @@ msgid "" "this particular scenario:" msgstr "" -#: library/unittest.mock.rst:2695 +#: library/unittest.mock.rst:2696 msgid "" "Probably the best way of solving the problem is to add class attributes as " "default values for instance members initialised in :meth:`__init__`. Note " @@ -2565,7 +2567,7 @@ msgid "" "faster too. e.g." msgstr "" -#: library/unittest.mock.rst:2705 +#: library/unittest.mock.rst:2706 msgid "" "This brings up another issue. It is relatively common to provide a default " "value of ``None`` for members that will later be an object of a different " @@ -2576,7 +2578,7 @@ msgid "" "These will just be ordinary mocks (well - MagicMocks):" msgstr "" -#: library/unittest.mock.rst:2720 +#: library/unittest.mock.rst:2721 msgid "" "If modifying your production classes to add defaults isn't to your liking " "then there are more options. One of these is simply to use an instance as " @@ -2587,25 +2589,25 @@ msgid "" "alternative object as the *autospec* argument::" msgstr "" -#: library/unittest.mock.rst:2741 +#: library/unittest.mock.rst:2742 msgid "" "This only applies to classes or already instantiated objects. Calling a " "mocked class to create a mock instance *does not* create a real instance. It " "is only attribute lookups - along with calls to :func:`dir` - that are done." msgstr "" -#: library/unittest.mock.rst:2746 +#: library/unittest.mock.rst:2747 msgid "Sealing mocks" msgstr "" -#: library/unittest.mock.rst:2755 +#: library/unittest.mock.rst:2756 msgid "" "Seal will disable the automatic creation of mocks when accessing an " "attribute of the mock being sealed or any of its attributes that are already " "mocks recursively." msgstr "" -#: library/unittest.mock.rst:2758 +#: library/unittest.mock.rst:2759 msgid "" "If a mock instance with a name or a spec is assigned to an attribute it " "won't be considered in the sealing chain. This allows one to prevent seal " diff --git a/library/unittest.po b/library/unittest.po index ae5ce5e01..6f6821059 100644 --- a/library/unittest.po +++ b/library/unittest.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-04-27 15:01+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -1227,15 +1227,15 @@ msgstr "" "les plus couramment utilisées (voir les tableaux ci-dessous pour plus de " "méthodes d'assertion) :" -#: library/unittest.rst:940 library/unittest.rst:1260 +#: library/unittest.rst:940 library/unittest.rst:1281 msgid "Method" msgstr "Méthode" -#: library/unittest.rst:940 library/unittest.rst:1133 +#: library/unittest.rst:940 library/unittest.rst:1154 msgid "Checks that" msgstr "Vérifie que" -#: library/unittest.rst:940 library/unittest.rst:1260 +#: library/unittest.rst:940 library/unittest.rst:1281 msgid "New in" msgstr "Disponible en" @@ -1280,9 +1280,9 @@ msgid "``a is b``" msgstr "``a is b``" #: library/unittest.rst:836 library/unittest.rst:842 library/unittest.rst:848 -#: library/unittest.rst:1141 library/unittest.rst:1147 -#: library/unittest.rst:1153 library/unittest.rst:1265 -#: library/unittest.rst:1271 library/unittest.rst:1277 +#: library/unittest.rst:1162 library/unittest.rst:1168 +#: library/unittest.rst:1174 library/unittest.rst:1286 +#: library/unittest.rst:1292 library/unittest.rst:1298 msgid "3.1" msgstr "3.1" @@ -1334,7 +1334,7 @@ msgstr ":meth:`assertIsInstance(a, b) `" msgid "``isinstance(a, b)``" msgstr "``isinstance(a, b)``" -#: library/unittest.rst:854 library/unittest.rst:951 library/unittest.rst:1159 +#: library/unittest.rst:854 library/unittest.rst:951 library/unittest.rst:1180 msgid "3.2" msgstr "3.2" @@ -1514,7 +1514,30 @@ msgstr "" msgid "3.4" msgstr "3.4" -#: library/unittest.rst:961 +#: library/unittest.rst:957 +#, fuzzy +msgid ":meth:`assertNoLogs(logger, level) `" +msgstr ":meth:`assertLogs(logger, level) `" + +#: library/unittest.rst:957 +#, fuzzy +msgid "The ``with`` block does not log on" +msgstr "" +"Le bloc ``with`` écrit dans le *logger* avec un niveau minimum égal à " +"*level*" + +#: library/unittest.rst:958 +#, fuzzy +msgid "*logger* with minimum *level*" +msgstr "" +"Le bloc ``with`` écrit dans le *logger* avec un niveau minimum égal à " +"*level*" + +#: library/unittest.rst:957 +msgid "3.10" +msgstr "" + +#: library/unittest.rst:964 msgid "" "Test that an exception is raised when *callable* is called with any " "positional or keyword arguments that are also passed to :meth:" @@ -1530,7 +1553,7 @@ msgstr "" "Pour capturer une exception d'un groupe d'exceptions, un *n*-uplet contenant " "les classes d'exceptions peut être passé à *exception*." -#: library/unittest.rst:968 +#: library/unittest.rst:971 msgid "" "If only the *exception* and possibly the *msg* arguments are given, return a " "context manager so that the code under test can be written inline rather " @@ -1540,7 +1563,7 @@ msgstr "" "renvoie un gestionnaire de contexte pour que le code sous test puisse être " "écrit en ligne plutôt que comme une fonction ::" -#: library/unittest.rst:975 +#: library/unittest.rst:978 msgid "" "When used as a context manager, :meth:`assertRaises` accepts the additional " "keyword argument *msg*." @@ -1548,7 +1571,7 @@ msgstr "" "Lorsqu'il est utilisé comme gestionnaire de contexte, :meth:`assertRaises` " "accepte l'argument nommé supplémentaire *msg*." -#: library/unittest.rst:978 +#: library/unittest.rst:981 msgid "" "The context manager will store the caught exception object in its :attr:" "`exception` attribute. This can be useful if the intention is to perform " @@ -1558,23 +1581,23 @@ msgstr "" "attribut :attr:`exception`. Ceci est particulièrement utile si l'intention " "est d'effectuer des contrôles supplémentaires sur l'exception levée ::" -#: library/unittest.rst:988 +#: library/unittest.rst:991 msgid "Added the ability to use :meth:`assertRaises` as a context manager." msgstr "" "Ajout de la possibilité d'utiliser :meth:`assertRaises` comme gestionnaire " "de contexte." -#: library/unittest.rst:991 +#: library/unittest.rst:994 msgid "Added the :attr:`exception` attribute." msgstr "Ajout de l'attribut :attr:`exception`." -#: library/unittest.rst:1020 library/unittest.rst:1084 +#: library/unittest.rst:1023 library/unittest.rst:1087 msgid "Added the *msg* keyword argument when used as a context manager." msgstr "" "Ajout de l'argument nommé *msg* lorsqu'il est utilisé comme gestionnaire de " "contexte." -#: library/unittest.rst:1001 +#: library/unittest.rst:1004 msgid "" "Like :meth:`assertRaises` but also tests that *regex* matches on the string " "representation of the raised exception. *regex* may be a regular expression " @@ -1587,19 +1610,19 @@ msgstr "" "expression rationnelle appropriée pour être utilisée par :func:`re.search`. " "Exemples ::" -#: library/unittest.rst:1077 +#: library/unittest.rst:1080 msgid "or::" msgstr "ou ::" -#: library/unittest.rst:1014 +#: library/unittest.rst:1017 msgid "Added under the name ``assertRaisesRegexp``." msgstr "Sous le nom ``assertRaisesRegexp``." -#: library/unittest.rst:1017 +#: library/unittest.rst:1020 msgid "Renamed to :meth:`assertRaisesRegex`." msgstr "Renommé en :meth:`assertRaisesRegex`." -#: library/unittest.rst:1027 +#: library/unittest.rst:1030 msgid "" "Test that a warning is triggered when *callable* is called with any " "positional or keyword arguments that are also passed to :meth:" @@ -1614,7 +1637,7 @@ msgstr "" "dans un ensemble d'avertissements, un *n*-uplet contenant les classes " "d'avertissement peut être passé à *warnings*." -#: library/unittest.rst:1034 +#: library/unittest.rst:1037 msgid "" "If only the *warning* and possibly the *msg* arguments are given, return a " "context manager so that the code under test can be written inline rather " @@ -1624,7 +1647,7 @@ msgstr "" "renvoie un gestionnaire de contexte pour que le code testé puisse être écrit " "en ligne plutôt que comme une fonction ::" -#: library/unittest.rst:1041 +#: library/unittest.rst:1044 msgid "" "When used as a context manager, :meth:`assertWarns` accepts the additional " "keyword argument *msg*." @@ -1632,7 +1655,7 @@ msgstr "" "Lorsqu'il est utilisé comme gestionnaire de contexte, :meth:`assertWarns` " "accepte l'argument nommé supplémentaire *msg*." -#: library/unittest.rst:1044 +#: library/unittest.rst:1047 msgid "" "The context manager will store the caught warning object in its :attr:" "`warning` attribute, and the source line which triggered the warnings in " @@ -1645,7 +1668,7 @@ msgstr "" "fonction peut être utile si l'intention est d'effectuer des contrôles " "supplémentaires sur l'avertissement capturé ::" -#: library/unittest.rst:1056 +#: library/unittest.rst:1059 msgid "" "This method works regardless of the warning filters in place when it is " "called." @@ -1653,7 +1676,7 @@ msgstr "" "Cette méthode fonctionne indépendamment des filtres d'avertissement en place " "lorsqu'elle est appelée." -#: library/unittest.rst:1068 +#: library/unittest.rst:1071 msgid "" "Like :meth:`assertWarns` but also tests that *regex* matches on the message " "of the triggered warning. *regex* may be a regular expression object or a " @@ -1665,7 +1688,7 @@ msgstr "" "régulière ou une chaîne contenant une expression régulière appropriée pour " "être utilisée par :func:`re.search`. Exemple ::" -#: library/unittest.rst:1089 +#: library/unittest.rst:1092 msgid "" "A context manager to test that at least one message is logged on the " "*logger* or one of its children, with at least the given *level*." @@ -1674,7 +1697,7 @@ msgstr "" "enregistré sur le *logger* ou un de ses enfants, avec au moins le *niveau* " "donné." -#: library/unittest.rst:1093 +#: library/unittest.rst:1096 msgid "" "If given, *logger* should be a :class:`logging.Logger` object or a :class:" "`str` giving the name of a logger. The default is the root logger, which " @@ -1686,7 +1709,7 @@ msgstr "" "journal racine *root*, qui capture tous les messages qui n'ont pas été " "arrêtés par un *logger* ne propageant pas les messages." -#: library/unittest.rst:1098 +#: library/unittest.rst:1142 msgid "" "If given, *level* should be either a numeric logging level or its string " "equivalent (for example either ``\"ERROR\"`` or :attr:`logging.ERROR`). The " @@ -1696,7 +1719,7 @@ msgstr "" "forme de chaîne (par exemple ``\"ERROR\"`` ou :attr:`logging.ERROR`). La " "valeur par défaut est :attr:`logging.INFO`." -#: library/unittest.rst:1102 +#: library/unittest.rst:1105 msgid "" "The test passes if at least one message emitted inside the ``with`` block " "matches the *logger* and *level* conditions, otherwise it fails." @@ -1704,7 +1727,7 @@ msgstr "" "Le test passe si au moins un message émis à l'intérieur du bloc ``with`` " "correspond aux conditions *logger* et *level*, sinon il échoue." -#: library/unittest.rst:1105 +#: library/unittest.rst:1108 msgid "" "The object returned by the context manager is a recording helper which keeps " "tracks of the matching log messages. It has two attributes:" @@ -1713,14 +1736,14 @@ msgstr "" "l'enregistrement qui garde la trace des messages de journal correspondants. " "Il a deux attributs  ::" -#: library/unittest.rst:1111 +#: library/unittest.rst:1114 msgid "" "A list of :class:`logging.LogRecord` objects of the matching log messages." msgstr "" "Une liste d'objets :class:`logging.LogRecord` de messages de log " "correspondants." -#: library/unittest.rst:1116 +#: library/unittest.rst:1119 msgid "" "A list of :class:`str` objects with the formatted output of matching " "messages." @@ -1728,86 +1751,113 @@ msgstr "" "Une liste d'objets :class:`str` avec la sortie formatée des messages " "correspondants." -#: library/unittest.rst:1119 +#: library/unittest.rst:1122 msgid "Example::" msgstr "Exemple ::" -#: library/unittest.rst:1130 +#: library/unittest.rst:1134 +#, fuzzy +msgid "" +"A context manager to test that no messages are logged on the *logger* or one " +"of its children, with at least the given *level*." +msgstr "" +"Un gestionnaire de contexte pour tester qu'au moins un message est " +"enregistré sur le *logger* ou un de ses enfants, avec au moins le *niveau* " +"donné." + +#: library/unittest.rst:1138 +#, fuzzy +msgid "" +"If given, *logger* should be a :class:`logging.Logger` object or a :class:" +"`str` giving the name of a logger. The default is the root logger, which " +"will catch all messages." +msgstr "" +"Si donné, *logger* doit être une classe :class:`logging.logger` objet ou une " +"classe :class:`str` donnant le nom d'un journal. La valeur par défaut est le " +"journal racine *root*, qui capture tous les messages qui n'ont pas été " +"arrêtés par un *logger* ne propageant pas les messages." + +#: library/unittest.rst:1146 +msgid "" +"Unlike :meth:`assertLogs`, nothing will be returned by the context manager." +msgstr "" + +#: library/unittest.rst:1151 msgid "" "There are also other methods used to perform more specific checks, such as:" msgstr "" "Il existe également d'autres méthodes utilisées pour effectuer des contrôles " "plus spécifiques, telles que  ::" -#: library/unittest.rst:1135 +#: library/unittest.rst:1156 msgid ":meth:`assertAlmostEqual(a, b) `" msgstr ":meth:`assertAlmostEqual(a, b) `" -#: library/unittest.rst:1135 +#: library/unittest.rst:1156 msgid "``round(a-b, 7) == 0``" msgstr "``round(a-b, 7) == 0``" -#: library/unittest.rst:1138 +#: library/unittest.rst:1159 msgid ":meth:`assertNotAlmostEqual(a, b) `" msgstr ":meth:`assertNotAlmostEqual(a, b) `" -#: library/unittest.rst:1138 +#: library/unittest.rst:1159 msgid "``round(a-b, 7) != 0``" msgstr "``round(a-b, 7) != 0``" -#: library/unittest.rst:1141 +#: library/unittest.rst:1162 msgid ":meth:`assertGreater(a, b) `" msgstr ":meth:`assertGreater(a, b) `" -#: library/unittest.rst:1141 +#: library/unittest.rst:1162 msgid "``a > b``" msgstr "``a > b``" -#: library/unittest.rst:1144 +#: library/unittest.rst:1165 msgid ":meth:`assertGreaterEqual(a, b) `" msgstr ":meth:`assertGreaterEqual(a, b) `" -#: library/unittest.rst:1144 +#: library/unittest.rst:1165 msgid "``a >= b``" msgstr "``a >= b``" -#: library/unittest.rst:1147 +#: library/unittest.rst:1168 msgid ":meth:`assertLess(a, b) `" msgstr ":meth:`assertLess(a, b) `" -#: library/unittest.rst:1147 +#: library/unittest.rst:1168 msgid "``a < b``" msgstr "``a < b``" -#: library/unittest.rst:1150 +#: library/unittest.rst:1171 msgid ":meth:`assertLessEqual(a, b) `" msgstr ":meth:`assertLessEqual(a, b) `" -#: library/unittest.rst:1150 +#: library/unittest.rst:1171 msgid "``a <= b``" msgstr "``a <= b``" -#: library/unittest.rst:1153 +#: library/unittest.rst:1174 msgid ":meth:`assertRegex(s, r) `" msgstr ":meth:`assertRegex(s, r) `" -#: library/unittest.rst:1153 +#: library/unittest.rst:1174 msgid "``r.search(s)``" msgstr "``r.search(s)``" -#: library/unittest.rst:1156 +#: library/unittest.rst:1177 msgid ":meth:`assertNotRegex(s, r) `" msgstr ":meth:`assertNotRegex(s, r) `" -#: library/unittest.rst:1156 +#: library/unittest.rst:1177 msgid "``not r.search(s)``" msgstr "``not r.search(s)``" -#: library/unittest.rst:1159 +#: library/unittest.rst:1180 msgid ":meth:`assertCountEqual(a, b) `" msgstr ":meth:`assertCountEqual(a, b) `" -#: library/unittest.rst:1159 +#: library/unittest.rst:1180 msgid "" "*a* and *b* have the same elements in the same number, regardless of their " "order." @@ -1815,7 +1865,7 @@ msgstr "" "*a* et *b* ont les mêmes éléments dans le même nombre, quel que soit leur " "ordre." -#: library/unittest.rst:1168 +#: library/unittest.rst:1189 msgid "" "Test that *first* and *second* are approximately (or not approximately) " "equal by computing the difference, rounding to the given number of decimal " @@ -1830,7 +1880,7 @@ msgstr "" "*décimales* (par exemple comme la fonction :func:`round`) et non aux " "*chiffres significatifs*." -#: library/unittest.rst:1174 +#: library/unittest.rst:1195 msgid "" "If *delta* is supplied instead of *places* then the difference between " "*first* and *second* must be less or equal to (or greater than) *delta*." @@ -1838,11 +1888,11 @@ msgstr "" "Si *delta* est fourni au lieu de *places*, la différence entre *first* et " "*second* doit être inférieure ou égale (ou supérieure) à *delta*." -#: library/unittest.rst:1177 +#: library/unittest.rst:1198 msgid "Supplying both *delta* and *places* raises a :exc:`TypeError`." msgstr "Fournir à la fois *delta* et *places* lève une :exc:`TypeError`." -#: library/unittest.rst:1179 +#: library/unittest.rst:1200 msgid "" ":meth:`assertAlmostEqual` automatically considers almost equal objects that " "compare equal. :meth:`assertNotAlmostEqual` automatically fails if the " @@ -1853,7 +1903,7 @@ msgstr "" "automatiquement si les objets qui se comparent sont égaux. Ajout de " "l'argument nommé *delta*." -#: library/unittest.rst:1190 +#: library/unittest.rst:1211 msgid "" "Test that *first* is respectively >, >=, < or <= than *second* depending on " "the method name. If not, the test will fail::" @@ -1861,7 +1911,7 @@ msgstr "" "Vérifie que *first* est respectivement >, >=, >=, < ou <= à *second* selon " "le nom de la méthode. Sinon, le test échouera ::" -#: library/unittest.rst:1202 +#: library/unittest.rst:1223 msgid "" "Test that a *regex* search matches (or does not match) *text*. In case of " "failure, the error message will include the pattern and the *text* (or the " @@ -1876,22 +1926,22 @@ msgstr "" "chaîne contenant une expression régulière appropriée pour être utilisée par :" "func:`re.search`." -#: library/unittest.rst:1208 +#: library/unittest.rst:1229 msgid "Added under the name ``assertRegexpMatches``." msgstr "Ajouté sous le nom ``assertRegexpMatches``." -#: library/unittest.rst:1210 +#: library/unittest.rst:1231 msgid "" "The method ``assertRegexpMatches()`` has been renamed to :meth:`." "assertRegex`." msgstr "" "La méthode ``assertRegexpMatches()`` a été renommé en :meth:`.assertRegex`." -#: library/unittest.rst:1213 +#: library/unittest.rst:1234 msgid ":meth:`.assertNotRegex`." msgstr ":meth:`.assertNotRegex`." -#: library/unittest.rst:1215 +#: library/unittest.rst:1236 msgid "" "The name ``assertNotRegexpMatches`` is a deprecated alias for :meth:`." "assertNotRegex`." @@ -1899,7 +1949,7 @@ msgstr "" "Le nom ``assertNotRegexpMatches``` est un alias obsolète pour :meth:`." "assertNotRegex`." -#: library/unittest.rst:1222 +#: library/unittest.rst:1243 msgid "" "Test that sequence *first* contains the same elements as *second*, " "regardless of their order. When they don't, an error message listing the " @@ -1909,7 +1959,7 @@ msgstr "" "quel que soit leur ordre. Si ce n'est pas le cas, un message d'erreur " "indiquant les différences entre les séquences est généré." -#: library/unittest.rst:1226 +#: library/unittest.rst:1247 msgid "" "Duplicate elements are *not* ignored when comparing *first* and *second*. It " "verifies whether each element has the same count in both sequences. " @@ -1922,7 +1972,7 @@ msgstr "" "Counter(list(second)))`` mais fonctionne aussi avec des séquences d'objets " "non *hachables*." -#: library/unittest.rst:1237 +#: library/unittest.rst:1258 msgid "" "The :meth:`assertEqual` method dispatches the equality check for objects of " "the same type to different type-specific methods. These methods are already " @@ -1935,7 +1985,7 @@ msgstr "" "possible d'enregistrer de nouvelles méthodes en utilisant :meth:" "`addTypeEqualityFunc`  ::" -#: library/unittest.rst:1244 +#: library/unittest.rst:1265 msgid "" "Registers a type-specific method called by :meth:`assertEqual` to check if " "two objects of exactly the same *typeobj* (not subclasses) compare equal. " @@ -1954,7 +2004,7 @@ msgstr "" "fournissant éventuellement des informations utiles et expliquant l'inégalité " "en détail dans le message d'erreur." -#: library/unittest.rst:1255 +#: library/unittest.rst:1276 msgid "" "The list of type-specific methods automatically used by :meth:`~TestCase." "assertEqual` are summarized in the following table. Note that it's usually " @@ -1964,59 +2014,59 @@ msgstr "" "`~TestCase.assertEqual` est résumée dans le tableau suivant. Notez qu'il " "n'est généralement pas nécessaire d'invoquer ces méthodes directement." -#: library/unittest.rst:1260 +#: library/unittest.rst:1281 msgid "Used to compare" msgstr "Utilisé pour comparer" -#: library/unittest.rst:1262 +#: library/unittest.rst:1283 msgid ":meth:`assertMultiLineEqual(a, b) `" msgstr ":meth:`assertMultiLineEqual(a, b) `" -#: library/unittest.rst:1262 +#: library/unittest.rst:1283 msgid "strings" msgstr "chaînes" -#: library/unittest.rst:1265 +#: library/unittest.rst:1286 msgid ":meth:`assertSequenceEqual(a, b) `" msgstr ":meth:`assertSequenceEqual(a, b) `" -#: library/unittest.rst:1265 +#: library/unittest.rst:1286 msgid "sequences" msgstr "séquences" -#: library/unittest.rst:1268 +#: library/unittest.rst:1289 msgid ":meth:`assertListEqual(a, b) `" msgstr ":meth:`assertListEqual(a, b) `" -#: library/unittest.rst:1268 +#: library/unittest.rst:1289 msgid "lists" msgstr "listes" -#: library/unittest.rst:1271 +#: library/unittest.rst:1292 msgid ":meth:`assertTupleEqual(a, b) `" msgstr ":meth:`assertTupleEqual(a, b) `" -#: library/unittest.rst:1271 +#: library/unittest.rst:1292 msgid "tuples" msgstr "*n*-uplets" -#: library/unittest.rst:1274 +#: library/unittest.rst:1295 msgid ":meth:`assertSetEqual(a, b) `" msgstr ":meth:`assertSetEqual(a, b) `" -#: library/unittest.rst:1274 +#: library/unittest.rst:1295 msgid "sets or frozensets" msgstr "*sets* ou *frozensets*" -#: library/unittest.rst:1277 +#: library/unittest.rst:1298 msgid ":meth:`assertDictEqual(a, b) `" msgstr ":meth:`assertDictEqual(a, b) `" -#: library/unittest.rst:1277 +#: library/unittest.rst:1298 msgid "dicts" msgstr "dictionnaires" -#: library/unittest.rst:1285 +#: library/unittest.rst:1306 msgid "" "Test that the multiline string *first* is equal to the string *second*. When " "not equal a diff of the two strings highlighting the differences will be " @@ -2029,7 +2079,7 @@ msgstr "" "Cette méthode est utilisée par défaut pour comparer les chaînes avec :meth:" "`assertEqual`." -#: library/unittest.rst:1295 +#: library/unittest.rst:1316 msgid "" "Tests that two sequences are equal. If a *seq_type* is supplied, both " "*first* and *second* must be instances of *seq_type* or a failure will be " @@ -2041,7 +2091,7 @@ msgstr "" "est levé. Si les séquences sont différentes, un message d'erreur indiquant " "la différence entre les deux est généré." -#: library/unittest.rst:1300 +#: library/unittest.rst:1321 msgid "" "This method is not called directly by :meth:`assertEqual`, but it's used to " "implement :meth:`assertListEqual` and :meth:`assertTupleEqual`." @@ -2049,7 +2099,7 @@ msgstr "" "Cette méthode n'est pas appelée directement par :meth:`assertEqual`, mais " "sert à implémenter :meth:`assertListEqual` et :meth:`assertTupleEqual`." -#: library/unittest.rst:1310 +#: library/unittest.rst:1331 msgid "" "Tests that two lists or tuples are equal. If not, an error message is " "constructed that shows only the differences between the two. An error is " @@ -2062,7 +2112,7 @@ msgstr "" "paramètres n'est pas du bon type. Ces méthodes sont utilisées par défaut " "pour comparer des listes ou des *n*-uplets avec :meth:`assertEqual`." -#: library/unittest.rst:1321 +#: library/unittest.rst:1342 msgid "" "Tests that two sets are equal. If not, an error message is constructed that " "lists the differences between the sets. This method is used by default when " @@ -2073,7 +2123,7 @@ msgstr "" "méthode est utilisée par défaut lors de la comparaison de *sets* ou de " "*frozensets* avec :meth:`assertEqual`." -#: library/unittest.rst:1325 +#: library/unittest.rst:1346 msgid "" "Fails if either of *first* or *second* does not have a :meth:`set." "difference` method." @@ -2081,7 +2131,7 @@ msgstr "" "Échoue si l'un des objets *first* ou *second* n'a pas de méthode :meth:`set." "difference`." -#: library/unittest.rst:1333 +#: library/unittest.rst:1354 msgid "" "Test that two dictionaries are equal. If not, an error message is " "constructed that shows the differences in the dictionaries. This method will " @@ -2092,14 +2142,14 @@ msgstr "" "généré. Cette méthode est utilisée par défaut pour comparer les " "dictionnaires dans les appels à :meth:`assertEqual`." -#: library/unittest.rst:1344 +#: library/unittest.rst:1365 msgid "" "Finally the :class:`TestCase` provides the following methods and attributes:" msgstr "" "Enfin, la classe :class:`TestCase` fournit les méthodes et attributs " "suivants :" -#: library/unittest.rst:1349 +#: library/unittest.rst:1370 msgid "" "Signals a test failure unconditionally, with *msg* or ``None`` for the error " "message." @@ -2107,7 +2157,7 @@ msgstr "" "Indique un échec du test sans condition, avec *msg* ou ``None`` pour le " "message d'erreur." -#: library/unittest.rst:1355 +#: library/unittest.rst:1376 msgid "" "This class attribute gives the exception raised by the test method. If a " "test framework needs to use a specialized exception, possibly to carry " @@ -2121,7 +2171,7 @@ msgstr "" "hériter de cette classe d'exception pour *bien fonctionner* avec le " "*framework*. La valeur initiale de cet attribut est :exc:`AssertionError`." -#: library/unittest.rst:1364 +#: library/unittest.rst:1385 msgid "" "This class attribute determines what happens when a custom failure message " "is passed as the msg argument to an assertXYY call that fails. ``True`` is " @@ -2136,7 +2186,7 @@ msgstr "" "Lorsqu'il est réglé sur ``False``, le message personnalisé remplace le " "message standard." -#: library/unittest.rst:1370 +#: library/unittest.rst:1391 msgid "" "The class setting can be overridden in individual test methods by assigning " "an instance attribute, self.longMessage, to ``True`` or ``False`` before " @@ -2146,11 +2196,11 @@ msgstr "" "individuelles en assignant un attribut d'instance, *self.longMessage*, à " "``True`` ou ``False`` avant d'appeler les méthodes d'assertion." -#: library/unittest.rst:1374 +#: library/unittest.rst:1395 msgid "The class setting gets reset before each test call." msgstr "Le réglage de la classe est réinitialisé avant chaque appel de test." -#: library/unittest.rst:1381 +#: library/unittest.rst:1402 msgid "" "This attribute controls the maximum length of diffs output by assert methods " "that report diffs on failure. It defaults to 80*8 characters. Assert methods " @@ -2165,7 +2215,7 @@ msgstr "" "séquences qui lui sont déléguées), :meth:`assertDictEqual` et :meth:" "`assertMultiLineEqual`." -#: library/unittest.rst:1388 +#: library/unittest.rst:1409 msgid "" "Setting ``maxDiff`` to ``None`` means that there is no maximum length of " "diffs." @@ -2173,7 +2223,7 @@ msgstr "" "Régler ``maxDiff`` sur ``None``` signifie qu'il n'y a pas de longueur " "maximale pour les *diffs*." -#: library/unittest.rst:1394 +#: library/unittest.rst:1415 msgid "" "Testing frameworks can use the following methods to collect information on " "the test:" @@ -2181,7 +2231,7 @@ msgstr "" "Les *frameworks* de test peuvent utiliser les méthodes suivantes pour " "recueillir des informations sur le test :" -#: library/unittest.rst:1400 +#: library/unittest.rst:1421 msgid "" "Return the number of tests represented by this test object. For :class:" "`TestCase` instances, this will always be ``1``." @@ -2189,7 +2239,7 @@ msgstr "" "Renvoie le nombre de tests représentés par cet objet test. Pour les " "instances de :class:`TestCase`, c'est toujours ``1``." -#: library/unittest.rst:1406 +#: library/unittest.rst:1427 msgid "" "Return an instance of the test result class that should be used for this " "test case class (if no other result instance is provided to the :meth:`run` " @@ -2199,7 +2249,7 @@ msgstr "" "utilisée pour cette classe de cas de test (si aucune autre instance de " "résultat n'est fournie à la méthode :meth:`run`)." -#: library/unittest.rst:1410 +#: library/unittest.rst:1431 msgid "" "For :class:`TestCase` instances, this will always be an instance of :class:" "`TestResult`; subclasses of :class:`TestCase` should override this as " @@ -2209,7 +2259,7 @@ msgstr "" "class:`TestResult` ; les sous-classes de :class:`TestCase` peuvent la " "remplacer au besoin." -#: library/unittest.rst:1417 +#: library/unittest.rst:1438 msgid "" "Return a string identifying the specific test case. This is usually the " "full name of the test method, including the module and class name." @@ -2218,7 +2268,7 @@ msgstr "" "généralement du nom complet de la méthode de test, y compris le nom du " "module et de la classe." -#: library/unittest.rst:1423 +#: library/unittest.rst:1444 msgid "" "Returns a description of the test, or ``None`` if no description has been " "provided. The default implementation of this method returns the first line " @@ -2228,7 +2278,7 @@ msgstr "" "fournie. L'implémentation par défaut de cette méthode renvoie la première " "ligne de la *docstring* de la méthode de test, si disponible, ou ``None``." -#: library/unittest.rst:1428 +#: library/unittest.rst:1449 msgid "" "In 3.1 this was changed to add the test name to the short description even " "in the presence of a docstring. This caused compatibility issues with " @@ -2240,7 +2290,7 @@ msgstr "" "compatibilité avec les extensions *unittest* et l'ajout du nom du test a été " "déplacé dans la classe :class:`TextTestResult` dans Python 3.2." -#: library/unittest.rst:1437 +#: library/unittest.rst:1458 msgid "" "Add a function to be called after :meth:`tearDown` to cleanup resources used " "during the test. Functions will be called in reverse order to the order they " @@ -2255,7 +2305,7 @@ msgstr "" "arguments positionnels et arguments nommés passés à :meth:`addCleanup` quand " "elles sont ajoutées." -#: library/unittest.rst:1443 +#: library/unittest.rst:1464 msgid "" "If :meth:`setUp` fails, meaning that :meth:`tearDown` is not called, then " "any cleanup functions added will still be called." @@ -2264,7 +2314,7 @@ msgstr "" "appelé, alors que les fonctions de nettoyage ajoutées seront toujours " "appelées." -#: library/unittest.rst:1451 +#: library/unittest.rst:1472 msgid "" "This method is called unconditionally after :meth:`tearDown`, or after :meth:" "`setUp` if :meth:`setUp` raises an exception." @@ -2272,7 +2322,7 @@ msgstr "" "Cette méthode est appelée sans conditions après :meth:`tearDown`, ou après :" "meth:`setUp` si :meth:`setUp` lève une exception." -#: library/unittest.rst:1454 +#: library/unittest.rst:1475 msgid "" "It is responsible for calling all the cleanup functions added by :meth:" "`addCleanup`. If you need cleanup functions to be called *prior* to :meth:" @@ -2283,7 +2333,7 @@ msgstr "" "nettoyage à appeler *avant* l'appel à :meth:`tearDown` alors vous pouvez " "appeler :meth:`doCleanups` vous-même." -#: library/unittest.rst:1459 +#: library/unittest.rst:1480 msgid "" ":meth:`doCleanups` pops methods off the stack of cleanup functions one at a " "time, so it can be called at any time." @@ -2292,7 +2342,7 @@ msgstr "" "nettoyage une à la fois, de sorte qu'elles peuvent être appelées à tout " "moment." -#: library/unittest.rst:1466 +#: library/unittest.rst:1487 msgid "" "Add a function to be called after :meth:`tearDownClass` to cleanup resources " "used during the test class. Functions will be called in reverse order to the " @@ -2307,7 +2357,7 @@ msgstr "" "arguments positionnels et nommés passés à :meth:`addClassCleanup` quand " "elles sont ajoutées." -#: library/unittest.rst:1472 +#: library/unittest.rst:1493 msgid "" "If :meth:`setUpClass` fails, meaning that :meth:`tearDownClass` is not " "called, then any cleanup functions added will still be called." @@ -2315,7 +2365,7 @@ msgstr "" "Si :meth:`setUpClass` échoue, impliquant que :meth:`tearDownClass` n'est pas " "appelé, alors les fonctions de nettoyage ajoutées sont quand même appelées." -#: library/unittest.rst:1480 +#: library/unittest.rst:1501 msgid "" "This method is called unconditionally after :meth:`tearDownClass`, or after :" "meth:`setUpClass` if :meth:`setUpClass` raises an exception." @@ -2323,7 +2373,7 @@ msgstr "" "Cette méthode est appelée sans conditions après :meth:`tearDownClass`, ou " "après :meth:`setUpClass` si :meth:`setUpClass` lève une exception." -#: library/unittest.rst:1483 +#: library/unittest.rst:1504 msgid "" "It is responsible for calling all the cleanup functions added by :meth:" "`addClassCleanup`. If you need cleanup functions to be called *prior* to :" @@ -2334,7 +2384,7 @@ msgstr "" "nettoyage à appeler *avant* l'appel à :meth:`tearDownClass` alors vous " "pouvez appeler :meth:`doClassCleanups` vous-même." -#: library/unittest.rst:1488 +#: library/unittest.rst:1509 msgid "" ":meth:`doClassCleanups` pops methods off the stack of cleanup functions one " "at a time, so it can be called at any time." @@ -2343,7 +2393,7 @@ msgstr "" "nettoyage une à la fois, de sorte qu'elles peuvent être appelées à tout " "moment." -#: library/unittest.rst:1496 +#: library/unittest.rst:1517 msgid "" "This class provides an API similar to :class:`TestCase` and also accepts " "coroutines as test functions." @@ -2351,7 +2401,7 @@ msgstr "" "Cette classe fournit une API similaire à :class:`TestCase` et accepte aussi " "les coroutines en tant que fonctions de test." -#: library/unittest.rst:1503 +#: library/unittest.rst:1524 msgid "" "Method called to prepare the test fixture. This is called after :meth:" "`setUp`. This is called immediately before calling the test method; other " @@ -2366,7 +2416,7 @@ msgstr "" "erreur et non pas comme un échec du test. L'implémentation par défaut ne " "fait rien." -#: library/unittest.rst:1511 +#: library/unittest.rst:1532 msgid "" "Method called immediately after the test method has been called and the " "result recorded. This is called before :meth:`tearDown`. This is called " @@ -2390,13 +2440,13 @@ msgstr "" "soit le résultat de la méthode de test. L'implémentation par défaut ne fait " "rien." -#: library/unittest.rst:1523 +#: library/unittest.rst:1544 msgid "This method accepts a coroutine that can be used as a cleanup function." msgstr "" "Cette méthode accepte une coroutine qui peut être utilisée comme fonction de " "nettoyage." -#: library/unittest.rst:1527 +#: library/unittest.rst:1548 msgid "" "Sets up a new event loop to run the test, collecting the result into the :" "class:`TestResult` object passed as *result*. If *result* is omitted or " @@ -2412,11 +2462,11 @@ msgstr "" "utilisé. L'objet résultat est renvoyé à l'appelant de :meth:`run`. À la fin " "du test, toutes les taches de la boucle d’événements sont annulées." -#: library/unittest.rst:1535 +#: library/unittest.rst:1556 msgid "An example illustrating the order::" msgstr "Exemple illustrant l'ordre ::" -#: library/unittest.rst:1571 +#: library/unittest.rst:1592 msgid "" "After running the test, ``events`` would contain ``[\"setUp\", \"asyncSetUp" "\", \"test_response\", \"asyncTearDown\", \"tearDown\", \"cleanup\"]``." @@ -2425,7 +2475,7 @@ msgstr "" "\"asyncSetUp\", \"test_response\", \"asyncTearDown\", \"tearDown\", \"cleanup" "\"]``." -#: library/unittest.rst:1576 +#: library/unittest.rst:1597 msgid "" "This class implements the portion of the :class:`TestCase` interface which " "allows the test runner to drive the test, but does not provide the methods " @@ -2440,11 +2490,11 @@ msgstr "" "code de test existant afin de faciliter l'intégration dans un *framework* de " "test basé sur :mod:`unittest`." -#: library/unittest.rst:1586 +#: library/unittest.rst:1607 msgid "Deprecated aliases" msgstr "Alias obsolètes" -#: library/unittest.rst:1588 +#: library/unittest.rst:1609 msgid "" "For historical reasons, some of the :class:`TestCase` methods had one or " "more aliases that are now deprecated. The following table lists the correct " @@ -2454,123 +2504,123 @@ msgstr "" "`TestCase` avaient un ou plusieurs alias qui sont maintenant obsolètes. Le " "tableau suivant énumère les noms corrects ainsi que leurs alias obsolètes  ::" -#: library/unittest.rst:1593 +#: library/unittest.rst:1614 msgid "Method Name" msgstr "Nom de méthode" -#: library/unittest.rst:1593 +#: library/unittest.rst:1614 msgid "Deprecated alias" msgstr "Alias obsolètes" -#: library/unittest.rst:1595 +#: library/unittest.rst:1616 msgid ":meth:`.assertEqual`" msgstr ":meth:`.assertEqual`" -#: library/unittest.rst:1595 +#: library/unittest.rst:1616 msgid "failUnlessEqual" msgstr "failUnlessEqual" -#: library/unittest.rst:1595 +#: library/unittest.rst:1616 msgid "assertEquals" msgstr "assertEquals" -#: library/unittest.rst:1596 +#: library/unittest.rst:1617 msgid ":meth:`.assertNotEqual`" msgstr ":meth:`.assertNotEqual`" -#: library/unittest.rst:1596 +#: library/unittest.rst:1617 msgid "failIfEqual" msgstr "failIfEqual" -#: library/unittest.rst:1596 +#: library/unittest.rst:1617 msgid "assertNotEquals" msgstr "assertNotEquals" -#: library/unittest.rst:1597 +#: library/unittest.rst:1618 msgid ":meth:`.assertTrue`" msgstr ":meth:`.assertTrue`" -#: library/unittest.rst:1597 +#: library/unittest.rst:1618 msgid "failUnless" msgstr "failUnless" -#: library/unittest.rst:1597 +#: library/unittest.rst:1618 msgid "assert\\_" msgstr "assert\\_" -#: library/unittest.rst:1598 +#: library/unittest.rst:1619 msgid ":meth:`.assertFalse`" msgstr ":meth:`.assertFalse`" -#: library/unittest.rst:1598 +#: library/unittest.rst:1619 msgid "failIf" msgstr "failIf" -#: library/unittest.rst:1599 +#: library/unittest.rst:1620 msgid ":meth:`.assertRaises`" msgstr ":meth:`.assertRaises`" -#: library/unittest.rst:1599 +#: library/unittest.rst:1620 msgid "failUnlessRaises" msgstr "failUnlessRaises" -#: library/unittest.rst:1600 +#: library/unittest.rst:1621 msgid ":meth:`.assertAlmostEqual`" msgstr ":meth:`.assertAlmostEqual`" -#: library/unittest.rst:1600 +#: library/unittest.rst:1621 msgid "failUnlessAlmostEqual" msgstr "failUnlessAlmostEqual" -#: library/unittest.rst:1600 +#: library/unittest.rst:1621 msgid "assertAlmostEquals" msgstr "assertAlmostEquals" -#: library/unittest.rst:1601 +#: library/unittest.rst:1622 msgid ":meth:`.assertNotAlmostEqual`" msgstr ":meth:`.assertNotAlmostEqual`" -#: library/unittest.rst:1601 +#: library/unittest.rst:1622 msgid "failIfAlmostEqual" msgstr "failIfAlmostEqual" -#: library/unittest.rst:1601 +#: library/unittest.rst:1622 msgid "assertNotAlmostEquals" msgstr "assertNotAlmostEquals" -#: library/unittest.rst:1602 +#: library/unittest.rst:1623 msgid ":meth:`.assertRegex`" msgstr ":meth:`.assertRegex`" -#: library/unittest.rst:1602 +#: library/unittest.rst:1623 msgid "assertRegexpMatches" msgstr "assertRegexpMatches" -#: library/unittest.rst:1603 +#: library/unittest.rst:1624 msgid ":meth:`.assertNotRegex`" msgstr ":meth:`.assertNotRegex`" -#: library/unittest.rst:1603 +#: library/unittest.rst:1624 msgid "assertNotRegexpMatches" msgstr "assertNotRegexpMatches" -#: library/unittest.rst:1604 +#: library/unittest.rst:1625 msgid ":meth:`.assertRaisesRegex`" msgstr ":meth:`.assertRaisesRegex`" -#: library/unittest.rst:1604 +#: library/unittest.rst:1625 msgid "assertRaisesRegexp" msgstr "assertRaisesRegexp" -#: library/unittest.rst:1607 +#: library/unittest.rst:1628 msgid "The fail* aliases listed in the second column have been deprecated." msgstr "Les alias ``fail*`` sont énumérés dans la deuxième colonne." -#: library/unittest.rst:1609 +#: library/unittest.rst:1630 msgid "The assert* aliases listed in the third column have been deprecated." msgstr "Les alias ``assert*`` sont énumérés dans la troisième colonne." -#: library/unittest.rst:1611 +#: library/unittest.rst:1632 msgid "" "``assertRegexpMatches`` and ``assertRaisesRegexp`` have been renamed to :" "meth:`.assertRegex` and :meth:`.assertRaisesRegex`." @@ -2578,7 +2628,7 @@ msgstr "" "Les expressions ``assertRegexpMatches`` et ``assertRaisesRegexp`` ont été " "renommées en :meth:`.assertRegex` et :meth:`.assertRaisesRegex`." -#: library/unittest.rst:1614 +#: library/unittest.rst:1635 msgid "" "The ``assertNotRegexpMatches`` name is deprecated in favor of :meth:`." "assertNotRegex`." @@ -2586,11 +2636,11 @@ msgstr "" "Le nom ``assertNotRegexpMatches`` est obsolète en faveur de :meth:`." "assertNotRegex`." -#: library/unittest.rst:1620 +#: library/unittest.rst:1641 msgid "Grouping tests" msgstr "Regroupement des tests" -#: library/unittest.rst:1624 +#: library/unittest.rst:1645 msgid "" "This class represents an aggregation of individual test cases and test " "suites. The class presents the interface needed by the test runner to allow " @@ -2603,7 +2653,7 @@ msgstr "" "instance de :class:`TestSuite` est identique à l'itération sur la suite, en " "exécutant chaque test indépendamment." -#: library/unittest.rst:1629 +#: library/unittest.rst:1650 msgid "" "If *tests* is given, it must be an iterable of individual test cases or " "other test suites that will be used to build the suite initially. Additional " @@ -2614,7 +2664,7 @@ msgstr "" "la suite initial. Des méthodes supplémentaires sont fournies pour ajouter " "ultérieurement des cas de test et des suites à la collection." -#: library/unittest.rst:1633 +#: library/unittest.rst:1654 msgid "" ":class:`TestSuite` objects behave much like :class:`TestCase` objects, " "except they do not actually implement a test. Instead, they are used to " @@ -2628,12 +2678,12 @@ msgstr "" "doivent être exécutés ensemble. Des méthodes supplémentaires sont " "disponibles pour ajouter des tests aux instances de :class:`TestSuite` :" -#: library/unittest.rst:1641 +#: library/unittest.rst:1662 msgid "Add a :class:`TestCase` or :class:`TestSuite` to the suite." msgstr "" "Ajouter un objet :class:`TestCase` ou :class:`TestSuite` à la suite de tests." -#: library/unittest.rst:1646 +#: library/unittest.rst:1667 msgid "" "Add all the tests from an iterable of :class:`TestCase` and :class:" "`TestSuite` instances to this test suite." @@ -2641,7 +2691,7 @@ msgstr "" "Ajouter tous les tests d'un itérable d'instances de :class:`TestCase` et de :" "class:`TestSuite` à cette suite de tests." -#: library/unittest.rst:1649 +#: library/unittest.rst:1670 msgid "" "This is equivalent to iterating over *tests*, calling :meth:`addTest` for " "each element." @@ -2649,12 +2699,12 @@ msgstr "" "C'est l'équivalent d'une itération sur *tests*, appelant :meth:`addTest` " "pour chaque élément." -#: library/unittest.rst:1652 +#: library/unittest.rst:1673 msgid ":class:`TestSuite` shares the following methods with :class:`TestCase`:" msgstr "" ":class:`TestSuite` partage les méthodes suivantes avec :class:`TestCase` :" -#: library/unittest.rst:1657 +#: library/unittest.rst:1678 msgid "" "Run the tests associated with this suite, collecting the result into the " "test result object passed as *result*. Note that unlike :meth:`TestCase." @@ -2665,7 +2715,7 @@ msgstr "" "à :meth:`TestCase.run`, :meth:`TestSuite.run` nécessite que l'objet résultat " "soit passé." -#: library/unittest.rst:1665 +#: library/unittest.rst:1686 msgid "" "Run the tests associated with this suite without collecting the result. This " "allows exceptions raised by the test to be propagated to the caller and can " @@ -2675,7 +2725,7 @@ msgstr "" "permet aux exceptions levées par le test d'être propagées à l'appelant et " "peut être utilisé pour exécuter des tests sous un débogueur." -#: library/unittest.rst:1672 +#: library/unittest.rst:1693 msgid "" "Return the number of tests represented by this test object, including all " "individual tests and sub-suites." @@ -2683,7 +2733,7 @@ msgstr "" "Renvoie le nombre de tests représentés par cet objet de test, y compris tous " "les tests individuels et les sous-suites." -#: library/unittest.rst:1678 +#: library/unittest.rst:1699 msgid "" "Tests grouped by a :class:`TestSuite` are always accessed by iteration. " "Subclasses can lazily provide tests by overriding :meth:`__iter__`. Note " @@ -2705,7 +2755,7 @@ msgstr "" "n'utilisent une sous-classe qui remplace :meth:`TestSuite." "_removeTestAtIndex` pour préserver les références des tests." -#: library/unittest.rst:1688 +#: library/unittest.rst:1709 msgid "" "In earlier versions the :class:`TestSuite` accessed tests directly rather " "than through iteration, so overriding :meth:`__iter__` wasn't sufficient for " @@ -2715,7 +2765,7 @@ msgstr "" "tests directement plutôt que par itération, donc surcharger la méthode :meth:" "`__iter__` n'était pas suffisante pour fournir les tests." -#: library/unittest.rst:1693 +#: library/unittest.rst:1714 msgid "" "In earlier versions the :class:`TestSuite` held references to each :class:" "`TestCase` after :meth:`TestSuite.run`. Subclasses can restore that behavior " @@ -2726,7 +2776,7 @@ msgstr "" "Les sous-classes peuvent restaurer ce comportement en surchargeant :meth:" "`TestSuite._removeTestAtIndex`." -#: library/unittest.rst:1698 +#: library/unittest.rst:1719 msgid "" "In the typical usage of a :class:`TestSuite` object, the :meth:`run` method " "is invoked by a :class:`TestRunner` rather than by the end-user test harness." @@ -2735,11 +2785,11 @@ msgstr "" "`run` est invoquée par une classe :class:`TestRunner` plutôt que par le " "système de test de l'utilisateur." -#: library/unittest.rst:1703 +#: library/unittest.rst:1724 msgid "Loading and running tests" msgstr "Chargement et exécution des tests" -#: library/unittest.rst:1707 +#: library/unittest.rst:1728 msgid "" "The :class:`TestLoader` class is used to create test suites from classes and " "modules. Normally, there is no need to create an instance of this class; " @@ -2754,12 +2804,12 @@ msgstr "" "L'utilisation d'une sous-classe ou d'une instance permet cependant de " "personnaliser certaines propriétés configurables." -#: library/unittest.rst:1713 +#: library/unittest.rst:1734 msgid ":class:`TestLoader` objects have the following attributes:" msgstr "" "Les objets de la classe :class:`TestLoader` ont les attributs suivants :" -#: library/unittest.rst:1718 +#: library/unittest.rst:1739 msgid "" "A list of the non-fatal errors encountered while loading tests. Not reset by " "the loader at any point. Fatal errors are signalled by the relevant a method " @@ -2772,12 +2822,12 @@ msgstr "" "exception à l'appelant. Les erreurs non fatales sont également indiquées par " "un test synthétique qui lève l'erreur initiale lors de l'exécution." -#: library/unittest.rst:1727 +#: library/unittest.rst:1748 msgid ":class:`TestLoader` objects have the following methods:" msgstr "" "Les objets de la classe :class:`TestLoader` ont les attributs suivants :" -#: library/unittest.rst:1732 +#: library/unittest.rst:1753 msgid "" "Return a suite of all test cases contained in the :class:`TestCase`\\ -" "derived :class:`testCaseClass`." @@ -2785,7 +2835,7 @@ msgstr "" "Renvoie une suite de tous les cas de test contenus dans la classe :class:" "`TestCaseClass`\\ dérivée de :class:`testCase`." -#: library/unittest.rst:1735 +#: library/unittest.rst:1756 msgid "" "A test case instance is created for each method named by :meth:" "`getTestCaseNames`. By default these are the method names beginning with " @@ -2799,7 +2849,7 @@ msgstr "" "que la méthode :meth:`runTest` est implémentée, un seul cas de test est créé " "pour cette méthode à la place." -#: library/unittest.rst:1744 +#: library/unittest.rst:1765 msgid "" "Return a suite of all test cases contained in the given module. This method " "searches *module* for classes derived from :class:`TestCase` and creates an " @@ -2810,7 +2860,7 @@ msgstr "" "`TestCase` et crée une instance de la classe pour chaque méthode de test " "définie pour cette classe." -#: library/unittest.rst:1751 +#: library/unittest.rst:1772 msgid "" "While using a hierarchy of :class:`TestCase`\\ -derived classes can be " "convenient in sharing fixtures and helper functions, defining test methods " @@ -2825,7 +2875,7 @@ msgstr "" "pas bien avec cette méthode. Cela peut toutefois s'avérer utile lorsque les " "*fixtures* sont différentes et définies dans des sous-classes." -#: library/unittest.rst:1757 +#: library/unittest.rst:1778 msgid "" "If a module provides a ``load_tests`` function it will be called to load the " "tests. This allows modules to customize test loading. This is the " @@ -2837,11 +2887,11 @@ msgstr "" "C'est le protocole `load_tests protocol`_. L'argument *pattern* est passé " "comme troisième argument à ``load_tests``." -#: library/unittest.rst:1762 +#: library/unittest.rst:1783 msgid "Support for ``load_tests`` added." msgstr "Ajout de la prise en charge de ``load_tests``." -#: library/unittest.rst:1765 +#: library/unittest.rst:1786 msgid "" "The undocumented and unofficial *use_load_tests* default argument is " "deprecated and ignored, although it is still accepted for backward " @@ -2853,13 +2903,13 @@ msgstr "" "descendante. La méthode accepte aussi maintenant un argument *pattern* qui " "est passé à ``load_tests`` comme troisième argument." -#: library/unittest.rst:1774 +#: library/unittest.rst:1795 msgid "Return a suite of all test cases given a string specifier." msgstr "" "Renvoie une suite de tous les cas de test en fonction d'un spécificateur de " "chaîne de caractères." -#: library/unittest.rst:1776 +#: library/unittest.rst:1797 msgid "" "The specifier *name* is a \"dotted name\" that may resolve either to a " "module, a test case class, a test method within a test case class, a :class:" @@ -2878,7 +2928,7 @@ msgstr "" "choisie comme \"méthode de test dans une classe de cas de test\", plutôt que " "comme \"un objet appelable\"." -#: library/unittest.rst:1784 +#: library/unittest.rst:1805 msgid "" "For example, if you have a module :mod:`SampleTests` containing a :class:" "`TestCase`\\ -derived class :class:`SampleTestCase` with three test methods " @@ -2900,11 +2950,11 @@ msgstr "" "spécificateur peut se référer à des modules et packages qui n'ont pas été " "importés. Ils seront importés par un effet de bord." -#: library/unittest.rst:1794 +#: library/unittest.rst:1815 msgid "The method optionally resolves *name* relative to the given *module*." msgstr "La méthode résout facultativement *name* relatif au *module* donné." -#: library/unittest.rst:1796 +#: library/unittest.rst:1817 msgid "" "If an :exc:`ImportError` or :exc:`AttributeError` occurs while traversing " "*name* then a synthetic test that raises that error when run will be " @@ -2915,7 +2965,7 @@ msgstr "" "de l'exécution est renvoyé. Ces erreurs sont incluses dans les erreurs " "accumulées par *self.errors*." -#: library/unittest.rst:1805 +#: library/unittest.rst:1826 msgid "" "Similar to :meth:`loadTestsFromName`, but takes a sequence of names rather " "than a single name. The return value is a test suite which supports all the " @@ -2925,7 +2975,7 @@ msgstr "" "plutôt qu'un seul nom. La valeur renvoyée est une suite de tests qui gère " "tous les tests définis pour chaque nom." -#: library/unittest.rst:1812 +#: library/unittest.rst:1833 msgid "" "Return a sorted sequence of method names found within *testCaseClass*; this " "should be a subclass of :class:`TestCase`." @@ -2933,7 +2983,7 @@ msgstr "" "Renvoie une séquence triée de noms de méthodes trouvés dans " "*testCaseClass* ; ceci doit être une sous-classe de :class:`TestCase`." -#: library/unittest.rst:1818 +#: library/unittest.rst:1839 msgid "" "Find all the test modules by recursing into subdirectories from the " "specified start directory, and return a TestSuite object containing them. " @@ -2947,7 +2997,7 @@ msgstr "" "chargés. Seuls les noms de modules qui sont importables (c'est-à-dire qui " "sont des identifiants Python valides) sont chargés." -#: library/unittest.rst:1824 +#: library/unittest.rst:1845 msgid "" "All test modules must be importable from the top level of the project. If " "the start directory is not the top level directory then the top level " @@ -2957,7 +3007,7 @@ msgstr "" "projet. Si le répertoire de démarrage n'est pas la racine, le répertoire " "racine doit être spécifié séparément." -#: library/unittest.rst:1828 +#: library/unittest.rst:1849 msgid "" "If importing a module fails, for example due to a syntax error, then this " "will be recorded as a single error and discovery will continue. If the " @@ -2970,7 +3020,7 @@ msgstr "" "`SkipTest` est levé, il est enregistré comme un saut plutôt que comme un " "message d'erreur." -#: library/unittest.rst:1833 +#: library/unittest.rst:1854 msgid "" "If a package (a directory containing a file named :file:`__init__.py`) is " "found, the package will be checked for a ``load_tests`` function. If this " @@ -2986,7 +3036,7 @@ msgstr "" "paquet n'est vérifié qu'une seule fois au cours d'une invocation, même si la " "fonction *load_tests* appelle elle-même ``loader.discover``." -#: library/unittest.rst:1841 +#: library/unittest.rst:1862 msgid "" "If ``load_tests`` exists then discovery does *not* recurse into the package, " "``load_tests`` is responsible for loading all tests in the package." @@ -2995,7 +3045,7 @@ msgstr "" "dans le paquet, ``load_tests`` a la responsabilité de charger tous les tests " "dans le paquet." -#: library/unittest.rst:1845 +#: library/unittest.rst:1866 msgid "" "The pattern is deliberately not stored as a loader attribute so that " "packages can continue discovery themselves. *top_level_dir* is stored so " @@ -3007,11 +3057,11 @@ msgstr "" "*top_level_dir* est stocké de sorte que ``load_tests`` n'a pas besoin de " "passer cet argument a ``loader. discover()``." -#: library/unittest.rst:1850 +#: library/unittest.rst:1871 msgid "*start_dir* can be a dotted module name as well as a directory." msgstr "*start_dir* peut être un nom de module ainsi qu'un répertoire." -#: library/unittest.rst:1854 +#: library/unittest.rst:1875 msgid "" "Modules that raise :exc:`SkipTest` on import are recorded as skips, not " "errors." @@ -3020,13 +3070,13 @@ msgstr "" "importation ne sont pas considérés comme des erreurs, et sont marqués à " "sauter." -#: library/unittest.rst:1858 +#: library/unittest.rst:1879 msgid "*start_dir* can be a :term:`namespace packages `." msgstr "" "*start_dir* peut être un :term:`paquet-espace de nommage `." -#: library/unittest.rst:1861 +#: library/unittest.rst:1882 msgid "" "Paths are sorted before being imported so that execution order is the same " "even if the underlying file system's ordering is not dependent on file name." @@ -3035,7 +3085,7 @@ msgstr "" "soit toujours le même, même si le système de fichiers sous-jacent ne classe " "pas les fichiers par leur nom." -#: library/unittest.rst:1866 +#: library/unittest.rst:1887 msgid "" "Found packages are now checked for ``load_tests`` regardless of whether " "their path matches *pattern*, because it is impossible for a package name to " @@ -3046,7 +3096,7 @@ msgstr "" "*pattern*, car il est impossible pour un nom de paquet de correspondre au " "motif par défaut." -#: library/unittest.rst:1872 +#: library/unittest.rst:1893 msgid "" "The following attributes of a :class:`TestLoader` can be configured either " "by subclassing or assignment on an instance:" @@ -3054,7 +3104,7 @@ msgstr "" "Les attributs suivants d'une classe :class:`TestLoader` peuvent être " "configurés soit par héritage, soit par affectation sur une instance  ::" -#: library/unittest.rst:1878 +#: library/unittest.rst:1899 msgid "" "String giving the prefix of method names which will be interpreted as test " "methods. The default value is ``'test'``." @@ -3062,7 +3112,7 @@ msgstr "" "Chaîne donnant le préfixe des noms de méthodes qui seront interprétés comme " "méthodes de test. La valeur par défaut est ``'test'``." -#: library/unittest.rst:1881 +#: library/unittest.rst:1902 msgid "" "This affects :meth:`getTestCaseNames` and all the :meth:`loadTestsFrom\\*` " "methods." @@ -3070,7 +3120,7 @@ msgstr "" "Ceci affecte les méthodes :meth:`getTestCaseNames` et toutes les méthodes :" "meth:`loadTestsFrom\\*`." -#: library/unittest.rst:1887 +#: library/unittest.rst:1908 msgid "" "Function to be used to compare method names when sorting them in :meth:" "`getTestCaseNames` and all the :meth:`loadTestsFrom\\*` methods." @@ -3079,7 +3129,7 @@ msgstr "" "les méthodes :meth:`getTestCaseNames` et toutes les méthodes :meth:" "`loadTestsFrom\\*`." -#: library/unittest.rst:1893 +#: library/unittest.rst:1914 msgid "" "Callable object that constructs a test suite from a list of tests. No " "methods on the resulting object are needed. The default value is the :class:" @@ -3089,11 +3139,11 @@ msgstr "" "tests. Aucune méthode sur l'objet résultant n'est nécessaire. La valeur par " "défaut est la classe :class:`TestSuite`." -#: library/unittest.rst:1910 +#: library/unittest.rst:1931 msgid "This affects all the :meth:`loadTestsFrom\\*` methods." msgstr "Cela affecte toutes les méthodes :meth:`loadTestsFrom\\*`." -#: library/unittest.rst:1901 +#: library/unittest.rst:1922 msgid "" "List of Unix shell-style wildcard test name patterns that test methods have " "to match to be included in test suites (see ``-v`` option)." @@ -3102,7 +3152,7 @@ msgstr "" "méthodes de test doivent valider pour être incluses dans les suites de test " "(voir l'option ``-v``)." -#: library/unittest.rst:1904 +#: library/unittest.rst:1925 msgid "" "If this attribute is not ``None`` (the default), all test methods to be " "included in test suites must match one of the patterns in this list. Note " @@ -3117,7 +3167,7 @@ msgstr "" "à l'option ``-v``, les motifs de sous-chaînes simples doivent être convertis " "avec le joker ``*``." -#: library/unittest.rst:1917 +#: library/unittest.rst:1938 msgid "" "This class is used to compile information about which tests have succeeded " "and which have failed." @@ -3125,7 +3175,7 @@ msgstr "" "Cette classe est utilisée pour compiler des informations sur les tests qui " "ont réussi et ceux qui ont échoué." -#: library/unittest.rst:1920 +#: library/unittest.rst:1941 msgid "" "A :class:`TestResult` object stores the results of a set of tests. The :" "class:`TestCase` and :class:`TestSuite` classes ensure that results are " @@ -3137,7 +3187,7 @@ msgstr "" "résultats sont correctement enregistrés. Les auteurs du test n'ont pas à se " "soucier de l'enregistrement des résultats des tests." -#: library/unittest.rst:1925 +#: library/unittest.rst:1946 msgid "" "Testing frameworks built on top of :mod:`unittest` may want access to the :" "class:`TestResult` object generated by running a set of tests for reporting " @@ -3150,7 +3200,7 @@ msgstr "" "`TestResult` est alors renvoyée par la méthode :meth:`TestRunner.run` à " "cette fin." -#: library/unittest.rst:1930 +#: library/unittest.rst:1951 msgid "" ":class:`TestResult` instances have the following attributes that will be of " "interest when inspecting the results of running a set of tests:" @@ -3159,7 +3209,7 @@ msgstr "" "intéressant pour l'inspection des résultats de l'exécution d'un ensemble de " "tests  ::" -#: library/unittest.rst:1936 +#: library/unittest.rst:1957 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding formatted tracebacks. Each tuple represents a test which raised an " @@ -3169,7 +3219,7 @@ msgstr "" "chaînes de caractères contenant des traces de pile d'appels formatées. " "Chaque paire représente un test qui a levé une exception inattendue." -#: library/unittest.rst:1942 +#: library/unittest.rst:1963 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding formatted tracebacks. Each tuple represents a test where a failure " @@ -3180,7 +3230,7 @@ msgstr "" "Chaque paire représente un test où un échec a été explicitement signalé en " "utilisant les méthodes :meth:`TestCase.assert\\*`." -#: library/unittest.rst:1948 +#: library/unittest.rst:1969 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding the reason for skipping the test." @@ -3188,7 +3238,7 @@ msgstr "" "Une liste contenant des paires d'instances de :class:`TestCase` et de " "chaînes de caractères contenant la raison de l'omission du test." -#: library/unittest.rst:1955 +#: library/unittest.rst:1976 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding formatted tracebacks. Each tuple represents an expected failure or " @@ -3198,7 +3248,7 @@ msgstr "" "de caractères contenant des traces de pile d'appels formatées. Chaque paire " "représente un échec attendu ou une erreur du scénario de test." -#: library/unittest.rst:1961 +#: library/unittest.rst:1982 msgid "" "A list containing :class:`TestCase` instances that were marked as expected " "failures, but succeeded." @@ -3206,18 +3256,18 @@ msgstr "" "Une liste contenant les instances :class:`TestCase` qui ont été marquées " "comme des échecs attendus, mais qui ont réussi." -#: library/unittest.rst:1966 +#: library/unittest.rst:1987 msgid "" "Set to ``True`` when the execution of tests should stop by :meth:`stop`." msgstr "" "A positionner sur ``True`` quand l'exécution des tests doit être arrêter " "par :meth:`stop`." -#: library/unittest.rst:1970 +#: library/unittest.rst:1991 msgid "The total number of tests run so far." msgstr "Le nombre total de tests effectués jusqu'à présent." -#: library/unittest.rst:1974 +#: library/unittest.rst:1995 msgid "" "If set to true, ``sys.stdout`` and ``sys.stderr`` will be buffered in " "between :meth:`startTest` and :meth:`stopTest` being called. Collected " @@ -3231,7 +3281,7 @@ msgstr "" "stderr`` réels uniquement en cas d'échec ou d'erreur du test. Toute sortie " "est également attachée au message d'erreur." -#: library/unittest.rst:1983 +#: library/unittest.rst:2004 msgid "" "If set to true :meth:`stop` will be called on the first failure or error, " "halting the test run." @@ -3239,13 +3289,13 @@ msgstr "" "Si la valeur est *true* :meth:`stop` est appelée lors de la première " "défaillance ou erreur, ce qui interrompt le test en cours d'exécution." -#: library/unittest.rst:1990 +#: library/unittest.rst:2011 msgid "If set to true then local variables will be shown in tracebacks." msgstr "" "Si la valeur est *true*, les variables locales sont affichées dans les " "traces d'appels." -#: library/unittest.rst:1996 +#: library/unittest.rst:2017 msgid "" "Return ``True`` if all tests run so far have passed, otherwise returns " "``False``." @@ -3253,7 +3303,7 @@ msgstr "" "Renvoie ``True`` si tous les tests effectués jusqu'à présent ont réussi, " "sinon renvoie ``False``." -#: library/unittest.rst:1999 +#: library/unittest.rst:2020 msgid "" "Returns ``False`` if there were any :attr:`unexpectedSuccesses` from tests " "marked with the :func:`expectedFailure` decorator." @@ -3261,7 +3311,7 @@ msgstr "" "Renvoie ``False`` s'il y a eu des :attr:`unexpectedSuccesses` dans les tests " "annotés avec le décorateur :func:`expectedFailure`." -#: library/unittest.rst:2005 +#: library/unittest.rst:2026 msgid "" "This method can be called to signal that the set of tests being run should " "be aborted by setting the :attr:`shouldStop` attribute to ``True``. :class:" @@ -3273,7 +3323,7 @@ msgstr "" "`shouldStop` sur ``True``. Les instances de :class:`TestRunner` doivent " "respecter ce signal et se terminer sans exécuter de tests supplémentaires." -#: library/unittest.rst:2010 +#: library/unittest.rst:2031 msgid "" "For example, this feature is used by the :class:`TextTestRunner` class to " "stop the test framework when the user signals an interrupt from the " @@ -3285,7 +3335,7 @@ msgstr "" "lance une interruption clavier. Les outils interactifs qui fournissent des " "implémentations de :class:`TestRunner` peuvent l'utiliser de la même manière." -#: library/unittest.rst:2015 +#: library/unittest.rst:2036 msgid "" "The following methods of the :class:`TestResult` class are used to maintain " "the internal data structures, and may be extended in subclasses to support " @@ -3299,27 +3349,27 @@ msgstr "" "outils qui prennent en charge la génération de rapports interactifs pendant " "l'exécution des tests." -#: library/unittest.rst:2023 +#: library/unittest.rst:2044 msgid "Called when the test case *test* is about to be run." msgstr "" "Appelé lorsque le scénario de test *test* est sur le point d'être exécuté." -#: library/unittest.rst:2027 +#: library/unittest.rst:2048 msgid "" "Called after the test case *test* has been executed, regardless of the " "outcome." msgstr "" "Appelé après l'exécution du cas de test *test*, quel qu'en soit le résultat." -#: library/unittest.rst:2032 +#: library/unittest.rst:2053 msgid "Called once before any tests are executed." msgstr "Appelé une fois avant l'exécution des tests." -#: library/unittest.rst:2039 +#: library/unittest.rst:2060 msgid "Called once after all tests are executed." msgstr "Appelé une fois après l'exécution des tests." -#: library/unittest.rst:2046 +#: library/unittest.rst:2067 msgid "" "Called when the test case *test* raises an unexpected exception. *err* is a " "tuple of the form returned by :func:`sys.exc_info`: ``(type, value, " @@ -3329,7 +3379,7 @@ msgstr "" "est un *n*-uplet de la même forme que celle renvoyée par :func:`sys." "exc_info` : ``(type, valeur, traceback)``." -#: library/unittest.rst:2050 +#: library/unittest.rst:2071 msgid "" "The default implementation appends a tuple ``(test, formatted_err)`` to the " "instance's :attr:`errors` attribute, where *formatted_err* is a formatted " @@ -3339,7 +3389,7 @@ msgstr "" "l'attribut :attr:`errors` de l'instance, où *formatted_err* est une trace " "formatée à partir de *err*." -#: library/unittest.rst:2057 +#: library/unittest.rst:2078 msgid "" "Called when the test case *test* signals a failure. *err* is a tuple of the " "form returned by :func:`sys.exc_info`: ``(type, value, traceback)``." @@ -3348,7 +3398,7 @@ msgstr "" "est un triplet de la même forme que celui renvoyé par :func:`sys.exc_info` : " "``(type, valeur, traceback)``." -#: library/unittest.rst:2060 +#: library/unittest.rst:2081 msgid "" "The default implementation appends a tuple ``(test, formatted_err)`` to the " "instance's :attr:`failures` attribute, where *formatted_err* is a formatted " @@ -3358,15 +3408,15 @@ msgstr "" "l'attribut :attr:`errors` de l'instance, où *formatted_err* est une trace " "formatée à partir de *err*." -#: library/unittest.rst:2067 +#: library/unittest.rst:2088 msgid "Called when the test case *test* succeeds." msgstr "Appelé lorsque le scénario de test *test* réussit." -#: library/unittest.rst:2069 +#: library/unittest.rst:2090 msgid "The default implementation does nothing." msgstr "L'implémentation par défaut ne fait rien." -#: library/unittest.rst:2074 +#: library/unittest.rst:2095 msgid "" "Called when the test case *test* is skipped. *reason* is the reason the " "test gave for skipping." @@ -3374,7 +3424,7 @@ msgstr "" "Appelé lorsque le scénario de test *test* est ignoré. *raison* est la raison " "pour laquelle le test donné à été ignoré." -#: library/unittest.rst:2077 +#: library/unittest.rst:2098 msgid "" "The default implementation appends a tuple ``(test, reason)`` to the " "instance's :attr:`skipped` attribute." @@ -3382,7 +3432,7 @@ msgstr "" "L'implémentation par défaut ajoute un *n*-uplet ``(test, raison)`` à " "l'attribut :attr:`skipped` de l'instance." -#: library/unittest.rst:2083 +#: library/unittest.rst:2104 msgid "" "Called when the test case *test* fails or errors, but was marked with the :" "func:`expectedFailure` decorator." @@ -3390,7 +3440,7 @@ msgstr "" "Appelé lorsque le scénario de test *test* échoue (assertion ou exception), " "mais qui a été marqué avec le décorateur :func:`expectedFailure`." -#: library/unittest.rst:2086 +#: library/unittest.rst:2107 msgid "" "The default implementation appends a tuple ``(test, formatted_err)`` to the " "instance's :attr:`expectedFailures` attribute, where *formatted_err* is a " @@ -3400,7 +3450,7 @@ msgstr "" "l'attribut :attr:`errors` de l'instance, où *formatted_err* est une trace " "formatée à partir de *err*." -#: library/unittest.rst:2093 +#: library/unittest.rst:2114 msgid "" "Called when the test case *test* was marked with the :func:`expectedFailure` " "decorator, but succeeded." @@ -3408,7 +3458,7 @@ msgstr "" "Appelé lorsque le scénario de test *test* réussit, mais que ce scénario a " "été marqué avec le décorateur :func:`expectedFailure`." -#: library/unittest.rst:2096 +#: library/unittest.rst:2117 msgid "" "The default implementation appends the test to the instance's :attr:" "`unexpectedSuccesses` attribute." @@ -3416,7 +3466,7 @@ msgstr "" "L'implémentation par défaut ajoute le test à l'attribut :attr:" "`unexpectedSuccesses` de l'instance." -#: library/unittest.rst:2102 +#: library/unittest.rst:2123 msgid "" "Called when a subtest finishes. *test* is the test case corresponding to " "the test method. *subtest* is a custom :class:`TestCase` instance " @@ -3426,7 +3476,7 @@ msgstr "" "méthode de test. *subtest* est une instance dérivée de :class:`TestCase` " "décrivant le sous-test." -#: library/unittest.rst:2106 +#: library/unittest.rst:2127 msgid "" "If *outcome* is :const:`None`, the subtest succeeded. Otherwise, it failed " "with an exception where *outcome* is a tuple of the form returned by :func:" @@ -3436,7 +3486,7 @@ msgstr "" "avec une exception où *outcome* est un triplet du formulaire renvoyé par :" "func:`sys.exc_info` : ``(type, valeur, traceback)``." -#: library/unittest.rst:2110 +#: library/unittest.rst:2131 msgid "" "The default implementation does nothing when the outcome is a success, and " "records subtest failures as normal failures." @@ -3444,7 +3494,7 @@ msgstr "" "L'implémentation par défaut ne fait rien lorsque le résultat est un succès, " "et enregistre les échecs de sous-test comme des échecs normaux." -#: library/unittest.rst:2118 +#: library/unittest.rst:2139 msgid "" "A concrete implementation of :class:`TestResult` used by the :class:" "`TextTestRunner`." @@ -3452,7 +3502,7 @@ msgstr "" "Une implémentation concrète de :class:`TestResult` utilisé par la classe :" "class:`TextTestRunner`." -#: library/unittest.rst:2121 +#: library/unittest.rst:2142 msgid "" "This class was previously named ``_TextTestResult``. The old name still " "exists as an alias but is deprecated." @@ -3460,7 +3510,7 @@ msgstr "" "Cette classe s'appelait auparavant ``_TextTestResult``. L'ancien nom existe " "toujours en tant qu'alias, mais il est obsolète." -#: library/unittest.rst:2128 +#: library/unittest.rst:2149 msgid "" "Instance of the :class:`TestLoader` class intended to be shared. If no " "customization of the :class:`TestLoader` is needed, this instance can be " @@ -3471,7 +3521,7 @@ msgstr "" "cette instance peut être utilisée au lieu de créer plusieurs fois de " "nouvelles instances." -#: library/unittest.rst:2136 +#: library/unittest.rst:2157 msgid "" "A basic test runner implementation that outputs results to a stream. If " "*stream* is ``None``, the default, :data:`sys.stderr` is used as the output " @@ -3490,7 +3540,7 @@ msgstr "" "``**kwargs`` car l'interface pour construire les lanceurs change lorsque des " "fonctionnalités sont ajoutées à *unittest*." -#: library/unittest.rst:2143 +#: library/unittest.rst:2164 msgid "" "By default this runner shows :exc:`DeprecationWarning`, :exc:" "`PendingDeprecationWarning`, :exc:`ResourceWarning` and :exc:`ImportWarning` " @@ -3513,11 +3563,11 @@ msgstr "" "de Python (voir :ref:`Gestion des avertissements `) et en " "laissant *warnings* à ``None``." -#: library/unittest.rst:2154 +#: library/unittest.rst:2175 msgid "Added the ``warnings`` argument." msgstr "Ajout du paramètre ``warnings``." -#: library/unittest.rst:2157 +#: library/unittest.rst:2178 msgid "" "The default stream is set to :data:`sys.stderr` at instantiation time rather " "than import time." @@ -3525,11 +3575,11 @@ msgstr "" "Le flux par défaut est défini sur :data:`sys.stderr` au moment de " "l'instanciation plutôt qu'à l'importation." -#: library/unittest.rst:2161 +#: library/unittest.rst:2182 msgid "Added the tb_locals parameter." msgstr "Ajout du paramètre *tb_locals*." -#: library/unittest.rst:2166 +#: library/unittest.rst:2187 msgid "" "This method returns the instance of ``TestResult`` used by :meth:`run`. It " "is not intended to be called directly, but can be overridden in subclasses " @@ -3539,7 +3589,7 @@ msgstr "" "Il n'est pas destiné à être appelé directement, mais peut être surchargée " "dans des sous-classes pour fournir un ``TestResult`` personnalisé." -#: library/unittest.rst:2170 +#: library/unittest.rst:2191 msgid "" "``_makeResult()`` instantiates the class or callable passed in the " "``TextTestRunner`` constructor as the ``resultclass`` argument. It defaults " @@ -3551,7 +3601,7 @@ msgstr "" "défaut :class:`TextTestResult` si aucune ``resultclass`` n'est fournie. La " "classe de résultat est instanciée avec les arguments suivants ::" -#: library/unittest.rst:2179 +#: library/unittest.rst:2200 msgid "" "This method is the main public interface to the ``TextTestRunner``. This " "method takes a :class:`TestSuite` or :class:`TestCase` instance. A :class:" @@ -3563,7 +3613,7 @@ msgstr "" "Un :class:`TestResult` est créé en appelant :func:`_makeResult` et le ou les " "tests sont exécutés et les résultats affichés sur la sortie standard." -#: library/unittest.rst:2190 +#: library/unittest.rst:2211 msgid "" "A command-line program that loads a set of tests from *module* and runs " "them; this is primarily for making test modules conveniently executable. The " @@ -3576,7 +3626,7 @@ msgstr "" "cette fonction est d'inclure la ligne suivante à la fin d'un script de " "test ::" -#: library/unittest.rst:2198 +#: library/unittest.rst:2219 msgid "" "You can run tests with more detailed information by passing in the verbosity " "argument::" @@ -3584,7 +3634,7 @@ msgstr "" "Vous pouvez exécuter des tests avec des informations plus détaillées en " "utilisant l'option de verbosité ::" -#: library/unittest.rst:2204 +#: library/unittest.rst:2225 msgid "" "The *defaultTest* argument is either the name of a single test or an " "iterable of test names to run if no test names are specified via *argv*. If " @@ -3596,7 +3646,7 @@ msgstr "" "aucun nom de test n'est fourni via *argv*, tous les tests trouvés dans " "*module* sont exécutés." -#: library/unittest.rst:2209 +#: library/unittest.rst:2230 msgid "" "The *argv* argument can be a list of options passed to the program, with the " "first element being the program name. If not specified or ``None``, the " @@ -3606,7 +3656,7 @@ msgstr "" "premier élément étant le nom du programme. S'il n'est pas spécifié ou vaut " "``None``, les valeurs de :data:`sys.argv` sont utilisées." -#: library/unittest.rst:2213 +#: library/unittest.rst:2234 msgid "" "The *testRunner* argument can either be a test runner class or an already " "created instance of it. By default ``main`` calls :func:`sys.exit` with an " @@ -3617,7 +3667,7 @@ msgstr "" "exit` avec un code de sortie indiquant le succès ou l'échec des tests " "exécutés." -#: library/unittest.rst:2217 +#: library/unittest.rst:2238 msgid "" "The *testLoader* argument has to be a :class:`TestLoader` instance, and " "defaults to :data:`defaultTestLoader`." @@ -3625,7 +3675,7 @@ msgstr "" "L'argument *testLoader* doit être une instance de :class:`TestLoader`, et " "par défaut de :data:`defaultTestLoader`." -#: library/unittest.rst:2220 +#: library/unittest.rst:2241 msgid "" "``main`` supports being used from the interactive interpreter by passing in " "the argument ``exit=False``. This displays the result on standard output " @@ -3635,7 +3685,7 @@ msgstr "" "dans l'argument ``exit=False``. Ceci affiche le résultat sur la sortie " "standard sans appeler :func:`sys.exit` ::" -#: library/unittest.rst:2227 +#: library/unittest.rst:2248 msgid "" "The *failfast*, *catchbreak* and *buffer* parameters have the same effect as " "the same-name `command-line options`_." @@ -3643,7 +3693,7 @@ msgstr "" "Les paramètres *failfast*, *catchbreak* et *buffer* ont le même effet que la " "même option en ligne de commande `command-line options`_." -#: library/unittest.rst:2230 +#: library/unittest.rst:2251 msgid "" "The *warnings* argument specifies the :ref:`warning filter ` " "that should be used while running the tests. If it's not specified, it will " @@ -3658,7 +3708,7 @@ msgstr "" "avertissements `), sinon elle sera réglée sur " "``'default'``." -#: library/unittest.rst:2236 +#: library/unittest.rst:2257 msgid "" "Calling ``main`` actually returns an instance of the ``TestProgram`` class. " "This stores the result of the tests run as the ``result`` attribute." @@ -3667,11 +3717,11 @@ msgstr "" "``TestProgram``. Le résultat des tests effectués est enregistré sous " "l'attribut ``result``." -#: library/unittest.rst:2239 +#: library/unittest.rst:2260 msgid "The *exit* parameter was added." msgstr "Ajout du paramètre *exit*." -#: library/unittest.rst:2242 +#: library/unittest.rst:2263 msgid "" "The *verbosity*, *failfast*, *catchbreak*, *buffer* and *warnings* " "parameters were added." @@ -3679,7 +3729,7 @@ msgstr "" "Ajout des paramètres *verbosity*, *failfast*, *catchbreak*, *buffer* et " "*warnings*." -#: library/unittest.rst:2246 +#: library/unittest.rst:2267 msgid "" "The *defaultTest* parameter was changed to also accept an iterable of test " "names." @@ -3687,11 +3737,11 @@ msgstr "" "Le paramètre *defaultTest* a été modifié pour accepter également un itérable " "de noms de test." -#: library/unittest.rst:2252 +#: library/unittest.rst:2273 msgid "load_tests Protocol" msgstr "Protocole de chargement des tests (*load_tests Protocol*)" -#: library/unittest.rst:2256 +#: library/unittest.rst:2277 msgid "" "Modules or packages can customize how tests are loaded from them during " "normal test runs or test discovery by implementing a function called " @@ -3701,7 +3751,7 @@ msgstr "" "chargés à partir de ceux-ci pendant l'exécution des tests ou pendant la " "découverte de tests en implémentant une fonction appelée ``load_tests``." -#: library/unittest.rst:2259 +#: library/unittest.rst:2280 msgid "" "If a test module defines ``load_tests`` it will be called by :meth:" "`TestLoader.loadTestsFromModule` with the following arguments::" @@ -3709,7 +3759,7 @@ msgstr "" "Si un module de test définit ``load_tests`` il est appelé par :meth:" "`TestLoader.loadTestsFromModule` avec les arguments suivants ::" -#: library/unittest.rst:2264 +#: library/unittest.rst:2285 msgid "" "where *pattern* is passed straight through from ``loadTestsFromModule``. It " "defaults to ``None``." @@ -3717,11 +3767,11 @@ msgstr "" "où *pattern* est passé directement depuis ``loadTestsFromModule``. La valeur " "par défaut est ``None``." -#: library/unittest.rst:2267 +#: library/unittest.rst:2288 msgid "It should return a :class:`TestSuite`." msgstr "Elle doit renvoyer une classe :class:`TestSuite`." -#: library/unittest.rst:2269 +#: library/unittest.rst:2290 msgid "" "*loader* is the instance of :class:`TestLoader` doing the loading. " "*standard_tests* are the tests that would be loaded by default from the " @@ -3736,7 +3786,7 @@ msgstr "" "argument est utilisé lors du chargement de paquets dans le cadre de la " "découverte de tests." -#: library/unittest.rst:2275 +#: library/unittest.rst:2296 msgid "" "A typical ``load_tests`` function that loads tests from a specific set of :" "class:`TestCase` classes may look like::" @@ -3744,7 +3794,7 @@ msgstr "" "Une fonction typique de ``load_tests`` qui charge les tests d'un ensemble " "spécifique de classes :class:`TestCase` peut ressembler à ::" -#: library/unittest.rst:2287 +#: library/unittest.rst:2308 msgid "" "If discovery is started in a directory containing a package, either from the " "command line or by calling :meth:`TestLoader.discover`, then the package :" @@ -3761,7 +3811,7 @@ msgstr "" "répertoire. Sinon, la découverte des tests du paquet est effectuée par " "``load_tests`` qui est appelé avec les arguments suivants ::" -#: library/unittest.rst:2296 +#: library/unittest.rst:2317 msgid "" "This should return a :class:`TestSuite` representing all the tests from the " "package. (``standard_tests`` will only contain tests collected from :file:" @@ -3771,7 +3821,7 @@ msgstr "" "paquet. (``standard_tests`` ne contient que les tests collectés dans le " "fichier :file:`__init__.py`)." -#: library/unittest.rst:2300 +#: library/unittest.rst:2321 msgid "" "Because the pattern is passed into ``load_tests`` the package is free to " "continue (and potentially modify) test discovery. A 'do nothing' " @@ -3781,7 +3831,7 @@ msgstr "" "(et potentiellement de modifier) la découverte des tests. Une fonction « ne " "rien faire » ``load_tests`` pour un paquet de test ressemblerait à ::" -#: library/unittest.rst:2311 +#: library/unittest.rst:2332 msgid "" "Discovery no longer checks package names for matching *pattern* due to the " "impossibility of package names matching the default pattern." @@ -3790,11 +3840,11 @@ msgstr "" "à *pattern* en raison de l'impossibilité de trouver des noms de paquets " "correspondant au motif par défaut." -#: library/unittest.rst:2318 +#: library/unittest.rst:2339 msgid "Class and Module Fixtures" msgstr "Classes et modules d'aménagements des tests" -#: library/unittest.rst:2320 +#: library/unittest.rst:2341 msgid "" "Class and module level fixtures are implemented in :class:`TestSuite`. When " "the test suite encounters a test from a new class then :meth:`tearDownClass` " @@ -3806,7 +3856,7 @@ msgstr "" "classe, alors :meth:`tearDownClass` de la classe précédente (s'il y en a " "une) est appelé, suivi de :meth:`setUpClass` de la nouvelle classe." -#: library/unittest.rst:2325 +#: library/unittest.rst:2346 msgid "" "Similarly if a test is from a different module from the previous test then " "``tearDownModule`` from the previous module is run, followed by " @@ -3816,7 +3866,7 @@ msgstr "" "``tearDownModule`` du module précédent est exécuté, suivi par " "``setUpModule`` du nouveau module." -#: library/unittest.rst:2329 +#: library/unittest.rst:2350 msgid "" "After all the tests have run the final ``tearDownClass`` and " "``tearDownModule`` are run." @@ -3824,7 +3874,7 @@ msgstr "" "Après que tous les tests ont été exécutés, les ``tearDownClass`` et " "``tearDownModule`` finaux sont exécutés." -#: library/unittest.rst:2332 +#: library/unittest.rst:2353 msgid "" "Note that shared fixtures do not play well with [potential] features like " "test parallelization and they break test isolation. They should be used with " @@ -3834,7 +3884,7 @@ msgstr "" "de « potentielles » fonctions comme la parallélisation de test et qu'ils " "brisent l'isolation des tests. Ils doivent être utilisés avec parcimonie." -#: library/unittest.rst:2335 +#: library/unittest.rst:2356 msgid "" "The default ordering of tests created by the unittest test loaders is to " "group all tests from the same modules and classes together. This will lead " @@ -3851,7 +3901,7 @@ msgstr "" "uns aux autres, alors ces fonctions d'aménagements partagées peuvent être " "appelées plusieurs fois dans un même test." -#: library/unittest.rst:2342 +#: library/unittest.rst:2363 msgid "" "Shared fixtures are not intended to work with suites with non-standard " "ordering. A ``BaseTestSuite`` still exists for frameworks that don't want to " @@ -3862,7 +3912,7 @@ msgstr "" "toujours pour les cadriciels qui ne veulent pas gérer les aménagements de " "tests partagés." -#: library/unittest.rst:2346 +#: library/unittest.rst:2367 msgid "" "If there are any exceptions raised during one of the shared fixture " "functions the test is reported as an error. Because there is no " @@ -3879,17 +3929,17 @@ msgstr "" "détail n'a pas d'importance, mais si vous êtes un auteur de cadriciel de " "test, il peut être pertinent." -#: library/unittest.rst:2355 +#: library/unittest.rst:2376 msgid "setUpClass and tearDownClass" msgstr "" "Classes de mise en place (*setUpClass*) et de démantèlement des tests " "(*tearDownClass*)" -#: library/unittest.rst:2357 +#: library/unittest.rst:2378 msgid "These must be implemented as class methods::" msgstr "Elles doivent être implémentées en tant que méthodes de classe ::" -#: library/unittest.rst:2370 +#: library/unittest.rst:2391 msgid "" "If you want the ``setUpClass`` and ``tearDownClass`` on base classes called " "then you must call up to them yourself. The implementations in :class:" @@ -3899,7 +3949,7 @@ msgstr "" "soient appelées, vous devez les appeler vous-même. Les implémentations dans :" "class:`TestCase` sont vides." -#: library/unittest.rst:2374 +#: library/unittest.rst:2395 msgid "" "If an exception is raised during a ``setUpClass`` then the tests in the " "class are not run and the ``tearDownClass`` is not run. Skipped classes will " @@ -3914,17 +3964,17 @@ msgstr "" "`SkipTest` alors la classe est signalée comme ayant été ignorée au lieu " "d'être en échec." -#: library/unittest.rst:2382 +#: library/unittest.rst:2403 msgid "setUpModule and tearDownModule" msgstr "" "Module de mise en place (*setUpModule*) et de démantèlement des tests " "(*tearDownModule*)" -#: library/unittest.rst:2384 +#: library/unittest.rst:2405 msgid "These should be implemented as functions::" msgstr "Elles doivent être implémentées en tant que fonctions ::" -#: library/unittest.rst:2392 +#: library/unittest.rst:2413 msgid "" "If an exception is raised in a ``setUpModule`` then none of the tests in the " "module will be run and the ``tearDownModule`` will not be run. If the " @@ -3937,7 +3987,7 @@ msgstr "" "exception :exc:`SkipTest` alors le module est signalé comme ayant été ignoré " "au lieu d'être en échec." -#: library/unittest.rst:2397 +#: library/unittest.rst:2418 msgid "" "To add cleanup code that must be run even in the case of an exception, use " "``addModuleCleanup``:" @@ -3945,7 +3995,7 @@ msgstr "" "Pour ajouter du code de nettoyage qui doit être exécuté même en cas " "d'exception, utilisez ``addModuleCleanup`` :" -#: library/unittest.rst:2403 +#: library/unittest.rst:2424 msgid "" "Add a function to be called after :func:`tearDownModule` to cleanup " "resources used during the test class. Functions will be called in reverse " @@ -3960,7 +4010,7 @@ msgstr "" "arguments et arguments nommés passés à :meth:`addModuleCleanup` quand elles " "sont ajoutées." -#: library/unittest.rst:2409 +#: library/unittest.rst:2430 msgid "" "If :meth:`setUpModule` fails, meaning that :func:`tearDownModule` is not " "called, then any cleanup functions added will still be called." @@ -3969,7 +4019,7 @@ msgstr "" "pas appelée, alors les fonctions de nettoyage ajoutées sont quand même " "toujours appelées." -#: library/unittest.rst:2417 +#: library/unittest.rst:2438 msgid "" "This function is called unconditionally after :func:`tearDownModule`, or " "after :func:`setUpModule` if :func:`setUpModule` raises an exception." @@ -3977,7 +4027,7 @@ msgstr "" "Cette méthode est appelée sans conditions après :meth:`tearDownModule`, ou " "après :meth:`setUpModule` si :meth:`setUpModule` lève une exception." -#: library/unittest.rst:2420 +#: library/unittest.rst:2441 msgid "" "It is responsible for calling all the cleanup functions added by :func:" "`addCleanupModule`. If you need cleanup functions to be called *prior* to :" @@ -3988,7 +4038,7 @@ msgstr "" "nettoyage à appeler *avant* l'appel à :meth:`tearDownModule` alors vous " "pouvez appeler :meth:`doCleanupsModule` vous-même." -#: library/unittest.rst:2425 +#: library/unittest.rst:2446 msgid "" ":func:`doModuleCleanups` pops methods off the stack of cleanup functions one " "at a time, so it can be called at any time." @@ -3997,11 +4047,11 @@ msgstr "" "nettoyage une à la fois, de sorte qu'elles peuvent être appelées à tout " "moment." -#: library/unittest.rst:2431 +#: library/unittest.rst:2452 msgid "Signal Handling" msgstr "Traitement des signaux" -#: library/unittest.rst:2435 +#: library/unittest.rst:2456 msgid "" "The :option:`-c/--catch ` command-line option to unittest, " "along with the ``catchbreak`` parameter to :func:`unittest.main()`, provide " @@ -4018,7 +4068,7 @@ msgstr "" "rapporte tous les résultats obtenus jusqu'à présent. Un deuxième contrôle-C " "lève une exception classique :exc:`KeyboardInterrupt`." -#: library/unittest.rst:2442 +#: library/unittest.rst:2463 msgid "" "The control-c handling signal handler attempts to remain compatible with " "code or tests that install their own :const:`signal.SIGINT` handler. If the " @@ -4039,7 +4089,7 @@ msgstr "" "individuels qui ont besoin que le signal *contrôle-C* \"*unittest*\" soit " "désactivée, le décorateur :func:`removeHandler` peut être utilisé." -#: library/unittest.rst:2451 +#: library/unittest.rst:2472 msgid "" "There are a few utility functions for framework authors to enable control-c " "handling functionality within test frameworks." @@ -4048,7 +4098,7 @@ msgstr "" "d'activer la fonctionnalité de gestion des *contrôle-C* dans les cadriciels " "de test." -#: library/unittest.rst:2456 +#: library/unittest.rst:2477 msgid "" "Install the control-c handler. When a :const:`signal.SIGINT` is received " "(usually in response to the user pressing control-c) all registered results " @@ -4059,7 +4109,7 @@ msgstr "" "tous les résultats enregistrés vont appeler la méthode :meth:`~TestResult." "stop`." -#: library/unittest.rst:2463 +#: library/unittest.rst:2484 msgid "" "Register a :class:`TestResult` object for control-c handling. Registering a " "result stores a weak reference to it, so it doesn't prevent the result from " @@ -4070,7 +4120,7 @@ msgstr "" "sorte qu'il n'empêche pas que le résultat soit collecté par le ramasse-" "miette." -#: library/unittest.rst:2467 +#: library/unittest.rst:2488 msgid "" "Registering a :class:`TestResult` object has no side-effects if control-c " "handling is not enabled, so test frameworks can unconditionally register all " @@ -4081,7 +4131,7 @@ msgstr "" "peuvent enregistrer sans condition tous les résultats qu'ils créent " "indépendamment du fait que la gestion soit activée ou non." -#: library/unittest.rst:2474 +#: library/unittest.rst:2495 msgid "" "Remove a registered result. Once a result has been removed then :meth:" "`~TestResult.stop` will no longer be called on that result object in " @@ -4091,7 +4141,7 @@ msgstr "" "meth:`~TestResult.stop` n'est plus appelé sur cet objet résultat en réponse " "à un *contrôle-c*." -#: library/unittest.rst:2481 +#: library/unittest.rst:2502 msgid "" "When called without arguments this function removes the control-c handler if " "it has been installed. This function can also be used as a test decorator to " diff --git a/library/urllib.parse.po b/library/urllib.parse.po index 1d70a4704..f901d11a9 100644 --- a/library/urllib.parse.po +++ b/library/urllib.parse.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -32,7 +32,7 @@ msgstr "" #: library/urllib.parse.rst:23 msgid "" -"The module has been designed to match the Internet RFC on Relative Uniform " +"The module has been designed to match the internet RFC on Relative Uniform " "Resource Locators. It supports the following URL schemes: ``file``, ``ftp``, " "``gopher``, ``hdl``, ``http``, ``https``, ``imap``, ``mailto``, ``mms``, " "``news``, ``nntp``, ``prospero``, ``rsync``, ``rtsp``, ``rtspu``, ``sftp``, " @@ -97,65 +97,65 @@ msgid "" "accessed by index or as named attributes, which are:" msgstr "" -#: library/urllib.parse.rst:280 library/urllib.parse.rst:384 +#: library/urllib.parse.rst:281 library/urllib.parse.rst:385 msgid "Attribute" msgstr "Attribut" -#: library/urllib.parse.rst:280 library/urllib.parse.rst:384 +#: library/urllib.parse.rst:281 library/urllib.parse.rst:385 msgid "Index" msgstr "Index" -#: library/urllib.parse.rst:280 library/urllib.parse.rst:384 +#: library/urllib.parse.rst:281 library/urllib.parse.rst:385 msgid "Value" msgstr "Valeur" -#: library/urllib.parse.rst:280 library/urllib.parse.rst:384 +#: library/urllib.parse.rst:281 library/urllib.parse.rst:385 msgid "Value if not present" msgstr "" -#: library/urllib.parse.rst:282 +#: library/urllib.parse.rst:283 msgid ":attr:`scheme`" msgstr ":attr:`scheme`" -#: library/urllib.parse.rst:282 library/urllib.parse.rst:386 +#: library/urllib.parse.rst:283 library/urllib.parse.rst:387 msgid "0" msgstr "0" -#: library/urllib.parse.rst:282 +#: library/urllib.parse.rst:283 msgid "URL scheme specifier" msgstr "" -#: library/urllib.parse.rst:282 +#: library/urllib.parse.rst:283 msgid "*scheme* parameter" msgstr "" -#: library/urllib.parse.rst:284 +#: library/urllib.parse.rst:285 msgid ":attr:`netloc`" msgstr ":attr:`netloc`" -#: library/urllib.parse.rst:284 library/urllib.parse.rst:388 +#: library/urllib.parse.rst:285 library/urllib.parse.rst:389 msgid "1" msgstr "1" -#: library/urllib.parse.rst:284 +#: library/urllib.parse.rst:285 msgid "Network location part" msgstr "" #: library/urllib.parse.rst:102 library/urllib.parse.rst:107 -#: library/urllib.parse.rst:284 library/urllib.parse.rst:288 -#: library/urllib.parse.rst:386 library/urllib.parse.rst:388 +#: library/urllib.parse.rst:285 library/urllib.parse.rst:289 +#: library/urllib.parse.rst:387 library/urllib.parse.rst:389 msgid "empty string" msgstr "" -#: library/urllib.parse.rst:286 +#: library/urllib.parse.rst:287 msgid ":attr:`path`" msgstr ":attr:`path`" -#: library/urllib.parse.rst:286 +#: library/urllib.parse.rst:287 msgid "2" msgstr "2" -#: library/urllib.parse.rst:286 +#: library/urllib.parse.rst:287 msgid "Hierarchical path" msgstr "" @@ -163,7 +163,7 @@ msgstr "" msgid ":attr:`params`" msgstr ":attr:`params`" -#: library/urllib.parse.rst:288 +#: library/urllib.parse.rst:289 msgid "3" msgstr "3" @@ -171,19 +171,19 @@ msgstr "3" msgid "Parameters for last path element" msgstr "" -#: library/urllib.parse.rst:288 +#: library/urllib.parse.rst:289 msgid ":attr:`query`" msgstr ":attr:`query`" -#: library/urllib.parse.rst:290 +#: library/urllib.parse.rst:291 msgid "4" msgstr "4" -#: library/urllib.parse.rst:288 +#: library/urllib.parse.rst:289 msgid "Query component" msgstr "" -#: library/urllib.parse.rst:290 library/urllib.parse.rst:388 +#: library/urllib.parse.rst:291 library/urllib.parse.rst:389 msgid ":attr:`fragment`" msgstr ":attr:`fragment`" @@ -191,61 +191,61 @@ msgstr ":attr:`fragment`" msgid "5" msgstr "5" -#: library/urllib.parse.rst:290 library/urllib.parse.rst:388 +#: library/urllib.parse.rst:291 library/urllib.parse.rst:389 msgid "Fragment identifier" msgstr "" -#: library/urllib.parse.rst:292 +#: library/urllib.parse.rst:293 msgid ":attr:`username`" msgstr ":attr:`username`" -#: library/urllib.parse.rst:292 +#: library/urllib.parse.rst:293 msgid "User name" msgstr "" #: library/urllib.parse.rst:113 library/urllib.parse.rst:117 -#: library/urllib.parse.rst:294 library/urllib.parse.rst:298 +#: library/urllib.parse.rst:295 library/urllib.parse.rst:299 msgid ":const:`None`" msgstr ":const:`None`" -#: library/urllib.parse.rst:294 +#: library/urllib.parse.rst:295 msgid ":attr:`password`" msgstr ":attr:`password`" -#: library/urllib.parse.rst:294 +#: library/urllib.parse.rst:295 msgid "Password" msgstr "" -#: library/urllib.parse.rst:296 +#: library/urllib.parse.rst:297 msgid ":attr:`hostname`" msgstr ":attr:`hostname`" -#: library/urllib.parse.rst:296 +#: library/urllib.parse.rst:297 msgid "Host name (lower case)" msgstr "" -#: library/urllib.parse.rst:298 +#: library/urllib.parse.rst:299 msgid ":attr:`port`" msgstr ":attr:`port`" -#: library/urllib.parse.rst:298 +#: library/urllib.parse.rst:299 msgid "Port number as integer, if present" msgstr "" -#: library/urllib.parse.rst:302 +#: library/urllib.parse.rst:303 msgid "" "Reading the :attr:`port` attribute will raise a :exc:`ValueError` if an " "invalid port is specified in the URL. See section :ref:`urlparse-result-" "object` for more information on the result object." msgstr "" -#: library/urllib.parse.rst:306 +#: library/urllib.parse.rst:307 msgid "" "Unmatched square brackets in the :attr:`netloc` attribute will raise a :exc:" "`ValueError`." msgstr "" -#: library/urllib.parse.rst:309 +#: library/urllib.parse.rst:310 msgid "" "Characters in the :attr:`netloc` attribute that decompose under NFKC " "normalization (as used by the IDNA encoding) into any of ``/``, ``?``, " @@ -268,17 +268,17 @@ msgstr "" #: library/urllib.parse.rst:154 msgid "" "The fragment is now parsed for all URL schemes (unless *allow_fragment* is " -"false), in accordance with :rfc:`3986`. Previously, a whitelist of schemes " +"false), in accordance with :rfc:`3986`. Previously, an allowlist of schemes " "that support fragments existed." msgstr "" -#: library/urllib.parse.rst:317 +#: library/urllib.parse.rst:318 msgid "" "Out-of-range port numbers now raise :exc:`ValueError`, instead of returning :" "const:`None`." msgstr "" -#: library/urllib.parse.rst:321 +#: library/urllib.parse.rst:322 msgid "" "Characters that affect netloc parsing under NFKC normalization will now " "raise :exc:`ValueError`." @@ -334,18 +334,18 @@ msgid "" "parameter set to ``True``) to convert such dictionaries into query strings." msgstr "" -#: library/urllib.parse.rst:243 +#: library/urllib.parse.rst:244 msgid "Add *encoding* and *errors* parameters." msgstr "" -#: library/urllib.parse.rst:246 +#: library/urllib.parse.rst:247 msgid "Added *max_num_fields* parameter." msgstr "" -#: library/urllib.parse.rst:249 +#: library/urllib.parse.rst:250 msgid "" "Added *separator* parameter with the default value of ``&``. Python versions " -"earlier than Python 3.9.2 allowed using both ``;`` and ``&`` as query " +"earlier than Python 3.10 allowed using both ``;`` and ``&`` as query " "parameter separator. This has been changed to allow only a single separator " "key, with ``&`` as the default separator." msgstr "" @@ -357,13 +357,13 @@ msgid "" "value pairs." msgstr "" -#: library/urllib.parse.rst:240 +#: library/urllib.parse.rst:241 msgid "" "Use the :func:`urllib.parse.urlencode` function to convert such lists of " "pairs into query strings." msgstr "" -#: library/urllib.parse.rst:258 +#: library/urllib.parse.rst:259 msgid "" "Construct a URL from a tuple as returned by ``urlparse()``. The *parts* " "argument can be any six-item iterable. This may result in a slightly " @@ -372,7 +372,7 @@ msgid "" "states that these are equivalent)." msgstr "" -#: library/urllib.parse.rst:267 +#: library/urllib.parse.rst:268 msgid "" "This is similar to :func:`urlparse`, but does not split the params from the " "URL. This should generally be used instead of :func:`urlparse` if the more " @@ -382,23 +382,23 @@ msgid "" "returns a 5-item :term:`named tuple`::" msgstr "" -#: library/urllib.parse.rst:380 +#: library/urllib.parse.rst:381 msgid "" "The return value is a :term:`named tuple`, its items can be accessed by " "index or as named attributes:" msgstr "" -#: library/urllib.parse.rst:314 +#: library/urllib.parse.rst:315 msgid "" "Following the `WHATWG spec`_ that updates RFC 3986, ASCII newline ``\\n``, ``" "\\r`` and tab ``\\t`` characters are stripped from the URL." msgstr "" -#: library/urllib.parse.rst:325 +#: library/urllib.parse.rst:326 msgid "ASCII newline and tab characters are stripped from the URL." msgstr "" -#: library/urllib.parse.rst:332 +#: library/urllib.parse.rst:333 msgid "" "Combine the elements of a tuple as returned by :func:`urlsplit` into a " "complete URL as a string. The *parts* argument can be any five-item " @@ -407,7 +407,7 @@ msgid "" "a ? with an empty query; the RFC states that these are equivalent)." msgstr "" -#: library/urllib.parse.rst:341 +#: library/urllib.parse.rst:342 msgid "" "Construct a full (\"absolute\") URL by combining a \"base URL\" (*base*) " "with another URL (*url*). Informally, this uses components of the base URL, " @@ -415,30 +415,30 @@ msgid "" "path, to provide missing components in the relative URL. For example:" msgstr "" -#: library/urllib.parse.rst:350 +#: library/urllib.parse.rst:351 msgid "" "The *allow_fragments* argument has the same meaning and default as for :func:" "`urlparse`." msgstr "" -#: library/urllib.parse.rst:355 +#: library/urllib.parse.rst:356 msgid "" "If *url* is an absolute URL (that is, it starts with ``//`` or ``scheme://" "``), the *url*'s hostname and/or scheme will be present in the result. For " "example:" msgstr "" -#: library/urllib.parse.rst:364 +#: library/urllib.parse.rst:365 msgid "" "If you do not want that behavior, preprocess the *url* with :func:`urlsplit` " "and :func:`urlunsplit`, removing possible *scheme* and *netloc* parts." msgstr "" -#: library/urllib.parse.rst:370 +#: library/urllib.parse.rst:371 msgid "Behavior updated to match the semantics defined in :rfc:`3986`." msgstr "" -#: library/urllib.parse.rst:375 +#: library/urllib.parse.rst:376 msgid "" "If *url* contains a fragment identifier, return a modified version of *url* " "with no fragment identifier, and the fragment identifier as a separate " @@ -446,25 +446,25 @@ msgid "" "unmodified and an empty string." msgstr "" -#: library/urllib.parse.rst:386 +#: library/urllib.parse.rst:387 msgid ":attr:`url`" msgstr ":attr:`url`" -#: library/urllib.parse.rst:386 +#: library/urllib.parse.rst:387 msgid "URL with no fragment" msgstr "" -#: library/urllib.parse.rst:391 +#: library/urllib.parse.rst:392 msgid "" "See section :ref:`urlparse-result-object` for more information on the result " "object." msgstr "" -#: library/urllib.parse.rst:394 +#: library/urllib.parse.rst:395 msgid "Result is a structured object rather than a simple 2-tuple." msgstr "" -#: library/urllib.parse.rst:399 +#: library/urllib.parse.rst:400 msgid "" "Extract the url from a wrapped URL (that is, a string formatted as ````, ````, ``URL:scheme://host/path`` " @@ -472,11 +472,11 @@ msgid "" "without changes." msgstr "" -#: library/urllib.parse.rst:407 +#: library/urllib.parse.rst:408 msgid "Parsing ASCII Encoded Bytes" msgstr "" -#: library/urllib.parse.rst:409 +#: library/urllib.parse.rst:410 msgid "" "The URL parsing functions were originally designed to operate on character " "strings only. In practice, it is useful to be able to manipulate properly " @@ -485,14 +485,14 @@ msgid "" "`bytearray` objects in addition to :class:`str` objects." msgstr "" -#: library/urllib.parse.rst:415 +#: library/urllib.parse.rst:416 msgid "" "If :class:`str` data is passed in, the result will also contain only :class:" "`str` data. If :class:`bytes` or :class:`bytearray` data is passed in, the " "result will contain only :class:`bytes` data." msgstr "" -#: library/urllib.parse.rst:419 +#: library/urllib.parse.rst:420 msgid "" "Attempting to mix :class:`str` data with :class:`bytes` or :class:" "`bytearray` in a single function call will result in a :exc:`TypeError` " @@ -500,7 +500,7 @@ msgid "" "trigger :exc:`UnicodeDecodeError`." msgstr "" -#: library/urllib.parse.rst:424 +#: library/urllib.parse.rst:425 msgid "" "To support easier conversion of result objects between :class:`str` and :" "class:`bytes`, all return values from URL parsing functions provide either " @@ -513,14 +513,14 @@ msgid "" "`str` data (for :meth:`decode` methods)." msgstr "" -#: library/urllib.parse.rst:435 +#: library/urllib.parse.rst:436 msgid "" "Applications that need to operate on potentially improperly quoted URLs that " "may contain non-ASCII data will need to do their own decoding from bytes to " "characters before invoking the URL parsing methods." msgstr "" -#: library/urllib.parse.rst:439 +#: library/urllib.parse.rst:440 msgid "" "The behaviour described in this section applies only to the URL parsing " "functions. The URL quoting functions use their own rules when producing or " @@ -528,15 +528,15 @@ msgid "" "URL quoting functions." msgstr "" -#: library/urllib.parse.rst:444 +#: library/urllib.parse.rst:445 msgid "URL parsing functions now accept ASCII encoded byte sequences" msgstr "" -#: library/urllib.parse.rst:451 +#: library/urllib.parse.rst:452 msgid "Structured Parse Results" msgstr "" -#: library/urllib.parse.rst:453 +#: library/urllib.parse.rst:454 msgid "" "The result objects from the :func:`urlparse`, :func:`urlsplit` and :func:" "`urldefrag` functions are subclasses of the :class:`tuple` type. These " @@ -545,7 +545,7 @@ msgid "" "section, as well as an additional method:" msgstr "" -#: library/urllib.parse.rst:461 +#: library/urllib.parse.rst:462 msgid "" "Return the re-combined version of the original URL as a string. This may " "differ from the original URL in that the scheme may be normalized to lower " @@ -553,72 +553,72 @@ msgid "" "queries, and fragment identifiers will be removed." msgstr "" -#: library/urllib.parse.rst:466 +#: library/urllib.parse.rst:467 msgid "" "For :func:`urldefrag` results, only empty fragment identifiers will be " "removed. For :func:`urlsplit` and :func:`urlparse` results, all noted " "changes will be made to the URL returned by this method." msgstr "" -#: library/urllib.parse.rst:470 +#: library/urllib.parse.rst:471 msgid "" "The result of this method remains unchanged if passed back through the " "original parsing function:" msgstr "" -#: library/urllib.parse.rst:483 +#: library/urllib.parse.rst:484 msgid "" "The following classes provide the implementations of the structured parse " "results when operating on :class:`str` objects:" msgstr "" -#: library/urllib.parse.rst:488 +#: library/urllib.parse.rst:489 msgid "" "Concrete class for :func:`urldefrag` results containing :class:`str` data. " "The :meth:`encode` method returns a :class:`DefragResultBytes` instance." msgstr "" -#: library/urllib.parse.rst:496 +#: library/urllib.parse.rst:497 msgid "" "Concrete class for :func:`urlparse` results containing :class:`str` data. " "The :meth:`encode` method returns a :class:`ParseResultBytes` instance." msgstr "" -#: library/urllib.parse.rst:502 +#: library/urllib.parse.rst:503 msgid "" "Concrete class for :func:`urlsplit` results containing :class:`str` data. " "The :meth:`encode` method returns a :class:`SplitResultBytes` instance." msgstr "" -#: library/urllib.parse.rst:507 +#: library/urllib.parse.rst:508 msgid "" "The following classes provide the implementations of the parse results when " "operating on :class:`bytes` or :class:`bytearray` objects:" msgstr "" -#: library/urllib.parse.rst:512 +#: library/urllib.parse.rst:513 msgid "" "Concrete class for :func:`urldefrag` results containing :class:`bytes` data. " "The :meth:`decode` method returns a :class:`DefragResult` instance." msgstr "" -#: library/urllib.parse.rst:520 +#: library/urllib.parse.rst:521 msgid "" "Concrete class for :func:`urlparse` results containing :class:`bytes` data. " "The :meth:`decode` method returns a :class:`ParseResult` instance." msgstr "" -#: library/urllib.parse.rst:528 +#: library/urllib.parse.rst:529 msgid "" "Concrete class for :func:`urlsplit` results containing :class:`bytes` data. " "The :meth:`decode` method returns a :class:`SplitResult` instance." msgstr "" -#: library/urllib.parse.rst:536 +#: library/urllib.parse.rst:537 msgid "URL Quoting" msgstr "" -#: library/urllib.parse.rst:538 +#: library/urllib.parse.rst:539 msgid "" "The URL quoting functions focus on taking program data and making it safe " "for use as URL components by quoting special characters and appropriately " @@ -627,7 +627,7 @@ msgid "" "isn't already covered by the URL parsing functions above." msgstr "" -#: library/urllib.parse.rst:546 +#: library/urllib.parse.rst:547 msgid "" "Replace special characters in *string* using the ``%xx`` escape. Letters, " "digits, and the characters ``'_.-~'`` are never quoted. By default, this " @@ -636,17 +636,17 @@ msgid "" "quoted --- its default value is ``'/'``." msgstr "" -#: library/urllib.parse.rst:598 library/urllib.parse.rst:627 +#: library/urllib.parse.rst:599 library/urllib.parse.rst:628 msgid "*string* may be either a :class:`str` or a :class:`bytes` object." msgstr "" -#: library/urllib.parse.rst:554 +#: library/urllib.parse.rst:555 msgid "" "Moved from :rfc:`2396` to :rfc:`3986` for quoting URL strings. \"~\" is now " "included in the set of unreserved characters." msgstr "" -#: library/urllib.parse.rst:558 +#: library/urllib.parse.rst:559 msgid "" "The optional *encoding* and *errors* parameters specify how to deal with non-" "ASCII characters, as accepted by the :meth:`str.encode` method. *encoding* " @@ -656,17 +656,17 @@ msgid "" "`TypeError` is raised." msgstr "" -#: library/urllib.parse.rst:566 +#: library/urllib.parse.rst:567 msgid "" "Note that ``quote(string, safe, encoding, errors)`` is equivalent to " "``quote_from_bytes(string.encode(encoding, errors), safe)``." msgstr "" -#: library/urllib.parse.rst:569 +#: library/urllib.parse.rst:570 msgid "Example: ``quote('/El Niño/')`` yields ``'/El%20Ni%C3%B1o/'``." msgstr "" -#: library/urllib.parse.rst:574 +#: library/urllib.parse.rst:575 msgid "" "Like :func:`quote`, but also replace spaces with plus signs, as required for " "quoting HTML form values when building up a query string to go into a URL. " @@ -674,21 +674,21 @@ msgid "" "*safe*. It also does not have *safe* default to ``'/'``." msgstr "" -#: library/urllib.parse.rst:579 +#: library/urllib.parse.rst:580 msgid "Example: ``quote_plus('/El Niño/')`` yields ``'%2FEl+Ni%C3%B1o%2F'``." msgstr "" -#: library/urllib.parse.rst:584 +#: library/urllib.parse.rst:585 msgid "" "Like :func:`quote`, but accepts a :class:`bytes` object rather than a :class:" "`str`, and does not perform string-to-bytes encoding." msgstr "" -#: library/urllib.parse.rst:587 +#: library/urllib.parse.rst:588 msgid "Example: ``quote_from_bytes(b'a&\\xef')`` yields ``'a%26%EF'``." msgstr "" -#: library/urllib.parse.rst:593 +#: library/urllib.parse.rst:594 msgid "" "Replace ``%xx`` escapes with their single-character equivalent. The optional " "*encoding* and *errors* parameters specify how to decode percent-encoded " @@ -696,52 +696,52 @@ msgid "" "method." msgstr "" -#: library/urllib.parse.rst:600 +#: library/urllib.parse.rst:601 msgid "" "*encoding* defaults to ``'utf-8'``. *errors* defaults to ``'replace'``, " "meaning invalid sequences are replaced by a placeholder character." msgstr "" -#: library/urllib.parse.rst:604 +#: library/urllib.parse.rst:605 msgid "Example: ``unquote('/El%20Ni%C3%B1o/')`` yields ``'/El Niño/'``." msgstr "" -#: library/urllib.parse.rst:606 +#: library/urllib.parse.rst:607 msgid "" "*string* parameter supports bytes and str objects (previously only str)." msgstr "" -#: library/urllib.parse.rst:614 +#: library/urllib.parse.rst:615 msgid "" "Like :func:`unquote`, but also replace plus signs with spaces, as required " "for unquoting HTML form values." msgstr "" -#: library/urllib.parse.rst:617 +#: library/urllib.parse.rst:618 msgid "*string* must be a :class:`str`." msgstr "" -#: library/urllib.parse.rst:619 +#: library/urllib.parse.rst:620 msgid "Example: ``unquote_plus('/El+Ni%C3%B1o/')`` yields ``'/El Niño/'``." msgstr "" -#: library/urllib.parse.rst:624 +#: library/urllib.parse.rst:625 msgid "" "Replace ``%xx`` escapes with their single-octet equivalent, and return a :" "class:`bytes` object." msgstr "" -#: library/urllib.parse.rst:629 +#: library/urllib.parse.rst:630 msgid "" "If it is a :class:`str`, unescaped non-ASCII characters in *string* are " "encoded into UTF-8 bytes." msgstr "" -#: library/urllib.parse.rst:632 +#: library/urllib.parse.rst:633 msgid "Example: ``unquote_to_bytes('a%26%EF')`` yields ``b'a&\\xef'``." msgstr "" -#: library/urllib.parse.rst:638 +#: library/urllib.parse.rst:639 msgid "" "Convert a mapping object or a sequence of two-element tuples, which may " "contain :class:`str` or :class:`bytes` objects, to a percent-encoded ASCII " @@ -750,7 +750,7 @@ msgid "" "be encoded to bytes, otherwise it would result in a :exc:`TypeError`." msgstr "" -#: library/urllib.parse.rst:645 +#: library/urllib.parse.rst:646 msgid "" "The resulting string is a series of ``key=value`` pairs separated by ``'&'`` " "characters, where both *key* and *value* are quoted using the *quote_via* " @@ -763,7 +763,7 @@ msgid "" "``quote`` and specify a value for *safe*." msgstr "" -#: library/urllib.parse.rst:655 +#: library/urllib.parse.rst:656 msgid "" "When a sequence of two-element tuples is used as the *query* argument, the " "first element of each tuple is a key and the second is a value. The value " @@ -774,49 +774,49 @@ msgid "" "order of parameter tuples in the sequence." msgstr "" -#: library/urllib.parse.rst:663 +#: library/urllib.parse.rst:664 msgid "" "The *safe*, *encoding*, and *errors* parameters are passed down to " "*quote_via* (the *encoding* and *errors* parameters are only passed when a " "query element is a :class:`str`)." msgstr "" -#: library/urllib.parse.rst:667 +#: library/urllib.parse.rst:668 msgid "" "To reverse this encoding process, :func:`parse_qs` and :func:`parse_qsl` are " "provided in this module to parse query strings into Python data structures." msgstr "" -#: library/urllib.parse.rst:670 +#: library/urllib.parse.rst:671 msgid "" "Refer to :ref:`urllib examples ` to find out how the :func:" "`urllib.parse.urlencode` method can be used for generating the query string " "of a URL or data for a POST request." msgstr "" -#: library/urllib.parse.rst:674 +#: library/urllib.parse.rst:675 msgid "*query* supports bytes and string objects." msgstr "" -#: library/urllib.parse.rst:677 +#: library/urllib.parse.rst:678 msgid "*quote_via* parameter." msgstr "" -#: library/urllib.parse.rst:685 +#: library/urllib.parse.rst:686 msgid "`WHATWG`_ - URL Living standard" msgstr "" -#: library/urllib.parse.rst:684 +#: library/urllib.parse.rst:685 msgid "" "Working Group for the URL Standard that defines URLs, domains, IP addresses, " "the application/x-www-form-urlencoded format, and their API." msgstr "" -#: library/urllib.parse.rst:691 +#: library/urllib.parse.rst:692 msgid ":rfc:`3986` - Uniform Resource Identifiers" msgstr "" -#: library/urllib.parse.rst:688 +#: library/urllib.parse.rst:689 msgid "" "This is the current standard (STD66). Any changes to urllib.parse module " "should conform to this. Certain deviations could be observed, which are " @@ -824,47 +824,47 @@ msgid "" "requirements as commonly observed in major browsers." msgstr "" -#: library/urllib.parse.rst:694 +#: library/urllib.parse.rst:695 msgid ":rfc:`2732` - Format for Literal IPv6 Addresses in URL's." msgstr "" -#: library/urllib.parse.rst:694 +#: library/urllib.parse.rst:695 msgid "This specifies the parsing requirements of IPv6 URLs." msgstr "" -#: library/urllib.parse.rst:698 +#: library/urllib.parse.rst:699 msgid ":rfc:`2396` - Uniform Resource Identifiers (URI): Generic Syntax" msgstr "" -#: library/urllib.parse.rst:697 +#: library/urllib.parse.rst:698 msgid "" "Document describing the generic syntactic requirements for both Uniform " "Resource Names (URNs) and Uniform Resource Locators (URLs)." msgstr "" -#: library/urllib.parse.rst:701 +#: library/urllib.parse.rst:702 msgid ":rfc:`2368` - The mailto URL scheme." msgstr "" -#: library/urllib.parse.rst:701 +#: library/urllib.parse.rst:702 msgid "Parsing requirements for mailto URL schemes." msgstr "" -#: library/urllib.parse.rst:706 +#: library/urllib.parse.rst:707 msgid ":rfc:`1808` - Relative Uniform Resource Locators" msgstr "" -#: library/urllib.parse.rst:704 +#: library/urllib.parse.rst:705 msgid "" "This Request For Comments includes the rules for joining an absolute and a " "relative URL, including a fair number of \"Abnormal Examples\" which govern " "the treatment of border cases." msgstr "" -#: library/urllib.parse.rst:708 +#: library/urllib.parse.rst:709 msgid ":rfc:`1738` - Uniform Resource Locators (URL)" msgstr "" -#: library/urllib.parse.rst:709 +#: library/urllib.parse.rst:710 msgid "This specifies the formal syntax and semantics of absolute URLs." msgstr "" diff --git a/library/urllib.request.po b/library/urllib.request.po index b2854b3de..7e3d7aa2e 100644 --- a/library/urllib.request.po +++ b/library/urllib.request.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -174,14 +174,21 @@ msgstr "" msgid "*context* was added." msgstr "" -#: library/urllib.request.rst:114 +#: library/urllib.request.rst:112 +msgid "" +"HTTPS connection now send an ALPN extension with protocol indicator " +"``http/1.1`` when no *context* is given. Custom *context* should set ALPN " +"protocols with :meth:`~ssl.SSLContext.set_alpn_protocol`." +msgstr "" + +#: library/urllib.request.rst:119 msgid "" "*cafile*, *capath* and *cadefault* are deprecated in favor of *context*. " "Please use :meth:`ssl.SSLContext.load_cert_chain` instead, or let :func:`ssl." "create_default_context` select the system's trusted CA certificates for you." msgstr "" -#: library/urllib.request.rst:122 +#: library/urllib.request.rst:127 msgid "" "Install an :class:`OpenerDirector` instance as the default global opener. " "Installing an opener is only necessary if you want urlopen to use that " @@ -190,7 +197,7 @@ msgid "" "`OpenerDirector`, and any class with the appropriate interface will work." msgstr "" -#: library/urllib.request.rst:132 +#: library/urllib.request.rst:137 msgid "" "Return an :class:`OpenerDirector` instance, which chains the handlers in the " "order given. *handler*\\s can be either instances of :class:`BaseHandler`, " @@ -204,19 +211,19 @@ msgid "" "`HTTPErrorProcessor`." msgstr "" -#: library/urllib.request.rst:142 +#: library/urllib.request.rst:147 msgid "" "If the Python installation has SSL support (i.e., if the :mod:`ssl` module " "can be imported), :class:`HTTPSHandler` will also be added." msgstr "" -#: library/urllib.request.rst:145 +#: library/urllib.request.rst:150 msgid "" "A :class:`BaseHandler` subclass may also change its :attr:`handler_order` " "attribute to modify its position in the handlers list." msgstr "" -#: library/urllib.request.rst:151 +#: library/urllib.request.rst:156 msgid "" "Convert the pathname *path* from the local syntax for a path to the form " "used in the path component of a URL. This does not produce a complete URL. " @@ -224,25 +231,24 @@ msgid "" "quote` function." msgstr "" -#: library/urllib.request.rst:158 +#: library/urllib.request.rst:163 msgid "" "Convert the path component *path* from a percent-encoded URL to the local " "syntax for a path. This does not accept a complete URL. This function " "uses :func:`~urllib.parse.unquote` to decode *path*." msgstr "" -#: library/urllib.request.rst:164 +#: library/urllib.request.rst:169 msgid "" "This helper function returns a dictionary of scheme to proxy server URL " "mappings. It scans the environment for variables named ``_proxy``, " "in a case insensitive approach, for all operating systems first, and when it " -"cannot find it, looks for proxy information from Mac OSX System " -"Configuration for Mac OS X and Windows Systems Registry for Windows. If both " -"lowercase and uppercase environment variables exist (and disagree), " -"lowercase is preferred." +"cannot find it, looks for proxy information from System Configuration for " +"macOS and Windows Systems Registry for Windows. If both lowercase and " +"uppercase environment variables exist (and disagree), lowercase is preferred." msgstr "" -#: library/urllib.request.rst:174 +#: library/urllib.request.rst:179 msgid "" "If the environment variable ``REQUEST_METHOD`` is set, which usually " "indicates your script is running in a CGI environment, the environment " @@ -253,19 +259,19 @@ msgid "" "(or at least the ``_proxy`` suffix)." msgstr "" -#: library/urllib.request.rst:183 +#: library/urllib.request.rst:188 msgid "The following classes are provided:" msgstr "" -#: library/urllib.request.rst:187 +#: library/urllib.request.rst:192 msgid "This class is an abstraction of a URL request." msgstr "" -#: library/urllib.request.rst:189 +#: library/urllib.request.rst:194 msgid "*url* should be a string containing a valid URL." msgstr "" -#: library/urllib.request.rst:191 +#: library/urllib.request.rst:196 msgid "" "*data* must be an object specifying additional data to send to the server, " "or ``None`` if no such data is needed. Currently HTTP requests are the only " @@ -278,7 +284,7 @@ msgid "" "iterables." msgstr "" -#: library/urllib.request.rst:201 +#: library/urllib.request.rst:206 msgid "" "For an HTTP POST request method, *data* should be a buffer in the standard :" "mimetype:`application/x-www-form-urlencoded` format. The :func:`urllib." @@ -287,7 +293,7 @@ msgid "" "being used as the *data* parameter." msgstr "" -#: library/urllib.request.rst:207 +#: library/urllib.request.rst:212 msgid "" "*headers* should be a dictionary, and will be treated as if :meth:" "`add_header` was called with each key and value as arguments. This is often " @@ -299,7 +305,7 @@ msgid "" "\"Python-urllib/2.6\"`` (on Python 2.6)." msgstr "" -#: library/urllib.request.rst:217 +#: library/urllib.request.rst:222 msgid "" "An appropriate ``Content-Type`` header should be included if the *data* " "argument is present. If this header has not been provided and *data* is not " @@ -307,13 +313,13 @@ msgid "" "default." msgstr "" -#: library/urllib.request.rst:222 +#: library/urllib.request.rst:227 msgid "" "The next two arguments are only of interest for correct handling of third-" "party HTTP cookies:" msgstr "" -#: library/urllib.request.rst:225 +#: library/urllib.request.rst:230 msgid "" "*origin_req_host* should be the request-host of the origin transaction, as " "defined by :rfc:`2965`. It defaults to ``http.cookiejar." @@ -323,7 +329,7 @@ msgid "" "for the page containing the image." msgstr "" -#: library/urllib.request.rst:233 +#: library/urllib.request.rst:238 msgid "" "*unverifiable* should indicate whether the request is unverifiable, as " "defined by :rfc:`2965`. It defaults to ``False``. An unverifiable request " @@ -332,7 +338,7 @@ msgid "" "option to approve the automatic fetching of the image, this should be true." msgstr "" -#: library/urllib.request.rst:240 +#: library/urllib.request.rst:245 msgid "" "*method* should be a string that indicates the HTTP request method that will " "be used (e.g. ``'HEAD'``). If provided, its value is stored in the :attr:" @@ -342,7 +348,7 @@ msgid "" "attribute in the class itself." msgstr "" -#: library/urllib.request.rst:248 +#: library/urllib.request.rst:253 msgid "" "The request will not work as expected if the data object is unable to " "deliver its content more than once (e.g. a file or an iterable that can " @@ -352,64 +358,64 @@ msgid "" "library." msgstr "" -#: library/urllib.request.rst:255 +#: library/urllib.request.rst:260 msgid ":attr:`Request.method` argument is added to the Request class." msgstr "" -#: library/urllib.request.rst:258 +#: library/urllib.request.rst:263 msgid "Default :attr:`Request.method` may be indicated at the class level." msgstr "" -#: library/urllib.request.rst:261 +#: library/urllib.request.rst:266 msgid "" "Do not raise an error if the ``Content-Length`` has not been provided and " "*data* is neither ``None`` nor a bytes object. Fall back to use chunked " "transfer encoding instead." msgstr "" -#: library/urllib.request.rst:268 +#: library/urllib.request.rst:273 msgid "" "The :class:`OpenerDirector` class opens URLs via :class:`BaseHandler`\\ s " "chained together. It manages the chaining of handlers, and recovery from " "errors." msgstr "" -#: library/urllib.request.rst:274 +#: library/urllib.request.rst:279 msgid "" "This is the base class for all registered handlers --- and handles only the " "simple mechanics of registration." msgstr "" -#: library/urllib.request.rst:280 +#: library/urllib.request.rst:285 msgid "" "A class which defines a default handler for HTTP error responses; all " "responses are turned into :exc:`~urllib.error.HTTPError` exceptions." msgstr "" -#: library/urllib.request.rst:286 +#: library/urllib.request.rst:291 msgid "A class to handle redirections." msgstr "" -#: library/urllib.request.rst:291 +#: library/urllib.request.rst:296 msgid "A class to handle HTTP Cookies." msgstr "" -#: library/urllib.request.rst:296 +#: library/urllib.request.rst:301 msgid "" "Cause requests to go through a proxy. If *proxies* is given, it must be a " "dictionary mapping protocol names to URLs of proxies. The default is to read " "the list of proxies from the environment variables ``_proxy``. If " "no proxy environment variables are set, then in a Windows environment proxy " "settings are obtained from the registry's Internet Settings section, and in " -"a Mac OS X environment proxy information is retrieved from the OS X System " +"a macOS environment proxy information is retrieved from the System " "Configuration Framework." msgstr "" -#: library/urllib.request.rst:304 +#: library/urllib.request.rst:309 msgid "To disable autodetected proxy pass an empty dictionary." msgstr "" -#: library/urllib.request.rst:306 +#: library/urllib.request.rst:311 msgid "" "The :envvar:`no_proxy` environment variable can be used to specify hosts " "which shouldn't be reached via proxy; if set, it should be a comma-separated " @@ -417,24 +423,24 @@ msgid "" "``cern.ch,ncsa.uiuc.edu,some.host:8080``." msgstr "" -#: library/urllib.request.rst:313 +#: library/urllib.request.rst:318 msgid "" "``HTTP_PROXY`` will be ignored if a variable ``REQUEST_METHOD`` is set; see " "the documentation on :func:`~urllib.request.getproxies`." msgstr "" -#: library/urllib.request.rst:319 +#: library/urllib.request.rst:324 msgid "Keep a database of ``(realm, uri) -> (user, password)`` mappings." msgstr "" -#: library/urllib.request.rst:324 +#: library/urllib.request.rst:329 msgid "" "Keep a database of ``(realm, uri) -> (user, password)`` mappings. A realm " "of ``None`` is considered a catch-all realm, which is searched if no other " "realm fits." msgstr "" -#: library/urllib.request.rst:331 +#: library/urllib.request.rst:336 msgid "" "A variant of :class:`HTTPPasswordMgrWithDefaultRealm` that also has a " "database of ``uri -> is_authenticated`` mappings. Can be used by a " @@ -442,7 +448,7 @@ msgid "" "immediately instead of waiting for a ``401`` response first." msgstr "" -#: library/urllib.request.rst:341 +#: library/urllib.request.rst:346 msgid "" "This is a mixin class that helps with HTTP authentication, both to the " "remote host and to a proxy. *password_mgr*, if given, should be something " @@ -461,11 +467,11 @@ msgid "" "will automatically include the authentication credentials." msgstr "" -#: library/urllib.request.rst:358 +#: library/urllib.request.rst:363 msgid "Added ``is_authenticated`` support." msgstr "" -#: library/urllib.request.rst:364 +#: library/urllib.request.rst:369 msgid "" "Handle authentication with the remote host. *password_mgr*, if given, should " "be something that is compatible with :class:`HTTPPasswordMgr`; refer to " @@ -474,7 +480,7 @@ msgid "" "presented with a wrong Authentication scheme." msgstr "" -#: library/urllib.request.rst:407 +#: library/urllib.request.rst:412 msgid "" "Handle authentication with the proxy. *password_mgr*, if given, should be " "something that is compatible with :class:`HTTPPasswordMgr`; refer to " @@ -482,7 +488,7 @@ msgid "" "be supported." msgstr "" -#: library/urllib.request.rst:381 +#: library/urllib.request.rst:386 msgid "" "This is a mixin class that helps with HTTP authentication, both to the " "remote host and to a proxy. *password_mgr*, if given, should be something " @@ -490,7 +496,7 @@ msgid "" "`http-password-mgr` for information on the interface that must be supported." msgstr "" -#: library/urllib.request.rst:390 +#: library/urllib.request.rst:395 msgid "" "Handle authentication with the remote host. *password_mgr*, if given, should " "be something that is compatible with :class:`HTTPPasswordMgr`; refer to " @@ -503,108 +509,108 @@ msgid "" "Digest or Basic." msgstr "" -#: library/urllib.request.rst:400 +#: library/urllib.request.rst:405 msgid "Raise :exc:`ValueError` on unsupported Authentication Scheme." msgstr "" -#: library/urllib.request.rst:415 +#: library/urllib.request.rst:420 msgid "A class to handle opening of HTTP URLs." msgstr "" -#: library/urllib.request.rst:420 +#: library/urllib.request.rst:425 msgid "" "A class to handle opening of HTTPS URLs. *context* and *check_hostname* " "have the same meaning as in :class:`http.client.HTTPSConnection`." msgstr "" -#: library/urllib.request.rst:423 +#: library/urllib.request.rst:428 msgid "*context* and *check_hostname* were added." msgstr "" -#: library/urllib.request.rst:429 +#: library/urllib.request.rst:434 msgid "Open local files." msgstr "" -#: library/urllib.request.rst:433 +#: library/urllib.request.rst:438 msgid "Open data URLs." msgstr "" -#: library/urllib.request.rst:439 +#: library/urllib.request.rst:444 msgid "Open FTP URLs." msgstr "" -#: library/urllib.request.rst:444 +#: library/urllib.request.rst:449 msgid "" "Open FTP URLs, keeping a cache of open FTP connections to minimize delays." msgstr "" -#: library/urllib.request.rst:449 +#: library/urllib.request.rst:454 msgid "A catch-all class to handle unknown URLs." msgstr "" -#: library/urllib.request.rst:1149 +#: library/urllib.request.rst:1154 msgid "Process HTTP error responses." msgstr "" -#: library/urllib.request.rst:460 +#: library/urllib.request.rst:465 msgid "Request Objects" msgstr "" -#: library/urllib.request.rst:462 +#: library/urllib.request.rst:467 msgid "" "The following methods describe :class:`Request`'s public interface, and so " "all may be overridden in subclasses. It also defines several public " "attributes that can be used by clients to inspect the parsed request." msgstr "" -#: library/urllib.request.rst:469 +#: library/urllib.request.rst:474 msgid "The original URL passed to the constructor." msgstr "" -#: library/urllib.request.rst:473 +#: library/urllib.request.rst:478 msgid "" "Request.full_url is a property with setter, getter and a deleter. Getting :" "attr:`~Request.full_url` returns the original request URL with the fragment, " "if it was present." msgstr "" -#: library/urllib.request.rst:479 +#: library/urllib.request.rst:484 msgid "The URI scheme." msgstr "" -#: library/urllib.request.rst:483 +#: library/urllib.request.rst:488 msgid "" "The URI authority, typically a host, but may also contain a port separated " "by a colon." msgstr "" -#: library/urllib.request.rst:488 +#: library/urllib.request.rst:493 msgid "The original host for the request, without port." msgstr "" -#: library/urllib.request.rst:492 +#: library/urllib.request.rst:497 msgid "" "The URI path. If the :class:`Request` uses a proxy, then selector will be " "the full URL that is passed to the proxy." msgstr "" -#: library/urllib.request.rst:497 +#: library/urllib.request.rst:502 msgid "The entity body for the request, or ``None`` if not specified." msgstr "" -#: library/urllib.request.rst:499 +#: library/urllib.request.rst:504 msgid "" "Changing value of :attr:`Request.data` now deletes \"Content-Length\" header " "if it was previously set or calculated." msgstr "" -#: library/urllib.request.rst:505 +#: library/urllib.request.rst:510 msgid "" "boolean, indicates whether the request is unverifiable as defined by :rfc:" "`2965`." msgstr "" -#: library/urllib.request.rst:510 +#: library/urllib.request.rst:515 msgid "" "The HTTP request method to use. By default its value is :const:`None`, " "which means that :meth:`~Request.get_method` will do its normal computation " @@ -615,13 +621,13 @@ msgid "" "argument." msgstr "" -#: library/urllib.request.rst:520 +#: library/urllib.request.rst:525 msgid "" "A default value can now be set in subclasses; previously it could only be " "set via the constructor argument." msgstr "" -#: library/urllib.request.rst:527 +#: library/urllib.request.rst:532 msgid "" "Return a string indicating the HTTP request method. If :attr:`Request." "method` is not ``None``, return its value, otherwise return ``'GET'`` if :" @@ -629,11 +635,11 @@ msgid "" "meaningful for HTTP requests." msgstr "" -#: library/urllib.request.rst:532 +#: library/urllib.request.rst:537 msgid "get_method now looks at the value of :attr:`Request.method`." msgstr "" -#: library/urllib.request.rst:538 +#: library/urllib.request.rst:543 msgid "" "Add another header to the request. Headers are currently ignored by all " "handlers except HTTP handlers, where they are added to the list of headers " @@ -644,64 +650,64 @@ msgid "" "way of gaining the same functionality using only one header." msgstr "" -#: library/urllib.request.rst:549 +#: library/urllib.request.rst:554 msgid "Add a header that will not be added to a redirected request." msgstr "" -#: library/urllib.request.rst:554 +#: library/urllib.request.rst:559 msgid "" "Return whether the instance has the named header (checks both regular and " "unredirected)." msgstr "" -#: library/urllib.request.rst:560 +#: library/urllib.request.rst:565 msgid "" "Remove named header from the request instance (both from regular and " "unredirected headers)." msgstr "" -#: library/urllib.request.rst:568 +#: library/urllib.request.rst:573 msgid "Return the URL given in the constructor." msgstr "" -#: library/urllib.request.rst:572 +#: library/urllib.request.rst:577 msgid "Returns :attr:`Request.full_url`" msgstr "" -#: library/urllib.request.rst:577 +#: library/urllib.request.rst:582 msgid "" "Prepare the request by connecting to a proxy server. The *host* and *type* " "will replace those of the instance, and the instance's selector will be the " "original URL given in the constructor." msgstr "" -#: library/urllib.request.rst:584 +#: library/urllib.request.rst:589 msgid "" "Return the value of the given header. If the header is not present, return " "the default value." msgstr "" -#: library/urllib.request.rst:590 +#: library/urllib.request.rst:595 msgid "" "Return a list of tuples (header_name, header_value) of the Request headers." msgstr "" -#: library/urllib.request.rst:592 +#: library/urllib.request.rst:597 msgid "" "The request methods add_data, has_data, get_data, get_type, get_host, " "get_selector, get_origin_req_host and is_unverifiable that were deprecated " "since 3.3 have been removed." msgstr "" -#: library/urllib.request.rst:601 +#: library/urllib.request.rst:606 msgid "OpenerDirector Objects" msgstr "" -#: library/urllib.request.rst:603 +#: library/urllib.request.rst:608 msgid ":class:`OpenerDirector` instances have the following methods:" msgstr "" -#: library/urllib.request.rst:608 +#: library/urllib.request.rst:613 msgid "" "*handler* should be an instance of :class:`BaseHandler`. The following " "methods are searched, and added to the possible chains (note that HTTP " @@ -712,53 +718,53 @@ msgid "" "`http_error_404` would handle HTTP 404 errors." msgstr "" -#: library/urllib.request.rst:616 +#: library/urllib.request.rst:621 msgid "" ":meth:`_open` --- signal that the handler knows how to open " "*protocol* URLs." msgstr "" -#: library/urllib.request.rst:619 +#: library/urllib.request.rst:624 msgid "See |protocol_open|_ for more information." msgstr "" -#: library/urllib.request.rst:621 +#: library/urllib.request.rst:626 msgid "" ":meth:`http_error_\\` --- signal that the handler knows how to " "handle HTTP errors with HTTP error code *type*." msgstr "" -#: library/urllib.request.rst:624 +#: library/urllib.request.rst:629 msgid "See |http_error_nnn|_ for more information." msgstr "" -#: library/urllib.request.rst:626 +#: library/urllib.request.rst:631 msgid "" ":meth:`_error` --- signal that the handler knows how to handle " "errors from (non-\\ ``http``) *protocol*." msgstr "" -#: library/urllib.request.rst:629 +#: library/urllib.request.rst:634 msgid "" ":meth:`_request` --- signal that the handler knows how to pre-" "process *protocol* requests." msgstr "" -#: library/urllib.request.rst:632 +#: library/urllib.request.rst:637 msgid "See |protocol_request|_ for more information." msgstr "" -#: library/urllib.request.rst:634 +#: library/urllib.request.rst:639 msgid "" ":meth:`_response` --- signal that the handler knows how to post-" "process *protocol* responses." msgstr "" -#: library/urllib.request.rst:637 +#: library/urllib.request.rst:642 msgid "See |protocol_response|_ for more information." msgstr "" -#: library/urllib.request.rst:646 +#: library/urllib.request.rst:651 msgid "" "Open the given *url* (which can be a request object or a string), optionally " "passing the given *data*. Arguments, return values and exceptions raised are " @@ -767,10 +773,10 @@ msgid "" "optional *timeout* parameter specifies a timeout in seconds for blocking " "operations like the connection attempt (if not specified, the global default " "timeout setting will be used). The timeout feature actually works only for " -"HTTP, HTTPS and FTP connections)." +"HTTP, HTTPS and FTP connections." msgstr "" -#: library/urllib.request.rst:658 +#: library/urllib.request.rst:663 msgid "" "Handle an error of the given protocol. This will call the registered error " "handlers for the given protocol with the given arguments (which are protocol " @@ -779,28 +785,28 @@ msgid "" "\\` methods of the handler classes." msgstr "" -#: library/urllib.request.rst:664 +#: library/urllib.request.rst:669 msgid "" "Return values and exceptions raised are the same as those of :func:`urlopen`." msgstr "" -#: library/urllib.request.rst:666 +#: library/urllib.request.rst:671 msgid "OpenerDirector objects open URLs in three stages:" msgstr "" -#: library/urllib.request.rst:668 +#: library/urllib.request.rst:673 msgid "" "The order in which these methods are called within each stage is determined " "by sorting the handler instances." msgstr "" -#: library/urllib.request.rst:671 +#: library/urllib.request.rst:676 msgid "" "Every handler with a method named like :meth:`_request` has that " "method called to pre-process the request." msgstr "" -#: library/urllib.request.rst:674 +#: library/urllib.request.rst:679 msgid "" "Handlers with a method named like :meth:`_open` are called to " "handle the request. This stage ends when a handler either returns a non-\\ :" @@ -808,7 +814,7 @@ msgid "" "`~urllib.error.URLError`). Exceptions are allowed to propagate." msgstr "" -#: library/urllib.request.rst:679 +#: library/urllib.request.rst:684 msgid "" "In fact, the above algorithm is first tried for methods named :meth:" "`default_open`. If all such methods return :const:`None`, the algorithm is " @@ -817,64 +823,64 @@ msgid "" "meth:`unknown_open`." msgstr "" -#: library/urllib.request.rst:685 +#: library/urllib.request.rst:690 msgid "" "Note that the implementation of these methods may involve calls of the " "parent :class:`OpenerDirector` instance's :meth:`~OpenerDirector.open` and :" "meth:`~OpenerDirector.error` methods." msgstr "" -#: library/urllib.request.rst:689 +#: library/urllib.request.rst:694 msgid "" "Every handler with a method named like :meth:`_response` has that " "method called to post-process the response." msgstr "" -#: library/urllib.request.rst:696 +#: library/urllib.request.rst:701 msgid "BaseHandler Objects" msgstr "" -#: library/urllib.request.rst:698 +#: library/urllib.request.rst:703 msgid "" ":class:`BaseHandler` objects provide a couple of methods that are directly " "useful, and others that are meant to be used by derived classes. These are " "intended for direct use:" msgstr "" -#: library/urllib.request.rst:705 +#: library/urllib.request.rst:710 msgid "Add a director as parent." msgstr "" -#: library/urllib.request.rst:710 +#: library/urllib.request.rst:715 msgid "Remove any parents." msgstr "" -#: library/urllib.request.rst:712 +#: library/urllib.request.rst:717 msgid "" "The following attribute and methods should only be used by classes derived " "from :class:`BaseHandler`." msgstr "" -#: library/urllib.request.rst:717 +#: library/urllib.request.rst:722 msgid "" "The convention has been adopted that subclasses defining :meth:" "`_request` or :meth:`_response` methods are named :class:" "`\\*Processor`; all others are named :class:`\\*Handler`." msgstr "" -#: library/urllib.request.rst:724 +#: library/urllib.request.rst:729 msgid "" "A valid :class:`OpenerDirector`, which can be used to open using a different " "protocol, or handle errors." msgstr "" -#: library/urllib.request.rst:730 +#: library/urllib.request.rst:735 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "define it if they want to catch all URLs." msgstr "" -#: library/urllib.request.rst:733 +#: library/urllib.request.rst:738 msgid "" "This method, if implemented, will be called by the parent :class:" "`OpenerDirector`. It should return a file-like object as described in the " @@ -884,38 +890,38 @@ msgid "" "`URLError`)." msgstr "" -#: library/urllib.request.rst:740 +#: library/urllib.request.rst:745 msgid "This method will be called before any protocol-specific open method." msgstr "" -#: library/urllib.request.rst:747 +#: library/urllib.request.rst:752 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "define it if they want to handle URLs with the given protocol." msgstr "" -#: library/urllib.request.rst:750 +#: library/urllib.request.rst:755 msgid "" "This method, if defined, will be called by the parent :class:" "`OpenerDirector`. Return values should be the same as for :meth:" "`default_open`." msgstr "" -#: library/urllib.request.rst:756 +#: library/urllib.request.rst:761 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "define it if they want to catch all URLs with no specific registered handler " "to open it." msgstr "" -#: library/urllib.request.rst:760 +#: library/urllib.request.rst:765 msgid "" "This method, if implemented, will be called by the :attr:`parent` :class:" "`OpenerDirector`. Return values should be the same as for :meth:" "`default_open`." msgstr "" -#: library/urllib.request.rst:767 +#: library/urllib.request.rst:772 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "override it if they intend to provide a catch-all for otherwise unhandled " @@ -924,7 +930,7 @@ msgid "" "other circumstances." msgstr "" -#: library/urllib.request.rst:772 +#: library/urllib.request.rst:777 msgid "" "*req* will be a :class:`Request` object, *fp* will be a file-like object " "with the HTTP error body, *code* will be the three-digit code of the error, " @@ -932,49 +938,49 @@ msgid "" "mapping object with the headers of the error." msgstr "" -#: library/urllib.request.rst:777 +#: library/urllib.request.rst:782 msgid "" "Return values and exceptions raised should be the same as those of :func:" "`urlopen`." msgstr "" -#: library/urllib.request.rst:784 +#: library/urllib.request.rst:789 msgid "" "*nnn* should be a three-digit HTTP error code. This method is also not " "defined in :class:`BaseHandler`, but will be called, if it exists, on an " "instance of a subclass, when an HTTP error with code *nnn* occurs." msgstr "" -#: library/urllib.request.rst:788 +#: library/urllib.request.rst:793 msgid "Subclasses should override this method to handle specific HTTP errors." msgstr "" -#: library/urllib.request.rst:790 +#: library/urllib.request.rst:795 msgid "" "Arguments, return values and exceptions raised should be the same as for :" "meth:`http_error_default`." msgstr "" -#: library/urllib.request.rst:798 +#: library/urllib.request.rst:803 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "define it if they want to pre-process requests of the given protocol." msgstr "" -#: library/urllib.request.rst:801 +#: library/urllib.request.rst:806 msgid "" "This method, if defined, will be called by the parent :class:" "`OpenerDirector`. *req* will be a :class:`Request` object. The return value " "should be a :class:`Request` object." msgstr "" -#: library/urllib.request.rst:810 +#: library/urllib.request.rst:815 msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "define it if they want to post-process responses of the given protocol." msgstr "" -#: library/urllib.request.rst:813 +#: library/urllib.request.rst:818 msgid "" "This method, if defined, will be called by the parent :class:" "`OpenerDirector`. *req* will be a :class:`Request` object. *response* will " @@ -983,25 +989,25 @@ msgid "" "return value of :func:`urlopen`." msgstr "" -#: library/urllib.request.rst:823 +#: library/urllib.request.rst:828 msgid "HTTPRedirectHandler Objects" msgstr "" -#: library/urllib.request.rst:827 +#: library/urllib.request.rst:832 msgid "" "Some HTTP redirections require action from this module's client code. If " "this is the case, :exc:`~urllib.error.HTTPError` is raised. See :rfc:`2616` " "for details of the precise meanings of the various redirection codes." msgstr "" -#: library/urllib.request.rst:831 +#: library/urllib.request.rst:836 msgid "" "An :class:`HTTPError` exception raised as a security consideration if the " "HTTPRedirectHandler is presented with a redirected URL which is not an HTTP, " "HTTPS or FTP URL." msgstr "" -#: library/urllib.request.rst:838 +#: library/urllib.request.rst:843 msgid "" "Return a :class:`Request` or ``None`` in response to a redirect. This is " "called by the default implementations of the :meth:`http_error_30\\*` " @@ -1012,7 +1018,7 @@ msgid "" "URL, or return ``None`` if you can't but another handler might." msgstr "" -#: library/urllib.request.rst:848 +#: library/urllib.request.rst:853 msgid "" "The default implementation of this method does not strictly follow :rfc:" "`2616`, which says that 301 and 302 responses to ``POST`` requests must not " @@ -1021,46 +1027,46 @@ msgid "" "POST to a ``GET``, and the default implementation reproduces this behavior." msgstr "" -#: library/urllib.request.rst:857 +#: library/urllib.request.rst:862 msgid "" "Redirect to the ``Location:`` or ``URI:`` URL. This method is called by the " "parent :class:`OpenerDirector` when getting an HTTP 'moved permanently' " "response." msgstr "" -#: library/urllib.request.rst:863 +#: library/urllib.request.rst:868 msgid "" "The same as :meth:`http_error_301`, but called for the 'found' response." msgstr "" -#: library/urllib.request.rst:868 +#: library/urllib.request.rst:873 msgid "" "The same as :meth:`http_error_301`, but called for the 'see other' response." msgstr "" -#: library/urllib.request.rst:873 +#: library/urllib.request.rst:878 msgid "" "The same as :meth:`http_error_301`, but called for the 'temporary redirect' " "response." msgstr "" -#: library/urllib.request.rst:880 +#: library/urllib.request.rst:885 msgid "HTTPCookieProcessor Objects" msgstr "" -#: library/urllib.request.rst:882 +#: library/urllib.request.rst:887 msgid ":class:`HTTPCookieProcessor` instances have one attribute:" msgstr "" -#: library/urllib.request.rst:886 +#: library/urllib.request.rst:891 msgid "The :class:`http.cookiejar.CookieJar` in which cookies are stored." msgstr "" -#: library/urllib.request.rst:892 +#: library/urllib.request.rst:897 msgid "ProxyHandler Objects" msgstr "" -#: library/urllib.request.rst:898 +#: library/urllib.request.rst:903 msgid "" "The :class:`ProxyHandler` will have a method :meth:`_open` for " "every *protocol* which has a proxy in the *proxies* dictionary given in the " @@ -1069,17 +1075,17 @@ msgid "" "actually execute the protocol." msgstr "" -#: library/urllib.request.rst:908 +#: library/urllib.request.rst:913 msgid "HTTPPasswordMgr Objects" msgstr "" -#: library/urllib.request.rst:910 +#: library/urllib.request.rst:915 msgid "" "These methods are available on :class:`HTTPPasswordMgr` and :class:" "`HTTPPasswordMgrWithDefaultRealm` objects." msgstr "" -#: library/urllib.request.rst:916 +#: library/urllib.request.rst:921 msgid "" "*uri* can be either a single URI, or a sequence of URIs. *realm*, *user* and " "*passwd* must be strings. This causes ``(user, passwd)`` to be used as " @@ -1087,30 +1093,30 @@ msgid "" "of the given URIs is given." msgstr "" -#: library/urllib.request.rst:924 +#: library/urllib.request.rst:929 msgid "" "Get user/password for given realm and URI, if any. This method will return " "``(None, None)`` if there is no matching user/password." msgstr "" -#: library/urllib.request.rst:927 +#: library/urllib.request.rst:932 msgid "" "For :class:`HTTPPasswordMgrWithDefaultRealm` objects, the realm ``None`` " "will be searched if the given *realm* has no matching user/password." msgstr "" -#: library/urllib.request.rst:934 +#: library/urllib.request.rst:939 msgid "HTTPPasswordMgrWithPriorAuth Objects" msgstr "" -#: library/urllib.request.rst:936 +#: library/urllib.request.rst:941 msgid "" "This password manager extends :class:`HTTPPasswordMgrWithDefaultRealm` to " "support tracking URIs for which authentication credentials should always be " "sent." msgstr "" -#: library/urllib.request.rst:943 +#: library/urllib.request.rst:948 msgid "" "*realm*, *uri*, *user*, *passwd* are as for :meth:`HTTPPasswordMgr." "add_password`. *is_authenticated* sets the initial value of the " @@ -1118,25 +1124,25 @@ msgid "" "*is_authenticated* is specified as ``True``, *realm* is ignored." msgstr "" -#: library/urllib.request.rst:951 +#: library/urllib.request.rst:956 msgid "Same as for :class:`HTTPPasswordMgrWithDefaultRealm` objects" msgstr "" -#: library/urllib.request.rst:957 +#: library/urllib.request.rst:962 msgid "" "Update the ``is_authenticated`` flag for the given *uri* or list of URIs." msgstr "" -#: library/urllib.request.rst:963 +#: library/urllib.request.rst:968 msgid "" "Returns the current state of the ``is_authenticated`` flag for the given URI." msgstr "" -#: library/urllib.request.rst:970 +#: library/urllib.request.rst:975 msgid "AbstractBasicAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:975 +#: library/urllib.request.rst:980 msgid "" "Handle an authentication request by getting a user/password pair, and re-" "trying the request. *authreq* should be the name of the header where the " @@ -1145,7 +1151,7 @@ msgid "" "`Request` object, and *headers* should be the error headers." msgstr "" -#: library/urllib.request.rst:981 +#: library/urllib.request.rst:986 msgid "" "*host* is either an authority (e.g. ``\"python.org\"``) or a URL containing " "an authority component (e.g. ``\"http://python.org/\"``). In either case, " @@ -1153,24 +1159,24 @@ msgid "" "and ``\"python.org:80\"`` are fine, ``\"joe:password@python.org\"`` is not)." msgstr "" -#: library/urllib.request.rst:990 +#: library/urllib.request.rst:995 msgid "HTTPBasicAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:1006 library/urllib.request.rst:1031 -#: library/urllib.request.rst:1042 +#: library/urllib.request.rst:1000 library/urllib.request.rst:1011 +#: library/urllib.request.rst:1036 library/urllib.request.rst:1047 msgid "Retry the request with authentication information, if available." msgstr "" -#: library/urllib.request.rst:1001 +#: library/urllib.request.rst:1006 msgid "ProxyBasicAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:1012 +#: library/urllib.request.rst:1017 msgid "AbstractDigestAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:1017 +#: library/urllib.request.rst:1022 msgid "" "*authreq* should be the name of the header where the information about the " "realm is included in the request, *host* should be the host to authenticate " @@ -1178,55 +1184,55 @@ msgid "" "should be the error headers." msgstr "" -#: library/urllib.request.rst:1026 +#: library/urllib.request.rst:1031 msgid "HTTPDigestAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:1037 +#: library/urllib.request.rst:1042 msgid "ProxyDigestAuthHandler Objects" msgstr "" -#: library/urllib.request.rst:1048 +#: library/urllib.request.rst:1053 msgid "HTTPHandler Objects" msgstr "" -#: library/urllib.request.rst:1053 +#: library/urllib.request.rst:1058 msgid "" "Send an HTTP request, which can be either GET or POST, depending on ``req." "has_data()``." msgstr "" -#: library/urllib.request.rst:1060 +#: library/urllib.request.rst:1065 msgid "HTTPSHandler Objects" msgstr "" -#: library/urllib.request.rst:1065 +#: library/urllib.request.rst:1070 msgid "" "Send an HTTPS request, which can be either GET or POST, depending on ``req." "has_data()``." msgstr "" -#: library/urllib.request.rst:1072 +#: library/urllib.request.rst:1077 msgid "FileHandler Objects" msgstr "" -#: library/urllib.request.rst:1077 +#: library/urllib.request.rst:1082 msgid "" "Open the file locally, if there is no host name, or the host name is " "``'localhost'``." msgstr "" -#: library/urllib.request.rst:1080 +#: library/urllib.request.rst:1085 msgid "" "This method is applicable only for local hostnames. When a remote hostname " "is given, an :exc:`~urllib.error.URLError` is raised." msgstr "" -#: library/urllib.request.rst:1088 +#: library/urllib.request.rst:1093 msgid "DataHandler Objects" msgstr "" -#: library/urllib.request.rst:1092 +#: library/urllib.request.rst:1097 msgid "" "Read a data URL. This kind of URL contains the content encoded in the URL " "itself. The data URL syntax is specified in :rfc:`2397`. This implementation " @@ -1236,51 +1242,51 @@ msgid "" "implementation will raise an :exc:`ValueError` in that case." msgstr "" -#: library/urllib.request.rst:1103 +#: library/urllib.request.rst:1108 msgid "FTPHandler Objects" msgstr "" -#: library/urllib.request.rst:1108 +#: library/urllib.request.rst:1113 msgid "" "Open the FTP file indicated by *req*. The login is always done with empty " "username and password." msgstr "" -#: library/urllib.request.rst:1115 +#: library/urllib.request.rst:1120 msgid "CacheFTPHandler Objects" msgstr "" -#: library/urllib.request.rst:1117 +#: library/urllib.request.rst:1122 msgid "" ":class:`CacheFTPHandler` objects are :class:`FTPHandler` objects with the " "following additional methods:" msgstr "" -#: library/urllib.request.rst:1123 +#: library/urllib.request.rst:1128 msgid "Set timeout of connections to *t* seconds." msgstr "" -#: library/urllib.request.rst:1128 +#: library/urllib.request.rst:1133 msgid "Set maximum number of cached connections to *m*." msgstr "" -#: library/urllib.request.rst:1134 +#: library/urllib.request.rst:1139 msgid "UnknownHandler Objects" msgstr "" -#: library/urllib.request.rst:1139 +#: library/urllib.request.rst:1144 msgid "Raise a :exc:`~urllib.error.URLError` exception." msgstr "" -#: library/urllib.request.rst:1145 +#: library/urllib.request.rst:1150 msgid "HTTPErrorProcessor Objects" msgstr "" -#: library/urllib.request.rst:1151 +#: library/urllib.request.rst:1156 msgid "For 200 error codes, the response object is returned immediately." msgstr "" -#: library/urllib.request.rst:1153 +#: library/urllib.request.rst:1158 msgid "" "For non-200 error codes, this simply passes the job on to the :meth:" "`http_error_\\` handler methods, via :meth:`OpenerDirector.error`. " @@ -1288,31 +1294,31 @@ msgid "" "error.HTTPError` if no other handler handles the error." msgstr "" -#: library/urllib.request.rst:1161 +#: library/urllib.request.rst:1166 msgid "Process HTTPS error responses." msgstr "" -#: library/urllib.request.rst:1163 +#: library/urllib.request.rst:1168 msgid "The behavior is same as :meth:`http_response`." msgstr "" -#: library/urllib.request.rst:1169 +#: library/urllib.request.rst:1174 msgid "Examples" msgstr "Exemples" -#: library/urllib.request.rst:1171 +#: library/urllib.request.rst:1176 msgid "" "In addition to the examples below, more examples are given in :ref:`urllib-" "howto`." msgstr "" -#: library/urllib.request.rst:1174 +#: library/urllib.request.rst:1179 msgid "" "This example gets the python.org main page and displays the first 300 bytes " "of it. ::" msgstr "" -#: library/urllib.request.rst:1187 +#: library/urllib.request.rst:1192 msgid "" "Note that urlopen returns a bytes object. This is because there is no way " "for urlopen to automatically determine the encoding of the byte stream it " @@ -1321,45 +1327,45 @@ msgid "" "appropriate encoding." msgstr "" -#: library/urllib.request.rst:1193 +#: library/urllib.request.rst:1198 msgid "" "The following W3C document, https://www.w3.org/International/O-charset\\ , " "lists the various ways in which an (X)HTML or an XML document could have " "specified its encoding information." msgstr "" -#: library/urllib.request.rst:1197 +#: library/urllib.request.rst:1202 msgid "" "As the python.org website uses *utf-8* encoding as specified in its meta " "tag, we will use the same for decoding the bytes object. ::" msgstr "" -#: library/urllib.request.rst:1206 +#: library/urllib.request.rst:1211 msgid "" "It is also possible to achieve the same result without using the :term:" "`context manager` approach. ::" msgstr "" -#: library/urllib.request.rst:1215 +#: library/urllib.request.rst:1220 msgid "" "In the following example, we are sending a data-stream to the stdin of a CGI " "and reading the data it returns to us. Note that this example will only work " "when the Python installation supports SSL. ::" msgstr "" -#: library/urllib.request.rst:1227 +#: library/urllib.request.rst:1232 msgid "The code for the sample CGI used in the above example is::" msgstr "" -#: library/urllib.request.rst:1234 +#: library/urllib.request.rst:1239 msgid "Here is an example of doing a ``PUT`` request using :class:`Request`::" msgstr "" -#: library/urllib.request.rst:1244 +#: library/urllib.request.rst:1249 msgid "Use of Basic HTTP Authentication::" msgstr "" -#: library/urllib.request.rst:1258 +#: library/urllib.request.rst:1263 msgid "" ":func:`build_opener` provides many handlers by default, including a :class:" "`ProxyHandler`. By default, :class:`ProxyHandler` uses the environment " @@ -1368,71 +1374,71 @@ msgid "" "read to obtain the HTTP proxy's URL." msgstr "" -#: library/urllib.request.rst:1264 +#: library/urllib.request.rst:1269 msgid "" "This example replaces the default :class:`ProxyHandler` with one that uses " "programmatically-supplied proxy URLs, and adds proxy authorization support " "with :class:`ProxyBasicAuthHandler`. ::" msgstr "" -#: library/urllib.request.rst:1276 +#: library/urllib.request.rst:1281 msgid "Adding HTTP headers:" msgstr "" -#: library/urllib.request.rst:1278 +#: library/urllib.request.rst:1283 msgid "Use the *headers* argument to the :class:`Request` constructor, or::" msgstr "" -#: library/urllib.request.rst:1287 +#: library/urllib.request.rst:1292 msgid "" ":class:`OpenerDirector` automatically adds a :mailheader:`User-Agent` header " "to every :class:`Request`. To change this::" msgstr "" -#: library/urllib.request.rst:1295 +#: library/urllib.request.rst:1300 msgid "" "Also, remember that a few standard headers (:mailheader:`Content-Length`, :" "mailheader:`Content-Type` and :mailheader:`Host`) are added when the :class:" "`Request` is passed to :func:`urlopen` (or :meth:`OpenerDirector.open`)." msgstr "" -#: library/urllib.request.rst:1302 +#: library/urllib.request.rst:1307 msgid "" "Here is an example session that uses the ``GET`` method to retrieve a URL " "containing parameters::" msgstr "" -#: library/urllib.request.rst:1313 +#: library/urllib.request.rst:1318 msgid "" "The following example uses the ``POST`` method instead. Note that params " "output from urlencode is encoded to bytes before it is sent to urlopen as " "data::" msgstr "" -#: library/urllib.request.rst:1324 +#: library/urllib.request.rst:1329 msgid "" "The following example uses an explicitly specified HTTP proxy, overriding " "environment settings::" msgstr "" -#: library/urllib.request.rst:1334 +#: library/urllib.request.rst:1339 msgid "" "The following example uses no proxies at all, overriding environment " "settings::" msgstr "" -#: library/urllib.request.rst:1344 +#: library/urllib.request.rst:1349 msgid "Legacy interface" msgstr "" -#: library/urllib.request.rst:1346 +#: library/urllib.request.rst:1351 msgid "" "The following functions and classes are ported from the Python 2 module " "``urllib`` (as opposed to ``urllib2``). They might become deprecated at " "some point in the future." msgstr "" -#: library/urllib.request.rst:1352 +#: library/urllib.request.rst:1357 msgid "" "Copy a network object denoted by a URL to a local file. If the URL points to " "a local file, the object will not be copied unless filename is supplied. " @@ -1442,7 +1448,7 @@ msgid "" "remote object). Exceptions are the same as for :func:`urlopen`." msgstr "" -#: library/urllib.request.rst:1359 +#: library/urllib.request.rst:1364 msgid "" "The second argument, if present, specifies the file location to copy to (if " "absent, the location will be a tempfile with a generated name). The third " @@ -1454,11 +1460,11 @@ msgid "" "file size in response to a retrieval request." msgstr "" -#: library/urllib.request.rst:1368 +#: library/urllib.request.rst:1373 msgid "The following example illustrates the most common usage scenario::" msgstr "" -#: library/urllib.request.rst:1375 +#: library/urllib.request.rst:1380 msgid "" "If the *url* uses the :file:`http:` scheme identifier, the optional *data* " "argument may be given to specify a ``POST`` request (normally the request " @@ -1467,7 +1473,7 @@ msgid "" "parse.urlencode` function." msgstr "" -#: library/urllib.request.rst:1381 +#: library/urllib.request.rst:1386 msgid "" ":func:`urlretrieve` will raise :exc:`ContentTooShortError` when it detects " "that the amount of data available was less than the expected amount (which " @@ -1475,40 +1481,40 @@ msgid "" "example, when the download is interrupted." msgstr "" -#: library/urllib.request.rst:1386 +#: library/urllib.request.rst:1391 msgid "" "The *Content-Length* is treated as a lower bound: if there's more data to " "read, urlretrieve reads more data, but if less data is available, it raises " "the exception." msgstr "" -#: library/urllib.request.rst:1390 +#: library/urllib.request.rst:1395 msgid "" "You can still retrieve the downloaded data in this case, it is stored in " "the :attr:`content` attribute of the exception instance." msgstr "" -#: library/urllib.request.rst:1393 +#: library/urllib.request.rst:1398 msgid "" "If no *Content-Length* header was supplied, urlretrieve can not check the " "size of the data it has downloaded, and just returns it. In this case you " "just have to assume that the download was successful." msgstr "" -#: library/urllib.request.rst:1399 +#: library/urllib.request.rst:1404 msgid "" "Cleans up temporary files that may have been left behind by previous calls " "to :func:`urlretrieve`." msgstr "" -#: library/urllib.request.rst:1406 +#: library/urllib.request.rst:1411 msgid "" "Base class for opening and reading URLs. Unless you need to support opening " "objects using schemes other than :file:`http:`, :file:`ftp:`, or :file:`file:" "`, you probably want to use :class:`FancyURLopener`." msgstr "" -#: library/urllib.request.rst:1410 +#: library/urllib.request.rst:1415 msgid "" "By default, the :class:`URLopener` class sends a :mailheader:`User-Agent` " "header of ``urllib/VVV``, where *VVV* is the :mod:`urllib` version number. " @@ -1518,7 +1524,7 @@ msgid "" "subclass definition." msgstr "" -#: library/urllib.request.rst:1416 +#: library/urllib.request.rst:1421 msgid "" "The optional *proxies* parameter should be a dictionary mapping scheme names " "to proxy URLs, where an empty dictionary turns proxies off completely. Its " @@ -1526,7 +1532,7 @@ msgid "" "be used if present, as discussed in the definition of :func:`urlopen`, above." msgstr "" -#: library/urllib.request.rst:1421 +#: library/urllib.request.rst:1426 msgid "" "Additional keyword parameters, collected in *x509*, may be used for " "authentication of the client when using the :file:`https:` scheme. The " @@ -1534,13 +1540,13 @@ msgid "" "certificate; both are needed to support client authentication." msgstr "" -#: library/urllib.request.rst:1426 +#: library/urllib.request.rst:1431 msgid "" ":class:`URLopener` objects will raise an :exc:`OSError` exception if the " "server returns an error code." msgstr "" -#: library/urllib.request.rst:1431 +#: library/urllib.request.rst:1436 msgid "" "Open *fullurl* using the appropriate protocol. This method sets up cache " "and proxy information, then calls the appropriate open method with its input " @@ -1549,15 +1555,15 @@ msgid "" "`urlopen`." msgstr "" -#: library/urllib.request.rst:1437 +#: library/urllib.request.rst:1442 msgid "This method always quotes *fullurl* using :func:`~urllib.parse.quote`." msgstr "" -#: library/urllib.request.rst:1441 +#: library/urllib.request.rst:1446 msgid "Overridable interface to open unknown URL types." msgstr "" -#: library/urllib.request.rst:1446 +#: library/urllib.request.rst:1451 msgid "" "Retrieves the contents of *url* and places it in *filename*. The return " "value is a tuple consisting of a local filename and either an :class:`email." @@ -1574,7 +1580,7 @@ msgid "" "*reporthook* is ignored for local URLs." msgstr "" -#: library/urllib.request.rst:1459 +#: library/urllib.request.rst:1464 msgid "" "If the *url* uses the :file:`http:` scheme identifier, the optional *data* " "argument may be given to specify a ``POST`` request (normally the request " @@ -1583,7 +1589,7 @@ msgid "" "urlencode` function." msgstr "" -#: library/urllib.request.rst:1468 +#: library/urllib.request.rst:1473 msgid "" "Variable that specifies the user agent of the opener object. To get :mod:" "`urllib` to tell servers that it is a particular user agent, set this in a " @@ -1591,7 +1597,7 @@ msgid "" "constructor." msgstr "" -#: library/urllib.request.rst:1478 +#: library/urllib.request.rst:1483 msgid "" ":class:`FancyURLopener` subclasses :class:`URLopener` providing default " "handling for the following HTTP response codes: 301, 302, 303, 307 and 401. " @@ -1602,14 +1608,14 @@ msgid "" "defaults to 10." msgstr "" -#: library/urllib.request.rst:1485 +#: library/urllib.request.rst:1490 msgid "" "For all other response codes, the method :meth:`http_error_default` is " "called which you can override in subclasses to handle the error " "appropriately." msgstr "" -#: library/urllib.request.rst:1490 +#: library/urllib.request.rst:1495 msgid "" "According to the letter of :rfc:`2616`, 301 and 302 responses to POST " "requests must not be automatically redirected without confirmation by the " @@ -1618,13 +1624,13 @@ msgid "" "behaviour." msgstr "" -#: library/urllib.request.rst:1495 +#: library/urllib.request.rst:1500 msgid "" "The parameters to the constructor are the same as those for :class:" "`URLopener`." msgstr "" -#: library/urllib.request.rst:1499 +#: library/urllib.request.rst:1504 msgid "" "When performing basic authentication, a :class:`FancyURLopener` instance " "calls its :meth:`prompt_user_passwd` method. The default implementation " @@ -1633,67 +1639,67 @@ msgid "" "needed." msgstr "" -#: library/urllib.request.rst:1504 +#: library/urllib.request.rst:1509 msgid "" "The :class:`FancyURLopener` class offers one additional method that should " "be overloaded to provide the appropriate behavior:" msgstr "" -#: library/urllib.request.rst:1509 +#: library/urllib.request.rst:1514 msgid "" "Return information needed to authenticate the user at the given host in the " "specified security realm. The return value should be a tuple, ``(user, " "password)``, which can be used for basic authentication." msgstr "" -#: library/urllib.request.rst:1513 +#: library/urllib.request.rst:1518 msgid "" "The implementation prompts for this information on the terminal; an " "application should override this method to use an appropriate interaction " "model in the local environment." msgstr "" -#: library/urllib.request.rst:1519 +#: library/urllib.request.rst:1524 msgid ":mod:`urllib.request` Restrictions" msgstr "" -#: library/urllib.request.rst:1525 +#: library/urllib.request.rst:1530 msgid "" "Currently, only the following protocols are supported: HTTP (versions 0.9 " "and 1.0), FTP, local files, and data URLs." msgstr "" -#: library/urllib.request.rst:1528 +#: library/urllib.request.rst:1533 msgid "Added support for data URLs." msgstr "" -#: library/urllib.request.rst:1530 +#: library/urllib.request.rst:1535 msgid "" "The caching feature of :func:`urlretrieve` has been disabled until someone " "finds the time to hack proper processing of Expiration time headers." msgstr "" -#: library/urllib.request.rst:1533 +#: library/urllib.request.rst:1538 msgid "" "There should be a function to query whether a particular URL is in the cache." msgstr "" -#: library/urllib.request.rst:1535 +#: library/urllib.request.rst:1540 msgid "" "For backward compatibility, if a URL appears to point to a local file but " "the file can't be opened, the URL is re-interpreted using the FTP protocol. " "This can sometimes cause confusing error messages." msgstr "" -#: library/urllib.request.rst:1539 +#: library/urllib.request.rst:1544 msgid "" "The :func:`urlopen` and :func:`urlretrieve` functions can cause arbitrarily " "long delays while waiting for a network connection to be set up. This means " -"that it is difficult to build an interactive Web client using these " +"that it is difficult to build an interactive web client using these " "functions without using threads." msgstr "" -#: library/urllib.request.rst:1548 +#: library/urllib.request.rst:1553 msgid "" "The data returned by :func:`urlopen` or :func:`urlretrieve` is the raw data " "returned by the server. This may be binary data (such as an image), plain " @@ -1703,7 +1709,7 @@ msgid "" "module :mod:`html.parser` to parse it." msgstr "" -#: library/urllib.request.rst:1557 +#: library/urllib.request.rst:1562 msgid "" "The code handling the FTP protocol cannot differentiate between a file and a " "directory. This can lead to unexpected behavior when attempting to read a " @@ -1721,11 +1727,11 @@ msgid "" "meet your needs." msgstr "" -#: library/urllib.request.rst:1574 +#: library/urllib.request.rst:1579 msgid ":mod:`urllib.response` --- Response classes used by urllib" msgstr "" -#: library/urllib.request.rst:1579 +#: library/urllib.request.rst:1584 msgid "" "The :mod:`urllib.response` module defines functions and classes which define " "a minimal file-like interface, including ``read()`` and ``readline()``. " @@ -1734,30 +1740,30 @@ msgid "" "addinfourl` instance:" msgstr "" -#: library/urllib.request.rst:1588 +#: library/urllib.request.rst:1593 msgid "" "URL of the resource retrieved, commonly used to determine if a redirect was " "followed." msgstr "" -#: library/urllib.request.rst:1592 +#: library/urllib.request.rst:1597 msgid "" "Returns the headers of the response in the form of an :class:`~email.message." "EmailMessage` instance." msgstr "" -#: library/urllib.request.rst:1598 +#: library/urllib.request.rst:1603 msgid "Status code returned by server." msgstr "" -#: library/urllib.request.rst:1602 +#: library/urllib.request.rst:1607 msgid "Deprecated in favor of :attr:`~addinfourl.url`." msgstr "" -#: library/urllib.request.rst:1607 +#: library/urllib.request.rst:1612 msgid "Deprecated in favor of :attr:`~addinfourl.headers`." msgstr "" -#: library/urllib.request.rst:1612 library/urllib.request.rst:1617 +#: library/urllib.request.rst:1617 library/urllib.request.rst:1622 msgid "Deprecated in favor of :attr:`~addinfourl.status`." msgstr "" diff --git a/library/urllib.robotparser.po b/library/urllib.robotparser.po index b8beed5d7..5a2b904b4 100644 --- a/library/urllib.robotparser.po +++ b/library/urllib.robotparser.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-11-17 23:32+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -24,10 +24,11 @@ msgid "**Source code:** :source:`Lib/urllib/robotparser.py`" msgstr "**Code source :** :source:`Lib/urllib/robotparser.py`" #: library/urllib.robotparser.rst:20 +#, fuzzy msgid "" "This module provides a single class, :class:`RobotFileParser`, which answers " "questions about whether or not a particular user agent can fetch a URL on " -"the Web site that published the :file:`robots.txt` file. For more details " +"the web site that published the :file:`robots.txt` file. For more details " "on the structure of :file:`robots.txt` files, see http://www.robotstxt.org/" "orig.html." msgstr "" diff --git a/library/venv.po b/library/venv.po index fb0497faf..41f58b0d1 100644 --- a/library/venv.po +++ b/library/venv.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-24 17:33+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-11-06 17:48+0100\n" "Last-Translator: ZepmanBC \n" "Language-Team: FRENCH \n" @@ -525,15 +525,15 @@ msgstr "" msgid "``upgrade_deps`` -- Update the base venv modules to the latest on PyPI" msgstr "" -#: library/venv.rst:259 +#: library/venv.rst:260 msgid "Added the ``with_pip`` parameter" msgstr "Ajout du paramètre ``with_pip``" -#: library/venv.rst:262 +#: library/venv.rst:263 msgid "Added the ``prompt`` parameter" msgstr "Ajout du paramètre ``prompt``" -#: library/venv.rst:136 +#: library/venv.rst:266 #, fuzzy msgid "Added the ``upgrade_deps`` parameter" msgstr "Ajout du paramètre ``prompt``" @@ -737,7 +737,7 @@ msgstr "" msgid "There is also a module-level convenience function:" msgstr "Il y a aussi une fonction pratique au niveau du module :" -#: library/venv.rst:254 +#: library/venv.rst:255 msgid "" "Create an :class:`EnvBuilder` with the given keyword arguments, and call " "its :meth:`~EnvBuilder.create` method with the *env_dir* argument." @@ -745,11 +745,11 @@ msgstr "" "Crée une :class:`EnvBuilder` avec les arguments donnés, et appelle sa " "méthode :meth:`~EnvBuilder.create` avec l'argument *env_dir*." -#: library/venv.rst:266 +#: library/venv.rst:270 msgid "An example of extending ``EnvBuilder``" msgstr "Un exemple d'extension de ``EnvBuilder``" -#: library/venv.rst:268 +#: library/venv.rst:272 msgid "" "The following script shows how to extend :class:`EnvBuilder` by implementing " "a subclass which installs setuptools and pip into a created virtual " @@ -759,7 +759,7 @@ msgstr "" "implémentant une sous-classe qui installe **setuptools** et **pip** dans un " "environnement créé ::" -#: library/venv.rst:487 +#: library/venv.rst:491 msgid "" "This script is also available for download `online `_." diff --git a/library/warnings.po b/library/warnings.po index 81141825d..8c604e79a 100644 --- a/library/warnings.po +++ b/library/warnings.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-11-01 13:16+0100\n" "Last-Translator: Stéphane Lambelin\n" "Language-Team: FRENCH \n" @@ -516,7 +516,10 @@ msgstr "" "défaut a les entrées suivantes (par ordre de priorité) ::" #: library/warnings.rst:232 -msgid "In debug builds, the list of default warning filters is empty." +#, fuzzy +msgid "" +"In a :ref:`debug build `, the list of default warning filters " +"is empty." msgstr "" "Dans les versions de débogage, la liste des filtres d'avertissement par " "défaut est vide." diff --git a/library/webbrowser.po b/library/webbrowser.po index c239651e5..4ed828d0e 100644 --- a/library/webbrowser.po +++ b/library/webbrowser.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -15,7 +15,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: library/webbrowser.rst:2 -msgid ":mod:`webbrowser` --- Convenient Web-browser controller" +msgid ":mod:`webbrowser` --- Convenient web-browser controller" msgstr "" #: library/webbrowser.rst:10 @@ -25,7 +25,7 @@ msgstr "" #: library/webbrowser.rst:14 msgid "" "The :mod:`webbrowser` module provides a high-level interface to allow " -"displaying Web-based documents to users. Under most circumstances, simply " +"displaying web-based documents to users. Under most circumstances, simply " "calling the :func:`.open` function from this module will do the right thing." msgstr "" @@ -297,7 +297,8 @@ msgid "``'macosx'``" msgstr "``'macosx'``" #: library/webbrowser.rst:146 -msgid ":class:`MacOSX('default')`" +#, fuzzy +msgid ":class:`MacOSXOSAScript('default')`" msgstr ":class:`MacOSX('default')`" #: library/webbrowser.rst:148 @@ -309,7 +310,8 @@ msgid "``'safari'``" msgstr "``'safari'``" #: library/webbrowser.rst:148 -msgid ":class:`MacOSX('safari')`" +#, fuzzy +msgid ":class:`MacOSXOSAScript('safari')`" msgstr ":class:`MacOSX('safari')`" #: library/webbrowser.rst:150 @@ -363,7 +365,7 @@ msgid "Only on Windows platforms." msgstr "" #: library/webbrowser.rst:172 -msgid "Only on Mac OS X platform." +msgid "Only on macOS platform." msgstr "" #: library/webbrowser.rst:174 diff --git a/library/xml.dom.minidom.po b/library/xml.dom.minidom.po index 8d3f28347..9ed8e866b 100644 --- a/library/xml.dom.minidom.po +++ b/library/xml.dom.minidom.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-09-29 19:35+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -181,7 +181,7 @@ msgstr "" #: library/xml.dom.minidom.rst:148 msgid "" -"Silimarly, explicitly stating the *standalone* argument causes the " +"Similarly, explicitly stating the *standalone* argument causes the " "standalone document declarations to be added to the prologue of the XML " "document. If the value is set to `True`, `standalone=\"yes\"` is added, " "otherwise it is set to `\"no\"`. Not stating the argument will omit the " diff --git a/library/xml.etree.elementtree.po b/library/xml.etree.elementtree.po index 275e53ee6..2fca10e17 100644 --- a/library/xml.etree.elementtree.po +++ b/library/xml.etree.elementtree.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-15 22:05+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-07-04 11:02+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -300,7 +300,7 @@ msgid "" "scope of the module." msgstr "" -#: library/xml.etree.elementtree.rst:384 library/xml.etree.elementtree.rst:758 +#: library/xml.etree.elementtree.rst:384 library/xml.etree.elementtree.rst:776 msgid "Example" msgstr "Exemple" @@ -406,40 +406,73 @@ msgid "" msgstr "" #: library/xml.etree.elementtree.rst:458 +#, fuzzy +msgid "``[@attrib!='value']``" +msgstr "``[@attrib='value']``" + +#: library/xml.etree.elementtree.rst:458 +msgid "" +"Selects all elements for which the given attribute does not have the given " +"value. The value cannot contain quotes." +msgstr "" + +#: library/xml.etree.elementtree.rst:464 msgid "``[tag]``" msgstr "``[tag]``" -#: library/xml.etree.elementtree.rst:458 +#: library/xml.etree.elementtree.rst:464 msgid "" "Selects all elements that have a child named ``tag``. Only immediate " "children are supported." msgstr "" -#: library/xml.etree.elementtree.rst:461 +#: library/xml.etree.elementtree.rst:467 msgid "``[.='text']``" msgstr "``[.='text']``" -#: library/xml.etree.elementtree.rst:461 +#: library/xml.etree.elementtree.rst:467 msgid "" "Selects all elements whose complete text content, including descendants, " "equals the given ``text``." msgstr "" -#: library/xml.etree.elementtree.rst:466 +#: library/xml.etree.elementtree.rst:472 +#, fuzzy +msgid "``[.!='text']``" +msgstr "``[.='text']``" + +#: library/xml.etree.elementtree.rst:472 +msgid "" +"Selects all elements whose complete text content, including descendants, " +"does not equal the given ``text``." +msgstr "" + +#: library/xml.etree.elementtree.rst:478 msgid "``[tag='text']``" msgstr "``[tag='text']``" -#: library/xml.etree.elementtree.rst:466 +#: library/xml.etree.elementtree.rst:478 msgid "" "Selects all elements that have a child named ``tag`` whose complete text " "content, including descendants, equals the given ``text``." msgstr "" -#: library/xml.etree.elementtree.rst:470 +#: library/xml.etree.elementtree.rst:482 +#, fuzzy +msgid "``[tag!='text']``" +msgstr "``[tag='text']``" + +#: library/xml.etree.elementtree.rst:482 +msgid "" +"Selects all elements that have a child named ``tag`` whose complete text " +"content, including descendants, does not equal the given ``text``." +msgstr "" + +#: library/xml.etree.elementtree.rst:488 msgid "``[position]``" msgstr "``[position]``" -#: library/xml.etree.elementtree.rst:470 +#: library/xml.etree.elementtree.rst:488 msgid "" "Selects all elements that are located at the given position. The position " "can be either an integer (1 is the first position), the expression " @@ -447,26 +480,26 @@ msgid "" "position (e.g. ``last()-1``)." msgstr "" -#: library/xml.etree.elementtree.rst:477 +#: library/xml.etree.elementtree.rst:495 msgid "" "Predicates (expressions within square brackets) must be preceded by a tag " "name, an asterisk, or another predicate. ``position`` predicates must be " "preceded by a tag name." msgstr "" -#: library/xml.etree.elementtree.rst:482 library/xml.etree.elementtree.rst:810 +#: library/xml.etree.elementtree.rst:500 library/xml.etree.elementtree.rst:828 msgid "Reference" msgstr "Référence" -#: library/xml.etree.elementtree.rst:487 library/xml.etree.elementtree.rst:815 +#: library/xml.etree.elementtree.rst:505 library/xml.etree.elementtree.rst:833 msgid "Functions" msgstr "Fonctions" -#: library/xml.etree.elementtree.rst:491 +#: library/xml.etree.elementtree.rst:509 msgid "`C14N 2.0 `_ transformation function." msgstr "" -#: library/xml.etree.elementtree.rst:493 +#: library/xml.etree.elementtree.rst:511 msgid "" "Canonicalization is a way to normalise XML output in a way that allows byte-" "by-byte comparisons and digital signatures. It reduced the freedom that XML " @@ -475,7 +508,7 @@ msgid "" "declarations, the ordering of attributes, and ignorable whitespace." msgstr "" -#: library/xml.etree.elementtree.rst:499 +#: library/xml.etree.elementtree.rst:517 msgid "" "This function takes an XML data string (*xml_data*) or a file path or file-" "like object (*from_file*) as input, converts it to the canonical form, and " @@ -484,62 +517,62 @@ msgid "" "should therefore be opened in text mode with ``utf-8`` encoding." msgstr "" -#: library/xml.etree.elementtree.rst:506 +#: library/xml.etree.elementtree.rst:524 #, fuzzy msgid "Typical uses::" msgstr "Usage typique ::" -#: library/xml.etree.elementtree.rst:517 +#: library/xml.etree.elementtree.rst:535 msgid "The configuration *options* are as follows:" msgstr "" -#: library/xml.etree.elementtree.rst:519 +#: library/xml.etree.elementtree.rst:537 msgid "*with_comments*: set to true to include comments (default: false)" msgstr "" -#: library/xml.etree.elementtree.rst:520 +#: library/xml.etree.elementtree.rst:538 msgid "" "*strip_text*: set to true to strip whitespace before and after text content" msgstr "" -#: library/xml.etree.elementtree.rst:521 library/xml.etree.elementtree.rst:523 +#: library/xml.etree.elementtree.rst:539 library/xml.etree.elementtree.rst:541 msgid "(default: false)" msgstr "" -#: library/xml.etree.elementtree.rst:522 +#: library/xml.etree.elementtree.rst:540 msgid "" "*rewrite_prefixes*: set to true to replace namespace prefixes by " "\"n{number}\"" msgstr "" -#: library/xml.etree.elementtree.rst:524 +#: library/xml.etree.elementtree.rst:542 msgid "*qname_aware_tags*: a set of qname aware tag names in which prefixes" msgstr "" -#: library/xml.etree.elementtree.rst:525 library/xml.etree.elementtree.rst:527 +#: library/xml.etree.elementtree.rst:543 library/xml.etree.elementtree.rst:545 msgid "should be replaced in text content (default: empty)" msgstr "" -#: library/xml.etree.elementtree.rst:526 +#: library/xml.etree.elementtree.rst:544 msgid "" "*qname_aware_attrs*: a set of qname aware attribute names in which prefixes" msgstr "" -#: library/xml.etree.elementtree.rst:528 +#: library/xml.etree.elementtree.rst:546 msgid "*exclude_attrs*: a set of attribute names that should not be serialised" msgstr "" -#: library/xml.etree.elementtree.rst:529 +#: library/xml.etree.elementtree.rst:547 msgid "*exclude_tags*: a set of tag names that should not be serialised" msgstr "" -#: library/xml.etree.elementtree.rst:531 +#: library/xml.etree.elementtree.rst:549 msgid "" "In the option list above, \"a set\" refers to any collection or iterable of " "strings, no ordering is expected." msgstr "" -#: library/xml.etree.elementtree.rst:539 +#: library/xml.etree.elementtree.rst:557 msgid "" "Comment element factory. This factory function creates a special element " "that will be serialized as an XML comment by the standard serializer. The " @@ -548,7 +581,7 @@ msgid "" "representing a comment." msgstr "" -#: library/xml.etree.elementtree.rst:545 +#: library/xml.etree.elementtree.rst:563 msgid "" "Note that :class:`XMLParser` skips over comments in the input instead of " "creating comment objects for them. An :class:`ElementTree` will only contain " @@ -556,29 +589,29 @@ msgid "" "class:`Element` methods." msgstr "" -#: library/xml.etree.elementtree.rst:552 +#: library/xml.etree.elementtree.rst:570 msgid "" "Writes an element tree or element structure to sys.stdout. This function " "should be used for debugging only." msgstr "" -#: library/xml.etree.elementtree.rst:555 +#: library/xml.etree.elementtree.rst:573 msgid "" "The exact output format is implementation dependent. In this version, it's " "written as an ordinary XML file." msgstr "" -#: library/xml.etree.elementtree.rst:558 +#: library/xml.etree.elementtree.rst:576 msgid "*elem* is an element tree or an individual element." msgstr "" -#: library/xml.etree.elementtree.rst:560 +#: library/xml.etree.elementtree.rst:578 msgid "" "The :func:`dump` function now preserves the attribute order specified by the " "user." msgstr "" -#: library/xml.etree.elementtree.rst:567 +#: library/xml.etree.elementtree.rst:585 msgid "" "Parses an XML section from a string constant. Same as :func:`XML`. *text* " "is a string containing XML data. *parser* is an optional parser instance. " @@ -586,7 +619,7 @@ msgid "" "class:`Element` instance." msgstr "" -#: library/xml.etree.elementtree.rst:575 +#: library/xml.etree.elementtree.rst:593 msgid "" "Parses an XML document from a sequence of string fragments. *sequence* is a " "list or other sequence containing XML data fragments. *parser* is an " @@ -594,7 +627,7 @@ msgid "" "parser is used. Returns an :class:`Element` instance." msgstr "" -#: library/xml.etree.elementtree.rst:585 +#: library/xml.etree.elementtree.rst:603 msgid "" "Appends whitespace to the subtree to indent the tree visually. This can be " "used to generate pretty-printed XML output. *tree* can be an Element or " @@ -604,13 +637,13 @@ msgid "" "indentation level as *level*." msgstr "" -#: library/xml.etree.elementtree.rst:597 +#: library/xml.etree.elementtree.rst:615 msgid "" "Check if an object appears to be a valid element object. *element* is an " "element instance. Return ``True`` if this is an element object." msgstr "" -#: library/xml.etree.elementtree.rst:603 +#: library/xml.etree.elementtree.rst:621 msgid "" "Parses an XML section into an element tree incrementally, and reports what's " "going on to the user. *source* is a filename or :term:`file object` " @@ -625,7 +658,7 @@ msgid "" "elem)`` pairs." msgstr "" -#: library/xml.etree.elementtree.rst:615 +#: library/xml.etree.elementtree.rst:633 msgid "" "Note that while :func:`iterparse` builds the tree incrementally, it issues " "blocking reads on *source* (or the file it names). As such, it's unsuitable " @@ -633,7 +666,7 @@ msgid "" "parsing, see :class:`XMLPullParser`." msgstr "" -#: library/xml.etree.elementtree.rst:622 +#: library/xml.etree.elementtree.rst:640 msgid "" ":func:`iterparse` only guarantees that it has seen the \">\" character of a " "starting tag when it emits a \"start\" event, so the attributes are defined, " @@ -642,19 +675,19 @@ msgid "" "present." msgstr "" -#: library/xml.etree.elementtree.rst:628 library/xml.etree.elementtree.rst:1456 +#: library/xml.etree.elementtree.rst:646 library/xml.etree.elementtree.rst:1474 msgid "If you need a fully populated element, look for \"end\" events instead." msgstr "" -#: library/xml.etree.elementtree.rst:630 +#: library/xml.etree.elementtree.rst:648 msgid "The *parser* argument." msgstr "" -#: library/xml.etree.elementtree.rst:633 library/xml.etree.elementtree.rst:1460 +#: library/xml.etree.elementtree.rst:651 library/xml.etree.elementtree.rst:1478 msgid "The ``comment`` and ``pi`` events were added." msgstr "" -#: library/xml.etree.elementtree.rst:639 +#: library/xml.etree.elementtree.rst:657 msgid "" "Parses an XML section into an element tree. *source* is a filename or file " "object containing XML data. *parser* is an optional parser instance. If " @@ -662,7 +695,7 @@ msgid "" "class:`ElementTree` instance." msgstr "" -#: library/xml.etree.elementtree.rst:647 +#: library/xml.etree.elementtree.rst:665 msgid "" "PI element factory. This factory function creates a special element that " "will be serialized as an XML processing instruction. *target* is a string " @@ -670,7 +703,7 @@ msgid "" "given. Returns an element instance, representing a processing instruction." msgstr "" -#: library/xml.etree.elementtree.rst:652 +#: library/xml.etree.elementtree.rst:670 msgid "" "Note that :class:`XMLParser` skips over processing instructions in the input " "instead of creating comment objects for them. An :class:`ElementTree` will " @@ -678,7 +711,7 @@ msgid "" "the tree using one of the :class:`Element` methods." msgstr "" -#: library/xml.etree.elementtree.rst:660 +#: library/xml.etree.elementtree.rst:678 msgid "" "Registers a namespace prefix. The registry is global, and any existing " "mapping for either the given prefix or the namespace URI will be removed. " @@ -687,13 +720,13 @@ msgid "" "all possible." msgstr "" -#: library/xml.etree.elementtree.rst:671 +#: library/xml.etree.elementtree.rst:689 msgid "" "Subelement factory. This function creates an element instance, and appends " "it to an existing element." msgstr "" -#: library/xml.etree.elementtree.rst:674 +#: library/xml.etree.elementtree.rst:692 msgid "" "The element name, attribute names, and attribute values can be either " "bytestrings or Unicode strings. *parent* is the parent element. *tag* is " @@ -702,7 +735,7 @@ msgid "" "arguments. Returns an element instance." msgstr "" -#: library/xml.etree.elementtree.rst:685 +#: library/xml.etree.elementtree.rst:703 msgid "" "Generates a string representation of an XML element, including all " "subelements. *element* is an :class:`Element` instance. *encoding* [1]_ is " @@ -714,22 +747,22 @@ msgid "" "encoded string containing the XML data." msgstr "" -#: library/xml.etree.elementtree.rst:694 library/xml.etree.elementtree.rst:721 -#: library/xml.etree.elementtree.rst:1168 +#: library/xml.etree.elementtree.rst:712 library/xml.etree.elementtree.rst:739 +#: library/xml.etree.elementtree.rst:1186 msgid "The *short_empty_elements* parameter." msgstr "Le paramètre *short_empty_elements*." -#: library/xml.etree.elementtree.rst:697 library/xml.etree.elementtree.rst:724 +#: library/xml.etree.elementtree.rst:715 library/xml.etree.elementtree.rst:742 msgid "The *xml_declaration* and *default_namespace* parameters." msgstr "" -#: library/xml.etree.elementtree.rst:700 +#: library/xml.etree.elementtree.rst:718 msgid "" "The :func:`tostring` function now preserves the attribute order specified by " "the user." msgstr "" -#: library/xml.etree.elementtree.rst:709 +#: library/xml.etree.elementtree.rst:727 msgid "" "Generates a string representation of an XML element, including all " "subelements. *element* is an :class:`Element` instance. *encoding* [1]_ is " @@ -743,13 +776,13 @@ msgid "" "tostring(element)``." msgstr "" -#: library/xml.etree.elementtree.rst:727 +#: library/xml.etree.elementtree.rst:745 msgid "" "The :func:`tostringlist` function now preserves the attribute order " "specified by the user." msgstr "" -#: library/xml.etree.elementtree.rst:734 +#: library/xml.etree.elementtree.rst:752 msgid "" "Parses an XML section from a string constant. This function can be used to " "embed \"XML literals\" in Python code. *text* is a string containing XML " @@ -757,7 +790,7 @@ msgid "" "class:`XMLParser` parser is used. Returns an :class:`Element` instance." msgstr "" -#: library/xml.etree.elementtree.rst:742 +#: library/xml.etree.elementtree.rst:760 msgid "" "Parses an XML section from a string constant, and also returns a dictionary " "which maps from element id:s to elements. *text* is a string containing XML " @@ -766,11 +799,11 @@ msgid "" "`Element` instance and a dictionary." msgstr "" -#: library/xml.etree.elementtree.rst:752 +#: library/xml.etree.elementtree.rst:770 msgid "XInclude support" msgstr "" -#: library/xml.etree.elementtree.rst:754 +#: library/xml.etree.elementtree.rst:772 msgid "" "This module provides limited support for `XInclude directives `_, via the :mod:`xml.etree.ElementInclude` helper " @@ -778,7 +811,7 @@ msgid "" "element trees, based on information in the tree." msgstr "" -#: library/xml.etree.elementtree.rst:760 +#: library/xml.etree.elementtree.rst:778 msgid "" "Here's an example that demonstrates use of the XInclude module. To include " "an XML document in the current document, use the ``{http://www.w3.org/2001/" @@ -786,43 +819,43 @@ msgid "" "and use the **href** attribute to specify the document to include." msgstr "" -#: library/xml.etree.elementtree.rst:769 +#: library/xml.etree.elementtree.rst:787 msgid "" "By default, the **href** attribute is treated as a file name. You can use " "custom loaders to override this behaviour. Also note that the standard " "helper does not support XPointer syntax." msgstr "" -#: library/xml.etree.elementtree.rst:771 +#: library/xml.etree.elementtree.rst:789 msgid "" "To process this file, load it as usual, and pass the root element to the :" "mod:`xml.etree.ElementTree` module:" msgstr "" -#: library/xml.etree.elementtree.rst:782 +#: library/xml.etree.elementtree.rst:800 msgid "" "The ElementInclude module replaces the ``{http://www.w3.org/2001/XInclude}" "include`` element with the root element from the **source.xml** document. " "The result might look something like this:" msgstr "" -#: library/xml.etree.elementtree.rst:790 +#: library/xml.etree.elementtree.rst:808 msgid "" "If the **parse** attribute is omitted, it defaults to \"xml\". The href " "attribute is required." msgstr "" -#: library/xml.etree.elementtree.rst:792 +#: library/xml.etree.elementtree.rst:810 msgid "" "To include a text document, use the ``{http://www.w3.org/2001/XInclude}" "include`` element, and set the **parse** attribute to \"text\":" msgstr "" -#: library/xml.etree.elementtree.rst:801 +#: library/xml.etree.elementtree.rst:819 msgid "The result might look something like:" msgstr "" -#: library/xml.etree.elementtree.rst:819 +#: library/xml.etree.elementtree.rst:837 msgid "" "Default loader. This default loader reads an included resource from disk. " "*href* is a URL. *parse* is for parse mode either \"xml\" or \"text\". " @@ -833,7 +866,7 @@ msgid "" "exception." msgstr "" -#: library/xml.etree.elementtree.rst:830 +#: library/xml.etree.elementtree.rst:848 msgid "" "This function expands XInclude directives. *elem* is the root element. " "*loader* is an optional resource loader. If omitted, it defaults to :func:" @@ -844,29 +877,29 @@ msgid "" "malicious content explosion. Pass a negative value to disable the limitation." msgstr "" -#: library/xml.etree.elementtree.rst:838 +#: library/xml.etree.elementtree.rst:856 msgid "" "Returns the expanded resource. If the parse mode is ``\"xml\"``, this is an " "ElementTree instance. If the parse mode is \"text\", this is a Unicode " "string. If the loader fails, it can return None or raise an exception." msgstr "" -#: library/xml.etree.elementtree.rst:843 +#: library/xml.etree.elementtree.rst:861 #, fuzzy msgid "The *base_url* and *max_depth* parameters." msgstr "Le paramètre *short_empty_elements*." -#: library/xml.etree.elementtree.rst:850 +#: library/xml.etree.elementtree.rst:868 msgid "Element Objects" msgstr "Objets Elements" -#: library/xml.etree.elementtree.rst:854 +#: library/xml.etree.elementtree.rst:872 msgid "" "Element class. This class defines the Element interface, and provides a " "reference implementation of this interface." msgstr "" -#: library/xml.etree.elementtree.rst:857 +#: library/xml.etree.elementtree.rst:875 msgid "" "The element name, attribute names, and attribute values can be either " "bytestrings or Unicode strings. *tag* is the element name. *attrib* is an " @@ -874,13 +907,13 @@ msgid "" "additional attributes, given as keyword arguments." msgstr "" -#: library/xml.etree.elementtree.rst:865 +#: library/xml.etree.elementtree.rst:883 msgid "" "A string identifying what kind of data this element represents (the element " "type, in other words)." msgstr "" -#: library/xml.etree.elementtree.rst:872 +#: library/xml.etree.elementtree.rst:890 msgid "" "These attributes can be used to hold additional data associated with the " "element. Their values are usually strings but may be any application-" @@ -891,7 +924,7 @@ msgid "" "the XML data" msgstr "" -#: library/xml.etree.elementtree.rst:884 +#: library/xml.etree.elementtree.rst:902 msgid "" "the *a* element has ``None`` for both *text* and *tail* attributes, the *b* " "element has *text* ``\"1\"`` and *tail* ``\"4\"``, the *c* element has " @@ -899,17 +932,17 @@ msgid "" "``None`` and *tail* ``\"3\"``." msgstr "" -#: library/xml.etree.elementtree.rst:889 +#: library/xml.etree.elementtree.rst:907 msgid "" "To collect the inner text of an element, see :meth:`itertext`, for example ``" "\"\".join(element.itertext())``." msgstr "" -#: library/xml.etree.elementtree.rst:892 +#: library/xml.etree.elementtree.rst:910 msgid "Applications may store arbitrary objects in these attributes." msgstr "" -#: library/xml.etree.elementtree.rst:897 +#: library/xml.etree.elementtree.rst:915 msgid "" "A dictionary containing the element's attributes. Note that while the " "*attrib* value is always a real mutable Python dictionary, an ElementTree " @@ -918,59 +951,59 @@ msgid "" "implementations, use the dictionary methods below whenever possible." msgstr "" -#: library/xml.etree.elementtree.rst:903 +#: library/xml.etree.elementtree.rst:921 msgid "The following dictionary-like methods work on the element attributes." msgstr "" -#: library/xml.etree.elementtree.rst:908 +#: library/xml.etree.elementtree.rst:926 msgid "" "Resets an element. This function removes all subelements, clears all " "attributes, and sets the text and tail attributes to ``None``." msgstr "" -#: library/xml.etree.elementtree.rst:914 +#: library/xml.etree.elementtree.rst:932 msgid "Gets the element attribute named *key*." msgstr "" -#: library/xml.etree.elementtree.rst:916 +#: library/xml.etree.elementtree.rst:934 msgid "" "Returns the attribute value, or *default* if the attribute was not found." msgstr "" -#: library/xml.etree.elementtree.rst:921 +#: library/xml.etree.elementtree.rst:939 msgid "" "Returns the element attributes as a sequence of (name, value) pairs. The " "attributes are returned in an arbitrary order." msgstr "" -#: library/xml.etree.elementtree.rst:927 +#: library/xml.etree.elementtree.rst:945 msgid "" "Returns the elements attribute names as a list. The names are returned in " "an arbitrary order." msgstr "" -#: library/xml.etree.elementtree.rst:933 +#: library/xml.etree.elementtree.rst:951 msgid "Set the attribute *key* on the element to *value*." msgstr "" -#: library/xml.etree.elementtree.rst:935 +#: library/xml.etree.elementtree.rst:953 msgid "The following methods work on the element's children (subelements)." msgstr "" -#: library/xml.etree.elementtree.rst:940 +#: library/xml.etree.elementtree.rst:958 msgid "" "Adds the element *subelement* to the end of this element's internal list of " "subelements. Raises :exc:`TypeError` if *subelement* is not an :class:" "`Element`." msgstr "" -#: library/xml.etree.elementtree.rst:947 +#: library/xml.etree.elementtree.rst:965 msgid "" "Appends *subelements* from a sequence object with zero or more elements. " "Raises :exc:`TypeError` if a subelement is not an :class:`Element`." msgstr "" -#: library/xml.etree.elementtree.rst:955 +#: library/xml.etree.elementtree.rst:973 msgid "" "Finds the first subelement matching *match*. *match* may be a tag name or " "a :ref:`path `. Returns an element instance or " @@ -979,7 +1012,7 @@ msgid "" "expression into the given namespace." msgstr "" -#: library/xml.etree.elementtree.rst:964 +#: library/xml.etree.elementtree.rst:982 msgid "" "Finds all matching subelements, by tag name or :ref:`path `. Returns a list containing all matching elements in document " @@ -988,7 +1021,7 @@ msgid "" "expression into the given namespace." msgstr "" -#: library/xml.etree.elementtree.rst:973 +#: library/xml.etree.elementtree.rst:991 msgid "" "Finds text for the first subelement matching *match*. *match* may be a tag " "name or a :ref:`path `. Returns the text content of the " @@ -999,13 +1032,13 @@ msgid "" "into the given namespace." msgstr "" -#: library/xml.etree.elementtree.rst:984 +#: library/xml.etree.elementtree.rst:1002 msgid "" "Inserts *subelement* at the given position in this element. Raises :exc:" "`TypeError` if *subelement* is not an :class:`Element`." msgstr "" -#: library/xml.etree.elementtree.rst:990 +#: library/xml.etree.elementtree.rst:1008 msgid "" "Creates a tree :term:`iterator` with the current element as the root. The " "iterator iterates over this element and all elements below it, in document " @@ -1014,7 +1047,7 @@ msgid "" "structure is modified during iteration, the result is undefined." msgstr "" -#: library/xml.etree.elementtree.rst:1001 +#: library/xml.etree.elementtree.rst:1019 msgid "" "Finds all matching subelements, by tag name or :ref:`path `. Returns an iterable yielding all matching elements in document " @@ -1022,40 +1055,40 @@ msgid "" "name." msgstr "" -#: library/xml.etree.elementtree.rst:1012 +#: library/xml.etree.elementtree.rst:1030 msgid "" "Creates a text iterator. The iterator loops over this element and all " "subelements, in document order, and returns all inner text." msgstr "" -#: library/xml.etree.elementtree.rst:1020 +#: library/xml.etree.elementtree.rst:1038 msgid "" "Creates a new element object of the same type as this element. Do not call " "this method, use the :func:`SubElement` factory function instead." msgstr "" -#: library/xml.etree.elementtree.rst:1026 +#: library/xml.etree.elementtree.rst:1044 msgid "" "Removes *subelement* from the element. Unlike the find\\* methods this " "method compares elements based on the instance identity, not on tag value or " "contents." msgstr "" -#: library/xml.etree.elementtree.rst:1030 +#: library/xml.etree.elementtree.rst:1048 msgid "" ":class:`Element` objects also support the following sequence type methods " "for working with subelements: :meth:`~object.__delitem__`, :meth:`~object." "__getitem__`, :meth:`~object.__setitem__`, :meth:`~object.__len__`." msgstr "" -#: library/xml.etree.elementtree.rst:1035 +#: library/xml.etree.elementtree.rst:1053 msgid "" "Caution: Elements with no subelements will test as ``False``. This behavior " "will change in future versions. Use specific ``len(elem)`` or ``elem is " "None`` test instead. ::" msgstr "" -#: library/xml.etree.elementtree.rst:1047 +#: library/xml.etree.elementtree.rst:1065 msgid "" "Prior to Python 3.8, the serialisation order of the XML attributes of " "elements was artificially made predictable by sorting the attributes by " @@ -1064,7 +1097,7 @@ msgid "" "attributes were originally parsed or created by user code." msgstr "" -#: library/xml.etree.elementtree.rst:1053 +#: library/xml.etree.elementtree.rst:1071 msgid "" "In general, user code should try not to depend on a specific ordering of " "attributes, given that the `XML Information Set `_ writer. Arguments are the " "same as for the :func:`canonicalize` function. This class does not build a " @@ -1299,11 +1332,11 @@ msgid "" "using the *write* function." msgstr "" -#: library/xml.etree.elementtree.rst:1331 +#: library/xml.etree.elementtree.rst:1349 msgid "XMLParser Objects" msgstr "" -#: library/xml.etree.elementtree.rst:1336 +#: library/xml.etree.elementtree.rst:1354 msgid "" "This class is the low-level building block of the module. It uses :mod:`xml." "parsers.expat` for efficient, event-based parsing of XML. It can be fed XML " @@ -1314,24 +1347,24 @@ msgid "" "XML file." msgstr "" -#: library/xml.etree.elementtree.rst:1344 +#: library/xml.etree.elementtree.rst:1362 msgid "" "Parameters are now :ref:`keyword-only `. The *html* " "argument no longer supported." msgstr "" -#: library/xml.etree.elementtree.rst:1351 +#: library/xml.etree.elementtree.rst:1369 msgid "" "Finishes feeding data to the parser. Returns the result of calling the " "``close()`` method of the *target* passed during construction; by default, " "this is the toplevel document element." msgstr "" -#: library/xml.etree.elementtree.rst:1358 +#: library/xml.etree.elementtree.rst:1376 msgid "Feeds data to the parser. *data* is encoded data." msgstr "" -#: library/xml.etree.elementtree.rst:1360 +#: library/xml.etree.elementtree.rst:1378 msgid "" ":meth:`XMLParser.feed` calls *target*\\'s ``start(tag, attrs_dict)`` method " "for each opening tag, its ``end(tag)`` method for each closing tag, and data " @@ -1342,11 +1375,11 @@ msgid "" "of an XML file::" msgstr "" -#: library/xml.etree.elementtree.rst:1404 +#: library/xml.etree.elementtree.rst:1422 msgid "XMLPullParser Objects" msgstr "" -#: library/xml.etree.elementtree.rst:1408 +#: library/xml.etree.elementtree.rst:1426 msgid "" "A pull parser suitable for non-blocking applications. Its input-side API is " "similar to that of :class:`XMLParser`, but instead of pushing calls to a " @@ -1358,11 +1391,11 @@ msgid "" "is omitted, only ``\"end\"`` events are reported." msgstr "" -#: library/xml.etree.elementtree.rst:1419 +#: library/xml.etree.elementtree.rst:1437 msgid "Feed the given bytes data to the parser." msgstr "" -#: library/xml.etree.elementtree.rst:1423 +#: library/xml.etree.elementtree.rst:1441 msgid "" "Signal the parser that the data stream is terminated. Unlike :meth:" "`XMLParser.close`, this method always returns :const:`None`. Any events not " @@ -1370,7 +1403,7 @@ msgid "" "`read_events`." msgstr "" -#: library/xml.etree.elementtree.rst:1430 +#: library/xml.etree.elementtree.rst:1448 msgid "" "Return an iterator over the events which have been encountered in the data " "fed to the parser. The iterator yields ``(event, elem)`` pairs, where " @@ -1379,25 +1412,25 @@ msgid "" "follows." msgstr "" -#: library/xml.etree.elementtree.rst:1436 +#: library/xml.etree.elementtree.rst:1454 msgid "``start``, ``end``: the current Element." msgstr "" -#: library/xml.etree.elementtree.rst:1437 +#: library/xml.etree.elementtree.rst:1455 msgid "``comment``, ``pi``: the current comment / processing instruction" msgstr "" -#: library/xml.etree.elementtree.rst:1438 +#: library/xml.etree.elementtree.rst:1456 msgid "" "``start-ns``: a tuple ``(prefix, uri)`` naming the declared namespace " "mapping." msgstr "" -#: library/xml.etree.elementtree.rst:1440 +#: library/xml.etree.elementtree.rst:1458 msgid "``end-ns``: :const:`None` (this may change in a future version)" msgstr "" -#: library/xml.etree.elementtree.rst:1442 +#: library/xml.etree.elementtree.rst:1460 msgid "" "Events provided in a previous call to :meth:`read_events` will not be " "yielded again. Events are consumed from the internal queue only when they " @@ -1406,7 +1439,7 @@ msgid "" "results." msgstr "" -#: library/xml.etree.elementtree.rst:1450 +#: library/xml.etree.elementtree.rst:1468 msgid "" ":class:`XMLPullParser` only guarantees that it has seen the \">\" character " "of a starting tag when it emits a \"start\" event, so the attributes are " @@ -1415,11 +1448,11 @@ msgid "" "be present." msgstr "" -#: library/xml.etree.elementtree.rst:1465 +#: library/xml.etree.elementtree.rst:1483 msgid "Exceptions" msgstr "Exceptions" -#: library/xml.etree.elementtree.rst:1469 +#: library/xml.etree.elementtree.rst:1487 msgid "" "XML parse error, raised by the various parsing methods in this module when " "parsing fails. The string representation of an instance of this exception " @@ -1427,22 +1460,22 @@ msgid "" "following attributes available:" msgstr "" -#: library/xml.etree.elementtree.rst:1476 +#: library/xml.etree.elementtree.rst:1494 msgid "" "A numeric error code from the expat parser. See the documentation of :mod:" "`xml.parsers.expat` for the list of error codes and their meanings." msgstr "" -#: library/xml.etree.elementtree.rst:1481 +#: library/xml.etree.elementtree.rst:1499 msgid "" "A tuple of *line*, *column* numbers, specifying where the error occurred." msgstr "" -#: library/xml.etree.elementtree.rst:1484 +#: library/xml.etree.elementtree.rst:1502 msgid "Footnotes" msgstr "Notes" -#: library/xml.etree.elementtree.rst:1485 +#: library/xml.etree.elementtree.rst:1503 msgid "" "The encoding string included in XML output should conform to the appropriate " "standards. For example, \"UTF-8\" is valid, but \"UTF8\" is not. See " diff --git a/library/xml.po b/library/xml.po index ff8619bec..0550cdbcc 100644 --- a/library/xml.po +++ b/library/xml.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-04-27 18:40+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -146,35 +146,39 @@ msgstr "xmlrpc" msgid "billion laughs" msgstr "*billion laughs*" -#: library/xml.rst:67 library/xml.rst:70 -msgid "**Vulnerable**" +#: library/xml.rst:67 +#, fuzzy +msgid "**Vulnerable** (1)" msgstr "**Vulnérable**" #: library/xml.rst:67 msgid "quadratic blowup" msgstr "*quadratic blowup*" -#: library/xml.rst:99 +#: library/xml.rst:103 msgid "external entity expansion" msgstr "*external entity expansion*" #: library/xml.rst:69 -msgid "Safe (4)" +#, fuzzy +msgid "Safe (5)" msgstr "Sûr (4)" #: library/xml.rst:68 -msgid "Safe (1)" -msgstr "Sûr (1)" +#, fuzzy +msgid "Safe (2)" +msgstr "Sûr (4)" #: library/xml.rst:68 -msgid "Safe (2)" -msgstr "Sûr (2)" +#, fuzzy +msgid "Safe (3)" +msgstr "Sûr (4)" #: library/xml.rst:68 -msgid "Safe (3)" -msgstr "Sûr (3)" +msgid "Safe (4)" +msgstr "Sûr (4)" -#: library/xml.rst:104 +#: library/xml.rst:108 msgid "`DTD`_ retrieval" msgstr "Récupération de `DTD`_" @@ -182,19 +186,31 @@ msgstr "Récupération de `DTD`_" msgid "Safe" msgstr "Sûr" -#: library/xml.rst:111 +#: library/xml.rst:115 msgid "decompression bomb" msgstr "*decompression bomb*" +#: library/xml.rst:70 +msgid "**Vulnerable**" +msgstr "**Vulnérable**" + #: library/xml.rst:73 msgid "" +"Expat 2.4.1 and newer is not vulnerable to the \"billion laughs\" and " +"\"quadratic blowup\" vulnerabilities. Items still listed as vulnerable due " +"to potential reliance on system-provided libraries. Check :data:`pyexpat." +"EXPAT_VERSION`." +msgstr "" + +#: library/xml.rst:77 +msgid "" ":mod:`xml.etree.ElementTree` doesn't expand external entities and raises a :" "exc:`ParserError` when an entity occurs." msgstr "" ":mod:`xml.etree.ElementTree` n'étend pas les entités externes et lève une " "exception :exc:`ParserError` quand une telle entité est rencontrée." -#: library/xml.rst:75 +#: library/xml.rst:79 msgid "" ":mod:`xml.dom.minidom` doesn't expand external entities and simply returns " "the unexpanded entity verbatim." @@ -202,11 +218,11 @@ msgstr "" ":mod:`xml.dom.minidom` n'étend pas les entités externe et renvoie simplement " "le verbatim de l'entité non étendu." -#: library/xml.rst:77 +#: library/xml.rst:81 msgid ":mod:`xmlrpclib` doesn't expand external entities and omits them." msgstr ":mod:`xmlrpclib` n'étend pas les entités externes et les omet." -#: library/xml.rst:78 +#: library/xml.rst:82 msgid "" "Since Python 3.7.1, external general entities are no longer processed by " "default." @@ -214,11 +230,11 @@ msgstr "" "Depuis Python 3.7.1, les entités générales externes ne sont plus traitées " "par défaut depuis Python." -#: library/xml.rst:87 +#: library/xml.rst:91 msgid "billion laughs / exponential entity expansion" msgstr "*billion laughs* / *exponential entity expansion*" -#: library/xml.rst:83 +#: library/xml.rst:87 msgid "" "The `Billion Laughs`_ attack -- also known as exponential entity expansion " "-- uses multiple levels of nested entities. Each entity refers to another " @@ -233,11 +249,11 @@ msgstr "" "plusieurs gigaoctet de texte et consomme beaucoup de mémoire et de temps " "processeur." -#: library/xml.rst:94 +#: library/xml.rst:98 msgid "quadratic blowup entity expansion" msgstr "*quadratic blowup entity expansion*" -#: library/xml.rst:90 +#: library/xml.rst:94 msgid "" "A quadratic blowup attack is similar to a `Billion Laughs`_ attack; it " "abuses entity expansion, too. Instead of nested entities it repeats one " @@ -252,7 +268,7 @@ msgstr "" "que la version exponentielle mais contourne les contre-mesures de " "l'analyseur qui interdit les entités imbriquées de multiples fois." -#: library/xml.rst:97 +#: library/xml.rst:101 msgid "" "Entity declarations can contain more than just text for replacement. They " "can also point to external resources or local files. The XML parser accesses " @@ -263,7 +279,7 @@ msgstr "" "des fichiers locaux. L'analyseur XML accède à ces fichiers et inclut les " "contenus dans le document XML." -#: library/xml.rst:102 +#: library/xml.rst:106 msgid "" "Some XML libraries like Python's :mod:`xml.dom.pulldom` retrieve document " "type definitions from remote or local locations. The feature has similar " @@ -274,7 +290,7 @@ msgstr "" "ou locaux. La fonctionnalité a des implications similaires que le problème " "d'extension d'entités externes." -#: library/xml.rst:107 +#: library/xml.rst:111 msgid "" "Decompression bombs (aka `ZIP bomb`_) apply to all XML libraries that can " "parse compressed XML streams such as gzipped HTTP streams or LZMA-compressed " @@ -287,7 +303,7 @@ msgstr "" "permet de réduire d'une magnitude d'ordre 3 ou plus la quantité de données " "transmises." -#: library/xml.rst:113 +#: library/xml.rst:117 msgid "" "The documentation for `defusedxml`_ on PyPI has further information about " "all known attack vectors with examples and references." @@ -295,11 +311,11 @@ msgstr "" "La documentation de `defusedxml`_ sur PyPI contient plus d'informations sur " "tous les vecteurs d'attaques connus ainsi que des exemples et des références." -#: library/xml.rst:119 +#: library/xml.rst:123 msgid "The :mod:`defusedxml` Package" msgstr "Le paquet :mod:`defusedxml`" -#: library/xml.rst:121 +#: library/xml.rst:125 msgid "" "`defusedxml`_ is a pure Python package with modified subclasses of all " "stdlib XML parsers that prevent any potentially malicious operation. Use of " @@ -314,6 +330,15 @@ msgstr "" "fiables. Le paquet inclut également des exemples d'attaques et une " "documentation plus fournie sur plus d'attaques XML comme *XPath injection*." +#~ msgid "Safe (1)" +#~ msgstr "Sûr (1)" + +#~ msgid "Safe (2)" +#~ msgstr "Sûr (2)" + +#~ msgid "Safe (3)" +#~ msgstr "Sûr (3)" + #~ msgid "" #~ "`defusedexpat`_ provides a modified libexpat and a patched :mod:`pyexpat` " #~ "module that have countermeasures against entity expansion DoS attacks. " diff --git a/library/xml.sax.handler.po b/library/xml.sax.handler.po index 59ee18c7f..d442003ce 100644 --- a/library/xml.sax.handler.po +++ b/library/xml.sax.handler.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -24,12 +24,13 @@ msgstr "" #: library/xml.sax.handler.rst:14 msgid "" -"The SAX API defines four kinds of handlers: content handlers, DTD handlers, " -"error handlers, and entity resolvers. Applications normally only need to " -"implement those interfaces whose events they are interested in; they can " -"implement the interfaces in a single object or in multiple objects. Handler " -"implementations should inherit from the base classes provided in the module :" -"mod:`xml.sax.handler`, so that all methods get default implementations." +"The SAX API defines five kinds of handlers: content handlers, DTD handlers, " +"error handlers, entity resolvers and lexical handlers. Applications normally " +"only need to implement those interfaces whose events they are interested in; " +"they can implement the interfaces in a single object or in multiple objects. " +"Handler implementations should inherit from the base classes provided in the " +"module :mod:`xml.sax.handler`, so that all methods get default " +"implementations." msgstr "" #: library/xml.sax.handler.rst:24 @@ -63,193 +64,200 @@ msgid "" "immediately converted to exceptions or are handled in some other way." msgstr "" -#: library/xml.sax.handler.rst:50 +#: library/xml.sax.handler.rst:53 +msgid "" +"Interface used by the parser to represent low frequency events which may not " +"be of interest to many applications." +msgstr "" + +#: library/xml.sax.handler.rst:56 msgid "" "In addition to these classes, :mod:`xml.sax.handler` provides symbolic " "constants for the feature and property names." msgstr "" -#: library/xml.sax.handler.rst:56 +#: library/xml.sax.handler.rst:62 msgid "value: ``\"http://xml.org/sax/features/namespaces\"``" msgstr "" -#: library/xml.sax.handler.rst:57 +#: library/xml.sax.handler.rst:63 msgid "true: Perform Namespace processing." msgstr "" -#: library/xml.sax.handler.rst:59 +#: library/xml.sax.handler.rst:65 msgid "" "false: Optionally do not perform Namespace processing (implies namespace-" "prefixes; default)." msgstr "" -#: library/xml.sax.handler.rst:70 library/xml.sax.handler.rst:88 -#: library/xml.sax.handler.rst:106 library/xml.sax.handler.rst:138 +#: library/xml.sax.handler.rst:76 library/xml.sax.handler.rst:94 +#: library/xml.sax.handler.rst:102 library/xml.sax.handler.rst:112 +#: library/xml.sax.handler.rst:144 msgid "access: (parsing) read-only; (not parsing) read/write" msgstr "" -#: library/xml.sax.handler.rst:65 +#: library/xml.sax.handler.rst:71 msgid "value: ``\"http://xml.org/sax/features/namespace-prefixes\"``" msgstr "" -#: library/xml.sax.handler.rst:67 +#: library/xml.sax.handler.rst:73 msgid "" "true: Report the original prefixed names and attributes used for Namespace " "declarations." msgstr "" -#: library/xml.sax.handler.rst:69 +#: library/xml.sax.handler.rst:75 msgid "" "false: Do not report attributes used for Namespace declarations, and " "optionally do not report original prefixed names (default)." msgstr "" -#: library/xml.sax.handler.rst:75 +#: library/xml.sax.handler.rst:81 msgid "value: ``\"http://xml.org/sax/features/string-interning\"``" msgstr "" -#: library/xml.sax.handler.rst:77 +#: library/xml.sax.handler.rst:83 msgid "" "true: All element names, prefixes, attribute names, Namespace URIs, and " "local names are interned using the built-in intern function." msgstr "" -#: library/xml.sax.handler.rst:78 +#: library/xml.sax.handler.rst:84 msgid "" "false: Names are not necessarily interned, although they may be (default)." msgstr "" -#: library/xml.sax.handler.rst:84 +#: library/xml.sax.handler.rst:90 msgid "value: ``\"http://xml.org/sax/features/validation\"``" msgstr "" -#: library/xml.sax.handler.rst:86 +#: library/xml.sax.handler.rst:92 msgid "" "true: Report all validation errors (implies external-general-entities and " "external-parameter-entities)." msgstr "" -#: library/xml.sax.handler.rst:87 +#: library/xml.sax.handler.rst:93 msgid "false: Do not report validation errors." msgstr "" -#: library/xml.sax.handler.rst:93 +#: library/xml.sax.handler.rst:99 msgid "value: ``\"http://xml.org/sax/features/external-general-entities\"``" msgstr "" -#: library/xml.sax.handler.rst:94 +#: library/xml.sax.handler.rst:100 msgid "true: Include all external general (text) entities." msgstr "" -#: library/xml.sax.handler.rst:95 +#: library/xml.sax.handler.rst:101 msgid "false: Do not include external general entities." msgstr "" -#: library/xml.sax.handler.rst:101 +#: library/xml.sax.handler.rst:107 msgid "value: ``\"http://xml.org/sax/features/external-parameter-entities\"``" msgstr "" -#: library/xml.sax.handler.rst:103 +#: library/xml.sax.handler.rst:109 msgid "" "true: Include all external parameter entities, including the external DTD " "subset." msgstr "" -#: library/xml.sax.handler.rst:105 +#: library/xml.sax.handler.rst:111 msgid "" "false: Do not include any external parameter entities, even the external DTD " "subset." msgstr "" -#: library/xml.sax.handler.rst:111 +#: library/xml.sax.handler.rst:117 msgid "List of all features." msgstr "" -#: library/xml.sax.handler.rst:116 +#: library/xml.sax.handler.rst:122 msgid "value: ``\"http://xml.org/sax/properties/lexical-handler\"``" msgstr "" -#: library/xml.sax.handler.rst:117 -msgid "data type: xml.sax.sax2lib.LexicalHandler (not supported in Python 2)" +#: library/xml.sax.handler.rst:123 +msgid "data type: xml.sax.handler.LexicalHandler (not supported in Python 2)" msgstr "" -#: library/xml.sax.handler.rst:119 +#: library/xml.sax.handler.rst:125 msgid "" "description: An optional extension handler for lexical events like comments." msgstr "" -#: library/xml.sax.handler.rst:120 library/xml.sax.handler.rst:129 +#: library/xml.sax.handler.rst:126 library/xml.sax.handler.rst:135 msgid "access: read/write" msgstr "" -#: library/xml.sax.handler.rst:125 +#: library/xml.sax.handler.rst:131 msgid "value: ``\"http://xml.org/sax/properties/declaration-handler\"``" msgstr "" -#: library/xml.sax.handler.rst:126 +#: library/xml.sax.handler.rst:132 msgid "data type: xml.sax.sax2lib.DeclHandler (not supported in Python 2)" msgstr "" -#: library/xml.sax.handler.rst:128 +#: library/xml.sax.handler.rst:134 msgid "" "description: An optional extension handler for DTD-related events other than " "notations and unparsed entities." msgstr "" -#: library/xml.sax.handler.rst:134 +#: library/xml.sax.handler.rst:140 msgid "value: ``\"http://xml.org/sax/properties/dom-node\"``" msgstr "" -#: library/xml.sax.handler.rst:135 +#: library/xml.sax.handler.rst:141 msgid "data type: org.w3c.dom.Node (not supported in Python 2)" msgstr "" -#: library/xml.sax.handler.rst:137 +#: library/xml.sax.handler.rst:143 msgid "" "description: When parsing, the current DOM node being visited if this is a " "DOM iterator; when not parsing, the root DOM node for iteration." msgstr "" -#: library/xml.sax.handler.rst:143 +#: library/xml.sax.handler.rst:149 msgid "value: ``\"http://xml.org/sax/properties/xml-string\"``" msgstr "" -#: library/xml.sax.handler.rst:144 +#: library/xml.sax.handler.rst:150 msgid "data type: String" msgstr "" -#: library/xml.sax.handler.rst:146 +#: library/xml.sax.handler.rst:152 msgid "" "description: The literal string of characters that was the source for the " "current event." msgstr "" -#: library/xml.sax.handler.rst:147 +#: library/xml.sax.handler.rst:153 msgid "access: read-only" msgstr "" -#: library/xml.sax.handler.rst:152 +#: library/xml.sax.handler.rst:158 msgid "List of all known property names." msgstr "" -#: library/xml.sax.handler.rst:158 +#: library/xml.sax.handler.rst:164 msgid "ContentHandler Objects" msgstr "" -#: library/xml.sax.handler.rst:160 +#: library/xml.sax.handler.rst:166 msgid "" "Users are expected to subclass :class:`ContentHandler` to support their " "application. The following methods are called by the parser on the " "appropriate events in the input document:" msgstr "" -#: library/xml.sax.handler.rst:167 +#: library/xml.sax.handler.rst:173 msgid "" "Called by the parser to give the application a locator for locating the " "origin of document events." msgstr "" -#: library/xml.sax.handler.rst:170 +#: library/xml.sax.handler.rst:176 msgid "" "SAX parsers are strongly encouraged (though not absolutely required) to " "supply a locator: if it does so, it must supply the locator to the " @@ -257,7 +265,7 @@ msgid "" "in the DocumentHandler interface." msgstr "" -#: library/xml.sax.handler.rst:175 +#: library/xml.sax.handler.rst:181 msgid "" "The locator allows the application to determine the end position of any " "document-related event, even if the parser is not reporting an error. " @@ -267,28 +275,28 @@ msgid "" "sufficient for use with a search engine." msgstr "" -#: library/xml.sax.handler.rst:182 +#: library/xml.sax.handler.rst:188 msgid "" "Note that the locator will return correct information only during the " "invocation of the events in this interface. The application should not " "attempt to use it at any other time." msgstr "" -#: library/xml.sax.handler.rst:189 +#: library/xml.sax.handler.rst:195 msgid "Receive notification of the beginning of a document." msgstr "" -#: library/xml.sax.handler.rst:191 +#: library/xml.sax.handler.rst:197 msgid "" "The SAX parser will invoke this method only once, before any other methods " "in this interface or in DTDHandler (except for :meth:`setDocumentLocator`)." msgstr "" -#: library/xml.sax.handler.rst:197 +#: library/xml.sax.handler.rst:203 msgid "Receive notification of the end of a document." msgstr "" -#: library/xml.sax.handler.rst:199 +#: library/xml.sax.handler.rst:205 msgid "" "The SAX parser will invoke this method only once, and it will be the last " "method invoked during the parse. The parser shall not invoke this method " @@ -296,11 +304,11 @@ msgid "" "reached the end of input." msgstr "" -#: library/xml.sax.handler.rst:207 +#: library/xml.sax.handler.rst:213 msgid "Begin the scope of a prefix-URI Namespace mapping." msgstr "" -#: library/xml.sax.handler.rst:209 +#: library/xml.sax.handler.rst:215 msgid "" "The information from this event is not necessary for normal Namespace " "processing: the SAX XML reader will automatically replace prefixes for " @@ -308,7 +316,7 @@ msgid "" "enabled (the default)." msgstr "" -#: library/xml.sax.handler.rst:214 +#: library/xml.sax.handler.rst:220 msgid "" "There are cases, however, when applications need to use prefixes in " "character data or in attribute values, where they cannot safely be expanded " @@ -317,7 +325,7 @@ msgid "" "contexts itself, if necessary." msgstr "" -#: library/xml.sax.handler.rst:222 +#: library/xml.sax.handler.rst:228 msgid "" "Note that :meth:`startPrefixMapping` and :meth:`endPrefixMapping` events are " "not guaranteed to be properly nested relative to each-other: all :meth:" @@ -327,22 +335,22 @@ msgid "" "guaranteed." msgstr "" -#: library/xml.sax.handler.rst:232 +#: library/xml.sax.handler.rst:238 msgid "End the scope of a prefix-URI mapping." msgstr "" -#: library/xml.sax.handler.rst:234 +#: library/xml.sax.handler.rst:240 msgid "" "See :meth:`startPrefixMapping` for details. This event will always occur " "after the corresponding :meth:`endElement` event, but the order of :meth:" "`endPrefixMapping` events is not otherwise guaranteed." msgstr "" -#: library/xml.sax.handler.rst:241 +#: library/xml.sax.handler.rst:247 msgid "Signals the start of an element in non-namespace mode." msgstr "" -#: library/xml.sax.handler.rst:243 +#: library/xml.sax.handler.rst:249 msgid "" "The *name* parameter contains the raw XML 1.0 name of the element type as a " "string and the *attrs* parameter holds an object of the :class:`~xml.sax." @@ -353,21 +361,21 @@ msgid "" "`copy` method of the *attrs* object." msgstr "" -#: library/xml.sax.handler.rst:255 +#: library/xml.sax.handler.rst:261 msgid "Signals the end of an element in non-namespace mode." msgstr "" -#: library/xml.sax.handler.rst:257 +#: library/xml.sax.handler.rst:263 msgid "" "The *name* parameter contains the name of the element type, just as with " "the :meth:`startElement` event." msgstr "" -#: library/xml.sax.handler.rst:263 +#: library/xml.sax.handler.rst:269 msgid "Signals the start of an element in namespace mode." msgstr "" -#: library/xml.sax.handler.rst:265 +#: library/xml.sax.handler.rst:271 msgid "" "The *name* parameter contains the name of the element type as a ``(uri, " "localname)`` tuple, the *qname* parameter contains the raw XML 1.0 name used " @@ -381,27 +389,27 @@ msgid "" "of the *attrs* object." msgstr "" -#: library/xml.sax.handler.rst:276 +#: library/xml.sax.handler.rst:282 msgid "" "Parsers may set the *qname* parameter to ``None``, unless the " "``feature_namespace_prefixes`` feature is activated." msgstr "" -#: library/xml.sax.handler.rst:282 +#: library/xml.sax.handler.rst:288 msgid "Signals the end of an element in namespace mode." msgstr "" -#: library/xml.sax.handler.rst:284 +#: library/xml.sax.handler.rst:290 msgid "" "The *name* parameter contains the name of the element type, just as with " "the :meth:`startElementNS` method, likewise the *qname* parameter." msgstr "" -#: library/xml.sax.handler.rst:290 +#: library/xml.sax.handler.rst:296 msgid "Receive notification of character data." msgstr "" -#: library/xml.sax.handler.rst:292 +#: library/xml.sax.handler.rst:298 msgid "" "The Parser will call this method to report each chunk of character data. SAX " "parsers may return all contiguous character data in a single chunk, or they " @@ -410,13 +418,13 @@ msgid "" "provides useful information." msgstr "" -#: library/xml.sax.handler.rst:298 +#: library/xml.sax.handler.rst:304 msgid "" "*content* may be a string or bytes instance; the ``expat`` reader module " "always produces strings." msgstr "" -#: library/xml.sax.handler.rst:303 +#: library/xml.sax.handler.rst:309 msgid "" "The earlier SAX 1 interface provided by the Python XML Special Interest " "Group used a more Java-like interface for this method. Since most parsers " @@ -426,11 +434,11 @@ msgid "" "and *length* parameters." msgstr "" -#: library/xml.sax.handler.rst:312 +#: library/xml.sax.handler.rst:318 msgid "Receive notification of ignorable whitespace in element content." msgstr "" -#: library/xml.sax.handler.rst:314 +#: library/xml.sax.handler.rst:320 msgid "" "Validating Parsers must use this method to report each chunk of ignorable " "whitespace (see the W3C XML 1.0 recommendation, section 2.10): non-" @@ -438,7 +446,7 @@ msgid "" "and using content models." msgstr "" -#: library/xml.sax.handler.rst:319 +#: library/xml.sax.handler.rst:325 msgid "" "SAX parsers may return all contiguous whitespace in a single chunk, or they " "may split it into several chunks; however, all of the characters in any " @@ -446,28 +454,28 @@ msgid "" "provides useful information." msgstr "" -#: library/xml.sax.handler.rst:327 +#: library/xml.sax.handler.rst:333 msgid "Receive notification of a processing instruction." msgstr "" -#: library/xml.sax.handler.rst:329 +#: library/xml.sax.handler.rst:335 msgid "" "The Parser will invoke this method once for each processing instruction " "found: note that processing instructions may occur before or after the main " "document element." msgstr "" -#: library/xml.sax.handler.rst:333 +#: library/xml.sax.handler.rst:339 msgid "" "A SAX parser should never report an XML declaration (XML 1.0, section 2.8) " "or a text declaration (XML 1.0, section 4.3.1) using this method." msgstr "" -#: library/xml.sax.handler.rst:339 +#: library/xml.sax.handler.rst:345 msgid "Receive notification of a skipped entity." msgstr "" -#: library/xml.sax.handler.rst:341 +#: library/xml.sax.handler.rst:347 msgid "" "The Parser will invoke this method once for each entity skipped. Non-" "validating processors may skip entities if they have not seen the " @@ -477,38 +485,38 @@ msgid "" "properties." msgstr "" -#: library/xml.sax.handler.rst:351 +#: library/xml.sax.handler.rst:357 msgid "DTDHandler Objects" msgstr "" -#: library/xml.sax.handler.rst:353 +#: library/xml.sax.handler.rst:359 msgid ":class:`DTDHandler` instances provide the following methods:" msgstr "" -#: library/xml.sax.handler.rst:358 +#: library/xml.sax.handler.rst:364 msgid "Handle a notation declaration event." msgstr "" -#: library/xml.sax.handler.rst:363 +#: library/xml.sax.handler.rst:369 msgid "Handle an unparsed entity declaration event." msgstr "" -#: library/xml.sax.handler.rst:369 +#: library/xml.sax.handler.rst:375 msgid "EntityResolver Objects" msgstr "" -#: library/xml.sax.handler.rst:374 +#: library/xml.sax.handler.rst:380 msgid "" "Resolve the system identifier of an entity and return either the system " "identifier to read from as a string, or an InputSource to read from. The " "default implementation returns *systemId*." msgstr "" -#: library/xml.sax.handler.rst:382 +#: library/xml.sax.handler.rst:388 msgid "ErrorHandler Objects" msgstr "" -#: library/xml.sax.handler.rst:384 +#: library/xml.sax.handler.rst:390 msgid "" "Objects with this interface are used to receive error and warning " "information from the :class:`~xml.sax.xmlreader.XMLReader`. If you create " @@ -521,7 +529,7 @@ msgid "" "in exception object." msgstr "" -#: library/xml.sax.handler.rst:397 +#: library/xml.sax.handler.rst:403 msgid "" "Called when the parser encounters a recoverable error. If this method does " "not raise an exception, parsing may continue, but further document " @@ -530,16 +538,69 @@ msgid "" "document." msgstr "" -#: library/xml.sax.handler.rst:405 +#: library/xml.sax.handler.rst:411 msgid "" "Called when the parser encounters an error it cannot recover from; parsing " "is expected to terminate when this method returns." msgstr "" -#: library/xml.sax.handler.rst:411 +#: library/xml.sax.handler.rst:417 msgid "" "Called when the parser presents minor warning information to the " "application. Parsing is expected to continue when this method returns, and " "document information will continue to be passed to the application. Raising " "an exception in this method will cause parsing to end." msgstr "" + +#: library/xml.sax.handler.rst:426 +msgid "LexicalHandler Objects" +msgstr "" + +#: library/xml.sax.handler.rst:427 +msgid "Optional SAX2 handler for lexical events." +msgstr "" + +#: library/xml.sax.handler.rst:429 +msgid "" +"This handler is used to obtain lexical information about an XML document. " +"Lexical information includes information describing the document encoding " +"used and XML comments embedded in the document, as well as section " +"boundaries for the DTD and for any CDATA sections. The lexical handlers are " +"used in the same manner as content handlers." +msgstr "" + +#: library/xml.sax.handler.rst:435 +msgid "" +"Set the LexicalHandler of an XMLReader by using the setProperty method with " +"the property identifier ``'http://xml.org/sax/properties/lexical-handler'``." +msgstr "" + +#: library/xml.sax.handler.rst:442 +msgid "" +"Reports a comment anywhere in the document (including the DTD and outside " +"the document element)." +msgstr "" + +#: library/xml.sax.handler.rst:447 +msgid "" +"Reports the start of the DTD declarations if the document has an associated " +"DTD." +msgstr "" + +#: library/xml.sax.handler.rst:452 +msgid "Reports the end of DTD declaration." +msgstr "" + +#: library/xml.sax.handler.rst:456 +msgid "Reports the start of a CDATA marked section." +msgstr "" + +#: library/xml.sax.handler.rst:458 +msgid "" +"The contents of the CDATA marked section will be reported through the " +"characters handler." +msgstr "" + +#: library/xml.sax.handler.rst:463 +msgid "Reports the end of a CDATA marked section." +msgstr "" diff --git a/library/xmlrpc.client.po b/library/xmlrpc.client.po index f6bc58443..ff27327cb 100644 --- a/library/xmlrpc.client.po +++ b/library/xmlrpc.client.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -471,7 +471,7 @@ msgid "" msgstr "" #: library/xmlrpc.client.rst:381 -msgid "A string indicating the fault type." +msgid "An int indicating the fault type." msgstr "" #: library/xmlrpc.client.rst:386 diff --git a/library/zipfile.po b/library/zipfile.po index eb2df01d6..dcb355af5 100644 --- a/library/zipfile.po +++ b/library/zipfile.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-04-27 11:30+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -114,7 +114,7 @@ msgstr "" "décrivant la date de dernière modification du fichier ; les champs sont " "décrits dans la section :ref:`zipinfo-objects`." -#: library/zipfile.rst:84 +#: library/zipfile.rst:83 msgid "" "Returns ``True`` if *filename* is a valid ZIP file based on its magic " "number, otherwise returns ``False``. *filename* may be a file or file-like " @@ -124,15 +124,15 @@ msgstr "" "nombre magique, sinon retourne ``False``. *filename* peut aussi être un " "fichier ou un objet fichier-compatible." -#: library/zipfile.rst:87 +#: library/zipfile.rst:86 msgid "Support for file and file-like objects." msgstr "Gestion des objets fichier et fichier-compatibles." -#: library/zipfile.rst:93 +#: library/zipfile.rst:92 msgid "The numeric constant for an uncompressed archive member." msgstr "Constante numérique pour un membre d'une archive décompressée." -#: library/zipfile.rst:98 +#: library/zipfile.rst:97 msgid "" "The numeric constant for the usual ZIP compression method. This requires " "the :mod:`zlib` module." @@ -140,7 +140,7 @@ msgstr "" "Constante numérique pour la méthode habituelle de compression de ZIP. " "Nécessite le module :mod:`zlib`." -#: library/zipfile.rst:104 +#: library/zipfile.rst:103 msgid "" "The numeric constant for the BZIP2 compression method. This requires the :" "mod:`bz2` module." @@ -148,7 +148,7 @@ msgstr "" "Constante numérique pour la méthode de compressions BZIP2. Nécessite le " "module :mod:`bz2`." -#: library/zipfile.rst:111 +#: library/zipfile.rst:110 msgid "" "The numeric constant for the LZMA compression method. This requires the :" "mod:`lzma` module." @@ -156,7 +156,7 @@ msgstr "" "Constante numérique pour la méthode de compressions LZMA. Nécessite le " "module :mod:`lzma`." -#: library/zipfile.rst:118 +#: library/zipfile.rst:117 msgid "" "The ZIP file format specification has included support for bzip2 compression " "since 2001, and for LZMA compression since 2006. However, some tools " @@ -170,11 +170,11 @@ msgstr "" "compression et peuvent soit totalement refuser de traiter le fichier ZIP " "soit ne pas extraire certains fichiers." -#: library/zipfile.rst:129 +#: library/zipfile.rst:128 msgid "`PKZIP Application Note`_" msgstr "`PKZIP Application Note`_" -#: library/zipfile.rst:128 +#: library/zipfile.rst:127 msgid "" "Documentation on the ZIP file format by Phil Katz, the creator of the format " "and algorithms used." @@ -182,11 +182,11 @@ msgstr "" "Documentation sur le format de fichier ZIP par Phil Katz, créateur du format " "et des algorithmes utilisés." -#: library/zipfile.rst:132 +#: library/zipfile.rst:131 msgid "`Info-ZIP Home Page `_" msgstr "`Info-ZIP Home Page `_" -#: library/zipfile.rst:132 +#: library/zipfile.rst:131 msgid "" "Information about the Info-ZIP project's ZIP archive programs and " "development libraries." @@ -194,11 +194,11 @@ msgstr "" "Informations sur les programmes et les bibliothèques de développement " "d'archivage ZIP du projet Info-ZIP." -#: library/zipfile.rst:139 +#: library/zipfile.rst:138 msgid "ZipFile Objects" msgstr "Objets ZipFile" -#: library/zipfile.rst:145 +#: library/zipfile.rst:144 msgid "" "Open a ZIP file, where *file* can be a path to a file (a string), a file-" "like object or a :term:`path-like object`." @@ -207,7 +207,7 @@ msgstr "" "chaîne de caractères), un objet fichier-compatible ou un objet chemin-" "compatible :term:`path-like object`." -#: library/zipfile.rst:148 +#: library/zipfile.rst:147 msgid "" "The *mode* parameter should be ``'r'`` to read an existing file, ``'w'`` to " "truncate and write a new file, ``'a'`` to append to an existing file, or " @@ -232,7 +232,7 @@ msgstr "" "exemple :file:`python.exe`). Si *mode* est à ``r`` ou ``a``, le fichier doit " "être navigable." -#: library/zipfile.rst:160 +#: library/zipfile.rst:159 msgid "" "*compression* is the ZIP compression method to use when writing the archive, " "and should be :const:`ZIP_STORED`, :const:`ZIP_DEFLATED`, :const:`ZIP_BZIP2` " @@ -251,7 +251,7 @@ msgstr "" "disponible, une exception :exc:`RuntimeError` est levée. Est défini par " "défaut à :const:`ZIP_STORED`." -#: library/zipfile.rst:168 +#: library/zipfile.rst:167 msgid "" "If *allowZip64* is ``True`` (the default) zipfile will create ZIP files that " "use the ZIP64 extensions when the zipfile is larger than 4 GiB. If it is " @@ -263,7 +263,7 @@ msgstr "" "S'il est à ``False``, :mod:`zipfile` lève une exception quand le fichier ZIP " "nécessiterait les extensions ZIP64." -#: library/zipfile.rst:173 +#: library/zipfile.rst:172 msgid "" "The *compresslevel* parameter controls the compression level to use when " "writing files to the archive. When using :const:`ZIP_STORED` or :const:" @@ -280,7 +280,7 @@ msgstr "" "de ``1``à ``9`` sont acceptés (voir :class:`bz2 ` pour plus " "d'informations)." -#: library/zipfile.rst:636 +#: library/zipfile.rst:653 msgid "" "The *strict_timestamps* argument, when set to ``False``, allows to zip files " "older than 1980-01-01 at the cost of setting the timestamp to 1980-01-01. " @@ -292,7 +292,7 @@ msgstr "" "du 1er janvier 1980. De même pour les fichiers datés d'après le 31 décembre " "2107 qui voient leur horodatage fixé au 31 décembre 2107." -#: library/zipfile.rst:187 +#: library/zipfile.rst:186 msgid "" "If the file is created with mode ``'w'``, ``'x'`` or ``'a'`` and then :meth:" "`closed ` without adding any files to the archive, the appropriate " @@ -302,7 +302,7 @@ msgstr "" "meth:`fermé ` sans ajouter de fichiers à l'archive, la structure " "appropriée pour un fichier archive ZIP vide sera écrite dans le fichier." -#: library/zipfile.rst:191 +#: library/zipfile.rst:190 msgid "" "ZipFile is also a context manager and therefore supports the :keyword:`with` " "statement. In the example, *myzip* is closed after the :keyword:`!with` " @@ -312,22 +312,22 @@ msgstr "" "déclaration :keyword:`with`. Dans l'exemple, *myzip* est fermé à la fin de " "la déclaration :keyword:`!with` --- même si une exception est levée ::" -#: library/zipfile.rst:198 +#: library/zipfile.rst:197 msgid "Added the ability to use :class:`ZipFile` as a context manager." msgstr "" "Ajout de la possibilité d'utiliser :class:`ZipFile` comme un gestionnaire de " "contexte." -#: library/zipfile.rst:201 +#: library/zipfile.rst:200 msgid "Added support for :mod:`bzip2 ` and :mod:`lzma` compression." msgstr "" "Ajout de la gestion de la compression :mod:`bzip2 ` et :mod:`lzma`." -#: library/zipfile.rst:550 +#: library/zipfile.rst:567 msgid "ZIP64 extensions are enabled by default." msgstr "Les extensions ZIP64 sont activées par défaut." -#: library/zipfile.rst:207 +#: library/zipfile.rst:206 msgid "" "Added support for writing to unseekable streams. Added support for the " "``'x'`` mode." @@ -335,7 +335,7 @@ msgstr "" "Ajout de la gestion de l'écriture dans des flux non navigables. Ajout de la " "gestion du mode ``x``." -#: library/zipfile.rst:211 +#: library/zipfile.rst:210 msgid "" "Previously, a plain :exc:`RuntimeError` was raised for unrecognized " "compression values." @@ -343,21 +343,21 @@ msgstr "" "Auparavant, une simple exception :exc:`RuntimeError` était levée pour des " "valeurs de compression non reconnues." -#: library/zipfile.rst:215 +#: library/zipfile.rst:214 msgid "The *file* parameter accepts a :term:`path-like object`." msgstr "" "Le paramètre *file* accepte un objet fichier-compatible :term:`path-like " "object`." -#: library/zipfile.rst:218 +#: library/zipfile.rst:217 msgid "Add the *compresslevel* parameter." msgstr "Ajout du paramètre *compresslevel*." -#: library/zipfile.rst:647 +#: library/zipfile.rst:664 msgid "The *strict_timestamps* keyword-only argument" msgstr "l'argument nommé *strict_timestamps*" -#: library/zipfile.rst:227 +#: library/zipfile.rst:226 msgid "" "Close the archive file. You must call :meth:`close` before exiting your " "program or essential records will not be written." @@ -365,7 +365,7 @@ msgstr "" "Ferme l'archive. Vous devez appeler :meth:`close` avant de terminer votre " "programme ou des informations essentielles n'y seront pas enregistrées." -#: library/zipfile.rst:233 +#: library/zipfile.rst:232 msgid "" "Return a :class:`ZipInfo` object with information about the archive member " "*name*. Calling :meth:`getinfo` for a name not currently contained in the " @@ -375,7 +375,7 @@ msgstr "" "l'archive. Appeler :meth:`getinfo` pour un nom non contenu dans l'archive " "lève une exception :exc:`KeyError`." -#: library/zipfile.rst:240 +#: library/zipfile.rst:239 msgid "" "Return a list containing a :class:`ZipInfo` object for each member of the " "archive. The objects are in the same order as their entries in the actual " @@ -385,11 +385,11 @@ msgstr "" "l'archive. Les objets ont le même ordre que leurs entrées dans le fichier " "ZIP présent sur disque s'il s'agissait d'une archive préexistante." -#: library/zipfile.rst:247 +#: library/zipfile.rst:246 msgid "Return a list of archive members by name." msgstr "Retourne une liste des membres de l'archive indexés par leur nom." -#: library/zipfile.rst:252 +#: library/zipfile.rst:251 msgid "" "Access a member of the archive as a binary file-like object. *name* can be " "either the name of a file within the archive or a :class:`ZipInfo` object. " @@ -402,7 +402,7 @@ msgstr "" "``'r'`` (valeur par défaut) ou ``'w'``. *pwd* est le mot de passe utilisé " "pour déchiffrer des fichiers ZIP chiffrés." -#: library/zipfile.rst:257 +#: library/zipfile.rst:256 msgid "" ":meth:`~ZipFile.open` is also a context manager and therefore supports the :" "keyword:`with` statement::" @@ -410,7 +410,7 @@ msgstr "" ":meth:`~ZipFile.open` est aussi un gestionnaire de contexte et gère ainsi la " "déclaration :keyword:`with` ::" -#: library/zipfile.rst:264 +#: library/zipfile.rst:263 msgid "" "With *mode* ``'r'`` the file-like object (``ZipExtFile``) is read-only and " "provides the following methods: :meth:`~io.BufferedIOBase.read`, :meth:`~io." @@ -424,7 +424,7 @@ msgstr "" "IOBase.seek`, :meth:`~io.IOBase.tell`, :meth:`__iter__`, et :meth:`~iterator." "__next__`. Ces objets opèrent indépendamment du fichier ZIP *ZipFile*." -#: library/zipfile.rst:271 +#: library/zipfile.rst:270 msgid "" "With ``mode='w'``, a writable file handle is returned, which supports the :" "meth:`~io.BufferedIOBase.write` method. While a writable file handle is " @@ -436,7 +436,7 @@ msgstr "" "fichier inscriptible est ouvert, tenter de lire ou écrire d'autres fichiers " "dans le fichier ZIP lève une exception :exc:`ValueError`." -#: library/zipfile.rst:276 +#: library/zipfile.rst:275 msgid "" "When writing a file, if the file size is not known in advance but may exceed " "2 GiB, pass ``force_zip64=True`` to ensure that the header format is capable " @@ -451,7 +451,7 @@ msgstr "" "objet :class:`ZipInfo` avec l'attribut :attr:`~ZipInfo.file_size` défini et " "utilisez-le en tant que paramètre *name*." -#: library/zipfile.rst:284 +#: library/zipfile.rst:283 msgid "" "The :meth:`.open`, :meth:`read` and :meth:`extract` methods can take a " "filename or a :class:`ZipInfo` object. You will appreciate this when trying " @@ -462,7 +462,7 @@ msgstr "" "lorsqu'on essaie de lire un fichier ZIP qui contient des membres avec des " "noms en double." -#: library/zipfile.rst:288 +#: library/zipfile.rst:287 msgid "" "Removed support of ``mode='U'``. Use :class:`io.TextIOWrapper` for reading " "compressed text files in :term:`universal newlines` mode." @@ -471,7 +471,7 @@ msgstr "" "TextIOWrapper` pour lire des fichiers texte compressés en mode :term:" "`universal newlines`." -#: library/zipfile.rst:292 +#: library/zipfile.rst:291 msgid "" ":meth:`open` can now be used to write files into the archive with the " "``mode='w'`` option." @@ -479,7 +479,7 @@ msgstr "" "La méthode :meth:`open` peut désormais être utilisée pour écrire des " "fichiers dans l'archive avec l'option ``mode='w'``." -#: library/zipfile.rst:296 +#: library/zipfile.rst:295 msgid "" "Calling :meth:`.open` on a closed ZipFile will raise a :exc:`ValueError`. " "Previously, a :exc:`RuntimeError` was raised." @@ -487,7 +487,7 @@ msgstr "" "Appeler :meth:`.open` sur un fichier ZipFile fermé lève une erreur :exc:" "`ValueError`. Précédemment, une erreur :exc:`RuntimeError` était levée." -#: library/zipfile.rst:303 +#: library/zipfile.rst:302 msgid "" "Extract a member from the archive to the current working directory; *member* " "must be its full name or a :class:`ZipInfo` object. Its file information is " @@ -502,11 +502,11 @@ msgstr "" "class:`ZipInfo`. *pwd* est le mot de passe utilisé pour les fichiers " "chiffrés." -#: library/zipfile.rst:309 +#: library/zipfile.rst:308 msgid "Returns the normalized path created (a directory or new file)." msgstr "Retourne le chemin normalisé créé (un dossier ou un nouveau fichier)." -#: library/zipfile.rst:313 +#: library/zipfile.rst:312 msgid "" "If a member filename is an absolute path, a drive/UNC sharepoint and leading " "(back)slashes will be stripped, e.g.: ``///foo/bar`` becomes ``foo/bar`` on " @@ -524,7 +524,7 @@ msgstr "" "``foo../ba..r``. Sous Windows les caractères illégaux (``:``, ``<``, ``>``, " "``|``, ``\"``, ``?`` et ``*``) sont remplacés par un *underscore* (``_``)." -#: library/zipfile.rst:321 +#: library/zipfile.rst:320 msgid "" "Calling :meth:`extract` on a closed ZipFile will raise a :exc:`ValueError`. " "Previously, a :exc:`RuntimeError` was raised." @@ -532,13 +532,13 @@ msgstr "" "Appeler :meth:`.extract` sur un fichier ZipFile fermé lève une erreur :exc:" "`ValueError`. Précédemment, une erreur :exc:`RuntimeError` était levée." -#: library/zipfile.rst:348 +#: library/zipfile.rst:347 msgid "The *path* parameter accepts a :term:`path-like object`." msgstr "" "Le paramètre *path* accepte un objet chemin-compatible :term:`path-like " "object`." -#: library/zipfile.rst:331 +#: library/zipfile.rst:330 msgid "" "Extract all members from the archive to the current working directory. " "*path* specifies a different directory to extract to. *members* is optional " @@ -550,7 +550,7 @@ msgstr "" "doit être un sous-ensemble de la liste retournée par :meth:`namelist`. *pwd* " "est le mot de passe utilisé pour les fichiers chiffrés." -#: library/zipfile.rst:338 +#: library/zipfile.rst:337 msgid "" "Never extract archives from untrusted sources without prior inspection. It " "is possible that files are created outside of *path*, e.g. members that have " @@ -563,7 +563,7 @@ msgstr "" "commençant par ``\"/\"`` ou des noms de fichier avec deux points ``\".." "\"``. Ce module essaie de prévenir ceci. Voir la note de :meth:`extract`." -#: library/zipfile.rst:344 +#: library/zipfile.rst:343 msgid "" "Calling :meth:`extractall` on a closed ZipFile will raise a :exc:" "`ValueError`. Previously, a :exc:`RuntimeError` was raised." @@ -571,17 +571,17 @@ msgstr "" "Appeler :meth:`.extractall` sur un fichier ZipFile fermé lève une erreur :" "exc:`ValueError`. Précédemment, une erreur :exc:`RuntimeError` était levée." -#: library/zipfile.rst:354 +#: library/zipfile.rst:353 msgid "Print a table of contents for the archive to ``sys.stdout``." msgstr "Affiche la liste des contenus de l'archive sur ``sys.stdout``." -#: library/zipfile.rst:359 +#: library/zipfile.rst:358 msgid "Set *pwd* as default password to extract encrypted files." msgstr "" "Définit *pwd* comme mot de passe par défait pour extraire des fichiers " "chiffrés." -#: library/zipfile.rst:364 +#: library/zipfile.rst:363 msgid "" "Return the bytes of the file *name* in the archive. *name* is the name of " "the file in the archive, or a :class:`ZipInfo` object. The archive must be " @@ -603,7 +603,7 @@ msgstr "" "lève une erreur :exc:`NotImplementedError`. Une erreur est également levée " "si le module de compression n'est pas disponible." -#: library/zipfile.rst:373 +#: library/zipfile.rst:372 msgid "" "Calling :meth:`read` on a closed ZipFile will raise a :exc:`ValueError`. " "Previously, a :exc:`RuntimeError` was raised." @@ -611,7 +611,7 @@ msgstr "" "Appeler :meth:`.read` sur un fichier ZipFile fermé lève une erreur :exc:" "`ValueError`. Précédemment, une erreur :exc:`RuntimeError` était levée." -#: library/zipfile.rst:380 +#: library/zipfile.rst:379 msgid "" "Read all the files in the archive and check their CRC's and file headers. " "Return the name of the first bad file, or else return ``None``." @@ -619,7 +619,7 @@ msgstr "" "Lit tous les fichiers de l'archive et vérifie leurs sommes CRC et leurs en-" "têtes. Retourne le nom du premier fichier mauvais ou retourne ``None`` sinon." -#: library/zipfile.rst:383 +#: library/zipfile.rst:382 msgid "" "Calling :meth:`testzip` on a closed ZipFile will raise a :exc:`ValueError`. " "Previously, a :exc:`RuntimeError` was raised." @@ -627,7 +627,7 @@ msgstr "" "Appeler :meth:`testzip` sur un fichier ZipFile fermé lève une erreur :exc:" "`ValueError`. Précédemment, une erreur :exc:`RuntimeError` était levée." -#: library/zipfile.rst:391 +#: library/zipfile.rst:390 msgid "" "Write the file named *filename* to the archive, giving it the archive name " "*arcname* (by default, this will be the same as *filename*, but without a " @@ -645,7 +645,7 @@ msgstr "" "manière, *compression* écrase le constructeur si donné. L'archive doit être " "ouverte avec le mode ``'w'``, ``'x'`` ou ``'a'``." -#: library/zipfile.rst:401 +#: library/zipfile.rst:400 msgid "" "Archive names should be relative to the archive root, that is, they should " "not start with a path separator." @@ -653,7 +653,7 @@ msgstr "" "Les noms d'archive doivent être relatifs à la racine de l'archive, c'est-à-" "dire qu'ils ne doivent pas commencer par un séparateur de chemin." -#: library/zipfile.rst:406 +#: library/zipfile.rst:405 msgid "" "If ``arcname`` (or ``filename``, if ``arcname`` is not given) contains a " "null byte, the name of the file in the archive will be truncated at the null " @@ -662,7 +662,13 @@ msgstr "" "Si ``arcname`` (ou ``filename`` si ``arcname`` n'est pas donné) contient un " "octet nul, le nom du fichier dans l'archive sera tronqué à l'octet nul." -#: library/zipfile.rst:409 +#: library/zipfile.rst:410 +msgid "" +"A leading slash in the filename may lead to the archive being impossible to " +"open in some zip programs on Windows systems." +msgstr "" + +#: library/zipfile.rst:413 msgid "" "Calling :meth:`write` on a ZipFile created with mode ``'r'`` or a closed " "ZipFile will raise a :exc:`ValueError`. Previously, a :exc:`RuntimeError` " @@ -671,7 +677,7 @@ msgstr "" "Appeler :meth:`.write` sur un fichier ZipFile fermé lève une erreur :exc:" "`ValueError`. Précédemment, une erreur :exc:`RuntimeError` était levée." -#: library/zipfile.rst:418 +#: library/zipfile.rst:422 msgid "" "Write a file into the archive. The contents is *data*, which may be either " "a :class:`str` or a :class:`bytes` instance; if it is a :class:`str`, it is " @@ -690,7 +696,7 @@ msgstr "" "date et l'heure sont définies sur la date et l'heure actuelles. L'archive " "doit être ouverte avec le mode ``'w'``, ``'x'`` ou ``'a'``." -#: library/zipfile.rst:426 +#: library/zipfile.rst:430 msgid "" "If given, *compress_type* overrides the value given for the *compression* " "parameter to the constructor for the new entry, or in the *zinfo_or_arcname* " @@ -702,7 +708,7 @@ msgstr "" "*zinfo_or_arcname* (si c'est une instance de :class:`ZipInfo`). De la même " "manière, *compresslevel* le constructeur si donné." -#: library/zipfile.rst:433 +#: library/zipfile.rst:437 msgid "" "When passing a :class:`ZipInfo` instance as the *zinfo_or_arcname* " "parameter, the compression method used will be that specified in the " @@ -715,11 +721,11 @@ msgstr "" "défaut, le constructeur de la classe :class:`ZipInfo` définit ce membre à :" "const:`ZIP_STORED`." -#: library/zipfile.rst:438 +#: library/zipfile.rst:442 msgid "The *compress_type* argument." msgstr "L'argument *compress_type*." -#: library/zipfile.rst:441 +#: library/zipfile.rst:445 msgid "" "Calling :meth:`writestr` on a ZipFile created with mode ``'r'`` or a closed " "ZipFile will raise a :exc:`ValueError`. Previously, a :exc:`RuntimeError` " @@ -728,15 +734,15 @@ msgstr "" "Appeler :meth:`.writestr` sur un fichier ZipFile fermé lève une erreur :exc:" "`ValueError`. Précédemment, une erreur :exc:`RuntimeError` était levée." -#: library/zipfile.rst:447 +#: library/zipfile.rst:451 msgid "The following data attributes are also available:" msgstr "Les attributs suivants sont aussi disponibles :" -#: library/zipfile.rst:451 +#: library/zipfile.rst:455 msgid "Name of the ZIP file." msgstr "Nom du fichier ZIP." -#: library/zipfile.rst:455 +#: library/zipfile.rst:459 msgid "" "The level of debug output to use. This may be set from ``0`` (the default, " "no output) to ``3`` (the most output). Debugging information is written to " @@ -746,7 +752,7 @@ msgstr "" "défaut, pas d'affichage) à ``3`` (affichage le plus bavard). Les " "informations de débogage sont affichées sur ``sys.stdout``." -#: library/zipfile.rst:461 +#: library/zipfile.rst:465 msgid "" "The comment associated with the ZIP file as a :class:`bytes` object. If " "assigning a comment to a :class:`ZipFile` instance created with mode " @@ -758,11 +764,11 @@ msgstr "" "le mode ``'w'``, ``'x'`` ou ``'a'``, il ne doit pas dépasser 65535 octets. " "Les commentaires plus longs que cette taille seront tronqués." -#: library/zipfile.rst:471 +#: library/zipfile.rst:475 msgid "Path Objects" msgstr "Objets *Path*" -#: library/zipfile.rst:475 +#: library/zipfile.rst:479 msgid "" "Construct a Path object from a ``root`` zipfile (which may be a :class:" "`ZipFile` instance or ``file`` suitable for passing to the :class:`ZipFile` " @@ -772,7 +778,7 @@ msgstr "" "instance de :class:`ZipFile` ou tout ce qui sera accepté par le paramètre " "*file* du constructeur de :class:`ZipFile`)." -#: library/zipfile.rst:479 +#: library/zipfile.rst:483 msgid "" "``at`` specifies the location of this Path within the zipfile, e.g. 'dir/" "file.txt', 'dir/', or ''. Defaults to the empty string, indicating the root." @@ -781,23 +787,24 @@ msgstr "" "\"dir/file.txt\"``, ``\"dir/\"``, ou ``\"\"``. Par défaut c'est une chaine " "vide, indiquant la racine de l'archive." -#: library/zipfile.rst:483 +#: library/zipfile.rst:487 msgid "" "Path objects expose the following features of :mod:`pathlib.Path` objects:" msgstr "" "Les objets ``Path`` de ``zipfile`` exposent les fonctionnalités suivantes " "des objets de :mod:`pathlib.Path` :" -#: library/zipfile.rst:486 -msgid "Path objects are traversable using the ``/`` operator." +#: library/zipfile.rst:490 +#, fuzzy +msgid "Path objects are traversable using the ``/`` operator or ``joinpath``." msgstr "" "On peut naviguer dans les objets ``Path`` en utilisant l'opérateur ``/``." -#: library/zipfile.rst:490 +#: library/zipfile.rst:494 msgid "The final path component." msgstr "Le dernier segment du chemin." -#: library/zipfile.rst:494 +#: library/zipfile.rst:498 msgid "" "Invoke :meth:`ZipFile.open` on the current path. Allows opening for read or " "write, text or binary through supported modes: 'r', 'w', 'rb', 'wb'. " @@ -812,26 +819,26 @@ msgstr "" "texte, ils sont ignorés autrement. ``pwd`` est le paramètre ``pwd`` de :meth:" "`ZipFile.open`." -#: library/zipfile.rst:503 +#: library/zipfile.rst:507 msgid "" "Added support for text and binary modes for open. Default mode is now text." msgstr "" "prise en charge des modes texte et binaire pour ``open``. Le mode texte est " "maintenant le mode par défaut." -#: library/zipfile.rst:509 +#: library/zipfile.rst:513 msgid "Enumerate the children of the current directory." msgstr "Énumère le contenu du dossier actuel." -#: library/zipfile.rst:513 +#: library/zipfile.rst:517 msgid "Return ``True`` if the current context references a directory." msgstr "Renvoie ``True`` si ce chemin pointe sur un dossier." -#: library/zipfile.rst:517 +#: library/zipfile.rst:521 msgid "Return ``True`` if the current context references a file." msgstr "Renvoie ``True`` si ce chemin pointe sur un fichier." -#: library/zipfile.rst:521 +#: library/zipfile.rst:525 msgid "" "Return ``True`` if the current context references a file or directory in the " "zip file." @@ -839,7 +846,7 @@ msgstr "" "Renvoie ``True`` si le chemin pointe sur un fichier ou un dossier de " "l'archive ZIP" -#: library/zipfile.rst:526 +#: library/zipfile.rst:530 msgid "" "Read the current file as unicode text. Positional and keyword arguments are " "passed through to :class:`io.TextIOWrapper` (except ``buffer``, which is " @@ -849,15 +856,27 @@ msgstr "" "passés à :class:`io.TextIOWrapper` (sauf ``buffer``, qui est imposé par le " "contexte)" -#: library/zipfile.rst:533 +#: library/zipfile.rst:537 msgid "Read the current file as bytes." msgstr "Lit le fichier en mode binaire, renvoyant un objet *bytes*." -#: library/zipfile.rst:539 +#: library/zipfile.rst:541 +msgid "" +"Return a new Path object with each of the *other* arguments joined. The " +"following are equivalent::" +msgstr "" + +#: library/zipfile.rst:548 +msgid "" +"Prior to 3.10, ``joinpath`` was undocumented and accepted exactly one " +"parameter." +msgstr "" + +#: library/zipfile.rst:556 msgid "PyZipFile Objects" msgstr "Objets *PyZipFile*" -#: library/zipfile.rst:541 +#: library/zipfile.rst:558 msgid "" "The :class:`PyZipFile` constructor takes the same parameters as the :class:" "`ZipFile` constructor, and one additional parameter, *optimize*." @@ -865,18 +884,18 @@ msgstr "" "Le constructeur de :class:`PyZipFile` prend les mêmes paramètres que le " "constructeur de :class:`ZipFile` avec un paramètre additionnel *optimize*." -#: library/zipfile.rst:547 +#: library/zipfile.rst:564 msgid "The *optimize* parameter." msgstr "Le paramètre *optimize*." -#: library/zipfile.rst:553 +#: library/zipfile.rst:570 msgid "" "Instances have one method in addition to those of :class:`ZipFile` objects:" msgstr "" "Les instances ont une méthode supplémentaire par rapport aux objets :class:" "`ZipFile` :" -#: library/zipfile.rst:557 +#: library/zipfile.rst:574 msgid "" "Search for files :file:`\\*.py` and add the corresponding file to the " "archive." @@ -884,7 +903,7 @@ msgstr "" "Cherche les fichiers :file:`\\*.py` et ajoute le fichier correspondant à " "l'archive." -#: library/zipfile.rst:560 +#: library/zipfile.rst:577 msgid "" "If the *optimize* parameter to :class:`PyZipFile` was not given or ``-1``, " "the corresponding file is a :file:`\\*.pyc` file, compiling if necessary." @@ -893,7 +912,7 @@ msgstr "" "donné ou est à ``-1``, le fichier correspondant est un fichier :file:`\\*." "pyc`, à compiler si nécessaire." -#: library/zipfile.rst:563 +#: library/zipfile.rst:580 msgid "" "If the *optimize* parameter to :class:`PyZipFile` was ``0``, ``1`` or ``2``, " "only files with that optimization level (see :func:`compile`) are added to " @@ -903,7 +922,7 @@ msgstr "" "``0``, ``1`` ou ``2``, ne sont ajoutés dans l'archive que les fichiers avec " "ce niveau d'optimisation (voir :func:`compile`), à compiler si nécessaire." -#: library/zipfile.rst:567 +#: library/zipfile.rst:584 msgid "" "If *pathname* is a file, the filename must end with :file:`.py`, and just " "the (corresponding :file:`\\*.pyc`) file is added at the top level (no path " @@ -926,11 +945,11 @@ msgstr "" "s'il y a des sous-répertoires qui sont des répertoires de paquet, ils sont " "tous ajoutés récursivement dans un ordre trié." -#: library/zipfile.rst:577 +#: library/zipfile.rst:594 msgid "*basename* is intended for internal use only." msgstr "*basename* n'est sensé être utilisé qu'en interne." -#: library/zipfile.rst:579 +#: library/zipfile.rst:596 msgid "" "*filterfunc*, if given, must be a function taking a single string argument. " "It will be passed each path (including each individual full file path) " @@ -949,31 +968,31 @@ msgstr "" "``test_``, nous pouvons utiliser une fonction *filterfunc* pour les " "exclure ::" -#: library/zipfile.rst:593 +#: library/zipfile.rst:610 msgid "The :meth:`writepy` method makes archives with file names like this::" msgstr "" "La méthode :meth:`writepy` crée des archives avec des noms de fichier comme " "suit ::" -#: library/zipfile.rst:602 +#: library/zipfile.rst:619 msgid "The *filterfunc* parameter." msgstr "Le paramètre *filterfunc*." -#: library/zipfile.rst:605 +#: library/zipfile.rst:622 msgid "The *pathname* parameter accepts a :term:`path-like object`." msgstr "" "Le paramètre *pathname* accepte un objet chemin-compatible :term:`path-like " "object`." -#: library/zipfile.rst:608 +#: library/zipfile.rst:625 msgid "Recursion sorts directory entries." msgstr "La récursion trie les entrées de dossier." -#: library/zipfile.rst:615 +#: library/zipfile.rst:632 msgid "ZipInfo Objects" msgstr "Objets *ZipInfo*" -#: library/zipfile.rst:617 +#: library/zipfile.rst:634 msgid "" "Instances of the :class:`ZipInfo` class are returned by the :meth:`.getinfo` " "and :meth:`.infolist` methods of :class:`ZipFile` objects. Each object " @@ -983,7 +1002,7 @@ msgstr "" "méthodes :meth:`.getinfo` et :meth:`.infolist` des objets :class:`ZipFile`. " "Chaque objet stocke des informations sur un seul membre de l'archive ZIP." -#: library/zipfile.rst:621 +#: library/zipfile.rst:638 msgid "" "There is one classmethod to make a :class:`ZipInfo` instance for a " "filesystem file:" @@ -991,7 +1010,7 @@ msgstr "" "Il y a une méthode de classe pour créer une instance de :class:`ZipInfo` " "pour un fichier du système de fichiers :" -#: library/zipfile.rst:627 +#: library/zipfile.rst:644 msgid "" "Construct a :class:`ZipInfo` instance for a file on the filesystem, in " "preparation for adding it to a zip file." @@ -999,13 +1018,13 @@ msgstr "" "Construit une instance de :class:`ZipInfo` pour le fichier du système de " "fichiers, en préparation de l'ajouter à un fichier ZIP." -#: library/zipfile.rst:630 +#: library/zipfile.rst:647 msgid "*filename* should be the path to a file or directory on the filesystem." msgstr "" "*filename* doit être un chemin vers un fichier ou un répertoire dans le " "système de fichiers." -#: library/zipfile.rst:632 +#: library/zipfile.rst:649 msgid "" "If *arcname* is specified, it is used as the name within the archive. If " "*arcname* is not specified, the name will be the same as *filename*, but " @@ -1015,31 +1034,31 @@ msgstr "" "*arcname* n'est pas spécifié, le nom sera le même que *filename* mais sans " "lettre de disque et sans séparateur de chemin en première position." -#: library/zipfile.rst:644 +#: library/zipfile.rst:661 msgid "The *filename* parameter accepts a :term:`path-like object`." msgstr "" "Le paramètre *filename* accepte un objet chemin-compatible :term:`path-like " "object`." -#: library/zipfile.rst:651 +#: library/zipfile.rst:668 msgid "Instances have the following methods and attributes:" msgstr "Les instances ont les méthodes et attributs suivants :" -#: library/zipfile.rst:655 +#: library/zipfile.rst:672 msgid "Return ``True`` if this archive member is a directory." msgstr "Retourne ``True`` si le membre d'archive est un répertoire." -#: library/zipfile.rst:657 +#: library/zipfile.rst:674 msgid "This uses the entry's name: directories should always end with ``/``." msgstr "" "Utilise le nom de l'entrée : les répertoires doivent toujours se terminer " "par ``/``." -#: library/zipfile.rst:664 +#: library/zipfile.rst:681 msgid "Name of the file in the archive." msgstr "Nom du fichier dans l'archive." -#: library/zipfile.rst:669 +#: library/zipfile.rst:686 msgid "" "The time and date of the last modification to the archive member. This is a " "tuple of six values:" @@ -1047,77 +1066,77 @@ msgstr "" "Date et heure de dernière modification pour le membre de l'archive. *Tuple* " "de six valeurs :" -#: library/zipfile.rst:673 +#: library/zipfile.rst:690 msgid "Index" msgstr "Index" -#: library/zipfile.rst:673 +#: library/zipfile.rst:690 msgid "Value" msgstr "Valeur" -#: library/zipfile.rst:675 +#: library/zipfile.rst:692 msgid "``0``" msgstr "``0``" -#: library/zipfile.rst:675 +#: library/zipfile.rst:692 msgid "Year (>= 1980)" msgstr "Année (>= 1980)" -#: library/zipfile.rst:677 +#: library/zipfile.rst:694 msgid "``1``" msgstr "``1``" -#: library/zipfile.rst:677 +#: library/zipfile.rst:694 msgid "Month (one-based)" msgstr "Mois (indexé à partir de 1)" -#: library/zipfile.rst:679 +#: library/zipfile.rst:696 msgid "``2``" msgstr "``2``" -#: library/zipfile.rst:679 +#: library/zipfile.rst:696 msgid "Day of month (one-based)" msgstr "Jour du mois (indexé à partir de 1)" -#: library/zipfile.rst:681 +#: library/zipfile.rst:698 msgid "``3``" msgstr "``3``" -#: library/zipfile.rst:681 +#: library/zipfile.rst:698 msgid "Hours (zero-based)" msgstr "Heures (indexées à partir de 0)" -#: library/zipfile.rst:683 +#: library/zipfile.rst:700 msgid "``4``" msgstr "``4``" -#: library/zipfile.rst:683 +#: library/zipfile.rst:700 msgid "Minutes (zero-based)" msgstr "Minutes (indexées à partir de 0)" -#: library/zipfile.rst:685 +#: library/zipfile.rst:702 msgid "``5``" msgstr "``5``" -#: library/zipfile.rst:685 +#: library/zipfile.rst:702 msgid "Seconds (zero-based)" msgstr "Secondes (indexées à partir de 0)" -#: library/zipfile.rst:690 +#: library/zipfile.rst:707 msgid "The ZIP file format does not support timestamps before 1980." msgstr "Le format de fichier ZIP ne gère pas les horodatages avant 1980." -#: library/zipfile.rst:695 +#: library/zipfile.rst:712 msgid "Type of compression for the archive member." msgstr "Type de compression du membre d'archive." -#: library/zipfile.rst:700 +#: library/zipfile.rst:717 msgid "Comment for the individual archive member as a :class:`bytes` object." msgstr "" "Commentaire pour le membre d'archive individuel en tant qu'objet :class:" "`bytes`." -#: library/zipfile.rst:705 +#: library/zipfile.rst:722 msgid "" "Expansion field data. The `PKZIP Application Note`_ contains some comments " "on the internal structure of the data contained in this :class:`bytes` " @@ -1127,59 +1146,59 @@ msgstr "" "contient quelques commentaires sur la structure interne des données " "contenues dans cet objet :class:`bytes`." -#: library/zipfile.rst:712 +#: library/zipfile.rst:729 msgid "System which created ZIP archive." msgstr "Système ayant créé l'archive ZIP." -#: library/zipfile.rst:717 +#: library/zipfile.rst:734 msgid "PKZIP version which created ZIP archive." msgstr "Version de PKZIP ayant créé l'archive ZIP." -#: library/zipfile.rst:722 +#: library/zipfile.rst:739 msgid "PKZIP version needed to extract archive." msgstr "Version de PKZIP nécessaire à l'extraction de l'archive ZIP." -#: library/zipfile.rst:727 +#: library/zipfile.rst:744 msgid "Must be zero." msgstr "Doit être à zéro." -#: library/zipfile.rst:732 +#: library/zipfile.rst:749 msgid "ZIP flag bits." msgstr "Bits d'options ZIP." -#: library/zipfile.rst:737 +#: library/zipfile.rst:754 msgid "Volume number of file header." msgstr "Numéro de volume de l'entête du fichier." -#: library/zipfile.rst:742 +#: library/zipfile.rst:759 msgid "Internal attributes." msgstr "Attributs internes." -#: library/zipfile.rst:747 +#: library/zipfile.rst:764 msgid "External file attributes." msgstr "Attributs de fichier externes." -#: library/zipfile.rst:752 +#: library/zipfile.rst:769 msgid "Byte offset to the file header." msgstr "Longueur de l'entête du fichier en octets." -#: library/zipfile.rst:757 +#: library/zipfile.rst:774 msgid "CRC-32 of the uncompressed file." msgstr "CRC-32 du fichier décompressé." -#: library/zipfile.rst:762 +#: library/zipfile.rst:779 msgid "Size of the compressed data." msgstr "Taille des données décompressées." -#: library/zipfile.rst:767 +#: library/zipfile.rst:784 msgid "Size of the uncompressed file." msgstr "Taille du fichier décompressé." -#: library/zipfile.rst:774 +#: library/zipfile.rst:791 msgid "Command-Line Interface" msgstr "Interface en ligne de commande" -#: library/zipfile.rst:776 +#: library/zipfile.rst:793 msgid "" "The :mod:`zipfile` module provides a simple command-line interface to " "interact with ZIP archives." @@ -1187,7 +1206,7 @@ msgstr "" "Le module :mod:`zipfile` fournit une interface en ligne de commande simple " "pour interagir avec des archives ZIP." -#: library/zipfile.rst:779 +#: library/zipfile.rst:796 msgid "" "If you want to create a new ZIP archive, specify its name after the :option:" "`-c` option and then list the filename(s) that should be included:" @@ -1195,11 +1214,11 @@ msgstr "" "Si vous voulez créer une nouvelle archive ZIP, spécifiez son nom après " "l'option :option:`-c` et listez ensuite le(s) nom(s) de fichier à inclure :" -#: library/zipfile.rst:786 +#: library/zipfile.rst:803 msgid "Passing a directory is also acceptable:" msgstr "Passer un répertoire est aussi possible :" -#: library/zipfile.rst:792 +#: library/zipfile.rst:809 msgid "" "If you want to extract a ZIP archive into the specified directory, use the :" "option:`-e` option:" @@ -1207,38 +1226,38 @@ msgstr "" "Si vous voulez extraire une archive ZIP dans un répertoire donné, utilisez " "l'option :option:`-e` :" -#: library/zipfile.rst:799 +#: library/zipfile.rst:816 msgid "For a list of the files in a ZIP archive, use the :option:`-l` option:" msgstr "" "Pour une liste des fichiers dans une archive ZIP, utilisez l'option :option:" "`-l` :" -#: library/zipfile.rst:807 +#: library/zipfile.rst:824 msgid "Command-line options" msgstr "Options de la ligne de commande" -#: library/zipfile.rst:812 +#: library/zipfile.rst:829 msgid "List files in a zipfile." msgstr "Liste les fichiers dans un fichier ZIP *zipfile*." -#: library/zipfile.rst:817 +#: library/zipfile.rst:834 msgid "Create zipfile from source files." msgstr "Crée un fichier ZIP *zipfile* à partir des fichiers *source*." -#: library/zipfile.rst:822 +#: library/zipfile.rst:839 msgid "Extract zipfile into target directory." msgstr "" "Extrait le fichier ZIP *zipfile* vers le répertoire cible *output_dir*." -#: library/zipfile.rst:827 +#: library/zipfile.rst:844 msgid "Test whether the zipfile is valid or not." msgstr "Teste si le fichier zip est valide." -#: library/zipfile.rst:830 +#: library/zipfile.rst:847 msgid "Decompression pitfalls" msgstr "Problèmes de décompression" -#: library/zipfile.rst:832 +#: library/zipfile.rst:849 msgid "" "The extraction in zipfile module might fail due to some pitfalls listed " "below." @@ -1246,11 +1265,11 @@ msgstr "" "L'extraction d'une archive ZIP par le module *zipfile* peut échouer pour les " "raisons listées ci-dessous." -#: library/zipfile.rst:835 +#: library/zipfile.rst:852 msgid "From file itself" msgstr "À cause du fichier lui-même" -#: library/zipfile.rst:837 +#: library/zipfile.rst:854 msgid "" "Decompression may fail due to incorrect password / CRC checksum / ZIP format " "or unsupported compression method / decryption." @@ -1259,11 +1278,11 @@ msgstr "" "contrôle CRC incorrectes. Elle peut aussi échouer si le format, la méthode " "de compression, ou de chiffrement n'est pas implémenté." -#: library/zipfile.rst:841 +#: library/zipfile.rst:858 msgid "File System limitations" msgstr "Limitations du système de fichiers" -#: library/zipfile.rst:843 +#: library/zipfile.rst:860 msgid "" "Exceeding limitations on different file systems can cause decompression " "failed. Such as allowable characters in the directory entries, length of the " @@ -1275,11 +1294,11 @@ msgstr "" "nom de fichier, la longueur du nom du fichier ou du chemin, la taille d'un " "fichier, le nombre de fichiers, etc." -#: library/zipfile.rst:848 +#: library/zipfile.rst:867 msgid "Resources limitations" msgstr "Ressources limitées" -#: library/zipfile.rst:850 +#: library/zipfile.rst:869 msgid "" "The lack of memory or disk volume would lead to decompression failed. For " "example, decompression bombs (aka `ZIP bomb`_) apply to zipfile library that " @@ -1289,11 +1308,11 @@ msgstr "" "décompression. Par exemple, une bombe de décompression (`ZIP bomb`_), " "décompressés avec *zifile* peut remplir l'espace disque." -#: library/zipfile.rst:855 +#: library/zipfile.rst:874 msgid "Interruption" msgstr "Interruption" -#: library/zipfile.rst:857 +#: library/zipfile.rst:876 msgid "" "Interruption during the decompression, such as pressing control-C or killing " "the decompression process may result in incomplete decompression of the " @@ -1302,11 +1321,11 @@ msgstr "" "Une interruption durant la décompression, en utilisant *control-C* ou en " "tuant le processus, peut mener à une décompression partielle de l'archive." -#: library/zipfile.rst:861 +#: library/zipfile.rst:880 msgid "Default behaviors of extraction" msgstr "Comportements par défaut de l'extraction" -#: library/zipfile.rst:863 +#: library/zipfile.rst:882 msgid "" "Not knowing the default extraction behaviors can cause unexpected " "decompression results. For example, when extracting the same archive twice, " diff --git a/library/zipimport.po b/library/zipimport.po index 415634ea8..bd8933d93 100644 --- a/library/zipimport.po +++ b/library/zipimport.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-11-17 23:08+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -112,21 +112,20 @@ msgstr "" "implémentation écrite par Just van Rossum qui utilise les crochets " "d'importation décrits dans :pep:`302`." -#: library/zipimport.rst:47 -msgid ":pep:`302` - New Import Hooks" -msgstr ":pep:`302` — Nouveaux crochets d'importation" +#: library/zipimport.rst:48 +msgid ":mod:`importlib` - The implementation of the import machinery" +msgstr "" #: library/zipimport.rst:48 -msgid "The PEP to add the import hooks that help this module work." +msgid "" +"Package providing the relevant protocols for all importers to implement." msgstr "" -"Le PEP pour ajouter les crochets d'importation qui aident ce module à " -"fonctionner." -#: library/zipimport.rst:51 +#: library/zipimport.rst:52 msgid "This module defines an exception:" msgstr "Ce module définit une exception :" -#: library/zipimport.rst:55 +#: library/zipimport.rst:56 msgid "" "Exception raised by zipimporter objects. It's a subclass of :exc:" "`ImportError`, so it can be caught as :exc:`ImportError`, too." @@ -135,15 +134,15 @@ msgstr "" "`ImportError`, donc elle peut être aussi interceptée comme une :exc:" "`ImportError`." -#: library/zipimport.rst:62 +#: library/zipimport.rst:63 msgid "zipimporter Objects" msgstr "Objets *zimporter*" -#: library/zipimport.rst:64 +#: library/zipimport.rst:65 msgid ":class:`zipimporter` is the class for importing ZIP files." msgstr ":class:`zipimporter` est la classe pour importer des fichiers ZIP." -#: library/zipimport.rst:68 +#: library/zipimport.rst:69 msgid "" "Create a new zipimporter instance. *archivepath* must be a path to a ZIP " "file, or to a specific path within a ZIP file. For example, an " @@ -157,7 +156,7 @@ msgstr "" "modules dans le répertoire :file:`lib` du fichier ZIP :file:`foo/bar.zip` " "(si celui-ci existe)." -#: library/zipimport.rst:73 +#: library/zipimport.rst:74 msgid "" ":exc:`ZipImportError` is raised if *archivepath* doesn't point to a valid " "ZIP archive." @@ -165,7 +164,25 @@ msgstr "" ":exc:`ZipImportError` est levée si *archivepath* ne pointe pas vers une " "archive ZIP valide." -#: library/zipimport.rst:78 +#: library/zipimport.rst:79 +msgid "" +"Implementation of :meth:`importlib.abc.Loader.create_module` that returns :" +"const:`None` to explicitly request the default semantics." +msgstr "" + +#: library/zipimport.rst:87 +msgid "Implementation of :meth:`importlib.abc.Loader.exec_module`." +msgstr "" + +#: library/zipimport.rst:94 +msgid "An implementation of :meth:`importlib.abc.PathEntryFinder.find_loader`." +msgstr "" + +#: library/zipimport.rst:111 +msgid "Use :meth:`find_spec` instead." +msgstr "" + +#: library/zipimport.rst:103 msgid "" "Search for a module specified by *fullname*. *fullname* must be the fully " "qualified (dotted) module name. It returns the zipimporter instance itself " @@ -179,15 +196,20 @@ msgstr "" "n'est pas le cas. L'argument optionnel *path* est ignoré --- il est là pour " "la compatibilité avec le protocole de l'importateur." -#: library/zipimport.rst:87 +#: library/zipimport.rst:116 +msgid "An implementation of :meth:`importlib.abc.PathEntryFinder.find_spec`." +msgstr "" + +#: library/zipimport.rst:123 +#, fuzzy msgid "" "Return the code object for the specified module. Raise :exc:`ZipImportError` " -"if the module couldn't be found." +"if the module couldn't be imported." msgstr "" "Retourne l'objet de code pour le module spécifié. Lève :exc:`ZipImportError` " "si le module n'a pas pu être trouvé." -#: library/zipimport.rst:93 +#: library/zipimport.rst:129 msgid "" "Return the data associated with *pathname*. Raise :exc:`OSError` if the file " "wasn't found." @@ -195,22 +217,23 @@ msgstr "" "Renvoie les données associées à *pathname*. Lève :exc:`OSError` si le " "fichier n'a pas été trouvé." -#: library/zipimport.rst:96 +#: library/zipimport.rst:132 msgid ":exc:`IOError` used to be raised instead of :exc:`OSError`." msgstr "" "Précédemment, c'était l'exception :exc:`IOError` qui était levée, au lieu " "de :exc:`OSError`." -#: library/zipimport.rst:102 +#: library/zipimport.rst:138 +#, fuzzy msgid "" "Return the value ``__file__`` would be set to if the specified module was " -"imported. Raise :exc:`ZipImportError` if the module couldn't be found." +"imported. Raise :exc:`ZipImportError` if the module couldn't be imported." msgstr "" "Renvoie la valeur ``__file____`` qui serait définie si le module spécifié " "était importé. Lève :exc:`ZipImportError` si le module n'a pas pu être " "trouvé." -#: library/zipimport.rst:111 +#: library/zipimport.rst:147 msgid "" "Return the source code for the specified module. Raise :exc:`ZipImportError` " "if the module couldn't be found, return :const:`None` if the archive does " @@ -220,7 +243,7 @@ msgstr "" "module n'a pas pu être trouvé, renvoie :const:`None` si l'archive contient " "le module, mais n'en a pas la source." -#: library/zipimport.rst:119 +#: library/zipimport.rst:155 msgid "" "Return ``True`` if the module specified by *fullname* is a package. Raise :" "exc:`ZipImportError` if the module couldn't be found." @@ -228,17 +251,28 @@ msgstr "" "Renvoie ``True`` si le module spécifié par *fullname* est un paquet. Lève :" "exc:`ZipImportError` si le module n'a pas pu être trouvé." -#: library/zipimport.rst:125 +#: library/zipimport.rst:161 +#, fuzzy msgid "" "Load the module specified by *fullname*. *fullname* must be the fully " -"qualified (dotted) module name. It returns the imported module, or raises :" -"exc:`ZipImportError` if it wasn't found." +"qualified (dotted) module name. Returns the imported module on success, " +"raises :exc:`ZipImportError` on failure." msgstr "" "Charge le module spécifié par *fullname*. *fullname* doit être le nom du " "module entièrement qualifié (`dotted`). Il renvoie le module importé, ou " "augmente :exc:`ZipImportError` s'il n'a pas été trouvé." -#: library/zipimport.rst:132 +#: library/zipimport.rst:167 +msgid "Use :meth:`exec_module` instead." +msgstr "" + +#: library/zipimport.rst:172 +msgid "" +"Clear out the internal cache of information about files found within the ZIP " +"archive." +msgstr "" + +#: library/zipimport.rst:180 msgid "" "The file name of the importer's associated ZIP file, without a possible " "subpath." @@ -246,7 +280,7 @@ msgstr "" "Le nom de fichier de l'archive ZIP associé à l'importateur, sans sous-chemin " "possible." -#: library/zipimport.rst:138 +#: library/zipimport.rst:186 msgid "" "The subpath within the ZIP file where modules are searched. This is the " "empty string for zipimporter objects which point to the root of the ZIP file." @@ -255,7 +289,7 @@ msgstr "" "chaîne vide pour les objets `zipimporter` qui pointent vers la racine du " "fichier ZIP." -#: library/zipimport.rst:142 +#: library/zipimport.rst:190 msgid "" "The :attr:`archive` and :attr:`prefix` attributes, when combined with a " "slash, equal the original *archivepath* argument given to the :class:" @@ -265,14 +299,22 @@ msgstr "" "avec une barre oblique, égalent l'argument original *archivepath* donné au " "constructeur :class:`zipimporter`." -#: library/zipimport.rst:150 +#: library/zipimport.rst:198 msgid "Examples" msgstr "Exemples" -#: library/zipimport.rst:152 +#: library/zipimport.rst:200 msgid "" "Here is an example that imports a module from a ZIP archive - note that the :" "mod:`zipimport` module is not explicitly used." msgstr "" "Voici un exemple qui importe un module d'une archive ZIP — notez que le " "module :mod:`zipimport` n'est pas explicitement utilisé." + +#~ msgid ":pep:`302` - New Import Hooks" +#~ msgstr ":pep:`302` — Nouveaux crochets d'importation" + +#~ msgid "The PEP to add the import hooks that help this module work." +#~ msgstr "" +#~ "Le PEP pour ajouter les crochets d'importation qui aident ce module à " +#~ "fonctionner." diff --git a/library/zoneinfo.po b/library/zoneinfo.po index ec1575f75..133e3c02c 100644 --- a/library/zoneinfo.po +++ b/library/zoneinfo.po @@ -5,10 +5,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-03-18 15:39+0100\n" "Last-Translator: Loc Cosnier \n" -"Language-Team: French \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -180,14 +180,16 @@ msgid "Compile-time configuration" msgstr "Configuration à la compilation" #: library/zoneinfo.rst:122 +#, fuzzy msgid "" "The default :data:`TZPATH` includes several common deployment locations for " "the time zone database (except on Windows, where there are no \"well-known\" " "locations for time zone data). On POSIX systems, downstream distributors and " "those building Python from source who know where their system time zone data " "is deployed may change the default time zone path by specifying the compile-" -"time option ``TZPATH`` (or, more likely, the ``configure`` flag ``--with-" -"tzpath``), which should be a string delimited by :data:`os.pathsep`." +"time option ``TZPATH`` (or, more likely, the :option:`configure flag --with-" +"tzpath <--with-tzpath>`), which should be a string delimited by :data:`os." +"pathsep`." msgstr "" "Par défaut, :data:`TZPATH` comprend plusieurs emplacements de déploiement " "courants pour la base de données de fuseaux horaires (sauf sous Windows, où " @@ -199,7 +201,7 @@ msgstr "" "précisément, avec l'option ``--with-tzpath`` du script ``configure``), qui " "doit être une chaîne délimitée par :data:`os.pathsep`." -#: library/zoneinfo.rst:130 +#: library/zoneinfo.rst:131 msgid "" "On all platforms, the configured value is available as the ``TZPATH`` key " "in :func:`sysconfig.get_config_var`." @@ -207,11 +209,11 @@ msgstr "" "Sur toutes les plates-formes, la valeur configurée est disponible en tant " "que clé de ``TZPATH`` dans :func:`sysconfig.get_config_var`." -#: library/zoneinfo.rst:136 +#: library/zoneinfo.rst:137 msgid "Environment configuration" msgstr "Configuration par l'environnement" -#: library/zoneinfo.rst:138 +#: library/zoneinfo.rst:139 msgid "" "When initializing :data:`TZPATH` (either at import time or whenever :func:" "`reset_tzpath` is called with no arguments), the ``zoneinfo`` module will " @@ -223,7 +225,7 @@ msgstr "" "``zoneinfo`` utilise la variable d'environnement ``PYTHONTZPATH``, si elle " "existe, pour définir le chemin de recherche." -#: library/zoneinfo.rst:145 +#: library/zoneinfo.rst:146 msgid "" "This is an :data:`os.pathsep`-separated string containing the time zone " "search path to use. It must consist of only absolute rather than relative " @@ -234,7 +236,7 @@ msgid "" "raise an exception." msgstr "" -#: library/zoneinfo.rst:153 +#: library/zoneinfo.rst:154 msgid "" "To set the system to ignore the system data and use the tzdata package " "instead, set ``PYTHONTZPATH=\"\"``." @@ -242,11 +244,11 @@ msgstr "" "Pour que le système ignore les données système et utilise le paquet *tzdata* " "à la place, définissez ``PYTHONTZPATH=\"\"``." -#: library/zoneinfo.rst:159 +#: library/zoneinfo.rst:160 msgid "Runtime configuration" msgstr "Configuration à l'exécution" -#: library/zoneinfo.rst:161 +#: library/zoneinfo.rst:162 msgid "" "The TZ search path can also be configured at runtime using the :func:" "`reset_tzpath` function. This is generally not an advisable operation, " @@ -255,11 +257,11 @@ msgid "" "zones)." msgstr "" -#: library/zoneinfo.rst:168 +#: library/zoneinfo.rst:169 msgid "The ``ZoneInfo`` class" msgstr "La classe ``ZoneInfo``" -#: library/zoneinfo.rst:172 +#: library/zoneinfo.rst:173 msgid "" "A concrete :class:`datetime.tzinfo` subclass that represents an IANA time " "zone specified by the string ``key``. Calls to the primary constructor will " @@ -268,42 +270,42 @@ msgid "" "``key``, the following assertion will always be true:" msgstr "" -#: library/zoneinfo.rst:184 +#: library/zoneinfo.rst:185 msgid "" "``key`` must be in the form of a relative, normalized POSIX path, with no up-" "level references. The constructor will raise :exc:`ValueError` if a non-" "conforming key is passed." msgstr "" -#: library/zoneinfo.rst:188 +#: library/zoneinfo.rst:189 msgid "" "If no file matching ``key`` is found, the constructor will raise :exc:" "`ZoneInfoNotFoundError`." msgstr "" -#: library/zoneinfo.rst:192 +#: library/zoneinfo.rst:193 msgid "The ``ZoneInfo`` class has two alternate constructors:" msgstr "" -#: library/zoneinfo.rst:196 +#: library/zoneinfo.rst:197 msgid "" "Constructs a ``ZoneInfo`` object from a file-like object returning bytes (e." "g. a file opened in binary mode or an :class:`io.BytesIO` object). Unlike " "the primary constructor, this always constructs a new object." msgstr "" -#: library/zoneinfo.rst:200 +#: library/zoneinfo.rst:201 msgid "" "The ``key`` parameter sets the name of the zone for the purposes of :py:meth:" "`~object.__str__` and :py:meth:`~object.__repr__`." msgstr "" -#: library/zoneinfo.rst:203 +#: library/zoneinfo.rst:204 msgid "" "Objects created via this constructor cannot be pickled (see `pickling`_)." msgstr "" -#: library/zoneinfo.rst:207 +#: library/zoneinfo.rst:208 msgid "" "An alternate constructor that bypasses the constructor's cache. It is " "identical to the primary constructor, but returns a new object on each call. " @@ -312,48 +314,48 @@ msgid "" "strategy." msgstr "" -#: library/zoneinfo.rst:213 +#: library/zoneinfo.rst:214 msgid "" "Objects created via this constructor will also bypass the cache of a " "deserializing process when unpickled." msgstr "" -#: library/zoneinfo.rst:220 +#: library/zoneinfo.rst:221 msgid "" "Using this constructor may change the semantics of your datetimes in " "surprising ways, only use it if you know that you need to." msgstr "" -#: library/zoneinfo.rst:223 +#: library/zoneinfo.rst:224 msgid "The following class methods are also available:" msgstr "Les méthodes de classe suivantes sont également disponibles :" -#: library/zoneinfo.rst:227 +#: library/zoneinfo.rst:228 msgid "" "A method for invalidating the cache on the ``ZoneInfo`` class. If no " "arguments are passed, all caches are invalidated and the next call to the " "primary constructor for each key will return a new instance." msgstr "" -#: library/zoneinfo.rst:231 +#: library/zoneinfo.rst:232 msgid "" "If an iterable of key names is passed to the ``only_keys`` parameter, only " "the specified keys will be removed from the cache. Keys passed to " "``only_keys`` but not found in the cache are ignored." msgstr "" -#: library/zoneinfo.rst:239 +#: library/zoneinfo.rst:240 msgid "" "Invoking this function may change the semantics of datetimes using " "``ZoneInfo`` in surprising ways; this modifies process-wide global state and " "thus may have wide-ranging effects. Only use it if you know that you need to." msgstr "" -#: library/zoneinfo.rst:244 +#: library/zoneinfo.rst:245 msgid "The class has one attribute:" msgstr "La classe a un attribut :" -#: library/zoneinfo.rst:248 +#: library/zoneinfo.rst:249 msgid "" "This is a read-only :term:`attribute` that returns the value of ``key`` " "passed to the constructor, which should be a lookup key in the IANA time " @@ -361,13 +363,13 @@ msgid "" "Tokyo``)." msgstr "" -#: library/zoneinfo.rst:253 +#: library/zoneinfo.rst:254 msgid "" "For zones constructed from file without specifying a ``key`` parameter, this " "will be set to ``None``." msgstr "" -#: library/zoneinfo.rst:258 +#: library/zoneinfo.rst:259 msgid "" "Although it is a somewhat common practice to expose these to end users, " "these values are designed to be primary keys for representing the relevant " @@ -376,18 +378,18 @@ msgid "" "strings from these keys." msgstr "" -#: library/zoneinfo.rst:265 +#: library/zoneinfo.rst:266 msgid "String representations" msgstr "" -#: library/zoneinfo.rst:267 +#: library/zoneinfo.rst:268 msgid "" "The string representation returned when calling :py:class:`str` on a :class:" "`ZoneInfo` object defaults to using the :attr:`ZoneInfo.key` attribute (see " "the note on usage in the attribute documentation)::" msgstr "" -#: library/zoneinfo.rst:279 +#: library/zoneinfo.rst:280 msgid "" "For objects constructed from a file without specifying a ``key`` parameter, " "``str`` falls back to calling :func:`repr`. ``ZoneInfo``'s ``repr`` is " @@ -395,22 +397,22 @@ msgid "" "is guaranteed not to be a valid ``ZoneInfo`` key." msgstr "" -#: library/zoneinfo.rst:287 +#: library/zoneinfo.rst:288 msgid "Pickle serialization" msgstr "" -#: library/zoneinfo.rst:289 +#: library/zoneinfo.rst:290 msgid "" "Rather than serializing all transition data, ``ZoneInfo`` objects are " "serialized by key, and ``ZoneInfo`` objects constructed from files (even " "those with a value for ``key`` specified) cannot be pickled." msgstr "" -#: library/zoneinfo.rst:293 +#: library/zoneinfo.rst:294 msgid "The behavior of a ``ZoneInfo`` file depends on how it was constructed:" msgstr "" -#: library/zoneinfo.rst:295 +#: library/zoneinfo.rst:296 msgid "" "``ZoneInfo(key)``: When constructed with the primary constructor, a " "``ZoneInfo`` object is serialized by key, and when deserialized, the " @@ -421,7 +423,7 @@ msgid "" "following behavior:" msgstr "" -#: library/zoneinfo.rst:310 +#: library/zoneinfo.rst:311 msgid "" "``ZoneInfo.no_cache(key)``: When constructed from the cache-bypassing " "constructor, the ``ZoneInfo`` object is also serialized by key, but when " @@ -431,7 +433,7 @@ msgid "" "the following behavior:" msgstr "" -#: library/zoneinfo.rst:324 +#: library/zoneinfo.rst:325 msgid "" "``ZoneInfo.from_file(fobj, /, key=None)``: When constructed from a file, the " "``ZoneInfo`` object raises an exception on pickling. If an end user wants to " @@ -440,7 +442,7 @@ msgid "" "key or storing the contents of the file object and serializing that." msgstr "" -#: library/zoneinfo.rst:330 +#: library/zoneinfo.rst:331 msgid "" "This method of serialization requires that the time zone data for the " "required key be available on both the serializing and deserializing side, " @@ -451,32 +453,32 @@ msgid "" "time zone data." msgstr "" -#: library/zoneinfo.rst:338 +#: library/zoneinfo.rst:339 msgid "Functions" msgstr "Fonctions" -#: library/zoneinfo.rst:342 +#: library/zoneinfo.rst:343 msgid "" "Get a set containing all the valid keys for IANA time zones available " "anywhere on the time zone path. This is recalculated on every call to the " "function." msgstr "" -#: library/zoneinfo.rst:346 +#: library/zoneinfo.rst:347 msgid "" "This function only includes canonical zone names and does not include " "\"special\" zones such as those under the ``posix/`` and ``right/`` " "directories, or the ``posixrules`` zone." msgstr "" -#: library/zoneinfo.rst:352 +#: library/zoneinfo.rst:353 msgid "" "This function may open a large number of files, as the best way to determine " "if a file on the time zone path is a valid time zone is to read the \"magic " "string\" at the beginning." msgstr "" -#: library/zoneinfo.rst:358 +#: library/zoneinfo.rst:359 msgid "" "These values are not designed to be exposed to end-users; for user facing " "elements, applications should use something like CLDR (the Unicode Common " @@ -484,20 +486,20 @@ msgid "" "cautionary note on :attr:`ZoneInfo.key`." msgstr "" -#: library/zoneinfo.rst:365 +#: library/zoneinfo.rst:366 msgid "" "Sets or resets the time zone search path (:data:`TZPATH`) for the module. " "When called with no arguments, :data:`TZPATH` is set to the default value." msgstr "" -#: library/zoneinfo.rst:368 +#: library/zoneinfo.rst:369 msgid "" "Calling ``reset_tzpath`` will not invalidate the :class:`ZoneInfo` cache, " "and so calls to the primary ``ZoneInfo`` constructor will only use the new " "``TZPATH`` in the case of a cache miss." msgstr "" -#: library/zoneinfo.rst:372 +#: library/zoneinfo.rst:373 msgid "" "The ``to`` parameter must be a :term:`sequence` of strings or :class:`os." "PathLike` and not a string, all of which must be absolute paths. :exc:" @@ -505,24 +507,24 @@ msgid "" "passed." msgstr "" -#: library/zoneinfo.rst:378 +#: library/zoneinfo.rst:379 msgid "Globals" msgstr "" -#: library/zoneinfo.rst:382 +#: library/zoneinfo.rst:383 msgid "" "A read-only sequence representing the time zone search path -- when " "constructing a ``ZoneInfo`` from a key, the key is joined to each entry in " "the ``TZPATH``, and the first file found is used." msgstr "" -#: library/zoneinfo.rst:386 +#: library/zoneinfo.rst:387 msgid "" "``TZPATH`` may contain only absolute paths, never relative paths, regardless " "of how it is configured." msgstr "" -#: library/zoneinfo.rst:389 +#: library/zoneinfo.rst:390 msgid "" "The object that ``zoneinfo.TZPATH`` points to may change in response to a " "call to :func:`reset_tzpath`, so it is recommended to use ``zoneinfo." @@ -530,24 +532,24 @@ msgid "" "long-lived variable to ``zoneinfo.TZPATH``." msgstr "" -#: library/zoneinfo.rst:394 +#: library/zoneinfo.rst:395 msgid "" "For more information on configuring the time zone search path, see :ref:" "`zoneinfo_data_configuration`." msgstr "" -#: library/zoneinfo.rst:398 +#: library/zoneinfo.rst:399 msgid "Exceptions and warnings" msgstr "" -#: library/zoneinfo.rst:402 +#: library/zoneinfo.rst:403 msgid "" "Raised when construction of a :class:`ZoneInfo` object fails because the " "specified key could not be found on the system. This is a subclass of :exc:" "`KeyError`." msgstr "" -#: library/zoneinfo.rst:408 +#: library/zoneinfo.rst:409 msgid "" "Raised when :envvar:`PYTHONTZPATH` contains an invalid component that will " "be filtered out, such as a relative path." diff --git a/license.po b/license.po index eb1489839..574fc7edd 100644 --- a/license.po +++ b/license.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-06-22 09:58+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 02:00+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -432,10 +432,11 @@ msgid "OpenSSL" msgstr "OpenSSL" #: license.rst:656 +#, fuzzy msgid "" "The modules :mod:`hashlib`, :mod:`posix`, :mod:`ssl`, :mod:`crypt` use the " "OpenSSL library for added performance if made available by the operating " -"system. Additionally, the Windows and Mac OS X installers for Python may " +"system. Additionally, the Windows and macOS installers for Python may " "include a copy of the OpenSSL libraries, so we include a copy of the OpenSSL " "license here::" msgstr "" diff --git a/reference/compound_stmts.po b/reference/compound_stmts.po index de5b15918..b4468b110 100644 --- a/reference/compound_stmts.po +++ b/reference/compound_stmts.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-07 16:58+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -91,7 +91,7 @@ msgstr "" msgid "Summarizing:" msgstr "En résumé :" -#: reference/compound_stmts.rst:68 +#: reference/compound_stmts.rst:69 msgid "" "Note that statements always end in a ``NEWLINE`` possibly followed by a " "``DEDENT``. Also note that optional continuation clauses always begin with " @@ -107,7 +107,7 @@ msgstr "" "Python en exigeant que des instructions :keyword:`if` imbriquées soient " "indentées les unes par rapport aux autres)." -#: reference/compound_stmts.rst:74 +#: reference/compound_stmts.rst:75 msgid "" "The formatting of the grammar rules in the following sections places each " "clause on a separate line for clarity." @@ -115,17 +115,17 @@ msgstr "" "L'agencement des règles de grammaire dans les sections qui suivent place " "chaque clause sur une ligne séparée pour plus de clarté." -#: reference/compound_stmts.rst:83 +#: reference/compound_stmts.rst:84 msgid "The :keyword:`!if` statement" msgstr "L'instruction :keyword:`!if`" -#: reference/compound_stmts.rst:91 +#: reference/compound_stmts.rst:92 msgid "The :keyword:`if` statement is used for conditional execution:" msgstr "" "L'instruction :keyword:`if` est utilisée pour exécuter des instructions en " "fonction d'une condition :" -#: reference/compound_stmts.rst:98 +#: reference/compound_stmts.rst:99 msgid "" "It selects exactly one of the suites by evaluating the expressions one by " "one until one is found to be true (see section :ref:`booleans` for the " @@ -141,11 +141,11 @@ msgstr "" "toutes les expressions sont fausses, la suite de la clause :keyword:`else`, " "si elle existe, est exécutée." -#: reference/compound_stmts.rst:108 +#: reference/compound_stmts.rst:109 msgid "The :keyword:`!while` statement" msgstr "L'instruction :keyword:`!while`" -#: reference/compound_stmts.rst:116 +#: reference/compound_stmts.rst:117 msgid "" "The :keyword:`while` statement is used for repeated execution as long as an " "expression is true:" @@ -153,7 +153,7 @@ msgstr "" "L'instruction :keyword:`while` est utilisée pour exécuter des instructions " "de manière répétée tant qu'une expression est vraie :" -#: reference/compound_stmts.rst:123 +#: reference/compound_stmts.rst:124 msgid "" "This repeatedly tests the expression and, if it is true, executes the first " "suite; if the expression is false (which may be the first time it is tested) " @@ -165,7 +165,7 @@ msgstr "" "même lors du premier test), la suite de la clause :keyword:`!else`, si elle " "existe, est exécutée et la boucle se termine." -#: reference/compound_stmts.rst:132 +#: reference/compound_stmts.rst:133 msgid "" "A :keyword:`break` statement executed in the first suite terminates the loop " "without executing the :keyword:`!else` clause's suite. A :keyword:" @@ -177,11 +177,11 @@ msgstr "" "instruction :keyword:`continue` exécutée dans la première suite saute le " "reste de la suite et retourne au test de l'expression." -#: reference/compound_stmts.rst:141 +#: reference/compound_stmts.rst:142 msgid "The :keyword:`!for` statement" msgstr "L'instruction :keyword:`!for`" -#: reference/compound_stmts.rst:152 +#: reference/compound_stmts.rst:153 msgid "" "The :keyword:`for` statement is used to iterate over the elements of a " "sequence (such as a string, tuple or list) or other iterable object:" @@ -190,7 +190,7 @@ msgstr "" "séquence (par exemple une chaîne, un *n*-uplet ou une liste) ou un autre " "objet itérable :" -#: reference/compound_stmts.rst:159 +#: reference/compound_stmts.rst:160 msgid "" "The expression list is evaluated once; it should yield an iterable object. " "An iterator is created for the result of the ``expression_list``. The suite " @@ -214,7 +214,7 @@ msgstr "" "`StopIteration`), la suite de la clause :keyword:`!else`, si elle existe, " "est exécutée et la boucle se termine." -#: reference/compound_stmts.rst:172 +#: reference/compound_stmts.rst:173 msgid "" "A :keyword:`break` statement executed in the first suite terminates the loop " "without executing the :keyword:`!else` clause's suite. A :keyword:" @@ -228,7 +228,7 @@ msgstr "" "reste de la suite et continue avec l'élément suivant, ou avec la clause :" "keyword:`!else` s'il n'y a pas d'élément suivant." -#: reference/compound_stmts.rst:178 +#: reference/compound_stmts.rst:179 msgid "" "The for-loop makes assignments to the variables in the target list. This " "overwrites all previous assignments to those variables including those made " @@ -238,7 +238,7 @@ msgstr "" "ce qui écrase toutes les affectations antérieures de ces variables, y " "compris celles effectuées dans la suite de la boucle ``for`` ::" -#: reference/compound_stmts.rst:192 +#: reference/compound_stmts.rst:193 msgid "" "Names in the target list are not deleted when the loop is finished, but if " "the sequence is empty, they will not have been assigned to at all by the " @@ -253,7 +253,7 @@ msgstr "" "classique en Pascal sur des entiers ``for i := a to b do`` ; par exemple, " "``list(range(3))`` renvoie la liste ``[0, 1, 2]``." -#: reference/compound_stmts.rst:204 +#: reference/compound_stmts.rst:205 msgid "" "There is a subtlety when the sequence is being modified by the loop (this " "can only occur for mutable sequences, e.g. lists). An internal counter is " @@ -280,11 +280,11 @@ msgstr "" "éviter en effectuant une copie temporaire d'une tranche ou de la séquence " "complète, par exemple ::" -#: reference/compound_stmts.rst:225 +#: reference/compound_stmts.rst:226 msgid "The :keyword:`!try` statement" msgstr "L'instruction :keyword:`!try`" -#: reference/compound_stmts.rst:235 +#: reference/compound_stmts.rst:236 msgid "" "The :keyword:`try` statement specifies exception handlers and/or cleanup " "code for a group of statements:" @@ -292,7 +292,7 @@ msgstr "" "L'instruction :keyword:`try` spécifie les gestionnaires d'exception ou le " "code de nettoyage pour un groupe d'instructions :" -#: reference/compound_stmts.rst:248 +#: reference/compound_stmts.rst:249 msgid "" "The :keyword:`except` clause(s) specify one or more exception handlers. When " "no exception occurs in the :keyword:`try` clause, no exception handler is " @@ -321,7 +321,7 @@ msgstr "" "l'objet exception ou si c'est un *n*-uplet dont un élément est la classe ou " "une classe parente de l'exception." -#: reference/compound_stmts.rst:260 +#: reference/compound_stmts.rst:261 msgid "" "If no except clause matches the exception, the search for an exception " "handler continues in the surrounding code and on the invocation stack. [#]_" @@ -330,7 +330,7 @@ msgstr "" "gestionnaire d'exception se poursuit dans le code englobant et dans la pile " "d'appels. [#]_" -#: reference/compound_stmts.rst:263 +#: reference/compound_stmts.rst:264 msgid "" "If the evaluation of an expression in the header of an except clause raises " "an exception, the original search for a handler is canceled and a search " @@ -344,7 +344,7 @@ msgstr "" "la pile d'appels (c'est traité comme si l'instruction :keyword:`try` avait " "levé l'exception)." -#: reference/compound_stmts.rst:270 +#: reference/compound_stmts.rst:271 msgid "" "When a matching except clause is found, the exception is assigned to the " "target specified after the :keyword:`!as` keyword in that except clause, if " @@ -365,7 +365,7 @@ msgstr "" "se produit dans la clause ``try`` du gestionnaire interne, le gestionnaire " "externe ne gère pas l'exception)." -#: reference/compound_stmts.rst:278 +#: reference/compound_stmts.rst:279 msgid "" "When an exception has been assigned using ``as target``, it is cleared at " "the end of the except clause. This is as if ::" @@ -373,11 +373,11 @@ msgstr "" "Lorsqu'une exception a été assignée en utilisant ``as cible``, elle est " "effacée à la fin de la clause ``except``. C'est comme si ::" -#: reference/compound_stmts.rst:284 +#: reference/compound_stmts.rst:285 msgid "was translated to ::" msgstr "avait été traduit en ::" -#: reference/compound_stmts.rst:292 +#: reference/compound_stmts.rst:293 msgid "" "This means the exception must be assigned to a different name to be able to " "refer to it after the except clause. Exceptions are cleared because with " @@ -392,15 +392,16 @@ msgstr "" "ce qui conduit à conserver tous les noms locaux de ce cadre en mémoire " "jusqu'au passage du ramasse-miettes." -#: reference/compound_stmts.rst:301 +#: reference/compound_stmts.rst:302 +#, fuzzy msgid "" "Before an except clause's suite is executed, details about the exception are " "stored in the :mod:`sys` module and can be accessed via :func:`sys." "exc_info`. :func:`sys.exc_info` returns a 3-tuple consisting of the " "exception class, the exception instance and a traceback object (see section :" "ref:`types`) identifying the point in the program where the exception " -"occurred. :func:`sys.exc_info` values are restored to their previous values " -"(before the call) when returning from a function that handled an exception." +"occurred. The details about the exception accessed via :func:`sys.exc_info` " +"are restored to their previous values when leaving an exception handler::" msgstr "" "Avant l'exécution de la suite d'une clause ``except``, les détails de " "l'exception sont stockés dans le module :mod:`sys` et sont accessibles " @@ -411,7 +412,7 @@ msgstr "" "leurs anciennes valeurs (celles d'avant l'appel) au retour d'une fonction " "qui a géré une exception." -#: reference/compound_stmts.rst:315 +#: reference/compound_stmts.rst:334 msgid "" "The optional :keyword:`!else` clause is executed if the control flow leaves " "the :keyword:`try` suite, no exception was raised, and no :keyword:" @@ -425,7 +426,7 @@ msgstr "" "étés exécutés. Les exceptions dans la clause :keyword:`!else` ne sont pas " "gérées par les clauses :keyword:`except` précédentes." -#: reference/compound_stmts.rst:323 +#: reference/compound_stmts.rst:342 msgid "" "If :keyword:`finally` is present, it specifies a 'cleanup' handler. The :" "keyword:`try` clause is executed, including any :keyword:`except` and :" @@ -450,7 +451,7 @@ msgstr "" "instruction :keyword:`return`, :keyword:`break` ou :keyword:`continue`, " "l'exception sauvegardée est jetée ::" -#: reference/compound_stmts.rst:342 +#: reference/compound_stmts.rst:361 msgid "" "The exception information is not available to the program during execution " "of the :keyword:`finally` clause." @@ -458,7 +459,7 @@ msgstr "" "L'information relative à l'exception n'est pas disponible pour le programme " "pendant l'exécution de la clause :keyword:`finally`." -#: reference/compound_stmts.rst:350 +#: reference/compound_stmts.rst:369 msgid "" "When a :keyword:`return`, :keyword:`break` or :keyword:`continue` statement " "is executed in the :keyword:`try` suite of a :keyword:`!try`...\\ :keyword:`!" @@ -470,7 +471,7 @@ msgstr "" "construction :keyword:`!try`…\\ :keyword:`!finally`, la clause :keyword:" "`finally` est aussi exécutée « à la sortie »." -#: reference/compound_stmts.rst:354 +#: reference/compound_stmts.rst:373 msgid "" "The return value of a function is determined by the last :keyword:`return` " "statement executed. Since the :keyword:`finally` clause always executes, a :" @@ -482,7 +483,7 @@ msgstr "" "s'exécute toujours, une instruction :keyword:`!return` exécutée dans le :" "keyword:`!finally` sera toujours la dernière clause exécutée ::" -#: reference/compound_stmts.rst:368 +#: reference/compound_stmts.rst:387 msgid "" "Additional information on exceptions can be found in section :ref:" "`exceptions`, and information on using the :keyword:`raise` statement to " @@ -493,7 +494,7 @@ msgstr "" "informations relatives à l'utilisation de l'instruction :keyword:`raise` " "pour produire des exceptions." -#: reference/compound_stmts.rst:372 +#: reference/compound_stmts.rst:391 msgid "" "Prior to Python 3.8, a :keyword:`continue` statement was illegal in the :" "keyword:`finally` clause due to a problem with the implementation." @@ -502,11 +503,11 @@ msgstr "" "dans une clause :keyword:`finally` en raison d'un problème dans " "l'implémentation." -#: reference/compound_stmts.rst:381 +#: reference/compound_stmts.rst:400 msgid "The :keyword:`!with` statement" msgstr "L'instruction :keyword:`!with`" -#: reference/compound_stmts.rst:390 +#: reference/compound_stmts.rst:409 msgid "" "The :keyword:`with` statement is used to wrap the execution of a block with " "methods defined by a context manager (see section :ref:`context-managers`). " @@ -519,7 +520,7 @@ msgstr "" "le patron de conception classique :keyword:`try`…\\ :keyword:`except`…\\ :" "keyword:`finally`." -#: reference/compound_stmts.rst:399 +#: reference/compound_stmts.rst:419 msgid "" "The execution of the :keyword:`with` statement with one \"item\" proceeds as " "follows:" @@ -527,7 +528,7 @@ msgstr "" "L'exécution de l'instruction :keyword:`with` avec un seul " "« élément » (*item* dans la grammaire) se déroule comme suit :" -#: reference/compound_stmts.rst:401 +#: reference/compound_stmts.rst:421 msgid "" "The context expression (the expression given in the :token:`with_item`) is " "evaluated to obtain a context manager." @@ -535,23 +536,23 @@ msgstr "" "L'expression de contexte (l'expression donnée dans le :token:`with_item`) " "est évaluée pour obtenir un gestionnaire de contexte." -#: reference/compound_stmts.rst:404 +#: reference/compound_stmts.rst:424 msgid "The context manager's :meth:`__enter__` is loaded for later use." msgstr "" "La méthode :meth:`__enter__` du gestionnaire de contexte est chargée pour " "une utilisation ultérieure." -#: reference/compound_stmts.rst:406 +#: reference/compound_stmts.rst:426 msgid "The context manager's :meth:`__exit__` is loaded for later use." msgstr "" "La méthode :meth:`__exit__` du gestionnaire de contexte est chargée pour une " "utilisation ultérieure." -#: reference/compound_stmts.rst:408 +#: reference/compound_stmts.rst:428 msgid "The context manager's :meth:`__enter__` method is invoked." msgstr "La méthode :meth:`__enter__` du gestionnaire de contexte est invoquée." -#: reference/compound_stmts.rst:410 +#: reference/compound_stmts.rst:430 msgid "" "If a target was included in the :keyword:`with` statement, the return value " "from :meth:`__enter__` is assigned to it." @@ -560,7 +561,7 @@ msgstr "" "l'instruction :keyword:`with`, la valeur de retour de :meth:`__enter__` lui " "est assignée." -#: reference/compound_stmts.rst:415 +#: reference/compound_stmts.rst:435 msgid "" "The :keyword:`with` statement guarantees that if the :meth:`__enter__` " "method returns without an error, then :meth:`__exit__` will always be " @@ -574,11 +575,11 @@ msgstr "" "cible, elle est traitée de la même façon qu'une erreur se produisant dans la " "suite. Voir l'étape 6 ci-dessous." -#: reference/compound_stmts.rst:421 +#: reference/compound_stmts.rst:441 msgid "The suite is executed." msgstr "La suite est exécutée." -#: reference/compound_stmts.rst:423 +#: reference/compound_stmts.rst:443 msgid "" "The context manager's :meth:`__exit__` method is invoked. If an exception " "caused the suite to be exited, its type, value, and traceback are passed as " @@ -590,7 +591,7 @@ msgstr "" "d'appels sont passés en arguments à :meth:`__exit__`. Sinon, trois " "arguments :const:`None` sont fournis." -#: reference/compound_stmts.rst:428 +#: reference/compound_stmts.rst:448 msgid "" "If the suite was exited due to an exception, and the return value from the :" "meth:`__exit__` method was false, the exception is reraised. If the return " @@ -603,7 +604,7 @@ msgstr "" "l'exécution continue avec l'instruction qui suit l'instruction :keyword:" "`with`." -#: reference/compound_stmts.rst:433 +#: reference/compound_stmts.rst:453 msgid "" "If the suite was exited for any reason other than an exception, the return " "value from :meth:`__exit__` is ignored, and execution proceeds at the normal " @@ -613,17 +614,17 @@ msgstr "" "valeur de retour de :meth:`__exit__` est ignorée et l'exécution se poursuit " "à l'endroit normal pour le type de sortie prise." -#: reference/compound_stmts.rst:437 reference/compound_stmts.rst:815 -#: reference/compound_stmts.rst:856 +#: reference/compound_stmts.rst:457 reference/compound_stmts.rst:1446 +#: reference/compound_stmts.rst:1487 msgid "The following code::" msgstr "Le code suivant ::" -#: reference/compound_stmts.rst:442 reference/compound_stmts.rst:467 -#: reference/compound_stmts.rst:861 +#: reference/compound_stmts.rst:462 reference/compound_stmts.rst:487 +#: reference/compound_stmts.rst:1492 msgid "is semantically equivalent to::" msgstr "est sémantiquement équivalent à ::" -#: reference/compound_stmts.rst:461 +#: reference/compound_stmts.rst:481 msgid "" "With more than one item, the context managers are processed as if multiple :" "keyword:`with` statements were nested::" @@ -631,15 +632,27 @@ msgstr "" "Avec plus d'un élément, les gestionnaires de contexte sont traités comme si " "plusieurs instructions :keyword:`with` étaient imbriquées ::" -#: reference/compound_stmts.rst:473 +#: reference/compound_stmts.rst:493 +msgid "" +"You can also write multi-item context managers in multiple lines if the " +"items are surrounded by parentheses. For example::" +msgstr "" + +#: reference/compound_stmts.rst:502 msgid "Support for multiple context expressions." msgstr "Prise en charge de multiples expressions de contexte." -#: reference/compound_stmts.rst:479 +#: reference/compound_stmts.rst:505 +msgid "" +"Support for using grouping parentheses to break the statement in multiple " +"lines." +msgstr "" + +#: reference/compound_stmts.rst:511 msgid ":pep:`343` - The \"with\" statement" msgstr ":pep:`343` — L'instruction « *with* »" -#: reference/compound_stmts.rst:479 +#: reference/compound_stmts.rst:511 msgid "" "The specification, background, and examples for the Python :keyword:`with` " "statement." @@ -647,11 +660,854 @@ msgstr "" "La spécification, les motivations et des exemples de l'instruction :keyword:" "`with` en Python." -#: reference/compound_stmts.rst:490 +#: reference/compound_stmts.rst:517 +#, fuzzy +msgid "The :keyword:`!match` statement" +msgstr "L'instruction :keyword:`!with`" + +#: reference/compound_stmts.rst:530 +msgid "The match statement is used for pattern matching. Syntax:" +msgstr "" + +#: reference/compound_stmts.rst:539 +msgid "" +"This section uses single quotes to denote :ref:`soft keywords `." +msgstr "" + +#: reference/compound_stmts.rst:542 +msgid "" +"Pattern matching takes a pattern as input (following ``case``) and a subject " +"value (following ``match``). The pattern (which may contain subpatterns) is " +"matched against the subject value. The outcomes are:" +msgstr "" + +#: reference/compound_stmts.rst:546 +msgid "A match success or failure (also termed a pattern success or failure)." +msgstr "" + +#: reference/compound_stmts.rst:548 +msgid "" +"Possible binding of matched values to a name. The prerequisites for this " +"are further discussed below." +msgstr "" + +#: reference/compound_stmts.rst:551 +msgid "" +"The ``match`` and ``case`` keywords are :ref:`soft keywords `." +msgstr "" + +#: reference/compound_stmts.rst:555 reference/compound_stmts.rst:1109 +msgid ":pep:`634` -- Structural Pattern Matching: Specification" +msgstr "" + +#: reference/compound_stmts.rst:556 reference/compound_stmts.rst:1110 +msgid ":pep:`636` -- Structural Pattern Matching: Tutorial" +msgstr "" + +#: reference/compound_stmts.rst:560 +msgid "Overview" +msgstr "" + +#: reference/compound_stmts.rst:562 +msgid "Here's an overview of the logical flow of a match statement:" +msgstr "" + +#: reference/compound_stmts.rst:565 +msgid "" +"The subject expression ``subject_expr`` is evaluated and a resulting subject " +"value obtained. If the subject expression contains a comma, a tuple is " +"constructed using :ref:`the standard rules `." +msgstr "" + +#: reference/compound_stmts.rst:569 +msgid "" +"Each pattern in a ``case_block`` is attempted to match with the subject " +"value. The specific rules for success or failure are described below. The " +"match attempt can also bind some or all of the standalone names within the " +"pattern. The precise pattern binding rules vary per pattern type and are " +"specified below. **Name bindings made during a successful pattern match " +"outlive the executed block and can be used after the match statement**." +msgstr "" + +#: reference/compound_stmts.rst:578 +msgid "" +"During failed pattern matches, some subpatterns may succeed. Do not rely on " +"bindings being made for a failed match. Conversely, do not rely on " +"variables remaining unchanged after a failed match. The exact behavior is " +"dependent on implementation and may vary. This is an intentional decision " +"made to allow different implementations to add optimizations." +msgstr "" + +#: reference/compound_stmts.rst:585 +msgid "" +"If the pattern succeeds, the corresponding guard (if present) is evaluated. " +"In this case all name bindings are guaranteed to have happened." +msgstr "" + +#: reference/compound_stmts.rst:588 +msgid "" +"If the guard evaluates as truthy or missing, the ``block`` inside " +"``case_block`` is executed." +msgstr "" + +#: reference/compound_stmts.rst:591 +msgid "Otherwise, the next ``case_block`` is attempted as described above." +msgstr "" + +#: reference/compound_stmts.rst:593 +msgid "If there are no further case blocks, the match statement is completed." +msgstr "" + +#: reference/compound_stmts.rst:597 +msgid "" +"Users should generally never rely on a pattern being evaluated. Depending " +"on implementation, the interpreter may cache values or use other " +"optimizations which skip repeated evaluations." +msgstr "" + +#: reference/compound_stmts.rst:601 +msgid "A sample match statement::" +msgstr "" + +#: reference/compound_stmts.rst:617 +msgid "" +"In this case, ``if flag`` is a guard. Read more about that in the next " +"section." +msgstr "" + +#: reference/compound_stmts.rst:620 +msgid "Guards" +msgstr "" + +#: reference/compound_stmts.rst:627 +msgid "" +"A ``guard`` (which is part of the ``case``) must succeed for code inside the " +"``case`` block to execute. It takes the form: :keyword:`if` followed by an " +"expression." +msgstr "" + +#: reference/compound_stmts.rst:632 +msgid "The logical flow of a ``case`` block with a ``guard`` follows:" +msgstr "" + +#: reference/compound_stmts.rst:634 +msgid "" +"Check that the pattern in the ``case`` block succeeded. If the pattern " +"failed, the ``guard`` is not evaluated and the next ``case`` block is " +"checked." +msgstr "" + +#: reference/compound_stmts.rst:638 +msgid "If the pattern succeeded, evaluate the ``guard``." +msgstr "" + +#: reference/compound_stmts.rst:640 +msgid "" +"If the ``guard`` condition evaluates to \"truthy\", the case block is " +"selected." +msgstr "" + +#: reference/compound_stmts.rst:643 +msgid "" +"If the ``guard`` condition evaluates to \"falsy\", the case block is not " +"selected." +msgstr "" + +#: reference/compound_stmts.rst:646 +msgid "" +"If the ``guard`` raises an exception during evaluation, the exception " +"bubbles up." +msgstr "" + +#: reference/compound_stmts.rst:649 +msgid "" +"Guards are allowed to have side effects as they are expressions. Guard " +"evaluation must proceed from the first to the last case block, one at a " +"time, skipping case blocks whose pattern(s) don't all succeed. (I.e., guard " +"evaluation must happen in order.) Guard evaluation must stop once a case " +"block is selected." +msgstr "" + +#: reference/compound_stmts.rst:659 +msgid "Irrefutable Case Blocks" +msgstr "" + +#: reference/compound_stmts.rst:663 +msgid "" +"An irrefutable case block is a match-all case block. A match statement may " +"have at most one irrefutable case block, and it must be last." +msgstr "" + +#: reference/compound_stmts.rst:666 +msgid "" +"A case block is considered irrefutable if it has no guard and its pattern is " +"irrefutable. A pattern is considered irrefutable if we can prove from its " +"syntax alone that it will always succeed. Only the following patterns are " +"irrefutable:" +msgstr "" + +#: reference/compound_stmts.rst:671 +msgid ":ref:`as-patterns` whose left-hand side is irrefutable" +msgstr "" + +#: reference/compound_stmts.rst:673 +msgid ":ref:`or-patterns` containing at least one irrefutable pattern" +msgstr "" + +#: reference/compound_stmts.rst:675 +msgid ":ref:`capture-patterns`" +msgstr "" + +#: reference/compound_stmts.rst:677 +msgid ":ref:`wildcard-patterns`" +msgstr "" + +#: reference/compound_stmts.rst:679 +msgid "parenthesized irrefutable patterns" +msgstr "" + +#: reference/compound_stmts.rst:683 +msgid "Patterns" +msgstr "" + +#: reference/compound_stmts.rst:690 +msgid "This section uses grammar notations beyond standard EBNF:" +msgstr "" + +#: reference/compound_stmts.rst:692 +msgid "the notation ``SEP.RULE+`` is shorthand for ``RULE (SEP RULE)*``" +msgstr "" + +#: reference/compound_stmts.rst:694 +msgid "the notation ``!RULE`` is shorthand for a negative lookahead assertion" +msgstr "" + +#: reference/compound_stmts.rst:697 +msgid "The top-level syntax for ``patterns`` is:" +msgstr "" + +#: reference/compound_stmts.rst:711 +msgid "" +"The descriptions below will include a description \"in simple terms\" of " +"what a pattern does for illustration purposes (credits to Raymond Hettinger " +"for a document that inspired most of the descriptions). Note that these " +"descriptions are purely for illustration purposes and **may not** reflect " +"the underlying implementation. Furthermore, they do not cover all valid " +"forms." +msgstr "" + +#: reference/compound_stmts.rst:721 +msgid "OR Patterns" +msgstr "" + +#: reference/compound_stmts.rst:723 +msgid "" +"An OR pattern is two or more patterns separated by vertical bars ``|``. " +"Syntax:" +msgstr "" + +#: reference/compound_stmts.rst:729 +msgid "" +"Only the final subpattern may be :ref:`irrefutable `, and " +"each subpattern must bind the same set of names to avoid ambiguity." +msgstr "" + +#: reference/compound_stmts.rst:732 +msgid "" +"An OR pattern matches each of its subpatterns in turn to the subject value, " +"until one succeeds. The OR pattern is then considered successful. " +"Otherwise, if none of the subpatterns succeed, the OR pattern fails." +msgstr "" + +#: reference/compound_stmts.rst:736 +msgid "" +"In simple terms, ``P1 | P2 | ...`` will try to match ``P1``, if it fails it " +"will try to match ``P2``, succeeding immediately if any succeeds, failing " +"otherwise." +msgstr "" + +#: reference/compound_stmts.rst:742 +msgid "AS Patterns" +msgstr "" + +#: reference/compound_stmts.rst:744 +msgid "" +"An AS pattern matches an OR pattern on the left of the :keyword:`as` keyword " +"against a subject. Syntax:" +msgstr "" + +#: reference/compound_stmts.rst:750 +msgid "" +"If the OR pattern fails, the AS pattern fails. Otherwise, the AS pattern " +"binds the subject to the name on the right of the as keyword and succeeds. " +"``capture_pattern`` cannot be a a ``_``." +msgstr "" + +#: reference/compound_stmts.rst:754 +msgid "" +"In simple terms ``P as NAME`` will match with ``P``, and on success it will " +"set ``NAME = ``." +msgstr "" + +#: reference/compound_stmts.rst:761 +msgid "Literal Patterns" +msgstr "" + +#: reference/compound_stmts.rst:763 +msgid "" +"A literal pattern corresponds to most :ref:`literals ` in Python. " +"Syntax:" +msgstr "" + +#: reference/compound_stmts.rst:776 +msgid "" +"The rule ``strings`` and the token ``NUMBER`` are defined in the :doc:" +"`standard Python grammar <./grammar>`. Triple-quoted strings are " +"supported. Raw strings and byte strings are supported. :ref:`f-strings` " +"are not supported." +msgstr "" + +#: reference/compound_stmts.rst:781 +msgid "" +"The forms ``signed_number '+' NUMBER`` and ``signed_number '-' NUMBER`` are " +"for expressing :ref:`complex numbers `; they require a real " +"number on the left and an imaginary number on the right. E.g. ``3 + 4j``." +msgstr "" + +#: reference/compound_stmts.rst:785 +msgid "" +"In simple terms, ``LITERAL`` will succeed only if `` == LITERAL``. " +"For the singletons ``None``, ``True`` and ``False``, the :keyword:`is` " +"operator is used." +msgstr "" + +#: reference/compound_stmts.rst:791 +msgid "Capture Patterns" +msgstr "" + +#: reference/compound_stmts.rst:793 +msgid "A capture pattern binds the subject value to a name. Syntax:" +msgstr "" + +#: reference/compound_stmts.rst:799 +msgid "" +"A single underscore ``_`` is not a capture pattern (this is what ``!'_'`` " +"expresses). It is instead treated as a :token:`wildcard_pattern`." +msgstr "" + +#: reference/compound_stmts.rst:802 +msgid "" +"In a given pattern, a given name can only be bound once. E.g. ``case x, " +"x: ...`` is invalid while ``case [x] | x: ...`` is allowed." +msgstr "" + +#: reference/compound_stmts.rst:805 +msgid "" +"Capture patterns always succeed. The binding follows scoping rules " +"established by the assignment expression operator in :pep:`572`; the name " +"becomes a local variable in the closest containing function scope unless " +"there's an applicable :keyword:`global` or :keyword:`nonlocal` statement." +msgstr "" + +#: reference/compound_stmts.rst:810 +msgid "" +"In simple terms ``NAME`` will always succeed and it will set ``NAME = " +"``." +msgstr "" + +#: reference/compound_stmts.rst:815 +msgid "Wildcard Patterns" +msgstr "" + +#: reference/compound_stmts.rst:817 +msgid "" +"A wildcard pattern always succeeds (matches anything) and binds no name. " +"Syntax:" +msgstr "" + +#: reference/compound_stmts.rst:823 +msgid "" +"``_`` is a :ref:`soft keyword ` within any pattern, but only " +"within patterns. It is an identifier, as usual, even within ``match`` " +"subject expressions, ``guard``\\ s, and ``case`` blocks." +msgstr "" + +#: reference/compound_stmts.rst:827 +msgid "In simple terms, ``_`` will always succeed." +msgstr "" + +#: reference/compound_stmts.rst:832 +msgid "Value Patterns" +msgstr "" + +#: reference/compound_stmts.rst:834 +msgid "A value pattern represents a named value in Python. Syntax:" +msgstr "" + +#: reference/compound_stmts.rst:842 +msgid "" +"The dotted name in the pattern is looked up using standard Python :ref:`name " +"resolution rules `. The pattern succeeds if the value found " +"compares equal to the subject value (using the ``==`` equality operator)." +msgstr "" + +#: reference/compound_stmts.rst:847 +msgid "" +"In simple terms ``NAME1.NAME2`` will succeed only if `` == NAME1." +"NAME2``" +msgstr "" + +#: reference/compound_stmts.rst:851 +msgid "" +"If the same value occurs multiple times in the same match statement, the " +"interpreter may cache the first value found and reuse it rather than repeat " +"the same lookup. This cache is strictly tied to a given execution of a " +"given match statement." +msgstr "" + +#: reference/compound_stmts.rst:859 +msgid "Group Patterns" +msgstr "" + +#: reference/compound_stmts.rst:861 +msgid "" +"A group pattern allows users to add parentheses around patterns to emphasize " +"the intended grouping. Otherwise, it has no additional syntax. Syntax:" +msgstr "" + +#: reference/compound_stmts.rst:868 +msgid "In simple terms ``(P)`` has the same effect as ``P``." +msgstr "" + +#: reference/compound_stmts.rst:873 +msgid "Sequence Patterns" +msgstr "" + +#: reference/compound_stmts.rst:875 +msgid "" +"A sequence pattern contains several subpatterns to be matched against " +"sequence elements. The syntax is similar to the unpacking of a list or tuple." +msgstr "" + +#: reference/compound_stmts.rst:886 +msgid "" +"There is no difference if parentheses or square brackets are used for " +"sequence patterns (i.e. ``(...)`` vs ``[...]`` )." +msgstr "" + +#: reference/compound_stmts.rst:890 +msgid "" +"A single pattern enclosed in parentheses without a trailing comma (e.g. ``(3 " +"| 4)``) is a :ref:`group pattern `. While a single pattern " +"enclosed in square brackets (e.g. ``[3 | 4]``) is still a sequence pattern." +msgstr "" + +#: reference/compound_stmts.rst:895 +msgid "" +"At most one star subpattern may be in a sequence pattern. The star " +"subpattern may occur in any position. If no star subpattern is present, the " +"sequence pattern is a fixed-length sequence pattern; otherwise it is a " +"variable-length sequence pattern." +msgstr "" + +#: reference/compound_stmts.rst:900 +msgid "" +"The following is the logical flow for matching a sequence pattern against a " +"subject value:" +msgstr "" + +#: reference/compound_stmts.rst:903 +msgid "" +"If the subject value is not a sequence [#]_, the sequence pattern fails." +msgstr "" + +#: reference/compound_stmts.rst:906 +msgid "" +"If the subject value is an instance of ``str``, ``bytes`` or ``bytearray`` " +"the sequence pattern fails." +msgstr "" + +#: reference/compound_stmts.rst:909 +msgid "" +"The subsequent steps depend on whether the sequence pattern is fixed or " +"variable-length." +msgstr "" + +#: reference/compound_stmts.rst:912 +msgid "If the sequence pattern is fixed-length:" +msgstr "" + +#: reference/compound_stmts.rst:914 +msgid "" +"If the length of the subject sequence is not equal to the number of " +"subpatterns, the sequence pattern fails" +msgstr "" + +#: reference/compound_stmts.rst:917 +msgid "" +"Subpatterns in the sequence pattern are matched to their corresponding items " +"in the subject sequence from left to right. Matching stops as soon as a " +"subpattern fails. If all subpatterns succeed in matching their " +"corresponding item, the sequence pattern succeeds." +msgstr "" + +#: reference/compound_stmts.rst:922 +msgid "Otherwise, if the sequence pattern is variable-length:" +msgstr "" + +#: reference/compound_stmts.rst:924 +msgid "" +"If the length of the subject sequence is less than the number of non-star " +"subpatterns, the sequence pattern fails." +msgstr "" + +#: reference/compound_stmts.rst:927 +msgid "" +"The leading non-star subpatterns are matched to their corresponding items as " +"for fixed-length sequences." +msgstr "" + +#: reference/compound_stmts.rst:930 +msgid "" +"If the previous step succeeds, the star subpattern matches a list formed of " +"the remaining subject items, excluding the remaining items corresponding to " +"non-star subpatterns following the star subpattern." +msgstr "" + +#: reference/compound_stmts.rst:934 +msgid "" +"Remaining non-star subpatterns are matched to their corresponding subject " +"items, as for a fixed-length sequence." +msgstr "" + +#: reference/compound_stmts.rst:937 +msgid "" +"The length of the subject sequence is obtained via :func:`len` (i.e. via " +"the :meth:`__len__` protocol). This length may be cached by the interpreter " +"in a similar manner as :ref:`value patterns `." +msgstr "" + +#: reference/compound_stmts.rst:943 +msgid "" +"In simple terms ``[P1, P2, P3,`` ... ``, P]`` matches only if all the " +"following happens:" +msgstr "" + +#: reference/compound_stmts.rst:946 +msgid "check ```` is a sequence" +msgstr "" + +#: reference/compound_stmts.rst:947 +msgid "``len(subject) == ``" +msgstr "" + +#: reference/compound_stmts.rst:948 +msgid "" +"``P1`` matches ``[0]`` (note that this match can also bind names)" +msgstr "" + +#: reference/compound_stmts.rst:949 +msgid "" +"``P2`` matches ``[1]`` (note that this match can also bind names)" +msgstr "" + +#: reference/compound_stmts.rst:950 +msgid "... and so on for the corresponding pattern/element." +msgstr "" + +#: reference/compound_stmts.rst:955 +msgid "Mapping Patterns" +msgstr "" + +#: reference/compound_stmts.rst:957 +msgid "" +"A mapping pattern contains one or more key-value patterns. The syntax is " +"similar to the construction of a dictionary. Syntax:" +msgstr "" + +#: reference/compound_stmts.rst:968 +msgid "" +"At most one double star pattern may be in a mapping pattern. The double " +"star pattern must be the last subpattern in the mapping pattern." +msgstr "" + +#: reference/compound_stmts.rst:971 +msgid "" +"Duplicate keys in mapping patterns are disallowed. Duplicate literal keys " +"will raise a :exc:`SyntaxError`. Two keys that otherwise have the same value " +"will raise a :exc:`ValueError` at runtime." +msgstr "" + +#: reference/compound_stmts.rst:975 reference/compound_stmts.rst:1020 +msgid "" +"The following is the logical flow for matching a mapping pattern against a " +"subject value:" +msgstr "" + +#: reference/compound_stmts.rst:978 +msgid "If the subject value is not a mapping [#]_,the mapping pattern fails." +msgstr "" + +#: reference/compound_stmts.rst:980 +msgid "" +"If every key given in the mapping pattern is present in the subject mapping, " +"and the pattern for each key matches the corresponding item of the subject " +"mapping, the mapping pattern succeeds." +msgstr "" + +#: reference/compound_stmts.rst:984 +msgid "" +"If duplicate keys are detected in the mapping pattern, the pattern is " +"considered invalid. A :exc:`SyntaxError` is raised for duplicate literal " +"values; or a :exc:`ValueError` for named keys of the same value." +msgstr "" + +#: reference/compound_stmts.rst:988 +msgid "" +"Key-value pairs are matched using the two-argument form of the mapping " +"subject's ``get()`` method. Matched key-value pairs must already be present " +"in the mapping, and not created on-the-fly via :meth:`__missing__` or :meth:" +"`__getitem__`." +msgstr "" + +#: reference/compound_stmts.rst:993 +msgid "" +"In simple terms ``{KEY1: P1, KEY2: P2, ... }`` matches only if all the " +"following happens:" +msgstr "" + +#: reference/compound_stmts.rst:996 +msgid "check ```` is a mapping" +msgstr "" + +#: reference/compound_stmts.rst:997 +msgid "``KEY1 in ``" +msgstr "" + +#: reference/compound_stmts.rst:998 +msgid "``P1`` matches ``[KEY1]``" +msgstr "" + +#: reference/compound_stmts.rst:999 +msgid "... and so on for the corresponding KEY/pattern pair." +msgstr "" + +#: reference/compound_stmts.rst:1005 +msgid "Class Patterns" +msgstr "" + +#: reference/compound_stmts.rst:1007 +msgid "" +"A class pattern represents a class and its positional and keyword arguments " +"(if any). Syntax:" +msgstr "" + +#: reference/compound_stmts.rst:1018 +msgid "The same keyword should not be repeated in class patterns." +msgstr "" + +#: reference/compound_stmts.rst:1023 +msgid "" +"If ``name_or_attr`` is not an instance of the builtin :class:`type` , raise :" +"exc:`TypeError`." +msgstr "" + +#: reference/compound_stmts.rst:1026 +msgid "" +"If the subject value is not an instance of ``name_or_attr`` (tested via :" +"func:`isinstance`), the class pattern fails." +msgstr "" + +#: reference/compound_stmts.rst:1029 +msgid "" +"If no pattern arguments are present, the pattern succeeds. Otherwise, the " +"subsequent steps depend on whether keyword or positional argument patterns " +"are present." +msgstr "" + +#: reference/compound_stmts.rst:1033 +msgid "" +"For a number of built-in types (specified below), a single positional " +"subpattern is accepted which will match the entire subject; for these types " +"keyword patterns also work as for other types." +msgstr "" + +#: reference/compound_stmts.rst:1037 +msgid "" +"If only keyword patterns are present, they are processed as follows, one by " +"one:" +msgstr "" + +#: reference/compound_stmts.rst:1040 +msgid "I. The keyword is looked up as an attribute on the subject." +msgstr "" + +#: reference/compound_stmts.rst:1042 +msgid "" +"If this raises an exception other than :exc:`AttributeError`, the exception " +"bubbles up." +msgstr "" + +#: reference/compound_stmts.rst:1045 +msgid "If this raises :exc:`AttributeError`, the class pattern has failed." +msgstr "" + +#: reference/compound_stmts.rst:1047 +msgid "" +"Else, the subpattern associated with the keyword pattern is matched against " +"the subject's attribute value. If this fails, the class pattern fails; if " +"this succeeds, the match proceeds to the next keyword." +msgstr "" + +#: reference/compound_stmts.rst:1052 +msgid "II. If all keyword patterns succeed, the class pattern succeeds." +msgstr "" + +#: reference/compound_stmts.rst:1054 +msgid "" +"If any positional patterns are present, they are converted to keyword " +"patterns using the :data:`~object.__match_args__` attribute on the class " +"``name_or_attr`` before matching:" +msgstr "" + +#: reference/compound_stmts.rst:1058 +msgid "" +"I. The equivalent of ``getattr(cls, \"__match_args__\", ())`` is called." +msgstr "" + +#: reference/compound_stmts.rst:1060 +msgid "If this raises an exception, the exception bubbles up." +msgstr "" + +#: reference/compound_stmts.rst:1062 +msgid "" +"If the returned value is not a tuple, the conversion fails and :exc:" +"`TypeError` is raised." +msgstr "" + +#: reference/compound_stmts.rst:1065 +msgid "" +"If there are more positional patterns than ``len(cls.__match_args__)``, :exc:" +"`TypeError` is raised." +msgstr "" + +#: reference/compound_stmts.rst:1068 +msgid "" +"Otherwise, positional pattern ``i`` is converted to a keyword pattern using " +"``__match_args__[i]`` as the keyword. ``__match_args__[i]`` must be a " +"string; if not :exc:`TypeError` is raised." +msgstr "" + +#: reference/compound_stmts.rst:1072 +msgid "If there are duplicate keywords, :exc:`TypeError` is raised." +msgstr "" + +#: reference/compound_stmts.rst:1074 +msgid ":ref:`class-pattern-matching`" +msgstr "" + +#: reference/compound_stmts.rst:1077 +msgid "" +"II. Once all positional patterns have been converted to keyword patterns," +msgstr "" + +#: reference/compound_stmts.rst:1077 +msgid "the match proceeds as if there were only keyword patterns." +msgstr "" + +#: reference/compound_stmts.rst:1079 +msgid "" +"For the following built-in types the handling of positional subpatterns is " +"different:" +msgstr "" + +#: reference/compound_stmts.rst:1082 +msgid ":class:`bool`" +msgstr "" + +#: reference/compound_stmts.rst:1083 +msgid ":class:`bytearray`" +msgstr "" + +#: reference/compound_stmts.rst:1084 +msgid ":class:`bytes`" +msgstr "" + +#: reference/compound_stmts.rst:1085 +msgid ":class:`dict`" +msgstr "" + +#: reference/compound_stmts.rst:1086 +msgid ":class:`float`" +msgstr "" + +#: reference/compound_stmts.rst:1087 +msgid ":class:`frozenset`" +msgstr "" + +#: reference/compound_stmts.rst:1088 +msgid ":class:`int`" +msgstr "" + +#: reference/compound_stmts.rst:1089 reference/compound_stmts.rst:1540 +msgid ":class:`list`" +msgstr "" + +#: reference/compound_stmts.rst:1090 +msgid ":class:`set`" +msgstr "" + +#: reference/compound_stmts.rst:1091 +msgid ":class:`str`" +msgstr "" + +#: reference/compound_stmts.rst:1092 reference/compound_stmts.rst:1543 +msgid ":class:`tuple`" +msgstr "" + +#: reference/compound_stmts.rst:1094 +msgid "" +"These classes accept a single positional argument, and the pattern there is " +"matched against the whole object rather than an attribute. For example " +"``int(0|1)`` matches the value ``0``, but not the values ``0.0`` or " +"``False``." +msgstr "" + +#: reference/compound_stmts.rst:1098 +msgid "" +"In simple terms ``CLS(P1, attr=P2)`` matches only if the following happens:" +msgstr "" + +#: reference/compound_stmts.rst:1100 +msgid "``isinstance(, CLS)``" +msgstr "" + +#: reference/compound_stmts.rst:1101 +msgid "convert ``P1`` to a keyword pattern using ``CLS.__match_args__``" +msgstr "" + +#: reference/compound_stmts.rst:1103 +msgid "For each keyword argument ``attr=P2``:" +msgstr "" + +#: reference/compound_stmts.rst:1103 +msgid "``hasattr(, \"attr\")``" +msgstr "" + +#: reference/compound_stmts.rst:1104 +msgid "``P2`` matches ``.attr``" +msgstr "" + +#: reference/compound_stmts.rst:1105 +msgid "... and so on for the corresponding keyword argument/pattern pair." +msgstr "" + +#: reference/compound_stmts.rst:1120 msgid "Function definitions" msgstr "Définition de fonctions" -#: reference/compound_stmts.rst:505 +#: reference/compound_stmts.rst:1135 msgid "" "A function definition defines a user-defined function object (see section :" "ref:`types`):" @@ -659,7 +1515,7 @@ msgstr "" "Une définition de fonction définit un objet fonction allogène (voir la " "section :ref:`types`) :" -#: reference/compound_stmts.rst:524 +#: reference/compound_stmts.rst:1154 msgid "" "A function definition is an executable statement. Its execution binds the " "function name in the current local namespace to a function object (a wrapper " @@ -674,7 +1530,7 @@ msgstr "" "globaux courant comme espace des noms globaux à utiliser lorsque la fonction " "est appelée." -#: reference/compound_stmts.rst:530 +#: reference/compound_stmts.rst:1160 msgid "" "The function definition does not execute the function body; this gets " "executed only when the function is called. [#]_" @@ -682,7 +1538,7 @@ msgstr "" "La définition de la fonction n'exécute pas le corps de la fonction ; elle " "n'est exécutée que lorsque la fonction est appelée. [#]_" -#: reference/compound_stmts.rst:536 +#: reference/compound_stmts.rst:1166 msgid "" "A function definition may be wrapped by one or more :term:`decorator` " "expressions. Decorator expressions are evaluated when the function is " @@ -701,11 +1557,11 @@ msgstr "" "décorateurs, ils sont appliqués par imbrication ; par exemple, le code " "suivant ::" -#: reference/compound_stmts.rst:547 reference/compound_stmts.rst:724 +#: reference/compound_stmts.rst:1177 reference/compound_stmts.rst:1354 msgid "is roughly equivalent to ::" msgstr "est à peu près équivalent à ::" -#: reference/compound_stmts.rst:552 +#: reference/compound_stmts.rst:1182 msgid "" "except that the original function is not temporarily bound to the name " "``func``." @@ -713,7 +1569,7 @@ msgstr "" "sauf que la fonction originale n'est pas temporairement liée au nom ``func``." # Pas de majuscule : ok. -#: reference/compound_stmts.rst:554 +#: reference/compound_stmts.rst:1184 msgid "" "Functions may be decorated with any valid :token:`assignment_expression`. " "Previously, the grammar was much more restrictive; see :pep:`614` for " @@ -724,7 +1580,7 @@ msgstr "" "était beaucoup plus restrictive ; voir la :pep:`614` pour obtenir les " "détails." -#: reference/compound_stmts.rst:564 +#: reference/compound_stmts.rst:1194 msgid "" "When one or more :term:`parameters ` have the form *parameter* " "``=`` *expression*, the function is said to have \"default parameter values." @@ -743,17 +1599,18 @@ msgstr "" "une valeur par défaut — ceci est une restriction syntaxique qui n'est pas " "exprimée dans la grammaire." -#: reference/compound_stmts.rst:572 +#: reference/compound_stmts.rst:1202 +#, fuzzy msgid "" "**Default parameter values are evaluated from left to right when the " "function definition is executed.** This means that the expression is " "evaluated once, when the function is defined, and that the same \"pre-" "computed\" value is used for each call. This is especially important to " -"understand when a default parameter is a mutable object, such as a list or a " -"dictionary: if the function modifies the object (e.g. by appending an item " -"to a list), the default value is in effect modified. This is generally not " -"what was intended. A way around this is to use ``None`` as the default, and " -"explicitly test for it in the body of the function, e.g.::" +"understand when a default parameter value is a mutable object, such as a " +"list or a dictionary: if the function modifies the object (e.g. by appending " +"an item to a list), the default parameter value is in effect modified. This " +"is generally not what was intended. A way around this is to use ``None`` as " +"the default, and explicitly test for it in the body of the function, e.g.::" msgstr "" "**Les valeurs par défaut des paramètres sont évaluées de la gauche vers la " "droite quand la définition de la fonction est exécutée**. Cela signifie que " @@ -766,7 +1623,7 @@ msgstr "" "d'éviter cet écueil est d'utiliser ``None`` par défaut et de tester " "explicitement la valeur dans le corps de la fonction. Par exemple ::" -#: reference/compound_stmts.rst:593 +#: reference/compound_stmts.rst:1223 msgid "" "Function call semantics are described in more detail in section :ref:" "`calls`. A function call always assigns values to all parameters mentioned " @@ -795,7 +1652,7 @@ msgstr "" "passés qu'en utilisant des arguments par mot-clé. Au contraire, ceux avant " "``/`` ne peuvent être passés qu'avec des arguments positionnels." -#: reference/compound_stmts.rst:605 +#: reference/compound_stmts.rst:1235 msgid "" "The ``/`` function parameter syntax may be used to indicate positional-only " "parameters. See :pep:`570` for details." @@ -803,7 +1660,7 @@ msgstr "" "ajout de la syntaxe avec ``/`` pour indiquer les paramètre exclusivement " "positionnels (voir la :pep:`570`)." -#: reference/compound_stmts.rst:614 +#: reference/compound_stmts.rst:1244 msgid "" "Parameters may have an :term:`annotation ` of the form " "\"``: expression``\" following the parameter name. Any parameter may have " @@ -835,7 +1692,7 @@ msgstr "" "cas, les annotations peuvent être interprétées dans un ordre différent de " "l'ordre dans lequel elles apparaissent dans le fichier." -#: reference/compound_stmts.rst:629 +#: reference/compound_stmts.rst:1259 msgid "" "It is also possible to create anonymous functions (functions not bound to a " "name), for immediate use in expressions. This uses lambda expressions, " @@ -856,7 +1713,7 @@ msgstr "" "en fait plus puissante puisqu'elle permet l'exécution de plusieurs " "instructions et les annotations." -#: reference/compound_stmts.rst:637 +#: reference/compound_stmts.rst:1267 msgid "" "**Programmer's note:** Functions are first-class objects. A \"``def``\" " "statement executed inside a function definition defines a local function " @@ -871,29 +1728,29 @@ msgstr "" "ont accès aux variables locales de la fonction contenant le \"``def``\". " "Voir la section :ref:`naming` pour plus de détails." -#: reference/compound_stmts.rst:646 +#: reference/compound_stmts.rst:1276 msgid ":pep:`3107` - Function Annotations" msgstr ":pep:`3107` — Annotations de fonctions" -#: reference/compound_stmts.rst:646 +#: reference/compound_stmts.rst:1276 msgid "The original specification for function annotations." msgstr "La spécification originale pour les annotations de fonctions." -#: reference/compound_stmts.rst:649 +#: reference/compound_stmts.rst:1279 msgid ":pep:`484` - Type Hints" msgstr ":pep:`484` — Indications de types" -#: reference/compound_stmts.rst:649 +#: reference/compound_stmts.rst:1279 msgid "Definition of a standard meaning for annotations: type hints." msgstr "" "Définition de la signification standard pour les annotations : indications " "de types." -#: reference/compound_stmts.rst:653 +#: reference/compound_stmts.rst:1283 msgid ":pep:`526` - Syntax for Variable Annotations" msgstr ":pep:`526` — Syntaxe pour les annotations de variables" -#: reference/compound_stmts.rst:652 +#: reference/compound_stmts.rst:1282 msgid "" "Ability to type hint variable declarations, including class variables and " "instance variables" @@ -901,11 +1758,11 @@ msgstr "" "Capacité d'indiquer des types pour les déclarations de variables, y compris " "les variables de classes et les variables d'instances" -#: reference/compound_stmts.rst:656 +#: reference/compound_stmts.rst:1286 msgid ":pep:`563` - Postponed Evaluation of Annotations" msgstr ":pep:`563` — Évaluation différée des annotations" -#: reference/compound_stmts.rst:656 +#: reference/compound_stmts.rst:1286 msgid "" "Support for forward references within annotations by preserving annotations " "in a string form at runtime instead of eager evaluation." @@ -914,17 +1771,17 @@ msgstr "" "préservant les annotations sous forme de chaînes à l'exécution au lieu d'une " "évaluation directe." -#: reference/compound_stmts.rst:663 +#: reference/compound_stmts.rst:1293 msgid "Class definitions" msgstr "Définition de classes" -#: reference/compound_stmts.rst:678 +#: reference/compound_stmts.rst:1308 msgid "A class definition defines a class object (see section :ref:`types`):" msgstr "" "Une définition de classe définit un objet classe (voir la section :ref:" "`types`) :" -#: reference/compound_stmts.rst:685 +#: reference/compound_stmts.rst:1315 msgid "" "A class definition is an executable statement. The inheritance list usually " "gives a list of base classes (see :ref:`metaclasses` for more advanced " @@ -940,11 +1797,11 @@ msgstr "" "classes sans liste d'héritage héritent, par défaut, de la classe de base :" "class:`object` ; d'où ::" -#: reference/compound_stmts.rst:694 +#: reference/compound_stmts.rst:1324 msgid "is equivalent to ::" msgstr "est équivalente à ::" -#: reference/compound_stmts.rst:699 +#: reference/compound_stmts.rst:1329 msgid "" "The class's suite is then executed in a new execution frame (see :ref:" "`naming`), using a newly created local namespace and the original global " @@ -965,7 +1822,7 @@ msgstr "" "de nommage sauvegardé comme dictionnaire des attributs. Le nom de classe est " "lié à l'objet classe dans l'espace de nommage local original." -#: reference/compound_stmts.rst:708 +#: reference/compound_stmts.rst:1338 msgid "" "The order in which attributes are defined in the class body is preserved in " "the new class's ``__dict__``. Note that this is reliable only right after " @@ -977,7 +1834,7 @@ msgstr "" "n'est fiable que juste après la création de la classe et seulement pour les " "classes qui ont été définies en utilisant la syntaxe de définition." -#: reference/compound_stmts.rst:713 +#: reference/compound_stmts.rst:1343 msgid "" "Class creation can be customized heavily using :ref:`metaclasses " "`." @@ -985,13 +1842,13 @@ msgstr "" "La création de classes peut être fortement personnalisée en utilisant les :" "ref:`métaclasses `." -#: reference/compound_stmts.rst:718 +#: reference/compound_stmts.rst:1348 msgid "Classes can also be decorated: just like when decorating functions, ::" msgstr "" "Les classes peuvent aussi être décorées : comme pour les décorateurs de " "fonctions,::" -#: reference/compound_stmts.rst:729 +#: reference/compound_stmts.rst:1359 msgid "" "The evaluation rules for the decorator expressions are the same as for " "function decorators. The result is then bound to the class name." @@ -1000,7 +1857,7 @@ msgstr "" "que pour les décorateurs de fonctions. Le résultat est alors lié au nom de " "la classe." -#: reference/compound_stmts.rst:732 +#: reference/compound_stmts.rst:1362 msgid "" "Classes may be decorated with any valid :token:`assignment_expression`. " "Previously, the grammar was much more restrictive; see :pep:`614` for " @@ -1010,7 +1867,7 @@ msgstr "" "` valide. Auparavant, la grammaire était beaucoup " "plus restrictive ; voir la :pep:`614` pour obtenir les détails." -#: reference/compound_stmts.rst:737 +#: reference/compound_stmts.rst:1367 msgid "" "**Programmer's note:** Variables defined in the class definition are class " "attributes; they are shared by instances. Instance attributes can be set in " @@ -1034,11 +1891,11 @@ msgstr "" "peuvent être utilisés pour créer des variables d'instances avec des détails " "d'implémentation différents." -#: reference/compound_stmts.rst:752 +#: reference/compound_stmts.rst:1382 msgid ":pep:`3115` - Metaclasses in Python 3000" msgstr ":pep:`3115` — Métaclasses dans Python 3000" -#: reference/compound_stmts.rst:750 +#: reference/compound_stmts.rst:1380 msgid "" "The proposal that changed the declaration of metaclasses to the current " "syntax, and the semantics for how classes with metaclasses are constructed." @@ -1047,11 +1904,11 @@ msgstr "" "actuelle, et la sémantique pour la façon dont les classes avec métaclasses " "sont construites." -#: reference/compound_stmts.rst:755 +#: reference/compound_stmts.rst:1385 msgid ":pep:`3129` - Class Decorators" msgstr ":pep:`3129` — Décorateurs de classes" -#: reference/compound_stmts.rst:755 +#: reference/compound_stmts.rst:1385 msgid "" "The proposal that added class decorators. Function and method decorators " "were introduced in :pep:`318`." @@ -1059,21 +1916,21 @@ msgstr "" "La proposition qui a ajouté des décorateurs de classe. Les décorateurs de " "fonction et de méthode ont été introduits dans :pep:`318`." -#: reference/compound_stmts.rst:762 +#: reference/compound_stmts.rst:1392 msgid "Coroutines" msgstr "Coroutines" -#: reference/compound_stmts.rst:770 +#: reference/compound_stmts.rst:1400 msgid "Coroutine function definition" msgstr "Définition de fonctions coroutines" -#: reference/compound_stmts.rst:780 +#: reference/compound_stmts.rst:1410 +#, fuzzy msgid "" "Execution of Python coroutines can be suspended and resumed at many points " -"(see :term:`coroutine`). Inside the body of a coroutine function, ``await`` " -"and ``async`` identifiers become reserved keywords; :keyword:`await` " -"expressions, :keyword:`async for` and :keyword:`async with` can only be used " -"in coroutine function bodies." +"(see :term:`coroutine`). :keyword:`await` expressions, :keyword:`async for` " +"and :keyword:`async with` can only be used in the body of a coroutine " +"function." msgstr "" "L'exécution de coroutines Python peut être suspendue et reprise à plusieurs " "endroits (voir :term:`coroutine`). Dans le corps d'une coroutine, tout " @@ -1081,7 +1938,7 @@ msgstr "" "expressions :keyword:`await`, :keyword:`async for` et :keyword:`async with` " "ne peuvent être utilisées que dans les corps de coroutines." -#: reference/compound_stmts.rst:786 +#: reference/compound_stmts.rst:1414 msgid "" "Functions defined with ``async def`` syntax are always coroutine functions, " "even if they do not contain ``await`` or ``async`` keywords." @@ -1090,7 +1947,7 @@ msgstr "" "fonctions coroutines, même si elles ne contiennent aucun mot-clé ``await`` " "ou ``async``." -#: reference/compound_stmts.rst:789 +#: reference/compound_stmts.rst:1417 msgid "" "It is a :exc:`SyntaxError` to use a ``yield from`` expression inside the " "body of a coroutine function." @@ -1098,15 +1955,21 @@ msgstr "" "C'est une :exc:`SyntaxError` d'utiliser une expression ``yield from`` dans " "une coroutine." -#: reference/compound_stmts.rst:792 +#: reference/compound_stmts.rst:1420 msgid "An example of a coroutine function::" msgstr "Un exemple de fonction coroutine ::" -#: reference/compound_stmts.rst:803 +#: reference/compound_stmts.rst:1426 +msgid "" +"``await`` and ``async`` are now keywords; previously they were only treated " +"as such inside the body of a coroutine function." +msgstr "" + +#: reference/compound_stmts.rst:1434 msgid "The :keyword:`!async for` statement" msgstr "L'instruction :keyword:`!async for`" -#: reference/compound_stmts.rst:808 +#: reference/compound_stmts.rst:1439 msgid "" "An :term:`asynchronous iterable` provides an ``__aiter__`` method that " "directly returns an :term:`asynchronous iterator`, which can call " @@ -1117,7 +1980,7 @@ msgstr "" "`, celui-ci pouvant appeler du code asynchrone dans " "sa méthode ``__anext__``." -#: reference/compound_stmts.rst:812 +#: reference/compound_stmts.rst:1443 msgid "" "The ``async for`` statement allows convenient iteration over asynchronous " "iterables." @@ -1125,16 +1988,16 @@ msgstr "" "L'instruction ``async for`` permet d'itérer facilement sur des itérables " "asynchrones." -#: reference/compound_stmts.rst:822 +#: reference/compound_stmts.rst:1453 msgid "Is semantically equivalent to::" msgstr "est sémantiquement équivalent à ::" -#: reference/compound_stmts.rst:838 +#: reference/compound_stmts.rst:1469 msgid "See also :meth:`__aiter__` and :meth:`__anext__` for details." msgstr "" "Voir aussi :meth:`__aiter__` et :meth:`__anext__` pour plus de détails." -#: reference/compound_stmts.rst:840 +#: reference/compound_stmts.rst:1471 msgid "" "It is a :exc:`SyntaxError` to use an ``async for`` statement outside the " "body of a coroutine function." @@ -1142,11 +2005,11 @@ msgstr "" "C'est une :exc:`SyntaxError` d'utiliser une instruction ``async for`` en " "dehors d'une fonction coroutine." -#: reference/compound_stmts.rst:848 +#: reference/compound_stmts.rst:1479 msgid "The :keyword:`!async with` statement" msgstr "L'instruction :keyword:`!async with`" -#: reference/compound_stmts.rst:853 +#: reference/compound_stmts.rst:1484 msgid "" "An :term:`asynchronous context manager` is a :term:`context manager` that is " "able to suspend execution in its *enter* and *exit* methods." @@ -1155,12 +2018,12 @@ msgstr "" "manager>` est un :term:`gestionnaire de contexte ` qui est " "capable de suspendre l'exécution dans ses méthodes *enter* et *exit*." -#: reference/compound_stmts.rst:880 +#: reference/compound_stmts.rst:1511 msgid "See also :meth:`__aenter__` and :meth:`__aexit__` for details." msgstr "" "Voir aussi :meth:`__aenter__` et :meth:`__aexit__` pour plus de détails." -#: reference/compound_stmts.rst:882 +#: reference/compound_stmts.rst:1513 msgid "" "It is a :exc:`SyntaxError` to use an ``async with`` statement outside the " "body of a coroutine function." @@ -1168,11 +2031,11 @@ msgstr "" "C'est une :exc:`SyntaxError` d'utiliser l'instruction ``async with`` en " "dehors d'une fonction coroutine." -#: reference/compound_stmts.rst:888 +#: reference/compound_stmts.rst:1519 msgid ":pep:`492` - Coroutines with async and await syntax" msgstr ":pep:`492` — Coroutines avec les syntaxes *async* et *await*" -#: reference/compound_stmts.rst:888 +#: reference/compound_stmts.rst:1519 msgid "" "The proposal that made coroutines a proper standalone concept in Python, and " "added supporting syntax." @@ -1180,11 +2043,11 @@ msgstr "" "La proposition qui a fait que les coroutines soient un concept propre en " "Python, et a ajouté la syntaxe de prise en charge de celles-ci." -#: reference/compound_stmts.rst:893 +#: reference/compound_stmts.rst:1524 msgid "Footnotes" msgstr "Notes" -#: reference/compound_stmts.rst:894 +#: reference/compound_stmts.rst:1525 msgid "" "The exception is propagated to the invocation stack unless there is a :" "keyword:`finally` clause which happens to raise another exception. That new " @@ -1195,7 +2058,79 @@ msgstr "" "perte de l'ancienne exception. Cette nouvelle exception entraîne la perte " "pure et simple de l'ancienne." -#: reference/compound_stmts.rst:898 +#: reference/compound_stmts.rst:1529 +msgid "In pattern matching, a sequence is defined as one of the following:" +msgstr "" + +#: reference/compound_stmts.rst:1531 +msgid "a class that inherits from :class:`collections.abc.Sequence`" +msgstr "" + +#: reference/compound_stmts.rst:1532 +msgid "" +"a Python class that has been registered as :class:`collections.abc.Sequence`" +msgstr "" + +#: reference/compound_stmts.rst:1533 +msgid "" +"a builtin class that has its (CPython) :data:`Py_TPFLAGS_SEQUENCE` bit set" +msgstr "" + +#: reference/compound_stmts.rst:1534 reference/compound_stmts.rst:1553 +msgid "a class that inherits from any of the above" +msgstr "" + +#: reference/compound_stmts.rst:1536 +msgid "The following standard library classes are sequences:" +msgstr "" + +#: reference/compound_stmts.rst:1538 +msgid ":class:`array.array`" +msgstr "" + +#: reference/compound_stmts.rst:1539 +msgid ":class:`collections.deque`" +msgstr "" + +#: reference/compound_stmts.rst:1541 +msgid ":class:`memoryview`" +msgstr "" + +#: reference/compound_stmts.rst:1542 +msgid ":class:`range`" +msgstr "" + +#: reference/compound_stmts.rst:1545 +msgid "" +"Subject values of type ``str``, ``bytes``, and ``bytearray`` do not match " +"sequence patterns." +msgstr "" + +#: reference/compound_stmts.rst:1548 +msgid "In pattern matching, a mapping is defined as one of the following:" +msgstr "" + +#: reference/compound_stmts.rst:1550 +msgid "a class that inherits from :class:`collections.abc.Mapping`" +msgstr "" + +#: reference/compound_stmts.rst:1551 +msgid "" +"a Python class that has been registered as :class:`collections.abc.Mapping`" +msgstr "" + +#: reference/compound_stmts.rst:1552 +msgid "" +"a builtin class that has its (CPython) :data:`Py_TPFLAGS_MAPPING` bit set" +msgstr "" + +#: reference/compound_stmts.rst:1555 +msgid "" +"The standard library classes :class:`dict` and :class:`types." +"MappingProxyType` are mappings." +msgstr "" + +#: reference/compound_stmts.rst:1558 msgid "" "A string literal appearing as the first statement in the function body is " "transformed into the function's ``__doc__`` attribute and therefore the " @@ -1205,7 +2140,7 @@ msgstr "" "de la fonction est transformée en attribut ``__doc__`` de la fonction et " "donc en :term:`docstring` de la fonction." -#: reference/compound_stmts.rst:902 +#: reference/compound_stmts.rst:1562 msgid "" "A string literal appearing as the first statement in the class body is " "transformed into the namespace's ``__doc__`` item and therefore the class's :" diff --git a/reference/datamodel.po b/reference/datamodel.po index c183b14ca..56c4be27c 100644 --- a/reference/datamodel.po +++ b/reference/datamodel.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-07 17:05+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -839,7 +839,7 @@ msgstr "" "conservé, mais considéré comme un détail d’implémentation et non comme une " "garantie du langage." -#: reference/datamodel.rst:722 +#: reference/datamodel.rst:725 msgid "Callable types" msgstr "Types appelables" @@ -851,7 +851,7 @@ msgstr "" "Ce sont les types sur lesquels on peut faire un appel de fonction (lisez la " "section :ref:`calls`) :" -#: reference/datamodel.rst:576 +#: reference/datamodel.rst:579 msgid "User-defined functions" msgstr "Fonctions allogènes" @@ -867,7 +867,7 @@ msgstr "" "doit être appelé avec une liste d'arguments contenant le même nombre " "d'éléments que la liste des paramètres formels de la fonction." -#: reference/datamodel.rst:487 +#: reference/datamodel.rst:840 msgid "Special attributes:" msgstr "Attributs spéciaux :" @@ -879,7 +879,7 @@ msgstr "Attribut" msgid "Meaning" msgstr "Signification" -#: reference/datamodel.rst:507 +#: reference/datamodel.rst:761 reference/datamodel.rst:856 msgid ":attr:`__doc__`" msgstr ":attr:`__doc__`" @@ -893,7 +893,7 @@ msgstr "" #: reference/datamodel.rst:512 reference/datamodel.rst:520 #: reference/datamodel.rst:530 reference/datamodel.rst:551 -#: reference/datamodel.rst:558 +#: reference/datamodel.rst:561 msgid "Writable" msgstr "Accessible en écriture" @@ -913,7 +913,7 @@ msgstr ":attr:`~definition.\\ __qualname__`" msgid "The function's :term:`qualified name`." msgstr ":term:`Nom qualifié ` de la fonction." -#: reference/datamodel.rst:520 +#: reference/datamodel.rst:846 msgid ":attr:`__module__`" msgstr ":attr:`__module__`" @@ -962,7 +962,7 @@ msgstr "" msgid "Read-only" msgstr "Accessible en lecture seule" -#: reference/datamodel.rst:540 +#: reference/datamodel.rst:849 msgid ":attr:`~object.__dict__`" msgstr ":attr:`~object.__dict__`" @@ -983,14 +983,17 @@ msgstr "" "libre de la fonction. Voir ci-dessous pour les informations relatives à " "l'attribut ``cell_contents``." -#: reference/datamodel.rst:551 +#: reference/datamodel.rst:776 reference/datamodel.rst:863 msgid ":attr:`__annotations__`" msgstr ":attr:`__annotations__`" #: reference/datamodel.rst:551 +#, fuzzy msgid "" "A dict containing annotations of parameters. The keys of the dict are the " -"parameter names, and ``'return'`` for the return annotation, if provided." +"parameter names, and ``'return'`` for the return annotation, if provided. " +"For more information on working with this attribute, see :ref:`annotations-" +"howto`." msgstr "" "Dictionnaire contenant les annotations des paramètres. Les clés du " "dictionnaire sont les noms des paramètres et la clé ``\"return\"`` est " @@ -998,17 +1001,17 @@ msgstr "" "dictionnaire ne sont présentes que si les paramètres sont effectivement " "annotés." -#: reference/datamodel.rst:558 +#: reference/datamodel.rst:561 msgid ":attr:`__kwdefaults__`" msgstr ":attr:`__kwdefaults__`" -#: reference/datamodel.rst:558 +#: reference/datamodel.rst:561 msgid "A dict containing defaults for keyword-only parameters." msgstr "" "Dictionnaire contenant les valeurs par défaut pour les paramètres passés par " "mot-clé." -#: reference/datamodel.rst:562 +#: reference/datamodel.rst:565 msgid "" "Most of the attributes labelled \"Writable\" check the type of the assigned " "value." @@ -1016,7 +1019,7 @@ msgstr "" "La plupart des attributs étiquetés « Accessible en écriture » vérifient le " "type de la valeur qu'on leur assigne." -#: reference/datamodel.rst:564 +#: reference/datamodel.rst:567 msgid "" "Function objects also support getting and setting arbitrary attributes, " "which can be used, for example, to attach metadata to functions. Regular " @@ -1033,7 +1036,7 @@ msgstr "" "les fonctions définies par l'utilisateur. Les attributs de fonction pour les " "fonctions natives seront peut-être acceptés dans le futur.*" -#: reference/datamodel.rst:570 +#: reference/datamodel.rst:573 msgid "" "A cell object has the attribute ``cell_contents``. This can be used to get " "the value of the cell, as well as set the value." @@ -1041,7 +1044,7 @@ msgstr "" "Un objet cellule possède un attribut ``cell_contents``. Il peut être utilisé " "pour obtenir la valeur de la cellule et pour en définir la valeur." -#: reference/datamodel.rst:573 +#: reference/datamodel.rst:576 msgid "" "Additional information about a function's definition can be retrieved from " "its code object; see the description of internal types below. The :data:" @@ -1052,11 +1055,11 @@ msgstr "" "Le type :data:`cell ` est accessible dans le module :mod:" "`types`." -#: reference/datamodel.rst:639 +#: reference/datamodel.rst:642 msgid "Instance methods" msgstr "Méthodes d'instances" -#: reference/datamodel.rst:584 +#: reference/datamodel.rst:587 msgid "" "An instance method object combines a class, a class instance and any " "callable object (normally a user-defined function)." @@ -1064,7 +1067,7 @@ msgstr "" "Un objet méthode d'instance combine une classe, une instance de classe et " "tout objet appelable (normalement une fonction définie par l'utilisateur)." -#: reference/datamodel.rst:594 +#: reference/datamodel.rst:597 msgid "" "Special read-only attributes: :attr:`__self__` is the class instance " "object, :attr:`__func__` is the function object; :attr:`__doc__` is the " @@ -1080,7 +1083,7 @@ msgstr "" "__name__``) ; :attr:`__module__` est le nom du module où la méthode est " "définie ou ``None`` s'il n'est pas disponible." -#: reference/datamodel.rst:600 +#: reference/datamodel.rst:603 msgid "" "Methods also support accessing (but not setting) the arbitrary function " "attributes on the underlying function object." @@ -1088,7 +1091,7 @@ msgstr "" "Les méthodes savent aussi accéder (mais pas modifier) les attributs de la " "fonction de l'objet fonction sous-jacent." -#: reference/datamodel.rst:603 +#: reference/datamodel.rst:606 msgid "" "User-defined method objects may be created when getting an attribute of a " "class (perhaps via an instance of that class), if that attribute is a user-" @@ -1099,7 +1102,7 @@ msgstr "" "classe) si cet attribut est un objet fonction définie par l'utilisateur ou " "un objet méthode de classe." -#: reference/datamodel.rst:607 +#: reference/datamodel.rst:610 msgid "" "When an instance method object is created by retrieving a user-defined " "function object from a class via one of its instances, its :attr:`__self__` " @@ -1111,7 +1114,7 @@ msgstr "" "`__self__` est l'instance et l'objet méthode est réputé lié. Le nouvel " "attribut de la méthode :attr:`__func__` est l'objet fonction original." -#: reference/datamodel.rst:613 +#: reference/datamodel.rst:616 msgid "" "When an instance method object is created by retrieving a class method " "object from a class or instance, its :attr:`__self__` attribute is the class " @@ -1123,7 +1126,7 @@ msgstr "" "elle-même et son attribut :attr:`__func__` est l'objet fonction sous-jacent " "la méthode de classe." -#: reference/datamodel.rst:618 +#: reference/datamodel.rst:621 msgid "" "When an instance method object is called, the underlying function (:attr:" "`__func__`) is called, inserting the class instance (:attr:`__self__`) in " @@ -1138,7 +1141,7 @@ msgstr "" "et que ``x`` est une instance de :class:`C`, alors appeler ``x.f(1)`` est " "équivalent à appeler ``C.f(x, 1)``." -#: reference/datamodel.rst:625 +#: reference/datamodel.rst:628 msgid "" "When an instance method object is derived from a class method object, the " "\"class instance\" stored in :attr:`__self__` will actually be the class " @@ -1150,7 +1153,7 @@ msgstr "" "classe elle-même. Ainsi, appeler ``x.f(1)`` ou ``C.f(1)`` est équivalent à " "appeler ``f(C, 1)`` où ``f`` est la fonction sous-jacente." -#: reference/datamodel.rst:630 +#: reference/datamodel.rst:633 msgid "" "Note that the transformation from function object to instance method object " "happens each time the attribute is retrieved from the instance. In some " @@ -1173,11 +1176,11 @@ msgstr "" "classe ne sont pas converties en méthodes liées ; ceci n'a lieu que pour les " "fonctions qui sont attributs de la classe." -#: reference/datamodel.rst:654 +#: reference/datamodel.rst:657 msgid "Generator functions" msgstr "Fonctions générateurs" -#: reference/datamodel.rst:646 +#: reference/datamodel.rst:649 msgid "" "A function or method which uses the :keyword:`yield` statement (see section :" "ref:`yield`) is called a :dfn:`generator function`. Such a function, when " @@ -1199,11 +1202,11 @@ msgstr "" "exception :exc:`StopIteration` est levée et l'itérateur a atteint la fin de " "l'ensemble de valeurs qu'il peut renvoyer." -#: reference/datamodel.rst:664 +#: reference/datamodel.rst:667 msgid "Coroutine functions" msgstr "Fonctions coroutines" -#: reference/datamodel.rst:660 +#: reference/datamodel.rst:663 msgid "" "A function or method which is defined using :keyword:`async def` is called " "a :dfn:`coroutine function`. Such a function, when called, returns a :term:" @@ -1217,11 +1220,11 @@ msgstr "" "expressions :keyword:`await` ou :keyword:`async with` ou des instructions :" "keyword:`async for`. Voir également la section :ref:`coroutine-objects`." -#: reference/datamodel.rst:683 +#: reference/datamodel.rst:686 msgid "Asynchronous generator functions" msgstr "Fonctions générateurs asynchrones" -#: reference/datamodel.rst:671 +#: reference/datamodel.rst:674 msgid "" "A function or method which is defined using :keyword:`async def` and which " "uses the :keyword:`yield` statement is called a :dfn:`asynchronous generator " @@ -1235,7 +1238,7 @@ msgstr "" "itérateur asynchrone qui peut être utilisé dans des instructions :keyword:" "`async for` pour exécuter le corps de la fonction." -#: reference/datamodel.rst:677 +#: reference/datamodel.rst:680 msgid "" "Calling the asynchronous iterator's :meth:`aiterator.__anext__` method will " "return an :term:`awaitable` which when awaited will execute until it " @@ -1252,11 +1255,11 @@ msgstr "" "l'itérateur asynchrone a atteint la fin de l'ensemble des valeurs qu'il peut " "produire." -#: reference/datamodel.rst:698 +#: reference/datamodel.rst:701 msgid "Built-in functions" msgstr "Fonctions natives" -#: reference/datamodel.rst:691 +#: reference/datamodel.rst:694 msgid "" "A built-in function object is a wrapper around a C function. Examples of " "built-in functions are :func:`len` and :func:`math.sin` (:mod:`math` is a " @@ -1277,11 +1280,11 @@ msgstr "" "est le nom du module où la fonction est définie ou ``None`` s'il n'est pas " "disponible." -#: reference/datamodel.rst:710 +#: reference/datamodel.rst:713 msgid "Built-in methods" msgstr "Méthodes natives" -#: reference/datamodel.rst:706 +#: reference/datamodel.rst:709 msgid "" "This is really a different disguise of a built-in function, this time " "containing an object passed to the C function as an implicit extra " @@ -1295,11 +1298,11 @@ msgstr "" "liste). Dans ce cas, l'attribut spécial en lecture seule :attr:`__self__` " "est défini à l'objet *une_liste*." -#: reference/datamodel.rst:717 +#: reference/datamodel.rst:720 msgid "Classes" msgstr "Classes" -#: reference/datamodel.rst:713 +#: reference/datamodel.rst:716 msgid "" "Classes are callable. These objects normally act as factories for new " "instances of themselves, but variations are possible for class types that " @@ -1313,11 +1316,11 @@ msgstr "" "l'appel sont passés à :meth:`__new__` et, dans le cas classique, :meth:" "`__new__` initialise une nouvelle instance." -#: reference/datamodel.rst:722 +#: reference/datamodel.rst:725 msgid "Class Instances" msgstr "Instances de classe" -#: reference/datamodel.rst:720 +#: reference/datamodel.rst:723 msgid "" "Instances of arbitrary classes can be made callable by defining a :meth:" "`__call__` method in their class." @@ -1325,11 +1328,11 @@ msgstr "" "Les instances d'une classe peuvent devenir des appelables si vous définissez " "la méthode :meth:`__call__` de leur classe." -#: reference/datamodel.rst:772 +#: reference/datamodel.rst:788 msgid "Modules" msgstr "Modules" -#: reference/datamodel.rst:729 +#: reference/datamodel.rst:732 msgid "" "Modules are a basic organizational unit of Python code, and are created by " "the :ref:`import system ` as invoked either by the :keyword:" @@ -1354,7 +1357,7 @@ msgstr "" "le module (puisque celui-ci n'est plus nécessaire une fois l'initialisation " "terminée)." -#: reference/datamodel.rst:741 +#: reference/datamodel.rst:744 msgid "" "Attribute assignment updates the module's namespace dictionary, e.g., ``m.x " "= 1`` is equivalent to ``m.__dict__[\"x\"] = 1``." @@ -1363,18 +1366,41 @@ msgstr "" "du module, par exemple ``m.x = 1`` est équivalent à ``m.__dict__[\"x\"] = " "1``." -#: reference/datamodel.rst:751 +#: reference/datamodel.rst:754 +#, fuzzy +msgid "Predefined (writable) attributes:" +msgstr "Attributs spéciaux :" + +#: reference/datamodel.rst:757 +#, fuzzy +msgid ":attr:`__name__`" +msgstr ":attr:`__module__`" + +#: reference/datamodel.rst:757 +#, fuzzy +msgid "The module's name." +msgstr "Nom de la fonction." + +#: reference/datamodel.rst:760 +#, fuzzy +msgid "The module's documentation string, or ``None`` if unavailable." +msgstr "" +"Texte de documentation de la fonction ou ``None`` s'il n'en existe pas ; " +"n'est pas héritée par les sous-classes." + +#: reference/datamodel.rst:770 +#, fuzzy +msgid ":attr:`__file__`" +msgstr ":attr:`__module__`" + +#: reference/datamodel.rst:764 +#, fuzzy msgid "" -"Predefined (writable) attributes: :attr:`__name__` is the module's name; :" -"attr:`__doc__` is the module's documentation string, or ``None`` if " -"unavailable; :attr:`__annotations__` (optional) is a dictionary containing :" -"term:`variable annotations ` collected during module " -"body execution; :attr:`__file__` is the pathname of the file from which the " -"module was loaded, if it was loaded from a file. The :attr:`__file__` " -"attribute may be missing for certain types of modules, such as C modules " -"that are statically linked into the interpreter; for extension modules " -"loaded dynamically from a shared library, it is the pathname of the shared " -"library file." +"The pathname of the file from which the module was loaded, if it was loaded " +"from a file. The :attr:`__file__` attribute may be missing for certain types " +"of modules, such as C modules that are statically linked into the " +"interpreter. For extension modules loaded dynamically from a shared " +"library, it's the pathname of the shared library file." msgstr "" "Attributs prédéfinis (en lecture-écriture) : :attr:`__name__` est le nom du " "module ; :attr:`__doc__` est le texte de documentation du module (ou " @@ -1388,7 +1414,14 @@ msgstr "" "chargés dynamiquement à partir d'une bibliothèque partagée, c'est le chemin " "vers le fichier de la bibliothèque partagée." -#: reference/datamodel.rst:764 +#: reference/datamodel.rst:773 +msgid "" +"A dictionary containing :term:`variable annotations ` " +"collected during module body execution. For best practices on working with :" +"attr:`__annotations__`, please see :ref:`annotations-howto`." +msgstr "" + +#: reference/datamodel.rst:780 msgid "" "Special read-only attribute: :attr:`~object.__dict__` is the module's " "namespace as a dictionary object." @@ -1396,7 +1429,7 @@ msgstr "" "Attribut spécial en lecture seule : :attr:`~object.__dict__` est l'objet " "dictionnaire répertoriant l'espace de nommage du module." -#: reference/datamodel.rst:769 +#: reference/datamodel.rst:785 msgid "" "Because of the way CPython clears module dictionaries, the module dictionary " "will be cleared when the module falls out of scope even if the dictionary " @@ -1409,11 +1442,11 @@ msgstr "" "ceci, copiez le dictionnaire ou gardez le module dans votre champ de " "visibilité tant que vous souhaitez utiliser le dictionnaire directement." -#: reference/datamodel.rst:831 +#: reference/datamodel.rst:863 msgid "Custom classes" msgstr "Classes déclarées par le développeur" -#: reference/datamodel.rst:775 +#: reference/datamodel.rst:791 msgid "" "Custom class types are typically created by class definitions (see section :" "ref:`class`). A class has a namespace implemented by a dictionary object. " @@ -1444,7 +1477,7 @@ msgstr "" "*C3* utilisé par Python dans la documentation de la version 2.3 disponible " "sur https://www.python.org/download/releases/2.3/mro/." -#: reference/datamodel.rst:799 +#: reference/datamodel.rst:815 msgid "" "When a class attribute reference (for class :class:`C`, say) would yield a " "class method object, it is transformed into an instance method object whose :" @@ -1462,7 +1495,7 @@ msgstr "" "`descriptors` pour une autre manière dont les attributs d'une classe " "diffèrent de ceux réellement contenus dans son :attr:`~objet.__dict__`." -#: reference/datamodel.rst:809 +#: reference/datamodel.rst:825 msgid "" "Class attribute assignments update the class's dictionary, never the " "dictionary of a base class." @@ -1470,7 +1503,7 @@ msgstr "" "Les assignations d'un attribut de classe mettent à jour le dictionnaire de " "la classe, jamais le dictionnaire d'une classe de base." -#: reference/datamodel.rst:814 +#: reference/datamodel.rst:830 msgid "" "A class object can be called (see above) to yield a class instance (see " "below)." @@ -1478,32 +1511,58 @@ msgstr "" "Un objet classe peut être appelé (voir ci-dessus) pour produire une instance " "de classe (voir ci-dessous)." -#: reference/datamodel.rst:824 -msgid "" -"Special attributes: :attr:`~definition.__name__` is the class name; :attr:" -"`__module__` is the module name in which the class was defined; :attr:" -"`~object.__dict__` is the dictionary containing the class's namespace; :attr:" -"`~class.__bases__` is a tuple containing the base classes, in the order of " -"their occurrence in the base class list; :attr:`__doc__` is the class's " -"documentation string, or ``None`` if undefined; :attr:`__annotations__` " -"(optional) is a dictionary containing :term:`variable annotations ` collected during class body execution." -msgstr "" -"Attributs spéciaux : :attr:`~definition.__name__` est le nom de la classe ; :" -"attr:`__module__` est le nom du module dans lequel la classe est définie ; :" -"attr:`~object.__dict__` est le dictionnaire contenant l'espace de nommage de " -"la classe ; :attr:`~class.__bases__` est un *n*-uplet contenant les classes " -"de base, dans l'ordre d'apparition dans la liste des classes de base ; :attr:" -"`__doc__` est le texte de documentation de la classe (ou ``None`` s’il n’y " -"en a pas) ; :attr:`__annotations__` (optionnel) est un dictionnaire " -"contenant les :term:`annotations de variables ` " -"collectées durant l'exécution du corps de la classe." - -#: reference/datamodel.rst:874 +#: reference/datamodel.rst:843 +#, fuzzy +msgid ":attr:`~definition.__name__`" +msgstr ":attr:`~definition.\\ __name__`" + +#: reference/datamodel.rst:843 +#, fuzzy +msgid "The class name." +msgstr "Nom de la fonction." + +#: reference/datamodel.rst:846 +#, fuzzy +msgid "The name of the module in which the class was defined." +msgstr "" +"Nom du module où la fonction est définie ou ``None`` si ce nom n'est pas " +"disponible." + +#: reference/datamodel.rst:849 +#, fuzzy +msgid "The dictionary containing the class's namespace." +msgstr "Préparation de l'espace de nommage de la classe" + +#: reference/datamodel.rst:853 +#, fuzzy +msgid ":attr:`~class.__bases__`" +msgstr ":attr:`__globals__`" + +#: reference/datamodel.rst:852 +msgid "" +"A tuple containing the base classes, in the order of their occurrence in the " +"base class list." +msgstr "" + +#: reference/datamodel.rst:856 +#, fuzzy +msgid "The class's documentation string, or ``None`` if undefined." +msgstr "" +"Texte de documentation de la fonction ou ``None`` s'il n'en existe pas ; " +"n'est pas héritée par les sous-classes." + +#: reference/datamodel.rst:859 +msgid "" +"A dictionary containing :term:`variable annotations ` " +"collected during class body execution. For best practices on working with :" +"attr:`__annotations__`, please see :ref:`annotations-howto`." +msgstr "" + +#: reference/datamodel.rst:906 msgid "Class instances" msgstr "Instances de classe" -#: reference/datamodel.rst:840 +#: reference/datamodel.rst:872 msgid "" "A class instance is created by calling a class object (see above). A class " "instance has a namespace implemented as a dictionary which is the first " @@ -1536,7 +1595,7 @@ msgstr "" "l'objet possède une méthode :meth:`__getattr__`, cette méthode est appelée " "pour rechercher une correspondance." -#: reference/datamodel.rst:856 +#: reference/datamodel.rst:888 msgid "" "Attribute assignments and deletions update the instance's dictionary, never " "a class's dictionary. If the class has a :meth:`__setattr__` or :meth:" @@ -1548,7 +1607,7 @@ msgstr "" "méthode :meth:`__setattr__` ou :meth:`__delattr__`, elle est appelée au lieu " "de mettre à jour le dictionnaire de l'instance directement." -#: reference/datamodel.rst:866 +#: reference/datamodel.rst:898 msgid "" "Class instances can pretend to be numbers, sequences, or mappings if they " "have methods with certain special names. See section :ref:`specialnames`." @@ -1557,7 +1616,7 @@ msgstr "" "ou des tableaux de correspondance si elles ont des méthodes avec des noms " "spéciaux. Voir la section :ref:`specialnames`." -#: reference/datamodel.rst:873 +#: reference/datamodel.rst:905 msgid "" "Special attributes: :attr:`~object.__dict__` is the attribute dictionary; :" "attr:`~instance.__class__` is the instance's class." @@ -1565,11 +1624,11 @@ msgstr "" "Attributs spéciaux : :attr:`~object.__dict__` est le dictionnaire des " "attributs ; :attr:`~instance.__class__` est la classe de l'instance." -#: reference/datamodel.rst:900 +#: reference/datamodel.rst:932 msgid "I/O objects (also known as file objects)" msgstr "Objets Entrées-Sorties (ou objets fichiers)" -#: reference/datamodel.rst:890 +#: reference/datamodel.rst:922 msgid "" "A :term:`file object` represents an open file. Various shortcuts are " "available to create file objects: the :func:`open` built-in function, and " @@ -1583,7 +1642,7 @@ msgstr "" "socket.makefile` des objets connecteurs (et sûrement d'autres fonctions ou " "méthodes fournies par les modules d'extensions)." -#: reference/datamodel.rst:896 +#: reference/datamodel.rst:928 msgid "" "The objects ``sys.stdin``, ``sys.stdout`` and ``sys.stderr`` are initialized " "to file objects corresponding to the interpreter's standard input, output " @@ -1596,11 +1655,11 @@ msgstr "" "et se conforment donc à l'interface définie par la classe abstraite :class:" "`io.TextIOBase`." -#: reference/datamodel.rst:1151 +#: reference/datamodel.rst:1182 msgid "Internal types" msgstr "Types internes" -#: reference/datamodel.rst:907 +#: reference/datamodel.rst:939 msgid "" "A few types used internally by the interpreter are exposed to the user. " "Their definitions may change with future versions of the interpreter, but " @@ -1610,11 +1669,11 @@ msgstr "" "l'utilisateur. Leur définition peut changer dans les futures versions de " "l'interpréteur mais ils sont donnés ci-dessous à fin d'exhaustivité." -#: reference/datamodel.rst:982 +#: reference/datamodel.rst:1014 msgid "Code objects" msgstr "Objets Code" -#: reference/datamodel.rst:914 +#: reference/datamodel.rst:946 msgid "" "Code objects represent *byte-compiled* executable Python code, or :term:" "`bytecode`. The difference between a code object and a function object is " @@ -1635,7 +1694,7 @@ msgstr "" "objets fonctions, les objets codes sont immuables et ne contiennent aucune " "référence (directe ou indirecte) à des objets muables." -#: reference/datamodel.rst:941 +#: reference/datamodel.rst:973 msgid "" "Special read-only attributes: :attr:`co_name` gives the function name; :attr:" "`co_argcount` is the total number of positional arguments (including " @@ -1682,7 +1741,7 @@ msgstr "" "l'interpréteur) ; :attr:`co_stacksize` est la taille de pile requise ; :attr:" "`co_flags` est un entier qui code différents drapeaux pour l'interpréteur." -#: reference/datamodel.rst:965 +#: reference/datamodel.rst:997 msgid "" "The following flag bits are defined for :attr:`co_flags`: bit ``0x04`` is " "set if the function uses the ``*arguments`` syntax to accept an arbitrary " @@ -1697,7 +1756,7 @@ msgstr "" "pour accepter un nombre arbitraire d'arguments nommés ; le bit ``0x20`` est " "positionné à 1 si la fonction est un générateur." -#: reference/datamodel.rst:971 +#: reference/datamodel.rst:1003 msgid "" "Future feature declarations (``from __future__ import division``) also use " "bits in :attr:`co_flags` to indicate whether a code object was compiled with " @@ -1712,11 +1771,11 @@ msgstr "" "future activée ; les bits ``0x10`` et ``0x1000`` étaient utilisés dans les " "versions antérieures de Python." -#: reference/datamodel.rst:977 +#: reference/datamodel.rst:1009 msgid "Other bits in :attr:`co_flags` are reserved for internal use." msgstr "Les autres bits de :attr:`co_flags` sont réservés à un usage interne." -#: reference/datamodel.rst:981 +#: reference/datamodel.rst:1013 msgid "" "If a code object represents a function, the first item in :attr:`co_consts` " "is the documentation string of the function, or ``None`` if undefined." @@ -1725,11 +1784,11 @@ msgstr "" "`co_consts` est le texte de documentation de la fonction (ou ``None`` s'il " "n'y en a pas)." -#: reference/datamodel.rst:1044 +#: reference/datamodel.rst:1076 msgid "Frame objects" msgstr "Objets cadres" -#: reference/datamodel.rst:989 +#: reference/datamodel.rst:1021 msgid "" "Frame objects represent execution frames. They may occur in traceback " "objects (see below), and are also passed to registered trace functions." @@ -1738,7 +1797,7 @@ msgstr "" "traces (voir plus loin) et est passé comme argument aux fonctions de traçage " "actives." -#: reference/datamodel.rst:1000 +#: reference/datamodel.rst:1032 msgid "" "Special read-only attributes: :attr:`f_back` is to the previous stack frame " "(towards the caller), or ``None`` if this is the bottom stack frame; :attr:" @@ -1757,7 +1816,7 @@ msgstr "" "l'instruction précise (c'est un indice dans la chaîne de *bytecode* de " "l'objet code)." -#: reference/datamodel.rst:1008 +#: reference/datamodel.rst:1040 msgid "" "Accessing ``f_code`` raises an :ref:`auditing event ` ``object." "__getattr__`` with arguments ``obj`` and ``\"f_code\"``." @@ -1765,7 +1824,7 @@ msgstr "" "La lecture de ``f_code`` lève un :ref:`événement d'audit ` " "``object.__getattr__`` avec les arguments ``obj`` et ``\"f_code\"``." -#: reference/datamodel.rst:1017 +#: reference/datamodel.rst:1049 msgid "" "Special writable attributes: :attr:`f_trace`, if not ``None``, is a function " "called for various events during code execution (this is used by the " @@ -1778,7 +1837,7 @@ msgstr "" "événement est déclenché pour chaque ligne de code source — ce comportement " "peut être désactivé en définissant :attr:`f_trace_lines` à :const:`False`." -#: reference/datamodel.rst:1022 +#: reference/datamodel.rst:1054 msgid "" "Implementations *may* allow per-opcode events to be requested by setting :" "attr:`f_trace_opcodes` to :const:`True`. Note that this may lead to " @@ -1791,7 +1850,7 @@ msgstr "" "exceptions levées la fonction de traçage s'échappent vers la fonction en " "train d'être tracée." -#: reference/datamodel.rst:1027 +#: reference/datamodel.rst:1059 msgid "" ":attr:`f_lineno` is the current line number of the frame --- writing to this " "from within a trace function jumps to the given line (only for the bottom-" @@ -1804,11 +1863,11 @@ msgstr "" "vers » (aussi appelée « Définir la prochaine instruction » ou *Set Next " "Statement* en anglais) en écrivant dans ``f_lineno``." -#: reference/datamodel.rst:1032 +#: reference/datamodel.rst:1064 msgid "Frame objects support one method:" msgstr "Les objets cadres comprennent une méthode :" -#: reference/datamodel.rst:1036 +#: reference/datamodel.rst:1068 msgid "" "This method clears all references to local variables held by the frame. " "Also, if the frame belonged to a generator, the generator is finalized. " @@ -1821,15 +1880,15 @@ msgstr "" "incluent des objets cadres (par exemple, lors de la capture d'une exception " "et du stockage de la pile d'appels pour une utilisation future)." -#: reference/datamodel.rst:1042 +#: reference/datamodel.rst:1074 msgid ":exc:`RuntimeError` is raised if the frame is currently executing." msgstr ":exc:`RuntimeError` est levée si le cadre est en cours d'exécution." -#: reference/datamodel.rst:1107 +#: reference/datamodel.rst:1139 msgid "Traceback objects" msgstr "Objets traces" -#: reference/datamodel.rst:1059 +#: reference/datamodel.rst:1091 msgid "" "Traceback objects represent a stack trace of an exception. A traceback " "object is implicitly created when an exception occurs, and may also be " @@ -1840,7 +1899,7 @@ msgstr "" "quand une exception apparaît et peut être explicitement créé en appelant :" "class:`types.TracebackType`." -#: reference/datamodel.rst:1063 +#: reference/datamodel.rst:1095 msgid "" "For implicitly created tracebacks, when the search for an exception handler " "unwinds the execution stack, at each unwound level a traceback object is " @@ -1857,7 +1916,7 @@ msgstr "" "par le troisième élément du triplet renvoyé par ``sys.exc_info()`` et comme " "attribut ``__traceback__`` de l'exception qui est traitée." -#: reference/datamodel.rst:1071 +#: reference/datamodel.rst:1103 msgid "" "When the program contains no suitable handler, the stack trace is written " "(nicely formatted) to the standard error stream; if the interpreter is " @@ -1868,7 +1927,7 @@ msgstr "" "l'interpréteur est interactif, elle est rendue disponible pour l'utilisateur " "en tant que ``sys.last_traceback``." -#: reference/datamodel.rst:1076 +#: reference/datamodel.rst:1108 msgid "" "For explicitly created tracebacks, it is up to the creator of the traceback " "to determine how the ``tb_next`` attributes should be linked to form a full " @@ -1878,7 +1937,7 @@ msgstr "" "déterminer comment les attributs ``tb_next`` doivent être liés pour former " "la pile complète des traces." -#: reference/datamodel.rst:1086 +#: reference/datamodel.rst:1118 msgid "" "Special read-only attributes: :attr:`tb_frame` points to the execution frame " "of the current level; :attr:`tb_lineno` gives the line number where the " @@ -1895,7 +1954,7 @@ msgstr "" "instruction :keyword:`try` sans qu'il n'y ait de clause :keyword:`!except` " "adéquate ou sans clause *finally*." -#: reference/datamodel.rst:1095 +#: reference/datamodel.rst:1127 msgid "" "Accessing ``tb_frame`` raises an :ref:`auditing event ` ``object." "__getattr__`` with arguments ``obj`` and ``\"tb_frame\"``." @@ -1903,7 +1962,7 @@ msgstr "" "La lecture de ``tb_frame`` lève un :ref:`événement d'audit ` " "``object.__getattr__`` avec les arguments ``obj`` et ``\"tb_frame\"``." -#: reference/datamodel.rst:1101 +#: reference/datamodel.rst:1133 msgid "" "Special writable attribute: :attr:`tb_next` is the next level in the stack " "trace (towards the frame where the exception occurred), or ``None`` if there " @@ -1913,7 +1972,7 @@ msgstr "" "dans la pile d'exécution (en direction du cadre où l'exception a eu lieu) ou " "``None`` s'il n'y a pas de niveau suivant." -#: reference/datamodel.rst:1105 +#: reference/datamodel.rst:1137 msgid "" "Traceback objects can now be explicitly instantiated from Python code, and " "the ``tb_next`` attribute of existing instances can be updated." @@ -1922,11 +1981,11 @@ msgstr "" "instanciés depuis le code Python et l'attribut ``tb_next`` des instances " "existantes peut être mis à jour." -#: reference/datamodel.rst:1133 +#: reference/datamodel.rst:1165 msgid "Slice objects" msgstr "Objets tranches" -#: reference/datamodel.rst:1112 +#: reference/datamodel.rst:1144 msgid "" "Slice objects are used to represent slices for :meth:`__getitem__` methods. " "They are also created by the built-in :func:`slice` function." @@ -1935,7 +1994,7 @@ msgstr "" "meth:`__getitem__`. Ils sont aussi créés par la fonction native :func:" "`slice`." -#: reference/datamodel.rst:1120 +#: reference/datamodel.rst:1152 msgid "" "Special read-only attributes: :attr:`~slice.start` is the lower bound; :attr:" "`~slice.stop` is the upper bound; :attr:`~slice.step` is the step value; " @@ -1946,11 +2005,11 @@ msgstr "" "step` est la valeur du pas ; chaque attribut vaut ``None`` s'il est omis. " "Ces attributs peuvent être de n'importe quel type." -#: reference/datamodel.rst:1124 +#: reference/datamodel.rst:1156 msgid "Slice objects support one method:" msgstr "Les objets tranches comprennent une méthode :" -#: reference/datamodel.rst:1128 +#: reference/datamodel.rst:1160 msgid "" "This method takes a single integer argument *length* and computes " "information about the slice that the slice object would describe if applied " @@ -1966,20 +2025,20 @@ msgstr "" "indices manquants ou en dehors sont gérés de manière cohérente avec les " "tranches normales." -#: reference/datamodel.rst:1143 +#: reference/datamodel.rst:1174 msgid "Static method objects" msgstr "Objets méthodes statiques" -#: reference/datamodel.rst:1136 +#: reference/datamodel.rst:1168 +#, fuzzy msgid "" "Static method objects provide a way of defeating the transformation of " "function objects to method objects described above. A static method object " "is a wrapper around any other object, usually a user-defined method object. " "When a static method object is retrieved from a class or a class instance, " "the object actually returned is the wrapped object, which is not subject to " -"any further transformation. Static method objects are not themselves " -"callable, although the objects they wrap usually are. Static method objects " -"are created by the built-in :func:`staticmethod` constructor." +"any further transformation. Static method objects are also callable. Static " +"method objects are created by the built-in :func:`staticmethod` constructor." msgstr "" "Les objets méthodes statiques permettent la transformation des objets " "fonctions en objets méthodes décrits au-dessus. Un objet méthode statique " @@ -1991,11 +2050,11 @@ msgstr "" "les objets qu'ils encapsulent le soient souvent. Les objets méthodes " "statiques sont créés par le constructeur natif :func:`staticmethod`." -#: reference/datamodel.rst:1151 +#: reference/datamodel.rst:1182 msgid "Class method objects" msgstr "Objets méthodes de classes" -#: reference/datamodel.rst:1146 +#: reference/datamodel.rst:1177 msgid "" "A class method object, like a static method object, is a wrapper around " "another object that alters the way in which that object is retrieved from " @@ -2010,11 +2069,11 @@ msgstr "" "« méthodes définies par l'utilisateur ». Les objets méthodes de classes sont " "créés par le constructeur natif :func:`classmethod`." -#: reference/datamodel.rst:1156 +#: reference/datamodel.rst:1187 msgid "Special method names" msgstr "Méthodes spéciales" -#: reference/datamodel.rst:1162 +#: reference/datamodel.rst:1193 msgid "" "A class can implement certain operations that are invoked by special syntax " "(such as arithmetic operations or subscripting and slicing) by defining " @@ -2039,7 +2098,7 @@ msgstr "" "méthode appropriée n'est pas définie lève une exception (typiquement :exc:" "`AttributeError` ou :exc:`TypeError`)." -#: reference/datamodel.rst:1172 +#: reference/datamodel.rst:1203 msgid "" "Setting a special method to ``None`` indicates that the corresponding " "operation is not available. For example, if a class sets :meth:`__iter__` " @@ -2053,7 +2112,7 @@ msgstr "" "appeler :func:`iter` sur une instance lève :exc:`TypeError` (sans se replier " "sur :meth:`__getitem__`) [#]_." -#: reference/datamodel.rst:1178 +#: reference/datamodel.rst:1209 msgid "" "When implementing a class that emulates any built-in type, it is important " "that the emulation only be implemented to the degree that it makes sense for " @@ -2069,11 +2128,11 @@ msgstr "" "est l'interface de :class:`~xml.dom.NodeList` dans le modèle objet des " "documents W3C)." -#: reference/datamodel.rst:1189 +#: reference/datamodel.rst:1220 msgid "Basic customization" msgstr "Personnalisation de base" -#: reference/datamodel.rst:1195 +#: reference/datamodel.rst:1226 msgid "" "Called to create a new instance of class *cls*. :meth:`__new__` is a static " "method (special-cased so you need not declare it as such) that takes the " @@ -2090,7 +2149,7 @@ msgstr "" "valeur de retour de :meth:`__new__` doit être l'instance du nouvel objet " "(classiquement une instance de *cls*)." -#: reference/datamodel.rst:1202 +#: reference/datamodel.rst:1233 msgid "" "Typical implementations create a new instance of the class by invoking the " "superclass's :meth:`__new__` method using ``super().__new__(cls[, ...])`` " @@ -2102,13 +2161,14 @@ msgstr "" "__new__(cls[, …])`` avec les arguments adéquats, puis modifie l'instance " "nouvellement créée en tant que de besoin avant de la renvoyer." -#: reference/datamodel.rst:1207 +#: reference/datamodel.rst:1238 +#, fuzzy msgid "" "If :meth:`__new__` is invoked during object construction and it returns an " -"instance or subclass of *cls*, then the new instance’s :meth:`__init__` " -"method will be invoked like ``__init__(self[, ...])``, where *self* is the " -"new instance and the remaining arguments are the same as were passed to the " -"object constructor." +"instance of *cls*, then the new instance’s :meth:`__init__` method will be " +"invoked like ``__init__(self[, ...])``, where *self* is the new instance and " +"the remaining arguments are the same as were passed to the object " +"constructor." msgstr "" "Si :meth:`__new__` est appelée pendant la construction de l'objet et renvoie " "une instance de *cls* ou d'une de ses sous-classes, alors la méthode :meth:" @@ -2116,7 +2176,7 @@ msgstr "" "où *self* est la nouvelle instance et les autres arguments sont les mêmes " "que ceux passés au constructeur de l'objet." -#: reference/datamodel.rst:1212 +#: reference/datamodel.rst:1243 msgid "" "If :meth:`__new__` does not return an instance of *cls*, then the new " "instance's :meth:`__init__` method will not be invoked." @@ -2124,7 +2184,7 @@ msgstr "" "Si :meth:`__new__` ne renvoie pas une instance de *cls*, alors la méthode :" "meth:`__init__` de la nouvelle instance n'est pas invoquée." -#: reference/datamodel.rst:1215 +#: reference/datamodel.rst:1246 msgid "" ":meth:`__new__` is intended mainly to allow subclasses of immutable types " "(like int, str, or tuple) to customize instance creation. It is also " @@ -2136,7 +2196,7 @@ msgstr "" "création sur mesure des instances. Elle est aussi souvent surchargée dans " "les métaclasses pour particulariser la création des classes." -#: reference/datamodel.rst:1224 +#: reference/datamodel.rst:1255 msgid "" "Called after the instance has been created (by :meth:`__new__`), but before " "it is returned to the caller. The arguments are those passed to the class " @@ -2153,7 +2213,7 @@ msgstr "" "initialisation correcte de la partie classe de base de l'instance ; par " "exemple : ``super().__init__([args…])``." -#: reference/datamodel.rst:1231 +#: reference/datamodel.rst:1262 msgid "" "Because :meth:`__new__` and :meth:`__init__` work together in constructing " "objects (:meth:`__new__` to create it, and :meth:`__init__` to customize " @@ -2165,7 +2225,7 @@ msgstr "" "particulariser), :meth:`__init__` ne doit pas renvoyer de valeur ``None`` ; " "sinon une exception :exc:`TypeError` est levée à l'exécution." -#: reference/datamodel.rst:1244 +#: reference/datamodel.rst:1275 msgid "" "Called when the instance is about to be destroyed. This is also called a " "finalizer or (improperly) a destructor. If a base class has a :meth:" @@ -2179,7 +2239,7 @@ msgstr "" "classe dérivée, si elle existe, doit explicitement l'appeler pour s'assurer " "de l'effacement correct de la partie classe de base de l'instance." -#: reference/datamodel.rst:1250 +#: reference/datamodel.rst:1281 msgid "" "It is possible (though not recommended!) for the :meth:`__del__` method to " "postpone destruction of the instance by creating a new reference to it. " @@ -2195,7 +2255,7 @@ msgstr "" "moment où l'objet ressuscité va être détruit ; l'implémentation actuelle de :" "term:`CPython` ne l'appelle qu'une fois." -#: reference/datamodel.rst:1257 +#: reference/datamodel.rst:1288 msgid "" "It is not guaranteed that :meth:`__del__` methods are called for objects " "that still exist when the interpreter exits." @@ -2203,7 +2263,7 @@ msgstr "" "Il n'est pas garanti que soient appelées les méthodes :meth:`__del__` des " "objets qui existent toujours quand l'interpréteur termine." -#: reference/datamodel.rst:1262 +#: reference/datamodel.rst:1293 msgid "" "``del x`` doesn't directly call ``x.__del__()`` --- the former decrements " "the reference count for ``x`` by one, and the latter is only called when " @@ -2213,11 +2273,11 @@ msgstr "" "le compteur de références de ``x``. La seconde n'est appelée que quand le " "compteur de références de ``x`` atteint zéro." -#: reference/datamodel.rst:1277 +#: reference/datamodel.rst:1308 msgid "Documentation for the :mod:`gc` module." msgstr "Documentation du module :mod:`gc`." -#: reference/datamodel.rst:1281 +#: reference/datamodel.rst:1312 msgid "" "Due to the precarious circumstances under which :meth:`__del__` methods are " "invoked, exceptions that occur during their execution are ignored, and a " @@ -2227,7 +2287,7 @@ msgstr "" "appelée, les exceptions levées pendant son exécution sont ignorées et, à la " "place, un avertissement est affiché sur ``sys.stderr``. En particulier :" -#: reference/datamodel.rst:1285 +#: reference/datamodel.rst:1316 msgid "" ":meth:`__del__` can be invoked when arbitrary code is being executed, " "including from any arbitrary thread. If :meth:`__del__` needs to take a " @@ -2242,7 +2302,7 @@ msgstr "" "ressource peut être déjà utilisée par le code qui est interrompu pour " "exécuter la méthode :meth:`__del__`." -#: reference/datamodel.rst:1291 +#: reference/datamodel.rst:1322 msgid "" ":meth:`__del__` can be executed during interpreter shutdown. As a " "consequence, the global variables it needs to access (including other " @@ -2262,7 +2322,7 @@ msgstr "" "importés soient toujours accessibles au moment où la méthode :meth:`__del__` " "est appelée." -#: reference/datamodel.rst:1306 +#: reference/datamodel.rst:1337 msgid "" "Called by the :func:`repr` built-in function to compute the \"official\" " "string representation of an object. If at all possible, this should look " @@ -2283,7 +2343,7 @@ msgstr "" "`__repr__` est aussi utilisée quand une représentation « informelle » en " "chaîne de caractères est demandée pour une instance de cette classe." -#: reference/datamodel.rst:1315 +#: reference/datamodel.rst:1346 msgid "" "This is typically used for debugging, so it is important that the " "representation is information-rich and unambiguous." @@ -2292,7 +2352,7 @@ msgstr "" "important que la représentation donne beaucoup d'informations et ne soit pas " "ambigüe." -#: reference/datamodel.rst:1326 +#: reference/datamodel.rst:1357 msgid "" "Called by :func:`str(object) ` and the built-in functions :func:" "`format` and :func:`print` to compute the \"informal\" or nicely printable " @@ -2304,7 +2364,7 @@ msgstr "" "« informelle » ou joliment mise en forme de représentation de l'objet. La " "valeur renvoyée doit être un objet :ref:`string `." -#: reference/datamodel.rst:1331 +#: reference/datamodel.rst:1362 msgid "" "This method differs from :meth:`object.__repr__` in that there is no " "expectation that :meth:`__str__` return a valid Python expression: a more " @@ -2314,7 +2374,7 @@ msgstr "" "que :meth:`__str__` renvoie une expression Python valide : une " "représentation plus agréable à lire ou plus concise peut être utilisée." -#: reference/datamodel.rst:1335 +#: reference/datamodel.rst:1366 msgid "" "The default implementation defined by the built-in type :class:`object` " "calls :meth:`object.__repr__`." @@ -2322,7 +2382,7 @@ msgstr "" "C'est l'implémentation par défaut des appels à :meth:`object.__repr__` du " "type natif :class:`object`." -#: reference/datamodel.rst:1345 +#: reference/datamodel.rst:1376 msgid "" "Called by :ref:`bytes ` to compute a byte-string representation " "of an object. This should return a :class:`bytes` object." @@ -2330,7 +2390,7 @@ msgstr "" "Appelée par :ref:`bytes ` pour calculer une représentation en " "chaîne *bytes* d'un objet. Elle doit renvoyer un objet :class:`bytes`." -#: reference/datamodel.rst:1356 +#: reference/datamodel.rst:1387 msgid "" "Called by the :func:`format` built-in function, and by extension, evaluation " "of :ref:`formatted string literals ` and the :meth:`str.format` " @@ -2351,18 +2411,18 @@ msgstr "" "le formatage aux types natifs ou utilisent une syntaxe similaire d'options " "de formatage." -#: reference/datamodel.rst:1366 +#: reference/datamodel.rst:1397 msgid "" "See :ref:`formatspec` for a description of the standard formatting syntax." msgstr "" "Lisez :ref:`formatspec` pour une description de la syntaxe standard du " "formatage." -#: reference/datamodel.rst:1368 +#: reference/datamodel.rst:1399 msgid "The return value must be a string object." msgstr "La valeur renvoyée doit être un objet chaîne de caractères." -#: reference/datamodel.rst:1370 +#: reference/datamodel.rst:1401 msgid "" "The __format__ method of ``object`` itself raises a :exc:`TypeError` if " "passed any non-empty string." @@ -2370,7 +2430,7 @@ msgstr "" "La méthode ``__format__`` de ``object`` lui-même lève une :exc:`TypeError` " "si vous lui passez une chaîne non vide." -#: reference/datamodel.rst:1374 +#: reference/datamodel.rst:1405 msgid "" "``object.__format__(x, '')`` is now equivalent to ``str(x)`` rather than " "``format(str(x), '')``." @@ -2378,7 +2438,7 @@ msgstr "" "``object.__format__(x, '')`` est maintenant équivalent à ``str(x)`` plutôt " "qu'à ``format(str(x), '')``." -#: reference/datamodel.rst:1390 +#: reference/datamodel.rst:1421 msgid "" "These are the so-called \"rich comparison\" methods. The correspondence " "between operator symbols and method names is as follows: ``xy`` appelle " "``x.__gt__(y)`` et ``x>=y`` appelle ``x.__ge__(y)``." -#: reference/datamodel.rst:1396 +#: reference/datamodel.rst:1427 msgid "" "A rich comparison method may return the singleton ``NotImplemented`` if it " "does not implement the operation for a given pair of arguments. By " @@ -2411,7 +2471,7 @@ msgstr "" "``if``), Python appelle :func:`bool` sur la valeur pour déterminer si le " "résultat est faux ou vrai." -#: reference/datamodel.rst:1403 +#: reference/datamodel.rst:1434 msgid "" "By default, ``object`` implements :meth:`__eq__` by using ``is``, returning " "``NotImplemented`` in the case of a false comparison: ``True if x is y else " @@ -2431,7 +2491,7 @@ msgstr "" "``x<=y``. Pour obtenir une relation d'ordre total automatique à partir d'une " "seule opération, reportez-vous à :func:`functools.total_ordering`." -#: reference/datamodel.rst:1412 +#: reference/datamodel.rst:1443 msgid "" "See the paragraph on :meth:`__hash__` for some important notes on creating :" "term:`hashable` objects which support custom comparison operations and are " @@ -2442,7 +2502,7 @@ msgstr "" "les opérations de comparaison personnalisées et qui sont utilisables en tant " "que clés de dictionnaires." -#: reference/datamodel.rst:1416 +#: reference/datamodel.rst:1447 msgid "" "There are no swapped-argument versions of these methods (to be used when the " "left argument does not support the operation but the right argument does); " @@ -2466,7 +2526,7 @@ msgstr "" "méthode de l'opérande de gauche qui est prioritaire. Les sous-classes " "virtuelles ne sont pas prises en compte." -#: reference/datamodel.rst:1433 +#: reference/datamodel.rst:1464 msgid "" "Called by built-in function :func:`hash` and for operations on members of " "hashed collections including :class:`set`, :class:`frozenset`, and :class:" @@ -2485,7 +2545,7 @@ msgstr "" "de la comparaison des objets, en les plaçant dans un *n*-uplet dont on " "calcule l'empreinte. Par exemple ::" -#: reference/datamodel.rst:1446 +#: reference/datamodel.rst:1477 msgid "" ":func:`hash` truncates the value returned from an object's custom :meth:" "`__hash__` method to the size of a :c:type:`Py_ssize_t`. This is typically " @@ -2503,7 +2563,7 @@ msgstr "" "Une manière facile de le faire est la suivante : ``python -c \"import sys; " "print(sys.hash_info.width)\"``." -#: reference/datamodel.rst:1454 +#: reference/datamodel.rst:1485 msgid "" "If a class does not define an :meth:`__eq__` method it should not define a :" "meth:`__hash__` operation either; if it defines :meth:`__eq__` but not :meth:" @@ -2524,7 +2584,7 @@ msgstr "" "(si l'empreinte d'un objet change, il ne sera plus trouvé correctement dans " "le stockage du dictionnaire)." -#: reference/datamodel.rst:1463 +#: reference/datamodel.rst:1494 msgid "" "User-defined classes have :meth:`__eq__` and :meth:`__hash__` methods by " "default; with them, all objects compare unequal (except with themselves) and " @@ -2536,7 +2596,7 @@ msgstr "" "sont différents (sauf avec eux-mêmes) et ``x.__hash__()`` renvoie une valeur " "telle que ``x == y`` implique à la fois ``x is y`` et ``hash(x) == hash(y)``." -#: reference/datamodel.rst:1468 +#: reference/datamodel.rst:1499 msgid "" "A class that overrides :meth:`__eq__` and does not define :meth:`__hash__` " "will have its :meth:`__hash__` implicitly set to ``None``. When the :meth:" @@ -2552,7 +2612,7 @@ msgstr "" "empreinte et elle est correctement identifiée comme *non hachable* quand on " "vérifie ``isinstance(obj, collections.abc.Hashable)``." -#: reference/datamodel.rst:1475 +#: reference/datamodel.rst:1506 msgid "" "If a class that overrides :meth:`__eq__` needs to retain the implementation " "of :meth:`__hash__` from a parent class, the interpreter must be told this " @@ -2563,7 +2623,7 @@ msgstr "" "l'indiquer explicitement à l'interpréteur en définissant ``__hash__ = " ".__hash__``." -#: reference/datamodel.rst:1479 +#: reference/datamodel.rst:1510 msgid "" "If a class that does not override :meth:`__eq__` wishes to suppress hash " "support, it should include ``__hash__ = None`` in the class definition. A " @@ -2577,7 +2637,7 @@ msgstr "" "lève explicitement :exc:`TypeError` serait incorrectement identifiée comme " "hachable par un appel à ``isinstance(obj, collections.abc.Hashable)``." -#: reference/datamodel.rst:1488 +#: reference/datamodel.rst:1519 msgid "" "By default, the :meth:`__hash__` values of str and bytes objects are \"salted" "\" with an unpredictable random value. Although they remain constant within " @@ -2589,7 +2649,7 @@ msgstr "" "qu'une empreinte reste constante tout au long d'un processus Python, sa " "valeur n'est pas prévisible entre deux invocations de Python." -#: reference/datamodel.rst:1493 +#: reference/datamodel.rst:1524 msgid "" "This is intended to provide protection against a denial-of-service caused by " "carefully-chosen inputs that exploit the worst case performance of a dict " @@ -2602,7 +2662,7 @@ msgstr "" "\\ :sup:`2`). Lisez http://www.ocert.org/advisories/ocert-2011-003.html pour " "en obtenir les détails (article en anglais)." -#: reference/datamodel.rst:1498 +#: reference/datamodel.rst:1529 msgid "" "Changing hash values affects the iteration order of sets. Python has never " "made guarantees about this ordering (and it typically varies between 32-bit " @@ -2612,15 +2672,15 @@ msgstr "" "les *sets*. Python n'a jamais donné de garantie sur cet ordre (d'ailleurs, " "l'ordre n'est pas le même entre les implémentations 32 et 64 bits)." -#: reference/datamodel.rst:1502 +#: reference/datamodel.rst:1533 msgid "See also :envvar:`PYTHONHASHSEED`." msgstr "Voir aussi :envvar:`PYTHONHASHSEED`." -#: reference/datamodel.rst:1504 +#: reference/datamodel.rst:1535 msgid "Hash randomization is enabled by default." msgstr "la randomisation des empreintes est activée par défaut." -#: reference/datamodel.rst:1512 +#: reference/datamodel.rst:1543 msgid "" "Called to implement truth value testing and the built-in operation " "``bool()``; should return ``False`` or ``True``. When this method is not " @@ -2635,11 +2695,11 @@ msgstr "" "définit ni :meth:`__len__` ni :meth:`__bool__`, toutes ses instances sont " "considérées comme vraies." -#: reference/datamodel.rst:1523 +#: reference/datamodel.rst:1554 msgid "Customizing attribute access" msgstr "Personnalisation de l'accès aux attributs" -#: reference/datamodel.rst:1525 +#: reference/datamodel.rst:1556 msgid "" "The following methods can be defined to customize the meaning of attribute " "access (use of, assignment to, or deletion of ``x.name``) for class " @@ -2649,7 +2709,7 @@ msgstr "" "attributs (utilisation, assignation, suppression de ``x.name``) pour les " "instances de classes." -#: reference/datamodel.rst:1533 +#: reference/datamodel.rst:1564 msgid "" "Called when the default attribute access fails with an :exc:`AttributeError` " "(either :meth:`__getattribute__` raises an :exc:`AttributeError` because " @@ -2666,7 +2726,7 @@ msgstr "" "valeur (calculée) de l'attribut, soit lever une exception :exc:" "`AttributeError`." -#: reference/datamodel.rst:1540 +#: reference/datamodel.rst:1571 msgid "" "Note that if the attribute is found through the normal mechanism, :meth:" "`__getattr__` is not called. (This is an intentional asymmetry between :" @@ -2689,7 +2749,7 @@ msgstr "" "place). Lisez la partie relative à la méthode :meth:`__getattribute__` ci-" "dessous pour obtenir un contrôle total effectif sur l'accès aux attributs." -#: reference/datamodel.rst:1553 +#: reference/datamodel.rst:1584 msgid "" "Called unconditionally to implement attribute accesses for instances of the " "class. If the class also defines :meth:`__getattr__`, the latter will not be " @@ -2711,7 +2771,7 @@ msgstr "" "accéder à n'importe quel attribut dont elle a besoin. Par exemple, ``object." "__getattribute__(self, name)``." -#: reference/datamodel.rst:1564 +#: reference/datamodel.rst:1595 msgid "" "This method may still be bypassed when looking up special methods as the " "result of implicit invocation via language syntax or built-in functions. " @@ -2721,7 +2781,7 @@ msgstr "" "spéciales en tant que résultat d'une invocation implicite *via* la syntaxe " "du langage ou les fonctions natives. Lisez :ref:`special-lookup`." -#: reference/datamodel.rst:1568 +#: reference/datamodel.rst:1599 msgid "" "Raises an :ref:`auditing event ` ``object.__getattr__`` with " "arguments ``obj``, ``name``." @@ -2729,7 +2789,7 @@ msgstr "" "Lève un :ref:`événement d'audit ` ``object.__getattr__`` avec les " "arguments ``obj`` et ``name``." -#: reference/datamodel.rst:1570 +#: reference/datamodel.rst:1601 msgid "" "For certain sensitive attribute accesses, raises an :ref:`auditing event " "` ``object.__getattr__`` with arguments ``obj`` and ``name``." @@ -2738,7 +2798,7 @@ msgstr "" "d'audit ` ``object.__getattr__`` avec les arguments ``obj`` et " "``name``." -#: reference/datamodel.rst:1577 +#: reference/datamodel.rst:1608 msgid "" "Called when an attribute assignment is attempted. This is called instead of " "the normal mechanism (i.e. store the value in the instance dictionary). " @@ -2749,7 +2809,7 @@ msgstr "" "l'instance). *name* est le nom de l'attribut, *value* est la valeur à " "assigner à cet attribut." -#: reference/datamodel.rst:1581 +#: reference/datamodel.rst:1612 msgid "" "If :meth:`__setattr__` wants to assign to an instance attribute, it should " "call the base class method with the same name, for example, ``object." @@ -2759,7 +2819,7 @@ msgstr "" "appeler la méthode de la classe de base avec le même nom, par exemple " "``object.__setattr__(self, name, value)``." -#: reference/datamodel.rst:1585 +#: reference/datamodel.rst:1616 msgid "" "Raises an :ref:`auditing event ` ``object.__setattr__`` with " "arguments ``obj``, ``name``, ``value``." @@ -2767,7 +2827,7 @@ msgstr "" "Lève un :ref:`événement d'audit ` ``object.__setattr__`` avec les " "arguments ``obj``, ``name`` et ``value``." -#: reference/datamodel.rst:1587 +#: reference/datamodel.rst:1618 msgid "" "For certain sensitive attribute assignments, raises an :ref:`auditing event " "` ``object.__setattr__`` with arguments ``obj``, ``name``, " @@ -2777,7 +2837,7 @@ msgstr "" "`événement d'audit ` ``object.__setattr__`` avec les arguments " "``obj``, ``name`` et ``value``." -#: reference/datamodel.rst:1594 +#: reference/datamodel.rst:1625 msgid "" "Like :meth:`__setattr__` but for attribute deletion instead of assignment. " "This should only be implemented if ``del obj.name`` is meaningful for the " @@ -2787,7 +2847,7 @@ msgstr "" "l'assigner. Elle ne doit être implémentée que si ``del obj.name`` a du sens " "pour cet objet." -#: reference/datamodel.rst:1597 +#: reference/datamodel.rst:1628 msgid "" "Raises an :ref:`auditing event ` ``object.__delattr__`` with " "arguments ``obj``, ``name``." @@ -2795,7 +2855,7 @@ msgstr "" "Lève un :ref:`événement d'audit ` ``object.__deltattr__`` avec les " "arguments ``obj`` et ``name``." -#: reference/datamodel.rst:1599 +#: reference/datamodel.rst:1630 msgid "" "For certain sensitive attribute deletions, raises an :ref:`auditing event " "` ``object.__delattr__`` with arguments ``obj`` and ``name``." @@ -2804,7 +2864,7 @@ msgstr "" "`événement d'audit ` ``object.__deltattr__`` avec les arguments " "``obj`` et ``name``." -#: reference/datamodel.rst:1606 +#: reference/datamodel.rst:1637 msgid "" "Called when :func:`dir` is called on the object. A sequence must be " "returned. :func:`dir` converts the returned sequence to a list and sorts it." @@ -2813,11 +2873,11 @@ msgstr "" "séquence. :func:`dir` convertit la séquence renvoyée en liste et effectue le " "classement." -#: reference/datamodel.rst:1611 +#: reference/datamodel.rst:1642 msgid "Customizing module attribute access" msgstr "Personnalisation de l'accès aux attributs d'un module" -#: reference/datamodel.rst:1618 +#: reference/datamodel.rst:1649 msgid "" "Special names ``__getattr__`` and ``__dir__`` can be also used to customize " "access to module attributes. The ``__getattr__`` function at the module " @@ -2838,7 +2898,7 @@ msgstr "" "``__dict__`` du module avant de lever une :exc:`AttributeError`. S'il la " "trouve, il l'appelle avec le nom de l'attribut et renvoie le résultat." -#: reference/datamodel.rst:1627 +#: reference/datamodel.rst:1658 msgid "" "The ``__dir__`` function should accept no arguments, and return a sequence " "of strings that represents the names accessible on module. If present, this " @@ -2848,7 +2908,7 @@ msgstr "" "chaînes qui représente les noms accessibles du module. Si elle existe, cette " "fonction surcharge la fonction de recherche standard :func:`dir` du module." -#: reference/datamodel.rst:1631 +#: reference/datamodel.rst:1662 msgid "" "For a more fine grained customization of the module behavior (setting " "attributes, properties, etc.), one can set the ``__class__`` attribute of a " @@ -2859,7 +2919,7 @@ msgstr "" "``__class__`` d'un objet module à une sous-classe de :class:`types." "ModuleType`. Par exemple ::" -#: reference/datamodel.rst:1649 +#: reference/datamodel.rst:1680 msgid "" "Defining module ``__getattr__`` and setting module ``__class__`` only affect " "lookups made using the attribute access syntax -- directly accessing the " @@ -2872,27 +2932,27 @@ msgstr "" "module, soit *via* une référence au dictionnaire des variables globales du " "module) fonctionne toujours de la même façon." -#: reference/datamodel.rst:1654 +#: reference/datamodel.rst:1685 msgid "``__class__`` module attribute is now writable." msgstr "l'attribut ``__class__`` du module est maintenant en lecture-écriture." -#: reference/datamodel.rst:1657 +#: reference/datamodel.rst:1688 msgid "``__getattr__`` and ``__dir__`` module attributes." msgstr "attributs ``__getattr__`` et ``__dir__`` du module." -#: reference/datamodel.rst:1662 +#: reference/datamodel.rst:1693 msgid ":pep:`562` - Module __getattr__ and __dir__" msgstr ":pep:`562` — ``__getattr__`` et ``__dir__`` pour un module" -#: reference/datamodel.rst:1663 +#: reference/datamodel.rst:1694 msgid "Describes the ``__getattr__`` and ``__dir__`` functions on modules." msgstr "Décrit les fonctions ``__getattr__`` et ``__dir__`` des modules." -#: reference/datamodel.rst:1669 +#: reference/datamodel.rst:1700 msgid "Implementing Descriptors" msgstr "Implémentation de descripteurs" -#: reference/datamodel.rst:1671 +#: reference/datamodel.rst:1702 msgid "" "The following methods only apply when an instance of the class containing " "the method (a so-called *descriptor* class) appears in an *owner* class (the " @@ -2909,7 +2969,7 @@ msgstr "" "« l'attribut » fait référence à l'attribut dont le nom est une clé du :attr:" "`~object.__dict__` de la classe propriétaire." -#: reference/datamodel.rst:1681 +#: reference/datamodel.rst:1712 msgid "" "Called to get the attribute of the owner class (class attribute access) or " "of an instance of that class (instance attribute access). The optional " @@ -2923,7 +2983,7 @@ msgstr "" "que *instance* est l'instance par laquelle on accède à l'attribut ou " "``None`` lorsque l'on accède par la classe *owner*." -#: reference/datamodel.rst:1687 +#: reference/datamodel.rst:1718 msgid "" "This method should return the computed attribute value or raise an :exc:" "`AttributeError` exception." @@ -2931,7 +2991,7 @@ msgstr "" "Il convient que cette méthode renvoie la valeur calculée de l'attribut ou " "lève une exception :exc:`AttributeError`." -#: reference/datamodel.rst:1690 +#: reference/datamodel.rst:1721 msgid "" ":PEP:`252` specifies that :meth:`__get__` is callable with one or two " "arguments. Python's own built-in descriptors support this specification; " @@ -2946,7 +3006,7 @@ msgstr "" "requièrent les deux arguments. L'implémentation de :meth:`__getattribute__` " "de Python passe toujours les deux arguments, qu'ils soient requis ou non." -#: reference/datamodel.rst:1699 +#: reference/datamodel.rst:1730 msgid "" "Called to set the attribute on an instance *instance* of the owner class to " "a new value, *value*." @@ -2954,7 +3014,7 @@ msgstr "" "Appelée pour définir l'attribut d'une instance *instance* de la classe " "propriétaire à la nouvelle valeur *value*." -#: reference/datamodel.rst:1702 +#: reference/datamodel.rst:1733 msgid "" "Note, adding :meth:`__set__` or :meth:`__delete__` changes the kind of " "descriptor to a \"data descriptor\". See :ref:`descriptor-invocation` for " @@ -2964,36 +3024,14 @@ msgstr "" "descripteur vers un « descripteur de donnée ». Reportez-vous à :ref:" "`descriptor-invocation` pour plus de détails." -#: reference/datamodel.rst:1708 +#: reference/datamodel.rst:1739 msgid "" "Called to delete the attribute on an instance *instance* of the owner class." msgstr "" "Appelée pour supprimer l'attribut de l'instance *instance* de la classe " "propriétaire." -#: reference/datamodel.rst:1713 -msgid "" -"Called at the time the owning class *owner* is created. The descriptor has " -"been assigned to *name*." -msgstr "" -"Appelée au moment où la classe propriétaire *owner* est créée. La classe " -"descripteur a été assignée à *name*." - -#: reference/datamodel.rst:1718 -msgid "" -":meth:`__set_name__` is only called implicitly as part of the :class:`type` " -"constructor, so it will need to be called explicitly with the appropriate " -"parameters when a descriptor is added to a class after initial creation::" -msgstr "" -":meth:`__set_name__` n'est appelée implicitement que par le constructeur de :" -"class:`type`, vous devez donc l'appeler explicitement avec les paramètres " -"adéquats quand un descripteur est ajouté à une classe après sa création ::" - -#: reference/datamodel.rst:1729 -msgid "See :ref:`class-object-creation` for more details." -msgstr "Consultez :ref:`class-object-creation` pour davantage de détails." - -#: reference/datamodel.rst:1733 +#: reference/datamodel.rst:1742 msgid "" "The attribute :attr:`__objclass__` is interpreted by the :mod:`inspect` " "module as specifying the class where this object was defined (setting this " @@ -3011,11 +3049,11 @@ msgstr "" "premier argument positionnel (par exemple, CPython définit cet attribut pour " "les méthodes non liées qui sont implémentées en C)." -#: reference/datamodel.rst:1744 +#: reference/datamodel.rst:1753 msgid "Invoking Descriptors" msgstr "Invocation des descripteurs" -#: reference/datamodel.rst:1746 +#: reference/datamodel.rst:1755 msgid "" "In general, a descriptor is an object attribute with \"binding behavior\", " "one whose attribute access has been overridden by methods in the descriptor " @@ -3029,7 +3067,7 @@ msgstr "" "l'une de ces méthodes est définie pour un objet, il est réputé être un " "descripteur." -#: reference/datamodel.rst:1751 +#: reference/datamodel.rst:1760 msgid "" "The default behavior for attribute access is to get, set, or delete the " "attribute from an object's dictionary. For instance, ``a.x`` has a lookup " @@ -3042,7 +3080,7 @@ msgstr "" "puis ``type(a).__dict__['x']`` ; ensuite Python continue en remontant les " "classes de base de ``type(a)``, en excluant les métaclasses." -#: reference/datamodel.rst:1756 +#: reference/datamodel.rst:1765 msgid "" "However, if the looked-up value is an object defining one of the descriptor " "methods, then Python may override the default behavior and invoke the " @@ -3055,7 +3093,7 @@ msgstr "" "citée ci-dessus dépend de l'endroit où a été définie la méthode de " "descripteur et comment elle a été appelée." -#: reference/datamodel.rst:1761 +#: reference/datamodel.rst:1770 msgid "" "The starting point for descriptor invocation is a binding, ``a.x``. How the " "arguments are assembled depends on ``a``:" @@ -3063,11 +3101,11 @@ msgstr "" "Le point de départ pour une invocation de descripteur est la liaison ``a." "x``. La façon dont les arguments sont assemblés dépend de ``a`` :" -#: reference/datamodel.rst:1766 +#: reference/datamodel.rst:1775 msgid "Direct Call" msgstr "Appel direct" -#: reference/datamodel.rst:1765 +#: reference/datamodel.rst:1774 msgid "" "The simplest and least common call is when user code directly invokes a " "descriptor method: ``x.__get__(a)``." @@ -3075,11 +3113,11 @@ msgstr "" "Le plus simple et le plus rare des appels est quand l'utilisateur code " "directement l'appel à la méthode du descripteur : ``x.__get__(a)``." -#: reference/datamodel.rst:1770 +#: reference/datamodel.rst:1779 msgid "Instance Binding" msgstr "Liaison avec une instance" -#: reference/datamodel.rst:1769 +#: reference/datamodel.rst:1778 msgid "" "If binding to an object instance, ``a.x`` is transformed into the call: " "``type(a).__dict__['x'].__get__(a, type(a))``." @@ -3087,11 +3125,11 @@ msgstr "" "Si elle est liée à un objet instance, ``a.x`` est transformé en l'appel " "suivant : ``type(a).__dict__['x'].__get__(a, type(a))``." -#: reference/datamodel.rst:1774 +#: reference/datamodel.rst:1783 msgid "Class Binding" msgstr "Liaison avec une classe" -#: reference/datamodel.rst:1773 +#: reference/datamodel.rst:1782 msgid "" "If binding to a class, ``A.x`` is transformed into the call: ``A." "__dict__['x'].__get__(None, A)``." @@ -3099,11 +3137,11 @@ msgstr "" "Si elle est liée à une classe, ``A.x`` est transformé en l'appel suivant : " "``A.__dict__['x'].__get__(None, A)``." -#: reference/datamodel.rst:1780 +#: reference/datamodel.rst:1789 msgid "Super Binding" msgstr "Liaison super" -#: reference/datamodel.rst:1777 +#: reference/datamodel.rst:1786 msgid "" "If ``a`` is an instance of :class:`super`, then the binding ``super(B, obj)." "m()`` searches ``obj.__class__.__mro__`` for the base class ``A`` " @@ -3115,7 +3153,7 @@ msgstr "" "immédiatement avant ``B`` puis invoque le descripteur avec l'appel suivant : " "``A.__dict__['m'].__get__(obj, obj.__class__)``." -#: reference/datamodel.rst:1782 +#: reference/datamodel.rst:1791 msgid "" "For instance bindings, the precedence of descriptor invocation depends on " "which descriptor methods are defined. A descriptor can define any " @@ -3147,7 +3185,7 @@ msgstr "" "redéfinition du dictionnaire de l'instance. En revanche, les descripteurs " "hors-données peuvent être shuntés par les instances." -#: reference/datamodel.rst:1795 +#: reference/datamodel.rst:1804 msgid "" "Python methods (including :func:`staticmethod` and :func:`classmethod`) are " "implemented as non-data descriptors. Accordingly, instances can redefine " @@ -3160,7 +3198,7 @@ msgstr "" "chaque instance d'avoir un comportement qui diffère des autres instances de " "la même classe." -#: reference/datamodel.rst:1800 +#: reference/datamodel.rst:1809 msgid "" "The :func:`property` function is implemented as a data descriptor. " "Accordingly, instances cannot override the behavior of a property." @@ -3169,11 +3207,11 @@ msgstr "" "données. Ainsi, les instances ne peuvent pas surcharger le comportement " "d'une propriété." -#: reference/datamodel.rst:1807 +#: reference/datamodel.rst:1816 msgid "__slots__" msgstr "``__slots__``" -#: reference/datamodel.rst:1809 +#: reference/datamodel.rst:1818 msgid "" "*__slots__* allow us to explicitly declare data members (like properties) " "and deny the creation of *__dict__* and *__weakref__* (unless explicitly " @@ -3184,7 +3222,7 @@ msgstr "" "*__weakref__* (à moins qu'ils ne soient explicitement déclarés dans le " "``__slots__`` ou présent dans le parent)." -#: reference/datamodel.rst:1813 +#: reference/datamodel.rst:1822 msgid "" "The space saved over using *__dict__* can be significant. Attribute lookup " "speed can be significantly improved as well." @@ -3193,7 +3231,7 @@ msgstr "" "significatif. La recherche d'attribut peut aussi s'avérer beaucoup plus " "rapide." -#: reference/datamodel.rst:1818 +#: reference/datamodel.rst:1827 msgid "" "This class variable can be assigned a string, iterable, or sequence of " "strings with variable names used by instances. *__slots__* reserves space " @@ -3206,11 +3244,11 @@ msgstr "" "interdit la création automatique de *__dict__* et *__weakref__* pour chaque " "instance." -#: reference/datamodel.rst:1825 +#: reference/datamodel.rst:1834 msgid "Notes on using *__slots__*" msgstr "Note sur l'utilisation de *__slots__*" -#: reference/datamodel.rst:1827 +#: reference/datamodel.rst:1836 msgid "" "When inheriting from a class without *__slots__*, the *__dict__* and " "*__weakref__* attribute of the instances will always be accessible." @@ -3218,7 +3256,7 @@ msgstr "" "Lorsque vous héritez d'une classe sans *__slots__*, les attributs *__dict__* " "et *__weakref__* des instances sont toujours accessibles." -#: reference/datamodel.rst:1830 +#: reference/datamodel.rst:1839 msgid "" "Without a *__dict__* variable, instances cannot be assigned new variables " "not listed in the *__slots__* definition. Attempts to assign to an unlisted " @@ -3232,7 +3270,7 @@ msgstr "" "Si l'assignation dynamique de nouvelles variables est nécessaire, ajoutez " "``'__dict__'`` à la séquence de chaînes dans la déclaration *__slots__*." -#: reference/datamodel.rst:1836 +#: reference/datamodel.rst:1845 msgid "" "Without a *__weakref__* variable for each instance, classes defining " "*__slots__* do not support weak references to its instances. If weak " @@ -3245,7 +3283,7 @@ msgstr "" "``'__weakref__'`` à la séquence de chaînes dans la déclaration de " "*__slots__*." -#: reference/datamodel.rst:1841 +#: reference/datamodel.rst:1850 msgid "" "*__slots__* are implemented at the class level by creating descriptors (:ref:" "`descriptors`) for each variable name. As a result, class attributes cannot " @@ -3258,7 +3296,7 @@ msgstr "" "aux variables d'instances définies par *__slots__* ; sinon, l'attribut de " "classe surchargerait l'assignation par descripteur." -#: reference/datamodel.rst:1847 +#: reference/datamodel.rst:1856 msgid "" "The action of a *__slots__* declaration is not limited to the class where it " "is defined. *__slots__* declared in parents are available in child classes. " @@ -3272,7 +3310,7 @@ msgstr "" "et un *__weakref__* à moins qu'elles ne définissent aussi un *__slots__* " "(qui ne doit contenir alors que les noms *supplémentaires* du *slot*)." -#: reference/datamodel.rst:1853 +#: reference/datamodel.rst:1862 msgid "" "If a class defines a slot also defined in a base class, the instance " "variable defined by the base class slot is inaccessible (except by " @@ -3286,7 +3324,7 @@ msgstr "" "signification du programme indéfinie. Dans le futur, une vérification sera " "ajoutée pour empêcher cela." -#: reference/datamodel.rst:1858 +#: reference/datamodel.rst:1867 msgid "" "Nonempty *__slots__* does not work for classes derived from \"variable-length" "\" built-in types such as :class:`int`, :class:`bytes` and :class:`tuple`." @@ -3295,7 +3333,7 @@ msgstr "" "natifs à longueur variable tels que :class:`int`, :class:`bytes` et :class:" "`tuple`." -#: reference/datamodel.rst:1861 +#: reference/datamodel.rst:1870 msgid "" "Any non-string iterable may be assigned to *__slots__*. Mappings may also be " "used; however, in the future, special meaning may be assigned to the values " @@ -3306,14 +3344,14 @@ msgstr "" "le futur, des significations spéciales pourraient être associées à chacune " "des clés." -#: reference/datamodel.rst:1865 +#: reference/datamodel.rst:1874 msgid "" "*__class__* assignment works only if both classes have the same *__slots__*." msgstr "" "Les assignations de *__class__* ne fonctionnent que si les deux classes ont " "le même *__slots__*." -#: reference/datamodel.rst:1867 +#: reference/datamodel.rst:1876 msgid "" "Multiple inheritance with multiple slotted parent classes can be used, but " "only one parent is allowed to have attributes created by slots (the other " @@ -3324,7 +3362,7 @@ msgstr "" "*__slots__* (les autres classes parentes doivent avoir des *__slots__* " "vides). La violation de cette règle lève :exc:`TypeError`." -#: reference/datamodel.rst:1872 +#: reference/datamodel.rst:1881 msgid "" "If an iterator is used for *__slots__* then a descriptor is created for each " "of the iterator's values. However, the *__slots__* attribute will be an " @@ -3334,11 +3372,11 @@ msgstr "" "pour chacune des valeurs de l'itérateur. Cependant, l'attribut de " "*__slots__* est un itérateur vide." -#: reference/datamodel.rst:1879 +#: reference/datamodel.rst:1888 msgid "Customizing class creation" msgstr "Personnalisation de la création de classes" -#: reference/datamodel.rst:1881 +#: reference/datamodel.rst:1890 msgid "" "Whenever a class inherits from another class, *__init_subclass__* is called " "on that class. This way, it is possible to write classes which change the " @@ -3355,7 +3393,7 @@ msgstr "" "uniquement sur les futures sous-classes de la classe qui définit cette " "méthode." -#: reference/datamodel.rst:1890 +#: reference/datamodel.rst:1899 msgid "" "This method is called whenever the containing class is subclassed. *cls* is " "then the new subclass. If defined as a normal instance method, this method " @@ -3365,7 +3403,7 @@ msgstr "" "la nouvelle sous-classe. Si elle est définie en tant que méthode d'instance " "normale, cette méthode est implicitement convertie en méthode de classe." -#: reference/datamodel.rst:1894 +#: reference/datamodel.rst:1903 msgid "" "Keyword arguments which are given to a new class are passed to the parent's " "class ``__init_subclass__``. For compatibility with other classes using " @@ -3378,7 +3416,7 @@ msgstr "" "les arguments nommés dont vous avez besoin et passer les autres à la classe " "de base, comme ci-dessous ::" -#: reference/datamodel.rst:1908 +#: reference/datamodel.rst:1917 msgid "" "The default implementation ``object.__init_subclass__`` does nothing, but " "raises an error if it is called with any arguments." @@ -3386,7 +3424,7 @@ msgstr "" "L'implémentation par défaut ``object.__init_subclass__`` ne fait rien mais " "lève une erreur si elle est appelée avec un argument." -#: reference/datamodel.rst:1913 +#: reference/datamodel.rst:1922 msgid "" "The metaclass hint ``metaclass`` is consumed by the rest of the type " "machinery, and is never passed to ``__init_subclass__`` implementations. The " @@ -3398,11 +3436,37 @@ msgstr "" "``__init_subclass__``. La métaclasse réelle (plutôt que l'indication " "explicite) peut être récupérée par ``type(cls)``." -#: reference/datamodel.rst:1924 +#: reference/datamodel.rst:1930 +msgid "" +"When a class is created, :meth:`type.__new__` scans the class variables and " +"makes callbacks to those with a :meth:`__set_name__` hook." +msgstr "" + +#: reference/datamodel.rst:1935 +#, fuzzy +msgid "" +"Automatically called at the time the owning class *owner* is created. The " +"object has been assigned to *name* in that class::" +msgstr "" +"Appelée au moment où la classe propriétaire *owner* est créée. La classe " +"descripteur a été assignée à *name*." + +#: reference/datamodel.rst:1941 +msgid "" +"If the class variable is assigned after the class is created, :meth:" +"`__set_name__` will not be called automatically. If needed, :meth:" +"`__set_name__` can be called directly::" +msgstr "" + +#: reference/datamodel.rst:1952 +msgid "See :ref:`class-object-creation` for more details." +msgstr "Consultez :ref:`class-object-creation` pour davantage de détails." + +#: reference/datamodel.rst:1960 msgid "Metaclasses" msgstr "Métaclasses" -#: reference/datamodel.rst:1931 +#: reference/datamodel.rst:1967 msgid "" "By default, classes are constructed using :func:`type`. The class body is " "executed in a new namespace and the class name is bound locally to the " @@ -3412,7 +3476,7 @@ msgstr "" "de la classe est exécuté dans un nouvel espace de nommage et le nom de la " "classe est lié localement au résultat de `type(name, bases, namespace)``." -#: reference/datamodel.rst:1935 +#: reference/datamodel.rst:1971 msgid "" "The class creation process can be customized by passing the ``metaclass`` " "keyword argument in the class definition line, or by inheriting from an " @@ -3425,7 +3489,7 @@ msgstr "" "l'exemple qui suit, ``MyClass`` et ``MySubclass`` sont des instances de " "``Meta`` ::" -#: reference/datamodel.rst:1949 +#: reference/datamodel.rst:1985 msgid "" "Any other keyword arguments that are specified in the class definition are " "passed through to all metaclass operations described below." @@ -3433,37 +3497,37 @@ msgstr "" "Tout autre argument nommé spécifié dans la définition de la classe est passé " "aux opérations de métaclasses décrites auparavant." -#: reference/datamodel.rst:1952 +#: reference/datamodel.rst:1988 msgid "When a class definition is executed, the following steps occur:" msgstr "" "Quand la définition d'une classe est exécutée, les différentes étapes " "suivies sont :" -#: reference/datamodel.rst:1954 +#: reference/datamodel.rst:1990 msgid "MRO entries are resolved;" msgstr "Les entrées MRO sont résolues ;" -#: reference/datamodel.rst:1955 +#: reference/datamodel.rst:1991 msgid "the appropriate metaclass is determined;" msgstr "la métaclasse appropriée est déterminée ;" -#: reference/datamodel.rst:1956 +#: reference/datamodel.rst:1992 msgid "the class namespace is prepared;" msgstr "l'espace de nommage de la classe est préparé ;" -#: reference/datamodel.rst:1957 +#: reference/datamodel.rst:1993 msgid "the class body is executed;" msgstr "le corps de la classe est exécuté ;" -#: reference/datamodel.rst:1958 +#: reference/datamodel.rst:1994 msgid "the class object is created." msgstr "l'objet classe est crée." -#: reference/datamodel.rst:1962 +#: reference/datamodel.rst:1998 msgid "Resolving MRO entries" msgstr "Résolution des entrées MRO" -#: reference/datamodel.rst:1964 +#: reference/datamodel.rst:2000 msgid "" "If a base that appears in class definition is not an instance of :class:" "`type`, then an ``__mro_entries__`` method is searched on it. If found, it " @@ -3478,30 +3542,30 @@ msgstr "" "qui est utilisé à la place de la classe de base. Le *n*-uplet peut être " "vide, dans ce cas la classe de base originale est ignorée." -#: reference/datamodel.rst:2162 +#: reference/datamodel.rst:2198 msgid ":pep:`560` - Core support for typing module and generic types" msgstr "" ":pep:`560` — Gestion de base pour les types modules et les types génériques" -#: reference/datamodel.rst:1976 +#: reference/datamodel.rst:2012 msgid "Determining the appropriate metaclass" msgstr "Détermination de la métaclasse appropriée" -#: reference/datamodel.rst:1980 +#: reference/datamodel.rst:2016 msgid "" "The appropriate metaclass for a class definition is determined as follows:" msgstr "" "La métaclasse appropriée pour une définition de classe est déterminée de la " "manière suivante :" -#: reference/datamodel.rst:1982 +#: reference/datamodel.rst:2018 msgid "" "if no bases and no explicit metaclass are given, then :func:`type` is used;" msgstr "" "si aucune classe et aucune métaclasse n'est donnée, alors :func:`type` est " "utilisée ;" -#: reference/datamodel.rst:1983 +#: reference/datamodel.rst:2019 msgid "" "if an explicit metaclass is given and it is *not* an instance of :func:" "`type`, then it is used directly as the metaclass;" @@ -3509,7 +3573,7 @@ msgstr "" "si une métaclasse explicite est donnée et que *ce n'est pas* une instance " "de :func:`type`, alors elle est utilisée directement en tant que métaclasse ;" -#: reference/datamodel.rst:1985 +#: reference/datamodel.rst:2021 msgid "" "if an instance of :func:`type` is given as the explicit metaclass, or bases " "are defined, then the most derived metaclass is used." @@ -3517,7 +3581,7 @@ msgstr "" "si une instance de :func:`type` est donnée comme métaclasse explicite ou si " "*bases* est définie, alors la métaclasse la plus dérivée est utilisée." -#: reference/datamodel.rst:1988 +#: reference/datamodel.rst:2024 msgid "" "The most derived metaclass is selected from the explicitly specified " "metaclass (if any) and the metaclasses (i.e. ``type(cls)``) of all specified " @@ -3532,11 +3596,11 @@ msgstr "" "candidates. Si aucune des métaclasses candidates ne remplit ce critère, " "alors la définition de la classe échoue en levant ``TypeError``." -#: reference/datamodel.rst:1998 +#: reference/datamodel.rst:2034 msgid "Preparing the class namespace" msgstr "Préparation de l'espace de nommage de la classe" -#: reference/datamodel.rst:2003 +#: reference/datamodel.rst:2039 msgid "" "Once the appropriate metaclass has been identified, then the class namespace " "is prepared. If the metaclass has a ``__prepare__`` attribute, it is called " @@ -3557,7 +3621,7 @@ msgstr "" "l’instance finale est créée, l’espace de nommage est copié vers un nouveau " "``dict``." -#: reference/datamodel.rst:2011 +#: reference/datamodel.rst:2047 msgid "" "If the metaclass has no ``__prepare__`` attribute, then the class namespace " "is initialised as an empty ordered mapping." @@ -3566,21 +3630,21 @@ msgstr "" "de nommage de la classe est initialisé en tant que tableau de " "correspondances ordonné." -#: reference/datamodel.rst:2016 +#: reference/datamodel.rst:2052 msgid ":pep:`3115` - Metaclasses in Python 3000" msgstr ":pep:`3115` — Métaclasses dans Python 3000" -#: reference/datamodel.rst:2017 +#: reference/datamodel.rst:2053 msgid "Introduced the ``__prepare__`` namespace hook" msgstr "" "introduction de la fonction automatique ``__prepare__`` de l'espace de " "nommage" -#: reference/datamodel.rst:2021 +#: reference/datamodel.rst:2057 msgid "Executing the class body" msgstr "Exécution du corps de la classe" -#: reference/datamodel.rst:2026 +#: reference/datamodel.rst:2062 msgid "" "The class body is executed (approximately) as ``exec(body, globals(), " "namespace)``. The key difference from a normal call to :func:`exec` is that " @@ -3595,7 +3659,7 @@ msgstr "" "des portées externes lorsque la définition de classe a lieu dans une " "fonction." -#: reference/datamodel.rst:2032 +#: reference/datamodel.rst:2068 msgid "" "However, even when the class definition occurs inside the function, methods " "defined inside the class still cannot see names defined at the class scope. " @@ -3610,11 +3674,11 @@ msgstr "" "ou *via* la référence implicite ``__class__`` incluse dans la portée " "lexicale et décrite dans la section suivante." -#: reference/datamodel.rst:2041 +#: reference/datamodel.rst:2077 msgid "Creating the class object" msgstr "Création de l'objet classe" -#: reference/datamodel.rst:2048 +#: reference/datamodel.rst:2084 msgid "" "Once the class namespace has been populated by executing the class body, the " "class object is created by calling ``metaclass(name, bases, namespace, " @@ -3626,7 +3690,7 @@ msgstr "" "**kwds)`` (les arguments nommés supplémentaires passés ici sont les mêmes " "que ceux passés à ``__prepare__``)." -#: reference/datamodel.rst:2053 +#: reference/datamodel.rst:2089 msgid "" "This class object is the one that will be referenced by the zero-argument " "form of :func:`super`. ``__class__`` is an implicit closure reference " @@ -3645,7 +3709,7 @@ msgstr "" "l'appel en cours est identifiée en fonction du premier argument transmis à " "la méthode." -#: reference/datamodel.rst:2063 +#: reference/datamodel.rst:2099 msgid "" "In CPython 3.6 and later, the ``__class__`` cell is passed to the metaclass " "as a ``__classcell__`` entry in the class namespace. If present, this must " @@ -3659,10 +3723,11 @@ msgstr "" "__new__`` pour que la classe soit correctement initialisée. Ne pas le faire " "se traduit par un :exc:`RuntimeError` dans Python 3.8." -#: reference/datamodel.rst:2069 +#: reference/datamodel.rst:2105 +#, fuzzy msgid "" "When using the default metaclass :class:`type`, or any metaclass that " -"ultimately calls ``type.__new__``, the following additional customisation " +"ultimately calls ``type.__new__``, the following additional customization " "steps are invoked after creating the class object:" msgstr "" "Quand vous utilisez la métaclasse par défaut :class:`type` ou toute autre " @@ -3670,33 +3735,36 @@ msgstr "" "personnalisation supplémentaires suivantes sont suivies après la création de " "l'objet classe :" -#: reference/datamodel.rst:2073 +#: reference/datamodel.rst:2109 +#, fuzzy msgid "" -"first, ``type.__new__`` collects all of the descriptors in the class " +"The ``type.__new__`` method collects all of the attributes in the class " "namespace that define a :meth:`~object.__set_name__` method;" msgstr "" "d'abord, ``type.__new__`` récupère, dans l'espace de nommage de la classe, " "tous les descripteurs qui définissent une méthode :meth:`~object." "__set_name__` ;" -#: reference/datamodel.rst:2075 +#: reference/datamodel.rst:2111 +#, fuzzy msgid "" -"second, all of these ``__set_name__`` methods are called with the class " -"being defined and the assigned name of that particular descriptor;" +"Those ``__set_name__`` methods are called with the class being defined and " +"the assigned name of that particular attribute;" msgstr "" "ensuite, toutes ces méthodes ``__set_name__`` sont appelées avec la classe " "en cours de définition et le nom assigné à chaque descripteur ;" -#: reference/datamodel.rst:2077 +#: reference/datamodel.rst:2113 +#, fuzzy msgid "" -"finally, the :meth:`~object.__init_subclass__` hook is called on the " -"immediate parent of the new class in its method resolution order." +"The :meth:`~object.__init_subclass__` hook is called on the immediate parent " +"of the new class in its method resolution order." msgstr "" "finalement, la méthode automatique :meth:`~object.__init_subclass__` est " "appelée sur le parent immédiat de la nouvelle classe en utilisant l'ordre de " "résolution des méthodes." -#: reference/datamodel.rst:2080 +#: reference/datamodel.rst:2116 msgid "" "After the class object is created, it is passed to the class decorators " "included in the class definition (if any) and the resulting object is bound " @@ -3707,7 +3775,7 @@ msgstr "" "et l'objet résultant est lié à l'espace de nommage local en tant que classe " "définie." -#: reference/datamodel.rst:2084 +#: reference/datamodel.rst:2120 msgid "" "When a new class is created by ``type.__new__``, the object provided as the " "namespace parameter is copied to a new ordered mapping and the original " @@ -3720,21 +3788,21 @@ msgstr "" "nouvelle copie est encapsulée dans un mandataire en lecture seule qui " "devient l'attribut :attr:`~object.__dict__` de l'objet classe." -#: reference/datamodel.rst:2091 +#: reference/datamodel.rst:2127 msgid ":pep:`3135` - New super" msgstr ":pep:`3135` — Nouvelle méthode super" -#: reference/datamodel.rst:2092 +#: reference/datamodel.rst:2128 msgid "Describes the implicit ``__class__`` closure reference" msgstr "" "Décrit la référence à la fermeture (*closure* en anglais) de la " "``__class__`` implicite" -#: reference/datamodel.rst:2096 +#: reference/datamodel.rst:2132 msgid "Uses for metaclasses" msgstr "Cas d'utilisations des métaclasses" -#: reference/datamodel.rst:2098 +#: reference/datamodel.rst:2134 msgid "" "The potential uses for metaclasses are boundless. Some ideas that have been " "explored include enum, logging, interface checking, automatic delegation, " @@ -3747,11 +3815,11 @@ msgstr "" "de propriétés, les mandataires, les *frameworks* ainsi que le verrouillage " "ou la synchronisation automatique de ressources." -#: reference/datamodel.rst:2105 +#: reference/datamodel.rst:2141 msgid "Customizing instance and subclass checks" msgstr "Personnalisation des instances et vérification des sous-classes" -#: reference/datamodel.rst:2107 +#: reference/datamodel.rst:2143 msgid "" "The following methods are used to override the default behavior of the :func:" "`isinstance` and :func:`issubclass` built-in functions." @@ -3759,7 +3827,7 @@ msgstr "" "Les méthodes suivantes sont utilisées pour surcharger le comportement par " "défaut des fonctions natives :func:`isinstance` et :func:`issubclass`." -#: reference/datamodel.rst:2110 +#: reference/datamodel.rst:2146 msgid "" "In particular, the metaclass :class:`abc.ABCMeta` implements these methods " "in order to allow the addition of Abstract Base Classes (ABCs) as \"virtual " @@ -3771,7 +3839,7 @@ msgstr "" "Base Classes* en anglais) en tant que « classes de base virtuelles » pour " "toute classe ou type (y compris les types natifs)." -#: reference/datamodel.rst:2117 +#: reference/datamodel.rst:2153 msgid "" "Return true if *instance* should be considered a (direct or indirect) " "instance of *class*. If defined, called to implement ``isinstance(instance, " @@ -3781,7 +3849,7 @@ msgstr "" "(directe ou indirecte) de *class*. Si elle est définie, elle est appelée " "pour implémenter ``isinstance(instance, class)``." -#: reference/datamodel.rst:2124 +#: reference/datamodel.rst:2160 msgid "" "Return true if *subclass* should be considered a (direct or indirect) " "subclass of *class*. If defined, called to implement ``issubclass(subclass, " @@ -3791,7 +3859,7 @@ msgstr "" "(directe ou indirecte) de *class*. Si elle est définie, appelée pour " "implémenter ``issubclass(subclass, class)``." -#: reference/datamodel.rst:2129 +#: reference/datamodel.rst:2165 msgid "" "Note that these methods are looked up on the type (metaclass) of a class. " "They cannot be defined as class methods in the actual class. This is " @@ -3804,11 +3872,11 @@ msgstr "" "spéciales qui sont appelées pour les instances, sauf qu'ici l'instance est " "elle-même une classe." -#: reference/datamodel.rst:2140 +#: reference/datamodel.rst:2176 msgid ":pep:`3119` - Introducing Abstract Base Classes" msgstr ":pep:`3119` — Introduction aux classes de bases abstraites" -#: reference/datamodel.rst:2137 +#: reference/datamodel.rst:2173 msgid "" "Includes the specification for customizing :func:`isinstance` and :func:" "`issubclass` behavior through :meth:`~class.__instancecheck__` and :meth:" @@ -3822,11 +3890,11 @@ msgstr "" "motivation pour cette fonctionnalité l'ajout les classes de base abstraites " "(voir le module :mod:`abc`) au langage." -#: reference/datamodel.rst:2145 +#: reference/datamodel.rst:2181 msgid "Emulating generic types" msgstr "Émulation de types génériques" -#: reference/datamodel.rst:2147 +#: reference/datamodel.rst:2183 msgid "" "One can implement the generic class syntax as specified by :pep:`484` (for " "example ``List[int]``) by defining a special method:" @@ -3835,7 +3903,7 @@ msgstr "" "la :pep:`484` (par exemple ``List[int]``) en définissant une méthode " "spéciale :" -#: reference/datamodel.rst:2152 +#: reference/datamodel.rst:2188 msgid "" "Return an object representing the specialization of a generic class by type " "arguments found in *key*." @@ -3843,7 +3911,7 @@ msgstr "" "Renvoie un objet représentant la spécialisation d'une classe générique en " "fonction des arguments types trouvés dans *key*." -#: reference/datamodel.rst:2155 +#: reference/datamodel.rst:2191 msgid "" "This method is looked up on the class object itself, and when defined in the " "class body, this method is implicitly a class method. Note, this mechanism " @@ -3856,11 +3924,11 @@ msgstr "" "principalement réservé à une utilisation avec des indications de type " "statiques, d'autres utilisations sont déconseillées." -#: reference/datamodel.rst:2168 +#: reference/datamodel.rst:2204 msgid "Emulating callable objects" msgstr "Émulation d'objets appelables" -#: reference/datamodel.rst:2175 +#: reference/datamodel.rst:2211 msgid "" "Called when the instance is \"called\" as a function; if this method is " "defined, ``x(arg1, arg2, ...)`` roughly translates to ``type(x).__call__(x, " @@ -3870,11 +3938,11 @@ msgstr "" "méthode est définie, ``x(arg1, arg2, …)`` est un raccourci pour ``type(x)." "__call__(x, arg1, …)``." -#: reference/datamodel.rst:2182 +#: reference/datamodel.rst:2218 msgid "Emulating container types" msgstr "Émulation de types conteneurs" -#: reference/datamodel.rst:2184 +#: reference/datamodel.rst:2220 msgid "" "The following methods can be defined to implement container objects. " "Containers usually are sequences (such as lists or tuples) or mappings (like " @@ -3941,7 +4009,7 @@ msgstr "" "de correspondances, :meth:`__iter__` doit itérer sur les clés de l'objet ; " "pour les séquences, elle doit itérer sur les valeurs." -#: reference/datamodel.rst:2219 +#: reference/datamodel.rst:2255 msgid "" "Called to implement the built-in function :func:`len`. Should return the " "length of the object, an integer ``>=`` 0. Also, an object that doesn't " @@ -3953,7 +4021,7 @@ msgstr "" "définit pas de méthode :meth:`__bool__` et dont la méthode :meth:`__len__` " "renvoie zéro est considéré comme valant ``False`` dans un contexte booléen." -#: reference/datamodel.rst:2226 +#: reference/datamodel.rst:2262 msgid "" "In CPython, the length is required to be at most :attr:`sys.maxsize`. If the " "length is larger than :attr:`!sys.maxsize` some features (such as :func:" @@ -3967,7 +4035,7 @@ msgstr "" "exc:`!OverflowError` lors de tests booléens, un objet doit définir la " "méthode :meth:`__bool__`." -#: reference/datamodel.rst:2235 +#: reference/datamodel.rst:2271 msgid "" "Called to implement :func:`operator.length_hint`. Should return an estimated " "length for the object (which may be greater or less than the actual length). " @@ -3984,22 +4052,22 @@ msgstr "" "méthode est utilisée uniquement pour optimiser les traitements et n'est " "jamais tenue de renvoyer un résultat exact." -#: reference/datamodel.rst:2249 +#: reference/datamodel.rst:2285 msgid "" "Slicing is done exclusively with the following three methods. A call like ::" msgstr "" "Le découpage est effectué uniquement à l'aide des trois méthodes suivantes. " "Un appel comme ::" -#: reference/datamodel.rst:2253 +#: reference/datamodel.rst:2289 msgid "is translated to ::" msgstr "est traduit en ::" -#: reference/datamodel.rst:2257 +#: reference/datamodel.rst:2293 msgid "and so forth. Missing slice items are always filled in with ``None``." msgstr "et ainsi de suite. Les éléments manquants sont remplacés par ``None``." -#: reference/datamodel.rst:2262 +#: reference/datamodel.rst:2298 msgid "" "Called to implement evaluation of ``self[key]``. For sequence types, the " "accepted keys should be integers and slice objects. Note that the special " @@ -4020,7 +4088,7 @@ msgstr "" "`IndexError` doit être levée. Pour les tableaux de correspondances, si *key* " "n'existe pas dans le conteneur, une :exc:`KeyError` doit être levée." -#: reference/datamodel.rst:2273 +#: reference/datamodel.rst:2309 msgid "" ":keyword:`for` loops expect that an :exc:`IndexError` will be raised for " "illegal indexes to allow proper detection of the end of the sequence." @@ -4028,7 +4096,7 @@ msgstr "" ":keyword:`for` s'attend à ce qu'une :exc:`IndexError` soit levée en cas " "d'indice illégal afin de détecter correctement la fin de la séquence." -#: reference/datamodel.rst:2279 +#: reference/datamodel.rst:2315 msgid "" "Called to implement assignment to ``self[key]``. Same note as for :meth:" "`__getitem__`. This should only be implemented for mappings if the objects " @@ -4044,7 +4112,7 @@ msgstr "" "exceptions que pour la méthode :meth:`__getitem__` doivent être levées en " "cas de mauvaises valeurs de clés." -#: reference/datamodel.rst:2288 +#: reference/datamodel.rst:2324 msgid "" "Called to implement deletion of ``self[key]``. Same note as for :meth:" "`__getitem__`. This should only be implemented for mappings if the objects " @@ -4059,7 +4127,7 @@ msgstr "" "Les mêmes exceptions que pour la méthode :meth:`__getitem__` doivent être " "levées en cas de mauvaises valeurs de clés." -#: reference/datamodel.rst:2297 +#: reference/datamodel.rst:2333 msgid "" "Called by :class:`dict`\\ .\\ :meth:`__getitem__` to implement ``self[key]`` " "for dict subclasses when key is not in the dictionary." @@ -4068,7 +4136,7 @@ msgstr "" "``self[key]`` dans les sous-classes de dictionnaires lorsque la clé n'est " "pas dans le dictionnaire." -#: reference/datamodel.rst:2303 +#: reference/datamodel.rst:2339 msgid "" "This method is called when an iterator is required for a container. This " "method should return a new iterator object that can iterate over all the " @@ -4080,7 +4148,7 @@ msgstr "" "tous les objets du conteneur. Pour les tableaux de correspondances, elle " "doit itérer sur les clés du conteneur." -#: reference/datamodel.rst:2307 +#: reference/datamodel.rst:2343 msgid "" "Iterator objects also need to implement this method; they are required to " "return themselves. For more information on iterator objects, see :ref:" @@ -4090,7 +4158,7 @@ msgstr "" "alors se renvoyer eux-mêmes. Pour plus d'information sur les objets " "itérateurs, lisez :ref:`typeiter`." -#: reference/datamodel.rst:2313 +#: reference/datamodel.rst:2349 msgid "" "Called (if present) by the :func:`reversed` built-in to implement reverse " "iteration. It should return a new iterator object that iterates over all " @@ -4100,7 +4168,7 @@ msgstr "" "implémenter l'itération en sens inverse. Elle doit renvoyer un nouvel objet " "itérateur qui itère sur tous les objets du conteneur en sens inverse." -#: reference/datamodel.rst:2317 +#: reference/datamodel.rst:2353 msgid "" "If the :meth:`__reversed__` method is not provided, the :func:`reversed` " "built-in will fall back to using the sequence protocol (:meth:`__len__` and :" @@ -4114,7 +4182,7 @@ msgstr "" "doivent fournir :meth:`__reversed__` que si l'implémentation qu'ils " "proposent est plus efficace que celle de :func:`reversed`." -#: reference/datamodel.rst:2324 +#: reference/datamodel.rst:2360 msgid "" "The membership test operators (:keyword:`in` and :keyword:`not in`) are " "normally implemented as an iteration through a container. However, container " @@ -4127,7 +4195,7 @@ msgstr "" "suivantes avec une implémentation plus efficace, qui ne requièrent " "d'ailleurs pas que l'objet soit itérable." -#: reference/datamodel.rst:2331 +#: reference/datamodel.rst:2367 msgid "" "Called to implement membership test operators. Should return true if *item* " "is in *self*, false otherwise. For mapping objects, this should consider " @@ -4138,7 +4206,7 @@ msgstr "" "tableaux de correspondances, seules les clés sont considérées (pas les " "valeurs des paires clés-valeurs)." -#: reference/datamodel.rst:2335 +#: reference/datamodel.rst:2371 msgid "" "For objects that don't define :meth:`__contains__`, the membership test " "first tries iteration via :meth:`__iter__`, then the old sequence iteration " @@ -4151,11 +4219,11 @@ msgstr "" "reportez-vous à :ref:`cette section dans la référence du langage `." -#: reference/datamodel.rst:2344 +#: reference/datamodel.rst:2380 msgid "Emulating numeric types" msgstr "Émulation de types numériques" -#: reference/datamodel.rst:2346 +#: reference/datamodel.rst:2382 msgid "" "The following methods can be defined to emulate numeric objects. Methods " "corresponding to operations that are not supported by the particular kind of " @@ -4168,7 +4236,7 @@ msgstr "" "opérations bit à bit pour les nombres qui ne sont pas entiers) doivent être " "laissées indéfinies." -#: reference/datamodel.rst:2372 +#: reference/datamodel.rst:2408 msgid "" "These methods are called to implement the binary arithmetic operations (``" "+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, " @@ -4191,7 +4259,7 @@ msgstr "" "accepter un troisième argument optionnel si la version ternaire de la " "fonction native :func:`pow` est autorisée." -#: reference/datamodel.rst:2383 +#: reference/datamodel.rst:2419 msgid "" "If one of those methods does not support the operation with the supplied " "arguments, it should return ``NotImplemented``." @@ -4199,7 +4267,7 @@ msgstr "" "Si l'une de ces méthodes n'autorise pas l'opération avec les arguments " "donnés, elle doit renvoyer ``NotImplemented``." -#: reference/datamodel.rst:2406 +#: reference/datamodel.rst:2442 msgid "" "These methods are called to implement the binary arithmetic operations (``" "+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, " @@ -4220,7 +4288,7 @@ msgstr "" "`__rsub__`, ``y.__rsub__(x)`` est appelée si ``x.__sub__(y)`` renvoie " "*NotImplemented*." -#: reference/datamodel.rst:2417 +#: reference/datamodel.rst:2453 msgid "" "Note that ternary :func:`pow` will not try calling :meth:`__rpow__` (the " "coercion rules would become too complicated)." @@ -4228,7 +4296,7 @@ msgstr "" "Notez que la fonction ternaire :func:`pow` n'essaie pas d'appeler :meth:" "`__rpow__` (les règles de coercition seraient trop compliquées)." -#: reference/datamodel.rst:2422 +#: reference/datamodel.rst:2458 msgid "" "If the right operand's type is a subclass of the left operand's type and " "that subclass provides a different implementation of the reflected method " @@ -4242,7 +4310,7 @@ msgstr "" "méthode originelle de l'opérande gauche. Ce comportement permet à des sous-" "classes de surcharger les opérations de leurs ancêtres." -#: reference/datamodel.rst:2443 +#: reference/datamodel.rst:2479 msgid "" "These methods are called to implement the augmented arithmetic assignments " "(``+=``, ``-=``, ``*=``, ``@=``, ``/=``, ``//=``, ``%=``, ``**=``, ``<<=``, " @@ -4271,19 +4339,7 @@ msgstr "" "erreurs inattendues (voir :ref:`faq-augmented-assignment-tuple-error`), mais " "ce comportement est en fait partie intégrante du modèle de données." -# Pas de majuscule car suit un ':' dans le rendu. -#: reference/datamodel.rst:2458 -msgid "" -"Due to a bug in the dispatching mechanism for ``**=``, a class that defines :" -"meth:`__ipow__` but returns ``NotImplemented`` would fail to fall back to " -"``x.__pow__(y)`` and ``y.__rpow__(x)``. This bug is fixed in Python 3.10." -msgstr "" -"en raison d'un bogue dans le mécanisme de distribution de ``**=``, une " -"classe qui définit :meth:`__ipow__` mais qui renvoie ``NotImplemented`` " -"n'arriverait pas à se replier sur ``x.__pow__(y)`` et ``y.__rpow__(x)``. Ce " -"bogue est corrigé dans Python 3.10." - -#: reference/datamodel.rst:2471 +#: reference/datamodel.rst:2500 msgid "" "Called to implement the unary arithmetic operations (``-``, ``+``, :func:" "`abs` and ``~``)." @@ -4291,7 +4347,7 @@ msgstr "" "Appelée pour implémenter les opérations arithmétiques unaires (``-``, ``" "+``, :func:`abs` et ``~``)." -#: reference/datamodel.rst:2484 +#: reference/datamodel.rst:2513 msgid "" "Called to implement the built-in functions :func:`complex`, :func:`int` and :" "func:`float`. Should return a value of the appropriate type." @@ -4299,7 +4355,7 @@ msgstr "" "Appelées pour implémenter les fonctions natives :func:`complex`, :func:`int` " "et :func:`float`. Elles doivent renvoyer une valeur du type approprié." -#: reference/datamodel.rst:2491 +#: reference/datamodel.rst:2520 msgid "" "Called to implement :func:`operator.index`, and whenever Python needs to " "losslessly convert the numeric object to an integer object (such as in " @@ -4313,7 +4369,7 @@ msgstr "" "`oct`). La présence de cette méthode indique que l'objet numérique est un " "type entier. Elle doit renvoyer un entier." -#: reference/datamodel.rst:2497 +#: reference/datamodel.rst:2526 msgid "" "If :meth:`__int__`, :meth:`__float__` and :meth:`__complex__` are not " "defined then corresponding built-in functions :func:`int`, :func:`float` " @@ -4323,7 +4379,7 @@ msgstr "" "définies, alors les fonctions natives :func:`int`, :func:`float` et :func:" "`complex` redirigent par défaut vers :meth:`__index__`." -#: reference/datamodel.rst:2509 +#: reference/datamodel.rst:2538 msgid "" "Called to implement the built-in function :func:`round` and :mod:`math` " "functions :func:`~math.trunc`, :func:`~math.floor` and :func:`~math.ceil`. " @@ -4337,7 +4393,7 @@ msgstr "" "toutes ces méthodes doivent renvoyer la valeur de l'objet tronquée pour " "donner un :class:`~numbers.Integral` (typiquement un :class:`int`)." -#: reference/datamodel.rst:2515 +#: reference/datamodel.rst:2544 msgid "" "If :meth:`__int__` is not defined then the built-in function :func:`int` " "falls back to :meth:`__trunc__`." @@ -4345,11 +4401,11 @@ msgstr "" "Si :meth:`__int__` n'est pas définie, alors la fonction native :func:`int` " "se replie sur :meth:`__trunc__`." -#: reference/datamodel.rst:2522 +#: reference/datamodel.rst:2551 msgid "With Statement Context Managers" msgstr "Gestionnaire de contexte With" -#: reference/datamodel.rst:2524 +#: reference/datamodel.rst:2553 msgid "" "A :dfn:`context manager` is an object that defines the runtime context to be " "established when executing a :keyword:`with` statement. The context manager " @@ -4366,7 +4422,7 @@ msgstr "" "dans la section :ref:`with`), mais ils peuvent aussi être directement " "invoqués par leurs méthodes." -#: reference/datamodel.rst:2535 +#: reference/datamodel.rst:2564 msgid "" "Typical uses of context managers include saving and restoring various kinds " "of global state, locking and unlocking resources, closing opened files, etc." @@ -4375,14 +4431,14 @@ msgstr "" "et la restauration d'états divers, le verrouillage et le déverrouillage de " "ressources, la fermeture de fichiers ouverts, etc." -#: reference/datamodel.rst:2538 +#: reference/datamodel.rst:2567 msgid "" "For more information on context managers, see :ref:`typecontextmanager`." msgstr "" "Pour plus d'informations sur les gestionnaires de contexte, lisez :ref:" "`typecontextmanager`." -#: reference/datamodel.rst:2543 +#: reference/datamodel.rst:2572 msgid "" "Enter the runtime context related to this object. The :keyword:`with` " "statement will bind this method's return value to the target(s) specified in " @@ -4393,7 +4449,7 @@ msgstr "" "cible spécifiée par la clause :keyword:`!as` de l'instruction, si elle est " "spécifiée." -#: reference/datamodel.rst:2550 +#: reference/datamodel.rst:2579 msgid "" "Exit the runtime context related to this object. The parameters describe the " "exception that caused the context to be exited. If the context was exited " @@ -4403,7 +4459,7 @@ msgstr "" "l'exception qui a causé la sortie du contexte. Si l'on sort du contexte sans " "exception, les trois arguments sont à :const:`None`." -#: reference/datamodel.rst:2554 +#: reference/datamodel.rst:2583 msgid "" "If an exception is supplied, and the method wishes to suppress the exception " "(i.e., prevent it from being propagated), it should return a true value. " @@ -4415,7 +4471,7 @@ msgstr "" "propagée), elle doit renvoyer ``True``. Sinon, l'exception est traitée " "normalement à la sortie de cette méthode." -#: reference/datamodel.rst:2558 +#: reference/datamodel.rst:2587 msgid "" "Note that :meth:`__exit__` methods should not reraise the passed-in " "exception; this is the caller's responsibility." @@ -4423,11 +4479,11 @@ msgstr "" "Notez qu'une méthode :meth:`__exit__` ne doit pas lever à nouveau " "l'exception qu'elle reçoit ; c'est du ressort de l'appelant." -#: reference/datamodel.rst:2565 +#: reference/datamodel.rst:2594 msgid ":pep:`343` - The \"with\" statement" msgstr ":pep:`343` — L'instruction ``with``" -#: reference/datamodel.rst:2565 +#: reference/datamodel.rst:2594 msgid "" "The specification, background, and examples for the Python :keyword:`with` " "statement." @@ -4435,11 +4491,53 @@ msgstr "" "La spécification, les motivations et des exemples de l'instruction :keyword:" "`with` en Python." -#: reference/datamodel.rst:2572 +#: reference/datamodel.rst:2601 +msgid "Customizing positional arguments in class pattern matching" +msgstr "" + +#: reference/datamodel.rst:2603 +msgid "" +"When using a class name in a pattern, positional arguments in the pattern " +"are not allowed by default, i.e. ``case MyClass(x, y)`` is typically invalid " +"without special support in ``MyClass``. To be able to use that kind of " +"patterns, the class needs to define a *__match_args__* attribute." +msgstr "" + +#: reference/datamodel.rst:2610 +msgid "" +"This class variable can be assigned a tuple of strings. When this class is " +"used in a class pattern with positional arguments, each positional argument " +"will be converted into a keyword argument, using the corresponding value in " +"*__match_args__* as the keyword. The absence of this attribute is equivalent " +"to setting it to ``()``." +msgstr "" + +#: reference/datamodel.rst:2616 +msgid "" +"For example, if ``MyClass.__match_args__`` is ``(\"left\", \"center\", " +"\"right\")`` that means that ``case MyClass(x, y)`` is equivalent to ``case " +"MyClass(left=x, center=y)``. Note that the number of arguments in the " +"pattern must be smaller than or equal to the number of elements in " +"*__match_args__*; if it is larger, the pattern match attempt will raise a :" +"exc:`TypeError`." +msgstr "" + +#: reference/datamodel.rst:2626 +msgid ":pep:`634` - Structural Pattern Matching" +msgstr "" + +#: reference/datamodel.rst:2627 +#, fuzzy +msgid "The specification for the Python ``match`` statement." +msgstr "" +"La spécification, les motivations et des exemples de l'instruction :keyword:" +"`with` en Python." + +#: reference/datamodel.rst:2633 msgid "Special method lookup" msgstr "Recherche des méthodes spéciales" -#: reference/datamodel.rst:2574 +#: reference/datamodel.rst:2635 msgid "" "For custom classes, implicit invocations of special methods are only " "guaranteed to work correctly if defined on an object's type, not in the " @@ -4451,7 +4549,7 @@ msgstr "" "type d'objet, pas dans le dictionnaire de l'objet instance. Ce comportement " "explique pourquoi le code suivant lève une exception ::" -#: reference/datamodel.rst:2589 +#: reference/datamodel.rst:2650 msgid "" "The rationale behind this behaviour lies with a number of special methods " "such as :meth:`__hash__` and :meth:`__repr__` that are implemented by all " @@ -4465,7 +4563,7 @@ msgstr "" "méthodes utilisait le processus normal de recherche, elles ne " "fonctionneraient pas si on les appelait sur l'objet type lui-même ::" -#: reference/datamodel.rst:2602 +#: reference/datamodel.rst:2663 msgid "" "Incorrectly attempting to invoke an unbound method of a class in this way is " "sometimes referred to as 'metaclass confusion', and is avoided by bypassing " @@ -4475,7 +4573,7 @@ msgstr "" "parfois appelé « confusion de métaclasse » et se contourne en shuntant " "l'instance lors de la recherche des méthodes spéciales ::" -#: reference/datamodel.rst:2611 +#: reference/datamodel.rst:2672 msgid "" "In addition to bypassing any instance attributes in the interest of " "correctness, implicit special method lookup generally also bypasses the :" @@ -4485,7 +4583,7 @@ msgstr "" "correctement, la recherche des méthodes spéciales implicites shunte aussi la " "méthode :meth:`__getattribute__` même dans la métaclasse de l'objet ::" -#: reference/datamodel.rst:2637 +#: reference/datamodel.rst:2698 msgid "" "Bypassing the :meth:`__getattribute__` machinery in this fashion provides " "significant scope for speed optimisations within the interpreter, at the " @@ -4499,15 +4597,15 @@ msgstr "" "être définie sur l'objet classe lui-même afin d'être invoquée de manière " "cohérente par l'interpréteur)." -#: reference/datamodel.rst:2648 +#: reference/datamodel.rst:2709 msgid "Coroutines" msgstr "Coroutines" -#: reference/datamodel.rst:2652 +#: reference/datamodel.rst:2713 msgid "Awaitable Objects" msgstr "Objets *attendables* (*awaitable*)" -#: reference/datamodel.rst:2654 +#: reference/datamodel.rst:2715 msgid "" "An :term:`awaitable` object generally implements an :meth:`__await__` " "method. :term:`Coroutine objects ` returned from :keyword:`async " @@ -4517,7 +4615,7 @@ msgstr "" "`__await__`. Les objets :term:`coroutine` renvoyés par les fonctions :" "keyword:`async def` sont des *attendables* (*awaitable*)." -#: reference/datamodel.rst:2660 +#: reference/datamodel.rst:2721 msgid "" "The :term:`generator iterator` objects returned from generators decorated " "with :func:`types.coroutine` or :func:`asyncio.coroutine` are also " @@ -4528,7 +4626,7 @@ msgstr "" "des *attendables* (*awaitable*), mais ils n'implémentent pas :meth:" "`__await__`." -#: reference/datamodel.rst:2666 +#: reference/datamodel.rst:2727 msgid "" "Must return an :term:`iterator`. Should be used to implement :term:" "`awaitable` objects. For instance, :class:`asyncio.Future` implements this " @@ -4538,17 +4636,17 @@ msgstr "" "objets :term:`awaitable`. Par exemple, :class:`asyncio.Future` implémente " "cette méthode pour être compatible avec les expressions :keyword:`await`." -#: reference/datamodel.rst:2672 +#: reference/datamodel.rst:2733 msgid ":pep:`492` for additional information about awaitable objects." msgstr "" ":pep:`492` pour les informations relatives aux objets *attendables* " "(*awaitable*)." -#: reference/datamodel.rst:2678 +#: reference/datamodel.rst:2739 msgid "Coroutine Objects" msgstr "Objets coroutines" -#: reference/datamodel.rst:2680 +#: reference/datamodel.rst:2741 msgid "" ":term:`Coroutine objects ` are :term:`awaitable` objects. A " "coroutine's execution can be controlled by calling :meth:`__await__` and " @@ -4566,7 +4664,7 @@ msgstr "" "exception, elle est propagée par l'itérateur. Les coroutines ne doivent pas " "lever directement des exceptions :exc:`StopIteration` non gérées." -#: reference/datamodel.rst:2688 +#: reference/datamodel.rst:2749 msgid "" "Coroutines also have the methods listed below, which are analogous to those " "of generators (see :ref:`generator-methods`). However, unlike generators, " @@ -4577,13 +4675,13 @@ msgstr "" "contraire des générateurs, vous ne pouvez pas itérer directement sur des " "coroutines." -#: reference/datamodel.rst:2692 +#: reference/datamodel.rst:2753 msgid "It is a :exc:`RuntimeError` to await on a coroutine more than once." msgstr "" "Utiliser *await* plus d'une fois sur une coroutine lève une :exc:" "`RuntimeError`." -#: reference/datamodel.rst:2698 +#: reference/datamodel.rst:2759 msgid "" "Starts or resumes execution of the coroutine. If *value* is ``None``, this " "is equivalent to advancing the iterator returned by :meth:`__await__`. If " @@ -4600,7 +4698,7 @@ msgstr "" "est le même que lorsque vous itérez sur la valeur de retour de :meth:" "`__await__`, décrite ci-dessus." -#: reference/datamodel.rst:2708 +#: reference/datamodel.rst:2769 msgid "" "Raises the specified exception in the coroutine. This method delegates to " "the :meth:`~generator.throw` method of the iterator that caused the " @@ -4618,7 +4716,7 @@ msgstr "" "retour de :meth:`__await__`, décrite ci-dessus. Si l'exception n'est pas " "gérée par la coroutine, elle est propagée à l'appelant." -#: reference/datamodel.rst:2719 +#: reference/datamodel.rst:2780 msgid "" "Causes the coroutine to clean itself up and exit. If the coroutine is " "suspended, this method first delegates to the :meth:`~generator.close` " @@ -4635,7 +4733,7 @@ msgstr "" "la coroutine est marquée comme ayant terminé son exécution, même si elle n'a " "jamais démarré." -#: reference/datamodel.rst:2727 +#: reference/datamodel.rst:2788 msgid "" "Coroutine objects are automatically closed using the above process when they " "are about to be destroyed." @@ -4643,11 +4741,11 @@ msgstr "" "Les objets coroutines sont automatiquement fermés en utilisant le processus " "décrit au-dessus au moment où ils sont détruits." -#: reference/datamodel.rst:2733 +#: reference/datamodel.rst:2794 msgid "Asynchronous Iterators" msgstr "Itérateurs asynchrones" -#: reference/datamodel.rst:2735 +#: reference/datamodel.rst:2796 msgid "" "An *asynchronous iterator* can call asynchronous code in its ``__anext__`` " "method." @@ -4655,18 +4753,18 @@ msgstr "" "Un *itérateur asynchrone* peut appeler du code asynchrone dans sa méthode " "``__anext__``." -#: reference/datamodel.rst:2738 +#: reference/datamodel.rst:2799 msgid "" "Asynchronous iterators can be used in an :keyword:`async for` statement." msgstr "" "Les itérateurs asynchrones peuvent être utilisés dans des instructions :" "keyword:`async for`." -#: reference/datamodel.rst:2742 +#: reference/datamodel.rst:2803 msgid "Must return an *asynchronous iterator* object." msgstr "Doit renvoyer un objet *itérateur asynchrone*." -#: reference/datamodel.rst:2746 +#: reference/datamodel.rst:2807 msgid "" "Must return an *awaitable* resulting in a next value of the iterator. " "Should raise a :exc:`StopAsyncIteration` error when the iteration is over." @@ -4675,11 +4773,11 @@ msgstr "" "suivante de l'itérateur. Doit lever une :exc:`StopAsyncIteration` quand " "l'itération est terminée." -#: reference/datamodel.rst:2749 +#: reference/datamodel.rst:2810 msgid "An example of an asynchronous iterable object::" msgstr "Un exemple d'objet itérateur asynchrone ::" -#: reference/datamodel.rst:2766 +#: reference/datamodel.rst:2827 msgid "" "Prior to Python 3.7, ``__aiter__`` could return an *awaitable* that would " "resolve to an :term:`asynchronous iterator `." @@ -4688,7 +4786,7 @@ msgstr "" "(*awaitable*) qui se résolvait potentiellement en un :term:`itérateur " "asynchrone `." -#: reference/datamodel.rst:2771 +#: reference/datamodel.rst:2832 msgid "" "Starting with Python 3.7, ``__aiter__`` must return an asynchronous iterator " "object. Returning anything else will result in a :exc:`TypeError` error." @@ -4696,11 +4794,11 @@ msgstr "" "À partir de Python 3.7, ``__aiter__`` doit renvoyer un objet itérateur " "asynchrone. Renvoyer autre chose entraine une erreur :exc:`TypeError`." -#: reference/datamodel.rst:2779 +#: reference/datamodel.rst:2840 msgid "Asynchronous Context Managers" msgstr "Gestionnaires de contexte asynchrones" -#: reference/datamodel.rst:2781 +#: reference/datamodel.rst:2842 msgid "" "An *asynchronous context manager* is a *context manager* that is able to " "suspend execution in its ``__aenter__`` and ``__aexit__`` methods." @@ -4709,7 +4807,7 @@ msgstr "" "qui est capable de suspendre son exécution dans ses méthodes ``__aenter__`` " "et ``__aexit__``." -#: reference/datamodel.rst:2784 +#: reference/datamodel.rst:2845 msgid "" "Asynchronous context managers can be used in an :keyword:`async with` " "statement." @@ -4717,7 +4815,7 @@ msgstr "" "Les gestionnaires de contexte asynchrones peuvent être utilisés dans des " "instructions :keyword:`async with`." -#: reference/datamodel.rst:2788 +#: reference/datamodel.rst:2849 msgid "" "Semantically similar to :meth:`__enter__`, the only difference being that it " "must return an *awaitable*." @@ -4725,7 +4823,7 @@ msgstr "" "Sémantiquement équivalente à :meth:`__enter__`, à la seule différence près " "qu'elle doit renvoyer un *attendable* (*awaitable*)." -#: reference/datamodel.rst:2793 +#: reference/datamodel.rst:2854 msgid "" "Semantically similar to :meth:`__exit__`, the only difference being that it " "must return an *awaitable*." @@ -4733,15 +4831,15 @@ msgstr "" "Sémantiquement équivalente à :meth:`__exit__`, à la seule différence près " "qu'elle doit renvoyer un *attendable* (*awaitable*)." -#: reference/datamodel.rst:2796 +#: reference/datamodel.rst:2857 msgid "An example of an asynchronous context manager class::" msgstr "Un exemple de classe de gestionnaire de contexte asynchrone ::" -#: reference/datamodel.rst:2809 +#: reference/datamodel.rst:2870 msgid "Footnotes" msgstr "Notes de bas de page" -#: reference/datamodel.rst:2810 +#: reference/datamodel.rst:2871 msgid "" "It *is* possible in some cases to change an object's type, under certain " "controlled conditions. It generally isn't a good idea though, since it can " @@ -4752,7 +4850,7 @@ msgstr "" "car cela peut conduire à un comportement très étrange si ce n'est pas géré " "correctement." -#: reference/datamodel.rst:2814 +#: reference/datamodel.rst:2875 msgid "" "The :meth:`__hash__`, :meth:`__iter__`, :meth:`__reversed__`, and :meth:" "`__contains__` methods have special handling for this; others will still " @@ -4764,7 +4862,7 @@ msgstr "" "lèvent toujours :exc:`TypeError`, mais le font en considérant que ``None`` " "n'est pas un appelable." -#: reference/datamodel.rst:2819 +#: reference/datamodel.rst:2880 msgid "" "\"Does not support\" here means that the class has no such method, or the " "method returns ``NotImplemented``. Do not set the method to ``None`` if you " @@ -4776,7 +4874,7 @@ msgstr "" "``None`` à la méthode si vous voulez un repli vers la méthode symétrique de " "l'opérande de droite — cela aurait pour effet de *bloquer* un tel repli." -#: reference/datamodel.rst:2825 +#: reference/datamodel.rst:2886 msgid "" "For operands of the same type, it is assumed that if the non-reflected " "method -- such as :meth:`__add__` -- fails then the overall operation is not " @@ -4785,3 +4883,47 @@ msgstr "" "Pour des opérandes de même type, on considère que si la méthode originelle " "(telle que :meth:`__add__`) échoue, alors l'opération en tant que telle " "n'est pas autorisée et donc la méthode symétrique n'est pas appelée." + +#~ msgid "" +#~ "Special attributes: :attr:`~definition.__name__` is the class name; :attr:" +#~ "`__module__` is the module name in which the class was defined; :attr:" +#~ "`~object.__dict__` is the dictionary containing the class's namespace; :" +#~ "attr:`~class.__bases__` is a tuple containing the base classes, in the " +#~ "order of their occurrence in the base class list; :attr:`__doc__` is the " +#~ "class's documentation string, or ``None`` if undefined; :attr:" +#~ "`__annotations__` (optional) is a dictionary containing :term:`variable " +#~ "annotations ` collected during class body execution." +#~ msgstr "" +#~ "Attributs spéciaux : :attr:`~definition.__name__` est le nom de la " +#~ "classe ; :attr:`__module__` est le nom du module dans lequel la classe " +#~ "est définie ; :attr:`~object.__dict__` est le dictionnaire contenant " +#~ "l'espace de nommage de la classe ; :attr:`~class.__bases__` est un *n*-" +#~ "uplet contenant les classes de base, dans l'ordre d'apparition dans la " +#~ "liste des classes de base ; :attr:`__doc__` est le texte de documentation " +#~ "de la classe (ou ``None`` s’il n’y en a pas) ; :attr:`__annotations__` " +#~ "(optionnel) est un dictionnaire contenant les :term:`annotations de " +#~ "variables ` collectées durant l'exécution du corps " +#~ "de la classe." + +#~ msgid "" +#~ ":meth:`__set_name__` is only called implicitly as part of the :class:" +#~ "`type` constructor, so it will need to be called explicitly with the " +#~ "appropriate parameters when a descriptor is added to a class after " +#~ "initial creation::" +#~ msgstr "" +#~ ":meth:`__set_name__` n'est appelée implicitement que par le constructeur " +#~ "de :class:`type`, vous devez donc l'appeler explicitement avec les " +#~ "paramètres adéquats quand un descripteur est ajouté à une classe après sa " +#~ "création ::" + +# Pas de majuscule car suit un ':' dans le rendu. +#~ msgid "" +#~ "Due to a bug in the dispatching mechanism for ``**=``, a class that " +#~ "defines :meth:`__ipow__` but returns ``NotImplemented`` would fail to " +#~ "fall back to ``x.__pow__(y)`` and ``y.__rpow__(x)``. This bug is fixed in " +#~ "Python 3.10." +#~ msgstr "" +#~ "en raison d'un bogue dans le mécanisme de distribution de ``**=``, une " +#~ "classe qui définit :meth:`__ipow__` mais qui renvoie ``NotImplemented`` " +#~ "n'arriverait pas à se replier sur ``x.__pow__(y)`` et ``y.__rpow__(x)``. " +#~ "Ce bogue est corrigé dans Python 3.10." diff --git a/reference/expressions.po b/reference/expressions.po index a6e5dfc27..943f3cc6f 100644 --- a/reference/expressions.po +++ b/reference/expressions.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-29 16:33+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 02:31+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -1015,6 +1015,18 @@ msgstr "" #: reference/expressions.rst:648 msgid "" +"If an asynchronous generator happens to exit early by :keyword:`break`, the " +"caller task being cancelled, or other exceptions, the generator's async " +"cleanup code will run and possibly raise exceptions or access context " +"variables in an unexpected context--perhaps after the lifetime of tasks it " +"depends, or during the event loop shutdown when the async-generator garbage " +"collection hook is called. To prevent this, the caller must explicitly close " +"the async generator by calling :meth:`~agen.aclose` method to finalize the " +"generator and ultimately detach it from the event loop." +msgstr "" + +#: reference/expressions.rst:658 +msgid "" "In an asynchronous generator function, yield expressions are allowed " "anywhere in a :keyword:`try` construct. However, if an asynchronous " "generator is not resumed before it is finalized (by reaching a zero " @@ -1038,16 +1050,18 @@ msgstr "" "générateur asynchrone et d'exécuter l'objet coroutine résultant, permettant " "ainsi à toute clause :keyword:`!finally` en attente d'être exécutée." -#: reference/expressions.rst:659 +#: reference/expressions.rst:669 +#, fuzzy msgid "" -"To take care of finalization, an event loop should define a *finalizer* " -"function which takes an asynchronous generator-iterator and presumably " -"calls :meth:`~agen.aclose` and executes the coroutine. This *finalizer* may " -"be registered by calling :func:`sys.set_asyncgen_hooks`. When first iterated " -"over, an asynchronous generator-iterator will store the registered " -"*finalizer* to be called upon finalization. For a reference example of a " -"*finalizer* method see the implementation of ``asyncio.Loop." -"shutdown_asyncgens`` in :source:`Lib/asyncio/base_events.py`." +"To take care of finalization upon event loop termination, an event loop " +"should define a *finalizer* function which takes an asynchronous generator-" +"iterator and presumably calls :meth:`~agen.aclose` and executes the " +"coroutine. This *finalizer* may be registered by calling :func:`sys." +"set_asyncgen_hooks`. When first iterated over, an asynchronous generator-" +"iterator will store the registered *finalizer* to be called upon " +"finalization. For a reference example of a *finalizer* method see the " +"implementation of ``asyncio.Loop.shutdown_asyncgens`` in :source:`Lib/" +"asyncio/base_events.py`." msgstr "" "Pour effectuer correctement la finalisation, une boucle d'événements doit " "définir une fonction *finalizer* qui prend un générateur-itérateur " @@ -1059,7 +1073,7 @@ msgstr "" "*finalizer*, regardez l'implémentation de ``asyncio.Loop." "shutdown_asyncgens`` dans :source:`Lib/asyncio/base_events.py`." -#: reference/expressions.rst:668 +#: reference/expressions.rst:678 msgid "" "The expression ``yield from `` is a syntax error when used in an " "asynchronous generator function." @@ -1067,11 +1081,11 @@ msgstr "" "L'expression ``yield from `` produit une erreur de syntaxe quand elle " "est utilisée dans une fonction génératrice asynchrone." -#: reference/expressions.rst:675 +#: reference/expressions.rst:685 msgid "Asynchronous generator-iterator methods" msgstr "Méthodes des générateurs-itérateurs asynchrones" -#: reference/expressions.rst:677 +#: reference/expressions.rst:687 msgid "" "This subsection describes the methods of an asynchronous generator iterator, " "which are used to control the execution of a generator function." @@ -1080,7 +1094,7 @@ msgstr "" "asynchrones. Elles sont utilisées pour contrôler l’exécution des fonctions " "génératrices." -#: reference/expressions.rst:685 +#: reference/expressions.rst:695 msgid "" "Returns an awaitable which when run starts to execute the asynchronous " "generator or resumes it at the last executed yield expression. When an " @@ -1105,14 +1119,14 @@ msgstr "" "lève une exception :exc:`StopAsyncIteration` qui signale que l'itération " "asynchrone est terminée." -#: reference/expressions.rst:697 +#: reference/expressions.rst:707 msgid "" "This method is normally called implicitly by a :keyword:`async for` loop." msgstr "" "Cette méthode est normalement appelée implicitement par une boucle :keyword:" "`async for`." -#: reference/expressions.rst:702 +#: reference/expressions.rst:712 msgid "" "Returns an awaitable which when run resumes the execution of the " "asynchronous generator. As with the :meth:`~generator.send()` method for a " @@ -1137,7 +1151,7 @@ msgstr "" "appelée pour démarrer le générateur asynchrone, l'argument doit être :const:" "`None` car il n'y a pas d'expression ``yield`` pour recevoir la valeur." -#: reference/expressions.rst:717 +#: reference/expressions.rst:727 msgid "" "Returns an awaitable that raises an exception of type ``type`` at the point " "where the asynchronous generator was paused, and returns the next value " @@ -1157,7 +1171,7 @@ msgstr "" "l'exception reçue ou lève une autre exception alors, quand le *awaitable* " "est lancé, cette exception est propagée vers l'appelant du *awaitable*." -#: reference/expressions.rst:732 +#: reference/expressions.rst:742 msgid "" "Returns an awaitable that when run will throw a :exc:`GeneratorExit` into " "the asynchronous generator function at the point where it was paused. If the " @@ -1185,11 +1199,11 @@ msgstr "" "déjà terminé (soit par une exception, soit normalement), alors tout nouvel " "appel à :meth:`aclose` renvoie un *awaitable* qui ne fait rien." -#: reference/expressions.rst:748 +#: reference/expressions.rst:758 msgid "Primaries" msgstr "Primaires" -#: reference/expressions.rst:752 +#: reference/expressions.rst:762 msgid "" "Primaries represent the most tightly bound operations of the language. Their " "syntax is:" @@ -1198,17 +1212,17 @@ msgstr "" "les opérations qui se lient au plus proche dans le langage. Leur syntaxe " "est :" -#: reference/expressions.rst:762 +#: reference/expressions.rst:772 msgid "Attribute references" msgstr "Références à des attributs" -#: reference/expressions.rst:768 +#: reference/expressions.rst:778 msgid "An attribute reference is a primary followed by a period and a name:" msgstr "" "Une référence à un attribut (*attributeref* dans la grammaire formelle ci-" "dessous) est une primaire suivie par un point et un nom :" -#: reference/expressions.rst:778 +#: reference/expressions.rst:788 msgid "" "The primary must evaluate to an object of a type that supports attribute " "references, which most objects do. This object is then asked to produce the " @@ -1227,11 +1241,11 @@ msgstr "" "l'objet. Plusieurs évaluations successives d'une référence à un même " "attribut peuvent produire différents objets." -#: reference/expressions.rst:790 +#: reference/expressions.rst:800 msgid "Subscriptions" msgstr "Sélections" -#: reference/expressions.rst:805 +#: reference/expressions.rst:815 msgid "" "Subscription of a sequence (string, tuple or list) or mapping (dictionary) " "object usually selects an item from the collection:" @@ -1240,7 +1254,7 @@ msgstr "" "objet séquence (chaîne, *n*-uplet ou liste) ou tableau associatif " "(dictionnaire) désigne un élément dans cette séquence :" -#: reference/expressions.rst:811 +#: reference/expressions.rst:821 msgid "" "The primary must evaluate to an object that supports subscription (lists or " "dictionaries for example). User-defined objects can support subscription by " @@ -1250,13 +1264,13 @@ msgstr "" "ou un dictionnaire par exemple). Les objets définis par l'utilisateur " "peuvent gérer les sélections en définissant une méthode :meth:`__getitem__`." -#: reference/expressions.rst:815 +#: reference/expressions.rst:825 msgid "" "For built-in objects, there are two types of objects that support " "subscription:" msgstr "Pour les objets natifs, deux types d'objets gèrent la sélection :" -#: reference/expressions.rst:817 +#: reference/expressions.rst:827 msgid "" "If the primary is a mapping, the expression list must evaluate to an object " "whose value is one of the keys of the mapping, and the subscription selects " @@ -1270,7 +1284,7 @@ msgstr "" "(la liste d'expressions est un *n*-uplet sauf si elle comporte exactement un " "élément)." -#: reference/expressions.rst:822 +#: reference/expressions.rst:832 msgid "" "If the primary is a sequence, the expression list must evaluate to an " "integer or a slice (as discussed in the following section)." @@ -1279,7 +1293,7 @@ msgstr "" "dans la grammaire) doit pouvoir être évaluée comme un entier ou une tranche " "(comme expliqué dans la section suivante)." -#: reference/expressions.rst:825 +#: reference/expressions.rst:835 msgid "" "The formal syntax makes no special provision for negative indices in " "sequences; however, built-in sequences all provide a :meth:`__getitem__` " @@ -1303,7 +1317,7 @@ msgstr "" "surchargent cette méthode doivent aussi savoir les gérer, de manière " "explicite." -#: reference/expressions.rst:839 +#: reference/expressions.rst:849 msgid "" "A string's items are characters. A character is not a separate data type " "but a string of exactly one character." @@ -1311,7 +1325,7 @@ msgstr "" "Les éléments des chaînes sont des caractères. Un caractère n'est pas un type " "en tant que tel, c'est une chaîne de longueur un." -#: reference/expressions.rst:842 +#: reference/expressions.rst:852 msgid "" "Subscription of certain :term:`classes ` or :term:`types ` " "creates a :ref:`generic alias `. In this case, user-" @@ -1323,11 +1337,11 @@ msgstr "" "classes définies par l'utilisateur peuvent gérer la sélection en fournissant " "une méthode de classe :meth:`__class_getitem__`." -#: reference/expressions.rst:851 +#: reference/expressions.rst:861 msgid "Slicings" msgstr "Tranches" -#: reference/expressions.rst:865 +#: reference/expressions.rst:875 msgid "" "A slicing selects a range of items in a sequence object (e.g., a string, " "tuple or list). Slicings may be used as expressions or as targets in " @@ -1340,7 +1354,7 @@ msgstr "" "les assignations ou les instructions :keyword:`del`. La syntaxe est la " "suivante :" -#: reference/expressions.rst:878 +#: reference/expressions.rst:888 msgid "" "There is ambiguity in the formal syntax here: anything that looks like an " "expression list also looks like a slice list, so any subscription can be " @@ -1359,7 +1373,7 @@ msgstr "" "que tranche (c'est le cas si la liste de tranches (*slice_list*) ne contient " "aucune tranche en tant que telle)." -#: reference/expressions.rst:890 +#: reference/expressions.rst:900 msgid "" "The semantics for a slicing are as follows. The primary is indexed (using " "the same :meth:`__getitem__` method as normal subscription) with a key that " @@ -1388,11 +1402,11 @@ msgstr "" "la grammaire) et le pas (*stride* dans la grammaire), respectivement. En cas " "d'expression manquante, la valeur par défaut est ``None``." -#: reference/expressions.rst:914 +#: reference/expressions.rst:924 msgid "Calls" msgstr "Appels" -#: reference/expressions.rst:916 +#: reference/expressions.rst:926 msgid "" "A call calls a callable object (e.g., a :term:`function`) with a possibly " "empty series of :term:`arguments `:" @@ -1401,7 +1415,7 @@ msgstr "" "(par exemple, une :term:`fonction `) avec, possiblement, une liste " "d'\\ :term:`arguments ` :" -#: reference/expressions.rst:933 +#: reference/expressions.rst:943 msgid "" "An optional trailing comma may be present after the positional and keyword " "arguments but does not affect the semantics." @@ -1409,7 +1423,7 @@ msgstr "" "Une virgule finale (optionnelle) peut être présente, après les arguments " "positionnels et nommés, mais elle n'affecte pas la sémantique." -#: reference/expressions.rst:939 +#: reference/expressions.rst:949 msgid "" "The primary must evaluate to a callable object (user-defined functions, " "built-in functions, methods of built-in objects, class objects, methods of " @@ -1426,7 +1440,7 @@ msgstr "" "section :ref:`function` pour la syntaxe des listes de :term:`paramètres " "` formels." -#: reference/expressions.rst:947 +#: reference/expressions.rst:957 msgid "" "If keyword arguments are present, they are first converted to positional " "arguments, as follows. First, a list of unfilled slots is created for the " @@ -1467,7 +1481,7 @@ msgstr "" "n'est définie, une exception :exc:`TypeError` est levée. Sinon, la liste des " "*slots* remplie est utilisée en tant que liste des arguments pour l'appel." -#: reference/expressions.rst:967 +#: reference/expressions.rst:977 msgid "" "An implementation may provide built-in functions whose positional parameters " "do not have names, even if they are 'named' for the purpose of " @@ -1481,7 +1495,7 @@ msgstr "" "CPython, les fonctions implémentées en C qui utilisent :c:func:" "`PyArg_ParseTuple` pour analyser leurs arguments en font partie." -#: reference/expressions.rst:973 +#: reference/expressions.rst:983 msgid "" "If there are more positional arguments than there are formal parameter " "slots, a :exc:`TypeError` exception is raised, unless a formal parameter " @@ -1495,7 +1509,7 @@ msgstr "" "reçoit un *n*-uplet contenant les arguments positionnels en supplément (ou " "un *n*-uplet vide s'il n'y avait pas d'argument positionnel en trop)." -#: reference/expressions.rst:979 +#: reference/expressions.rst:989 msgid "" "If any keyword argument does not correspond to a formal parameter name, a :" "exc:`TypeError` exception is raised, unless a formal parameter using the " @@ -1512,7 +1526,7 @@ msgstr "" "dictionnaire), ou un (nouveau) dictionnaire vide s'il n'y a pas d'argument " "par mot-clé en trop." -#: reference/expressions.rst:990 +#: reference/expressions.rst:1000 msgid "" "If the syntax ``*expression`` appears in the function call, ``expression`` " "must evaluate to an :term:`iterable`. Elements from these iterables are " @@ -1528,7 +1542,7 @@ msgstr "" "s'évalue comme une séquence *y1* … *yM*, c'est équivalent à un appel avec M" "+4 arguments positionnels *x1*, *x2*, *y1* … *yM*, *x3*, *x4*." -#: reference/expressions.rst:997 +#: reference/expressions.rst:1007 msgid "" "A consequence of this is that although the ``*expression`` syntax may appear " "*after* explicit keyword arguments, it is processed *before* the keyword " @@ -1539,7 +1553,7 @@ msgstr "" "*avant* les arguments nommés (et avant tout argument ``**expression`` -- " "voir ci-dessous). Ainsi ::" -#: reference/expressions.rst:1013 +#: reference/expressions.rst:1023 msgid "" "It is unusual for both keyword arguments and the ``*expression`` syntax to " "be used in the same call, so in practice this confusion does not arise." @@ -1548,7 +1562,7 @@ msgstr "" "``*expression`` soient utilisés simultanément dans un même appel, ce qui " "fait que la confusion reste hypothétique." -#: reference/expressions.rst:1019 +#: reference/expressions.rst:1029 msgid "" "If the syntax ``**expression`` appears in the function call, ``expression`` " "must evaluate to a :term:`mapping`, the contents of which are treated as " @@ -1563,7 +1577,7 @@ msgstr "" "qu'argument par mot-clé explicite, ou venant d'un autre dépaquetage), une " "exception :exc:`TypeError` est levée." -#: reference/expressions.rst:1025 +#: reference/expressions.rst:1035 msgid "" "Formal parameters using the syntax ``*identifier`` or ``**identifier`` " "cannot be used as positional argument slots or as keyword argument names." @@ -1572,7 +1586,7 @@ msgstr "" "``**identifier`` ne peuvent pas être utilisés comme arguments positionnels " "ou comme noms d'arguments par mots-clés." -#: reference/expressions.rst:1028 +#: reference/expressions.rst:1038 msgid "" "Function calls accept any number of ``*`` and ``**`` unpackings, positional " "arguments may follow iterable unpackings (``*``), and keyword arguments may " @@ -1584,7 +1598,7 @@ msgstr "" "dépaquetages de dictionnaires (``**``). Proposé pour la première fois par " "la :pep:`448`." -#: reference/expressions.rst:1034 +#: reference/expressions.rst:1044 msgid "" "A call always returns some value, possibly ``None``, unless it raises an " "exception. How this value is computed depends on the type of the callable " @@ -1594,15 +1608,15 @@ msgstr "" "ne lève une exception. La façon dont celle valeur est calculée dépend du " "type de l'objet appelable." -#: reference/expressions.rst:1038 +#: reference/expressions.rst:1048 msgid "If it is---" msgstr "Si c'est ---" -#: reference/expressions.rst:1051 +#: reference/expressions.rst:1061 msgid "a user-defined function:" msgstr "une fonction définie par l'utilisateur :" -#: reference/expressions.rst:1047 +#: reference/expressions.rst:1057 msgid "" "The code block for the function is executed, passing it the argument list. " "The first thing the code block will do is bind the formal parameters to the " @@ -1616,11 +1630,11 @@ msgstr "" "`function`. Quand le bloc de code exécute l'instruction :keyword:`return`, " "cela spécifie la valeur de retour de l'appel de la fonction." -#: reference/expressions.rst:1065 +#: reference/expressions.rst:1075 msgid "a built-in function or method:" msgstr "une fonction ou une méthode native :" -#: reference/expressions.rst:1064 +#: reference/expressions.rst:1074 msgid "" "The result is up to the interpreter; see :ref:`built-in-funcs` for the " "descriptions of built-in functions and methods." @@ -1628,19 +1642,19 @@ msgstr "" "le résultat dépend de l'interpréteur ; lisez :ref:`built-in-funcs` pour une " "description des fonctions et méthodes natives." -#: reference/expressions.rst:1072 +#: reference/expressions.rst:1082 msgid "a class object:" msgstr "un objet classe :" -#: reference/expressions.rst:1072 +#: reference/expressions.rst:1082 msgid "A new instance of that class is returned." msgstr "une nouvelle instance de cette classe est renvoyée." -#: reference/expressions.rst:1082 +#: reference/expressions.rst:1092 msgid "a class instance method:" msgstr "une méthode d'instance de classe :" -#: reference/expressions.rst:1080 +#: reference/expressions.rst:1090 msgid "" "The corresponding user-defined function is called, with an argument list " "that is one longer than the argument list of the call: the instance becomes " @@ -1650,11 +1664,11 @@ msgstr "" "liste d'arguments qui est plus grande d'un élément que la liste des " "arguments de l'appel : l'instance est placée en tête des arguments." -#: reference/expressions.rst:1091 +#: reference/expressions.rst:1101 msgid "a class instance:" msgstr "une instance de classe :" -#: reference/expressions.rst:1089 +#: reference/expressions.rst:1099 msgid "" "The class must define a :meth:`__call__` method; the effect is then the same " "as if that method was called." @@ -1662,11 +1676,11 @@ msgstr "" "la classe doit définir une méthode :meth:`__call__` ; l'effet est le même " "que si cette méthode était appelée." -#: reference/expressions.rst:1835 +#: reference/expressions.rst:1872 msgid "Await expression" msgstr "Expression ``await``" -#: reference/expressions.rst:1099 +#: reference/expressions.rst:1109 msgid "" "Suspend the execution of :term:`coroutine` on an :term:`awaitable` object. " "Can only be used inside a :term:`coroutine function`." @@ -1674,11 +1688,11 @@ msgstr "" "Suspend l'exécution de la :term:`coroutine` sur un objet :term:`awaitable`. " "Ne peut être utilisée qu'à l'intérieur d'une :term:`coroutine function`." -#: reference/expressions.rst:1111 +#: reference/expressions.rst:1121 msgid "The power operator" msgstr "L'opérateur puissance" -#: reference/expressions.rst:1117 +#: reference/expressions.rst:1127 msgid "" "The power operator binds more tightly than unary operators on its left; it " "binds less tightly than unary operators on its right. The syntax is:" @@ -1687,7 +1701,7 @@ msgstr "" "gauche ; il est moins prioritaire que les opérateurs unaires sur sa droite. " "La syntaxe est :" -#: reference/expressions.rst:1123 +#: reference/expressions.rst:1133 msgid "" "Thus, in an unparenthesized sequence of power and unary operators, the " "operators are evaluated from right to left (this does not constrain the " @@ -1697,7 +1711,7 @@ msgstr "" "unaires, les opérateurs sont évalués de droite à gauche (ceci ne contraint " "pas l'ordre d'évaluation des opérandes) : ``-1**2`` donne ``-1``." -#: reference/expressions.rst:1127 +#: reference/expressions.rst:1137 msgid "" "The power operator has the same semantics as the built-in :func:`pow` " "function, when called with two arguments: it yields its left argument raised " @@ -1710,7 +1724,7 @@ msgstr "" "arguments numériques sont d'abord convertis vers un type commun et le " "résultat est de ce type." -#: reference/expressions.rst:1132 +#: reference/expressions.rst:1142 msgid "" "For int operands, the result has the same type as the operands unless the " "second argument is negative; in that case, all arguments are converted to " @@ -1723,7 +1737,7 @@ msgstr "" "virgule flottante. Par exemple, ``10**2`` renvoie ``100`` mais ``10**-2`` " "renvoie ``0.01``." -#: reference/expressions.rst:1137 +#: reference/expressions.rst:1147 msgid "" "Raising ``0.0`` to a negative power results in a :exc:`ZeroDivisionError`. " "Raising a negative number to a fractional power results in a :class:" @@ -1734,38 +1748,51 @@ msgstr "" "renvoie un nombre :class:`complexe ` (dans les versions " "antérieures, cela levait une :exc:`ValueError`)." -#: reference/expressions.rst:1145 +#: reference/expressions.rst:1151 +msgid "" +"This operation can be customized using the special :meth:`__pow__` method." +msgstr "" + +#: reference/expressions.rst:1156 msgid "Unary arithmetic and bitwise operations" msgstr "Arithmétique unaire et opérations sur les bits" -#: reference/expressions.rst:1151 +#: reference/expressions.rst:1162 msgid "All unary arithmetic and bitwise operations have the same priority:" msgstr "" "Toute l'arithmétique unaire et les opérations sur les bits ont la même " "priorité :" -#: reference/expressions.rst:1162 +#: reference/expressions.rst:1173 +#, fuzzy msgid "" -"The unary ``-`` (minus) operator yields the negation of its numeric argument." +"The unary ``-`` (minus) operator yields the negation of its numeric " +"argument; the operation can be overridden with the :meth:`__neg__` special " +"method." msgstr "" "L'opérateur unaire ``-`` (moins) produit l'opposé de son argument numérique." -#: reference/expressions.rst:1169 -msgid "The unary ``+`` (plus) operator yields its numeric argument unchanged." +#: reference/expressions.rst:1181 +#, fuzzy +msgid "" +"The unary ``+`` (plus) operator yields its numeric argument unchanged; the " +"operation can be overridden with the :meth:`__pos__` special method." msgstr "" "L'opérateur unaire ``+`` (plus) produit son argument numérique inchangé." -#: reference/expressions.rst:1175 +#: reference/expressions.rst:1188 +#, fuzzy msgid "" "The unary ``~`` (invert) operator yields the bitwise inversion of its " "integer argument. The bitwise inversion of ``x`` is defined as ``-(x+1)``. " -"It only applies to integral numbers." +"It only applies to integral numbers or to custom objects that override the :" +"meth:`__invert__` special method." msgstr "" "L'opérateur unaire ``~`` (inversion) produit l'inversion bit à bit de son " "argument entier. L'inversion bit à bit de ``x`` est définie comme ``-(x" "+1)``. Elle s'applique uniquement aux nombres entiers." -#: reference/expressions.rst:1181 +#: reference/expressions.rst:1197 msgid "" "In all three cases, if the argument does not have the proper type, a :exc:" "`TypeError` exception is raised." @@ -1773,11 +1800,11 @@ msgstr "" "Dans ces trois cas, si l'argument n'est pas du bon type, une exception :exc:" "`TypeError` est levée." -#: reference/expressions.rst:1188 +#: reference/expressions.rst:1204 msgid "Binary arithmetic operations" msgstr "Opérations arithmétiques binaires" -#: reference/expressions.rst:1192 +#: reference/expressions.rst:1208 msgid "" "The binary arithmetic operations have the conventional priority levels. " "Note that some of these operations also apply to certain non-numeric types. " @@ -1790,7 +1817,7 @@ msgstr "" "niveaux, le premier pour les opérateurs multiplicatifs et le second pour les " "opérateurs additifs :" -#: reference/expressions.rst:1207 +#: reference/expressions.rst:1223 msgid "" "The ``*`` (multiplication) operator yields the product of its arguments. " "The arguments must either both be numbers, or one argument must be an " @@ -1806,7 +1833,13 @@ msgstr "" "Dans le dernier cas, la séquence est répétée ; une répétition négative " "produit une séquence vide." -#: reference/expressions.rst:1217 +#: reference/expressions.rst:1229 +msgid "" +"This operation can be customized using the special :meth:`__mul__` and :meth:" +"`__rmul__` methods." +msgstr "" + +#: reference/expressions.rst:1236 msgid "" "The ``@`` (at) operator is intended to be used for matrix multiplication. " "No builtin Python types implement this operator." @@ -1814,7 +1847,7 @@ msgstr "" "L'opérateur ``@`` (prononcé *at* en anglais) a vocation à multiplier des " "matrices. Aucun type Python natif n'implémente cet opérateur." -#: reference/expressions.rst:1228 +#: reference/expressions.rst:1247 msgid "" "The ``/`` (division) and ``//`` (floor division) operators yield the " "quotient of their arguments. The numeric arguments are first converted to a " @@ -1831,7 +1864,13 @@ msgstr "" "mathématique suivie de la fonction ``floor`` appliquée au résultat. Une " "division par zéro lève une exception :exc:`ZeroDivisionError`." -#: reference/expressions.rst:1239 +#: reference/expressions.rst:1254 +msgid "" +"This operation can be customized using the special :meth:`__truediv__` and :" +"meth:`__floordiv__` methods." +msgstr "" + +#: reference/expressions.rst:1261 msgid "" "The ``%`` (modulo) operator yields the remainder from the division of the " "first argument by the second. The numeric arguments are first converted to " @@ -1851,7 +1890,7 @@ msgstr "" "même signe que le second opérande (ou zéro) ; la valeur absolue du résultat " "est strictement inférieure à la valeur absolue du second opérande [#]_." -#: reference/expressions.rst:1248 +#: reference/expressions.rst:1270 msgid "" "The floor division and modulo operators are connected by the following " "identity: ``x == (x//y)*y + (x%y)``. Floor division and modulo are also " @@ -1863,7 +1902,7 @@ msgstr "" "aussi liés à la fonction native :func:`divmod` : ``divmod(x, y) == (x//y, x" "%y)`` [#]_." -#: reference/expressions.rst:1253 +#: reference/expressions.rst:1275 msgid "" "In addition to performing the modulo operation on numbers, the ``%`` " "operator is also overloaded by string objects to perform old-style string " @@ -1877,7 +1916,13 @@ msgstr "" "décrit dans la référence de la bibliothèque Python, dans la section :ref:" "`old-string-formatting`." -#: reference/expressions.rst:1258 +#: reference/expressions.rst:1280 +msgid "" +"The *modulo* operation can be customized using the special :meth:`__mod__` " +"method." +msgstr "" + +#: reference/expressions.rst:1282 msgid "" "The floor division operator, the modulo operator, and the :func:`divmod` " "function are not defined for complex numbers. Instead, convert to a " @@ -1888,7 +1933,7 @@ msgstr "" "pouvez, si cela a du sens pour ce que vous voulez faire, les convertir vers " "des nombres à virgule flottante en utilisant la fonction :func:`abs`." -#: reference/expressions.rst:1267 +#: reference/expressions.rst:1291 msgid "" "The ``+`` (addition) operator yields the sum of its arguments. The " "arguments must either both be numbers or both be sequences of the same " @@ -1901,7 +1946,13 @@ msgstr "" "puis sont additionnés entre eux. Dans le dernier cas, les séquences sont " "concaténées." -#: reference/expressions.rst:1277 +#: reference/expressions.rst:1296 +msgid "" +"This operation can be customized using the special :meth:`__add__` and :meth:" +"`__radd__` methods." +msgstr "" + +#: reference/expressions.rst:1304 msgid "" "The ``-`` (subtraction) operator yields the difference of its arguments. " "The numeric arguments are first converted to a common type." @@ -1909,18 +1960,23 @@ msgstr "" "L'opérateur ``-`` (soustraction) produit la différence entre ses arguments. " "Les arguments numériques sont d'abord convertis vers un type commun." -#: reference/expressions.rst:1284 +#: reference/expressions.rst:1307 +msgid "" +"This operation can be customized using the special :meth:`__sub__` method." +msgstr "" + +#: reference/expressions.rst:1313 msgid "Shifting operations" msgstr "Opérations de décalage" -#: reference/expressions.rst:1291 +#: reference/expressions.rst:1320 msgid "" "The shifting operations have lower priority than the arithmetic operations:" msgstr "" "Les opérations de décalage sont moins prioritaires que les opérations " "arithmétiques :" -#: reference/expressions.rst:1296 +#: reference/expressions.rst:1325 msgid "" "These operators accept integers as arguments. They shift the first argument " "to the left or right by the number of bits given by the second argument." @@ -1929,7 +1985,13 @@ msgstr "" "argument vers la gauche ou vers la droite du nombre de bits donné par le " "deuxième argument." -#: reference/expressions.rst:1301 +#: reference/expressions.rst:1328 +msgid "" +"This operation can be customized using the special :meth:`__lshift__` and :" +"meth:`__rshift__` methods." +msgstr "" + +#: reference/expressions.rst:1333 msgid "" "A right shift by *n* bits is defined as floor division by ``pow(2,n)``. A " "left shift by *n* bits is defined as multiplication with ``pow(2,n)``." @@ -1938,45 +2000,51 @@ msgstr "" "``pow(2,n)``. Un décalage à gauche de *n* bits est défini comme la " "multiplication par ``pow(2,n)``." -#: reference/expressions.rst:1308 +#: reference/expressions.rst:1340 msgid "Binary bitwise operations" msgstr "Opérations binaires bit à bit" -#: reference/expressions.rst:1312 +#: reference/expressions.rst:1344 msgid "Each of the three bitwise operations has a different priority level:" msgstr "" "Chacune des trois opérations binaires bit à bit possède une priorité " "différente :" -#: reference/expressions.rst:1323 +#: reference/expressions.rst:1355 +#, fuzzy msgid "" "The ``&`` operator yields the bitwise AND of its arguments, which must be " -"integers." +"integers or one of them must be a custom object overriding :meth:`__and__` " +"or :meth:`__rand__` special methods." msgstr "" "L'opérateur ``&`` produit le ET logique de ses arguments, qui doivent être " "des entiers." -#: reference/expressions.rst:1331 +#: reference/expressions.rst:1364 +#, fuzzy msgid "" "The ``^`` operator yields the bitwise XOR (exclusive OR) of its arguments, " -"which must be integers." +"which must be integers or one of them must be a custom object overriding :" +"meth:`__xor__` or :meth:`__rxor__` special methods." msgstr "" "L'opérateur ``^`` produit le OU EXCLUSIF (XOR) logique de ses arguments, qui " "doivent être des entiers." -#: reference/expressions.rst:1339 +#: reference/expressions.rst:1373 +#, fuzzy msgid "" "The ``|`` operator yields the bitwise (inclusive) OR of its arguments, which " -"must be integers." +"must be integers or one of them must be a custom object overriding :meth:" +"`__or__` or :meth:`__ror__` special methods." msgstr "" "L'opérateur ``|`` produit le OU logique de ses arguments, qui doivent être " "des entiers." -#: reference/expressions.rst:1346 +#: reference/expressions.rst:1381 msgid "Comparisons" msgstr "Comparaisons" -#: reference/expressions.rst:1358 +#: reference/expressions.rst:1393 msgid "" "Unlike C, all comparison operations in Python have the same priority, which " "is lower than that of any arithmetic, shifting or bitwise operation. Also " @@ -1989,12 +2057,14 @@ msgstr "" "les expressions telles que ``a < b < c`` sont interprétées comme elles le " "seraient conventionnellement en mathématiques :" -#: reference/expressions.rst:1368 -msgid "Comparisons yield boolean values: ``True`` or ``False``." +#: reference/expressions.rst:1403 +msgid "" +"Comparisons yield boolean values: ``True`` or ``False``. Custom :dfn:`rich " +"comparison methods` may return non-boolean values. In this case Python will " +"call :func:`bool` on such value in boolean contexts." msgstr "" -"Les comparaisons produisent des valeurs booléennes : ``True`` ou ``False``." -#: reference/expressions.rst:1372 +#: reference/expressions.rst:1409 msgid "" "Comparisons can be chained arbitrarily, e.g., ``x < y <= z`` is equivalent " "to ``x < y and y <= z``, except that ``y`` is evaluated only once (but in " @@ -2006,7 +2076,7 @@ msgstr "" "seulement une fois (mais dans les deux cas, ``z`` n'est pas évalué du tout " "si ``x < y`` s'avère être faux)." -#: reference/expressions.rst:1376 +#: reference/expressions.rst:1413 msgid "" "Formally, if *a*, *b*, *c*, ..., *y*, *z* are expressions and *op1*, " "*op2*, ..., *opN* are comparison operators, then ``a op1 b op2 c ... y opN " @@ -2018,7 +2088,7 @@ msgstr "" "opN z`` est équivalent à ``a op1 b and b op2 c and … y opN z``, sauf que " "chaque expression est évaluée au maximum une fois." -#: reference/expressions.rst:1381 +#: reference/expressions.rst:1418 msgid "" "Note that ``a op1 b op2 c`` doesn't imply any kind of comparison between *a* " "and *c*, so that, e.g., ``x < y > z`` is perfectly legal (though perhaps not " @@ -2028,11 +2098,11 @@ msgstr "" "Ainsi, par exemple, ``x < y > z`` est parfaitement légal (mais peut-être pas " "très élégant)." -#: reference/expressions.rst:1386 +#: reference/expressions.rst:1423 msgid "Value comparisons" msgstr "Comparaisons de valeurs" -#: reference/expressions.rst:1388 +#: reference/expressions.rst:1425 msgid "" "The operators ``<``, ``>``, ``==``, ``>=``, ``<=``, and ``!=`` compare the " "values of two objects. The objects do not need to have the same type." @@ -2040,7 +2110,7 @@ msgstr "" "Les opérateurs ``<``, ``>``, ``==``, ``>=``, ``<=`` et ``!=`` comparent les " "valeurs de deux objets. Les objets n'ont pas besoin d'être du même type." -#: reference/expressions.rst:1391 +#: reference/expressions.rst:1428 msgid "" "Chapter :ref:`objects` states that objects have a value (in addition to type " "and identity). The value of an object is a rather abstract notion in " @@ -2061,7 +2131,7 @@ msgstr "" "d'un objet. Vous pouvez vous le représenter comme une définition indirecte " "de la valeur d'un objet, *via* l'implémentation de leur comparaison." -#: reference/expressions.rst:1400 +#: reference/expressions.rst:1437 msgid "" "Because all types are (direct or indirect) subtypes of :class:`object`, they " "inherit the default comparison behavior from :class:`object`. Types can " @@ -2074,7 +2144,7 @@ msgstr "" "des comparaisons en implémentant des :dfn:`méthodes de comparaisons riches`, " "comme :meth:`__lt__`, décrites dans :ref:`customization`." -#: reference/expressions.rst:1406 +#: reference/expressions.rst:1443 msgid "" "The default behavior for equality comparison (``==`` and ``!=``) is based on " "the identity of the objects. Hence, equality comparison of instances with " @@ -2090,7 +2160,7 @@ msgstr "" "choix est que Python souhaite que tous les objets soient réflexifs, c'est-à-" "dire que ``x is y`` implique ``x == y``." -#: reference/expressions.rst:1413 +#: reference/expressions.rst:1450 msgid "" "A default order comparison (``<``, ``>``, ``<=``, and ``>=``) is not " "provided; an attempt raises :exc:`TypeError`. A motivation for this default " @@ -2100,7 +2170,7 @@ msgstr "" "défaut ; une tentative se solde par une :exc:`TypeError`. La raison de ce " "choix est qu'il n'existe pas d'invariant similaire à celui de l'égalité." -#: reference/expressions.rst:1417 +#: reference/expressions.rst:1454 msgid "" "The behavior of the default equality comparison, that instances with " "different identities are always unequal, may be in contrast to what types " @@ -2115,7 +2185,7 @@ msgstr "" "personnaliser leurs tests de comparaison et, en fait, c'est ce qu'ont fait " "un certain nombre de types natifs." -#: reference/expressions.rst:1423 +#: reference/expressions.rst:1460 msgid "" "The following list describes the comparison behavior of the most important " "built-in types." @@ -2123,7 +2193,7 @@ msgstr "" "La liste suivante décrit le comportement des tests d'égalité pour les types " "natifs les plus importants." -#: reference/expressions.rst:1426 +#: reference/expressions.rst:1463 msgid "" "Numbers of built-in numeric types (:ref:`typesnumeric`) and of the standard " "library types :class:`fractions.Fraction` and :class:`decimal.Decimal` can " @@ -2140,7 +2210,7 @@ msgstr "" "des types concernés, la comparaison mathématique équivaut à la comparaison " "algorithmique, sans perte de précision." -#: reference/expressions.rst:1433 +#: reference/expressions.rst:1470 msgid "" "The not-a-number values ``float('NaN')`` and ``decimal.Decimal('NaN')`` are " "special. Any ordered comparison of a number to a not-a-number value is " @@ -2157,7 +2227,7 @@ msgstr "" "sont toutes fausses, mais l’expression ``x != x`` est vraie. Ce comportement " "est en accord avec IEEE 754." -#: reference/expressions.rst:1440 +#: reference/expressions.rst:1477 msgid "" "``None`` and ``NotImplemented`` are singletons. :PEP:`8` advises that " "comparisons for singletons should always be done with ``is`` or ``is not``, " @@ -2167,7 +2237,7 @@ msgstr "" "toujours comparer les singletons en utilisant soit ``is`` soit ``is not``, " "jamais les autres opérateurs." -#: reference/expressions.rst:1444 +#: reference/expressions.rst:1481 msgid "" "Binary sequences (instances of :class:`bytes` or :class:`bytearray`) can be " "compared within and across their types. They compare lexicographically " @@ -2178,7 +2248,7 @@ msgstr "" "La comparaison est lexicographique, en utilisant la valeur numérique des " "éléments." -#: reference/expressions.rst:1448 +#: reference/expressions.rst:1485 msgid "" "Strings (instances of :class:`str`) compare lexicographically using the " "numerical Unicode code points (the result of the built-in function :func:" @@ -2188,13 +2258,13 @@ msgstr "" "lexicographique en utilisant la valeur Unicode (le résultat de la fonction " "native :func:`ord`) des caractères [#]_." -#: reference/expressions.rst:1452 +#: reference/expressions.rst:1489 msgid "Strings and binary sequences cannot be directly compared." msgstr "" "Les chaînes de caractères et les séquences binaires ne peuvent pas être " "comparées directement." -#: reference/expressions.rst:1454 +#: reference/expressions.rst:1491 msgid "" "Sequences (instances of :class:`tuple`, :class:`list`, or :class:`range`) " "can be compared only within each of their types, with the restriction that " @@ -2208,7 +2278,7 @@ msgstr "" "d'égalité entre ces types renvoie faux et une comparaison entre instances de " "types différents lève une :exc:`TypeError`." -#: reference/expressions.rst:1460 +#: reference/expressions.rst:1497 msgid "" "Sequences compare lexicographically using comparison of corresponding " "elements. The built-in containers typically assume identical objects are " @@ -2221,13 +2291,13 @@ msgstr "" "d’égalité pour des objets identiques afin d’améliorer les performances et de " "conserver leurs invariants internes." -#: reference/expressions.rst:1465 +#: reference/expressions.rst:1502 msgid "" "Lexicographical comparison between built-in collections works as follows:" msgstr "" "L'ordre lexicographique pour les collections natives fonctionne comme suit :" -#: reference/expressions.rst:1467 +#: reference/expressions.rst:1504 msgid "" "For two collections to compare equal, they must be of the same type, have " "the same length, and each pair of corresponding elements must compare equal " @@ -2237,7 +2307,7 @@ msgstr "" "longueur et si les éléments correspondants de chaque paire sont égaux. Par " "exemple, ``[1,2] == (1,2)`` est faux car les types sont différents." -#: reference/expressions.rst:1472 +#: reference/expressions.rst:1509 msgid "" "Collections that support order comparison are ordered the same as their " "first unequal elements (for example, ``[1,2,x] <= [1,2,y]`` has the same " @@ -2251,7 +2321,7 @@ msgstr "" "collection la plus courte est la plus petite (par exemple, ``[1,2] < " "[1,2,3]`` est vrai)." -#: reference/expressions.rst:1478 +#: reference/expressions.rst:1515 msgid "" "Mappings (instances of :class:`dict`) compare equal if and only if they have " "equal `(key, value)` pairs. Equality comparison of the keys and values " @@ -2261,13 +2331,13 @@ msgstr "" "et seulement si toutes leurs paires `(clé, valeur)` sont égales. L'égalité " "des clés et des valeurs met en œuvre la réflexivité." -#: reference/expressions.rst:1482 +#: reference/expressions.rst:1519 msgid "" "Order comparisons (``<``, ``>``, ``<=``, and ``>=``) raise :exc:`TypeError`." msgstr "" "Les comparaisons (``<``, ``>``, ``<=`` et ``>=``) lèvent :exc:`TypeError`." -#: reference/expressions.rst:1484 +#: reference/expressions.rst:1521 msgid "" "Sets (instances of :class:`set` or :class:`frozenset`) can be compared " "within and across their types." @@ -2275,7 +2345,7 @@ msgstr "" "Les ensembles (instances de :class:`set` ou :class:`frozenset`) peuvent être " "comparés au sein de leur propre type et entre types différents." -#: reference/expressions.rst:1487 +#: reference/expressions.rst:1524 msgid "" "They define order comparison operators to mean subset and superset tests. " "Those relations do not define total orderings (for example, the two sets " @@ -2293,11 +2363,11 @@ msgstr "" "exemple, les fonctions :func:`min`, :func:`max` et :func:`sorted` produisent " "des résultats indéfinis si on leur donne des listes d'ensembles en entrée)." -#: reference/expressions.rst:1495 +#: reference/expressions.rst:1532 msgid "Comparison of sets enforces reflexivity of its elements." msgstr "La comparaison des ensembles met en œuvre la réflexivité des éléments." -#: reference/expressions.rst:1497 +#: reference/expressions.rst:1534 msgid "" "Most other built-in types have no comparison methods implemented, so they " "inherit the default comparison behavior." @@ -2305,7 +2375,7 @@ msgstr "" "La plupart des autres types natifs n'implémentent pas de méthodes de " "comparaisons, ils héritent donc du comportement par défaut." -#: reference/expressions.rst:1500 +#: reference/expressions.rst:1537 msgid "" "User-defined classes that customize their comparison behavior should follow " "some consistency rules, if possible:" @@ -2313,7 +2383,7 @@ msgstr "" "Les classes allogènes qui particularisent les opérations de comparaison " "doivent, si possible, respecter quelques règles pour la cohérence :" -#: reference/expressions.rst:1503 +#: reference/expressions.rst:1540 msgid "" "Equality comparison should be reflexive. In other words, identical objects " "should compare equal:" @@ -2321,11 +2391,11 @@ msgstr "" "Le test d'égalité doit être réflexif. En d'autres termes, des objets " "identiques doivent être égaux :" -#: reference/expressions.rst:1506 +#: reference/expressions.rst:1543 msgid "``x is y`` implies ``x == y``" msgstr "``x is y`` implique ``x == y``" -#: reference/expressions.rst:1508 +#: reference/expressions.rst:1545 msgid "" "Comparison should be symmetric. In other words, the following expressions " "should have the same result:" @@ -2333,23 +2403,23 @@ msgstr "" "La comparaison doit être symétrique. En d'autres termes, les expressions " "suivantes doivent donner le même résultat :" -#: reference/expressions.rst:1511 +#: reference/expressions.rst:1548 msgid "``x == y`` and ``y == x``" msgstr "``x == y`` et ``y == x``" -#: reference/expressions.rst:1513 +#: reference/expressions.rst:1550 msgid "``x != y`` and ``y != x``" msgstr "``x != y`` et ``y != x``" -#: reference/expressions.rst:1515 +#: reference/expressions.rst:1552 msgid "``x < y`` and ``y > x``" msgstr "``x < y`` et ``y > x``" -#: reference/expressions.rst:1517 +#: reference/expressions.rst:1554 msgid "``x <= y`` and ``y >= x``" msgstr "``x <= y`` et ``y >= x``" -#: reference/expressions.rst:1519 +#: reference/expressions.rst:1556 msgid "" "Comparison should be transitive. The following (non-exhaustive) examples " "illustrate that:" @@ -2357,15 +2427,15 @@ msgstr "" "La comparaison doit être transitive. Les exemples suivants (liste non " "exhaustive) illustrent ce concept :" -#: reference/expressions.rst:1522 +#: reference/expressions.rst:1559 msgid "``x > y and y > z`` implies ``x > z``" msgstr "``x > y and y > z`` implique ``x > z``" -#: reference/expressions.rst:1524 +#: reference/expressions.rst:1561 msgid "``x < y and y <= z`` implies ``x < z``" msgstr "``x < y and y <= z`` implique ``x < z``" -#: reference/expressions.rst:1526 +#: reference/expressions.rst:1563 msgid "" "Inverse comparison should result in the boolean negation. In other words, " "the following expressions should have the same result:" @@ -2374,19 +2444,19 @@ msgstr "" "booléenne. En d'autres termes, les expressions suivantes doivent produire le " "même résultat :" -#: reference/expressions.rst:1529 +#: reference/expressions.rst:1566 msgid "``x == y`` and ``not x != y``" msgstr "``x == y`` et ``not x != y``" -#: reference/expressions.rst:1531 +#: reference/expressions.rst:1568 msgid "``x < y`` and ``not x >= y`` (for total ordering)" msgstr "``x < y`` et ``not x >= y`` (pour une relation d'ordre total)" -#: reference/expressions.rst:1533 +#: reference/expressions.rst:1570 msgid "``x > y`` and ``not x <= y`` (for total ordering)" msgstr "``x > y`` et ``not x <= y`` (pour une relation d'ordre total)" -#: reference/expressions.rst:1535 +#: reference/expressions.rst:1572 msgid "" "The last two expressions apply to totally ordered collections (e.g. to " "sequences, but not to sets or mappings). See also the :func:`~functools." @@ -2397,7 +2467,7 @@ msgstr "" "de correspondances). Regardez aussi le décorateur :func:`~functools." "total_ordering`." -#: reference/expressions.rst:1539 +#: reference/expressions.rst:1576 msgid "" "The :func:`hash` result should be consistent with equality. Objects that are " "equal should either have the same hash value, or be marked as unhashable." @@ -2406,7 +2476,7 @@ msgstr "" "qui sont égaux doivent avoir la même empreinte ou être marqués comme non-" "hachables." -#: reference/expressions.rst:1543 +#: reference/expressions.rst:1580 msgid "" "Python does not enforce these consistency rules. In fact, the not-a-number " "values are an example for not following these rules." @@ -2414,11 +2484,11 @@ msgstr "" "Python ne vérifie pas ces règles de cohérence. En fait, l'utilisation de " "valeurs non numériques est un exemple de non-respect de ces règles." -#: reference/expressions.rst:1552 +#: reference/expressions.rst:1589 msgid "Membership test operations" msgstr "Opérations de tests d’appartenance à un ensemble" -#: reference/expressions.rst:1554 +#: reference/expressions.rst:1591 msgid "" "The operators :keyword:`in` and :keyword:`not in` test for membership. ``x " "in s`` evaluates to ``True`` if *x* is a member of *s*, and ``False`` " @@ -2438,7 +2508,7 @@ msgstr "" "*collections.deque*, l’expression ``x in y`` est équivalente à ``any(x is e " "or x == e for e in y)``." -#: reference/expressions.rst:1562 +#: reference/expressions.rst:1599 msgid "" "For the string and bytes types, ``x in y`` is ``True`` if and only if *x* is " "a substring of *y*. An equivalent test is ``y.find(x) != -1``. Empty " @@ -2450,7 +2520,7 @@ msgstr "" "``y.find(x) != -1``. Une chaîne vide est considérée comme une sous-chaîne de " "toute autre chaîne, ainsi ``\"\" in \"abc\"`` renvoie ``True``." -#: reference/expressions.rst:1567 +#: reference/expressions.rst:1604 msgid "" "For user-defined classes which define the :meth:`__contains__` method, ``x " "in y`` returns ``True`` if ``y.__contains__(x)`` returns a true value, and " @@ -2460,7 +2530,7 @@ msgstr "" "``x in y`` renvoie ``True`` si ``y.__contains__(x)`` renvoie vrai, et " "``False`` sinon." -#: reference/expressions.rst:1571 +#: reference/expressions.rst:1608 msgid "" "For user-defined classes which do not define :meth:`__contains__` but do " "define :meth:`__iter__`, ``x in y`` is ``True`` if some value ``z``, for " @@ -2474,7 +2544,7 @@ msgstr "" "de l'itération sur ``y``. Si une exception est levée pendant l'itération, " "c'est comme si :keyword:`in` avait levé cette exception." -#: reference/expressions.rst:1577 +#: reference/expressions.rst:1614 msgid "" "Lastly, the old-style iteration protocol is tried: if a class defines :meth:" "`__getitem__`, ``x in y`` is ``True`` if and only if there is a non-negative " @@ -2489,7 +2559,7 @@ msgstr "" "`IndexError` (si toute autre exception est levée, c'est comme si :keyword:" "`in` avait levé cette exception)." -#: reference/expressions.rst:1589 +#: reference/expressions.rst:1626 msgid "" "The operator :keyword:`not in` is defined to have the inverse truth value " "of :keyword:`in`." @@ -2497,11 +2567,11 @@ msgstr "" "L'opérateur :keyword:`not in` est défini comme produisant le contraire de :" "keyword:`in`." -#: reference/expressions.rst:1602 +#: reference/expressions.rst:1639 msgid "Identity comparisons" msgstr "Comparaisons d'identifiants" -#: reference/expressions.rst:1604 +#: reference/expressions.rst:1641 msgid "" "The operators :keyword:`is` and :keyword:`is not` test for an object's " "identity: ``x is y`` is true if and only if *x* and *y* are the same " @@ -2514,11 +2584,11 @@ msgstr "" "fonction :meth:`id`. ``x is not y`` renvoie le résultat contraire de " "l'égalité des identifiants [#]_." -#: reference/expressions.rst:1616 +#: reference/expressions.rst:1653 msgid "Boolean operations" msgstr "Opérations booléennes" -#: reference/expressions.rst:1627 +#: reference/expressions.rst:1664 msgid "" "In the context of Boolean operations, and also when expressions are used by " "control flow statements, the following values are interpreted as false: " @@ -2537,7 +2607,7 @@ msgstr "" "allogènes peuvent personnaliser leur table de vérité en implémentant une " "méthode :meth:`__bool__`." -#: reference/expressions.rst:1636 +#: reference/expressions.rst:1673 msgid "" "The operator :keyword:`not` yields ``True`` if its argument is false, " "``False`` otherwise." @@ -2545,7 +2615,7 @@ msgstr "" "L'opérateur :keyword:`not` produit ``True`` si son argument est faux, " "``False`` sinon." -#: reference/expressions.rst:1641 +#: reference/expressions.rst:1678 msgid "" "The expression ``x and y`` first evaluates *x*; if *x* is false, its value " "is returned; otherwise, *y* is evaluated and the resulting value is returned." @@ -2554,7 +2624,7 @@ msgstr "" "valeur est renvoyée ; sinon, *y* est évalué et la valeur résultante est " "renvoyée." -#: reference/expressions.rst:1646 +#: reference/expressions.rst:1683 msgid "" "The expression ``x or y`` first evaluates *x*; if *x* is true, its value is " "returned; otherwise, *y* is evaluated and the resulting value is returned." @@ -2563,7 +2633,7 @@ msgstr "" "valeur est renvoyée ; sinon, *y* est évalué et la valeur résultante est " "renvoyée." -#: reference/expressions.rst:1649 +#: reference/expressions.rst:1686 msgid "" "Note that neither :keyword:`and` nor :keyword:`or` restrict the value and " "type they return to ``False`` and ``True``, but rather return the last " @@ -2582,11 +2652,11 @@ msgstr "" "de son argument (par exemple, ``not 'truc'`` produit ``False`` plutôt que " "``''``." -#: reference/expressions.rst:1659 +#: reference/expressions.rst:1696 msgid "Assignment expressions" msgstr "Expressions d'affectation" -#: reference/expressions.rst:1664 +#: reference/expressions.rst:1701 msgid "" "An assignment expression (sometimes also called a \"named expression\" or " "\"walrus\") assigns an :token:`expression` to an :token:`identifier`, while " @@ -2596,26 +2666,26 @@ msgstr "" "« expression morse ») affecte l':token:`expression` à un :token:" "`identifiant` et renvoie la valeur de l':token:`expression`." -#: reference/expressions.rst:1668 +#: reference/expressions.rst:1705 msgid "One common use case is when handling matched regular expressions:" msgstr "" "Une utilisation classique concerne les correspondances d'expressions " "rationnelles :" -#: reference/expressions.rst:1675 +#: reference/expressions.rst:1712 msgid "Or, when processing a file stream in chunks:" msgstr "Ou lorsqu'on traite le contenu d'un fichier par morceaux :" -#: reference/expressions.rst:1682 +#: reference/expressions.rst:1719 msgid "See :pep:`572` for more details about assignment expressions." msgstr "" "Voir la :pep:`572` pour plus de détails sur les expressions d’affectation." -#: reference/expressions.rst:1689 +#: reference/expressions.rst:1726 msgid "Conditional expressions" msgstr "Expressions conditionnelles" -#: reference/expressions.rst:1701 +#: reference/expressions.rst:1738 msgid "" "Conditional expressions (sometimes called a \"ternary operator\") have the " "lowest priority of all Python operations." @@ -2623,7 +2693,7 @@ msgstr "" "Les expressions conditionnelles (parfois appelées « opérateur ternaire ») " "sont les moins prioritaires de toutes les opérations Python." -#: reference/expressions.rst:1704 +#: reference/expressions.rst:1741 msgid "" "The expression ``x if C else y`` first evaluates the condition, *C* rather " "than *x*. If *C* is true, *x* is evaluated and its value is returned; " @@ -2633,16 +2703,16 @@ msgstr "" "est vrai, alors *x* est évalué et sa valeur est renvoyée ; sinon, *y* est " "évalué et sa valeur est renvoyée." -#: reference/expressions.rst:1708 +#: reference/expressions.rst:1745 msgid "See :pep:`308` for more details about conditional expressions." msgstr "" "Voir la :pep:`308` pour plus de détails sur les expressions conditionnelles." -#: reference/expressions.rst:1715 +#: reference/expressions.rst:1752 msgid "Lambdas" msgstr "Expressions lambda" -#: reference/expressions.rst:1726 +#: reference/expressions.rst:1763 msgid "" "Lambda expressions (sometimes called lambda forms) are used to create " "anonymous functions. The expression ``lambda parameters: expression`` yields " @@ -2653,7 +2723,7 @@ msgstr "" "L'expression ``lambda parameters: expression`` produit un objet fonction. " "Cet objet anonyme se comporte comme un objet fonction défini par :" -#: reference/expressions.rst:1735 +#: reference/expressions.rst:1772 msgid "" "See section :ref:`function` for the syntax of parameter lists. Note that " "functions created with lambda expressions cannot contain statements or " @@ -2663,11 +2733,11 @@ msgstr "" "Notez que les fonctions créées par des expressions lambda ne peuvent pas " "contenir d'instructions ou d'annotations." -#: reference/expressions.rst:1743 +#: reference/expressions.rst:1780 msgid "Expression lists" msgstr "Listes d'expressions" -#: reference/expressions.rst:1757 +#: reference/expressions.rst:1794 msgid "" "Except when part of a list or set display, an expression list containing at " "least one comma yields a tuple. The length of the tuple is the number of " @@ -2678,7 +2748,7 @@ msgstr "" "La longueur du *n*-uplet est le nombre d'expressions dans la liste. Les " "expressions sont évaluées de la gauche vers la droite." -#: reference/expressions.rst:1766 +#: reference/expressions.rst:1803 msgid "" "An asterisk ``*`` denotes :dfn:`iterable unpacking`. Its operand must be " "an :term:`iterable`. The iterable is expanded into a sequence of items, " @@ -2690,14 +2760,14 @@ msgstr "" "L'itérable est développé en une séquence d'éléments qui sont inclus dans un " "nouvel objet *n*-uplet, liste ou ensemble à l'emplacement du dépaquetage." -#: reference/expressions.rst:1771 +#: reference/expressions.rst:1808 msgid "" "Iterable unpacking in expression lists, originally proposed by :pep:`448`." msgstr "" "dépaquetage d'itérables dans les listes d'expressions, proposé à l'origine " "par la :pep:`448`." -#: reference/expressions.rst:1776 +#: reference/expressions.rst:1813 msgid "" "The trailing comma is required only to create a single tuple (a.k.a. a " "*singleton*); it is optional in all other cases. A single expression " @@ -2711,11 +2781,11 @@ msgstr "" "produit la valeur de cette expression (pour créer un *n*-uplet vide, " "utilisez une paire de parenthèses vide : ``()``)." -#: reference/expressions.rst:1786 +#: reference/expressions.rst:1823 msgid "Evaluation order" msgstr "Ordre d'évaluation" -#: reference/expressions.rst:1790 +#: reference/expressions.rst:1827 msgid "" "Python evaluates expressions from left to right. Notice that while " "evaluating an assignment, the right-hand side is evaluated before the left-" @@ -2725,7 +2795,7 @@ msgstr "" "lors de l'évaluation d'une assignation, la partie droite de l'assignation " "est évaluée avant la partie gauche." -#: reference/expressions.rst:1793 +#: reference/expressions.rst:1830 msgid "" "In the following lines, expressions will be evaluated in the arithmetic " "order of their suffixes::" @@ -2733,11 +2803,11 @@ msgstr "" "Dans les lignes qui suivent, les expressions sont évaluées suivant l'ordre " "arithmétique de leurs suffixes ::" -#: reference/expressions.rst:1807 +#: reference/expressions.rst:1844 msgid "Operator precedence" msgstr "Priorités des opérateurs" -#: reference/expressions.rst:1812 +#: reference/expressions.rst:1849 msgid "" "The following table summarizes the operator precedence in Python, from " "highest precedence (most binding) to lowest precedence (least binding). " @@ -2752,7 +2822,7 @@ msgstr "" "binaires. Les opérateurs dans la même case regroupent de la gauche vers la " "droite (sauf pour la puissance qui regroupe de la droite vers la gauche)." -#: reference/expressions.rst:1818 +#: reference/expressions.rst:1855 msgid "" "Note that comparisons, membership tests, and identity tests, all have the " "same precedence and have a left-to-right chaining feature as described in " @@ -2762,23 +2832,23 @@ msgstr "" "d'identifiants possèdent tous la même priorité et s'enchaînent de la gauche " "vers la droite comme décrit dans la section :ref:`comparisons`." -#: reference/expressions.rst:1824 +#: reference/expressions.rst:1861 msgid "Operator" msgstr "Opérateur" -#: reference/expressions.rst:1824 +#: reference/expressions.rst:1861 msgid "Description" msgstr "Description" -#: reference/expressions.rst:1826 +#: reference/expressions.rst:1863 msgid "``(expressions...)``," msgstr "``(expressions…)``," -#: reference/expressions.rst:1828 +#: reference/expressions.rst:1865 msgid "``[expressions...]``, ``{key: value...}``, ``{expressions...}``" msgstr "``[expressions…]``, ``{key: value…}``, ``{expressions…}``" -#: reference/expressions.rst:1826 +#: reference/expressions.rst:1863 msgid "" "Binding or parenthesized expression, list display, dictionary display, set " "display" @@ -2786,39 +2856,39 @@ msgstr "" "Expression de liaison ou parenthèse, affichage de liste, affichage de " "dictionnaire, affichage de *set*" -#: reference/expressions.rst:1832 +#: reference/expressions.rst:1869 msgid "``x[index]``, ``x[index:index]``, ``x(arguments...)``, ``x.attribute``" msgstr "``x[indice]``, ``x[indice:indice]``, ``x(arguments…)``, ``x.attribut``" -#: reference/expressions.rst:1832 +#: reference/expressions.rst:1869 msgid "Subscription, slicing, call, attribute reference" msgstr "indiçage, tranches, appel, référence à un attribut" -#: reference/expressions.rst:1835 +#: reference/expressions.rst:1872 msgid ":keyword:`await` ``x``" msgstr ":keyword:`await` ``x``" -#: reference/expressions.rst:1837 +#: reference/expressions.rst:1874 msgid "``**``" msgstr "``**``" -#: reference/expressions.rst:1837 +#: reference/expressions.rst:1874 msgid "Exponentiation [#]_" msgstr "Puissance [#]_" -#: reference/expressions.rst:1839 +#: reference/expressions.rst:1876 msgid "``+x``, ``-x``, ``~x``" msgstr "``+x``, ``-x``, ``~x``" -#: reference/expressions.rst:1839 +#: reference/expressions.rst:1876 msgid "Positive, negative, bitwise NOT" msgstr "NOT (positif, négatif, bit à bit)" -#: reference/expressions.rst:1841 +#: reference/expressions.rst:1878 msgid "``*``, ``@``, ``/``, ``//``, ``%``" msgstr "``*``, ``@``, ``/``, ``//``, ``%``" -#: reference/expressions.rst:1841 +#: reference/expressions.rst:1878 msgid "" "Multiplication, matrix multiplication, division, floor division, remainder " "[#]_" @@ -2826,47 +2896,47 @@ msgstr "" "Multiplication, multiplication de matrices, division, division entière, " "reste [#]_" -#: reference/expressions.rst:1845 +#: reference/expressions.rst:1882 msgid "``+``, ``-``" msgstr "``+``, ``-``" -#: reference/expressions.rst:1845 +#: reference/expressions.rst:1882 msgid "Addition and subtraction" msgstr "Addition et soustraction" -#: reference/expressions.rst:1847 +#: reference/expressions.rst:1884 msgid "``<<``, ``>>``" msgstr "``<<``, ``>>``" -#: reference/expressions.rst:1847 +#: reference/expressions.rst:1884 msgid "Shifts" msgstr "décalages" -#: reference/expressions.rst:1849 +#: reference/expressions.rst:1886 msgid "``&``" msgstr "``&``" -#: reference/expressions.rst:1849 +#: reference/expressions.rst:1886 msgid "Bitwise AND" msgstr "AND (bit à bit)" -#: reference/expressions.rst:1851 +#: reference/expressions.rst:1888 msgid "``^``" msgstr "``^``" -#: reference/expressions.rst:1851 +#: reference/expressions.rst:1888 msgid "Bitwise XOR" msgstr "XOR (bit à bit)" -#: reference/expressions.rst:1853 +#: reference/expressions.rst:1890 msgid "``|``" msgstr "``|``" -#: reference/expressions.rst:1853 +#: reference/expressions.rst:1890 msgid "Bitwise OR" msgstr "OR (bit à bit)" -#: reference/expressions.rst:1855 +#: reference/expressions.rst:1892 msgid "" ":keyword:`in`, :keyword:`not in`, :keyword:`is`, :keyword:`is not`, ``<``, " "``<=``, ``>``, ``>=``, ``!=``, ``==``" @@ -2874,64 +2944,64 @@ msgstr "" ":keyword:`in`, :keyword:`not in`, :keyword:`is`, :keyword:`is not`, ``<``, " "``<=``, ``>``, ``>=``, ``!=``, ``==``" -#: reference/expressions.rst:1855 +#: reference/expressions.rst:1892 msgid "Comparisons, including membership tests and identity tests" msgstr "" "Comparaisons, y compris les tests d'appartenance et les tests d'identifiants" -#: reference/expressions.rst:1859 +#: reference/expressions.rst:1896 msgid ":keyword:`not` ``x``" msgstr ":keyword:`not` ``x``" -#: reference/expressions.rst:1859 +#: reference/expressions.rst:1896 msgid "Boolean NOT" msgstr "NOT (booléen)" -#: reference/expressions.rst:1861 +#: reference/expressions.rst:1898 msgid ":keyword:`and`" msgstr ":keyword:`and`" -#: reference/expressions.rst:1861 +#: reference/expressions.rst:1898 msgid "Boolean AND" msgstr "AND (booléen)" -#: reference/expressions.rst:1863 +#: reference/expressions.rst:1900 msgid ":keyword:`or`" msgstr ":keyword:`or`" -#: reference/expressions.rst:1863 +#: reference/expressions.rst:1900 msgid "Boolean OR" msgstr "OR (booléen)" -#: reference/expressions.rst:1865 +#: reference/expressions.rst:1902 msgid ":keyword:`if ` -- :keyword:`!else`" msgstr ":keyword:`if ` -- :keyword:`!else`" -#: reference/expressions.rst:1865 +#: reference/expressions.rst:1902 msgid "Conditional expression" msgstr "Expressions conditionnelles" -#: reference/expressions.rst:1867 +#: reference/expressions.rst:1904 msgid ":keyword:`lambda`" msgstr ":keyword:`lambda`" -#: reference/expressions.rst:1867 +#: reference/expressions.rst:1904 msgid "Lambda expression" msgstr "Expression lambda" -#: reference/expressions.rst:1869 +#: reference/expressions.rst:1906 msgid "``:=``" msgstr "``:=``" -#: reference/expressions.rst:1869 +#: reference/expressions.rst:1906 msgid "Assignment expression" msgstr "Expression d'affectation" -#: reference/expressions.rst:1874 +#: reference/expressions.rst:1911 msgid "Footnotes" msgstr "Notes" -#: reference/expressions.rst:1875 +#: reference/expressions.rst:1912 msgid "" "While ``abs(x%y) < abs(y)`` is true mathematically, for floats it may not be " "true numerically due to roundoff. For example, and assuming a platform on " @@ -2952,7 +3022,7 @@ msgstr "" "argument, c'est-à-dire ``-1e-100`` dans ce cas. La meilleure approche dépend " "de l'application." -#: reference/expressions.rst:1884 +#: reference/expressions.rst:1921 msgid "" "If x is very close to an exact integer multiple of y, it's possible for ``x//" "y`` to be one larger than ``(x-x%y)//y`` due to rounding. In such cases, " @@ -2964,7 +3034,7 @@ msgstr "" "Dans de tels cas, Python renvoie le second résultat afin d'avoir ``divmod(x," "y)[0] * y + x % y`` le plus proche de ``x``." -#: reference/expressions.rst:1889 +#: reference/expressions.rst:1926 msgid "" "The Unicode standard distinguishes between :dfn:`code points` (e.g. U+0041) " "and :dfn:`abstract characters` (e.g. \"LATIN CAPITAL LETTER A\"). While most " @@ -2989,7 +3059,7 @@ msgstr "" "*U+0043* (LATIN CAPITAL LETTER C) du code, suivi par un :dfn:`caractère " "combiné` à la position *U+0327* (*COMBINING CEDILLA*) du code." -#: reference/expressions.rst:1900 +#: reference/expressions.rst:1937 msgid "" "The comparison operators on strings compare at the level of Unicode code " "points. This may be counter-intuitive to humans. For example, ``\"\\u00C7\" " @@ -3002,7 +3072,7 @@ msgstr "" "chaînes représentent le même caractère abstrait \"LATIN CAPITAL LETTER C " "WITH CEDILLA\"." -#: reference/expressions.rst:1905 +#: reference/expressions.rst:1942 msgid "" "To compare strings at the level of abstract characters (that is, in a way " "intuitive to humans), use :func:`unicodedata.normalize`." @@ -3011,7 +3081,7 @@ msgstr "" "quelque chose d'intuitif pour les humains), utilisez :func:`unicodedata." "normalize`." -#: reference/expressions.rst:1908 +#: reference/expressions.rst:1945 msgid "" "Due to automatic garbage-collection, free lists, and the dynamic nature of " "descriptors, you may notice seemingly unusual behaviour in certain uses of " @@ -3024,7 +3094,7 @@ msgstr "" "cela implique des comparaisons entre des méthodes d'instances ou des " "constantes. Allez vérifier dans la documentation pour plus d'informations." -#: reference/expressions.rst:1913 +#: reference/expressions.rst:1950 msgid "" "The power operator ``**`` binds less tightly than an arithmetic or bitwise " "unary operator on its right, that is, ``2**-1`` is ``0.5``." @@ -3032,10 +3102,15 @@ msgstr "" "L'opérateur puissance ``**`` est moins prioritaire qu'un opérateur unaire " "arithmétique ou bit à bit sur sa droite. Ainsi, ``2**-1`` vaut ``0.5``." -#: reference/expressions.rst:1916 +#: reference/expressions.rst:1953 msgid "" "The ``%`` operator is also used for string formatting; the same precedence " "applies." msgstr "" "L'opérateur ``%`` est aussi utilisé pour formater les chaînes de " "caractères ; il y possède la même priorité." + +#~ msgid "Comparisons yield boolean values: ``True`` or ``False``." +#~ msgstr "" +#~ "Les comparaisons produisent des valeurs booléennes : ``True`` ou " +#~ "``False``." diff --git a/reference/grammar.po b/reference/grammar.po index 3567bd2d7..4eae0fb16 100644 --- a/reference/grammar.po +++ b/reference/grammar.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-04-10 16:30+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -30,6 +30,7 @@ msgstr "" "la génération de code et la reprise sur erreur." #: reference/grammar.rst:9 +#, fuzzy msgid "" "The notation is a mixture of `EBNF `_ and `PEG `_ et `PEG \n" "Language-Team: FRENCH \n" @@ -644,11 +644,17 @@ msgstr "" "avant, le mécanisme d'importation essaie ``find_module()`` uniquement si le " "chercheur n'implémente pas ``find_spec()``." -#: reference/import.rst:334 +#: reference/import.rst:332 +msgid "" +"Use of :meth:`~importlib.abc.MetaPathFinder.find_module` by the import " +"system now raises :exc:`ImportWarning`." +msgstr "" + +#: reference/import.rst:338 msgid "Loading" msgstr "Chargement" -#: reference/import.rst:336 +#: reference/import.rst:340 msgid "" "If and when a module spec is found, the import machinery will use it (and " "the loader it contains) when loading the module. Here is an approximation " @@ -659,11 +665,11 @@ msgstr "" "peu près ce qui se passe au sein de l'importation pendant la phase de " "chargement ::" -#: reference/import.rst:370 +#: reference/import.rst:374 msgid "Note the following details:" msgstr "Notez les détails suivants :" -#: reference/import.rst:372 +#: reference/import.rst:376 msgid "" "If there is an existing module object with the given name in :data:`sys." "modules`, import will have already returned it." @@ -671,7 +677,7 @@ msgstr "" "S'il existe un objet module dans :data:`sys.modules` avec le même nom, " "import l'aurait déjà renvoyé." -#: reference/import.rst:375 +#: reference/import.rst:379 msgid "" "The module will exist in :data:`sys.modules` before the loader executes the " "module code. This is crucial because the module code may (directly or " @@ -685,7 +691,7 @@ msgstr "" "évite les récursions infinies dans le pire cas et le chargement multiple " "dans le meilleur des cas." -#: reference/import.rst:381 +#: reference/import.rst:385 msgid "" "If loading fails, the failing module -- and only the failing module -- gets " "removed from :data:`sys.modules`. Any module already in the :data:`sys." @@ -699,7 +705,7 @@ msgstr "" "rester dans le cache. C'est différent dans le cas d'un rechargement où même " "le module qui a échoué est conservé dans :data:`sys.modules`." -#: reference/import.rst:387 +#: reference/import.rst:391 msgid "" "After the module is created but before execution, the import machinery sets " "the import-related module attributes (\"_init_module_attrs\" in the pseudo-" @@ -712,7 +718,7 @@ msgstr "" "indiqué brièvement dans une :ref:`section ` que nous " "abordons ensuite." -#: reference/import.rst:392 +#: reference/import.rst:396 msgid "" "Module execution is the key moment of loading in which the module's " "namespace gets populated. Execution is entirely delegated to the loader, " @@ -722,7 +728,7 @@ msgstr "" "de nommage du module est peuplé. L'exécution est entièrement déléguée au " "chargeur qui doit décider ce qui est peuplé et comment." -#: reference/import.rst:396 +#: reference/import.rst:400 msgid "" "The module created during loading and passed to exec_module() may not be the " "one returned at the end of import [#fnlo]_." @@ -730,7 +736,7 @@ msgstr "" "Le modulé créé pendant le chargement et passé à ``exec_module()`` peut ne " "pas être celui qui est renvoyé à la fin de l'importation [#fnlo]_." -#: reference/import.rst:399 +#: reference/import.rst:403 msgid "" "The import system has taken over the boilerplate responsibilities of " "loaders. These were previously performed by the :meth:`importlib.abc.Loader." @@ -740,11 +746,11 @@ msgstr "" "Celles-ci étaient auparavant effectuées par la méthode :meth:`importlib.abc." "Loader.load_module`." -#: reference/import.rst:405 +#: reference/import.rst:409 msgid "Loaders" msgstr "Chargeurs" -#: reference/import.rst:407 +#: reference/import.rst:411 msgid "" "Module loaders provide the critical function of loading: module execution. " "The import machinery calls the :meth:`importlib.abc.Loader.exec_module` " @@ -757,11 +763,11 @@ msgstr "" "exécuter. Toute valeur renvoyée par :meth:`~importlib.abc.Loader." "exec_module` est ignorée." -#: reference/import.rst:412 +#: reference/import.rst:416 msgid "Loaders must satisfy the following requirements:" msgstr "Les chargeurs doivent satisfaire les conditions suivantes :" -#: reference/import.rst:414 +#: reference/import.rst:418 msgid "" "If the module is a Python module (as opposed to a built-in module or a " "dynamically loaded extension), the loader should execute the module's code " @@ -771,7 +777,7 @@ msgstr "" "extensions chargées dynamiquement), le chargeur doit exécuter le code du " "module dans l'espace des noms globaux du module (``module.__dict__``)." -#: reference/import.rst:418 +#: reference/import.rst:422 msgid "" "If the loader cannot execute the module, it should raise an :exc:" "`ImportError`, although any other exception raised during :meth:`~importlib." @@ -781,7 +787,7 @@ msgstr "" "`ImportError`, alors que toute autre exception levée durant :meth:" "`~importlib.abc.Loader.exec_module` est propagée." -#: reference/import.rst:422 +#: reference/import.rst:426 msgid "" "In many cases, the finder and loader can be the same object; in such cases " "the :meth:`~importlib.abc.MetaPathFinder.find_spec` method would just return " @@ -791,7 +797,7 @@ msgstr "" "méthode :meth:`~importlib.abc.MetaPathFinder.find_spec` doit juste renvoyer " "un spécificateur avec le chargeur défini à ``self``." -#: reference/import.rst:426 +#: reference/import.rst:430 msgid "" "Module loaders may opt in to creating the module object during loading by " "implementing a :meth:`~importlib.abc.Loader.create_module` method. It takes " @@ -808,11 +814,11 @@ msgstr "" "module. Si cette méthode renvoie ``None``, le mécanisme d'importation crée " "le nouveau module lui-même." -#: reference/import.rst:433 +#: reference/import.rst:437 msgid "The :meth:`~importlib.abc.Loader.create_module` method of loaders." msgstr "La méthode :meth:`~importlib.abc.Loader.create_module` des chargeurs." -#: reference/import.rst:436 +#: reference/import.rst:440 msgid "" "The :meth:`~importlib.abc.Loader.load_module` method was replaced by :meth:" "`~importlib.abc.Loader.exec_module` and the import machinery assumed all the " @@ -822,7 +828,7 @@ msgstr "" "meth:`~importlib.abc.Loader.exec_module` et le mécanisme d'import assume " "toutes les responsabilités du chargement." -#: reference/import.rst:441 +#: reference/import.rst:445 msgid "" "For compatibility with existing loaders, the import machinery will use the " "``load_module()`` method of loaders if it exists and the loader does not " @@ -835,7 +841,7 @@ msgstr "" "est déclarée obsolète et les chargeurs doivent implémenter ``exec_module()`` " "à la place." -#: reference/import.rst:446 +#: reference/import.rst:450 msgid "" "The ``load_module()`` method must implement all the boilerplate loading " "functionality described above in addition to executing the module. All the " @@ -846,7 +852,7 @@ msgstr "" "les contraintes s'appliquent aussi, avec quelques précisions " "supplémentaires :" -#: reference/import.rst:450 +#: reference/import.rst:454 msgid "" "If there is an existing module object with the given name in :data:`sys." "modules`, the loader must use that existing module. (Otherwise, :func:" @@ -860,7 +866,7 @@ msgstr "" "trouvé dans :data:`sys.modules`, le chargeur doit créer un nouvel objet " "module et l'ajouter à :data:`sys.modules`." -#: reference/import.rst:456 +#: reference/import.rst:460 msgid "" "The module *must* exist in :data:`sys.modules` before the loader executes " "the module code, to prevent unbounded recursion or multiple loading." @@ -869,7 +875,7 @@ msgstr "" "n'exécute le code du module, afin d'éviter les récursions infinies ou le " "chargement multiple." -#: reference/import.rst:460 +#: reference/import.rst:464 msgid "" "If loading fails, the loader must remove any modules it has inserted into :" "data:`sys.modules`, but it must remove **only** the failing module(s), and " @@ -879,7 +885,7 @@ msgstr "" "**que** le (ou les) module ayant échoué et seulement si le chargeur lui-même " "a chargé le module explicitement." -#: reference/import.rst:465 +#: reference/import.rst:469 msgid "" "A :exc:`DeprecationWarning` is raised when ``exec_module()`` is defined but " "``create_module()`` is not." @@ -887,7 +893,7 @@ msgstr "" "Un avertissement :exc:`DeprecationWarning` est levé quand ``exec_module()`` " "est définie mais ``create_module()`` ne l'est pas." -#: reference/import.rst:469 +#: reference/import.rst:473 msgid "" "An :exc:`ImportError` is raised when ``exec_module()`` is defined but " "``create_module()`` is not." @@ -895,11 +901,15 @@ msgstr "" "Une exception :exc:`ImportError` est levée quand ``exec_module()`` est " "définie mais ``create_module()`` ne l'est pas." -#: reference/import.rst:474 +#: reference/import.rst:477 +msgid "Use of ``load_module()`` will raise :exc:`ImportWarning`." +msgstr "" + +#: reference/import.rst:481 msgid "Submodules" msgstr "Sous-modules" -#: reference/import.rst:476 +#: reference/import.rst:483 msgid "" "When a submodule is loaded using any mechanism (e.g. ``importlib`` APIs, the " "``import`` or ``import-from`` statements, or built-in ``__import__()``) a " @@ -916,11 +926,11 @@ msgstr "" "possède un attribut ``foo`` qui est lié au sous-module. Supposons que nous " "ayons l'arborescence suivante ::" -#: reference/import.rst:488 +#: reference/import.rst:495 msgid "and ``spam/__init__.py`` has the following lines in it::" msgstr "et que le contenu de ``spam/__init__.py`` soit ::" -#: reference/import.rst:493 +#: reference/import.rst:500 msgid "" "then executing the following puts a name binding to ``foo`` and ``bar`` in " "the ``spam`` module::" @@ -928,7 +938,7 @@ msgstr "" "alors exécuter les lignes suivantes crée des liens vers ``foo`` et ``bar`` " "dans le module ``spam`` ::" -#: reference/import.rst:502 +#: reference/import.rst:509 msgid "" "Given Python's familiar name binding rules this might seem surprising, but " "it's actually a fundamental feature of the import system. The invariant " @@ -943,11 +953,11 @@ msgstr "" "l'importation), alors le dernier doit apparaître comme l'attribut ``foo`` du " "premier." -#: reference/import.rst:509 +#: reference/import.rst:516 msgid "Module spec" msgstr "Spécificateurs de modules" -#: reference/import.rst:511 +#: reference/import.rst:518 msgid "" "The import machinery uses a variety of information about each module during " "import, especially before loading. Most of the information is common to all " @@ -960,7 +970,7 @@ msgstr "" "module est d'encapsuler ces informations relatives à l'importation au sein " "de chaque module." -#: reference/import.rst:516 +#: reference/import.rst:523 msgid "" "Using a spec during import allows state to be transferred between import " "system components, e.g. between the finder that creates the module spec and " @@ -975,7 +985,7 @@ msgstr "" "opérations classiques de chargement, alors que c'était le chargeur qui en " "avait la responsabilité quand il n'y avait pas de spécificateur." -#: reference/import.rst:522 +#: reference/import.rst:529 msgid "" "The module's spec is exposed as the ``__spec__`` attribute on a module " "object. See :class:`~importlib.machinery.ModuleSpec` for details on the " @@ -985,11 +995,11 @@ msgstr "" "l'objet module. Lisez :class:`~importlib.machinery.ModuleSpec` pour " "davantage d'informations sur le contenu du spécificateur de module." -#: reference/import.rst:531 +#: reference/import.rst:538 msgid "Import-related module attributes" msgstr "Attributs des modules importés" -#: reference/import.rst:533 +#: reference/import.rst:540 msgid "" "The import machinery fills in these attributes on each module object during " "loading, based on the module's spec, before the loader executes the module." @@ -998,7 +1008,7 @@ msgstr "" "pendant le chargement, sur la base du spécificateur de module et avant que " "le chargeur n'exécute le module." -#: reference/import.rst:539 +#: reference/import.rst:546 msgid "" "The ``__name__`` attribute must be set to the fully-qualified name of the " "module. This name is used to uniquely identify the module in the import " @@ -1008,7 +1018,7 @@ msgstr "" "module. Ce nom est utilisé pour identifier de manière non équivoque le " "module dans le mécanisme d'importation." -#: reference/import.rst:545 +#: reference/import.rst:552 msgid "" "The ``__loader__`` attribute must be set to the loader object that the " "import machinery used when loading the module. This is mostly for " @@ -1021,7 +1031,7 @@ msgstr "" "fonctionnalités relatives au chargement. Par exemple, obtenir des données " "par l'intermédiaire du chargeur." -#: reference/import.rst:552 +#: reference/import.rst:559 msgid "" "The module's ``__package__`` attribute must be set. Its value must be a " "string, but it can be the same value as its ``__name__``. When the module " @@ -1038,7 +1048,7 @@ msgstr "" "modules de niveau le plus haut, et le nom du paquet parent pour les sous-" "modules. Voir la :pep:`366` pour plus de détails." -#: reference/import.rst:560 +#: reference/import.rst:567 msgid "" "This attribute is used instead of ``__name__`` to calculate explicit " "relative imports for main modules, as defined in :pep:`366`. It is expected " @@ -1048,7 +1058,7 @@ msgstr "" "importations relatives explicites des modules principaux, comme défini dans " "la :pep:`366`. Il devrait avoir la même valeur que ``__spec__.parent``." -#: reference/import.rst:564 +#: reference/import.rst:571 msgid "" "The value of ``__package__`` is expected to be the same as ``__spec__." "parent``." @@ -1056,7 +1066,7 @@ msgstr "" "La valeur de ``__package__`` devrait être la même que celle de ``__spec__." "parent``." -#: reference/import.rst:570 +#: reference/import.rst:577 msgid "" "The ``__spec__`` attribute must be set to the module spec that was used when " "importing the module. Setting ``__spec__`` appropriately applies equally to :" @@ -1071,7 +1081,7 @@ msgstr "" "concerne ``__main__`` où la valeur de ``__spec__`` est :ref:`None dans " "certains cas `." -#: reference/import.rst:576 +#: reference/import.rst:583 msgid "" "When ``__package__`` is not defined, ``__spec__.parent`` is used as a " "fallback." @@ -1079,7 +1089,7 @@ msgstr "" "Quand ``__package__`` n'est pas défini, ``__spec__.parent`` est utilisé par " "défaut." -#: reference/import.rst:581 +#: reference/import.rst:588 msgid "" "``__spec__.parent`` is used as a fallback when ``__package__`` is not " "defined." @@ -1087,7 +1097,7 @@ msgstr "" "``__spec__.parent`` est utilisé par défaut quand ``__package__`` n'est pas " "défini." -#: reference/import.rst:587 +#: reference/import.rst:594 msgid "" "If the module is a package (either regular or namespace), the module " "object's ``__path__`` attribute must be set. The value must be iterable, " @@ -1103,13 +1113,13 @@ msgstr "" "lorsque l'on itère dessus. Vous trouvez plus de détails sur la sémantique de " "``__path__`` :ref:`plus loin ci-dessous `." -#: reference/import.rst:594 +#: reference/import.rst:601 msgid "Non-package modules should not have a ``__path__`` attribute." msgstr "" "Les modules qui ne sont pas des paquets ne doivent pas avoir d'attribut " "``__path__``." -#: reference/import.rst:599 +#: reference/import.rst:606 msgid "" "``__file__`` is optional. If set, this attribute's value must be a string. " "The import system may opt to leave ``__file__`` unset if it has no semantic " @@ -1120,7 +1130,7 @@ msgstr "" "``__file__`` indéfini si cela ne fait pas sens de le définir (par exemple, " "lorsqu'on charge un module depuis une base de données)." -#: reference/import.rst:603 +#: reference/import.rst:610 msgid "" "If ``__file__`` is set, it may also be appropriate to set the ``__cached__`` " "attribute which is the path to any compiled version of the code (e.g. byte-" @@ -1134,7 +1144,7 @@ msgstr "" "d'exister pour définir cet attribut : le chemin peut simplement pointer vers " "l'endroit où le fichier compilé aurait été placé (voir la :pep:`3147`)." -#: reference/import.rst:609 +#: reference/import.rst:616 msgid "" "It is also appropriate to set ``__cached__`` when ``__file__`` is not set. " "However, that scenario is quite atypical. Ultimately, the loader is what " @@ -1148,18 +1158,18 @@ msgstr "" "peut charger depuis un module mis en cache mais ne peut pas charger depuis " "un fichier, ce scénario a du sens." -#: reference/import.rst:618 +#: reference/import.rst:625 msgid "module.__path__" msgstr "module.__path__" -#: reference/import.rst:620 +#: reference/import.rst:627 msgid "" "By definition, if a module has a ``__path__`` attribute, it is a package." msgstr "" "Par définition, si un module possède un attribut ``__path__``, c'est un " "paquet." -#: reference/import.rst:622 +#: reference/import.rst:629 msgid "" "A package's ``__path__`` attribute is used during imports of its " "subpackages. Within the import machinery, it functions much the same as :" @@ -1173,7 +1183,7 @@ msgstr "" "d'emplacements où rechercher les modules pendant l'importation. Cependant, " "``__path__`` est beaucoup plus contraint que :data:`sys.path`." -#: reference/import.rst:628 +#: reference/import.rst:635 msgid "" "``__path__`` must be an iterable of strings, but it may be empty. The same " "rules used for :data:`sys.path` also apply to a package's ``__path__``, and :" @@ -1185,7 +1195,7 @@ msgstr "" "``__path__`` d'un paquet et :data:`sys.path_hooks` (dont la description est " "donnée plus bas) est consulté pendant le parcours de ``__path__`` du paquet." -#: reference/import.rst:633 +#: reference/import.rst:640 msgid "" "A package's ``__init__.py`` file may set or alter the package's ``__path__`` " "attribute, and this was typically the way namespace packages were " @@ -1202,11 +1212,11 @@ msgstr "" "mécanisme d'importation définit automatiquement ``__path__`` correctement " "pour un paquet-espace de nommage." -#: reference/import.rst:641 +#: reference/import.rst:648 msgid "Module reprs" msgstr "Représentation textuelle d'un module" -#: reference/import.rst:643 +#: reference/import.rst:650 msgid "" "By default, all modules have a usable repr, however depending on the " "attributes set above, and in the module's spec, you can more explicitly " @@ -1217,7 +1227,7 @@ msgstr "" "spécificateur de module, vous pouvez explicitement mieux contrôler " "l'affichage des objets modules." -#: reference/import.rst:647 +#: reference/import.rst:654 msgid "" "If the module has a spec (``__spec__``), the import machinery will try to " "generate a repr from it. If that fails or there is no spec, the import " @@ -1234,11 +1244,11 @@ msgstr "" "__file__`` et ``module.__loader__`` comme entrées pour la représentation, " "avec des valeurs par défaut lorsque l'information est manquante." -#: reference/import.rst:654 +#: reference/import.rst:661 msgid "Here are the exact rules used:" msgstr "Les règles exactes utilisées sont :" -#: reference/import.rst:656 +#: reference/import.rst:663 msgid "" "If the module has a ``__spec__`` attribute, the information in the spec is " "used to generate the repr. The \"name\", \"loader\", \"origin\", and " @@ -1248,7 +1258,7 @@ msgstr "" "générer la représentation. Les attributs *name*, *loader*, *origin* et " "*has_location* sont consultés." -#: reference/import.rst:660 +#: reference/import.rst:667 msgid "" "If the module has a ``__file__`` attribute, this is used as part of the " "module's repr." @@ -1256,7 +1266,7 @@ msgstr "" "Si le module possède un attribut ``__file__``, il est utilisé pour " "construire la représentation du module." -#: reference/import.rst:663 +#: reference/import.rst:670 msgid "" "If the module has no ``__file__`` but does have a ``__loader__`` that is not " "``None``, then the loader's repr is used as part of the module's repr." @@ -1265,12 +1275,12 @@ msgstr "" "``__loader__`` qui n'est pas ``None``, alors la représentation du chargeur " "est utilisée pour construire la représentation du module." -#: reference/import.rst:666 +#: reference/import.rst:673 msgid "Otherwise, just use the module's ``__name__`` in the repr." msgstr "" "Sinon, il utilise juste le ``__name__`` du module dans la représentation." -#: reference/import.rst:668 +#: reference/import.rst:675 msgid "" "Use of :meth:`loader.module_repr() ` has " "been deprecated and the module spec is now used by the import machinery to " @@ -1281,7 +1291,7 @@ msgstr "" "dorénavant par le mécanisme d'importation pour générer la représentation " "textuelle du module." -#: reference/import.rst:673 +#: reference/import.rst:680 msgid "" "For backward compatibility with Python 3.3, the module repr will be " "generated by calling the loader's :meth:`~importlib.abc.Loader.module_repr` " @@ -1293,11 +1303,19 @@ msgstr "" "module_repr` du chargeur, si elle est définie, avant même d'essayer " "l'approche décrite ci-dessus. Cependant, cette méthode est obsolète." -#: reference/import.rst:681 +#: reference/import.rst:687 +msgid "" +"Calling :meth:`~importlib.abc.Loader.module_repr` now occurs after trying to " +"use a module's ``__spec__`` attribute but before falling back on " +"``__file__``. Use of :meth:`~importlib.abc.Loader.module_repr` is slated to " +"stop in Python 3.12." +msgstr "" + +#: reference/import.rst:695 msgid "Cached bytecode invalidation" msgstr "Invalidation de *bytecode* mis en cache" -#: reference/import.rst:683 +#: reference/import.rst:697 msgid "" "Before Python loads cached bytecode from a ``.pyc`` file, it checks whether " "the cache is up-to-date with the source ``.py`` file. By default, Python " @@ -1314,7 +1332,7 @@ msgstr "" "fichier cache en comparant les métadonnées que le cache contient avec les " "métadonnées de la source." -#: reference/import.rst:690 +#: reference/import.rst:704 msgid "" "Python also supports \"hash-based\" cache files, which store a hash of the " "source file's contents rather than its metadata. There are two variants of " @@ -1339,7 +1357,7 @@ msgstr "" "existe. La validation (ou non) des fichiers ``.pyc`` avec empreinte peut " "être définie avec l'option :option:`--check-hash-based-pycs`." -#: reference/import.rst:701 +#: reference/import.rst:715 msgid "" "Added hash-based ``.pyc`` files. Previously, Python only supported timestamp-" "based invalidation of bytecode caches." @@ -1347,11 +1365,11 @@ msgstr "" "Ajout des fichiers ``.pyc`` avec empreinte. Auparavant, Python gérait les " "caches de *bytecode* sur la base de l'horodatage." -#: reference/import.rst:707 +#: reference/import.rst:721 msgid "The Path Based Finder" msgstr "Le chercheur dans *path*" -#: reference/import.rst:712 +#: reference/import.rst:726 msgid "" "As mentioned previously, Python comes with several default meta path " "finders. One of these, called the :term:`path based finder` (:class:" @@ -1366,7 +1384,7 @@ msgstr "" "une liste :term:`d'entrées dans path `. Chaque entrée désigne un " "emplacement où rechercher des modules." -#: reference/import.rst:718 +#: reference/import.rst:732 msgid "" "The path based finder itself doesn't know how to import anything. Instead, " "it traverses the individual path entries, associating each of them with a " @@ -1377,7 +1395,7 @@ msgstr "" "chacune d'elle un \"chercheur d'entrée dans *path*\" qui sait comment gérer " "le type particulier de chemin considéré." -#: reference/import.rst:722 +#: reference/import.rst:736 msgid "" "The default set of path entry finders implement all the semantics for " "finding modules on the file system, handling special file types such as " @@ -1396,7 +1414,7 @@ msgstr "" "dans *path*\" par défaut savent aussi gérer tous ces types de fichiers " "(autres que les bibliothèques partagées) encapsulés dans des fichiers zip." -#: reference/import.rst:729 +#: reference/import.rst:743 msgid "" "Path entries need not be limited to file system locations. They can refer " "to URLs, database queries, or any other location that can be specified as a " @@ -1406,7 +1424,7 @@ msgstr "" "référence à des URL, des requêtes dans des bases de données ou tout autre " "emplacement qui peut être spécifié dans une chaîne de caractères." -#: reference/import.rst:733 +#: reference/import.rst:747 msgid "" "The path based finder provides additional hooks and protocols so that you " "can extend and customize the types of searchable path entries. For example, " @@ -1426,7 +1444,7 @@ msgstr "" "décrit plus bas et qui sera utilisé pour obtenir un chargeur de module sur " "la toile." -#: reference/import.rst:741 +#: reference/import.rst:755 msgid "" "A word of warning: this section and the previous both use the term *finder*, " "distinguishing between them by using the terms :term:`meta path finder` and :" @@ -1446,7 +1464,7 @@ msgstr "" "chemins opèrent au début du processus d'importation, comme clé de parcours " "de :data:`sys.meta_path`." -#: reference/import.rst:749 +#: reference/import.rst:763 msgid "" "By contrast, path entry finders are in a sense an implementation detail of " "the path based finder, and in fact, if the path based finder were to be " @@ -1458,11 +1476,11 @@ msgstr "" "chercheur dans *path* était enlevé de :data:`sys.meta_path`, aucune des " "sémantiques des \"chercheurs d'entrée dans *path*\" ne serait invoquée." -#: reference/import.rst:756 +#: reference/import.rst:770 msgid "Path entry finders" msgstr "Chercheurs d'entrée dans *path*" -#: reference/import.rst:764 +#: reference/import.rst:778 msgid "" "The :term:`path based finder` is responsible for finding and loading Python " "modules and packages whose location is specified with a string :term:`path " @@ -1476,7 +1494,7 @@ msgstr "" "emplacements sur le système de fichiers, mais il n'y a aucune raison de les " "limiter à ça." -#: reference/import.rst:769 +#: reference/import.rst:783 msgid "" "As a meta path finder, the :term:`path based finder` implements the :meth:" "`~importlib.abc.MetaPathFinder.find_spec` protocol previously described, " @@ -1490,7 +1508,7 @@ msgstr "" "utilisés pour personnaliser la façon dont les modules sont trouvés et " "chargés depuis le :term:`chemin des importations `." -#: reference/import.rst:774 +#: reference/import.rst:788 msgid "" "Three variables are used by the :term:`path based finder`, :data:`sys." "path`, :data:`sys.path_hooks` and :data:`sys.path_importer_cache`. The " @@ -1503,7 +1521,7 @@ msgstr "" "utilisé. Il permet de personnaliser encore davantage le mécanisme " "d'importation." -#: reference/import.rst:779 +#: reference/import.rst:793 msgid "" ":data:`sys.path` contains a list of strings providing search locations for " "modules and packages. It is initialized from the :data:`PYTHONPATH` " @@ -1527,7 +1545,7 @@ msgstr "" "types sont ignorés. L'encodage des entrées de chaînes d'octets est déterminé " "par chaque :term:`chercheur d'entrée dans path `." -#: reference/import.rst:790 +#: reference/import.rst:804 msgid "" "The :term:`path based finder` is a :term:`meta path finder`, so the import " "machinery begins the :term:`import path` search by calling the path based " @@ -1549,7 +1567,7 @@ msgstr "" "cela indique une importation de niveau le plus haut et :data:`sys.path` est " "utilisée." -#: reference/import.rst:799 +#: reference/import.rst:813 msgid "" "The path based finder iterates over every entry in the search path, and for " "each of these, looks for an appropriate :term:`path entry finder` (:class:" @@ -1579,7 +1597,7 @@ msgstr "" "`sys.path_importer_cache`, forçant ainsi le chercheur dans *path* à " "effectuer une nouvelle fois la recherche sur chaque entrée [#fnpic]_." -#: reference/import.rst:812 +#: reference/import.rst:826 msgid "" "If the path entry is not present in the cache, the path based finder " "iterates over every callable in :data:`sys.path_hooks`. Each of the :term:" @@ -1610,7 +1628,7 @@ msgstr "" "de fichiers, de l'UTF-8 ou autre chose) et, si le point d'entrée n'arrive " "pas à décoder l'argument, il doit lever une :exc:`ImportError`." -#: reference/import.rst:826 +#: reference/import.rst:840 msgid "" "If :data:`sys.path_hooks` iteration ends with no :term:`path entry finder` " "being returned, then the path based finder's :meth:`~importlib.machinery." @@ -1627,7 +1645,7 @@ msgstr "" "``None``, indiquant que ce :term:`chercheur dans les méta-chemins ` n'a pas trouvé le module." -#: reference/import.rst:833 +#: reference/import.rst:847 msgid "" "If a :term:`path entry finder` *is* returned by one of the :term:`path entry " "hook` callables on :data:`sys.path_hooks`, then the following protocol is " @@ -1640,7 +1658,7 @@ msgstr "" "spécificateur de module au chercheur, spécificateur qui sera utilisé pour " "charger le module." -#: reference/import.rst:838 +#: reference/import.rst:852 msgid "" "The current working directory -- denoted by an empty string -- is handled " "slightly differently from other entries on :data:`sys.path`. First, if the " @@ -1661,11 +1679,11 @@ msgstr "" "machinery.PathFinder.find_spec` est le nom réel du répertoire de travail " "courant et non pas la chaîne vide." -#: reference/import.rst:848 +#: reference/import.rst:862 msgid "Path entry finder protocol" msgstr "Protocole des chercheurs d'entrée dans *path*" -#: reference/import.rst:850 +#: reference/import.rst:864 msgid "" "In order to support imports of modules and initialized packages and also to " "contribute portions to namespace packages, path entry finders must implement " @@ -1676,7 +1694,7 @@ msgstr "" "les chercheurs d'entrée dans *path* doivent implémenter la méthode :meth:" "`~importlib.abc.PathEntryFinder.find_spec`." -#: reference/import.rst:854 +#: reference/import.rst:868 msgid "" ":meth:`~importlib.abc.PathEntryFinder.find_spec` takes two arguments: the " "fully qualified name of the module being imported, and the (optional) target " @@ -1689,7 +1707,7 @@ msgstr "" "de module pleinement peuplé. Ce spécificateur doit avoir son chargeur " "(attribut `loader`) défini, à une exception près." -#: reference/import.rst:859 +#: reference/import.rst:873 msgid "" "To indicate to the import machinery that the spec represents a namespace :" "term:`portion`, the path entry finder sets \"submodule_search_locations\" to " @@ -1700,7 +1718,7 @@ msgstr "" "dans *path* définit l'attribut *submodule_search_locations* à une liste " "contenant la portion." -#: reference/import.rst:863 +#: reference/import.rst:877 msgid "" ":meth:`~importlib.abc.PathEntryFinder.find_spec` replaced :meth:`~importlib." "abc.PathEntryFinder.find_loader` and :meth:`~importlib.abc.PathEntryFinder." @@ -1712,7 +1730,7 @@ msgstr "" "PathEntryFinder.find_module`, ces deux méthodes étant dorénavant obsolètes " "mais restant utilisées si ``find_spec()`` n'est pas définie." -#: reference/import.rst:869 +#: reference/import.rst:883 msgid "" "Older path entry finders may implement one of these two deprecated methods " "instead of ``find_spec()``. The methods are still respected for the sake of " @@ -1725,7 +1743,7 @@ msgstr "" "si ``find_spec()`` est implémentée par le chercheur d'entrée dans *path*, " "les méthodes historiques sont ignorées." -#: reference/import.rst:874 +#: reference/import.rst:888 msgid "" ":meth:`~importlib.abc.PathEntryFinder.find_loader` takes one argument, the " "fully qualified name of the module being imported. ``find_loader()`` " @@ -1737,7 +1755,7 @@ msgstr "" "\"``find_loader()`` renvoie un couple dont le premier élément est le " "chargeur et le second est une :term:`portion ` d'espace de nommage." -#: reference/import.rst:879 +#: reference/import.rst:893 msgid "" "For backwards compatibility with other implementations of the import " "protocol, many path entry finders also support the same, traditional " @@ -1754,7 +1772,7 @@ msgstr "" "*path* (il est convenu qu'elles enregistrent les informations relatives au " "chemin approprié au moment de leur appel initial au point d'entrée)." -#: reference/import.rst:886 +#: reference/import.rst:900 msgid "" "The ``find_module()`` method on path entry finders is deprecated, as it does " "not allow the path entry finder to contribute portions to namespace " @@ -1769,11 +1787,23 @@ msgstr "" "chercheur d'entrée dans *path*, le système d'importation utilise toujours " "``find_loader()`` plutôt que ``find_module()``." -#: reference/import.rst:894 +#: reference/import.rst:906 +#, fuzzy +msgid "" +"Calls to :meth:`~importlib.abc.PathEntryFinder.find_module` and :meth:" +"`~importlib.abc.PathEntryFinder.find_loader` by the import system will " +"raise :exc:`ImportWarning`." +msgstr "" +"La méthode :meth:`~importlib.abc.PathEntryFinder.find_spec` remplace :meth:" +"`~importlib.abc.PathEntryFinder.find_loader` et :meth:`~importlib.abc." +"PathEntryFinder.find_module`, ces deux méthodes étant dorénavant obsolètes " +"mais restant utilisées si ``find_spec()`` n'est pas définie." + +#: reference/import.rst:913 msgid "Replacing the standard import system" msgstr "Remplacement du système d'importation standard" -#: reference/import.rst:896 +#: reference/import.rst:915 msgid "" "The most reliable mechanism for replacing the entire import system is to " "delete the default contents of :data:`sys.meta_path`, replacing them " @@ -1783,7 +1813,7 @@ msgstr "" "supprimer le contenu par défaut de :data:`sys.meta_path` et de le remplacer " "complètement par un chercheur dans les méta-chemins sur mesure." -#: reference/import.rst:900 +#: reference/import.rst:919 msgid "" "If it is acceptable to only alter the behaviour of import statements without " "affecting other APIs that access the import system, then replacing the " @@ -1797,7 +1827,7 @@ msgstr "" "technique peut aussi être employée au niveau d'un module pour n'altérer le " "comportement des importations qu'à l'intérieur de ce module." -#: reference/import.rst:906 +#: reference/import.rst:925 msgid "" "To selectively prevent the import of some modules from a hook early on the " "meta path (rather than disabling the standard import system entirely), it is " @@ -1814,11 +1844,11 @@ msgstr "" "indique que la recherche dans le méta-chemin peut continuer alors que la " "levée de l'exception termine immédiatement la recherche." -#: reference/import.rst:916 +#: reference/import.rst:935 msgid "Package Relative Imports" msgstr "Importations relatives au paquet" -#: reference/import.rst:918 +#: reference/import.rst:937 msgid "" "Relative imports use leading dots. A single leading dot indicates a relative " "import, starting with the current package. Two or more leading dots indicate " @@ -1831,7 +1861,7 @@ msgstr "" "paquet actuel, un niveau par point avant le premier. Par exemple, en ayant " "le contenu suivant ::" -#: reference/import.rst:934 +#: reference/import.rst:953 msgid "" "In either ``subpackage1/moduleX.py`` or ``subpackage1/__init__.py``, the " "following are valid relative imports::" @@ -1839,7 +1869,7 @@ msgstr "" "Dans ``subpackage1/moduleX.py`` ou ``subpackage1/__init__.py``, les " "importations suivantes sont des importations relatives valides ::" -#: reference/import.rst:944 +#: reference/import.rst:963 msgid "" "Absolute imports may use either the ``import <>`` or ``from <> import <>`` " "syntax, but relative imports may only use the second form; the reason for " @@ -1849,7 +1879,7 @@ msgstr "" "soit ``from <> import <>``, mais les importations relatives doivent " "seulement utiliser la deuxième forme, la raison étant ::" -#: reference/import.rst:950 +#: reference/import.rst:969 msgid "" "should expose ``XXX.YYY.ZZZ`` as a usable expression, but .moduleY is not a " "valid expression." @@ -1857,11 +1887,11 @@ msgstr "" "devrait exposer ``XXX.YYY.ZZZ`` comme une expression utilisable, mais ``." "moduleY`` n’est pas une expression valide." -#: reference/import.rst:955 +#: reference/import.rst:976 msgid "Special considerations for __main__" msgstr "Cas particulier de ``__main__``" -#: reference/import.rst:957 +#: reference/import.rst:978 msgid "" "The :mod:`__main__` module is a special case relative to Python's import " "system. As noted :ref:`elsewhere `, the ``__main__`` module is " @@ -1879,11 +1909,11 @@ msgstr "" "natif. Effectivement, la manière dont est initialisé ``__main__`` dépend des " "drapeaux et options avec lesquels l'interpréteur est lancé." -#: reference/import.rst:968 +#: reference/import.rst:989 msgid "__main__.__spec__" msgstr "``__main__.__spec__``" -#: reference/import.rst:970 +#: reference/import.rst:991 msgid "" "Depending on how :mod:`__main__` is initialized, ``__main__.__spec__`` gets " "set appropriately or to ``None``." @@ -1891,7 +1921,7 @@ msgstr "" "En fonction de la manière dont :mod:`__main__` est initialisé, ``__main__." "__spec__`` est défini de manière conforme ou mis à ``None``." -#: reference/import.rst:973 +#: reference/import.rst:994 msgid "" "When Python is started with the :option:`-m` option, ``__spec__`` is set to " "the module spec of the corresponding module or package. ``__spec__`` is also " @@ -1904,7 +1934,7 @@ msgstr "" "que partie de l'exécution d'un répertoire, d'un fichier zip ou d'une entrée " "de :data:`sys.path`." -#: reference/import.rst:978 +#: reference/import.rst:999 msgid "" "In :ref:`the remaining cases ` ``__main__." "__spec__`` is set to ``None``, as the code used to populate the :mod:" @@ -1914,23 +1944,23 @@ msgstr "" "__spec__`` est mis à ``None``, car le code qui peuple :mod:`__main__` ne " "trouve pas de correspondance directe avec un module que l'on importe :" -#: reference/import.rst:982 +#: reference/import.rst:1003 msgid "interactive prompt" msgstr "invite de commande interactive" -#: reference/import.rst:983 +#: reference/import.rst:1004 msgid ":option:`-c` option" msgstr "l'option :option:`-c`" -#: reference/import.rst:984 +#: reference/import.rst:1005 msgid "running from stdin" msgstr "lecture depuis l'entrée standard" -#: reference/import.rst:985 +#: reference/import.rst:1006 msgid "running directly from a source or bytecode file" msgstr "lecture depuis un fichier de code source ou de *bytecode*" -#: reference/import.rst:987 +#: reference/import.rst:1008 msgid "" "Note that ``__main__.__spec__`` is always ``None`` in the last case, *even " "if* the file could technically be imported directly as a module instead. Use " @@ -1942,7 +1972,7 @@ msgstr "" "que module. Utilisez l'option :option:`-m` si vous souhaitez disposer de " "métadonnées valides du module dans :mod:`__main__`." -#: reference/import.rst:992 +#: reference/import.rst:1013 msgid "" "Note also that even when ``__main__`` corresponds with an importable module " "and ``__main__.__spec__`` is set accordingly, they're still considered " @@ -1957,15 +1987,15 @@ msgstr "" "module est utilisé pour peupler l'espace de nommage de ``__main__``, et pas " "durant une importation normale." -#: reference/import.rst:1000 +#: reference/import.rst:1021 msgid "Open issues" msgstr "Idées d'amélioration" -#: reference/import.rst:1002 +#: reference/import.rst:1023 msgid "XXX It would be really nice to have a diagram." msgstr "XXX Ce serait vraiment bien de disposer d'un diagramme." -#: reference/import.rst:1004 +#: reference/import.rst:1025 msgid "" "XXX * (import_machinery.rst) how about a section devoted just to the " "attributes of modules and packages, perhaps expanding upon or supplanting " @@ -1975,7 +2005,7 @@ msgstr "" "attributs des modules et paquets, développant ou remplaçant les entrées " "associées dans la page de référence du modèle de données ?" -#: reference/import.rst:1008 +#: reference/import.rst:1029 msgid "" "XXX runpy, pkgutil, et al in the library manual should all get \"See Also\" " "links at the top pointing to the new import system section." @@ -1984,7 +2014,7 @@ msgstr "" "comporter un lien \"Lisez aussi\" en début de page pointant vers la section " "du nouveau mécanisme d'import." -#: reference/import.rst:1011 +#: reference/import.rst:1032 msgid "" "XXX Add more explanation regarding the different ways in which ``__main__`` " "is initialized?" @@ -1992,7 +2022,7 @@ msgstr "" "XXX Ajouter des explications sur les différentes manières dont ``__main__`` " "est initialisé ?" -#: reference/import.rst:1014 +#: reference/import.rst:1035 msgid "" "XXX Add more info on ``__main__`` quirks/pitfalls (i.e. copy from :pep:" "`395`)." @@ -2000,11 +2030,11 @@ msgstr "" "XXX Ajouter des informations sur les pièges et bizarreries de ``__main__`` " "(c.-à-d. des extraits de la :pep:`395`)." -#: reference/import.rst:1019 +#: reference/import.rst:1040 msgid "References" msgstr "Références" -#: reference/import.rst:1021 +#: reference/import.rst:1042 msgid "" "The import machinery has evolved considerably since Python's early days. " "The original `specification for packages `_ originale est toujours disponible, bien que quelques détails " "ont changé depuis l'écriture de ce document." -#: reference/import.rst:1026 +#: reference/import.rst:1047 msgid "" "The original specification for :data:`sys.meta_path` was :pep:`302`, with " "subsequent extension in :pep:`420`." @@ -2024,7 +2054,7 @@ msgstr "" "La spécification originale de :data:`sys.meta_path` se trouve dans la :pep:" "`302`. La :pep:`420` contient des extensions significatives." -#: reference/import.rst:1029 +#: reference/import.rst:1050 msgid "" ":pep:`420` introduced :term:`namespace packages ` for " "Python 3.3. :pep:`420` also introduced the :meth:`find_loader` protocol as " @@ -2035,7 +2065,7 @@ msgstr "" "meth:`recherche du chargeur ` comme une alternative à :meth:" "`find_module`." -#: reference/import.rst:1033 +#: reference/import.rst:1054 msgid "" ":pep:`366` describes the addition of the ``__package__`` attribute for " "explicit relative imports in main modules." @@ -2043,7 +2073,7 @@ msgstr "" "La :pep:`366` décrit l'ajout de l'attribut ``__package__`` pour les " "importations relatives explicites dans les modules principaux." -#: reference/import.rst:1036 +#: reference/import.rst:1057 msgid "" ":pep:`328` introduced absolute and explicit relative imports and initially " "proposed ``__name__`` for semantics :pep:`366` would eventually specify for " @@ -2053,11 +2083,11 @@ msgstr "" "relatives explicites. Elle a aussi proposé ``__name__`` pour la sémantique " "que la :pep:`366` attribuait à ``__package__``." -#: reference/import.rst:1040 +#: reference/import.rst:1061 msgid ":pep:`338` defines executing modules as scripts." msgstr ":pep:`338` définit l'exécution de modules en tant que scripts." -#: reference/import.rst:1042 +#: reference/import.rst:1063 msgid "" ":pep:`451` adds the encapsulation of per-module import state in spec " "objects. It also off-loads most of the boilerplate responsibilities of " @@ -2071,15 +2101,15 @@ msgstr "" "permettent de supprimer plusieurs API dans le système d'importation et " "d'ajouter de nouvelles méthodes aux chercheurs et chargeurs." -#: reference/import.rst:1049 +#: reference/import.rst:1070 msgid "Footnotes" msgstr "Notes" -#: reference/import.rst:1050 +#: reference/import.rst:1071 msgid "See :class:`types.ModuleType`." msgstr "Voir :class:`types.ModuleType`." -#: reference/import.rst:1052 +#: reference/import.rst:1073 msgid "" "The importlib implementation avoids using the return value directly. " "Instead, it gets the module object by looking the module name up in :data:" @@ -2094,7 +2124,7 @@ msgstr "" "comportement spécifique à l'implémentation dont le résultat n'est pas " "garanti pour les autres implémentations de Python." -#: reference/import.rst:1059 +#: reference/import.rst:1080 msgid "" "In legacy code, it is possible to find instances of :class:`imp." "NullImporter` in the :data:`sys.path_importer_cache`. It is recommended " diff --git a/reference/lexical_analysis.po b/reference/lexical_analysis.po index 081c2e0b7..88f9422a3 100644 --- a/reference/lexical_analysis.po +++ b/reference/lexical_analysis.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-04-10 17:40+0200\n" "Last-Translator: Samuel Giffard \n" "Language-Team: FRENCH \n" @@ -573,11 +573,32 @@ msgstr "" "peuvent pas être utilisés en tant qu'identifiants normaux. Ils doivent être " "écrits exactement comme ci-dessous :" -#: reference/lexical_analysis.rst:360 +#: reference/lexical_analysis.rst:358 +#, fuzzy +msgid "Soft Keywords" +msgstr "Mots-clés" + +#: reference/lexical_analysis.rst:364 +msgid "" +"Some identifiers are only reserved under specific contexts. These are known " +"as *soft keywords*. The identifiers ``match``, ``case`` and ``_`` can " +"syntactically act as keywords in contexts related to the pattern matching " +"statement, but this distinction is done at the parser level, not when " +"tokenizing." +msgstr "" + +#: reference/lexical_analysis.rst:370 +msgid "" +"As soft keywords, their use with pattern matching is possible while still " +"preserving compatibility with existing code that uses ``match``, ``case`` " +"and ``_`` as identifier names." +msgstr "" + +#: reference/lexical_analysis.rst:381 msgid "Reserved classes of identifiers" msgstr "Classes réservées pour les identifiants" -#: reference/lexical_analysis.rst:362 +#: reference/lexical_analysis.rst:383 msgid "" "Certain classes of identifiers (besides keywords) have special meanings. " "These classes are identified by the patterns of leading and trailing " @@ -587,11 +608,11 @@ msgstr "" "particulière. Ces classes se reconnaissent par des caractères de " "soulignement en tête et en queue d'identifiant :" -#: reference/lexical_analysis.rst:376 +#: reference/lexical_analysis.rst:397 msgid "``_*``" msgstr "``_*``" -#: reference/lexical_analysis.rst:367 +#: reference/lexical_analysis.rst:388 msgid "" "Not imported by ``from module import *``. The special identifier ``_`` is " "used in the interactive interpreter to store the result of the last " @@ -605,7 +626,7 @@ msgstr "" "vous n'êtes pas en mode interactif, ``_`` n'a pas de signification " "particulière et n'est pas défini. Voir la section :ref:`import`." -#: reference/lexical_analysis.rst:374 +#: reference/lexical_analysis.rst:395 msgid "" "The name ``_`` is often used in conjunction with internationalization; refer " "to the documentation for the :mod:`gettext` module for more information on " @@ -615,11 +636,11 @@ msgstr "" "reportez-vous à la documentation du module :mod:`gettext` pour plus " "d'informations sur cette convention." -#: reference/lexical_analysis.rst:384 +#: reference/lexical_analysis.rst:405 msgid "``__*__``" msgstr "``__*__``" -#: reference/lexical_analysis.rst:379 +#: reference/lexical_analysis.rst:400 msgid "" "System-defined names, informally known as \"dunder\" names. These names are " "defined by the interpreter and its implementation (including the standard " @@ -638,11 +659,11 @@ msgstr "" "qu'indique explicitement la documentation, est sujette à des mauvaises " "surprises sans avertissement." -#: reference/lexical_analysis.rst:391 +#: reference/lexical_analysis.rst:412 msgid "``__*``" msgstr "``__*``" -#: reference/lexical_analysis.rst:387 +#: reference/lexical_analysis.rst:408 msgid "" "Class-private names. Names in this category, when used within the context " "of a class definition, are re-written to use a mangled form to help avoid " @@ -655,27 +676,27 @@ msgstr "" "« privés » des classes de base et les classes dérivées. Voir la section :ref:" "`atom-identifiers`." -#: reference/lexical_analysis.rst:396 +#: reference/lexical_analysis.rst:417 msgid "Literals" msgstr "Littéraux" -#: reference/lexical_analysis.rst:400 +#: reference/lexical_analysis.rst:421 msgid "Literals are notations for constant values of some built-in types." msgstr "" "Les littéraux sont des notations pour indiquer des valeurs constantes de " "certains types natifs." -#: reference/lexical_analysis.rst:411 +#: reference/lexical_analysis.rst:432 msgid "String and Bytes literals" msgstr "Littéraux de chaînes de caractères et de suites d'octets" -#: reference/lexical_analysis.rst:413 +#: reference/lexical_analysis.rst:434 msgid "String literals are described by the following lexical definitions:" msgstr "" "Les chaînes de caractères littérales sont définies par les définitions " "lexicales suivantes :" -#: reference/lexical_analysis.rst:438 +#: reference/lexical_analysis.rst:459 msgid "" "One syntactic restriction not indicated by these productions is that " "whitespace is not allowed between the :token:`stringprefix` or :token:" @@ -689,7 +710,7 @@ msgstr "" "d'encodage ; il vaut UTF-8 si aucune déclaration d'encodage n'est donnée " "dans le fichier source ; voir la section :ref:`encodings`." -#: reference/lexical_analysis.rst:448 +#: reference/lexical_analysis.rst:469 msgid "" "In plain English: Both types of literals can be enclosed in matching single " "quotes (``'``) or double quotes (``\"``). They can also be enclosed in " @@ -707,7 +728,7 @@ msgstr "" "tels que le retour à la ligne, la barre oblique inversée elle-même ou le " "guillemet utilisé pour délimiter la chaîne." -#: reference/lexical_analysis.rst:459 +#: reference/lexical_analysis.rst:480 msgid "" "Bytes literals are always prefixed with ``'b'`` or ``'B'``; they produce an " "instance of the :class:`bytes` type instead of the :class:`str` type. They " @@ -720,7 +741,7 @@ msgstr "" "dont la valeur est supérieure ou égale à 128 doivent être exprimés à l'aide " "d'échappements." -#: reference/lexical_analysis.rst:468 +#: reference/lexical_analysis.rst:489 msgid "" "Both string and bytes literals may optionally be prefixed with a letter " "``'r'`` or ``'R'``; such strings are called :dfn:`raw strings` and treat " @@ -737,7 +758,7 @@ msgstr "" "Unicode de Python 2.x se comportent différemment, la syntaxe ``'ur'`` n'est " "pas reconnue en Python 3.x." -#: reference/lexical_analysis.rst:475 +#: reference/lexical_analysis.rst:496 msgid "" "The ``'rb'`` prefix of raw bytes literals has been added as a synonym of " "``'br'``." @@ -745,7 +766,7 @@ msgstr "" "le préfixe ``'rb'`` a été ajouté comme synonyme de ``'br'`` pour les " "littéraux de suites d'octets." -#: reference/lexical_analysis.rst:479 +#: reference/lexical_analysis.rst:500 msgid "" "Support for the unicode legacy literal (``u'value'``) was reintroduced to " "simplify the maintenance of dual Python 2.x and 3.x codebases. See :pep:" @@ -755,7 +776,7 @@ msgstr "" "été réintroduite afin de simplifier la maintenance de code compatible Python " "2.x et 3.x. Voir la :pep:`414` pour davantage d'informations." -#: reference/lexical_analysis.rst:488 +#: reference/lexical_analysis.rst:509 msgid "" "A string literal with ``'f'`` or ``'F'`` in its prefix is a :dfn:`formatted " "string literal`; see :ref:`f-strings`. The ``'f'`` may be combined with " @@ -768,7 +789,7 @@ msgstr "" "donc les chaînes de caractères formatées sont possibles mais les littéraux " "de suites d'octets ne peuvent pas l'être." -#: reference/lexical_analysis.rst:493 +#: reference/lexical_analysis.rst:514 msgid "" "In triple-quoted literals, unescaped newlines and quotes are allowed (and " "are retained), except that three unescaped quotes in a row terminate the " @@ -781,7 +802,7 @@ msgstr "" "guillemet le caractère utilisé pour commencer le littéral, c'est-à-dire " "``'`` ou ``\"``)." -#: reference/lexical_analysis.rst:512 +#: reference/lexical_analysis.rst:533 msgid "" "Unless an ``'r'`` or ``'R'`` prefix is present, escape sequences in string " "and bytes literals are interpreted according to rules similar to those used " @@ -792,188 +813,188 @@ msgstr "" "interprétées comme elles le seraient par le C Standard. Les séquences " "d'échappement reconnues sont :" -#: reference/lexical_analysis.rst:517 reference/lexical_analysis.rst:550 +#: reference/lexical_analysis.rst:538 reference/lexical_analysis.rst:571 msgid "Escape Sequence" msgstr "Séquence d'échappement" -#: reference/lexical_analysis.rst:517 reference/lexical_analysis.rst:550 +#: reference/lexical_analysis.rst:538 reference/lexical_analysis.rst:571 msgid "Meaning" msgstr "Signification" -#: reference/lexical_analysis.rst:517 reference/lexical_analysis.rst:550 +#: reference/lexical_analysis.rst:538 reference/lexical_analysis.rst:571 msgid "Notes" msgstr "Notes" -#: reference/lexical_analysis.rst:519 +#: reference/lexical_analysis.rst:540 msgid "``\\newline``" msgstr "``\\newline``" -#: reference/lexical_analysis.rst:519 +#: reference/lexical_analysis.rst:540 msgid "Backslash and newline ignored" msgstr "barre oblique inversée et retour à la ligne ignorés" -#: reference/lexical_analysis.rst:521 +#: reference/lexical_analysis.rst:542 msgid "``\\\\``" msgstr "``\\\\``" -#: reference/lexical_analysis.rst:521 +#: reference/lexical_analysis.rst:542 msgid "Backslash (``\\``)" msgstr "barre oblique inversée (``\\``)" -#: reference/lexical_analysis.rst:523 +#: reference/lexical_analysis.rst:544 msgid "``\\'``" msgstr "``\\'``" -#: reference/lexical_analysis.rst:523 +#: reference/lexical_analysis.rst:544 msgid "Single quote (``'``)" msgstr "guillemet simple (``'``)" -#: reference/lexical_analysis.rst:525 +#: reference/lexical_analysis.rst:546 msgid "``\\\"``" msgstr "``\\\"``" -#: reference/lexical_analysis.rst:525 +#: reference/lexical_analysis.rst:546 msgid "Double quote (``\"``)" msgstr "guillemet double (``\"``)" -#: reference/lexical_analysis.rst:527 +#: reference/lexical_analysis.rst:548 msgid "``\\a``" msgstr "``\\a``" -#: reference/lexical_analysis.rst:527 +#: reference/lexical_analysis.rst:548 msgid "ASCII Bell (BEL)" msgstr "cloche ASCII (BEL)" -#: reference/lexical_analysis.rst:529 +#: reference/lexical_analysis.rst:550 msgid "``\\b``" msgstr "``\\b``" -#: reference/lexical_analysis.rst:529 +#: reference/lexical_analysis.rst:550 msgid "ASCII Backspace (BS)" msgstr "retour arrière ASCII (BS)" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:552 msgid "``\\f``" msgstr "``\\f``" -#: reference/lexical_analysis.rst:531 +#: reference/lexical_analysis.rst:552 msgid "ASCII Formfeed (FF)" msgstr "saut de page ASCII (FF)" -#: reference/lexical_analysis.rst:533 +#: reference/lexical_analysis.rst:554 msgid "``\\n``" msgstr "``\\n``" -#: reference/lexical_analysis.rst:533 +#: reference/lexical_analysis.rst:554 msgid "ASCII Linefeed (LF)" msgstr "saut de ligne ASCII (LF)" -#: reference/lexical_analysis.rst:535 +#: reference/lexical_analysis.rst:556 msgid "``\\r``" msgstr "``\\r``" -#: reference/lexical_analysis.rst:535 +#: reference/lexical_analysis.rst:556 msgid "ASCII Carriage Return (CR)" msgstr "retour à la ligne ASCII (CR)" -#: reference/lexical_analysis.rst:537 +#: reference/lexical_analysis.rst:558 msgid "``\\t``" msgstr "``\\t``" -#: reference/lexical_analysis.rst:537 +#: reference/lexical_analysis.rst:558 msgid "ASCII Horizontal Tab (TAB)" msgstr "tabulation horizontale ASCII (TAB)" -#: reference/lexical_analysis.rst:539 +#: reference/lexical_analysis.rst:560 msgid "``\\v``" msgstr "``\\v``" -#: reference/lexical_analysis.rst:539 +#: reference/lexical_analysis.rst:560 msgid "ASCII Vertical Tab (VT)" msgstr "tabulation verticale ASCII (VT)" -#: reference/lexical_analysis.rst:541 +#: reference/lexical_analysis.rst:562 msgid "``\\ooo``" msgstr "``\\ooo``" -#: reference/lexical_analysis.rst:541 +#: reference/lexical_analysis.rst:562 msgid "Character with octal value *ooo*" msgstr "caractère dont le code est *ooo* en octal" -#: reference/lexical_analysis.rst:541 +#: reference/lexical_analysis.rst:562 msgid "(1,3)" msgstr "(1,3)" -#: reference/lexical_analysis.rst:544 +#: reference/lexical_analysis.rst:565 msgid "``\\xhh``" msgstr "``\\xhh``" -#: reference/lexical_analysis.rst:544 +#: reference/lexical_analysis.rst:565 msgid "Character with hex value *hh*" msgstr "caractère dont le code est *ooo* en hexadécimal" -#: reference/lexical_analysis.rst:544 +#: reference/lexical_analysis.rst:565 msgid "(2,3)" msgstr "(2,3)" -#: reference/lexical_analysis.rst:547 +#: reference/lexical_analysis.rst:568 msgid "Escape sequences only recognized in string literals are:" msgstr "" "Les séquences d'échappement reconnues seulement dans les chaînes littérales " "sont :" -#: reference/lexical_analysis.rst:552 +#: reference/lexical_analysis.rst:573 msgid "``\\N{name}``" msgstr "``\\N{name}``" -#: reference/lexical_analysis.rst:552 +#: reference/lexical_analysis.rst:573 msgid "Character named *name* in the Unicode database" msgstr "caractère dont le nom est *name* dans la base de données Unicode" -#: reference/lexical_analysis.rst:552 +#: reference/lexical_analysis.rst:573 msgid "\\(4)" msgstr "\\(4)" -#: reference/lexical_analysis.rst:555 +#: reference/lexical_analysis.rst:576 msgid "``\\uxxxx``" msgstr "``\\uxxxx``" -#: reference/lexical_analysis.rst:555 +#: reference/lexical_analysis.rst:576 msgid "Character with 16-bit hex value *xxxx*" msgstr "caractère dont le code est *xxxx* en hexadécimal" -#: reference/lexical_analysis.rst:555 +#: reference/lexical_analysis.rst:576 msgid "\\(5)" msgstr "\\(5)" -#: reference/lexical_analysis.rst:558 +#: reference/lexical_analysis.rst:579 msgid "``\\Uxxxxxxxx``" msgstr "``\\Uxxxxxxxx``" -#: reference/lexical_analysis.rst:558 +#: reference/lexical_analysis.rst:579 msgid "Character with 32-bit hex value *xxxxxxxx*" msgstr "caractère dont le code est *xxxxxxxx* en hexadécimal sur 32 bits" -#: reference/lexical_analysis.rst:558 +#: reference/lexical_analysis.rst:579 msgid "\\(6)" msgstr "\\(6)" -#: reference/lexical_analysis.rst:562 +#: reference/lexical_analysis.rst:583 msgid "Notes:" msgstr "Notes :" -#: reference/lexical_analysis.rst:565 +#: reference/lexical_analysis.rst:586 msgid "As in Standard C, up to three octal digits are accepted." msgstr "" "Comme dans le C Standard, jusqu'à trois chiffres en base huit sont acceptés." -#: reference/lexical_analysis.rst:568 +#: reference/lexical_analysis.rst:589 msgid "Unlike in Standard C, exactly two hex digits are required." msgstr "" "Contrairement au C Standard, il est obligatoire de fournir deux chiffres " "hexadécimaux." -#: reference/lexical_analysis.rst:571 +#: reference/lexical_analysis.rst:592 msgid "" "In a bytes literal, hexadecimal and octal escapes denote the byte with the " "given value. In a string literal, these escapes denote a Unicode character " @@ -983,15 +1004,15 @@ msgstr "" "un octet dont la valeur est donnée. Dans une chaîne littérale, un " "échappement est un caractère Unicode dont le code est donné." -#: reference/lexical_analysis.rst:576 +#: reference/lexical_analysis.rst:597 msgid "Support for name aliases [#]_ has been added." msgstr "Ajout du support pour les alias de noms [#]_." -#: reference/lexical_analysis.rst:580 +#: reference/lexical_analysis.rst:601 msgid "Exactly four hex digits are required." msgstr "Exactement quatre chiffres hexadécimaux sont requis." -#: reference/lexical_analysis.rst:583 +#: reference/lexical_analysis.rst:604 msgid "" "Any Unicode character can be encoded this way. Exactly eight hex digits are " "required." @@ -999,7 +1020,7 @@ msgstr "" "N'importe quel caractère Unicode peut être encodé de cette façon. Exactement " "huit chiffres hexadécimaux sont requis." -#: reference/lexical_analysis.rst:589 +#: reference/lexical_analysis.rst:610 msgid "" "Unlike Standard C, all unrecognized escape sequences are left in the string " "unchanged, i.e., *the backslash is left in the result*. (This behavior is " @@ -1017,7 +1038,7 @@ msgstr "" "dans les littéraux de chaînes de caractères ne sont pas reconnues pour les " "littéraux de suites d'octets." -#: reference/lexical_analysis.rst:596 +#: reference/lexical_analysis.rst:617 msgid "" "Unrecognized escape sequences produce a :exc:`DeprecationWarning`. In a " "future Python version they will be a :exc:`SyntaxWarning` and eventually a :" @@ -1027,7 +1048,7 @@ msgstr "" "`DeprecationWarning`. Dans les versions suivantes de Python, elles génèrent " "une :exc:`SyntaxWarning` et éventuellement une :exc:`SyntaxError`." -#: reference/lexical_analysis.rst:601 +#: reference/lexical_analysis.rst:622 msgid "" "Even in a raw literal, quotes can be escaped with a backslash, but the " "backslash remains in the result; for example, ``r\"\\\"\"`` is a valid " @@ -1052,11 +1073,11 @@ msgstr "" "comme deux caractères faisant partie du littéral et *non* comme une " "continuation de ligne." -#: reference/lexical_analysis.rst:614 +#: reference/lexical_analysis.rst:635 msgid "String literal concatenation" msgstr "Concaténation de chaînes de caractères" -#: reference/lexical_analysis.rst:616 +#: reference/lexical_analysis.rst:637 msgid "" "Multiple adjacent string or bytes literals (delimited by whitespace), " "possibly using different quoting conventions, are allowed, and their meaning " @@ -1074,7 +1095,7 @@ msgstr "" "caractères sur plusieurs lignes ou même pour ajouter des commentaires à des " "portions de chaînes de caractères. Par exemple ::" -#: reference/lexical_analysis.rst:627 +#: reference/lexical_analysis.rst:648 msgid "" "Note that this feature is defined at the syntactical level, but implemented " "at compile time. The '+' operator must be used to concatenate string " @@ -1092,11 +1113,11 @@ msgstr "" "triples guillemets). Enfin, les chaînes de caractères formatées peuvent être " "concaténées avec des chaînes de caractères ordinaires." -#: reference/lexical_analysis.rst:648 +#: reference/lexical_analysis.rst:669 msgid "Formatted string literals" msgstr "Chaînes de caractères formatées littérales" -#: reference/lexical_analysis.rst:652 +#: reference/lexical_analysis.rst:673 msgid "" "A :dfn:`formatted string literal` or :dfn:`f-string` is a string literal " "that is prefixed with ``'f'`` or ``'F'``. These strings may contain " @@ -1111,7 +1132,7 @@ msgstr "" "littéraux de chaines ont des valeurs constantes, les chaines formatées sont " "de vraies expressions évaluées à l'exécution." -#: reference/lexical_analysis.rst:658 +#: reference/lexical_analysis.rst:679 msgid "" "Escape sequences are decoded like in ordinary string literals (except when a " "literal is also marked as a raw string). After decoding, the grammar for " @@ -1122,7 +1143,7 @@ msgstr "" "marquée comme une chaîne brute). Après décodage, la grammaire s'appliquant " "au contenu de la chaîne de caractères est :" -#: reference/lexical_analysis.rst:672 +#: reference/lexical_analysis.rst:693 msgid "" "The parts of the string outside curly braces are treated literally, except " "that any doubled curly braces ``'{{'`` or ``'}}'`` are replaced with the " @@ -1145,7 +1166,7 @@ msgstr "" "de format peut aussi être rajoutée, introduite par le caractère deux-points " "``':'``. Le champ à remplacer se termine par une accolade fermante ``'}'``." -#: reference/lexical_analysis.rst:682 +#: reference/lexical_analysis.rst:703 msgid "" "Expressions in formatted string literals are treated like regular Python " "expressions surrounded by parentheses, with a few exceptions. An empty " @@ -1165,7 +1186,7 @@ msgstr "" "commentaire. Chaque expression est évaluée dans le contexte où la chaîne de " "caractères formatée apparaît, de gauche à droite." -#: reference/lexical_analysis.rst:691 +#: reference/lexical_analysis.rst:712 msgid "" "Prior to Python 3.7, an :keyword:`await` expression and comprehensions " "containing an :keyword:`async for` clause were illegal in the expressions in " @@ -1176,7 +1197,7 @@ msgstr "" "des chaînes de caractères formatées littérales à cause d’un problème dans " "l’implémentation." -#: reference/lexical_analysis.rst:696 +#: reference/lexical_analysis.rst:717 msgid "" "When the equal sign ``'='`` is provided, the output will have the expression " "text, the ``'='`` and the evaluated value. Spaces after the opening brace " @@ -1194,11 +1215,11 @@ msgstr "" "indiqué, c'est :func:`str` de l'expression qui est utilisée à moins qu'une " "conversion ``!r`` ne soit déclarée." -#: reference/lexical_analysis.rst:704 +#: reference/lexical_analysis.rst:725 msgid "The equal sign ``'='``." msgstr "le signe égal ``'='``." -#: reference/lexical_analysis.rst:707 +#: reference/lexical_analysis.rst:728 msgid "" "If a conversion is specified, the result of evaluating the expression is " "converted before formatting. Conversion ``'!s'`` calls :func:`str` on the " @@ -1209,7 +1230,7 @@ msgstr "" "`str` sur le résultat, ``'!r'`` appelle :func:`repr` et ``'!a'`` appelle :" "func:`ascii`." -#: reference/lexical_analysis.rst:711 +#: reference/lexical_analysis.rst:732 msgid "" "The result is then formatted using the :func:`format` protocol. The format " "specifier is passed to the :meth:`__format__` method of the expression or " @@ -1223,7 +1244,7 @@ msgstr "" "lorsque la spécification de format est omise. Le résultat formaté est alors " "inclus dans la valeur finale de la chaîne complète." -#: reference/lexical_analysis.rst:717 +#: reference/lexical_analysis.rst:738 msgid "" "Top-level format specifiers may include nested replacement fields. These " "nested fields may include their own conversion fields and :ref:`format " @@ -1238,7 +1259,7 @@ msgstr "" "spécification de format ` est le même que celui utilisé par la " "méthode :meth:`str.format`." -#: reference/lexical_analysis.rst:723 +#: reference/lexical_analysis.rst:744 msgid "" "Formatted string literals may be concatenated, but replacement fields cannot " "be split across literals." @@ -1246,11 +1267,11 @@ msgstr "" "Les chaînes formatées littérales peuvent être concaténées mais les champs à " "remplacer ne peuvent pas être divisés entre les littéraux." -#: reference/lexical_analysis.rst:726 +#: reference/lexical_analysis.rst:747 msgid "Some examples of formatted string literals::" msgstr "Quelques exemples de chaines formatées littérales ::" -#: reference/lexical_analysis.rst:758 +#: reference/lexical_analysis.rst:779 msgid "" "A consequence of sharing the same syntax as regular string literals is that " "characters in the replacement fields must not conflict with the quoting used " @@ -1261,14 +1282,14 @@ msgstr "" "entrer en conflit avec le guillemet utilisé pour encadrer la chaine formatée " "littérale ::" -#: reference/lexical_analysis.rst:765 +#: reference/lexical_analysis.rst:786 msgid "" "Backslashes are not allowed in format expressions and will raise an error::" msgstr "" "La barre oblique inversée (ou antislash) n'est pas autorisée dans les " "expressions des champs à remplacer et son utilisation génère une erreur ::" -#: reference/lexical_analysis.rst:770 +#: reference/lexical_analysis.rst:791 msgid "" "To include a value in which a backslash escape is required, create a " "temporary variable." @@ -1276,7 +1297,7 @@ msgstr "" "Pour inclure une valeur où l'échappement par barre oblique inversée est " "nécessaire, vous devez créer une variable temporaire." -#: reference/lexical_analysis.rst:777 +#: reference/lexical_analysis.rst:798 msgid "" "Formatted string literals cannot be used as docstrings, even if they do not " "include expressions." @@ -1284,7 +1305,7 @@ msgstr "" "Une chaine formatée littérale ne peut pas être utilisée en tant que " "*docstring*, même si elle ne comporte pas d'expression." -#: reference/lexical_analysis.rst:788 +#: reference/lexical_analysis.rst:809 msgid "" "See also :pep:`498` for the proposal that added formatted string literals, " "and :meth:`str.format`, which uses a related format string mechanism." @@ -1293,11 +1314,11 @@ msgstr "" "littérales et :meth:`str.format` qui utilise un mécanisme similaire pour " "formater les chaînes de caractères." -#: reference/lexical_analysis.rst:795 +#: reference/lexical_analysis.rst:816 msgid "Numeric literals" msgstr "Littéraux numériques" -#: reference/lexical_analysis.rst:801 +#: reference/lexical_analysis.rst:822 msgid "" "There are three types of numeric literals: integers, floating point numbers, " "and imaginary numbers. There are no complex literals (complex numbers can " @@ -1308,7 +1329,7 @@ msgstr "" "complexes (les nombres complexes peuvent être construits en ajoutant un " "nombre réel et un nombre imaginaire)." -#: reference/lexical_analysis.rst:805 +#: reference/lexical_analysis.rst:826 msgid "" "Note that numeric literals do not include a sign; a phrase like ``-1`` is " "actually an expression composed of the unary operator '``-``' and the " @@ -1318,16 +1339,16 @@ msgstr "" "telle que ``-1`` est en fait une expression composée de l'opérateur unitaire " "``-`` et du littéral ``1``." -#: reference/lexical_analysis.rst:819 +#: reference/lexical_analysis.rst:840 msgid "Integer literals" msgstr "Entiers littéraux" -#: reference/lexical_analysis.rst:821 +#: reference/lexical_analysis.rst:842 msgid "Integer literals are described by the following lexical definitions:" msgstr "" "Les entiers littéraux sont décrits par les définitions lexicales suivantes :" -#: reference/lexical_analysis.rst:835 +#: reference/lexical_analysis.rst:856 msgid "" "There is no limit for the length of integer literals apart from what can be " "stored in available memory." @@ -1335,7 +1356,7 @@ msgstr "" "Il n'y a pas de limite pour la longueur des entiers littéraux, sauf celle " "relative à la capacité mémoire." -#: reference/lexical_analysis.rst:838 +#: reference/lexical_analysis.rst:859 msgid "" "Underscores are ignored for determining the numeric value of the literal. " "They can be used to group digits for enhanced readability. One underscore " @@ -1346,7 +1367,7 @@ msgstr "" "lecture. Un souligné peut être placé entre des chiffres ou après la " "spécification de la base telle que ``0x``." -#: reference/lexical_analysis.rst:842 +#: reference/lexical_analysis.rst:863 msgid "" "Note that leading zeros in a non-zero decimal number are not allowed. This " "is for disambiguation with C-style octal literals, which Python used before " @@ -1357,26 +1378,26 @@ msgstr "" "les littéraux en base octale selon le style C que Python utilisait avant la " "version 3.0." -#: reference/lexical_analysis.rst:846 +#: reference/lexical_analysis.rst:867 msgid "Some examples of integer literals::" msgstr "Quelques exemples d'entiers littéraux ::" -#: reference/lexical_analysis.rst:852 reference/lexical_analysis.rst:884 +#: reference/lexical_analysis.rst:873 reference/lexical_analysis.rst:905 msgid "Underscores are now allowed for grouping purposes in literals." msgstr "Les tirets bas ne sont pas autorisés pour grouper les littéraux." -#: reference/lexical_analysis.rst:863 +#: reference/lexical_analysis.rst:884 msgid "Floating point literals" msgstr "Nombres à virgule flottante littéraux" -#: reference/lexical_analysis.rst:865 +#: reference/lexical_analysis.rst:886 msgid "" "Floating point literals are described by the following lexical definitions:" msgstr "" "Les nombres à virgule flottante littéraux sont décrits par les définitions " "lexicales suivantes :" -#: reference/lexical_analysis.rst:875 +#: reference/lexical_analysis.rst:896 msgid "" "Note that the integer and exponent parts are always interpreted using radix " "10. For example, ``077e010`` is legal, and denotes the same number as " @@ -1390,21 +1411,21 @@ msgstr "" "virgule flottante dépend de l'implémentation. Comme pour les entiers " "littéraux, les soulignés permettent de grouper des chiffres." -#: reference/lexical_analysis.rst:880 +#: reference/lexical_analysis.rst:901 msgid "Some examples of floating point literals::" msgstr "Quelques exemples de nombres à virgule flottante littéraux ::" -#: reference/lexical_analysis.rst:893 +#: reference/lexical_analysis.rst:914 msgid "Imaginary literals" msgstr "Imaginaires littéraux" -#: reference/lexical_analysis.rst:895 +#: reference/lexical_analysis.rst:916 msgid "Imaginary literals are described by the following lexical definitions:" msgstr "" "Les nombres imaginaires sont décrits par les définitions lexicales " "suivantes :" -#: reference/lexical_analysis.rst:900 +#: reference/lexical_analysis.rst:921 msgid "" "An imaginary literal yields a complex number with a real part of 0.0. " "Complex numbers are represented as a pair of floating point numbers and have " @@ -1419,23 +1440,23 @@ msgstr "" "nulle, ajoutez un nombre à virgule flottante à votre littéral imaginaire. " "Par exemple ``(3+4j)``. Voici d'autres exemples de littéraux imaginaires ::" -#: reference/lexical_analysis.rst:912 +#: reference/lexical_analysis.rst:933 msgid "Operators" msgstr "Opérateurs" -#: reference/lexical_analysis.rst:916 +#: reference/lexical_analysis.rst:937 msgid "The following tokens are operators:" msgstr "Les lexèmes suivants sont des opérateurs :" -#: reference/lexical_analysis.rst:929 +#: reference/lexical_analysis.rst:950 msgid "Delimiters" msgstr "Délimiteurs" -#: reference/lexical_analysis.rst:933 +#: reference/lexical_analysis.rst:954 msgid "The following tokens serve as delimiters in the grammar:" msgstr "Les lexèmes suivants servent de délimiteurs dans la grammaire :" -#: reference/lexical_analysis.rst:942 +#: reference/lexical_analysis.rst:963 msgid "" "The period can also occur in floating-point and imaginary literals. A " "sequence of three periods has a special meaning as an ellipsis literal. The " @@ -1448,7 +1469,7 @@ msgstr "" "la liste, les opérateurs d'assignation augmentés, servent de délimiteurs " "pour l'analyseur lexical mais sont aussi des opérateurs." -#: reference/lexical_analysis.rst:947 +#: reference/lexical_analysis.rst:968 msgid "" "The following printing ASCII characters have special meaning as part of " "other tokens or are otherwise significant to the lexical analyzer:" @@ -1457,7 +1478,7 @@ msgstr "" "partie d'autres lexèmes ou ont une signification particulière pour " "l'analyseur lexical :" -#: reference/lexical_analysis.rst:954 +#: reference/lexical_analysis.rst:975 msgid "" "The following printing ASCII characters are not used in Python. Their " "occurrence outside string literals and comments is an unconditional error:" @@ -1466,10 +1487,10 @@ msgstr "" "apparaissent en dehors de chaines littérales ou de commentaires, ils " "produisent une erreur :" -#: reference/lexical_analysis.rst:963 +#: reference/lexical_analysis.rst:984 msgid "Footnotes" msgstr "Notes" -#: reference/lexical_analysis.rst:964 +#: reference/lexical_analysis.rst:985 msgid "https://www.unicode.org/Public/11.0.0/ucd/NameAliases.txt" msgstr "https://www.unicode.org/Public/11.0.0/ucd/NameAliases.txt" diff --git a/reference/simple_stmts.po b/reference/simple_stmts.po index 90b56cc3b..b201e4289 100644 --- a/reference/simple_stmts.po +++ b/reference/simple_stmts.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 02:24+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -1396,11 +1396,12 @@ msgstr "" "utilisés, dans le même bloc de code, avant l'instruction :keyword:`!global`." #: reference/simple_stmts.rst:955 +#, fuzzy msgid "" "Names listed in a :keyword:`global` statement must not be defined as formal " -"parameters or in a :keyword:`for` loop control target, :keyword:`class` " -"definition, function definition, :keyword:`import` statement, or variable " -"annotation." +"parameters, or as targets in :keyword:`with` statements or :keyword:`except` " +"clauses, or in a :keyword:`for` target list, :keyword:`class` definition, " +"function definition, :keyword:`import` statement, or variable annotation." msgstr "" "Les noms listés dans l'instruction :keyword:`global` ne doivent pas être " "définis en tant que paramètre formel, cible d'une boucle :keyword:`for`, " diff --git a/sphinx.po b/sphinx.po index 27927596c..e4594b1ae 100644 --- a/sphinx.po +++ b/sphinx.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-12-17 16:05+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-07-09 20:53+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -43,8 +43,32 @@ msgid "Deprecated since version {deprecated}, removed in version {removed}" msgstr "" "Obsolète depuis la version {deprecated}, supprimé dans la version {removed}" +#: tools/templates/dummy.html:13 +#, fuzzy +msgid "in development" +msgstr "Python 3.10 (en développement)" + +#: tools/templates/dummy.html:14 +#, fuzzy +msgid "pre-release" +msgstr "Python 3.9 (pré-lancement)" + +#: tools/templates/dummy.html:15 +msgid "stable" +msgstr "" + +#: tools/templates/dummy.html:16 +#, fuzzy +msgid "security-fixes" +msgstr "Python 3.6 (correctifs de sécurité)" + +#: tools/templates/dummy.html:17 +msgid "EOL" +msgstr "" + #: tools/templates/indexcontent.html:8 -msgid "Welcome! This is the documentation for Python %(release)s." +#, fuzzy +msgid "Welcome! This is the official documentation for Python %(release)s." msgstr "Bienvenue sur la documentation de Python %(release)s." #: tools/templates/indexcontent.html:10 @@ -222,54 +246,39 @@ msgid "Docs by version" msgstr "Docs par version" #: tools/templates/indexsidebar.html:5 -msgid "Python 3.10 (in development)" -msgstr "Python 3.10 (en développement)" +msgid "Stable" +msgstr "" #: tools/templates/indexsidebar.html:6 -msgid "Python 3.9 (pre-release)" -msgstr "Python 3.9 (pré-lancement)" +#, fuzzy +msgid "In development" +msgstr "Python 3.10 (en développement)" #: tools/templates/indexsidebar.html:7 -msgid "Python 3.8 (stable)" -msgstr "Python 3.8 (stable)" - -#: tools/templates/indexsidebar.html:8 -msgid "Python 3.7 (stable)" -msgstr "Python 3.7 (stable)" - -#: tools/templates/indexsidebar.html:9 -msgid "Python 3.6 (security-fixes)" -msgstr "Python 3.6 (correctifs de sécurité)" - -#: tools/templates/indexsidebar.html:10 -msgid "Python 2.7 (EOL)" -msgstr "Python 2.7 (en fin de vie)" - -#: tools/templates/indexsidebar.html:11 msgid "All versions" msgstr "Toutes les versions" -#: tools/templates/indexsidebar.html:14 +#: tools/templates/indexsidebar.html:10 msgid "Other resources" msgstr "Autres ressources" -#: tools/templates/indexsidebar.html:17 +#: tools/templates/indexsidebar.html:13 msgid "PEP Index" msgstr "Index des PEP" -#: tools/templates/indexsidebar.html:18 +#: tools/templates/indexsidebar.html:14 msgid "Beginner's Guide" msgstr "Guide du débutant" -#: tools/templates/indexsidebar.html:19 +#: tools/templates/indexsidebar.html:15 msgid "Book List" msgstr "Liste de livres" -#: tools/templates/indexsidebar.html:20 +#: tools/templates/indexsidebar.html:16 msgid "Audio/Visual Talks" msgstr "Documents multimédia" -#: tools/templates/indexsidebar.html:21 +#: tools/templates/indexsidebar.html:17 msgid "Python Developer’s Guide" msgstr "Guide du développeur Python" @@ -286,9 +295,17 @@ msgstr "" msgid " Python documentation for the current stable release" msgstr "Bienvenue sur la documentation de la version stable actuelle de Python" -#: tools/templates/layout.html:19 -msgid "Documentation " -msgstr "Documentation" +#~ msgid "Python 3.8 (stable)" +#~ msgstr "Python 3.8 (stable)" + +#~ msgid "Python 3.7 (stable)" +#~ msgstr "Python 3.7 (stable)" + +#~ msgid "Python 2.7 (EOL)" +#~ msgstr "Python 2.7 (en fin de vie)" + +#~ msgid "Documentation " +#~ msgstr "Documentation" #~ msgid "Python 3.5 (security-fixes)" #~ msgstr "Python 3.5 (correctifs de sécurité)" diff --git a/tutorial/appetite.po b/tutorial/appetite.po index 5bab3db19..25cea227d 100644 --- a/tutorial/appetite.po +++ b/tutorial/appetite.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-06-18 22:05+0200\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -57,13 +57,14 @@ msgid "Python is just the language for you." msgstr "Python est le langage parfait pour vous." #: tutorial/appetite.rst:22 +#, fuzzy msgid "" "You could write a Unix shell script or Windows batch files for some of these " "tasks, but shell scripts are best at moving around files and changing text " "data, not well-suited for GUI applications or games. You could write a C/C++/" "Java program, but it can take a lot of development time to get even a first-" -"draft program. Python is simpler to use, available on Windows, Mac OS X, " -"and Unix operating systems, and will help you get the job done more quickly." +"draft program. Python is simpler to use, available on Windows, macOS, and " +"Unix operating systems, and will help you get the job done more quickly." msgstr "" "Vous pouvez écrire un script shell Unix ou des fichiers batch Windows pour " "certaines de ces tâches. Les scripts shell sont appropriés pour déplacer des " diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 5205e9e9a..c131d738b 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 02:09+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -54,11 +54,18 @@ msgstr "" "par ailleurs équivalente aux instructions ``switch`` ou ``case`` disponibles " "dans d'autres langages." -#: tutorial/controlflow.rst:43 +#: tutorial/controlflow.rst:39 +msgid "" +"If you're comparing the same value to several constants, or checking for " +"specific types or attributes, you may also find the :keyword:`!match` " +"statement useful. For more details see :ref:`tut-match`." +msgstr "" + +#: tutorial/controlflow.rst:46 msgid ":keyword:`!for` Statements" msgstr "L'instruction :keyword:`!for`" -#: tutorial/controlflow.rst:48 +#: tutorial/controlflow.rst:51 msgid "" "The :keyword:`for` statement in Python differs a bit from what you may be " "used to in C or Pascal. Rather than always iterating over an arithmetic " @@ -77,7 +84,7 @@ msgstr "" "caractères…), dans l'ordre dans lequel ils apparaissent dans la séquence. " "Par exemple :" -#: tutorial/controlflow.rst:69 +#: tutorial/controlflow.rst:72 msgid "" "Code that modifies a collection while iterating over that same collection " "can be tricky to get right. Instead, it is usually more straight-forward to " @@ -87,11 +94,11 @@ msgstr "" "s'avérer délicat. Il est généralement plus simple de boucler sur une copie " "de la collection ou de créer une nouvelle collection ::" -#: tutorial/controlflow.rst:88 +#: tutorial/controlflow.rst:94 msgid "The :func:`range` Function" msgstr "La fonction :func:`range`" -#: tutorial/controlflow.rst:90 +#: tutorial/controlflow.rst:96 msgid "" "If you do need to iterate over a sequence of numbers, the built-in function :" "func:`range` comes in handy. It generates arithmetic progressions::" @@ -99,7 +106,7 @@ msgstr "" "Si vous devez itérer sur une suite de nombres, la fonction native :func:" "`range` est faite pour cela. Elle génère des suites arithmétiques ::" -#: tutorial/controlflow.rst:102 +#: tutorial/controlflow.rst:108 msgid "" "The given end point is never part of the generated sequence; ``range(10)`` " "generates 10 values, the legal indices for items of a sequence of length " @@ -112,7 +119,7 @@ msgstr "" "valeur d'incrément différentes (y compris négative pour cette dernière, que " "l'on appelle également parfois le « pas ») ::" -#: tutorial/controlflow.rst:116 +#: tutorial/controlflow.rst:122 msgid "" "To iterate over the indices of a sequence, you can combine :func:`range` " "and :func:`len` as follows::" @@ -120,7 +127,7 @@ msgstr "" "Pour itérer sur les indices d'une séquence, on peut combiner les fonctions :" "func:`range` et :func:`len` ::" -#: tutorial/controlflow.rst:129 +#: tutorial/controlflow.rst:135 msgid "" "In most such cases, however, it is convenient to use the :func:`enumerate` " "function, see :ref:`tut-loopidioms`." @@ -128,11 +135,11 @@ msgstr "" "Cependant, dans la plupart des cas, il est plus pratique d'utiliser la " "fonction :func:`enumerate`. Voyez pour cela :ref:`tut-loopidioms`." -#: tutorial/controlflow.rst:132 +#: tutorial/controlflow.rst:138 msgid "A strange thing happens if you just print a range::" msgstr "Une chose étrange se produit lorsqu'on affiche un *range* ::" -#: tutorial/controlflow.rst:137 +#: tutorial/controlflow.rst:143 msgid "" "In many ways the object returned by :func:`range` behaves as if it is a " "list, but in fact it isn't. It is an object which returns the successive " @@ -144,7 +151,7 @@ msgstr "" "à mesure de l'itération, sans réellement produire la liste en tant que " "telle, économisant ainsi de l'espace." -#: tutorial/controlflow.rst:142 +#: tutorial/controlflow.rst:148 msgid "" "We say such an object is :term:`iterable`, that is, suitable as a target for " "functions and constructs that expect something from which they can obtain " @@ -159,24 +166,17 @@ msgstr "" "de ces constructions, et un exemple de fonction qui prend un itérable en " "paramètre est :func:`sum` ::" -#: tutorial/controlflow.rst:151 +#: tutorial/controlflow.rst:157 +#, fuzzy msgid "" "Later we will see more functions that return iterables and take iterables as " -"arguments. Lastly, maybe you are curious about how to get a list from a " -"range. Here is the solution::" +"arguments. In chapter :ref:`tut-structures`, we will discuss in more detail " +"about :func:`list`." msgstr "" "Plus loin nous voyons d'autres fonctions qui donnent des itérables ou en " "prennent en paramètre. Si vous vous demandez comment obtenir une liste à " "partir d'un *range*, voici la solution ::" -#: tutorial/controlflow.rst:158 -msgid "" -"In chapter :ref:`tut-structures`, we will discuss in more detail about :func:" -"`list`." -msgstr "" -"Dans le chapitre :ref:`tut-structures`, nous discuterons plus en détail sur :" -"func:`list`." - #: tutorial/controlflow.rst:164 msgid "" ":keyword:`!break` and :keyword:`!continue` Statements, and :keyword:`!else` " @@ -273,11 +273,153 @@ msgstr "" "permettant ainsi de construire votre code à un niveau plus abstrait. " "L'instruction :keyword:`!pass` est alors ignorée silencieusement ::" -#: tutorial/controlflow.rst:250 +#: tutorial/controlflow.rst:251 +#, fuzzy +msgid ":keyword:`!match` Statements" +msgstr "L'instruction :keyword:`!pass`" + +#: tutorial/controlflow.rst:253 +msgid "" +"A match statement takes an expression and compares its value to successive " +"patterns given as one or more case blocks. This is superficially similar to " +"a switch statement in C, Java or JavaScript (and many other languages), but " +"it can also extract components (sequence elements or object attributes) from " +"the value into variables." +msgstr "" + +#: tutorial/controlflow.rst:259 +msgid "" +"The simplest form compares a subject value against one or more literals::" +msgstr "" + +#: tutorial/controlflow.rst:272 +msgid "" +"Note the last block: the \"variable name\" ``_`` acts as a *wildcard* and " +"never fails to match. If no case matches, none of the branches is executed." +msgstr "" + +#: tutorial/controlflow.rst:275 +msgid "" +"You can combine several literals in a single pattern using ``|`` (\"or\")::" +msgstr "" + +#: tutorial/controlflow.rst:280 +msgid "" +"Patterns can look like unpacking assignments, and can be used to bind " +"variables::" +msgstr "" + +#: tutorial/controlflow.rst:296 +msgid "" +"Study that one carefully! The first pattern has two literals, and can be " +"thought of as an extension of the literal pattern shown above. But the next " +"two patterns combine a literal and a variable, and the variable *binds* a " +"value from the subject (``point``). The fourth pattern captures two values, " +"which makes it conceptually similar to the unpacking assignment ``(x, y) = " +"point``." +msgstr "" + +#: tutorial/controlflow.rst:303 +msgid "" +"If you are using classes to structure your data you can use the class name " +"followed by an argument list resembling a constructor, but with the ability " +"to capture attributes into variables::" +msgstr "" + +#: tutorial/controlflow.rst:324 +msgid "" +"You can use positional parameters with some builtin classes that provide an " +"ordering for their attributes (e.g. dataclasses). You can also define a " +"specific position for attributes in patterns by setting the " +"``__match_args__`` special attribute in your classes. If it's set to (\"x\", " +"\"y\"), the following patterns are all equivalent (and all bind the ``y`` " +"attribute to the ``var`` variable)::" +msgstr "" + +#: tutorial/controlflow.rst:335 +msgid "" +"A recommended way to read patterns is to look at them as an extended form of " +"what you would put on the left of an assignment, to understand which " +"variables would be set to what. Only the standalone names (like ``var`` " +"above) are assigned to by a match statement. Dotted names (like ``foo." +"bar``), attribute names (the ``x=`` and ``y=`` above) or class names " +"(recognized by the \"(...)\" next to them like ``Point`` above) are never " +"assigned to." +msgstr "" + +#: tutorial/controlflow.rst:342 +msgid "" +"Patterns can be arbitrarily nested. For example, if we have a short list of " +"points, we could match it like this::" +msgstr "" + +#: tutorial/controlflow.rst:357 +msgid "" +"We can add an ``if`` clause to a pattern, known as a \"guard\". If the " +"guard is false, ``match`` goes on to try the next case block. Note that " +"value capture happens before the guard is evaluated::" +msgstr "" + +#: tutorial/controlflow.rst:367 +msgid "Several other key features of this statement:" +msgstr "" + +#: tutorial/controlflow.rst:369 +msgid "" +"Like unpacking assignments, tuple and list patterns have exactly the same " +"meaning and actually match arbitrary sequences. An important exception is " +"that they don't match iterators or strings." +msgstr "" + +#: tutorial/controlflow.rst:373 +msgid "" +"Sequence patterns support extended unpacking: ``[x, y, *rest]`` and ``(x, y, " +"*rest)`` work similar to unpacking assignments. The name after ``*`` may " +"also be ``_``, so ``(x, y, *_)`` matches a sequence of at least two items " +"without binding the remaining items." +msgstr "" + +#: tutorial/controlflow.rst:378 +msgid "" +"Mapping patterns: ``{\"bandwidth\": b, \"latency\": l}`` captures the ``" +"\"bandwidth\"`` and ``\"latency\"`` values from a dictionary. Unlike " +"sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is " +"also supported. (But ``**_`` would be redundant, so it not allowed.)" +msgstr "" + +#: tutorial/controlflow.rst:383 +msgid "Subpatterns may be captured using the ``as`` keyword::" +msgstr "" + +#: tutorial/controlflow.rst:387 +msgid "" +"will capture the second element of the input as ``p2`` (as long as the input " +"is a sequence of two points)" +msgstr "" + +#: tutorial/controlflow.rst:390 +msgid "" +"Most literals are compared by equality, however the singletons ``True``, " +"``False`` and ``None`` are compared by identity." +msgstr "" + +#: tutorial/controlflow.rst:393 +msgid "" +"Patterns may use named constants. These must be dotted names to prevent " +"them from being interpreted as capture variable::" +msgstr "" + +#: tutorial/controlflow.rst:410 +msgid "" +"For a more detailed explanation and additional examples, you can look into :" +"pep:`636` which is written in a tutorial format." +msgstr "" + +#: tutorial/controlflow.rst:416 msgid "Defining Functions" msgstr "Définir des fonctions" -#: tutorial/controlflow.rst:252 +#: tutorial/controlflow.rst:418 msgid "" "We can create a function that writes the Fibonacci series to an arbitrary " "boundary::" @@ -285,7 +427,7 @@ msgstr "" "On peut créer une fonction qui écrit la suite de Fibonacci jusqu'à une " "limite imposée ::" -#: tutorial/controlflow.rst:272 +#: tutorial/controlflow.rst:438 msgid "" "The keyword :keyword:`def` introduces a function *definition*. It must be " "followed by the function name and the parenthesized list of formal " @@ -297,7 +439,7 @@ msgstr "" "paramètres. L'instruction qui constitue le corps de la fonction débute à la " "ligne suivante et doit être indentée." -#: tutorial/controlflow.rst:277 +#: tutorial/controlflow.rst:443 msgid "" "The first statement of the function body can optionally be a string literal; " "this string literal is the function's documentation string, or :dfn:" @@ -316,7 +458,7 @@ msgstr "" "naviguer de façon interactive dans le code ; prenez-en l'habitude, c'est une " "bonne pratique que de documenter le code que vous écrivez." -#: tutorial/controlflow.rst:284 +#: tutorial/controlflow.rst:450 msgid "" "The *execution* of a function introduces a new symbol table used for the " "local variables of the function. More precisely, all variable assignments " @@ -342,7 +484,7 @@ msgstr "" "instruction :keyword:`global` et, pour les variables des fonctions " "englobantes, désignées dans une instruction :keyword:`nonlocal`)." -#: tutorial/controlflow.rst:295 +#: tutorial/controlflow.rst:461 msgid "" "The actual parameters (arguments) to a function call are introduced in the " "local symbol table of the called function when it is called; thus, arguments " @@ -359,7 +501,7 @@ msgstr "" "s'appelle elle-même par récursion, une nouvelle table de symboles locaux est " "créée pour cet appel." -#: tutorial/controlflow.rst:302 +#: tutorial/controlflow.rst:468 msgid "" "A function definition associates the function name with the function object " "in the current symbol table. The interpreter recognizes the object pointed " @@ -372,7 +514,7 @@ msgstr "" "référence à une même fonction, ils peuvent alors tous être utilisés pour " "appeler la fonction ::" -#: tutorial/controlflow.rst:313 +#: tutorial/controlflow.rst:479 msgid "" "Coming from other languages, you might object that ``fib`` is not a function " "but a procedure since it doesn't return a value. In fact, even functions " @@ -391,7 +533,7 @@ msgstr "" "Vous pouvez le constater, si vous y tenez vraiment, en utilisant :func:" "`print` ::" -#: tutorial/controlflow.rst:324 +#: tutorial/controlflow.rst:490 msgid "" "It is simple to write a function that returns a list of the numbers of the " "Fibonacci series, instead of printing it::" @@ -399,14 +541,14 @@ msgstr "" "Il est facile d'écrire une fonction qui renvoie une liste de la série de " "Fibonacci au lieu de l'afficher ::" -#: tutorial/controlflow.rst:340 +#: tutorial/controlflow.rst:506 msgid "This example, as usual, demonstrates some new Python features:" msgstr "" "Cet exemple, comme d'habitude, illustre de nouvelles fonctionnalités de " "Python :" # énumération --> pas de majuscule et point-virgule en fin de proposition. -#: tutorial/controlflow.rst:342 +#: tutorial/controlflow.rst:508 msgid "" "The :keyword:`return` statement returns with a value from a function. :" "keyword:`!return` without an expression argument returns ``None``. Falling " @@ -418,7 +560,7 @@ msgstr "" "``None`` ;" # fin d'énumération --> pas de majuscule et point final. -#: tutorial/controlflow.rst:346 +#: tutorial/controlflow.rst:512 msgid "" "The statement ``result.append(a)`` calls a *method* of the list object " "``result``. A method is a function that 'belongs' to an object and is named " @@ -444,11 +586,11 @@ msgstr "" "liste. Dans cet exemple, elle est l'équivalent de ``result = result + [a]``, " "en plus efficace." -#: tutorial/controlflow.rst:361 +#: tutorial/controlflow.rst:527 msgid "More on Defining Functions" msgstr "Davantage sur la définition des fonctions" -#: tutorial/controlflow.rst:363 +#: tutorial/controlflow.rst:529 msgid "" "It is also possible to define functions with a variable number of arguments. " "There are three forms, which can be combined." @@ -456,11 +598,11 @@ msgstr "" "Il est également possible de définir des fonctions avec un nombre variable " "d'arguments. Trois syntaxes peuvent être utilisées, éventuellement combinées." -#: tutorial/controlflow.rst:370 +#: tutorial/controlflow.rst:536 msgid "Default Argument Values" msgstr "Valeur par défaut des arguments" -#: tutorial/controlflow.rst:372 +#: tutorial/controlflow.rst:538 msgid "" "The most useful form is to specify a default value for one or more " "arguments. This creates a function that can be called with fewer arguments " @@ -470,12 +612,12 @@ msgstr "" "certains arguments. Ceci crée une fonction qui peut être appelée avec moins " "d'arguments que ceux présents dans sa définition. Par exemple ::" -#: tutorial/controlflow.rst:388 +#: tutorial/controlflow.rst:554 msgid "This function can be called in several ways:" msgstr "Cette fonction peut être appelée de plusieurs façons :" # énumération --> pas de majuscule -#: tutorial/controlflow.rst:390 +#: tutorial/controlflow.rst:556 msgid "" "giving only the mandatory argument: ``ask_ok('Do you really want to quit?')``" msgstr "" @@ -483,7 +625,7 @@ msgstr "" "want to quit?')`` ;" # énumération --> pas de majuscule et point-virgule en fin de proposition. -#: tutorial/controlflow.rst:392 +#: tutorial/controlflow.rst:558 msgid "" "giving one of the optional arguments: ``ask_ok('OK to overwrite the file?', " "2)``" @@ -492,7 +634,7 @@ msgstr "" "overwrite the file?', 2)`` ;" # fin d'énumération --> pas de majuscule et point final. -#: tutorial/controlflow.rst:394 +#: tutorial/controlflow.rst:560 msgid "" "or even giving all arguments: ``ask_ok('OK to overwrite the file?', 2, 'Come " "on, only yes or no!')``" @@ -500,7 +642,7 @@ msgstr "" "en fournissant tous les arguments : ``ask_ok('OK to overwrite the file?', 2, " "'Come on, only yes or no!')``." -#: tutorial/controlflow.rst:397 +#: tutorial/controlflow.rst:563 msgid "" "This example also introduces the :keyword:`in` keyword. This tests whether " "or not a sequence contains a certain value." @@ -508,7 +650,7 @@ msgstr "" "Cet exemple présente également le mot-clé :keyword:`in`. Celui-ci permet de " "tester si une séquence contient une certaine valeur." -#: tutorial/controlflow.rst:400 +#: tutorial/controlflow.rst:566 msgid "" "The default values are evaluated at the point of function definition in the " "*defining* scope, so that ::" @@ -516,11 +658,11 @@ msgstr "" "Les valeurs par défaut sont évaluées lors de la définition de la fonction " "dans la portée de la *définition*, de telle sorte que ::" -#: tutorial/controlflow.rst:411 +#: tutorial/controlflow.rst:577 msgid "will print ``5``." msgstr "affiche ``5``." -#: tutorial/controlflow.rst:413 +#: tutorial/controlflow.rst:579 msgid "" "**Important warning:** The default value is evaluated only once. This makes " "a difference when the default is a mutable object such as a list, " @@ -534,11 +676,11 @@ msgstr "" "arguments qui lui sont passés au fil des appels successifs ::" # pas de majuscule : ok -#: tutorial/controlflow.rst:426 +#: tutorial/controlflow.rst:592 msgid "This will print ::" msgstr "affiche ::" -#: tutorial/controlflow.rst:432 +#: tutorial/controlflow.rst:598 msgid "" "If you don't want the default to be shared between subsequent calls, you can " "write the function like this instead::" @@ -546,11 +688,11 @@ msgstr "" "Si vous ne voulez pas que cette valeur par défaut soit partagée entre des " "appels successifs, vous pouvez écrire la fonction de cette façon ::" -#: tutorial/controlflow.rst:445 +#: tutorial/controlflow.rst:611 msgid "Keyword Arguments" msgstr "Les arguments nommés" -#: tutorial/controlflow.rst:447 +#: tutorial/controlflow.rst:613 msgid "" "Functions can also be called using :term:`keyword arguments ` of the form ``kwarg=value``. For instance, the following " @@ -560,7 +702,7 @@ msgstr "" "`arguments nommés ` sous la forme ``kwarg=value``. Par " "exemple, la fonction suivante ::" -#: tutorial/controlflow.rst:456 +#: tutorial/controlflow.rst:622 msgid "" "accepts one required argument (``voltage``) and three optional arguments " "(``state``, ``action``, and ``type``). This function can be called in any " @@ -570,11 +712,11 @@ msgstr "" "(``state``, ``action`` et ``type``). Cette fonction peut être appelée de " "n'importe laquelle des façons suivantes ::" -#: tutorial/controlflow.rst:467 +#: tutorial/controlflow.rst:633 msgid "but all the following calls would be invalid::" msgstr "mais tous les appels qui suivent sont incorrects ::" -#: tutorial/controlflow.rst:474 +#: tutorial/controlflow.rst:640 msgid "" "In a function call, keyword arguments must follow positional arguments. All " "the keyword arguments passed must match one of the arguments accepted by the " @@ -593,7 +735,7 @@ msgstr "" "recevoir une valeur plus d'une fois, comme l'illustre cet exemple incorrect " "du fait de cette restriction ::" -#: tutorial/controlflow.rst:490 +#: tutorial/controlflow.rst:656 msgid "" "When a final formal parameter of the form ``**name`` is present, it receives " "a dictionary (see :ref:`typesmapping`) containing all keyword arguments " @@ -612,15 +754,15 @@ msgstr "" "formels (``*name`` doit être présent avant ``**name``). Par exemple, si vous " "définissez une fonction comme ceci ::" -#: tutorial/controlflow.rst:507 +#: tutorial/controlflow.rst:673 msgid "It could be called like this::" msgstr "Elle pourrait être appelée comme ceci ::" -#: tutorial/controlflow.rst:515 +#: tutorial/controlflow.rst:681 msgid "and of course it would print:" msgstr "et, bien sûr, elle affiche :" -#: tutorial/controlflow.rst:528 +#: tutorial/controlflow.rst:694 msgid "" "Note that the order in which the keyword arguments are printed is guaranteed " "to match the order in which they were provided in the function call." @@ -628,11 +770,11 @@ msgstr "" "Notez que Python garantit que l'ordre d'affichage des arguments est le même " "que l'ordre dans lesquels ils sont fournis lors de l'appel à la fonction." -#: tutorial/controlflow.rst:532 +#: tutorial/controlflow.rst:698 msgid "Special parameters" msgstr "Paramètres spéciaux" -#: tutorial/controlflow.rst:534 +#: tutorial/controlflow.rst:700 msgid "" "By default, arguments may be passed to a Python function either by position " "or explicitly by keyword. For readability and performance, it makes sense to " @@ -647,11 +789,11 @@ msgstr "" "définition de la fonction pour déterminer si les éléments sont transmis par " "position seule, par position ou nommé, ou seulement nommé." -#: tutorial/controlflow.rst:540 +#: tutorial/controlflow.rst:706 msgid "A function definition may look like:" msgstr "Voici à quoi ressemble une définition de fonction :" -#: tutorial/controlflow.rst:551 +#: tutorial/controlflow.rst:717 msgid "" "where ``/`` and ``*`` are optional. If used, these symbols indicate the kind " "of parameter by how the arguments may be passed to the function: positional-" @@ -663,11 +805,11 @@ msgstr "" "fonction : position seule, position ou nommé, et seulement nommé. Les " "paramètres par mot-clé sont aussi appelés paramètres nommés." -#: tutorial/controlflow.rst:558 +#: tutorial/controlflow.rst:724 msgid "Positional-or-Keyword Arguments" msgstr "Les arguments positionnels-ou-nommés" -#: tutorial/controlflow.rst:560 +#: tutorial/controlflow.rst:726 msgid "" "If ``/`` and ``*`` are not present in the function definition, arguments may " "be passed to a function by position or by keyword." @@ -675,11 +817,11 @@ msgstr "" "Si ``/`` et ``*`` ne sont pas présents dans la définition de fonction, les " "arguments peuvent être passés à une fonction par position ou par nommés." -#: tutorial/controlflow.rst:565 +#: tutorial/controlflow.rst:731 msgid "Positional-Only Parameters" msgstr "Paramètres positionnels uniquement" -#: tutorial/controlflow.rst:567 +#: tutorial/controlflow.rst:733 msgid "" "Looking at this in a bit more detail, it is possible to mark certain " "parameters as *positional-only*. If *positional-only*, the parameters' order " @@ -698,7 +840,7 @@ msgstr "" "des paramètres. S'il n'y a pas de ``/`` dans la définition de fonction, il " "n'y a pas de paramètres « positionnels uniquement »." -#: tutorial/controlflow.rst:575 +#: tutorial/controlflow.rst:741 msgid "" "Parameters following the ``/`` may be *positional-or-keyword* or *keyword-" "only*." @@ -706,11 +848,11 @@ msgstr "" "Les paramètres qui suivent le ``/`` peuvent être *positionnels-ou-nommés* ou " "*nommés-uniquement*." -#: tutorial/controlflow.rst:579 +#: tutorial/controlflow.rst:745 msgid "Keyword-Only Arguments" msgstr "Arguments nommés uniquement" -#: tutorial/controlflow.rst:581 +#: tutorial/controlflow.rst:747 msgid "" "To mark parameters as *keyword-only*, indicating the parameters must be " "passed by keyword argument, place an ``*`` in the arguments list just before " @@ -721,11 +863,11 @@ msgstr "" "``*`` dans la liste des arguments juste avant le premier paramètre " "*uniquement nommé*." -#: tutorial/controlflow.rst:587 +#: tutorial/controlflow.rst:753 msgid "Function Examples" msgstr "Exemples de fonctions" -#: tutorial/controlflow.rst:589 +#: tutorial/controlflow.rst:755 msgid "" "Consider the following example function definitions paying close attention " "to the markers ``/`` and ``*``::" @@ -733,7 +875,7 @@ msgstr "" "Considérons l'exemple suivant de définitions de fonctions en portant une " "attention particulière aux marqueurs ``/`` et ``*`` ::" -#: tutorial/controlflow.rst:605 +#: tutorial/controlflow.rst:771 msgid "" "The first function definition, ``standard_arg``, the most familiar form, " "places no restrictions on the calling convention and arguments may be passed " @@ -743,7 +885,7 @@ msgstr "" "familière, n'impose aucune restriction sur la convention d'appel et les " "arguments peuvent être passés par position ou nommés ::" -#: tutorial/controlflow.rst:615 +#: tutorial/controlflow.rst:781 msgid "" "The second function ``pos_only_arg`` is restricted to only use positional " "parameters as there is a ``/`` in the function definition::" @@ -751,7 +893,7 @@ msgstr "" "La deuxième fonction ``pos_only_arg`` restreint le passage aux seuls " "arguments par position car il y a un ``/`` dans la définition de fonction ::" -#: tutorial/controlflow.rst:626 +#: tutorial/controlflow.rst:792 msgid "" "The third function ``kwd_only_args`` only allows keyword arguments as " "indicated by a ``*`` in the function definition::" @@ -759,7 +901,7 @@ msgstr "" "La troisième fonction ``kwd_only_args`` n'autorise que les arguments nommés " "comme l'indique le ``*`` dans la définition de fonction ::" -#: tutorial/controlflow.rst:637 +#: tutorial/controlflow.rst:803 msgid "" "And the last uses all three calling conventions in the same function " "definition::" @@ -767,7 +909,7 @@ msgstr "" "Et la dernière utilise les trois conventions d'appel dans la même définition " "de fonction ::" -#: tutorial/controlflow.rst:657 +#: tutorial/controlflow.rst:823 msgid "" "Finally, consider this function definition which has a potential collision " "between the positional argument ``name`` and ``**kwds`` which has ``name`` " @@ -777,7 +919,7 @@ msgstr "" "potentielle entre l'argument positionnel ``name`` et ``**kwds`` qui a " "``name`` comme mot-clé ::" -#: tutorial/controlflow.rst:662 +#: tutorial/controlflow.rst:828 msgid "" "There is no possible call that will make it return ``True`` as the keyword " "``'name'`` will always bind to the first parameter. For example::" @@ -785,7 +927,7 @@ msgstr "" "Il n'y a pas d'appel possible qui renvoie ``True`` car le mot-clé ``'name'`` " "est toujours lié au premier paramètre. Par exemple ::" -#: tutorial/controlflow.rst:671 +#: tutorial/controlflow.rst:837 msgid "" "But using ``/`` (positional only arguments), it is possible since it allows " "``name`` as a positional argument and ``'name'`` as a key in the keyword " @@ -795,7 +937,7 @@ msgstr "" "puisqu'il permet d'utiliser ``name`` comme argument positionnel et " "``'name'`` comme mot-clé dans les arguments nommés ::" -#: tutorial/controlflow.rst:678 +#: tutorial/controlflow.rst:844 msgid "" "In other words, the names of positional-only parameters can be used in " "``**kwds`` without ambiguity." @@ -803,11 +945,11 @@ msgstr "" "En d'autres termes, les noms des paramètres seulement positionnels peuvent " "être utilisés sans ambiguïté dans ``**kwds``." -#: tutorial/controlflow.rst:683 +#: tutorial/controlflow.rst:849 msgid "Recap" msgstr "Récapitulatif" -#: tutorial/controlflow.rst:685 +#: tutorial/controlflow.rst:851 msgid "" "The use case will determine which parameters to use in the function " "definition::" @@ -815,12 +957,12 @@ msgstr "" "Le cas d'utilisation détermine les paramètres à utiliser dans la définition " "de fonction ::" -#: tutorial/controlflow.rst:689 +#: tutorial/controlflow.rst:855 msgid "As guidance:" msgstr "Quelques conseils :" # énumération --> pas de majuscule et point-virgule en fin de proposition. -#: tutorial/controlflow.rst:691 +#: tutorial/controlflow.rst:857 msgid "" "Use positional-only if you want the name of the parameters to not be " "available to the user. This is useful when parameter names have no real " @@ -835,7 +977,7 @@ msgstr "" "de prendre certains paramètres positionnels et mots-clés arbitraires ;" # énumération --> pas de majuscule et point-virgule en fin de proposition. -#: tutorial/controlflow.rst:696 +#: tutorial/controlflow.rst:862 msgid "" "Use keyword-only when names have meaning and the function definition is more " "understandable by being explicit with names or you want to prevent users " @@ -847,7 +989,7 @@ msgstr "" "l'argument qui est passé ;" # fin d'énumération -#: tutorial/controlflow.rst:699 +#: tutorial/controlflow.rst:865 msgid "" "For an API, use positional-only to prevent breaking API changes if the " "parameter's name is modified in the future." @@ -855,11 +997,11 @@ msgstr "" "dans le cas d'une API, utilisez les paramètres seulement positionnels pour " "éviter de casser l'API si le nom du paramètre est modifié dans l'avenir." -#: tutorial/controlflow.rst:705 +#: tutorial/controlflow.rst:871 msgid "Arbitrary Argument Lists" msgstr "Listes d'arguments arbitraires" -#: tutorial/controlflow.rst:710 +#: tutorial/controlflow.rst:876 msgid "" "Finally, the least frequently used option is to specify that a function can " "be called with an arbitrary number of arguments. These arguments will be " @@ -872,7 +1014,7 @@ msgstr "" "nombre variable d'arguments, zéro ou plus arguments normaux peuvent " "apparaître ::" -#: tutorial/controlflow.rst:719 +#: tutorial/controlflow.rst:885 msgid "" "Normally, these ``variadic`` arguments will be last in the list of formal " "parameters, because they scoop up all remaining input arguments that are " @@ -884,11 +1026,11 @@ msgstr "" "parce qu'ils agrègent toutes les valeurs suivantes. Tout paramètre placé " "après le paramètre ``*arg`` ne pourra être utilisé que par son nom ::" -#: tutorial/controlflow.rst:736 +#: tutorial/controlflow.rst:902 msgid "Unpacking Argument Lists" msgstr "Séparation des listes d'arguments" -#: tutorial/controlflow.rst:738 +#: tutorial/controlflow.rst:904 msgid "" "The reverse situation occurs when the arguments are already in a list or " "tuple but need to be unpacked for a function call requiring separate " @@ -905,7 +1047,7 @@ msgstr "" "l'opérateur ``*`` pour séparer les arguments présents dans une liste ou un " "*n*-uplet ::" -#: tutorial/controlflow.rst:754 +#: tutorial/controlflow.rst:920 msgid "" "In the same fashion, dictionaries can deliver keyword arguments with the " "``**``\\ -operator::" @@ -913,11 +1055,11 @@ msgstr "" "De la même façon, les dictionnaires peuvent fournir des arguments nommés en " "utilisant l'opérateur ``**`` ::" -#: tutorial/controlflow.rst:770 +#: tutorial/controlflow.rst:936 msgid "Lambda Expressions" msgstr "Fonctions anonymes" -#: tutorial/controlflow.rst:772 +#: tutorial/controlflow.rst:938 msgid "" "Small anonymous functions can be created with the :keyword:`lambda` keyword. " "This function returns the sum of its two arguments: ``lambda a, b: a+b``. " @@ -935,7 +1077,7 @@ msgstr "" "définition de fonction normale. Comme les fonctions imbriquées, les " "fonctions lambda peuvent référencer des variables de la portée englobante ::" -#: tutorial/controlflow.rst:789 +#: tutorial/controlflow.rst:955 msgid "" "The above example uses a lambda expression to return a function. Another " "use is to pass a small function as an argument::" @@ -944,11 +1086,11 @@ msgstr "" "Une autre utilisation classique est de donner une fonction minimaliste " "directement en tant que paramètre ::" -#: tutorial/controlflow.rst:801 +#: tutorial/controlflow.rst:967 msgid "Documentation Strings" msgstr "Chaînes de documentation" -#: tutorial/controlflow.rst:808 +#: tutorial/controlflow.rst:974 msgid "" "Here are some conventions about the content and formatting of documentation " "strings." @@ -956,7 +1098,7 @@ msgstr "" "Voici quelques conventions concernant le contenu et le format des chaînes de " "documentation." -#: tutorial/controlflow.rst:811 +#: tutorial/controlflow.rst:977 msgid "" "The first line should always be a short, concise summary of the object's " "purpose. For brevity, it should not explicitly state the object's name or " @@ -970,7 +1112,7 @@ msgstr "" "si le nom est un verbe qui décrit une opération). La convention veut que la " "ligne commence par une majuscule et se termine par un point." -#: tutorial/controlflow.rst:817 +#: tutorial/controlflow.rst:983 msgid "" "If there are more lines in the documentation string, the second line should " "be blank, visually separating the summary from the rest of the description. " @@ -982,7 +1124,7 @@ msgstr "" "Les autres lignes peuvent alors constituer un ou plusieurs paragraphes " "décrivant le mode d'utilisation de l'objet, ses effets de bord, etc." -#: tutorial/controlflow.rst:822 +#: tutorial/controlflow.rst:988 msgid "" "The Python parser does not strip indentation from multi-line string literals " "in Python, so tools that process documentation have to strip indentation if " @@ -1010,15 +1152,15 @@ msgstr "" "début de ligne doivent être supprimées. L'équivalent des espaces doit être " "testé après expansion des tabulations (normalement remplacées par 8 espaces)." -#: tutorial/controlflow.rst:834 +#: tutorial/controlflow.rst:1000 msgid "Here is an example of a multi-line docstring::" msgstr "Voici un exemple de chaîne de documentation multi-lignes ::" -#: tutorial/controlflow.rst:852 +#: tutorial/controlflow.rst:1018 msgid "Function Annotations" msgstr "Annotations de fonctions" -#: tutorial/controlflow.rst:860 +#: tutorial/controlflow.rst:1026 msgid "" ":ref:`Function annotations ` are completely optional metadata " "information about the types used by user-defined functions (see :pep:`3107` " @@ -1028,7 +1170,7 @@ msgstr "" "optionnelles décrivant les types utilisés par une fonction définie par " "l'utilisateur (voir les :pep:`3107` et :pep:`484` pour plus d'informations)." -#: tutorial/controlflow.rst:864 +#: tutorial/controlflow.rst:1030 msgid "" ":term:`Annotations ` are stored in the :attr:" "`__annotations__` attribute of the function as a dictionary and have no " @@ -1048,11 +1190,11 @@ msgstr "" "points de fin de l'instruction :keyword:`def`. L'exemple suivant a un " "paramètre requis, un paramètre optionnel et la valeur de retour annotés ::" -#: tutorial/controlflow.rst:886 +#: tutorial/controlflow.rst:1052 msgid "Intermezzo: Coding Style" msgstr "Aparté : le style de codage" -#: tutorial/controlflow.rst:891 +#: tutorial/controlflow.rst:1057 msgid "" "Now that you are about to write longer, more complex pieces of Python, it is " "a good time to talk about *coding style*. Most languages can be written (or " @@ -1067,7 +1209,7 @@ msgstr "" "votre code plus facile aux autres est toujours une bonne idée et adopter un " "bon style de codage peut énormément vous y aider." -#: tutorial/controlflow.rst:897 +#: tutorial/controlflow.rst:1063 msgid "" "For Python, :pep:`8` has emerged as the style guide that most projects " "adhere to; it promotes a very readable and eye-pleasing coding style. Every " @@ -1079,11 +1221,11 @@ msgstr "" "Chaque développeur Python se doit donc de la lire et de s'en inspirer autant " "que possible ; voici ses principaux points notables :" -#: tutorial/controlflow.rst:902 +#: tutorial/controlflow.rst:1068 msgid "Use 4-space indentation, and no tabs." msgstr "Utilisez des indentations de 4 espaces et pas de tabulation." -#: tutorial/controlflow.rst:904 +#: tutorial/controlflow.rst:1070 msgid "" "4 spaces are a good compromise between small indentation (allows greater " "nesting depth) and large indentation (easier to read). Tabs introduce " @@ -1094,13 +1236,13 @@ msgstr "" "le code plus facile à lire). Les tabulations introduisent de la confusion et " "doivent être proscrites autant que possible." -#: tutorial/controlflow.rst:908 +#: tutorial/controlflow.rst:1074 msgid "Wrap lines so that they don't exceed 79 characters." msgstr "" "Faites en sorte que les lignes ne dépassent pas 79 caractères, au besoin en " "insérant des retours à la ligne." -#: tutorial/controlflow.rst:910 +#: tutorial/controlflow.rst:1076 msgid "" "This helps users with small displays and makes it possible to have several " "code files side-by-side on larger displays." @@ -1109,7 +1251,7 @@ msgstr "" "écran et, pour les autres, cela leur permet de visualiser plusieurs fichiers " "côte à côte." -#: tutorial/controlflow.rst:913 +#: tutorial/controlflow.rst:1079 msgid "" "Use blank lines to separate functions and classes, and larger blocks of code " "inside functions." @@ -1117,16 +1259,16 @@ msgstr "" "Utilisez des lignes vides pour séparer les fonctions et les classes, ou pour " "scinder de gros blocs de code à l'intérieur de fonctions." -#: tutorial/controlflow.rst:916 +#: tutorial/controlflow.rst:1082 msgid "When possible, put comments on a line of their own." msgstr "" "Lorsque c'est possible, placez les commentaires sur leurs propres lignes." -#: tutorial/controlflow.rst:918 +#: tutorial/controlflow.rst:1084 msgid "Use docstrings." msgstr "Utilisez les chaînes de documentation." -#: tutorial/controlflow.rst:920 +#: tutorial/controlflow.rst:1086 msgid "" "Use spaces around operators and after commas, but not directly inside " "bracketing constructs: ``a = f(1, 2) + g(3, 4)``." @@ -1134,7 +1276,7 @@ msgstr "" "Utilisez des espaces autour des opérateurs et après les virgules, mais pas " "juste à l'intérieur des parenthèses : ``a = f(1, 2) + g(3, 4)``." -#: tutorial/controlflow.rst:923 +#: tutorial/controlflow.rst:1089 msgid "" "Name your classes and functions consistently; the convention is to use " "``UpperCamelCase`` for classes and ``lowercase_with_underscores`` for " @@ -1147,7 +1289,7 @@ msgstr "" "toujours ``self`` comme nom du premier argument des méthodes (voyez :ref:" "`tut-firstclasses` pour en savoir plus sur les classes et les méthodes)." -#: tutorial/controlflow.rst:928 +#: tutorial/controlflow.rst:1094 msgid "" "Don't use fancy encodings if your code is meant to be used in international " "environments. Python's default, UTF-8, or even plain ASCII work best in any " @@ -1157,7 +1299,7 @@ msgstr "" "utilisé dans des environnements internationaux. Par défaut, Python travaille " "en UTF-8. Pour couvrir tous les cas, préférez le simple ASCII." -#: tutorial/controlflow.rst:932 +#: tutorial/controlflow.rst:1098 msgid "" "Likewise, don't use non-ASCII characters in identifiers if there is only the " "slightest chance people speaking a different language will read or maintain " @@ -1167,11 +1309,11 @@ msgstr "" "variables s'il est envisageable qu'une personne parlant une autre langue " "lise ou doive modifier votre code." -#: tutorial/controlflow.rst:938 +#: tutorial/controlflow.rst:1104 msgid "Footnotes" msgstr "Notes" -#: tutorial/controlflow.rst:939 +#: tutorial/controlflow.rst:1105 msgid "" "Actually, *call by object reference* would be a better description, since if " "a mutable object is passed, the caller will see any changes the callee makes " @@ -1181,3 +1323,10 @@ msgstr "" "plus juste dans la mesure où, si un objet muable est passé en argument, " "l'appelant verra toutes les modifications qui lui auront été apportées par " "l'appelé (insertion d'éléments dans une liste…)." + +#~ msgid "" +#~ "In chapter :ref:`tut-structures`, we will discuss in more detail about :" +#~ "func:`list`." +#~ msgstr "" +#~ "Dans le chapitre :ref:`tut-structures`, nous discuterons plus en détail " +#~ "sur :func:`list`." diff --git a/tutorial/errors.po b/tutorial/errors.po index 891d37e0b..439691393 100644 --- a/tutorial/errors.po +++ b/tutorial/errors.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 02:20+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -171,11 +171,12 @@ msgstr "" "l'exécution de l'instruction :keyword:`try` est terminée." #: tutorial/errors.rst:104 +#, fuzzy msgid "" -"If an exception occurs during execution of the try clause, the rest of the " -"clause is skipped. Then if its type matches the exception named after the :" -"keyword:`except` keyword, the except clause is executed, and then execution " -"continues after the :keyword:`try` statement." +"If an exception occurs during execution of the :keyword:`try` clause, the " +"rest of the clause is skipped. Then, if its type matches the exception " +"named after the :keyword:`except` keyword, the *except clause* is executed, " +"and then execution continues after the try/except block." msgstr "" "si une exception intervient pendant l'exécution de la clause ``try``, le " "reste de cette clause est sauté. Si le type d'exception levée correspond à " @@ -185,9 +186,10 @@ msgstr "" # dernier élément de l'énumération #: tutorial/errors.rst:109 +#, fuzzy msgid "" "If an exception occurs which does not match the exception named in the " -"except clause, it is passed on to outer :keyword:`try` statements; if no " +"*except clause*, it is passed on to outer :keyword:`try` statements; if no " "handler is found, it is an *unhandled exception* and execution stops with a " "message as shown above." msgstr "" @@ -198,12 +200,14 @@ msgstr "" "comme indiqué ci-dessus." #: tutorial/errors.rst:114 +#, fuzzy msgid "" -"A :keyword:`try` statement may have more than one except clause, to specify " -"handlers for different exceptions. At most one handler will be executed. " -"Handlers only handle exceptions that occur in the corresponding try clause, " -"not in other handlers of the same :keyword:`!try` statement. An except " -"clause may name multiple exceptions as a parenthesized tuple, for example::" +"A :keyword:`try` statement may have more than one *except clause*, to " +"specify handlers for different exceptions. At most one handler will be " +"executed. Handlers only handle exceptions that occur in the corresponding " +"*try clause*, not in other handlers of the same :keyword:`!try` statement. " +"An *except clause* may name multiple exceptions as a parenthesized tuple, " +"for example::" msgstr "" "Une instruction :keyword:`try` peut comporter plusieurs clauses ``except`` " "pour permettre la prise en charge de différentes exceptions. Mais un seul " @@ -214,11 +218,12 @@ msgstr "" "d'un *n*-uplet entre parenthèses, comme dans cet exemple ::" #: tutorial/errors.rst:123 +#, fuzzy msgid "" "A class in an :keyword:`except` clause is compatible with an exception if it " "is the same class or a base class thereof (but not the other way around --- " -"an except clause listing a derived class is not compatible with a base " -"class). For example, the following code will print B, C, D in that order::" +"an *except clause* listing a derived class is not compatible with a base " +"class). For example, the following code will print B, C, D in that order::" msgstr "" "Une classe dans une clause :keyword:`except` est compatible avec une " "exception si elle est de la même classe ou d'une de ses classes dérivées. " @@ -227,19 +232,22 @@ msgstr "" "suivant affiche B, C et D dans cet ordre ::" #: tutorial/errors.rst:147 +#, fuzzy msgid "" -"Note that if the except clauses were reversed (with ``except B`` first), it " -"would have printed B, B, B --- the first matching except clause is triggered." +"Note that if the *except clauses* were reversed (with ``except B`` first), " +"it would have printed B, B, B --- the first matching *except clause* is " +"triggered." msgstr "" "Notez que si les clauses ``except`` avaient été inversées (avec ``except B`` " "en premier), il aurait affiché B, B, B — la première clause ``except`` qui " "correspond est déclenchée." #: tutorial/errors.rst:150 +#, fuzzy msgid "" -"The last except clause may omit the exception name(s), to serve as a " -"wildcard. Use this with extreme caution, since it is easy to mask a real " -"programming error in this way! It can also be used to print an error " +"All exceptions inherit from :exc:`BaseException`, and so it can be used to " +"serve as a wildcard. Use this with extreme caution, since it is easy to mask " +"a real programming error in this way! It can also be used to print an error " "message and then re-raise the exception (allowing a caller to handle the " "exception as well)::" msgstr "" @@ -252,10 +260,17 @@ msgstr "" #: tutorial/errors.rst:169 msgid "" +"Alternatively the last except clause may omit the exception name(s), however " +"the exception value must then be retrieved from ``sys.exc_info()[1]``." +msgstr "" + +#: tutorial/errors.rst:172 +#, fuzzy +msgid "" "The :keyword:`try` ... :keyword:`except` statement has an optional *else " -"clause*, which, when present, must follow all except clauses. It is useful " -"for code that must be executed if the try clause does not raise an " -"exception. For example::" +"clause*, which, when present, must follow all *except clauses*. It is " +"useful for code that must be executed if the *try clause* does not raise an " +"exception. For example::" msgstr "" "L'instruction :keyword:`try` ... :keyword:`except` accepte également une " "*clause else* optionnelle qui, lorsqu'elle est présente, doit se placer " @@ -263,7 +278,7 @@ msgstr "" "être exécuté lorsqu'aucune exception n'a été levée par la clause ``try``. " "Par exemple ::" -#: tutorial/errors.rst:183 +#: tutorial/errors.rst:186 msgid "" "The use of the :keyword:`!else` clause is better than adding additional code " "to the :keyword:`try` clause because it avoids accidentally catching an " @@ -275,7 +290,7 @@ msgstr "" "une exception qui n'a pas été levée par le code initialement protégé par " "l'instruction :keyword:`!try` ... :keyword:`!except`." -#: tutorial/errors.rst:188 +#: tutorial/errors.rst:191 msgid "" "When an exception occurs, it may have an associated value, also known as the " "exception's *argument*. The presence and type of the argument depend on the " @@ -285,9 +300,10 @@ msgstr "" "appelle *l'argument* de l'exception. La présence de cet argument et son type " "dépendent du type de l'exception." -#: tutorial/errors.rst:192 +#: tutorial/errors.rst:195 +#, fuzzy msgid "" -"The except clause may specify a variable after the exception name. The " +"The *except clause* may specify a variable after the exception name. The " "variable is bound to an exception instance with the arguments stored in " "``instance.args``. For convenience, the exception instance defines :meth:" "`__str__` so the arguments can be printed directly without having to " @@ -302,7 +318,7 @@ msgstr "" "possible de construire une exception, y ajouter ses attributs, puis la lever " "plus tard. ::" -#: tutorial/errors.rst:216 +#: tutorial/errors.rst:219 msgid "" "If an exception has arguments, they are printed as the last part ('detail') " "of the message for unhandled exceptions." @@ -310,22 +326,23 @@ msgstr "" "Si une exception a un argument, il est affiché dans la dernière partie du " "message des exceptions non gérées." -#: tutorial/errors.rst:219 +#: tutorial/errors.rst:222 +#, fuzzy msgid "" "Exception handlers don't just handle exceptions if they occur immediately in " -"the try clause, but also if they occur inside functions that are called " -"(even indirectly) in the try clause. For example::" +"the *try clause*, but also if they occur inside functions that are called " +"(even indirectly) in the *try clause*. For example::" msgstr "" "Les gestionnaires d'exceptions n'interceptent pas que les exceptions qui " "sont levées immédiatement dans leur clause ``try``, mais aussi celles qui " "sont levées au sein de fonctions appelées (parfois indirectement) dans la " "clause ``try``. Par exemple ::" -#: tutorial/errors.rst:237 +#: tutorial/errors.rst:240 msgid "Raising Exceptions" msgstr "Déclencher des exceptions" -#: tutorial/errors.rst:239 +#: tutorial/errors.rst:242 msgid "" "The :keyword:`raise` statement allows the programmer to force a specified " "exception to occur. For example::" @@ -333,7 +350,7 @@ msgstr "" "L'instruction :keyword:`raise` permet au programmeur de déclencher une " "exception spécifique. Par exemple ::" -#: tutorial/errors.rst:247 +#: tutorial/errors.rst:250 msgid "" "The sole argument to :keyword:`raise` indicates the exception to be raised. " "This must be either an exception instance or an exception class (a class " @@ -346,7 +363,7 @@ msgstr "" "classe dérivée de :class:`Exception`). Si une classe est donnée, elle est " "implicitement instanciée *via* l'appel de son constructeur, sans argument ::" -#: tutorial/errors.rst:254 +#: tutorial/errors.rst:257 msgid "" "If you need to determine whether an exception was raised but don't intend to " "handle it, a simpler form of the :keyword:`raise` statement allows you to re-" @@ -356,11 +373,11 @@ msgstr "" "n'avez pas intention de la gérer, une forme plus simple de l'instruction :" "keyword:`raise` permet de propager l'exception ::" -#: tutorial/errors.rst:273 +#: tutorial/errors.rst:276 msgid "Exception Chaining" msgstr "Chaînage d'exceptions" -#: tutorial/errors.rst:275 +#: tutorial/errors.rst:278 msgid "" "The :keyword:`raise` statement allows an optional :keyword:`from` " "which enables chaining exceptions. For example::" @@ -368,33 +385,34 @@ msgstr "" "L'instruction :keyword:`raise` autorise un :keyword:`from` optionnel " "qui permet de chaîner les exceptions. Par exemple ::" -#: tutorial/errors.rst:281 +#: tutorial/errors.rst:284 msgid "This can be useful when you are transforming exceptions. For example::" msgstr "" "Cela peut être utile lorsque vous transformez des exceptions. Par exemple ::" -#: tutorial/errors.rst:302 +#: tutorial/errors.rst:305 +#, fuzzy msgid "" "Exception chaining happens automatically when an exception is raised inside " -"an :keyword:`except` or :keyword:`finally` section. Exception chaining can " -"be disabled by using ``from None`` idiom:" +"an :keyword:`except` or :keyword:`finally` section. This can be disabled by " +"using ``from None`` idiom:" msgstr "" "Le chaînage d'exceptions se produit automatiquement lorsqu'une exception est " "levée dans une section :keyword:`except` ou :keyword:`finally`. Le chaînage " "d'exceptions peut être désactivé en utilisant l'idiome ``from None`` :" -#: tutorial/errors.rst:315 +#: tutorial/errors.rst:318 msgid "" "For more information about chaining mechanics, see :ref:`bltin-exceptions`." msgstr "" "Pour plus d'informations sur les mécanismes de chaînage, voir :ref:`bltin-" "exceptions`." -#: tutorial/errors.rst:321 +#: tutorial/errors.rst:324 msgid "User-defined Exceptions" msgstr "Exceptions définies par l'utilisateur" -#: tutorial/errors.rst:323 +#: tutorial/errors.rst:326 msgid "" "Programs may name their own exceptions by creating a new exception class " "(see :ref:`tut-classes` for more about Python classes). Exceptions should " @@ -406,7 +424,7 @@ msgstr "" "les classes de Python). Les exceptions sont typiquement dérivées de la " "classe :exc:`Exception`, directement ou non." -#: tutorial/errors.rst:327 +#: tutorial/errors.rst:330 msgid "" "Exception classes can be defined which do anything any other class can do, " "but are usually kept simple, often only offering a number of attributes that " @@ -425,7 +443,7 @@ msgstr "" "exceptions définies dans ce module et de créer des sous-classes spécifiques " "d'exceptions pour les différentes conditions d'erreurs ::" -#: tutorial/errors.rst:365 +#: tutorial/errors.rst:368 msgid "" "Most exceptions are defined with names that end in \"Error\", similar to the " "naming of the standard exceptions." @@ -433,7 +451,7 @@ msgstr "" "La plupart des exceptions sont définies avec des noms qui se terminent par " "\"Error\", comme les exceptions standards." -#: tutorial/errors.rst:368 +#: tutorial/errors.rst:371 msgid "" "Many standard modules define their own exceptions to report errors that may " "occur in functions they define. More information on classes is presented in " @@ -444,11 +462,11 @@ msgstr "" "d'informations sur les classes sont présentées dans le chapitre :ref:`tut-" "classes`." -#: tutorial/errors.rst:376 +#: tutorial/errors.rst:379 msgid "Defining Clean-up Actions" msgstr "Définition d'actions de nettoyage" -#: tutorial/errors.rst:378 +#: tutorial/errors.rst:381 msgid "" "The :keyword:`try` statement has another optional clause which is intended " "to define clean-up actions that must be executed under all circumstances. " @@ -458,7 +476,7 @@ msgstr "" "à définir des actions de nettoyage devant être exécutées dans certaines " "circonstances. Par exemple ::" -#: tutorial/errors.rst:392 +#: tutorial/errors.rst:395 msgid "" "If a :keyword:`finally` clause is present, the :keyword:`!finally` clause " "will execute as the last task before the :keyword:`try` statement completes. " @@ -472,7 +490,7 @@ msgstr "" "exception ou non. Les prochains points parlent de cas plus complexes " "lorsqu'une exception apparait :" -#: tutorial/errors.rst:398 +#: tutorial/errors.rst:401 msgid "" "If an exception occurs during execution of the :keyword:`!try` clause, the " "exception may be handled by an :keyword:`except` clause. If the exception is " @@ -484,7 +502,7 @@ msgstr "" "n'est pas récupérée par une clause :keyword:`!except`, l'exception est levée " "à nouveau après que la clause :keyword:`!finally` a été exécutée." -#: tutorial/errors.rst:404 +#: tutorial/errors.rst:407 msgid "" "An exception could occur during execution of an :keyword:`!except` or :" "keyword:`!else` clause. Again, the exception is re-raised after the :keyword:" @@ -494,7 +512,7 @@ msgstr "" "except` ou :keyword:`!else`. Encore une fois, l'exception est reprise après " "que la clause :keyword:`!finally` a été exécutée." -#: tutorial/errors.rst:408 +#: tutorial/errors.rst:411 msgid "" "If the :keyword:`!finally` clause executes a :keyword:`break`, :keyword:" "`continue` or :keyword:`return` statement, exceptions are not re-raised." @@ -503,7 +521,7 @@ msgstr "" "instruction :keyword:`break`, :keyword:`continue` ou :keyword:`return`, " "alors les exceptions ne sont pas reprises." -#: tutorial/errors.rst:412 +#: tutorial/errors.rst:415 msgid "" "If the :keyword:`!try` statement reaches a :keyword:`break`, :keyword:" "`continue` or :keyword:`return` statement, the :keyword:`!finally` clause " @@ -515,7 +533,7 @@ msgstr "" "keyword:`!finally` s'exécute juste avant l'exécution de :keyword:`!break`, :" "keyword:`!continue` ou :keyword:`!return`." -#: tutorial/errors.rst:418 +#: tutorial/errors.rst:421 msgid "" "If a :keyword:`!finally` clause includes a :keyword:`!return` statement, the " "returned value will be the one from the :keyword:`!finally` clause's :" @@ -527,15 +545,15 @@ msgstr "" "keyword:`!finally`, et non la valeur du :keyword:`!return` de la clause :" "keyword:`!try`." -#: tutorial/errors.rst:424 +#: tutorial/errors.rst:427 msgid "For example::" msgstr "Par exemple ::" -#: tutorial/errors.rst:435 +#: tutorial/errors.rst:438 msgid "A more complicated example::" msgstr "Un exemple plus compliqué ::" -#: tutorial/errors.rst:460 +#: tutorial/errors.rst:463 msgid "" "As you can see, the :keyword:`finally` clause is executed in any event. " "The :exc:`TypeError` raised by dividing two strings is not handled by the :" @@ -548,7 +566,7 @@ msgstr "" "`except` et est donc propagée après que la clause :keyword:`!finally` a été " "exécutée." -#: tutorial/errors.rst:465 +#: tutorial/errors.rst:468 msgid "" "In real world applications, the :keyword:`finally` clause is useful for " "releasing external resources (such as files or network connections), " @@ -558,11 +576,11 @@ msgstr "" "utile pour libérer des ressources externes (telles que des fichiers ou des " "connexions réseau), quelle qu'ait été l'utilisation de ces ressources." -#: tutorial/errors.rst:473 +#: tutorial/errors.rst:476 msgid "Predefined Clean-up Actions" msgstr "Actions de nettoyage prédéfinies" -#: tutorial/errors.rst:475 +#: tutorial/errors.rst:478 msgid "" "Some objects define standard clean-up actions to be undertaken when the " "object is no longer needed, regardless of whether or not the operation using " @@ -574,7 +592,7 @@ msgstr "" "que l'opération ayant utilisé l'objet ait réussi ou non. Regardez l'exemple " "suivant, qui tente d'ouvrir un fichier et d'afficher son contenu à l'écran ::" -#: tutorial/errors.rst:483 +#: tutorial/errors.rst:486 msgid "" "The problem with this code is that it leaves the file open for an " "indeterminate amount of time after this part of the code has finished " @@ -590,7 +608,7 @@ msgstr "" "objets comme des fichiers d'une façon qui assure qu'ils seront toujours " "nettoyés rapidement et correctement. ::" -#: tutorial/errors.rst:493 +#: tutorial/errors.rst:496 msgid "" "After the statement is executed, the file *f* is always closed, even if a " "problem was encountered while processing the lines. Objects which, like " diff --git a/tutorial/floatingpoint.po b/tutorial/floatingpoint.po index 8fd428921..6ed795242 100644 --- a/tutorial/floatingpoint.po +++ b/tutorial/floatingpoint.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-05-21 16:45+0200\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -299,9 +299,10 @@ msgstr "" "représenté exactement)." #: tutorial/floatingpoint.rst:160 +#, fuzzy msgid "" "If you are a heavy user of floating point operations you should take a look " -"at the Numerical Python package and many other packages for mathematical and " +"at the NumPy package and many other packages for mathematical and " "statistical operations supplied by the SciPy project. See ." msgstr "" diff --git a/tutorial/index.po b/tutorial/index.po index 3bb47718d..7881ac4e7 100644 --- a/tutorial/index.po +++ b/tutorial/index.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-01-27 23:09+0100\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -36,10 +36,11 @@ msgstr "" "plateformes." #: tutorial/index.rst:13 +#, fuzzy msgid "" "The Python interpreter and the extensive standard library are freely " "available in source or binary form for all major platforms from the Python " -"Web site, https://www.python.org/, and may be freely distributed. The same " +"web site, https://www.python.org/, and may be freely distributed. The same " "site also contains distributions of and pointers to many free third party " "Python modules, programs and tools, and additional documentation." msgstr "" diff --git a/tutorial/interpreter.po b/tutorial/interpreter.po index cf8201ddf..7fbee859d 100644 --- a/tutorial/interpreter.po +++ b/tutorial/interpreter.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-08-27 11:32+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -24,9 +24,10 @@ msgid "Invoking the Interpreter" msgstr "Lancement de l'interpréteur" #: tutorial/interpreter.rst:13 +#, fuzzy msgid "" "The Python interpreter is usually installed as :file:`/usr/local/bin/" -"python3.9` on those machines where it is available; putting :file:`/usr/" +"python3.10` on those machines where it is available; putting :file:`/usr/" "local/bin` in your Unix shell's search path makes it possible to start it by " "typing the command:" msgstr "" @@ -48,9 +49,10 @@ msgstr "" "file:`/usr/local/python` est un endroit courant)." #: tutorial/interpreter.rst:26 +#, fuzzy msgid "" "On Windows machines where you have installed Python from the :ref:`Microsoft " -"Store `, the :file:`python3.9` command will be available. If " +"Store `, the :file:`python3.10` command will be available. If " "you have the :ref:`py.exe launcher ` installed, you can use the :" "file:`py` command. See :ref:`setting-envvars` for other ways to launch " "Python." diff --git a/tutorial/introduction.po b/tutorial/introduction.po index c7cd2733e..1f4362a15 100644 --- a/tutorial/introduction.po +++ b/tutorial/introduction.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-04-27 22:51+0200\n" "Last-Translator: pierre choffe \n" "Language-Team: FRENCH \n" @@ -326,14 +326,6 @@ msgstr "" #: tutorial/introduction.rst:272 msgid "" -"Note how the start is always included, and the end always excluded. This " -"makes sure that ``s[:i] + s[i:]`` is always equal to ``s``::" -msgstr "" -"Notez que le début est toujours inclus et la fin toujours exclue. Cela " -"assure que ``s[:i] + s[i:]`` est toujours égal à ``s`` ::" - -#: tutorial/introduction.rst:280 -msgid "" "Slice indices have useful defaults; an omitted first index defaults to zero, " "an omitted second index defaults to the size of the string being sliced. ::" msgstr "" @@ -341,6 +333,14 @@ msgstr "" "indice vaut zéro par défaut (c.-à-d. lorsqu'il est omis), le deuxième " "correspond par défaut à la taille de la chaîne de caractères ::" +#: tutorial/introduction.rst:282 +msgid "" +"Note how the start is always included, and the end always excluded. This " +"makes sure that ``s[:i] + s[i:]`` is always equal to ``s``::" +msgstr "" +"Notez que le début est toujours inclus et la fin toujours exclue. Cela " +"assure que ``s[:i] + s[i:]`` est toujours égal à ``s`` ::" + #: tutorial/introduction.rst:290 msgid "" "One way to remember how slices work is to think of the indices as pointing " diff --git a/tutorial/modules.po b/tutorial/modules.po index 04303a650..08d1cee1a 100644 --- a/tutorial/modules.po +++ b/tutorial/modules.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-04-27 22:54+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -770,11 +770,11 @@ msgstr "" "que le module qui fait les importations ait besoin de sous-modules ayant le " "même nom mais provenant de paquets différents." -#: tutorial/modules.rst:537 +#: tutorial/modules.rst:539 msgid "Intra-package References" msgstr "Références internes dans un paquet" -#: tutorial/modules.rst:539 +#: tutorial/modules.rst:541 msgid "" "When packages are structured into subpackages (as with the :mod:`sound` " "package in the example), you can use absolute imports to refer to submodules " @@ -788,7 +788,7 @@ msgstr "" "vocoder` a besoin du module :mod:`echo` du paquet :mod:`sound.effects`, il " "peut utiliser ``from sound.effects import echo``." -#: tutorial/modules.rst:545 +#: tutorial/modules.rst:547 msgid "" "You can also write relative imports, with the ``from module import name`` " "form of import statement. These imports use leading dots to indicate the " @@ -800,7 +800,7 @@ msgstr "" "points pour indiquer leur origine (paquet courant ou parent). Depuis le " "module :mod:`surround`, par exemple vous pouvez écrire ::" -#: tutorial/modules.rst:554 +#: tutorial/modules.rst:556 msgid "" "Note that relative imports are based on the name of the current module. " "Since the name of the main module is always ``\"__main__\"``, modules " @@ -812,11 +812,11 @@ msgstr "" "modules utilisés par le module principal d'une application ne peuvent être " "importés que par des importations absolues." -#: tutorial/modules.rst:560 +#: tutorial/modules.rst:562 msgid "Packages in Multiple Directories" msgstr "Paquets dans plusieurs dossiers" -#: tutorial/modules.rst:562 +#: tutorial/modules.rst:564 msgid "" "Packages support one more special attribute, :attr:`__path__`. This is " "initialized to be a list containing the name of the directory holding the " @@ -830,7 +830,7 @@ msgstr "" "peut être modifiée, altérant ainsi les futures recherches de modules et sous-" "paquets contenus dans le paquet." -#: tutorial/modules.rst:568 +#: tutorial/modules.rst:570 msgid "" "While this feature is not often needed, it can be used to extend the set of " "modules found in a package." @@ -838,11 +838,11 @@ msgstr "" "Bien que cette fonctionnalité ne soit que rarement utile, elle peut servir à " "élargir la liste des modules trouvés dans un paquet." -#: tutorial/modules.rst:573 +#: tutorial/modules.rst:575 msgid "Footnotes" msgstr "Notes" -#: tutorial/modules.rst:574 +#: tutorial/modules.rst:576 msgid "" "In fact function definitions are also 'statements' that are 'executed'; the " "execution of a module-level function definition enters the function name in " diff --git a/tutorial/stdlib.po b/tutorial/stdlib.po index 07d911675..7a820bc45 100644 --- a/tutorial/stdlib.po +++ b/tutorial/stdlib.po @@ -8,7 +8,7 @@ msgstr "" "POT-Creation-Date: 2020-08-24 09:01+0200\n" "PO-Revision-Date: 2019-12-13 12:14+0100\n" "Last-Translator: Loc Cosnier \n" -"Language-Team: \n" +"Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff --git a/tutorial/venv.po b/tutorial/venv.po index acec6a503..8a21b5803 100644 --- a/tutorial/venv.po +++ b/tutorial/venv.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-12-12 15:21+0100\n" "Last-Translator: Vincent Poulailleau \n" "Language-Team: FRENCH \n" @@ -107,10 +107,11 @@ msgstr "" "dossier ::" #: tutorial/venv.rst:49 +#, fuzzy msgid "" "This will create the ``tutorial-env`` directory if it doesn't exist, and " "also create directories inside it containing a copy of the Python " -"interpreter, the standard library, and various supporting files." +"interpreter and various supporting files." msgstr "" "Cela crée le dossier ``tutorial-env`` (s'il n'existe pas) et des sous-" "dossiers contenant une copie de l'interpréteur Python, de la bibliothèque " diff --git a/tutorial/whatnow.po b/tutorial/whatnow.po index d395a4867..2ac011936 100644 --- a/tutorial/whatnow.po +++ b/tutorial/whatnow.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-05-23 23:43+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -84,10 +84,11 @@ msgid "More Python resources:" msgstr "D'autres ressources :" #: tutorial/whatnow.rst:33 +#, fuzzy msgid "" -"https://www.python.org: The major Python Web site. It contains code, " -"documentation, and pointers to Python-related pages around the Web. This " -"Web site is mirrored in various places around the world, such as Europe, " +"https://www.python.org: The major Python web site. It contains code, " +"documentation, and pointers to Python-related pages around the web. This " +"web site is mirrored in various places around the world, such as Europe, " "Japan, and Australia; a mirror may be faster than the main site, depending " "on your geographical location." msgstr "" diff --git a/using/cmdline.po b/using/cmdline.po index 0c6d66fdf..be1ad112d 100644 --- a/using/cmdline.po +++ b/using/cmdline.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-19 16:59+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2020-08-27 10:39+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -603,7 +603,7 @@ msgstr "" "N'ajoute pas le répertoire utilisateur :data:`site-packages ` à :data:`sys.path`." -#: using/cmdline.rst:688 using/cmdline.rst:700 +#: using/cmdline.rst:705 using/cmdline.rst:717 msgid ":pep:`370` -- Per user site-packages directory" msgstr ":pep:`370` -- Répertoire site-packages propre à l'utilisateur" @@ -638,12 +638,12 @@ msgstr "" "maintenant plus de tampon." #: using/cmdline.rst:368 +#, fuzzy msgid "" "Print a message each time a module is initialized, showing the place " "(filename or built-in module) from which it is loaded. When given twice (:" "option:`!-vv`), print a message for each file that is checked for when " -"searching for a module. Also provides information on module cleanup at " -"exit. See also :envvar:`PYTHONVERBOSE`." +"searching for a module. Also provides information on module cleanup at exit." msgstr "" "Affiche un message chaque fois qu'un module est initialisé, montrant " "l'emplacement (nom du fichier ou module natif) à partir duquel il est " @@ -652,29 +652,96 @@ msgstr "" "des informations sur le nettoyage des modules à la fin. Voir aussi :envvar:" "`PYTHONVERBOSE`." -#: using/cmdline.rst:378 +#: using/cmdline.rst:373 msgid "" -"Warning control. Python's warning machinery by default prints warning " -"messages to :data:`sys.stderr`. A typical warning message has the following " -"form:" +"The :mod:`site` module reports the site-specific paths and :file:`.pth` " +"files being processed." +msgstr "" + +#: using/cmdline.rst:377 +#, fuzzy +msgid "See also :envvar:`PYTHONVERBOSE`." +msgstr "Voir aussi :envvar:`PYTHONUNBUFFERED`." + +#: using/cmdline.rst:383 +#, fuzzy +msgid "" +"Warning control. Python's warning machinery by default prints warning " +"messages to :data:`sys.stderr`." msgstr "" "Contrôle des avertissements. Le mécanisme d'avertissement de Python, par " "défaut, affiche les messages d'avertissement sur :data:`sys.stderr`. Un " "message d'avertissement type est de la forme suivante :" -#: using/cmdline.rst:386 +#: using/cmdline.rst:733 +msgid "" +"The simplest settings apply a particular action unconditionally to all " +"warnings emitted by a process (even those that are otherwise ignored by " +"default)::" +msgstr "" +"Les configurations les plus simples forcent l'application de l'action à tous " +"les avertissements émis par un processus (même ceux qui auraient été ignorés " +"par défaut) ::" + +#: using/cmdline.rst:397 +#, fuzzy +msgid "" +"The action names can be abbreviated as desired and the interpreter will " +"resolve them to the appropriate action name. For example, ``-Wi`` is the " +"same as ``-Wignore``." +msgstr "" +"Les noms des actions peuvent être abrégés à votre convenance (par exemple. " +"``-Wi``, ``-Wd``, ``-Wa``, ``-We``), l'interpréteur fait la résolution vers " +"le nom adéquat." + +#: using/cmdline.rst:401 +msgid "The full form of argument is::" +msgstr "" + +#: using/cmdline.rst:405 msgid "" -"By default, each warning is printed once for each source line where it " -"occurs. This option controls how often warnings are printed." +"Empty fields match all values; trailing empty fields may be omitted. For " +"example ``-W ignore::DeprecationWarning`` ignores all DeprecationWarning " +"warnings." msgstr "" -"Par défaut, chaque avertissement est affiché une seule fois pour chaque " -"ligne de source où il se trouve. Cette option définit à quelle fréquence " -"afficher ces avertissements." -#: using/cmdline.rst:389 +#: using/cmdline.rst:409 msgid "" -"Multiple :option:`-W` options may be given; when a warning matches more than " -"one option, the action for the last matching option is performed. Invalid :" +"The *action* field is as explained above but only applies to warnings that " +"match the remaining fields." +msgstr "" + +#: using/cmdline.rst:412 +msgid "" +"The *message* field must match the whole warning message; this match is case-" +"insensitive." +msgstr "" + +#: using/cmdline.rst:415 +msgid "" +"The *category* field matches the warning category (ex: " +"``DeprecationWarning``). This must be a class name; the match test whether " +"the actual warning category of the message is a subclass of the specified " +"warning category." +msgstr "" + +#: using/cmdline.rst:420 +msgid "" +"The *module* field matches the (fully-qualified) module name; this match is " +"case-sensitive." +msgstr "" + +#: using/cmdline.rst:423 +msgid "" +"The *lineno* field matches the line number, where zero matches all line " +"numbers and is thus equivalent to an omitted line number." +msgstr "" + +#: using/cmdline.rst:426 +#, fuzzy +msgid "" +"Multiple :option:`-W` options can be given; when a warning matches more than " +"one option, the action for the last matching option is performed. Invalid :" "option:`-W` options are ignored (though, a warning message is printed about " "invalid options when the first warning is issued)." msgstr "" @@ -684,37 +751,19 @@ msgstr "" "message d'avertissement est affiché sur les options invalides au moment où " "le premier avertissement est généré)." -#: using/cmdline.rst:394 +#: using/cmdline.rst:431 +#, fuzzy msgid "" "Warnings can also be controlled using the :envvar:`PYTHONWARNINGS` " "environment variable and from within a Python program using the :mod:" -"`warnings` module." +"`warnings` module. For example, the :func:`warnings.filterwarnings` function " +"can be used to use a regular expression on the warning message." msgstr "" "Les avertissements peuvent aussi être contrôlés en utilisant la variable " "d'environnement :envvar:`PYTHONWARNINGS` et depuis un programme Python en " "utilisant le module :mod:`warnings`." -#: using/cmdline.rst:716 -msgid "" -"The simplest settings apply a particular action unconditionally to all " -"warnings emitted by a process (even those that are otherwise ignored by " -"default)::" -msgstr "" -"Les configurations les plus simples forcent l'application de l'action à tous " -"les avertissements émis par un processus (même ceux qui auraient été ignorés " -"par défaut) ::" - -#: using/cmdline.rst:409 -msgid "" -"The action names can be abbreviated as desired (e.g. ``-Wi``, ``-Wd``, ``-" -"Wa``, ``-We``) and the interpreter will resolve them to the appropriate " -"action name." -msgstr "" -"Les noms des actions peuvent être abrégés à votre convenance (par exemple. " -"``-Wi``, ``-Wd``, ``-Wa``, ``-We``), l'interpréteur fait la résolution vers " -"le nom adéquat." - -#: using/cmdline.rst:727 +#: using/cmdline.rst:744 msgid "" "See :ref:`warning-filter` and :ref:`describing-warning-filters` for more " "details." @@ -722,7 +771,7 @@ msgstr "" "Voir :ref:`warning-filter` et :ref:`describing-warning-filters` pour plus " "de détails." -#: using/cmdline.rst:419 +#: using/cmdline.rst:441 msgid "" "Skip the first line of the source, allowing use of non-Unix forms of ``#!" "cmd``. This is intended for a DOS specific hack only." @@ -731,7 +780,7 @@ msgstr "" "type ``#!cmd`` non conformes au standard Unix. L'objectif est de proposer " "une astuce spécifique pour le DOS." -#: using/cmdline.rst:425 +#: using/cmdline.rst:447 msgid "" "Reserved for various implementation-specific options. CPython currently " "defines the following possible values:" @@ -739,30 +788,24 @@ msgstr "" "Réservée pour les options spécifiques aux différentes implémentations. " "CPython reconnaît actuellement les valeurs suivantes :" -#: using/cmdline.rst:428 +#: using/cmdline.rst:450 msgid "``-X faulthandler`` to enable :mod:`faulthandler`;" msgstr "``-X faulthandler`` pour activer :mod:`faulthandler` ;" -#: using/cmdline.rst:429 -msgid "" -"``-X oldparser``: enable the traditional LL(1) parser. See also :envvar:" -"`PYTHONOLDPARSER` and :pep:`617`." -msgstr "" -"``-X oldparser`` : active l'analyseur syntaxique LL(1) traditionnel. Voir " -"aussi :envvar:`PYTHONOLDPARSER` et :pep:`617`." - -#: using/cmdline.rst:431 +#: using/cmdline.rst:451 +#, fuzzy msgid "" "``-X showrefcount`` to output the total reference count and number of used " "memory blocks when the program finishes or after each statement in the " -"interactive interpreter. This only works on debug builds." +"interactive interpreter. This only works on :ref:`debug builds `." msgstr "" "``-X showrefcount`` pour afficher le compteur des références et le nombre de " "blocs mémoire utilisés lorsque le programme se termine ou après chaque " "entrée de l'interpréteur interactif. Ceci ne fonctionne que sur les versions " "compilées en mode débogage." -#: using/cmdline.rst:434 +#: using/cmdline.rst:455 msgid "" "``-X tracemalloc`` to start tracing Python memory allocations using the :mod:" "`tracemalloc` module. By default, only the most recent frame is stored in a " @@ -777,7 +820,7 @@ msgstr "" "limite des traces à *NFRAME* appels. Voir :func:`tracemalloc.start` pour " "plus d'informations." -#: using/cmdline.rst:439 +#: using/cmdline.rst:460 msgid "" "``-X importtime`` to show how long each import takes. It shows module name, " "cumulative time (including nested imports) and self time (excluding nested " @@ -793,7 +836,7 @@ msgstr "" "``python3 -X importtime -c 'import asyncio'``. Voir aussi :envvar:" "`PYTHONPROFILEIMPORTTIME`." -#: using/cmdline.rst:444 +#: using/cmdline.rst:465 msgid "" "``-X dev``: enable :ref:`Python Development Mode `, introducing " "additional runtime checks that are too expensive to be enabled by default." @@ -802,12 +845,12 @@ msgstr "" "rajoutant des vérifications additionnelles durant l'exécution qui sont trop " "lourdes pour être activées par défaut." -#: using/cmdline.rst:447 +#: using/cmdline.rst:468 +#, fuzzy msgid "" -"``-X utf8`` enables UTF-8 mode for operating system interfaces, overriding " -"the default locale-aware mode. ``-X utf8=0`` explicitly disables UTF-8 mode " -"(even when it would otherwise activate automatically). See :envvar:" -"`PYTHONUTF8` for more details." +"``-X utf8`` enables the :ref:`Python UTF-8 Mode `. ``-X utf8=0`` " +"explicitly disables :ref:`Python UTF-8 Mode ` (even when it would " +"otherwise activate automatically)." msgstr "" "``-X utf8`` active le mode UTF-8 pour les interfaces avec le système " "d'exploitation, prenant le dessus sur le mode par défaut qui s'appuie sur la " @@ -815,7 +858,7 @@ msgstr "" "(même s'il avait du s'activer automatiquement). Voir :envvar:`PYTHONUTF8` " "pour plus de détails." -#: using/cmdline.rst:451 +#: using/cmdline.rst:471 msgid "" "``-X pycache_prefix=PATH`` enables writing ``.pyc`` files to a parallel tree " "rooted at the given directory instead of to the code tree. See also :envvar:" @@ -825,7 +868,14 @@ msgstr "" "partir du chemin donné au lieu de l'arborescence du code source. Voir aussi :" "envvar:`PYTHONPYCACHEPREFIX`." -#: using/cmdline.rst:455 +#: using/cmdline.rst:474 +msgid "" +"``-X warn_default_encoding`` issues a :class:`EncodingWarning` when the " +"locale-specific default encoding is used for opening files. See also :envvar:" +"`PYTHONWARNDEFAULTENCODING`." +msgstr "" + +#: using/cmdline.rst:478 msgid "" "It also allows passing arbitrary values and retrieving them through the :" "data:`sys._xoptions` dictionary." @@ -833,27 +883,27 @@ msgstr "" "Il est aussi possible de passer des valeurs arbitraires et de les récupérer " "par le dictionnaire :data:`sys._xoptions`." -#: using/cmdline.rst:458 +#: using/cmdline.rst:481 msgid "The :option:`-X` option was added." msgstr "L'option :option:`-X` a été ajoutée." -#: using/cmdline.rst:461 +#: using/cmdline.rst:484 msgid "The ``-X faulthandler`` option." msgstr "L'option ``-X faulthandler``." -#: using/cmdline.rst:464 +#: using/cmdline.rst:487 msgid "The ``-X showrefcount`` and ``-X tracemalloc`` options." msgstr "Les options ``-X showrefcount`` et ``-X tracemalloc`` ." -#: using/cmdline.rst:467 +#: using/cmdline.rst:490 msgid "The ``-X showalloccount`` option." msgstr "L'option ``-X showalloccount``." -#: using/cmdline.rst:470 +#: using/cmdline.rst:493 msgid "The ``-X importtime``, ``-X dev`` and ``-X utf8`` options." msgstr "Les options ``-X importtime``, ``-X dev`` et ``-X utf8``." -#: using/cmdline.rst:473 +#: using/cmdline.rst:496 msgid "" "The ``-X pycache_prefix`` option. The ``-X dev`` option now logs ``close()`` " "exceptions in :class:`io.IOBase` destructor." @@ -862,7 +912,7 @@ msgstr "" "des exceptions ``close()`` dans le destructeur de la classe :class:`io." "IOBase`." -#: using/cmdline.rst:477 +#: using/cmdline.rst:500 msgid "" "Using ``-X dev`` option, check *encoding* and *errors* arguments on string " "encoding and decoding operations." @@ -871,27 +921,32 @@ msgstr "" "*encoding* et *errors* sur les opérations d'encodage et de décodage des " "chaînes de caractères." -#: using/cmdline.rst:481 +#: using/cmdline.rst:504 msgid "The ``-X showalloccount`` option has been removed." msgstr "L'option ``-X showalloccount`` a été supprimée." -#: using/cmdline.rst:484 +#: using/cmdline.rst:506 +#, fuzzy +msgid "The ``-X warn_default_encoding`` option." +msgstr "L'option ``-X faulthandler``." + +#: using/cmdline.rst:510 msgid "The ``-X oldparser`` option." msgstr "L'option ``-X oldparser``." -#: using/cmdline.rst:488 +#: using/cmdline.rst:514 msgid "Options you shouldn't use" msgstr "Options à ne pas utiliser" -#: using/cmdline.rst:492 +#: using/cmdline.rst:518 msgid "Reserved for use by Jython_." msgstr "Utilisation réservée à Jython_." -#: using/cmdline.rst:500 +#: using/cmdline.rst:526 msgid "Environment variables" msgstr "Variables d'environnement" -#: using/cmdline.rst:502 +#: using/cmdline.rst:528 msgid "" "These environment variables influence Python's behavior, they are processed " "before the command-line switches other than -E or -I. It is customary that " @@ -903,7 +958,7 @@ msgstr "" "E* ou *-I*. Il est d'usage que les options de la ligne de commande prennent " "le pas sur les variables d'environnement en cas de conflit." -#: using/cmdline.rst:509 +#: using/cmdline.rst:535 msgid "" "Change the location of the standard Python libraries. By default, the " "libraries are searched in :file:`{prefix}/lib/python{version}` and :file:" @@ -917,7 +972,7 @@ msgstr "" "`{préfixe_exec}` sont des répertoires qui dépendent de l'installation (leur " "valeur par défaut étant :file:`/usr/local`)." -#: using/cmdline.rst:515 +#: using/cmdline.rst:541 msgid "" "When :envvar:`PYTHONHOME` is set to a single directory, its value replaces " "both :file:`{prefix}` and :file:`{exec_prefix}`. To specify different " @@ -928,7 +983,7 @@ msgstr "" "spécifier des valeurs différentes à ces variables, définissez :envvar:" "`PYTHONHOME` à :file:`{préfixe}:{préfixe_exec}`." -#: using/cmdline.rst:522 +#: using/cmdline.rst:548 msgid "" "Augment the default search path for module files. The format is the same as " "the shell's :envvar:`PATH`: one or more directory pathnames separated by :" @@ -941,7 +996,7 @@ msgstr "" "caractère deux-points sous Unix et point-virgule sous Windows). Les " "répertoires qui n'existent pas sont ignorés silencieusement." -#: using/cmdline.rst:527 +#: using/cmdline.rst:553 msgid "" "In addition to normal directories, individual :envvar:`PYTHONPATH` entries " "may refer to zipfiles containing pure Python modules (in either source or " @@ -953,7 +1008,7 @@ msgstr "" "compilée). Les modules d'extensions ne peuvent pas être importés à partir de " "fichiers zip." -#: using/cmdline.rst:531 +#: using/cmdline.rst:557 msgid "" "The default search path is installation dependent, but generally begins " "with :file:`{prefix}/lib/python{version}` (see :envvar:`PYTHONHOME` above). " @@ -963,7 +1018,7 @@ msgstr "" "généralement par :file:`{préfixe}/lib/python{version}` (voir :envvar:" "`PYTHONHOME` ci-dessus). Il est *toujours* ajouté à :envvar:`PYTHONPATH`." -#: using/cmdline.rst:535 +#: using/cmdline.rst:561 msgid "" "An additional directory will be inserted in the search path in front of :" "envvar:`PYTHONPATH` as described above under :ref:`using-on-interface-" @@ -975,7 +1030,7 @@ msgstr "" "envvar:`PYTHONPATH`. Le chemin de recherche peut être manipulé depuis un " "programme Python avec la variable :data:`sys.path`." -#: using/cmdline.rst:543 +#: using/cmdline.rst:569 msgid "" "If this is set to a non-empty string, it overrides the :data:`sys." "platlibdir` value." @@ -983,7 +1038,7 @@ msgstr "" "Si elle est définie à une chaîne non vide, elle remplace la valeur de :data:" "`sys.platlibdir`." -#: using/cmdline.rst:551 +#: using/cmdline.rst:577 msgid "" "If this is the name of a readable file, the Python commands in that file are " "executed before the first prompt is displayed in interactive mode. The file " @@ -1002,7 +1057,7 @@ msgstr "" "`sys.ps2` ainsi que le point d'entrée (*hook* en anglais) :data:`sys." "__interactivehook__` dans ce fichier." -#: using/cmdline.rst:558 +#: using/cmdline.rst:584 msgid "" "Raises an :ref:`auditing event ` ``cpython.run_startup`` with " "argument ``filename``." @@ -1010,7 +1065,7 @@ msgstr "" "Lève un :ref:`évènement d'audit ` ``cpython.run_startup`` avec " "comme argument ``filename``." -#: using/cmdline.rst:560 +#: using/cmdline.rst:586 msgid "" "Raises an :ref:`auditing event ` ``cpython.run_startup`` with the " "filename as the argument when called on startup." @@ -1018,7 +1073,7 @@ msgstr "" "Lève un :ref:`évènement d'audit ` ``cpython.run_startup`` avec le " "nom du fichier en argument lorsqu'il est lancé au démarrage." -#: using/cmdline.rst:566 +#: using/cmdline.rst:592 msgid "" "If this is set to a non-empty string it is equivalent to specifying the :" "option:`-O` option. If set to an integer, it is equivalent to specifying :" @@ -1028,7 +1083,7 @@ msgstr "" "l'option :option:`-O`. Si elle est définie à un entier, c'est équivalent à " "spécifier l'option :option:`-O` plusieurs fois." -#: using/cmdline.rst:573 +#: using/cmdline.rst:599 msgid "" "If this is set, it names a callable using dotted-path notation. The module " "containing the callable will be imported and then the callable will be run " @@ -1047,7 +1102,7 @@ msgstr "" "la chaîne \"0\" entraine que l'implémentation par défaut de :func:`sys." "breakpointhook` ne fait rien et s'interrompt immédiatement." -#: using/cmdline.rst:585 +#: using/cmdline.rst:611 msgid "" "If this is set to a non-empty string it is equivalent to specifying the :" "option:`-d` option. If set to an integer, it is equivalent to specifying :" @@ -1057,18 +1112,7 @@ msgstr "" "l'option :option:`-d`. Si elle est définie à un entier, c'est équivalent à " "spécifier l'option :option:`-d` plusieurs fois." -#: using/cmdline.rst:592 -msgid "" -"If this is set to a non-empty string, enable the traditional LL(1) parser." -msgstr "" -"Si elle est définie à une chaîne non vide, active l'analyseur syntaxique " -"traditionnel LL(1)." - -#: using/cmdline.rst:594 -msgid "See also the :option:`-X` ``oldparser`` option and :pep:`617`." -msgstr "Voir aussi l'option :option:`-X` ``oldparser`` et :pep:`617`." - -#: using/cmdline.rst:601 +#: using/cmdline.rst:618 msgid "" "If this is set to a non-empty string it is equivalent to specifying the :" "option:`-i` option." @@ -1076,7 +1120,7 @@ msgstr "" "Si elle est définie à une chaîne non vide, c'est équivalent à spécifier " "l'option :option:`-i`." -#: using/cmdline.rst:604 +#: using/cmdline.rst:621 msgid "" "This variable can also be modified by Python code using :data:`os.environ` " "to force inspect mode on program termination." @@ -1084,7 +1128,7 @@ msgstr "" "Cette variable peut aussi être modifiée par du code Python en utilisant :" "data:`os.environ` pour forcer le mode introspectif à la fin du programme." -#: using/cmdline.rst:610 +#: using/cmdline.rst:627 msgid "" "If this is set to a non-empty string it is equivalent to specifying the :" "option:`-u` option." @@ -1092,7 +1136,7 @@ msgstr "" "Si elle est définie à une chaîne non vide, c'est équivalent à spécifier " "l'option :option:`-u`." -#: using/cmdline.rst:616 +#: using/cmdline.rst:633 msgid "" "If this is set to a non-empty string it is equivalent to specifying the :" "option:`-v` option. If set to an integer, it is equivalent to specifying :" @@ -1102,15 +1146,16 @@ msgstr "" "l'option :option:`-v`. Si elle est définie à un entier, c'est équivalent à " "spécifier l'option :option:`-v` plusieurs fois." -#: using/cmdline.rst:623 +#: using/cmdline.rst:640 +#, fuzzy msgid "" "If this is set, Python ignores case in :keyword:`import` statements. This " -"only works on Windows and OS X." +"only works on Windows and macOS." msgstr "" "Si elle est définie, Python ignore la casse dans les instructions :keyword:" "`import`. Ceci ne fonctionne que sous Windows et OS X." -#: using/cmdline.rst:629 +#: using/cmdline.rst:646 msgid "" "If this is set to a non-empty string, Python won't try to write ``.pyc`` " "files on the import of source modules. This is equivalent to specifying " @@ -1120,7 +1165,7 @@ msgstr "" "fichier ``.pyc`` à l'importation des modules sources. C'est équivalent à " "spécifier l'option :option:`-B`." -#: using/cmdline.rst:636 +#: using/cmdline.rst:653 msgid "" "If this is set, Python will write ``.pyc`` files in a mirror directory tree " "at this path, instead of in ``__pycache__`` directories within the source " @@ -1131,7 +1176,7 @@ msgstr "" "``__pycache__`` mais dans une arborescence miroir à ce chemin. C'est " "l'équivalent de l'option :option:`-X` ``pycache_prefix=PATH``." -#: using/cmdline.rst:646 +#: using/cmdline.rst:663 msgid "" "If this variable is not set or set to ``random``, a random value is used to " "seed the hashes of str and bytes objects." @@ -1140,7 +1185,7 @@ msgstr "" "aléatoire est utilisée pour saler les empreintes des objets ``str`` et " "``bytes``." -#: using/cmdline.rst:649 +#: using/cmdline.rst:666 msgid "" "If :envvar:`PYTHONHASHSEED` is set to an integer value, it is used as a " "fixed seed for generating the hash() of the types covered by the hash " @@ -1150,7 +1195,7 @@ msgstr "" "utilisée comme valeur de salage pour générer les empreintes des types " "utilisant l'imprévisibilité du hachage." -#: using/cmdline.rst:653 +#: using/cmdline.rst:670 msgid "" "Its purpose is to allow repeatable hashing, such as for selftests for the " "interpreter itself, or to allow a cluster of python processes to share hash " @@ -1160,7 +1205,7 @@ msgstr "" "l'interpréteur lui-même ou pour qu'un groupe de processus Python puisse " "partager des empreintes." -#: using/cmdline.rst:657 +#: using/cmdline.rst:674 msgid "" "The integer must be a decimal number in the range [0,4294967295]. " "Specifying the value 0 will disable hash randomization." @@ -1169,7 +1214,7 @@ msgstr "" "4 294 967 295. Spécifier la valeur 0 désactive l'imprévisibilité des " "empreintes." -#: using/cmdline.rst:665 +#: using/cmdline.rst:682 msgid "" "If this is set before running the interpreter, it overrides the encoding " "used for stdin/stdout/stderr, in the syntax ``encodingname:errorhandler``. " @@ -1183,7 +1228,7 @@ msgstr "" "facultatifs tous les deux et possèdent la même signification que dans :func:" "`str.encode`." -#: using/cmdline.rst:670 +#: using/cmdline.rst:687 msgid "" "For stderr, the ``:errorhandler`` part is ignored; the handler will always " "be ``'backslashreplace'``." @@ -1191,11 +1236,11 @@ msgstr "" "Pour la sortie d'erreur, la partie ``:gestionnaire_erreur`` est ignorée : le " "gestionnaire est toujours ``'backslashreplace'``." -#: using/cmdline.rst:673 +#: using/cmdline.rst:690 msgid "The ``encodingname`` part is now optional." msgstr "La partie ``nom_encodage`` est maintenant optionnelle." -#: using/cmdline.rst:676 +#: using/cmdline.rst:693 msgid "" "On Windows, the encoding specified by this variable is ignored for " "interactive console buffers unless :envvar:`PYTHONLEGACYWINDOWSSTDIO` is " @@ -1207,7 +1252,7 @@ msgstr "" "`PYTHONLEGACYWINDOWSSTDIO` ne soit aussi spécifié. Les fichiers et tubes " "(*pipes* en anglais) redirigés vers les flux standards ne sont pas concernés." -#: using/cmdline.rst:683 +#: using/cmdline.rst:700 msgid "" "If this is set, Python won't add the :data:`user site-packages directory " "` to :data:`sys.path`." @@ -1215,7 +1260,7 @@ msgstr "" "Si elle est définie, Python n'ajoute pas le répertoire :data:`site-packages " "propre à l'utilisateur ` à :data:`sys.path`." -#: using/cmdline.rst:693 +#: using/cmdline.rst:710 msgid "" "Defines the :data:`user base directory `, which is used to " "compute the path of the :data:`user site-packages directory ` pour ``python setup.py install --" "user``." -#: using/cmdline.rst:705 +#: using/cmdline.rst:722 +#, fuzzy msgid "" "If this environment variable is set, ``sys.argv[0]`` will be set to its " -"value instead of the value got through the C runtime. Only works on Mac OS " -"X." +"value instead of the value got through the C runtime. Only works on macOS." msgstr "" "Si cette variable d'environnement est définie, ``sys.argv[0]`` est définie à " "cette valeur au lieu de la valeur fournie par l'exécutable. Ne fonctionne " "que sur Mac OS X." -#: using/cmdline.rst:711 +#: using/cmdline.rst:728 msgid "" "This is equivalent to the :option:`-W` option. If set to a comma separated " "string, it is equivalent to specifying :option:`-W` multiple times, with " @@ -1249,7 +1294,7 @@ msgstr "" "option:`-W` plusieurs fois. Dans ce cas, les filtres spécifiés en derniers " "prennent le pas sur ceux qui les précèdent dans la liste." -#: using/cmdline.rst:733 +#: using/cmdline.rst:750 msgid "" "If this environment variable is set to a non-empty string, :func:" "`faulthandler.enable` is called at startup: install a handler for :const:" @@ -1263,7 +1308,7 @@ msgstr "" "`SIGILL` afin de générer une trace de la pile d'appels. C'est équivalent à " "spécifier l'option :option:`-X` ``faulthandler``." -#: using/cmdline.rst:744 +#: using/cmdline.rst:761 msgid "" "If this environment variable is set to a non-empty string, start tracing " "Python memory allocations using the :mod:`tracemalloc` module. The value of " @@ -1278,7 +1323,7 @@ msgstr "" "ne stocke que l'appel le plus récent. Voir :func:`tracemalloc.start` pour " "davantage d'informations." -#: using/cmdline.rst:755 +#: using/cmdline.rst:772 msgid "" "If this environment variable is set to a non-empty string, Python will show " "how long each import takes. This is exactly equivalent to setting ``-X " @@ -1288,7 +1333,7 @@ msgstr "" "pris par les importations. C'est exactement équivalent à donner ``-X " "importtime`` en ligne de commande." -#: using/cmdline.rst:764 +#: using/cmdline.rst:781 msgid "" "If this environment variable is set to a non-empty string, enable the :ref:" "`debug mode ` of the :mod:`asyncio` module." @@ -1296,17 +1341,17 @@ msgstr "" "Si elle est définie à une chaîne non vide, active le :ref:`mode debogage " "` du module :mod:`asyncio`." -#: using/cmdline.rst:772 +#: using/cmdline.rst:789 msgid "Set the Python memory allocators and/or install debug hooks." msgstr "" "Définit l'allocateur mémoire de Python ou installe des points d'entrée " "(*hooks* en anglais) de débogage." -#: using/cmdline.rst:774 +#: using/cmdline.rst:791 msgid "Set the family of memory allocators used by Python:" msgstr "Définit la famille d'allocateurs mémoire utilisés par Python :" -#: using/cmdline.rst:776 +#: using/cmdline.rst:793 msgid "" "``default``: use the :ref:`default memory allocators `." @@ -1314,7 +1359,7 @@ msgstr "" "``default``: utilise les :ref:`allocateurs de mémoire par défaut `." -#: using/cmdline.rst:778 +#: using/cmdline.rst:795 msgid "" "``malloc``: use the :c:func:`malloc` function of the C library for all " "domains (:c:data:`PYMEM_DOMAIN_RAW`, :c:data:`PYMEM_DOMAIN_MEM`, :c:data:" @@ -1324,7 +1369,7 @@ msgstr "" "standard pour tous les domaines (:c:data:`PYMEM_DOMAIN_RAW`, :c:data:" "`PYMEM_DOMAIN_MEM`, :c:data:`PYMEM_DOMAIN_OBJ`)." -#: using/cmdline.rst:781 +#: using/cmdline.rst:798 msgid "" "``pymalloc``: use the :ref:`pymalloc allocator ` for :c:data:" "`PYMEM_DOMAIN_MEM` and :c:data:`PYMEM_DOMAIN_OBJ` domains and use the :c:" @@ -1335,11 +1380,11 @@ msgstr "" "utilise la fonction :c:func:`malloc` pour le domaine :c:data:" "`PYMEM_DOMAIN_RAW`." -#: using/cmdline.rst:785 -msgid "Install debug hooks:" -msgstr "Installe des points d'entrée de débogage :" +#: using/cmdline.rst:802 +msgid "Install :ref:`debug hooks `:" +msgstr "" -#: using/cmdline.rst:787 +#: using/cmdline.rst:804 msgid "" "``debug``: install debug hooks on top of the :ref:`default memory allocators " "`." @@ -1347,33 +1392,23 @@ msgstr "" "``debug`` : installe des points d'entrée de débogage pour :ref:`l'allocateur " "de mémoire par défaut `." -#: using/cmdline.rst:789 +#: using/cmdline.rst:806 msgid "``malloc_debug``: same as ``malloc`` but also install debug hooks." msgstr "" "``malloc_debug``: identique à ``malloc`` mais installe aussi des points " "d'entrée de débogage." -#: using/cmdline.rst:790 +#: using/cmdline.rst:807 msgid "``pymalloc_debug``: same as ``pymalloc`` but also install debug hooks." msgstr "" "``pymalloc_debug``: identique à ``pymalloc`` mais installe aussi des points " "d'entrée de débogage." -#: using/cmdline.rst:792 -msgid "" -"See the :ref:`default memory allocators ` and " -"the :c:func:`PyMem_SetupDebugHooks` function (install debug hooks on Python " -"memory allocators)." -msgstr "" -"Reportez-vous au chapitre :ref:`default-memory-allocators` et à la fonction :" -"c:func:`PyMem_SetupDebugHooks` (configure des points d'entrée de débogage " -"sur les allocateurs de mémoire de Python)." - -#: using/cmdline.rst:796 +#: using/cmdline.rst:809 msgid "Added the ``\"default\"`` allocator." msgstr "L'allocateur ``default`` a été ajouté." -#: using/cmdline.rst:804 +#: using/cmdline.rst:817 msgid "" "If set to a non-empty string, Python will print statistics of the :ref:" "`pymalloc memory allocator ` every time a new pymalloc object " @@ -1384,7 +1419,7 @@ msgstr "" "qu'un objet est créé par ce gestionnaire, ainsi qu'à la fin de l'exécution " "du programme." -#: using/cmdline.rst:808 +#: using/cmdline.rst:821 msgid "" "This variable is ignored if the :envvar:`PYTHONMALLOC` environment variable " "is used to force the :c:func:`malloc` allocator of the C library, or if " @@ -1395,7 +1430,7 @@ msgstr "" "bibliothèque C standard ou si Python est configuré sans le support de " "``pymalloc``." -#: using/cmdline.rst:812 +#: using/cmdline.rst:825 msgid "" "This variable can now also be used on Python compiled in release mode. It " "now has no effect if set to an empty string." @@ -1403,12 +1438,13 @@ msgstr "" "Cette variable peut maintenant être utilisée avec Python compilé en mode " "*release*. Elle n'a pas d'effet si elle est définie à une chaine vide." -#: using/cmdline.rst:819 +#: using/cmdline.rst:832 +#, fuzzy msgid "" -"If set to a non-empty string, the default filesystem encoding and errors " -"mode will revert to their pre-3.6 values of 'mbcs' and 'replace', " -"respectively. Otherwise, the new defaults 'utf-8' and 'surrogatepass' are " -"used." +"If set to a non-empty string, the default :term:`filesystem encoding and " +"error handler` mode will revert to their pre-3.6 values of 'mbcs' and " +"'replace', respectively. Otherwise, the new defaults 'utf-8' and " +"'surrogatepass' are used." msgstr "" "Si elle est définie et n’est pas une chaîne vide, l'encodage par défaut " "respectivement du système de fichiers et des erreurs reviennent à leur " @@ -1416,7 +1452,7 @@ msgstr "" "nouvelles valeurs par défaut ``\"UTF-8\"`` et ``\"surrogatepass\"`` sont " "utilisées." -#: using/cmdline.rst:823 +#: using/cmdline.rst:837 msgid "" "This may also be enabled at runtime with :func:`sys." "_enablelegacywindowsfsencoding()`." @@ -1424,15 +1460,15 @@ msgstr "" "Vous pouvez aussi activer ceci à l'exécution avec :func:`sys." "_enablelegacywindowsfsencoding()`." -#: using/cmdline.rst:841 +#: using/cmdline.rst:855 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: using/cmdline.rst:828 +#: using/cmdline.rst:842 msgid "See :pep:`529` for more details." msgstr "Voir la :pep:`529` pour plus d'informations." -#: using/cmdline.rst:833 +#: using/cmdline.rst:847 msgid "" "If set to a non-empty string, does not use the new console reader and " "writer. This means that Unicode characters will be encoded according to the " @@ -1442,7 +1478,7 @@ msgstr "" "et écrivain de la nouvelle console. Cela signifie que les caractères Unicode " "sont encodés avec l'encodage de la console active plutôt qu'en UTF-8." -#: using/cmdline.rst:837 +#: using/cmdline.rst:851 msgid "" "This variable is ignored if the standard streams are redirected (to files or " "pipes) rather than referring to console buffers." @@ -1451,7 +1487,7 @@ msgstr "" "fichiers ou des tubes) plutôt que pointant vers des mémoires tampons de " "console." -#: using/cmdline.rst:847 +#: using/cmdline.rst:861 msgid "" "If set to the value ``0``, causes the main Python command line application " "to skip coercing the legacy ASCII-based C and POSIX locales to a more " @@ -1462,7 +1498,7 @@ msgstr "" "POSIX à base ASCII, mais bascule sur une alternative basée sur l'UTF-8 qui " "doit posséder plus de possibilités." -#: using/cmdline.rst:851 +#: using/cmdline.rst:865 msgid "" "If this variable is *not* set (or is set to a value other than ``0``), the " "``LC_ALL`` locale override environment variable is also not set, and the " @@ -1481,19 +1517,19 @@ msgstr "" "paramètres régionaux pour la catégorie ``LC_TYPE`` dans l'ordre suivant " "avant de charger l'exécutable de l'interpréteur :" -#: using/cmdline.rst:859 +#: using/cmdline.rst:873 msgid "``C.UTF-8``" msgstr "``C.UTF-8``" -#: using/cmdline.rst:860 +#: using/cmdline.rst:874 msgid "``C.utf8``" msgstr "``C.utf8``" -#: using/cmdline.rst:861 +#: using/cmdline.rst:875 msgid "``UTF-8``" msgstr "``UTF-8``" -#: using/cmdline.rst:863 +#: using/cmdline.rst:877 msgid "" "If setting one of these locale categories succeeds, then the ``LC_CTYPE`` " "environment variable will also be set accordingly in the current process " @@ -1517,7 +1553,7 @@ msgstr "" "régionale C courante, tel que c'est le cas pour la propre fonction Python :" "func:`locale.getdefaultlocale`)." -#: using/cmdline.rst:873 +#: using/cmdline.rst:887 msgid "" "Configuring one of these locales (either explicitly or via the above " "implicit locale coercion) automatically enables the ``surrogateescape`` :ref:" @@ -1534,7 +1570,7 @@ msgstr "" "régionale). Ce comportement relatif à la gestion des flux standards peut " "être surchargé, comme d'habitude, par :envvar:`PYTHONIOENCODING`." -#: using/cmdline.rst:880 +#: using/cmdline.rst:894 msgid "" "For debugging purposes, setting ``PYTHONCOERCECLOCALE=warn`` will cause " "Python to emit warning messages on ``stderr`` if either the locale coercion " @@ -1546,7 +1582,7 @@ msgstr "" "régionale est activée, ou si une configuration régionale qui *aurait* activé " "est toujours active quand l'interpréteur Python est initialisé." -#: using/cmdline.rst:885 +#: using/cmdline.rst:899 msgid "" "Also note that even when locale coercion is disabled, or when it fails to " "find a suitable target locale, :envvar:`PYTHONUTF8` will still activate by " @@ -1561,15 +1597,15 @@ msgstr "" "désactivées pour forcer l'interpréteur à utiliser ``ASCII`` en lieu et place " "de ``UTF-8`` pour les interfaces avec le système." -#: using/cmdline.rst:892 +#: using/cmdline.rst:906 msgid ":ref:`Availability `: \\*nix." msgstr ":ref:`Disponibilité ` : systèmes de type UNIX." -#: using/cmdline.rst:893 +#: using/cmdline.rst:907 msgid "See :pep:`538` for more details." msgstr "Voir la :pep:`538` pour plus d'informations." -#: using/cmdline.rst:899 +#: using/cmdline.rst:913 msgid "" "If this environment variable is set to a non-empty string, enable :ref:" "`Python Development Mode `, introducing additional runtime checks " @@ -1580,105 +1616,15 @@ msgstr "" "additionnelles durant l'exécution qui sont trop lourdes pour être activées " "par défaut." -#: using/cmdline.rst:907 -msgid "" -"If set to ``1``, enables the interpreter's UTF-8 mode, where ``UTF-8`` is " -"used as the text encoding for system interfaces, regardless of the current " -"locale setting." -msgstr "" -"Si elle vaut ``1``, active le mode UTF-8 pour l'interpréteur, où ``UTF-8`` " -"est utilisé pour encoder le texte en interface avec le système, quelle que " -"soit la configuration régionale en vigueur." - -#: using/cmdline.rst:911 -msgid "This means that:" -msgstr "Ce qui signifie que :" - -#: using/cmdline.rst:913 -msgid "" -":func:`sys.getfilesystemencoding()` returns ``'UTF-8'`` (the locale encoding " -"is ignored)." -msgstr "" -":func:`sys.getfilesystemencoding()` renvoie ``'UTF-8'`` (l'encodage défini " -"par la configuration régionale est ignoré)." - -#: using/cmdline.rst:915 -msgid "" -":func:`locale.getpreferredencoding()` returns ``'UTF-8'`` (the locale " -"encoding is ignored, and the function's ``do_setlocale`` parameter has no " -"effect)." +#: using/cmdline.rst:921 +msgid "If set to ``1``, enable the :ref:`Python UTF-8 Mode `." msgstr "" -":func:`locale.getpreferredencoding()` renvoie ``'UTF-8'`` (l'encodage défini " -"par la configuration régionale est ignoré et le paramètre ``do_setlocale`` " -"de la fonction n'a aucun effet)." -#: using/cmdline.rst:918 -msgid "" -":data:`sys.stdin`, :data:`sys.stdout`, and :data:`sys.stderr` all use UTF-8 " -"as their text encoding, with the ``surrogateescape`` :ref:`error handler " -"` being enabled for :data:`sys.stdin` and :data:`sys.stdout` " -"(:data:`sys.stderr` continues to use ``backslashreplace`` as it does in the " -"default locale-aware mode)" +#: using/cmdline.rst:923 +msgid "If set to ``0``, disable the :ref:`Python UTF-8 Mode `." msgstr "" -":data:`sys.stdin`, :data:`sys.stdout` et :data:`sys.stderr` utilisent tous " -"l'UTF-8 pour l'encodage du texte, avec le :ref:`gestionnaire d'erreurs " -"` ``surrogateescape`` activé pour :data:`sys.stdin` et :data:" -"`sys.stdout` (:data:`sys.stderr` continue d'utiliser ``backslashreplace`` " -"comme pour le mode par défaut où il prend en compte la configuration " -"régionale)." -#: using/cmdline.rst:924 -msgid "" -"As a consequence of the changes in those lower level APIs, other higher " -"level APIs also exhibit different default behaviours:" -msgstr "" -"En raison des changements apportés à ces API de bas-niveau, les API de haut-" -"niveau ont un comportement par défaut différent :" - -#: using/cmdline.rst:927 -msgid "" -"Command line arguments, environment variables and filenames are decoded to " -"text using the UTF-8 encoding." -msgstr "" -"Les arguments en ligne de commande, les variables d'environnement et les " -"noms de fichiers sont décodés en texte en utilisant l'UTF-8." - -#: using/cmdline.rst:929 -msgid ":func:`os.fsdecode()` and :func:`os.fsencode()` use the UTF-8 encoding." -msgstr "" -":func:`os.fsdecode()` et :func:`os.fsencode()` utilisent l'encodage UTF-8." - -#: using/cmdline.rst:930 -msgid "" -":func:`open()`, :func:`io.open()`, and :func:`codecs.open()` use the UTF-8 " -"encoding by default. However, they still use the strict error handler by " -"default so that attempting to open a binary file in text mode is likely to " -"raise an exception rather than producing nonsense data." -msgstr "" -":func:`open()`, :func:`io.open()` et :func:`codecs.open()` utilisent " -"l'encodage UTF-8 par défaut. Cependant, elles utilisent le gestionnaire " -"d'erreurs \"strict\" par défaut, de manière à ce qu'ouvrir un fichier " -"binaire en mode texte lève une exception plutôt que de produire de la donnée " -"sans aucun sens." - -#: using/cmdline.rst:935 -msgid "" -"Note that the standard stream settings in UTF-8 mode can be overridden by :" -"envvar:`PYTHONIOENCODING` (just as they can be in the default locale-aware " -"mode)." -msgstr "" -"Notez que la configuration des flux standards en mode UTF-8 peut être " -"surchargée par :envvar:`PYTHONIOENCODING` (de la même manière qu'elles " -"peuvent l'être dans le mode par défaut qui est configuré pour la région " -"locale)." - -#: using/cmdline.rst:939 -msgid "If set to ``0``, the interpreter runs in its default locale-aware mode." -msgstr "" -"Si elle vaut ``0``, l'interpréteur fonctionne dans le mode configuré pour la " -"région locale (mode par défaut)." - -#: using/cmdline.rst:941 +#: using/cmdline.rst:925 msgid "" "Setting any other non-empty string causes an error during interpreter " "initialisation." @@ -1686,54 +1632,38 @@ msgstr "" "Définir une valeur autre (non vide) entraine une erreur pendant " "l'initialisation de l'interpréteur." -#: using/cmdline.rst:944 +#: using/cmdline.rst:932 +#, fuzzy msgid "" -"If this environment variable is not set at all, then the interpreter " -"defaults to using the current locale settings, *unless* the current locale " -"is identified as a legacy ASCII-based locale (as described for :envvar:" -"`PYTHONCOERCECLOCALE`), and locale coercion is either disabled or fails. In " -"such legacy locales, the interpreter will default to enabling UTF-8 mode " -"unless explicitly instructed not to do so." +"If this environment variable is set to a non-empty string, issue a :class:" +"`EncodingWarning` when the locale-specific default encoding is used." msgstr "" -"Si cette variable d'environnement n'est pas définie, l'interpréteur se " -"configure pour utiliser la configuration régionale en cours, *à moins que* " -"cette configuration régionale ne soit identifiée comme ASCII (comme décrit " -"pour :envvar:`PYTHONCOERCECLOCALE`), et que soit la contrainte est " -"désactivée, soit elle échoue. Dans cette configuration régionale, " -"l'interpréteur active par défaut le mode UTF-8 à moins que vous n'indiquiez " -"explicitement de ne pas le faire." - -#: using/cmdline.rst:951 -msgid "Also available as the :option:`-X` ``utf8`` option." -msgstr "Également disponible en tant qu'option :option:`-X` ``utf8``." +"Si elle est définie à une chaîne non vide, active le :ref:`mode debogage " +"` du module :mod:`asyncio`." -#: using/cmdline.rst:953 -msgid "See :pep:`540` for more details." -msgstr "Voir la :pep:`540` pour plus d'informations." +#: using/cmdline.rst:935 +#, fuzzy +msgid "See :ref:`io-encoding-warning` for details." +msgstr "" +"Voir :ref:`warning-filter` et :ref:`describing-warning-filters` pour plus " +"de détails." -#: using/cmdline.rst:958 +#: using/cmdline.rst:941 msgid "Debug-mode variables" msgstr "Variables en mode débogage" -#: using/cmdline.rst:960 -msgid "Setting these variables only has an effect in a debug build of Python." -msgstr "" -"Définir ces variables n'a d'effet que si Python a été compilé en mode " -"débogage." - -#: using/cmdline.rst:964 -msgid "If set, Python will print threading debug info." +#: using/cmdline.rst:945 +#, fuzzy +msgid "If set, Python will print threading debug info into stdout." msgstr "" "Si elle est définie, Python affiche des informations de débogage relatives " "aux différents fils d'exécution." -#: using/cmdline.rst:966 -msgid "Need Python configured with the ``--with-pydebug`` build option." +#: using/cmdline.rst:947 +msgid "Need a :ref:`debug build of Python `." msgstr "" -"Nécessite que Python soit configuré avec l'option de compilation ``--with-" -"pydebug``." -#: using/cmdline.rst:971 +#: using/cmdline.rst:954 msgid "" "If set, Python will dump objects and reference counts still alive after " "shutting down the interpreter." @@ -1742,12 +1672,172 @@ msgstr "" "compteurs de références toujours existant après la fermeture de " "l'interpréteur." -#: using/cmdline.rst:974 -msgid "Need Python configured with the ``--with-trace-refs`` build option." +#: using/cmdline.rst:957 +#, fuzzy +msgid "" +"Need Python configured with the :option:`--with-trace-refs` build option." msgstr "" "Nécessite que Python soit configuré avec l'option de compilation ``--with-" "trace-refs``." +#~ msgid "" +#~ "By default, each warning is printed once for each source line where it " +#~ "occurs. This option controls how often warnings are printed." +#~ msgstr "" +#~ "Par défaut, chaque avertissement est affiché une seule fois pour chaque " +#~ "ligne de source où il se trouve. Cette option définit à quelle fréquence " +#~ "afficher ces avertissements." + +#~ msgid "" +#~ "``-X oldparser``: enable the traditional LL(1) parser. See also :envvar:" +#~ "`PYTHONOLDPARSER` and :pep:`617`." +#~ msgstr "" +#~ "``-X oldparser`` : active l'analyseur syntaxique LL(1) traditionnel. Voir " +#~ "aussi :envvar:`PYTHONOLDPARSER` et :pep:`617`." + +#~ msgid "" +#~ "If this is set to a non-empty string, enable the traditional LL(1) parser." +#~ msgstr "" +#~ "Si elle est définie à une chaîne non vide, active l'analyseur syntaxique " +#~ "traditionnel LL(1)." + +#~ msgid "See also the :option:`-X` ``oldparser`` option and :pep:`617`." +#~ msgstr "Voir aussi l'option :option:`-X` ``oldparser`` et :pep:`617`." + +#~ msgid "Install debug hooks:" +#~ msgstr "Installe des points d'entrée de débogage :" + +#~ msgid "" +#~ "See the :ref:`default memory allocators ` and " +#~ "the :c:func:`PyMem_SetupDebugHooks` function (install debug hooks on " +#~ "Python memory allocators)." +#~ msgstr "" +#~ "Reportez-vous au chapitre :ref:`default-memory-allocators` et à la " +#~ "fonction :c:func:`PyMem_SetupDebugHooks` (configure des points d'entrée " +#~ "de débogage sur les allocateurs de mémoire de Python)." + +#~ msgid "" +#~ "If set to ``1``, enables the interpreter's UTF-8 mode, where ``UTF-8`` is " +#~ "used as the text encoding for system interfaces, regardless of the " +#~ "current locale setting." +#~ msgstr "" +#~ "Si elle vaut ``1``, active le mode UTF-8 pour l'interpréteur, où " +#~ "``UTF-8`` est utilisé pour encoder le texte en interface avec le système, " +#~ "quelle que soit la configuration régionale en vigueur." + +#~ msgid "This means that:" +#~ msgstr "Ce qui signifie que :" + +#~ msgid "" +#~ ":func:`sys.getfilesystemencoding()` returns ``'UTF-8'`` (the locale " +#~ "encoding is ignored)." +#~ msgstr "" +#~ ":func:`sys.getfilesystemencoding()` renvoie ``'UTF-8'`` (l'encodage " +#~ "défini par la configuration régionale est ignoré)." + +#~ msgid "" +#~ ":func:`locale.getpreferredencoding()` returns ``'UTF-8'`` (the locale " +#~ "encoding is ignored, and the function's ``do_setlocale`` parameter has no " +#~ "effect)." +#~ msgstr "" +#~ ":func:`locale.getpreferredencoding()` renvoie ``'UTF-8'`` (l'encodage " +#~ "défini par la configuration régionale est ignoré et le paramètre " +#~ "``do_setlocale`` de la fonction n'a aucun effet)." + +#~ msgid "" +#~ ":data:`sys.stdin`, :data:`sys.stdout`, and :data:`sys.stderr` all use " +#~ "UTF-8 as their text encoding, with the ``surrogateescape`` :ref:`error " +#~ "handler ` being enabled for :data:`sys.stdin` and :data:" +#~ "`sys.stdout` (:data:`sys.stderr` continues to use ``backslashreplace`` as " +#~ "it does in the default locale-aware mode)" +#~ msgstr "" +#~ ":data:`sys.stdin`, :data:`sys.stdout` et :data:`sys.stderr` utilisent " +#~ "tous l'UTF-8 pour l'encodage du texte, avec le :ref:`gestionnaire " +#~ "d'erreurs ` ``surrogateescape`` activé pour :data:`sys." +#~ "stdin` et :data:`sys.stdout` (:data:`sys.stderr` continue d'utiliser " +#~ "``backslashreplace`` comme pour le mode par défaut où il prend en compte " +#~ "la configuration régionale)." + +#~ msgid "" +#~ "As a consequence of the changes in those lower level APIs, other higher " +#~ "level APIs also exhibit different default behaviours:" +#~ msgstr "" +#~ "En raison des changements apportés à ces API de bas-niveau, les API de " +#~ "haut-niveau ont un comportement par défaut différent :" + +#~ msgid "" +#~ "Command line arguments, environment variables and filenames are decoded " +#~ "to text using the UTF-8 encoding." +#~ msgstr "" +#~ "Les arguments en ligne de commande, les variables d'environnement et les " +#~ "noms de fichiers sont décodés en texte en utilisant l'UTF-8." + +#~ msgid "" +#~ ":func:`os.fsdecode()` and :func:`os.fsencode()` use the UTF-8 encoding." +#~ msgstr "" +#~ ":func:`os.fsdecode()` et :func:`os.fsencode()` utilisent l'encodage UTF-8." + +#~ msgid "" +#~ ":func:`open()`, :func:`io.open()`, and :func:`codecs.open()` use the " +#~ "UTF-8 encoding by default. However, they still use the strict error " +#~ "handler by default so that attempting to open a binary file in text mode " +#~ "is likely to raise an exception rather than producing nonsense data." +#~ msgstr "" +#~ ":func:`open()`, :func:`io.open()` et :func:`codecs.open()` utilisent " +#~ "l'encodage UTF-8 par défaut. Cependant, elles utilisent le gestionnaire " +#~ "d'erreurs \"strict\" par défaut, de manière à ce qu'ouvrir un fichier " +#~ "binaire en mode texte lève une exception plutôt que de produire de la " +#~ "donnée sans aucun sens." + +#~ msgid "" +#~ "Note that the standard stream settings in UTF-8 mode can be overridden " +#~ "by :envvar:`PYTHONIOENCODING` (just as they can be in the default locale-" +#~ "aware mode)." +#~ msgstr "" +#~ "Notez que la configuration des flux standards en mode UTF-8 peut être " +#~ "surchargée par :envvar:`PYTHONIOENCODING` (de la même manière qu'elles " +#~ "peuvent l'être dans le mode par défaut qui est configuré pour la région " +#~ "locale)." + +#~ msgid "" +#~ "If set to ``0``, the interpreter runs in its default locale-aware mode." +#~ msgstr "" +#~ "Si elle vaut ``0``, l'interpréteur fonctionne dans le mode configuré pour " +#~ "la région locale (mode par défaut)." + +#~ msgid "" +#~ "If this environment variable is not set at all, then the interpreter " +#~ "defaults to using the current locale settings, *unless* the current " +#~ "locale is identified as a legacy ASCII-based locale (as described for :" +#~ "envvar:`PYTHONCOERCECLOCALE`), and locale coercion is either disabled or " +#~ "fails. In such legacy locales, the interpreter will default to enabling " +#~ "UTF-8 mode unless explicitly instructed not to do so." +#~ msgstr "" +#~ "Si cette variable d'environnement n'est pas définie, l'interpréteur se " +#~ "configure pour utiliser la configuration régionale en cours, *à moins " +#~ "que* cette configuration régionale ne soit identifiée comme ASCII (comme " +#~ "décrit pour :envvar:`PYTHONCOERCECLOCALE`), et que soit la contrainte est " +#~ "désactivée, soit elle échoue. Dans cette configuration régionale, " +#~ "l'interpréteur active par défaut le mode UTF-8 à moins que vous " +#~ "n'indiquiez explicitement de ne pas le faire." + +#~ msgid "Also available as the :option:`-X` ``utf8`` option." +#~ msgstr "Également disponible en tant qu'option :option:`-X` ``utf8``." + +#~ msgid "See :pep:`540` for more details." +#~ msgstr "Voir la :pep:`540` pour plus d'informations." + +#~ msgid "" +#~ "Setting these variables only has an effect in a debug build of Python." +#~ msgstr "" +#~ "Définir ces variables n'a d'effet que si Python a été compilé en mode " +#~ "débogage." + +#~ msgid "Need Python configured with the ``--with-pydebug`` build option." +#~ msgstr "" +#~ "Nécessite que Python soit configuré avec l'option de compilation ``--with-" +#~ "pydebug``." + #~ msgid "" #~ "``-X showalloccount`` to output the total count of allocated objects for " #~ "each type when the program finishes. This only works when Python was " diff --git a/using/configure.po b/using/configure.po new file mode 100644 index 000000000..ce2f55132 --- /dev/null +++ b/using/configure.po @@ -0,0 +1,1130 @@ +# Copyright (C) 2001-2018, Python Software Foundation +# For licence information, see README file. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: FRENCH \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: using/configure.rst:3 +msgid "Configure Python" +msgstr "" + +#: using/configure.rst:8 +msgid "Configure Options" +msgstr "" + +#: using/configure.rst:10 +msgid "List all ``./configure`` script options using::" +msgstr "" + +#: using/configure.rst:14 +msgid "" +"See also the :file:`Misc/SpecialBuilds.txt` in the Python source " +"distribution." +msgstr "" + +#: using/configure.rst:17 +msgid "General Options" +msgstr "" + +#: using/configure.rst:21 +msgid "" +"Support loadable extensions in the :mod:`_sqlite` extension module (default " +"is no)." +msgstr "" + +#: using/configure.rst:24 +msgid "" +"See the :meth:`sqlite3.Connection.enable_load_extension` method of the :mod:" +"`sqlite3` module." +msgstr "" + +#: using/configure.rst:31 +msgid "" +"Disable IPv6 support (enabled by default if supported), see the :mod:" +"`socket` module." +msgstr "" + +#: using/configure.rst:36 +msgid "Define the size in bits of Python :class:`int` digits: 15 or 30 bits." +msgstr "" + +#: using/configure.rst:38 +msgid "" +"By default, the number of bits is selected depending on ``sizeof(void*)``: " +"30 bits if ``void*`` size is 64-bit or larger, 15 bits otherwise." +msgstr "" + +#: using/configure.rst:41 +msgid "Define the ``PYLONG_BITS_IN_DIGIT`` to ``15`` or ``30``." +msgstr "" + +#: using/configure.rst:43 +msgid "See :data:`sys.int_info.bits_per_digit `." +msgstr "" + +#: using/configure.rst:48 +msgid "" +"Compile the Python ``main()`` function and link Python executable with C++ " +"compiler: ``$CXX``, or *COMPILER* if specified." +msgstr "" + +#: using/configure.rst:53 +msgid "Set the Python executable suffix to *SUFFIX*." +msgstr "" + +#: using/configure.rst:55 +msgid "" +"The default suffix is ``.exe`` on Windows and macOS (``python.exe`` " +"executable), and an empty string on other platforms (``python`` executable)." +msgstr "" + +#: using/configure.rst:60 +msgid "" +"Select the default time zone search path for :data:`zoneinfo.TZPATH`. See " +"the :ref:`Compile-time configuration ` of " +"the :mod:`zoneinfo` module." +msgstr "" + +#: using/configure.rst:64 +msgid "" +"Default: ``/usr/share/zoneinfo:/usr/lib/zoneinfo:/usr/share/lib/zoneinfo:/" +"etc/zoneinfo``." +msgstr "" + +#: using/configure.rst:66 +msgid "See :data:`os.pathsep` path separator." +msgstr "" + +#: using/configure.rst:72 +msgid "" +"Build the ``_decimal`` extension module using a thread-local context rather " +"than a coroutine-local context (default), see the :mod:`decimal` module." +msgstr "" + +#: using/configure.rst:75 +msgid "See :data:`decimal.HAVE_CONTEXTVAR` and the :mod:`contextvars` module." +msgstr "" + +#: using/configure.rst:81 +msgid "Override order to check db backends for the :mod:`dbm` module" +msgstr "" + +#: using/configure.rst:83 +msgid "" +"A valid value is a colon (``:``) separated string with the backend names:" +msgstr "" + +#: using/configure.rst:85 +msgid "``ndbm``;" +msgstr "" + +#: using/configure.rst:86 +msgid "``gdbm``;" +msgstr "" + +#: using/configure.rst:87 +msgid "``bdb``." +msgstr "" + +#: using/configure.rst:91 +msgid "Disable C locale coercion to a UTF-8 based locale (enabled by default)." +msgstr "" + +#: using/configure.rst:93 +msgid "Don't define the ``PY_COERCE_C_LOCALE`` macro." +msgstr "" + +#: using/configure.rst:95 +msgid "See :envvar:`PYTHONCOERCECLOCALE` and the :pep:`538`." +msgstr "" + +#: using/configure.rst:99 +msgid "Python library directory name (default is ``lib``)." +msgstr "" + +#: using/configure.rst:101 +msgid "Fedora and SuSE use ``lib64`` on 64-bit platforms." +msgstr "" + +#: using/configure.rst:103 +msgid "See :data:`sys.platlibdir`." +msgstr "" + +#: using/configure.rst:109 +msgid "" +"Directory of wheel packages used by the :mod:`ensurepip` module (none by " +"default)." +msgstr "" + +#: using/configure.rst:112 +msgid "" +"Some Linux distribution packaging policies recommend against bundling " +"dependencies. For example, Fedora installs wheel packages in the ``/usr/" +"share/python-wheels/`` directory and don't install the :mod:`ensurepip." +"_bundled` package." +msgstr "" + +#: using/configure.rst:121 +msgid "Install Options" +msgstr "" + +#: using/configure.rst:125 +msgid "" +"Don't build nor install test modules, like the :mod:`test` package or the :" +"mod:`_testcapi` extension module (built and installed by default)." +msgstr "" + +#: using/configure.rst:132 +msgid "Select the :mod:`ensurepip` command run on Python installation:" +msgstr "" + +#: using/configure.rst:134 +msgid "" +"``upgrade`` (default): run ``python -m ensurepip --altinstall --upgrade`` " +"command." +msgstr "" + +#: using/configure.rst:136 +msgid "``install``: run ``python -m ensurepip --altinstall`` command;" +msgstr "" + +#: using/configure.rst:137 +msgid "``no``: don't run ensurepip;" +msgstr "" + +#: using/configure.rst:143 +msgid "Performance options" +msgstr "" + +#: using/configure.rst:145 +msgid "" +"Configuring Python using ``--enable-optimizations --with-lto`` (PGO + LTO) " +"is recommended for best performance." +msgstr "" + +#: using/configure.rst:150 +msgid "" +"Enable Profile Guided Optimization (PGO) using :envvar:`PROFILE_TASK` " +"(disabled by default)." +msgstr "" + +#: using/configure.rst:153 +msgid "" +"The C compiler Clang requires ``llvm-profdata`` program for PGO. On macOS, " +"GCC also requires it: GCC is just an alias to Clang on macOS." +msgstr "" + +#: using/configure.rst:156 +msgid "" +"Disable also semantic interposition in libpython if ``--enable-shared`` and " +"GCC is used: add ``-fno-semantic-interposition`` to the compiler and linker " +"flags." +msgstr "" + +#: using/configure.rst:162 +msgid "Use ``-fno-semantic-interposition`` on GCC." +msgstr "" + +#: using/configure.rst:167 +msgid "" +"Environment variable used in the Makefile: Python command line arguments for " +"the PGO generation task." +msgstr "" + +#: using/configure.rst:170 +msgid "Default: ``-m test --pgo --timeout=$(TESTTIMEOUT)``." +msgstr "" + +#: using/configure.rst:176 +msgid "Enable Link Time Optimization (LTO) in any build (disabled by default)." +msgstr "" + +#: using/configure.rst:178 +msgid "" +"The C compiler Clang requires ``llvm-ar`` for LTO (``ar`` on macOS), as well " +"as an LTO-aware linker (``ld.gold`` or ``lld``)." +msgstr "" + +#: using/configure.rst:185 +msgid "" +"Enable computed gotos in evaluation loop (enabled by default on supported " +"compilers)." +msgstr "" + +#: using/configure.rst:190 +msgid "" +"Disable the specialized Python memory allocator :ref:`pymalloc ` " +"(enabled by default)." +msgstr "" + +#: using/configure.rst:193 +msgid "See also :envvar:`PYTHONMALLOC` environment variable." +msgstr "" + +#: using/configure.rst:197 +msgid "" +"Disable static documentation strings to reduce the memory footprint (enabled " +"by default). Documentation strings defined in Python are not affected." +msgstr "" + +#: using/configure.rst:200 +msgid "Don't define the ``WITH_DOC_STRINGS`` macro." +msgstr "" + +#: using/configure.rst:202 +msgid "See the ``PyDoc_STRVAR()`` macro." +msgstr "" + +#: using/configure.rst:206 +msgid "Enable C-level code profiling with ``gprof`` (disabled by default)." +msgstr "" + +#: using/configure.rst:212 +msgid "Python Debug Build" +msgstr "" + +#: using/configure.rst:214 +msgid "" +"A debug build is Python built with the :option:`--with-pydebug` configure " +"option." +msgstr "" + +#: using/configure.rst:217 +msgid "Effects of a debug build:" +msgstr "" + +#: using/configure.rst:219 +msgid "" +"Display all warnings by default: the list of default warning filters is " +"empty in the :mod:`warnings` module." +msgstr "" + +#: using/configure.rst:221 +msgid "Add ``d`` to :data:`sys.abiflags`." +msgstr "" + +#: using/configure.rst:222 +msgid "Add :func:`sys.gettotalrefcount` function." +msgstr "" + +#: using/configure.rst:223 +msgid "Add :option:`-X showrefcount <-X>` command line option." +msgstr "" + +#: using/configure.rst:224 +msgid "Add :envvar:`PYTHONTHREADDEBUG` environment variable." +msgstr "" + +#: using/configure.rst:225 +msgid "" +"Add support for the ``__ltrace__`` variable: enable low-level tracing in the " +"bytecode evaluation loop if the variable is defined." +msgstr "" + +#: using/configure.rst:227 +msgid "" +"Install :ref:`debug hooks on memory allocators ` " +"to detect buffer overflow and other memory errors." +msgstr "" + +#: using/configure.rst:229 +msgid "Define ``Py_DEBUG`` and ``Py_REF_DEBUG`` macros." +msgstr "" + +#: using/configure.rst:230 +msgid "" +"Add runtime checks: code surroundeded by ``#ifdef Py_DEBUG`` and ``#endif``. " +"Enable ``assert(...)`` and ``_PyObject_ASSERT(...)`` assertions: don't set " +"the ``NDEBUG`` macro (see also the :option:`--with-assertions` configure " +"option). Main runtime checks:" +msgstr "" + +#: using/configure.rst:235 +msgid "Add sanity checks on the function arguments." +msgstr "" + +#: using/configure.rst:236 +msgid "" +"Unicode and int objects are created with their memory filled with a pattern " +"to detect usage of uninitialized objects." +msgstr "" + +#: using/configure.rst:238 +msgid "" +"Ensure that functions which can clear or replace the current exception are " +"not called with an exception raised." +msgstr "" + +#: using/configure.rst:240 +msgid "" +"The garbage collector (:func:`gc.collect` function) runs some basic checks " +"on objects consistency." +msgstr "" + +#: using/configure.rst:242 +msgid "" +"The :c:macro:`Py_SAFE_DOWNCAST()` macro checks for integer underflow and " +"overflow when downcasting from wide types to narrow types." +msgstr "" + +#: using/configure.rst:245 +msgid "" +"See also the :ref:`Python Development Mode ` and the :option:`--" +"with-trace-refs` configure option." +msgstr "" + +#: using/configure.rst:248 +msgid "" +"Release builds and debug builds are now ABI compatible: defining the " +"``Py_DEBUG`` macro no longer implies the ``Py_TRACE_REFS`` macro (see the :" +"option:`--with-trace-refs` option), which introduces the only ABI " +"incompatibility." +msgstr "" + +#: using/configure.rst:256 +msgid "Debug options" +msgstr "" + +#: using/configure.rst:260 +msgid "" +":ref:`Build Python in debug mode `: define the ``Py_DEBUG`` " +"macro (disabled by default)." +msgstr "" + +#: using/configure.rst:265 +msgid "Enable tracing references for debugging purpose (disabled by default)." +msgstr "" + +#: using/configure.rst:267 +msgid "Effects:" +msgstr "" + +#: using/configure.rst:269 +msgid "Define the ``Py_TRACE_REFS`` macro." +msgstr "" + +#: using/configure.rst:270 +msgid "Add :func:`sys.getobjects` function." +msgstr "" + +#: using/configure.rst:271 +msgid "Add :envvar:`PYTHONDUMPREFS` environment variable." +msgstr "" + +#: using/configure.rst:273 +msgid "" +"This build is not ABI compatible with release build (default build) or debug " +"build (``Py_DEBUG`` and ``Py_REF_DEBUG`` macros)." +msgstr "" + +#: using/configure.rst:280 +msgid "" +"Build with C assertions enabled (default is no): ``assert(...);`` and " +"``_PyObject_ASSERT(...);``." +msgstr "" + +#: using/configure.rst:283 +msgid "" +"If set, the ``NDEBUG`` macro is not defined in the :envvar:`OPT` compiler " +"variable." +msgstr "" + +#: using/configure.rst:286 +msgid "" +"See also the :option:`--with-pydebug` option (:ref:`debug build `) which also enables assertions." +msgstr "" + +#: using/configure.rst:293 +msgid "Enable Valgrind support (default is no)." +msgstr "" + +#: using/configure.rst:297 +msgid "Enable DTrace support (default is no)." +msgstr "" + +#: using/configure.rst:299 +msgid "" +"See :ref:`Instrumenting CPython with DTrace and SystemTap `." +msgstr "" + +#: using/configure.rst:306 +msgid "" +"Enable AddressSanitizer memory error detector, ``asan`` (default is no)." +msgstr "" + +#: using/configure.rst:312 +msgid "" +"Enable MemorySanitizer allocation error detector, ``msan`` (default is no)." +msgstr "" + +#: using/configure.rst:318 +msgid "" +"Enable UndefinedBehaviorSanitizer undefined behaviour detector, ``ubsan`` " +"(default is no)." +msgstr "" + +#: using/configure.rst:325 +msgid "Linker options" +msgstr "" + +#: using/configure.rst:329 +msgid "Enable building a shared Python library: ``libpython`` (default is no)." +msgstr "" + +#: using/configure.rst:333 +msgid "" +"Do not build ``libpythonMAJOR.MINOR.a`` and do not install ``python.o`` " +"(built and enabled by default)." +msgstr "" + +#: using/configure.rst:340 +msgid "Libraries options" +msgstr "" + +#: using/configure.rst:344 +msgid "Link against additional libraries (default is no)." +msgstr "" + +#: using/configure.rst:348 +msgid "" +"Build the :mod:`pyexpat` module using an installed ``expat`` library " +"(default is no)." +msgstr "" + +#: using/configure.rst:353 +msgid "" +"Build the :mod:`_ctypes` extension module using an installed ``ffi`` " +"library, see the :mod:`ctypes` module (default is system-dependent)." +msgstr "" + +#: using/configure.rst:358 +msgid "" +"Build the ``_decimal`` extension module using an installed ``mpdec`` " +"library, see the :mod:`decimal` module (default is no)." +msgstr "" + +#: using/configure.rst:365 +msgid "Use ``editline`` library for backend of the :mod:`readline` module." +msgstr "" + +#: using/configure.rst:367 +msgid "Define the ``WITH_EDITLINE`` macro." +msgstr "" + +#: using/configure.rst:373 +msgid "Don't build the :mod:`readline` module (built by default)." +msgstr "" + +#: using/configure.rst:375 +msgid "Don't define the ``HAVE_LIBREADLINE`` macro." +msgstr "" + +#: using/configure.rst:381 +msgid "Override search for Tcl and Tk include files." +msgstr "" + +#: using/configure.rst:385 +msgid "Override search for Tcl and Tk libraries." +msgstr "" + +#: using/configure.rst:389 +msgid "" +"Override ``libm`` math library to *STRING* (default is system-dependent)." +msgstr "" + +#: using/configure.rst:393 +msgid "Override ``libc`` C library to *STRING* (default is system-dependent)." +msgstr "" + +#: using/configure.rst:397 +msgid "Root of the OpenSSL directory." +msgstr "" + +#: using/configure.rst:403 +msgid "Set runtime library directory (rpath) for OpenSSL libraries:" +msgstr "" + +#: using/configure.rst:405 +msgid "``no`` (default): don't set rpath;" +msgstr "" + +#: using/configure.rst:406 +msgid "" +"``auto``: auto-detect rpath from :option:`--with-openssl` and ``pkg-config``;" +msgstr "" + +#: using/configure.rst:408 +msgid "*DIR*: set an explicit rpath." +msgstr "" + +#: using/configure.rst:414 +msgid "Security Options" +msgstr "" + +#: using/configure.rst:418 +msgid "Select hash algorithm for use in ``Python/pyhash.c``:" +msgstr "" + +#: using/configure.rst:420 +msgid "``siphash24`` (default)." +msgstr "" + +#: using/configure.rst:421 +msgid "``fnv``;" +msgstr "" + +#: using/configure.rst:427 +msgid "Built-in hash modules:" +msgstr "" + +#: using/configure.rst:429 +msgid "``md5``;" +msgstr "" + +#: using/configure.rst:430 +msgid "``sha1``;" +msgstr "" + +#: using/configure.rst:431 +msgid "``sha256``;" +msgstr "" + +#: using/configure.rst:432 +msgid "``sha512``;" +msgstr "" + +#: using/configure.rst:433 +msgid "``sha3`` (with shake);" +msgstr "" + +#: using/configure.rst:434 +msgid "``blake2``." +msgstr "" + +#: using/configure.rst:440 +msgid "Override the OpenSSL default cipher suites string:" +msgstr "" + +#: using/configure.rst:442 +msgid "``python`` (default): use Python's preferred selection;" +msgstr "" + +#: using/configure.rst:443 +msgid "``openssl``: leave OpenSSL's defaults untouched;" +msgstr "" + +#: using/configure.rst:444 +msgid "*STRING*: use a custom string" +msgstr "" + +#: using/configure.rst:446 +msgid "See the :mod:`ssl` module." +msgstr "" + +#: using/configure.rst:452 +msgid "" +"The settings ``python`` and *STRING* also set TLS 1.2 as minimum protocol " +"version." +msgstr "" + +#: using/configure.rst:456 +msgid "macOS Options" +msgstr "" + +#: using/configure.rst:458 +msgid "See ``Mac/README.rst``." +msgstr "" + +#: using/configure.rst:463 +msgid "" +"Create a universal binary build. *SDKDIR* specifies which macOS SDK should " +"be used to perform the build (default is no)." +msgstr "" + +#: using/configure.rst:469 +msgid "" +"Create a Python.framework rather than a traditional Unix install. Optional " +"*INSTALLDIR* specifies the installation path (default is no)." +msgstr "" + +#: using/configure.rst:474 +msgid "" +"Specify the kind of universal binary that should be created. This option is " +"only valid when :option:`--enable-universalsdk` is set." +msgstr "" + +#: using/configure.rst:477 +msgid "Options:" +msgstr "" + +#: using/configure.rst:479 +msgid "``universal2``;" +msgstr "" + +#: using/configure.rst:480 +msgid "``32-bit``;" +msgstr "" + +#: using/configure.rst:481 +msgid "``64-bit``;" +msgstr "" + +#: using/configure.rst:482 +msgid "``3-way``;" +msgstr "" + +#: using/configure.rst:483 +msgid "``intel``;" +msgstr "" + +#: using/configure.rst:484 +msgid "``intel-32``;" +msgstr "" + +#: using/configure.rst:485 +msgid "``intel-64``;" +msgstr "" + +#: using/configure.rst:486 +msgid "``all``." +msgstr "" + +#: using/configure.rst:490 +msgid "" +"Specify the name for the python framework on macOS only valid when :option:" +"`--enable-framework` is set (default: ``Python``)." +msgstr "" + +#: using/configure.rst:495 +msgid "Python Build System" +msgstr "" + +#: using/configure.rst:498 +msgid "Main files of the build system" +msgstr "" + +#: using/configure.rst:500 +msgid ":file:`configure.ac` => :file:`configure`;" +msgstr "" + +#: using/configure.rst:501 +msgid "" +":file:`Makefile.pre.in` => :file:`Makefile` (created by :file:`configure`);" +msgstr "" + +#: using/configure.rst:502 +msgid ":file:`pyconfig.h` (created by :file:`configure`);" +msgstr "" + +#: using/configure.rst:503 +msgid "" +":file:`Modules/Setup`: C extensions built by the Makefile using :file:" +"`Module/makesetup` shell script;" +msgstr "" + +#: using/configure.rst:505 +msgid ":file:`setup.py`: C extensions built using the :mod:`distutils` module." +msgstr "" + +#: using/configure.rst:508 +msgid "Main build steps" +msgstr "" + +#: using/configure.rst:510 +msgid "C files (``.c``) are built as object files (``.o``)." +msgstr "" + +#: using/configure.rst:511 +msgid "A static ``libpython`` library (``.a``) is created from objects files." +msgstr "" + +#: using/configure.rst:512 +msgid "" +"``python.o`` and the static ``libpython`` library are linked into the final " +"``python`` program." +msgstr "" + +#: using/configure.rst:514 +msgid "" +"C extensions are built by the Makefile (see :file:`Modules/Setup`) and " +"``python setup.py build``." +msgstr "" + +#: using/configure.rst:518 +msgid "Main Makefile targets" +msgstr "" + +#: using/configure.rst:520 +msgid "``make``: Build Python with the standard library." +msgstr "" + +#: using/configure.rst:521 +msgid "" +"``make platform:``: build the ``python`` program, but don't build the " +"standard library extension modules." +msgstr "" + +#: using/configure.rst:523 +msgid "" +"``make profile-opt``: build Python using Profile Guided Optimization (PGO). " +"You can use the configure :option:`--enable-optimizations` option to make " +"this the default target of the ``make`` command (``make all`` or just " +"``make``)." +msgstr "" + +#: using/configure.rst:527 +msgid "" +"``make buildbottest``: Build Python and run the Python test suite, the same " +"way than buildbots test Python. Set ``TESTTIMEOUT`` variable (in seconds) to " +"change the test timeout (1200 by default: 20 minutes)." +msgstr "" + +#: using/configure.rst:530 +msgid "``make install``: Build and install Python." +msgstr "" + +#: using/configure.rst:531 +msgid "" +"``make regen-all``: Regenerate (almost) all generated files; ``make regen-" +"stdlib-module-names`` and ``autoconf`` must be run separately for the " +"remaining generated files." +msgstr "" + +#: using/configure.rst:534 +msgid "``make clean``: Remove built files." +msgstr "" + +#: using/configure.rst:535 +msgid "" +"``make distclean``: Same than ``make clean``, but remove also files created " +"by the configure script." +msgstr "" + +#: using/configure.rst:539 +msgid "C extensions" +msgstr "" + +#: using/configure.rst:541 +msgid "" +"Some C extensions are built as built-in modules, like the ``sys`` module. " +"They are built with the ``Py_BUILD_CORE_BUILTIN`` macro defined. Built-in " +"modules have no ``__file__`` attribute::" +msgstr "" + +#: using/configure.rst:553 +msgid "" +"Other C extensins are built as dynamic libraires, like the ``_asyncio`` " +"module. They are built with the ``Py_BUILD_CORE_MODULE`` macro defined. " +"Example on Linux x86-64::" +msgstr "" + +#: using/configure.rst:563 +msgid "" +":file:`Modules/Setup` is used to generate Makefile targets to build C " +"extensions. At the beginning of the files, C extensions are built as built-" +"in modules. Extensions defined after the ``*shared*`` marker are built as " +"dynamic libraries." +msgstr "" + +#: using/configure.rst:567 +msgid "" +"The :file:`setup.py` script only builds C extensions as shared libraries " +"using the :mod:`distutils` module." +msgstr "" + +#: using/configure.rst:570 +msgid "" +"The :c:macro:`PyAPI_FUNC()`, :c:macro:`PyAPI_API()` and :c:macro:" +"`PyMODINIT_FUNC()` macros of :file:`Include/pyport.h` are defined " +"differently depending if the ``Py_BUILD_CORE_MODULE`` macro is defined:" +msgstr "" + +#: using/configure.rst:574 +msgid "Use ``Py_EXPORTED_SYMBOL`` if the ``Py_BUILD_CORE_MODULE`` is defined" +msgstr "" + +#: using/configure.rst:575 +msgid "Use ``Py_IMPORTED_SYMBOL`` otherwise." +msgstr "" + +#: using/configure.rst:577 +msgid "" +"If the ``Py_BUILD_CORE_BUILTIN`` macro is used by mistake on a C extension " +"built as a shared library, its ``PyInit_xxx()`` function is not exported, " +"causing an :exc:`ImportError` on import." +msgstr "" + +#: using/configure.rst:583 +msgid "Compiler and linker flags" +msgstr "" + +#: using/configure.rst:585 +msgid "" +"Options set by the ``./configure`` script and environment variables and used " +"by ``Makefile``." +msgstr "" + +#: using/configure.rst:589 +msgid "Preprocessor flags" +msgstr "" + +#: using/configure.rst:593 +msgid "" +"Value of :envvar:`CPPFLAGS` variable passed to the ``./configure`` script." +msgstr "" + +#: using/configure.rst:599 +msgid "" +"(Objective) C/C++ preprocessor flags, e.g. ``-I`` if you have " +"headers in a nonstandard directory ````." +msgstr "" + +#: using/configure.rst:779 +msgid "" +"Both :envvar:`CPPFLAGS` and :envvar:`LDFLAGS` need to contain the shell's " +"value for setup.py to be able to build extension modules using the " +"directories specified in the environment variables." +msgstr "" + +#: using/configure.rst:612 +msgid "" +"Extra preprocessor flags added for building the interpreter object files." +msgstr "" + +#: using/configure.rst:614 +msgid "" +"Default: ``$(BASECPPFLAGS) -I. -I$(srcdir)/Include $(CONFIGURE_CPPFLAGS) " +"$(CPPFLAGS)``." +msgstr "" + +#: using/configure.rst:619 +msgid "Compiler flags" +msgstr "" + +#: using/configure.rst:623 +msgid "C compiler command." +msgstr "" + +#: using/configure.rst:625 +msgid "Example: ``gcc -pthread``." +msgstr "" + +#: using/configure.rst:629 +msgid "" +"C compiler command used to build the ``main()`` function of programs like " +"``python``." +msgstr "" + +#: using/configure.rst:632 +msgid "" +"Variable set by the :option:`--with-cxx-main` option of the configure script." +msgstr "" + +#: using/configure.rst:635 +msgid "Default: ``$(CC)``." +msgstr "" + +#: using/configure.rst:639 +msgid "C++ compiler command." +msgstr "" + +#: using/configure.rst:641 +msgid "Used if the :option:`--with-cxx-main` option is used." +msgstr "" + +#: using/configure.rst:643 +msgid "Example: ``g++ -pthread``." +msgstr "" + +#: using/configure.rst:647 +msgid "C compiler flags." +msgstr "" + +#: using/configure.rst:651 +msgid "" +":envvar:`CFLAGS_NODIST` is used for building the interpreter and stdlib C " +"extensions. Use it when a compiler flag should *not* be part of the " +"distutils :envvar:`CFLAGS` once Python is installed (:issue:`21121`)." +msgstr "" + +#: using/configure.rst:659 +msgid "Extra C compiler flags." +msgstr "" + +#: using/configure.rst:663 +msgid "" +"Value of :envvar:`CFLAGS` variable passed to the ``./configure`` script." +msgstr "" + +#: using/configure.rst:670 +msgid "" +"Value of :envvar:`CFLAGS_NODIST` variable passed to the ``./configure`` " +"script." +msgstr "" + +#: using/configure.rst:677 +msgid "Base compiler flags." +msgstr "" + +#: using/configure.rst:681 +msgid "Optimization flags." +msgstr "" + +#: using/configure.rst:685 +msgid "Strict or non-strict aliasing flags used to compile ``Python/dtoa.c``." +msgstr "" + +#: using/configure.rst:691 +msgid "Compiler flags used to build a shared library." +msgstr "" + +#: using/configure.rst:693 +msgid "For example, ``-fPIC`` is used on Linux and on BSD." +msgstr "" + +#: using/configure.rst:697 +msgid "Extra C flags added for building the interpreter object files." +msgstr "" + +#: using/configure.rst:699 +msgid "" +"Default: ``$(CCSHARED)`` when :option:`--enable-shared` is used, or an empty " +"string otherwise." +msgstr "" + +#: using/configure.rst:704 +msgid "" +"Default: ``$(BASECFLAGS) $(OPT) $(CONFIGURE_CFLAGS) $(CFLAGS) " +"$(EXTRA_CFLAGS)``." +msgstr "" + +#: using/configure.rst:708 +msgid "" +"Default: ``$(CONFIGURE_CFLAGS_NODIST) $(CFLAGS_NODIST) -I$(srcdir)/Include/" +"internal``." +msgstr "" + +#: using/configure.rst:714 +msgid "C flags used for building the interpreter object files." +msgstr "" + +#: using/configure.rst:716 +msgid "" +"Default: ``$(PY_CFLAGS) $(PY_CFLAGS_NODIST) $(PY_CPPFLAGS) " +"$(CFLAGSFORSHARED)``." +msgstr "" + +#: using/configure.rst:722 +msgid "Default: ``$(PY_STDMODULE_CFLAGS) -DPy_BUILD_CORE``." +msgstr "" + +#: using/configure.rst:728 +msgid "" +"Compiler flags to build a standard library extension module as a built-in " +"module, like the :mod:`posix` module." +msgstr "" + +#: using/configure.rst:731 +msgid "Default: ``$(PY_STDMODULE_CFLAGS) -DPy_BUILD_CORE_BUILTIN``." +msgstr "" + +#: using/configure.rst:737 +msgid "Purify command. Purify is a memory debugger program." +msgstr "" + +#: using/configure.rst:739 +msgid "Default: empty string (not used)." +msgstr "" + +#: using/configure.rst:743 +msgid "Linker flags" +msgstr "" + +#: using/configure.rst:747 +msgid "" +"Linker command used to build programs like ``python`` and ``_testembed``." +msgstr "" + +#: using/configure.rst:749 +msgid "Default: ``$(PURIFY) $(MAINCC)``." +msgstr "" + +#: using/configure.rst:753 +msgid "" +"Value of :envvar:`LDFLAGS` variable passed to the ``./configure`` script." +msgstr "" + +#: using/configure.rst:755 +msgid "" +"Avoid assigning :envvar:`CFLAGS`, :envvar:`LDFLAGS`, etc. so users can use " +"them on the command line to append to these values without stomping the pre-" +"set values." +msgstr "" + +#: using/configure.rst:763 +msgid "" +":envvar:`LDFLAGS_NODIST` is used in the same manner as :envvar:" +"`CFLAGS_NODIST`. Use it when a linker flag should *not* be part of the " +"distutils :envvar:`LDFLAGS` once Python is installed (:issue:`35257`)." +msgstr "" + +#: using/configure.rst:769 +msgid "" +"Value of :envvar:`LDFLAGS_NODIST` variable passed to the ``./configure`` " +"script." +msgstr "" + +#: using/configure.rst:776 +msgid "" +"Linker flags, e.g. ``-L`` if you have libraries in a nonstandard " +"directory ````." +msgstr "" + +#: using/configure.rst:785 +msgid "" +"Linker flags to pass libraries to the linker when linking the Python " +"executable." +msgstr "" + +#: using/configure.rst:788 +msgid "Example: ``-lrt``." +msgstr "" + +#: using/configure.rst:792 +msgid "Command to build a shared library." +msgstr "" + +#: using/configure.rst:794 +msgid "Default: ``@LDSHARED@ $(PY_LDFLAGS)``." +msgstr "" + +#: using/configure.rst:798 +msgid "Command to build ``libpython`` shared library." +msgstr "" + +#: using/configure.rst:800 +msgid "Default: ``@BLDSHARED@ $(PY_CORE_LDFLAGS)``." +msgstr "" + +#: using/configure.rst:804 +msgid "Default: ``$(CONFIGURE_LDFLAGS) $(LDFLAGS)``." +msgstr "" + +#: using/configure.rst:808 +msgid "Default: ``$(CONFIGURE_LDFLAGS_NODIST) $(LDFLAGS_NODIST)``." +msgstr "" + +#: using/configure.rst:814 +msgid "Linker flags used for building the interpreter object files." +msgstr "" diff --git a/using/mac.po b/using/mac.po index 57191906f..df7d62b4d 100644 --- a/using/mac.po +++ b/using/mac.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-09-16 09:10+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -16,7 +16,8 @@ msgstr "" "X-Generator: Poedit 2.4.1\n" #: using/mac.rst:6 -msgid "Using Python on a Macintosh" +#, fuzzy +msgid "Using Python on a Mac" msgstr "Utilisation de Python sur un Macintosh" #: using/mac.rst:0 @@ -28,10 +29,11 @@ msgid "Bob Savage " msgstr "Bob Savage " #: using/mac.rst:11 +#, fuzzy msgid "" -"Python on a Macintosh running Mac OS X is in principle very similar to " -"Python on any other Unix platform, but there are a number of additional " -"features such as the IDE and the Package Manager that are worth pointing out." +"Python on a Mac running macOS is in principle very similar to Python on any " +"other Unix platform, but there are a number of additional features such as " +"the IDE and the Package Manager that are worth pointing out." msgstr "" "Python sur un Macintosh exécutant Mac OS X est en principe très similaire à " "Python sur n'importe quelle autre plateforme Unix, mais il y a un certain " @@ -43,12 +45,13 @@ msgid "Getting and Installing MacPython" msgstr "Obtenir et installer MacPython" #: using/mac.rst:20 +#, fuzzy msgid "" -"Mac OS X 10.8 comes with Python 2.7 pre-installed by Apple. If you wish, " -"you are invited to install the most recent version of Python 3 from the " -"Python website (https://www.python.org). A current \"universal binary\" " -"build of Python, which runs natively on the Mac's new Intel and legacy PPC " -"CPU's, is available there." +"macOS since version 10.8 comes with Python 2.7 pre-installed by Apple. If " +"you wish, you are invited to install the most recent version of Python 3 " +"from the Python website (https://www.python.org). A current \"universal " +"binary\" build of Python, which runs natively on the Mac's new Intel and " +"legacy PPC CPU's, is available there." msgstr "" "Mac OS X 10.8 contient déjà Python 2.7 pré-installé par Apple. Si vous le " "souhaitez, vous êtes invités à installer la version la plus récente de " @@ -129,8 +132,9 @@ msgid "How to run a Python script" msgstr "Comment exécuter un script Python" #: using/mac.rst:57 +#, fuzzy msgid "" -"Your best way to get started with Python on Mac OS X is through the IDLE " +"Your best way to get started with Python on macOS is through the IDLE " "integrated development environment, see section :ref:`ide` and use the Help " "menu when the IDE is running." msgstr "" @@ -139,16 +143,17 @@ msgstr "" "`ide` et utilisez le menu d'aide (**Help**) quand l'``IDE`` est lancé." #: using/mac.rst:61 +#, fuzzy msgid "" "If you want to run Python scripts from the Terminal window command line or " -"from the Finder you first need an editor to create your script. Mac OS X " -"comes with a number of standard Unix command line editors, :program:`vim` " -"and :program:`emacs` among them. If you want a more Mac-like editor, :" -"program:`BBEdit` or :program:`TextWrangler` from Bare Bones Software (see " -"http://www.barebones.com/products/bbedit/index.html) are good choices, as " -"is :program:`TextMate` (see https://macromates.com/). Other editors include :" -"program:`Gvim` (http://macvim-dev.github.io/macvim/) and :program:`Aquamacs` " -"(http://aquamacs.org/)." +"from the Finder you first need an editor to create your script. macOS comes " +"with a number of standard Unix command line editors, :program:`vim` and :" +"program:`emacs` among them. If you want a more Mac-like editor, :program:" +"`BBEdit` or :program:`TextWrangler` from Bare Bones Software (see http://www." +"barebones.com/products/bbedit/index.html) are good choices, as is :program:" +"`TextMate` (see https://macromates.com/). Other editors include :program:" +"`Gvim` (http://macvim-dev.github.io/macvim/) and :program:`Aquamacs` (http://" +"aquamacs.org/)." msgstr "" "Si vous souhaitez exécuter des scripts Python depuis l'invite de commande " "dans la fenêtre Terminal, ou depuis le **Finder**, vous avez d'abord besoin " @@ -199,9 +204,10 @@ msgid "Running scripts with a GUI" msgstr "Lancer des scripts avec une interface graphique" #: using/mac.rst:90 +#, fuzzy msgid "" -"With older versions of Python, there is one Mac OS X quirk that you need to " -"be aware of: programs that talk to the Aqua window manager (in other words, " +"With older versions of Python, there is one macOS quirk that you need to be " +"aware of: programs that talk to the Aqua window manager (in other words, " "anything that has a GUI) need to be run in a special way. Use :program:" "`pythonw` instead of :program:`python` to start such scripts." msgstr "" @@ -224,8 +230,9 @@ msgid "Configuration" msgstr "Configuration" #: using/mac.rst:101 +#, fuzzy msgid "" -"Python on OS X honors all standard Unix environment variables such as :" +"Python on macOS honors all standard Unix environment variables such as :" "envvar:`PYTHONPATH`, but setting these variables for programs started from " "the Finder is non-standard as the Finder does not read your :file:`.profile` " "or :file:`.cshrc` at startup. You need to create a file :file:`~/.MacOSX/" @@ -323,19 +330,21 @@ msgstr "" "sources." #: using/mac.rst:150 +#, fuzzy msgid "" "*wxPython* is another popular cross-platform GUI toolkit that runs natively " -"on Mac OS X. Packages and documentation are available from https://www." -"wxpython.org." +"on macOS. Packages and documentation are available from https://www.wxpython." +"org." msgstr "" "*wxPython* est une boîte à outils multi-plateformes pour interfaces " "graphique populaire qui tourne nativement sur Mac OS X. Les paquets et la " "documentation sont disponibles sur https://www.wxpython.org." #: using/mac.rst:153 +#, fuzzy msgid "" "*PyQt* is another popular cross-platform GUI toolkit that runs natively on " -"Mac OS X. More information can be found at https://riverbankcomputing.com/" +"macOS. More information can be found at https://riverbankcomputing.com/" "software/pyqt/intro." msgstr "" "*PyQt* est une boîte à outils multi-plateformes pour interfaces graphique " diff --git a/using/unix.po b/using/unix.po index 84cd68607..7219f328a 100644 --- a/using/unix.po +++ b/using/unix.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-09-08 18:22+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -141,10 +141,11 @@ msgid "The build process consists of the usual commands::" msgstr "La compilation s'effectue avec les commandes habituelles ::" #: using/unix.rst:81 +#, fuzzy msgid "" -"Configuration options and caveats for specific Unix platforms are " -"extensively documented in the :source:`README.rst` file in the root of the " -"Python source tree." +":ref:`Configuration options ` and caveats for specific " +"Unix platforms are extensively documented in the :source:`README.rst` file " +"in the root of the Python source tree." msgstr "" "Les options de configuration et mises en garde pour certaines plateformes " "Unix spécifiques sont largement documentées dans le fichier :source:`README." @@ -266,3 +267,35 @@ msgid "" msgstr "" "Pour utiliser des commandes *shell* dans vos scripts Python, regardez le " "module :mod:`subprocess`." + +#: using/unix.rst:141 +msgid "Custom OpenSSL" +msgstr "" + +#: using/unix.rst:143 +msgid "" +"To use your vendor's OpenSSL configuration and system trust store, locate " +"the directory with ``openssl.cnf`` file or symlink in ``/etc``. On most " +"distribution the file is either in ``/etc/ssl`` or ``/etc/pki/tls``. The " +"directory should also contain a ``cert.pem`` file and/or a ``certs`` " +"directory." +msgstr "" + +#: using/unix.rst:154 +msgid "" +"Download, build, and install OpenSSL. Make sure you use ``install_sw`` and " +"not ``install``. The ``install_sw`` target does not override ``openssl.cnf``." +msgstr "" + +#: using/unix.rst:171 +msgid "" +"Build Python with custom OpenSSL (see the configure `--with-openssl` and `--" +"with-openssl-rpath` options)" +msgstr "" + +#: using/unix.rst:186 +msgid "" +"Patch releases of OpenSSL have a backwards compatible ABI. You don't need to " +"recompile Python to update OpenSSL. It's sufficient to replace the custom " +"OpenSSL installation with a newer version." +msgstr "" diff --git a/using/windows.po b/using/windows.po index 219f2ef11..5465a64fe 100644 --- a/using/windows.po +++ b/using/windows.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 22:36+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2021-09-04 02:05+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -1420,12 +1420,13 @@ msgstr "" "for Linux*)." #: using/windows.rst:622 +#, fuzzy msgid "" -"You can use UTF-8 mode to change the default text encoding to UTF-8. You can " -"enable UTF-8 mode via the ``-X utf8`` command line option, or the " -"``PYTHONUTF8=1`` environment variable. See :envvar:`PYTHONUTF8` for " -"enabling UTF-8 mode, and :ref:`setting-envvars` for how to modify " -"environment variables." +"You can use the :ref:`Python UTF-8 Mode ` to change the default " +"text encoding to UTF-8. You can enable the :ref:`Python UTF-8 Mode ` via the ``-X utf8`` command line option, or the ``PYTHONUTF8=1`` " +"environment variable. See :envvar:`PYTHONUTF8` for enabling UTF-8 mode, " +"and :ref:`setting-envvars` for how to modify environment variables." msgstr "" "Vous pouvez utiliser le mode UTF-8 pour changer le codage de texte par " "défaut en UTF-8. Vous pouvez activer le mode UTF-8 via l'option de ligne de " @@ -1434,35 +1435,12 @@ msgstr "" "pour savoir comment modifier les variables d'environnement." #: using/windows.rst:628 -msgid "When UTF-8 mode is enabled:" -msgstr "Lorsque le mode UTF-8 est activé :" - -#: using/windows.rst:630 msgid "" -":func:`locale.getpreferredencoding` returns ``'UTF-8'`` instead of the " -"system encoding. This function is used for the default text encoding in " -"many places, including :func:`open`, :class:`Popen`, :meth:`Path.read_text`, " -"etc." -msgstr "" -":func:`locale.getpreferredencoding` renvoie ``UTF-8`` au lieu de l'encodage " -"du système. Cette fonction est utilisée pour le codage du texte par défaut " -"à de nombreux endroits, y compris :func:`open`, :class:`Popen`, :meth:`Path." -"read_text`, etc." - -#: using/windows.rst:634 -msgid "" -":data:`sys.stdin`, :data:`sys.stdout`, and :data:`sys.stderr` all use UTF-8 " -"as their text encoding." -msgstr "" -":data:`sys.stdin`, :data:`sys.stdout`, et :data:`sys.stderr` utilisent tous " -"l'UTF-8 comme codage de texte." - -#: using/windows.rst:636 -msgid "You can still use the system encoding via the \"mbcs\" codec." +"When the :ref:`Python UTF-8 Mode ` is enabled, you can still use " +"the system encoding (the ANSI Code Page) via the \"mbcs\" codec." msgstr "" -"Vous pouvez toujours utiliser l'encodage du système via le codec ``mbcs``." -#: using/windows.rst:638 +#: using/windows.rst:631 msgid "" "Note that adding ``PYTHONUTF8=1`` to the default environment variables will " "affect all Python 3.7+ applications on your system. If you have any Python " @@ -1476,7 +1454,7 @@ msgstr "" "système existant, il est recommandé de définir la variable d'environnement " "temporairement ou d'utiliser l'option de ligne de commande ``-X utf8``." -#: using/windows.rst:645 +#: using/windows.rst:638 msgid "" "Even when UTF-8 mode is disabled, Python uses UTF-8 by default on Windows " "for:" @@ -1484,22 +1462,25 @@ msgstr "" "même lorsque le mode UTF-8 est désactivé, Python utilise UTF-8 par défaut " "sur Windows pour :" -#: using/windows.rst:648 +#: using/windows.rst:641 msgid "Console I/O including standard I/O (see :pep:`528` for details)." msgstr "" "Les E/S de la console, y compris les E/S standards (voir :pep:`528` pour " "plus de détails)." -#: using/windows.rst:649 -msgid "The filesystem encoding (see :pep:`529` for details)." +#: using/windows.rst:642 +#, fuzzy +msgid "" +"The :term:`filesystem encoding ` " +"(see :pep:`529` for details)." msgstr "" "L'encodage du système de fichiers (voir :pep:`529` pour plus de détails)." -#: using/windows.rst:655 +#: using/windows.rst:649 msgid "Python Launcher for Windows" msgstr "Lanceur Python pour Windows" -#: using/windows.rst:659 +#: using/windows.rst:653 msgid "" "The Python launcher for Windows is a utility which aids in locating and " "executing of different Python versions. It allows scripts (or the command-" @@ -1511,7 +1492,7 @@ msgstr "" "à la ligne de commande) d'indiquer une préférence pour une version Python " "spécifique, cherchera et exécutera cette version." -#: using/windows.rst:664 +#: using/windows.rst:658 msgid "" "Unlike the :envvar:`PATH` variable, the launcher will correctly select the " "most appropriate version of Python. It will prefer per-user installations " @@ -1523,19 +1504,19 @@ msgstr "" "installations par utilisateur sur celles du système, et les trie par version " "plutôt que d'utiliser la version la plus récente installée." -#: using/windows.rst:669 +#: using/windows.rst:663 msgid "The launcher was originally specified in :pep:`397`." msgstr "Le lanceur a été initialement spécifié dans :pep:`397`." -#: using/windows.rst:672 +#: using/windows.rst:666 msgid "Getting started" msgstr "Pour commencer" -#: using/windows.rst:675 +#: using/windows.rst:669 msgid "From the command-line" msgstr "Depuis la ligne de commande" -#: using/windows.rst:679 +#: using/windows.rst:673 msgid "" "System-wide installations of Python 3.3 and later will put the launcher on " "your :envvar:`PATH`. The launcher is compatible with all available versions " @@ -1548,7 +1529,7 @@ msgstr "" "vérifier que le lanceur est disponible, exécutez la commande suivante dans " "l'invite de commandes :" -#: using/windows.rst:688 +#: using/windows.rst:682 msgid "" "You should find that the latest version of Python you have installed is " "started - it can be exited as normal, and any additional command-line " @@ -1558,7 +1539,7 @@ msgstr "" "peut être quitté normalement, et tous les arguments de ligne de commande " "supplémentaires spécifiés seront envoyés directement à Python." -#: using/windows.rst:692 +#: using/windows.rst:686 msgid "" "If you have multiple versions of Python installed (e.g., 2.7 and |version|) " "you will have noticed that Python |version| was started - to launch Python " @@ -1568,7 +1549,7 @@ msgstr "" "version|), vous aurez remarqué que Python |version| se lance -- pour lancer " "Python 2.7, essayez la commande :" -#: using/windows.rst:700 +#: using/windows.rst:694 msgid "" "If you want the latest version of Python 2.x you have installed, try the " "command:" @@ -1576,15 +1557,15 @@ msgstr "" "Si vous voulez que la dernière version de Python 2.x que vous avez installé, " "essayez la commande :" -#: using/windows.rst:707 +#: using/windows.rst:701 msgid "You should find the latest version of Python 2.x starts." msgstr "Remarquez que la dernière version de Python 2.x démarre." -#: using/windows.rst:709 +#: using/windows.rst:703 msgid "If you see the following error, you do not have the launcher installed:" msgstr "Si vous voyez l'erreur suivante, le lanceur n'est pas installé :" -#: using/windows.rst:716 +#: using/windows.rst:710 msgid "" "Per-user installations of Python do not add the launcher to :envvar:`PATH` " "unless the option was selected on installation." @@ -1592,11 +1573,11 @@ msgstr "" "Les installations par utilisateur de Python n'ajoutent pas le lanceur à :" "envvar:`PATH` sauf si l'option a été sélectionnée lors de l'installation." -#: using/windows.rst:720 +#: using/windows.rst:714 msgid "Virtual environments" msgstr "Environnements virtuels" -#: using/windows.rst:724 +#: using/windows.rst:718 msgid "" "If the launcher is run with no explicit Python version specification, and a " "virtual environment (created with the standard library :mod:`venv` module or " @@ -1612,11 +1593,11 @@ msgstr "" "Pour exécuter l'interpréteur global, désactivez l'environnement virtuel ou " "spécifiez explicitement la version Python globale." -#: using/windows.rst:732 +#: using/windows.rst:726 msgid "From a script" msgstr "À partir d'un script" -#: using/windows.rst:734 +#: using/windows.rst:728 msgid "" "Let's create a test Python script - create a file called ``hello.py`` with " "the following contents" @@ -1624,13 +1605,13 @@ msgstr "" "Créons un script Python de test, créez un fichier appelé ``hello.py`` avec " "le contenu suivant" -#: using/windows.rst:743 +#: using/windows.rst:737 msgid "From the directory in which hello.py lives, execute the command:" msgstr "" "À partir du répertoire dans lequel se trouve ``hello.py``, exécutez la " "commande :" -#: using/windows.rst:749 +#: using/windows.rst:743 msgid "" "You should notice the version number of your latest Python 2.x installation " "is printed. Now try changing the first line to be:" @@ -1638,7 +1619,7 @@ msgstr "" "Vous devriez voir le numéro de version du Python 2.x le plus récemment " "installé. Maintenant, essayez de changer la première ligne en :" -#: using/windows.rst:756 +#: using/windows.rst:750 msgid "" "Re-executing the command should now print the latest Python 3.x information. " "As with the above command-line examples, you can specify a more explicit " @@ -1653,7 +1634,7 @@ msgstr "" "python2.6`` et vous devriez trouver les informations de version 2.6 " "imprimées." -#: using/windows.rst:762 +#: using/windows.rst:756 msgid "" "Note that unlike interactive use, a bare \"python\" will use the latest " "version of Python 2.x that you have installed. This is for backward " @@ -1665,11 +1646,11 @@ msgstr "" "pour la compatibilité ascendante et pour la compatibilité avec UNIX, où la " "commande ``python`` fait généralement référence à Python 2." -#: using/windows.rst:768 +#: using/windows.rst:762 msgid "From file associations" msgstr "À partir d'associations de fichiers" -#: using/windows.rst:770 +#: using/windows.rst:764 msgid "" "The launcher should have been associated with Python files (i.e. ``.py``, ``." "pyw``, ``.pyc`` files) when it was installed. This means that when you " @@ -1684,7 +1665,7 @@ msgstr "" "les mêmes installations décrites ci-dessus pour que le script spécifie la " "version qui doit être utilisée." -#: using/windows.rst:776 +#: using/windows.rst:770 msgid "" "The key benefit of this is that a single launcher can support multiple " "Python versions at the same time depending on the contents of the first line." @@ -1693,11 +1674,11 @@ msgstr "" "plusieurs versions de Python en même temps en fonction du contenu de la " "première ligne." -#: using/windows.rst:780 +#: using/windows.rst:774 msgid "Shebang Lines" msgstr "Lignes Shebang" -#: using/windows.rst:782 +#: using/windows.rst:776 msgid "" "If the first line of a script file starts with ``#!``, it is known as a " "\"shebang\" line. Linux and other Unix like operating systems have native " @@ -1714,7 +1695,7 @@ msgstr "" "des scripts Python sur Windows et les exemples ci-dessus démontrent leur " "utilisation." -#: using/windows.rst:789 +#: using/windows.rst:783 msgid "" "To allow shebang lines in Python scripts to be portable between Unix and " "Windows, this launcher supports a number of 'virtual' commands to specify " @@ -1725,27 +1706,27 @@ msgstr "" "« virtuelles » pour spécifier l'interpréteur à utiliser. Les commandes " "virtuelles prises en charge sont :" -#: using/windows.rst:793 +#: using/windows.rst:787 msgid "``/usr/bin/env python``" msgstr "``/usr/bin/env python``" -#: using/windows.rst:794 +#: using/windows.rst:788 msgid "``/usr/bin/python``" msgstr "``/usr/bin/python``" -#: using/windows.rst:795 +#: using/windows.rst:789 msgid "``/usr/local/bin/python``" msgstr "``/usr/local/bin/python``" -#: using/windows.rst:796 +#: using/windows.rst:790 msgid "``python``" msgstr "``python``" -#: using/windows.rst:798 +#: using/windows.rst:792 msgid "For example, if the first line of your script starts with" msgstr "Par exemple, si la première ligne de votre script commence par" -#: using/windows.rst:804 +#: using/windows.rst:798 msgid "" "The default Python will be located and used. As many Python scripts written " "to work on Unix will already have this line, you should find these scripts " @@ -1759,7 +1740,7 @@ msgstr "" "nouveau script sur Windows et que vous pensez qu'il sera utile sur UNIX, " "vous devez utiliser l'une des lignes *shebang* commençant par ``/usr``." -#: using/windows.rst:810 +#: using/windows.rst:804 msgid "" "Any of the above virtual commands can be suffixed with an explicit version " "(either just the major version, or the major and minor version). Furthermore " @@ -1773,7 +1754,7 @@ msgstr "" "**-32** après le numéro de version mineur. Par exemple ``/usr/bin/" "python2.7-32`` demande d’utiliser la version 32-bit de Python 2.7." -#: using/windows.rst:818 +#: using/windows.rst:812 msgid "" "Beginning with python launcher 3.7 it is possible to request 64-bit version " "by the \"-64\" suffix. Furthermore it is possible to specify a major and " @@ -1784,7 +1765,7 @@ msgstr "" "spécifier une version majeure et une architecture sans version mineure (par " "exemple ``/usr/bin/python3-64``)." -#: using/windows.rst:822 +#: using/windows.rst:816 msgid "" "The ``/usr/bin/env`` form of shebang line has one further special property. " "Before looking for installed Python interpreters, this form will search the " @@ -1798,11 +1779,11 @@ msgstr "" "au comportement du programme Unix ``env``, qui effectue une recherche dans :" "envvar:`PATH`." -#: using/windows.rst:828 +#: using/windows.rst:822 msgid "Arguments in shebang lines" msgstr "Arguments dans les lignes *shebang*" -#: using/windows.rst:830 +#: using/windows.rst:824 msgid "" "The shebang lines can also specify additional options to be passed to the " "Python interpreter. For example, if you have a shebang line:" @@ -1811,19 +1792,19 @@ msgstr "" "à passer à l'interpréteur Python. Par exemple, si vous avez une ligne " "*shebang* :" -#: using/windows.rst:837 +#: using/windows.rst:831 msgid "Then Python will be started with the ``-v`` option" msgstr "Alors, Python sera démarré avec l'option ``-v``" -#: using/windows.rst:840 +#: using/windows.rst:834 msgid "Customization" msgstr "Personnalisation" -#: using/windows.rst:843 +#: using/windows.rst:837 msgid "Customization via INI files" msgstr "Personnalisation via des fichiers INI" -#: using/windows.rst:845 +#: using/windows.rst:839 msgid "" "Two .ini files will be searched by the launcher - ``py.ini`` in the current " "user's \"application data\" directory (i.e. the directory returned by " @@ -1840,7 +1821,7 @@ msgstr "" "« console » du lanceur (c'est-à-dire ``py.exe``) et pour la version " "« fenêtrée » (c'est-à-dire ``pyw.exe``)." -#: using/windows.rst:852 +#: using/windows.rst:846 msgid "" "Customization specified in the \"application directory\" will have " "precedence over the one next to the executable, so a user, who may not have " @@ -1852,11 +1833,11 @@ msgstr "" "qui peut ne pas avoir accès en écriture au fichier ``.ini`` à côté du " "lanceur, peut substituer des commandes dans ce fichier ``.ini`` global)" -#: using/windows.rst:857 +#: using/windows.rst:851 msgid "Customizing default Python versions" msgstr "Personnalisation des versions Python par défaut" -#: using/windows.rst:859 +#: using/windows.rst:853 msgid "" "In some cases, a version qualifier can be included in a command to dictate " "which version of Python will be used by the command. A version qualifier " @@ -1873,7 +1854,7 @@ msgstr "" "implémentation 32 ou 64 bit doit être demandée en ajoutant **-32** ou " "**-64**." -#: using/windows.rst:865 +#: using/windows.rst:859 msgid "" "For example, a shebang line of ``#!python`` has no version qualifier, while " "``#!python3`` has a version qualifier which specifies only a major version." @@ -1882,7 +1863,7 @@ msgstr "" "qualificateur de version, tandis que ``#!python3`` a un qualificateur de " "version qui ne spécifie qu'une version majeure." -#: using/windows.rst:868 +#: using/windows.rst:862 msgid "" "If no version qualifiers are found in a command, the environment variable :" "envvar:`PY_PYTHON` can be set to specify the default version qualifier. If " @@ -1899,7 +1880,7 @@ msgstr "" "``3.7-32`` ou ``3.7-64``. (Notez que l’option **-64** est seulement " "disponible avec le lanceur inclus avec Python 3.7 ou plus récent.)" -#: using/windows.rst:875 +#: using/windows.rst:869 msgid "" "If no minor version qualifiers are found, the environment variable " "``PY_PYTHON{major}`` (where ``{major}`` is the current major version " @@ -1917,7 +1898,7 @@ msgstr "" "la dernière version mineure trouvée pour la version principale, qui est " "probablement la plus récemment installée dans cette famille." -#: using/windows.rst:883 +#: using/windows.rst:877 msgid "" "On 64-bit Windows with both 32-bit and 64-bit implementations of the same " "(major.minor) Python version installed, the 64-bit version will always be " @@ -1942,11 +1923,11 @@ msgstr "" "un suffixe optionnel ``-32`` ou ``-64`` peut être utilisé sur un " "spécificateur de version pour modifier ce comportement." -#: using/windows.rst:894 +#: using/windows.rst:888 msgid "Examples:" msgstr "Exemples :" -#: using/windows.rst:896 +#: using/windows.rst:890 msgid "" "If no relevant options are set, the commands ``python`` and ``python2`` will " "use the latest Python 2.x version installed and the command ``python3`` will " @@ -1956,7 +1937,7 @@ msgstr "" "``python2`` utiliseront la dernière version de Python 2.x installée et la " "commande ``python3`` utilisera le dernier Python 3.x installé." -#: using/windows.rst:900 +#: using/windows.rst:894 msgid "" "The commands ``python3.1`` and ``python2.7`` will not consult any options at " "all as the versions are fully specified." @@ -1964,7 +1945,7 @@ msgstr "" "Les commandes ``python3.1`` et ``python2.7`` ne consultent aucune option du " "tout car les versions sont entièrement spécifiées." -#: using/windows.rst:903 +#: using/windows.rst:897 msgid "" "If ``PY_PYTHON=3``, the commands ``python`` and ``python3`` will both use " "the latest installed Python 3 version." @@ -1972,7 +1953,7 @@ msgstr "" "Si ``PY_PYTHON=3``, les commandes ``python`` et ``python3`` utiliseront la " "dernière version de Python 3 installée." -#: using/windows.rst:906 +#: using/windows.rst:900 msgid "" "If ``PY_PYTHON=3.1-32``, the command ``python`` will use the 32-bit " "implementation of 3.1 whereas the command ``python3`` will use the latest " @@ -1984,7 +1965,7 @@ msgstr "" "installé (*PY_PYTHON* n'a pas été considéré du tout comme une version " "majeure a été spécifiée.)" -#: using/windows.rst:911 +#: using/windows.rst:905 msgid "" "If ``PY_PYTHON=3`` and ``PY_PYTHON3=3.1``, the commands ``python`` and " "``python3`` will both use specifically 3.1" @@ -1992,7 +1973,7 @@ msgstr "" "Si ``PY_PYTHON=3`` et ``PY_PYTHON3=3.1``, les commandes ``python`` et " "``python3`` utiliseront spécifiquement 3.1" -#: using/windows.rst:914 +#: using/windows.rst:908 msgid "" "In addition to environment variables, the same settings can be configured in " "the .INI file used by the launcher. The section in the INI file is called " @@ -2009,15 +1990,15 @@ msgstr "" "contenu d'une variable d'environnement remplacera les éléments spécifiés " "dans le fichier *INI*." -#: using/windows.rst:921 +#: using/windows.rst:915 msgid "For example:" msgstr "Par exemple :" -#: using/windows.rst:923 +#: using/windows.rst:917 msgid "Setting ``PY_PYTHON=3.1`` is equivalent to the INI file containing:" msgstr "Le paramètre ``PY_PYTHON=3.1`` équivaut au fichier **INI** contenant :" -#: using/windows.rst:930 +#: using/windows.rst:924 msgid "" "Setting ``PY_PYTHON=3`` and ``PY_PYTHON3=3.1`` is equivalent to the INI file " "containing:" @@ -2025,11 +2006,11 @@ msgstr "" "Le paramètre ``PY_PYTHON=3`` et ``PY_PYTHON3=3.1`` équivaut au fichier *INI* " "contenant :" -#: using/windows.rst:940 +#: using/windows.rst:934 msgid "Diagnostics" msgstr "Diagnostics" -#: using/windows.rst:942 +#: using/windows.rst:936 msgid "" "If an environment variable ``PYLAUNCH_DEBUG`` is set (to any value), the " "launcher will print diagnostic information to stderr (i.e. to the console). " @@ -2046,11 +2027,11 @@ msgstr "" "une version particulière a été choisie et la ligne de commande exacte " "utilisée pour exécuter le Python cible." -#: using/windows.rst:954 +#: using/windows.rst:948 msgid "Finding modules" msgstr "Recherche de modules" -#: using/windows.rst:956 +#: using/windows.rst:950 msgid "" "Python usually stores its library (and thereby your site-packages folder) in " "the installation directory. So, if you had installed Python to :file:`C:\\" @@ -2064,7 +2045,7 @@ msgstr "" "dans :file:`C:\\\\Python\\\\Lib\\\\` et les modules tiers devraient être " "stockés dans :file:`C:\\\\Python\\\\Lib\\\\site-packages\\\\`." -#: using/windows.rst:962 +#: using/windows.rst:956 msgid "" "To completely override :data:`sys.path`, create a ``._pth`` file with the " "same name as the DLL (``python37._pth``) or the executable (``python._pth``) " @@ -2079,7 +2060,7 @@ msgstr "" "l'exécutable, qui permet aux chemins d'être restreints pour tout programme " "chargeant le *runtime* si désiré." -#: using/windows.rst:968 +#: using/windows.rst:962 msgid "" "When the file exists, all registry and environment variables are ignored, " "isolated mode is enabled, and :mod:`site` is not imported unless one line in " @@ -2096,7 +2077,7 @@ msgstr "" "importations autres que vers *site* ne sont pas autorisées, ni n'importe " "quelle instruction Python." -#: using/windows.rst:975 +#: using/windows.rst:969 msgid "" "Note that ``.pth`` files (without leading underscore) will be processed " "normally by the :mod:`site` module when ``import site`` has been specified." @@ -2105,7 +2086,7 @@ msgstr "" "seront traités normalement par le module :mod:`site` lorsque ``import site`` " "a été spécifié." -#: using/windows.rst:978 +#: using/windows.rst:972 msgid "" "When no ``._pth`` file is found, this is how :data:`sys.path` is populated " "on Windows:" @@ -2113,14 +2094,14 @@ msgstr "" "Lorsque aucun fichier ``._pth`` n'est trouvé, voilà comment :data:`sys.path` " "est construit sur Windows :" -#: using/windows.rst:981 +#: using/windows.rst:975 msgid "" "An empty entry is added at the start, which corresponds to the current " "directory." msgstr "" "Une entrée vide est ajoutée au début, qui correspond au répertoire courant." -#: using/windows.rst:984 +#: using/windows.rst:978 msgid "" "If the environment variable :envvar:`PYTHONPATH` exists, as described in :" "ref:`using-on-envvars`, its entries are added next. Note that on Windows, " @@ -2133,7 +2114,7 @@ msgstr "" "des points-virgules, pour les distinguer des deux points utilisés dans les " "identificateurs de lecteur (``C:\\`` etc.)." -#: using/windows.rst:989 +#: using/windows.rst:983 msgid "" "Additional \"application paths\" can be added in the registry as subkeys of :" "samp:`\\\\SOFTWARE\\\\Python\\\\PythonCore\\\\{version}\\\\PythonPath` under " @@ -2151,7 +2132,7 @@ msgstr "" "tous les installateurs connus utilisent seulement HKLM, donc HKCU est " "généralement vide.)" -#: using/windows.rst:996 +#: using/windows.rst:990 msgid "" "If the environment variable :envvar:`PYTHONHOME` is set, it is assumed as " "\"Python Home\". Otherwise, the path of the main Python executable is used " @@ -2170,7 +2151,7 @@ msgstr "" "chemin d'accès Python principal est construit à partir du PythonPath stocké " "dans le registre." -#: using/windows.rst:1004 +#: using/windows.rst:998 msgid "" "If the Python Home cannot be located, no :envvar:`PYTHONPATH` is specified " "in the environment, and no registry entries can be found, a default path " @@ -2181,7 +2162,7 @@ msgstr "" "trouvée, un chemin par défaut avec des entrées relatives est utilisé (par " "exemple ``.\\Lib`` ; ``.\\plat-win``, etc.)." -#: using/windows.rst:1008 +#: using/windows.rst:1002 msgid "" "If a ``pyvenv.cfg`` file is found alongside the main executable or in the " "directory one level above the executable, the following variations apply:" @@ -2190,7 +2171,7 @@ msgstr "" "dans le répertoire un niveau au-dessus de l'exécutable, les variantes " "suivantes s'appliquent :" -#: using/windows.rst:1011 +#: using/windows.rst:1005 msgid "" "If ``home`` is an absolute path and :envvar:`PYTHONHOME` is not set, this " "path is used instead of the path to the main executable when deducing the " @@ -2200,11 +2181,11 @@ msgstr "" "ce chemin d'accès est utilisé au lieu du chemin d'accès à l'exécutable " "principal lors de la déduction de l'emplacement du `home`." -#: using/windows.rst:1015 +#: using/windows.rst:1009 msgid "The end result of all this is:" msgstr "Le résultat final de tout ceci est :" -#: using/windows.rst:1017 +#: using/windows.rst:1011 msgid "" "When running :file:`python.exe`, or any other .exe in the main Python " "directory (either an installed version, or directly from the PCbuild " @@ -2217,7 +2198,7 @@ msgstr "" "chemins d'accès principaux dans le Registre sont ignorés. D'autres \"chemins " "d'application\" dans le registre sont toujours lus." -#: using/windows.rst:1022 +#: using/windows.rst:1016 msgid "" "When Python is hosted in another .exe (different directory, embedded via " "COM, etc), the \"Python Home\" will not be deduced, so the core path from " @@ -2229,7 +2210,7 @@ msgstr "" "sorte que le chemin d'accès principal du registre est utilisé. D'autres " "\"chemins d'application\" dans le registre sont toujours lus." -#: using/windows.rst:1026 +#: using/windows.rst:1020 msgid "" "If Python can't find its home and there are no registry value (frozen .exe, " "some very strange installation setup) you get a path with some default, but " @@ -2239,7 +2220,7 @@ msgstr "" "registre (*.exe* figé, une installation très étrange) vous obtenez un chemin " "d'accès avec certains chemins par défaut, mais relatif." -#: using/windows.rst:1030 +#: using/windows.rst:1024 msgid "" "For those who want to bundle Python into their application or distribution, " "the following advice will prevent conflicts with other installations:" @@ -2248,7 +2229,7 @@ msgstr "" "distribution, les conseils suivants empêcheront les conflits avec d'autres " "installations :" -#: using/windows.rst:1033 +#: using/windows.rst:1027 msgid "" "Include a ``._pth`` file alongside your executable containing the " "directories to include. This will ignore paths listed in the registry and " @@ -2260,7 +2241,7 @@ msgstr "" "registre et les variables d'environnement, et ignorera également :mod:`site` " "à moins que ``import site`` soit listé." -#: using/windows.rst:1038 +#: using/windows.rst:1032 msgid "" "If you are loading :file:`python3.dll` or :file:`python37.dll` in your own " "executable, explicitly call :c:func:`Py_SetPath` or (at least) :c:func:" @@ -2270,7 +2251,7 @@ msgstr "" "propre exécutable, appelez explicitement :c:func:`Py_SetPath` ou (au moins) :" "c:func:`Py_SetProgramName` avant :c:func:`Py_Initialize`." -#: using/windows.rst:1042 +#: using/windows.rst:1036 msgid "" "Clear and/or overwrite :envvar:`PYTHONPATH` and set :envvar:`PYTHONHOME` " "before launching :file:`python.exe` from your application." @@ -2278,7 +2259,7 @@ msgstr "" "Effacer et/ou écraser :envvar:`PYTHONPATH` et configurez :envvar:" "`PYTHONHOME` avant de lancer le :file:`python.exe` de votre application." -#: using/windows.rst:1045 +#: using/windows.rst:1039 msgid "" "If you cannot use the previous suggestions (for example, you are a " "distribution that allows people to run :file:`python.exe` directly), ensure " @@ -2293,7 +2274,7 @@ msgstr "" "détecté à l'intérieur d'un fichier ZIP, mais un fichier ZIP correctement " "nommé sera détecté à la place.)" -#: using/windows.rst:1051 +#: using/windows.rst:1045 msgid "" "These will ensure that the files in a system-wide installation will not take " "precedence over the copy of the standard library bundled with your " @@ -2309,7 +2290,7 @@ msgstr "" "suggestion est la meilleure, car les autres peuvent encore être sensibles " "aux chemins non-standard dans le registre et le *site-packages* utilisateur." -#: using/windows.rst:1060 +#: using/windows.rst:1054 msgid "" "Adds ``._pth`` file support and removes ``applocal`` option from ``pyvenv." "cfg``." @@ -2317,7 +2298,7 @@ msgstr "" "Ajout de la gestion des ``._pth`` et suppression de l'option ``applocal`` de " "``pyvenv.cfg``." -#: using/windows.rst:1062 +#: using/windows.rst:1056 msgid "" "Adds ``pythonXX.zip`` as a potential landmark when directly adjacent to the " "executable." @@ -2325,7 +2306,7 @@ msgstr "" "Ajout de ``pythonXX.zip`` comme point de repère potentiel lorsqu'il est " "directement adjacent à l'exécutable." -#: using/windows.rst:1068 +#: using/windows.rst:1062 msgid "" "Modules specified in the registry under ``Modules`` (not ``PythonPath``) may " "be imported by :class:`importlib.machinery.WindowsRegistryFinder`. This " @@ -2338,11 +2319,11 @@ msgstr "" "récent, mais il pourrait être nécessaire de l'ajouter explicitement à :attr:" "`sys.meta_path` à l'avenir." -#: using/windows.rst:1074 +#: using/windows.rst:1068 msgid "Additional modules" msgstr "Modules supplémentaires" -#: using/windows.rst:1076 +#: using/windows.rst:1070 msgid "" "Even though Python aims to be portable among all platforms, there are " "features that are unique to Windows. A couple of modules, both in the " @@ -2353,7 +2334,7 @@ msgstr "" "dans la bibliothèque standard et externe, et des exemples existent pour " "utiliser ces fonctionnalités." -#: using/windows.rst:1080 +#: using/windows.rst:1074 msgid "" "The Windows-specific standard modules are documented in :ref:`mswin-specific-" "services`." @@ -2361,11 +2342,11 @@ msgstr "" "Les modules standard de Windows sont documentés dans :ref:`mswin-specific-" "services`." -#: using/windows.rst:1084 +#: using/windows.rst:1078 msgid "PyWin32" msgstr "PyWin32" -#: using/windows.rst:1086 +#: using/windows.rst:1080 msgid "" "The `PyWin32 `_ module by Mark Hammond is " "a collection of modules for advanced Windows-specific support. This " @@ -2375,7 +2356,7 @@ msgstr "" "une collection de modules pour un support avancé spécifique à Windows. Cela " "inclut les services pour :" -#: using/windows.rst:1090 +#: using/windows.rst:1084 msgid "" "`Component Object Model `_ (COM)" @@ -2383,19 +2364,19 @@ msgstr "" "`Component Object Model `_ (COM)" -#: using/windows.rst:1093 +#: using/windows.rst:1087 msgid "Win32 API calls" msgstr "Appels à l'API Win32" -#: using/windows.rst:1094 +#: using/windows.rst:1088 msgid "Registry" msgstr "Registre" -#: using/windows.rst:1095 +#: using/windows.rst:1089 msgid "Event log" msgstr "Journal d'événement" -#: using/windows.rst:1096 +#: using/windows.rst:1090 msgid "" "`Microsoft Foundation Classes `_ (MFC) user interfaces" @@ -2403,7 +2384,7 @@ msgstr "" "`Microsoft Foundation Classes `_ (MFC) interfaces utilisateur" -#: using/windows.rst:1099 +#: using/windows.rst:1093 msgid "" "`PythonWin `_ is a sample MFC application shipped with PyWin32. " @@ -2413,29 +2394,29 @@ msgstr "" "windows/pythonwin/>`_ est un exemple d'application MFC livrée avec PyWin32. " "Il s'agit d'un IDE embarqué avec débogueur intégré." -#: using/windows.rst:1106 +#: using/windows.rst:1100 msgid "" "`Win32 How Do I...? `_" msgstr "" "`Win32 How Do I...? `_" -#: using/windows.rst:1106 +#: using/windows.rst:1100 msgid "by Tim Golden" msgstr "par Tim Golden" -#: using/windows.rst:1108 +#: using/windows.rst:1102 msgid "`Python and COM `_" msgstr "`Python and COM `_" -#: using/windows.rst:1109 +#: using/windows.rst:1103 msgid "by David and Paul Boddie" msgstr "par David et Paul Boddie" -#: using/windows.rst:1113 +#: using/windows.rst:1107 msgid "cx_Freeze" msgstr "cx_Freeze" -#: using/windows.rst:1115 +#: using/windows.rst:1109 msgid "" "`cx_Freeze `_ is a :mod:" "`distutils` extension (see :ref:`extending-distutils`) which wraps Python " @@ -2449,11 +2430,11 @@ msgstr "" "`{*}.exe`). Lorsque vous l'avez fait, vous pouvez distribuer votre " "application sans demander à vos utilisateurs d'installer Python." -#: using/windows.rst:1123 +#: using/windows.rst:1117 msgid "WConio" msgstr "WConio" -#: using/windows.rst:1125 +#: using/windows.rst:1119 msgid "" "Since Python's advanced terminal handling layer, :mod:`curses`, is " "restricted to Unix-like systems, there is a library exclusive to Windows as " @@ -2463,7 +2444,7 @@ msgstr "" "est limité aux systèmes de type UNIX, il existe une bibliothèque exclusive à " "Windows : *Windows Console I/O for Python*." -#: using/windows.rst:1129 +#: using/windows.rst:1123 msgid "" "`WConio `_ is a wrapper " "for Turbo-C's :file:`CONIO.H`, used to create text user interfaces." @@ -2472,11 +2453,11 @@ msgstr "" "*wrapper* pour les fichiers Turbo-C :file:`CONIO.H`, utilisé pour créer des " "interfaces texte utilisateur." -#: using/windows.rst:1135 +#: using/windows.rst:1129 msgid "Compiling Python on Windows" msgstr "Compiler Python sous Windows" -#: using/windows.rst:1137 +#: using/windows.rst:1131 msgid "" "If you want to compile CPython yourself, first thing you should do is get " "the `source `_. You can download " @@ -2488,7 +2469,7 @@ msgstr "" "télécharger soit la source de la dernière version ou tout simplement prendre " "un `checkout `_." -#: using/windows.rst:1142 +#: using/windows.rst:1136 msgid "" "The source tree contains a build solution and project files for Microsoft " "Visual Studio 2015, which is the compiler used to build the official Python " @@ -2499,7 +2480,7 @@ msgstr "" "pour générer les versions officielles de Python. Ces fichiers se trouvent " "dans le répertoire :file:`PCbuild`." -#: using/windows.rst:1146 +#: using/windows.rst:1140 msgid "" "Check :file:`PCbuild/readme.txt` for general information on the build " "process." @@ -2507,11 +2488,11 @@ msgstr "" "Consultez :file:`PC/readme.txt` pour des informations générales sur le " "processus de construction." -#: using/windows.rst:1149 +#: using/windows.rst:1143 msgid "For extension modules, consult :ref:`building-on-windows`." msgstr "Pour les modules d'extension, consultez :ref:`building-on-windows`." -#: using/windows.rst:1155 +#: using/windows.rst:1149 msgid "" "`Python + Windows + distutils + SWIG + gcc MinGW `_" @@ -2519,7 +2500,7 @@ msgstr "" "`Python + Windows + distutils + SWIG + gcc MinGW `_" -#: using/windows.rst:1154 +#: using/windows.rst:1148 msgid "" "or \"Creating Python extensions in C/C++ with SWIG and compiling them with " "MinGW gcc under Windows\" or \"Installing Python extension with distutils " @@ -2529,11 +2510,11 @@ msgstr "" "MinGW gcc under Windows* » ou « *Installing Python extension with distutils " "and without Microsoft Visual C++* » par Sébastien Sauvage, 2003" -#: using/windows.rst:1160 +#: using/windows.rst:1154 msgid "Other Platforms" msgstr "Autres plateformes" -#: using/windows.rst:1162 +#: using/windows.rst:1156 msgid "" "With ongoing development of Python, some platforms that used to be supported " "earlier are no longer supported (due to the lack of users or developers). " @@ -2544,12 +2525,12 @@ msgstr "" "manque d'utilisateurs ou de développeurs). Voir :pep:`11` pour plus de " "détails sur toutes les plateformes non prises en charge." -#: using/windows.rst:1166 +#: using/windows.rst:1160 msgid "`Windows CE `_ is still supported." msgstr "" "`Windows CE `_ est toujours pris en charge." -#: using/windows.rst:1167 +#: using/windows.rst:1161 msgid "" "The `Cygwin `_ installer offers to install the Python " "interpreter as well (cf. `Cygwin package source `_, `Maintainer " "releases `_)" -#: using/windows.rst:1173 +#: using/windows.rst:1167 msgid "" "See `Python for Windows `_ for " "detailed information about platforms with pre-compiled installers." @@ -2570,5 +2551,30 @@ msgstr "" "des instructions détaillées sur les plateformes avec installateurs pré-" "compilés." +#~ msgid "When UTF-8 mode is enabled:" +#~ msgstr "Lorsque le mode UTF-8 est activé :" + +#~ msgid "" +#~ ":func:`locale.getpreferredencoding` returns ``'UTF-8'`` instead of the " +#~ "system encoding. This function is used for the default text encoding in " +#~ "many places, including :func:`open`, :class:`Popen`, :meth:`Path." +#~ "read_text`, etc." +#~ msgstr "" +#~ ":func:`locale.getpreferredencoding` renvoie ``UTF-8`` au lieu de " +#~ "l'encodage du système. Cette fonction est utilisée pour le codage du " +#~ "texte par défaut à de nombreux endroits, y compris :func:`open`, :class:" +#~ "`Popen`, :meth:`Path.read_text`, etc." + +#~ msgid "" +#~ ":data:`sys.stdin`, :data:`sys.stdout`, and :data:`sys.stderr` all use " +#~ "UTF-8 as their text encoding." +#~ msgstr "" +#~ ":data:`sys.stdin`, :data:`sys.stdout`, et :data:`sys.stderr` utilisent " +#~ "tous l'UTF-8 comme codage de texte." + +#~ msgid "You can still use the system encoding via the \"mbcs\" codec." +#~ msgstr "" +#~ "Vous pouvez toujours utiliser l'encodage du système via le codec ``mbcs``." + #~ msgid "`MingW -- Python extensions `_" #~ msgstr "`MingW -- Python extensions `_" diff --git a/whatsnew/2.0.po b/whatsnew/2.0.po index a8b3db97e..8eada3260 100644 --- a/whatsnew/2.0.po +++ b/whatsnew/2.0.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-11-01 11:43+0100\n" "Last-Translator: Melançon Victor \n" "Language-Team: FRENCH \n" @@ -236,7 +236,7 @@ msgid "" "Discussions of new features can often explode into lengthy mailing list " "threads, making the discussion hard to follow, and no one can read every " "posting to python-dev. Therefore, a relatively formal process has been set " -"up to write Python Enhancement Proposals (PEPs), modelled on the Internet " +"up to write Python Enhancement Proposals (PEPs), modelled on the internet " "RFC process. PEPs are draft documents that describe a proposed new feature, " "and are continually revised until the community reaches a consensus, either " "accepting or rejecting the proposal. Quoting from the introduction to :pep:" @@ -1207,7 +1207,7 @@ msgid "" "make it easy to have the Python interpreter use a custom allocator instead " "of C's standard :func:`malloc`. For documentation, read the comments in :" "file:`Include/pymem.h` and :file:`Include/objimpl.h`. For the lengthy " -"discussions during which the interface was hammered out, see the Web " +"discussions during which the interface was hammered out, see the web " "archives of the 'patches' and 'python-dev' lists at python.org." msgstr "" @@ -1458,7 +1458,7 @@ msgstr "" msgid "" "The XML Special Interest Group has been working on XML-related Python code " "for a while. Its code distribution, called PyXML, is available from the " -"SIG's Web pages at https://www.python.org/community/sigs/current/xml-sig. " +"SIG's web pages at https://www.python.org/community/sigs/current/xml-sig. " "The PyXML distribution also used the package name ``xml``. If you've " "written programs that used PyXML, you're probably wondering about its " "compatibility with the 2.0 :mod:`xml` package." @@ -1618,7 +1618,7 @@ msgstr "" #: whatsnew/2.0.rst:1111 msgid "" ":mod:`robotparser`: Parse a :file:`robots.txt` file, which is used for " -"writing Web spiders that politely avoid certain areas of a Web site. The " +"writing web spiders that politely avoid certain areas of a web site. The " "parser accepts the contents of a :file:`robots.txt` file, builds a set of " "rules from it, and can then answer questions about the fetchability of a " "given URL. (Contributed by Skip Montanaro.)" diff --git a/whatsnew/2.1.po b/whatsnew/2.1.po index 2a0d71e13..f7340760d 100644 --- a/whatsnew/2.1.po +++ b/whatsnew/2.1.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-12-11 11:28+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -559,7 +559,7 @@ msgid "" "In Python 2.1, functions can now have arbitrary information attached to " "them. People were often using docstrings to hold information about functions " "and methods, because the ``__doc__`` attribute was the only way of attaching " -"any information to a function. For example, in the Zope Web application " +"any information to a function. For example, in the Zope web application " "server, functions are marked as safe for public access by having a " "docstring, and in John Aycock's SPARK parsing framework, docstrings hold " "parts of the BNF grammar to be parsed. This overloading is unfortunate, " diff --git a/whatsnew/2.2.po b/whatsnew/2.2.po index 062300092..4284ce428 100644 --- a/whatsnew/2.2.po +++ b/whatsnew/2.2.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-08-01 00:07+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -73,7 +73,7 @@ msgstr "" #: whatsnew/2.2.rst:52 msgid "" -"A long time ago I wrote a Web page listing flaws in Python's design. One of " +"A long time ago I wrote a web page listing flaws in Python's design. One of " "the most significant flaws was that it's impossible to subclass Python types " "implemented in C. In particular, it's not possible to subclass built-in " "types, so you can't just subclass, say, lists in order to add a single " diff --git a/whatsnew/2.3.po b/whatsnew/2.3.po index 12170dbd8..07d3048e3 100644 --- a/whatsnew/2.3.po +++ b/whatsnew/2.3.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-07-31 23:42+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -1798,7 +1798,7 @@ msgstr "" msgid "" "The new :mod:`DocXMLRPCServer` module allows writing self-documenting XML-" "RPC servers. Run it in demo mode (as a program) to see it in action. " -"Pointing the Web browser to the RPC server produces pydoc-style " +"Pointing the web browser to the RPC server produces pydoc-style " "documentation; pointing xmlrpclib to the server allows invoking the actual " "methods. (Contributed by Brian Quinlan.)" msgstr "" diff --git a/whatsnew/3.10.po b/whatsnew/3.10.po index b5f0ddc7b..a1b7d4cdc 100644 --- a/whatsnew/3.10.po +++ b/whatsnew/3.10.po @@ -1,17 +1,15 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001-2021, Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. +# Copyright (C) 2001-2018, Python Software Foundation +# For licence information, see README file. # -#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Python 3.10\n" +"Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-18 17:40+0100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"PO-Revision-Date: 2021-09-23 16:29+0200\n" "Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Language-Team: FRENCH \n" +"Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,34 +34,123 @@ msgstr "" msgid "|today|" msgstr "|today|" -#: whatsnew/3.10.rst:48 +#: whatsnew/3.10.rst:0 +msgid "Editor" +msgstr "" + +#: whatsnew/3.10.rst:7 +msgid "Pablo Galindo Salgado" +msgstr "" + +#: whatsnew/3.10.rst:49 msgid "This article explains the new features in Python 3.10, compared to 3.9." msgstr "" -#: whatsnew/3.10.rst:50 +#: whatsnew/3.10.rst:51 msgid "For full details, see the :ref:`changelog `." msgstr "Pour plus de détails, voir le :ref:`changelog `." -#: whatsnew/3.10.rst:54 +#: whatsnew/3.10.rst:55 msgid "" "Prerelease users should be aware that this document is currently in draft " "form. It will be updated substantially as Python 3.10 moves towards release, " "so it's worth checking back even after reading earlier versions." msgstr "" -#: whatsnew/3.10.rst:60 +#: whatsnew/3.10.rst:61 msgid "Summary -- Release highlights" msgstr "Résumé – Points forts de la publication" -#: whatsnew/3.10.rst:1189 -msgid "New Features" +#: whatsnew/3.10.rst:69 +#, fuzzy +msgid "New syntax features:" msgstr "Nouvelles fonctionnalités" +#: whatsnew/3.10.rst:71 +msgid ":pep:`634`, Structural Pattern Matching: Specification" +msgstr "" + +#: whatsnew/3.10.rst:72 +msgid ":pep:`635`, Structural Pattern Matching: Motivation and Rationale" +msgstr "" + +#: whatsnew/3.10.rst:73 +msgid ":pep:`636`, Structural Pattern Matching: Tutorial" +msgstr "" + +#: whatsnew/3.10.rst:74 +msgid "" +":issue:`12782`, Parenthesized context managers are now officially allowed." +msgstr "" + #: whatsnew/3.10.rst:76 -msgid "Parenthesized context managers" +msgid "New features in the standard library:" msgstr "" #: whatsnew/3.10.rst:78 +msgid ":pep:`618`, Add Optional Length-Checking To zip." +msgstr "" + +#: whatsnew/3.10.rst:80 +msgid "Interpreter improvements:" +msgstr "" + +#: whatsnew/3.10.rst:82 +msgid ":pep:`626`, Precise line numbers for debugging and other tools." +msgstr "" + +#: whatsnew/3.10.rst:84 +#, fuzzy +msgid "New typing features:" +msgstr "Nouvelles fonctionnalités" + +#: whatsnew/3.10.rst:86 +msgid ":pep:`604`, Allow writing union types as X | Y" +msgstr "" + +#: whatsnew/3.10.rst:87 +msgid ":pep:`613`, Explicit Type Aliases" +msgstr "" + +#: whatsnew/3.10.rst:88 +msgid ":pep:`612`, Parameter Specification Variables" +msgstr "" + +#: whatsnew/3.10.rst:90 +msgid "Important deprecations, removals or restrictions:" +msgstr "" + +#: whatsnew/3.10.rst:92 +msgid ":pep:`644`, Require OpenSSL 1.1.1 or newer" +msgstr "" + +#: whatsnew/3.10.rst:93 +msgid ":pep:`632`, Deprecate distutils module." +msgstr "" + +#: whatsnew/3.10.rst:94 +msgid "" +":pep:`623`, Deprecate and prepare for the removal of the wstr member in " +"PyUnicodeObject." +msgstr "" + +#: whatsnew/3.10.rst:95 +msgid ":pep:`624`, Remove Py_UNICODE encoder APIs" +msgstr "" + +#: whatsnew/3.10.rst:96 +msgid ":pep:`597`, Add optional EncodingWarning" +msgstr "" + +#: whatsnew/3.10.rst:2033 +msgid "New Features" +msgstr "Nouvelles fonctionnalités" + +#: whatsnew/3.10.rst:105 +msgid "Parenthesized context managers" +msgstr "" + +#: whatsnew/3.10.rst:107 msgid "" "Using enclosing parentheses for continuation across multiple lines in " "context managers is now supported. This allows formatting a long collection " @@ -72,28 +159,32 @@ msgid "" "valid:" msgstr "" -#: whatsnew/3.10.rst:109 +#: whatsnew/3.10.rst:138 msgid "" "it is also possible to use a trailing comma at the end of the enclosed group:" msgstr "" -#: whatsnew/3.10.rst:121 +#: whatsnew/3.10.rst:150 msgid "" "This new syntax uses the non LL(1) capacities of the new parser. Check :pep:" "`617` for more details." msgstr "" -#: whatsnew/3.10.rst:124 +#: whatsnew/3.10.rst:153 msgid "" "(Contributed by Guido van Rossum, Pablo Galindo and Lysandros Nikolaou in :" "issue:`12782` and :issue:`40334`.)" msgstr "" -#: whatsnew/3.10.rst:129 -msgid "Better error messages in the parser" +#: whatsnew/3.10.rst:158 +msgid "Better error messages" msgstr "" -#: whatsnew/3.10.rst:131 +#: whatsnew/3.10.rst:161 +msgid "SyntaxErrors" +msgstr "" + +#: whatsnew/3.10.rst:163 msgid "" "When parsing code that contains unclosed parentheses or brackets the " "interpreter now includes the location of the unclosed bracket of parentheses " @@ -102,39 +193,177 @@ msgid "" "code (notice the unclosed '{'):" msgstr "" -#: whatsnew/3.10.rst:142 +#: whatsnew/3.10.rst:174 msgid "" -"previous versions of the interpreter reported confusing places as the " +"Previous versions of the interpreter reported confusing places as the " "location of the syntax error:" msgstr "" -#: whatsnew/3.10.rst:152 -msgid "but in Python3.10 a more informative error is emitted:" +#: whatsnew/3.10.rst:184 +msgid "but in Python 3.10 a more informative error is emitted:" msgstr "" -#: whatsnew/3.10.rst:162 +#: whatsnew/3.10.rst:194 msgid "" "In a similar way, errors involving unclosed string literals (single and " "triple quoted) now point to the start of the string instead of reporting EOF/" "EOL." msgstr "" -#: whatsnew/3.10.rst:165 +#: whatsnew/3.10.rst:197 msgid "" "These improvements are inspired by previous work in the PyPy interpreter." msgstr "" -#: whatsnew/3.10.rst:167 +#: whatsnew/3.10.rst:199 msgid "" "(Contributed by Pablo Galindo in :issue:`42864` and Batuhan Taskaya in :" "issue:`40176`.)" msgstr "" -#: whatsnew/3.10.rst:171 +#: whatsnew/3.10.rst:202 +msgid "" +":exc:`SyntaxError` exceptions raised by the interpreter will now highlight " +"the full error range of the expression that constitutes the syntax error " +"itself, instead of just where the problem is detected. In this way, instead " +"of displaying (before Python 3.10):" +msgstr "" + +#: whatsnew/3.10.rst:215 +msgid "now Python 3.10 will display the exception as:" +msgstr "" + +#: whatsnew/3.10.rst:225 +msgid "This improvement was contributed by Pablo Galindo in :issue:`43914`." +msgstr "" + +#: whatsnew/3.10.rst:227 +msgid "" +"A considerable amount of new specialized messages for :exc:`SyntaxError` " +"exceptions have been incorporated. Some of the most notable ones are as " +"follows:" +msgstr "" + +#: whatsnew/3.10.rst:230 +msgid "Missing ``:`` before blocks:" +msgstr "" + +#: whatsnew/3.10.rst:240 +msgid "(Contributed by Pablo Galindo in :issue:`42997`)" +msgstr "" + +#: whatsnew/3.10.rst:242 +msgid "Unparenthesised tuples in comprehensions targets:" +msgstr "" + +#: whatsnew/3.10.rst:252 +msgid "(Contributed by Pablo Galindo in :issue:`43017`)" +msgstr "" + +#: whatsnew/3.10.rst:254 +msgid "Missing commas in collection literals and between expressions:" +msgstr "" + +#: whatsnew/3.10.rst:267 +msgid "(Contributed by Pablo Galindo in :issue:`43822`)" +msgstr "" + +#: whatsnew/3.10.rst:269 +msgid "Multiple Exception types without parentheses:" +msgstr "" + +#: whatsnew/3.10.rst:281 +msgid "(Contributed by Pablo Galindo in :issue:`43149`)" +msgstr "" + +#: whatsnew/3.10.rst:283 +msgid "Missing ``:`` and values in dictionary literals:" +msgstr "" + +#: whatsnew/3.10.rst:303 +msgid "(Contributed by Pablo Galindo in :issue:`43823`)" +msgstr "" + +#: whatsnew/3.10.rst:305 +msgid "``try`` blocks without ``except`` or ``finally`` blocks:" +msgstr "" + +#: whatsnew/3.10.rst:317 +msgid "(Contributed by Pablo Galindo in :issue:`44305`)" +msgstr "" + +#: whatsnew/3.10.rst:319 +msgid "Usage of ``=`` instead of ``==`` in comparisons:" +msgstr "" + +#: whatsnew/3.10.rst:329 +msgid "(Contributed by Pablo Galindo in :issue:`43797`)" +msgstr "" + +#: whatsnew/3.10.rst:331 +msgid "Usage of ``*`` in f-strings:" +msgstr "" + +#: whatsnew/3.10.rst:341 +msgid "(Contributed by Pablo Galindo in :issue:`41064`)" +msgstr "" + +#: whatsnew/3.10.rst:344 +msgid "IndentationErrors" +msgstr "" + +#: whatsnew/3.10.rst:346 +msgid "" +"Many :exc:`IndentationError` exceptions now have more context regarding what " +"kind of block was expecting an indentation, including the location of the " +"statement:" +msgstr "" + +#: whatsnew/3.10.rst:361 +msgid "AttributeErrors" +msgstr "" + +#: whatsnew/3.10.rst:363 +msgid "" +"When printing :exc:`AttributeError`, :c:func:`PyErr_Display` will offer " +"suggestions of similar attribute names in the object that the exception was " +"raised from:" +msgstr "" + +#: whatsnew/3.10.rst:396 +msgid "(Contributed by Pablo Galindo in :issue:`38530`.)" +msgstr "" + +#: whatsnew/3.10.rst:377 +msgid "" +"Notice this won't work if :c:func:`PyErr_Display` is not called to display " +"the error which can happen if some other custom error display function is " +"used. This is a common scenario in some REPLs like IPython." +msgstr "" + +#: whatsnew/3.10.rst:382 +msgid "NameErrors" +msgstr "" + +#: whatsnew/3.10.rst:384 +msgid "" +"When printing :exc:`NameError` raised by the interpreter, :c:func:" +"`PyErr_Display` will offer suggestions of similar variable names in the " +"function that the exception was raised from:" +msgstr "" + +#: whatsnew/3.10.rst:399 +msgid "" +"Notice this won't work if :c:func:`PyErr_Display` is not called to display " +"the error, which can happen if some other custom error display function is " +"used. This is a common scenario in some REPLs like IPython." +msgstr "" + +#: whatsnew/3.10.rst:405 msgid "PEP 626: Precise line numbers for debugging and other tools" msgstr "" -#: whatsnew/3.10.rst:173 +#: whatsnew/3.10.rst:407 msgid "" "PEP 626 brings more precise and reliable line numbers for debugging, " "profiling and coverage tools. Tracing events, with the correct line number, " @@ -142,17 +371,24 @@ msgid "" "are executed." msgstr "" -#: whatsnew/3.10.rst:176 +#: whatsnew/3.10.rst:410 msgid "" -"The ``f_lineo`` attribute of frame objects will always contain the expected " +"The ``f_lineno`` attribute of frame objects will always contain the expected " "line number." msgstr "" -#: whatsnew/3.10.rst:180 +#: whatsnew/3.10.rst:412 +msgid "" +"The ``co_lnotab`` attribute of code objects is deprecated and will be " +"removed in 3.12. Code that needs to convert from offset to line number " +"should use the new ``co_lines()`` method instead." +msgstr "" + +#: whatsnew/3.10.rst:416 msgid "PEP 634: Structural Pattern Matching" msgstr "" -#: whatsnew/3.10.rst:182 +#: whatsnew/3.10.rst:418 msgid "" "Structural pattern matching has been added in the form of a *match " "statement* and *case statements* of patterns with associated actions. " @@ -162,52 +398,52 @@ msgid "" "actions based on different forms of data." msgstr "" -#: whatsnew/3.10.rst:190 +#: whatsnew/3.10.rst:426 msgid "Syntax and operations" msgstr "" -#: whatsnew/3.10.rst:192 +#: whatsnew/3.10.rst:428 msgid "The generic syntax of pattern matching is::" msgstr "" -#: whatsnew/3.10.rst:204 +#: whatsnew/3.10.rst:440 msgid "" "A match statement takes an expression and compares its value to successive " "patterns given as one or more case blocks. Specifically, pattern matching " "operates by:" msgstr "" -#: whatsnew/3.10.rst:208 +#: whatsnew/3.10.rst:444 msgid "using data with type and shape (the ``subject``)" msgstr "" -#: whatsnew/3.10.rst:209 +#: whatsnew/3.10.rst:445 msgid "evaluating the ``subject`` in the ``match`` statement" msgstr "" -#: whatsnew/3.10.rst:210 +#: whatsnew/3.10.rst:446 msgid "" "comparing the subject with each pattern in a ``case`` statement from top to " "bottom until a match is confirmed." msgstr "" -#: whatsnew/3.10.rst:212 +#: whatsnew/3.10.rst:448 msgid "executing the action associated with the pattern of the confirmed match" msgstr "" -#: whatsnew/3.10.rst:214 +#: whatsnew/3.10.rst:450 msgid "" "If an exact match is not confirmed, the last case, a wildcard ``_``, if " "provided, will be used as the matching case. If an exact match is not " -"confirmed and a wildcard case does not exists, the entire match block is a " -"no-op." +"confirmed and a wildcard case does not exist, the entire match block is a no-" +"op." msgstr "" -#: whatsnew/3.10.rst:220 +#: whatsnew/3.10.rst:456 msgid "Declarative approach" msgstr "" -#: whatsnew/3.10.rst:222 +#: whatsnew/3.10.rst:458 msgid "" "Readers may be aware of pattern matching through the simple example of " "matching a subject (data object) to a literal (pattern) with the switch " @@ -216,15 +452,15 @@ msgid "" "case statements containing literals." msgstr "" -#: whatsnew/3.10.rst:228 +#: whatsnew/3.10.rst:464 msgid "" -"More powerful examples of pattern matching can be found in languages, such " -"as Scala and Elixir. With structural pattern matching, the approach is " +"More powerful examples of pattern matching can be found in languages such as " +"Scala and Elixir. With structural pattern matching, the approach is " "\"declarative\" and explicitly states the conditions (the patterns) for data " "to match." msgstr "" -#: whatsnew/3.10.rst:232 +#: whatsnew/3.10.rst:468 msgid "" "While an \"imperative\" series of instructions using nested \"if\" " "statements could be used to accomplish something similar to structural " @@ -236,11 +472,11 @@ msgid "" "of the subject's type and shape." msgstr "" -#: whatsnew/3.10.rst:241 +#: whatsnew/3.10.rst:477 msgid "Simple pattern: match to a literal" msgstr "" -#: whatsnew/3.10.rst:243 +#: whatsnew/3.10.rst:479 msgid "" "Let's look at this example as pattern matching in its simplest form: a " "value, the subject, being matched to several literals, the patterns. In the " @@ -249,50 +485,50 @@ msgid "" "status codes. The associated action to the case is executed after a match::" msgstr "" -#: whatsnew/3.10.rst:260 +#: whatsnew/3.10.rst:496 msgid "" "If the above function is passed a ``status`` of 418, \"I'm a teapot\" is " "returned. If the above function is passed a ``status`` of 500, the case " "statement with ``_`` will match as a wildcard, and \"Something's wrong with " -"the Internet\" is returned. Note the last block: the variable name, ``_``, " +"the internet\" is returned. Note the last block: the variable name, ``_``, " "acts as a *wildcard* and insures the subject will always match. The use of " "``_`` is optional." msgstr "" -#: whatsnew/3.10.rst:267 +#: whatsnew/3.10.rst:503 msgid "" "You can combine several literals in a single pattern using ``|`` (\"or\")::" msgstr "" -#: whatsnew/3.10.rst:273 +#: whatsnew/3.10.rst:509 msgid "Behavior without the wildcard" msgstr "" -#: whatsnew/3.10.rst:275 +#: whatsnew/3.10.rst:511 msgid "" "If we modify the above example by removing the last case block, the example " "becomes::" msgstr "" -#: whatsnew/3.10.rst:287 +#: whatsnew/3.10.rst:523 msgid "" "Without the use of ``_`` in a case statement, a match may not exist. If no " "match exists, the behavior is a no-op. For example, if ``status`` of 500 is " "passed, a no-op occurs." msgstr "" -#: whatsnew/3.10.rst:292 +#: whatsnew/3.10.rst:528 msgid "Patterns with a literal and variable" msgstr "" -#: whatsnew/3.10.rst:294 +#: whatsnew/3.10.rst:530 msgid "" "Patterns can look like unpacking assignments, and a pattern may be used to " "bind variables. In this example, a data point can be unpacked to its x-" "coordinate and y-coordinate::" msgstr "" -#: whatsnew/3.10.rst:311 +#: whatsnew/3.10.rst:547 msgid "" "The first pattern has two literals, ``(0, 0)``, and may be thought of as an " "extension of the literal pattern shown above. The next two patterns combine " @@ -301,22 +537,22 @@ msgid "" "conceptually similar to the unpacking assignment ``(x, y) = point``." msgstr "" -#: whatsnew/3.10.rst:318 +#: whatsnew/3.10.rst:554 msgid "Patterns and classes" msgstr "" -#: whatsnew/3.10.rst:320 +#: whatsnew/3.10.rst:556 msgid "" "If you are using classes to structure your data, you can use as a pattern " "the class name followed by an argument list resembling a constructor. This " "pattern has the ability to capture class attributes into variables::" msgstr "" -#: whatsnew/3.10.rst:342 +#: whatsnew/3.10.rst:578 msgid "Patterns with positional parameters" msgstr "" -#: whatsnew/3.10.rst:344 +#: whatsnew/3.10.rst:580 msgid "" "You can use positional parameters with some builtin classes that provide an " "ordering for their attributes (e.g. dataclasses). You can also define a " @@ -326,62 +562,62 @@ msgid "" "attribute to the ``var`` variable)::" msgstr "" -#: whatsnew/3.10.rst:356 +#: whatsnew/3.10.rst:592 msgid "Nested patterns" msgstr "" -#: whatsnew/3.10.rst:358 +#: whatsnew/3.10.rst:594 msgid "" "Patterns can be arbitrarily nested. For example, if our data is a short " "list of points, it could be matched like this::" msgstr "" -#: whatsnew/3.10.rst:374 +#: whatsnew/3.10.rst:610 msgid "Complex patterns and the wildcard" msgstr "" -#: whatsnew/3.10.rst:376 +#: whatsnew/3.10.rst:612 msgid "" "To this point, the examples have used ``_`` alone in the last case " "statement. A wildcard can be used in more complex patterns, such as " "``('error', code, _)``. For example::" msgstr "" -#: whatsnew/3.10.rst:386 +#: whatsnew/3.10.rst:622 msgid "" "In the above case, ``test_variable`` will match for ('error', code, 100) and " "('error', code, 800)." msgstr "" -#: whatsnew/3.10.rst:390 +#: whatsnew/3.10.rst:626 msgid "Guard" msgstr "" -#: whatsnew/3.10.rst:392 +#: whatsnew/3.10.rst:628 msgid "" "We can add an ``if`` clause to a pattern, known as a \"guard\". If the " "guard is false, ``match`` goes on to try the next case block. Note that " "value capture happens before the guard is evaluated::" msgstr "" -#: whatsnew/3.10.rst:403 +#: whatsnew/3.10.rst:639 msgid "Other Key Features" msgstr "" -#: whatsnew/3.10.rst:405 +#: whatsnew/3.10.rst:641 msgid "Several other key features:" msgstr "" -#: whatsnew/3.10.rst:407 +#: whatsnew/3.10.rst:643 msgid "" "Like unpacking assignments, tuple and list patterns have exactly the same " "meaning and actually match arbitrary sequences. Technically, the subject " -"must be an instance of ``collections.abc.Sequence``. Therefore, an important " -"exception is that patterns don't match iterators. Also, to prevent a common " -"mistake, sequence patterns don't match strings." +"must be a sequence. Therefore, an important exception is that patterns don't " +"match iterators. Also, to prevent a common mistake, sequence patterns don't " +"match strings." msgstr "" -#: whatsnew/3.10.rst:413 +#: whatsnew/3.10.rst:649 msgid "" "Sequence patterns support wildcards: ``[x, y, *rest]`` and ``(x, y, *rest)`` " "work similar to wildcards in unpacking assignments. The name after ``*`` " @@ -389,116 +625,130 @@ msgid "" "items without binding the remaining items." msgstr "" -#: whatsnew/3.10.rst:418 +#: whatsnew/3.10.rst:654 msgid "" "Mapping patterns: ``{\"bandwidth\": b, \"latency\": l}`` captures the ``" "\"bandwidth\"`` and ``\"latency\"`` values from a dict. Unlike sequence " "patterns, extra keys are ignored. A wildcard ``**rest`` is also supported. " -"(But ``**_`` would be redundant, so it not allowed.)" +"(But ``**_`` would be redundant, so is not allowed.)" msgstr "" -#: whatsnew/3.10.rst:423 +#: whatsnew/3.10.rst:659 msgid "Subpatterns may be captured using the ``as`` keyword::" msgstr "" -#: whatsnew/3.10.rst:427 +#: whatsnew/3.10.rst:663 msgid "" "This binds x1, y1, x2, y2 like you would expect without the ``as`` clause, " "and p2 to the entire second item of the subject." msgstr "" -#: whatsnew/3.10.rst:430 +#: whatsnew/3.10.rst:666 msgid "" "Most literals are compared by equality. However, the singletons ``True``, " "``False`` and ``None`` are compared by identity." msgstr "" -#: whatsnew/3.10.rst:433 +#: whatsnew/3.10.rst:669 msgid "" "Named constants may be used in patterns. These named constants must be " "dotted names to prevent the constant from being interpreted as a capture " "variable::" msgstr "" -#: whatsnew/3.10.rst:451 +#: whatsnew/3.10.rst:687 msgid "" "For the full specification see :pep:`634`. Motivation and rationale are in :" "pep:`635`, and a longer tutorial is in :pep:`636`." msgstr "" -#: whatsnew/3.10.rst:456 -msgid "New Features Related to Type Annotations" +#: whatsnew/3.10.rst:694 +msgid "Optional ``EncodingWarning`` and ``encoding=\"locale\"`` option" msgstr "" -#: whatsnew/3.10.rst:458 +#: whatsnew/3.10.rst:696 msgid "" -"This section covers major changes affecting :pep:`484` type annotations and " -"the :mod:`typing` module." +"The default encoding of :class:`TextIOWrapper` and :func:`open` is platform " +"and locale dependent. Since UTF-8 is used on most Unix platforms, omitting " +"``encoding`` option when opening UTF-8 files (e.g. JSON, YAML, TOML, " +"Markdown) is a very common bug. For example::" msgstr "" -#: whatsnew/3.10.rst:463 -msgid "PEP 563: Postponed Evaluation of Annotations Becomes Default" +#: whatsnew/3.10.rst:705 +msgid "" +"To find this type of bug, an optional ``EncodingWarning`` is added. It is " +"emitted when :data:`sys.flags.warn_default_encoding ` is true and " +"locale-specific default encoding is used." msgstr "" -#: whatsnew/3.10.rst:465 +#: whatsnew/3.10.rst:709 msgid "" -"In Python 3.7, postponed evaluation of annotations was added, to be enabled " -"with a ``from __future__ import annotations`` directive. In 3.10 this " -"became the default behavior, even without that future directive. With this " -"being default, all annotations stored in :attr:`__annotations__` will be " -"strings. If needed, annotations can be resolved at runtime using :func:" -"`typing.get_type_hints`. See :pep:`563` for a full description. Also, the :" -"func:`inspect.signature` will try to resolve types from now on, and when it " -"fails it will fall back to showing the string annotations. (Contributed by " -"Batuhan Taskaya in :issue:`38605`.)" +"``-X warn_default_encoding`` option and :envvar:`PYTHONWARNDEFAULTENCODING` " +"are added to enable the warning." msgstr "" -#: whatsnew/3.10.rst:479 +#: whatsnew/3.10.rst:712 +msgid "See :ref:`io-text-encoding` for more information." +msgstr "" + +#: whatsnew/3.10.rst:716 +msgid "New Features Related to Type Hints" +msgstr "" + +#: whatsnew/3.10.rst:718 +msgid "" +"This section covers major changes affecting :pep:`484` type hints and the :" +"mod:`typing` module." +msgstr "" + +#: whatsnew/3.10.rst:723 msgid "PEP 604: New Type Union Operator" msgstr "" -#: whatsnew/3.10.rst:481 +#: whatsnew/3.10.rst:725 msgid "" "A new type union operator was introduced which enables the syntax ``X | Y``. " "This provides a cleaner way of expressing 'either type X or type Y' instead " -"of using :data:`typing.Union`, especially in type hints (annotations)." +"of using :data:`typing.Union`, especially in type hints." msgstr "" -#: whatsnew/3.10.rst:485 +#: whatsnew/3.10.rst:729 msgid "" "In previous versions of Python, to apply a type hint for functions accepting " "arguments of multiple types, :data:`typing.Union` was used::" msgstr "" -#: whatsnew/3.10.rst:492 +#: whatsnew/3.10.rst:736 msgid "Type hints can now be written in a more succinct manner::" msgstr "" -#: whatsnew/3.10.rst:498 +#: whatsnew/3.10.rst:742 msgid "" "This new syntax is also accepted as the second argument to :func:" "`isinstance` and :func:`issubclass`::" msgstr "" -#: whatsnew/3.10.rst:504 +#: whatsnew/3.10.rst:748 msgid "See :ref:`types-union` and :pep:`604` for more details." msgstr "" -#: whatsnew/3.10.rst:506 -msgid "(Contributed by Maggie Moss and Philippe Prados in :issue:`41428`.)" +#: whatsnew/3.10.rst:750 +msgid "" +"(Contributed by Maggie Moss and Philippe Prados in :issue:`41428`, with " +"additions by Yurii Karabas and Serhiy Storchaka in :issue:`44490`.)" msgstr "" -#: whatsnew/3.10.rst:510 +#: whatsnew/3.10.rst:755 msgid "PEP 612: Parameter Specification Variables" msgstr "" -#: whatsnew/3.10.rst:512 +#: whatsnew/3.10.rst:757 msgid "" "Two new options to improve the information provided to static type checkers " "for :pep:`484`\\ 's ``Callable`` have been added to the :mod:`typing` module." msgstr "" -#: whatsnew/3.10.rst:515 +#: whatsnew/3.10.rst:760 msgid "" "The first is the parameter specification variable. They are used to forward " "the parameter types of one callable to another callable -- a pattern " @@ -507,7 +757,7 @@ msgid "" "to type annotate dependency of parameter types in such a precise manner." msgstr "" -#: whatsnew/3.10.rst:521 +#: whatsnew/3.10.rst:766 msgid "" "The second option is the new ``Concatenate`` operator. It's used in " "conjunction with parameter specification variables to type annotate a higher " @@ -515,21 +765,24 @@ msgid "" "Examples of usage can be found in :class:`typing.Concatenate`." msgstr "" -#: whatsnew/3.10.rst:526 +#: whatsnew/3.10.rst:771 msgid "" "See :class:`typing.Callable`, :class:`typing.ParamSpec`, :class:`typing." -"Concatenate` and :pep:`612` for more details." +"Concatenate`, :class:`typing.ParamSpecArgs`, :class:`typing." +"ParamSpecKwargs`, and :pep:`612` for more details." msgstr "" -#: whatsnew/3.10.rst:529 -msgid "(Contributed by Ken Jin in :issue:`41559`.)" +#: whatsnew/3.10.rst:775 +msgid "" +"(Contributed by Ken Jin in :issue:`41559`, with minor enhancements by Jelle " +"Zijlstra in :issue:`43783`. PEP written by Mark Mendoza.)" msgstr "" -#: whatsnew/3.10.rst:533 -msgid "PEP 613: TypeAlias Annotation" +#: whatsnew/3.10.rst:780 +msgid "PEP 613: TypeAlias" msgstr "" -#: whatsnew/3.10.rst:535 +#: whatsnew/3.10.rst:782 msgid "" ":pep:`484` introduced the concept of type aliases, only requiring them to be " "top-level unannotated assignments. This simplicity sometimes made it " @@ -538,32 +791,50 @@ msgid "" "involved. Compare::" msgstr "" -#: whatsnew/3.10.rst:543 +#: whatsnew/3.10.rst:790 msgid "" -"Now the :mod:`typing` module has a special annotation :data:`TypeAlias` to " -"declare type aliases more explicitly::" +"Now the :mod:`typing` module has a special value :data:`TypeAlias` which " +"lets you declare type aliases more explicitly::" msgstr "" -#: whatsnew/3.10.rst:549 +#: whatsnew/3.10.rst:796 msgid "See :pep:`613` for more details." msgstr "" -#: whatsnew/3.10.rst:551 +#: whatsnew/3.10.rst:798 msgid "(Contributed by Mikhail Golubev in :issue:`41923`.)" msgstr "" -#: whatsnew/3.10.rst:555 +#: whatsnew/3.10.rst:801 +msgid "PEP 647: User-Defined Type Guards" +msgstr "" + +#: whatsnew/3.10.rst:803 +msgid "" +":data:`TypeGuard` has been added to the :mod:`typing` module to annotate " +"type guard functions and improve information provided to static type " +"checkers during type narrowing. For more information, please see :data:" +"`TypeGuard`\\ 's documentation, and :pep:`647`." +msgstr "" + +#: whatsnew/3.10.rst:808 +msgid "" +"(Contributed by Ken Jin and Guido van Rossum in :issue:`43766`. PEP written " +"by Eric Traut.)" +msgstr "" + +#: whatsnew/3.10.rst:812 msgid "Other Language Changes" msgstr "" -#: whatsnew/3.10.rst:557 +#: whatsnew/3.10.rst:814 msgid "" "The :class:`int` type has a new method :meth:`int.bit_count`, returning the " "number of ones in the binary expansion of a given integer, also known as the " "population count. (Contributed by Niklas Fiekas in :issue:`29882`.)" msgstr "" -#: whatsnew/3.10.rst:561 +#: whatsnew/3.10.rst:818 msgid "" "The views returned by :meth:`dict.keys`, :meth:`dict.values` and :meth:`dict." "items` now all have a ``mapping`` attribute that gives a :class:`types." @@ -571,13 +842,13 @@ msgid "" "Dennis Sweeney in :issue:`40890`.)" msgstr "" -#: whatsnew/3.10.rst:566 +#: whatsnew/3.10.rst:823 msgid "" ":pep:`618`: The :func:`zip` function now has an optional ``strict`` flag, " "used to require that all the iterables have an equal length." msgstr "" -#: whatsnew/3.10.rst:569 +#: whatsnew/3.10.rst:826 msgid "" "Builtin and extension functions that take integer arguments no longer " "accept :class:`~decimal.Decimal`\\ s, :class:`~fractions.Fraction`\\ s and " @@ -586,20 +857,20 @@ msgid "" "__index__` method). (Contributed by Serhiy Storchaka in :issue:`37999`.)" msgstr "" -#: whatsnew/3.10.rst:576 +#: whatsnew/3.10.rst:833 msgid "" "If :func:`object.__ipow__` returns :const:`NotImplemented`, the operator " "will correctly fall back to :func:`object.__pow__` and :func:`object." "__rpow__` as expected. (Contributed by Alex Shkop in :issue:`38302`.)" msgstr "" -#: whatsnew/3.10.rst:580 +#: whatsnew/3.10.rst:837 msgid "" "Assignment expressions can now be used unparenthesized within set literals " "and set comprehensions, as well as in sequence indexes (but not slices)." msgstr "" -#: whatsnew/3.10.rst:583 +#: whatsnew/3.10.rst:840 msgid "" "Functions have a new ``__builtins__`` attribute which is used to look for " "builtin symbols when a function is executed, instead of looking into " @@ -608,54 +879,175 @@ msgid "" "builtins. (Contributed by Mark Shannon in :issue:`42990`.)" msgstr "" -#: whatsnew/3.10.rst:591 +#: whatsnew/3.10.rst:846 +msgid "" +"Two new builtin functions -- :func:`aiter` and :func:`anext` have been added " +"to provide asynchronous counterparts to :func:`iter` and :func:`next`, " +"respectively. (Contributed by Joshua Bronson, Daniel Pope, and Justin Wang " +"in :issue:`31861`.)" +msgstr "" + +#: whatsnew/3.10.rst:851 +msgid "" +"Static methods (:func:`@staticmethod `) and class methods (:" +"func:`@classmethod `) now inherit the method attributes " +"(``__module__``, ``__name__``, ``__qualname__``, ``__doc__``, " +"``__annotations__``) and have a new ``__wrapped__`` attribute. Moreover, " +"static methods are now callable as regular functions. (Contributed by Victor " +"Stinner in :issue:`43682`.)" +msgstr "" + +#: whatsnew/3.10.rst:858 +msgid "" +"Annotations for complex targets (everything beside ``simple name`` targets " +"defined by :pep:`526`) no longer cause any runtime effects with ``from " +"__future__ import annotations``. (Contributed by Batuhan Taskaya in :issue:" +"`42737`.)" +msgstr "" + +#: whatsnew/3.10.rst:862 +msgid "" +"Class and module objects now lazy-create empty annotations dicts on demand. " +"The annotations dicts are stored in the object’s ``__dict__`` for backwards " +"compatibility. This improves the best practices for working with " +"``__annotations__``; for more information, please see :ref:`annotations-" +"howto`. (Contributed by Larry Hastings in :issue:`43901`.)" +msgstr "" + +#: whatsnew/3.10.rst:869 +msgid "" +"Annotations consist of ``yield``, ``yield from``, ``await`` or named " +"expressions are now forbidden under ``from __future__ import annotations`` " +"due to their side effects. (Contributed by Batuhan Taskaya in :issue:" +"`42725`.)" +msgstr "" + +#: whatsnew/3.10.rst:874 +msgid "" +"Usage of unbound variables, ``super()`` and other expressions that might " +"alter the processing of symbol table as annotations are now rendered " +"effectless under ``from __future__ import annotations``. (Contributed by " +"Batuhan Taskaya in :issue:`42725`.)" +msgstr "" + +#: whatsnew/3.10.rst:879 +msgid "" +"Hashes of NaN values of both :class:`float` type and :class:`decimal." +"Decimal` type now depend on object identity. Formerly, they always hashed to " +"``0`` even though NaN values are not equal to one another. This caused " +"potentially quadratic runtime behavior due to excessive hash collisions when " +"creating dictionaries and sets containing multiple NaNs. (Contributed by " +"Raymond Hettinger in :issue:`43475`.)" +msgstr "" + +#: whatsnew/3.10.rst:886 +msgid "" +"A :exc:`SyntaxError` (instead of a :exc:`NameError`) will be raised when " +"deleting the :const:`__debug__` constant. (Contributed by Dong-hee Na in :" +"issue:`45000`.)" +msgstr "" + +#: whatsnew/3.10.rst:889 msgid "New Modules" msgstr "" -#: whatsnew/3.10.rst:593 +#: whatsnew/3.10.rst:891 msgid "None yet." msgstr "" -#: whatsnew/3.10.rst:597 +#: whatsnew/3.10.rst:895 msgid "Improved Modules" msgstr "" -#: whatsnew/3.10.rst:600 +#: whatsnew/3.10.rst:898 +msgid "asyncio" +msgstr "" + +#: whatsnew/3.10.rst:900 +msgid "" +"Add missing :meth:`~asyncio.events.AbstractEventLoop." +"connect_accepted_socket` method. (Contributed by Alex Grönholm in :issue:" +"`41332`.)" +msgstr "" + +#: whatsnew/3.10.rst:905 msgid "argparse" msgstr "argparse" -#: whatsnew/3.10.rst:602 +#: whatsnew/3.10.rst:907 msgid "" "Misleading phrase \"optional arguments\" was replaced with \"options\" in " "argparse help. Some tests might require adaptation if they rely on exact " "output match. (Contributed by Raymond Hettinger in :issue:`9694`.)" msgstr "" -#: whatsnew/3.10.rst:606 +#: whatsnew/3.10.rst:911 +msgid "array" +msgstr "" + +#: whatsnew/3.10.rst:913 +msgid "" +"The :meth:`~array.array.index` method of :class:`array.array` now has " +"optional *start* and *stop* parameters. (Contributed by Anders Lorentsen and " +"Zackery Spytz in :issue:`31956`.)" +msgstr "" + +#: whatsnew/3.10.rst:918 +msgid "asynchat, asyncore, smtpd" +msgstr "" + +#: whatsnew/3.10.rst:919 +msgid "" +"These modules have been marked as deprecated in their module documentation " +"since Python 3.6. An import-time :class:`DeprecationWarning` has now been " +"added to all three of these modules." +msgstr "" + +#: whatsnew/3.10.rst:924 msgid "base64" msgstr "base64" -#: whatsnew/3.10.rst:608 +#: whatsnew/3.10.rst:926 msgid "" "Add :func:`base64.b32hexencode` and :func:`base64.b32hexdecode` to support " "the Base32 Encoding with Extended Hex Alphabet." msgstr "" -#: whatsnew/3.10.rst:612 +#: whatsnew/3.10.rst:930 +msgid "bdb" +msgstr "" + +#: whatsnew/3.10.rst:932 +msgid "" +"Add :meth:`~bdb.Breakpoint.clearBreakpoints` to reset all set breakpoints. " +"(Contributed by Irit Katriel in :issue:`24160`.)" +msgstr "" + +#: whatsnew/3.10.rst:936 +msgid "bisect" +msgstr "" + +#: whatsnew/3.10.rst:938 +msgid "" +"Added the possibility of providing a *key* function to the APIs in the :mod:" +"`bisect` module. (Contributed by Raymond Hettinger in :issue:`4356`.)" +msgstr "" + +#: whatsnew/3.10.rst:942 msgid "codecs" msgstr "" -#: whatsnew/3.10.rst:614 +#: whatsnew/3.10.rst:944 msgid "" "Add a :func:`codecs.unregister` function to unregister a codec search " "function. (Contributed by Hai Shi in :issue:`41842`.)" msgstr "" -#: whatsnew/3.10.rst:618 +#: whatsnew/3.10.rst:948 msgid "collections.abc" msgstr "collections.abc" -#: whatsnew/3.10.rst:620 +#: whatsnew/3.10.rst:950 msgid "" "The ``__args__`` of the :ref:`parameterized generic ` " "for :class:`collections.abc.Callable` are now consistent with :data:`typing." @@ -671,28 +1063,34 @@ msgid "" "`42195`.)" msgstr "" -#: whatsnew/3.10.rst:633 +#: whatsnew/3.10.rst:963 msgid "contextlib" msgstr "contextlib" -#: whatsnew/3.10.rst:635 +#: whatsnew/3.10.rst:965 msgid "" "Add a :func:`contextlib.aclosing` context manager to safely close async " "generators and objects representing asynchronously released resources. " "(Contributed by Joongi Kim and John Belmonte in :issue:`41229`.)" msgstr "" -#: whatsnew/3.10.rst:639 +#: whatsnew/3.10.rst:969 msgid "" "Add asynchronous context manager support to :func:`contextlib.nullcontext`. " "(Contributed by Tom Gringauz in :issue:`41543`.)" msgstr "" -#: whatsnew/3.10.rst:643 +#: whatsnew/3.10.rst:972 +msgid "" +"Add :class:`AsyncContextDecorator`, for supporting usage of async context " +"managers as decorators." +msgstr "" + +#: whatsnew/3.10.rst:976 msgid "curses" msgstr "curses" -#: whatsnew/3.10.rst:645 +#: whatsnew/3.10.rst:978 msgid "" "The extended color functions added in ncurses 6.1 will be used transparently " "by :func:`curses.color_content`, :func:`curses.init_color`, :func:`curses." @@ -702,275 +1100,596 @@ msgid "" "Kintscher and Hans Petter Jansson in :issue:`36982`.)" msgstr "" -#: whatsnew/3.10.rst:652 +#: whatsnew/3.10.rst:985 msgid "" "The ``BUTTON5_*`` constants are now exposed in the :mod:`curses` module if " "they are provided by the underlying curses library. (Contributed by Zackery " "Spytz in :issue:`39273`.)" msgstr "" -#: whatsnew/3.10.rst:659 -msgid "distutils" -msgstr "distutils" +#: whatsnew/3.10.rst:990 +msgid "dataclasses" +msgstr "" -#: whatsnew/3.10.rst:661 -msgid "" -"The entire ``distutils`` package is deprecated, to be removed in Python " -"3.12. Its functionality for specifying package builds has already been " -"completely replaced by third-party packages ``setuptools`` and " -"``packaging``, and most other commonly used APIs are available elsewhere in " -"the standard library (such as :mod:`platform`, :mod:`shutil`, :mod:" -"`subprocess` or :mod:`sysconfig`). There are no plans to migrate any other " -"functionality from ``distutils``, and applications that are using other " -"functions should plan to make private copies of the code. Refer to :pep:" -"`632` for discussion." +#: whatsnew/3.10.rst:993 +msgid "__slots__" msgstr "" -#: whatsnew/3.10.rst:671 +#: whatsnew/3.10.rst:995 msgid "" -"The ``bdist_wininst`` command deprecated in Python 3.8 has been removed. The " -"``bdist_wheel`` command is now recommended to distribute binary packages on " -"Windows. (Contributed by Victor Stinner in :issue:`42802`.)" +"Added ``slots`` parameter in :func:`dataclasses.dataclass` decorator. " +"(Contributed by Yurii Karabas in :issue:`42269`)" msgstr "" -#: whatsnew/3.10.rst:677 -msgid "doctest" -msgstr "doctest" +#: whatsnew/3.10.rst:999 +msgid "Keyword-only fields" +msgstr "" -#: whatsnew/3.10.rst:717 whatsnew/3.10.rst:792 +#: whatsnew/3.10.rst:1001 msgid "" -"When a module does not define ``__loader__``, fall back to ``__spec__." -"loader``. (Contributed by Brett Cannon in :issue:`42133`.)" +"dataclassses now supports fields that are keyword-only in the generated " +"__init__ method. There are a number of ways of specifying keyword-only " +"fields." msgstr "" -#: whatsnew/3.10.rst:683 +#: whatsnew/3.10.rst:1005 +msgid "You can say that every field is keyword-only:" +msgstr "" + +#: whatsnew/3.10.rst:1016 +msgid "" +"Both ``name`` and ``birthday`` are keyword-only parameters to the generated " +"__init__ method." +msgstr "" + +#: whatsnew/3.10.rst:1019 +msgid "You can specify keyword-only on a per-field basis:" +msgstr "" + +#: whatsnew/3.10.rst:1030 +msgid "" +"Here only ``birthday`` is keyword-only. If you set ``kw_only`` on " +"individual fields, be aware that there are rules about re-ordering fields " +"due to keyword-only fields needing to follow non-keyword-only fields. See " +"the full dataclasses documentation for details." +msgstr "" + +#: whatsnew/3.10.rst:1035 +msgid "" +"You can also specify that all fields following a KW_ONLY marker are keyword-" +"only. This will probably be the most common usage:" +msgstr "" + +#: whatsnew/3.10.rst:1050 +msgid "" +"Here, ``z`` and ``t`` are keyword-only parameters, while ``x`` and ``y`` are " +"not. (Contributed by Eric V. Smith in :issue:`43532`)" +msgstr "" + +#: whatsnew/3.10.rst:1057 +msgid "distutils" +msgstr "distutils" + +#: whatsnew/3.10.rst:1059 +msgid "" +"The entire ``distutils`` package is deprecated, to be removed in Python " +"3.12. Its functionality for specifying package builds has already been " +"completely replaced by third-party packages ``setuptools`` and " +"``packaging``, and most other commonly used APIs are available elsewhere in " +"the standard library (such as :mod:`platform`, :mod:`shutil`, :mod:" +"`subprocess` or :mod:`sysconfig`). There are no plans to migrate any other " +"functionality from ``distutils``, and applications that are using other " +"functions should plan to make private copies of the code. Refer to :pep:" +"`632` for discussion." +msgstr "" + +#: whatsnew/3.10.rst:1069 +msgid "" +"The ``bdist_wininst`` command deprecated in Python 3.8 has been removed. The " +"``bdist_wheel`` command is now recommended to distribute binary packages on " +"Windows. (Contributed by Victor Stinner in :issue:`42802`.)" +msgstr "" + +#: whatsnew/3.10.rst:1075 +msgid "doctest" +msgstr "doctest" + +#: whatsnew/3.10.rst:1188 whatsnew/3.10.rst:1308 +msgid "" +"When a module does not define ``__loader__``, fall back to ``__spec__." +"loader``. (Contributed by Brett Cannon in :issue:`42133`.)" +msgstr "" + +#: whatsnew/3.10.rst:1081 msgid "encodings" msgstr "" -#: whatsnew/3.10.rst:685 +#: whatsnew/3.10.rst:1083 msgid "" ":func:`encodings.normalize_encoding` now ignores non-ASCII characters. " "(Contributed by Hai Shi in :issue:`39337`.)" msgstr "" -#: whatsnew/3.10.rst:689 +#: whatsnew/3.10.rst:1087 +msgid "fileinput" +msgstr "" + +#: whatsnew/3.10.rst:1089 +msgid "" +"Add *encoding* and *errors* parameters in :func:`fileinput.input` and :class:" +"`fileinput.FileInput`. (Contributed by Inada Naoki in :issue:`43712`.)" +msgstr "" + +#: whatsnew/3.10.rst:1093 +msgid "" +":func:`fileinput.hook_compressed` now returns :class:`TextIOWrapper` object " +"when *mode* is \"r\" and file is compressed, like uncompressed files. " +"(Contributed by Inada Naoki in :issue:`5758`.)" +msgstr "" + +#: whatsnew/3.10.rst:1098 +msgid "faulthandler" +msgstr "" + +#: whatsnew/3.10.rst:1100 +msgid "" +"The :mod:`faulthandler` module now detects if a fatal error occurs during a " +"garbage collector collection. (Contributed by Victor Stinner in :issue:" +"`44466`.)" +msgstr "" + +#: whatsnew/3.10.rst:1105 msgid "gc" msgstr "" -#: whatsnew/3.10.rst:691 +#: whatsnew/3.10.rst:1107 msgid "" -"Added audit hooks for :func:`gc.get_objects`, :func:`gc.get_referrers` and :" +"Add audit hooks for :func:`gc.get_objects`, :func:`gc.get_referrers` and :" "func:`gc.get_referents`. (Contributed by Pablo Galindo in :issue:`43439`.)" msgstr "" -#: whatsnew/3.10.rst:695 +#: whatsnew/3.10.rst:1111 msgid "glob" msgstr "glob" -#: whatsnew/3.10.rst:697 +#: whatsnew/3.10.rst:1113 msgid "" -"Added the *root_dir* and *dir_fd* parameters in :func:`~glob.glob` and :func:" +"Add the *root_dir* and *dir_fd* parameters in :func:`~glob.glob` and :func:" "`~glob.iglob` which allow to specify the root directory for searching. " "(Contributed by Serhiy Storchaka in :issue:`38144`.)" msgstr "" -#: whatsnew/3.10.rst:702 +#: whatsnew/3.10.rst:1118 +msgid "hashlib" +msgstr "``hashlib``" + +#: whatsnew/3.10.rst:1120 +msgid "" +"The hashlib module requires OpenSSL 1.1.1 or newer. (Contributed by " +"Christian Heimes in :pep:`644` and :issue:`43669`.)" +msgstr "" + +#: whatsnew/3.10.rst:1123 +msgid "" +"The hashlib module has preliminary support for OpenSSL 3.0.0. (Contributed " +"by Christian Heimes in :issue:`38820` and other issues.)" +msgstr "" + +#: whatsnew/3.10.rst:1126 +msgid "" +"The pure-Python fallback of :func:`~hashlib.pbkdf2_hmac` is deprecated. In " +"the future PBKDF2-HMAC will only be available when Python has been built " +"with OpenSSL support. (Contributed by Christian Heimes in :issue:`43880`.)" +msgstr "" + +#: whatsnew/3.10.rst:1132 +msgid "hmac" +msgstr "" + +#: whatsnew/3.10.rst:1134 +msgid "" +"The hmac module now uses OpenSSL's HMAC implementation internally. " +"(Contributed by Christian Heimes in :issue:`40645`.)" +msgstr "" + +#: whatsnew/3.10.rst:1138 +msgid "IDLE and idlelib" +msgstr "" + +#: whatsnew/3.10.rst:1140 +msgid "" +"Make IDLE invoke :func:`sys.excepthook` (when started without '-n'). User " +"hooks were previously ignored. (Patch by Ken Hilton in :issue:`43008`.)" +msgstr "" + +#: whatsnew/3.10.rst:1144 +msgid "This change was backported to a 3.9 maintenance release." +msgstr "" + +#: whatsnew/3.10.rst:1146 +msgid "" +"Add a Shell sidebar. Move the primary prompt ('>>>') to the sidebar. Add " +"secondary prompts ('...') to the sidebar. Left click and optional drag " +"selects one or more lines of text, as with the editor line number sidebar. " +"Right click after selecting text lines displays a context menu with 'copy " +"with prompts'. This zips together prompts from the sidebar with lines from " +"the selected text. This option also appears on the context menu for the " +"text. (Contributed by Tal Einat in :issue:`37903`.)" +msgstr "" + +#: whatsnew/3.10.rst:1155 +msgid "" +"Use spaces instead of tabs to indent interactive code. This makes " +"interactive code entries 'look right'. Making this feasible was a major " +"motivation for adding the shell sidebar. Contributed by Terry Jan Reedy in :" +"issue:`37892`.)" +msgstr "" + +#: whatsnew/3.10.rst:1160 +msgid "" +"We expect to backport these shell changes to a future 3.9 maintenance " +"release." +msgstr "" + +#: whatsnew/3.10.rst:1163 +msgid "" +"Highlight the new :ref:`soft keywords ` :keyword:`match`, :" +"keyword:`case `, and :keyword:`_ ` in pattern-" +"matching statements. However, this highlighting is not perfect and will be " +"incorrect in some rare cases, including some ``_``-s in ``case`` patterns. " +"(Contributed by Tal Einat in bpo-44010.)" +msgstr "" + +#: whatsnew/3.10.rst:1170 msgid "importlib.metadata" msgstr "" -#: whatsnew/3.10.rst:704 -msgid "Feature parity with ``importlib_metadata`` 3.7." +#: whatsnew/3.10.rst:1172 +msgid "" +"Feature parity with ``importlib_metadata`` 4.6 (`history `_)." msgstr "" -#: whatsnew/3.10.rst:706 +#: whatsnew/3.10.rst:1175 msgid "" -":func:`importlib.metadata.entry_points` now provides a nicer experience for " -"selecting entry points by group and name through a new :class:`importlib." -"metadata.EntryPoints` class." +":ref:`importlib.metadata entry points ` now provides a nicer " +"experience for selecting entry points by group and name through a new :class:" +"`importlib.metadata.EntryPoints` class. See the Compatibility Note in the " +"docs for more info on the deprecation and usage." msgstr "" -#: whatsnew/3.10.rst:710 +#: whatsnew/3.10.rst:1181 msgid "" "Added :func:`importlib.metadata.packages_distributions` for resolving top-" "level Python modules and packages to their :class:`importlib.metadata." "Distribution`." msgstr "" -#: whatsnew/3.10.rst:715 +#: whatsnew/3.10.rst:1186 msgid "inspect" msgstr "" -#: whatsnew/3.10.rst:720 +#: whatsnew/3.10.rst:1191 msgid "" -"Added *globalns* and *localns* parameters in :func:`~inspect.signature` and :" -"meth:`inspect.Signature.from_callable` to retrieve the annotations in given " -"local and global namespaces. (Contributed by Batuhan Taskaya in :issue:" -"`41960`.)" -msgstr "" - -#: whatsnew/3.10.rst:726 +"Add :func:`inspect.get_annotations`, which safely computes the annotations " +"defined on an object. It works around the quirks of accessing the " +"annotations on various types of objects, and makes very few assumptions " +"about the object it examines. :func:`inspect.get_annotations` can also " +"correctly un-stringize stringized annotations. :func:`inspect." +"get_annotations` is now considered best practice for accessing the " +"annotations dict defined on any Python object; for more information on best " +"practices for working with annotations, please see :ref:`annotations-howto`. " +"Relatedly, :func:`inspect.signature`, :func:`inspect.Signature." +"from_callable`, and :func:`inspect.Signature.from_function` now call :func:" +"`inspect.get_annotations` to retrieve annotations. This means :func:`inspect." +"signature` and :func:`inspect.Signature.from_callable` can also now un-" +"stringize stringized annotations. (Contributed by Larry Hastings in :issue:" +"`43817`.)" +msgstr "" + +#: whatsnew/3.10.rst:1207 msgid "linecache" msgstr "" -#: whatsnew/3.10.rst:732 +#: whatsnew/3.10.rst:1213 msgid "os" msgstr "" -#: whatsnew/3.10.rst:734 +#: whatsnew/3.10.rst:1215 msgid "" -"Added :func:`os.cpu_count()` support for VxWorks RTOS. (Contributed by " -"Peixing Xin in :issue:`41440`.)" +"Add :func:`os.cpu_count()` support for VxWorks RTOS. (Contributed by Peixing " +"Xin in :issue:`41440`.)" msgstr "" -#: whatsnew/3.10.rst:737 +#: whatsnew/3.10.rst:1218 msgid "" -"Added a new function :func:`os.eventfd` and related helpers to wrap the " +"Add a new function :func:`os.eventfd` and related helpers to wrap the " "``eventfd2`` syscall on Linux. (Contributed by Christian Heimes in :issue:" "`41001`.)" msgstr "" -#: whatsnew/3.10.rst:741 +#: whatsnew/3.10.rst:1222 msgid "" -"Added :func:`os.splice()` that allows to move data between two file " +"Add :func:`os.splice()` that allows to move data between two file " "descriptors without copying between kernel address space and user address " "space, where one of the file descriptors must refer to a pipe. (Contributed " "by Pablo Galindo in :issue:`41625`.)" msgstr "" -#: whatsnew/3.10.rst:746 +#: whatsnew/3.10.rst:1227 msgid "" -"Added :data:`~os.O_EVTONLY`, :data:`~os.O_FSYNC`, :data:`~os.O_SYMLINK` and :" +"Add :data:`~os.O_EVTONLY`, :data:`~os.O_FSYNC`, :data:`~os.O_SYMLINK` and :" "data:`~os.O_NOFOLLOW_ANY` for macOS. (Contributed by Dong-hee Na in :issue:" "`43106`.)" msgstr "" -#: whatsnew/3.10.rst:751 +#: whatsnew/3.10.rst:1232 +msgid "os.path" +msgstr "" + +#: whatsnew/3.10.rst:1234 +msgid "" +":func:`os.path.realpath` now accepts a *strict* keyword-only argument. When " +"set to ``True``, :exc:`OSError` is raised if a path doesn't exist or a " +"symlink loop is encountered. (Contributed by Barney Gale in :issue:`43757`.)" +msgstr "" + +#: whatsnew/3.10.rst:1240 msgid "pathlib" msgstr "pathlib" -#: whatsnew/3.10.rst:753 +#: whatsnew/3.10.rst:1242 msgid "" -"Added slice support to :attr:`PurePath.parents `. " +"Add slice support to :attr:`PurePath.parents `. " "(Contributed by Joshua Cannon in :issue:`35498`)" msgstr "" -#: whatsnew/3.10.rst:756 +#: whatsnew/3.10.rst:1245 msgid "" -"Added negative indexing support to :attr:`PurePath.parents `. (Contributed by Yaroslav Pankovych in :issue:`21041`)" msgstr "" -#: whatsnew/3.10.rst:761 +#: whatsnew/3.10.rst:1249 +msgid "" +"Add :meth:`Path.hardlink_to ` method that " +"supersedes :meth:`~pathlib.Path.link_to`. The new method has the same " +"argument order as :meth:`~pathlib.Path.symlink_to`. (Contributed by Barney " +"Gale in :issue:`39950`.)" +msgstr "" + +#: whatsnew/3.10.rst:1254 +msgid "" +":meth:`pathlib.Path.stat` and :meth:`~pathlib.Path.chmod` now accept a " +"*follow_symlinks* keyword-only argument for consistency with corresponding " +"functions in the :mod:`os` module. (Contributed by Barney Gale in :issue:" +"`39906`.)" +msgstr "" + +#: whatsnew/3.10.rst:1260 msgid "platform" msgstr "" -#: whatsnew/3.10.rst:763 +#: whatsnew/3.10.rst:1262 msgid "" -"Added :func:`platform.freedesktop_os_release()` to retrieve operation system " +"Add :func:`platform.freedesktop_os_release()` to retrieve operation system " "identification from `freedesktop.org os-release `_ standard file. (Contributed by " "Christian Heimes in :issue:`28468`)" msgstr "" -#: whatsnew/3.10.rst:769 +#: whatsnew/3.10.rst:1268 +msgid "pprint" +msgstr "" + +#: whatsnew/3.10.rst:1270 +msgid "" +":func:`pprint.pprint` now accepts a new ``underscore_numbers`` keyword " +"argument. (Contributed by sblondon in :issue:`42914`.)" +msgstr "" + +#: whatsnew/3.10.rst:1273 +msgid "" +":mod:`pprint` can now pretty-print :class:`dataclasses.dataclass` instances. " +"(Contributed by Lewis Gaul in :issue:`43080`.)" +msgstr "" + +#: whatsnew/3.10.rst:1277 msgid "py_compile" msgstr "" -#: whatsnew/3.10.rst:771 +#: whatsnew/3.10.rst:1279 msgid "" -"Added ``--quiet`` option to command-line interface of :mod:`py_compile`. " +"Add ``--quiet`` option to command-line interface of :mod:`py_compile`. " "(Contributed by Gregory Schevchenko in :issue:`38731`.)" msgstr "" -#: whatsnew/3.10.rst:775 +#: whatsnew/3.10.rst:1283 msgid "pyclbr" msgstr "" -#: whatsnew/3.10.rst:777 +#: whatsnew/3.10.rst:1285 msgid "" -"Added an ``end_lineno`` attribute to the ``Function`` and ``Class`` objects " -"in the tree returned by :func:`pyclbr.readline` and :func:`pyclbr." +"Add an ``end_lineno`` attribute to the ``Function`` and ``Class`` objects in " +"the tree returned by :func:`pyclbr.readline` and :func:`pyclbr." "readline_ex`. It matches the existing (start) ``lineno``. (Contributed by " "Aviral Srivastava in :issue:`38307`.)" msgstr "" -#: whatsnew/3.10.rst:783 +#: whatsnew/3.10.rst:1291 msgid "shelve" msgstr "" -#: whatsnew/3.10.rst:785 +#: whatsnew/3.10.rst:1293 msgid "" "The :mod:`shelve` module now uses :data:`pickle.DEFAULT_PROTOCOL` by default " "instead of :mod:`pickle` protocol ``3`` when creating shelves. (Contributed " "by Zackery Spytz in :issue:`34204`.)" msgstr "" -#: whatsnew/3.10.rst:790 +#: whatsnew/3.10.rst:1298 +msgid "statistics" +msgstr "" + +#: whatsnew/3.10.rst:1300 +msgid "" +"Add :func:`~statistics.covariance`, Pearson's :func:`~statistics." +"correlation`, and simple :func:`~statistics.linear_regression` functions. " +"(Contributed by Tymoteusz Wołodźko in :issue:`38490`.)" +msgstr "" + +#: whatsnew/3.10.rst:1306 msgid "site" msgstr "" -#: whatsnew/3.10.rst:796 +#: whatsnew/3.10.rst:1312 msgid "socket" msgstr "" -#: whatsnew/3.10.rst:798 +#: whatsnew/3.10.rst:1314 msgid "" "The exception :exc:`socket.timeout` is now an alias of :exc:`TimeoutError`. " "(Contributed by Christian Heimes in :issue:`42413`.)" msgstr "" -#: whatsnew/3.10.rst:802 +#: whatsnew/3.10.rst:1317 +msgid "" +"Add option to create MPTCP sockets with ``IPPROTO_MPTCP`` (Contributed by " +"Rui Cunha in :issue:`43571`.)" +msgstr "" + +#: whatsnew/3.10.rst:1320 +msgid "" +"Add ``IP_RECVTOS`` option to receive the type of service (ToS) or DSCP/ECN " +"fields (Contributed by Georg Sauthoff in :issue:`44077`.)" +msgstr "" + +#: whatsnew/3.10.rst:1324 +msgid "ssl" +msgstr "ssl" + +#: whatsnew/3.10.rst:1326 +msgid "" +"The ssl module requires OpenSSL 1.1.1 or newer. (Contributed by Christian " +"Heimes in :pep:`644` and :issue:`43669`.)" +msgstr "" + +#: whatsnew/3.10.rst:1329 +msgid "" +"The ssl module has preliminary support for OpenSSL 3.0.0 and new option :" +"data:`~ssl.OP_IGNORE_UNEXPECTED_EOF`. (Contributed by Christian Heimes in :" +"issue:`38820`, :issue:`43794`, :issue:`43788`, :issue:`43791`, :issue:" +"`43799`, :issue:`43920`, :issue:`43789`, and :issue:`43811`.)" +msgstr "" + +#: whatsnew/3.10.rst:1335 +msgid "" +"Deprecated function and use of deprecated constants now result in a :exc:" +"`DeprecationWarning`. :attr:`ssl.SSLContext.options` has :data:`~ssl." +"OP_NO_SSLv2` and :data:`~ssl.OP_NO_SSLv3` set by default and therefore " +"cannot warn about setting the flag again. The :ref:`deprecation section " +"` has a list of deprecated features. (Contributed by " +"Christian Heimes in :issue:`43880`.)" +msgstr "" + +#: whatsnew/3.10.rst:1343 +msgid "" +"The ssl module now has more secure default settings. Ciphers without forward " +"secrecy or SHA-1 MAC are disabled by default. Security level 2 prohibits " +"weak RSA, DH, and ECC keys with less than 112 bits of security. :class:`~ssl." +"SSLContext` defaults to minimum protocol version TLS 1.2. Settings are based " +"on Hynek Schlawack's research. (Contributed by Christian Heimes in :issue:" +"`43998`.)" +msgstr "" + +#: whatsnew/3.10.rst:1350 +msgid "" +"The deprecated protocols SSL 3.0, TLS 1.0, and TLS 1.1 are no longer " +"officially supported. Python does not block them actively. However OpenSSL " +"build options, distro configurations, vendor patches, and cipher suites may " +"prevent a successful handshake." +msgstr "" + +#: whatsnew/3.10.rst:1355 +msgid "" +"Add a *timeout* parameter to the :func:`ssl.get_server_certificate` " +"function. (Contributed by Zackery Spytz in :issue:`31870`.)" +msgstr "" + +#: whatsnew/3.10.rst:1358 +msgid "" +"The ssl module uses heap-types and multi-phase initialization. (Contributed " +"by Christian Heimes in :issue:`42333`.)" +msgstr "" + +#: whatsnew/3.10.rst:1361 +msgid "" +"A new verify flag :data:`~ssl.VERIFY_X509_PARTIAL_CHAIN` has been added. " +"(Contributed by l0x in :issue:`40849`.)" +msgstr "" + +#: whatsnew/3.10.rst:1365 +msgid "sqlite3" +msgstr "" + +#: whatsnew/3.10.rst:1367 +msgid "" +"Add audit events for :func:`~sqlite3.connect/handle`, :meth:`~sqlite3." +"Connection.enable_load_extension`, and :meth:`~sqlite3.Connection." +"load_extension`. (Contributed by Erlend E. Aasland in :issue:`43762`.)" +msgstr "" + +#: whatsnew/3.10.rst:1373 msgid "sys" msgstr "sys" -#: whatsnew/3.10.rst:804 +#: whatsnew/3.10.rst:1375 msgid "" "Add :data:`sys.orig_argv` attribute: the list of the original command line " "arguments passed to the Python executable. (Contributed by Victor Stinner " "in :issue:`23427`.)" msgstr "" -#: whatsnew/3.10.rst:808 +#: whatsnew/3.10.rst:1379 msgid "" "Add :data:`sys.stdlib_module_names`, containing the list of the standard " "library module names. (Contributed by Victor Stinner in :issue:`42955`.)" msgstr "" -#: whatsnew/3.10.rst:813 +#: whatsnew/3.10.rst:1384 msgid "_thread" msgstr "" -#: whatsnew/3.10.rst:815 +#: whatsnew/3.10.rst:1386 msgid "" ":func:`_thread.interrupt_main` now takes an optional signal number to " "simulate (the default is still :data:`signal.SIGINT`). (Contributed by " "Antoine Pitrou in :issue:`43356`.)" msgstr "" -#: whatsnew/3.10.rst:820 +#: whatsnew/3.10.rst:1391 msgid "threading" msgstr "threading" -#: whatsnew/3.10.rst:822 +#: whatsnew/3.10.rst:1393 msgid "" -"Added :func:`threading.gettrace` and :func:`threading.getprofile` to " -"retrieve the functions set by :func:`threading.settrace` and :func:" -"`threading.setprofile` respectively. (Contributed by Mario Corchero in :" -"issue:`42251`.)" +"Add :func:`threading.gettrace` and :func:`threading.getprofile` to retrieve " +"the functions set by :func:`threading.settrace` and :func:`threading." +"setprofile` respectively. (Contributed by Mario Corchero in :issue:`42251`.)" msgstr "" -#: whatsnew/3.10.rst:827 +#: whatsnew/3.10.rst:1398 msgid "" "Add :data:`threading.__excepthook__` to allow retrieving the original value " "of :func:`threading.excepthook` in case it is set to a broken or a different " "value. (Contributed by Mario Corchero in :issue:`42308`.)" msgstr "" -#: whatsnew/3.10.rst:833 +#: whatsnew/3.10.rst:1404 msgid "traceback" msgstr "traceback" -#: whatsnew/3.10.rst:835 +#: whatsnew/3.10.rst:1406 msgid "" "The :func:`~traceback.format_exception`, :func:`~traceback." "format_exception_only`, and :func:`~traceback.print_exception` functions can " @@ -978,42 +1697,42 @@ msgid "" "Zackery Spytz and Matthias Bussonnier in :issue:`26389`.)" msgstr "" -#: whatsnew/3.10.rst:842 +#: whatsnew/3.10.rst:1413 msgid "types" msgstr "" -#: whatsnew/3.10.rst:844 +#: whatsnew/3.10.rst:1415 msgid "" -"Reintroduced the :data:`types.EllipsisType`, :data:`types.NoneType` and :" -"data:`types.NotImplementedType` classes, providing a new set of types " -"readily interpretable by type checkers. (Contributed by Bas van Beek in :" -"issue:`41810`.)" +"Reintroduce the :data:`types.EllipsisType`, :data:`types.NoneType` and :data:" +"`types.NotImplementedType` classes, providing a new set of types readily " +"interpretable by type checkers. (Contributed by Bas van Beek in :issue:" +"`41810`.)" msgstr "" -#: whatsnew/3.10.rst:850 +#: whatsnew/3.10.rst:1421 msgid "typing" msgstr "" -#: whatsnew/3.10.rst:852 -msgid "For major changes, see `New Features Related to Type Annotations`_." +#: whatsnew/3.10.rst:1423 +msgid "For major changes, see `New Features Related to Type Hints`_." msgstr "" -#: whatsnew/3.10.rst:854 +#: whatsnew/3.10.rst:1425 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 "" -#: whatsnew/3.10.rst:857 +#: whatsnew/3.10.rst:1428 msgid "``Literal`` now de-duplicates parameters." msgstr "" -#: whatsnew/3.10.rst:858 +#: whatsnew/3.10.rst:1429 msgid "" "Equality comparisons between ``Literal`` objects are now order independent." msgstr "" -#: whatsnew/3.10.rst:859 +#: whatsnew/3.10.rst:1430 msgid "" "``Literal`` comparisons now respects types. For example, ``Literal[0] == " "Literal[False]`` previously evaluated to ``True``. It is now ``False``. To " @@ -1021,34 +1740,60 @@ msgid "" "differentiating types." msgstr "" -#: whatsnew/3.10.rst:863 +#: whatsnew/3.10.rst:1434 msgid "" "``Literal`` objects will now raise a :exc:`TypeError` exception during " -"equality comparisons if one of their parameters are not :term:`immutable`. " -"Note that declaring ``Literal`` with mutable parameters will not throw an " +"equality comparisons if any of their parameters are not :term:`hashable`. " +"Note that declaring ``Literal`` with unhashable parameters will not throw an " "error::" msgstr "" -#: whatsnew/3.10.rst:875 +#: whatsnew/3.10.rst:1446 msgid "(Contributed by Yurii Karabas in :issue:`42345`.)" msgstr "" -#: whatsnew/3.10.rst:878 +#: whatsnew/3.10.rst:1448 +msgid "" +"Add new function :func:`typing.is_typeddict` to introspect if an annotation " +"is a :class:`typing.TypedDict`. (Contributed by Patrick Reader in :issue:" +"`41792`)" +msgstr "" + +#: whatsnew/3.10.rst:1452 +msgid "" +"Subclasses of ``typing.Protocol`` which only have data variables declared " +"will now raise a ``TypeError`` when checked with ``isinstance`` unless they " +"are decorated with :func:`runtime_checkable`. Previously, these checks " +"passed silently. Users should decorate their subclasses with the :func:" +"`runtime_checkable` decorator if they want runtime protocols. (Contributed " +"by Yurii Karabas in :issue:`38908`)" +msgstr "" + +#: whatsnew/3.10.rst:1460 +msgid "" +"Importing from the ``typing.io`` and ``typing.re`` submodules will now emit :" +"exc:`DeprecationWarning`. These submodules have been deprecated since " +"Python 3.8 and will be removed in a future version of Python. Anything " +"belonging to those submodules should be imported directly from :mod:`typing` " +"instead. (Contributed by Sebastian Rittau in :issue:`38291`)" +msgstr "" + +#: whatsnew/3.10.rst:1468 msgid "unittest" msgstr "unittest" -#: whatsnew/3.10.rst:880 +#: whatsnew/3.10.rst:1470 msgid "" "Add new method :meth:`~unittest.TestCase.assertNoLogs` to complement the " "existing :meth:`~unittest.TestCase.assertLogs`. (Contributed by Kit Yan Choi " "in :issue:`39385`.)" msgstr "" -#: whatsnew/3.10.rst:885 +#: whatsnew/3.10.rst:1475 msgid "urllib.parse" msgstr "urllib.parse" -#: whatsnew/3.10.rst:887 +#: whatsnew/3.10.rst:1477 msgid "" "Python versions earlier than Python 3.10 allowed using both ``;`` and ``&`` " "as query parameter separators in :func:`urllib.parse.parse_qs` and :func:" @@ -1061,48 +1806,66 @@ msgid "" "in :issue:`42967`.)" msgstr "" -#: whatsnew/3.10.rst:898 +#: whatsnew/3.10.rst:1487 +msgid "" +"The presence of newline or tab characters in parts of a URL allows for some " +"forms of attacks. Following the WHATWG specification that updates :rfc:" +"`3986`, ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` characters are " +"stripped from the URL by the parser in :mod:`urllib.parse` preventing such " +"attacks. The removal characters are controlled by a new module level " +"variable ``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. (See :issue:`43882`)" +msgstr "" + +#: whatsnew/3.10.rst:1495 msgid "xml" msgstr "" -#: whatsnew/3.10.rst:900 +#: whatsnew/3.10.rst:1497 msgid "" "Add a :class:`~xml.sax.handler.LexicalHandler` class to the :mod:`xml.sax." "handler` module. (Contributed by Jonathan Gossage and Zackery Spytz in :" "issue:`35018`.)" msgstr "" -#: whatsnew/3.10.rst:905 +#: whatsnew/3.10.rst:1502 msgid "zipimport" msgstr "" -#: whatsnew/3.10.rst:906 +#: whatsnew/3.10.rst:1503 msgid "" "Add methods related to :pep:`451`: :meth:`~zipimport.zipimporter." "find_spec`, :meth:`zipimport.zipimporter.create_module`, and :meth:" "`zipimport.zipimporter.exec_module`. (Contributed by Brett Cannon in :issue:" -"`42131`." +"`42131`.)" msgstr "" -#: whatsnew/3.10.rst:913 +#: whatsnew/3.10.rst:1508 +msgid "" +"Add :meth:`~zipimport.zipimporter.invalidate_caches` method. (Contributed by " +"Desmond Cheong in :issue:`14678`.)" +msgstr "" + +#: whatsnew/3.10.rst:1513 msgid "Optimizations" msgstr "" -#: whatsnew/3.10.rst:915 +#: whatsnew/3.10.rst:1515 msgid "" "Constructors :func:`str`, :func:`bytes` and :func:`bytearray` are now faster " "(around 30--40% for small objects). (Contributed by Serhiy Storchaka in :" "issue:`41334`.)" msgstr "" -#: whatsnew/3.10.rst:919 +#: whatsnew/3.10.rst:1519 msgid "" "The :mod:`runpy` module now imports fewer modules. The ``python3 -m module-" -"name`` command startup time is 1.3x faster in average. (Contributed by " -"Victor Stinner in :issue:`41006`.)" +"name`` command startup time is 1.4x faster in average. On Linux, ``python3 -" +"I -m module-name`` imports 69 modules on Python 3.9, whereas it only imports " +"51 modules (-18) on Python 3.10. (Contributed by Victor Stinner in :issue:" +"`41006` and :issue:`41718`.)" msgstr "" -#: whatsnew/3.10.rst:924 +#: whatsnew/3.10.rst:1525 msgid "" "The ``LOAD_ATTR`` instruction now uses new \"per opcode cache\" mechanism. " "It is about 36% faster now for regular attributes and 44% faster for slots. " @@ -1111,27 +1874,38 @@ msgid "" "and MicroPython.)" msgstr "" -#: whatsnew/3.10.rst:930 +#: whatsnew/3.10.rst:1531 +msgid "" +"When building Python with :option:`--enable-optimizations` now ``-fno-" +"semantic-interposition`` is added to both the compile and link line. This " +"speeds builds of the Python interpreter created with :option:`--enable-" +"shared` with ``gcc`` by up to 30%. See `this article `_ for more details. (Contributed by Victor Stinner " +"and Pablo Galindo in :issue:`38980`.)" +msgstr "" + +#: whatsnew/3.10.rst:1539 msgid "" -"When building Python with ``--enable-optimizations`` now ``-fno-semantic-" -"interposition`` is added to both the compile and link line. This speeds " -"builds of the Python interpreter created with ``--enable-shared`` with " -"``gcc`` by up to 30%. See `this article `_ for more details. (Contributed by Victor Stinner and Pablo " -"Galindo in :issue:`38980`.)" +"Use a new output buffer management code for :mod:`bz2` / :mod:`lzma` / :mod:" +"`zlib` modules, and add ``.readall()`` function to ``_compression." +"DecompressReader`` class. bz2 decompression is now 1.09x ~ 1.17x faster, " +"lzma decompression 1.20x ~ 1.32x faster, ``GzipFile.read(-1)`` 1.11x ~ 1.18x " +"faster. (Contributed by Ma Lin, reviewed by Gregory P. Smith, in :issue:" +"`41486`)" msgstr "" -#: whatsnew/3.10.rst:939 +#: whatsnew/3.10.rst:1545 msgid "" -"Function parameters and their annotations are no longer computed at runtime, " -"but rather at compilation time. They are stored as a tuple of strings at " -"the bytecode level. It is now around 2 times faster to create a function " -"with parameter annotations. (Contributed by Yurii Karabas and Inada Naoki " -"in :issue:`42202`)" +"When using stringized annotations, annotations dicts for functions are no " +"longer created when the function is created. Instead, they are stored as a " +"tuple of strings, and the function object lazily converts this into the " +"annotations dict on demand. This optimization cuts the CPU time needed to " +"define an annotated function by half. (Contributed by Yurii Karabas and " +"Inada Naoki in :issue:`42202`)" msgstr "" -#: whatsnew/3.10.rst:945 +#: whatsnew/3.10.rst:1552 msgid "" "Substring search functions such as ``str1 in str2`` and ``str2.find(str1)`` " "now sometimes use Crochemore & Perrin's \"Two-Way\" string searching " @@ -1139,11 +1913,50 @@ msgid "" "Dennis Sweeney in :issue:`41972`)" msgstr "" -#: whatsnew/3.10.rst:1304 +#: whatsnew/3.10.rst:1557 +msgid "" +"Add micro-optimizations to ``_PyType_Lookup()`` to improve type attribute " +"cache lookup performance in the common case of cache hits. This makes the " +"interpreter 1.04 times faster on average. (Contributed by Dino Viehland in :" +"issue:`43452`)" +msgstr "" + +#: whatsnew/3.10.rst:1561 +msgid "" +"The following built-in functions now support the faster :pep:`590` " +"vectorcall calling convention: :func:`map`, :func:`filter`, :func:" +"`reversed`, :func:`bool` and :func:`float`. (Contributed by Dong-hee Na and " +"Jeroen Demeyer in :issue:`43575`, :issue:`43287`, :issue:`41922`, :issue:" +"`41873` and :issue:`41870`)" +msgstr "" + +#: whatsnew/3.10.rst:1565 +msgid "" +":class:`BZ2File` performance is improved by removing internal ``RLock``. " +"This makes :class:`BZ2File` thread unsafe in the face of multiple " +"simultaneous readers or writers, just like its equivalent classes in :mod:" +"`gzip` and :mod:`lzma` have always been. (Contributed by Inada Naoki in :" +"issue:`43785`)." +msgstr "" + +#: whatsnew/3.10.rst:2194 msgid "Deprecated" msgstr "" -#: whatsnew/3.10.rst:953 +#: whatsnew/3.10.rst:1575 +msgid "" +"Currently Python accepts numeric literals immediately followed by keywords, " +"for example ``0in x``, ``1or x``, ``0if 1else 2``. It allows confusing and " +"ambigious expressions like ``[0x1for x in y]`` (which can be interpreted as " +"``[0x1 for x in y]`` or ``[0x1f or x in y]``). Starting in this release, a " +"deprecation warning is raised if the numeric literal is immediately followed " +"by one of keywords :keyword:`and`, :keyword:`else`, :keyword:`for`, :keyword:" +"`if`, :keyword:`in`, :keyword:`is` and :keyword:`or`. If future releases it " +"will be changed to syntax warning, and finally to syntax error. (Contributed " +"by Serhiy Storchaka in :issue:`43833`)." +msgstr "" + +#: whatsnew/3.10.rst:1586 msgid "" "Starting in this release, there will be a concerted effort to begin cleaning " "up old import semantics that were kept for Python 2.7 compatibility. " @@ -1161,21 +1974,21 @@ msgid "" "transition." msgstr "" -#: whatsnew/3.10.rst:970 +#: whatsnew/3.10.rst:1603 msgid "" "The entire ``distutils`` namespace is deprecated, to be removed in Python " "3.12. Refer to the :ref:`module changes ` section for " "more information." msgstr "" -#: whatsnew/3.10.rst:974 +#: whatsnew/3.10.rst:1607 msgid "" "Non-integer arguments to :func:`random.randrange` are deprecated. The :exc:" "`ValueError` is deprecated in favor of a :exc:`TypeError`. (Contributed by " "Serhiy Storchaka and Raymond Hettinger in :issue:`37319`.)" msgstr "" -#: whatsnew/3.10.rst:978 +#: whatsnew/3.10.rst:1611 msgid "" "The various ``load_module()`` methods of :mod:`importlib` have been " "documented as deprecated since Python 3.6, but will now also trigger a :exc:" @@ -1183,21 +1996,91 @@ msgid "" "(Contributed by Brett Cannon in :issue:`26131`.)" msgstr "" -#: whatsnew/3.10.rst:984 +#: whatsnew/3.10.rst:1617 msgid "" ":meth:`zimport.zipimporter.load_module` has been deprecated in preference " "for :meth:`~zipimport.zipimporter.exec_module`. (Contributed by Brett Cannon " "in :issue:`26131`.)" msgstr "" -#: whatsnew/3.10.rst:988 +#: whatsnew/3.10.rst:1621 msgid "" "The use of :meth:`~importlib.abc.Loader.load_module` by the import system " "now triggers an :exc:`ImportWarning` as :meth:`~importlib.abc.Loader." "exec_module` is preferred. (Contributed by Brett Cannon in :issue:`26131`.)" msgstr "" -#: whatsnew/3.10.rst:993 +#: whatsnew/3.10.rst:1626 +msgid "" +"The use of :meth:`importlib.abc.MetaPathFinder.find_module` and :meth:" +"`importlib.abc.PathEntryFinder.find_module` by the import system now trigger " +"an :exc:`ImportWarning` as :meth:`importlib.abc.MetaPathFinder.find_spec` " +"and :meth:`importlib.abc.PathEntryFinder.find_spec` are preferred, " +"respectively. You can use :func:`importlib.util.spec_from_loader` to help in " +"porting. (Contributed by Brett Cannon in :issue:`42134`.)" +msgstr "" + +#: whatsnew/3.10.rst:1635 +msgid "" +"The use of :meth:`importlib.abc.PathEntryFinder.find_loader` by the import " +"system now triggers an :exc:`ImportWarning` as :meth:`importlib.abc." +"PathEntryFinder.find_spec` is preferred. You can use :func:`importlib.util." +"spec_from_loader` to help in porting. (Contributed by Brett Cannon in :issue:" +"`43672`.)" +msgstr "" + +#: whatsnew/3.10.rst:1641 +msgid "" +"The various implementations of :meth:`importlib.abc.MetaPathFinder." +"find_module` ( :meth:`importlib.machinery.BuiltinImporter.find_module`, :" +"meth:`importlib.machinery.FrozenImporter.find_module`, :meth:`importlib." +"machinery.WindowsRegistryFinder.find_module`, :meth:`importlib.machinery." +"PathFinder.find_module`, :meth:`importlib.abc.MetaPathFinder.find_module`), :" +"meth:`importlib.abc.PathEntryFinder.find_module` ( :meth:`importlib." +"machinery.FileFinder.find_module`, ), and :meth:`importlib.abc." +"PathEntryFinder.find_loader` ( :meth:`importlib.machinery.FileFinder." +"find_loader` ) now raise :exc:`DeprecationWarning` and are slated for " +"removal in Python 3.12 (previously they were documented as deprecated in " +"Python 3.4). (Contributed by Brett Cannon in :issue:`42135`.)" +msgstr "" + +#: whatsnew/3.10.rst:1657 +msgid "" +":class:`importlib.abc.Finder` is deprecated (including its sole method, :" +"meth:`~importlib.abc.Finder.find_module`). Both :class:`importlib.abc." +"MetaPathFinder` and :class:`importlib.abc.PathEntryFinder` no longer inherit " +"from the class. Users should inherit from one of these two classes as " +"appropriate instead. (Contributed by Brett Cannon in :issue:`42135`.)" +msgstr "" + +#: whatsnew/3.10.rst:1664 +msgid "" +"The deprecations of :mod:`imp`, :func:`importlib.find_loader`, :func:" +"`importlib.util.set_package_wrapper`, :func:`importlib.util." +"set_loader_wrapper`, :func:`importlib.util.module_for_loader`, :class:" +"`pkgutil.ImpImporter`, and :class:`pkgutil.ImpLoader` have all been updated " +"to list Python 3.12 as the slated version of removal (they began raising :" +"exc:`DeprecationWarning` in previous versions of Python). (Contributed by " +"Brett Cannon in :issue:`43720`.)" +msgstr "" + +#: whatsnew/3.10.rst:1674 +msgid "" +"The import system now uses the ``__spec__`` attribute on modules before " +"falling back on :meth:`~importlib.abc.Loader.module_repr` for a module's " +"``__repr__()`` method. Removal of the use of ``module_repr()`` is scheduled " +"for Python 3.12. (Contributed by Brett Cannon in :issue:`42137`.)" +msgstr "" + +#: whatsnew/3.10.rst:1680 +msgid "" +":meth:`importlib.abc.Loader.module_repr`, :meth:`importlib.machinery." +"FrozenLoader.module_repr`, and :meth:`importlib.machinery.BuiltinLoader." +"module_repr` are deprecated and slated for removal in Python 3.12. " +"(Contributed by Brett Cannon in :issue:`42136`.)" +msgstr "" + +#: whatsnew/3.10.rst:1686 msgid "" "``sqlite3.OptimizedUnicode`` has been undocumented and obsolete since Python " "3.3, when it was made an alias to :class:`str`. It is now deprecated, " @@ -1205,21 +2088,148 @@ msgid "" "issue:`42264`.)" msgstr "" -#: whatsnew/3.10.rst:998 +#: whatsnew/3.10.rst:1691 +msgid "" +":func:`asyncio.get_event_loop` now emits a deprecation warning if there is " +"no running event loop. In the future it will be an alias of :func:`~asyncio." +"get_running_loop`. :mod:`asyncio` functions which implicitly create a :class:" +"`~asyncio.Future` or :class:`~asyncio.Task` objects now emit a deprecation " +"warning if there is no running event loop and no explicit *loop* argument is " +"passed: :func:`~asyncio.ensure_future`, :func:`~asyncio.wrap_future`, :func:" +"`~asyncio.gather`, :func:`~asyncio.shield`, :func:`~asyncio.as_completed` " +"and constructors of :class:`~asyncio.Future`, :class:`~asyncio.Task`, :class:" +"`~asyncio.StreamReader`, :class:`~asyncio.StreamReaderProtocol`. " +"(Contributed by Serhiy Storchaka in :issue:`39529`.)" +msgstr "" + +#: whatsnew/3.10.rst:1704 msgid "" "The undocumented built-in function ``sqlite3.enable_shared_cache`` is now " "deprecated, scheduled for removal in Python 3.12. Its use is strongly " "discouraged by the SQLite3 documentation. See `the SQLite3 docs `_ for more details. If shared " +"sqlite.org/c3ref/enable_shared_cache.html>`_ for more details. If a shared " "cache must be used, open the database in URI mode using the ``cache=shared`` " "query parameter. (Contributed by Erlend E. Aasland in :issue:`24464`.)" msgstr "" -#: whatsnew/3.10.rst:1312 +#: whatsnew/3.10.rst:1712 +msgid "The following ``threading`` methods are now deprecated:" +msgstr "" + +#: whatsnew/3.10.rst:1714 +msgid "``threading.currentThread`` => :func:`threading.current_thread`" +msgstr "" + +#: whatsnew/3.10.rst:1716 +msgid "``threading.activeCount`` => :func:`threading.active_count`" +msgstr "" + +#: whatsnew/3.10.rst:1718 +msgid "" +"``threading.Condition.notifyAll`` => :meth:`threading.Condition.notify_all`" +msgstr "" + +#: whatsnew/3.10.rst:1721 +msgid "``threading.Event.isSet`` => :meth:`threading.Event.is_set`" +msgstr "" + +#: whatsnew/3.10.rst:1723 +msgid "``threading.Thread.setName`` => :attr:`threading.Thread.name`" +msgstr "" + +#: whatsnew/3.10.rst:1725 +msgid "``threading.thread.getName`` => :attr:`threading.Thread.name`" +msgstr "" + +#: whatsnew/3.10.rst:1727 +msgid "``threading.Thread.isDaemon`` => :attr:`threading.Thread.daemon`" +msgstr "" + +#: whatsnew/3.10.rst:1729 +msgid "``threading.Thread.setDaemon`` => :attr:`threading.Thread.daemon`" +msgstr "" + +#: whatsnew/3.10.rst:1731 +msgid "(Contributed by Jelle Zijlstra in :issue:`21574`.)" +msgstr "" + +#: whatsnew/3.10.rst:1733 +msgid "" +":meth:`pathlib.Path.link_to` is deprecated and slated for removal in Python " +"3.12. Use :meth:`pathlib.Path.hardlink_to` instead. (Contributed by Barney " +"Gale in :issue:`39950`.)" +msgstr "" + +#: whatsnew/3.10.rst:1737 +msgid "" +"``cgi.log()`` is deprecated and slated for removal in Python 3.12. " +"(Contributed by Inada Naoki in :issue:`41139`.)" +msgstr "" + +#: whatsnew/3.10.rst:1740 +msgid "" +"The following :mod:`ssl` features have been deprecated since Python 3.6, " +"Python 3.7, or OpenSSL 1.1.0 and will be removed in 3.11:" +msgstr "" + +#: whatsnew/3.10.rst:1743 +msgid "" +":data:`~ssl.OP_NO_SSLv2`, :data:`~ssl.OP_NO_SSLv3`, :data:`~ssl." +"OP_NO_TLSv1`, :data:`~ssl.OP_NO_TLSv1_1`, :data:`~ssl.OP_NO_TLSv1_2`, and :" +"data:`~ssl.OP_NO_TLSv1_3` are replaced by :attr:`sslSSLContext." +"minimum_version` and :attr:`sslSSLContext.maximum_version`." +msgstr "" + +#: whatsnew/3.10.rst:1749 +msgid "" +":data:`~ssl.PROTOCOL_SSLv2`, :data:`~ssl.PROTOCOL_SSLv3`, :data:`~ssl." +"PROTOCOL_SSLv23`, :data:`~ssl.PROTOCOL_TLSv1`, :data:`~ssl." +"PROTOCOL_TLSv1_1`, :data:`~ssl.PROTOCOL_TLSv1_2`, and :data:`~ssl." +"PROTOCOL_TLS` are deprecated in favor of :data:`~ssl.PROTOCOL_TLS_CLIENT` " +"and :data:`~ssl.PROTOCOL_TLS_SERVER`" +msgstr "" + +#: whatsnew/3.10.rst:1755 +msgid "" +":func:`~ssl.wrap_socket` is replaced by :meth:`ssl.SSLContext.wrap_socket`" +msgstr "" + +#: whatsnew/3.10.rst:1757 +msgid ":func:`~ssl.match_hostname`" +msgstr "" + +#: whatsnew/3.10.rst:1759 +msgid ":func:`~ssl.RAND_pseudo_bytes`, :func:`~ssl.RAND_egd`" +msgstr "" + +#: whatsnew/3.10.rst:1761 +msgid "" +"NPN features like :meth:`ssl.SSLSocket.selected_npn_protocol` and :meth:`ssl." +"SSLContext.set_npn_protocols` are replaced by ALPN." +msgstr "" + +#: whatsnew/3.10.rst:1764 +msgid "" +"The threading debug (:envvar:`PYTHONTHREADDEBUG` environment variable) is " +"deprecated in Python 3.10 and will be removed in Python 3.12. This feature " +"requires a :ref:`debug build of Python `. (Contributed by " +"Victor Stinner in :issue:`44584`.)" +msgstr "" + +#: whatsnew/3.10.rst:1769 +msgid "" +"Importing from the ``typing.io`` and ``typing.re`` submodules will now emit :" +"exc:`DeprecationWarning`. These submodules will be removed in a future " +"version of Python. Anything belonging to these submodules should be " +"imported directly from :mod:`typing` instead. (Contributed by Sebastian " +"Rittau in :issue:`38291`)" +msgstr "" + +#: whatsnew/3.10.rst:2202 msgid "Removed" msgstr "" -#: whatsnew/3.10.rst:1010 +#: whatsnew/3.10.rst:1780 msgid "" "Removed special methods ``__int__``, ``__float__``, ``__floordiv__``, " "``__mod__``, ``__divmod__``, ``__rfloordiv__``, ``__rmod__`` and " @@ -1227,16 +2237,16 @@ msgid "" "`TypeError`. (Contributed by Serhiy Storchaka in :issue:`41974`.)" msgstr "" -#: whatsnew/3.10.rst:1016 +#: whatsnew/3.10.rst:1786 msgid "" "The ``ParserBase.error()`` method from the private and undocumented " "``_markupbase`` module has been removed. :class:`html.parser.HTMLParser` is " -"the only subclass of ``ParserBase`` and its ``error()`` implementation has " -"already been removed in Python 3.5. (Contributed by Berker Peksag in :issue:" +"the only subclass of ``ParserBase`` and its ``error()`` implementation was " +"already removed in Python 3.5. (Contributed by Berker Peksag in :issue:" "`31844`.)" msgstr "" -#: whatsnew/3.10.rst:1022 +#: whatsnew/3.10.rst:1792 msgid "" "Removed the ``unicodedata.ucnhash_CAPI`` attribute which was an internal " "PyCapsule object. The related private ``_PyUnicode_Name_CAPI`` structure was " @@ -1244,7 +2254,7 @@ msgid "" "`42157`.)" msgstr "" -#: whatsnew/3.10.rst:1027 +#: whatsnew/3.10.rst:1797 msgid "" "Removed the ``parser`` module, which was deprecated in 3.9 due to the switch " "to the new PEG parser, as well as all the C source and header files that " @@ -1252,16 +2262,15 @@ msgid "" "``graminit.h`` and ``grammar.h``." msgstr "" -#: whatsnew/3.10.rst:1032 +#: whatsnew/3.10.rst:1802 msgid "" -"Removed the Public C API functions :c:func:" -"`PyParser_SimpleParseStringFlags`, :c:func:" -"`PyParser_SimpleParseStringFlagsFilename`, :c:func:" -"`PyParser_SimpleParseFileFlags` and :c:func:`PyNode_Compile` that were " +"Removed the Public C API functions ``PyParser_SimpleParseStringFlags``, " +"``PyParser_SimpleParseStringFlagsFilename``, " +"``PyParser_SimpleParseFileFlags`` and ``PyNode_Compile`` that were " "deprecated in 3.9 due to the switch to the new PEG parser." msgstr "" -#: whatsnew/3.10.rst:1037 +#: whatsnew/3.10.rst:1807 msgid "" "Removed the ``formatter`` module, which was deprecated in Python 3.4. It is " "somewhat obsolete, little used, and not tested. It was originally scheduled " @@ -1271,71 +2280,85 @@ msgid "" "`42299`.)" msgstr "" -#: whatsnew/3.10.rst:1044 +#: whatsnew/3.10.rst:1814 msgid "" "Removed the :c:func:`PyModule_GetWarningsModule` function that was useless " "now due to the _warnings module was converted to a builtin module in 2.6. " "(Contributed by Hai Shi in :issue:`42599`.)" msgstr "" -#: whatsnew/3.10.rst:1048 +#: whatsnew/3.10.rst:1818 msgid "" "Remove deprecated aliases to :ref:`collections-abstract-base-classes` from " "the :mod:`collections` module. (Contributed by Victor Stinner in :issue:" "`37324`.)" msgstr "" -#: whatsnew/3.10.rst:1052 +#: whatsnew/3.10.rst:1822 msgid "" "The ``loop`` parameter has been removed from most of :mod:`asyncio`\\ 's :" "doc:`high-level API <../library/asyncio-api-index>` following deprecation in " "Python 3.8. The motivation behind this change is multifold:" msgstr "" -#: whatsnew/3.10.rst:1056 +#: whatsnew/3.10.rst:1826 msgid "This simplifies the high-level API." msgstr "" -#: whatsnew/3.10.rst:1057 +#: whatsnew/3.10.rst:1827 msgid "" "The functions in the high-level API have been implicitly getting the current " "thread's running event loop since Python 3.7. There isn't a need to pass " "the event loop to the API in most normal use cases." msgstr "" -#: whatsnew/3.10.rst:1060 +#: whatsnew/3.10.rst:1830 msgid "" "Event loop passing is error-prone especially when dealing with loops running " "in different threads." msgstr "" -#: whatsnew/3.10.rst:1063 +#: whatsnew/3.10.rst:1833 msgid "" "Note that the low-level API will still accept ``loop``. See `Changes in the " "Python API`_ for examples of how to replace existing code." msgstr "" -#: whatsnew/3.10.rst:1125 +#: whatsnew/3.10.rst:1907 msgid "" "(Contributed by Yurii Karabas, Andrew Svetlov, Yury Selivanov and Kyle " "Stanley in :issue:`42392`.)" msgstr "" -#: whatsnew/3.10.rst:1247 +#: whatsnew/3.10.rst:2127 msgid "Porting to Python 3.10" msgstr "" -#: whatsnew/3.10.rst:1073 +#: whatsnew/3.10.rst:1843 msgid "" "This section lists previously described changes and other bugfixes that may " "require changes to your code." msgstr "" -#: whatsnew/3.10.rst:1078 +#: whatsnew/3.10.rst:1848 +msgid "Changes in the Python syntax" +msgstr "" + +#: whatsnew/3.10.rst:1850 +msgid "" +"Deprecation warning is now emitted when compiling previously valid syntax if " +"the numeric literal is immediately followed by a keyword (like in ``0in " +"x``). In future releases it will be changed to syntax warning, and finally " +"to a syntax error. To get rid of the warning and make the code compatible " +"with future releases just add a space between the numeric literal and the " +"following keyword. (Contributed by Serhiy Storchaka in :issue:`43833`)." +msgstr "" + +#: whatsnew/3.10.rst:1860 msgid "Changes in the Python API" msgstr "" -#: whatsnew/3.10.rst:1080 +#: whatsnew/3.10.rst:1862 msgid "" "The *etype* parameters of the :func:`~traceback.format_exception`, :func:" "`~traceback.format_exception_only`, and :func:`~traceback.print_exception` " @@ -1343,7 +2366,7 @@ msgid "" "(Contributed by Zackery Spytz and Matthias Bussonnier in :issue:`26389`.)" msgstr "" -#: whatsnew/3.10.rst:1086 +#: whatsnew/3.10.rst:1868 msgid "" ":mod:`atexit`: At Python exit, if a callback registered with :func:`atexit." "register` fails, its exception is now logged. Previously, only some " @@ -1351,7 +2374,7 @@ msgid "" "(Contributed by Victor Stinner in :issue:`42639`.)" msgstr "" -#: whatsnew/3.10.rst:1092 +#: whatsnew/3.10.rst:1874 msgid "" ":class:`collections.abc.Callable` generic now flattens type parameters, " "similar to what :data:`typing.Callable` currently does. This means that " @@ -1364,7 +2387,7 @@ msgid "" "`42195`.)" msgstr "" -#: whatsnew/3.10.rst:1102 +#: whatsnew/3.10.rst:1884 msgid "" ":meth:`socket.htons` and :meth:`socket.ntohs` now raise :exc:`OverflowError` " "instead of :exc:`DeprecationWarning` if the given parameter will not fit in " @@ -1372,29 +2395,29 @@ msgid "" "`42393`.)" msgstr "" -#: whatsnew/3.10.rst:1107 +#: whatsnew/3.10.rst:1889 msgid "" "The ``loop`` parameter has been removed from most of :mod:`asyncio`\\ 's :" "doc:`high-level API <../library/asyncio-api-index>` following deprecation in " "Python 3.8." msgstr "" -#: whatsnew/3.10.rst:1111 -msgid "A coroutine that currently look like this::" +#: whatsnew/3.10.rst:1893 +msgid "A coroutine that currently looks like this::" msgstr "" -#: whatsnew/3.10.rst:1116 +#: whatsnew/3.10.rst:1898 msgid "Should be replaced with this::" msgstr "" -#: whatsnew/3.10.rst:1121 +#: whatsnew/3.10.rst:1903 msgid "" "If ``foo()`` was specifically designed *not* to run in the current thread's " "running event loop (e.g. running in another thread's event loop), consider " "using :func:`asyncio.run_coroutine_threadsafe` instead." msgstr "" -#: whatsnew/3.10.rst:1128 +#: whatsnew/3.10.rst:1910 msgid "" "The :data:`types.FunctionType` constructor now inherits the current builtins " "if the *globals* dictionary has no ``\"__builtins__\"`` key, rather than " @@ -1405,55 +2428,118 @@ msgid "" "`42990`.)" msgstr "" -#: whatsnew/3.10.rst:1137 +#: whatsnew/3.10.rst:1919 +msgid "Changes in the C API" +msgstr "" + +#: whatsnew/3.10.rst:1921 +msgid "" +"The C API functions ``PyParser_SimpleParseStringFlags``, " +"``PyParser_SimpleParseStringFlagsFilename``, " +"``PyParser_SimpleParseFileFlags``, ``PyNode_Compile`` and the type used by " +"these functions, ``struct _node``, were removed due to the switch to the new " +"PEG parser." +msgstr "" + +#: whatsnew/3.10.rst:1927 +msgid "" +"Source should be now be compiled directly to a code object using, for " +"example, :c:func:`Py_CompileString`. The resulting code object can then be " +"evaluated using, for example, :c:func:`PyEval_EvalCode`." +msgstr "" + +#: whatsnew/3.10.rst:1931 +msgid "Specifically:" +msgstr "" + +#: whatsnew/3.10.rst:1933 +msgid "" +"A call to ``PyParser_SimpleParseStringFlags`` followed by ``PyNode_Compile`` " +"can be replaced by calling :c:func:`Py_CompileString`." +msgstr "" + +#: whatsnew/3.10.rst:1936 +msgid "" +"There is no direct replacement for ``PyParser_SimpleParseFileFlags``. To " +"compile code from a ``FILE *`` argument, you will need to read the file in C " +"and pass the resulting buffer to :c:func:`Py_CompileString`." +msgstr "" + +#: whatsnew/3.10.rst:1940 +msgid "" +"To compile a file given a ``char *`` filename, explicitly open the file, " +"read it and compile the result. One way to do this is using the :py:mod:`io` " +"module with :c:func:`PyImport_ImportModule`, :c:func:`PyObject_CallMethod`, :" +"c:func:`PyBytes_AsString` and :c:func:`Py_CompileString`, as sketched below. " +"(Declarations and error handling are omitted.) ::" +msgstr "" + +#: whatsnew/3.10.rst:1953 +msgid "" +"For ``FrameObject`` objects, the ``f_lasti`` member now represents a " +"wordcode offset instead of a simple offset into the bytecode string. This " +"means that this number needs to be multiplied by 2 to be used with APIs that " +"expect a byte offset instead (like :c:func:`PyCode_Addr2Line` for example). " +"Notice as well that the ``f_lasti`` member of ``FrameObject`` objects is not " +"considered stable: please use :c:func:`PyFrame_GetLineNumber` instead." +msgstr "" + +#: whatsnew/3.10.rst:1961 msgid "CPython bytecode changes" msgstr "" -#: whatsnew/3.10.rst:1139 +#: whatsnew/3.10.rst:1963 msgid "" -"The ``MAKE_FUNCTION`` instruction accepts tuple of strings as annotations " -"instead of dictionary. (Contributed by Yurii Karabas and Inada Naoki in :" -"issue:`42202`)" +"The ``MAKE_FUNCTION`` instruction now accepts either a dict or a tuple of " +"strings as the function's annotations. (Contributed by Yurii Karabas and " +"Inada Naoki in :issue:`42202`)" msgstr "" -#: whatsnew/3.10.rst:1144 +#: whatsnew/3.10.rst:1968 msgid "Build Changes" msgstr "" -#: whatsnew/3.10.rst:1146 +#: whatsnew/3.10.rst:1970 +msgid "" +":pep:`644`: Python now requires OpenSSL 1.1.1 or newer. OpenSSL 1.0.2 is no " +"longer supported. (Contributed by Christian Heimes in :issue:`43669`.)" +msgstr "" + +#: whatsnew/3.10.rst:1974 msgid "" "The C99 functions :c:func:`snprintf` and :c:func:`vsnprintf` are now " "required to build Python. (Contributed by Victor Stinner in :issue:`36020`.)" msgstr "" -#: whatsnew/3.10.rst:1150 +#: whatsnew/3.10.rst:1978 msgid "" ":mod:`sqlite3` requires SQLite 3.7.15 or higher. (Contributed by Sergey " "Fedoseev and Erlend E. Aasland :issue:`40744` and :issue:`40810`.)" msgstr "" -#: whatsnew/3.10.rst:1153 +#: whatsnew/3.10.rst:1981 msgid "" "The :mod:`atexit` module must now always be built as a built-in module. " "(Contributed by Victor Stinner in :issue:`42639`.)" msgstr "" -#: whatsnew/3.10.rst:1156 +#: whatsnew/3.10.rst:1984 msgid "" -"Added ``--disable-test-modules`` option to the ``configure`` script: don't " -"build nor install test modules. (Contributed by Xavier de Gaye, Thomas " +"Add :option:`--disable-test-modules` option to the ``configure`` script: " +"don't build nor install test modules. (Contributed by Xavier de Gaye, Thomas " "Petazzoni and Peixing Xin in :issue:`27640`.)" msgstr "" -#: whatsnew/3.10.rst:1160 +#: whatsnew/3.10.rst:1988 msgid "" -"Add ``--with-wheel-pkg-dir=PATH`` option to the ``./configure`` script. If " -"specified, the :mod:`ensurepip` module looks for ``setuptools`` and ``pip`` " -"wheel packages in this directory: if both are present, these wheel packages " -"are used instead of ensurepip bundled wheel packages." +"Add :option:`--with-wheel-pkg-dir=PATH option <--with-wheel-pkg-dir>` to the " +"``./configure`` script. If specified, the :mod:`ensurepip` module looks for " +"``setuptools`` and ``pip`` wheel packages in this directory: if both are " +"present, these wheel packages are used instead of ensurepip bundled wheel " +"packages." msgstr "" -#: whatsnew/3.10.rst:1165 +#: whatsnew/3.10.rst:1994 msgid "" "Some Linux distribution packaging policies recommend against bundling " "dependencies. For example, Fedora installs wheel packages in the ``/usr/" @@ -1461,49 +2547,73 @@ msgid "" "_bundled`` package." msgstr "" -#: whatsnew/3.10.rst:1170 +#: whatsnew/3.10.rst:1999 msgid "(Contributed by Victor Stinner in :issue:`42856`.)" msgstr "" -#: whatsnew/3.10.rst:1172 +#: whatsnew/3.10.rst:2001 msgid "" -"Add a new configure ``--without-static-libpython`` option to not build the " -"``libpythonMAJOR.MINOR.a`` static library and not install the ``python.o`` " -"object file." +"Add a new :option:`configure --without-static-libpython option <--without-" +"static-libpython>` to not build the ``libpythonMAJOR.MINOR.a`` static " +"library and not install the ``python.o`` object file." msgstr "" -#: whatsnew/3.10.rst:1176 +#: whatsnew/3.10.rst:2005 msgid "(Contributed by Victor Stinner in :issue:`43103`.)" msgstr "" -#: whatsnew/3.10.rst:1178 +#: whatsnew/3.10.rst:2007 msgid "" "The ``configure`` script now uses the ``pkg-config`` utility, if available, " "to detect the location of Tcl/Tk headers and libraries. As before, those " -"locations can be explicitly specified with the ``--with-tcltk-includes`` and " -"``--with-tcltk-libs`` configuration options. (Contributed by Manolis " -"Stamatogiannakis in :issue:`42603`.)" +"locations can be explicitly specified with the :option:`--with-tcltk-" +"includes` and :option:`--with-tcltk-libs` configuration options. " +"(Contributed by Manolis Stamatogiannakis in :issue:`42603`.)" msgstr "" -#: whatsnew/3.10.rst:1186 +#: whatsnew/3.10.rst:2013 +msgid "" +"Add :option:`--with-openssl-rpath` option to ``configure`` script. The " +"option simplifies building Python with a custom OpenSSL installation, e.g. " +"``./configure --with-openssl=/path/to/openssl --with-openssl-rpath=auto``. " +"(Contributed by Christian Heimes in :issue:`43466`.)" +msgstr "" + +#: whatsnew/3.10.rst:2020 msgid "C API Changes" msgstr "" -#: whatsnew/3.10.rst:1191 +#: whatsnew/3.10.rst:2023 +msgid "PEP 652: Maintaining the Stable ABI" +msgstr "" + +#: whatsnew/3.10.rst:2025 +msgid "" +"The Stable ABI (Application Binary Interface) for extension modules or " +"embedding Python is now explicitly defined. :ref:`stable` describes C API " +"and ABI stability guarantees along with best practices for using the Stable " +"ABI." +msgstr "" + +#: whatsnew/3.10.rst:2030 +msgid "(Contributed by Petr Viktorin in :pep:`652` and :issue:`43795`.)" +msgstr "" + +#: whatsnew/3.10.rst:2035 msgid "" "The result of :c:func:`PyNumber_Index` now always has exact type :class:" "`int`. Previously, the result could have been an instance of a subclass of " "``int``. (Contributed by Serhiy Storchaka in :issue:`40792`.)" msgstr "" -#: whatsnew/3.10.rst:1195 +#: whatsnew/3.10.rst:2039 msgid "" "Add a new :c:member:`~PyConfig.orig_argv` member to the :c:type:`PyConfig` " "structure: the list of the original command line arguments passed to the " "Python executable. (Contributed by Victor Stinner in :issue:`23427`.)" msgstr "" -#: whatsnew/3.10.rst:1200 +#: whatsnew/3.10.rst:2044 msgid "" "The :c:func:`PyDateTime_DATE_GET_TZINFO` and :c:func:" "`PyDateTime_TIME_GET_TZINFO` macros have been added for accessing the " @@ -1511,72 +2621,123 @@ msgid "" "time` objects. (Contributed by Zackery Spytz in :issue:`30155`.)" msgstr "" -#: whatsnew/3.10.rst:1206 +#: whatsnew/3.10.rst:2050 msgid "" "Add a :c:func:`PyCodec_Unregister` function to unregister a codec search " "function. (Contributed by Hai Shi in :issue:`41842`.)" msgstr "" -#: whatsnew/3.10.rst:1210 +#: whatsnew/3.10.rst:2054 msgid "" "The :c:func:`PyIter_Send` function was added to allow sending value into " "iterator without raising ``StopIteration`` exception. (Contributed by " "Vladimir Matveev in :issue:`41756`.)" msgstr "" -#: whatsnew/3.10.rst:1214 +#: whatsnew/3.10.rst:2058 msgid "" -"Added :c:func:`PyUnicode_AsUTF8AndSize` to the limited C API. (Contributed " -"by Alex Gaynor in :issue:`41784`.)" +"Add :c:func:`PyUnicode_AsUTF8AndSize` to the limited C API. (Contributed by " +"Alex Gaynor in :issue:`41784`.)" msgstr "" -#: whatsnew/3.10.rst:1217 +#: whatsnew/3.10.rst:2061 msgid "" -"Added :c:func:`PyModule_AddObjectRef` function: similar to :c:func:" +"Add :c:func:`PyModule_AddObjectRef` function: similar to :c:func:" "`PyModule_AddObject` but don't steal a reference to the value on success. " "(Contributed by Victor Stinner in :issue:`1635741`.)" msgstr "" -#: whatsnew/3.10.rst:1222 +#: whatsnew/3.10.rst:2066 msgid "" -"Added :c:func:`Py_NewRef` and :c:func:`Py_XNewRef` functions to increment " -"the reference count of an object and return the object. (Contributed by " -"Victor Stinner in :issue:`42262`.)" +"Add :c:func:`Py_NewRef` and :c:func:`Py_XNewRef` functions to increment the " +"reference count of an object and return the object. (Contributed by Victor " +"Stinner in :issue:`42262`.)" msgstr "" -#: whatsnew/3.10.rst:1226 +#: whatsnew/3.10.rst:2070 msgid "" "The :c:func:`PyType_FromSpecWithBases` and :c:func:" "`PyType_FromModuleAndSpec` functions now accept a single class as the " "*bases* argument. (Contributed by Serhiy Storchaka in :issue:`42423`.)" msgstr "" -#: whatsnew/3.10.rst:1230 +#: whatsnew/3.10.rst:2074 msgid "" "The :c:func:`PyType_FromModuleAndSpec` function now accepts NULL ``tp_doc`` " "slot. (Contributed by Hai Shi in :issue:`41832`.)" msgstr "" -#: whatsnew/3.10.rst:1234 +#: whatsnew/3.10.rst:2078 msgid "" -"The :c:func:`PyType_GetSlot` function can accept static types. (Contributed " -"by Hai Shi and Petr Viktorin in :issue:`41073`.)" +"The :c:func:`PyType_GetSlot` function can accept :ref:`static types `. (Contributed by Hai Shi and Petr Viktorin in :issue:`41073`.)" msgstr "" -#: whatsnew/3.10.rst:1237 +#: whatsnew/3.10.rst:2082 msgid "" "Add a new :c:func:`PySet_CheckExact` function to the C-API to check if an " "object is an instance of :class:`set` but not an instance of a subtype. " "(Contributed by Pablo Galindo in :issue:`43277`.)" msgstr "" -#: whatsnew/3.10.rst:1241 +#: whatsnew/3.10.rst:2086 msgid "" -"Added :c:func:`PyErr_SetInterruptEx` which allows passing a signal number to " +"Add :c:func:`PyErr_SetInterruptEx` which allows passing a signal number to " "simulate. (Contributed by Antoine Pitrou in :issue:`43356`.)" msgstr "" -#: whatsnew/3.10.rst:1249 +#: whatsnew/3.10.rst:2090 +msgid "" +"The limited C API is now supported if :ref:`Python is built in debug mode " +"` (if the ``Py_DEBUG`` macro is defined). In the limited C API, " +"the :c:func:`Py_INCREF` and :c:func:`Py_DECREF` functions are now " +"implemented as opaque function calls, rather than accessing directly the :c:" +"member:`PyObject.ob_refcnt` member, if Python is built in debug mode and the " +"``Py_LIMITED_API`` macro targets Python 3.10 or newer. It became possible to " +"support the limited C API in debug mode because the :c:type:`PyObject` " +"structure is the same in release and debug mode since Python 3.8 (see :issue:" +"`36465`)." +msgstr "" + +#: whatsnew/3.10.rst:2100 +msgid "" +"The limited C API is still not supported in the :option:`--with-trace-refs` " +"special build (``Py_TRACE_REFS`` macro). (Contributed by Victor Stinner in :" +"issue:`43688`.)" +msgstr "" + +#: whatsnew/3.10.rst:2104 +msgid "" +"Add the :c:func:`Py_Is(x, y) ` function to test if the *x* object is " +"the *y* object, the same as ``x is y`` in Python. Add also the :c:func:" +"`Py_IsNone`, :c:func:`Py_IsTrue`, :c:func:`Py_IsFalse` functions to test if " +"an object is, respectively, the ``None`` singleton, the ``True`` singleton " +"or the ``False`` singleton. (Contributed by Victor Stinner in :issue:" +"`43753`.)" +msgstr "" + +#: whatsnew/3.10.rst:2111 +msgid "" +"Add new functions to control the garbage collector from C code: :c:func:" +"`PyGC_Enable()`, :c:func:`PyGC_Disable()`, :c:func:`PyGC_IsEnabled()`. These " +"functions allow to activate, deactivate and query the state of the garbage " +"collector from C code without having to import the :mod:`gc` module." +msgstr "" + +#: whatsnew/3.10.rst:2118 +msgid "" +"Add a new :c:data:`Py_TPFLAGS_DISALLOW_INSTANTIATION` type flag to disallow " +"creating type instances. (Contributed by Victor Stinner in :issue:`43916`.)" +msgstr "" + +#: whatsnew/3.10.rst:2122 +msgid "" +"Add a new :c:data:`Py_TPFLAGS_IMMUTABLETYPE` type flag for creating " +"immutable type objects: type attributes cannot be set nor deleted. " +"(Contributed by Victor Stinner and Erlend E. Aasland in :issue:`43908`.)" +msgstr "" + +#: whatsnew/3.10.rst:2129 msgid "" "The ``PY_SSIZE_T_CLEAN`` macro must now be defined to use :c:func:" "`PyArg_ParseTuple` and :c:func:`Py_BuildValue` formats which use ``#``: " @@ -1585,7 +2746,7 @@ msgid "" "`353`. (Contributed by Victor Stinner in :issue:`40943`.)" msgstr "" -#: whatsnew/3.10.rst:1256 +#: whatsnew/3.10.rst:2136 msgid "" "Since :c:func:`Py_REFCNT()` is changed to the inline static function, " "``Py_REFCNT(obj) = new_refcnt`` must be replaced with ``Py_SET_REFCNT(obj, " @@ -1593,18 +2754,18 @@ msgid "" "For backward compatibility, this macro can be used::" msgstr "" -#: whatsnew/3.10.rst:1265 +#: whatsnew/3.10.rst:2145 msgid "(Contributed by Victor Stinner in :issue:`39573`.)" msgstr "" -#: whatsnew/3.10.rst:1267 +#: whatsnew/3.10.rst:2147 msgid "" "Calling :c:func:`PyDict_GetItem` without :term:`GIL` held had been allowed " "for historical reason. It is no longer allowed. (Contributed by Victor " "Stinner in :issue:`40839`.)" msgstr "" -#: whatsnew/3.10.rst:1271 +#: whatsnew/3.10.rst:2151 msgid "" "``PyUnicode_FromUnicode(NULL, size)`` and " "``PyUnicode_FromStringAndSize(NULL, size)`` raise ``DeprecationWarning`` " @@ -1612,14 +2773,14 @@ msgid "" "data. (Contributed by Inada Naoki in :issue:`36346`.)" msgstr "" -#: whatsnew/3.10.rst:1276 +#: whatsnew/3.10.rst:2156 msgid "" "The private ``_PyUnicode_Name_CAPI`` structure of the PyCapsule API " "``unicodedata.ucnhash_CAPI`` has been moved to the internal C API. " "(Contributed by Victor Stinner in :issue:`42157`.)" msgstr "" -#: whatsnew/3.10.rst:1280 +#: whatsnew/3.10.rst:2160 msgid "" ":c:func:`Py_GetPath`, :c:func:`Py_GetPrefix`, :c:func:`Py_GetExecPrefix`, :c:" "func:`Py_GetProgramFullPath`, :c:func:`Py_GetPythonHome` and :c:func:" @@ -1630,7 +2791,7 @@ msgid "" "issue:`42260`.)" msgstr "" -#: whatsnew/3.10.rst:1288 +#: whatsnew/3.10.rst:2168 msgid "" ":c:func:`PyList_SET_ITEM`, :c:func:`PyTuple_SET_ITEM` and :c:func:" "`PyCell_SET` macros can no longer be used as l-value or r-value. For " @@ -1640,7 +2801,7 @@ msgid "" "and Victor Stinner in :issue:`30459`.)" msgstr "" -#: whatsnew/3.10.rst:1295 +#: whatsnew/3.10.rst:2175 msgid "" "The non-limited API files ``odictobject.h``, ``parser_interface.h``, " "``picklebufobject.h``, ``pyarena.h``, ``pyctype.h``, ``pydebug.h``, ``pyfpe." @@ -1651,87 +2812,94 @@ msgid "" "Nicholas Sim in :issue:`35134`)" msgstr "" -#: whatsnew/3.10.rst:1306 +#: whatsnew/3.10.rst:2183 msgid "" -"The ``PyUnicode_InternImmortal()`` function is now deprecated and will be " -"removed in Python 3.12: use :c:func:`PyUnicode_InternInPlace` instead. " -"(Contributed by Victor Stinner in :issue:`41692`.)" +"Use the :c:data:`Py_TPFLAGS_IMMUTABLETYPE` type flag to create immutable " +"type objects. Do not rely on :c:data:`Py_TPFLAGS_HEAPTYPE` to decide if a " +"type object is mutable or not; check if :c:data:`Py_TPFLAGS_IMMUTABLETYPE` " +"is set instead. (Contributed by Victor Stinner and Erlend E. Aasland in :" +"issue:`43908`.)" msgstr "" -#: whatsnew/3.10.rst:1314 +#: whatsnew/3.10.rst:2189 msgid "" -"``PyObject_AsCharBuffer()``, ``PyObject_AsReadBuffer()``, " -"``PyObject_CheckReadBuffer()``, and ``PyObject_AsWriteBuffer()`` are " -"removed. Please migrate to new buffer protocol; :c:func:`PyObject_GetBuffer` " -"and :c:func:`PyBuffer_Release`. (Contributed by Inada Naoki in :issue:" -"`41103`.)" +"The undocumented function ``Py_FrozenMain`` has been removed from the " +"limited API. The function is mainly useful for custom builds of Python. " +"(Contributed by Petr Viktorin in :issue:`26241`)" +msgstr "" + +#: whatsnew/3.10.rst:2196 +msgid "" +"The ``PyUnicode_InternImmortal()`` function is now deprecated and will be " +"removed in Python 3.12: use :c:func:`PyUnicode_InternInPlace` instead. " +"(Contributed by Victor Stinner in :issue:`41692`.)" msgstr "" -#: whatsnew/3.10.rst:1319 +#: whatsnew/3.10.rst:2204 msgid "" "Removed ``Py_UNICODE_str*`` functions manipulating ``Py_UNICODE*`` strings. " "(Contributed by Inada Naoki in :issue:`41123`.)" msgstr "" -#: whatsnew/3.10.rst:1322 +#: whatsnew/3.10.rst:2207 msgid "" "``Py_UNICODE_strlen``: use :c:func:`PyUnicode_GetLength` or :c:macro:" "`PyUnicode_GET_LENGTH`" msgstr "" -#: whatsnew/3.10.rst:1324 +#: whatsnew/3.10.rst:2209 msgid "" "``Py_UNICODE_strcat``: use :c:func:`PyUnicode_CopyCharacters` or :c:func:" "`PyUnicode_FromFormat`" msgstr "" -#: whatsnew/3.10.rst:1326 +#: whatsnew/3.10.rst:2211 msgid "" "``Py_UNICODE_strcpy``, ``Py_UNICODE_strncpy``: use :c:func:" "`PyUnicode_CopyCharacters` or :c:func:`PyUnicode_Substring`" msgstr "" -#: whatsnew/3.10.rst:1328 +#: whatsnew/3.10.rst:2213 msgid "``Py_UNICODE_strcmp``: use :c:func:`PyUnicode_Compare`" msgstr "" -#: whatsnew/3.10.rst:1329 +#: whatsnew/3.10.rst:2214 msgid "``Py_UNICODE_strncmp``: use :c:func:`PyUnicode_Tailmatch`" msgstr "" -#: whatsnew/3.10.rst:1330 +#: whatsnew/3.10.rst:2215 msgid "" "``Py_UNICODE_strchr``, ``Py_UNICODE_strrchr``: use :c:func:" "`PyUnicode_FindChar`" msgstr "" -#: whatsnew/3.10.rst:1333 +#: whatsnew/3.10.rst:2218 msgid "" "Removed ``PyUnicode_GetMax()``. Please migrate to new (:pep:`393`) APIs. " "(Contributed by Inada Naoki in :issue:`41103`.)" msgstr "" -#: whatsnew/3.10.rst:1336 +#: whatsnew/3.10.rst:2221 msgid "" "Removed ``PyLong_FromUnicode()``. Please migrate to :c:func:" "`PyLong_FromUnicodeObject`. (Contributed by Inada Naoki in :issue:`41103`.)" msgstr "" -#: whatsnew/3.10.rst:1339 +#: whatsnew/3.10.rst:2224 msgid "" "Removed ``PyUnicode_AsUnicodeCopy()``. Please use :c:func:" "`PyUnicode_AsUCS4Copy` or :c:func:`PyUnicode_AsWideCharString` (Contributed " "by Inada Naoki in :issue:`41103`.)" msgstr "" -#: whatsnew/3.10.rst:1343 +#: whatsnew/3.10.rst:2228 msgid "" "Removed ``_Py_CheckRecursionLimit`` variable: it has been replaced by " "``ceval.recursion_limit`` of the :c:type:`PyInterpreterState` structure. " "(Contributed by Victor Stinner in :issue:`41834`.)" msgstr "" -#: whatsnew/3.10.rst:1347 +#: whatsnew/3.10.rst:2232 msgid "" "Removed undocumented macros ``Py_ALLOW_RECURSION`` and " "``Py_END_ALLOW_RECURSION`` and the ``recursion_critical`` field of the :c:" @@ -1739,17 +2907,156 @@ msgid "" "issue:`41936`.)" msgstr "" -#: whatsnew/3.10.rst:1352 +#: whatsnew/3.10.rst:2237 msgid "" "Removed the undocumented ``PyOS_InitInterrupts()`` function. Initializing " "Python already implicitly installs signal handlers: see :c:member:`PyConfig." "install_signal_handlers`. (Contributed by Victor Stinner in :issue:`41713`.)" msgstr "" -#: whatsnew/3.10.rst:1357 +#: whatsnew/3.10.rst:2242 msgid "" "Remove the ``PyAST_Validate()`` function. It is no longer possible to build " "a AST object (``mod_ty`` type) with the public C API. The function was " "already excluded from the limited C API (:pep:`384`). (Contributed by Victor " "Stinner in :issue:`43244`.)" msgstr "" + +#: whatsnew/3.10.rst:2247 +msgid "Remove the ``symtable.h`` header file and the undocumented functions:" +msgstr "" + +#: whatsnew/3.10.rst:2249 +msgid "``PyST_GetScope()``" +msgstr "" + +#: whatsnew/3.10.rst:2250 +msgid "``PySymtable_Build()``" +msgstr "" + +#: whatsnew/3.10.rst:2251 +msgid "``PySymtable_BuildObject()``" +msgstr "" + +#: whatsnew/3.10.rst:2252 +msgid "``PySymtable_Free()``" +msgstr "" + +#: whatsnew/3.10.rst:2253 +msgid "``Py_SymtableString()``" +msgstr "" + +#: whatsnew/3.10.rst:2254 +msgid "``Py_SymtableStringObject()``" +msgstr "" + +#: whatsnew/3.10.rst:2256 +msgid "" +"The ``Py_SymtableString()`` function was part the stable ABI by mistake but " +"it could not be used, because the ``symtable.h`` header file was excluded " +"from the limited C API." +msgstr "" + +#: whatsnew/3.10.rst:2260 +msgid "" +"Use Python :mod:`symtable` module instead. (Contributed by Victor Stinner " +"in :issue:`43244`.)" +msgstr "" + +#: whatsnew/3.10.rst:2263 +msgid "" +"Remove :c:func:`PyOS_ReadlineFunctionPointer` from the limited C API headers " +"and from ``python3.dll``, the library that provides the stable ABI on " +"Windows. Since the function takes a ``FILE*`` argument, its ABI stability " +"cannot be guaranteed. (Contributed by Petr Viktorin in :issue:`43868`.)" +msgstr "" + +#: whatsnew/3.10.rst:2269 +msgid "" +"Remove ``ast.h``, ``asdl.h``, and ``Python-ast.h`` header files. These " +"functions were undocumented and excluded from the limited C API. Most names " +"defined by these header files were not prefixed by ``Py`` and so could " +"create names conflicts. For example, ``Python-ast.h`` defined a ``Yield`` " +"macro which was conflict with the ``Yield`` name used by the Windows " +"```` header. Use the Python :mod:`ast` module instead. " +"(Contributed by Victor Stinner in :issue:`43244`.)" +msgstr "" + +#: whatsnew/3.10.rst:2277 +msgid "" +"Remove the compiler and parser functions using ``struct _mod`` type, because " +"the public AST C API was removed:" +msgstr "" + +#: whatsnew/3.10.rst:2280 +msgid "``PyAST_Compile()``" +msgstr "" + +#: whatsnew/3.10.rst:2281 +msgid "``PyAST_CompileEx()``" +msgstr "" + +#: whatsnew/3.10.rst:2282 +msgid "``PyAST_CompileObject()``" +msgstr "" + +#: whatsnew/3.10.rst:2283 +msgid "``PyFuture_FromAST()``" +msgstr "" + +#: whatsnew/3.10.rst:2284 +msgid "``PyFuture_FromASTObject()``" +msgstr "" + +#: whatsnew/3.10.rst:2285 +msgid "``PyParser_ASTFromFile()``" +msgstr "" + +#: whatsnew/3.10.rst:2286 +msgid "``PyParser_ASTFromFileObject()``" +msgstr "" + +#: whatsnew/3.10.rst:2287 +msgid "``PyParser_ASTFromFilename()``" +msgstr "" + +#: whatsnew/3.10.rst:2288 +msgid "``PyParser_ASTFromString()``" +msgstr "" + +#: whatsnew/3.10.rst:2289 +msgid "``PyParser_ASTFromStringObject()``" +msgstr "" + +#: whatsnew/3.10.rst:2291 +msgid "" +"These functions were undocumented and excluded from the limited C API. " +"(Contributed by Victor Stinner in :issue:`43244`.)" +msgstr "" + +#: whatsnew/3.10.rst:2294 +msgid "Remove the ``pyarena.h`` header file with functions:" +msgstr "" + +#: whatsnew/3.10.rst:2296 +msgid "``PyArena_New()``" +msgstr "" + +#: whatsnew/3.10.rst:2297 +msgid "``PyArena_Free()``" +msgstr "" + +#: whatsnew/3.10.rst:2298 +msgid "``PyArena_Malloc()``" +msgstr "" + +#: whatsnew/3.10.rst:2299 +msgid "``PyArena_AddPyObject()``" +msgstr "" + +#: whatsnew/3.10.rst:2301 +msgid "" +"These functions were undocumented, excluded from the limited C API, and were " +"only used internally by the compiler. (Contributed by Victor Stinner in :" +"issue:`43244`.)" +msgstr "" diff --git a/whatsnew/3.2.po b/whatsnew/3.2.po index 612786c95..7c843d03b 100644 --- a/whatsnew/3.2.po +++ b/whatsnew/3.2.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-07-03 11:14+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -2164,7 +2164,7 @@ msgstr "" #: whatsnew/3.2.rst:1924 msgid "" -"The :mod:`pydoc` module now provides a much-improved Web server interface, " +"The :mod:`pydoc` module now provides a much-improved web server interface, " "as well as a new command-line option ``-b`` to automatically open a browser " "window to display that server:" msgstr "" diff --git a/whatsnew/3.4.po b/whatsnew/3.4.po index 22b5efe54..54aedba7c 100644 --- a/whatsnew/3.4.po +++ b/whatsnew/3.4.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-10-01 16:00+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -657,7 +657,7 @@ msgid "" ":mod:`ensurepip` includes a bundled copy of ``pip``, up-to-date as of the " "first release candidate of the release of CPython with which it ships (this " "applies to both maintenance releases and feature releases). ``ensurepip`` " -"does not access the internet. If the installation has Internet access, " +"does not access the internet. If the installation has internet access, " "after ``ensurepip`` is run the bundled ``pip`` can be used to upgrade " "``pip`` to a more recent release than the bundled one. (Note that such an " "upgraded version of ``pip`` is considered to be a separately installed " diff --git a/whatsnew/3.6.po b/whatsnew/3.6.po index a0be6417d..7d3c28541 100644 --- a/whatsnew/3.6.po +++ b/whatsnew/3.6.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-24 17:33+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-10-13 17:48+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -822,8 +822,8 @@ msgstr "" #: whatsnew/3.6.rst:724 msgid "" "This can be used to instrument running interpreters in production, without " -"the need to recompile specific debug builds or providing application-" -"specific profiling/debugging code." +"the need to recompile specific :ref:`debug builds ` or " +"providing application-specific profiling/debugging code." msgstr "" #: whatsnew/3.6.rst:728 diff --git a/whatsnew/3.7.po b/whatsnew/3.7.po index feb18fea7..a3bedefe9 100644 --- a/whatsnew/3.7.po +++ b/whatsnew/3.7.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-24 17:33+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2018-08-03 23:47+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -323,24 +323,25 @@ msgstr "" #: whatsnew/3.7.rst:234 msgid "" "The new :option:`-X` ``utf8`` command line option and :envvar:`PYTHONUTF8` " -"environment variable can be used to enable the CPython *UTF-8 mode*." +"environment variable can be used to enable the :ref:`Python UTF-8 Mode `." msgstr "" -#: whatsnew/3.7.rst:237 +#: whatsnew/3.7.rst:238 msgid "" "When in UTF-8 mode, CPython ignores the locale settings, and uses the UTF-8 " "encoding by default. The error handlers for :data:`sys.stdin` and :data:" "`sys.stdout` streams are set to ``surrogateescape``." msgstr "" -#: whatsnew/3.7.rst:241 +#: whatsnew/3.7.rst:242 msgid "" "The forced UTF-8 mode can be used to change the text handling behavior in an " "embedded Python interpreter without changing the locale settings of an " "embedding application." msgstr "" -#: whatsnew/3.7.rst:245 +#: whatsnew/3.7.rst:246 msgid "" "While :pep:`540`'s UTF-8 mode has the benefit of working regardless of which " "locales are available on the running system, it has the downside of having " @@ -350,7 +351,7 @@ msgid "" "with such components, Python 3.7 also implements :ref:`whatsnew37-pep540`)." msgstr "" -#: whatsnew/3.7.rst:252 +#: whatsnew/3.7.rst:253 msgid "" "The UTF-8 mode is enabled by default when the locale is ``C`` or ``POSIX``, " "and the :pep:`538` locale coercion feature fails to change it to a UTF-8 " @@ -358,25 +359,25 @@ msgid "" "being set, ``LC_ALL`` being set, or the lack of a suitable target locale)." msgstr "" -#: whatsnew/3.7.rst:259 +#: whatsnew/3.7.rst:260 msgid ":pep:`540` -- Add a new UTF-8 mode" msgstr "" -#: whatsnew/3.7.rst:362 +#: whatsnew/3.7.rst:363 msgid "PEP written and implemented by Victor Stinner" msgstr "" -#: whatsnew/3.7.rst:266 +#: whatsnew/3.7.rst:267 msgid "PEP 553: Built-in ``breakpoint()``" msgstr "" -#: whatsnew/3.7.rst:268 +#: whatsnew/3.7.rst:269 msgid "" "Python 3.7 includes the new built-in :func:`breakpoint` function as an easy " "and consistent way to enter the Python debugger." msgstr "" -#: whatsnew/3.7.rst:271 +#: whatsnew/3.7.rst:272 msgid "" "Built-in ``breakpoint()`` calls :func:`sys.breakpointhook`. By default, the " "latter imports :mod:`pdb` and then calls ``pdb.set_trace()``, but by binding " @@ -386,19 +387,19 @@ msgid "" "Set ``PYTHONBREAKPOINT=0`` to completely disable built-in ``breakpoint()``." msgstr "" -#: whatsnew/3.7.rst:281 +#: whatsnew/3.7.rst:282 msgid ":pep:`553` -- Built-in breakpoint()" msgstr "" -#: whatsnew/3.7.rst:282 +#: whatsnew/3.7.rst:283 msgid "PEP written and implemented by Barry Warsaw" msgstr "" -#: whatsnew/3.7.rst:288 +#: whatsnew/3.7.rst:289 msgid "PEP 539: New C API for Thread-Local Storage" msgstr "" -#: whatsnew/3.7.rst:290 +#: whatsnew/3.7.rst:291 msgid "" "While Python provides a C API for thread-local storage support; the " "existing :ref:`Thread Local Storage (TLS) API ` " @@ -407,7 +408,7 @@ msgid "" "neither POSIX-compliant, nor portable in any practical sense." msgstr "" -#: whatsnew/3.7.rst:296 +#: whatsnew/3.7.rst:297 msgid "" ":pep:`539` changes this by providing a new :ref:`Thread Specific Storage " "(TSS) API ` to CPython which supersedes use of " @@ -419,7 +420,7 @@ msgid "" "cannot be safely cast to :c:type:`int`." msgstr "" -#: whatsnew/3.7.rst:305 +#: whatsnew/3.7.rst:306 msgid "" "Note that on platforms where the native TLS key is defined in a way that " "cannot be safely cast to :c:type:`int`, all functions of the existing TLS " @@ -428,45 +429,45 @@ msgid "" "reliably, and that no effort will be made to add such support." msgstr "" -#: whatsnew/3.7.rst:313 +#: whatsnew/3.7.rst:314 msgid ":pep:`539` -- A New C-API for Thread-Local Storage in CPython" msgstr "" -#: whatsnew/3.7.rst:314 +#: whatsnew/3.7.rst:315 msgid "PEP written by Erik M. Bray; implementation by Masayuki Yamamoto." msgstr "" -#: whatsnew/3.7.rst:320 +#: whatsnew/3.7.rst:321 msgid "PEP 562: Customization of Access to Module Attributes" msgstr "" -#: whatsnew/3.7.rst:322 +#: whatsnew/3.7.rst:323 msgid "" "Python 3.7 allows defining :meth:`__getattr__` on modules and will call it " "whenever a module attribute is otherwise not found. Defining :meth:" "`__dir__` on modules is now also allowed." msgstr "" -#: whatsnew/3.7.rst:326 +#: whatsnew/3.7.rst:327 msgid "" "A typical example of where this may be useful is module attribute " "deprecation and lazy loading." msgstr "" -#: whatsnew/3.7.rst:331 +#: whatsnew/3.7.rst:332 #, fuzzy msgid ":pep:`562` -- Module ``__getattr__`` and ``__dir__``" msgstr ":pep:`562` — ``__getattr__`` et ``__dir__`` pour un module" -#: whatsnew/3.7.rst:421 +#: whatsnew/3.7.rst:422 msgid "PEP written and implemented by Ivan Levkivskyi" msgstr "" -#: whatsnew/3.7.rst:338 +#: whatsnew/3.7.rst:339 msgid "PEP 564: New Time Functions With Nanosecond Resolution" msgstr "" -#: whatsnew/3.7.rst:340 +#: whatsnew/3.7.rst:341 msgid "" "The resolution of clocks in modern systems can exceed the limited precision " "of a floating point number returned by the :func:`time.time` function and " @@ -475,35 +476,35 @@ msgid "" "module:" msgstr "" -#: whatsnew/3.7.rst:1446 +#: whatsnew/3.7.rst:1447 msgid ":func:`time.clock_gettime_ns`" msgstr "" -#: whatsnew/3.7.rst:1447 +#: whatsnew/3.7.rst:1448 msgid ":func:`time.clock_settime_ns`" msgstr "" -#: whatsnew/3.7.rst:1448 +#: whatsnew/3.7.rst:1449 msgid ":func:`time.monotonic_ns`" msgstr "" -#: whatsnew/3.7.rst:1449 +#: whatsnew/3.7.rst:1450 msgid ":func:`time.perf_counter_ns`" msgstr "" -#: whatsnew/3.7.rst:1450 +#: whatsnew/3.7.rst:1451 msgid ":func:`time.process_time_ns`" msgstr "" -#: whatsnew/3.7.rst:1451 +#: whatsnew/3.7.rst:1452 msgid ":func:`time.time_ns`" msgstr "" -#: whatsnew/3.7.rst:353 +#: whatsnew/3.7.rst:354 msgid "The new functions return the number of nanoseconds as an integer value." msgstr "" -#: whatsnew/3.7.rst:355 +#: whatsnew/3.7.rst:356 msgid "" "`Measurements `_ show that on Linux and Windows the resolution of :" @@ -511,15 +512,15 @@ msgid "" "time`." msgstr "" -#: whatsnew/3.7.rst:361 +#: whatsnew/3.7.rst:362 msgid ":pep:`564` -- Add new time functions with nanosecond resolution" msgstr "" -#: whatsnew/3.7.rst:368 +#: whatsnew/3.7.rst:369 msgid "PEP 565: Show DeprecationWarning in ``__main__``" msgstr "" -#: whatsnew/3.7.rst:370 +#: whatsnew/3.7.rst:371 msgid "" "The default handling of :exc:`DeprecationWarning` has been changed such that " "these warnings are once more shown by default, but only when the code " @@ -530,20 +531,20 @@ msgid "" "library and framework modules will continue to be hidden by default." msgstr "" -#: whatsnew/3.7.rst:378 +#: whatsnew/3.7.rst:379 msgid "" "As a result of this change, the standard library now allows developers to " "choose between three different deprecation warning behaviours:" msgstr "" -#: whatsnew/3.7.rst:381 +#: whatsnew/3.7.rst:382 msgid "" ":exc:`FutureWarning`: always displayed by default, recommended for warnings " "intended to be seen by application end users (e.g. for deprecated " "application configuration settings)." msgstr "" -#: whatsnew/3.7.rst:384 +#: whatsnew/3.7.rst:385 msgid "" ":exc:`DeprecationWarning`: displayed by default only in :mod:`__main__` and " "when running tests, recommended for warnings intended to be seen by other " @@ -551,14 +552,14 @@ msgid "" "an error." msgstr "" -#: whatsnew/3.7.rst:388 +#: whatsnew/3.7.rst:389 msgid "" ":exc:`PendingDeprecationWarning`: displayed by default only when running " "tests, intended for cases where a future version upgrade will change the " "warning category to :exc:`DeprecationWarning` or :exc:`FutureWarning`." msgstr "" -#: whatsnew/3.7.rst:392 +#: whatsnew/3.7.rst:393 msgid "" "Previously both :exc:`DeprecationWarning` and :exc:" "`PendingDeprecationWarning` were only visible when running tests, which " @@ -566,19 +567,19 @@ msgid "" "interactively could be surprised by breaking changes in the APIs they used." msgstr "" -#: whatsnew/3.7.rst:399 +#: whatsnew/3.7.rst:400 msgid ":pep:`565` -- Show DeprecationWarning in ``__main__``" msgstr "" -#: whatsnew/3.7.rst:400 +#: whatsnew/3.7.rst:401 msgid "PEP written and implemented by Nick Coghlan" msgstr "" -#: whatsnew/3.7.rst:406 +#: whatsnew/3.7.rst:407 msgid "PEP 560: Core Support for ``typing`` module and Generic Types" msgstr "" -#: whatsnew/3.7.rst:408 +#: whatsnew/3.7.rst:409 msgid "" "Initially :pep:`484` was designed in such way that it would not introduce " "*any* changes to the core CPython interpreter. Now type hints and the :mod:" @@ -591,17 +592,17 @@ msgid "" "module are fixed." msgstr "" -#: whatsnew/3.7.rst:420 +#: whatsnew/3.7.rst:421 #, fuzzy msgid ":pep:`560` -- Core support for typing module and generic types" msgstr "" ":pep:`560` — Gestion de base pour les types modules et les types génériques" -#: whatsnew/3.7.rst:427 +#: whatsnew/3.7.rst:428 msgid "PEP 552: Hash-based .pyc Files" msgstr "" -#: whatsnew/3.7.rst:429 +#: whatsnew/3.7.rst:430 msgid "" "Python has traditionally checked the up-to-dateness of bytecode cache files " "(i.e., ``.pyc`` files) by comparing the source metadata (last-modified " @@ -613,7 +614,7 @@ msgid "" "reproducible-builds.org/>`_ and content-based build systems." msgstr "" -#: whatsnew/3.7.rst:438 +#: whatsnew/3.7.rst:439 msgid "" ":pep:`552` extends the pyc format to allow the hash of the source file to be " "used for invalidation instead of the source timestamp. Such ``.pyc`` files " @@ -623,7 +624,7 @@ msgid "" "`compileall`." msgstr "" -#: whatsnew/3.7.rst:444 +#: whatsnew/3.7.rst:445 msgid "" "Hash-based ``.pyc`` files come in two variants: checked and unchecked. " "Python validates checked hash-based ``.pyc`` files against the corresponding " @@ -633,59 +634,59 @@ msgid "" "is responsible for keeping ``.pyc`` files up-to-date." msgstr "" -#: whatsnew/3.7.rst:451 +#: whatsnew/3.7.rst:452 msgid "See :ref:`pyc-invalidation` for more information." msgstr "" -#: whatsnew/3.7.rst:455 +#: whatsnew/3.7.rst:456 msgid ":pep:`552` -- Deterministic pycs" msgstr "" -#: whatsnew/3.7.rst:456 +#: whatsnew/3.7.rst:457 msgid "PEP written and implemented by Benjamin Peterson" msgstr "" -#: whatsnew/3.7.rst:462 +#: whatsnew/3.7.rst:463 msgid "PEP 545: Python Documentation Translations" msgstr "" -#: whatsnew/3.7.rst:464 +#: whatsnew/3.7.rst:465 msgid "" ":pep:`545` describes the process of creating and maintaining Python " "documentation translations." msgstr "" -#: whatsnew/3.7.rst:467 +#: whatsnew/3.7.rst:468 msgid "Three new translations have been added:" msgstr "" -#: whatsnew/3.7.rst:469 +#: whatsnew/3.7.rst:470 msgid "Japanese: https://docs.python.org/ja/" msgstr "" -#: whatsnew/3.7.rst:470 +#: whatsnew/3.7.rst:471 msgid "French: https://docs.python.org/fr/" msgstr "" -#: whatsnew/3.7.rst:471 +#: whatsnew/3.7.rst:472 msgid "Korean: https://docs.python.org/ko/" msgstr "" -#: whatsnew/3.7.rst:476 +#: whatsnew/3.7.rst:477 msgid ":pep:`545` -- Python Documentation Translations" msgstr "" -#: whatsnew/3.7.rst:476 +#: whatsnew/3.7.rst:477 msgid "" "PEP written and implemented by Julien Palard, Inada Naoki, and Victor " "Stinner." msgstr "" -#: whatsnew/3.7.rst:483 +#: whatsnew/3.7.rst:484 msgid "Python Development Mode (-X dev)" msgstr "" -#: whatsnew/3.7.rst:485 +#: whatsnew/3.7.rst:486 msgid "" "The new :option:`-X` ``dev`` command line option or the new :envvar:" "`PYTHONDEVMODE` environment variable can be used to enable :ref:`Python " @@ -695,11 +696,11 @@ msgid "" "description." msgstr "" -#: whatsnew/3.7.rst:494 +#: whatsnew/3.7.rst:495 msgid "Other Language Changes" msgstr "" -#: whatsnew/3.7.rst:496 +#: whatsnew/3.7.rst:497 msgid "" "An :keyword:`await` expression and comprehensions containing an :keyword:" "`async for` clause were illegal in the expressions in :ref:`formatted string " @@ -707,20 +708,20 @@ msgid "" "3.7 this restriction was lifted." msgstr "" -#: whatsnew/3.7.rst:501 +#: whatsnew/3.7.rst:502 msgid "" "More than 255 arguments can now be passed to a function, and a function can " "now have more than 255 parameters. (Contributed by Serhiy Storchaka in :" "issue:`12844` and :issue:`18896`.)" msgstr "" -#: whatsnew/3.7.rst:505 +#: whatsnew/3.7.rst:506 msgid "" ":meth:`bytes.fromhex` and :meth:`bytearray.fromhex` now ignore all ASCII " "whitespace, not only spaces. (Contributed by Robert Xiao in :issue:`28927`.)" msgstr "" -#: whatsnew/3.7.rst:508 +#: whatsnew/3.7.rst:509 msgid "" ":class:`str`, :class:`bytes`, and :class:`bytearray` gained support for the " "new :meth:`isascii() ` method, which can be used to test if a " @@ -728,27 +729,27 @@ msgid "" "Naoki in :issue:`32677`.)" msgstr "" -#: whatsnew/3.7.rst:513 +#: whatsnew/3.7.rst:514 msgid "" ":exc:`ImportError` now displays module name and module ``__file__`` path " "when ``from ... import ...`` fails. (Contributed by Matthias Bussonnier in :" "issue:`29546`.)" msgstr "" -#: whatsnew/3.7.rst:517 +#: whatsnew/3.7.rst:518 msgid "" "Circular imports involving absolute imports with binding a submodule to a " "name are now supported. (Contributed by Serhiy Storchaka in :issue:`30024`.)" msgstr "" -#: whatsnew/3.7.rst:521 +#: whatsnew/3.7.rst:522 msgid "" "``object.__format__(x, '')`` is now equivalent to ``str(x)`` rather than " "``format(str(self), '')``. (Contributed by Serhiy Storchaka in :issue:" "`28974`.)" msgstr "" -#: whatsnew/3.7.rst:525 +#: whatsnew/3.7.rst:526 msgid "" "In order to better support dynamic creation of stack traces, :class:`types." "TracebackType` can now be instantiated from Python code, and the ``tb_next`` " @@ -756,7 +757,7 @@ msgid "" "(Contributed by Nathaniel J. Smith in :issue:`30579`.)" msgstr "" -#: whatsnew/3.7.rst:531 +#: whatsnew/3.7.rst:532 msgid "" "When using the :option:`-m` switch, ``sys.path[0]`` is now eagerly expanded " "to the full starting directory path, rather than being left as the empty " @@ -764,7 +765,7 @@ msgid "" "time when an import occurs) (Contributed by Nick Coghlan in :issue:`33053`.)" msgstr "" -#: whatsnew/3.7.rst:537 +#: whatsnew/3.7.rst:538 msgid "" "The new :option:`-X` ``importtime`` option or the :envvar:" "`PYTHONPROFILEIMPORTTIME` environment variable can be used to show the " @@ -772,15 +773,15 @@ msgid "" "`31415`.)" msgstr "" -#: whatsnew/3.7.rst:544 +#: whatsnew/3.7.rst:545 msgid "New Modules" msgstr "" -#: whatsnew/3.7.rst:549 +#: whatsnew/3.7.rst:550 msgid "contextvars" msgstr "" -#: whatsnew/3.7.rst:551 +#: whatsnew/3.7.rst:552 msgid "" "The new :mod:`contextvars` module and a set of :ref:`new C APIs " "` introduce support for *context variables*. Context " @@ -788,7 +789,7 @@ msgid "" "context variables support asynchronous code correctly." msgstr "" -#: whatsnew/3.7.rst:557 +#: whatsnew/3.7.rst:558 msgid "" "The :mod:`asyncio` and :mod:`decimal` modules have been updated to use and " "support context variables out of the box. Particularly the active decimal " @@ -796,19 +797,19 @@ msgid "" "to work with the correct context in asynchronous code." msgstr "" -#: whatsnew/3.7.rst:564 +#: whatsnew/3.7.rst:565 msgid ":pep:`567` -- Context Variables" msgstr "" -#: whatsnew/3.7.rst:565 +#: whatsnew/3.7.rst:566 msgid "PEP written and implemented by Yury Selivanov" msgstr "" -#: whatsnew/3.7.rst:571 +#: whatsnew/3.7.rst:572 msgid "dataclasses" msgstr "" -#: whatsnew/3.7.rst:573 +#: whatsnew/3.7.rst:574 msgid "" "The new :func:`~dataclasses.dataclass` decorator provides a way to declare " "*data classes*. A data class describes its attributes using class variable " @@ -817,23 +818,23 @@ msgid "" "generated automatically." msgstr "" -#: whatsnew/3.7.rst:579 +#: whatsnew/3.7.rst:580 msgid "Example::" msgstr "Exemple ::" -#: whatsnew/3.7.rst:592 +#: whatsnew/3.7.rst:593 msgid ":pep:`557` -- Data Classes" msgstr "" -#: whatsnew/3.7.rst:593 +#: whatsnew/3.7.rst:594 msgid "PEP written and implemented by Eric V. Smith" msgstr "" -#: whatsnew/3.7.rst:599 +#: whatsnew/3.7.rst:600 msgid "importlib.resources" msgstr "" -#: whatsnew/3.7.rst:601 +#: whatsnew/3.7.rst:602 msgid "" "The new :mod:`importlib.resources` module provides several new APIs and one " "new ABC for access to, opening, and reading *resources* inside packages. " @@ -844,43 +845,43 @@ msgid "" "loaders and zip file loaders both support this." msgstr "" -#: whatsnew/3.7.rst:609 +#: whatsnew/3.7.rst:610 msgid "Contributed by Barry Warsaw and Brett Cannon in :issue:`32248`." msgstr "" -#: whatsnew/3.7.rst:613 +#: whatsnew/3.7.rst:614 msgid "" "`importlib_resources `_ -- a PyPI backport for earlier Python versions." msgstr "" -#: whatsnew/3.7.rst:618 +#: whatsnew/3.7.rst:619 msgid "Improved Modules" msgstr "" -#: whatsnew/3.7.rst:622 +#: whatsnew/3.7.rst:623 msgid "argparse" msgstr "argparse" -#: whatsnew/3.7.rst:624 +#: whatsnew/3.7.rst:625 msgid "" "The new :meth:`ArgumentParser.parse_intermixed_args() ` method allows intermixing options and " "positional arguments. (Contributed by paul.j3 in :issue:`14191`.)" msgstr "" -#: whatsnew/3.7.rst:1950 +#: whatsnew/3.7.rst:1951 msgid "asyncio" msgstr "asyncio" -#: whatsnew/3.7.rst:635 +#: whatsnew/3.7.rst:636 msgid "" "The :mod:`asyncio` module has received many new features, usability and :ref:" "`performance improvements `. Notable changes " "include:" msgstr "" -#: whatsnew/3.7.rst:639 +#: whatsnew/3.7.rst:640 msgid "" "The new :term:`provisional ` :func:`asyncio.run` function " "can be used to run a coroutine from synchronous code by automatically " @@ -888,7 +889,7 @@ msgid "" "issue:`32314`.)" msgstr "" -#: whatsnew/3.7.rst:644 +#: whatsnew/3.7.rst:645 msgid "" "asyncio gained support for :mod:`contextvars`. :meth:`loop.call_soon() " "`, :meth:`loop.call_soon_threadsafe() ` method can be used " "to upgrade an existing connection to TLS. (Contributed by Yury Selivanov in :" "issue:`23749`.)" msgstr "" -#: whatsnew/3.7.rst:663 +#: whatsnew/3.7.rst:664 msgid "" "The new :meth:`loop.sock_recv_into() ` method " "allows reading data from a socket directly into a provided buffer making it " @@ -922,7 +923,7 @@ msgid "" "`31819`.)" msgstr "" -#: whatsnew/3.7.rst:668 +#: whatsnew/3.7.rst:669 msgid "" "The new :func:`asyncio.current_task` function returns the currently running :" "class:`~asyncio.Task` instance, and the new :func:`asyncio.all_tasks` " @@ -932,14 +933,14 @@ msgid "" "(Contributed by Andrew Svetlov in :issue:`32250`.)" msgstr "" -#: whatsnew/3.7.rst:675 +#: whatsnew/3.7.rst:676 msgid "" "The new *provisional* :class:`~asyncio.BufferedProtocol` class allows " "implementing streaming protocols with manual control over the receive " "buffer. (Contributed by Yury Selivanov in :issue:`32251`.)" msgstr "" -#: whatsnew/3.7.rst:679 +#: whatsnew/3.7.rst:680 msgid "" "The new :func:`asyncio.get_running_loop` function returns the currently " "running loop, and raises a :exc:`RuntimeError` if no loop is running. This " @@ -948,7 +949,7 @@ msgid "" "`32269`.)" msgstr "" -#: whatsnew/3.7.rst:685 +#: whatsnew/3.7.rst:686 msgid "" "The new :meth:`StreamWriter.wait_closed() ` coroutine method allows waiting until the stream writer is " @@ -957,14 +958,14 @@ msgid "" "(Contributed by Andrew Svetlov in :issue:`32391`.)" msgstr "" -#: whatsnew/3.7.rst:691 +#: whatsnew/3.7.rst:692 msgid "" "The new :meth:`loop.sock_sendfile() ` coroutine " "method allows sending files using :mod:`os.sendfile` when possible. " "(Contributed by Andrew Svetlov in :issue:`32410`.)" msgstr "" -#: whatsnew/3.7.rst:695 +#: whatsnew/3.7.rst:696 msgid "" "The new :meth:`Future.get_loop() ` and ``Task." "get_loop()`` methods return the instance of the loop on which a task or a " @@ -974,7 +975,7 @@ msgid "" "`32418`.)" msgstr "" -#: whatsnew/3.7.rst:703 +#: whatsnew/3.7.rst:704 msgid "" "It is now possible to control how instances of :class:`asyncio.Server` begin " "serving. Previously, the server would start serving immediately when " @@ -989,11 +990,11 @@ msgid "" "managers::" msgstr "" -#: whatsnew/3.7.rst:722 +#: whatsnew/3.7.rst:723 msgid "(Contributed by Yury Selivanov in :issue:`32662`.)" msgstr "" -#: whatsnew/3.7.rst:724 +#: whatsnew/3.7.rst:725 msgid "" "Callback objects returned by :func:`loop.call_later() ` gained the new :meth:`when() ` method " @@ -1001,14 +1002,14 @@ msgid "" "Andrew Svetlov in :issue:`32741`.)" msgstr "" -#: whatsnew/3.7.rst:730 +#: whatsnew/3.7.rst:731 msgid "" "The :meth:`loop.create_datagram_endpoint() \\ ` method gained support for Unix sockets. " "(Contributed by Quentin Dawans in :issue:`31245`.)" msgstr "" -#: whatsnew/3.7.rst:735 +#: whatsnew/3.7.rst:736 msgid "" "The :func:`asyncio.open_connection`, :func:`asyncio.start_server` " "functions, :meth:`loop.create_connection() ` method returns " "``True`` if the callback was cancelled. (Contributed by Marat Sharafutdinov " "in :issue:`31943`.)" msgstr "" -#: whatsnew/3.7.rst:747 +#: whatsnew/3.7.rst:748 msgid "" "The asyncio source has been converted to use the :keyword:`async`/:keyword:" "`await` syntax. (Contributed by Andrew Svetlov in :issue:`32193`.)" msgstr "" -#: whatsnew/3.7.rst:751 +#: whatsnew/3.7.rst:752 msgid "" "The new :meth:`ReadTransport.is_reading() ` method can be used to determine the reading state of the " @@ -1042,76 +1043,76 @@ msgid "" "(Contributed by Yury Selivanov in :issue:`32356`.)" msgstr "" -#: whatsnew/3.7.rst:759 +#: whatsnew/3.7.rst:760 msgid "" "Loop methods which accept socket paths now support passing :term:`path-like " "objects `. (Contributed by Yury Selivanov in :issue:" "`32066`.)" msgstr "" -#: whatsnew/3.7.rst:763 +#: whatsnew/3.7.rst:764 msgid "" "In :mod:`asyncio` TCP sockets on Linux are now created with ``TCP_NODELAY`` " "flag set by default. (Contributed by Yury Selivanov and Victor Stinner in :" "issue:`27456`.)" msgstr "" -#: whatsnew/3.7.rst:767 +#: whatsnew/3.7.rst:768 msgid "" "Exceptions occurring in cancelled tasks are no longer logged. (Contributed " "by Yury Selivanov in :issue:`30508`.)" msgstr "" -#: whatsnew/3.7.rst:770 +#: whatsnew/3.7.rst:771 msgid "" "New ``WindowsSelectorEventLoopPolicy`` and " "``WindowsProactorEventLoopPolicy`` classes. (Contributed by Yury Selivanov " "in :issue:`33792`.)" msgstr "" -#: whatsnew/3.7.rst:774 +#: whatsnew/3.7.rst:775 msgid "" "Several ``asyncio`` APIs have been :ref:`deprecated `." msgstr "" -#: whatsnew/3.7.rst:779 +#: whatsnew/3.7.rst:780 msgid "binascii" msgstr "binascii" -#: whatsnew/3.7.rst:781 +#: whatsnew/3.7.rst:782 msgid "" "The :func:`~binascii.b2a_uu` function now accepts an optional *backtick* " "keyword argument. When it's true, zeros are represented by ``'`'`` instead " "of spaces. (Contributed by Xiang Zhang in :issue:`30103`.)" msgstr "" -#: whatsnew/3.7.rst:787 +#: whatsnew/3.7.rst:788 msgid "calendar" msgstr "" -#: whatsnew/3.7.rst:789 +#: whatsnew/3.7.rst:790 msgid "" "The :class:`~calendar.HTMLCalendar` class has new class attributes which " "ease the customization of CSS classes in the produced HTML calendar. " "(Contributed by Oz Tiram in :issue:`30095`.)" msgstr "" -#: whatsnew/3.7.rst:1964 +#: whatsnew/3.7.rst:1965 msgid "collections" msgstr "" -#: whatsnew/3.7.rst:797 +#: whatsnew/3.7.rst:798 msgid "" "``collections.namedtuple()`` now supports default values. (Contributed by " "Raymond Hettinger in :issue:`32320`.)" msgstr "" -#: whatsnew/3.7.rst:802 +#: whatsnew/3.7.rst:803 msgid "compileall" msgstr "compileall" -#: whatsnew/3.7.rst:804 +#: whatsnew/3.7.rst:805 msgid "" ":func:`compileall.compile_dir` learned the new *invalidation_mode* " "parameter, which can be used to enable :ref:`hash-based .pyc invalidation " @@ -1120,11 +1121,11 @@ msgid "" "Benjamin Peterson in :issue:`31650`.)" msgstr "" -#: whatsnew/3.7.rst:813 +#: whatsnew/3.7.rst:814 msgid "concurrent.futures" msgstr "concurrent.futures" -#: whatsnew/3.7.rst:815 +#: whatsnew/3.7.rst:816 msgid "" ":class:`ProcessPoolExecutor ` and :" "class:`ThreadPoolExecutor ` now " @@ -1132,25 +1133,25 @@ msgid "" "(Contributed by Antoine Pitrou in :issue:`21423`.)" msgstr "" -#: whatsnew/3.7.rst:820 +#: whatsnew/3.7.rst:821 msgid "" "The :class:`ProcessPoolExecutor ` " "can now take the multiprocessing context via the new *mp_context* argument. " "(Contributed by Thomas Moreau in :issue:`31540`.)" msgstr "" -#: whatsnew/3.7.rst:826 +#: whatsnew/3.7.rst:827 msgid "contextlib" msgstr "contextlib" -#: whatsnew/3.7.rst:828 +#: whatsnew/3.7.rst:829 msgid "" "The new :func:`~contextlib.nullcontext` is a simpler and faster no-op " "context manager than :class:`~contextlib.ExitStack`. (Contributed by Jesse-" "Bakker in :issue:`10049`.)" msgstr "" -#: whatsnew/3.7.rst:832 +#: whatsnew/3.7.rst:833 msgid "" "The new :func:`~contextlib.asynccontextmanager`, :class:`~contextlib." "AbstractAsyncContextManager`, and :class:`~contextlib.AsyncExitStack` have " @@ -1159,38 +1160,38 @@ msgid "" "and Ilya Kulakov in :issue:`29302`.)" msgstr "" -#: whatsnew/3.7.rst:841 +#: whatsnew/3.7.rst:842 msgid "cProfile" msgstr "" -#: whatsnew/3.7.rst:843 +#: whatsnew/3.7.rst:844 msgid "" "The :mod:`cProfile` command line now accepts ``-m module_name`` as an " "alternative to script path. (Contributed by Sanyam Khurana in :issue:" "`21862`.)" msgstr "" -#: whatsnew/3.7.rst:848 +#: whatsnew/3.7.rst:849 msgid "crypt" msgstr "crypt" -#: whatsnew/3.7.rst:850 +#: whatsnew/3.7.rst:851 msgid "" "The :mod:`crypt` module now supports the Blowfish hashing method. " "(Contributed by Serhiy Storchaka in :issue:`31664`.)" msgstr "" -#: whatsnew/3.7.rst:853 +#: whatsnew/3.7.rst:854 msgid "" "The :func:`~crypt.mksalt` function now allows specifying the number of " "rounds for hashing. (Contributed by Serhiy Storchaka in :issue:`31702`.)" msgstr "" -#: whatsnew/3.7.rst:858 +#: whatsnew/3.7.rst:859 msgid "datetime" msgstr "datetime" -#: whatsnew/3.7.rst:860 +#: whatsnew/3.7.rst:861 msgid "" "The new :meth:`datetime.fromisoformat() ` " "method constructs a :class:`~datetime.datetime` object from a string in one " @@ -1198,38 +1199,38 @@ msgid "" "isoformat>`. (Contributed by Paul Ganssle in :issue:`15873`.)" msgstr "" -#: whatsnew/3.7.rst:866 +#: whatsnew/3.7.rst:867 msgid "" "The :class:`tzinfo ` class now supports sub-minute offsets. " "(Contributed by Alexander Belopolsky in :issue:`5288`.)" msgstr "" -#: whatsnew/3.7.rst:1974 +#: whatsnew/3.7.rst:1975 msgid "dbm" msgstr "dbm" -#: whatsnew/3.7.rst:873 +#: whatsnew/3.7.rst:874 msgid "" ":mod:`dbm.dumb` now supports reading read-only files and no longer writes " "the index file when it is not changed." msgstr "" -#: whatsnew/3.7.rst:878 +#: whatsnew/3.7.rst:879 msgid "decimal" msgstr "" -#: whatsnew/3.7.rst:880 +#: whatsnew/3.7.rst:881 msgid "" "The :mod:`decimal` module now uses :ref:`context variables ` to store the decimal context. (Contributed by Yury Selivanov in :" "issue:`32630`.)" msgstr "" -#: whatsnew/3.7.rst:886 +#: whatsnew/3.7.rst:887 msgid "dis" msgstr "dis" -#: whatsnew/3.7.rst:888 +#: whatsnew/3.7.rst:889 msgid "" "The :func:`~dis.dis` function is now able to disassemble nested code objects " "(the code of comprehensions, generator expressions and nested functions, and " @@ -1238,29 +1239,29 @@ msgid "" "(Contributed by Serhiy Storchaka in :issue:`11822`.)" msgstr "" -#: whatsnew/3.7.rst:897 +#: whatsnew/3.7.rst:898 msgid "distutils" msgstr "distutils" -#: whatsnew/3.7.rst:899 +#: whatsnew/3.7.rst:900 msgid "" "``README.rst`` is now included in the list of distutils standard READMEs and " "therefore included in source distributions. (Contributed by Ryan Gonzalez " "in :issue:`11913`.)" msgstr "" -#: whatsnew/3.7.rst:1984 +#: whatsnew/3.7.rst:1985 msgid "enum" msgstr "enum" -#: whatsnew/3.7.rst:907 +#: whatsnew/3.7.rst:908 msgid "" "The :class:`Enum ` learned the new ``_ignore_`` class property, " "which allows listing the names of properties which should not become enum " "members. (Contributed by Ethan Furman in :issue:`31801`.)" msgstr "" -#: whatsnew/3.7.rst:912 +#: whatsnew/3.7.rst:913 msgid "" "In Python 3.8, attempting to check for non-Enum objects in :class:`Enum` " "classes will raise a :exc:`TypeError` (e.g. ``1 in Color``); similarly, " @@ -1270,21 +1271,21 @@ msgid "" "Furman in :issue:`33217`.)" msgstr "" -#: whatsnew/3.7.rst:921 +#: whatsnew/3.7.rst:922 msgid "functools" msgstr "" -#: whatsnew/3.7.rst:923 +#: whatsnew/3.7.rst:924 msgid "" ":func:`functools.singledispatch` now supports registering implementations " "using type annotations. (Contributed by Łukasz Langa in :issue:`32227`.)" msgstr "" -#: whatsnew/3.7.rst:929 +#: whatsnew/3.7.rst:930 msgid "gc" msgstr "" -#: whatsnew/3.7.rst:931 +#: whatsnew/3.7.rst:932 msgid "" "The new :func:`gc.freeze` function allows freezing all objects tracked by " "the garbage collector and excluding them from future collections. This can " @@ -1295,33 +1296,33 @@ msgid "" "`31558`.)" msgstr "" -#: whatsnew/3.7.rst:941 +#: whatsnew/3.7.rst:942 msgid "hmac" msgstr "" -#: whatsnew/3.7.rst:943 +#: whatsnew/3.7.rst:944 msgid "" "The :mod:`hmac` module now has an optimized one-shot :func:`~hmac.digest` " "function, which is up to three times faster than :func:`~hmac.HMAC`. " "(Contributed by Christian Heimes in :issue:`32433`.)" msgstr "" -#: whatsnew/3.7.rst:949 +#: whatsnew/3.7.rst:950 msgid "http.client" msgstr "" -#: whatsnew/3.7.rst:951 +#: whatsnew/3.7.rst:952 msgid "" ":class:`~http.client.HTTPConnection` and :class:`~http.client." "HTTPSConnection` now support the new *blocksize* argument for improved " "upload throughput. (Contributed by Nir Soffer in :issue:`31945`.)" msgstr "" -#: whatsnew/3.7.rst:957 +#: whatsnew/3.7.rst:958 msgid "http.server" msgstr "" -#: whatsnew/3.7.rst:959 +#: whatsnew/3.7.rst:960 msgid "" ":class:`~http.server.SimpleHTTPRequestHandler` now supports the HTTP ``If-" "Modified-Since`` header. The server returns the 304 response status if the " @@ -1329,7 +1330,7 @@ msgid "" "(Contributed by Pierre Quentel in :issue:`29654`.)" msgstr "" -#: whatsnew/3.7.rst:964 +#: whatsnew/3.7.rst:965 msgid "" ":class:`~http.server.SimpleHTTPRequestHandler` accepts the new *directory* " "argument, in addition to the new ``--directory`` command line argument. With " @@ -1338,7 +1339,7 @@ msgid "" "Julien Palard in :issue:`28707`.)" msgstr "" -#: whatsnew/3.7.rst:970 +#: whatsnew/3.7.rst:971 msgid "" "The new :class:`ThreadingHTTPServer ` class " "uses threads to handle requests using :class:`~socketserver.ThreadingMixin`. " @@ -1346,17 +1347,17 @@ msgid "" "Palard in :issue:`31639`.)" msgstr "" -#: whatsnew/3.7.rst:977 +#: whatsnew/3.7.rst:978 msgid "idlelib and IDLE" msgstr "" -#: whatsnew/3.7.rst:979 +#: whatsnew/3.7.rst:980 msgid "" "Multiple fixes for autocompletion. (Contributed by Louie Lu in :issue:" "`15786`.)" msgstr "" -#: whatsnew/3.7.rst:981 +#: whatsnew/3.7.rst:982 msgid "" "Module Browser (on the File menu, formerly called Class Browser), now " "displays nested functions and classes in addition to top-level functions and " @@ -1364,14 +1365,14 @@ msgid "" "in :issue:`1612262`.)" msgstr "" -#: whatsnew/3.7.rst:987 +#: whatsnew/3.7.rst:988 msgid "" "The Settings dialog (Options, Configure IDLE) has been partly rewritten to " "improve both appearance and function. (Contributed by Cheryl Sabella and " "Terry Jan Reedy in multiple issues.)" msgstr "" -#: whatsnew/3.7.rst:991 +#: whatsnew/3.7.rst:992 msgid "" "The font sample now includes a selection of non-Latin characters so that " "users can better see the effect of selecting a particular font. (Contributed " @@ -1379,7 +1380,7 @@ msgid "" "other characters. (Contributed by Serhiy Storchaka in :issue:`31860`.)" msgstr "" -#: whatsnew/3.7.rst:997 +#: whatsnew/3.7.rst:998 msgid "" "The IDLE features formerly implemented as extensions have been reimplemented " "as normal features. Their settings have been moved from the Extensions tab " @@ -1387,7 +1388,7 @@ msgid "" "in :issue:`27099`.)" msgstr "" -#: whatsnew/3.7.rst:1002 +#: whatsnew/3.7.rst:1003 msgid "" "Editor code context option revised. Box displays all context lines up to " "maxlines. Clicking on a context line jumps the editor to that line. " @@ -1396,7 +1397,7 @@ msgid "" "`33642`, :issue:`33768`, and :issue:`33679`.)" msgstr "" -#: whatsnew/3.7.rst:1008 +#: whatsnew/3.7.rst:1009 msgid "" "On Windows, a new API call tells Windows that tk scales for DPI. On Windows " "8.1+ or 10, with DPI compatibility properties of the Python binary " @@ -1405,11 +1406,11 @@ msgid "" "Terry Jan Reedy in :issue:`33656`.)" msgstr "" -#: whatsnew/3.7.rst:1014 +#: whatsnew/3.7.rst:1015 msgid "New in 3.7.1:" msgstr "" -#: whatsnew/3.7.rst:1016 +#: whatsnew/3.7.rst:1017 msgid "" "Output over N lines (50 by default) is squeezed down to a button. N can be " "changed in the PyShell section of the General page of the Settings dialog. " @@ -1419,15 +1420,15 @@ msgid "" "button. (Contributed by Tal Einat in :issue:`1529353`.)" msgstr "" -#: whatsnew/3.7.rst:1023 +#: whatsnew/3.7.rst:1024 msgid "The changes above have been backported to 3.6 maintenance releases." msgstr "" -#: whatsnew/3.7.rst:1025 +#: whatsnew/3.7.rst:1026 msgid "NEW in 3.7.4:" msgstr "" -#: whatsnew/3.7.rst:1027 +#: whatsnew/3.7.rst:1028 msgid "" "Add \"Run Customized\" to the Run menu to run a module with customized " "settings. Any command line arguments entered are added to sys.argv. They re-" @@ -1436,11 +1437,11 @@ msgid "" "Reedy, and others in :issue:`5680` and :issue:`37627`.)" msgstr "" -#: whatsnew/3.7.rst:1033 +#: whatsnew/3.7.rst:1034 msgid "New in 3.7.5:" msgstr "" -#: whatsnew/3.7.rst:1035 +#: whatsnew/3.7.rst:1036 msgid "" "Add optional line numbers for IDLE editor windows. Windows open without line " "numbers unless set otherwise in the General tab of the configuration " @@ -1449,11 +1450,11 @@ msgid "" "`17535`.)" msgstr "" -#: whatsnew/3.7.rst:2003 +#: whatsnew/3.7.rst:2004 msgid "importlib" msgstr "importlib" -#: whatsnew/3.7.rst:1045 +#: whatsnew/3.7.rst:1046 msgid "" "The :class:`importlib.abc.ResourceReader` ABC was introduced to support the " "loading of resources from packages. See also :ref:" @@ -1461,13 +1462,13 @@ msgid "" "in :issue:`32248`.)" msgstr "" -#: whatsnew/3.7.rst:1050 +#: whatsnew/3.7.rst:1051 msgid "" ":func:`importlib.reload` now raises :exc:`ModuleNotFoundError` if the module " "lacks a spec. (Contributed by Garvit Khatri in :issue:`29851`.)" msgstr "" -#: whatsnew/3.7.rst:1054 +#: whatsnew/3.7.rst:1055 msgid "" ":func:`importlib.find_spec` now raises :exc:`ModuleNotFoundError` instead " "of :exc:`AttributeError` if the specified parent module is not a package (i." @@ -1475,18 +1476,18 @@ msgid "" "issue:`30436`.)" msgstr "" -#: whatsnew/3.7.rst:1059 +#: whatsnew/3.7.rst:1060 msgid "" "The new :func:`importlib.source_hash` can be used to compute the hash of the " "passed source. A :ref:`hash-based .pyc file ` embeds the " "value returned by this function." msgstr "" -#: whatsnew/3.7.rst:1065 +#: whatsnew/3.7.rst:1066 msgid "io" msgstr "" -#: whatsnew/3.7.rst:1067 +#: whatsnew/3.7.rst:1068 msgid "" "The new :meth:`TextIOWrapper.reconfigure() ` " "method can be used to reconfigure the text stream with the new settings. " @@ -1494,11 +1495,11 @@ msgid "" "`15216`.)" msgstr "" -#: whatsnew/3.7.rst:1074 +#: whatsnew/3.7.rst:1075 msgid "ipaddress" msgstr "" -#: whatsnew/3.7.rst:1076 +#: whatsnew/3.7.rst:1077 msgid "" "The new ``subnet_of()`` and ``supernet_of()`` methods of :class:`ipaddress." "IPv6Network` and :class:`ipaddress.IPv4Network` can be used for network " @@ -1506,95 +1507,95 @@ msgid "" "issue:`20825`.)" msgstr "" -#: whatsnew/3.7.rst:1083 +#: whatsnew/3.7.rst:1084 msgid "itertools" msgstr "" -#: whatsnew/3.7.rst:1085 +#: whatsnew/3.7.rst:1086 msgid "" ":func:`itertools.islice` now accepts :meth:`integer-like objects ` as start, stop, and slice arguments. (Contributed by Will " "Roberts in :issue:`30537`.)" msgstr "" -#: whatsnew/3.7.rst:2021 +#: whatsnew/3.7.rst:2022 msgid "locale" msgstr "" -#: whatsnew/3.7.rst:1094 +#: whatsnew/3.7.rst:1095 msgid "" "The new *monetary* argument to :func:`locale.format_string` can be used to " "make the conversion use monetary thousands separators and grouping strings. " "(Contributed by Garvit in :issue:`10379`.)" msgstr "" -#: whatsnew/3.7.rst:1098 +#: whatsnew/3.7.rst:1099 msgid "" "The :func:`locale.getpreferredencoding` function now always returns " "``'UTF-8'`` on Android or when in the :ref:`forced UTF-8 mode `." msgstr "" -#: whatsnew/3.7.rst:1103 +#: whatsnew/3.7.rst:1104 msgid "logging" msgstr "" -#: whatsnew/3.7.rst:1105 +#: whatsnew/3.7.rst:1106 msgid "" ":class:`~logging.Logger` instances can now be pickled. (Contributed by Vinay " "Sajip in :issue:`30520`.)" msgstr "" -#: whatsnew/3.7.rst:1108 +#: whatsnew/3.7.rst:1109 msgid "" "The new :meth:`StreamHandler.setStream() ` " "method can be used to replace the logger stream after handler creation. " "(Contributed by Vinay Sajip in :issue:`30522`.)" msgstr "" -#: whatsnew/3.7.rst:1112 +#: whatsnew/3.7.rst:1113 msgid "" "It is now possible to specify keyword arguments to handler constructors in " "configuration passed to :func:`logging.config.fileConfig`. (Contributed by " "Preston Landers in :issue:`31080`.)" msgstr "" -#: whatsnew/3.7.rst:1118 +#: whatsnew/3.7.rst:1119 msgid "math" msgstr "" -#: whatsnew/3.7.rst:1120 +#: whatsnew/3.7.rst:1121 msgid "" "The new :func:`math.remainder` function implements the IEEE 754-style " "remainder operation. (Contributed by Mark Dickinson in :issue:`29962`.)" msgstr "" -#: whatsnew/3.7.rst:1125 +#: whatsnew/3.7.rst:1126 msgid "mimetypes" msgstr "" -#: whatsnew/3.7.rst:1127 +#: whatsnew/3.7.rst:1128 msgid "" "The MIME type of .bmp has been changed from ``'image/x-ms-bmp'`` to ``'image/" "bmp'``. (Contributed by Nitish Chandra in :issue:`22589`.)" msgstr "" -#: whatsnew/3.7.rst:1133 +#: whatsnew/3.7.rst:1134 msgid "msilib" msgstr "" -#: whatsnew/3.7.rst:1135 +#: whatsnew/3.7.rst:1136 msgid "" "The new :meth:`Database.Close() ` method can be used " "to close the :abbr:`MSI` database. (Contributed by Berker Peksag in :issue:" "`20486`.)" msgstr "" -#: whatsnew/3.7.rst:1141 +#: whatsnew/3.7.rst:1142 msgid "multiprocessing" msgstr "multiprocessing" -#: whatsnew/3.7.rst:1143 +#: whatsnew/3.7.rst:1144 msgid "" "The new :meth:`Process.close() ` method " "explicitly closes the process object and releases all resources associated " @@ -1602,43 +1603,43 @@ msgid "" "running. (Contributed by Antoine Pitrou in :issue:`30596`.)" msgstr "" -#: whatsnew/3.7.rst:1149 +#: whatsnew/3.7.rst:1150 msgid "" "The new :meth:`Process.kill() ` method can be " "used to terminate the process using the :data:`SIGKILL` signal on Unix. " "(Contributed by Vitor Pereira in :issue:`30794`.)" msgstr "" -#: whatsnew/3.7.rst:1153 +#: whatsnew/3.7.rst:1154 msgid "" "Non-daemonic threads created by :class:`~multiprocessing.Process` are now " "joined on process exit. (Contributed by Antoine Pitrou in :issue:`18966`.)" msgstr "" -#: whatsnew/3.7.rst:1159 +#: whatsnew/3.7.rst:1160 msgid "os" msgstr "" -#: whatsnew/3.7.rst:1161 +#: whatsnew/3.7.rst:1162 msgid "" ":func:`os.fwalk` now accepts the *path* argument as :class:`bytes`. " "(Contributed by Serhiy Storchaka in :issue:`28682`.)" msgstr "" -#: whatsnew/3.7.rst:1164 +#: whatsnew/3.7.rst:1165 msgid "" ":func:`os.scandir` gained support for :ref:`file descriptors `. " "(Contributed by Serhiy Storchaka in :issue:`25996`.)" msgstr "" -#: whatsnew/3.7.rst:1167 +#: whatsnew/3.7.rst:1168 msgid "" "The new :func:`~os.register_at_fork` function allows registering Python " "callbacks to be executed at process fork. (Contributed by Antoine Pitrou in :" "issue:`16500`.)" msgstr "" -#: whatsnew/3.7.rst:1171 +#: whatsnew/3.7.rst:1172 msgid "" "Added :func:`os.preadv` (combine the functionality of :func:`os.readv` and :" "func:`os.pread`) and :func:`os.pwritev` functions (combine the functionality " @@ -1646,59 +1647,59 @@ msgid "" "in :issue:`31368`.)" msgstr "" -#: whatsnew/3.7.rst:1176 +#: whatsnew/3.7.rst:1177 msgid "" "The mode argument of :func:`os.makedirs` no longer affects the file " "permission bits of newly-created intermediate-level directories. " "(Contributed by Serhiy Storchaka in :issue:`19930`.)" msgstr "" -#: whatsnew/3.7.rst:1180 +#: whatsnew/3.7.rst:1181 msgid "" ":func:`os.dup2` now returns the new file descriptor. Previously, ``None`` " "was always returned. (Contributed by Benjamin Peterson in :issue:`32441`.)" msgstr "" -#: whatsnew/3.7.rst:1184 +#: whatsnew/3.7.rst:1185 msgid "" "The structure returned by :func:`os.stat` now contains the :attr:`~os." "stat_result.st_fstype` attribute on Solaris and its derivatives. " "(Contributed by Jesús Cea Avión in :issue:`32659`.)" msgstr "" -#: whatsnew/3.7.rst:1190 +#: whatsnew/3.7.rst:1191 msgid "pathlib" msgstr "pathlib" -#: whatsnew/3.7.rst:1192 +#: whatsnew/3.7.rst:1193 msgid "" "The new :meth:`Path.is_mount() ` method is now " "available on POSIX systems and can be used to determine whether a path is a " "mount point. (Contributed by Cooper Ry Lees in :issue:`30897`.)" msgstr "" -#: whatsnew/3.7.rst:1198 +#: whatsnew/3.7.rst:1199 msgid "pdb" msgstr "" -#: whatsnew/3.7.rst:1200 +#: whatsnew/3.7.rst:1201 msgid "" ":func:`pdb.set_trace` now takes an optional *header* keyword-only argument. " "If given, it is printed to the console just before debugging begins. " "(Contributed by Barry Warsaw in :issue:`31389`.)" msgstr "" -#: whatsnew/3.7.rst:1204 +#: whatsnew/3.7.rst:1205 msgid "" ":mod:`pdb` command line now accepts ``-m module_name`` as an alternative to " "script file. (Contributed by Mario Corchero in :issue:`32206`.)" msgstr "" -#: whatsnew/3.7.rst:1209 +#: whatsnew/3.7.rst:1210 msgid "py_compile" msgstr "" -#: whatsnew/3.7.rst:1211 +#: whatsnew/3.7.rst:1212 msgid "" ":func:`py_compile.compile` -- and by extension, :mod:`compileall` -- now " "respects the :envvar:`SOURCE_DATE_EPOCH` environment variable by " @@ -1708,46 +1709,46 @@ msgid "" "Bernhard M. Wiedemann in :issue:`29708`.)" msgstr "" -#: whatsnew/3.7.rst:1221 +#: whatsnew/3.7.rst:1222 msgid "pydoc" msgstr "" -#: whatsnew/3.7.rst:1223 +#: whatsnew/3.7.rst:1224 msgid "" "The pydoc server can now bind to an arbitrary hostname specified by the new " "``-n`` command-line argument. (Contributed by Feanil Patel in :issue:" "`31128`.)" msgstr "" -#: whatsnew/3.7.rst:1229 +#: whatsnew/3.7.rst:1230 msgid "queue" msgstr "" -#: whatsnew/3.7.rst:1231 +#: whatsnew/3.7.rst:1232 msgid "" "The new :class:`~queue.SimpleQueue` class is an unbounded :abbr:`FIFO` " "queue. (Contributed by Antoine Pitrou in :issue:`14976`.)" msgstr "" -#: whatsnew/3.7.rst:1236 +#: whatsnew/3.7.rst:1237 msgid "re" msgstr "" -#: whatsnew/3.7.rst:1238 +#: whatsnew/3.7.rst:1239 msgid "" "The flags :const:`re.ASCII`, :const:`re.LOCALE` and :const:`re.UNICODE` can " "be set within the scope of a group. (Contributed by Serhiy Storchaka in :" "issue:`31690`.)" msgstr "" -#: whatsnew/3.7.rst:1242 +#: whatsnew/3.7.rst:1243 msgid "" ":func:`re.split` now supports splitting on a pattern like ``r'\\b'``, ``'^" "$'`` or ``(?=-)`` that matches an empty string. (Contributed by Serhiy " "Storchaka in :issue:`25054`.)" msgstr "" -#: whatsnew/3.7.rst:1246 +#: whatsnew/3.7.rst:1247 msgid "" "Regular expressions compiled with the :const:`re.LOCALE` flag no longer " "depend on the locale at compile time. Locale settings are applied only when " @@ -1755,7 +1756,7 @@ msgid "" "in :issue:`30215`.)" msgstr "" -#: whatsnew/3.7.rst:1251 +#: whatsnew/3.7.rst:1252 msgid "" ":exc:`FutureWarning` is now emitted if a regular expression contains " "character set constructs that will change semantically in the future, such " @@ -1763,18 +1764,18 @@ msgid "" "issue:`30349`.)" msgstr "" -#: whatsnew/3.7.rst:1256 +#: whatsnew/3.7.rst:1257 msgid "" "Compiled regular expression and match objects can now be copied using :func:" "`copy.copy` and :func:`copy.deepcopy`. (Contributed by Serhiy Storchaka in :" "issue:`10076`.)" msgstr "" -#: whatsnew/3.7.rst:1262 +#: whatsnew/3.7.rst:1263 msgid "signal" msgstr "" -#: whatsnew/3.7.rst:1264 +#: whatsnew/3.7.rst:1265 msgid "" "The new *warn_on_full_buffer* argument to the :func:`signal.set_wakeup_fd` " "function makes it possible to specify whether Python prints a warning on " @@ -1782,18 +1783,18 @@ msgid "" "in :issue:`30050`.)" msgstr "" -#: whatsnew/3.7.rst:2044 +#: whatsnew/3.7.rst:2045 msgid "socket" msgstr "" -#: whatsnew/3.7.rst:1273 +#: whatsnew/3.7.rst:1274 msgid "" "The new :func:`socket.getblocking() ` method " "returns ``True`` if the socket is in blocking mode and ``False`` otherwise. " "(Contributed by Yury Selivanov in :issue:`32373`.)" msgstr "" -#: whatsnew/3.7.rst:1277 +#: whatsnew/3.7.rst:1278 msgid "" "The new :func:`socket.close` function closes the passed socket file " "descriptor. This function should be used instead of :func:`os.close` for " @@ -1801,7 +1802,7 @@ msgid "" "issue:`32454`.)" msgstr "" -#: whatsnew/3.7.rst:1282 +#: whatsnew/3.7.rst:1283 msgid "" "The :mod:`socket` module now exposes the :data:`socket.TCP_CONGESTION` " "(Linux 2.6.13), :data:`socket.TCP_USER_TIMEOUT` (Linux 2.6.37), and :data:" @@ -1809,31 +1810,31 @@ msgid "" "Sandoval in :issue:`26273` and Nathaniel J. Smith in :issue:`29728`.)" msgstr "" -#: whatsnew/3.7.rst:1288 +#: whatsnew/3.7.rst:1289 msgid "" "Support for :data:`socket.AF_VSOCK` sockets has been added to allow " "communication between virtual machines and their hosts. (Contributed by " "Cathy Avery in :issue:`27584`.)" msgstr "" -#: whatsnew/3.7.rst:1292 +#: whatsnew/3.7.rst:1293 msgid "" "Sockets now auto-detect family, type and protocol from file descriptor by " "default. (Contributed by Christian Heimes in :issue:`28134`.)" msgstr "" -#: whatsnew/3.7.rst:1298 +#: whatsnew/3.7.rst:1299 msgid "socketserver" msgstr "" -#: whatsnew/3.7.rst:1300 +#: whatsnew/3.7.rst:1301 msgid "" ":meth:`socketserver.ThreadingMixIn.server_close` now waits until all non-" "daemon threads complete. :meth:`socketserver.ForkingMixIn.server_close` now " "waits until all child processes complete." msgstr "" -#: whatsnew/3.7.rst:1304 +#: whatsnew/3.7.rst:1305 msgid "" "Add a new :attr:`socketserver.ForkingMixIn.block_on_close` class attribute " "to :class:`socketserver.ForkingMixIn` and :class:`socketserver." @@ -1841,29 +1842,29 @@ msgid "" "pre-3.7 behaviour." msgstr "" -#: whatsnew/3.7.rst:1310 +#: whatsnew/3.7.rst:1311 msgid "sqlite3" msgstr "" -#: whatsnew/3.7.rst:1312 +#: whatsnew/3.7.rst:1313 msgid "" ":class:`sqlite3.Connection` now exposes the :meth:`~sqlite3.Connection." "backup` method when the underlying SQLite library is at version 3.6.11 or " "higher. (Contributed by Lele Gaifax in :issue:`27645`.)" msgstr "" -#: whatsnew/3.7.rst:1316 +#: whatsnew/3.7.rst:1317 msgid "" "The *database* argument of :func:`sqlite3.connect` now accepts any :term:" "`path-like object`, instead of just a string. (Contributed by Anders " "Lorentsen in :issue:`31843`.)" msgstr "" -#: whatsnew/3.7.rst:2053 +#: whatsnew/3.7.rst:2054 msgid "ssl" msgstr "" -#: whatsnew/3.7.rst:1324 +#: whatsnew/3.7.rst:1325 msgid "" "The :mod:`ssl` module now uses OpenSSL's builtin API instead of :func:`~ssl." "match_hostname` to check a host name or an IP address. Values are validated " @@ -1876,7 +1877,7 @@ msgid "" "`31399`.)" msgstr "" -#: whatsnew/3.7.rst:1335 +#: whatsnew/3.7.rst:1336 msgid "" "The improved host name check requires a *libssl* implementation compatible " "with OpenSSL 1.0.2 or 1.1. Consequently, OpenSSL 0.9.8 and 1.0.1 are no " @@ -1884,20 +1885,20 @@ msgid "" "The ssl module is mostly compatible with LibreSSL 2.7.2 and newer." msgstr "" -#: whatsnew/3.7.rst:1340 +#: whatsnew/3.7.rst:1341 msgid "" "The ``ssl`` module no longer sends IP addresses in SNI TLS extension. " "(Contributed by Christian Heimes in :issue:`32185`.)" msgstr "" -#: whatsnew/3.7.rst:1343 +#: whatsnew/3.7.rst:1344 msgid "" ":func:`~ssl.match_hostname` no longer supports partial wildcards like ``www*." "example.org``. (Contributed by Mandeep Singh in :issue:`23033` and Christian " "Heimes in :issue:`31399`.)" msgstr "" -#: whatsnew/3.7.rst:1348 +#: whatsnew/3.7.rst:1349 msgid "" "The default cipher suite selection of the ``ssl`` module now uses a " "blacklist approach rather than a hard-coded whitelist. Python no longer re-" @@ -1906,7 +1907,7 @@ msgid "" "Christian Heimes in :issue:`31429`.)" msgstr "" -#: whatsnew/3.7.rst:1354 +#: whatsnew/3.7.rst:1355 msgid "" "Validation of server certificates containing internationalized domain names " "(IDNs) is now supported. As part of this change, the :attr:`SSLSocket." @@ -1916,7 +1917,7 @@ msgid "" "and Christian Heimes in :issue:`28414`.)" msgstr "" -#: whatsnew/3.7.rst:1361 +#: whatsnew/3.7.rst:1362 msgid "" "The ``ssl`` module has preliminary and experimental support for TLS 1.3 and " "OpenSSL 1.1.1. At the time of Python 3.7.0 release, OpenSSL 1.1.1 is still " @@ -1926,7 +1927,7 @@ msgid "" "`32947`, :issue:`20995`, :issue:`29136`, :issue:`30622` and :issue:`33618`)" msgstr "" -#: whatsnew/3.7.rst:1369 +#: whatsnew/3.7.rst:1370 msgid "" ":class:`~ssl.SSLSocket` and :class:`~ssl.SSLObject` no longer have a public " "constructor. Direct instantiation was never a documented and supported " @@ -1935,7 +1936,7 @@ msgid "" "(Contributed by Christian Heimes in :issue:`32951`)" msgstr "" -#: whatsnew/3.7.rst:1375 +#: whatsnew/3.7.rst:1376 msgid "" "OpenSSL 1.1 APIs for setting the minimum and maximum TLS protocol version " "are available as :attr:`SSLContext.minimum_version `_. (Contributed by " "Benjamin Peterson.)" msgstr "" -#: whatsnew/3.7.rst:1514 +#: whatsnew/3.7.rst:1515 msgid "unittest" msgstr "unittest" -#: whatsnew/3.7.rst:1516 +#: whatsnew/3.7.rst:1517 msgid "" "The new ``-k`` command-line option allows filtering tests by a name " "substring or a Unix shell-like pattern. For example, ``python -m unittest -k " @@ -2135,18 +2136,18 @@ msgid "" "Jonas Haag in :issue:`32071`.)" msgstr "" -#: whatsnew/3.7.rst:1525 +#: whatsnew/3.7.rst:1526 msgid "unittest.mock" msgstr "unittest.mock" -#: whatsnew/3.7.rst:1527 +#: whatsnew/3.7.rst:1528 msgid "" "The :const:`~unittest.mock.sentinel` attributes now preserve their identity " "when they are :mod:`copied ` or :mod:`pickled `. (Contributed " "by Serhiy Storchaka in :issue:`20804`.)" msgstr "" -#: whatsnew/3.7.rst:1531 +#: whatsnew/3.7.rst:1532 msgid "" "The new :func:`~unittest.mock.seal` function allows sealing :class:" "`~unittest.mock.Mock` instances, which will disallow further creation of " @@ -2154,33 +2155,33 @@ msgid "" "themselves mocks. (Contributed by Mario Corchero in :issue:`30541`.)" msgstr "" -#: whatsnew/3.7.rst:1539 +#: whatsnew/3.7.rst:1540 msgid "urllib.parse" msgstr "urllib.parse" -#: whatsnew/3.7.rst:1541 +#: whatsnew/3.7.rst:1542 msgid "" ":func:`urllib.parse.quote` has been updated from :rfc:`2396` to :rfc:`3986`, " "adding ``~`` to the set of characters that are never quoted by default. " "(Contributed by Christian Theune and Ratnadeep Debnath in :issue:`16285`.)" msgstr "" -#: whatsnew/3.7.rst:1547 +#: whatsnew/3.7.rst:1548 msgid "uu" msgstr "uu" -#: whatsnew/3.7.rst:1549 +#: whatsnew/3.7.rst:1550 msgid "" "The :func:`uu.encode` function now accepts an optional *backtick* keyword " "argument. When it's true, zeros are represented by ``'`'`` instead of " "spaces. (Contributed by Xiang Zhang in :issue:`30103`.)" msgstr "" -#: whatsnew/3.7.rst:1555 +#: whatsnew/3.7.rst:1556 msgid "uuid" msgstr "" -#: whatsnew/3.7.rst:1557 +#: whatsnew/3.7.rst:1558 msgid "" "The new :attr:`UUID.is_safe ` attribute relays " "information from the platform about whether generated UUIDs are generated " @@ -2188,7 +2189,7 @@ msgid "" "`22807`.)" msgstr "" -#: whatsnew/3.7.rst:1562 +#: whatsnew/3.7.rst:1563 msgid "" ":func:`uuid.getnode` now prefers universally administered MAC addresses over " "locally administered MAC addresses. This makes a better guarantee for global " @@ -2197,75 +2198,75 @@ msgid "" "returned. (Contributed by Barry Warsaw in :issue:`32107`.)" msgstr "" -#: whatsnew/3.7.rst:1571 +#: whatsnew/3.7.rst:1572 msgid "warnings" msgstr "" -#: whatsnew/3.7.rst:1573 +#: whatsnew/3.7.rst:1574 msgid "" "The initialization of the default warnings filters has changed as follows:" msgstr "" -#: whatsnew/3.7.rst:1575 +#: whatsnew/3.7.rst:1576 msgid "" "warnings enabled via command line options (including those for :option:`-b` " "and the new CPython-specific :option:`-X` ``dev`` option) are always passed " "to the warnings machinery via the :data:`sys.warnoptions` attribute." msgstr "" -#: whatsnew/3.7.rst:1579 +#: whatsnew/3.7.rst:1580 msgid "" "warnings filters enabled via the command line or the environment now have " "the following order of precedence:" msgstr "" -#: whatsnew/3.7.rst:1582 +#: whatsnew/3.7.rst:1583 msgid "the ``BytesWarning`` filter for :option:`-b` (or ``-bb``)" msgstr "" -#: whatsnew/3.7.rst:1583 +#: whatsnew/3.7.rst:1584 msgid "any filters specified with the :option:`-W` option" msgstr "" -#: whatsnew/3.7.rst:1584 +#: whatsnew/3.7.rst:1585 msgid "" "any filters specified with the :envvar:`PYTHONWARNINGS` environment variable" msgstr "" -#: whatsnew/3.7.rst:1586 +#: whatsnew/3.7.rst:1587 msgid "" "any other CPython specific filters (e.g. the ``default`` filter added for " "the new ``-X dev`` mode)" msgstr "" -#: whatsnew/3.7.rst:1588 +#: whatsnew/3.7.rst:1589 msgid "any implicit filters defined directly by the warnings machinery" msgstr "" -#: whatsnew/3.7.rst:1590 +#: whatsnew/3.7.rst:1591 msgid "" -"in CPython debug builds, all warnings are now displayed by default (the " -"implicit filter list is empty)" +"in :ref:`CPython debug builds `, all warnings are now displayed " +"by default (the implicit filter list is empty)" msgstr "" -#: whatsnew/3.7.rst:1593 +#: whatsnew/3.7.rst:1594 msgid "" "(Contributed by Nick Coghlan and Victor Stinner in :issue:`20361`, :issue:" "`32043`, and :issue:`32230`.)" msgstr "" -#: whatsnew/3.7.rst:1596 +#: whatsnew/3.7.rst:1597 msgid "" "Deprecation warnings are once again shown by default in single-file scripts " "and at the interactive prompt. See :ref:`whatsnew37-pep565` for details. " "(Contributed by Nick Coghlan in :issue:`31975`.)" msgstr "" -#: whatsnew/3.7.rst:1602 +#: whatsnew/3.7.rst:1603 msgid "xml.etree" msgstr "xml.etree" -#: whatsnew/3.7.rst:1604 +#: whatsnew/3.7.rst:1605 msgid "" ":ref:`ElementPath ` predicates in the :meth:`find` " "methods can now compare text of the current node with ``[. = \"text\"]``, " @@ -2273,29 +2274,29 @@ msgid "" "readability. (Contributed by Stefan Behnel in :issue:`31648`.)" msgstr "" -#: whatsnew/3.7.rst:1611 +#: whatsnew/3.7.rst:1612 msgid "xmlrpc.server" msgstr "" -#: whatsnew/3.7.rst:1613 +#: whatsnew/3.7.rst:1614 msgid "" ":meth:`SimpleXMLRPCDispatcher.register_function ` can now be used as a decorator. (Contributed by " "Xiang Zhang in :issue:`7769`.)" msgstr "" -#: whatsnew/3.7.rst:1619 +#: whatsnew/3.7.rst:1620 msgid "zipapp" msgstr "zipapp" -#: whatsnew/3.7.rst:1621 +#: whatsnew/3.7.rst:1622 msgid "" "Function :func:`~zipapp.create_archive` now accepts an optional *filter* " "argument to allow the user to select which files should be included in the " "archive. (Contributed by Irmen de Jong in :issue:`31072`.)" msgstr "" -#: whatsnew/3.7.rst:1625 +#: whatsnew/3.7.rst:1626 msgid "" "Function :func:`~zipapp.create_archive` now accepts an optional *compressed* " "argument to generate a compressed archive. A command line option ``--" @@ -2303,27 +2304,27 @@ msgid "" "Zhiming Wang in :issue:`31638`.)" msgstr "" -#: whatsnew/3.7.rst:1632 +#: whatsnew/3.7.rst:1633 msgid "zipfile" msgstr "zipfile" -#: whatsnew/3.7.rst:1634 +#: whatsnew/3.7.rst:1635 msgid "" ":class:`~zipfile.ZipFile` now accepts the new *compresslevel* parameter to " "control the compression level. (Contributed by Bo Bayles in :issue:`21417`.)" msgstr "" -#: whatsnew/3.7.rst:1638 +#: whatsnew/3.7.rst:1639 msgid "" "Subdirectories in archives created by ``ZipFile`` are now stored in " "alphabetical order. (Contributed by Bernhard M. Wiedemann in :issue:`30693`.)" msgstr "" -#: whatsnew/3.7.rst:1644 +#: whatsnew/3.7.rst:1645 msgid "C API Changes" msgstr "" -#: whatsnew/3.7.rst:1646 +#: whatsnew/3.7.rst:1647 msgid "" "A new API for thread-local storage has been implemented. See :ref:" "`whatsnew37-pep539` for an overview and :ref:`thread-specific-storage-api` " @@ -2331,46 +2332,46 @@ msgid "" "`25658`.)" msgstr "" -#: whatsnew/3.7.rst:1651 +#: whatsnew/3.7.rst:1652 msgid "" "The new :ref:`context variables ` functionality exposes a " "number of :ref:`new C APIs `." msgstr "" -#: whatsnew/3.7.rst:1654 +#: whatsnew/3.7.rst:1655 msgid "" "The new :c:func:`PyImport_GetModule` function returns the previously " "imported module with the given name. (Contributed by Eric Snow in :issue:" "`28411`.)" msgstr "" -#: whatsnew/3.7.rst:1658 +#: whatsnew/3.7.rst:1659 msgid "" "The new :c:macro:`Py_RETURN_RICHCOMPARE` macro eases writing rich comparison " "functions. (Contributed by Petr Victorin in :issue:`23699`.)" msgstr "" -#: whatsnew/3.7.rst:1662 +#: whatsnew/3.7.rst:1663 msgid "" "The new :c:macro:`Py_UNREACHABLE` macro can be used to mark unreachable code " "paths. (Contributed by Barry Warsaw in :issue:`31338`.)" msgstr "" -#: whatsnew/3.7.rst:1666 +#: whatsnew/3.7.rst:1667 msgid "" "The :mod:`tracemalloc` now exposes a C API through the new :c:func:" "`PyTraceMalloc_Track` and :c:func:`PyTraceMalloc_Untrack` functions. " "(Contributed by Victor Stinner in :issue:`30054`.)" msgstr "" -#: whatsnew/3.7.rst:1671 +#: whatsnew/3.7.rst:1672 msgid "" "The new :c:func:`import__find__load__start` and :c:func:" "`import__find__load__done` static markers can be used to trace module " "imports. (Contributed by Christian Heimes in :issue:`31574`.)" msgstr "" -#: whatsnew/3.7.rst:1676 +#: whatsnew/3.7.rst:1677 msgid "" "The fields :c:member:`name` and :c:member:`doc` of structures :c:type:" "`PyMemberDef`, :c:type:`PyGetSetDef`, :c:type:`PyStructSequence_Field`, :c:" @@ -2379,34 +2380,34 @@ msgid "" "issue:`28761`.)" msgstr "" -#: whatsnew/3.7.rst:1682 +#: whatsnew/3.7.rst:1683 msgid "" "The result of :c:func:`PyUnicode_AsUTF8AndSize` and :c:func:" "`PyUnicode_AsUTF8` is now of type ``const char *`` rather of ``char *``. " "(Contributed by Serhiy Storchaka in :issue:`28769`.)" msgstr "" -#: whatsnew/3.7.rst:1686 +#: whatsnew/3.7.rst:1687 msgid "" "The result of :c:func:`PyMapping_Keys`, :c:func:`PyMapping_Values` and :c:" "func:`PyMapping_Items` is now always a list, rather than a list or a tuple. " "(Contributed by Oren Milman in :issue:`28280`.)" msgstr "" -#: whatsnew/3.7.rst:1690 +#: whatsnew/3.7.rst:1691 msgid "" "Added functions :c:func:`PySlice_Unpack` and :c:func:" "`PySlice_AdjustIndices`. (Contributed by Serhiy Storchaka in :issue:`27867`.)" msgstr "" -#: whatsnew/3.7.rst:1693 +#: whatsnew/3.7.rst:1694 msgid "" ":c:func:`PyOS_AfterFork` is deprecated in favour of the new functions :c:" "func:`PyOS_BeforeFork`, :c:func:`PyOS_AfterFork_Parent` and :c:func:" "`PyOS_AfterFork_Child`. (Contributed by Antoine Pitrou in :issue:`16500`.)" msgstr "" -#: whatsnew/3.7.rst:1698 +#: whatsnew/3.7.rst:1699 msgid "" "The ``PyExc_RecursionErrorInst`` singleton that was part of the public API " "has been removed as its members being never cleared may cause a segfault " @@ -2414,7 +2415,7 @@ msgid "" "issue:`22898` and :issue:`30697`." msgstr "" -#: whatsnew/3.7.rst:1703 +#: whatsnew/3.7.rst:1704 msgid "" "Added C API support for timezones with timezone constructors :c:func:" "`PyTimeZone_FromOffset` and :c:func:`PyTimeZone_FromOffsetAndName`, and " @@ -2422,7 +2423,7 @@ msgid "" "Contributed by Paul Ganssle in :issue:`10381`." msgstr "" -#: whatsnew/3.7.rst:1708 +#: whatsnew/3.7.rst:1709 msgid "" "The type of results of :c:func:`PyThread_start_new_thread` and :c:func:" "`PyThread_get_thread_ident`, and the *id* parameter of :c:func:" @@ -2430,14 +2431,14 @@ msgid "" "long`. (Contributed by Serhiy Storchaka in :issue:`6532`.)" msgstr "" -#: whatsnew/3.7.rst:1714 +#: whatsnew/3.7.rst:1715 msgid "" ":c:func:`PyUnicode_AsWideCharString` now raises a :exc:`ValueError` if the " "second argument is ``NULL`` and the :c:type:`wchar_t*` string contains null " "characters. (Contributed by Serhiy Storchaka in :issue:`30708`.)" msgstr "" -#: whatsnew/3.7.rst:1718 +#: whatsnew/3.7.rst:1719 msgid "" "Changes to the startup sequence and the management of dynamic memory " "allocators mean that the long documented requirement to call :c:func:" @@ -2448,45 +2449,45 @@ msgid "" "details." msgstr "" -#: whatsnew/3.7.rst:1726 +#: whatsnew/3.7.rst:1727 msgid "" "The new :c:func:`PyInterpreterState_GetID` returns the unique ID for a given " "interpreter. (Contributed by Eric Snow in :issue:`29102`.)" msgstr "" -#: whatsnew/3.7.rst:1730 +#: whatsnew/3.7.rst:1731 msgid "" ":c:func:`Py_DecodeLocale`, :c:func:`Py_EncodeLocale` now use the UTF-8 " "encoding when the :ref:`UTF-8 mode ` is enabled. " "(Contributed by Victor Stinner in :issue:`29240`.)" msgstr "" -#: whatsnew/3.7.rst:1734 +#: whatsnew/3.7.rst:1735 msgid "" ":c:func:`PyUnicode_DecodeLocaleAndSize` and :c:func:`PyUnicode_EncodeLocale` " "now use the current locale encoding for ``surrogateescape`` error handler. " "(Contributed by Victor Stinner in :issue:`29240`.)" msgstr "" -#: whatsnew/3.7.rst:1738 +#: whatsnew/3.7.rst:1739 msgid "" "The *start* and *end* parameters of :c:func:`PyUnicode_FindChar` are now " "adjusted to behave like string slices. (Contributed by Xiang Zhang in :issue:" "`28822`.)" msgstr "" -#: whatsnew/3.7.rst:1744 +#: whatsnew/3.7.rst:1745 msgid "Build Changes" msgstr "" -#: whatsnew/3.7.rst:1746 +#: whatsnew/3.7.rst:1747 msgid "" "Support for building ``--without-threads`` has been removed. The :mod:" "`threading` module is now always available. (Contributed by Antoine Pitrou " "in :issue:`31370`.)." msgstr "" -#: whatsnew/3.7.rst:1750 +#: whatsnew/3.7.rst:1751 msgid "" "A full copy of libffi is no longer bundled for use when building the :mod:" "`_ctypes ` module on non-OSX UNIX platforms. An installed copy of " @@ -2494,7 +2495,7 @@ msgid "" "(Contributed by Zachary Ware in :issue:`27979`.)" msgstr "" -#: whatsnew/3.7.rst:1755 +#: whatsnew/3.7.rst:1756 msgid "" "The Windows build process no longer depends on Subversion to pull in " "external sources, a Python script is used to download zipfiles from GitHub " @@ -2503,7 +2504,7 @@ msgid "" "by Zachary Ware in :issue:`30450`.)" msgstr "" -#: whatsnew/3.7.rst:1761 +#: whatsnew/3.7.rst:1762 msgid "" "The :mod:`ssl` module requires OpenSSL 1.0.2 or 1.1 compatible libssl. " "OpenSSL 1.0.1 has reached end of lifetime on 2016-12-31 and is no longer " @@ -2511,12 +2512,12 @@ msgid "" "up to version 2.6.4 are missing required OpenSSL 1.0.2 APIs." msgstr "" -#: whatsnew/3.7.rst:1770 +#: whatsnew/3.7.rst:1771 #, fuzzy msgid "Optimizations" msgstr "Optimisation" -#: whatsnew/3.7.rst:1772 +#: whatsnew/3.7.rst:1773 msgid "" "The overhead of calling many methods of various standard library classes " "implemented in C has been significantly reduced by porting more code to use " @@ -2524,85 +2525,85 @@ msgid "" "`29300`, :issue:`29507`, :issue:`29452`, and :issue:`29286`.)" msgstr "" -#: whatsnew/3.7.rst:1778 +#: whatsnew/3.7.rst:1779 msgid "" "Various optimizations have reduced Python startup time by 10% on Linux and " "up to 30% on macOS. (Contributed by Victor Stinner, INADA Naoki in :issue:" "`29585`, and Ivan Levkivskyi in :issue:`31333`.)" msgstr "" -#: whatsnew/3.7.rst:1783 +#: whatsnew/3.7.rst:1784 msgid "" "Method calls are now up to 20% faster due to the bytecode changes which " "avoid creating bound method instances. (Contributed by Yury Selivanov and " "INADA Naoki in :issue:`26110`.)" msgstr "" -#: whatsnew/3.7.rst:1789 +#: whatsnew/3.7.rst:1790 msgid "" "The :mod:`asyncio` module received a number of notable optimizations for " "commonly used functions:" msgstr "" -#: whatsnew/3.7.rst:1792 +#: whatsnew/3.7.rst:1793 msgid "" "The :func:`asyncio.get_event_loop` function has been reimplemented in C to " "make it up to 15 times faster. (Contributed by Yury Selivanov in :issue:" "`32296`.)" msgstr "" -#: whatsnew/3.7.rst:1796 +#: whatsnew/3.7.rst:1797 msgid "" ":class:`asyncio.Future` callback management has been optimized. (Contributed " "by Yury Selivanov in :issue:`32348`.)" msgstr "" -#: whatsnew/3.7.rst:1799 +#: whatsnew/3.7.rst:1800 msgid "" ":func:`asyncio.gather` is now up to 15% faster. (Contributed by Yury " "Selivanov in :issue:`32355`.)" msgstr "" -#: whatsnew/3.7.rst:1802 +#: whatsnew/3.7.rst:1803 msgid "" ":func:`asyncio.sleep` is now up to 2 times faster when the *delay* argument " "is zero or negative. (Contributed by Andrew Svetlov in :issue:`32351`.)" msgstr "" -#: whatsnew/3.7.rst:1806 +#: whatsnew/3.7.rst:1807 msgid "" "The performance overhead of asyncio debug mode has been reduced. " "(Contributed by Antoine Pitrou in :issue:`31970`.)" msgstr "" -#: whatsnew/3.7.rst:1809 +#: whatsnew/3.7.rst:1810 msgid "" "As a result of :ref:`PEP 560 work `, the import time of :" "mod:`typing` has been reduced by a factor of 7, and many typing operations " "are now faster. (Contributed by Ivan Levkivskyi in :issue:`32226`.)" msgstr "" -#: whatsnew/3.7.rst:1814 +#: whatsnew/3.7.rst:1815 msgid "" ":func:`sorted` and :meth:`list.sort` have been optimized for common cases to " "be up to 40-75% faster. (Contributed by Elliot Gorokhovsky in :issue:" "`28685`.)" msgstr "" -#: whatsnew/3.7.rst:1818 +#: whatsnew/3.7.rst:1819 msgid "" ":meth:`dict.copy` is now up to 5.5 times faster. (Contributed by Yury " "Selivanov in :issue:`31179`.)" msgstr "" -#: whatsnew/3.7.rst:1821 +#: whatsnew/3.7.rst:1822 msgid "" ":func:`hasattr` and :func:`getattr` are now about 4 times faster when *name* " "is not found and *obj* does not override :meth:`object.__getattr__` or :meth:" "`object.__getattribute__`. (Contributed by INADA Naoki in :issue:`32544`.)" msgstr "" -#: whatsnew/3.7.rst:1826 +#: whatsnew/3.7.rst:1827 msgid "" "Searching for certain Unicode characters (like Ukrainian capital \"Є\") in a " "string was up to 25 times slower than searching for other characters. It is " @@ -2610,7 +2611,7 @@ msgid "" "in :issue:`24821`.)" msgstr "" -#: whatsnew/3.7.rst:1831 +#: whatsnew/3.7.rst:1832 msgid "" "The :func:`collections.namedtuple` factory has been reimplemented to make " "the creation of named tuples 4 to 6 times faster. (Contributed by Jelle " @@ -2618,33 +2619,33 @@ msgid "" "Raymond Hettinger in :issue:`28638`.)" msgstr "" -#: whatsnew/3.7.rst:1836 +#: whatsnew/3.7.rst:1837 msgid "" ":meth:`date.fromordinal` and :meth:`date.fromtimestamp` are now up to 30% " "faster in the common case. (Contributed by Paul Ganssle in :issue:`32403`.)" msgstr "" -#: whatsnew/3.7.rst:1840 +#: whatsnew/3.7.rst:1841 msgid "" "The :func:`os.fwalk` function is now up to 2 times faster thanks to the use " "of :func:`os.scandir`. (Contributed by Serhiy Storchaka in :issue:`25996`.)" msgstr "" -#: whatsnew/3.7.rst:1844 +#: whatsnew/3.7.rst:1845 msgid "" "The speed of the :func:`shutil.rmtree` function has been improved by 20--40% " "thanks to the use of the :func:`os.scandir` function. (Contributed by Serhiy " "Storchaka in :issue:`28564`.)" msgstr "" -#: whatsnew/3.7.rst:1848 +#: whatsnew/3.7.rst:1849 msgid "" "Optimized case-insensitive matching and searching of :mod:`regular " "expressions `. Searching some patterns can now be up to 20 times " "faster. (Contributed by Serhiy Storchaka in :issue:`30285`.)" msgstr "" -#: whatsnew/3.7.rst:1852 +#: whatsnew/3.7.rst:1853 msgid "" ":func:`re.compile` now converts ``flags`` parameter to int object if it is " "``RegexFlag``. It is now as fast as Python 3.5, and faster than Python 3.6 " @@ -2652,7 +2653,7 @@ msgid "" "`31671`.)" msgstr "" -#: whatsnew/3.7.rst:1857 +#: whatsnew/3.7.rst:1858 msgid "" "The :meth:`~selectors.BaseSelector.modify` methods of classes :class:" "`selectors.EpollSelector`, :class:`selectors.PollSelector` and :class:" @@ -2660,7 +2661,7 @@ msgid "" "(Contributed by Giampaolo Rodola' in :issue:`30014`)" msgstr "" -#: whatsnew/3.7.rst:1862 +#: whatsnew/3.7.rst:1863 msgid "" "Constant folding has been moved from the peephole optimizer to the new AST " "optimizer, which is able perform optimizations more consistently. " @@ -2668,7 +2669,7 @@ msgid "" "`11549`.)" msgstr "" -#: whatsnew/3.7.rst:1867 +#: whatsnew/3.7.rst:1868 msgid "" "Most functions and methods in :mod:`abc` have been rewritten in C. This " "makes creation of abstract base classes, and calling :func:`isinstance` and :" @@ -2677,7 +2678,7 @@ msgid "" "`31333`)" msgstr "" -#: whatsnew/3.7.rst:1873 +#: whatsnew/3.7.rst:1874 msgid "" "Significant speed improvements to alternate constructors for :class:" "`datetime.date` and :class:`datetime.datetime` by using fast-path " @@ -2685,7 +2686,7 @@ msgid "" "in :issue:`32403`)" msgstr "" -#: whatsnew/3.7.rst:1878 +#: whatsnew/3.7.rst:1879 msgid "" "The speed of comparison of :class:`array.array` instances has been improved " "considerably in certain cases. It is now from 10x to 70x faster when " @@ -2693,18 +2694,18 @@ msgid "" "Adrian Wielgosik in :issue:`24700`.)" msgstr "" -#: whatsnew/3.7.rst:1883 +#: whatsnew/3.7.rst:1884 msgid "" "The :func:`math.erf` and :func:`math.erfc` functions now use the (faster) C " "library implementation on most platforms. (Contributed by Serhiy Storchaka " "in :issue:`26121`.)" msgstr "" -#: whatsnew/3.7.rst:1889 +#: whatsnew/3.7.rst:1890 msgid "Other CPython Implementation Changes" msgstr "" -#: whatsnew/3.7.rst:1891 +#: whatsnew/3.7.rst:1892 msgid "" "Trace hooks may now opt out of receiving the ``line`` and opt into receiving " "the ``opcode`` events from the interpreter by setting the corresponding new " @@ -2712,7 +2713,7 @@ msgid "" "traced. (Contributed by Nick Coghlan in :issue:`31344`.)" msgstr "" -#: whatsnew/3.7.rst:1896 +#: whatsnew/3.7.rst:1897 msgid "" "Fixed some consistency problems with namespace package module attributes. " "Namespace module objects now have an ``__file__`` that is set to ``None`` " @@ -2723,14 +2724,14 @@ msgid "" "`32303`." msgstr "" -#: whatsnew/3.7.rst:1904 +#: whatsnew/3.7.rst:1905 msgid "" "The :func:`locals` dictionary now displays in the lexical order that " "variables were defined. Previously, the order was undefined. (Contributed " "by Raymond Hettinger in :issue:`32690`.)" msgstr "" -#: whatsnew/3.7.rst:1908 +#: whatsnew/3.7.rst:1909 msgid "" "The :mod:`distutils` ``upload`` command no longer tries to change CR end-of-" "line characters to CRLF. This fixes a corruption issue with sdists that " @@ -2738,11 +2739,11 @@ msgid "" "`32304`.)" msgstr "" -#: whatsnew/3.7.rst:1915 +#: whatsnew/3.7.rst:1916 msgid "Deprecated Python Behavior" msgstr "" -#: whatsnew/3.7.rst:1917 +#: whatsnew/3.7.rst:1918 msgid "" "Yield expressions (both ``yield`` and ``yield from`` clauses) are now " "deprecated in comprehensions and generator expressions (aside from the " @@ -2756,7 +2757,7 @@ msgid "" "Storchaka in :issue:`10544`.)" msgstr "" -#: whatsnew/3.7.rst:1928 +#: whatsnew/3.7.rst:1929 msgid "" "Returning a subclass of :class:`complex` from :meth:`object.__complex__` is " "deprecated and will be an error in future Python versions. This makes " @@ -2764,22 +2765,22 @@ msgid "" "__float__`. (Contributed by Serhiy Storchaka in :issue:`28894`.)" msgstr "" -#: whatsnew/3.7.rst:1937 +#: whatsnew/3.7.rst:1938 msgid "Deprecated Python modules, functions and methods" msgstr "" -#: whatsnew/3.7.rst:1940 +#: whatsnew/3.7.rst:1941 msgid "aifc" msgstr "aifc" -#: whatsnew/3.7.rst:1942 +#: whatsnew/3.7.rst:1943 msgid "" ":func:`aifc.openfp` has been deprecated and will be removed in Python 3.9. " "Use :func:`aifc.open` instead. (Contributed by Brian Curtin in :issue:" "`31985`.)" msgstr "" -#: whatsnew/3.7.rst:1952 +#: whatsnew/3.7.rst:1953 msgid "" "Support for directly ``await``-ing instances of :class:`asyncio.Lock` and " "other asyncio synchronization primitives has been deprecated. An " @@ -2788,14 +2789,14 @@ msgid "" "`32253`.)" msgstr "" -#: whatsnew/3.7.rst:1958 +#: whatsnew/3.7.rst:1959 msgid "" "The :meth:`asyncio.Task.current_task` and :meth:`asyncio.Task.all_tasks` " "methods have been deprecated. (Contributed by Andrew Svetlov in :issue:" "`32250`.)" msgstr "" -#: whatsnew/3.7.rst:1966 +#: whatsnew/3.7.rst:1967 msgid "" "In Python 3.8, the abstract base classes in :mod:`collections.abc` will no " "longer be exposed in the regular :mod:`collections` module. This will help " @@ -2803,7 +2804,7 @@ msgid "" "base classes. (Contributed by Serhiy Storchaka in :issue:`25988`.)" msgstr "" -#: whatsnew/3.7.rst:1976 +#: whatsnew/3.7.rst:1977 msgid "" ":mod:`dbm.dumb` now supports reading read-only files and no longer writes " "the index file when it is not changed. A deprecation warning is now emitted " @@ -2812,7 +2813,7 @@ msgid "" "Storchaka in :issue:`28847`.)" msgstr "" -#: whatsnew/3.7.rst:1986 +#: whatsnew/3.7.rst:1987 msgid "" "In Python 3.8, attempting to check for non-Enum objects in :class:`Enum` " "classes will raise a :exc:`TypeError` (e.g. ``1 in Color``); similarly, " @@ -2822,18 +2823,18 @@ msgid "" "`33217`.)" msgstr "" -#: whatsnew/3.7.rst:1995 +#: whatsnew/3.7.rst:1996 msgid "gettext" msgstr "" -#: whatsnew/3.7.rst:1997 +#: whatsnew/3.7.rst:1998 msgid "" "Using non-integer value for selecting a plural form in :mod:`gettext` is now " "deprecated. It never correctly worked. (Contributed by Serhiy Storchaka in :" "issue:`28692`.)" msgstr "" -#: whatsnew/3.7.rst:2005 +#: whatsnew/3.7.rst:2006 msgid "" "Methods :meth:`MetaPathFinder.find_module() ` (replaced by :meth:`MetaPathFinder.find_spec() ` provides an " "example of using the SSL :source:`compatibility testing infrastructure " @@ -2994,42 +2995,42 @@ msgid "" "against OpenSSL 1.1.0 rather than an outdated system provided OpenSSL." msgstr "" -#: whatsnew/3.7.rst:2130 +#: whatsnew/3.7.rst:2131 msgid "API and Feature Removals" msgstr "" -#: whatsnew/3.7.rst:2132 +#: whatsnew/3.7.rst:2133 msgid "The following features and APIs have been removed from Python 3.7:" msgstr "" -#: whatsnew/3.7.rst:2134 +#: whatsnew/3.7.rst:2135 msgid "" "The ``os.stat_float_times()`` function has been removed. It was introduced " "in Python 2.3 for backward compatibility with Python 2.2, and was deprecated " "since Python 3.1." msgstr "" -#: whatsnew/3.7.rst:2138 +#: whatsnew/3.7.rst:2139 msgid "" "Unknown escapes consisting of ``'\\'`` and an ASCII letter in replacement " "templates for :func:`re.sub` were deprecated in Python 3.5, and will now " "cause an error." msgstr "" -#: whatsnew/3.7.rst:2142 +#: whatsnew/3.7.rst:2143 msgid "" "Removed support of the *exclude* argument in :meth:`tarfile.TarFile.add`. It " "was deprecated in Python 2.7 and 3.2. Use the *filter* argument instead." msgstr "" -#: whatsnew/3.7.rst:2145 +#: whatsnew/3.7.rst:2146 msgid "" "The ``splitunc()`` function in the :mod:`ntpath` module was deprecated in " "Python 3.1, and has now been removed. Use the :func:`~os.path.splitdrive` " "function instead." msgstr "" -#: whatsnew/3.7.rst:2149 +#: whatsnew/3.7.rst:2150 msgid "" ":func:`collections.namedtuple` no longer supports the *verbose* parameter or " "``_source`` attribute which showed the generated source code for the named " @@ -3038,14 +3039,14 @@ msgid "" "Naoki, Serhiy Storchaka, and Raymond Hettinger in :issue:`28638`.)" msgstr "" -#: whatsnew/3.7.rst:2155 +#: whatsnew/3.7.rst:2156 msgid "" "Functions :func:`bool`, :func:`float`, :func:`list` and :func:`tuple` no " "longer take keyword arguments. The first argument of :func:`int` can now be " "passed only as positional argument." msgstr "" -#: whatsnew/3.7.rst:2159 +#: whatsnew/3.7.rst:2160 msgid "" "Removed previously deprecated in Python 2.4 classes ``Plist``, ``Dict`` and " "``_InternalDict`` in the :mod:`plistlib` module. Dict values in the result " @@ -3054,7 +3055,7 @@ msgid "" "access to access items of these dictionaries." msgstr "" -#: whatsnew/3.7.rst:2165 +#: whatsnew/3.7.rst:2166 msgid "" "The ``asyncio.windows_utils.socketpair()`` function has been removed. Use " "the :func:`socket.socketpair` function instead, it is available on all " @@ -3062,14 +3063,14 @@ msgid "" "alias to ``socket.socketpair`` on Python 3.5 and newer." msgstr "" -#: whatsnew/3.7.rst:2171 +#: whatsnew/3.7.rst:2172 msgid "" ":mod:`asyncio` no longer exports the :mod:`selectors` and :mod:`_overlapped` " "modules as ``asyncio.selectors`` and ``asyncio._overlapped``. Replace ``from " "asyncio import selectors`` with ``import selectors``." msgstr "" -#: whatsnew/3.7.rst:2176 +#: whatsnew/3.7.rst:2177 msgid "" "Direct instantiation of :class:`ssl.SSLSocket` and :class:`ssl.SSLObject` " "objects is now prohibited. The constructors were never documented, tested, " @@ -3078,17 +3079,17 @@ msgid "" "in :issue:`32951`.)" msgstr "" -#: whatsnew/3.7.rst:2182 +#: whatsnew/3.7.rst:2183 msgid "" "The unused :mod:`distutils` ``install_misc`` command has been removed. " "(Contributed by Eric N. Vander Weele in :issue:`29218`.)" msgstr "" -#: whatsnew/3.7.rst:2187 +#: whatsnew/3.7.rst:2188 msgid "Module Removals" msgstr "" -#: whatsnew/3.7.rst:2189 +#: whatsnew/3.7.rst:2190 msgid "" "The ``fpectl`` module has been removed. It was never enabled by default, " "never worked correctly on x86-64, and it changed the Python ABI in ways that " @@ -3096,11 +3097,11 @@ msgid "" "Smith in :issue:`29137`.)" msgstr "" -#: whatsnew/3.7.rst:2472 +#: whatsnew/3.7.rst:2473 msgid "Windows-only Changes" msgstr "" -#: whatsnew/3.7.rst:2198 +#: whatsnew/3.7.rst:2199 msgid "" "The python launcher, (py.exe), can accept 32 & 64 bit specifiers **without** " "having to specify a minor version as well. So ``py -3-32`` and ``py -3-64`` " @@ -3110,7 +3111,7 @@ msgid "" "(Contributed by Steve Barnes in :issue:`30291`.)" msgstr "" -#: whatsnew/3.7.rst:2205 +#: whatsnew/3.7.rst:2206 msgid "" "The launcher can be run as ``py -0`` to produce a list of the installed " "pythons, *with default marked with an asterisk*. Running ``py -0p`` will " @@ -3119,29 +3120,29 @@ msgid "" "(Contributed by Steve Barnes in :issue:`30362`.)" msgstr "" -#: whatsnew/3.7.rst:2215 +#: whatsnew/3.7.rst:2216 #, fuzzy msgid "Porting to Python 3.7" msgstr "Portage vers Python 2.7" -#: whatsnew/3.7.rst:2217 +#: whatsnew/3.7.rst:2218 msgid "" "This section lists previously described changes and other bugfixes that may " "require changes to your code." msgstr "" -#: whatsnew/3.7.rst:2222 +#: whatsnew/3.7.rst:2223 msgid "Changes in Python Behavior" msgstr "" -#: whatsnew/3.7.rst:2224 +#: whatsnew/3.7.rst:2225 msgid "" ":keyword:`async` and :keyword:`await` names are now reserved keywords. Code " "using these names as identifiers will now raise a :exc:`SyntaxError`. " "(Contributed by Jelle Zijlstra in :issue:`30406`.)" msgstr "" -#: whatsnew/3.7.rst:2228 +#: whatsnew/3.7.rst:2229 msgid "" ":pep:`479` is enabled for all code in Python 3.7, meaning that :exc:" "`StopIteration` exceptions raised directly or indirectly in coroutines and " @@ -3149,19 +3150,19 @@ msgid "" "by Yury Selivanov in :issue:`32670`.)" msgstr "" -#: whatsnew/3.7.rst:2234 +#: whatsnew/3.7.rst:2235 msgid "" ":meth:`object.__aiter__` methods can no longer be declared as asynchronous. " "(Contributed by Yury Selivanov in :issue:`31709`.)" msgstr "" -#: whatsnew/3.7.rst:2237 +#: whatsnew/3.7.rst:2238 msgid "" "Due to an oversight, earlier Python versions erroneously accepted the " "following syntax::" msgstr "" -#: whatsnew/3.7.rst:2245 +#: whatsnew/3.7.rst:2246 msgid "" "Python 3.7 now correctly raises a :exc:`SyntaxError`, as a generator " "expression always needs to be directly inside a set of parentheses and " @@ -3170,7 +3171,7 @@ msgid "" "`32012` and :issue:`32023`.)" msgstr "" -#: whatsnew/3.7.rst:2251 +#: whatsnew/3.7.rst:2252 msgid "" "When using the :option:`-m` switch, the initial working directory is now " "added to :data:`sys.path`, rather than an empty string (which dynamically " @@ -3182,11 +3183,11 @@ msgid "" "place)." msgstr "" -#: whatsnew/3.7.rst:2261 +#: whatsnew/3.7.rst:2262 msgid "Changes in the Python API" msgstr "" -#: whatsnew/3.7.rst:2263 +#: whatsnew/3.7.rst:2264 msgid "" ":meth:`socketserver.ThreadingMixIn.server_close` now waits until all non-" "daemon threads complete. Set the new :attr:`socketserver.ThreadingMixIn." @@ -3194,7 +3195,7 @@ msgid "" "(Contributed by Victor Stinner in :issue:`31233` and :issue:`33540`.)" msgstr "" -#: whatsnew/3.7.rst:2269 +#: whatsnew/3.7.rst:2270 msgid "" ":meth:`socketserver.ForkingMixIn.server_close` now waits until all child " "processes complete. Set the new :attr:`socketserver.ForkingMixIn." @@ -3202,21 +3203,21 @@ msgid "" "(Contributed by Victor Stinner in :issue:`31151` and :issue:`33540`.)" msgstr "" -#: whatsnew/3.7.rst:2275 +#: whatsnew/3.7.rst:2276 msgid "" "The :func:`locale.localeconv` function now temporarily sets the ``LC_CTYPE`` " "locale to the value of ``LC_NUMERIC`` in some cases. (Contributed by Victor " "Stinner in :issue:`31900`.)" msgstr "" -#: whatsnew/3.7.rst:2279 +#: whatsnew/3.7.rst:2280 msgid "" ":meth:`pkgutil.walk_packages` now raises a :exc:`ValueError` if *path* is a " "string. Previously an empty list was returned. (Contributed by Sanyam " "Khurana in :issue:`24744`.)" msgstr "" -#: whatsnew/3.7.rst:2283 +#: whatsnew/3.7.rst:2284 msgid "" "A format string argument for :meth:`string.Formatter.format` is now :ref:" "`positional-only `. Passing it as a keyword " @@ -3224,7 +3225,7 @@ msgid "" "issue:`29193`.)" msgstr "" -#: whatsnew/3.7.rst:2288 +#: whatsnew/3.7.rst:2289 msgid "" "Attributes :attr:`~http.cookies.Morsel.key`, :attr:`~http.cookies.Morsel." "value` and :attr:`~http.cookies.Morsel.coded_value` of class :class:`http." @@ -3233,7 +3234,7 @@ msgid "" "them. (Contributed by Serhiy Storchaka in :issue:`29192`.)" msgstr "" -#: whatsnew/3.7.rst:2296 +#: whatsnew/3.7.rst:2297 msgid "" "The *mode* argument of :func:`os.makedirs` no longer affects the file " "permission bits of newly-created intermediate-level directories. To set " @@ -3241,13 +3242,13 @@ msgid "" "``makedirs()``. (Contributed by Serhiy Storchaka in :issue:`19930`.)" msgstr "" -#: whatsnew/3.7.rst:2302 +#: whatsnew/3.7.rst:2303 msgid "" "The :attr:`struct.Struct.format` type is now :class:`str` instead of :class:" "`bytes`. (Contributed by Victor Stinner in :issue:`21071`.)" msgstr "" -#: whatsnew/3.7.rst:2305 +#: whatsnew/3.7.rst:2306 msgid "" ":func:`~cgi.parse_multipart` now accepts the *encoding* and *errors* " "arguments and returns the same results as :class:`~FieldStorage`: for non-" @@ -3255,27 +3256,27 @@ msgid "" "(Contributed by Pierre Quentel in :issue:`29979`.)" msgstr "" -#: whatsnew/3.7.rst:2311 +#: whatsnew/3.7.rst:2312 msgid "" "Due to internal changes in :mod:`socket`, calling :func:`socket.fromshare` " "on a socket created by :func:`socket.share ` in older " "Python versions is not supported." msgstr "" -#: whatsnew/3.7.rst:2315 +#: whatsnew/3.7.rst:2316 msgid "" "``repr`` for :exc:`BaseException` has changed to not include the trailing " "comma. Most exceptions are affected by this change. (Contributed by Serhiy " "Storchaka in :issue:`30399`.)" msgstr "" -#: whatsnew/3.7.rst:2319 +#: whatsnew/3.7.rst:2320 msgid "" "``repr`` for :class:`datetime.timedelta` has changed to include the keyword " "arguments in the output. (Contributed by Utkarsh Upadhyay in :issue:`30302`.)" msgstr "" -#: whatsnew/3.7.rst:2322 +#: whatsnew/3.7.rst:2323 msgid "" "Because :func:`shutil.rmtree` is now implemented using the :func:`os." "scandir` function, the user specified handler *onerror* is now called with " @@ -3283,7 +3284,7 @@ msgid "" "directory is failed." msgstr "" -#: whatsnew/3.7.rst:2327 +#: whatsnew/3.7.rst:2328 msgid "" "Support for nested sets and set operations in regular expressions as in " "`Unicode Technical Standard #18`_ might be added in the future. This would " @@ -3294,7 +3295,7 @@ msgid "" "with a backslash. (Contributed by Serhiy Storchaka in :issue:`30349`.)" msgstr "" -#: whatsnew/3.7.rst:2338 +#: whatsnew/3.7.rst:2339 msgid "" "The result of splitting a string on a :mod:`regular expression ` that " "could match an empty string has been changed. For example splitting on " @@ -3305,7 +3306,7 @@ msgid "" "patterns since Python 3.5." msgstr "" -#: whatsnew/3.7.rst:2347 +#: whatsnew/3.7.rst:2348 msgid "" "For patterns that match both empty and non-empty strings, the result of " "searching for all matches may also be changed in other cases. For example " @@ -3315,7 +3316,7 @@ msgid "" "as ``r'(?m)^[^\\S\\n]*$'``." msgstr "" -#: whatsnew/3.7.rst:2354 +#: whatsnew/3.7.rst:2355 msgid "" ":func:`re.sub()` now replaces empty matches adjacent to a previous non-empty " "match. For example ``re.sub('x*', '-', 'abxd')`` returns now ``'-a-b--d-'`` " @@ -3323,25 +3324,25 @@ msgid "" "and the second minus replaces an empty string between 'x' and 'd')." msgstr "" -#: whatsnew/3.7.rst:2360 +#: whatsnew/3.7.rst:2361 msgid "(Contributed by Serhiy Storchaka in :issue:`25054` and :issue:`32308`.)" msgstr "" -#: whatsnew/3.7.rst:2362 +#: whatsnew/3.7.rst:2363 msgid "" "Change :func:`re.escape` to only escape regex special characters instead of " "escaping all characters other than ASCII letters, numbers, and ``'_'``. " "(Contributed by Serhiy Storchaka in :issue:`29995`.)" msgstr "" -#: whatsnew/3.7.rst:2366 +#: whatsnew/3.7.rst:2367 msgid "" ":class:`tracemalloc.Traceback` frames are now sorted from oldest to most " "recent to be more consistent with :mod:`traceback`. (Contributed by Jesse " "Bakker in :issue:`32121`.)" msgstr "" -#: whatsnew/3.7.rst:2370 +#: whatsnew/3.7.rst:2371 msgid "" "On OSes that support :const:`socket.SOCK_NONBLOCK` or :const:`socket." "SOCK_CLOEXEC` bit flags, the :attr:`socket.type ` no " @@ -3350,7 +3351,7 @@ msgid "" "Selivanov in :issue:`32331`.)" msgstr "" -#: whatsnew/3.7.rst:2377 +#: whatsnew/3.7.rst:2378 msgid "" "On Windows the default for the *close_fds* argument of :class:`subprocess." "Popen` was changed from :const:`False` to :const:`True` when redirecting the " @@ -3360,7 +3361,7 @@ msgid "" "`STARTUPINFO.lpAttributeList `." msgstr "" -#: whatsnew/3.7.rst:2385 +#: whatsnew/3.7.rst:2386 msgid "" ":meth:`importlib.machinery.PathFinder.invalidate_caches` -- which implicitly " "affects :func:`importlib.invalidate_caches` -- now deletes entries in :data:" @@ -3368,7 +3369,7 @@ msgid "" "Cannon in :issue:`33169`.)" msgstr "" -#: whatsnew/3.7.rst:2390 +#: whatsnew/3.7.rst:2391 msgid "" "In :mod:`asyncio`, :meth:`loop.sock_recv() `, :meth:" "`loop.sock_sendall() `, :meth:`loop.sock_accept() " @@ -3379,21 +3380,21 @@ msgid "" "(Contributed by Yury Selivanov in :issue:`32327`.)" msgstr "" -#: whatsnew/3.7.rst:2401 +#: whatsnew/3.7.rst:2402 msgid "" ":attr:`asyncio.Server.sockets` now returns a copy of the internal list of " "server sockets, instead of returning it directly. (Contributed by Yury " "Selivanov in :issue:`32662`.)" msgstr "" -#: whatsnew/3.7.rst:2405 +#: whatsnew/3.7.rst:2406 msgid "" ":attr:`Struct.format ` is now a :class:`str` instance " "instead of a :class:`bytes` instance. (Contributed by Victor Stinner in :" "issue:`21071`.)" msgstr "" -#: whatsnew/3.7.rst:2409 +#: whatsnew/3.7.rst:2410 msgid "" ":mod:`argparse` subparsers can now be made mandatory by passing " "``required=True`` to :meth:`ArgumentParser.add_subparsers() ` will now " "consistently raise an exception when a date falls outside of the " @@ -3420,13 +3421,13 @@ msgid "" "date`. (Contributed by Alexander Belopolsky in :issue:`28292`.)" msgstr "" -#: whatsnew/3.7.rst:2427 +#: whatsnew/3.7.rst:2428 msgid "" ":class:`collections.ChainMap` now preserves the order of the underlying " "mappings. (Contributed by Raymond Hettinger in :issue:`32792`.)" msgstr "" -#: whatsnew/3.7.rst:2430 +#: whatsnew/3.7.rst:2431 msgid "" "The ``submit()`` method of :class:`concurrent.futures.ThreadPoolExecutor` " "and :class:`concurrent.futures.ProcessPoolExecutor` now raises a :exc:" @@ -3434,7 +3435,7 @@ msgid "" "Nemec in :issue:`33097`.)" msgstr "" -#: whatsnew/3.7.rst:2435 +#: whatsnew/3.7.rst:2436 msgid "" "The :class:`configparser.ConfigParser` constructor now uses ``read_dict()`` " "to process the default values, making its behavior consistent with the rest " @@ -3443,7 +3444,7 @@ msgid "" "in :issue:`23835`.)" msgstr "" -#: whatsnew/3.7.rst:2441 +#: whatsnew/3.7.rst:2442 msgid "" "Several undocumented internal imports were removed. One example is that ``os." "errno`` is no longer available; use ``import errno`` directly instead. Note " @@ -3451,11 +3452,11 @@ msgid "" "notice, even in micro version releases." msgstr "" -#: whatsnew/3.7.rst:2449 +#: whatsnew/3.7.rst:2450 msgid "Changes in the C API" msgstr "" -#: whatsnew/3.7.rst:2451 +#: whatsnew/3.7.rst:2452 msgid "" "The function :c:func:`PySlice_GetIndicesEx` is considered unsafe for " "resizable sequences. If the slice indices are not instances of :class:" @@ -3467,34 +3468,34 @@ msgid "" "Storchaka in :issue:`27867`.)" msgstr "" -#: whatsnew/3.7.rst:2462 +#: whatsnew/3.7.rst:2463 msgid "CPython bytecode changes" msgstr "" -#: whatsnew/3.7.rst:2464 +#: whatsnew/3.7.rst:2465 msgid "" "There are two new opcodes: :opcode:`LOAD_METHOD` and :opcode:`CALL_METHOD`. " "(Contributed by Yury Selivanov and INADA Naoki in :issue:`26110`.)" msgstr "" -#: whatsnew/3.7.rst:2467 +#: whatsnew/3.7.rst:2468 msgid "" "The :opcode:`STORE_ANNOTATION` opcode has been removed. (Contributed by Mark " "Shannon in :issue:`32550`.)" msgstr "" -#: whatsnew/3.7.rst:2474 +#: whatsnew/3.7.rst:2475 msgid "" "The file used to override :data:`sys.path` is now called ``._pth`` instead of ``'sys.path'``. See :ref:`finding_modules` for " "more information. (Contributed by Steve Dower in :issue:`28137`.)" msgstr "" -#: whatsnew/3.7.rst:2481 +#: whatsnew/3.7.rst:2482 msgid "Other CPython implementation changes" msgstr "" -#: whatsnew/3.7.rst:2483 +#: whatsnew/3.7.rst:2484 msgid "" "In preparation for potential future changes to the public CPython runtime " "initialization API (see :pep:`432` for an initial, but somewhat outdated, " @@ -3509,21 +3510,21 @@ msgid "" "Stinner in a number of other issues). Some known details affected:" msgstr "" -#: whatsnew/3.7.rst:2496 +#: whatsnew/3.7.rst:2497 msgid "" ":c:func:`PySys_AddWarnOptionUnicode` is not currently usable by embedding " "applications due to the requirement to create a Unicode object prior to " "calling `Py_Initialize`. Use :c:func:`PySys_AddWarnOption` instead." msgstr "" -#: whatsnew/3.7.rst:2500 +#: whatsnew/3.7.rst:2501 msgid "" "warnings filters added by an embedding application with :c:func:" "`PySys_AddWarnOption` should now more consistently take precedence over the " "default filters set by the interpreter" msgstr "" -#: whatsnew/3.7.rst:2504 +#: whatsnew/3.7.rst:2505 msgid "" "Due to changes in the way the default warnings filters are configured, " "setting :c:data:`Py_BytesWarningFlag` to a value greater than one is no " @@ -3533,7 +3534,7 @@ msgid "" "BytesWarning`` warnings filter added to convert them to exceptions." msgstr "" -#: whatsnew/3.7.rst:2511 +#: whatsnew/3.7.rst:2512 msgid "" "Due to a change in the way docstrings are handled by the compiler, the " "implicit ``return None`` in a function body consisting solely of a docstring " @@ -3541,7 +3542,7 @@ msgid "" "function's header line." msgstr "" -#: whatsnew/3.7.rst:2516 +#: whatsnew/3.7.rst:2517 msgid "" "The current exception state has been moved from the frame object to the co-" "routine. This simplified the interpreter and fixed a couple of obscure bugs " @@ -3549,11 +3550,11 @@ msgid "" "(Contributed by Mark Shannon in :issue:`25612`.)" msgstr "" -#: whatsnew/3.7.rst:2522 +#: whatsnew/3.7.rst:2523 msgid "Notable changes in Python 3.7.1" msgstr "" -#: whatsnew/3.7.rst:2524 +#: whatsnew/3.7.rst:2525 msgid "" "Starting in 3.7.1, :c:func:`Py_Initialize` now consistently reads and " "respects all of the same environment settings as :c:func:`Py_Main` (in " @@ -3563,14 +3564,14 @@ msgid "" "`Py_IgnoreEnvironmentFlag` to 1 before calling :c:func:`Py_Initialize`." msgstr "" -#: whatsnew/3.7.rst:2531 +#: whatsnew/3.7.rst:2532 msgid "" "In 3.7.1 the C API for Context Variables :ref:`was updated " "` to use :c:type:`PyObject` " "pointers. See also :issue:`34762`." msgstr "" -#: whatsnew/3.7.rst:2535 +#: whatsnew/3.7.rst:2536 msgid "" "In 3.7.1 the :mod:`tokenize` module now implicitly emits a ``NEWLINE`` token " "when provided with input that does not have a trailing new line. This " @@ -3578,11 +3579,11 @@ msgid "" "Ammar Askar in :issue:`33899`.)" msgstr "" -#: whatsnew/3.7.rst:2541 +#: whatsnew/3.7.rst:2542 msgid "Notable changes in Python 3.7.2" msgstr "" -#: whatsnew/3.7.rst:2543 +#: whatsnew/3.7.rst:2544 msgid "" "In 3.7.2, :mod:`venv` on Windows no longer copies the original binaries, but " "creates redirector scripts named ``python.exe`` and ``pythonw.exe`` instead. " @@ -3592,11 +3593,11 @@ msgid "" "to get the new scripts." msgstr "" -#: whatsnew/3.7.rst:2551 +#: whatsnew/3.7.rst:2552 msgid "Notable changes in Python 3.7.6" msgstr "" -#: whatsnew/3.7.rst:2553 +#: whatsnew/3.7.rst:2554 msgid "" "Due to significant security concerns, the *reuse_address* parameter of :meth:" "`asyncio.loop.create_datagram_endpoint` is no longer supported. This is " @@ -3606,12 +3607,12 @@ msgid "" "`37228`.)" msgstr "" -#: whatsnew/3.7.rst:2561 +#: whatsnew/3.7.rst:2562 #, fuzzy msgid "Notable changes in Python 3.7.10" msgstr "Portage vers Python 2.7" -#: whatsnew/3.7.rst:2563 +#: whatsnew/3.7.rst:2564 msgid "" "Earlier Python versions allowed using both ``;`` and ``&`` as query " "parameter separators in :func:`urllib.parse.parse_qs` and :func:`urllib." diff --git a/whatsnew/3.8.po b/whatsnew/3.8.po index 1cd827fc3..4009d4aec 100644 --- a/whatsnew/3.8.po +++ b/whatsnew/3.8.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-24 17:33+0100\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2019-09-04 11:41+0200\n" "Last-Translator: Fred-si \n" "Language-Team: FRENCH \n" @@ -233,12 +233,13 @@ msgstr "" #: whatsnew/3.8.rst:214 msgid "" -"Release builds and debug builds are now ABI compatible: defining the " -"``Py_DEBUG`` macro no longer implies the ``Py_TRACE_REFS`` macro, which " -"introduces the only ABI incompatibility. The ``Py_TRACE_REFS`` macro, which " -"adds the :func:`sys.getobjects` function and the :envvar:`PYTHONDUMPREFS` " -"environment variable, can be set using the new ``./configure --with-trace-" -"refs`` build option. (Contributed by Victor Stinner in :issue:`36465`.)" +"Release builds and :ref:`debug builds ` are now ABI compatible: " +"defining the ``Py_DEBUG`` macro no longer implies the ``Py_TRACE_REFS`` " +"macro, which introduces the only ABI incompatibility. The ``Py_TRACE_REFS`` " +"macro, which adds the :func:`sys.getobjects` function and the :envvar:" +"`PYTHONDUMPREFS` environment variable, can be set using the new :option:`./" +"configure --with-trace-refs <--with-trace-refs>` build option. (Contributed " +"by Victor Stinner in :issue:`36465`.)" msgstr "" #: whatsnew/3.8.rst:222 @@ -501,31 +502,31 @@ msgstr "" #: whatsnew/3.8.rst:352 msgid "" ":ref:`vectorcall` is added to the Python/C API. It is meant to formalize " -"existing optimizations which were already done for various classes. Any " -"static type implementing a callable can use this protocol." +"existing optimizations which were already done for various classes. Any :ref:" +"`static type ` implementing a callable can use this protocol." msgstr "" -#: whatsnew/3.8.rst:357 +#: whatsnew/3.8.rst:358 msgid "" "This is currently provisional. The aim is to make it fully public in Python " "3.9." msgstr "" -#: whatsnew/3.8.rst:360 +#: whatsnew/3.8.rst:361 msgid "See :pep:`590` for a full description." msgstr "" -#: whatsnew/3.8.rst:362 +#: whatsnew/3.8.rst:363 msgid "" "(Contributed by Jeroen Demeyer, Mark Shannon and Petr Viktorin in :issue:" "`36974`.)" msgstr "" -#: whatsnew/3.8.rst:366 +#: whatsnew/3.8.rst:367 msgid "Pickle protocol 5 with out-of-band data buffers" msgstr "" -#: whatsnew/3.8.rst:368 +#: whatsnew/3.8.rst:369 msgid "" "When :mod:`pickle` is used to transfer large data between Python processes " "in order to take advantage of multi-core or multi-machine processing, it is " @@ -533,34 +534,34 @@ msgid "" "by applying custom techniques such as data-dependent compression." msgstr "" -#: whatsnew/3.8.rst:373 +#: whatsnew/3.8.rst:374 msgid "" "The :mod:`pickle` protocol 5 introduces support for out-of-band buffers " "where :pep:`3118`-compatible data can be transmitted separately from the " "main pickle stream, at the discretion of the communication layer." msgstr "" -#: whatsnew/3.8.rst:377 +#: whatsnew/3.8.rst:378 msgid "See :pep:`574` for a full description." msgstr "" -#: whatsnew/3.8.rst:379 +#: whatsnew/3.8.rst:380 #, fuzzy msgid "(Contributed by Antoine Pitrou in :issue:`36785`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`13748`.)" -#: whatsnew/3.8.rst:383 +#: whatsnew/3.8.rst:384 msgid "Other Language Changes" msgstr "" -#: whatsnew/3.8.rst:385 +#: whatsnew/3.8.rst:386 msgid "" "A :keyword:`continue` statement was illegal in the :keyword:`finally` clause " "due to a problem with the implementation. In Python 3.8 this restriction " "was lifted. (Contributed by Serhiy Storchaka in :issue:`32489`.)" msgstr "" -#: whatsnew/3.8.rst:390 +#: whatsnew/3.8.rst:391 msgid "" "The :class:`bool`, :class:`int`, and :class:`fractions.Fraction` types now " "have an :meth:`~int.as_integer_ratio` method like that found in :class:" @@ -570,7 +571,7 @@ msgid "" "`33073` and Raymond Hettinger in :issue:`37819`.)" msgstr "" -#: whatsnew/3.8.rst:398 +#: whatsnew/3.8.rst:399 msgid "" "Constructors of :class:`int`, :class:`float` and :class:`complex` will now " "use the :meth:`~object.__index__` special method, if available and the " @@ -579,23 +580,23 @@ msgid "" "Storchaka in :issue:`20092`.)" msgstr "" -#: whatsnew/3.8.rst:404 +#: whatsnew/3.8.rst:405 msgid "" "Added support of ``\\N{name}`` escapes in :mod:`regular expressions `::" msgstr "" -#: whatsnew/3.8.rst:411 +#: whatsnew/3.8.rst:412 msgid "" "(Contributed by Jonathan Eunice and Serhiy Storchaka in :issue:`30688`.)" msgstr "" -#: whatsnew/3.8.rst:413 +#: whatsnew/3.8.rst:414 msgid "" "Dict and dictviews are now iterable in reversed insertion order using :func:" "`reversed`. (Contributed by Rémi Lapeyre in :issue:`33462`.)" msgstr "" -#: whatsnew/3.8.rst:416 +#: whatsnew/3.8.rst:417 msgid "" "The syntax allowed for keyword names in function calls was further " "restricted. In particular, ``f((keyword)=arg)`` is no longer allowed. It was " @@ -604,18 +605,18 @@ msgid "" "issue:`34641`.)" msgstr "" -#: whatsnew/3.8.rst:422 +#: whatsnew/3.8.rst:423 msgid "" "Generalized iterable unpacking in :keyword:`yield` and :keyword:`return` " "statements no longer requires enclosing parentheses. This brings the *yield* " "and *return* syntax into better agreement with normal assignment syntax::" msgstr "" -#: whatsnew/3.8.rst:434 +#: whatsnew/3.8.rst:435 msgid "(Contributed by David Cuthbert and Jordan Chapman in :issue:`32117`.)" msgstr "" -#: whatsnew/3.8.rst:436 +#: whatsnew/3.8.rst:437 msgid "" "When a comma is missed in code such as ``[(10, 20) (30, 40)]``, the compiler " "displays a :exc:`SyntaxWarning` with a helpful suggestion. This improves on " @@ -623,7 +624,7 @@ msgid "" "callable. (Contributed by Serhiy Storchaka in :issue:`15248`.)" msgstr "" -#: whatsnew/3.8.rst:442 +#: whatsnew/3.8.rst:443 msgid "" "Arithmetic operations between subclasses of :class:`datetime.date` or :class:" "`datetime.datetime` and :class:`datetime.timedelta` objects now return an " @@ -633,7 +634,7 @@ msgid "" "datetime.astimezone`. (Contributed by Paul Ganssle in :issue:`32417`.)" msgstr "" -#: whatsnew/3.8.rst:450 +#: whatsnew/3.8.rst:451 msgid "" "When the Python interpreter is interrupted by Ctrl-C (SIGINT) and the " "resulting :exc:`KeyboardInterrupt` exception is not caught, the Python " @@ -643,7 +644,7 @@ msgid "" "sessions. (Contributed by Google via Gregory P. Smith in :issue:`1054041`.)" msgstr "" -#: whatsnew/3.8.rst:457 +#: whatsnew/3.8.rst:458 msgid "" "Some advanced styles of programming require updating the :class:`types." "CodeType` object for an existing function. Since code objects are " @@ -653,18 +654,18 @@ msgid "" "altered parameters." msgstr "" -#: whatsnew/3.8.rst:464 +#: whatsnew/3.8.rst:465 msgid "" "Here's an example that alters the :func:`statistics.mean` function to " "prevent the *data* parameter from being used as a keyword argument::" msgstr "" -#: whatsnew/3.8.rst:476 +#: whatsnew/3.8.rst:477 #, fuzzy msgid "(Contributed by Victor Stinner in :issue:`37032`.)" msgstr "(Contribution par Victor Stinner; :issue:`12049`.)" -#: whatsnew/3.8.rst:478 +#: whatsnew/3.8.rst:479 msgid "" "For integers, the three-argument form of the :func:`pow` function now " "permits the exponent to be negative in the case where the base is relatively " @@ -675,7 +676,7 @@ msgid "" "38 modulo 137, write::" msgstr "" -#: whatsnew/3.8.rst:492 +#: whatsnew/3.8.rst:493 msgid "" "Modular inverses arise in the solution of `linear Diophantine equations " "`_. For example, to find " @@ -683,29 +684,29 @@ msgid "" "(mod 147)`` then solve:" msgstr "" -#: whatsnew/3.8.rst:502 +#: whatsnew/3.8.rst:503 #, fuzzy msgid "(Contributed by Mark Dickinson in :issue:`36027`.)" msgstr "(Contribution par Mark Dickinson; :issue:`4707`.)" -#: whatsnew/3.8.rst:504 +#: whatsnew/3.8.rst:505 msgid "" "Dict comprehensions have been synced-up with dict literals so that the key " "is computed first and the value second::" msgstr "" -#: whatsnew/3.8.rst:519 +#: whatsnew/3.8.rst:520 msgid "" "The guaranteed execution order is helpful with assignment expressions " "because variables assigned in the key expression will be available in the " "value expression::" msgstr "" -#: whatsnew/3.8.rst:529 +#: whatsnew/3.8.rst:530 msgid "(Contributed by Jörn Heissler in :issue:`35224`.)" msgstr "" -#: whatsnew/3.8.rst:531 +#: whatsnew/3.8.rst:532 msgid "" "The :meth:`object.__reduce__` method can now return a tuple from two to six " "elements long. Formerly, five was the limit. The new, optional sixth " @@ -716,99 +717,99 @@ msgid "" "issue:`35900`.)" msgstr "" -#: whatsnew/3.8.rst:540 +#: whatsnew/3.8.rst:541 msgid "New Modules" msgstr "" -#: whatsnew/3.8.rst:542 +#: whatsnew/3.8.rst:543 msgid "" "The new :mod:`importlib.metadata` module provides (provisional) support for " "reading metadata from third-party packages. For example, it can extract an " "installed package's version number, list of entry points, and more::" msgstr "" -#: whatsnew/3.8.rst:561 +#: whatsnew/3.8.rst:562 msgid "(Contributed by Barry Warsaw and Jason R. Coombs in :issue:`34632`.)" msgstr "" -#: whatsnew/3.8.rst:565 +#: whatsnew/3.8.rst:566 msgid "Improved Modules" msgstr "" -#: whatsnew/3.8.rst:568 +#: whatsnew/3.8.rst:569 msgid "ast" msgstr "ast" -#: whatsnew/3.8.rst:570 +#: whatsnew/3.8.rst:571 msgid "" "AST nodes now have ``end_lineno`` and ``end_col_offset`` attributes, which " "give the precise location of the end of the node. (This only applies to " "nodes that have ``lineno`` and ``col_offset`` attributes.)" msgstr "" -#: whatsnew/3.8.rst:574 +#: whatsnew/3.8.rst:575 msgid "" "New function :func:`ast.get_source_segment` returns the source code for a " "specific AST node." msgstr "" -#: whatsnew/3.8.rst:577 +#: whatsnew/3.8.rst:578 msgid "(Contributed by Ivan Levkivskyi in :issue:`33416`.)" msgstr "" -#: whatsnew/3.8.rst:579 +#: whatsnew/3.8.rst:580 msgid "The :func:`ast.parse` function has some new flags:" msgstr "" -#: whatsnew/3.8.rst:581 +#: whatsnew/3.8.rst:582 msgid "" "``type_comments=True`` causes it to return the text of :pep:`484` and :pep:" "`526` type comments associated with certain AST nodes;" msgstr "" -#: whatsnew/3.8.rst:584 +#: whatsnew/3.8.rst:585 msgid "" "``mode='func_type'`` can be used to parse :pep:`484` \"signature type " "comments\" (returned for function definition AST nodes);" msgstr "" -#: whatsnew/3.8.rst:587 +#: whatsnew/3.8.rst:588 msgid "" "``feature_version=(3, N)`` allows specifying an earlier Python 3 version. " "For example, ``feature_version=(3, 4)`` will treat :keyword:`async` and :" "keyword:`await` as non-reserved words." msgstr "" -#: whatsnew/3.8.rst:591 +#: whatsnew/3.8.rst:592 msgid "(Contributed by Guido van Rossum in :issue:`35766`.)" msgstr "" -#: whatsnew/3.8.rst:595 +#: whatsnew/3.8.rst:596 msgid "asyncio" msgstr "asyncio" -#: whatsnew/3.8.rst:597 +#: whatsnew/3.8.rst:598 msgid "" ":func:`asyncio.run` has graduated from the provisional to stable API. This " "function can be used to execute a :term:`coroutine` and return the result " "while automatically managing the event loop. For example::" msgstr "" -#: whatsnew/3.8.rst:609 +#: whatsnew/3.8.rst:610 msgid "This is *roughly* equivalent to::" msgstr "" -#: whatsnew/3.8.rst:626 +#: whatsnew/3.8.rst:627 msgid "" "The actual implementation is significantly more complex. Thus, :func:" "`asyncio.run` should be the preferred way of running asyncio programs." msgstr "" -#: whatsnew/3.8.rst:629 +#: whatsnew/3.8.rst:630 msgid "(Contributed by Yury Selivanov in :issue:`32314`.)" msgstr "" -#: whatsnew/3.8.rst:631 +#: whatsnew/3.8.rst:632 msgid "" "Running ``python -m asyncio`` launches a natively async REPL. This allows " "rapid experimentation with code that has a top-level :keyword:`await`. " @@ -816,11 +817,11 @@ msgid "" "spawn a new event loop on every invocation:" msgstr "" -#: whatsnew/3.8.rst:646 +#: whatsnew/3.8.rst:647 msgid "(Contributed by Yury Selivanov in :issue:`37028`.)" msgstr "" -#: whatsnew/3.8.rst:1964 +#: whatsnew/3.8.rst:1965 msgid "" "The exception :class:`asyncio.CancelledError` now inherits from :class:" "`BaseException` rather than :class:`Exception` and no longer inherits from :" @@ -828,32 +829,32 @@ msgid "" "in :issue:`32528`.)" msgstr "" -#: whatsnew/3.8.rst:653 +#: whatsnew/3.8.rst:654 msgid "" "On Windows, the default event loop is now :class:`~asyncio." "ProactorEventLoop`. (Contributed by Victor Stinner in :issue:`34687`.)" msgstr "" -#: whatsnew/3.8.rst:656 +#: whatsnew/3.8.rst:657 msgid "" ":class:`~asyncio.ProactorEventLoop` now also supports UDP. (Contributed by " "Adam Meily and Andrew Svetlov in :issue:`29883`.)" msgstr "" -#: whatsnew/3.8.rst:659 +#: whatsnew/3.8.rst:660 msgid "" ":class:`~asyncio.ProactorEventLoop` can now be interrupted by :exc:" "`KeyboardInterrupt` (\"CTRL+C\"). (Contributed by Vladimir Matveev in :issue:" "`23057`.)" msgstr "" -#: whatsnew/3.8.rst:663 +#: whatsnew/3.8.rst:664 msgid "" "Added :meth:`asyncio.Task.get_coro` for getting the wrapped coroutine within " "an :class:`asyncio.Task`. (Contributed by Alex Grönholm in :issue:`36999`.)" msgstr "" -#: whatsnew/3.8.rst:667 +#: whatsnew/3.8.rst:668 msgid "" "Asyncio tasks can now be named, either by passing the ``name`` keyword " "argument to :func:`asyncio.create_task` or the :meth:`~asyncio.loop." @@ -864,7 +865,7 @@ msgid "" "issue:`34270`.)" msgstr "" -#: whatsnew/3.8.rst:675 +#: whatsnew/3.8.rst:676 msgid "" "Added support for `Happy Eyeballs `_ to :func:`asyncio.loop.create_connection`. To specify the " @@ -874,11 +875,11 @@ msgid "" "connect using both. (Contributed by twisteroid ambassador in :issue:`33530`.)" msgstr "" -#: whatsnew/3.8.rst:685 +#: whatsnew/3.8.rst:686 msgid "builtins" msgstr "" -#: whatsnew/3.8.rst:687 +#: whatsnew/3.8.rst:688 msgid "" "The :func:`compile` built-in has been improved to accept the ``ast." "PyCF_ALLOW_TOP_LEVEL_AWAIT`` flag. With this new flag passed, :func:" @@ -888,11 +889,11 @@ msgid "" "(Contributed by Matthias Bussonnier in :issue:`34616`)" msgstr "" -#: whatsnew/3.8.rst:696 +#: whatsnew/3.8.rst:697 msgid "collections" msgstr "" -#: whatsnew/3.8.rst:698 +#: whatsnew/3.8.rst:699 msgid "" "The :meth:`~collections.somenamedtuple._asdict` method for :func:" "`collections.namedtuple` now returns a :class:`dict` instead of a :class:" @@ -903,25 +904,25 @@ msgid "" "issue:`35864`.)" msgstr "" -#: whatsnew/3.8.rst:708 +#: whatsnew/3.8.rst:709 msgid "cProfile" msgstr "" -#: whatsnew/3.8.rst:710 +#: whatsnew/3.8.rst:711 msgid "" "The :class:`cProfile.Profile ` class can now be used as a " "context manager. Profile a block of code by running::" msgstr "" -#: whatsnew/3.8.rst:719 +#: whatsnew/3.8.rst:720 msgid "(Contributed by Scott Sanderson in :issue:`29235`.)" msgstr "" -#: whatsnew/3.8.rst:723 +#: whatsnew/3.8.rst:724 msgid "csv" msgstr "csv" -#: whatsnew/3.8.rst:725 +#: whatsnew/3.8.rst:726 msgid "" "The :class:`csv.DictReader` now returns instances of :class:`dict` instead " "of a :class:`collections.OrderedDict`. The tool is now faster and uses less " @@ -929,22 +930,22 @@ msgid "" "in :issue:`34003`.)" msgstr "" -#: whatsnew/3.8.rst:732 +#: whatsnew/3.8.rst:733 msgid "curses" msgstr "curses" -#: whatsnew/3.8.rst:734 +#: whatsnew/3.8.rst:735 msgid "" "Added a new variable holding structured version information for the " "underlying ncurses library: :data:`~curses.ncurses_version`. (Contributed by " "Serhiy Storchaka in :issue:`31680`.)" msgstr "" -#: whatsnew/3.8.rst:740 +#: whatsnew/3.8.rst:741 msgid "ctypes" msgstr "ctypes" -#: whatsnew/3.8.rst:742 +#: whatsnew/3.8.rst:743 msgid "" "On Windows, :class:`~ctypes.CDLL` and subclasses now accept a *winmode* " "parameter to specify flags for the underlying ``LoadLibraryEx`` call. The " @@ -954,11 +955,11 @@ msgid "" "add_dll_directory`. (Contributed by Steve Dower in :issue:`36085`.)" msgstr "" -#: whatsnew/3.8.rst:751 +#: whatsnew/3.8.rst:752 msgid "datetime" msgstr "datetime" -#: whatsnew/3.8.rst:753 +#: whatsnew/3.8.rst:754 msgid "" "Added new alternate constructors :meth:`datetime.date.fromisocalendar` and :" "meth:`datetime.datetime.fromisocalendar`, which construct :class:`date` and :" @@ -967,85 +968,85 @@ msgid "" "(Contributed by Paul Ganssle in :issue:`36004`.)" msgstr "" -#: whatsnew/3.8.rst:761 +#: whatsnew/3.8.rst:762 msgid "functools" msgstr "" -#: whatsnew/3.8.rst:763 +#: whatsnew/3.8.rst:764 msgid "" ":func:`functools.lru_cache` can now be used as a straight decorator rather " "than as a function returning a decorator. So both of these are now " "supported::" msgstr "" -#: whatsnew/3.8.rst:774 +#: whatsnew/3.8.rst:775 msgid "(Contributed by Raymond Hettinger in :issue:`36772`.)" msgstr "" -#: whatsnew/3.8.rst:776 +#: whatsnew/3.8.rst:777 msgid "" "Added a new :func:`functools.cached_property` decorator, for computed " "properties cached for the life of the instance. ::" msgstr "" -#: whatsnew/3.8.rst:790 +#: whatsnew/3.8.rst:791 msgid "(Contributed by Carl Meyer in :issue:`21145`)" msgstr "" -#: whatsnew/3.8.rst:793 +#: whatsnew/3.8.rst:794 msgid "" "Added a new :func:`functools.singledispatchmethod` decorator that converts " "methods into :term:`generic functions ` using :term:" "`single dispatch`::" msgstr "" -#: whatsnew/3.8.rst:815 +#: whatsnew/3.8.rst:816 msgid "(Contributed by Ethan Smith in :issue:`32380`)" msgstr "" -#: whatsnew/3.8.rst:818 +#: whatsnew/3.8.rst:819 msgid "gc" msgstr "" -#: whatsnew/3.8.rst:820 +#: whatsnew/3.8.rst:821 msgid "" ":func:`~gc.get_objects` can now receive an optional *generation* parameter " "indicating a generation to get objects from. (Contributed by Pablo Galindo " "in :issue:`36016`.)" msgstr "" -#: whatsnew/3.8.rst:826 +#: whatsnew/3.8.rst:827 msgid "gettext" msgstr "" -#: whatsnew/3.8.rst:828 +#: whatsnew/3.8.rst:829 msgid "" "Added :func:`~gettext.pgettext` and its variants. (Contributed by Franz " "Glasner, Éric Araujo, and Cheryl Sabella in :issue:`2504`.)" msgstr "" -#: whatsnew/3.8.rst:833 +#: whatsnew/3.8.rst:834 msgid "gzip" msgstr "gzip" -#: whatsnew/3.8.rst:835 +#: whatsnew/3.8.rst:836 msgid "" "Added the *mtime* parameter to :func:`gzip.compress` for reproducible " "output. (Contributed by Guo Ci Teo in :issue:`34898`.)" msgstr "" -#: whatsnew/3.8.rst:838 +#: whatsnew/3.8.rst:839 msgid "" "A :exc:`~gzip.BadGzipFile` exception is now raised instead of :exc:`OSError` " "for certain types of invalid or corrupt gzip files. (Contributed by Filip " "Gruszczyński, Michele Orrù, and Zackery Spytz in :issue:`6584`.)" msgstr "" -#: whatsnew/3.8.rst:845 +#: whatsnew/3.8.rst:846 msgid "IDLE and idlelib" msgstr "" -#: whatsnew/3.8.rst:847 +#: whatsnew/3.8.rst:848 msgid "" "Output over N lines (50 by default) is squeezed down to a button. N can be " "changed in the PyShell section of the General page of the Settings dialog. " @@ -1055,7 +1056,7 @@ msgid "" "button. (Contributed by Tal Einat in :issue:`1529353`.)" msgstr "" -#: whatsnew/3.8.rst:854 +#: whatsnew/3.8.rst:855 msgid "" "Add \"Run Customized\" to the Run menu to run a module with customized " "settings. Any command line arguments entered are added to sys.argv. They " @@ -1064,7 +1065,7 @@ msgid "" "Sabella, Terry Jan Reedy, and others in :issue:`5680` and :issue:`37627`.)" msgstr "" -#: whatsnew/3.8.rst:860 +#: whatsnew/3.8.rst:861 msgid "" "Added optional line numbers for IDLE editor windows. Windows open without " "line numbers unless set otherwise in the General tab of the configuration " @@ -1073,7 +1074,7 @@ msgid "" "`17535`.)" msgstr "" -#: whatsnew/3.8.rst:866 +#: whatsnew/3.8.rst:867 msgid "" "OS native encoding is now used for converting between Python strings and Tcl " "objects. This allows IDLE to work with emoji and other non-BMP characters. " @@ -1083,37 +1084,37 @@ msgid "" "solved by Serhiy Storchaka in :issue:`13153`.)" msgstr "" -#: whatsnew/3.8.rst:873 +#: whatsnew/3.8.rst:874 msgid "New in 3.8.1:" msgstr "" -#: whatsnew/3.8.rst:875 +#: whatsnew/3.8.rst:876 msgid "" "Add option to toggle cursor blink off. (Contributed by Zackery Spytz in :" "issue:`4603`.)" msgstr "" -#: whatsnew/3.8.rst:878 +#: whatsnew/3.8.rst:879 msgid "" "Escape key now closes IDLE completion windows. (Contributed by Johnny " "Najera in :issue:`38944`.)" msgstr "" -#: whatsnew/3.8.rst:881 +#: whatsnew/3.8.rst:882 msgid "The changes above have been backported to 3.7 maintenance releases." msgstr "" -#: whatsnew/3.8.rst:883 +#: whatsnew/3.8.rst:884 msgid "" "Add keywords to module name completion list. (Contributed by Terry J. Reedy " "in :issue:`37765`.)" msgstr "" -#: whatsnew/3.8.rst:887 +#: whatsnew/3.8.rst:888 msgid "inspect" msgstr "" -#: whatsnew/3.8.rst:889 +#: whatsnew/3.8.rst:890 msgid "" "The :func:`inspect.getdoc` function can now find docstrings for " "``__slots__`` if that attribute is a :class:`dict` where the values are " @@ -1121,51 +1122,51 @@ msgid "" "have for :func:`property`, :func:`classmethod`, and :func:`staticmethod`::" msgstr "" -#: whatsnew/3.8.rst:901 +#: whatsnew/3.8.rst:902 msgid "(Contributed by Raymond Hettinger in :issue:`36326`.)" msgstr "" -#: whatsnew/3.8.rst:905 +#: whatsnew/3.8.rst:906 msgid "io" msgstr "" -#: whatsnew/3.8.rst:907 +#: whatsnew/3.8.rst:908 msgid "" -"In development mode (:option:`-X` ``env``) and in debug build, the :class:" -"`io.IOBase` finalizer now logs the exception if the ``close()`` method " -"fails. The exception is ignored silently by default in release build. " -"(Contributed by Victor Stinner in :issue:`18748`.)" +"In development mode (:option:`-X` ``env``) and in :ref:`debug build `, the :class:`io.IOBase` finalizer now logs the exception if the " +"``close()`` method fails. The exception is ignored silently by default in " +"release build. (Contributed by Victor Stinner in :issue:`18748`.)" msgstr "" -#: whatsnew/3.8.rst:914 +#: whatsnew/3.8.rst:915 msgid "itertools" msgstr "" -#: whatsnew/3.8.rst:916 +#: whatsnew/3.8.rst:917 msgid "" "The :func:`itertools.accumulate` function added an option *initial* keyword " "argument to specify an initial value::" msgstr "" -#: whatsnew/3.8.rst:923 +#: whatsnew/3.8.rst:924 msgid "(Contributed by Lisa Roach in :issue:`34659`.)" msgstr "" -#: whatsnew/3.8.rst:927 +#: whatsnew/3.8.rst:928 msgid "json.tool" msgstr "" -#: whatsnew/3.8.rst:929 +#: whatsnew/3.8.rst:930 msgid "" "Add option ``--json-lines`` to parse every input line as a separate JSON " "object. (Contributed by Weipeng Hong in :issue:`31553`.)" msgstr "" -#: whatsnew/3.8.rst:934 +#: whatsnew/3.8.rst:935 msgid "logging" msgstr "" -#: whatsnew/3.8.rst:936 +#: whatsnew/3.8.rst:937 msgid "" "Added a *force* keyword argument to :func:`logging.basicConfig()` When set " "to true, any existing handlers attached to the root logger are removed and " @@ -1173,7 +1174,7 @@ msgid "" "arguments." msgstr "" -#: whatsnew/3.8.rst:941 +#: whatsnew/3.8.rst:942 msgid "" "This solves a long-standing problem. Once a logger or *basicConfig()* had " "been called, subsequent calls to *basicConfig()* were silently ignored. This " @@ -1181,53 +1182,53 @@ msgid "" "configuration options using the interactive prompt or a Jupyter notebook." msgstr "" -#: whatsnew/3.8.rst:947 +#: whatsnew/3.8.rst:948 msgid "" "(Suggested by Raymond Hettinger, implemented by Dong-hee Na, and reviewed by " "Vinay Sajip in :issue:`33897`.)" msgstr "" -#: whatsnew/3.8.rst:952 +#: whatsnew/3.8.rst:953 msgid "math" msgstr "" -#: whatsnew/3.8.rst:954 +#: whatsnew/3.8.rst:955 msgid "" "Added new function :func:`math.dist` for computing Euclidean distance " "between two points. (Contributed by Raymond Hettinger in :issue:`33089`.)" msgstr "" -#: whatsnew/3.8.rst:957 +#: whatsnew/3.8.rst:958 msgid "" "Expanded the :func:`math.hypot` function to handle multiple dimensions. " "Formerly, it only supported the 2-D case. (Contributed by Raymond Hettinger " "in :issue:`33089`.)" msgstr "" -#: whatsnew/3.8.rst:961 +#: whatsnew/3.8.rst:962 msgid "" "Added new function, :func:`math.prod`, as analogous function to :func:`sum` " "that returns the product of a 'start' value (default: 1) times an iterable " "of numbers::" msgstr "" -#: whatsnew/3.8.rst:970 +#: whatsnew/3.8.rst:971 msgid "(Contributed by Pablo Galindo in :issue:`35606`.)" msgstr "" -#: whatsnew/3.8.rst:972 +#: whatsnew/3.8.rst:973 msgid "" "Added two new combinatoric functions :func:`math.perm` and :func:`math." "comb`::" msgstr "" -#: whatsnew/3.8.rst:979 +#: whatsnew/3.8.rst:980 msgid "" "(Contributed by Yash Aggarwal, Keller Fuchs, Serhiy Storchaka, and Raymond " "Hettinger in :issue:`37128`, :issue:`37178`, and :issue:`35431`.)" msgstr "" -#: whatsnew/3.8.rst:982 +#: whatsnew/3.8.rst:983 msgid "" "Added a new function :func:`math.isqrt` for computing accurate integer " "square roots without conversion to floating point. The new function " @@ -1235,48 +1236,48 @@ msgid "" "but slower than :func:`math.sqrt`::" msgstr "" -#: whatsnew/3.8.rst:994 +#: whatsnew/3.8.rst:995 msgid "(Contributed by Mark Dickinson in :issue:`36887`.)" msgstr "" -#: whatsnew/3.8.rst:996 +#: whatsnew/3.8.rst:997 msgid "" "The function :func:`math.factorial` no longer accepts arguments that are not " "int-like. (Contributed by Pablo Galindo in :issue:`33083`.)" msgstr "" -#: whatsnew/3.8.rst:1001 +#: whatsnew/3.8.rst:1002 msgid "mmap" msgstr "" -#: whatsnew/3.8.rst:1003 +#: whatsnew/3.8.rst:1004 msgid "" "The :class:`mmap.mmap` class now has an :meth:`~mmap.mmap.madvise` method to " "access the ``madvise()`` system call. (Contributed by Zackery Spytz in :" "issue:`32941`.)" msgstr "" -#: whatsnew/3.8.rst:1009 +#: whatsnew/3.8.rst:1010 msgid "multiprocessing" msgstr "multiprocessing" -#: whatsnew/3.8.rst:1011 +#: whatsnew/3.8.rst:1012 msgid "" "Added new :mod:`multiprocessing.shared_memory` module. (Contributed by Davin " "Potts in :issue:`35813`.)" msgstr "" -#: whatsnew/3.8.rst:1014 +#: whatsnew/3.8.rst:1015 msgid "" "On macOS, the *spawn* start method is now used by default. (Contributed by " "Victor Stinner in :issue:`33725`.)" msgstr "" -#: whatsnew/3.8.rst:1019 +#: whatsnew/3.8.rst:1020 msgid "os" msgstr "" -#: whatsnew/3.8.rst:1021 +#: whatsnew/3.8.rst:1022 msgid "" "Added new function :func:`~os.add_dll_directory` on Windows for providing " "additional search paths for native dependencies when importing extension " @@ -1284,14 +1285,14 @@ msgid "" "issue:`36085`.)" msgstr "" -#: whatsnew/3.8.rst:1026 +#: whatsnew/3.8.rst:1027 msgid "" "A new :func:`os.memfd_create` function was added to wrap the " "``memfd_create()`` syscall. (Contributed by Zackery Spytz and Christian " "Heimes in :issue:`26836`.)" msgstr "" -#: whatsnew/3.8.rst:1030 +#: whatsnew/3.8.rst:1031 msgid "" "On Windows, much of the manual logic for handling reparse points (including " "symlinks and directory junctions) has been delegated to the operating " @@ -1304,7 +1305,7 @@ msgid "" "st_reparse_tag` attribute." msgstr "" -#: whatsnew/3.8.rst:1039 +#: whatsnew/3.8.rst:1040 msgid "" "On Windows, :func:`os.readlink` is now able to read directory junctions. " "Note that :func:`~os.path.islink` will return ``False`` for directory " @@ -1313,15 +1314,15 @@ msgid "" "readlink` may now treat junctions as links." msgstr "" -#: whatsnew/3.8.rst:1070 +#: whatsnew/3.8.rst:1071 msgid "(Contributed by Steve Dower in :issue:`37834`.)" msgstr "" -#: whatsnew/3.8.rst:1049 +#: whatsnew/3.8.rst:1050 msgid "os.path" msgstr "" -#: whatsnew/3.8.rst:1051 +#: whatsnew/3.8.rst:1052 msgid "" ":mod:`os.path` functions that return a boolean result like :func:`~os.path." "exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`, :func:`~os.path." @@ -1332,7 +1333,7 @@ msgid "" "Storchaka in :issue:`33721`.)" msgstr "" -#: whatsnew/3.8.rst:1959 +#: whatsnew/3.8.rst:1960 msgid "" ":func:`~os.path.expanduser` on Windows now prefers the :envvar:`USERPROFILE` " "environment variable and does not use :envvar:`HOME`, which is not normally " @@ -1340,23 +1341,23 @@ msgid "" "`36264`.)" msgstr "" -#: whatsnew/3.8.rst:1064 +#: whatsnew/3.8.rst:1065 msgid "" ":func:`~os.path.isdir` on Windows no longer returns ``True`` for a link to a " "non-existent directory." msgstr "" -#: whatsnew/3.8.rst:1067 +#: whatsnew/3.8.rst:1068 msgid "" ":func:`~os.path.realpath` on Windows now resolves reparse points, including " "symlinks and directory junctions." msgstr "" -#: whatsnew/3.8.rst:1074 +#: whatsnew/3.8.rst:1075 msgid "pathlib" msgstr "pathlib" -#: whatsnew/3.8.rst:1076 +#: whatsnew/3.8.rst:1077 msgid "" ":mod:`pathlib.Path` methods that return a boolean result like :meth:" "`~pathlib.Path.exists()`, :meth:`~pathlib.Path.is_dir()`, :meth:`~pathlib." @@ -1369,17 +1370,17 @@ msgid "" "`33721`.)" msgstr "" -#: whatsnew/3.8.rst:1086 +#: whatsnew/3.8.rst:1087 msgid "" "Added :meth:`pathlib.Path.link_to()` which creates a hard link pointing to a " "path. (Contributed by Joannah Nanjekye in :issue:`26978`)" msgstr "" -#: whatsnew/3.8.rst:1092 +#: whatsnew/3.8.rst:1093 msgid "pickle" msgstr "" -#: whatsnew/3.8.rst:1094 +#: whatsnew/3.8.rst:1095 msgid "" ":mod:`pickle` extensions subclassing the C-optimized :class:`~pickle." "Pickler` can now override the pickling logic of functions and classes by " @@ -1387,22 +1388,22 @@ msgid "" "(Contributed by Pierre Glaser and Olivier Grisel in :issue:`35900`.)" msgstr "" -#: whatsnew/3.8.rst:1101 +#: whatsnew/3.8.rst:1102 msgid "plistlib" msgstr "" -#: whatsnew/3.8.rst:1103 +#: whatsnew/3.8.rst:1104 msgid "" "Added new :class:`plistlib.UID` and enabled support for reading and writing " "NSKeyedArchiver-encoded binary plists. (Contributed by Jon Janzen in :issue:" "`26707`.)" msgstr "" -#: whatsnew/3.8.rst:1109 +#: whatsnew/3.8.rst:1110 msgid "pprint" msgstr "" -#: whatsnew/3.8.rst:1111 +#: whatsnew/3.8.rst:1112 msgid "" "The :mod:`pprint` module added a *sort_dicts* parameter to several " "functions. By default, those functions continue to sort dictionaries before " @@ -1411,47 +1412,47 @@ msgid "" "for comparison to JSON inputs during debugging." msgstr "" -#: whatsnew/3.8.rst:1117 +#: whatsnew/3.8.rst:1118 msgid "" "In addition, there is a convenience new function, :func:`pprint.pp` that is " "like :func:`pprint.pprint` but with *sort_dicts* defaulting to ``False``::" msgstr "" -#: whatsnew/3.8.rst:1131 +#: whatsnew/3.8.rst:1132 msgid "(Contributed by Rémi Lapeyre in :issue:`30670`.)" msgstr "" -#: whatsnew/3.8.rst:1135 +#: whatsnew/3.8.rst:1136 msgid "py_compile" msgstr "" -#: whatsnew/3.8.rst:1137 +#: whatsnew/3.8.rst:1138 msgid "" ":func:`py_compile.compile` now supports silent mode. (Contributed by Joannah " "Nanjekye in :issue:`22640`.)" msgstr "" -#: whatsnew/3.8.rst:1142 +#: whatsnew/3.8.rst:1143 msgid "shlex" msgstr "" -#: whatsnew/3.8.rst:1144 +#: whatsnew/3.8.rst:1145 msgid "" "The new :func:`shlex.join` function acts as the inverse of :func:`shlex." "split`. (Contributed by Bo Bayles in :issue:`32102`.)" msgstr "" -#: whatsnew/3.8.rst:1149 +#: whatsnew/3.8.rst:1150 msgid "shutil" msgstr "" -#: whatsnew/3.8.rst:1151 +#: whatsnew/3.8.rst:1152 msgid "" ":func:`shutil.copytree` now accepts a new ``dirs_exist_ok`` keyword " "argument. (Contributed by Josh Bronson in :issue:`20849`.)" msgstr "" -#: whatsnew/3.8.rst:1154 +#: whatsnew/3.8.rst:1155 msgid "" ":func:`shutil.make_archive` now defaults to the modern pax (POSIX.1-2001) " "format for new archives to improve portability and standards conformance, " @@ -1459,18 +1460,18 @@ msgid "" "(Contributed by C.A.M. Gerlach in :issue:`30661`.)" msgstr "" -#: whatsnew/3.8.rst:1159 +#: whatsnew/3.8.rst:1160 msgid "" ":func:`shutil.rmtree` on Windows now removes directory junctions without " "recursively removing their contents first. (Contributed by Steve Dower in :" "issue:`37834`.)" msgstr "" -#: whatsnew/3.8.rst:1165 +#: whatsnew/3.8.rst:1166 msgid "socket" msgstr "" -#: whatsnew/3.8.rst:1167 +#: whatsnew/3.8.rst:1168 msgid "" "Added :meth:`~socket.create_server()` and :meth:`~socket." "has_dualstack_ipv6()` convenience functions to automate the necessary tasks " @@ -1479,66 +1480,66 @@ msgid "" "Rodolà in :issue:`17561`.)" msgstr "" -#: whatsnew/3.8.rst:1172 +#: whatsnew/3.8.rst:1173 msgid "" "The :func:`socket.if_nameindex()`, :func:`socket.if_nametoindex()`, and :" "func:`socket.if_indextoname()` functions have been implemented on Windows. " "(Contributed by Zackery Spytz in :issue:`37007`.)" msgstr "" -#: whatsnew/3.8.rst:1178 +#: whatsnew/3.8.rst:1179 msgid "ssl" msgstr "" -#: whatsnew/3.8.rst:1180 +#: whatsnew/3.8.rst:1181 msgid "" "Added :attr:`~ssl.SSLContext.post_handshake_auth` to enable and :meth:`~ssl." "SSLSocket.verify_client_post_handshake` to initiate TLS 1.3 post-handshake " "authentication. (Contributed by Christian Heimes in :issue:`34670`.)" msgstr "" -#: whatsnew/3.8.rst:1187 +#: whatsnew/3.8.rst:1188 msgid "statistics" msgstr "" -#: whatsnew/3.8.rst:1189 +#: whatsnew/3.8.rst:1190 msgid "" "Added :func:`statistics.fmean` as a faster, floating point variant of :func:" "`statistics.mean()`. (Contributed by Raymond Hettinger and Steven D'Aprano " "in :issue:`35904`.)" msgstr "" -#: whatsnew/3.8.rst:1193 +#: whatsnew/3.8.rst:1194 msgid "" "Added :func:`statistics.geometric_mean()` (Contributed by Raymond Hettinger " "in :issue:`27181`.)" msgstr "" -#: whatsnew/3.8.rst:1196 +#: whatsnew/3.8.rst:1197 msgid "" "Added :func:`statistics.multimode` that returns a list of the most common " "values. (Contributed by Raymond Hettinger in :issue:`35892`.)" msgstr "" -#: whatsnew/3.8.rst:1199 +#: whatsnew/3.8.rst:1200 msgid "" "Added :func:`statistics.quantiles` that divides data or a distribution in to " "equiprobable intervals (e.g. quartiles, deciles, or percentiles). " "(Contributed by Raymond Hettinger in :issue:`36546`.)" msgstr "" -#: whatsnew/3.8.rst:1203 +#: whatsnew/3.8.rst:1204 msgid "" "Added :class:`statistics.NormalDist`, a tool for creating and manipulating " "normal distributions of a random variable. (Contributed by Raymond Hettinger " "in :issue:`36018`.)" msgstr "" -#: whatsnew/3.8.rst:1233 +#: whatsnew/3.8.rst:1234 msgid "sys" msgstr "sys" -#: whatsnew/3.8.rst:1235 +#: whatsnew/3.8.rst:1236 msgid "" "Add new :func:`sys.unraisablehook` function which can be overridden to " "control how \"unraisable exceptions\" are handled. It is called when an " @@ -1547,11 +1548,11 @@ msgid "" "(:func:`gc.collect`). (Contributed by Victor Stinner in :issue:`36829`.)" msgstr "" -#: whatsnew/3.8.rst:1244 +#: whatsnew/3.8.rst:1245 msgid "tarfile" msgstr "" -#: whatsnew/3.8.rst:1246 +#: whatsnew/3.8.rst:1247 msgid "" "The :mod:`tarfile` module now defaults to the modern pax (POSIX.1-2001) " "format for new archives, instead of the previous GNU-specific one. This " @@ -1560,11 +1561,11 @@ msgid "" "(Contributed by C.A.M. Gerlach in :issue:`36268`.)" msgstr "" -#: whatsnew/3.8.rst:1254 +#: whatsnew/3.8.rst:1255 msgid "threading" msgstr "threading" -#: whatsnew/3.8.rst:1256 +#: whatsnew/3.8.rst:1257 msgid "" "Add a new :func:`threading.excepthook` function which handles uncaught :meth:" "`threading.Thread.run` exception. It can be overridden to control how " @@ -1572,7 +1573,7 @@ msgid "" "by Victor Stinner in :issue:`1230540`.)" msgstr "" -#: whatsnew/3.8.rst:1261 +#: whatsnew/3.8.rst:1262 msgid "" "Add a new :func:`threading.get_native_id` function and a :data:`~threading." "Thread.native_id` attribute to the :class:`threading.Thread` class. These " @@ -1582,11 +1583,11 @@ msgid "" "by Jake Tesler in :issue:`36084`.)" msgstr "" -#: whatsnew/3.8.rst:1271 +#: whatsnew/3.8.rst:1272 msgid "tokenize" msgstr "" -#: whatsnew/3.8.rst:1273 +#: whatsnew/3.8.rst:1274 msgid "" "The :mod:`tokenize` module now implicitly emits a ``NEWLINE`` token when " "provided with input that does not have a trailing new line. This behavior " @@ -1594,11 +1595,11 @@ msgid "" "Askar in :issue:`33899`.)" msgstr "" -#: whatsnew/3.8.rst:1280 +#: whatsnew/3.8.rst:1281 msgid "tkinter" msgstr "tkinter" -#: whatsnew/3.8.rst:1282 +#: whatsnew/3.8.rst:1283 msgid "" "Added methods :meth:`~tkinter.Spinbox.selection_from`, :meth:`~tkinter." "Spinbox.selection_present`, :meth:`~tkinter.Spinbox.selection_range` and :" @@ -1606,38 +1607,38 @@ msgid "" "(Contributed by Juliette Monsel in :issue:`34829`.)" msgstr "" -#: whatsnew/3.8.rst:1289 +#: whatsnew/3.8.rst:1290 msgid "" "Added method :meth:`~tkinter.Canvas.moveto` in the :class:`tkinter.Canvas` " "class. (Contributed by Juliette Monsel in :issue:`23831`.)" msgstr "" -#: whatsnew/3.8.rst:1293 +#: whatsnew/3.8.rst:1294 msgid "" "The :class:`tkinter.PhotoImage` class now has :meth:`~tkinter.PhotoImage." "transparency_get` and :meth:`~tkinter.PhotoImage.transparency_set` methods. " "(Contributed by Zackery Spytz in :issue:`25451`.)" msgstr "" -#: whatsnew/3.8.rst:1300 +#: whatsnew/3.8.rst:1301 msgid "time" msgstr "time" -#: whatsnew/3.8.rst:1302 +#: whatsnew/3.8.rst:1303 msgid "" "Added new clock :data:`~time.CLOCK_UPTIME_RAW` for macOS 10.12. (Contributed " "by Joannah Nanjekye in :issue:`35702`.)" msgstr "" -#: whatsnew/3.8.rst:1307 +#: whatsnew/3.8.rst:1308 msgid "typing" msgstr "" -#: whatsnew/3.8.rst:1309 +#: whatsnew/3.8.rst:1310 msgid "The :mod:`typing` module incorporates several new features:" msgstr "" -#: whatsnew/3.8.rst:1311 +#: whatsnew/3.8.rst:1312 msgid "" "A dictionary type with per-key types. See :pep:`589` and :class:`typing." "TypedDict`. TypedDict uses only string keys. By default, every key is " @@ -1645,46 +1646,46 @@ msgid "" "optional::" msgstr "" -#: whatsnew/3.8.rst:1321 +#: whatsnew/3.8.rst:1322 msgid "" "Literal types. See :pep:`586` and :class:`typing.Literal`. Literal types " "indicate that a parameter or return value is constrained to one or more " "specific literal values::" msgstr "" -#: whatsnew/3.8.rst:1328 +#: whatsnew/3.8.rst:1329 msgid "" "\"Final\" variables, functions, methods and classes. See :pep:`591`, :class:" "`typing.Final` and :func:`typing.final`. The final qualifier instructs a " "static type checker to restrict subclassing, overriding, or reassignment::" msgstr "" -#: whatsnew/3.8.rst:1335 +#: whatsnew/3.8.rst:1336 msgid "" "Protocol definitions. See :pep:`544`, :class:`typing.Protocol` and :func:" "`typing.runtime_checkable`. Simple ABCs like :class:`typing.SupportsInt` " "are now ``Protocol`` subclasses." msgstr "" -#: whatsnew/3.8.rst:1339 +#: whatsnew/3.8.rst:1340 msgid "New protocol class :class:`typing.SupportsIndex`." msgstr "" -#: whatsnew/3.8.rst:1341 +#: whatsnew/3.8.rst:1342 msgid "New functions :func:`typing.get_origin` and :func:`typing.get_args`." msgstr "" -#: whatsnew/3.8.rst:1345 +#: whatsnew/3.8.rst:1346 msgid "unicodedata" msgstr "unicodedata" -#: whatsnew/3.8.rst:1347 +#: whatsnew/3.8.rst:1348 msgid "" "The :mod:`unicodedata` module has been upgraded to use the `Unicode 12.1.0 " "`_ release." msgstr "" -#: whatsnew/3.8.rst:1350 +#: whatsnew/3.8.rst:1351 msgid "" "New function :func:`~unicodedata.is_normalized` can be used to verify a " "string is in a specific normal form, often much faster than by actually " @@ -1692,11 +1693,11 @@ msgid "" "Greg Price in :issue:`32285` and :issue:`37966`)." msgstr "" -#: whatsnew/3.8.rst:1357 +#: whatsnew/3.8.rst:1358 msgid "unittest" msgstr "unittest" -#: whatsnew/3.8.rst:1359 +#: whatsnew/3.8.rst:1360 msgid "" "Added :class:`~unittest.mock.AsyncMock` to support an asynchronous version " "of :class:`~unittest.mock.Mock`. Appropriate new assert functions for " @@ -1704,7 +1705,7 @@ msgid "" "`26467`)." msgstr "" -#: whatsnew/3.8.rst:1364 +#: whatsnew/3.8.rst:1365 msgid "" "Added :func:`~unittest.addModuleCleanup()` and :meth:`~unittest.TestCase." "addClassCleanup()` to unittest to support cleanups for :func:`~unittest." @@ -1712,57 +1713,57 @@ msgid "" "Lisa Roach in :issue:`24412`.)" msgstr "" -#: whatsnew/3.8.rst:1370 +#: whatsnew/3.8.rst:1371 msgid "" "Several mock assert functions now also print a list of actual calls upon " "failure. (Contributed by Petter Strandmark in :issue:`35047`.)" msgstr "" -#: whatsnew/3.8.rst:1373 +#: whatsnew/3.8.rst:1374 msgid "" ":mod:`unittest` module gained support for coroutines to be used as test " "cases with :class:`unittest.IsolatedAsyncioTestCase`. (Contributed by Andrew " "Svetlov in :issue:`32972`.)" msgstr "" -#: whatsnew/3.8.rst:1377 +#: whatsnew/3.8.rst:1378 msgid "Example::" msgstr "Exemple ::" -#: whatsnew/3.8.rst:1400 +#: whatsnew/3.8.rst:1401 msgid "venv" msgstr "venv" -#: whatsnew/3.8.rst:1402 +#: whatsnew/3.8.rst:1403 msgid "" ":mod:`venv` now includes an ``Activate.ps1`` script on all platforms for " "activating virtual environments under PowerShell Core 6.1. (Contributed by " "Brett Cannon in :issue:`32718`.)" msgstr "" -#: whatsnew/3.8.rst:1408 +#: whatsnew/3.8.rst:1409 msgid "weakref" msgstr "weakref" -#: whatsnew/3.8.rst:1410 +#: whatsnew/3.8.rst:1411 msgid "" "The proxy objects returned by :func:`weakref.proxy` now support the matrix " "multiplication operators ``@`` and ``@=`` in addition to the other numeric " "operators. (Contributed by Mark Dickinson in :issue:`36669`.)" msgstr "" -#: whatsnew/3.8.rst:1416 +#: whatsnew/3.8.rst:1417 msgid "xml" msgstr "" -#: whatsnew/3.8.rst:1418 +#: whatsnew/3.8.rst:1419 msgid "" "As mitigation against DTD and external entity retrieval, the :mod:`xml.dom." "minidom` and :mod:`xml.sax` modules no longer process external entities by " "default. (Contributed by Christian Heimes in :issue:`17239`.)" msgstr "" -#: whatsnew/3.8.rst:1423 +#: whatsnew/3.8.rst:1424 msgid "" "The ``.find*()`` methods in the :mod:`xml.etree.ElementTree` module support " "wildcard searches like ``{*}tag`` which ignores the namespace and " @@ -1770,14 +1771,14 @@ msgid "" "by Stefan Behnel in :issue:`28238`.)" msgstr "" -#: whatsnew/3.8.rst:1428 +#: whatsnew/3.8.rst:1429 msgid "" "The :mod:`xml.etree.ElementTree` module provides a new function :func:`–xml." "etree.ElementTree.canonicalize()` that implements C14N 2.0. (Contributed by " "Stefan Behnel in :issue:`13611`.)" msgstr "" -#: whatsnew/3.8.rst:1432 +#: whatsnew/3.8.rst:1433 msgid "" "The target object of :class:`xml.etree.ElementTree.XMLParser` can receive " "namespace declaration events through the new callback methods ``start_ns()`` " @@ -1787,11 +1788,11 @@ msgid "" "by Stefan Behnel in :issue:`36676` and :issue:`36673`.)" msgstr "" -#: whatsnew/3.8.rst:1442 +#: whatsnew/3.8.rst:1443 msgid "xmlrpc" msgstr "xmlrpc" -#: whatsnew/3.8.rst:1444 +#: whatsnew/3.8.rst:1445 msgid "" ":class:`xmlrpc.client.ServerProxy` now supports an optional *headers* " "keyword argument for a sequence of HTTP headers to be sent with each " @@ -1800,37 +1801,37 @@ msgid "" "Cédric Krier in :issue:`35153`.)" msgstr "" -#: whatsnew/3.8.rst:1452 +#: whatsnew/3.8.rst:1453 #, fuzzy msgid "Optimizations" msgstr "Optimisation" -#: whatsnew/3.8.rst:1454 +#: whatsnew/3.8.rst:1455 msgid "" "The :mod:`subprocess` module can now use the :func:`os.posix_spawn` function " "in some cases for better performance. Currently, it is only used on macOS " "and Linux (using glibc 2.24 or newer) if all these conditions are met:" msgstr "" -#: whatsnew/3.8.rst:1458 +#: whatsnew/3.8.rst:1459 msgid "*close_fds* is false;" msgstr "" -#: whatsnew/3.8.rst:1459 +#: whatsnew/3.8.rst:1460 msgid "" "*preexec_fn*, *pass_fds*, *cwd* and *start_new_session* parameters are not " "set;" msgstr "" -#: whatsnew/3.8.rst:1461 +#: whatsnew/3.8.rst:1462 msgid "the *executable* path contains a directory." msgstr "" -#: whatsnew/3.8.rst:1463 +#: whatsnew/3.8.rst:1464 msgid "(Contributed by Joannah Nanjekye and Victor Stinner in :issue:`35537`.)" msgstr "" -#: whatsnew/3.8.rst:1465 +#: whatsnew/3.8.rst:1466 msgid "" ":func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, :func:" "`shutil.copytree` and :func:`shutil.move` use platform-specific \"fast-copy" @@ -1846,7 +1847,7 @@ msgid "" "Rodolà in :issue:`33671`.)" msgstr "" -#: whatsnew/3.8.rst:1481 +#: whatsnew/3.8.rst:1482 msgid "" ":func:`shutil.copytree` uses :func:`os.scandir` function and all copy " "functions depending from it use cached :func:`os.stat` values. The speedup " @@ -1856,27 +1857,27 @@ msgid "" "on network filesystems. (Contributed by Giampaolo Rodolà in :issue:`33695`.)" msgstr "" -#: whatsnew/3.8.rst:1488 +#: whatsnew/3.8.rst:1489 msgid "" "The default protocol in the :mod:`pickle` module is now Protocol 4, first " "introduced in Python 3.4. It offers better performance and smaller size " "compared to Protocol 3 available since Python 3.0." msgstr "" -#: whatsnew/3.8.rst:1492 +#: whatsnew/3.8.rst:1493 msgid "" "Removed one ``Py_ssize_t`` member from ``PyGC_Head``. All GC tracked " "objects (e.g. tuple, list, dict) size is reduced 4 or 8 bytes. (Contributed " "by Inada Naoki in :issue:`33597`.)" msgstr "" -#: whatsnew/3.8.rst:1496 +#: whatsnew/3.8.rst:1497 msgid "" ":class:`uuid.UUID` now uses ``__slots__`` to reduce its memory footprint. " "(Contributed by Wouter Bolsterlee and Tal Einat in :issue:`30977`)" msgstr "" -#: whatsnew/3.8.rst:1499 +#: whatsnew/3.8.rst:1500 msgid "" "Improved performance of :func:`operator.itemgetter` by 33%. Optimized " "argument handling and added a fast path for the common case of a single non-" @@ -1884,7 +1885,7 @@ msgid "" "standard library). (Contributed by Raymond Hettinger in :issue:`35664`.)" msgstr "" -#: whatsnew/3.8.rst:1505 +#: whatsnew/3.8.rst:1506 msgid "" "Sped-up field lookups in :func:`collections.namedtuple`. They are now more " "than two times faster, making them the fastest form of instance variable " @@ -1892,7 +1893,7 @@ msgid "" "Jevnik, Serhiy Storchaka in :issue:`32492`.)" msgstr "" -#: whatsnew/3.8.rst:1510 +#: whatsnew/3.8.rst:1511 msgid "" "The :class:`list` constructor does not overallocate the internal item buffer " "if the input iterable has a known length (the input implements ``__len__``). " @@ -1900,7 +1901,7 @@ msgid "" "Hettinger and Pablo Galindo in :issue:`33234`.)" msgstr "" -#: whatsnew/3.8.rst:1515 +#: whatsnew/3.8.rst:1516 msgid "" "Doubled the speed of class variable writes. When a non-dunder attribute was " "updated, there was an unnecessary call to update slots. (Contributed by " @@ -1908,7 +1909,7 @@ msgid "" "and Serhiy Storchaka in :issue:`36012`.)" msgstr "" -#: whatsnew/3.8.rst:1520 +#: whatsnew/3.8.rst:1521 msgid "" "Reduced an overhead of converting arguments passed to many builtin functions " "and methods. This sped up calling some simple builtin functions and methods " @@ -1916,18 +1917,18 @@ msgid "" "`35582` and :issue:`36127`.)" msgstr "" -#: whatsnew/3.8.rst:1525 +#: whatsnew/3.8.rst:1526 msgid "" "``LOAD_GLOBAL`` instruction now uses new \"per opcode cache\" mechanism. It " "is about 40% faster now. (Contributed by Yury Selivanov and Inada Naoki in :" "issue:`26219`.)" msgstr "" -#: whatsnew/3.8.rst:1531 +#: whatsnew/3.8.rst:1532 msgid "Build and C API Changes" msgstr "" -#: whatsnew/3.8.rst:1533 +#: whatsnew/3.8.rst:1534 msgid "" "Default :data:`sys.abiflags` became an empty string: the ``m`` flag for " "pymalloc became useless (builds with and without pymalloc are ABI " @@ -1935,22 +1936,22 @@ msgid "" "issue:`36707`.)" msgstr "" -#: whatsnew/3.8.rst:1537 +#: whatsnew/3.8.rst:1538 msgid "Example of changes:" msgstr "" -#: whatsnew/3.8.rst:1539 +#: whatsnew/3.8.rst:1540 msgid "" "Only ``python3.8`` program is installed, ``python3.8m`` program is gone." msgstr "" -#: whatsnew/3.8.rst:1540 +#: whatsnew/3.8.rst:1541 msgid "" "Only ``python3.8-config`` script is installed, ``python3.8m-config`` script " "is gone." msgstr "" -#: whatsnew/3.8.rst:1542 +#: whatsnew/3.8.rst:1543 msgid "" "The ``m`` flag has been removed from the suffix of dynamic library " "filenames: extension modules in the standard library as well as those " @@ -1959,23 +1960,23 @@ msgid "" "linux-gnu.so`` became ``.cpython-38-x86_64-linux-gnu.so`` in Python 3.8." msgstr "" -#: whatsnew/3.8.rst:1549 +#: whatsnew/3.8.rst:1550 msgid "" "The header files have been reorganized to better separate the different " "kinds of APIs:" msgstr "" -#: whatsnew/3.8.rst:1552 +#: whatsnew/3.8.rst:1553 msgid "``Include/*.h`` should be the portable public stable C API." msgstr "" -#: whatsnew/3.8.rst:1553 +#: whatsnew/3.8.rst:1554 msgid "" "``Include/cpython/*.h`` should be the unstable C API specific to CPython; " "public API, with some private API prefixed by ``_Py`` or ``_PY``." msgstr "" -#: whatsnew/3.8.rst:1555 +#: whatsnew/3.8.rst:1556 msgid "" "``Include/internal/*.h`` is the private internal C API very specific to " "CPython. This API comes with no backward compatibility warranty and should " @@ -1984,43 +1985,43 @@ msgid "" "calling functions. This API is now installed by ``make install``." msgstr "" -#: whatsnew/3.8.rst:1561 +#: whatsnew/3.8.rst:1562 msgid "" "(Contributed by Victor Stinner in :issue:`35134` and :issue:`35081`, work " "initiated by Eric Snow in Python 3.7.)" msgstr "" -#: whatsnew/3.8.rst:1564 +#: whatsnew/3.8.rst:1565 msgid "" "Some macros have been converted to static inline functions: parameter types " "and return type are well defined, they don't have issues specific to macros, " "variables have a local scopes. Examples:" msgstr "" -#: whatsnew/3.8.rst:1568 +#: whatsnew/3.8.rst:1569 msgid ":c:func:`Py_INCREF`, :c:func:`Py_DECREF`" msgstr "" -#: whatsnew/3.8.rst:1569 +#: whatsnew/3.8.rst:1570 msgid ":c:func:`Py_XINCREF`, :c:func:`Py_XDECREF`" msgstr "" -#: whatsnew/3.8.rst:1570 +#: whatsnew/3.8.rst:1571 msgid ":c:func:`PyObject_INIT`, :c:func:`PyObject_INIT_VAR`" msgstr "" -#: whatsnew/3.8.rst:1571 +#: whatsnew/3.8.rst:1572 msgid "" "Private functions: :c:func:`_PyObject_GC_TRACK`, :c:func:" "`_PyObject_GC_UNTRACK`, :c:func:`_Py_Dealloc`" msgstr "" -#: whatsnew/3.8.rst:1574 +#: whatsnew/3.8.rst:1575 #, fuzzy msgid "(Contributed by Victor Stinner in :issue:`35059`.)" msgstr "(Contribution par Victor Stinner; :issue:`12049`.)" -#: whatsnew/3.8.rst:1576 +#: whatsnew/3.8.rst:1577 msgid "" "The :c:func:`PyByteArray_Init` and :c:func:`PyByteArray_Fini` functions have " "been removed. They did nothing since Python 2.7.4 and Python 3.2.0, were " @@ -2028,14 +2029,14 @@ msgid "" "(Contributed by Victor Stinner in :issue:`35713`.)" msgstr "" -#: whatsnew/3.8.rst:1581 +#: whatsnew/3.8.rst:1582 msgid "" "The result of :c:func:`PyExceptionClass_Name` is now of type ``const char " "*`` rather of ``char *``. (Contributed by Serhiy Storchaka in :issue:" "`33818`.)" msgstr "" -#: whatsnew/3.8.rst:1585 +#: whatsnew/3.8.rst:1586 msgid "" "The duality of ``Modules/Setup.dist`` and ``Modules/Setup`` has been " "removed. Previously, when updating the CPython source tree, one had to " @@ -2046,7 +2047,7 @@ msgid "" "the file could produce build failures." msgstr "" -#: whatsnew/3.8.rst:1593 +#: whatsnew/3.8.rst:1594 msgid "" "Now the build system always reads from ``Modules/Setup`` inside the source " "tree. People who want to customize that file are encouraged to maintain " @@ -2054,12 +2055,12 @@ msgid "" "for any other change to the source tree." msgstr "" -#: whatsnew/3.8.rst:1598 +#: whatsnew/3.8.rst:1599 #, fuzzy msgid "(Contributed by Antoine Pitrou in :issue:`32430`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`9260`.)" -#: whatsnew/3.8.rst:1600 +#: whatsnew/3.8.rst:1601 msgid "" "Functions that convert Python number to C integer like :c:func:" "`PyLong_AsLong` and argument parsing functions like :c:func:" @@ -2075,7 +2076,7 @@ msgid "" "`20092`.)" msgstr "" -#: whatsnew/3.8.rst:1614 +#: whatsnew/3.8.rst:1615 msgid "" "Heap-allocated type objects will now increase their reference count in :c:" "func:`PyObject_Init` (and its parallel macro ``PyObject_INIT``) instead of " @@ -2084,7 +2085,7 @@ msgid "" "issue:`35810`.)" msgstr "" -#: whatsnew/3.8.rst:1620 +#: whatsnew/3.8.rst:1621 msgid "" "The new function :c:func:`PyCode_NewWithPosOnlyArgs` allows to create code " "objects like :c:func:`PyCode_New`, but with an extra *posonlyargcount* " @@ -2092,25 +2093,25 @@ msgid "" "(Contributed by Pablo Galindo in :issue:`37221`.)" msgstr "" -#: whatsnew/3.8.rst:1625 +#: whatsnew/3.8.rst:1626 msgid "" ":c:func:`Py_SetPath` now sets :data:`sys.executable` to the program full " "path (:c:func:`Py_GetProgramFullPath`) rather than to the program name (:c:" "func:`Py_GetProgramName`). (Contributed by Victor Stinner in :issue:`38234`.)" msgstr "" -#: whatsnew/3.8.rst:1632 +#: whatsnew/3.8.rst:1633 msgid "Deprecated" msgstr "" -#: whatsnew/3.8.rst:1634 +#: whatsnew/3.8.rst:1635 msgid "" "The distutils ``bdist_wininst`` command is now deprecated, use " "``bdist_wheel`` (wheel packages) instead. (Contributed by Victor Stinner in :" "issue:`37481`.)" msgstr "" -#: whatsnew/3.8.rst:1638 +#: whatsnew/3.8.rst:1639 msgid "" "Deprecated methods ``getchildren()`` and ``getiterator()`` in the :mod:`~xml." "etree.ElementTree` module now emit a :exc:`DeprecationWarning` instead of :" @@ -2118,7 +2119,7 @@ msgid "" "(Contributed by Serhiy Storchaka in :issue:`29209`.)" msgstr "" -#: whatsnew/3.8.rst:1644 +#: whatsnew/3.8.rst:1645 msgid "" "Passing an object that is not an instance of :class:`concurrent.futures." "ThreadPoolExecutor` to :meth:`loop.set_default_executor() `. (Contributed by Serhiy Storchaka in :issue:`36492`.)" msgstr "" -#: whatsnew/3.8.rst:1745 +#: whatsnew/3.8.rst:1746 msgid "API and Feature Removals" msgstr "" -#: whatsnew/3.8.rst:1747 +#: whatsnew/3.8.rst:1748 msgid "The following features and APIs have been removed from Python 3.8:" msgstr "" -#: whatsnew/3.8.rst:1749 +#: whatsnew/3.8.rst:1750 msgid "" "Starting with Python 3.3, importing ABCs from :mod:`collections` was " "deprecated, and importing should be done from :mod:`collections.abc`. Being " @@ -2289,20 +2290,20 @@ msgid "" "delayed to 3.9. (See :issue:`36952`.)" msgstr "" -#: whatsnew/3.8.rst:1754 +#: whatsnew/3.8.rst:1755 msgid "" "The :mod:`macpath` module, deprecated in Python 3.7, has been removed. " "(Contributed by Victor Stinner in :issue:`35471`.)" msgstr "" -#: whatsnew/3.8.rst:1876 +#: whatsnew/3.8.rst:1877 msgid "" "The function :func:`platform.popen` has been removed, after having been " "deprecated since Python 3.3: use :func:`os.popen` instead. (Contributed by " "Victor Stinner in :issue:`35345`.)" msgstr "" -#: whatsnew/3.8.rst:1761 +#: whatsnew/3.8.rst:1762 msgid "" "The function :func:`time.clock` has been removed, after having been " "deprecated since Python 3.3: use :func:`time.perf_counter` or :func:`time." @@ -2310,27 +2311,27 @@ msgid "" "behavior. (Contributed by Matthias Bussonnier in :issue:`36895`.)" msgstr "" -#: whatsnew/3.8.rst:1767 +#: whatsnew/3.8.rst:1768 msgid "" "The ``pyvenv`` script has been removed in favor of ``python3.8 -m venv`` to " "help eliminate confusion as to what Python interpreter the ``pyvenv`` script " "is tied to. (Contributed by Brett Cannon in :issue:`25427`.)" msgstr "" -#: whatsnew/3.8.rst:1771 +#: whatsnew/3.8.rst:1772 msgid "" "``parse_qs``, ``parse_qsl``, and ``escape`` are removed from the :mod:`cgi` " "module. They are deprecated in Python 3.2 or older. They should be imported " "from the ``urllib.parse`` and ``html`` modules instead." msgstr "" -#: whatsnew/3.8.rst:1775 +#: whatsnew/3.8.rst:1776 msgid "" "``filemode`` function is removed from the :mod:`tarfile` module. It is not " "documented and deprecated since Python 3.3." msgstr "" -#: whatsnew/3.8.rst:1778 +#: whatsnew/3.8.rst:1779 msgid "" "The :class:`~xml.etree.ElementTree.XMLParser` constructor no longer accepts " "the *html* argument. It never had an effect and was deprecated in Python " @@ -2338,54 +2339,54 @@ msgid "" "only_parameter>`. (Contributed by Serhiy Storchaka in :issue:`29209`.)" msgstr "" -#: whatsnew/3.8.rst:1783 +#: whatsnew/3.8.rst:1784 msgid "" "Removed the ``doctype()`` method of :class:`~xml.etree.ElementTree." "XMLParser`. (Contributed by Serhiy Storchaka in :issue:`29209`.)" msgstr "" -#: whatsnew/3.8.rst:1786 +#: whatsnew/3.8.rst:1787 msgid "" "\"unicode_internal\" codec is removed. (Contributed by Inada Naoki in :issue:" "`36297`.)" msgstr "" -#: whatsnew/3.8.rst:1789 +#: whatsnew/3.8.rst:1790 msgid "" "The ``Cache`` and ``Statement`` objects of the :mod:`sqlite3` module are not " "exposed to the user. (Contributed by Aviv Palivoda in :issue:`30262`.)" msgstr "" -#: whatsnew/3.8.rst:1793 +#: whatsnew/3.8.rst:1794 msgid "" "The ``bufsize`` keyword argument of :func:`fileinput.input` and :func:" "`fileinput.FileInput` which was ignored and deprecated since Python 3.6 has " "been removed. :issue:`36952` (Contributed by Matthias Bussonnier.)" msgstr "" -#: whatsnew/3.8.rst:1797 +#: whatsnew/3.8.rst:1798 msgid "" "The functions :func:`sys.set_coroutine_wrapper` and :func:`sys." "get_coroutine_wrapper` deprecated in Python 3.7 have been removed; :issue:" "`36933` (Contributed by Matthias Bussonnier.)" msgstr "" -#: whatsnew/3.8.rst:1803 +#: whatsnew/3.8.rst:1804 #, fuzzy msgid "Porting to Python 3.8" msgstr "Portage vers Python 3.1" -#: whatsnew/3.8.rst:1805 +#: whatsnew/3.8.rst:1806 msgid "" "This section lists previously described changes and other bugfixes that may " "require changes to your code." msgstr "" -#: whatsnew/3.8.rst:1810 +#: whatsnew/3.8.rst:1811 msgid "Changes in Python behavior" msgstr "" -#: whatsnew/3.8.rst:1812 +#: whatsnew/3.8.rst:1813 msgid "" "Yield expressions (both ``yield`` and ``yield from`` clauses) are now " "disallowed in comprehensions and generator expressions (aside from the " @@ -2393,7 +2394,7 @@ msgid "" "Serhiy Storchaka in :issue:`10544`.)" msgstr "" -#: whatsnew/3.8.rst:1817 +#: whatsnew/3.8.rst:1818 msgid "" "The compiler now produces a :exc:`SyntaxWarning` when identity checks " "(``is`` and ``is not``) are used with certain types of literals (e.g. " @@ -2403,7 +2404,7 @@ msgid "" "issue:`34850`.)" msgstr "" -#: whatsnew/3.8.rst:1824 +#: whatsnew/3.8.rst:1825 msgid "" "The CPython interpreter can swallow exceptions in some circumstances. In " "Python 3.8 this happens in fewer cases. In particular, exceptions raised " @@ -2411,7 +2412,7 @@ msgid "" "(Contributed by Serhiy Storchaka in :issue:`35459`.)" msgstr "" -#: whatsnew/3.8.rst:1829 +#: whatsnew/3.8.rst:1830 msgid "" "Removed ``__str__`` implementations from builtin types :class:`bool`, :class:" "`int`, :class:`float`, :class:`complex` and few classes from the standard " @@ -2421,7 +2422,7 @@ msgid "" "issue:`36793`.)" msgstr "" -#: whatsnew/3.8.rst:1836 +#: whatsnew/3.8.rst:1837 msgid "" "On AIX, :attr:`sys.platform` doesn't contain the major version anymore. It " "is always ``'aix'``, instead of ``'aix3'`` .. ``'aix7'``. Since older " @@ -2430,7 +2431,7 @@ msgid "" "`36588`.)" msgstr "" -#: whatsnew/3.8.rst:1842 +#: whatsnew/3.8.rst:1843 msgid "" ":c:func:`PyEval_AcquireLock` and :c:func:`PyEval_AcquireThread` now " "terminate the current thread if called while the interpreter is finalizing, " @@ -2441,11 +2442,11 @@ msgid "" "`36475`.)" msgstr "" -#: whatsnew/3.8.rst:1852 +#: whatsnew/3.8.rst:1853 msgid "Changes in the Python API" msgstr "" -#: whatsnew/3.8.rst:1854 +#: whatsnew/3.8.rst:1855 msgid "" "The :func:`os.getcwdb` function now uses the UTF-8 encoding on Windows, " "rather than the ANSI code page: see :pep:`529` for the rationale. The " @@ -2453,7 +2454,7 @@ msgid "" "in :issue:`37412`.)" msgstr "" -#: whatsnew/3.8.rst:1859 +#: whatsnew/3.8.rst:1860 msgid "" ":class:`subprocess.Popen` can now use :func:`os.posix_spawn` in some cases " "for better performance. On Windows Subsystem for Linux and QEMU User " @@ -2463,7 +2464,7 @@ msgid "" "by Joannah Nanjekye and Victor Stinner in :issue:`35537`.)" msgstr "" -#: whatsnew/3.8.rst:1866 +#: whatsnew/3.8.rst:1867 msgid "" "The *preexec_fn* argument of * :class:`subprocess.Popen` is no longer " "compatible with subinterpreters. The use of the parameter in a " @@ -2471,20 +2472,20 @@ msgid "" "issue:`34651`, modified by Christian Heimes in :issue:`37951`.)" msgstr "" -#: whatsnew/3.8.rst:1872 +#: whatsnew/3.8.rst:1873 msgid "" "The :meth:`imap.IMAP4.logout` method no longer silently ignores arbitrary " "exceptions. (Contributed by Victor Stinner in :issue:`36348`.)" msgstr "" -#: whatsnew/3.8.rst:1880 +#: whatsnew/3.8.rst:1881 msgid "" "The :func:`statistics.mode` function no longer raises an exception when " "given multimodal data. Instead, it returns the first mode encountered in " "the input data. (Contributed by Raymond Hettinger in :issue:`35892`.)" msgstr "" -#: whatsnew/3.8.rst:1885 +#: whatsnew/3.8.rst:1886 msgid "" "The :meth:`~tkinter.ttk.Treeview.selection` method of the :class:`tkinter." "ttk.Treeview` class no longer takes arguments. Using it with arguments for " @@ -2493,7 +2494,7 @@ msgid "" "selection. (Contributed by Serhiy Storchaka in :issue:`31508`.)" msgstr "" -#: whatsnew/3.8.rst:1891 +#: whatsnew/3.8.rst:1892 msgid "" "The :meth:`writexml`, :meth:`toxml` and :meth:`toprettyxml` methods of :mod:" "`xml.dom.minidom`, and the :meth:`write` method of :mod:`xml.etree`, now " @@ -2501,14 +2502,14 @@ msgid "" "Rojas and Raymond Hettinger in :issue:`34160`.)" msgstr "" -#: whatsnew/3.8.rst:1896 +#: whatsnew/3.8.rst:1897 msgid "" "A :mod:`dbm.dumb` database opened with flags ``'r'`` is now read-only. :func:" "`dbm.dumb.open` with flags ``'r'`` and ``'w'`` no longer creates a database " "if it does not exist. (Contributed by Serhiy Storchaka in :issue:`32749`.)" msgstr "" -#: whatsnew/3.8.rst:1901 +#: whatsnew/3.8.rst:1902 msgid "" "The ``doctype()`` method defined in a subclass of :class:`~xml.etree." "ElementTree.XMLParser` will no longer be called and will emit a :exc:" @@ -2518,7 +2519,7 @@ msgid "" "in :issue:`29209`.)" msgstr "" -#: whatsnew/3.8.rst:1908 +#: whatsnew/3.8.rst:1909 msgid "" "A :exc:`RuntimeError` is now raised when the custom metaclass doesn't " "provide the ``__classcell__`` entry in the namespace passed to ``type." @@ -2526,13 +2527,13 @@ msgid "" "(Contributed by Serhiy Storchaka in :issue:`23722`.)" msgstr "" -#: whatsnew/3.8.rst:1913 +#: whatsnew/3.8.rst:1914 msgid "" "The :class:`cProfile.Profile` class can now be used as a context manager. " "(Contributed by Scott Sanderson in :issue:`29235`.)" msgstr "" -#: whatsnew/3.8.rst:1916 +#: whatsnew/3.8.rst:1917 msgid "" ":func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, :func:" "`shutil.copytree` and :func:`shutil.move` use platform-specific \"fast-copy" @@ -2540,19 +2541,19 @@ msgid "" "section)." msgstr "" -#: whatsnew/3.8.rst:1921 +#: whatsnew/3.8.rst:1922 msgid "" ":func:`shutil.copyfile` default buffer size on Windows was changed from 16 " "KiB to 1 MiB." msgstr "" -#: whatsnew/3.8.rst:1924 +#: whatsnew/3.8.rst:1925 msgid "" "The ``PyGC_Head`` struct has changed completely. All code that touched the " "struct member should be rewritten. (See :issue:`33597`.)" msgstr "" -#: whatsnew/3.8.rst:1927 +#: whatsnew/3.8.rst:1928 msgid "" "The :c:type:`PyInterpreterState` struct has been moved into the \"internal\" " "header files (specifically Include/internal/pycore_pystate.h). An opaque " @@ -2564,7 +2565,7 @@ msgid "" "functions to the public API). (See :issue:`35886`.)" msgstr "" -#: whatsnew/3.8.rst:1937 +#: whatsnew/3.8.rst:1938 msgid "" "The :meth:`mmap.flush() ` method now returns ``None`` on " "success and raises an exception on error under all platforms. Previously, " @@ -2574,13 +2575,13 @@ msgid "" "(Contributed by Berker Peksag in :issue:`2122`.)" msgstr "" -#: whatsnew/3.8.rst:1944 +#: whatsnew/3.8.rst:1945 msgid "" ":mod:`xml.dom.minidom` and :mod:`xml.sax` modules no longer process external " "entities by default. (Contributed by Christian Heimes in :issue:`17239`.)" msgstr "" -#: whatsnew/3.8.rst:1948 +#: whatsnew/3.8.rst:1949 msgid "" "Deleting a key from a read-only :mod:`dbm` database (:mod:`dbm.dumb`, :mod:" "`dbm.gnu` or :mod:`dbm.ndbm`) raises :attr:`error` (:exc:`dbm.dumb.error`, :" @@ -2588,7 +2589,7 @@ msgid "" "(Contributed by Xiang Zhang in :issue:`33106`.)" msgstr "" -#: whatsnew/3.8.rst:1953 +#: whatsnew/3.8.rst:1954 msgid "" "Simplified AST for literals. All constants will be represented as :class:" "`ast.Constant` instances. Instantiating old classes ``Num``, ``Str``, " @@ -2596,7 +2597,7 @@ msgid "" "``Constant``. (Contributed by Serhiy Storchaka in :issue:`32892`.)" msgstr "" -#: whatsnew/3.8.rst:1969 +#: whatsnew/3.8.rst:1970 msgid "" "The function :func:`asyncio.wait_for` now correctly waits for cancellation " "when using an instance of :class:`asyncio.Task`. Previously, upon reaching " @@ -2604,18 +2605,18 @@ msgid "" "Pranskevichus in :issue:`32751`.)" msgstr "" -#: whatsnew/3.8.rst:1974 +#: whatsnew/3.8.rst:1975 msgid "" "The function :func:`asyncio.BaseTransport.get_extra_info` now returns a safe " "to use socket object when 'socket' is passed to the *name* parameter. " "(Contributed by Yury Selivanov in :issue:`37027`.)" msgstr "" -#: whatsnew/3.8.rst:1978 +#: whatsnew/3.8.rst:1979 msgid ":class:`asyncio.BufferedProtocol` has graduated to the stable API." msgstr "" -#: whatsnew/3.8.rst:1982 +#: whatsnew/3.8.rst:1983 msgid "" "DLL dependencies for extension modules and DLLs loaded with :mod:`ctypes` on " "Windows are now resolved more securely. Only the system paths, the directory " @@ -2630,14 +2631,14 @@ msgid "" "verified by the installer). (Contributed by Steve Dower in :issue:`36085`.)" msgstr "" -#: whatsnew/3.8.rst:1995 +#: whatsnew/3.8.rst:1996 msgid "" "The header files and functions related to pgen have been removed after its " "replacement by a pure Python implementation. (Contributed by Pablo Galindo " "in :issue:`36623`.)" msgstr "" -#: whatsnew/3.8.rst:1999 +#: whatsnew/3.8.rst:2000 msgid "" ":class:`types.CodeType` has a new parameter in the second position of the " "constructor (*posonlyargcount*) to support positional-only arguments defined " @@ -2647,11 +2648,11 @@ msgid "" "code future-proof." msgstr "" -#: whatsnew/3.8.rst:2008 +#: whatsnew/3.8.rst:2009 msgid "Changes in the C API" msgstr "" -#: whatsnew/3.8.rst:2010 +#: whatsnew/3.8.rst:2011 msgid "" "The :c:type:`PyCompilerFlags` structure got a new *cf_feature_version* " "field. It should be initialized to ``PY_MINOR_VERSION``. The field is " @@ -2659,14 +2660,14 @@ msgid "" "in *cf_flags*. (Contributed by Guido van Rossum in :issue:`35766`.)" msgstr "" -#: whatsnew/3.8.rst:2016 +#: whatsnew/3.8.rst:2017 msgid "" "The :c:func:`PyEval_ReInitThreads` function has been removed from the C API. " "It should not be called explicitly: use :c:func:`PyOS_AfterFork_Child` " "instead. (Contributed by Victor Stinner in :issue:`36728`.)" msgstr "" -#: whatsnew/3.8.rst:2021 +#: whatsnew/3.8.rst:2022 msgid "" "On Unix, C extensions are no longer linked to libpython except on Android " "and Cygwin. When Python is embedded, ``libpython`` must not be loaded with " @@ -2677,7 +2678,7 @@ msgid "" "Stinner in :issue:`21536`.)" msgstr "" -#: whatsnew/3.8.rst:2029 +#: whatsnew/3.8.rst:2030 msgid "" "Use of ``#`` variants of formats in parsing or building value (e.g. :c:func:" "`PyArg_ParseTuple`, :c:func:`Py_BuildValue`, :c:func:" @@ -2686,7 +2687,7 @@ msgid "" "`arg-parsing` for detail. (Contributed by Inada Naoki in :issue:`36381`.)" msgstr "" -#: whatsnew/3.8.rst:2035 +#: whatsnew/3.8.rst:2036 msgid "" "Instances of heap-allocated types (such as those created with :c:func:" "`PyType_FromSpec`) hold a reference to their type object. Increasing the " @@ -2696,11 +2697,11 @@ msgid "" "through :c:func:`PyType_FromSpec` behave like other classes in managed code." msgstr "" -#: whatsnew/3.8.rst:2043 -msgid "Statically allocated types are not affected." +#: whatsnew/3.8.rst:2044 +msgid ":ref:`Statically allocated types ` are not affected." msgstr "" -#: whatsnew/3.8.rst:2045 +#: whatsnew/3.8.rst:2046 msgid "" "For the vast majority of cases, there should be no side effect. However, " "types that manually increase the reference count after allocating an " @@ -2709,12 +2710,12 @@ msgid "" "instance deallocation." msgstr "" -#: whatsnew/3.8.rst:2051 +#: whatsnew/3.8.rst:2052 msgid "" "To correctly port these types into 3.8, please apply the following changes:" msgstr "" -#: whatsnew/3.8.rst:2054 +#: whatsnew/3.8.rst:2055 msgid "" "Remove :c:macro:`Py_INCREF` on the type object after allocating an instance " "- if any. This may happen after calling :c:func:`PyObject_New`, :c:func:" @@ -2723,31 +2724,31 @@ msgid "" "`PyObject_INIT`." msgstr "" -#: whatsnew/3.8.rst:2080 whatsnew/3.8.rst:2099 +#: whatsnew/3.8.rst:2081 whatsnew/3.8.rst:2100 msgid "Example:" msgstr "Exemple :" -#: whatsnew/3.8.rst:2077 +#: whatsnew/3.8.rst:2078 msgid "" "Ensure that all custom ``tp_dealloc`` functions of heap-allocated types " "decrease the type's reference count." msgstr "" -#: whatsnew/3.8.rst:2094 +#: whatsnew/3.8.rst:2095 msgid "(Contributed by Eddie Elizondo in :issue:`35810`.)" msgstr "" -#: whatsnew/3.8.rst:2096 +#: whatsnew/3.8.rst:2097 msgid "" "The :c:macro:`Py_DEPRECATED()` macro has been implemented for MSVC. The " "macro now must be placed before the symbol name." msgstr "" -#: whatsnew/3.8.rst:2105 +#: whatsnew/3.8.rst:2106 msgid "(Contributed by Zackery Spytz in :issue:`33407`.)" msgstr "" -#: whatsnew/3.8.rst:2107 +#: whatsnew/3.8.rst:2108 msgid "" "The interpreter does not pretend to support binary compatibility of " "extension types across feature releases, anymore. A :c:type:`PyTypeObject` " @@ -2757,18 +2758,18 @@ msgid "" "before reading :c:member:`~PyTypeObject.tp_finalize`)." msgstr "" -#: whatsnew/3.8.rst:2114 +#: whatsnew/3.8.rst:2115 #, fuzzy msgid "(Contributed by Antoine Pitrou in :issue:`32388`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`13748`.)" -#: whatsnew/3.8.rst:2116 +#: whatsnew/3.8.rst:2117 msgid "" "The functions :c:func:`PyNode_AddChild` and :c:func:`PyParser_AddToken` now " "accept two additional ``int`` arguments *end_lineno* and *end_col_offset*." msgstr "" -#: whatsnew/3.8.rst:2119 +#: whatsnew/3.8.rst:2120 msgid "" "The :file:`libpython38.a` file to allow MinGW tools to link directly " "against :file:`python38.dll` is no longer included in the regular Windows " @@ -2777,7 +2778,7 @@ msgid "" "package:" msgstr "" -#: whatsnew/3.8.rst:2129 +#: whatsnew/3.8.rst:2130 msgid "" "The location of an installed :file:`pythonXY.dll` will depend on the " "installation options and the version and language of Windows. See :ref:" @@ -2786,15 +2787,15 @@ msgid "" "the :file:`libs` directory under your Python installation." msgstr "" -#: whatsnew/3.8.rst:2135 +#: whatsnew/3.8.rst:2136 msgid "(Contributed by Steve Dower in :issue:`37351`.)" msgstr "" -#: whatsnew/3.8.rst:2139 +#: whatsnew/3.8.rst:2140 msgid "CPython bytecode changes" msgstr "" -#: whatsnew/3.8.rst:2141 +#: whatsnew/3.8.rst:2142 msgid "" "The interpreter loop has been simplified by moving the logic of unrolling " "the stack of blocks into the compiler. The compiler emits now explicit " @@ -2802,7 +2803,7 @@ msgid "" "code for :keyword:`break`, :keyword:`continue` and :keyword:`return`." msgstr "" -#: whatsnew/3.8.rst:2147 +#: whatsnew/3.8.rst:2148 msgid "" "Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, :opcode:" "`SETUP_LOOP` and :opcode:`SETUP_EXCEPT`. Added new opcodes :opcode:" @@ -2811,20 +2812,20 @@ msgid "" "`WITH_CLEANUP_START`." msgstr "" -#: whatsnew/3.8.rst:2153 +#: whatsnew/3.8.rst:2154 msgid "" "(Contributed by Mark Shannon, Antoine Pitrou and Serhiy Storchaka in :issue:" "`17611`.)" msgstr "" -#: whatsnew/3.8.rst:2156 +#: whatsnew/3.8.rst:2157 msgid "" "Added new opcode :opcode:`END_ASYNC_FOR` for handling exceptions raised when " "awaiting a next item in an :keyword:`async for` loop. (Contributed by Serhiy " "Storchaka in :issue:`33041`.)" msgstr "" -#: whatsnew/3.8.rst:2160 +#: whatsnew/3.8.rst:2161 msgid "" "The :opcode:`MAP_ADD` now expects the value as the first element in the " "stack and the key as the second element. This change was made so the key is " @@ -2832,22 +2833,22 @@ msgid "" "by :pep:`572`. (Contributed by Jörn Heissler in :issue:`35224`.)" msgstr "" -#: whatsnew/3.8.rst:2167 +#: whatsnew/3.8.rst:2168 msgid "Demos and Tools" msgstr "" -#: whatsnew/3.8.rst:2169 +#: whatsnew/3.8.rst:2170 msgid "" "Added a benchmark script for timing various ways to access variables: " "``Tools/scripts/var_access_benchmark.py``. (Contributed by Raymond Hettinger " "in :issue:`35884`.)" msgstr "" -#: whatsnew/3.8.rst:2173 +#: whatsnew/3.8.rst:2174 msgid "Here's a summary of performance improvements since Python 3.3:" msgstr "" -#: whatsnew/3.8.rst:2220 +#: whatsnew/3.8.rst:2221 msgid "" "The benchmarks were measured on an `Intel® Core™ i7-4960HQ processor " "\n" @@ -229,7 +229,7 @@ msgid "" "Python as well. Consult the :ref:`removed-in-python-39` section." msgstr "" -#: whatsnew/3.9.rst:1258 +#: whatsnew/3.9.rst:1259 msgid "New Features" msgstr "Nouvelles fonctionnalités" @@ -379,10 +379,10 @@ msgstr "" #: whatsnew/3.9.rst:234 msgid "" -"In the :ref:`Python Development Mode ` and in 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`." +"In the :ref:`Python Development Mode ` and in :ref:`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 "" #: whatsnew/3.9.rst:239 @@ -1081,7 +1081,7 @@ msgid "" "(Contributed by Huon Wilson in :issue:`40630`.)" msgstr "" -#: whatsnew/3.9.rst:1484 +#: whatsnew/3.9.rst:1485 msgid "typing" msgstr "" @@ -1386,7 +1386,7 @@ msgid "" "(Contributed by Raymond Hettinger in :issue:`40465`)" msgstr "" -#: whatsnew/3.9.rst:1398 +#: whatsnew/3.9.rst:1399 msgid "Removed" msgstr "" @@ -1563,7 +1563,7 @@ msgid "" "unicode characters." msgstr "" -#: whatsnew/3.9.rst:1320 +#: whatsnew/3.9.rst:1321 msgid "Porting to Python 3.9" msgstr "" @@ -1694,35 +1694,36 @@ msgstr "" #: whatsnew/3.9.rst:1139 msgid "" -"Instances of heap-allocated 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." +"Instances of :ref:`heap-allocated 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 "" #: whatsnew/3.9.rst:1160 msgid "" "If your traverse function delegates to ``tp_traverse`` of its base class (or " "another type), ensure that ``Py_TYPE(self)`` is visited only once. Note that " -"only heap types are expected to visit the type in ``tp_traverse``." +"only :ref:`heap type ` are expected to visit the type in " +"``tp_traverse``." msgstr "" -#: whatsnew/3.9.rst:1164 +#: whatsnew/3.9.rst:1165 msgid "For example, if your ``tp_traverse`` function includes:" msgstr "" -#: whatsnew/3.9.rst:1170 +#: whatsnew/3.9.rst:1171 msgid "then add:" msgstr "" -#: whatsnew/3.9.rst:1183 +#: whatsnew/3.9.rst:1184 msgid "(See :issue:`35810` and :issue:`40217` for more information.)" msgstr "" -#: whatsnew/3.9.rst:1185 +#: whatsnew/3.9.rst:1186 msgid "" "The functions ``PyEval_CallObject``, ``PyEval_CallFunction``, " "``PyEval_CallMethod`` and ``PyEval_CallObjectWithKeywords`` are deprecated. " @@ -1730,11 +1731,11 @@ msgid "" "issue:`29548`.)" msgstr "" -#: whatsnew/3.9.rst:1191 +#: whatsnew/3.9.rst:1192 msgid "CPython bytecode changes" msgstr "" -#: whatsnew/3.9.rst:1193 +#: whatsnew/3.9.rst:1194 msgid "" "The :opcode:`LOAD_ASSERTION_ERROR` opcode was added for handling the :" "keyword:`assert` statement. Previously, the assert statement would not work " @@ -1742,37 +1743,37 @@ msgid "" "(Contributed by Zackery Spytz in :issue:`34880`.)" msgstr "" -#: whatsnew/3.9.rst:1198 +#: whatsnew/3.9.rst:1199 msgid "" "The :opcode:`COMPARE_OP` opcode was split into four distinct instructions:" msgstr "" -#: whatsnew/3.9.rst:1200 +#: whatsnew/3.9.rst:1201 msgid "``COMPARE_OP`` for rich comparisons" msgstr "" -#: whatsnew/3.9.rst:1201 +#: whatsnew/3.9.rst:1202 msgid "``IS_OP`` for 'is' and 'is not' tests" msgstr "" -#: whatsnew/3.9.rst:1202 +#: whatsnew/3.9.rst:1203 msgid "``CONTAINS_OP`` for 'in' and 'not in' tests" msgstr "" -#: whatsnew/3.9.rst:1203 +#: whatsnew/3.9.rst:1204 msgid "" "``JUMP_IF_NOT_EXC_MATCH`` for checking exceptions in 'try-except' statements." msgstr "" -#: whatsnew/3.9.rst:1206 +#: whatsnew/3.9.rst:1207 msgid "(Contributed by Mark Shannon in :issue:`39156`.)" msgstr "" -#: whatsnew/3.9.rst:1210 +#: whatsnew/3.9.rst:1211 msgid "Build Changes" msgstr "" -#: whatsnew/3.9.rst:1212 +#: whatsnew/3.9.rst:1213 msgid "" "Added ``--with-platlibdir`` option to the ``configure`` script: name of the " "platform-specific library directory, stored in the new :attr:`sys." @@ -1781,43 +1782,43 @@ msgid "" "and Victor Stinner in :issue:`1294959`.)" msgstr "" -#: whatsnew/3.9.rst:1218 +#: whatsnew/3.9.rst:1219 msgid "" "The ``COUNT_ALLOCS`` special build macro has been removed. (Contributed by " "Victor Stinner in :issue:`39489`.)" msgstr "" -#: whatsnew/3.9.rst:1221 +#: whatsnew/3.9.rst:1222 msgid "" "On non-Windows platforms, the :c:func:`setenv` and :c:func:`unsetenv` " "functions are now required to build Python. (Contributed by Victor Stinner " "in :issue:`39395`.)" msgstr "" -#: whatsnew/3.9.rst:1225 +#: whatsnew/3.9.rst:1226 msgid "" "On non-Windows platforms, creating ``bdist_wininst`` installers is now " "officially unsupported. (See :issue:`10945` for more details.)" msgstr "" -#: whatsnew/3.9.rst:1228 +#: whatsnew/3.9.rst:1229 msgid "" "When building Python on macOS from source, ``_tkinter`` now links with non-" "system Tcl and Tk frameworks if they are installed in ``/Library/" "Frameworks``, as had been the case on older releases of macOS. If a macOS " -"SDK is explicitly configured, by using ``--enable-universalsdk=`` or ``-" +"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`.)" +"be overridden with :option:`--with-tcltk-includes` and :option:`--with-tcltk-" +"libs`. (Contributed by Ned Deily in :issue:`34956`.)" msgstr "" -#: whatsnew/3.9.rst:1237 +#: whatsnew/3.9.rst:1238 msgid "" "Python can now be built for Windows 10 ARM64. (Contributed by Steve Dower " "in :issue:`33125`.)" msgstr "" -#: whatsnew/3.9.rst:1240 +#: whatsnew/3.9.rst:1241 msgid "" "Some individual tests are now skipped when ``--pgo`` is used. The tests in " "question increased the PGO task time significantly and likely didn't help " @@ -1833,11 +1834,11 @@ msgid "" "details.)" msgstr "" -#: whatsnew/3.9.rst:1255 +#: whatsnew/3.9.rst:1256 msgid "C API Changes" msgstr "" -#: whatsnew/3.9.rst:1260 +#: whatsnew/3.9.rst:1261 msgid "" ":pep:`573`: Added :c:func:`PyType_FromModuleAndSpec` to associate a module " "with a class; :c:func:`PyType_GetModule` and :c:func:`PyType_GetModuleState` " @@ -1846,20 +1847,20 @@ msgid "" "(Contributed by Marcel Plch and Petr Viktorin in :issue:`38787`.)" msgstr "" -#: whatsnew/3.9.rst:1267 +#: whatsnew/3.9.rst:1268 msgid "" "Added :c:func:`PyFrame_GetCode` function: get a frame code. Added :c:func:" "`PyFrame_GetBack` function: get the frame next outer frame. (Contributed by " "Victor Stinner in :issue:`40421`.)" msgstr "" -#: whatsnew/3.9.rst:1271 +#: whatsnew/3.9.rst:1272 msgid "" "Added :c:func:`PyFrame_GetLineNumber` to the limited C API. (Contributed by " "Victor Stinner in :issue:`40421`.)" msgstr "" -#: whatsnew/3.9.rst:1274 +#: whatsnew/3.9.rst:1275 msgid "" "Added :c:func:`PyThreadState_GetInterpreter` and :c:func:" "`PyInterpreterState_Get` functions to get the interpreter. Added :c:func:" @@ -1869,7 +1870,7 @@ msgid "" "issue:`39947`.)" msgstr "" -#: whatsnew/3.9.rst:1282 +#: whatsnew/3.9.rst:1283 msgid "" "Added a new public :c:func:`PyObject_CallNoArgs` function to the C API, " "which calls a callable Python object without any arguments. It is the most " @@ -1877,11 +1878,11 @@ msgid "" "(Contributed by Victor Stinner in :issue:`37194`.)" msgstr "" -#: whatsnew/3.9.rst:1409 +#: whatsnew/3.9.rst:1410 msgid "Changes in the limited C API (if ``Py_LIMITED_API`` macro is defined):" msgstr "" -#: whatsnew/3.9.rst:1289 +#: whatsnew/3.9.rst:1290 msgid "" "Provide :c:func:`Py_EnterRecursiveCall` and :c:func:`Py_LeaveRecursiveCall` " "as regular functions for the limited API. Previously, there were defined as " @@ -1890,23 +1891,23 @@ msgid "" "the limited C API)." msgstr "" -#: whatsnew/3.9.rst:1295 +#: whatsnew/3.9.rst:1296 msgid "" "``PyObject_INIT()`` and ``PyObject_INIT_VAR()`` become regular \"opaque\" " "function to hide implementation details." msgstr "" -#: whatsnew/3.9.rst:1436 +#: whatsnew/3.9.rst:1437 msgid "(Contributed by Victor Stinner in :issue:`38644` and :issue:`39542`.)" msgstr "" -#: whatsnew/3.9.rst:1300 +#: whatsnew/3.9.rst:1301 msgid "" "The :c:func:`PyModule_AddType` function is added to help adding a type to a " "module. (Contributed by Dong-hee Na in :issue:`40024`.)" msgstr "" -#: whatsnew/3.9.rst:1304 +#: whatsnew/3.9.rst:1305 msgid "" "Added the functions :c:func:`PyObject_GC_IsTracked` and :c:func:" "`PyObject_GC_IsFinalized` to the public API to allow to query if Python " @@ -1915,27 +1916,27 @@ msgid "" "issue:`40241`.)" msgstr "" -#: whatsnew/3.9.rst:1310 +#: whatsnew/3.9.rst:1311 msgid "" "Added :c:func:`_PyObject_FunctionStr` to get a user-friendly string " "representation of a function-like object. (Patch by Jeroen Demeyer in :issue:" "`37645`.)" msgstr "" -#: whatsnew/3.9.rst:1314 +#: whatsnew/3.9.rst:1315 msgid "" "Added :c:func:`PyObject_CallOneArg` for calling an object with one " "positional argument (Patch by Jeroen Demeyer in :issue:`37483`.)" msgstr "" -#: whatsnew/3.9.rst:1322 +#: whatsnew/3.9.rst:1323 msgid "" "``PyInterpreterState.eval_frame`` (:pep:`523`) now requires a new mandatory " "*tstate* parameter (``PyThreadState*``). (Contributed by Victor Stinner in :" "issue:`38500`.)" msgstr "" -#: whatsnew/3.9.rst:1326 +#: whatsnew/3.9.rst:1327 msgid "" "Extension modules: :c:member:`~PyModuleDef.m_traverse`, :c:member:" "`~PyModuleDef.m_clear` and :c:member:`~PyModuleDef.m_free` functions of :c:" @@ -1947,12 +1948,12 @@ msgid "" "`PyModule_GetState`) is ``NULL``." msgstr "" -#: whatsnew/3.9.rst:1335 +#: whatsnew/3.9.rst:1336 msgid "" "Extension modules without module state (``m_size <= 0``) are not affected." msgstr "" -#: whatsnew/3.9.rst:1337 +#: whatsnew/3.9.rst:1338 msgid "" "If :c:func:`Py_AddPendingCall` is called in a subinterpreter, the function " "is now scheduled to be called from the subinterpreter, rather than being " @@ -1960,7 +1961,7 @@ msgid "" "of scheduled calls. (Contributed by Victor Stinner in :issue:`39984`.)" msgstr "" -#: whatsnew/3.9.rst:1343 +#: whatsnew/3.9.rst:1344 msgid "" "The Windows registry is no longer used to initialize :data:`sys.path` when " "the ``-E`` option is used (if :c:member:`PyConfig.use_environment` is set to " @@ -1968,21 +1969,21 @@ msgid "" "by Zackery Spytz in :issue:`8901`.)" msgstr "" -#: whatsnew/3.9.rst:1348 +#: whatsnew/3.9.rst:1349 msgid "" "The global variable :c:data:`PyStructSequence_UnnamedField` is now a " "constant and refers to a constant string. (Contributed by Serhiy Storchaka " "in :issue:`38650`.)" msgstr "" -#: whatsnew/3.9.rst:1352 +#: whatsnew/3.9.rst:1353 msgid "" "The :c:type:`PyGC_Head` structure is now opaque. It is only defined in the " "internal C API (``pycore_gc.h``). (Contributed by Victor Stinner in :issue:" "`40241`.)" msgstr "" -#: whatsnew/3.9.rst:1356 +#: whatsnew/3.9.rst:1357 msgid "" "The ``Py_UNICODE_COPY``, ``Py_UNICODE_FILL``, ``PyUnicode_WSTR_LENGTH``, :c:" "func:`PyUnicode_FromUnicode`, :c:func:`PyUnicode_AsUnicode`, " @@ -1991,7 +1992,7 @@ msgid "" "Python 3.3. (Contributed by Inada Naoki in :issue:`36346`.)" msgstr "" -#: whatsnew/3.9.rst:1363 +#: whatsnew/3.9.rst:1364 msgid "" "The :c:func:`Py_FatalError` function is replaced with a macro which logs " "automatically the name of the current function, unless the " @@ -1999,22 +2000,22 @@ msgid "" "issue:`39882`.)" msgstr "" -#: whatsnew/3.9.rst:1368 +#: whatsnew/3.9.rst:1369 msgid "" "The vectorcall protocol now requires that the caller passes only strings as " "keyword names. (See :issue:`37540` for more information.)" msgstr "" -#: whatsnew/3.9.rst:1371 +#: whatsnew/3.9.rst:1372 msgid "" "Implementation details of a number of macros and functions are now hidden:" msgstr "" -#: whatsnew/3.9.rst:1373 +#: whatsnew/3.9.rst:1374 msgid ":c:func:`PyObject_IS_GC` macro was converted to a function." msgstr "" -#: whatsnew/3.9.rst:1375 +#: whatsnew/3.9.rst:1376 msgid "" "The :c:func:`PyObject_NEW` macro becomes an alias to the :c:func:" "`PyObject_New` macro, and the :c:func:`PyObject_NEW_VAR` macro becomes an " @@ -2022,45 +2023,45 @@ msgid "" "the :c:member:`PyTypeObject.tp_basicsize` member." msgstr "" -#: whatsnew/3.9.rst:1380 +#: whatsnew/3.9.rst:1381 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 "" -#: whatsnew/3.9.rst:1384 +#: whatsnew/3.9.rst:1385 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 "" -#: whatsnew/3.9.rst:1388 +#: whatsnew/3.9.rst:1389 msgid "" ":c:func:`PyObject_CheckBuffer` macro was converted to a function: the macro " "accessed directly the :c:member:`PyTypeObject.tp_as_buffer` member." msgstr "" -#: whatsnew/3.9.rst:1391 +#: whatsnew/3.9.rst:1392 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 "" -#: whatsnew/3.9.rst:1395 +#: whatsnew/3.9.rst:1396 msgid "(See :issue:`40170` for more details.)" msgstr "" -#: whatsnew/3.9.rst:1400 +#: whatsnew/3.9.rst:1401 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 "" -#: whatsnew/3.9.rst:1404 +#: whatsnew/3.9.rst:1405 msgid "" "The ``tp_print`` slot of :ref:`PyTypeObject ` has been " "removed. It was used for printing objects to files in Python 2.7 and before. " @@ -2068,89 +2069,89 @@ msgid "" "Demeyer in :issue:`36974`.)" msgstr "" -#: whatsnew/3.9.rst:1411 +#: whatsnew/3.9.rst:1412 msgid "Excluded the following functions from the limited C API:" msgstr "" -#: whatsnew/3.9.rst:1413 +#: whatsnew/3.9.rst:1414 msgid "" "``PyThreadState_DeleteCurrent()`` (Contributed by Joannah Nanjekye in :issue:" "`37878`.)" msgstr "" -#: whatsnew/3.9.rst:1415 +#: whatsnew/3.9.rst:1416 msgid "``_Py_CheckRecursionLimit``" msgstr "" -#: whatsnew/3.9.rst:1416 +#: whatsnew/3.9.rst:1417 msgid "``_Py_NewReference()``" msgstr "" -#: whatsnew/3.9.rst:1417 +#: whatsnew/3.9.rst:1418 msgid "``_Py_ForgetReference()``" msgstr "" -#: whatsnew/3.9.rst:1418 +#: whatsnew/3.9.rst:1419 msgid "``_PyTraceMalloc_NewReference()``" msgstr "" -#: whatsnew/3.9.rst:1419 +#: whatsnew/3.9.rst:1420 msgid "``_Py_GetRefTotal()``" msgstr "" -#: whatsnew/3.9.rst:1420 +#: whatsnew/3.9.rst:1421 msgid "The trashcan mechanism which never worked in the limited C API." msgstr "" -#: whatsnew/3.9.rst:1421 +#: whatsnew/3.9.rst:1422 msgid "``PyTrash_UNWIND_LEVEL``" msgstr "" -#: whatsnew/3.9.rst:1422 +#: whatsnew/3.9.rst:1423 msgid "``Py_TRASHCAN_BEGIN_CONDITION``" msgstr "" -#: whatsnew/3.9.rst:1423 +#: whatsnew/3.9.rst:1424 msgid "``Py_TRASHCAN_BEGIN``" msgstr "" -#: whatsnew/3.9.rst:1424 +#: whatsnew/3.9.rst:1425 msgid "``Py_TRASHCAN_END``" msgstr "" -#: whatsnew/3.9.rst:1425 +#: whatsnew/3.9.rst:1426 msgid "``Py_TRASHCAN_SAFE_BEGIN``" msgstr "" -#: whatsnew/3.9.rst:1426 +#: whatsnew/3.9.rst:1427 msgid "``Py_TRASHCAN_SAFE_END``" msgstr "" -#: whatsnew/3.9.rst:1428 +#: whatsnew/3.9.rst:1429 msgid "Moved following functions and definitions to the internal C API:" msgstr "" -#: whatsnew/3.9.rst:1430 +#: whatsnew/3.9.rst:1431 msgid "``_PyDebug_PrintTotalRefs()``" msgstr "" -#: whatsnew/3.9.rst:1431 +#: whatsnew/3.9.rst:1432 msgid "``_Py_PrintReferences()``" msgstr "" -#: whatsnew/3.9.rst:1432 +#: whatsnew/3.9.rst:1433 msgid "``_Py_PrintReferenceAddresses()``" msgstr "" -#: whatsnew/3.9.rst:1433 +#: whatsnew/3.9.rst:1434 msgid "``_Py_tracemalloc_config``" msgstr "" -#: whatsnew/3.9.rst:1434 +#: whatsnew/3.9.rst:1435 msgid "``_Py_AddToAllObjects()`` (specific to ``Py_TRACE_REFS`` build)" msgstr "" -#: whatsnew/3.9.rst:1438 +#: whatsnew/3.9.rst:1439 msgid "" "Removed ``_PyRuntime.getframe`` hook and removed ``_PyThreadState_GetFrame`` " "macro which was an alias to ``_PyRuntime.getframe``. They were only exposed " @@ -2158,72 +2159,72 @@ msgid "" "(Contributed by Victor Stinner in :issue:`39946`.)" msgstr "" -#: whatsnew/3.9.rst:1443 +#: whatsnew/3.9.rst:1444 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 "" -#: whatsnew/3.9.rst:1448 +#: whatsnew/3.9.rst:1449 msgid "``PyAsyncGen_ClearFreeLists()``" msgstr "" -#: whatsnew/3.9.rst:1449 +#: whatsnew/3.9.rst:1450 msgid "``PyContext_ClearFreeList()``" msgstr "" -#: whatsnew/3.9.rst:1450 +#: whatsnew/3.9.rst:1451 msgid "``PyDict_ClearFreeList()``" msgstr "" -#: whatsnew/3.9.rst:1451 +#: whatsnew/3.9.rst:1452 msgid "``PyFloat_ClearFreeList()``" msgstr "" -#: whatsnew/3.9.rst:1452 +#: whatsnew/3.9.rst:1453 msgid "``PyFrame_ClearFreeList()``" msgstr "" -#: whatsnew/3.9.rst:1453 +#: whatsnew/3.9.rst:1454 msgid "``PyList_ClearFreeList()``" msgstr "" -#: whatsnew/3.9.rst:1454 +#: whatsnew/3.9.rst:1455 msgid "" "``PyMethod_ClearFreeList()`` and ``PyCFunction_ClearFreeList()``: the free " "lists of bound method objects have been removed." msgstr "" -#: whatsnew/3.9.rst:1456 +#: whatsnew/3.9.rst:1457 msgid "" "``PySet_ClearFreeList()``: the set free list has been removed in Python 3.4." msgstr "" -#: whatsnew/3.9.rst:1458 +#: whatsnew/3.9.rst:1459 msgid "``PyTuple_ClearFreeList()``" msgstr "" -#: whatsnew/3.9.rst:1459 +#: whatsnew/3.9.rst:1460 msgid "" "``PyUnicode_ClearFreeList()``: the Unicode free list has been removed in " "Python 3.3." msgstr "" -#: whatsnew/3.9.rst:1462 +#: whatsnew/3.9.rst:1463 msgid "" "Removed ``_PyUnicode_ClearStaticStrings()`` function. (Contributed by Victor " "Stinner in :issue:`39465`.)" msgstr "" -#: whatsnew/3.9.rst:1465 +#: whatsnew/3.9.rst:1466 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 "" -#: whatsnew/3.9.rst:1470 +#: whatsnew/3.9.rst:1471 msgid "" "Cleaned header files of interfaces defined but with no implementation. The " "public API symbols being removed are: " @@ -2236,26 +2237,26 @@ msgid "" "`39372`.)" msgstr "" -#: whatsnew/3.9.rst:1481 +#: whatsnew/3.9.rst:1482 msgid "Notable changes in Python 3.9.1" msgstr "" -#: whatsnew/3.9.rst:1486 +#: whatsnew/3.9.rst:1487 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 "" -#: whatsnew/3.9.rst:1489 +#: whatsnew/3.9.rst:1490 msgid "``Literal`` now de-duplicates parameters." msgstr "" -#: whatsnew/3.9.rst:1490 +#: whatsnew/3.9.rst:1491 msgid "" "Equality comparisons between ``Literal`` objects are now order independent." msgstr "" -#: whatsnew/3.9.rst:1491 +#: whatsnew/3.9.rst:1492 msgid "" "``Literal`` comparisons now respect types. For example, ``Literal[0] == " "Literal[False]`` previously evaluated to ``True``. It is now ``False``. To " @@ -2263,7 +2264,7 @@ msgid "" "differentiating types." msgstr "" -#: whatsnew/3.9.rst:1495 +#: whatsnew/3.9.rst:1496 msgid "" "``Literal`` objects will now raise a :exc:`TypeError` exception during " "equality comparisons if any of their parameters are not :term:`hashable`. " @@ -2271,15 +2272,15 @@ msgid "" "error::" msgstr "" -#: whatsnew/3.9.rst:1507 +#: whatsnew/3.9.rst:1508 msgid "(Contributed by Yurii Karabas in :issue:`42345`.)" msgstr "" -#: whatsnew/3.9.rst:1510 +#: whatsnew/3.9.rst:1511 msgid "macOS 11.0 (Big Sur) and Apple Silicon Mac support" msgstr "" -#: whatsnew/3.9.rst:1512 +#: whatsnew/3.9.rst:1513 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 " @@ -2291,19 +2292,19 @@ msgid "" "version in use at runtime (\"weaklinking\")." msgstr "" -#: whatsnew/3.9.rst:1521 +#: whatsnew/3.9.rst:1522 msgid "(Contributed by Ronald Oussoren and Lawrence D'Anna in :issue:`41100`.)" msgstr "" -#: whatsnew/3.9.rst:1524 +#: whatsnew/3.9.rst:1525 msgid "Notable changes in Python 3.9.2" msgstr "" -#: whatsnew/3.9.rst:1527 +#: whatsnew/3.9.rst:1528 msgid "collections.abc" msgstr "collections.abc" -#: whatsnew/3.9.rst:1529 +#: whatsnew/3.9.rst:1530 msgid "" ":class:`collections.abc.Callable` generic now flattens type parameters, " "similar to what :data:`typing.Callable` currently does. This means that " @@ -2319,11 +2320,11 @@ msgid "" "Python 3.10. (Contributed by Ken Jin in :issue:`42195`.)" msgstr "" -#: whatsnew/3.9.rst:1568 +#: whatsnew/3.9.rst:1544 msgid "urllib.parse" msgstr "urllib.parse" -#: whatsnew/3.9.rst:1545 +#: whatsnew/3.9.rst:1546 msgid "" "Earlier Python versions allowed using both ``;`` and ``&`` as query " "parameter separators in :func:`urllib.parse.parse_qs` and :func:`urllib." @@ -2335,33 +2336,6 @@ msgid "" "Adam Goldschmidt, Senthil Kumaran and Ken Jin in :issue:`42967`.)" msgstr "" -#: whatsnew/3.9.rst:1556 -msgid "Notable changes in Python 3.9.3" -msgstr "" - -#: whatsnew/3.9.rst:1558 -msgid "" -"A security fix alters the :class:`ftplib.FTP` behavior to not trust the IPv4 " -"address sent from the remote server when setting up a passive data channel. " -"We reuse the ftp server IP address instead. For unusual code requiring the " -"old behavior, set a ``trust_server_pasv_ipv4_address`` attribute on your FTP " -"instance to ``True``. (See :issue:`43285`)" -msgstr "" - -#: whatsnew/3.9.rst:1565 -msgid "Notable changes in Python 3.9.5" -msgstr "" - -#: whatsnew/3.9.rst:1570 -msgid "" -"The presence of newline or tab characters in parts of a URL allows for some " -"forms of attacks. Following the WHATWG specification that updates :rfc:" -"`3986`, ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` characters are " -"stripped from the URL by the parser in :mod:`urllib.parse` preventing such " -"attacks. The removal characters are controlled by a new module level " -"variable ``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. (See :issue:`43882`)" -msgstr "" - #~ msgid "" #~ "This article explains the new features in Python 3.9, compared to 3.8." #~ msgstr "" diff --git a/whatsnew/changelog.po b/whatsnew/changelog.po index 64bc30fee..55676ff6c 100644 --- a/whatsnew/changelog.po +++ b/whatsnew/changelog.po @@ -5,19 +5,18 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-06-22 09:58+0200\n" -"PO-Revision-Date: 2017-08-29 14:38+0200\n" -"Last-Translator: Julien Palard \n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" "Language-Team: FRENCH \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.0.2\n" #: whatsnew/changelog.rst:5 msgid "Changelog" -msgstr "Changements" +msgstr "" #: ../build/NEWS:5 msgid "Python next" @@ -27,278 +26,356 @@ msgstr "" msgid "*Release date: XXXX-XX-XX*" msgstr "" -#: ../build/NEWS:10 ../build/NEWS:413 ../build/NEWS:1116 ../build/NEWS:1541 -#: ../build/NEWS:1775 ../build/NEWS:2399 ../build/NEWS:2973 ../build/NEWS:3323 -#: ../build/NEWS:4491 ../build/NEWS:4844 ../build/NEWS:5296 ../build/NEWS:5802 -#: ../build/NEWS:6505 ../build/NEWS:6890 ../build/NEWS:8840 ../build/NEWS:9596 -#: ../build/NEWS:10140 ../build/NEWS:10670 ../build/NEWS:14201 -#: ../build/NEWS:14419 ../build/NEWS:16147 ../build/NEWS:18598 -#: ../build/NEWS:19365 ../build/NEWS:19828 ../build/NEWS:19930 -#: ../build/NEWS:21996 ../build/NEWS:22015 ../build/NEWS:22180 -#: ../build/NEWS:22231 ../build/NEWS:22826 ../build/NEWS:22937 -#: ../build/NEWS:23027 ../build/NEWS:23736 ../build/NEWS:23795 -#: ../build/NEWS:24650 ../build/NEWS:24663 ../build/NEWS:25054 -#: ../build/NEWS:25087 ../build/NEWS:25199 ../build/NEWS:25254 -#: ../build/NEWS:25323 -msgid "Security" +#: ../build/NEWS:10 ../build/NEWS:88 ../build/NEWS:243 ../build/NEWS:504 +#: ../build/NEWS:1173 ../build/NEWS:1583 ../build/NEWS:1816 ../build/NEWS:2073 +#: ../build/NEWS:2441 ../build/NEWS:3019 ../build/NEWS:3379 ../build/NEWS:4532 +#: ../build/NEWS:4894 ../build/NEWS:5338 ../build/NEWS:5848 ../build/NEWS:6190 +#: ../build/NEWS:6558 ../build/NEWS:6974 ../build/NEWS:8890 ../build/NEWS:9649 +#: ../build/NEWS:10187 ../build/NEWS:10492 ../build/NEWS:10754 +#: ../build/NEWS:13734 ../build/NEWS:13846 ../build/NEWS:14059 +#: ../build/NEWS:14250 ../build/NEWS:14460 ../build/NEWS:14704 +#: ../build/NEWS:15023 ../build/NEWS:15327 ../build/NEWS:15927 +#: ../build/NEWS:16216 ../build/NEWS:18306 ../build/NEWS:18643 +#: ../build/NEWS:18960 ../build/NEWS:19409 ../build/NEWS:19890 +#: ../build/NEWS:20242 ../build/NEWS:20266 ../build/NEWS:20590 +#: ../build/NEWS:20620 ../build/NEWS:20684 ../build/NEWS:20798 +#: ../build/NEWS:20922 ../build/NEWS:21190 ../build/NEWS:21699 +#: ../build/NEWS:21937 ../build/NEWS:22157 ../build/NEWS:22460 +#: ../build/NEWS:23794 ../build/NEWS:23855 ../build/NEWS:24247 +#: ../build/NEWS:24938 ../build/NEWS:24959 ../build/NEWS:25716 +#: ../build/NEWS:25734 ../build/NEWS:26257 ../build/NEWS:26292 +#: ../build/NEWS:26320 ../build/NEWS:26412 ../build/NEWS:26499 +#: ../build/NEWS:26604 ../build/NEWS:26647 ../build/NEWS:26923 +#: ../build/NEWS:27158 ../build/NEWS:27344 ../build/NEWS:27483 +msgid "Core and Builtins" msgstr "" #: ../build/NEWS:12 msgid "" -"`bpo-44022 `__: mod:`http.client` now " -"avoids infinitely reading potential HTTP headers after a ``100 Continue`` " -"status response from the server." +"`bpo-44297 `__: Make sure that the line " +"number is set when entering a comprehension scope. Ensures that backtraces " +"inclusing generator expressions show the correct line number." msgstr "" -#: ../build/NEWS:16 ../build/NEWS:469 ../build/NEWS:1138 ../build/NEWS:1548 -#: ../build/NEWS:1781 ../build/NEWS:2038 ../build/NEWS:2406 ../build/NEWS:2984 -#: ../build/NEWS:3344 ../build/NEWS:4497 ../build/NEWS:4859 ../build/NEWS:5303 -#: ../build/NEWS:5813 ../build/NEWS:6155 ../build/NEWS:6523 ../build/NEWS:6939 -#: ../build/NEWS:8855 ../build/NEWS:9614 ../build/NEWS:10152 -#: ../build/NEWS:10457 ../build/NEWS:10719 ../build/NEWS:13699 -#: ../build/NEWS:13811 ../build/NEWS:14024 ../build/NEWS:14215 -#: ../build/NEWS:14425 ../build/NEWS:14669 ../build/NEWS:14988 -#: ../build/NEWS:15292 ../build/NEWS:15892 ../build/NEWS:16181 -#: ../build/NEWS:18271 ../build/NEWS:18608 ../build/NEWS:18925 -#: ../build/NEWS:19374 ../build/NEWS:19855 ../build/NEWS:20207 -#: ../build/NEWS:20231 ../build/NEWS:20555 ../build/NEWS:20585 -#: ../build/NEWS:20649 ../build/NEWS:20763 ../build/NEWS:20887 -#: ../build/NEWS:21155 ../build/NEWS:21664 ../build/NEWS:21902 -#: ../build/NEWS:22122 ../build/NEWS:22425 ../build/NEWS:23759 -#: ../build/NEWS:23820 ../build/NEWS:24212 ../build/NEWS:24903 -#: ../build/NEWS:24924 ../build/NEWS:25681 ../build/NEWS:25699 -#: ../build/NEWS:26222 ../build/NEWS:26257 ../build/NEWS:26285 -#: ../build/NEWS:26377 ../build/NEWS:26464 ../build/NEWS:26569 -#: ../build/NEWS:26612 ../build/NEWS:26888 ../build/NEWS:27123 -#: ../build/NEWS:27309 ../build/NEWS:27448 -msgid "Core and Builtins" +#: ../build/NEWS:16 +msgid "" +"`bpo-44368 `__: Improve syntax errors " +"for invalid \"as\" targets. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:18 +#: ../build/NEWS:19 ../build/NEWS:245 msgid "" -"`bpo-44304 `__: Fix a crash in the :mod:" -"`sqlite3` module that happened when the garbage collector clears :class:" -"`sqlite.Statement` objects. Patch by Pablo Galindo" +"`bpo-43667 `__: Improve Unicode support " +"in non-UTF locales on Oracle Solaris. This issue does not affect other " +"Solaris systems." msgstr "" -#: ../build/NEWS:22 -msgid "" -"`bpo-44305 `__: Improve error message " -"for ``try`` blocks without ``except`` or ``finally`` blocks. Patch by Pablo " -"Galindo." +#: ../build/NEWS:23 ../build/NEWS:119 ../build/NEWS:286 ../build/NEWS:635 +#: ../build/NEWS:1265 ../build/NEWS:1648 ../build/NEWS:1872 ../build/NEWS:2146 +#: ../build/NEWS:2543 ../build/NEWS:3099 ../build/NEWS:3719 ../build/NEWS:4590 +#: ../build/NEWS:4978 ../build/NEWS:5465 ../build/NEWS:5925 ../build/NEWS:6288 +#: ../build/NEWS:6635 ../build/NEWS:7291 ../build/NEWS:9054 ../build/NEWS:9718 +#: ../build/NEWS:10262 ../build/NEWS:10556 ../build/NEWS:11308 +#: ../build/NEWS:13716 ../build/NEWS:13749 ../build/NEWS:13877 +#: ../build/NEWS:14085 ../build/NEWS:14276 ../build/NEWS:14481 +#: ../build/NEWS:14779 ../build/NEWS:15100 ../build/NEWS:15425 +#: ../build/NEWS:16015 ../build/NEWS:16674 ../build/NEWS:18343 +#: ../build/NEWS:18689 ../build/NEWS:19055 ../build/NEWS:19379 +#: ../build/NEWS:19481 ../build/NEWS:19937 ../build/NEWS:19972 +#: ../build/NEWS:20334 ../build/NEWS:20637 ../build/NEWS:20719 +#: ../build/NEWS:20822 ../build/NEWS:20992 ../build/NEWS:21327 +#: ../build/NEWS:21745 ../build/NEWS:21954 ../build/NEWS:22038 +#: ../build/NEWS:22055 ../build/NEWS:22197 ../build/NEWS:22223 +#: ../build/NEWS:22273 ../build/NEWS:22745 ../build/NEWS:22868 +#: ../build/NEWS:22978 ../build/NEWS:23068 ../build/NEWS:23800 +#: ../build/NEWS:23818 ../build/NEWS:23906 ../build/NEWS:24378 +#: ../build/NEWS:24692 ../build/NEWS:24703 ../build/NEWS:25097 +#: ../build/NEWS:25129 ../build/NEWS:25241 ../build/NEWS:25295 +#: ../build/NEWS:25364 ../build/NEWS:25802 ../build/NEWS:26240 +#: ../build/NEWS:26267 ../build/NEWS:26305 ../build/NEWS:26325 +#: ../build/NEWS:26432 ../build/NEWS:26526 ../build/NEWS:26622 +#: ../build/NEWS:26697 ../build/NEWS:26955 ../build/NEWS:27178 +#: ../build/NEWS:27351 ../build/NEWS:27709 +msgid "Library" msgstr "" #: ../build/NEWS:25 msgid "" -"`bpo-43667 `__: Improve Unicode support " -"in non-UTF locales on Oracle Solaris. This issue does not affect other " -"Solaris systems." +"`bpo-44466 `__: The :mod:`faulthandler` " +"module now detects if a fatal error occurs during a garbage collector " +"collection. Patch by Victor Stinner." msgstr "" #: ../build/NEWS:28 msgid "" -"`bpo-43693 `__: A new opcode MAKE_CELL " -"has been added that effectively moves some of the work done on function " -"entry into the compiler and into the eval loop. In addition to creating the " -"required cell objects, the new opcode converts relevant arguments (and other " -"locals) to cell variables on function entry." +"`bpo-44458 `__: ``BUFFER_BLOCK_SIZE`` is " +"now declared static, to avoid linking collisions when bz2, lmza or zlib are " +"statically linked." msgstr "" -#: ../build/NEWS:34 +#: ../build/NEWS:31 msgid "" -"`bpo-44232 `__: Fix a regression in :" -"func:`type` when a metaclass raises an exception. The C function :c:func:" -"`type_new` must properly report the exception when a metaclass constructor " -"raises an exception and the winner class is not the metaclass. Patch by " -"Victor Stinner." +"`bpo-44434 `__: _thread." +"start_new_thread() no longer calls PyThread_exit_thread() explicitly at the " +"thread exit, the call was redundant. On Linux with the glibc, pthread_exit() " +"aborts the whole process if dlopen() fails to open libgcc_s.so file (ex: " +"EMFILE error). Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:39 +#: ../build/NEWS:37 msgid "" -"`bpo-44201 `__: Avoid side effects of " -"checking for specialized syntax errors in the REPL that was causing it to " -"ask for extra tokens after a syntax error had been detected. Patch by Pablo " -"Galindo" +"`bpo-44395 `__: Fix :meth:`~email." +"message.MIMEPart.as_string` to pass unixfrom properly. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:43 +#: ../build/NEWS:40 msgid "" -"`bpo-43693 `__: ``PyCodeObject`` gained " -"``co_fastlocalnames`` and ``co_fastlocalkinds`` as the the authoritative " -"source of fast locals info. Marshaled code objects have changed accordingly." +"`bpo-44077 `__: It's now possible to " +"receive the type of service (ToS), a.k.a. differentiated services (DS), a.k." +"a. differenciated services code point (DSCP) and excplicit congestion " +"notification (ECN) IP header fields with ``socket.IP_RECVTOS``." msgstr "" -#: ../build/NEWS:47 +#: ../build/NEWS:45 msgid "" -"`bpo-44184 `__: Fix a crash at Python " -"exit when a deallocator function removes the last strong reference to a heap " -"type. Patch by Victor Stinner." +"`bpo-43024 `__: Improve the help " +"signature of :func:`traceback.print_exception`, :func:`traceback." +"format_exception` and :func:`traceback.format_exception_only`." msgstr "" -#: ../build/NEWS:50 -msgid "" -"`bpo-44187 `__: Implement quickening in " -"the interpreter. This offers no advantages as yet, but is an enabler of " -"future optimizations. See PEP 659 for full explanation." +#: ../build/NEWS:50 ../build/NEWS:171 ../build/NEWS:357 ../build/NEWS:971 +#: ../build/NEWS:1432 ../build/NEWS:1712 ../build/NEWS:1982 ../build/NEWS:2335 +#: ../build/NEWS:2779 ../build/NEWS:3245 ../build/NEWS:4204 ../build/NEWS:4751 +#: ../build/NEWS:5195 ../build/NEWS:5653 ../build/NEWS:6057 ../build/NEWS:6481 +#: ../build/NEWS:6797 ../build/NEWS:8140 ../build/NEWS:9444 ../build/NEWS:9910 +#: ../build/NEWS:10387 ../build/NEWS:10629 ../build/NEWS:12815 +#: ../build/NEWS:13790 ../build/NEWS:14000 ../build/NEWS:14150 +#: ../build/NEWS:14368 ../build/NEWS:14613 ../build/NEWS:14938 +#: ../build/NEWS:15278 ../build/NEWS:15761 ../build/NEWS:16104 +#: ../build/NEWS:17712 ../build/NEWS:18466 ../build/NEWS:18822 +#: ../build/NEWS:19219 ../build/NEWS:19617 ../build/NEWS:20189 +#: ../build/NEWS:20509 ../build/NEWS:20665 ../build/NEWS:20768 +#: ../build/NEWS:22136 ../build/NEWS:22396 ../build/NEWS:23581 +#: ../build/NEWS:24141 ../build/NEWS:24817 ../build/NEWS:25567 +#: ../build/NEWS:26131 ../build/NEWS:26384 ../build/NEWS:26583 +#: ../build/NEWS:26894 ../build/NEWS:29094 +msgid "Documentation" msgstr "" -#: ../build/NEWS:54 -msgid "" -"`bpo-44180 `__: The parser doesn't " -"report generic syntax errors that happen in a position further away that the " -"one it reached in the first pass. Patch by Pablo Galindo" +#: ../build/NEWS:52 +msgid "" +"`bpo-13814 `__: In the Design FAQ, " +"answer \"Why don't generators support the with statement?\"" +msgstr "" + +#: ../build/NEWS:56 ../build/NEWS:185 ../build/NEWS:379 ../build/NEWS:994 +#: ../build/NEWS:1447 ../build/NEWS:1721 ../build/NEWS:1991 ../build/NEWS:2344 +#: ../build/NEWS:2791 ../build/NEWS:3266 ../build/NEWS:4246 ../build/NEWS:4768 +#: ../build/NEWS:5209 ../build/NEWS:5672 ../build/NEWS:6082 ../build/NEWS:6811 +#: ../build/NEWS:8244 ../build/NEWS:9492 ../build/NEWS:9945 ../build/NEWS:10401 +#: ../build/NEWS:10640 ../build/NEWS:12980 ../build/NEWS:14015 +#: ../build/NEWS:14169 ../build/NEWS:14385 ../build/NEWS:14637 +#: ../build/NEWS:14951 ../build/NEWS:15283 ../build/NEWS:15767 +#: ../build/NEWS:17760 ../build/NEWS:18504 ../build/NEWS:18617 +#: ../build/NEWS:18842 ../build/NEWS:19232 ../build/NEWS:19629 +#: ../build/NEWS:20211 ../build/NEWS:20522 ../build/NEWS:20773 +#: ../build/NEWS:20908 ../build/NEWS:21179 ../build/NEWS:21609 +#: ../build/NEWS:21882 ../build/NEWS:22145 ../build/NEWS:22408 +#: ../build/NEWS:23599 ../build/NEWS:24159 ../build/NEWS:24822 +#: ../build/NEWS:24943 ../build/NEWS:25590 ../build/NEWS:26155 +#: ../build/NEWS:26399 ../build/NEWS:26576 ../build/NEWS:26885 +#: ../build/NEWS:27114 ../build/NEWS:27324 ../build/NEWS:29134 +msgid "Tests" msgstr "" #: ../build/NEWS:58 msgid "" -"`bpo-44168 `__: Fix error message in the " -"parser involving keyword arguments with invalid expressions. Patch by Pablo " -"Galindo" +"`bpo-44287 `__: Fix asyncio test_popen() " +"of test_windows_utils by using a longer timeout. Use military grade battle-" +"tested :data:`test.support.SHORT_TIMEOUT` timeout rather than a hardcoded " +"timeout of 10 seconds: it's 30 seconds by default, but it is made longer on " +"slow buildbots. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:61 +#: ../build/NEWS:64 msgid "" -"`bpo-44156 `__: String caches in " -"``compile.c`` are now subinterpreter compatible." +"`bpo-44451 `__: Reset " +"``DeprecationWarning`` filters in ``test.test_importlib.test_metadata_api." +"APITests.test_entry_points_by_index`` to avoid ``StopIteration`` error if " +"``DeprecationWarnings`` are ignored." +msgstr "" + +#: ../build/NEWS:69 ../build/NEWS:199 ../build/NEWS:391 ../build/NEWS:1017 +#: ../build/NEWS:1456 ../build/NEWS:1727 ../build/NEWS:2001 ../build/NEWS:2366 +#: ../build/NEWS:2826 ../build/NEWS:3282 ../build/NEWS:4297 ../build/NEWS:4777 +#: ../build/NEWS:5235 ../build/NEWS:5688 ../build/NEWS:6091 ../build/NEWS:6495 +#: ../build/NEWS:6866 ../build/NEWS:8414 ../build/NEWS:9528 ../build/NEWS:9999 +#: ../build/NEWS:10414 ../build/NEWS:13147 ../build/NEWS:13802 +#: ../build/NEWS:14024 ../build/NEWS:14175 ../build/NEWS:14395 +#: ../build/NEWS:14642 ../build/NEWS:14971 ../build/NEWS:15794 +#: ../build/NEWS:16114 ../build/NEWS:17823 ../build/NEWS:18512 +#: ../build/NEWS:18622 ../build/NEWS:18857 ../build/NEWS:19249 +#: ../build/NEWS:19385 ../build/NEWS:19645 ../build/NEWS:20169 +#: ../build/NEWS:20253 ../build/NEWS:20544 ../build/NEWS:20609 +#: ../build/NEWS:20781 ../build/NEWS:20899 ../build/NEWS:21168 +#: ../build/NEWS:21623 ../build/NEWS:21909 ../build/NEWS:22106 +#: ../build/NEWS:22425 ../build/NEWS:23642 ../build/NEWS:24197 +#: ../build/NEWS:24868 ../build/NEWS:25613 ../build/NEWS:26168 +#: ../build/NEWS:26228 ../build/NEWS:26245 ../build/NEWS:26487 +#: ../build/NEWS:26592 ../build/NEWS:27105 ../build/NEWS:27319 +#: ../build/NEWS:27454 ../build/NEWS:28985 +msgid "Build" msgstr "" -#: ../build/NEWS:64 +#: ../build/NEWS:71 msgid "" -"`bpo-44143 `__: Fixed a crash in the " -"parser that manifest when raising tokenizer errors when an existing " -"exception was present. Patch by Pablo Galindo." +"`bpo-43298 `__: Improved error message " +"when building without a Windows SDK installed." +msgstr "" + +#: ../build/NEWS:75 ../build/NEWS:398 ../build/NEWS:1026 ../build/NEWS:1478 +#: ../build/NEWS:1750 ../build/NEWS:2027 ../build/NEWS:2850 ../build/NEWS:3289 +#: ../build/NEWS:4318 ../build/NEWS:4787 ../build/NEWS:5247 ../build/NEWS:5705 +#: ../build/NEWS:6096 ../build/NEWS:6876 ../build/NEWS:8486 ../build/NEWS:9551 +#: ../build/NEWS:10060 ../build/NEWS:10428 ../build/NEWS:10673 +#: ../build/NEWS:13265 ../build/NEWS:13809 ../build/NEWS:14192 +#: ../build/NEWS:14400 ../build/NEWS:14647 ../build/NEWS:14986 +#: ../build/NEWS:15292 ../build/NEWS:15827 ../build/NEWS:17935 +#: ../build/NEWS:18532 ../build/NEWS:18863 ../build/NEWS:19274 +#: ../build/NEWS:19651 ../build/NEWS:20225 ../build/NEWS:20474 +#: ../build/NEWS:20604 ../build/NEWS:20894 ../build/NEWS:21135 +#: ../build/NEWS:21665 ../build/NEWS:21897 ../build/NEWS:22418 +#: ../build/NEWS:22434 ../build/NEWS:23705 ../build/NEWS:24210 +#: ../build/NEWS:24853 ../build/NEWS:25672 ../build/NEWS:25704 +#: ../build/NEWS:25722 ../build/NEWS:26179 ../build/NEWS:27468 +#: ../build/NEWS:29281 +msgid "Windows" msgstr "" -#: ../build/NEWS:68 +#: ../build/NEWS:77 msgid "" -"`bpo-44032 `__: Move 'fast' locals and " -"other variables from the frame object to a per-thread datastack." +"`bpo-41299 `__: Fix 16ms jitter when " +"using timeouts in :mod:`threading`, such as with :meth:`threading.Lock." +"acquire` or :meth:`threading.Condition.wait`." msgstr "" -#: ../build/NEWS:71 +#: ../build/NEWS:83 +msgid "Python 3.10.0 beta 3" +msgstr "" + +#: ../build/NEWS:85 +msgid "*Release date: 2021-06-17*" +msgstr "" + +#: ../build/NEWS:90 msgid "" -"`bpo-44114 `__: Fix incorrect " -"dictkeys_reversed and dictitems_reversed function signatures in C code, " -"which broke webassembly builds." +"`bpo-44409 `__: Fix error location " +"information for tokenizer errors raised on initialization of the tokenizer. " +"Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:74 +#: ../build/NEWS:93 msgid "" -"`bpo-26110 `__: Add ``CALL_METHOD_KW`` " -"opcode to speed up method calls with keyword arguments. Idea originated " -"from PyPy. A side effect is executing ``CALL_METHOD`` is now branchless in " -"the evaluation loop." +"`bpo-44396 `__: Fix a possible crash in " +"the tokenizer when raising syntax errors for unclosed strings. Patch by " +"Pablo Galindo." msgstr "" -#: ../build/NEWS:78 +#: ../build/NEWS:96 msgid "" -"`bpo-28307 `__: Compiler now optimizes " -"simple C-style formatting with literal format containing only format codes " -"%s, %r and %a by converting them to f-string expressions." +"`bpo-44349 `__: Fix an edge case when " +"displaying text from files with encoding in syntax errors. Patch by Pablo " +"Galindo." msgstr "" -#: ../build/NEWS:82 +#: ../build/NEWS:99 msgid "" -"`bpo-43149 `__: Corrent the syntax error " -"message regarding multiple exception types to not refer to \"exception groups" -"\". Patch by Pablo Galindo" +"`bpo-44335 `__: Fix a regression when " +"identifying incorrect characters in syntax errors. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:85 +#: ../build/NEWS:102 msgid "" -"`bpo-43822 `__: The parser will " -"prioritize tokenizer errors over custom syntax errors when raising " -"exceptions. Patch by Pablo Galindo." +"`bpo-44304 `__: Fix a crash in the :mod:" +"`sqlite3` module that happened when the garbage collector clears :class:" +"`sqlite.Statement` objects. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:88 +#: ../build/NEWS:106 msgid "" -"`bpo-40222 `__: \"Zero cost\" exception " -"handling." +"`bpo-44305 `__: Improve error message " +"for ``try`` blocks without ``except`` or ``finally`` blocks. Patch by Pablo " +"Galindo." msgstr "" -#: ../build/NEWS:90 -msgid "Uses a lookup table to determine how to handle exceptions." +#: ../build/NEWS:109 +msgid "" +"`bpo-43833 `__: Emit a deprecation " +"warning if the numeric literal is immediately followed by one of keywords: " +"and, else, for, if, in, is, or. Raise a syntax error with more informative " +"message if it is immediately followed by other keyword or identifier." msgstr "" -#: ../build/NEWS:91 +#: ../build/NEWS:114 msgid "" -"Removes SETUP_FINALLY and POP_TOP block instructions, eliminating the " -"runtime overhead of try statements." +"`bpo-11105 `__: When compiling :class:" +"`ast.AST` objects with recursive references through :func:`compile`, the " +"interpreter doesn't crash anymore instead it raises a :exc:`RecursionError`." msgstr "" -#: ../build/NEWS:92 -msgid "Reduces the size of the frame object by about 60%." +#: ../build/NEWS:121 +msgid "" +"`bpo-42972 `__: The _thread.RLock type " +"now fully implement the GC protocol: add a traverse function and the :const:" +"`Py_TPFLAGS_HAVE_GC` flag. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:94 -msgid "Patch by Mark Shannon" +#: ../build/NEWS:125 +msgid "" +"`bpo-44422 `__: The :func:`threading." +"enumerate` function now uses a reentrant lock to prevent a hang on reentrant " +"call. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:96 +#: ../build/NEWS:128 msgid "" -"`bpo-43879 `__: Add native_thread_id to " -"PyThreadState. Patch by Gabriele N. Tornetta." +"`bpo-44389 `__: Fix deprecation of :data:" +"`ssl.OP_NO_TLSv1_3`" msgstr "" -#: ../build/NEWS:99 +#: ../build/NEWS:130 msgid "" -"`bpo-43693 `__: Compute cell offsets " -"relative to locals in compiler. Allows the interpreter to treats locals and " -"cells a single array, which is slightly more efficient. Also make the " -"LOAD_CLOSURE opcode an alias for LOAD_FAST. Preserving LOAD_CLOSURE helps " -"keep bytecode a bit more readable." +"`bpo-44362 `__: Improve :mod:`ssl` " +"module's deprecation messages, error reporting, and documentation for " +"deprecations." msgstr "" -#: ../build/NEWS:104 +#: ../build/NEWS:133 msgid "" -"`bpo-17792 `__: More accurate error " -"messages for access of unbound locals or free vars." +"`bpo-44342 `__: [Enum] Change pickling " +"from by-value to by-name." msgstr "" -#: ../build/NEWS:107 +#: ../build/NEWS:135 msgid "" -"`bpo-28146 `__: Fix a confusing error " -"message in :func:`str.format`." +"`bpo-44356 `__: [Enum] Allow multiple " +"data-type mixins if they are all the same." msgstr "" -#: ../build/NEWS:109 +#: ../build/NEWS:138 msgid "" -"`bpo-11105 `__: When compiling :class:" -"`ast.AST` objects with recursive references through :func:`compile`, the " -"interpreter doesn't crash anymore instead it raises a :exc:`RecursionError`." +"`bpo-44351 `__: Restore back :func:" +"`parse_makefile` in :mod:`distutils.sysconfig` because it behaves " +"differently than the similar implementation in :mod:`sysconfig`." msgstr "" -#: ../build/NEWS:114 ../build/NEWS:600 ../build/NEWS:1230 ../build/NEWS:1613 -#: ../build/NEWS:1837 ../build/NEWS:2111 ../build/NEWS:2508 ../build/NEWS:3064 -#: ../build/NEWS:3684 ../build/NEWS:4555 ../build/NEWS:4943 ../build/NEWS:5430 -#: ../build/NEWS:5890 ../build/NEWS:6253 ../build/NEWS:6600 ../build/NEWS:7256 -#: ../build/NEWS:9019 ../build/NEWS:9683 ../build/NEWS:10227 -#: ../build/NEWS:10521 ../build/NEWS:11273 ../build/NEWS:13681 -#: ../build/NEWS:13714 ../build/NEWS:13842 ../build/NEWS:14050 -#: ../build/NEWS:14241 ../build/NEWS:14446 ../build/NEWS:14744 -#: ../build/NEWS:15065 ../build/NEWS:15390 ../build/NEWS:15980 -#: ../build/NEWS:16639 ../build/NEWS:18308 ../build/NEWS:18654 -#: ../build/NEWS:19020 ../build/NEWS:19344 ../build/NEWS:19446 -#: ../build/NEWS:19902 ../build/NEWS:19937 ../build/NEWS:20299 -#: ../build/NEWS:20602 ../build/NEWS:20684 ../build/NEWS:20787 -#: ../build/NEWS:20957 ../build/NEWS:21292 ../build/NEWS:21710 -#: ../build/NEWS:21919 ../build/NEWS:22003 ../build/NEWS:22020 -#: ../build/NEWS:22162 ../build/NEWS:22188 ../build/NEWS:22238 -#: ../build/NEWS:22710 ../build/NEWS:22833 ../build/NEWS:22943 -#: ../build/NEWS:23033 ../build/NEWS:23765 ../build/NEWS:23783 -#: ../build/NEWS:23871 ../build/NEWS:24343 ../build/NEWS:24657 -#: ../build/NEWS:24668 ../build/NEWS:25062 ../build/NEWS:25094 -#: ../build/NEWS:25206 ../build/NEWS:25260 ../build/NEWS:25329 -#: ../build/NEWS:25767 ../build/NEWS:26205 ../build/NEWS:26232 -#: ../build/NEWS:26270 ../build/NEWS:26290 ../build/NEWS:26397 -#: ../build/NEWS:26491 ../build/NEWS:26587 ../build/NEWS:26662 -#: ../build/NEWS:26920 ../build/NEWS:27143 ../build/NEWS:27316 -#: ../build/NEWS:27674 -msgid "Library" +#: ../build/NEWS:142 +msgid "" +"`bpo-44242 `__: Remove missing flag " +"check from Enum creation and move into a ``verify`` decorator." msgstr "" -#: ../build/NEWS:116 +#: ../build/NEWS:145 msgid "" "`bpo-44246 `__: In ``importlib." "metadata``, restore compatibility in the result from ``Distribution." @@ -312,7 +389,7 @@ msgid "" "``tuple(dist.entry_points)[0]``)." msgstr "" -#: ../build/NEWS:126 +#: ../build/NEWS:155 msgid "" "`bpo-44246 `__: In importlib.metadata." "entry_points, de-duplication of distributions no longer requires loading the " @@ -320,82 +397,291 @@ msgid "" "performance by ~10x." msgstr "" -#: ../build/NEWS:131 +#: ../build/NEWS:160 msgid "" -"`bpo-43858 `__: Added a function that " -"returns a copy of a dict of logging levels: :func:`logging." -"getLevelNamesMapping`" +"`bpo-43853 `__: Improve :mod:`sqlite3` " +"error handling: ``sqlite3_value_text()`` errors that set ``SQLITE_NOMEM`` " +"now raise :exc:`MemoryError`. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:134 +#: ../build/NEWS:164 msgid "" -"`bpo-44260 `__: The :class:`random." -"Random` constructor no longer reads system entropy without need." +"`bpo-43318 `__: Fix a bug where :mod:" +"`pdb` does not always echo cleared breakpoints." msgstr "" -#: ../build/NEWS:137 +#: ../build/NEWS:167 msgid "" -"`bpo-44254 `__: On Mac, give turtledemo " -"button text a color that works on both light or dark background. " -"Programmers cannot control the latter." +"`bpo-37022 `__: :mod:`pdb` now displays " +"exceptions from ``repr()`` with its ``p`` and ``pp`` commands." msgstr "" -#: ../build/NEWS:140 +#: ../build/NEWS:173 msgid "" -"`bpo-44258 `__: Support PEP 515 for " -"Fraction's initialization from string." +"`bpo-44392 `__: Added a new section in " +"the C API documentation for types used in type hinting. Documented " +"``Py_GenericAlias`` and ``Py_GenericAliasType``." msgstr "" -#: ../build/NEWS:142 +#: ../build/NEWS:177 msgid "" -"`bpo-44235 `__: Remove deprecated " -"functions in the :mod:`gettext`. Patch by Dong-hee Na." +"`bpo-38291 `__: Mark ``typing.io`` and " +"``typing.re`` as deprecated since Python 3.8 in the documentation. They were " +"never properly supported by type checkers." msgstr "" -#: ../build/NEWS:145 +#: ../build/NEWS:181 +msgid "" +"`bpo-44322 `__: Document that " +"SyntaxError args have a details tuple and that details are adjusted for " +"errors in f-string field replacement expressions." +msgstr "" + +#: ../build/NEWS:187 +msgid "" +"`bpo-44363 `__: Account for address " +"sanitizer in test_capi. test_capi now passes when run GCC address sanitizer." +msgstr "" + +#: ../build/NEWS:190 +msgid "" +"`bpo-43921 `__: Fix test_ssl." +"test_wrong_cert_tls13(): use ``suppress_ragged_eofs=False``, since " +"``read()`` can raise :exc:`ssl.SSLEOFError` on Windows. Patch by Victor " +"Stinner." +msgstr "" + +#: ../build/NEWS:194 +msgid "" +"`bpo-43921 `__: Fix " +"test_pha_required_nocert() of test_ssl: catch two more EOF cases (when the " +"``recv()`` method returns an empty string). Patch by Victor Stinner." +msgstr "" + +#: ../build/NEWS:201 +msgid "" +"`bpo-44381 `__: The Windows build now " +"accepts :envvar:`EnableControlFlowGuard` set to ``guard`` to enable CFG." +msgstr "" + +#: ../build/NEWS:205 ../build/NEWS:410 ../build/NEWS:1083 ../build/NEWS:1484 +#: ../build/NEWS:1760 ../build/NEWS:2041 ../build/NEWS:2882 ../build/NEWS:3309 +#: ../build/NEWS:4382 ../build/NEWS:5264 ../build/NEWS:5733 ../build/NEWS:6116 +#: ../build/NEWS:6508 ../build/NEWS:6890 ../build/NEWS:8626 ../build/NEWS:9572 +#: ../build/NEWS:10121 ../build/NEWS:10440 ../build/NEWS:10689 +#: ../build/NEWS:13411 ../build/NEWS:13814 ../build/NEWS:14044 +#: ../build/NEWS:14202 ../build/NEWS:14418 ../build/NEWS:14671 +#: ../build/NEWS:15847 ../build/NEWS:16133 ../build/NEWS:18002 +#: ../build/NEWS:18542 ../build/NEWS:18896 ../build/NEWS:19288 +#: ../build/NEWS:19665 ../build/NEWS:20140 ../build/NEWS:20466 +#: ../build/NEWS:21580 ../build/NEWS:21853 ../build/NEWS:22064 +#: ../build/NEWS:22334 ../build/NEWS:23471 ../build/NEWS:24780 +#: ../build/NEWS:24948 ../build/NEWS:25514 ../build/NEWS:26034 +#: ../build/NEWS:26367 ../build/NEWS:26879 ../build/NEWS:28902 +msgid "IDLE" +msgstr "" + +#: ../build/NEWS:207 +msgid "" +"`bpo-40128 `__: Mostly fix completions " +"on macOS when not using tcl/tk 8.6.11 (as with 3.9). The added " +"update_idletask call should be harmless and possibly helpful otherwise." +msgstr "" + +#: ../build/NEWS:211 +msgid "" +"`bpo-33962 `__: Move the indent space " +"setting from the Font tab to the new Windows tab. Patch by Mark Roseman and " +"Terry Jan Reedy." +msgstr "" + +#: ../build/NEWS:214 +msgid "" +"`bpo-40468 `__: Split the settings " +"dialog 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." +msgstr "" + +#: ../build/NEWS:220 ../build/NEWS:433 ../build/NEWS:1101 ../build/NEWS:1491 +#: ../build/NEWS:1767 ../build/NEWS:2055 ../build/NEWS:2408 ../build/NEWS:2904 +#: ../build/NEWS:3322 ../build/NEWS:4415 ../build/NEWS:4825 ../build/NEWS:5286 +#: ../build/NEWS:5759 ../build/NEWS:6131 ../build/NEWS:6519 ../build/NEWS:6906 +#: ../build/NEWS:8754 ../build/NEWS:9595 ../build/NEWS:10133 +#: ../build/NEWS:10476 ../build/NEWS:13632 ../build/NEWS:13722 +#: ../build/NEWS:14438 ../build/NEWS:15008 ../build/NEWS:15305 +#: ../build/NEWS:15898 ../build/NEWS:16160 ../build/NEWS:18230 +#: ../build/NEWS:18605 ../build/NEWS:18938 ../build/NEWS:19358 +#: ../build/NEWS:20163 ../build/NEWS:20492 ../build/NEWS:20660 +#: ../build/NEWS:21161 ../build/NEWS:21600 ../build/NEWS:22099 +#: ../build/NEWS:22440 ../build/NEWS:23744 ../build/NEWS:24219 +#: ../build/NEWS:24808 ../build/NEWS:27147 ../build/NEWS:27462 +#: ../build/NEWS:29065 +msgid "C API" +msgstr "" + +#: ../build/NEWS:222 +msgid "" +"`bpo-43795 `__: The list in :ref:`stable-" +"abi-list` now shows the public name :c:struct:`PyFrameObject` rather than " +"``_frame``. The non-existing entry ``_node`` no longer appears in the list." +msgstr "" + +#: ../build/NEWS:226 +msgid "" +"`bpo-44378 `__: :c:func:`Py_IS_TYPE` no " +"longer uses :c:func:`Py_TYPE` to avoid a compiler warning: no longer cast " +"``const PyObject*`` to ``PyObject*``. Patch by Victor Stinner." +msgstr "" + +#: ../build/NEWS:232 +msgid "Python 3.10.0 beta 2" +msgstr "" + +#: ../build/NEWS:234 +msgid "*Release date: 2021-05-31*" +msgstr "" + +#: ../build/NEWS:237 ../build/NEWS:448 ../build/NEWS:1151 ../build/NEWS:1576 +#: ../build/NEWS:1810 ../build/NEWS:2434 ../build/NEWS:3008 ../build/NEWS:3358 +#: ../build/NEWS:4526 ../build/NEWS:4879 ../build/NEWS:5331 ../build/NEWS:5837 +#: ../build/NEWS:6540 ../build/NEWS:6925 ../build/NEWS:8875 ../build/NEWS:9631 +#: ../build/NEWS:10175 ../build/NEWS:10705 ../build/NEWS:14236 +#: ../build/NEWS:14454 ../build/NEWS:16182 ../build/NEWS:18633 +#: ../build/NEWS:19400 ../build/NEWS:19863 ../build/NEWS:19965 +#: ../build/NEWS:22031 ../build/NEWS:22050 ../build/NEWS:22215 +#: ../build/NEWS:22266 ../build/NEWS:22861 ../build/NEWS:22972 +#: ../build/NEWS:23062 ../build/NEWS:23771 ../build/NEWS:23830 +#: ../build/NEWS:24685 ../build/NEWS:24698 ../build/NEWS:25089 +#: ../build/NEWS:25122 ../build/NEWS:25234 ../build/NEWS:25289 +#: ../build/NEWS:25358 +msgid "Security" +msgstr "" + +#: ../build/NEWS:239 +msgid "" +"`bpo-44022 `__: mod:`http.client` now " +"avoids infinitely reading potential HTTP headers after a ``100 Continue`` " +"status response from the server." +msgstr "" + +#: ../build/NEWS:248 +msgid "" +"`bpo-44232 `__: Fix a regression in :" +"func:`type` when a metaclass raises an exception. The C function :c:func:" +"`type_new` must properly report the exception when a metaclass constructor " +"raises an exception and the winner class is not the metaclass. Patch by " +"Victor Stinner." +msgstr "" + +#: ../build/NEWS:253 +msgid "" +"`bpo-44201 `__: Avoid side effects of " +"checking for specialized syntax errors in the REPL that was causing it to " +"ask for extra tokens after a syntax error had been detected. Patch by Pablo " +"Galindo" +msgstr "" + +#: ../build/NEWS:257 +msgid "" +"`bpo-44184 `__: Fix a crash at Python " +"exit when a deallocator function removes the last strong reference to a heap " +"type. Patch by Victor Stinner." +msgstr "" + +#: ../build/NEWS:260 +msgid "" +"`bpo-44180 `__: The parser doesn't " +"report generic syntax errors that happen in a position further away that the " +"one it reached in the first pass. Patch by Pablo Galindo" +msgstr "" + +#: ../build/NEWS:264 +msgid "" +"`bpo-44168 `__: Fix error message in the " +"parser involving keyword arguments with invalid expressions. Patch by Pablo " +"Galindo" +msgstr "" + +#: ../build/NEWS:267 +msgid "" +"`bpo-44143 `__: Fixed a crash in the " +"parser that manifest when raising tokenizer errors when an existing " +"exception was present. Patch by Pablo Galindo." +msgstr "" + +#: ../build/NEWS:271 +msgid "" +"`bpo-44114 `__: Fix incorrect " +"dictkeys_reversed and dictitems_reversed function signatures in C code, " +"which broke webassembly builds." +msgstr "" + +#: ../build/NEWS:274 +msgid "" +"`bpo-43149 `__: Corrent the syntax error " +"message regarding multiple exception types to not refer to \"exception groups" +"\". Patch by Pablo Galindo" +msgstr "" + +#: ../build/NEWS:277 +msgid "" +"`bpo-44056 `__: Syntax errors when " +"default ``except`` is not the last ``except`` are reported with the correct " +"location. Patch by Mark Shannon." +msgstr "" + +#: ../build/NEWS:280 +msgid "" +"`bpo-43822 `__: The parser will " +"prioritize tokenizer errors over custom syntax errors when raising " +"exceptions. Patch by Pablo Galindo." +msgstr "" + +#: ../build/NEWS:283 +msgid "" +"`bpo-28146 `__: Fix a confusing error " +"message in :func:`str.format`." +msgstr "" + +#: ../build/NEWS:288 +msgid "" +"`bpo-44254 `__: On Mac, give turtledemo " +"button text a color that works on both light or dark background. " +"Programmers cannot control the latter." +msgstr "" + +#: ../build/NEWS:291 msgid "" "`bpo-38693 `__: Prefer f-strings to ``." "format`` in importlib.resources." msgstr "" -#: ../build/NEWS:147 +#: ../build/NEWS:293 msgid "" "`bpo-33693 `__: Importlib.metadata now " "prefers f-strings to .format." msgstr "" -#: ../build/NEWS:149 +#: ../build/NEWS:295 msgid "" "`bpo-44241 `__: Incorporate minor tweaks " "from importlib_metadata 4.1: SimplePath protocol, support for Metadata 2.2." msgstr "" -#: ../build/NEWS:152 +#: ../build/NEWS:298 msgid "" "`bpo-44210 `__: Make importlib.metadata." "_meta.PackageMetadata public." msgstr "" -#: ../build/NEWS:154 +#: ../build/NEWS:300 msgid "" "`bpo-43643 `__: Declare readers." "MultiplexedPath.name as a property per the spec." msgstr "" -#: ../build/NEWS:157 -msgid "" -"`bpo-4928 `__: Documented existing " -"behavior on POSIX: NamedTemporaryFiles are not deleted when creating process " -"is killed with SIGKILL" -msgstr "" - -#: ../build/NEWS:160 -msgid "" -"`bpo-44154 `__: Optimize :class:" -"`fractions.Fraction` pickling for large components." -msgstr "" - -#: ../build/NEWS:163 +#: ../build/NEWS:303 msgid "" "`bpo-33433 `__: For IPv4 mapped IPv6 " "addresses (:rfc:`4291` Section 2.5.5.2), the :mod:`ipaddress.IPv6Address." @@ -403,20 +689,7 @@ msgid "" "where public mapped IPv4 addresses were considered private by the IPv6 check." msgstr "" -#: ../build/NEWS:168 -msgid "" -"`bpo-44150 `__: Add optional *weights* " -"argument to statistics.fmean()." -msgstr "" - -#: ../build/NEWS:170 -msgid "" -"`bpo-44142 `__: :func:`ast.unparse` will " -"now drop the redundant parentheses when tuples used as assignment targets (e." -"g in for loops)." -msgstr "" - -#: ../build/NEWS:173 +#: ../build/NEWS:308 msgid "" "`bpo-44145 `__: :mod:`hmac` computations " "were not releasing the GIL while calling the OpenSSL ``HMAC_Update`` C API " @@ -424,20 +697,13 @@ msgid "" "as other :mod:`hashlib` algorithms support." msgstr "" -#: ../build/NEWS:178 -msgid "" -"`bpo-44095 `__: :class:`zipfile.Path` " -"now supports :attr:`zipfile.Path.stem`, :attr:`zipfile.Path.suffixes`, and :" -"attr:`zipfile.Path.suffix` attributes." -msgstr "" - -#: ../build/NEWS:181 +#: ../build/NEWS:313 msgid "" "`bpo-37788 `__: Fix a reference leak " "when a Thread object is never joined." msgstr "" -#: ../build/NEWS:183 +#: ../build/NEWS:315 msgid "" "`bpo-38908 `__: Subclasses of ``typing." "Protocol`` which only have data variables declared will now raise a " @@ -446,7 +712,7 @@ msgid "" "Patch provided by Yurii Karabas." msgstr "" -#: ../build/NEWS:188 +#: ../build/NEWS:320 msgid "" "`bpo-44098 `__: ``typing.ParamSpec`` " "will no longer be found in the ``__parameters__`` of most :mod:`typing` " @@ -456,73 +722,40 @@ msgid "" "will now error." msgstr "" -#: ../build/NEWS:194 +#: ../build/NEWS:326 msgid "" "`bpo-44089 `__: Allow subclassing ``csv." "Error`` in 3.10 (it was allowed in 3.9 and earlier but was disallowed in " "early versions of 3.10)." msgstr "" -#: ../build/NEWS:197 -msgid "" -"`bpo-44081 `__: :func:`ast.unparse` now " -"doesn't use redundant spaces to separate ``lambda`` and the ``:`` if there " -"are no parameters." -msgstr "" - -#: ../build/NEWS:200 -msgid "" -"`bpo-44061 `__: Fix regression in " -"previous release when calling :func:`pkgutil.iter_modules` with a list of :" -"class:`pathlib.Path` objects" -msgstr "" - -#: ../build/NEWS:203 +#: ../build/NEWS:329 msgid "" "`bpo-44059 `__: Register the SerenityOS " "Browser in the :mod:`webbrowser` module." msgstr "" -#: ../build/NEWS:206 +#: ../build/NEWS:332 msgid "" "`bpo-36515 `__: The :mod:`hashlib` " "module no longer does unaligned memory accesses when compiled for ARM " "platforms." msgstr "" -#: ../build/NEWS:209 -msgid "" -"`bpo-40465 `__: Remove random module " -"features deprecated in Python 3.9." -msgstr "" - -#: ../build/NEWS:211 +#: ../build/NEWS:335 msgid "" "`bpo-44018 `__: random.seed() no longer " "mutates bytearray inputs." msgstr "" -#: ../build/NEWS:213 +#: ../build/NEWS:337 msgid "" "`bpo-38352 `__: Add ``IO``, " "``BinaryIO``, ``TextIO``, ``Match``, and ``Pattern`` to ``typing.__all__``. " "Patch by Jelle Zijlstra." msgstr "" -#: ../build/NEWS:216 -msgid "" -"`bpo-44002 `__: :mod:`urllib.parse` now " -"uses :func:`functool.lru_cache` for its internal URL splitting and quoting " -"caches instead of rolling its own like its the '90s." -msgstr "" - -#: ../build/NEWS:220 -msgid "" -"The undocumented internal :mod:`urllib.parse` ``Quoted`` class API is now " -"deprecated, for removal in 3.14." -msgstr "" - -#: ../build/NEWS:223 +#: ../build/NEWS:340 msgid "" "`bpo-43972 `__: When :class:`http.server." "SimpleHTTPRequestHandler` sends a ``301 (Moved Permanently)`` for a " @@ -530,305 +763,129 @@ msgid "" "improves the behavior for certain clients." msgstr "" -#: ../build/NEWS:228 +#: ../build/NEWS:345 msgid "" "`bpo-28528 `__: Fix a bug in :mod:`pdb` " "where :meth:`~pdb.Pdb.checkline` raises :exc:`AttributeError` if it is " "called after :meth:`~pdb.Pdb.reset`." msgstr "" -#: ../build/NEWS:231 -msgid "" -"`bpo-43853 `__: Improve :mod:`sqlite3` " -"error handling: ``sqlite3_value_text()`` errors that set ``SQLITE_NOMEM`` " -"now raise :exc:`MemoryError`. Patch by Erlend E. Aasland." -msgstr "" - -#: ../build/NEWS:235 -msgid "" -"`bpo-43666 `__: AIX: `Lib/_aix_support." -"get_platform()` may fail in an AIX WPAR. The fileset bos.rte appears to have " -"a builddate in both LPAR and WPAR so this fileset is queried rather than bos." -"mp64. To prevent a similiar situation (no builddate in ODM) a value (9988) " -"sufficient for completing a build is provided. Patch by M Felt." -msgstr "" - -#: ../build/NEWS:241 +#: ../build/NEWS:348 msgid "" "`bpo-43650 `__: Fix :exc:`MemoryError` " "in :func:`shutil.unpack_archive` which fails inside :func:`shutil." "_unpack_zipfile` on large files. Patch by Igor Bolshakov." msgstr "" -#: ../build/NEWS:245 -msgid "" -"`bpo-33809 `__: Add the :meth:`traceback." -"TracebackException.print` method which prints the formatted exception " -"information." -msgstr "" - -#: ../build/NEWS:248 -msgid "" -"`bpo-42862 `__: :mod:`sqlite3` now " -"utilizes :meth:`functools.lru_cache` to implement the connection statement " -"cache. As a small optimisation, the default statement cache size has been " -"increased from 100 to 128. Patch by Erlend E. Aasland." -msgstr "" - -#: ../build/NEWS:253 -msgid "" -"`bpo-37449 `__: ``ensurepip`` now uses " -"``importlib.resources.files()`` traversable APIs" -msgstr "" - -#: ../build/NEWS:256 +#: ../build/NEWS:352 msgid "" "`bpo-41730 `__: ``DeprecationWarning`` " "is now raised when importing :mod:`tkinter.tix`, which has been deprecated " "in documentation since Python 3.6." msgstr "" -#: ../build/NEWS:260 -msgid "" -"`bpo-20684 `__: Remove unused " -"``_signature_get_bound_param`` function from :mod:`inspect` - by Anthony " -"Sottile." -msgstr "" - -#: ../build/NEWS:264 ../build/NEWS:936 ../build/NEWS:1397 ../build/NEWS:1677 -#: ../build/NEWS:1947 ../build/NEWS:2300 ../build/NEWS:2744 ../build/NEWS:3210 -#: ../build/NEWS:4169 ../build/NEWS:4716 ../build/NEWS:5160 ../build/NEWS:5618 -#: ../build/NEWS:6022 ../build/NEWS:6446 ../build/NEWS:6762 ../build/NEWS:8105 -#: ../build/NEWS:9409 ../build/NEWS:9875 ../build/NEWS:10352 -#: ../build/NEWS:10594 ../build/NEWS:12780 ../build/NEWS:13755 -#: ../build/NEWS:13965 ../build/NEWS:14115 ../build/NEWS:14333 -#: ../build/NEWS:14578 ../build/NEWS:14903 ../build/NEWS:15243 -#: ../build/NEWS:15726 ../build/NEWS:16069 ../build/NEWS:17677 -#: ../build/NEWS:18431 ../build/NEWS:18787 ../build/NEWS:19184 -#: ../build/NEWS:19582 ../build/NEWS:20154 ../build/NEWS:20474 -#: ../build/NEWS:20630 ../build/NEWS:20733 ../build/NEWS:22101 -#: ../build/NEWS:22361 ../build/NEWS:23546 ../build/NEWS:24106 -#: ../build/NEWS:24782 ../build/NEWS:25532 ../build/NEWS:26096 -#: ../build/NEWS:26349 ../build/NEWS:26548 ../build/NEWS:26859 -#: ../build/NEWS:29059 -msgid "Documentation" -msgstr "Documentation" - -#: ../build/NEWS:266 -msgid "" -"`bpo-44322 `__: Document that " -"SyntaxError args have a details tuple and that details are adjusted for " -"errors in f-string field replacement expressions." -msgstr "" - -#: ../build/NEWS:269 +#: ../build/NEWS:359 msgid "" "`bpo-42392 `__: Document the deprecation " "and removal of the ``loop`` parameter for many functions and classes in :mod:" "`asyncio`." msgstr "" -#: ../build/NEWS:272 +#: ../build/NEWS:362 msgid "" "`bpo-44195 `__: Corrected references to " "``TraversableResources`` in docs. There is no ``TraversableReader``." msgstr "" -#: ../build/NEWS:275 +#: ../build/NEWS:365 msgid "" "`bpo-41963 `__: Document that " "``ConfigParser`` strips off comments when reading configuration files." msgstr "" -#: ../build/NEWS:278 +#: ../build/NEWS:368 msgid "" "`bpo-44072 `__: Correct where in the " "numeric ABC hierarchy ``**`` support is added, i.e., in numbers.Complex, not " "numbers.Integral." msgstr "" -#: ../build/NEWS:281 +#: ../build/NEWS:371 msgid "" "`bpo-43558 `__: Add the remark to :mod:" "`dataclasses` documentation that the :meth:`__init__` of any base class has " "to be called in :meth:`__post_init__`, along with a code example." msgstr "" -#: ../build/NEWS:285 +#: ../build/NEWS:375 msgid "" "`bpo-44025 `__: Clarify when '_' in " "match statements is a keyword, and when not." msgstr "" -#: ../build/NEWS:289 ../build/NEWS:959 ../build/NEWS:1412 ../build/NEWS:1686 -#: ../build/NEWS:1956 ../build/NEWS:2309 ../build/NEWS:2756 ../build/NEWS:3231 -#: ../build/NEWS:4211 ../build/NEWS:4733 ../build/NEWS:5174 ../build/NEWS:5637 -#: ../build/NEWS:6047 ../build/NEWS:6776 ../build/NEWS:8209 ../build/NEWS:9457 -#: ../build/NEWS:9910 ../build/NEWS:10366 ../build/NEWS:10605 -#: ../build/NEWS:12945 ../build/NEWS:13980 ../build/NEWS:14134 -#: ../build/NEWS:14350 ../build/NEWS:14602 ../build/NEWS:14916 -#: ../build/NEWS:15248 ../build/NEWS:15732 ../build/NEWS:17725 -#: ../build/NEWS:18469 ../build/NEWS:18582 ../build/NEWS:18807 -#: ../build/NEWS:19197 ../build/NEWS:19594 ../build/NEWS:20176 -#: ../build/NEWS:20487 ../build/NEWS:20738 ../build/NEWS:20873 -#: ../build/NEWS:21144 ../build/NEWS:21574 ../build/NEWS:21847 -#: ../build/NEWS:22110 ../build/NEWS:22373 ../build/NEWS:23564 -#: ../build/NEWS:24124 ../build/NEWS:24787 ../build/NEWS:24908 -#: ../build/NEWS:25555 ../build/NEWS:26120 ../build/NEWS:26364 -#: ../build/NEWS:26541 ../build/NEWS:26850 ../build/NEWS:27079 -#: ../build/NEWS:27289 ../build/NEWS:29099 -msgid "Tests" -msgstr "" - -#: ../build/NEWS:291 -msgid "" -"`bpo-43921 `__: Fix test_ssl." -"test_wrong_cert_tls13(): use ``suppress_ragged_eofs=False``, since " -"``read()`` can raise :exc:`ssl.SSLEOFError` on Windows. Patch by Victor " -"Stinner." -msgstr "" - -#: ../build/NEWS:295 -msgid "" -"`bpo-43921 `__: Fix " -"test_pha_required_nocert() of test_ssl: catch two more EOF cases (when the " -"``recv()`` method returns an empty string). Patch by Victor Stinner." -msgstr "" - -#: ../build/NEWS:299 -msgid "" -"`bpo-44131 `__: Add test_frozenmain to " -"test_embed to test the :c:func:`Py_FrozenMain` C function. Patch by Victor " -"Stinner." -msgstr "" - -#: ../build/NEWS:302 +#: ../build/NEWS:381 msgid "" "`bpo-31904 `__: Ignore error string case " -"in test_file_not_exists()." +"in test_py_compile ``test_file_not_exists()``." msgstr "" -#: ../build/NEWS:304 +#: ../build/NEWS:384 msgid "" "`bpo-42083 `__: Add test to check that " "``PyStructSequence_NewType`` accepts a ``PyStructSequence_Desc`` with " "``doc`` field set to ``NULL``." msgstr "" -#: ../build/NEWS:307 +#: ../build/NEWS:387 msgid "" "`bpo-35753 `__: Fix crash in doctest " "when doctest parses modules that include unwrappable functions by skipping " "those functions." msgstr "" -#: ../build/NEWS:311 ../build/NEWS:982 ../build/NEWS:1421 ../build/NEWS:1692 -#: ../build/NEWS:1966 ../build/NEWS:2331 ../build/NEWS:2791 ../build/NEWS:3247 -#: ../build/NEWS:4262 ../build/NEWS:4742 ../build/NEWS:5200 ../build/NEWS:5653 -#: ../build/NEWS:6056 ../build/NEWS:6460 ../build/NEWS:6831 ../build/NEWS:8379 -#: ../build/NEWS:9493 ../build/NEWS:9964 ../build/NEWS:10379 -#: ../build/NEWS:13112 ../build/NEWS:13767 ../build/NEWS:13989 -#: ../build/NEWS:14140 ../build/NEWS:14360 ../build/NEWS:14607 -#: ../build/NEWS:14936 ../build/NEWS:15759 ../build/NEWS:16079 -#: ../build/NEWS:17788 ../build/NEWS:18477 ../build/NEWS:18587 -#: ../build/NEWS:18822 ../build/NEWS:19214 ../build/NEWS:19350 -#: ../build/NEWS:19610 ../build/NEWS:20134 ../build/NEWS:20218 -#: ../build/NEWS:20509 ../build/NEWS:20574 ../build/NEWS:20746 -#: ../build/NEWS:20864 ../build/NEWS:21133 ../build/NEWS:21588 -#: ../build/NEWS:21874 ../build/NEWS:22071 ../build/NEWS:22390 -#: ../build/NEWS:23607 ../build/NEWS:24162 ../build/NEWS:24833 -#: ../build/NEWS:25578 ../build/NEWS:26133 ../build/NEWS:26193 -#: ../build/NEWS:26210 ../build/NEWS:26452 ../build/NEWS:26557 -#: ../build/NEWS:27070 ../build/NEWS:27284 ../build/NEWS:27419 -#: ../build/NEWS:28950 -msgid "Build" -msgstr "" - -#: ../build/NEWS:313 +#: ../build/NEWS:393 msgid "" "`bpo-41282 `__: Fix broken ``make " "install`` that caused standard library extension modules to be unnecessarily " "and incorrectly rebuilt during the install phase of cpython." msgstr "" -#: ../build/NEWS:318 ../build/NEWS:991 ../build/NEWS:1443 ../build/NEWS:1715 -#: ../build/NEWS:1992 ../build/NEWS:2815 ../build/NEWS:3254 ../build/NEWS:4283 -#: ../build/NEWS:4752 ../build/NEWS:5212 ../build/NEWS:5670 ../build/NEWS:6061 -#: ../build/NEWS:6841 ../build/NEWS:8451 ../build/NEWS:9516 ../build/NEWS:10025 -#: ../build/NEWS:10393 ../build/NEWS:10638 ../build/NEWS:13230 -#: ../build/NEWS:13774 ../build/NEWS:14157 ../build/NEWS:14365 -#: ../build/NEWS:14612 ../build/NEWS:14951 ../build/NEWS:15257 -#: ../build/NEWS:15792 ../build/NEWS:17900 ../build/NEWS:18497 -#: ../build/NEWS:18828 ../build/NEWS:19239 ../build/NEWS:19616 -#: ../build/NEWS:20190 ../build/NEWS:20439 ../build/NEWS:20569 -#: ../build/NEWS:20859 ../build/NEWS:21100 ../build/NEWS:21630 -#: ../build/NEWS:21862 ../build/NEWS:22383 ../build/NEWS:22399 -#: ../build/NEWS:23670 ../build/NEWS:24175 ../build/NEWS:24818 -#: ../build/NEWS:25637 ../build/NEWS:25669 ../build/NEWS:25687 -#: ../build/NEWS:26144 ../build/NEWS:27433 ../build/NEWS:29246 -msgid "Windows" -msgstr "Windows" - -#: ../build/NEWS:320 -msgid "" -"`bpo-41299 `__: Fix 16ms jitter when " -"using timeouts in :mod:`threading`, such as with :meth:`threading.Lock." -"acquire` or :meth:`threading.Condition.wait`." -msgstr "" - -#: ../build/NEWS:324 +#: ../build/NEWS:400 msgid "" "`bpo-42686 `__: Build :mod:`sqlite3` " "with math functions enabled. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:328 ../build/NEWS:1021 ../build/NEWS:1720 ../build/NEWS:1999 -#: ../build/NEWS:2354 ../build/NEWS:2824 ../build/NEWS:3269 ../build/NEWS:4326 -#: ../build/NEWS:4764 ../build/NEWS:5219 ../build/NEWS:5693 ../build/NEWS:6848 -#: ../build/NEWS:8570 ../build/NEWS:9530 ../build/NEWS:10078 -#: ../build/NEWS:13340 ../build/NEWS:14002 ../build/NEWS:14162 -#: ../build/NEWS:14374 ../build/NEWS:14631 ../build/NEWS:14962 -#: ../build/NEWS:15807 ../build/NEWS:18502 ../build/NEWS:18853 -#: ../build/NEWS:19248 +#: ../build/NEWS:404 ../build/NEWS:1056 ../build/NEWS:1755 ../build/NEWS:2034 +#: ../build/NEWS:2389 ../build/NEWS:2859 ../build/NEWS:3304 ../build/NEWS:4361 +#: ../build/NEWS:4799 ../build/NEWS:5254 ../build/NEWS:5728 ../build/NEWS:6883 +#: ../build/NEWS:8605 ../build/NEWS:9565 ../build/NEWS:10113 +#: ../build/NEWS:13375 ../build/NEWS:14037 ../build/NEWS:14197 +#: ../build/NEWS:14409 ../build/NEWS:14666 ../build/NEWS:14997 +#: ../build/NEWS:15842 ../build/NEWS:18537 ../build/NEWS:18888 +#: ../build/NEWS:19283 msgid "macOS" msgstr "" -#: ../build/NEWS:330 +#: ../build/NEWS:406 msgid "" "`bpo-43109 `__: Allow --with-lto " "configure option to work with Apple-supplied Xcode or Command Line Tools." msgstr "" -#: ../build/NEWS:334 ../build/NEWS:1048 ../build/NEWS:1449 ../build/NEWS:1725 -#: ../build/NEWS:2006 ../build/NEWS:2847 ../build/NEWS:3274 ../build/NEWS:4347 -#: ../build/NEWS:5229 ../build/NEWS:5698 ../build/NEWS:6081 ../build/NEWS:6473 -#: ../build/NEWS:6855 ../build/NEWS:8591 ../build/NEWS:9537 ../build/NEWS:10086 -#: ../build/NEWS:10405 ../build/NEWS:10654 ../build/NEWS:13376 -#: ../build/NEWS:13779 ../build/NEWS:14009 ../build/NEWS:14167 -#: ../build/NEWS:14383 ../build/NEWS:14636 ../build/NEWS:15812 -#: ../build/NEWS:16098 ../build/NEWS:17967 ../build/NEWS:18507 -#: ../build/NEWS:18861 ../build/NEWS:19253 ../build/NEWS:19630 -#: ../build/NEWS:20105 ../build/NEWS:20431 ../build/NEWS:21545 -#: ../build/NEWS:21818 ../build/NEWS:22029 ../build/NEWS:22299 -#: ../build/NEWS:23436 ../build/NEWS:24745 ../build/NEWS:24913 -#: ../build/NEWS:25479 ../build/NEWS:25999 ../build/NEWS:26332 -#: ../build/NEWS:26844 ../build/NEWS:28867 -msgid "IDLE" -msgstr "IDLE" - -#: ../build/NEWS:336 +#: ../build/NEWS:412 msgid "" "`bpo-41611 `__: Avoid uncaught " "exceptions in ``AutoCompleteWindow.winconfig_event()``." msgstr "" -#: ../build/NEWS:339 +#: ../build/NEWS:415 msgid "" "`bpo-41611 `__: Fix IDLE sometimes " "freezing upon tab-completion on macOS." msgstr "" -#: ../build/NEWS:341 +#: ../build/NEWS:417 msgid "" "`bpo-44010 `__: Highlight the new :ref:" "`match ` statement's :ref:`soft keywords `: :keyword:" @@ -837,159 +894,56 @@ msgid "" "cases, including some ``_``-s in ``case`` patterns." msgstr "" -#: ../build/NEWS:347 +#: ../build/NEWS:423 msgid "" "`bpo-44026 `__: Include interpreter's " "typo fix suggestions in message line for NameErrors and AttributeErrors. " "Patch by E. Paine." msgstr "" -#: ../build/NEWS:351 ../build/NEWS:2364 ../build/NEWS:2859 ../build/NEWS:4777 -#: ../build/NEWS:5239 ../build/NEWS:5712 ../build/NEWS:8694 ../build/NEWS:9554 -#: ../build/NEWS:10093 ../build/NEWS:10434 ../build/NEWS:13558 -#: ../build/NEWS:14180 ../build/NEWS:14397 ../build/NEWS:14657 -#: ../build/NEWS:15263 ../build/NEWS:15851 ../build/NEWS:18164 -#: ../build/NEWS:18552 ../build/NEWS:18893 ../build/NEWS:19316 -#: ../build/NEWS:19802 ../build/NEWS:20170 ../build/NEWS:20564 -#: ../build/NEWS:20638 ../build/NEWS:21623 ../build/NEWS:22093 -#: ../build/NEWS:22413 ../build/NEWS:23688 ../build/NEWS:24806 -#: ../build/NEWS:25653 ../build/NEWS:26182 ../build/NEWS:26869 -#: ../build/NEWS:27088 ../build/NEWS:27296 ../build/NEWS:29207 +#: ../build/NEWS:427 ../build/NEWS:2399 ../build/NEWS:2894 ../build/NEWS:4812 +#: ../build/NEWS:5274 ../build/NEWS:5747 ../build/NEWS:8729 ../build/NEWS:9589 +#: ../build/NEWS:10128 ../build/NEWS:10469 ../build/NEWS:13593 +#: ../build/NEWS:14215 ../build/NEWS:14432 ../build/NEWS:14692 +#: ../build/NEWS:15298 ../build/NEWS:15886 ../build/NEWS:18199 +#: ../build/NEWS:18587 ../build/NEWS:18928 ../build/NEWS:19351 +#: ../build/NEWS:19837 ../build/NEWS:20205 ../build/NEWS:20599 +#: ../build/NEWS:20673 ../build/NEWS:21658 ../build/NEWS:22128 +#: ../build/NEWS:22448 ../build/NEWS:23723 ../build/NEWS:24841 +#: ../build/NEWS:25688 ../build/NEWS:26217 ../build/NEWS:26904 +#: ../build/NEWS:27123 ../build/NEWS:27331 ../build/NEWS:29242 msgid "Tools/Demos" msgstr "" -#: ../build/NEWS:353 +#: ../build/NEWS:429 msgid "" "`bpo-44074 `__: Make patchcheck " "automatically detect the correct base branch name (previously it was " "hardcoded to 'master')" msgstr "" -#: ../build/NEWS:357 ../build/NEWS:1066 ../build/NEWS:1456 ../build/NEWS:1732 -#: ../build/NEWS:2020 ../build/NEWS:2373 ../build/NEWS:2869 ../build/NEWS:3287 -#: ../build/NEWS:4380 ../build/NEWS:4790 ../build/NEWS:5251 ../build/NEWS:5724 -#: ../build/NEWS:6096 ../build/NEWS:6484 ../build/NEWS:6871 ../build/NEWS:8719 -#: ../build/NEWS:9560 ../build/NEWS:10098 ../build/NEWS:10441 -#: ../build/NEWS:13597 ../build/NEWS:13687 ../build/NEWS:14403 -#: ../build/NEWS:14973 ../build/NEWS:15270 ../build/NEWS:15863 -#: ../build/NEWS:16125 ../build/NEWS:18195 ../build/NEWS:18570 -#: ../build/NEWS:18903 ../build/NEWS:19323 ../build/NEWS:20128 -#: ../build/NEWS:20457 ../build/NEWS:20625 ../build/NEWS:21126 -#: ../build/NEWS:21565 ../build/NEWS:22064 ../build/NEWS:22405 -#: ../build/NEWS:23709 ../build/NEWS:24184 ../build/NEWS:24773 -#: ../build/NEWS:27112 ../build/NEWS:27427 ../build/NEWS:29030 -msgid "C API" -msgstr "" - -#: ../build/NEWS:359 -msgid "" -"`bpo-39573 `__: Convert the :c:func:" -"`Py_TYPE` and :c:func:`Py_SIZE` macros to static inline functions. The :c:" -"func:`Py_SET_TYPE` and :c:func:`Py_SET_SIZE` functions must now be used to " -"set an object type and size. Patch by Victor Stinner." -msgstr "" - -#: ../build/NEWS:364 -msgid "" -"`bpo-44263 `__: The :c:func:" -"`PyType_Ready` function now raises an error if a type is defined with the :" -"const:`Py_TPFLAGS_HAVE_GC` flag set but has no traverse function (:c:member:" -"`PyTypeObject.tp_traverse`). Patch by Victor Stinner." -msgstr "" - -#: ../build/NEWS:369 +#: ../build/NEWS:435 msgid "" "`bpo-43795 `__: The undocumented " "function :c:func:`Py_FrozenMain` is removed from the Limited API." msgstr "" -#: ../build/NEWS:372 -msgid "" -"`bpo-44113 `__: Deprecate the following " -"functions to configure the Python initialization:" -msgstr "" - -#: ../build/NEWS:375 -msgid ":c:func:`PySys_AddWarnOptionUnicode`" -msgstr "" - -#: ../build/NEWS:376 -msgid ":c:func:`PySys_AddWarnOption`" -msgstr "" - -#: ../build/NEWS:377 -msgid ":c:func:`PySys_AddXOption`" -msgstr "" - -#: ../build/NEWS:378 -msgid ":c:func:`PySys_HasWarnOptions`" -msgstr "" - -#: ../build/NEWS:379 -msgid ":c:func:`Py_SetPath`" -msgstr "" - -#: ../build/NEWS:380 -msgid ":c:func:`Py_SetProgramName`" -msgstr "" - -#: ../build/NEWS:381 -msgid ":c:func:`Py_SetPythonHome`" -msgstr "" - -#: ../build/NEWS:382 -msgid ":c:func:`Py_SetStandardStreamEncoding`" -msgstr "" - -#: ../build/NEWS:383 -msgid ":c:func:`_Py_SetProgramFullPath`" -msgstr "" - -#: ../build/NEWS:385 -msgid "" -"Use the new :c:type:`PyConfig` API of the :ref:`Python Initialization " -"Configuration ` instead (:pep:`587`)." -msgstr "" - -#: ../build/NEWS:388 -msgid "" -"`bpo-44094 `__: Remove " -"``PyErr_SetFromErrnoWithUnicodeFilename()``, " -"``PyErr_SetFromWindowsErrWithUnicodeFilename()``, and " -"``PyErr_SetExcFromWindowsErrWithUnicodeFilename()``. They are not documented " -"and have been deprecated since Python 3.3." -msgstr "" - -#: ../build/NEWS:393 +#: ../build/NEWS:438 msgid "" "`bpo-43795 `__: :c:func:" "`PyCodec_Unregister` is now properly exported as a function in the Windows " "Stable ABI DLL." msgstr "" -#: ../build/NEWS:396 -msgid "" -"`bpo-44029 `__: Remove deprecated " -"``Py_UNICODE`` APIs: ``PyUnicode_Encode``, ``PyUnicode_EncodeUTF7``, " -"``PyUnicode_EncodeUTF8``, ``PyUnicode_EncodeUTF16``, " -"``PyUnicode_EncodeUTF32``, ``PyUnicode_EncodeLatin1``, " -"``PyUnicode_EncodeMBCS``, ``PyUnicode_EncodeDecimal``, " -"``PyUnicode_EncodeRawUnicodeEscape``, ``PyUnicode_EncodeCharmap``, " -"``PyUnicode_EncodeUnicodeEscape``, ``PyUnicode_TransformDecimalToASCII``, " -"``PyUnicode_TranslateCharmap``, ``PyUnicodeEncodeError_Create``, " -"``PyUnicodeTranslateError_Create``. See :pep:`393` and :pep:`624` for " -"reference." -msgstr "" - -#: ../build/NEWS:408 +#: ../build/NEWS:443 msgid "Python 3.10.0 beta 1" msgstr "" -#: ../build/NEWS:410 +#: ../build/NEWS:445 msgid "*Release date: 2021-05-03*" msgstr "" -#: ../build/NEWS:415 +#: ../build/NEWS:450 msgid "" "`bpo-43434 `__: Creating :class:`sqlite3." "Connection` objects now also produces ``sqlite3.connect`` and ``sqlite3." @@ -998,7 +952,7 @@ msgid "" "Aasland." msgstr "" -#: ../build/NEWS:420 +#: ../build/NEWS:455 msgid "" "`bpo-43998 `__: The :mod:`ssl` module " "sets more secure cipher suites defaults. Ciphers without forward secrecy and " @@ -1008,34 +962,34 @@ msgid "" "on Hynek Schlawack's research." msgstr "" -#: ../build/NEWS:427 +#: ../build/NEWS:462 msgid "" "`bpo-43882 `__: The presence of newline " "or tab characters in parts of a URL could allow some forms of attacks." msgstr "" -#: ../build/NEWS:430 +#: ../build/NEWS:465 msgid "" "Following the controlling specification for URLs defined by WHATWG :func:" "`urllib.parse` now removes ASCII newlines and tabs from URLs, preventing " "such attacks." msgstr "" -#: ../build/NEWS:434 +#: ../build/NEWS:469 msgid "" "`bpo-43472 `__: Ensures interpreter-" "level audit hooks receive the ``cpython.PyInterpreterState_New`` event when " "called through the ``_xxsubinterpreters`` module." msgstr "" -#: ../build/NEWS:438 +#: ../build/NEWS:473 msgid "" "`bpo-43362 `__: Fix invalid free in " "_sha3 module. The issue was introduced in 3.10.0a1. Python 3.9 and earlier " "are not affected." msgstr "" -#: ../build/NEWS:441 +#: ../build/NEWS:476 msgid "" "`bpo-43762 `__: Add audit events for :" "func:`sqlite3.connect/handle`, :meth:`sqlite3.Connection." @@ -1043,25 +997,25 @@ msgid "" "by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:445 +#: ../build/NEWS:480 msgid "" "`bpo-43756 `__: Add new audit event " "``glob.glob/2`` to incorporate the new *root_dir* and *dir_fd* arguments " "added to :func:`glob.glob` and :func:`glob.iglob`." msgstr "" -#: ../build/NEWS:449 +#: ../build/NEWS:484 msgid "" "`bpo-36384 `__: :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 notation. glibc implementation of modern :func:`~socket.inet_pton` " +"octal notatation. glibc implementation of modern :func:`~socket.inet_pton` " "does not accept any leading zeros. For a while the :mod:`ipaddress` module " "used to accept ambiguous leading zeros." msgstr "" -#: ../build/NEWS:457 +#: ../build/NEWS:492 msgid "" "`bpo-43075 `__: Fix Regular Expression " "Denial of Service (ReDoS) vulnerability in :class:`urllib.request." @@ -1071,26 +1025,26 @@ msgid "" "remote attackers to control the HTTP server." msgstr "" -#: ../build/NEWS:463 +#: ../build/NEWS:498 msgid "" "`bpo-42800 `__: Audit hooks are now " "fired for frame.f_code, traceback.tb_frame, and generator code/frame " "attribute access." msgstr "" -#: ../build/NEWS:466 +#: ../build/NEWS:501 msgid "" "`bpo-37363 `__: Add audit events to the :" "mod:`http.client` module." msgstr "" -#: ../build/NEWS:471 +#: ../build/NEWS:506 msgid "" "`bpo-43977 `__: Prevent classes being " "both a sequence and a mapping when pattern matching." msgstr "" -#: ../build/NEWS:474 +#: ../build/NEWS:509 msgid "" "`bpo-43977 `__: Use :c:member:" "`~PyTypeObject.tp_flags` on the class object to determine if the subject is " @@ -1098,21 +1052,21 @@ msgid "" "`collections.abc` when pattern matching." msgstr "" -#: ../build/NEWS:478 +#: ../build/NEWS:513 msgid "" "`bpo-43892 `__: Restore proper " "validation of complex literal value patterns when parsing :keyword:`!match` " "blocks." msgstr "" -#: ../build/NEWS:481 +#: ../build/NEWS:516 msgid "" "`bpo-43933 `__: Set frame.f_lineno to " "the line number of the 'with' kweyword when executing the call to " "``__exit__``." msgstr "" -#: ../build/NEWS:484 +#: ../build/NEWS:519 msgid "" "`bpo-43933 `__: If the current position " "in a frame has no line number then set the f_lineno attribute to None, " @@ -1120,13 +1074,13 @@ msgid "" "but might occur in some unusual circumstances." msgstr "" -#: ../build/NEWS:489 +#: ../build/NEWS:524 msgid "" "`bpo-43963 `__: Importing the :mod:" "`_signal` module in a subinterpreter has no longer side effects." msgstr "" -#: ../build/NEWS:492 +#: ../build/NEWS:527 msgid "" "`bpo-42739 `__: The internal " "representation of line number tables is changed to not use sentinels, and an " @@ -1135,26 +1089,26 @@ msgid "" "tables more robust in some circumstances." msgstr "" -#: ../build/NEWS:497 +#: ../build/NEWS:532 msgid "" "`bpo-43908 `__: Make :mod:`re` types " "immutable. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:499 +#: ../build/NEWS:534 msgid "" "`bpo-43908 `__: Make the :class:`array." "array` type immutable. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:502 +#: ../build/NEWS:537 msgid "" "`bpo-43901 `__: Change class and module " "objects to lazy-create empty annotations dicts on demand. The annotations " "dicts are stored in the object's __dict__ for backwards compatibility." msgstr "" -#: ../build/NEWS:506 +#: ../build/NEWS:541 msgid "" "`bpo-43892 `__: Match patterns now use " "new dedicated AST nodes (``MatchValue``, ``MatchSingleton``, " @@ -1164,28 +1118,28 @@ msgid "" "Coghlan." msgstr "" -#: ../build/NEWS:512 +#: ../build/NEWS:547 msgid "" "`bpo-42725 `__: Usage of ``await``/" "``yield``/``yield from`` and named expressions within an annotation is now " "forbidden when PEP 563 is activated." msgstr "" -#: ../build/NEWS:516 +#: ../build/NEWS:551 msgid "" "`bpo-43754 `__: When performing " "structural pattern matching (:pep:`634`), captured names are now left " "unbound until the *entire* pattern has matched successfully." msgstr "" -#: ../build/NEWS:520 +#: ../build/NEWS:555 msgid "" "`bpo-42737 `__: Annotations for complex " "targets (everything beside simple names) no longer cause any runtime effects " "with ``from __future__ import annotations``." msgstr "" -#: ../build/NEWS:524 +#: ../build/NEWS:559 msgid "" "`bpo-43914 `__: :exc:`SyntaxError` " "exceptions raised by the intepreter will highlight the full error range of " @@ -1193,7 +1147,7 @@ msgid "" "where the problem is detected. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:529 +#: ../build/NEWS:564 msgid "" "`bpo-38605 `__: Revert making ``from " "__future__ import annotations`` the default. This follows the Steering " @@ -1203,7 +1157,7 @@ msgid "" "CLVXXPQ2T2LQ5MP2Y53VVQFCXYWQJHKZ/. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:536 +#: ../build/NEWS:571 msgid "" "`bpo-43475 `__: Hashes of NaN values now " "depend on object identity. Formerly, they always hashed to 0 even though " @@ -1211,25 +1165,25 @@ msgid "" "values caused pile-ups in hash tables." msgstr "" -#: ../build/NEWS:541 +#: ../build/NEWS:576 msgid "" "`bpo-43859 `__: Improve the error " "message for :exc:`IndentationError` exceptions. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:544 +#: ../build/NEWS:579 msgid "" "`bpo-41323 `__: Constant tuple folding " "in bytecode optimizer now reuses tuple in constant table." msgstr "" -#: ../build/NEWS:547 +#: ../build/NEWS:582 msgid "" "`bpo-43846 `__: Data stack usage is much " "reduced for large literal and call expressions." msgstr "" -#: ../build/NEWS:550 +#: ../build/NEWS:585 msgid "" "`bpo-38530 `__: When printing :exc:" "`NameError` raised by the interpreter, :c:func:`PyErr_Display` will offer " @@ -1237,38 +1191,38 @@ msgid "" "raised from. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:554 +#: ../build/NEWS:589 msgid "" "`bpo-43823 `__: Improve syntax errors " "for invalid dictionary literals. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:557 +#: ../build/NEWS:592 msgid "" "`bpo-43822 `__: Improve syntax errors in " "the parser for missing commas between expressions. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:560 +#: ../build/NEWS:595 msgid "" "`bpo-43798 `__: :class:`ast.alias` nodes " "now include source location metadata attributes e.g. lineno, col_offset." msgstr "" -#: ../build/NEWS:563 +#: ../build/NEWS:598 msgid "" "`bpo-43797 `__: Improve ``SyntaxError`` " "error messages for invalid comparisons. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:566 +#: ../build/NEWS:601 msgid "" "`bpo-43760 `__: Move the flag for " "checking whether tracing is enabled to the C stack, from the heap. Should " "speed up dispatch in the interpreter." msgstr "" -#: ../build/NEWS:569 +#: ../build/NEWS:604 msgid "" "`bpo-43682 `__: Static methods (:func:" "`@staticmethod `) and class methods (:func:`@classmethod " @@ -1277,46 +1231,46 @@ msgid "" "new ``__wrapped__`` attribute. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:575 +#: ../build/NEWS:610 msgid "" "`bpo-43751 `__: Fixed a bug where " "``anext(ait, default)`` would erroneously return None." msgstr "" -#: ../build/NEWS:578 +#: ../build/NEWS:613 msgid "" "`bpo-42128 `__: :data:`~object." "__match_args__` is no longer allowed to be a list." msgstr "" -#: ../build/NEWS:581 +#: ../build/NEWS:616 msgid "" "`bpo-43683 `__: Add GEN_START opcode. " "Marks start of generator, including async, or coroutine and handles sending " "values to a newly created generator or coroutine." msgstr "" -#: ../build/NEWS:585 +#: ../build/NEWS:620 msgid "" "`bpo-43105 `__: Importlib now resolves " "relative paths when creating module spec objects from file locations." msgstr "" -#: ../build/NEWS:588 +#: ../build/NEWS:623 msgid "" "`bpo-43682 `__: Static methods (:func:" "`@staticmethod `) are now callable as regular functions. Patch " "by Victor Stinner." msgstr "" -#: ../build/NEWS:591 +#: ../build/NEWS:626 msgid "" "`bpo-42609 `__: Prevented crashes in the " "AST validator and optimizer when compiling some absurdly long expressions " "like ``\"+0\"*1000000``. :exc:`RecursionError` is now raised instead." msgstr "" -#: ../build/NEWS:595 +#: ../build/NEWS:630 msgid "" "`bpo-38530 `__: When printing :exc:" "`AttributeError`, :c:func:`PyErr_Display` will offer suggestions of similar " @@ -1324,38 +1278,38 @@ msgid "" "Pablo Galindo" msgstr "" -#: ../build/NEWS:602 +#: ../build/NEWS:637 msgid "" "`bpo-44015 `__: In @dataclass(), raise a " "TypeError if KW_ONLY is specified more than once." msgstr "" -#: ../build/NEWS:605 +#: ../build/NEWS:640 msgid "" "`bpo-25478 `__: Added a *total()* method " "to collections.Counter() to compute the sum of the counts." msgstr "" -#: ../build/NEWS:608 +#: ../build/NEWS:643 msgid "" "`bpo-43733 `__: Change :class:`netrc." "netrc` to use UTF-8 encoding before using locale encoding." msgstr "" -#: ../build/NEWS:611 +#: ../build/NEWS:646 msgid "" "`bpo-43979 `__: Removed an unnecessary " "list comprehension before looping from :func:`urllib.parse.parse_qsl`. " "Patch by Christoph Zwerschke and Dong-hee Na." msgstr "" -#: ../build/NEWS:615 +#: ../build/NEWS:650 msgid "" "`bpo-43993 `__: Update bundled pip to " "21.1.1." msgstr "" -#: ../build/NEWS:617 +#: ../build/NEWS:652 msgid "" "`bpo-43957 `__: [Enum] Deprecate " "``TypeError`` when non-member is used in a containment check; In 3.12 " @@ -1364,7 +1318,7 @@ msgid "" "value." msgstr "" -#: ../build/NEWS:622 +#: ../build/NEWS:657 msgid "" "`bpo-42904 `__: For backwards " "compatbility with previous minor versions of Python, if :func:`typing." @@ -1374,32 +1328,32 @@ msgid "" "a class." msgstr "" -#: ../build/NEWS:628 +#: ../build/NEWS:663 msgid "" "`bpo-43945 `__: [Enum] Deprecate non-" "standard mixin format() behavior: in 3.12 the enum member, not the member's " "value, will be used for format() calls." msgstr "" -#: ../build/NEWS:631 +#: ../build/NEWS:666 msgid "" "`bpo-41139 `__: Deprecate undocumented " "``cgi.log()`` API." msgstr "" -#: ../build/NEWS:633 +#: ../build/NEWS:668 msgid "" "`bpo-43937 `__: Fixed the :mod:`turtle` " "module working with non-default root window." msgstr "" -#: ../build/NEWS:636 +#: ../build/NEWS:671 msgid "" "`bpo-43930 `__: Update bundled pip to " "21.1 and setuptools to 56.0.0" msgstr "" -#: ../build/NEWS:638 +#: ../build/NEWS:673 msgid "" "`bpo-43907 `__: Fix a bug in the pure-" "Python pickle implementation when using protocol 5, where bytearray " @@ -1407,7 +1361,7 @@ msgid "" "incorrectly unpickle into repeated copies of the bytearray object." msgstr "" -#: ../build/NEWS:643 +#: ../build/NEWS:678 msgid "" "`bpo-43926 `__: In ``importlib." "metadata``, provide a uniform interface to ``Description``, allow for any " @@ -1416,20 +1370,20 @@ msgid "" "566 JSON-compatible form. Sync with ``importlib_metadata 4.0``." msgstr "" -#: ../build/NEWS:649 +#: ../build/NEWS:684 msgid "" "`bpo-43920 `__: OpenSSL 3.0.0: :meth:" "`~ssl.SSLContext.load_verify_locations` now returns a consistent error " "message when cadata contains no valid certificate." msgstr "" -#: ../build/NEWS:653 +#: ../build/NEWS:688 msgid "" "`bpo-43607 `__: :mod:`urllib` can now " "convert Windows paths with ``\\\\?\\`` prefixes into URL paths." msgstr "" -#: ../build/NEWS:656 +#: ../build/NEWS:691 msgid "" "`bpo-43817 `__: Add :func:`inspect." "get_annotations`, which safely computes the annotations defined on an " @@ -1439,7 +1393,7 @@ msgid "" "stringized annotations." msgstr "" -#: ../build/NEWS:662 +#: ../build/NEWS:697 msgid "" ":func:`inspect.signature`, :func:`inspect.from_callable`, and :func:`inspect." "from_function` now call :func:`inspect.get_annotations` to retrieve " @@ -1447,7 +1401,7 @@ msgid "" "from_callable` can now un-stringize stringized annotations, too." msgstr "" -#: ../build/NEWS:668 +#: ../build/NEWS:703 msgid "" "`bpo-43284 `__: platform.win32_ver " "derives the windows version from sys.getwindowsversion().platform_version " @@ -1457,7 +1411,7 @@ msgid "" "private function to return an accurate version." msgstr "" -#: ../build/NEWS:675 +#: ../build/NEWS:710 msgid "" "`bpo-42854 `__: The :mod:`ssl` module " "now uses ``SSL_read_ex`` and ``SSL_write_ex`` internally. The functions " @@ -1465,13 +1419,13 @@ msgid "" "data no longer fails with a protocol violation error." msgstr "" -#: ../build/NEWS:680 +#: ../build/NEWS:715 msgid "" "`bpo-42333 `__: Port ``_ssl`` extension " "module to multiphase initialization." msgstr "" -#: ../build/NEWS:682 +#: ../build/NEWS:717 msgid "" "`bpo-43880 `__: :mod:`ssl` now raises " "DeprecationWarning for OP_NO_SSL/TLS* options, old TLS versions, old " @@ -1479,7 +1433,7 @@ msgid "" "3.7, or OpenSSL 1.1.0." msgstr "" -#: ../build/NEWS:686 +#: ../build/NEWS:721 msgid "" "`bpo-41559 `__: :pep:`612` is now " "implemented purely in Python; builtin ``types.GenericAlias`` objects no " @@ -1490,7 +1444,7 @@ msgid "" "during substitution." msgstr "" -#: ../build/NEWS:693 +#: ../build/NEWS:728 msgid "" "`bpo-43867 `__: The :mod:" "`multiprocessing` ``Server`` class now explicitly catchs :exc:`SystemExit` " @@ -1498,27 +1452,27 @@ msgid "" "serve_client()`` method reachs the end of file (EOF)." msgstr "" -#: ../build/NEWS:698 +#: ../build/NEWS:733 msgid "" "`bpo-40443 `__: Remove unused imports: " "pyclbr no longer uses copy, and typing no longer uses ast. Patch by Victor " "Stinner." msgstr "" -#: ../build/NEWS:701 +#: ../build/NEWS:736 msgid "" "`bpo-43820 `__: Remove an unneeded copy " "of the namespace passed to dataclasses.make_dataclass()." msgstr "" -#: ../build/NEWS:704 +#: ../build/NEWS:739 msgid "" "`bpo-43787 `__: Add ``__iter__()`` " "method to :class:`bz2.BZ2File`, :class:`gzip.GzipFile`, and :class:`lzma." "LZMAFile`. It makes iterating them about 2x faster. Patch by Inada Naoki." msgstr "" -#: ../build/NEWS:708 +#: ../build/NEWS:743 msgid "" "`bpo-43680 `__: Deprecate io.OpenWrapper " "and _pyio.OpenWrapper: use io.open and _pyio.open instead. Until Python 3.9, " @@ -1528,7 +1482,7 @@ msgid "" "_pyio.open() is now a static method, and builtins.open() is now io.open()." msgstr "" -#: ../build/NEWS:715 +#: ../build/NEWS:750 msgid "" "`bpo-43680 `__: The Python :func:`_pyio." "open` function becomes a static method to behave as :func:`io.open` built-in " @@ -1538,52 +1492,52 @@ msgid "" "open`. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:722 +#: ../build/NEWS:757 msgid "" "`bpo-41515 `__: Fix :exc:`KeyError` " "raised in :func:`typing.get_type_hints` due to synthetic modules that don't " "appear in ``sys.modules``." msgstr "" -#: ../build/NEWS:725 +#: ../build/NEWS:760 msgid "" "`bpo-43776 `__: When :class:`subprocess." "Popen` args are provided as a string or as :class:`pathlib.Path`, the Popen " "instance repr now shows the right thing." msgstr "" -#: ../build/NEWS:729 +#: ../build/NEWS:764 msgid "" "`bpo-42248 `__: [Enum] ensure exceptions " "raised in ``_missing__`` are released" msgstr "" -#: ../build/NEWS:731 +#: ../build/NEWS:766 msgid "" "`bpo-43744 `__: fix issue with enum " "member name matching the start of a private variable name" msgstr "" -#: ../build/NEWS:734 +#: ../build/NEWS:769 msgid "" "`bpo-43772 `__: Fixed the return value " "of ``TypeVar.__ror__``. Patch by Jelle Zijlstra." msgstr "" -#: ../build/NEWS:737 +#: ../build/NEWS:772 msgid "" "`bpo-43764 `__: Add match_args parameter " "to @dataclass decorator to allow suppression of __match_args__ generation." msgstr "" -#: ../build/NEWS:740 +#: ../build/NEWS:775 msgid "" "`bpo-43799 `__: OpenSSL 3.0.0: define " "``OPENSSL_API_COMPAT`` 1.1.1 to suppress deprecation warnings. Python " "requires OpenSSL 1.1.1 APIs." msgstr "" -#: ../build/NEWS:743 +#: ../build/NEWS:778 msgid "" "`bpo-43478 `__: Mocks can no longer be " "used as the specs for other Mocks. As a result, an already-mocked object " @@ -1594,13 +1548,13 @@ msgid "" "unconditionally pass." msgstr "" -#: ../build/NEWS:750 +#: ../build/NEWS:785 msgid "" "`bpo-43794 `__: Add :data:`ssl." "OP_IGNORE_UNEXPECTED_EOF` constants (OpenSSL 3.0.0)" msgstr "" -#: ../build/NEWS:753 +#: ../build/NEWS:788 msgid "" "`bpo-43785 `__: Improve ``bz2.BZ2File`` " "performance by removing the RLock from BZ2File. This makes BZ2File thread " @@ -1609,14 +1563,14 @@ msgid "" "Patch by Inada Naoki." msgstr "" -#: ../build/NEWS:758 +#: ../build/NEWS:793 msgid "" "`bpo-43789 `__: OpenSSL 3.0.0: Don't " "call the password callback function a second time when first call has " "signaled an error condition." msgstr "" -#: ../build/NEWS:761 +#: ../build/NEWS:796 msgid "" "`bpo-43788 `__: The header files for :" "mod:`ssl` error codes are now OpenSSL version-specific. Exceptions will now " @@ -1624,20 +1578,20 @@ msgid "" "been rewritten to use OpenSSL's text file with error codes." msgstr "" -#: ../build/NEWS:766 +#: ../build/NEWS:801 msgid "" "`bpo-43766 `__: Implement :pep:`647` in " "the :mod:`typing` module by adding :data:`TypeGuard`." msgstr "" -#: ../build/NEWS:769 +#: ../build/NEWS:804 msgid "" "`bpo-25264 `__: :func:`os.path.realpath` " "now accepts a *strict* keyword-only argument. When set to ``True``, :exc:" "`OSError` is raised if a path doesn't exist or a symlink loop is encountered." msgstr "" -#: ../build/NEWS:773 +#: ../build/NEWS:808 msgid "" "`bpo-43780 `__: In ``importlib." "metadata``, incorporate changes from importlib_metadata 3.10: Add mtime-" @@ -1645,7 +1599,7 @@ msgid "" "``entry_points()`` as deprecated." msgstr "" -#: ../build/NEWS:778 +#: ../build/NEWS:813 msgid "" "`bpo-47383 `__: The ``P.args`` and ``P." "kwargs`` attributes of :class:`typing.ParamSpec` are now instances of the " @@ -1654,20 +1608,20 @@ msgid "" "Zijlstra." msgstr "" -#: ../build/NEWS:783 +#: ../build/NEWS:818 msgid "" "`bpo-43731 `__: Add an ``encoding`` " "parameter :func:`logging.fileConfig()`." msgstr "" -#: ../build/NEWS:785 +#: ../build/NEWS:820 msgid "" "`bpo-43712 `__: Add ``encoding`` and " "``errors`` parameters to :func:`fileinput.input` and :class:`fileinput." "FileInput`." msgstr "" -#: ../build/NEWS:788 +#: ../build/NEWS:823 msgid "" "`bpo-38659 `__: A ``simple_enum`` " "decorator is added to the ``enum`` module to convert a normal class into an " @@ -1676,13 +1630,13 @@ msgid "" "``simple_enum``." msgstr "" -#: ../build/NEWS:793 +#: ../build/NEWS:828 msgid "" "`bpo-43764 `__: Fix an issue where :data:" "`~object.__match_args__` generation could fail for some :mod:`dataclasses`." msgstr "" -#: ../build/NEWS:796 +#: ../build/NEWS:831 msgid "" "`bpo-43752 `__: Fix :mod:`sqlite3` " "regression for zero-sized blobs with converters, where ``b\"\"`` was " @@ -1690,90 +1644,90 @@ msgid "" "Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:800 +#: ../build/NEWS:835 msgid "" "`bpo-43655 `__: :mod:`tkinter` dialog " "windows are now recognized as dialogs by window managers on macOS and X " "Window." msgstr "" -#: ../build/NEWS:803 +#: ../build/NEWS:838 msgid "" "`bpo-43723 `__: The following " "``threading`` methods are now deprecated and should be replaced:" msgstr "" -#: ../build/NEWS:806 +#: ../build/NEWS:841 msgid "``currentThread`` => :func:`threading.current_thread`" msgstr "" -#: ../build/NEWS:808 +#: ../build/NEWS:843 msgid "``activeCount`` => :func:`threading.active_count`" msgstr "" -#: ../build/NEWS:810 +#: ../build/NEWS:845 msgid "``Condition.notifyAll`` => :meth:`threading.Condition.notify_all`" msgstr "" -#: ../build/NEWS:812 +#: ../build/NEWS:847 msgid "``Event.isSet`` => :meth:`threading.Event.is_set`" msgstr "" -#: ../build/NEWS:814 +#: ../build/NEWS:849 msgid "``Thread.setName`` => :attr:`threading.Thread.name`" msgstr "" -#: ../build/NEWS:816 +#: ../build/NEWS:851 msgid "``thread.getName`` => :attr:`threading.Thread.name`" msgstr "" -#: ../build/NEWS:818 +#: ../build/NEWS:853 msgid "``Thread.isDaemon`` => :attr:`threading.Thread.daemon`" msgstr "" -#: ../build/NEWS:820 +#: ../build/NEWS:855 msgid "``Thread.setDaemon`` => :attr:`threading.Thread.daemon`" msgstr "" -#: ../build/NEWS:822 +#: ../build/NEWS:857 msgid "Patch by Jelle Zijlstra." msgstr "" -#: ../build/NEWS:824 +#: ../build/NEWS:859 msgid "" "`bpo-2135 `__: Deprecate find_module() " "and find_loader() implementations in importlib and zipimport." msgstr "" -#: ../build/NEWS:827 +#: ../build/NEWS:862 msgid "" "`bpo-43534 `__: :func:`turtle.textinput` " "and :func:`turtle.numinput` create now a transient window working on behalf " "of the canvas window." msgstr "" -#: ../build/NEWS:830 +#: ../build/NEWS:865 msgid "" "`bpo-43532 `__: Add the ability to " "specify keyword-only fields to dataclasses. These fields will become keyword-" "only arguments to the generated __init__." msgstr "" -#: ../build/NEWS:833 +#: ../build/NEWS:868 msgid "" "`bpo-43522 `__: Fix problem with :attr:" "`~ssl.SSLContext.hostname_checks_common_name`. OpenSSL does not copy " "hostflags from *struct SSL_CTX* to *struct SSL*." msgstr "" -#: ../build/NEWS:837 +#: ../build/NEWS:872 msgid "" "`bpo-8978 `__: Improve error message for :" "func:`tarfile.open` when :mod:`lzma` / :mod:`bz2` are unavailable. Patch by " "Anthony Sottile." msgstr "" -#: ../build/NEWS:840 +#: ../build/NEWS:875 msgid "" "`bpo-42967 `__: Allow :class:`bytes` " "``separator`` argument in ``urllib.parse.parse_qs`` and ``urllib.parse." @@ -1781,14 +1735,14 @@ msgid "" "a ``TypeError``." msgstr "" -#: ../build/NEWS:844 +#: ../build/NEWS:879 msgid "" "`bpo-43296 `__: Improve :mod:`sqlite3` " "error handling: ``sqlite3_value_blob()`` errors that set ``SQLITE_NOMEM`` " "now raise :exc:`MemoryError`. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:848 +#: ../build/NEWS:883 msgid "" "`bpo-43312 `__: New functions :func:" "`sysconfig.get_preferred_scheme` and :func:`sysconfig.get_default_scheme` " @@ -1796,7 +1750,7 @@ msgid "" "\"prefix\" (default) scheme names." msgstr "" -#: ../build/NEWS:852 +#: ../build/NEWS:887 msgid "" "`bpo-43265 `__: Improve :meth:`sqlite3." "Connection.backup` error handling. The error message for non-existant target " @@ -1804,53 +1758,53 @@ msgid "" "logic error``. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:857 +#: ../build/NEWS:892 msgid "" "`bpo-41282 `__: Install schemes in :mod:" "`distutils.command.install` are now loaded from :mod:`sysconfig`." msgstr "" -#: ../build/NEWS:860 +#: ../build/NEWS:895 msgid "" "`bpo-41282 `__: :mod:`distutils." "sysconfig` has been merged to :mod:`sysconfig`." msgstr "" -#: ../build/NEWS:862 +#: ../build/NEWS:897 msgid "" "`bpo-43176 `__: Fixed processing of a " "dataclass that inherits from a frozen dataclass with no fields. It is now " "correctly detected as an error." msgstr "" -#: ../build/NEWS:865 +#: ../build/NEWS:900 msgid "" "`bpo-43080 `__: :mod:`pprint` now has " "support for :class:`dataclasses.dataclass`. Patch by Lewis Gaul." msgstr "" -#: ../build/NEWS:868 +#: ../build/NEWS:903 msgid "" "`bpo-39950 `__: Add `pathlib.Path." "hardlink_to()` method that supersedes `link_to()`. The new method has the " "same argument order as `symlink_to()`." msgstr "" -#: ../build/NEWS:871 +#: ../build/NEWS:906 msgid "" "`bpo-42904 `__: :func:`typing." "get_type_hints` now checks the local namespace of a class when evaluating :" "pep:`563` annotations inside said class." msgstr "" -#: ../build/NEWS:874 +#: ../build/NEWS:909 msgid "" "`bpo-42269 `__: Add ``slots`` parameter " "to ``dataclasses.dataclass`` decorator to automatically generate " "``__slots__`` for class. Patch provided by Yurii Karabas." msgstr "" -#: ../build/NEWS:878 +#: ../build/NEWS:913 msgid "" "`bpo-39529 `__: Deprecated use of :func:" "`asyncio.get_event_loop` without running event loop. Emit deprecation " @@ -1863,14 +1817,14 @@ msgid "" "class:`~asyncio.StreamReaderProtocol`." msgstr "" -#: ../build/NEWS:888 +#: ../build/NEWS:923 msgid "" "`bpo-18369 `__: Certificate and " "PrivateKey classes were added to the ssl module. Certificates and keys can " "now be loaded from memory buffer, too." msgstr "" -#: ../build/NEWS:891 +#: ../build/NEWS:926 msgid "" "`bpo-41486 `__: Use a new output buffer " "management code for :mod:`bz2` / :mod:`lzma` / :mod:`zlib` modules, and add " @@ -1878,37 +1832,37 @@ msgid "" "bring some performance improvements. Patch by Ma Lin." msgstr "" -#: ../build/NEWS:896 +#: ../build/NEWS:931 msgid "" "`bpo-31870 `__: The :func:`ssl." "get_server_certificate` function now has a *timeout* parameter." msgstr "" -#: ../build/NEWS:899 +#: ../build/NEWS:934 msgid "" "`bpo-41735 `__: Fix thread locks in zlib " "module may go wrong in rare case. Patch by Ma Lin." msgstr "" -#: ../build/NEWS:902 +#: ../build/NEWS:937 msgid "" "`bpo-36470 `__: Fix dataclasses with " "``InitVar``\\s and :func:`~dataclasses.replace()`. Patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:905 +#: ../build/NEWS:940 msgid "" "`bpo-40849 `__: Expose " "X509_V_FLAG_PARTIAL_CHAIN ssl flag" msgstr "" -#: ../build/NEWS:907 +#: ../build/NEWS:942 msgid "" "`bpo-35114 `__: :func:`ssl.RAND_status` " "now returns a boolean value (as documented) instead of ``1`` or ``0``." msgstr "" -#: ../build/NEWS:910 +#: ../build/NEWS:945 msgid "" "`bpo-39906 `__: :meth:`pathlib.Path." "stat` and :meth:`~pathlib.Path.chmod` now accept a *follow_symlinks* keyword-" @@ -1916,14 +1870,14 @@ msgid "" "module." msgstr "" -#: ../build/NEWS:914 +#: ../build/NEWS:949 msgid "" "`bpo-39899 `__: :func:`os.path." "expanduser()` now refuses to guess Windows home directories if the basename " "of current user's home directory does not match their username." msgstr "" -#: ../build/NEWS:918 +#: ../build/NEWS:953 msgid "" ":meth:`pathlib.Path.expanduser()` and :meth:`~pathlib.Path.home()` now " "consistently raise :exc:`RuntimeError` exception when a home directory " @@ -1931,66 +1885,66 @@ msgid "" "on Windows when the ``\"USERNAME\"`` environment variable was unset." msgstr "" -#: ../build/NEWS:923 +#: ../build/NEWS:958 msgid "" "`bpo-36076 `__: Added SNI support to :" "func:`ssl.get_server_certificate`." msgstr "" -#: ../build/NEWS:925 +#: ../build/NEWS:960 msgid "" "`bpo-38490 `__: Covariance, Pearson's " "correlation, and simple linear regression functionality was added to " "statistics module. Patch by Tymoteusz Wołodźko." msgstr "" -#: ../build/NEWS:928 +#: ../build/NEWS:963 msgid "" "`bpo-33731 `__: Provide a locale." "localize() function, which converts a normalized number string into a locale " "format." msgstr "" -#: ../build/NEWS:931 +#: ../build/NEWS:966 msgid "" "`bpo-32745 `__: Fix a regression in the " "handling of ctypes' :data:`ctypes.c_wchar_p` type: embedded null characters " "would cause a :exc:`ValueError` to be raised. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:938 +#: ../build/NEWS:973 msgid "" "`bpo-43987 `__: Add \"Annotations Best " "Practices\" document as a new HOWTO." msgstr "" -#: ../build/NEWS:940 +#: ../build/NEWS:975 msgid "" "`bpo-43977 `__: Document the new :const:" "`Py_TPFLAGS_MAPPING` and :const:`Py_TPFLAGS_SEQUENCE` type flags." msgstr "" -#: ../build/NEWS:943 +#: ../build/NEWS:978 msgid "" "`bpo-43959 `__: The documentation on the " "PyContextVar C-API was clarified." msgstr "" -#: ../build/NEWS:945 +#: ../build/NEWS:980 msgid "" "`bpo-43938 `__: Update dataclasses " "documentation to express that FrozenInstanceError is derived from " "AttributeError." msgstr "" -#: ../build/NEWS:948 +#: ../build/NEWS:983 msgid "" "`bpo-43778 `__: Fix the Sphinx " "glossary_search extension: create the _static/ sub-directory if it doesn't " "exist." msgstr "" -#: ../build/NEWS:951 +#: ../build/NEWS:986 msgid "" "`bpo-43755 `__: Update documentation to " "reflect that unparenthesized lambda expressions can no longer be the " @@ -1998,21 +1952,21 @@ msgid "" "expressions since Python 3.9." msgstr "" -#: ../build/NEWS:955 +#: ../build/NEWS:990 msgid "" "`bpo-43739 `__: Fixing the example code " "in Doc/extending/extending.rst to declare and initialize the pmodule " "variable to be of the right type." msgstr "" -#: ../build/NEWS:961 +#: ../build/NEWS:996 msgid "" "`bpo-43961 `__: Fix test_logging." "test_namer_rotator_inheritance() on Windows: use :func:`os.replace` rather " "than :func:`os.rename`. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:965 +#: ../build/NEWS:1000 msgid "" "`bpo-43842 `__: Fix a race condition in " "the SMTP test of test_logging. Don't close a file descriptor (socket) from a " @@ -2020,7 +1974,7 @@ msgid "" "by Victor Stinner." msgstr "" -#: ../build/NEWS:969 +#: ../build/NEWS:1004 msgid "" "`bpo-43843 `__: :mod:`test.libregrtest` " "now marks a test as ENV_CHANGED (altered the execution environment) if a " @@ -2029,44 +1983,44 @@ msgid "" "as failed. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:975 +#: ../build/NEWS:1010 msgid "" "`bpo-43811 `__: Tests multiple OpenSSL " "versions on GitHub Actions. Use ccache to speed up testing." msgstr "" -#: ../build/NEWS:978 +#: ../build/NEWS:1013 msgid "" "`bpo-43791 `__: OpenSSL 3.0.0: Disable " "testing of legacy protocols TLS 1.0 and 1.1. Tests are failing with " "TLSV1_ALERT_INTERNAL_ERROR." msgstr "" -#: ../build/NEWS:984 +#: ../build/NEWS:1019 msgid "" "`bpo-43567 `__: Improved generated code " "refresh (AST/tokens/opcodes/keywords) on Windows." msgstr "" -#: ../build/NEWS:987 +#: ../build/NEWS:1022 msgid "" "`bpo-43669 `__: Implement :pep:`644`. " "Python now requires OpenSSL 1.1.1 or newer." msgstr "" -#: ../build/NEWS:993 +#: ../build/NEWS:1028 msgid "" "`bpo-35306 `__: Adds additional " "arguments to :func:`os.startfile` function." msgstr "" -#: ../build/NEWS:995 +#: ../build/NEWS:1030 msgid "" "`bpo-43538 `__: Avoid raising errors " "from :meth:`pathlib.Path.exists()` when passed an invalid filename." msgstr "" -#: ../build/NEWS:998 +#: ../build/NEWS:1033 msgid "" "`bpo-38822 `__: Fixed :func:`os.stat` " "failing on inaccessible directories with a trailing slash, rather than " @@ -2074,13 +2028,13 @@ msgid "" "func:`os.path.exists` and :func:`os.path.isdir`." msgstr "" -#: ../build/NEWS:1003 +#: ../build/NEWS:1038 msgid "" "`bpo-26227 `__: Fixed decoding of host " "names in :func:`socket.gethostbyaddr` and :func:`socket.gethostbyname_ex`." msgstr "" -#: ../build/NEWS:1006 +#: ../build/NEWS:1041 msgid "" "`bpo-40432 `__: Updated pegen " "regeneration script on Windows to find and use Python 3.8 or higher. Prior " @@ -2088,32 +2042,32 @@ msgid "" "may have used lower versions of Python." msgstr "" -#: ../build/NEWS:1010 +#: ../build/NEWS:1045 msgid "" "`bpo-43745 `__: Actually updates Windows " "release to OpenSSL 1.1.1k. Earlier releases were mislabelled and actually " "included 1.1.1i again." msgstr "" -#: ../build/NEWS:1013 +#: ../build/NEWS:1048 msgid "" "`bpo-43652 `__: Update Tcl and Tk to " "8.6.11 in Windows installer." msgstr "" -#: ../build/NEWS:1015 +#: ../build/NEWS:1050 msgid "" "`bpo-43492 `__: Upgrade Windows " "installer to use SQLite 3.35.5." msgstr "" -#: ../build/NEWS:1017 +#: ../build/NEWS:1052 msgid "" "`bpo-30555 `__: Fix ``WindowsConsoleIO`` " "errors in the presence of fd redirection. Patch by Segev Finer." msgstr "" -#: ../build/NEWS:1023 +#: ../build/NEWS:1058 msgid "" "`bpo-42119 `__: Fix check for macOS SDK " "paths when building Python. Narrow search to match contents of SDKs, namely " @@ -2125,13 +2079,13 @@ msgid "" "locations." msgstr "" -#: ../build/NEWS:1031 +#: ../build/NEWS:1066 msgid "" "`bpo-43568 `__: Drop support for " "MACOSX_DEPLOYMENT_TARGET < 10.3" msgstr "" -#: ../build/NEWS:1033 +#: ../build/NEWS:1068 msgid "" "`bpo-44009 `__: Provide \"python3.x-" "intel64\" executable to allow reliably forcing macOS universal2 framework " @@ -2140,26 +2094,26 @@ msgid "" "available." msgstr "" -#: ../build/NEWS:1038 +#: ../build/NEWS:1073 msgid "" "`bpo-43851 `__: Build SQLite with " "``SQLITE_OMIT_AUTOINIT`` on macOS. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1041 +#: ../build/NEWS:1076 msgid "" "`bpo-43492 `__: Update macOS installer " "to use SQLite 3.35.4." msgstr "" -#: ../build/NEWS:1043 +#: ../build/NEWS:1078 msgid "" "`bpo-42235 `__: ``Mac/BuildScript/build-" "installer.py`` will now use \"--enable-optimizations\" and ``--with-lto`` " "when building on macOS 10.15 or later." msgstr "" -#: ../build/NEWS:1050 +#: ../build/NEWS:1085 msgid "" "`bpo-37903 `__: Add mouse actions to the " "shell sidebar. Left click and optional drag selects one or more lines, as " @@ -2168,38 +2122,38 @@ msgid "" "sidebar with lines from the selected text." msgstr "" -#: ../build/NEWS:1056 +#: ../build/NEWS:1091 msgid "" "`bpo-43981 `__: Fix reference leak in " "test_squeezer. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:1058 +#: ../build/NEWS:1093 msgid "" "`bpo-37892 `__: Indent IDLE Shell input " "with spaces instead of tabs" msgstr "" -#: ../build/NEWS:1060 +#: ../build/NEWS:1095 msgid "" "`bpo-43655 `__: IDLE dialog windows are " "now recognized as dialogs by window managers on macOS and X Window." msgstr "" -#: ../build/NEWS:1063 +#: ../build/NEWS:1098 msgid "" "`bpo-37903 `__: IDLE's shell now shows " "prompts in a separate side-bar." msgstr "" -#: ../build/NEWS:1068 +#: ../build/NEWS:1103 msgid "" "`bpo-43916 `__: Add a new :c:data:" "`Py_TPFLAGS_DISALLOW_INSTANTIATION` type flag to disallow creating type " "instances. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1071 +#: ../build/NEWS:1106 msgid "" "`bpo-43774 `__: Remove the now unused " "``PYMALLOC_DEBUG`` macro. Debug hooks on memory allocators are now installed " @@ -2208,7 +2162,7 @@ msgid "" "(ex: using ``PYTHONMALLOC=debug`` environment variable)." msgstr "" -#: ../build/NEWS:1077 +#: ../build/NEWS:1112 msgid "" "`bpo-43962 `__: " "_PyInterpreterState_IDIncref() now calls _PyInterpreterState_IDInitref() and " @@ -2218,7 +2172,7 @@ msgid "" "Stinner." msgstr "" -#: ../build/NEWS:1083 +#: ../build/NEWS:1118 msgid "" "`bpo-28254 `__: Add new C-API functions " "to control the state of the garbage collector: :c:func:`PyGC_Enable()`, :c:" @@ -2226,20 +2180,20 @@ msgid "" "functions in the :mod:`gc` module." msgstr "" -#: ../build/NEWS:1088 +#: ../build/NEWS:1123 msgid "" "`bpo-43908 `__: Introduce :const:" "`Py_TPFLAGS_IMMUTABLETYPE` flag for immutable type objects, and modify :c:" "func:`PyType_Ready` to set it for static types. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1092 +#: ../build/NEWS:1127 msgid "" "`bpo-43795 `__: :c:func:`PyMem_Calloc` " "is now available in the limited C API (``Py_LIMITED_API``)." msgstr "" -#: ../build/NEWS:1095 +#: ../build/NEWS:1130 msgid "" "`bpo-43868 `__: :c:func:" "`PyOS_ReadlineFunctionPointer` is no longer exported by limited C API " @@ -2247,13 +2201,13 @@ msgid "" "``FILE*``, it is not part of the stable ABI." msgstr "" -#: ../build/NEWS:1099 +#: ../build/NEWS:1134 msgid "" "`bpo-43795 `__: Stable ABI and limited " "API definitions are generated from a central manifest (:pep:`652`)." msgstr "" -#: ../build/NEWS:1102 +#: ../build/NEWS:1137 msgid "" "`bpo-43753 `__: Add the :c:func:" "`Py_Is(x, y) ` function to test if the *x* object is the *y* object, " @@ -2263,15 +2217,15 @@ msgid "" "``False`` singleton. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1111 +#: ../build/NEWS:1146 msgid "Python 3.10.0 alpha 7" msgstr "" -#: ../build/NEWS:1113 +#: ../build/NEWS:1148 msgid "*Release date: 2021-04-05*" msgstr "" -#: ../build/NEWS:1118 +#: ../build/NEWS:1153 msgid "" "`bpo-42988 `__: CVE-2021-3426: Remove " "the ``getfile`` feature of the :mod:`pydoc` module which could be abused to " @@ -2280,7 +2234,7 @@ msgid "" "passwords. Vulnerability reported by David Schwörer." msgstr "" -#: ../build/NEWS:1124 +#: ../build/NEWS:1159 msgid "" "`bpo-43285 `__: :mod:`ftplib` no longer " "trusts the IP address value returned from the server in response to the PASV " @@ -2288,40 +2242,40 @@ msgid "" "response to probe IPv4 address and port combinations on the client network." msgstr "" -#: ../build/NEWS:1129 +#: ../build/NEWS:1164 msgid "" "Code that requires the former vulnerable behavior may set a " "``trust_server_pasv_ipv4_address`` attribute on their :class:`ftplib.FTP` " "instances to ``True`` to re-enable it." msgstr "" -#: ../build/NEWS:1133 +#: ../build/NEWS:1168 msgid "" "`bpo-43439 `__: Add audit hooks for :" "func:`gc.get_objects`, :func:`gc.get_referrers` and :func:`gc." "get_referents`. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:1140 +#: ../build/NEWS:1175 msgid "" "`bpo-27129 `__: Update CPython bytecode " "magic number." msgstr "" -#: ../build/NEWS:1142 +#: ../build/NEWS:1177 msgid "" "`bpo-43672 `__: Raise ImportWarning when " "calling find_loader()." msgstr "" -#: ../build/NEWS:1144 +#: ../build/NEWS:1179 msgid "" "`bpo-43660 `__: Fix crash that happens " "when replacing ``sys.stderr`` with a callable that can remove the object " "while an exception is being printed. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:1148 +#: ../build/NEWS:1183 msgid "" "`bpo-27129 `__: The bytecode interpreter " "uses instruction, rather byte, offsets internally. This reduces the number " @@ -2329,67 +2283,67 @@ msgid "" "bit." msgstr "" -#: ../build/NEWS:1152 +#: ../build/NEWS:1187 msgid "" "`bpo-40645 `__: Fix reference leak in " "the :mod:`_hashopenssl` extension. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:1155 +#: ../build/NEWS:1190 msgid "" "`bpo-42134 `__: Calls to find_module() " "by the import system now raise ImportWarning." msgstr "" -#: ../build/NEWS:1158 +#: ../build/NEWS:1193 msgid "" "`bpo-41064 `__: Improve the syntax error " "for invalid usage of double starred elements ('**') in f-strings. Patch by " "Pablo Galindo." msgstr "" -#: ../build/NEWS:1161 +#: ../build/NEWS:1196 msgid "" "`bpo-43575 `__: Speed up calls to " "``map()`` by using the :pep:`590` ``vectorcall`` calling convention. Patch " "by Dong-hee Na." msgstr "" -#: ../build/NEWS:1164 +#: ../build/NEWS:1199 msgid "" "`bpo-42137 `__: The import system now " "prefers using ``__spec__`` for ``ModuleType.__repr__`` over " "``module_repr()``." msgstr "" -#: ../build/NEWS:1167 +#: ../build/NEWS:1202 msgid "" "`bpo-43452 `__: Added micro-" "optimizations to ``_PyType_Lookup()`` to improve cache lookup performance in " "the common case of cache hits." msgstr "" -#: ../build/NEWS:1170 +#: ../build/NEWS:1205 msgid "" "`bpo-43555 `__: Report the column offset " "for :exc:`SyntaxError` for invalid line continuation characters. Patch by " "Pablo Galindo." msgstr "" -#: ../build/NEWS:1173 +#: ../build/NEWS:1208 msgid "" "`bpo-43517 `__: Fix misdetection of " "circular imports when using ``from pkg.mod import attr``, which caused false " "positives in non-trivial multi-threaded code." msgstr "" -#: ../build/NEWS:1177 +#: ../build/NEWS:1212 msgid "" "`bpo-43497 `__: Emit SyntaxWarnings for " "assertions with tuple constants, this is a regression introduced in python3.7" msgstr "" -#: ../build/NEWS:1180 +#: ../build/NEWS:1215 msgid "" "`bpo-39316 `__: Tracing now has correct " "line numbers for attribute accesses when the the attribute is on a different " @@ -2397,7 +2351,7 @@ msgid "" "chains." msgstr "" -#: ../build/NEWS:1184 +#: ../build/NEWS:1219 msgid "" "`bpo-35883 `__: Python no longer fails " "at startup with a fatal error if a command line argument contains an invalid " @@ -2406,27 +2360,27 @@ msgid "" "+10ffff] range." msgstr "" -#: ../build/NEWS:1189 +#: ../build/NEWS:1224 msgid "" "`bpo-43410 `__: Fix a bug that was " "causing the parser to crash when emiting syntax errors when reading input " "from stdin. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:1192 +#: ../build/NEWS:1227 msgid "" "`bpo-43406 `__: Fix a possible race " "condition where ``PyErr_CheckSignals`` tries to execute a non-Python signal " "handler." msgstr "" -#: ../build/NEWS:1195 +#: ../build/NEWS:1230 msgid "" "`bpo-42128 `__: Add ``__match_args__`` " "to :c:type:`structsequence` based classes. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:1198 +#: ../build/NEWS:1233 msgid "" "`bpo-43390 `__: CPython now sets the " "``SA_ONSTACK`` flag in ``PyOS_setsig`` for the VM's default signal " @@ -2437,14 +2391,14 @@ msgid "" "processes that don't use sigaltstack." msgstr "" -#: ../build/NEWS:1205 +#: ../build/NEWS:1240 msgid "" "`bpo-43287 `__: Speed up calls to " "``filter()`` by using the :pep:`590` ``vectorcall`` calling convention. " "Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:1208 +#: ../build/NEWS:1243 msgid "" "`bpo-37448 `__: Add a radix tree based " "memory map to track in-use obmalloc arenas. Use to replace the old " @@ -2454,7 +2408,7 @@ msgid "" "from its ultra-fast paths." msgstr "" -#: ../build/NEWS:1214 +#: ../build/NEWS:1249 msgid "" "It also has the advantage of eliminating the memory unsanitary behavior of " "the previous address_in_range(). The old address_in_range() was marked with " @@ -2462,17 +2416,17 @@ msgid "" "_Py_NO_SANITIZE_MEMORY. Those annotations are no longer needed." msgstr "" -#: ../build/NEWS:1219 +#: ../build/NEWS:1254 msgid "" "To disable the radix tree map, set a preprocessor flag as follows: `-" "DWITH_PYMALLOC_RADIX_TREE=0`." msgstr "" -#: ../build/NEWS:1222 +#: ../build/NEWS:1257 msgid "Co-authored-by: Tim Peters " msgstr "" -#: ../build/NEWS:1224 +#: ../build/NEWS:1259 msgid "" "`bpo-29988 `__: Only handle asynchronous " "exceptions and requests to drop the GIL when returning from a call or on the " @@ -2480,26 +2434,26 @@ msgid "" "with statements, even for interrupts." msgstr "" -#: ../build/NEWS:1232 +#: ../build/NEWS:1267 msgid "" "`bpo-43720 `__: Document various stdlib " "deprecations in imp, pkgutil, and importlib.util for removal in Python 3.12." msgstr "" -#: ../build/NEWS:1235 +#: ../build/NEWS:1270 msgid "" "`bpo-43433 `__: :class:`xmlrpc.client." "ServerProxy` no longer ignores query and fragment in the URL of the server." msgstr "" -#: ../build/NEWS:1238 +#: ../build/NEWS:1273 msgid "" "`bpo-31956 `__: The :meth:`~array.array." "index` method of :class:`array.array` now has optional *start* and *stop* " "parameters." msgstr "" -#: ../build/NEWS:1241 +#: ../build/NEWS:1276 msgid "" "`bpo-40066 `__: Enum: adjust ``repr()`` " "to show only enum and member name (not value, nor angle brackets) and " @@ -2507,58 +2461,58 @@ msgid "" "match." msgstr "" -#: ../build/NEWS:1245 +#: ../build/NEWS:1280 msgid "" "`bpo-42136 `__: Deprecate all " "module_repr() methods found in importlib as their use is being phased out by " "Python 3.12." msgstr "" -#: ../build/NEWS:1248 +#: ../build/NEWS:1283 msgid "" "`bpo-35930 `__: Raising an exception " "raised in a \"future\" instance will create reference cycles." msgstr "" -#: ../build/NEWS:1251 +#: ../build/NEWS:1286 msgid "" "`bpo-41369 `__: Finish updating the " "vendored libmpdec to version 2.5.1. Patch by Stefan Krah." msgstr "" -#: ../build/NEWS:1254 +#: ../build/NEWS:1289 msgid "" "`bpo-43422 `__: Revert the _decimal C " "API which was added in `bpo-41324 `__." msgstr "" -#: ../build/NEWS:1256 +#: ../build/NEWS:1291 msgid "" "`bpo-43577 `__: Fix deadlock when using :" "class:`ssl.SSLContext` debug callback with :meth:`ssl.SSLContext." "sni_callback`." msgstr "" -#: ../build/NEWS:1259 +#: ../build/NEWS:1294 msgid "" "`bpo-43571 `__: It's now possible to " "create MPTCP sockets with IPPROTO_MPTCP" msgstr "" -#: ../build/NEWS:1261 +#: ../build/NEWS:1296 msgid "" "`bpo-43542 `__: ``image/heic`` and " "``image/heif`` were added to :mod:`mimetypes`." msgstr "" -#: ../build/NEWS:1264 +#: ../build/NEWS:1299 msgid "" "`bpo-40645 `__: The :mod:`hmac` module " "now uses OpenSSL's HMAC implementation when digestmod argument is a hash " "name or builtin hash function." msgstr "" -#: ../build/NEWS:1267 +#: ../build/NEWS:1302 msgid "" "`bpo-43510 `__: Implement :pep:`597`: " "Add ``EncodingWarning`` warning, ``-X warn_default_encoding`` option, :" @@ -2566,13 +2520,13 @@ msgid "" "\"locale\"`` argument value." msgstr "" -#: ../build/NEWS:1271 +#: ../build/NEWS:1306 msgid "" "`bpo-43521 `__: ``ast.unparse`` can now " "render NaNs and empty sets." msgstr "" -#: ../build/NEWS:1273 +#: ../build/NEWS:1308 msgid "" "`bpo-42914 `__: :func:`pprint.pprint` " "gains a new boolean ``underscore_numbers`` optional argument to emit " @@ -2580,72 +2534,72 @@ msgid "" "readability (for example ``1_000_000`` instead of ``1000000``)." msgstr "" -#: ../build/NEWS:1278 +#: ../build/NEWS:1313 msgid "" "`bpo-41361 `__: :meth:`~collections." "deque.rotate` calls are now slightly faster due to faster argument parsing." msgstr "" -#: ../build/NEWS:1281 +#: ../build/NEWS:1316 msgid "" "`bpo-43423 `__: :func:`subprocess." "communicate` no longer raises an IndexError when there is an empty stdout or " "stderr IO buffer during a timeout on Windows." msgstr "" -#: ../build/NEWS:1285 +#: ../build/NEWS:1320 msgid "" "`bpo-27820 `__: Fixed long-standing bug " "of smtplib.SMTP where doing AUTH LOGIN with initial_response_ok=False will " "fail." msgstr "" -#: ../build/NEWS:1288 +#: ../build/NEWS:1323 msgid "" "The cause is that SMTP.auth_login _always_ returns a password if provided " "with a challenge string, thus non-compliant with the standard for AUTH LOGIN." msgstr "" -#: ../build/NEWS:1292 +#: ../build/NEWS:1327 msgid "Also fixes bug with the test for smtpd." msgstr "" -#: ../build/NEWS:1294 +#: ../build/NEWS:1329 msgid "" "`bpo-43445 `__: Add frozen modules to :" "data:`sys.stdlib_module_names`. For example, add ``\"_frozen_importlib\"`` " "and ``\"_frozen_importlib_external\"`` names." msgstr "" -#: ../build/NEWS:1298 +#: ../build/NEWS:1333 msgid "" "`bpo-43245 `__: Add keyword arguments " "support to ``ChainMap.new_child()``." msgstr "" -#: ../build/NEWS:1300 +#: ../build/NEWS:1335 msgid "" "`bpo-29982 `__: Add optional parameter " "*ignore_cleanup_errors* to :func:`tempfile.TemporaryDirectory` and allow " "multiple :func:`cleanup` attempts. Contributed by C.A.M. Gerlach." msgstr "" -#: ../build/NEWS:1304 +#: ../build/NEWS:1339 msgid "" "`bpo-43428 `__: Include changes from " "`importlib_metadata 3.7 `_:" msgstr "" -#: ../build/NEWS:1307 +#: ../build/NEWS:1342 msgid "Performance enhancements to distribution discovery." msgstr "" -#: ../build/NEWS:1309 +#: ../build/NEWS:1344 msgid "``entry_points`` only returns unique distributions." msgstr "" -#: ../build/NEWS:1311 +#: ../build/NEWS:1346 msgid "" "Introduces new ``EntryPoints`` object for containing a set of entry points " "with convenience methods for selecting entry points by group or name. " @@ -2655,13 +2609,13 @@ msgid "" "likely to be deprecated in the future." msgstr "" -#: ../build/NEWS:1318 +#: ../build/NEWS:1353 msgid "" "Added packages_distributions function to return a mapping of packages to the " "distributions that provide them." msgstr "" -#: ../build/NEWS:1321 +#: ../build/NEWS:1356 msgid "" "`bpo-43332 `__: Improves the networking " "efficiency of :mod:`http.client` when using a proxy via :meth:" @@ -2669,26 +2623,26 @@ msgid "" "connection setup." msgstr "" -#: ../build/NEWS:1325 +#: ../build/NEWS:1360 msgid "" "`bpo-43420 `__: Improve performance of :" "class:`fractions.Fraction` arithmetics for large components. Contributed by " "Sergey B. Kirpichev." msgstr "" -#: ../build/NEWS:1328 +#: ../build/NEWS:1363 msgid "" "`bpo-43356 `__: Allow passing a signal " "number to ``_thread.interrupt_main()``." msgstr "" -#: ../build/NEWS:1330 +#: ../build/NEWS:1365 msgid "" "`bpo-43399 `__: Fix ``ElementTree." "extend`` not working on iterators when using the Python implementation" msgstr "" -#: ../build/NEWS:1333 +#: ../build/NEWS:1368 msgid "" "`bpo-43369 `__: Improve :mod:`sqlite3` " "error handling: If ``sqlite3_column_text()`` and ``sqlite3_column_blob()`` " @@ -2696,20 +2650,20 @@ msgid "" "Aasland." msgstr "" -#: ../build/NEWS:1338 +#: ../build/NEWS:1373 msgid "" "`bpo-43368 `__: Fix a regression " "introduced in GH-24562, where an empty bytestring was fetched as ``None`` " "instead of ``b''`` in :mod:`sqlite3`. Patch by Mariusz Felisiak." msgstr "" -#: ../build/NEWS:1342 +#: ../build/NEWS:1377 msgid "" "`bpo-41282 `__: Fixed stacklevel of " "``DeprecationWarning`` emitted from ``import distutils``." msgstr "" -#: ../build/NEWS:1345 +#: ../build/NEWS:1380 msgid "" "`bpo-42129 `__: ``importlib.resources`` " "now honors namespace packages, merging resources from each location in the " @@ -2717,46 +2671,46 @@ msgid "" "incidental changes through 5.0.3." msgstr "" -#: ../build/NEWS:1350 +#: ../build/NEWS:1385 msgid "" "`bpo-43295 `__: :meth:`datetime.datetime." "strptime` now raises ``ValueError`` instead of ``IndexError`` when matching " "``'z'`` with the ``%z`` format specifier." msgstr "" -#: ../build/NEWS:1354 +#: ../build/NEWS:1389 msgid "" "`bpo-43125 `__: Return empty string if " "base64mime.body_encode receive empty bytes" msgstr "" -#: ../build/NEWS:1357 +#: ../build/NEWS:1392 msgid "" "`bpo-43084 `__: :func:`curses.window." "enclose` returns now ``True`` or ``False`` (as was documented) instead of " "``1`` or ``0``." msgstr "" -#: ../build/NEWS:1360 +#: ../build/NEWS:1395 msgid "" "`bpo-42994 `__: Add MIME types for opus, " "AAC, 3gpp and 3gpp2" msgstr "" -#: ../build/NEWS:1362 +#: ../build/NEWS:1397 msgid "" "`bpo-14678 `__: Add an " "invalidate_caches() method to the zipimport.zipimporter class to support " "importlib.invalidate_caches(). Patch by Desmond Cheong." msgstr "" -#: ../build/NEWS:1365 +#: ../build/NEWS:1400 msgid "" "`bpo-42782 `__: Fail fast in :func:" "`shutil.move()` to avoid creating destination directories on failure." msgstr "" -#: ../build/NEWS:1368 +#: ../build/NEWS:1403 msgid "" "`bpo-40066 `__: Enum's `repr()` and " "`str()` have changed: `repr()` is now *EnumClass.MemberName* and `str()` is " @@ -2765,21 +2719,21 @@ msgid "" "*module.name*, e.g. `re.IGNORECASE`." msgstr "" -#: ../build/NEWS:1374 +#: ../build/NEWS:1409 msgid "" "`bpo-26053 `__: Fixed bug where the :mod:" "`pdb` interactive run command echoed the args from the shell command line, " "even if those have been overridden at the pdb prompt." msgstr "" -#: ../build/NEWS:1378 +#: ../build/NEWS:1413 msgid "" "`bpo-24160 `__: Fixed bug where " "breakpoints did not persist across multiple debugger sessions in :mod:" "`pdb`'s interactive mode." msgstr "" -#: ../build/NEWS:1381 +#: ../build/NEWS:1416 msgid "" "`bpo-40701 `__: When the :data:`tempfile." "tempdir` global variable is set to a value of type bytes, it is now handled " @@ -2789,7 +2743,7 @@ msgid "" "functions *always* return ``str`` and ``bytes`` respectively." msgstr "" -#: ../build/NEWS:1388 +#: ../build/NEWS:1423 msgid "" "`bpo-39342 `__: Expose " "``X509_V_FLAG_ALLOW_PROXY_CERTS`` as :data:`~ssl.VERIFY_ALLOW_PROXY_CERTS` " @@ -2797,20 +2751,20 @@ msgid "" "org/docs/man1.1.1/man7/proxy-certificates.html." msgstr "" -#: ../build/NEWS:1393 +#: ../build/NEWS:1428 msgid "" "`bpo-31861 `__: Add builtins.aiter and " "builtins.anext. Patch by Joshua Bronson (@jab), Daniel Pope (@lordmauve), " "and Justin Wang (@justin39)." msgstr "" -#: ../build/NEWS:1399 +#: ../build/NEWS:1434 msgid "" "`bpo-43199 `__: Answer \"Why is there no " "goto?\" in the Design and History FAQ." msgstr "" -#: ../build/NEWS:1401 +#: ../build/NEWS:1436 msgid "" "`bpo-43407 `__: Clarified that a result " "from :func:`time.monotonic`, :func:`time.perf_counter`, :func:`time." @@ -2819,58 +2773,58 @@ msgid "" "call." msgstr "" -#: ../build/NEWS:1406 +#: ../build/NEWS:1441 msgid "" "`bpo-43354 `__: Fix type documentation " "for ``Fault.faultCode``; the type has to be ``int`` instead of ``str``." msgstr "" -#: ../build/NEWS:1409 +#: ../build/NEWS:1444 msgid "" "`bpo-41933 `__: Clarified wording of s * " "n in the Common Sequence Operations" msgstr "" -#: ../build/NEWS:1414 +#: ../build/NEWS:1449 msgid "" "`bpo-37945 `__: Fix " "test_getsetlocale_issue1813() of test_locale: skip the test if " "``setlocale()`` fails. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1417 +#: ../build/NEWS:1452 msgid "" "`bpo-41561 `__: Add workaround for " "Ubuntu's custom OpenSSL security level policy." msgstr "" -#: ../build/NEWS:1423 +#: ../build/NEWS:1458 msgid "" "`bpo-43179 `__: Introduce and correctly " "use ALIGNOF_X in place of SIZEOF_X for alignment-related code in optimized " "string routines. Patch by Jessica Clarke." msgstr "" -#: ../build/NEWS:1427 +#: ../build/NEWS:1462 msgid "" "`bpo-43631 `__: Update macOS, Windows, " "and CI to OpenSSL 1.1.1k." msgstr "" -#: ../build/NEWS:1429 +#: ../build/NEWS:1464 msgid "" "`bpo-43617 `__: Improve configure.ac: " "Check for presence of autoconf-archive package and remove our copies of M4 " "macros." msgstr "" -#: ../build/NEWS:1432 +#: ../build/NEWS:1467 msgid "" "`bpo-43466 `__: The ``configure`` script " "now supports ``--with-openssl-rpath`` option." msgstr "" -#: ../build/NEWS:1435 +#: ../build/NEWS:1470 msgid "" "`bpo-43372 `__: Use " "``_freeze_importlib`` to generate code for the ``__hello__`` module. This " @@ -2881,20 +2835,20 @@ msgid "" "code sizes in ctypes test_frozentable." msgstr "" -#: ../build/NEWS:1445 +#: ../build/NEWS:1480 msgid "" "`bpo-43440 `__: Build :mod:`sqlite3` " "with the ``R*Tree`` module enabled. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1451 +#: ../build/NEWS:1486 msgid "" "`bpo-42225 `__: Document that IDLE can " "fail on Unix either from misconfigured IP masquerage rules or failure " "displaying complex colored (non-ascii) characters." msgstr "" -#: ../build/NEWS:1458 +#: ../build/NEWS:1493 msgid "" "`bpo-43688 `__: The limited C API is now " "supported if Python is built in debug mode (if the ``Py_DEBUG`` macro is " @@ -2907,98 +2861,98 @@ msgid "" "mode since Python 3.8 (see :issue:`36465`)." msgstr "" -#: ../build/NEWS:1468 +#: ../build/NEWS:1503 msgid "" "The limited C API is still not supported in the ``--with-trace-refs`` " "special build (``Py_TRACE_REFS`` macro)." msgstr "" -#: ../build/NEWS:1471 ../build/NEWS:1527 +#: ../build/NEWS:1506 ../build/NEWS:1562 msgid "Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1473 +#: ../build/NEWS:1508 msgid "" "`bpo-43244 `__: Remove the ``pyarena.h`` " "header file with functions:" msgstr "" -#: ../build/NEWS:1475 +#: ../build/NEWS:1510 msgid "``PyArena_New()``" msgstr "" -#: ../build/NEWS:1476 +#: ../build/NEWS:1511 msgid "``PyArena_Free()``" msgstr "" -#: ../build/NEWS:1477 +#: ../build/NEWS:1512 msgid "``PyArena_Malloc()``" msgstr "" -#: ../build/NEWS:1478 +#: ../build/NEWS:1513 msgid "``PyArena_AddPyObject()``" msgstr "" -#: ../build/NEWS:1480 +#: ../build/NEWS:1515 msgid "" "These functions were undocumented, excluded from the limited C API, and were " "only used internally by the compiler. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1483 +#: ../build/NEWS:1518 msgid "" "`bpo-43244 `__: Remove the compiler and " "parser functions using ``struct _mod`` type, because the public AST C API " "was removed:" msgstr "" -#: ../build/NEWS:1486 +#: ../build/NEWS:1521 msgid "``PyAST_Compile()``" msgstr "" -#: ../build/NEWS:1487 +#: ../build/NEWS:1522 msgid "``PyAST_CompileEx()``" msgstr "" -#: ../build/NEWS:1488 +#: ../build/NEWS:1523 msgid "``PyAST_CompileObject()``" msgstr "" -#: ../build/NEWS:1489 +#: ../build/NEWS:1524 msgid "``PyFuture_FromAST()``" msgstr "" -#: ../build/NEWS:1490 +#: ../build/NEWS:1525 msgid "``PyFuture_FromASTObject()``" msgstr "" -#: ../build/NEWS:1491 +#: ../build/NEWS:1526 msgid "``PyParser_ASTFromFile()``" msgstr "" -#: ../build/NEWS:1492 +#: ../build/NEWS:1527 msgid "``PyParser_ASTFromFileObject()``" msgstr "" -#: ../build/NEWS:1493 +#: ../build/NEWS:1528 msgid "``PyParser_ASTFromFilename()``" msgstr "" -#: ../build/NEWS:1494 +#: ../build/NEWS:1529 msgid "``PyParser_ASTFromString()``" msgstr "" -#: ../build/NEWS:1495 +#: ../build/NEWS:1530 msgid "``PyParser_ASTFromStringObject()``" msgstr "" -#: ../build/NEWS:1497 +#: ../build/NEWS:1532 msgid "" "These functions were undocumented and excluded from the limited C API. Patch " "by Victor Stinner." msgstr "" -#: ../build/NEWS:1500 +#: ../build/NEWS:1535 msgid "" "`bpo-43244 `__: Remove ``ast.h``, ``asdl." "h``, and ``Python-ast.h`` header files. These functions were undocumented " @@ -3009,55 +2963,55 @@ msgid "" "Python :mod:`ast` module instead. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1508 +#: ../build/NEWS:1543 msgid "" "`bpo-43541 `__: Fix a " "``PyEval_EvalCodeEx()`` regression: fix reference counting on builtins. " "Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1511 +#: ../build/NEWS:1546 msgid "" "`bpo-43244 `__: Remove the ``symtable." "h`` header file and the undocumented functions:" msgstr "" -#: ../build/NEWS:1514 +#: ../build/NEWS:1549 msgid "``PyST_GetScope()``" msgstr "" -#: ../build/NEWS:1515 +#: ../build/NEWS:1550 msgid "``PySymtable_Build()``" msgstr "" -#: ../build/NEWS:1516 +#: ../build/NEWS:1551 msgid "``PySymtable_BuildObject()``" msgstr "" -#: ../build/NEWS:1517 +#: ../build/NEWS:1552 msgid "``PySymtable_Free()``" msgstr "" -#: ../build/NEWS:1518 +#: ../build/NEWS:1553 msgid "``Py_SymtableString()``" msgstr "" -#: ../build/NEWS:1519 +#: ../build/NEWS:1554 msgid "``Py_SymtableStringObject()``" msgstr "" -#: ../build/NEWS:1521 +#: ../build/NEWS:1556 msgid "" "The ``Py_SymtableString()`` function was part the stable ABI by mistake but " "it could not be used, because the ``symtable.h`` header file was excluded " "from the limited C API." msgstr "" -#: ../build/NEWS:1525 +#: ../build/NEWS:1560 msgid "The Python :mod:`symtable` module remains available and is unchanged." msgstr "" -#: ../build/NEWS:1529 +#: ../build/NEWS:1564 msgid "" "`bpo-43244 `__: Remove the " "``PyAST_Validate()`` function. It is no longer possible to build a AST " @@ -3065,36 +3019,36 @@ msgid "" "excluded from the limited C API (:pep:`384`). Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1536 +#: ../build/NEWS:1571 msgid "Python 3.10.0 alpha 6" msgstr "" -#: ../build/NEWS:1538 +#: ../build/NEWS:1573 msgid "*Release date: 2021-03-01*" msgstr "" -#: ../build/NEWS:1543 +#: ../build/NEWS:1578 msgid "" "`bpo-42967 `__: Fix web cache poisoning " "vulnerability by defaulting the query args separator to ``&``, and allowing " "the user to choose a custom separator." msgstr "" -#: ../build/NEWS:1550 +#: ../build/NEWS:1585 msgid "" "`bpo-43321 `__: Fix ``SystemError`` " "raised when ``PyArg_Parse*()`` is used with ``#`` but without " "``PY_SSIZE_T_CLEAN`` defined." msgstr "" -#: ../build/NEWS:1553 +#: ../build/NEWS:1588 msgid "" "`bpo-36346 `__: ``PyArg_Parse*()`` " "functions now emits ``DeprecationWarning`` when ``u`` or ``Z`` format is " "used. See :pep:`623` for detail." msgstr "" -#: ../build/NEWS:1556 +#: ../build/NEWS:1591 msgid "" "`bpo-43277 `__: Add a new :c:func:" "`PySet_CheckExact` function to the C-API to check if an object is an " @@ -3102,7 +3056,7 @@ msgid "" "Galindo." msgstr "" -#: ../build/NEWS:1560 +#: ../build/NEWS:1595 msgid "" "`bpo-42990 `__: The :data:`types." "FunctionType` constructor now inherits the current builtins if the *globals* " @@ -3113,7 +3067,7 @@ msgid "" "the current builtins. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1568 +#: ../build/NEWS:1603 msgid "" "`bpo-42990 `__: Functions have a new " "``__builtins__`` attribute which is used to look for builtin symbols when a " @@ -3121,20 +3075,20 @@ msgid "" "``__globals__['__builtins__']``. Patch by Mark Shannon and Victor Stinner." msgstr "" -#: ../build/NEWS:1573 +#: ../build/NEWS:1608 msgid "" "`bpo-43149 `__: Improve the error " "message in the parser for exception groups without parentheses. Patch by " "Pablo Galindo." msgstr "" -#: ../build/NEWS:1576 +#: ../build/NEWS:1611 msgid "" "`bpo-43121 `__: Fixed an incorrect :exc:" "`SyntaxError` message for missing comma in literals. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:1579 +#: ../build/NEWS:1614 msgid "" "`bpo-42819 `__: :mod:`readline`: " "Explicitly disable bracketed paste in the interactive interpreter, even if " @@ -3147,21 +3101,21 @@ msgid "" "Patch by Dustin Rodrigues." msgstr "" -#: ../build/NEWS:1589 +#: ../build/NEWS:1624 msgid "" "`bpo-42808 `__: Simple calls to " "``type(object)`` are now faster due to the ``vectorcall`` calling " "convention. Patch by Dennis Sweeney." msgstr "" -#: ../build/NEWS:1592 +#: ../build/NEWS:1627 msgid "" "`bpo-42217 `__: Make the compiler merges " "same co_code and co_linetable objects in a module like already did for " "co_consts." msgstr "" -#: ../build/NEWS:1595 +#: ../build/NEWS:1630 msgid "" "`bpo-41972 `__: Substring search " "functions such as ``str1 in str2`` and ``str2.find(str1)`` now sometimes use " @@ -3169,13 +3123,13 @@ msgid "" "long strings." msgstr "" -#: ../build/NEWS:1599 +#: ../build/NEWS:1634 msgid "" "`bpo-42128 `__: Implement :pep:`634` " "(structural pattern matching). Patch by Brandt Bucher." msgstr "" -#: ../build/NEWS:1602 +#: ../build/NEWS:1637 msgid "" "`bpo-40692 `__: In the :class:" "`concurrent.futures.ProcessPoolExecutor`, validate that :func:`multiprocess." @@ -3184,14 +3138,14 @@ msgid "" "to :class:`ProcessPoolExecutor` on those platforms." msgstr "" -#: ../build/NEWS:1608 +#: ../build/NEWS:1643 msgid "" "`bpo-38302 `__: If :func:`object." "__ipow__` returns :const:`NotImplemented`, the operator will correctly fall " "back to :func:`object.__pow__` and :func:`object.__rpow__` as expected." msgstr "" -#: ../build/NEWS:1615 +#: ../build/NEWS:1650 msgid "" "`bpo-43316 `__: The ``python -m gzip`` " "command line application now properly fails when detecting an unsupported " @@ -3199,48 +3153,48 @@ msgid "" "stderr." msgstr "" -#: ../build/NEWS:1619 +#: ../build/NEWS:1654 msgid "" "`bpo-43317 `__: Set the chunk size for " "the ``gzip`` module main function to io.DEFAULT_BUFFER_SIZE. This is " "slightly faster than the 1024 bytes constant that was used previously." msgstr "" -#: ../build/NEWS:1623 +#: ../build/NEWS:1658 msgid "" "`bpo-43146 `__: Handle None in single-" "arg versions of :func:`~traceback.print_exception` and :func:`~traceback." "format_exception`." msgstr "" -#: ../build/NEWS:1627 +#: ../build/NEWS:1662 msgid "" "`bpo-43260 `__: Fix TextIOWrapper can " "not flush internal buffer forever after very large text is written." msgstr "" -#: ../build/NEWS:1630 +#: ../build/NEWS:1665 msgid "" "`bpo-43258 `__: Prevent needless " "allocation of :mod:`sqlite3` aggregate function context when no rows match " "an aggregate query. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1634 +#: ../build/NEWS:1669 msgid "" "`bpo-43251 `__: Improve :mod:`sqlite3` " "error handling: ``sqlite3_column_name()`` failures now result in :exc:" "`MemoryError`. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1638 +#: ../build/NEWS:1673 msgid "" "`bpo-40956 `__: Fix segfault in :meth:" "`sqlite3.Connection.backup` if no argument was provided. The regression was " "introduced by GH-23838. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1642 +#: ../build/NEWS:1677 msgid "" "`bpo-43172 `__: The readline module now " "passes its tests when built directly against libedit. Existing " @@ -3248,46 +3202,46 @@ msgid "" "func:`readline.get_endidx` behavior based on libreadline vs libedit use." msgstr "" -#: ../build/NEWS:1647 +#: ../build/NEWS:1682 msgid "" "`bpo-43163 `__: Fix a bug in :mod:" "`codeop` that was causing it to not ask for more input when multi-line " "snippets have unclosed parentheses. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:1651 +#: ../build/NEWS:1686 msgid "" "`bpo-43162 `__: deprecate unsupported " "ability to access enum members as attributes of other enum members" msgstr "" -#: ../build/NEWS:1654 +#: ../build/NEWS:1689 msgid "" "`bpo-43146 `__: Fix recent regression in " "None argument handling in :mod:`~traceback` module functions." msgstr "" -#: ../build/NEWS:1657 +#: ../build/NEWS:1692 msgid "" "`bpo-43102 `__: The namedtuple __new__ " "method had its __builtins__ set to None instead of an actual dictionary. " "This created problems for introspection tools." msgstr "" -#: ../build/NEWS:1661 +#: ../build/NEWS:1696 msgid "" "`bpo-43106 `__: Added :data:`~os." "O_EVTONLY`, :data:`~os.O_FSYNC`, :data:`~os.O_SYMLINK` and :data:`~os." "O_NOFOLLOW_ANY` for macOS. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:1665 +#: ../build/NEWS:1700 msgid "" "`bpo-42960 `__: Adds :data:`resource." "RLIMIT_KQUEUES` constant from FreeBSD to the :mod:`resource` module." msgstr "" -#: ../build/NEWS:1668 +#: ../build/NEWS:1703 msgid "" "`bpo-42151 `__: Make the pure Python " "implementation of :mod:`xml.etree.ElementTree` behave the same as the C " @@ -3295,60 +3249,60 @@ msgid "" "not setting ``specified_attributes=1``)." msgstr "" -#: ../build/NEWS:1673 +#: ../build/NEWS:1708 msgid "" "`bpo-29753 `__: In ctypes, now packed " "bitfields are calculated properly and the first item of packed bitfields is " "now shrank correctly." msgstr "" -#: ../build/NEWS:1679 +#: ../build/NEWS:1714 msgid "" "`bpo-27646 `__: Clarify that 'yield from " "' works with any iterable, not just iterators." msgstr "" -#: ../build/NEWS:1682 +#: ../build/NEWS:1717 msgid "" "`bpo-36346 `__: Update some deprecated " "unicode APIs which are documented as \"will be removed in 4.0\" to \"3.12\". " "See :pep:`623` for detail." msgstr "" -#: ../build/NEWS:1688 +#: ../build/NEWS:1723 msgid "" "`bpo-43288 `__: Fix test_importlib to " "correctly skip Unicode file tests if the fileystem does not support them." msgstr "" -#: ../build/NEWS:1694 +#: ../build/NEWS:1729 msgid "" "`bpo-43174 `__: Windows build now uses " "``/utf-8`` compiler option." msgstr "" -#: ../build/NEWS:1696 +#: ../build/NEWS:1731 msgid "" "`bpo-43103 `__: Add a new configure ``--" "without-static-libpython`` option to not build the ``libpythonMAJOR.MINOR." "a`` static library and not install the ``python.o`` object file." msgstr "" -#: ../build/NEWS:1700 +#: ../build/NEWS:1735 msgid "" "`bpo-13501 `__: The configure script can " "now use *libedit* instead of *readline* with the command line option ``--" "with-readline=editline``." msgstr "" -#: ../build/NEWS:1703 +#: ../build/NEWS:1738 msgid "" "`bpo-42603 `__: Make configure script " "use pkg-config to detect the location of Tcl/Tk headers and libraries, used " "to build tkinter." msgstr "" -#: ../build/NEWS:1706 +#: ../build/NEWS:1741 msgid "" "On macOS, a Tcl/Tk configuration provided by pkg-config will be preferred " "over Tcl/Tk frameworks installed in ``/{System/,}Library/Frameworks``. If " @@ -3356,46 +3310,46 @@ msgid "" "configuration options need to be explicitly set." msgstr "" -#: ../build/NEWS:1711 +#: ../build/NEWS:1746 msgid "" "`bpo-39448 `__: Add the \"regen-frozen\" " "makefile target that regenerates the code for the frozen ``__hello__`` " "module." msgstr "" -#: ../build/NEWS:1717 +#: ../build/NEWS:1752 msgid "" "`bpo-43155 `__: :c:func:`PyCMethod_New` " "is now present in ``python3.lib``." msgstr "" -#: ../build/NEWS:1722 +#: ../build/NEWS:1757 msgid "" "`bpo-41837 `__: Update macOS installer " "build to use OpenSSL 1.1.1j." msgstr "" -#: ../build/NEWS:1727 +#: ../build/NEWS:1762 msgid "" "`bpo-43283 `__: Document why printing to " "IDLE's Shell is often slower than printing to a system terminal and that it " "can be made faster by pre-formatting a single string before printing." msgstr "" -#: ../build/NEWS:1734 +#: ../build/NEWS:1769 msgid "" "`bpo-43278 `__: Always put compiler and " "system information on the first line of the REPL welcome message." msgstr "" -#: ../build/NEWS:1737 +#: ../build/NEWS:1772 msgid "" "`bpo-43270 `__: Remove the private " "``_PyErr_OCCURRED()`` macro: use the public :c:func:`PyErr_Occurred` " "function instead." msgstr "" -#: ../build/NEWS:1740 +#: ../build/NEWS:1775 msgid "" "`bpo-35134 `__: Move odictobject.h, " "parser_interface.h, picklebufobject.h, pydebug.h, and pyfpe.h into the " @@ -3403,7 +3357,7 @@ msgid "" "included by Python.h: :ref:`Include Files `." msgstr "" -#: ../build/NEWS:1745 +#: ../build/NEWS:1780 msgid "" "`bpo-35134 `__: Move pyarena.h, pyctype." "h, and pytime.h into the cpython/ directory. They must not be included " @@ -3411,7 +3365,7 @@ msgid "" "includes>`." msgstr "" -#: ../build/NEWS:1749 +#: ../build/NEWS:1784 msgid "" "`bpo-40170 `__: :c:func:" "`PyExceptionClass_Name` is now always declared as a function, in order to " @@ -3419,14 +3373,14 @@ msgid "" "tp_name` directly. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1753 +#: ../build/NEWS:1788 msgid "" "`bpo-43239 `__: The :c:func:" "`PyCFunction_New` function is now exported in the ABI when compiled with ``-" "fvisibility=hidden``." msgstr "" -#: ../build/NEWS:1756 +#: ../build/NEWS:1791 msgid "" "`bpo-40170 `__: :c:func:`PyIter_Check` " "is now always declared as a function, in order to hide implementation " @@ -3434,7 +3388,7 @@ msgid "" "Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1760 +#: ../build/NEWS:1795 msgid "" "`bpo-40170 `__: Convert :c:func:" "`PyDescr_IsData` macro to a function to hide implementation details: The " @@ -3442,97 +3396,97 @@ msgid "" "Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1765 +#: ../build/NEWS:1800 msgid "" "`bpo-43181 `__: Convert :c:func:" "`PyObject_TypeCheck` macro to a static inline function. Patch by Erlend E. " "Aasland." msgstr "" -#: ../build/NEWS:1770 +#: ../build/NEWS:1805 msgid "Python 3.10.0 alpha 5" msgstr "" -#: ../build/NEWS:1772 +#: ../build/NEWS:1807 msgid "*Release date: 2021-02-02*" msgstr "" -#: ../build/NEWS:1777 +#: ../build/NEWS:1812 msgid "" "`bpo-42938 `__: Avoid static buffers " "when computing the repr of :class:`ctypes.c_double` and :class:`ctypes." "c_longdouble` values." msgstr "" -#: ../build/NEWS:1783 +#: ../build/NEWS:1818 msgid "" "`bpo-42990 `__: Refactor the ``PyEval_`` " "family of functions." msgstr "" -#: ../build/NEWS:1785 +#: ../build/NEWS:1820 msgid "" "An new function ``_PyEval_Vector`` is added to simplify calls to Python from " "C." msgstr "" -#: ../build/NEWS:1786 +#: ../build/NEWS:1821 msgid "``_PyEval_EvalCodeWithName`` is removed" msgstr "" -#: ../build/NEWS:1787 +#: ../build/NEWS:1822 msgid "" "``PyEval_EvalCodeEx`` is retained as part of the API, but is not used " "internally" msgstr "" -#: ../build/NEWS:1789 +#: ../build/NEWS:1824 msgid "" "`bpo-38631 `__: Replace :c:func:" "`Py_FatalError` calls in the compiler with regular :exc:`SystemError` " "exceptions. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1792 +#: ../build/NEWS:1827 msgid "" "`bpo-42997 `__: Improve error message " "for missing \":\" before blocks. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:1795 +#: ../build/NEWS:1830 msgid "" "`bpo-43017 `__: Improve error message in " "the parser when using un-parenthesised tuples in comprehensions. Patch by " "Pablo Galindo." msgstr "" -#: ../build/NEWS:1798 +#: ../build/NEWS:1833 msgid "" "`bpo-42986 `__: Fix parser crash when " "reporting syntax errors in f-string with newlines. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:1801 +#: ../build/NEWS:1836 msgid "" "`bpo-40176 `__: Syntax errors for " "unterminated string literals now point to the start of the string instead of " "reporting EOF/EOL." msgstr "" -#: ../build/NEWS:1804 +#: ../build/NEWS:1839 msgid "" "`bpo-42927 `__: The inline cache for " "``LOAD_ATTR`` now also optimizes access to attributes defined by " "``__slots__``. This makes reading such attribute up to 30% faster." msgstr "" -#: ../build/NEWS:1808 +#: ../build/NEWS:1843 msgid "" "`bpo-42864 `__: Improve error messages " "in the parser when parentheses are not closed. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:1811 +#: ../build/NEWS:1846 msgid "" "`bpo-42924 `__: Fix ``bytearray`` " "repetition incorrectly copying data from the start of the buffer, even if " @@ -3540,7 +3494,7 @@ msgid "" "start of the ``bytearray`` to a shorter byte string)." msgstr "" -#: ../build/NEWS:1816 +#: ../build/NEWS:1851 msgid "" "`bpo-42882 `__: Fix the :c:func:" "`_PyUnicode_FromId` function (_Py_IDENTIFIER(var) API) when :c:func:" @@ -3548,95 +3502,95 @@ msgid "" "``_PyRuntime.unicode_ids.next_index`` value." msgstr "" -#: ../build/NEWS:1821 +#: ../build/NEWS:1856 msgid "" "`bpo-42827 `__: Fix a crash when working " "out the error line of a :exc:`SyntaxError` in some multi-line expressions." msgstr "" -#: ../build/NEWS:1824 +#: ../build/NEWS:1859 msgid "" "`bpo-42823 `__: frame.f_lineno is " "correct even if frame.f_trace is set to True" msgstr "" -#: ../build/NEWS:1826 +#: ../build/NEWS:1861 msgid "" "`bpo-37324 `__: Remove deprecated " "aliases to :ref:`collections-abstract-base-classes` from the :mod:" "`collections` module." msgstr "" -#: ../build/NEWS:1830 +#: ../build/NEWS:1865 msgid "" "`bpo-41994 `__: Fixed possible leak in " "``import`` when ``sys.modules`` is not a ``dict``." msgstr "" -#: ../build/NEWS:1833 +#: ../build/NEWS:1868 msgid "" "`bpo-27772 `__: In string formatting, " "preceding the *width* field by ``'0'`` no longer affects the default " "alignment for strings." msgstr "" -#: ../build/NEWS:1839 +#: ../build/NEWS:1874 msgid "" "`bpo-43108 `__: Fixed a reference leak " "in the :mod:`curses` module. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:1842 +#: ../build/NEWS:1877 msgid "" "`bpo-43077 `__: Update the bundled pip " "to 21.0.1 and setuptools to 52.0.0." msgstr "" -#: ../build/NEWS:1844 +#: ../build/NEWS:1879 msgid "" "`bpo-41282 `__: Deprecate ``distutils`` " "in documentation and add warning on import." msgstr "" -#: ../build/NEWS:1847 +#: ../build/NEWS:1882 msgid "" "`bpo-43014 `__: Improve performance of :" "mod:`tokenize` by 20-30%. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:1850 +#: ../build/NEWS:1885 msgid "" "`bpo-42323 `__: Fix :func:`math." "nextafter` for NaN on AIX." msgstr "" -#: ../build/NEWS:1852 +#: ../build/NEWS:1887 msgid "" "`bpo-42955 `__: Add :data:`sys." "stdlib_module_names`, containing the list of the standard library module " "names. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1855 +#: ../build/NEWS:1890 msgid "" "`bpo-42944 `__: Fix ``random.Random." "sample`` when ``counts`` argument is not ``None``." msgstr "" -#: ../build/NEWS:1858 +#: ../build/NEWS:1893 msgid "" "`bpo-42934 `__: Use :class:`~traceback." "TracebackException`'s new ``compact`` param in :class:`~unittest.TestResult` " "to reduce time and memory consumed by traceback formatting." msgstr "" -#: ../build/NEWS:1862 +#: ../build/NEWS:1897 msgid "" "`bpo-42931 `__: Add :func:`randbytes` to " "``random.__all__``." msgstr "" -#: ../build/NEWS:1864 +#: ../build/NEWS:1899 msgid "" "`bpo-38250 `__: [Enum] Flags consisting " "of a single bit are now considered canonical, and will be the only flags " @@ -3646,7 +3600,7 @@ msgid "" "members is in definition order." msgstr "" -#: ../build/NEWS:1871 +#: ../build/NEWS:1906 msgid "" "`bpo-42877 `__: Added the ``compact`` " "parameter to the constructor of :class:`traceback.TracebackException` to " @@ -3655,40 +3609,40 @@ msgid "" "format_exception_only`." msgstr "" -#: ../build/NEWS:1876 +#: ../build/NEWS:1911 msgid "" "`bpo-42923 `__: The :c:func:" "`Py_FatalError` function and the :mod:`faulthandler` module now dump the " "list of extension modules on a fatal error." msgstr "" -#: ../build/NEWS:1880 +#: ../build/NEWS:1915 msgid "" "`bpo-42848 `__: Removed recursion from :" "class:`~traceback.TracebackException` to allow it to handle long exception " "chains." msgstr "" -#: ../build/NEWS:1883 +#: ../build/NEWS:1918 msgid "" "`bpo-42901 `__: [Enum] move member " "creation from ``EnumMeta.__new__`` to ``_proto_member.__set_name__``, " "allowing members to be created and visible in ``__init_subclass__``." msgstr "" -#: ../build/NEWS:1887 +#: ../build/NEWS:1922 msgid "" "`bpo-42780 `__: Fix os.set_inheritable() " "for O_PATH file descriptors on Linux." msgstr "" -#: ../build/NEWS:1889 +#: ../build/NEWS:1924 msgid "" "`bpo-42866 `__: Fix a reference leak in " "the ``getcodec()`` function of CJK codecs. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1892 +#: ../build/NEWS:1927 msgid "" "`bpo-42846 `__: Convert the 6 CJK codec " "extension modules (_codecs_cn, _codecs_hk, _codecs_iso2022, _codecs_jp, " @@ -3696,39 +3650,39 @@ msgid "" "`489`). Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1896 +#: ../build/NEWS:1931 msgid "" "`bpo-42851 `__: remove __init_subclass__ " "support for Enum members" msgstr "" -#: ../build/NEWS:1898 +#: ../build/NEWS:1933 msgid "" "`bpo-42834 `__: Make internal caches of " "the ``_json`` module compatible with subinterpreters." msgstr "" -#: ../build/NEWS:1901 +#: ../build/NEWS:1936 msgid "" "`bpo-41748 `__: Fix HTMLParser parsing " "rules for element attributes containing commas with spaces. Patch by Karl " "Dubost." msgstr "" -#: ../build/NEWS:1904 +#: ../build/NEWS:1939 msgid "" "`bpo-40810 `__: Require SQLite 3.7.15 or " "newer. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1906 +#: ../build/NEWS:1941 msgid "" "`bpo-1635741 `__: Convert the " "_multibytecodec extension module (CJK codecs) to multi-phase initialization " "(:pep:`489`). Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1909 +#: ../build/NEWS:1944 msgid "" "`bpo-42802 `__: The distutils " "``bdist_wininst`` command deprecated in Python 3.8 has been removed. The " @@ -3736,7 +3690,7 @@ msgid "" "packages on Windows." msgstr "" -#: ../build/NEWS:1913 +#: ../build/NEWS:1948 msgid "" "`bpo-24464 `__: The undocumented built-" "in function ``sqlite3.enable_shared_cache`` is now deprecated, scheduled for " @@ -3744,39 +3698,39 @@ msgid "" "documentation. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1918 +#: ../build/NEWS:1953 msgid "" "`bpo-42384 `__: Make pdb populate sys." "path[0] exactly the same as regular python execution." msgstr "" -#: ../build/NEWS:1921 +#: ../build/NEWS:1956 msgid "" "`bpo-42383 `__: Fix pdb: previously pdb " "would fail to restart the debugging target if it was specified using a " "relative path and the current directory changed." msgstr "" -#: ../build/NEWS:1925 +#: ../build/NEWS:1960 msgid "" "`bpo-42005 `__: Fix CLI of :mod:" "`cProfile` and :mod:`profile` to catch :exc:`BrokenPipeError`." msgstr "" -#: ../build/NEWS:1928 +#: ../build/NEWS:1963 msgid "" "`bpo-41604 `__: Don't decrement the " "reference count of the previous user_ptr when set_panel_userptr fails." msgstr "" -#: ../build/NEWS:1931 +#: ../build/NEWS:1966 msgid "" "`bpo-41149 `__: Allow executing " "callables that have a boolean value of ``False`` when passed to :class:" "`Threading.thread` as the target. Patch contributed by Barney Stratford." msgstr "" -#: ../build/NEWS:1935 +#: ../build/NEWS:1970 msgid "" "`bpo-38307 `__: Add an 'end_lineno' " "attribute to the Class and Function objects that appear in the tree returned " @@ -3784,72 +3738,72 @@ msgid "" "extent of class and def statements. Patch by Aviral Srivastava." msgstr "" -#: ../build/NEWS:1940 +#: ../build/NEWS:1975 msgid "" "`bpo-39273 `__: The ``BUTTON5_*`` " "constants are now exposed in the :mod:`curses` module if available." msgstr "" -#: ../build/NEWS:1943 +#: ../build/NEWS:1978 msgid "" "`bpo-33289 `__: Correct call to :mod:" "`tkinter.colorchooser` to return RGB triplet of ints instead of floats. " "Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:1949 +#: ../build/NEWS:1984 msgid "" "`bpo-40304 `__: Fix doc for type(name, " "bases, dict). Patch by Boris Verkhovskiy and Éric Araujo." msgstr "" -#: ../build/NEWS:1952 +#: ../build/NEWS:1987 msgid "" "`bpo-42811 `__: Updated importlib.utils." "resolve_name() doc to use __spec__.parent instead of __package__. (Thanks " "Yair Frid.)" msgstr "" -#: ../build/NEWS:1958 +#: ../build/NEWS:1993 msgid "" "`bpo-40823 `__: Use :meth:`unittest." "TestLoader().loadTestsFromTestCase` instead of :meth:`unittest.makeSuite` " "in :mod:`sqlite3` tests. Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:1962 +#: ../build/NEWS:1997 msgid "" "`bpo-40810 `__: In :mod:`sqlite3`, fix " "``CheckTraceCallbackContent`` for SQLite pre 3.7.15." msgstr "" -#: ../build/NEWS:1968 +#: ../build/NEWS:2003 msgid "" "`bpo-43031 `__: Pass ``--timeout=" "$(TESTTIMEOUT)`` option to the default profile task ``./python -m test --" "pgo`` command." msgstr "" -#: ../build/NEWS:1971 +#: ../build/NEWS:2006 msgid "" "`bpo-36143 `__: ``make regen-all`` now " "also runs ``regen-keyword``. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:1974 +#: ../build/NEWS:2009 msgid "" "`bpo-42874 `__: Removed the grep -q and -" "E flags in the tzpath validation section of the configure script to better " "accomodate users of some platforms (specifically Solaris 10)." msgstr "" -#: ../build/NEWS:1978 +#: ../build/NEWS:2013 msgid "" "`bpo-31904 `__: Add library search path " "by wr-cc in add_cross_compiling_paths() for VxWorks." msgstr "" -#: ../build/NEWS:1981 +#: ../build/NEWS:2016 msgid "" "`bpo-42856 `__: Add ``--with-wheel-pkg-" "dir=PATH`` option to the ``./configure`` script. If specified, the :mod:" @@ -3858,7 +3812,7 @@ msgid "" "of ensurepip bundled wheel packages." msgstr "" -#: ../build/NEWS:1986 +#: ../build/NEWS:2021 msgid "" "Some Linux distribution packaging policies recommend against bundling " "dependencies. For example, Fedora installs wheel packages in the ``/usr/" @@ -3866,52 +3820,52 @@ msgid "" "_bundled`` package." msgstr "" -#: ../build/NEWS:1994 +#: ../build/NEWS:2029 msgid "" "`bpo-41837 `__: Updated Windows " "installer to include OpenSSL 1.1.1i" msgstr "" -#: ../build/NEWS:1996 +#: ../build/NEWS:2031 msgid "" "`bpo-42584 `__: Upgrade Windows " "installer to use SQLite 3.34.0." msgstr "" -#: ../build/NEWS:2001 +#: ../build/NEWS:2036 msgid "" "`bpo-42504 `__: Ensure that the value of " "sysconfig.get_config_var('MACOSX_DEPLOYMENT_TARGET') is always a string, " "even in when the value is parsable as an integer." msgstr "" -#: ../build/NEWS:2008 +#: ../build/NEWS:2043 msgid "" "`bpo-43008 `__: Make IDLE invoke :func:" "`sys.excepthook` in normal, 2-process mode. Patch by Ken Hilton." msgstr "" -#: ../build/NEWS:2011 +#: ../build/NEWS:2046 msgid "" "`bpo-33065 `__: Fix problem debugging " "user classes with __repr__ method." msgstr "" -#: ../build/NEWS:2013 +#: ../build/NEWS:2048 msgid "" "`bpo-23544 `__: Disable Debug=>Stack " "Viewer when user code is running or Debugger is active, to prevent hang or " "crash. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:2016 +#: ../build/NEWS:2051 msgid "" "`bpo-32631 `__: Finish zzdummy example " "extension module: make menu entries work; add docstrings and tests with 100% " "coverage." msgstr "" -#: ../build/NEWS:2022 +#: ../build/NEWS:2057 msgid "" "`bpo-42979 `__: When Python is built in " "debug mode (with C assertions), calling a type slot like ``sq_length`` " @@ -3921,100 +3875,100 @@ msgid "" "is set). Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2028 +#: ../build/NEWS:2063 msgid "" "`bpo-43030 `__: Fixed a compiler warning " "in :c:func:`Py_UNICODE_ISSPACE()` on platforms with signed ``wchar_t``." msgstr "" -#: ../build/NEWS:2033 +#: ../build/NEWS:2068 msgid "Python 3.10.0 alpha 4" msgstr "" -#: ../build/NEWS:2035 +#: ../build/NEWS:2070 msgid "*Release date: 2021-01-04*" msgstr "" -#: ../build/NEWS:2040 +#: ../build/NEWS:2075 msgid "" "`bpo-42814 `__: Fix undefined behavior " "in ``Objects/genericaliasobject.c``." msgstr "" -#: ../build/NEWS:2042 +#: ../build/NEWS:2077 msgid "" "`bpo-42806 `__: Fix the column offsets " "for f-strings :mod:`ast` nodes surrounded by parentheses and for nodes that " "spawn multiple lines. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:2046 +#: ../build/NEWS:2081 msgid "" "`bpo-40631 `__: Fix regression where a " "single parenthesized starred expression was a valid assignment target." msgstr "" -#: ../build/NEWS:2049 +#: ../build/NEWS:2084 msgid "" "`bpo-27794 `__: Improve the error " "message for failed writes/deletes to property objects. When possible, the " "attribute name is now shown. Patch provided by Yurii Karabas." msgstr "" -#: ../build/NEWS:2053 +#: ../build/NEWS:2088 msgid "" "`bpo-42745 `__: Make the type attribute " "lookup cache per-interpreter. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2056 +#: ../build/NEWS:2091 msgid "" "`bpo-42246 `__: Jumps to jumps are not " "eliminated when it would break PEP 626." msgstr "" -#: ../build/NEWS:2058 +#: ../build/NEWS:2093 msgid "" "`bpo-42246 `__: Make sure that the " "``f_lasti`` and ``f_lineno`` attributes of a frame are set correctly when an " "exception is raised or re-raised. Required for PEP 626." msgstr "" -#: ../build/NEWS:2062 +#: ../build/NEWS:2097 msgid "" "`bpo-32381 `__: The coding cookie (ex: " "``# coding: latin1``) is now ignored in the command passed to the :option:`-" "c` command line option. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2066 +#: ../build/NEWS:2101 msgid "" "`bpo-30858 `__: Improve error location " "in expressions that contain assignments. Patch by Pablo Galindo and " "Lysandros Nikolaou." msgstr "" -#: ../build/NEWS:2069 +#: ../build/NEWS:2104 msgid "" "`bpo-42615 `__: Remove jump commands " "made redundant by the deletion of unreachable bytecode blocks" msgstr "" -#: ../build/NEWS:2072 +#: ../build/NEWS:2107 msgid "" "`bpo-42639 `__: Make the :mod:`atexit` " "module state per-interpreter. It is now safe have more than one :mod:" "`atexit` module instance. Patch by Dong-hee Na and Victor Stinner." msgstr "" -#: ../build/NEWS:2076 +#: ../build/NEWS:2111 msgid "" "`bpo-32381 `__: Fix encoding name when " "running a ``.pyc`` file on Windows: :c:func:`PyRun_SimpleFileExFlags()` now " "uses the correct encoding to decode the filename." msgstr "" -#: ../build/NEWS:2080 +#: ../build/NEWS:2115 msgid "" "`bpo-42195 `__: The ``__args__`` of the " "parameterized generics for :data:`typing.Callable` and :class:`collections." @@ -4029,38 +3983,38 @@ msgid "" "`612`. Patch by Ken Jin." msgstr "" -#: ../build/NEWS:2092 +#: ../build/NEWS:2127 msgid "" "`bpo-40137 `__: Convert functools module " "to use :c:func:`PyType_FromModuleAndSpec`." msgstr "" -#: ../build/NEWS:2095 +#: ../build/NEWS:2130 msgid "" "`bpo-40077 `__: Convert :mod:`array` to " "use heap types, and establish module state for these." msgstr "" -#: ../build/NEWS:2098 +#: ../build/NEWS:2133 msgid "" "`bpo-42008 `__: Fix _random.Random() " "seeding." msgstr "" -#: ../build/NEWS:2100 +#: ../build/NEWS:2135 msgid "" "`bpo-1635741 `__: Port the :mod:" "`pyexpat` extension module to multi-phase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:2103 +#: ../build/NEWS:2138 msgid "" "`bpo-40521 `__: Make the Unicode " "dictionary of interned strings compatible with subinterpreters. Patch by " "Victor Stinner." msgstr "" -#: ../build/NEWS:2106 +#: ../build/NEWS:2141 msgid "" "`bpo-39465 `__: Make :c:func:" "`_PyUnicode_FromId` function compatible with subinterpreters. Each " @@ -4068,20 +4022,20 @@ msgid "" "from UTF-8). Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2113 +#: ../build/NEWS:2148 msgid "" "`bpo-42257 `__: Handle empty string in " "variable executable in platform.libc_ver()" msgstr "" -#: ../build/NEWS:2116 +#: ../build/NEWS:2151 msgid "" "`bpo-42772 `__: randrange() now raises a " "TypeError when step is specified without a stop argument. Formerly, it " "silently ignored the step argument." msgstr "" -#: ../build/NEWS:2119 +#: ../build/NEWS:2154 msgid "" "`bpo-42759 `__: Fixed equality " "comparison of :class:`tkinter.Variable` and :class:`tkinter.font.Font`. " @@ -4089,45 +4043,45 @@ msgid "" "even if they have the same name." msgstr "" -#: ../build/NEWS:2123 +#: ../build/NEWS:2158 msgid "" "`bpo-42756 `__: Configure LMTP Unix-" "domain socket to use socket global default timeout when a timeout is not " "explicitly provided." msgstr "" -#: ../build/NEWS:2126 +#: ../build/NEWS:2161 msgid "" "`bpo-23328 `__: Allow / character in " "username, password fields on _PROXY envars." msgstr "" -#: ../build/NEWS:2129 +#: ../build/NEWS:2164 msgid "" "`bpo-42740 `__: :func:`typing.get_args` " "and :func:`typing.get_origin` now support :pep:`604` union types and :pep:" "`612` additions to ``Callable``." msgstr "" -#: ../build/NEWS:2132 +#: ../build/NEWS:2167 msgid "" "`bpo-42655 `__: :mod:`subprocess` " "*extra_groups* is now correctly passed into setgroups() system call." msgstr "" -#: ../build/NEWS:2135 +#: ../build/NEWS:2170 msgid "" "`bpo-42727 `__: ``EnumMeta.__prepare__`` " "now accepts ``**kwds`` to properly support ``__init_subclass__``" msgstr "" -#: ../build/NEWS:2138 +#: ../build/NEWS:2173 msgid "" "`bpo-38308 `__: Add optional *weights* " "to *statistics.harmonic_mean()*." msgstr "" -#: ../build/NEWS:2140 +#: ../build/NEWS:2175 msgid "" "`bpo-42721 `__: When simple query " "dialogs (:mod:`tkinter.simpledialog`), message boxes (:mod:`tkinter." @@ -4140,31 +4094,31 @@ msgid "" "which do not need other GUI." msgstr "" -#: ../build/NEWS:2150 +#: ../build/NEWS:2185 msgid "" "`bpo-25246 `__: Optimized :meth:" "`collections.deque.remove`." msgstr "" -#: ../build/NEWS:2152 +#: ../build/NEWS:2187 msgid "" "`bpo-35728 `__: Added a root parameter " "to :func:`tkinter.font.nametofont`." msgstr "" -#: ../build/NEWS:2154 +#: ../build/NEWS:2189 msgid "" "`bpo-15303 `__: :mod:`tkinter` supports " "now widgets with boolean value False." msgstr "" -#: ../build/NEWS:2156 +#: ../build/NEWS:2191 msgid "" "`bpo-42681 `__: Fixed range checks for " "color and pair numbers in :mod:`curses`." msgstr "" -#: ../build/NEWS:2158 +#: ../build/NEWS:2193 msgid "" "`bpo-42685 `__: Improved placing of " "simple query windows in Tkinter (such as :func:`tkinter.simpledialog." @@ -4172,27 +4126,27 @@ msgid "" "is specified and shown, otherwise at the center of the screen." msgstr "" -#: ../build/NEWS:2163 +#: ../build/NEWS:2198 msgid "" "`bpo-9694 `__: Argparse help no longer " "uses the confusing phrase, \"optional arguments\". It uses \"options\" " "instead." msgstr "" -#: ../build/NEWS:2166 +#: ../build/NEWS:2201 msgid "" "`bpo-1635741 `__: Port the :mod:" "`_thread` extension module to the multiphase initialization API (:pep:`489`) " "and convert its static types to heap types." msgstr "" -#: ../build/NEWS:2170 +#: ../build/NEWS:2205 msgid "" "`bpo-37961 `__: Fix crash in :func:" "`tracemalloc.Traceback.__repr__` (regressed in Python 3.9)." msgstr "" -#: ../build/NEWS:2173 +#: ../build/NEWS:2208 msgid "" "`bpo-42630 `__: :mod:`tkinter` functions " "and constructors which need a default root window raise now :exc:" @@ -4201,7 +4155,7 @@ msgid "" "created automatically." msgstr "" -#: ../build/NEWS:2178 +#: ../build/NEWS:2213 msgid "" "`bpo-42639 `__: :func:`atexit." "_run_exitfuncs` now logs callback exceptions using :data:`sys." @@ -4209,7 +4163,7 @@ msgid "" "and raise the last exception." msgstr "" -#: ../build/NEWS:2182 +#: ../build/NEWS:2217 msgid "" "`bpo-42644 `__: ``logging.disable`` will " "now validate the types and value of its parameter. It also now accepts " @@ -4217,7 +4171,7 @@ msgid "" "only the numerical values." msgstr "" -#: ../build/NEWS:2186 +#: ../build/NEWS:2221 msgid "" "`bpo-42639 `__: At Python exit, if a " "callback registered with :func:`atexit.register` fails, its exception is now " @@ -4225,13 +4179,13 @@ msgid "" "was always silently ignored." msgstr "" -#: ../build/NEWS:2191 +#: ../build/NEWS:2226 msgid "" "`bpo-36541 `__: Fixed lib2to3.pgen2 to " "be able to parse PEP-570 positional only argument syntax." msgstr "" -#: ../build/NEWS:2194 +#: ../build/NEWS:2229 msgid "" "`bpo-42382 `__: In ``importlib." "metadata``: - ``EntryPoint`` objects now expose a ``.dist`` object " @@ -4242,20 +4196,20 @@ msgid "" "Synced with importlib_metadata 3.3." msgstr "" -#: ../build/NEWS:2201 +#: ../build/NEWS:2236 msgid "" "`bpo-41877 `__: A check is added against " "misspellings of autospect, auto_spec and set_spec being passed as arguments " "to patch, patch.object and create_autospec." msgstr "" -#: ../build/NEWS:2205 +#: ../build/NEWS:2240 msgid "" "`bpo-39717 `__: [tarfile] update nested " "exception raising to use ``from None`` or ``from e``" msgstr "" -#: ../build/NEWS:2208 +#: ../build/NEWS:2243 msgid "" "`bpo-41877 `__: AttributeError for " "suspected misspellings of assertions on mocks are now pointing out that the " @@ -4264,77 +4218,77 @@ msgid "" "updated to reflect the current set of recognised misspellings." msgstr "" -#: ../build/NEWS:2214 +#: ../build/NEWS:2249 msgid "" "`bpo-41559 `__: Implemented :pep:`612`: " "added ``ParamSpec`` and ``Concatenate`` to :mod:`typing`. Patch by Ken Jin." msgstr "" -#: ../build/NEWS:2217 +#: ../build/NEWS:2252 msgid "" "`bpo-42385 `__: StrEnum: fix " "_generate_next_value_ to return a str" msgstr "" -#: ../build/NEWS:2219 +#: ../build/NEWS:2254 msgid "" "`bpo-31904 `__: Define THREAD_STACK_SIZE " "for VxWorks." msgstr "" -#: ../build/NEWS:2221 +#: ../build/NEWS:2256 msgid "" "`bpo-34750 `__: [Enum] `_EnumDict." "update()` is now supported" msgstr "" -#: ../build/NEWS:2223 +#: ../build/NEWS:2258 msgid "" "`bpo-42517 `__: Enum: private names do " "not become members / do not generate errors -- they remain normal attributes" msgstr "" -#: ../build/NEWS:2226 +#: ../build/NEWS:2261 msgid "" "`bpo-42678 `__: ``Enum``: call " "``__init_subclass__`` after members have been added" msgstr "" -#: ../build/NEWS:2229 +#: ../build/NEWS:2264 msgid "" "`bpo-28964 `__: :func:`ast.literal_eval` " "adds line number information (if available) in error message for malformed " "nodes." msgstr "" -#: ../build/NEWS:2232 +#: ../build/NEWS:2267 msgid "" "`bpo-42470 `__: :func:`random.sample` no " "longer warns on a sequence which is also a set." msgstr "" -#: ../build/NEWS:2235 +#: ../build/NEWS:2270 msgid "" "`bpo-31904 `__: :func:`posixpath." "expanduser` returns the input *path* unchanged if user home directory is " "None on VxWorks." msgstr "" -#: ../build/NEWS:2238 +#: ../build/NEWS:2273 msgid "" "`bpo-42388 `__: Fix subprocess." "check_output(..., input=None) behavior when text=True to be consistent with " "that of the documentation and universal_newlines=True." msgstr "" -#: ../build/NEWS:2242 +#: ../build/NEWS:2277 msgid "" "`bpo-34463 `__: Fixed discrepancy " "between :mod:`traceback` and the interpreter in formatting of SyntaxError " "with lineno not set (:mod:`traceback` was changed to match interpreter)." msgstr "" -#: ../build/NEWS:2246 +#: ../build/NEWS:2281 msgid "" "`bpo-42393 `__: Raise :exc:" "`OverflowError` instead of silent truncation in :meth:`socket.ntohs` and :" @@ -4342,54 +4296,54 @@ msgid "" "by Erlend E. Aasland" msgstr "" -#: ../build/NEWS:2250 +#: ../build/NEWS:2285 msgid "" "`bpo-42222 `__: Harmonized :func:`random." "randrange` argument handling to match :func:`range`." msgstr "" -#: ../build/NEWS:2253 +#: ../build/NEWS:2288 msgid "" "The integer test and conversion in ``randrange()`` now uses :func:`operator." "index`." msgstr "" -#: ../build/NEWS:2255 +#: ../build/NEWS:2290 msgid "Non-integer arguments to ``randrange()`` are deprecated." msgstr "" -#: ../build/NEWS:2256 +#: ../build/NEWS:2291 msgid "The ``ValueError`` is deprecated in favor of a ``TypeError``." msgstr "" -#: ../build/NEWS:2257 +#: ../build/NEWS:2292 msgid "It now runs a little faster than before." msgstr "" -#: ../build/NEWS:2259 +#: ../build/NEWS:2294 msgid "(Contributed by Raymond Hettinger and Serhiy Storchaka.)" msgstr "" -#: ../build/NEWS:2261 +#: ../build/NEWS:2296 msgid "" "`bpo-42163 `__: Restore compatibility " "for ``uname_result`` around deepcopy and _replace." msgstr "" -#: ../build/NEWS:2264 +#: ../build/NEWS:2299 msgid "" "`bpo-42090 `__: ``zipfile.Path." "joinpath`` now accepts arbitrary arguments, same as ``pathlib.Path." "joinpath``." msgstr "" -#: ../build/NEWS:2267 +#: ../build/NEWS:2302 msgid "" "`bpo-1635741 `__: Port the _csv module " "to the multi-phase initialization API (:pep:`489`)." msgstr "" -#: ../build/NEWS:2270 +#: ../build/NEWS:2305 msgid "" "`bpo-42059 `__: :class:`typing." "TypedDict` types created using the alternative call-style syntax now " @@ -4397,138 +4351,138 @@ msgid "" "``__required_keys__`` and ``__optional_keys__`` class attributes." msgstr "" -#: ../build/NEWS:2275 +#: ../build/NEWS:2310 msgid "" "`bpo-41960 `__: Add ``globalns`` and " "``localns`` parameters to the :func:`inspect.signature` and :meth:`inspect." "Signature.from_callable`." msgstr "" -#: ../build/NEWS:2278 +#: ../build/NEWS:2313 msgid "" "`bpo-41907 `__: fix ``format()`` " "behavior for ``IntFlag``" msgstr "" -#: ../build/NEWS:2280 +#: ../build/NEWS:2315 msgid "" "`bpo-41891 `__: Ensure asyncio.wait_for " "waits for task completion" msgstr "" -#: ../build/NEWS:2282 +#: ../build/NEWS:2317 msgid "" "`bpo-24792 `__: Fixed bug where :mod:" "`zipimporter` sometimes reports an incorrect cause of import errors." msgstr "" -#: ../build/NEWS:2285 +#: ../build/NEWS:2320 msgid "" "`bpo-31904 `__: Fix site and sysconfig " "modules for VxWorks RTOS which has no home directories." msgstr "" -#: ../build/NEWS:2288 +#: ../build/NEWS:2323 msgid "" "`bpo-41462 `__: Add :func:`os." "set_blocking()` support for VxWorks RTOS." msgstr "" -#: ../build/NEWS:2290 +#: ../build/NEWS:2325 msgid "" "`bpo-40219 `__: Lowered :class:`tkinter." "ttk.LabeledScale` dummy widget to prevent hiding part of the content label." msgstr "" -#: ../build/NEWS:2293 +#: ../build/NEWS:2328 msgid "" "`bpo-37193 `__: Fixed memory leak in " "``socketserver.ThreadingMixIn`` introduced in Python 3.7." msgstr "" -#: ../build/NEWS:2296 +#: ../build/NEWS:2331 msgid "" "`bpo-39068 `__: Fix initialization race " "condition in :func:`a85encode` and :func:`b85encode` in :mod:`base64`. Patch " "by Brandon Stansbury." msgstr "" -#: ../build/NEWS:2302 +#: ../build/NEWS:2337 msgid "" "`bpo-17140 `__: Add documentation for " "the :class:`multiprocessing.pool.ThreadPool` class." msgstr "" -#: ../build/NEWS:2305 +#: ../build/NEWS:2340 msgid "" "`bpo-34398 `__: Prominently feature " "listings from the glossary in documentation search results. Patch by Ammar " "Askar." msgstr "" -#: ../build/NEWS:2311 +#: ../build/NEWS:2346 msgid "" "`bpo-42794 `__: Update test_nntplib to " "use offical group name of news.aioe.org for testing. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:2314 +#: ../build/NEWS:2349 msgid "" "`bpo-31904 `__: Skip some asyncio tests " "on VxWorks." msgstr "" -#: ../build/NEWS:2316 +#: ../build/NEWS:2351 msgid "" "`bpo-42641 `__: Enhance ``test_select." "test_select()``: it now takes 500 ms rather than 10 seconds. Use Python " "rather than a shell to make the test more portable." msgstr "" -#: ../build/NEWS:2320 +#: ../build/NEWS:2355 msgid "" "`bpo-31904 `__: Skip some tests in " "_test_all_chown_common() on VxWorks." msgstr "" -#: ../build/NEWS:2322 +#: ../build/NEWS:2357 msgid "" "`bpo-42199 `__: Fix bytecode helper " "assertNotInBytecode." msgstr "" -#: ../build/NEWS:2324 +#: ../build/NEWS:2359 msgid "" "`bpo-41443 `__: Add more attribute " "checking in test_posix.py" msgstr "" -#: ../build/NEWS:2326 +#: ../build/NEWS:2361 msgid "" "`bpo-31904 `__: Disable os.popen and " "impacted tests on VxWorks" msgstr "" -#: ../build/NEWS:2328 +#: ../build/NEWS:2363 msgid "" "`bpo-41439 `__: Port test_ssl and " "test_uuid to VxWorks RTOS." msgstr "" -#: ../build/NEWS:2333 +#: ../build/NEWS:2368 msgid "" "`bpo-42692 `__: Fix __builtin_available " "check on older compilers. Patch by Joshua Root." msgstr "" -#: ../build/NEWS:2336 +#: ../build/NEWS:2371 msgid "" "`bpo-27640 `__: Added ``--disable-test-" "modules`` option to the ``configure`` script: don't build nor install test " "modules. Patch by Xavier de Gaye, Thomas Petazzoni and Peixing Xin." msgstr "" -#: ../build/NEWS:2340 +#: ../build/NEWS:2375 msgid "" "`bpo-42604 `__: Now all platforms use a " "value for the \"EXT_SUFFIX\" build variable derived from SOABI (for instance " @@ -4537,56 +4491,56 @@ msgid "" "that included \"SOABI\"." msgstr "" -#: ../build/NEWS:2345 +#: ../build/NEWS:2380 msgid "" "`bpo-42598 `__: Fix implicit function " "declarations in configure which could have resulted in incorrect " "configuration checks. Patch contributed by Joshua Root." msgstr "" -#: ../build/NEWS:2349 +#: ../build/NEWS:2384 msgid "" "`bpo-31904 `__: Enable libpython3.so for " "VxWorks." msgstr "" -#: ../build/NEWS:2351 +#: ../build/NEWS:2386 msgid "" "`bpo-29076 `__: Add fish shell support " "to macOS installer." msgstr "" -#: ../build/NEWS:2356 +#: ../build/NEWS:2391 msgid "" "`bpo-42361 `__: Update macOS installer " "build to use Tcl/Tk 8.6.11 (rc2, expected to be final release)." msgstr "" -#: ../build/NEWS:2359 +#: ../build/NEWS:2394 msgid "" "`bpo-41837 `__: Update macOS installer " "build to use OpenSSL 1.1.1i." msgstr "" -#: ../build/NEWS:2361 +#: ../build/NEWS:2396 msgid "" "`bpo-42584 `__: Update macOS installer " "to use SQLite 3.34.0." msgstr "" -#: ../build/NEWS:2366 +#: ../build/NEWS:2401 msgid "" "`bpo-42726 `__: Fixed Python 3 " "compatibility issue with gdb/libpython.py handling of attribute dictionaries." msgstr "" -#: ../build/NEWS:2369 +#: ../build/NEWS:2404 msgid "" "`bpo-42613 `__: Fix ``freeze.py`` tool " "to use the prope config and library directories. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2375 +#: ../build/NEWS:2410 msgid "" "`bpo-42591 `__: Export the :c:func:" "`Py_FrozenMain` function: fix a Python 3.9.0 regression. Python 3.9 uses ``-" @@ -4594,48 +4548,48 @@ msgid "" "exported." msgstr "" -#: ../build/NEWS:2379 +#: ../build/NEWS:2414 msgid "" "`bpo-32381 `__: Remove the private :c:" "func:`_Py_fopen` function which is no longer needed. Use :c:func:" "`_Py_wfopen` or :c:func:`_Py_fopen_obj` instead. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2383 +#: ../build/NEWS:2418 msgid "" "`bpo-1635741 `__: Port :mod:`resource` " "extension module to module state" msgstr "" -#: ../build/NEWS:2385 +#: ../build/NEWS:2420 msgid "" "`bpo-42111 `__: Update the ``xxlimited`` " "module to be a better example of how to use the limited C API." msgstr "" -#: ../build/NEWS:2388 +#: ../build/NEWS:2423 msgid "" "`bpo-40052 `__: Fix an alignment build " "warning/error in function ``PyVectorcall_Function()``. Patch by Andreas " "Schneider, Antoine Pitrou and Petr Viktorin." msgstr "" -#: ../build/NEWS:2394 +#: ../build/NEWS:2429 msgid "Python 3.10.0 alpha 3" msgstr "" -#: ../build/NEWS:2396 +#: ../build/NEWS:2431 msgid "*Release date: 2020-12-07*" msgstr "" -#: ../build/NEWS:2401 +#: ../build/NEWS:2436 msgid "" "`bpo-40791 `__: Add ``volatile`` to the " "accumulator variable in ``hmac.compare_digest``, making constant-time-" "defeating optimizations less likely." msgstr "" -#: ../build/NEWS:2408 +#: ../build/NEWS:2443 msgid "" "`bpo-42576 `__: ``types.GenericAlias`` " "will now raise a ``TypeError`` when attempting to initialize with a keyword " @@ -4644,87 +4598,87 @@ msgid "" "interpreters compiled for release. Patch by Ken Jin." msgstr "" -#: ../build/NEWS:2414 +#: ../build/NEWS:2449 msgid "" "`bpo-42536 `__: Several built-in and " "standard library types now ensure that their internal result tuples are " "always tracked by the :term:`garbage collector `:" msgstr "" -#: ../build/NEWS:2418 +#: ../build/NEWS:2453 msgid ":meth:`collections.OrderedDict.items() `" msgstr "" -#: ../build/NEWS:2420 +#: ../build/NEWS:2455 msgid ":meth:`dict.items`" msgstr "" -#: ../build/NEWS:2422 +#: ../build/NEWS:2457 msgid ":func:`enumerate`" -msgstr ":func:`enumerate`" +msgstr "" -#: ../build/NEWS:2424 +#: ../build/NEWS:2459 msgid ":func:`functools.reduce`" msgstr "" -#: ../build/NEWS:2426 +#: ../build/NEWS:2461 msgid ":func:`itertools.combinations`" msgstr "" -#: ../build/NEWS:2428 +#: ../build/NEWS:2463 msgid ":func:`itertools.combinations_with_replacement`" msgstr "" -#: ../build/NEWS:2430 +#: ../build/NEWS:2465 msgid ":func:`itertools.permutations`" msgstr "" -#: ../build/NEWS:2432 +#: ../build/NEWS:2467 msgid ":func:`itertools.product`" msgstr "" -#: ../build/NEWS:2434 +#: ../build/NEWS:2469 msgid ":func:`itertools.zip_longest`" msgstr "" -#: ../build/NEWS:2436 +#: ../build/NEWS:2471 msgid ":func:`zip`" -msgstr ":func:`zip`" +msgstr "" -#: ../build/NEWS:2438 +#: ../build/NEWS:2473 msgid "" "Previously, they could have become untracked by a prior garbage collection. " "Patch by Brandt Bucher." msgstr "" -#: ../build/NEWS:2441 +#: ../build/NEWS:2476 msgid "" "`bpo-42500 `__: Improve handling of " "exceptions near recursion limit. Converts a number of Fatal Errors in " "RecursionErrors." msgstr "" -#: ../build/NEWS:2444 +#: ../build/NEWS:2479 msgid "" "`bpo-42246 `__: PEP 626: After a return, " "the f_lineno attribute of a frame is always the last line executed." msgstr "" -#: ../build/NEWS:2447 +#: ../build/NEWS:2482 msgid "" "`bpo-42435 `__: Speed up comparison of " "bytes objects with non-bytes objects when option :option:`-b` is specified. " "Speed up comparison of bytarray objects with non-buffer object." msgstr "" -#: ../build/NEWS:2451 +#: ../build/NEWS:2486 msgid "" "`bpo-1635741 `__: Port the " "``_warnings`` extension module to the multi-phase initialization API (:pep:" "`489`). Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2454 +#: ../build/NEWS:2489 msgid "" "`bpo-41686 `__: On Windows, the " "``SIGINT`` event, ``_PyOS_SigintEvent()``, is now created even if Python is " @@ -4732,41 +4686,41 @@ msgid "" "install_signal_handlers` equals to 0, or ``Py_InitializeEx(0)``)." msgstr "" -#: ../build/NEWS:2459 +#: ../build/NEWS:2494 msgid "" "`bpo-42381 `__: Allow assignment " "expressions in set literals and set comprehensions as per PEP 572. Patch by " "Pablo Galindo." msgstr "" -#: ../build/NEWS:2462 +#: ../build/NEWS:2497 msgid "" "`bpo-42202 `__: Change function " "parameters annotations internal representation to tuple of strings. Patch " "provided by Yurii Karabas." msgstr "" -#: ../build/NEWS:2465 +#: ../build/NEWS:2500 msgid "" "`bpo-42374 `__: Fix a regression " "introduced by the new parser, where an unparenthesized walrus operator was " "not allowed within generator expressions." msgstr "" -#: ../build/NEWS:2469 +#: ../build/NEWS:2504 msgid "" "`bpo-42316 `__: Allow an unparenthesized " "walrus in subscript indexes." msgstr "" -#: ../build/NEWS:2471 +#: ../build/NEWS:2506 msgid "" "`bpo-42349 `__: Make sure that the " "compiler front-end produces a well-formed control flow graph. Be be more " "aggressive in the compiler back-end, as it is now safe to do so." msgstr "" -#: ../build/NEWS:2475 +#: ../build/NEWS:2510 msgid "" "`bpo-42296 `__: On Windows, fix a " "regression in signal handling which prevented to interrupt a program using " @@ -4775,46 +4729,46 @@ msgid "" "wrong." msgstr "" -#: ../build/NEWS:2480 +#: ../build/NEWS:2515 msgid "" "`bpo-42332 `__: :class:`types." "GenericAlias` objects can now be the targets of weakrefs." msgstr "" -#: ../build/NEWS:2483 +#: ../build/NEWS:2518 msgid "" "`bpo-42282 `__: Optimise constant " "subexpressions that appear as part of named expressions (previously the AST " "optimiser did not descend into named expressions). Patch by Nick Coghlan." msgstr "" -#: ../build/NEWS:2487 +#: ../build/NEWS:2522 msgid "" "`bpo-42266 `__: Fixed a bug with the " "LOAD_ATTR opcode cache that was not respecting monkey-patching a class-level " "attribute to make it a descriptor. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:2491 +#: ../build/NEWS:2526 msgid "" "`bpo-40077 `__: Convert :mod:`queue` to " "use heap types." msgstr "" -#: ../build/NEWS:2493 +#: ../build/NEWS:2528 msgid "" "`bpo-42246 `__: Improved accuracy of " "line tracing events and f_lineno attribute of Frame objects. See PEP 626 for " "details." msgstr "" -#: ../build/NEWS:2496 +#: ../build/NEWS:2531 msgid "" "`bpo-40077 `__: Convert :mod:`mmap` to " "use heap types." msgstr "" -#: ../build/NEWS:2498 +#: ../build/NEWS:2533 msgid "" "`bpo-42233 `__: Allow ``GenericAlias`` " "objects to use :ref:`union type expressions `. This allows " @@ -4824,31 +4778,31 @@ msgid "" "Jin in :issue:`42233`.)" msgstr "" -#: ../build/NEWS:2504 +#: ../build/NEWS:2539 msgid "" "`bpo-26131 `__: The import system " "triggers a `ImportWarning` when it falls back to using `load_module()`." msgstr "" -#: ../build/NEWS:2510 +#: ../build/NEWS:2545 msgid "" "`bpo-5054 `__: CGIHTTPRequestHandler." "run_cgi() HTTP_ACCEPT improperly parsed. Replace the special purpose " "getallmatchingheaders with generic get_all method and add relevant tests." msgstr "" -#: ../build/NEWS:2514 +#: ../build/NEWS:2549 msgid "Original Patch by Martin Panter. Modified by Senthil Kumaran." msgstr "" -#: ../build/NEWS:2516 +#: ../build/NEWS:2551 msgid "" "`bpo-42562 `__: Fix issue when dis " "failed to parse function that has no line numbers. Patch provided by Yurii " "Karabas." msgstr "" -#: ../build/NEWS:2519 +#: ../build/NEWS:2554 msgid "" "`bpo-17735 `__: :func:`inspect." "findsource` now raises :exc:`OSError` instead of :exc:`IndexError` when :" @@ -4857,38 +4811,38 @@ msgid "" "Irit Katriel." msgstr "" -#: ../build/NEWS:2524 +#: ../build/NEWS:2559 msgid "" "`bpo-42116 `__: Fix handling of trailing " "comments by :func:`inspect.getsource`." msgstr "" -#: ../build/NEWS:2526 +#: ../build/NEWS:2561 msgid "" "`bpo-42532 `__: Remove unexpected call " "of ``__bool__`` when passing a ``spec_arg`` argument to a Mock." msgstr "" -#: ../build/NEWS:2529 +#: ../build/NEWS:2564 msgid "" "`bpo-38200 `__: Added itertools." "pairwise()" msgstr "" -#: ../build/NEWS:2531 +#: ../build/NEWS:2566 msgid "" "`bpo-41818 `__: Fix test_master_read() " "so that it succeeds on all platforms that either raise OSError or return b" "\"\" upon reading from master." msgstr "" -#: ../build/NEWS:2534 +#: ../build/NEWS:2569 msgid "" "`bpo-42487 `__: ChainMap.__iter__ no " "longer calls __getitem__ on underlying maps" msgstr "" -#: ../build/NEWS:2537 +#: ../build/NEWS:2572 msgid "" "`bpo-42482 `__: :class:`~traceback." "TracebackException` no longer holds a reference to the exception's traceback " @@ -4896,35 +4850,35 @@ msgid "" "equal exceptions now compare as equal." msgstr "" -#: ../build/NEWS:2542 +#: ../build/NEWS:2577 msgid "" "`bpo-41818 `__: Make test_openpty() " "avoid unexpected success due to number of rows and/or number of columns " "being == 0." msgstr "" -#: ../build/NEWS:2545 +#: ../build/NEWS:2580 msgid "" "`bpo-42392 `__: Remove loop parameter " "from ``asyncio.subprocess`` and ``asyncio.tasks`` functions. Patch provided " "by Yurii Karabas." msgstr "" -#: ../build/NEWS:2548 +#: ../build/NEWS:2583 msgid "" "`bpo-42392 `__: Remove loop parameter " "from ``asyncio.open_connection`` and ``asyncio.start_server`` functions. " "Patch provided by Yurii Karabas." msgstr "" -#: ../build/NEWS:2551 +#: ../build/NEWS:2586 msgid "" "`bpo-28468 `__: Add :func:`platform." "freedesktop_os_release` function to parse freedesktop.org ``os-release`` " "files." msgstr "" -#: ../build/NEWS:2554 +#: ../build/NEWS:2589 msgid "" "`bpo-42299 `__: Removed the " "``formatter`` module, which was deprecated in Python 3.4. It is somewhat " @@ -4934,13 +4888,13 @@ msgid "" "Patch by Dong-hee Na and and Terry J. Reedy." msgstr "" -#: ../build/NEWS:2561 +#: ../build/NEWS:2596 msgid "" "`bpo-26131 `__: Deprecate zipimport." "zipimporter.load_module() in favour of exec_module()." msgstr "" -#: ../build/NEWS:2564 +#: ../build/NEWS:2599 msgid "" "`bpo-41818 `__: Updated tests for the " "pty library. test_basic() has been changed to test_openpty(); this " @@ -4950,33 +4904,33 @@ msgid "" "that pty.spawn() should not depend on an OSError to exit from its copy loop." msgstr "" -#: ../build/NEWS:2571 +#: ../build/NEWS:2606 msgid "" "`bpo-42392 `__: Remove loop parameter " "from ``__init__`` in all ``asyncio.locks`` and ``asyncio.Queue`` classes. " "Patch provided by Yurii Karabas." msgstr "" -#: ../build/NEWS:2575 +#: ../build/NEWS:2610 msgid "" "`bpo-15450 `__: Make :class:`filecmp." "dircmp` respect subclassing. Now the :attr:`filecmp.dircmp.subdirs` behaves " "as expected when subclassing dircmp." msgstr "" -#: ../build/NEWS:2579 +#: ../build/NEWS:2614 msgid "" "`bpo-42413 `__: The exception :exc:" "`socket.timeout` is now an alias of :exc:`TimeoutError`." msgstr "" -#: ../build/NEWS:2582 +#: ../build/NEWS:2617 msgid "" "`bpo-31904 `__: Support signal module on " "VxWorks." msgstr "" -#: ../build/NEWS:2584 +#: ../build/NEWS:2619 msgid "" "`bpo-42406 `__: We fixed an issue in " "`pickle.whichmodule` in which importing `multiprocessing` could change the " @@ -4984,7 +4938,7 @@ msgid "" "breaking the unpickling of those objects." msgstr "" -#: ../build/NEWS:2588 +#: ../build/NEWS:2623 msgid "" "`bpo-42403 `__: Simplify the :mod:" "`importlib` external bootstrap code: ``importlib._bootstrap_external`` now " @@ -4993,26 +4947,26 @@ msgid "" "used to import builtin modules like :mod:`sys`. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2594 +#: ../build/NEWS:2629 msgid "" "`bpo-1635741 `__: Convert _sre module " "types to heap types (PEP 384). Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:2597 +#: ../build/NEWS:2632 msgid "" "`bpo-42375 `__: subprocess module update " "for DragonFlyBSD support." msgstr "" -#: ../build/NEWS:2599 +#: ../build/NEWS:2634 msgid "" "`bpo-41713 `__: Port the ``_signal`` " "extension module to the multi-phase initialization API (:pep:`489`). Patch " "by Victor Stinner and Mohamed Koubaa." msgstr "" -#: ../build/NEWS:2603 +#: ../build/NEWS:2638 msgid "" "`bpo-37205 `__: :func:`time.time()`, :" "func:`time.perf_counter()` and :func:`time.monotonic()` functions can no " @@ -5020,7 +4974,7 @@ msgid "" "exception on failure." msgstr "" -#: ../build/NEWS:2607 +#: ../build/NEWS:2642 msgid "" "`bpo-42328 `__: Fixed :meth:`tkinter.ttk." "Style.map`. The function accepts now the representation of the default state " @@ -5029,14 +4983,14 @@ msgid "" "``wantobjects``." msgstr "" -#: ../build/NEWS:2612 +#: ../build/NEWS:2647 msgid "" "`bpo-42345 `__: Fix various issues with " "``typing.Literal`` parameter handling (flatten, deduplicate, use type to " "cache key). Patch provided by Yurii Karabas." msgstr "" -#: ../build/NEWS:2616 +#: ../build/NEWS:2651 msgid "" "`bpo-37205 `__: :func:`time." "perf_counter()` on Windows and :func:`time.monotonic()` on macOS are now " @@ -5046,13 +5000,13 @@ msgid "" "avoid this precision loss." msgstr "" -#: ../build/NEWS:2623 +#: ../build/NEWS:2658 msgid "" "`bpo-42318 `__: Fixed support of non-BMP " "characters in :mod:`tkinter` on macOS." msgstr "" -#: ../build/NEWS:2625 +#: ../build/NEWS:2660 msgid "" "`bpo-42350 `__: Fix the :class:" "`threading.Thread` class at fork: do nothing if the thread is already " @@ -5060,25 +5014,25 @@ msgid "" "the child process." msgstr "" -#: ../build/NEWS:2629 +#: ../build/NEWS:2664 msgid "" "`bpo-42333 `__: Port _ssl extension " "module to heap types." msgstr "" -#: ../build/NEWS:2631 +#: ../build/NEWS:2666 msgid "" "`bpo-42014 `__: The ``onerror`` callback " "from ``shutil.rmtree`` now receives correct function when ``os.open`` fails." msgstr "" -#: ../build/NEWS:2634 +#: ../build/NEWS:2669 msgid "" "`bpo-42237 `__: Fix `os.sendfile()` on " "illumos." msgstr "" -#: ../build/NEWS:2636 +#: ../build/NEWS:2671 msgid "" "`bpo-42308 `__: Add :data:`threading." "__excepthook__` to allow retrieving the original value of :func:`threading." @@ -5086,20 +5040,20 @@ msgid "" "Mario Corchero." msgstr "" -#: ../build/NEWS:2640 +#: ../build/NEWS:2675 msgid "" "`bpo-42131 `__: Implement PEP 451/spec " "methods on zipimport.zipimporter: find_spec(), create_module(), and " "exec_module()." msgstr "" -#: ../build/NEWS:2643 +#: ../build/NEWS:2678 msgid "" "This also allows for the documented deprecation of find_loader(), " "find_module(), and load_module()." msgstr "" -#: ../build/NEWS:2646 +#: ../build/NEWS:2681 msgid "" "`bpo-41877 `__: Mock objects which are " "not unsafe will now raise an AttributeError if an attribute with the prefix " @@ -5107,7 +5061,7 @@ msgid "" "for the prefixes assert or assret." msgstr "" -#: ../build/NEWS:2651 +#: ../build/NEWS:2686 msgid "" "`bpo-42264 `__: ``sqlite3." "OptimizedUnicode`` has been undocumented and obsolete since Python 3.3, when " @@ -5115,7 +5069,7 @@ msgid "" "removal in Python 3.12." msgstr "" -#: ../build/NEWS:2655 +#: ../build/NEWS:2690 msgid "" "`bpo-42251 `__: Added :func:`threading." "gettrace` and :func:`threading.getprofile` to retrieve the functions set by :" @@ -5123,57 +5077,57 @@ msgid "" "Patch by Mario Corchero." msgstr "" -#: ../build/NEWS:2660 +#: ../build/NEWS:2695 msgid "" "`bpo-42249 `__: Fixed writing binary " "Plist files larger than 4 GiB." msgstr "" -#: ../build/NEWS:2662 +#: ../build/NEWS:2697 msgid "" "`bpo-42236 `__: On Unix, the :func:`os." "device_encoding` function now returns ``'UTF-8'`` rather than the device " "encoding if the :ref:`Python UTF-8 Mode ` is enabled." msgstr "" -#: ../build/NEWS:2666 +#: ../build/NEWS:2701 msgid "" "`bpo-41754 `__: webbrowser: Ignore " "*NotADirectoryError* when calling ``xdg-settings``." msgstr "" -#: ../build/NEWS:2669 +#: ../build/NEWS:2704 msgid "" "`bpo-42183 `__: Fix a stack overflow " "error for asyncio Task or Future repr()." msgstr "" -#: ../build/NEWS:2671 +#: ../build/NEWS:2706 msgid "" "The overflow occurs under some circumstances when a Task or Future " "recursively returns itself." msgstr "" -#: ../build/NEWS:2674 +#: ../build/NEWS:2709 msgid "" "`bpo-42140 `__: Improve asyncio.wait " "function to create the futures set just one time." msgstr "" -#: ../build/NEWS:2677 +#: ../build/NEWS:2712 msgid "" "`bpo-42133 `__: Update various modules " "in the stdlib to fall back on `__spec__.loader` when `__loader__` isn't " "defined on a module." msgstr "" -#: ../build/NEWS:2680 +#: ../build/NEWS:2715 msgid "" "`bpo-26131 `__: The `load_module()` " "methods found in importlib now trigger a DeprecationWarning." msgstr "" -#: ../build/NEWS:2683 +#: ../build/NEWS:2718 msgid "" "`bpo-39825 `__: Windows: Change " "``sysconfig.get_config_var('EXT_SUFFIX')`` to the expected full " @@ -5183,7 +5137,7 @@ msgid "" "with the other platforms." msgstr "" -#: ../build/NEWS:2689 +#: ../build/NEWS:2724 msgid "" "`bpo-26389 `__: The :func:`traceback." "format_exception`, :func:`traceback.format_exception_only`, and :func:" @@ -5191,63 +5145,63 @@ msgid "" "positional-only argument." msgstr "" -#: ../build/NEWS:2694 +#: ../build/NEWS:2729 msgid "" "`bpo-41889 `__: Enum: fix regression " "involving inheriting a multiply-inherited enum" msgstr "" -#: ../build/NEWS:2697 +#: ../build/NEWS:2732 msgid "" "`bpo-41861 `__: Convert :mod:`sqlite3` " "to use heap types (PEP 384). Patch by Erlend E. Aasland." msgstr "" -#: ../build/NEWS:2700 +#: ../build/NEWS:2735 msgid "" "`bpo-40624 `__: Added support for the " "XPath ``!=`` operator in xml.etree" msgstr "" -#: ../build/NEWS:2702 +#: ../build/NEWS:2737 msgid "" "`bpo-28850 `__: Fix :meth:`pprint." "PrettyPrinter.format` overrides being ignored for contents of small " "containers. The :func:`pprint._safe_repr` function was removed." msgstr "" -#: ../build/NEWS:2706 +#: ../build/NEWS:2741 msgid "" "`bpo-41625 `__: Expose the :c:func:" "`splice` as :func:`os.splice` in the :mod:`os` module. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:2709 +#: ../build/NEWS:2744 msgid "" "`bpo-34215 `__: Clarify the error " "message for :exc:`asyncio.IncompleteReadError` when ``expected`` is ``None``." msgstr "" -#: ../build/NEWS:2712 +#: ../build/NEWS:2747 msgid "" "`bpo-41543 `__: Add async context " "manager support for contextlib.nullcontext." msgstr "" -#: ../build/NEWS:2714 +#: ../build/NEWS:2749 msgid "" "`bpo-21041 `__: :attr:`pathlib.PurePath." "parents` now supports negative indexing. Patch contributed by Yaroslav " "Pankovych." msgstr "" -#: ../build/NEWS:2717 +#: ../build/NEWS:2752 msgid "" "`bpo-41332 `__: Added missing " "connect_accepted_socket() method to ``asyncio.AbstractEventLoop``." msgstr "" -#: ../build/NEWS:2720 +#: ../build/NEWS:2755 msgid "" "`bpo-12800 `__: Extracting a symlink " "from a tarball should succeed and overwrite the symlink if it already " @@ -5255,146 +5209,146 @@ msgid "" "Based on patch by Chris AtLee, Jeffrey Kintscher, and Senthil Kumaran." msgstr "" -#: ../build/NEWS:2725 +#: ../build/NEWS:2760 msgid "" "`bpo-40968 `__: :mod:`urllib.request` " "and :mod:`http.client` now send ``http/1.1`` ALPN extension during TLS " "handshake when no custom context is supplied." msgstr "" -#: ../build/NEWS:2729 +#: ../build/NEWS:2764 msgid "" "`bpo-41001 `__: Add func:`os.eventfd` to " "provide a low level interface for Linux's event notification file descriptor." msgstr "" -#: ../build/NEWS:2732 +#: ../build/NEWS:2767 msgid "" "`bpo-40816 `__: Add " "AsyncContextDecorator to contextlib to support async context manager as a " "decorator." msgstr "" -#: ../build/NEWS:2735 +#: ../build/NEWS:2770 msgid "" "`bpo-40550 `__: Fix time-of-check/time-" "of-action issue in subprocess.Popen.send_signal." msgstr "" -#: ../build/NEWS:2738 +#: ../build/NEWS:2773 msgid "" "`bpo-39411 `__: Add an ``is_async`` " "identifier to :mod:`pyclbr`'s ``Function`` objects. Patch by Batuhan Taskaya" msgstr "" -#: ../build/NEWS:2741 +#: ../build/NEWS:2776 msgid "" "`bpo-35498 `__: Add slice support to :" "attr:`pathlib.PurePath.parents`." msgstr "" -#: ../build/NEWS:2746 +#: ../build/NEWS:2781 msgid "" "`bpo-42238 `__: Tentative to deprecate " "``make suspicious`` by first removing it from the CI and documentation " "builds, but keeping it around for manual uses." msgstr "" -#: ../build/NEWS:2750 +#: ../build/NEWS:2785 msgid "" "`bpo-42153 `__: Fix the URL for the IMAP " "protocol documents." msgstr "" -#: ../build/NEWS:2752 +#: ../build/NEWS:2787 msgid "" "`bpo-41028 `__: Language and version " "switchers, previously maintained in every cpython branches, are now handled " "by docsbuild-script." msgstr "" -#: ../build/NEWS:2758 +#: ../build/NEWS:2793 msgid "" "`bpo-41473 `__: Reenable test_gdb on gdb " "9.2 and newer: https://bugzilla.redhat.com/show_bug.cgi?id=1866884 bug is " "fixed in gdb 10.1." msgstr "" -#: ../build/NEWS:2762 +#: ../build/NEWS:2797 msgid "" "`bpo-42553 `__: Fix ``test_asyncio." "test_call_later()`` race condition: don't measure asyncio performance in the " "``call_later()`` unit test. The test failed randomly on the CI." msgstr "" -#: ../build/NEWS:2766 +#: ../build/NEWS:2801 msgid "" "`bpo-31904 `__: Fix test_netrc on " "VxWorks: create temporary directories using temp_cwd()." msgstr "" -#: ../build/NEWS:2769 +#: ../build/NEWS:2804 msgid "" "`bpo-31904 `__: skip " "test_getaddrinfo_ipv6_scopeid_symbolic and " "test_getnameinfo_ipv6_scopeid_symbolic on VxWorks" msgstr "" -#: ../build/NEWS:2772 +#: ../build/NEWS:2807 msgid "" "`bpo-31904 `__: skip test_test of " "test_mailcap on VxWorks" msgstr "" -#: ../build/NEWS:2774 +#: ../build/NEWS:2809 msgid "" "`bpo-31904 `__: add shell requirement " "for test_pipes" msgstr "" -#: ../build/NEWS:2776 +#: ../build/NEWS:2811 msgid "" "`bpo-31904 `__: skip some tests related " "to fifo on VxWorks" msgstr "" -#: ../build/NEWS:2778 +#: ../build/NEWS:2813 msgid "" "`bpo-31904 `__: Fix test_doctest.py " "failures for VxWorks." msgstr "" -#: ../build/NEWS:2780 +#: ../build/NEWS:2815 msgid "" "`bpo-40754 `__: Include " "``_testinternalcapi`` module in Windows installer for test suite" msgstr "" -#: ../build/NEWS:2783 +#: ../build/NEWS:2818 msgid "" "`bpo-41561 `__: test_ssl: skip " "test_min_max_version_mismatch when TLS 1.0 is not available" msgstr "" -#: ../build/NEWS:2786 +#: ../build/NEWS:2821 msgid "" "`bpo-31904 `__: Fix os module failures " "for VxWorks RTOS." msgstr "" -#: ../build/NEWS:2788 +#: ../build/NEWS:2823 msgid "" "`bpo-31904 `__: Fix fifo test cases for " "VxWorks RTOS." msgstr "" -#: ../build/NEWS:2793 +#: ../build/NEWS:2828 msgid "" "`bpo-31904 `__: remove libnet dependency " "from detect_socket() for VxWorks" msgstr "" -#: ../build/NEWS:2795 +#: ../build/NEWS:2830 msgid "" "`bpo-42398 `__: Fix a race condition in " "\"make regen-all\" when make -jN option is used to run jobs in parallel. The " @@ -5403,7 +5357,7 @@ msgid "" "not change the file modification time." msgstr "" -#: ../build/NEWS:2800 +#: ../build/NEWS:2835 msgid "" "`bpo-41617 `__: Fix building " "``pycore_bitutils.h`` internal header on old clang version without " @@ -5411,7 +5365,7 @@ msgid "" "Root and Victor Stinner." msgstr "" -#: ../build/NEWS:2804 +#: ../build/NEWS:2839 msgid "" "`bpo-38823 `__: It is no longer possible " "to build the ``_ctypes`` extension module without :c:type:`wchar_t` type: " @@ -5419,95 +5373,95 @@ msgid "" "required to build Python. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2809 +#: ../build/NEWS:2844 msgid "" "`bpo-42087 `__: Support was removed for " "AIX 5.3 and below. See :issue:`40680`." msgstr "" -#: ../build/NEWS:2811 +#: ../build/NEWS:2846 msgid "" "`bpo-40998 `__: Addressed three compiler " "warnings found by undefined behavior sanitizer (ubsan)." msgstr "" -#: ../build/NEWS:2817 +#: ../build/NEWS:2852 msgid "" "`bpo-42120 `__: Remove macro definition " "of ``copysign`` (to ``_copysign``) in headers." msgstr "" -#: ../build/NEWS:2820 +#: ../build/NEWS:2855 msgid "" "`bpo-38506 `__: The Windows launcher now " "properly handles Python 3.10 when listing installed Python versions." msgstr "" -#: ../build/NEWS:2826 +#: ../build/NEWS:2861 msgid "" "`bpo-42504 `__: Fix build on macOS Big " "Sur when MACOSX_DEPLOYMENT_TARGET=11" msgstr "" -#: ../build/NEWS:2828 +#: ../build/NEWS:2863 msgid "" "`bpo-41116 `__: Ensure distutils." "unixxcompiler.find_library_file can find system provided libraries on macOS " "11." msgstr "" -#: ../build/NEWS:2831 +#: ../build/NEWS:2866 msgid "" "`bpo-41100 `__: Add support for macOS 11 " "and Apple Silicon systems." msgstr "" -#: ../build/NEWS:2833 +#: ../build/NEWS:2868 msgid "" "It is now possible to build \"Universal 2\" binaries using \"--enable-" "universalsdk --with-universal-archs=universal2\"." msgstr "" -#: ../build/NEWS:2836 +#: ../build/NEWS:2871 msgid "" "Binaries build on later macOS versions can be deployed back to older " "versions (tested up to macOS 10.9), when using the correct deployment " "target. This is tested using Xcode 11 and later." msgstr "" -#: ../build/NEWS:2840 +#: ../build/NEWS:2875 msgid "" "`bpo-42232 `__: Added Darwin specific " "madvise options to mmap module." msgstr "" -#: ../build/NEWS:2842 +#: ../build/NEWS:2877 msgid "" "`bpo-38443 `__: The ``--enable-" "universalsdk`` and ``--with-universal-archs`` options for the configure " "script now check that the specified architectures can be used." msgstr "" -#: ../build/NEWS:2849 +#: ../build/NEWS:2884 msgid "" "`bpo-42508 `__: Keep IDLE running on " "macOS. Remove obsolete workaround that prevented running files with " "shortcuts when using new universal2 installers built on macOS 11." msgstr "" -#: ../build/NEWS:2853 +#: ../build/NEWS:2888 msgid "" "`bpo-42426 `__: Fix reporting offset of " "the RE error in searchengine." msgstr "" -#: ../build/NEWS:2855 +#: ../build/NEWS:2890 msgid "" "`bpo-42415 `__: Get docstrings for IDLE " "calltips more often by using inspect.getdoc." msgstr "" -#: ../build/NEWS:2861 +#: ../build/NEWS:2896 msgid "" "`bpo-42212 `__: The smelly.py script now " "also checks the Python dynamic library and extension modules, not only the " @@ -5515,62 +5469,62 @@ msgid "" "does." msgstr "" -#: ../build/NEWS:2865 +#: ../build/NEWS:2900 msgid "" "`bpo-36310 `__: Allow :file:`Tools/i18n/" "pygettext.py` to detect calls to ``gettext`` in f-strings." msgstr "" -#: ../build/NEWS:2871 +#: ../build/NEWS:2906 msgid "" "`bpo-42423 `__: The :c:func:" "`PyType_FromSpecWithBases` and :c:func:`PyType_FromModuleAndSpec` functions " "now accept a single class as the *bases* argument." msgstr "" -#: ../build/NEWS:2875 +#: ../build/NEWS:2910 msgid "" "`bpo-1635741 `__: Port :mod:`select` " "extension module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:2878 +#: ../build/NEWS:2913 msgid "" "`bpo-1635741 `__: Port " "_posixsubprocess extension module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:2881 +#: ../build/NEWS:2916 msgid "" "`bpo-1635741 `__: Port _posixshmem " "extension module to multiphase initialization (:pep:`489`)" msgstr "" -#: ../build/NEWS:2884 +#: ../build/NEWS:2919 msgid "" "`bpo-1635741 `__: Port _struct " "extension module to multiphase initialization (:pep:`489`)" msgstr "" -#: ../build/NEWS:2887 +#: ../build/NEWS:2922 msgid "" "`bpo-1635741 `__: Port :mod:`spwd` " "extension module to multiphase initialization (:pep:`489`)" msgstr "" -#: ../build/NEWS:2890 +#: ../build/NEWS:2925 msgid "" "`bpo-1635741 `__: Port :mod:`gc` " "extension module to multiphase initialization (:pep:`489`)" msgstr "" -#: ../build/NEWS:2893 +#: ../build/NEWS:2928 msgid "" "`bpo-1635741 `__: Port _queue " "extension module to multiphase initialization (:pep:`489`)" msgstr "" -#: ../build/NEWS:2896 +#: ../build/NEWS:2931 msgid "" "`bpo-39573 `__: Convert :c:func:" "`Py_TYPE` and :c:func:`Py_SIZE` back to macros to allow using them as an l-" @@ -5579,31 +5533,31 @@ msgid "" "type;`` and ``Py_SIZE(obj) = size;``." msgstr "" -#: ../build/NEWS:2901 +#: ../build/NEWS:2936 msgid "" "`bpo-1635741 `__: Port :mod:`symtable` " "extension module to multiphase initialization (:pep:`489`)" msgstr "" -#: ../build/NEWS:2904 +#: ../build/NEWS:2939 msgid "" "`bpo-1635741 `__: Port :mod:`grp` and :" "mod:`pwd` extension modules to multiphase initialization (:pep:`489`)" msgstr "" -#: ../build/NEWS:2907 +#: ../build/NEWS:2942 msgid "" "`bpo-1635741 `__: Port _random " "extension module to multiphase initialization (:pep:`489`)" msgstr "" -#: ../build/NEWS:2910 +#: ../build/NEWS:2945 msgid "" "`bpo-1635741 `__: Port _hashlib " "extension module to multiphase initialization (:pep:`489`)" msgstr "" -#: ../build/NEWS:2913 +#: ../build/NEWS:2948 msgid "" "`bpo-41713 `__: Removed the undocumented " "``PyOS_InitInterrupts()`` function. Initializing Python already implicitly " @@ -5611,7 +5565,7 @@ msgid "" "Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2917 +#: ../build/NEWS:2952 msgid "" "`bpo-40170 `__: The " "``Py_TRASHCAN_BEGIN`` macro no longer accesses PyTypeObject attributes, but " @@ -5619,7 +5573,7 @@ msgid "" "`_PyTrash_cond()` function which hides implementation details." msgstr "" -#: ../build/NEWS:2921 +#: ../build/NEWS:2956 msgid "" "`bpo-42260 `__: :c:func:`Py_GetPath`, :c:" "func:`Py_GetPrefix`, :c:func:`Py_GetExecPrefix`, :c:func:" @@ -5630,7 +5584,7 @@ msgid "" "Configuration. `. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2929 +#: ../build/NEWS:2964 msgid "" "`bpo-42260 `__: The :c:func:" "`PyConfig_Read` function now only parses :c:member:`PyConfig.argv` arguments " @@ -5640,14 +5594,14 @@ msgid "" "options." msgstr "" -#: ../build/NEWS:2935 +#: ../build/NEWS:2970 msgid "" "`bpo-42262 `__: Added :c:func:" "`Py_NewRef` and :c:func:`Py_XNewRef` functions to increment the reference " "count of an object and return the object. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2939 +#: ../build/NEWS:2974 msgid "" "`bpo-42260 `__: When :c:func:" "`Py_Initialize` is called twice, the second call now updates more :mod:`sys` " @@ -5655,20 +5609,20 @@ msgid "" "by Victor Stinner." msgstr "" -#: ../build/NEWS:2943 +#: ../build/NEWS:2978 msgid "" "`bpo-41832 `__: The :c:func:" "`PyType_FromModuleAndSpec` function now accepts NULL ``tp_doc`` slot." msgstr "" -#: ../build/NEWS:2946 +#: ../build/NEWS:2981 msgid "" "`bpo-1635741 `__: Added :c:func:" "`PyModule_AddObjectRef` function: similar to :c:func:`PyModule_AddObject` " "but don't steal a reference to the value on success. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2950 +#: ../build/NEWS:2985 msgid "" "`bpo-42171 `__: The :c:data:" "`METH_FASTCALL` calling convention is added to the limited API. The " @@ -5677,19 +5631,19 @@ msgid "" "the limited API on Windows." msgstr "" -#: ../build/NEWS:2955 +#: ../build/NEWS:2990 msgid "" "`bpo-42085 `__: Add dedicated entry to " "PyAsyncMethods for sending values" msgstr "" -#: ../build/NEWS:2957 +#: ../build/NEWS:2992 msgid "" "`bpo-41073 `__: :c:func:" "`PyType_GetSlot()` can now accept static types." msgstr "" -#: ../build/NEWS:2959 +#: ../build/NEWS:2994 msgid "" "`bpo-30459 `__: :c:func:" "`PyList_SET_ITEM`, :c:func:`PyTuple_SET_ITEM` and :c:func:`PyCell_SET` " @@ -5699,22 +5653,22 @@ msgid "" "< 0) ...`` test. Patch by Zackery Spytz and Victor Stinner." msgstr "" -#: ../build/NEWS:2968 +#: ../build/NEWS:3003 msgid "Python 3.10.0 alpha 2" msgstr "" -#: ../build/NEWS:2970 +#: ../build/NEWS:3005 msgid "*Release date: 2020-11-03*" msgstr "" -#: ../build/NEWS:2975 +#: ../build/NEWS:3010 msgid "" "`bpo-42103 `__: Prevented potential DoS " "attack via CPU and RAM exhaustion when processing malformed Apple Property " "List files in binary format." msgstr "" -#: ../build/NEWS:2978 +#: ../build/NEWS:3013 msgid "" "`bpo-42051 `__: The :mod:`plistlib` " "module no longer accepts entity declarations in XML plist files to avoid XML " @@ -5722,14 +5676,14 @@ msgid "" "used in regular plist files." msgstr "" -#: ../build/NEWS:2986 +#: ../build/NEWS:3021 msgid "" "`bpo-42236 `__: If the " "``nl_langinfo(CODESET)`` function returns an empty string, Python now uses " "UTF-8 as the filesystem encoding. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:2990 +#: ../build/NEWS:3025 msgid "" "`bpo-42218 `__: Fixed a bug in the PEG " "parser that was causing crashes in debug mode. Now errors are checked in " @@ -5737,33 +5691,33 @@ msgid "" "time and appear as long-distance crashes in other places." msgstr "" -#: ../build/NEWS:2995 +#: ../build/NEWS:3030 msgid "" "`bpo-42214 `__: Fixed a possible crash " "in the PEG parser when checking for the '!=' token in the ``barry_as_flufl`` " "rule. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:2998 +#: ../build/NEWS:3033 msgid "" "`bpo-42206 `__: Propagate and raise the " "errors caused by :c:func:`PyAST_Validate` in the parser." msgstr "" -#: ../build/NEWS:3001 +#: ../build/NEWS:3036 msgid "" "`bpo-41796 `__: The :mod:`ast` module " "internal state is now per interpreter. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:3004 +#: ../build/NEWS:3039 msgid "" "`bpo-42143 `__: Fix handling of errors " "during creation of ``PyFunctionObject``, which resulted in operations on " "uninitialized memory. Patch by Yonatan Goldschmidt." msgstr "" -#: ../build/NEWS:3008 +#: ../build/NEWS:3043 msgid "" "`bpo-41659 `__: Fix a bug in the parser, " "where a curly brace following a `primary` didn't fail immediately. This led " @@ -5772,14 +5726,14 @@ msgid "" "not fail immediately in the REPL." msgstr "" -#: ../build/NEWS:3014 +#: ../build/NEWS:3049 msgid "" "`bpo-42150 `__: Fix possible buffer " "overflow in the new parser when checking for continuation lines. Patch by " "Pablo Galindo." msgstr "" -#: ../build/NEWS:3017 +#: ../build/NEWS:3052 msgid "" "`bpo-42123 `__: Run the parser two " "times. On the first run, disable all the rules that only generate better " @@ -5787,14 +5741,14 @@ msgid "" "parser a second time with those enabled." msgstr "" -#: ../build/NEWS:3021 +#: ../build/NEWS:3056 msgid "" "`bpo-42093 `__: The ``LOAD_ATTR`` " "instruction now uses new \"per opcode cache\" mechanism and it is about 36% " "faster now. Patch by Pablo Galindo and Yury Selivanov." msgstr "" -#: ../build/NEWS:3025 +#: ../build/NEWS:3060 msgid "" "`bpo-42030 `__: Support for the legacy " "AIX-specific shared library loading support has been removed. All versions " @@ -5802,26 +5756,26 @@ msgid "" "mechanism instead." msgstr "" -#: ../build/NEWS:3029 +#: ../build/NEWS:3064 msgid "" "`bpo-41984 `__: The garbage collector " "now tracks all user-defined classes. Patch by Brandt Bucher." msgstr "" -#: ../build/NEWS:3032 +#: ../build/NEWS:3067 msgid "" "`bpo-41993 `__: Fixed potential issues " "with removing not completely initialized module from ``sys.modules`` when " "import fails." msgstr "" -#: ../build/NEWS:3035 +#: ../build/NEWS:3070 msgid "" "`bpo-41979 `__: Star-unpacking is now " "allowed for with item's targets in the PEG parser." msgstr "" -#: ../build/NEWS:3038 +#: ../build/NEWS:3073 msgid "" "`bpo-41974 `__: Removed special methods " "``__int__``, ``__float__``, ``__floordiv__``, ``__mod__``, ``__divmod__``, " @@ -5829,14 +5783,14 @@ msgid "" "class. They always raised a :exc:`TypeError`." msgstr "" -#: ../build/NEWS:3043 +#: ../build/NEWS:3078 msgid "" "`bpo-41902 `__: Micro optimization when " "compute :c:member:`~PySequenceMethods.sq_item` and :c:member:" "`~PyMappingMethods.mp_subscript` of :class:`range`. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:3048 +#: ../build/NEWS:3083 msgid "" "`bpo-41894 `__: When loading a native " "module and a load failure occurs, prevent a possible UnicodeDecodeError when " @@ -5844,13 +5798,13 @@ msgid "" "current locale's encoding." msgstr "" -#: ../build/NEWS:3052 +#: ../build/NEWS:3087 msgid "" "`bpo-41902 `__: Micro optimization for " "range.index if step is 1. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:3055 +#: ../build/NEWS:3090 msgid "" "`bpo-41435 `__: Add `sys." "_current_exceptions()` function to retrieve a dictionary mapping each " @@ -5858,7 +5812,7 @@ msgid "" "at the time the function is called." msgstr "" -#: ../build/NEWS:3059 +#: ../build/NEWS:3094 msgid "" "`bpo-38605 `__: Enable ``from __future__ " "import annotations`` (:pep:`563`) by default. The values found in :attr:" @@ -5866,7 +5820,7 @@ msgid "" "of ``{\"x\": int}``." msgstr "" -#: ../build/NEWS:3066 +#: ../build/NEWS:3101 msgid "" "`bpo-35455 `__: On Solaris, :func:`~time." "thread_time` is now implemented with ``gethrvtime()`` because " @@ -5874,7 +5828,7 @@ msgid "" "Jakub Kulik." msgstr "" -#: ../build/NEWS:3070 +#: ../build/NEWS:3105 msgid "" "`bpo-42233 `__: The :func:`repr` of :mod:" "`typing` types containing :ref:`Generic Alias Types ` " @@ -5882,13 +5836,13 @@ msgid "" "They have now been changed to do so." msgstr "" -#: ../build/NEWS:3075 +#: ../build/NEWS:3110 msgid "" "`bpo-29566 `__: ``binhex.binhex()`` " "consisently writes macOS 9 line endings." msgstr "" -#: ../build/NEWS:3077 +#: ../build/NEWS:3112 msgid "" "`bpo-26789 `__: The :class:`logging." "FileHandler` class now keeps a reference to the builtin :func:`open` " @@ -5897,7 +5851,7 @@ msgid "" "Stinner." msgstr "" -#: ../build/NEWS:3082 +#: ../build/NEWS:3117 msgid "" "`bpo-42157 `__: Removed the " "``unicodedata.ucnhash_CAPI`` attribute which was an internal PyCapsule " @@ -5905,7 +5859,7 @@ msgid "" "the internal C API. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:3086 +#: ../build/NEWS:3121 msgid "" "`bpo-42157 `__: Convert the :mod:" "`unicodedata` extension module to the multiphase initialization API (:pep:" @@ -5913,14 +5867,14 @@ msgid "" "by Mohamed Koubaa and Victor Stinner." msgstr "" -#: ../build/NEWS:3091 +#: ../build/NEWS:3126 msgid "" "`bpo-42146 `__: Fix memory leak in :func:" "`subprocess.Popen` in case an uid (gid) specified in `user` (`group`, " "`extra_groups`) overflows `uid_t` (`gid_t`)." msgstr "" -#: ../build/NEWS:3095 +#: ../build/NEWS:3130 msgid "" "`bpo-42103 `__: :exc:`~plistlib." "InvalidFileException` and :exc:`RecursionError` are now the only errors " @@ -5928,7 +5882,7 @@ msgid "" "TypeError could be raised in some specific cases)." msgstr "" -#: ../build/NEWS:3100 +#: ../build/NEWS:3135 msgid "" "`bpo-41490 `__: In ``importlib." "resources``, ``.path`` method is more aggressive about releasing handles to " @@ -5936,27 +5890,27 @@ msgid "" "open but delete the underlying zip file." msgstr "" -#: ../build/NEWS:3104 +#: ../build/NEWS:3139 msgid "" "`bpo-41052 `__: Pickling heap types " "implemented in C with protocols 0 and 1 raises now an error instead of " "producing incorrect data." msgstr "" -#: ../build/NEWS:3107 +#: ../build/NEWS:3142 msgid "" "`bpo-42089 `__: In ``importlib.metadata." "PackageNotFoundError``, make reference to the package metadata being missing " "to improve the user experience." msgstr "" -#: ../build/NEWS:3110 +#: ../build/NEWS:3145 msgid "" "`bpo-41491 `__: plistlib: fix parsing " "XML plists with hexadecimal integer values" msgstr "" -#: ../build/NEWS:3113 +#: ../build/NEWS:3148 msgid "" "`bpo-42065 `__: Fix an incorrectly " "formatted error from :meth:`_codecs.charmap_decode` when called with a " @@ -5964,34 +5918,34 @@ msgid "" "Bernstein." msgstr "" -#: ../build/NEWS:3117 +#: ../build/NEWS:3152 msgid "" "`bpo-41966 `__: Fix pickling pure " "Python :class:`datetime.time` subclasses. Patch by Dean Inwood." msgstr "" -#: ../build/NEWS:3120 +#: ../build/NEWS:3155 msgid "" "`bpo-19270 `__: :meth:`sched.scheduler." "cancel()` will now cancel the correct event, if two events with same " "priority are scheduled for the same time. Patch by Bar Harel." msgstr "" -#: ../build/NEWS:3124 +#: ../build/NEWS:3159 msgid "" "`bpo-28660 `__: :func:`textwrap.wrap` " "now attempts to break long words after hyphens when " "``break_long_words=True`` and ``break_on_hyphens=True``." msgstr "" -#: ../build/NEWS:3127 +#: ../build/NEWS:3162 msgid "" "`bpo-35823 `__: Use ``vfork()`` instead " "of ``fork()`` for :func:`subprocess.Popen` on Linux to improve performance " "in cases where it is deemed safe." msgstr "" -#: ../build/NEWS:3131 +#: ../build/NEWS:3166 msgid "" "`bpo-42043 `__: Add support for " "``zipfile.Path`` inheritance. ``zipfile.Path.is_file()`` now returns False " @@ -6000,19 +5954,19 @@ msgid "" "``Path`` object is at the root of the zipfile." msgstr "" -#: ../build/NEWS:3137 +#: ../build/NEWS:3172 msgid "" "`bpo-42021 `__: Fix possible ref leaks " "in :mod:`sqlite3` module init." msgstr "" -#: ../build/NEWS:3139 +#: ../build/NEWS:3174 msgid "" "`bpo-39101 `__: Fixed tests using " "IsolatedAsyncioTestCase from hanging on BaseExceptions." msgstr "" -#: ../build/NEWS:3142 +#: ../build/NEWS:3177 msgid "" "`bpo-41976 `__: Fixed a bug that was " "causing :func:`ctypes.util.find_library` to return ``None`` when triying to " @@ -6020,51 +5974,51 @@ msgid "" "is not. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:3146 +#: ../build/NEWS:3181 msgid "" "`bpo-41943 `__: Fix bug where TestCase." "assertLogs doesn't correctly filter messages by level." msgstr "" -#: ../build/NEWS:3149 +#: ../build/NEWS:3184 msgid "" "`bpo-41923 `__: Implement :pep:`613`, " "introducing :data:`typing.TypeAlias` annotation." msgstr "" -#: ../build/NEWS:3152 +#: ../build/NEWS:3187 msgid "" "`bpo-41905 `__: A new function in abc: " "*update_abstractmethods* to re-calculate an abstract class's abstract " "status. In addition, *dataclass* has been changed to call this function." msgstr "" -#: ../build/NEWS:3156 +#: ../build/NEWS:3191 msgid "" "`bpo-23706 `__: Added *newline* " "parameter to ``pathlib.Path.write_text()``." msgstr "" -#: ../build/NEWS:3158 +#: ../build/NEWS:3193 msgid "" "`bpo-41876 `__: Tkinter font class repr " "uses font name" msgstr "" -#: ../build/NEWS:3160 +#: ../build/NEWS:3195 msgid "" "`bpo-41831 `__: ``str()`` for the " "``type`` attribute of the ``tkinter.Event`` object always returns now the " "numeric code returned by Tk instead of the name of the event type." msgstr "" -#: ../build/NEWS:3164 +#: ../build/NEWS:3199 msgid "" "`bpo-39337 `__: :func:`encodings." "normalize_encoding` now ignores non-ASCII characters." msgstr "" -#: ../build/NEWS:3167 +#: ../build/NEWS:3202 msgid "" "`bpo-41747 `__: Ensure all methods that " "generated from :func:`dataclasses.dataclass` objects now have the proper " @@ -6072,20 +6026,20 @@ msgid "" "Batuhan Taskaya." msgstr "" -#: ../build/NEWS:3171 +#: ../build/NEWS:3206 msgid "" "`bpo-30681 `__: Handle exceptions caused " "by unparseable date headers when using email \"default\" policy. Patch by " "Tim Bell, Georges Toth" msgstr "" -#: ../build/NEWS:3174 +#: ../build/NEWS:3209 msgid "" "`bpo-41586 `__: Add F_SETPIPE_SZ and " "F_GETPIPE_SZ to fcntl module. Allow setting pipesize on subprocess.Popen." msgstr "" -#: ../build/NEWS:3177 +#: ../build/NEWS:3212 msgid "" "`bpo-41229 `__: Add ``contextlib." "aclosing`` for deterministic cleanup of async generators which is analogous " @@ -6093,26 +6047,26 @@ msgid "" "John Belmonte." msgstr "" -#: ../build/NEWS:3181 +#: ../build/NEWS:3216 msgid "" "`bpo-16396 `__: Allow ``ctypes." "wintypes`` to be imported on non-Windows systems." msgstr "" -#: ../build/NEWS:3184 +#: ../build/NEWS:3219 msgid "" "`bpo-4356 `__: Add a key function to the " "bisect module." msgstr "" -#: ../build/NEWS:3186 +#: ../build/NEWS:3221 msgid "" "`bpo-40592 `__: :func:`shutil.which` now " "ignores empty entries in :envvar:`PATHEXT` instead of treating them as a " "match." msgstr "" -#: ../build/NEWS:3189 +#: ../build/NEWS:3224 msgid "" "`bpo-40492 `__: Fix ``--outfile`` for :" "mod:`cProfile` / :mod:`profile` not writing the output file in the original " @@ -6120,21 +6074,21 @@ msgid "" "by Anthony Sottile." msgstr "" -#: ../build/NEWS:3193 +#: ../build/NEWS:3228 msgid "" "`bpo-34204 `__: The :mod:`shelve` module " "now uses :data:`pickle.DEFAULT_PROTOCOL` by default instead of :mod:`pickle` " "protocol ``3``." msgstr "" -#: ../build/NEWS:3197 +#: ../build/NEWS:3232 msgid "" "`bpo-27321 `__: Fixed KeyError exception " "when flattening an email to a string attempts to replace a non-existent " "Content-Transfer-Encoding header." msgstr "" -#: ../build/NEWS:3200 +#: ../build/NEWS:3235 msgid "" "`bpo-38976 `__: The :mod:`http." "cookiejar` module now supports the parsing of cookies in CURL-style " @@ -6143,26 +6097,26 @@ msgid "" "entries." msgstr "" -#: ../build/NEWS:3205 +#: ../build/NEWS:3240 msgid "" "Additionally, the HTTP Only attribute is persisted in the object, and will " "be correctly written to file if the MozillaCookieJar object is subsequently " "dumped." msgstr "" -#: ../build/NEWS:3212 +#: ../build/NEWS:3247 msgid "" "`bpo-42061 `__: Document __format__ " "functionality for IP addresses." msgstr "" -#: ../build/NEWS:3214 +#: ../build/NEWS:3249 msgid "" "`bpo-41910 `__: Document the default " "implementation of `object.__eq__`." msgstr "" -#: ../build/NEWS:3216 +#: ../build/NEWS:3251 msgid "" "`bpo-42010 `__: Clarify that " "subscription expressions are also valid for certain :term:`classes ` " @@ -6170,103 +6124,103 @@ msgid "" "classes and types if the classmethod :meth:`__class_getitem__` is provided." msgstr "" -#: ../build/NEWS:3221 +#: ../build/NEWS:3256 msgid "" "`bpo-41805 `__: Documented :ref:`generic " "alias type ` and :data:`types.GenericAlias`. Also added " "an entry in glossary for :term:`generic types `." msgstr "" -#: ../build/NEWS:3225 +#: ../build/NEWS:3260 msgid "" "`bpo-39693 `__: Fix tarfile's " "extractfile documentation" msgstr "" -#: ../build/NEWS:3227 +#: ../build/NEWS:3262 msgid "" "`bpo-39416 `__: Document some " "restrictions on the default string representations of numeric classes." msgstr "" -#: ../build/NEWS:3233 +#: ../build/NEWS:3268 msgid "" "`bpo-41739 `__: Fix test_logging." "test_race_between_set_target_and_flush(): the test now waits until all " "threads complete to avoid leaking running threads." msgstr "" -#: ../build/NEWS:3237 +#: ../build/NEWS:3272 msgid "" "`bpo-41970 `__: Avoid a test failure in " "``test_lib2to3`` if the module has already imported at the time the test " "executes. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:3240 +#: ../build/NEWS:3275 msgid "" "`bpo-41944 `__: Tests for CJK codecs no " "longer call ``eval()`` on content received via HTTP." msgstr "" -#: ../build/NEWS:3243 +#: ../build/NEWS:3278 msgid "" "`bpo-41306 `__: Fixed a failure in " "``test_tk.test_widgets.ScaleTest`` happening when executing the test with Tk " "8.6.10." msgstr "" -#: ../build/NEWS:3249 +#: ../build/NEWS:3284 msgid "" "`bpo-38980 `__: Add ``-fno-semantic-" "interposition`` to both the compile and link line when building with ``--" "enable-optimizations``. Patch by Victor Stinner and Pablo Galindo." msgstr "" -#: ../build/NEWS:3256 +#: ../build/NEWS:3291 msgid "" "`bpo-38439 `__: Updates the icons for " "IDLE in the Windows Store package." msgstr "" -#: ../build/NEWS:3258 +#: ../build/NEWS:3293 msgid "" "`bpo-38252 `__: Use 8-byte step to " "detect ASCII sequence in 64-bit Windows build." msgstr "" -#: ../build/NEWS:3261 +#: ../build/NEWS:3296 msgid "" "`bpo-39107 `__: Update Tcl and Tk to " "8.6.10 in Windows installer." msgstr "" -#: ../build/NEWS:3263 +#: ../build/NEWS:3298 msgid "" "`bpo-41557 `__: Update Windows installer " "to use SQLite 3.33.0." msgstr "" -#: ../build/NEWS:3265 +#: ../build/NEWS:3300 msgid "" "`bpo-38324 `__: Avoid Unicode errors " "when accessing certain locale data on Windows." msgstr "" -#: ../build/NEWS:3271 +#: ../build/NEWS:3306 msgid "" "`bpo-41471 `__: Ignore invalid prefix " "lengths in system proxy excludes." msgstr "" -#: ../build/NEWS:3276 +#: ../build/NEWS:3311 msgid "" "`bpo-33987 `__: Mostly finish using ttk " "widgets, mainly for editor, settings, and searches. Some patches by Mark " "Roseman." msgstr "" -#: ../build/NEWS:3279 +#: ../build/NEWS:3314 msgid "" "`bpo-40511 `__: Typing opening and " "closing parentheses inside the parentheses of a function call will no longer " @@ -6274,28 +6228,28 @@ msgid "" "when typed in a string literal." msgstr "" -#: ../build/NEWS:3283 +#: ../build/NEWS:3318 msgid "" "`bpo-38439 `__: Add a 256×256 pixel IDLE " "icon to the Windows .ico file. Created by Andrew Clover. Remove the low-" "color gif variations from the .ico file." msgstr "" -#: ../build/NEWS:3289 +#: ../build/NEWS:3324 msgid "" "`bpo-42157 `__: The private " "``_PyUnicode_Name_CAPI`` structure of the PyCapsule API ``unicodedata." "ucnhash_CAPI`` has been moved to the internal C API. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:3293 +#: ../build/NEWS:3328 msgid "" "`bpo-42015 `__: Fix potential crash in " "deallocating method objects when dynamically allocated `PyMethodDef`'s " "lifetime is managed through the ``self`` argument of a `PyCFunction`." msgstr "" -#: ../build/NEWS:3297 +#: ../build/NEWS:3332 msgid "" "`bpo-40423 `__: The :mod:`subprocess` " "module and ``os.closerange`` will now use the ``close_range(low, high, " @@ -6303,68 +6257,68 @@ msgid "" "of descriptors." msgstr "" -#: ../build/NEWS:3301 +#: ../build/NEWS:3336 msgid "" "`bpo-41845 `__: :c:func:" "`PyObject_GenericGetDict` is available again in the limited API when " "targeting 3.10 or later." msgstr "" -#: ../build/NEWS:3304 +#: ../build/NEWS:3339 msgid "" "`bpo-40422 `__: Add `_Py_closerange` " "function to provide performant closing of a range of file descriptors." msgstr "" -#: ../build/NEWS:3307 +#: ../build/NEWS:3342 msgid "" "`bpo-41986 `__: :c:data:" "`Py_FileSystemDefaultEncodeErrors` and :c:data:`Py_UTF8Mode` are available " "again in limited API." msgstr "" -#: ../build/NEWS:3310 +#: ../build/NEWS:3345 msgid "" "`bpo-41756 `__: Add `PyIter_Send` " "function to allow sending value into generator/coroutine/iterator without " "raising StopIteration exception to signal return." msgstr "" -#: ../build/NEWS:3314 +#: ../build/NEWS:3349 msgid "" "`bpo-41784 `__: Added " "``PyUnicode_AsUTF8AndSize`` to the limited C API." msgstr "" -#: ../build/NEWS:3318 +#: ../build/NEWS:3353 msgid "Python 3.10.0 alpha 1" msgstr "" -#: ../build/NEWS:3320 +#: ../build/NEWS:3355 msgid "*Release date: 2020-10-05*" msgstr "" -#: ../build/NEWS:3325 +#: ../build/NEWS:3360 msgid "" "`bpo-41304 `__: Fixes `python3x._pth` " "being ignored on Windows, caused by the fix for :issue:`29778` " "(CVE-2020-15801)." msgstr "" -#: ../build/NEWS:3328 +#: ../build/NEWS:3363 msgid "" "`bpo-41162 `__: Audit hooks are now " "cleared later during finalization to avoid missing events." msgstr "" -#: ../build/NEWS:3331 +#: ../build/NEWS:3366 msgid "" "`bpo-29778 `__: Ensure :file:`python3." "dll` is loaded from correct locations when Python is embedded " "(CVE-2020-15523)." msgstr "" -#: ../build/NEWS:3334 +#: ../build/NEWS:3369 msgid "" "`bpo-41004 `__: The __hash__() methods " "of ipaddress.IPv4Interface and ipaddress.IPv6Interface incorrectly " @@ -6373,122 +6327,122 @@ msgid "" "for the tuple of (address, mask length, network address)." msgstr "" -#: ../build/NEWS:3340 +#: ../build/NEWS:3375 msgid "" "`bpo-39603 `__: Prevent http header " "injection by rejecting control characters in http.client.putrequest(...)." msgstr "" -#: ../build/NEWS:3346 +#: ../build/NEWS:3381 msgid "" "`bpo-41909 `__: Fixed stack overflow in :" "func:`issubclass` and :func:`isinstance` when getting the ``__bases__`` " "attribute leads to infinite recursion." msgstr "" -#: ../build/NEWS:3350 +#: ../build/NEWS:3385 msgid "" "`bpo-41922 `__: Speed up calls to " "``reversed()`` by using the :pep:`590` ``vectorcall`` calling convention. " "Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:3353 +#: ../build/NEWS:3388 msgid "" "`bpo-41873 `__: Calls to ``float()`` are " "now faster due to the ``vectorcall`` calling convention. Patch by Dennis " "Sweeney." msgstr "" -#: ../build/NEWS:3356 +#: ../build/NEWS:3391 msgid "" "`bpo-41870 `__: Speed up calls to " "``bool()`` by using the :pep:`590` ``vectorcall`` calling convention. Patch " "by Dong-hee Na." msgstr "" -#: ../build/NEWS:3359 +#: ../build/NEWS:3394 msgid "" "`bpo-1635741 `__: Port the :mod:" "`_bisect` module to the multi-phase initialization API (:pep:`489`)." msgstr "" -#: ../build/NEWS:3362 +#: ../build/NEWS:3397 msgid "" "`bpo-39934 `__: Correctly count control " "blocks in 'except' in compiler. Ensures that a syntax error, rather a fatal " "error, occurs for deeply nested, named exception handlers." msgstr "" -#: ../build/NEWS:3366 +#: ../build/NEWS:3401 msgid "" "`bpo-41780 `__: Fix :meth:`__dir__` of :" "class:`types.GenericAlias`. Patch by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:3369 +#: ../build/NEWS:3404 msgid "" "`bpo-1635741 `__: Port the :mod:" "`_lsprof` extension module to multi-phase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:3372 +#: ../build/NEWS:3407 msgid "" "`bpo-1635741 `__: Port the :mod:" "`cmath` extension module to multi-phase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:3375 +#: ../build/NEWS:3410 msgid "" "`bpo-1635741 `__: Port the :mod:" "`_scproxy` extension module to multi-phase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:3378 +#: ../build/NEWS:3413 msgid "" "`bpo-1635741 `__: Port the :mod:" "`termios` extension module to multi-phase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:3381 +#: ../build/NEWS:3416 msgid "" "`bpo-1635741 `__: Convert the :mod:" "`_sha256` extension module types to heap types." msgstr "" -#: ../build/NEWS:3384 +#: ../build/NEWS:3419 msgid "" "`bpo-41690 `__: Fix a possible stack " "overflow in the parser when parsing functions and classes with a huge " "ammount of arguments. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:3388 +#: ../build/NEWS:3423 msgid "" "`bpo-1635741 `__: Port the :mod:" "`_overlapped` extension module to multi-phase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:3391 +#: ../build/NEWS:3426 msgid "" "`bpo-1635741 `__: Port the :mod:" "`_curses_panel` extension module to multi-phase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:3394 +#: ../build/NEWS:3429 msgid "" "`bpo-1635741 `__: Port the :mod:" "`_opcode` extension module to multi-phase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:3397 +#: ../build/NEWS:3432 msgid "" "`bpo-41681 `__: Fixes the wrong error " "description in the error raised by using 2 `,` in format string in f-string " "and :meth:`str.format`." msgstr "" -#: ../build/NEWS:3400 +#: ../build/NEWS:3435 msgid "" "`bpo-41675 `__: The implementation of :" "func:`signal.siginterrupt` now uses :c:func:`sigaction` (if it is available " @@ -6496,7 +6450,7 @@ msgid "" "Pablo Galindo." msgstr "" -#: ../build/NEWS:3404 +#: ../build/NEWS:3439 msgid "" "`bpo-41670 `__: Prevent line trace being " "skipped on platforms not compiled with ``USE_COMPUTED_GOTOS``. Fixes issue " @@ -6504,20 +6458,20 @@ msgid "" "Windows." msgstr "" -#: ../build/NEWS:3408 +#: ../build/NEWS:3443 msgid "" "`bpo-41654 `__: Fix a crash that " "occurred when destroying subclasses of :class:`MemoryError`. Patch by Pablo " "Galindo." msgstr "" -#: ../build/NEWS:3411 +#: ../build/NEWS:3446 msgid "" "`bpo-1635741 `__: Port the :mod:`zlib` " "extension module to multi-phase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:3414 +#: ../build/NEWS:3449 msgid "" "`bpo-41631 `__: The ``_ast`` module uses " "again a global state. Using a module state per module instance is causing " @@ -6526,90 +6480,90 @@ msgid "" "that ``import _ast`` always return a fully initialized ``_ast`` module." msgstr "" -#: ../build/NEWS:3420 +#: ../build/NEWS:3455 msgid "" "`bpo-40077 `__: Convert :mod:`_operator` " "to use :c:func:`PyType_FromSpec`." msgstr "" -#: ../build/NEWS:3422 +#: ../build/NEWS:3457 msgid "" "`bpo-1653741 `__: Port :mod:`_sha3` to " "multi-phase init. Convert static types to heap types." msgstr "" -#: ../build/NEWS:3425 +#: ../build/NEWS:3460 msgid "" "`bpo-1635741 `__: Port the :mod:" "`_blake2` extension module to the multi-phase initialization API (:pep:" "`489`)." msgstr "" -#: ../build/NEWS:3428 +#: ../build/NEWS:3463 msgid "" "`bpo-41533 `__: Free the stack allocated " "in ``va_build_stack`` if ``do_mkstack`` fails and the stack is not a " "``small_stack``." msgstr "" -#: ../build/NEWS:3431 +#: ../build/NEWS:3466 msgid "" "`bpo-41531 `__: Fix a bug that was " "dropping keys when compiling dict literals with more than 0xFFFF elements. " "Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:3434 +#: ../build/NEWS:3469 msgid "" "`bpo-41525 `__: The output of ``python --" "help`` contains now only ASCII characters." msgstr "" -#: ../build/NEWS:3437 +#: ../build/NEWS:3472 msgid "" "`bpo-1635741 `__: Port the :mod:" "`_sha1`, :mod:`_sha512`, and :mod:`_md5` extension modules to multi-phase " "initialization API (:pep:`489`)." msgstr "" -#: ../build/NEWS:3440 +#: ../build/NEWS:3475 msgid "" "`bpo-41431 `__: Optimize " "``dict_merge()`` for copying dict (e.g. ``dict(d)`` and ``{}.update(d)``)." msgstr "" -#: ../build/NEWS:3443 +#: ../build/NEWS:3478 msgid "" "`bpo-41428 `__: Implement PEP 604. This " "supports (int | str) etc. in place of Union[str, int]." msgstr "" -#: ../build/NEWS:3446 +#: ../build/NEWS:3481 msgid "" "`bpo-41340 `__: Removed fallback " "implementation for ``strdup``." msgstr "" -#: ../build/NEWS:3448 +#: ../build/NEWS:3483 msgid "" "`bpo-38156 `__: Handle interrupts that " "come after EOF correctly in ``PyOS_StdioReadline``." msgstr "" -#: ../build/NEWS:3451 +#: ../build/NEWS:3486 msgid "" "`bpo-41342 `__: :func:`round` with " "integer argument is now faster (9--60%)." msgstr "" -#: ../build/NEWS:3453 +#: ../build/NEWS:3488 msgid "" "`bpo-41334 `__: Constructors :func:" "`str`, :func:`bytes` and :func:`bytearray` are now faster (around 30--40% " "for small objects)." msgstr "" -#: ../build/NEWS:3456 +#: ../build/NEWS:3491 msgid "" "`bpo-41295 `__: Resolve a regression in " "CPython 3.8.4 where defining \"__setattr__\" in a multi-inheritance setup " @@ -6617,38 +6571,38 @@ msgid "" "were involved in the base types." msgstr "" -#: ../build/NEWS:3461 +#: ../build/NEWS:3496 msgid "" "`bpo-41323 `__: Bytecode optimizations " "are performed directly on the control flow graph. This will result in " "slightly more compact code objects in some circumstances." msgstr "" -#: ../build/NEWS:3465 +#: ../build/NEWS:3500 msgid "" "`bpo-41247 `__: Always cache the running " "loop holder when running ``asyncio.set_running_loop``." msgstr "" -#: ../build/NEWS:3468 +#: ../build/NEWS:3503 msgid "" "`bpo-41252 `__: Fix incorrect " "refcounting in _ssl.c's ``_servername_callback()``." msgstr "" -#: ../build/NEWS:3471 +#: ../build/NEWS:3506 msgid "" "`bpo-1635741 `__: Port :mod:" "`multiprocessing` to multi-phase initialization" msgstr "" -#: ../build/NEWS:3473 +#: ../build/NEWS:3508 msgid "" "`bpo-1635741 `__: Port :mod:`winapi` " "to multiphase initialization" msgstr "" -#: ../build/NEWS:3475 +#: ../build/NEWS:3510 msgid "" "`bpo-41215 `__: Use non-NULL default " "values in the PEG parser keyword list to overcome a bug that was preventing " @@ -6656,7 +6610,7 @@ msgid "" "Pablo Galindo." msgstr "" -#: ../build/NEWS:3479 +#: ../build/NEWS:3514 msgid "" "`bpo-41218 `__: Python 3.8.3 had a " "regression where compiling with ast.PyCF_ALLOW_TOP_LEVEL_AWAIT would " @@ -6664,58 +6618,58 @@ msgid "" "comprehension making use of async/await will tagged as so." msgstr "" -#: ../build/NEWS:3484 +#: ../build/NEWS:3519 msgid "" "`bpo-1635741 `__: Port :mod:" "`faulthandler` to multiphase initialization." msgstr "" -#: ../build/NEWS:3486 +#: ../build/NEWS:3521 msgid "" "`bpo-1635741 `__: Port :mod:`sha256` " "to multiphase initialization" msgstr "" -#: ../build/NEWS:3488 +#: ../build/NEWS:3523 msgid "" "`bpo-41175 `__: Guard against a NULL " "pointer dereference within bytearrayobject triggered by the ``bytearray() + " "bytearray()`` operation." msgstr "" -#: ../build/NEWS:3491 +#: ../build/NEWS:3526 msgid "" "`bpo-41100 `__: add arm64 to the " "allowable Mac OS arches in mpdecimal.h" msgstr "" -#: ../build/NEWS:3493 +#: ../build/NEWS:3528 msgid "" "`bpo-41094 `__: Fix decoding errors with " "audit when open files with non-ASCII names on non-UTF-8 locale." msgstr "" -#: ../build/NEWS:3496 +#: ../build/NEWS:3531 msgid "" "`bpo-39960 `__: The \"hackcheck\" that " "prevents sneaking around a type's __setattr__() by calling the superclass " "method was rewritten to allow C implemented heap types." msgstr "" -#: ../build/NEWS:3500 +#: ../build/NEWS:3535 msgid "" "`bpo-41084 `__: Prefix the error message " "with 'f-string: ', when parsing an f-string expression which throws a :exc:" "`SyntaxError`." msgstr "" -#: ../build/NEWS:3503 +#: ../build/NEWS:3538 msgid "" "`bpo-40521 `__: Empty frozensets are no " "longer singletons." msgstr "" -#: ../build/NEWS:3505 +#: ../build/NEWS:3540 msgid "" "`bpo-41076 `__: Pre-feed the parser with " "the location of the f-string expression, not the f-string itself, which " @@ -6723,26 +6677,26 @@ msgid "" "is completed." msgstr "" -#: ../build/NEWS:3509 +#: ../build/NEWS:3544 msgid "" "`bpo-41056 `__: Fixes a reference to " "deallocated stack space during startup when constructing sys.path involving " "a relative symlink when code was supplied via -c. (discovered via Coverity)" msgstr "" -#: ../build/NEWS:3513 +#: ../build/NEWS:3548 msgid "" "`bpo-41061 `__: Fix incorrect " "expressions and asserts in hashtable code and tests." msgstr "" -#: ../build/NEWS:3516 +#: ../build/NEWS:3551 msgid "" "`bpo-41052 `__: Opt out serialization/" "deserialization for _random.Random" msgstr "" -#: ../build/NEWS:3518 +#: ../build/NEWS:3553 msgid "" "`bpo-40939 `__: Rename `PyPegen*` " "functions to `PyParser*`, so that we can remove the old set of `PyParser*` " @@ -6750,7 +6704,7 @@ msgid "" "compatible." msgstr "" -#: ../build/NEWS:3522 +#: ../build/NEWS:3557 msgid "" "`bpo-35975 `__: Stefan Behnel reported " "that cf_feature_version is used even when PyCF_ONLY_AST is not set. This is " @@ -6758,39 +6712,39 @@ msgid "" "fixed." msgstr "" -#: ../build/NEWS:3526 +#: ../build/NEWS:3561 msgid "" "`bpo-40939 `__: Remove the remaining " "files from the old parser and the :mod:`symbol` module." msgstr "" -#: ../build/NEWS:3529 +#: ../build/NEWS:3564 msgid "" "`bpo-40077 `__: Convert :mod:`_bz2` to " "use :c:func:`PyType_FromSpec`." msgstr "" -#: ../build/NEWS:3531 +#: ../build/NEWS:3566 msgid "" "`bpo-41006 `__: The ``encodings." "latin_1`` module is no longer imported at startup. Now it is only imported " "when it is the filesystem encoding or the stdio encoding." msgstr "" -#: ../build/NEWS:3535 +#: ../build/NEWS:3570 msgid "" "`bpo-40636 `__: :func:`zip` now " "supports :pep:`618`'s ``strict`` parameter, which raises a :exc:`ValueError` " "if the arguments are exhausted at different lengths. Patch by Brandt Bucher." msgstr "" -#: ../build/NEWS:3539 +#: ../build/NEWS:3574 msgid "" "`bpo-1635741 `__: Port :mod:`_gdbm` to " "multiphase initialization." msgstr "" -#: ../build/NEWS:3541 +#: ../build/NEWS:3576 msgid "" "`bpo-40985 `__: Fix a bug that caused " "the :exc:`SyntaxError` text to be empty when a file ends with a line ending " @@ -6798,47 +6752,47 @@ msgid "" "contain the text of the last line." msgstr "" -#: ../build/NEWS:3545 +#: ../build/NEWS:3580 msgid "" "`bpo-40958 `__: Fix a possible buffer " "overflow in the PEG parser when gathering information for emitting syntax " "errors. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:3548 +#: ../build/NEWS:3583 msgid "" "`bpo-1635741 `__: Port :mod:`_dbm` to " "multiphase initialization." msgstr "" -#: ../build/NEWS:3550 +#: ../build/NEWS:3585 msgid "" "`bpo-40957 `__: Fix refleak in " "_Py_fopen_obj() when PySys_Audit() fails" msgstr "" -#: ../build/NEWS:3552 +#: ../build/NEWS:3587 msgid "" "`bpo-40950 `__: Add a state to the :mod:" "`nis` module (:pep:`3121`) and apply the multiphase initialization. Patch by " "Dong-hee Na." msgstr "" -#: ../build/NEWS:3555 +#: ../build/NEWS:3590 msgid "" "`bpo-40947 `__: The Python :ref:`Path " "Configuration ` now takes :c:member:`PyConfig.platlibdir` " "in account." msgstr "" -#: ../build/NEWS:3558 +#: ../build/NEWS:3593 msgid "" "`bpo-40939 `__: Remove the old parser, " "the :mod:`parser` module and all associated support code, command-line " "options and environment variables. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:3562 +#: ../build/NEWS:3597 msgid "" "`bpo-40847 `__: Fix a bug where a line " "with only a line continuation character is not considered a blank line at " @@ -6849,80 +6803,80 @@ msgid "" "`SyntaxError`." msgstr "" -#: ../build/NEWS:3569 +#: ../build/NEWS:3604 msgid "" "`bpo-40890 `__: Each dictionary view now " "has a ``mapping`` attribute that provides a :class:`types.MappingProxyType` " "wrapping the original dictionary. Patch contributed by Dennis Sweeney." msgstr "" -#: ../build/NEWS:3573 +#: ../build/NEWS:3608 msgid "" "`bpo-40889 `__: Improved the performance " "of symmetric difference operations on dictionary item views. Patch by " "Dennis Sweeney." msgstr "" -#: ../build/NEWS:3576 +#: ../build/NEWS:3611 msgid "" "`bpo-40904 `__: Fix possible segfault in " "the new PEG parser when parsing f-string containing yield statements with no " "value (:code:`f\"{yield}\"`). Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:3580 +#: ../build/NEWS:3615 msgid "" "`bpo-40903 `__: Fixed a possible " "segfault in the new PEG parser when producing error messages for invalid " "assignments of the form :code:`p=p=`. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:3584 +#: ../build/NEWS:3619 msgid "" "`bpo-40880 `__: Fix invalid memory read " "in the new parser when checking newlines in string literals. Patch by Pablo " "Galindo." msgstr "" -#: ../build/NEWS:3587 +#: ../build/NEWS:3622 msgid "" "`bpo-40883 `__: Fix memory leak in when " "parsing f-strings in the new parser. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:3590 +#: ../build/NEWS:3625 msgid "" "`bpo-40870 `__: Raise :exc:`ValueError` " "when validating custom AST's where the constants ``True``, ``False`` and " "``None`` are used within a :class:`ast.Name` node." msgstr "" -#: ../build/NEWS:3594 +#: ../build/NEWS:3629 msgid "" "`bpo-40854 `__: Allow overriding :data:" "`sys.platlibdir` via a new :envvar:`PYTHONPLATLIBDIR` environment variable." msgstr "" -#: ../build/NEWS:3597 +#: ../build/NEWS:3632 msgid "" "`bpo-40826 `__: Fix GIL usage in :c:func:" "`PyOS_Readline`: lock the GIL to set an exception and pass the Python thread " "state when checking if there is a pending signal." msgstr "" -#: ../build/NEWS:3601 +#: ../build/NEWS:3636 msgid "" "`bpo-1635741 `__: Port :mod:`fcntl` to " "multiphase initialization." msgstr "" -#: ../build/NEWS:3603 +#: ../build/NEWS:3638 msgid "" "`bpo-19468 `__: Delete unnecessary " "instance check in importlib.reload(). Patch by Furkan Önder." msgstr "" -#: ../build/NEWS:3606 +#: ../build/NEWS:3641 msgid "" "`bpo-40824 `__: Unexpected errors in " "calling the ``__iter__`` method are no longer masked by ``TypeError`` in " @@ -6931,7 +6885,7 @@ msgid "" "module." msgstr "" -#: ../build/NEWS:3611 +#: ../build/NEWS:3646 msgid "" "`bpo-40792 `__: Attributes ``start``, " "``stop`` and ``step`` of the :class:`range` object now always has exact " @@ -6939,13 +6893,13 @@ msgid "" "subclass of ``int``." msgstr "" -#: ../build/NEWS:3615 +#: ../build/NEWS:3650 msgid "" "`bpo-40780 `__: Fix a corner case where " "g-style string formatting of a float failed to remove trailing zeros." msgstr "" -#: ../build/NEWS:3618 +#: ../build/NEWS:3653 msgid "" "`bpo-38964 `__: When there's a :exc:" "`SyntaxError` in the expression part of an fstring, the filename attribute " @@ -6953,13 +6907,13 @@ msgid "" "fstring resides in." msgstr "" -#: ../build/NEWS:3622 +#: ../build/NEWS:3657 msgid "" "`bpo-40750 `__: Support the \"-d\" debug " "flag in the new PEG parser. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:3625 +#: ../build/NEWS:3660 msgid "" "`bpo-40217 `__: Instances of types " "created with :c:func:`PyType_FromSpecWithBases` will no longer automatically " @@ -6968,78 +6922,78 @@ msgid "" "by Pablo Galindo." msgstr "" -#: ../build/NEWS:3631 +#: ../build/NEWS:3666 msgid "" "`bpo-39573 `__: :c:func:`Py_TYPE()` is " "changed to the inline static function. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:3634 +#: ../build/NEWS:3669 msgid "" "`bpo-40696 `__: Fix a hang that can " "arise after :meth:`generator.throw` due to a cycle in the exception context " "chain." msgstr "" -#: ../build/NEWS:3637 +#: ../build/NEWS:3672 msgid "" "`bpo-40521 `__: Each interpreter now its " "has own free lists, singletons and caches:" msgstr "" -#: ../build/NEWS:3640 +#: ../build/NEWS:3675 msgid "" "Free lists: float, tuple, list, dict, frame, context, asynchronous " "generator, MemoryError." msgstr "" -#: ../build/NEWS:3642 +#: ../build/NEWS:3677 msgid "" "Singletons: empty tuple, empty bytes string, empty Unicode string, single " "byte character, single Unicode (latin1) character." msgstr "" -#: ../build/NEWS:3644 +#: ../build/NEWS:3679 msgid "Slice cache." msgstr "" -#: ../build/NEWS:3646 +#: ../build/NEWS:3681 msgid "They are no longer shared by all interpreters." msgstr "" -#: ../build/NEWS:3648 +#: ../build/NEWS:3683 msgid "" "`bpo-40679 `__: Certain :exc:`TypeError` " "messages about missing or extra arguments now include the function's :term:" "`qualified name`. Patch by Dennis Sweeney." msgstr "" -#: ../build/NEWS:3652 +#: ../build/NEWS:3687 msgid "" "`bpo-29590 `__: Make the stack trace " "correct after calling :meth:`generator.throw` on a generator that has " "yielded from a ``yield from``." msgstr "" -#: ../build/NEWS:3656 +#: ../build/NEWS:3691 msgid "" "`bpo-4022 `__: Improve performance of " "generators by not raising internal StopIteration." msgstr "" -#: ../build/NEWS:3659 +#: ../build/NEWS:3694 msgid "" "`bpo-1635741 `__: Port :mod:`mmap` to " "multiphase initialization." msgstr "" -#: ../build/NEWS:3661 +#: ../build/NEWS:3696 msgid "" "`bpo-1635741 `__: Port :mod:`_lzma` to " "multiphase initialization." msgstr "" -#: ../build/NEWS:3663 +#: ../build/NEWS:3698 msgid "" "`bpo-37999 `__: Builtin and extension " "functions that take integer arguments no longer accept :class:`~decimal." @@ -7048,14 +7002,14 @@ msgid "" "__int__` method but do not have the :meth:`~object.__index__` method)." msgstr "" -#: ../build/NEWS:3669 +#: ../build/NEWS:3704 msgid "" "`bpo-29882 `__: Add :meth:`int." "bit_count()`, counting the number of ones in the binary representation of an " "integer. Patch by Niklas Fiekas." msgstr "" -#: ../build/NEWS:3672 +#: ../build/NEWS:3707 msgid "" "`bpo-36982 `__: Use ncurses extended " "color functions when available to support terminals with 256 colors, and add " @@ -7063,54 +7017,54 @@ msgid "" "whether extended color support is provided by the underlying ncurses library." msgstr "" -#: ../build/NEWS:3677 +#: ../build/NEWS:3712 msgid "" "`bpo-19569 `__: Add the private macros " "``_Py_COMP_DIAG_PUSH``, ``_Py_COMP_DIAG_IGNORE_DEPR_DECLS``, and " "``_Py_COMP_DIAG_POP``." msgstr "" -#: ../build/NEWS:3680 +#: ../build/NEWS:3715 msgid "" "`bpo-26680 `__: The int type now " "supports the x.is_integer() method for compatibility with float." msgstr "" -#: ../build/NEWS:3686 +#: ../build/NEWS:3721 msgid "" "`bpo-41900 `__: C14N 2.0 serialisation " "in xml.etree.ElementTree failed for unprefixed attributes when a default " "namespace was defined." msgstr "" -#: ../build/NEWS:3689 +#: ../build/NEWS:3724 msgid "" "`bpo-41887 `__: Strip leading spaces and " "tabs on :func:`ast.literal_eval`. Also document stripping of spaces and tabs " "for :func:`eval`." msgstr "" -#: ../build/NEWS:3692 +#: ../build/NEWS:3727 msgid "" "`bpo-41773 `__: Note in documentation " "that :func:`random.choices` doesn't support non-finite weights, raise :exc:" "`ValueError` when given non-finite weights." msgstr "" -#: ../build/NEWS:3696 +#: ../build/NEWS:3731 msgid "" "`bpo-41840 `__: Fix a bug in the :mod:" "`symtable` module that was causing module-scope global variables to not be " "reported as both local and global. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:3700 +#: ../build/NEWS:3735 msgid "" "`bpo-41842 `__: Add :func:`codecs." "unregister` function to unregister a codec search function." msgstr "" -#: ../build/NEWS:3703 +#: ../build/NEWS:3738 msgid "" "`bpo-40564 `__: In ``zipfile.Path``, " "mutate the passed ZipFile object type instead of making a copy. Prevents " @@ -7118,27 +7072,27 @@ msgid "" "same file handle." msgstr "" -#: ../build/NEWS:3707 +#: ../build/NEWS:3742 msgid "" "`bpo-40670 `__: More reliable validation " "of statements in :class:`timeit.Timer`. It now accepts \"empty\" statements " "(only whitespaces and comments) and rejects misindentent statements." msgstr "" -#: ../build/NEWS:3711 +#: ../build/NEWS:3746 msgid "" "`bpo-41833 `__: The :class:`threading." "Thread` constructor now uses the target name if the *target* argument is " "specified but the *name* argument is omitted." msgstr "" -#: ../build/NEWS:3715 +#: ../build/NEWS:3750 msgid "" "`bpo-41817 `__: fix `tkinter.EventType` " "Enum so all members are strings, and none are tuples" msgstr "" -#: ../build/NEWS:3718 +#: ../build/NEWS:3753 msgid "" "`bpo-41810 `__: :data:`types." "EllipsisType`, :data:`types.NotImplementedType` and :data:`types.NoneType` " @@ -7146,115 +7100,115 @@ msgid "" "by static type checkers." msgstr "" -#: ../build/NEWS:3722 +#: ../build/NEWS:3757 msgid "" "`bpo-41815 `__: Fix SQLite3 segfault " "when backing up closed database. Patch contributed by Peter David McCormick." msgstr "" -#: ../build/NEWS:3725 +#: ../build/NEWS:3760 msgid "" "`bpo-41816 `__: StrEnum added: it " "ensures that all members are already strings or string candidates" msgstr "" -#: ../build/NEWS:3728 +#: ../build/NEWS:3763 msgid "" "`bpo-41517 `__: fix bug allowing Enums " "to be extended via multiple inheritance" msgstr "" -#: ../build/NEWS:3730 +#: ../build/NEWS:3765 msgid "" "`bpo-39587 `__: use the correct mix-in " "data type when constructing Enums" msgstr "" -#: ../build/NEWS:3732 +#: ../build/NEWS:3767 msgid "" "`bpo-41792 `__: Add is_typeddict " "function to typing.py to check if a type is a TypedDict class" msgstr "" -#: ../build/NEWS:3735 +#: ../build/NEWS:3770 msgid "" "Previously there was no way to check that without using private API. See the " "`relevant issue in python/typing `" msgstr "" -#: ../build/NEWS:3739 +#: ../build/NEWS:3774 msgid "" "`bpo-41789 `__: Honor `object` overrides " "in `Enum` class creation (specifically, `__str__`, `__repr__`, `__format__`, " "and `__reduce_ex__`)." msgstr "" -#: ../build/NEWS:3742 +#: ../build/NEWS:3777 msgid "" "`bpo-32218 `__: `enum.Flag` and `enum." "IntFlag` members are now iterable" msgstr "" -#: ../build/NEWS:3744 +#: ../build/NEWS:3779 msgid "" "`bpo-39651 `__: Fix a race condition in " "the ``call_soon_threadsafe()`` method of ``asyncio.ProactorEventLoop``: do " "nothing if the self-pipe socket has been closed." msgstr "" -#: ../build/NEWS:3748 +#: ../build/NEWS:3783 msgid "" "`bpo-1635741 `__: Port the ``mashal`` " "extension module to the multi-phase initialization API (:pep:`489`)." msgstr "" -#: ../build/NEWS:3751 +#: ../build/NEWS:3786 msgid "" "`bpo-1635741 `__: Port the ``_string`` " "extension module to the multi-phase initialization API (:pep:`489`)." msgstr "" -#: ../build/NEWS:3754 +#: ../build/NEWS:3789 msgid "" "`bpo-41732 `__: Added an :term:" "`iterator` to :class:`memoryview`." msgstr "" -#: ../build/NEWS:3756 +#: ../build/NEWS:3791 msgid "" "`bpo-41720 `__: Fixed :meth:`turtle." "Vec2D.__rmul__` for arguments which are not int or float." msgstr "" -#: ../build/NEWS:3759 +#: ../build/NEWS:3794 msgid "" "`bpo-41696 `__: Fix handling of debug " "mode in :func:`asyncio.run`. This allows setting ``PYTHONASYNCIODEBUG`` or " "``-X dev`` to enable asyncio debug mode when using :func:`asyncio.run`." msgstr "" -#: ../build/NEWS:3763 +#: ../build/NEWS:3798 msgid "" "`bpo-41687 `__: Fix implementation of " "sendfile to be compatible with Solaris." msgstr "" -#: ../build/NEWS:3765 +#: ../build/NEWS:3800 msgid "" "`bpo-41662 `__: No longer override " "exceptions raised in ``__len__()`` of a sequence of parameters in :mod:" "`sqlite3` with :exc:`~sqlite3.ProgrammingError`." msgstr "" -#: ../build/NEWS:3769 +#: ../build/NEWS:3804 msgid "" "`bpo-39010 `__: Restarting a " "``ProactorEventLoop`` on Windows no longer logs spurious " "``ConnectionResetErrors``." msgstr "" -#: ../build/NEWS:3772 +#: ../build/NEWS:3807 msgid "" "`bpo-41638 `__: :exc:`~sqlite3." "ProgrammingError` message for absent parameter in :mod:`sqlite3` contains " @@ -7262,32 +7216,32 @@ msgid "" "supplied as a dict." msgstr "" -#: ../build/NEWS:3776 +#: ../build/NEWS:3811 msgid "" "`bpo-41662 `__: Fixed crash when mutate " "list of parameters during iteration in :mod:`sqlite3`." msgstr "" -#: ../build/NEWS:3779 +#: ../build/NEWS:3814 msgid "" "`bpo-41513 `__: Improved the accuracy of " "math.hypot(). Internally, each step is computed with extra precision so " "that the result is now almost always correctly rounded." msgstr "" -#: ../build/NEWS:3783 +#: ../build/NEWS:3818 msgid "" "`bpo-41609 `__: The pdb whatis command " "correctly reports instance methods as 'Method' rather than 'Function'." msgstr "" -#: ../build/NEWS:3786 +#: ../build/NEWS:3821 msgid "" "`bpo-39994 `__: Fixed pprint's handling " "of dict subclasses that override __repr__." msgstr "" -#: ../build/NEWS:3789 +#: ../build/NEWS:3824 msgid "" "`bpo-32751 `__: When cancelling the task " "due to a timeout, :meth:`asyncio.wait_for` will now wait until the " @@ -7295,65 +7249,65 @@ msgid "" "does with positive timeouts." msgstr "" -#: ../build/NEWS:3794 +#: ../build/NEWS:3829 msgid "" "`bpo-37658 `__: :meth:`asyncio.wait_for` " "now properly handles races between cancellation of itself and the completion " "of the wrapped awaitable." msgstr "" -#: ../build/NEWS:3797 +#: ../build/NEWS:3832 msgid "" "`bpo-40782 `__: Change the method " "asyncio.AbstractEventLoop.run_in_executor to not be a coroutine." msgstr "" -#: ../build/NEWS:3800 +#: ../build/NEWS:3835 msgid "" "`bpo-41520 `__: Fix :mod:`codeop` " "regression that prevented turning compile warnings into errors." msgstr "" -#: ../build/NEWS:3803 +#: ../build/NEWS:3838 msgid "" "`bpo-41528 `__: turtle uses math module " "functions to convert degrees to radians and vice versa and to calculate " "vector norm" msgstr "" -#: ../build/NEWS:3806 +#: ../build/NEWS:3841 msgid "" "`bpo-41513 `__: Minor algorithmic " "improvement to math.hypot() and math.dist() giving small gains in speed and " "accuracy." msgstr "" -#: ../build/NEWS:3809 +#: ../build/NEWS:3844 msgid "" "`bpo-41503 `__: Fixed a race between " "setTarget and flush in logging.handlers.MemoryHandler." msgstr "" -#: ../build/NEWS:3812 +#: ../build/NEWS:3847 msgid "" "`bpo-41497 `__: Fix potential " "UnicodeDecodeError in dis module." msgstr "" -#: ../build/NEWS:3814 +#: ../build/NEWS:3849 msgid "" "`bpo-41467 `__: On Windows, fix asyncio " "``recv_into()`` return value when the socket/pipe is closed (:exc:" "`BrokenPipeError`): return ``0`` rather than an empty byte string (``b''``)." msgstr "" -#: ../build/NEWS:3818 +#: ../build/NEWS:3853 msgid "" "`bpo-41425 `__: Make tkinter doc example " "runnable." msgstr "" -#: ../build/NEWS:3820 +#: ../build/NEWS:3855 msgid "" "`bpo-41421 `__: Make an algebraic " "simplification to random.paretovariate(). It now is slightly less subject " @@ -7361,75 +7315,75 @@ msgid "" "ZeroDivisionError now cause an OverflowError instead." msgstr "" -#: ../build/NEWS:3825 +#: ../build/NEWS:3860 msgid "" "`bpo-41440 `__: Add :func:`os." "cpu_count()` support for VxWorks RTOS." msgstr "" -#: ../build/NEWS:3827 +#: ../build/NEWS:3862 msgid "" "`bpo-41316 `__: Fix the :mod:`tarfile` " "module to write only basename of TAR file to GZIP compression header." msgstr "" -#: ../build/NEWS:3830 +#: ../build/NEWS:3865 msgid "" "`bpo-41384 `__: Raise TclError instead " "of TypeError when an unknown option is passed to tkinter.OptionMenu." msgstr "" -#: ../build/NEWS:3833 +#: ../build/NEWS:3868 msgid "" "`bpo-41317 `__: Use add_done_callback() " "in asyncio.loop.sock_accept() to unsubscribe reader early on cancellation." msgstr "" -#: ../build/NEWS:3836 +#: ../build/NEWS:3871 msgid "" "`bpo-41364 `__: Reduce import overhead " "of :mod:`uuid`." msgstr "" -#: ../build/NEWS:3838 +#: ../build/NEWS:3873 msgid "" "`bpo-35328 `__: Set the environment " "variable ``VIRTUAL_ENV_PROMPT`` at :mod:`venv` activation." msgstr "" -#: ../build/NEWS:3841 +#: ../build/NEWS:3876 msgid "" "`bpo-41341 `__: Recursive evaluation of " "`typing.ForwardRef` in `get_type_hints`." msgstr "" -#: ../build/NEWS:3844 +#: ../build/NEWS:3879 msgid "" "`bpo-41344 `__: Prevent creating :class:" "`shared_memory.SharedMemory` objects with :code:`size=0`." msgstr "" -#: ../build/NEWS:3847 +#: ../build/NEWS:3882 msgid "" "`bpo-41333 `__: :meth:`collections." "OrderedDict.pop` is now 2 times faster." msgstr "" -#: ../build/NEWS:3849 +#: ../build/NEWS:3884 msgid "" "`bpo-41288 `__: Unpickling invalid " "NEWOBJ_EX opcode with the C implementation raises now UnpicklingError " "instead of crashing." msgstr "" -#: ../build/NEWS:3852 +#: ../build/NEWS:3887 msgid "" "`bpo-39017 `__: Avoid infinite loop when " "reading specially crafted TAR files using the tarfile module " "(CVE-2019-20907)." msgstr "" -#: ../build/NEWS:3855 +#: ../build/NEWS:3890 msgid "" "`bpo-41273 `__: Speed up any transport " "using ``_ProactorReadPipeTransport`` by calling ``recv_into`` instead of " @@ -7437,46 +7391,46 @@ msgid "" "transport's read loop." msgstr "" -#: ../build/NEWS:3859 +#: ../build/NEWS:3894 msgid "" "`bpo-41235 `__: Fix the error handling " "in :meth:`ssl.SSLContext.load_dh_params`." msgstr "" -#: ../build/NEWS:3862 +#: ../build/NEWS:3897 msgid "" "`bpo-41207 `__: In distutils.spawn, " "restore expectation that DistutilsExecError is raised when the command is " "not found." msgstr "" -#: ../build/NEWS:3865 +#: ../build/NEWS:3900 msgid "" "`bpo-29727 `__: Register :class:`array." "array` as a :class:`~collections.abc.MutableSequence`. Patch by Pablo " "Galindo." msgstr "" -#: ../build/NEWS:3868 +#: ../build/NEWS:3903 msgid "" "`bpo-39168 `__: Remove the ``__new__`` " "method of :class:`typing.Generic`." msgstr "" -#: ../build/NEWS:3870 +#: ../build/NEWS:3905 msgid "" "`bpo-41194 `__: Fix a crash in the " "``_ast`` module: it can no longer be loaded more than once. It now uses a " "global state rather than a module state." msgstr "" -#: ../build/NEWS:3873 +#: ../build/NEWS:3908 msgid "" "`bpo-41195 `__: Add read-only ssl." "SSLContext.security_level attribute to retrieve the context's security level." msgstr "" -#: ../build/NEWS:3876 +#: ../build/NEWS:3911 msgid "" "`bpo-41193 `__: The ``write_history()`` " "atexit function of the readline completer now ignores any :exc:`OSError` to " @@ -7484,132 +7438,132 @@ msgid "" "`FileNotFoundError` and :exc:`PermissionError`." msgstr "" -#: ../build/NEWS:3881 +#: ../build/NEWS:3916 msgid "" "`bpo-41182 `__: selector: use " "DefaultSelector based upon implementation" msgstr "" -#: ../build/NEWS:3883 +#: ../build/NEWS:3918 msgid "" "`bpo-41161 `__: The decimal module now " "requires libmpdec-2.5.0. Users of --with-system-libmpdec should update their " "system library." msgstr "" -#: ../build/NEWS:3886 +#: ../build/NEWS:3921 msgid "" "`bpo-40874 `__: The decimal module now " "requires libmpdec-2.5.0." msgstr "" -#: ../build/NEWS:3888 +#: ../build/NEWS:3923 msgid "" "`bpo-41138 `__: Fixed the :mod:`trace` " "module CLI for Python source files with non-UTF-8 encoding." msgstr "" -#: ../build/NEWS:3891 +#: ../build/NEWS:3926 msgid "" "`bpo-31082 `__: Use the term \"iterable" "\" in the docstring for :func:`functools.reduce`." msgstr "" -#: ../build/NEWS:3894 +#: ../build/NEWS:3929 msgid "" "`bpo-40521 `__: Remove freelist from " "collections.deque()." msgstr "" -#: ../build/NEWS:3896 +#: ../build/NEWS:3931 msgid "" "`bpo-31938 `__: Fix default-value " "signatures of several functions in the :mod:`select` module - by Anthony " "Sottile." msgstr "" -#: ../build/NEWS:3899 +#: ../build/NEWS:3934 msgid "" "`bpo-41068 `__: Fixed reading files with " "non-ASCII names from ZIP archive directly after writing them." msgstr "" -#: ../build/NEWS:3902 +#: ../build/NEWS:3937 msgid "" "`bpo-41058 `__: :func:`pdb." "find_function` now correctly determines the source file encoding." msgstr "" -#: ../build/NEWS:3905 +#: ../build/NEWS:3940 msgid "" "`bpo-41056 `__: Invalid file descriptor " "values are now prevented from being passed to os.fpathconf. (discovered by " "Coverity)" msgstr "" -#: ../build/NEWS:3908 +#: ../build/NEWS:3943 msgid "" "`bpo-41056 `__: Fix a NULL pointer " "dereference within the ssl module during a MemoryError in the keylog " "callback. (discovered by Coverity)" msgstr "" -#: ../build/NEWS:3911 +#: ../build/NEWS:3946 msgid "" "`bpo-41056 `__: Fixed an instance where " "a MemoryError within the zoneinfo module might not be reported or not " "reported at its source. (found by Coverity)" msgstr "" -#: ../build/NEWS:3915 +#: ../build/NEWS:3950 msgid "" "`bpo-41048 `__: :func:`mimetypes." "read_mime_types` function reads the rule file using UTF-8 encoding, not the " "locale encoding. Patch by Srinivas Reddy Thatiparthy." msgstr "" -#: ../build/NEWS:3919 +#: ../build/NEWS:3954 msgid "" "`bpo-41043 `__: Fixed the use of :func:" "`~glob.glob` in the stdlib: literal part of the path is now always correctly " "escaped." msgstr "" -#: ../build/NEWS:3922 +#: ../build/NEWS:3957 msgid "" "`bpo-41025 `__: Fixed an issue " "preventing the C implementation of :class:`zoneinfo.ZoneInfo` from being " "subclassed." msgstr "" -#: ../build/NEWS:3925 +#: ../build/NEWS:3960 msgid "" "`bpo-35018 `__: Add the :class:`xml.sax." "handler.LexicalHandler` class that is present in other SAX XML " "implementations." msgstr "" -#: ../build/NEWS:3928 +#: ../build/NEWS:3963 msgid "" "`bpo-41002 `__: Improve performance of " "HTTPResponse.read with a given amount. Patch by Bruce Merry." msgstr "" -#: ../build/NEWS:3931 +#: ../build/NEWS:3966 msgid "" "`bpo-40448 `__: :mod:`ensurepip` now " "disables the use of `pip` cache when installing the bundled versions of " "`pip` and `setuptools`. Patch by Krzysztof Konopko." msgstr "" -#: ../build/NEWS:3935 +#: ../build/NEWS:3970 msgid "" "`bpo-40967 `__: Removed :meth:`asyncio." "Task.current_task` and :meth:`asyncio.Task.all_tasks`. Patch contributed by " "Rémi Lapeyre." msgstr "" -#: ../build/NEWS:3938 +#: ../build/NEWS:3973 msgid "" "`bpo-40924 `__: Ensure ``importlib." "resources.path`` returns an extant path for the SourceFileLoader's resource " @@ -7617,33 +7571,33 @@ msgid "" "solution is devised." msgstr "" -#: ../build/NEWS:3942 +#: ../build/NEWS:3977 msgid "" "`bpo-40955 `__: Fix a minor memory leak " "in :mod:`subprocess` module when extra_groups was specified." msgstr "" -#: ../build/NEWS:3945 +#: ../build/NEWS:3980 msgid "" "`bpo-40855 `__: The standard deviation " "and variance functions in the statistics module were ignoring their mu and " "xbar arguments." msgstr "" -#: ../build/NEWS:3948 +#: ../build/NEWS:3983 msgid "" "`bpo-40939 `__: Use the new PEG parser " "when generating the stdlib :mod:`keyword` module." msgstr "" -#: ../build/NEWS:3951 +#: ../build/NEWS:3986 msgid "" "`bpo-23427 `__: Add :data:`sys." "orig_argv` attribute: the list of the original command line arguments passed " "to the Python executable." msgstr "" -#: ../build/NEWS:3954 +#: ../build/NEWS:3989 msgid "" "`bpo-33689 `__: Ignore empty or " "whitespace-only lines in .pth files. This matches the documentated behavior. " @@ -7651,39 +7605,39 @@ msgid "" "sys.path. By Ido Michael, contributors Malcolm Smith and Tal Einat." msgstr "" -#: ../build/NEWS:3959 +#: ../build/NEWS:3994 msgid "" "`bpo-40884 `__: Added a `defaults` " "parameter to :class:`logging.Formatter`, to allow specifying default values " "for custom fields. Patch by Asaf Alon and Bar Harel." msgstr "" -#: ../build/NEWS:3963 +#: ../build/NEWS:3998 msgid "" "`bpo-40876 `__: Clarify error message in " "the :mod:`csv` module." msgstr "" -#: ../build/NEWS:3965 +#: ../build/NEWS:4000 msgid "" "`bpo-39791 `__: Refresh importlib." "metadata from importlib_metadata 1.6.1." msgstr "" -#: ../build/NEWS:3967 +#: ../build/NEWS:4002 msgid "" "`bpo-40807 `__: Stop codeop." "_maybe_compile, used by code.InteractiveInterpreter (and IDLE). from " "emitting each warning three times." msgstr "" -#: ../build/NEWS:3970 +#: ../build/NEWS:4005 msgid "" "`bpo-32604 `__: Fix reference leak in " "the :mod:`select` module when the module is imported in a subinterpreter." msgstr "" -#: ../build/NEWS:3973 +#: ../build/NEWS:4008 msgid "" "`bpo-39791 `__: Built-in loaders " "(SourceFileLoader and ZipImporter) now supply ``TraversableResources`` " @@ -7691,14 +7645,14 @@ msgid "" "removed." msgstr "" -#: ../build/NEWS:3977 +#: ../build/NEWS:4012 msgid "" "`bpo-39314 `__: :class:`rlcompleter." "Completer` and the standard Python shell now close the parenthesis for " "functions that take no arguments. Patch contributed by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:3981 +#: ../build/NEWS:4016 msgid "" "`bpo-17005 `__: The topological sort " "functionality that was introduced initially in the :mod:`functools` module " @@ -7707,19 +7661,19 @@ msgid "" "Pablo Galindo" msgstr "" -#: ../build/NEWS:3986 +#: ../build/NEWS:4021 msgid "" "`bpo-40834 `__: Fix truncate when " "sending str object with_xxsubinterpreters.channel_send." msgstr "" -#: ../build/NEWS:3989 +#: ../build/NEWS:4024 msgid "" "`bpo-40755 `__: Add rich comparisons to " "collections.Counter()." msgstr "" -#: ../build/NEWS:3991 +#: ../build/NEWS:4026 msgid "" "`bpo-26407 `__: Unexpected errors in " "calling the ``__iter__`` method are no longer masked by ``TypeError`` in :" @@ -7727,13 +7681,13 @@ msgid "" "writerows`." msgstr "" -#: ../build/NEWS:3995 +#: ../build/NEWS:4030 msgid "" "`bpo-39384 `__: Fixed email." "contentmanager to allow set_content() to set a null string." msgstr "" -#: ../build/NEWS:3998 +#: ../build/NEWS:4033 msgid "" "`bpo-40744 `__: The :mod:`sqlite3` " "module uses SQLite API functions that require SQLite v3.7.3 or higher. This " @@ -7742,41 +7696,41 @@ msgid "" "and Erlend E. Aasland." msgstr "" -#: ../build/NEWS:4003 +#: ../build/NEWS:4038 msgid "" "`bpo-40777 `__: Initialize " "PyDateTime_IsoCalendarDateType.tp_base at run-time to avoid errors on some " "compilers." msgstr "" -#: ../build/NEWS:4006 +#: ../build/NEWS:4041 msgid "" "`bpo-38488 `__: Update ensurepip to " "install pip 20.1.1 and setuptools 47.1.0." msgstr "" -#: ../build/NEWS:4008 +#: ../build/NEWS:4043 msgid "" "`bpo-40792 `__: The result of :func:" "`operator.index` now always has exact type :class:`int`. Previously, the " "result could have been an instance of a subclass of ``int``." msgstr "" -#: ../build/NEWS:4012 +#: ../build/NEWS:4047 msgid "" "`bpo-40767 `__: :mod:`webbrowser` now " "properly finds the default browser in pure Wayland systems by checking the " "WAYLAND_DISPLAY environment variable. Patch contributed by Jérémy Attali." msgstr "" -#: ../build/NEWS:4016 +#: ../build/NEWS:4051 msgid "" "`bpo-40791 `__: :func:`hashlib." "compare_digest` uses OpenSSL's ``CRYPTO_memcmp()`` function when OpenSSL is " "available." msgstr "" -#: ../build/NEWS:4019 +#: ../build/NEWS:4054 msgid "" "`bpo-40795 `__: :mod:`ctypes` module: If " "ctypes fails to convert the result of a callback or if a ctypes callback " @@ -7785,92 +7739,92 @@ msgid "" "`PyErr_Print`." msgstr "" -#: ../build/NEWS:4024 +#: ../build/NEWS:4059 msgid "" "`bpo-16995 `__: Add :func:`base64." "b32hexencode` and :func:`base64.b32hexdecode` to support the Base32 Encoding " "with Extended Hex Alphabet." msgstr "" -#: ../build/NEWS:4027 +#: ../build/NEWS:4062 msgid "" "`bpo-30008 `__: Fix :mod:`ssl` code to " "be compatible with OpenSSL 1.1.x builds that use ``no-deprecated`` and ``--" "api=1.1.0``." msgstr "" -#: ../build/NEWS:4030 +#: ../build/NEWS:4065 msgid "" "`bpo-30064 `__: Fix asyncio ``loop." "sock_*`` race condition issue" msgstr "" -#: ../build/NEWS:4032 +#: ../build/NEWS:4067 msgid "" "`bpo-40759 `__: Deprecate the :mod:" "`symbol` module." msgstr "" -#: ../build/NEWS:4034 +#: ../build/NEWS:4069 msgid "" "`bpo-40756 `__: The second argument " "(extra) of ``LoggerAdapter.__init__`` now defaults to None." msgstr "" -#: ../build/NEWS:4037 +#: ../build/NEWS:4072 msgid "" "`bpo-37129 `__: Add a new :data:`os." "RWF_APPEND` flag for :func:`os.pwritev`." msgstr "" -#: ../build/NEWS:4039 +#: ../build/NEWS:4074 msgid "" "`bpo-40737 `__: Fix possible reference " "leak for :mod:`sqlite3` initialization." msgstr "" -#: ../build/NEWS:4041 +#: ../build/NEWS:4076 msgid "" "`bpo-40726 `__: Handle cases where the " "``end_lineno`` is ``None`` on :func:`ast.increment_lineno`." msgstr "" -#: ../build/NEWS:4044 +#: ../build/NEWS:4079 msgid "" "`bpo-40698 `__: :mod:`distutils` upload " "creates SHA2-256 and Blake2b-256 digests. MD5 digests is skipped if platform " "blocks MD5." msgstr "" -#: ../build/NEWS:4047 +#: ../build/NEWS:4082 msgid "" "`bpo-40695 `__: :mod:`hashlib` no longer " "falls back to builtin hash implementations when OpenSSL provides a hash " "digest and the algorithm is blocked by security policy." msgstr "" -#: ../build/NEWS:4051 +#: ../build/NEWS:4086 msgid "" "`bpo-9216 `__: func:`hashlib.new` passed " "``usedforsecurity`` to OpenSSL EVP constructor ``_hashlib.new()``. " "test_hashlib and test_smtplib handle strict security policy better." msgstr "" -#: ../build/NEWS:4055 +#: ../build/NEWS:4090 msgid "" "`bpo-40614 `__: :func:`ast.parse` will " "not parse self documenting expressions in f-strings when passed " "``feature_version`` is less than ``(3, 8)``." msgstr "" -#: ../build/NEWS:4058 +#: ../build/NEWS:4093 msgid "" "`bpo-40626 `__: Add h5 file extension as " "MIME Type application/x-hdf5, as per HDF Group recommendation for HDF5 " "formatted data files. Patch contributed by Mark Schwab." msgstr "" -#: ../build/NEWS:4062 +#: ../build/NEWS:4097 msgid "" "`bpo-25920 `__: On macOS, when building " "Python for macOS 10.4 and older, which wasn't the case for python.org macOS " @@ -7882,13 +7836,13 @@ msgid "" "older than 201311 and NetBSD older than 4." msgstr "" -#: ../build/NEWS:4071 +#: ../build/NEWS:4106 msgid "" "`bpo-40671 `__: Prepare ``_hashlib`` " "for :pep:`489` and use :c:func:`PyModule_AddType`." msgstr "" -#: ../build/NEWS:4074 +#: ../build/NEWS:4109 msgid "" "`bpo-32309 `__: Added a new :term:" "`coroutine` :func:`asyncio.to_thread`. It is mainly used for running IO-" @@ -7897,32 +7851,32 @@ msgid "" "run_in_executor` that can directly take keyword arguments." msgstr "" -#: ../build/NEWS:4080 +#: ../build/NEWS:4115 msgid "" "`bpo-36543 `__: Restored the deprecated :" "mod:`xml.etree.cElementTree` module." msgstr "" -#: ../build/NEWS:4082 +#: ../build/NEWS:4117 msgid "" "`bpo-40611 `__: :data:`~mmap." "MAP_POPULATE` constant has now been added to the list of exported :mod:" "`mmap` module flags." msgstr "" -#: ../build/NEWS:4085 +#: ../build/NEWS:4120 msgid "" "`bpo-39881 `__: PEP 554 for use in the " "test suite. (Patch By Joannah Nanjekye)" msgstr "" -#: ../build/NEWS:4087 +#: ../build/NEWS:4122 msgid "" "`bpo-13097 `__: ``ctypes`` now raises an " "``ArgumentError`` when a callback is invoked with more than 1024 arguments." msgstr "" -#: ../build/NEWS:4090 +#: ../build/NEWS:4125 msgid "" "`bpo-39385 `__: A new test assertion " "context-manager, :func:`unittest.assertNoLogs` will ensure a given block of " @@ -7930,105 +7884,105 @@ msgid "" "Choi." msgstr "" -#: ../build/NEWS:4094 +#: ../build/NEWS:4129 msgid "" "`bpo-23082 `__: Updated the error " "message and docs of PurePath.relative_to() to better reflect the function " "behaviour." msgstr "" -#: ../build/NEWS:4097 +#: ../build/NEWS:4132 msgid "" "`bpo-40318 `__: Use SQLite3 trace v2 " "API, if it is available." msgstr "" -#: ../build/NEWS:4099 +#: ../build/NEWS:4134 msgid "" "`bpo-40105 `__: ZipFile truncates files " "to avoid corruption when a shorter comment is provided in append (\"a\") " "mode. Patch by Jan Mazur." msgstr "" -#: ../build/NEWS:4102 +#: ../build/NEWS:4137 msgid "" "`bpo-40084 `__: Fix ``Enum.__dir__``: " "dir(Enum.member) now includes attributes as well as methods." msgstr "" -#: ../build/NEWS:4105 +#: ../build/NEWS:4140 msgid "" "`bpo-31122 `__: ssl.wrap_socket() now " "raises ssl.SSLEOFError rather than OSError when peer closes connection " "during TLS negotiation" msgstr "" -#: ../build/NEWS:4108 +#: ../build/NEWS:4143 msgid "" "`bpo-39728 `__: fix default `_missing_` " "so a duplicate `ValueError` is not set as the `__context__` of the original " "`ValueError`" msgstr "" -#: ../build/NEWS:4111 +#: ../build/NEWS:4146 msgid "" "`bpo-39244 `__: Fixed :class:" "`multiprocessing.context.get_all_start_methods` to properly return the " "default method first on macOS." msgstr "" -#: ../build/NEWS:4114 +#: ../build/NEWS:4149 msgid "" "`bpo-39040 `__: Fix parsing of invalid " "mime headers parameters by collapsing whitespace between encoded words in a " "bare-quote-string." msgstr "" -#: ../build/NEWS:4117 +#: ../build/NEWS:4152 msgid "" "`bpo-38731 `__: Add ``--quiet`` option " "to command-line interface of :mod:`py_compile`. Patch by Gregory Schevchenko." msgstr "" -#: ../build/NEWS:4120 +#: ../build/NEWS:4155 msgid "" "`bpo-35714 `__: :exc:`struct.error` is " "now raised if there is a null character in a :mod:`struct` format string." msgstr "" -#: ../build/NEWS:4123 +#: ../build/NEWS:4158 msgid "" "`bpo-38144 `__: Added the *root_dir* and " "*dir_fd* parameters in :func:`glob.glob`." msgstr "" -#: ../build/NEWS:4126 +#: ../build/NEWS:4161 msgid "" "`bpo-26543 `__: Fix :meth:`IMAP4.noop()` " "when debug mode is enabled (ex: ``imaplib.Debug = 3``)." msgstr "" -#: ../build/NEWS:4129 +#: ../build/NEWS:4164 msgid "" "`bpo-12178 `__: :func:`csv.writer` now " "correctly escapes *escapechar* when input contains *escapechar*. Patch by " "Catalin Iacob, Berker Peksag, and Itay Elbirt." msgstr "" -#: ../build/NEWS:4133 +#: ../build/NEWS:4168 msgid "" "`bpo-36290 `__: AST nodes are now " "raising :exc:`TypeError` on conflicting keyword arguments. Patch contributed " "by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:4136 +#: ../build/NEWS:4171 msgid "" "`bpo-33944 `__: Added site.py site-" "packages tracing in verbose mode." msgstr "" -#: ../build/NEWS:4138 +#: ../build/NEWS:4173 msgid "" "`bpo-35078 `__: Refactor formatweekday, " "formatmonthname methods in LocaleHTMLCalendar and LocaleTextCalendar classes " @@ -8036,7 +7990,7 @@ msgid "" "CSS classes for LocaleHTMLCalendar. Patch by Srinivas Reddy Thatiparthy" msgstr "" -#: ../build/NEWS:4143 +#: ../build/NEWS:4178 msgid "" "`bpo-29620 `__: :func:`~unittest." "TestCase.assertWarns` no longer raises a ``RuntimeException`` when accessing " @@ -8044,7 +7998,7 @@ msgid "" "when a new module is imported in another thread. Patch by Kernc." msgstr "" -#: ../build/NEWS:4148 +#: ../build/NEWS:4183 msgid "" "`bpo-31844 `__: Remove ``ParserBase." "error()`` method from the private and undocumented ``_markupbase`` module. :" @@ -8053,59 +8007,59 @@ msgid "" "Python 3.5." msgstr "" -#: ../build/NEWS:4153 +#: ../build/NEWS:4188 msgid "" "`bpo-34226 `__: Fix `cgi." "parse_multipart` without content_length. Patch by Roger Duran" msgstr "" -#: ../build/NEWS:4156 +#: ../build/NEWS:4191 msgid "" "`bpo-33660 `__: Fix pathlib.PosixPath to " "resolve a relative path located on the root directory properly." msgstr "" -#: ../build/NEWS:4159 +#: ../build/NEWS:4194 msgid "" "`bpo-28557 `__: Improve the error " "message for a misbehaving ``rawio.readinto``" msgstr "" -#: ../build/NEWS:4161 +#: ../build/NEWS:4196 msgid "" "`bpo-26680 `__: The d.is_integer() " "method is added to the Decimal type, for compatibility with other number " "types." msgstr "" -#: ../build/NEWS:4164 +#: ../build/NEWS:4199 msgid "" "`bpo-26680 `__: The x.is_integer() " "method is incorporated into the abstract types of the numeric tower, Real, " "Rational and Integral, with appropriate default implementations." msgstr "" -#: ../build/NEWS:4171 +#: ../build/NEWS:4206 msgid "" "`bpo-41428 `__: Add documentation for :" "pep:`604` (Allow writing union types as ``X | Y``)." msgstr "" -#: ../build/NEWS:4174 +#: ../build/NEWS:4209 msgid "" "`bpo-41774 `__: In Programming FAQ " "\"Sequences (Tuples/Lists)\" section, add \"How do you remove multiple items " "from a list\"." msgstr "" -#: ../build/NEWS:4177 +#: ../build/NEWS:4212 msgid "" "`bpo-35293 `__: Fix " "RemovedInSphinx40Warning when building the documentation. Patch by Dong-hee " "Na." msgstr "" -#: ../build/NEWS:4180 +#: ../build/NEWS:4215 msgid "" "`bpo-37149 `__: Change Shipman tkinter " "doc link from archive.org to TkDocs. (The doc has been removed from the NMT " @@ -8113,111 +8067,111 @@ msgid "" "note." msgstr "" -#: ../build/NEWS:4184 +#: ../build/NEWS:4219 msgid "" "`bpo-41726 `__: Update the refcounts " "info of ``PyType_FromModuleAndSpec``." msgstr "" -#: ../build/NEWS:4186 +#: ../build/NEWS:4221 msgid "" "`bpo-41624 `__: Fix the signature of :" "class:`typing.Coroutine`." msgstr "" -#: ../build/NEWS:4188 +#: ../build/NEWS:4223 msgid "" "`bpo-40204 `__: Enable Sphinx 3.2 " "``c_allow_pre_v3`` option and disable ``c_warn_on_allowed_pre_v3`` option to " "make the documentation compatible with Sphinx 2 and Sphinx 3." msgstr "" -#: ../build/NEWS:4192 +#: ../build/NEWS:4227 msgid "" "`bpo-41045 `__: Add documentation for " "debug feature of f-strings." msgstr "" -#: ../build/NEWS:4194 +#: ../build/NEWS:4229 msgid "" "`bpo-41314 `__: Changed the release when " "``from __future__ import annotations`` becomes the default from ``4.0`` to " "``3.10`` (following a change in PEP 563)." msgstr "" -#: ../build/NEWS:4198 +#: ../build/NEWS:4233 msgid "" "`bpo-40979 `__: Refactored typing.rst, " "arranging more than 70 classes, functions, and decorators into new sub-" "sections." msgstr "" -#: ../build/NEWS:4201 +#: ../build/NEWS:4236 msgid "" "`bpo-40552 `__: Fix in tutorial section " "4.2. Code snippet is now correct." msgstr "" -#: ../build/NEWS:4203 +#: ../build/NEWS:4238 msgid "" "`bpo-39883 `__: Make code, examples, and " "recipes in the Python documentation be licensed under the more permissive " "BSD0 license in addition to the existing Python 2.0 license." msgstr "" -#: ../build/NEWS:4207 +#: ../build/NEWS:4242 msgid "" "`bpo-37703 `__: Updated Documentation to " "comprehensively elaborate on the behaviour of gather.cancel()" msgstr "" -#: ../build/NEWS:4213 +#: ../build/NEWS:4248 msgid "" "`bpo-41939 `__: Fix test_site." "test_license_exists_at_url(): call ``urllib.request.urlcleanup()`` to reset " "the global ``urllib.request._opener``. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:4217 +#: ../build/NEWS:4252 msgid "" "`bpo-41731 `__: Make " "test_cmd_line_script pass with option '-vv'." msgstr "" -#: ../build/NEWS:4219 +#: ../build/NEWS:4254 msgid "" "`bpo-41602 `__: Add tests for SIGINT " "handling in the runpy module." msgstr "" -#: ../build/NEWS:4221 +#: ../build/NEWS:4256 msgid "" "`bpo-41521 `__: :mod:`test.support`: " "Rename ``blacklist`` parameter of :func:`~test.support.check__all__` to " "``not_exported``." msgstr "" -#: ../build/NEWS:4224 +#: ../build/NEWS:4259 msgid "" "`bpo-41477 `__: Make ctypes optional in " "test_genericalias." msgstr "" -#: ../build/NEWS:4226 +#: ../build/NEWS:4261 msgid "" "`bpo-41085 `__: Fix integer overflow in " "the :meth:`array.array.index` method on 64-bit Windows for index larger than " "``2**31``." msgstr "" -#: ../build/NEWS:4229 +#: ../build/NEWS:4264 msgid "" "`bpo-41069 `__: :data:`test.support." "TESTFN` and the current directory for tests when run via ``test.regrtest`` " "contain now non-ascii characters if possible." msgstr "" -#: ../build/NEWS:4233 +#: ../build/NEWS:4268 msgid "" "`bpo-38377 `__: On Linux, skip tests " "using multiprocessing if the current user cannot create a file in ``/dev/shm/" @@ -8226,13 +8180,13 @@ msgid "" "support` module." msgstr "" -#: ../build/NEWS:4238 +#: ../build/NEWS:4273 msgid "" "`bpo-41009 `__: Fix use of ``support." "require_{linux|mac|freebsd}_version()`` decorators as class decorator." msgstr "" -#: ../build/NEWS:4241 +#: ../build/NEWS:4276 msgid "" "`bpo-41003 `__: Fix ``test_copyreg`` " "when ``numpy`` is installed: ``test.pickletester`` now saves/restores " @@ -8240,187 +8194,187 @@ msgid "" "``numpy``." msgstr "" -#: ../build/NEWS:4245 +#: ../build/NEWS:4280 msgid "" "`bpo-40964 `__: Disable remote :mod:" "`imaplib` tests, host cyrus.andrew.cmu.edu is blocking incoming connections." msgstr "" -#: ../build/NEWS:4248 +#: ../build/NEWS:4283 msgid "" "`bpo-40927 `__: Fix test_binhex when run " "twice: it now uses import_fresh_module() to ensure that it raises " "DeprecationWarning each time." msgstr "" -#: ../build/NEWS:4252 +#: ../build/NEWS:4287 msgid "" "`bpo-17258 `__: Skip some :mod:" "`multiprocessing` tests when MD5 hash digest is blocked." msgstr "" -#: ../build/NEWS:4255 +#: ../build/NEWS:4290 msgid "" "`bpo-31904 `__: Increase " "LOOPBACK_TIMEOUT to 10 for VxWorks RTOS." msgstr "" -#: ../build/NEWS:4257 +#: ../build/NEWS:4292 msgid "" "`bpo-38169 `__: Increase code coverage " "for SharedMemory and ShareableList" msgstr "" -#: ../build/NEWS:4259 +#: ../build/NEWS:4294 msgid "" "`bpo-34401 `__: Make test_gdb properly " "run on HP-UX. Patch by Michael Osipov." msgstr "" -#: ../build/NEWS:4264 +#: ../build/NEWS:4299 msgid "" "`bpo-38249 `__: Update :c:macro:" "`Py_UNREACHABLE` to use __builtin_unreachable() if only the compiler is able " "to use it. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:4267 +#: ../build/NEWS:4302 msgid "" "`bpo-41617 `__: Fix ``pycore_bitutils." "h`` header file to support old clang versions: ``__builtin_bswap16()`` is " "not available in LLVM clang 3.0." msgstr "" -#: ../build/NEWS:4270 +#: ../build/NEWS:4305 msgid "" "`bpo-40204 `__: Pin Sphinx version to " "2.3.1 in ``Doc/Makefile``." msgstr "" -#: ../build/NEWS:4272 +#: ../build/NEWS:4307 msgid "" "`bpo-36020 `__: The C99 functions :c:" "func:`snprintf` and :c:func:`vsnprintf` are now required to build Python." msgstr "" -#: ../build/NEWS:4275 +#: ../build/NEWS:4310 msgid "" "`bpo-40684 `__: ``make install`` now " "uses the ``PLATLIBDIR`` variable for the destination ``lib-dynload/`` " "directory when ``./configure --with-platlibdir`` is used." msgstr "" -#: ../build/NEWS:4279 +#: ../build/NEWS:4314 msgid "" "`bpo-40683 `__: Fixed an issue where " "the :mod:`zoneinfo` module and its tests were not included when Python is " "installed with ``make``." msgstr "" -#: ../build/NEWS:4285 +#: ../build/NEWS:4320 msgid "" "`bpo-41744 `__: Fixes automatic import " "of props file when using the Nuget package." msgstr "" -#: ../build/NEWS:4288 +#: ../build/NEWS:4323 msgid "" "`bpo-41627 `__: The user site directory " "for 32-bit now includes a ``-32`` suffix to distinguish it from the 64-bit " "interpreter's directory." msgstr "" -#: ../build/NEWS:4291 +#: ../build/NEWS:4326 msgid "" "`bpo-41526 `__: Fixed layout of final " "page of the installer by removing the special thanks to Mark Hammond (with " "his permission)." msgstr "" -#: ../build/NEWS:4294 +#: ../build/NEWS:4329 msgid "" "`bpo-41492 `__: Fixes the description " "that appears in UAC prompts." msgstr "" -#: ../build/NEWS:4296 +#: ../build/NEWS:4331 msgid "" "`bpo-40948 `__: Improve post-install " "message to direct people to the \"py\" command." msgstr "" -#: ../build/NEWS:4299 +#: ../build/NEWS:4334 msgid "" "`bpo-41412 `__: The installer will now " "fail to install on Windows 7 and Windows 8. Further, the UCRT dependency is " "now always downloaded on demand." msgstr "" -#: ../build/NEWS:4302 +#: ../build/NEWS:4337 msgid "" "`bpo-40741 `__: Update Windows release " "to include SQLite 3.32.3." msgstr "" -#: ../build/NEWS:4304 +#: ../build/NEWS:4339 msgid "" "`bpo-41142 `__: :mod:`msilib` now " "supports creating CAB files with non-ASCII file path and adding files with " "non-ASCII file path to them." msgstr "" -#: ../build/NEWS:4307 +#: ../build/NEWS:4342 msgid "" "`bpo-41074 `__: Fixed support of non-" "ASCII names in functions :func:`msilib.OpenDatabase` and :func:`msilib." "init_database` and non-ASCII SQL in method :meth:`msilib.Database.OpenView`." msgstr "" -#: ../build/NEWS:4311 +#: ../build/NEWS:4346 msgid "" "`bpo-41039 `__: Stable ABI redirection " "DLL (python3.dll) now uses ``#pragma comment(linker)`` for re-exporting." msgstr "" -#: ../build/NEWS:4314 +#: ../build/NEWS:4349 msgid "" "`bpo-40164 `__: Updates Windows OpenSSL " "to 1.1.1g" msgstr "" -#: ../build/NEWS:4316 +#: ../build/NEWS:4351 msgid "" "`bpo-39631 `__: Changes the registered " "MIME type for ``.py`` files on Windows to ``text/x-python`` instead of " "``text/plain``." msgstr "" -#: ../build/NEWS:4319 +#: ../build/NEWS:4354 msgid "" "`bpo-40677 `__: Manually define " "IO_REPARSE_TAG_APPEXECLINK in case some old Windows SDK doesn't have it." msgstr "" -#: ../build/NEWS:4322 +#: ../build/NEWS:4357 msgid "" "`bpo-37556 `__: Extend py.exe help to " "mention overrides via venv, shebang, environmental variables & ini files." msgstr "" -#: ../build/NEWS:4328 +#: ../build/NEWS:4363 msgid "" "`bpo-41557 `__: Update macOS installer " "to use SQLite 3.33.0." msgstr "" -#: ../build/NEWS:4330 +#: ../build/NEWS:4365 msgid "" "`bpo-39580 `__: Avoid opening Finder " "window if running installer from the command line. Patch contributed by Rick " "Heil." msgstr "" -#: ../build/NEWS:4333 +#: ../build/NEWS:4368 msgid "" "`bpo-41100 `__: Fix configure error when " "building on macOS 11. Note that the current Python release was released " @@ -8430,99 +8384,99 @@ msgid "" "3.8.x and with 3.9.0." msgstr "" -#: ../build/NEWS:4339 +#: ../build/NEWS:4374 msgid "" "`bpo-40741 `__: Update macOS installer " "to use SQLite 3.32.3." msgstr "" -#: ../build/NEWS:4341 +#: ../build/NEWS:4376 msgid "" "`bpo-41005 `__: fixed an XDG settings " "issue not allowing macos to open browser in webbrowser.py" msgstr "" -#: ../build/NEWS:4344 +#: ../build/NEWS:4379 msgid "" "`bpo-40741 `__: Update macOS installer " "to use SQLite 3.32.2." msgstr "" -#: ../build/NEWS:4349 +#: ../build/NEWS:4384 msgid "" "`bpo-41775 `__: Use 'IDLE Shell' as " "shell title" msgstr "" -#: ../build/NEWS:4351 +#: ../build/NEWS:4386 msgid "" "`bpo-35764 `__: Rewrite the Calltips doc " "section." msgstr "" -#: ../build/NEWS:4353 +#: ../build/NEWS:4388 msgid "" "`bpo-40181 `__: In calltips, stop " "reminding that '/' marks the end of positional-only arguments." msgstr "" -#: ../build/NEWS:4356 +#: ../build/NEWS:4391 msgid "" "`bpo-41468 `__: Improve IDLE run crash " "error message (which users should never see)." msgstr "" -#: ../build/NEWS:4359 +#: ../build/NEWS:4394 msgid "" "`bpo-41373 `__: Save files loaded with " "no line ending, as when blank, or different line endings, by setting its " "line ending to the system default. Fix regression in 3.8.4 and 3.9.0b4." msgstr "" -#: ../build/NEWS:4363 +#: ../build/NEWS:4398 msgid "" "`bpo-41300 `__: Save files with non-" "ascii chars. Fix regression released in 3.9.0b4 and 3.8.4." msgstr "" -#: ../build/NEWS:4366 +#: ../build/NEWS:4401 msgid "" "`bpo-37765 `__: Add keywords to module " "name completion list. Rewrite Completions section of IDLE doc." msgstr "" -#: ../build/NEWS:4369 +#: ../build/NEWS:4404 msgid "" "`bpo-41152 `__: The encoding of " "``stdin``, ``stdout`` and ``stderr`` in IDLE is now always UTF-8." msgstr "" -#: ../build/NEWS:4372 +#: ../build/NEWS:4407 msgid "" "`bpo-41144 `__: Make Open Module open a " "special module such as os.path." msgstr "" -#: ../build/NEWS:4374 +#: ../build/NEWS:4409 msgid "" "`bpo-39885 `__: Make context menu Cut " "and Copy work again when right-clicking within a selection." msgstr "" -#: ../build/NEWS:4377 +#: ../build/NEWS:4412 msgid "" "`bpo-40723 `__: Make test_idle pass when " "run after import." msgstr "" -#: ../build/NEWS:4382 +#: ../build/NEWS:4417 msgid "" "`bpo-41936 `__: Removed undocumented " "macros ``Py_ALLOW_RECURSION`` and ``Py_END_ALLOW_RECURSION`` and the " "``recursion_critical`` field of the :c:type:`PyInterpreterState` structure." msgstr "" -#: ../build/NEWS:4386 +#: ../build/NEWS:4421 msgid "" "`bpo-41692 `__: The " "``PyUnicode_InternImmortal()`` function is now deprecated and will be " @@ -8530,13 +8484,13 @@ msgid "" "by Victor Stinner." msgstr "" -#: ../build/NEWS:4390 +#: ../build/NEWS:4425 msgid "" "`bpo-41842 `__: Add :c:func:" "`PyCodec_Unregister` function to unregister a codec search function." msgstr "" -#: ../build/NEWS:4393 +#: ../build/NEWS:4428 msgid "" "`bpo-41834 `__: Remove the " "``_Py_CheckRecursionLimit`` variable: it has been replaced by ``ceval." @@ -8544,28 +8498,28 @@ msgid "" "Victor Stinner." msgstr "" -#: ../build/NEWS:4397 +#: ../build/NEWS:4432 msgid "" "`bpo-41689 `__: Types created with :c:" "func:`PyType_FromSpec` now make any signature in their ``tp_doc`` slot " "accessible from ``__text_signature__``." msgstr "" -#: ../build/NEWS:4400 +#: ../build/NEWS:4435 msgid "" "`bpo-41524 `__: Fix bug in " "PyOS_mystrnicmp and PyOS_mystricmp that incremented pointers beyond the end " "of a string." msgstr "" -#: ../build/NEWS:4403 +#: ../build/NEWS:4438 msgid "" "`bpo-41324 `__: Add a minimal decimal " "capsule API. The API supports fast conversions between Decimals up to 38 " "digits and their triple representation as a C struct." msgstr "" -#: ../build/NEWS:4407 +#: ../build/NEWS:4442 msgid "" "`bpo-30155 `__: Add :c:func:" "`PyDateTime_DATE_GET_TZINFO` and :c:func:`PyDateTime_TIME_GET_TZINFO` macros " @@ -8573,7 +8527,7 @@ msgid "" "class:`datetime.time` objects." msgstr "" -#: ../build/NEWS:4412 +#: ../build/NEWS:4447 msgid "" "`bpo-40170 `__: Revert :c:func:" "`PyType_HasFeature` change: it reads again directly the :c:member:" @@ -8582,31 +8536,31 @@ msgid "" "details." msgstr "" -#: ../build/NEWS:4417 +#: ../build/NEWS:4452 msgid "" "`bpo-41123 `__: Remove " "``PyUnicode_AsUnicodeCopy``." msgstr "" -#: ../build/NEWS:4419 +#: ../build/NEWS:4454 msgid "" "`bpo-41123 `__: Removed " "``PyLong_FromUnicode()``." msgstr "" -#: ../build/NEWS:4421 +#: ../build/NEWS:4456 msgid "" "`bpo-41123 `__: Removed " "``PyUnicode_GetMax()``." msgstr "" -#: ../build/NEWS:4423 +#: ../build/NEWS:4458 msgid "" "`bpo-41123 `__: Removed " "``Py_UNICODE_str*`` functions manipulating ``Py_UNICODE*`` strings." msgstr "" -#: ../build/NEWS:4426 +#: ../build/NEWS:4461 msgid "" "`bpo-41103 `__: " "``PyObject_AsCharBuffer()``, ``PyObject_AsReadBuffer()``, " @@ -8615,14 +8569,14 @@ msgid "" "and :c:func:`PyBuffer_Release`." msgstr "" -#: ../build/NEWS:4431 +#: ../build/NEWS:4466 msgid "" "`bpo-36346 `__: Raises " "DeprecationWarning for ``PyUnicode_FromUnicode(NULL, size)`` and " "``PyUnicode_FromStringAndSize(NULL, size)`` with ``size > 0``." msgstr "" -#: ../build/NEWS:4434 +#: ../build/NEWS:4469 msgid "" "`bpo-36346 `__: Mark " "``Py_UNICODE_COPY``, ``Py_UNICODE_FILL``, ``PyUnicode_WSTR_LENGTH``, " @@ -8631,7 +8585,7 @@ msgid "" "``Py_UNICODE_MATCH`` which was deprecated and broken since Python 3.3." msgstr "" -#: ../build/NEWS:4440 +#: ../build/NEWS:4475 msgid "" "`bpo-40989 `__: The :c:func:" "`PyObject_INIT` and :c:func:`PyObject_INIT_VAR` macros become aliases to, " @@ -8639,13 +8593,13 @@ msgid "" "functions." msgstr "" -#: ../build/NEWS:4444 +#: ../build/NEWS:4479 msgid "" "`bpo-36020 `__: On Windows, ``#include " "\"pyerrors.h\"`` no longer defines ``snprintf`` and ``vsnprintf`` macros." msgstr "" -#: ../build/NEWS:4447 +#: ../build/NEWS:4482 msgid "" "`bpo-40943 `__: The ``PY_SSIZE_T_CLEAN`` " "macro must now be defined to use :c:func:`PyArg_ParseTuple` and :c:func:" @@ -8654,7 +8608,7 @@ msgid "" "values ` and the :pep:`353`." msgstr "" -#: ../build/NEWS:4453 +#: ../build/NEWS:4488 msgid "" "`bpo-40910 `__: Export explicitly the :c:" "func:`Py_GetArgcArgv` function to the C API and document the function. " @@ -8662,40 +8616,40 @@ msgid "" "built with ``-fvisibility=hidden``." msgstr "" -#: ../build/NEWS:4457 +#: ../build/NEWS:4492 msgid "" "`bpo-40724 `__: Allow defining buffer " "slots in type specs." msgstr "" -#: ../build/NEWS:4459 +#: ../build/NEWS:4494 msgid "" "`bpo-40679 `__: Fix a " "``_PyEval_EvalCode()`` crash if *qualname* argument is NULL." msgstr "" -#: ../build/NEWS:4462 +#: ../build/NEWS:4497 msgid "" "`bpo-40839 `__: Calling :c:func:" "`PyDict_GetItem` without :term:`GIL` held had been allowed for historical " "reason. It is no longer allowed." msgstr "" -#: ../build/NEWS:4465 +#: ../build/NEWS:4500 msgid "" "`bpo-40826 `__: :c:func:" "`PyOS_InterruptOccurred` now fails with a fatal error if it is called with " "the GIL released." msgstr "" -#: ../build/NEWS:4468 +#: ../build/NEWS:4503 msgid "" "`bpo-40792 `__: The result of :c:func:" "`PyNumber_Index` now always has exact type :class:`int`. Previously, the " "result could have been an instance of a subclass of ``int``." msgstr "" -#: ../build/NEWS:4472 +#: ../build/NEWS:4507 msgid "" "`bpo-39573 `__: Convert :c:func:" "`Py_REFCNT` and :c:func:`Py_SIZE` macros to static inline functions. They " @@ -8705,98 +8659,98 @@ msgid "" "`PyObject` structure." msgstr "" -#: ../build/NEWS:4478 +#: ../build/NEWS:4513 msgid "" "`bpo-40703 `__: The PyType_FromSpec*() " "functions no longer overwrite the type's \"__module__\" attribute if it is " "set via \"Py_tp_members\" or \"Py_tp_getset\"." msgstr "" -#: ../build/NEWS:4481 +#: ../build/NEWS:4516 msgid "" "`bpo-39583 `__: Remove superfluous " "\"extern C\" declarations from ``Include/cpython/*.h``." msgstr "" -#: ../build/NEWS:4486 +#: ../build/NEWS:4521 msgid "Python 3.9.0 beta 1" msgstr "" -#: ../build/NEWS:4488 +#: ../build/NEWS:4523 msgid "*Release date: 2020-05-19*" msgstr "" -#: ../build/NEWS:4493 +#: ../build/NEWS:4528 msgid "" "`bpo-40501 `__: :mod:`uuid` no longer " "uses :mod:`ctypes` to load :file:`libuuid` or :file:`rpcrt4.dll` at runtime." msgstr "" -#: ../build/NEWS:4499 +#: ../build/NEWS:4534 msgid "" "`bpo-40663 `__: Correctly generate " "annotations where parentheses are omitted but required (e.g: ``Type[(str, " "int, *other))]``." msgstr "" -#: ../build/NEWS:4502 +#: ../build/NEWS:4537 msgid "" "`bpo-40596 `__: Fixed :meth:`str." "isidentifier` for non-canonicalized strings containing non-BMP characters on " "Windows." msgstr "" -#: ../build/NEWS:4505 +#: ../build/NEWS:4540 msgid "" "`bpo-40593 `__: Improved syntax errors " "for invalid characters in source code." msgstr "" -#: ../build/NEWS:4507 +#: ../build/NEWS:4542 msgid "" "`bpo-40585 `__: Fixed a bug when using :" "func:`codeop.compile_command` that was causing exceptions to be swallowed " "with the new parser. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:4511 +#: ../build/NEWS:4546 msgid "" "`bpo-40566 `__: Apply :pep:`573` to :mod:" "`abc`." msgstr "" -#: ../build/NEWS:4513 +#: ../build/NEWS:4548 msgid "" "`bpo-40502 `__: Initialize ``n-" ">n_col_offset``. (Patch by Joannah Nanjekye)" msgstr "" -#: ../build/NEWS:4515 +#: ../build/NEWS:4550 msgid "" "`bpo-40527 `__: Fix command line " "argument parsing: no longer write errors multiple times into stderr." msgstr "" -#: ../build/NEWS:4518 +#: ../build/NEWS:4553 msgid "" "`bpo-1635741 `__: Port :mod:`errno` to " "multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:4520 +#: ../build/NEWS:4555 msgid "" "`bpo-40523 `__: Add pass-throughs for :" "func:`hash` and :func:`reversed` to :class:`weakref.proxy` objects. Patch by " "Pablo Galindo." msgstr "" -#: ../build/NEWS:4523 +#: ../build/NEWS:4558 msgid "" "`bpo-1635741 `__: Port :mod:`syslog` " "to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:4525 +#: ../build/NEWS:4560 msgid "" "`bpo-40246 `__: Reporting a specialised " "error message for invalid string prefixes, which was introduced in :issue:" @@ -8806,84 +8760,84 @@ msgid "" "failing to parse, which is not an acceptable breakage on such short notice." msgstr "" -#: ../build/NEWS:4532 +#: ../build/NEWS:4567 msgid "" "`bpo-40417 `__: Fix imp module " "deprecation warning when PyImport_ReloadModule is called. Patch by Robert " "Rouhani." msgstr "" -#: ../build/NEWS:4535 +#: ../build/NEWS:4570 msgid "" "`bpo-40408 `__: Fixed support of nested " "type variables in GenericAlias (e.g. ``list[list[T]]``)." msgstr "" -#: ../build/NEWS:4538 +#: ../build/NEWS:4573 msgid "" "`bpo-1635741 `__: Port _stat module to " "multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:4540 +#: ../build/NEWS:4575 msgid "" "`bpo-29587 `__: Enable implicit " "exception chaining when calling :meth:`generator.throw`." msgstr "" -#: ../build/NEWS:4543 +#: ../build/NEWS:4578 msgid "" "`bpo-40328 `__: Add tools for generating " "mappings headers for CJKCodecs." msgstr "" -#: ../build/NEWS:4545 +#: ../build/NEWS:4580 msgid "" "`bpo-40228 `__: Setting frame.f_lineno " "is now robust w.r.t. changes in the source-to-bytecode compiler" msgstr "" -#: ../build/NEWS:4548 +#: ../build/NEWS:4583 msgid "" "`bpo-38880 `__: Added the ability to " "list interpreters associated with channel ends in the internal " "subinterpreters module." msgstr "" -#: ../build/NEWS:4551 +#: ../build/NEWS:4586 msgid "" "`bpo-37986 `__: Improve performance of :" "c:func:`PyLong_FromDouble` for values that fit into :c:type:`long`." msgstr "" -#: ../build/NEWS:4557 +#: ../build/NEWS:4592 msgid "" "`bpo-40662 `__: Fixed :func:`ast." "get_source_segment` for ast nodes that have incomplete location information. " "Patch by Irit Katriel." msgstr "" -#: ../build/NEWS:4560 +#: ../build/NEWS:4595 msgid "" "`bpo-40665 `__: Convert :mod:`bisect` to " "use Argument Clinic." msgstr "" -#: ../build/NEWS:4562 +#: ../build/NEWS:4597 msgid "" "`bpo-40536 `__: Added the :func:" "`~zoneinfo.available_timezones` function to the :mod:`zoneinfo` module. " "Patch by Paul Ganssle." msgstr "" -#: ../build/NEWS:4565 +#: ../build/NEWS:4600 msgid "" "`bpo-40645 `__: The :class:`hmac.HMAC` " "exposes internal implementation details. The attributes ``digest_cons``, " "``inner``, and ``outer`` are deprecated and will be removed in the future." msgstr "" -#: ../build/NEWS:4569 +#: ../build/NEWS:4604 msgid "" "`bpo-40645 `__: The internal module " "``_hashlib`` wraps and exposes OpenSSL's HMAC API. The new code will be used " @@ -8891,39 +8845,39 @@ msgid "" "HMAC module are no longer part of the public API." msgstr "" -#: ../build/NEWS:4574 +#: ../build/NEWS:4609 msgid "" "`bpo-40637 `__: Builtin hash modules can " "now be disabled or selectively enabled with ``configure --with-builtin-" "hashlib-hashes=sha3,blake1`` or ``--without-builtin-hashlib-hashes``." msgstr "" -#: ../build/NEWS:4578 +#: ../build/NEWS:4613 msgid "" "`bpo-37630 `__: The :mod:`hashlib` " "module can now use SHA3 hashes and SHAKE XOF from OpenSSL when available." msgstr "" -#: ../build/NEWS:4581 +#: ../build/NEWS:4616 msgid "" "`bpo-40479 `__: The :mod:`hashlib` now " "compiles with OpenSSL 3.0.0-alpha2." msgstr "" -#: ../build/NEWS:4583 +#: ../build/NEWS:4618 msgid "" "`bpo-40257 `__: Revert changes to :func:" "`inspect.getdoc`." msgstr "" -#: ../build/NEWS:4585 +#: ../build/NEWS:4620 msgid "" "`bpo-40607 `__: When cancelling a task " "due to timeout, :meth:`asyncio.wait_for` will now propagate the exception if " "an error happens during cancellation. Patch by Roman Skurikhin." msgstr "" -#: ../build/NEWS:4589 +#: ../build/NEWS:4624 msgid "" "`bpo-40612 `__: Fix edge cases in " "SyntaxError formatting. If the offset is <= 0, no caret is printed. If the " @@ -8931,52 +8885,52 @@ msgid "" "character." msgstr "" -#: ../build/NEWS:4593 +#: ../build/NEWS:4628 msgid "" "`bpo-40597 `__: If text content lines " "are longer than policy.max_line_length, always use a content-encoding to " "make sure they are wrapped." msgstr "" -#: ../build/NEWS:4596 +#: ../build/NEWS:4631 msgid "" "`bpo-40571 `__: Added functools.cache() " "as a simpler, more discoverable way to access the unbounded cache variant of " "lru_cache(maxsize=None)." msgstr "" -#: ../build/NEWS:4599 +#: ../build/NEWS:4634 msgid "" "`bpo-40503 `__: :pep:`615`, the :mod:" "`zoneinfo` module. Adds support for the IANA time zone database." msgstr "" -#: ../build/NEWS:4602 +#: ../build/NEWS:4637 msgid "" "`bpo-40397 `__: Removed attributes " "``__args__`` and ``__parameters__`` from special generic aliases like " "``typing.List`` (not subscripted)." msgstr "" -#: ../build/NEWS:4605 +#: ../build/NEWS:4640 msgid "" "`bpo-40549 `__: Convert posixmodule.c " "(\"posix\" or \"nt\" module) to the multiphase initialization (PEP 489)." msgstr "" -#: ../build/NEWS:4608 +#: ../build/NEWS:4643 msgid "" "`bpo-31033 `__: Add a ``msg`` argument " "to :meth:`Future.cancel` and :meth:`Task.cancel`." msgstr "" -#: ../build/NEWS:4611 +#: ../build/NEWS:4646 msgid "" "`bpo-40541 `__: Added an optional " "*counts* parameter to random.sample()." msgstr "" -#: ../build/NEWS:4613 +#: ../build/NEWS:4648 msgid "" "`bpo-40515 `__: The :mod:`ssl` and :mod:" "`hashlib` modules now actively check that OpenSSL is build with thread " @@ -8984,26 +8938,26 @@ msgid "" "safely with a no-thread builds." msgstr "" -#: ../build/NEWS:4617 +#: ../build/NEWS:4652 msgid "" "`bpo-31033 `__: When a :class:`asyncio." "Task` is cancelled, the exception traceback now chains all the way back to " "where the task was first interrupted." msgstr "" -#: ../build/NEWS:4621 +#: ../build/NEWS:4656 msgid "" "`bpo-40504 `__: :func:`functools." "lru_cache` objects can now be the targets of weakrefs." msgstr "" -#: ../build/NEWS:4624 +#: ../build/NEWS:4659 msgid "" "`bpo-40559 `__: Fix possible memory leak " "in the C implementation of :class:`asyncio.Task`." msgstr "" -#: ../build/NEWS:4627 +#: ../build/NEWS:4662 msgid "" "`bpo-40480 `__: ``fnmatch.fnmatch()`` " "could take exponential time in the presence of multiple ``*`` pattern " @@ -9011,20 +8965,20 @@ msgid "" "expressions to avoid futile backtracking." msgstr "" -#: ../build/NEWS:4632 +#: ../build/NEWS:4667 msgid "" "`bpo-40495 `__: :mod:`compileall` is now " "able to use hardlinks to prevent duplicates in a case when ``.pyc`` files " "for different optimization levels have the same content." msgstr "" -#: ../build/NEWS:4636 +#: ../build/NEWS:4671 msgid "" "`bpo-40457 `__: The ssl module now " "support OpenSSL builds without TLS 1.0 and 1.1 methods." msgstr "" -#: ../build/NEWS:4639 +#: ../build/NEWS:4674 msgid "" "`bpo-40355 `__: Improve error reporting " "in :func:`ast.literal_eval` in the presence of malformed :class:`ast.Dict` " @@ -9032,38 +8986,38 @@ msgid "" "Curtis Bucher." msgstr "" -#: ../build/NEWS:4643 +#: ../build/NEWS:4678 msgid "" "`bpo-40465 `__: Deprecated the optional " "*random* argument to *random.shuffle()*." msgstr "" -#: ../build/NEWS:4646 +#: ../build/NEWS:4681 msgid "" "`bpo-40459 `__: :func:`platform." "win32_ver` now produces correct *ptype* strings instead of empty strings." msgstr "" -#: ../build/NEWS:4649 +#: ../build/NEWS:4684 msgid "" "`bpo-39435 `__: The first argument of :" "func:`pickle.loads` is now positional-only." msgstr "" -#: ../build/NEWS:4652 +#: ../build/NEWS:4687 msgid "" "`bpo-39305 `__: Update :mod:`nntplib` to " "merge :class:`nntplib.NNTP` and :class:`nntplib._NNTPBase`. Patch by Dong-" "hee Na." msgstr "" -#: ../build/NEWS:4655 +#: ../build/NEWS:4690 msgid "" "`bpo-32494 `__: Update :mod:`dbm.gnu` to " "use gdbm_count if possible when calling :func:`len`. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:4658 +#: ../build/NEWS:4693 msgid "" "`bpo-40453 `__: Add ``isolated=True`` " "keyword-only parameter to ``_xxsubinterpreters.create()``. An isolated " @@ -9071,7 +9025,7 @@ msgid "" "fork()``." msgstr "" -#: ../build/NEWS:4662 +#: ../build/NEWS:4697 msgid "" "`bpo-40286 `__: Remove ``_random.Random." "randbytes()``: the C implementation of ``randbytes()``. Implement the method " @@ -9079,79 +9033,79 @@ msgid "" "``getrandbits()``." msgstr "" -#: ../build/NEWS:4666 +#: ../build/NEWS:4701 msgid "" "`bpo-40394 `__: Added default arguments " "to :meth:`difflib.SequenceMatcher.find_longest_match()`." msgstr "" -#: ../build/NEWS:4669 +#: ../build/NEWS:4704 msgid "" "`bpo-39995 `__: Fix a race condition in " "concurrent.futures._ThreadWakeup: access to _ThreadWakeup is now protected " "with the shutdown lock." msgstr "" -#: ../build/NEWS:4672 +#: ../build/NEWS:4707 msgid "" "`bpo-30966 `__: ``Process." "shutdown(wait=True)`` of :mod:`concurrent.futures` now closes explicitly the " "result queue." msgstr "" -#: ../build/NEWS:4675 +#: ../build/NEWS:4710 msgid "" "`bpo-30966 `__: Add a new :meth:" "`~multiprocessing.SimpleQueue.close` method to the :class:`~multiprocessing." "SimpleQueue` class to explicitly close the queue." msgstr "" -#: ../build/NEWS:4679 +#: ../build/NEWS:4714 msgid "" "`bpo-39966 `__: Revert `bpo-25597 " "`__. :class:`unittest.mock.MagicMock` " "with wraps' set uses default return values for magic methods." msgstr "" -#: ../build/NEWS:4682 +#: ../build/NEWS:4717 msgid "" "`bpo-39791 `__: Added ``files()`` " "function to importlib.resources with support for subdirectories in package " "data, matching backport in importlib_resources 1.5." msgstr "" -#: ../build/NEWS:4686 +#: ../build/NEWS:4721 msgid "" "`bpo-40375 `__: :meth:`imaplib.IMAP4." "unselect` is added. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:4688 +#: ../build/NEWS:4723 msgid "" "`bpo-40389 `__: ``repr()`` now returns " "``typing.Optional[T]`` when called for ``typing.Union`` of two types, one of " "which is ``NoneType``." msgstr "" -#: ../build/NEWS:4691 +#: ../build/NEWS:4726 msgid "" "`bpo-40291 `__: Add support for " "CAN_J1939 sockets (available on Linux 5.4+)" msgstr "" -#: ../build/NEWS:4693 +#: ../build/NEWS:4728 msgid "" "`bpo-40273 `__: :class:`types." "MappingProxyType` is now reversible." msgstr "" -#: ../build/NEWS:4695 +#: ../build/NEWS:4730 msgid "" "`bpo-39075 `__: The repr for :class:" "`types.SimpleNamespace` is now insertion ordered rather than alphabetical." msgstr "" -#: ../build/NEWS:4698 +#: ../build/NEWS:4733 msgid "" "`bpo-40192 `__: On AIX, :func:`~time." "thread_time` is now implemented with ``thread_cputime()`` which has " @@ -9160,13 +9114,13 @@ msgid "" "Patch by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:4703 +#: ../build/NEWS:4738 msgid "" "`bpo-40025 `__: Raise TypeError when " "_generate_next_value_ is defined after members. Patch by Ethan Onstott." msgstr "" -#: ../build/NEWS:4706 +#: ../build/NEWS:4741 msgid "" "`bpo-39058 `__: In the argparse module, " "the repr for Namespace() and other argument holders now displayed in the " @@ -9174,83 +9128,83 @@ msgid "" "even though argument order is preserved the user visible parts of the module." msgstr "" -#: ../build/NEWS:4711 +#: ../build/NEWS:4746 msgid "" "`bpo-24416 `__: The ``isocalendar()`` " "methods of :class:`datetime.date` and :class:`datetime.datetime` now return " "a :term:`named tuple` instead of a :class:`tuple`." msgstr "" -#: ../build/NEWS:4718 +#: ../build/NEWS:4753 msgid "" "`bpo-34790 `__: Add version of removal " "for explicit passing of coros to `asyncio.wait()`'s documentation" msgstr "" -#: ../build/NEWS:4721 +#: ../build/NEWS:4756 msgid "" "`bpo-40561 `__: Provide docstrings for " "webbrowser open functions." msgstr "" -#: ../build/NEWS:4723 +#: ../build/NEWS:4758 msgid "" "`bpo-40499 `__: Mention that :func:" "`asyncio.wait` requires a non-empty set of awaitables." msgstr "" -#: ../build/NEWS:4726 +#: ../build/NEWS:4761 msgid "" "`bpo-39705 `__: Tutorial example for " "sorted() in the Loop Techniques section is given a better explanation. Also " "a new example is included to explain sorted()'s basic behavior." msgstr "" -#: ../build/NEWS:4730 +#: ../build/NEWS:4765 msgid "" "`bpo-39435 `__: Fix an incorrect " "signature for :func:`pickle.loads` in the docs" msgstr "" -#: ../build/NEWS:4735 +#: ../build/NEWS:4770 msgid "" "`bpo-40055 `__: distutils.tests now " "saves/restores warnings filters to leave them unchanged. Importing tests " "imports docutils which imports pkg_resources which adds a warnings filter." msgstr "" -#: ../build/NEWS:4739 +#: ../build/NEWS:4774 msgid "" "`bpo-40436 `__: test_gdb and test." "pythoninfo now check gdb command exit code." msgstr "" -#: ../build/NEWS:4744 +#: ../build/NEWS:4779 msgid "" "`bpo-40653 `__: Move _dirnameW out of " "HAVE_SYMLINK to fix a potential compiling issue." msgstr "" -#: ../build/NEWS:4747 +#: ../build/NEWS:4782 msgid "" "`bpo-40514 `__: Add ``--with-" "experimental-isolated-subinterpreters`` build option to ``configure``: " "better isolate subinterpreters, experimental build mode." msgstr "" -#: ../build/NEWS:4754 +#: ../build/NEWS:4789 msgid "" "`bpo-40650 `__: Include winsock2.h in " "pytime.c for timeval." msgstr "" -#: ../build/NEWS:4756 +#: ../build/NEWS:4791 msgid "" "`bpo-40458 `__: Increase reserved stack " "space to prevent overflow crash on Windows." msgstr "" -#: ../build/NEWS:4759 +#: ../build/NEWS:4794 msgid "" "`bpo-39148 `__: Add IPv6 support to :mod:" "`asyncio` datagram endpoints in ProactorEventLoop. Change the raised " @@ -9258,7 +9212,7 @@ msgid "" "Windows API." msgstr "" -#: ../build/NEWS:4766 +#: ../build/NEWS:4801 msgid "" "`bpo-34956 `__: When building Python on " "macOS from source, ``_tkinter`` now links with non-system Tcl and Tk " @@ -9269,38 +9223,38 @@ msgid "" "includes`` and ``--with-tcltk-libs``." msgstr "" -#: ../build/NEWS:4774 +#: ../build/NEWS:4809 msgid "" "`bpo-35569 `__: Expose RFC 3542 IPv6 " "socket options." msgstr "" -#: ../build/NEWS:4779 +#: ../build/NEWS:4814 msgid "" "`bpo-40479 `__: Update multissltest " "helper to test with latest OpenSSL 1.0.2, 1.1.0, 1.1.1, and 3.0.0-alpha." msgstr "" -#: ../build/NEWS:4782 +#: ../build/NEWS:4817 msgid "" "`bpo-40431 `__: Fix a syntax typo in " "``turtledemo`` that now raises a ``SyntaxError``." msgstr "" -#: ../build/NEWS:4785 +#: ../build/NEWS:4820 msgid "" "`bpo-40163 `__: Fix multissltest tool. " "OpenSSL has changed download URL for old releases. The multissltest tool now " "tries to download from current and old download URLs." msgstr "" -#: ../build/NEWS:4792 +#: ../build/NEWS:4827 msgid "" "`bpo-39465 `__: Remove the " "``_PyUnicode_ClearStaticStrings()`` function from the C API." msgstr "" -#: ../build/NEWS:4795 +#: ../build/NEWS:4830 msgid "" "`bpo-38787 `__: Add " "PyCFunction_CheckExact() macro for exact type checks now that we allow " @@ -9308,79 +9262,79 @@ msgid "" "PyCMethod_Check() for the new PyCMethod subtype." msgstr "" -#: ../build/NEWS:4799 +#: ../build/NEWS:4834 msgid "" "`bpo-40545 `__: Declare " "``_PyErr_GetTopmostException()`` with ``PyAPI_FUNC()`` to properly export " "the function in the C API. The function remains private (``_Py``) prefix." msgstr "" -#: ../build/NEWS:4803 +#: ../build/NEWS:4838 msgid "" "`bpo-40412 `__: Nullify inittab_copy " "during finalization, preventing future interpreter initializations in an " "embedded situation from crashing. Patch by Gregory Szorc." msgstr "" -#: ../build/NEWS:4807 +#: ../build/NEWS:4842 msgid "" "`bpo-40429 `__: The :c:func:" "`PyThreadState_GetFrame` function now returns a strong reference to the " "frame." msgstr "" -#: ../build/NEWS:4810 +#: ../build/NEWS:4845 msgid "" "`bpo-40428 `__: Remove the following " "functions from the C API. Call :c:func:`PyGC_Collect` explicitly to free all " "free lists." msgstr "" -#: ../build/NEWS:4813 +#: ../build/NEWS:4848 msgid "``PyAsyncGen_ClearFreeLists()``" msgstr "" -#: ../build/NEWS:4814 +#: ../build/NEWS:4849 msgid "``PyContext_ClearFreeList()``" msgstr "" -#: ../build/NEWS:4815 +#: ../build/NEWS:4850 msgid "``PyDict_ClearFreeList()``" msgstr "" -#: ../build/NEWS:4816 +#: ../build/NEWS:4851 msgid "``PyFloat_ClearFreeList()``" msgstr "" -#: ../build/NEWS:4817 +#: ../build/NEWS:4852 msgid "``PyFrame_ClearFreeList()``" msgstr "" -#: ../build/NEWS:4818 +#: ../build/NEWS:4853 msgid "``PyList_ClearFreeList()``" msgstr "" -#: ../build/NEWS:4819 +#: ../build/NEWS:4854 msgid "``PySet_ClearFreeList()``" msgstr "" -#: ../build/NEWS:4820 +#: ../build/NEWS:4855 msgid "``PyTuple_ClearFreeList()``" msgstr "" -#: ../build/NEWS:4822 +#: ../build/NEWS:4857 msgid "" "`bpo-40421 `__: New :c:func:" "`PyFrame_GetBack` function: get the frame next outer frame." msgstr "" -#: ../build/NEWS:4825 +#: ../build/NEWS:4860 msgid "" "`bpo-40421 `__: New :c:func:" "`PyFrame_GetCode` function: return a borrowed reference to the frame code." msgstr "" -#: ../build/NEWS:4828 +#: ../build/NEWS:4863 msgid "" "`bpo-40217 `__: Ensure that instances of " "types created with :c:func:`PyType_FromSpecWithBases` will visit its class " @@ -9389,35 +9343,35 @@ msgid "" "by Pablo Galindo." msgstr "" -#: ../build/NEWS:4834 +#: ../build/NEWS:4869 msgid "" "`bpo-38787 `__: Module C state is now " "accessible from C-defined heap type methods (:pep:`573`). Patch by Marcel " "Plch and Petr Viktorin." msgstr "" -#: ../build/NEWS:4839 +#: ../build/NEWS:4874 msgid "Python 3.9.0 alpha 6" msgstr "" -#: ../build/NEWS:4841 +#: ../build/NEWS:4876 msgid "*Release date: 2020-04-27*" msgstr "" -#: ../build/NEWS:4846 +#: ../build/NEWS:4881 msgid "" "`bpo-40121 `__: Fixes audit events " "raised on creating a new socket." msgstr "" -#: ../build/NEWS:4848 +#: ../build/NEWS:4883 msgid "" "`bpo-39073 `__: Disallow CR or LF in " "email.headerregistry.Address arguments to guard against header injection " "attacks." msgstr "" -#: ../build/NEWS:4851 +#: ../build/NEWS:4886 msgid "" "`bpo-39503 `__: CVE-2020-8492: The :" "class:`~urllib.request.AbstractBasicAuthHandler` class of the :mod:`urllib." @@ -9427,13 +9381,13 @@ msgid "" "and Matt Schwager." msgstr "" -#: ../build/NEWS:4861 +#: ../build/NEWS:4896 msgid "" "`bpo-40313 `__: Improve the performance " "of bytes.hex()." msgstr "" -#: ../build/NEWS:4863 +#: ../build/NEWS:4898 msgid "" "`bpo-40334 `__: Switch to a new parser, " "based on PEG. For more details see PEP 617. To temporarily switch back to " @@ -9442,7 +9396,7 @@ msgid "" "module (already deprecated) and anything that depends on it." msgstr "" -#: ../build/NEWS:4869 +#: ../build/NEWS:4904 msgid "" "`bpo-40267 `__: Fix the tokenizer to " "display the correct error message, when there is a SyntaxError on the last " @@ -9450,28 +9404,28 @@ msgid "" "parsing`, while it should be `invalid syntax`." msgstr "" -#: ../build/NEWS:4874 +#: ../build/NEWS:4909 msgid "" "`bpo-39522 `__: Correctly unparse " "explicit ``u`` prefix for strings when postponed evaluation for annotations " "activated. Patch by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:4877 +#: ../build/NEWS:4912 msgid "" "`bpo-40246 `__: Report a specialized " "error message, `invalid string prefix`, when the tokenizer encounters a " "string with an invalid prefix." msgstr "" -#: ../build/NEWS:4880 +#: ../build/NEWS:4915 msgid "" "`bpo-40082 `__: Fix the signal handler: " "it now always uses the main interpreter, rather than trying to get the " "current Python thread state." msgstr "" -#: ../build/NEWS:4883 +#: ../build/NEWS:4918 msgid "" "`bpo-37388 `__: str.encode() and str." "decode() no longer check the encoding and errors in development mode or in " @@ -9479,67 +9433,67 @@ msgid "" "work on very late calls to str.encode() and str.decode()." msgstr "" -#: ../build/NEWS:4888 +#: ../build/NEWS:4923 msgid "" "`bpo-40077 `__: Fix possible refleaks " "in :mod:`_json`, memo of PyScannerObject should be traversed." msgstr "" -#: ../build/NEWS:4891 +#: ../build/NEWS:4926 msgid "" "`bpo-37207 `__: Speed up calls to " "``dict()`` by using the :pep:`590` ``vectorcall`` calling convention." msgstr "" -#: ../build/NEWS:4894 +#: ../build/NEWS:4929 msgid "" "`bpo-40141 `__: Add column and line " "information to ``ast.keyword`` nodes. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:4897 +#: ../build/NEWS:4932 msgid "" "`bpo-1635741 `__: Port :mod:`resource` " "to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:4900 +#: ../build/NEWS:4935 msgid "" "`bpo-1635741 `__: Port :mod:`math` to " "multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:4902 +#: ../build/NEWS:4937 msgid "" "`bpo-1635741 `__: Port _uuid module to " "multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:4904 +#: ../build/NEWS:4939 msgid "" "`bpo-40077 `__: Convert json module to " "use :c:func:`PyType_FromSpec`." msgstr "" -#: ../build/NEWS:4906 +#: ../build/NEWS:4941 msgid "" "`bpo-40067 `__: Improve the error " "message for multiple star expressions in an assignment. Patch by Furkan Onder" msgstr "" -#: ../build/NEWS:4909 +#: ../build/NEWS:4944 msgid "" "`bpo-1635741 `__: Port _functools " "module to multiphase initialization (PEP 489). Patch by Paulo Henrique Silva." msgstr "" -#: ../build/NEWS:4912 +#: ../build/NEWS:4947 msgid "" "`bpo-1635741 `__: Port operator module " "to multiphase initialization (PEP 489). Patch by Paulo Henrique Silva." msgstr "" -#: ../build/NEWS:4915 +#: ../build/NEWS:4950 msgid "" "`bpo-20526 `__: Fix :c:func:" "`PyThreadState_Clear()`. ``PyThreadState.frame`` is a borrowed reference, " @@ -9547,25 +9501,25 @@ msgid "" "``Py_CLEAR(tstate->frame)``." msgstr "" -#: ../build/NEWS:4919 +#: ../build/NEWS:4954 msgid "" "`bpo-1635741 `__: Port time module to " "multiphase initialization (:pep:`489`). Patch by Paulo Henrique Silva." msgstr "" -#: ../build/NEWS:4922 ../build/NEWS:5314 +#: ../build/NEWS:4957 ../build/NEWS:5349 msgid "" "`bpo-1635741 `__: Port _weakref " "extension module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:4925 +#: ../build/NEWS:4960 msgid "" "`bpo-40020 `__: Fix a leak and " "subsequent crash in parsetok.c caused by realloc misuse on a rare codepath." msgstr "" -#: ../build/NEWS:4928 +#: ../build/NEWS:4963 msgid "" "`bpo-39939 `__: Added str.removeprefix " "and str.removesuffix methods and corresponding bytes, bytearray, and " @@ -9573,39 +9527,39 @@ msgid "" "See :pep:`616` for a full description. Patch by Dennis Sweeney." msgstr "" -#: ../build/NEWS:4933 +#: ../build/NEWS:4968 msgid "" "`bpo-39481 `__: Implement PEP 585. This " "supports list[int], tuple[str, ...] etc." msgstr "" -#: ../build/NEWS:4936 +#: ../build/NEWS:4971 msgid "" "`bpo-32894 `__: Support unparsing of " "infinity numbers in postponed annotations. Patch by Batuhan Taşkaya." msgstr "" -#: ../build/NEWS:4939 +#: ../build/NEWS:4974 msgid "" "`bpo-37207 `__: Speed up calls to " "``list()`` by using the :pep:`590` ``vectorcall`` calling convention. Patch " "by Mark Shannon." msgstr "" -#: ../build/NEWS:4945 +#: ../build/NEWS:4980 msgid "" "`bpo-40398 `__: :func:`typing.get_args` " "now always returns an empty tuple for special generic aliases." msgstr "" -#: ../build/NEWS:4948 +#: ../build/NEWS:4983 msgid "" "`bpo-40396 `__: Functions :func:`typing." "get_origin`, :func:`typing.get_args` and :func:`typing.get_type_hints` " "support now generic aliases like ``list[int]``." msgstr "" -#: ../build/NEWS:4952 +#: ../build/NEWS:4987 msgid "" "`bpo-38061 `__: Optimize the :mod:" "`subprocess` module on FreeBSD using ``closefrom()``. A single ``close(fd)`` " @@ -9613,80 +9567,80 @@ msgid "" "calling ``close(fd)`` on each file descriptor can take several milliseconds." msgstr "" -#: ../build/NEWS:4957 +#: ../build/NEWS:4992 msgid "" "The workaround on FreeBSD to improve performance was to load and mount the " "fdescfs kernel module, but this is not enabled by default." msgstr "" -#: ../build/NEWS:4960 ../build/NEWS:4968 +#: ../build/NEWS:4995 ../build/NEWS:5003 msgid "" "Initial patch by Ed Maste (emaste), Conrad Meyer (cem), Kyle Evans (kevans) " "and Kubilay Kocak (koobs): https://bugs.freebsd.org/bugzilla/show_bug.cgi?" "id=242274" msgstr "" -#: ../build/NEWS:4964 +#: ../build/NEWS:4999 msgid "" "`bpo-38061 `__: On FreeBSD, ``os." "closerange(fd_low, fd_high)`` now calls ``closefrom(fd_low)`` if *fd_high* " "is greater than or equal to ``sysconf(_SC_OPEN_MAX)``." msgstr "" -#: ../build/NEWS:4972 +#: ../build/NEWS:5007 msgid "" "`bpo-40360 `__: The :mod:`lib2to3` " "module is pending deprecation due to :pep:`617`." msgstr "" -#: ../build/NEWS:4975 +#: ../build/NEWS:5010 msgid "" "`bpo-40138 `__: Fix the Windows " "implementation of :func:`os.waitpid` for exit code larger than ``INT_MAX >> " "8``. The exit status is now interpreted as an unsigned number." msgstr "" -#: ../build/NEWS:4979 +#: ../build/NEWS:5014 msgid "" "`bpo-39942 `__: Set \"__main__\" as the " "default module name when \"__name__\" is missing in :class:`typing.TypeVar`. " "Patch by Weipeng Hong." msgstr "" -#: ../build/NEWS:4982 +#: ../build/NEWS:5017 msgid "" "`bpo-40275 `__: The :mod:`logging` " "package is now imported lazily in :mod:`unittest` only when the :meth:" "`~unittest.TestCase.assertLogs` assertion is used." msgstr "" -#: ../build/NEWS:4986 +#: ../build/NEWS:5021 msgid "" "`bpo-40275 `__: The :mod:`asyncio` " "package is now imported lazily in :mod:`unittest` only when the :class:" "`~unittest.IsolatedAsyncioTestCase` class is used." msgstr "" -#: ../build/NEWS:4990 +#: ../build/NEWS:5025 msgid "" "`bpo-40330 `__: In :meth:`ShareableList." "__setitem__`, check the size of a new string item after encoding it to " "utf-8, not before." msgstr "" -#: ../build/NEWS:4993 +#: ../build/NEWS:5028 msgid "" "`bpo-40148 `__: Added :meth:`pathlib." "Path.with_stem()` to create a new Path with the stem replaced." msgstr "" -#: ../build/NEWS:4996 +#: ../build/NEWS:5031 msgid "" "`bpo-40325 `__: Deprecated support for " "set objects in random.sample()." msgstr "" -#: ../build/NEWS:4998 +#: ../build/NEWS:5033 msgid "" "`bpo-40257 `__: Improved help for the :" "mod:`typing` module. Docstrings are now shown for all special forms and " @@ -9695,7 +9649,7 @@ msgid "" "concrete type (``list`` in this case)." msgstr "" -#: ../build/NEWS:5003 +#: ../build/NEWS:5038 msgid "" "`bpo-40257 `__: func:`inspect.getdoc` no " "longer returns docstring inherited from the type of the object or from " @@ -9705,63 +9659,63 @@ msgid "" "attribute." msgstr "" -#: ../build/NEWS:5009 +#: ../build/NEWS:5044 msgid "" "`bpo-40287 `__: Fixed " "``SpooledTemporaryFile.seek()`` to return the position." msgstr "" -#: ../build/NEWS:5011 +#: ../build/NEWS:5046 msgid "" "`bpo-40290 `__: Added zscore() to " "statistics.NormalDist()." msgstr "" -#: ../build/NEWS:5013 +#: ../build/NEWS:5048 msgid "" "`bpo-40282 `__: Allow ``random." "getrandbits(0)`` to succeed and to return 0." msgstr "" -#: ../build/NEWS:5015 +#: ../build/NEWS:5050 msgid "" "`bpo-40286 `__: Add :func:`random." "randbytes` function and :meth:`random.Random.randbytes` method to generate " "random bytes." msgstr "" -#: ../build/NEWS:5018 +#: ../build/NEWS:5053 msgid "" "`bpo-40277 `__: :func:`collections." "namedtuple` now provides a human-readable repr for its field accessors." msgstr "" -#: ../build/NEWS:5021 +#: ../build/NEWS:5056 msgid "" "`bpo-40270 `__: The included copy of " "sqlite3 on Windows is now compiled with the json extension. This allows the " "use of functions such as ``json_object``." msgstr "" -#: ../build/NEWS:5025 +#: ../build/NEWS:5060 msgid "" "`bpo-29255 `__: Wait in `KqueueSelector." "select` when no fds are registered" msgstr "" -#: ../build/NEWS:5027 +#: ../build/NEWS:5062 msgid "" "`bpo-40260 `__: Ensure :mod:" "`modulefinder` uses :func:`io.open_code` and respects coding comments." msgstr "" -#: ../build/NEWS:5030 +#: ../build/NEWS:5065 msgid "" "`bpo-40234 `__: Allow again to spawn " "daemon threads in subinterpreters (revert change which denied them)." msgstr "" -#: ../build/NEWS:5033 +#: ../build/NEWS:5068 msgid "" "`bpo-39207 `__: Workers in :class:" "`~concurrent.futures.ProcessPoolExecutor` are now spawned on demand, only " @@ -9770,52 +9724,52 @@ msgid "" "Kyle Stanley." msgstr "" -#: ../build/NEWS:5038 +#: ../build/NEWS:5073 msgid "" "`bpo-40091 `__: Fix a hang at fork in " "the logging module: the new private _at_fork_reinit() method is now used to " "reinitialize locks at fork in the child process." msgstr "" -#: ../build/NEWS:5042 +#: ../build/NEWS:5077 msgid "" "`bpo-40149 `__: Implement traverse and " "clear slots in _abc._abc_data type." msgstr "" -#: ../build/NEWS:5044 +#: ../build/NEWS:5079 msgid "" "`bpo-40208 `__: Remove deprecated :meth:" "`symtable.SymbolTable.has_exec`." msgstr "" -#: ../build/NEWS:5046 +#: ../build/NEWS:5081 msgid "" "`bpo-40196 `__: Fix a bug in the :mod:" "`symtable` module that was causing incorrectly report global variables as " "local. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:5049 +#: ../build/NEWS:5084 msgid "" "`bpo-40190 `__: Add support for " "``_SC_AIX_REALMEM`` to :func:`posix.sysconf`." msgstr "" -#: ../build/NEWS:5051 +#: ../build/NEWS:5086 msgid "" "`bpo-40182 `__: Removed the " "``_field_types`` attribute of the :class:`typing.NamedTuple` class." msgstr "" -#: ../build/NEWS:5054 +#: ../build/NEWS:5089 msgid "" "`bpo-36517 `__: Multiple inheritance " "with :class:`typing.NamedTuple` now raises an error instead of silently " "ignoring other types." msgstr "" -#: ../build/NEWS:5057 +#: ../build/NEWS:5092 msgid "" "`bpo-40126 `__: Fixed reverting multiple " "patches in unittest.mock. Patcher's ``__exit__()`` is now never called if " @@ -9823,7 +9777,7 @@ msgid "" "now the exception." msgstr "" -#: ../build/NEWS:5061 +#: ../build/NEWS:5096 msgid "" "`bpo-40094 `__: CGIHTTPRequestHandler of " "http.server now logs the CGI script exit code, rather than the CGI script " @@ -9831,7 +9785,7 @@ msgid "" "11, it now logs: \"CGI script exit code -11.\"" msgstr "" -#: ../build/NEWS:5066 +#: ../build/NEWS:5101 msgid "" "`bpo-40108 `__: Improve the error " "message when triying to import a module using :mod:`runpy` and incorrently " @@ -9839,13 +9793,13 @@ msgid "" "Galindo." msgstr "" -#: ../build/NEWS:5070 +#: ../build/NEWS:5105 msgid "" "`bpo-40094 `__: Add :func:`os." "waitstatus_to_exitcode` function: convert a wait status to an exit code." msgstr "" -#: ../build/NEWS:5073 +#: ../build/NEWS:5108 msgid "" "`bpo-40089 `__: Fix threading." "_after_fork(): if fork was not called by a thread spawned by threading." @@ -9853,7 +9807,7 @@ msgid "" "_main_thread, instead of a _DummyThread instance." msgstr "" -#: ../build/NEWS:5077 +#: ../build/NEWS:5112 msgid "" "`bpo-40089 `__: Add a private " "``_at_fork_reinit()`` method to :class:`_thread.Lock`, :class:`_thread." @@ -9863,13 +9817,13 @@ msgid "" "of :class:`threading.Event` to ``_at_fork_reinit()``." msgstr "" -#: ../build/NEWS:5084 +#: ../build/NEWS:5119 msgid "" "`bpo-25780 `__: Expose :data:`~socket." "CAN_RAW_JOIN_FILTERS` in the :mod:`socket` module." msgstr "" -#: ../build/NEWS:5087 +#: ../build/NEWS:5122 msgid "" "`bpo-39503 `__: :class:`~urllib.request." "AbstractBasicAuthHandler` of :mod:`urllib.request` now parses all WWW-" @@ -9877,7 +9831,7 @@ msgid "" "the realm of the first Basic challenge." msgstr "" -#: ../build/NEWS:5092 +#: ../build/NEWS:5127 msgid "" "`bpo-39812 `__: Removed daemon threads " "from :mod:`concurrent.futures` by adding an internal `threading." @@ -9886,14 +9840,14 @@ msgid "" "which don't support daemon threads." msgstr "" -#: ../build/NEWS:5097 +#: ../build/NEWS:5132 msgid "" "`bpo-40050 `__: Fix ``importlib." "_bootstrap_external``: avoid creating a new ``winreg`` builtin module if " "it's already available in :data:`sys.modules`, and remove redundant imports." msgstr "" -#: ../build/NEWS:5101 +#: ../build/NEWS:5136 msgid "" "`bpo-40014 `__: Fix ``os." "getgrouplist()``: if ``getgrouplist()`` function fails because the group " @@ -9902,37 +9856,37 @@ msgid "" "groups. For other implementations, double the group list size." msgstr "" -#: ../build/NEWS:5107 +#: ../build/NEWS:5142 msgid "" "`bpo-40017 `__: Add :data:`time." "CLOCK_TAI` constant if the operating system support it." msgstr "" -#: ../build/NEWS:5110 +#: ../build/NEWS:5145 msgid "" "`bpo-40016 `__: In re docstring, clarify " "the relationship between inline and argument compile flags." msgstr "" -#: ../build/NEWS:5113 +#: ../build/NEWS:5148 msgid "" "`bpo-39953 `__: Update internal table of " "OpenSSL error codes in the ``ssl`` module." msgstr "" -#: ../build/NEWS:5116 +#: ../build/NEWS:5151 msgid "" "`bpo-36144 `__: Added :pep:`584` " "operators to :class:`weakref.WeakValueDictionary`." msgstr "" -#: ../build/NEWS:5119 +#: ../build/NEWS:5154 msgid "" "`bpo-36144 `__: Added :pep:`584` " "operators to :class:`weakref.WeakKeyDictionary`." msgstr "" -#: ../build/NEWS:5122 +#: ../build/NEWS:5157 msgid "" "`bpo-38891 `__: Fix linear runtime " "behaviour of the `__getitem__` and `__setitem__` methods in :class:" @@ -9940,7 +9894,7 @@ msgid "" "performance when iterating a `ShareableList`. Patch by Thomas Krennwallner." msgstr "" -#: ../build/NEWS:5128 +#: ../build/NEWS:5163 msgid "" "`bpo-39682 `__: Remove undocumented " "support for *closing* a `pathlib.Path` object via its context manager. The " @@ -9948,38 +9902,38 @@ msgid "" "`Path` objects immutable." msgstr "" -#: ../build/NEWS:5132 +#: ../build/NEWS:5167 msgid "" "`bpo-36144 `__: Added :pep:`584` " "operators (``|`` and ``|=``) to :class:`collections.ChainMap`." msgstr "" -#: ../build/NEWS:5135 +#: ../build/NEWS:5170 msgid "" "`bpo-39011 `__: Normalization of line " "endings in ElementTree attributes was removed, as line endings which were " "replaced by entity numbers should be preserved in original form." msgstr "" -#: ../build/NEWS:5139 +#: ../build/NEWS:5174 msgid "" "`bpo-38410 `__: Properly handle :func:" "`sys.audit` failures in :func:`sys.set_asyncgen_hooks`." msgstr "" -#: ../build/NEWS:5142 +#: ../build/NEWS:5177 msgid "" "`bpo-36541 `__: lib2to3 now recognizes " "named assignment expressions (the walrus operator, ``:=``)" msgstr "" -#: ../build/NEWS:5145 +#: ../build/NEWS:5180 msgid "" "`bpo-35967 `__: In platform, delay the " "invocation of 'uname -p' until the processor attribute is requested." msgstr "" -#: ../build/NEWS:5148 +#: ../build/NEWS:5183 msgid "" "`bpo-35113 `__: :meth:`inspect." "getsource` now returns correct source code for inner class with same name as " @@ -9987,77 +9941,77 @@ msgid "" "class. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:5153 +#: ../build/NEWS:5188 msgid "" "`bpo-33262 `__: Deprecate passing None " "as an argument for :func:`shlex.split()`'s ``s`` parameter. Patch by " "Zackery Spytz." msgstr "" -#: ../build/NEWS:5156 +#: ../build/NEWS:5191 msgid "" "`bpo-31758 `__: Prevent crashes when " "using an uninitialized ``_elementtree.XMLParser`` object. Patch by Oren " "Milman." msgstr "" -#: ../build/NEWS:5162 +#: ../build/NEWS:5197 msgid "" "`bpo-27635 `__: The pickle documentation " "incorrectly claimed that ``__new__`` isn't called by default when unpickling." msgstr "" -#: ../build/NEWS:5165 +#: ../build/NEWS:5200 msgid "" "`bpo-39879 `__: Updated :ref:`datamodel` " "docs to include :func:`dict` insertion order preservation. Patch by Furkan " "Onder and Samy Lahfa." msgstr "" -#: ../build/NEWS:5168 +#: ../build/NEWS:5203 msgid "" "`bpo-38387 `__: Document :c:macro:" "`PyDoc_STRVAR` macro in the C-API reference." msgstr "" -#: ../build/NEWS:5170 +#: ../build/NEWS:5205 msgid "" "`bpo-13743 `__: Some methods within xml." "dom.minidom.Element class are now better documented." msgstr "" -#: ../build/NEWS:5176 +#: ../build/NEWS:5211 msgid "" "`bpo-31904 `__: Set expected default " "encoding in test_c_locale_coercion.py for VxWorks RTOS." msgstr "" -#: ../build/NEWS:5179 +#: ../build/NEWS:5214 msgid "" "`bpo-40162 `__: Update Travis CI " "configuration to OpenSSL 1.1.1f." msgstr "" -#: ../build/NEWS:5181 +#: ../build/NEWS:5216 msgid "" "`bpo-40146 `__: Update OpenSSL to 1.1.1f " "in Azure Pipelines." msgstr "" -#: ../build/NEWS:5183 +#: ../build/NEWS:5218 msgid "" "`bpo-40094 `__: Add :func:`test.support." "wait_process` function." msgstr "" -#: ../build/NEWS:5185 +#: ../build/NEWS:5220 msgid "" "`bpo-40003 `__: ``test.bisect_cmd`` now " "copies Python command line options like ``-O`` or ``-W``. Moreover, emit a " "warning if ``test.bisect_cmd`` is used with ``-w``/``--verbose2`` option." msgstr "" -#: ../build/NEWS:5189 +#: ../build/NEWS:5224 msgid "" "`bpo-39380 `__: Add the encoding in :" "class:`ftplib.FTP` and :class:`ftplib.FTP_TLS` to the constructor as keyword-" @@ -10065,51 +10019,51 @@ msgid "" "`2640`." msgstr "" -#: ../build/NEWS:5193 +#: ../build/NEWS:5228 msgid "" "`bpo-39793 `__: Use the same domain when " "testing ``make_msgid``. Patch by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:5196 +#: ../build/NEWS:5231 msgid "" "`bpo-1812 `__: Fix newline handling in " "doctest.testfile when loading from a package whose loader has a get_data " "method. Patch by Peter Donis." msgstr "" -#: ../build/NEWS:5202 +#: ../build/NEWS:5237 msgid "" "`bpo-38360 `__: Support single-argument " "form of macOS -isysroot flag." msgstr "" -#: ../build/NEWS:5204 +#: ../build/NEWS:5239 msgid "" "`bpo-40158 `__: Fix CPython MSBuild " "Properties in NuGet Package (build/native/python.props)" msgstr "" -#: ../build/NEWS:5207 +#: ../build/NEWS:5242 msgid "" "`bpo-38527 `__: Fix configure check on " "Solaris for \"float word ordering\": sometimes, the correct \"grep\" command " "was not being used. Patch by Arnon Yaari." msgstr "" -#: ../build/NEWS:5214 +#: ../build/NEWS:5249 msgid "" "`bpo-40164 `__: Updates Windows to " "OpenSSL 1.1.1f" msgstr "" -#: ../build/NEWS:5216 +#: ../build/NEWS:5251 msgid "" "`bpo-8901 `__: Ignore the Windows " "registry when the ``-E`` option is used." msgstr "" -#: ../build/NEWS:5221 +#: ../build/NEWS:5256 msgid "" "`bpo-38329 `__: python.org macOS " "installers now update the Current version symlink of /Library/Frameworks/" @@ -10118,57 +10072,57 @@ msgid "" "3 into other macOS applications." msgstr "" -#: ../build/NEWS:5226 +#: ../build/NEWS:5261 msgid "" "`bpo-40164 `__: Update macOS installer " "builds to use OpenSSL 1.1.1g." msgstr "" -#: ../build/NEWS:5231 +#: ../build/NEWS:5266 msgid "" "`bpo-38439 `__: Add a 256×256 pixel IDLE " "icon to support more modern environments. Created by Andrew Clover. Delete " "the unused macOS idle.icns icon file." msgstr "" -#: ../build/NEWS:5235 +#: ../build/NEWS:5270 msgid "" "`bpo-38689 `__: IDLE will no longer " "freeze when inspect.signature fails when fetching a calltip." msgstr "" -#: ../build/NEWS:5241 +#: ../build/NEWS:5276 msgid "" "`bpo-40385 `__: Removed the checkpyc.py " "tool. Please see compileall without force mode as a potential alternative." msgstr "" -#: ../build/NEWS:5244 +#: ../build/NEWS:5279 msgid "" "`bpo-40179 `__: Fixed translation of " "``#elif`` in Argument Clinic." msgstr "" -#: ../build/NEWS:5246 +#: ../build/NEWS:5281 msgid "" "`bpo-40094 `__: Fix ``which.py`` script " "exit code: it now uses :func:`os.waitstatus_to_exitcode` to convert :func:" "`os.system` exit status into an exit code." msgstr "" -#: ../build/NEWS:5253 +#: ../build/NEWS:5288 msgid "" "`bpo-40241 `__: Move the :c:type:" "`PyGC_Head` structure to the internal C API." msgstr "" -#: ../build/NEWS:5255 +#: ../build/NEWS:5290 msgid "" "`bpo-40170 `__: Convert :c:func:" "`PyObject_IS_GC` macro to a function to hide implementation details." msgstr "" -#: ../build/NEWS:5258 +#: ../build/NEWS:5293 msgid "" "`bpo-40241 `__: Add the functions :c:" "func:`PyObject_GC_IsTracked` and :c:func:`PyObject_GC_IsFinalized` to the " @@ -10177,7 +10131,7 @@ msgid "" "by Pablo Galindo." msgstr "" -#: ../build/NEWS:5263 +#: ../build/NEWS:5298 msgid "" "`bpo-40170 `__: The :c:func:" "`PyObject_NEW` macro becomes an alias to the :c:func:`PyObject_New` macro, " @@ -10186,7 +10140,7 @@ msgid "" "access directly the :c:member:`PyTypeObject.tp_basicsize` member." msgstr "" -#: ../build/NEWS:5269 +#: ../build/NEWS:5304 msgid "" "`bpo-40170 `__: :c:func:" "`PyType_HasFeature` now always calls :c:func:`PyType_GetFlags` to hide " @@ -10194,7 +10148,7 @@ msgid "" "`PyTypeObject.tp_flags` member when the limited C API was not used." msgstr "" -#: ../build/NEWS:5274 +#: ../build/NEWS:5309 msgid "" "`bpo-40170 `__: Convert the :c:func:" "`PyObject_GET_WEAKREFS_LISTPTR` macro to a function to hide implementation " @@ -10202,14 +10156,14 @@ msgid "" "tp_weaklistoffset` member." msgstr "" -#: ../build/NEWS:5278 +#: ../build/NEWS:5313 msgid "" "`bpo-40170 `__: Convert :c:func:" "`PyObject_CheckBuffer` macro to a function to hide implementation details: " "the macro accessed directly the :c:member:`PyTypeObject.tp_as_buffer` member." msgstr "" -#: ../build/NEWS:5282 +#: ../build/NEWS:5317 msgid "" "`bpo-40170 `__: Always declare :c:func:" "`PyIndex_Check` as an opaque function to hide implementation details: remove " @@ -10217,22 +10171,22 @@ msgid "" "`PyTypeObject.tp_as_number` member." msgstr "" -#: ../build/NEWS:5286 +#: ../build/NEWS:5321 msgid "" "`bpo-39947 `__: Add :c:func:" "`PyThreadState_GetID` function: get the unique identifier of a Python thread " "state." msgstr "" -#: ../build/NEWS:5291 +#: ../build/NEWS:5326 msgid "Python 3.9.0 alpha 5" msgstr "" -#: ../build/NEWS:5293 +#: ../build/NEWS:5328 msgid "*Release date: 2020-03-23*" msgstr "" -#: ../build/NEWS:5298 +#: ../build/NEWS:5333 msgid "" "`bpo-38576 `__: Disallow control " "characters in hostnames in http.client, addressing CVE-2019-18348. Such " @@ -10240,7 +10194,7 @@ msgid "" "raised." msgstr "" -#: ../build/NEWS:5305 +#: ../build/NEWS:5340 msgid "" "`bpo-40010 `__: Optimize pending calls " "in multithreaded applications. If a thread different than the main thread " @@ -10250,19 +10204,19 @@ msgid "" "execute pending calls." msgstr "" -#: ../build/NEWS:5311 +#: ../build/NEWS:5346 msgid "" "Previously, the bytecode evaluation loop was interrupted at each instruction " "until the main thread executes pending calls." msgstr "" -#: ../build/NEWS:5317 +#: ../build/NEWS:5352 msgid "" "`bpo-1635741 `__: Port _collections " "module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:5320 +#: ../build/NEWS:5355 msgid "" "`bpo-40010 `__: Optimize signal handling " "in multithreaded applications. If a thread different than the main thread " @@ -10271,13 +10225,13 @@ msgid "" "Only the main thread of the main interpreter can handle signals." msgstr "" -#: ../build/NEWS:5326 +#: ../build/NEWS:5361 msgid "" "Previously, the bytecode evaluation loop was interrupted at each instruction " "until the main thread handles signals." msgstr "" -#: ../build/NEWS:5329 +#: ../build/NEWS:5364 msgid "" "`bpo-39984 `__: If :c:func:" "`Py_AddPendingCall` is called in a subinterpreter, the function is now " @@ -10286,52 +10240,52 @@ msgid "" "scheduled calls." msgstr "" -#: ../build/NEWS:5334 +#: ../build/NEWS:5369 msgid "" "`bpo-1635741 `__: Port _heapq module " "to multiphase initialization." msgstr "" -#: ../build/NEWS:5336 +#: ../build/NEWS:5371 msgid "" "`bpo-1635741 `__: Port itertools " "module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:5339 +#: ../build/NEWS:5374 msgid "" "`bpo-37207 `__: Speed up calls to " "``frozenset()`` by using the :pep:`590` ``vectorcall`` calling convention. " "Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:5342 +#: ../build/NEWS:5377 msgid "" "`bpo-39984 `__: subinterpreters: Move " "``_PyRuntimeState.ceval.tracing_possible`` to ``PyInterpreterState.ceval." "tracing_possible``: each interpreter now has its own variable." msgstr "" -#: ../build/NEWS:5347 +#: ../build/NEWS:5382 msgid "" "`bpo-37207 `__: Speed up calls to " "``set()`` by using the :pep:`590` ``vectorcall`` calling convention. Patch " "by Dong-hee Na." msgstr "" -#: ../build/NEWS:5350 +#: ../build/NEWS:5385 msgid "" "`bpo-1635741 `__: Port _statistics " "module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:5353 +#: ../build/NEWS:5388 msgid "" "`bpo-39968 `__: Use inline function to " "replace extension modules' get_module_state macros." msgstr "" -#: ../build/NEWS:5356 +#: ../build/NEWS:5391 msgid "" "`bpo-39965 `__: Correctly raise " "``SyntaxError`` if *await* is used inside non-async functions and " @@ -10339,34 +10293,34 @@ msgid "" "Pablo Galindo." msgstr "" -#: ../build/NEWS:5360 +#: ../build/NEWS:5395 msgid "" "`bpo-39562 `__: Allow executing " "asynchronous comprehensions on the top level when the " "``PyCF_ALLOW_TOP_LEVEL_AWAIT`` flag is given. Patch by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:5364 +#: ../build/NEWS:5399 msgid "" "`bpo-37207 `__: Speed up calls to " "``tuple()`` by using the :pep:`590` ``vectorcall`` calling convention. Patch " "by Dong-hee Na." msgstr "" -#: ../build/NEWS:5367 +#: ../build/NEWS:5402 msgid "" "`bpo-38373 `__: Chaged list " "overallocation strategy. It no longer overallocates if the new size is " "closer to overallocated size than to the old size and adds padding." msgstr "" -#: ../build/NEWS:5371 +#: ../build/NEWS:5406 msgid "" "`bpo-39926 `__: Update Unicode database " "to Unicode version 13.0.0." msgstr "" -#: ../build/NEWS:5373 +#: ../build/NEWS:5408 msgid "" "`bpo-19466 `__: Clear the frames of " "daemon threads earlier during the Python shutdown to call objects " @@ -10374,7 +10328,7 @@ msgid "" "daemon threads in a more reliable way." msgstr "" -#: ../build/NEWS:5377 +#: ../build/NEWS:5412 msgid "" "`bpo-38894 `__: Fix a bug that was " "causing incomplete results when calling ``pathlib.Path.glob`` in the " @@ -10382,7 +10336,7 @@ msgid "" "access. Patch by Pablo Galindo and Matt Wozniski." msgstr "" -#: ../build/NEWS:5382 +#: ../build/NEWS:5417 msgid "" "`bpo-39877 `__: Fix :c:func:" "`PyEval_RestoreThread` random crash at exit with daemon threads. It now " @@ -10392,136 +10346,136 @@ msgid "" "trying to take the GIL." msgstr "" -#: ../build/NEWS:5388 +#: ../build/NEWS:5423 msgid "" "`bpo-39871 `__: Fix a possible :exc:" "`SystemError` in ``math.{atan2,copysign,remainder}()`` when the first " "argument cannot be converted to a :class:`float`. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:5392 +#: ../build/NEWS:5427 msgid "" "`bpo-39776 `__: Fix race condition where " "threads created by PyGILState_Ensure() could get a duplicate id." msgstr "" -#: ../build/NEWS:5395 +#: ../build/NEWS:5430 msgid "" "This affects consumers of tstate->id like the contextvar caching machinery, " "which could return invalid cached objects under heavy thread load (observed " "in embedded scenarios)." msgstr "" -#: ../build/NEWS:5399 +#: ../build/NEWS:5434 msgid "" "`bpo-39778 `__: Fixed a crash due to " "incorrect handling of weak references in ``collections.OrderedDict`` " "classes. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:5402 +#: ../build/NEWS:5437 msgid "" "`bpo-1635741 `__: Port audioop " "extension module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:5405 +#: ../build/NEWS:5440 msgid "" "`bpo-39702 `__: Relax :term:`decorator` " "grammar restrictions to allow any valid expression (:pep:`614`)." msgstr "" -#: ../build/NEWS:5408 +#: ../build/NEWS:5443 msgid "" "`bpo-38091 `__: Tweak import deadlock " "detection code to not deadlock itself." msgstr "" -#: ../build/NEWS:5410 +#: ../build/NEWS:5445 msgid "" "`bpo-1635741 `__: Port _locale " "extension module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:5413 +#: ../build/NEWS:5448 msgid "" "`bpo-39087 `__: Optimize :c:func:" "`PyUnicode_AsUTF8` and :c:func:`PyUnicode_AsUTF8AndSize` slightly when they " "need to create internal UTF-8 cache." msgstr "" -#: ../build/NEWS:5417 +#: ../build/NEWS:5452 msgid "" "`bpo-39520 `__: Fix unparsing of ext " "slices with no items (``foo[:,]``). Patch by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:5420 +#: ../build/NEWS:5455 msgid "" "`bpo-39220 `__: Do not optimize " "annotations if 'from __future__ import annotations' is used. Patch by Pablo " "Galindo." msgstr "" -#: ../build/NEWS:5423 +#: ../build/NEWS:5458 msgid "" "`bpo-35712 `__: Using :data:" "`NotImplemented` in a boolean context has been deprecated. Patch contributed " "by Josh Rosenberg." msgstr "" -#: ../build/NEWS:5426 +#: ../build/NEWS:5461 msgid "" "`bpo-22490 `__: Don't leak environment " "variable ``__PYVENV_LAUNCHER__`` into the interpreter session on macOS." msgstr "" -#: ../build/NEWS:5432 +#: ../build/NEWS:5467 msgid "" "`bpo-39830 `__: Add :class:`zipfile." "Path` to ``__all__`` in the :mod:`zipfile` module." msgstr "" -#: ../build/NEWS:5435 +#: ../build/NEWS:5470 msgid "" "`bpo-40000 `__: Improved error messages " "for validation of ``ast.Constant`` nodes. Patch by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:5438 +#: ../build/NEWS:5473 msgid "" "`bpo-39999 `__: ``__module__`` of the " "AST node classes is now set to \"ast\" instead of \"_ast\". Added docstrings " "for dummy AST node classes and deprecated attributes." msgstr "" -#: ../build/NEWS:5442 +#: ../build/NEWS:5477 msgid "" "`bpo-39991 `__: :func:`uuid.getnode` now " "skips IPv6 addresses with the same string length than a MAC address (17 " "characters): only use MAC addresses." msgstr "" -#: ../build/NEWS:5445 +#: ../build/NEWS:5480 msgid "" "`bpo-39988 `__: Deprecated ``ast." "AugLoad`` and ``ast.AugStore`` node classes because they are no longer used." msgstr "" -#: ../build/NEWS:5448 +#: ../build/NEWS:5483 msgid "" "`bpo-39656 `__: Ensure ``bin/python3.#`` " "is always present in virtual environments on POSIX platforms - by Anthony " "Sottile." msgstr "" -#: ../build/NEWS:5451 +#: ../build/NEWS:5486 msgid "" "`bpo-39969 `__: Deprecated ``ast.Param`` " "node class because it's no longer used. Patch by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:5454 +#: ../build/NEWS:5489 msgid "" "`bpo-39360 `__: Ensure all workers exit " "when finalizing a :class:`multiprocessing.Pool` implicitly via the module " @@ -10531,7 +10485,7 @@ msgid "" "Batuhan Taskaya and Pablo Galindo." msgstr "" -#: ../build/NEWS:5461 +#: ../build/NEWS:5496 msgid "" "`bpo-35370 `__: sys.settrace(), sys." "setprofile() and _lsprof.Profiler.enable() now properly report :c:func:" @@ -10539,7 +10493,7 @@ msgid "" "denied." msgstr "" -#: ../build/NEWS:5465 +#: ../build/NEWS:5500 msgid "" "`bpo-39936 `__: AIX: Fix _aix_support " "module when the subprocess is not available, when building Python from " @@ -10549,20 +10503,20 @@ msgid "" "available or not." msgstr "" -#: ../build/NEWS:5471 +#: ../build/NEWS:5506 msgid "" "`bpo-36144 `__: :class:`collections." "OrderedDict` now implements ``|`` and ``|=`` (:pep:`584`)." msgstr "" -#: ../build/NEWS:5474 +#: ../build/NEWS:5509 msgid "" "`bpo-39652 `__: The column name found in " "``sqlite3.Cursor.description`` is now truncated on the first '[' only if the " "PARSE_COLNAMES option is set." msgstr "" -#: ../build/NEWS:5477 +#: ../build/NEWS:5512 msgid "" "`bpo-39915 `__: Ensure :attr:`unittest." "mock.AsyncMock.await_args_list` has call objects in the order of awaited " @@ -10570,14 +10524,14 @@ msgid "" "the last value of the call. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:5482 +#: ../build/NEWS:5517 msgid "" "`bpo-36144 `__: Updated :data:`os." "environ` and :data:`os.environb` to support :pep:`584`'s merge (``|``) and " "update (``|=``) operators." msgstr "" -#: ../build/NEWS:5485 +#: ../build/NEWS:5520 msgid "" "`bpo-38662 `__: The ``ensurepip`` module " "now invokes ``pip`` via the ``runpy`` module. Hence it is no longer tightly " @@ -10586,20 +10540,20 @@ msgid "" "distributors." msgstr "" -#: ../build/NEWS:5490 +#: ../build/NEWS:5525 msgid "" "`bpo-38075 `__: Fix the :meth:`random." "Random.seed` method when a :class:`bool` is passed as the seed." msgstr "" -#: ../build/NEWS:5493 +#: ../build/NEWS:5528 msgid "" "`bpo-39916 `__: More reliable use of " "``os.scandir()`` in ``Path.glob()``. It no longer emits a ResourceWarning " "when interrupted." msgstr "" -#: ../build/NEWS:5496 +#: ../build/NEWS:5531 msgid "" "`bpo-39850 `__: :mod:`multiprocessing` " "now supports abstract socket addresses (if abstract sockets are supported in " @@ -10609,7 +10563,7 @@ msgid "" "address is too large for an AF_UNIX socket address. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:5503 +#: ../build/NEWS:5538 msgid "" "`bpo-36287 `__: :func:`ast.dump()` no " "longer outputs optional fields and attributes with default values. The " @@ -10617,27 +10571,27 @@ msgid "" "as class attributes (e.g. ``Constant.kind`` is set to ``None``)." msgstr "" -#: ../build/NEWS:5508 +#: ../build/NEWS:5543 msgid "" "`bpo-39889 `__: Fixed :func:`ast." "unparse` for extended slices containing a single element (e.g. ``a[i:j,]``). " "Remove redundant tuples when index with a tuple (e.g. ``a[i, j]``)." msgstr "" -#: ../build/NEWS:5512 +#: ../build/NEWS:5547 msgid "" "`bpo-39828 `__: Fix :mod:`json.tool` to " "catch :exc:`BrokenPipeError`. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:5515 +#: ../build/NEWS:5550 msgid "" "`bpo-13487 `__: Avoid a possible *" "\"RuntimeError: dictionary changed size during iteration\"* from :func:" "`inspect.getmodule` when it tried to loop through :attr:`sys.modules`." msgstr "" -#: ../build/NEWS:5519 +#: ../build/NEWS:5554 msgid "" "`bpo-39674 `__: Revert \"`bpo-37330 " "`__: open() no longer accept 'U' in file " @@ -10645,65 +10599,65 @@ msgid "" "from Python 2.7, but will be removed in Python 3.10." msgstr "" -#: ../build/NEWS:5523 +#: ../build/NEWS:5558 msgid "" "`bpo-28577 `__: The hosts method on 32-" "bit prefix length IPv4Networks and 128-bit prefix IPv6Networks now returns a " "list containing the single Address instead of an empty list." msgstr "" -#: ../build/NEWS:5527 +#: ../build/NEWS:5562 msgid "" "`bpo-39826 `__: Add getConnection method " "to logging HTTPHandler to enable custom connections." msgstr "" -#: ../build/NEWS:5530 +#: ../build/NEWS:5565 msgid "" "`bpo-39763 `__: Reimplement :func:" "`distutils.spawn.spawn` function with the :mod:`subprocess` module." msgstr "" -#: ../build/NEWS:5533 +#: ../build/NEWS:5568 msgid "" "`bpo-39794 `__: Add --without-decimal-" "contextvar build option. This enables a thread-local rather than a " "coroutine local context." msgstr "" -#: ../build/NEWS:5536 +#: ../build/NEWS:5571 msgid "" "`bpo-36144 `__: :class:`collections." "defaultdict` now implements ``|`` (:pep:`584`)." msgstr "" -#: ../build/NEWS:5539 +#: ../build/NEWS:5574 msgid "" "`bpo-39517 `__: Fix runpy.run_path() " "when using pathlike objects" msgstr "" -#: ../build/NEWS:5541 +#: ../build/NEWS:5576 msgid "" "`bpo-39775 `__: Change ``inspect." "Signature.parameters`` back to ``collections.OrderedDict``. This was changed " "to ``dict`` in Python 3.9.0a4." msgstr "" -#: ../build/NEWS:5545 +#: ../build/NEWS:5580 msgid "" "`bpo-39678 `__: Refactor queue_manager " "in :class:`concurrent.futures.ProcessPoolExecutor` to make it easier to " "maintain." msgstr "" -#: ../build/NEWS:5549 +#: ../build/NEWS:5584 msgid "" "`bpo-39764 `__: Fix AttributeError when " "calling get_stack on a PyAsyncGenObject Task" msgstr "" -#: ../build/NEWS:5552 +#: ../build/NEWS:5587 msgid "" "`bpo-39769 `__: The :func:`compileall." "compile_dir` function's *ddir* parameter and the compileall command line " @@ -10712,80 +10666,80 @@ msgid "" "fixes a regression introduced with Python 3.5." msgstr "" -#: ../build/NEWS:5558 +#: ../build/NEWS:5593 msgid "" "`bpo-36144 `__: :class:`types." "MappingProxyType` objects now support the merge (``|``) operator from :pep:" "`584`." msgstr "" -#: ../build/NEWS:5561 +#: ../build/NEWS:5596 msgid "" "`bpo-38691 `__: 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 "" -#: ../build/NEWS:5565 +#: ../build/NEWS:5600 msgid "" "`bpo-39719 `__: Remove :meth:`tempfile." "SpooledTemporaryFile.softspace` as files no longer have the ``softspace`` " "attribute in Python 3. Patch by Shantanu." msgstr "" -#: ../build/NEWS:5568 +#: ../build/NEWS:5603 msgid "" "`bpo-39667 `__: Improve pathlib.Path " "compatibility on zipfile.Path and correct performance degradation as found " "in zipp 3.0." msgstr "" -#: ../build/NEWS:5571 +#: ../build/NEWS:5606 msgid "" "`bpo-39638 `__: Keep ASDL signatures in " "the docstrings for ``AST`` nodes. Patch by Batuhan Taskaya" msgstr "" -#: ../build/NEWS:5574 +#: ../build/NEWS:5609 msgid "" "`bpo-39639 `__: Deprecated ``ast.Suite`` " "node class because it's no longer used. Patch by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:5577 +#: ../build/NEWS:5612 msgid "" "`bpo-39609 `__: Add thread_name_prefix " "to default asyncio executor" msgstr "" -#: ../build/NEWS:5579 +#: ../build/NEWS:5614 msgid "" "`bpo-39548 `__: Fix handling of header " "in :class:`urllib.request.AbstractDigestAuthHandler` when the optional " "``qop`` parameter is not present." msgstr "" -#: ../build/NEWS:5583 +#: ../build/NEWS:5618 msgid "" "`bpo-39509 `__: HTTP status codes ``103 " "EARLY_HINTS`` and ``425 TOO_EARLY`` are added to :class:`http.HTTPStatus`. " "Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:5586 +#: ../build/NEWS:5621 msgid "" "`bpo-39507 `__: Adding HTTP status 418 " "\"I'm a Teapot\" to HTTPStatus in http library. Patch by Ross Rhodes." msgstr "" -#: ../build/NEWS:5589 +#: ../build/NEWS:5624 msgid "" "`bpo-39495 `__: Remove default value " "from *attrs* parameter of :meth:`xml.etree.ElementTree.TreeBuilder.start` " "for consistency between Python and C implementations." msgstr "" -#: ../build/NEWS:5593 +#: ../build/NEWS:5628 msgid "" "`bpo-38971 `__: Open issue in the BPO " "indicated a desire to make the implementation of codecs.open() at parity " @@ -10793,14 +10747,14 @@ msgid "" "closed before an exception is raised." msgstr "" -#: ../build/NEWS:5598 +#: ../build/NEWS:5633 msgid "" "`bpo-38641 `__: Added starred " "expressions support to ``return`` and ``yield`` statements for ``lib2to3``. " "Patch by Vlad Emelianov." msgstr "" -#: ../build/NEWS:5601 +#: ../build/NEWS:5636 msgid "" "`bpo-37534 `__: When using minidom " "module to generate XML documents the ability to add Standalone Document " @@ -10809,13 +10763,13 @@ msgid "" "Recommendation (available here: https://www.w3.org/TR/xml/#sec-prolog-dtd)." msgstr "" -#: ../build/NEWS:5607 +#: ../build/NEWS:5642 msgid "" "`bpo-34788 `__: Add support for scoped " "IPv6 addresses to :mod:`ipaddress`. Patch by Oleksandr Pavliuk." msgstr "" -#: ../build/NEWS:5610 +#: ../build/NEWS:5645 msgid "" "`bpo-34822 `__: Simplified AST for " "subscription. Simple indices are now represented by their value, extended " @@ -10825,63 +10779,63 @@ msgid "" "``ExtSlice(slices)`` returns ``Tuple(slices, Load())``." msgstr "" -#: ../build/NEWS:5620 +#: ../build/NEWS:5655 msgid "" "`bpo-39868 `__: Updated the Language " "Reference for :pep:`572`." msgstr "" -#: ../build/NEWS:5622 +#: ../build/NEWS:5657 msgid "" "`bpo-13790 `__: Change 'string' to " "'specification' in format doc." msgstr "" -#: ../build/NEWS:5624 +#: ../build/NEWS:5659 msgid "" "`bpo-17422 `__: The language reference " "no longer restricts default class namespaces to dicts only." msgstr "" -#: ../build/NEWS:5627 +#: ../build/NEWS:5662 msgid "" "`bpo-39530 `__: Fix misleading " "documentation about mixed-type numeric comparisons." msgstr "" -#: ../build/NEWS:5630 +#: ../build/NEWS:5665 msgid "" "`bpo-39718 `__: Update :mod:`token` " "documentation to reflect additions in Python 3.8" msgstr "" -#: ../build/NEWS:5633 +#: ../build/NEWS:5668 msgid "" "`bpo-39677 `__: Changed operand name of " "**MAKE_FUNCTION** from *argc* to *flags* for module :mod:`dis`" msgstr "" -#: ../build/NEWS:5639 +#: ../build/NEWS:5674 msgid "" "`bpo-40019 `__: test_gdb now skips tests " "if it detects that gdb failed to read debug information because the Python " "binary is optimized." msgstr "" -#: ../build/NEWS:5642 +#: ../build/NEWS:5677 msgid "" "`bpo-27807 `__: ``test_site." "test_startup_imports()`` is now skipped if a path of :data:`sys.path` " "contains a ``.pth`` file." msgstr "" -#: ../build/NEWS:5645 +#: ../build/NEWS:5680 msgid "" "`bpo-26067 `__: Do not fail test_shutil " "test_chown test when uid or gid of user cannot be resolved to a name." msgstr "" -#: ../build/NEWS:5648 +#: ../build/NEWS:5683 msgid "" "`bpo-39855 `__: test_subprocess." "test_user() now skips the test on an user name if the user name doesn't " @@ -10889,13 +10843,13 @@ msgid "" "Linux." msgstr "" -#: ../build/NEWS:5655 +#: ../build/NEWS:5690 msgid "" "`bpo-39761 `__: Fix build with DTrace " "but without additional DFLAGS." msgstr "" -#: ../build/NEWS:5657 +#: ../build/NEWS:5692 msgid "" "`bpo-39763 `__: setup.py now uses a " "basic implementation of the :mod:`subprocess` module if the :mod:" @@ -10903,7 +10857,7 @@ msgid "" "are built." msgstr "" -#: ../build/NEWS:5661 +#: ../build/NEWS:5696 msgid "" "`bpo-1294959 `__: Add ``--with-" "platlibdir`` option to the configure script: name of the platform-specific " @@ -10914,20 +10868,20 @@ msgid "" "Jan Matějek, Matěj Cepl, Charalampos Stratakis and Victor Stinner." msgstr "" -#: ../build/NEWS:5672 +#: ../build/NEWS:5707 msgid "" "`bpo-39930 `__: Ensures the required :" "file:`vcruntime140.dll` is included in install packages." msgstr "" -#: ../build/NEWS:5675 +#: ../build/NEWS:5710 msgid "" "`bpo-39847 `__: Avoid hang when computer " "is hibernated whilst waiting for a mutex (for lock-related objects from :mod:" "`threading`) around 49-day uptime." msgstr "" -#: ../build/NEWS:5679 +#: ../build/NEWS:5714 msgid "" "`bpo-38597 `__: :mod:`distutils` will no " "longer statically link :file:`vcruntime140.dll` when a redistributable " @@ -10935,57 +10889,57 @@ msgid "" "of this DLL to ensure distributed extensions can continue to load." msgstr "" -#: ../build/NEWS:5684 +#: ../build/NEWS:5719 msgid "" "`bpo-38380 `__: Update Windows builds to " "use SQLite 3.31.1" msgstr "" -#: ../build/NEWS:5686 +#: ../build/NEWS:5721 msgid "" "`bpo-39789 `__: Update Windows release " "build machines to Visual Studio 2019 (MSVC 14.2)." msgstr "" -#: ../build/NEWS:5689 +#: ../build/NEWS:5724 msgid "" "`bpo-34803 `__: Package for nuget.org " "now includes repository reference and bundled icon image." msgstr "" -#: ../build/NEWS:5695 +#: ../build/NEWS:5730 msgid "" "`bpo-38380 `__: Update macOS builds to " "use SQLite 3.31.1" msgstr "" -#: ../build/NEWS:5700 +#: ../build/NEWS:5735 msgid "" "`bpo-27115 `__: For 'Go to Line', use a " "Query box subclass with IDLE standard behavior and improved error checking." msgstr "" -#: ../build/NEWS:5703 +#: ../build/NEWS:5738 msgid "" "`bpo-39885 `__: Since clicking to get an " "IDLE context menu moves the cursor, any text selection should be and now is " "cleared." msgstr "" -#: ../build/NEWS:5706 +#: ../build/NEWS:5741 msgid "" "`bpo-39852 `__: Edit \"Go to line\" now " "clears any selection, preventing accidental deletion. It also updates Ln and " "Col on the status bar." msgstr "" -#: ../build/NEWS:5709 +#: ../build/NEWS:5744 msgid "" "`bpo-39781 `__: Selecting code context " "lines no longer causes a jump." msgstr "" -#: ../build/NEWS:5714 +#: ../build/NEWS:5749 msgid "" "`bpo-36184 `__: Port python-gdb.py to " "FreeBSD. python-gdb.py now checks for \"take_gil\" function name to check if " @@ -10994,21 +10948,21 @@ msgid "" "condition than the GIL." msgstr "" -#: ../build/NEWS:5719 +#: ../build/NEWS:5754 msgid "" "`bpo-38080 `__: Added support to fix " "``getproxies`` in the :mod:`lib2to3.fixes.fix_urllib` module. Patch by José " "Roberto Meza Cabrera." msgstr "" -#: ../build/NEWS:5726 +#: ../build/NEWS:5761 msgid "" "`bpo-40024 `__: Add :c:func:" "`PyModule_AddType` helper function: add a type to a module. Patch by Dong-" "hee Na." msgstr "" -#: ../build/NEWS:5729 +#: ../build/NEWS:5764 msgid "" "`bpo-39946 `__: Remove ``_PyRuntime." "getframe`` hook and remove ``_PyThreadState_GetFrame`` macro which was an " @@ -11016,39 +10970,39 @@ msgid "" "API. Remove also ``PyThreadFrameGetter`` type." msgstr "" -#: ../build/NEWS:5734 +#: ../build/NEWS:5769 msgid "" "`bpo-39947 `__: Add :c:func:" "`PyThreadState_GetFrame` function: get the current frame of a Python thread " "state." msgstr "" -#: ../build/NEWS:5737 +#: ../build/NEWS:5772 msgid "" "`bpo-37207 `__: Add _PyArg_NoKwnames " "helper function. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:5739 +#: ../build/NEWS:5774 msgid "" "`bpo-39947 `__: Add :c:func:" "`PyThreadState_GetInterpreter`: get the interpreter of a Python thread state." msgstr "" -#: ../build/NEWS:5742 +#: ../build/NEWS:5777 msgid "" "`bpo-39947 `__: Add :c:func:" "`PyInterpreterState_Get` function to the limited C API." msgstr "" -#: ../build/NEWS:5745 +#: ../build/NEWS:5780 msgid "" "`bpo-35370 `__: If :c:func:`PySys_Audit` " "fails in :c:func:`PyEval_SetProfile` or :c:func:`PyEval_SetTrace`, log the " "error as an unraisable exception." msgstr "" -#: ../build/NEWS:5748 +#: ../build/NEWS:5783 msgid "" "`bpo-39947 `__: Move the static inline " "function flavor of Py_EnterRecursiveCall() and Py_LeaveRecursiveCall() to " @@ -11056,7 +11010,7 @@ msgid "" "provides regular functions which hide implementation details." msgstr "" -#: ../build/NEWS:5753 +#: ../build/NEWS:5788 msgid "" "`bpo-39947 `__: " "Py_TRASHCAN_BEGIN_CONDITION and Py_TRASHCAN_END macro no longer access " @@ -11064,35 +11018,35 @@ msgid "" "_PyTrash_end() functions which hide implementation details." msgstr "" -#: ../build/NEWS:5757 +#: ../build/NEWS:5792 msgid "" "`bpo-39884 `__: :c:func:" "`PyDescr_NewMethod` and :c:func:`PyCFunction_NewEx` now include the method " "name in the SystemError \"bad call flags\" error message to ease debug." msgstr "" -#: ../build/NEWS:5761 +#: ../build/NEWS:5796 msgid "" "`bpo-39877 `__: Deprecated :c:func:" "`PyEval_InitThreads` and :c:func:`PyEval_ThreadsInitialized`. Calling :c:" "func:`PyEval_InitThreads` now does nothing." msgstr "" -#: ../build/NEWS:5765 +#: ../build/NEWS:5800 msgid "" "`bpo-38249 `__: :c:macro:" "`Py_UNREACHABLE` is now implemented with ``__builtin_unreachable()`` and " "analogs in release mode." msgstr "" -#: ../build/NEWS:5768 +#: ../build/NEWS:5803 msgid "" "`bpo-38643 `__: :c:func:" "`PyNumber_ToBase` now raises a :exc:`SystemError` instead of crashing when " "called with invalid base." msgstr "" -#: ../build/NEWS:5771 +#: ../build/NEWS:5806 msgid "" "`bpo-39882 `__: The :c:func:" "`Py_FatalError` function is replaced with a macro which logs automatically " @@ -11100,7 +11054,7 @@ msgid "" "defined." msgstr "" -#: ../build/NEWS:5775 +#: ../build/NEWS:5810 msgid "" "`bpo-39824 `__: Extension modules: :c:" "member:`~PyModuleDef.m_traverse`, :c:member:`~PyModuleDef.m_clear` and :c:" @@ -11113,19 +11067,19 @@ msgid "" "``NULL``." msgstr "" -#: ../build/NEWS:5784 +#: ../build/NEWS:5819 msgid "" "Extension modules without module state (``m_size <= 0``) are not affected." msgstr "" -#: ../build/NEWS:5786 +#: ../build/NEWS:5821 msgid "" "`bpo-38913 `__: Fixed segfault in " "``Py_BuildValue()`` called with a format containing \"#\" and undefined " "PY_SSIZE_T_CLEAN whwn an exception is set." msgstr "" -#: ../build/NEWS:5789 +#: ../build/NEWS:5824 msgid "" "`bpo-38500 `__: Add a private API to get " "and set the frame evaluation function: add :c:func:" @@ -11134,34 +11088,34 @@ msgid "" "`_PyFrameEvalFunction` function type now takes a *tstate* parameter." msgstr "" -#: ../build/NEWS:5797 +#: ../build/NEWS:5832 msgid "Python 3.9.0 alpha 4" msgstr "" -#: ../build/NEWS:5799 +#: ../build/NEWS:5834 msgid "*Release date: 2020-02-25*" msgstr "" -#: ../build/NEWS:5804 +#: ../build/NEWS:5839 msgid "" "`bpo-39184 `__: Add audit events to " "functions in `fcntl`, `msvcrt`, `os`, `resource`, `shutil`, `signal` and " "`syslog`." msgstr "" -#: ../build/NEWS:5807 +#: ../build/NEWS:5842 msgid "" "`bpo-39401 `__: Avoid unsafe DLL load at " "startup on Windows 7 and earlier." msgstr "" -#: ../build/NEWS:5809 +#: ../build/NEWS:5844 msgid "" "`bpo-39184 `__: Add audit events to " "command execution functions in os and pty modules." msgstr "" -#: ../build/NEWS:5815 +#: ../build/NEWS:5850 msgid "" "`bpo-39382 `__: Fix a use-after-free in " "the single inheritance path of ``issubclass()``, when the ``__bases__`` of " @@ -11169,25 +11123,25 @@ msgid "" "Yonatan Goldschmidt." msgstr "" -#: ../build/NEWS:5819 +#: ../build/NEWS:5854 msgid "" "`bpo-39573 `__: Update clinic tool to " "use :c:func:`Py_IS_TYPE`. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:5822 +#: ../build/NEWS:5857 msgid "" "`bpo-39619 `__: Enable use of :func:`os." "chroot` on HP-UX systems." msgstr "" -#: ../build/NEWS:5824 +#: ../build/NEWS:5859 msgid "" "`bpo-39573 `__: Add :c:func:`Py_IS_TYPE` " "static inline function to check whether the object *o* type is *type*." msgstr "" -#: ../build/NEWS:5827 +#: ../build/NEWS:5862 msgid "" "`bpo-39606 `__: Fix regression caused by " "fix for `bpo-39386 `__, that prevented " @@ -11195,78 +11149,78 @@ msgid "" "exhausted." msgstr "" -#: ../build/NEWS:5831 +#: ../build/NEWS:5866 msgid "" "`bpo-39579 `__: Change the ending column " "offset of `Attribute` nodes constructed in `ast_for_dotted_name` to point at " "the end of the current node and not at the end of the last `NAME` node." msgstr "" -#: ../build/NEWS:5835 +#: ../build/NEWS:5870 msgid "" "`bpo-1635741 `__: Port _crypt " "extension module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:5838 +#: ../build/NEWS:5873 msgid "" "`bpo-1635741 `__: Port _contextvars " "extension module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:5841 +#: ../build/NEWS:5876 msgid "" "`bpo-39510 `__: Fix segfault in " "``readinto()`` method on closed BufferedReader." msgstr "" -#: ../build/NEWS:5843 +#: ../build/NEWS:5878 msgid "" "`bpo-39502 `__: Fix :func:`time." "localtime` on 64-bit AIX to support years before 1902 and after 2038. Patch " "by M Felt." msgstr "" -#: ../build/NEWS:5846 +#: ../build/NEWS:5881 msgid "" "`bpo-39492 `__: Fix a reference cycle in " "the C Pickler that was preventing the garbage collection of deleted, pickled " "objects." msgstr "" -#: ../build/NEWS:5849 +#: ../build/NEWS:5884 msgid "" "`bpo-39453 `__: Fixed a possible crash " "in :meth:`list.__contains__` when a list is changed during comparing items. " "Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:5852 +#: ../build/NEWS:5887 msgid "" "`bpo-39434 `__: :term:`floor division` " "of float operation now has a better performance. Also the message of :exc:" "`ZeroDivisionError` for this operation is updated. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:5856 +#: ../build/NEWS:5891 msgid "" "`bpo-1635741 `__: Port _codecs " "extension module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:5859 +#: ../build/NEWS:5894 msgid "" "`bpo-1635741 `__: Port _bz2 extension " "module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:5862 +#: ../build/NEWS:5897 msgid "" "`bpo-1635741 `__: Port _abc extension " "module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:5865 +#: ../build/NEWS:5900 msgid "" "`bpo-39320 `__: Replace two complex " "bytecodes for building dicts with two simpler ones. The new bytecodes " @@ -11274,84 +11228,84 @@ msgid "" "``BUILD_MAP_UNPACK`` and ``BUILD_MAP_UNPACK_WITH_CALL`` have been removed." msgstr "" -#: ../build/NEWS:5870 +#: ../build/NEWS:5905 msgid "" "`bpo-39219 `__: Syntax errors raised in " "the tokenizer now always set correct \"text\" and \"offset\" attributes." msgstr "" -#: ../build/NEWS:5873 +#: ../build/NEWS:5908 msgid "" "`bpo-36051 `__: Drop the GIL during " "large ``bytes.join`` operations. Patch by Bruce Merry." msgstr "" -#: ../build/NEWS:5876 +#: ../build/NEWS:5911 msgid "" "`bpo-38960 `__: Fix DTrace build issues " "on FreeBSD. Patch by David Carlier." msgstr "" -#: ../build/NEWS:5878 +#: ../build/NEWS:5913 msgid "" "`bpo-37207 `__: Speed up calls to " "``range()`` by about 30%, by using the PEP 590 ``vectorcall`` calling " "convention. Patch by Mark Shannon." msgstr "" -#: ../build/NEWS:5881 +#: ../build/NEWS:5916 msgid "" "`bpo-36144 `__: :class:`dict` (and :" "class:`collections.UserDict`) objects now support PEP 584's merge (``|``) " "and update (``|=``) operators. Patch by Brandt Bucher." msgstr "" -#: ../build/NEWS:5885 +#: ../build/NEWS:5920 msgid "" "`bpo-32856 `__: 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``." msgstr "" -#: ../build/NEWS:5892 +#: ../build/NEWS:5927 msgid "" "`bpo-30566 `__: Fix :exc:`IndexError` " "when trying to decode an invalid string with punycode codec." msgstr "" -#: ../build/NEWS:5895 +#: ../build/NEWS:5930 msgid "" "`bpo-39649 `__: Remove obsolete check " "for `__args__` in bdb.Bdb.format_stack_entry." msgstr "" -#: ../build/NEWS:5898 +#: ../build/NEWS:5933 msgid "" "`bpo-39648 `__: Expanded :func:`math." "gcd` and :func:`math.lcm` to handle multiple arguments." msgstr "" -#: ../build/NEWS:5901 +#: ../build/NEWS:5936 msgid "" "`bpo-39681 `__: Fix a regression where " "the C pickle module wouldn't allow unpickling from a file-like object that " "doesn't expose a readinto() method." msgstr "" -#: ../build/NEWS:5905 +#: ../build/NEWS:5940 msgid "" "`bpo-35950 `__: Raise :exc:`io." "UnsupportedOperation` in :meth:`io.BufferedReader.truncate` when it is " "called on a read-only :class:`io.BufferedReader` instance." msgstr "" -#: ../build/NEWS:5909 +#: ../build/NEWS:5944 msgid "" "`bpo-39479 `__: Add :func:`math.lcm` " "function: least common multiple." msgstr "" -#: ../build/NEWS:5911 +#: ../build/NEWS:5946 msgid "" "`bpo-39674 `__: Revert \"Do not expose " "abstract collection classes in the collections module\" change (`bpo-25988 " @@ -11360,26 +11314,26 @@ msgid "" "be removed in Python 3.10." msgstr "" -#: ../build/NEWS:5916 +#: ../build/NEWS:5951 msgid "" "`bpo-39104 `__: Fix hanging " "ProcessPoolExcutor on ``shutdown(wait=False)`` when a task has failed " "pickling." msgstr "" -#: ../build/NEWS:5919 +#: ../build/NEWS:5954 msgid "" "`bpo-39627 `__: Fixed TypedDict totality " "check for inherited keys." msgstr "" -#: ../build/NEWS:5921 +#: ../build/NEWS:5956 msgid "" "`bpo-39474 `__: Fixed starting position " "of AST for expressions like ``(a)(b)``, ``(a)[b]`` and ``(a).b``." msgstr "" -#: ../build/NEWS:5924 +#: ../build/NEWS:5959 msgid "" "`bpo-21016 `__: The :mod:`pydoc` and :" "mod:`trace` modules now use the :mod:`sysconfig` module to get the path to " @@ -11387,21 +11341,21 @@ msgid "" "usr/lib64/python3.9/`` on Fedora. Patch by Jan Matějek." msgstr "" -#: ../build/NEWS:5929 +#: ../build/NEWS:5964 msgid "" "`bpo-39590 `__: Collections.deque now " "holds strong references during deque.__contains__ and deque.count, fixing " "crashes." msgstr "" -#: ../build/NEWS:5932 +#: ../build/NEWS:5967 msgid "" "`bpo-39586 `__: The distutils " "``bdist_msi`` command is deprecated in Python 3.9, use ``bdist_wheel`` " "(wheel packages) instead." msgstr "" -#: ../build/NEWS:5935 +#: ../build/NEWS:5970 msgid "" "`bpo-39595 `__: Improved performance of " "zipfile.Path for files with a large number of entries. Also improved " @@ -11410,7 +11364,7 @@ msgid "" "html#v1-5-0>`_." msgstr "" -#: ../build/NEWS:5940 +#: ../build/NEWS:5975 msgid "" "`bpo-39350 `__: Fix regression in :class:" "`fractions.Fraction` if the numerator and/or the denominator is an :class:" @@ -11419,39 +11373,39 @@ msgid "" "type. Previously, the GCD type depended on *numerator* and *denominator*." msgstr "" -#: ../build/NEWS:5946 +#: ../build/NEWS:5981 msgid "" "`bpo-39567 `__: Added audit for :func:" "`os.walk`, :func:`os.fwalk`, :meth:`pathlib.Path.glob` and :meth:`pathlib." "Path.rglob`." msgstr "" -#: ../build/NEWS:5949 +#: ../build/NEWS:5984 msgid "" "`bpo-39559 `__: Remove unused, " "undocumented argument ``getters`` from :func:`uuid.getnode`" msgstr "" -#: ../build/NEWS:5952 +#: ../build/NEWS:5987 msgid "" "`bpo-38149 `__: :func:`sys.audit` is now " "called only once per call of :func:`glob.glob` and :func:`glob.iglob`." msgstr "" -#: ../build/NEWS:5955 +#: ../build/NEWS:5990 msgid "" "`bpo-39546 `__: Fix a regression in :" "class:`~argparse.ArgumentParser` where ``allow_abbrev=False`` was ignored " "for long options that used a prefix character other than \"-\"." msgstr "" -#: ../build/NEWS:5959 +#: ../build/NEWS:5994 msgid "" "`bpo-39450 `__: Striped whitespace from " "docstring before returning it from :func:`unittest.case.shortDescription`." msgstr "" -#: ../build/NEWS:5962 +#: ../build/NEWS:5997 msgid "" "`bpo-12915 `__: A new function " "``resolve_name`` has been added to the ``pkgutil`` module. This resolves a " @@ -11460,19 +11414,19 @@ msgid "" "package/module reached via recursive attribute access." msgstr "" -#: ../build/NEWS:5968 +#: ../build/NEWS:6003 msgid "" "`bpo-39353 `__: The :func:`binascii." "crc_hqx` function is no longer deprecated." msgstr "" -#: ../build/NEWS:5970 +#: ../build/NEWS:6005 msgid "" "`bpo-39493 `__: Mark ``typing.IO." "closed`` as a property" msgstr "" -#: ../build/NEWS:5972 +#: ../build/NEWS:6007 msgid "" "`bpo-39491 `__: Add :data:`typing." "Annotated` and ``include_extras`` parameter to :func:`typing.get_type_hints` " @@ -11480,7 +11434,7 @@ msgid "" "Varoquaux and Konstantin Kashin." msgstr "" -#: ../build/NEWS:5976 +#: ../build/NEWS:6011 msgid "" "`bpo-39485 `__: Fix a bug in :func:" "`unittest.mock.create_autospec` that would complain about the wrong number " @@ -11488,33 +11442,33 @@ msgid "" "functions." msgstr "" -#: ../build/NEWS:5980 +#: ../build/NEWS:6015 msgid "" "`bpo-38932 `__: Mock fully resets child " "objects on reset_mock(). Patch by Vegard Stikbakke" msgstr "" -#: ../build/NEWS:5983 +#: ../build/NEWS:6018 msgid "" "`bpo-39082 `__: Allow AsyncMock to " "correctly patch static/class methods" msgstr "" -#: ../build/NEWS:5985 +#: ../build/NEWS:6020 msgid "" "`bpo-39432 `__: Implement PEP-489 " "algorithm for non-ascii \"PyInit\\_...\" symbol names in distutils to make " "it export the correct init symbol also on Windows." msgstr "" -#: ../build/NEWS:5989 +#: ../build/NEWS:6024 msgid "" "`bpo-18819 `__: Omit ``devmajor`` and " "``devminor`` fields for non-device files in :mod:`tarfile` archives, " "enabling bit-for-bit compatibility with GNU ``tar(1)``." msgstr "" -#: ../build/NEWS:5993 +#: ../build/NEWS:6028 msgid "" "`bpo-39349 `__: Added a new " "*cancel_futures* parameter to :meth:`concurrent.futures.Executor.shutdown` " @@ -11522,21 +11476,21 @@ msgid "" "waiting for them to complete before shutting down the executor." msgstr "" -#: ../build/NEWS:5998 +#: ../build/NEWS:6033 msgid "" "`bpo-39274 `__: ``bool(fraction." "Fraction)`` now returns a boolean even if (numerator != 0) does not return a " "boolean (ex: numpy number)." msgstr "" -#: ../build/NEWS:6001 +#: ../build/NEWS:6036 msgid "" "`bpo-34793 `__: Remove support for " "``with (await asyncio.lock):`` and ``with (yield from asyncio.lock):``. The " "same is correct for ``asyncio.Condition`` and ``asyncio.Semaphore``." msgstr "" -#: ../build/NEWS:6005 +#: ../build/NEWS:6040 msgid "" "`bpo-25597 `__: Ensure, if ``wraps`` is " "supplied to :class:`unittest.mock.MagicMock`, it is used to calculate return " @@ -11544,60 +11498,60 @@ msgid "" "Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:6010 +#: ../build/NEWS:6045 msgid "" "`bpo-36350 `__: `inspect.Signature." "parameters` and `inspect.BoundArguments.arguments` are now dicts instead of " "OrderedDicts. Patch contributed by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:6014 +#: ../build/NEWS:6049 msgid "" "`bpo-35727 `__: Fix sys.exit() and sys." "exit(None) exit code propagation when used in multiprocessing.Process." msgstr "" -#: ../build/NEWS:6017 +#: ../build/NEWS:6052 msgid "" "`bpo-32173 `__: * Add `lazycache` " "function to `__all__`. * Use `dict.clear` to clear the cache. * Refactoring " "`getline` function and `checkcache` function." msgstr "" -#: ../build/NEWS:6024 +#: ../build/NEWS:6059 msgid "" "`bpo-17422 `__: The language reference " "now specifies restrictions on class namespaces. Adapted from a patch by " "Ethan Furman." msgstr "" -#: ../build/NEWS:6027 +#: ../build/NEWS:6062 msgid "" "`bpo-39572 `__: Updated documentation of " "``total`` flag of ``TypedDict``." msgstr "" -#: ../build/NEWS:6029 +#: ../build/NEWS:6064 msgid "" "`bpo-39654 `__: In pyclbr doc, update " "'class' to 'module' where appropriate and add readmodule comment. Patch by " "Hakan Çelik." msgstr "" -#: ../build/NEWS:6032 +#: ../build/NEWS:6067 msgid "" "`bpo-39153 `__: Clarify refcounting " "semantics for the following functions: - PyObject_SetItem - " "PyMapping_SetItemString - PyDict_SetItem - PyDict_SetItemString" msgstr "" -#: ../build/NEWS:6036 +#: ../build/NEWS:6071 msgid "" "`bpo-39392 `__: Explain that when " "filling with turtle, overlap regions may be left unfilled." msgstr "" -#: ../build/NEWS:6039 +#: ../build/NEWS:6074 msgid "" "`bpo-39369 `__: Update mmap readline " "method description. The fact that the readline method does update the file " @@ -11605,50 +11559,50 @@ msgid "" "programmer that it doesn't update it." msgstr "" -#: ../build/NEWS:6044 +#: ../build/NEWS:6079 msgid "" "`bpo-9056 `__: Include subsection in TOC " "for PDF version of docs." msgstr "" -#: ../build/NEWS:6049 +#: ../build/NEWS:6084 msgid "" "`bpo-38325 `__: Skip tests on non-BMP " "characters of test_winconsoleio." msgstr "" -#: ../build/NEWS:6051 +#: ../build/NEWS:6086 msgid "" "`bpo-39502 `__: Skip test_zipfile." "test_add_file_after_2107() if :func:`time.localtime` fails with :exc:" "`OverflowError`. It is the case on AIX 6.1 for example." msgstr "" -#: ../build/NEWS:6058 +#: ../build/NEWS:6093 msgid "" "`bpo-39489 `__: Remove ``COUNT_ALLOCS`` " "special build." msgstr "" -#: ../build/NEWS:6063 +#: ../build/NEWS:6098 msgid "" "`bpo-39553 `__: Delete unused code " "related to SxS manifests." msgstr "" -#: ../build/NEWS:6065 +#: ../build/NEWS:6100 msgid "" "`bpo-39439 `__: Honor the Python path " "when a virtualenv is active on Windows." msgstr "" -#: ../build/NEWS:6067 +#: ../build/NEWS:6102 msgid "" "`bpo-39393 `__: Improve the error " "message when attempting to load a DLL with unresolved dependencies." msgstr "" -#: ../build/NEWS:6070 +#: ../build/NEWS:6105 msgid "" "`bpo-38883 `__: :meth:`~pathlib.Path." "home()` and :meth:`~pathlib.Path.expanduser()` on Windows now prefer :envvar:" @@ -11658,44 +11612,44 @@ msgid "" "`36264`." msgstr "" -#: ../build/NEWS:6077 +#: ../build/NEWS:6112 msgid "" "`bpo-39185 `__: The build.bat script has " "additional options for very-quiet output (-q) and very-verbose output (-vv)" msgstr "" -#: ../build/NEWS:6083 +#: ../build/NEWS:6118 msgid "" "`bpo-39663 `__: Add tests for pyparse " "find_good_parse_start()." msgstr "" -#: ../build/NEWS:6085 +#: ../build/NEWS:6120 msgid "" "`bpo-39600 `__: In the font " "configuration window, remove duplicated font names." msgstr "" -#: ../build/NEWS:6087 +#: ../build/NEWS:6122 msgid "" "`bpo-30780 `__: Add remaining " "configdialog tests for buttons and highlights and keys tabs." msgstr "" -#: ../build/NEWS:6090 +#: ../build/NEWS:6125 msgid "" "`bpo-39388 `__: IDLE Settings Cancel " "button now cancels pending changes" msgstr "" -#: ../build/NEWS:6092 +#: ../build/NEWS:6127 msgid "" "`bpo-38792 `__: Close an IDLE shell " "calltip if a :exc:`KeyboardInterrupt` or shell restart occurs. Patch by " "Zackery Spytz." msgstr "" -#: ../build/NEWS:6098 +#: ../build/NEWS:6133 msgid "" "`bpo-35081 `__: Move the ``bytes_methods." "h`` header file to the internal C API as ``pycore_bytes_methods.h``: it only " @@ -11703,7 +11657,7 @@ msgid "" "``PyDoc_STRVAR_shared()`` macro." msgstr "" -#: ../build/NEWS:6102 +#: ../build/NEWS:6137 msgid "" "`bpo-35081 `__: Move the ``dtoa.h`` " "header file to the internal C API as ``pycore_dtoa.h``: it only contains " @@ -11711,39 +11665,39 @@ msgid "" "modules must now be compiled with the ``Py_BUILD_CORE`` macro defined." msgstr "" -#: ../build/NEWS:6107 +#: ../build/NEWS:6142 msgid "" "`bpo-39573 `__: Add :c:func:" "`Py_SET_SIZE` function to set the size of an object." msgstr "" -#: ../build/NEWS:6110 +#: ../build/NEWS:6145 msgid "" "`bpo-39500 `__: :c:func:" "`PyUnicode_IsIdentifier` does not call :c:func:`Py_FatalError` anymore if " "the string is not ready." msgstr "" -#: ../build/NEWS:6113 +#: ../build/NEWS:6148 msgid "" "`bpo-39573 `__: Add :c:func:" "`Py_SET_TYPE` function to set the type of an object." msgstr "" -#: ../build/NEWS:6116 +#: ../build/NEWS:6151 msgid "" "`bpo-39573 `__: Add a :c:func:" "`Py_SET_REFCNT` function to set the reference counter of an object." msgstr "" -#: ../build/NEWS:6119 +#: ../build/NEWS:6154 msgid "" "`bpo-39542 `__: Convert :c:func:" "`PyType_HasFeature`, :c:func:`PyType_Check` and :c:func:`PyType_CheckExact` " "macros to static inline functions." msgstr "" -#: ../build/NEWS:6122 +#: ../build/NEWS:6157 msgid "" "`bpo-39542 `__: In the limited C API, " "``PyObject_INIT()`` and ``PyObject_INIT_VAR()`` are now defined as aliases " @@ -11754,7 +11708,7 @@ msgid "" "``_PyTraceMalloc_NewReference()`` and ``_Py_GetRefTotal()``." msgstr "" -#: ../build/NEWS:6130 +#: ../build/NEWS:6165 msgid "" "`bpo-39542 `__: Exclude trashcan " "mechanism from the limited C API: it requires access to PyTypeObject and " @@ -11762,7 +11716,7 @@ msgid "" "limited C API." msgstr "" -#: ../build/NEWS:6134 +#: ../build/NEWS:6169 msgid "" "`bpo-39511 `__: The :c:func:" "`PyThreadState_Clear` function now calls the :c:member:`PyThreadState." @@ -11770,14 +11724,14 @@ msgid "" "`PyThreadState_Delete`." msgstr "" -#: ../build/NEWS:6138 +#: ../build/NEWS:6173 msgid "" "`bpo-38076 `__: Fix to clear the " "interpreter state only after clearing module globals to guarantee module " "state access from C Extensions during runtime destruction" msgstr "" -#: ../build/NEWS:6142 +#: ../build/NEWS:6177 msgid "" "`bpo-39245 `__: The Vectorcall API (PEP " "590) was made public, adding the functions ``PyObject_Vectorcall``, " @@ -11787,35 +11741,35 @@ msgid "" "``Py_TPFLAGS_HAVE_VECTORCALL``." msgstr "" -#: ../build/NEWS:6150 +#: ../build/NEWS:6185 msgid "Python 3.9.0 alpha 3" msgstr "" -#: ../build/NEWS:6152 +#: ../build/NEWS:6187 msgid "*Release date: 2020-01-24*" msgstr "" -#: ../build/NEWS:6157 +#: ../build/NEWS:6192 msgid "" "`bpo-39427 `__: Document all " "possibilities for the ``-X`` options in the command line help section. Patch " "by Pablo Galindo." msgstr "" -#: ../build/NEWS:6160 +#: ../build/NEWS:6195 msgid "" "`bpo-39421 `__: Fix possible crashes " "when operating with the functions in the :mod:`heapq` module and custom " "comparison operators." msgstr "" -#: ../build/NEWS:6163 +#: ../build/NEWS:6198 msgid "" "`bpo-39386 `__: Prevent double awaiting " "of async iterator." msgstr "" -#: ../build/NEWS:6165 +#: ../build/NEWS:6200 msgid "" "`bpo-17005 `__: Add :class:`functools." "TopologicalSorter` to the :mod:`functools` module to offers functionality to " @@ -11823,63 +11777,63 @@ msgid "" "and Larry Hastings." msgstr "" -#: ../build/NEWS:6169 +#: ../build/NEWS:6204 msgid "" "`bpo-39320 `__: Replace four complex " "bytecodes for building sequences with three simpler ones." msgstr "" -#: ../build/NEWS:6172 +#: ../build/NEWS:6207 msgid "The following four bytecodes have been removed:" msgstr "" -#: ../build/NEWS:6174 +#: ../build/NEWS:6209 msgid "BUILD_LIST_UNPACK" msgstr "" -#: ../build/NEWS:6175 +#: ../build/NEWS:6210 msgid "BUILD_TUPLE_UNPACK" msgstr "" -#: ../build/NEWS:6176 +#: ../build/NEWS:6211 msgid "BUILD_SET_UNPACK" msgstr "" -#: ../build/NEWS:6177 +#: ../build/NEWS:6212 msgid "BUILD_TUPLE_UNPACK_WITH_CALL" msgstr "" -#: ../build/NEWS:6179 +#: ../build/NEWS:6214 msgid "The following three bytecodes have been added:" msgstr "" -#: ../build/NEWS:6181 +#: ../build/NEWS:6216 msgid "LIST_TO_TUPLE" msgstr "" -#: ../build/NEWS:6182 +#: ../build/NEWS:6217 msgid "LIST_EXTEND" msgstr "" -#: ../build/NEWS:6183 +#: ../build/NEWS:6218 msgid "SET_UPDATE" msgstr "" -#: ../build/NEWS:6185 +#: ../build/NEWS:6220 msgid "" "`bpo-39336 `__: Import loaders which " "publish immutable module objects can now publish immutable packages in " "addition to individual modules." msgstr "" -#: ../build/NEWS:6188 +#: ../build/NEWS:6223 msgid "" "`bpo-39322 `__: Added a new function :" "func:`gc.is_finalized` to check if an object has been finalized by the " "garbage collector. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:6192 +#: ../build/NEWS:6227 msgid "" "`bpo-39048 `__: Improve the displayed " "error message when incorrect types are passed to ``async with`` statements " @@ -11888,101 +11842,101 @@ msgid "" "Patch by Géry Ogam." msgstr "" -#: ../build/NEWS:6197 +#: ../build/NEWS:6232 msgid "" "`bpo-39235 `__: Fix AST end location for " "lone generator expression in function call, e.g. f(i for i in a)." msgstr "" -#: ../build/NEWS:6200 +#: ../build/NEWS:6235 msgid "" "`bpo-39209 `__: Correctly handle multi-" "line tokens in interactive mode. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:6203 +#: ../build/NEWS:6238 msgid "" "`bpo-1635741 `__: Port _json extension " "module to multiphase initialization (:pep:`489`)." msgstr "" -#: ../build/NEWS:6206 +#: ../build/NEWS:6241 msgid "" "`bpo-39216 `__: Fix constant folding " "optimization for positional only arguments - by Anthony Sottile." msgstr "" -#: ../build/NEWS:6209 +#: ../build/NEWS:6244 msgid "" "`bpo-39215 `__: Fix ``SystemError`` when " "nested function has annotation on positional-only argument - by Anthony " "Sottile." msgstr "" -#: ../build/NEWS:6212 +#: ../build/NEWS:6247 msgid "" "`bpo-39200 `__: Correct the error " "message when calling the :func:`min` or :func:`max` with no arguments. Patch " "by Dong-hee Na." msgstr "" -#: ../build/NEWS:6215 +#: ../build/NEWS:6250 msgid "" "`bpo-39200 `__: Correct the error " "message when trying to construct :class:`range` objects with no arguments. " "Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:6218 +#: ../build/NEWS:6253 msgid "" "`bpo-39166 `__: Fix incorrect line " "execution reporting in trace functions when tracing the last iteration of " "asynchronous for loops. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:6222 +#: ../build/NEWS:6257 msgid "" "`bpo-39114 `__: Fix incorrent line " "execution reporting in trace functions when tracing exception handlers with " "name binding. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:6225 +#: ../build/NEWS:6260 msgid "" "`bpo-39156 `__: Split the COMPARE_OP " "bytecode instruction into four distinct instructions." msgstr "" -#: ../build/NEWS:6228 +#: ../build/NEWS:6263 msgid "COMPARE_OP for rich comparisons" msgstr "" -#: ../build/NEWS:6229 +#: ../build/NEWS:6264 msgid "IS_OP for 'is' and 'is not' tests" msgstr "" -#: ../build/NEWS:6230 +#: ../build/NEWS:6265 msgid "CONTAINS_OP for 'in' and 'is not' tests" msgstr "" -#: ../build/NEWS:6231 +#: ../build/NEWS:6266 msgid "" "JUMP_IF_NOT_EXC_MATCH for checking exceptions in 'try-except' statements." msgstr "" -#: ../build/NEWS:6233 +#: ../build/NEWS:6268 msgid "" "This improves the clarity of the interpreter and should provide a modest " "speedup." msgstr "" -#: ../build/NEWS:6236 +#: ../build/NEWS:6271 msgid "" "`bpo-38588 `__: Fix possible crashes in " "dict and list when calling :c:func:`PyObject_RichCompareBool`." msgstr "" -#: ../build/NEWS:6239 +#: ../build/NEWS:6274 msgid "" "`bpo-13601 `__: By default, ``sys." "stderr`` is line-buffered now, even if ``stderr`` is redirected to a file. " @@ -11991,51 +11945,51 @@ msgid "" "variable." msgstr "" -#: ../build/NEWS:6244 +#: ../build/NEWS:6279 msgid "" "(Contributed by Jendrik Seipp in `bpo-13601 `__.)" msgstr "" -#: ../build/NEWS:6246 +#: ../build/NEWS:6281 msgid "" "`bpo-38610 `__: Fix possible crashes in " "several list methods by holding strong references to list elements when " "calling :c:func:`PyObject_RichCompareBool`." msgstr "" -#: ../build/NEWS:6250 +#: ../build/NEWS:6285 msgid "" "`bpo-32021 `__: Include brotli .br " "encoding in mimetypes encodings_map" msgstr "" -#: ../build/NEWS:6255 +#: ../build/NEWS:6290 msgid "" "`bpo-39430 `__: Fixed race condition in " "lazy imports in :mod:`tarfile`." msgstr "" -#: ../build/NEWS:6257 +#: ../build/NEWS:6292 msgid "" "`bpo-39413 `__: The :func:`os.unsetenv` " "function is now also available on Windows." msgstr "" -#: ../build/NEWS:6260 +#: ../build/NEWS:6295 msgid "" "`bpo-39390 `__: Fixed a regression with " "the `ignore` callback of :func:`shutil.copytree`. The argument types are now " "str and List[str] again." msgstr "" -#: ../build/NEWS:6264 +#: ../build/NEWS:6299 msgid "" "`bpo-39395 `__: The :func:`os.putenv` " "and :func:`os.unsetenv` functions are now always available." msgstr "" -#: ../build/NEWS:6267 +#: ../build/NEWS:6302 msgid "" "`bpo-39406 `__: If ``setenv()`` C " "function is available, :func:`os.putenv` is now implemented with " @@ -12043,40 +11997,40 @@ msgid "" "environment variable memory." msgstr "" -#: ../build/NEWS:6271 +#: ../build/NEWS:6306 msgid "" "`bpo-39396 `__: Fix ``math." "nextafter(-0.0, +0.0)`` on AIX 7.1." msgstr "" -#: ../build/NEWS:6273 +#: ../build/NEWS:6308 msgid "" "`bpo-29435 `__: Allow :func:`tarfile." "is_tarfile` to be used with file and file-like objects, like :func:`zipfile." "is_zipfile`. Patch by William Woodruff." msgstr "" -#: ../build/NEWS:6277 +#: ../build/NEWS:6312 msgid "" "`bpo-39377 `__: Removed ``encoding`` " "option from :func:`json.loads`. It has been deprecated since Python 3.1." msgstr "" -#: ../build/NEWS:6280 +#: ../build/NEWS:6315 msgid "" "`bpo-39389 `__: Write accurate " "compression level metadata in :mod:`gzip` archives, rather than always " "signaling maximum compression." msgstr "" -#: ../build/NEWS:6283 +#: ../build/NEWS:6318 msgid "" "`bpo-39366 `__: The previously " "deprecated ``xpath()`` and ``xgtitle()`` methods of :class:`nntplib.NNTP` " "have been removed." msgstr "" -#: ../build/NEWS:6286 +#: ../build/NEWS:6321 msgid "" "`bpo-39357 `__: Remove the *buffering* " "parameter of :class:`bz2.BZ2File`. Since Python 3.0, it was ignored and " @@ -12085,7 +12039,7 @@ msgid "" "keyword-only." msgstr "" -#: ../build/NEWS:6291 +#: ../build/NEWS:6326 msgid "" "`bpo-39353 `__: Deprecate binhex4 and " "hexbin4 standards. Deprecate the :mod:`binhex` module and the following :mod:" @@ -12094,7 +12048,7 @@ msgid "" "`~binascii.crc_hqx`." msgstr "" -#: ../build/NEWS:6297 +#: ../build/NEWS:6332 msgid "" "`bpo-39351 `__: Remove ``base64." "encodestring()`` and ``base64.decodestring()``, aliases deprecated since " @@ -12102,27 +12056,27 @@ msgid "" "instead." msgstr "" -#: ../build/NEWS:6301 +#: ../build/NEWS:6336 msgid "" "`bpo-39350 `__: Remove ``fractions." "gcd()`` function, deprecated since Python 3.5 (:issue:`22486`): use :func:" "`math.gcd` instead." msgstr "" -#: ../build/NEWS:6304 +#: ../build/NEWS:6339 msgid "" "`bpo-39329 `__: :class:`~smtplib.LMTP` " "constructor now has an optional *timeout* parameter. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:6307 +#: ../build/NEWS:6342 msgid "" "`bpo-39313 `__: Add a new " "``exec_function`` option (*--exec-function* in the CLI) to " "``RefactoringTool`` for making ``exec`` a function. Patch by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:6311 +#: ../build/NEWS:6346 msgid "" "`bpo-39259 `__: :class:`~ftplib.FTP_TLS` " "and :class:`~ftplib.FTP_TLS` now raise a :class:`ValueError` if the given " @@ -12130,7 +12084,7 @@ msgid "" "blocking socket. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:6315 +#: ../build/NEWS:6350 msgid "" "`bpo-39259 `__: :class:`~smtplib.SMTP` " "and :class:`~smtplib.SMTP_SSL` now raise a :class:`ValueError` if the given " @@ -12138,20 +12092,20 @@ msgid "" "blocking socket. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:6319 +#: ../build/NEWS:6354 msgid "" "`bpo-39310 `__: Add :func:`math.ulp`: " "return the value of the least significant bit of a float." msgstr "" -#: ../build/NEWS:6322 +#: ../build/NEWS:6357 msgid "" "`bpo-39297 `__: Improved performance of " "importlib.metadata distribution discovery and resilients to inaccessible sys." "path entries (importlib_metadata v1.4.0)." msgstr "" -#: ../build/NEWS:6326 +#: ../build/NEWS:6361 msgid "" "`bpo-39259 `__: :class:`~nntplib.NNTP` " "and :class:`~nntplib.NNTP_SSL` now raise a :class:`ValueError` if the given " @@ -12159,7 +12113,7 @@ msgid "" "blocking socket. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:6330 +#: ../build/NEWS:6365 msgid "" "`bpo-38901 `__: When you specify " "prompt='.' or equivalently python -m venv --prompt . ... the basename of the " @@ -12167,13 +12121,13 @@ msgid "" "activated." msgstr "" -#: ../build/NEWS:6334 +#: ../build/NEWS:6369 msgid "" "`bpo-39288 `__: Add :func:`math." "nextafter`: return the next floating-point value after *x* towards *y*." msgstr "" -#: ../build/NEWS:6337 +#: ../build/NEWS:6372 msgid "" "`bpo-39259 `__: :class:`~poplib.POP3` " "and :class:`~poplib.POP3_SSL` now raise a :class:`ValueError` if the given " @@ -12181,14 +12135,14 @@ msgid "" "blocking socket. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:6341 +#: ../build/NEWS:6376 msgid "" "`bpo-39242 `__: Updated the Gmane domain " "from news.gmane.org to news.gmane.io which is used for examples of :class:" "`~nntplib.NNTP` news reader server and nntplib tests." msgstr "" -#: ../build/NEWS:6345 +#: ../build/NEWS:6380 msgid "" "`bpo-35292 `__: Proxy the " "`SimpleHTTPRequestHandler.guess_type` to `mimetypes.guess_type` so the " @@ -12196,26 +12150,26 @@ msgid "" "server` module is imported." msgstr "" -#: ../build/NEWS:6349 +#: ../build/NEWS:6384 msgid "" "`bpo-39239 `__: The :meth:`select.epoll." "unregister` method no longer ignores the :data:`~errno.EBADF` error." msgstr "" -#: ../build/NEWS:6352 +#: ../build/NEWS:6387 msgid "" "`bpo-38907 `__: In http.server script, " "restore binding to IPv4 on Windows." msgstr "" -#: ../build/NEWS:6354 +#: ../build/NEWS:6389 msgid "" "`bpo-39152 `__: Fix ttk.Scale." "configure([name]) to return configuration tuple for name or all options. " "Giovanni Lombardo contributed part of the patch." msgstr "" -#: ../build/NEWS:6357 +#: ../build/NEWS:6392 msgid "" "`bpo-39198 `__: If an exception were to " "be thrown in `Logger.isEnabledFor` (say, by asyncio timeouts or stopit) , " @@ -12224,7 +12178,7 @@ msgid "" "ensure the lock is released." msgstr "" -#: ../build/NEWS:6362 +#: ../build/NEWS:6397 msgid "" "`bpo-39191 `__: Perform a check for " "running loop before starting a new task in ``loop.run_until_complete()`` to " @@ -12232,14 +12186,14 @@ msgid "" "raising." msgstr "" -#: ../build/NEWS:6366 +#: ../build/NEWS:6401 msgid "" "`bpo-38871 `__: Correctly parenthesize " "filter-based statements that contain lambda expressions in mod:`lib2to3`. " "Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:6369 +#: ../build/NEWS:6404 msgid "" "`bpo-39142 `__: A change was made to " "logging.config.dictConfig to avoid converting instances of named tuples to " @@ -12249,60 +12203,60 @@ msgid "" "in their named tuple class." msgstr "" -#: ../build/NEWS:6375 +#: ../build/NEWS:6410 msgid "" "`bpo-39158 `__: ast.literal_eval() now " "supports empty sets." msgstr "" -#: ../build/NEWS:6377 +#: ../build/NEWS:6412 msgid "" "`bpo-39129 `__: Fix import path for " "``asyncio.TimeoutError``" msgstr "" -#: ../build/NEWS:6379 +#: ../build/NEWS:6414 msgid "" "`bpo-39057 `__: :func:`urllib.request." "proxy_bypass_environment` now ignores leading dots and no longer ignores a " "trailing newline." msgstr "" -#: ../build/NEWS:6382 +#: ../build/NEWS:6417 msgid "" "`bpo-39056 `__: Fixed handling invalid " "warning category in the -W option. No longer import the re module if it is " "not needed." msgstr "" -#: ../build/NEWS:6385 +#: ../build/NEWS:6420 msgid "" "`bpo-39055 `__: :func:`base64.b64decode` " "with ``validate=True`` raises now a binascii.Error if the input ends with a " "single ``\\n``." msgstr "" -#: ../build/NEWS:6388 +#: ../build/NEWS:6423 msgid "" "`bpo-21600 `__: Fix :func:`mock.patch." "stopall` to stop active patches that were created with :func:`mock.patch." "dict`." msgstr "" -#: ../build/NEWS:6391 +#: ../build/NEWS:6426 msgid "" "`bpo-39019 `__: Implement dummy " "``__class_getitem__`` for :class:`tempfile.SpooledTemporaryFile`." msgstr "" -#: ../build/NEWS:6394 +#: ../build/NEWS:6429 msgid "" "`bpo-39019 `__: Implement dummy " "``__class_getitem__`` for ``subprocess.Popen``, ``subprocess." "CompletedProcess``" msgstr "" -#: ../build/NEWS:6397 +#: ../build/NEWS:6432 msgid "" "`bpo-38914 `__: Adjusted the wording of " "the warning issued by distutils' ``check`` command when the ``author`` and " @@ -12312,14 +12266,14 @@ msgid "" "by Juergen Gmach." msgstr "" -#: ../build/NEWS:6403 +#: ../build/NEWS:6438 msgid "" "`bpo-38878 `__: Fixed __subclasshook__ " "of :class:`os.PathLike` to return a correct result upon inheritence. Patch " "by Bar Harel." msgstr "" -#: ../build/NEWS:6406 +#: ../build/NEWS:6441 msgid "" "`bpo-38615 `__: :class:`~imaplib.IMAP4` " "and :class:`~imaplib.IMAP4_SSL` now have an optional *timeout* parameter for " @@ -12329,7 +12283,7 @@ msgid "" "to this change. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:6413 +#: ../build/NEWS:6448 msgid "" "`bpo-35182 `__: Fixed :func:`Popen." "communicate` subsequent call crash when the child process has already closed " @@ -12337,7 +12291,7 @@ msgid "" "Andriy Maletsky." msgstr "" -#: ../build/NEWS:6417 +#: ../build/NEWS:6452 msgid "" "`bpo-38630 `__: On Unix, :meth:" "`subprocess.Popen.send_signal` now polls the process status. Polling reduces " @@ -12346,7 +12300,7 @@ msgid "" "pid has been reassigned (recycled) to a new different process." msgstr "" -#: ../build/NEWS:6423 +#: ../build/NEWS:6458 msgid "" "`bpo-38536 `__: Removes trailing space " "in formatted currency with `international=True` and a locale with symbol " @@ -12354,34 +12308,34 @@ msgid "" "`'12,34 EUR '` instead of `'12,34 EUR'`." msgstr "" -#: ../build/NEWS:6428 +#: ../build/NEWS:6463 msgid "" "`bpo-38473 `__: Use signature from inner " "mock for autospecced methods attached with :func:`unittest.mock." "attach_mock`. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:6431 +#: ../build/NEWS:6466 msgid "" "`bpo-38361 `__: Fixed an issue where " "``ident`` could include a leading path separator when :func:`syslog.openlog` " "was called without arguments." msgstr "" -#: ../build/NEWS:6434 +#: ../build/NEWS:6469 msgid "" "`bpo-38293 `__: Add :func:`copy.copy` " "and :func:`copy.deepcopy` support to :func:`property` objects." msgstr "" -#: ../build/NEWS:6437 +#: ../build/NEWS:6472 msgid "" "`bpo-37958 `__: Added the pstats.Stats." "get_profile_dict() method to return the profile data as a StatsProfile " "instance." msgstr "" -#: ../build/NEWS:6440 +#: ../build/NEWS:6475 msgid "" "`bpo-28367 `__: Termios magic constants " "for the following baud rates: - B500000 - B576000 - B921600 - " @@ -12389,14 +12343,14 @@ msgid "" "- B3500000 - B4000000 Patch by Andrey Smirnov" msgstr "" -#: ../build/NEWS:6448 +#: ../build/NEWS:6483 msgid "" "`bpo-39381 `__: Mention in docs that :" "func:`asyncio.get_event_loop` implicitly creates new event loop only if " "called from the main thread." msgstr "" -#: ../build/NEWS:6451 +#: ../build/NEWS:6486 msgid "" "`bpo-38918 `__: Add an entry for " "``__module__`` in the \"function\" & \"method\" sections of the `inspect " @@ -12404,55 +12358,55 @@ msgid "" "html#types-and-members>`_" msgstr "" -#: ../build/NEWS:6455 +#: ../build/NEWS:6490 msgid "" "`bpo-3530 `__: In the :mod:`ast` module " "documentation, fix a misleading ``NodeTransformer`` example and add advice " "on when to use the ``fix_missing_locations`` function." msgstr "" -#: ../build/NEWS:6462 +#: ../build/NEWS:6497 msgid "" "`bpo-39395 `__: On non-Windows " "platforms, the :c:func:`setenv` and :c:func:`unsetenv` functions are now " "required to build Python." msgstr "" -#: ../build/NEWS:6465 +#: ../build/NEWS:6500 msgid "" "`bpo-39160 `__: Updated the " "documentation in `./configure --help` to show default values, reference " "documentation where required and add additional explanation where needed." msgstr "" -#: ../build/NEWS:6469 +#: ../build/NEWS:6504 msgid "" "`bpo-39144 `__: The ctags and etags " "build targets both include Modules/_ctypes and Python standard library " "source files." msgstr "" -#: ../build/NEWS:6475 +#: ../build/NEWS:6510 msgid "" "`bpo-39050 `__: Make IDLE Settings " "dialog Help button work again." msgstr "" -#: ../build/NEWS:6477 +#: ../build/NEWS:6512 msgid "" "`bpo-34118 `__: Tag memoryview, range, " "and tuple as classes, the same as list, etcetera, in the library manual " "built-in functions list." msgstr "" -#: ../build/NEWS:6480 +#: ../build/NEWS:6515 msgid "" "`bpo-32989 `__: Add tests for editor " "newline_and_indent_event method. Remove dead code from pyparse " "find_good_parse_start method." msgstr "" -#: ../build/NEWS:6486 +#: ../build/NEWS:6521 msgid "" "`bpo-39372 `__: Clean header files of " "interfaces defined but with no implementation. The public API symbols being " @@ -12464,22 +12418,22 @@ msgid "" "``PyNoArgsFunction``." msgstr "" -#: ../build/NEWS:6495 +#: ../build/NEWS:6530 msgid "" "`bpo-39164 `__: Add a private " "``_PyErr_GetExcInfo()`` function to retrieve exception information of the " "specified Python thread state." msgstr "" -#: ../build/NEWS:6500 +#: ../build/NEWS:6535 msgid "Python 3.9.0 alpha 2" msgstr "" -#: ../build/NEWS:6502 +#: ../build/NEWS:6537 msgid "*Release date: 2019-12-18*" msgstr "" -#: ../build/NEWS:6507 +#: ../build/NEWS:6542 msgid "" "`bpo-38945 `__: Newline characters have " "been escaped when performing uu encoding to prevent them from overflowing " @@ -12487,7 +12441,7 @@ msgid "" "accidental modification of data during the decoding process." msgstr "" -#: ../build/NEWS:6512 +#: ../build/NEWS:6547 msgid "" "`bpo-37228 `__: Due to significant " "security concerns, the *reuse_address* parameter of :meth:`asyncio.loop." @@ -12497,27 +12451,27 @@ msgid "" "Antoine Pitrou, and Yury Selivanov in :issue:`37228`.)" msgstr "" -#: ../build/NEWS:6519 +#: ../build/NEWS:6554 msgid "" "`bpo-38804 `__: Fixes a ReDoS " "vulnerability in :mod:`http.cookiejar`. Patch by Ben Caller." msgstr "" -#: ../build/NEWS:6525 +#: ../build/NEWS:6560 msgid "" "`bpo-39028 `__: Slightly improve the " "speed of keyword argument parsing with many kwargs by strengthening the " "assumption that kwargs are interned strings." msgstr "" -#: ../build/NEWS:6529 +#: ../build/NEWS:6564 msgid "" "`bpo-39080 `__: Fix the value of " "*end_col_offset* for Starred Expression AST nodes when they are among the " "elements in the *args* attribute of Call AST nodes." msgstr "" -#: ../build/NEWS:6533 +#: ../build/NEWS:6568 msgid "" "`bpo-39031 `__: When parsing an \"elif\" " "node, lineno and col_offset of the node now point to the \"elif\" keyword " @@ -12525,14 +12479,14 @@ msgid "" "by Lysandros Nikolaou." msgstr "" -#: ../build/NEWS:6537 +#: ../build/NEWS:6572 msgid "" "`bpo-20443 `__: In Python 3.9.0a1, sys." "argv[0] was made an absolute path if a filename was specified on the command " "line. Revert this change, since most users expect sys.argv to be unmodified." msgstr "" -#: ../build/NEWS:6541 +#: ../build/NEWS:6576 msgid "" "`bpo-39008 `__: :c:func:`PySys_Audit` " "now requires ``Py_ssize_t`` to be used for size arguments in the format " @@ -12540,38 +12494,38 @@ msgid "" "time." msgstr "" -#: ../build/NEWS:6545 +#: ../build/NEWS:6580 msgid "" "`bpo-38673 `__: In REPL mode, don't " "switch to PS2 if the line starts with comment or whitespace. Based on work " "by Batuhan Taşkaya." msgstr "" -#: ../build/NEWS:6548 +#: ../build/NEWS:6583 msgid "" "`bpo-38922 `__: Calling ``replace`` on a " "code object now raises the ``code.__new__`` audit event." msgstr "" -#: ../build/NEWS:6551 +#: ../build/NEWS:6586 msgid "" "`bpo-38920 `__: Add audit hooks for " "when :func:`sys.excepthook` and :func:`sys.unraisablehook` are invoked." msgstr "" -#: ../build/NEWS:6554 +#: ../build/NEWS:6589 msgid "" "`bpo-38892 `__: Improve documentation " "for audit events table and functions." msgstr "" -#: ../build/NEWS:6556 +#: ../build/NEWS:6591 msgid "" "`bpo-38852 `__: Set the thread stack " "size to 8 Mb for debug builds on android platforms." msgstr "" -#: ../build/NEWS:6559 +#: ../build/NEWS:6594 msgid "" "`bpo-38858 `__: Each Python " "subinterpreter now has its own \"small integer singletons\": numbers in [-5; " @@ -12580,61 +12534,61 @@ msgid "" "macros should now be modified manually in ``pycore_pystate.h`` header file." msgstr "" -#: ../build/NEWS:6565 +#: ../build/NEWS:6600 msgid "" "`bpo-36854 `__: The garbage collector " "state becomes per interpreter (``PyInterpreterState.gc``), rather than being " "global (``_PyRuntimeState.gc``)." msgstr "" -#: ../build/NEWS:6569 +#: ../build/NEWS:6604 msgid "" "`bpo-38835 `__: The " "``PyFPE_START_PROTECT()`` and ``PyFPE_END_PROTECT()`` macros are empty: they " "have been doing nothing for the last year, so stop using them." msgstr "" -#: ../build/NEWS:6573 +#: ../build/NEWS:6608 msgid "" "`bpo-38328 `__: Sped up the creation " "time of constant :class:`list` and :class:`set` displays. Patch by Brandt " "Bucher." msgstr "" -#: ../build/NEWS:6576 +#: ../build/NEWS:6611 msgid "" "`bpo-38707 `__: ``MainThread.native_id`` " "is now correctly reset in child processes spawned using :class:" "`multiprocessing.Process`, instead of retaining the parent's value." msgstr "" -#: ../build/NEWS:6580 +#: ../build/NEWS:6615 msgid "" "`bpo-38629 `__: Added ``__floor__`` and " "``__ceil__`` methods to float object. Patch by Batuhan Taşkaya." msgstr "" -#: ../build/NEWS:6583 +#: ../build/NEWS:6618 msgid "" "`bpo-27145 `__: int + int and int - int " "operators can now return small integer singletons. Patch by hongweipeng." msgstr "" -#: ../build/NEWS:6586 +#: ../build/NEWS:6621 msgid "" "`bpo-38021 `__: Provide a platform tag " "for AIX that is sufficient for PEP425 binary distribution identification. " "Patch by Michael Felt." msgstr "" -#: ../build/NEWS:6589 +#: ../build/NEWS:6624 msgid "" "`bpo-35409 `__: Ignore GeneratorExit " "exceptions when throwing an exception into the aclose coroutine of an " "asynchronous generator." msgstr "" -#: ../build/NEWS:6592 +#: ../build/NEWS:6627 msgid "" "`bpo-33387 `__: Removed " "WITH_CLEANUP_START, WITH_CLEANUP_FINISH, BEGIN_FINALLY, END_FINALLY, " @@ -12645,13 +12599,13 @@ msgid "" "for each exit from the 'try' body." msgstr "" -#: ../build/NEWS:6602 +#: ../build/NEWS:6637 msgid "" "`bpo-39033 `__: Fix :exc:`NameError` in :" "mod:`zipimport`. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:6605 +#: ../build/NEWS:6640 msgid "" "`bpo-39022 `__: Update importlib." "metadata to include improvements from importlib_metadata 1.3 including " @@ -12659,20 +12613,20 @@ msgid "" "finders." msgstr "" -#: ../build/NEWS:6609 +#: ../build/NEWS:6644 msgid "" "`bpo-39006 `__: Fix asyncio when the ssl " "module is missing: only check for ssl.SSLSocket instance if the ssl module " "is available." msgstr "" -#: ../build/NEWS:6612 +#: ../build/NEWS:6647 msgid "" "`bpo-38708 `__: Fix a potential " "IndexError in email parser when parsing an empty msg-id." msgstr "" -#: ../build/NEWS:6615 +#: ../build/NEWS:6650 msgid "" "`bpo-38698 `__: Add a new " "``InvalidMessageID`` token to email parser to represent invalid Message-ID " @@ -12680,39 +12634,39 @@ msgid "" "header." msgstr "" -#: ../build/NEWS:6619 +#: ../build/NEWS:6654 msgid "" "`bpo-38994 `__: Implement " "``__class_getitem__`` for ``os.PathLike``, ``pathlib.Path``." msgstr "" -#: ../build/NEWS:6622 +#: ../build/NEWS:6657 msgid "" "`bpo-38979 `__: Return class from " "``ContextVar.__class_getitem__`` to simplify subclassing." msgstr "" -#: ../build/NEWS:6625 +#: ../build/NEWS:6660 msgid "" "`bpo-38978 `__: Implement " "``__class_getitem__`` on asyncio objects (Future, Task, Queue). Patch by " "Batuhan Taskaya." msgstr "" -#: ../build/NEWS:6628 +#: ../build/NEWS:6663 msgid "" "`bpo-38916 `__: :class:`array.array`: " "Remove ``tostring()`` and ``fromstring()`` methods. They were aliases to " "``tobytes()`` and ``frombytes()``, deprecated since Python 3.2." msgstr "" -#: ../build/NEWS:6632 +#: ../build/NEWS:6667 msgid "" "`bpo-38986 `__: Make repr of C " "accelerated TaskWakeupMethWrapper the same as of pure Python version." msgstr "" -#: ../build/NEWS:6635 +#: ../build/NEWS:6670 msgid "" "`bpo-38982 `__: Fix asyncio " "``PidfdChildWatcher``: handle ``waitpid()`` error. If ``waitpid()`` is " @@ -12721,72 +12675,72 @@ msgid "" "pidfd file descriptor is closed if this error occurs." msgstr "" -#: ../build/NEWS:6641 +#: ../build/NEWS:6676 msgid "" "`bpo-38529 `__: Drop too noisy asyncio " "warning about deletion of a stream without explicit ``.close()`` call." msgstr "" -#: ../build/NEWS:6644 +#: ../build/NEWS:6679 msgid "" "`bpo-27413 `__: Added ability to pass " "through ``ensure_ascii`` options to json.dumps in the ``json.tool`` command-" "line interface." msgstr "" -#: ../build/NEWS:6647 +#: ../build/NEWS:6682 msgid "" "`bpo-38634 `__: The :mod:`readline` " "module now detects if Python is linked to libedit at runtime on all " "platforms. Previously, the check was only done on macOS." msgstr "" -#: ../build/NEWS:6651 +#: ../build/NEWS:6686 msgid "" "`bpo-33684 `__: Fix ``json.tool`` failed " "to read a JSON file with non-ASCII characters when locale encoding is not " "UTF-8." msgstr "" -#: ../build/NEWS:6654 +#: ../build/NEWS:6689 msgid "" "`bpo-38698 `__: Prevent " "UnboundLocalError to pop up in parse_message_id." msgstr "" -#: ../build/NEWS:6656 +#: ../build/NEWS:6691 msgid "" "parse_message_id() was improperly using a token defined inside an exception " "handler, which was raising `UnboundLocalError` on parsing an invalid value. " "Patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:6660 +#: ../build/NEWS:6695 msgid "" "`bpo-38927 `__: Use ``python -m pip`` " "instead of ``pip`` to upgrade dependencies in venv." msgstr "" -#: ../build/NEWS:6663 +#: ../build/NEWS:6698 msgid "" "`bpo-26730 `__: Fix " "``SpooledTemporaryFile.rollover()`` might corrupt the file when it is in " "text mode. Patch by Serhiy Storchaka." msgstr "" -#: ../build/NEWS:6666 +#: ../build/NEWS:6701 msgid "" "`bpo-38881 `__: random.choices() now " "raises a ValueError when all the weights are zero." msgstr "" -#: ../build/NEWS:6669 +#: ../build/NEWS:6704 msgid "" "`bpo-38876 `__: Raise pickle." "UnpicklingError when loading an item from memo for invalid input." msgstr "" -#: ../build/NEWS:6672 +#: ../build/NEWS:6707 msgid "" "The previous code was raising a `KeyError` for both the Python and C " "implementation. This was caused by the specified index of an invalid input " @@ -12796,7 +12750,7 @@ msgid "" "determined index was bogus. Patch by Claudiu Popa" msgstr "" -#: ../build/NEWS:6679 +#: ../build/NEWS:6714 msgid "" "`bpo-38688 `__: Calling func:`shutil." "copytree` to copy a directory tree from one directory to another " @@ -12806,21 +12760,21 @@ msgid "" "P. Kinoshita." msgstr "" -#: ../build/NEWS:6685 +#: ../build/NEWS:6720 msgid "" "`bpo-38863 `__: Improve :func:`is_cgi` " "function in :mod:`http.server`, which enables processing the case that cgi " "directory is a child of another directory other than root." msgstr "" -#: ../build/NEWS:6689 +#: ../build/NEWS:6724 msgid "" "`bpo-37838 `__: :meth:`typing." "get_type_hints` properly handles functions decorated with :meth:`functools." "wraps`." msgstr "" -#: ../build/NEWS:6692 +#: ../build/NEWS:6727 msgid "" "`bpo-38870 `__: Expose :func:`ast." "unparse` as a function of the :mod:`ast` module that can be used to unparse " @@ -12829,14 +12783,14 @@ msgid "" "and Batuhan Taskaya." msgstr "" -#: ../build/NEWS:6697 +#: ../build/NEWS:6732 msgid "" "`bpo-38859 `__: AsyncMock now returns " "StopAsyncIteration on the exhaustion of a side_effects iterable. Since " "PEP-479 its Impossible to raise a StopIteration exception from a coroutine." msgstr "" -#: ../build/NEWS:6701 +#: ../build/NEWS:6736 msgid "" "`bpo-38857 `__: AsyncMock fix for return " "values that are awaitable types. This also covers side_effect iterable " @@ -12845,7 +12799,7 @@ msgid "" "returned as is." msgstr "" -#: ../build/NEWS:6706 +#: ../build/NEWS:6741 msgid "" "`bpo-38834 `__: :class:`typing." "TypedDict` subclasses now track which keys are optional using the " @@ -12853,48 +12807,48 @@ msgid "" "runtime validation by downstream projects. Patch by Zac Hatfield-Dodds." msgstr "" -#: ../build/NEWS:6711 +#: ../build/NEWS:6746 msgid "" "`bpo-38821 `__: Fix unhandled exceptions " "in :mod:`argparse` when internationalizing error messages for arguments with " "``nargs`` set to special (non-integer) values. Patch by Federico Bond." msgstr "" -#: ../build/NEWS:6715 +#: ../build/NEWS:6750 msgid "" "`bpo-38820 `__: Make Python compatible " "with OpenSSL 3.0.0. :func:`ssl.SSLSocket.getpeercert` no longer returns IPv6 " "addresses with a trailing new line." msgstr "" -#: ../build/NEWS:6719 +#: ../build/NEWS:6754 msgid "" "`bpo-38811 `__: Fix an unhandled " "exception in :mod:`pathlib` when :meth:`os.link` is missing. Patch by Toke " "Høiland-Jørgensen." msgstr "" -#: ../build/NEWS:6722 +#: ../build/NEWS:6757 msgid "" "`bpo-38686 `__: Added support for " "multiple ``qop`` values in :class:`urllib.request.AbstractDigestAuthHandler`." msgstr "" -#: ../build/NEWS:6725 +#: ../build/NEWS:6760 msgid "" "`bpo-38712 `__: Add the Linux-specific :" "func:`signal.pidfd_send_signal` function, which allows sending a signal to a " "process identified by a file descriptor rather than a pid." msgstr "" -#: ../build/NEWS:6729 +#: ../build/NEWS:6764 msgid "" "`bpo-38348 `__: Add ``-i`` and ``--" "indent`` (indentation level), and ``--no-type-comments`` (type comments) " "command line options to ast parsing tool." msgstr "" -#: ../build/NEWS:6733 +#: ../build/NEWS:6768 msgid "" "`bpo-37523 `__: Change :class:`zipfile." "ZipExtFile` to raise ``ValueError`` when trying to access the underlying " @@ -12902,13 +12856,13 @@ msgid "" "how accessing closed files is handled in other parts of Python." msgstr "" -#: ../build/NEWS:6738 +#: ../build/NEWS:6773 msgid "" "`bpo-38045 `__: Improve the performance " "of :func:`enum._decompose` in :mod:`enum`. Patch by hongweipeng." msgstr "" -#: ../build/NEWS:6741 +#: ../build/NEWS:6776 msgid "" "`bpo-36820 `__: Break cycle generated " "when saving an exception in socket.py, codeop.py and dyld.py as they keep " @@ -12916,25 +12870,25 @@ msgid "" "attribute. Patch by Mario Corchero." msgstr "" -#: ../build/NEWS:6745 +#: ../build/NEWS:6780 msgid "" "`bpo-36406 `__: Handle namespace " "packages in :mod:`doctest`. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:6748 +#: ../build/NEWS:6783 msgid "" "`bpo-34776 `__: Fix dataclasses to " "support forward references in type annotations" msgstr "" -#: ../build/NEWS:6751 +#: ../build/NEWS:6786 msgid "" "`bpo-20928 `__: ElementTree supports " "recursive XInclude processing. Patch by Stefan Behnel." msgstr "" -#: ../build/NEWS:6754 +#: ../build/NEWS:6789 msgid "" "`bpo-29636 `__: Add whitespace options " "for formatting JSON with the ``json.tool`` CLI. The following mutually " @@ -12944,13 +12898,13 @@ msgid "" "default behavior remains the same as ``--indent=4``." msgstr "" -#: ../build/NEWS:6764 +#: ../build/NEWS:6799 msgid "" "`bpo-38928 `__: Correct when venv's " "``upgrade_dependencies()`` and ``--upgrade-deps`` are added." msgstr "" -#: ../build/NEWS:6767 +#: ../build/NEWS:6802 msgid "" "`bpo-38899 `__: Update documentation to " "state that to activate virtual environments under fish one should use " @@ -12958,14 +12912,14 @@ msgid "" "commands.html#source." msgstr "" -#: ../build/NEWS:6771 +#: ../build/NEWS:6806 msgid "" "`bpo-22377 `__: Improves documentation " "of the values that :meth:`datetime.datetime.strptime` accepts for ``%Z``. " "Patch by Karl Dubost." msgstr "" -#: ../build/NEWS:6778 +#: ../build/NEWS:6813 msgid "" "`bpo-38546 `__: Fix " "test_ressources_gced_in_workers() of test_concurrent_futures: explicitly " @@ -12973,14 +12927,14 @@ msgid "" "background after the test completes." msgstr "" -#: ../build/NEWS:6782 +#: ../build/NEWS:6817 msgid "" "`bpo-38546 `__: Multiprocessing and " "concurrent.futures tests now stop the resource tracker process when tests " "complete." msgstr "" -#: ../build/NEWS:6785 +#: ../build/NEWS:6820 msgid "" "`bpo-38614 `__: Replace hardcoded " "timeout constants in tests with new :mod:`test.support` constants: :data:" @@ -12990,20 +12944,20 @@ msgid "" "once, rather than having to adjust every single test file." msgstr "" -#: ../build/NEWS:6793 +#: ../build/NEWS:6828 msgid "" "`bpo-38547 `__: Fix test_pty: if the " "process is the session leader, closing the master file descriptor raises a " "SIGHUP signal: simply ignore SIGHUP when running the tests." msgstr "" -#: ../build/NEWS:6797 +#: ../build/NEWS:6832 msgid "" "`bpo-38992 `__: Fix a test for :func:" "`math.fsum` that was failing due to constant folding." msgstr "" -#: ../build/NEWS:6800 +#: ../build/NEWS:6835 msgid "" "`bpo-38991 `__: :mod:`test.support`: :" "func:`~test.support.run_python_until_end`, :func:`~test.support." @@ -13012,7 +12966,7 @@ msgid "" "strip_python_stderr()`` function." msgstr "" -#: ../build/NEWS:6807 +#: ../build/NEWS:6842 msgid "" "`bpo-38965 `__: Fix test_faulthandler on " "GCC 10. Use the \"volatile\" keyword in ``faulthandler._stack_overflow()`` " @@ -13020,20 +12974,20 @@ msgid "" "compiler specific pragma." msgstr "" -#: ../build/NEWS:6811 +#: ../build/NEWS:6846 msgid "" "`bpo-38875 `__: test_capi: trashcan " "tests now require the test \"cpu\" resource." msgstr "" -#: ../build/NEWS:6813 +#: ../build/NEWS:6848 msgid "" "`bpo-38841 `__: Skip asyncio " "test_create_datagram_endpoint_existing_sock_unix on platforms lacking a " "functional bind() for named unix domain sockets." msgstr "" -#: ../build/NEWS:6816 +#: ../build/NEWS:6851 msgid "" "`bpo-38692 `__: Skip the test_posix." "test_pidfd_open() test if ``os.pidfd_open()`` fails with a :exc:" @@ -13041,19 +12995,19 @@ msgid "" "syscall whitelist which doesn't allow the ``pidfd_open()`` syscall yet." msgstr "" -#: ../build/NEWS:6821 +#: ../build/NEWS:6856 msgid "" "`bpo-38839 `__: Fix some unused " "functions in tests. Patch by Adam Johnson." msgstr "" -#: ../build/NEWS:6823 +#: ../build/NEWS:6858 msgid "" "`bpo-38669 `__: Raise :exc:`TypeError` " "when passing target as a string with :meth:`unittest.mock.patch.object`." msgstr "" -#: ../build/NEWS:6826 +#: ../build/NEWS:6861 msgid "" "`bpo-37957 `__: test.regrtest now can " "receive a list of test patterns to ignore (using the -i/--ignore argument) " @@ -13061,33 +13015,33 @@ msgid "" "argument). Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:6833 +#: ../build/NEWS:6868 msgid "" "`bpo-37404 `__: :mod:`asyncio` now " "raises :exc:`TyperError` when calling incompatible methods with an :class:" "`ssl.SSLSocket` socket. Patch by Ido Michael." msgstr "" -#: ../build/NEWS:6837 +#: ../build/NEWS:6872 msgid "" "`bpo-36500 `__: Added an optional \"regen" "\" project to the Visual Studio solution that will regenerate all grammar, " "tokens, and opcodes." msgstr "" -#: ../build/NEWS:6843 +#: ../build/NEWS:6878 msgid "" "`bpo-39007 `__: Add auditing events to " "functions in :mod:`winreg`." msgstr "" -#: ../build/NEWS:6845 +#: ../build/NEWS:6880 msgid "" "`bpo-33125 `__: Add support for building " "and releasing Windows ARM64 packages." msgstr "" -#: ../build/NEWS:6850 +#: ../build/NEWS:6885 msgid "" "`bpo-37931 `__: Fixed a crash on OSX " "dynamic builds that occurred when re-initializing the posix module after a " @@ -13095,93 +13049,93 @@ msgid "" "posix`. Patch by Benoît Hudson." msgstr "" -#: ../build/NEWS:6857 +#: ../build/NEWS:6892 msgid "" "`bpo-38944 `__: Escape key now closes " "IDLE completion windows. Patch by Johnny Najera." msgstr "" -#: ../build/NEWS:6860 +#: ../build/NEWS:6895 msgid "" "`bpo-38943 `__: Fix IDLE autocomplete " "windows not always appearing on some systems. Patch by Johnny Najera." msgstr "" -#: ../build/NEWS:6863 +#: ../build/NEWS:6898 msgid "" "`bpo-38862 `__: 'Strip Trailing " "Whitespace' on the Format menu removes extra newlines at the end of non-" "shell files." msgstr "" -#: ../build/NEWS:6866 +#: ../build/NEWS:6901 msgid "" "`bpo-38636 `__: Fix IDLE Format menu tab " "toggle and file indent width. These functions (default shortcuts Alt-T and " "Alt-U) were mistakenly disabled in 3.7.5 and 3.8.0." msgstr "" -#: ../build/NEWS:6873 +#: ../build/NEWS:6908 msgid "" "`bpo-38896 `__: Remove " "``PyUnicode_ClearFreeList()`` function: the Unicode free list has been " "removed in Python 3.3." msgstr "" -#: ../build/NEWS:6876 +#: ../build/NEWS:6911 msgid "" "`bpo-37340 `__: Remove " "``PyMethod_ClearFreeList()`` and ``PyCFunction_ClearFreeList()`` functions: " "the free lists of bound method objects have been removed." msgstr "" -#: ../build/NEWS:6880 +#: ../build/NEWS:6915 msgid "" "`bpo-38835 `__: Exclude " "``PyFPE_START_PROTECT()`` and ``PyFPE_END_PROTECT()`` macros of ``pyfpe.h`` " "from ``Py_LIMITED_API`` (stable API)." msgstr "" -#: ../build/NEWS:6885 +#: ../build/NEWS:6920 msgid "Python 3.9.0 alpha 1" msgstr "" -#: ../build/NEWS:6887 +#: ../build/NEWS:6922 msgid "*Release date: 2019-11-19*" msgstr "" -#: ../build/NEWS:6892 +#: ../build/NEWS:6927 msgid "" "`bpo-38722 `__: :mod:`runpy` now uses :" "meth:`io.open_code` to open code files. Patch by Jason Killen." msgstr "" -#: ../build/NEWS:6895 +#: ../build/NEWS:6930 msgid "" "`bpo-38622 `__: Add additional audit " "events for the :mod:`ctypes` module." msgstr "" -#: ../build/NEWS:6897 +#: ../build/NEWS:6932 msgid "" "`bpo-38418 `__: Fixes audit event for :" "func:`os.system` to be named ``os.system``." msgstr "" -#: ../build/NEWS:6900 +#: ../build/NEWS:6935 msgid "" "`bpo-38243 `__: Escape the server title " "of :class:`xmlrpc.server.DocXMLRPCServer` when rendering the document page " "as HTML. (Contributed by Dong-hee Na in :issue:`38243`.)" msgstr "" -#: ../build/NEWS:6904 +#: ../build/NEWS:6939 msgid "" "`bpo-38174 `__: Update vendorized expat " "library version to 2.2.8, which resolves CVE-2019-15903." msgstr "" -#: ../build/NEWS:6907 +#: ../build/NEWS:6942 msgid "" "`bpo-37764 `__: Fixes email." "_header_value_parser.get_unstructured going into an infinite loop for a " @@ -13190,19 +13144,19 @@ msgid "" "Ramaswami." msgstr "" -#: ../build/NEWS:6912 +#: ../build/NEWS:6947 msgid "" "`bpo-37461 `__: Fix an infinite loop " "when parsing specially crafted email headers. Patch by Abhilash Raj." msgstr "" -#: ../build/NEWS:6915 +#: ../build/NEWS:6950 msgid "" "`bpo-37363 `__: Adds audit events for " "the range of supported run commands (see :ref:`using-on-general`)." msgstr "" -#: ../build/NEWS:6918 +#: ../build/NEWS:6953 msgid "" "`bpo-37463 `__: ssl.match_hostname() no " "longer accepts IPv4 addresses with additional text after the address and " @@ -13211,7 +13165,7 @@ msgid "" "'127.0.0.1 whatever'." msgstr "" -#: ../build/NEWS:6923 +#: ../build/NEWS:6958 msgid "" "`bpo-37363 `__: Adds audit events for :" "mod:`ensurepip`, :mod:`ftplib`, :mod:`glob`, :mod:`imaplib`, :mod:" @@ -13221,46 +13175,46 @@ msgid "" "`breakpoint`." msgstr "" -#: ../build/NEWS:6929 +#: ../build/NEWS:6964 msgid "" "`bpo-37364 `__: :func:`io.open_code` is " "now used when reading :file:`.pth` files." msgstr "" -#: ../build/NEWS:6932 +#: ../build/NEWS:6967 msgid "" "`bpo-34631 `__: Updated OpenSSL to " "1.1.1c in Windows installer" msgstr "" -#: ../build/NEWS:6934 +#: ../build/NEWS:6969 msgid "" "`bpo-34155 `__: Fix parsing of invalid " "email addresses with more than one ``@`` (e.g. a@b@c.com.) to not return the " "part before 2nd ``@`` as valid email address. Patch by maxking & jpic." msgstr "" -#: ../build/NEWS:6941 +#: ../build/NEWS:6976 msgid "" "`bpo-38631 `__: Replace " "``Py_FatalError()`` call with a regular :exc:`RuntimeError` exception in :" "meth:`float.__getformat__`." msgstr "" -#: ../build/NEWS:6944 +#: ../build/NEWS:6979 msgid "" "`bpo-38639 `__: Optimized :func:`math." "floor()`, :func:`math.ceil()` and :func:`math.trunc()` for floats." msgstr "" -#: ../build/NEWS:6947 +#: ../build/NEWS:6982 msgid "" "`bpo-38640 `__: Fixed a bug in the " "compiler that was causing to raise in the presence of break statements and " "continue statements inside always false while loops. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:6951 +#: ../build/NEWS:6986 msgid "" "`bpo-38613 `__: Optimized some set " "operations (e.g. ``|``, ``^``, and ``-``) of ``dict_keys``. ``d.keys() | " @@ -13268,48 +13222,48 @@ msgid "" "performance for now." msgstr "" -#: ../build/NEWS:6955 +#: ../build/NEWS:6990 msgid "" "`bpo-28029 `__: ``\"\".replace(\"\", s, " "n)`` now returns ``s`` instead of an empty string for all non-zero ``n``. " "There are similar changes for :class:`bytes` and :class:`bytearray` objects." msgstr "" -#: ../build/NEWS:6959 +#: ../build/NEWS:6994 msgid "" "`bpo-38535 `__: Fixed line numbers and " "column offsets for AST nodes for calls without arguments in decorators." msgstr "" -#: ../build/NEWS:6962 +#: ../build/NEWS:6997 msgid "" "`bpo-38525 `__: Fix a segmentation fault " "when using reverse iterators of empty ``dict`` objects. Patch by Dong-hee Na " "and Inada Naoki." msgstr "" -#: ../build/NEWS:6965 +#: ../build/NEWS:7000 msgid "" "`bpo-38465 `__: :class:`bytearray`, :" "class:`~array.array` and :class:`~mmap.mmap` objects allow now to export " "more than 2**31 buffers at a time." msgstr "" -#: ../build/NEWS:6969 +#: ../build/NEWS:7004 msgid "" "`bpo-38469 `__: Fixed a bug where the " "scope of named expressions was not being resolved correctly in the presence " "of the *global* keyword. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:6973 +#: ../build/NEWS:7008 msgid "" "`bpo-38437 `__: Activate the " "``GC_DEBUG`` macro for debug builds of the interpreter (when ``Py_DEBUG`` is " "set). Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:6976 +#: ../build/NEWS:7011 msgid "" "`bpo-38379 `__: When the garbage " "collector makes a collection in which some objects resurrect (they are " @@ -13318,7 +13272,7 @@ msgid "" "unreachable. Patch by Pablo Galindo and Tim Peters." msgstr "" -#: ../build/NEWS:6982 +#: ../build/NEWS:7017 msgid "" "`bpo-38379 `__: When cyclic garbage " "collection (gc) runs finalizers that resurrect unreachable objects, the " @@ -13328,7 +13282,7 @@ msgid "" "collected. Changed the stats to report that none were collected." msgstr "" -#: ../build/NEWS:6989 +#: ../build/NEWS:7024 msgid "" "`bpo-38392 `__: In debug mode, :c:func:" "`PyObject_GC_Track` now calls ``tp_traverse()`` of the object type to ensure " @@ -13336,20 +13290,20 @@ msgid "" "valid." msgstr "" -#: ../build/NEWS:6993 +#: ../build/NEWS:7028 msgid "" "`bpo-38210 `__: Remove unecessary " "intersection and update set operation in dictview with empty set. " "(Contributed by Dong-hee Na in :issue:`38210`.)" msgstr "" -#: ../build/NEWS:6996 +#: ../build/NEWS:7031 msgid "" "`bpo-38402 `__: Check the error from the " "system's underlying ``crypt`` or ``crypt_r``." msgstr "" -#: ../build/NEWS:6999 +#: ../build/NEWS:7034 msgid "" "`bpo-37474 `__: On FreeBSD, Python no " "longer calls ``fedisableexcept()`` at startup to control the floating point " @@ -13357,7 +13311,7 @@ msgid "" "mode." msgstr "" -#: ../build/NEWS:7003 +#: ../build/NEWS:7038 msgid "" "`bpo-38006 `__: Fix a bug due to the " "interaction of weakrefs and the cyclic garbage collector. We must clear any " @@ -13365,21 +13319,21 @@ msgid "" "causing a crash." msgstr "" -#: ../build/NEWS:7007 +#: ../build/NEWS:7042 msgid "" "`bpo-38317 `__: Fix warnings options " "priority: ``PyConfig.warnoptions`` has the highest priority, as stated in " "the :pep:`587`." msgstr "" -#: ../build/NEWS:7010 +#: ../build/NEWS:7045 msgid "" "`bpo-38310 `__: Predict " "``BUILD_MAP_UNPACK_WITH_CALL`` -> ``CALL_FUNCTION_EX`` opcode pairs in the " "main interpreter loop. Patch by Brandt Bucher." msgstr "" -#: ../build/NEWS:7013 +#: ../build/NEWS:7048 msgid "" "`bpo-36871 `__: Improve error handling " "for the assert_has_calls and assert_has_awaits methods of mocks. Fixed a bug " @@ -13387,7 +13341,7 @@ msgid "" "spec were silently swallowed, leading to misleading error output." msgstr "" -#: ../build/NEWS:7018 +#: ../build/NEWS:7053 msgid "" "`bpo-11410 `__: Better control over " "symbol visibility is provided through use of the visibility attributes " @@ -13396,114 +13350,114 @@ msgid "" "minimising exported symbols." msgstr "" -#: ../build/NEWS:7023 +#: ../build/NEWS:7058 msgid "" "`bpo-38219 `__: Optimized the :class:" "`dict` constructor and the :meth:`~dict.update` method for the case when the " "argument is a dict." msgstr "" -#: ../build/NEWS:7026 +#: ../build/NEWS:7061 msgid "" "`bpo-38236 `__: Python now dumps path " "configuration if it fails to import the Python codecs of the filesystem and " "stdio encodings." msgstr "" -#: ../build/NEWS:7029 +#: ../build/NEWS:7064 msgid "" "`bpo-38013 `__: Allow to call " "``async_generator_athrow().throw(...)`` even for non-started async generator " "helper. It fixes annoying warning at the end of :func:`asyncio.run` call." msgstr "" -#: ../build/NEWS:7033 +#: ../build/NEWS:7068 msgid "" "`bpo-38124 `__: Fix an off-by-one error " "in PyState_AddModule that could cause out-of-bounds memory access." msgstr "" -#: ../build/NEWS:7036 +#: ../build/NEWS:7071 msgid "" "`bpo-38116 `__: The select module is now " "PEP-384 compliant and no longer has static state" msgstr "" -#: ../build/NEWS:7039 +#: ../build/NEWS:7074 msgid "" "`bpo-38113 `__: ast module updated to " "PEP-384 and all statics removed" msgstr "" -#: ../build/NEWS:7041 +#: ../build/NEWS:7076 msgid "" "`bpo-38076 `__: The struct module is now " "PEP-384 compatible" msgstr "" -#: ../build/NEWS:7043 +#: ../build/NEWS:7078 msgid "" "`bpo-38075 `__: The random module is now " "PEP-384 compatible" msgstr "" -#: ../build/NEWS:7045 +#: ../build/NEWS:7080 msgid "" "`bpo-38074 `__: zlib module made PEP-384 " "compatible" msgstr "" -#: ../build/NEWS:7047 +#: ../build/NEWS:7082 msgid "" "`bpo-38073 `__: Make pwd extension " "module PEP-384 compatible" msgstr "" -#: ../build/NEWS:7049 +#: ../build/NEWS:7084 msgid "" "`bpo-38072 `__: grp module made PEP-384 " "compatible" msgstr "" -#: ../build/NEWS:7051 +#: ../build/NEWS:7086 msgid "" "`bpo-38069 `__: Make _posixsubprocess " "PEP-384 compatible" msgstr "" -#: ../build/NEWS:7053 +#: ../build/NEWS:7088 msgid "" "`bpo-38071 `__: Make termios extension " "module PEP-384 compatible" msgstr "" -#: ../build/NEWS:7055 +#: ../build/NEWS:7090 msgid "" "`bpo-38005 `__: Fixed comparing and " "creating of InterpreterID and ChannelID." msgstr "" -#: ../build/NEWS:7057 +#: ../build/NEWS:7092 msgid "" "`bpo-36946 `__: Fix possible signed " "integer overflow when handling slices. Patch by hongweipeng." msgstr "" -#: ../build/NEWS:7060 +#: ../build/NEWS:7095 msgid "" "`bpo-37994 `__: Fixed silencing " "arbitrary errors if an attribute lookup fails in several sites. Only " "AttributeError should be silenced." msgstr "" -#: ../build/NEWS:7063 +#: ../build/NEWS:7098 msgid "" "`bpo-8425 `__: Optimize 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ù)." msgstr "" -#: ../build/NEWS:7067 +#: ../build/NEWS:7102 msgid "" "`bpo-37966 `__: The implementation of :" "func:`~unicodedata.is_normalized` has been greatly sped up on strings that " @@ -13511,21 +13465,21 @@ msgid "" "algorithm from the Unicode standard." msgstr "" -#: ../build/NEWS:7071 +#: ../build/NEWS:7106 msgid "" "`bpo-37947 `__: Adjust correctly the " "recursion level in the symtable generation for named expressions. Patch by " "Pablo Galindo." msgstr "" -#: ../build/NEWS:7074 +#: ../build/NEWS:7109 msgid "" "`bpo-37812 `__: The ``CHECK_SMALL_INT`` " "macro used inside :file:`Object/longobject.c` has been replaced with an " "explicit ``return`` at each call site." msgstr "" -#: ../build/NEWS:7078 +#: ../build/NEWS:7113 msgid "" "`bpo-37751 `__: Fix :func:`codecs." "lookup` to normalize the encoding name the same way than :func:`encodings." @@ -13533,7 +13487,7 @@ msgid "" "name to lower case." msgstr "" -#: ../build/NEWS:7082 +#: ../build/NEWS:7117 msgid "" "`bpo-37830 `__: Fixed compilation of :" "keyword:`break` and :keyword:`continue` in the :keyword:`finally` block when " @@ -13541,21 +13495,21 @@ msgid "" "constant value." msgstr "" -#: ../build/NEWS:7086 +#: ../build/NEWS:7121 msgid "" "`bpo-20490 `__: Improve import error " "message for partially initialized module on circular ``from`` imports - by " "Anthony Sottile." msgstr "" -#: ../build/NEWS:7089 +#: ../build/NEWS:7124 msgid "" "`bpo-37840 `__: Fix handling of negative " "indices in :c:member:`~PySequenceMethods.sq_item` of :class:`bytearray`. " "Patch by Sergey Fedoseev." msgstr "" -#: ../build/NEWS:7093 +#: ../build/NEWS:7128 msgid "" "`bpo-37802 `__: Slightly improve " "performance of :c:func:`PyLong_FromUnsignedLong`, :c:func:" @@ -13563,7 +13517,7 @@ msgid "" "Sergey Fedoseev." msgstr "" -#: ../build/NEWS:7097 +#: ../build/NEWS:7132 msgid "" "`bpo-37409 `__: Ensure explicit relative " "imports from interactive sessions and scripts (having no parent package) " @@ -13571,48 +13525,48 @@ msgid "" "package. Patch by Ben Lewis." msgstr "" -#: ../build/NEWS:7101 +#: ../build/NEWS:7136 msgid "" "`bpo-32912 `__: Reverted :issue:`32912`: " "emitting :exc:`SyntaxWarning` instead of :exc:`DeprecationWarning` for " "invalid escape sequences in string and bytes literals." msgstr "" -#: ../build/NEWS:7105 +#: ../build/NEWS:7140 msgid "" "`bpo-37757 `__: :pep:`572`: As described " "in the PEP, assignment expressions now raise :exc:`SyntaxError` when their " "interaction with comprehension scoping results in an ambiguous target scope." msgstr "" -#: ../build/NEWS:7109 +#: ../build/NEWS:7144 msgid "" "The ``TargetScopeError`` subclass originally proposed by the PEP has been " "removed in favour of just raising regular syntax errors for the disallowed " "cases." msgstr "" -#: ../build/NEWS:7113 +#: ../build/NEWS:7148 msgid "" "`bpo-36279 `__: Fix potential use of " "uninitialized memory in :func:`os.wait3`." msgstr "" -#: ../build/NEWS:7115 +#: ../build/NEWS:7150 msgid "" "`bpo-36311 `__: Decoding bytes objects " "larger than 2GiB is faster and no longer fails when a multibyte characters " "spans a chunk boundary." msgstr "" -#: ../build/NEWS:7118 +#: ../build/NEWS:7153 msgid "" "`bpo-34880 `__: The :keyword:`assert` " "statement now works properly if the :exc:`AssertionError` exception is being " "shadowed. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:7121 +#: ../build/NEWS:7156 msgid "" "`bpo-37340 `__: Removed object cache " "(``free_list``) for bound method objects. Temporary bound method objects are " @@ -13620,7 +13574,7 @@ msgid "" "``_PyObject_VectorcallMethod`` C API." msgstr "" -#: ../build/NEWS:7125 +#: ../build/NEWS:7160 msgid "" "`bpo-37648 `__: Fixed minor " "inconsistency in :meth:`list.__contains__`, :meth:`tuple.__contains__` and a " @@ -13628,14 +13582,14 @@ msgid "" "needle is on the right of ``==``." msgstr "" -#: ../build/NEWS:7129 +#: ../build/NEWS:7164 msgid "" "`bpo-37444 `__: Update differing " "exception between :meth:`builtins.__import__` and :meth:`importlib." "__import__`." msgstr "" -#: ../build/NEWS:7132 +#: ../build/NEWS:7167 msgid "" "`bpo-37619 `__: When adding a wrapper " "descriptor from one class to a different class (for example, setting " @@ -13643,20 +13597,20 @@ msgid "" "raised when the operator is called." msgstr "" -#: ../build/NEWS:7136 +#: ../build/NEWS:7171 msgid "" "`bpo-37593 `__: Swap the positions of " "the *posonlyargs* and *args* parameters in the constructor of :class:`ast." "parameters` nodes." msgstr "" -#: ../build/NEWS:7139 +#: ../build/NEWS:7174 msgid "" "`bpo-37543 `__: Optimized pymalloc for " "non PGO build." msgstr "" -#: ../build/NEWS:7141 +#: ../build/NEWS:7176 msgid "" "`bpo-37537 `__: Compute allocated " "pymalloc blocks inside _Py_GetAllocatedBlocks(). This slows down " @@ -13664,7 +13618,7 @@ msgid "" "_PyObject_Free()." msgstr "" -#: ../build/NEWS:7145 +#: ../build/NEWS:7180 msgid "" "`bpo-37467 `__: Fix :func:`sys." "excepthook` and :c:func:`PyErr_Display` if a filename is a bytes string. For " @@ -13672,21 +13626,21 @@ msgid "" "string." msgstr "" -#: ../build/NEWS:7149 +#: ../build/NEWS:7184 msgid "" "`bpo-37433 `__: Fix ``SyntaxError`` " "indicator printing too many spaces for multi-line strings - by Anthony " "Sottile." msgstr "" -#: ../build/NEWS:7152 +#: ../build/NEWS:7187 msgid "" "`bpo-37417 `__: :meth:`bytearray.extend` " "now correctly handles errors that arise during iteration. Patch by Brandt " "Bucher." msgstr "" -#: ../build/NEWS:7155 +#: ../build/NEWS:7190 msgid "" "`bpo-37414 `__: The undocumented ``sys." "callstats()`` function has been removed. Since Python 3.7, it was deprecated " @@ -13694,7 +13648,7 @@ msgid "" "``CALL_PROFILE`` which was already removed in Python 3.7." msgstr "" -#: ../build/NEWS:7160 +#: ../build/NEWS:7195 msgid "" "`bpo-37392 `__: Remove ``sys." "getcheckinterval()`` and ``sys.setcheckinterval()`` functions. They were " @@ -13703,7 +13657,7 @@ msgid "" "``PyInterpreterState`` structure." msgstr "" -#: ../build/NEWS:7166 +#: ../build/NEWS:7201 msgid "" "`bpo-37388 `__: In development mode and " "in debug build, *encoding* and *errors* arguments are now checked on string " @@ -13711,27 +13665,27 @@ msgid "" "and :meth:`bytes.decode`." msgstr "" -#: ../build/NEWS:7170 +#: ../build/NEWS:7205 msgid "" "By default, for best performances, the *errors* argument is only checked at " "the first encoding/decoding error, and the *encoding* argument is sometimes " "ignored for empty strings." msgstr "" -#: ../build/NEWS:7174 +#: ../build/NEWS:7209 msgid "" "`bpo-37348 `__: Optimized decoding short " "ASCII string with UTF-8 and ascii codecs. ``b\"foo\".decode()`` is about 15% " "faster. Patch by Inada Naoki." msgstr "" -#: ../build/NEWS:7177 +#: ../build/NEWS:7212 msgid "" "`bpo-24214 `__: Improved support of the " "surrogatepass error handler in the UTF-8 and UTF-16 incremental decoders." msgstr "" -#: ../build/NEWS:7180 +#: ../build/NEWS:7215 msgid "" "`bpo-37330 `__: :func:`open`, :func:`io." "open`, :func:`codecs.open` and :class:`fileinput.FileInput` no longer accept " @@ -13739,33 +13693,33 @@ msgid "" "since Python 3.3." msgstr "" -#: ../build/NEWS:7184 +#: ../build/NEWS:7219 msgid "" "`bpo-35224 `__: Reverse evaluation order " "of key: value in dict comprehensions as proposed in PEP 572. I.e. in ``{k: v " "for ...}``, ``k`` will be evaluated before ``v``." msgstr "" -#: ../build/NEWS:7188 +#: ../build/NEWS:7223 msgid "" "`bpo-37316 `__: Fix the :c:func:" "`PySys_Audit` call in :class:`mmap.mmap`." msgstr "" -#: ../build/NEWS:7190 +#: ../build/NEWS:7225 msgid "" "`bpo-37300 `__: Remove an unnecssary " "Py_XINCREF in classobject.c." msgstr "" -#: ../build/NEWS:7192 +#: ../build/NEWS:7227 msgid "" "`bpo-37269 `__: Fix a bug in the " "peephole optimizer that was not treating correctly constant conditions with " "binary operators. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:7196 +#: ../build/NEWS:7231 msgid "" "`bpo-20443 `__: Python now gets the " "absolute path of the script filename specified on the command line (ex: " @@ -13773,7 +13727,7 @@ msgid "" "sys.path[0] become an absolute path, rather than a relative path." msgstr "" -#: ../build/NEWS:7201 +#: ../build/NEWS:7236 msgid "" "`bpo-37257 `__: Python's small object " "allocator (``obmalloc.c``) now allows (no more than) one empty arena to " @@ -13782,84 +13736,84 @@ msgid "" "destroyed anew on each iteration." msgstr "" -#: ../build/NEWS:7206 +#: ../build/NEWS:7241 msgid "" "`bpo-37231 `__: The dispatching of type " "slots to special methods (for example calling ``__mul__`` when doing ``x * " "y``) has been made faster." msgstr "" -#: ../build/NEWS:7209 +#: ../build/NEWS:7244 msgid "" "`bpo-36974 `__: Implemented separate " "vectorcall functions for every calling convention of builtin functions and " "methods. This improves performance for calls." msgstr "" -#: ../build/NEWS:7213 +#: ../build/NEWS:7248 msgid "" "`bpo-37213 `__: Handle correctly " "negative line offsets in the peephole optimizer. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:7216 +#: ../build/NEWS:7251 msgid "" "`bpo-37219 `__: Remove erroneous " "optimization for empty set differences." msgstr "" -#: ../build/NEWS:7218 +#: ../build/NEWS:7253 msgid "" "`bpo-15913 `__: Implement :c:func:" "`PyBuffer_SizeFromFormat()` function (previously documented but not " "implemented): call :func:`struct.calcsize`. Patch by Joannah Nanjekye." msgstr "" -#: ../build/NEWS:7222 +#: ../build/NEWS:7257 msgid "" "`bpo-36922 `__: Slot functions optimize " "any callable with ``Py_TPFLAGS_METHOD_DESCRIPTOR`` instead of only instances " "of ``function``." msgstr "" -#: ../build/NEWS:7226 +#: ../build/NEWS:7261 msgid "" "`bpo-36974 `__: The slot " "``tp_vectorcall_offset`` is inherited unconditionally to support ``super()." "__call__()`` when the base class uses vectorcall." msgstr "" -#: ../build/NEWS:7229 +#: ../build/NEWS:7264 msgid "" "`bpo-37160 `__: :func:`threading." "get_native_id` now also supports NetBSD." msgstr "" -#: ../build/NEWS:7231 +#: ../build/NEWS:7266 msgid "" "`bpo-37077 `__: Add :func:`threading." "get_native_id` support for AIX. Patch by M. Felt" msgstr "" -#: ../build/NEWS:7234 +#: ../build/NEWS:7269 msgid "" "`bpo-36781 `__: :func:`sum` has been " "optimized for boolean values." msgstr "" -#: ../build/NEWS:7236 +#: ../build/NEWS:7271 msgid "" "`bpo-34556 `__: Add ``--upgrade-deps`` " "to venv module. Patch by Cooper Ry Lees" msgstr "" -#: ../build/NEWS:7238 +#: ../build/NEWS:7273 msgid "" "`bpo-20523 `__: ``pdb.Pdb`` supports ~/." "pdbrc in Windows 7. Patch by Tim Hopper and Dan Lidral-Porter." msgstr "" -#: ../build/NEWS:7241 +#: ../build/NEWS:7276 msgid "" "`bpo-35551 `__: Updated encodings: - " "Removed the \"tis260\" encoding, which was an alias for the nonexistent " @@ -13867,84 +13821,84 @@ msgid "" "encoding." msgstr "" -#: ../build/NEWS:7245 +#: ../build/NEWS:7280 msgid "" "`bpo-19072 `__: The :class:`classmethod` " "decorator can now wrap other descriptors such as property objects. Adapted " "from a patch written by Graham Dumpleton." msgstr "" -#: ../build/NEWS:7249 +#: ../build/NEWS:7284 msgid "" "`bpo-27575 `__: Improve speed of " "dictview intersection by directly using set intersection logic. Patch by " "David Su." msgstr "" -#: ../build/NEWS:7252 +#: ../build/NEWS:7287 msgid "" "`bpo-30773 `__: Prohibit parallel " "running of aclose() / asend() / athrow(). Fix ag_running to reflect the " "actual running status of the AG." msgstr "" -#: ../build/NEWS:7258 +#: ../build/NEWS:7293 msgid "" "`bpo-36589 `__: The :func:`curses." "update_lines_cols` function now returns ``None`` instead of ``1`` on success." msgstr "" -#: ../build/NEWS:7261 +#: ../build/NEWS:7296 msgid "" "`bpo-38807 `__: Update :exc:`TypeError` " "messages for :meth:`os.path.join` to include :class:`os.PathLike` objects as " "acceptable input types." msgstr "" -#: ../build/NEWS:7264 +#: ../build/NEWS:7299 msgid "" "`bpo-38724 `__: Add a repr for " "``subprocess.Popen`` objects. Patch by Andrey Doroschenko." msgstr "" -#: ../build/NEWS:7267 +#: ../build/NEWS:7302 msgid "" "`bpo-38786 `__: pydoc now recognizes and " "parses HTTPS URLs. Patch by python273." msgstr "" -#: ../build/NEWS:7269 +#: ../build/NEWS:7304 msgid "" "`bpo-38785 `__: Prevent asyncio from " "crashing if parent ``__init__`` is not called from a constructor of object " "derived from ``asyncio.Future``." msgstr "" -#: ../build/NEWS:7272 +#: ../build/NEWS:7307 msgid "" "`bpo-38723 `__: :mod:`pdb` now uses :" "meth:`io.open_code` to trigger auditing events." msgstr "" -#: ../build/NEWS:7275 +#: ../build/NEWS:7310 msgid "" "`bpo-27805 `__: Allow opening pipes and " "other non-seekable files in append mode with :func:`open`." msgstr "" -#: ../build/NEWS:7278 +#: ../build/NEWS:7313 msgid "" "`bpo-38438 `__: Simplify the :mod:" "`argparse` usage message for ``nargs=\"*\"``." msgstr "" -#: ../build/NEWS:7280 +#: ../build/NEWS:7315 msgid "" "`bpo-38761 `__: WeakSet is now " "registered as a collections.abc.MutableSet." msgstr "" -#: ../build/NEWS:7282 +#: ../build/NEWS:7317 msgid "" "`bpo-38716 `__: logging: change " "RotatingHandler namer and rotator to class-level attributes. This stops " @@ -13952,99 +13906,99 @@ msgid "" "with eponymous methods." msgstr "" -#: ../build/NEWS:7286 +#: ../build/NEWS:7321 msgid "" "`bpo-38713 `__: Add :data:`os.P_PIDFD` " "constant, which may be passed to :func:`os.waitid` to wait on a Linux " "process file descriptor." msgstr "" -#: ../build/NEWS:7289 +#: ../build/NEWS:7324 msgid "" "`bpo-38692 `__: Add :class:`asyncio." "PidfdChildWatcher`, a Linux-specific child watcher implementation that polls " "process file descriptors." msgstr "" -#: ../build/NEWS:7292 +#: ../build/NEWS:7327 msgid "" "`bpo-38692 `__: Expose the Linux " "``pidfd_open`` syscall as :func:`os.pidfd_open`." msgstr "" -#: ../build/NEWS:7295 +#: ../build/NEWS:7330 msgid "" "`bpo-38602 `__: Added constants :data:" "`~fcntl.F_OFD_GETLK`, :data:`~fcntl.F_OFD_SETLK` and :data:`~fcntl." "F_OFD_SETLKW` to the :mod:`fcntl` module. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:7299 +#: ../build/NEWS:7334 msgid "" "`bpo-38334 `__: Fixed seeking backward " "on an encrypted :class:`zipfile.ZipExtFile`." msgstr "" -#: ../build/NEWS:7302 +#: ../build/NEWS:7337 msgid "" "`bpo-38312 `__: Add :func:`curses." "get_escdelay`, :func:`curses.set_escdelay`, :func:`curses.get_tabsize`, and :" "func:`curses.set_tabsize` functions - by Anthony Sottile." msgstr "" -#: ../build/NEWS:7306 +#: ../build/NEWS:7341 msgid "" "`bpo-38586 `__: Now :func:`~logging." "config.fileConfig` correcty sets the .name of handlers loaded." msgstr "" -#: ../build/NEWS:7309 +#: ../build/NEWS:7344 msgid "" "`bpo-38565 `__: Add new " "cache_parameters() method for functools.lru_cache() to better support " "pickling." msgstr "" -#: ../build/NEWS:7312 +#: ../build/NEWS:7347 msgid "" "`bpo-34679 `__: asynci.ProactorEventLoop." "close() now only calls signal.set_wakeup_fd() in the main thread." msgstr "" -#: ../build/NEWS:7315 +#: ../build/NEWS:7350 msgid "" "`bpo-31202 `__: The case the result of :" "func:`pathlib.WindowsPath.glob` matches now the case of the pattern for " "literal parts." msgstr "" -#: ../build/NEWS:7318 +#: ../build/NEWS:7353 msgid "" "`bpo-36321 `__: Remove misspelled " "attribute. The 3.8 changelog noted that this would be removed in 3.9." msgstr "" -#: ../build/NEWS:7321 +#: ../build/NEWS:7356 msgid "" "`bpo-38521 `__: Fixed erroneous equality " "comparison in statistics.NormalDist()." msgstr "" -#: ../build/NEWS:7323 +#: ../build/NEWS:7358 msgid "" "`bpo-38493 `__: Added :data:`~os." "CLD_KILLED` and :data:`~os.CLD_STOPPED` for :attr:`si_code`. Patch by Dong-" "hee Na." msgstr "" -#: ../build/NEWS:7326 +#: ../build/NEWS:7361 msgid "" "`bpo-38478 `__: Fixed a bug in :meth:" "`inspect.signature.bind` that was causing it to fail when handling a keyword " "argument with same name as positional-only parameter. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:7330 +#: ../build/NEWS:7365 msgid "" "`bpo-33604 `__: Fixed `hmac.new` and " "`hmac.HMAC` to raise TypeError instead of ValueError when the digestmod " @@ -14052,34 +14006,34 @@ msgid "" "documentation and docstrings." msgstr "" -#: ../build/NEWS:7334 +#: ../build/NEWS:7369 msgid "" "`bpo-38378 `__: Parameters *out* and " "*in* of :func:`os.sendfile` was renamed to *out_fd* and *in_fd*." msgstr "" -#: ../build/NEWS:7337 +#: ../build/NEWS:7372 msgid "" "`bpo-38417 `__: Added support for " "setting the umask in the child process to the subprocess module on POSIX " "systems." msgstr "" -#: ../build/NEWS:7340 +#: ../build/NEWS:7375 msgid "" "`bpo-38449 `__: Revert GH-15522, which " "introduces a regression in :meth:`mimetypes.guess_type` due to improper " "handling of filenames as urls." msgstr "" -#: ../build/NEWS:7344 +#: ../build/NEWS:7379 msgid "" "`bpo-38431 `__: Fix ``__repr__`` method " "for :class:`dataclasses.InitVar` to support typing objects, patch by Samuel " "Colvin." msgstr "" -#: ../build/NEWS:7347 +#: ../build/NEWS:7382 msgid "" "`bpo-38109 `__: Add missing :data:`stat." "S_IFDOOR`, :data:`stat.S_IFPORT`, :data:`stat.S_IFWHT`, :func:`stat." @@ -14087,19 +14041,19 @@ msgid "" "Python implementation of :mod:`stat`." msgstr "" -#: ../build/NEWS:7351 +#: ../build/NEWS:7386 msgid "" "`bpo-38422 `__: Clarify docstrings of " "pathlib suffix(es)" msgstr "" -#: ../build/NEWS:7353 +#: ../build/NEWS:7388 msgid "" "`bpo-38405 `__: Nested subclasses of :" "class:`typing.NamedTuple` are now pickleable." msgstr "" -#: ../build/NEWS:7356 +#: ../build/NEWS:7391 msgid "" "`bpo-38332 `__: Prevent :exc:`KeyError` " "thrown by :func:`_encoded_words.decode` when given an encoded-word with " @@ -14107,33 +14061,33 @@ msgid "" "message.get`." msgstr "" -#: ../build/NEWS:7360 +#: ../build/NEWS:7395 msgid "" "`bpo-38371 `__: Deprecated the " "``split()`` method in :class:`_tkinter.TkappType` in favour of the " "``splitlist()`` method which has more consistent and predicable behavior." msgstr "" -#: ../build/NEWS:7364 +#: ../build/NEWS:7399 msgid "" "`bpo-38341 `__: Add :exc:`smtplib." "SMTPNotSupportedError` to the :mod:`smtplib` exported names." msgstr "" -#: ../build/NEWS:7367 +#: ../build/NEWS:7402 msgid "" "`bpo-38319 `__: sendfile() used in " "socket and shutil modules was raising OverflowError for files >= 2GiB on 32-" "bit architectures. (patch by Giampaolo Rodola)" msgstr "" -#: ../build/NEWS:7371 +#: ../build/NEWS:7406 msgid "" "`bpo-38242 `__: Revert the new asyncio " "Streams API" msgstr "" -#: ../build/NEWS:7373 +#: ../build/NEWS:7408 msgid "" "`bpo-13153 `__: OS native encoding is " "now used for converting between Python strings and Tcl objects. This allows " @@ -14142,13 +14096,13 @@ msgid "" "MemoryError)." msgstr "" -#: ../build/NEWS:7378 +#: ../build/NEWS:7413 msgid "" "`bpo-38019 `__: Correctly handle pause/" "resume reading of closed asyncio unix pipe." msgstr "" -#: ../build/NEWS:7381 +#: ../build/NEWS:7416 msgid "" "`bpo-38163 `__: Child mocks will now " "detect their type as either synchronous or asynchronous, asynchronous child " @@ -14156,13 +14110,13 @@ msgid "" "MagicMock or Mock (depending on their parent type)." msgstr "" -#: ../build/NEWS:7386 +#: ../build/NEWS:7421 msgid "" "`bpo-38161 `__: Removes _AwaitEvent from " "AsyncMock." msgstr "" -#: ../build/NEWS:7388 +#: ../build/NEWS:7423 msgid "" "`bpo-38216 `__: Allow the rare code that " "wants to send invalid http requests from the `http.client` library a way to " @@ -14171,55 +14125,55 @@ msgid "" "their own behavior in the face of bad requests." msgstr "" -#: ../build/NEWS:7393 +#: ../build/NEWS:7428 msgid "" "`bpo-28286 `__: Deprecate opening :class:" "`~gzip.GzipFile` for writing implicitly. Always specify the *mode* argument " "for writing." msgstr "" -#: ../build/NEWS:7396 +#: ../build/NEWS:7431 msgid "" "`bpo-38108 `__: Any synchronous magic " "methods on an AsyncMock now return a MagicMock. Any asynchronous magic " "methods on a MagicMock now return an AsyncMock." msgstr "" -#: ../build/NEWS:7400 +#: ../build/NEWS:7435 msgid "" "`bpo-38265 `__: Update the *length* " "parameter of :func:`os.pread` to accept :c:type:`Py_ssize_t` instead of :c:" "type:`int`." msgstr "" -#: ../build/NEWS:7403 +#: ../build/NEWS:7438 msgid "" "`bpo-38112 `__: :mod:`compileall` has a " "higher default recursion limit and new command-line arguments for path " "manipulation, symlinks handling, and multiple optimization levels." msgstr "" -#: ../build/NEWS:7407 +#: ../build/NEWS:7442 msgid "" "`bpo-38248 `__: asyncio: Fix " "inconsistent immediate Task cancellation" msgstr "" -#: ../build/NEWS:7409 +#: ../build/NEWS:7444 msgid "" "`bpo-38237 `__: The arguments for the " "builtin pow function are more descriptive. They can now also be passed in as " "keywords." msgstr "" -#: ../build/NEWS:7412 +#: ../build/NEWS:7447 msgid "" "`bpo-34002 `__: Improve efficiency in " "parts of email package by changing while-pop to a for loop, using isdisjoint " "instead of set intersections." msgstr "" -#: ../build/NEWS:7415 +#: ../build/NEWS:7450 msgid "" "`bpo-38191 `__: Constructors of :class:" "`~typing.NamedTuple` and :class:`~typing.TypedDict` types now accept " @@ -14227,19 +14181,19 @@ msgid "" "\"_typename\", \"fields\" and \"_fields\"." msgstr "" -#: ../build/NEWS:7420 +#: ../build/NEWS:7455 msgid "" "`bpo-38155 `__: Add ``__all__`` to :mod:" "`datetime`. Patch by Tahia Khan." msgstr "" -#: ../build/NEWS:7422 +#: ../build/NEWS:7457 msgid "" "`bpo-38185 `__: Fixed case-insensitive " "string comparison in :class:`sqlite3.Row` indexing." msgstr "" -#: ../build/NEWS:7425 +#: ../build/NEWS:7460 msgid "" "`bpo-38136 `__: Changes AsyncMock call " "count and await count to be two different counters. Now await count only " @@ -14247,32 +14201,32 @@ msgid "" "vice-versa. Update the documentation around this." msgstr "" -#: ../build/NEWS:7430 +#: ../build/NEWS:7465 msgid "" "`bpo-37828 `__: Fix default mock name " "in :meth:`unittest.mock.Mock.assert_called` exceptions. Patch by Abraham " "Toriz Cruz." msgstr "" -#: ../build/NEWS:7434 +#: ../build/NEWS:7469 msgid "" "`bpo-38175 `__: Fix a memory leak in " "comparison of :class:`sqlite3.Row` objects." msgstr "" -#: ../build/NEWS:7437 +#: ../build/NEWS:7472 msgid "" "`bpo-33936 `__: _hashlib no longer calls " "obsolete OpenSSL initialization function with OpenSSL 1.1.0+." msgstr "" -#: ../build/NEWS:7440 +#: ../build/NEWS:7475 msgid "" "`bpo-34706 `__: Preserve subclassing in " "inspect.Signature.from_callable." msgstr "" -#: ../build/NEWS:7442 +#: ../build/NEWS:7477 msgid "" "`bpo-38153 `__: Names of hashing " "algorithms frome OpenSSL are now normalized to follow Python's naming " @@ -14280,47 +14234,47 @@ msgid "" "blake2b512 instead of blake2b." msgstr "" -#: ../build/NEWS:7446 +#: ../build/NEWS:7481 msgid "" "`bpo-38115 `__: Fix a bug in dis." "findlinestarts() where it would return invalid bytecode offsets. Document " "that a code object's co_lnotab can contain invalid bytecode offsets." msgstr "" -#: ../build/NEWS:7450 +#: ../build/NEWS:7485 msgid "" "`bpo-38148 `__: Add slots to :mod:" "`asyncio` transport classes, which can reduce memory usage." msgstr "" -#: ../build/NEWS:7453 +#: ../build/NEWS:7488 msgid "" "`bpo-38142 `__: The _hashlib OpenSSL " "wrapper extension module is now PEP-384 compliant." msgstr "" -#: ../build/NEWS:7456 +#: ../build/NEWS:7491 msgid "" "`bpo-9216 `__: hashlib constructors now " "support usedforsecurity flag to signal that a hashing algorithm is not used " "in a security context." msgstr "" -#: ../build/NEWS:7459 +#: ../build/NEWS:7494 msgid "" "`bpo-36991 `__: Fixes a potential " "incorrect AttributeError exception escaping ZipFile.extract() in some " "unsupported input error situations." msgstr "" -#: ../build/NEWS:7462 +#: ../build/NEWS:7497 msgid "" "`bpo-38134 `__: Remove obsolete copy of " "PBKDF2_HMAC_fast. All supported OpenSSL versions contain a fast " "implementation." msgstr "" -#: ../build/NEWS:7465 +#: ../build/NEWS:7500 msgid "" "`bpo-38132 `__: The OpenSSL hashlib " "wrapper uses a simpler implementation. Several Macros and pointless caches " @@ -14328,7 +14282,7 @@ msgid "" "stays the same, except it is now always lower case." msgstr "" -#: ../build/NEWS:7470 +#: ../build/NEWS:7505 msgid "" "`bpo-38008 `__: Fix parent class check " "in protocols to correctly identify the module that provides a builtin " @@ -14336,7 +14290,7 @@ msgid "" "module" msgstr "" -#: ../build/NEWS:7474 +#: ../build/NEWS:7509 msgid "" "`bpo-34037 `__: For :mod:`asyncio`, add " "a new coroutine :meth:`loop.shutdown_default_executor`. The new coroutine " @@ -14345,48 +14299,48 @@ msgid "" "utilize the new coroutine. Patch by Kyle Stanley." msgstr "" -#: ../build/NEWS:7480 +#: ../build/NEWS:7515 msgid "" "`bpo-37405 `__: Fixed regression bug for " "socket.getsockname() for non-CAN_ISOTP AF_CAN address family sockets by " "returning a 1-tuple instead of string." msgstr "" -#: ../build/NEWS:7483 +#: ../build/NEWS:7518 msgid "" "`bpo-38121 `__: Update parameter names " "on functions in importlib.metadata matching the changes in the 0.22 release " "of importlib_metadata." msgstr "" -#: ../build/NEWS:7486 +#: ../build/NEWS:7521 msgid "" "`bpo-38110 `__: The os.closewalk() " "implementation now uses the libc fdwalk() API on platforms where it is " "available." msgstr "" -#: ../build/NEWS:7489 +#: ../build/NEWS:7524 msgid "" "`bpo-38093 `__: Fixes AsyncMock so it " "doesn't crash when used with AsyncContextManagers or AsyncIterators." msgstr "" -#: ../build/NEWS:7492 +#: ../build/NEWS:7527 msgid "" "`bpo-37488 `__: Add warning to :meth:" "`datetime.utctimetuple`, :meth:`datetime.utcnow` and :meth:`datetime." "utcfromtimestamp` ." msgstr "" -#: ../build/NEWS:7495 +#: ../build/NEWS:7530 msgid "" "`bpo-35640 `__: Allow passing a :term:" "`path-like object` as ``directory`` argument to the :class:`http.server." "SimpleHTTPRequestHandler` class. Patch by Géry Ogam." msgstr "" -#: ../build/NEWS:7499 +#: ../build/NEWS:7534 msgid "" "`bpo-38086 `__: Update importlib." "metadata with changes from `importlib_metadata 0.21 `_." msgstr "" -#: ../build/NEWS:7503 +#: ../build/NEWS:7538 msgid "" "`bpo-37251 `__: Remove `__code__` check " "in AsyncMock that incorrectly evaluated function specs as async objects but " @@ -14402,51 +14356,51 @@ msgid "" "defined as async objects." msgstr "" -#: ../build/NEWS:7507 +#: ../build/NEWS:7542 msgid "" "`bpo-38037 `__: Fix reference counters " "in the :mod:`signal` module." msgstr "" -#: ../build/NEWS:7509 +#: ../build/NEWS:7544 msgid "" "`bpo-38066 `__: Hide internal asyncio." "Stream methods: feed_eof(), feed_data(), set_exception() and set_transport()." msgstr "" -#: ../build/NEWS:7512 +#: ../build/NEWS:7547 msgid "" "`bpo-38059 `__: inspect.py now uses sys." "exit() instead of exit()" msgstr "" -#: ../build/NEWS:7514 +#: ../build/NEWS:7549 msgid "" "`bpo-38049 `__: Added command-line " "interface for the :mod:`ast` module." msgstr "" -#: ../build/NEWS:7516 +#: ../build/NEWS:7551 msgid "" "`bpo-37953 `__: In :mod:`typing`, " "improved the ``__hash__`` and ``__eq__`` methods for :class:" "`ForwardReferences`." msgstr "" -#: ../build/NEWS:7519 +#: ../build/NEWS:7554 msgid "" "`bpo-38026 `__: Fixed :func:`inspect." "getattr_static` used ``isinstance`` while it should avoid dynamic lookup." msgstr "" -#: ../build/NEWS:7522 +#: ../build/NEWS:7557 msgid "" "`bpo-35923 `__: Update :class:`importlib." "machinery.BuiltinImporter` to use ``loader._ORIGIN`` instead of a hardcoded " "value. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:7525 +#: ../build/NEWS:7560 msgid "" "`bpo-38010 `__: In ``importlib." "metadata`` sync with ``importlib_metadata`` 0.20, clarifying behavior of " @@ -14454,7 +14408,7 @@ msgid "" "``requires()`` on ``dist-info`` packages." msgstr "" -#: ../build/NEWS:7529 +#: ../build/NEWS:7564 msgid "" "`bpo-38006 `__: weakref." "WeakValueDictionary defines a local remove() function used as callback for " @@ -14462,21 +14416,21 @@ msgid "" "implementation to avoid the closure." msgstr "" -#: ../build/NEWS:7533 +#: ../build/NEWS:7568 msgid "" "`bpo-37995 `__: Added the *indent* " "option to :func:`ast.dump` which allows it to produce a multiline indented " "output." msgstr "" -#: ../build/NEWS:7536 +#: ../build/NEWS:7571 msgid "" "`bpo-34410 `__: Fixed a crash in the :" "func:`tee` iterator when re-enter it. RuntimeError is now raised in this " "case." msgstr "" -#: ../build/NEWS:7539 +#: ../build/NEWS:7574 msgid "" "`bpo-37140 `__: Fix a ctypes regression " "of Python 3.8. When a ctypes.Structure is passed by copy to a function, " @@ -14486,27 +14440,27 @@ msgid "" "longer call the finalizer twice." msgstr "" -#: ../build/NEWS:7545 +#: ../build/NEWS:7580 msgid "" "`bpo-37587 `__: ``_json.scanstring`` is " "now up to 3x faster when there are many backslash escaped characters in the " "JSON string." msgstr "" -#: ../build/NEWS:7548 +#: ../build/NEWS:7583 msgid "" "`bpo-37834 `__: Prevent shutil.rmtree " "exception when built on non-Windows system without fd system call support, " "like older versions of macOS." msgstr "" -#: ../build/NEWS:7551 +#: ../build/NEWS:7586 msgid "" "`bpo-10978 `__: Semaphores and " "BoundedSemaphores can now release more than one waiting thread at a time." msgstr "" -#: ../build/NEWS:7554 +#: ../build/NEWS:7589 msgid "" "`bpo-37972 `__: Subscripts to the " "`unittest.mock.call` objects now receive the same chaining mechanism as any " @@ -14514,67 +14468,67 @@ msgid "" "`TypeError`:" msgstr "" -#: ../build/NEWS:7558 +#: ../build/NEWS:7593 msgid "call().foo().__getitem__('bar')" msgstr "" -#: ../build/NEWS:7560 +#: ../build/NEWS:7595 msgid "Patch by blhsing" msgstr "" -#: ../build/NEWS:7562 +#: ../build/NEWS:7597 msgid "" "`bpo-37965 `__: Fix C compiler warning " "caused by distutils.ccompiler.CCompiler.has_function." msgstr "" -#: ../build/NEWS:7565 +#: ../build/NEWS:7600 msgid "" "`bpo-37964 `__: Add ``F_GETPATH`` " "command to :mod:`fcntl`." msgstr "" -#: ../build/NEWS:7567 +#: ../build/NEWS:7602 msgid "" "`bpo-37960 `__: ``repr()`` of buffered " "and text streams now silences only expected exceptions when get the value of " "\"name\" and \"mode\" attributes." msgstr "" -#: ../build/NEWS:7570 +#: ../build/NEWS:7605 msgid "" "`bpo-37961 `__: Add a ``total_nframe`` " "field to the traces collected by the tracemalloc module. This field " "indicates the original number of frames before it was truncated." msgstr "" -#: ../build/NEWS:7574 +#: ../build/NEWS:7609 msgid "" "`bpo-37951 `__: Most features of the " "subprocess module now work again in subinterpreters. Only *preexec_fn* is " "restricted in subinterpreters." msgstr "" -#: ../build/NEWS:7577 +#: ../build/NEWS:7612 msgid "" "`bpo-36205 `__: Fix the rusage " "implementation of time.process_time() to correctly report the sum of the " "system and user CPU time." msgstr "" -#: ../build/NEWS:7580 +#: ../build/NEWS:7615 msgid "" "`bpo-37950 `__: Fix :func:`ast.dump` " "when call with incompletely initialized node." msgstr "" -#: ../build/NEWS:7583 +#: ../build/NEWS:7618 msgid "" "`bpo-34679 `__: Restores instantiation " "of Windows IOCP event loops from the non-main thread." msgstr "" -#: ../build/NEWS:7586 +#: ../build/NEWS:7621 msgid "" "`bpo-36917 `__: Add default " "implementation of the :meth:`ast.NodeVisitor.visit_Constant` method which " @@ -14582,58 +14536,58 @@ msgid "" "``visit_Str()``, etc." msgstr "" -#: ../build/NEWS:7591 +#: ../build/NEWS:7626 msgid "" "`bpo-37798 `__: Update test_statistics." "py to verify that the statistics module works well for both C and Python " "implementations. Patch by Dong-hee Na" msgstr "" -#: ../build/NEWS:7594 +#: ../build/NEWS:7629 msgid "" "`bpo-26589 `__: Added a new status code " "to the http module: 451 UNAVAILABLE_FOR_LEGAL_REASONS" msgstr "" -#: ../build/NEWS:7597 +#: ../build/NEWS:7632 msgid "" "`bpo-37915 `__: Fix a segmentation fault " "that appeared when comparing instances of ``datetime.timezone`` and " "``datetime.tzinfo`` objects. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:7601 +#: ../build/NEWS:7636 msgid "" "`bpo-32554 `__: Deprecate having random." "seed() call hash on arbitrary types." msgstr "" -#: ../build/NEWS:7603 +#: ../build/NEWS:7638 msgid "" "`bpo-9938 `__: Add optional keyword " "argument ``exit_on_error`` for :class:`ArgumentParser`." msgstr "" -#: ../build/NEWS:7606 +#: ../build/NEWS:7641 msgid "" "`bpo-37851 `__: The :mod:`faulthandler` " "module no longer allocates its alternative stack at Python startup. Now the " "stack is only allocated at the first faulthandler usage." msgstr "" -#: ../build/NEWS:7610 +#: ../build/NEWS:7645 msgid "" "`bpo-32793 `__: Fix a duplicated debug " "message when :meth:`smtplib.SMTP.connect` is called." msgstr "" -#: ../build/NEWS:7613 +#: ../build/NEWS:7648 msgid "" "`bpo-37885 `__: venv: Don't generate " "unset variable warning on deactivate." msgstr "" -#: ../build/NEWS:7615 +#: ../build/NEWS:7650 msgid "" "`bpo-37868 `__: Fix dataclasses." "is_dataclass when given an instance that never raises AttributeError in " @@ -14641,7 +14595,7 @@ msgid "" "__dataclass_fields__ even if it's not a dataclass." msgstr "" -#: ../build/NEWS:7619 +#: ../build/NEWS:7654 msgid "" "`bpo-37811 `__: Fix ``socket`` module's " "``socket.connect(address)`` function being unable to establish connection in " @@ -14650,13 +14604,13 @@ msgid "" "timeout value." msgstr "" -#: ../build/NEWS:7624 +#: ../build/NEWS:7659 msgid "" "`bpo-37863 `__: Optimizations for " "Fraction.__hash__ suggested by Tim Peters." msgstr "" -#: ../build/NEWS:7626 +#: ../build/NEWS:7661 msgid "" "`bpo-21131 `__: Fix ``faulthandler." "register(chain=True)`` stack. faulthandler now allocates a dedicated stack " @@ -14665,73 +14619,73 @@ msgid "" "``SIGSTKSZ`` bytes of stack memory on some platforms." msgstr "" -#: ../build/NEWS:7632 +#: ../build/NEWS:7667 msgid "" "`bpo-37798 `__: Add C fastpath for " "statistics.NormalDist.inv_cdf() Patch by Dong-hee Na" msgstr "" -#: ../build/NEWS:7635 +#: ../build/NEWS:7670 msgid "" "`bpo-37804 `__: Remove the deprecated " "method `threading.Thread.isAlive()`. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:7638 +#: ../build/NEWS:7673 msgid "" "`bpo-37819 `__: Add Fraction." "as_integer_ratio() to match the corresponding methods in bool, int, float, " "and decimal." msgstr "" -#: ../build/NEWS:7641 +#: ../build/NEWS:7676 msgid "" "`bpo-14465 `__: Add an xml.etree." "ElementTree.indent() function for pretty-printing XML trees. Contributed by " "Stefan Behnel." msgstr "" -#: ../build/NEWS:7644 +#: ../build/NEWS:7679 msgid "" "`bpo-37810 `__: Fix :mod:`difflib` ``?`` " "hint in diff output when dealing with tabs. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:7647 +#: ../build/NEWS:7682 msgid "" "`bpo-37772 `__: In ``zipfile.Path``, " "when adding implicit dirs, ensure that ancestral directories are added and " "that duplicates are excluded." msgstr "" -#: ../build/NEWS:7650 +#: ../build/NEWS:7685 msgid "" "`bpo-18578 `__: Renamed and documented " "`test.bytecode_helper` as `test.support.bytecode_helper`. Patch by Joannah " "Nanjekye." msgstr "" -#: ../build/NEWS:7653 +#: ../build/NEWS:7688 msgid "" "`bpo-37785 `__: Fix xgettext warnings " "in :mod:`argparse`." msgstr "" -#: ../build/NEWS:7655 +#: ../build/NEWS:7690 msgid "" "`bpo-34488 `__: :meth:`writelines` " "method of :class:`io.BytesIO` is now slightly faster when many small lines " "are passed. Patch by Sergey Fedoseev." msgstr "" -#: ../build/NEWS:7659 +#: ../build/NEWS:7694 msgid "" "`bpo-37449 `__: `ensurepip` now uses " "`importlib.resources.read_binary()` to read data instead of `pkgutil." "get_data()`. Patch by Joannah Nanjekye." msgstr "" -#: ../build/NEWS:7662 +#: ../build/NEWS:7697 msgid "" "`bpo-28292 `__: Mark calendar.py helper " "functions as being private. The follows PEP 8 guidance to maintain the " @@ -14739,14 +14693,14 @@ msgid "" "confusion." msgstr "" -#: ../build/NEWS:7666 +#: ../build/NEWS:7701 msgid "" "`bpo-18049 `__: Add definition of " "THREAD_STACK_SIZE for AIX in Python/thread_pthread.h The default thread " "stacksize caused crashes with the default recursion limit Patch by M Felt" msgstr "" -#: ../build/NEWS:7670 +#: ../build/NEWS:7705 msgid "" "`bpo-37742 `__: The logging.getLogger() " "API now returns the root logger when passed the name 'root', whereas " @@ -14756,53 +14710,53 @@ msgid "" "module called 'root.py'." msgstr "" -#: ../build/NEWS:7676 +#: ../build/NEWS:7711 msgid "" "`bpo-37738 `__: Fix the implementation " "of curses ``addch(str, color_pair)``: pass the color pair to ``setcchar()``, " "instead of always passing 0 as the color pair." msgstr "" -#: ../build/NEWS:7680 +#: ../build/NEWS:7715 msgid "" "`bpo-37723 `__: Fix performance " "regression on regular expression parsing with huge character sets. Patch by " "Yann Vaginay." msgstr "" -#: ../build/NEWS:7683 +#: ../build/NEWS:7718 msgid "" "`bpo-35943 `__: The function :c:func:" "`PyImport_GetModule` now ensures any module it returns is fully initialized. " "Patch by Joannah Nanjekye." msgstr "" -#: ../build/NEWS:7686 +#: ../build/NEWS:7721 msgid "" "`bpo-32178 `__: Fix IndexError in :mod:" "`email` package when trying to parse invalid address fields starting with ``:" "``." msgstr "" -#: ../build/NEWS:7689 +#: ../build/NEWS:7724 msgid "" "`bpo-37268 `__: The :mod:`parser` module " "is deprecated and will be removed in future versions of Python." msgstr "" -#: ../build/NEWS:7692 +#: ../build/NEWS:7727 msgid "" "`bpo-11953 `__: Completing WSA* error " "codes in :mod:`socket`." msgstr "" -#: ../build/NEWS:7694 +#: ../build/NEWS:7729 msgid "" "`bpo-37685 `__: Fixed comparisons of :" "class:`datetime.timedelta` and :class:`datetime.timezone`." msgstr "" -#: ../build/NEWS:7697 +#: ../build/NEWS:7732 msgid "" "`bpo-37697 `__: Syncronize ``importlib." "metadata`` with `importlib_metadata 0.19 `__: Correct :func:`curses." "unget_wch` error message. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:7705 +#: ../build/NEWS:7740 msgid "" "`bpo-37689 `__: Add :meth:" "`is_relative_to` in :class:`PurePath` to determine whether or not one path " "is relative to another." msgstr "" -#: ../build/NEWS:7708 +#: ../build/NEWS:7743 msgid "" "`bpo-29553 `__: Fixed :meth:`argparse." "ArgumentParser.format_usage` for mutually exclusive groups. Patch by Andrew " "Nester." msgstr "" -#: ../build/NEWS:7711 +#: ../build/NEWS:7746 msgid "" "`bpo-37691 `__: Let math.dist() accept " "coordinates as sequences (or iterables) rather than just tuples." msgstr "" -#: ../build/NEWS:7714 +#: ../build/NEWS:7749 msgid "" "`bpo-37685 `__: Fixed ``__eq__``, " "``__lt__`` etc implementations in some classes. They now return :data:" @@ -14845,25 +14799,25 @@ msgid "" "`~unittest.mock.ANY` will return ``True``)." msgstr "" -#: ../build/NEWS:7720 +#: ../build/NEWS:7755 msgid "" "`bpo-37354 `__: Make Activate.ps1 " "Powershell script static to allow for signing it." msgstr "" -#: ../build/NEWS:7723 +#: ../build/NEWS:7758 msgid "" "`bpo-37664 `__: Update wheels bundled " "with ensurepip (pip 19.2.3 and setuptools 41.2.0)" msgstr "" -#: ../build/NEWS:7726 +#: ../build/NEWS:7761 msgid "" "`bpo-37663 `__: Bring consistency to " "venv shell activation scripts by always using __VENV_PROMPT__." msgstr "" -#: ../build/NEWS:7729 +#: ../build/NEWS:7764 msgid "" "`bpo-37642 `__: Allowed the pure Python " "implementation of :class:`datetime.timezone` to represent sub-minute offsets " @@ -14871,64 +14825,64 @@ msgid "" "24:00) and (-23:59, 24:00). Patch by Ngalim Siregar" msgstr "" -#: ../build/NEWS:7734 +#: ../build/NEWS:7769 msgid "" "`bpo-36161 `__: In :mod:`posix`, use " "``ttyname_r`` instead of ``ttyname`` for thread safety." msgstr "" -#: ../build/NEWS:7737 +#: ../build/NEWS:7772 msgid "" "`bpo-36324 `__: Make internal attributes " "for statistics.NormalDist() private." msgstr "" -#: ../build/NEWS:7739 +#: ../build/NEWS:7774 msgid "" "`bpo-37555 `__: Fix `NonCallableMock." "_call_matcher` returning tuple instead of `_Call` object when `self." "_spec_signature` exists. Patch by Elizabeth Uselton" msgstr "" -#: ../build/NEWS:7743 +#: ../build/NEWS:7778 msgid "" "`bpo-29446 `__: Make `from tkinter " "import *` import only the expected objects." msgstr "" -#: ../build/NEWS:7745 +#: ../build/NEWS:7780 msgid "" "`bpo-16970 `__: Adding a value error " "when an invalid value in passed to nargs Patch by Robert Leenders" msgstr "" -#: ../build/NEWS:7748 +#: ../build/NEWS:7783 msgid "" "`bpo-34443 `__: Exceptions from :mod:" "`enum` now use the ``__qualname`` of the enum class in the exception message " "instead of the ``__name__``." msgstr "" -#: ../build/NEWS:7751 +#: ../build/NEWS:7786 msgid "" "`bpo-37491 `__: Fix ``IndexError`` when " "parsing email headers with unexpectedly ending bare-quoted string value. " "Patch by Abhilash Raj." msgstr "" -#: ../build/NEWS:7754 +#: ../build/NEWS:7789 msgid "" "`bpo-37587 `__: Make json.loads faster " "for long strings. (Patch by Marco Paolini)" msgstr "" -#: ../build/NEWS:7757 +#: ../build/NEWS:7792 msgid "" "`bpo-18378 `__: Recognize \"UTF-8\" as a " "valid value for LC_CTYPE in locale._parse_localename." msgstr "" -#: ../build/NEWS:7760 +#: ../build/NEWS:7795 msgid "" "`bpo-37579 `__: Return :exc:" "`NotImplemented` in Python implementation of ``__eq__`` for :class:" @@ -14937,53 +14891,53 @@ msgid "" "Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:7765 +#: ../build/NEWS:7800 msgid "" "`bpo-21478 `__: Record calls to parent " "when autospecced object is attached to a mock using :func:`unittest.mock." "attach_mock`. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:7769 +#: ../build/NEWS:7804 msgid "" "`bpo-37531 `__: \"python3 -m test -jN --" "timeout=TIMEOUT\" now kills a worker process if it runs longer than " "*TIMEOUT* seconds." msgstr "" -#: ../build/NEWS:7772 +#: ../build/NEWS:7807 msgid "" "`bpo-37482 `__: Fix serialization of " "display name in originator or destination address fields with both encoded " "words and special chars." msgstr "" -#: ../build/NEWS:7775 +#: ../build/NEWS:7810 msgid "" "`bpo-36993 `__: Improve error reporting " "for corrupt zip files with bad zip64 extra data. Patch by Daniel Hillier." msgstr "" -#: ../build/NEWS:7778 +#: ../build/NEWS:7813 msgid "" "`bpo-37502 `__: pickle.loads() no longer " "raises TypeError when the buffers argument is set to None" msgstr "" -#: ../build/NEWS:7781 +#: ../build/NEWS:7816 msgid "" "`bpo-37520 `__: Correct behavior for " "zipfile.Path.parent when the path object identifies a subdirectory." msgstr "" -#: ../build/NEWS:7784 +#: ../build/NEWS:7819 msgid "" "`bpo-18374 `__: Fix the ``.col_offset`` " "attribute of nested :class:`ast.BinOp` instances which had a too large value " "in some situations." msgstr "" -#: ../build/NEWS:7787 +#: ../build/NEWS:7822 msgid "" "`bpo-37424 `__: Fixes a possible hang " "when using a timeout on `subprocess.run()` while capturing output. If the " @@ -14993,7 +14947,7 @@ msgid "" "the pipes." msgstr "" -#: ../build/NEWS:7793 +#: ../build/NEWS:7828 msgid "" "`bpo-37421 `__: Fix :func:" "`multiprocessing.util.get_temp_dir` finalizer: clear also the 'tempdir' " @@ -15002,34 +14956,34 @@ msgid "" "temporary directory." msgstr "" -#: ../build/NEWS:7798 +#: ../build/NEWS:7833 msgid "" "`bpo-37481 `__: The distutils " "``bdist_wininst`` command is deprecated in Python 3.8, use ``bdist_wheel`` " "(wheel packages) instead." msgstr "" -#: ../build/NEWS:7801 +#: ../build/NEWS:7836 msgid "" "`bpo-37479 `__: When `Enum.__str__` is " "overridden in a derived class, the override will be used by `Enum." "__format__` regardless of whether mixin classes are present." msgstr "" -#: ../build/NEWS:7805 +#: ../build/NEWS:7840 msgid "" "`bpo-37440 `__: http.client now enables " "TLS 1.3 post-handshake authentication for default context or if a cert_file " "is passed to HTTPSConnection." msgstr "" -#: ../build/NEWS:7808 +#: ../build/NEWS:7843 msgid "" "`bpo-37437 `__: Update vendorized expat " "version to 2.2.7." msgstr "" -#: ../build/NEWS:7810 +#: ../build/NEWS:7845 msgid "" "`bpo-37428 `__: SSLContext." "post_handshake_auth = True no longer sets SSL_VERIFY_POST_HANDSHAKE verify " @@ -15038,14 +14992,14 @@ msgid "" "is set." msgstr "" -#: ../build/NEWS:7815 +#: ../build/NEWS:7850 msgid "" "`bpo-37420 `__: :func:`os." "sched_setaffinity` now correctly handles errors that arise during iteration " "over its ``mask`` argument. Patch by Brandt Bucher." msgstr "" -#: ../build/NEWS:7818 +#: ../build/NEWS:7853 msgid "" "`bpo-37412 `__: The :func:`os.getcwdb` " "function now uses the UTF-8 encoding on Windows, rather than the ANSI code " @@ -15053,20 +15007,20 @@ msgid "" "on Windows." msgstr "" -#: ../build/NEWS:7822 +#: ../build/NEWS:7857 msgid "" "`bpo-37406 `__: The sqlite3 module now " "raises TypeError, rather than ValueError, if operation argument type is not " "str: execute(), executemany() and calling a connection." msgstr "" -#: ../build/NEWS:7826 +#: ../build/NEWS:7861 msgid "" "`bpo-29412 `__: Fix IndexError in " "parsing a header value ending unexpectedly. Patch by Abhilash Raj." msgstr "" -#: ../build/NEWS:7829 +#: ../build/NEWS:7864 msgid "" "`bpo-36546 `__: The *dist* argument for " "statistics.quantiles() is now positional only. The current name doesn't " @@ -15075,20 +15029,20 @@ msgid "" "to change the name later." msgstr "" -#: ../build/NEWS:7834 +#: ../build/NEWS:7869 msgid "" "`bpo-37394 `__: Fix a bug that was " "causing the :mod:`queue` module to fail if the accelerator module was not " "available. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:7837 +#: ../build/NEWS:7872 msgid "" "`bpo-37376 `__: :mod:`pprint` now has " "support for :class:`types.SimpleNamespace`. Patch by Carl Bordum Hansen." msgstr "" -#: ../build/NEWS:7840 +#: ../build/NEWS:7875 msgid "" "`bpo-26967 `__: An :class:`~argparse." "ArgumentParser` with ``allow_abbrev=False`` no longer disables grouping of " @@ -15096,21 +15050,21 @@ msgid "" "as documented. Patch by Zac Hatfield-Dodds." msgstr "" -#: ../build/NEWS:7845 +#: ../build/NEWS:7880 msgid "" "`bpo-37212 `__: :func:`unittest.mock." "call` now preserves the order of keyword arguments in repr output. Patch by " "Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:7848 +#: ../build/NEWS:7883 msgid "" "`bpo-37372 `__: Fix error unpickling " "datetime.time objects from Python 2 with seconds>=24. Patch by Justin " "Blanchard." msgstr "" -#: ../build/NEWS:7851 +#: ../build/NEWS:7886 msgid "" "`bpo-37345 `__: Add formal support for " "UDPLITE sockets. Support was present before, but it is now easier to detect " @@ -15120,13 +15074,13 @@ msgid "" "Appleton." msgstr "" -#: ../build/NEWS:7858 +#: ../build/NEWS:7893 msgid "" "`bpo-37358 `__: Optimized ``functools." "partial`` by using vectorcall." msgstr "" -#: ../build/NEWS:7860 +#: ../build/NEWS:7895 msgid "" "`bpo-37347 `__: :meth:`sqlite3." "Connection.create_aggregate`, :meth:`sqlite3.Connection.create_function`, :" @@ -15137,33 +15091,33 @@ msgid "" "Aleksandr Balezin." msgstr "" -#: ../build/NEWS:7868 +#: ../build/NEWS:7903 msgid "" "`bpo-37163 `__: The *obj* argument of :" "func:`dataclasses.replace` is positional-only now." msgstr "" -#: ../build/NEWS:7871 +#: ../build/NEWS:7906 msgid "" "`bpo-37085 `__: Add the optional Linux " "SocketCAN Broadcast Manager constants, used as flags to configure the BCM " "behaviour, in the socket module. Patch by Karl Ding." msgstr "" -#: ../build/NEWS:7875 +#: ../build/NEWS:7910 msgid "" "`bpo-37328 `__: ``HTMLParser.unescape`` " "is removed. It was undocumented and deprecated since Python 3.4." msgstr "" -#: ../build/NEWS:7878 +#: ../build/NEWS:7913 msgid "" "`bpo-37305 `__: Add .webmanifest -> " "application/manifest+json to list of recognized file types and content type " "headers" msgstr "" -#: ../build/NEWS:7881 +#: ../build/NEWS:7916 msgid "" "`bpo-37320 `__: ``aifc.openfp()`` alias " "to ``aifc.open()``, ``sunau.openfp()`` alias to ``sunau.open()``, and ``wave." @@ -15171,45 +15125,45 @@ msgid "" "since Python 3.7." msgstr "" -#: ../build/NEWS:7885 +#: ../build/NEWS:7920 msgid "" "`bpo-37315 `__: Deprecated accepting " "floats with integral value (like ``5.0``) in :func:`math.factorial`." msgstr "" -#: ../build/NEWS:7888 +#: ../build/NEWS:7923 msgid "" "`bpo-37312 `__: ``_dummy_thread`` and " "``dummy_threading`` modules have been removed. These modules were deprecated " "since Python 3.7 which requires threading support." msgstr "" -#: ../build/NEWS:7892 +#: ../build/NEWS:7927 msgid "" "`bpo-33972 `__: Email with single part " "but content-type set to ``multipart/*`` doesn't raise AttributeError anymore." msgstr "" -#: ../build/NEWS:7895 +#: ../build/NEWS:7930 msgid "" "`bpo-37280 `__: Use threadpool for " "reading from file for sendfile fallback mode." msgstr "" -#: ../build/NEWS:7898 +#: ../build/NEWS:7933 msgid "" "`bpo-37279 `__: Fix asyncio sendfile " "support when sendfile sends extra data in fallback mode." msgstr "" -#: ../build/NEWS:7901 +#: ../build/NEWS:7936 msgid "" "`bpo-19865 `__: :func:`ctypes." "create_unicode_buffer()` now also supports non-BMP characters on platforms " "with 16-bit :c:type:`wchar_t` (for example, Windows and AIX)." msgstr "" -#: ../build/NEWS:7905 +#: ../build/NEWS:7940 msgid "" "`bpo-37266 `__: In a subinterpreter, " "spawning a daemon thread now raises an exception. Daemon threads were never " @@ -15217,14 +15171,14 @@ msgid "" "crashed with a Pyton fatal error if a daemon thread was still running." msgstr "" -#: ../build/NEWS:7910 +#: ../build/NEWS:7945 msgid "" "`bpo-37210 `__: Allow pure Python " "implementation of :mod:`pickle` to work even when the C :mod:`_pickle` " "module is unavailable." msgstr "" -#: ../build/NEWS:7913 +#: ../build/NEWS:7948 msgid "" "`bpo-21872 `__: Fix :mod:`lzma`: module " "decompresses data incompletely. When decompressing a FORMAT_ALONE format " @@ -15232,7 +15186,7 @@ msgid "" "bytes can't be output. Patch by Ma Lin." msgstr "" -#: ../build/NEWS:7918 +#: ../build/NEWS:7953 msgid "" "`bpo-35922 `__: Fix :meth:" "`RobotFileParser.crawl_delay` and :meth:`RobotFileParser.request_rate` to " @@ -15240,27 +15194,27 @@ msgid "" "rule is defined in the robots.txt file. Patch by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:7923 +#: ../build/NEWS:7958 msgid "" "`bpo-35766 `__: Change the format of " "feature_version to be a (major, minor) tuple." msgstr "" -#: ../build/NEWS:7926 +#: ../build/NEWS:7961 msgid "" "`bpo-36607 `__: Eliminate :exc:" "`RuntimeError` raised by :func:`asyncio.all_tasks()` if internal tasks weak " "set is changed by another thread during iteration." msgstr "" -#: ../build/NEWS:7930 +#: ../build/NEWS:7965 msgid "" "`bpo-18748 `__: :class:`_pyio.IOBase` " "destructor now does nothing if getting the ``closed`` attribute fails to " "better mimick :class:`_io.IOBase` finalizer." msgstr "" -#: ../build/NEWS:7934 +#: ../build/NEWS:7969 msgid "" "`bpo-36402 `__: Fix a race condition at " "Python shutdown when waiting for threads. Wait until the Python thread state " @@ -15268,26 +15222,26 @@ msgid "" "than just wait until non-daemon Python threads complete." msgstr "" -#: ../build/NEWS:7939 +#: ../build/NEWS:7974 msgid "" "`bpo-37206 `__: Default values which " "cannot be represented as Python objects no longer improperly represented as " "``None`` in function signatures." msgstr "" -#: ../build/NEWS:7942 +#: ../build/NEWS:7977 msgid "" "`bpo-37111 `__: Added ``encoding`` and " "``errors`` keyword parameters to ``logging.basicConfig``." msgstr "" -#: ../build/NEWS:7945 +#: ../build/NEWS:7980 msgid "" "`bpo-12144 `__: Ensure cookies with " "``expires`` attribute are handled in :meth:`CookieJar.make_cookies`." msgstr "" -#: ../build/NEWS:7948 +#: ../build/NEWS:7983 msgid "" "`bpo-34886 `__: Fix an unintended " "ValueError from :func:`subprocess.run` when checking for conflicting `input` " @@ -15297,102 +15251,102 @@ msgid "" "Lapeyre." msgstr "" -#: ../build/NEWS:7954 +#: ../build/NEWS:7989 msgid "" "`bpo-37173 `__: The exception message " "for ``inspect.getfile()`` now correctly reports the passed class rather than " "the builtins module." msgstr "" -#: ../build/NEWS:7957 +#: ../build/NEWS:7992 msgid "" "`bpo-37178 `__: Give math.perm() a one " "argument form that means the same as math.factorial()." msgstr "" -#: ../build/NEWS:7960 +#: ../build/NEWS:7995 msgid "" "`bpo-37178 `__: For math.perm(n, k), let " "k default to n, giving the same result as factorial." msgstr "" -#: ../build/NEWS:7963 +#: ../build/NEWS:7998 msgid "" "`bpo-37165 `__: Converted _collections." "_count_elements to use the Argument Clinic." msgstr "" -#: ../build/NEWS:7966 +#: ../build/NEWS:8001 msgid "" "`bpo-34767 `__: Do not always create a :" "class:`collections.deque` in :class:`asyncio.Lock`." msgstr "" -#: ../build/NEWS:7969 +#: ../build/NEWS:8004 msgid "" "`bpo-37158 `__: Speed-up statistics." "fmean() by switching from a function to a generator." msgstr "" -#: ../build/NEWS:7972 +#: ../build/NEWS:8007 msgid "" "`bpo-34282 `__: Remove ``Enum._convert`` " "method, deprecated in 3.8." msgstr "" -#: ../build/NEWS:7974 +#: ../build/NEWS:8009 msgid "" "`bpo-37150 `__: `argparse." "_ActionsContainer.add_argument` now throws error, if someone accidentally " "pass FileType class object instead of instance of FileType as `type` argument" msgstr "" -#: ../build/NEWS:7978 +#: ../build/NEWS:8013 msgid "" "`bpo-28724 `__: The socket module now " "has the :func:`socket.send_fds` and :func:`socket.recv.fds` methods. " "Contributed by Joannah Nanjekye, Shinya Okano and Victor Stinner." msgstr "" -#: ../build/NEWS:7982 +#: ../build/NEWS:8017 msgid "" "`bpo-35621 `__: Support running asyncio " "subprocesses when execution event loop in a thread on UNIX." msgstr "" -#: ../build/NEWS:7985 +#: ../build/NEWS:8020 msgid "" "`bpo-36520 `__: Lengthy email headers " "with UTF-8 characters are now properly encoded when they are folded. Patch " "by Jeffrey Kintscher." msgstr "" -#: ../build/NEWS:7988 +#: ../build/NEWS:8023 msgid "" "`bpo-30835 `__: Fixed a bug in email " "parsing where a message with invalid bytes in content-transfer-encoding of a " "multipart message can cause an AttributeError. Patch by Andrew Donnellan." msgstr "" -#: ../build/NEWS:7992 +#: ../build/NEWS:8027 msgid "" "`bpo-31163 `__: pathlib.Path instance's " "rename and replace methods now return the new Path instance." msgstr "" -#: ../build/NEWS:7995 +#: ../build/NEWS:8030 msgid "" "`bpo-25068 `__: :class:`urllib.request." "ProxyHandler` now lowercases the keys of the passed dictionary." msgstr "" -#: ../build/NEWS:7998 +#: ../build/NEWS:8033 msgid "" "`bpo-26185 `__: Fix :func:`repr` on " "empty :class:`ZipInfo` object. Patch by Mickaël Schoentgen." msgstr "" -#: ../build/NEWS:8001 +#: ../build/NEWS:8036 msgid "" "`bpo-21315 `__: Email headers containing " "RFC2047 encoded words are parsed despite the missing whitespace, and a " @@ -15400,58 +15354,58 @@ msgid "" "now registered as a defect." msgstr "" -#: ../build/NEWS:8005 +#: ../build/NEWS:8040 msgid "" "`bpo-31904 `__: Port test_datetime to " "VxWorks: skip zoneinfo tests on VxWorks" msgstr "" -#: ../build/NEWS:8007 +#: ../build/NEWS:8042 msgid "" "`bpo-35805 `__: Add parser for Message-" "ID header and add it to default HeaderRegistry. This should prevent folding " "of Message-ID using RFC 2048 encoded words." msgstr "" -#: ../build/NEWS:8011 +#: ../build/NEWS:8046 msgid "" "`bpo-36871 `__: Ensure method signature " "is used instead of constructor signature of a class while asserting mock " "object against method calls. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:8015 +#: ../build/NEWS:8050 msgid "" "`bpo-35070 `__: posix.getgrouplist() now " "works correctly when the user belongs to NGROUPS_MAX supplemental groups. " "Patch by Jeffrey Kintscher." msgstr "" -#: ../build/NEWS:8018 +#: ../build/NEWS:8053 msgid "" "`bpo-31783 `__: Fix race condition in " "ThreadPoolExecutor when worker threads are created during interpreter " "shutdown." msgstr "" -#: ../build/NEWS:8021 +#: ../build/NEWS:8056 msgid "" "`bpo-36582 `__: Fix ``UserString." "encode()`` to correctly return ``bytes`` rather than a ``UserString`` " "instance." msgstr "" -#: ../build/NEWS:8024 +#: ../build/NEWS:8059 msgid "" "`bpo-32424 `__: Deprecate xml.etree." "ElementTree.Element.copy() in favor of copy.copy()." msgstr "" -#: ../build/NEWS:8027 +#: ../build/NEWS:8062 msgid "Patch by Gordon P. Hemsley" msgstr "" -#: ../build/NEWS:8029 +#: ../build/NEWS:8064 msgid "" "`bpo-36564 `__: Fix infinite loop in " "email header folding logic that would be triggered when an email policy's " @@ -15459,84 +15413,84 @@ msgid "" "values in the message. Patch by Paul Ganssle" msgstr "" -#: ../build/NEWS:8034 +#: ../build/NEWS:8069 msgid "" "`bpo-36543 `__: Removed methods Element." "getchildren(), Element.getiterator() and ElementTree.getiterator() and the " "xml.etree.cElementTree module." msgstr "" -#: ../build/NEWS:8037 +#: ../build/NEWS:8072 msgid "" "`bpo-36409 `__: Remove the old plistlib " "API deprecated in Python 3.4" msgstr "" -#: ../build/NEWS:8039 +#: ../build/NEWS:8074 msgid "" "`bpo-36302 `__: distutils sorts source " "file lists so that Extension .so files build more reproducibly by default" msgstr "" -#: ../build/NEWS:8042 +#: ../build/NEWS:8077 msgid "" "`bpo-36250 `__: Ignore ``ValueError`` " "from ``signal`` with ``interaction`` in non-main thread." msgstr "" -#: ../build/NEWS:8045 +#: ../build/NEWS:8080 msgid "" "`bpo-36046 `__: Added ``user``, " "``group`` and ``extra_groups`` parameters to the subprocess.Popen " "constructor. Patch by Patrick McLean." msgstr "" -#: ../build/NEWS:8048 +#: ../build/NEWS:8083 msgid "" "`bpo-32627 `__: Fix compile error when " "``_uuid`` headers conflicting included." msgstr "" -#: ../build/NEWS:8050 +#: ../build/NEWS:8085 msgid "" "`bpo-35800 `__: Deprecate ``smtpd." "MailmanProxy`` ready for future removal." msgstr "" -#: ../build/NEWS:8052 +#: ../build/NEWS:8087 msgid "" "`bpo-35168 `__: :attr:`shlex.shlex." "punctuation_chars` is now a read-only property." msgstr "" -#: ../build/NEWS:8055 +#: ../build/NEWS:8090 msgid "" "`bpo-8538 `__: Add support for boolean " "actions like ``--foo`` and ``--no-foo`` to argparse. Patch contributed by " "Rémi Lapeyre." msgstr "" -#: ../build/NEWS:8058 +#: ../build/NEWS:8093 msgid "" "`bpo-20504 `__: Fixes a bug in :mod:" "`cgi` module when a multipart/form-data request has no `Content-Length` " "header." msgstr "" -#: ../build/NEWS:8061 +#: ../build/NEWS:8096 msgid "" "`bpo-25988 `__: The abstract base " "classes in :mod:`collections.abc` no longer are exposed in the regular :mod:" "`collections` module." msgstr "" -#: ../build/NEWS:8064 +#: ../build/NEWS:8099 msgid "" "`bpo-11122 `__: Distutils won't check " "for rpmbuild in specified paths only." msgstr "" -#: ../build/NEWS:8066 +#: ../build/NEWS:8101 msgid "" "`bpo-34775 `__: Division handling of " "PurePath now returns NotImplemented instead of raising a TypeError when " @@ -15544,19 +15498,19 @@ msgid "" "Aiudi." msgstr "" -#: ../build/NEWS:8070 +#: ../build/NEWS:8105 msgid "" "`bpo-34749 `__: :func:`binascii." "a2b_base64` is now up to 2 times faster. Patch by Sergey Fedoseev." msgstr "" -#: ../build/NEWS:8073 +#: ../build/NEWS:8108 msgid "" "`bpo-34519 `__: Add additional aliases " "for HP Roman 8. Patch by Michael Osipov." msgstr "" -#: ../build/NEWS:8075 +#: ../build/NEWS:8110 msgid "" "`bpo-28009 `__: Fix uuid.getnode() on " "platforms with '.' as MAC Addr delimiter as well fix for MAC Addr format " @@ -15564,32 +15518,32 @@ msgid "" "platform with these settings. Patch by Michael Felt." msgstr "" -#: ../build/NEWS:8080 +#: ../build/NEWS:8115 msgid "" "`bpo-30618 `__: Add :meth:`~pathlib.Path." "readlink`. Patch by Girts Folkmanis." msgstr "" -#: ../build/NEWS:8082 +#: ../build/NEWS:8117 msgid "" "`bpo-32498 `__: Made :func:`urllib.parse." "unquote()` accept bytes in addition to strings. Patch by Stein Karlsen." msgstr "" -#: ../build/NEWS:8085 +#: ../build/NEWS:8120 msgid "" "`bpo-33348 `__: lib2to3 now recognizes " "expressions after ``*`` and `**` like in ``f(*[] or [])``." msgstr "" -#: ../build/NEWS:8088 +#: ../build/NEWS:8123 msgid "" "`bpo-32689 `__: Update :func:`shutil." "move` function to allow for Path objects to be used as source argument. " "Patch by Emily Morehouse and Maxwell \"5.13b\" McKinnon." msgstr "" -#: ../build/NEWS:8092 +#: ../build/NEWS:8127 msgid "" "`bpo-32820 `__: Added __format__ to IPv4 " "and IPv6 classes. Always outputs a fully zero- padded string. Supports b/x/" @@ -15597,26 +15551,26 @@ msgid "" "format for IPv6 is hex. Also supports '#' and '_' modifiers." msgstr "" -#: ../build/NEWS:8097 +#: ../build/NEWS:8132 msgid "" "`bpo-27657 `__: Fix urllib.parse." "urlparse() with numeric paths. A string like \"path:80\" is no longer parsed " "as a path but as a scheme (\"path\") and a path (\"80\")." msgstr "" -#: ../build/NEWS:8101 +#: ../build/NEWS:8136 msgid "" "`bpo-4963 `__: Fixed non-deterministic " "behavior related to mimetypes extension mapping and module reinitialization." msgstr "" -#: ../build/NEWS:8107 +#: ../build/NEWS:8142 msgid "" "`bpo-21767 `__: Explicitly mention abc " "support in functools.singledispatch" msgstr "" -#: ../build/NEWS:8109 +#: ../build/NEWS:8144 msgid "" "`bpo-38816 `__: Provides more details " "about the interaction between :c:func:`fork` and CPython's runtime, focusing " @@ -15624,63 +15578,63 @@ msgid "" "and shouldn't be called." msgstr "" -#: ../build/NEWS:8114 +#: ../build/NEWS:8149 msgid "" "`bpo-38351 `__: Modernize :mod:`email` " "examples from %-formatting to f-strings." msgstr "" -#: ../build/NEWS:8116 +#: ../build/NEWS:8151 msgid "" "`bpo-38778 `__: Document the fact that :" "exc:`RuntimeError` is raised if :meth:`os.fork` is called in a " "subinterpreter." msgstr "" -#: ../build/NEWS:8119 +#: ../build/NEWS:8154 msgid "" "`bpo-38592 `__: Add Brazilian Portuguese " "to the language switcher at Python Documentation website." msgstr "" -#: ../build/NEWS:8122 +#: ../build/NEWS:8157 msgid "" "`bpo-38294 `__: Add list of no-longer-" "escaped chars to re.escape documentation" msgstr "" -#: ../build/NEWS:8124 +#: ../build/NEWS:8159 msgid "" "`bpo-38053 `__: Modernized the plistlib " "documentation" msgstr "" -#: ../build/NEWS:8126 +#: ../build/NEWS:8161 msgid "" "`bpo-26868 `__: Fix example usage of :c:" "func:`PyModule_AddObject` to properly handle errors." msgstr "" -#: ../build/NEWS:8129 +#: ../build/NEWS:8164 msgid "" "`bpo-36797 `__: Fix a dead link in the " "distutils API Reference." msgstr "" -#: ../build/NEWS:8131 +#: ../build/NEWS:8166 msgid "" "`bpo-37977 `__: Warn more strongly and " "clearly about pickle insecurity" msgstr "" -#: ../build/NEWS:8133 +#: ../build/NEWS:8168 msgid "" "`bpo-37979 `__: Added a link to dateutil." "parser.isoparse in the datetime.fromisoformat documentation. Patch by Paul " "Ganssle" msgstr "" -#: ../build/NEWS:8136 +#: ../build/NEWS:8171 msgid "" "`bpo-12707 `__: Deprecate info(), " "geturl(), getcode() methods in favor of the headers, url, and status " @@ -15689,126 +15643,126 @@ msgid "" "Ashwin Ramaswami" msgstr "" -#: ../build/NEWS:8141 +#: ../build/NEWS:8176 msgid "" "`bpo-37937 `__: Mention ``frame." "f_trace`` in :func:`sys.settrace` docs." msgstr "" -#: ../build/NEWS:8143 +#: ../build/NEWS:8178 msgid "" "`bpo-37878 `__: Make :c:func:" "`PyThreadState_DeleteCurrent` Internal." msgstr "" -#: ../build/NEWS:8145 +#: ../build/NEWS:8180 msgid "" "`bpo-37759 `__: Beginning edits to " "Whatsnew 3.8" msgstr "" -#: ../build/NEWS:8147 +#: ../build/NEWS:8182 msgid "" "`bpo-37726 `__: Stop recommending getopt " "in the tutorial for command line argument parsing and promote argparse." msgstr "" -#: ../build/NEWS:8150 +#: ../build/NEWS:8185 msgid "" "`bpo-32910 `__: Remove implementation-" "specific behaviour of how venv's Deactivate works." msgstr "" -#: ../build/NEWS:8153 +#: ../build/NEWS:8188 msgid "" "`bpo-37256 `__: Fix wording of arguments " "for :class:`Request` in :mod:`urllib.request`" msgstr "" -#: ../build/NEWS:8156 +#: ../build/NEWS:8191 msgid "" "`bpo-37284 `__: Add a brief note to " "indicate that any new ``sys.implementation`` required attributes must go " "through the PEP process." msgstr "" -#: ../build/NEWS:8160 +#: ../build/NEWS:8195 msgid "" "`bpo-30088 `__: Documented that :class:" "`mailbox.Maildir` constructor doesn't attempt to verify the maildir folder " "layout correctness. Patch by Sviatoslav Sydorenko." msgstr "" -#: ../build/NEWS:8164 +#: ../build/NEWS:8199 msgid "" "`bpo-37521 `__: Fix `importlib` examples " "to insert any newly created modules via importlib.util.module_from_spec() " "immediately into sys.modules instead of after calling loader.exec_module()." msgstr "" -#: ../build/NEWS:8168 +#: ../build/NEWS:8203 msgid "Thanks to Benjamin Mintz for finding the bug." msgstr "" -#: ../build/NEWS:8170 +#: ../build/NEWS:8205 msgid "" "`bpo-37456 `__: Slash ('/') is now part " "of syntax." msgstr "" -#: ../build/NEWS:8172 +#: ../build/NEWS:8207 msgid "" "`bpo-37487 `__: Fix PyList_GetItem index " "description to include 0." msgstr "" -#: ../build/NEWS:8174 +#: ../build/NEWS:8209 msgid "" "`bpo-37149 `__: Replace the dead link to " "the Tkinter 8.5 reference by John Shipman, New Mexico Tech, with a link to " "the archive.org copy." msgstr "" -#: ../build/NEWS:8177 +#: ../build/NEWS:8212 msgid "" "`bpo-37478 `__: Added possible " "exceptions to the description of os.chdir()." msgstr "" -#: ../build/NEWS:8179 +#: ../build/NEWS:8214 msgid "" "`bpo-34903 `__: Documented that in :meth:" "`datetime.datetime.strptime()`, the leading zero in some two-digit formats " "is optional. Patch by Mike Gleen." msgstr "" -#: ../build/NEWS:8182 +#: ../build/NEWS:8217 msgid "" "`bpo-36260 `__: Add decompression " "pitfalls to zipfile module documentation." msgstr "" -#: ../build/NEWS:8184 +#: ../build/NEWS:8219 msgid "" "`bpo-37004 `__: In the documentation for " "difflib, a note was added explicitly warning that the results of " "SequenceMatcher's ratio method may depend on the order of the input strings." msgstr "" -#: ../build/NEWS:8188 +#: ../build/NEWS:8223 msgid "" "`bpo-36960 `__: Restructured the :mod:" "`datetime` docs in the interest of making them more user-friendly and " "improving readability. Patch by Brad Solomon." msgstr "" -#: ../build/NEWS:8191 +#: ../build/NEWS:8226 msgid "" "`bpo-36487 `__: Make C-API docs clear " "about what the \"main\" interpreter is." msgstr "" -#: ../build/NEWS:8193 +#: ../build/NEWS:8228 msgid "" "`bpo-23460 `__: The documentation for " "decimal string formatting using the `:g` specifier has been updated to " @@ -15816,39 +15770,39 @@ msgid "" "contributed by Tuomas Suutari." msgstr "" -#: ../build/NEWS:8197 +#: ../build/NEWS:8232 msgid "" "`bpo-35803 `__: Document and test that " "``tempfile`` functions may accept a :term:`path-like object` for the ``dir`` " "argument. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:8201 +#: ../build/NEWS:8236 msgid "" "`bpo-33944 `__: Added a note about the " "intended use of code in .pth files." msgstr "" -#: ../build/NEWS:8203 +#: ../build/NEWS:8238 msgid "" "`bpo-34293 `__: Fix the Doc/Makefile " "regarding PAPER environment variable and PDF builds" msgstr "" -#: ../build/NEWS:8206 +#: ../build/NEWS:8241 msgid "" "`bpo-25237 `__: Add documentation for " "tkinter modules" msgstr "" -#: ../build/NEWS:8211 +#: ../build/NEWS:8246 msgid "" "`bpo-38614 `__: Fix test_communicate() " "of test_asyncio.test_subprocess: use ``support.LONG_TIMEOUT`` (5 minutes), " "instead of just 1 minute." msgstr "" -#: ../build/NEWS:8214 +#: ../build/NEWS:8249 msgid "" "`bpo-38614 `__: Add timeout constants " "to :mod:`test.support`: :data:`~test.support.LOOPBACK_TIMEOUT`, :data:`~test." @@ -15856,7 +15810,7 @@ msgid "" "`~test.support.LONG_TIMEOUT`." msgstr "" -#: ../build/NEWS:8220 +#: ../build/NEWS:8255 msgid "" "`bpo-38502 `__: test.regrtest now uses " "process groups in the multiprocessing mode (-jN command line option) if " @@ -15864,7 +15818,7 @@ msgid "" "functions are available." msgstr "" -#: ../build/NEWS:8224 +#: ../build/NEWS:8259 msgid "" "`bpo-35998 `__: Fix a race condition in " "test_asyncio.test_start_tls_server_1(). Previously, there was a race " @@ -15874,14 +15828,14 @@ msgid "" "longer sends data." msgstr "" -#: ../build/NEWS:8230 +#: ../build/NEWS:8265 msgid "" "`bpo-38470 `__: Fix ``test_compileall." "test_compile_dir_maxlevels()`` on Windows without long path support: only " "create 3 subdirectories instead of between 20 and 100 subdirectories." msgstr "" -#: ../build/NEWS:8234 +#: ../build/NEWS:8269 msgid "" "`bpo-37531 `__: On timeout, regrtest no " "longer attempts to call ``popen.communicate()`` again: it can hang until all " @@ -15890,13 +15844,13 @@ msgid "" "main process from 1 minute to 5 minutes, for Python slowest buildbots." msgstr "" -#: ../build/NEWS:8240 +#: ../build/NEWS:8275 msgid "" "`bpo-38239 `__: Fix test_gdb for Link " "Time Optimization (LTO) builds." msgstr "" -#: ../build/NEWS:8242 +#: ../build/NEWS:8277 msgid "" "`bpo-38275 `__: test_ssl now handles " "disabled TLS/SSL versions better. OpenSSL's crypto policy and run-time " @@ -15905,7 +15859,7 @@ msgid "" "default with strict settings." msgstr "" -#: ../build/NEWS:8247 +#: ../build/NEWS:8282 msgid "" "`bpo-38271 `__: The private keys for " "test_ssl were encrypted with 3DES in traditional PKCS#5 format. 3DES and the " @@ -15913,7 +15867,7 @@ msgid "" "PKCS#8 format with AES256 encryption instead." msgstr "" -#: ../build/NEWS:8252 +#: ../build/NEWS:8287 msgid "" "`bpo-38270 `__: test.support now has a " "helper function to check for availibility of a hash digest function. Several " @@ -15921,7 +15875,7 @@ msgid "" "marked to use MD5 and skipped when MD5 is disabled." msgstr "" -#: ../build/NEWS:8257 +#: ../build/NEWS:8292 msgid "" "`bpo-37123 `__: Multiprocessing test " "test_mymanager() now also expects -SIGTERM, not only exitcode 0. BaseManager." @@ -15929,30 +15883,30 @@ msgid "" "than 1 second to stop, which happens on slow buildbots." msgstr "" -#: ../build/NEWS:8262 +#: ../build/NEWS:8297 msgid "" "`bpo-38212 `__: Multiprocessing tests: " "increase test_queue_feeder_donot_stop_onexc() timeout from 1 to 60 seconds." msgstr "" -#: ../build/NEWS:8265 +#: ../build/NEWS:8300 msgid "" "`bpo-38117 `__: Test with OpenSSL 1.1.1d" msgstr "" -#: ../build/NEWS:8267 +#: ../build/NEWS:8302 msgid "" "`bpo-38018 `__: Increase code coverage " "for multiprocessing.shared_memory." msgstr "" -#: ../build/NEWS:8269 +#: ../build/NEWS:8304 msgid "" "`bpo-37805 `__: Add tests for json." "dump(..., skipkeys=True). Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:8272 +#: ../build/NEWS:8307 msgid "" "`bpo-37531 `__: Enhance regrtest " "multiprocess timeout: write a message when killing a worker process, catch " @@ -15960,46 +15914,46 @@ msgid "" "to popen.communicate()." msgstr "" -#: ../build/NEWS:8276 +#: ../build/NEWS:8311 msgid "" "`bpo-37876 `__: Add tests for ROT-13 " "codec." msgstr "" -#: ../build/NEWS:8278 +#: ../build/NEWS:8313 msgid "" "`bpo-36833 `__: Added tests for " "PyDateTime_xxx_GET_xxx() macros of the C API of the :mod:`datetime` module. " "Patch by Joannah Nanjekye." msgstr "" -#: ../build/NEWS:8281 +#: ../build/NEWS:8316 msgid "" "`bpo-37558 `__: Fix " "test_shared_memory_cleaned_after_process_termination name handling" msgstr "" -#: ../build/NEWS:8284 +#: ../build/NEWS:8319 msgid "" "`bpo-37526 `__: Add :func:`test.support." "catch_threading_exception`: context manager catching :class:`threading." "Thread` exception using :func:`threading.excepthook`." msgstr "" -#: ../build/NEWS:8288 +#: ../build/NEWS:8323 msgid "" "`bpo-37421 `__: test_concurrent_futures " "now explicitly stops the ForkServer instance if it's running." msgstr "" -#: ../build/NEWS:8291 +#: ../build/NEWS:8326 msgid "" "`bpo-37421 `__: multiprocessing tests " "now stop the ForkServer instance if it's running: close the \"alive\" file " "descriptor to ask the server to stop and then remove its UNIX address." msgstr "" -#: ../build/NEWS:8295 +#: ../build/NEWS:8330 msgid "" "`bpo-37421 `__: test_distutils." "test_build_ext() is now able to remove the temporary directory on Windows: " @@ -16007,28 +15961,28 @@ msgid "" "but test it in a separated process." msgstr "" -#: ../build/NEWS:8299 +#: ../build/NEWS:8334 msgid "" "`bpo-37421 `__: test_concurrent_futures " "now cleans up multiprocessing to remove immediately temporary directories " "created by multiprocessing.util.get_temp_dir()." msgstr "" -#: ../build/NEWS:8303 +#: ../build/NEWS:8338 msgid "" "`bpo-37421 `__: test_winconsoleio " "doesn't leak a temporary file anymore: use tempfile.TemporaryFile() to " "remove it when the test completes." msgstr "" -#: ../build/NEWS:8306 +#: ../build/NEWS:8341 msgid "" "`bpo-37421 `__: multiprocessing tests " "now explicitly call ``_run_finalizers()`` to immediately remove temporary " "directories created by tests." msgstr "" -#: ../build/NEWS:8309 +#: ../build/NEWS:8344 msgid "" "`bpo-37421 `__: urllib.request tests now " "call :func:`~urllib.request.urlcleanup` to remove temporary files created by " @@ -16036,58 +15990,58 @@ msgid "" "``urlopen()`` and functions calling indirectly ``urlopen()``." msgstr "" -#: ../build/NEWS:8314 +#: ../build/NEWS:8349 msgid "" "`bpo-37472 `__: Remove ``Lib/test/" "outstanding_bugs.py``." msgstr "" -#: ../build/NEWS:8316 +#: ../build/NEWS:8351 msgid "" "`bpo-37199 `__: Fix test failures when " "IPv6 is unavailable or disabled." msgstr "" -#: ../build/NEWS:8318 +#: ../build/NEWS:8353 msgid "" "`bpo-19696 `__: Replace deprecated " "method \"random.choose\" with \"random.choice\" in \"test_pkg_import.py\"." msgstr "" -#: ../build/NEWS:8321 +#: ../build/NEWS:8356 msgid "" "`bpo-37335 `__: Remove no longer " "necessary code from c locale coercion tests" msgstr "" -#: ../build/NEWS:8323 +#: ../build/NEWS:8358 msgid "" "`bpo-37421 `__: Fix test_shutil to no " "longer leak temporary files." msgstr "" -#: ../build/NEWS:8325 +#: ../build/NEWS:8360 msgid "" "`bpo-37411 `__: Fix test_wsgiref." "testEnviron() to no longer depend on the environment variables (don't fail " "if \"X\" variable is set)." msgstr "" -#: ../build/NEWS:8328 +#: ../build/NEWS:8363 msgid "" "`bpo-37400 `__: Fix test_os." "test_chown(): use os.getgroups() rather than grp.getgrall() to get groups. " "Rename also the test to test_chown_gid()." msgstr "" -#: ../build/NEWS:8331 +#: ../build/NEWS:8366 msgid "" "`bpo-37359 `__: Add --cleanup option to " "python3 -m test to remove ``test_python_*`` directories of previous failed " "jobs. Add \"make cleantest\" to run ``python3 -m test --cleanup``." msgstr "" -#: ../build/NEWS:8335 +#: ../build/NEWS:8370 msgid "" "`bpo-37362 `__: test_gdb no longer fails " "if it gets an \"unexpected\" message on stderr: it now ignores stderr. The " @@ -16095,27 +16049,27 @@ msgid "" "not to test gdb." msgstr "" -#: ../build/NEWS:8339 +#: ../build/NEWS:8374 msgid "" "`bpo-35998 `__: Avoid TimeoutError in " "test_asyncio: test_start_tls_server_1()" msgstr "" -#: ../build/NEWS:8341 +#: ../build/NEWS:8376 msgid "" "`bpo-37278 `__: Fix test_asyncio " "ProactorLoopCtrlC: join the thread to prevent leaking a running thread and " "leaking a reference." msgstr "" -#: ../build/NEWS:8344 +#: ../build/NEWS:8379 msgid "" "`bpo-37261 `__: Fix :func:`test.support." "catch_unraisable_exception`: its __exit__() method now ignores unraisable " "exception raised when clearing its ``unraisable`` attribute." msgstr "" -#: ../build/NEWS:8348 +#: ../build/NEWS:8383 msgid "" "`bpo-37069 `__: regrtest now uses :func:" "`sys.unraisablehook` to mark a test as \"environment altered\" (ENV_CHANGED) " @@ -16123,104 +16077,104 @@ msgid "" "in this case." msgstr "" -#: ../build/NEWS:8352 +#: ../build/NEWS:8387 msgid "" "Use ``python3 -m test --fail-env-changed`` to catch unraisable exceptions in " "tests." msgstr "" -#: ../build/NEWS:8355 +#: ../build/NEWS:8390 msgid "" "`bpo-37252 `__: Fix assertions in " "``test_close`` and ``test_events_mask_overflow`` devpoll tests." msgstr "" -#: ../build/NEWS:8358 +#: ../build/NEWS:8393 msgid "" "`bpo-37169 `__: Rewrite " "``_PyObject_IsFreed()`` unit tests." msgstr "" -#: ../build/NEWS:8360 +#: ../build/NEWS:8395 msgid "" "`bpo-37153 `__: ``test_venv." "test_multiprocessing()`` now explicitly calls ``pool.terminate()`` to wait " "until the pool completes." msgstr "" -#: ../build/NEWS:8363 +#: ../build/NEWS:8398 msgid "" "`bpo-34001 `__: Make test_ssl pass with " "LibreSSL. LibreSSL handles minimum and maximum TLS version differently than " "OpenSSL." msgstr "" -#: ../build/NEWS:8366 +#: ../build/NEWS:8401 msgid "" "`bpo-36919 `__: Make " "``test_source_encoding.test_issue2301`` implementation independent. The test " "will work now for both CPython and IronPython." msgstr "" -#: ../build/NEWS:8369 +#: ../build/NEWS:8404 msgid "" "`bpo-30202 `__: Update ``test." "test_importlib.test_abc`` to test ``find_spec()``." msgstr "" -#: ../build/NEWS:8372 +#: ../build/NEWS:8407 msgid "" "`bpo-28009 `__: Modify the test_uuid " "logic to test when a program is available AND can be used to obtain a " "MACADDR as basis for an UUID. Patch by M. Felt" msgstr "" -#: ../build/NEWS:8375 +#: ../build/NEWS:8410 msgid "" "`bpo-34596 `__: Fallback to a default " "reason when :func:`unittest.skip` is uncalled. Patch by Naitree Zhu." msgstr "" -#: ../build/NEWS:8381 +#: ../build/NEWS:8416 msgid "" "`bpo-38809 `__: On Windows, build " "scripts will now recognize and use python.exe from an active virtual env." msgstr "" -#: ../build/NEWS:8384 +#: ../build/NEWS:8419 msgid "" "`bpo-38684 `__: Fix _hashlib build when " "Blake2 is disabled, but OpenSSL supports it." msgstr "" -#: ../build/NEWS:8387 +#: ../build/NEWS:8422 msgid "" "`bpo-38468 `__: Misc/python-config.in " "now uses `getvar()` for all still existing `sysconfig.get_config_var()` " "calls. Patch by Joannah Nanjekye." msgstr "" -#: ../build/NEWS:8390 +#: ../build/NEWS:8425 msgid "" "`bpo-37415 `__: Fix stdatomic.h header " "check for ICC compiler: the ICC implementation lacks atomic_uintptr_t type " "which is needed by Python." msgstr "" -#: ../build/NEWS:8393 +#: ../build/NEWS:8428 msgid "" "`bpo-38301 `__: In Solaris family, we " "must be sure to use ``-D_REENTRANT``. Patch by Jesús Cea Avión." msgstr "" -#: ../build/NEWS:8396 +#: ../build/NEWS:8431 msgid "" "`bpo-36002 `__: Locate ``llvm-profdata`` " "and ``llvm-ar`` binaries using ``AC_PATH_TOOL`` rather than " "``AC_PATH_TARGET_TOOL``." msgstr "" -#: ../build/NEWS:8399 +#: ../build/NEWS:8434 msgid "" "`bpo-37936 `__: The :file:`.gitignore` " "file systematically keeps \"rooted\", with a non-trailing slash, all the " @@ -16230,7 +16184,7 @@ msgid "" "with the same name anywhere in the tree." msgstr "" -#: ../build/NEWS:8405 +#: ../build/NEWS:8440 msgid "" "`bpo-37760 `__: The :file:`Tools/unicode/" "makeunicodedata.py` script, which is used for converting information from " @@ -16240,14 +16194,14 @@ msgid "" "a length-18 list of different fields." msgstr "" -#: ../build/NEWS:8412 +#: ../build/NEWS:8447 msgid "" "`bpo-37936 `__: The :file:`.gitignore` " "file no longer applies to any files that are in fact tracked in the Git " "repository. Patch by Greg Price." msgstr "" -#: ../build/NEWS:8415 +#: ../build/NEWS:8450 msgid "" "`bpo-37725 `__: Change \"clean\" " "makefile target to also clean the program guided optimization (PGO) data. " @@ -16255,7 +16209,7 @@ msgid "" "\", or \"make clobber\"." msgstr "" -#: ../build/NEWS:8419 +#: ../build/NEWS:8454 msgid "" "`bpo-37707 `__: Mark some individual " "tests to skip when --pgo is used. The tests marked increase the PGO task " @@ -16263,7 +16217,7 @@ msgid "" "executable." msgstr "" -#: ../build/NEWS:8423 +#: ../build/NEWS:8458 msgid "" "`bpo-36044 `__: Reduce the number of " "unit tests run for the PGO generation task. This speeds up the task by a " @@ -16277,14 +16231,14 @@ msgid "" "tool chain." msgstr "" -#: ../build/NEWS:8433 +#: ../build/NEWS:8468 msgid "" "`bpo-37468 `__: ``make install`` no " "longer installs ``wininst-*.exe`` files used by distutils bdist_wininst: " "bdist_wininst only works on Windows." msgstr "" -#: ../build/NEWS:8436 +#: ../build/NEWS:8471 msgid "" "`bpo-37189 `__: Many ``PyRun_XXX()`` " "functions like :c:func:`PyRun_String` were no longer exported in " @@ -16292,13 +16246,13 @@ msgid "" "compatibility." msgstr "" -#: ../build/NEWS:8440 +#: ../build/NEWS:8475 msgid "" "`bpo-25361 `__: Enables use of SSE2 " "instructions in Windows 32-bit build." msgstr "" -#: ../build/NEWS:8442 +#: ../build/NEWS:8477 msgid "" "`bpo-36210 `__: Update optional " "extension module detection for AIX. ossaudiodev and spwd are not applicable " @@ -16308,173 +16262,173 @@ msgid "" "_curses_panel." msgstr "" -#: ../build/NEWS:8448 +#: ../build/NEWS:8483 msgid "patch by M Felt" msgstr "" -#: ../build/NEWS:8453 +#: ../build/NEWS:8488 msgid "" "`bpo-38589 `__: Fixes HTML Help shortcut " "when Windows is not installed to C drive" msgstr "" -#: ../build/NEWS:8456 +#: ../build/NEWS:8491 msgid "" "`bpo-38453 `__: Ensure ntpath.realpath() " "correctly resolves relative paths." msgstr "" -#: ../build/NEWS:8458 +#: ../build/NEWS:8493 msgid "" "`bpo-38519 `__: Restores the internal C " "headers that were missing from the nuget.org and Microsoft Store packages." msgstr "" -#: ../build/NEWS:8461 +#: ../build/NEWS:8496 msgid "" "`bpo-38492 `__: Remove ``pythonw.exe`` " "dependency on the Microsoft C++ runtime." msgstr "" -#: ../build/NEWS:8463 +#: ../build/NEWS:8498 msgid "" "`bpo-38344 `__: Fix error message in " "activate.bat" msgstr "" -#: ../build/NEWS:8465 +#: ../build/NEWS:8500 msgid "" "`bpo-38359 `__: Ensures ``pyw.exe`` " "launcher reads correct registry key." msgstr "" -#: ../build/NEWS:8467 +#: ../build/NEWS:8502 msgid "" "`bpo-38355 `__: Fixes ``ntpath." "realpath`` failing on ``sys.executable``." msgstr "" -#: ../build/NEWS:8469 +#: ../build/NEWS:8504 msgid "" "`bpo-38117 `__: Update bundled OpenSSL " "to 1.1.1d" msgstr "" -#: ../build/NEWS:8471 +#: ../build/NEWS:8506 msgid "" "`bpo-38092 `__: Reduce overhead when " "using multiprocessing in a Windows virtual environment." msgstr "" -#: ../build/NEWS:8474 +#: ../build/NEWS:8509 msgid "" "`bpo-38133 `__: Allow py.exe launcher to " "locate installations from the Microsoft Store and improve display of active " "virtual environments." msgstr "" -#: ../build/NEWS:8477 +#: ../build/NEWS:8512 msgid "" "`bpo-38114 `__: The ``pip.ini`` is no " "longer included in the Nuget package." msgstr "" -#: ../build/NEWS:8479 +#: ../build/NEWS:8514 msgid "" "`bpo-32592 `__: Set Windows 8 as the " "minimum required version for API support" msgstr "" -#: ../build/NEWS:8481 +#: ../build/NEWS:8516 msgid "" "`bpo-36634 `__: :func:`os.cpu_count` now " "returns active processors rather than maximum processors." msgstr "" -#: ../build/NEWS:8484 +#: ../build/NEWS:8519 msgid "" "`bpo-36634 `__: venv activate.bat now " "works when the existing variables contain double quote characters." msgstr "" -#: ../build/NEWS:8487 +#: ../build/NEWS:8522 msgid "" "`bpo-38081 `__: Prevent error calling :" "func:`os.path.realpath` on ``'NUL'``." msgstr "" -#: ../build/NEWS:8489 +#: ../build/NEWS:8524 msgid "" "`bpo-38087 `__: Fix case sensitivity in " "test_pathlib and test_ntpath." msgstr "" -#: ../build/NEWS:8491 +#: ../build/NEWS:8526 msgid "" "`bpo-38088 `__: Fixes distutils not " "finding vcruntime140.dll with only the v142 toolset installed." msgstr "" -#: ../build/NEWS:8494 +#: ../build/NEWS:8529 msgid "" "`bpo-37283 `__: Ensure command-line and " "unattend.xml setting override previously detected states in Windows " "installer." msgstr "" -#: ../build/NEWS:8497 +#: ../build/NEWS:8532 msgid "" "`bpo-38030 `__: Fixes :func:`os.stat` " "failing for block devices on Windows" msgstr "" -#: ../build/NEWS:8499 +#: ../build/NEWS:8534 msgid "" "`bpo-38020 `__: Fixes potential crash " "when calling :func:`os.readlink` (or indirectly through :func:`~os.path." "realpath`) on a file that is not a supported link." msgstr "" -#: ../build/NEWS:8503 +#: ../build/NEWS:8538 msgid "" "`bpo-37705 `__: Improve the " "implementation of ``winerror_to_errno()``." msgstr "" -#: ../build/NEWS:8505 +#: ../build/NEWS:8540 msgid "" "`bpo-37549 `__: :func:`os.dup` no longer " "fails for standard streams on Windows 7." msgstr "" -#: ../build/NEWS:8508 +#: ../build/NEWS:8543 msgid "" "`bpo-1311 `__: The ``nul`` file on " "Windows now returns True from :func:`~os.path.exists` and a valid result " "from :func:`os.stat` with ``S_IFCHR`` set." msgstr "" -#: ../build/NEWS:8512 +#: ../build/NEWS:8547 msgid "" "`bpo-9949 `__: Enable support for " "following symlinks in :func:`os.realpath`." msgstr "" -#: ../build/NEWS:8514 +#: ../build/NEWS:8549 msgid "" "`bpo-37834 `__: Treat all name surrogate " "reparse points on Windows in :func:`os.lstat` and other reparse points as " "regular files in :func:`os.stat`." msgstr "" -#: ../build/NEWS:8518 +#: ../build/NEWS:8553 msgid "" "`bpo-36266 `__: Add the module name in " "the formatted error message when DLL load fail happens during module import " "in ``_PyImport_FindSharedFuncptrWindows()``. Patch by Srinivas Nyayapati." msgstr "" -#: ../build/NEWS:8522 +#: ../build/NEWS:8557 msgid "" "`bpo-25172 `__: Trying to import the :" "mod:`crypt` module on Windows will result in an :exc:`ImportError` with a " @@ -16483,120 +16437,120 @@ msgid "" "ImportError will include a message explaining the problem." msgstr "" -#: ../build/NEWS:8528 +#: ../build/NEWS:8563 msgid "" "`bpo-37778 `__: Fixes the icons used for " "file associations to the Microsoft Store package." msgstr "" -#: ../build/NEWS:8531 +#: ../build/NEWS:8566 msgid "" "`bpo-37734 `__: Fix use of registry " "values to launch Python from Microsoft Store app." msgstr "" -#: ../build/NEWS:8534 +#: ../build/NEWS:8569 msgid "" "`bpo-37702 `__: Fix memory leak on " "Windows in creating an SSLContext object or running urllib.request." "urlopen('https://...')." msgstr "" -#: ../build/NEWS:8537 +#: ../build/NEWS:8572 msgid "" "`bpo-37672 `__: Switch Windows Store " "package's pip to use bundled :file:`pip.ini` instead of :envvar:`PIP_USER` " "variable." msgstr "" -#: ../build/NEWS:8540 +#: ../build/NEWS:8575 msgid "" "`bpo-10945 `__: Officially drop support " "for creating bdist_wininst installers on non-Windows systems." msgstr "" -#: ../build/NEWS:8543 +#: ../build/NEWS:8578 msgid "" "`bpo-37445 `__: Include the " "``FORMAT_MESSAGE_IGNORE_INSERTS`` flag in ``FormatMessageW()`` calls." msgstr "" -#: ../build/NEWS:8546 +#: ../build/NEWS:8581 msgid "" "`bpo-37369 `__: Fixes path for :data:" "`sys.executable` when running from the Microsoft Store." msgstr "" -#: ../build/NEWS:8549 +#: ../build/NEWS:8584 msgid "" "`bpo-37380 `__: Don't collect unfinished " "processes with ``subprocess._active`` on Windows to cleanup later. Patch by " "Ruslan Kuprieiev." msgstr "" -#: ../build/NEWS:8552 +#: ../build/NEWS:8587 msgid "" "`bpo-37351 `__: Removes libpython38.a " "from standard Windows distribution." msgstr "" -#: ../build/NEWS:8554 +#: ../build/NEWS:8589 msgid "" "`bpo-35360 `__: Update Windows builds to " "use SQLite 3.28.0." msgstr "" -#: ../build/NEWS:8556 +#: ../build/NEWS:8591 msgid "" "`bpo-37267 `__: On Windows, :func:`os." "dup` no longer creates an inheritable fd when handling a character file." msgstr "" -#: ../build/NEWS:8559 +#: ../build/NEWS:8594 msgid "" "`bpo-36779 `__: Ensure ``time.tzname`` " "is correct on Windows when the active code page is set to CP_UTF7 or CP_UTF8." msgstr "" -#: ../build/NEWS:8562 +#: ../build/NEWS:8597 msgid "" "`bpo-32587 `__: Make :data:`winreg." "REG_MULTI_SZ` support zero-length strings." msgstr "" -#: ../build/NEWS:8564 +#: ../build/NEWS:8599 msgid "" "`bpo-28269 `__: Replace use of :c:func:" "`strcasecmp` for the system function :c:func:`_stricmp`. Patch by Minmin " "Gong." msgstr "" -#: ../build/NEWS:8567 +#: ../build/NEWS:8602 msgid "" "`bpo-36590 `__: Add native Bluetooth " "RFCOMM support to socket module." msgstr "" -#: ../build/NEWS:8572 +#: ../build/NEWS:8607 msgid "" "`bpo-38117 `__: Updated OpenSSL to " "1.1.1d in macOS installer." msgstr "" -#: ../build/NEWS:8574 +#: ../build/NEWS:8609 msgid "" "`bpo-38089 `__: Move Azure Pipelines to " "latest VM versions and make macOS tests optional" msgstr "" -#: ../build/NEWS:8577 +#: ../build/NEWS:8612 msgid "" "`bpo-18049 `__: Increase the default " "stack size of threads from 5MB to 16MB on macOS, to match the stack size of " "the main thread. This avoids crashes on deep recursion in threads." msgstr "" -#: ../build/NEWS:8581 +#: ../build/NEWS:8616 msgid "" "`bpo-34602 `__: Avoid test suite " "failures on macOS by no longer calling resource.setrlimit to increase the " @@ -16604,38 +16558,38 @@ msgid "" "since the interpreter is being built with a larger default stack size." msgstr "" -#: ../build/NEWS:8586 +#: ../build/NEWS:8621 msgid "" "`bpo-35360 `__: Update macOS installer " "to use SQLite 3.28.0." msgstr "" -#: ../build/NEWS:8588 +#: ../build/NEWS:8623 msgid "" "`bpo-34631 `__: Updated OpenSSL to " "1.1.1c in macOS installer." msgstr "" -#: ../build/NEWS:8593 +#: ../build/NEWS:8628 msgid "" "`bpo-26353 `__: Stop adding newline when " "saving an IDLE shell window." msgstr "" -#: ../build/NEWS:8595 +#: ../build/NEWS:8630 msgid "" "`bpo-4630 `__: Add an option to toggle " "IDLE's cursor blink for shell, editor, and output windows. See Settings, " "General, Window Preferences, Cursor Blink. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:8599 +#: ../build/NEWS:8634 msgid "" "`bpo-38598 `__: Do not try to compile " "IDLE shell or output windows" msgstr "" -#: ../build/NEWS:8601 +#: ../build/NEWS:8636 msgid "" "`bpo-36698 `__: IDLE no longer fails " "when write non-encodable characters to stderr. It now escapes them with a " @@ -16643,7 +16597,7 @@ msgid "" "the standard streams." msgstr "" -#: ../build/NEWS:8605 +#: ../build/NEWS:8640 msgid "" "`bpo-35379 `__: When exiting IDLE, catch " "any AttributeError. One happens when EditorWindow.close is called twice. " @@ -16651,7 +16605,7 @@ msgid "" "annoying." msgstr "" -#: ../build/NEWS:8609 +#: ../build/NEWS:8644 msgid "" "`bpo-38183 `__: To avoid problems, " "test_idle ignores the user config directory. It no longer tries to create or " @@ -16659,14 +16613,14 @@ msgid "" "with saving settings." msgstr "" -#: ../build/NEWS:8613 +#: ../build/NEWS:8648 msgid "" "`bpo-38077 `__: IDLE no longer adds " "'argv' to the user namespace when initializing it. This bug only affected " "3.7.4 and 3.8.0b2 to 3.8.0b4." msgstr "" -#: ../build/NEWS:8616 +#: ../build/NEWS:8651 msgid "" "`bpo-38041 `__: Shell restart lines now " "fill the window width, always start with '=', and avoid wrapping " @@ -16674,109 +16628,109 @@ msgid "" "relative to the width." msgstr "" -#: ../build/NEWS:8620 +#: ../build/NEWS:8655 msgid "" "`bpo-35771 `__: To avoid occasional " "spurious test_idle failures on slower machines, increase the ``hover_delay`` " "in test_tooltip." msgstr "" -#: ../build/NEWS:8623 +#: ../build/NEWS:8658 msgid "" "`bpo-37824 `__: Properly handle user " "input warnings in IDLE shell. Cease turning SyntaxWarnings into SyntaxErrors." msgstr "" -#: ../build/NEWS:8626 +#: ../build/NEWS:8661 msgid "" "`bpo-37929 `__: IDLE Settings dialog now " "closes properly when there is no shell window." msgstr "" -#: ../build/NEWS:8629 +#: ../build/NEWS:8664 msgid "" "`bpo-37902 `__: Add mousewheel scrolling " "for IDLE module, path, and stack browsers. Patch by George Zhang." msgstr "" -#: ../build/NEWS:8632 +#: ../build/NEWS:8667 msgid "" "`bpo-37849 `__: Fixed completions list " "appearing too high or low when shown above the current line." msgstr "" -#: ../build/NEWS:8635 +#: ../build/NEWS:8670 msgid "" "`bpo-36419 `__: Refactor IDLE " "autocomplete and improve testing." msgstr "" -#: ../build/NEWS:8637 +#: ../build/NEWS:8672 msgid "" "`bpo-37748 `__: Reorder the Run menu. " "Put the most common choice, Run Module, at the top." msgstr "" -#: ../build/NEWS:8640 +#: ../build/NEWS:8675 msgid "" "`bpo-37692 `__: Improve highlight config " "sample with example shell interaction and better labels for shell elements." msgstr "" -#: ../build/NEWS:8643 +#: ../build/NEWS:8678 msgid "" "`bpo-37628 `__: Settings dialog no " "longer expands with font size." msgstr "" -#: ../build/NEWS:8645 +#: ../build/NEWS:8680 msgid "" "`bpo-37627 `__: Initialize the Customize " "Run dialog with the command line arguments most recently entered before. " "The user can optionally edit before submitting them." msgstr "" -#: ../build/NEWS:8649 +#: ../build/NEWS:8684 msgid "" "`bpo-33610 `__: Fix code context not " "showing the correct context when first toggled on." msgstr "" -#: ../build/NEWS:8652 +#: ../build/NEWS:8687 msgid "" "`bpo-37530 `__: Optimize code context to " "reduce unneeded background activity. Font and highlight changes now occur " "along with text changes instead of after a random delay." msgstr "" -#: ../build/NEWS:8656 +#: ../build/NEWS:8691 msgid "" "`bpo-27452 `__: Cleanup ``config.py`` by " "inlining ``RemoveFile`` and simplifying the handling of ``file`` in " "``CreateConfigHandlers``." msgstr "" -#: ../build/NEWS:8659 +#: ../build/NEWS:8694 msgid "" "`bpo-37325 `__: Fix tab focus traversal " "order for help source and custom run dialogs." msgstr "" -#: ../build/NEWS:8662 +#: ../build/NEWS:8697 msgid "" "`bpo-37321 `__: Both subprocess " "connection error messages now refer to the 'Startup failure' section of the " "IDLE doc." msgstr "" -#: ../build/NEWS:8665 +#: ../build/NEWS:8700 msgid "" "`bpo-17535 `__: Add optional line " "numbers for IDLE editor windows. Windows open without line numbers unless " "set otherwise in the General tab of the configuration dialog." msgstr "" -#: ../build/NEWS:8669 +#: ../build/NEWS:8704 msgid "" "`bpo-26806 `__: To compensate for stack " "frames added by IDLE and avoid possible problems with low recursion limits, " @@ -16784,14 +16738,14 @@ msgid "" "reporting recursion limits to make this addition mostly transparent." msgstr "" -#: ../build/NEWS:8674 +#: ../build/NEWS:8709 msgid "" "`bpo-37177 `__: Properly 'attach' search " "dialogs to their main window so that they behave like other dialogs and do " "not get hidden behind their main window." msgstr "" -#: ../build/NEWS:8678 +#: ../build/NEWS:8713 msgid "" "`bpo-37039 `__: Adjust \"Zoom Height\" " "to individual screens by momentarily maximizing the window on first use with " @@ -16799,14 +16753,14 @@ msgid "" "height. While a window is maximized, \"Zoom Height\" has no effect." msgstr "" -#: ../build/NEWS:8683 +#: ../build/NEWS:8718 msgid "" "`bpo-35763 `__: Make calltip reminder " "about '/' meaning positional-only less obtrusive by only adding it when " "there is room on the first line." msgstr "" -#: ../build/NEWS:8686 +#: ../build/NEWS:8721 msgid "" "`bpo-5680 `__: Add 'Run... Customized' to " "the Run menu to run a module with customized settings. Any 'command line " @@ -16814,71 +16768,71 @@ msgid "" "main module restart." msgstr "" -#: ../build/NEWS:8690 +#: ../build/NEWS:8725 msgid "" "`bpo-36390 `__: Gather Format menu " "functions into format.py. Combine paragraph.py, rstrip.py, and format " "methods from editor.py." msgstr "" -#: ../build/NEWS:8696 +#: ../build/NEWS:8731 msgid "" "`bpo-38118 `__: Update Valgrind " "suppression file to ignore a false alarm in :c:func:`PyUnicode_Decode` when " "using GCC builtin strcmp()." msgstr "" -#: ../build/NEWS:8699 +#: ../build/NEWS:8734 msgid "" "`bpo-38347 `__: pathfix.py: Assume all " "files that end on '.py' are Python scripts when working recursively." msgstr "" -#: ../build/NEWS:8702 +#: ../build/NEWS:8737 msgid "" "`bpo-37803 `__: pdb's ``--help`` and ``--" "version`` long options now work." msgstr "" -#: ../build/NEWS:8704 +#: ../build/NEWS:8739 msgid "" "`bpo-37942 `__: Improve ArgumentClinic " "converter for floats." msgstr "" -#: ../build/NEWS:8706 +#: ../build/NEWS:8741 msgid "" "`bpo-37704 `__: Remove ``Tools/scripts/" "h2py.py``: use cffi to access a C API in Python." msgstr "" -#: ../build/NEWS:8709 +#: ../build/NEWS:8744 msgid "" "`bpo-37675 `__: 2to3 now works when run " "from a zipped standard library." msgstr "" -#: ../build/NEWS:8711 +#: ../build/NEWS:8746 msgid "" "`bpo-37034 `__: Argument Clinic now uses " "the argument name on errors with keyword-only argument instead of their " "position. Patch contributed by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:8715 +#: ../build/NEWS:8750 msgid "" "`bpo-37064 `__: Add option -k to " "pathscript.py script: preserve shebang flags. Add option -a to pathscript.py " "script: add flags." msgstr "" -#: ../build/NEWS:8721 +#: ../build/NEWS:8756 msgid "" "`bpo-37633 `__: Re-export some function " "compatibility wrappers for macros in ``pythonrun.h``." msgstr "" -#: ../build/NEWS:8724 +#: ../build/NEWS:8759 msgid "" "`bpo-38644 `__: Provide :c:func:" "`Py_EnterRecursiveCall` and :c:func:`Py_LeaveRecursiveCall` as regular " @@ -16888,21 +16842,21 @@ msgid "" "from the stable ABI." msgstr "" -#: ../build/NEWS:8730 +#: ../build/NEWS:8765 msgid "" "`bpo-38650 `__: The global variable :c:" "data:`PyStructSequence_UnnamedField` is now a constant and refers to a " "constant string." msgstr "" -#: ../build/NEWS:8733 +#: ../build/NEWS:8768 msgid "" "`bpo-38540 `__: Fixed possible leak in :" "c:func:`PyArg_Parse` and similar functions for format units ``\"es#\"`` and " "``\"et#\"`` when the macro :c:macro:`PY_SSIZE_T_CLEAN` is not defined." msgstr "" -#: ../build/NEWS:8737 +#: ../build/NEWS:8772 msgid "" "`bpo-38395 `__: Fix a crash in :class:" "`weakref.proxy` objects due to incorrect lifetime management when calling " @@ -16910,7 +16864,7 @@ msgid "" "referenced by the proxy. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:8742 +#: ../build/NEWS:8777 msgid "" "`bpo-36389 `__: The " "``_PyObject_CheckConsistency()`` function is now also available in release " @@ -16918,19 +16872,19 @@ msgid "" "function of the GC." msgstr "" -#: ../build/NEWS:8746 +#: ../build/NEWS:8781 msgid "" "`bpo-38266 `__: Revert the removal of " "PyThreadState_DeleteCurrent() with documentation." msgstr "" -#: ../build/NEWS:8749 +#: ../build/NEWS:8784 msgid "" "`bpo-38303 `__: Update audioop extension " "module to use the stable ABI (PEP-384). Patch by Tyler Kieft." msgstr "" -#: ../build/NEWS:8752 +#: ../build/NEWS:8787 msgid "" "`bpo-38234 `__: :c:func:`Py_SetPath` now " "sets :data:`sys.executable` to the program full path (:c:func:" @@ -16938,26 +16892,26 @@ msgid "" "`Py_GetProgramName`)." msgstr "" -#: ../build/NEWS:8756 +#: ../build/NEWS:8791 msgid "" "`bpo-38234 `__: Python ignored arguments " "passed to :c:func:`Py_SetPath`, :c:func:`Py_SetPythonHome` and :c:func:" "`Py_SetProgramName`: fix Python initialization to use specified arguments." msgstr "" -#: ../build/NEWS:8760 +#: ../build/NEWS:8795 msgid "" "`bpo-38205 `__: The :c:func:" "`Py_UNREACHABLE` macro now calls :c:func:`Py_FatalError`." msgstr "" -#: ../build/NEWS:8763 +#: ../build/NEWS:8798 msgid "" "`bpo-38140 `__: Make dict and weakref " "offsets opaque for C heap types by passing the offsets through PyMemberDef" msgstr "" -#: ../build/NEWS:8766 +#: ../build/NEWS:8801 msgid "" "`bpo-15088 `__: The C function " "``PyGen_NeedsFinalizing`` has been removed. It was not documented, tested or " @@ -16965,33 +16919,33 @@ msgid "" "by Joannah Nanjekye. (Patch by Joannah Nanjekye)" msgstr "" -#: ../build/NEWS:8771 +#: ../build/NEWS:8806 msgid "" "`bpo-36763 `__: Options added by " "``PySys_AddXOption()`` are now handled the same way than ``PyConfig." "xoptions`` and command line ``-X`` options." msgstr "" -#: ../build/NEWS:8774 +#: ../build/NEWS:8809 msgid "" "`bpo-37926 `__: Fix a crash in " "``PySys_SetArgvEx(0, NULL, 0)``." msgstr "" -#: ../build/NEWS:8776 +#: ../build/NEWS:8811 msgid "" "`bpo-37879 `__: Fix subtype_dealloc to " "suppress the type decref when the base type is a C heap type" msgstr "" -#: ../build/NEWS:8779 +#: ../build/NEWS:8814 msgid "" "`bpo-37645 `__: Add :c:func:" "`_PyObject_FunctionStr` to get a user-friendly string representation of a " "function-like object. Patch by Jeroen Demeyer." msgstr "" -#: ../build/NEWS:8782 +#: ../build/NEWS:8817 msgid "" "`bpo-29548 `__: The functions " "``PyEval_CallObject``, ``PyEval_CallFunction``, ``PyEval_CallMethod`` and " @@ -16999,19 +16953,19 @@ msgid "" "`PyObject_Call` and its variants instead." msgstr "" -#: ../build/NEWS:8786 +#: ../build/NEWS:8821 msgid "" "`bpo-37151 `__: ``PyCFunction_Call`` is " "now a deprecated alias of :c:func:`PyObject_Call`." msgstr "" -#: ../build/NEWS:8789 +#: ../build/NEWS:8824 msgid "" "`bpo-37540 `__: The vectorcall protocol " "now requires that the caller passes only strings as keyword names." msgstr "" -#: ../build/NEWS:8792 +#: ../build/NEWS:8827 msgid "" "`bpo-37207 `__: The vectorcall protocol " "is now enabled for ``type`` objects: set ``tp_vectorcall`` to a vectorcall " @@ -17019,38 +16973,38 @@ msgid "" "class itself." msgstr "" -#: ../build/NEWS:8796 +#: ../build/NEWS:8831 msgid "" "`bpo-21120 `__: Exclude Python-ast.h, " "ast.h and asdl.h from the limited API." msgstr "" -#: ../build/NEWS:8798 +#: ../build/NEWS:8833 msgid "" "`bpo-37483 `__: Add new function " "``_PyObject_CallOneArg`` for calling an object with one positional argument." msgstr "" -#: ../build/NEWS:8801 +#: ../build/NEWS:8836 msgid "" "`bpo-36763 `__: Add :func:" "`PyConfig_SetWideStringList` function." msgstr "" -#: ../build/NEWS:8803 +#: ../build/NEWS:8838 msgid "" "`bpo-37337 `__: Add fast functions for " "calling methods: :c:func:`_PyObject_VectorcallMethod`, :c:func:" "`_PyObject_CallMethodNoArgs` and :c:func:`_PyObject_CallMethodOneArg`." msgstr "" -#: ../build/NEWS:8807 +#: ../build/NEWS:8842 msgid "" "`bpo-28805 `__: The :const:" "`METH_FASTCALL` calling convention has been documented." msgstr "" -#: ../build/NEWS:8810 +#: ../build/NEWS:8845 msgid "" "`bpo-37221 `__: The new function :c:func:" "`PyCode_NewWithPosOnlyArgs` allows to create code objects like :c:func:" @@ -17058,13 +17012,13 @@ msgid "" "the number of positonal-only arguments." msgstr "" -#: ../build/NEWS:8815 +#: ../build/NEWS:8850 msgid "" "`bpo-37215 `__: Fix dtrace issue " "introduce by `bpo-36842 `__" msgstr "" -#: ../build/NEWS:8817 +#: ../build/NEWS:8852 msgid "" "`bpo-37194 `__: Add a new public :c:func:" "`PyObject_CallNoArgs` function to the C API: call a callable Python object " @@ -17075,35 +17029,35 @@ msgid "" "bytes per call." msgstr "" -#: ../build/NEWS:8824 +#: ../build/NEWS:8859 msgid "" "`bpo-37170 `__: Fix the cast on error " "in :c:func:`PyLong_AsUnsignedLongLongMask()`." msgstr "" -#: ../build/NEWS:8827 +#: ../build/NEWS:8862 msgid "" "`bpo-35381 `__: Convert posixmodule.c " "statically allocated types ``DirEntryType`` and ``ScandirIteratorType`` to " "heap-allocated types." msgstr "" -#: ../build/NEWS:8830 +#: ../build/NEWS:8865 msgid "" "`bpo-34331 `__: Use singular/plural noun " "in error message when instantiating an abstract class with non-overriden " "abstract method(s)." msgstr "" -#: ../build/NEWS:8835 +#: ../build/NEWS:8870 msgid "Python 3.8.0 beta 1" msgstr "" -#: ../build/NEWS:8837 +#: ../build/NEWS:8872 msgid "*Release date: 2019-06-04*" msgstr "" -#: ../build/NEWS:8842 +#: ../build/NEWS:8877 msgid "" "`bpo-35907 `__: CVE-2019-9948: Avoid " "file reading by disallowing ``local-file://`` and ``local_file://`` URL " @@ -17111,33 +17065,33 @@ msgid "" "`urllib.request`." msgstr "" -#: ../build/NEWS:8847 +#: ../build/NEWS:8882 msgid "" "`bpo-33529 `__: Prevent fold function " "used in email header encoding from entering infinite loop when there are too " "many non-ASCII characters in a header." msgstr "" -#: ../build/NEWS:8851 +#: ../build/NEWS:8886 msgid "" "`bpo-33164 `__: Updated blake2 " "implementation which uses secure memset implementation provided by platform." msgstr "" -#: ../build/NEWS:8857 +#: ../build/NEWS:8892 msgid "" "`bpo-35814 `__: Allow unpacking in the " "right hand side of annotated assignments. In particular, ``t: " "Tuple[int, ...] = x, y, *z`` is now allowed." msgstr "" -#: ../build/NEWS:8861 +#: ../build/NEWS:8896 msgid "" "`bpo-37126 `__: All structseq objects " "are now tracked by the garbage collector. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:8864 +#: ../build/NEWS:8899 msgid "" "`bpo-37122 `__: Make the *co_argcount* " "attribute of code objects represent the total number of positional arguments " @@ -17147,7 +17101,7 @@ msgid "" "positional-or-keyword arguments. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:8871 +#: ../build/NEWS:8906 msgid "" "`bpo-20092 `__: Constructors of :class:" "`int`, :class:`float` and :class:`complex` will now use the :meth:`~object." @@ -17156,26 +17110,26 @@ msgid "" "is not available." msgstr "" -#: ../build/NEWS:8876 +#: ../build/NEWS:8911 msgid "" "`bpo-37087 `__: Add native thread ID " "(TID) support to OpenBSD." msgstr "" -#: ../build/NEWS:8878 +#: ../build/NEWS:8913 msgid "" "`bpo-26219 `__: Implemented per opcode " "cache mechanism and ``LOAD_GLOBAL`` instruction use it. ``LOAD_GLOBAL`` is " "now about 40% faster. Contributed by Yury Selivanov, and Inada Naoki." msgstr "" -#: ../build/NEWS:8882 +#: ../build/NEWS:8917 msgid "" "`bpo-37072 `__: Fix crash in " "PyAST_FromNodeObject() when flags is NULL." msgstr "" -#: ../build/NEWS:8884 +#: ../build/NEWS:8919 msgid "" "`bpo-37029 `__: Freeing a great many " "small objects could take time quadratic in the number of arenas, due to " @@ -17187,14 +17141,14 @@ msgid "" "time needed to release their memory." msgstr "" -#: ../build/NEWS:8893 +#: ../build/NEWS:8928 msgid "" "`bpo-26423 `__: Fix possible overflow in " "``wrap_lenfunc()`` when ``sizeof(long) < sizeof(Py_ssize_t)`` (e.g., 64-bit " "Windows)." msgstr "" -#: ../build/NEWS:8896 +#: ../build/NEWS:8931 msgid "" "`bpo-37050 `__: Improve the AST for " "\"debug\" f-strings, which use '=' to print out the source of the expression " @@ -17203,7 +17157,7 @@ msgid "" "expressions inside the f-string)." msgstr "" -#: ../build/NEWS:8901 +#: ../build/NEWS:8936 msgid "" "`bpo-22385 `__: The `bytes.hex`, " "`bytearray.hex`, and `memoryview.hex` methods as well as the `binascii." @@ -17212,26 +17166,26 @@ msgid "" "MicroPython's hexlify implementation." msgstr "" -#: ../build/NEWS:8906 +#: ../build/NEWS:8941 msgid "" "`bpo-26836 `__: Add :func:`os." "memfd_create`." msgstr "" -#: ../build/NEWS:8908 +#: ../build/NEWS:8943 msgid "" "`bpo-37032 `__: Added new ``replace()`` " "method to the code type (:class:`types.CodeType`)." msgstr "" -#: ../build/NEWS:8911 +#: ../build/NEWS:8946 msgid "" "`bpo-37007 `__: Implement :func:`socket." "if_nameindex()`, :func:`socket.if_nametoindex()`, and :func:`socket." "if_indextoname()` on Windows." msgstr "" -#: ../build/NEWS:8915 +#: ../build/NEWS:8950 msgid "" "`bpo-36829 `__: :c:func:" "`PyErr_WriteUnraisable` now creates a traceback object if there is no " @@ -17240,14 +17194,14 @@ msgid "" "error." msgstr "" -#: ../build/NEWS:8920 +#: ../build/NEWS:8955 msgid "" "`bpo-36878 `__: Only accept text after " "`# type: ignore` if the first character is ASCII. This is to disallow things " "like `# type: ignoreé`." msgstr "" -#: ../build/NEWS:8923 +#: ../build/NEWS:8958 msgid "" "`bpo-36878 `__: Store text appearing " "after a `# type: ignore` comment in the AST. For example a type ignore like " @@ -17255,39 +17209,39 @@ msgid "" "node." msgstr "" -#: ../build/NEWS:8927 +#: ../build/NEWS:8962 msgid "" "`bpo-2180 `__: Treat line continuation at " "EOF as a ``SyntaxError`` by Anthony Sottile." msgstr "" -#: ../build/NEWS:8930 +#: ../build/NEWS:8965 msgid "" "`bpo-36907 `__: Fix a crash when calling " "a C function with a keyword dict (``f(**kwargs)``) and changing the dict " "``kwargs`` while that function is running." msgstr "" -#: ../build/NEWS:8934 +#: ../build/NEWS:8969 msgid "" "`bpo-36946 `__: Fix possible signed " "integer overflow when handling slices." msgstr "" -#: ../build/NEWS:8936 +#: ../build/NEWS:8971 msgid "" "`bpo-36826 `__: Add NamedExpression kind " "support to ast_unparse.c" msgstr "" -#: ../build/NEWS:8938 +#: ../build/NEWS:8973 msgid "" "`bpo-1875 `__: A :exc:`SyntaxError` is " "now raised if a code blocks that will be optimized away (e.g. if conditions " "that are always false) contains syntax errors. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:8942 +#: ../build/NEWS:8977 msgid "" "`bpo-36027 `__: Allow computation of " "modular inverses via three-argument ``pow``: the second argument is now " @@ -17295,27 +17249,27 @@ msgid "" "relatively prime." msgstr "" -#: ../build/NEWS:8946 +#: ../build/NEWS:8981 msgid "" "`bpo-36861 `__: Update the Unicode " "database to version 12.1.0." msgstr "" -#: ../build/NEWS:8948 +#: ../build/NEWS:8983 msgid "" "`bpo-28866 `__: Avoid caching attributes " "of classes which type defines mro() to avoid a hard cache invalidation " "problem." msgstr "" -#: ../build/NEWS:8951 +#: ../build/NEWS:8986 msgid "" "`bpo-36851 `__: The ``FrameType`` stack " "is now correctly cleaned up if the execution ends with a return and the " "stack is not empty." msgstr "" -#: ../build/NEWS:8954 +#: ../build/NEWS:8989 msgid "" "`bpo-34616 `__: The ``compile()`` " "builtin functions now support the ``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` flag, " @@ -17324,26 +17278,26 @@ msgid "" "already async functions; for example in a custom REPL." msgstr "" -#: ../build/NEWS:8960 +#: ../build/NEWS:8995 msgid "" "`bpo-36842 `__: Implement PEP 578, " "adding sys.audit, io.open_code and related APIs." msgstr "" -#: ../build/NEWS:8963 +#: ../build/NEWS:8998 msgid "" "`bpo-27639 `__: Correct return type for " "UserList slicing operations. Patch by Michael Blahay, Erick Cervantes, and " "vaultah" msgstr "" -#: ../build/NEWS:8966 +#: ../build/NEWS:9001 msgid "" "`bpo-36737 `__: Move PyRuntimeState." "warnings into per-interpreter state (via \"module state\")." msgstr "" -#: ../build/NEWS:8969 +#: ../build/NEWS:9004 msgid "" "`bpo-36793 `__: Removed ``__str__`` " "implementations from builtin types :class:`bool`, :class:`int`, :class:" @@ -17351,7 +17305,7 @@ msgid "" "now inherit ``__str__()`` from :class:`object`." msgstr "" -#: ../build/NEWS:8974 +#: ../build/NEWS:9009 msgid "" "`bpo-36817 `__: Add a ``=`` feature f-" "strings for debugging. This can precede ``!s``, ``!r``, or ``!a``. It " @@ -17362,13 +17316,13 @@ msgid "" "the formatting behavior is unchanged, and __format__ will be used." msgstr "" -#: ../build/NEWS:8982 +#: ../build/NEWS:9017 msgid "" "`bpo-24048 `__: Save the live exception " "during import.c's ``remove_module()``." msgstr "" -#: ../build/NEWS:8984 +#: ../build/NEWS:9019 msgid "" "`bpo-27987 `__: pymalloc returns memory " "blocks aligned by 16 bytes, instead of 8 bytes, on 64-bit platforms to " @@ -17376,39 +17330,39 @@ msgid "" "by Inada Naoki." msgstr "" -#: ../build/NEWS:8988 +#: ../build/NEWS:9023 msgid "" "`bpo-36601 `__: A long-since-meaningless " "check for ``getpid() == main_pid`` was removed from Python's internal C " "signal handler." msgstr "" -#: ../build/NEWS:8991 +#: ../build/NEWS:9026 msgid "" "`bpo-36594 `__: Fix incorrect use of ``" "%p`` in format strings. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:8994 +#: ../build/NEWS:9029 msgid "" "`bpo-36045 `__: builtins.help() now " "prefixes `async` for async functions" msgstr "" -#: ../build/NEWS:8996 +#: ../build/NEWS:9031 msgid "" "`bpo-36084 `__: Add native thread ID " "(TID) to threading.Thread objects (supported platforms: Windows, FreeBSD, " "Linux, macOS)" msgstr "" -#: ../build/NEWS:8999 +#: ../build/NEWS:9034 msgid "" "`bpo-36035 `__: Added fix for broken " "symlinks in combination with pathlib" msgstr "" -#: ../build/NEWS:9001 +#: ../build/NEWS:9036 msgid "" "`bpo-35983 `__: Added new trashcan " "macros to deal with a double deallocation that could occur when the " @@ -17416,78 +17370,78 @@ msgid "" "base class uses the trashcan mechanism. Patch by Jeroen Demeyer." msgstr "" -#: ../build/NEWS:9006 +#: ../build/NEWS:9041 msgid "" "`bpo-20602 `__: Do not clear :data:`sys." "flags` and :data:`sys.float_info` during shutdown. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:9009 +#: ../build/NEWS:9044 msgid "" "`bpo-26826 `__: Expose :func:" "`copy_file_range` as a low level API in the :mod:`os` module." msgstr "" -#: ../build/NEWS:9012 +#: ../build/NEWS:9047 msgid "" "`bpo-32388 `__: Remove cross-version " "binary compatibility requirement in tp_flags." msgstr "" -#: ../build/NEWS:9015 +#: ../build/NEWS:9050 msgid "" "`bpo-31862 `__: Port binascii to PEP 489 " "multiphase initialization. Patch by Marcel Plch." msgstr "" -#: ../build/NEWS:9021 +#: ../build/NEWS:9056 msgid "" "`bpo-37128 `__: Added :func:`math.perm`." msgstr "" -#: ../build/NEWS:9023 +#: ../build/NEWS:9058 msgid "" "`bpo-37120 `__: Add SSLContext." "num_tickets to control the number of TLSv1.3 session tickets." msgstr "" -#: ../build/NEWS:9026 +#: ../build/NEWS:9061 msgid "" "`bpo-12202 `__: Fix the error handling " "in :meth:`msilib.SummaryInformation.GetProperty`. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:9029 +#: ../build/NEWS:9064 msgid "" "`bpo-26835 `__: The fcntl module now " "contains file sealing constants for sealing of memfds." msgstr "" -#: ../build/NEWS:9032 +#: ../build/NEWS:9067 msgid "" "`bpo-29262 `__: Add ``get_origin()`` and " "``get_args()`` introspection helpers to ``typing`` module." msgstr "" -#: ../build/NEWS:9035 +#: ../build/NEWS:9070 msgid "" "`bpo-12639 `__: :meth:`msilib.Directory." "start_component()` no longer fails if *keyfile* is not ``None``." msgstr "" -#: ../build/NEWS:9038 +#: ../build/NEWS:9073 msgid "" "`bpo-36999 `__: Add the ``asyncio.Task." "get_coro()`` method to publicly expose the tasks's coroutine object." msgstr "" -#: ../build/NEWS:9041 +#: ../build/NEWS:9076 msgid "" "`bpo-35246 `__: Make :func:`asyncio." "create_subprocess_exec` accept path-like arguments." msgstr "" -#: ../build/NEWS:9044 +#: ../build/NEWS:9079 msgid "" "`bpo-35279 `__: Change default " "*max_workers* of ``ThreadPoolExecutor`` from ``cpu_count() * 5`` to " @@ -17495,7 +17449,7 @@ msgid "" "many cores machines." msgstr "" -#: ../build/NEWS:9048 +#: ../build/NEWS:9083 msgid "" "`bpo-37076 `__: :func:`_thread." "start_new_thread` now logs uncaught exception raised by the function using :" @@ -17503,13 +17457,13 @@ msgid "" "gets access to the function which raised the exception." msgstr "" -#: ../build/NEWS:9053 +#: ../build/NEWS:9088 msgid "" "`bpo-33725 `__: On macOS, the :mod:" "`multiprocessing` module now uses *spawn* start method by default." msgstr "" -#: ../build/NEWS:9056 +#: ../build/NEWS:9091 msgid "" "`bpo-37054 `__: Fix destructor :class:" "`_pyio.BytesIO` and :class:`_pyio.TextIOWrapper`: initialize their " @@ -17517,45 +17471,45 @@ msgid "" "used by ``__del__()`` which calls ``close()``." msgstr "" -#: ../build/NEWS:9061 +#: ../build/NEWS:9096 msgid "" "`bpo-37058 `__: PEP 544: Add " "``Protocol`` and ``@runtime_checkable`` to the ``typing`` module." msgstr "" -#: ../build/NEWS:9064 +#: ../build/NEWS:9099 msgid "" "`bpo-36933 `__: The functions ``sys." "set_coroutine_wrapper`` and ``sys.get_coroutine_wrapper`` that were " "deprecated and marked for removal in 3.8 have been removed." msgstr "" -#: ../build/NEWS:9068 +#: ../build/NEWS:9103 msgid "" "`bpo-37047 `__: Handle late binding and " "attribute access in :class:`unittest.mock.AsyncMock` setup for autospeccing. " "Document newly implemented async methods in :class:`unittest.mock.MagicMock`." msgstr "" -#: ../build/NEWS:9072 +#: ../build/NEWS:9107 msgid "" "`bpo-37049 `__: PEP 589: Add " "``TypedDict`` to the ``typing`` module." msgstr "" -#: ../build/NEWS:9074 +#: ../build/NEWS:9109 msgid "" "`bpo-37046 `__: PEP 586: Add ``Literal`` " "to the ``typing`` module." msgstr "" -#: ../build/NEWS:9076 +#: ../build/NEWS:9111 msgid "" "`bpo-37045 `__: PEP 591: Add ``Final`` " "qualifier and ``@final`` decorator to the ``typing`` module." msgstr "" -#: ../build/NEWS:9079 +#: ../build/NEWS:9114 msgid "" "`bpo-37035 `__: Don't log OSError based " "exceptions if a fatal error has occurred in asyncio transport. Peer can " @@ -17564,44 +17518,44 @@ msgid "" "is pointless and pollute asyncio logs." msgstr "" -#: ../build/NEWS:9085 +#: ../build/NEWS:9120 msgid "" "`bpo-37001 `__: :func:`symtable." "symtable` now accepts the same input types for source code as the built-in :" "func:`compile` function. Patch by Dino Viehland." msgstr "" -#: ../build/NEWS:9089 +#: ../build/NEWS:9124 msgid "" "`bpo-37028 `__: Implement asyncio REPL" msgstr "" -#: ../build/NEWS:9091 +#: ../build/NEWS:9126 msgid "" "`bpo-37027 `__: Return safe to use proxy " "socket object from transport.get_extra_info('socket')" msgstr "" -#: ../build/NEWS:9094 +#: ../build/NEWS:9129 msgid "" "`bpo-32528 `__: Make asyncio." "CancelledError a BaseException." msgstr "" -#: ../build/NEWS:9096 +#: ../build/NEWS:9131 msgid "" "This will address the common mistake many asyncio users make: an \"except " "Exception\" clause breaking Tasks cancellation." msgstr "" -#: ../build/NEWS:9099 +#: ../build/NEWS:9134 msgid "" "In addition to this change, we stop inheriting asyncio.TimeoutError and " "asyncio.InvalidStateError from their concurrent.futures.* counterparts. " "There's no point for these exceptions to share the inheritance chain." msgstr "" -#: ../build/NEWS:9103 +#: ../build/NEWS:9138 msgid "" "`bpo-1230540 `__: Add a new :func:" "`threading.excepthook` function which handles uncaught :meth:`threading." @@ -17609,57 +17563,57 @@ msgid "" "`threading.Thread.run` exceptions are handled." msgstr "" -#: ../build/NEWS:9107 +#: ../build/NEWS:9142 msgid "" "`bpo-36996 `__: Handle :func:`unittest." "mock.patch` used as a decorator on async functions." msgstr "" -#: ../build/NEWS:9110 +#: ../build/NEWS:9145 msgid "" "`bpo-37008 `__: Add support for calling :" "func:`next` with the mock resulting from :func:`unittest.mock.mock_open`" msgstr "" -#: ../build/NEWS:9113 +#: ../build/NEWS:9148 msgid "" "`bpo-27737 `__: Allow whitespace only " "header encoding in ``email.header`` - by Batuhan Taskaya" msgstr "" -#: ../build/NEWS:9116 +#: ../build/NEWS:9151 msgid "" "`bpo-36969 `__: PDB command `args` now " "display positional only arguments. Patch contributed by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:9119 +#: ../build/NEWS:9154 msgid "" "`bpo-36969 `__: PDB command `args` now " "display keyword only arguments. Patch contributed by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:9122 +#: ../build/NEWS:9157 msgid "" "`bpo-36983 `__: Add missing names to " "``typing.__all__``: ``ChainMap``, ``ForwardRef``, ``OrderedDict`` - by " "Anthony Sottile." msgstr "" -#: ../build/NEWS:9125 +#: ../build/NEWS:9160 msgid "" "`bpo-36972 `__: Add SupportsIndex " "protocol to the typing module to allow type checking to detect classes that " "can be passed to `hex()`, `oct()` and `bin()`." msgstr "" -#: ../build/NEWS:9129 +#: ../build/NEWS:9164 msgid "" "`bpo-32972 `__: Implement ``unittest." "IsolatedAsyncioTestCase`` to help testing asyncio-based code." msgstr "" -#: ../build/NEWS:9132 +#: ../build/NEWS:9167 msgid "" "`bpo-36952 `__: :func:`fileinput.input` " "and :class:`fileinput.FileInput` **bufsize** argument has been removed (was " @@ -17667,7 +17621,7 @@ msgid "" "**openhook** arguments have been made keyword-only." msgstr "" -#: ../build/NEWS:9137 +#: ../build/NEWS:9172 msgid "" "`bpo-36952 `__: Starting with Python " "3.3, importing ABCs from :mod:`collections` is deprecated, and import should " @@ -17676,63 +17630,63 @@ msgid "" "documentation and ``DeprecationWarning`` clarified." msgstr "" -#: ../build/NEWS:9143 +#: ../build/NEWS:9178 msgid "" "`bpo-36949 `__: Implement __repr__ for " "WeakSet objects." msgstr "" -#: ../build/NEWS:9145 +#: ../build/NEWS:9180 msgid "" "`bpo-36948 `__: Fix :exc:`NameError` in :" "meth:`urllib.request.URLopener.retrieve`. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:9149 +#: ../build/NEWS:9184 msgid "" "`bpo-33524 `__: Fix the folding of email " "header when the max_line_length is 0 or None and the header contains non-" "ascii characters. Contributed by Licht Takeuchi (@Licht-T)." msgstr "" -#: ../build/NEWS:9153 +#: ../build/NEWS:9188 msgid "" "`bpo-24564 `__: :func:`shutil.copystat` " "now ignores :const:`errno.EINVAL` on :func:`os.setxattr` which may occur " "when copying files on filesystems without extended attributes support." msgstr "" -#: ../build/NEWS:9157 +#: ../build/NEWS:9192 msgid "Original patch by Giampaolo Rodola, updated by Ying Wang." msgstr "" -#: ../build/NEWS:9159 +#: ../build/NEWS:9194 msgid "" "`bpo-36888 `__: Python child processes " "can now access the status of their parent process using multiprocessing." "process.parent_process" msgstr "" -#: ../build/NEWS:9162 +#: ../build/NEWS:9197 msgid "" "`bpo-36921 `__: Deprecate ``@coroutine`` " "for sake of ``async def``." msgstr "" -#: ../build/NEWS:9164 +#: ../build/NEWS:9199 msgid "" "`bpo-25652 `__: Fix bug in ``__rmod__`` " "of ``UserString`` - by Batuhan Taskaya." msgstr "" -#: ../build/NEWS:9166 +#: ../build/NEWS:9201 msgid "" "`bpo-36916 `__: Remove a message about " "an unhandled exception in a task when writer.write() is used without await " "and writer.drain() fails with an exception." msgstr "" -#: ../build/NEWS:9170 +#: ../build/NEWS:9205 msgid "" "`bpo-36889 `__: Introduce :class:" "`asyncio.Stream` class that merges :class:`asyncio.StreamReader` and :class:" @@ -17750,59 +17704,59 @@ msgid "" "outside of asyncio package." msgstr "" -#: ../build/NEWS:9186 +#: ../build/NEWS:9221 msgid "" "`bpo-36845 `__: Added validation of " "integer prefixes to the construction of IP networks and interfaces in the " "ipaddress module." msgstr "" -#: ../build/NEWS:9189 +#: ../build/NEWS:9224 msgid "" "`bpo-23378 `__: Add an extend action to " "argparser." msgstr "" -#: ../build/NEWS:9191 +#: ../build/NEWS:9226 msgid "" "`bpo-36867 `__: Fix a bug making a " "SharedMemoryManager instance and its parent process use two separate " "resource_tracker processes." msgstr "" -#: ../build/NEWS:9194 +#: ../build/NEWS:9229 msgid "" "`bpo-23896 `__: Adds a grammar to " "lib2to3.pygram that contains exec as a function not as statement." msgstr "" -#: ../build/NEWS:9197 +#: ../build/NEWS:9232 msgid "" "`bpo-36895 `__: The function ``time." "clock()`` was deprecated in 3.3 in favor of ``time.perf_counter()`` and " "marked for removal in 3.8, it has removed." msgstr "" -#: ../build/NEWS:9200 +#: ../build/NEWS:9235 msgid "" "`bpo-35545 `__: Fix asyncio discarding " "IPv6 scopes when ensuring hostname resolutions internally" msgstr "" -#: ../build/NEWS:9203 +#: ../build/NEWS:9238 msgid "" "`bpo-36887 `__: Add new function :func:" "`math.isqrt` to compute integer square roots." msgstr "" -#: ../build/NEWS:9206 +#: ../build/NEWS:9241 msgid "" "`bpo-34632 `__: Introduce the " "``importlib.metadata`` module with (provisional) support for reading " "metadata from third-party packages." msgstr "" -#: ../build/NEWS:9209 +#: ../build/NEWS:9244 msgid "" "`bpo-36878 `__: When using " "`type_comments=True` in `ast.parse`, treat `# type: ignore` followed by a " @@ -17811,27 +17765,27 @@ msgid "" "formations such as `# type: ignore[E1000]`." msgstr "" -#: ../build/NEWS:9214 +#: ../build/NEWS:9249 msgid "" "`bpo-36778 `__: ``cp65001`` encoding " "(Windows code page 65001) becomes an alias to ``utf_8`` encoding." msgstr "" -#: ../build/NEWS:9217 +#: ../build/NEWS:9252 msgid "" "`bpo-36867 `__: The multiprocessing." "resource_tracker replaces the multiprocessing.semaphore_tracker module. " "Other than semaphores, resource_tracker also tracks shared_memory segments." msgstr "" -#: ../build/NEWS:9221 +#: ../build/NEWS:9256 msgid "" "`bpo-30262 `__: The ``Cache`` and " "``Statement`` objects of the :mod:`sqlite3` module are not exposed to the " "user. Patch by Aviv Palivoda." msgstr "" -#: ../build/NEWS:9224 +#: ../build/NEWS:9259 msgid "" "`bpo-24538 `__: In `shutil.copystat()`, " "first copy extended file attributes and then file permissions, since " @@ -17839,7 +17793,7 @@ msgid "" "writeable." msgstr "" -#: ../build/NEWS:9228 +#: ../build/NEWS:9263 msgid "" "`bpo-36829 `__: Add new :func:`sys." "unraisablehook` function which can be overridden to control how \"unraisable " @@ -17848,78 +17802,78 @@ msgid "" "raises an exception or during garbage collection (:func:`gc.collect`)." msgstr "" -#: ../build/NEWS:9234 +#: ../build/NEWS:9269 msgid "" "`bpo-36832 `__: Introducing ``zipfile." "Path``, a pathlib-compatible wrapper for traversing zip files." msgstr "" -#: ../build/NEWS:9237 +#: ../build/NEWS:9272 msgid "" "`bpo-36814 `__: Fix an issue where os." "posix_spawnp() would incorrectly raise a TypeError when file_actions is None." msgstr "" -#: ../build/NEWS:9240 +#: ../build/NEWS:9275 msgid "" "`bpo-33110 `__: Handle exceptions raised " "by functions added by concurrent.futures add_done_callback correctly when " "the Future has already completed." msgstr "" -#: ../build/NEWS:9244 +#: ../build/NEWS:9279 msgid "" "`bpo-26903 `__: Limit `max_workers` in " "`ProcessPoolExecutor` to 61 to work around a WaitForMultipleObjects " "limitation." msgstr "" -#: ../build/NEWS:9247 +#: ../build/NEWS:9282 msgid "" "`bpo-36813 `__: Fix :class:`~logging." "handlers.QueueListener` to call ``queue.task_done()`` upon stopping. Patch " "by Bar Harel." msgstr "" -#: ../build/NEWS:9250 +#: ../build/NEWS:9285 msgid "" "`bpo-36806 `__: Forbid creation of " "asyncio stream objects like StreamReader, StreamWriter, Process, and their " "protocols outside of asyncio package." msgstr "" -#: ../build/NEWS:9253 +#: ../build/NEWS:9288 msgid "" "`bpo-36802 `__: Provide both sync and " "async calls for StreamWriter.write() and StreamWriter.close()" msgstr "" -#: ../build/NEWS:9256 +#: ../build/NEWS:9291 msgid "" "`bpo-36801 `__: Properly handle SSL " "connection closing in asyncio StreamWriter.drain() call." msgstr "" -#: ../build/NEWS:9259 +#: ../build/NEWS:9294 msgid "" "`bpo-36785 `__: Implement PEP 574 " "(pickle protocol 5 with out-of-band buffers)." msgstr "" -#: ../build/NEWS:9261 +#: ../build/NEWS:9296 msgid "" "`bpo-36772 `__: functools.lru_cache() " "can now be used as a straight decorator in addition to its existing usage as " "a function that returns a decorator." msgstr "" -#: ../build/NEWS:9264 +#: ../build/NEWS:9299 msgid "" "`bpo-6584 `__: Add a :exc:`~gzip." "BadGzipFile` exception to the :mod:`gzip` module." msgstr "" -#: ../build/NEWS:9267 +#: ../build/NEWS:9302 msgid "" "`bpo-36748 `__: Optimized write " "buffering in C implementation of ``TextIOWrapper``. Writing ASCII string to " @@ -17927,40 +17881,40 @@ msgid "" "faster. Patch by Inada Naoki." msgstr "" -#: ../build/NEWS:9271 +#: ../build/NEWS:9306 msgid "" "`bpo-8138 `__: Don't mark ``wsgiref." "simple_server.SimpleServer`` as multi-threaded since ``wsgiref.simple_server." "WSGIServer`` is single-threaded." msgstr "" -#: ../build/NEWS:9275 +#: ../build/NEWS:9310 msgid "" "`bpo-22640 `__: :func:`py_compile." "compile` now supports silent mode. Patch by Joannah Nanjekye" msgstr "" -#: ../build/NEWS:9278 +#: ../build/NEWS:9313 msgid "" "`bpo-29183 `__: Fix double exceptions " "in :class:`wsgiref.handlers.BaseHandler` by calling its :meth:`~wsgiref." "handlers.BaseHandler.close` method only when no exception is raised." msgstr "" -#: ../build/NEWS:9282 +#: ../build/NEWS:9317 msgid "" "`bpo-36548 `__: Improved the repr of " "regular expression flags." msgstr "" -#: ../build/NEWS:9284 +#: ../build/NEWS:9319 msgid "" "`bpo-36542 `__: The signature of Python " "functions can now be overridden by specifying the ``__text_signature__`` " "attribute." msgstr "" -#: ../build/NEWS:9287 +#: ../build/NEWS:9322 msgid "" "`bpo-36533 `__: Reinitialize logging." "Handler locks in forked child processes instead of attempting to acquire " @@ -17970,86 +17924,86 @@ msgid "" "another as the lock acquisition order cannot be guaranteed." msgstr "" -#: ../build/NEWS:9294 +#: ../build/NEWS:9329 msgid "" "`bpo-35252 `__: Throw a TypeError " "instead of an AssertionError when using an invalid type annotation with " "singledispatch." msgstr "" -#: ../build/NEWS:9297 +#: ../build/NEWS:9332 msgid "" "`bpo-35900 `__: Allow reduction methods " "to return a 6-item tuple where the 6th item specifies a custom state-setting " "method that's called instead of the regular ``__setstate__`` method." msgstr "" -#: ../build/NEWS:9301 +#: ../build/NEWS:9336 msgid "" "`bpo-35900 `__: enable custom reduction " "callback registration for functions and classes in _pickle.c, using the new " "Pickler's attribute ``reducer_override``" msgstr "" -#: ../build/NEWS:9305 +#: ../build/NEWS:9340 msgid "" "`bpo-36368 `__: Fix a bug crashing " "SharedMemoryManager instances in interactive sessions after a ctrl-c " "(KeyboardInterrupt) was sent" msgstr "" -#: ../build/NEWS:9308 +#: ../build/NEWS:9343 msgid "" "`bpo-31904 `__: Fix mmap fail for VxWorks" msgstr "" -#: ../build/NEWS:9310 +#: ../build/NEWS:9345 msgid "" "`bpo-27497 `__: :meth:`csv.DictWriter." "writeheader` now returns the return value of the underlying :meth:`csv." "Writer.writerow` method. Patch contributed by Ashish Nitin Patil." msgstr "" -#: ../build/NEWS:9314 +#: ../build/NEWS:9349 msgid "" "`bpo-36239 `__: Parsing .mo files now " "ignores comments starting and ending with #-#-#-#-#." msgstr "" -#: ../build/NEWS:9317 +#: ../build/NEWS:9352 msgid "" "`bpo-26707 `__: Enable plistlib to read " "and write binary plist files that were created as a KeyedArchive file. " "Specifically, this allows the plistlib to process 0x80 tokens as UID objects." msgstr "" -#: ../build/NEWS:9321 +#: ../build/NEWS:9356 msgid "" "`bpo-31904 `__: Add posix module support " "for VxWorks." msgstr "" -#: ../build/NEWS:9323 +#: ../build/NEWS:9358 msgid "" "`bpo-35125 `__: Asyncio: Remove inner " "callback on outer cancellation in shield" msgstr "" -#: ../build/NEWS:9325 +#: ../build/NEWS:9360 msgid "" "`bpo-35721 `__: Fix :meth:`asyncio." "SelectorEventLoop.subprocess_exec()` leaks file descriptors if ``Popen`` " "fails and called with ``stdin=subprocess.PIPE``. Patch by Niklas Fiekas." msgstr "" -#: ../build/NEWS:9329 +#: ../build/NEWS:9364 msgid "" "`bpo-31855 `__: :func:`unittest.mock." "mock_open` results now respects the argument of read([size]). Patch " "contributed by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:9332 +#: ../build/NEWS:9367 msgid "" "`bpo-35431 `__: Implement :func:`math." "comb` that returns binomial coefficient, that computes the number of ways to " @@ -18057,7 +18011,7 @@ msgid "" "Yash Aggarwal and Keller Fuchs." msgstr "" -#: ../build/NEWS:9336 +#: ../build/NEWS:9371 msgid "" "`bpo-26660 `__: Fixed permission errors " "in :class:`~tempfile.TemporaryDirectory` clean up. Previously " @@ -18065,66 +18019,66 @@ msgid "" "files or directories were created inside a temporary directory." msgstr "" -#: ../build/NEWS:9342 +#: ../build/NEWS:9377 msgid "" "`bpo-34271 `__: Add debugging helpers to " "ssl module. It's now possible to dump key material and to trace TLS " "protocol. The default and stdlib contexts also support SSLKEYLOGFILE env var." msgstr "" -#: ../build/NEWS:9346 +#: ../build/NEWS:9381 msgid "" "`bpo-26467 `__: Added AsyncMock to " "support using unittest to mock asyncio coroutines. Patch by Lisa Roach." msgstr "" -#: ../build/NEWS:9349 +#: ../build/NEWS:9384 msgid "" "`bpo-33569 `__: dataclasses.InitVar: " "Exposes the type used to create the init var." msgstr "" -#: ../build/NEWS:9352 +#: ../build/NEWS:9387 msgid "" "`bpo-34424 `__: Fix serialization of " "messages containing encoded strings when the policy.linesep is set to a " "multi-character string. Patch by Jens Troeger." msgstr "" -#: ../build/NEWS:9356 +#: ../build/NEWS:9391 msgid "" "`bpo-34303 `__: Performance of :func:" "`functools.reduce` is slightly improved. Patch by Sergey Fedoseev." msgstr "" -#: ../build/NEWS:9359 +#: ../build/NEWS:9394 msgid "" "`bpo-33361 `__: Fix a bug in :class:" "`codecs.StreamRecoder` where seeking might leave old data in a buffer and " "break subsequent read calls. Patch by Ammar Askar." msgstr "" -#: ../build/NEWS:9363 +#: ../build/NEWS:9398 msgid "" "`bpo-22454 `__: The :mod:`shlex` module " "now exposes :func:`shlex.join`, the inverse of :func:`shlex.split`. Patch by " "Bo Bayles." msgstr "" -#: ../build/NEWS:9366 +#: ../build/NEWS:9401 msgid "" "`bpo-31922 `__: :meth:`asyncio." "AbstractEventLoop.create_datagram_endpoint`: Do not connect UDP socket when " "broadcast is allowed. This allows to receive replies after a UDP broadcast." msgstr "" -#: ../build/NEWS:9370 +#: ../build/NEWS:9405 msgid "" "`bpo-24882 `__: Change " "ThreadPoolExecutor to use existing idle threads before spinning up new ones." msgstr "" -#: ../build/NEWS:9373 +#: ../build/NEWS:9408 msgid "" "`bpo-31961 `__: Added support for bytes " "and path-like objects in :func:`subprocess.Popen` on Windows. The *args* " @@ -18134,48 +18088,48 @@ msgid "" "parameter now accepts a bytes object. Based on patch by Anders Lorentsen." msgstr "" -#: ../build/NEWS:9380 +#: ../build/NEWS:9415 msgid "" "`bpo-33123 `__: :class:`pathlib.Path." "unlink` now accepts a *missing_ok* parameter to avoid a :exc:" "`FileNotFoundError` from being raised. Patch by Robert Buchholz." msgstr "" -#: ../build/NEWS:9384 +#: ../build/NEWS:9419 msgid "" "`bpo-32941 `__: Allow :class:`mmap.mmap` " "objects to access the madvise() system call (through :meth:`mmap.mmap." "madvise`)." msgstr "" -#: ../build/NEWS:9387 +#: ../build/NEWS:9422 msgid "" "`bpo-22102 `__: Added support for ZIP " "files with disks set to 0. Such files are commonly created by builtin tools " "on Windows when use ZIP64 extension. Patch by Francisco Facioni." msgstr "" -#: ../build/NEWS:9391 +#: ../build/NEWS:9426 msgid "" "`bpo-32515 `__: trace.py can now run " "modules via python3 -m trace -t --module module_name" msgstr "" -#: ../build/NEWS:9394 +#: ../build/NEWS:9429 msgid "" "`bpo-32299 `__: Changed :func:`unittest." "mock.patch.dict` to return the patched dictionary when used as context " "manager. Patch by Vadim Tsander." msgstr "" -#: ../build/NEWS:9397 +#: ../build/NEWS:9432 msgid "" "`bpo-27141 `__: Added a ``__copy__()`` " "to ``collections.UserList`` and ``collections.UserDict`` in order to " "correctly implement shallow copying of the objects. Patch by Bar Harel." msgstr "" -#: ../build/NEWS:9401 +#: ../build/NEWS:9436 msgid "" "`bpo-31829 `__: ``\\r``, ``\\0`` and ``" "\\x1a`` (end-of-file on Windows) are now escaped in protocol 0 pickles of " @@ -18183,20 +18137,20 @@ msgid "" "text mode in Python 2." msgstr "" -#: ../build/NEWS:9405 +#: ../build/NEWS:9440 msgid "" "`bpo-23395 `__: ``_thread." "interrupt_main()`` now avoids setting the Python error status if the " "``SIGINT`` signal is ignored or not handled by Python." msgstr "" -#: ../build/NEWS:9411 +#: ../build/NEWS:9446 msgid "" "`bpo-36896 `__: Clarify that some types " "have unstable constructor signature between Python versions." msgstr "" -#: ../build/NEWS:9414 +#: ../build/NEWS:9449 msgid "" "`bpo-36686 `__: Improve documentation of " "the stdin, stdout, and stderr arguments of the ``asyncio.subprocess_exec`` " @@ -18204,39 +18158,39 @@ msgid "" "as text is not supported." msgstr "" -#: ../build/NEWS:9418 +#: ../build/NEWS:9453 msgid "" "Add a few tests to verify that the various values passed to the std* " "arguments actually work." msgstr "" -#: ../build/NEWS:9421 +#: ../build/NEWS:9456 msgid "" "`bpo-36984 `__: Improve version added " "references in ``typing`` module - by Anthony Sottile." msgstr "" -#: ../build/NEWS:9424 +#: ../build/NEWS:9459 msgid "" "`bpo-36868 `__: What's new now mentions " "SSLContext.hostname_checks_common_name instead of SSLContext.host_flags." msgstr "" -#: ../build/NEWS:9427 +#: ../build/NEWS:9462 msgid "" "`bpo-35924 `__: Add a note to the " "``curses.addstr()`` documentation to warn that multiline strings can cause " "segfaults because of an ncurses bug." msgstr "" -#: ../build/NEWS:9430 +#: ../build/NEWS:9465 msgid "" "`bpo-36783 `__: Added C API " "Documentation for Time_FromTimeAndFold and PyDateTime_FromDateAndTimeAndFold " "as per PEP 495. Patch by Edison Abahurire." msgstr "" -#: ../build/NEWS:9434 +#: ../build/NEWS:9469 msgid "" "`bpo-36797 `__: More of the legacy " "distutils documentation has been either pruned, or else more clearly marked " @@ -18244,43 +18198,43 @@ msgid "" "independently." msgstr "" -#: ../build/NEWS:9438 +#: ../build/NEWS:9473 msgid "" "`bpo-22865 `__: Add detail to the " "documentation on the `pty.spawn` function." msgstr "" -#: ../build/NEWS:9440 +#: ../build/NEWS:9475 msgid "" "`bpo-35397 `__: Remove deprecation and " "document urllib.parse.unwrap(). Patch contributed by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:9443 +#: ../build/NEWS:9478 msgid "" "`bpo-32995 `__: Added the context " "variable in glossary." msgstr "" -#: ../build/NEWS:9445 +#: ../build/NEWS:9480 msgid "" "`bpo-33519 `__: Clarify that `copy()` is " "not part of the `MutableSequence` ABC." msgstr "" -#: ../build/NEWS:9447 +#: ../build/NEWS:9482 msgid "" "`bpo-33482 `__: Make `codecs." "StreamRecoder.writelines` take a list of bytes." msgstr "" -#: ../build/NEWS:9449 +#: ../build/NEWS:9484 msgid "" "`bpo-25735 `__: Added documentation for " "func factorial to indicate that returns integer values" msgstr "" -#: ../build/NEWS:9452 +#: ../build/NEWS:9487 msgid "" "`bpo-20285 `__: Expand object.__doc__ " "(docstring) to make it clearer. Modify pydoc.py so that help(object) lists " @@ -18288,7 +18242,7 @@ msgid "" "class.)" msgstr "" -#: ../build/NEWS:9459 +#: ../build/NEWS:9494 msgid "" "`bpo-37069 `__: Modify test_coroutines, " "test_cprofile, test_generators, test_raise, test_ssl and test_yield_from to " @@ -18296,32 +18250,32 @@ msgid "" "support.captured_stderr`." msgstr "" -#: ../build/NEWS:9464 +#: ../build/NEWS:9499 msgid "" "`bpo-37098 `__: Fix test_memfd_create on " "older Linux Kernels." msgstr "" -#: ../build/NEWS:9466 +#: ../build/NEWS:9501 msgid "" "`bpo-37081 `__: Test with OpenSSL 1.1.1c" msgstr "" -#: ../build/NEWS:9468 +#: ../build/NEWS:9503 msgid "" "`bpo-36829 `__: Add :func:`test.support." "catch_unraisable_exception`: context manager catching unraisable exception " "using :func:`sys.unraisablehook`." msgstr "" -#: ../build/NEWS:9471 +#: ../build/NEWS:9506 msgid "" "`bpo-36915 `__: The main regrtest " "process now always removes all temporary directories of worker processes " "even if they crash or if they are killed on KeyboardInterrupt (CTRL+c)." msgstr "" -#: ../build/NEWS:9475 +#: ../build/NEWS:9510 msgid "" "`bpo-36719 `__: \"python3 -m test -jN ..." "\" now continues the execution of next tests when a worker process crash " @@ -18329,14 +18283,14 @@ msgid "" "failfast to stop at the first error." msgstr "" -#: ../build/NEWS:9479 +#: ../build/NEWS:9514 msgid "" "`bpo-36816 `__: Update Lib/test/" "selfsigned_pythontestdotnet.pem to match self-signed.pythontest.net's new " "TLS certificate." msgstr "" -#: ../build/NEWS:9482 +#: ../build/NEWS:9517 msgid "" "`bpo-35925 `__: Skip httplib and nntplib " "networking tests when they would otherwise fail due to a modern OS or distro " @@ -18344,19 +18298,19 @@ msgid "" "certificates." msgstr "" -#: ../build/NEWS:9486 +#: ../build/NEWS:9521 msgid "" "`bpo-36782 `__: Add tests for several C " "API functions in the :mod:`datetime` module. Patch by Edison Abahurire." msgstr "" -#: ../build/NEWS:9489 +#: ../build/NEWS:9524 msgid "" "`bpo-36342 `__: Fix test_multiprocessing " "in test_venv if platform lacks functioning sem_open." msgstr "" -#: ../build/NEWS:9495 +#: ../build/NEWS:9530 msgid "" "`bpo-36721 `__: To embed Python into an " "application, a new ``--embed`` option must be passed to ``python3-config --" @@ -18366,7 +18320,7 @@ msgid "" "previous command fails." msgstr "" -#: ../build/NEWS:9501 +#: ../build/NEWS:9536 msgid "" "Add a pkg-config ``python-3.8-embed`` module to embed Python into an " "application: ``pkg-config python-3.8-embed --libs`` includes ``-" @@ -18376,7 +18330,7 @@ msgid "" "the Python version)." msgstr "" -#: ../build/NEWS:9508 +#: ../build/NEWS:9543 msgid "" "On the other hand, ``pkg-config python3.8 --libs`` no longer contains ``-" "lpython3.8``. C extensions must not be linked to libpython (except on " @@ -18384,37 +18338,37 @@ msgid "" "on purpose." msgstr "" -#: ../build/NEWS:9513 +#: ../build/NEWS:9548 msgid "" "`bpo-36786 `__: \"make install\" now " "runs compileall in parallel." msgstr "" -#: ../build/NEWS:9518 +#: ../build/NEWS:9553 msgid "" "`bpo-36965 `__: include of " "STATUS_CONTROL_C_EXIT without depending on MSC compiler" msgstr "" -#: ../build/NEWS:9521 +#: ../build/NEWS:9556 msgid "" "`bpo-35926 `__: Update to OpenSSL 1.1.1b " "for Windows." msgstr "" -#: ../build/NEWS:9523 +#: ../build/NEWS:9558 msgid "" "`bpo-29883 `__: Add Windows support for " "UDP transports for the Proactor Event Loop. Patch by Adam Meily." msgstr "" -#: ../build/NEWS:9526 +#: ../build/NEWS:9561 msgid "" "`bpo-33407 `__: The :c:macro:" "`Py_DEPRECATED()` macro has been implemented for MSVC." msgstr "" -#: ../build/NEWS:9532 +#: ../build/NEWS:9567 msgid "" "`bpo-36231 `__: Support building Python " "on macOS without /usr/include installed. As of macOS 10.14, system header " @@ -18422,58 +18376,58 @@ msgid "" "Tools or the Xcode app." msgstr "" -#: ../build/NEWS:9539 +#: ../build/NEWS:9574 msgid "" "`bpo-35610 `__: Replace now redundant ." "context_use_ps1 with .prompt_last_line. This finishes change started in " "`bpo-31858 `__." msgstr "" -#: ../build/NEWS:9542 +#: ../build/NEWS:9577 msgid "" "`bpo-37038 `__: Make idlelib.run " "runnable; add test clause." msgstr "" -#: ../build/NEWS:9544 +#: ../build/NEWS:9579 msgid "" "`bpo-36958 `__: Print any argument other " "than None or int passed to SystemExit or sys.exit()." msgstr "" -#: ../build/NEWS:9547 +#: ../build/NEWS:9582 msgid "" "`bpo-36807 `__: When saving a file, call " "os.fsync() so bits are flushed to e.g. USB drive." msgstr "" -#: ../build/NEWS:9550 +#: ../build/NEWS:9585 msgid "" "`bpo-32411 `__: In browser.py, remove " "extraneous sorting by line number since dictionary was created in line " "number order." msgstr "" -#: ../build/NEWS:9556 +#: ../build/NEWS:9591 msgid "" "`bpo-37053 `__: Handle strings like u" "\"bar\" correctly in Tools/parser/unparse.py. Patch by Chih-Hsuan Yen." msgstr "" -#: ../build/NEWS:9562 +#: ../build/NEWS:9597 msgid "" "`bpo-36763 `__: Implement the :pep:`587` " "\"Python Initialization Configuration\"." msgstr "" -#: ../build/NEWS:9564 +#: ../build/NEWS:9599 msgid "" "`bpo-36379 `__: Fix crashes when " "attempting to use the *modulo* parameter when ``__ipow__`` is implemented in " "C." msgstr "" -#: ../build/NEWS:9567 +#: ../build/NEWS:9602 msgid "" "`bpo-37107 `__: Update :c:func:" "`PyObject_CallMethodObjArgs` and ``_PyObject_CallMethodIdObjArgs`` to use " @@ -18481,21 +18435,21 @@ msgid "" "cases. Patch by Michael J. Sullivan." msgstr "" -#: ../build/NEWS:9572 +#: ../build/NEWS:9607 msgid "" "`bpo-36974 `__: Implement :pep:`590`: " "Vectorcall: a fast calling protocol for CPython. This is a new protocol to " "optimize calls of custom callable objects." msgstr "" -#: ../build/NEWS:9576 +#: ../build/NEWS:9611 msgid "" "`bpo-36763 `__: ``Py_Main()`` now " "returns the exitcode rather than calling ``Py_Exit(exitcode)`` when calling " "``PyErr_Print()`` if the current exception type is ``SystemExit``." msgstr "" -#: ../build/NEWS:9580 +#: ../build/NEWS:9615 msgid "" "`bpo-36922 `__: Add new type flag " "``Py_TPFLAGS_METHOD_DESCRIPTOR`` for objects behaving like unbound methods. " @@ -18503,28 +18457,28 @@ msgid "" "``CALL_METHOD`` opcodes. See PEP 590." msgstr "" -#: ../build/NEWS:9585 +#: ../build/NEWS:9620 msgid "" "`bpo-36728 `__: The :c:func:" "`PyEval_ReInitThreads` function has been removed from the C API. It should " "not be called explicitly: use :c:func:`PyOS_AfterFork_Child` instead." msgstr "" -#: ../build/NEWS:9591 +#: ../build/NEWS:9626 msgid "Python 3.8.0 alpha 4" msgstr "" -#: ../build/NEWS:9593 +#: ../build/NEWS:9628 msgid "*Release date: 2019-05-06*" msgstr "" -#: ../build/NEWS:9598 +#: ../build/NEWS:9633 msgid "" "`bpo-36742 `__: Fixes mishandling of pre-" "normalization characters in urlsplit()." msgstr "" -#: ../build/NEWS:9601 +#: ../build/NEWS:9636 msgid "" "`bpo-30458 `__: Address CVE-2019-9740 by " "disallowing URL paths with embedded whitespace or control characters through " @@ -18532,7 +18486,7 @@ msgid "" "injection URLs now cause an http.client.InvalidURL exception to be raised." msgstr "" -#: ../build/NEWS:9606 +#: ../build/NEWS:9641 msgid "" "`bpo-35755 `__: :func:`shutil.which` now " "uses ``os.confstr(\"CS_PATH\")`` if available and if the :envvar:`PATH` " @@ -18542,34 +18496,34 @@ msgid "" "if the :envvar:`PATH` environment variable is not set." msgstr "" -#: ../build/NEWS:9616 +#: ../build/NEWS:9651 msgid "" "`bpo-36722 `__: In debug build, import " "now also looks for C extensions compiled in release mode and for C " "extensions compiled in the stable ABI." msgstr "" -#: ../build/NEWS:9619 +#: ../build/NEWS:9654 msgid "" "`bpo-32849 `__: Fix Python " "Initialization code on FreeBSD to detect properly when stdin file descriptor " "(fd 0) is invalid." msgstr "" -#: ../build/NEWS:9622 +#: ../build/NEWS:9657 msgid "" "`bpo-36623 `__: Remove parser headers " "and related function declarations that lack implementations after the " "removal of pgen." msgstr "" -#: ../build/NEWS:9625 +#: ../build/NEWS:9660 msgid "" "`bpo-20180 `__: ``dict.pop()`` is now up " "to 33% faster thanks to Argument Clinic. Patch by Inada Naoki." msgstr "" -#: ../build/NEWS:9628 +#: ../build/NEWS:9663 msgid "" "`bpo-36611 `__: Debug memory allocators: " "disable serialno field by default from debug hooks on Python memory " @@ -18579,7 +18533,7 @@ msgid "" "with ``PYMEM_DEBUG_SERIALNO`` defined to get back the field." msgstr "" -#: ../build/NEWS:9635 +#: ../build/NEWS:9670 msgid "" "`bpo-36588 `__: On AIX, :attr:`sys." "platform` doesn't contain the major version anymore. Always return " @@ -18588,19 +18542,19 @@ msgid "" "startswith('aix')``. Contributed by M. Felt." msgstr "" -#: ../build/NEWS:9640 +#: ../build/NEWS:9675 msgid "" "`bpo-36549 `__: Change str.capitalize to " "use titlecase for the first character instead of uppercase." msgstr "" -#: ../build/NEWS:9643 +#: ../build/NEWS:9678 msgid "" "`bpo-36540 `__: Implement :pep:`570` " "(Python positional-only parameters). Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:9646 +#: ../build/NEWS:9681 msgid "" "`bpo-36475 `__: :c:func:" "`PyEval_AcquireLock` and :c:func:`PyEval_AcquireThread` now terminate the " @@ -18609,25 +18563,25 @@ msgid "" "`Py_END_ALLOW_THREADS`, and :c:func:`PyGILState_Ensure`." msgstr "" -#: ../build/NEWS:9651 +#: ../build/NEWS:9686 msgid "" "`bpo-36504 `__: Fix signed integer " "overflow in _ctypes.c's ``PyCArrayType_new()``." msgstr "" -#: ../build/NEWS:9654 +#: ../build/NEWS:9689 msgid "" "`bpo-20844 `__: Fix running script with " "encoding cookie and LF line ending may fail on Windows." msgstr "" -#: ../build/NEWS:9657 +#: ../build/NEWS:9692 msgid "" "`bpo-24214 `__: Fixed support of the " "surrogatepass error handler in the UTF-8 incremental decoder." msgstr "" -#: ../build/NEWS:9660 +#: ../build/NEWS:9695 msgid "" "`bpo-36452 `__: Changing ``dict`` keys " "during iteration of the dict itself, ``keys()``, ``values()``, or " @@ -18636,51 +18590,51 @@ msgid "" "will be raised after ``len(dict)`` iterations. Contributed by Thomas Perl." msgstr "" -#: ../build/NEWS:9666 +#: ../build/NEWS:9701 msgid "" "`bpo-36459 `__: Fix a possible double " "``PyMem_FREE()`` due to tokenizer.c's ``tok_nextc()``." msgstr "" -#: ../build/NEWS:9669 +#: ../build/NEWS:9704 msgid "" "`bpo-36433 `__: Fixed TypeError message " "in classmethoddescr_call." msgstr "" -#: ../build/NEWS:9671 +#: ../build/NEWS:9706 msgid "" "`bpo-36430 `__: Fix a possible reference " "leak in :func:`itertools.count`." msgstr "" -#: ../build/NEWS:9673 +#: ../build/NEWS:9708 msgid "" "`bpo-36440 `__: Include node names in " "``ParserError`` messages, instead of numeric IDs. Patch by A. Skrobov." msgstr "" -#: ../build/NEWS:9676 +#: ../build/NEWS:9711 msgid "" "`bpo-36143 `__: Regenerate :mod:" "`keyword` from the Grammar and Tokens file using pgen. Patch by Pablo " "Galindo." msgstr "" -#: ../build/NEWS:9679 +#: ../build/NEWS:9714 msgid "" "`bpo-18372 `__: Add missing :c:func:" "`PyObject_GC_Track` calls in the :mod:`pickle` module. Patch by Zackery " "Spytz." msgstr "" -#: ../build/NEWS:9685 +#: ../build/NEWS:9720 msgid "" "`bpo-35952 `__: Fix pythoninfo when the " "compiler is missing." msgstr "" -#: ../build/NEWS:9687 +#: ../build/NEWS:9722 msgid "" "`bpo-28238 `__: The ``.find*()`` methods " "of xml.etree.ElementTree can now search for wildcards like ``{*}tag`` and " @@ -18688,13 +18642,13 @@ msgid "" "Patch by Stefan Behnel." msgstr "" -#: ../build/NEWS:9691 +#: ../build/NEWS:9726 msgid "" "`bpo-26978 `__: `pathlib.path.link_to()` " "is now implemented. It creates a hard link pointing to a path." msgstr "" -#: ../build/NEWS:9694 +#: ../build/NEWS:9729 msgid "" "`bpo-1613500 `__: :class:`fileinput." "FileInput` now uses the input file mode to correctly set the output file " @@ -18702,27 +18656,27 @@ msgid "" "passed to its constructor." msgstr "" -#: ../build/NEWS:9698 +#: ../build/NEWS:9733 msgid "" "`bpo-36734 `__: Fix compilation of " "``faulthandler.c`` on HP-UX. Initialize ``stack_t current_stack`` to zero " "using ``memset()``." msgstr "" -#: ../build/NEWS:9701 +#: ../build/NEWS:9736 msgid "" "`bpo-13611 `__: The xml.etree." "ElementTree packages gained support for C14N 2.0 serialisation. Patch by " "Stefan Behnel." msgstr "" -#: ../build/NEWS:9704 +#: ../build/NEWS:9739 msgid "" "`bpo-36669 `__: Add missing matrix " "multiplication operator support to weakref.proxy." msgstr "" -#: ../build/NEWS:9707 +#: ../build/NEWS:9742 msgid "" "`bpo-36676 `__: The XMLParser() in xml." "etree.ElementTree provides namespace prefix context to the parser target if " @@ -18730,14 +18684,14 @@ msgid "" "Stefan Behnel." msgstr "" -#: ../build/NEWS:9711 +#: ../build/NEWS:9746 msgid "" "`bpo-36673 `__: The TreeBuilder and " "XMLPullParser in xml.etree.ElementTree gained support for parsing comments " "and processing instructions. Patch by Stefan Behnel." msgstr "" -#: ../build/NEWS:9715 +#: ../build/NEWS:9750 msgid "" "`bpo-36650 `__: The C version of " "functools.lru_cache() was treating calls with an empty ``**kwargs`` " @@ -18746,7 +18700,7 @@ msgid "" "miss." msgstr "" -#: ../build/NEWS:9720 +#: ../build/NEWS:9755 msgid "" "`bpo-28552 `__: Fix :mod:`distutils." "sysconfig` if :data:`sys.executable` is ``None`` or an empty string: use :" @@ -18755,7 +18709,7 @@ msgid "" "empty string." msgstr "" -#: ../build/NEWS:9725 +#: ../build/NEWS:9760 msgid "" "`bpo-35755 `__: :func:`shutil.which` " "and :func:`distutils.spawn.find_executable` now use ``os.confstr(\"CS_PATH" @@ -18765,13 +18719,13 @@ msgid "" "an empty string." msgstr "" -#: ../build/NEWS:9732 +#: ../build/NEWS:9767 msgid "" "`bpo-25430 `__: improve performance of " "``IPNetwork.__contains__()``" msgstr "" -#: ../build/NEWS:9734 +#: ../build/NEWS:9769 msgid "" "`bpo-30485 `__: Path expressions in xml." "etree.ElementTree can now avoid explicit namespace prefixes for tags (or the " @@ -18779,20 +18733,20 @@ msgid "" "string prefix." msgstr "" -#: ../build/NEWS:9738 +#: ../build/NEWS:9773 msgid "" "`bpo-36613 `__: Fix :mod:`asyncio` " "wait() not removing callback if exception" msgstr "" -#: ../build/NEWS:9740 +#: ../build/NEWS:9775 msgid "" "`bpo-36598 `__: Fix ``isinstance`` check " "for Mock objects with spec when the code is executed under tracing. Patch by " "Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:9743 +#: ../build/NEWS:9778 msgid "" "`bpo-18748 `__: In development mode (:" "option:`-X` ``dev``) and in debug build, the :class:`io.IOBase` destructor " @@ -18800,7 +18754,7 @@ msgid "" "release mode." msgstr "" -#: ../build/NEWS:9747 +#: ../build/NEWS:9782 msgid "" "`bpo-36575 `__: The ``_lsprof`` module " "now uses internal timer same to ``time.perf_counter()`` by default. " @@ -18809,59 +18763,59 @@ msgid "" "updates since ``perf_counter()`` is monotonic. Patch by Inada Naoki." msgstr "" -#: ../build/NEWS:9753 +#: ../build/NEWS:9788 msgid "" "`bpo-33461 `__: ``json.loads`` now emits " "``DeprecationWarning`` when ``encoding`` option is specified. Patch by " "Matthias Bussonnier." msgstr "" -#: ../build/NEWS:9756 +#: ../build/NEWS:9791 msgid "" "`bpo-36559 `__: The random module now " "prefers the lean internal _sha512 module over hashlib for seed(version=2) to " "optimize import time." msgstr "" -#: ../build/NEWS:9759 +#: ../build/NEWS:9794 msgid "" "`bpo-17561 `__: Set backlog=None as the " "default for socket.create_server." msgstr "" -#: ../build/NEWS:9761 +#: ../build/NEWS:9796 msgid "" "`bpo-34373 `__: Fix :func:`time.mktime` " "error handling on AIX for year before 1970." msgstr "" -#: ../build/NEWS:9764 +#: ../build/NEWS:9799 msgid "" "`bpo-36232 `__: Improve error message " "when trying to open existing DBM database that actually doesn't exist. Patch " "by Marco Rougeth." msgstr "" -#: ../build/NEWS:9767 +#: ../build/NEWS:9802 msgid "" "`bpo-36546 `__: Add statistics." "quantiles()" msgstr "" -#: ../build/NEWS:9769 +#: ../build/NEWS:9804 msgid "" "`bpo-36050 `__: Optimized ``http.client." "HTTPResponse.read()`` for large response. Patch by Inada Naoki." msgstr "" -#: ../build/NEWS:9772 +#: ../build/NEWS:9807 msgid "" "`bpo-36522 `__: If *debuglevel* is set " "to >0 in :mod:`http.client`, print all values for headers with multiple " "values for the same header name. Patch by Matt Houglum." msgstr "" -#: ../build/NEWS:9776 +#: ../build/NEWS:9811 msgid "" "`bpo-36492 `__: Deprecated passing " "required arguments like *func* as keyword arguments in functions which " @@ -18871,13 +18825,13 @@ msgid "" "positional arguments." msgstr "" -#: ../build/NEWS:9782 +#: ../build/NEWS:9817 msgid "" "`bpo-27181 `__: Add statistics." "geometric_mean()." msgstr "" -#: ../build/NEWS:9784 +#: ../build/NEWS:9819 msgid "" "`bpo-30427 `__: ``os.path.normcase()`` " "relies on ``os.fspath()`` to check the type of its argument. Redundant " @@ -18885,7 +18839,7 @@ msgid "" "normcase()`` implementations. Patch by Wolfgang Maier." msgstr "" -#: ../build/NEWS:9789 +#: ../build/NEWS:9824 msgid "" "`bpo-36385 `__: Stop rejecting IPv4 " "octets for being ambiguously octal. Leading zeros are ignored, and no longer " @@ -18893,25 +18847,25 @@ msgid "" "Octets must still be no more than three digits, including leading zeroes." msgstr "" -#: ../build/NEWS:9794 +#: ../build/NEWS:9829 msgid "" "`bpo-36434 `__: Errors during writing to " "a ZIP file no longer prevent to properly close it." msgstr "" -#: ../build/NEWS:9797 +#: ../build/NEWS:9832 msgid "" "`bpo-36407 `__: Fixed wrong indentation " "writing for CDATA section in xml.dom.minidom. Patch by Vladimir Surjaninov." msgstr "" -#: ../build/NEWS:9800 +#: ../build/NEWS:9835 msgid "" "`bpo-36326 `__: inspect.getdoc() can now " "find docstrings for member objects when __slots__ is a dictionary." msgstr "" -#: ../build/NEWS:9803 +#: ../build/NEWS:9838 msgid "" "`bpo-36366 `__: Calling ``stop()`` on an " "unstarted or stopped :func:`unittest.mock.patch` object will now return " @@ -18919,26 +18873,26 @@ msgid "" "Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:9808 +#: ../build/NEWS:9843 msgid "" "`bpo-36348 `__: The :meth:`imap.IMAP4." "logout` method no longer ignores silently arbitrary exceptions." msgstr "" -#: ../build/NEWS:9811 +#: ../build/NEWS:9846 msgid "" "`bpo-31904 `__: Add time module support " "and fix test_time faiures for VxWorks." msgstr "" -#: ../build/NEWS:9813 +#: ../build/NEWS:9848 msgid "" "`bpo-36227 `__: Added support for " "keyword arguments `default_namespace` and `xml_declaration` in functions " "ElementTree.tostring() and ElementTree.tostringlist()." msgstr "" -#: ../build/NEWS:9817 +#: ../build/NEWS:9852 msgid "" "`bpo-36004 `__: Added new alternate " "constructors :meth:`datetime.date.fromisocalendar` and :meth:`datetime." @@ -18947,7 +18901,7 @@ msgid "" "method. Patch by Paul Ganssle." msgstr "" -#: ../build/NEWS:9823 +#: ../build/NEWS:9858 msgid "" "`bpo-35936 `__: :mod:`modulefinder` no " "longer depends on the deprecated :mod:`imp` module, and the initializer for :" @@ -18955,21 +18909,21 @@ msgid "" "by Brandt Bucher." msgstr "" -#: ../build/NEWS:9828 +#: ../build/NEWS:9863 msgid "" "`bpo-35376 `__: :mod:`modulefinder` " "correctly handles modules that have the same name as a bad package. Patch by " "Brandt Bucher." msgstr "" -#: ../build/NEWS:9831 +#: ../build/NEWS:9866 msgid "" "`bpo-17396 `__: :mod:`modulefinder` no " "longer crashes when encountering syntax errors in followed imports. Patch by " "Brandt Bucher." msgstr "" -#: ../build/NEWS:9834 +#: ../build/NEWS:9869 msgid "" "`bpo-35934 `__: Added :meth:`~socket." "create_server()` and :meth:`~socket.has_dualstack_ipv6()` convenience " @@ -18978,59 +18932,59 @@ msgid "" "same socket. (Contributed by Giampaolo Rodola in :issue:`17561`.)" msgstr "" -#: ../build/NEWS:9840 +#: ../build/NEWS:9875 msgid "" "`bpo-23078 `__: Add support for :func:" "`classmethod` and :func:`staticmethod` to :func:`unittest.mock." "create_autospec`. Initial patch by Felipe Ochoa." msgstr "" -#: ../build/NEWS:9843 +#: ../build/NEWS:9878 msgid "" "`bpo-35416 `__: Fix potential resource " "warnings in distutils. Patch by Mickaël Schoentgen." msgstr "" -#: ../build/NEWS:9846 +#: ../build/NEWS:9881 msgid "" "`bpo-25451 `__: Add transparency methods " "to :class:`tkinter.PhotoImage`. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:9849 +#: ../build/NEWS:9884 msgid "" "`bpo-35082 `__: Don't return deleted " "attributes when calling dir on a :class:`unittest.mock.Mock`." msgstr "" -#: ../build/NEWS:9852 +#: ../build/NEWS:9887 msgid "" "`bpo-34547 `__: :class:`wsgiref.handlers." "BaseHandler` now handles abrupt client connection terminations gracefully. " "Patch by Petter Strandmark." msgstr "" -#: ../build/NEWS:9855 +#: ../build/NEWS:9890 msgid "" "`bpo-31658 `__: :func:`xml.sax.parse` " "now supports :term:`path-like `. Patch by Mickaël " "Schoentgen." msgstr "" -#: ../build/NEWS:9858 +#: ../build/NEWS:9893 msgid "" "`bpo-34139 `__: Remove stale unix " "datagram socket before binding" msgstr "" -#: ../build/NEWS:9860 +#: ../build/NEWS:9895 msgid "" "`bpo-33530 `__: Implemented Happy " "Eyeballs in `asyncio.create_connection()`. Added two new arguments, " "*happy_eyeballs_delay* and *interleave*, to specify Happy Eyeballs behavior." msgstr "" -#: ../build/NEWS:9864 +#: ../build/NEWS:9899 msgid "" "`bpo-33291 `__: Do not raise " "AttributeError when calling the inspect functions isgeneratorfunction, " @@ -19038,42 +18992,42 @@ msgid "" "arbitrary callable. Instead, return False." msgstr "" -#: ../build/NEWS:9868 +#: ../build/NEWS:9903 msgid "" "`bpo-31310 `__: Fix the multiprocessing." "semaphore_tracker so it is reused by child processes" msgstr "" -#: ../build/NEWS:9871 +#: ../build/NEWS:9906 msgid "" "`bpo-31292 `__: Fix ``setup.py check --" "restructuredtext`` for files containing ``include`` directives." msgstr "" -#: ../build/NEWS:9877 +#: ../build/NEWS:9912 msgid "" "`bpo-36625 `__: Remove obsolete comments " "from docstrings in fractions.Fraction" msgstr "" -#: ../build/NEWS:9879 +#: ../build/NEWS:9914 msgid "" "`bpo-30840 `__: Document relative imports" msgstr "" -#: ../build/NEWS:9881 +#: ../build/NEWS:9916 msgid "" "`bpo-36523 `__: Add docstring for io." "IOBase.writelines()." msgstr "" -#: ../build/NEWS:9883 +#: ../build/NEWS:9918 msgid "" "`bpo-36425 `__: New documentation " "translation: `Simplified Chinese `_." msgstr "" -#: ../build/NEWS:9886 +#: ../build/NEWS:9921 msgid "" "`bpo-36345 `__: Avoid the duplication of " "code from ``Tools/scripts/serve.py`` in using the :rst:dir:`literalinclude` " @@ -19081,20 +19035,20 @@ msgid "" "mod:`wsgiref`. Contributed by Stéphane Wirtel." msgstr "" -#: ../build/NEWS:9891 +#: ../build/NEWS:9926 msgid "" "`bpo-36345 `__: Using the code of the " "``Tools/scripts/serve.py`` script as an example in the :mod:`wsgiref` " "documentation. Contributed by Stéphane Wirtel." msgstr "" -#: ../build/NEWS:9895 +#: ../build/NEWS:9930 msgid "" "`bpo-36157 `__: Added Documention for " "PyInterpreterState_Main()." msgstr "" -#: ../build/NEWS:9897 +#: ../build/NEWS:9932 msgid "" "`bpo-33043 `__: Updates the docs.python." "org page with the addition of a 'Contributing to Docs' link at the end of " @@ -19103,26 +19057,26 @@ msgid "" "Documentation Bugs section." msgstr "" -#: ../build/NEWS:9902 +#: ../build/NEWS:9937 msgid "" "`bpo-35581 `__: @typing.type_check_only " "now allows type stubs to mark functions and classes not available during " "runtime." msgstr "" -#: ../build/NEWS:9905 +#: ../build/NEWS:9940 msgid "" "`bpo-33832 `__: Add glossary entry for " "'magic method'." msgstr "" -#: ../build/NEWS:9907 +#: ../build/NEWS:9942 msgid "" "`bpo-32913 `__: Added re.Match.groupdict " "example to regex HOWTO." msgstr "" -#: ../build/NEWS:9912 +#: ../build/NEWS:9947 msgid "" "`bpo-36719 `__: regrtest now always " "detects uncollectable objects. Previously, the check was only enabled by ``--" @@ -19130,7 +19084,7 @@ msgid "" "findleaks`` becomes a deprecated alias to ``--fail-env-changed``." msgstr "" -#: ../build/NEWS:9917 +#: ../build/NEWS:9952 msgid "" "`bpo-36725 `__: When using " "multiprocessing mode (-jN), regrtest now better reports errors if a worker " @@ -19138,7 +19092,7 @@ msgid "" "interrupted." msgstr "" -#: ../build/NEWS:9921 +#: ../build/NEWS:9956 msgid "" "`bpo-36454 `__: Change test_time." "test_monotonic() to test only the lower bound of elapsed time after a sleep " @@ -19146,38 +19100,38 @@ msgid "" "on slow buildbots. Patch by Victor Stinner." msgstr "" -#: ../build/NEWS:9926 +#: ../build/NEWS:9961 msgid "" "`bpo-32424 `__: Improve test coverage " "for xml.etree.ElementTree. Patch by Gordon P. Hemsley." msgstr "" -#: ../build/NEWS:9929 +#: ../build/NEWS:9964 msgid "" "`bpo-32424 `__: Fix typo in " "test_cyclic_gc() test for xml.etree.ElementTree. Patch by Gordon P. Hemsley." msgstr "" -#: ../build/NEWS:9932 +#: ../build/NEWS:9967 msgid "" "`bpo-36635 `__: Add a new :mod:" "`_testinternalcapi` module to test the internal C API." msgstr "" -#: ../build/NEWS:9935 +#: ../build/NEWS:9970 msgid "" "`bpo-36629 `__: Fix " "``test_imap4_host_default_value()`` of ``test_imaplib``: catch also :data:" "`errno.ENETUNREACH` error." msgstr "" -#: ../build/NEWS:9938 +#: ../build/NEWS:9973 msgid "" "`bpo-36611 `__: Fix ``test_sys." "test_getallocatedblocks()`` when :mod:`tracemalloc` is enabled." msgstr "" -#: ../build/NEWS:9941 +#: ../build/NEWS:9976 msgid "" "`bpo-36560 `__: Fix reference leak " "hunting in regrtest: compute also deltas (of reference count, allocated " @@ -19185,61 +19139,61 @@ msgid "" "everything is initialized before starting to hunt reference leaks." msgstr "" -#: ../build/NEWS:9946 +#: ../build/NEWS:9981 msgid "" "`bpo-36565 `__: Fix reference hunting " "(``python3 -m test -R 3:3``) when Python has no built-in abc module." msgstr "" -#: ../build/NEWS:9949 +#: ../build/NEWS:9984 msgid "" "`bpo-31904 `__: Port test_resource to " "VxWorks: skip tests cases setting RLIMIT_FSIZE and RLIMIT_CPU." msgstr "" -#: ../build/NEWS:9952 +#: ../build/NEWS:9987 msgid "" "`bpo-31904 `__: Fix test_tabnanny on " "VxWorks: adjust ENOENT error message." msgstr "" -#: ../build/NEWS:9954 +#: ../build/NEWS:9989 msgid "" "`bpo-36436 `__: Fix ``_testcapi." "pymem_buffer_overflow()``: handle memory allocation failure." msgstr "" -#: ../build/NEWS:9957 +#: ../build/NEWS:9992 msgid "" "`bpo-31904 `__: Fix test_utf8_mode on " "VxWorks: Python always use UTF-8 on VxWorks." msgstr "" -#: ../build/NEWS:9960 +#: ../build/NEWS:9995 msgid "" "`bpo-36341 `__: Fix tests that may fail " "with PermissionError upon calling bind() on AF_UNIX sockets." msgstr "" -#: ../build/NEWS:9966 +#: ../build/NEWS:10001 msgid "" "`bpo-36747 `__: Remove the stale " "scriptsinstall Makefile target." msgstr "" -#: ../build/NEWS:9968 +#: ../build/NEWS:10003 msgid "" "`bpo-21536 `__: On Unix, C extensions " "are no longer linked to libpython except on Android and Cygwin." msgstr "" -#: ../build/NEWS:9971 +#: ../build/NEWS:10006 msgid "" "It is now possible for a statically linked Python to load a C extension " "built using a shared library Python." msgstr "" -#: ../build/NEWS:9974 +#: ../build/NEWS:10009 msgid "" "When Python is embedded, ``libpython`` must not be loaded with " "``RTLD_LOCAL``, but ``RTLD_GLOBAL`` instead. Previously, using " @@ -19248,18 +19202,18 @@ msgid "" "built by the ``*shared*`` section of ``Modules/Setup``." msgstr "" -#: ../build/NEWS:9980 +#: ../build/NEWS:10015 msgid "distutils, python-config and python-config.py have been modified." msgstr "" -#: ../build/NEWS:9982 +#: ../build/NEWS:10017 msgid "" "`bpo-36707 `__: ``./configure --with-" "pymalloc`` no longer adds the ``m`` flag to SOABI (sys.implementation." "cache_tag). Enabling or disabling pymalloc has no impact on the ABI." msgstr "" -#: ../build/NEWS:9986 +#: ../build/NEWS:10021 msgid "" "`bpo-36635 `__: Change " "``PyAPI_FUNC(type)``, ``PyAPI_DATA(type)`` and ``PyMODINIT_FUNC`` macros of " @@ -19269,13 +19223,13 @@ msgid "" "function in DLL exports on Windows." msgstr "" -#: ../build/NEWS:9992 +#: ../build/NEWS:10027 msgid "" "`bpo-31904 `__: Don't build the " "``_crypt`` extension on VxWorks." msgstr "" -#: ../build/NEWS:9994 +#: ../build/NEWS:10029 msgid "" "`bpo-36618 `__: Add ``-fmax-type-" "align=8`` to CFLAGS when clang compiler is detected. The pymalloc memory " @@ -19288,13 +19242,13 @@ msgid "" "can have the same issue." msgstr "" -#: ../build/NEWS:10003 +#: ../build/NEWS:10038 msgid "" "`bpo-36605 `__: ``make tags`` and ``make " "TAGS`` now also parse ``Modules/_io/*.c`` and ``Modules/_io/*.h``." msgstr "" -#: ../build/NEWS:10006 +#: ../build/NEWS:10041 msgid "" "`bpo-36465 `__: Release builds and debug " "builds are now ABI compatible: defining the ``Py_DEBUG`` macro no longer " @@ -19304,33 +19258,33 @@ msgid "" "can be set using the new ``./configure --with-trace-refs`` build option." msgstr "" -#: ../build/NEWS:10013 +#: ../build/NEWS:10048 msgid "" "`bpo-36577 `__: setup.py now correctly " "reports missing OpenSSL headers and libraries again." msgstr "" -#: ../build/NEWS:10016 +#: ../build/NEWS:10051 msgid "" "`bpo-36544 `__: Fix regression " "introduced in `bpo-36146 `__ refactoring " "setup.py" msgstr "" -#: ../build/NEWS:10018 +#: ../build/NEWS:10053 msgid "" "`bpo-36508 `__: ``python-config --" "ldflags`` no longer includes flags of the ``LINKFORSHARED`` variable. The " "``LINKFORSHARED`` variable must only be used to build executables." msgstr "" -#: ../build/NEWS:10022 +#: ../build/NEWS:10057 msgid "" "`bpo-36503 `__: Remove references to " "\"aix3\" and \"aix4\". Patch by M. Felt." msgstr "" -#: ../build/NEWS:10027 +#: ../build/NEWS:10062 msgid "" "`bpo-35920 `__: Added platform." "win32_edition() and platform.win32_is_iot(). Added support for cross-" @@ -19338,20 +19292,20 @@ msgid "" "work on Windows IoT Core ARM32." msgstr "" -#: ../build/NEWS:10031 +#: ../build/NEWS:10066 msgid "" "`bpo-36649 `__: Remove trailing spaces " "for registry keys when installed via the Store." msgstr "" -#: ../build/NEWS:10034 +#: ../build/NEWS:10069 msgid "" "`bpo-34144 `__: Fixed activate.bat to " "correctly update codepage when chcp.com returns dots in output. Patch by " "Lorenz Mende." msgstr "" -#: ../build/NEWS:10037 +#: ../build/NEWS:10072 msgid "" "`bpo-36509 `__: Added preset-iot layout " "for Windows IoT ARM containers. This layout doesn't contain UI components " @@ -19359,7 +19313,7 @@ msgid "" "builds since Windows ARM32 builds must be cross-compiled when using MSVC." msgstr "" -#: ../build/NEWS:10042 +#: ../build/NEWS:10077 msgid "" "`bpo-35941 `__: enum_certificates " "function of the ssl module now returns certificates from all available " @@ -19372,26 +19326,26 @@ msgid "" "revocation list stores." msgstr "" -#: ../build/NEWS:10052 +#: ../build/NEWS:10087 msgid "" "`bpo-36441 `__: Fixes creating a venv " "when debug binaries are installed." msgstr "" -#: ../build/NEWS:10054 +#: ../build/NEWS:10089 msgid "" "`bpo-36085 `__: Enable better DLL " "resolution on Windows by using safe DLL search paths and adding :func:`os." "add_dll_directory`." msgstr "" -#: ../build/NEWS:10057 +#: ../build/NEWS:10092 msgid "" "`bpo-36010 `__: Add the venv standard " "library module to the nuget distribution for Windows." msgstr "" -#: ../build/NEWS:10060 +#: ../build/NEWS:10095 msgid "" "`bpo-29515 `__: Add the following socket " "module constants on Windows: IPPROTO_AH IPPROTO_CBT IPPROTO_DSTOPTS " @@ -19402,28 +19356,28 @@ msgid "" "IPPROTO_ST" msgstr "" -#: ../build/NEWS:10068 +#: ../build/NEWS:10103 msgid "" "`bpo-35947 `__: Added current version of " "libffi to cpython-source-deps. Change _ctypes to use current version of " "libffi on Windows." msgstr "" -#: ../build/NEWS:10071 +#: ../build/NEWS:10106 msgid "" "`bpo-34060 `__: Report system load when " "running test suite on Windows. Patch by Ammar Askar. Based on prior work by " "Jeremy Kloth." msgstr "" -#: ../build/NEWS:10074 +#: ../build/NEWS:10109 msgid "" "`bpo-31512 `__: With the Windows 10 " "Creators Update, non-elevated users can now create symlinks as long as the " "computer has Developer Mode enabled." msgstr "" -#: ../build/NEWS:10080 +#: ../build/NEWS:10115 msgid "" "`bpo-34602 `__: Avoid failures setting " "macOS stack resource limit with resource.setrlimit. This reverts an earlier " @@ -19431,34 +19385,34 @@ msgid "" "non-default stack size when building the interpreter executable on macOS." msgstr "" -#: ../build/NEWS:10088 +#: ../build/NEWS:10123 msgid "" "`bpo-36429 `__: Fix starting IDLE with " "pyshell. Add idlelib.pyshell alias at top; remove pyshell alias at bottom. " "Remove obsolete __name__=='__main__' command." msgstr "" -#: ../build/NEWS:10095 +#: ../build/NEWS:10130 msgid "" "`bpo-14546 `__: Fix the argument " "handling in Tools/scripts/lll.py." msgstr "" -#: ../build/NEWS:10100 +#: ../build/NEWS:10135 msgid "" "`bpo-36763 `__: Fix memory leak in :c:" "func:`Py_SetStandardStreamEncoding`: release memory if the function is " "called twice." msgstr "" -#: ../build/NEWS:10103 +#: ../build/NEWS:10138 msgid "" "`bpo-36641 `__: :c:macro:" "`PyDoc_VAR(name)` and :c:macro:`PyDoc_STRVAR(name,str)` now create ``static " "const char name[]`` instead of ``static char name[]``. Patch by Inada Naoki." msgstr "" -#: ../build/NEWS:10107 +#: ../build/NEWS:10142 msgid "" "`bpo-36389 `__: Change the value of " "``CLEANBYTE``, ``DEADDYTE`` and ``FORBIDDENBYTE`` internal constants used by " @@ -19468,7 +19422,7 @@ msgid "" "debug ``malloc()`` and ``free()``." msgstr "" -#: ../build/NEWS:10114 +#: ../build/NEWS:10149 msgid "" "`bpo-36443 `__: Since Python 3.7.0, " "calling :c:func:`Py_DecodeLocale` before :c:func:`Py_Initialize` produces " @@ -19479,7 +19433,7 @@ msgid "" "``_PyPreConfig``." msgstr "" -#: ../build/NEWS:10121 +#: ../build/NEWS:10156 msgid "" "`bpo-36025 `__: Fixed an accidental " "change to the datetime C API where the arguments to the :c:func:" @@ -19489,7 +19443,7 @@ msgid "" "present in alpha releases of Python 3.8. Patch by Paul Ganssle." msgstr "" -#: ../build/NEWS:10128 +#: ../build/NEWS:10163 msgid "" "`bpo-35810 `__: Modify ``PyObject_Init`` " "to correctly increase the refcount of heap- allocated Type objects. Also fix " @@ -19497,15 +19451,15 @@ msgid "" "manually or not decreasing the type's refcount in tp_dealloc" msgstr "" -#: ../build/NEWS:10135 +#: ../build/NEWS:10170 msgid "Python 3.8.0 alpha 3" msgstr "" -#: ../build/NEWS:10137 +#: ../build/NEWS:10172 msgid "*Release date: 2019-03-25*" msgstr "" -#: ../build/NEWS:10142 +#: ../build/NEWS:10177 msgid "" "`bpo-36216 `__: Changes urlsplit() to " "raise ValueError when the URL contains characters that decompose under IDNA " @@ -19513,7 +19467,7 @@ msgid "" "parsed." msgstr "" -#: ../build/NEWS:10146 +#: ../build/NEWS:10181 msgid "" "`bpo-35121 `__: Don't send cookies of " "domain A without Domain attribute to domain B when domain A is a suffix " @@ -19521,83 +19475,83 @@ msgid "" "DefaultCookiePolicy` policy. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:10154 +#: ../build/NEWS:10189 msgid "" "`bpo-36421 `__: Fix a possible double " "decref in _ctypes.c's ``PyCArrayType_new()``." msgstr "" -#: ../build/NEWS:10157 +#: ../build/NEWS:10192 msgid "" "`bpo-36412 `__: Fix a possible crash " "when creating a new dictionary." msgstr "" -#: ../build/NEWS:10159 +#: ../build/NEWS:10194 msgid "" "`bpo-36398 `__: Fix a possible crash in " "``structseq_repr()``." msgstr "" -#: ../build/NEWS:10161 +#: ../build/NEWS:10196 msgid "" "`bpo-36256 `__: Fix bug in parsermodule " "when parsing a state in a DFA that has two or more arcs with labels of the " "same type. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:10164 +#: ../build/NEWS:10199 msgid "" "`bpo-36365 `__: repr(structseq) is no " "longer limited to 512 bytes." msgstr "" -#: ../build/NEWS:10166 +#: ../build/NEWS:10201 msgid "" "`bpo-36374 `__: Fix a possible null " "pointer dereference in ``merge_consts_recursive()``. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:10169 +#: ../build/NEWS:10204 msgid "" "`bpo-36236 `__: At Python " "initialization, the current directory is no longer prepended to :data:`sys." "path` if it has been removed." msgstr "" -#: ../build/NEWS:10172 +#: ../build/NEWS:10207 msgid "" "`bpo-36352 `__: Python initialization " "now fails with an error, rather than silently truncating paths, if a path is " "too long." msgstr "" -#: ../build/NEWS:10175 +#: ../build/NEWS:10210 msgid "" "`bpo-36301 `__: Python initialization " "now fails if decoding ``pybuilddir.txt`` configuration file fails at startup." msgstr "" -#: ../build/NEWS:10178 +#: ../build/NEWS:10213 msgid "" "`bpo-36333 `__: Fix leak in " "_PyRuntimeState_Fini. Contributed by Stéphane Wirtel." msgstr "" -#: ../build/NEWS:10181 +#: ../build/NEWS:10216 msgid "" "`bpo-36332 `__: The builtin :func:" "`compile` can now handle AST objects that contain assignment expressions. " "Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:10184 +#: ../build/NEWS:10219 msgid "" "`bpo-36282 `__: Improved error message " "for too much positional arguments in some builtin functions." msgstr "" -#: ../build/NEWS:10187 +#: ../build/NEWS:10222 msgid "" "`bpo-30040 `__: New empty dict uses " "fewer memory for now. It used more memory than empty dict created by ``dict." @@ -19605,7 +19559,7 @@ msgid "" "by Inada Naoki." msgstr "" -#: ../build/NEWS:10191 +#: ../build/NEWS:10226 msgid "" "`bpo-36262 `__: Fix an unlikely memory " "leak on conversion from string to float in the function ``_Py_dg_strtod()`` " @@ -19613,27 +19567,27 @@ msgid "" "`marshal.load`, etc." msgstr "" -#: ../build/NEWS:10195 +#: ../build/NEWS:10230 msgid "" "`bpo-36252 `__: Update Unicode databases " "to version 12.0.0." msgstr "" -#: ../build/NEWS:10197 +#: ../build/NEWS:10232 msgid "" "`bpo-36218 `__: Fix a segfault occurring " "when sorting a list of heterogeneous values. Patch contributed by Rémi " "Lapeyre and Elliot Gorokhovsky." msgstr "" -#: ../build/NEWS:10200 +#: ../build/NEWS:10235 msgid "" "`bpo-36188 `__: Cleaned up left-over " "vestiges of Python 2 unbound method handling in method objects and " "documentation. Patch by Martijn Pieters" msgstr "" -#: ../build/NEWS:10203 +#: ../build/NEWS:10238 msgid "" "`bpo-36124 `__: Add a new interpreter-" "specific dict and expose it in the C-API via PyInterpreterState_GetDict(). " @@ -19642,7 +19596,7 @@ msgid "" "state." msgstr "" -#: ../build/NEWS:10208 +#: ../build/NEWS:10243 msgid "" "`bpo-35975 `__: Add a " "``feature_version`` flag to ``ast.parse()`` (documented) and ``compile()`` " @@ -19654,13 +19608,13 @@ msgid "" "recognizes.)" msgstr "" -#: ../build/NEWS:10216 +#: ../build/NEWS:10251 msgid "" "`bpo-31904 `__: Use UTF-8 as the system " "encoding on VxWorks." msgstr "" -#: ../build/NEWS:10218 +#: ../build/NEWS:10253 msgid "" "`bpo-36048 `__: The :meth:`~object." "__index__` special method will be used instead of :meth:`~object.__int__` " @@ -19668,19 +19622,19 @@ msgid "" "``__int__()`` method in implicit conversions has been deprecated." msgstr "" -#: ../build/NEWS:10223 +#: ../build/NEWS:10258 msgid "" "`bpo-35808 `__: Retire pgen and use a " "modified version of pgen2 to generate the parser. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:10229 +#: ../build/NEWS:10264 msgid "" "`bpo-36401 `__: The class documentation " "created by pydoc now has a separate section for readonly properties." msgstr "" -#: ../build/NEWS:10232 +#: ../build/NEWS:10267 msgid "" "`bpo-36320 `__: The typing.NamedTuple() " "class has deprecated the _field_types attribute in favor of the " @@ -19688,19 +19642,19 @@ msgid "" "attributes were converted from OrderedDict to a regular dict." msgstr "" -#: ../build/NEWS:10237 +#: ../build/NEWS:10272 msgid "" "`bpo-34745 `__: Fix :mod:`asyncio` ssl " "memory issues caused by circular references" msgstr "" -#: ../build/NEWS:10240 +#: ../build/NEWS:10275 msgid "" "`bpo-36324 `__: Add method to statistics." "NormalDist for computing the inverse cumulative normal distribution." msgstr "" -#: ../build/NEWS:10243 +#: ../build/NEWS:10278 msgid "" "`bpo-36321 `__: collections.namedtuple() " "misspelled the name of an attribute. To be consistent with typing." @@ -19709,64 +19663,64 @@ msgid "" "now created. The misspelled version may be removed in the future." msgstr "" -#: ../build/NEWS:10249 +#: ../build/NEWS:10284 msgid "" "`bpo-36297 `__: \"unicode_internal\" " "codec is removed. It was deprecated since Python 3.3. Patch by Inada Naoki." msgstr "" -#: ../build/NEWS:10252 +#: ../build/NEWS:10287 msgid "" "`bpo-36298 `__: Raise " "ModuleNotFoundError in pyclbr when a module can't be found. Thanks to " "'mental' for the bug report." msgstr "" -#: ../build/NEWS:10255 +#: ../build/NEWS:10290 msgid "" "`bpo-36268 `__: Switch the default " "format used for writing tars with mod:`tarfile` to the modern POSIX.1-2001 " "pax standard, from the vendor-specific GNU. Contributed by C.A.M. Gerlach." msgstr "" -#: ../build/NEWS:10259 +#: ../build/NEWS:10294 msgid "" "`bpo-36285 `__: Fix integer overflows in " "the array module. Patch by Stephan Hohe." msgstr "" -#: ../build/NEWS:10262 +#: ../build/NEWS:10297 msgid "" "`bpo-31904 `__: Add _signal module " "support for VxWorks." msgstr "" -#: ../build/NEWS:10264 +#: ../build/NEWS:10299 msgid "" "`bpo-36272 `__: :mod:`logging` does not " "silently ignore RecursionError anymore. Patch contributed by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:10267 +#: ../build/NEWS:10302 msgid "" "`bpo-36280 `__: Add a kind field to ast." "Constant. It is 'u' if the literal has a 'u' prefix (i.e. a Python 2 style " "unicode literal), else None." msgstr "" -#: ../build/NEWS:10270 +#: ../build/NEWS:10305 msgid "" "`bpo-35931 `__: The :mod:`pdb` ``debug`` " "command now gracefully handles all exceptions." msgstr "" -#: ../build/NEWS:10273 +#: ../build/NEWS:10308 msgid "" "`bpo-36251 `__: Fix format strings used " "for stderrprinter and re.Match reprs. Patch by Stephan Hohe." msgstr "" -#: ../build/NEWS:10276 +#: ../build/NEWS:10311 msgid "" "`bpo-36235 `__: Fix ``CFLAGS`` in " "``customize_compiler()`` of ``distutils.sysconfig``: when the ``CFLAGS`` " @@ -19774,78 +19728,78 @@ msgid "" "``OPT`` variable anymore. Initial patch written by David Malcolm." msgstr "" -#: ../build/NEWS:10281 +#: ../build/NEWS:10316 msgid "" "`bpo-35807 `__: Update ensurepip to " "install pip 19.0.3 and setuptools 40.8.0." msgstr "" -#: ../build/NEWS:10283 +#: ../build/NEWS:10318 msgid "" "`bpo-36139 `__: Release GIL when " "closing :class:`~mmap.mmap` objects." msgstr "" -#: ../build/NEWS:10285 +#: ../build/NEWS:10320 msgid "" "`bpo-36179 `__: Fix two unlikely " "reference leaks in _hashopenssl. The leaks only occur in out-of-memory cases." msgstr "" -#: ../build/NEWS:10288 +#: ../build/NEWS:10323 msgid "" "`bpo-36169 `__: Add overlap() method to " "statistics.NormalDist. Computes the overlapping coefficient for two normal " "distributions." msgstr "" -#: ../build/NEWS:10291 +#: ../build/NEWS:10326 msgid "" "`bpo-36103 `__: Default buffer size used " "by ``shutil.copyfileobj()`` is changed from 16 KiB to 64 KiB on non-Windows " "platform to reduce system call overhead. Contributed by Inada Naoki." msgstr "" -#: ../build/NEWS:10295 +#: ../build/NEWS:10330 msgid "" "`bpo-36130 `__: Fix ``pdb`` with " "``skip=...`` when stepping into a frame without a ``__name__`` global. " "Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:10298 +#: ../build/NEWS:10333 msgid "" "`bpo-35652 `__: shutil." "copytree(copy_function=...) erroneously pass DirEntry instead of a path " "string." msgstr "" -#: ../build/NEWS:10301 +#: ../build/NEWS:10336 msgid "" "`bpo-35178 `__: Ensure custom :func:" "`warnings.formatwarning` function can receive `line` as positional argument. " "Based on patch by Tashrif Billah." msgstr "" -#: ../build/NEWS:10304 +#: ../build/NEWS:10339 msgid "" "`bpo-36106 `__: Resolve potential name " "clash with libm's sinpi(). Patch by Dmitrii Pasechnik." msgstr "" -#: ../build/NEWS:10307 +#: ../build/NEWS:10342 msgid "" "`bpo-36091 `__: Clean up reference to " "async generator in Lib/types. Patch by Henry Chen." msgstr "" -#: ../build/NEWS:10310 +#: ../build/NEWS:10345 msgid "" "`bpo-36043 `__: :class:`FileCookieJar` " "supports :term:`path-like object`. Contributed by Stéphane Wirtel" msgstr "" -#: ../build/NEWS:10313 +#: ../build/NEWS:10348 msgid "" "`bpo-35899 `__: Enum has been fixed to " "correctly handle empty strings and strings with non-Latin characters (ie. " @@ -19853,13 +19807,13 @@ msgid "" "by Stéphane Wirtel." msgstr "" -#: ../build/NEWS:10317 +#: ../build/NEWS:10352 msgid "" "`bpo-21269 `__: Add ``args`` and " "``kwargs`` properties to mock call objects. Contributed by Kumar Akshay." msgstr "" -#: ../build/NEWS:10320 +#: ../build/NEWS:10355 msgid "" "`bpo-30670 `__: `pprint.pp` has been " "added to pretty-print objects with dictionary keys being sorted with their " @@ -19868,87 +19822,87 @@ msgid "" "Lapeyre." msgstr "" -#: ../build/NEWS:10325 +#: ../build/NEWS:10360 msgid "" "`bpo-35843 `__: Implement " "``__getitem__`` for ``_NamespacePath``. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:10328 +#: ../build/NEWS:10363 msgid "" "`bpo-35802 `__: Clean up code which " "checked presence of ``os.stat`` / ``os.lstat`` / ``os.chmod`` which are " "always present. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:10332 +#: ../build/NEWS:10367 msgid "" "`bpo-35715 `__: Librates the return " "value of a ProcessPoolExecutor _process_worker after it's no longer needed " "to free memory" msgstr "" -#: ../build/NEWS:10335 +#: ../build/NEWS:10370 msgid "" "`bpo-35493 `__: Use :func:" "`multiprocessing.connection.wait` instead of polling each 0.2 seconds for " "worker updates in :class:`multiprocessing.Pool`. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:10339 +#: ../build/NEWS:10374 msgid "" "`bpo-35661 `__: Store the venv prompt in " "pyvenv.cfg." msgstr "" -#: ../build/NEWS:10341 +#: ../build/NEWS:10376 msgid "" "`bpo-35121 `__: Don't set cookie for a " "request when the request path is a prefix match of the cookie's path " "attribute but doesn't end with \"/\". Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:10345 +#: ../build/NEWS:10380 msgid "" "`bpo-21478 `__: Calls to a child " "function created with :func:`unittest.mock.create_autospec` should propagate " "to the parent. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:10349 +#: ../build/NEWS:10384 msgid "" "`bpo-35198 `__: Fix C++ extension " "compilation on AIX" msgstr "" -#: ../build/NEWS:10354 +#: ../build/NEWS:10389 msgid "" "`bpo-36329 `__: Declare the path of the " "Python binary for the usage of ``Tools/scripts/serve.py`` when executing " "``make -C Doc/ serve``. Contributed by Stéphane Wirtel" msgstr "" -#: ../build/NEWS:10358 +#: ../build/NEWS:10393 msgid "" "`bpo-36138 `__: Improve documentation " "about converting datetime.timedelta to scalars." msgstr "" -#: ../build/NEWS:10361 +#: ../build/NEWS:10396 msgid "" "`bpo-21314 `__: A new entry was added to " "the Core Language Section of the Programming FAQ, which explaines the usage " "of slash(/) in the signature of a function. Patch by Lysandros Nikolaou" msgstr "" -#: ../build/NEWS:10368 +#: ../build/NEWS:10403 msgid "" "`bpo-36234 `__: test_posix." "PosixUidGidTests: add tests for invalid uid/gid type (str). Initial patch " "written by David Malcolm." msgstr "" -#: ../build/NEWS:10371 +#: ../build/NEWS:10406 msgid "" "`bpo-29571 `__: Fix ``test_re." "test_locale_flag()``: use ``locale.getpreferredencoding()`` rather than " @@ -19956,164 +19910,164 @@ msgid "" "``locale.getlocale()`` returns the wrong encoding." msgstr "" -#: ../build/NEWS:10376 +#: ../build/NEWS:10411 msgid "" "`bpo-36123 `__: Fix race condition in " "test_socket." msgstr "" -#: ../build/NEWS:10381 +#: ../build/NEWS:10416 msgid "" "`bpo-36356 `__: Fix leaks that led to " "build failure when configured with address sanitizer." msgstr "" -#: ../build/NEWS:10384 +#: ../build/NEWS:10419 msgid "" "`bpo-36146 `__: Add ``TEST_EXTENSIONS`` " "constant to ``setup.py`` to allow to not build test extensions like " "``_testcapi``." msgstr "" -#: ../build/NEWS:10387 +#: ../build/NEWS:10422 msgid "" "`bpo-36146 `__: Fix setup.py on macOS: " "only add ``/usr/include/ffi`` to include directories of _ctypes, not for all " "extensions." msgstr "" -#: ../build/NEWS:10390 +#: ../build/NEWS:10425 msgid "" "`bpo-31904 `__: Enable build system to " "cross-build for VxWorks RTOS." msgstr "" -#: ../build/NEWS:10395 +#: ../build/NEWS:10430 msgid "" "`bpo-36312 `__: Fixed decoders for the " "following code pages: 50220, 50221, 50222, 50225, 50227, 50229, 57002 " "through 57011, 65000 and 42." msgstr "" -#: ../build/NEWS:10398 +#: ../build/NEWS:10433 msgid "" "`bpo-36264 `__: Don't honor POSIX " "``HOME`` in ``os.path.expanduser`` on windows. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:10401 +#: ../build/NEWS:10436 msgid "" "`bpo-24643 `__: Fix name collisions due " "to ``#define timezone _timezone`` in PC/pyconfig.h." msgstr "" -#: ../build/NEWS:10407 +#: ../build/NEWS:10442 msgid "" "`bpo-36405 `__: Use dict unpacking in " "idlelib." msgstr "" -#: ../build/NEWS:10409 +#: ../build/NEWS:10444 msgid "" "`bpo-36396 `__: Remove fgBg param of " "idlelib.config.GetHighlight(). This param was only used twice and changed " "the return type." msgstr "" -#: ../build/NEWS:10412 +#: ../build/NEWS:10447 msgid "" "`bpo-36176 `__: Fix IDLE autocomplete & " "calltip popup colors. Prevent conflicts with Linux dark themes (and slightly " "darken calltip background)." msgstr "" -#: ../build/NEWS:10415 +#: ../build/NEWS:10450 msgid "" "`bpo-23205 `__: For the grep module, add " "tests for findfiles, refactor findfiles to be a module-level function, and " "refactor findfiles to use os.walk." msgstr "" -#: ../build/NEWS:10419 +#: ../build/NEWS:10454 msgid "" "`bpo-23216 `__: Add docstrings to IDLE " "search modules." msgstr "" -#: ../build/NEWS:10421 +#: ../build/NEWS:10456 msgid "" "`bpo-36152 `__: Remove colorizer." "ColorDelegator.close_when_done and the corresponding argument of .close(). " "In IDLE, both have always been None or False since 2007." msgstr "" -#: ../build/NEWS:10425 +#: ../build/NEWS:10460 msgid "" "`bpo-32129 `__: Avoid blurry IDLE " "application icon on macOS with Tk 8.6. Patch by Kevin Walzer." msgstr "" -#: ../build/NEWS:10428 +#: ../build/NEWS:10463 msgid "" "`bpo-36096 `__: Refactor class variables " "to instance variables in colorizer." msgstr "" -#: ../build/NEWS:10430 +#: ../build/NEWS:10465 msgid "" "`bpo-30348 `__: Increase test coverage " "of idlelib.autocomplete by 30%. Patch by Louie Lu" msgstr "" -#: ../build/NEWS:10436 +#: ../build/NEWS:10471 msgid "" "`bpo-35132 `__: Fix py-list and py-bt " "commands of python-gdb.py on gdb7." msgstr "" -#: ../build/NEWS:10438 +#: ../build/NEWS:10473 msgid "" "`bpo-32217 `__: Fix freeze script on " "Windows." msgstr "" -#: ../build/NEWS:10443 +#: ../build/NEWS:10478 msgid "" "`bpo-36381 `__: Raise " "``DeprecationWarning`` when '#' formats are used for building or parsing " "values without ``PY_SSIZE_T_CLEAN``." msgstr "" -#: ../build/NEWS:10446 +#: ../build/NEWS:10481 msgid "" "`bpo-36142 `__: The whole coreconfig.h " "header is now excluded from Py_LIMITED_API. Move functions definitions into " "a new internal pycore_coreconfig.h header." msgstr "" -#: ../build/NEWS:10452 +#: ../build/NEWS:10487 msgid "Python 3.8.0 alpha 2" msgstr "" -#: ../build/NEWS:10454 +#: ../build/NEWS:10489 msgid "*Release date: 2019-02-25*" msgstr "" -#: ../build/NEWS:10459 +#: ../build/NEWS:10494 msgid "" "`bpo-36052 `__: Raise a :exc:" "`SyntaxError` when assigning a value to `__debug__` with the Assignment " "Operator. Contributed by Stéphane Wirtel and Pablo Galindo." msgstr "" -#: ../build/NEWS:10463 +#: ../build/NEWS:10498 msgid "" "`bpo-36012 `__: Doubled the speed of " "class variable writes. When a non-dunder attribute was updated, there was " "an unnecessary call to update slots." msgstr "" -#: ../build/NEWS:10466 +#: ../build/NEWS:10501 msgid "" "`bpo-35942 `__: The error message " "emitted when returning invalid types from ``__fspath__`` in interfaces that " @@ -20121,14 +20075,14 @@ msgid "" "does explain the origin of the error." msgstr "" -#: ../build/NEWS:10470 +#: ../build/NEWS:10505 msgid "" "`bpo-36016 `__: ``gc.get_objects`` can " "now receive an optional parameter indicating a generation to get objects " "from. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:10473 +#: ../build/NEWS:10508 msgid "" "`bpo-1054041 `__: When the main " "interpreter exits due to an uncaught KeyboardInterrupt, the process now " @@ -20137,74 +20091,74 @@ msgid "" "to understand that the user has asked them to stop." msgstr "" -#: ../build/NEWS:10479 +#: ../build/NEWS:10514 msgid "" "`bpo-35992 `__: Fix " "``__class_getitem__()`` not being called on a class with a custom non-" "subscriptable metaclass." msgstr "" -#: ../build/NEWS:10482 +#: ../build/NEWS:10517 msgid "" "`bpo-35993 `__: Fix a crash on fork when " "using subinterpreters. Contributed by Stéphane Wirtel" msgstr "" -#: ../build/NEWS:10485 +#: ../build/NEWS:10520 msgid "" "`bpo-35991 `__: Fix a potential double " "free in Modules/_randommodule.c." msgstr "" -#: ../build/NEWS:10487 +#: ../build/NEWS:10522 msgid "" "`bpo-35961 `__: Fix a crash in " "slice_richcompare(): use strong references rather than stolen references for " "the two temporary internal tuples." msgstr "" -#: ../build/NEWS:10490 +#: ../build/NEWS:10525 msgid "" "`bpo-35911 `__: Enable the creation of " "cell objects by adding a ``cell.__new__`` method, and expose the type " "``cell`` in ``Lib/types.py`` under the name CellType. Patch by Pierre Glaser." msgstr "" -#: ../build/NEWS:10494 +#: ../build/NEWS:10529 msgid "" "`bpo-12822 `__: Use monotonic clock for " "``pthread_cond_timedwait`` when ``pthread_condattr_setclock`` and " "``CLOCK_MONOTONIC`` are available." msgstr "" -#: ../build/NEWS:10497 +#: ../build/NEWS:10532 msgid "" "`bpo-15248 `__: The compiler emits now " "syntax warnings in the case when a comma is likely missed before tuple or " "list." msgstr "" -#: ../build/NEWS:10500 +#: ../build/NEWS:10535 msgid "" "`bpo-35886 `__: The implementation of " "PyInterpreterState has been moved into the internal header files (guarded by " "Py_BUILD_CORE)." msgstr "" -#: ../build/NEWS:10503 +#: ../build/NEWS:10538 msgid "" "`bpo-31506 `__: Clarify the errors " "reported when ``object.__new__`` and ``object.__init__`` receive more than " "one argument. Contributed by Sanyam Khurana." msgstr "" -#: ../build/NEWS:10507 +#: ../build/NEWS:10542 msgid "" "`bpo-35724 `__: Signal-handling is now " "guaranteed to happen relative to the main interpreter." msgstr "" -#: ../build/NEWS:10510 +#: ../build/NEWS:10545 msgid "" "`bpo-33608 `__: We added a new internal " "_Py_AddPendingCall() that operates relative to the provided interpreter. " @@ -20214,14 +20168,14 @@ msgid "" "operates relative to the main interpreter." msgstr "" -#: ../build/NEWS:10517 +#: ../build/NEWS:10552 msgid "" "`bpo-33989 `__: Fix a possible crash in :" "meth:`list.sort` when sorting objects with ``ob_type->tp_richcompare == " "NULL``. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:10523 +#: ../build/NEWS:10558 msgid "" "`bpo-35512 `__: :func:`unittest.mock." "patch.dict` used as a decorator with string target resolves the target " @@ -20229,7 +20183,7 @@ msgid "" "Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:10527 +#: ../build/NEWS:10562 msgid "" "`bpo-36018 `__: Add statistics." "NormalDist, a tool for creating and manipulating normal distributions of " @@ -20237,45 +20191,45 @@ msgid "" "standard deviation of measurement data as single entity." msgstr "" -#: ../build/NEWS:10532 +#: ../build/NEWS:10567 msgid "" "`bpo-35904 `__: Added statistics.fmean() " "as a faster, floating point variant of the existing mean() function." msgstr "" -#: ../build/NEWS:10535 +#: ../build/NEWS:10570 msgid "" "`bpo-35918 `__: Removed broken " "``has_key`` method from multiprocessing.managers.SyncManager.dict. " "Contributed by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:10538 +#: ../build/NEWS:10573 msgid "" "`bpo-18283 `__: Add support for bytes " "to :func:`shutil.which`." msgstr "" -#: ../build/NEWS:10540 +#: ../build/NEWS:10575 msgid "" "`bpo-35960 `__: Fix :func:`dataclasses." "field` throwing away empty mapping objects passed as metadata." msgstr "" -#: ../build/NEWS:10543 +#: ../build/NEWS:10578 msgid "" "`bpo-35500 `__: Write expected and " "actual call parameters on separate lines in :meth:`unittest.mock.Mock." "assert_called_with` assertion errors. Contributed by Susan Su." msgstr "" -#: ../build/NEWS:10547 +#: ../build/NEWS:10582 msgid "" "`bpo-35931 `__: The :mod:`pdb` ``debug`` " "command now gracefully handles syntax errors." msgstr "" -#: ../build/NEWS:10550 +#: ../build/NEWS:10585 msgid "" "`bpo-24209 `__: In http.server script, " "rely on getaddrinfo to bind to preferred address based on the bind " @@ -20283,14 +20237,14 @@ msgid "" "stack, depending on the environment." msgstr "" -#: ../build/NEWS:10554 +#: ../build/NEWS:10589 msgid "" "`bpo-35321 `__: Set ``__spec__.origin`` " "of ``_frozen_importlib`` to frozen so that it matches the behavior of " "``_frozen_importlib_external``. Patch by Nina Zakharenko." msgstr "" -#: ../build/NEWS:10558 +#: ../build/NEWS:10593 msgid "" "`bpo-35378 `__: Fix a reference issue " "inside :class:`multiprocessing.Pool` that caused the pool to remain alive if " @@ -20300,7 +20254,7 @@ msgid "" "iterator is still alive." msgstr "" -#: ../build/NEWS:10565 +#: ../build/NEWS:10600 msgid "" "`bpo-34294 `__: re module, fix wrong " "capturing groups in rare cases. :func:`re.search`, :func:`re.findall`, :func:" @@ -20308,14 +20262,14 @@ msgid "" "should reset capturing groups between two match attempts. Patch by Ma Lin." msgstr "" -#: ../build/NEWS:10570 +#: ../build/NEWS:10605 msgid "" "`bpo-35615 `__: :mod:`weakref`: Fix a " "RuntimeError when copying a WeakKeyDictionary or a WeakValueDictionary, due " "to some keys or values disappearing while iterating." msgstr "" -#: ../build/NEWS:10574 +#: ../build/NEWS:10609 msgid "" "`bpo-35606 `__: Implement :func:`math." "prod` as analogous function to :func:`sum` that returns the product of a " @@ -20323,7 +20277,7 @@ msgid "" "Galindo." msgstr "" -#: ../build/NEWS:10578 +#: ../build/NEWS:10613 msgid "" "`bpo-32417 `__: Performing arithmetic " "between :class:`datetime.datetime` subclasses and :class:`datetime." @@ -20334,7 +20288,7 @@ msgid "" "their subclass." msgstr "" -#: ../build/NEWS:10585 +#: ../build/NEWS:10620 msgid "" "`bpo-35153 `__: Add *headers* optional " "keyword-only parameter to :class:`xmlrpc.client.ServerProxy`, :class:`xmlrpc." @@ -20342,45 +20296,45 @@ msgid "" "Krier." msgstr "" -#: ../build/NEWS:10589 +#: ../build/NEWS:10624 msgid "" "`bpo-34572 `__: Fix C implementation of " "pickle.loads to use importlib's locking mechanisms, and thereby avoid using " "partially-loaded modules. Patch by Tim Burgess." msgstr "" -#: ../build/NEWS:10596 +#: ../build/NEWS:10631 msgid "" "`bpo-36083 `__: Fix formatting of --" "check-hash-based-pycs options in the manpage Synopsis." msgstr "" -#: ../build/NEWS:10599 +#: ../build/NEWS:10634 msgid "" "`bpo-36007 `__: Bump minimum sphinx " "version to 1.8. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:10601 +#: ../build/NEWS:10636 msgid "" "`bpo-22062 `__: Update documentation and " "docstrings for pathlib. Original patch by Mike Short." msgstr "" -#: ../build/NEWS:10607 +#: ../build/NEWS:10642 msgid "" "`bpo-27313 `__: Avoid test_ttk_guionly " "ComboboxTest failure with macOS Cocoa Tk." msgstr "" -#: ../build/NEWS:10610 +#: ../build/NEWS:10645 msgid "" "`bpo-36019 `__: Add test.support." "TEST_HTTP_URL and replace references of http://www.example.com by this new " "constant. Contributed by Stéphane Wirtel." msgstr "" -#: ../build/NEWS:10614 +#: ../build/NEWS:10649 msgid "" "`bpo-36037 `__: Fix test_ssl for strict " "OpenSSL configuration like RHEL8 strict crypto policy. Use older TLS version " @@ -20388,20 +20342,20 @@ msgid "" "version older than default minimum TLS version." msgstr "" -#: ../build/NEWS:10619 +#: ../build/NEWS:10654 msgid "" "`bpo-35798 `__: Added :func:`test." "support.check_syntax_warning`." msgstr "" -#: ../build/NEWS:10621 +#: ../build/NEWS:10656 msgid "" "`bpo-35505 `__: Make " "test_imap4_host_default_value independent on whether the local IMAP server " "is running." msgstr "" -#: ../build/NEWS:10624 +#: ../build/NEWS:10659 msgid "" "`bpo-35917 `__: multiprocessing: provide " "unit tests for SyncManager and SharedMemoryManager classes + all the " @@ -20409,83 +20363,83 @@ msgid "" "Giampaolo Rodola)" msgstr "" -#: ../build/NEWS:10628 +#: ../build/NEWS:10663 msgid "" "`bpo-35704 `__: Skip ``test_shutil." "test_unpack_archive_xztar`` to prevent a MemoryError on 32-bit AIX when " "MAXDATA setting is less than 0x20000000." msgstr "" -#: ../build/NEWS:10631 +#: ../build/NEWS:10666 msgid "Patch by Michael Felt (aixtools)" msgstr "" -#: ../build/NEWS:10633 +#: ../build/NEWS:10668 msgid "" "`bpo-34720 `__: Assert m_state != NULL " "to mimic GC traversal functions that do not correctly handle module creation " "when the module state has not been created." msgstr "" -#: ../build/NEWS:10640 +#: ../build/NEWS:10675 msgid "" "`bpo-35976 `__: Added ARM build support " "to Windows build files in PCBuild." msgstr "" -#: ../build/NEWS:10642 +#: ../build/NEWS:10677 msgid "" "`bpo-35692 `__: ``pathlib`` no longer " "raises when checking file and directory existence on drives that are not " "ready" msgstr "" -#: ../build/NEWS:10645 +#: ../build/NEWS:10680 msgid "" "`bpo-35872 `__: Uses the base Python " "executable when invoking venv in a virtual environment" msgstr "" -#: ../build/NEWS:10648 +#: ../build/NEWS:10683 msgid "" "`bpo-35873 `__: Prevents venv paths " "being inherited by child processes" msgstr "" -#: ../build/NEWS:10650 +#: ../build/NEWS:10685 msgid "" "`bpo-35299 `__: Fix sysconfig detection " "of the source directory and distutils handling of pyconfig.h during PGO " "profiling" msgstr "" -#: ../build/NEWS:10656 +#: ../build/NEWS:10691 msgid "" "`bpo-24310 `__: IDLE -- Document " "settings dialog font tab sample." msgstr "" -#: ../build/NEWS:10658 +#: ../build/NEWS:10693 msgid "" "`bpo-35833 `__: Revise IDLE doc for " "control codes sent to Shell. Add a code example block." msgstr "" -#: ../build/NEWS:10661 +#: ../build/NEWS:10696 msgid "" "`bpo-35689 `__: Add docstrings and " "unittests for colorizer.py." msgstr "" -#: ../build/NEWS:10665 +#: ../build/NEWS:10700 msgid "Python 3.8.0 alpha 1" msgstr "" -#: ../build/NEWS:10667 +#: ../build/NEWS:10702 msgid "*Release date: 2019-02-03*" msgstr "" -#: ../build/NEWS:10672 +#: ../build/NEWS:10707 msgid "" "`bpo-35746 `__: [CVE-2019-5010] Fix a " "NULL pointer deref in ssl module. The cert parser did not handle CRL " @@ -20494,7 +20448,7 @@ msgid "" "reported by Colin Read and Nicolas Edet of Cisco." msgstr "" -#: ../build/NEWS:10678 +#: ../build/NEWS:10713 msgid "" "`bpo-34812 `__: The :option:`-I` command " "line option (run Python in isolated mode) is now also copied by the :mod:" @@ -20503,7 +20457,7 @@ msgid "" "by :option:`-I`) were copied." msgstr "" -#: ../build/NEWS:10684 +#: ../build/NEWS:10719 msgid "" "`bpo-34791 `__: The xml.sax and xml.dom." "domreg no longer use environment variables to override parser " @@ -20511,7 +20465,7 @@ msgid "" "arguments." msgstr "" -#: ../build/NEWS:10688 +#: ../build/NEWS:10723 msgid "" "`bpo-17239 `__: The xml.sax and xml.dom." "minidom parsers no longer processes external entities by default. External " @@ -20519,46 +20473,46 @@ msgid "" "connections." msgstr "" -#: ../build/NEWS:10692 +#: ../build/NEWS:10727 msgid "" "`bpo-34623 `__: CVE-2018-14647: The C " "accelerated _elementtree module now initializes hash randomization salt from " "_Py_HashSecret instead of libexpat's default CSPRNG." msgstr "" -#: ../build/NEWS:10696 +#: ../build/NEWS:10731 msgid "" "`bpo-34405 `__: Updated to OpenSSL " "1.1.0i for Windows builds." msgstr "" -#: ../build/NEWS:10698 +#: ../build/NEWS:10733 msgid "" "`bpo-33871 `__: Fixed sending the part " "of the file in :func:`os.sendfile` on macOS. Using the *trailers* argument " "could cause sending more bytes from the input file than was specified." msgstr "" -#: ../build/NEWS:10702 +#: ../build/NEWS:10737 msgid "" "`bpo-32533 `__: Fixed thread-safety of " "error handling in _ssl." msgstr "" -#: ../build/NEWS:10704 ../build/NEWS:14203 +#: ../build/NEWS:10739 ../build/NEWS:14238 msgid "" "`bpo-33136 `__: Harden ssl module " "against LibreSSL CVE-2018-8970. X509_VERIFY_PARAM_set1_host() is called with " "an explicit namelen. A new test ensures that NULL bytes are not allowed." msgstr "" -#: ../build/NEWS:10708 ../build/NEWS:14207 ../build/NEWS:18600 +#: ../build/NEWS:10743 ../build/NEWS:14242 ../build/NEWS:18635 msgid "" "`bpo-33001 `__: Minimal fix to prevent " "buffer overrun in os.symlink on Windows" msgstr "" -#: ../build/NEWS:10710 ../build/NEWS:14209 ../build/NEWS:18602 +#: ../build/NEWS:10745 ../build/NEWS:14244 ../build/NEWS:18637 msgid "" "`bpo-32981 `__: Regexes in difflib and " "poplib were vulnerable to catastrophic backtracking. These regexes formed " @@ -20566,20 +20520,20 @@ msgid "" "CVE-2018-1060 and CVE-2018-1061. Patch by Jamie Davis." msgstr "" -#: ../build/NEWS:10715 ../build/NEWS:14421 +#: ../build/NEWS:10750 ../build/NEWS:14456 msgid "" "`bpo-28414 `__: The ssl module now " "allows users to perform their own IDN en/decoding when using SNI." msgstr "" -#: ../build/NEWS:10721 +#: ../build/NEWS:10756 msgid "" "`bpo-35877 `__: Make parenthesis " "optional for named expressions in while statement. Patch by Karthikeyan " "Singaravelan." msgstr "" -#: ../build/NEWS:10724 +#: ../build/NEWS:10759 msgid "" "`bpo-35814 `__: Allow same right hand " "side expressions in annotated assignments as in normal ones. In particular, " @@ -20587,7 +20541,7 @@ msgid "" "allowed." msgstr "" -#: ../build/NEWS:10728 +#: ../build/NEWS:10763 msgid "" "`bpo-35766 `__: Add the option to parse " "PEP 484 type comments in the ast module. (Off by default.) This is merging " @@ -20595,26 +20549,26 @@ msgid "" "github.com/python/typed_ast)." msgstr "" -#: ../build/NEWS:10733 +#: ../build/NEWS:10768 msgid "" "`bpo-35713 `__: Reorganize Python " "initialization to get working exceptions and sys.stderr earlier." msgstr "" -#: ../build/NEWS:10736 +#: ../build/NEWS:10771 msgid "" "`bpo-33416 `__: Add end line and end " "column position information to the Python AST nodes. This is a C-level " "backwards incompatible change." msgstr "" -#: ../build/NEWS:10739 +#: ../build/NEWS:10774 msgid "" "`bpo-35720 `__: Fixed a minor memory " "leak in pymain_parse_cmdline_impl function in Modules/main.c" msgstr "" -#: ../build/NEWS:10742 +#: ../build/NEWS:10777 msgid "" "`bpo-35634 `__: ``func(**kwargs)`` will " "now raise an error when ``kwargs`` is a mapping containing multiple entries " @@ -20622,20 +20576,20 @@ msgid "" "are passed before ``**kwargs`` since Python 3.6." msgstr "" -#: ../build/NEWS:10747 +#: ../build/NEWS:10782 msgid "" "`bpo-35623 `__: Fix a crash when sorting " "very long lists. Patch by Stephan Hohe." msgstr "" -#: ../build/NEWS:10750 +#: ../build/NEWS:10785 msgid "" "`bpo-35214 `__: clang Memory Sanitizer " "build instrumentation was added to work around false positives from posix, " "socket, time, test_io, and test_faulthandler." msgstr "" -#: ../build/NEWS:10754 +#: ../build/NEWS:10789 msgid "" "`bpo-35560 `__: Fix an assertion error " "in :func:`format` in debug build for floating point formatting with \"n\" " @@ -20643,7 +20597,7 @@ msgid "" "by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:10758 +#: ../build/NEWS:10793 msgid "" "`bpo-35552 `__: Format characters ``%s`` " "and ``%V`` in :c:func:`PyUnicode_FromFormat` and ``%s`` in :c:func:" @@ -20651,38 +20605,38 @@ msgid "" "specified." msgstr "" -#: ../build/NEWS:10762 +#: ../build/NEWS:10797 msgid "" "`bpo-35504 `__: Fix segfaults and :exc:" "`SystemError`\\ s when deleting certain attributes. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:10765 +#: ../build/NEWS:10800 msgid "" "`bpo-35504 `__: Fixed a SystemError when " "delete the characters_written attribute of an OSError." msgstr "" -#: ../build/NEWS:10768 +#: ../build/NEWS:10803 msgid "" "`bpo-35494 `__: Improved syntax error " "messages for unbalanced parentheses in f-string." msgstr "" -#: ../build/NEWS:10771 +#: ../build/NEWS:10806 msgid "" "`bpo-35444 `__: Fixed error handling in " "pickling methods when fail to look up builtin \"getattr\". Sped up pickling " "iterators." msgstr "" -#: ../build/NEWS:10774 +#: ../build/NEWS:10809 msgid "" "`bpo-35436 `__: Fix various issues with " "memory allocation error handling. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:10777 +#: ../build/NEWS:10812 msgid "" "`bpo-35423 `__: Separate the signal " "handling trigger in the eval loop from the \"pending calls\" machinery. " @@ -20690,7 +20644,7 @@ msgid "" "insignificant." msgstr "" -#: ../build/NEWS:10781 +#: ../build/NEWS:10816 msgid "" "`bpo-35357 `__: Internal attributes' " "names of unittest.mock._Call and unittest.mock.MagicProxy (name, parent & " @@ -20698,20 +20652,20 @@ msgid "" "widely used object attributes. Fixed minor typo in test function name." msgstr "" -#: ../build/NEWS:10786 +#: ../build/NEWS:10821 msgid "" "`bpo-35372 `__: Fixed the code page " "decoder for input longer than 2 GiB containing undecodable bytes." msgstr "" -#: ../build/NEWS:10789 +#: ../build/NEWS:10824 msgid "" "`bpo-35336 `__: Fix " "PYTHONCOERCECLOCALE=1 environment variable: only coerce the C locale if the " "LC_CTYPE locale is \"C\"." msgstr "" -#: ../build/NEWS:10792 +#: ../build/NEWS:10827 msgid "" "`bpo-31241 `__: The *lineno* and " "*col_offset* attributes of AST nodes for list comprehensions, generator " @@ -20720,33 +20674,33 @@ msgid "" "first item." msgstr "" -#: ../build/NEWS:10797 +#: ../build/NEWS:10832 msgid "" "`bpo-33954 `__: For :meth:`str.format`, :" "meth:`float.__format__` and :meth:`complex.__format__` methods for non-ASCII " "decimal point when using the \"n\" formatter." msgstr "" -#: ../build/NEWS:10801 +#: ../build/NEWS:10836 msgid "" "`bpo-35269 `__: Fix a possible segfault " "involving a newly-created coroutine. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:10804 +#: ../build/NEWS:10839 msgid "" "`bpo-35224 `__: Implement :pep:`572` " "(assignment expressions). Patch by Emily Morehouse." msgstr "" -#: ../build/NEWS:10807 +#: ../build/NEWS:10842 msgid "" "`bpo-32492 `__: Speed up :class:" "`namedtuple` attribute access by 1.6x using a C fast-path for the name " "descriptors. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:10810 +#: ../build/NEWS:10845 msgid "" "`bpo-35214 `__: Fixed an out of bounds " "memory access when parsing a truncated unicode escape sequence at the end of " @@ -20754,7 +20708,7 @@ msgid "" "memory allocation." msgstr "" -#: ../build/NEWS:10814 +#: ../build/NEWS:10849 msgid "" "`bpo-35214 `__: The interpreter and " "extension modules have had annotations added so that they work properly " @@ -20763,7 +20717,7 @@ msgid "" "perform." msgstr "" -#: ../build/NEWS:10819 +#: ../build/NEWS:10854 msgid "" "`bpo-35193 `__: Fix an off by one error " "in the bytecode peephole optimizer where it could read bytes beyond the end " @@ -20771,39 +20725,39 @@ msgid "" "in every release of Python 3.6 and 3.7 until now." msgstr "" -#: ../build/NEWS:10824 +#: ../build/NEWS:10859 msgid "" "`bpo-35169 `__: Improved error messages " "for forbidden assignments." msgstr "" -#: ../build/NEWS:10826 +#: ../build/NEWS:10861 msgid "" "`bpo-34022 `__: Fix handling of hash-" "based bytecode files in :mod:`zipimport`. Patch by Elvis Pranskevichus." msgstr "" -#: ../build/NEWS:10829 +#: ../build/NEWS:10864 msgid "" "`bpo-28401 `__: Debug builds will no " "longer to attempt to import extension modules built for the ABI as they were " "never compatible to begin with. Patch by Stefano Rivera." msgstr "" -#: ../build/NEWS:10833 +#: ../build/NEWS:10868 msgid "" "`bpo-29341 `__: Clarify in the " "docstrings of :mod:`os` methods that path-like objects are also accepted as " "input parameters." msgstr "" -#: ../build/NEWS:10836 +#: ../build/NEWS:10871 msgid "" "`bpo-35050 `__: :mod:`socket`: Fix off-" "by-one bug in length check for ``AF_ALG`` name and type." msgstr "" -#: ../build/NEWS:10839 +#: ../build/NEWS:10874 msgid "" "`bpo-29743 `__: Raise :exc:`ValueError` " "instead of :exc:`OverflowError` in case of a negative ``_length_`` in a :" @@ -20811,46 +20765,46 @@ msgid "" "`AttributeError` for non-integer ``_length_``. Original patch by Oren Milman." msgstr "" -#: ../build/NEWS:10844 +#: ../build/NEWS:10879 msgid "" "`bpo-16806 `__: Fix ``lineno`` and " "``col_offset`` for multi-line string tokens." msgstr "" -#: ../build/NEWS:10846 +#: ../build/NEWS:10881 msgid "" "`bpo-35029 `__: :exc:`SyntaxWarning` " "raised as an exception at code generation time will be now replaced with a :" "exc:`SyntaxError` for better error reporting." msgstr "" -#: ../build/NEWS:10850 +#: ../build/NEWS:10885 msgid "" "`bpo-34983 `__: Expose :meth:`symtable." "Symbol.is_nonlocal` in the symtable module. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:10853 +#: ../build/NEWS:10888 msgid "" "`bpo-34974 `__: :class:`bytes` and :" "class:`bytearray` constructors no longer convert unexpected exceptions (e." "g. :exc:`MemoryError` and :exc:`KeyboardInterrupt`) to :exc:`TypeError`." msgstr "" -#: ../build/NEWS:10857 +#: ../build/NEWS:10892 msgid "" "`bpo-34939 `__: Allow annotated names in " "module namespace that are declared global before the annotation happens. " "Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:10860 +#: ../build/NEWS:10895 msgid "" "`bpo-34973 `__: Fixed crash in :func:" "`bytes` when the :class:`list` argument is mutated while it is iterated." msgstr "" -#: ../build/NEWS:10863 +#: ../build/NEWS:10898 msgid "" "`bpo-34876 `__: The *lineno* and " "*col_offset* attributes of the AST for decorated function and class refer " @@ -20860,34 +20814,34 @@ msgid "" "of child AST nodes can precede the position of the parent AST node." msgstr "" -#: ../build/NEWS:10870 +#: ../build/NEWS:10905 msgid "" "`bpo-34879 `__: Fix a possible null " "pointer dereference in bytesobject.c. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:10873 +#: ../build/NEWS:10908 msgid "" "`bpo-34784 `__: Fix the implementation " "of PyStructSequence_NewType in order to create heap allocated " "StructSequences." msgstr "" -#: ../build/NEWS:10876 +#: ../build/NEWS:10911 msgid "" "`bpo-32912 `__: A :exc:`SyntaxWarning` " "is now emitted instead of a :exc:`DeprecationWarning` for invalid escape " "sequences in string and bytes literals." msgstr "" -#: ../build/NEWS:10880 +#: ../build/NEWS:10915 msgid "" "`bpo-34854 `__: Fixed a crash in " "compiling string annotations containing a lambda with a keyword-only " "argument that doesn't have a default value." msgstr "" -#: ../build/NEWS:10883 +#: ../build/NEWS:10918 msgid "" "`bpo-34850 `__: The compiler now " "produces a :exc:`SyntaxWarning` when identity checks (``is`` and ``is not``) " @@ -20897,13 +20851,13 @@ msgid "" "instead." msgstr "" -#: ../build/NEWS:10889 +#: ../build/NEWS:10924 msgid "" "`bpo-34824 `__: Fix a possible null " "pointer dereference in Modules/_ssl.c. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:10892 +#: ../build/NEWS:10927 msgid "" "`bpo-30156 `__: The C function " "``property_descr_get()`` uses a \"cached\" tuple to optimize function calls. " @@ -20912,13 +20866,13 @@ msgid "" "causes 3 different crashes last years." msgstr "" -#: ../build/NEWS:10897 +#: ../build/NEWS:10932 msgid "" "`bpo-34762 `__: Fix contextvars C API to " "use PyObject* pointer types." msgstr "" -#: ../build/NEWS:10899 +#: ../build/NEWS:10934 msgid "" "`bpo-34751 `__: The hash function for " "tuples is now based on xxHash which gives better collision results on " @@ -20927,65 +20881,65 @@ msgid "" "contributions by Tim Peters." msgstr "" -#: ../build/NEWS:10904 +#: ../build/NEWS:10939 msgid "" "`bpo-34735 `__: Fix a memory leak in " "Modules/timemodule.c. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:10907 +#: ../build/NEWS:10942 msgid "" "`bpo-34683 `__: Fixed a bug where some " "SyntaxError error pointed to locations that were off-by-one." msgstr "" -#: ../build/NEWS:10910 +#: ../build/NEWS:10945 msgid "" "`bpo-34651 `__: Only allow the main " "interpreter to fork. The avoids the possibility of affecting the main " "interpreter, which is critical to operation of the runtime." msgstr "" -#: ../build/NEWS:10914 +#: ../build/NEWS:10949 msgid "" "`bpo-34653 `__: Remove unused function " "PyParser_SimpleParseStringFilename." msgstr "" -#: ../build/NEWS:10916 +#: ../build/NEWS:10951 msgid "" "`bpo-32236 `__: Warn that line buffering " "is not supported if :func:`open` is called with binary mode and " "``buffering=1``." msgstr "" -#: ../build/NEWS:10919 +#: ../build/NEWS:10954 msgid "" "`bpo-34641 `__: Further restrict the " "syntax of the left-hand side of keyword arguments in function calls. In " "particular, ``f((keyword)=arg)`` is now disallowed." msgstr "" -#: ../build/NEWS:10923 +#: ../build/NEWS:10958 msgid "" "`bpo-34637 `__: Make the *start* " "argument to *sum()* visible as a keyword argument." msgstr "" -#: ../build/NEWS:10926 +#: ../build/NEWS:10961 msgid "" "`bpo-1621 `__: Do not assume signed " "integer overflow behavior (C undefined behavior) when performing set hash " "table resizing." msgstr "" -#: ../build/NEWS:10929 +#: ../build/NEWS:10964 msgid "" "`bpo-34588 `__: Fix an off-by-one in the " "recursive call pruning feature of traceback formatting." msgstr "" -#: ../build/NEWS:10932 +#: ../build/NEWS:10967 msgid "" "`bpo-34485 `__: On Windows, the LC_CTYPE " "is now set to the user preferred locale at startup. Previously, the LC_CTYPE " @@ -20993,7 +20947,7 @@ msgid "" "\"\") or setlocale(LC_ALL, \"\")." msgstr "" -#: ../build/NEWS:10936 +#: ../build/NEWS:10971 msgid "" "`bpo-34485 `__: Standard streams like " "sys.stdout now use the \"surrogateescape\" error handler, instead of \"strict" @@ -21001,14 +20955,14 @@ msgid "" "is disabled)." msgstr "" -#: ../build/NEWS:10940 +#: ../build/NEWS:10975 msgid "" "`bpo-34485 `__: Fix the error handler of " "standard streams like sys.stdout: PYTHONIOENCODING=\":\" is now ignored " "instead of setting the error handler to \"strict\"." msgstr "" -#: ../build/NEWS:10944 +#: ../build/NEWS:10979 msgid "" "`bpo-34485 `__: Python now gets the " "locale encoding with C code to initialize the encoding of standard streams " @@ -21018,7 +20972,7 @@ msgid "" "startup by default." msgstr "" -#: ../build/NEWS:10950 +#: ../build/NEWS:10985 msgid "" "`bpo-34527 `__: On FreeBSD, " "Py_DecodeLocale() and Py_EncodeLocale() now also forces the ASCII encoding " @@ -21026,26 +20980,26 @@ msgid "" "\"." msgstr "" -#: ../build/NEWS:10954 +#: ../build/NEWS:10989 msgid "" "`bpo-34527 `__: The UTF-8 Mode is now " "also enabled by the \"POSIX\" locale, not only by the \"C\" locale." msgstr "" -#: ../build/NEWS:10957 +#: ../build/NEWS:10992 msgid "" "`bpo-34403 `__: On HP-UX with C or POSIX " "locale, sys.getfilesystemencoding() now returns \"ascii\" instead of " "\"roman8\" (when the UTF-8 Mode is disabled and the C locale is not coerced)." msgstr "" -#: ../build/NEWS:10961 +#: ../build/NEWS:10996 msgid "" "`bpo-34523 `__: The Python filesystem " "encoding is now read earlier during the Python initialization." msgstr "" -#: ../build/NEWS:10964 +#: ../build/NEWS:10999 msgid "" "`bpo-12458 `__: Tracebacks show now " "correct line number for subexpressions in multiline expressions. Tracebacks " @@ -21053,173 +21007,173 @@ msgid "" "of the line number of the last subexpression." msgstr "" -#: ../build/NEWS:10969 +#: ../build/NEWS:11004 msgid "" "`bpo-34408 `__: Prevent a null pointer " "dereference and resource leakage in ``PyInterpreterState_New()``." msgstr "" -#: ../build/NEWS:10972 +#: ../build/NEWS:11007 msgid "" "`bpo-34400 `__: Fix undefined behavior " "in parsetok.c. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:10974 +#: ../build/NEWS:11009 msgid "" "`bpo-33073 `__: Added as_integer_ratio " "to ints to make them more interoperable with floats." msgstr "" -#: ../build/NEWS:10977 +#: ../build/NEWS:11012 msgid "" "`bpo-34377 `__: Update valgrind " "suppression list to use ``_PyObject_Free``/``_PyObject_Realloc`` instead of " "``PyObject_Free``/``PyObject_Realloc``." msgstr "" -#: ../build/NEWS:10981 +#: ../build/NEWS:11016 msgid "" "`bpo-34353 `__: Added the \"socket\" " "option in the `stat.filemode()` Python implementation to match the C " "implementation." msgstr "" -#: ../build/NEWS:10984 +#: ../build/NEWS:11019 msgid "" "`bpo-34320 `__: Fix ``dict(od)`` didn't " "copy iteration order of OrderedDict." msgstr "" -#: ../build/NEWS:10986 +#: ../build/NEWS:11021 msgid "" "`bpo-34113 `__: Fixed crash on debug " "builds when opcode stack was adjusted with negative numbers. Patch by " "Constantin Petrisor." msgstr "" -#: ../build/NEWS:10989 +#: ../build/NEWS:11024 msgid "" "`bpo-34100 `__: Compiler now merges " "constants in tuples and frozensets recursively. Code attributes like " "``co_names`` are merged too." msgstr "" -#: ../build/NEWS:10992 +#: ../build/NEWS:11027 msgid "" "`bpo-34151 `__: Performance of list " "concatenation, repetition and slicing operations is slightly improved. Patch " "by Sergey Fedoseev." msgstr "" -#: ../build/NEWS:10995 +#: ../build/NEWS:11030 msgid "" "`bpo-34170 `__: -X dev: it is now " "possible to override the memory allocator using PYTHONMALLOC even if the " "developer mode is enabled." msgstr "" -#: ../build/NEWS:10998 +#: ../build/NEWS:11033 msgid "" "`bpo-33237 `__: Improved :exc:" "`AttributeError` message for partially initialized module." msgstr "" -#: ../build/NEWS:11001 +#: ../build/NEWS:11036 msgid "" "`bpo-34149 `__: Fix min and max " "functions to get default behavior when key is None." msgstr "" -#: ../build/NEWS:11004 +#: ../build/NEWS:11039 msgid "" "`bpo-34125 `__: Profiling of unbound " "built-in methods now works when ``**kwargs`` is given." msgstr "" -#: ../build/NEWS:11007 +#: ../build/NEWS:11042 msgid "" "`bpo-34141 `__: Optimized pickling " "atomic types (None, bool, int, float, bytes, str)." msgstr "" -#: ../build/NEWS:11010 +#: ../build/NEWS:11045 msgid "" "`bpo-34126 `__: Fix crashes when " "profiling certain invalid calls of unbound methods. Patch by Jeroen Demeyer." msgstr "" -#: ../build/NEWS:11013 +#: ../build/NEWS:11048 msgid "" "`bpo-24618 `__: Fixed reading invalid " "memory when create the code object with too small varnames tuple or too " "large argument counts." msgstr "" -#: ../build/NEWS:11016 +#: ../build/NEWS:11051 msgid "" "`bpo-34068 `__: In :meth:`io.IOBase." "close`, ensure that the :attr:`~io.IOBase.closed` attribute is not set with " "a live exception. Patch by Zackery Spytz and Serhiy Storchaka." msgstr "" -#: ../build/NEWS:11020 +#: ../build/NEWS:11055 msgid "" "`bpo-34087 `__: Fix buffer overflow " "while converting unicode to numeric values." msgstr "" -#: ../build/NEWS:11022 +#: ../build/NEWS:11057 msgid "" "`bpo-34080 `__: Fixed a memory leak in " "the compiler when it raised some uncommon errors during tokenizing." msgstr "" -#: ../build/NEWS:11025 +#: ../build/NEWS:11060 msgid "" "`bpo-34066 `__: Disabled interruption by " "Ctrl-C between calling ``open()`` and entering a **with** block in ``with " "open()``." msgstr "" -#: ../build/NEWS:11028 +#: ../build/NEWS:11063 msgid "" "`bpo-34042 `__: Fix dict.copy() to " "maintain correct total refcount (as reported by sys.gettotalrefcount())." msgstr "" -#: ../build/NEWS:11031 +#: ../build/NEWS:11066 msgid "" "`bpo-33418 `__: Fix potential memory " "leak in function object when it creates reference cycle." msgstr "" -#: ../build/NEWS:11034 +#: ../build/NEWS:11069 msgid "" "`bpo-33985 `__: Implement contextvars." "ContextVar.name attribute." msgstr "" -#: ../build/NEWS:11036 +#: ../build/NEWS:11071 msgid "" "`bpo-33956 `__: Update vendored Expat " "library copy to version 2.2.5." msgstr "" -#: ../build/NEWS:11038 +#: ../build/NEWS:11073 msgid "" "`bpo-24596 `__: Decref the module object " "in :c:func:`PyRun_SimpleFileExFlags` before calling :c:func:" "`PyErr_Print()`. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:11041 +#: ../build/NEWS:11076 msgid "" "`bpo-33451 `__: Close directly executed " "pyc files before calling ``PyEval_EvalCode()``." msgstr "" -#: ../build/NEWS:11044 +#: ../build/NEWS:11079 msgid "" "`bpo-1617161 `__: The hash of :class:" "`BuiltinMethodType` instances (methods of built-in classes) now depends on " @@ -21231,21 +21185,21 @@ msgid "" "longer support ordering." msgstr "" -#: ../build/NEWS:11052 +#: ../build/NEWS:11087 msgid "" "`bpo-33824 `__: Fix \"LC_ALL=C python3.7 " "-V\": reset properly the command line parser when the encoding changes after " "reading the Python configuration." msgstr "" -#: ../build/NEWS:11055 ../build/NEWS:13701 +#: ../build/NEWS:11090 ../build/NEWS:13736 msgid "" "`bpo-33803 `__: Fix a crash in hamt.c " "caused by enabling GC tracking for an object that hadn't all of its fields " "set to NULL." msgstr "" -#: ../build/NEWS:11058 +#: ../build/NEWS:11093 msgid "" "`bpo-33738 `__: Seven macro " "incompatibilities with the Limited API were fixed, and the macros :c:func:" @@ -21253,40 +21207,40 @@ msgid "" "were added as functions. A script for automatic macro checks was added." msgstr "" -#: ../build/NEWS:11063 ../build/NEWS:18273 +#: ../build/NEWS:11098 ../build/NEWS:18308 msgid "" "`bpo-33786 `__: Fix asynchronous " "generators to handle GeneratorExit in athrow() correctly" msgstr "" -#: ../build/NEWS:11066 +#: ../build/NEWS:11101 msgid "" "`bpo-30167 `__: " "``PyRun_SimpleFileExFlags`` removes ``__cached__`` from module in addition " "to ``__file__``." msgstr "" -#: ../build/NEWS:11069 ../build/NEWS:13704 +#: ../build/NEWS:11104 ../build/NEWS:13739 msgid "" "`bpo-33706 `__: Fix a crash in Python " "initialization when parsing the command line options. Thanks Christoph " "Gohlke for the bug report and the fix!" msgstr "" -#: ../build/NEWS:11072 +#: ../build/NEWS:11107 msgid "" "`bpo-33597 `__: Reduce ``PyGC_Head`` " "size from 3 words to 2 words." msgstr "" -#: ../build/NEWS:11074 ../build/NEWS:13707 ../build/NEWS:18276 +#: ../build/NEWS:11109 ../build/NEWS:13742 ../build/NEWS:18311 msgid "" "`bpo-30654 `__: Fixed reset of the " "SIGINT handler to SIG_DFL on interpreter shutdown even when there was a " "custom handler set previously. Patch by Philipp Kerling." msgstr "" -#: ../build/NEWS:11078 ../build/NEWS:13813 ../build/NEWS:18280 +#: ../build/NEWS:11113 ../build/NEWS:13848 ../build/NEWS:18315 msgid "" "`bpo-33622 `__: Fixed a leak when the " "garbage collector fails to add an object with the ``__del__`` method or " @@ -21294,13 +21248,13 @@ msgid "" "can now be called when an exception is set and preserves it." msgstr "" -#: ../build/NEWS:11083 +#: ../build/NEWS:11118 msgid "" "`bpo-33462 `__: Make dict and dict views " "reversible. Patch by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:11085 +#: ../build/NEWS:11120 msgid "" "`bpo-23722 `__: A :exc:`RuntimeError` is " "now raised when the custom metaclass doesn't provide the ``__classcell__`` " @@ -21308,7 +21262,7 @@ msgid "" "`DeprecationWarning` was emitted in Python 3.6--3.7." msgstr "" -#: ../build/NEWS:11090 +#: ../build/NEWS:11125 msgid "" "`bpo-33499 `__: Add :envvar:" "`PYTHONPYCACHEPREFIX` environment variable and :option:`-X` " @@ -21316,120 +21270,120 @@ msgid "" "for writing module bytecode cache files." msgstr "" -#: ../build/NEWS:11094 +#: ../build/NEWS:11129 msgid "" "`bpo-25711 `__: The :mod:`zipimport` " "module has been rewritten in pure Python." msgstr "" -#: ../build/NEWS:11096 ../build/NEWS:13818 +#: ../build/NEWS:11131 ../build/NEWS:13853 msgid "" "`bpo-33509 `__: Fix module_globals " "parameter of warnings.warn_explicit(): don't crash if module_globals is not " "a dict." msgstr "" -#: ../build/NEWS:11099 ../build/NEWS:13711 ../build/NEWS:18285 +#: ../build/NEWS:11134 ../build/NEWS:13746 ../build/NEWS:18320 msgid "" "`bpo-31849 `__: Fix signed/unsigned " "comparison warning in pyhash.c." msgstr "" -#: ../build/NEWS:11101 ../build/NEWS:13825 +#: ../build/NEWS:11136 ../build/NEWS:13860 msgid "" "`bpo-33475 `__: Fixed miscellaneous bugs " "in converting annotations to strings and optimized parentheses in the string " "representation." msgstr "" -#: ../build/NEWS:11104 +#: ../build/NEWS:11139 msgid "" "`bpo-20104 `__: Added support for the " "`setpgroup`, `resetids`, `setsigmask`, `setsigdef` and `scheduler` " "parameters of `posix_spawn`. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:11108 ../build/NEWS:13828 ../build/NEWS:18287 +#: ../build/NEWS:11143 ../build/NEWS:13863 ../build/NEWS:18322 msgid "" "`bpo-33391 `__: Fix a leak in " "set_symmetric_difference()." msgstr "" -#: ../build/NEWS:11110 ../build/NEWS:14026 +#: ../build/NEWS:11145 ../build/NEWS:14061 msgid "" "`bpo-33363 `__: Raise a SyntaxError for " "``async with`` and ``async for`` statements outside of async functions." msgstr "" -#: ../build/NEWS:11113 ../build/NEWS:13830 ../build/NEWS:18289 +#: ../build/NEWS:11148 ../build/NEWS:13865 ../build/NEWS:18324 msgid "" "`bpo-28055 `__: Fix unaligned accesses " "in siphash24(). Patch by Rolf Eike Beer." msgstr "" -#: ../build/NEWS:11115 ../build/NEWS:14029 +#: ../build/NEWS:11150 ../build/NEWS:14064 msgid "" "`bpo-33128 `__: Fix a bug that causes " "PathFinder to appear twice on sys.meta_path. Patch by Pablo Galindo Salgado." msgstr "" -#: ../build/NEWS:11118 +#: ../build/NEWS:11153 msgid "" "`bpo-33331 `__: Modules imported last " "are now cleared first at interpreter shutdown." msgstr "" -#: ../build/NEWS:11121 ../build/NEWS:14032 +#: ../build/NEWS:11156 ../build/NEWS:14067 msgid "" "`bpo-33312 `__: Fixed clang ubsan " "(undefined behavior sanitizer) warnings in dictobject.c by adjusting how the " "internal struct _dictkeysobject shared keys structure is declared." msgstr "" -#: ../build/NEWS:11125 +#: ../build/NEWS:11160 msgid "" "`bpo-33305 `__: Improved syntax error " "messages for invalid numerical literals." msgstr "" -#: ../build/NEWS:11127 +#: ../build/NEWS:11162 msgid "" "`bpo-33306 `__: Improved syntax error " "messages for unbalanced parentheses." msgstr "" -#: ../build/NEWS:11129 +#: ../build/NEWS:11164 msgid "" "`bpo-33234 `__: The list constructor " "will pre-size and not over-allocate when the input length is known." msgstr "" -#: ../build/NEWS:11132 +#: ../build/NEWS:11167 msgid "" "`bpo-33270 `__: Intern the names for all " "anonymous code objects. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:11135 +#: ../build/NEWS:11170 msgid "" "`bpo-30455 `__: The C and Python code " "and the documentation related to tokens are now generated from a single " "source file :file:`Grammar/Tokens`." msgstr "" -#: ../build/NEWS:11138 +#: ../build/NEWS:11173 msgid "" "`bpo-33176 `__: Add a ``toreadonly()`` " "method to memoryviews." msgstr "" -#: ../build/NEWS:11140 ../build/NEWS:14036 ../build/NEWS:18291 +#: ../build/NEWS:11175 ../build/NEWS:14071 ../build/NEWS:18326 msgid "" "`bpo-33231 `__: Fix potential memory " "leak in ``normalizestring()``." msgstr "" -#: ../build/NEWS:11142 ../build/NEWS:14038 +#: ../build/NEWS:11177 ../build/NEWS:14073 msgid "" "`bpo-33205 `__: Change dict growth " "function from ``round_up_to_power_2(used*2+hashtable_size/2)`` to " @@ -21437,20 +21391,20 @@ msgid "" "``used == 0``. Now dict has more chance to be shrinked." msgstr "" -#: ../build/NEWS:11147 ../build/NEWS:14043 ../build/NEWS:18293 +#: ../build/NEWS:11182 ../build/NEWS:14078 ../build/NEWS:18328 msgid "" "`bpo-29922 `__: Improved error messages " "in 'async with' when ``__aenter__()`` or ``__aexit__()`` return non-" "awaitable object." msgstr "" -#: ../build/NEWS:11150 ../build/NEWS:14046 ../build/NEWS:18296 +#: ../build/NEWS:11185 ../build/NEWS:14081 ../build/NEWS:18331 msgid "" "`bpo-33199 `__: Fix ``ma_version_tag`` " "in dict implementation is uninitialized when copying from key-sharing dict." msgstr "" -#: ../build/NEWS:11153 ../build/NEWS:14217 +#: ../build/NEWS:11188 ../build/NEWS:14252 msgid "" "`bpo-33053 `__: When using the -m " "switch, sys.path[0] is now explicitly expanded as the *starting* working " @@ -21458,14 +21412,14 @@ msgid "" "from the current working directory at the time of the import)" msgstr "" -#: ../build/NEWS:11158 +#: ../build/NEWS:11193 msgid "" "`bpo-33138 `__: Changed standard error " "message for non-pickleable and non-copyable types. It now says \"cannot " "pickle\" instead of \"can't pickle\" or \"cannot serialize\"." msgstr "" -#: ../build/NEWS:11162 ../build/NEWS:14222 +#: ../build/NEWS:11197 ../build/NEWS:14257 msgid "" "`bpo-33018 `__: Improve consistency of " "errors raised by ``issubclass()`` when called with a non-class and an " @@ -21473,40 +21427,40 @@ msgid "" "by Josh Bronson." msgstr "" -#: ../build/NEWS:11166 +#: ../build/NEWS:11201 msgid "" "`bpo-33083 `__: ``math.factorial`` no " "longer accepts arguments that are not int-like. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:11169 +#: ../build/NEWS:11204 msgid "" "`bpo-33041 `__: Added new opcode :opcode:" "`END_ASYNC_FOR` and fixes the following issues:" msgstr "" -#: ../build/NEWS:11172 +#: ../build/NEWS:11207 msgid "" "Setting global :exc:`StopAsyncIteration` no longer breaks ``async for`` " "loops." msgstr "" -#: ../build/NEWS:11174 +#: ../build/NEWS:11209 msgid "Jumping into an ``async for`` loop is now disabled." msgstr "" -#: ../build/NEWS:11175 +#: ../build/NEWS:11210 msgid "Jumping out of an ``async for`` loop no longer corrupts the stack." msgstr "" -#: ../build/NEWS:11177 +#: ../build/NEWS:11212 msgid "" "`bpo-25750 `__: Fix rare Python crash " "due to bad refcounting in ``type_getattro()`` if a descriptor deletes itself " "from the class. Patch by Jeroen Demeyer." msgstr "" -#: ../build/NEWS:11181 +#: ../build/NEWS:11216 msgid "" "`bpo-33041 `__: Fixed bytecode " "generation for \"async for\" with a complex target. A StopAsyncIteration " @@ -21514,13 +21468,13 @@ msgid "" "the iteration." msgstr "" -#: ../build/NEWS:11185 ../build/NEWS:14228 ../build/NEWS:18610 +#: ../build/NEWS:11220 ../build/NEWS:14263 ../build/NEWS:18645 msgid "" "`bpo-33026 `__: Fixed jumping out of " "\"with\" block by setting f_lineno." msgstr "" -#: ../build/NEWS:11187 ../build/NEWS:14230 +#: ../build/NEWS:11222 ../build/NEWS:14265 msgid "" "`bpo-33005 `__: Fix a crash on fork when " "using a custom memory allocator (ex: using PYTHONMALLOC env var). " @@ -21528,7 +21482,7 @@ msgid "" "RAW memory allocator to allocate a new interpreters mutex on fork." msgstr "" -#: ../build/NEWS:11192 ../build/NEWS:13832 +#: ../build/NEWS:11227 ../build/NEWS:13867 msgid "" "`bpo-32911 `__: Due to unexpected " "compatibility issues discovered during downstream beta testing, reverted :" @@ -21538,26 +21492,26 @@ msgid "" "on patch by Inada Naoki." msgstr "" -#: ../build/NEWS:11198 ../build/NEWS:14235 ../build/NEWS:18612 +#: ../build/NEWS:11233 ../build/NEWS:14270 ../build/NEWS:18647 msgid "" "`bpo-17288 `__: Prevent jumps from " "'return' and 'exception' trace events." msgstr "" -#: ../build/NEWS:11200 +#: ../build/NEWS:11235 msgid "" "`bpo-32946 `__: Importing names from " "already imported module with \"from ... import ...\" is now 30% faster if " "the module is not a package." msgstr "" -#: ../build/NEWS:11203 +#: ../build/NEWS:11238 msgid "" "`bpo-32932 `__: Make error message more " "revealing when there are non-str objects in ``__all__``." msgstr "" -#: ../build/NEWS:11206 +#: ../build/NEWS:11241 msgid "" "`bpo-32925 `__: Optimized iterating and " "containing test for literal lists consisting of non-constants: ``x in [a, " @@ -21565,58 +21519,58 @@ msgid "" "optimized." msgstr "" -#: ../build/NEWS:11210 ../build/NEWS:14427 ../build/NEWS:18614 +#: ../build/NEWS:11245 ../build/NEWS:14462 ../build/NEWS:18649 msgid "" "`bpo-32889 `__: Update Valgrind " "suppression list to account for the rename of ``Py_ADDRESS_IN_RANG`` to " "``address_in_range``." msgstr "" -#: ../build/NEWS:11213 ../build/NEWS:14237 +#: ../build/NEWS:11248 ../build/NEWS:14272 msgid "" "`bpo-32836 `__: Don't use temporary " "variables in cases of list/dict/set comprehensions" msgstr "" -#: ../build/NEWS:11216 ../build/NEWS:14430 +#: ../build/NEWS:11251 ../build/NEWS:14465 msgid "" "`bpo-31356 `__: Remove the new API added " "in `bpo-31356 `__ (gc.ensure_disabled() " "context manager)." msgstr "" -#: ../build/NEWS:11219 ../build/NEWS:14433 +#: ../build/NEWS:11254 ../build/NEWS:14468 msgid "" "`bpo-32305 `__: For namespace packages, " "ensure that both ``__file__`` and ``__spec__.origin`` are set to None." msgstr "" -#: ../build/NEWS:11222 ../build/NEWS:14436 +#: ../build/NEWS:11257 ../build/NEWS:14471 msgid "" "`bpo-32303 `__: Make sure ``__spec__." "loader`` matches ``__loader__`` for namespace packages." msgstr "" -#: ../build/NEWS:11225 ../build/NEWS:14439 +#: ../build/NEWS:11260 ../build/NEWS:14474 msgid "" "`bpo-32711 `__: Fix the warning messages " "for Python/ast_unparse.c. Patch by Stéphane Wirtel" msgstr "" -#: ../build/NEWS:11228 ../build/NEWS:14442 ../build/NEWS:18625 +#: ../build/NEWS:11263 ../build/NEWS:14477 ../build/NEWS:18660 msgid "" "`bpo-32583 `__: Fix possible crashing in " "builtin Unicode decoders caused by write out-of-bound errors when using " "customized decode error handlers." msgstr "" -#: ../build/NEWS:11231 +#: ../build/NEWS:11266 msgid "" "`bpo-32489 `__: A :keyword:`continue` " "statement is now allowed in the :keyword:`finally` clause." msgstr "" -#: ../build/NEWS:11234 +#: ../build/NEWS:11269 msgid "" "`bpo-17611 `__: Simplified the " "interpreter loop by moving the logic of unrolling the stack of blocks into " @@ -21625,7 +21579,7 @@ msgid "" "keyword:`continue` and :keyword:`return`." msgstr "" -#: ../build/NEWS:11240 +#: ../build/NEWS:11275 msgid "" "Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, :opcode:" "`SETUP_LOOP` and :opcode:`SETUP_EXCEPT`. Added new opcodes :opcode:" @@ -21634,20 +21588,20 @@ msgid "" "`WITH_CLEANUP_START`." msgstr "" -#: ../build/NEWS:11246 +#: ../build/NEWS:11281 msgid "" "`bpo-32285 `__: New function unicodedata." "is_normalized, which can check whether a string is in a specific normal form." msgstr "" -#: ../build/NEWS:11249 +#: ../build/NEWS:11284 msgid "" "`bpo-10544 `__: Yield expressions are " "now disallowed in comprehensions and generator expressions except the " "expression for the outermost iterable." msgstr "" -#: ../build/NEWS:11252 +#: ../build/NEWS:11287 msgid "" "`bpo-32117 `__: Iterable unpacking is " "now allowed without parentheses in yield and return statements, e.g. ``yield " @@ -21655,7 +21609,7 @@ msgid "" "for added tests." msgstr "" -#: ../build/NEWS:11256 +#: ../build/NEWS:11291 msgid "" "`bpo-31902 `__: Fix the ``col_offset`` " "attribute for ast nodes ``ast.AsyncFor``, ``ast.AsyncFunctionDef``, and " @@ -21663,44 +21617,44 @@ msgid "" "``async``." msgstr "" -#: ../build/NEWS:11260 +#: ../build/NEWS:11295 msgid "" "`bpo-25862 `__: Fix assertion failures " "in the ``tell()`` method of ``io.TextIOWrapper``. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:11263 ../build/NEWS:13838 ../build/NEWS:18304 +#: ../build/NEWS:11298 ../build/NEWS:13873 ../build/NEWS:18339 msgid "" "`bpo-21983 `__: Fix a crash in `ctypes." "cast()` in case the type argument is a ctypes structured data type. Patch by " "Eryk Sun and Oren Milman." msgstr "" -#: ../build/NEWS:11266 +#: ../build/NEWS:11301 msgid "" "`bpo-31577 `__: Fix a crash in `os." "utime()` in case of a bad ns argument. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:11269 +#: ../build/NEWS:11304 msgid "" "`bpo-29832 `__: Remove references to " "'getsockaddrarg' from various socket error messages. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:11275 +#: ../build/NEWS:11310 msgid "" "`bpo-35845 `__: Add 'order' parameter to " "memoryview.tobytes()." msgstr "" -#: ../build/NEWS:11277 +#: ../build/NEWS:11312 msgid "" "`bpo-35864 `__: The _asdict() method for " "collections.namedtuple now returns a regular dict instead of an OrderedDict." msgstr "" -#: ../build/NEWS:11280 +#: ../build/NEWS:11315 msgid "" "`bpo-35537 `__: An ExitStack is now used " "internally within subprocess.Popen to clean up pipe file handles. No " @@ -21709,19 +21663,19 @@ msgid "" "by Giampaolo Rodola)" msgstr "" -#: ../build/NEWS:11285 +#: ../build/NEWS:11320 msgid "" "`bpo-35847 `__: RISC-V needed the " "CTYPES_PASS_BY_REF_HACK. Fixes ctypes Structure test_pass_by_value." msgstr "" -#: ../build/NEWS:11288 +#: ../build/NEWS:11323 msgid "" "`bpo-35813 `__: Shared memory submodule " "added to multiprocessing to avoid need for serialization between processes" msgstr "" -#: ../build/NEWS:11291 +#: ../build/NEWS:11326 msgid "" "`bpo-35780 `__: Fix lru_cache() errors " "arising in recursive, reentrant, or multi-threaded code. These errors could " @@ -21736,98 +21690,98 @@ msgid "" "the underlying user function was called." msgstr "" -#: ../build/NEWS:11303 +#: ../build/NEWS:11338 msgid "" "`bpo-35537 `__: :func:`os.posix_spawn` " "and :func:`os.posix_spawnp` now have a *setsid* parameter." msgstr "" -#: ../build/NEWS:11306 +#: ../build/NEWS:11341 msgid "" "`bpo-23846 `__: :class:`asyncio." "ProactorEventLoop` now catches and logs send errors when the self-pipe is " "full." msgstr "" -#: ../build/NEWS:11309 +#: ../build/NEWS:11344 msgid "" "`bpo-34323 `__: :mod:`asyncio`: Enhance " "``IocpProactor.close()`` log: wait 1 second before the first log, then log " "every second. Log also the number of seconds since ``close()`` was called." msgstr "" -#: ../build/NEWS:11313 +#: ../build/NEWS:11348 msgid "" "`bpo-35674 `__: Add a new :func:`os." "posix_spawnp` function. Patch by Joannah Nanjekye." msgstr "" -#: ../build/NEWS:11316 +#: ../build/NEWS:11351 msgid "" "`bpo-35733 `__: ``ast." "Constant(boolean)`` no longer an instance of :class:`ast.Num`. Patch by " "Anthony Sottile." msgstr "" -#: ../build/NEWS:11319 +#: ../build/NEWS:11354 msgid "" "`bpo-35726 `__: QueueHandler.prepare() " "now makes a copy of the record before modifying and enqueueing it, to avoid " "affecting other handlers in the chain." msgstr "" -#: ../build/NEWS:11323 +#: ../build/NEWS:11358 msgid "" "`bpo-35719 `__: Sped up multi-argument :" "mod:`math` functions atan2(), copysign(), remainder() and hypot() by " "1.3--2.5 times." msgstr "" -#: ../build/NEWS:11326 +#: ../build/NEWS:11361 msgid "" "`bpo-35717 `__: Fix KeyError exception " "raised when using enums and compile. Patch contributed by Rémi Lapeyre." msgstr "" -#: ../build/NEWS:11329 +#: ../build/NEWS:11364 msgid "" "`bpo-35699 `__: Fixed detection of " "Visual Studio Build Tools 2017 in distutils" msgstr "" -#: ../build/NEWS:11331 +#: ../build/NEWS:11366 msgid "" "`bpo-32710 `__: Fix memory leaks in " "asyncio ProactorEventLoop on overlapped operation failure." msgstr "" -#: ../build/NEWS:11334 +#: ../build/NEWS:11369 msgid "" "`bpo-35702 `__: The :data:`time." "CLOCK_UPTIME_RAW` constant is now available for macOS 10.12." msgstr "" -#: ../build/NEWS:11337 +#: ../build/NEWS:11372 msgid "" "`bpo-32710 `__: Fix a memory leak in " "asyncio in the ProactorEventLoop when ``ReadFile()`` or ``WSASend()`` " "overlapped operation fail immediately: release the internal buffer." msgstr "" -#: ../build/NEWS:11341 +#: ../build/NEWS:11376 msgid "" "`bpo-35682 `__: Fix ``asyncio." "ProactorEventLoop.sendfile()``: don't attempt to set the result of an " "internal future if it's already done." msgstr "" -#: ../build/NEWS:11344 +#: ../build/NEWS:11379 msgid "" "`bpo-35283 `__: Add a deprecated warning " "for the :meth:`threading.Thread.isAlive` method. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:11347 +#: ../build/NEWS:11382 msgid "" "`bpo-35664 `__: Improve operator." "itemgetter() performance by 33% with optimized argument handling and with " @@ -21835,52 +21789,52 @@ msgid "" "index into a tuple (which is the typical use case in the standard library)." msgstr "" -#: ../build/NEWS:11352 +#: ../build/NEWS:11387 msgid "" "`bpo-35643 `__: Fixed a SyntaxWarning: " "invalid escape sequence in Modules/_sha3/cleanup.py. Patch by Mickaël " "Schoentgen." msgstr "" -#: ../build/NEWS:11355 +#: ../build/NEWS:11390 msgid "" "`bpo-35619 `__: Improved support of " "custom data descriptors in :func:`help` and :mod:`pydoc`." msgstr "" -#: ../build/NEWS:11358 +#: ../build/NEWS:11393 msgid "" "`bpo-28503 `__: The `crypt` module now " "internally uses the `crypt_r()` library function instead of `crypt()` when " "available." msgstr "" -#: ../build/NEWS:11361 +#: ../build/NEWS:11396 msgid "" "`bpo-35614 `__: Fixed help() on " "metaclasses. Patch by Sanyam Khurana." msgstr "" -#: ../build/NEWS:11363 +#: ../build/NEWS:11398 msgid "" "`bpo-35568 `__: Expose ``raise(signum)`` " "as `raise_signal`" msgstr "" -#: ../build/NEWS:11365 +#: ../build/NEWS:11400 msgid "" "`bpo-35588 `__: The floor division and " "modulo operations and the :func:`divmod` function on :class:`fractions." "Fraction` types are 2--4x faster. Patch by Stefan Behnel." msgstr "" -#: ../build/NEWS:11369 +#: ../build/NEWS:11404 msgid "" "`bpo-35585 `__: Speed-up building enums " "by value, e.g. http.HTTPStatus(200)." msgstr "" -#: ../build/NEWS:11371 +#: ../build/NEWS:11406 msgid "" "`bpo-30561 `__: random.gammavariate(1.0, " "beta) now computes the same result as random.expovariate(1.0 / beta). This " @@ -21889,33 +21843,33 @@ msgid "" "variables than it used to." msgstr "" -#: ../build/NEWS:11376 +#: ../build/NEWS:11411 msgid "" "`bpo-35537 `__: The :mod:`subprocess` " "module can now use the :func:`os.posix_spawn` function in some cases for " "better performance." msgstr "" -#: ../build/NEWS:11379 +#: ../build/NEWS:11414 msgid "" "`bpo-35526 `__: Delaying the 'joke' of " "barry_as_FLUFL.mandatory to Python version 4.0" msgstr "" -#: ../build/NEWS:11382 +#: ../build/NEWS:11417 msgid "" "`bpo-35523 `__: Remove :mod:`ctypes` " "callback workaround: no longer create a callback at startup. Avoid SELinux " "alert on ``import ctypes`` and ``import uuid``." msgstr "" -#: ../build/NEWS:11386 +#: ../build/NEWS:11421 msgid "" "`bpo-31784 `__: :func:`uuid.uuid1` now " "calls :func:`time.time_ns` rather than ``int(time.time() * 1e9)``." msgstr "" -#: ../build/NEWS:11389 +#: ../build/NEWS:11424 msgid "" "`bpo-35513 `__: :class:`~unittest.runner." "TextTestRunner` of :mod:`unittest.runner` now uses :func:`time.perf_counter` " @@ -21923,14 +21877,14 @@ msgid "" "`time.time` can go backwards, whereas :func:`time.perf_counter` is monotonic." msgstr "" -#: ../build/NEWS:11395 +#: ../build/NEWS:11430 msgid "" "`bpo-35502 `__: Fixed reference leaks " "in :class:`xml.etree.ElementTree.TreeBuilder` in case of unfinished building " "of the tree (in particular when an error was raised during parsing XML)." msgstr "" -#: ../build/NEWS:11399 +#: ../build/NEWS:11434 msgid "" "`bpo-35348 `__: Make :func:`platform." "architecture` parsing of ``file`` command output more reliable: add the ``-" @@ -21938,7 +21892,7 @@ msgid "" "the C locale, and search also the \"shared object\" pattern." msgstr "" -#: ../build/NEWS:11404 +#: ../build/NEWS:11439 msgid "" "`bpo-35491 `__: :mod:`multiprocessing`: " "Add ``Pool.__repr__()`` and enhance ``BaseProcess.__repr__()`` (add pid and " @@ -21947,73 +21901,73 @@ msgid "" "``0``." msgstr "" -#: ../build/NEWS:11409 +#: ../build/NEWS:11444 msgid "" "`bpo-35477 `__: :meth:`multiprocessing." "Pool.__enter__` now fails if the pool is not running: ``with pool:`` fails " "if used more than once." msgstr "" -#: ../build/NEWS:11412 +#: ../build/NEWS:11447 msgid "" "`bpo-31446 `__: Copy command line that " "was passed to CreateProcessW since this function can change the content of " "the input buffer." msgstr "" -#: ../build/NEWS:11415 +#: ../build/NEWS:11450 msgid "" "`bpo-35471 `__: Python 2.4 dropped MacOS " "9 support. The macpath module was deprecated in Python 3.7. The module is " "now removed." msgstr "" -#: ../build/NEWS:11418 +#: ../build/NEWS:11453 msgid "" "`bpo-23057 `__: Unblock Proactor event " "loop when keyboard interrupt is received on Windows" msgstr "" -#: ../build/NEWS:11421 +#: ../build/NEWS:11456 msgid "" "`bpo-35052 `__: Fix xml.dom.minidom " "cloneNode() on a document with an entity: pass the correct arguments to the " "user data handler of an entity." msgstr "" -#: ../build/NEWS:11424 +#: ../build/NEWS:11459 msgid "" "`bpo-20239 `__: Allow repeated " "assignment deletion of :class:`unittest.mock.Mock` attributes. Patch by " "Pablo Galindo." msgstr "" -#: ../build/NEWS:11427 +#: ../build/NEWS:11462 msgid "" "`bpo-17185 `__: Set ``__signature__`` on " "mock for :mod:`inspect` to get signature. Patch by Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:11430 +#: ../build/NEWS:11465 msgid "" "`bpo-35445 `__: Memory errors during " "creating posix.environ no longer ignored." msgstr "" -#: ../build/NEWS:11432 +#: ../build/NEWS:11467 msgid "" "`bpo-35415 `__: Validate fileno= " "argument to socket.socket()." msgstr "" -#: ../build/NEWS:11434 +#: ../build/NEWS:11469 msgid "" "`bpo-35424 `__: :class:`multiprocessing." "Pool` destructor now emits :exc:`ResourceWarning` if the pool is still " "running." msgstr "" -#: ../build/NEWS:11437 +#: ../build/NEWS:11472 msgid "" "`bpo-35330 `__: When a :class:`Mock` " "instance was used to wrap an object, if `side_effect` is used in one of the " @@ -22022,14 +21976,14 @@ msgid "" "return_value." msgstr "" -#: ../build/NEWS:11442 +#: ../build/NEWS:11477 msgid "" "`bpo-35346 `__: Drop Mac OS 9 and " "Rhapsody support from the :mod:`platform` module. Rhapsody last release was " "in 2000. Mac OS 9 last release was in 2001." msgstr "" -#: ../build/NEWS:11446 +#: ../build/NEWS:11481 msgid "" "`bpo-10496 `__: :func:`~distutils.utils." "check_environ` of :mod:`distutils.utils` now catches :exc:`KeyError` on " @@ -22037,7 +21991,7 @@ msgid "" "in this case." msgstr "" -#: ../build/NEWS:11451 +#: ../build/NEWS:11486 msgid "" "`bpo-10496 `__: :func:`posixpath." "expanduser` now returns the input *path* unchanged if the ``HOME`` " @@ -22047,20 +22001,20 @@ msgid "" "the password database (if the user has no home directory)." msgstr "" -#: ../build/NEWS:11458 +#: ../build/NEWS:11493 msgid "" "`bpo-35389 `__: :func:`platform." "libc_ver` now uses ``os.confstr('CS_GNU_LIBC_VERSION')`` if available and " "the *executable* parameter is not set." msgstr "" -#: ../build/NEWS:11462 +#: ../build/NEWS:11497 msgid "" "`bpo-35394 `__: Add empty slots to " "asyncio abstract protocols." msgstr "" -#: ../build/NEWS:11464 +#: ../build/NEWS:11499 msgid "" "`bpo-35310 `__: Fix a bug in :func:" "`select.select` where, in some cases, the file descriptor sequences were " @@ -22069,32 +22023,32 @@ msgid "" "return empty lists if a timeout has occurred. Patch by Oran Avraham." msgstr "" -#: ../build/NEWS:11470 +#: ../build/NEWS:11505 msgid "" "`bpo-35380 `__: Enable TCP_NODELAY on " "Windows for proactor asyncio event loop." msgstr "" -#: ../build/NEWS:11472 +#: ../build/NEWS:11507 msgid "" "`bpo-35341 `__: Add generic version of " "``collections.OrderedDict`` to the ``typing`` module. Patch by Ismo Toijala." msgstr "" -#: ../build/NEWS:11475 +#: ../build/NEWS:11510 msgid "" "`bpo-35371 `__: Fixed possible crash in " "``os.utime()`` on Windows when pass incorrect arguments." msgstr "" -#: ../build/NEWS:11478 +#: ../build/NEWS:11513 msgid "" "`bpo-35346 `__: :func:`platform.uname` " "now redirects ``stderr`` to :data:`os.devnull` when running external " "programs like ``cmd /c ver``." msgstr "" -#: ../build/NEWS:11481 +#: ../build/NEWS:11516 msgid "" "`bpo-35066 `__: Previously, calling the " "strftime() method on a datetime object with a trailing '%' in the format " @@ -22104,14 +22058,14 @@ msgid "" "exception on a trailing '%'." msgstr "" -#: ../build/NEWS:11487 +#: ../build/NEWS:11522 msgid "" "`bpo-35345 `__: The function `platform." "popen` has been removed, it was deprecated since Python 3.3: use :func:`os." "popen` instead." msgstr "" -#: ../build/NEWS:11490 +#: ../build/NEWS:11525 msgid "" "`bpo-35344 `__: On macOS, :func:" "`platform.platform` now uses :func:`platform.mac_ver`, if it returns a non-" @@ -22119,27 +22073,27 @@ msgid "" "version." msgstr "" -#: ../build/NEWS:11494 +#: ../build/NEWS:11529 msgid "" "`bpo-35312 `__: Make ``lib2to3.pgen2." "parse.ParseError`` round-trip pickle-able. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:11497 +#: ../build/NEWS:11532 msgid "" "`bpo-35308 `__: Fix regression in " "``webbrowser`` where default browsers may be preferred over browsers in the " "``BROWSER`` environment variable." msgstr "" -#: ../build/NEWS:11500 +#: ../build/NEWS:11535 msgid "" "`bpo-24746 `__: Avoid stripping trailing " "whitespace in doctest fancy diff. Original patch by R. David Murray & Jairo " "Trad. Enhanced by Sanyam Khurana." msgstr "" -#: ../build/NEWS:11504 +#: ../build/NEWS:11539 msgid "" "`bpo-28604 `__: :func:`locale." "localeconv` now sets temporarily the ``LC_CTYPE`` locale to the " @@ -22147,19 +22101,19 @@ msgid "" "are non-ASCII. This temporary change affects other threads." msgstr "" -#: ../build/NEWS:11509 +#: ../build/NEWS:11544 msgid "" "`bpo-35277 `__: Update ensurepip to " "install pip 18.1 and setuptools 40.6.2." msgstr "" -#: ../build/NEWS:11511 +#: ../build/NEWS:11546 msgid "" "`bpo-24209 `__: Adds IPv6 support when " "invoking http.server directly." msgstr "" -#: ../build/NEWS:11513 +#: ../build/NEWS:11548 msgid "" "`bpo-35226 `__: Recursively check " "arguments when testing for equality of :class:`unittest.mock.call` objects " @@ -22167,46 +22121,46 @@ msgid "" "in ``mock_calls`` is not possible." msgstr "" -#: ../build/NEWS:11518 +#: ../build/NEWS:11553 msgid "" "`bpo-29564 `__: The warnings module now " "suggests to enable tracemalloc if the source is specified, the tracemalloc " "module is available, but tracemalloc is not tracing memory allocations." msgstr "" -#: ../build/NEWS:11522 +#: ../build/NEWS:11557 msgid "" "`bpo-35189 `__: Modify the following " "fnctl function to retry if interrupted by a signal (EINTR): flock, lockf, " "fnctl" msgstr "" -#: ../build/NEWS:11525 +#: ../build/NEWS:11560 msgid "" "`bpo-30064 `__: Use add_done_callback() " "in sock_* asyncio API to unsubscribe reader/writer early on calcellation." msgstr "" -#: ../build/NEWS:11528 +#: ../build/NEWS:11563 msgid "" "`bpo-35186 `__: Removed the \"built with" "\" comment added when ``setup.py upload`` is used with either ``bdist_rpm`` " "or ``bdist_dumb``." msgstr "" -#: ../build/NEWS:11531 +#: ../build/NEWS:11566 msgid "" "`bpo-35152 `__: Allow sending more than " "2 GB at once on a multiprocessing connection on non-Windows systems." msgstr "" -#: ../build/NEWS:11534 +#: ../build/NEWS:11569 msgid "" "`bpo-35062 `__: Fix incorrect parsing " "of :class:`_io.IncrementalNewlineDecoder`'s *translate* argument." msgstr "" -#: ../build/NEWS:11537 +#: ../build/NEWS:11572 msgid "" "`bpo-35065 `__: Remove " "`StreamReaderProtocol._untrack_reader`. The call to `_untrack_reader` is " @@ -22214,20 +22168,20 @@ msgid "" "reader before `connection_lost` can run and feed the EOF to the reader." msgstr "" -#: ../build/NEWS:11542 +#: ../build/NEWS:11577 msgid "" "`bpo-34160 `__: ElementTree and minidom " "now preserve the attribute order specified by the user." msgstr "" -#: ../build/NEWS:11545 +#: ../build/NEWS:11580 msgid "" "`bpo-35079 `__: Improve difflib." "SequenceManager.get_matching_blocks doc by adding 'non-overlapping' and " "changing '!=' to '<'." msgstr "" -#: ../build/NEWS:11548 +#: ../build/NEWS:11583 msgid "" "`bpo-33710 `__: Deprecated " "``l*gettext()`` functions and methods in the :mod:`gettext` module. They " @@ -22236,21 +22190,21 @@ msgid "" "charset for ``l*gettext()`` functions and methods." msgstr "" -#: ../build/NEWS:11554 +#: ../build/NEWS:11589 msgid "" "`bpo-35017 `__: :meth:`socketserver." "BaseServer.serve_forever` now exits immediately if it's :meth:`~socketserver." "BaseServer.shutdown` method is called while it is polling for new events." msgstr "" -#: ../build/NEWS:11558 +#: ../build/NEWS:11593 msgid "" "`bpo-35024 `__: `importlib` no longer " "logs `wrote ` redundantly after `(created|could not create) " "` is already logged. Patch by Quentin Agren." msgstr "" -#: ../build/NEWS:11562 +#: ../build/NEWS:11597 msgid "" "`bpo-35047 `__: ``unittest.mock`` now " "includes mock calls in exception messages if ``assert_not_called``, " @@ -22258,14 +22212,14 @@ msgid "" "Petter Strandmark." msgstr "" -#: ../build/NEWS:11566 +#: ../build/NEWS:11601 msgid "" "`bpo-31047 `__: Fix ``ntpath.abspath`` " "regression where it didn't remove a trailing separator on Windows. Patch by " "Tim Graham." msgstr "" -#: ../build/NEWS:11569 +#: ../build/NEWS:11604 msgid "" "`bpo-35053 `__: tracemalloc now tries to " "update the traceback when an object is reused from a \"free list" @@ -22273,51 +22227,51 @@ msgid "" "for example)." msgstr "" -#: ../build/NEWS:11573 +#: ../build/NEWS:11608 msgid "" "`bpo-31553 `__: Add the --json-lines " "option to json.tool. Patch by hongweipeng." msgstr "" -#: ../build/NEWS:11575 +#: ../build/NEWS:11610 msgid "" "`bpo-34794 `__: Fixed a leak in Tkinter " "when pass the Python wrapper around Tcl_Obj back to Tcl/Tk." msgstr "" -#: ../build/NEWS:11578 +#: ../build/NEWS:11613 msgid "" "`bpo-34909 `__: Enum: fix grandchildren " "subclassing when parent mixed with concrete data types." msgstr "" -#: ../build/NEWS:11581 +#: ../build/NEWS:11616 msgid "" "`bpo-35022 `__: :class:`unittest.mock." "MagicMock` now supports the ``__fspath__`` method (from :class:`os." "PathLike`)." msgstr "" -#: ../build/NEWS:11584 +#: ../build/NEWS:11619 msgid "" "`bpo-35008 `__: Fixed references leaks " "when call the ``__setstate__()`` method of :class:`xml.etree.ElementTree." "Element` in the C implementation for already initialized element." msgstr "" -#: ../build/NEWS:11588 +#: ../build/NEWS:11623 msgid "" "`bpo-23420 `__: Verify the value for the " "parameter '-s' of the cProfile CLI. Patch by Robert Kuska" msgstr "" -#: ../build/NEWS:11591 +#: ../build/NEWS:11626 msgid "" "`bpo-33947 `__: dataclasses now handle " "recursive reprs without raising RecursionError." msgstr "" -#: ../build/NEWS:11594 +#: ../build/NEWS:11629 msgid "" "`bpo-34890 `__: Make :func:`inspect." "iscoroutinefunction`, :func:`inspect.isgeneratorfunction` and :func:`inspect." @@ -22325,7 +22279,7 @@ msgid "" "Galindo." msgstr "" -#: ../build/NEWS:11598 +#: ../build/NEWS:11633 msgid "" "`bpo-34521 `__: Use :func:`socket." "CMSG_SPACE` to calculate ancillary data size instead of :func:`socket." @@ -22333,20 +22287,20 @@ msgid "" "requires the use of the former for portable applications." msgstr "" -#: ../build/NEWS:11603 +#: ../build/NEWS:11638 msgid "" "`bpo-31522 `__: The `mailbox.mbox." "get_string` function *from_* parameter can now successfully be set to a non-" "default value." msgstr "" -#: ../build/NEWS:11606 +#: ../build/NEWS:11641 msgid "" "`bpo-34970 `__: Protect tasks weak set " "manipulation in ``asyncio.all_tasks()``" msgstr "" -#: ../build/NEWS:11608 +#: ../build/NEWS:11643 msgid "" "`bpo-34969 `__: gzip: Add --fast, --best " "on the gzip CLI, these parameters will be used for the fast compression " @@ -22354,34 +22308,34 @@ msgid "" "change the default compression level to 6 (tradeoff)." msgstr "" -#: ../build/NEWS:11613 +#: ../build/NEWS:11648 msgid "" "`bpo-16965 `__: The :term:" "`2to3` :2to3fixer:`execfile` fixer now opens the file with mode ``'rb'``. " "Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:11616 +#: ../build/NEWS:11651 msgid "" "`bpo-34966 `__: :mod:`pydoc` now " "supports aliases not only to methods defined in the end class, but also to " "inherited methods. The docstring is not duplicated for aliases." msgstr "" -#: ../build/NEWS:11620 +#: ../build/NEWS:11655 msgid "" "`bpo-34926 `__: :meth:`mimetypes." "MimeTypes.guess_type` now accepts :term:`path-like object` in addition to " "url strings. Patch by Mayank Asthana." msgstr "" -#: ../build/NEWS:11624 +#: ../build/NEWS:11659 msgid "" "`bpo-23831 `__: Add ``moveto()`` method " "to the ``tkinter.Canvas`` widget. Patch by Juliette Monsel." msgstr "" -#: ../build/NEWS:11627 +#: ../build/NEWS:11662 msgid "" "`bpo-34941 `__: Methods ``find()``, " "``findtext()`` and ``findall()`` of the ``Element`` class in the :mod:`xml." @@ -22389,26 +22343,26 @@ msgid "" "of ``Element`` subclasses." msgstr "" -#: ../build/NEWS:11631 +#: ../build/NEWS:11666 msgid "" "`bpo-32680 `__: :class:`smtplib.SMTP` " "objects now always have a `sock` attribute present" msgstr "" -#: ../build/NEWS:11634 +#: ../build/NEWS:11669 msgid "" "`bpo-34769 `__: Fix for async generators " "not finalizing when event loop is in debug mode and garbage collector runs " "in another thread." msgstr "" -#: ../build/NEWS:11637 +#: ../build/NEWS:11672 msgid "" "`bpo-34936 `__: Fix ``TclError`` in " "``tkinter.Spinbox.selection_element()``. Patch by Juliette Monsel." msgstr "" -#: ../build/NEWS:11640 +#: ../build/NEWS:11675 msgid "" "`bpo-34829 `__: Add methods " "``selection_from``, ``selection_range``, ``selection_present`` and " @@ -22416,7 +22370,7 @@ msgid "" "``tkinter.Entry`` widget. Patch by Juliette Monsel." msgstr "" -#: ../build/NEWS:11644 +#: ../build/NEWS:11679 msgid "" "`bpo-34911 `__: Added *secure_protocols* " "argument to *http.cookiejar.DefaultCookiePolicy* to allow for tweaking of " @@ -22424,27 +22378,27 @@ msgid "" "protocol." msgstr "" -#: ../build/NEWS:11649 +#: ../build/NEWS:11684 msgid "" "`bpo-34922 `__: Fixed integer overflow " "in the :meth:`~hashlib.shake.digest()` and :meth:`~hashlib.shake." "hexdigest()` methods for the SHAKE algorithm in the :mod:`hashlib` module." msgstr "" -#: ../build/NEWS:11653 +#: ../build/NEWS:11688 msgid "" "`bpo-34925 `__: 25% speedup in argument " "parsing for the functions in the bisect module." msgstr "" -#: ../build/NEWS:11656 +#: ../build/NEWS:11691 msgid "" "`bpo-34900 `__: Fixed :meth:`unittest." "TestCase.debug` when used to call test methods with subtests. Patch by " "Bruno Oliveira." msgstr "" -#: ../build/NEWS:11659 +#: ../build/NEWS:11694 msgid "" "`bpo-34844 `__: logging.Formatter " "enhancement - Ensure styles and fmt matches in logging.Formatter - Added " @@ -22455,33 +22409,33 @@ msgid "" "format fields." msgstr "" -#: ../build/NEWS:11666 +#: ../build/NEWS:11701 msgid "" "`bpo-34897 `__: Adjust test.support." "missing_compiler_executable check so that a nominal command name of \"\" is " "ignored. Patch by Michael Felt." msgstr "" -#: ../build/NEWS:11669 +#: ../build/NEWS:11704 msgid "" "`bpo-34871 `__: Fix inspect module " "polluted ``sys.modules`` when parsing ``__text_signature__`` of callable." msgstr "" -#: ../build/NEWS:11672 +#: ../build/NEWS:11707 msgid "" "`bpo-34898 `__: Add `mtime` argument to " "`gzip.compress` for reproducible output. Patch by Guo Ci Teo." msgstr "" -#: ../build/NEWS:11675 +#: ../build/NEWS:11710 msgid "" "`bpo-28441 `__: On Cygwin and MinGW, " "ensure that ``sys.executable`` always includes the full filename in the " "path, including the ``.exe`` suffix (unless it is a symbolic link)." msgstr "" -#: ../build/NEWS:11679 +#: ../build/NEWS:11714 msgid "" "`bpo-34866 `__: Adding " "``max_num_fields`` to ``cgi.FieldStorage`` to make DOS attacks harder by " @@ -22489,7 +22443,7 @@ msgid "" "``FieldStorage``." msgstr "" -#: ../build/NEWS:11683 +#: ../build/NEWS:11718 msgid "" "`bpo-34711 `__: http.server ensures it " "reports HTTPStatus.NOT_FOUND when the local path ends with \"/\" and is not " @@ -22497,13 +22451,13 @@ msgid "" "valid file reference. Patch by Michael Felt." msgstr "" -#: ../build/NEWS:11688 +#: ../build/NEWS:11723 msgid "" "`bpo-34872 `__: Fix self-cancellation in " "C implementation of asyncio.Task" msgstr "" -#: ../build/NEWS:11690 +#: ../build/NEWS:11725 msgid "" "`bpo-34849 `__: Don't log waiting for " "``selector.select`` in asyncio loop iteration. The waiting is pretty normal " @@ -22511,7 +22465,7 @@ msgid "" "any useful information provided." msgstr "" -#: ../build/NEWS:11695 +#: ../build/NEWS:11730 msgid "" "`bpo-34022 `__: The :envvar:" "`SOURCE_DATE_EPOCH` environment variable no longer overrides the value of " @@ -22519,46 +22473,46 @@ msgid "" "determines its default value instead." msgstr "" -#: ../build/NEWS:11699 +#: ../build/NEWS:11734 msgid "" "`bpo-34819 `__: Use a monotonic clock to " "compute timeouts in :meth:`Executor.map` and :func:`as_completed`, in order " "to prevent timeouts from deviating when the system clock is adjusted." msgstr "" -#: ../build/NEWS:11703 +#: ../build/NEWS:11738 msgid "" "`bpo-34758 `__: Add .wasm -> application/" "wasm to list of recognized file types and content type headers" msgstr "" -#: ../build/NEWS:11706 +#: ../build/NEWS:11741 msgid "" "`bpo-34789 `__: :func:`xml.sax." "make_parser` now accepts any iterable as its *parser_list* argument. Patch " "by Andrés Delfino." msgstr "" -#: ../build/NEWS:11709 +#: ../build/NEWS:11744 msgid "" "`bpo-34334 `__: In :class:" "`QueueHandler`, clear `exc_text` from :class:`LogRecord` to prevent " "traceback from being written twice." msgstr "" -#: ../build/NEWS:11712 +#: ../build/NEWS:11747 msgid "" "`bpo-34687 `__: On Windows, asyncio now " "uses ProactorEventLoop, instead of SelectorEventLoop, by default." msgstr "" -#: ../build/NEWS:11715 +#: ../build/NEWS:11750 msgid "" "`bpo-5950 `__: Support reading zip files " "with archive comments in :mod:`zipimport`." msgstr "" -#: ../build/NEWS:11718 +#: ../build/NEWS:11753 msgid "" "`bpo-32892 `__: The parser now " "represents all constants as :class:`ast.Constant` instead of using specific " @@ -22567,60 +22521,60 @@ msgid "" "in future Python versions." msgstr "" -#: ../build/NEWS:11724 +#: ../build/NEWS:11759 msgid "" "`bpo-34728 `__: Add deprecation warning " "when `loop` is used in methods: `asyncio.sleep`, `asyncio.wait` and `asyncio." "wait_for`." msgstr "" -#: ../build/NEWS:11727 +#: ../build/NEWS:11762 msgid "" "`bpo-34738 `__: ZIP files created by :" "mod:`distutils` will now include entries for directories." msgstr "" -#: ../build/NEWS:11730 +#: ../build/NEWS:11765 msgid "" "`bpo-34659 `__: Add an optional " "*initial* argument to itertools.accumulate()." msgstr "" -#: ../build/NEWS:11732 +#: ../build/NEWS:11767 msgid "" "`bpo-29577 `__: Support multiple mixin " "classes when creating Enums." msgstr "" -#: ../build/NEWS:11734 +#: ../build/NEWS:11769 msgid "" "`bpo-34670 `__: Add SSLContext." "post_handshake_auth and SSLSocket.verify_client_post_handshake for TLS 1.3's " "post handshake authentication feature." msgstr "" -#: ../build/NEWS:11738 +#: ../build/NEWS:11773 msgid "" "`bpo-32718 `__: The Activate.ps1 script " "from venv works with PowerShell Core 6.1 and is now available under all " "operating systems." msgstr "" -#: ../build/NEWS:11741 +#: ../build/NEWS:11776 msgid "" "`bpo-31177 `__: Fix bug that prevented " "using :meth:`reset_mock ` on mock instances " "with deleted attributes" msgstr "" -#: ../build/NEWS:11744 +#: ../build/NEWS:11779 msgid "" "`bpo-34672 `__: Add a workaround, so the " "``'Z'`` :func:`time.strftime` specifier on the musl C library can work in " "some cases." msgstr "" -#: ../build/NEWS:11747 +#: ../build/NEWS:11782 msgid "" "`bpo-34666 `__: Implement ``asyncio." "StreamWriter.awrite`` and ``asyncio.StreamWriter.aclose()`` coroutines. " @@ -22628,14 +22582,14 @@ msgid "" "switched on by default." msgstr "" -#: ../build/NEWS:11752 +#: ../build/NEWS:11787 msgid "" "`bpo-6721 `__: Acquire the logging " "module's commonly used internal locks while fork()ing to avoid deadlocks in " "the child process." msgstr "" -#: ../build/NEWS:11755 +#: ../build/NEWS:11790 msgid "" "`bpo-34658 `__: Fix a rare interpreter " "unhandled exception state SystemError only seen when using subprocess with a " @@ -22643,13 +22597,13 @@ msgid "" "register_at_fork and the fork system call fails." msgstr "" -#: ../build/NEWS:11760 +#: ../build/NEWS:11795 msgid "" "`bpo-34652 `__: Ensure :func:`os.lchmod` " "is never defined on Linux." msgstr "" -#: ../build/NEWS:11762 +#: ../build/NEWS:11797 msgid "" "`bpo-34638 `__: Store a weak reference " "to stream reader to break strong references loop between reader and " @@ -22657,20 +22611,20 @@ msgid "" "(garbage collected) without ``close()`` call." msgstr "" -#: ../build/NEWS:11767 +#: ../build/NEWS:11802 msgid "" "`bpo-34536 `__: `Enum._missing_`: raise " "`ValueError` if None returned and `TypeError` if non-member is returned." msgstr "" -#: ../build/NEWS:11770 +#: ../build/NEWS:11805 msgid "" "`bpo-34636 `__: Speed up re scanning of " "many non-matching characters for \\s \\w and \\d within bytes objects. " "(microoptimization)" msgstr "" -#: ../build/NEWS:11773 +#: ../build/NEWS:11808 msgid "" "`bpo-24412 `__: Add :func:`~unittest." "addModuleCleanup()` and :meth:`~unittest.TestCase.addClassCleanup()` to " @@ -22678,39 +22632,39 @@ msgid "" "`~unittest.TestCase.setUpClass()`. Patch by Lisa Roach." msgstr "" -#: ../build/NEWS:11778 +#: ../build/NEWS:11813 msgid "" "`bpo-34630 `__: Don't log SSL " "certificate errors in asyncio code (connection error logging is skipped " "already)." msgstr "" -#: ../build/NEWS:11781 +#: ../build/NEWS:11816 msgid "" "`bpo-32490 `__: Prevent filename " "duplication in :mod:`subprocess` exception messages. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:11784 +#: ../build/NEWS:11819 msgid "" "`bpo-34363 `__: dataclasses.asdict() " "and .astuple() now handle namedtuples correctly." msgstr "" -#: ../build/NEWS:11787 +#: ../build/NEWS:11822 msgid "" "`bpo-34625 `__: Update vendorized expat " "library version to 2.2.6." msgstr "" -#: ../build/NEWS:11789 +#: ../build/NEWS:11824 msgid "" "`bpo-32270 `__: The subprocess module no " "longer mistakenly closes redirected fds even when they were in pass_fds when " "outside of the default {0, 1, 2} set." msgstr "" -#: ../build/NEWS:11793 +#: ../build/NEWS:11828 msgid "" "`bpo-34622 `__: Create a dedicated " "``asyncio.CancelledError``, ``asyncio.InvalidStateError`` and ``asyncio." @@ -22719,19 +22673,19 @@ msgid "" "exceptions into a separate file." msgstr "" -#: ../build/NEWS:11799 +#: ../build/NEWS:11834 msgid "" "`bpo-34610 `__: Fixed iterator of :class:" "`multiprocessing.managers.DictProxy`." msgstr "" -#: ../build/NEWS:11801 +#: ../build/NEWS:11836 msgid "" "`bpo-34421 `__: Fix distutils logging " "for non-ASCII strings. This caused installation issues on Windows." msgstr "" -#: ../build/NEWS:11804 +#: ../build/NEWS:11839 msgid "" "`bpo-34604 `__: Fix possible mojibake in " "the error message of `pwd.getpwnam` and `grp.getgrnam` using string " @@ -22739,54 +22693,54 @@ msgid "" "Patch by William Grzybowski." msgstr "" -#: ../build/NEWS:11808 +#: ../build/NEWS:11843 msgid "" "`bpo-30977 `__: Make uuid.UUID use " "``__slots__`` to reduce its memory footprint. Based on original patch by " "Wouter Bolsterlee." msgstr "" -#: ../build/NEWS:11811 +#: ../build/NEWS:11846 msgid "" "`bpo-34574 `__: OrderedDict iterators " "are not exhausted during pickling anymore. Patch by Sergey Fedoseev." msgstr "" -#: ../build/NEWS:11814 +#: ../build/NEWS:11849 msgid "" "`bpo-8110 `__: Refactored :mod:" "`subprocess` to check for Windows-specific modules rather than ``sys." "platform == 'win32'``." msgstr "" -#: ../build/NEWS:11817 +#: ../build/NEWS:11852 msgid "" "`bpo-34530 `__: ``distutils.spawn." "find_executable()`` now falls back on :data:`os.defpath` if the ``PATH`` " "environment variable is not set." msgstr "" -#: ../build/NEWS:11820 +#: ../build/NEWS:11855 msgid "" "`bpo-34563 `__: On Windows, fix " "multiprocessing.Connection for very large read: fix _winapi.PeekNamedPipe() " "and _winapi.ReadFile() for read larger than INT_MAX (usually 2^31-1)." msgstr "" -#: ../build/NEWS:11824 +#: ../build/NEWS:11859 msgid "" "`bpo-34558 `__: Correct typo in Lib/" "ctypes/_aix.py" msgstr "" -#: ../build/NEWS:11826 +#: ../build/NEWS:11861 msgid "" "`bpo-34282 `__: Move ``Enum._convert`` " "to ``EnumMeta._convert_`` and fix enum members getting shadowed by parent " "attributes." msgstr "" -#: ../build/NEWS:11829 +#: ../build/NEWS:11864 msgid "" "`bpo-22872 `__: When the queue is " "closed, :exc:`ValueError` is now raised by :meth:`multiprocessing.Queue.put` " @@ -22794,20 +22748,20 @@ msgid "" "exc:`OSError`, respectively. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:11834 +#: ../build/NEWS:11869 msgid "" "`bpo-34515 `__: Fix parsing non-ASCII " "identifiers in :mod:`lib2to3.pgen2.tokenize` (PEP 3131)." msgstr "" -#: ../build/NEWS:11837 +#: ../build/NEWS:11872 msgid "" "`bpo-13312 `__: Avoids a possible " "integer underflow (undefined behavior) in the time module's year handling " "code when passed a very low negative year value." msgstr "" -#: ../build/NEWS:11841 +#: ../build/NEWS:11876 msgid "" "`bpo-34472 `__: Improved compatibility " "for streamed files in :mod:`zipfile`. Previously an optional signature was " @@ -22815,7 +22769,7 @@ msgid "" "Silas Sewell." msgstr "" -#: ../build/NEWS:11845 +#: ../build/NEWS:11880 msgid "" "`bpo-34454 `__: Fix the .fromisoformat() " "methods of datetime types crashing when given unicode with non-UTF-8-" @@ -22824,98 +22778,98 @@ msgid "" "Alexey Izbyshev, patch by Paul Ganssle." msgstr "" -#: ../build/NEWS:11850 +#: ../build/NEWS:11885 msgid "" "`bpo-6700 `__: Fix inspect.getsourcelines " "for module level frames/tracebacks. Patch by Vladimir Matveev." msgstr "" -#: ../build/NEWS:11853 +#: ../build/NEWS:11888 msgid "" "`bpo-34171 `__: Running the :mod:`trace` " "module no longer creates the ``trace.cover`` file." msgstr "" -#: ../build/NEWS:11856 +#: ../build/NEWS:11891 msgid "" "`bpo-34441 `__: Fix crash when an " "``ABC``-derived class with invalid ``__subclasses__`` is passed as the " "second argument to :func:`issubclass()`. Patch by Alexey Izbyshev." msgstr "" -#: ../build/NEWS:11860 +#: ../build/NEWS:11895 msgid "" "`bpo-34427 `__: Fix infinite loop in ``a." "extend(a)`` for ``MutableSequence`` subclasses." msgstr "" -#: ../build/NEWS:11863 +#: ../build/NEWS:11898 msgid "" "`bpo-34412 `__: Make :func:`signal." "strsignal` work on HP-UX. Patch by Michael Osipov." msgstr "" -#: ../build/NEWS:11866 +#: ../build/NEWS:11901 msgid "" "`bpo-20849 `__: shutil.copytree now " "accepts a new ``dirs_exist_ok`` keyword argument. Patch by Josh Bronson." msgstr "" -#: ../build/NEWS:11869 +#: ../build/NEWS:11904 msgid "" "`bpo-31715 `__: Associate ``.mjs`` file " "extension with ``application/javascript`` MIME Type." msgstr "" -#: ../build/NEWS:11872 +#: ../build/NEWS:11907 msgid "" "`bpo-34384 `__: :func:`os.readlink` now " "accepts :term:`path-like ` and :class:`bytes` objects on " "Windows." msgstr "" -#: ../build/NEWS:11875 +#: ../build/NEWS:11910 msgid "" "`bpo-22602 `__: The UTF-7 decoder now " "raises :exc:`UnicodeDecodeError` for ill-formed sequences starting with \"+" "\" (as specified in RFC 2152). Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:11879 +#: ../build/NEWS:11914 msgid "" "`bpo-2122 `__: The :meth:`mmap.flush() " "` method now returns ``None`` on success, raises an " "exception on error under all platforms." msgstr "" -#: ../build/NEWS:11882 +#: ../build/NEWS:11917 msgid "" "`bpo-34341 `__: Appending to the ZIP " "archive with the ZIP64 extension no longer grows the size of extra fields of " "existing entries." msgstr "" -#: ../build/NEWS:11885 +#: ../build/NEWS:11920 msgid "" "`bpo-34333 `__: Fix %-formatting in :" "meth:`pathlib.PurePath.with_suffix` when formatting an error message." msgstr "" -#: ../build/NEWS:11888 +#: ../build/NEWS:11923 msgid "" "`bpo-18540 `__: The :class:`imaplib." "IMAP4` and :class:`imaplib.IMAP4_SSL` classes now resolve to the local host " "IP correctly when the default value of *host* parameter (``''``) is used." msgstr "" -#: ../build/NEWS:11892 +#: ../build/NEWS:11927 msgid "" "`bpo-26502 `__: Implement ``traceback." "FrameSummary.__len__()`` method to preserve compatibility with the old tuple " "API." msgstr "" -#: ../build/NEWS:11895 +#: ../build/NEWS:11930 msgid "" "`bpo-34318 `__: :func:`~unittest." "TestCase.assertRaises`, :func:`~unittest.TestCase.assertRaisesRegex`, :func:" @@ -22925,21 +22879,21 @@ msgid "" "DeprecationWarning was raised in these cases since Python 3.5." msgstr "" -#: ../build/NEWS:11903 +#: ../build/NEWS:11938 msgid "" "`bpo-9372 `__: Deprecate :meth:" "`__getitem__` methods of :class:`xml.dom.pulldom.DOMEventStream`, :class:" "`wsgiref.util.FileWrapper` and :class:`fileinput.FileInput`." msgstr "" -#: ../build/NEWS:11907 +#: ../build/NEWS:11942 msgid "" "`bpo-33613 `__: Fix a race condition in " "``multiprocessing.semaphore_tracker`` when the tracker receives SIGINT " "before it can register signal handlers for ignoring it." msgstr "" -#: ../build/NEWS:11911 +#: ../build/NEWS:11946 msgid "" "`bpo-34248 `__: Report filename in the " "exception raised when the database file cannot be opened by :func:`dbm.gnu." @@ -22947,32 +22901,32 @@ msgid "" "Cserna." msgstr "" -#: ../build/NEWS:11915 +#: ../build/NEWS:11950 msgid "" "`bpo-33089 `__: Add math.dist() to " "compute the Euclidean distance between two points." msgstr "" -#: ../build/NEWS:11918 +#: ../build/NEWS:11953 msgid "" "`bpo-34246 `__: :meth:`smtplib.SMTP." "send_message` no longer modifies the content of the *mail_options* argument. " "Patch by Pablo S. Blum de Aguiar." msgstr "" -#: ../build/NEWS:11921 +#: ../build/NEWS:11956 msgid "" "`bpo-31047 `__: Fix ``ntpath.abspath`` " "for invalid paths on windows. Patch by Franz Woellert." msgstr "" -#: ../build/NEWS:11924 +#: ../build/NEWS:11959 msgid "" "`bpo-32321 `__: Add pure Python fallback " "for functools.reduce. Patch by Robert Wright." msgstr "" -#: ../build/NEWS:11927 +#: ../build/NEWS:11962 msgid "" "`bpo-34270 `__: The default asyncio task " "class now always has a name which can be get or set using two new methods (:" @@ -22984,60 +22938,60 @@ msgid "" "like ``Task-1`` using a monotonic counter." msgstr "" -#: ../build/NEWS:11936 +#: ../build/NEWS:11971 msgid "" "`bpo-34263 `__: asyncio's event loop " "will not pass timeouts longer than one day to epoll/select etc." msgstr "" -#: ../build/NEWS:11939 +#: ../build/NEWS:11974 msgid "" "`bpo-34035 `__: Fix several " "AttributeError in zipfile seek() methods. Patch by Mickaël Schoentgen." msgstr "" -#: ../build/NEWS:11942 +#: ../build/NEWS:11977 msgid "" "`bpo-32215 `__: Fix performance " "regression in :mod:`sqlite3` when a DML statement appeared in a different " "line than the rest of the SQL query." msgstr "" -#: ../build/NEWS:11945 +#: ../build/NEWS:11980 msgid "" "`bpo-34075 `__: Deprecate passing non-" "ThreadPoolExecutor instances to :meth:`AbstractEventLoop." "set_default_executor`." msgstr "" -#: ../build/NEWS:11948 +#: ../build/NEWS:11983 msgid "" "`bpo-34251 `__: Restore ``msilib.Win64`` " "to preserve backwards compatibility since it's already used by :mod:" "`distutils`' ``bdist_msi`` command." msgstr "" -#: ../build/NEWS:11951 +#: ../build/NEWS:11986 msgid "" "`bpo-19891 `__: Ignore errors caused by " "missing / non-writable homedir while writing history during exit of an " "interactive session. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:11955 +#: ../build/NEWS:11990 msgid "" "`bpo-33089 `__: Enhanced math.hypot() to " "support more than two dimensions." msgstr "" -#: ../build/NEWS:11957 +#: ../build/NEWS:11992 msgid "" "`bpo-34228 `__: tracemalloc: " "PYTHONTRACEMALLOC=0 environment variable and -X tracemalloc=0 command line " "option are now allowed to disable explicitly tracemalloc at startup." msgstr "" -#: ../build/NEWS:11961 +#: ../build/NEWS:11996 msgid "" "`bpo-13041 `__: Use :func:`shutil." "get_terminal_size` to calculate the terminal width correctly in the " @@ -23045,14 +22999,14 @@ msgid "" "Szmek." msgstr "" -#: ../build/NEWS:11965 +#: ../build/NEWS:12000 msgid "" "`bpo-34213 `__: Allow frozen dataclasses " "to have a field named \"object\". Previously this conflicted with an " "internal use of \"object\"." msgstr "" -#: ../build/NEWS:11968 +#: ../build/NEWS:12003 msgid "" "`bpo-34052 `__: :meth:`sqlite3." "Connection.create_aggregate`, :meth:`sqlite3.Connection.create_function`, :" @@ -23062,7 +23016,7 @@ msgid "" "Previous behavior could lead to segfaults. Patch by Sergey Fedoseev." msgstr "" -#: ../build/NEWS:11976 +#: ../build/NEWS:12011 msgid "" "`bpo-34197 `__: Attributes " "*skipinitialspace*, *doublequote* and *strict* of the *dialect* attribute of " @@ -23070,40 +23024,40 @@ msgid "" "or 1." msgstr "" -#: ../build/NEWS:11980 +#: ../build/NEWS:12015 msgid "" "`bpo-32788 `__: Errors other than :exc:" "`TypeError` raised in methods ``__adapt__()`` and ``__conform__()`` in the :" "mod:`sqlite3` module are now propagated to the user." msgstr "" -#: ../build/NEWS:11984 +#: ../build/NEWS:12019 msgid "" "`bpo-21446 `__: The :2to3fixer:`reload` " "fixer now uses :func:`importlib.reload` instead of deprecated :func:`imp." "reload`." msgstr "" -#: ../build/NEWS:11987 +#: ../build/NEWS:12022 msgid "" "`bpo-940286 `__: pydoc's ``Helper." "showtopic()`` method now prints the cross references of a topic correctly." msgstr "" -#: ../build/NEWS:11990 +#: ../build/NEWS:12025 msgid "" "`bpo-34164 `__: :func:`base64.b32decode` " "could raise UnboundLocalError or OverflowError for incorrect padding. Now " "it always raises :exc:`base64.Error` in these cases." msgstr "" -#: ../build/NEWS:11994 +#: ../build/NEWS:12029 msgid "" "`bpo-33729 `__: Fixed issues with " "arguments parsing in :mod:`hashlib`." msgstr "" -#: ../build/NEWS:11996 +#: ../build/NEWS:12031 msgid "" "`bpo-34097 `__: ZipFile can zip files " "older than 1980-01-01 and newer than 2107-12-31 using a new " @@ -23111,39 +23065,39 @@ msgid "" "limit." msgstr "" -#: ../build/NEWS:12000 +#: ../build/NEWS:12035 msgid "" "`bpo-34108 `__: Remove extraneous CR in " "2to3 refactor." msgstr "" -#: ../build/NEWS:12002 +#: ../build/NEWS:12037 msgid "" "`bpo-34070 `__: Make sure to only check " "if the handle is a tty, when opening a file with ``buffering=-1``." msgstr "" -#: ../build/NEWS:12005 +#: ../build/NEWS:12040 msgid "" "`bpo-27494 `__: Reverted :issue:`27494`. " "2to3 rejects now a trailing comma in generator expressions." msgstr "" -#: ../build/NEWS:12008 +#: ../build/NEWS:12043 msgid "" "`bpo-33967 `__: functools.singledispatch " "now raises TypeError instead of IndexError when no positional arguments are " "passed." msgstr "" -#: ../build/NEWS:12011 +#: ../build/NEWS:12046 msgid "" "`bpo-34041 `__: Add the parameter " "*deterministic* to the :meth:`sqlite3.Connection.create_function` method. " "Patch by Sergey Fedoseev." msgstr "" -#: ../build/NEWS:12015 +#: ../build/NEWS:12050 msgid "" "`bpo-34056 `__: Ensure the loader shim " "created by ``imp.load_module`` always returns bytes from its ``get_data()`` " @@ -23151,54 +23105,54 @@ msgid "" "pycs." msgstr "" -#: ../build/NEWS:12019 +#: ../build/NEWS:12054 msgid "" "`bpo-34054 `__: The multiprocessing " "module now uses the monotonic clock :func:`time.monotonic` instead of the " "system clock :func:`time.time` to implement timeout." msgstr "" -#: ../build/NEWS:12023 +#: ../build/NEWS:12058 msgid "" "`bpo-34043 `__: Optimize tarfile " "uncompress performance about 15% when gzip is used." msgstr "" -#: ../build/NEWS:12026 +#: ../build/NEWS:12061 msgid "" "`bpo-34044 `__: ``subprocess.Popen`` now " "copies the *startupinfo* argument to leave it unchanged: it will modify the " "copy, so that the same ``STARTUPINFO`` object can be used multiple times." msgstr "" -#: ../build/NEWS:12030 +#: ../build/NEWS:12065 msgid "" "`bpo-34010 `__: Fixed a performance " "regression for reading streams with tarfile. The buffered read should use a " "list, instead of appending to a bytes object." msgstr "" -#: ../build/NEWS:12034 +#: ../build/NEWS:12069 msgid "" "`bpo-34019 `__: webbrowser: Correct the " "arguments passed to Opera Browser when opening a new URL using the " "``webbrowser`` module. Patch by Bumsik Kim." msgstr "" -#: ../build/NEWS:12037 +#: ../build/NEWS:12072 msgid "" "`bpo-34003 `__: csv.DictReader now " "creates dicts instead of OrderedDicts. Patch by Michael Selik." msgstr "" -#: ../build/NEWS:12040 +#: ../build/NEWS:12075 msgid "" "`bpo-33978 `__: Closed existing logging " "handlers before reconfiguration via fileConfig and dictConfig. Patch by " "Karthikeyan Singaravelan." msgstr "" -#: ../build/NEWS:12043 +#: ../build/NEWS:12078 msgid "" "`bpo-14117 `__: Make minor tweaks to " "turtledemo. The 'wikipedia' example is now 'rosette', describing what it " @@ -23206,27 +23160,27 @@ msgid "" "eliminated." msgstr "" -#: ../build/NEWS:12047 +#: ../build/NEWS:12082 msgid "" "`bpo-33974 `__: Fixed passing lists and " "tuples of strings containing special characters ``\"``, ``\\``, ``{``, ``}`` " "and ``\\n`` as options to :mod:`~tkinter.ttk` widgets." msgstr "" -#: ../build/NEWS:12051 +#: ../build/NEWS:12086 msgid "" "`bpo-27500 `__: Fix getaddrinfo to " "resolve IPv6 addresses correctly." msgstr "" -#: ../build/NEWS:12053 +#: ../build/NEWS:12088 msgid "" "`bpo-24567 `__: Improve random.choices() " "to handle subnormal input weights that could occasionally trigger an " "IndexError." msgstr "" -#: ../build/NEWS:12056 +#: ../build/NEWS:12091 msgid "" "`bpo-33871 `__: Fixed integer overflow " "in :func:`os.readv`, :func:`os.writev`, :func:`os.preadv` and :func:`os." @@ -23234,14 +23188,14 @@ msgid "" "(on BSD-based OSes and macOS)." msgstr "" -#: ../build/NEWS:12060 +#: ../build/NEWS:12095 msgid "" "`bpo-25007 `__: Add :func:`copy.copy` " "and :func:`copy.deepcopy` support to zlib compressors and decompressors. " "Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:12063 +#: ../build/NEWS:12098 msgid "" "`bpo-33929 `__: multiprocessing: Fix a " "race condition in Popen of multiprocessing.popen_spawn_win32. The child " @@ -23251,7 +23205,7 @@ msgid "" "steal the handle from the parent process." msgstr "" -#: ../build/NEWS:12070 +#: ../build/NEWS:12105 msgid "" "`bpo-33899 `__: Tokenize module now " "implicitly emits a NEWLINE when provided with input that does not have a " @@ -23259,13 +23213,13 @@ msgid "" "internally. Contributed by Ammar Askar." msgstr "" -#: ../build/NEWS:12074 +#: ../build/NEWS:12109 msgid "" "`bpo-33897 `__: Added a 'force' keyword " "argument to logging.basicConfig()." msgstr "" -#: ../build/NEWS:12076 +#: ../build/NEWS:12111 msgid "" "`bpo-33695 `__: :func:`shutil.copytree` " "uses :func:`os.scandir` function and all copy functions depending from it " @@ -23276,33 +23230,33 @@ msgid "" "(Contributed by Giampaolo Rodola' in :issue:`33695`.)" msgstr "" -#: ../build/NEWS:12084 +#: ../build/NEWS:12119 msgid "" "`bpo-33916 `__: bz2 and lzma: When " "Decompressor.__init__() is called twice, free the old lock to not leak " "memory." msgstr "" -#: ../build/NEWS:12087 +#: ../build/NEWS:12122 msgid "" "`bpo-32568 `__: Make select.epoll() and " "its documentation consistent regarding *sizehint* and *flags*." msgstr "" -#: ../build/NEWS:12090 +#: ../build/NEWS:12125 msgid "" "`bpo-33833 `__: Fixed bug in asyncio " "where ProactorSocketTransport logs AssertionError if force closed during " "write." msgstr "" -#: ../build/NEWS:12093 +#: ../build/NEWS:12128 msgid "" "`bpo-33663 `__: Convert content length " "to string before putting to header." msgstr "" -#: ../build/NEWS:12095 +#: ../build/NEWS:12130 msgid "" "`bpo-33721 `__: :mod:`os.path` functions " "that return a boolean result like :func:`~os.path.exists`, :func:`~os.path." @@ -23318,134 +23272,134 @@ msgid "" "characters or bytes unrepresentable at the OS level." msgstr "" -#: ../build/NEWS:12109 +#: ../build/NEWS:12144 msgid "" "`bpo-26544 `__: Fixed implementation of :" "func:`platform.libc_ver`. It almost always returned version '2.9' for glibc." msgstr "" -#: ../build/NEWS:12112 +#: ../build/NEWS:12147 msgid "" "`bpo-33843 `__: Remove deprecated ``cgi." "escape``, ``cgi.parse_qs`` and ``cgi.parse_qsl``." msgstr "" -#: ../build/NEWS:12115 +#: ../build/NEWS:12150 msgid "" "`bpo-33842 `__: Remove ``tarfile." "filemode`` which is deprecated since Python 3.3." msgstr "" -#: ../build/NEWS:12118 ../build/NEWS:13716 ../build/NEWS:18310 +#: ../build/NEWS:12153 ../build/NEWS:13751 ../build/NEWS:18345 msgid "" "`bpo-30167 `__: Prevent site.main() " "exception if PYTHONSTARTUP is set. Patch by Steve Weber." msgstr "" -#: ../build/NEWS:12121 +#: ../build/NEWS:12156 msgid "" "`bpo-33805 `__: Improve error message of " "dataclasses.replace() when an InitVar is not specified" msgstr "" -#: ../build/NEWS:12124 +#: ../build/NEWS:12159 msgid "" "`bpo-33687 `__: Fix the call to ``os." "chmod()`` for ``uu.decode()`` if a mode is given or decoded. Patch by Timo " "Furrer." msgstr "" -#: ../build/NEWS:12127 ../build/NEWS:13719 ../build/NEWS:18313 +#: ../build/NEWS:12162 ../build/NEWS:13754 ../build/NEWS:18348 msgid "" "`bpo-33812 `__: Datetime instance d with " "non-None tzinfo, but with d.tzinfo.utcoffset(d) returning None is now " "treated as naive by the astimezone() method." msgstr "" -#: ../build/NEWS:12131 +#: ../build/NEWS:12166 msgid "" "`bpo-32108 `__: In configparser, don't " "clear section when it is assigned to itself." msgstr "" -#: ../build/NEWS:12134 +#: ../build/NEWS:12169 msgid "" "`bpo-27397 `__: Make email module " "properly handle invalid-length base64 strings." msgstr "" -#: ../build/NEWS:12137 +#: ../build/NEWS:12172 msgid "" "`bpo-33578 `__: Implement multibyte " "encoder/decoder state methods" msgstr "" -#: ../build/NEWS:12139 ../build/NEWS:13723 ../build/NEWS:18317 +#: ../build/NEWS:12174 ../build/NEWS:13758 ../build/NEWS:18352 msgid "" "`bpo-30805 `__: Avoid race condition " "with debug logging" msgstr "" -#: ../build/NEWS:12141 +#: ../build/NEWS:12176 msgid "" "`bpo-33476 `__: Fix _header_value_parser." "py when address group is missing final ';'. Contributed by Enrique Perez-" "Terron" msgstr "" -#: ../build/NEWS:12144 ../build/NEWS:13725 +#: ../build/NEWS:12179 ../build/NEWS:13760 msgid "" "`bpo-33694 `__: asyncio: Fix a race " "condition causing data loss on pause_reading()/resume_reading() when using " "the ProactorEventLoop." msgstr "" -#: ../build/NEWS:12147 ../build/NEWS:13728 +#: ../build/NEWS:12182 ../build/NEWS:13763 msgid "" "`bpo-32493 `__: Correct test for " "``uuid_enc_be`` availability in ``configure.ac``. Patch by Michael Felt." msgstr "" -#: ../build/NEWS:12150 ../build/NEWS:13731 +#: ../build/NEWS:12185 ../build/NEWS:13766 msgid "" "`bpo-33792 `__: Add asyncio." "WindowsSelectorEventLoopPolicy and asyncio.WindowsProactorEventLoopPolicy." msgstr "" -#: ../build/NEWS:12153 +#: ../build/NEWS:12188 msgid "" "`bpo-33274 `__: W3C DOM Level 1 " "specifies return value of Element.removeAttributeNode() as \"The Attr node " "that was removed.\" xml.dom.minidom now complies with this requirement." msgstr "" -#: ../build/NEWS:12157 ../build/NEWS:13734 +#: ../build/NEWS:12192 ../build/NEWS:13769 msgid "" "`bpo-33778 `__: Update ``unicodedata``'s " "database to Unicode version 11.0.0." msgstr "" -#: ../build/NEWS:12159 +#: ../build/NEWS:12194 msgid "" "`bpo-33165 `__: Added a stacklevel " "parameter to logging calls to allow use of wrapper/helper functions for " "logging APIs." msgstr "" -#: ../build/NEWS:12162 ../build/NEWS:13736 +#: ../build/NEWS:12197 ../build/NEWS:13771 msgid "" "`bpo-33770 `__: improve base64 exception " "message for encoded inputs of invalid length" msgstr "" -#: ../build/NEWS:12165 ../build/NEWS:13739 +#: ../build/NEWS:12200 ../build/NEWS:13774 msgid "" "`bpo-33769 `__: asyncio/start_tls: Fix " "error message; cancel callbacks in case of an unhandled error; mark " "SSLTransport as closed if it is aborted." msgstr "" -#: ../build/NEWS:12168 ../build/NEWS:13742 ../build/NEWS:18319 +#: ../build/NEWS:12203 ../build/NEWS:13777 ../build/NEWS:18354 msgid "" "`bpo-33767 `__: The concatenation (``" "+``) and repetition (``*``) sequence operations now raise :exc:`TypeError` " @@ -23453,58 +23407,58 @@ msgid "" "Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:12172 ../build/NEWS:13746 +#: ../build/NEWS:12207 ../build/NEWS:13781 msgid "" "`bpo-33734 `__: asyncio/ssl: Fix " "AttributeError, increase default handshake timeout" msgstr "" -#: ../build/NEWS:12175 +#: ../build/NEWS:12210 msgid "" "`bpo-31014 `__: Fixed creating a " "controller for :mod:`webbrowser` when a user specifies a path to an entry in " "the BROWSER environment variable. Based on patch by John Still." msgstr "" -#: ../build/NEWS:12179 +#: ../build/NEWS:12214 msgid "" "`bpo-2504 `__: Add gettext.pgettext() and " "variants." msgstr "" -#: ../build/NEWS:12181 +#: ../build/NEWS:12216 msgid "" "`bpo-33197 `__: Add description property " "for _ParameterKind" msgstr "" -#: ../build/NEWS:12183 ../build/NEWS:13844 +#: ../build/NEWS:12218 ../build/NEWS:13879 msgid "" "`bpo-32751 `__: When cancelling the task " "due to a timeout, :meth:`asyncio.wait_for` will now wait until the " "cancellation is complete." msgstr "" -#: ../build/NEWS:12186 ../build/NEWS:13847 ../build/NEWS:18323 +#: ../build/NEWS:12221 ../build/NEWS:13882 ../build/NEWS:18358 msgid "" "`bpo-32684 `__: Fix gather to propagate " "cancellation of itself even with return_exceptions." msgstr "" -#: ../build/NEWS:12189 ../build/NEWS:13850 +#: ../build/NEWS:12224 ../build/NEWS:13885 msgid "" "`bpo-33654 `__: Support protocol type " "switching in SSLTransport.set_protocol()." msgstr "" -#: ../build/NEWS:12191 ../build/NEWS:13852 +#: ../build/NEWS:12226 ../build/NEWS:13887 msgid "" "`bpo-33674 `__: Pause the transport as " "early as possible to further reduce the risk of data_received() being called " "before connection_made()." msgstr "" -#: ../build/NEWS:12194 +#: ../build/NEWS:12229 msgid "" "`bpo-33671 `__: :func:`shutil." "copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, :func:`shutil." @@ -23517,7 +23471,7 @@ msgid "" "(Contributed by Giampaolo Rodola' in :issue:`25427`.)" msgstr "" -#: ../build/NEWS:12204 ../build/NEWS:13855 ../build/NEWS:18326 +#: ../build/NEWS:12239 ../build/NEWS:13890 ../build/NEWS:18361 msgid "" "`bpo-33674 `__: Fix a race condition in " "SSLProtocol.connection_made() of asyncio.sslproto: start immediately the " @@ -23525,38 +23479,38 @@ msgid "" "called before the handshake started, causing the handshake to hang or fail." msgstr "" -#: ../build/NEWS:12209 ../build/NEWS:13860 ../build/NEWS:18331 +#: ../build/NEWS:12244 ../build/NEWS:13895 ../build/NEWS:18366 msgid "" "`bpo-31647 `__: Fixed bug where calling " "write_eof() on a _SelectorSocketTransport after it's already closed raises " "AttributeError." msgstr "" -#: ../build/NEWS:12212 ../build/NEWS:13863 +#: ../build/NEWS:12247 ../build/NEWS:13898 msgid "" "`bpo-32610 `__: Make asyncio.all_tasks() " "return only pending tasks." msgstr "" -#: ../build/NEWS:12214 ../build/NEWS:13865 +#: ../build/NEWS:12249 ../build/NEWS:13900 msgid "" "`bpo-32410 `__: Avoid blocking on file " "IO in sendfile fallback code" msgstr "" -#: ../build/NEWS:12216 ../build/NEWS:13867 ../build/NEWS:18336 +#: ../build/NEWS:12251 ../build/NEWS:13902 ../build/NEWS:18371 msgid "" "`bpo-33469 `__: Fix RuntimeError after " "closing loop that used run_in_executor" msgstr "" -#: ../build/NEWS:12218 ../build/NEWS:13869 ../build/NEWS:18334 +#: ../build/NEWS:12253 ../build/NEWS:13904 ../build/NEWS:18369 msgid "" "`bpo-33672 `__: Fix Task.__repr__ crash " "with Cython's bogus coroutines" msgstr "" -#: ../build/NEWS:12220 ../build/NEWS:13871 +#: ../build/NEWS:12255 ../build/NEWS:13906 msgid "" "`bpo-33654 `__: Fix transport." "set_protocol() to support switching between asyncio.Protocol and asyncio." @@ -23564,20 +23518,20 @@ msgid "" "BufferedProtocols." msgstr "" -#: ../build/NEWS:12224 ../build/NEWS:13875 +#: ../build/NEWS:12259 ../build/NEWS:13910 msgid "" "`bpo-33652 `__: Pickles of type " "variables and subscripted generics are now future-proof and compatible with " "older Python versions." msgstr "" -#: ../build/NEWS:12227 ../build/NEWS:13878 +#: ../build/NEWS:12262 ../build/NEWS:13913 msgid "" "`bpo-32493 `__: Fixed :func:`uuid.uuid1` " "on FreeBSD." msgstr "" -#: ../build/NEWS:12229 +#: ../build/NEWS:12264 msgid "" "`bpo-33238 `__: Add " "``InvalidStateError`` to :mod:`concurrent.futures`. ``Future.set_result`` " @@ -23585,67 +23539,67 @@ msgid "" "are not pending or running. Patch by Jason Haydaman." msgstr "" -#: ../build/NEWS:12234 ../build/NEWS:13880 +#: ../build/NEWS:12269 ../build/NEWS:13915 msgid "" "`bpo-33618 `__: Finalize and document " "preliminary and experimental TLS 1.3 support with OpenSSL 1.1.1" msgstr "" -#: ../build/NEWS:12237 +#: ../build/NEWS:12272 msgid "" "`bpo-33625 `__: Release GIL on `grp." "getgrnam`, `grp.getgrgid`, `pwd.getpwnam` and `pwd.getpwuid` if reentrant " "variants of these functions are available. Patch by William Grzybowski." msgstr "" -#: ../build/NEWS:12241 ../build/NEWS:13883 +#: ../build/NEWS:12276 ../build/NEWS:13918 msgid "" "`bpo-33623 `__: Fix possible SIGSGV when " "asyncio.Future is created in __del__" msgstr "" -#: ../build/NEWS:12243 ../build/NEWS:13749 ../build/NEWS:18338 +#: ../build/NEWS:12278 ../build/NEWS:13784 ../build/NEWS:18373 msgid "" "`bpo-11874 `__: Use a better regex when " "breaking usage into wrappable parts. Avoids bogus assertion errors from " "custom metavar strings." msgstr "" -#: ../build/NEWS:12246 ../build/NEWS:13885 ../build/NEWS:18341 +#: ../build/NEWS:12281 ../build/NEWS:13920 ../build/NEWS:18376 msgid "" "`bpo-30877 `__: Fixed a bug in the " "Python implementation of the JSON decoder that prevented the cache of parsed " "strings from clearing after finishing the decoding. Based on patch by c-fos." msgstr "" -#: ../build/NEWS:12250 +#: ../build/NEWS:12285 msgid "" "`bpo-33604 `__: Remove HMAC default to " "md5 marked for removal in 3.8 (removal originally planned in 3.6, bump to " "3.8 in gh-7062)." msgstr "" -#: ../build/NEWS:12253 ../build/NEWS:13752 +#: ../build/NEWS:12288 ../build/NEWS:13787 msgid "" "`bpo-33582 `__: Emit a deprecation " "warning for inspect.formatargspec" msgstr "" -#: ../build/NEWS:12255 +#: ../build/NEWS:12290 msgid "" "`bpo-21145 `__: Add ``functools." "cached_property`` decorator, for computed properties cached for the life of " "the instance." msgstr "" -#: ../build/NEWS:12258 ../build/NEWS:13889 +#: ../build/NEWS:12293 ../build/NEWS:13924 msgid "" "`bpo-33570 `__: Change TLS 1.3 cipher " "suite settings for compatibility with OpenSSL 1.1.1-pre6 and newer. OpenSSL " "1.1.1 will have TLS 1.3 ciphers enabled by default." msgstr "" -#: ../build/NEWS:12262 ../build/NEWS:13893 +#: ../build/NEWS:12297 ../build/NEWS:13928 msgid "" "`bpo-28556 `__: Do not simplify " "arguments to `typing.Union`. Now `Union[Manager, Employee]` is not " @@ -23653,71 +23607,71 @@ msgid "" "several bugs and limited possibilities for introspection." msgstr "" -#: ../build/NEWS:12267 +#: ../build/NEWS:12302 msgid "" "`bpo-12486 `__: :func:`tokenize." "generate_tokens` is now documented as a public API to tokenize unicode " "strings. It was previously present but undocumented." msgstr "" -#: ../build/NEWS:12271 ../build/NEWS:13898 +#: ../build/NEWS:12306 ../build/NEWS:13933 msgid "" "`bpo-33540 `__: Add a new " "``block_on_close`` class attribute to ``ForkingMixIn`` and " "``ThreadingMixIn`` classes of :mod:`socketserver`." msgstr "" -#: ../build/NEWS:12274 ../build/NEWS:13901 ../build/NEWS:18345 +#: ../build/NEWS:12309 ../build/NEWS:13936 ../build/NEWS:18380 msgid "" "`bpo-33548 `__: tempfile." "_candidate_tempdir_list should consider common TEMP locations" msgstr "" -#: ../build/NEWS:12277 ../build/NEWS:13904 +#: ../build/NEWS:12312 ../build/NEWS:13939 msgid "" "`bpo-33109 `__: argparse subparsers are " "once again not required by default, reverting the change in behavior " "introduced by `bpo-26510 `__ in 3.7.0a2." msgstr "" -#: ../build/NEWS:12280 +#: ../build/NEWS:12315 msgid "" "`bpo-33541 `__: Remove unused private " "method ``_strptime.LocaleTime.__pad`` (a.k.a. ``_LocaleTime__pad``)." msgstr "" -#: ../build/NEWS:12283 ../build/NEWS:13907 +#: ../build/NEWS:12318 ../build/NEWS:13942 msgid "" "`bpo-33536 `__: dataclasses." "make_dataclass now checks for invalid field names and duplicate fields. " "Also, added a check for invalid field specifications." msgstr "" -#: ../build/NEWS:12287 ../build/NEWS:13911 ../build/NEWS:18348 +#: ../build/NEWS:12322 ../build/NEWS:13946 ../build/NEWS:18383 msgid "" "`bpo-33542 `__: Prevent ``uuid." "get_node`` from using a DUID instead of a MAC on Windows. Patch by Zvi Effron" msgstr "" -#: ../build/NEWS:12290 ../build/NEWS:13914 ../build/NEWS:18351 +#: ../build/NEWS:12325 ../build/NEWS:13949 ../build/NEWS:18386 msgid "" "`bpo-26819 `__: Fix race condition with " "`ReadTransport.resume_reading` in Windows proactor event loop." msgstr "" -#: ../build/NEWS:12293 ../build/NEWS:13917 +#: ../build/NEWS:12328 ../build/NEWS:13952 msgid "" "Fix failure in `typing.get_type_hints()` when ClassVar was provided as a " "string forward reference." msgstr "" -#: ../build/NEWS:12296 +#: ../build/NEWS:12331 msgid "" "`bpo-33516 `__: :class:`unittest.mock." "MagicMock` now supports the ``__round__`` magic method." msgstr "" -#: ../build/NEWS:12299 +#: ../build/NEWS:12334 msgid "" "`bpo-28612 `__: Added support for Site " "Maps to urllib's ``RobotFileParser`` as :meth:`RobotFileParser.site_maps() " @@ -23725,40 +23679,40 @@ msgid "" "patch by Peter Wirtz." msgstr "" -#: ../build/NEWS:12304 +#: ../build/NEWS:12339 msgid "" "`bpo-28167 `__: Remove platform." "linux_distribution, which was deprecated since 3.5." msgstr "" -#: ../build/NEWS:12307 +#: ../build/NEWS:12342 msgid "" "`bpo-33504 `__: Switch the default " "dictionary implementation for :mod:`configparser` from :class:`collections." "OrderedDict` to the standard :class:`dict` type." msgstr "" -#: ../build/NEWS:12311 ../build/NEWS:13920 +#: ../build/NEWS:12346 ../build/NEWS:13955 msgid "" "`bpo-33505 `__: Optimize asyncio." "ensure_future() by reordering if checks: 1.17x faster." msgstr "" -#: ../build/NEWS:12314 ../build/NEWS:13923 +#: ../build/NEWS:12349 ../build/NEWS:13958 msgid "" "`bpo-33497 `__: Add errors param to cgi." "parse_multipart and make an encoding in FieldStorage use the given errors " "(needed for Twisted). Patch by Amber Brown." msgstr "" -#: ../build/NEWS:12318 +#: ../build/NEWS:12353 msgid "" "`bpo-29235 `__: The :class:`cProfile." "Profile` class can now be used as a context manager. Patch by Scott " "Sanderson." msgstr "" -#: ../build/NEWS:12321 ../build/NEWS:13927 +#: ../build/NEWS:12356 ../build/NEWS:13962 msgid "" "`bpo-33495 `__: Change dataclasses." "Fields repr to use the repr of each of its members, instead of str. This " @@ -23766,14 +23720,14 @@ msgid "" "true for the 'type' member." msgstr "" -#: ../build/NEWS:12325 +#: ../build/NEWS:12360 msgid "" "`bpo-26103 `__: Correct ``inspect." "isdatadescriptor`` to look for ``__set__`` or ``__delete__``. Patch by " "Aaron Hall." msgstr "" -#: ../build/NEWS:12328 +#: ../build/NEWS:12363 msgid "" "`bpo-29209 `__: Removed the " "``doctype()`` method and the *html* parameter of the constructor of :class:" @@ -23783,7 +23737,7 @@ msgid "" "exc:`DeprecationWarning` instead of :exc:`PendingDeprecationWarning`." msgstr "" -#: ../build/NEWS:12335 ../build/NEWS:13931 +#: ../build/NEWS:12370 ../build/NEWS:13966 msgid "" "`bpo-33453 `__: Fix dataclasses to work " "if using literal string type annotations or if using PEP 563 \"Postponed " @@ -23792,7 +23746,7 @@ msgid "" "\" and \"dataclasses.InitVar\")." msgstr "" -#: ../build/NEWS:12340 ../build/NEWS:13936 ../build/NEWS:18354 +#: ../build/NEWS:12375 ../build/NEWS:13971 ../build/NEWS:18389 msgid "" "`bpo-28556 `__: Minor fixes in typing " "module: add annotations to ``NamedTuple.__new__``, pass ``*args`` and " @@ -23800,80 +23754,80 @@ msgid "" "Dombrova." msgstr "" -#: ../build/NEWS:12344 +#: ../build/NEWS:12379 msgid "" "`bpo-33365 `__: Print the header values " "besides the header keys instead just the header keys if *debuglevel* is set " "to >0 in :mod:`http.client`. Patch by Marco Strigl." msgstr "" -#: ../build/NEWS:12348 ../build/NEWS:13940 ../build/NEWS:18358 +#: ../build/NEWS:12383 ../build/NEWS:13975 ../build/NEWS:18393 msgid "" "`bpo-20087 `__: Updated alias mapping " "with glibc 2.27 supported locales." msgstr "" -#: ../build/NEWS:12350 ../build/NEWS:13942 ../build/NEWS:18360 +#: ../build/NEWS:12385 ../build/NEWS:13977 ../build/NEWS:18395 msgid "" "`bpo-33422 `__: Fix trailing quotation " "marks getting deleted when looking up byte/string literals on pydoc. Patch " "by Andrés Delfino." msgstr "" -#: ../build/NEWS:12353 ../build/NEWS:13945 +#: ../build/NEWS:12388 ../build/NEWS:13980 msgid "" "`bpo-28167 `__: The function ``platform." "linux_distribution`` and ``platform.dist`` now trigger a " "``DeprecationWarning`` and have been marked for removal in Python 3.8" msgstr "" -#: ../build/NEWS:12357 ../build/NEWS:14052 +#: ../build/NEWS:12392 ../build/NEWS:14087 msgid "" "`bpo-33281 `__: Fix ctypes.util." "find_library regression on macOS." msgstr "" -#: ../build/NEWS:12359 +#: ../build/NEWS:12394 msgid "" "`bpo-33311 `__: Text and html output " "generated by cgitb does not display parentheses if the current call is done " "directly in the module. Patch by Stéphane Blondon." msgstr "" -#: ../build/NEWS:12363 +#: ../build/NEWS:12398 msgid "" "`bpo-27300 `__: The file classes in " "*tempfile* now accept an *errors* parameter that complements the already " "existing *encoding*. Patch by Stephan Hohe." msgstr "" -#: ../build/NEWS:12366 +#: ../build/NEWS:12401 msgid "" "`bpo-32933 `__: :func:`unittest.mock." "mock_open` now supports iteration over the file contents. Patch by Tony " "Flury." msgstr "" -#: ../build/NEWS:12369 +#: ../build/NEWS:12404 msgid "" "`bpo-33217 `__: Raise :exc:`TypeError` " "when looking up non-Enum objects in Enum classes and Enum members." msgstr "" -#: ../build/NEWS:12372 ../build/NEWS:13949 ../build/NEWS:18363 +#: ../build/NEWS:12407 ../build/NEWS:13984 ../build/NEWS:18398 msgid "" "`bpo-33197 `__: Update error message " "when constructing invalid inspect.Parameters Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:12375 ../build/NEWS:14054 ../build/NEWS:18366 +#: ../build/NEWS:12410 ../build/NEWS:14089 ../build/NEWS:18401 msgid "" "`bpo-33383 `__: Fixed crash in the get() " "method of the :mod:`dbm.ndbm` database object when it is called with a " "single argument." msgstr "" -#: ../build/NEWS:12378 +#: ../build/NEWS:12413 msgid "" "`bpo-33375 `__: The warnings module now " "finds the Python file associated with a warning from the code object, rather " @@ -23881,115 +23835,115 @@ msgid "" "and pdb find filenames, and should work better for dynamically executed code." msgstr "" -#: ../build/NEWS:12383 +#: ../build/NEWS:12418 msgid "" "`bpo-33336 `__: ``imaplib`` now allows " "``MOVE`` command in ``IMAP4.uid()`` (RFC 6851: IMAP MOVE Extension) and " "potentially as a name of supported method of ``IMAP4`` object." msgstr "" -#: ../build/NEWS:12387 +#: ../build/NEWS:12422 msgid "" "`bpo-32455 `__: Added *jump* parameter " "to :func:`dis.stack_effect`." msgstr "" -#: ../build/NEWS:12389 +#: ../build/NEWS:12424 msgid "" "`bpo-27485 `__: Rename and deprecate " "undocumented functions in :func:`urllib.parse`." msgstr "" -#: ../build/NEWS:12392 +#: ../build/NEWS:12427 msgid "" "`bpo-33332 `__: Add ``signal." "valid_signals()`` to expose the POSIX sigfillset() functionality." msgstr "" -#: ../build/NEWS:12395 +#: ../build/NEWS:12430 msgid "" "`bpo-33251 `__: `ConfigParser.items()` " "was fixed so that key-value pairs passed in via `vars` are not included in " "the resulting output." msgstr "" -#: ../build/NEWS:12398 ../build/NEWS:14057 ../build/NEWS:18369 +#: ../build/NEWS:12433 ../build/NEWS:14092 ../build/NEWS:18404 msgid "" "`bpo-33329 `__: Fix multiprocessing " "regression on newer glibcs" msgstr "" -#: ../build/NEWS:12400 +#: ../build/NEWS:12435 msgid "" "`bpo-33334 `__: :func:`dis.stack_effect` " "now supports all defined opcodes including NOP and EXTENDED_ARG." msgstr "" -#: ../build/NEWS:12403 ../build/NEWS:14059 ../build/NEWS:18371 +#: ../build/NEWS:12438 ../build/NEWS:14094 ../build/NEWS:18406 msgid "" "`bpo-991266 `__: Fix quoting of the " "``Comment`` attribute of :class:`http.cookies.SimpleCookie`." msgstr "" -#: ../build/NEWS:12406 ../build/NEWS:14062 ../build/NEWS:18374 +#: ../build/NEWS:12441 ../build/NEWS:14097 ../build/NEWS:18409 msgid "" "`bpo-33131 `__: Upgrade bundled version " "of pip to 10.0.1." msgstr "" -#: ../build/NEWS:12408 ../build/NEWS:14064 ../build/NEWS:18376 +#: ../build/NEWS:12443 ../build/NEWS:14099 ../build/NEWS:18411 msgid "" "`bpo-33308 `__: Fixed a crash in the :" "mod:`parser` module when converting an ST object to a tree of tuples or " "lists with ``line_info=False`` and ``col_info=True``." msgstr "" -#: ../build/NEWS:12412 +#: ../build/NEWS:12447 msgid "" "`bpo-23403 `__: lib2to3 now uses pickle " "protocol 4 for pre-computed grammars." msgstr "" -#: ../build/NEWS:12414 ../build/NEWS:14068 +#: ../build/NEWS:12449 ../build/NEWS:14103 msgid "" "`bpo-33266 `__: lib2to3 now recognizes " "``rf'...'`` strings." msgstr "" -#: ../build/NEWS:12416 ../build/NEWS:14070 +#: ../build/NEWS:12451 ../build/NEWS:14105 msgid "" "`bpo-11594 `__: Ensure line-endings are " "respected when using lib2to3." msgstr "" -#: ../build/NEWS:12418 ../build/NEWS:14072 +#: ../build/NEWS:12453 ../build/NEWS:14107 msgid "" "`bpo-33254 `__: Have :func:`importlib." "resources.contents` and :meth:`importlib.abc.ResourceReader.contents` return " "an :term:`iterable` instead of an :term:`iterator`." msgstr "" -#: ../build/NEWS:12422 +#: ../build/NEWS:12457 msgid "" "`bpo-33265 `__: ``contextlib.ExitStack`` " "and ``contextlib.AsyncExitStack`` now use a method instead of a wrapper " "function for exit callbacks." msgstr "" -#: ../build/NEWS:12425 ../build/NEWS:13952 ../build/NEWS:18380 +#: ../build/NEWS:12460 ../build/NEWS:13987 ../build/NEWS:18415 msgid "" "`bpo-33263 `__: Fix FD leak in " "`_SelectorSocketTransport` Patch by Vlad Starostin." msgstr "" -#: ../build/NEWS:12428 ../build/NEWS:14076 ../build/NEWS:18383 +#: ../build/NEWS:12463 ../build/NEWS:14111 ../build/NEWS:18418 msgid "" "`bpo-33256 `__: Fix display of " "```` call in the html produced by ``cgitb.html()``. Patch by " "Stéphane Blondon." msgstr "" -#: ../build/NEWS:12431 +#: ../build/NEWS:12466 msgid "" "`bpo-33144 `__: ``random.Random()`` and " "its subclassing mechanism got optimized to check only once at class/subclass " @@ -23998,53 +23952,53 @@ msgid "" "large random integers. Patch by Wolfgang Maier." msgstr "" -#: ../build/NEWS:12437 +#: ../build/NEWS:12472 msgid "" "`bpo-33185 `__: Fixed regression when " "running pydoc with the :option:`-m` switch. (The regression was introduced " "in 3.7.0b3 by the resolution of :issue:`33053`)" msgstr "" -#: ../build/NEWS:12441 +#: ../build/NEWS:12476 msgid "" "This fix also changed pydoc to add ``os.getcwd()`` to :data:`sys.path` when " "necessary, rather than adding ``\".\"``." msgstr "" -#: ../build/NEWS:12444 +#: ../build/NEWS:12479 msgid "" "`bpo-29613 `__: Added support for the " "``SameSite`` cookie flag to the ``http.cookies`` module." msgstr "" -#: ../build/NEWS:12447 ../build/NEWS:14084 +#: ../build/NEWS:12482 ../build/NEWS:14119 msgid "" "`bpo-33169 `__: Delete entries of " "``None`` in :data:`sys.path_importer_cache` when :meth:`importlib.machinery." "invalidate_caches` is called." msgstr "" -#: ../build/NEWS:12450 ../build/NEWS:14090 ../build/NEWS:18386 +#: ../build/NEWS:12485 ../build/NEWS:14125 ../build/NEWS:18421 msgid "" "`bpo-33203 `__: ``random.Random." "choice()`` now raises ``IndexError`` for empty sequences consistently even " "when called from subclasses without a ``getrandbits()`` implementation." msgstr "" -#: ../build/NEWS:12454 ../build/NEWS:14094 ../build/NEWS:18390 +#: ../build/NEWS:12489 ../build/NEWS:14129 ../build/NEWS:18425 msgid "" "`bpo-33224 `__: Update difflib.mdiff() " "for :pep:`479`. Convert an uncaught StopIteration in a generator into a " "return-statement." msgstr "" -#: ../build/NEWS:12457 ../build/NEWS:14097 ../build/NEWS:18393 +#: ../build/NEWS:12492 ../build/NEWS:14132 ../build/NEWS:18428 msgid "" "`bpo-33209 `__: End framing at the end " "of C implementation of :func:`pickle.Pickler.dump`." msgstr "" -#: ../build/NEWS:12460 +#: ../build/NEWS:12495 msgid "" "`bpo-32861 `__: The urllib.robotparser's " "``__str__`` representation now includes wildcard entries and the \"Crawl-" @@ -24052,7 +24006,7 @@ msgid "" "being appended to the end of the string. Patch by Michael Lazar." msgstr "" -#: ../build/NEWS:12465 +#: ../build/NEWS:12500 msgid "" "`bpo-23403 `__: ``DEFAULT_PROTOCOL`` in :" "mod:`pickle` was bumped to 4. Protocol 4 is described in :pep:`3154` and " @@ -24060,47 +24014,47 @@ msgid "" "compared to protocol 3 introduced in Python 3.0." msgstr "" -#: ../build/NEWS:12470 ../build/NEWS:14100 +#: ../build/NEWS:12505 ../build/NEWS:14135 msgid "" "`bpo-20104 `__: Improved error handling " "and fixed a reference leak in :func:`os.posix_spawn()`." msgstr "" -#: ../build/NEWS:12473 +#: ../build/NEWS:12508 msgid "" "`bpo-33106 `__: Deleting a key from a " "read-only dbm database raises module specific error instead of KeyError." msgstr "" -#: ../build/NEWS:12476 ../build/NEWS:14103 +#: ../build/NEWS:12511 ../build/NEWS:14138 msgid "" "`bpo-33175 `__: In dataclasses, Field." "__set_name__ now looks up the __set_name__ special method on the class, not " "the instance, of the default value." msgstr "" -#: ../build/NEWS:12480 +#: ../build/NEWS:12515 msgid "" "`bpo-32380 `__: Create functools." "singledispatchmethod to support generic single dispatch on descriptors and " "methods." msgstr "" -#: ../build/NEWS:12483 ../build/NEWS:14243 +#: ../build/NEWS:12518 ../build/NEWS:14278 msgid "" "`bpo-33141 `__: Have Field objects pass " "through __set_name__ to their default values, if they have their own " "__set_name__." msgstr "" -#: ../build/NEWS:12486 ../build/NEWS:14246 ../build/NEWS:18400 +#: ../build/NEWS:12521 ../build/NEWS:14281 ../build/NEWS:18435 msgid "" "`bpo-33096 `__: Allow ttk.Treeview." "insert to insert iid that has a false boolean value. Note iid=0 and " "iid=False would be same. Patch by Garvit Khatri." msgstr "" -#: ../build/NEWS:12490 ../build/NEWS:14250 +#: ../build/NEWS:12525 ../build/NEWS:14285 msgid "" "`bpo-32873 `__: Treat type variables and " "special typing forms as immutable by copy and pickle. This fixes several " @@ -24108,7 +24062,7 @@ msgid "" "Python 3.6." msgstr "" -#: ../build/NEWS:12494 ../build/NEWS:14254 +#: ../build/NEWS:12529 ../build/NEWS:14289 msgid "" "`bpo-33134 `__: When computing " "dataclass's __hash__, use the lookup table to contain the function which " @@ -24116,46 +24070,46 @@ msgid "" "string, and then testing that string to see what to do." msgstr "" -#: ../build/NEWS:12499 ../build/NEWS:14259 ../build/NEWS:18404 +#: ../build/NEWS:12534 ../build/NEWS:14294 ../build/NEWS:18439 msgid "" "`bpo-33127 `__: The ssl module now " "compiles with LibreSSL 2.7.1." msgstr "" -#: ../build/NEWS:12501 ../build/NEWS:14261 +#: ../build/NEWS:12536 ../build/NEWS:14296 msgid "" "`bpo-32505 `__: Raise TypeError if a " "member variable of a dataclass is of type Field, but doesn't have a type " "annotation." msgstr "" -#: ../build/NEWS:12504 ../build/NEWS:14264 +#: ../build/NEWS:12539 ../build/NEWS:14299 msgid "" "`bpo-33078 `__: Fix the failure on OSX " "caused by the tests relying on sem_getvalue" msgstr "" -#: ../build/NEWS:12507 ../build/NEWS:14267 +#: ../build/NEWS:12542 ../build/NEWS:14302 msgid "" "`bpo-33116 `__: Add 'Field' to " "dataclasses.__all__." msgstr "" -#: ../build/NEWS:12509 ../build/NEWS:14269 +#: ../build/NEWS:12544 ../build/NEWS:14304 msgid "" "`bpo-32896 `__: Fix an error where " "subclassing a dataclass with a field that uses a default_factory would " "generate an incorrect class." msgstr "" -#: ../build/NEWS:12512 ../build/NEWS:14272 +#: ../build/NEWS:12547 ../build/NEWS:14307 msgid "" "`bpo-33100 `__: Dataclasses: If a field " "has a default value that's a MemberDescriptorType, then it's from that field " "being in __slots__, not an actual default value." msgstr "" -#: ../build/NEWS:12516 ../build/NEWS:14276 +#: ../build/NEWS:12551 ../build/NEWS:14311 msgid "" "`bpo-32953 `__: If a non-dataclass " "inherits from a frozen dataclass, allow attributes to be added to the " @@ -24164,77 +24118,77 @@ msgid "" "non-frozen." msgstr "" -#: ../build/NEWS:12521 ../build/NEWS:14107 +#: ../build/NEWS:12556 ../build/NEWS:14142 msgid "" "`bpo-33097 `__: Raise RuntimeError when " "``executor.submit`` is called during interpreter shutdown." msgstr "" -#: ../build/NEWS:12524 +#: ../build/NEWS:12559 msgid "" "`bpo-32968 `__: Modulo and floor " "division involving Fraction and float should return float." msgstr "" -#: ../build/NEWS:12527 ../build/NEWS:14281 +#: ../build/NEWS:12562 ../build/NEWS:14316 msgid "" "`bpo-33061 `__: Add missing ``NoReturn`` " "to ``__all__`` in typing.py" msgstr "" -#: ../build/NEWS:12529 ../build/NEWS:14283 +#: ../build/NEWS:12564 ../build/NEWS:14318 msgid "" "`bpo-33078 `__: Fix the size handling in " "multiprocessing.Queue when a pickling error occurs." msgstr "" -#: ../build/NEWS:12532 ../build/NEWS:14286 ../build/NEWS:18656 +#: ../build/NEWS:12567 ../build/NEWS:14321 ../build/NEWS:18691 msgid "" "`bpo-33064 `__: lib2to3 now properly " "supports trailing commas after ``*args`` and ``**kwargs`` in function " "signatures." msgstr "" -#: ../build/NEWS:12535 ../build/NEWS:14289 +#: ../build/NEWS:12570 ../build/NEWS:14324 msgid "" "`bpo-33056 `__: FIX properly close " "leaking fds in concurrent.futures.ProcessPoolExecutor." msgstr "" -#: ../build/NEWS:12538 ../build/NEWS:14292 ../build/NEWS:18406 +#: ../build/NEWS:12573 ../build/NEWS:14327 ../build/NEWS:18441 msgid "" "`bpo-33021 `__: Release the GIL during " "fstat() calls, avoiding hang of all threads when calling mmap.mmap(), os." "urandom(), and random.seed(). Patch by Nir Soffer." msgstr "" -#: ../build/NEWS:12542 ../build/NEWS:14296 ../build/NEWS:18659 +#: ../build/NEWS:12577 ../build/NEWS:14331 ../build/NEWS:18694 msgid "" "`bpo-31804 `__: Avoid failing in " "multiprocessing.Process if the standard streams are closed or None at exit." msgstr "" -#: ../build/NEWS:12545 +#: ../build/NEWS:12580 msgid "" "`bpo-33034 `__: Providing an explicit " "error message when casting the port property to anything that is not an " "integer value using ``urlparse()`` and ``urlsplit()``. Patch by Matt Eaton." msgstr "" -#: ../build/NEWS:12549 +#: ../build/NEWS:12584 msgid "" "`bpo-30249 `__: Improve struct." "unpack_from() exception messages for problems with the buffer size and " "offset." msgstr "" -#: ../build/NEWS:12552 ../build/NEWS:14299 ../build/NEWS:18662 +#: ../build/NEWS:12587 ../build/NEWS:14334 ../build/NEWS:18697 msgid "" "`bpo-33037 `__: Skip sending/receiving " "data after SSL transport closing." msgstr "" -#: ../build/NEWS:12554 ../build/NEWS:14301 ../build/NEWS:18410 +#: ../build/NEWS:12589 ../build/NEWS:14336 ../build/NEWS:18445 msgid "" "`bpo-27683 `__: Fix a regression in :mod:" "`ipaddress` that result of :meth:`hosts` is empty when the network is " @@ -24242,53 +24196,53 @@ msgid "" "addresses." msgstr "" -#: ../build/NEWS:12558 +#: ../build/NEWS:12593 msgid "" "`bpo-22674 `__: Add the strsignal() " "function in the signal module that returns the system description of the " "given signal, as returned by strsignal(3)." msgstr "" -#: ../build/NEWS:12561 ../build/NEWS:14305 +#: ../build/NEWS:12596 ../build/NEWS:14340 msgid "" "`bpo-32999 `__: Fix C implementation of " "``ABC.__subclasscheck__(cls, subclass)`` crashed when ``subclass`` is not a " "type object." msgstr "" -#: ../build/NEWS:12564 ../build/NEWS:14308 ../build/NEWS:18666 +#: ../build/NEWS:12599 ../build/NEWS:14343 ../build/NEWS:18701 msgid "" "`bpo-33009 `__: Fix inspect.signature() " "for single-parameter partialmethods." msgstr "" -#: ../build/NEWS:12566 ../build/NEWS:14310 ../build/NEWS:18668 +#: ../build/NEWS:12601 ../build/NEWS:14345 ../build/NEWS:18703 msgid "" "`bpo-32969 `__: Expose several missing " "constants in zlib and fix corresponding documentation." msgstr "" -#: ../build/NEWS:12569 ../build/NEWS:14313 +#: ../build/NEWS:12604 ../build/NEWS:14348 msgid "" "`bpo-32056 `__: Improved exceptions " "raised for invalid number of channels and sample width when read an audio " "file in modules :mod:`aifc`, :mod:`wave` and :mod:`sunau`." msgstr "" -#: ../build/NEWS:12573 +#: ../build/NEWS:12608 msgid "" "`bpo-32970 `__: Improved disassembly of " "the MAKE_FUNCTION instruction." msgstr "" -#: ../build/NEWS:12575 ../build/NEWS:14317 ../build/NEWS:18414 +#: ../build/NEWS:12610 ../build/NEWS:14352 ../build/NEWS:18449 msgid "" "`bpo-32844 `__: Fix wrong redirection of " "a low descriptor (0 or 1) to stderr in subprocess if another low descriptor " "is closed." msgstr "" -#: ../build/NEWS:12578 ../build/NEWS:14448 +#: ../build/NEWS:12613 ../build/NEWS:14483 msgid "" "`bpo-32960 `__: For dataclasses, " "disallow inheriting frozen from non-frozen classes, and also disallow " @@ -24296,20 +24250,20 @@ msgid "" "at a future date." msgstr "" -#: ../build/NEWS:12582 ../build/NEWS:14452 ../build/NEWS:18671 +#: ../build/NEWS:12617 ../build/NEWS:14487 ../build/NEWS:18706 msgid "" "`bpo-32713 `__: Fixed tarfile.itn " "handling of out-of-bounds float values. Patch by Joffrey Fuhrer." msgstr "" -#: ../build/NEWS:12585 ../build/NEWS:13959 +#: ../build/NEWS:12620 ../build/NEWS:13994 msgid "" "`bpo-32257 `__: The ssl module now " "contains OP_NO_RENEGOTIATION constant, available with OpenSSL 1.1.0h or " "1.1.1." msgstr "" -#: ../build/NEWS:12588 ../build/NEWS:14455 +#: ../build/NEWS:12623 ../build/NEWS:14490 msgid "" "`bpo-32951 `__: Direct instantiation of " "SSLSocket and SSLObject objects is now prohibited. The constructors were " @@ -24317,7 +24271,7 @@ msgid "" "suppose to use ssl.wrap_socket() or SSLContext." msgstr "" -#: ../build/NEWS:12593 ../build/NEWS:14460 +#: ../build/NEWS:12628 ../build/NEWS:14495 msgid "" "`bpo-32929 `__: Remove the tri-state " "parameter \"hash\", and add the boolean \"unsafe_hash\". If unsafe_hash is " @@ -24327,71 +24281,71 @@ msgid "" "behavior. unsafe_hash=False is the default, just as hash=None used to be." msgstr "" -#: ../build/NEWS:12600 ../build/NEWS:14467 +#: ../build/NEWS:12635 ../build/NEWS:14502 msgid "" "`bpo-32947 `__: Add " "OP_ENABLE_MIDDLEBOX_COMPAT and test workaround for TLSv1.3 for future " "compatibility with OpenSSL 1.1.1." msgstr "" -#: ../build/NEWS:12603 +#: ../build/NEWS:12638 msgid "" "`bpo-32146 `__: Document the interaction " "between frozen executables and the spawn and forkserver start methods in " "multiprocessing." msgstr "" -#: ../build/NEWS:12606 ../build/NEWS:14470 ../build/NEWS:18674 +#: ../build/NEWS:12641 ../build/NEWS:14505 ../build/NEWS:18709 msgid "" "`bpo-30622 `__: The ssl module now " "detects missing NPN support in LibreSSL." msgstr "" -#: ../build/NEWS:12608 ../build/NEWS:14472 ../build/NEWS:18676 +#: ../build/NEWS:12643 ../build/NEWS:14507 ../build/NEWS:18711 msgid "" "`bpo-32922 `__: dbm.open() now encodes " "filename with the filesystem encoding rather than default encoding." msgstr "" -#: ../build/NEWS:12611 +#: ../build/NEWS:12646 msgid "" "`bpo-32759 `__: Free unused arenas in " "multiprocessing.heap." msgstr "" -#: ../build/NEWS:12613 ../build/NEWS:14475 ../build/NEWS:18679 +#: ../build/NEWS:12648 ../build/NEWS:14510 ../build/NEWS:18714 msgid "" "`bpo-32859 `__: In ``os.dup2``, don't " "check every call whether the ``dup3`` syscall exists or not." msgstr "" -#: ../build/NEWS:12616 ../build/NEWS:14478 +#: ../build/NEWS:12651 ../build/NEWS:14513 msgid "" "`bpo-32556 `__: nt._getfinalpathname, nt." "_getvolumepathname and nt._getdiskusage now correctly convert from bytes." msgstr "" -#: ../build/NEWS:12619 ../build/NEWS:14484 ../build/NEWS:18682 +#: ../build/NEWS:12654 ../build/NEWS:14519 ../build/NEWS:18717 msgid "" "`bpo-21060 `__: Rewrite confusing " "message from setup.py upload from \"No dist file created in earlier command" "\" to the more helpful \"Must create and upload files in one command\"." msgstr "" -#: ../build/NEWS:12623 ../build/NEWS:14320 ../build/NEWS:18686 +#: ../build/NEWS:12658 ../build/NEWS:14355 ../build/NEWS:18721 msgid "" "`bpo-32857 `__: In :mod:`tkinter`, " "``after_cancel(None)`` now raises a :exc:`ValueError` instead of canceling " "the first scheduled function. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:12627 ../build/NEWS:14488 ../build/NEWS:18690 +#: ../build/NEWS:12662 ../build/NEWS:14523 ../build/NEWS:18725 msgid "" "`bpo-32852 `__: Make sure sys.argv " "remains as a list when running trace." msgstr "" -#: ../build/NEWS:12629 +#: ../build/NEWS:12664 msgid "" "`bpo-31333 `__: ``_abc`` module is " "added. It is a speedup module with C implementations for various functions " @@ -24400,7 +24354,7 @@ msgid "" "this makes Python start-up up to 10% faster." msgstr "" -#: ../build/NEWS:12635 +#: ../build/NEWS:12670 msgid "" "Note that the new implementation hides internal registry and caches, " "previously accessible via private attributes ``_abc_registry``, " @@ -24409,14 +24363,14 @@ msgid "" "``_abc_registry_clear``, and ``_abc_caches_clear``." msgstr "" -#: ../build/NEWS:12641 ../build/NEWS:14500 ../build/NEWS:18692 +#: ../build/NEWS:12676 ../build/NEWS:14535 ../build/NEWS:18727 msgid "" "`bpo-32841 `__: Fixed `asyncio." "Condition` issue which silently ignored cancellation after notifying and " "cancelling a conditional lock. Patch by Bar Harel." msgstr "" -#: ../build/NEWS:12645 ../build/NEWS:14504 +#: ../build/NEWS:12680 ../build/NEWS:14539 msgid "" "`bpo-32819 `__: ssl.match_hostname() has " "been simplified and no longer depends on re and ipaddress module for " @@ -24424,46 +24378,46 @@ msgid "" "improved." msgstr "" -#: ../build/NEWS:12649 +#: ../build/NEWS:12684 msgid "" "`bpo-19675 `__: ``multiprocessing.Pool`` " "no longer leaks processes if its initialization fails." msgstr "" -#: ../build/NEWS:12652 ../build/NEWS:14508 +#: ../build/NEWS:12687 ../build/NEWS:14543 msgid "" "`bpo-32394 `__: socket: Remove " "TCP_FASTOPEN,TCP_KEEPCNT,TCP_KEEPIDLE,TCP_KEEPINTVL flags on older version " "Windows during run-time." msgstr "" -#: ../build/NEWS:12656 ../build/NEWS:14512 ../build/NEWS:18696 +#: ../build/NEWS:12691 ../build/NEWS:14547 ../build/NEWS:18731 msgid "" "`bpo-31787 `__: Fixed refleaks of " "``__init__()`` methods in various modules. (Contributed by Oren Milman)" msgstr "" -#: ../build/NEWS:12659 ../build/NEWS:14515 ../build/NEWS:18699 +#: ../build/NEWS:12694 ../build/NEWS:14550 ../build/NEWS:18734 msgid "" "`bpo-30157 `__: Fixed guessing quote and " "delimiter in csv.Sniffer.sniff() when only the last field is quoted. Patch " "by Jake Davis." msgstr "" -#: ../build/NEWS:12662 +#: ../build/NEWS:12697 msgid "" "`bpo-30688 `__: Added support of ``" "\\N{name}`` escapes in regular expressions. Based on patch by Jonathan " "Eunice." msgstr "" -#: ../build/NEWS:12665 ../build/NEWS:14518 +#: ../build/NEWS:12700 ../build/NEWS:14553 msgid "" "`bpo-32792 `__: collections.ChainMap() " "preserves the order of the underlying mappings." msgstr "" -#: ../build/NEWS:12668 ../build/NEWS:14521 +#: ../build/NEWS:12703 ../build/NEWS:14556 msgid "" "`bpo-32775 `__: :func:`fnmatch." "translate()` no longer produces patterns which contain set operations. Sets " @@ -24473,13 +24427,13 @@ msgid "" "sets by accident." msgstr "" -#: ../build/NEWS:12674 ../build/NEWS:14527 +#: ../build/NEWS:12709 ../build/NEWS:14562 msgid "" "`bpo-32622 `__: Implement native fast " "sendfile for Windows proactor event loop." msgstr "" -#: ../build/NEWS:12676 ../build/NEWS:14529 ../build/NEWS:18705 +#: ../build/NEWS:12711 ../build/NEWS:14564 ../build/NEWS:18740 msgid "" "`bpo-32777 `__: Fix a rare but potential " "pre-exec child process deadlock in subprocess on POSIX systems when marking " @@ -24487,46 +24441,46 @@ msgid "" "to have been introduced in 3.4." msgstr "" -#: ../build/NEWS:12681 ../build/NEWS:14534 ../build/NEWS:18710 +#: ../build/NEWS:12716 ../build/NEWS:14569 ../build/NEWS:18745 msgid "" "`bpo-32647 `__: The ctypes module used " "to depend on indirect linking for dlopen. The shared extension is now " "explicitly linked against libdl on platforms with dl." msgstr "" -#: ../build/NEWS:12685 +#: ../build/NEWS:12720 msgid "" "`bpo-32749 `__: A :mod:`dbm.dumb` " "database opened with flags 'r' is now read-only. :func:`dbm.dumb.open` with " "flags 'r' and 'w' no longer creates a database if it does not exist." msgstr "" -#: ../build/NEWS:12689 ../build/NEWS:14538 +#: ../build/NEWS:12724 ../build/NEWS:14573 msgid "" "`bpo-32741 `__: Implement ``asyncio." "TimerHandle.when()`` method." msgstr "" -#: ../build/NEWS:12691 ../build/NEWS:14540 +#: ../build/NEWS:12726 ../build/NEWS:14575 msgid "" "`bpo-32691 `__: Use mod_spec.parent when " "running modules with pdb" msgstr "" -#: ../build/NEWS:12693 ../build/NEWS:14542 ../build/NEWS:18714 +#: ../build/NEWS:12728 ../build/NEWS:14577 ../build/NEWS:18749 msgid "" "`bpo-32734 `__: Fixed ``asyncio.Lock()`` " "safety issue which allowed acquiring and locking the same lock multiple " "times, without it being free. Patch by Bar Harel." msgstr "" -#: ../build/NEWS:12697 ../build/NEWS:14546 ../build/NEWS:18718 +#: ../build/NEWS:12732 ../build/NEWS:14581 ../build/NEWS:18753 msgid "" "`bpo-32727 `__: Do not include name " "field in SMTP envelope from address. Patch by Stéphane Wirtel" msgstr "" -#: ../build/NEWS:12700 ../build/NEWS:14549 +#: ../build/NEWS:12735 ../build/NEWS:14584 msgid "" "`bpo-31453 `__: Add TLSVersion constants " "and SSLContext.maximum_version / minimum_version attributes. The new API " @@ -24534,7 +24488,7 @@ msgid "" "SSL_CTX_set_min_proto_version.html feature." msgstr "" -#: ../build/NEWS:12705 ../build/NEWS:14554 +#: ../build/NEWS:12740 ../build/NEWS:14589 msgid "" "`bpo-24334 `__: Internal implementation " "details of ssl module were cleaned up. The SSLSocket has one less layer of " @@ -24543,51 +24497,51 @@ msgid "" "simplified." msgstr "" -#: ../build/NEWS:12710 ../build/NEWS:14559 ../build/NEWS:18731 +#: ../build/NEWS:12745 ../build/NEWS:14594 ../build/NEWS:18766 msgid "" "`bpo-31848 `__: Fix the error handling " "in Aifc_read.initfp() when the SSND chunk is not found. Patch by Zackery " "Spytz." msgstr "" -#: ../build/NEWS:12713 ../build/NEWS:14562 +#: ../build/NEWS:12748 ../build/NEWS:14597 msgid "" "`bpo-32585 `__: Add Ttk spinbox widget " "to :mod:`tkinter.ttk`. Patch by Alan D Moore." msgstr "" -#: ../build/NEWS:12716 +#: ../build/NEWS:12751 msgid "" "`bpo-32512 `__: :mod:`profile` CLI " "accepts `-m module_name` as an alternative to script path." msgstr "" -#: ../build/NEWS:12719 +#: ../build/NEWS:12754 msgid "" "`bpo-8525 `__: help() on a type now " "displays builtin subclasses. This is intended primarily to help with " "notification of more specific exception subclasses." msgstr "" -#: ../build/NEWS:12723 +#: ../build/NEWS:12758 msgid "Patch by Sanyam Khurana." msgstr "" -#: ../build/NEWS:12725 +#: ../build/NEWS:12760 msgid "" "`bpo-31639 `__: http.server now exposes " "a ThreadingHTTPServer class and uses it when the module is run with ``-m`` " "to cope with web browsers pre-opening sockets." msgstr "" -#: ../build/NEWS:12729 +#: ../build/NEWS:12764 msgid "" "`bpo-29877 `__: compileall: import " "ProcessPoolExecutor only when needed, preventing hangs on low resource " "platforms" msgstr "" -#: ../build/NEWS:12732 ../build/NEWS:14565 +#: ../build/NEWS:12767 ../build/NEWS:14600 msgid "" "`bpo-32221 `__: Various functions " "returning tuple containing IPv6 addresses now omit ``%scope`` part since the " @@ -24596,45 +24550,45 @@ msgid "" "useless resolving of network interface name is omitted." msgstr "" -#: ../build/NEWS:12738 +#: ../build/NEWS:12773 msgid "" "`bpo-32147 `__: :func:`binascii." "unhexlify` is now up to 2 times faster. Patch by Sergey Fedoseev." msgstr "" -#: ../build/NEWS:12741 ../build/NEWS:14571 +#: ../build/NEWS:12776 ../build/NEWS:14606 msgid "" "`bpo-30693 `__: The TarFile class now " "recurses directories in a reproducible way." msgstr "" -#: ../build/NEWS:12744 ../build/NEWS:14574 +#: ../build/NEWS:12779 ../build/NEWS:14609 msgid "" "`bpo-30693 `__: The ZipFile class now " "recurses directories in a reproducible way." msgstr "" -#: ../build/NEWS:12747 +#: ../build/NEWS:12782 msgid "" "`bpo-31680 `__: Added :data:`curses." "ncurses_version`." msgstr "" -#: ../build/NEWS:12749 ../build/NEWS:14110 ../build/NEWS:18417 +#: ../build/NEWS:12784 ../build/NEWS:14145 ../build/NEWS:18452 msgid "" "`bpo-31908 `__: Fix output of cover " "files for ``trace`` module command-line tool. Previously emitted cover files " "only when ``--missing`` option was used. Patch by Michael Selik." msgstr "" -#: ../build/NEWS:12753 +#: ../build/NEWS:12788 msgid "" "`bpo-31608 `__: Raise a ``TypeError`` " "instead of crashing if a ``collections.deque`` subclass returns a non-deque " "from ``__new__``. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:12757 +#: ../build/NEWS:12792 msgid "" "`bpo-31425 `__: Add support for sockets " "of the AF_QIPCRTR address family, supported by the Linux kernel. This is " @@ -24642,7 +24596,7 @@ msgid "" "devices. Patch by Bjorn Andersson." msgstr "" -#: ../build/NEWS:12762 +#: ../build/NEWS:12797 msgid "" "`bpo-22005 `__: Implemented unpickling " "instances of :class:`~datetime.datetime`, :class:`~datetime.date` and :class:" @@ -24650,7 +24604,7 @@ msgid "" "for successful decoding." msgstr "" -#: ../build/NEWS:12767 ../build/NEWS:14328 +#: ../build/NEWS:12802 ../build/NEWS:14363 msgid "" "`bpo-27645 `__: :class:`sqlite3." "Connection` now exposes a :class:`~sqlite3.Connection.backup` method, if the " @@ -24658,44 +24612,44 @@ msgid "" "Gaifax." msgstr "" -#: ../build/NEWS:12771 ../build/NEWS:13962 ../build/NEWS:18424 +#: ../build/NEWS:12806 ../build/NEWS:13997 ../build/NEWS:18459 msgid "" "`bpo-16865 `__: Support arrays >=2GiB " "in :mod:`ctypes`. Patch by Segev Finer." msgstr "" -#: ../build/NEWS:12773 +#: ../build/NEWS:12808 msgid "" "`bpo-31508 `__: Removed support of " "arguments in `tkinter.ttk.Treeview.selection`. It was deprecated in 3.6. " "Use specialized methods like `selection_set` for changing the selection." msgstr "" -#: ../build/NEWS:12777 +#: ../build/NEWS:12812 msgid "" "`bpo-29456 `__: Fix bugs in hangul " "normalization: u1176, u11a7 and u11c3" msgstr "" -#: ../build/NEWS:12782 +#: ../build/NEWS:12817 msgid "" "`bpo-21257 `__: Document :func:`http." "client.parse_headers`." msgstr "" -#: ../build/NEWS:12784 +#: ../build/NEWS:12819 msgid "" "`bpo-34764 `__: Improve example of " "iter() with 2nd sentinel argument." msgstr "" -#: ../build/NEWS:12786 +#: ../build/NEWS:12821 msgid "" "`bpo-35564 `__: Explicitly set " "master_doc variable in conf.py for compliance with Sphinx 2.0" msgstr "" -#: ../build/NEWS:12789 +#: ../build/NEWS:12824 msgid "" "`bpo-35511 `__: Specified that profile." "Profile class doesn't not support enable or disable methods. Also, " @@ -24703,127 +24657,127 @@ msgid "" "cProfile module." msgstr "" -#: ../build/NEWS:12793 +#: ../build/NEWS:12828 msgid "" "`bpo-10536 `__: Enhance the gettext " "docs. Patch by Éric Araujo" msgstr "" -#: ../build/NEWS:12795 +#: ../build/NEWS:12830 msgid "" "`bpo-35089 `__: Remove mention of " "``typing.io`` and ``typing.re``. Their types should be imported from " "``typing`` directly." msgstr "" -#: ../build/NEWS:12798 +#: ../build/NEWS:12833 msgid "" "`bpo-35038 `__: Fix the documentation " "about an unexisting `f_restricted` attribute in the frame object. Patch by " "Stéphane Wirtel" msgstr "" -#: ../build/NEWS:12801 +#: ../build/NEWS:12836 msgid "" "`bpo-35042 `__: Replace PEP XYZ by the " "pep role and allow to use the direct links to the PEPs." msgstr "" -#: ../build/NEWS:12804 +#: ../build/NEWS:12839 msgid "" "`bpo-35044 `__: Fix the documentation " "with the role ``exc`` for the appropriated exception. Patch by Stéphane " "Wirtel" msgstr "" -#: ../build/NEWS:12807 +#: ../build/NEWS:12842 msgid "" "`bpo-35035 `__: Rename documentation " "for :mod:`email.utils` to ``email.utils.rst``." msgstr "" -#: ../build/NEWS:12810 +#: ../build/NEWS:12845 msgid "" "`bpo-34967 `__: Use app." "add_object_type() instead of the deprecated Sphinx function app." "description_unit()" msgstr "" -#: ../build/NEWS:12813 +#: ../build/NEWS:12848 msgid "" "`bpo-34913 `__: Add documentation about " "the new command line interface of the gzip module." msgstr "" -#: ../build/NEWS:12816 +#: ../build/NEWS:12851 msgid "" "`bpo-32174 `__: chm document displays " "non-ASCII charaters properly on some MBCS Windows systems." msgstr "" -#: ../build/NEWS:12819 +#: ../build/NEWS:12854 msgid "" "`bpo-11233 `__: Create availability " "directive for documentation. Original patch by Georg Brandl." msgstr "" -#: ../build/NEWS:12822 +#: ../build/NEWS:12857 msgid "" "`bpo-34790 `__: Document how passing " "coroutines to asyncio.wait() can be confusing." msgstr "" -#: ../build/NEWS:12825 +#: ../build/NEWS:12860 msgid "" "`bpo-34552 `__: Make clear that ``==`` " "operator sometimes is equivalent to `is`. The ``<``, ``<=``, ``>`` and " "``>=`` operators are only defined where they make sense." msgstr "" -#: ../build/NEWS:12829 +#: ../build/NEWS:12864 msgid "" "`bpo-28617 `__: Fixed info in the " "stdtypes docs concerning the types that support membership tests." msgstr "" -#: ../build/NEWS:12832 +#: ../build/NEWS:12867 msgid "" "`bpo-20177 `__: Migrate datetime.date." "fromtimestamp to Argument Clinic. Patch by Tim Hoffmann." msgstr "" -#: ../build/NEWS:12835 +#: ../build/NEWS:12870 msgid "" "`bpo-34065 `__: Fix wrongly written " "basicConfig documentation markup syntax" msgstr "" -#: ../build/NEWS:12837 +#: ../build/NEWS:12872 msgid "" "`bpo-33460 `__: replaced ellipsis with " "correct error codes in tutorial chapter 3." msgstr "" -#: ../build/NEWS:12840 +#: ../build/NEWS:12875 msgid "" "`bpo-33847 `__: Add '@' operator entry " "to index." msgstr "" -#: ../build/NEWS:12842 ../build/NEWS:13757 +#: ../build/NEWS:12877 ../build/NEWS:13792 msgid "" "`bpo-33409 `__: Clarified the " "relationship between :pep:`538`'s PYTHONCOERCECLOCALE and PEP 540's " "PYTHONUTF8 mode." msgstr "" -#: ../build/NEWS:12845 +#: ../build/NEWS:12880 msgid "" "`bpo-33197 `__: Add versionadded tag to " "the documentation of ParameterKind.description" msgstr "" -#: ../build/NEWS:12848 +#: ../build/NEWS:12883 msgid "" "`bpo-17045 `__: Improve the C-API doc " "for PyTypeObject. This includes adding several quick-reference tables and a " @@ -24831,32 +24785,32 @@ msgid "" "up with a slightly more consistent format." msgstr "" -#: ../build/NEWS:12853 ../build/NEWS:13760 +#: ../build/NEWS:12888 ../build/NEWS:13795 msgid "" "`bpo-33736 `__: Improve the " "documentation of :func:`asyncio.open_connection`, :func:`asyncio." "start_server` and their UNIX socket counterparts." msgstr "" -#: ../build/NEWS:12856 ../build/NEWS:13967 +#: ../build/NEWS:12891 ../build/NEWS:14002 msgid "" "`bpo-23859 `__: Document that `asyncio." "wait()` does not cancel its futures on timeout." msgstr "" -#: ../build/NEWS:12859 ../build/NEWS:13970 +#: ../build/NEWS:12894 ../build/NEWS:14005 msgid "" "`bpo-32436 `__: Document :pep:`567` " "changes to asyncio." msgstr "" -#: ../build/NEWS:12861 ../build/NEWS:13972 +#: ../build/NEWS:12896 ../build/NEWS:14007 msgid "" "`bpo-33604 `__: Update HMAC md5 default " "to a DeprecationWarning, bump removal to 3.8." msgstr "" -#: ../build/NEWS:12864 +#: ../build/NEWS:12899 msgid "" "`bpo-33594 `__: Document ``getargspec``, " "``from_function`` and ``from_builtin`` as deprecated in their respective " @@ -24864,183 +24818,183 @@ msgid "" "message." msgstr "" -#: ../build/NEWS:12868 ../build/NEWS:13975 ../build/NEWS:18433 +#: ../build/NEWS:12903 ../build/NEWS:14010 ../build/NEWS:18468 msgid "" "`bpo-33503 `__: Fix broken pypi link" msgstr "" -#: ../build/NEWS:12870 ../build/NEWS:13977 ../build/NEWS:18435 +#: ../build/NEWS:12905 ../build/NEWS:14012 ../build/NEWS:18470 msgid "" "`bpo-33421 `__: Add missing " "documentation for ``typing.AsyncContextManager``." msgstr "" -#: ../build/NEWS:12872 +#: ../build/NEWS:12907 msgid "" "`bpo-33487 `__: BZ2file now emit a " "DeprecationWarning when buffering=None is passed, the deprecation message " "and documentation also now explicitly state it is deprecated since 3.0." msgstr "" -#: ../build/NEWS:12876 ../build/NEWS:14117 ../build/NEWS:18437 +#: ../build/NEWS:12911 ../build/NEWS:14152 ../build/NEWS:18472 msgid "" "`bpo-33378 `__: Add Korean language " "switcher for https://docs.python.org/3/" msgstr "" -#: ../build/NEWS:12878 ../build/NEWS:14119 ../build/NEWS:18439 +#: ../build/NEWS:12913 ../build/NEWS:14154 ../build/NEWS:18474 msgid "" "`bpo-33276 `__: Clarify that the " "``__path__`` attribute on modules cannot be just any value." msgstr "" -#: ../build/NEWS:12881 ../build/NEWS:14122 ../build/NEWS:18442 +#: ../build/NEWS:12916 ../build/NEWS:14157 ../build/NEWS:18477 msgid "" "`bpo-33201 `__: Modernize documentation " "for writing C extension types." msgstr "" -#: ../build/NEWS:12883 ../build/NEWS:14124 ../build/NEWS:18444 +#: ../build/NEWS:12918 ../build/NEWS:14159 ../build/NEWS:18479 msgid "" "`bpo-33195 `__: Deprecate ``Py_UNICODE`` " "usage in ``c-api/arg`` document. ``Py_UNICODE`` related APIs are deprecated " "since Python 3.3, but it is missed in the document." msgstr "" -#: ../build/NEWS:12887 ../build/NEWS:14335 ../build/NEWS:18448 +#: ../build/NEWS:12922 ../build/NEWS:14370 ../build/NEWS:18483 msgid "" "`bpo-33126 `__: Document " "PyBuffer_ToContiguous()." msgstr "" -#: ../build/NEWS:12889 ../build/NEWS:14337 ../build/NEWS:18450 +#: ../build/NEWS:12924 ../build/NEWS:14372 ../build/NEWS:18485 msgid "" "`bpo-27212 `__: Modify documentation for " "the :func:`islice` recipe to consume initial values up to the start index." msgstr "" -#: ../build/NEWS:12892 ../build/NEWS:14340 ../build/NEWS:18453 +#: ../build/NEWS:12927 ../build/NEWS:14375 ../build/NEWS:18488 msgid "" "`bpo-28247 `__: Update :mod:`zipapp` " "documentation to describe how to make standalone applications." msgstr "" -#: ../build/NEWS:12895 ../build/NEWS:14343 ../build/NEWS:18456 +#: ../build/NEWS:12930 ../build/NEWS:14378 ../build/NEWS:18491 msgid "" "`bpo-18802 `__: Documentation changes " "for ipaddress. Patch by Jon Foster and Berker Peksag." msgstr "" -#: ../build/NEWS:12898 ../build/NEWS:14346 ../build/NEWS:18459 +#: ../build/NEWS:12933 ../build/NEWS:14381 ../build/NEWS:18494 msgid "" "`bpo-27428 `__: Update documentation to " "clarify that ``WindowsRegistryFinder`` implements ``MetaPathFinder``. (Patch " "by Himanshu Lakhara)" msgstr "" -#: ../build/NEWS:12901 ../build/NEWS:14580 +#: ../build/NEWS:12936 ../build/NEWS:14615 msgid "" "`bpo-28124 `__: The ssl module function " "ssl.wrap_socket() has been de-emphasized and deprecated in favor of the more " "secure and efficient SSLContext.wrap_socket() method." msgstr "" -#: ../build/NEWS:12905 ../build/NEWS:14584 ../build/NEWS:18789 +#: ../build/NEWS:12940 ../build/NEWS:14619 ../build/NEWS:18824 msgid "" "`bpo-17232 `__: Clarify docs for -O and -" "OO. Patch by Terry Reedy." msgstr "" -#: ../build/NEWS:12907 ../build/NEWS:14586 +#: ../build/NEWS:12942 ../build/NEWS:14621 msgid "" "`bpo-32436 `__: Add documentation for " "the contextvars module (PEP 567)." msgstr "" -#: ../build/NEWS:12909 ../build/NEWS:14588 ../build/NEWS:18791 +#: ../build/NEWS:12944 ../build/NEWS:14623 ../build/NEWS:18826 msgid "" "`bpo-32800 `__: Update link to w3c doc " "for xml default namespaces." msgstr "" -#: ../build/NEWS:12911 ../build/NEWS:14590 +#: ../build/NEWS:12946 ../build/NEWS:14625 msgid "" "`bpo-11015 `__: Update :mod:`test." "support` documentation." msgstr "" -#: ../build/NEWS:12913 +#: ../build/NEWS:12948 msgid "" "`bpo-32613 `__: Update the faq/windows." "html to use the py command from PEP 397 instead of python." msgstr "" -#: ../build/NEWS:12916 ../build/NEWS:14592 ../build/NEWS:18793 +#: ../build/NEWS:12951 ../build/NEWS:14627 ../build/NEWS:18828 msgid "" "`bpo-8722 `__: Document :meth:" "`__getattr__` behavior when property :meth:`get` method raises :exc:" "`AttributeError`." msgstr "" -#: ../build/NEWS:12919 ../build/NEWS:14595 ../build/NEWS:18796 +#: ../build/NEWS:12954 ../build/NEWS:14630 ../build/NEWS:18831 msgid "" "`bpo-32614 `__: Modify RE examples in " "documentation to use raw strings to prevent :exc:`DeprecationWarning` and " "add text to REGEX HOWTO to highlight the deprecation." msgstr "" -#: ../build/NEWS:12923 +#: ../build/NEWS:12958 msgid "" "`bpo-20709 `__: Remove the paragraph " "where we explain that os.utime() does not support a directory as path under " "Windows. Patch by Jan-Philip Gehrcke" msgstr "" -#: ../build/NEWS:12926 +#: ../build/NEWS:12961 msgid "" "`bpo-32722 `__: Remove the bad example " "in the tutorial of the Generator Expression. Patch by Stéphane Wirtel" msgstr "" -#: ../build/NEWS:12929 ../build/NEWS:14599 ../build/NEWS:18800 +#: ../build/NEWS:12964 ../build/NEWS:14634 ../build/NEWS:18835 msgid "" "`bpo-31972 `__: Improve docstrings for " "`pathlib.PurePath` subclasses." msgstr "" -#: ../build/NEWS:12931 +#: ../build/NEWS:12966 msgid "" "`bpo-30607 `__: Use the externalized " "``python-docs-theme`` package when building the documentation." msgstr "" -#: ../build/NEWS:12934 ../build/NEWS:14128 ../build/NEWS:18462 +#: ../build/NEWS:12969 ../build/NEWS:14163 ../build/NEWS:18497 msgid "" "`bpo-8243 `__: Add a note about curses." "addch and curses.addstr exception behavior when writing outside a window, or " "pad." msgstr "" -#: ../build/NEWS:12937 ../build/NEWS:14131 +#: ../build/NEWS:12972 ../build/NEWS:14166 msgid "" "`bpo-32337 `__: Update documentation " "related with ``dict`` order." msgstr "" -#: ../build/NEWS:12939 +#: ../build/NEWS:12974 msgid "" "`bpo-25041 `__: Document ``AF_PACKET`` " "in the :mod:`socket` module." msgstr "" -#: ../build/NEWS:12941 ../build/NEWS:13763 ../build/NEWS:18465 +#: ../build/NEWS:12976 ../build/NEWS:13798 ../build/NEWS:18500 msgid "" "`bpo-31432 `__: Clarify meaning of " "CERT_NONE, CERT_OPTIONAL, and CERT_REQUIRED flags for ssl.SSLContext." "verify_mode." msgstr "" -#: ../build/NEWS:12947 +#: ../build/NEWS:12982 msgid "" "`bpo-35772 `__: Fix sparse file tests of " "test_tarfile on ppc64 with the tmpfs filesystem. Fix the function testing if " @@ -25051,14 +25005,14 @@ msgid "" "KiB pages, whereas the test punch holes of 4 KiB." msgstr "" -#: ../build/NEWS:12955 +#: ../build/NEWS:12990 msgid "" "`bpo-35045 `__: Make ssl tests less " "strict and also accept TLSv1 as system default. The changes unbreaks " "test_min_max_version on Fedora 29." msgstr "" -#: ../build/NEWS:12958 +#: ../build/NEWS:12993 msgid "" "`bpo-32710 `__: ``test_asyncio/" "test_sendfile.py`` now resets the event loop policy using :func:" @@ -25066,20 +25020,20 @@ msgid "" "tests on Windows." msgstr "" -#: ../build/NEWS:12962 +#: ../build/NEWS:12997 msgid "" "`bpo-33717 `__: test.pythoninfo now logs " "information of all clocks, not only time.time() and time.perf_counter()." msgstr "" -#: ../build/NEWS:12965 +#: ../build/NEWS:13000 msgid "" "`bpo-35488 `__: Add a test to pathlib's " "Path.match() to verify it does not support glob-style ** recursive pattern " "matching." msgstr "" -#: ../build/NEWS:12968 +#: ../build/NEWS:13003 msgid "" "`bpo-31731 `__: Fix a race condition in " "``check_interrupted_write()`` of test_io: create directly the thread with " @@ -25088,14 +25042,14 @@ msgid "" "the signal is blocked." msgstr "" -#: ../build/NEWS:12973 +#: ../build/NEWS:13008 msgid "" "`bpo-35424 `__: Fix " "test_multiprocessing_main_handling: use :class:`multiprocessing.Pool` with a " "context manager and then explicitly join the pool." msgstr "" -#: ../build/NEWS:12977 +#: ../build/NEWS:13012 msgid "" "`bpo-35519 `__: Rename :mod:`test." "bisect` module to :mod:`test.bisect_cmd` to avoid conflict with :mod:" @@ -25103,13 +25057,13 @@ msgid "" "test_xmlrpc.py``." msgstr "" -#: ../build/NEWS:12981 +#: ../build/NEWS:13016 msgid "" "`bpo-35513 `__: Replace :func:`time." "time` with :func:`time.monotonic` in tests to measure time delta." msgstr "" -#: ../build/NEWS:12984 +#: ../build/NEWS:13019 msgid "" "`bpo-34279 `__: :func:`test.support." "run_unittest` no longer raise :exc:`TestDidNotRun` if the test result " @@ -25117,32 +25071,32 @@ msgid "" "been run and no test have been skipped." msgstr "" -#: ../build/NEWS:12989 +#: ../build/NEWS:13024 msgid "" "`bpo-35412 `__: Add testcase to " "``test_future4``: check unicode literal." msgstr "" -#: ../build/NEWS:12991 +#: ../build/NEWS:13026 msgid "" "`bpo-26704 `__: Added test demonstrating " "double-patching of an instance method. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:12994 +#: ../build/NEWS:13029 msgid "" "`bpo-33725 `__: " "test_multiprocessing_fork may crash on recent versions of macOS. Until the " "issue is resolved, skip the test on macOS." msgstr "" -#: ../build/NEWS:12997 +#: ../build/NEWS:13032 msgid "" "`bpo-35352 `__: Modify test_asyncio to " "use the certificate set from the test directory." msgstr "" -#: ../build/NEWS:13000 +#: ../build/NEWS:13035 msgid "" "`bpo-35317 `__: Fix ``mktime()`` " "overflow error in ``test_email``: run " @@ -25150,7 +25104,7 @@ msgid "" "``test_localtime_daylight_false_dst_true()`` with a specific timezone." msgstr "" -#: ../build/NEWS:13004 +#: ../build/NEWS:13039 msgid "" "`bpo-21263 `__: After several reports " "that test_gdb does not work properly on macOS and since gdb is not shipped " @@ -25158,7 +25112,7 @@ msgid "" "been used to compile Python. Patch by Lysandros Nikolaou" msgstr "" -#: ../build/NEWS:13009 +#: ../build/NEWS:13044 msgid "" "`bpo-34279 `__: regrtest issue a warning " "when no tests have been executed in a particular test file. Also, a new " @@ -25166,26 +25120,26 @@ msgid "" "files. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:13013 +#: ../build/NEWS:13048 msgid "" "`bpo-34962 `__: make docstest in Doc now " "passes., and is enforced in CI" msgstr "" -#: ../build/NEWS:13015 +#: ../build/NEWS:13050 msgid "" "`bpo-23596 `__: Use argparse for the " "command line of the gzip module. Patch by Antony Lee" msgstr "" -#: ../build/NEWS:13018 +#: ../build/NEWS:13053 msgid "" "`bpo-34537 `__: Fix ``test_gdb." "test_strings()`` when ``LC_ALL=C`` and GDB was compiled with Python 3.6 or " "earlier." msgstr "" -#: ../build/NEWS:13021 +#: ../build/NEWS:13056 msgid "" "`bpo-34587 `__: test_socket: Remove " "RDSTest.testCongestion(). The test tries to fill the receiver's socket " @@ -25195,70 +25149,70 @@ msgid "" "error. The test fails on Fedora 28 by design, so just remove it." msgstr "" -#: ../build/NEWS:13028 +#: ../build/NEWS:13063 msgid "" "`bpo-34661 `__: Fix test_shutil if unzip " "doesn't support -t." msgstr "" -#: ../build/NEWS:13030 +#: ../build/NEWS:13065 msgid "" "`bpo-34200 `__: Fixed non-deterministic " "flakiness of test_pkg by not using the scary test.support.module_cleanup() " "logic to save and restore sys.modules contents between test cases." msgstr "" -#: ../build/NEWS:13034 +#: ../build/NEWS:13069 msgid "" "`bpo-34569 `__: The experimental PEP 554 " "data channels now correctly pass negative PyLong objects between " "subinterpreters on 32-bit systems. Patch by Michael Felt." msgstr "" -#: ../build/NEWS:13038 +#: ../build/NEWS:13073 msgid "" "`bpo-34594 `__: Fix usage of hardcoded " "``errno`` values in the tests." msgstr "" -#: ../build/NEWS:13040 +#: ../build/NEWS:13075 msgid "" "`bpo-34579 `__: Fix test_embed for AIX " "Patch by Michael Felt" msgstr "" -#: ../build/NEWS:13042 +#: ../build/NEWS:13077 msgid "" "`bpo-34542 `__: Use 3072 RSA keys and " "SHA-256 signature for test certs and keys." msgstr "" -#: ../build/NEWS:13045 +#: ../build/NEWS:13080 msgid "" "`bpo-11193 `__: Remove special condition " "for AIX in `test_subprocess.test_undecodable_env`" msgstr "" -#: ../build/NEWS:13048 +#: ../build/NEWS:13083 msgid "" "`bpo-34347 `__: Fix `test_utf8_mode." "test_cmd_line` for AIX" msgstr "" -#: ../build/NEWS:13050 +#: ../build/NEWS:13085 msgid "" "`bpo-34490 `__: On AIX with AF_UNIX " "family sockets getsockname() does not provide 'sockname', so skip calls to " "transport.get_extra_info('sockname')" msgstr "" -#: ../build/NEWS:13053 +#: ../build/NEWS:13088 msgid "" "`bpo-34391 `__: Fix ftplib test for TLS " "1.3 by reading from data socket." msgstr "" -#: ../build/NEWS:13055 +#: ../build/NEWS:13090 msgid "" "`bpo-11192 `__: Fix `test_socket` on AIX " "6.1 and later IPv6 zone id supports only supported by inet_pton6_zone() " @@ -25266,43 +25220,43 @@ msgid "" "rather than build-time based sys.platform()" msgstr "" -#: ../build/NEWS:13060 +#: ../build/NEWS:13095 msgid "" "`bpo-34399 `__: Update all RSA keys and " "DH params to use at least 2048 bits." msgstr "" -#: ../build/NEWS:13062 +#: ../build/NEWS:13097 msgid "" "`bpo-34373 `__: Fix ``test_mktime`` and " "``test_pthread_getcpuclickid`` tests for AIX Add range checking for " "``_PyTime_localtime`` for AIX Patch by Michael Felt" msgstr "" -#: ../build/NEWS:13066 +#: ../build/NEWS:13101 msgid "" "`bpo-11191 `__: Skip the distutils test " "'test_search_cpp' when using XLC as compiler patch by aixtools (Michael Felt)" msgstr "" -#: ../build/NEWS:13069 +#: ../build/NEWS:13104 msgid "Improved an error message when mock assert_has_calls fails." msgstr "" -#: ../build/NEWS:13071 +#: ../build/NEWS:13106 msgid "" "`bpo-33746 `__: Fix test_unittest when " "run in verbose mode." msgstr "" -#: ../build/NEWS:13073 +#: ../build/NEWS:13108 msgid "" "`bpo-33901 `__: Fix test_dbm_gnu on " "macOS with gdbm 1.15: add a larger value to make sure that the file size " "changes." msgstr "" -#: ../build/NEWS:13076 +#: ../build/NEWS:13111 msgid "" "`bpo-33873 `__: Fix a bug in " "``regrtest`` that caused an extra test to run if --huntrleaks/-R was used. " @@ -25310,97 +25264,97 @@ msgid "" "huntrleaks/-R (at least one warmup run and one repetition must be used)." msgstr "" -#: ../build/NEWS:13081 +#: ../build/NEWS:13116 msgid "" "`bpo-33562 `__: Check that a global " "asyncio event loop policy is not left behind by any tests." msgstr "" -#: ../build/NEWS:13084 ../build/NEWS:13982 ../build/NEWS:18471 +#: ../build/NEWS:13119 ../build/NEWS:14017 ../build/NEWS:18506 msgid "" "`bpo-33655 `__: Ignore " "test_posix_fallocate failures on BSD platforms that might be due to running " "on ZFS." msgstr "" -#: ../build/NEWS:13087 +#: ../build/NEWS:13122 msgid "" "`bpo-32962 `__: Fixed test_gdb when " "Python is compiled with flags -mcet -fcf-protection -O0." msgstr "" -#: ../build/NEWS:13090 ../build/NEWS:14136 +#: ../build/NEWS:13125 ../build/NEWS:14171 msgid "" "`bpo-33358 `__: Fix ``test_embed." "test_pre_initialization_sys_options()`` when the interpreter is built with " "``--enable-shared``." msgstr "" -#: ../build/NEWS:13093 ../build/NEWS:14352 ../build/NEWS:18584 +#: ../build/NEWS:13128 ../build/NEWS:14387 ../build/NEWS:18619 msgid "" "`bpo-32872 `__: Avoid regrtest " "compatibility issue with namespace packages." msgstr "" -#: ../build/NEWS:13095 ../build/NEWS:14354 ../build/NEWS:18809 +#: ../build/NEWS:13130 ../build/NEWS:14389 ../build/NEWS:18844 msgid "" "`bpo-32517 `__: Fix failing " "``test_asyncio`` on macOS 10.12.2+ due to transport of ``KqueueSelector`` " "loop was not being closed." msgstr "" -#: ../build/NEWS:13098 +#: ../build/NEWS:13133 msgid "" "`bpo-32663 `__: Making sure the " "`SMTPUTF8SimTests` class of tests gets run in test_smtplib.py." msgstr "" -#: ../build/NEWS:13101 +#: ../build/NEWS:13136 msgid "" "`bpo-27643 `__: Test_C test case needs " "\"signed short\" bitfields, but the IBM XLC compiler (on AIX) does not " "support this Skip the code and test when AIX and XLC are used" msgstr "" -#: ../build/NEWS:13105 +#: ../build/NEWS:13140 msgid "Applicable to Python2-2.7 and later" msgstr "" -#: ../build/NEWS:13107 ../build/NEWS:14357 ../build/NEWS:18474 +#: ../build/NEWS:13142 ../build/NEWS:14392 ../build/NEWS:18509 msgid "`bpo-19417 `__: Add test_bdb.py." msgstr "" -#: ../build/NEWS:13109 ../build/NEWS:14604 +#: ../build/NEWS:13144 ../build/NEWS:14639 msgid "" "`bpo-31809 `__: Add tests to verify " "connection with secp ECDH curves." msgstr "" -#: ../build/NEWS:13114 +#: ../build/NEWS:13149 msgid "" "`bpo-34691 `__: The _contextvars module " "is now built into the core Python library on Windows." msgstr "" -#: ../build/NEWS:13117 +#: ../build/NEWS:13152 msgid "" "`bpo-35683 `__: Improved Azure Pipelines " "build steps and now verifying layouts correctly" msgstr "" -#: ../build/NEWS:13120 +#: ../build/NEWS:13155 msgid "" "`bpo-35642 `__: Remove asynciomodule.c " "from pythoncore.vcxproj" msgstr "" -#: ../build/NEWS:13122 +#: ../build/NEWS:13157 msgid "" "`bpo-35550 `__: Fix incorrect Solaris " "#ifdef checks to look for __sun && __SVR4 instead of sun when compiling." msgstr "" -#: ../build/NEWS:13125 +#: ../build/NEWS:13160 msgid "" "`bpo-35499 `__: ``make profile-opt`` no " "longer replaces ``CFLAGS_NODIST`` with ``CFLAGS``. It now adds profile-" @@ -25408,27 +25362,27 @@ msgid "" "``CFLAGS_NODIST`` flags are kept." msgstr "" -#: ../build/NEWS:13129 +#: ../build/NEWS:13164 msgid "" "`bpo-35257 `__: Avoid leaking the linker " "flags from Link Time Optimizations (LTO) into distutils when compiling C " "extensions." msgstr "" -#: ../build/NEWS:13132 +#: ../build/NEWS:13167 msgid "" "`bpo-35351 `__: When building Python " "with clang and LTO, LTO flags are no longer passed into CFLAGS to build " "third-party C extensions through distutils." msgstr "" -#: ../build/NEWS:13136 +#: ../build/NEWS:13171 msgid "" "`bpo-35139 `__: Fix a compiler error " "when statically linking `pyexpat` in `Modules/Setup`." msgstr "" -#: ../build/NEWS:13139 +#: ../build/NEWS:13174 msgid "" "`bpo-35059 `__: PCbuild: Set " "InlineFunctionExpansion to OnlyExplicitInline (\"/Ob1\" option) in pyproject." @@ -25436,7 +25390,7 @@ msgid "" "make Python compiled in Debug mode a little bit faster on Windows." msgstr "" -#: ../build/NEWS:13144 +#: ../build/NEWS:13179 msgid "" "`bpo-35011 `__: Restores the use of " "pyexpatns.h to isolate our embedded copy of the expat C library so that its " @@ -25444,51 +25398,51 @@ msgid "" "application or other extension modules with their own version of libexpat." msgstr "" -#: ../build/NEWS:13149 +#: ../build/NEWS:13184 msgid "" "`bpo-28015 `__: Have --with-lto works " "correctly with clang." msgstr "" -#: ../build/NEWS:13151 +#: ../build/NEWS:13186 msgid "" "`bpo-34765 `__: Update the outdated " "install-sh file to the latest revision from automake v1.16.1" msgstr "" -#: ../build/NEWS:13154 +#: ../build/NEWS:13189 msgid "" "`bpo-34585 `__: Check for floating-point " "byte order in configure.ac using compilation tests instead of executing " "code, so that these checks work in cross-compiled builds." msgstr "" -#: ../build/NEWS:13158 +#: ../build/NEWS:13193 msgid "" "`bpo-34710 `__: Fixed SSL module build " "with OpenSSL & pedantic CFLAGS." msgstr "" -#: ../build/NEWS:13160 +#: ../build/NEWS:13195 msgid "" "`bpo-34582 `__: Add JUnit XML output for " "regression tests and update Azure DevOps builds." msgstr "" -#: ../build/NEWS:13163 +#: ../build/NEWS:13198 msgid "" "`bpo-34081 `__: Make Sphinx warnings as " "errors in the Docs Makefile." msgstr "" -#: ../build/NEWS:13165 +#: ../build/NEWS:13200 msgid "" "`bpo-34555 `__: Fix for case where it " "was not possible to have both ``HAVE_LINUX_VM_SOCKETS_H`` and " "``HAVE_SOCKADDR_ALG`` be undefined." msgstr "" -#: ../build/NEWS:13168 +#: ../build/NEWS:13203 msgid "" "`bpo-33015 `__: Fix an undefined " "behaviour in the pthread implementation of :c:func:" @@ -25496,90 +25450,90 @@ msgid "" "``NULL``." msgstr "" -#: ../build/NEWS:13172 +#: ../build/NEWS:13207 msgid "" "`bpo-34245 `__: The Python shared " "library is now installed with write permission (mode 0755), which is the " "standard way of installing such libraries." msgstr "" -#: ../build/NEWS:13176 +#: ../build/NEWS:13211 msgid "" "`bpo-34121 `__: Fix detection of C11 " "atomic support on clang." msgstr "" -#: ../build/NEWS:13178 +#: ../build/NEWS:13213 msgid "" "`bpo-32430 `__: Rename Modules/Setup." "dist to Modules/Setup, and remove the necessity to copy the former manually " "to the latter when updating the local source tree." msgstr "" -#: ../build/NEWS:13182 +#: ../build/NEWS:13217 msgid "" "`bpo-30345 `__: Add -g to LDFLAGS when " "compiling with LTO to get debug symbols." msgstr "" -#: ../build/NEWS:13184 ../build/NEWS:13769 ../build/NEWS:18479 +#: ../build/NEWS:13219 ../build/NEWS:13804 ../build/NEWS:18514 msgid "" "`bpo-5755 `__: Move ``-Wstrict-" "prototypes`` option to ``CFLAGS_NODIST`` from ``OPT``. This option emitted " "annoying warnings when building extension modules written in C++." msgstr "" -#: ../build/NEWS:13188 ../build/NEWS:13991 ../build/NEWS:18483 +#: ../build/NEWS:13223 ../build/NEWS:14026 ../build/NEWS:18518 msgid "" "`bpo-33614 `__: Ensures module " "definition files for the stable ABI on Windows are correctly regenerated." msgstr "" -#: ../build/NEWS:13191 +#: ../build/NEWS:13226 msgid "" "`bpo-33648 `__: The --with-c-locale-" "warning configuration flag has been removed. It has had no effect for about " "a year." msgstr "" -#: ../build/NEWS:13194 ../build/NEWS:13994 ../build/NEWS:18486 +#: ../build/NEWS:13229 ../build/NEWS:14029 ../build/NEWS:18521 msgid "" "`bpo-33522 `__: Enable CI builds on " "Visual Studio Team Services at https://python.visualstudio.com/cpython" msgstr "" -#: ../build/NEWS:13197 +#: ../build/NEWS:13232 msgid "" "`bpo-33512 `__: configure's check for " "\"long double\" has been simplified" msgstr "" -#: ../build/NEWS:13199 +#: ../build/NEWS:13234 msgid "" "`bpo-33483 `__: C compiler is now " "correctly detected from the standard environment variables. --without-gcc " "and --with-icc options have been removed." msgstr "" -#: ../build/NEWS:13203 ../build/NEWS:14142 ../build/NEWS:18493 +#: ../build/NEWS:13238 ../build/NEWS:14177 ../build/NEWS:18528 msgid "" "`bpo-33394 `__: Enable the verbose build " "for extension modules, when GNU make is passed macros on the command line." msgstr "" -#: ../build/NEWS:13206 ../build/NEWS:14145 +#: ../build/NEWS:13241 ../build/NEWS:14180 msgid "" "`bpo-33393 `__: Update config.guess and " "config.sub files." msgstr "" -#: ../build/NEWS:13208 ../build/NEWS:14147 +#: ../build/NEWS:13243 ../build/NEWS:14182 msgid "" "`bpo-33377 `__: Add new triplets for " "mips r6 and riscv variants (used in extension suffixes)." msgstr "" -#: ../build/NEWS:13211 ../build/NEWS:14150 +#: ../build/NEWS:13246 ../build/NEWS:14185 msgid "" "`bpo-32232 `__: By default, modules " "configured in `Modules/Setup` are no longer built with `-DPy_BUILD_CORE`. " @@ -25587,19 +25541,19 @@ msgid "" "it in their individual entries." msgstr "" -#: ../build/NEWS:13215 ../build/NEWS:14154 +#: ../build/NEWS:13250 ../build/NEWS:14189 msgid "" "`bpo-33182 `__: The embedding tests can " "once again be built with clang 6.0" msgstr "" -#: ../build/NEWS:13217 ../build/NEWS:14362 ../build/NEWS:18589 +#: ../build/NEWS:13252 ../build/NEWS:14397 ../build/NEWS:18624 msgid "" "`bpo-33163 `__: Upgrade pip to 9.0.3 and " "setuptools to v39.0.1." msgstr "" -#: ../build/NEWS:13219 +#: ../build/NEWS:13254 msgid "" "`bpo-33012 `__: gcc 8 has added a new " "warning heuristic to detect invalid function casts and a stock python build " @@ -25608,146 +25562,146 @@ msgid "" "this by adding a dummy argument to all functions that implement METH_NOARGS." msgstr "" -#: ../build/NEWS:13225 ../build/NEWS:14609 +#: ../build/NEWS:13260 ../build/NEWS:14644 msgid "" "`bpo-32898 `__: Fix the python debug " "build when using COUNT_ALLOCS." msgstr "" -#: ../build/NEWS:13227 +#: ../build/NEWS:13262 msgid "" "`bpo-29442 `__: Replace optparse with " "argparse in setup.py" msgstr "" -#: ../build/NEWS:13232 +#: ../build/NEWS:13267 msgid "" "`bpo-35890 `__: Fix API calling " "consistency of GetVersionEx and wcstok." msgstr "" -#: ../build/NEWS:13234 +#: ../build/NEWS:13269 msgid "" "`bpo-32560 `__: The ``py`` launcher now " "forwards its ``STARTUPINFO`` structure to child processes." msgstr "" -#: ../build/NEWS:13237 +#: ../build/NEWS:13272 msgid "" "`bpo-35854 `__: Fix EnvBuilder and --" "symlinks in venv on Windows" msgstr "" -#: ../build/NEWS:13239 +#: ../build/NEWS:13274 msgid "" "`bpo-35811 `__: Avoid propagating venv " "settings when launching via py.exe" msgstr "" -#: ../build/NEWS:13241 +#: ../build/NEWS:13276 msgid "" "`bpo-35797 `__: Fix default executable " "used by the multiprocessing module" msgstr "" -#: ../build/NEWS:13243 +#: ../build/NEWS:13278 msgid "" "`bpo-35758 `__: Allow building on ARM " "with MSVC." msgstr "" -#: ../build/NEWS:13245 +#: ../build/NEWS:13280 msgid "" "`bpo-29734 `__: Fix handle leaks in os." "stat on Windows." msgstr "" -#: ../build/NEWS:13247 +#: ../build/NEWS:13282 msgid "" "`bpo-35596 `__: Use unchecked PYCs for " "the embeddable distro to avoid zipimport restrictions." msgstr "" -#: ../build/NEWS:13250 +#: ../build/NEWS:13285 msgid "" "`bpo-35596 `__: Fix vcruntime140.dll " "being added to embeddable distro multiple times." msgstr "" -#: ../build/NEWS:13253 +#: ../build/NEWS:13288 msgid "" "`bpo-35402 `__: Update Windows build to " "use Tcl and Tk 8.6.9" msgstr "" -#: ../build/NEWS:13255 +#: ../build/NEWS:13290 msgid "" "`bpo-35401 `__: Updates Windows build to " "OpenSSL 1.1.0j" msgstr "" -#: ../build/NEWS:13257 +#: ../build/NEWS:13292 msgid "" "`bpo-34977 `__: venv on Windows will now " "use a python.exe redirector rather than copying the actual binaries from the " "base environment." msgstr "" -#: ../build/NEWS:13260 +#: ../build/NEWS:13295 msgid "" "`bpo-34977 `__: Adds support for " "building a Windows App Store package" msgstr "" -#: ../build/NEWS:13262 +#: ../build/NEWS:13297 msgid "" "`bpo-35067 `__: Remove _distutils_findvs " "module and use vswhere.exe instead." msgstr "" -#: ../build/NEWS:13264 +#: ../build/NEWS:13299 msgid "" "`bpo-32557 `__: Allow shutil.disk_usage " "to take a file path on Windows" msgstr "" -#: ../build/NEWS:13266 +#: ../build/NEWS:13301 msgid "" "`bpo-34770 `__: Fix a possible null " "pointer dereference in pyshellext.cpp." msgstr "" -#: ../build/NEWS:13268 +#: ../build/NEWS:13303 msgid "" "`bpo-34603 `__: Fix returning structs " "from functions produced by MSVC" msgstr "" -#: ../build/NEWS:13270 +#: ../build/NEWS:13305 msgid "" "`bpo-34581 `__: Guard MSVC-specific code " "in socketmodule.c with ``#ifdef _MSC_VER``." msgstr "" -#: ../build/NEWS:13273 +#: ../build/NEWS:13308 msgid "" "`bpo-34532 `__: Fixes exit code of list " "version arguments for py.exe." msgstr "" -#: ../build/NEWS:13275 +#: ../build/NEWS:13310 msgid "" "`bpo-34062 `__: Fixed the '--list' and " "'--list-paths' arguments for the py.exe launcher" msgstr "" -#: ../build/NEWS:13278 +#: ../build/NEWS:13313 msgid "" "`bpo-34225 `__: Ensure INCLUDE and LIB " "directories do not end with a backslash." msgstr "" -#: ../build/NEWS:13280 +#: ../build/NEWS:13315 msgid "" "`bpo-34011 `__: A suite of code has been " "changed which copied across DLLs and init.tcl from the running Python " @@ -25756,7 +25710,7 @@ msgid "" "when that is the case, rather than whenever a venv is created." msgstr "" -#: ../build/NEWS:13286 +#: ../build/NEWS:13321 msgid "" "`bpo-34006 `__: Revert line length limit " "for Windows help docs. The line-length limit is not needed because the pages " @@ -25764,7 +25718,7 @@ msgid "" "badly with the DPI setting." msgstr "" -#: ../build/NEWS:13290 +#: ../build/NEWS:13325 msgid "" "`bpo-31546 `__: Restore running " "PyOS_InputHook while waiting for user input at the prompt. The restores " @@ -25772,92 +25726,92 @@ msgid "" "prompt on Windows." msgstr "" -#: ../build/NEWS:13294 +#: ../build/NEWS:13329 msgid "" "`bpo-30237 `__: Output error when " "ReadConsole is canceled by CancelSynchronousIo instead of crashing." msgstr "" -#: ../build/NEWS:13297 +#: ../build/NEWS:13332 msgid "" "`bpo-33895 `__: GIL is released while " "calling functions that acquire Windows loader lock." msgstr "" -#: ../build/NEWS:13300 ../build/NEWS:13776 +#: ../build/NEWS:13335 ../build/NEWS:13811 msgid "" "`bpo-33720 `__: Reduces maximum marshal " "recursion depth on release builds." msgstr "" -#: ../build/NEWS:13302 +#: ../build/NEWS:13337 msgid "" "`bpo-29097 `__: Fix bug where :meth:" "`datetime.fromtimestamp` erroneously throws an :exc:`OSError` on Windows for " "values between 0 and 86400. Patch by Ammar Askar." msgstr "" -#: ../build/NEWS:13306 +#: ../build/NEWS:13341 msgid "" "`bpo-33316 `__: PyThread_release_lock " "always fails" msgstr "" -#: ../build/NEWS:13308 ../build/NEWS:14159 +#: ../build/NEWS:13343 ../build/NEWS:14194 msgid "" "`bpo-33184 `__: Update Windows installer " "to use OpenSSL 1.1.0h." msgstr "" -#: ../build/NEWS:13310 +#: ../build/NEWS:13345 msgid "" "`bpo-32890 `__: Fix usage of " "GetLastError() instead of errno in os.execve() and os.truncate()." msgstr "" -#: ../build/NEWS:13313 ../build/NEWS:14367 ../build/NEWS:18830 +#: ../build/NEWS:13348 ../build/NEWS:14402 ../build/NEWS:18865 msgid "" "`bpo-33016 `__: Fix potential use of " "uninitialized memory in nt._getfinalpathname" msgstr "" -#: ../build/NEWS:13316 ../build/NEWS:14370 ../build/NEWS:18833 +#: ../build/NEWS:13351 ../build/NEWS:14405 ../build/NEWS:18868 msgid "" "`bpo-32903 `__: Fix a memory leak in os." "chdir() on Windows if the current directory is set to a UNC path." msgstr "" -#: ../build/NEWS:13319 ../build/NEWS:14614 +#: ../build/NEWS:13354 ../build/NEWS:14649 msgid "" "`bpo-32901 `__: Update Tcl and Tk " "versions to 8.6.8" msgstr "" -#: ../build/NEWS:13321 ../build/NEWS:14616 ../build/NEWS:18836 +#: ../build/NEWS:13356 ../build/NEWS:14651 ../build/NEWS:18871 msgid "" "`bpo-31966 `__: Fixed WindowsConsoleIO." "write() for writing empty data." msgstr "" -#: ../build/NEWS:13323 ../build/NEWS:14618 ../build/NEWS:18838 +#: ../build/NEWS:13358 ../build/NEWS:14653 ../build/NEWS:18873 msgid "" "`bpo-32409 `__: Ensures activate.bat can " "handle Unicode contents." msgstr "" -#: ../build/NEWS:13325 ../build/NEWS:14620 ../build/NEWS:18840 +#: ../build/NEWS:13360 ../build/NEWS:14655 ../build/NEWS:18875 msgid "" "`bpo-32457 `__: Improves handling of " "denormalized executable path when launching Python." msgstr "" -#: ../build/NEWS:13328 ../build/NEWS:14623 ../build/NEWS:18843 +#: ../build/NEWS:13363 ../build/NEWS:14658 ../build/NEWS:18878 msgid "" "`bpo-32370 `__: Use the correct encoding " "for ipconfig output in the uuid module. Patch by Segev Finer." msgstr "" -#: ../build/NEWS:13331 ../build/NEWS:14626 ../build/NEWS:18846 +#: ../build/NEWS:13366 ../build/NEWS:14661 ../build/NEWS:18881 msgid "" "`bpo-29248 `__: Fix :func:`os.readlink` " "on Windows, which was mistakenly treating the ``PrintNameOffset`` field of " @@ -25865,38 +25819,38 @@ msgid "" "Craig Holmquist and SSE4." msgstr "" -#: ../build/NEWS:13335 +#: ../build/NEWS:13370 msgid "" "`bpo-1104 `__: Correctly handle string " "length in ``msilib.SummaryInfo.GetProperty()`` to prevent it from truncating " "the last character." msgstr "" -#: ../build/NEWS:13342 +#: ../build/NEWS:13377 msgid "" "`bpo-35401 `__: Update macOS installer " "to use OpenSSL 1.1.0j." msgstr "" -#: ../build/NEWS:13344 +#: ../build/NEWS:13379 msgid "" "`bpo-35025 `__: Properly guard the use " "of the ``CLOCK_GETTIME`` et al. macros in ``timemodule`` on macOS." msgstr "" -#: ../build/NEWS:13347 +#: ../build/NEWS:13382 msgid "" "`bpo-24658 `__: On macOS, fix reading " "from and writing into a file with a size larger than 2 GiB." msgstr "" -#: ../build/NEWS:13350 +#: ../build/NEWS:13385 msgid "" "`bpo-34405 `__: Update to OpenSSL 1.1.0i " "for macOS installer builds." msgstr "" -#: ../build/NEWS:13352 +#: ../build/NEWS:13387 msgid "" "`bpo-33635 `__: In macOS stat on some " "file descriptors (/dev/fd/3 f.e) will result in bad file descriptor OSError. " @@ -25906,20 +25860,20 @@ msgid "" "same error ignoring pattern." msgstr "" -#: ../build/NEWS:13358 ../build/NEWS:14004 +#: ../build/NEWS:13393 ../build/NEWS:14039 msgid "" "`bpo-13631 `__: The .editrc file in " "user's home directory is now processed correctly during the readline " "initialization through editline emulation on macOS." msgstr "" -#: ../build/NEWS:13362 ../build/NEWS:14164 +#: ../build/NEWS:13397 ../build/NEWS:14199 msgid "" "`bpo-33184 `__: Update macOS installer " "build to use OpenSSL 1.1.0h." msgstr "" -#: ../build/NEWS:13364 ../build/NEWS:14376 +#: ../build/NEWS:13399 ../build/NEWS:14411 msgid "" "`bpo-32726 `__: Build and link with " "private copy of Tcl/Tk 8.6 for the macOS 10.6+ installer. The 10.9+ " @@ -25929,19 +25883,19 @@ msgid "" "as ActiveTcl." msgstr "" -#: ../build/NEWS:13370 ../build/NEWS:14633 +#: ../build/NEWS:13405 ../build/NEWS:14668 msgid "" "`bpo-32901 `__: Update macOS 10.9+ " "installer to Tcl/Tk 8.6.8." msgstr "" -#: ../build/NEWS:13372 +#: ../build/NEWS:13407 msgid "" "`bpo-31903 `__: In :mod:`_scproxy`, drop " "the GIL when calling into ``SystemConfiguration`` to avoid deadlocks." msgstr "" -#: ../build/NEWS:13378 +#: ../build/NEWS:13413 msgid "" "`bpo-35770 `__: IDLE macosx deletes " "Options => Configure IDLE. It previously deleted Window => Zoom Height by " @@ -25949,79 +25903,79 @@ msgid "" "dialog is accessed via Preferences on the IDLE menu." msgstr "" -#: ../build/NEWS:13383 +#: ../build/NEWS:13418 msgid "" "`bpo-35769 `__: Change IDLE's new file " "name from 'Untitled' to 'untitled'" msgstr "" -#: ../build/NEWS:13385 +#: ../build/NEWS:13420 msgid "" "`bpo-35660 `__: Fix imports in idlelib." "window." msgstr "" -#: ../build/NEWS:13387 +#: ../build/NEWS:13422 msgid "" "`bpo-35641 `__: Proper format `calltip` " "when the function has no docstring." msgstr "" -#: ../build/NEWS:13389 +#: ../build/NEWS:13424 msgid "" "`bpo-33987 `__: Use ttk Frame for ttk " "widgets." msgstr "" -#: ../build/NEWS:13391 +#: ../build/NEWS:13426 msgid "" "`bpo-34055 `__: Fix erroneous 'smart' " "indents and newlines in IDLE Shell." msgstr "" -#: ../build/NEWS:13393 +#: ../build/NEWS:13428 msgid "" "`bpo-35591 `__: Find Selection now works " "when selection not found." msgstr "" -#: ../build/NEWS:13395 +#: ../build/NEWS:13430 msgid "" "`bpo-35196 `__: Speed up squeezer line " "counting." msgstr "" -#: ../build/NEWS:13397 +#: ../build/NEWS:13432 msgid "" "`bpo-35598 `__: Update config_key: use " "PEP 8 names and ttk widgets, make some objects global, and add tests." msgstr "" -#: ../build/NEWS:13400 +#: ../build/NEWS:13435 msgid "" "`bpo-28097 `__: Add Previous/Next " "History entries to Shell menu." msgstr "" -#: ../build/NEWS:13402 +#: ../build/NEWS:13437 msgid "" "`bpo-35208 `__: Squeezer now properly " "counts wrapped lines before newlines." msgstr "" -#: ../build/NEWS:13404 +#: ../build/NEWS:13439 msgid "" "`bpo-35555 `__: Gray out Code Context " "menu entry when it's not applicable." msgstr "" -#: ../build/NEWS:13406 +#: ../build/NEWS:13441 msgid "" "`bpo-35521 `__: Document the IDLE editor " "code context feature. Add some internal references within the IDLE doc." msgstr "" -#: ../build/NEWS:13409 +#: ../build/NEWS:13444 msgid "" "`bpo-22703 `__: The Code Context menu " "label now toggles between Show/Hide Code Context. The Zoom Height menu now " @@ -26029,20 +25983,20 @@ msgid "" "menu to the Options menu." msgstr "" -#: ../build/NEWS:13413 +#: ../build/NEWS:13448 msgid "" "`bpo-35213 `__: Where appropriate, use " "'macOS' in idlelib." msgstr "" -#: ../build/NEWS:13415 +#: ../build/NEWS:13450 msgid "" "`bpo-34864 `__: On macOS, warn if the " "system preference \"Prefer tabs when opening documents\" is set to \"Always" "\"." msgstr "" -#: ../build/NEWS:13418 +#: ../build/NEWS:13453 msgid "" "`bpo-34864 `__: Document two IDLE on " "MacOS issues. The System Preferences Dock \"prefer tabs always\" setting " @@ -26050,26 +26004,26 @@ msgid "" "for Windows and Linux." msgstr "" -#: ../build/NEWS:13422 +#: ../build/NEWS:13457 msgid "" "`bpo-35202 `__: Remove unused imports " "from lib/idlelib" msgstr "" -#: ../build/NEWS:13424 +#: ../build/NEWS:13459 msgid "" "`bpo-33000 `__: Document that IDLE's " "shell has no line limit. A program that runs indefinitely can overfill " "memory." msgstr "" -#: ../build/NEWS:13427 +#: ../build/NEWS:13462 msgid "" "`bpo-23220 `__: Explain how IDLE's Shell " "displays output." msgstr "" -#: ../build/NEWS:13429 +#: ../build/NEWS:13464 msgid "" "`bpo-35099 `__: Improve the doc about " "IDLE running user code. The section is renamed from \"IDLE -- console " @@ -26077,41 +26031,41 @@ msgid "" "implications of using custom sys.stdxxx objects." msgstr "" -#: ../build/NEWS:13433 +#: ../build/NEWS:13468 msgid "" "`bpo-35097 `__: Add IDLE doc subsection " "explaining editor windows. Topics include opening, title and status bar, ." "py* extension, and running." msgstr "" -#: ../build/NEWS:13436 +#: ../build/NEWS:13471 msgid "" "`bpo-35093 `__: Document the IDLE " "document viewer in the IDLE doc. Add a paragraph in \"Help and preferences" "\", \"Help sources\" subsection." msgstr "" -#: ../build/NEWS:13439 +#: ../build/NEWS:13474 msgid "" "`bpo-35088 `__: Update idlelib.help." "copy_string docstring. We now use git and backporting instead of hg and " "forward merging." msgstr "" -#: ../build/NEWS:13442 +#: ../build/NEWS:13477 msgid "" "`bpo-35087 `__: Update idlelib help " "files for the current doc build. The main change is the elimination of " "chapter-section numbers." msgstr "" -#: ../build/NEWS:13445 +#: ../build/NEWS:13480 msgid "" "`bpo-34548 `__: Use configured color " "theme for read-only text views." msgstr "" -#: ../build/NEWS:13447 +#: ../build/NEWS:13482 msgid "" "`bpo-1529353 `__: Enable \"squeezing\" " "of long outputs in the shell, to avoid performance degradation and to clean " @@ -26119,26 +26073,26 @@ msgid "" "a separate window, and \"unsqueezed\"." msgstr "" -#: ../build/NEWS:13452 +#: ../build/NEWS:13487 msgid "" "`bpo-34047 `__: Fixed mousewheel " "scrolling direction on macOS." msgstr "" -#: ../build/NEWS:13454 +#: ../build/NEWS:13489 msgid "" "`bpo-34275 `__: Make IDLE calltips " "always visible on Mac. Some MacOS-tk combinations need .update_idletasks(). " "Patch by Kevin Walzer." msgstr "" -#: ../build/NEWS:13457 +#: ../build/NEWS:13492 msgid "" "`bpo-34120 `__: Fix unresponsiveness " "after closing certain windows and dialogs." msgstr "" -#: ../build/NEWS:13459 +#: ../build/NEWS:13494 msgid "" "`bpo-33975 `__: Avoid small type when " "running htests. Since part of the purpose of human-viewed tests is to " @@ -26146,39 +26100,39 @@ msgid "" "for testing as when running IDLE." msgstr "" -#: ../build/NEWS:13463 +#: ../build/NEWS:13498 msgid "" "`bpo-33905 `__: Add test for idlelib." "stackview.StackBrowser." msgstr "" -#: ../build/NEWS:13465 +#: ../build/NEWS:13500 msgid "" "`bpo-33924 `__: Change mainmenu.menudefs " "key 'windows' to 'window'. Every other menudef key is lowercase version of " "main menu entry." msgstr "" -#: ../build/NEWS:13468 +#: ../build/NEWS:13503 msgid "" "`bpo-33906 `__: Rename idlelib.windows " "as window Match Window on the main menu and remove last plural module name." msgstr "" -#: ../build/NEWS:13471 +#: ../build/NEWS:13506 msgid "" "`bpo-33917 `__: Fix and document idlelib/" "idle_test/template.py. The revised file compiles, runs, and tests OK. " "idle_test/README.txt explains how to use it to create new IDLE test files." msgstr "" -#: ../build/NEWS:13475 +#: ../build/NEWS:13510 msgid "" "`bpo-33904 `__: IDLE: In rstrip, rename " "class RstripExtension as Rstrip" msgstr "" -#: ../build/NEWS:13477 +#: ../build/NEWS:13512 msgid "" "`bpo-33907 `__: For consistency and " "clarity, rename an IDLE module and classes. Module calltips and its class " @@ -26186,26 +26140,26 @@ msgid "" "now CalltipWindow." msgstr "" -#: ../build/NEWS:13481 +#: ../build/NEWS:13516 msgid "" "`bpo-33856 `__: Add \"help\" in the " "welcome message of IDLE" msgstr "" -#: ../build/NEWS:13483 +#: ../build/NEWS:13518 msgid "" "`bpo-33839 `__: IDLE: refactor ToolTip " "and CallTip and add documentation and tests" msgstr "" -#: ../build/NEWS:13486 +#: ../build/NEWS:13521 msgid "" "`bpo-33855 `__: Minimally test all IDLE " "modules. Add missing files, import module, instantiate classes, and check " "coverage. Check existing files." msgstr "" -#: ../build/NEWS:13489 ../build/NEWS:13781 ../build/NEWS:18509 +#: ../build/NEWS:13524 ../build/NEWS:13816 ../build/NEWS:18544 msgid "" "`bpo-33656 `__: On Windows, add API call " "saying that tk scales for DPI. On Windows 8.1+ or 10, with DPI compatibility " @@ -26214,19 +26168,19 @@ msgid "" "have no effect." msgstr "" -#: ../build/NEWS:13494 ../build/NEWS:13786 ../build/NEWS:18514 +#: ../build/NEWS:13529 ../build/NEWS:13821 ../build/NEWS:18549 msgid "" "`bpo-33768 `__: Clicking on a context " "line moves that line to the top of the editor window." msgstr "" -#: ../build/NEWS:13497 ../build/NEWS:13789 ../build/NEWS:18517 +#: ../build/NEWS:13532 ../build/NEWS:13824 ../build/NEWS:18552 msgid "" "`bpo-33763 `__: IDLE: Use read-only text " "widget for code context instead of label widget." msgstr "" -#: ../build/NEWS:13500 ../build/NEWS:13792 ../build/NEWS:18520 +#: ../build/NEWS:13535 ../build/NEWS:13827 ../build/NEWS:18555 msgid "" "`bpo-33664 `__: Scroll IDLE editor text " "by lines. Previously, the mouse wheel and scrollbar slider moved text by a " @@ -26235,33 +26189,33 @@ msgid "" "to read-only text views." msgstr "" -#: ../build/NEWS:13505 ../build/NEWS:13797 ../build/NEWS:18525 +#: ../build/NEWS:13540 ../build/NEWS:13832 ../build/NEWS:18560 msgid "" "`bpo-33679 `__: Enable theme-specific " "color configuration for Code Context. Use the Highlights tab to see the " "setting for built-in themes or add settings to custom themes." msgstr "" -#: ../build/NEWS:13509 ../build/NEWS:13801 ../build/NEWS:18529 +#: ../build/NEWS:13544 ../build/NEWS:13836 ../build/NEWS:18564 msgid "" "`bpo-33642 `__: Display up to maxlines " "non-blank lines for Code Context. If there is no current context, show a " "single blank line." msgstr "" -#: ../build/NEWS:13512 ../build/NEWS:14011 ../build/NEWS:18532 +#: ../build/NEWS:13547 ../build/NEWS:14046 ../build/NEWS:18567 msgid "" "`bpo-33628 `__: IDLE: Cleanup " "codecontext.py and its test." msgstr "" -#: ../build/NEWS:13514 ../build/NEWS:14013 ../build/NEWS:18534 +#: ../build/NEWS:13549 ../build/NEWS:14048 ../build/NEWS:18569 msgid "" "`bpo-33564 `__: IDLE's code context now " "recognizes async as a block opener." msgstr "" -#: ../build/NEWS:13516 ../build/NEWS:14169 ../build/NEWS:18539 +#: ../build/NEWS:13551 ../build/NEWS:14204 ../build/NEWS:18574 msgid "" "`bpo-21474 `__: Update word/identifier " "definition from ascii to unicode. In text and entry boxes, this affects " @@ -26269,7 +26223,7 @@ msgid "" "deletion left/right by control-BACKSPACE/DEL." msgstr "" -#: ../build/NEWS:13521 ../build/NEWS:14174 ../build/NEWS:18544 +#: ../build/NEWS:13556 ../build/NEWS:14209 ../build/NEWS:18579 msgid "" "`bpo-33204 `__: IDLE: consistently color " "invalid string prefixes. A 'u' string prefix cannot be paired with either " @@ -26277,7 +26231,7 @@ msgid "" "as is valid. Revise and extend colorizer test." msgstr "" -#: ../build/NEWS:13526 ../build/NEWS:14385 ../build/NEWS:18863 +#: ../build/NEWS:13561 ../build/NEWS:14420 ../build/NEWS:18898 msgid "" "`bpo-32984 `__: Set ``__file__`` while " "running a startup file. Like Python, IDLE optionally runs one startup file " @@ -26289,37 +26243,37 @@ msgid "" "normally, without the ``-n`` option." msgstr "" -#: ../build/NEWS:13535 ../build/NEWS:14394 ../build/NEWS:18872 +#: ../build/NEWS:13570 ../build/NEWS:14429 ../build/NEWS:18907 msgid "" "`bpo-32940 `__: Simplify and rename " "StringTranslatePseudoMapping in pyparse." msgstr "" -#: ../build/NEWS:13537 ../build/NEWS:14638 ../build/NEWS:18874 +#: ../build/NEWS:13572 ../build/NEWS:14673 ../build/NEWS:18909 msgid "" "`bpo-32916 `__: Change ``str`` to " "``code`` in pyparse." msgstr "" -#: ../build/NEWS:13539 ../build/NEWS:14640 ../build/NEWS:18876 +#: ../build/NEWS:13574 ../build/NEWS:14675 ../build/NEWS:18911 msgid "" "`bpo-32905 `__: Remove unused code in " "pyparse module." msgstr "" -#: ../build/NEWS:13541 ../build/NEWS:14642 ../build/NEWS:18878 +#: ../build/NEWS:13576 ../build/NEWS:14677 ../build/NEWS:18913 msgid "" "`bpo-32874 `__: Add tests for pyparse." msgstr "" -#: ../build/NEWS:13543 ../build/NEWS:14644 ../build/NEWS:18880 +#: ../build/NEWS:13578 ../build/NEWS:14679 ../build/NEWS:18915 msgid "" "`bpo-32837 `__: Using the system and " "place-dependent default encoding for open() is a bad idea for IDLE's system " "and location-independent files." msgstr "" -#: ../build/NEWS:13546 ../build/NEWS:14647 ../build/NEWS:18883 +#: ../build/NEWS:13581 ../build/NEWS:14682 ../build/NEWS:18918 msgid "" "`bpo-32826 `__: Add \"encoding=utf-8\" " "to open() in IDLE's test_help_about. GUI test test_file_buttons() only looks " @@ -26328,98 +26282,98 @@ msgid "" "encounter a non-ascii character in CREDITS.txt." msgstr "" -#: ../build/NEWS:13552 ../build/NEWS:14015 ../build/NEWS:18549 +#: ../build/NEWS:13587 ../build/NEWS:14050 ../build/NEWS:18584 msgid "" "`bpo-32831 `__: Add docstrings and tests " "for codecontext." msgstr "" -#: ../build/NEWS:13554 ../build/NEWS:14653 ../build/NEWS:18889 +#: ../build/NEWS:13589 ../build/NEWS:14688 ../build/NEWS:18924 msgid "" "`bpo-32765 `__: Update configdialog " "General tab docstring to add new widgets to the widget list." msgstr "" -#: ../build/NEWS:13560 +#: ../build/NEWS:13595 msgid "" "`bpo-35884 `__: Add a benchmark script " "for timing various ways to access variables: ``Tools/scripts/" "var_access_benchmark.py``." msgstr "" -#: ../build/NEWS:13563 +#: ../build/NEWS:13598 msgid "" "`bpo-34989 `__: python-gdb.py now " "handles errors on computing the line number of a Python frame." msgstr "" -#: ../build/NEWS:13566 +#: ../build/NEWS:13601 msgid "" "`bpo-20260 `__: Argument Clinic now has " "non-bitwise unsigned int converters." msgstr "" -#: ../build/NEWS:13568 +#: ../build/NEWS:13603 msgid "" "`bpo-32962 `__: python-gdb now catches " "``UnicodeDecodeError`` exceptions when calling ``string()``." msgstr "" -#: ../build/NEWS:13571 +#: ../build/NEWS:13606 msgid "" "`bpo-32962 `__: python-gdb now catches " "ValueError on read_var(): when Python has no debug symbols for example." msgstr "" -#: ../build/NEWS:13574 ../build/NEWS:14182 ../build/NEWS:18554 +#: ../build/NEWS:13609 ../build/NEWS:14217 ../build/NEWS:18589 msgid "" "`bpo-33189 `__: :program:`pygettext.py` " "now recognizes only literal strings as docstrings and translatable strings, " "and rejects bytes literals and f-string expressions." msgstr "" -#: ../build/NEWS:13578 ../build/NEWS:14186 ../build/NEWS:18558 +#: ../build/NEWS:13613 ../build/NEWS:14221 ../build/NEWS:18593 msgid "" "`bpo-31920 `__: Fixed handling " "directories as arguments in the ``pygettext`` script. Based on patch by Oleg " "Krasnikov." msgstr "" -#: ../build/NEWS:13581 ../build/NEWS:14189 ../build/NEWS:18561 +#: ../build/NEWS:13616 ../build/NEWS:14224 ../build/NEWS:18596 msgid "" "`bpo-29673 `__: Fix pystackv and pystack " "gdbinit macros." msgstr "" -#: ../build/NEWS:13583 +#: ../build/NEWS:13618 msgid "" "`bpo-25427 `__: Remove the pyvenv script " "in favor of ``python3 -m venv`` in order to lower confusion as to what " "Python interpreter a virtual environment will be created for." msgstr "" -#: ../build/NEWS:13587 ../build/NEWS:14399 ../build/NEWS:18563 +#: ../build/NEWS:13622 ../build/NEWS:14434 ../build/NEWS:18598 msgid "" "`bpo-32885 `__: Add an ``-n`` flag for " "``Tools/scripts/pathfix.py`` to disable automatic backup creation (files " "with ``~`` suffix)." msgstr "" -#: ../build/NEWS:13590 ../build/NEWS:14659 ../build/NEWS:18899 +#: ../build/NEWS:13625 ../build/NEWS:14694 ../build/NEWS:18934 msgid "" "`bpo-32222 `__: Fix pygettext not " "extracting docstrings for functions with type annotated arguments. Patch by " "Toby Harradine." msgstr "" -#: ../build/NEWS:13593 ../build/NEWS:14191 ../build/NEWS:18566 +#: ../build/NEWS:13628 ../build/NEWS:14226 ../build/NEWS:18601 msgid "" "`bpo-31583 `__: Fix 2to3 for using with " "--add-suffix option but without --output-dir option for relative path to " "files in current directory." msgstr "" -#: ../build/NEWS:13599 +#: ../build/NEWS:13634 msgid "" "`bpo-35713 `__: The :c:func:" "`PyByteArray_Init` and :c:func:`PyByteArray_Fini` functions have been " @@ -26427,20 +26381,20 @@ msgid "" "from the limited API (stable ABI), and were not documented." msgstr "" -#: ../build/NEWS:13604 +#: ../build/NEWS:13639 msgid "" "`bpo-33817 `__: Fixed :c:func:" "`_PyBytes_Resize` for empty bytes objects." msgstr "" -#: ../build/NEWS:13606 +#: ../build/NEWS:13641 msgid "" "`bpo-35322 `__: Fix memory leak in :c:" "func:`PyUnicode_EncodeLocale` and :c:func:`PyUnicode_EncodeFSDefault` on " "error handling." msgstr "" -#: ../build/NEWS:13609 +#: ../build/NEWS:13644 msgid "" "`bpo-35059 `__: The following C macros " "have been converted to static inline functions: :c:func:`Py_INCREF`, :c:func:" @@ -26448,92 +26402,92 @@ msgid "" "`PyObject_INIT`, :c:func:`PyObject_INIT_VAR`." msgstr "" -#: ../build/NEWS:13614 +#: ../build/NEWS:13649 msgid "" "`bpo-35296 `__: ``make install`` now " "also installs the internal API: ``Include/internal/*.h`` header files." msgstr "" -#: ../build/NEWS:13617 +#: ../build/NEWS:13652 msgid "" "`bpo-35081 `__: Internal APIs surrounded " "by ``#ifdef Py_BUILD_CORE`` have been moved from ``Include/*.h`` headers to " "new header files ``Include/internal/pycore_*.h``." msgstr "" -#: ../build/NEWS:13621 +#: ../build/NEWS:13656 msgid "" "`bpo-35259 `__: Conditionally declare :c:" "func:`Py_FinalizeEx()` (new in 3.6) based on Py_LIMITED_API. Patch by Arthur " "Neufeld." msgstr "" -#: ../build/NEWS:13624 +#: ../build/NEWS:13659 msgid "" "`bpo-35081 `__: The :c:func:" "`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros have been " "removed from the public C API." msgstr "" -#: ../build/NEWS:13628 +#: ../build/NEWS:13663 msgid "" "`bpo-35134 `__: Creation of a new " "``Include/cpython/`` subdirectory." msgstr "" -#: ../build/NEWS:13630 +#: ../build/NEWS:13665 msgid "" "`bpo-34725 `__: Adds " "_Py_SetProgramFullPath so embedders may override sys.executable" msgstr "" -#: ../build/NEWS:13633 +#: ../build/NEWS:13668 msgid "" "`bpo-34910 `__: Ensure that :c:func:" "`PyObject_Print` always returns ``-1`` on error. Patch by Zackery Spytz." msgstr "" -#: ../build/NEWS:13636 +#: ../build/NEWS:13671 msgid "" "`bpo-34523 `__: Py_DecodeLocale() and " "Py_EncodeLocale() now use the UTF-8 encoding on Windows if " "Py_LegacyWindowsFSEncodingFlag is zero." msgstr "" -#: ../build/NEWS:13639 +#: ../build/NEWS:13674 msgid "" "`bpo-34193 `__: Fix pluralization in " "TypeError messages in getargs.c and typeobject.c: '1 argument' instead of '1 " "arguments' and '1 element' instead of '1 elements'." msgstr "" -#: ../build/NEWS:13643 +#: ../build/NEWS:13678 msgid "" "`bpo-34127 `__: Return grammatically " "correct error message based on argument count. Patch by Karthikeyan " "Singaravelan." msgstr "" -#: ../build/NEWS:13646 +#: ../build/NEWS:13681 msgid "" "`bpo-23927 `__: Fixed :exc:`SystemError` " "in :c:func:`PyArg_ParseTupleAndKeywords` when the ``w*`` format unit is used " "for optional parameter." msgstr "" -#: ../build/NEWS:13650 +#: ../build/NEWS:13685 msgid "" "`bpo-32455 `__: Added :c:func:" "`PyCompile_OpcodeStackEffectWithJump`." msgstr "" -#: ../build/NEWS:13652 +#: ../build/NEWS:13687 msgid "" "`bpo-34008 `__: Py_Main() can again be " "called after Py_Initialize(), as in Python 3.6." msgstr "" -#: ../build/NEWS:13655 +#: ../build/NEWS:13690 msgid "" "`bpo-32500 `__: Fixed error messages " "for :c:func:`PySequence_Size`, :c:func:`PySequence_GetItem`, :c:func:" @@ -26541,108 +26495,108 @@ msgid "" "and :c:func:`PyMapping_Size` called with a sequence." msgstr "" -#: ../build/NEWS:13660 +#: ../build/NEWS:13695 msgid "" "`bpo-33818 `__: :c:func:" "`PyExceptionClass_Name` will now return ``const char *`` instead of ``char " "*``." msgstr "" -#: ../build/NEWS:13663 ../build/NEWS:14405 +#: ../build/NEWS:13698 ../build/NEWS:14440 msgid "" "`bpo-33042 `__: Embedding applications " "may once again call PySys_ResetWarnOptions, PySys_AddWarnOption, and " "PySys_AddXOption prior to calling Py_Initialize." msgstr "" -#: ../build/NEWS:13667 ../build/NEWS:14409 ../build/NEWS:18572 +#: ../build/NEWS:13702 ../build/NEWS:14444 ../build/NEWS:18607 msgid "" "`bpo-32374 `__: Document that m_traverse " "for multi-phase initialized modules can be called with m_state=NULL, and add " "a sanity check" msgstr "" -#: ../build/NEWS:13670 +#: ../build/NEWS:13705 msgid "" "`bpo-30863 `__: :c:func:" "`PyUnicode_AsWideChar` and :c:func:`PyUnicode_AsWideCharString` no longer " "cache the ``wchar_t*`` representation of string objects." msgstr "" -#: ../build/NEWS:13676 +#: ../build/NEWS:13711 msgid "Python 3.7.0 final" msgstr "" -#: ../build/NEWS:13678 ../build/NEWS:18259 +#: ../build/NEWS:13713 ../build/NEWS:18294 msgid "*Release date: 2018-06-27*" msgstr "" -#: ../build/NEWS:13683 +#: ../build/NEWS:13718 msgid "" "`bpo-33851 `__: Fix :func:`ast." "get_docstring` for a node that lacks a docstring." msgstr "" -#: ../build/NEWS:13689 +#: ../build/NEWS:13724 msgid "" "`bpo-33932 `__: Calling Py_Initialize() " "twice does nothing, instead of failing with a fatal error: restore the " "Python 3.6 behaviour." msgstr "" -#: ../build/NEWS:13694 +#: ../build/NEWS:13729 msgid "Python 3.7.0 release candidate 1" msgstr "" -#: ../build/NEWS:13696 +#: ../build/NEWS:13731 msgid "*Release date: 2018-06-12*" msgstr "" -#: ../build/NEWS:13806 +#: ../build/NEWS:13841 msgid "Python 3.7.0 beta 5" msgstr "" -#: ../build/NEWS:13808 +#: ../build/NEWS:13843 msgid "*Release date: 2018-05-30*" msgstr "" -#: ../build/NEWS:13821 +#: ../build/NEWS:13856 msgid "" "`bpo-20104 `__: The new `os.posix_spawn` " "added in 3.7.0b1 was removed as we are still working on what the API should " "look like. Expect this in 3.8 instead." msgstr "" -#: ../build/NEWS:13955 ../build/NEWS:18396 +#: ../build/NEWS:13990 ../build/NEWS:18431 msgid "" "`bpo-32861 `__: The urllib.robotparser's " "``__str__`` representation now includes wildcard entries and the \"Crawl-" "delay\" and \"Request-rate\" fields. Patch by Michael Lazar." msgstr "" -#: ../build/NEWS:13985 +#: ../build/NEWS:14020 msgid "" "`bpo-32604 `__: Remove the " "_xxsubinterpreters module (meant for testing) and associated helpers. This " "module was originally added recently in 3.7b1." msgstr "" -#: ../build/NEWS:13997 ../build/NEWS:18489 +#: ../build/NEWS:14032 ../build/NEWS:18524 msgid "" "`bpo-33012 `__: Add ``-Wno-cast-function-" "type`` for gcc 8 for silencing warnings about function casts like casting to " "PyCFunction in method definition lists." msgstr "" -#: ../build/NEWS:14019 +#: ../build/NEWS:14054 msgid "Python 3.7.0 beta 4" msgstr "" -#: ../build/NEWS:14021 +#: ../build/NEWS:14056 msgid "*Release date: 2018-05-02*" msgstr "" -#: ../build/NEWS:14079 +#: ../build/NEWS:14114 msgid "" "`bpo-33185 `__: Fixed regression when " "running pydoc with the :option:`-m` switch. (The regression was introduced " @@ -26651,50 +26605,50 @@ msgid "" "adding ``\".\"``." msgstr "" -#: ../build/NEWS:14087 +#: ../build/NEWS:14122 msgid "" "`bpo-33217 `__: Deprecate looking up non-" "Enum objects in Enum classes and Enum members (will raise :exc:`TypeError` " "in 3.8+)." msgstr "" -#: ../build/NEWS:14196 +#: ../build/NEWS:14231 msgid "Python 3.7.0 beta 3" msgstr "" -#: ../build/NEWS:14198 +#: ../build/NEWS:14233 msgid "*Release date: 2018-03-29*" msgstr "" -#: ../build/NEWS:14226 ../build/NEWS:18299 +#: ../build/NEWS:14261 ../build/NEWS:18334 msgid "" "`bpo-33041 `__: Fixed jumping when the " "function contains an ``async for`` loop." msgstr "" -#: ../build/NEWS:14324 +#: ../build/NEWS:14359 msgid "" "`bpo-31639 `__: http.server now exposes " "a ThreadedHTTPServer class and uses it when the module is run with ``-m`` to " "cope with web browsers pre-opening sockets." msgstr "" -#: ../build/NEWS:14414 +#: ../build/NEWS:14449 msgid "Python 3.7.0 beta 2" msgstr "" -#: ../build/NEWS:14416 +#: ../build/NEWS:14451 msgid "*Release date: 2018-02-27*" msgstr "" -#: ../build/NEWS:14481 +#: ../build/NEWS:14516 msgid "" "`bpo-25988 `__: Emit a :exc:" "`DeprecationWarning` when using or importing an ABC directly from :mod:" "`collections` rather than from :mod:`collections.abc`." msgstr "" -#: ../build/NEWS:14490 +#: ../build/NEWS:14525 msgid "" "`bpo-31333 `__: ``_abc`` module is " "added. It is a speedup module with C implementations for various functions " @@ -26708,34 +26662,34 @@ msgid "" "``_abc_caches_clear``." msgstr "" -#: ../build/NEWS:14664 +#: ../build/NEWS:14699 msgid "Python 3.7.0 beta 1" msgstr "" -#: ../build/NEWS:14666 +#: ../build/NEWS:14701 msgid "*Release date: 2018-01-30*" msgstr "" -#: ../build/NEWS:14671 +#: ../build/NEWS:14706 msgid "" "`bpo-32703 `__: Fix coroutine's " "ResourceWarning when there's an active error set when it's being finalized." msgstr "" -#: ../build/NEWS:14674 ../build/NEWS:18617 +#: ../build/NEWS:14709 ../build/NEWS:18652 msgid "" "`bpo-32650 `__: Pdb and other debuggers " "dependent on bdb.py will correctly step over (next command) native " "coroutines. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:14677 +#: ../build/NEWS:14712 msgid "" "`bpo-28685 `__: Optimize list.sort() and " "sorted() by using type specialized comparisons when possible." msgstr "" -#: ../build/NEWS:14680 ../build/NEWS:18620 +#: ../build/NEWS:14715 ../build/NEWS:18655 msgid "" "`bpo-32685 `__: Improve suggestion when " "the Python 2 form of print statement is either present on the same line as " @@ -26743,7 +26697,7 @@ msgid "" "instead of a newline. Patch by Nitish Chandra." msgstr "" -#: ../build/NEWS:14685 +#: ../build/NEWS:14720 msgid "" "`bpo-32697 `__: Python now explicitly " "preserves the definition order of keyword-only parameters. It's always " @@ -26751,21 +26705,21 @@ msgid "" "behavior is now guaranteed and tested." msgstr "" -#: ../build/NEWS:14690 +#: ../build/NEWS:14725 msgid "" "`bpo-32690 `__: The locals() dictionary " "now displays in the lexical order that variables were defined. Previously, " "the order was reversed." msgstr "" -#: ../build/NEWS:14693 +#: ../build/NEWS:14728 msgid "" "`bpo-32677 `__: Add ``.isascii()`` " "method to ``str``, ``bytes`` and ``bytearray``. It can be used to test that " "string contains only ASCII characters." msgstr "" -#: ../build/NEWS:14697 +#: ../build/NEWS:14732 msgid "" "`bpo-32670 `__: Enforce :pep:`479` for " "all code. This means that manually raising a StopIteration exception from a " @@ -26773,7 +26727,7 @@ msgid "" "import generator_stop' was used or not." msgstr "" -#: ../build/NEWS:14702 +#: ../build/NEWS:14737 msgid "" "`bpo-32591 `__: Added built-in support " "for tracking the origin of coroutine objects; see sys." @@ -26782,13 +26736,13 @@ msgid "" "coroutine objects." msgstr "" -#: ../build/NEWS:14707 +#: ../build/NEWS:14742 msgid "" "`bpo-31368 `__: Expose preadv and " "pwritev system calls in the os module. Patch by Pablo Galindo" msgstr "" -#: ../build/NEWS:14710 +#: ../build/NEWS:14745 msgid "" "`bpo-32544 `__: ``hasattr(obj, name)`` " "and ``getattr(obj, name, default)`` are about 4 times faster than before " @@ -26796,38 +26750,38 @@ msgid "" "``__getattribute__``." msgstr "" -#: ../build/NEWS:14714 ../build/NEWS:18628 +#: ../build/NEWS:14749 ../build/NEWS:18663 msgid "" "`bpo-26163 `__: Improved frozenset() " "hash to create more distinct hash values when faced with datasets containing " "many similar values." msgstr "" -#: ../build/NEWS:14717 +#: ../build/NEWS:14752 msgid "" "`bpo-32550 `__: Remove the " "STORE_ANNOTATION bytecode." msgstr "" -#: ../build/NEWS:14719 +#: ../build/NEWS:14754 msgid "" "`bpo-20104 `__: Expose posix_spawn as a " "low level API in the os module. (removed before 3.7.0rc1)" msgstr "" -#: ../build/NEWS:14722 +#: ../build/NEWS:14757 msgid "" "`bpo-24340 `__: Fixed estimation of the " "code stack size." msgstr "" -#: ../build/NEWS:14724 +#: ../build/NEWS:14759 msgid "" "`bpo-32436 `__: Implement :pep:`567` " "Context Variables." msgstr "" -#: ../build/NEWS:14726 ../build/NEWS:18641 +#: ../build/NEWS:14761 ../build/NEWS:18676 msgid "" "`bpo-18533 `__: ``repr()`` on a dict " "containing its own ``values()`` or ``items()`` no longer raises " @@ -26835,39 +26789,39 @@ msgid "" "other recursive structures. Patch by Ben North." msgstr "" -#: ../build/NEWS:14731 +#: ../build/NEWS:14766 msgid "" "`bpo-20891 `__: Py_Initialize() now " "creates the GIL. The GIL is no longer created \"on demand\" to fix a race " "condition when PyGILState_Ensure() is called in a non-Python thread." msgstr "" -#: ../build/NEWS:14735 ../build/NEWS:18646 +#: ../build/NEWS:14770 ../build/NEWS:18681 msgid "" "`bpo-32028 `__: Leading whitespace is " "now correctly ignored when generating suggestions for converting Py2 print " "statements to Py3 builtin print function calls. Patch by Sanyam Khurana." msgstr "" -#: ../build/NEWS:14739 +#: ../build/NEWS:14774 msgid "" "`bpo-31179 `__: Make dict.copy() up to " "5.5 times faster." msgstr "" -#: ../build/NEWS:14741 +#: ../build/NEWS:14776 msgid "" "`bpo-31113 `__: Get rid of recursion in " "the compiler for normal control flow." msgstr "" -#: ../build/NEWS:14746 +#: ../build/NEWS:14781 msgid "" "`bpo-25988 `__: Deprecate exposing the " "contents of collections.abc in the regular collections module." msgstr "" -#: ../build/NEWS:14749 +#: ../build/NEWS:14784 msgid "" "`bpo-31429 `__: The default cipher suite " "selection of the ssl module now uses a blacklist approach rather than a hard-" @@ -26876,7 +26830,7 @@ msgid "" "on compile time." msgstr "" -#: ../build/NEWS:14754 +#: ../build/NEWS:14789 msgid "" "`bpo-30306 `__: contextlib." "contextmanager now releases the arguments passed to the underlying generator " @@ -26885,45 +26839,45 @@ msgid "" "as a function decorator. Patch by Martin Teichmann." msgstr "" -#: ../build/NEWS:14760 +#: ../build/NEWS:14795 msgid "" "`bpo-21417 `__: Added support for " "setting the compression level for zipfile.ZipFile." msgstr "" -#: ../build/NEWS:14763 +#: ../build/NEWS:14798 msgid "" "`bpo-32251 `__: Implement asyncio." "BufferedProtocol (provisional API)." msgstr "" -#: ../build/NEWS:14765 +#: ../build/NEWS:14800 msgid "" "`bpo-32513 `__: In dataclasses, allow " "easier overriding of dunder methods without specifying decorator parameters." msgstr "" -#: ../build/NEWS:14768 +#: ../build/NEWS:14803 msgid "" "`bpo-32660 `__: :mod:`termios` makes " "available ``FIONREAD``, ``FIONCLEX``, ``FIOCLEX``, ``FIOASYNC`` and " "``FIONBIO`` also under Solaris/derivatives." msgstr "" -#: ../build/NEWS:14771 ../build/NEWS:18721 +#: ../build/NEWS:14806 ../build/NEWS:18756 msgid "" "`bpo-27931 `__: Fix email address header " "parsing error when the username is an empty quoted string. Patch by Xiang " "Zhang." msgstr "" -#: ../build/NEWS:14774 +#: ../build/NEWS:14809 msgid "" "`bpo-32659 `__: Under Solaris and " "derivatives, :class:`os.stat_result` provides a st_fstype attribute." msgstr "" -#: ../build/NEWS:14777 +#: ../build/NEWS:14812 msgid "" "`bpo-32662 `__: Implement Server." "start_serving(), Server.serve_forever(), and Server.is_serving() methods. " @@ -26931,44 +26885,44 @@ msgid "" "create_unix_server()." msgstr "" -#: ../build/NEWS:14781 +#: ../build/NEWS:14816 msgid "" "`bpo-32391 `__: Implement :meth:`asyncio." "StreamWriter.wait_closed` and :meth:`asyncio.StreamWriter.is_closing` methods" msgstr "" -#: ../build/NEWS:14784 +#: ../build/NEWS:14819 msgid "" "`bpo-32643 `__: Make Task._step, Task." "_wakeup and Future._schedule_callbacks methods private." msgstr "" -#: ../build/NEWS:14787 +#: ../build/NEWS:14822 msgid "" "`bpo-32630 `__: Refactor decimal module " "to use contextvars to store decimal context." msgstr "" -#: ../build/NEWS:14790 +#: ../build/NEWS:14825 msgid "" "`bpo-32622 `__: Add :meth:`asyncio." "AbstractEventLoop.sendfile` method." msgstr "" -#: ../build/NEWS:14792 ../build/NEWS:18724 +#: ../build/NEWS:14827 ../build/NEWS:18759 msgid "" "`bpo-32304 `__: distutils' upload " "command no longer corrupts tar files ending with a CR byte, and no longer " "tries to convert CR to CRLF in any of the upload text fields." msgstr "" -#: ../build/NEWS:14796 ../build/NEWS:18728 +#: ../build/NEWS:14831 ../build/NEWS:18763 msgid "" "`bpo-32502 `__: uuid.uuid1 no longer " "raises an exception if a 64-bit hardware address is encountered." msgstr "" -#: ../build/NEWS:14799 +#: ../build/NEWS:14834 msgid "" "`bpo-32596 `__: ``concurrent.futures`` " "imports ``ThreadPoolExecutor`` and ``ProcessPoolExecutor`` lazily (using :" @@ -26976,81 +26930,81 @@ msgid "" "uses only ``ThreadPoolExecutor`` by default." msgstr "" -#: ../build/NEWS:14804 +#: ../build/NEWS:14839 msgid "" "`bpo-31801 `__: Add ``_ignore_`` to " "``Enum`` so temporary variables can be used during class construction " "without being turned into members." msgstr "" -#: ../build/NEWS:14807 +#: ../build/NEWS:14842 msgid "" "`bpo-32576 `__: Use queue.SimpleQueue() " "in places where it can be invoked from a weakref callback." msgstr "" -#: ../build/NEWS:14810 +#: ../build/NEWS:14845 msgid "" "`bpo-32574 `__: Fix memory leak in " "asyncio.Queue, when the queue has limited size and it is full, the " "cancelation of queue.put() can cause a memory leak. Patch by: José Melero." msgstr "" -#: ../build/NEWS:14814 ../build/NEWS:18738 +#: ../build/NEWS:14849 ../build/NEWS:18773 msgid "" "`bpo-32521 `__: The nis module is now " "compatible with new libnsl and headers location." msgstr "" -#: ../build/NEWS:14817 +#: ../build/NEWS:14852 msgid "" "`bpo-32467 `__: collections.abc." "ValuesView now inherits from collections.abc.Collection." msgstr "" -#: ../build/NEWS:14820 ../build/NEWS:18741 +#: ../build/NEWS:14855 ../build/NEWS:18776 msgid "" "`bpo-32473 `__: Improve ABCMeta." "_dump_registry() output readability" msgstr "" -#: ../build/NEWS:14822 +#: ../build/NEWS:14857 msgid "" "`bpo-32102 `__: New argument " "``capture_output`` for subprocess.run" msgstr "" -#: ../build/NEWS:14824 ../build/NEWS:18743 +#: ../build/NEWS:14859 ../build/NEWS:18778 msgid "" "`bpo-32521 `__: glibc has removed Sun " "RPC. Use replacement libtirpc headers and library in nis module." msgstr "" -#: ../build/NEWS:14827 +#: ../build/NEWS:14862 msgid "" "`bpo-32493 `__: UUID module fixes build " "for FreeBSD/OpenBSD" msgstr "" -#: ../build/NEWS:14829 +#: ../build/NEWS:14864 msgid "" "`bpo-32503 `__: Pickling with protocol 4 " "no longer creates too small frames." msgstr "" -#: ../build/NEWS:14831 +#: ../build/NEWS:14866 msgid "" "`bpo-29237 `__: Create enum for pstats " "sorting options" msgstr "" -#: ../build/NEWS:14833 +#: ../build/NEWS:14868 msgid "" "`bpo-32454 `__: Add close(fd) function " "to the socket module." msgstr "" -#: ../build/NEWS:14835 +#: ../build/NEWS:14870 msgid "" "`bpo-25942 `__: The subprocess module is " "now more graceful when handling a Ctrl-C KeyboardInterrupt during subprocess." @@ -27061,58 +27015,58 @@ msgid "" "child had a chance first." msgstr "" -#: ../build/NEWS:14842 +#: ../build/NEWS:14877 msgid "" "`bpo-32433 `__: The hmac module now has " "hmac.digest(), which provides an optimized HMAC digest." msgstr "" -#: ../build/NEWS:14845 +#: ../build/NEWS:14880 msgid "" "`bpo-28134 `__: Sockets now auto-detect " "family, type and protocol from file descriptor by default." msgstr "" -#: ../build/NEWS:14848 +#: ../build/NEWS:14883 msgid "" "`bpo-32404 `__: Fix bug where :meth:" "`datetime.datetime.fromtimestamp` did not call __new__ in :class:`datetime." "datetime` subclasses." msgstr "" -#: ../build/NEWS:14851 +#: ../build/NEWS:14886 msgid "" "`bpo-32403 `__: Improved speed of :class:" "`datetime.date` and :class:`datetime.datetime` alternate constructors." msgstr "" -#: ../build/NEWS:14854 ../build/NEWS:18746 +#: ../build/NEWS:14889 ../build/NEWS:18781 msgid "" "`bpo-32228 `__: Ensure that " "``truncate()`` preserves the file position (as reported by ``tell()``) after " "writes longer than the buffer size." msgstr "" -#: ../build/NEWS:14857 +#: ../build/NEWS:14892 msgid "" "`bpo-32410 `__: Implement ``loop." "sock_sendfile`` for asyncio event loop." msgstr "" -#: ../build/NEWS:14859 +#: ../build/NEWS:14894 msgid "" "`bpo-22908 `__: Added seek and tell to " "the ZipExtFile class. This only works if the file object used to open the " "zipfile is seekable." msgstr "" -#: ../build/NEWS:14862 +#: ../build/NEWS:14897 msgid "" "`bpo-32373 `__: Add socket.getblocking() " "method." msgstr "" -#: ../build/NEWS:14864 +#: ../build/NEWS:14899 msgid "" "`bpo-32248 `__: Add :mod:`importlib." "resources` and :class:`importlib.abc.ResourceReader` as the unified API for " @@ -27122,19 +27076,19 @@ msgid "" "`importlib.abc.ResourceLoader` is deprecated in favor of these new APIs." msgstr "" -#: ../build/NEWS:14872 +#: ../build/NEWS:14907 msgid "" "`bpo-32320 `__: collections.namedtuple() " "now supports default values." msgstr "" -#: ../build/NEWS:14874 +#: ../build/NEWS:14909 msgid "" "`bpo-29302 `__: Add contextlib." "AsyncExitStack. Patch by Alexander Mohr and Ilya Kulakov." msgstr "" -#: ../build/NEWS:14877 +#: ../build/NEWS:14912 msgid "" "`bpo-31961 `__: *Removed in Python " "3.7.0b2.* The *args* argument of subprocess.Popen can now be a :term:`path-" @@ -27142,7 +27096,7 @@ msgid "" "be a :term:`path-like object` as well." msgstr "" -#: ../build/NEWS:14882 ../build/NEWS:18774 +#: ../build/NEWS:14917 ../build/NEWS:18809 msgid "" "`bpo-31900 `__: The :func:`locale." "localeconv` function now sets temporarily the ``LC_CTYPE`` locale to the " @@ -27154,14 +27108,14 @@ msgid "" "subclasses) with the ``n`` type (ex: ``'{:n}'.format(1234)``)." msgstr "" -#: ../build/NEWS:14891 +#: ../build/NEWS:14926 msgid "" "`bpo-31853 `__: Use super().method " "instead of socket.method in SSLSocket. They were there most likely for " "legacy reasons." msgstr "" -#: ../build/NEWS:14894 +#: ../build/NEWS:14929 msgid "" "`bpo-31399 `__: The ssl module now uses " "OpenSSL's X509_VERIFY_PARAM_set1_host() and X509_VERIFY_PARAM_set1_ip() API " @@ -27169,26 +27123,26 @@ msgid "" "disabled with SSLContext.hostname_checks_common_name." msgstr "" -#: ../build/NEWS:14899 +#: ../build/NEWS:14934 msgid "" "`bpo-14976 `__: Add a queue.SimpleQueue " "class, an unbounded FIFO queue with a reentrant C implementation of put()." msgstr "" -#: ../build/NEWS:14905 +#: ../build/NEWS:14940 msgid "" "`bpo-32724 `__: Add references to some " "commands in the documentation of Pdb. Patch by Stéphane Wirtel" msgstr "" -#: ../build/NEWS:14908 +#: ../build/NEWS:14943 msgid "" "`bpo-32649 `__: Complete the C API " "documentation, profiling and tracing part with the newly added per-opcode " "events." msgstr "" -#: ../build/NEWS:14911 ../build/NEWS:18802 +#: ../build/NEWS:14946 ../build/NEWS:18837 msgid "" "`bpo-17799 `__: Explain real behaviour " "of sys.settrace and sys.setprofile and their C-API counterparts regarding " @@ -27196,13 +27150,13 @@ msgid "" "Salgado." msgstr "" -#: ../build/NEWS:14918 ../build/NEWS:18812 +#: ../build/NEWS:14953 ../build/NEWS:18847 msgid "" "`bpo-32721 `__: Fix test_hashlib to not " "fail if the _md5 module is not built." msgstr "" -#: ../build/NEWS:14920 +#: ../build/NEWS:14955 msgid "" "`bpo-28414 `__: Add test cases for IDNA " "2003 and 2008 host names. IDNA 2003 internationalized host names are working " @@ -27210,7 +27164,7 @@ msgid "" "2008 are still broken." msgstr "" -#: ../build/NEWS:14924 +#: ../build/NEWS:14959 msgid "" "`bpo-32604 `__: Add a new " "\"_xxsubinterpreters\" extension module that exposes the existing " @@ -27220,63 +27174,63 @@ msgid "" "removed in 3.7.0rc1." msgstr "" -#: ../build/NEWS:14930 +#: ../build/NEWS:14965 msgid "" "`bpo-32602 `__: Add test certs and test " "for ECDSA cert and EC/RSA dual mode." msgstr "" -#: ../build/NEWS:14932 +#: ../build/NEWS:14967 msgid "" "`bpo-32549 `__: On Travis CI, Python now " "Compiles and uses a local copy of OpenSSL 1.1.0g for testing." msgstr "" -#: ../build/NEWS:14938 ../build/NEWS:18824 +#: ../build/NEWS:14973 ../build/NEWS:18859 msgid "" "`bpo-32635 `__: Fix segfault of the " "crypt module when libxcrypt is provided instead of libcrypt at the system." msgstr "" -#: ../build/NEWS:14941 +#: ../build/NEWS:14976 msgid "" "`bpo-32598 `__: Use autoconf to detect " "OpenSSL libs, headers and supported features. The ax_check_openssl M4 macro " "uses pkg-config to locate OpenSSL and falls back to manual search." msgstr "" -#: ../build/NEWS:14945 +#: ../build/NEWS:14980 msgid "" "`bpo-32593 `__: Drop support of FreeBSD " "9 and older." msgstr "" -#: ../build/NEWS:14947 +#: ../build/NEWS:14982 msgid "" "`bpo-29708 `__: If the :envvar:" "`SOURCE_DATE_EPOCH` environment variable is set, :mod:`py_compile` will " "always create hash-based ``.pyc`` files." msgstr "" -#: ../build/NEWS:14953 +#: ../build/NEWS:14988 msgid "" "`bpo-32588 `__: Create standalone " "_distutils_findvs module and add missing _queue module to installer." msgstr "" -#: ../build/NEWS:14956 +#: ../build/NEWS:14991 msgid "" "`bpo-29911 `__: Ensure separate Modify " "and Uninstall buttons are displayed." msgstr "" -#: ../build/NEWS:14958 +#: ../build/NEWS:14993 msgid "" "`bpo-32507 `__: Use app-local UCRT " "install rather than the proper update for old versions of Windows." msgstr "" -#: ../build/NEWS:14964 +#: ../build/NEWS:14999 msgid "" "`bpo-32726 `__: Provide an additional, " "more modern macOS installer variant that supports macOS 10.9+ systems in 64-" @@ -27285,34 +27239,34 @@ msgid "" "own copy of Tcl/Tk 8.6." msgstr "" -#: ../build/NEWS:14969 +#: ../build/NEWS:15004 msgid "" "`bpo-28440 `__: No longer add /Library/" "Python/3.x/site-packages to sys.path for macOS framework builds to avoid " "future conflicts." msgstr "" -#: ../build/NEWS:14975 +#: ../build/NEWS:15010 msgid "" "`bpo-32681 `__: Fix uninitialized " "variable 'res' in the C implementation of os.dup2. Patch by Stéphane Wirtel" msgstr "" -#: ../build/NEWS:14978 +#: ../build/NEWS:15013 msgid "" "`bpo-10381 `__: Add C API access to the " "``datetime.timezone`` constructor and ``datetime.timzone.UTC`` singleton." msgstr "" -#: ../build/NEWS:14983 +#: ../build/NEWS:15018 msgid "Python 3.7.0 alpha 4" msgstr "" -#: ../build/NEWS:14985 +#: ../build/NEWS:15020 msgid "*Release date: 2018-01-08*" msgstr "" -#: ../build/NEWS:14990 +#: ../build/NEWS:15025 msgid "" "`bpo-31975 `__: The default warning " "filter list now starts with a \"default::DeprecationWarning:__main__\" " @@ -27320,19 +27274,19 @@ msgid "" "file scripts and at the interactive prompt." msgstr "" -#: ../build/NEWS:14995 +#: ../build/NEWS:15030 msgid "" "`bpo-32226 `__: ``__class_getitem__`` is " "now an automatic class method." msgstr "" -#: ../build/NEWS:14997 +#: ../build/NEWS:15032 msgid "" "`bpo-32399 `__: Add AIX uuid library " "support for RFC4122 using uuid_create() in libc.a" msgstr "" -#: ../build/NEWS:15000 +#: ../build/NEWS:15035 msgid "" "`bpo-32390 `__: Fix the compilation " "failure on AIX after the f_fsid field has been added to the object returned " @@ -27340,26 +27294,26 @@ msgid "" "Original patch by Michael Felt." msgstr "" -#: ../build/NEWS:15004 +#: ../build/NEWS:15039 msgid "" "`bpo-32379 `__: Make MRO computation " "faster when a class inherits from a single base." msgstr "" -#: ../build/NEWS:15007 +#: ../build/NEWS:15042 msgid "" "`bpo-32259 `__: The error message of a " "TypeError raised when unpack non-iterable is now more specific." msgstr "" -#: ../build/NEWS:15010 ../build/NEWS:18631 +#: ../build/NEWS:15045 ../build/NEWS:18666 msgid "" "`bpo-27169 `__: The ``__debug__`` " "constant is now optimized out at compile time. This fixes also `bpo-22091 " "`__." msgstr "" -#: ../build/NEWS:15013 +#: ../build/NEWS:15048 msgid "" "`bpo-32329 `__: The :option:`-R` option " "now turns on hash randomization when the :envvar:`PYTHONHASHSEED` " @@ -27368,7 +27322,7 @@ msgid "" "hash randomization is turned off by ``PYTHONHASHSEED=0``." msgstr "" -#: ../build/NEWS:15019 +#: ../build/NEWS:15054 msgid "" "`bpo-30416 `__: The optimizer is now " "protected from spending much time doing complex calculations and consuming " @@ -27376,34 +27330,34 @@ msgid "" "limits for constants that can be produced in constant folding." msgstr "" -#: ../build/NEWS:15024 ../build/NEWS:18301 +#: ../build/NEWS:15059 ../build/NEWS:18336 msgid "" "`bpo-32282 `__: Fix an unnecessary ifdef " "in the include of VersionHelpers.h in socketmodule on Windows." msgstr "" -#: ../build/NEWS:15027 +#: ../build/NEWS:15062 msgid "" "`bpo-30579 `__: Implement TracebackType." "__new__ to allow Python-level creation of traceback objects, and make " "TracebackType.tb_next mutable." msgstr "" -#: ../build/NEWS:15030 +#: ../build/NEWS:15065 msgid "" "`bpo-32260 `__: Don't byte swap the " "input keys to the SipHash algorithm on big-endian platforms. This should " "ensure siphash gives consistent results across platforms." msgstr "" -#: ../build/NEWS:15034 +#: ../build/NEWS:15069 msgid "" "`bpo-31506 `__: Improve the error " "message logic for object.__new__ and object.__init__. Patch by Sanyam " "Khurana." msgstr "" -#: ../build/NEWS:15037 +#: ../build/NEWS:15072 msgid "" "`bpo-20361 `__: ``-b`` and ``-bb`` now " "inject ``'default::BytesWarning'`` and ``error::BytesWarning`` entries into " @@ -27412,124 +27366,124 @@ msgid "" "environment variable." msgstr "" -#: ../build/NEWS:15042 +#: ../build/NEWS:15077 msgid "" "`bpo-32230 `__: `-X dev` now injects a " "``'default'`` entry into sys.warnoptions, ensuring that it behaves " "identically to actually passing ``-Wdefault`` at the command line." msgstr "" -#: ../build/NEWS:15046 +#: ../build/NEWS:15081 msgid "" "`bpo-29240 `__: Add a new UTF-8 mode: " "implementation of the :pep:`540`." msgstr "" -#: ../build/NEWS:15048 +#: ../build/NEWS:15083 msgid "" "`bpo-32226 `__: :pep:`560`: Add support " "for ``__mro_entries__`` and ``__class_getitem__``. Implemented by Ivan " "Levkivskyi." msgstr "" -#: ../build/NEWS:15051 +#: ../build/NEWS:15086 msgid "" "`bpo-32225 `__: :pep:`562`: Add support " "for module ``__getattr__`` and ``__dir__``. Implemented by Ivan Levkivskyi." msgstr "" -#: ../build/NEWS:15054 +#: ../build/NEWS:15089 msgid "" "`bpo-31901 `__: The `atexit` module now " "has its callback stored per interpreter." msgstr "" -#: ../build/NEWS:15057 +#: ../build/NEWS:15092 msgid "" "`bpo-31650 `__: Implement :pep:`552` " "(Deterministic pycs). Python now supports invalidating bytecode cache files " "bashed on a source content hash rather than source last-modified time." msgstr "" -#: ../build/NEWS:15061 +#: ../build/NEWS:15096 msgid "" "`bpo-29469 `__: Move constant folding " "from bytecode layer to AST layer. Original patch by Eugene Toder." msgstr "" -#: ../build/NEWS:15067 +#: ../build/NEWS:15102 msgid "" "`bpo-32506 `__: Now that dict is defined " "as keeping insertion order, drop OrderedDict and just use plain dict." msgstr "" -#: ../build/NEWS:15070 +#: ../build/NEWS:15105 msgid "" "`bpo-32279 `__: Add params to " "dataclasses.make_dataclasses(): init, repr, eq, order, hash, and frozen. " "Pass them through to dataclass()." msgstr "" -#: ../build/NEWS:15073 +#: ../build/NEWS:15108 msgid "" "`bpo-32278 `__: Make type information " "optional on dataclasses.make_dataclass(). If omitted, the string 'typing." "Any' is used." msgstr "" -#: ../build/NEWS:15076 +#: ../build/NEWS:15111 msgid "" "`bpo-32499 `__: Add dataclasses." "is_dataclass(obj), which returns True if obj is a dataclass or an instance " "of one." msgstr "" -#: ../build/NEWS:15079 +#: ../build/NEWS:15114 msgid "" "`bpo-32468 `__: Improve frame repr() to " "mention filename, code name and current line number." msgstr "" -#: ../build/NEWS:15082 +#: ../build/NEWS:15117 msgid "" "`bpo-23749 `__: asyncio: Implement loop." "start_tls()" msgstr "" -#: ../build/NEWS:15084 +#: ../build/NEWS:15119 msgid "" "`bpo-32441 `__: Return the new file " "descriptor (i.e., the second argument) from ``os.dup2``. Previously, " "``None`` was always returned." msgstr "" -#: ../build/NEWS:15087 +#: ../build/NEWS:15122 msgid "" "`bpo-32422 `__: ``functools.lru_cache`` " "uses less memory (3 words for each cached key) and takes about 1/3 time for " "cyclic GC." msgstr "" -#: ../build/NEWS:15090 +#: ../build/NEWS:15125 msgid "" "`bpo-31721 `__: Prevent Python crash " "from happening when Future._log_traceback is set to True manually. Now it " "can only be set to False, or a ValueError is raised." msgstr "" -#: ../build/NEWS:15094 +#: ../build/NEWS:15129 msgid "" "`bpo-32415 `__: asyncio: Add Task." "get_loop() and Future.get_loop()" msgstr "" -#: ../build/NEWS:15096 ../build/NEWS:18749 +#: ../build/NEWS:15131 ../build/NEWS:18784 msgid "" "`bpo-26133 `__: Don't unsubscribe " "signals in asyncio UNIX event loop on interpreter shutdown." msgstr "" -#: ../build/NEWS:15099 +#: ../build/NEWS:15134 msgid "" "`bpo-32363 `__: Make asyncio.Task." "set_exception() and set_result() raise NotImplementedError. Task._step() and " @@ -27537,7 +27491,7 @@ msgid "" "state, instead of raising an AssertionError." msgstr "" -#: ../build/NEWS:15104 +#: ../build/NEWS:15139 msgid "" "`bpo-32357 `__: Optimize asyncio." "iscoroutine() and loop.create_task() for non-native coroutines (e.g. async/" @@ -27546,33 +27500,33 @@ msgid "" "fast." msgstr "" -#: ../build/NEWS:15109 +#: ../build/NEWS:15144 msgid "" "`bpo-32356 `__: asyncio.transport." "resume_reading() and pause_reading() are now idempotent. New transport." "is_reading() method is added." msgstr "" -#: ../build/NEWS:15112 +#: ../build/NEWS:15147 msgid "" "`bpo-32355 `__: Optimize asyncio." "gather(); now up to 15% faster." msgstr "" -#: ../build/NEWS:15114 +#: ../build/NEWS:15149 msgid "" "`bpo-32351 `__: Use fastpath in asyncio." "sleep if delay<0 (2x boost)" msgstr "" -#: ../build/NEWS:15116 +#: ../build/NEWS:15151 msgid "" "`bpo-32348 `__: Optimize asyncio.Future " "schedule/add/remove callback. The optimization shows 3-6% performance " "improvements of async/await code." msgstr "" -#: ../build/NEWS:15119 +#: ../build/NEWS:15154 msgid "" "`bpo-32331 `__: Fix socket.settimeout() " "and socket.setblocking() to keep socket.type as is. Fix socket.socket() " @@ -27580,7 +27534,7 @@ msgid "" "only affects OSes that have SOCK_NONBLOCK and/or SOCK_CLOEXEC." msgstr "" -#: ../build/NEWS:15124 +#: ../build/NEWS:15159 msgid "" "`bpo-32248 `__: Add :class:`importlib." "abc.ResourceReader` as an ABC for loaders to provide a unified API for " @@ -27588,13 +27542,13 @@ msgid "" "resources` as the port of ``importlib_resources``." msgstr "" -#: ../build/NEWS:15129 +#: ../build/NEWS:15164 msgid "" "`bpo-32311 `__: Implement asyncio." "create_task(coro) shortcut" msgstr "" -#: ../build/NEWS:15131 +#: ../build/NEWS:15166 msgid "" "`bpo-32327 `__: Convert asyncio " "functions that were documented as coroutines to coroutines. Affected " @@ -27602,55 +27556,55 @@ msgid "" "getaddrinfo, loop.getnameinfo." msgstr "" -#: ../build/NEWS:15135 ../build/NEWS:18755 +#: ../build/NEWS:15170 ../build/NEWS:18790 msgid "" "`bpo-32323 `__: :func:`urllib.parse." "urlsplit()` does not convert zone-id (scope) to lower case for scoped IPv6 " "addresses in hostnames now." msgstr "" -#: ../build/NEWS:15138 ../build/NEWS:18758 +#: ../build/NEWS:15173 ../build/NEWS:18793 msgid "" "`bpo-32302 `__: Fix bdist_wininst of " "distutils for CRT v142: it binary compatible with CRT v140." msgstr "" -#: ../build/NEWS:15141 +#: ../build/NEWS:15176 msgid "" "`bpo-29711 `__: Fix ``stop_serving`` in " "asyncio proactor loop kill all listening servers" msgstr "" -#: ../build/NEWS:15144 +#: ../build/NEWS:15179 msgid "" "`bpo-32308 `__: :func:`re.sub()` now " "replaces empty matches adjacent to a previous non-empty match." msgstr "" -#: ../build/NEWS:15147 +#: ../build/NEWS:15182 msgid "" "`bpo-29970 `__: Abort asyncio " "SSLProtocol connection if handshake not complete within 10s" msgstr "" -#: ../build/NEWS:15150 +#: ../build/NEWS:15185 msgid "" "`bpo-32314 `__: Implement asyncio.run()." msgstr "" -#: ../build/NEWS:15152 +#: ../build/NEWS:15187 msgid "" "`bpo-17852 `__: Revert incorrect fix " "based on misunderstanding of _Py_PyAtExit() semantics." msgstr "" -#: ../build/NEWS:15155 +#: ../build/NEWS:15190 msgid "" "`bpo-32296 `__: Implement asyncio." "_get_running_loop() and get_event_loop() in C. This makes them 4x faster." msgstr "" -#: ../build/NEWS:15158 +#: ../build/NEWS:15193 msgid "" "`bpo-32250 `__: Implement ``asyncio." "current_task()`` and ``asyncio.all_tasks()``. Add helpers intended to be " @@ -27660,7 +27614,7 @@ msgid "" "Task.all_tasks()``." msgstr "" -#: ../build/NEWS:15164 ../build/NEWS:18761 +#: ../build/NEWS:15199 ../build/NEWS:18796 msgid "" "`bpo-32255 `__: A single empty field is " "now always quoted when written into a CSV file. This allows to distinguish " @@ -27668,7 +27622,7 @@ msgid "" "Takeuchi." msgstr "" -#: ../build/NEWS:15168 ../build/NEWS:18765 +#: ../build/NEWS:15203 ../build/NEWS:18800 msgid "" "`bpo-32277 `__: Raise " "``NotImplementedError`` instead of ``SystemError`` on platforms where " @@ -27676,14 +27630,14 @@ msgid "" "Sottile." msgstr "" -#: ../build/NEWS:15172 +#: ../build/NEWS:15207 msgid "" "`bpo-30050 `__: New argument " "warn_on_full_buffer to signal.set_wakeup_fd lets you control whether Python " "prints a warning on stderr when the wakeup fd buffer overflows." msgstr "" -#: ../build/NEWS:15176 +#: ../build/NEWS:15211 msgid "" "`bpo-29137 `__: The ``fpectl`` library " "has been removed. It was never enabled by default, never worked correctly on " @@ -27691,25 +27645,25 @@ msgid "" "breakage of C extensions." msgstr "" -#: ../build/NEWS:15180 +#: ../build/NEWS:15215 msgid "" "`bpo-32273 `__: Move asyncio.test_utils " "to test.test_asyncio." msgstr "" -#: ../build/NEWS:15182 +#: ../build/NEWS:15217 msgid "" "`bpo-32272 `__: Remove asyncio.async() " "function." msgstr "" -#: ../build/NEWS:15184 +#: ../build/NEWS:15219 msgid "" "`bpo-32269 `__: Add asyncio." "get_running_loop() function." msgstr "" -#: ../build/NEWS:15186 +#: ../build/NEWS:15221 msgid "" "`bpo-32265 `__: All class and static " "methods of builtin types now are correctly classified by inspect." @@ -27717,39 +27671,39 @@ msgid "" "ClassMethodDescriptorType for unbound class methods of builtin types." msgstr "" -#: ../build/NEWS:15191 +#: ../build/NEWS:15226 msgid "" "`bpo-32253 `__: Deprecate ``yield from " "lock``, ``await lock``, ``with (yield from lock)`` and ``with await lock`` " "for asyncio synchronization primitives." msgstr "" -#: ../build/NEWS:15195 +#: ../build/NEWS:15230 msgid "" "`bpo-22589 `__: Changed MIME type of ." "bmp from 'image/x-ms-bmp' to 'image/bmp'" msgstr "" -#: ../build/NEWS:15197 +#: ../build/NEWS:15232 msgid "" "`bpo-32193 `__: Convert asyncio to use " "*async/await* syntax. Old styled ``yield from`` is still supported too." msgstr "" -#: ../build/NEWS:15200 +#: ../build/NEWS:15235 msgid "" "`bpo-32206 `__: Add support to run " "modules with pdb" msgstr "" -#: ../build/NEWS:15202 +#: ../build/NEWS:15237 msgid "" "`bpo-32227 `__: ``functools." "singledispatch`` now supports registering implementations using type " "annotations." msgstr "" -#: ../build/NEWS:15205 +#: ../build/NEWS:15240 msgid "" "`bpo-15873 `__: Added new alternate " "constructors :meth:`datetime.datetime.fromisoformat`, :meth:`datetime.time." @@ -27757,26 +27711,26 @@ msgid "" "operation of each classes's respective ``isoformat`` methods." msgstr "" -#: ../build/NEWS:15211 ../build/NEWS:18769 +#: ../build/NEWS:15246 ../build/NEWS:18804 msgid "" "`bpo-32199 `__: The getnode() ip getter " "now uses 'ip link' instead of 'ip link list'." msgstr "" -#: ../build/NEWS:15214 +#: ../build/NEWS:15249 msgid "" "`bpo-32143 `__: os.statvfs() includes " "the f_fsid field from statvfs(2)" msgstr "" -#: ../build/NEWS:15216 +#: ../build/NEWS:15251 msgid "" "`bpo-26439 `__: Fix ctypes.util." "find_library() for AIX by implementing ctypes._aix.find_library() Patch by: " "Michael Felt" msgstr "" -#: ../build/NEWS:15219 +#: ../build/NEWS:15254 msgid "" "`bpo-31993 `__: The pickler now uses " "less memory when serializing large bytes and str objects into a file. " @@ -27784,33 +27738,33 @@ msgid "" "large bytes and str objects." msgstr "" -#: ../build/NEWS:15223 ../build/NEWS:18772 +#: ../build/NEWS:15258 ../build/NEWS:18807 msgid "" "`bpo-27456 `__: Ensure TCP_NODELAY is " "set on Linux. Tests by Victor Stinner." msgstr "" -#: ../build/NEWS:15225 +#: ../build/NEWS:15260 msgid "" "`bpo-31778 `__: ast.literal_eval() is " "now more strict. Addition and subtraction of arbitrary numbers no longer " "allowed." msgstr "" -#: ../build/NEWS:15228 ../build/NEWS:18783 +#: ../build/NEWS:15263 ../build/NEWS:18818 msgid "" "`bpo-31802 `__: Importing native path " "module (``posixpath``, ``ntpath``) now works even if the ``os`` module still " "is not imported." msgstr "" -#: ../build/NEWS:15231 +#: ../build/NEWS:15266 msgid "" "`bpo-30241 `__: Add contextlib." "AbstractAsyncContextManager. Patch by Jelle Zijlstra." msgstr "" -#: ../build/NEWS:15234 +#: ../build/NEWS:15269 msgid "" "`bpo-31699 `__: Fix deadlocks in :class:" "`concurrent.futures.ProcessPoolExecutor` when task arguments or results " @@ -27818,81 +27772,81 @@ msgid "" "the :class:`ProcessPoolExecutor` API always eventually return." msgstr "" -#: ../build/NEWS:15239 +#: ../build/NEWS:15274 msgid "" "`bpo-15216 `__: ``TextIOWrapper." "reconfigure()`` supports changing *encoding*, *errors*, and *newline*." msgstr "" -#: ../build/NEWS:15245 +#: ../build/NEWS:15280 msgid "" "`bpo-32418 `__: Add get_loop() method to " "Server and AbstractServer classes." msgstr "" -#: ../build/NEWS:15250 ../build/NEWS:18814 +#: ../build/NEWS:15285 ../build/NEWS:18849 msgid "" "`bpo-32252 `__: Fix " "faulthandler_suppress_crash_report() used to prevent core dump files when " "testing crashes. getrlimit() returns zero on success." msgstr "" -#: ../build/NEWS:15253 +#: ../build/NEWS:15288 msgid "" "`bpo-32002 `__: Adjust C locale coercion " "testing for the empty locale and POSIX locale cases to more readily adjust " "to platform dependent behaviour." msgstr "" -#: ../build/NEWS:15259 +#: ../build/NEWS:15294 msgid "" "`bpo-19764 `__: Implement support for " "`subprocess.Popen(close_fds=True)` on Windows. Patch by Segev Finer." msgstr "" -#: ../build/NEWS:15265 ../build/NEWS:18895 +#: ../build/NEWS:15300 ../build/NEWS:18930 msgid "" "`bpo-24960 `__: 2to3 and lib2to3 can now " "read pickled grammar files using pkgutil.get_data() rather than probing the " "filesystem. This lets 2to3 and lib2to3 work when run from a zipfile." msgstr "" -#: ../build/NEWS:15272 +#: ../build/NEWS:15307 msgid "" "`bpo-32030 `__: Py_Initialize() doesn't " "reset the memory allocators to default if the ``PYTHONMALLOC`` environment " "variable is not set." msgstr "" -#: ../build/NEWS:15275 ../build/NEWS:18905 +#: ../build/NEWS:15310 ../build/NEWS:18940 msgid "" "`bpo-29084 `__: Undocumented C API for " "OrderedDict has been excluded from the limited C API. It was added by " "mistake and actually never worked in the limited C API." msgstr "" -#: ../build/NEWS:15279 +#: ../build/NEWS:15314 msgid "" "`bpo-32264 `__: Moved the pygetopt.h " "header into internal/, since it has no public APIs." msgstr "" -#: ../build/NEWS:15282 +#: ../build/NEWS:15317 msgid "" "`bpo-32241 `__: :c:func:" "`Py_SetProgramName` and :c:func:`Py_SetPythonHome` now take the ``const " "wchar *`` arguments instead of ``wchar *``." msgstr "" -#: ../build/NEWS:15287 +#: ../build/NEWS:15322 msgid "Python 3.7.0 alpha 3" msgstr "" -#: ../build/NEWS:15289 ../build/NEWS:18922 +#: ../build/NEWS:15324 ../build/NEWS:18957 msgid "*Release date: 2017-12-05*" msgstr "" -#: ../build/NEWS:15294 ../build/NEWS:18927 +#: ../build/NEWS:15329 ../build/NEWS:18962 msgid "" "`bpo-32176 `__: co_flags.CO_NOFREE is " "now always set correctly by the code object constructor based on freevars " @@ -27901,7 +27855,7 @@ msgid "" "injected into a modified code object and function." msgstr "" -#: ../build/NEWS:15300 +#: ../build/NEWS:15335 msgid "" "`bpo-10544 `__: Yield expressions are " "now deprecated in comprehensions and generator expressions. They are still " @@ -27909,14 +27863,14 @@ msgid "" "directly in the enclosing scope." msgstr "" -#: ../build/NEWS:15304 ../build/NEWS:18650 +#: ../build/NEWS:15339 ../build/NEWS:18685 msgid "" "`bpo-32137 `__: The repr of deeply " "nested dict now raises a RecursionError instead of crashing due to a stack " "overflow." msgstr "" -#: ../build/NEWS:15307 +#: ../build/NEWS:15342 msgid "" "`bpo-32096 `__: Revert memory allocator " "changes in the C API: move structures back from _PyRuntime to Objects/" @@ -27925,13 +27879,13 @@ msgid "" "_PyRuntime_Initialize()." msgstr "" -#: ../build/NEWS:15312 +#: ../build/NEWS:15347 msgid "" "`bpo-32043 `__: Add a new \"developer " "mode\": new \"-X dev\" command line option to enable debug checks at runtime." msgstr "" -#: ../build/NEWS:15315 +#: ../build/NEWS:15350 msgid "" "`bpo-32023 `__: SyntaxError is now " "correctly raised when a generator expression without parenthesis is used " @@ -27939,7 +27893,7 @@ msgid "" "parentheses can be omitted only on calls." msgstr "" -#: ../build/NEWS:15320 +#: ../build/NEWS:15355 msgid "" "`bpo-32012 `__: SyntaxError is now " "correctly raised when a generator expression without parenthesis is passed " @@ -27948,7 +27902,7 @@ msgid "" "comma on either side." msgstr "" -#: ../build/NEWS:15325 +#: ../build/NEWS:15360 msgid "" "`bpo-28180 `__: A new internal " "``_Py_SetLocaleFromEnv(category)`` helper function has been added in order " @@ -27957,7 +27911,7 @@ msgid "" "environment by default)." msgstr "" -#: ../build/NEWS:15330 ../build/NEWS:18933 +#: ../build/NEWS:15365 ../build/NEWS:18968 msgid "" "`bpo-31949 `__: Fixed several issues in " "printing tracebacks (PyTraceBack_Print()). Setting sys.tracebacklimit to 0 " @@ -27968,13 +27922,13 @@ msgid "" "traceback items on Windows. Fixed output errors handling." msgstr "" -#: ../build/NEWS:15338 ../build/NEWS:18941 +#: ../build/NEWS:15373 ../build/NEWS:18976 msgid "" "`bpo-30696 `__: Fix the interactive " "interpreter looping endlessly when no memory." msgstr "" -#: ../build/NEWS:15341 ../build/NEWS:18944 +#: ../build/NEWS:15376 ../build/NEWS:18979 msgid "" "`bpo-20047 `__: Bytearray methods " "partition() and rpartition() now accept only bytes-like objects as " @@ -27982,34 +27936,34 @@ msgid "" "returning a bogus result when an integer is passed as a separator." msgstr "" -#: ../build/NEWS:15346 ../build/NEWS:18952 +#: ../build/NEWS:15381 ../build/NEWS:18987 msgid "" "`bpo-21720 `__: BytesWarning no longer " "emitted when the *fromlist* argument of ``__import__()`` or the ``__all__`` " "attribute of the module contain bytes instances." msgstr "" -#: ../build/NEWS:15350 +#: ../build/NEWS:15385 msgid "" "`bpo-31845 `__: Environment variables " "are once more read correctly at interpreter startup." msgstr "" -#: ../build/NEWS:15353 +#: ../build/NEWS:15388 msgid "" "`bpo-28936 `__: Ensure that lexically " "first syntax error involving a parameter and ``global`` or ``nonlocal`` is " "detected first at a given scope. Patch by Ivan Levkivskyi." msgstr "" -#: ../build/NEWS:15357 ../build/NEWS:18956 +#: ../build/NEWS:15392 ../build/NEWS:18991 msgid "" "`bpo-31825 `__: Fixed OverflowError in " "the 'unicode-escape' codec and in codecs.escape_decode() when decode an " "escaped non-ascii byte." msgstr "" -#: ../build/NEWS:15360 +#: ../build/NEWS:15395 msgid "" "`bpo-31618 `__: The per-frame tracing " "logic added in 3.7a1 has been altered so that ``frame->f_lineno`` is updated " @@ -28020,14 +27974,14 @@ msgid "" "enabled, line events now occur first." msgstr "" -#: ../build/NEWS:15368 ../build/NEWS:18959 +#: ../build/NEWS:15403 ../build/NEWS:18994 msgid "" "`bpo-28603 `__: Print the full context/" "cause chain of exceptions on interpreter exit, even if an exception in the " "chain is unhashable or compares equal to later ones. Patch by Zane Bitter." msgstr "" -#: ../build/NEWS:15372 ../build/NEWS:18963 +#: ../build/NEWS:15407 ../build/NEWS:18998 msgid "" "`bpo-31786 `__: Fix timeout rounding in " "the select module to round correctly negative timeouts between -1.0 and 0.0. " @@ -28035,35 +27989,35 @@ msgid "" "was incorrectly non-blocking. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:15377 +#: ../build/NEWS:15412 msgid "" "`bpo-31781 `__: Prevent crashes when " "calling methods of an uninitialized ``zipimport.zipimporter`` object. Patch " "by Oren Milman." msgstr "" -#: ../build/NEWS:15380 +#: ../build/NEWS:15415 msgid "" "`bpo-30399 `__: Standard repr() of " "BaseException with a single argument no longer contains redundant trailing " "comma." msgstr "" -#: ../build/NEWS:15383 ../build/NEWS:18971 +#: ../build/NEWS:15418 ../build/NEWS:19006 msgid "" "`bpo-31626 `__: Fixed a bug in debug " "memory allocator. There was a write to freed memory after shrinking a " "memory block." msgstr "" -#: ../build/NEWS:15386 ../build/NEWS:19016 +#: ../build/NEWS:15421 ../build/NEWS:19051 msgid "" "`bpo-30817 `__: `PyErr_PrintEx()` clears " "now the ignored exception that may be raised by `_PySys_SetObjectId()`, for " "example when no memory." msgstr "" -#: ../build/NEWS:15392 ../build/NEWS:19022 +#: ../build/NEWS:15427 ../build/NEWS:19057 msgid "" "`bpo-28556 `__: Two minor fixes for " "``typing`` module: allow shallow copying instances of generic classes, " @@ -28071,14 +28025,14 @@ msgid "" "Ivan Levkivskyi." msgstr "" -#: ../build/NEWS:15396 +#: ../build/NEWS:15431 msgid "" "`bpo-32214 `__: PEP 557, Data Classes. " "Provides a decorator which adds boilerplate methods to classes which use " "type annotations so specify fields." msgstr "" -#: ../build/NEWS:15400 ../build/NEWS:19026 +#: ../build/NEWS:15435 ../build/NEWS:19061 msgid "" "`bpo-27240 `__: The header folding " "algorithm for the new email policies has been rewritten, which also fixes " @@ -28087,20 +28041,20 @@ msgid "" "issue32182>`__. In particular, RFC2231 folding is now done correctly." msgstr "" -#: ../build/NEWS:15404 ../build/NEWS:19030 +#: ../build/NEWS:15439 ../build/NEWS:19065 msgid "" "`bpo-32186 `__: io.FileIO.readall() and " "io.FileIO.read() now release the GIL when getting the file size. Fixed hang " "of all threads with inaccessible NFS server. Patch by Nir Soffer." msgstr "" -#: ../build/NEWS:15408 +#: ../build/NEWS:15443 msgid "" "`bpo-321010 `__: Add :attr:`sys.flags." "dev_mode` flag" msgstr "" -#: ../build/NEWS:15410 +#: ../build/NEWS:15445 msgid "" "`bpo-32154 `__: The ``asyncio." "windows_utils.socketpair()`` function has been removed: use directly :func:" @@ -28110,7 +28064,7 @@ msgid "" "newer." msgstr "" -#: ../build/NEWS:15416 +#: ../build/NEWS:15451 msgid "" "`bpo-32089 `__: warnings: In development " "(-X dev) and debug mode (pydebug build), use the \"default\" action for " @@ -28118,7 +28072,7 @@ msgid "" "filters." msgstr "" -#: ../build/NEWS:15420 +#: ../build/NEWS:15455 msgid "" "`bpo-32107 `__: ``uuid.getnode()`` now " "preferentially returns universally administered MAC addresses if available, " @@ -28128,7 +28082,7 @@ msgid "" "returned." msgstr "" -#: ../build/NEWS:15426 +#: ../build/NEWS:15461 msgid "" "`bpo-23033 `__: Wildcard is now " "supported in hostname when it is one and only character in the left most " @@ -28136,14 +28090,14 @@ msgid "" "by Mandeep Singh." msgstr "" -#: ../build/NEWS:15430 ../build/NEWS:19034 +#: ../build/NEWS:15465 ../build/NEWS:19069 msgid "" "`bpo-12239 `__: Make :meth:`msilib." "SummaryInformation.GetProperty` return ``None`` when the value of property " "is ``VT_EMPTY``. Initial patch by Mark Mc Mahon." msgstr "" -#: ../build/NEWS:15434 +#: ../build/NEWS:15469 msgid "" "`bpo-28334 `__: Use :func:`os.path." "expanduser` to find the ``~/.netrc`` file in :class:`netrc.netrc`. If it " @@ -28151,7 +28105,7 @@ msgid "" "Merejkowsky." msgstr "" -#: ../build/NEWS:15438 +#: ../build/NEWS:15473 msgid "" "`bpo-32121 `__: Made ``tracemalloc." "Traceback`` behave more like the traceback module, sorting the frames from " @@ -28161,21 +28115,21 @@ msgid "" "format()``. (Patch by Jesse Bakker.)" msgstr "" -#: ../build/NEWS:15445 ../build/NEWS:19038 +#: ../build/NEWS:15480 ../build/NEWS:19073 msgid "" "`bpo-31325 `__: Fix wrong usage of :func:" "`collections.namedtuple` in the :meth:`RobotFileParser.parse() ` method. Initial patch by Robin Wellner." msgstr "" -#: ../build/NEWS:15449 ../build/NEWS:19042 +#: ../build/NEWS:15484 ../build/NEWS:19077 msgid "" "`bpo-12382 `__: :func:`msilib." "OpenDatabase` now raises a better exception message when it couldn't open or " "create an MSI file. Initial patch by William Tisäter." msgstr "" -#: ../build/NEWS:15453 +#: ../build/NEWS:15488 msgid "" "`bpo-19610 `__: ``setup()`` now warns " "about invalid types for some fields. The ``distutils.dist.Distribution`` " @@ -28183,21 +28137,21 @@ msgid "" "are not specified as a list or a string." msgstr "" -#: ../build/NEWS:15458 +#: ../build/NEWS:15493 msgid "" "`bpo-32071 `__: Added the ``-k`` command-" "line option to ``python -m unittest`` to run only tests that match the given " "pattern(s)." msgstr "" -#: ../build/NEWS:15461 +#: ../build/NEWS:15496 msgid "" "`bpo-10049 `__: Added *nullcontext* no-" "op context manager to contextlib. This provides a simpler and faster " "alternative to ExitStack() when handling optional context managers." msgstr "" -#: ../build/NEWS:15465 +#: ../build/NEWS:15500 msgid "" "`bpo-28684 `__: The new test.support." "skip_unless_bind_unix_socket() decorator is used here to skip asyncio tests " @@ -28206,7 +28160,7 @@ msgid "" "versions that run now SELinux in enforcing mode)." msgstr "" -#: ../build/NEWS:15471 ../build/NEWS:19046 +#: ../build/NEWS:15506 ../build/NEWS:19081 msgid "" "`bpo-32110 `__: ``codecs.StreamReader." "read(n)`` now returns not more than *n* characters/bytes for non-negative " @@ -28214,7 +28168,7 @@ msgid "" "objects." msgstr "" -#: ../build/NEWS:15475 +#: ../build/NEWS:15510 msgid "" "`bpo-27535 `__: The warnings module " "doesn't leak memory anymore in the hidden warnings registry for the \"ignore" @@ -28222,7 +28176,7 @@ msgid "" "warning key to the registry anymore for the \"ignore\" action." msgstr "" -#: ../build/NEWS:15480 +#: ../build/NEWS:15515 msgid "" "`bpo-32088 `__: warnings: When Python " "is build is debug mode (``Py_DEBUG``), :exc:`DeprecationWarning`, :exc:" @@ -28230,20 +28184,20 @@ msgid "" "displayed by default." msgstr "" -#: ../build/NEWS:15484 +#: ../build/NEWS:15519 msgid "" "`bpo-1647489 `__: Fixed searching " "regular expression patterns that could match an empty string. Non-empty " "string can now be correctly found after matching an empty string." msgstr "" -#: ../build/NEWS:15488 +#: ../build/NEWS:15523 msgid "" "`bpo-25054 `__: Added support of " "splitting on a pattern that could match an empty string." msgstr "" -#: ../build/NEWS:15491 ../build/NEWS:19050 ../build/NEWS:23767 +#: ../build/NEWS:15526 ../build/NEWS:19085 ../build/NEWS:23802 msgid "" "`bpo-32072 `__: Fixed issues with binary " "plists: Fixed saving bytearrays. Identical objects will be saved only once. " @@ -28251,38 +28205,38 @@ msgid "" "and loading recursive data structures." msgstr "" -#: ../build/NEWS:15496 +#: ../build/NEWS:15531 msgid "" "`bpo-32069 `__: Drop legacy SSL " "transport from asyncio, ssl.MemoryBIO is always used anyway." msgstr "" -#: ../build/NEWS:15499 +#: ../build/NEWS:15534 msgid "" "`bpo-32066 `__: asyncio: Support pathlib." "Path in create_unix_connection; sock arg should be optional" msgstr "" -#: ../build/NEWS:15502 +#: ../build/NEWS:15537 msgid "" "`bpo-32046 `__: Updates 2to3 to convert " "from operator.isCallable(obj) to callable(obj). Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:15505 +#: ../build/NEWS:15540 msgid "" "`bpo-32018 `__: inspect.signature should " "follow :pep:`8`, if the parameter has an annotation and a default value. " "Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:15508 +#: ../build/NEWS:15543 msgid "" "`bpo-32025 `__: Add time.thread_time() " "and time.thread_time_ns()" msgstr "" -#: ../build/NEWS:15510 +#: ../build/NEWS:15545 msgid "" "`bpo-32037 `__: Integers that fit in a " "signed 32-bit integer will be now pickled with protocol 0 using the INT " @@ -28291,27 +28245,27 @@ msgid "" "2." msgstr "" -#: ../build/NEWS:15515 ../build/NEWS:19055 +#: ../build/NEWS:15550 ../build/NEWS:19090 msgid "" "`bpo-32034 `__: Make asyncio." "IncompleteReadError and LimitOverrunError pickleable." msgstr "" -#: ../build/NEWS:15518 ../build/NEWS:19058 +#: ../build/NEWS:15553 ../build/NEWS:19093 msgid "" "`bpo-32015 `__: Fixed the looping of " "asyncio in the case of reconnection the socket during waiting async read/" "write from/to the socket." msgstr "" -#: ../build/NEWS:15521 ../build/NEWS:19061 +#: ../build/NEWS:15556 ../build/NEWS:19096 msgid "" "`bpo-32011 `__: Restored support of " "loading marshal files with the TYPE_INT64 code. These files can be produced " "in Python 2.7." msgstr "" -#: ../build/NEWS:15524 +#: ../build/NEWS:15559 msgid "" "`bpo-28369 `__: Enhance add_reader/" "writer check that socket is not used by some transport. Before, only cases " @@ -28319,14 +28273,14 @@ msgid "" "check is implemented correctly for all file-like objects." msgstr "" -#: ../build/NEWS:15529 +#: ../build/NEWS:15564 msgid "" "`bpo-31976 `__: Fix race condition when " "flushing a file is slow, which can cause a segfault if closing the file from " "another thread." msgstr "" -#: ../build/NEWS:15532 +#: ../build/NEWS:15567 msgid "" "`bpo-31985 `__: Formally deprecated aifc." "openfp, sunau.openfp, and wave.openfp. Since change " @@ -28336,40 +28290,40 @@ msgid "" "undocumented." msgstr "" -#: ../build/NEWS:15538 +#: ../build/NEWS:15573 msgid "" "`bpo-21862 `__: cProfile command line " "now accepts `-m module_name` as an alternative to script path. Patch by " "Sanyam Khurana." msgstr "" -#: ../build/NEWS:15541 ../build/NEWS:19064 +#: ../build/NEWS:15576 ../build/NEWS:19099 msgid "" "`bpo-31970 `__: Reduce performance " "overhead of asyncio debug mode." msgstr "" -#: ../build/NEWS:15543 +#: ../build/NEWS:15578 msgid "" "`bpo-31843 `__: *database* argument of " "sqlite3.connect() now accepts a :term:`path-like object`, instead of just a " "string." msgstr "" -#: ../build/NEWS:15546 +#: ../build/NEWS:15581 msgid "" "`bpo-31945 `__: Add Configurable " "*blocksize* to ``HTTPConnection`` and ``HTTPSConnection`` for improved " "upload throughput. Patch by Nir Soffer." msgstr "" -#: ../build/NEWS:15549 +#: ../build/NEWS:15584 msgid "" "`bpo-31943 `__: Add a ``cancelled()`` " "method to :class:`asyncio.Handle`. Patch by Marat Sharafutdinov." msgstr "" -#: ../build/NEWS:15552 ../build/NEWS:19066 +#: ../build/NEWS:15587 ../build/NEWS:19101 msgid "" "`bpo-9678 `__: Fixed determining the MAC " "address in the uuid module: Using ifconfig on NetBSD and OpenBSD. Using arp " @@ -28377,32 +28331,32 @@ msgid "" "Shimizukawa." msgstr "" -#: ../build/NEWS:15556 ../build/NEWS:19070 +#: ../build/NEWS:15591 ../build/NEWS:19105 msgid "" "`bpo-30057 `__: Fix potential missed " "signal in signal.signal()." msgstr "" -#: ../build/NEWS:15558 ../build/NEWS:19072 +#: ../build/NEWS:15593 ../build/NEWS:19107 msgid "" "`bpo-31933 `__: Fix Blake2 params " "leaf_size and node_offset on big endian platforms. Patch by Jack O'Connor." msgstr "" -#: ../build/NEWS:15561 +#: ../build/NEWS:15596 msgid "" "`bpo-21423 `__: Add an initializer " "argument to {Process,Thread}PoolExecutor" msgstr "" -#: ../build/NEWS:15563 ../build/NEWS:19075 +#: ../build/NEWS:15598 ../build/NEWS:19110 msgid "" "`bpo-31927 `__: Fixed compilation of the " "socket module on NetBSD 8. Fixed assertion failure or reading arbitrary " "data when parse a AF_BLUETOOTH address on NetBSD and DragonFly BSD." msgstr "" -#: ../build/NEWS:15567 ../build/NEWS:19079 +#: ../build/NEWS:15602 ../build/NEWS:19114 msgid "" "`bpo-27666 `__: Fixed stack corruption " "in curses.box() and curses.ungetmouse() when the size of types chtype or " @@ -28410,65 +28364,65 @@ msgid "" "as arguments. Based on patch by Steve Fink." msgstr "" -#: ../build/NEWS:15572 +#: ../build/NEWS:15607 msgid "" "`bpo-31917 `__: Add 3 new clock " "identifiers: :data:`time.CLOCK_BOOTTIME`, :data:`time.CLOCK_PROF` and :data:" "`time.CLOCK_UPTIME`." msgstr "" -#: ../build/NEWS:15575 ../build/NEWS:19084 +#: ../build/NEWS:15610 ../build/NEWS:19119 msgid "" "`bpo-31897 `__: plistlib now catches " "more errors when read binary plists and raises InvalidFileException instead " "of unexpected exceptions." msgstr "" -#: ../build/NEWS:15578 ../build/NEWS:19087 +#: ../build/NEWS:15613 ../build/NEWS:19122 msgid "" "`bpo-25720 `__: Fix the method for " "checking pad state of curses WINDOW. Patch by Masayuki Yamamoto." msgstr "" -#: ../build/NEWS:15581 ../build/NEWS:19090 +#: ../build/NEWS:15616 ../build/NEWS:19125 msgid "" "`bpo-31893 `__: Fixed the layout of the " "kqueue_event structure on OpenBSD and NetBSD. Fixed the comparison of the " "kqueue_event objects." msgstr "" -#: ../build/NEWS:15584 ../build/NEWS:19093 +#: ../build/NEWS:15619 ../build/NEWS:19128 msgid "" "`bpo-31891 `__: Fixed building the " "curses module on NetBSD." msgstr "" -#: ../build/NEWS:15586 +#: ../build/NEWS:15621 msgid "" "`bpo-31884 `__: added required constants " "to subprocess module for setting priority on windows" msgstr "" -#: ../build/NEWS:15589 +#: ../build/NEWS:15624 msgid "" "`bpo-28281 `__: Remove year (1-9999) " "limits on the Calendar.weekday() function. Patch by Mark Gollahon." msgstr "" -#: ../build/NEWS:15592 +#: ../build/NEWS:15627 msgid "" "`bpo-31702 `__: crypt.mksalt() now " "allows to specify the number of rounds for SHA-256 and SHA-512 hashing." msgstr "" -#: ../build/NEWS:15595 +#: ../build/NEWS:15630 msgid "" "`bpo-30639 `__: :func:`inspect.getfile` " "no longer computes the repr of unknown objects to display in an error " "message, to protect against badly behaved custom reprs." msgstr "" -#: ../build/NEWS:15599 +#: ../build/NEWS:15634 msgid "" "`bpo-30768 `__: Fix the pthread" "+semaphore implementation of PyThread_acquire_lock_timed() when called with " @@ -28476,20 +28430,20 @@ msgid "" "interrupted by a signal (EINTR). See also the :pep:`475`." msgstr "" -#: ../build/NEWS:15604 +#: ../build/NEWS:15639 msgid "" "`bpo-31854 `__: Add ``mmap." "ACCESS_DEFAULT`` constant." msgstr "" -#: ../build/NEWS:15606 +#: ../build/NEWS:15641 msgid "" "`bpo-31834 `__: Use optimized code for " "BLAKE2 only with SSSE3+. The pure SSE2 implementation is slower than the " "pure C reference implementation." msgstr "" -#: ../build/NEWS:15609 +#: ../build/NEWS:15644 msgid "" "`bpo-28292 `__: Calendar." "itermonthdates() will now consistently raise an exception when a date falls " @@ -28499,47 +28453,47 @@ msgid "" "restricted by the range supported by datetime.date." msgstr "" -#: ../build/NEWS:15616 +#: ../build/NEWS:15651 msgid "" "`bpo-28564 `__: The shutil.rmtree() " "function has been sped up to 20--40%. This was done using the os.scandir() " "function." msgstr "" -#: ../build/NEWS:15619 ../build/NEWS:19095 +#: ../build/NEWS:15654 ../build/NEWS:19130 msgid "" "`bpo-28416 `__: Instances of pickle." "Pickler subclass with the persistent_id() method and pickle.Unpickler " "subclass with the persistent_load() method no longer create reference cycles." msgstr "" -#: ../build/NEWS:15623 +#: ../build/NEWS:15658 msgid "" "`bpo-31653 `__: Don't release the GIL if " "we can acquire a multiprocessing semaphore immediately." msgstr "" -#: ../build/NEWS:15626 ../build/NEWS:19099 +#: ../build/NEWS:15661 ../build/NEWS:19134 msgid "" "`bpo-28326 `__: Fix multiprocessing." "Process when stdout and/or stderr is closed or None." msgstr "" -#: ../build/NEWS:15629 +#: ../build/NEWS:15664 msgid "" "`bpo-20825 `__: Add `subnet_of` and " "`superset_of` containment tests to :class:`ipaddress.IPv6Network` and :class:" "`ipaddress.IPv4Network`. Patch by Michel Albert and Cheryl Sabella." msgstr "" -#: ../build/NEWS:15633 +#: ../build/NEWS:15668 msgid "" "`bpo-31827 `__: Remove the os." "stat_float_times() function. It was introduced in Python 2.3 for backward " "compatibility with Python 2.2, and was deprecated since Python 3.1." msgstr "" -#: ../build/NEWS:15637 +#: ../build/NEWS:15672 msgid "" "`bpo-31756 `__: Add a ``subprocess." "Popen(text=False)`` keyword argument to `subprocess` functions to be more " @@ -28547,25 +28501,25 @@ msgid "" "Patch by Andrew Clegg." msgstr "" -#: ../build/NEWS:15641 +#: ../build/NEWS:15676 msgid "" "`bpo-31819 `__: Add AbstractEventLoop." "sock_recv_into()." msgstr "" -#: ../build/NEWS:15643 ../build/NEWS:18421 ../build/NEWS:19102 +#: ../build/NEWS:15678 ../build/NEWS:18456 ../build/NEWS:19137 msgid "" "`bpo-31457 `__: If nested log adapters " "are used, the inner ``process()`` methods are no longer omitted." msgstr "" -#: ../build/NEWS:15646 ../build/NEWS:19105 +#: ../build/NEWS:15681 ../build/NEWS:19140 msgid "" "`bpo-31457 `__: The ``manager`` property " "on LoggerAdapter objects is now properly settable." msgstr "" -#: ../build/NEWS:15649 ../build/NEWS:19108 +#: ../build/NEWS:15684 ../build/NEWS:19143 msgid "" "`bpo-31806 `__: Fix timeout rounding in " "time.sleep(), threading.Lock.acquire() and socket.socket.settimeout() to " @@ -28574,20 +28528,20 @@ msgid "" "non-blocking. Patch by Pablo Galindo." msgstr "" -#: ../build/NEWS:15655 +#: ../build/NEWS:15690 msgid "" "`bpo-31803 `__: time.clock() and time." "get_clock_info('clock') now emit a DeprecationWarning warning." msgstr "" -#: ../build/NEWS:15658 +#: ../build/NEWS:15693 msgid "" "`bpo-31800 `__: Extended support for " "parsing UTC offsets. strptime '%z' can now parse the output generated by " "datetime.isoformat, including seconds and microseconds." msgstr "" -#: ../build/NEWS:15662 ../build/NEWS:19114 +#: ../build/NEWS:15697 ../build/NEWS:19149 msgid "" "`bpo-28603 `__: traceback: Fix a " "TypeError that occurred during printing of exception tracebacks when either " @@ -28595,14 +28549,14 @@ msgid "" "unhashable. Patch by Zane Bitter." msgstr "" -#: ../build/NEWS:15666 +#: ../build/NEWS:15701 msgid "" "`bpo-30541 `__: Add new function to seal " "a mock and prevent the automatically creation of child mocks. Patch by Mario " "Corchero." msgstr "" -#: ../build/NEWS:15669 +#: ../build/NEWS:15704 msgid "" "`bpo-31784 `__: Implement the :pep:" "`564`, add new 6 new functions with nanosecond resolution to the :mod:`time` " @@ -28611,80 +28565,80 @@ msgid "" "process_time_ns`, :func:`~time.time_ns`." msgstr "" -#: ../build/NEWS:15675 +#: ../build/NEWS:15710 msgid "" "`bpo-30143 `__: 2to3 now generates a " "code that uses abstract collection classes from collections.abc rather than " "collections." msgstr "" -#: ../build/NEWS:15678 ../build/NEWS:19120 +#: ../build/NEWS:15713 ../build/NEWS:19155 msgid "" "`bpo-31770 `__: Prevent a crash when " "calling the ``__init__()`` method of a ``sqlite3.Cursor`` object more than " "once. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:15681 ../build/NEWS:19127 +#: ../build/NEWS:15716 ../build/NEWS:19162 msgid "" "`bpo-31764 `__: Prevent a crash in " "``sqlite3.Cursor.close()`` in case the ``Cursor`` object is uninitialized. " "Patch by Oren Milman." msgstr "" -#: ../build/NEWS:15684 ../build/NEWS:19130 +#: ../build/NEWS:15719 ../build/NEWS:19165 msgid "" "`bpo-31752 `__: Fix possible crash in " "timedelta constructor called with custom integers." msgstr "" -#: ../build/NEWS:15687 ../build/NEWS:19139 +#: ../build/NEWS:15722 ../build/NEWS:19174 msgid "" "`bpo-31620 `__: an empty asyncio.Queue " "now doesn't leak memory when queue.get pollers timeout" msgstr "" -#: ../build/NEWS:15690 +#: ../build/NEWS:15725 msgid "" "`bpo-31690 `__: Allow the flags re." "ASCII, re.LOCALE, and re.UNICODE to be used as group flags for regular " "expressions." msgstr "" -#: ../build/NEWS:15693 +#: ../build/NEWS:15728 msgid "" "`bpo-30349 `__: FutureWarning is now " "emitted if a regular expression contains character set constructs that will " "change semantically in the future (nested sets and set operations)." msgstr "" -#: ../build/NEWS:15697 +#: ../build/NEWS:15732 msgid "" "`bpo-31664 `__: Added support for the " "Blowfish hashing in the crypt module." msgstr "" -#: ../build/NEWS:15699 ../build/NEWS:19142 +#: ../build/NEWS:15734 ../build/NEWS:19177 msgid "" "`bpo-31632 `__: Fix method " "set_protocol() of class _SSLProtocolTransport in asyncio module. This method " "was previously modifying a wrong reference to the protocol." msgstr "" -#: ../build/NEWS:15703 ../build/NEWS:19153 +#: ../build/NEWS:15738 ../build/NEWS:19188 msgid "" "`bpo-15037 `__: Added a workaround for " "getkey() in curses for ncurses 5.7 and earlier." msgstr "" -#: ../build/NEWS:15706 +#: ../build/NEWS:15741 msgid "" "`bpo-31307 `__: Allow use of bytes " "objects for arguments to :meth:`configparser.ConfigParser.read`. Patch by " "Vincent Michel." msgstr "" -#: ../build/NEWS:15709 ../build/NEWS:19173 +#: ../build/NEWS:15744 ../build/NEWS:19208 msgid "" "`bpo-31334 `__: Fix ``poll." "poll([timeout])`` in the ``select`` module for arbitrary negative timeouts " @@ -28692,66 +28646,66 @@ msgid "" "Riccardo Coccioli." msgstr "" -#: ../build/NEWS:15713 ../build/NEWS:19177 +#: ../build/NEWS:15748 ../build/NEWS:19212 msgid "" "`bpo-31310 `__: multiprocessing's " "semaphore tracker should be launched again if crashed." msgstr "" -#: ../build/NEWS:15716 ../build/NEWS:19180 +#: ../build/NEWS:15751 ../build/NEWS:19215 msgid "" "`bpo-31308 `__: Make multiprocessing's " "forkserver process immune to Ctrl-C and other user interruptions. If it " "crashes, restart it when necessary." msgstr "" -#: ../build/NEWS:15719 +#: ../build/NEWS:15754 msgid "" "`bpo-31245 `__: Added support for " "AF_UNIX socket in asyncio `create_datagram_endpoint`." msgstr "" -#: ../build/NEWS:15722 +#: ../build/NEWS:15757 msgid "" "`bpo-30553 `__: Add HTTP/2 status code " "421 (Misdirected Request) to :class:`http.HTTPStatus`. Patch by Vitor " "Pereira." msgstr "" -#: ../build/NEWS:15728 ../build/NEWS:19186 +#: ../build/NEWS:15763 ../build/NEWS:19221 msgid "" "`bpo-32105 `__: Added asyncio." "BaseEventLoop.connect_accepted_socket versionadded marker." msgstr "" -#: ../build/NEWS:15734 ../build/NEWS:19199 +#: ../build/NEWS:15769 ../build/NEWS:19234 msgid "" "`bpo-31380 `__: Skip test_httpservers " "test_undecodable_file on macOS: fails on APFS." msgstr "" -#: ../build/NEWS:15737 ../build/NEWS:19202 +#: ../build/NEWS:15772 ../build/NEWS:19237 msgid "" "`bpo-31705 `__: Skip test_socket." "test_sha256() on Linux kernel older than 4.5. The test fails with ENOKEY on " "kernel 3.10 (on ppc64le). A fix was merged into the kernel 4.5." msgstr "" -#: ../build/NEWS:15741 +#: ../build/NEWS:15776 msgid "" "`bpo-32138 `__: Skip on Android " "test_faulthandler tests that raise SIGSEGV and remove the test.support." "requires_android_level decorator." msgstr "" -#: ../build/NEWS:15744 +#: ../build/NEWS:15779 msgid "" "`bpo-32136 `__: The runtime embedding " "tests have been split out from ``Lib/test/test_capi.py`` into a new ``Lib/" "test/test_embed.py`` file." msgstr "" -#: ../build/NEWS:15747 +#: ../build/NEWS:15782 msgid "" "`bpo-28668 `__: test.support." "requires_multiprocessing_queue is removed. Skip tests with test.support." @@ -28759,126 +28713,126 @@ msgid "" "implementation is broken or missing." msgstr "" -#: ../build/NEWS:15751 +#: ../build/NEWS:15786 msgid "" "`bpo-32126 `__: Skip " "test_get_event_loop_new_process in test.test_asyncio.test_events when " "sem_open() is not functional." msgstr "" -#: ../build/NEWS:15754 ../build/NEWS:19206 +#: ../build/NEWS:15789 ../build/NEWS:19241 msgid "" "`bpo-31174 `__: Fix test_tools." "test_unparse: DirectoryTestCase now stores the names sample to always test " "the same files. It prevents false alarms when hunting reference leaks." msgstr "" -#: ../build/NEWS:15761 +#: ../build/NEWS:15796 msgid "" "`bpo-28538 `__: Revert the previous " "changes, the if_nameindex structure is defined by Unified Headers." msgstr "" -#: ../build/NEWS:15764 +#: ../build/NEWS:15799 msgid "" "`bpo-28762 `__: Revert the last commit, " "the F_LOCK macro is defined by Android Unified Headers." msgstr "" -#: ../build/NEWS:15767 +#: ../build/NEWS:15802 msgid "" "`bpo-29040 `__: Support building Android " "with Unified Headers. The first NDK release to support Unified Headers is " "android-ndk-r14." msgstr "" -#: ../build/NEWS:15770 ../build/NEWS:19216 +#: ../build/NEWS:15805 ../build/NEWS:19251 msgid "" "`bpo-32059 `__: ``detect_modules()`` in " "``setup.py`` now also searches the sysroot paths when cross-compiling." msgstr "" -#: ../build/NEWS:15773 ../build/NEWS:19219 +#: ../build/NEWS:15808 ../build/NEWS:19254 msgid "" "`bpo-31957 `__: Fixes Windows SDK " "version detection when building for Windows." msgstr "" -#: ../build/NEWS:15775 ../build/NEWS:19221 +#: ../build/NEWS:15810 ../build/NEWS:19256 msgid "" "`bpo-31609 `__: Fixes quotes in PCbuild/" "clean.bat" msgstr "" -#: ../build/NEWS:15777 ../build/NEWS:19223 +#: ../build/NEWS:15812 ../build/NEWS:19258 msgid "" "`bpo-31934 `__: Abort the build when " "building out of a not clean source tree." msgstr "" -#: ../build/NEWS:15779 ../build/NEWS:19225 +#: ../build/NEWS:15814 ../build/NEWS:19260 msgid "" "`bpo-31926 `__: Fixed Argument Clinic " "sometimes causing compilation errors when there was more than one function " "and/or method in a .c file with the same name." msgstr "" -#: ../build/NEWS:15783 ../build/NEWS:19229 +#: ../build/NEWS:15818 ../build/NEWS:19264 msgid "" "`bpo-28791 `__: Update Windows builds to " "use SQLite 3.21.0." msgstr "" -#: ../build/NEWS:15785 ../build/NEWS:19231 +#: ../build/NEWS:15820 ../build/NEWS:19266 msgid "" "`bpo-28791 `__: Update OS X installer to " "use SQLite 3.21.0." msgstr "" -#: ../build/NEWS:15787 +#: ../build/NEWS:15822 msgid "" "`bpo-28643 `__: Record profile-opt build " "progress with stamp files." msgstr "" -#: ../build/NEWS:15789 +#: ../build/NEWS:15824 msgid "" "`bpo-31866 `__: Finish removing support " "for AtheOS." msgstr "" -#: ../build/NEWS:15794 ../build/NEWS:19241 +#: ../build/NEWS:15829 ../build/NEWS:19276 msgid "" "`bpo-1102 `__: Return ``None`` when " "``View.Fetch()`` returns ``ERROR_NO_MORE_ITEMS`` instead of raising " "``MSIError``. Initial patch by Anthony Tuininga." msgstr "" -#: ../build/NEWS:15798 ../build/NEWS:19245 +#: ../build/NEWS:15833 ../build/NEWS:19280 msgid "" "`bpo-31944 `__: Fixes Modify button in " "Apps and Features dialog." msgstr "" -#: ../build/NEWS:15800 +#: ../build/NEWS:15835 msgid "" "`bpo-20486 `__: Implement the ``Database." "Close()`` method to help closing MSI database objects." msgstr "" -#: ../build/NEWS:15803 +#: ../build/NEWS:15838 msgid "" "`bpo-31857 `__: Make the behavior of " "USE_STACKCHECK deterministic in a multi-threaded environment." msgstr "" -#: ../build/NEWS:15809 ../build/NEWS:19250 +#: ../build/NEWS:15844 ../build/NEWS:19285 msgid "" "`bpo-31392 `__: Update macOS installer " "to use OpenSSL 1.0.2m" msgstr "" -#: ../build/NEWS:15814 ../build/NEWS:19255 +#: ../build/NEWS:15849 ../build/NEWS:19290 msgid "" "`bpo-32207 `__: Improve tk event " "exception tracebacks in IDLE. When tk event handling is driven by IDLE's run " @@ -28888,20 +28842,20 @@ msgid "" "Serhiy Storchaka." msgstr "" -#: ../build/NEWS:15820 ../build/NEWS:19261 +#: ../build/NEWS:15855 ../build/NEWS:19296 msgid "" "`bpo-32164 `__: Delete unused file " "idlelib/tabbedpages.py. Use of TabbedPageSet in configdialog was replaced by " "ttk.Notebook." msgstr "" -#: ../build/NEWS:15823 ../build/NEWS:19264 +#: ../build/NEWS:15858 ../build/NEWS:19299 msgid "" "`bpo-32100 `__: IDLE: Fix old and new " "bugs in pathbrowser; improve tests. Patch mostly by Cheryl Sabella." msgstr "" -#: ../build/NEWS:15826 ../build/NEWS:19267 +#: ../build/NEWS:15861 ../build/NEWS:19302 msgid "" "`bpo-31858 `__: IDLE -- Restrict shell " "prompt manipulation to the shell. Editor and output windows only see an " @@ -28910,14 +28864,14 @@ msgid "" "not set or changed." msgstr "" -#: ../build/NEWS:15831 ../build/NEWS:19272 +#: ../build/NEWS:15866 ../build/NEWS:19307 msgid "" "`bpo-31860 `__: The font sample in the " "IDLE configuration dialog is now editable. Changes persist while IDLE " "remains open" msgstr "" -#: ../build/NEWS:15834 ../build/NEWS:19275 +#: ../build/NEWS:15869 ../build/NEWS:19310 msgid "" "`bpo-31836 `__: Test_code_module now " "passes if run after test_idle, which sets ps1. The code module uses sys.ps1 " @@ -28925,14 +28879,14 @@ msgid "" "both behaviors. Ditto for ps2." msgstr "" -#: ../build/NEWS:15838 ../build/NEWS:19279 +#: ../build/NEWS:15873 ../build/NEWS:19314 msgid "" "`bpo-28603 `__: Fix a TypeError that " "caused a shell restart when printing a traceback that includes an exception " "that is unhashable. Patch by Zane Bitter." msgstr "" -#: ../build/NEWS:15842 +#: ../build/NEWS:15877 msgid "" "`bpo-13802 `__: Use non-Latin characters " "in the IDLE's Font settings sample. Even if one selects a font that defines " @@ -28943,7 +28897,7 @@ msgid "" "arranged. The Font/Tabs help explains a bit about the additions." msgstr "" -#: ../build/NEWS:15853 +#: ../build/NEWS:15888 msgid "" "`bpo-32159 `__: Remove CVS and " "Subversion tools: remove svneol.py and treesync.py scripts. CPython migrated " @@ -28951,14 +28905,14 @@ msgid "" "are no longer used to develop CPython." msgstr "" -#: ../build/NEWS:15858 ../build/NEWS:19318 +#: ../build/NEWS:15893 ../build/NEWS:19353 msgid "" "`bpo-30722 `__: Make redemo work with " "Python 3.6 and newer versions. Also, remove the ``LOCALE`` option since it " "doesn't work with string patterns in Python 3. Patch by Christoph Sarnowski." msgstr "" -#: ../build/NEWS:15865 ../build/NEWS:19325 +#: ../build/NEWS:15900 ../build/NEWS:19360 msgid "" "`bpo-20891 `__: Fix PyGILState_Ensure(). " "When PyGILState_Ensure() is called in a non-Python thread before " @@ -28966,14 +28920,14 @@ msgid "" "PyThreadState_New() to fix a crash." msgstr "" -#: ../build/NEWS:15869 +#: ../build/NEWS:15904 msgid "" "`bpo-32125 `__: The " "``Py_UseClassExceptionsFlag`` flag has been removed. It was deprecated and " "wasn't used anymore since Python 2.0." msgstr "" -#: ../build/NEWS:15872 +#: ../build/NEWS:15907 msgid "" "`bpo-25612 `__: Move the current " "exception state from the frame object to the co-routine. This simplifies the " @@ -28981,14 +28935,14 @@ msgid "" "exception state when entering or exiting a generator." msgstr "" -#: ../build/NEWS:15877 +#: ../build/NEWS:15912 msgid "" "`bpo-23699 `__: Add " "Py_RETURN_RICHCOMPARE macro to reduce boilerplate code in rich comparison " "functions." msgstr "" -#: ../build/NEWS:15880 ../build/NEWS:19332 +#: ../build/NEWS:15915 ../build/NEWS:19367 msgid "" "`bpo-30697 `__: The " "`PyExc_RecursionErrorInst` singleton is removed and " @@ -28998,15 +28952,15 @@ msgid "" "org/issue22898>`__." msgstr "" -#: ../build/NEWS:15887 +#: ../build/NEWS:15922 msgid "Python 3.7.0 alpha 2" msgstr "" -#: ../build/NEWS:15889 +#: ../build/NEWS:15924 msgid "*Release date: 2017-10-16*" msgstr "" -#: ../build/NEWS:15894 +#: ../build/NEWS:15929 msgid "" "`bpo-31558 `__: ``gc.freeze()`` is a new " "API that allows for moving all objects currently tracked by the garbage " @@ -29016,85 +28970,85 @@ msgid "" "stability at fork()." msgstr "" -#: ../build/NEWS:15900 ../build/NEWS:18968 +#: ../build/NEWS:15935 ../build/NEWS:19003 msgid "" "`bpo-31642 `__: Restored blocking \"from " "package import module\" by setting sys.modules[\"package.module\"] to None." msgstr "" -#: ../build/NEWS:15903 +#: ../build/NEWS:15938 msgid "" "`bpo-31708 `__: Allow use of " "asynchronous generator expressions in synchronous functions." msgstr "" -#: ../build/NEWS:15906 +#: ../build/NEWS:15941 msgid "" "`bpo-31709 `__: Drop support of " "asynchronous __aiter__." msgstr "" -#: ../build/NEWS:15908 +#: ../build/NEWS:15943 msgid "" "`bpo-30404 `__: The -u option now makes " "the stdout and stderr streams unbuffered rather than line-buffered." msgstr "" -#: ../build/NEWS:15911 ../build/NEWS:18974 +#: ../build/NEWS:15946 ../build/NEWS:19009 msgid "" "`bpo-31619 `__: Fixed a ValueError when " "convert a string with large number of underscores to integer with binary " "base." msgstr "" -#: ../build/NEWS:15914 +#: ../build/NEWS:15949 msgid "" "`bpo-31602 `__: Fix an assertion failure " "in `zipimporter.get_source()` in case of a bad `zlib.decompress()`. Patch by " "Oren Milman." msgstr "" -#: ../build/NEWS:15917 ../build/NEWS:18977 +#: ../build/NEWS:15952 ../build/NEWS:19012 msgid "" "`bpo-31592 `__: Fixed an assertion " "failure in Python parser in case of a bad `unicodedata.normalize()`. Patch " "by Oren Milman." msgstr "" -#: ../build/NEWS:15920 ../build/NEWS:18980 +#: ../build/NEWS:15955 ../build/NEWS:19015 msgid "" "`bpo-31588 `__: Raise a `TypeError` with " "a helpful error message when class creation fails due to a metaclass with a " "bad ``__prepare__()`` method. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:15924 +#: ../build/NEWS:15959 msgid "" "`bpo-31574 `__: Importlib was " "instrumented with two dtrace probes to profile import timing." msgstr "" -#: ../build/NEWS:15927 ../build/NEWS:18984 +#: ../build/NEWS:15962 ../build/NEWS:19019 msgid "" "`bpo-31566 `__: Fix an assertion failure " "in `_warnings.warn()` in case of a bad ``__name__`` global. Patch by Oren " "Milman." msgstr "" -#: ../build/NEWS:15930 +#: ../build/NEWS:15965 msgid "" "`bpo-31506 `__: Improved the error " "message logic for object.__new__ and object.__init__." msgstr "" -#: ../build/NEWS:15933 ../build/NEWS:18987 +#: ../build/NEWS:15968 ../build/NEWS:19022 msgid "" "`bpo-31505 `__: Fix an assertion failure " "in `json`, in case `_json.make_encoder()` received a bad `encoder()` " "argument. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:15937 ../build/NEWS:18991 +#: ../build/NEWS:15972 ../build/NEWS:19026 msgid "" "`bpo-31492 `__: Fix assertion failures " "in case of failing to import from a module with a bad ``__name__`` " @@ -29102,21 +29056,21 @@ msgid "" "Patch by Oren Milman." msgstr "" -#: ../build/NEWS:15941 ../build/NEWS:18999 +#: ../build/NEWS:15976 ../build/NEWS:19034 msgid "" "`bpo-31478 `__: Fix an assertion failure " "in `_random.Random.seed()` in case the argument has a bad ``__abs__()`` " "method. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:15944 +#: ../build/NEWS:15979 msgid "" "`bpo-31336 `__: Speed up class creation " "by 10-20% by reducing the overhead in the necessary special method lookups. " "Patch by Stefan Behnel." msgstr "" -#: ../build/NEWS:15947 +#: ../build/NEWS:15982 msgid "" "`bpo-31415 `__: Add ``-X importtime`` " "option to show how long each import takes. It can be used to optimize " @@ -29124,13 +29078,13 @@ msgid "" "as an equivalent way to enable this." msgstr "" -#: ../build/NEWS:15951 +#: ../build/NEWS:15986 msgid "" "`bpo-31410 `__: Optimized calling " "wrapper and classmethod descriptors." msgstr "" -#: ../build/NEWS:15953 +#: ../build/NEWS:15988 msgid "" "`bpo-31353 `__: :pep:`553` - Add a new " "built-in called ``breakpoint()`` which calls ``sys.breakpointhook()``. By " @@ -29139,101 +29093,101 @@ msgid "" "original value of the hook is saved in ``sys.__breakpointhook__``." msgstr "" -#: ../build/NEWS:15959 +#: ../build/NEWS:15994 msgid "" "`bpo-17852 `__: Maintain a list of open " "buffered files, flush them before exiting the interpreter. Based on a patch " "from Armin Rigo." msgstr "" -#: ../build/NEWS:15962 ../build/NEWS:19002 +#: ../build/NEWS:15997 ../build/NEWS:19037 msgid "" "`bpo-31315 `__: Fix an assertion failure " "in imp.create_dynamic(), when spec.name is not a string. Patch by Oren " "Milman." msgstr "" -#: ../build/NEWS:15965 ../build/NEWS:19005 +#: ../build/NEWS:16000 ../build/NEWS:19040 msgid "" "`bpo-31311 `__: Fix a crash in the " "``__setstate__()`` method of `ctypes._CData`, in case of a bad ``__dict__``. " "Patch by Oren Milman." msgstr "" -#: ../build/NEWS:15968 ../build/NEWS:19008 +#: ../build/NEWS:16003 ../build/NEWS:19043 msgid "" "`bpo-31293 `__: Fix crashes in true " "division and multiplication of a timedelta object by a float with a bad " "as_integer_ratio() method. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:15972 ../build/NEWS:19012 +#: ../build/NEWS:16007 ../build/NEWS:19047 msgid "" "`bpo-31285 `__: Fix an assertion failure " "in `warnings.warn_explicit`, when the return value of the received loader's " "get_source() has a bad splitlines() method. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:15976 +#: ../build/NEWS:16011 msgid "" "`bpo-30406 `__: Make ``async`` and " "``await`` proper keywords, as specified in :pep:`492`." msgstr "" -#: ../build/NEWS:15982 ../build/NEWS:19118 +#: ../build/NEWS:16017 ../build/NEWS:19153 msgid "" "`bpo-30058 `__: Fixed buffer overflow in " "select.kqueue.control()." msgstr "" -#: ../build/NEWS:15984 ../build/NEWS:19123 +#: ../build/NEWS:16019 ../build/NEWS:19158 msgid "" "`bpo-31672 `__: ``idpattern`` in " "``string.Template`` matched some non-ASCII characters. Now it uses ``-i`` " "regular expression local flag to avoid non-ASCII characters." msgstr "" -#: ../build/NEWS:15988 ../build/NEWS:19133 +#: ../build/NEWS:16023 ../build/NEWS:19168 msgid "" "`bpo-31701 `__: On Windows, faulthandler." "enable() now ignores MSC and COM exceptions." msgstr "" -#: ../build/NEWS:15991 ../build/NEWS:19136 +#: ../build/NEWS:16026 ../build/NEWS:19171 msgid "" "`bpo-31728 `__: Prevent crashes in " "`_elementtree` due to unsafe cleanup of `Element.text` and `Element.tail`. " "Patch by Oren Milman." msgstr "" -#: ../build/NEWS:15994 +#: ../build/NEWS:16029 msgid "" "`bpo-31671 `__: Now ``re.compile()`` " "converts passed RegexFlag to normal int object before compiling. " "bm_regex_compile benchmark shows 14% performance improvements." msgstr "" -#: ../build/NEWS:15998 +#: ../build/NEWS:16033 msgid "" "`bpo-30397 `__: The types of compiled " "regular objects and match objects are now exposed as `re.Pattern` and `re." "Match`. This adds information in pydoc output for the re module." msgstr "" -#: ../build/NEWS:16002 ../build/NEWS:19146 +#: ../build/NEWS:16037 ../build/NEWS:19181 msgid "" "`bpo-31675 `__: Fixed memory leaks in " "Tkinter's methods splitlist() and split() when pass a string larger than 2 " "GiB." msgstr "" -#: ../build/NEWS:16005 ../build/NEWS:19149 +#: ../build/NEWS:16040 ../build/NEWS:19184 msgid "" "`bpo-31673 `__: Fixed typo in the name " "of Tkinter's method adderrorinfo()." msgstr "" -#: ../build/NEWS:16007 +#: ../build/NEWS:16042 msgid "" "`bpo-31648 `__: Improvements to path " "predicates in ElementTree: Allow whitespace around predicate parts, i.e. " @@ -29242,70 +29196,70 @@ msgid "" "by Stefan Behnel." msgstr "" -#: ../build/NEWS:16012 ../build/NEWS:19151 +#: ../build/NEWS:16047 ../build/NEWS:19186 msgid "" "`bpo-30806 `__: Fix the string " "representation of a netrc object." msgstr "" -#: ../build/NEWS:16014 +#: ../build/NEWS:16049 msgid "" "`bpo-31638 `__: Add optional argument " "``compressed`` to ``zipapp.create_archive``, and add option ``--compress`` " "to the command line interface of ``zipapp``." msgstr "" -#: ../build/NEWS:16018 ../build/NEWS:19156 +#: ../build/NEWS:16053 ../build/NEWS:19191 msgid "" "`bpo-25351 `__: Avoid venv activate " "failures with undefined variables" msgstr "" -#: ../build/NEWS:16020 +#: ../build/NEWS:16055 msgid "" "`bpo-20519 `__: Avoid ctypes use (if " "possible) and improve import time for uuid." msgstr "" -#: ../build/NEWS:16023 +#: ../build/NEWS:16058 msgid "" "`bpo-28293 `__: The regular expression " "cache is no longer completely dumped when it is full." msgstr "" -#: ../build/NEWS:16026 +#: ../build/NEWS:16061 msgid "" "`bpo-31596 `__: Added " "pthread_getcpuclockid() to the time module" msgstr "" -#: ../build/NEWS:16028 +#: ../build/NEWS:16063 msgid "" "`bpo-27494 `__: Make 2to3 accept a " "trailing comma in generator expressions. For example, ``set(x for x in " "[],)`` is now allowed." msgstr "" -#: ../build/NEWS:16031 ../build/NEWS:19162 +#: ../build/NEWS:16066 ../build/NEWS:19197 msgid "" "`bpo-30347 `__: Stop crashes when " "concurrently iterate over itertools.groupby() iterators." msgstr "" -#: ../build/NEWS:16034 +#: ../build/NEWS:16069 msgid "" "`bpo-30346 `__: An iterator produced by " "itertools.groupby() iterator now becomes exhausted after advancing the " "groupby iterator." msgstr "" -#: ../build/NEWS:16037 +#: ../build/NEWS:16072 msgid "" "`bpo-31556 `__: Cancel asyncio.wait_for " "future faster if timeout <= 0" msgstr "" -#: ../build/NEWS:16039 +#: ../build/NEWS:16074 msgid "" "`bpo-31540 `__: Allow passing a context " "object in :class:`concurrent.futures.ProcessPoolExecutor` constructor. Also, " @@ -29313,20 +29267,20 @@ msgid "" "earlier to improve memory usage when a worker waits for new jobs." msgstr "" -#: ../build/NEWS:16044 ../build/NEWS:19165 +#: ../build/NEWS:16079 ../build/NEWS:19200 msgid "" "`bpo-31516 `__: ``threading." "current_thread()`` should not return a dummy thread at shutdown." msgstr "" -#: ../build/NEWS:16047 +#: ../build/NEWS:16082 msgid "" "`bpo-31525 `__: In the sqlite module, " "require the sqlite3_prepare_v2 API. Thus, the sqlite module now requires " "sqlite version at least 3.3.9." msgstr "" -#: ../build/NEWS:16050 +#: ../build/NEWS:16085 msgid "" "`bpo-26510 `__: argparse subparsers are " "now required by default. This matches behaviour in Python 2. For optional " @@ -29335,7 +29289,7 @@ msgid "" "as had been the case since Python 3.3.)" msgstr "" -#: ../build/NEWS:16056 +#: ../build/NEWS:16091 msgid "" "`bpo-27541 `__: Reprs of subclasses of " "some collection and iterator classes (`bytearray`, `array.array`, " @@ -29344,70 +29298,70 @@ msgid "" "of the base class." msgstr "" -#: ../build/NEWS:16061 ../build/NEWS:19168 +#: ../build/NEWS:16096 ../build/NEWS:19203 msgid "" "`bpo-31351 `__: python -m ensurepip now " "exits with non-zero exit code if pip bootstrapping has failed." msgstr "" -#: ../build/NEWS:16064 +#: ../build/NEWS:16099 msgid "" "`bpo-31389 `__: ``pdb.set_trace()`` now " "takes an optional keyword-only argument ``header``. If given, this is " "printed to the console just before debugging begins." msgstr "" -#: ../build/NEWS:16071 ../build/NEWS:19189 +#: ../build/NEWS:16106 ../build/NEWS:19224 msgid "" "`bpo-31537 `__: Fix incorrect usage of " "``get_history_length`` in readline documentation example code. Patch by Brad " "Smith." msgstr "" -#: ../build/NEWS:16074 ../build/NEWS:19192 +#: ../build/NEWS:16109 ../build/NEWS:19227 msgid "" "`bpo-30085 `__: The operator functions " "without double underscores are preferred for clarity. The one with " "underscores are only kept for back-compatibility." msgstr "" -#: ../build/NEWS:16081 +#: ../build/NEWS:16116 msgid "" "`bpo-31696 `__: Improve compiler version " "information in :data:`sys.version` when Python is built with Clang." msgstr "" -#: ../build/NEWS:16084 +#: ../build/NEWS:16119 msgid "" "`bpo-31625 `__: Stop using ranlib on " "static libraries. Instead, we assume ar supports the 's' flag." msgstr "" -#: ../build/NEWS:16087 +#: ../build/NEWS:16122 msgid "" "`bpo-31624 `__: Remove support for BSD/" "OS." msgstr "" -#: ../build/NEWS:16089 ../build/NEWS:19233 +#: ../build/NEWS:16124 ../build/NEWS:19268 msgid "" "`bpo-22140 `__: Prevent double " "substitution of prefix in python-config.sh." msgstr "" -#: ../build/NEWS:16091 +#: ../build/NEWS:16126 msgid "" "`bpo-31569 `__: Correct PCBuild/ case to " "PCbuild/ in build scripts and documentation." msgstr "" -#: ../build/NEWS:16094 ../build/NEWS:19235 +#: ../build/NEWS:16129 ../build/NEWS:19270 msgid "" "`bpo-31536 `__: Avoid wholesale rebuild " "after `make regen-all` if nothing changed." msgstr "" -#: ../build/NEWS:16100 ../build/NEWS:19291 +#: ../build/NEWS:16135 ../build/NEWS:19326 msgid "" "`bpo-31460 `__: Simplify the API of " "IDLE's Module Browser. Passing a widget instead of an flist with a root " @@ -29417,19 +29371,19 @@ msgid "" "py." msgstr "" -#: ../build/NEWS:16106 ../build/NEWS:19297 +#: ../build/NEWS:16141 ../build/NEWS:19332 msgid "" "`bpo-31649 `__: IDLE - Make _htest, " "_utest parameters keyword only." msgstr "" -#: ../build/NEWS:16108 ../build/NEWS:19299 +#: ../build/NEWS:16143 ../build/NEWS:19334 msgid "" "`bpo-31559 `__: Remove test order " "dependence in idle_test.test_browser." msgstr "" -#: ../build/NEWS:16110 ../build/NEWS:19301 +#: ../build/NEWS:16145 ../build/NEWS:19336 msgid "" "`bpo-31459 `__: Rename IDLE's module " "browser from Class Browser to Module Browser. The original module-level " @@ -29440,33 +29394,33 @@ msgid "" "changed. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:16118 ../build/NEWS:19309 +#: ../build/NEWS:16153 ../build/NEWS:19344 msgid "" "`bpo-31500 `__: Default fonts now are " "scaled on HiDPI displays." msgstr "" -#: ../build/NEWS:16120 ../build/NEWS:19311 +#: ../build/NEWS:16155 ../build/NEWS:19346 msgid "" "`bpo-1612262 `__: IDLE module browser " "now shows nested classes and functions. Original patches for code and tests " "by Guilherme Polo and Cheryl Sabella, respectively." msgstr "" -#: ../build/NEWS:16127 +#: ../build/NEWS:16162 msgid "" "`bpo-28280 `__: Make `PyMapping_Keys()`, " "`PyMapping_Values()` and `PyMapping_Items()` always return a `list` (rather " "than a `list` or a `tuple`). Patch by Oren Milman." msgstr "" -#: ../build/NEWS:16131 ../build/NEWS:19329 +#: ../build/NEWS:16166 ../build/NEWS:19364 msgid "" "`bpo-31532 `__: Fix memory corruption " "due to allocator mix in getpath.c between Py_GetPath() and Py_SetPath()" msgstr "" -#: ../build/NEWS:16134 +#: ../build/NEWS:16169 msgid "" "`bpo-25658 `__: Implement :pep:`539` for " "Thread Specific Storage (TSS) API: it is a new Thread Local Storage (TLS) " @@ -29475,40 +29429,40 @@ msgid "" "M. Bray, patch by Masayuki Yamamoto." msgstr "" -#: ../build/NEWS:16142 +#: ../build/NEWS:16177 msgid "Python 3.7.0 alpha 1" msgstr "" -#: ../build/NEWS:16144 +#: ../build/NEWS:16179 msgid "*Release date: 2017-09-19*" msgstr "" -#: ../build/NEWS:16149 ../build/NEWS:19367 +#: ../build/NEWS:16184 ../build/NEWS:19402 msgid "" "`bpo-29781 `__: SSLObject.version() now " "correctly returns None when handshake over BIO has not been performed yet." msgstr "" -#: ../build/NEWS:16152 +#: ../build/NEWS:16187 msgid "" "`bpo-29505 `__: Add fuzz tests for " "float(str), int(str), unicode(str); for oss-fuzz." msgstr "" -#: ../build/NEWS:16155 ../build/NEWS:19370 ../build/NEWS:23755 +#: ../build/NEWS:16190 ../build/NEWS:19405 ../build/NEWS:23790 msgid "" "`bpo-30947 `__: Upgrade libexpat " "embedded copy from version 2.2.1 to 2.2.3 to get security fixes." msgstr "" -#: ../build/NEWS:16158 ../build/NEWS:19830 ../build/NEWS:23797 +#: ../build/NEWS:16193 ../build/NEWS:19865 ../build/NEWS:23832 msgid "" "`bpo-30730 `__: Prevent environment " "variables injection in subprocess on Windows. Prevent passing other " "environment variables and command arguments." msgstr "" -#: ../build/NEWS:16162 ../build/NEWS:19834 ../build/NEWS:23801 +#: ../build/NEWS:16197 ../build/NEWS:19869 ../build/NEWS:23836 msgid "" "`bpo-30694 `__: Upgrade expat copy from " "2.2.0 to 2.2.1 to get fixes of multiple security vulnerabilities including: " @@ -29520,7 +29474,7 @@ msgid "" "expat secret using ``XML_SetHashSalt()``." msgstr "" -#: ../build/NEWS:16171 ../build/NEWS:19843 ../build/NEWS:23810 +#: ../build/NEWS:16206 ../build/NEWS:19878 ../build/NEWS:23845 msgid "" "`bpo-30500 `__: Fix urllib.parse." "splithost() to correctly parse fragments. For example, " @@ -29529,14 +29483,14 @@ msgid "" "authentication (``login@host``)." msgstr "" -#: ../build/NEWS:16176 ../build/NEWS:19932 ../build/NEWS:23815 +#: ../build/NEWS:16211 ../build/NEWS:19967 ../build/NEWS:23850 msgid "" "`bpo-29591 `__: Update expat copy from " "2.1.1 to 2.2.0 to get fixes of CVE-2016-0718 and CVE-2016-4472. See https://" "sourceforge.net/p/expat/bugs/537/ for more information." msgstr "" -#: ../build/NEWS:16183 ../build/NEWS:18995 +#: ../build/NEWS:16218 ../build/NEWS:19030 msgid "" "`bpo-31490 `__: Fix an assertion failure " "in `ctypes` class definition, in case the class has an attribute whose name " @@ -29544,28 +29498,28 @@ msgid "" "Milman." msgstr "" -#: ../build/NEWS:16187 ../build/NEWS:19376 +#: ../build/NEWS:16222 ../build/NEWS:19411 msgid "" "`bpo-31471 `__: Fix an assertion failure " "in `subprocess.Popen()` on Windows, in case the env argument has a bad " "keys() method. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:16190 ../build/NEWS:19379 +#: ../build/NEWS:16225 ../build/NEWS:19414 msgid "" "`bpo-31418 `__: Fix an assertion failure " "in `PyErr_WriteUnraisable()` in case of an exception with a bad " "``__module__`` attribute. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:16193 ../build/NEWS:19382 +#: ../build/NEWS:16228 ../build/NEWS:19417 msgid "" "`bpo-31416 `__: Fix assertion failures " "in case of a bad warnings.filters or warnings.defaultaction. Patch by Oren " "Milman." msgstr "" -#: ../build/NEWS:16196 +#: ../build/NEWS:16231 msgid "" "`bpo-28411 `__: Change direct usage of " "PyInterpreterState.modules to PyImport_GetModuleDict(). Also introduce more " @@ -29573,7 +29527,7 @@ msgid "" "complications when working on sys.modules." msgstr "" -#: ../build/NEWS:16201 +#: ../build/NEWS:16236 msgid "" "`bpo-28411 `__: Switch to the abstract " "API when dealing with ``PyInterpreterState.modules``. This allows later " @@ -29581,14 +29535,14 @@ msgid "" "a ``PyImport_GetModule()`` function to reduce a bunch of duplicated code." msgstr "" -#: ../build/NEWS:16206 ../build/NEWS:19385 +#: ../build/NEWS:16241 ../build/NEWS:19420 msgid "" "`bpo-31411 `__: Raise a TypeError " "instead of SystemError in case warnings.onceregistry is not a dictionary. " "Patch by Oren Milman." msgstr "" -#: ../build/NEWS:16209 +#: ../build/NEWS:16244 msgid "" "`bpo-31344 `__: For finer control of " "tracing behaviour when testing the interpreter, two new frame attributes " @@ -29598,13 +29552,13 @@ msgid "" "events." msgstr "" -#: ../build/NEWS:16215 ../build/NEWS:19388 +#: ../build/NEWS:16250 ../build/NEWS:19423 msgid "" "`bpo-31373 `__: Fix several possible " "instances of undefined behavior due to floating-point demotions." msgstr "" -#: ../build/NEWS:16218 ../build/NEWS:19391 +#: ../build/NEWS:16253 ../build/NEWS:19426 msgid "" "`bpo-30465 `__: Location information " "(``lineno`` and ``col_offset``) in f-strings is now (mostly) correct. This " @@ -29612,93 +29566,93 @@ msgid "" "the first line of the file)." msgstr "" -#: ../build/NEWS:16222 +#: ../build/NEWS:16257 msgid "" "`bpo-30860 `__: Consolidate CPython's " "global runtime state under a single struct. This improves discoverability " "of the runtime state." msgstr "" -#: ../build/NEWS:16225 +#: ../build/NEWS:16260 msgid "" "`bpo-31347 `__: Fix possible undefined " "behavior in _PyObject_FastCall_Prepend." msgstr "" -#: ../build/NEWS:16227 ../build/NEWS:19395 +#: ../build/NEWS:16262 ../build/NEWS:19430 msgid "" "`bpo-31343 `__: Include sys/sysmacros.h " "for major(), minor(), and makedev(). GNU C libray plans to remove the " "functions from sys/types.h." msgstr "" -#: ../build/NEWS:16230 ../build/NEWS:19398 +#: ../build/NEWS:16265 ../build/NEWS:19433 msgid "" "`bpo-31291 `__: Fix an assertion failure " "in `zipimport.zipimporter.get_data` on Windows, when the return value of " "``pathname.replace('/','\\\\')`` isn't a string. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:16234 ../build/NEWS:19402 +#: ../build/NEWS:16269 ../build/NEWS:19437 msgid "" "`bpo-31271 `__: Fix an assertion failure " "in the write() method of `io.TextIOWrapper`, when the encoder doesn't return " "a bytes object. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:16238 ../build/NEWS:19406 +#: ../build/NEWS:16273 ../build/NEWS:19441 msgid "" "`bpo-31243 `__: Fix a crash in some " "methods of `io.TextIOWrapper`, when the decoder's state is invalid. Patch by " "Oren Milman." msgstr "" -#: ../build/NEWS:16241 ../build/NEWS:19409 +#: ../build/NEWS:16276 ../build/NEWS:19444 msgid "" "`bpo-30721 `__: ``print`` now shows " "correct usage hint for using Python 2 redirection syntax. Patch by Sanyam " "Khurana." msgstr "" -#: ../build/NEWS:16244 ../build/NEWS:19412 +#: ../build/NEWS:16279 ../build/NEWS:19447 msgid "" "`bpo-31070 `__: Fix a race condition in " "importlib _get_module_lock()." msgstr "" -#: ../build/NEWS:16246 +#: ../build/NEWS:16281 msgid "" "`bpo-30747 `__: Add a non-dummy " "implementation of _Py_atomic_store and _Py_atomic_load on MSVC." msgstr "" -#: ../build/NEWS:16249 ../build/NEWS:19414 ../build/NEWS:23761 +#: ../build/NEWS:16284 ../build/NEWS:19449 ../build/NEWS:23796 msgid "" "`bpo-31095 `__: Fix potential crash " "during GC caused by ``tp_dealloc`` which doesn't call " "``PyObject_GC_UnTrack()``." msgstr "" -#: ../build/NEWS:16252 ../build/NEWS:19417 +#: ../build/NEWS:16287 ../build/NEWS:19452 msgid "" "`bpo-31071 `__: Avoid masking original " "TypeError in call with * unpacking when other arguments are passed." msgstr "" -#: ../build/NEWS:16255 ../build/NEWS:19420 +#: ../build/NEWS:16290 ../build/NEWS:19455 msgid "" "`bpo-30978 `__: str.format_map() now " "passes key lookup exceptions through. Previously any exception was replaced " "with a KeyError exception." msgstr "" -#: ../build/NEWS:16258 ../build/NEWS:19423 +#: ../build/NEWS:16293 ../build/NEWS:19458 msgid "" "`bpo-30808 `__: Use _Py_atomic API for " "concurrency-sensitive signal state." msgstr "" -#: ../build/NEWS:16260 ../build/NEWS:19425 ../build/NEWS:23822 +#: ../build/NEWS:16295 ../build/NEWS:19460 ../build/NEWS:23857 msgid "" "`bpo-30876 `__: Relative import from " "unloaded package now reimports the package instead of failing with " @@ -29706,7 +29660,7 @@ msgid "" "rather than SystemError." msgstr "" -#: ../build/NEWS:16264 ../build/NEWS:19429 +#: ../build/NEWS:16299 ../build/NEWS:19464 msgid "" "`bpo-30703 `__: Improve signal delivery. " "Avoid using Py_AddPendingCall from signal handler, to avoid calling signal-" @@ -29715,52 +29669,52 @@ msgid "" "(some signals could be lost)." msgstr "" -#: ../build/NEWS:16269 ../build/NEWS:19434 ../build/NEWS:23826 +#: ../build/NEWS:16304 ../build/NEWS:19469 ../build/NEWS:23861 msgid "" "`bpo-30765 `__: Avoid blocking in " "pthread_mutex_lock() when PyThread_acquire_lock() is asked not to block." msgstr "" -#: ../build/NEWS:16272 ../build/NEWS:19437 +#: ../build/NEWS:16307 ../build/NEWS:19472 msgid "" "`bpo-31161 `__: Make sure the 'Missing " "parentheses' syntax error message is only applied to SyntaxError, not to " "subclasses. Patch by Martijn Pieters." msgstr "" -#: ../build/NEWS:16275 ../build/NEWS:19440 +#: ../build/NEWS:16310 ../build/NEWS:19475 msgid "" "`bpo-30814 `__: Fixed a race condition " "when import a submodule from a package." msgstr "" -#: ../build/NEWS:16277 +#: ../build/NEWS:16312 msgid "" "`bpo-30736 `__: The internal unicodedata " "database has been upgraded to Unicode 10.0." msgstr "" -#: ../build/NEWS:16280 +#: ../build/NEWS:16315 msgid "" "`bpo-30604 `__: Move co_extra_freefuncs " "from per-thread to per-interpreter to avoid crashes." msgstr "" -#: ../build/NEWS:16283 ../build/NEWS:19442 +#: ../build/NEWS:16318 ../build/NEWS:19477 msgid "" "`bpo-30597 `__: ``print`` now shows " "expected input in custom error message when used as a Python 2 statement. " "Patch by Sanyam Khurana." msgstr "" -#: ../build/NEWS:16286 ../build/NEWS:19857 +#: ../build/NEWS:16321 ../build/NEWS:19892 msgid "" "`bpo-30682 `__: Removed a too-strict " "assertion that failed for certain f-strings, such as eval(\"f'\\\\\\n'\") " "and eval(\"f'\\\\\\r'\")." msgstr "" -#: ../build/NEWS:16289 +#: ../build/NEWS:16324 msgid "" "`bpo-30501 `__: The compiler now " "produces more optimal code for complex condition expressions in the \"if\", " @@ -29768,7 +29722,7 @@ msgid "" "expressions and comprehensions." msgstr "" -#: ../build/NEWS:16293 +#: ../build/NEWS:16328 msgid "" "`bpo-28180 `__: Implement :pep:`538` " "(legacy C locale coercion). This means that when a suitable coercion target " @@ -29776,20 +29730,20 @@ msgid "" "will assume the use of UTF-8 as the default text encoding, rather than ASCII." msgstr "" -#: ../build/NEWS:16298 +#: ../build/NEWS:16333 msgid "" "`bpo-30486 `__: Allows setting cell " "values for __closure__. Patch by Lisa Roach." msgstr "" -#: ../build/NEWS:16301 +#: ../build/NEWS:16336 msgid "" "`bpo-30537 `__: itertools.islice now " "accepts integer-like objects (having an __index__ method) as start, stop, " "and slice arguments" msgstr "" -#: ../build/NEWS:16304 +#: ../build/NEWS:16339 msgid "" "`bpo-25324 `__: Tokens needed for " "parsing in Python moved to C. ``COMMENT``, ``NL`` and ``ENCODING``. This way " @@ -29797,27 +29751,27 @@ msgid "" "import the tokenize module." msgstr "" -#: ../build/NEWS:16308 ../build/NEWS:19862 +#: ../build/NEWS:16343 ../build/NEWS:19897 msgid "" "`bpo-29104 `__: Fixed parsing " "backslashes in f-strings." msgstr "" -#: ../build/NEWS:16310 ../build/NEWS:19864 ../build/NEWS:23829 +#: ../build/NEWS:16345 ../build/NEWS:19899 ../build/NEWS:23864 msgid "" "`bpo-27945 `__: Fixed various segfaults " "with dict when input collections are mutated during searching, inserting or " "comparing. Based on patches by Duane Griffin and Tim Mitchell." msgstr "" -#: ../build/NEWS:16314 ../build/NEWS:19868 ../build/NEWS:23833 +#: ../build/NEWS:16349 ../build/NEWS:19903 ../build/NEWS:23868 msgid "" "`bpo-25794 `__: Fixed type.__setattr__() " "and type.__delattr__() for non-interned attribute names. Based on patch by " "Eryk Sun." msgstr "" -#: ../build/NEWS:16317 ../build/NEWS:19871 +#: ../build/NEWS:16352 ../build/NEWS:19906 msgid "" "`bpo-30039 `__: If a KeyboardInterrupt " "happens when the interpreter is in the middle of resuming a chain of nested " @@ -29825,60 +29779,60 @@ msgid "" "frame." msgstr "" -#: ../build/NEWS:16321 +#: ../build/NEWS:16356 msgid "" "`bpo-28974 `__: ``object.__format__(x, " "'')`` is now equivalent to ``str(x)`` rather than ``format(str(self), '')``." msgstr "" -#: ../build/NEWS:16324 +#: ../build/NEWS:16359 msgid "" "`bpo-30024 `__: Circular imports " "involving absolute imports with binding a submodule to a name are now " "supported." msgstr "" -#: ../build/NEWS:16327 ../build/NEWS:19875 +#: ../build/NEWS:16362 ../build/NEWS:19910 msgid "" "`bpo-12414 `__: sys.getsizeof() on a " "code object now returns the sizes which includes the code struct and sizes " "of objects which it references. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:16331 +#: ../build/NEWS:16366 msgid "" "`bpo-29839 `__: len() now raises " "ValueError rather than OverflowError if __len__() returned a large negative " "integer." msgstr "" -#: ../build/NEWS:16334 +#: ../build/NEWS:16369 msgid "" "`bpo-11913 `__: README.rst is now " "included in the list of distutils standard READMEs and therefore included in " "source distributions." msgstr "" -#: ../build/NEWS:16337 +#: ../build/NEWS:16372 msgid "" "`bpo-29914 `__: Fixed default " "implementations of __reduce__ and __reduce_ex__(). object.__reduce__() no " "longer takes arguments, object.__reduce_ex__() now requires one argument." msgstr "" -#: ../build/NEWS:16341 ../build/NEWS:19879 +#: ../build/NEWS:16376 ../build/NEWS:19914 msgid "" "`bpo-29949 `__: Fix memory usage " "regression of set and frozenset object." msgstr "" -#: ../build/NEWS:16343 ../build/NEWS:19881 ../build/NEWS:23836 +#: ../build/NEWS:16378 ../build/NEWS:19916 ../build/NEWS:23871 msgid "" "`bpo-29935 `__: Fixed error messages in " "the index() method of tuple, list and deque when pass indices of wrong type." msgstr "" -#: ../build/NEWS:16346 +#: ../build/NEWS:16381 msgid "" "`bpo-29816 `__: Shift operation now has " "less opportunity to raise OverflowError. ValueError always is raised rather " @@ -29886,44 +29840,44 @@ msgid "" "count always returns zero." msgstr "" -#: ../build/NEWS:16351 +#: ../build/NEWS:16386 msgid "" "`bpo-24821 `__: Fixed the slowing down " "to 25 times in the searching of some unlucky Unicode characters." msgstr "" -#: ../build/NEWS:16354 +#: ../build/NEWS:16389 msgid "" "`bpo-29102 `__: Add a unique ID to " "PyInterpreterState. This makes it easier to identify each subinterpreter." msgstr "" -#: ../build/NEWS:16357 +#: ../build/NEWS:16392 msgid "" "`bpo-29894 `__: The deprecation warning " "is emitted if __complex__ returns an instance of a strict subclass of " "complex. In a future versions of Python this can be an error." msgstr "" -#: ../build/NEWS:16361 ../build/NEWS:19884 +#: ../build/NEWS:16396 ../build/NEWS:19919 msgid "" "`bpo-29859 `__: Show correct error " "messages when any of the pthread_* calls in thread_pthread.h fails." msgstr "" -#: ../build/NEWS:16364 +#: ../build/NEWS:16399 msgid "" "`bpo-29849 `__: Fix a memory leak when " "an ImportError is raised during from import." msgstr "" -#: ../build/NEWS:16367 ../build/NEWS:19892 +#: ../build/NEWS:16402 ../build/NEWS:19927 msgid "" "`bpo-28856 `__: Fix an oversight that %b " "format for bytes should support objects follow the buffer protocol." msgstr "" -#: ../build/NEWS:16370 ../build/NEWS:20209 +#: ../build/NEWS:16405 ../build/NEWS:20244 msgid "" "`bpo-29723 `__: The ``sys.path[0]`` " "initialization change for `bpo-29139 `__ " @@ -29935,77 +29889,77 @@ msgid "" "location named on the command line." msgstr "" -#: ../build/NEWS:16378 +#: ../build/NEWS:16413 msgid "" "`bpo-29568 `__: Escaped percent \"%%\" " "in the format string for classic string formatting no longer allows any " "characters between two percents." msgstr "" -#: ../build/NEWS:16381 ../build/NEWS:19895 +#: ../build/NEWS:16416 ../build/NEWS:19930 msgid "" "`bpo-29714 `__: Fix a regression that " "bytes format may fail when containing zero bytes inside." msgstr "" -#: ../build/NEWS:16384 +#: ../build/NEWS:16419 msgid "" "`bpo-29695 `__: bool(), float(), list() " "and tuple() no longer take keyword arguments. The first argument of int() " "can now be passes only as positional argument." msgstr "" -#: ../build/NEWS:16388 ../build/NEWS:20233 +#: ../build/NEWS:16423 ../build/NEWS:20268 msgid "" "`bpo-28893 `__: Set correct __cause__ " "for errors about invalid awaitables returned from __aiter__ and __anext__." msgstr "" -#: ../build/NEWS:16391 ../build/NEWS:19887 ../build/NEWS:23839 +#: ../build/NEWS:16426 ../build/NEWS:19922 ../build/NEWS:23874 msgid "" "`bpo-28876 `__: ``bool(range)`` works " "even if ``len(range)`` raises :exc:`OverflowError`." msgstr "" -#: ../build/NEWS:16394 ../build/NEWS:20236 +#: ../build/NEWS:16429 ../build/NEWS:20271 msgid "" "`bpo-29683 `__: Fixes to memory " "allocation in _PyCode_SetExtra. Patch by Brian Coleman." msgstr "" -#: ../build/NEWS:16397 ../build/NEWS:20239 +#: ../build/NEWS:16432 ../build/NEWS:20274 msgid "" "`bpo-29684 `__: Fix minor regression of " "PyEval_CallObjectWithKeywords. It should raise TypeError when kwargs is not " "a dict. But it might cause segv when args=NULL and kwargs is not a dict." msgstr "" -#: ../build/NEWS:16401 ../build/NEWS:20243 ../build/NEWS:23850 +#: ../build/NEWS:16436 ../build/NEWS:20278 ../build/NEWS:23885 msgid "" "`bpo-28598 `__: Support __rmod__ for " "subclasses of str being called before str.__mod__. Patch by Martijn Pieters." msgstr "" -#: ../build/NEWS:16404 ../build/NEWS:20246 +#: ../build/NEWS:16439 ../build/NEWS:20281 msgid "" "`bpo-29607 `__: Fix stack_effect " "computation for CALL_FUNCTION_EX. Patch by Matthieu Dartiailh." msgstr "" -#: ../build/NEWS:16407 ../build/NEWS:20249 ../build/NEWS:23853 +#: ../build/NEWS:16442 ../build/NEWS:20284 ../build/NEWS:23888 msgid "" "`bpo-29602 `__: Fix incorrect handling " "of signed zeros in complex constructor for complex subclasses and for inputs " "having a __complex__ method. Patch by Serhiy Storchaka." msgstr "" -#: ../build/NEWS:16411 ../build/NEWS:20253 ../build/NEWS:23857 +#: ../build/NEWS:16446 ../build/NEWS:20288 ../build/NEWS:23892 msgid "" "`bpo-29347 `__: Fixed possibly " "dereferencing undefined pointers when creating weakref objects." msgstr "" -#: ../build/NEWS:16414 +#: ../build/NEWS:16449 msgid "" "`bpo-29463 `__: Add ``docstring`` field " "to Module, ClassDef, FunctionDef, and AsyncFunctionDef ast nodes. docstring " @@ -30014,115 +29968,115 @@ msgid "" "`32911`.)" msgstr "" -#: ../build/NEWS:16419 ../build/NEWS:20256 ../build/NEWS:23860 +#: ../build/NEWS:16454 ../build/NEWS:20291 ../build/NEWS:23895 msgid "" "`bpo-29438 `__: Fixed use-after-free " "problem in key sharing dict." msgstr "" -#: ../build/NEWS:16421 +#: ../build/NEWS:16456 msgid "" "`bpo-29546 `__: Set the 'path' and " "'name' attribute on ImportError for ``from ... import ...``." msgstr "" -#: ../build/NEWS:16424 +#: ../build/NEWS:16459 msgid "" "`bpo-29546 `__: Improve from-import " "error message with location" msgstr "" -#: ../build/NEWS:16426 ../build/NEWS:19898 ../build/NEWS:23867 +#: ../build/NEWS:16461 ../build/NEWS:19933 ../build/NEWS:23902 msgid "" "`bpo-29478 `__: If max_line_length=None " "is specified while using the Compat32 policy, it is no longer ignored. " "Patch by Mircea Cosbuc." msgstr "" -#: ../build/NEWS:16429 ../build/NEWS:20258 ../build/NEWS:23862 +#: ../build/NEWS:16464 ../build/NEWS:20293 ../build/NEWS:23897 msgid "" "`bpo-29319 `__: Prevent " "RunMainFromImporter overwriting sys.path[0]." msgstr "" -#: ../build/NEWS:16431 ../build/NEWS:20260 ../build/NEWS:23864 +#: ../build/NEWS:16466 ../build/NEWS:20295 ../build/NEWS:23899 msgid "" "`bpo-29337 `__: Fixed possible " "BytesWarning when compare the code objects. Warnings could be emitted at " "compile time." msgstr "" -#: ../build/NEWS:16434 ../build/NEWS:20263 +#: ../build/NEWS:16469 ../build/NEWS:20298 msgid "" "`bpo-29327 `__: Fixed a crash when pass " "the iterable keyword argument to sorted()." msgstr "" -#: ../build/NEWS:16437 ../build/NEWS:20266 +#: ../build/NEWS:16472 ../build/NEWS:20301 msgid "" "`bpo-29034 `__: Fix memory leak and use-" "after-free in os module (path_converter)." msgstr "" -#: ../build/NEWS:16440 ../build/NEWS:20269 +#: ../build/NEWS:16475 ../build/NEWS:20304 msgid "" "`bpo-29159 `__: Fix regression in " "bytes(x) when x.__index__() raises Exception." msgstr "" -#: ../build/NEWS:16442 +#: ../build/NEWS:16477 msgid "" "`bpo-29049 `__: Call " "_PyObject_GC_TRACK() lazily when calling Python function. Calling function " "is up to 5% faster." msgstr "" -#: ../build/NEWS:16445 +#: ../build/NEWS:16480 msgid "" "`bpo-28927 `__: bytes.fromhex() and " "bytearray.fromhex() now ignore all ASCII whitespace, not only spaces. Patch " "by Robert Xiao." msgstr "" -#: ../build/NEWS:16448 ../build/NEWS:20271 ../build/NEWS:24216 +#: ../build/NEWS:16483 ../build/NEWS:20306 ../build/NEWS:24251 msgid "" "`bpo-28932 `__: Do not include if it does not exist." msgstr "" -#: ../build/NEWS:16450 ../build/NEWS:20273 ../build/NEWS:24221 +#: ../build/NEWS:16485 ../build/NEWS:20308 ../build/NEWS:24256 msgid "" "`bpo-25677 `__: Correct the positioning " "of the syntax error caret for indented blocks. Based on patch by Michael " "Layzell." msgstr "" -#: ../build/NEWS:16453 ../build/NEWS:20276 ../build/NEWS:24224 +#: ../build/NEWS:16488 ../build/NEWS:20311 ../build/NEWS:24259 msgid "" "`bpo-29000 `__: Fixed bytes formatting " "of octals with zero padding in alternate form." msgstr "" -#: ../build/NEWS:16456 +#: ../build/NEWS:16491 msgid "" "`bpo-18896 `__: Python function can now " "have more than 255 parameters. collections.namedtuple() now supports tuples " "with more than 255 elements." msgstr "" -#: ../build/NEWS:16459 +#: ../build/NEWS:16494 msgid "" "`bpo-28596 `__: The preferred encoding " "is UTF-8 on Android. Patch written by Chi Hsuan Yen." msgstr "" -#: ../build/NEWS:16462 +#: ../build/NEWS:16497 msgid "" "`bpo-22257 `__: Clean up interpreter " "startup (see :pep:`432`)." msgstr "" -#: ../build/NEWS:16464 ../build/NEWS:20279 +#: ../build/NEWS:16499 ../build/NEWS:20314 msgid "" "`bpo-26919 `__: On Android, operating " "system data is now always encoded/decoded to/from UTF-8, instead of the " @@ -30130,41 +30084,41 @@ msgid "" "fsdecode() which are already using UTF-8." msgstr "" -#: ../build/NEWS:16468 ../build/NEWS:20283 +#: ../build/NEWS:16503 ../build/NEWS:20318 msgid "" "`bpo-28991 `__: functools.lru_cache() " "was susceptible to an obscure reentrancy bug triggerable by a monkey-patched " "len() function." msgstr "" -#: ../build/NEWS:16471 ../build/NEWS:20557 +#: ../build/NEWS:16506 ../build/NEWS:20592 msgid "" "`bpo-28147 `__: Fix a memory leak in " "split-table dictionaries: setattr() must not convert combined table into " "split table. Patch written by INADA Naoki." msgstr "" -#: ../build/NEWS:16474 ../build/NEWS:20286 +#: ../build/NEWS:16509 ../build/NEWS:20321 msgid "" "`bpo-28739 `__: f-string expressions are " "no longer accepted as docstrings and by ast.literal_eval() even if they do " "not include expressions." msgstr "" -#: ../build/NEWS:16477 ../build/NEWS:20289 ../build/NEWS:24227 +#: ../build/NEWS:16512 ../build/NEWS:20324 ../build/NEWS:24262 msgid "" "`bpo-28512 `__: Fixed setting the offset " "attribute of SyntaxError by PyErr_SyntaxLocationEx() and " "PyErr_SyntaxLocationObject()." msgstr "" -#: ../build/NEWS:16480 ../build/NEWS:20292 +#: ../build/NEWS:16515 ../build/NEWS:20327 msgid "" "`bpo-28918 `__: Fix the cross " "compilation of xxlimited when Python has been built with Py_DEBUG defined." msgstr "" -#: ../build/NEWS:16483 ../build/NEWS:20587 +#: ../build/NEWS:16518 ../build/NEWS:20622 msgid "" "`bpo-23722 `__: Rather than silently " "producing a class that doesn't support zero-argument ``super()`` in methods, " @@ -30173,7 +30127,7 @@ msgid "" "zero-argument ``super()``." msgstr "" -#: ../build/NEWS:16489 ../build/NEWS:20593 +#: ../build/NEWS:16524 ../build/NEWS:20628 msgid "" "`bpo-28797 `__: Modifying the class " "__dict__ inside the __set_name__ method of a descriptor that is used inside " @@ -30181,7 +30135,7 @@ msgid "" "descriptors." msgstr "" -#: ../build/NEWS:16493 +#: ../build/NEWS:16528 msgid "" "`bpo-28799 `__: Remove the " "``PyEval_GetCallStats()`` function and deprecate the untested and " @@ -30190,13 +30144,13 @@ msgid "" "mod:`profile` to profile function calls." msgstr "" -#: ../build/NEWS:16498 +#: ../build/NEWS:16533 msgid "" "`bpo-12844 `__: More than 255 arguments " "can now be passed to a function." msgstr "" -#: ../build/NEWS:16500 ../build/NEWS:20597 +#: ../build/NEWS:16535 ../build/NEWS:20632 msgid "" "`bpo-28782 `__: Fix a bug in the " "implementation ``yield from`` when checking if the next instruction is " @@ -30204,7 +30158,7 @@ msgid "" "python.org/issue26647>`__)." msgstr "" -#: ../build/NEWS:16504 +#: ../build/NEWS:16539 msgid "" "`bpo-28774 `__: Fix error position of " "the unicode error in ASCII and Latin1 encoders when a string returned by the " @@ -30212,20 +30166,20 @@ msgid "" "ASCII codec, characters out of the U+0000-U+00FF range for Latin1)." msgstr "" -#: ../build/NEWS:16509 ../build/NEWS:20295 +#: ../build/NEWS:16544 ../build/NEWS:20330 msgid "" "`bpo-28731 `__: Optimize " "_PyDict_NewPresized() to create correct size dict. Improve speed of dict " "literal with constant keys up to 30%." msgstr "" -#: ../build/NEWS:16512 ../build/NEWS:20651 +#: ../build/NEWS:16547 ../build/NEWS:20686 msgid "" "`bpo-28532 `__: Show sys.version when -V " "option is supplied twice." msgstr "" -#: ../build/NEWS:16514 ../build/NEWS:20653 +#: ../build/NEWS:16549 ../build/NEWS:20688 msgid "" "`bpo-27100 `__: The with-statement now " "checks for __enter__ before it checks for __exit__. This gives less " @@ -30233,336 +30187,336 @@ msgid "" "Ellington." msgstr "" -#: ../build/NEWS:16518 ../build/NEWS:20657 +#: ../build/NEWS:16553 ../build/NEWS:20692 msgid "" "`bpo-28746 `__: Fix the " "set_inheritable() file descriptor method on platforms that do not have the " "ioctl FIOCLEX and FIONCLEX commands." msgstr "" -#: ../build/NEWS:16521 ../build/NEWS:20660 +#: ../build/NEWS:16556 ../build/NEWS:20695 msgid "" "`bpo-26920 `__: Fix not getting the " "locale's charset upon initializing the interpreter, on platforms that do not " "have langinfo." msgstr "" -#: ../build/NEWS:16524 ../build/NEWS:20663 ../build/NEWS:24233 +#: ../build/NEWS:16559 ../build/NEWS:20698 ../build/NEWS:24268 msgid "" "`bpo-28648 `__: Fixed crash in " "Py_DecodeLocale() in debug build on Mac OS X when decode astral characters. " "Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:16527 ../build/NEWS:20669 +#: ../build/NEWS:16562 ../build/NEWS:20704 msgid "" "`bpo-28665 `__: Improve speed of the " "STORE_DEREF opcode by 40%." msgstr "" -#: ../build/NEWS:16529 ../build/NEWS:20666 ../build/NEWS:24236 +#: ../build/NEWS:16564 ../build/NEWS:20701 ../build/NEWS:24271 msgid "" "`bpo-19398 `__: Extra slash no longer " "added to sys.path components in case of empty compile-time PYTHONPATH " "components." msgstr "" -#: ../build/NEWS:16532 +#: ../build/NEWS:16567 msgid "" "`bpo-28621 `__: Sped up converting int " "to float by reusing faster bits counting implementation. Patch by Adrian " "Wielgosik." msgstr "" -#: ../build/NEWS:16535 +#: ../build/NEWS:16570 msgid "" "`bpo-28580 `__: Optimize iterating split " "table values. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:16537 ../build/NEWS:20671 +#: ../build/NEWS:16572 ../build/NEWS:20706 msgid "" "`bpo-28583 `__: PyDict_SetDefault didn't " "combine split table when needed. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:16540 ../build/NEWS:20765 +#: ../build/NEWS:16575 ../build/NEWS:20800 msgid "" "`bpo-28128 `__: Deprecation warning for " "invalid str and byte escape sequences now prints better information about " "where the error occurs. Patch by Serhiy Storchaka and Eric Smith." msgstr "" -#: ../build/NEWS:16544 ../build/NEWS:20769 +#: ../build/NEWS:16579 ../build/NEWS:20804 msgid "" "`bpo-28509 `__: dict.update() no longer " "allocate unnecessary large memory." msgstr "" -#: ../build/NEWS:16546 ../build/NEWS:20771 ../build/NEWS:24239 +#: ../build/NEWS:16581 ../build/NEWS:20806 ../build/NEWS:24274 msgid "" "`bpo-28426 `__: Fixed potential crash in " "PyUnicode_AsDecodedObject() in debug build." msgstr "" -#: ../build/NEWS:16549 ../build/NEWS:20774 +#: ../build/NEWS:16584 ../build/NEWS:20809 msgid "" "`bpo-28517 `__: Fixed of-by-one error in " "the peephole optimizer that caused keeping unreachable code." msgstr "" -#: ../build/NEWS:16552 ../build/NEWS:20777 +#: ../build/NEWS:16587 ../build/NEWS:20812 msgid "" "`bpo-28214 `__: Improved exception " "reporting for problematic __set_name__ attributes." msgstr "" -#: ../build/NEWS:16555 ../build/NEWS:20780 ../build/NEWS:24242 +#: ../build/NEWS:16590 ../build/NEWS:20815 ../build/NEWS:24277 msgid "" "`bpo-23782 `__: Fixed possible memory " "leak in _PyTraceback_Add() and exception loss in PyTraceBack_Here()." msgstr "" -#: ../build/NEWS:16558 ../build/NEWS:20889 +#: ../build/NEWS:16593 ../build/NEWS:20924 msgid "" "`bpo-28183 `__: Optimize and cleanup " "dict iteration." msgstr "" -#: ../build/NEWS:16560 ../build/NEWS:20891 +#: ../build/NEWS:16595 ../build/NEWS:20926 msgid "" "`bpo-26081 `__: Added C implementation " "of asyncio.Future. Original patch by Yury Selivanov." msgstr "" -#: ../build/NEWS:16563 ../build/NEWS:20894 ../build/NEWS:24245 +#: ../build/NEWS:16598 ../build/NEWS:20929 ../build/NEWS:24280 msgid "" "`bpo-28379 `__: Added sanity checks and " "tests for PyUnicode_CopyCharacters(). Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:16566 ../build/NEWS:20897 ../build/NEWS:24248 +#: ../build/NEWS:16601 ../build/NEWS:20932 ../build/NEWS:24283 msgid "" "`bpo-28376 `__: The type of long range " "iterator is now registered as Iterator. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:16569 +#: ../build/NEWS:16604 msgid "" "`bpo-28376 `__: Creating instances of " "range_iterator by calling range_iterator type now is disallowed. Calling " "iter() on range instance is the only way. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:16573 ../build/NEWS:20906 ../build/NEWS:24254 +#: ../build/NEWS:16608 ../build/NEWS:20941 ../build/NEWS:24289 msgid "" "`bpo-26906 `__: Resolving special " "methods of uninitialized type now causes implicit initialization of the type " "instead of a fail." msgstr "" -#: ../build/NEWS:16576 ../build/NEWS:20909 ../build/NEWS:24257 +#: ../build/NEWS:16611 ../build/NEWS:20944 ../build/NEWS:24292 msgid "" "`bpo-18287 `__: PyType_Ready() now " "checks that tp_name is not NULL. Original patch by Niklas Koep." msgstr "" -#: ../build/NEWS:16579 ../build/NEWS:20912 ../build/NEWS:24260 +#: ../build/NEWS:16614 ../build/NEWS:20947 ../build/NEWS:24295 msgid "" "`bpo-24098 `__: Fixed possible crash " "when AST is changed in process of compiling it." msgstr "" -#: ../build/NEWS:16582 ../build/NEWS:20915 +#: ../build/NEWS:16617 ../build/NEWS:20950 msgid "" "`bpo-28201 `__: Dict reduces possibility " "of 2nd conflict in hash table when hashes have same lower bits." msgstr "" -#: ../build/NEWS:16585 ../build/NEWS:20918 ../build/NEWS:24263 +#: ../build/NEWS:16620 ../build/NEWS:20953 ../build/NEWS:24298 msgid "" "`bpo-28350 `__: String constants with " "null character no longer interned." msgstr "" -#: ../build/NEWS:16587 ../build/NEWS:20920 ../build/NEWS:24265 +#: ../build/NEWS:16622 ../build/NEWS:20955 ../build/NEWS:24300 msgid "" "`bpo-26617 `__: Fix crash when GC runs " "during weakref callbacks." msgstr "" -#: ../build/NEWS:16589 ../build/NEWS:20922 ../build/NEWS:24267 +#: ../build/NEWS:16624 ../build/NEWS:20957 ../build/NEWS:24302 msgid "" "`bpo-27942 `__: String constants now " "interned recursively in tuples and frozensets." msgstr "" -#: ../build/NEWS:16592 +#: ../build/NEWS:16627 msgid "" "`bpo-28289 `__: ImportError.__init__ now " "resets not specified attributes." msgstr "" -#: ../build/NEWS:16594 ../build/NEWS:20925 ../build/NEWS:24270 +#: ../build/NEWS:16629 ../build/NEWS:20960 ../build/NEWS:24305 msgid "" "`bpo-21578 `__: Fixed misleading error " "message when ImportError called with invalid keyword args." msgstr "" -#: ../build/NEWS:16597 ../build/NEWS:20928 +#: ../build/NEWS:16632 ../build/NEWS:20963 msgid "" "`bpo-28203 `__: Fix incorrect type in " "complex(1.0, {2:3}) error message. Patch by Soumya Sharma." msgstr "" -#: ../build/NEWS:16600 ../build/NEWS:20931 +#: ../build/NEWS:16635 ../build/NEWS:20966 msgid "" "`bpo-28086 `__: Single var-positional " "argument of tuple subtype was passed unscathed to the C-defined function. " "Now it is converted to exact tuple." msgstr "" -#: ../build/NEWS:16603 ../build/NEWS:20934 +#: ../build/NEWS:16638 ../build/NEWS:20969 msgid "" "`bpo-28214 `__: Now __set_name__ is " "looked up on the class instead of the instance." msgstr "" -#: ../build/NEWS:16606 ../build/NEWS:20937 ../build/NEWS:24276 +#: ../build/NEWS:16641 ../build/NEWS:20972 ../build/NEWS:24311 msgid "" "`bpo-27955 `__: Fallback on reading /dev/" "urandom device when the getrandom() syscall fails with EPERM, for example " "when blocked by SECCOMP." msgstr "" -#: ../build/NEWS:16609 ../build/NEWS:20940 +#: ../build/NEWS:16644 ../build/NEWS:20975 msgid "" "`bpo-28192 `__: Don't import readline in " "isolated mode." msgstr "" -#: ../build/NEWS:16611 +#: ../build/NEWS:16646 msgid "" "`bpo-27441 `__: Remove some redundant " "assignments to ob_size in longobject.c. Thanks Oren Milman." msgstr "" -#: ../build/NEWS:16614 +#: ../build/NEWS:16649 msgid "" "`bpo-27222 `__: Clean up redundant code " "in long_rshift function. Thanks Oren Milman." msgstr "" -#: ../build/NEWS:16617 ../build/NEWS:20942 +#: ../build/NEWS:16652 ../build/NEWS:20977 msgid "Upgrade internal unicode databases to Unicode version 9.0.0." msgstr "" -#: ../build/NEWS:16619 ../build/NEWS:20944 ../build/NEWS:24279 +#: ../build/NEWS:16654 ../build/NEWS:20979 ../build/NEWS:24314 msgid "" "`bpo-28131 `__: Fix a regression in " "zipimport's compile_source(). zipimport should use the same optimization " "level as the interpreter." msgstr "" -#: ../build/NEWS:16622 ../build/NEWS:20947 +#: ../build/NEWS:16657 ../build/NEWS:20982 msgid "" "`bpo-28126 `__: Replace Py_MEMCPY with " "memcpy(). Visual Studio can properly optimize memcpy()." msgstr "" -#: ../build/NEWS:16625 ../build/NEWS:20950 +#: ../build/NEWS:16660 ../build/NEWS:20985 msgid "" "`bpo-28120 `__: Fix dict.pop() for " "splitted dictionary when trying to remove a \"pending key\" (Not yet " "inserted in split-table). Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:16628 ../build/NEWS:20953 +#: ../build/NEWS:16663 ../build/NEWS:20988 msgid "" "`bpo-26182 `__: Raise DeprecationWarning " "when async and await keywords are used as variable/attribute/class/function " "name." msgstr "" -#: ../build/NEWS:16631 ../build/NEWS:20678 +#: ../build/NEWS:16666 ../build/NEWS:20713 msgid "" "`bpo-26182 `__: Fix a refleak in code " "that raises DeprecationWarning." msgstr "" -#: ../build/NEWS:16633 ../build/NEWS:20680 +#: ../build/NEWS:16668 ../build/NEWS:20715 msgid "" "`bpo-28721 `__: Fix asynchronous " "generators aclose() and athrow() to handle StopAsyncIteration propagation " "properly." msgstr "" -#: ../build/NEWS:16636 +#: ../build/NEWS:16671 msgid "" "`bpo-26110 `__: Speed-up method calls: " "add LOAD_METHOD and CALL_METHOD opcodes." msgstr "" -#: ../build/NEWS:16641 ../build/NEWS:19448 +#: ../build/NEWS:16676 ../build/NEWS:19483 msgid "" "`bpo-31499 `__: xml.etree: Fix a crash " "when a parser is part of a reference cycle." msgstr "" -#: ../build/NEWS:16644 ../build/NEWS:19171 +#: ../build/NEWS:16679 ../build/NEWS:19206 msgid "" "`bpo-31482 `__: ``random.seed()`` now " "works with bytes in version=1" msgstr "" -#: ../build/NEWS:16646 ../build/NEWS:19451 +#: ../build/NEWS:16681 ../build/NEWS:19486 msgid "" "`bpo-28556 `__: typing.get_type_hints " "now finds the right globalns for classes and modules by default (when no " "``globalns`` was specified by the caller)." msgstr "" -#: ../build/NEWS:16649 ../build/NEWS:19454 +#: ../build/NEWS:16684 ../build/NEWS:19489 msgid "" "`bpo-28556 `__: Speed improvements to " "the ``typing`` module. Original PRs by Ivan Levkivskyi and Mitar." msgstr "" -#: ../build/NEWS:16652 ../build/NEWS:19457 +#: ../build/NEWS:16687 ../build/NEWS:19492 msgid "" "`bpo-31544 `__: The C accelerator module " "of ElementTree ignored exceptions raised when looking up TreeBuilder target " "methods in XMLParser()." msgstr "" -#: ../build/NEWS:16655 ../build/NEWS:19460 +#: ../build/NEWS:16690 ../build/NEWS:19495 msgid "" "`bpo-31234 `__: socket." "create_connection() now fixes manually a reference cycle: clear the variable " "storing the last exception on success." msgstr "" -#: ../build/NEWS:16658 ../build/NEWS:19463 +#: ../build/NEWS:16693 ../build/NEWS:19498 msgid "" "`bpo-31457 `__: LoggerAdapter objects " "can now be nested." msgstr "" -#: ../build/NEWS:16660 +#: ../build/NEWS:16695 msgid "" "`bpo-31431 `__: SSLContext." "check_hostname now automatically sets SSLContext.verify_mode to ssl." "CERT_REQUIRED instead of failing with a ValueError." msgstr "" -#: ../build/NEWS:16664 +#: ../build/NEWS:16699 msgid "" "`bpo-31233 `__: socketserver." "ThreadingMixIn now keeps a list of non-daemonic threads to wait until all " "these threads complete in server_close()." msgstr "" -#: ../build/NEWS:16667 +#: ../build/NEWS:16702 msgid "" "`bpo-28638 `__: Changed the " "implementation strategy for collections.namedtuple() to substantially reduce " @@ -30576,39 +30530,39 @@ msgid "" "Serhiy Storchaka, and Raymond Hettinger.)" msgstr "" -#: ../build/NEWS:16678 ../build/NEWS:19465 +#: ../build/NEWS:16713 ../build/NEWS:19500 msgid "" "`bpo-31400 `__: Improves SSL error " "handling to avoid losing error numbers." msgstr "" -#: ../build/NEWS:16680 +#: ../build/NEWS:16715 msgid "" "`bpo-27629 `__: Make return types of " "SSLContext.wrap_bio() and SSLContext.wrap_socket() customizable." msgstr "" -#: ../build/NEWS:16683 ../build/NEWS:19467 +#: ../build/NEWS:16718 ../build/NEWS:19502 msgid "" "`bpo-28958 `__: ssl.SSLContext() now " "uses OpenSSL error information when a context cannot be instantiated." msgstr "" -#: ../build/NEWS:16686 +#: ../build/NEWS:16721 msgid "" "`bpo-28182 `__: The SSL module now " "raises SSLCertVerificationError when OpenSSL fails to verify the peer's " "certificate. The exception contains more information about the error." msgstr "" -#: ../build/NEWS:16690 ../build/NEWS:19470 +#: ../build/NEWS:16725 ../build/NEWS:19505 msgid "" "`bpo-27340 `__: SSLSocket.sendall() now " "uses memoryview to create slices of data. This fixes support for all bytes-" "like object. It is also more efficient and avoids costly copies." msgstr "" -#: ../build/NEWS:16694 +#: ../build/NEWS:16729 msgid "" "`bpo-14191 `__: A new function " "``argparse.ArgumentParser.parse_intermixed_args`` provides the ability to " @@ -30616,32 +30570,32 @@ msgid "" "arguments." msgstr "" -#: ../build/NEWS:16699 ../build/NEWS:19474 +#: ../build/NEWS:16734 ../build/NEWS:19509 msgid "" "`bpo-31178 `__: Fix string concatenation " "bug in rare error path in the subprocess module" msgstr "" -#: ../build/NEWS:16702 ../build/NEWS:19477 +#: ../build/NEWS:16737 ../build/NEWS:19512 msgid "" "`bpo-31350 `__: Micro-optimize :func:" "`asyncio._get_running_loop` to become up to 10% faster." msgstr "" -#: ../build/NEWS:16705 ../build/NEWS:19480 ../build/NEWS:23772 +#: ../build/NEWS:16740 ../build/NEWS:19515 ../build/NEWS:23807 msgid "" "`bpo-31170 `__: expat: Update libexpat " "from 2.2.3 to 2.2.4. Fix copying of partial characters for UTF-8 input " "(libexpat bug 115): https://github.com/libexpat/libexpat/issues/115" msgstr "" -#: ../build/NEWS:16709 ../build/NEWS:19484 +#: ../build/NEWS:16744 ../build/NEWS:19519 msgid "" "`bpo-29136 `__: Add TLS 1.3 cipher " "suites and OP_NO_TLSv1_3." msgstr "" -#: ../build/NEWS:16711 +#: ../build/NEWS:16746 msgid "" "`bpo-1198569 `__: ``string.Template`` " "subclasses can optionally define ``braceidpattern`` if they want to specify " @@ -30649,7 +30603,7 @@ msgid "" "default) it falls back to ``idpattern``." msgstr "" -#: ../build/NEWS:16716 +#: ../build/NEWS:16751 msgid "" "`bpo-31326 `__: concurrent.futures." "ProcessPoolExecutor.shutdown() now explicitly closes the call queue. " @@ -30657,61 +30611,61 @@ msgid "" "prevent leaking a dangling thread." msgstr "" -#: ../build/NEWS:16720 ../build/NEWS:19495 +#: ../build/NEWS:16755 ../build/NEWS:19530 msgid "" "`bpo-27144 `__: The ``map()`` and " "``as_completed()`` iterators in ``concurrent.futures`` now avoid keeping a " "reference to yielded objects." msgstr "" -#: ../build/NEWS:16723 +#: ../build/NEWS:16758 msgid "" "`bpo-31281 `__: Fix ``fileinput." "FileInput(files, inplace=True)`` when ``files`` contain ``pathlib.Path`` " "objects." msgstr "" -#: ../build/NEWS:16726 ../build/NEWS:19498 +#: ../build/NEWS:16761 ../build/NEWS:19533 msgid "" "`bpo-10746 `__: Fix ctypes producing " "wrong :pep:`3118` type codes for integer types." msgstr "" -#: ../build/NEWS:16729 +#: ../build/NEWS:16764 msgid "" "`bpo-27584 `__: ``AF_VSOCK`` has been " "added to the socket interface which allows communication between virtual " "machines and their host." msgstr "" -#: ../build/NEWS:16732 ../build/NEWS:19501 +#: ../build/NEWS:16767 ../build/NEWS:19536 msgid "" "`bpo-22536 `__: The subprocess module " "now sets the filename when FileNotFoundError is raised on POSIX systems due " "to the executable or cwd not being found." msgstr "" -#: ../build/NEWS:16736 +#: ../build/NEWS:16771 msgid "" "`bpo-29741 `__: Update some methods in " "the _pyio module to also accept integer types. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:16739 ../build/NEWS:19505 +#: ../build/NEWS:16774 ../build/NEWS:19540 msgid "" "`bpo-31249 `__: concurrent.futures: " "WorkItem.run() used by ThreadPoolExecutor now breaks a reference cycle " "between an exception object and the WorkItem object." msgstr "" -#: ../build/NEWS:16743 ../build/NEWS:19509 +#: ../build/NEWS:16778 ../build/NEWS:19544 msgid "" "`bpo-31247 `__: xmlrpc.server now " "explicitly breaks reference cycles when using sys.exc_info() in code " "handling exceptions." msgstr "" -#: ../build/NEWS:16746 +#: ../build/NEWS:16781 msgid "" "`bpo-23835 `__: configparser: reading " "defaults in the ``ConfigParser()`` constructor is now using ``read_dict()``, " @@ -30720,7 +30674,7 @@ msgid "" "strings. Patch by James Tocknell." msgstr "" -#: ../build/NEWS:16752 ../build/NEWS:18426 +#: ../build/NEWS:16787 ../build/NEWS:18461 msgid "" "`bpo-31238 `__: pydoc: the stop() method " "of the private ServerThread class now waits until DocServer." @@ -30728,20 +30682,20 @@ msgid "" "attribute to None to break a reference cycle." msgstr "" -#: ../build/NEWS:16756 +#: ../build/NEWS:16791 msgid "" "`bpo-5001 `__: Many asserts in " "`multiprocessing` are now more informative, and some error types have been " "changed to more specific ones." msgstr "" -#: ../build/NEWS:16759 +#: ../build/NEWS:16794 msgid "" "`bpo-31109 `__: Convert zipimport to use " "Argument Clinic." msgstr "" -#: ../build/NEWS:16761 ../build/NEWS:19512 +#: ../build/NEWS:16796 ../build/NEWS:19547 msgid "" "`bpo-30102 `__: The ssl and hashlib " "modules now call OPENSSL_add_all_algorithms_noconf() on OpenSSL < 1.1.0. The " @@ -30750,20 +30704,20 @@ msgid "" "Scalet." msgstr "" -#: ../build/NEWS:16766 +#: ../build/NEWS:16801 msgid "" "`bpo-18966 `__: Non-daemonic threads " "created by a multiprocessing.Process are now joined on child exit." msgstr "" -#: ../build/NEWS:16769 +#: ../build/NEWS:16804 msgid "" "`bpo-31183 `__: `dis` now works with " "asynchronous generator and coroutine objects. Patch by George Collins based " "on diagnosis by Luciano Ramalho." msgstr "" -#: ../build/NEWS:16772 +#: ../build/NEWS:16807 msgid "" "`bpo-5001 `__: There are a number of " "uninformative asserts in the `multiprocessing` module, as noted in issue " @@ -30776,33 +30730,33 @@ msgid "" "31169). - Patch by Allen W. Smith (drallensmith on github)." msgstr "" -#: ../build/NEWS:16782 ../build/NEWS:19517 +#: ../build/NEWS:16817 ../build/NEWS:19552 msgid "" "`bpo-31185 `__: Fixed miscellaneous " "errors in asyncio speedup module." msgstr "" -#: ../build/NEWS:16784 +#: ../build/NEWS:16819 msgid "" "`bpo-31151 `__: socketserver." "ForkingMixIn.server_close() now waits until all child processes completed to " "prevent leaking zombie processes." msgstr "" -#: ../build/NEWS:16787 +#: ../build/NEWS:16822 msgid "" "`bpo-31072 `__: Add an ``include_file`` " "parameter to ``zipapp.create_archive()``" msgstr "" -#: ../build/NEWS:16790 +#: ../build/NEWS:16825 msgid "" "`bpo-24700 `__: Optimize array.array " "comparison. It is now from 10x up to 70x faster when comparing arrays " "holding values of the same integer type." msgstr "" -#: ../build/NEWS:16793 ../build/NEWS:19519 +#: ../build/NEWS:16828 ../build/NEWS:19554 msgid "" "`bpo-31135 `__: ttk: fix the destroy() " "method of LabeledScale and OptionMenu classes. Call the parent destroy() " @@ -30811,58 +30765,58 @@ msgid "" "garbage collector to destroy all widgets." msgstr "" -#: ../build/NEWS:16799 ../build/NEWS:19525 +#: ../build/NEWS:16834 ../build/NEWS:19560 msgid "" "`bpo-31107 `__: Fix `copyreg." "_slotnames()` mangled attribute calculation for classes whose name begins " "with an underscore. Patch by Shane Harvey." msgstr "" -#: ../build/NEWS:16802 +#: ../build/NEWS:16837 msgid "" "`bpo-31080 `__: Allow `logging.config." "fileConfig` to accept kwargs and/or args." msgstr "" -#: ../build/NEWS:16804 +#: ../build/NEWS:16839 msgid "" "`bpo-30897 `__: ``pathlib.Path`` objects " "now include an ``is_mount()`` method (only implemented on POSIX). This is " "similar to ``os.path.ismount(p)``. Patch by Cooper Ry Lees." msgstr "" -#: ../build/NEWS:16808 ../build/NEWS:19528 +#: ../build/NEWS:16843 ../build/NEWS:19563 msgid "" "`bpo-31061 `__: Fixed a crash when using " "asyncio and threads." msgstr "" -#: ../build/NEWS:16810 +#: ../build/NEWS:16845 msgid "" "`bpo-30987 `__: Added support for CAN " "ISO-TP protocol in the socket module." msgstr "" -#: ../build/NEWS:16812 +#: ../build/NEWS:16847 msgid "" "`bpo-30522 `__: Added a ``setStream`` " "method to ``logging.StreamHandler`` to allow the stream to be set after " "creation." msgstr "" -#: ../build/NEWS:16815 ../build/NEWS:19530 +#: ../build/NEWS:16850 ../build/NEWS:19565 msgid "" "`bpo-30502 `__: Fix handling of long " "oids in ssl. Based on patch by Christian Heimes." msgstr "" -#: ../build/NEWS:16818 +#: ../build/NEWS:16853 msgid "" "`bpo-5288 `__: Support tzinfo objects " "with sub-minute offsets." msgstr "" -#: ../build/NEWS:16820 +#: ../build/NEWS:16855 msgid "" "`bpo-30919 `__: Fix shared memory " "performance regression in multiprocessing in 3.x. Shared memory used " @@ -30870,83 +30824,83 @@ msgid "" "careful to do as little disk I/O as possible." msgstr "" -#: ../build/NEWS:16824 +#: ../build/NEWS:16859 msgid "" "`bpo-26732 `__: Fix too many fds in " "processes started with the \"forkserver\" method. A child process would " "inherit as many fds as the number of still-running children." msgstr "" -#: ../build/NEWS:16828 ../build/NEWS:19540 ../build/NEWS:23873 +#: ../build/NEWS:16863 ../build/NEWS:19575 ../build/NEWS:23908 msgid "" "`bpo-29403 `__: Fix ``unittest.mock``'s " "autospec to not fail on method-bound builtin functions. Patch by Aaron " "Gallagher." msgstr "" -#: ../build/NEWS:16831 ../build/NEWS:19543 ../build/NEWS:23876 +#: ../build/NEWS:16866 ../build/NEWS:19578 ../build/NEWS:23911 msgid "" "`bpo-30961 `__: Fix decrementing a " "borrowed reference in tracemalloc." msgstr "" -#: ../build/NEWS:16833 +#: ../build/NEWS:16868 msgid "" "`bpo-19896 `__: Fix multiprocessing." "sharedctypes to recognize typecodes ``'q'`` and ``'Q'``." msgstr "" -#: ../build/NEWS:16836 +#: ../build/NEWS:16871 msgid "" "`bpo-30946 `__: Remove obsolete code in " "readline module for platforms where GNU readline is older than 2.1 or where " "select() is not available." msgstr "" -#: ../build/NEWS:16839 ../build/NEWS:19545 +#: ../build/NEWS:16874 ../build/NEWS:19580 msgid "" "`bpo-25684 `__: Change ``ttk." "OptionMenu`` radiobuttons to be unique across instances of ``OptionMenu``." msgstr "" -#: ../build/NEWS:16842 ../build/NEWS:19548 ../build/NEWS:23878 +#: ../build/NEWS:16877 ../build/NEWS:19583 ../build/NEWS:23913 msgid "" "`bpo-30886 `__: Fix multiprocessing." "Queue.join_thread(): it now waits until the thread completes, even if the " "thread was started by the same process which created the queue." msgstr "" -#: ../build/NEWS:16846 ../build/NEWS:19552 ../build/NEWS:23882 +#: ../build/NEWS:16881 ../build/NEWS:19587 ../build/NEWS:23917 msgid "" "`bpo-29854 `__: Fix segfault in readline " "when using readline's history-size option. Patch by Nir Soffer." msgstr "" -#: ../build/NEWS:16849 +#: ../build/NEWS:16884 msgid "" "`bpo-30794 `__: Added multiprocessing." "Process.kill method to terminate using the SIGKILL signal on Unix." msgstr "" -#: ../build/NEWS:16852 ../build/NEWS:19555 +#: ../build/NEWS:16887 ../build/NEWS:19590 msgid "" "`bpo-30319 `__: socket.close() now " "ignores ECONNRESET error." msgstr "" -#: ../build/NEWS:16854 ../build/NEWS:19557 +#: ../build/NEWS:16889 ../build/NEWS:19592 msgid "" "`bpo-30828 `__: Fix out of bounds write " "in `asyncio.CFuture.remove_done_callback()`." msgstr "" -#: ../build/NEWS:16857 +#: ../build/NEWS:16892 msgid "" "`bpo-30302 `__: Use keywords in the " "``repr`` of ``datetime.timedelta``." msgstr "" -#: ../build/NEWS:16859 ../build/NEWS:19560 ../build/NEWS:23885 +#: ../build/NEWS:16894 ../build/NEWS:19595 ../build/NEWS:23920 msgid "" "`bpo-30807 `__: signal.setitimer() may " "disable the timer when passed a tiny value. Tiny values (such as 1e-6) are " @@ -30956,20 +30910,20 @@ msgid "" "timer instead of (re-)scheduling it." msgstr "" -#: ../build/NEWS:16866 ../build/NEWS:19567 ../build/NEWS:23892 +#: ../build/NEWS:16901 ../build/NEWS:19602 ../build/NEWS:23927 msgid "" "`bpo-30441 `__: Fix bug when modifying " "os.environ while iterating over it" msgstr "" -#: ../build/NEWS:16868 +#: ../build/NEWS:16903 msgid "" "`bpo-29585 `__: Avoid importing " "``sysconfig`` from ``site`` to improve startup speed. Python startup is " "about 5% faster on Linux and 30% faster on macOS." msgstr "" -#: ../build/NEWS:16871 +#: ../build/NEWS:16906 msgid "" "`bpo-29293 `__: Add missing parameter \"n" "\" on multiprocessing.Condition.notify(). The doc claims multiprocessing." @@ -30978,19 +30932,19 @@ msgid "" "that threading.Condition.notify() accepts." msgstr "" -#: ../build/NEWS:16877 ../build/NEWS:19569 ../build/NEWS:23894 +#: ../build/NEWS:16912 ../build/NEWS:19604 ../build/NEWS:23929 msgid "" "`bpo-30532 `__: Fix email header value " "parser dropping folding white space in certain cases." msgstr "" -#: ../build/NEWS:16880 +#: ../build/NEWS:16915 msgid "" "`bpo-30596 `__: Add a ``close()`` method " "to ``multiprocessing.Process``." msgstr "" -#: ../build/NEWS:16882 ../build/NEWS:19491 +#: ../build/NEWS:16917 ../build/NEWS:19526 msgid "" "`bpo-9146 `__: Fix a segmentation fault " "in _hashopenssl when standard hash functions such as md5 are not available " @@ -30998,44 +30952,44 @@ msgid "" "environments." msgstr "" -#: ../build/NEWS:16886 ../build/NEWS:20301 ../build/NEWS:23897 +#: ../build/NEWS:16921 ../build/NEWS:20336 ../build/NEWS:23932 msgid "" "`bpo-29169 `__: Update zlib to 1.2.11." msgstr "" -#: ../build/NEWS:16888 ../build/NEWS:19533 ../build/NEWS:23785 +#: ../build/NEWS:16923 ../build/NEWS:19568 ../build/NEWS:23820 msgid "" "`bpo-30119 `__: ftplib.FTP.putline() now " "throws ValueError on commands that contains CR or LF. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:16891 ../build/NEWS:19572 ../build/NEWS:23899 +#: ../build/NEWS:16926 ../build/NEWS:19607 ../build/NEWS:23934 msgid "" "`bpo-30879 `__: os.listdir() and os." "scandir() now emit bytes names when called with bytes-like argument." msgstr "" -#: ../build/NEWS:16894 ../build/NEWS:19575 ../build/NEWS:23902 +#: ../build/NEWS:16929 ../build/NEWS:19610 ../build/NEWS:23937 msgid "" "`bpo-30746 `__: Prohibited the '=' " "character in environment variable names in ``os.putenv()`` and ``os." "spawn*()``." msgstr "" -#: ../build/NEWS:16897 +#: ../build/NEWS:16932 msgid "" "`bpo-30664 `__: The description of a " "unittest subtest now preserves the order of keyword arguments of TestCase." "subTest()." msgstr "" -#: ../build/NEWS:16900 +#: ../build/NEWS:16935 msgid "" "`bpo-21071 `__: struct.Struct.format " "type is now :class:`str` instead of :class:`bytes`." msgstr "" -#: ../build/NEWS:16903 ../build/NEWS:19486 +#: ../build/NEWS:16938 ../build/NEWS:19521 msgid "" "`bpo-29212 `__: Fix concurrent.futures." "thread.ThreadPoolExecutor threads to have a non repr() based thread name by " @@ -31043,44 +30997,44 @@ msgid "" "themselves as \"ThreadPoolExecutor-y_n\"." msgstr "" -#: ../build/NEWS:16908 ../build/NEWS:19578 ../build/NEWS:23905 +#: ../build/NEWS:16943 ../build/NEWS:19613 ../build/NEWS:23940 msgid "" "`bpo-29755 `__: Fixed the lgettext() " "family of functions in the gettext module. They now always return bytes." msgstr "" -#: ../build/NEWS:16911 ../build/NEWS:19904 +#: ../build/NEWS:16946 ../build/NEWS:19939 msgid "" "`bpo-30616 `__: Functional API of enum " "allows to create empty enums. Patched by Dong-hee Na" msgstr "" -#: ../build/NEWS:16914 ../build/NEWS:19907 +#: ../build/NEWS:16949 ../build/NEWS:19942 msgid "" "`bpo-30038 `__: Fix race condition " "between signal delivery and wakeup file descriptor. Patch by Nathaniel Smith." msgstr "" -#: ../build/NEWS:16917 ../build/NEWS:19910 +#: ../build/NEWS:16952 ../build/NEWS:19945 msgid "" "`bpo-23894 `__: lib2to3 now recognizes " "``rb'...'`` and ``f'...'`` strings." msgstr "" -#: ../build/NEWS:16919 +#: ../build/NEWS:16954 msgid "" "`bpo-24744 `__: pkgutil.walk_packages " "function now raises ValueError if *path* is a string. Patch by Sanyam " "Khurana." msgstr "" -#: ../build/NEWS:16922 ../build/NEWS:23922 +#: ../build/NEWS:16957 ../build/NEWS:23957 msgid "" "`bpo-24484 `__: Avoid race condition in " "multiprocessing cleanup." msgstr "" -#: ../build/NEWS:16924 +#: ../build/NEWS:16959 msgid "" "`bpo-30589 `__: Fix multiprocessing." "Process.exitcode to return the opposite of the signal number when the " @@ -31088,174 +31042,174 @@ msgid "" "method." msgstr "" -#: ../build/NEWS:16928 ../build/NEWS:19941 ../build/NEWS:23924 +#: ../build/NEWS:16963 ../build/NEWS:19976 ../build/NEWS:23959 msgid "" "`bpo-28994 `__: The traceback no longer " "displayed for SystemExit raised in a callback registered by atexit." msgstr "" -#: ../build/NEWS:16931 ../build/NEWS:19944 ../build/NEWS:23927 +#: ../build/NEWS:16966 ../build/NEWS:19979 ../build/NEWS:23962 msgid "" "`bpo-30508 `__: Don't log exceptions if " "Task/Future \"cancel()\" method was called." msgstr "" -#: ../build/NEWS:16934 +#: ../build/NEWS:16969 msgid "" "`bpo-30645 `__: Fix path calculation in " "`imp.load_package()`, fixing it for cases when a package is only shipped " "with bytecodes. Patch by Alexandru Ardelean." msgstr "" -#: ../build/NEWS:16938 +#: ../build/NEWS:16973 msgid "" "`bpo-11822 `__: The dis.dis() function " "now is able to disassemble nested code objects." msgstr "" -#: ../build/NEWS:16941 +#: ../build/NEWS:16976 msgid "" "`bpo-30624 `__: selectors does not take " "KeyboardInterrupt and SystemExit into account, leaving a fd in a bad state " "in case of error. Patch by Giampaolo Rodola'." msgstr "" -#: ../build/NEWS:16945 ../build/NEWS:19536 +#: ../build/NEWS:16980 ../build/NEWS:19571 msgid "" "`bpo-30595 `__: multiprocessing.Queue." "get() with a timeout now polls its reader in non-blocking mode if it " "succeeded to acquire the lock but the acquire took longer than the timeout." msgstr "" -#: ../build/NEWS:16949 ../build/NEWS:19947 ../build/NEWS:23930 +#: ../build/NEWS:16984 ../build/NEWS:19982 ../build/NEWS:23965 msgid "" "`bpo-28556 `__: Updates to typing " "module: Add generic AsyncContextManager, add support for ContextManager on " "all versions. Original PRs by Jelle Zijlstra and Ivan Levkivskyi" msgstr "" -#: ../build/NEWS:16953 ../build/NEWS:19926 +#: ../build/NEWS:16988 ../build/NEWS:19961 msgid "" "`bpo-30605 `__: re.compile() no longer " "raises a BytesWarning when compiling a bytes instance with misplaced inline " "modifier. Patch by Roy Williams." msgstr "" -#: ../build/NEWS:16956 ../build/NEWS:19951 ../build/NEWS:23934 +#: ../build/NEWS:16991 ../build/NEWS:19986 ../build/NEWS:23969 msgid "" "`bpo-29870 `__: Fix ssl sockets leaks " "when connection is aborted in asyncio/ssl implementation. Patch by Michaël " "Sghaïer." msgstr "" -#: ../build/NEWS:16959 ../build/NEWS:19954 ../build/NEWS:23937 +#: ../build/NEWS:16994 ../build/NEWS:19989 ../build/NEWS:23972 msgid "" "`bpo-29743 `__: Closing transport during " "handshake process leaks open socket. Patch by Nikolay Kim" msgstr "" -#: ../build/NEWS:16962 ../build/NEWS:19957 ../build/NEWS:23940 +#: ../build/NEWS:16997 ../build/NEWS:19992 ../build/NEWS:23975 msgid "" "`bpo-27585 `__: Fix waiter cancellation " "in asyncio.Lock. Patch by Mathieu Sornay." msgstr "" -#: ../build/NEWS:16965 +#: ../build/NEWS:17000 msgid "" "`bpo-30014 `__: modify() method of " "poll(), epoll() and devpoll() based classes of selectors module is around " "10% faster. Patch by Giampaolo Rodola'." msgstr "" -#: ../build/NEWS:16968 ../build/NEWS:19960 ../build/NEWS:23943 +#: ../build/NEWS:17003 ../build/NEWS:19995 ../build/NEWS:23978 msgid "" "`bpo-30418 `__: On Windows, subprocess." "Popen.communicate() now also ignore EINVAL on stdin.write() if the child " "process is still running but closed the pipe." msgstr "" -#: ../build/NEWS:16972 +#: ../build/NEWS:17007 msgid "" "`bpo-30463 `__: Addded empty __slots__ " "to abc.ABC. This allows subclassers to deny __dict__ and __weakref__ " "creation. Patch by Aaron Hall." msgstr "" -#: ../build/NEWS:16975 +#: ../build/NEWS:17010 msgid "" "`bpo-30520 `__: Loggers are now " "pickleable." msgstr "" -#: ../build/NEWS:16977 ../build/NEWS:19971 +#: ../build/NEWS:17012 ../build/NEWS:20006 msgid "" "`bpo-30557 `__: faulthandler now " "correctly filters and displays exception codes on Windows" msgstr "" -#: ../build/NEWS:16980 +#: ../build/NEWS:17015 msgid "" "`bpo-30526 `__: Add TextIOWrapper." "reconfigure() and a TextIOWrapper.write_through attribute." msgstr "" -#: ../build/NEWS:16983 +#: ../build/NEWS:17018 msgid "" "`bpo-30245 `__: Fix possible overflow " "when organize struct.pack_into error message. Patch by Yuan Liu." msgstr "" -#: ../build/NEWS:16986 ../build/NEWS:19974 ../build/NEWS:23947 +#: ../build/NEWS:17021 ../build/NEWS:20009 ../build/NEWS:23982 msgid "" "`bpo-30378 `__: Fix the problem that " "logging.handlers.SysLogHandler cannot handle IPv6 addresses." msgstr "" -#: ../build/NEWS:16989 +#: ../build/NEWS:17024 msgid "" "`bpo-16500 `__: Allow registering at-" "fork handlers." msgstr "" -#: ../build/NEWS:16991 +#: ../build/NEWS:17026 msgid "" "`bpo-30470 `__: Deprecate invalid ctypes " "call protection on Windows. Patch by Mariatta Wijaya." msgstr "" -#: ../build/NEWS:16994 ../build/NEWS:19980 ../build/NEWS:23953 +#: ../build/NEWS:17029 ../build/NEWS:20015 ../build/NEWS:23988 msgid "" "`bpo-30414 `__: multiprocessing.Queue." "_feed background running thread do not break from main loop on exception." msgstr "" -#: ../build/NEWS:16997 ../build/NEWS:19983 ../build/NEWS:23956 +#: ../build/NEWS:17032 ../build/NEWS:20018 ../build/NEWS:23991 msgid "" "`bpo-30003 `__: Fix handling escape " "characters in HZ codec. Based on patch by Ma Lin." msgstr "" -#: ../build/NEWS:17000 ../build/NEWS:19915 ../build/NEWS:23915 +#: ../build/NEWS:17035 ../build/NEWS:19950 ../build/NEWS:23950 msgid "" "`bpo-30149 `__: inspect.signature() now " "supports callables with variable-argument parameters wrapped with " "partialmethod. Patch by Dong-hee Na." msgstr "" -#: ../build/NEWS:17004 +#: ../build/NEWS:17039 msgid "" "`bpo-30436 `__: importlib.find_spec() " "raises ModuleNotFoundError instead of AttributeError if the specified parent " "module is not a package (i.e. lacks a __path__ attribute)." msgstr "" -#: ../build/NEWS:17008 ../build/NEWS:19986 ../build/NEWS:23959 +#: ../build/NEWS:17043 ../build/NEWS:20021 ../build/NEWS:23994 msgid "" "`bpo-30301 `__: Fix AttributeError when " "using SimpleQueue.empty() under *spawn* and *forkserver* start methods." msgstr "" -#: ../build/NEWS:17011 ../build/NEWS:19993 ../build/NEWS:23966 +#: ../build/NEWS:17046 ../build/NEWS:20028 ../build/NEWS:24001 msgid "" "`bpo-30375 `__: Warnings emitted when " "compile a regular expression now always point to the line in the user code. " @@ -31263,7 +31217,7 @@ msgid "" "inside of groups or conditionals." msgstr "" -#: ../build/NEWS:17015 ../build/NEWS:19989 ../build/NEWS:23962 +#: ../build/NEWS:17050 ../build/NEWS:20024 ../build/NEWS:23997 msgid "" "`bpo-30329 `__: imaplib and poplib now " "catch the Windows socket WSAEINVAL error (code 10022) on " @@ -31271,7 +31225,7 @@ msgid "" "sometimes on SSL connections." msgstr "" -#: ../build/NEWS:17019 +#: ../build/NEWS:17054 msgid "" "`bpo-29196 `__: Removed previously " "deprecated in Python 2.4 classes Plist, Dict and _InternalDict in the " @@ -31280,27 +31234,27 @@ msgid "" "access to access items of these dictionaries." msgstr "" -#: ../build/NEWS:17024 +#: ../build/NEWS:17059 msgid "" "`bpo-9850 `__: The :mod:`macpath` is now " "deprecated and will be removed in Python 3.8." msgstr "" -#: ../build/NEWS:17027 +#: ../build/NEWS:17062 msgid "" "`bpo-30299 `__: Compiling regular " "expression in debug mode on CPython now displays the compiled bytecode in " "human readable form." msgstr "" -#: ../build/NEWS:17030 ../build/NEWS:19997 ../build/NEWS:23970 +#: ../build/NEWS:17065 ../build/NEWS:20032 ../build/NEWS:24005 msgid "" "`bpo-30048 `__: Fixed ``Task.cancel()`` " "can be ignored when the task is running coroutine and the coroutine returned " "without any more ``await``." msgstr "" -#: ../build/NEWS:17033 ../build/NEWS:20000 +#: ../build/NEWS:17068 ../build/NEWS:20035 msgid "" "`bpo-30266 `__: contextlib." "AbstractContextManager now supports anti-registration by setting __enter__ = " @@ -31308,14 +31262,14 @@ msgid "" "`__. Patch by Jelle Zijlstra." msgstr "" -#: ../build/NEWS:17037 +#: ../build/NEWS:17072 msgid "" "`bpo-30340 `__: Enhanced regular " "expressions optimization. This increased the performance of matching some " "patterns up to 25 times." msgstr "" -#: ../build/NEWS:17040 ../build/NEWS:20004 +#: ../build/NEWS:17075 ../build/NEWS:20039 msgid "" "`bpo-30298 `__: Weaken the condition of " "deprecation warnings for inline modifiers. Now allowed several subsequential " @@ -31324,19 +31278,19 @@ msgid "" "inline modifiers (e.g. ``'(?x) (?i) (?s)...'``)." msgstr "" -#: ../build/NEWS:17046 +#: ../build/NEWS:17081 msgid "" "`bpo-30285 `__: Optimized case-" "insensitive matching and searching of regular expressions." msgstr "" -#: ../build/NEWS:17049 ../build/NEWS:20010 ../build/NEWS:23973 +#: ../build/NEWS:17084 ../build/NEWS:20045 ../build/NEWS:24008 msgid "" "`bpo-29990 `__: Fix range checking in " "GB18030 decoder. Original patch by Ma Lin." msgstr "" -#: ../build/NEWS:17052 +#: ../build/NEWS:17087 msgid "" "`bpo-29979 `__: rewrite cgi." "parse_multipart, reusing the FieldStorage class and making its results " @@ -31344,7 +31298,7 @@ msgid "" "Patch by Pierre Quentel." msgstr "" -#: ../build/NEWS:17056 ../build/NEWS:20016 ../build/NEWS:23979 +#: ../build/NEWS:17091 ../build/NEWS:20051 ../build/NEWS:24014 msgid "" "`bpo-30243 `__: Removed the __init__ " "methods of _json's scanner and encoder. Misusing them could cause memory " @@ -31352,7 +31306,7 @@ msgid "" "initialized in the __new__ methods." msgstr "" -#: ../build/NEWS:17060 +#: ../build/NEWS:17095 msgid "" "`bpo-30215 `__: Compiled regular " "expression objects with the re.LOCALE flag no longer depend on the locale at " @@ -31360,39 +31314,39 @@ msgid "" "matching." msgstr "" -#: ../build/NEWS:17064 ../build/NEWS:20020 ../build/NEWS:23983 +#: ../build/NEWS:17099 ../build/NEWS:20055 ../build/NEWS:24018 msgid "" "`bpo-30185 `__: Avoid KeyboardInterrupt " "tracebacks in forkserver helper process when Ctrl-C is received." msgstr "" -#: ../build/NEWS:17067 +#: ../build/NEWS:17102 msgid "" "`bpo-30103 `__: binascii.b2a_uu() and uu." "encode() now support using ``'`'`` as zero instead of space." msgstr "" -#: ../build/NEWS:17070 ../build/NEWS:20023 ../build/NEWS:23986 +#: ../build/NEWS:17105 ../build/NEWS:20058 ../build/NEWS:24021 msgid "" "`bpo-28556 `__: Various updates to " "typing module: add typing.NoReturn type, use WrapperDescriptorType, minor " "bug-fixes. Original PRs by Jim Fasarakis-Hilliard and Ivan Levkivskyi." msgstr "" -#: ../build/NEWS:17074 ../build/NEWS:20027 ../build/NEWS:23990 +#: ../build/NEWS:17109 ../build/NEWS:20062 ../build/NEWS:24025 msgid "" "`bpo-30205 `__: Fix getsockname() for " "unbound AF_UNIX sockets on Linux." msgstr "" -#: ../build/NEWS:17076 +#: ../build/NEWS:17111 msgid "" "`bpo-30228 `__: The seek() and tell() " "methods of io.FileIO now set the internal seekable attribute to avoid one " "syscall on open() (in buffered or text mode)." msgstr "" -#: ../build/NEWS:17080 +#: ../build/NEWS:17115 msgid "" "`bpo-30190 `__: unittest's " "assertAlmostEqual and assertNotAlmostEqual provide a better message in case " @@ -31400,38 +31354,38 @@ msgid "" "(patch by Giampaolo Rodola')" msgstr "" -#: ../build/NEWS:17084 +#: ../build/NEWS:17119 msgid "" "`bpo-30101 `__: Add support for curses." "A_ITALIC." msgstr "" -#: ../build/NEWS:17086 ../build/NEWS:19964 +#: ../build/NEWS:17121 ../build/NEWS:19999 msgid "" "`bpo-29822 `__: inspect.isabstract() now " "works during __init_subclass__. Patch by Nate Soares." msgstr "" -#: ../build/NEWS:17089 ../build/NEWS:19977 ../build/NEWS:23950 +#: ../build/NEWS:17124 ../build/NEWS:20012 ../build/NEWS:23985 msgid "" "`bpo-29960 `__: Preserve generator state " "when _random.Random.setstate() raises an exception. Patch by Bryan Olson." msgstr "" -#: ../build/NEWS:17092 ../build/NEWS:20029 ../build/NEWS:23992 +#: ../build/NEWS:17127 ../build/NEWS:20064 ../build/NEWS:24027 msgid "" "`bpo-30070 `__: Fixed leaks and crashes " "in errors handling in the parser module." msgstr "" -#: ../build/NEWS:17095 +#: ../build/NEWS:17130 msgid "" "`bpo-22352 `__: Column widths in the " "output of dis.dis() are now adjusted for large line numbers and instruction " "offsets." msgstr "" -#: ../build/NEWS:17098 ../build/NEWS:20032 ../build/NEWS:23995 +#: ../build/NEWS:17133 ../build/NEWS:20067 ../build/NEWS:24030 msgid "" "`bpo-30061 `__: Fixed crashes in IOBase " "methods __next__() and readlines() when readline() or __next__() " @@ -31440,39 +31394,39 @@ msgid "" "PyMapping_Size()." msgstr "" -#: ../build/NEWS:17103 +#: ../build/NEWS:17138 msgid "" "`bpo-30218 `__: Fix PathLike support for " "shutil.unpack_archive. Patch by Jelle Zijlstra." msgstr "" -#: ../build/NEWS:17106 +#: ../build/NEWS:17141 msgid "" "`bpo-10076 `__: Compiled regular " "expression and match objects in the re module now support copy.copy() and " "copy.deepcopy() (they are considered atomic)." msgstr "" -#: ../build/NEWS:17109 ../build/NEWS:20041 ../build/NEWS:24000 +#: ../build/NEWS:17144 ../build/NEWS:20076 ../build/NEWS:24035 msgid "" "`bpo-30068 `__: _io._IOBase.readlines " "will check if it's closed first when hint is present." msgstr "" -#: ../build/NEWS:17112 ../build/NEWS:20044 ../build/NEWS:24003 +#: ../build/NEWS:17147 ../build/NEWS:20079 ../build/NEWS:24038 msgid "" "`bpo-29694 `__: Fixed race condition in " "pathlib mkdir with flags parents=True. Patch by Armin Rigo." msgstr "" -#: ../build/NEWS:17115 ../build/NEWS:20047 ../build/NEWS:24006 +#: ../build/NEWS:17150 ../build/NEWS:20082 ../build/NEWS:24041 msgid "" "`bpo-29692 `__: Fixed arbitrary " "unchaining of RuntimeError exceptions in contextlib.contextmanager. Patch " "by Siddharth Velankar." msgstr "" -#: ../build/NEWS:17118 +#: ../build/NEWS:17153 msgid "" "`bpo-26187 `__: Test that sqlite3 trace " "callback is not called multiple times when schema is changing. Indirectly " @@ -31480,70 +31434,70 @@ msgid "" "python.org/issue9303>`__. Patch by Aviv Palivoda." msgstr "" -#: ../build/NEWS:17122 ../build/NEWS:20037 +#: ../build/NEWS:17157 ../build/NEWS:20072 msgid "" "`bpo-30017 `__: Allowed calling the " "close() method of the zip entry writer object multiple times. Writing to a " "closed writer now always produces a ValueError." msgstr "" -#: ../build/NEWS:17126 ../build/NEWS:20050 ../build/NEWS:24009 +#: ../build/NEWS:17161 ../build/NEWS:20085 ../build/NEWS:24044 msgid "" "`bpo-29998 `__: Pickling and copying " "ImportError now preserves name and path attributes." msgstr "" -#: ../build/NEWS:17129 +#: ../build/NEWS:17164 msgid "" "`bpo-29995 `__: re.escape() now escapes " "only regex special characters." msgstr "" -#: ../build/NEWS:17131 +#: ../build/NEWS:17166 msgid "" "`bpo-29962 `__: Add math.remainder " "operation, implementing remainder as specified in IEEE 754." msgstr "" -#: ../build/NEWS:17134 +#: ../build/NEWS:17169 msgid "" "`bpo-29649 `__: Improve struct." "pack_into() exception messages for problems with the buffer size and " "offset. Patch by Andrew Nester." msgstr "" -#: ../build/NEWS:17137 +#: ../build/NEWS:17172 msgid "" "`bpo-29654 `__: Support If-Modified-" "Since HTTP header (browser cache). Patch by Pierre Quentel." msgstr "" -#: ../build/NEWS:17140 ../build/NEWS:19923 ../build/NEWS:23919 +#: ../build/NEWS:17175 ../build/NEWS:19958 ../build/NEWS:23954 msgid "" "`bpo-29931 `__: Fixed comparison check " "for ipaddress.ip_interface objects. Patch by Sanjay Sundaresan." msgstr "" -#: ../build/NEWS:17143 ../build/NEWS:20053 +#: ../build/NEWS:17178 ../build/NEWS:20088 msgid "" "`bpo-29953 `__: Fixed memory leaks in " "the replace() method of datetime and time objects when pass out of bound " "fold argument." msgstr "" -#: ../build/NEWS:17146 ../build/NEWS:20056 ../build/NEWS:24012 +#: ../build/NEWS:17181 ../build/NEWS:20091 ../build/NEWS:24047 msgid "" "`bpo-29942 `__: Fix a crash in itertools." "chain.from_iterable when encountering long runs of empty iterables." msgstr "" -#: ../build/NEWS:17149 +#: ../build/NEWS:17184 msgid "" "`bpo-10030 `__: Sped up reading " "encrypted ZIP files by 2 times." msgstr "" -#: ../build/NEWS:17151 +#: ../build/NEWS:17186 msgid "" "`bpo-29204 `__: Element.getiterator() " "and the html parameter of XMLParser() were deprecated only in the " @@ -31551,20 +31505,20 @@ msgid "" "emits a deprecation warning." msgstr "" -#: ../build/NEWS:17155 ../build/NEWS:20059 ../build/NEWS:24015 +#: ../build/NEWS:17190 ../build/NEWS:20094 ../build/NEWS:24050 msgid "" "`bpo-27863 `__: Fixed multiple crashes " "in ElementTree caused by race conditions and wrong types." msgstr "" -#: ../build/NEWS:17158 +#: ../build/NEWS:17193 msgid "" "`bpo-25996 `__: Added support of file " "descriptors in os.scandir() on Unix. os.fwalk() is sped up by 2 times by " "using os.scandir()." msgstr "" -#: ../build/NEWS:17161 ../build/NEWS:20062 ../build/NEWS:24018 +#: ../build/NEWS:17196 ../build/NEWS:20097 ../build/NEWS:24053 msgid "" "`bpo-28699 `__: Fixed a bug in pools in " "multiprocessing.pool that raising an exception at the very first of an " @@ -31572,253 +31526,253 @@ msgid "" "Potts and Xiang Zhang." msgstr "" -#: ../build/NEWS:17165 ../build/NEWS:19912 ../build/NEWS:23912 +#: ../build/NEWS:17200 ../build/NEWS:19947 ../build/NEWS:23947 msgid "" "`bpo-23890 `__: unittest.TestCase." "assertRaises() now manually breaks a reference cycle to not keep objects " "alive longer than expected." msgstr "" -#: ../build/NEWS:17168 +#: ../build/NEWS:17203 msgid "" "`bpo-29901 `__: The zipapp module now " "supports general path-like objects, not just pathlib.Path." msgstr "" -#: ../build/NEWS:17171 ../build/NEWS:20066 ../build/NEWS:24022 +#: ../build/NEWS:17206 ../build/NEWS:20101 ../build/NEWS:24057 msgid "" "`bpo-25803 `__: Avoid incorrect errors " "raised by Path.mkdir(exist_ok=True) when the OS gives priority to errors " "such as EACCES over EEXIST." msgstr "" -#: ../build/NEWS:17174 ../build/NEWS:20069 ../build/NEWS:24025 +#: ../build/NEWS:17209 ../build/NEWS:20104 ../build/NEWS:24060 msgid "" "`bpo-29861 `__: Release references to " "tasks, their arguments and their results as soon as they are finished in " "multiprocessing.Pool." msgstr "" -#: ../build/NEWS:17177 +#: ../build/NEWS:17212 msgid "" "`bpo-19930 `__: The mode argument of os." "makedirs() no longer affects the file permission bits of newly-created " "intermediate-level directories." msgstr "" -#: ../build/NEWS:17180 ../build/NEWS:20072 ../build/NEWS:24028 +#: ../build/NEWS:17215 ../build/NEWS:20107 ../build/NEWS:24063 msgid "" "`bpo-29884 `__: faulthandler: Restore " "the old sigaltstack during teardown. Patch by Christophe Zeitouny." msgstr "" -#: ../build/NEWS:17183 ../build/NEWS:20075 ../build/NEWS:24031 +#: ../build/NEWS:17218 ../build/NEWS:20110 ../build/NEWS:24066 msgid "" "`bpo-25455 `__: Fixed crashes in repr of " "recursive buffered file-like objects." msgstr "" -#: ../build/NEWS:17185 ../build/NEWS:20077 ../build/NEWS:24033 +#: ../build/NEWS:17220 ../build/NEWS:20112 ../build/NEWS:24068 msgid "" "`bpo-29800 `__: Fix crashes in partial." "__repr__ if the keys of partial.keywords are not strings. Patch by Michael " "Seifert." msgstr "" -#: ../build/NEWS:17188 ../build/NEWS:20083 ../build/NEWS:24039 +#: ../build/NEWS:17223 ../build/NEWS:20118 ../build/NEWS:24074 msgid "" "`bpo-8256 `__: Fixed possible failing or " "crashing input() if attributes \"encoding\" or \"errors\" of sys.stdin or " "sys.stdout are not set or are not strings." msgstr "" -#: ../build/NEWS:17192 +#: ../build/NEWS:17227 msgid "" "`bpo-28692 `__: Using non-integer value " "for selecting a plural form in gettext is now deprecated." msgstr "" -#: ../build/NEWS:17195 +#: ../build/NEWS:17230 msgid "" "`bpo-26121 `__: Use C library " "implementation for math functions erf() and erfc()." msgstr "" -#: ../build/NEWS:17198 +#: ../build/NEWS:17233 msgid "" "`bpo-29619 `__: os.stat() and os." "DirEntry.inode() now convert inode (st_ino) using unsigned integers." msgstr "" -#: ../build/NEWS:17201 +#: ../build/NEWS:17236 msgid "" "`bpo-28298 `__: Fix a bug that prevented " "array 'Q', 'L' and 'I' from accepting big intables (objects that have " "__int__) as elements." msgstr "" -#: ../build/NEWS:17204 +#: ../build/NEWS:17239 msgid "" "`bpo-29645 `__: Speed up importing the " "webbrowser module. webbrowser.register() is now thread-safe." msgstr "" -#: ../build/NEWS:17207 ../build/NEWS:20091 +#: ../build/NEWS:17242 ../build/NEWS:20126 msgid "" "`bpo-28231 `__: The zipfile module now " "accepts path-like objects for external paths." msgstr "" -#: ../build/NEWS:17210 ../build/NEWS:20094 +#: ../build/NEWS:17245 ../build/NEWS:20129 msgid "" "`bpo-26915 `__: index() and count() " "methods of collections.abc.Sequence now check identity before checking " "equality when do comparisons." msgstr "" -#: ../build/NEWS:17213 +#: ../build/NEWS:17248 msgid "" "`bpo-28682 `__: Added support for bytes " "paths in os.fwalk()." msgstr "" -#: ../build/NEWS:17215 +#: ../build/NEWS:17250 msgid "" "`bpo-29728 `__: Add new :data:`socket." "TCP_NOTSENT_LOWAT` (Linux 3.12) constant. Patch by Nathaniel J. Smith." msgstr "" -#: ../build/NEWS:17218 ../build/NEWS:20303 +#: ../build/NEWS:17253 ../build/NEWS:20338 msgid "" "`bpo-29623 `__: Allow use of path-like " "object as a single argument in ConfigParser.read(). Patch by David Ellis." msgstr "" -#: ../build/NEWS:17221 +#: ../build/NEWS:17256 msgid "" "`bpo-9303 `__: Migrate sqlite3 module to " "_v2 API. Patch by Aviv Palivoda." msgstr "" -#: ../build/NEWS:17223 ../build/NEWS:20306 +#: ../build/NEWS:17258 ../build/NEWS:20341 msgid "" "`bpo-28963 `__: Fix out of bound " "iteration in asyncio.Future.remove_done_callback implemented in C." msgstr "" -#: ../build/NEWS:17226 ../build/NEWS:20309 ../build/NEWS:24051 +#: ../build/NEWS:17261 ../build/NEWS:20344 ../build/NEWS:24086 msgid "" "`bpo-29704 `__: asyncio.subprocess." "SubprocessStreamProtocol no longer closes before all pipes are closed." msgstr "" -#: ../build/NEWS:17229 ../build/NEWS:20312 +#: ../build/NEWS:17264 ../build/NEWS:20347 msgid "" "`bpo-29271 `__: Fix Task.current_task " "and Task.all_tasks implemented in C to accept None argument as their pure " "Python implementation." msgstr "" -#: ../build/NEWS:17232 ../build/NEWS:20315 ../build/NEWS:24054 +#: ../build/NEWS:17267 ../build/NEWS:20350 ../build/NEWS:24089 msgid "" "`bpo-29703 `__: Fix asyncio to support " "instantiation of new event loops in child processes." msgstr "" -#: ../build/NEWS:17235 ../build/NEWS:20097 ../build/NEWS:24047 +#: ../build/NEWS:17270 ../build/NEWS:20132 ../build/NEWS:24082 msgid "" "`bpo-29615 `__: SimpleXMLRPCDispatcher " "no longer chains KeyError (or any other exception) to exception(s) raised in " "the dispatched methods. Patch by Petr Motejlek." msgstr "" -#: ../build/NEWS:17239 +#: ../build/NEWS:17274 msgid "" "`bpo-7769 `__: Method register_function() " "of xmlrpc.server.SimpleXMLRPCDispatcher and its subclasses can now be used " "as a decorator." msgstr "" -#: ../build/NEWS:17243 ../build/NEWS:20318 ../build/NEWS:24057 +#: ../build/NEWS:17278 ../build/NEWS:20353 ../build/NEWS:24092 msgid "" "`bpo-29376 `__: Fix assertion error in " "threading._DummyThread.is_alive()." msgstr "" -#: ../build/NEWS:17245 ../build/NEWS:20320 +#: ../build/NEWS:17280 ../build/NEWS:20355 msgid "" "`bpo-28624 `__: Add a test that checks " "that cwd parameter of Popen() accepts PathLike objects. Patch by Sayan " "Chowdhury." msgstr "" -#: ../build/NEWS:17248 ../build/NEWS:20323 +#: ../build/NEWS:17283 ../build/NEWS:20358 msgid "" "`bpo-28518 `__: Start a transaction " "implicitly before a DML statement. Patch by Aviv Palivoda." msgstr "" -#: ../build/NEWS:17251 ../build/NEWS:20080 ../build/NEWS:24036 +#: ../build/NEWS:17286 ../build/NEWS:20115 ../build/NEWS:24071 msgid "" "`bpo-29742 `__: get_extra_info() raises " "exception if get called on closed ssl transport. Patch by Nikolay Kim." msgstr "" -#: ../build/NEWS:17254 +#: ../build/NEWS:17289 msgid "" "`bpo-16285 `__: urllib.parse.quote is " "now based on RFC 3986 and hence includes '~' in the set of characters that " "is not quoted by default. Patch by Christian Theune and Ratnadeep Debnath." msgstr "" -#: ../build/NEWS:17258 ../build/NEWS:20326 ../build/NEWS:24065 +#: ../build/NEWS:17293 ../build/NEWS:20361 ../build/NEWS:24100 msgid "" "`bpo-29532 `__: Altering a kwarg " "dictionary passed to functools.partial() no longer affects a partial object " "after creation." msgstr "" -#: ../build/NEWS:17261 ../build/NEWS:20329 ../build/NEWS:24059 +#: ../build/NEWS:17296 ../build/NEWS:20364 ../build/NEWS:24094 msgid "" "`bpo-29110 `__: Fix file object leak in " "aifc.open() when file is given as a filesystem path and is not in valid AIFF " "format. Patch by Anthony Zhang." msgstr "" -#: ../build/NEWS:17264 +#: ../build/NEWS:17299 msgid "" "`bpo-22807 `__: Add uuid.SafeUUID and " "uuid.UUID.is_safe to relay information from the platform about whether " "generated UUIDs are generated with a multiprocessing safe method." msgstr "" -#: ../build/NEWS:17268 +#: ../build/NEWS:17303 msgid "" "`bpo-29576 `__: Improve some " "deprecations in importlib. Some deprecated methods now emit " "DeprecationWarnings and have better descriptive messages." msgstr "" -#: ../build/NEWS:17271 +#: ../build/NEWS:17306 msgid "" "`bpo-29534 `__: Fixed different " "behaviour of Decimal.from_float() for _decimal and _pydecimal. Thanks Andrew " "Nester." msgstr "" -#: ../build/NEWS:17274 +#: ../build/NEWS:17309 msgid "" "`bpo-10379 `__: locale.format_string now " "supports the 'monetary' keyword argument, and locale.format is deprecated." msgstr "" -#: ../build/NEWS:17277 +#: ../build/NEWS:17312 msgid "" "`bpo-29851 `__: importlib.reload() now " "raises ModuleNotFoundError if the module lacks a spec." msgstr "" -#: ../build/NEWS:17280 ../build/NEWS:20332 ../build/NEWS:24068 +#: ../build/NEWS:17315 ../build/NEWS:20367 ../build/NEWS:24103 msgid "" "`bpo-28556 `__: Various updates to " "typing module: typing.Counter, typing.ChainMap, improved ABC caching, etc. " @@ -31826,111 +31780,111 @@ msgid "" "Langa." msgstr "" -#: ../build/NEWS:17284 ../build/NEWS:20336 ../build/NEWS:24072 +#: ../build/NEWS:17319 ../build/NEWS:20371 ../build/NEWS:24107 msgid "" "`bpo-29100 `__: Fix datetime." "fromtimestamp() regression introduced in Python 3.6.0: check minimum and " "maximum years." msgstr "" -#: ../build/NEWS:17287 ../build/NEWS:20342 ../build/NEWS:24078 +#: ../build/NEWS:17322 ../build/NEWS:20377 ../build/NEWS:24113 msgid "" "`bpo-29416 `__: Prevent infinite loop in " "pathlib.Path.mkdir" msgstr "" -#: ../build/NEWS:17289 ../build/NEWS:20344 ../build/NEWS:24080 +#: ../build/NEWS:17324 ../build/NEWS:20379 ../build/NEWS:24115 msgid "" "`bpo-29444 `__: Fixed out-of-bounds " "buffer access in the group() method of the match object. Based on patch by " "WGH." msgstr "" -#: ../build/NEWS:17292 +#: ../build/NEWS:17327 msgid "" "`bpo-29377 `__: Add " "WrapperDescriptorType, MethodWrapperType, and MethodDescriptorType built-in " "types to types module. Original patch by Manuel Krebber." msgstr "" -#: ../build/NEWS:17296 +#: ../build/NEWS:17331 msgid "" "`bpo-29218 `__: Unused install_misc " "command is now removed. It has been documented as unused since 2000. Patch " "by Eric N. Vander Weele." msgstr "" -#: ../build/NEWS:17299 +#: ../build/NEWS:17334 msgid "" "`bpo-29368 `__: The extend() method is " "now called instead of the append() method when unpickle collections.deque " "and other list-like objects. This can speed up unpickling to 2 times." msgstr "" -#: ../build/NEWS:17303 +#: ../build/NEWS:17338 msgid "" "`bpo-29338 `__: The help of a builtin or " "extension class now includes the constructor signature if __text_signature__ " "is provided for the class." msgstr "" -#: ../build/NEWS:17306 ../build/NEWS:20347 ../build/NEWS:24083 +#: ../build/NEWS:17341 ../build/NEWS:20382 ../build/NEWS:24118 msgid "" "`bpo-29335 `__: Fix subprocess.Popen." "wait() when the child process has exited to a stopped instead of terminated " "state (ex: when under ptrace)." msgstr "" -#: ../build/NEWS:17309 ../build/NEWS:20350 ../build/NEWS:24086 +#: ../build/NEWS:17344 ../build/NEWS:20385 ../build/NEWS:24121 msgid "" "`bpo-29290 `__: Fix a regression in " "argparse that help messages would wrap at non-breaking spaces." msgstr "" -#: ../build/NEWS:17312 ../build/NEWS:20353 ../build/NEWS:24089 +#: ../build/NEWS:17347 ../build/NEWS:20388 ../build/NEWS:24124 msgid "" "`bpo-28735 `__: Fixed the comparison of " "mock.MagickMock with mock.ANY." msgstr "" -#: ../build/NEWS:17314 +#: ../build/NEWS:17349 msgid "" "`bpo-29197 `__: Removed deprecated " "function ntpath.splitunc()." msgstr "" -#: ../build/NEWS:17316 +#: ../build/NEWS:17351 msgid "" "`bpo-29210 `__: Removed support of " "deprecated argument \"exclude\" in tarfile.TarFile.add()." msgstr "" -#: ../build/NEWS:17319 ../build/NEWS:20358 ../build/NEWS:24093 +#: ../build/NEWS:17354 ../build/NEWS:20393 ../build/NEWS:24128 msgid "" "`bpo-29219 `__: Fixed infinite recursion " "in the repr of uninitialized ctypes.CDLL instances." msgstr "" -#: ../build/NEWS:17322 +#: ../build/NEWS:17357 msgid "" "`bpo-29192 `__: Removed deprecated " "features in the http.cookies module." msgstr "" -#: ../build/NEWS:17324 +#: ../build/NEWS:17359 msgid "" "`bpo-29193 `__: A format string argument " "for string.Formatter.format() is now positional-only." msgstr "" -#: ../build/NEWS:17327 +#: ../build/NEWS:17362 msgid "" "`bpo-29195 `__: Removed support of " "deprecated undocumented keyword arguments in methods of regular expression " "objects." msgstr "" -#: ../build/NEWS:17330 ../build/NEWS:20363 ../build/NEWS:24096 +#: ../build/NEWS:17365 ../build/NEWS:20398 ../build/NEWS:24131 msgid "" "`bpo-28969 `__: Fixed race condition in " "C implementation of functools.lru_cache. KeyError could be raised when " @@ -31938,112 +31892,112 @@ msgid "" "threads with the same uncached arguments." msgstr "" -#: ../build/NEWS:17335 +#: ../build/NEWS:17370 msgid "" "`bpo-20804 `__: The unittest.mock." "sentinel attributes now preserve their identity when they are copied or " "pickled." msgstr "" -#: ../build/NEWS:17338 ../build/NEWS:20368 ../build/NEWS:24101 +#: ../build/NEWS:17373 ../build/NEWS:20403 ../build/NEWS:24136 msgid "" "`bpo-29142 `__: In urllib.request, " "suffixes in no_proxy environment variable with leading dots could match " "related hostnames again (e.g. .b.c matches a.b.c). Patch by Milan Oberkirch." msgstr "" -#: ../build/NEWS:17342 ../build/NEWS:20372 ../build/NEWS:24062 +#: ../build/NEWS:17377 ../build/NEWS:20407 ../build/NEWS:24097 msgid "" "`bpo-28961 `__: Fix unittest.mock._Call " "helper: don't ignore the name parameter anymore. Patch written by Jiajun " "Huang." msgstr "" -#: ../build/NEWS:17345 ../build/NEWS:20379 ../build/NEWS:24345 +#: ../build/NEWS:17380 ../build/NEWS:20414 ../build/NEWS:24380 msgid "" "`bpo-15812 `__: inspect.getframeinfo() " "now correctly shows the first line of a context. Patch by Sam Breese." msgstr "" -#: ../build/NEWS:17348 +#: ../build/NEWS:17383 msgid "" "`bpo-28985 `__: Update authorizer " "constants in sqlite3 module. Patch by Dingyuan Wang." msgstr "" -#: ../build/NEWS:17351 ../build/NEWS:20391 +#: ../build/NEWS:17386 ../build/NEWS:20426 msgid "" "`bpo-29079 `__: Prevent infinite loop in " "pathlib.resolve() on Windows" msgstr "" -#: ../build/NEWS:17353 ../build/NEWS:20393 ../build/NEWS:24351 +#: ../build/NEWS:17388 ../build/NEWS:20428 ../build/NEWS:24386 msgid "" "`bpo-13051 `__: Fixed recursion errors " "in large or resized curses.textpad.Textbox. Based on patch by Tycho " "Andersen." msgstr "" -#: ../build/NEWS:17356 ../build/NEWS:20400 ../build/NEWS:24358 +#: ../build/NEWS:17391 ../build/NEWS:20435 ../build/NEWS:24393 msgid "" "`bpo-9770 `__: curses.ascii predicates " "now work correctly with negative integers." msgstr "" -#: ../build/NEWS:17359 ../build/NEWS:20403 ../build/NEWS:24361 +#: ../build/NEWS:17394 ../build/NEWS:20438 ../build/NEWS:24396 msgid "" "`bpo-28427 `__: old keys should not " "remove new values from WeakValueDictionary when collecting from another " "thread." msgstr "" -#: ../build/NEWS:17362 ../build/NEWS:20406 ../build/NEWS:24364 +#: ../build/NEWS:17397 ../build/NEWS:20441 ../build/NEWS:24399 msgid "" "`bpo-28923 `__: Remove editor artifacts " "from Tix.py." msgstr "" -#: ../build/NEWS:17364 ../build/NEWS:20411 ../build/NEWS:24366 +#: ../build/NEWS:17399 ../build/NEWS:20446 ../build/NEWS:24401 msgid "" "`bpo-28871 `__: Fixed a crash when " "deallocate deep ElementTree." msgstr "" -#: ../build/NEWS:17366 ../build/NEWS:20413 ../build/NEWS:24368 +#: ../build/NEWS:17401 ../build/NEWS:20448 ../build/NEWS:24403 msgid "" "`bpo-19542 `__: Fix bugs in " "WeakValueDictionary.setdefault() and WeakValueDictionary.pop() when a GC " "collection happens in another thread." msgstr "" -#: ../build/NEWS:17369 ../build/NEWS:20416 +#: ../build/NEWS:17404 ../build/NEWS:20451 msgid "" "`bpo-20191 `__: Fixed a crash in " "resource.prlimit() when passing a sequence that doesn't own its elements as " "limits." msgstr "" -#: ../build/NEWS:17372 +#: ../build/NEWS:17407 msgid "" "`bpo-16255 `__: subprocess.Popen uses /" "system/bin/sh on Android as the shell, instead of /bin/sh." msgstr "" -#: ../build/NEWS:17375 ../build/NEWS:20419 ../build/NEWS:24374 +#: ../build/NEWS:17410 ../build/NEWS:20454 ../build/NEWS:24409 msgid "" "`bpo-28779 `__: multiprocessing." "set_forkserver_preload() would crash the forkserver process if a preloaded " "module instantiated some multiprocessing objects such as locks." msgstr "" -#: ../build/NEWS:17379 ../build/NEWS:20426 +#: ../build/NEWS:17414 ../build/NEWS:20461 msgid "" "`bpo-26937 `__: The chown() method of " "the tarfile.TarFile class does not fail now when the grp module cannot be " "imported, as for example on Android platforms." msgstr "" -#: ../build/NEWS:17383 +#: ../build/NEWS:17418 msgid "" "`bpo-28847 `__: dbm.dumb now supports " "reading read-only files and no longer writes the index file when it is not " @@ -32052,21 +32006,21 @@ msgid "" "releases)." msgstr "" -#: ../build/NEWS:17388 +#: ../build/NEWS:17423 msgid "" "`bpo-27030 `__: Unknown escapes " "consisting of ``'\\'`` and an ASCII letter in re.sub() replacement templates " "regular expressions now are errors." msgstr "" -#: ../build/NEWS:17391 ../build/NEWS:20607 +#: ../build/NEWS:17426 ../build/NEWS:20642 msgid "" "`bpo-28835 `__: Fix a regression " "introduced in warnings.catch_warnings(): call warnings.showwarning() if it " "was overridden inside the context manager." msgstr "" -#: ../build/NEWS:17394 ../build/NEWS:20610 +#: ../build/NEWS:17429 ../build/NEWS:20645 msgid "" "`bpo-27172 `__: To assist with upgrades " "from 2.7, the previously documented deprecation of ``inspect." @@ -32074,27 +32028,27 @@ msgid "" "after the Python 2.7 branch is no longer officially supported." msgstr "" -#: ../build/NEWS:17399 +#: ../build/NEWS:17434 msgid "" "`bpo-28740 `__: Add sys." "getandroidapilevel(): return the build time API version of Android as an " "integer. Function only available on Android." msgstr "" -#: ../build/NEWS:17402 ../build/NEWS:20615 +#: ../build/NEWS:17437 ../build/NEWS:20650 msgid "" "`bpo-26273 `__: Add new :data:`socket." "TCP_CONGESTION` (Linux 2.6.13) and :data:`socket.TCP_USER_TIMEOUT` (Linux " "2.6.37) constants. Patch written by Omar Sandoval." msgstr "" -#: ../build/NEWS:17406 ../build/NEWS:20686 +#: ../build/NEWS:17441 ../build/NEWS:20721 msgid "" "`bpo-28752 `__: Restored the " "__reduce__() methods of datetime objects." msgstr "" -#: ../build/NEWS:17408 ../build/NEWS:20688 +#: ../build/NEWS:17443 ../build/NEWS:20723 msgid "" "`bpo-28727 `__: Regular expression " "patterns, _sre.SRE_Pattern objects created by re.compile(), become " @@ -32104,34 +32058,34 @@ msgid "" "unit tests)." msgstr "" -#: ../build/NEWS:17413 +#: ../build/NEWS:17448 msgid "" "`bpo-20572 `__: Remove the subprocess." "Popen.wait endtime parameter. It was deprecated in 3.4 and undocumented " "prior to that." msgstr "" -#: ../build/NEWS:17416 ../build/NEWS:20696 ../build/NEWS:24381 +#: ../build/NEWS:17451 ../build/NEWS:20731 ../build/NEWS:24416 msgid "" "`bpo-25659 `__: In ctypes, prevent a " "crash calling the from_buffer() and from_buffer_copy() methods on abstract " "classes like Array." msgstr "" -#: ../build/NEWS:17419 +#: ../build/NEWS:17454 msgid "" "`bpo-28548 `__: In the \"http.server\" " "module, parse the protocol version if possible, to avoid using HTTP 0.9 in " "some error responses." msgstr "" -#: ../build/NEWS:17422 ../build/NEWS:20699 +#: ../build/NEWS:17457 ../build/NEWS:20734 msgid "" "`bpo-19717 `__: Makes Path.resolve() " "succeed on paths that do not exist. Patch by Vajrasky Kok" msgstr "" -#: ../build/NEWS:17425 ../build/NEWS:20702 +#: ../build/NEWS:17460 ../build/NEWS:20737 msgid "" "`bpo-28563 `__: Fixed possible DoS and " "arbitrary code execution when handle plural form selections in the gettext " @@ -32139,27 +32093,27 @@ msgid "" "gettext." msgstr "" -#: ../build/NEWS:17429 ../build/NEWS:20706 ../build/NEWS:24390 +#: ../build/NEWS:17464 ../build/NEWS:20741 ../build/NEWS:24425 msgid "" "`bpo-28387 `__: Fixed possible crash in " "_io.TextIOWrapper deallocator when the garbage collector is invoked in other " "thread. Based on patch by Sebastian Cufre." msgstr "" -#: ../build/NEWS:17433 ../build/NEWS:20789 ../build/NEWS:24394 +#: ../build/NEWS:17468 ../build/NEWS:20824 ../build/NEWS:24429 msgid "" "`bpo-27517 `__: LZMA compressor and " "decompressor no longer raise exceptions if given empty data twice. Patch by " "Benjamin Fogle." msgstr "" -#: ../build/NEWS:17436 ../build/NEWS:20792 ../build/NEWS:24397 +#: ../build/NEWS:17471 ../build/NEWS:20827 ../build/NEWS:24432 msgid "" "`bpo-28549 `__: Fixed segfault in " "curses's addch() with ncurses6." msgstr "" -#: ../build/NEWS:17438 ../build/NEWS:20794 ../build/NEWS:24399 +#: ../build/NEWS:17473 ../build/NEWS:20829 ../build/NEWS:24434 msgid "" "`bpo-28449 `__: tarfile.open() with mode " "\"r\" or \"r:\" now tries to open a tar file with compression before trying " @@ -32167,14 +32121,14 @@ msgid "" "ignore_zeros=True." msgstr "" -#: ../build/NEWS:17442 ../build/NEWS:20798 ../build/NEWS:24403 +#: ../build/NEWS:17477 ../build/NEWS:20833 ../build/NEWS:24438 msgid "" "`bpo-23262 `__: The webbrowser module " "now supports Firefox 36+ and derived browsers. Based on patch by Oleg " "Broytman." msgstr "" -#: ../build/NEWS:17445 +#: ../build/NEWS:17480 msgid "" "`bpo-24241 `__: The webbrowser in an X " "environment now prefers using the default browser directly. Also, the " @@ -32183,7 +32137,7 @@ msgid "" "Steele" msgstr "" -#: ../build/NEWS:17450 ../build/NEWS:20801 ../build/NEWS:24406 +#: ../build/NEWS:17485 ../build/NEWS:20836 ../build/NEWS:24441 msgid "" "`bpo-27939 `__: Fixed bugs in tkinter." "ttk.LabeledScale and tkinter.Scale caused by representing the scale as float " @@ -32191,7 +32145,7 @@ msgid "" "underlying Tk variable." msgstr "" -#: ../build/NEWS:17454 +#: ../build/NEWS:17489 msgid "" "`bpo-28255 `__: calendar.TextCalendar." "prweek() no longer prints a space after a weeks's calendar. calendar." @@ -32199,52 +32153,52 @@ msgid "" "calendar. Based on patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:17458 +#: ../build/NEWS:17493 msgid "" "`bpo-28255 `__: calendar.TextCalendar." "prmonth() no longer prints a space at the start of new line after printing a " "month's calendar. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:17462 ../build/NEWS:20812 ../build/NEWS:24414 +#: ../build/NEWS:17497 ../build/NEWS:20847 ../build/NEWS:24449 msgid "" "`bpo-20491 `__: The textwrap.TextWrapper " "class now honors non-breaking spaces. Based on patch by Kaarle Ritvanen." msgstr "" -#: ../build/NEWS:17465 ../build/NEWS:20815 ../build/NEWS:24417 +#: ../build/NEWS:17500 ../build/NEWS:20850 ../build/NEWS:24452 msgid "" "`bpo-28353 `__: os.fwalk() no longer " "fails on broken links." msgstr "" -#: ../build/NEWS:17467 ../build/NEWS:20817 +#: ../build/NEWS:17502 ../build/NEWS:20852 msgid "" "`bpo-28430 `__: Fix iterator of C " "implemented asyncio.Future doesn't accept non-None value is passed to it." "send(val)." msgstr "" -#: ../build/NEWS:17470 ../build/NEWS:20820 +#: ../build/NEWS:17505 ../build/NEWS:20855 msgid "" "`bpo-27025 `__: Generated names for " "Tkinter widgets now start by the \"!\" prefix for readability." msgstr "" -#: ../build/NEWS:17473 ../build/NEWS:20823 ../build/NEWS:24419 +#: ../build/NEWS:17508 ../build/NEWS:20858 ../build/NEWS:24454 msgid "" "`bpo-25464 `__: Fixed HList." "header_exists() in tkinter.tix module by addin a workaround to Tix library " "bug." msgstr "" -#: ../build/NEWS:17476 ../build/NEWS:20826 +#: ../build/NEWS:17511 ../build/NEWS:20861 msgid "" "`bpo-28488 `__: shutil.make_archive() no " "longer adds entry \"./\" to ZIP archive." msgstr "" -#: ../build/NEWS:17478 ../build/NEWS:20828 +#: ../build/NEWS:17513 ../build/NEWS:20863 msgid "" "`bpo-25953 `__: re.sub() now raises an " "error for invalid numerical group reference in replacement template even if " @@ -32253,57 +32207,57 @@ msgid "" "Based on patch by SilentGhost." msgstr "" -#: ../build/NEWS:17483 +#: ../build/NEWS:17518 msgid "" "`bpo-28469 `__: timeit now uses the " "sequence 1, 2, 5, 10, 20, 50,... instead of 1, 10, 100,... for autoranging." msgstr "" -#: ../build/NEWS:17486 +#: ../build/NEWS:17521 msgid "" "`bpo-28115 `__: Command-line interface " "of the zipfile module now uses argparse. Added support of long options." msgstr "" -#: ../build/NEWS:17489 ../build/NEWS:20833 +#: ../build/NEWS:17524 ../build/NEWS:20868 msgid "" "`bpo-18219 `__: Optimize csv.DictWriter " "for large number of columns. Patch by Mariatta Wijaya." msgstr "" -#: ../build/NEWS:17492 ../build/NEWS:20836 +#: ../build/NEWS:17527 ../build/NEWS:20871 msgid "" "`bpo-28448 `__: Fix C implemented " "asyncio.Future didn't work on Windows." msgstr "" -#: ../build/NEWS:17494 +#: ../build/NEWS:17529 msgid "" "`bpo-23214 `__: In the \"io\" module, " "the argument to BufferedReader and BytesIO's read1() methods is now optional " "and can be -1, matching the BufferedIOBase specification." msgstr "" -#: ../build/NEWS:17498 ../build/NEWS:20838 +#: ../build/NEWS:17533 ../build/NEWS:20873 msgid "" "`bpo-28480 `__: Fix error building " "socket module when multithreading is disabled." msgstr "" -#: ../build/NEWS:17501 +#: ../build/NEWS:17536 msgid "" "`bpo-28240 `__: timeit: remove ``-c/--" "clock`` and ``-t/--time`` command line options which were deprecated since " "Python 3.3." msgstr "" -#: ../build/NEWS:17504 +#: ../build/NEWS:17539 msgid "" "`bpo-28240 `__: timeit now repeats the " "benchmarks 5 times instead of only 3 to make benchmarks more reliable." msgstr "" -#: ../build/NEWS:17507 +#: ../build/NEWS:17542 msgid "" "`bpo-28240 `__: timeit autorange now " "uses a single loop iteration if the benchmark takes less than 10 seconds, " @@ -32311,7 +32265,7 @@ msgid "" "sleep(1)'\" now takes 4 seconds instead of 40 seconds." msgstr "" -#: ../build/NEWS:17512 +#: ../build/NEWS:17547 msgid "" "Distutils.sdist now looks for README and setup.py files with case " "sensitivity. This behavior matches that found in Setuptools 6.0 and later. " @@ -32319,107 +32273,107 @@ msgid "" "rationale." msgstr "" -#: ../build/NEWS:17517 +#: ../build/NEWS:17552 msgid "" "`bpo-24452 `__: Make webbrowser support " "Chrome on Mac OS X. Patch by Ned Batchelder." msgstr "" -#: ../build/NEWS:17520 ../build/NEWS:20843 ../build/NEWS:24426 +#: ../build/NEWS:17555 ../build/NEWS:20878 ../build/NEWS:24461 msgid "" "`bpo-20766 `__: Fix references leaked by " "pdb in the handling of SIGINT handlers." msgstr "" -#: ../build/NEWS:17523 ../build/NEWS:20959 +#: ../build/NEWS:17558 ../build/NEWS:20994 msgid "" "`bpo-27998 `__: Fixed bytes path support " "in os.scandir() on Windows. Patch by Eryk Sun." msgstr "" -#: ../build/NEWS:17526 ../build/NEWS:20962 +#: ../build/NEWS:17561 ../build/NEWS:20997 msgid "" "`bpo-28317 `__: The disassembler now " "decodes FORMAT_VALUE argument." msgstr "" -#: ../build/NEWS:17528 ../build/NEWS:20968 +#: ../build/NEWS:17563 ../build/NEWS:21003 msgid "" "`bpo-28380 `__: unittest.mock Mock " "autospec functions now properly support assert_called, assert_not_called, " "and assert_called_once." msgstr "" -#: ../build/NEWS:17531 ../build/NEWS:20973 +#: ../build/NEWS:17566 ../build/NEWS:21008 msgid "" "`bpo-28229 `__: lzma module now supports " "pathlib." msgstr "" -#: ../build/NEWS:17533 ../build/NEWS:20975 ../build/NEWS:24433 +#: ../build/NEWS:17568 ../build/NEWS:21010 ../build/NEWS:24468 msgid "" "`bpo-28321 `__: Fixed writing non-BMP " "characters with binary format in plistlib." msgstr "" -#: ../build/NEWS:17536 ../build/NEWS:20978 +#: ../build/NEWS:17571 ../build/NEWS:21013 msgid "" "`bpo-28225 `__: bz2 module now supports " "pathlib. Initial patch by Ethan Furman." msgstr "" -#: ../build/NEWS:17539 ../build/NEWS:20981 +#: ../build/NEWS:17574 ../build/NEWS:21016 msgid "" "`bpo-28227 `__: gzip now supports " "pathlib. Patch by Ethan Furman." msgstr "" -#: ../build/NEWS:17541 +#: ../build/NEWS:17576 msgid "" "`bpo-28332 `__: Deprecated silent " "truncations in socket.htons and socket.ntohs. Original patch by Oren Milman." msgstr "" -#: ../build/NEWS:17544 ../build/NEWS:20983 +#: ../build/NEWS:17579 ../build/NEWS:21018 msgid "" "`bpo-27358 `__: Optimized merging var-" "keyword arguments and improved error message when passing a non-mapping as a " "var-keyword argument." msgstr "" -#: ../build/NEWS:17547 ../build/NEWS:20986 +#: ../build/NEWS:17582 ../build/NEWS:21021 msgid "" "`bpo-28257 `__: Improved error message " "when passing a non-iterable as a var-positional argument. Added opcode " "BUILD_TUPLE_UNPACK_WITH_CALL." msgstr "" -#: ../build/NEWS:17550 ../build/NEWS:20989 ../build/NEWS:24436 +#: ../build/NEWS:17585 ../build/NEWS:21024 ../build/NEWS:24471 msgid "" "`bpo-28322 `__: Fixed possible crashes " "when unpickle itertools objects from incorrect pickle data. Based on patch " "by John Leitch." msgstr "" -#: ../build/NEWS:17553 ../build/NEWS:20992 +#: ../build/NEWS:17588 ../build/NEWS:21027 msgid "" "`bpo-28228 `__: imghdr now supports " "pathlib." msgstr "" -#: ../build/NEWS:17555 ../build/NEWS:20994 +#: ../build/NEWS:17590 ../build/NEWS:21029 msgid "" "`bpo-28226 `__: compileall now supports " "pathlib." msgstr "" -#: ../build/NEWS:17557 ../build/NEWS:20996 +#: ../build/NEWS:17592 ../build/NEWS:21031 msgid "" "`bpo-28314 `__: Fix function declaration " "(C flags) for the getiterator() method of xml.etree.ElementTree.Element." msgstr "" -#: ../build/NEWS:17560 ../build/NEWS:20999 +#: ../build/NEWS:17595 ../build/NEWS:21034 msgid "" "`bpo-28148 `__: Stop using localtime() " "and gmtime() in the time module. Introduced platform independent " @@ -32427,7 +32381,7 @@ msgid "" "all platforms. Patch by Ed Schouten." msgstr "" -#: ../build/NEWS:17564 ../build/NEWS:21003 ../build/NEWS:24445 +#: ../build/NEWS:17599 ../build/NEWS:21038 ../build/NEWS:24480 msgid "" "`bpo-28253 `__: Fixed calendar functions " "for extreme months: 0001-01 and 9999-12. Methods itermonthdays() and " @@ -32435,271 +32389,271 @@ msgid "" "which can cause datetime.date under/overflow." msgstr "" -#: ../build/NEWS:17569 ../build/NEWS:21008 ../build/NEWS:24450 +#: ../build/NEWS:17604 ../build/NEWS:21043 ../build/NEWS:24485 msgid "" "`bpo-28275 `__: Fixed possible use after " "free in the decompress() methods of the LZMADecompressor and BZ2Decompressor " "classes. Original patch by John Leitch." msgstr "" -#: ../build/NEWS:17573 ../build/NEWS:21012 ../build/NEWS:24454 +#: ../build/NEWS:17608 ../build/NEWS:21047 ../build/NEWS:24489 msgid "" "`bpo-27897 `__: Fixed possible crash in " "sqlite3.Connection.create_collation() if pass invalid string-like object as " "a name. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:17576 ../build/NEWS:21015 +#: ../build/NEWS:17611 ../build/NEWS:21050 msgid "" "`bpo-18844 `__: random.choices() now has " "k as a keyword-only argument to improve the readability of common cases and " "come into line with the signature used in other languages." msgstr "" -#: ../build/NEWS:17580 ../build/NEWS:21019 ../build/NEWS:24457 +#: ../build/NEWS:17615 ../build/NEWS:21054 ../build/NEWS:24492 msgid "" "`bpo-18893 `__: Fix invalid exception " "handling in Lib/ctypes/macholib/dyld.py. Patch by Madison May." msgstr "" -#: ../build/NEWS:17583 ../build/NEWS:21022 +#: ../build/NEWS:17618 ../build/NEWS:21057 msgid "" "`bpo-27611 `__: Fixed support of default " "root window in the tkinter.tix module. Added the master parameter in the " "DisplayStyle constructor." msgstr "" -#: ../build/NEWS:17586 ../build/NEWS:21025 ../build/NEWS:24462 +#: ../build/NEWS:17621 ../build/NEWS:21060 ../build/NEWS:24497 msgid "" "`bpo-27348 `__: In the traceback module, " "restore the formatting of exception messages like \"Exception: None\". This " "fixes a regression introduced in 3.5a2." msgstr "" -#: ../build/NEWS:17590 ../build/NEWS:21029 ../build/NEWS:24466 +#: ../build/NEWS:17625 ../build/NEWS:21064 ../build/NEWS:24501 msgid "" "`bpo-25651 `__: Allow falsy values to be " "used for msg parameter of subTest()." msgstr "" -#: ../build/NEWS:17592 ../build/NEWS:21031 +#: ../build/NEWS:17627 ../build/NEWS:21066 msgid "" "`bpo-27778 `__: Fix a memory leak in os." "getrandom() when the getrandom() is interrupted by a signal and a signal " "handler raises a Python exception." msgstr "" -#: ../build/NEWS:17595 ../build/NEWS:21034 +#: ../build/NEWS:17630 ../build/NEWS:21069 msgid "" "`bpo-28200 `__: Fix memory leak on " "Windows in the os module (fix path_converter() function)." msgstr "" -#: ../build/NEWS:17598 ../build/NEWS:21037 +#: ../build/NEWS:17633 ../build/NEWS:21072 msgid "" "`bpo-25400 `__: RobotFileParser now " "correctly returns default values for crawl_delay and request_rate. Initial " "patch by Peter Wirtz." msgstr "" -#: ../build/NEWS:17601 ../build/NEWS:21040 ../build/NEWS:24468 +#: ../build/NEWS:17636 ../build/NEWS:21075 ../build/NEWS:24503 msgid "" "`bpo-27932 `__: Prevent memory leak in " "win32_ver()." msgstr "" -#: ../build/NEWS:17603 ../build/NEWS:21042 ../build/NEWS:24470 +#: ../build/NEWS:17638 ../build/NEWS:21077 ../build/NEWS:24505 msgid "Fix UnboundLocalError in socket._sendfile_use_sendfile." msgstr "" -#: ../build/NEWS:17605 ../build/NEWS:21044 ../build/NEWS:24472 +#: ../build/NEWS:17640 ../build/NEWS:21079 ../build/NEWS:24507 msgid "" "`bpo-28075 `__: Check for " "ERROR_ACCESS_DENIED in Windows implementation of os.stat(). Patch by Eryk " "Sun." msgstr "" -#: ../build/NEWS:17608 ../build/NEWS:21047 +#: ../build/NEWS:17643 ../build/NEWS:21082 msgid "" "`bpo-22493 `__: Warning message emitted " "by using inline flags in the middle of regular expression now contains a " "(truncated) regex pattern. Patch by Tim Graham." msgstr "" -#: ../build/NEWS:17612 ../build/NEWS:21051 ../build/NEWS:24475 +#: ../build/NEWS:17647 ../build/NEWS:21086 ../build/NEWS:24510 msgid "" "`bpo-25270 `__: Prevent codecs." "escape_encode() from raising SystemError when an empty bytestring is passed." msgstr "" -#: ../build/NEWS:17615 ../build/NEWS:21054 ../build/NEWS:24478 +#: ../build/NEWS:17650 ../build/NEWS:21089 ../build/NEWS:24513 msgid "" "`bpo-28181 `__: Get antigravity over " "HTTPS. Patch by Kaartic Sivaraam." msgstr "" -#: ../build/NEWS:17617 ../build/NEWS:21056 ../build/NEWS:24480 +#: ../build/NEWS:17652 ../build/NEWS:21091 ../build/NEWS:24515 msgid "" "`bpo-25895 `__: Enable WebSocket URL " "schemes in urllib.parse.urljoin. Patch by Gergely Imreh and Markus " "Holtermann." msgstr "" -#: ../build/NEWS:17620 ../build/NEWS:21059 +#: ../build/NEWS:17655 ../build/NEWS:21094 msgid "" "`bpo-28114 `__: Fix a crash in " "parse_envlist() when env contains byte strings. Patch by Eryk Sun." msgstr "" -#: ../build/NEWS:17623 ../build/NEWS:21062 ../build/NEWS:24483 +#: ../build/NEWS:17658 ../build/NEWS:21097 ../build/NEWS:24518 msgid "" "`bpo-27599 `__: Fixed buffer overrun in " "binascii.b2a_qp() and binascii.a2b_qp()." msgstr "" -#: ../build/NEWS:17626 ../build/NEWS:21065 ../build/NEWS:24684 +#: ../build/NEWS:17661 ../build/NEWS:21100 ../build/NEWS:24719 msgid "" "`bpo-27906 `__: Fix socket accept " "exhaustion during high TCP traffic. Patch by Kevin Conway." msgstr "" -#: ../build/NEWS:17629 ../build/NEWS:21068 ../build/NEWS:24687 +#: ../build/NEWS:17664 ../build/NEWS:21103 ../build/NEWS:24722 msgid "" "`bpo-28174 `__: Handle when SO_REUSEPORT " "isn't properly supported. Patch by Seth Michael Larson." msgstr "" -#: ../build/NEWS:17632 ../build/NEWS:21071 ../build/NEWS:24690 +#: ../build/NEWS:17667 ../build/NEWS:21106 ../build/NEWS:24725 msgid "" "`bpo-26654 `__: Inspect functools." "partial in asyncio.Handle.__repr__. Patch by iceboy." msgstr "" -#: ../build/NEWS:17635 ../build/NEWS:21074 ../build/NEWS:24693 +#: ../build/NEWS:17670 ../build/NEWS:21109 ../build/NEWS:24728 msgid "" "`bpo-26909 `__: Fix slow pipes IO in " "asyncio. Patch by INADA Naoki." msgstr "" -#: ../build/NEWS:17637 ../build/NEWS:21076 ../build/NEWS:24695 +#: ../build/NEWS:17672 ../build/NEWS:21111 ../build/NEWS:24730 msgid "" "`bpo-28176 `__: Fix callbacks race in " "asyncio.SelectorLoop.sock_connect." msgstr "" -#: ../build/NEWS:17639 ../build/NEWS:21078 ../build/NEWS:24697 +#: ../build/NEWS:17674 ../build/NEWS:21113 ../build/NEWS:24732 msgid "" "`bpo-27759 `__: Fix selectors " "incorrectly retain invalid file descriptors. Patch by Mark Williams." msgstr "" -#: ../build/NEWS:17642 +#: ../build/NEWS:17677 msgid "" "`bpo-28325 `__: Remove vestigial MacOS 9 " "macurl2path module and its tests." msgstr "" -#: ../build/NEWS:17644 ../build/NEWS:21081 ../build/NEWS:24700 +#: ../build/NEWS:17679 ../build/NEWS:21116 ../build/NEWS:24735 msgid "" "`bpo-28368 `__: Refuse monitoring " "processes if the child watcher has no loop attached. Patch by Vincent Michel." msgstr "" -#: ../build/NEWS:17647 ../build/NEWS:21084 ../build/NEWS:24703 +#: ../build/NEWS:17682 ../build/NEWS:21119 ../build/NEWS:24738 msgid "" "`bpo-28369 `__: Raise RuntimeError when " "transport's FD is used with add_reader, add_writer, etc." msgstr "" -#: ../build/NEWS:17650 ../build/NEWS:21087 ../build/NEWS:24706 +#: ../build/NEWS:17685 ../build/NEWS:21122 ../build/NEWS:24741 msgid "" "`bpo-28370 `__: Speedup asyncio." "StreamReader.readexactly. Patch by Коренберг Марк." msgstr "" -#: ../build/NEWS:17653 ../build/NEWS:21090 ../build/NEWS:24709 +#: ../build/NEWS:17688 ../build/NEWS:21125 ../build/NEWS:24744 msgid "" "`bpo-28371 `__: Deprecate passing " "asyncio.Handles to run_in_executor." msgstr "" -#: ../build/NEWS:17655 ../build/NEWS:21092 ../build/NEWS:24711 +#: ../build/NEWS:17690 ../build/NEWS:21127 ../build/NEWS:24746 msgid "" "`bpo-28372 `__: Fix asyncio to support " "formatting of non-python coroutines." msgstr "" -#: ../build/NEWS:17657 ../build/NEWS:21094 ../build/NEWS:24713 +#: ../build/NEWS:17692 ../build/NEWS:21129 ../build/NEWS:24748 msgid "" "`bpo-28399 `__: Remove UNIX socket from " "FS before binding. Patch by Коренберг Марк." msgstr "" -#: ../build/NEWS:17660 ../build/NEWS:21097 ../build/NEWS:24716 +#: ../build/NEWS:17695 ../build/NEWS:21132 ../build/NEWS:24751 msgid "" "`bpo-27972 `__: Prohibit Tasks to await " "on themselves." msgstr "" -#: ../build/NEWS:17662 ../build/NEWS:20619 +#: ../build/NEWS:17697 ../build/NEWS:20654 msgid "" "`bpo-24142 `__: Reading a corrupt config " "file left configparser in an invalid state. Original patch by Florian Höch." msgstr "" -#: ../build/NEWS:17665 ../build/NEWS:19967 +#: ../build/NEWS:17700 ../build/NEWS:20002 msgid "" "`bpo-29581 `__: ABCMeta.__new__ now " "accepts ``**kwargs``, allowing abstract base classes to use keyword " "parameters in __init_subclass__. Patch by Nate Soares." msgstr "" -#: ../build/NEWS:17669 ../build/NEWS:19158 +#: ../build/NEWS:17704 ../build/NEWS:19193 msgid "" "`bpo-25532 `__: inspect.unwrap() will " "now only try to unwrap an object sys.getrecursionlimit() times, to protect " "against objects which create a new object on every attribute access." msgstr "" -#: ../build/NEWS:17673 ../build/NEWS:20101 +#: ../build/NEWS:17708 ../build/NEWS:20136 msgid "" "`bpo-30177 `__: path." "resolve(strict=False) no longer cuts the path after the first element not " "present in the filesystem. Patch by Antoine Pietri." msgstr "" -#: ../build/NEWS:17679 ../build/NEWS:19584 +#: ../build/NEWS:17714 ../build/NEWS:19619 msgid "" "`bpo-31294 `__: Fix incomplete code " "snippet in the ZeroMQSocketListener and ZeroMQSocketHandler examples and " "adapt them to Python 3." msgstr "" -#: ../build/NEWS:17682 ../build/NEWS:19587 +#: ../build/NEWS:17717 ../build/NEWS:19622 msgid "" "`bpo-21649 `__: Add RFC 7525 and Mozilla " "server side TLS links to SSL documentation." msgstr "" -#: ../build/NEWS:17685 +#: ../build/NEWS:17720 msgid "" "`bpo-31128 `__: Allow the pydoc server " "to bind to arbitrary hostnames." msgstr "" -#: ../build/NEWS:17687 ../build/NEWS:19590 +#: ../build/NEWS:17722 ../build/NEWS:19625 msgid "" "`bpo-30803 `__: Clarify doc on truth " "value testing. Original patch by Peter Thomassen." msgstr "" -#: ../build/NEWS:17690 ../build/NEWS:20156 ../build/NEWS:24108 +#: ../build/NEWS:17725 ../build/NEWS:20191 ../build/NEWS:24143 msgid "" "`bpo-30176 `__: Add missing attribute " "related constants in curses documentation." msgstr "" -#: ../build/NEWS:17693 ../build/NEWS:20159 +#: ../build/NEWS:17728 ../build/NEWS:20194 msgid "" "`bpo-30052 `__: the link targets for :" "func:`bytes` and :func:`bytearray` are now their respective type " @@ -32710,13 +32664,13 @@ msgid "" "default output caching features in Sphinx." msgstr "" -#: ../build/NEWS:17701 ../build/NEWS:20167 ../build/NEWS:24111 +#: ../build/NEWS:17736 ../build/NEWS:20202 ../build/NEWS:24146 msgid "" "`bpo-26985 `__: Add missing info of code " "object in inspect documentation." msgstr "" -#: ../build/NEWS:17703 +#: ../build/NEWS:17738 msgid "" "`bpo-19824 `__: Improve the " "documentation for, and links to, template strings by emphasizing their " @@ -32725,33 +32679,33 @@ msgid "" "`__)" msgstr "" -#: ../build/NEWS:17707 ../build/NEWS:20476 ../build/NEWS:24113 +#: ../build/NEWS:17742 ../build/NEWS:20511 ../build/NEWS:24148 msgid "" "`bpo-28929 `__: Link the documentation " "to its source file on GitHub." msgstr "" -#: ../build/NEWS:17709 ../build/NEWS:20478 ../build/NEWS:24115 +#: ../build/NEWS:17744 ../build/NEWS:20513 ../build/NEWS:24150 msgid "" "`bpo-25008 `__: Document smtpd.py as " "effectively deprecated and add a pointer to aiosmtpd, a third-party asyncio-" "based replacement." msgstr "" -#: ../build/NEWS:17712 ../build/NEWS:20481 ../build/NEWS:24118 +#: ../build/NEWS:17747 ../build/NEWS:20516 ../build/NEWS:24153 msgid "" "`bpo-26355 `__: Add canonical header " "link on each page to corresponding major version of the documentation. Patch " "by Matthias Bussonnier." msgstr "" -#: ../build/NEWS:17715 ../build/NEWS:20484 ../build/NEWS:24121 +#: ../build/NEWS:17750 ../build/NEWS:20519 ../build/NEWS:24156 msgid "" "`bpo-29349 `__: Fix Python 2 syntax in " "code for building the documentation." msgstr "" -#: ../build/NEWS:17717 +#: ../build/NEWS:17752 msgid "" "`bpo-23722 `__: The data model reference " "and the porting section in the 3.6 What's New guide now cover the additional " @@ -32759,45 +32713,45 @@ msgid "" "pep:`487` and zero-argument ``super()``." msgstr "" -#: ../build/NEWS:17722 ../build/NEWS:20735 ../build/NEWS:24784 +#: ../build/NEWS:17757 ../build/NEWS:20770 ../build/NEWS:24819 msgid "" "`bpo-28513 `__: Documented command-line " "interface of zipfile." msgstr "" -#: ../build/NEWS:17727 +#: ../build/NEWS:17762 msgid "" "`bpo-29639 `__: test.support.HOST is now " "\"localhost\", a new HOSTv4 constant has been added for your ``127.0.0.1`` " "needs, similar to the existing HOSTv6 constant." msgstr "" -#: ../build/NEWS:17731 ../build/NEWS:19596 +#: ../build/NEWS:17766 ../build/NEWS:19631 msgid "" "`bpo-31320 `__: Silence traceback in " "test_ssl" msgstr "" -#: ../build/NEWS:17733 +#: ../build/NEWS:17768 msgid "" "`bpo-31346 `__: Prefer " "PROTOCOL_TLS_CLIENT and PROTOCOL_TLS_SERVER protocols for SSLContext." msgstr "" -#: ../build/NEWS:17736 ../build/NEWS:19598 +#: ../build/NEWS:17771 ../build/NEWS:19633 msgid "" "`bpo-25674 `__: Remove sha256.tbs-" "internet.com ssl test" msgstr "" -#: ../build/NEWS:17738 ../build/NEWS:19600 +#: ../build/NEWS:17773 ../build/NEWS:19635 msgid "" "`bpo-30715 `__: Address ALPN callback " "changes for OpenSSL 1.1.0f. The latest version behaves like OpenSSL 1.0.2 " "and no longer aborts handshake." msgstr "" -#: ../build/NEWS:17741 ../build/NEWS:19603 +#: ../build/NEWS:17776 ../build/NEWS:19638 msgid "" "`bpo-30822 `__: regrtest: Exclude tzdata " "from regrtest --all. When running the test suite using --use=all / -u all, " @@ -32806,14 +32760,14 @@ msgid "" "line parser to allow passing -u extralargefile to run test_zipfile64." msgstr "" -#: ../build/NEWS:17747 ../build/NEWS:19210 +#: ../build/NEWS:17782 ../build/NEWS:19245 msgid "" "`bpo-30695 `__: Add the " "`set_nomemory(start, stop)` and `remove_mem_hooks()` functions to the " "_testcapi module." msgstr "" -#: ../build/NEWS:17750 ../build/NEWS:20178 ../build/NEWS:24140 +#: ../build/NEWS:17785 ../build/NEWS:20213 ../build/NEWS:24175 msgid "" "`bpo-30357 `__: test_thread: setUp() now " "uses support.threading_setup() and support.threading_cleanup() to wait until " @@ -32821,7 +32775,7 @@ msgid "" "patch written by Grzegorz Grzywacz." msgstr "" -#: ../build/NEWS:17755 ../build/NEWS:20183 ../build/NEWS:24149 +#: ../build/NEWS:17790 ../build/NEWS:20218 ../build/NEWS:24184 msgid "" "`bpo-30197 `__: Enhanced functions " "swap_attr() and swap_item() in the test.support module. They now work when " @@ -32830,76 +32784,76 @@ msgid "" "to the target of the \"as\" clause, if there is one." msgstr "" -#: ../build/NEWS:17761 +#: ../build/NEWS:17796 msgid "" "`bpo-24932 `__: Use proper command line " "parsing in _testembed" msgstr "" -#: ../build/NEWS:17763 ../build/NEWS:20499 +#: ../build/NEWS:17798 ../build/NEWS:20534 msgid "" "`bpo-28950 `__: Disallow -j0 to be " "combined with -T/-l in regrtest command line arguments." msgstr "" -#: ../build/NEWS:17766 ../build/NEWS:20502 +#: ../build/NEWS:17801 ../build/NEWS:20537 msgid "" "`bpo-28683 `__: Fix the tests that " "bind() a unix socket and raise PermissionError on Android for a non-root " "user." msgstr "" -#: ../build/NEWS:17769 +#: ../build/NEWS:17804 msgid "" "`bpo-26936 `__: Fix the test_socket " "failures on Android - getservbyname(), getservbyport() and getaddrinfo() are " "broken on some Android API levels." msgstr "" -#: ../build/NEWS:17772 ../build/NEWS:20740 ../build/NEWS:24792 +#: ../build/NEWS:17807 ../build/NEWS:20775 ../build/NEWS:24827 msgid "" "`bpo-28666 `__: Now test.support.rmtree " "is able to remove unwritable or unreadable directories." msgstr "" -#: ../build/NEWS:17775 ../build/NEWS:20743 ../build/NEWS:24795 +#: ../build/NEWS:17810 ../build/NEWS:20778 ../build/NEWS:24830 msgid "" "`bpo-23839 `__: Various caches now are " "cleared before running every test file." msgstr "" -#: ../build/NEWS:17777 ../build/NEWS:20875 +#: ../build/NEWS:17812 ../build/NEWS:20910 msgid "" "`bpo-26944 `__: Fix test_posix for " "Android where 'id -G' is entirely wrong or missing the effective gid." msgstr "" -#: ../build/NEWS:17780 ../build/NEWS:20878 ../build/NEWS:24797 +#: ../build/NEWS:17815 ../build/NEWS:20913 ../build/NEWS:24832 msgid "" "`bpo-28409 `__: regrtest: fix the parser " "of command line arguments." msgstr "" -#: ../build/NEWS:17782 ../build/NEWS:21146 +#: ../build/NEWS:17817 ../build/NEWS:21181 msgid "" "`bpo-28217 `__: Adds _testconsole module " "to test console input." msgstr "" -#: ../build/NEWS:17784 ../build/NEWS:20505 +#: ../build/NEWS:17819 ../build/NEWS:20540 msgid "" "`bpo-26939 `__: Add the support." "setswitchinterval() function to fix test_functools hanging on the Android " "armv7 qemu emulator." msgstr "" -#: ../build/NEWS:17790 +#: ../build/NEWS:17825 msgid "" "`bpo-31354 `__: Allow --with-lto to be " "used on all builds, not just `make profile-opt`." msgstr "" -#: ../build/NEWS:17793 +#: ../build/NEWS:17828 msgid "" "`bpo-31370 `__: Remove support for " "building --without-threads. This option is not really useful anymore in the " @@ -32907,78 +32861,78 @@ msgid "" "code base, including in difficult to maintain low-level internal code." msgstr "" -#: ../build/NEWS:17798 +#: ../build/NEWS:17833 msgid "" "`bpo-31341 `__: Per :pep:`11`, support " "for the IRIX operating system was removed." msgstr "" -#: ../build/NEWS:17801 ../build/NEWS:19612 +#: ../build/NEWS:17836 ../build/NEWS:19647 msgid "" "`bpo-30854 `__: Fix compile error when " "compiling --without-threads. Patch by Masayuki Yamamoto." msgstr "" -#: ../build/NEWS:17804 ../build/NEWS:20192 ../build/NEWS:24177 +#: ../build/NEWS:17839 ../build/NEWS:20227 ../build/NEWS:24212 msgid "" "`bpo-30687 `__: Locate msbuild.exe on " "Windows when building rather than vcvarsall.bat" msgstr "" -#: ../build/NEWS:17807 +#: ../build/NEWS:17842 msgid "" "`bpo-20210 `__: Support the *disabled* " "marker in Setup files. Extension modules listed after this marker are not " "built at all, neither by the Makefile nor by setup.py." msgstr "" -#: ../build/NEWS:17811 ../build/NEWS:20136 +#: ../build/NEWS:17846 ../build/NEWS:20171 msgid "" "`bpo-29941 `__: Add ``--with-" "assertions`` configure flag to explicitly enable C ``assert()`` checks. " "Defaults to off. ``--with-pydebug`` implies ``--with-assertions``." msgstr "" -#: ../build/NEWS:17815 ../build/NEWS:20140 +#: ../build/NEWS:17850 ../build/NEWS:20175 msgid "" "`bpo-28787 `__: Fix out-of-tree builds " "of Python when configured with ``--with--dtrace``." msgstr "" -#: ../build/NEWS:17818 ../build/NEWS:20143 ../build/NEWS:24164 +#: ../build/NEWS:17853 ../build/NEWS:20178 ../build/NEWS:24199 msgid "" "`bpo-29243 `__: Prevent unnecessary " "rebuilding of Python during ``make test``, ``make install`` and some other " "make targets when configured with ``--enable-optimizations``." msgstr "" -#: ../build/NEWS:17822 ../build/NEWS:20147 ../build/NEWS:24168 +#: ../build/NEWS:17857 ../build/NEWS:20182 ../build/NEWS:24203 msgid "" "`bpo-23404 `__: Don't regenerate " "generated files based on file modification time anymore: the action is now " "explicit. Replace ``make touch`` with ``make regen-all``." msgstr "" -#: ../build/NEWS:17826 ../build/NEWS:20151 ../build/NEWS:24172 +#: ../build/NEWS:17861 ../build/NEWS:20186 ../build/NEWS:24207 msgid "" "`bpo-29643 `__: Fix ``--enable-" "optimization`` didn't work." msgstr "" -#: ../build/NEWS:17828 ../build/NEWS:20511 +#: ../build/NEWS:17863 ../build/NEWS:20546 msgid "" "`bpo-27593 `__: sys.version and the " "platform module python_build(), python_branch(), and python_revision() " "functions now use git information rather than hg when building from a repo." msgstr "" -#: ../build/NEWS:17832 ../build/NEWS:20515 +#: ../build/NEWS:17867 ../build/NEWS:20550 msgid "" "`bpo-29572 `__: Update Windows build and " "OS X installers to use OpenSSL 1.0.2k." msgstr "" -#: ../build/NEWS:17834 +#: ../build/NEWS:17869 msgid "" "`bpo-27659 `__: Prohibit implicit C " "function declarations: use ``-Werror=implicit-function-declaration`` when " @@ -32986,50 +32940,50 @@ msgid "" "written by Chi Hsuan Yen." msgstr "" -#: ../build/NEWS:17838 +#: ../build/NEWS:17873 msgid "" "`bpo-29384 `__: Remove old Be OS helper " "scripts." msgstr "" -#: ../build/NEWS:17840 ../build/NEWS:20517 +#: ../build/NEWS:17875 ../build/NEWS:20552 msgid "" "`bpo-26851 `__: Set Android compilation " "and link flags." msgstr "" -#: ../build/NEWS:17842 ../build/NEWS:20519 +#: ../build/NEWS:17877 ../build/NEWS:20554 msgid "" "`bpo-28768 `__: Fix implicit declaration " "of function _setmode. Patch by Masayuki Yamamoto" msgstr "" -#: ../build/NEWS:17845 ../build/NEWS:20522 ../build/NEWS:24835 +#: ../build/NEWS:17880 ../build/NEWS:20557 ../build/NEWS:24870 msgid "" "`bpo-29080 `__: Removes hard dependency " "on hg.exe from PCBuild/build.bat" msgstr "" -#: ../build/NEWS:17847 ../build/NEWS:20524 ../build/NEWS:24837 +#: ../build/NEWS:17882 ../build/NEWS:20559 ../build/NEWS:24872 msgid "" "`bpo-23903 `__: Added missed names to PC/" "python3.def." msgstr "" -#: ../build/NEWS:17849 ../build/NEWS:20526 +#: ../build/NEWS:17884 ../build/NEWS:20561 msgid "" "`bpo-28762 `__: lockf() is available on " "Android API level 24, but the F_LOCK macro is not defined in android-ndk-r13." msgstr "" -#: ../build/NEWS:17852 ../build/NEWS:20529 +#: ../build/NEWS:17887 ../build/NEWS:20564 msgid "" "`bpo-28538 `__: Fix the compilation " "error that occurs because if_nameindex() is available on Android API level " "24, but the if_nameindex structure is not defined." msgstr "" -#: ../build/NEWS:17856 ../build/NEWS:20533 +#: ../build/NEWS:17891 ../build/NEWS:20568 msgid "" "`bpo-20211 `__: Do not add the directory " "for installing C header files and the directory for installing object code " @@ -33037,77 +32991,77 @@ msgid "" "Petazzoni." msgstr "" -#: ../build/NEWS:17860 ../build/NEWS:20537 +#: ../build/NEWS:17895 ../build/NEWS:20572 msgid "" "`bpo-28849 `__: Do not define sys." "implementation._multiarch on Android." msgstr "" -#: ../build/NEWS:17862 ../build/NEWS:20748 ../build/NEWS:24839 +#: ../build/NEWS:17897 ../build/NEWS:20783 ../build/NEWS:24874 msgid "" "`bpo-10656 `__: Fix out-of-tree building " "on AIX. Patch by Tristan Carel and Michael Haubenwallner." msgstr "" -#: ../build/NEWS:17865 ../build/NEWS:20751 ../build/NEWS:24842 +#: ../build/NEWS:17900 ../build/NEWS:20786 ../build/NEWS:24877 msgid "" "`bpo-26359 `__: Rename --with-" "optimiations to --enable-optimizations." msgstr "" -#: ../build/NEWS:17867 ../build/NEWS:20866 ../build/NEWS:24844 +#: ../build/NEWS:17902 ../build/NEWS:20901 ../build/NEWS:24879 msgid "" "`bpo-28444 `__: Fix missing extensions " "modules when cross compiling." msgstr "" -#: ../build/NEWS:17869 ../build/NEWS:20868 +#: ../build/NEWS:17904 ../build/NEWS:20903 msgid "" "`bpo-28208 `__: Update Windows build and " "OS X installers to use SQLite 3.14.2." msgstr "" -#: ../build/NEWS:17871 ../build/NEWS:20870 ../build/NEWS:24846 +#: ../build/NEWS:17906 ../build/NEWS:20905 ../build/NEWS:24881 msgid "" "`bpo-28248 `__: Update Windows build and " "OS X installers to use OpenSSL 1.0.2j." msgstr "" -#: ../build/NEWS:17873 +#: ../build/NEWS:17908 msgid "" "`bpo-21124 `__: Fix building the _struct " "module on Cygwin by passing ``NULL`` instead of ``&PyType_Type`` to " "PyVarObject_HEAD_INIT. Patch by Masayuki Yamamoto." msgstr "" -#: ../build/NEWS:17877 +#: ../build/NEWS:17912 msgid "" "`bpo-13756 `__: Fix building extensions " "modules on Cygwin. Patch by Roumen Petrov, based on original patch by Jason " "Tishler." msgstr "" -#: ../build/NEWS:17880 +#: ../build/NEWS:17915 msgid "" "`bpo-21085 `__: Add configure check for " "siginfo_t.si_band, which Cygwin does not provide. Patch by Masayuki Yamamoto " "with review and rebase by Erik Bray." msgstr "" -#: ../build/NEWS:17884 ../build/NEWS:21135 ../build/NEWS:24848 +#: ../build/NEWS:17919 ../build/NEWS:21170 ../build/NEWS:24883 msgid "" "`bpo-28258 `__: Fixed build with " "Estonian locale (python-config and distclean targets in Makefile). Patch by " "Arfrever Frehtes Taifersar Arahesis." msgstr "" -#: ../build/NEWS:17887 ../build/NEWS:21138 ../build/NEWS:24851 +#: ../build/NEWS:17922 ../build/NEWS:21173 ../build/NEWS:24886 msgid "" "`bpo-26661 `__: setup.py now detects " "system libffi with multiarch wrapper." msgstr "" -#: ../build/NEWS:17889 +#: ../build/NEWS:17924 msgid "" "`bpo-27979 `__: A full copy of libffi is " "no longer bundled for use when building _ctypes on non-OSX UNIX platforms. " @@ -33115,82 +33069,82 @@ msgid "" "platforms." msgstr "" -#: ../build/NEWS:17893 ../build/NEWS:21140 ../build/NEWS:24856 +#: ../build/NEWS:17928 ../build/NEWS:21175 ../build/NEWS:24891 msgid "" "`bpo-15819 `__: Remove redundant include " "search directory option for building outside the source tree." msgstr "" -#: ../build/NEWS:17896 ../build/NEWS:20753 ../build/NEWS:24893 +#: ../build/NEWS:17931 ../build/NEWS:20788 ../build/NEWS:24928 msgid "" "`bpo-28676 `__: Prevent missing " "'getentropy' declaration warning on macOS. Patch by Gareth Rees." msgstr "" -#: ../build/NEWS:17902 +#: ../build/NEWS:17937 msgid "" "`bpo-31392 `__: Update Windows build to " "use OpenSSL 1.1.0f" msgstr "" -#: ../build/NEWS:17904 ../build/NEWS:19618 +#: ../build/NEWS:17939 ../build/NEWS:19653 msgid "" "`bpo-30389 `__: Adds detection of Visual " "Studio 2017 to distutils on Windows." msgstr "" -#: ../build/NEWS:17906 +#: ../build/NEWS:17941 msgid "" "`bpo-31358 `__: zlib is no longer " "bundled in the CPython source, instead it is downloaded on demand just like " "bz2, lzma, OpenSSL, Tcl/Tk, and SQLite." msgstr "" -#: ../build/NEWS:17909 ../build/NEWS:19620 +#: ../build/NEWS:17944 ../build/NEWS:19655 msgid "" "`bpo-31340 `__: Change to building with " "MSVC v141 (included with Visual Studio 2017)" msgstr "" -#: ../build/NEWS:17912 ../build/NEWS:19623 +#: ../build/NEWS:17947 ../build/NEWS:19658 msgid "" "`bpo-30581 `__: os.cpu_count() now " "returns the correct number of processors on Windows when the number of " "logical processors is greater than 64." msgstr "" -#: ../build/NEWS:17915 +#: ../build/NEWS:17950 msgid "" "`bpo-30916 `__: Pre-build OpenSSL, Tcl " "and Tk and include the binaries in the build." msgstr "" -#: ../build/NEWS:17918 ../build/NEWS:19626 +#: ../build/NEWS:17953 ../build/NEWS:19661 msgid "" "`bpo-30731 `__: Add a missing xmlns to " "python.manifest so that it matches the schema." msgstr "" -#: ../build/NEWS:17921 +#: ../build/NEWS:17956 msgid "" "`bpo-30291 `__: Allow requiring 64-bit " "interpreters from py.exe using -64 suffix. Contributed by Steve (Gadget) " "Barnes." msgstr "" -#: ../build/NEWS:17924 +#: ../build/NEWS:17959 msgid "" "`bpo-30362 `__: Adds list options (-0, " "-0p) to py.exe launcher. Contributed by Steve Barnes." msgstr "" -#: ../build/NEWS:17927 +#: ../build/NEWS:17962 msgid "" "`bpo-23451 `__: Fix socket deprecation " "warnings in socketmodule.c. Patch by Segev Finer." msgstr "" -#: ../build/NEWS:17930 ../build/NEWS:20195 +#: ../build/NEWS:17965 ../build/NEWS:20230 msgid "" "`bpo-30450 `__: The build process on " "Windows no longer depends on Subversion, instead pulling external code from " @@ -33198,98 +33152,98 @@ msgid "" "``py -3.6``), NuGet is used to download a copy of 32-bit Python." msgstr "" -#: ../build/NEWS:17935 +#: ../build/NEWS:17970 msgid "" "`bpo-29579 `__: Removes readme.txt from " "the installer." msgstr "" -#: ../build/NEWS:17937 ../build/NEWS:20452 +#: ../build/NEWS:17972 ../build/NEWS:20487 msgid "" "`bpo-25778 `__: winreg does not truncate " "string correctly (Patch by Eryk Sun)" msgstr "" -#: ../build/NEWS:17939 +#: ../build/NEWS:17974 msgid "" "`bpo-28896 `__: Deprecate " "WindowsRegistryFinder and disable it by default" msgstr "" -#: ../build/NEWS:17941 ../build/NEWS:20861 +#: ../build/NEWS:17976 ../build/NEWS:20896 msgid "" "`bpo-28522 `__: Fixes mishandled buffer " "reallocation in getpathp.c" msgstr "" -#: ../build/NEWS:17943 ../build/NEWS:21102 +#: ../build/NEWS:17978 ../build/NEWS:21137 msgid "" "`bpo-28402 `__: Adds signed catalog " "files for stdlib on Windows." msgstr "" -#: ../build/NEWS:17945 ../build/NEWS:21104 +#: ../build/NEWS:17980 ../build/NEWS:21139 msgid "" "`bpo-28333 `__: Enables Unicode for ps1/" "ps2 and input() prompts. (Patch by Eryk Sun)" msgstr "" -#: ../build/NEWS:17948 ../build/NEWS:21107 ../build/NEWS:24820 +#: ../build/NEWS:17983 ../build/NEWS:21142 ../build/NEWS:24855 msgid "" "`bpo-28251 `__: Improvements to help " "manuals on Windows." msgstr "" -#: ../build/NEWS:17950 ../build/NEWS:21109 ../build/NEWS:24822 +#: ../build/NEWS:17985 ../build/NEWS:21144 ../build/NEWS:24857 msgid "" "`bpo-28110 `__: launcher.msi has " "different product codes between 32-bit and 64-bit" msgstr "" -#: ../build/NEWS:17953 ../build/NEWS:21112 +#: ../build/NEWS:17988 ../build/NEWS:21147 msgid "" "`bpo-28161 `__: Opening CON for write " "access fails" msgstr "" -#: ../build/NEWS:17955 ../build/NEWS:21114 +#: ../build/NEWS:17990 ../build/NEWS:21149 msgid "" "`bpo-28162 `__: WindowsConsoleIO " "readall() fails if first line starts with Ctrl+Z" msgstr "" -#: ../build/NEWS:17958 ../build/NEWS:21117 +#: ../build/NEWS:17993 ../build/NEWS:21152 msgid "" "`bpo-28163 `__: WindowsConsoleIO " "fileno() passes wrong flags to _open_osfhandle" msgstr "" -#: ../build/NEWS:17960 ../build/NEWS:21119 +#: ../build/NEWS:17995 ../build/NEWS:21154 msgid "" "`bpo-28164 `__: _PyIO_get_console_type " "fails for various paths" msgstr "" -#: ../build/NEWS:17962 ../build/NEWS:21121 +#: ../build/NEWS:17997 ../build/NEWS:21156 msgid "" "`bpo-28137 `__: Renames Windows path " "file to ._pth" msgstr "" -#: ../build/NEWS:17964 ../build/NEWS:21123 +#: ../build/NEWS:17999 ../build/NEWS:21158 msgid "" "`bpo-28138 `__: Windows ._pth file " "should allow import site" msgstr "" -#: ../build/NEWS:17969 ../build/NEWS:19632 +#: ../build/NEWS:18004 ../build/NEWS:19667 msgid "" "`bpo-31493 `__: IDLE code context -- fix " "code update and font update timers. Canceling timers prevents a warning " "message when test_idle completes." msgstr "" -#: ../build/NEWS:17972 ../build/NEWS:19635 +#: ../build/NEWS:18007 ../build/NEWS:19670 msgid "" "`bpo-31488 `__: IDLE - Update non-key " "options in former extension classes. When applying configdialog changes, " @@ -33297,20 +33251,20 @@ msgid "" "affect existing instances attached to existing editor windows." msgstr "" -#: ../build/NEWS:17977 ../build/NEWS:19640 +#: ../build/NEWS:18012 ../build/NEWS:19675 msgid "" "`bpo-31477 `__: IDLE - Improve rstrip " "entry in doc. Strip trailing whitespace strips more than blank spaces. " "Multiline string literals are not skipped." msgstr "" -#: ../build/NEWS:17980 ../build/NEWS:19643 +#: ../build/NEWS:18015 ../build/NEWS:19678 msgid "" "`bpo-31480 `__: IDLE - make tests pass " "with zzdummy extension disabled by default." msgstr "" -#: ../build/NEWS:17983 ../build/NEWS:19646 +#: ../build/NEWS:18018 ../build/NEWS:19681 msgid "" "`bpo-31421 `__: Document how IDLE runs " "tkinter programs. IDLE calls tcl/tk update in the background in order to " @@ -33318,33 +33272,33 @@ msgid "" "easier." msgstr "" -#: ../build/NEWS:17987 ../build/NEWS:19650 +#: ../build/NEWS:18022 ../build/NEWS:19685 msgid "" "`bpo-31414 `__: IDLE -- fix tk entry box " "tests by deleting first. Adding to an int entry is not the same as deleting " "and inserting because int('') will fail." msgstr "" -#: ../build/NEWS:17991 ../build/NEWS:19654 +#: ../build/NEWS:18026 ../build/NEWS:19689 msgid "" "`bpo-31051 `__: Rearrange IDLE " "configdialog GenPage into Window, Editor, and Help sections." msgstr "" -#: ../build/NEWS:17994 ../build/NEWS:19657 +#: ../build/NEWS:18029 ../build/NEWS:19692 msgid "" "`bpo-30617 `__: IDLE - Add docstrings " "and tests for outwin subclass of editor. Move some data and functions from " "the class to module level. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:17998 ../build/NEWS:19661 +#: ../build/NEWS:18033 ../build/NEWS:19696 msgid "" "`bpo-31287 `__: IDLE - Do not modify " "tkinter.message in test_configdialog." msgstr "" -#: ../build/NEWS:18000 ../build/NEWS:19663 +#: ../build/NEWS:18035 ../build/NEWS:19698 msgid "" "`bpo-27099 `__: Convert IDLE's built-in " "'extensions' to regular features. About 10 IDLE features were implemented as " @@ -33363,72 +33317,72 @@ msgid "" "Initial patch by Charles Wohlganger." msgstr "" -#: ../build/NEWS:18016 ../build/NEWS:19679 +#: ../build/NEWS:18051 ../build/NEWS:19714 msgid "" "`bpo-31206 `__: IDLE: Factor " "HighPage(Frame) class from ConfigDialog. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18019 ../build/NEWS:19682 +#: ../build/NEWS:18054 ../build/NEWS:19717 msgid "" "`bpo-31001 `__: Add tests for " "configdialog highlight tab. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18022 ../build/NEWS:19685 +#: ../build/NEWS:18057 ../build/NEWS:19720 msgid "" "`bpo-31205 `__: IDLE: Factor " "KeysPage(Frame) class from ConfigDialog. The slightly modified tests " "continue to pass. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18025 ../build/NEWS:19688 +#: ../build/NEWS:18060 ../build/NEWS:19723 msgid "" "`bpo-31130 `__: IDLE -- stop leaks in " "test_configdialog. Initial patch by Victor Stinner." msgstr "" -#: ../build/NEWS:18028 ../build/NEWS:19691 +#: ../build/NEWS:18063 ../build/NEWS:19726 msgid "" "`bpo-31002 `__: Add tests for " "configdialog keys tab. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18030 ../build/NEWS:19693 +#: ../build/NEWS:18065 ../build/NEWS:19728 msgid "" "`bpo-19903 `__: IDLE: Calltips use " "`inspect.signature` instead of `inspect.getfullargspec`. This improves " "calltips for builtins converted to use Argument Clinic. Patch by Louie Lu." msgstr "" -#: ../build/NEWS:18034 ../build/NEWS:19697 +#: ../build/NEWS:18069 ../build/NEWS:19732 msgid "" "`bpo-31083 `__: IDLE - Add an outline of " "a TabPage class in configdialog. Update existing classes to match outline. " "Initial patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18037 ../build/NEWS:19700 +#: ../build/NEWS:18072 ../build/NEWS:19735 msgid "" "`bpo-31050 `__: Factor GenPage(Frame) " "class from ConfigDialog. The slightly modified tests continue to pass. Patch " "by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18040 ../build/NEWS:19703 +#: ../build/NEWS:18075 ../build/NEWS:19738 msgid "" "`bpo-31004 `__: IDLE - Factor " "FontPage(Frame) class from ConfigDialog. Slightly modified tests continue to " "pass. Fix General tests. Patch mostly by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18044 ../build/NEWS:19707 +#: ../build/NEWS:18079 ../build/NEWS:19742 msgid "" "`bpo-30781 `__: IDLE - Use ttk widgets " "in ConfigDialog. Patches by Terry Jan Reedy and Cheryl Sabella." msgstr "" -#: ../build/NEWS:18047 ../build/NEWS:19710 +#: ../build/NEWS:18082 ../build/NEWS:19745 msgid "" "`bpo-31060 `__: IDLE - Finish " "rearranging methods of ConfigDialog Grouping methods pertaining to each tab " @@ -33436,7 +33390,7 @@ msgid "" "enable splitting the groups into classes." msgstr "" -#: ../build/NEWS:18051 ../build/NEWS:19714 +#: ../build/NEWS:18086 ../build/NEWS:19749 msgid "" "`bpo-30853 `__: IDLE -- Factor a " "VarTrace class out of ConfigDialog. Instance tracers manages pairs " @@ -33445,13 +33399,13 @@ msgid "" "class is 100%." msgstr "" -#: ../build/NEWS:18056 ../build/NEWS:19719 +#: ../build/NEWS:18091 ../build/NEWS:19754 msgid "" "`bpo-31003 `__: IDLE: Add more tests for " "General tab." msgstr "" -#: ../build/NEWS:18058 ../build/NEWS:19721 +#: ../build/NEWS:18093 ../build/NEWS:19756 msgid "" "`bpo-30993 `__: IDLE - Improve " "configdialog font page and tests. In configdialog: Document causal pathways " @@ -33465,25 +33419,25 @@ msgid "" "completely cover the related functions." msgstr "" -#: ../build/NEWS:18069 ../build/NEWS:19732 +#: ../build/NEWS:18104 ../build/NEWS:19767 msgid "" "`bpo-30981 `__: IDLE -- Add more " "configdialog font page tests." msgstr "" -#: ../build/NEWS:18071 ../build/NEWS:19734 +#: ../build/NEWS:18106 ../build/NEWS:19769 msgid "" "`bpo-28523 `__: IDLE: replace 'colour' " "with 'color' in configdialog." msgstr "" -#: ../build/NEWS:18073 ../build/NEWS:19736 +#: ../build/NEWS:18108 ../build/NEWS:19771 msgid "" "`bpo-30917 `__: Add tests for idlelib." "config.IdleConf. Increase coverage from 46% to 96%. Patch by Louie Lu." msgstr "" -#: ../build/NEWS:18076 ../build/NEWS:19739 +#: ../build/NEWS:18111 ../build/NEWS:19774 msgid "" "`bpo-30934 `__: Document coverage " "details for idlelib tests. Add section to idlelib/idle-test/README.txt. " @@ -33491,7 +33445,7 @@ msgid "" "that does not run during unit tests." msgstr "" -#: ../build/NEWS:18080 ../build/NEWS:19743 +#: ../build/NEWS:18115 ../build/NEWS:19778 msgid "" "`bpo-30913 `__: IDLE: Document " "ConfigDialog tk Vars, methods, and widgets in docstrings This will " @@ -33499,39 +33453,39 @@ msgid "" "by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18084 ../build/NEWS:19747 +#: ../build/NEWS:18119 ../build/NEWS:19782 msgid "" "`bpo-30899 `__: IDLE: Add tests for " "ConfigParser subclasses in config. Patch by Louie Lu." msgstr "" -#: ../build/NEWS:18087 ../build/NEWS:19750 +#: ../build/NEWS:18122 ../build/NEWS:19785 msgid "" "`bpo-30881 `__: IDLE: Add docstrings to " "browser.py. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18089 ../build/NEWS:19752 +#: ../build/NEWS:18124 ../build/NEWS:19787 msgid "" "`bpo-30851 `__: IDLE: Remove unused " "variables in configdialog. One is a duplicate, one is set but cannot be " "altered by users. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18093 ../build/NEWS:19756 +#: ../build/NEWS:18128 ../build/NEWS:19791 msgid "" "`bpo-30870 `__: IDLE: In Settings " "dialog, select font with Up, Down keys as well as mouse. Initial patch by " "Louie Lu." msgstr "" -#: ../build/NEWS:18096 ../build/NEWS:19759 +#: ../build/NEWS:18131 ../build/NEWS:19794 msgid "" "`bpo-8231 `__: IDLE: call config.IdleConf." "GetUserCfgDir only once." msgstr "" -#: ../build/NEWS:18098 ../build/NEWS:19761 +#: ../build/NEWS:18133 ../build/NEWS:19796 msgid "" "`bpo-30779 `__: IDLE: Factor " "ConfigChanges class from configdialog, put in config; test. * In config, put " @@ -33544,19 +33498,19 @@ msgid "" "Sabella contributed parts of the patch." msgstr "" -#: ../build/NEWS:18108 ../build/NEWS:19771 +#: ../build/NEWS:18143 ../build/NEWS:19806 msgid "" "`bpo-30777 `__: IDLE: configdialog - Add " "docstrings and fix comments. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18111 ../build/NEWS:19774 +#: ../build/NEWS:18146 ../build/NEWS:19809 msgid "" "`bpo-30495 `__: IDLE: Improve textview " "with docstrings, PEP8 names, and more tests. Patch by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18114 ../build/NEWS:19777 +#: ../build/NEWS:18149 ../build/NEWS:19812 msgid "" "`bpo-30723 `__: IDLE: Make several " "improvements to parenmatch. Add 'parens' style to highlight both opener and " @@ -33566,20 +33520,20 @@ msgid "" "patch by Charles Wohlganger." msgstr "" -#: ../build/NEWS:18120 ../build/NEWS:19783 +#: ../build/NEWS:18155 ../build/NEWS:19818 msgid "" "`bpo-30674 `__: IDLE: add docstrings to " "grep module. Patch by Cheryl Sabella" msgstr "" -#: ../build/NEWS:18122 ../build/NEWS:19785 +#: ../build/NEWS:18157 ../build/NEWS:19820 msgid "" "`bpo-21519 `__: IDLE's basic custom key " "entry dialog now detects duplicates properly. Original patch by Saimadhav " "Heblikar." msgstr "" -#: ../build/NEWS:18125 ../build/NEWS:19788 +#: ../build/NEWS:18160 ../build/NEWS:19823 msgid "" "`bpo-29910 `__: IDLE no longer deletes a " "character after commenting out a region by a key shortcut. Add ``return " @@ -33587,7 +33541,7 @@ msgid "" "key bindings." msgstr "" -#: ../build/NEWS:18129 ../build/NEWS:19792 +#: ../build/NEWS:18164 ../build/NEWS:19827 msgid "" "`bpo-30728 `__: Review and change " "idlelib.configdialog names. Lowercase method and attribute names. Replace " @@ -33596,14 +33550,14 @@ msgid "" "Sabella." msgstr "" -#: ../build/NEWS:18134 ../build/NEWS:19797 +#: ../build/NEWS:18169 ../build/NEWS:19832 msgid "" "`bpo-6739 `__: IDLE: Verify user-entered " "key sequences by trying to bind them with tk. Add tests for all 3 validation " "functions. Original patch by G Polo. Tests added by Cheryl Sabella." msgstr "" -#: ../build/NEWS:18138 ../build/NEWS:20107 +#: ../build/NEWS:18173 ../build/NEWS:20142 msgid "" "`bpo-15786 `__: Fix several problems " "with IDLE's autocompletion box. The following should now work: clicking on " @@ -33611,54 +33565,54 @@ msgid "" "Return. Hangs on MacOSX should no longer happen. Patch by Louie Lu." msgstr "" -#: ../build/NEWS:18143 ../build/NEWS:20112 +#: ../build/NEWS:18178 ../build/NEWS:20147 msgid "" "`bpo-25514 `__: Add doc subsubsection " "about IDLE failure to start. Popup no-connection message directs users to " "this section." msgstr "" -#: ../build/NEWS:18146 ../build/NEWS:20115 +#: ../build/NEWS:18181 ../build/NEWS:20150 msgid "" "`bpo-30642 `__: Fix reference leaks in " "IDLE tests. Patches by Louie Lu and Terry Jan Reedy." msgstr "" -#: ../build/NEWS:18149 ../build/NEWS:20118 +#: ../build/NEWS:18184 ../build/NEWS:20153 msgid "" "`bpo-30495 `__: Add docstrings for " "textview.py and use PEP8 names. Patches by Cheryl Sabella and Terry Jan " "Reedy." msgstr "" -#: ../build/NEWS:18152 ../build/NEWS:20121 +#: ../build/NEWS:18187 ../build/NEWS:20156 msgid "" "`bpo-30290 `__: Help-about: use pep8 " "names and add tests. Increase coverage to 100%. Patches by Louie Lu, Cheryl " "Sabella, and Terry Jan Reedy." msgstr "" -#: ../build/NEWS:18155 ../build/NEWS:20124 +#: ../build/NEWS:18190 ../build/NEWS:20159 msgid "" "`bpo-30303 `__: Add _utest option to " "textview; add new tests. Increase coverage to 100%. Patches by Louie Lu and " "Terry Jan Reedy." msgstr "" -#: ../build/NEWS:18158 ../build/NEWS:20433 +#: ../build/NEWS:18193 ../build/NEWS:20468 msgid "" "`bpo-29071 `__: IDLE colors f-string " "prefixes (but not invalid ur prefixes)." msgstr "" -#: ../build/NEWS:18160 ../build/NEWS:20435 +#: ../build/NEWS:18195 ../build/NEWS:20470 msgid "" "`bpo-28572 `__: Add 10% to coverage of " "IDLE's test_configdialog. Update and augment description of the " "configuration system." msgstr "" -#: ../build/NEWS:18166 ../build/NEWS:19804 +#: ../build/NEWS:18201 ../build/NEWS:19839 msgid "" "`bpo-30983 `__: gdb integration commands " "(py-bt, etc.) work on optimized shared builds now, too. :pep:`523` " @@ -33669,13 +33623,13 @@ msgid "" "Bruno \"Polaco\" Penteado." msgstr "" -#: ../build/NEWS:18174 +#: ../build/NEWS:18209 msgid "" "`bpo-29748 `__: Added the slice index " "converter in Argument Clinic." msgstr "" -#: ../build/NEWS:18176 +#: ../build/NEWS:18211 msgid "" "`bpo-24037 `__: Argument Clinic now uses " "the converter `bool(accept={int})` rather than `int` for semantical " @@ -33683,19 +33637,19 @@ msgid "" "help in converting to `bool` in future." msgstr "" -#: ../build/NEWS:18181 ../build/NEWS:20172 +#: ../build/NEWS:18216 ../build/NEWS:20207 msgid "" "`bpo-29367 `__: python-gdb.py now " "supports also ``method-wrapper`` (``wrapperobject``) objects." msgstr "" -#: ../build/NEWS:18184 ../build/NEWS:20640 +#: ../build/NEWS:18219 ../build/NEWS:20675 msgid "" "`bpo-28023 `__: Fix python-gdb.py didn't " "support new dict implementation." msgstr "" -#: ../build/NEWS:18186 +#: ../build/NEWS:18221 msgid "" "`bpo-15369 `__: The pybench and pystone " "microbenchmark have been removed from Tools. Please use the new Python " @@ -33703,13 +33657,13 @@ msgid "" "and includes a portable version of pybench working on Python 2 and Python 3." msgstr "" -#: ../build/NEWS:18191 +#: ../build/NEWS:18226 msgid "" "`bpo-28102 `__: The zipfile module CLI " "now prints usage to stderr. Patch by Stephen J. Turnbull." msgstr "" -#: ../build/NEWS:18197 +#: ../build/NEWS:18232 msgid "" "`bpo-31338 `__: Added the " "``Py_UNREACHABLE()`` macro for code paths which are never expected to be " @@ -33717,7 +33671,7 @@ msgid "" "manual." msgstr "" -#: ../build/NEWS:18201 +#: ../build/NEWS:18236 msgid "" "`bpo-30832 `__: Remove own " "implementation for thread-local storage. CPython has provided the own " @@ -33728,21 +33682,21 @@ msgid "" "any case." msgstr "" -#: ../build/NEWS:18208 +#: ../build/NEWS:18243 msgid "" "`bpo-30708 `__: " "PyUnicode_AsWideCharString() now raises a ValueError if the second argument " "is NULL and the wchar_t\\* string contains null characters." msgstr "" -#: ../build/NEWS:18211 +#: ../build/NEWS:18246 msgid "" "`bpo-16500 `__: Deprecate " "PyOS_AfterFork() and add PyOS_BeforeFork(), PyOS_AfterFork_Parent() and " "PyOS_AfterFork_Child()." msgstr "" -#: ../build/NEWS:18214 +#: ../build/NEWS:18249 msgid "" "`bpo-6532 `__: The type of results of " "PyThread_start_new_thread() and PyThread_get_thread_ident(), and the id " @@ -33750,7 +33704,7 @@ msgid "" "long\"." msgstr "" -#: ../build/NEWS:18218 +#: ../build/NEWS:18253 msgid "" "`bpo-27867 `__: Function " "PySlice_GetIndicesEx() is deprecated and replaced with a macro if " @@ -33759,7 +33713,7 @@ msgid "" "PySlice_Unpack() and PySlice_AdjustIndices()." msgstr "" -#: ../build/NEWS:18223 ../build/NEWS:20463 ../build/NEWS:24190 +#: ../build/NEWS:18258 ../build/NEWS:20498 ../build/NEWS:24225 msgid "" "`bpo-29083 `__: Fixed the declaration of " "some public API functions. PyArg_VaParse() and " @@ -33769,14 +33723,14 @@ msgid "" "defined." msgstr "" -#: ../build/NEWS:18229 +#: ../build/NEWS:18264 msgid "" "`bpo-28769 `__: The result of " "PyUnicode_AsUTF8AndSize() and PyUnicode_AsUTF8() is now of type ``const char " "*`` rather of ``char *``." msgstr "" -#: ../build/NEWS:18232 ../build/NEWS:20469 +#: ../build/NEWS:18267 ../build/NEWS:20504 msgid "" "`bpo-29058 `__: All stable API " "extensions added after Python 3.2 are now available only when Py_LIMITED_API " @@ -33784,20 +33738,20 @@ msgid "" "this API." msgstr "" -#: ../build/NEWS:18236 +#: ../build/NEWS:18271 msgid "" "`bpo-28822 `__: The index parameters " "*start* and *end* of PyUnicode_FindChar() are now adjusted to behave like " "``str[start:end]``." msgstr "" -#: ../build/NEWS:18239 ../build/NEWS:20627 ../build/NEWS:24775 +#: ../build/NEWS:18274 ../build/NEWS:20662 ../build/NEWS:24810 msgid "" "`bpo-28808 `__: " "PyUnicode_CompareWithASCIIString() now never raises exceptions." msgstr "" -#: ../build/NEWS:18241 +#: ../build/NEWS:18276 msgid "" "`bpo-28761 `__: The fields name and doc " "of structures PyMemberDef, PyGetSetDef, PyStructSequence_Field, " @@ -33805,129 +33759,129 @@ msgid "" "rather of ``char *``." msgstr "" -#: ../build/NEWS:18245 +#: ../build/NEWS:18280 msgid "" "`bpo-28748 `__: Private variable " "_Py_PackageContext is now of type ``const char *`` rather of ``char *``." msgstr "" -#: ../build/NEWS:18248 +#: ../build/NEWS:18283 msgid "" "`bpo-19569 `__: Compiler warnings are " "now emitted if use most of deprecated functions." msgstr "" -#: ../build/NEWS:18251 ../build/NEWS:21128 +#: ../build/NEWS:18286 ../build/NEWS:21163 msgid "" "`bpo-28426 `__: Deprecated undocumented " "functions PyUnicode_AsEncodedObject(), PyUnicode_AsDecodedObject(), " "PyUnicode_AsDecodedUnicode() and PyUnicode_AsEncodedUnicode()." msgstr "" -#: ../build/NEWS:18257 +#: ../build/NEWS:18292 msgid "Python 3.6.6 final" msgstr "" -#: ../build/NEWS:18261 +#: ../build/NEWS:18296 msgid "There were no new changes in version 3.6.6." msgstr "" -#: ../build/NEWS:18266 +#: ../build/NEWS:18301 msgid "Python 3.6.6 release candidate 1" msgstr "" -#: ../build/NEWS:18268 +#: ../build/NEWS:18303 msgid "*Release date: 2018-06-11*" msgstr "" -#: ../build/NEWS:18499 +#: ../build/NEWS:18534 msgid "" "`bpo-33184 `__: Update Windows installer " "to OpenSSL 1.0.2o." msgstr "" -#: ../build/NEWS:18504 +#: ../build/NEWS:18539 msgid "" "`bpo-33184 `__: Update macOS installer " "build to use OpenSSL 1.0.2o." msgstr "" -#: ../build/NEWS:18536 +#: ../build/NEWS:18571 msgid "" "`bpo-29706 `__: IDLE now colors async " "and await as keywords in 3.6. They become full keywords in 3.7." msgstr "" -#: ../build/NEWS:18577 +#: ../build/NEWS:18612 msgid "Python 3.6.5 final" msgstr "" -#: ../build/NEWS:18579 +#: ../build/NEWS:18614 msgid "*Release date: 2018-03-28*" msgstr "" -#: ../build/NEWS:18593 +#: ../build/NEWS:18628 msgid "Python 3.6.5 release candidate 1" msgstr "" -#: ../build/NEWS:18595 +#: ../build/NEWS:18630 msgid "*Release date: 2018-03-13*" msgstr "" -#: ../build/NEWS:18634 +#: ../build/NEWS:18669 msgid "" "`bpo-32329 `__: ``sys.flags." "hash_randomization`` is now properly set to 0 when hash randomization is " "turned off by ``PYTHONHASHSEED=0``." msgstr "" -#: ../build/NEWS:18637 +#: ../build/NEWS:18672 msgid "" "`bpo-30416 `__: The optimizer is now " "protected from spending much time doing complex calculations and consuming " "much memory for creating large constants in constant folding." msgstr "" -#: ../build/NEWS:18664 +#: ../build/NEWS:18699 msgid "" "`bpo-30353 `__: Fix ctypes pass-by-value " "for structs on 64-bit Cygwin/MinGW." msgstr "" -#: ../build/NEWS:18702 +#: ../build/NEWS:18737 msgid "" "`bpo-32394 `__: socket: Remove " "TCP_FASTOPEN, TCP_KEEPCNT flags on older version Windows during run-time." msgstr "" -#: ../build/NEWS:18734 +#: ../build/NEWS:18769 msgid "" "`bpo-32555 `__: On FreeBSD and Solaris, " "os.strerror() now always decode the byte string from the current locale " "encoding, rather than using ASCII/surrogateescape in some cases." msgstr "" -#: ../build/NEWS:18752 +#: ../build/NEWS:18787 msgid "" "`bpo-32185 `__: The SSL module no longer " "sends IP addresses in SNI TLS extension on platforms with OpenSSL 1.0.2+ or " "inet_pton." msgstr "" -#: ../build/NEWS:18817 +#: ../build/NEWS:18852 msgid "" "`bpo-31518 `__: Debian Unstable has " "disabled TLS 1.0 and 1.1 for SSLv23_METHOD(). Change TLS/SSL protocol of " "some tests to PROTOCOL_TLS or PROTOCOL_TLSv1_2 to make them pass on Debian." msgstr "" -#: ../build/NEWS:18850 +#: ../build/NEWS:18885 msgid "" "`bpo-32588 `__: Create standalone " "_distutils_findvs module." msgstr "" -#: ../build/NEWS:18855 +#: ../build/NEWS:18890 msgid "" "`bpo-32726 `__: Provide an additional, " "more modern macOS installer variant that supports macOS 10.9+ systems in 64-" @@ -33936,29 +33890,29 @@ msgid "" "its own copy of Tcl/Tk 8.6.8." msgstr "" -#: ../build/NEWS:18911 +#: ../build/NEWS:18946 msgid "Python 3.6.4 final" msgstr "" -#: ../build/NEWS:18913 +#: ../build/NEWS:18948 msgid "*Release date: 2017-12-18*" msgstr "" -#: ../build/NEWS:18915 +#: ../build/NEWS:18950 msgid "There were no new code changes in version 3.6.4 since v3.6.4rc1." msgstr "" -#: ../build/NEWS:18920 +#: ../build/NEWS:18955 msgid "Python 3.6.4 release candidate 1" msgstr "" -#: ../build/NEWS:18949 +#: ../build/NEWS:18984 msgid "" "`bpo-31852 `__: Fix a segmentation fault " "caused by a combination of the async soft keyword and continuation lines." msgstr "" -#: ../build/NEWS:19283 +#: ../build/NEWS:19318 msgid "" "`bpo-13802 `__: Use non-Latin characters " "in the IDLE's Font settings sample. Even if one selects a font that defines " @@ -33969,163 +33923,163 @@ msgid "" "arranged. The Font/Tabs help explains a bit about the additions." msgstr "" -#: ../build/NEWS:19339 +#: ../build/NEWS:19374 msgid "Python 3.6.3 final" msgstr "" -#: ../build/NEWS:19341 +#: ../build/NEWS:19376 msgid "*Release date: 2017-10-03*" msgstr "" -#: ../build/NEWS:19346 +#: ../build/NEWS:19381 msgid "" "`bpo-31641 `__: Re-allow arbitrary " "iterables in `concurrent.futures.as_completed()`. Fixes regression in " "3.6.3rc1." msgstr "" -#: ../build/NEWS:19352 +#: ../build/NEWS:19387 msgid "" "`bpo-31662 `__: Fix typos in Windows " "``uploadrelease.bat`` script. Fix Windows Doc build issues in ``Doc/make." "bat``." msgstr "" -#: ../build/NEWS:19355 +#: ../build/NEWS:19390 msgid "" "`bpo-31423 `__: Fix building the PDF " "documentation with newer versions of Sphinx." msgstr "" -#: ../build/NEWS:19360 +#: ../build/NEWS:19395 msgid "Python 3.6.3 release candidate 1" msgstr "" -#: ../build/NEWS:19362 +#: ../build/NEWS:19397 msgid "*Release date: 2017-09-18*" msgstr "" -#: ../build/NEWS:19814 +#: ../build/NEWS:19849 msgid "Python 3.6.2 final" msgstr "" -#: ../build/NEWS:19816 +#: ../build/NEWS:19851 msgid "*Release date: 2017-07-17*" msgstr "" -#: ../build/NEWS:19818 ../build/NEWS:20545 +#: ../build/NEWS:19853 ../build/NEWS:20580 msgid "No changes since release candidate 2" msgstr "" -#: ../build/NEWS:19823 +#: ../build/NEWS:19858 msgid "Python 3.6.2 release candidate 2" msgstr "" -#: ../build/NEWS:19825 +#: ../build/NEWS:19860 msgid "*Release date: 2017-07-07*" msgstr "" -#: ../build/NEWS:19850 +#: ../build/NEWS:19885 msgid "Python 3.6.2 release candidate 1" msgstr "" -#: ../build/NEWS:19852 +#: ../build/NEWS:19887 msgid "*Release date: 2017-06-17*" msgstr "" -#: ../build/NEWS:19860 +#: ../build/NEWS:19895 msgid "" "`bpo-30604 `__: Move co_extra_freefuncs " "to not be per-thread to avoid crashes" msgstr "" -#: ../build/NEWS:19890 ../build/NEWS:23842 +#: ../build/NEWS:19925 ../build/NEWS:23877 msgid "" "`bpo-29600 `__: Fix wrapping coroutine " "return values in StopIteration." msgstr "" -#: ../build/NEWS:19919 ../build/NEWS:23908 +#: ../build/NEWS:19954 ../build/NEWS:23943 msgid "" "`bpo-30645 `__: Fix path calculation in " "imp.load_package(), fixing it for cases when a package is only shipped with " "bytecodes. Patch by Alexandru Ardelean." msgstr "" -#: ../build/NEWS:19939 +#: ../build/NEWS:19974 msgid "" "`bpo-24484 `__: Avoid race condition in " "multiprocessing cleanup (#2159)" msgstr "" -#: ../build/NEWS:20013 ../build/NEWS:23976 +#: ../build/NEWS:20048 ../build/NEWS:24011 msgid "" "`bpo-26293 `__: Change resulted because " "of zipfile breakage. (See also: `bpo-29094 `__)" msgstr "" -#: ../build/NEWS:20087 ../build/NEWS:24043 +#: ../build/NEWS:20122 ../build/NEWS:24078 msgid "" "`bpo-28298 `__: Fix a bug that prevented " "array 'Q', 'L' and 'I' from accepting big intables (objects that have " "__int__) as elements. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:20130 +#: ../build/NEWS:20165 msgid "" "`bpo-27867 `__: Function " "PySlice_GetIndicesEx() no longer replaced with a macro if Py_LIMITED_API is " "not set." msgstr "" -#: ../build/NEWS:20202 +#: ../build/NEWS:20237 msgid "Python 3.6.1 final" msgstr "" -#: ../build/NEWS:20204 +#: ../build/NEWS:20239 msgid "*Release date: 2017-03-21*" msgstr "" -#: ../build/NEWS:20220 +#: ../build/NEWS:20255 msgid "" "`bpo-27593 `__: fix format of git " "information used in sys.version" msgstr "" -#: ../build/NEWS:20222 +#: ../build/NEWS:20257 msgid "Fix incompatible comment in python.h" msgstr "" -#: ../build/NEWS:20226 +#: ../build/NEWS:20261 msgid "Python 3.6.1 release candidate 1" msgstr "" -#: ../build/NEWS:20228 +#: ../build/NEWS:20263 msgid "*Release date: 2017-03-04*" msgstr "" -#: ../build/NEWS:20339 ../build/NEWS:24075 +#: ../build/NEWS:20374 ../build/NEWS:24110 msgid "" "`bpo-29519 `__: Fix weakref spewing " "exceptions during interpreter shutdown when used with a rare combination of " "multiprocessing and custom codecs." msgstr "" -#: ../build/NEWS:20355 +#: ../build/NEWS:20390 msgid "" "`bpo-29316 `__: Restore the provisional " "status of typing module, add corresponding note to documentation. Patch by " "Ivan L." msgstr "" -#: ../build/NEWS:20361 ../build/NEWS:24091 +#: ../build/NEWS:20396 ../build/NEWS:24126 msgid "" "`bpo-29011 `__: Fix an important " "omission by adding Deque to the typing module." msgstr "" -#: ../build/NEWS:20375 +#: ../build/NEWS:20410 msgid "" "`bpo-29203 `__: functools.lru_cache() " "now respects :pep:`468` and preserves the order of keyword arguments. " @@ -34133,83 +34087,83 @@ msgid "" "potentially give different results." msgstr "" -#: ../build/NEWS:20382 ../build/NEWS:24348 +#: ../build/NEWS:20417 ../build/NEWS:24383 msgid "" "`bpo-29094 `__: Offsets in a ZIP file " "created with extern file object and modes \"w\" and \"x\" now are relative " "to the start of the file." msgstr "" -#: ../build/NEWS:20385 +#: ../build/NEWS:20420 msgid "" "`bpo-29085 `__: Allow random.Random." "seed() to use high quality OS randomness rather than the pid and time." msgstr "" -#: ../build/NEWS:20388 +#: ../build/NEWS:20423 msgid "" "`bpo-29061 `__: Fixed bug in secrets." "randbelow() which would hang when given a negative input. Patch by Brendan " "Donegan." msgstr "" -#: ../build/NEWS:20396 ../build/NEWS:24354 +#: ../build/NEWS:20431 ../build/NEWS:24389 msgid "" "`bpo-29119 `__: Fix weakrefs in the pure " "python version of collections.OrderedDict move_to_end() method. Contributed " "by Andra Bogildea." msgstr "" -#: ../build/NEWS:20408 +#: ../build/NEWS:20443 msgid "" "`bpo-29055 `__: Neaten-up empty " "population error on random.choice() by suppressing the upstream exception." msgstr "" -#: ../build/NEWS:20423 ../build/NEWS:24378 +#: ../build/NEWS:20458 ../build/NEWS:24413 msgid "" "`bpo-28847 `__: dbm.dumb now supports " "reading read-only files and no longer writes the index file when it is not " "changed." msgstr "" -#: ../build/NEWS:20441 +#: ../build/NEWS:20476 msgid "" "`bpo-29579 `__: Removes readme.txt from " "the installer" msgstr "" -#: ../build/NEWS:20443 +#: ../build/NEWS:20478 msgid "" "`bpo-29326 `__: Ignores blank lines in ." "_pth files (Patch by Alexey Izbyshev)" msgstr "" -#: ../build/NEWS:20445 +#: ../build/NEWS:20480 msgid "" "`bpo-28164 `__: Correctly handle special " "console filenames (patch by Eryk Sun)" msgstr "" -#: ../build/NEWS:20447 +#: ../build/NEWS:20482 msgid "" "`bpo-29409 `__: Implement :pep:`529` for " "io.FileIO (Patch by Eryk Sun)" msgstr "" -#: ../build/NEWS:20449 ../build/NEWS:24180 +#: ../build/NEWS:20484 ../build/NEWS:24215 msgid "" "`bpo-29392 `__: Prevent crash when " "passing invalid arguments into msvcrt module." msgstr "" -#: ../build/NEWS:20454 +#: ../build/NEWS:20489 msgid "" "`bpo-28896 `__: Deprecate " "WindowsRegistryFinder and disable it by default." msgstr "" -#: ../build/NEWS:20459 +#: ../build/NEWS:20494 msgid "" "`bpo-27867 `__: Function " "PySlice_GetIndicesEx() is replaced with a macro if Py_LIMITED_API is not set " @@ -34217,7 +34171,7 @@ msgid "" "0x03060100 or higher." msgstr "" -#: ../build/NEWS:20489 ../build/NEWS:24145 +#: ../build/NEWS:20524 ../build/NEWS:24180 msgid "" "`bpo-28087 `__: Skip test_asyncore and " "test_eintr poll failures on macOS. Skip some tests of select.poll when " @@ -34225,7 +34179,7 @@ msgid "" "function on some macOS versions." msgstr "" -#: ../build/NEWS:20493 ../build/NEWS:24155 +#: ../build/NEWS:20528 ../build/NEWS:24190 msgid "" "`bpo-29571 `__: to match the behaviour " "of the ``re.LOCALE`` flag, test_re.test_locale_flag now uses ``locale." @@ -34234,68 +34188,68 @@ msgid "" "encoding is a multi-byte encoding)" msgstr "" -#: ../build/NEWS:20541 +#: ../build/NEWS:20576 msgid "Python 3.6.0 final" msgstr "" -#: ../build/NEWS:20543 +#: ../build/NEWS:20578 msgid "*Release date: 2016-12-23*" msgstr "" -#: ../build/NEWS:20550 +#: ../build/NEWS:20585 msgid "Python 3.6.0 release candidate 2" msgstr "" -#: ../build/NEWS:20552 +#: ../build/NEWS:20587 msgid "*Release date: 2016-12-16*" msgstr "" -#: ../build/NEWS:20560 +#: ../build/NEWS:20595 msgid "" "`bpo-28990 `__: Fix asyncio SSL hanging " "if connection is closed before handshake is completed. (Patch by HoHo-Ho)" msgstr "" -#: ../build/NEWS:20566 +#: ../build/NEWS:20601 msgid "" "`bpo-28770 `__: Fix python-gdb.py for " "fastcalls." msgstr "" -#: ../build/NEWS:20571 +#: ../build/NEWS:20606 msgid "" "`bpo-28896 `__: Deprecate " "WindowsRegistryFinder." msgstr "" -#: ../build/NEWS:20576 +#: ../build/NEWS:20611 msgid "" "`bpo-28898 `__: Prevent gdb build errors " "due to HAVE_LONG_LONG redefinition." msgstr "" -#: ../build/NEWS:20580 +#: ../build/NEWS:20615 msgid "Python 3.6.0 release candidate 1" msgstr "" -#: ../build/NEWS:20582 +#: ../build/NEWS:20617 msgid "*Release date: 2016-12-06*" msgstr "" -#: ../build/NEWS:20604 +#: ../build/NEWS:20639 msgid "" "`bpo-27030 `__: Unknown escapes in re." "sub() replacement template are allowed again. But they still are deprecated " "and will be disabled in 3.7." msgstr "" -#: ../build/NEWS:20622 +#: ../build/NEWS:20657 msgid "" "`bpo-28843 `__: Fix asyncio C Task to " "handle exceptions __traceback__." msgstr "" -#: ../build/NEWS:20632 +#: ../build/NEWS:20667 msgid "" "`bpo-23722 `__: The data model reference " "and the porting section in the What's New guide now cover the additional " @@ -34303,15 +34257,15 @@ msgid "" "pep:`487` and zero-argument ``super()``." msgstr "" -#: ../build/NEWS:20644 +#: ../build/NEWS:20679 msgid "Python 3.6.0 beta 4" msgstr "" -#: ../build/NEWS:20646 +#: ../build/NEWS:20681 msgid "*Release date: 2016-11-21*" msgstr "" -#: ../build/NEWS:20674 +#: ../build/NEWS:20709 msgid "" "`bpo-27243 `__: Change " "PendingDeprecationWarning -> DeprecationWarning. As it was agreed in the " @@ -34319,179 +34273,179 @@ msgid "" "PendingDeprecationWarning in 3.5 and in DeprecationWarning in 3.6." msgstr "" -#: ../build/NEWS:20693 +#: ../build/NEWS:20728 msgid "" "`bpo-20572 `__: The subprocess.Popen." "wait method's undocumented endtime parameter now raises a DeprecationWarning." msgstr "" -#: ../build/NEWS:20710 +#: ../build/NEWS:20745 msgid "" "`bpo-28600 `__: Optimize loop.call_soon." msgstr "" -#: ../build/NEWS:20712 ../build/NEWS:24726 +#: ../build/NEWS:20747 ../build/NEWS:24761 msgid "" "`bpo-28613 `__: Fix get_event_loop() " "return the current loop if called from coroutines/callbacks." msgstr "" -#: ../build/NEWS:20715 +#: ../build/NEWS:20750 msgid "" "`bpo-28634 `__: Fix asyncio.isfuture() " "to support unittest.Mock." msgstr "" -#: ../build/NEWS:20717 +#: ../build/NEWS:20752 msgid "" "`bpo-26081 `__: Fix refleak in _asyncio." "Future.__iter__().throw." msgstr "" -#: ../build/NEWS:20719 ../build/NEWS:24729 +#: ../build/NEWS:20754 ../build/NEWS:24764 msgid "" "`bpo-28639 `__: Fix inspect.isawaitable " "to always return bool Patch by Justin Mayfield." msgstr "" -#: ../build/NEWS:20722 ../build/NEWS:24732 +#: ../build/NEWS:20757 ../build/NEWS:24767 msgid "" "`bpo-28652 `__: Make loop methods reject " "socket kinds they do not support." msgstr "" -#: ../build/NEWS:20724 ../build/NEWS:24734 +#: ../build/NEWS:20759 ../build/NEWS:24769 msgid "" "`bpo-28653 `__: Fix a refleak in " "functools.lru_cache." msgstr "" -#: ../build/NEWS:20726 ../build/NEWS:24736 +#: ../build/NEWS:20761 ../build/NEWS:24771 msgid "" "`bpo-28703 `__: Fix asyncio." "iscoroutinefunction to handle Mock objects." msgstr "" -#: ../build/NEWS:20728 +#: ../build/NEWS:20763 msgid "" "`bpo-28704 `__: Fix create_unix_server " "to support Path-like objects (PEP 519)." msgstr "" -#: ../build/NEWS:20730 +#: ../build/NEWS:20765 msgid "" "`bpo-28720 `__: Add collections.abc." "AsyncGenerator." msgstr "" -#: ../build/NEWS:20758 +#: ../build/NEWS:20793 msgid "Python 3.6.0 beta 3" msgstr "" -#: ../build/NEWS:20760 +#: ../build/NEWS:20795 msgid "*Release date: 2016-10-31*" msgstr "" -#: ../build/NEWS:20783 +#: ../build/NEWS:20818 msgid "" "`bpo-28471 `__: Fix \"Python memory " "allocator called without holding the GIL\" crash in socket.setblocking." msgstr "" -#: ../build/NEWS:20805 +#: ../build/NEWS:20840 msgid "" "`bpo-18844 `__: The various ways of " "specifying weights for random.choices() now produce the same result " "sequences." msgstr "" -#: ../build/NEWS:20808 ../build/NEWS:24410 +#: ../build/NEWS:20843 ../build/NEWS:24445 msgid "" "`bpo-28255 `__: calendar.TextCalendar()." "prmonth() no longer prints a space at the start of new line after printing a " "month's calendar. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:20841 ../build/NEWS:24424 +#: ../build/NEWS:20876 ../build/NEWS:24459 msgid "" "`bpo-24452 `__: Make webbrowser support " "Chrome on Mac OS X." msgstr "" -#: ../build/NEWS:20846 +#: ../build/NEWS:20881 msgid "" "`bpo-28492 `__: Fix how StopIteration " "exception is raised in _asyncio.Future." msgstr "" -#: ../build/NEWS:20848 +#: ../build/NEWS:20883 msgid "" "`bpo-28500 `__: Fix asyncio to handle " "async gens GC from another thread." msgstr "" -#: ../build/NEWS:20850 ../build/NEWS:24718 +#: ../build/NEWS:20885 ../build/NEWS:24753 msgid "" "`bpo-26923 `__: Fix asyncio.Gather to " "refuse being cancelled once all children are done. Patch by Johannes Ebke." msgstr "" -#: ../build/NEWS:20853 ../build/NEWS:24721 +#: ../build/NEWS:20888 ../build/NEWS:24756 msgid "" "`bpo-26796 `__: Don't configure the " "number of workers for default threadpool executor. Initial patch by Hans " "Lawrenz." msgstr "" -#: ../build/NEWS:20856 +#: ../build/NEWS:20891 msgid "" "`bpo-28544 `__: Implement asyncio.Task " "in C." msgstr "" -#: ../build/NEWS:20882 +#: ../build/NEWS:20917 msgid "Python 3.6.0 beta 2" msgstr "" -#: ../build/NEWS:20884 +#: ../build/NEWS:20919 msgid "*Release date: 2016-10-10*" msgstr "" -#: ../build/NEWS:20900 +#: ../build/NEWS:20935 msgid "" "`bpo-28376 `__: Creating instances of " "range_iterator by calling range_iterator type now is deprecated. Patch by " "Oren Milman." msgstr "" -#: ../build/NEWS:20903 ../build/NEWS:24251 +#: ../build/NEWS:20938 ../build/NEWS:24286 msgid "" "`bpo-28376 `__: The constructor of " "range_iterator now checks that step is not 0. Patch by Oren Milman." msgstr "" -#: ../build/NEWS:20964 ../build/NEWS:24429 +#: ../build/NEWS:20999 ../build/NEWS:24464 msgid "" "`bpo-26293 `__: Fixed writing ZIP files " "that starts not from the start of the file. Offsets in ZIP file now are " "relative to the start of the archive in conforming to the specification." msgstr "" -#: ../build/NEWS:20971 +#: ../build/NEWS:21006 msgid "" "`bpo-27181 `__: remove statistics." "geometric_mean and defer until 3.7." msgstr "" -#: ../build/NEWS:21150 +#: ../build/NEWS:21185 msgid "Python 3.6.0 beta 1" msgstr "" -#: ../build/NEWS:21152 +#: ../build/NEWS:21187 msgid "*Release date: 2016-09-12*" msgstr "" -#: ../build/NEWS:21157 +#: ../build/NEWS:21192 msgid "" "`bpo-23722 `__: The __class__ cell used " "by zero-argument super() is now initialized from type.__new__ rather than " @@ -34500,25 +34454,25 @@ msgid "" "Teichmann." msgstr "" -#: ../build/NEWS:21162 ../build/NEWS:24282 +#: ../build/NEWS:21197 ../build/NEWS:24317 msgid "" "`bpo-25221 `__: Fix corrupted result " "from PyLong_FromLong(0) when Python is compiled with NSMALLPOSINTS = 0." msgstr "" -#: ../build/NEWS:21165 +#: ../build/NEWS:21200 msgid "" "`bpo-27080 `__: Implement formatting " "support for :pep:`515`. Initial patch by Chris Angelico." msgstr "" -#: ../build/NEWS:21168 +#: ../build/NEWS:21203 msgid "" "`bpo-27199 `__: In tarfile, expose " "copyfileobj bufsize to improve throughput. Patch by Jason Fried." msgstr "" -#: ../build/NEWS:21171 +#: ../build/NEWS:21206 msgid "" "`bpo-27948 `__: In f-strings, only allow " "backslashes inside the braces (where the expressions are). This is a " @@ -34527,32 +34481,32 @@ msgid "" "enclosed within literal braces, and not escapes like ``f'\\x7b\"hi\"\\x7d'``." msgstr "" -#: ../build/NEWS:21177 +#: ../build/NEWS:21212 msgid "" "`bpo-28046 `__: Remove platform-specific " "directories from sys.path." msgstr "" -#: ../build/NEWS:21179 +#: ../build/NEWS:21214 msgid "" "`bpo-28071 `__: Add early-out for " "differencing from an empty set." msgstr "" -#: ../build/NEWS:21181 ../build/NEWS:24285 +#: ../build/NEWS:21216 ../build/NEWS:24320 msgid "" "`bpo-25758 `__: Prevents zipimport from " "unnecessarily encoding a filename (patch by Eryk Sun)" msgstr "" -#: ../build/NEWS:21184 +#: ../build/NEWS:21219 msgid "" "`bpo-25856 `__: The __module__ attribute " "of extension classes and functions now is interned. This leads to more " "compact pickle data with protocol 4." msgstr "" -#: ../build/NEWS:21187 +#: ../build/NEWS:21222 msgid "" "`bpo-27213 `__: Rework CALL_FUNCTION* " "opcodes to produce shorter and more efficient bytecode. Patch by Demur " @@ -34560,135 +34514,135 @@ msgid "" "Stinner." msgstr "" -#: ../build/NEWS:21191 +#: ../build/NEWS:21226 msgid "" "`bpo-26331 `__: Implement tokenizing " "support for :pep:`515`. Patch by Georg Brandl." msgstr "" -#: ../build/NEWS:21194 +#: ../build/NEWS:21229 msgid "" "`bpo-27999 `__: Make \"global after use" "\" a SyntaxError, and ditto for nonlocal. Patch by Ivan Levkivskyi." msgstr "" -#: ../build/NEWS:21197 +#: ../build/NEWS:21232 msgid "" "`bpo-28003 `__: Implement :pep:`525` -- " "Asynchronous Generators." msgstr "" -#: ../build/NEWS:21199 +#: ../build/NEWS:21234 msgid "" "`bpo-27985 `__: Implement :pep:`526` -- " "Syntax for Variable Annotations. Patch by Ivan Levkivskyi." msgstr "" -#: ../build/NEWS:21202 +#: ../build/NEWS:21237 msgid "" "`bpo-26058 `__: Add a new private " "version to the builtin dict type, incremented at each dictionary creation " "and at each dictionary change. Implementation of the PEP 509." msgstr "" -#: ../build/NEWS:21206 +#: ../build/NEWS:21241 msgid "" "`bpo-27364 `__: A backslash-character " "pair that is not a valid escape sequence now generates a " "DeprecationWarning. Patch by Emanuel Barry." msgstr "" -#: ../build/NEWS:21209 +#: ../build/NEWS:21244 msgid "" "`bpo-27350 `__: `dict` implementation is " "changed like PyPy. It is more compact and preserves insertion order. " "(Concept developed by Raymond Hettinger and patch by Inada Naoki.)" msgstr "" -#: ../build/NEWS:21213 +#: ../build/NEWS:21248 msgid "" "`bpo-27911 `__: Remove unnecessary error " "checks in ``exec_builtin_or_dynamic()``." msgstr "" -#: ../build/NEWS:21216 +#: ../build/NEWS:21251 msgid "" "`bpo-27078 `__: Added BUILD_STRING " "opcode. Optimized f-strings evaluation." msgstr "" -#: ../build/NEWS:21218 +#: ../build/NEWS:21253 msgid "" "`bpo-17884 `__: Python now requires " "systems with inttypes.h and stdint.h" msgstr "" -#: ../build/NEWS:21220 +#: ../build/NEWS:21255 msgid "" "`bpo-27961 `__: Require platforms to " "support ``long long``. Python hasn't compiled without ``long long`` for " "years, so this is basically a formality." msgstr "" -#: ../build/NEWS:21224 +#: ../build/NEWS:21259 msgid "" "`bpo-27355 `__: Removed support for " "Windows CE. It was never finished, and Windows CE is no longer a relevant " "platform for Python." msgstr "" -#: ../build/NEWS:21227 +#: ../build/NEWS:21262 msgid "Implement :pep:`523`." msgstr "" -#: ../build/NEWS:21229 +#: ../build/NEWS:21264 msgid "" "`bpo-27870 `__: A left shift of zero by " "a large integer no longer attempts to allocate large amounts of memory." msgstr "" -#: ../build/NEWS:21232 +#: ../build/NEWS:21267 msgid "" "`bpo-25402 `__: In int-to-decimal-string " "conversion, improve the estimate of the intermediate memory required, and " "remove an unnecessarily strict overflow check. Patch by Serhiy Storchaka." msgstr "" -#: ../build/NEWS:21236 +#: ../build/NEWS:21271 msgid "" "`bpo-27214 `__: In long_invert, be more " "careful about modifying object returned by long_add, and remove an " "unnecessary check for small longs. Thanks Oren Milman for analysis and patch." msgstr "" -#: ../build/NEWS:21240 +#: ../build/NEWS:21275 msgid "" "`bpo-27506 `__: Support passing the " "bytes/bytearray.translate() \"delete\" argument by keyword." msgstr "" -#: ../build/NEWS:21243 ../build/NEWS:24291 +#: ../build/NEWS:21278 ../build/NEWS:24326 msgid "" "`bpo-27812 `__: Properly clear out a " "generator's frame's backreference to the generator to prevent crashes in " "frame.clear()." msgstr "" -#: ../build/NEWS:21246 ../build/NEWS:24294 +#: ../build/NEWS:21281 ../build/NEWS:24329 msgid "" "`bpo-27811 `__: Fix a crash when a " "coroutine that has not been awaited is finalized with warnings-as-errors " "enabled." msgstr "" -#: ../build/NEWS:21249 ../build/NEWS:24297 +#: ../build/NEWS:21284 ../build/NEWS:24332 msgid "" "`bpo-27587 `__: Fix another issue found " "by PVS-Studio: Null pointer check after use of 'def' in " "_PyState_AddModule(). Initial patch by Christian Heimes." msgstr "" -#: ../build/NEWS:21252 +#: ../build/NEWS:21287 msgid "" "`bpo-27792 `__: The modulo operation " "applied to ``bool`` and other ``int`` subclasses now always returns an " @@ -34696,33 +34650,33 @@ msgid "" "Xiang Zhang." msgstr "" -#: ../build/NEWS:21256 +#: ../build/NEWS:21291 msgid "" "`bpo-26984 `__: int() now always returns " "an instance of exact int." msgstr "" -#: ../build/NEWS:21258 +#: ../build/NEWS:21293 msgid "" "`bpo-25604 `__: Fix a minor bug in " "integer true division; this bug could potentially have caused off-by-one-ulp " "results on platforms with unreliable ldexp implementations." msgstr "" -#: ../build/NEWS:21262 +#: ../build/NEWS:21297 msgid "" "`bpo-24254 `__: Make class definition " "namespace ordered by default." msgstr "" -#: ../build/NEWS:21264 +#: ../build/NEWS:21299 msgid "" "`bpo-27662 `__: Fix an overflow check in " "``List_New``: the original code was checking against ``Py_SIZE_MAX`` instead " "of the correct upper bound of ``Py_SSIZE_T_MAX``. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:21268 ../build/NEWS:24303 +#: ../build/NEWS:21303 ../build/NEWS:24338 msgid "" "`bpo-27782 `__: Multi-phase extension " "module import now correctly allows the ``m_methods`` field to be used to add " @@ -34730,27 +34684,27 @@ msgid "" "``Py_create_mod``. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:21272 ../build/NEWS:24307 +#: ../build/NEWS:21307 ../build/NEWS:24342 msgid "" "`bpo-27936 `__: The round() function " "accepted a second None argument for some types but not for others. Fixed " "the inconsistency by accepting None for all numeric types." msgstr "" -#: ../build/NEWS:21276 ../build/NEWS:24311 +#: ../build/NEWS:21311 ../build/NEWS:24346 msgid "" "`bpo-27487 `__: Warn if a submodule " "argument to \"python -m\" or runpy.run_module() is found in sys.modules " "after parent packages are imported, but before the submodule is executed." msgstr "" -#: ../build/NEWS:21280 +#: ../build/NEWS:21315 msgid "" "`bpo-27157 `__: Make only type() itself " "accept the one-argument form. Patch by Eryk Sun and Emanuel Barry." msgstr "" -#: ../build/NEWS:21283 ../build/NEWS:24315 +#: ../build/NEWS:21318 ../build/NEWS:24350 msgid "" "`bpo-27558 `__: Fix a SystemError in the " "implementation of \"raise\" statement. In a brand new thread, raise a " @@ -34758,91 +34712,91 @@ msgid "" "Xiang Zhang." msgstr "" -#: ../build/NEWS:21287 +#: ../build/NEWS:21322 msgid "" "`bpo-28008 `__: Implement :pep:`530` -- " "asynchronous comprehensions." msgstr "" -#: ../build/NEWS:21289 ../build/NEWS:24340 +#: ../build/NEWS:21324 ../build/NEWS:24375 msgid "" "`bpo-27942 `__: Fix memory leak in " "codeobject.c" msgstr "" -#: ../build/NEWS:21294 ../build/NEWS:24384 +#: ../build/NEWS:21329 ../build/NEWS:24419 msgid "" "`bpo-28732 `__: Fix crash in os.spawnv() " "with no elements in args" msgstr "" -#: ../build/NEWS:21296 ../build/NEWS:24386 +#: ../build/NEWS:21331 ../build/NEWS:24421 msgid "" "`bpo-28485 `__: Always raise ValueError " "for negative compileall.compile_dir(workers=...) parameter, even when " "multithreading is unavailable." msgstr "" -#: ../build/NEWS:21300 +#: ../build/NEWS:21335 msgid "" "`bpo-28037 `__: Use " "sqlite3_get_autocommit() instead of setting Connection->inTransaction " "manually." msgstr "" -#: ../build/NEWS:21303 +#: ../build/NEWS:21338 msgid "" "`bpo-25283 `__: Attributes tm_gmtoff and " "tm_zone are now available on all platforms in the return values of time." "localtime() and time.gmtime()." msgstr "" -#: ../build/NEWS:21306 +#: ../build/NEWS:21341 msgid "" "`bpo-24454 `__: Regular expression match " "object groups are now accessible using __getitem__. \"mo[x]\" is equivalent " "to \"mo.group(x)\"." msgstr "" -#: ../build/NEWS:21309 +#: ../build/NEWS:21344 msgid "" "`bpo-10740 `__: sqlite3 no longer " "implicitly commit an open transaction before DDL statements." msgstr "" -#: ../build/NEWS:21312 +#: ../build/NEWS:21347 msgid "" "`bpo-17941 `__: Add a *module* parameter " "to collections.namedtuple()." msgstr "" -#: ../build/NEWS:21314 +#: ../build/NEWS:21349 msgid "" "`bpo-22493 `__: Inline flags now should " "be used only at the start of the regular expression. Deprecation warning is " "emitted if uses them in the middle of the regular expression." msgstr "" -#: ../build/NEWS:21318 +#: ../build/NEWS:21353 msgid "" "`bpo-26885 `__: xmlrpc now supports " "unmarshalling additional data types used by Apache XML-RPC implementation " "for numerics and None." msgstr "" -#: ../build/NEWS:21321 +#: ../build/NEWS:21356 msgid "" "`bpo-28070 `__: Fixed parsing inline " "verbose flag in regular expressions." msgstr "" -#: ../build/NEWS:21323 +#: ../build/NEWS:21358 msgid "" "`bpo-19500 `__: Add client-side SSL " "session resumption to the ssl module." msgstr "" -#: ../build/NEWS:21325 +#: ../build/NEWS:21360 msgid "" "`bpo-28022 `__: Deprecate ssl-related " "arguments in favor of SSLContext. The deprecation include manual creation of " @@ -34850,7 +34804,7 @@ msgid "" "smtplib, poplib and urllib." msgstr "" -#: ../build/NEWS:21329 +#: ../build/NEWS:21364 msgid "" "`bpo-28043 `__: SSLContext has improved " "default settings: OP_NO_SSLv2, OP_NO_SSLv3, OP_NO_COMPRESSION, " @@ -34858,21 +34812,21 @@ msgid "" "ciphers without MD5." msgstr "" -#: ../build/NEWS:21333 +#: ../build/NEWS:21368 msgid "" "`bpo-24693 `__: Changed some " "RuntimeError's in the zipfile module to more appropriate types. Improved " "some error messages and debugging output." msgstr "" -#: ../build/NEWS:21336 +#: ../build/NEWS:21371 msgid "" "`bpo-17909 `__: ``json.load`` and ``json." "loads`` now support binary input encoded as UTF-8, UTF-16 or UTF-32. Patch " "by Serhiy Storchaka." msgstr "" -#: ../build/NEWS:21339 +#: ../build/NEWS:21374 msgid "" "`bpo-27137 `__: the pure Python fallback " "implementation of ``functools.partial`` now matches the behaviour of its " @@ -34880,118 +34834,118 @@ msgid "" "purposes. Patch by Emanuel Barry and Serhiy Storchaka." msgstr "" -#: ../build/NEWS:21344 ../build/NEWS:24439 +#: ../build/NEWS:21379 ../build/NEWS:24474 msgid "" "Fix possible integer overflows and crashes in the mmap module with unusual " "usage patterns." msgstr "" -#: ../build/NEWS:21347 ../build/NEWS:24442 +#: ../build/NEWS:21382 ../build/NEWS:24477 msgid "" "`bpo-1703178 `__: Fix the ability to " "pass the --link-objects option to the distutils build_ext command." msgstr "" -#: ../build/NEWS:21350 ../build/NEWS:24489 +#: ../build/NEWS:21385 ../build/NEWS:24524 msgid "" "`bpo-28019 `__: itertools.count() no " "longer rounds non-integer step in range between 1.0 and 2.0 to 1." msgstr "" -#: ../build/NEWS:21353 +#: ../build/NEWS:21388 msgid "" "`bpo-18401 `__: Pdb now supports the " "'readrc' keyword argument to control whether .pdbrc files should be read. " "Patch by Martin Matusiak and Sam Kimbrel." msgstr "" -#: ../build/NEWS:21357 ../build/NEWS:24492 +#: ../build/NEWS:21392 ../build/NEWS:24527 msgid "" "`bpo-25969 `__: Update the lib2to3 " "grammar to handle the unpacking generalizations added in 3.5." msgstr "" -#: ../build/NEWS:21360 ../build/NEWS:24495 +#: ../build/NEWS:21395 ../build/NEWS:24530 msgid "" "`bpo-14977 `__: mailcap now respects the " "order of the lines in the mailcap files (\"first match\"), as required by " "RFC 1542. Patch by Michael Lazar." msgstr "" -#: ../build/NEWS:21363 +#: ../build/NEWS:21398 msgid "" "`bpo-28082 `__: Convert re flag " "constants to IntFlag." msgstr "" -#: ../build/NEWS:21365 +#: ../build/NEWS:21400 msgid "" "`bpo-28025 `__: Convert all ssl module " "constants to IntEnum and IntFlags. SSLContext properties now return flags " "and enums." msgstr "" -#: ../build/NEWS:21368 +#: ../build/NEWS:21403 msgid "" "`bpo-23591 `__: Add Flag, IntFlag, and " "auto() to enum module." msgstr "" -#: ../build/NEWS:21370 +#: ../build/NEWS:21405 msgid "" "`bpo-433028 `__: Added support of " "modifier spans in regular expressions." msgstr "" -#: ../build/NEWS:21372 ../build/NEWS:24498 +#: ../build/NEWS:21407 ../build/NEWS:24533 msgid "" "`bpo-24594 `__: Validates persist " "parameter when opening MSI database" msgstr "" -#: ../build/NEWS:21374 ../build/NEWS:24500 +#: ../build/NEWS:21409 ../build/NEWS:24535 msgid "" "`bpo-17582 `__: xml.etree.ElementTree " "nows preserves whitespaces in attributes (Patch by Duane Griffin. Reviewed " "and approved by Stefan Behnel.)" msgstr "" -#: ../build/NEWS:21377 ../build/NEWS:24503 +#: ../build/NEWS:21412 ../build/NEWS:24538 msgid "" "`bpo-28047 `__: Fixed calculation of " "line length used for the base64 CTE in the new email policies." msgstr "" -#: ../build/NEWS:21380 +#: ../build/NEWS:21415 msgid "" "`bpo-27576 `__: Fix call order in " "OrderedDict.__init__()." msgstr "" -#: ../build/NEWS:21382 +#: ../build/NEWS:21417 msgid "email.generator.DecodedGenerator now supports the policy keyword." msgstr "" -#: ../build/NEWS:21384 +#: ../build/NEWS:21419 msgid "" "`bpo-28027 `__: Remove undocumented " "modules from ``Lib/plat-*``: IN, CDROM, DLFCN, TYPES, CDIO, and STROPTS." msgstr "" -#: ../build/NEWS:21387 ../build/NEWS:24506 +#: ../build/NEWS:21422 ../build/NEWS:24541 msgid "" "`bpo-27445 `__: Don't pass str(_charset) " "to MIMEText.set_payload(). Patch by Claude Paroz." msgstr "" -#: ../build/NEWS:21390 +#: ../build/NEWS:21425 msgid "" "`bpo-24277 `__: The new email API is no " "longer provisional, and the docs have been reorganized and rewritten to " "emphasize the new API." msgstr "" -#: ../build/NEWS:21393 ../build/NEWS:24509 +#: ../build/NEWS:21428 ../build/NEWS:24544 msgid "" "`bpo-22450 `__: urllib now includes an " "``Accept: */*`` header among the default headers. This makes the results of " @@ -34999,62 +34953,62 @@ msgid "" "servers are involved." msgstr "" -#: ../build/NEWS:21397 ../build/NEWS:24513 +#: ../build/NEWS:21432 ../build/NEWS:24548 msgid "" "lib2to3.pgen3.driver.load_grammar() now creates a stable cache file between " "runs given the same Grammar.txt input regardless of the hash randomization " "setting." msgstr "" -#: ../build/NEWS:21401 +#: ../build/NEWS:21436 msgid "" "`bpo-28005 `__: Allow ImportErrors in " "encoding implementation to propagate." msgstr "" -#: ../build/NEWS:21403 +#: ../build/NEWS:21438 msgid "" "`bpo-26667 `__: Support path-like " "objects in importlib.util." msgstr "" -#: ../build/NEWS:21405 ../build/NEWS:24517 +#: ../build/NEWS:21440 ../build/NEWS:24552 msgid "" "`bpo-27570 `__: Avoid zero-length " "memcpy() etc calls with null source pointers in the \"ctypes\" and \"array\" " "modules." msgstr "" -#: ../build/NEWS:21408 ../build/NEWS:24520 +#: ../build/NEWS:21443 ../build/NEWS:24555 msgid "" "`bpo-22233 `__: Break email header lines " "*only* on the RFC specified CR and LF characters, not on arbitrary unicode " "line breaks. This also fixes a bug in HTTP header parsing." msgstr "" -#: ../build/NEWS:21412 +#: ../build/NEWS:21447 msgid "" "`bpo-27331 `__: The email.mime classes " "now all accept an optional policy keyword." msgstr "" -#: ../build/NEWS:21415 ../build/NEWS:24524 +#: ../build/NEWS:21450 ../build/NEWS:24559 msgid "" "`bpo-27988 `__: Fix email " "iter_attachments incorrect mutation of payload list." msgstr "" -#: ../build/NEWS:21417 +#: ../build/NEWS:21452 msgid "" "`bpo-16113 `__: Add SHA-3 and SHAKE " "support to hashlib module." msgstr "" -#: ../build/NEWS:21419 +#: ../build/NEWS:21454 msgid "Eliminate a tautological-pointer-compare warning in _scproxy.c." msgstr "" -#: ../build/NEWS:21421 +#: ../build/NEWS:21456 msgid "" "`bpo-27776 `__: The :func:`os.urandom` " "function does now block on Linux 3.17 and newer until the system urandom " @@ -35062,25 +35016,25 @@ msgid "" "the :pep:`524`." msgstr "" -#: ../build/NEWS:21425 +#: ../build/NEWS:21460 msgid "" "`bpo-27778 `__: Expose the Linux " "``getrandom()`` syscall as a new :func:`os.getrandom` function. This change " "is part of the :pep:`524`." msgstr "" -#: ../build/NEWS:21428 ../build/NEWS:24526 +#: ../build/NEWS:21463 ../build/NEWS:24561 msgid "" "`bpo-27691 `__: Fix ssl module's parsing " "of GEN_RID subject alternative name fields in X.509 certs." msgstr "" -#: ../build/NEWS:21431 +#: ../build/NEWS:21466 msgid "" "`bpo-18844 `__: Add random.choices()." msgstr "" -#: ../build/NEWS:21433 +#: ../build/NEWS:21468 msgid "" "`bpo-25761 `__: Improved error reporting " "about truncated pickle data in C implementation of unpickler. " @@ -35088,86 +35042,86 @@ msgid "" "some cases." msgstr "" -#: ../build/NEWS:21437 +#: ../build/NEWS:21472 msgid "" "`bpo-26798 `__: Add BLAKE2 (blake2b and " "blake2s) to hashlib." msgstr "" -#: ../build/NEWS:21439 +#: ../build/NEWS:21474 msgid "" "`bpo-26032 `__: Optimized globbing in " "pathlib by using os.scandir(); it is now about 1.5--4 times faster." msgstr "" -#: ../build/NEWS:21442 +#: ../build/NEWS:21477 msgid "" "`bpo-25596 `__: Optimized glob() and " "iglob() functions in the glob module; they are now about 3--6 times faster." msgstr "" -#: ../build/NEWS:21445 +#: ../build/NEWS:21480 msgid "" "`bpo-27928 `__: Add scrypt (password-" "based key derivation function) to hashlib module (requires OpenSSL 1.1.0)." msgstr "" -#: ../build/NEWS:21448 ../build/NEWS:24529 +#: ../build/NEWS:21483 ../build/NEWS:24564 msgid "" "`bpo-27850 `__: Remove 3DES from ssl " "module's default cipher list to counter measure sweet32 attack " "(CVE-2016-2183)." msgstr "" -#: ../build/NEWS:21451 ../build/NEWS:24532 +#: ../build/NEWS:21486 ../build/NEWS:24567 msgid "" "`bpo-27766 `__: Add ChaCha20 Poly1305 to " "ssl module's default cipher list. (Required OpenSSL 1.1.0 or LibreSSL)." msgstr "" -#: ../build/NEWS:21454 +#: ../build/NEWS:21489 msgid "" "`bpo-25387 `__: Check return value of " "winsound.MessageBeep." msgstr "" -#: ../build/NEWS:21456 +#: ../build/NEWS:21491 msgid "" "`bpo-27866 `__: Add SSLContext." "get_ciphers() method to get a list of all enabled ciphers." msgstr "" -#: ../build/NEWS:21459 +#: ../build/NEWS:21494 msgid "" "`bpo-27744 `__: Add AF_ALG (Linux Kernel " "crypto) to socket module." msgstr "" -#: ../build/NEWS:21461 ../build/NEWS:24535 +#: ../build/NEWS:21496 ../build/NEWS:24570 msgid "" "`bpo-26470 `__: Port ssl and hashlib " "module to OpenSSL 1.1.0." msgstr "" -#: ../build/NEWS:21463 +#: ../build/NEWS:21498 msgid "" "`bpo-11620 `__: Fix support for " "SND_MEMORY in winsound.PlaySound. Based on a patch by Tim Lesher." msgstr "" -#: ../build/NEWS:21466 +#: ../build/NEWS:21501 msgid "" "`bpo-11734 `__: Add support for IEEE 754 " "half-precision floats to the struct module. Based on a patch by Eli Stevens." msgstr "" -#: ../build/NEWS:21469 +#: ../build/NEWS:21504 msgid "" "`bpo-27919 `__: Deprecated " "``extra_path`` distribution option in distutils packaging." msgstr "" -#: ../build/NEWS:21472 +#: ../build/NEWS:21507 msgid "" "`bpo-23229 `__: Add new ``cmath`` " "constants: ``cmath.inf`` and ``cmath.nan`` to match ``math.inf`` and ``math." @@ -35175,44 +35129,44 @@ msgid "" "by complex repr." msgstr "" -#: ../build/NEWS:21476 +#: ../build/NEWS:21511 msgid "" "`bpo-27842 `__: The csv.DictReader now " "returns rows of type OrderedDict. (Contributed by Steve Holden.)" msgstr "" -#: ../build/NEWS:21479 ../build/NEWS:24537 +#: ../build/NEWS:21514 ../build/NEWS:24572 msgid "" "Remove support for passing a file descriptor to os.access. It never worked " "but previously didn't raise." msgstr "" -#: ../build/NEWS:21482 ../build/NEWS:24540 +#: ../build/NEWS:21517 ../build/NEWS:24575 msgid "" "`bpo-12885 `__: Fix error when distutils " "encounters symlink." msgstr "" -#: ../build/NEWS:21484 ../build/NEWS:24542 +#: ../build/NEWS:21519 ../build/NEWS:24577 msgid "" "`bpo-27881 `__: Fixed possible bugs when " "setting sqlite3.Connection.isolation_level. Based on patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:21487 ../build/NEWS:24545 +#: ../build/NEWS:21522 ../build/NEWS:24580 msgid "" "`bpo-27861 `__: Fixed a crash in sqlite3." "Connection.cursor() when a factory creates not a cursor. Patch by Xiang " "Zhang." msgstr "" -#: ../build/NEWS:21490 ../build/NEWS:24548 +#: ../build/NEWS:21525 ../build/NEWS:24583 msgid "" "`bpo-19884 `__: Avoid spurious output on " "OS X with Gnu Readline." msgstr "" -#: ../build/NEWS:21492 ../build/NEWS:24550 +#: ../build/NEWS:21527 ../build/NEWS:24585 msgid "" "`bpo-27706 `__: Restore deterministic " "behavior of random.Random().seed() for string seeds using seeding version " @@ -35220,13 +35174,13 @@ msgid "" "Python 2. Patch by Nofar Schnider." msgstr "" -#: ../build/NEWS:21497 ../build/NEWS:24555 +#: ../build/NEWS:21532 ../build/NEWS:24590 msgid "" "`bpo-10513 `__: Fix a regression in " "Connection.commit(). Statements should not be reset after a commit." msgstr "" -#: ../build/NEWS:21500 +#: ../build/NEWS:21535 msgid "" "`bpo-12319 `__: Chunked transfer " "encoding support added to http.client.HTTPConnection requests. The urllib." @@ -35235,7 +35189,7 @@ msgid "" "Length header, the library now falls back to use chunked transfer-encoding." msgstr "" -#: ../build/NEWS:21507 +#: ../build/NEWS:21542 msgid "" "A new version of typing.py from https://github.com/python/typing: - " "Collection (only for 3.6) (`bpo-27598 `__: Make ``_normalize`` " "parameter to ``Fraction`` constructor keyword-only, so that ``Fraction(2, 3, " "4)`` now raises ``TypeError``." msgstr "" -#: ../build/NEWS:21515 ../build/NEWS:24563 +#: ../build/NEWS:21550 ../build/NEWS:24598 msgid "" "`bpo-27539 `__: Fix unnormalised " "``Fraction.__pow__`` result in the case of negative exponent and negative " "base." msgstr "" -#: ../build/NEWS:21518 ../build/NEWS:24566 +#: ../build/NEWS:21553 ../build/NEWS:24601 msgid "" "`bpo-21718 `__: cursor.description is " "now available for queries using CTEs." msgstr "" -#: ../build/NEWS:21520 +#: ../build/NEWS:21555 msgid "" "`bpo-27819 `__: In distutils sdists, " "simply produce the \"gztar\" (gzipped tar format) distributions on all " "platforms unless \"formats\" is supplied." msgstr "" -#: ../build/NEWS:21523 ../build/NEWS:24568 +#: ../build/NEWS:21558 ../build/NEWS:24603 msgid "" "`bpo-2466 `__: posixpath.ismount now " "correctly recognizes mount points which the user does not have permission to " "access." msgstr "" -#: ../build/NEWS:21526 +#: ../build/NEWS:21561 msgid "" "`bpo-9998 `__: On Linux, ctypes.util." "find_library now looks in LD_LIBRARY_PATH for shared libraries." msgstr "" -#: ../build/NEWS:21529 +#: ../build/NEWS:21564 msgid "" "`bpo-27573 `__: exit message for code." "interact is now configurable." msgstr "" -#: ../build/NEWS:21531 ../build/NEWS:24676 +#: ../build/NEWS:21566 ../build/NEWS:24711 msgid "" "`bpo-27930 `__: Improved behaviour of " "logging.handlers.QueueListener. Thanks to Paulo Andrade and Petr Viktorin " "for the analysis and patch." msgstr "" -#: ../build/NEWS:21534 +#: ../build/NEWS:21569 msgid "" "`bpo-6766 `__: Distributed reference " "counting added to multiprocessing to support nesting of shared values / " "proxy objects." msgstr "" -#: ../build/NEWS:21537 ../build/NEWS:24679 +#: ../build/NEWS:21572 ../build/NEWS:24714 msgid "" "`bpo-21201 `__: Improves readability of " "multiprocessing error message. Thanks to Wojciech Walczak for patch." msgstr "" -#: ../build/NEWS:21540 +#: ../build/NEWS:21575 msgid "asyncio: Add set_protocol / get_protocol to Transports." msgstr "" -#: ../build/NEWS:21542 ../build/NEWS:24682 +#: ../build/NEWS:21577 ../build/NEWS:24717 msgid "" "`bpo-27456 `__: asyncio: Set TCP_NODELAY " "by default." msgstr "" -#: ../build/NEWS:21547 ../build/NEWS:24747 +#: ../build/NEWS:21582 ../build/NEWS:24782 msgid "" "`bpo-15308 `__: Add 'interrupt " "execution' (^C) to Shell menu. Patch by Roger Serwy, updated by Bayard " "Randel." msgstr "" -#: ../build/NEWS:21550 ../build/NEWS:24750 +#: ../build/NEWS:21585 ../build/NEWS:24785 msgid "" "`bpo-27922 `__: Stop IDLE tests from " "'flashing' gui widgets on the screen." msgstr "" -#: ../build/NEWS:21552 +#: ../build/NEWS:21587 msgid "" "`bpo-27891 `__: Consistently group and " "sort imports within idlelib modules." msgstr "" -#: ../build/NEWS:21554 +#: ../build/NEWS:21589 msgid "" "`bpo-17642 `__: add larger font sizes " "for classroom projection." msgstr "" -#: ../build/NEWS:21556 ../build/NEWS:24752 +#: ../build/NEWS:21591 ../build/NEWS:24787 msgid "Add version to title of IDLE help window." msgstr "" -#: ../build/NEWS:21558 ../build/NEWS:24754 +#: ../build/NEWS:21593 ../build/NEWS:24789 msgid "" "`bpo-25564 `__: In section on IDLE -- " "console differences, mention that using exec means that __builtins__ is " "defined for each statement." msgstr "" -#: ../build/NEWS:21561 +#: ../build/NEWS:21596 msgid "" "`bpo-27821 `__: Fix 3.6.0a3 regression " "that prevented custom key sets from being selected when no custom theme was " "defined." msgstr "" -#: ../build/NEWS:21567 +#: ../build/NEWS:21602 msgid "" "`bpo-26900 `__: Excluded underscored " "names and other private API from limited API." msgstr "" -#: ../build/NEWS:21570 +#: ../build/NEWS:21605 msgid "" "`bpo-26027 `__: Add support for path-" "like objects in PyUnicode_FSConverter() & PyUnicode_FSDecoder()." msgstr "" -#: ../build/NEWS:21576 +#: ../build/NEWS:21611 msgid "" "`bpo-27427 `__: Additional tests for the " "math module. Patch by Francisco Couzo." msgstr "" -#: ../build/NEWS:21578 +#: ../build/NEWS:21613 msgid "" "`bpo-27953 `__: Skip math and cmath " "tests that fail on OS X 10.4 due to a poor libm implementation of tan." msgstr "" -#: ../build/NEWS:21581 +#: ../build/NEWS:21616 msgid "" "`bpo-26040 `__: Improve test_math and " "test_cmath coverage and rigour. Patch by Jeff Allen." msgstr "" -#: ../build/NEWS:21584 ../build/NEWS:24799 +#: ../build/NEWS:21619 ../build/NEWS:24834 msgid "" "`bpo-27787 `__: Call gc.collect() before " "checking each test for \"dangling threads\", since the dangling threads are " "weak references." msgstr "" -#: ../build/NEWS:21590 ../build/NEWS:24859 +#: ../build/NEWS:21625 ../build/NEWS:24894 msgid "" "`bpo-27566 `__: Fix clean target in " "freeze makefile (patch by Lisa Roach)" msgstr "" -#: ../build/NEWS:21592 ../build/NEWS:24861 +#: ../build/NEWS:21627 ../build/NEWS:24896 msgid "" "`bpo-27705 `__: Update message in " "validate_ucrtbase.py" msgstr "" -#: ../build/NEWS:21594 +#: ../build/NEWS:21629 msgid "" "`bpo-27976 `__: Deprecate building " "_ctypes with the bundled copy of libffi on non-OSX UNIX platforms." msgstr "" -#: ../build/NEWS:21597 +#: ../build/NEWS:21632 msgid "" "`bpo-27983 `__: Cause lack of llvm-" "profdata tool when using clang as required for PGO linking to be a configure " @@ -35427,46 +35381,46 @@ msgid "" "Linuxes." msgstr "" -#: ../build/NEWS:21602 +#: ../build/NEWS:21637 msgid "" "`bpo-21590 `__: Support for DTrace and " "SystemTap probes." msgstr "" -#: ../build/NEWS:21604 ../build/NEWS:24868 +#: ../build/NEWS:21639 ../build/NEWS:24903 msgid "" "`bpo-26307 `__: The profile-opt build " "now applies PGO to the built-in modules." msgstr "" -#: ../build/NEWS:21606 +#: ../build/NEWS:21641 msgid "" "`bpo-26359 `__: Add the --with-" "optimizations flag to turn on LTO and PGO build support when available." msgstr "" -#: ../build/NEWS:21609 +#: ../build/NEWS:21644 msgid "" "`bpo-27917 `__: Set platform triplets " "for Android builds." msgstr "" -#: ../build/NEWS:21611 +#: ../build/NEWS:21646 msgid "" "`bpo-25825 `__: Update references to the " "$(LIBPL) installation path on AIX. This path was changed in 3.2a4." msgstr "" -#: ../build/NEWS:21614 +#: ../build/NEWS:21649 msgid "Update OS X installer to use SQLite 3.14.1 and XZ 5.2.2." msgstr "" -#: ../build/NEWS:21616 +#: ../build/NEWS:21651 msgid "" "`bpo-21122 `__: Fix LTO builds on OS X." msgstr "" -#: ../build/NEWS:21618 +#: ../build/NEWS:21653 msgid "" "`bpo-17128 `__: Build OS X installer " "with a private copy of OpenSSL. Also provide a sample Install Certificates " @@ -35474,95 +35428,95 @@ msgid "" "certifi module." msgstr "" -#: ../build/NEWS:21625 ../build/NEWS:24808 +#: ../build/NEWS:21660 ../build/NEWS:24843 msgid "" "`bpo-27952 `__: Get Tools/scripts/fixcid." "py working with Python 3 and the current \"re\" module, avoid invalid Python " "backslash escapes, and fix a bug parsing escaped C quote signs." msgstr "" -#: ../build/NEWS:21632 +#: ../build/NEWS:21667 msgid "" "`bpo-28065 `__: Update xz dependency to " "5.2.2 and build it from source." msgstr "" -#: ../build/NEWS:21634 ../build/NEWS:24825 +#: ../build/NEWS:21669 ../build/NEWS:24860 msgid "" "`bpo-25144 `__: Ensures TargetDir is set " "before continuing with custom install." msgstr "" -#: ../build/NEWS:21636 +#: ../build/NEWS:21671 msgid "" "`bpo-1602 `__: Windows console doesn't " "input or print Unicode (PEP 528)" msgstr "" -#: ../build/NEWS:21638 +#: ../build/NEWS:21673 msgid "" "`bpo-27781 `__: Change file system " "encoding on Windows to UTF-8 (PEP 529)" msgstr "" -#: ../build/NEWS:21640 +#: ../build/NEWS:21675 msgid "" "`bpo-27731 `__: Opt-out of MAX_PATH on " "Windows 10" msgstr "" -#: ../build/NEWS:21642 +#: ../build/NEWS:21677 msgid "" "`bpo-6135 `__: Adds encoding and errors " "parameters to subprocess." msgstr "" -#: ../build/NEWS:21644 +#: ../build/NEWS:21679 msgid "" "`bpo-27959 `__: Adds oem encoding, alias " "ansi to mbcs, move aliasmbcs to codec lookup." msgstr "" -#: ../build/NEWS:21647 +#: ../build/NEWS:21682 msgid "" "`bpo-27982 `__: The functions of the " "winsound module now accept keyword arguments." msgstr "" -#: ../build/NEWS:21650 +#: ../build/NEWS:21685 msgid "" "`bpo-20366 `__: Build full text search " "support into SQLite on Windows." msgstr "" -#: ../build/NEWS:21652 +#: ../build/NEWS:21687 msgid "" "`bpo-27756 `__: Adds new icons for " "Python files and processes on Windows. Designs by Cherry Wang." msgstr "" -#: ../build/NEWS:21655 +#: ../build/NEWS:21690 msgid "" "`bpo-27883 `__: Update sqlite to " "3.14.1.0 on Windows." msgstr "" -#: ../build/NEWS:21659 +#: ../build/NEWS:21694 msgid "Python 3.6.0 alpha 4" msgstr "" -#: ../build/NEWS:21661 +#: ../build/NEWS:21696 msgid "*Release date: 2016-08-15*" msgstr "" -#: ../build/NEWS:21666 +#: ../build/NEWS:21701 msgid "" "`bpo-27704 `__: Optimized creating bytes " "and bytearray from byte-like objects and iterables. Speed up to 3 times for " "short objects. Original patch by Naoki Inada." msgstr "" -#: ../build/NEWS:21670 +#: ../build/NEWS:21705 msgid "" "`bpo-26823 `__: Large sections of " "repeated lines in tracebacks are now abbreviated as \"[Previous line " @@ -35570,51 +35524,51 @@ msgid "" "Emanuel Barry." msgstr "" -#: ../build/NEWS:21674 +#: ../build/NEWS:21709 msgid "" "`bpo-27574 `__: Decreased an overhead of " "parsing keyword arguments in functions implemented with using Argument " "Clinic." msgstr "" -#: ../build/NEWS:21677 +#: ../build/NEWS:21712 msgid "" "`bpo-22557 `__: Now importing already " "imported modules is up to 2.5 times faster." msgstr "" -#: ../build/NEWS:21680 +#: ../build/NEWS:21715 msgid "" "`bpo-17596 `__: Include to " "help with Min GW building." msgstr "" -#: ../build/NEWS:21682 +#: ../build/NEWS:21717 msgid "" "`bpo-17599 `__: On Windows, rename the " "privately defined REPARSE_DATA_BUFFER structure to avoid conflicting with " "the definition from Min GW." msgstr "" -#: ../build/NEWS:21685 ../build/NEWS:24331 +#: ../build/NEWS:21720 ../build/NEWS:24366 msgid "" "`bpo-27507 `__: Add integer overflow " "check in bytearray.extend(). Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:21688 ../build/NEWS:24334 +#: ../build/NEWS:21723 ../build/NEWS:24369 msgid "" "`bpo-27581 `__: Don't rely on wrapping " "for overflow check in PySequence_Tuple(). Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:21691 +#: ../build/NEWS:21726 msgid "" "`bpo-1621 `__: Avoid signed integer " "overflow in list and tuple operations. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:21694 +#: ../build/NEWS:21729 msgid "" "`bpo-27419 `__: Standard __import__() no " "longer look up \"__import__\" in globals or builtins for importing " @@ -35622,19 +35576,19 @@ msgid "" "unabling to resolve package from __spec__ or __package__." msgstr "" -#: ../build/NEWS:21699 ../build/NEWS:24323 +#: ../build/NEWS:21734 ../build/NEWS:24358 msgid "" "`bpo-27083 `__: Respect the PYTHONCASEOK " "environment variable under Windows." msgstr "" -#: ../build/NEWS:21701 ../build/NEWS:24325 +#: ../build/NEWS:21736 ../build/NEWS:24360 msgid "" "`bpo-27514 `__: Make having too many " "statically nested blocks a SyntaxError instead of SystemError." msgstr "" -#: ../build/NEWS:21704 +#: ../build/NEWS:21739 msgid "" "`bpo-27366 `__: Implemented :pep:`487` " "(Simpler customization of class creation). Upon subclassing, the " @@ -35642,20 +35596,20 @@ msgid "" "initialized with __set_name__ after class creation." msgstr "" -#: ../build/NEWS:21712 +#: ../build/NEWS:21747 msgid "" "`bpo-26027 `__: Add :pep:`519`/" "__fspath__() support to the os and os.path modules. Includes code from Jelle " "Zijlstra. (See also: `bpo-27524 `__)" msgstr "" -#: ../build/NEWS:21715 +#: ../build/NEWS:21750 msgid "" "`bpo-27598 `__: Add Collections to " "collections.abc. Patch by Ivan Levkivskyi, docs by Neil Girdhar." msgstr "" -#: ../build/NEWS:21718 +#: ../build/NEWS:21753 msgid "" "`bpo-25958 `__: Support \"anti-" "registration\" of special methods from various ABCs, like __hash__, __iter__ " @@ -35666,13 +35620,13 @@ msgid "" "Ivan Levkivskyi." msgstr "" -#: ../build/NEWS:21725 +#: ../build/NEWS:21760 msgid "" "`bpo-16764 `__: Support keyword " "arguments to zlib.decompress(). Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:21728 +#: ../build/NEWS:21763 msgid "" "`bpo-27736 `__: Prevent segfault after " "interpreter re-initialization due to ref count problem introduced in code " @@ -35680,19 +35634,19 @@ msgid "" "Xiang Zhang." msgstr "" -#: ../build/NEWS:21732 +#: ../build/NEWS:21767 msgid "" "`bpo-25628 `__: The *verbose* and " "*rename* parameters for collections.namedtuple are now keyword-only." msgstr "" -#: ../build/NEWS:21735 +#: ../build/NEWS:21770 msgid "" "`bpo-12345 `__: Add mathematical " "constant tau to math and cmath. See also :pep:`628`." msgstr "" -#: ../build/NEWS:21738 +#: ../build/NEWS:21773 msgid "" "`bpo-26823 `__: traceback.StackSummary." "format now abbreviates large sections of repeated lines as \"[Previous line " @@ -35700,38 +35654,38 @@ msgid "" "traceback display operations in the module). Patch by Emanuel Barry." msgstr "" -#: ../build/NEWS:21743 +#: ../build/NEWS:21778 msgid "" "`bpo-27664 `__: Add to concurrent." "futures.thread.ThreadPoolExecutor() the ability to specify a thread name " "prefix." msgstr "" -#: ../build/NEWS:21746 +#: ../build/NEWS:21781 msgid "" "`bpo-27181 `__: Add geometric_mean and " "harmonic_mean to statistics module." msgstr "" -#: ../build/NEWS:21748 +#: ../build/NEWS:21783 msgid "" "`bpo-27573 `__: code.interact now prints " "an message when exiting." msgstr "" -#: ../build/NEWS:21750 +#: ../build/NEWS:21785 msgid "" "`bpo-6422 `__: Add autorange method to " "timeit.Timer objects." msgstr "" -#: ../build/NEWS:21752 ../build/NEWS:24571 +#: ../build/NEWS:21787 ../build/NEWS:24606 msgid "" "`bpo-27773 `__: Correct some memory " "management errors server_hostname in _ssl.wrap_socket()." msgstr "" -#: ../build/NEWS:21755 +#: ../build/NEWS:21790 msgid "" "`bpo-26750 `__: unittest.mock." "create_autospec() now works properly for subclasses of property() and other " @@ -35739,81 +35693,81 @@ msgid "" "unittest.mock.DescriptorTypes tuple." msgstr "" -#: ../build/NEWS:21759 +#: ../build/NEWS:21794 msgid "" "`bpo-26754 `__: Undocumented support of " "general bytes-like objects as path in compile() and similar functions is now " "deprecated." msgstr "" -#: ../build/NEWS:21762 +#: ../build/NEWS:21797 msgid "" "`bpo-26800 `__: Undocumented support of " "general bytes-like objects as paths in os functions is now deprecated." msgstr "" -#: ../build/NEWS:21765 +#: ../build/NEWS:21800 msgid "" "`bpo-26981 `__: Add _order_ " "compatibility shim to enum.Enum for Python 2/3 code bases." msgstr "" -#: ../build/NEWS:21768 +#: ../build/NEWS:21803 msgid "" "`bpo-27661 `__: Added tzinfo keyword " "argument to datetime.combine." msgstr "" -#: ../build/NEWS:21770 ../build/NEWS:24577 +#: ../build/NEWS:21805 ../build/NEWS:24612 msgid "" "In the curses module, raise an error if window.getstr() or window.instr() is " "passed a negative value." msgstr "" -#: ../build/NEWS:21773 ../build/NEWS:24580 +#: ../build/NEWS:21808 ../build/NEWS:24615 msgid "" "`bpo-27783 `__: Fix possible usage of " "uninitialized memory in operator.methodcaller." msgstr "" -#: ../build/NEWS:21776 ../build/NEWS:24583 +#: ../build/NEWS:21811 ../build/NEWS:24618 msgid "" "`bpo-27774 `__: Fix possible Py_DECREF " "on unowned object in _sre." msgstr "" -#: ../build/NEWS:21778 ../build/NEWS:24585 +#: ../build/NEWS:21813 ../build/NEWS:24620 msgid "" "`bpo-27760 `__: Fix possible integer " "overflow in binascii.b2a_qp." msgstr "" -#: ../build/NEWS:21780 ../build/NEWS:24587 +#: ../build/NEWS:21815 ../build/NEWS:24622 msgid "" "`bpo-27758 `__: Fix possible integer " "overflow in the _csv module for large record lengths." msgstr "" -#: ../build/NEWS:21783 ../build/NEWS:24590 +#: ../build/NEWS:21818 ../build/NEWS:24625 msgid "" "`bpo-27568 `__: Prevent HTTPoxy attack " "(CVE-2016-1000110). Ignore the HTTP_PROXY variable when REQUEST_METHOD " "environment is set, which indicates that the script is in CGI mode." msgstr "" -#: ../build/NEWS:21787 +#: ../build/NEWS:21822 msgid "" "`bpo-7063 `__: Remove dead code from the " "\"array\" module's slice handling. Patch by Chuck." msgstr "" -#: ../build/NEWS:21790 ../build/NEWS:24594 +#: ../build/NEWS:21825 ../build/NEWS:24629 msgid "" "`bpo-27656 `__: Do not assume sched.h " "defines any SCHED_* constants." msgstr "" -#: ../build/NEWS:21792 ../build/NEWS:24596 +#: ../build/NEWS:21827 ../build/NEWS:24631 msgid "" "`bpo-27130 `__: In the \"zlib\" module, " "fix handling of large buffers (typically 4 GiB) when compressing and " @@ -35821,54 +35775,54 @@ msgid "" "and decompression operations did not properly handle results of 4 GiB." msgstr "" -#: ../build/NEWS:21797 +#: ../build/NEWS:21832 msgid "" "`bpo-24773 `__: Implemented :pep:`495` " "(Local Time Disambiguation)." msgstr "" -#: ../build/NEWS:21799 +#: ../build/NEWS:21834 msgid "" "Expose the EPOLLEXCLUSIVE constant (when it is defined) in the select module." msgstr "" -#: ../build/NEWS:21802 +#: ../build/NEWS:21837 msgid "" "`bpo-27567 `__: Expose the EPOLLRDHUP " "and POLLRDHUP constants in the select module." msgstr "" -#: ../build/NEWS:21805 +#: ../build/NEWS:21840 msgid "" "`bpo-1621 `__: Avoid signed int negation " "overflow in the \"audioop\" module." msgstr "" -#: ../build/NEWS:21807 ../build/NEWS:24601 +#: ../build/NEWS:21842 ../build/NEWS:24636 msgid "" "`bpo-27533 `__: Release GIL in nt._isdir" msgstr "" -#: ../build/NEWS:21809 ../build/NEWS:24603 +#: ../build/NEWS:21844 ../build/NEWS:24638 msgid "" "`bpo-17711 `__: Fixed unpickling by the " "persistent ID with protocol 0. Original patch by Alexandre Vassalotti." msgstr "" -#: ../build/NEWS:21812 ../build/NEWS:24606 +#: ../build/NEWS:21847 ../build/NEWS:24641 msgid "" "`bpo-27522 `__: Avoid an unintentional " "reference cycle in email.feedparser." msgstr "" -#: ../build/NEWS:21814 +#: ../build/NEWS:21849 msgid "" "`bpo-27512 `__: Fix a segfault when os." "fspath() called an __fspath__() method that raised an exception. Patch by " "Xiang Zhang." msgstr "" -#: ../build/NEWS:21820 ../build/NEWS:24757 +#: ../build/NEWS:21855 ../build/NEWS:24792 msgid "" "`bpo-27714 `__: text_textview and " "test_autocomplete now pass when re-run in the same process. This occurs " @@ -35876,7 +35830,7 @@ msgid "" "warning from test_config." msgstr "" -#: ../build/NEWS:21824 +#: ../build/NEWS:21859 msgid "" "`bpo-27621 `__: Put query response " "validation error messages in the query box itself instead of in a separate " @@ -35884,151 +35838,151 @@ msgid "" "Mark Roseman." msgstr "" -#: ../build/NEWS:21828 +#: ../build/NEWS:21863 msgid "" "`bpo-27620 `__: Escape key now closes " "Query box as cancelled." msgstr "" -#: ../build/NEWS:21830 +#: ../build/NEWS:21865 msgid "" "`bpo-27609 `__: IDLE: tab after initial " "whitespace should tab, not autocomplete. This fixes problem with writing " "docstrings at least twice indented." msgstr "" -#: ../build/NEWS:21834 +#: ../build/NEWS:21869 msgid "" "`bpo-27609 `__: Explicitly return None " "when there are also non-None returns. In a few cases, reverse a condition " "and eliminate a return." msgstr "" -#: ../build/NEWS:21837 ../build/NEWS:24761 +#: ../build/NEWS:21872 ../build/NEWS:24796 msgid "" "`bpo-25507 `__: IDLE no longer runs " "buggy code because of its tkinter imports. Users must include the same " "imports required to run directly in Python." msgstr "" -#: ../build/NEWS:21840 ../build/NEWS:22033 +#: ../build/NEWS:21875 ../build/NEWS:22068 msgid "" "`bpo-27173 `__: Add 'IDLE Modern Unix' " "to the built-in key sets. Make the default key set depend on the platform. " "Add tests for the changes to the config module." msgstr "" -#: ../build/NEWS:21844 ../build/NEWS:22040 ../build/NEWS:24764 +#: ../build/NEWS:21879 ../build/NEWS:22075 ../build/NEWS:24799 msgid "" "`bpo-27452 `__: add line counter and crc " "to IDLE configHandler test dump." msgstr "" -#: ../build/NEWS:21849 +#: ../build/NEWS:21884 msgid "" "`bpo-25805 `__: Skip a test in " "test_pkgutil as needed that doesn't work when ``__name__ == __main__``. " "Patch by SilentGhost." msgstr "" -#: ../build/NEWS:21852 +#: ../build/NEWS:21887 msgid "" "`bpo-27472 `__: Add test.support." "unix_shell as the path to the default shell." msgstr "" -#: ../build/NEWS:21854 ../build/NEWS:24802 +#: ../build/NEWS:21889 ../build/NEWS:24837 msgid "" "`bpo-27369 `__: In test_pyexpat, avoid " "testing an error message detail that changed in Expat 2.2.0." msgstr "" -#: ../build/NEWS:21857 +#: ../build/NEWS:21892 msgid "" "`bpo-27594 `__: Prevent assertion error " "when running test_ast with coverage enabled: ensure code object has a valid " "first line number. Patch suggested by Ivan Levkivskyi." msgstr "" -#: ../build/NEWS:21864 +#: ../build/NEWS:21899 msgid "" "`bpo-27647 `__: Update bundled Tcl/Tk to " "8.6.6." msgstr "" -#: ../build/NEWS:21866 +#: ../build/NEWS:21901 msgid "" "`bpo-27610 `__: Adds :pep:`514` metadata " "to Windows installer" msgstr "" -#: ../build/NEWS:21868 ../build/NEWS:24827 +#: ../build/NEWS:21903 ../build/NEWS:24862 msgid "" "`bpo-27469 `__: Adds a shell extension " "to the launcher so that drag and drop works correctly." msgstr "" -#: ../build/NEWS:21871 +#: ../build/NEWS:21906 msgid "" "`bpo-27309 `__: Enables proper Windows " "styles in python[w].exe manifest." msgstr "" -#: ../build/NEWS:21876 ../build/NEWS:24872 +#: ../build/NEWS:21911 ../build/NEWS:24907 msgid "" "`bpo-27713 `__: Suppress spurious build " "warnings when updating importlib's bootstrap files. Patch by Xiang Zhang" msgstr "" -#: ../build/NEWS:21879 +#: ../build/NEWS:21914 msgid "" "`bpo-25825 `__: Correct the references " "to Modules/python.exp, which is required on AIX. The references were " "accidentally changed in 3.5.0a1." msgstr "" -#: ../build/NEWS:21882 ../build/NEWS:24880 +#: ../build/NEWS:21917 ../build/NEWS:24915 msgid "" "`bpo-27453 `__: CPP invocation in " "configure must use CPPFLAGS. Patch by Chi Hsuan Yen." msgstr "" -#: ../build/NEWS:21885 ../build/NEWS:24883 +#: ../build/NEWS:21920 ../build/NEWS:24918 msgid "" "`bpo-27641 `__: The configure script now " "inserts comments into the makefile to prevent the pgen and _freeze_importlib " "executables from being cross-compiled." msgstr "" -#: ../build/NEWS:21889 ../build/NEWS:24887 +#: ../build/NEWS:21924 ../build/NEWS:24922 msgid "" "`bpo-26662 `__: Set PYTHON_FOR_GEN in " "configure as the Python program to be used for file generation during the " "build." msgstr "" -#: ../build/NEWS:21892 ../build/NEWS:24890 +#: ../build/NEWS:21927 ../build/NEWS:24925 msgid "" "`bpo-10910 `__: Avoid C++ compilation " "errors on FreeBSD and OS X. Also update FreedBSD version checks for the " "original ctype UTF-8 workaround." msgstr "" -#: ../build/NEWS:21897 +#: ../build/NEWS:21932 msgid "Python 3.6.0 alpha 3" msgstr "" -#: ../build/NEWS:21899 +#: ../build/NEWS:21934 msgid "*Release date: 2016-07-11*" msgstr "" -#: ../build/NEWS:21904 ../build/NEWS:24328 +#: ../build/NEWS:21939 ../build/NEWS:24363 msgid "" "`bpo-27473 `__: Fixed possible integer " "overflow in bytes and bytearray concatenations. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:21907 +#: ../build/NEWS:21942 msgid "" "`bpo-23034 `__: The output of a special " "Python build with defined COUNT_ALLOCS, SHOW_ALLOC_COUNT or SHOW_TRACK_COUNT " @@ -36036,54 +35990,54 @@ msgid "" "showalloccount\" option. It now outputs to stderr instead of stdout." msgstr "" -#: ../build/NEWS:21912 ../build/NEWS:24337 +#: ../build/NEWS:21947 ../build/NEWS:24372 msgid "" "`bpo-27443 `__: __length_hint__() of " "bytearray iterators no longer return a negative integer for a resized " "bytearray." msgstr "" -#: ../build/NEWS:21915 +#: ../build/NEWS:21950 msgid "" "`bpo-27007 `__: The fromhex() class " "methods of bytes and bytearray subclasses now return an instance of " "corresponding subclass." msgstr "" -#: ../build/NEWS:21921 ../build/NEWS:24608 +#: ../build/NEWS:21956 ../build/NEWS:24643 msgid "" "`bpo-26844 `__: Fix error message for " "imp.find_module() to refer to 'path' instead of 'name'. Patch by Lev Maximov." msgstr "" -#: ../build/NEWS:21924 ../build/NEWS:24611 +#: ../build/NEWS:21959 ../build/NEWS:24646 msgid "" "`bpo-23804 `__: Fix SSL zero-length " "recv() calls to not block and not raise an error about unclean EOF." msgstr "" -#: ../build/NEWS:21927 ../build/NEWS:24614 +#: ../build/NEWS:21962 ../build/NEWS:24649 msgid "" "`bpo-27466 `__: Change time format " "returned by http.cookie.time2netscape, confirming the netscape cookie format " "and making it consistent with documentation." msgstr "" -#: ../build/NEWS:21931 +#: ../build/NEWS:21966 msgid "" "`bpo-21708 `__: Deprecated dbm.dumb " "behavior that differs from common dbm behavior: creating a database in 'r' " "and 'w' modes and modifying a database in 'r' mode." msgstr "" -#: ../build/NEWS:21935 +#: ../build/NEWS:21970 msgid "" "`bpo-26721 `__: Change the socketserver." "StreamRequestHandler.wfile attribute to implement BufferedIOBase. In " "particular, the write() method no longer does partial writes." msgstr "" -#: ../build/NEWS:21939 +#: ../build/NEWS:21974 msgid "" "`bpo-22115 `__: Added methods trace_add, " "trace_remove and trace_info in the tkinter.Variable class. They replace old " @@ -36094,34 +36048,34 @@ msgid "" "tracing in the \"u\" mode now works." msgstr "" -#: ../build/NEWS:21947 +#: ../build/NEWS:21982 msgid "" "`bpo-26243 `__: Only the level argument " "to zlib.compress() is keyword argument now. The first argument is " "positional-only." msgstr "" -#: ../build/NEWS:21950 +#: ../build/NEWS:21985 msgid "" "`bpo-27038 `__: Expose the DirEntry type " "as os.DirEntry. Code patch by Jelle Zijlstra." msgstr "" -#: ../build/NEWS:21953 +#: ../build/NEWS:21988 msgid "" "`bpo-27186 `__: Update os.fspath()/" "PyOS_FSPath() to check the return value of __fspath__() to be either str or " "bytes." msgstr "" -#: ../build/NEWS:21956 +#: ../build/NEWS:21991 msgid "" "`bpo-18726 `__: All optional parameters " "of the dump(), dumps(), load() and loads() functions and JSONEncoder and " "JSONDecoder class constructors in the json module are now keyword-only." msgstr "" -#: ../build/NEWS:21960 +#: ../build/NEWS:21995 msgid "" "`bpo-27319 `__: Methods selection_set(), " "selection_add(), selection_remove() and selection_toggle() of ttk.TreeView " @@ -36130,58 +36084,58 @@ msgid "" "method with arguments." msgstr "" -#: ../build/NEWS:21965 ../build/NEWS:24628 +#: ../build/NEWS:22000 ../build/NEWS:24663 msgid "" "`bpo-27079 `__: Fixed curses.ascii " "functions isblank(), iscntrl() and ispunct()." msgstr "" -#: ../build/NEWS:21968 +#: ../build/NEWS:22003 msgid "" "`bpo-27294 `__: Numerical state in the " "repr for Tkinter event objects is now represented as a combination of known " "flags." msgstr "" -#: ../build/NEWS:21971 +#: ../build/NEWS:22006 msgid "" "`bpo-27177 `__: Match objects in the re " "module now support index-like objects as group indices. Based on patches by " "Jeroen Demeyer and Xiang Zhang." msgstr "" -#: ../build/NEWS:21974 ../build/NEWS:24631 +#: ../build/NEWS:22009 ../build/NEWS:24666 msgid "" "`bpo-26754 `__: Some functions " "(compile() etc) accepted a filename argument encoded as an iterable of " "integers. Now only strings and byte-like objects are accepted." msgstr "" -#: ../build/NEWS:21978 +#: ../build/NEWS:22013 msgid "" "`bpo-26536 `__: socket.ioctl now " "supports SIO_LOOPBACK_FAST_PATH. Patch by Daniel Stokes." msgstr "" -#: ../build/NEWS:21981 ../build/NEWS:24635 +#: ../build/NEWS:22016 ../build/NEWS:24670 msgid "" "`bpo-27048 `__: Prevents distutils " "failing on Windows when environment variables contain non-ASCII characters" msgstr "" -#: ../build/NEWS:21984 ../build/NEWS:24638 +#: ../build/NEWS:22019 ../build/NEWS:24673 msgid "" "`bpo-27330 `__: Fixed possible leaks in " "the ctypes module." msgstr "" -#: ../build/NEWS:21986 ../build/NEWS:24640 +#: ../build/NEWS:22021 ../build/NEWS:24675 msgid "" "`bpo-27238 `__: Got rid of bare excepts " "in the turtle module. Original patch by Jelle Zijlstra." msgstr "" -#: ../build/NEWS:21989 ../build/NEWS:24643 +#: ../build/NEWS:22024 ../build/NEWS:24678 msgid "" "`bpo-27122 `__: When an exception is " "raised within the context being managed by a contextlib.ExitStack() and one " @@ -36190,7 +36144,7 @@ msgid "" "This avoids the :pep:`479` bug described in issue25782." msgstr "" -#: ../build/NEWS:21998 ../build/NEWS:24652 +#: ../build/NEWS:22033 ../build/NEWS:24687 msgid "" "`bpo-27278 `__: Fix os.urandom() " "implementation using getrandom() on Linux. Truncate size to INT_MAX and loop " @@ -36198,57 +36152,57 @@ msgid "" "Py_ssize_t to int." msgstr "" -#: ../build/NEWS:22005 +#: ../build/NEWS:22040 msgid "" "`bpo-16864 `__: sqlite3.Cursor.lastrowid " "now supports REPLACE statement. Initial patch by Alex LordThorsen." msgstr "" -#: ../build/NEWS:22008 ../build/NEWS:24659 +#: ../build/NEWS:22043 ../build/NEWS:24694 msgid "" "`bpo-26386 `__: Fixed ttk.TreeView " "selection operations with item id's containing spaces." msgstr "" -#: ../build/NEWS:22011 +#: ../build/NEWS:22046 msgid "" "`bpo-8637 `__: Honor a pager set by the " "env var MANPAGER (in preference to one set by the env var PAGER)." msgstr "" -#: ../build/NEWS:22017 ../build/NEWS:24665 +#: ../build/NEWS:22052 ../build/NEWS:24700 msgid "" "`bpo-22636 `__: Avoid shell injection " "problems with ctypes.util.find_library()." msgstr "" -#: ../build/NEWS:22022 ../build/NEWS:24670 +#: ../build/NEWS:22057 ../build/NEWS:24705 msgid "" "`bpo-16182 `__: Fix various functions in " "the \"readline\" module to use the locale encoding, and fix get_begidx() and " "get_endidx() to return code point indexes." msgstr "" -#: ../build/NEWS:22026 ../build/NEWS:24674 +#: ../build/NEWS:22061 ../build/NEWS:24709 msgid "" "`bpo-27392 `__: Add loop." "connect_accepted_socket(). Patch by Jim Fulton." msgstr "" -#: ../build/NEWS:22031 +#: ../build/NEWS:22066 msgid "" "`bpo-27477 `__: IDLE search dialogs now " "use ttk widgets." msgstr "" -#: ../build/NEWS:22037 +#: ../build/NEWS:22072 msgid "" "`bpo-27452 `__: make command line \"idle-" "test> python test_help.py\" work. __file__ is relative when python is " "started in the file's directory." msgstr "" -#: ../build/NEWS:22042 +#: ../build/NEWS:22077 msgid "" "`bpo-27380 `__: IDLE: add query.py with " "base Query dialog and ttk widgets. Module had subclasses SectionName, " @@ -36258,19 +36212,19 @@ msgid "" "starting over. Add tests and delete the two files combined into the new one." msgstr "" -#: ../build/NEWS:22049 +#: ../build/NEWS:22084 msgid "" "`bpo-27372 `__: Test_idle no longer " "changes the locale." msgstr "" -#: ../build/NEWS:22051 ../build/NEWS:24766 +#: ../build/NEWS:22086 ../build/NEWS:24801 msgid "" "`bpo-27365 `__: Allow non-ascii chars in " "IDLE NEWS.txt, for contributor names." msgstr "" -#: ../build/NEWS:22053 ../build/NEWS:24768 +#: ../build/NEWS:22088 ../build/NEWS:24803 msgid "" "`bpo-27245 `__: IDLE: Cleanly delete " "custom themes and key bindings. Previously, when IDLE was started from a " @@ -36278,7 +36232,7 @@ msgid "" "Storchaka." msgstr "" -#: ../build/NEWS:22057 +#: ../build/NEWS:22092 msgid "" "`bpo-24137 `__: Run IDLE, test_idle, and " "htest with tkinter default root disabled. Fix code and tests that fail with " @@ -36286,47 +36240,47 @@ msgid "" "mainloop." msgstr "" -#: ../build/NEWS:22061 +#: ../build/NEWS:22096 msgid "" "`bpo-27310 `__: Fix IDLE.app failure to " "launch on OS X due to vestigial import." msgstr "" -#: ../build/NEWS:22066 +#: ../build/NEWS:22101 msgid "" "`bpo-26754 `__: PyUnicode_FSDecoder() " "accepted a filename argument encoded as an iterable of integers. Now only " "strings and byte-like objects are accepted." msgstr "" -#: ../build/NEWS:22073 ../build/NEWS:24853 +#: ../build/NEWS:22108 ../build/NEWS:24888 msgid "" "`bpo-28066 `__: Fix the logic that " "searches build directories for generated include files when building outside " "the source tree." msgstr "" -#: ../build/NEWS:22076 +#: ../build/NEWS:22111 msgid "" "`bpo-27442 `__: Expose the Android API " "level that python was built against, in sysconfig.get_config_vars() as " "'ANDROID_API_LEVEL'." msgstr "" -#: ../build/NEWS:22079 +#: ../build/NEWS:22114 msgid "" "`bpo-27434 `__: The interpreter that " "runs the cross-build, found in PATH, must now be of the same feature version " "(e.g. 3.6) as the source being built." msgstr "" -#: ../build/NEWS:22082 ../build/NEWS:24905 +#: ../build/NEWS:22117 ../build/NEWS:24940 msgid "" "`bpo-26930 `__: Update Windows builds to " "use OpenSSL 1.0.2h." msgstr "" -#: ../build/NEWS:22084 +#: ../build/NEWS:22119 msgid "" "`bpo-23968 `__: Rename the platform " "directory from plat-$(MACHDEP) to plat-$(PLATFORM_TRIPLET). Rename the " @@ -36335,63 +36289,63 @@ msgid "" "into the platform directory and rename it to include the ABIFLAGS." msgstr "" -#: ../build/NEWS:22090 +#: ../build/NEWS:22125 msgid "Don't use largefile support for GNU/Hurd." msgstr "" -#: ../build/NEWS:22095 ../build/NEWS:24812 +#: ../build/NEWS:22130 ../build/NEWS:24847 msgid "" "`bpo-27332 `__: Fixed the type of the " "first argument of module-level functions generated by Argument Clinic. " "Patch by Petr Viktorin." msgstr "" -#: ../build/NEWS:22098 ../build/NEWS:24815 +#: ../build/NEWS:22133 ../build/NEWS:24850 msgid "" "`bpo-27418 `__: Fixed Tools/importbench/" "importbench.py." msgstr "" -#: ../build/NEWS:22103 ../build/NEWS:25534 +#: ../build/NEWS:22138 ../build/NEWS:25569 msgid "" "`bpo-19489 `__: Moved the search box " "from the sidebar to the header and footer of each page. Patch by Ammar Askar." msgstr "" -#: ../build/NEWS:22106 +#: ../build/NEWS:22141 msgid "" "`bpo-27285 `__: Update documentation to " "reflect the deprecation of ``pyvenv`` and normalize on the term \"virtual " "environment\". Patch by Steve Piercy." msgstr "" -#: ../build/NEWS:22112 +#: ../build/NEWS:22147 msgid "" "`bpo-27027 `__: Added test.support." "is_android that is True when this is an Android build." msgstr "" -#: ../build/NEWS:22117 +#: ../build/NEWS:22152 msgid "Python 3.6.0 alpha 2" msgstr "" -#: ../build/NEWS:22119 +#: ../build/NEWS:22154 msgid "*Release date: 2016-06-13*" msgstr "" -#: ../build/NEWS:22124 +#: ../build/NEWS:22159 msgid "" "`bpo-27095 `__: Simplified MAKE_FUNCTION " "and removed MAKE_CLOSURE opcodes. Patch by Demur Rumed." msgstr "" -#: ../build/NEWS:22127 +#: ../build/NEWS:22162 msgid "" "`bpo-27190 `__: Raise NotSupportedError " "if sqlite3 is older than 3.3.1. Patch by Dave Sawyer." msgstr "" -#: ../build/NEWS:22130 +#: ../build/NEWS:22165 msgid "" "`bpo-27286 `__: Fixed compiling " "BUILD_MAP_UNPACK_WITH_CALL opcode. Calling function with generalized " @@ -36399,26 +36353,26 @@ msgid "" "behavior." msgstr "" -#: ../build/NEWS:22134 +#: ../build/NEWS:22169 msgid "" "`bpo-27140 `__: Added " "BUILD_CONST_KEY_MAP opcode." msgstr "" -#: ../build/NEWS:22136 +#: ../build/NEWS:22171 msgid "" "`bpo-27186 `__: Add support for os." "PathLike objects to open() (part of :pep:`519`)." msgstr "" -#: ../build/NEWS:22139 ../build/NEWS:24926 +#: ../build/NEWS:22174 ../build/NEWS:24961 msgid "" "`bpo-27066 `__: Fixed SystemError if a " "custom opener (for open()) returns a negative number without setting an " "exception." msgstr "" -#: ../build/NEWS:22142 +#: ../build/NEWS:22177 msgid "" "`bpo-26983 `__: float() now always " "return an instance of exact float. The deprecation warning is emitted if " @@ -36426,26 +36380,26 @@ msgid "" "versions of Python this can be an error." msgstr "" -#: ../build/NEWS:22147 +#: ../build/NEWS:22182 msgid "" "`bpo-27097 `__: Python interpreter is " "now about 7% faster due to optimized instruction decoding. Based on patch " "by Demur Rumed." msgstr "" -#: ../build/NEWS:22150 +#: ../build/NEWS:22185 msgid "" "`bpo-26647 `__: Python interpreter now " "uses 16-bit wordcode instead of bytecode. Patch by Demur Rumed." msgstr "" -#: ../build/NEWS:22153 +#: ../build/NEWS:22188 msgid "" "`bpo-23275 `__: Allow assigning to an " "empty target list in round brackets: () = iterable." msgstr "" -#: ../build/NEWS:22156 ../build/NEWS:25048 +#: ../build/NEWS:22191 ../build/NEWS:25083 msgid "" "`bpo-27243 `__: Update the __aiter__ " "protocol: instead of returning an awaitable that resolves to an asynchronous " @@ -36453,101 +36407,101 @@ msgid "" "former will trigger a PendingDeprecationWarning." msgstr "" -#: ../build/NEWS:22164 +#: ../build/NEWS:22199 msgid "" "Comment out socket (SO_REUSEPORT) and posix (O_SHLOCK, O_EXLOCK) constants " "exposed on the API which are not implemented on GNU/Hurd. They would not " "work at runtime anyway." msgstr "" -#: ../build/NEWS:22168 +#: ../build/NEWS:22203 msgid "" "`bpo-27025 `__: Generated names for " "Tkinter widgets are now more meaningful and recognizable." msgstr "" -#: ../build/NEWS:22171 +#: ../build/NEWS:22206 msgid "" "`bpo-25455 `__: Fixed crashes in repr of " "recursive ElementTree.Element and functools.partial objects." msgstr "" -#: ../build/NEWS:22174 +#: ../build/NEWS:22209 msgid "" "`bpo-27294 `__: Improved repr for " "Tkinter event objects." msgstr "" -#: ../build/NEWS:22176 +#: ../build/NEWS:22211 msgid "" "`bpo-20508 `__: Improve exception " "message of IPv{4,6}Network.__getitem__. Patch by Gareth Rees." msgstr "" -#: ../build/NEWS:22182 ../build/NEWS:25056 +#: ../build/NEWS:22217 ../build/NEWS:25091 msgid "" "`bpo-26556 `__: Update expat to 2.1.1, " "fixes CVE-2015-1283." msgstr "" -#: ../build/NEWS:22184 +#: ../build/NEWS:22219 msgid "" "Fix TLS stripping vulnerability in smtplib, CVE-2016-0772. Reported by Team " "Oststrom." msgstr "" -#: ../build/NEWS:22190 ../build/NEWS:25064 +#: ../build/NEWS:22225 ../build/NEWS:25099 msgid "" "`bpo-21386 `__: Implement missing " "IPv4Address.is_global property. It was documented since 07a5610bae9d. " "Initial patch by Roger Luethi." msgstr "" -#: ../build/NEWS:22193 +#: ../build/NEWS:22228 msgid "" "`bpo-27029 `__: Removed deprecated " "support of universal newlines mode from ZipFile.open()." msgstr "" -#: ../build/NEWS:22196 +#: ../build/NEWS:22231 msgid "" "`bpo-27030 `__: Unknown escapes " "consisting of ``'\\'`` and an ASCII letter in regular expressions now are " "errors. The re.LOCALE flag now can be used only with bytes patterns." msgstr "" -#: ../build/NEWS:22200 +#: ../build/NEWS:22235 msgid "" "`bpo-27186 `__: Add os.PathLike support " "to DirEntry (part of :pep:`519`). Initial patch by Jelle Zijlstra." msgstr "" -#: ../build/NEWS:22203 ../build/NEWS:25067 +#: ../build/NEWS:22238 ../build/NEWS:25102 msgid "" "`bpo-20900 `__: distutils register " "command now decodes HTTP responses correctly. Initial patch by ingrid." msgstr "" -#: ../build/NEWS:22206 +#: ../build/NEWS:22241 msgid "" "`bpo-27186 `__: Add os.PathLike support " "to pathlib, removing its provisional status (part of PEP 519). Initial patch " "by Dusty Phillips." msgstr "" -#: ../build/NEWS:22209 +#: ../build/NEWS:22244 msgid "" "`bpo-27186 `__: Add support for os." "PathLike objects to os.fsencode() and os.fsdecode() (part of :pep:`519`)." msgstr "" -#: ../build/NEWS:22212 +#: ../build/NEWS:22247 msgid "" "`bpo-27186 `__: Introduce os.PathLike " "and os.fspath() (part of :pep:`519`)." msgstr "" -#: ../build/NEWS:22214 ../build/NEWS:25070 +#: ../build/NEWS:22249 ../build/NEWS:25105 msgid "" "A new version of typing.py provides several new classes and features: " "@overload outside stubs, Reversible, DefaultDict, Text, ContextManager, " @@ -36557,7 +36511,7 @@ msgid "" "been added (in fact they made it into 3.5.1 but were never mentioned)." msgstr "" -#: ../build/NEWS:22222 ../build/NEWS:25078 +#: ../build/NEWS:22257 ../build/NEWS:25113 msgid "" "`bpo-25738 `__: Stop http.server." "BaseHTTPRequestHandler.send_error() from sending a message body for 205 " @@ -36565,13 +36519,13 @@ msgid "" "don't have a body. Patch by Susumu Koshiba." msgstr "" -#: ../build/NEWS:22227 ../build/NEWS:25083 +#: ../build/NEWS:22262 ../build/NEWS:25118 msgid "" "`bpo-21313 `__: Fix the \"platform\" " "module to tolerate when sys.version contains truncated build information." msgstr "" -#: ../build/NEWS:22233 ../build/NEWS:25089 +#: ../build/NEWS:22268 ../build/NEWS:25124 msgid "" "`bpo-26839 `__: On Linux, :func:`os." "urandom` now calls ``getrandom()`` with ``GRND_NONBLOCK`` to fall back on " @@ -36579,21 +36533,21 @@ msgid "" "Patch written by Colm Buckley." msgstr "" -#: ../build/NEWS:22240 +#: ../build/NEWS:22275 msgid "" "`bpo-23883 `__: Added missing APIs to " "__all__ to match the documented APIs for the following modules: cgi, " "mailbox, mimetypes, plistlib and smtpd. Patches by Jacek Kołodziej." msgstr "" -#: ../build/NEWS:22244 ../build/NEWS:25096 +#: ../build/NEWS:22279 ../build/NEWS:25131 msgid "" "`bpo-27164 `__: In the zlib module, " "allow decompressing raw Deflate streams with a predefined zdict. Based on " "patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:22247 ../build/NEWS:25099 +#: ../build/NEWS:22282 ../build/NEWS:25134 msgid "" "`bpo-24291 `__: Fix wsgiref." "simple_server.WSGIRequestHandler to completely write data to the client. " @@ -36602,13 +36556,13 @@ msgid "" "is deprecated." msgstr "" -#: ../build/NEWS:22252 +#: ../build/NEWS:22287 msgid "" "`bpo-21272 `__: Use _sysconfigdata.py to " "initialize distutils.sysconfig." msgstr "" -#: ../build/NEWS:22254 +#: ../build/NEWS:22289 msgid "" "`bpo-19611 `__: :mod:`inspect` now " "reports the implicit ``.0`` parameters generated by the compiler for " @@ -36616,20 +36570,20 @@ msgid "" "only parameters called ``implicit0``. Patch by Jelle Zijlstra." msgstr "" -#: ../build/NEWS:22259 ../build/NEWS:25104 +#: ../build/NEWS:22294 ../build/NEWS:25139 msgid "" "`bpo-26809 `__: Add ``__all__`` to :mod:" "`string`. Patch by Emanuel Barry." msgstr "" -#: ../build/NEWS:22261 ../build/NEWS:25106 +#: ../build/NEWS:22296 ../build/NEWS:25141 msgid "" "`bpo-26373 `__: subprocess.Popen." "communicate now correctly ignores BrokenPipeError when the child process " "dies before .communicate() is called in more/all circumstances." msgstr "" -#: ../build/NEWS:22265 +#: ../build/NEWS:22300 msgid "" "signal, socket, and ssl module IntEnum constant name lookups now return a " "consistent name for values having multiple names. Ex: signal.Signals(6) now " @@ -36637,71 +36591,71 @@ msgid "" "signal.SIGIOT based on the interpreter's hash randomization seed." msgstr "" -#: ../build/NEWS:22270 +#: ../build/NEWS:22305 msgid "" "`bpo-27167 `__: Clarify the subprocess." "CalledProcessError error message text when the child process died due to a " "signal." msgstr "" -#: ../build/NEWS:22273 +#: ../build/NEWS:22308 msgid "" "`bpo-25931 `__: Don't define " "socketserver.Forking* names on platforms such as Windows that do not support " "os.fork()." msgstr "" -#: ../build/NEWS:22276 ../build/NEWS:25110 +#: ../build/NEWS:22311 ../build/NEWS:25145 msgid "" "`bpo-21776 `__: distutils.upload now " "correctly handles HTTPError. Initial patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:22279 +#: ../build/NEWS:22314 msgid "" "`bpo-26526 `__: Replace custom parse " "tree validation in the parser module with a simple DFA validator." msgstr "" -#: ../build/NEWS:22282 ../build/NEWS:25113 +#: ../build/NEWS:22317 ../build/NEWS:25148 msgid "" "`bpo-27114 `__: Fix SSLContext." "_load_windows_store_certs fails with PermissionError" msgstr "" -#: ../build/NEWS:22285 ../build/NEWS:25116 +#: ../build/NEWS:22320 ../build/NEWS:25151 msgid "" "`bpo-18383 `__: Avoid creating duplicate " "filters when using filterwarnings and simplefilter. Based on patch by Alex " "Shkop." msgstr "" -#: ../build/NEWS:22288 +#: ../build/NEWS:22323 msgid "" "`bpo-23026 `__: winreg.QueryValueEx() " "now return an integer for REG_QWORD type." msgstr "" -#: ../build/NEWS:22290 +#: ../build/NEWS:22325 msgid "" "`bpo-26741 `__: subprocess.Popen " "destructor now emits a ResourceWarning warning if the child process is still " "running." msgstr "" -#: ../build/NEWS:22293 +#: ../build/NEWS:22328 msgid "" "`bpo-27056 `__: Optimize pickle.load() " "and pickle.loads(), up to 10% faster to deserialize a lot of small objects." msgstr "" -#: ../build/NEWS:22296 +#: ../build/NEWS:22331 msgid "" "`bpo-21271 `__: New keyword only " "parameters in reset_mock call." msgstr "" -#: ../build/NEWS:22301 ../build/NEWS:25481 +#: ../build/NEWS:22336 ../build/NEWS:25516 msgid "" "`bpo-5124 `__: Paste with text selected " "now replaces the selection on X11. This matches how paste works on Windows, " @@ -36709,39 +36663,39 @@ msgid "" "Storchaka." msgstr "" -#: ../build/NEWS:22305 +#: ../build/NEWS:22340 msgid "" "`bpo-24750 `__: Switch all scrollbars in " "IDLE to ttk versions. Where needed, minimal tests are added to cover changes." msgstr "" -#: ../build/NEWS:22308 +#: ../build/NEWS:22343 msgid "" "`bpo-24759 `__: IDLE requires tk 8.5 and " "availability ttk widgets. Delete now unneeded tk version tests and code for " "older versions. Add test for IDLE syntax colorizer." msgstr "" -#: ../build/NEWS:22312 +#: ../build/NEWS:22347 msgid "" "`bpo-27239 `__: idlelib.macosx.isXyzTk " "functions initialize as needed." msgstr "" -#: ../build/NEWS:22314 +#: ../build/NEWS:22349 msgid "" "`bpo-27262 `__: move Aqua unbinding " "code, which enable context menus, to macosx." msgstr "" -#: ../build/NEWS:22317 ../build/NEWS:25485 +#: ../build/NEWS:22352 ../build/NEWS:25520 msgid "" "`bpo-24759 `__: Make clear in idlelib." "idle_test.__init__ that the directory is a private implementation of test." "test_idle and tool for maintainers." msgstr "" -#: ../build/NEWS:22320 ../build/NEWS:25488 +#: ../build/NEWS:22355 ../build/NEWS:25523 msgid "" "`bpo-27196 `__: Stop 'ThemeChanged' " "warnings when running IDLE tests. These persisted after other warnings were " @@ -36749,33 +36703,33 @@ msgid "" "four test files. Record this additional advice in idle_test/README.txt" msgstr "" -#: ../build/NEWS:22325 ../build/NEWS:25493 +#: ../build/NEWS:22360 ../build/NEWS:25528 msgid "" "`bpo-20567 `__: Revise idle_test/README." "txt with advice about avoiding tk warning messages from tests. Apply advice " "to several IDLE tests." msgstr "" -#: ../build/NEWS:22328 +#: ../build/NEWS:22363 msgid "" "`bpo-24225 `__: Update idlelib/README." "txt with new file names and event handlers." msgstr "" -#: ../build/NEWS:22331 +#: ../build/NEWS:22366 msgid "" "`bpo-27156 `__: Remove obsolete code not " "used by IDLE." msgstr "" -#: ../build/NEWS:22333 ../build/NEWS:25496 +#: ../build/NEWS:22368 ../build/NEWS:25531 msgid "" "`bpo-27117 `__: Make colorizer htest and " "turtledemo work with dark themes. Move code for configuring text widget " "colors to a new function." msgstr "" -#: ../build/NEWS:22336 +#: ../build/NEWS:22371 msgid "" "`bpo-24225 `__: Rename many `idlelib/*." "py` and `idle_test/test_*.py` files. Edit files to replace old names with " @@ -36783,182 +36737,182 @@ msgid "" "contained. See the issue and IDLE section in What's New in 3.6 for more." msgstr "" -#: ../build/NEWS:22341 ../build/NEWS:25499 +#: ../build/NEWS:22376 ../build/NEWS:25534 msgid "" "`bpo-26673 `__: When tk reports font " "size as 0, change to size 10. Such fonts on Linux prevented the " "configuration dialog from opening." msgstr "" -#: ../build/NEWS:22344 ../build/NEWS:25502 +#: ../build/NEWS:22379 ../build/NEWS:25537 msgid "" "`bpo-21939 `__: Add test for IDLE's " "percolator. Original patch by Saimadhav Heblikar." msgstr "" -#: ../build/NEWS:22347 ../build/NEWS:25505 +#: ../build/NEWS:22382 ../build/NEWS:25540 msgid "" "`bpo-21676 `__: Add test for IDLE's " "replace dialog. Original patch by Saimadhav Heblikar." msgstr "" -#: ../build/NEWS:22350 ../build/NEWS:25508 +#: ../build/NEWS:22385 ../build/NEWS:25543 msgid "" "`bpo-18410 `__: Add test for IDLE's " "search dialog. Original patch by Westley Martínez." msgstr "" -#: ../build/NEWS:22353 +#: ../build/NEWS:22388 msgid "" "`bpo-21703 `__: Add test for undo " "delegator. Patch mostly by Saimadhav Heblikar ." msgstr "" -#: ../build/NEWS:22356 ../build/NEWS:25514 +#: ../build/NEWS:22391 ../build/NEWS:25549 msgid "" "`bpo-27044 `__: Add ConfigDialog." "remove_var_callbacks to stop memory leaks." msgstr "" -#: ../build/NEWS:22358 ../build/NEWS:25516 +#: ../build/NEWS:22393 ../build/NEWS:25551 msgid "" "`bpo-23977 `__: Add more asserts to " "test_delegator." msgstr "" -#: ../build/NEWS:22363 +#: ../build/NEWS:22398 msgid "" "`bpo-16484 `__: Change the default " "PYTHONDOCS URL to \"https:\", and fix the resulting links to use lowercase. " "Patch by Sean Rodman, test by Kaushik Nadikuditi." msgstr "" -#: ../build/NEWS:22367 ../build/NEWS:25537 +#: ../build/NEWS:22402 ../build/NEWS:25572 msgid "" "`bpo-24136 `__: Document the new :pep:" "`448` unpacking syntax of 3.5." msgstr "" -#: ../build/NEWS:22369 ../build/NEWS:26098 +#: ../build/NEWS:22404 ../build/NEWS:26133 msgid "" "`bpo-22558 `__: Add remaining doc links " "to source code for Python-coded modules. Patch by Yoni Lavi." msgstr "" -#: ../build/NEWS:22375 +#: ../build/NEWS:22410 msgid "" "`bpo-25285 `__: regrtest now uses " "subprocesses when the -j1 command line option is used: each test file runs " "in a fresh child process. Before, the -j1 option was ignored." msgstr "" -#: ../build/NEWS:22379 +#: ../build/NEWS:22414 msgid "" "`bpo-25285 `__: Tools/buildbot/test.bat " "script now uses -j1 by default to run each test file in fresh child process." msgstr "" -#: ../build/NEWS:22385 +#: ../build/NEWS:22420 msgid "" "`bpo-27064 `__: The py.exe launcher now " "defaults to Python 3. The Windows launcher ``py.exe`` no longer prefers an " "installed Python 2 version over Python 3 by default when used interactively." msgstr "" -#: ../build/NEWS:22392 ../build/NEWS:25588 +#: ../build/NEWS:22427 ../build/NEWS:25623 msgid "" "`bpo-27229 `__: Fix the cross-compiling " "pgen rule for in-tree builds. Patch by Xavier de Gaye." msgstr "" -#: ../build/NEWS:22395 ../build/NEWS:25625 +#: ../build/NEWS:22430 ../build/NEWS:25660 msgid "" "`bpo-26930 `__: Update OS X 10.5+ 32-bit-" "only installer to build and link with OpenSSL 1.0.2h." msgstr "" -#: ../build/NEWS:22401 ../build/NEWS:25671 +#: ../build/NEWS:22436 ../build/NEWS:25706 msgid "" "`bpo-17500 `__: Remove unused and " "outdated icons. (See also: https://github.com/python/pythondotorg/issues/945)" msgstr "" -#: ../build/NEWS:22407 +#: ../build/NEWS:22442 msgid "" "`bpo-27186 `__: Add the PyOS_FSPath() " "function (part of :pep:`519`)." msgstr "" -#: ../build/NEWS:22409 +#: ../build/NEWS:22444 msgid "" "`bpo-26282 `__: " "PyArg_ParseTupleAndKeywords() now supports positional-only parameters." msgstr "" -#: ../build/NEWS:22415 +#: ../build/NEWS:22450 msgid "" "`bpo-26282 `__: Argument Clinic now " "supports positional-only and keyword parameters in the same function." msgstr "" -#: ../build/NEWS:22420 +#: ../build/NEWS:22455 msgid "Python 3.6.0 alpha 1" msgstr "" -#: ../build/NEWS:22422 +#: ../build/NEWS:22457 msgid "*Release date: 2016-05-16*" msgstr "" -#: ../build/NEWS:22427 ../build/NEWS:24929 +#: ../build/NEWS:22462 ../build/NEWS:24964 msgid "" "`bpo-20041 `__: Fixed TypeError when " "frame.f_trace is set to None. Patch by Xavier de Gaye." msgstr "" -#: ../build/NEWS:22430 ../build/NEWS:24932 +#: ../build/NEWS:22465 ../build/NEWS:24967 msgid "" "`bpo-26168 `__: Fixed possible refleaks " "in failing Py_BuildValue() with the \"N\" format unit." msgstr "" -#: ../build/NEWS:22433 ../build/NEWS:24935 +#: ../build/NEWS:22468 ../build/NEWS:24970 msgid "" "`bpo-26991 `__: Fix possible refleak " "when creating a function with annotations." msgstr "" -#: ../build/NEWS:22435 +#: ../build/NEWS:22470 msgid "" "`bpo-27039 `__: Fixed bytearray.remove() " "for values greater than 127. Based on patch by Joe Jevnik." msgstr "" -#: ../build/NEWS:22438 ../build/NEWS:24940 +#: ../build/NEWS:22473 ../build/NEWS:24975 msgid "" "`bpo-23640 `__: int.from_bytes() no " "longer bypasses constructors for subclasses." msgstr "" -#: ../build/NEWS:22441 +#: ../build/NEWS:22476 msgid "" "`bpo-27005 `__: Optimized the float." "fromhex() class method for exact float. It is now 2 times faster." msgstr "" -#: ../build/NEWS:22444 +#: ../build/NEWS:22479 msgid "" "`bpo-18531 `__: Single var-keyword " "argument of dict subtype was passed unscathed to the C-defined function. " "Now it is converted to exact dict." msgstr "" -#: ../build/NEWS:22447 ../build/NEWS:24943 +#: ../build/NEWS:22482 ../build/NEWS:24978 msgid "" "`bpo-26811 `__: gc.get_objects() no " "longer contains a broken tuple with NULL pointer." msgstr "" -#: ../build/NEWS:22450 ../build/NEWS:24946 +#: ../build/NEWS:22485 ../build/NEWS:24981 msgid "" "`bpo-20120 `__: Use RawConfigParser for ." "pypirc parsing, removing support for interpolation unintentionally added " @@ -36966,7 +36920,7 @@ msgid "" "files, matching behavior in Python 2.7 and Setuptools 19.0." msgstr "" -#: ../build/NEWS:22455 +#: ../build/NEWS:22490 msgid "" "`bpo-26249 `__: Memory functions of the :" "c:func:`PyMem_Malloc` domain (:c:data:`PYMEM_DOMAIN_MEM`) now use the :ref:" @@ -36976,45 +36930,45 @@ msgid "" "of memory allocators in your application." msgstr "" -#: ../build/NEWS:22462 +#: ../build/NEWS:22497 msgid "" "`bpo-26802 `__: Optimize function calls " "only using unpacking like ``func(*tuple)`` (no other positional argument, no " "keyword): avoid copying the tuple. Patch written by Joe Jevnik." msgstr "" -#: ../build/NEWS:22466 ../build/NEWS:24951 +#: ../build/NEWS:22501 ../build/NEWS:24986 msgid "" "`bpo-26659 `__: Make the builtin slice " "type support cycle collection." msgstr "" -#: ../build/NEWS:22468 ../build/NEWS:24953 +#: ../build/NEWS:22503 ../build/NEWS:24988 msgid "" "`bpo-26718 `__: super.__init__ no longer " "leaks memory if called multiple times. NOTE: A direct call of super.__init__ " "is not endorsed!" msgstr "" -#: ../build/NEWS:22471 ../build/NEWS:24983 +#: ../build/NEWS:22506 ../build/NEWS:25018 msgid "" "`bpo-27138 `__: Fix the doc comment for " "FileFinder.find_spec()." msgstr "" -#: ../build/NEWS:22473 ../build/NEWS:25027 +#: ../build/NEWS:22508 ../build/NEWS:25062 msgid "" "`bpo-27147 `__: Mention :pep:`420` in " "the importlib docs." msgstr "" -#: ../build/NEWS:22475 ../build/NEWS:24956 +#: ../build/NEWS:22510 ../build/NEWS:24991 msgid "" "`bpo-25339 `__: PYTHONIOENCODING now has " "priority over locale in setting the error handler for stdin and stdout." msgstr "" -#: ../build/NEWS:22478 ../build/NEWS:24959 +#: ../build/NEWS:22513 ../build/NEWS:24994 msgid "" "`bpo-26494 `__: Fixed crash on iterating " "exhausting iterators. Affected classes are generic sequence iterators, " @@ -37022,82 +36976,82 @@ msgid "" "OrderedDict, corresponding views and os.scandir() iterator." msgstr "" -#: ../build/NEWS:22483 +#: ../build/NEWS:22518 msgid "" "`bpo-26574 `__: Optimize ``bytes." "replace(b'', b'.')`` and ``bytearray.replace(b'', b'.')``. Patch written by " "Josh Snider." msgstr "" -#: ../build/NEWS:22486 ../build/NEWS:24964 +#: ../build/NEWS:22521 ../build/NEWS:24999 msgid "" "`bpo-26581 `__: If coding cookie is " "specified multiple times on a line in Python source code file, only the " "first one is taken to account." msgstr "" -#: ../build/NEWS:22489 +#: ../build/NEWS:22524 msgid "" "`bpo-19711 `__: Add tests for reloading " "namespace packages." msgstr "" -#: ../build/NEWS:22491 +#: ../build/NEWS:22526 msgid "" "`bpo-21099 `__: Switch applicable " "importlib tests to use :pep:`451` API." msgstr "" -#: ../build/NEWS:22493 +#: ../build/NEWS:22528 msgid "" "`bpo-26563 `__: Debug hooks on Python " "memory allocators now raise a fatal error if functions of the :c:func:" "`PyMem_Malloc` family are called without holding the GIL." msgstr "" -#: ../build/NEWS:22497 +#: ../build/NEWS:22532 msgid "" "`bpo-26564 `__: On error, the debug " "hooks on Python memory allocators now use the :mod:`tracemalloc` module to " "get the traceback where a memory block was allocated." msgstr "" -#: ../build/NEWS:22501 +#: ../build/NEWS:22536 msgid "" "`bpo-26558 `__: The debug hooks on " "Python memory allocator :c:func:`PyObject_Malloc` now detect when functions " "are called without holding the GIL." msgstr "" -#: ../build/NEWS:22505 +#: ../build/NEWS:22540 msgid "" "`bpo-26516 `__: Add :envvar:" "`PYTHONMALLOC` environment variable to set the Python memory allocators and/" "or install debug hooks." msgstr "" -#: ../build/NEWS:22508 +#: ../build/NEWS:22543 msgid "" "`bpo-26516 `__: The :c:func:" "`PyMem_SetupDebugHooks` function can now also be used on Python compiled in " "release mode." msgstr "" -#: ../build/NEWS:22511 +#: ../build/NEWS:22546 msgid "" "`bpo-26516 `__: The :envvar:" "`PYTHONMALLOCSTATS` environment variable can now also be used on Python " "compiled in release mode. It now has no effect if set to an empty string." msgstr "" -#: ../build/NEWS:22515 +#: ../build/NEWS:22550 msgid "" "`bpo-26516 `__: In debug mode, debug " "hooks are now also installed on Python memory allocators when Python is " "configured without pymalloc." msgstr "" -#: ../build/NEWS:22518 ../build/NEWS:24967 +#: ../build/NEWS:22553 ../build/NEWS:25002 msgid "" "`bpo-26464 `__: Fix str.translate() when " "string is ASCII and first replacements removes character, but next " @@ -37105,7 +37059,7 @@ msgid "" "Regression introduced in Python 3.5.0." msgstr "" -#: ../build/NEWS:22522 ../build/NEWS:24971 +#: ../build/NEWS:22557 ../build/NEWS:25006 msgid "" "`bpo-22836 `__: Ensure exception reports " "from PyErr_Display() and PyErr_WriteUnraisable() are sensible even when " @@ -37113,20 +37067,20 @@ msgid "" "produced by sys.__excepthook__() and when __del__() raises an exception." msgstr "" -#: ../build/NEWS:22527 ../build/NEWS:24976 +#: ../build/NEWS:22562 ../build/NEWS:25011 msgid "" "`bpo-26302 `__: Correct behavior to " "reject comma as a legal character for cookie names." msgstr "" -#: ../build/NEWS:22530 +#: ../build/NEWS:22565 msgid "" "`bpo-26136 `__: Upgrade the warning when " "a generator raises StopIteration from PendingDeprecationWarning to " "DeprecationWarning. Patch by Anish Shah." msgstr "" -#: ../build/NEWS:22533 +#: ../build/NEWS:22568 msgid "" "`bpo-26204 `__: The compiler now ignores " "all constant statements: bytes, str, int, float, complex, name constants " @@ -37134,35 +37088,35 @@ msgid "" "example, ``1.0`` is now ignored in ``def f(): 1.0``." msgstr "" -#: ../build/NEWS:22538 ../build/NEWS:24979 +#: ../build/NEWS:22573 ../build/NEWS:25014 msgid "" "`bpo-4806 `__: Avoid masking the original " "TypeError exception when using star (``*``) unpacking in function calls. " "Based on patch by Hagen Fürstenau and Daniel Urban." msgstr "" -#: ../build/NEWS:22542 +#: ../build/NEWS:22577 msgid "" "`bpo-26146 `__: Add a new kind of AST " "node: ``ast.Constant``. It can be used by external AST optimizers, but the " "compiler does not emit directly such node." msgstr "" -#: ../build/NEWS:22546 +#: ../build/NEWS:22581 msgid "" "`bpo-23601 `__: Sped-up allocation of " "dict key objects by using Python's small object allocator. (Contributed by " "Julian Taylor.)" msgstr "" -#: ../build/NEWS:22549 +#: ../build/NEWS:22584 msgid "" "`bpo-18018 `__: Import raises " "ImportError instead of SystemError if a relative import is attempted without " "a known parent package." msgstr "" -#: ../build/NEWS:22552 +#: ../build/NEWS:22587 msgid "" "`bpo-25843 `__: When compiling code, " "don't merge constants if they are equal but have a different types. For " @@ -37171,14 +37125,14 @@ msgid "" "returns ``1.0`` (``float``), even if ``1`` and ``1.0`` are equal." msgstr "" -#: ../build/NEWS:22558 +#: ../build/NEWS:22593 msgid "" "`bpo-26107 `__: The format of the " "``co_lnotab`` attribute of code objects changes to support negative line " "number delta." msgstr "" -#: ../build/NEWS:22561 ../build/NEWS:24985 +#: ../build/NEWS:22596 ../build/NEWS:25020 msgid "" "`bpo-26154 `__: Add a new private " "_PyThreadState_UncheckedGet() function to get the current Python thread " @@ -37188,33 +37142,33 @@ msgid "" "implementation of atomic C types, to avoid compiler issues." msgstr "" -#: ../build/NEWS:22568 +#: ../build/NEWS:22603 msgid "" "`bpo-25791 `__: If __package__ != " "__spec__.parent or if neither __package__ or __spec__ are defined then " "ImportWarning is raised." msgstr "" -#: ../build/NEWS:22571 ../build/NEWS:25002 +#: ../build/NEWS:22606 ../build/NEWS:25037 msgid "" "`bpo-22995 `__: [UPDATE] Comment out the " "one of the pickleability tests in _PyObject_GetState() due to regressions " "observed in Cython-based projects." msgstr "" -#: ../build/NEWS:22574 ../build/NEWS:25005 +#: ../build/NEWS:22609 ../build/NEWS:25040 msgid "" "`bpo-25961 `__: Disallowed null " "characters in the type name." msgstr "" -#: ../build/NEWS:22576 ../build/NEWS:25007 +#: ../build/NEWS:22611 ../build/NEWS:25042 msgid "" "`bpo-25973 `__: Fix segfault when an " "invalid nonlocal statement binds a name starting with two underscores." msgstr "" -#: ../build/NEWS:22579 ../build/NEWS:25010 +#: ../build/NEWS:22614 ../build/NEWS:25045 msgid "" "`bpo-22995 `__: Instances of extension " "types with a state that aren't subclasses of list or dict and haven't " @@ -37223,51 +37177,51 @@ msgid "" "pickled. Including memoryview." msgstr "" -#: ../build/NEWS:22584 ../build/NEWS:25015 +#: ../build/NEWS:22619 ../build/NEWS:25050 msgid "" "`bpo-20440 `__: Massive replacing unsafe " "attribute setting code with special macro Py_SETREF." msgstr "" -#: ../build/NEWS:22587 ../build/NEWS:25018 +#: ../build/NEWS:22622 ../build/NEWS:25053 msgid "" "`bpo-25766 `__: Special method " "__bytes__() now works in str subclasses." msgstr "" -#: ../build/NEWS:22589 ../build/NEWS:25020 +#: ../build/NEWS:22624 ../build/NEWS:25055 msgid "" "`bpo-25421 `__: __sizeof__ methods of " "builtin types now use dynamic basic size. This allows sys.getsize() to work " "correctly with their subclasses with __slots__ defined." msgstr "" -#: ../build/NEWS:22593 ../build/NEWS:25024 ../build/NEWS:25683 +#: ../build/NEWS:22628 ../build/NEWS:25059 ../build/NEWS:25718 msgid "" "`bpo-25709 `__: Fixed problem with in-" "place string concatenation and utf-8 cache." msgstr "" -#: ../build/NEWS:22596 +#: ../build/NEWS:22631 msgid "" "`bpo-5319 `__: New Py_FinalizeEx() API " "allowing Python to set an exit status of 120 on failure to flush buffered " "streams." msgstr "" -#: ../build/NEWS:22599 +#: ../build/NEWS:22634 msgid "" "`bpo-25485 `__: telnetlib.Telnet is now " "a context manager." msgstr "" -#: ../build/NEWS:22601 ../build/NEWS:25029 +#: ../build/NEWS:22636 ../build/NEWS:25064 msgid "" "`bpo-24097 `__: Fixed crash in object." "__reduce__() if slot name is freed inside __getattr__." msgstr "" -#: ../build/NEWS:22604 ../build/NEWS:25032 +#: ../build/NEWS:22639 ../build/NEWS:25067 msgid "" "`bpo-24731 `__: Fixed crash on " "converting objects with special methods __bytes__, __trunc__, and __float__ " @@ -37275,13 +37229,13 @@ msgid "" "bytes, int, and float correspondingly." msgstr "" -#: ../build/NEWS:22609 ../build/NEWS:25701 +#: ../build/NEWS:22644 ../build/NEWS:25736 msgid "" "`bpo-25630 `__: Fix a possible segfault " "during argument parsing in functions that accept filesystem paths." msgstr "" -#: ../build/NEWS:22612 ../build/NEWS:25704 +#: ../build/NEWS:22647 ../build/NEWS:25739 msgid "" "`bpo-23564 `__: Fixed a partially broken " "sanity check in the _posixsubprocess internals regarding how fds_to_pass " @@ -37289,27 +37243,27 @@ msgid "" "already avoided it." msgstr "" -#: ../build/NEWS:22616 ../build/NEWS:25708 +#: ../build/NEWS:22651 ../build/NEWS:25743 msgid "" "`bpo-25388 `__: Fixed tokenizer crash " "when processing undecodable source code with a null byte." msgstr "" -#: ../build/NEWS:22619 ../build/NEWS:25711 +#: ../build/NEWS:22654 ../build/NEWS:25746 msgid "" "`bpo-25462 `__: The hash of the key now " "is calculated only once in most operations in C implementation of " "OrderedDict." msgstr "" -#: ../build/NEWS:22622 ../build/NEWS:25714 +#: ../build/NEWS:22657 ../build/NEWS:25749 msgid "" "`bpo-22995 `__: Default implementation " "of __reduce__ and __reduce_ex__ now rejects builtin types with not defined " "__new__." msgstr "" -#: ../build/NEWS:22625 ../build/NEWS:25720 +#: ../build/NEWS:22660 ../build/NEWS:25755 msgid "" "`bpo-24802 `__: Avoid buffer overreads " "when int(), float(), compile(), exec() and eval() are passed bytes-like " @@ -37317,46 +37271,46 @@ msgid "" "the functions assumed they were." msgstr "" -#: ../build/NEWS:22630 ../build/NEWS:25717 +#: ../build/NEWS:22665 ../build/NEWS:25752 msgid "" "`bpo-25555 `__: Fix parser and AST: fill " "lineno and col_offset of \"arg\" node when compiling AST from Python objects." msgstr "" -#: ../build/NEWS:22633 ../build/NEWS:25725 +#: ../build/NEWS:22668 ../build/NEWS:25760 msgid "" "`bpo-24726 `__: Fixed a crash and " "leaking NULL in repr() of OrderedDict that was mutated by direct calls of " "dict methods." msgstr "" -#: ../build/NEWS:22636 ../build/NEWS:25728 +#: ../build/NEWS:22671 ../build/NEWS:25763 msgid "" "`bpo-25449 `__: Iterating OrderedDict " "with keys with unstable hash now raises KeyError in C implementations as " "well as in Python implementation." msgstr "" -#: ../build/NEWS:22639 ../build/NEWS:25731 +#: ../build/NEWS:22674 ../build/NEWS:25766 msgid "" "`bpo-25395 `__: Fixed crash when highly " "nested OrderedDict structures were garbage collected." msgstr "" -#: ../build/NEWS:22642 +#: ../build/NEWS:22677 msgid "" "`bpo-25401 `__: Optimize bytes.fromhex() " "and bytearray.fromhex(): they are now between 2x and 3.5x faster." msgstr "" -#: ../build/NEWS:22645 +#: ../build/NEWS:22680 msgid "" "`bpo-25399 `__: Optimize bytearray % " "args using the new private _PyBytesWriter API. Formatting is now between 2.5 " "and 5 times faster." msgstr "" -#: ../build/NEWS:22648 ../build/NEWS:25734 +#: ../build/NEWS:22683 ../build/NEWS:25769 msgid "" "`bpo-25274 `__: sys.setrecursionlimit() " "now raises a RecursionError if the new recursion limit is too low depending " @@ -37365,40 +37319,40 @@ msgid "" "of the thread state is reset." msgstr "" -#: ../build/NEWS:22653 ../build/NEWS:25739 +#: ../build/NEWS:22688 ../build/NEWS:25774 msgid "" "`bpo-24402 `__: Fix input() to prompt to " "the redirected stdout when sys.stdout.fileno() fails." msgstr "" -#: ../build/NEWS:22656 +#: ../build/NEWS:22691 msgid "" "`bpo-25349 `__: Optimize bytes % args " "using the new private _PyBytesWriter API. Formatting is now up to 2 times " "faster." msgstr "" -#: ../build/NEWS:22659 ../build/NEWS:25742 +#: ../build/NEWS:22694 ../build/NEWS:25777 msgid "" "`bpo-24806 `__: Prevent builtin types " "that are not allowed to be subclassed from being subclassed through multiple " "inheritance." msgstr "" -#: ../build/NEWS:22662 +#: ../build/NEWS:22697 msgid "" "`bpo-25301 `__: The UTF-8 decoder is now " "up to 15 times as fast for error handlers: ``ignore``, ``replace`` and " "``surrogateescape``." msgstr "" -#: ../build/NEWS:22665 ../build/NEWS:25745 +#: ../build/NEWS:22700 ../build/NEWS:25780 msgid "" "`bpo-24848 `__: Fixed a number of bugs " "in UTF-7 decoding of misformed data." msgstr "" -#: ../build/NEWS:22667 +#: ../build/NEWS:22702 msgid "" "`bpo-25267 `__: The UTF-8 encoder is now " "up to 75 times as fast for error handlers: ``ignore``, ``replace``, " @@ -37406,20 +37360,20 @@ msgid "" "Storchaka." msgstr "" -#: ../build/NEWS:22671 ../build/NEWS:25747 +#: ../build/NEWS:22706 ../build/NEWS:25782 msgid "" "`bpo-25280 `__: Import trace messages " "emitted in verbose (-v) mode are no longer formatted twice." msgstr "" -#: ../build/NEWS:22674 +#: ../build/NEWS:22709 msgid "" "`bpo-25227 `__: Optimize ASCII and " "latin1 encoders with the ``surrogateescape`` error handler: the encoders are " "now up to 3 times as fast. Initial patch written by Serhiy Storchaka." msgstr "" -#: ../build/NEWS:22678 ../build/NEWS:25750 +#: ../build/NEWS:22713 ../build/NEWS:25785 msgid "" "`bpo-25003 `__: On Solaris 11.3 or " "newer, os.urandom() now uses the getrandom() function instead of the " @@ -37428,7 +37382,7 @@ msgid "" "entropy." msgstr "" -#: ../build/NEWS:22683 +#: ../build/NEWS:22718 msgid "" "`bpo-9232 `__: Modify Python's grammar to " "allow trailing commas in the argument list of a function declaration. For " @@ -37436,7 +37390,7 @@ msgid "" "Dickinson." msgstr "" -#: ../build/NEWS:22687 +#: ../build/NEWS:22722 msgid "" "`bpo-24965 `__: Implement :pep:`498` " "\"Literal String Interpolation\". This allows you to embed expressions " @@ -37444,30 +37398,30 @@ msgid "" "x=3, then f'value={x}' == 'value=3'. Patch by Eric V. Smith." msgstr "" -#: ../build/NEWS:22692 ../build/NEWS:25037 +#: ../build/NEWS:22727 ../build/NEWS:25072 msgid "" "`bpo-26478 `__: Fix semantic bugs when " "using binary operators with dictionary views and tuples." msgstr "" -#: ../build/NEWS:22695 ../build/NEWS:25040 +#: ../build/NEWS:22730 ../build/NEWS:25075 msgid "" "`bpo-26171 `__: Fix possible integer " "overflow and heap corruption in zipimporter.get_data()." msgstr "" -#: ../build/NEWS:22698 ../build/NEWS:25043 +#: ../build/NEWS:22733 ../build/NEWS:25078 msgid "" "`bpo-25660 `__: Fix TAB key behaviour in " "REPL with readline." msgstr "" -#: ../build/NEWS:22700 +#: ../build/NEWS:22735 msgid "" "`bpo-26288 `__: Optimize PyLong_AsDouble." msgstr "" -#: ../build/NEWS:22702 +#: ../build/NEWS:22737 msgid "" "`bpo-26289 `__: Optimize floor and " "modulo division for single-digit longs. Microbenchmarks show 2-2.5x " @@ -37475,39 +37429,39 @@ msgid "" "`bpo-26315 `__)" msgstr "" -#: ../build/NEWS:22706 ../build/NEWS:25045 +#: ../build/NEWS:22741 ../build/NEWS:25080 msgid "" "`bpo-25887 `__: Raise a RuntimeError " "when a coroutine object is awaited more than once." msgstr "" -#: ../build/NEWS:22712 ../build/NEWS:25119 +#: ../build/NEWS:22747 ../build/NEWS:25154 msgid "" "`bpo-27057 `__: Fix os.set_inheritable() " "on Android, ioctl() is blocked by SELinux and fails with EACCESS. The " "function now falls back to fcntl(). Patch written by Michał Bednarski." msgstr "" -#: ../build/NEWS:22716 ../build/NEWS:25123 +#: ../build/NEWS:22751 ../build/NEWS:25158 msgid "" "`bpo-27014 `__: Fix infinite recursion " "using typing.py. Thanks to Kalle Tuure!" msgstr "" -#: ../build/NEWS:22718 +#: ../build/NEWS:22753 msgid "" "`bpo-27031 `__: Removed dummy methods in " "Tkinter widget classes: tk_menuBar() and tk_bindForTraversal()." msgstr "" -#: ../build/NEWS:22721 ../build/NEWS:25125 +#: ../build/NEWS:22756 ../build/NEWS:25160 msgid "" "`bpo-14132 `__: Fix urllib.request " "redirect handling when the target only has a query string. Original fix by " "Ján Janech." msgstr "" -#: ../build/NEWS:22724 ../build/NEWS:25128 +#: ../build/NEWS:22759 ../build/NEWS:25163 msgid "" "`bpo-17214 `__: The \"urllib.request\" " "module now percent-encodes non-ASCII bytes found in redirect target URLs. " @@ -37516,108 +37470,108 @@ msgid "" "UnicodeEncodeError is raised. Based on patch by Christian Heimes." msgstr "" -#: ../build/NEWS:22730 +#: ../build/NEWS:22765 msgid "" "`bpo-27033 `__: The default value of the " "decode_data parameter for smtpd.SMTPChannel and smtpd.SMTPServer " "constructors is changed to False." msgstr "" -#: ../build/NEWS:22733 +#: ../build/NEWS:22768 msgid "" "`bpo-27034 `__: Removed deprecated class " "asynchat.fifo." msgstr "" -#: ../build/NEWS:22735 +#: ../build/NEWS:22770 msgid "" "`bpo-26870 `__: Added readline." "set_auto_history(), which can stop entries being automatically added to the " "history list. Based on patch by Tyler Crompton." msgstr "" -#: ../build/NEWS:22739 +#: ../build/NEWS:22774 msgid "" "`bpo-26039 `__: zipfile.ZipFile.open() " "can now be used to write data into a ZIP file, as well as for extracting " "data. Patch by Thomas Kluyver." msgstr "" -#: ../build/NEWS:22742 ../build/NEWS:25134 +#: ../build/NEWS:22777 ../build/NEWS:25169 msgid "" "`bpo-26892 `__: Honor debuglevel flag in " "urllib.request.HTTPHandler. Patch contributed by Chi Hsuan Yen." msgstr "" -#: ../build/NEWS:22745 ../build/NEWS:25137 +#: ../build/NEWS:22780 ../build/NEWS:25172 msgid "" "`bpo-22274 `__: In the subprocess " "module, allow stderr to be redirected to stdout even when stdout is not " "redirected. Patch by Akira Li." msgstr "" -#: ../build/NEWS:22748 ../build/NEWS:25140 +#: ../build/NEWS:22783 ../build/NEWS:25175 msgid "" "`bpo-26807 `__: mock_open 'files' no " "longer error on readline at end of file. Patch from Yolanda Robla." msgstr "" -#: ../build/NEWS:22751 ../build/NEWS:25143 +#: ../build/NEWS:22786 ../build/NEWS:25178 msgid "" "`bpo-25745 `__: Fixed leaking a userptr " "in curses panel destructor." msgstr "" -#: ../build/NEWS:22753 ../build/NEWS:25145 +#: ../build/NEWS:22788 ../build/NEWS:25180 msgid "" "`bpo-26977 `__: Removed unnecessary, and " "ignored, call to sum of squares helper in statistics.pvariance." msgstr "" -#: ../build/NEWS:22756 +#: ../build/NEWS:22791 msgid "" "`bpo-26002 `__: Use bisect in statistics." "median instead of a linear search. Patch by Upendra Kuma." msgstr "" -#: ../build/NEWS:22759 +#: ../build/NEWS:22794 msgid "" "`bpo-25974 `__: Make use of new Decimal." "as_integer_ratio() method in statistics module. Patch by Stefan Krah." msgstr "" -#: ../build/NEWS:22762 +#: ../build/NEWS:22797 msgid "" "`bpo-26996 `__: Add secrets module as " "described in :pep:`506`." msgstr "" -#: ../build/NEWS:22764 ../build/NEWS:25148 +#: ../build/NEWS:22799 ../build/NEWS:25183 msgid "" "`bpo-26881 `__: The modulefinder module " "now supports extended opcode arguments." msgstr "" -#: ../build/NEWS:22766 ../build/NEWS:25150 +#: ../build/NEWS:22801 ../build/NEWS:25185 msgid "" "`bpo-23815 `__: Fixed crashes related to " "directly created instances of types in _tkinter and curses.panel modules." msgstr "" -#: ../build/NEWS:22769 ../build/NEWS:25153 +#: ../build/NEWS:22804 ../build/NEWS:25188 msgid "" "`bpo-17765 `__: weakref.ref() no longer " "silently ignores keyword arguments. Patch by Georg Brandl." msgstr "" -#: ../build/NEWS:22772 ../build/NEWS:25156 +#: ../build/NEWS:22807 ../build/NEWS:25191 msgid "" "`bpo-26873 `__: xmlrpc now raises " "ResponseError on unsupported type tags instead of silently return incorrect " "result." msgstr "" -#: ../build/NEWS:22775 +#: ../build/NEWS:22810 msgid "" "`bpo-26915 `__: The __contains__ methods " "in the collections ABCs now check for identity before checking equality. " @@ -37625,13 +37579,13 @@ msgid "" "handling of NaNs, and makes it easier to reason about container invariants." msgstr "" -#: ../build/NEWS:22780 ../build/NEWS:25159 +#: ../build/NEWS:22815 ../build/NEWS:25194 msgid "" "`bpo-26711 `__: Fixed the comparison of " "plistlib.Data with other types." msgstr "" -#: ../build/NEWS:22782 ../build/NEWS:25161 +#: ../build/NEWS:22817 ../build/NEWS:25196 msgid "" "`bpo-24114 `__: Fix an uninitialized " "variable in `ctypes.util`. The bug only occurs on SunOS when the ctypes " @@ -37639,7 +37593,7 @@ msgid "" "Tested on SunOS by Kees Bos." msgstr "" -#: ../build/NEWS:22786 ../build/NEWS:25165 +#: ../build/NEWS:22821 ../build/NEWS:25200 msgid "" "`bpo-26864 `__: In urllib.request, " "change the proxy bypass host checking against no_proxy to be case-" @@ -37647,161 +37601,161 @@ msgid "" "bypassed hostname as a suffix. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:22791 +#: ../build/NEWS:22826 msgid "" "`bpo-24902 `__: Print server URL on http." "server startup. Initial patch by Felix Kaiser." msgstr "" -#: ../build/NEWS:22794 +#: ../build/NEWS:22829 msgid "" "`bpo-25788 `__: fileinput.hook_encoded() " "now supports an \"errors\" argument for passing to open. Original patch by " "Joseph Hackman." msgstr "" -#: ../build/NEWS:22797 ../build/NEWS:25170 +#: ../build/NEWS:22832 ../build/NEWS:25205 msgid "" "`bpo-26634 `__: recursive_repr() now " "sets __qualname__ of wrapper. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:22800 ../build/NEWS:25173 +#: ../build/NEWS:22835 ../build/NEWS:25208 msgid "" "`bpo-26804 `__: urllib.request will " "prefer lower_case proxy environment variables over UPPER_CASE or Mixed_Case " "ones. Patch contributed by Hans-Peter Jansen." msgstr "" -#: ../build/NEWS:22804 ../build/NEWS:25177 +#: ../build/NEWS:22839 ../build/NEWS:25212 msgid "" "`bpo-26837 `__: assertSequenceEqual() " "now correctly outputs non-stringified differing items (like bytes in the -b " "mode). This affects assertListEqual() and assertTupleEqual()." msgstr "" -#: ../build/NEWS:22808 ../build/NEWS:25181 +#: ../build/NEWS:22843 ../build/NEWS:25216 msgid "" "`bpo-26041 `__: Remove \"will be removed " "in Python 3.7\" from deprecation messages of platform.dist() and platform." "linux_distribution(). Patch by Kumaripaba Miyurusara Athukorala." msgstr "" -#: ../build/NEWS:22812 ../build/NEWS:25185 +#: ../build/NEWS:22847 ../build/NEWS:25220 msgid "" "`bpo-26822 `__: itemgetter, attrgetter " "and methodcaller objects no longer silently ignore keyword arguments." msgstr "" -#: ../build/NEWS:22815 ../build/NEWS:25188 +#: ../build/NEWS:22850 ../build/NEWS:25223 msgid "" "`bpo-26733 `__: Disassembling a class " "now disassembles class and static methods. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:22818 ../build/NEWS:25191 +#: ../build/NEWS:22853 ../build/NEWS:25226 msgid "" "`bpo-26801 `__: Fix error handling in :" "func:`shutil.get_terminal_size`, catch :exc:`AttributeError` instead of :exc:" "`NameError`. Patch written by Emanuel Barry." msgstr "" -#: ../build/NEWS:22822 ../build/NEWS:25195 +#: ../build/NEWS:22857 ../build/NEWS:25230 msgid "" "`bpo-24838 `__: tarfile's ustar and gnu " "formats now correctly calculate name and link field limits for multibyte " "character encodings like utf-8." msgstr "" -#: ../build/NEWS:22828 ../build/NEWS:25201 +#: ../build/NEWS:22863 ../build/NEWS:25236 msgid "" "`bpo-26657 `__: Fix directory traversal " "vulnerability with http.server on Windows. This fixes a regression that was " "introduced in 3.3.4rc1 and 3.4.0rc1. Based on patch by Philipp Hagemeister." msgstr "" -#: ../build/NEWS:22835 ../build/NEWS:25208 +#: ../build/NEWS:22870 ../build/NEWS:25243 msgid "" "`bpo-26717 `__: Stop encoding Latin-1-" "ized WSGI paths with UTF-8. Patch by Anthony Sottile." msgstr "" -#: ../build/NEWS:22838 +#: ../build/NEWS:22873 msgid "" "`bpo-26782 `__: Add STARTUPINFO to " "subprocess.__all__ on Windows." msgstr "" -#: ../build/NEWS:22840 +#: ../build/NEWS:22875 msgid "" "`bpo-26404 `__: Add context manager to " "socketserver. Patch by Aviv Palivoda." msgstr "" -#: ../build/NEWS:22842 ../build/NEWS:25211 +#: ../build/NEWS:22877 ../build/NEWS:25246 msgid "" "`bpo-26735 `__: Fix :func:`os.urandom` " "on Solaris 11.3 and newer when reading more than 1,024 bytes: call " "``getrandom()`` multiple times with a limit of 1024 bytes per call." msgstr "" -#: ../build/NEWS:22846 +#: ../build/NEWS:22881 msgid "" "`bpo-26585 `__: Eliminate http.server." "_quote_html() and use html.escape(quote=False). Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:22849 +#: ../build/NEWS:22884 msgid "" "`bpo-26685 `__: Raise OSError if closing " "a socket fails." msgstr "" -#: ../build/NEWS:22851 ../build/NEWS:25215 +#: ../build/NEWS:22886 ../build/NEWS:25250 msgid "" "`bpo-16329 `__: Add .webm to mimetypes." "types_map. Patch by Giampaolo Rodola'." msgstr "" -#: ../build/NEWS:22853 ../build/NEWS:25217 +#: ../build/NEWS:22888 ../build/NEWS:25252 msgid "" "`bpo-13952 `__: Add .csv to mimetypes." "types_map. Patch by Geoff Wilson." msgstr "" -#: ../build/NEWS:22855 +#: ../build/NEWS:22890 msgid "" "`bpo-26587 `__: the site module now " "allows .pth files to specify files to be added to sys.path (e.g. zip files)." msgstr "" -#: ../build/NEWS:22858 +#: ../build/NEWS:22893 msgid "" "`bpo-25609 `__: Introduce contextlib." "AbstractContextManager and typing.ContextManager." msgstr "" -#: ../build/NEWS:22861 ../build/NEWS:25219 +#: ../build/NEWS:22896 ../build/NEWS:25254 msgid "" "`bpo-26709 `__: Fixed Y2038 problem in " "loading binary PLists." msgstr "" -#: ../build/NEWS:22863 ../build/NEWS:25221 +#: ../build/NEWS:22898 ../build/NEWS:25256 msgid "" "`bpo-23735 `__: Handle terminal resizing " "with Readline 6.3+ by installing our own SIGWINCH handler. Patch by Eric " "Price." msgstr "" -#: ../build/NEWS:22866 +#: ../build/NEWS:22901 msgid "" "`bpo-25951 `__: Change SSLSocket." "sendall() to return None, as explicitly documented for plain socket " "objects. Patch by Aviv Palivoda." msgstr "" -#: ../build/NEWS:22869 ../build/NEWS:25224 +#: ../build/NEWS:22904 ../build/NEWS:25259 msgid "" "`bpo-26586 `__: In http.server, respond " "with \"413 Request header fields too large\" if there are too many header " @@ -37809,33 +37763,33 @@ msgid "" "exception. Patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:22873 +#: ../build/NEWS:22908 msgid "" "`bpo-26676 `__: Added missing " "XMLPullParser to ElementTree.__all__." msgstr "" -#: ../build/NEWS:22875 ../build/NEWS:25228 +#: ../build/NEWS:22910 ../build/NEWS:25263 msgid "" "`bpo-22854 `__: Change BufferedReader." "writable() and BufferedWriter.readable() to always return False." msgstr "" -#: ../build/NEWS:22878 +#: ../build/NEWS:22913 msgid "" "`bpo-26492 `__: Exhausted iterator of " "array.array now conforms with the behavior of iterators of other mutable " "sequences: it lefts exhausted even if iterated array is extended." msgstr "" -#: ../build/NEWS:22882 +#: ../build/NEWS:22917 msgid "" "`bpo-26641 `__: doctest.DocFileTest and " "doctest.testfile() now support packages (module splitted into multiple " "directories) for the package parameter." msgstr "" -#: ../build/NEWS:22885 ../build/NEWS:25231 +#: ../build/NEWS:22920 ../build/NEWS:25266 msgid "" "`bpo-25195 `__: Fix a regression in mock." "MagicMock. _Call is a subclass of tuple (changeset 3603bae63c13 only works " @@ -37843,26 +37797,26 @@ msgid "" "Plummer." msgstr "" -#: ../build/NEWS:22889 ../build/NEWS:25235 +#: ../build/NEWS:22924 ../build/NEWS:25270 msgid "" "`bpo-26644 `__: Raise ValueError rather " "than SystemError when a negative length is passed to SSLSocket.recv() or " "read()." msgstr "" -#: ../build/NEWS:22892 ../build/NEWS:25238 +#: ../build/NEWS:22927 ../build/NEWS:25273 msgid "" "`bpo-23804 `__: Fix SSL recv(0) and " "read(0) methods to return zero bytes instead of up to 1024." msgstr "" -#: ../build/NEWS:22895 ../build/NEWS:25241 +#: ../build/NEWS:22930 ../build/NEWS:25276 msgid "" "`bpo-26616 `__: Fixed a bug in datetime." "astimezone() method." msgstr "" -#: ../build/NEWS:22897 +#: ../build/NEWS:22932 msgid "" "`bpo-26637 `__: The :mod:`importlib` " "module now emits an :exc:`ImportError` rather than a :exc:`TypeError` if :" @@ -37870,7 +37824,7 @@ msgid "" "path` is already cleared (set to ``None``)." msgstr "" -#: ../build/NEWS:22902 +#: ../build/NEWS:22937 msgid "" "`bpo-21925 `__: :func:`warnings." "formatwarning` now catches exceptions when calling :func:`linecache.getline` " @@ -37878,7 +37832,7 @@ msgid "" "`ResourceWarning` emitted late during the Python shutdown process." msgstr "" -#: ../build/NEWS:22907 +#: ../build/NEWS:22942 msgid "" "`bpo-23848 `__: On Windows, faulthandler." "enable() now also installs an exception handler to dump the traceback of all " @@ -37886,7 +37840,7 @@ msgid "" "SIGFPE, SIGABRT)." msgstr "" -#: ../build/NEWS:22911 +#: ../build/NEWS:22946 msgid "" "`bpo-26530 `__: Add C functions :c:func:" "`_PyTraceMalloc_Track` and :c:func:`_PyTraceMalloc_Untrack` to track memory " @@ -37894,38 +37848,38 @@ msgid "" "`_PyTraceMalloc_GetTraceback` to get the traceback of an object." msgstr "" -#: ../build/NEWS:22916 +#: ../build/NEWS:22951 msgid "" "`bpo-26588 `__: The _tracemalloc now " "supports tracing memory allocations of multiple address spaces (domains)." msgstr "" -#: ../build/NEWS:22919 ../build/NEWS:25247 +#: ../build/NEWS:22954 ../build/NEWS:25282 msgid "" "`bpo-24266 `__: Ctrl+C during Readline " "history search now cancels the search mode when compiled with Readline 7." msgstr "" -#: ../build/NEWS:22922 +#: ../build/NEWS:22957 msgid "" "`bpo-26590 `__: Implement a safe " "finalizer for the _socket.socket type. It now releases the GIL to close the " "socket." msgstr "" -#: ../build/NEWS:22925 +#: ../build/NEWS:22960 msgid "" "`bpo-18787 `__: spwd.getspnam() now " "raises a PermissionError if the user doesn't have privileges." msgstr "" -#: ../build/NEWS:22928 ../build/NEWS:25250 +#: ../build/NEWS:22963 ../build/NEWS:25285 msgid "" "`bpo-26560 `__: Avoid potential " "ValueError in BaseHandler.start_response. Initial patch by Peter Inglesby." msgstr "" -#: ../build/NEWS:22931 +#: ../build/NEWS:22966 msgid "" "`bpo-26567 `__: Add a new function :c:" "func:`PyErr_ResourceWarning` function to pass the destroyed object. Add a " @@ -37934,136 +37888,136 @@ msgid "" "object was allocated." msgstr "" -#: ../build/NEWS:22939 ../build/NEWS:25256 +#: ../build/NEWS:22974 ../build/NEWS:25291 msgid "" "`bpo-26313 `__: ssl.py " "_load_windows_store_certs fails if windows cert store is empty. Patch by " "Baji." msgstr "" -#: ../build/NEWS:22945 ../build/NEWS:25262 +#: ../build/NEWS:22980 ../build/NEWS:25297 msgid "" "`bpo-26569 `__: Fix :func:`pyclbr." "readmodule` and :func:`pyclbr.readmodule_ex` to support importing packages." msgstr "" -#: ../build/NEWS:22948 ../build/NEWS:25265 +#: ../build/NEWS:22983 ../build/NEWS:25300 msgid "" "`bpo-26499 `__: Account for remaining " "Content-Length in HTTPResponse.readline() and read1(). Based on patch by " "Silent Ghost. Also document that HTTPResponse now supports these methods." msgstr "" -#: ../build/NEWS:22952 ../build/NEWS:25269 +#: ../build/NEWS:22987 ../build/NEWS:25304 msgid "" "`bpo-25320 `__: Handle sockets in " "directories unittest discovery is scanning. Patch from Victor van den Elzen." msgstr "" -#: ../build/NEWS:22955 ../build/NEWS:25272 +#: ../build/NEWS:22990 ../build/NEWS:25307 msgid "" "`bpo-16181 `__: cookiejar.http2time() " "now returns None if year is higher than datetime.MAXYEAR." msgstr "" -#: ../build/NEWS:22958 ../build/NEWS:25275 +#: ../build/NEWS:22993 ../build/NEWS:25310 msgid "" "`bpo-26513 `__: Fixes platform module " "detection of Windows Server" msgstr "" -#: ../build/NEWS:22960 ../build/NEWS:25277 +#: ../build/NEWS:22995 ../build/NEWS:25312 msgid "" "`bpo-23718 `__: Fixed parsing time in " "week 0 before Jan 1. Original patch by Tamás Bence Gedai." msgstr "" -#: ../build/NEWS:22963 +#: ../build/NEWS:22998 msgid "" "`bpo-26323 `__: Add Mock.assert_called() " "and Mock.assert_called_once() methods to unittest.mock. Patch written by " "Amit Saha." msgstr "" -#: ../build/NEWS:22966 ../build/NEWS:25280 +#: ../build/NEWS:23001 ../build/NEWS:25315 msgid "" "`bpo-20589 `__: Invoking Path.owner() " "and Path.group() on Windows now raise NotImplementedError instead of " "ImportError." msgstr "" -#: ../build/NEWS:22969 ../build/NEWS:25283 +#: ../build/NEWS:23004 ../build/NEWS:25318 msgid "" "`bpo-26177 `__: Fixed the keys() method " "for Canvas and Scrollbar widgets." msgstr "" -#: ../build/NEWS:22971 +#: ../build/NEWS:23006 msgid "" "`bpo-15068 `__: Got rid of excessive " "buffering in fileinput. The bufsize parameter is now deprecated and ignored." msgstr "" -#: ../build/NEWS:22974 +#: ../build/NEWS:23009 msgid "" "`bpo-19475 `__: Added an optional " "argument timespec to the datetime isoformat() method to choose the precision " "of the time component." msgstr "" -#: ../build/NEWS:22977 ../build/NEWS:25288 +#: ../build/NEWS:23012 ../build/NEWS:25323 msgid "" "`bpo-2202 `__: Fix UnboundLocalError in " "AbstractDigestAuthHandler.get_algorithm_impls. Initial patch by Mathieu " "Dupuy." msgstr "" -#: ../build/NEWS:22981 +#: ../build/NEWS:23016 msgid "" "`bpo-26167 `__: Minimized overhead in " "copy.copy() and copy.deepcopy(). Optimized copying and deepcopying " "bytearrays, NotImplemented, slices, short lists, tuples, dicts, sets." msgstr "" -#: ../build/NEWS:22985 ../build/NEWS:25292 +#: ../build/NEWS:23020 ../build/NEWS:25327 msgid "" "`bpo-25718 `__: Fixed pickling and " "copying the accumulate() iterator with total is None." msgstr "" -#: ../build/NEWS:22988 ../build/NEWS:25295 +#: ../build/NEWS:23023 ../build/NEWS:25330 msgid "" "`bpo-26475 `__: Fixed debugging output " "for regular expressions with the (?x) flag." msgstr "" -#: ../build/NEWS:22991 +#: ../build/NEWS:23026 msgid "" "`bpo-26482 `__: Allowed pickling " "recursive dequeues." msgstr "" -#: ../build/NEWS:22993 +#: ../build/NEWS:23028 msgid "" "`bpo-26335 `__: Make mmap.write() return " "the number of bytes written like other write methods. Patch by Jakub " "Stasiak." msgstr "" -#: ../build/NEWS:22996 ../build/NEWS:25298 +#: ../build/NEWS:23031 ../build/NEWS:25333 msgid "" "`bpo-26457 `__: Fixed the subnets() " "methods in IP network classes for the case when resulting prefix length is " "equal to maximal prefix length. Based on patch by Xiang Zhang." msgstr "" -#: ../build/NEWS:23000 ../build/NEWS:25302 +#: ../build/NEWS:23035 ../build/NEWS:25337 msgid "" "`bpo-26385 `__: Remove the file if the " "internal open() call in NamedTemporaryFile() fails. Patch by Silent Ghost." msgstr "" -#: ../build/NEWS:23003 ../build/NEWS:25305 +#: ../build/NEWS:23038 ../build/NEWS:25340 msgid "" "`bpo-26402 `__: Fix XML-RPC client to " "retry when the server shuts down a persistent connection. This was a " @@ -38071,33 +38025,33 @@ msgid "" "3.5.0a4." msgstr "" -#: ../build/NEWS:23007 ../build/NEWS:25309 +#: ../build/NEWS:23042 ../build/NEWS:25344 msgid "" "`bpo-25913 `__: Leading ``<~`` is " "optional now in base64.a85decode() with adobe=True. Patch by Swati Jaiswal." msgstr "" -#: ../build/NEWS:23010 ../build/NEWS:25312 +#: ../build/NEWS:23045 ../build/NEWS:25347 msgid "" "`bpo-26186 `__: Remove an invalid type " "check in importlib.util.LazyLoader." msgstr "" -#: ../build/NEWS:23012 +#: ../build/NEWS:23047 msgid "" "`bpo-26367 `__: importlib.__import__() " "raises ImportError like builtins.__import__() when ``level`` is specified " "but without an accompanying package specified." msgstr "" -#: ../build/NEWS:23016 ../build/NEWS:25318 +#: ../build/NEWS:23051 ../build/NEWS:25353 msgid "" "`bpo-26309 `__: In the \"socketserver\" " "module, shut down the request (closing the connected socket) when " "verify_request() returns false. Patch by Aviv Palivoda." msgstr "" -#: ../build/NEWS:23020 +#: ../build/NEWS:23055 msgid "" "`bpo-23430 `__: Change the socketserver " "module to only catch exceptions raised from a request handler that are " @@ -38106,76 +38060,76 @@ msgid "" "to stop a single-threaded server." msgstr "" -#: ../build/NEWS:23029 ../build/NEWS:25325 +#: ../build/NEWS:23064 ../build/NEWS:25360 msgid "" "`bpo-25939 `__: On Windows open the cert " "store readonly in ssl.enum_certificates." msgstr "" -#: ../build/NEWS:23035 ../build/NEWS:25331 +#: ../build/NEWS:23070 ../build/NEWS:25366 msgid "" "`bpo-25995 `__: os.walk() no longer uses " "FDs proportional to the tree depth." msgstr "" -#: ../build/NEWS:23037 +#: ../build/NEWS:23072 msgid "" "`bpo-25994 `__: Added the close() method " "and the support of the context manager protocol for the os.scandir() " "iterator." msgstr "" -#: ../build/NEWS:23040 +#: ../build/NEWS:23075 msgid "" "`bpo-23992 `__: multiprocessing: make " "MapResult not fail-fast upon exception." msgstr "" -#: ../build/NEWS:23042 +#: ../build/NEWS:23077 msgid "" "`bpo-26243 `__: Support keyword " "arguments to zlib.compress(). Patch by Aviv Palivoda." msgstr "" -#: ../build/NEWS:23045 ../build/NEWS:25333 +#: ../build/NEWS:23080 ../build/NEWS:25368 msgid "" "`bpo-26117 `__: The os.scandir() " "iterator now closes file descriptor not only when the iteration is finished, " "but when it was failed with error." msgstr "" -#: ../build/NEWS:23048 +#: ../build/NEWS:23083 msgid "" "`bpo-25949 `__: __dict__ for an " "OrderedDict instance is now created only when needed." msgstr "" -#: ../build/NEWS:23051 ../build/NEWS:25336 +#: ../build/NEWS:23086 ../build/NEWS:25371 msgid "" "`bpo-25911 `__: Restored support of " "bytes paths in os.walk() on Windows." msgstr "" -#: ../build/NEWS:23053 ../build/NEWS:25338 +#: ../build/NEWS:23088 ../build/NEWS:25373 msgid "" "`bpo-26045 `__: Add UTF-8 suggestion to " "error message when posting a non-Latin-1 string with http.client." msgstr "" -#: ../build/NEWS:23056 +#: ../build/NEWS:23091 msgid "" "`bpo-26039 `__: Added zipfile.ZipInfo." "from_file() and zipinfo.ZipInfo.is_dir(). Patch by Thomas Kluyver." msgstr "" -#: ../build/NEWS:23059 ../build/NEWS:25341 +#: ../build/NEWS:23094 ../build/NEWS:25376 msgid "" "`bpo-12923 `__: Reset FancyURLopener's " "redirect counter even if there is an exception. Based on patches by Brian " "Brazil and Daniel Rocco." msgstr "" -#: ../build/NEWS:23062 ../build/NEWS:25344 +#: ../build/NEWS:23097 ../build/NEWS:25379 msgid "" "`bpo-25945 `__: Fixed a crash when " "unpickle the functools.partial object with wrong state. Fixed a leak in " @@ -38183,25 +38137,25 @@ msgid "" "of functools.partial have now always types tuple and dict correspondingly." msgstr "" -#: ../build/NEWS:23067 ../build/NEWS:25349 +#: ../build/NEWS:23102 ../build/NEWS:25384 msgid "" "`bpo-26202 `__: copy.deepcopy() now " "correctly copies range() objects with non-atomic attributes." msgstr "" -#: ../build/NEWS:23070 ../build/NEWS:25352 +#: ../build/NEWS:23105 ../build/NEWS:25387 msgid "" "`bpo-23076 `__: Path.glob() now raises a " "ValueError if it's called with an invalid pattern. Patch by Thomas Nyberg." msgstr "" -#: ../build/NEWS:23073 ../build/NEWS:25355 +#: ../build/NEWS:23108 ../build/NEWS:25390 msgid "" "`bpo-19883 `__: Fixed possible integer " "overflows in zipimport." msgstr "" -#: ../build/NEWS:23075 ../build/NEWS:25357 +#: ../build/NEWS:23110 ../build/NEWS:25392 msgid "" "`bpo-26227 `__: On Windows, " "getnameinfo(), gethostbyaddr() and gethostbyname_ex() functions of the " @@ -38209,202 +38163,202 @@ msgid "" "UTF-8." msgstr "" -#: ../build/NEWS:23079 +#: ../build/NEWS:23114 msgid "" "`bpo-26099 `__: The site module now " "writes an error into stderr if sitecustomize module can be imported but " "executing the module raise an ImportError. Same change for usercustomize." msgstr "" -#: ../build/NEWS:23083 ../build/NEWS:25361 +#: ../build/NEWS:23118 ../build/NEWS:25396 msgid "" "`bpo-26147 `__: xmlrpc now works with " "strings not encodable with used non-UTF-8 encoding." msgstr "" -#: ../build/NEWS:23086 ../build/NEWS:25364 +#: ../build/NEWS:23121 ../build/NEWS:25399 msgid "" "`bpo-25935 `__: Garbage collector now " "breaks reference loops with OrderedDict." msgstr "" -#: ../build/NEWS:23088 ../build/NEWS:25366 +#: ../build/NEWS:23123 ../build/NEWS:25401 msgid "" "`bpo-16620 `__: Fixed AttributeError in " "msilib.Directory.glob()." msgstr "" -#: ../build/NEWS:23090 ../build/NEWS:25368 +#: ../build/NEWS:23125 ../build/NEWS:25403 msgid "" "`bpo-26013 `__: Added compatibility with " "broken protocol 2 pickles created in old Python 3 versions (3.4.3 and lower)." msgstr "" -#: ../build/NEWS:23093 +#: ../build/NEWS:23128 msgid "" "`bpo-26129 `__: Deprecated accepting non-" "integers in grp.getgrgid()." msgstr "" -#: ../build/NEWS:23095 ../build/NEWS:25371 +#: ../build/NEWS:23130 ../build/NEWS:25406 msgid "" "`bpo-25850 `__: Use cross-compilation by " "default for 64-bit Windows." msgstr "" -#: ../build/NEWS:23097 +#: ../build/NEWS:23132 msgid "" "`bpo-25822 `__: Add docstrings to the " "fields of urllib.parse results. Patch contributed by Swati Jaiswal." msgstr "" -#: ../build/NEWS:23100 +#: ../build/NEWS:23135 msgid "" "`bpo-22642 `__: Convert trace module " "option parsing mechanism to argparse. Patch contributed by SilentGhost." msgstr "" -#: ../build/NEWS:23103 ../build/NEWS:25375 +#: ../build/NEWS:23138 ../build/NEWS:25410 msgid "" "`bpo-24705 `__: Fix sysconfig." "_parse_makefile not expanding ${} vars appearing before $() vars." msgstr "" -#: ../build/NEWS:23106 +#: ../build/NEWS:23141 msgid "" "`bpo-26069 `__: Remove the deprecated " "apis in the trace module." msgstr "" -#: ../build/NEWS:23108 ../build/NEWS:25378 +#: ../build/NEWS:23143 ../build/NEWS:25413 msgid "" "`bpo-22138 `__: Fix mock.patch behavior " "when patching descriptors. Restore original values after patching. Patch " "contributed by Sean McCully." msgstr "" -#: ../build/NEWS:23111 ../build/NEWS:25381 +#: ../build/NEWS:23146 ../build/NEWS:25416 msgid "" "`bpo-25672 `__: In the ssl module, " "enable the SSL_MODE_RELEASE_BUFFERS mode option if it is safe to do so." msgstr "" -#: ../build/NEWS:23114 ../build/NEWS:25384 +#: ../build/NEWS:23149 ../build/NEWS:25419 msgid "" "`bpo-26012 `__: Don't traverse into " "symlinks for ``**`` pattern in pathlib.Path.[r]glob()." msgstr "" -#: ../build/NEWS:23117 ../build/NEWS:25387 +#: ../build/NEWS:23152 ../build/NEWS:25422 msgid "" "`bpo-24120 `__: Ignore PermissionError " "when traversing a tree with pathlib.Path.[r]glob(). Patch by Ulrich Petri." msgstr "" -#: ../build/NEWS:23120 +#: ../build/NEWS:23155 msgid "" "`bpo-21815 `__: Accept ] characters in " "the data portion of imap responses, in order to handle the flags with square " "brackets accepted and produced by servers such as gmail." msgstr "" -#: ../build/NEWS:23124 ../build/NEWS:25390 +#: ../build/NEWS:23159 ../build/NEWS:25425 msgid "" "`bpo-25447 `__: fileinput now uses sys." "stdin as-is if it does not have a buffer attribute (restores backward " "compatibility)." msgstr "" -#: ../build/NEWS:23127 +#: ../build/NEWS:23162 msgid "" "`bpo-25971 `__: Optimized creating " "Fractions from floats by 2 times and from Decimals by 3 times." msgstr "" -#: ../build/NEWS:23130 +#: ../build/NEWS:23165 msgid "" "`bpo-25802 `__: Document as deprecated " "the remaining implementations of importlib.abc.Loader.load_module()." msgstr "" -#: ../build/NEWS:23133 +#: ../build/NEWS:23168 msgid "" "`bpo-25928 `__: Add Decimal." "as_integer_ratio()." msgstr "" -#: ../build/NEWS:23135 ../build/NEWS:25393 +#: ../build/NEWS:23170 ../build/NEWS:25428 msgid "" "`bpo-25447 `__: Copying the lru_cache() " "wrapper object now always works, independently from the type of the wrapped " "object (by returning the original object unchanged)." msgstr "" -#: ../build/NEWS:23139 +#: ../build/NEWS:23174 msgid "" "`bpo-25768 `__: Have the functions in " "compileall return booleans instead of ints and add proper documentation and " "tests for the return values." msgstr "" -#: ../build/NEWS:23142 ../build/NEWS:25397 +#: ../build/NEWS:23177 ../build/NEWS:25432 msgid "" "`bpo-24103 `__: Fixed possible use after " "free in ElementTree.XMLPullParser." msgstr "" -#: ../build/NEWS:23144 ../build/NEWS:25399 +#: ../build/NEWS:23179 ../build/NEWS:25434 msgid "" "`bpo-25860 `__: os.fwalk() no longer " "skips remaining directories when error occurs. Original patch by Samson Lee." msgstr "" -#: ../build/NEWS:23147 ../build/NEWS:25402 +#: ../build/NEWS:23182 ../build/NEWS:25437 msgid "" "`bpo-25914 `__: Fixed and simplified " "OrderedDict.__sizeof__." msgstr "" -#: ../build/NEWS:23149 +#: ../build/NEWS:23184 msgid "" "`bpo-25869 `__: Optimized deepcopying " "ElementTree; it is now 20 times faster." msgstr "" -#: ../build/NEWS:23151 +#: ../build/NEWS:23186 msgid "" "`bpo-25873 `__: Optimized iterating " "ElementTree. Iterating elements Element.iter() is now 40% faster, iterating " "text Element.itertext() is now up to 2.5 times faster." msgstr "" -#: ../build/NEWS:23155 ../build/NEWS:25404 +#: ../build/NEWS:23190 ../build/NEWS:25439 msgid "" "`bpo-25902 `__: Fixed various refcount " "issues in ElementTree iteration." msgstr "" -#: ../build/NEWS:23157 +#: ../build/NEWS:23192 msgid "" "`bpo-22227 `__: The TarFile iterator is " "reimplemented using generator. This implementation is simpler that using " "class." msgstr "" -#: ../build/NEWS:23160 +#: ../build/NEWS:23195 msgid "" "`bpo-25638 `__: Optimized ElementTree." "iterparse(); it is now 2x faster. Optimized ElementTree parsing; it is now " "10% faster." msgstr "" -#: ../build/NEWS:23163 +#: ../build/NEWS:23198 msgid "" "`bpo-25761 `__: Improved detecting " "errors in broken pickle data." msgstr "" -#: ../build/NEWS:23165 ../build/NEWS:25406 +#: ../build/NEWS:23200 ../build/NEWS:25441 msgid "" "`bpo-25717 `__: Restore the previous " "behaviour of tolerating most fstat() errors when opening files. This was a " @@ -38412,7 +38366,7 @@ msgid "" "special cases." msgstr "" -#: ../build/NEWS:23169 ../build/NEWS:25410 +#: ../build/NEWS:23204 ../build/NEWS:25445 msgid "" "`bpo-24903 `__: Fix regression in number " "of arguments compileall accepts when '-d' is specified. The check on the " @@ -38420,27 +38374,27 @@ msgid "" "anyway." msgstr "" -#: ../build/NEWS:23173 ../build/NEWS:25414 +#: ../build/NEWS:23208 ../build/NEWS:25449 msgid "" "`bpo-25764 `__: In the subprocess " "module, preserve any exception caused by fork() failure when preexec_fn is " "used." msgstr "" -#: ../build/NEWS:23176 +#: ../build/NEWS:23211 msgid "" "`bpo-25771 `__: Tweak the exception " "message for importlib.util.resolve_name() when 'package' isn't specified but " "necessary." msgstr "" -#: ../build/NEWS:23179 ../build/NEWS:25417 +#: ../build/NEWS:23214 ../build/NEWS:25452 msgid "" "`bpo-6478 `__: _strptime's regexp cache " "now is reset after changing timezone with time.tzset()." msgstr "" -#: ../build/NEWS:23182 ../build/NEWS:25420 +#: ../build/NEWS:23217 ../build/NEWS:25455 msgid "" "`bpo-14285 `__: When executing a package " "with the \"python -m package\" option, and package initialization fails, a " @@ -38449,7 +38403,7 @@ msgid "" "ImportError." msgstr "" -#: ../build/NEWS:23187 ../build/NEWS:25425 +#: ../build/NEWS:23222 ../build/NEWS:25460 msgid "" "`bpo-19771 `__: Also in runpy and the \"-" "m\" option, omit the irrelevant message \". . . is a package and cannot be " @@ -38457,70 +38411,70 @@ msgid "" "to a bad ``*.pyc`` file)." msgstr "" -#: ../build/NEWS:23191 ../build/NEWS:25429 +#: ../build/NEWS:23226 ../build/NEWS:25464 msgid "" "`bpo-25177 `__: Fixed problem with the " "mean of very small and very large numbers. As a side effect, statistics.mean " "and statistics.variance should be significantly faster." msgstr "" -#: ../build/NEWS:23195 ../build/NEWS:25433 +#: ../build/NEWS:23230 ../build/NEWS:25468 msgid "" "`bpo-25718 `__: Fixed copying object " "with state with boolean value is false." msgstr "" -#: ../build/NEWS:23197 ../build/NEWS:25435 +#: ../build/NEWS:23232 ../build/NEWS:25470 msgid "" "`bpo-10131 `__: Fixed deep copying of " "minidom documents. Based on patch by Marian Ganisin." msgstr "" -#: ../build/NEWS:23200 +#: ../build/NEWS:23235 msgid "" "`bpo-7990 `__: dir() on ElementTree." "Element now lists properties: \"tag\", \"text\", \"tail\" and \"attrib\". " "Original patch by Santoso Wijaya." msgstr "" -#: ../build/NEWS:23203 ../build/NEWS:25438 +#: ../build/NEWS:23238 ../build/NEWS:25473 msgid "" "`bpo-25725 `__: Fixed a reference leak " "in pickle.loads() when unpickling invalid data including tuple instructions." msgstr "" -#: ../build/NEWS:23206 ../build/NEWS:25441 +#: ../build/NEWS:23241 ../build/NEWS:25476 msgid "" "`bpo-25663 `__: In the Readline " "completer, avoid listing duplicate global names, and search the global " "namespace before searching builtins." msgstr "" -#: ../build/NEWS:23209 ../build/NEWS:25444 +#: ../build/NEWS:23244 ../build/NEWS:25479 msgid "" "`bpo-25688 `__: Fixed file leak in " "ElementTree.iterparse() raising an error." msgstr "" -#: ../build/NEWS:23211 ../build/NEWS:25446 +#: ../build/NEWS:23246 ../build/NEWS:25481 msgid "" "`bpo-23914 `__: Fixed SystemError raised " "by unpickler on broken pickle data." msgstr "" -#: ../build/NEWS:23213 ../build/NEWS:25448 +#: ../build/NEWS:23248 ../build/NEWS:25483 msgid "" "`bpo-25691 `__: Fixed crash on deleting " "ElementTree.Element attributes." msgstr "" -#: ../build/NEWS:23215 ../build/NEWS:25450 +#: ../build/NEWS:23250 ../build/NEWS:25485 msgid "" "`bpo-25624 `__: ZipFile now always " "writes a ZIP_STORED header for directory entries. Patch by Dingyuan Wang." msgstr "" -#: ../build/NEWS:23218 ../build/NEWS:25769 +#: ../build/NEWS:23253 ../build/NEWS:25804 msgid "" "`bpo-25626 `__: Change three zlib " "functions to accept sizes that fit in Py_ssize_t, but internally cap those " @@ -38530,20 +38484,20 @@ msgid "" "parameter, and the zlib.Decompress.flush() length parameter." msgstr "" -#: ../build/NEWS:23225 ../build/NEWS:25776 +#: ../build/NEWS:23260 ../build/NEWS:25811 msgid "" "`bpo-25583 `__: Avoid incorrect errors " "raised by os.makedirs(exist_ok=True) when the OS gives priority to errors " "such as EACCES over EEXIST." msgstr "" -#: ../build/NEWS:23228 ../build/NEWS:25779 +#: ../build/NEWS:23263 ../build/NEWS:25814 msgid "" "`bpo-25593 `__: Change semantics of " "EventLoop.stop() in asyncio." msgstr "" -#: ../build/NEWS:23230 ../build/NEWS:25781 +#: ../build/NEWS:23265 ../build/NEWS:25816 msgid "" "`bpo-6973 `__: When we know a subprocess." "Popen process has died, do not allow the send_signal(), terminate(), or " @@ -38551,7 +38505,7 @@ msgid "" "process." msgstr "" -#: ../build/NEWS:23234 +#: ../build/NEWS:23269 msgid "" "`bpo-23883 `__: Added missing APIs to " "__all__ to match the documented APIs for the following modules: calendar, " @@ -38560,7 +38514,7 @@ msgid "" "Kołodziej, Mauro S. M. Rodrigues and Joel Taddei." msgstr "" -#: ../build/NEWS:23240 +#: ../build/NEWS:23275 msgid "" "`bpo-25590 `__: In the Readline " "completer, only call getattr() once per attribute. Also complete names of " @@ -38568,179 +38522,179 @@ msgid "" "yet created on an instance." msgstr "" -#: ../build/NEWS:23244 ../build/NEWS:25788 +#: ../build/NEWS:23279 ../build/NEWS:25823 msgid "" "`bpo-25498 `__: Fix a crash when garbage-" "collecting ctypes objects created by wrapping a memoryview. This was a " "regression made in 3.5a1. Based on patch by Eryksun." msgstr "" -#: ../build/NEWS:23248 ../build/NEWS:25792 +#: ../build/NEWS:23283 ../build/NEWS:25827 msgid "" "`bpo-25584 `__: Added \"escape\" to the " "__all__ list in the glob module." msgstr "" -#: ../build/NEWS:23250 ../build/NEWS:25794 +#: ../build/NEWS:23285 ../build/NEWS:25829 msgid "" "`bpo-25584 `__: Fixed recursive glob() " "with patterns starting with ``**``." msgstr "" -#: ../build/NEWS:23252 ../build/NEWS:25796 +#: ../build/NEWS:23287 ../build/NEWS:25831 msgid "" "`bpo-25446 `__: Fix regression in " "smtplib's AUTH LOGIN support." msgstr "" -#: ../build/NEWS:23254 ../build/NEWS:25798 +#: ../build/NEWS:23289 ../build/NEWS:25833 msgid "" "`bpo-18010 `__: Fix the pydoc web " "server's module search function to handle exceptions from importing packages." msgstr "" -#: ../build/NEWS:23257 ../build/NEWS:25801 +#: ../build/NEWS:23292 ../build/NEWS:25836 msgid "" "`bpo-25554 `__: Got rid of circular " "references in regular expression parsing." msgstr "" -#: ../build/NEWS:23259 +#: ../build/NEWS:23294 msgid "" "`bpo-18973 `__: Command-line interface " "of the calendar module now uses argparse instead of optparse." msgstr "" -#: ../build/NEWS:23262 ../build/NEWS:25803 +#: ../build/NEWS:23297 ../build/NEWS:25838 msgid "" "`bpo-25510 `__: fileinput.FileInput." "readline() now returns b'' instead of '' at the end if the FileInput was " "opened with binary mode. Patch by Ryosuke Ito." msgstr "" -#: ../build/NEWS:23266 ../build/NEWS:25807 +#: ../build/NEWS:23301 ../build/NEWS:25842 msgid "" "`bpo-25503 `__: Fixed inspect.getdoc() " "for inherited docstrings of properties. Original patch by John Mark " "Vandenberg." msgstr "" -#: ../build/NEWS:23269 ../build/NEWS:25810 +#: ../build/NEWS:23304 ../build/NEWS:25845 msgid "" "`bpo-25515 `__: Always use os.urandom as " "a source of randomness in uuid.uuid4." msgstr "" -#: ../build/NEWS:23271 ../build/NEWS:25812 +#: ../build/NEWS:23306 ../build/NEWS:25847 msgid "" "`bpo-21827 `__: Fixed textwrap.dedent() " "for the case when largest common whitespace is a substring of smallest " "leading whitespace. Based on patch by Robert Li." msgstr "" -#: ../build/NEWS:23275 ../build/NEWS:25816 +#: ../build/NEWS:23310 ../build/NEWS:25851 msgid "" "`bpo-25447 `__: The lru_cache() wrapper " "objects now can be copied and pickled (by returning the original object " "unchanged)." msgstr "" -#: ../build/NEWS:23278 ../build/NEWS:25819 +#: ../build/NEWS:23313 ../build/NEWS:25854 msgid "" "`bpo-25390 `__: typing: Don't crash on " "Union[str, Pattern]." msgstr "" -#: ../build/NEWS:23280 ../build/NEWS:25821 +#: ../build/NEWS:23315 ../build/NEWS:25856 msgid "" "`bpo-25441 `__: asyncio: Raise error " "from drain() when socket is closed." msgstr "" -#: ../build/NEWS:23282 ../build/NEWS:25823 +#: ../build/NEWS:23317 ../build/NEWS:25858 msgid "" "`bpo-25410 `__: Cleaned up and fixed " "minor bugs in C implementation of OrderedDict." msgstr "" -#: ../build/NEWS:23285 ../build/NEWS:25826 +#: ../build/NEWS:23320 ../build/NEWS:25861 msgid "" "`bpo-25411 `__: Improved Unicode support " "in SMTPHandler through better use of the email package. Thanks to user " "simon04 for the patch." msgstr "" -#: ../build/NEWS:23288 +#: ../build/NEWS:23323 msgid "" "Move the imp module from a PendingDeprecationWarning to DeprecationWarning." msgstr "" -#: ../build/NEWS:23291 ../build/NEWS:25829 +#: ../build/NEWS:23326 ../build/NEWS:25864 msgid "" "`bpo-25407 `__: Remove mentions of the " "formatter module being removed in Python 3.6." msgstr "" -#: ../build/NEWS:23294 ../build/NEWS:25832 +#: ../build/NEWS:23329 ../build/NEWS:25867 msgid "" "`bpo-25406 `__: Fixed a bug in C " "implementation of OrderedDict.move_to_end() that caused segmentation fault " "or hang in iterating after moving several items to the start of ordered dict." msgstr "" -#: ../build/NEWS:23298 +#: ../build/NEWS:23333 msgid "" "`bpo-25382 `__: pickletools.dis() now " "outputs implicit memo index for the MEMOIZE opcode." msgstr "" -#: ../build/NEWS:23301 +#: ../build/NEWS:23336 msgid "" "`bpo-25357 `__: Add an optional newline " "parameter to binascii.b2a_base64(). base64.b64encode() uses it to avoid a " "memory copy." msgstr "" -#: ../build/NEWS:23304 +#: ../build/NEWS:23339 msgid "" "`bpo-24164 `__: Objects that need " "calling ``__new__`` with keyword arguments, can now be pickled using pickle " "protocols older than protocol version 4." msgstr "" -#: ../build/NEWS:23307 ../build/NEWS:25836 +#: ../build/NEWS:23342 ../build/NEWS:25871 msgid "" "`bpo-25364 `__: zipfile now works in " "threads disabled builds." msgstr "" -#: ../build/NEWS:23309 ../build/NEWS:25838 +#: ../build/NEWS:23344 ../build/NEWS:25873 msgid "" "`bpo-25328 `__: smtpd's SMTPChannel now " "correctly raises a ValueError if both decode_data and enable_SMTPUTF8 are " "set to true." msgstr "" -#: ../build/NEWS:23312 +#: ../build/NEWS:23347 msgid "" "`bpo-16099 `__: RobotFileParser now " "supports Crawl-delay and Request-rate extensions. Patch by Nikolay " "Bogoychev." msgstr "" -#: ../build/NEWS:23315 ../build/NEWS:25841 +#: ../build/NEWS:23350 ../build/NEWS:25876 msgid "" "`bpo-25316 `__: distutils raises OSError " "instead of DistutilsPlatformError when MSVC is not installed." msgstr "" -#: ../build/NEWS:23318 ../build/NEWS:25844 +#: ../build/NEWS:23353 ../build/NEWS:25879 msgid "" "`bpo-25380 `__: Fixed protocol for the " "STACK_GLOBAL opcode in pickletools.opcodes." msgstr "" -#: ../build/NEWS:23321 ../build/NEWS:25847 +#: ../build/NEWS:23356 ../build/NEWS:25882 msgid "" "`bpo-23972 `__: Updates asyncio datagram " "create method allowing reuseport and reuseaddr socket options to be set " @@ -38749,66 +38703,66 @@ msgid "" "is 'posix' (except if the platform is Cygwin). Patch by Chris Laws." msgstr "" -#: ../build/NEWS:23327 ../build/NEWS:25853 +#: ../build/NEWS:23362 ../build/NEWS:25888 msgid "" "`bpo-25304 `__: Add asyncio." "run_coroutine_threadsafe(). This lets you submit a coroutine to a loop from " "another thread, returning a concurrent.futures.Future. By Vincent Michel." msgstr "" -#: ../build/NEWS:23331 ../build/NEWS:25857 +#: ../build/NEWS:23366 ../build/NEWS:25892 msgid "" "`bpo-25232 `__: Fix CGIRequestHandler to " "split the query from the URL at the first question mark (?) rather than the " "last. Patch from Xiang Zhang." msgstr "" -#: ../build/NEWS:23334 ../build/NEWS:25860 +#: ../build/NEWS:23369 ../build/NEWS:25895 msgid "" "`bpo-24657 `__: Prevent " "CGIRequestHandler from collapsing slashes in the query part of the URL as if " "it were a path. Patch from Xiang Zhang." msgstr "" -#: ../build/NEWS:23337 +#: ../build/NEWS:23372 msgid "" "`bpo-25287 `__: Don't add crypt." "METHOD_CRYPT to crypt.methods if it's not supported. Check if it is " "supported, it may not be supported on OpenBSD for example." msgstr "" -#: ../build/NEWS:23341 ../build/NEWS:25888 +#: ../build/NEWS:23376 ../build/NEWS:25923 msgid "" "`bpo-23600 `__: Default implementation " "of tzinfo.fromutc() was returning wrong results in some cases." msgstr "" -#: ../build/NEWS:23344 ../build/NEWS:25885 +#: ../build/NEWS:23379 ../build/NEWS:25920 msgid "" "`bpo-25203 `__: Failed readline." "set_completer_delims() no longer left the module in inconsistent state." msgstr "" -#: ../build/NEWS:23347 +#: ../build/NEWS:23382 msgid "" "`bpo-25011 `__: rlcompleter now omits " "private and special attribute names unless the prefix starts with " "underscores." msgstr "" -#: ../build/NEWS:23350 +#: ../build/NEWS:23385 msgid "" "`bpo-25209 `__: rlcompleter now can add " "a space or a colon after completed keyword." msgstr "" -#: ../build/NEWS:23353 +#: ../build/NEWS:23388 msgid "" "`bpo-22241 `__: timezone.utc name is now " "plain 'UTC', not 'UTC-00:00'." msgstr "" -#: ../build/NEWS:23355 +#: ../build/NEWS:23390 msgid "" "`bpo-23517 `__: fromtimestamp() and " "utcfromtimestamp() methods of datetime.datetime now round microseconds to " @@ -38816,20 +38770,20 @@ msgid "" "round(float), instead of rounding towards -Infinity (ROUND_FLOOR)." msgstr "" -#: ../build/NEWS:23360 +#: ../build/NEWS:23395 msgid "" "`bpo-23552 `__: Timeit now warns when " "there is substantial (4x) variance between best and worst times. Patch from " "Serhiy Storchaka." msgstr "" -#: ../build/NEWS:23363 +#: ../build/NEWS:23398 msgid "" "`bpo-24633 `__: site-packages/README -> " "README.txt." msgstr "" -#: ../build/NEWS:23365 +#: ../build/NEWS:23400 msgid "" "`bpo-24879 `__: help() and pydoc can now " "list named tuple fields in the order they were defined rather than " @@ -38837,63 +38791,63 @@ msgid "" "present." msgstr "" -#: ../build/NEWS:23369 +#: ../build/NEWS:23404 msgid "" "`bpo-24874 `__: Improve speed of " "itertools.cycle() and make its pickle more compact." msgstr "" -#: ../build/NEWS:23372 +#: ../build/NEWS:23407 msgid "" "Fix crash in itertools.cycle.__setstate__() when the first argument wasn't a " "list." msgstr "" -#: ../build/NEWS:23375 +#: ../build/NEWS:23410 msgid "" "`bpo-20059 `__: urllib.parse raises " "ValueError on all invalid ports. Patch by Martin Panter." msgstr "" -#: ../build/NEWS:23378 +#: ../build/NEWS:23413 msgid "" "`bpo-24360 `__: Improve __repr__ of " "argparse.Namespace() for invalid identifiers. Patch by Matthias Bussonnier." msgstr "" -#: ../build/NEWS:23381 +#: ../build/NEWS:23416 msgid "" "`bpo-23426 `__: run_setup was broken in " "distutils. Patch from Alexander Belopolsky." msgstr "" -#: ../build/NEWS:23384 +#: ../build/NEWS:23419 msgid "" "`bpo-13938 `__: 2to3 converts " "StringTypes to a tuple. Patch from Mark Hammond." msgstr "" -#: ../build/NEWS:23386 +#: ../build/NEWS:23421 msgid "" "`bpo-2091 `__: open() accepted a 'U' mode " "string containing '+', but 'U' can only be used with 'r'. Patch from Jeff " "Balogh and John O'Connor." msgstr "" -#: ../build/NEWS:23389 +#: ../build/NEWS:23424 msgid "" "`bpo-8585 `__: improved tests for " "zipimporter2. Patch from Mark Lawrence." msgstr "" -#: ../build/NEWS:23391 ../build/NEWS:26430 +#: ../build/NEWS:23426 ../build/NEWS:26465 msgid "" "`bpo-18622 `__: unittest.mock." "mock_open().reset_mock would recurse infinitely. Patch from Nicola Palumbo " "and Laurent De Buyst." msgstr "" -#: ../build/NEWS:23394 +#: ../build/NEWS:23429 msgid "" "`bpo-24426 `__: Fast searching " "optimization in regular expressions now works for patterns that starts with " @@ -38901,113 +38855,113 @@ msgid "" "compile time." msgstr "" -#: ../build/NEWS:23398 ../build/NEWS:26433 +#: ../build/NEWS:23433 ../build/NEWS:26468 msgid "" "`bpo-23661 `__: unittest.mock " "side_effects can now be exceptions again. This was a regression vs Python " "3.4. Patch from Ignacio Rossi" msgstr "" -#: ../build/NEWS:23401 +#: ../build/NEWS:23436 msgid "" "`bpo-13248 `__: Remove deprecated " "inspect.getmoduleinfo function." msgstr "" -#: ../build/NEWS:23403 ../build/NEWS:25962 +#: ../build/NEWS:23438 ../build/NEWS:25997 msgid "" "`bpo-25578 `__: Fix (another) memory " "leak in SSLSocket.getpeercer()." msgstr "" -#: ../build/NEWS:23405 ../build/NEWS:25964 +#: ../build/NEWS:23440 ../build/NEWS:25999 msgid "" "`bpo-25530 `__: Disable the vulnerable " "SSLv3 protocol by default when creating ssl.SSLContext." msgstr "" -#: ../build/NEWS:23408 ../build/NEWS:25967 +#: ../build/NEWS:23443 ../build/NEWS:26002 msgid "" "`bpo-25569 `__: Fix memory leak in " "SSLSocket.getpeercert()." msgstr "" -#: ../build/NEWS:23410 ../build/NEWS:25969 +#: ../build/NEWS:23445 ../build/NEWS:26004 msgid "" "`bpo-25471 `__: Sockets returned from " "accept() shouldn't appear to be nonblocking." msgstr "" -#: ../build/NEWS:23413 ../build/NEWS:25972 +#: ../build/NEWS:23448 ../build/NEWS:26007 msgid "" "`bpo-25319 `__: When threading.Event is " "reinitialized, the underlying condition should use a regular lock rather " "than a recursive lock." msgstr "" -#: ../build/NEWS:23416 ../build/NEWS:25453 +#: ../build/NEWS:23451 ../build/NEWS:25488 msgid "" "Skip getaddrinfo if host is already resolved. Patch by A. Jesse Jiryu Davis." msgstr "" -#: ../build/NEWS:23419 ../build/NEWS:25456 +#: ../build/NEWS:23454 ../build/NEWS:25491 msgid "" "`bpo-26050 `__: Add asyncio.StreamReader." "readuntil() method. Patch by Марк Коренберг." msgstr "" -#: ../build/NEWS:23422 ../build/NEWS:25459 +#: ../build/NEWS:23457 ../build/NEWS:25494 msgid "" "`bpo-25924 `__: Avoid unnecessary " "serialization of getaddrinfo(3) calls on OS X versions 10.5 or higher. " "Original patch by A. Jesse Jiryu Davis." msgstr "" -#: ../build/NEWS:23425 ../build/NEWS:25462 +#: ../build/NEWS:23460 ../build/NEWS:25497 msgid "" "`bpo-26406 `__: Avoid unnecessary " "serialization of getaddrinfo(3) calls on current versions of OpenBSD and " "NetBSD. Patch by A. Jesse Jiryu Davis." msgstr "" -#: ../build/NEWS:23428 ../build/NEWS:25465 +#: ../build/NEWS:23463 ../build/NEWS:25500 msgid "" "`bpo-26848 `__: Fix asyncio/subprocess." "communicate() to handle empty input. Patch by Jack O'Connor." msgstr "" -#: ../build/NEWS:23431 ../build/NEWS:25468 +#: ../build/NEWS:23466 ../build/NEWS:25503 msgid "" "`bpo-27040 `__: Add loop." "get_exception_handler method" msgstr "" -#: ../build/NEWS:23433 ../build/NEWS:25470 +#: ../build/NEWS:23468 ../build/NEWS:25505 msgid "" "`bpo-27041 `__: asyncio: Add loop." "create_future method" msgstr "" -#: ../build/NEWS:23438 ../build/NEWS:25518 +#: ../build/NEWS:23473 ../build/NEWS:25553 msgid "" "`bpo-20640 `__: Add tests for idlelib." "configHelpSourceEdit. Patch by Saimadhav Heblikar." msgstr "" -#: ../build/NEWS:23441 ../build/NEWS:25521 +#: ../build/NEWS:23476 ../build/NEWS:25556 msgid "" "In the 'IDLE-console differences' section of the IDLE doc, clarify how " "running with IDLE affects sys.modules and the standard streams." msgstr "" -#: ../build/NEWS:23444 ../build/NEWS:25524 +#: ../build/NEWS:23479 ../build/NEWS:25559 msgid "" "`bpo-25507 `__: fix incorrect change in " "IOBinding that prevented printing. Augment IOBinding htest to include all " "major IOBinding functions." msgstr "" -#: ../build/NEWS:23447 ../build/NEWS:25527 +#: ../build/NEWS:23482 ../build/NEWS:25562 msgid "" "`bpo-25905 `__: Revert unwanted " "conversion of ' to ’ RIGHT SINGLE QUOTATION MARK in README.txt and open this " @@ -39015,7 +38969,7 @@ msgid "" "'utf-8'." msgstr "" -#: ../build/NEWS:23451 ../build/NEWS:26001 +#: ../build/NEWS:23486 ../build/NEWS:26036 msgid "" "`bpo-15348 `__: Stop the debugger engine " "(normally in a user process) before closing the debugger window (running in " @@ -39023,7 +38977,7 @@ msgid "" "and ignored." msgstr "" -#: ../build/NEWS:23455 ../build/NEWS:26005 +#: ../build/NEWS:23490 ../build/NEWS:26040 msgid "" "`bpo-24455 `__: Prevent IDLE from " "hanging when a) closing the shell while the debugger is active (15347); b) " @@ -39034,20 +38988,20 @@ msgid "" "& .quit). 2. In gui.run, allow any existing interaction to terminate first." msgstr "" -#: ../build/NEWS:23463 ../build/NEWS:26013 +#: ../build/NEWS:23498 ../build/NEWS:26048 msgid "" "Change 'The program' to 'Your program' in an IDLE 'kill program?' message to " "make it clearer that the program referred to is the currently running user " "program, not IDLE itself." msgstr "" -#: ../build/NEWS:23467 ../build/NEWS:26017 +#: ../build/NEWS:23502 ../build/NEWS:26052 msgid "" "`bpo-24750 `__: Improve the appearance " "of the IDLE editor window status bar. Patch by Mark Roseman." msgstr "" -#: ../build/NEWS:23470 ../build/NEWS:26020 +#: ../build/NEWS:23505 ../build/NEWS:26055 msgid "" "`bpo-25313 `__: Change the handling of " "new built-in text color themes to better address the compatibility problem " @@ -39055,21 +39009,21 @@ msgid "" "idleConf.CurrentTheme everywhere in idlelib." msgstr "" -#: ../build/NEWS:23474 ../build/NEWS:26024 +#: ../build/NEWS:23509 ../build/NEWS:26059 msgid "" "`bpo-24782 `__: Extension configuration " "is now a tab in the IDLE Preferences dialog rather than a separate dialog. " "The former tabs are now a sorted list. Patch by Mark Roseman." msgstr "" -#: ../build/NEWS:23478 ../build/NEWS:26028 +#: ../build/NEWS:23513 ../build/NEWS:26063 msgid "" "`bpo-22726 `__: Re-activate the config " "dialog help button with some content about the other buttons and the new " "IDLE Dark theme." msgstr "" -#: ../build/NEWS:23481 ../build/NEWS:26031 +#: ../build/NEWS:23516 ../build/NEWS:26066 msgid "" "`bpo-24820 `__: IDLE now has an 'IDLE " "Dark' built-in text color theme. It is more or less IDLE Classic inverted, " @@ -39080,7 +39034,7 @@ msgid "" "be modified." msgstr "" -#: ../build/NEWS:23488 ../build/NEWS:26038 +#: ../build/NEWS:23523 ../build/NEWS:26073 msgid "" "`bpo-25224 `__: README.txt is now an " "idlelib index for IDLE developers and curious users. The previous user " @@ -39088,14 +39042,14 @@ msgid "" "Development and Learning Environment'." msgstr "" -#: ../build/NEWS:23492 ../build/NEWS:26042 +#: ../build/NEWS:23527 ../build/NEWS:26077 msgid "" "`bpo-24820 `__: Users can now set " "breakpoint colors in Settings -> Custom Highlighting. Original patch by Mark " "Roseman." msgstr "" -#: ../build/NEWS:23495 ../build/NEWS:26045 +#: ../build/NEWS:23530 ../build/NEWS:26080 msgid "" "`bpo-24972 `__: Inactive selection " "background now matches active selection background, as configured by users, " @@ -39103,33 +39057,33 @@ msgid "" "patch by Mark Roseman." msgstr "" -#: ../build/NEWS:23499 ../build/NEWS:26049 +#: ../build/NEWS:23534 ../build/NEWS:26084 msgid "" "`bpo-24570 `__: Idle: make calltip and " "completion boxes appear on Macs affected by a tk regression. Initial patch " "by Mark Roseman." msgstr "" -#: ../build/NEWS:23502 ../build/NEWS:26052 +#: ../build/NEWS:23537 ../build/NEWS:26087 msgid "" "`bpo-24988 `__: Idle ScrolledList " "context menus (used in debugger) now work on Mac Aqua. Patch by Mark Roseman." msgstr "" -#: ../build/NEWS:23505 ../build/NEWS:26055 +#: ../build/NEWS:23540 ../build/NEWS:26090 msgid "" "`bpo-24801 `__: Make right-click for " "context menu work on Mac Aqua. Patch by Mark Roseman." msgstr "" -#: ../build/NEWS:23508 ../build/NEWS:26058 +#: ../build/NEWS:23543 ../build/NEWS:26093 msgid "" "`bpo-25173 `__: Associate tkinter " "messageboxes with a specific widget. For Mac OSX, make them a 'sheet'. " "Patch by Mark Roseman." msgstr "" -#: ../build/NEWS:23511 ../build/NEWS:26061 +#: ../build/NEWS:23546 ../build/NEWS:26096 msgid "" "`bpo-25198 `__: Enhance the initial html " "viewer now used for Idle Help. Properly indent fixed-pitch text (patch by " @@ -39139,50 +39093,50 @@ msgid "" "header at the top of the screen." msgstr "" -#: ../build/NEWS:23518 ../build/NEWS:26068 +#: ../build/NEWS:23553 ../build/NEWS:26103 msgid "" "`bpo-25225 `__: Condense and rewrite " "Idle doc section on text colors." msgstr "" -#: ../build/NEWS:23520 ../build/NEWS:26070 +#: ../build/NEWS:23555 ../build/NEWS:26105 msgid "" "`bpo-21995 `__: Explain some differences " "between IDLE and console Python." msgstr "" -#: ../build/NEWS:23522 ../build/NEWS:26072 +#: ../build/NEWS:23557 ../build/NEWS:26107 msgid "" "`bpo-22820 `__: Explain need for *print* " "when running file from Idle editor." msgstr "" -#: ../build/NEWS:23524 ../build/NEWS:26074 +#: ../build/NEWS:23559 ../build/NEWS:26109 msgid "" "`bpo-25224 `__: Doc: augment Idle " "feature list and no-subprocess section." msgstr "" -#: ../build/NEWS:23526 ../build/NEWS:26076 +#: ../build/NEWS:23561 ../build/NEWS:26111 msgid "" "`bpo-25219 `__: Update doc for Idle " "command line options. Some were missing and notes were not correct." msgstr "" -#: ../build/NEWS:23529 ../build/NEWS:26079 +#: ../build/NEWS:23564 ../build/NEWS:26114 msgid "" "`bpo-24861 `__: Most of idlelib is " "private and subject to change. Use idleib.idle.* to start Idle. See idlelib." "__init__.__doc__." msgstr "" -#: ../build/NEWS:23532 ../build/NEWS:26082 +#: ../build/NEWS:23567 ../build/NEWS:26117 msgid "" "`bpo-25199 `__: Idle: add " "synchronization comments for future maintainers." msgstr "" -#: ../build/NEWS:23534 +#: ../build/NEWS:23569 msgid "" "`bpo-16893 `__: Replace help.txt with " "help.html for Idle doc display. The new idlelib/help.html is rstripped Doc/" @@ -39192,159 +39146,159 @@ msgid "" "and helt.txt file are deprecated." msgstr "" -#: ../build/NEWS:23541 ../build/NEWS:26091 +#: ../build/NEWS:23576 ../build/NEWS:26126 msgid "" "`bpo-24199 `__: Deprecate unused idlelib." "idlever with possible removal in 3.6." msgstr "" -#: ../build/NEWS:23543 ../build/NEWS:26093 +#: ../build/NEWS:23578 ../build/NEWS:26128 msgid "" "`bpo-24790 `__: Remove extraneous code " "(which also create 2 & 3 conflicts)." msgstr "" -#: ../build/NEWS:23548 ../build/NEWS:25539 +#: ../build/NEWS:23583 ../build/NEWS:25574 msgid "" "`bpo-26736 `__: Used HTTPS for external " "links in the documentation if possible." msgstr "" -#: ../build/NEWS:23550 ../build/NEWS:25541 +#: ../build/NEWS:23585 ../build/NEWS:25576 msgid "" "`bpo-6953 `__: Rework the Readline module " "documentation to group related functions together, and add more details such " "as what underlying Readline functions and variables are accessed." msgstr "" -#: ../build/NEWS:23554 ../build/NEWS:25545 +#: ../build/NEWS:23589 ../build/NEWS:25580 msgid "" "`bpo-23606 `__: Adds note to ctypes " "documentation regarding cdll.msvcrt." msgstr "" -#: ../build/NEWS:23556 ../build/NEWS:26108 +#: ../build/NEWS:23591 ../build/NEWS:26143 msgid "" "`bpo-24952 `__: Clarify the default size " "argument of stack_size() in the \"threading\" and \"_thread\" modules. Patch " "from Mattip." msgstr "" -#: ../build/NEWS:23559 ../build/NEWS:25550 +#: ../build/NEWS:23594 ../build/NEWS:25585 msgid "" "`bpo-26014 `__: Update 3.x packaging " "documentation: * \"See also\" links to the new docs are now provided in the " "legacy pages * links to setuptools documentation have been updated" msgstr "" -#: ../build/NEWS:23566 ../build/NEWS:25557 +#: ../build/NEWS:23601 ../build/NEWS:25592 msgid "" "`bpo-21916 `__: Added tests for the " "turtle module. Patch by ingrid, Gregory Loyse and Jelle Zijlstra." msgstr "" -#: ../build/NEWS:23569 +#: ../build/NEWS:23604 msgid "" "`bpo-26295 `__: When using \"python3 -m " "test --testdir=TESTDIR\", regrtest doesn't add \"test.\" prefix to test " "module names." msgstr "" -#: ../build/NEWS:23572 ../build/NEWS:25560 +#: ../build/NEWS:23607 ../build/NEWS:25595 msgid "" "`bpo-26523 `__: The multiprocessing " "thread pool (multiprocessing.dummy.Pool) was untested." msgstr "" -#: ../build/NEWS:23575 ../build/NEWS:25563 +#: ../build/NEWS:23610 ../build/NEWS:25598 msgid "" "`bpo-26015 `__: Added new tests for " "pickling iterators of mutable sequences." msgstr "" -#: ../build/NEWS:23577 ../build/NEWS:25565 +#: ../build/NEWS:23612 ../build/NEWS:25600 msgid "" "`bpo-26325 `__: Added test.support." "check_no_resource_warning() to check that no ResourceWarning is emitted." msgstr "" -#: ../build/NEWS:23580 +#: ../build/NEWS:23615 msgid "" "`bpo-25940 `__: Changed test_ssl to use " "its internal local server more. This avoids relying on svn.python.org, " "which recently changed root certificate." msgstr "" -#: ../build/NEWS:23583 ../build/NEWS:25571 +#: ../build/NEWS:23618 ../build/NEWS:25606 msgid "" "`bpo-25616 `__: Tests for OrderedDict " "are extracted from test_collections into separate file test_ordered_dict." msgstr "" -#: ../build/NEWS:23586 ../build/NEWS:26122 +#: ../build/NEWS:23621 ../build/NEWS:26157 msgid "" "`bpo-25449 `__: Added tests for " "OrderedDict subclasses." msgstr "" -#: ../build/NEWS:23588 +#: ../build/NEWS:23623 msgid "" "`bpo-25188 `__: Add -P/--pgo to test." "regrtest to suppress error output when running the test suite for the " "purposes of a PGO build. Initial patch by Alecsandru Patrascu." msgstr "" -#: ../build/NEWS:23592 +#: ../build/NEWS:23627 msgid "" "`bpo-22806 `__: Add ``python -m test --" "list-tests`` command to list tests." msgstr "" -#: ../build/NEWS:23594 +#: ../build/NEWS:23629 msgid "" "`bpo-18174 `__: ``python -m test --" "huntrleaks ...`` now also checks for leak of file descriptors. Patch written " "by Richard Oudkerk." msgstr "" -#: ../build/NEWS:23597 +#: ../build/NEWS:23632 msgid "" "`bpo-25260 `__: Fix ``python -m test --" "coverage`` on Windows. Remove the list of ignored directories." msgstr "" -#: ../build/NEWS:23600 ../build/NEWS:26129 +#: ../build/NEWS:23635 ../build/NEWS:26164 msgid "" "``PCbuild\\rt.bat`` now accepts an unlimited number of arguments to pass " "along to regrtest.py. Previously there was a limit of 9." msgstr "" -#: ../build/NEWS:23603 ../build/NEWS:25574 +#: ../build/NEWS:23638 ../build/NEWS:25609 msgid "" "`bpo-26583 `__: Skip " "test_timestamp_overflow in test_import if bytecode files cannot be written." msgstr "" -#: ../build/NEWS:23609 +#: ../build/NEWS:23644 msgid "" "`bpo-21277 `__: Don't try to link " "_ctypes with a ffi_convenience library." msgstr "" -#: ../build/NEWS:23611 ../build/NEWS:25580 +#: ../build/NEWS:23646 ../build/NEWS:25615 msgid "" "`bpo-26884 `__: Fix linking extension " "modules for cross builds. Patch by Xavier de Gaye." msgstr "" -#: ../build/NEWS:23614 +#: ../build/NEWS:23649 msgid "" "`bpo-26932 `__: Fixed support of RTLD_* " "constants defined as enum values, not via macros (in particular on " "Android). Patch by Chi Hsuan Yen." msgstr "" -#: ../build/NEWS:23617 ../build/NEWS:25583 +#: ../build/NEWS:23652 ../build/NEWS:25618 msgid "" "`bpo-22359 `__: Disable the rules for " "running _freeze_importlib and pgen when cross-compiling. The output of " @@ -39352,14 +39306,14 @@ msgid "" "regenerated when doing a native build. Patch by Xavier de Gaye." msgstr "" -#: ../build/NEWS:23622 +#: ../build/NEWS:23657 msgid "" "`bpo-21668 `__: Link audioop, _datetime, " "_ctypes_test modules to libm, except on Mac OS X. Patch written by Chi Hsuan " "Yen." msgstr "" -#: ../build/NEWS:23625 ../build/NEWS:25594 +#: ../build/NEWS:23660 ../build/NEWS:25629 msgid "" "`bpo-25702 `__: A --with-lto configure " "option has been added that will enable link time optimizations at build time " @@ -39368,83 +39322,83 @@ msgid "" "relying on it. It can provide a few % speed up over profile-opt alone." msgstr "" -#: ../build/NEWS:23631 ../build/NEWS:25600 +#: ../build/NEWS:23666 ../build/NEWS:25635 msgid "" "`bpo-26624 `__: Adds validation of " "ucrtbase[d].dll version with warning for old versions." msgstr "" -#: ../build/NEWS:23634 ../build/NEWS:25603 +#: ../build/NEWS:23669 ../build/NEWS:25638 msgid "" "`bpo-17603 `__: Avoid error about " "nonexistent fileblocks.o file by using a lower-level check for st_blocks in " "struct stat." msgstr "" -#: ../build/NEWS:23637 ../build/NEWS:25606 +#: ../build/NEWS:23672 ../build/NEWS:25641 msgid "" "`bpo-26079 `__: Fixing the build output " "folder for tix-8.4.3.6. Patch by Bjoern Thiel." msgstr "" -#: ../build/NEWS:23640 ../build/NEWS:25609 +#: ../build/NEWS:23675 ../build/NEWS:25644 msgid "" "`bpo-26465 `__: Update Windows builds to " "use OpenSSL 1.0.2g." msgstr "" -#: ../build/NEWS:23642 +#: ../build/NEWS:23677 msgid "" "`bpo-25348 `__: Added ``--pgo`` and ``--" "pgo-job`` arguments to ``PCbuild\\build.bat`` for building with Profile-" "Guided Optimization. The old ``PCbuild\\build_pgo.bat`` script is removed." msgstr "" -#: ../build/NEWS:23646 ../build/NEWS:25620 +#: ../build/NEWS:23681 ../build/NEWS:25655 msgid "" "`bpo-25827 `__: Add support for building " "with ICC to ``configure``, including a new ``--with-icc`` flag." msgstr "" -#: ../build/NEWS:23649 ../build/NEWS:25623 +#: ../build/NEWS:23684 ../build/NEWS:25658 msgid "" "`bpo-25696 `__: Fix installation of " "Python on UNIX with make -j9." msgstr "" -#: ../build/NEWS:23651 ../build/NEWS:26140 +#: ../build/NEWS:23686 ../build/NEWS:26175 msgid "" "`bpo-24986 `__: It is now possible to " "build Python on Windows without errors when external libraries are not " "available." msgstr "" -#: ../build/NEWS:23654 ../build/NEWS:25611 +#: ../build/NEWS:23689 ../build/NEWS:25646 msgid "" "`bpo-24421 `__: Compile Modules/_math.c " "once, before building extensions. Previously it could fail to compile " "properly if the math and cmath builds were concurrent." msgstr "" -#: ../build/NEWS:23658 +#: ../build/NEWS:23693 msgid "" "`bpo-26465 `__: Update OS X 10.5+ 32-bit-" "only installer to build and link with OpenSSL 1.0.2g." msgstr "" -#: ../build/NEWS:23661 ../build/NEWS:25628 +#: ../build/NEWS:23696 ../build/NEWS:25663 msgid "" "`bpo-26268 `__: Update Windows builds to " "use OpenSSL 1.0.2f." msgstr "" -#: ../build/NEWS:23663 ../build/NEWS:25630 +#: ../build/NEWS:23698 ../build/NEWS:25665 msgid "" "`bpo-25136 `__: Support Apple Xcode 7's " "new textual SDK stub libraries." msgstr "" -#: ../build/NEWS:23665 ../build/NEWS:25632 +#: ../build/NEWS:23700 ../build/NEWS:25667 msgid "" "`bpo-24324 `__: Do not enable " "unreachable code warnings when using gcc as the option does not work " @@ -39452,44 +39406,44 @@ msgid "" "gcc-4.5." msgstr "" -#: ../build/NEWS:23672 ../build/NEWS:25639 +#: ../build/NEWS:23707 ../build/NEWS:25674 msgid "" "`bpo-27053 `__: Updates make_zip.py to " "correctly generate library ZIP file." msgstr "" -#: ../build/NEWS:23674 ../build/NEWS:25641 +#: ../build/NEWS:23709 ../build/NEWS:25676 msgid "" "`bpo-26268 `__: Update the prepare_ssl." "py script to handle OpenSSL releases that don't include the contents of the " "include directory (that is, 1.0.2e and later)." msgstr "" -#: ../build/NEWS:23678 ../build/NEWS:25645 +#: ../build/NEWS:23713 ../build/NEWS:25680 msgid "" "`bpo-26071 `__: bdist_wininst created " "binaries fail to start and find 32bit Python" msgstr "" -#: ../build/NEWS:23681 ../build/NEWS:25648 +#: ../build/NEWS:23716 ../build/NEWS:25683 msgid "" "`bpo-26073 `__: Update the list of magic " "numbers in launcher" msgstr "" -#: ../build/NEWS:23683 ../build/NEWS:25650 +#: ../build/NEWS:23718 ../build/NEWS:25685 msgid "" "`bpo-26065 `__: Excludes venv from " "library when generating embeddable distro." msgstr "" -#: ../build/NEWS:23685 ../build/NEWS:26179 +#: ../build/NEWS:23720 ../build/NEWS:26214 msgid "" "`bpo-25022 `__: Removed very outdated PC/" "example_nt/ directory." msgstr "" -#: ../build/NEWS:23690 ../build/NEWS:25655 +#: ../build/NEWS:23725 ../build/NEWS:25690 msgid "" "`bpo-26799 `__: Fix python-gdb.py: don't " "get C types once when the Python code is loaded, but get C types on demand. " @@ -39497,44 +39451,44 @@ msgid "" "executable. Patch written by Thomas Ilsche." msgstr "" -#: ../build/NEWS:23695 ../build/NEWS:25660 +#: ../build/NEWS:23730 ../build/NEWS:25695 msgid "" "`bpo-26271 `__: Fix the Freeze tool to " "properly use flags passed through configure. Patch by Daniel Shaulov." msgstr "" -#: ../build/NEWS:23698 ../build/NEWS:25663 +#: ../build/NEWS:23733 ../build/NEWS:25698 msgid "" "`bpo-26489 `__: Add dictionary unpacking " "support to Tools/parser/unparse.py. Patch by Guo Ci Teo." msgstr "" -#: ../build/NEWS:23701 ../build/NEWS:25666 +#: ../build/NEWS:23736 ../build/NEWS:25701 msgid "" "`bpo-26316 `__: Fix variable name typo " "in Argument Clinic." msgstr "" -#: ../build/NEWS:23703 ../build/NEWS:26184 +#: ../build/NEWS:23738 ../build/NEWS:26219 msgid "" "`bpo-25440 `__: Fix output of python-" "config --extension-suffix." msgstr "" -#: ../build/NEWS:23705 +#: ../build/NEWS:23740 msgid "" "`bpo-25154 `__: The pyvenv script has " "been deprecated in favour of `python3 -m venv`." msgstr "" -#: ../build/NEWS:23711 +#: ../build/NEWS:23746 msgid "" "`bpo-26312 `__: SystemError is now " "raised in all programming bugs with using PyArg_ParseTupleAndKeywords(). " "RuntimeError did raised before in some programming bugs." msgstr "" -#: ../build/NEWS:23715 +#: ../build/NEWS:23750 msgid "" "`bpo-26198 `__: ValueError is now raised " "instead of TypeError on buffer overflow in parsing \"es#\" and \"et#\" " @@ -39542,27 +39496,27 @@ msgid "" "programmatical error in parsing format string." msgstr "" -#: ../build/NEWS:23722 +#: ../build/NEWS:23757 msgid "Python 3.5.5 final" msgstr "" -#: ../build/NEWS:23724 +#: ../build/NEWS:23759 msgid "*Release date: 2018-02-04*" msgstr "" -#: ../build/NEWS:23726 +#: ../build/NEWS:23761 msgid "There were no new changes in version 3.5.5." msgstr "" -#: ../build/NEWS:23731 +#: ../build/NEWS:23766 msgid "Python 3.5.5 release candidate 1" msgstr "" -#: ../build/NEWS:23733 +#: ../build/NEWS:23768 msgid "*Release date: 2018-01-23*" msgstr "" -#: ../build/NEWS:23738 +#: ../build/NEWS:23773 msgid "" "`bpo-32551 `__: The ``sys.path[0]`` " "initialization change for `bpo-29139 `__ " @@ -39579,30 +39533,30 @@ msgid "" "then upcoming Python 3.5.4 release would also be affected)" msgstr "" -#: ../build/NEWS:23751 +#: ../build/NEWS:23786 msgid "" "`bpo-30657 `__: Fixed possible integer " "overflow in PyBytes_DecodeEscape, CVE-2017-1000158. Original patch by Jay " "Bosamiya; rebased to Python 3 by Miro Hrončok." msgstr "" -#: ../build/NEWS:23778 +#: ../build/NEWS:23813 msgid "Python 3.5.4 final" msgstr "" -#: ../build/NEWS:23780 +#: ../build/NEWS:23815 msgid "*Release date: 2017-08-07*" msgstr "" -#: ../build/NEWS:23790 +#: ../build/NEWS:23825 msgid "Python 3.5.4 release candidate 1" msgstr "" -#: ../build/NEWS:23792 +#: ../build/NEWS:23827 msgid "*Release date: 2017-07-23*" msgstr "" -#: ../build/NEWS:23844 +#: ../build/NEWS:23879 msgid "" "`bpo-29537 `__: Restore runtime " "compatibility with bytecode files generated by CPython 3.5.0 to 3.5.2, and " @@ -39611,13 +39565,13 @@ msgid "" "contain. Patch by Petr Viktorin, Serhiy Storchaka, and Nick Coghlan." msgstr "" -#: ../build/NEWS:24126 +#: ../build/NEWS:24161 msgid "" "`bpo-30822 `__: Fix regrtest command " "line parser to allow passing -u extralargefile to run test_zipfile64." msgstr "" -#: ../build/NEWS:24129 +#: ../build/NEWS:24164 msgid "" "`bpo-30383 `__: regrtest: Enhance " "regrtest and backport features from the master branch. Add options: --" @@ -39632,7 +39586,7 @@ msgid "" "`30675`)." msgstr "" -#: ../build/NEWS:24186 +#: ../build/NEWS:24221 msgid "" "`bpo-27867 `__: Function " "PySlice_GetIndicesEx() is replaced with a macro if Py_LIMITED_API is set to " @@ -39640,65 +39594,65 @@ msgid "" "higher." msgstr "" -#: ../build/NEWS:24198 +#: ../build/NEWS:24233 msgid "Python 3.5.3 final" msgstr "" -#: ../build/NEWS:24200 +#: ../build/NEWS:24235 msgid "*Release date: 2017-01-17*" msgstr "" -#: ../build/NEWS:24202 +#: ../build/NEWS:24237 msgid "There were no code changes between 3.5.3rc1 and 3.5.3 final." msgstr "" -#: ../build/NEWS:24207 +#: ../build/NEWS:24242 msgid "Python 3.5.3 release candidate 1" msgstr "" -#: ../build/NEWS:24209 +#: ../build/NEWS:24244 msgid "*Release date: 2017-01-02*" msgstr "" -#: ../build/NEWS:24214 +#: ../build/NEWS:24249 msgid "" "`bpo-29073 `__: bytearray formatting no " "longer truncates on first null byte." msgstr "" -#: ../build/NEWS:24218 +#: ../build/NEWS:24253 msgid "" "`bpo-28147 `__: Fix a memory leak in " "split-table dictionaries: setattr() must not convert combined table into " "split table." msgstr "" -#: ../build/NEWS:24230 +#: ../build/NEWS:24265 msgid "" "`bpo-28991 `__: functools.lru_cache() " "was susceptible to an obscure reentrancy bug caused by a monkey-patched " "len() function." msgstr "" -#: ../build/NEWS:24273 +#: ../build/NEWS:24308 msgid "" "`bpo-28203 `__: Fix incorrect type in " "error message from ``complex(1.0, {2:3})``. Patch by Soumya Sharma." msgstr "" -#: ../build/NEWS:24288 +#: ../build/NEWS:24323 msgid "" "`bpo-28189 `__: dictitems_contains no " "longer swallows compare errors. (Patch by Xiang Zhang)" msgstr "" -#: ../build/NEWS:24300 +#: ../build/NEWS:24335 msgid "" "`bpo-26020 `__: set literal evaluation " "order did not match documented behaviour." msgstr "" -#: ../build/NEWS:24319 +#: ../build/NEWS:24354 msgid "" "`bpo-27419 `__: Standard __import__() no " "longer look up \"__import__\" in globals or builtins for importing " @@ -39706,33 +39660,33 @@ msgid "" "package name." msgstr "" -#: ../build/NEWS:24371 +#: ../build/NEWS:24406 msgid "" "`bpo-20191 `__: Fixed a crash in " "resource.prlimit() when pass a sequence that doesn't own its elements as " "limits." msgstr "" -#: ../build/NEWS:24422 +#: ../build/NEWS:24457 msgid "" "`bpo-28488 `__: shutil.make_archive() no " "longer add entry \"./\" to ZIP archive." msgstr "" -#: ../build/NEWS:24460 +#: ../build/NEWS:24495 msgid "" "`bpo-27611 `__: Fixed support of default " "root window in the tkinter.tix module." msgstr "" -#: ../build/NEWS:24486 +#: ../build/NEWS:24521 msgid "" "`bpo-19003 `__: m email.generator now " "replaces only ``\\r`` and/or ``\\n`` line endings, per the RFC, instead of " "all unicode line endings." msgstr "" -#: ../build/NEWS:24558 +#: ../build/NEWS:24593 msgid "" "A new version of typing.py from https://github.com/python/typing: Collection " "(only for 3.6) (`bpo-27598 `__). Add " @@ -39741,20 +39695,20 @@ msgid "" "(upstream #252)." msgstr "" -#: ../build/NEWS:24574 +#: ../build/NEWS:24609 msgid "" "`bpo-26750 `__: unittest.mock." "create_autospec() now works properly for subclasses of property() and other " "data descriptors." msgstr "" -#: ../build/NEWS:24618 +#: ../build/NEWS:24653 msgid "" "`bpo-26664 `__: Fix activate.fish by " "removing mis-use of ``$``." msgstr "" -#: ../build/NEWS:24620 +#: ../build/NEWS:24655 msgid "" "`bpo-22115 `__: Fixed tracing Tkinter " "variables: trace_vdelete() with wrong mode no longer break tracing, " @@ -39762,51 +39716,51 @@ msgid "" "\"u\" mode now works." msgstr "" -#: ../build/NEWS:24624 +#: ../build/NEWS:24659 msgid "" "Fix a scoping issue in importlib.util.LazyLoader which triggered an " "UnboundLocalError when lazy-loading a module that was already put into sys." "modules." msgstr "" -#: ../build/NEWS:24724 +#: ../build/NEWS:24759 msgid "" "`bpo-28600 `__: Optimize loop." "call_soon()." msgstr "" -#: ../build/NEWS:24738 +#: ../build/NEWS:24773 msgid "" "`bpo-24142 `__: Reading a corrupt config " "file left the parser in an invalid state. Original patch by Florian Höch." msgstr "" -#: ../build/NEWS:24741 +#: ../build/NEWS:24776 msgid "" "`bpo-28990 `__: Fix SSL hanging if " "connection is closed before handshake completed. (Patch by HoHo-Ho)" msgstr "" -#: ../build/NEWS:24777 +#: ../build/NEWS:24812 msgid "" "`bpo-26754 `__: PyUnicode_FSDecoder() " "accepted a filename argument encoded as an iterable of integers. Now only " "strings and bytes-like objects are accepted." msgstr "" -#: ../build/NEWS:24789 +#: ../build/NEWS:24824 msgid "" "`bpo-28950 `__: Disallow -j0 to be " "combined with -T/-l/-M in regrtest command line arguments." msgstr "" -#: ../build/NEWS:24830 +#: ../build/NEWS:24865 msgid "" "`bpo-27309 `__: Enabled proper Windows " "styles in python[w].exe manifest." msgstr "" -#: ../build/NEWS:24863 +#: ../build/NEWS:24898 msgid "" "`bpo-27983 `__: Cause lack of llvm-" "profdata tool when using clang as required for PGO linking to be a configure " @@ -39814,13 +39768,13 @@ msgid "" "improve our ability to find the llvm-profdata tool on MacOS and some Linuxes." msgstr "" -#: ../build/NEWS:24870 +#: ../build/NEWS:24905 msgid "" "`bpo-26359 `__: Add the --with-" "optimizations configure flag." msgstr "" -#: ../build/NEWS:24875 +#: ../build/NEWS:24910 msgid "" "`bpo-25825 `__: Correct the references " "to Modules/python.exp and ld_so_aix, which are required on AIX. This " @@ -39828,48 +39782,48 @@ msgid "" "undoes changed references to the build tree that were made in 3.5.0a1." msgstr "" -#: ../build/NEWS:24898 +#: ../build/NEWS:24933 msgid "Python 3.5.2 final" msgstr "" -#: ../build/NEWS:24900 +#: ../build/NEWS:24935 msgid "*Release date: 2016-06-26*" msgstr "" -#: ../build/NEWS:24910 +#: ../build/NEWS:24945 msgid "" "`bpo-26867 `__: Ubuntu's openssl " "OP_NO_SSLv3 is forced on by default; fix test." msgstr "" -#: ../build/NEWS:24915 +#: ../build/NEWS:24950 msgid "" "`bpo-27365 `__: Allow non-ascii in " "idlelib/NEWS.txt - minimal part for 3.5.2." msgstr "" -#: ../build/NEWS:24919 +#: ../build/NEWS:24954 msgid "Python 3.5.2 release candidate 1" msgstr "" -#: ../build/NEWS:24921 +#: ../build/NEWS:24956 msgid "*Release date: 2016-06-12*" msgstr "" -#: ../build/NEWS:24937 +#: ../build/NEWS:24972 msgid "" "`bpo-27039 `__: Fixed bytearray.remove() " "for values greater than 127. Patch by Joe Jevnik." msgstr "" -#: ../build/NEWS:24992 +#: ../build/NEWS:25027 msgid "" "`bpo-26194 `__: Deque.insert() gave odd " "results for bounded deques that had reached their maximum size. Now an " "IndexError will be raised when attempting to insert into a full deque." msgstr "" -#: ../build/NEWS:24996 +#: ../build/NEWS:25031 msgid "" "`bpo-25843 `__: When compiling code, " "don't merge constants if they are equal but have a different types. For " @@ -39878,13 +39832,13 @@ msgid "" "returns ``1.0`` (``int``), even if ``1`` and ``1.0`` are equal." msgstr "" -#: ../build/NEWS:25058 +#: ../build/NEWS:25093 msgid "" "Fix TLS stripping vulnerability in smtplib, CVE-2016-0772. Reported by Team " "Oststrom" msgstr "" -#: ../build/NEWS:25243 +#: ../build/NEWS:25278 msgid "" "`bpo-21925 `__: :func:`warnings." "formatwarning` now catches exceptions on ``linecache.getline(...)`` to be " @@ -39892,64 +39846,64 @@ msgid "" "process." msgstr "" -#: ../build/NEWS:25285 +#: ../build/NEWS:25320 msgid "" "`bpo-15068 `__: Got rid of excessive " "buffering in the fileinput module. The bufsize parameter is no longer used." msgstr "" -#: ../build/NEWS:25314 +#: ../build/NEWS:25349 msgid "" "`bpo-26367 `__: importlib.__import__() " "raises SystemError like builtins.__import__() when ``level`` is specified " "but without an accompanying package specified." msgstr "" -#: ../build/NEWS:25373 +#: ../build/NEWS:25408 msgid "" "`bpo-17633 `__: Improve zipimport's " "support for namespace packages." msgstr "" -#: ../build/NEWS:25472 +#: ../build/NEWS:25507 msgid "" "`bpo-27223 `__: asyncio: Fix _read_ready " "and _write_ready to respect _conn_lost. Patch by Łukasz Langa." msgstr "" -#: ../build/NEWS:25475 +#: ../build/NEWS:25510 msgid "" "`bpo-22970 `__: asyncio: Fix " "inconsistency cancelling Condition.wait. Patch by David Coles." msgstr "" -#: ../build/NEWS:25511 +#: ../build/NEWS:25546 msgid "" "`bpo-21703 `__: Add test for IDLE's undo " "delegator. Original patch by Saimadhav Heblikar ." msgstr "" -#: ../build/NEWS:25547 +#: ../build/NEWS:25582 msgid "" "`bpo-25500 `__: Fix documentation to not " "claim that __import__ is searched for in the global scope." msgstr "" -#: ../build/NEWS:25568 +#: ../build/NEWS:25603 msgid "" "`bpo-25940 `__: Changed test_ssl to use " "self-signed.pythontest.net. This avoids relying on svn.python.org, which " "recently changed root certificate." msgstr "" -#: ../build/NEWS:25591 +#: ../build/NEWS:25626 msgid "" "`bpo-21668 `__: Link audioop, _datetime, " "_ctypes_test modules to libm, except on Mac OS X. Patch written by Xavier de " "Gaye." msgstr "" -#: ../build/NEWS:25615 +#: ../build/NEWS:25650 msgid "" "`bpo-25348 `__: Added ``--pgo`` and ``--" "pgo-job`` arguments to ``PCbuild\\build.bat`` for building with Profile-" @@ -39957,43 +39911,43 @@ msgid "" "deprecated, and simply calls ``PCbuild\\build.bat --pgo %*``." msgstr "" -#: ../build/NEWS:25676 +#: ../build/NEWS:25711 msgid "Python 3.5.1 final" msgstr "" -#: ../build/NEWS:25678 +#: ../build/NEWS:25713 msgid "*Release date: 2015-12-06*" msgstr "" -#: ../build/NEWS:25689 +#: ../build/NEWS:25724 msgid "" "`bpo-25715 `__: Python 3.5.1 installer " "shows wrong upgrade path and incorrect logic for launcher detection." msgstr "" -#: ../build/NEWS:25694 +#: ../build/NEWS:25729 msgid "Python 3.5.1 release candidate 1" msgstr "" -#: ../build/NEWS:25696 +#: ../build/NEWS:25731 msgid "*Release date: 2015-11-22*" msgstr "" -#: ../build/NEWS:25755 +#: ../build/NEWS:25790 msgid "" "`bpo-25182 `__: The stdprinter (used as " "sys.stderr before the io module is imported at startup) now uses the " "backslashreplace error handler." msgstr "" -#: ../build/NEWS:25758 +#: ../build/NEWS:25793 msgid "" "`bpo-25131 `__: Make the line number and " "column offset of set/dict literals and comprehensions correspond to the " "opening brace." msgstr "" -#: ../build/NEWS:25761 +#: ../build/NEWS:25796 msgid "" "`bpo-25150 `__: Hide the private " "_Py_atomic_xxx symbols from the public Python.h header to fix a compilation " @@ -40001,38 +39955,38 @@ msgid "" "PyThreadState_Get() to avoid ABI incompatibilities." msgstr "" -#: ../build/NEWS:25785 +#: ../build/NEWS:25820 msgid "" "`bpo-25590 `__: In the Readline " "completer, only call getattr() once per attribute." msgstr "" -#: ../build/NEWS:25863 +#: ../build/NEWS:25898 msgid "" "`bpo-24483 `__: C implementation of " "functools.lru_cache() now calculates key's hash only once." msgstr "" -#: ../build/NEWS:25866 +#: ../build/NEWS:25901 msgid "" "`bpo-22958 `__: Constructor and update " "method of weakref.WeakValueDictionary now accept the self and the dict " "keyword arguments." msgstr "" -#: ../build/NEWS:25869 +#: ../build/NEWS:25904 msgid "" "`bpo-22609 `__: Constructor of " "collections.UserDict now accepts the self keyword argument." msgstr "" -#: ../build/NEWS:25872 +#: ../build/NEWS:25907 msgid "" "`bpo-25111 `__: Fixed comparison of " "traceback.FrameSummary." msgstr "" -#: ../build/NEWS:25874 +#: ../build/NEWS:25909 msgid "" "`bpo-25262 `__: Added support for " "BINBYTES8 opcode in Python implementation of unpickler. Highest 32 bits of " @@ -40040,30 +39994,30 @@ msgid "" "on 32-bit platforms in C implementation." msgstr "" -#: ../build/NEWS:25879 +#: ../build/NEWS:25914 msgid "" "`bpo-25034 `__: Fix string.Formatter " "problem with auto-numbering and nested format_specs. Patch by Anthon van der " "Neut." msgstr "" -#: ../build/NEWS:25882 +#: ../build/NEWS:25917 msgid "" "`bpo-25233 `__: Rewrite the guts of " "asyncio.Queue and asyncio.Semaphore to be more understandable and correct." msgstr "" -#: ../build/NEWS:25891 +#: ../build/NEWS:25926 msgid "" "`bpo-23329 `__: Allow the ssl module to " "be built with older versions of LibreSSL." msgstr "" -#: ../build/NEWS:25894 +#: ../build/NEWS:25929 msgid "Prevent overflow in _Unpickler_Read." msgstr "" -#: ../build/NEWS:25896 +#: ../build/NEWS:25931 msgid "" "`bpo-25047 `__: The XML encoding " "declaration written by Element Tree now respects the letter case given by " @@ -40071,26 +40025,26 @@ msgid "" "like \"UTF-8\", which worked in Python 2." msgstr "" -#: ../build/NEWS:25900 +#: ../build/NEWS:25935 msgid "" "`bpo-25135 `__: Make deque_clear() safer " "by emptying the deque before clearing. This helps avoid possible reentrancy " "issues." msgstr "" -#: ../build/NEWS:25903 +#: ../build/NEWS:25938 msgid "" "`bpo-19143 `__: platform module now " "reads Windows version from kernel32.dll to avoid compatibility shims." msgstr "" -#: ../build/NEWS:25906 +#: ../build/NEWS:25941 msgid "" "`bpo-25092 `__: Fix datetime.strftime() " "failure when errno was already set to EINVAL." msgstr "" -#: ../build/NEWS:25909 +#: ../build/NEWS:25944 msgid "" "`bpo-23517 `__: Fix rounding in " "fromtimestamp() and utcfromtimestamp() methods of datetime.datetime: " @@ -40102,27 +40056,27 @@ msgid "" "mode used by round(float) for example." msgstr "" -#: ../build/NEWS:25918 +#: ../build/NEWS:25953 msgid "" "`bpo-25155 `__: Fix datetime.datetime." "now() and datetime.datetime.utcnow() on Windows to support date after year " "2038. It was a regression introduced in Python 3.5.0." msgstr "" -#: ../build/NEWS:25922 +#: ../build/NEWS:25957 msgid "" "`bpo-25108 `__: Omitted internal frames " "in traceback functions print_stack(), format_stack(), and extract_stack() " "called without arguments." msgstr "" -#: ../build/NEWS:25925 +#: ../build/NEWS:25960 msgid "" "`bpo-25118 `__: Fix a regression of " "Python 3.5.0 in os.waitpid() on Windows." msgstr "" -#: ../build/NEWS:25927 +#: ../build/NEWS:25962 msgid "" "`bpo-24684 `__: socket.socket." "getaddrinfo() now calls PyUnicode_AsEncodedString() instead of calling the " @@ -40132,46 +40086,46 @@ msgid "" "string." msgstr "" -#: ../build/NEWS:25933 +#: ../build/NEWS:25968 msgid "" "`bpo-25060 `__: Correctly compute stack " "usage of the BUILD_MAP opcode." msgstr "" -#: ../build/NEWS:25935 +#: ../build/NEWS:25970 msgid "" "`bpo-24857 `__: Comparing call_args to a " "long sequence now correctly returns a boolean result instead of raising an " "exception. Patch by A Kaptur." msgstr "" -#: ../build/NEWS:25938 +#: ../build/NEWS:25973 msgid "" "`bpo-23144 `__: Make sure that " "HTMLParser.feed() returns all the data, even when convert_charrefs is True." msgstr "" -#: ../build/NEWS:25941 +#: ../build/NEWS:25976 msgid "" "`bpo-24982 `__: shutil.make_archive() " "with the \"zip\" format now adds entries for directories (including empty " "directories) in ZIP file." msgstr "" -#: ../build/NEWS:25944 +#: ../build/NEWS:25979 msgid "" "`bpo-25019 `__: Fixed a crash caused by " "setting non-string key of expat parser. Based on patch by John Leitch." msgstr "" -#: ../build/NEWS:25947 +#: ../build/NEWS:25982 msgid "" "`bpo-16180 `__: Exit pdb if file has " "syntax error, instead of trapping user in an infinite loop. Patch by Xavier " "de Gaye." msgstr "" -#: ../build/NEWS:25950 +#: ../build/NEWS:25985 msgid "" "`bpo-24891 `__: Fix a race condition at " "Python startup if the file descriptor of stdin (0), stdout (1) or stderr (2) " @@ -40181,68 +40135,68 @@ msgid "" "Marco Paolini." msgstr "" -#: ../build/NEWS:25956 +#: ../build/NEWS:25991 msgid "" "`bpo-24992 `__: Fix error handling and a " "race condition (related to garbage collection) in collections.OrderedDict " "constructor." msgstr "" -#: ../build/NEWS:25959 +#: ../build/NEWS:25994 msgid "" "`bpo-24881 `__: Fixed setting binary " "mode in Python implementation of FileIO on Windows and Cygwin. Patch from " "Akira Li." msgstr "" -#: ../build/NEWS:25975 +#: ../build/NEWS:26010 msgid "" "`bpo-21112 `__: Fix regression in " "unittest.expectedFailure on subclasses. Patch from Berker Peksag." msgstr "" -#: ../build/NEWS:25978 +#: ../build/NEWS:26013 msgid "" "`bpo-24764 `__: cgi.FieldStorage." "read_multi() now ignores the Content-Length header in part headers. Patch " "written by Peter Landry and reviewed by Pierre Quentel." msgstr "" -#: ../build/NEWS:25982 ../build/NEWS:26247 +#: ../build/NEWS:26017 ../build/NEWS:26282 msgid "" "`bpo-24913 `__: Fix overrun error in " "deque.index(). Found by John Leitch and Bryce Darling." msgstr "" -#: ../build/NEWS:25985 +#: ../build/NEWS:26020 msgid "" "`bpo-24774 `__: Fix docstring in http." "server.test. Patch from Chiu-Hsiang Hsu." msgstr "" -#: ../build/NEWS:25987 +#: ../build/NEWS:26022 msgid "" "`bpo-21159 `__: Improve message in " "configparser.InterpolationMissingOptionError. Patch from Łukasz Langa." msgstr "" -#: ../build/NEWS:25990 +#: ../build/NEWS:26025 msgid "" "`bpo-20362 `__: Honour TestCase." "longMessage correctly in assertRegex. Patch from Ilia Kurenkov." msgstr "" -#: ../build/NEWS:25993 +#: ../build/NEWS:26028 msgid "" "`bpo-23572 `__: Fixed functools." "singledispatch on classes with falsy metaclasses. Patch by Ethan Furman." msgstr "" -#: ../build/NEWS:25996 +#: ../build/NEWS:26031 msgid "asyncio: ensure_future() now accepts awaitable objects." msgstr "" -#: ../build/NEWS:26084 +#: ../build/NEWS:26119 msgid "" "`bpo-16893 `__: Replace help.txt with " "help.html for Idle doc display. The new idlelib/help.html is rstripped Doc/" @@ -40252,7 +40206,7 @@ msgid "" "and helt.txt file are deprecated." msgstr "" -#: ../build/NEWS:26101 +#: ../build/NEWS:26136 msgid "" "`bpo-12067 `__: Rewrite Comparisons " "section in the Expressions chapter of the language reference. Some of the " @@ -40262,195 +40216,195 @@ msgid "" "suggestions for user-defined classes. Patch from Andy Maier." msgstr "" -#: ../build/NEWS:26111 +#: ../build/NEWS:26146 msgid "" "`bpo-23725 `__: Overhaul tempfile docs. " "Note deprecated status of mktemp. Patch from Zbigniew Jędrzejewski-Szmek." msgstr "" -#: ../build/NEWS:26114 +#: ../build/NEWS:26149 msgid "" "`bpo-24808 `__: Update the types of some " "PyTypeObject fields. Patch by Joseph Weston." msgstr "" -#: ../build/NEWS:26117 +#: ../build/NEWS:26152 msgid "" "`bpo-22812 `__: Fix unittest discovery " "examples. Patch from Pam McA'Nulty." msgstr "" -#: ../build/NEWS:26124 +#: ../build/NEWS:26159 msgid "" "`bpo-25099 `__: Make test_compileall not " "fail when an entry on sys.path cannot be written to (commonly seen in " "administrative installs on Windows)." msgstr "" -#: ../build/NEWS:26127 +#: ../build/NEWS:26162 msgid "" "`bpo-23919 `__: Prevents assert dialogs " "appearing in the test suite." msgstr "" -#: ../build/NEWS:26135 +#: ../build/NEWS:26170 msgid "" "`bpo-24915 `__: Add LLVM support for PGO " "builds and use the test suite to generate the profile data. Initial patch by " "Alecsandru Patrascu of Intel." msgstr "" -#: ../build/NEWS:26138 +#: ../build/NEWS:26173 msgid "" "`bpo-24910 `__: Windows MSIs now have " "unique display names." msgstr "" -#: ../build/NEWS:26146 +#: ../build/NEWS:26181 msgid "" "`bpo-25450 `__: Updates shortcuts to " "start Python in installation directory." msgstr "" -#: ../build/NEWS:26148 +#: ../build/NEWS:26183 msgid "" "`bpo-25164 `__: Changes default all-" "users install directory to match per-user directory." msgstr "" -#: ../build/NEWS:26151 +#: ../build/NEWS:26186 msgid "" "`bpo-25143 `__: Improves installer error " "messages for unsupported platforms." msgstr "" -#: ../build/NEWS:26153 +#: ../build/NEWS:26188 msgid "" "`bpo-25163 `__: Display correct " "directory in installer when using non-default settings." msgstr "" -#: ../build/NEWS:26156 +#: ../build/NEWS:26191 msgid "" "`bpo-25361 `__: Disables use of SSE2 " "instructions in Windows 32-bit build" msgstr "" -#: ../build/NEWS:26158 +#: ../build/NEWS:26193 msgid "" "`bpo-25089 `__: Adds logging to " "installer for case where launcher is not selected on upgrade." msgstr "" -#: ../build/NEWS:26161 +#: ../build/NEWS:26196 msgid "" "`bpo-25165 `__: Windows uninstallation " "should not remove launcher if other versions remain" msgstr "" -#: ../build/NEWS:26164 +#: ../build/NEWS:26199 msgid "" "`bpo-25112 `__: py.exe launcher is " "missing icons" msgstr "" -#: ../build/NEWS:26166 +#: ../build/NEWS:26201 msgid "" "`bpo-25102 `__: Windows installer does " "not precompile for -O or -OO." msgstr "" -#: ../build/NEWS:26168 +#: ../build/NEWS:26203 msgid "" "`bpo-25081 `__: Makes Back button in " "installer go back to upgrade page when upgrading." msgstr "" -#: ../build/NEWS:26171 +#: ../build/NEWS:26206 msgid "" "`bpo-25091 `__: Increases font size of " "the installer." msgstr "" -#: ../build/NEWS:26173 +#: ../build/NEWS:26208 msgid "" "`bpo-25126 `__: Clarifies that the non-" "web installer will download some components." msgstr "" -#: ../build/NEWS:26176 +#: ../build/NEWS:26211 msgid "" "`bpo-25213 `__: Restores " "requestedExecutionLevel to manifest to disable UAC virtualization." msgstr "" -#: ../build/NEWS:26188 +#: ../build/NEWS:26223 msgid "Python 3.5.0 final" msgstr "" -#: ../build/NEWS:26190 +#: ../build/NEWS:26225 msgid "*Release date: 2015-09-13*" msgstr "" -#: ../build/NEWS:26195 +#: ../build/NEWS:26230 msgid "" "`bpo-25071 `__: Windows installer should " "not require TargetDir parameter when installing quietly." msgstr "" -#: ../build/NEWS:26200 +#: ../build/NEWS:26235 msgid "Python 3.5.0 release candidate 4" msgstr "" -#: ../build/NEWS:26202 +#: ../build/NEWS:26237 msgid "*Release date: 2015-09-09*" msgstr "" -#: ../build/NEWS:26207 +#: ../build/NEWS:26242 msgid "" "`bpo-25029 `__: Fixes MemoryError in " "test_strptime." msgstr "" -#: ../build/NEWS:26212 +#: ../build/NEWS:26247 msgid "" "`bpo-25027 `__: Reverts partial-static " "build options and adds vcruntime140.dll to Windows installation." msgstr "" -#: ../build/NEWS:26217 +#: ../build/NEWS:26252 msgid "Python 3.5.0 release candidate 3" msgstr "" -#: ../build/NEWS:26219 +#: ../build/NEWS:26254 msgid "*Release date: 2015-09-07*" msgstr "" -#: ../build/NEWS:26224 +#: ../build/NEWS:26259 msgid "" "`bpo-24305 `__: Prevent import subsystem " "stack frames from being counted by the warnings.warn(stacklevel=) parameter." msgstr "" -#: ../build/NEWS:26227 +#: ../build/NEWS:26262 msgid "" "`bpo-24912 `__: Prevent __class__ " "assignment to immutable built-in objects." msgstr "" -#: ../build/NEWS:26229 +#: ../build/NEWS:26264 msgid "" "`bpo-24975 `__: Fix AST compilation for :" "pep:`448` syntax." msgstr "" -#: ../build/NEWS:26234 +#: ../build/NEWS:26269 msgid "" "`bpo-24917 `__: time_strftime() buffer " "over-read." msgstr "" -#: ../build/NEWS:26236 +#: ../build/NEWS:26271 msgid "" "`bpo-24748 `__: To resolve a " "compatibility problem found with py2exe and pywin32, imp.load_dynamic() once " @@ -40458,179 +40412,179 @@ msgid "" "themselves with extension modules. Patch by Petr Viktorin." msgstr "" -#: ../build/NEWS:26241 +#: ../build/NEWS:26276 msgid "" "`bpo-24635 `__: Fixed a bug in typing.py " "where isinstance([], typing.Iterable) would return True once, then False on " "subsequent calls." msgstr "" -#: ../build/NEWS:26244 +#: ../build/NEWS:26279 msgid "" "`bpo-24989 `__: Fixed buffer overread in " "BytesIO.readline() if a position is set beyond size. Based on patch by John " "Leitch." msgstr "" -#: ../build/NEWS:26252 +#: ../build/NEWS:26287 msgid "Python 3.5.0 release candidate 2" msgstr "" -#: ../build/NEWS:26254 +#: ../build/NEWS:26289 msgid "*Release date: 2015-08-25*" msgstr "" -#: ../build/NEWS:26259 +#: ../build/NEWS:26294 msgid "" "`bpo-24769 `__: Interpreter now starts " "properly when dynamic loading is disabled. Patch by Petr Viktorin." msgstr "" -#: ../build/NEWS:26262 +#: ../build/NEWS:26297 msgid "" "`bpo-21167 `__: NAN operations are now " "handled correctly when python is compiled with ICC even if -fp-model strict " "is not specified." msgstr "" -#: ../build/NEWS:26265 +#: ../build/NEWS:26300 msgid "" "`bpo-24492 `__: A \"package\" lacking a " "__name__ attribute when trying to perform a ``from .. import ...`` statement " "will trigger an ImportError instead of an AttributeError." msgstr "" -#: ../build/NEWS:26272 +#: ../build/NEWS:26307 msgid "" "`bpo-24847 `__: Removes vcruntime140.dll " "dependency from Tcl/Tk." msgstr "" -#: ../build/NEWS:26274 +#: ../build/NEWS:26309 msgid "" "`bpo-24839 `__: platform._syscmd_ver " "raises DeprecationWarning" msgstr "" -#: ../build/NEWS:26276 +#: ../build/NEWS:26311 msgid "" "`bpo-24867 `__: Fix Task.get_stack() for " "'async def' coroutines" msgstr "" -#: ../build/NEWS:26280 +#: ../build/NEWS:26315 msgid "Python 3.5.0 release candidate 1" msgstr "" -#: ../build/NEWS:26282 +#: ../build/NEWS:26317 msgid "*Release date: 2015-08-09*" msgstr "" -#: ../build/NEWS:26287 +#: ../build/NEWS:26322 msgid "" "`bpo-24667 `__: Resize odict in all " "cases that the underlying dict resizes." msgstr "" -#: ../build/NEWS:26292 +#: ../build/NEWS:26327 msgid "" "`bpo-24824 `__: Signatures of codecs." "encode() and codecs.decode() now are compatible with pydoc." msgstr "" -#: ../build/NEWS:26295 +#: ../build/NEWS:26330 msgid "" "`bpo-24634 `__: Importing uuid should " "not try to load libc on Windows" msgstr "" -#: ../build/NEWS:26297 +#: ../build/NEWS:26332 msgid "" "`bpo-24798 `__: _msvccompiler.py doesn't " "properly support manifests" msgstr "" -#: ../build/NEWS:26299 +#: ../build/NEWS:26334 msgid "" "`bpo-4395 `__: Better testing and " "documentation of binary operators. Patch by Martin Panter." msgstr "" -#: ../build/NEWS:26302 +#: ../build/NEWS:26337 msgid "" "`bpo-23973 `__: Update typing.py from " "GitHub repo." msgstr "" -#: ../build/NEWS:26304 +#: ../build/NEWS:26339 msgid "" "`bpo-23004 `__: mock_open() now reads " "binary data correctly when the type of read_data is bytes. Initial patch by " "Aaron Hill." msgstr "" -#: ../build/NEWS:26307 +#: ../build/NEWS:26342 msgid "" "`bpo-23888 `__: Handle fractional time " "in cookie expiry. Patch by ssh." msgstr "" -#: ../build/NEWS:26309 +#: ../build/NEWS:26344 msgid "" "`bpo-23652 `__: Make it possible to " "compile the select module against the libc headers from the Linux Standard " "Base, which do not include some EPOLL macros. Patch by Matt Frank." msgstr "" -#: ../build/NEWS:26313 +#: ../build/NEWS:26348 msgid "" "`bpo-22932 `__: Fix timezones in email." "utils.formatdate. Patch from Dmitry Shachnev." msgstr "" -#: ../build/NEWS:26316 +#: ../build/NEWS:26351 msgid "" "`bpo-23779 `__: imaplib raises TypeError " "if authenticator tries to abort. Patch from Craig Holmquist." msgstr "" -#: ../build/NEWS:26319 +#: ../build/NEWS:26354 msgid "" "`bpo-23319 `__: Fix ctypes." "BigEndianStructure, swap correctly bytes. Patch written by Matthieu Gautier." msgstr "" -#: ../build/NEWS:26322 +#: ../build/NEWS:26357 msgid "" "`bpo-23254 `__: Document how to close " "the TCPServer listening socket. Patch from Martin Panter." msgstr "" -#: ../build/NEWS:26325 +#: ../build/NEWS:26360 msgid "" "`bpo-19450 `__: Update Windows and OS X " "installer builds to use SQLite 3.8.11." msgstr "" -#: ../build/NEWS:26327 +#: ../build/NEWS:26362 msgid "" "`bpo-17527 `__: Add PATCH to wsgiref." "validator. Patch from Luca Sbardella." msgstr "" -#: ../build/NEWS:26329 +#: ../build/NEWS:26364 msgid "" "`bpo-24791 `__: Fix grammar regression " "for call syntax: 'g(\\*a or b)'." msgstr "" -#: ../build/NEWS:26334 +#: ../build/NEWS:26369 msgid "" "`bpo-23672 `__: Allow Idle to edit and " "run files with astral chars in name. Patch by Mohd Sanad Zaki Rizvi." msgstr "" -#: ../build/NEWS:26337 +#: ../build/NEWS:26372 msgid "" "`bpo-24745 `__: Idle editor default " "font. Switch from Courier to platform-sensitive TkFixedFont. This should " @@ -40639,20 +40593,20 @@ msgid "" "Window]. Patch by Mark Roseman." msgstr "" -#: ../build/NEWS:26343 +#: ../build/NEWS:26378 msgid "" "`bpo-21192 `__: Idle editor. When a file " "is run, put its name in the restart bar. Do not print false prompts. " "Original patch by Adnan Umer." msgstr "" -#: ../build/NEWS:26346 +#: ../build/NEWS:26381 msgid "" "`bpo-13884 `__: Idle menus. Remove " "tearoff lines. Patch by Roger Serwy." msgstr "" -#: ../build/NEWS:26351 +#: ../build/NEWS:26386 msgid "" "`bpo-24129 `__: Clarify the reference " "documentation for name resolution. This includes removing the assumption " @@ -40661,221 +40615,221 @@ msgid "" "by Ivan Levkivskyi." msgstr "" -#: ../build/NEWS:26356 +#: ../build/NEWS:26391 msgid "" "`bpo-20769 `__: Improve reload() docs. " "Patch by Dorian Pula." msgstr "" -#: ../build/NEWS:26358 +#: ../build/NEWS:26393 msgid "" "`bpo-23589 `__: Remove duplicate " "sentence from the FAQ. Patch by Yongzhi Pan." msgstr "" -#: ../build/NEWS:26360 +#: ../build/NEWS:26395 msgid "" "`bpo-24729 `__: Correct IO tutorial to " "match implementation regarding encoding parameter to open function." msgstr "" -#: ../build/NEWS:26366 +#: ../build/NEWS:26401 msgid "" "`bpo-24751 `__: When running regrtest " "with the ``-w`` command line option, a test run is no longer marked as a " "failure if all tests succeed when re-run." msgstr "" -#: ../build/NEWS:26372 +#: ../build/NEWS:26407 msgid "Python 3.5.0 beta 4" msgstr "" -#: ../build/NEWS:26374 +#: ../build/NEWS:26409 msgid "*Release date: 2015-07-26*" msgstr "" -#: ../build/NEWS:26379 +#: ../build/NEWS:26414 msgid "" "`bpo-23573 `__: Restored optimization of " "bytes.rfind() and bytearray.rfind() for single-byte argument on Linux." msgstr "" -#: ../build/NEWS:26382 +#: ../build/NEWS:26417 msgid "" "`bpo-24569 `__: Make :pep:`448` " "dictionary evaluation more consistent." msgstr "" -#: ../build/NEWS:26384 +#: ../build/NEWS:26419 msgid "" "`bpo-24583 `__: Fix crash when set is " "mutated while being updated." msgstr "" -#: ../build/NEWS:26386 +#: ../build/NEWS:26421 msgid "" "`bpo-24407 `__: Fix crash when dict is " "mutated while being updated." msgstr "" -#: ../build/NEWS:26388 +#: ../build/NEWS:26423 msgid "" "`bpo-24619 `__: New approach for " "tokenizing async/await. As a consequence, it is now possible to have one-" "line 'async def foo(): await ..' functions." msgstr "" -#: ../build/NEWS:26391 +#: ../build/NEWS:26426 msgid "" "`bpo-24687 `__: Plug refleak on " "SyntaxError in function parameters annotations." msgstr "" -#: ../build/NEWS:26393 +#: ../build/NEWS:26428 msgid "" "`bpo-15944 `__: memoryview: Allow " "arbitrary formats when casting to bytes. Patch by Martin Panter." msgstr "" -#: ../build/NEWS:26399 +#: ../build/NEWS:26434 msgid "" "`bpo-23441 `__: rcompleter now prints a " "tab character instead of displaying possible completions for an empty word. " "Initial patch by Martin Sekera." msgstr "" -#: ../build/NEWS:26402 +#: ../build/NEWS:26437 msgid "" "`bpo-24683 `__: Fixed crashes in _json " "functions called with arguments of inappropriate type." msgstr "" -#: ../build/NEWS:26405 +#: ../build/NEWS:26440 msgid "" "`bpo-21697 `__: shutil.copytree() now " "correctly handles symbolic links that point to directories. Patch by " "Eduardo Seabra and Thomas Kluyver." msgstr "" -#: ../build/NEWS:26408 +#: ../build/NEWS:26443 msgid "" "`bpo-14373 `__: Fixed segmentation fault " "when gc.collect() is called during constructing lru_cache (C implementation)." msgstr "" -#: ../build/NEWS:26411 +#: ../build/NEWS:26446 msgid "" "`bpo-24695 `__: Fix a regression in " "traceback.print_exception(). If exc_traceback is None we shouldn't print a " "traceback header like described in the documentation." msgstr "" -#: ../build/NEWS:26415 +#: ../build/NEWS:26450 msgid "" "`bpo-24620 `__: Random.setstate() now " "validates the value of state last element." msgstr "" -#: ../build/NEWS:26418 +#: ../build/NEWS:26453 msgid "" "`bpo-22485 `__: Fixed an issue that " "caused `inspect.getsource` to return incorrect results on nested functions." msgstr "" -#: ../build/NEWS:26421 +#: ../build/NEWS:26456 msgid "" "`bpo-22153 `__: Improve unittest docs. " "Patch from Martin Panter and evilzero." msgstr "" -#: ../build/NEWS:26423 +#: ../build/NEWS:26458 msgid "" "`bpo-24580 `__: Symbolic group " "references to open group in re patterns now are explicitly forbidden as well " "as numeric group references." msgstr "" -#: ../build/NEWS:26426 +#: ../build/NEWS:26461 msgid "" "`bpo-24206 `__: Fixed __eq__ and __ne__ " "methods of inspect classes." msgstr "" -#: ../build/NEWS:26428 +#: ../build/NEWS:26463 msgid "" "`bpo-24631 `__: Fixed regression in the " "timeit module with multiline setup." msgstr "" -#: ../build/NEWS:26436 +#: ../build/NEWS:26471 msgid "" "`bpo-24608 `__: chunk.Chunk.read() now " "always returns bytes, not str." msgstr "" -#: ../build/NEWS:26438 +#: ../build/NEWS:26473 msgid "" "`bpo-18684 `__: Fixed reading out of the " "buffer in the re module." msgstr "" -#: ../build/NEWS:26440 +#: ../build/NEWS:26475 msgid "" "`bpo-24259 `__: tarfile now raises a " "ReadError if an archive is truncated inside a data segment." msgstr "" -#: ../build/NEWS:26443 +#: ../build/NEWS:26478 msgid "" "`bpo-15014 `__: SMTP.auth() and SMTP." "login() now support RFC 4954's optional initial-response argument to the " "SMTP AUTH command." msgstr "" -#: ../build/NEWS:26446 +#: ../build/NEWS:26481 msgid "" "`bpo-24669 `__: Fix inspect.getsource() " "for 'async def' functions. Patch by Kai Groner." msgstr "" -#: ../build/NEWS:26449 +#: ../build/NEWS:26484 msgid "" "`bpo-24688 `__: ast.get_docstring() for " "'async def' functions." msgstr "" -#: ../build/NEWS:26454 +#: ../build/NEWS:26489 msgid "" "`bpo-24603 `__: Update Windows builds " "and OS X 10.5 installer to use OpenSSL 1.0.2d." msgstr "" -#: ../build/NEWS:26459 +#: ../build/NEWS:26494 msgid "Python 3.5.0 beta 3" msgstr "" -#: ../build/NEWS:26461 +#: ../build/NEWS:26496 msgid "*Release date: 2015-07-05*" msgstr "" -#: ../build/NEWS:26466 +#: ../build/NEWS:26501 msgid "" "`bpo-24467 `__: Fixed possible buffer " "over-read in bytearray. The bytearray object now always allocates place for " "trailing null byte and it's buffer now is always null-terminated." msgstr "" -#: ../build/NEWS:26470 +#: ../build/NEWS:26505 msgid "Upgrade to Unicode 8.0.0." msgstr "" -#: ../build/NEWS:26472 +#: ../build/NEWS:26507 msgid "" "`bpo-24345 `__: Add Py_tp_finalize slot " "for the stable ABI." msgstr "" -#: ../build/NEWS:26474 +#: ../build/NEWS:26509 msgid "" "`bpo-24400 `__: Introduce a distinct " "type for :pep:`492` coroutines; add types.CoroutineType, inspect." @@ -40889,38 +40843,38 @@ msgid "" "coroutines--use inspect.isawaitable instead." msgstr "" -#: ../build/NEWS:26485 +#: ../build/NEWS:26520 msgid "" "`bpo-24450 `__: Add gi_yieldfrom to " "generators and cr_await to coroutines. Contributed by Benno Leslie and Yury " "Selivanov." msgstr "" -#: ../build/NEWS:26488 +#: ../build/NEWS:26523 msgid "" "`bpo-19235 `__: Add new RecursionError " "exception. Patch by Georg Brandl." msgstr "" -#: ../build/NEWS:26493 +#: ../build/NEWS:26528 msgid "" "`bpo-21750 `__: mock_open.read_data can " "now be read from each instance, as it could in Python 3.3." msgstr "" -#: ../build/NEWS:26496 +#: ../build/NEWS:26531 msgid "" "`bpo-24552 `__: Fix use after free in an " "error case of the _pickle module." msgstr "" -#: ../build/NEWS:26498 +#: ../build/NEWS:26533 msgid "" "`bpo-24514 `__: tarfile now tolerates " "number fields consisting of only whitespace." msgstr "" -#: ../build/NEWS:26501 +#: ../build/NEWS:26536 msgid "" "`bpo-19176 `__: Fixed doctype() related " "bugs in C implementation of ElementTree. A deprecation warning no longer " @@ -40929,92 +40883,92 @@ msgid "" "target's doctype() is called. Based on patch by Martin Panter." msgstr "" -#: ../build/NEWS:26507 +#: ../build/NEWS:26542 msgid "" "`bpo-20387 `__: Restore semantic round-" "trip correctness in tokenize/untokenize for tab-indented blocks." msgstr "" -#: ../build/NEWS:26510 +#: ../build/NEWS:26545 msgid "" "`bpo-24456 `__: Fixed possible buffer " "over-read in adpcm2lin() and lin2adpcm() functions of the audioop module." msgstr "" -#: ../build/NEWS:26513 +#: ../build/NEWS:26548 msgid "" "`bpo-24336 `__: The contextmanager " "decorator now works with functions with keyword arguments called \"func\" " "and \"self\". Patch by Martin Panter." msgstr "" -#: ../build/NEWS:26516 +#: ../build/NEWS:26551 msgid "" "`bpo-24522 `__: Fix possible integer " "overflow in json accelerator module." msgstr "" -#: ../build/NEWS:26518 +#: ../build/NEWS:26553 msgid "" "`bpo-24489 `__: ensure a previously set " "C errno doesn't disturb cmath.polar()." msgstr "" -#: ../build/NEWS:26520 +#: ../build/NEWS:26555 msgid "" "`bpo-24408 `__: Fixed AttributeError in " "measure() and metrics() methods of tkinter.Font." msgstr "" -#: ../build/NEWS:26523 +#: ../build/NEWS:26558 msgid "" "`bpo-14373 `__: C implementation of " "functools.lru_cache() now can be used with methods." msgstr "" -#: ../build/NEWS:26526 +#: ../build/NEWS:26561 msgid "" "`bpo-24347 `__: Set KeyError if " "PyDict_GetItemWithError returns NULL." msgstr "" -#: ../build/NEWS:26528 +#: ../build/NEWS:26563 msgid "" "`bpo-24348 `__: Drop superfluous incref/" "decref." msgstr "" -#: ../build/NEWS:26530 +#: ../build/NEWS:26565 msgid "" "`bpo-24359 `__: Check for changed " "OrderedDict size during iteration." msgstr "" -#: ../build/NEWS:26532 +#: ../build/NEWS:26567 msgid "" "`bpo-24368 `__: Support keyword " "arguments in OrderedDict methods." msgstr "" -#: ../build/NEWS:26534 +#: ../build/NEWS:26569 msgid "" "`bpo-24362 `__: Simplify the C " "OrderedDict fast nodes resize logic." msgstr "" -#: ../build/NEWS:26536 +#: ../build/NEWS:26571 msgid "" "`bpo-24377 `__: Fix a ref leak in " "OrderedDict.__repr__." msgstr "" -#: ../build/NEWS:26538 +#: ../build/NEWS:26573 msgid "" "`bpo-24369 `__: Defend against key-" "changes during iteration." msgstr "" -#: ../build/NEWS:26543 +#: ../build/NEWS:26578 msgid "" "`bpo-24373 `__: _testmultiphase and " "xxlimited now use tp_traverse and tp_finalize to avoid reference leaks " @@ -41022,41 +40976,41 @@ msgid "" "`__ for details)" msgstr "" -#: ../build/NEWS:26550 +#: ../build/NEWS:26585 msgid "" "`bpo-24458 `__: Update documentation to " "cover multi-phase initialization for extension modules (PEP 489). Patch by " "Petr Viktorin." msgstr "" -#: ../build/NEWS:26553 +#: ../build/NEWS:26588 msgid "" "`bpo-24351 `__: Clarify what is meant by " "\"identifier\" in the context of string.Template instances." msgstr "" -#: ../build/NEWS:26559 +#: ../build/NEWS:26594 msgid "" "`bpo-24432 `__: Update Windows builds " "and OS X 10.5 installer to use OpenSSL 1.0.2c." msgstr "" -#: ../build/NEWS:26564 +#: ../build/NEWS:26599 msgid "Python 3.5.0 beta 2" msgstr "" -#: ../build/NEWS:26566 +#: ../build/NEWS:26601 msgid "*Release date: 2015-05-31*" msgstr "" -#: ../build/NEWS:26571 +#: ../build/NEWS:26606 msgid "" "`bpo-24284 `__: The startswith and " "endswith methods of the str class no longer return True when finding the " "empty string and the indexes are completely out of range." msgstr "" -#: ../build/NEWS:26575 +#: ../build/NEWS:26610 msgid "" "`bpo-24115 `__: Update uses of " "PyObject_IsTrue(), PyObject_Not(), PyObject_IsInstance(), " @@ -41064,228 +41018,228 @@ msgid "" "errors correctly." msgstr "" -#: ../build/NEWS:26579 +#: ../build/NEWS:26614 msgid "" "`bpo-24328 `__: Fix importing one " "character extension modules." msgstr "" -#: ../build/NEWS:26581 +#: ../build/NEWS:26616 msgid "" "`bpo-11205 `__: In dictionary displays, " "evaluate the key before the value." msgstr "" -#: ../build/NEWS:26583 +#: ../build/NEWS:26618 msgid "" "`bpo-24285 `__: Fixed regression that " "prevented importing extension modules from inside packages. Patch by Petr " "Viktorin." msgstr "" -#: ../build/NEWS:26589 +#: ../build/NEWS:26624 msgid "" "`bpo-23247 `__: Fix a crash in the " "StreamWriter.reset() of CJK codecs." msgstr "" -#: ../build/NEWS:26591 +#: ../build/NEWS:26626 msgid "" "`bpo-24270 `__: Add math.isclose() and " "cmath.isclose() functions as per :pep:`485`. Contributed by Chris Barker and " "Tal Einat." msgstr "" -#: ../build/NEWS:26594 +#: ../build/NEWS:26629 msgid "" "`bpo-5633 `__: Fixed timeit when the " "statement is a string and the setup is not." msgstr "" -#: ../build/NEWS:26597 +#: ../build/NEWS:26632 msgid "" "`bpo-24326 `__: Fixed audioop.ratecv() " "with non-default weightB argument. Original patch by David Moore." msgstr "" -#: ../build/NEWS:26600 +#: ../build/NEWS:26635 msgid "" "`bpo-16991 `__: Add a C implementation " "of OrderedDict." msgstr "" -#: ../build/NEWS:26602 +#: ../build/NEWS:26637 msgid "" "`bpo-23934 `__: Fix inspect.signature to " "fail correctly for builtin types lacking signature information. Initial " "patch by James Powell." msgstr "" -#: ../build/NEWS:26607 +#: ../build/NEWS:26642 msgid "Python 3.5.0 beta 1" msgstr "" -#: ../build/NEWS:26609 +#: ../build/NEWS:26644 msgid "*Release date: 2015-05-24*" msgstr "" -#: ../build/NEWS:26614 +#: ../build/NEWS:26649 msgid "" "`bpo-24276 `__: Fixed optimization of " "property descriptor getter." msgstr "" -#: ../build/NEWS:26616 +#: ../build/NEWS:26651 msgid "" "`bpo-24268 `__: PEP 489: Multi-phase " "extension module initialization. Patch by Petr Viktorin." msgstr "" -#: ../build/NEWS:26619 +#: ../build/NEWS:26654 msgid "" "`bpo-23955 `__: Add pyvenv.cfg option to " "suppress registry/environment lookup for generating sys.path on Windows." msgstr "" -#: ../build/NEWS:26622 +#: ../build/NEWS:26657 msgid "" "`bpo-24257 `__: Fixed system error in " "the comparison of faked types.SimpleNamespace." msgstr "" -#: ../build/NEWS:26625 +#: ../build/NEWS:26660 msgid "" "`bpo-22939 `__: Fixed integer overflow " "in iterator object. Patch by Clement Rouault." msgstr "" -#: ../build/NEWS:26628 +#: ../build/NEWS:26663 msgid "" "`bpo-23985 `__: Fix a possible buffer " "overrun when deleting a slice from the front of a bytearray and then " "appending some other bytes data." msgstr "" -#: ../build/NEWS:26631 +#: ../build/NEWS:26666 msgid "" "`bpo-24102 `__: Fixed exception type " "checking in standard error handlers." msgstr "" -#: ../build/NEWS:26633 +#: ../build/NEWS:26668 msgid "" "`bpo-15027 `__: The UTF-32 encoder is " "now 3x to 7x faster." msgstr "" -#: ../build/NEWS:26635 +#: ../build/NEWS:26670 msgid "" "`bpo-23290 `__: Optimize set_merge() for " "cases where the target is empty. (Contributed by Serhiy Storchaka.)" msgstr "" -#: ../build/NEWS:26638 +#: ../build/NEWS:26673 msgid "" "`bpo-2292 `__: PEP 448: Additional " "Unpacking Generalizations." msgstr "" -#: ../build/NEWS:26640 +#: ../build/NEWS:26675 msgid "" "`bpo-24096 `__: Make warnings." "warn_explicit more robust against mutation of the warnings.filters list." msgstr "" -#: ../build/NEWS:26643 +#: ../build/NEWS:26678 msgid "" "`bpo-23996 `__: Avoid a crash when a " "delegated generator raises an unnormalized StopIteration exception. Patch " "by Stefan Behnel." msgstr "" -#: ../build/NEWS:26646 +#: ../build/NEWS:26681 msgid "" "`bpo-23910 `__: Optimize property() " "getter calls. Patch by Joe Jevnik." msgstr "" -#: ../build/NEWS:26648 +#: ../build/NEWS:26683 msgid "" "`bpo-23911 `__: Move path-based " "importlib bootstrap code to a separate frozen module." msgstr "" -#: ../build/NEWS:26651 +#: ../build/NEWS:26686 msgid "" "`bpo-24192 `__: Fix namespace package " "imports." msgstr "" -#: ../build/NEWS:26653 +#: ../build/NEWS:26688 msgid "" "`bpo-24022 `__: Fix tokenizer crash when " "processing undecodable source code." msgstr "" -#: ../build/NEWS:26655 +#: ../build/NEWS:26690 msgid "" "`bpo-9951 `__: Added a hex() method to " "bytes, bytearray, and memoryview." msgstr "" -#: ../build/NEWS:26657 +#: ../build/NEWS:26692 msgid "" "`bpo-22906 `__: PEP 479: Change " "StopIteration handling inside generators." msgstr "" -#: ../build/NEWS:26659 +#: ../build/NEWS:26694 msgid "" "`bpo-24017 `__: PEP 492: Coroutines with " "async and await syntax." msgstr "" -#: ../build/NEWS:26664 +#: ../build/NEWS:26699 msgid "" "`bpo-14373 `__: Added C implementation " "of functools.lru_cache(). Based on patches by Matt Joiner and Alexey " "Kachayev." msgstr "" -#: ../build/NEWS:26667 +#: ../build/NEWS:26702 msgid "" "`bpo-24230 `__: The tempfile module now " "accepts bytes for prefix, suffix and dir parameters and returns bytes in " "such situations (matching the os module APIs)." msgstr "" -#: ../build/NEWS:26671 +#: ../build/NEWS:26706 msgid "" "`bpo-22189 `__: collections.UserString " "now supports __getnewargs__(), __rmod__(), casefold(), format_map(), " "isprintable(), and maketrans(). Patch by Joe Jevnik." msgstr "" -#: ../build/NEWS:26675 +#: ../build/NEWS:26710 msgid "" "`bpo-24244 `__: Prevents termination " "when an invalid format string is encountered on Windows in strftime." msgstr "" -#: ../build/NEWS:26678 +#: ../build/NEWS:26713 msgid "" "`bpo-23973 `__: PEP 484: Add the typing " "module." msgstr "" -#: ../build/NEWS:26680 +#: ../build/NEWS:26715 msgid "" "`bpo-23086 `__: The collections.abc." "Sequence() abstract base class added *start* and *stop* parameters to the " "index() mixin. Patch by Devin Jeanpierre." msgstr "" -#: ../build/NEWS:26684 +#: ../build/NEWS:26719 msgid "" "`bpo-20035 `__: Replaced the ``tkinter." "_fix`` module used for setting up the Tcl/Tk environment on Windows with a " @@ -41293,13 +41247,13 @@ msgid "" "to the environment." msgstr "" -#: ../build/NEWS:26688 +#: ../build/NEWS:26723 msgid "" "`bpo-24257 `__: Fixed segmentation fault " "in sqlite3.Row constructor with faked cursor type." msgstr "" -#: ../build/NEWS:26691 +#: ../build/NEWS:26726 msgid "" "`bpo-15836 `__: assertRaises(), " "assertRaisesRegex(), assertWarns() and assertWarnsRegex() assertments now " @@ -41307,13 +41261,13 @@ msgid "" "on patch by Daniel Wagner-Hall." msgstr "" -#: ../build/NEWS:26695 +#: ../build/NEWS:26730 msgid "" "`bpo-9858 `__: Add missing method stubs " "to _io.RawIOBase. Patch by Laura Rupprecht." msgstr "" -#: ../build/NEWS:26698 +#: ../build/NEWS:26733 msgid "" "`bpo-22955 `__: attrgetter, itemgetter " "and methodcaller objects in the operator module now support pickling. Added " @@ -41321,7 +41275,7 @@ msgid "" "Rosenberg." msgstr "" -#: ../build/NEWS:26702 +#: ../build/NEWS:26737 msgid "" "`bpo-22107 `__: tempfile.gettempdir() " "and tempfile.mkdtemp() now try again when a directory with the chosen name " @@ -41329,156 +41283,156 @@ msgid "" "early if parent directory is not valid (not exists or is a file) on Windows." msgstr "" -#: ../build/NEWS:26707 +#: ../build/NEWS:26742 msgid "" "`bpo-23780 `__: Improved error message " "in os.path.join() with single argument." msgstr "" -#: ../build/NEWS:26709 +#: ../build/NEWS:26744 msgid "" "`bpo-6598 `__: Increased time precision " "and random number range in email.utils.make_msgid() to strengthen the " "uniqueness of the message ID." msgstr "" -#: ../build/NEWS:26712 +#: ../build/NEWS:26747 msgid "" "`bpo-24091 `__: Fixed various crashes in " "corner cases in C implementation of ElementTree." msgstr "" -#: ../build/NEWS:26715 +#: ../build/NEWS:26750 msgid "" "`bpo-21931 `__: msilib.FCICreate() now " "raises TypeError in the case of a bad argument instead of a ValueError with " "a bogus FCI error number. Patch by Jeffrey Armstrong." msgstr "" -#: ../build/NEWS:26719 +#: ../build/NEWS:26754 msgid "" "`bpo-13866 `__: *quote_via* argument " "added to urllib.parse.urlencode." msgstr "" -#: ../build/NEWS:26721 +#: ../build/NEWS:26756 msgid "" "`bpo-20098 `__: New mangle_from policy " "option for email, default True for compat32, but False for all other " "policies." msgstr "" -#: ../build/NEWS:26724 +#: ../build/NEWS:26759 msgid "" "`bpo-24211 `__: The email library now " "supports RFC 6532: it can generate headers using utf-8 instead of encoded " "words." msgstr "" -#: ../build/NEWS:26727 +#: ../build/NEWS:26762 msgid "" "`bpo-16314 `__: Added support for the " "LZMA compression in distutils." msgstr "" -#: ../build/NEWS:26729 +#: ../build/NEWS:26764 msgid "" "`bpo-21804 `__: poplib now supports RFC " "6856 (UTF8)." msgstr "" -#: ../build/NEWS:26731 +#: ../build/NEWS:26766 msgid "" "`bpo-18682 `__: Optimized pprint " "functions for builtin scalar types." msgstr "" -#: ../build/NEWS:26733 +#: ../build/NEWS:26768 msgid "" "`bpo-22027 `__: smtplib now supports RFC " "6531 (SMTPUTF8)." msgstr "" -#: ../build/NEWS:26735 +#: ../build/NEWS:26770 msgid "" "`bpo-23488 `__: Random generator objects " "now consume 2x less memory on 64-bit." msgstr "" -#: ../build/NEWS:26737 +#: ../build/NEWS:26772 msgid "" "`bpo-1322 `__: platform.dist() and " "platform.linux_distribution() functions are now deprecated. Initial patch " "by Vajrasky Kok." msgstr "" -#: ../build/NEWS:26740 +#: ../build/NEWS:26775 msgid "" "`bpo-22486 `__: Added the math.gcd() " "function. The fractions.gcd() function now is deprecated. Based on patch " "by Mark Dickinson." msgstr "" -#: ../build/NEWS:26743 +#: ../build/NEWS:26778 msgid "" "`bpo-24064 `__: Property() docstrings " "are now writeable. (Patch by Berker Peksag.)" msgstr "" -#: ../build/NEWS:26746 +#: ../build/NEWS:26781 msgid "" "`bpo-22681 `__: Added support for the " "koi8_t encoding." msgstr "" -#: ../build/NEWS:26748 +#: ../build/NEWS:26783 msgid "" "`bpo-22682 `__: Added support for the " "kz1048 encoding." msgstr "" -#: ../build/NEWS:26750 +#: ../build/NEWS:26785 msgid "" "`bpo-23796 `__: peek and read1 methods " "of BufferedReader now raise ValueError if they called on a closed object. " "Patch by John Hergenroeder." msgstr "" -#: ../build/NEWS:26753 +#: ../build/NEWS:26788 msgid "" "`bpo-21795 `__: smtpd now supports the " "8BITMIME extension whenever the new *decode_data* constructor argument is " "set to False." msgstr "" -#: ../build/NEWS:26756 +#: ../build/NEWS:26791 msgid "" "`bpo-24155 `__: optimize heapq.heapify() " "for better cache performance when heapifying large lists." msgstr "" -#: ../build/NEWS:26759 +#: ../build/NEWS:26794 msgid "" "`bpo-21800 `__: imaplib now supports RFC " "5161 (enable), RFC 6855 (utf8/internationalized email) and automatically " "encodes non-ASCII usernames and passwords to UTF8." msgstr "" -#: ../build/NEWS:26763 +#: ../build/NEWS:26798 msgid "" "`bpo-20274 `__: When calling a _sqlite." "Connection, it now complains if passed any keyword arguments. Previously it " "silently ignored them." msgstr "" -#: ../build/NEWS:26766 +#: ../build/NEWS:26801 msgid "" "`bpo-20274 `__: Remove ignored and " "erroneous \"kwargs\" parameters from three METH_VARARGS methods on _sqlite." "Connection." msgstr "" -#: ../build/NEWS:26769 +#: ../build/NEWS:26804 msgid "" "`bpo-24134 `__: assertRaises(), " "assertRaisesRegex(), assertWarns() and assertWarnsRegex() checks now emits a " @@ -41486,220 +41440,220 @@ msgid "" "passed in the context manager mode." msgstr "" -#: ../build/NEWS:26774 +#: ../build/NEWS:26809 msgid "" "`bpo-24018 `__: Add a collections.abc." "Generator abstract base class. Contributed by Stefan Behnel." msgstr "" -#: ../build/NEWS:26777 +#: ../build/NEWS:26812 msgid "" "`bpo-23880 `__: Tkinter's getint() and " "getdouble() now support Tcl_Obj. Tkinter's getdouble() now supports any " "numbers (in particular int)." msgstr "" -#: ../build/NEWS:26780 +#: ../build/NEWS:26815 msgid "" "`bpo-22619 `__: Added negative limit " "support in the traceback module. Based on patch by Dmitry Kazakov." msgstr "" -#: ../build/NEWS:26783 +#: ../build/NEWS:26818 msgid "" "`bpo-24094 `__: Fix possible crash in " "json.encode with poorly behaved dict subclasses." msgstr "" -#: ../build/NEWS:26786 +#: ../build/NEWS:26821 msgid "" "`bpo-9246 `__: On POSIX, os.getcwd() now " "supports paths longer than 1025 bytes. Patch written by William Orr." msgstr "" -#: ../build/NEWS:26789 +#: ../build/NEWS:26824 msgid "" "`bpo-17445 `__: add difflib.diff_bytes() " "to support comparison of byte strings (fixes a regression from Python 2)." msgstr "" -#: ../build/NEWS:26792 +#: ../build/NEWS:26827 msgid "" "`bpo-23917 `__: Fall back to sequential " "compilation when ProcessPoolExecutor doesn't exist. Patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:26795 +#: ../build/NEWS:26830 msgid "" "`bpo-23008 `__: Fixed resolving " "attributes with boolean value is False in pydoc." msgstr "" -#: ../build/NEWS:26798 +#: ../build/NEWS:26833 msgid "" "Fix asyncio issue 235: LifoQueue and PriorityQueue's put didn't increment " "unfinished tasks (this bug was introduced when JoinableQueue was merged with " "Queue)." msgstr "" -#: ../build/NEWS:26802 +#: ../build/NEWS:26837 msgid "" "`bpo-23908 `__: os functions now reject " "paths with embedded null character on Windows instead of silently truncating " "them." msgstr "" -#: ../build/NEWS:26805 +#: ../build/NEWS:26840 msgid "" "`bpo-23728 `__: binascii.crc_hqx() could " "return an integer outside of the range 0-0xffff for empty data." msgstr "" -#: ../build/NEWS:26808 +#: ../build/NEWS:26843 msgid "" "`bpo-23887 `__: urllib.error.HTTPError " "now has a proper repr() representation. Patch by Berker Peksag." msgstr "" -#: ../build/NEWS:26811 +#: ../build/NEWS:26846 msgid "" "asyncio: New event loop APIs: set_task_factory() and get_task_factory()." msgstr "" -#: ../build/NEWS:26813 +#: ../build/NEWS:26848 msgid "asyncio: async() function is deprecated in favour of ensure_future()." msgstr "" -#: ../build/NEWS:26815 +#: ../build/NEWS:26850 msgid "" "`bpo-24178 `__: asyncio.Lock, Condition, " "Semaphore, and BoundedSemaphore support new 'async with' syntax. " "Contributed by Yury Selivanov." msgstr "" -#: ../build/NEWS:26818 +#: ../build/NEWS:26853 msgid "" "`bpo-24179 `__: Support 'async for' for " "asyncio.StreamReader. Contributed by Yury Selivanov." msgstr "" -#: ../build/NEWS:26821 +#: ../build/NEWS:26856 msgid "" "`bpo-24184 `__: Add AsyncIterator and " "AsyncIterable ABCs to collections.abc. Contributed by Yury Selivanov." msgstr "" -#: ../build/NEWS:26824 +#: ../build/NEWS:26859 msgid "" "`bpo-22547 `__: Implement informative " "__repr__ for inspect.BoundArguments. Contributed by Yury Selivanov." msgstr "" -#: ../build/NEWS:26827 +#: ../build/NEWS:26862 msgid "" "`bpo-24190 `__: Implement inspect." "BoundArgument.apply_defaults() method. Contributed by Yury Selivanov." msgstr "" -#: ../build/NEWS:26830 +#: ../build/NEWS:26865 msgid "" "`bpo-20691 `__: Add 'follow_wrapped' " "argument to inspect.Signature.from_callable() and inspect.signature(). " "Contributed by Yury Selivanov." msgstr "" -#: ../build/NEWS:26834 +#: ../build/NEWS:26869 msgid "" "`bpo-24248 `__: Deprecate inspect." "Signature.from_function() and inspect.Signature.from_builtin()." msgstr "" -#: ../build/NEWS:26837 +#: ../build/NEWS:26872 msgid "" "`bpo-23898 `__: Fix inspect." "classify_class_attrs() to support attributes with overloaded __eq__ and " "__bool__. Patch by Mike Bayer." msgstr "" -#: ../build/NEWS:26840 +#: ../build/NEWS:26875 msgid "" "`bpo-24298 `__: Fix inspect.signature() " "to correctly unwrap wrappers around bound methods." msgstr "" -#: ../build/NEWS:26846 +#: ../build/NEWS:26881 msgid "" "`bpo-23184 `__: remove unused names and " "imports in idlelib. Initial patch by Al Sweigart." msgstr "" -#: ../build/NEWS:26852 +#: ../build/NEWS:26887 msgid "" "`bpo-21520 `__: test_zipfile no longer " "fails if the word 'bad' appears anywhere in the name of the current " "directory." msgstr "" -#: ../build/NEWS:26855 +#: ../build/NEWS:26890 msgid "" "`bpo-9517 `__: Move script_helper into " "the support package. Patch by Christie Wilson." msgstr "" -#: ../build/NEWS:26861 +#: ../build/NEWS:26896 msgid "" "`bpo-22155 `__: Add File Handlers " "subsection with createfilehandler to tkinter doc. Remove obsolete example " "from FAQ. Patch by Martin Panter." msgstr "" -#: ../build/NEWS:26864 +#: ../build/NEWS:26899 msgid "" "`bpo-24029 `__: Document the name " "binding behavior for submodule imports." msgstr "" -#: ../build/NEWS:26866 +#: ../build/NEWS:26901 msgid "" "`bpo-24077 `__: Fix typo in man page for " "-I command option: -s, not -S" msgstr "" -#: ../build/NEWS:26871 +#: ../build/NEWS:26906 msgid "" "`bpo-24000 `__: Improved Argument " "Clinic's mapping of converters to legacy \"format units\". Updated the " "documentation to match." msgstr "" -#: ../build/NEWS:26874 +#: ../build/NEWS:26909 msgid "" "`bpo-24001 `__: Argument Clinic " "converters now use accept={type} instead of types={'type'} to specify the " "types the converter accepts." msgstr "" -#: ../build/NEWS:26877 +#: ../build/NEWS:26912 msgid "" "`bpo-23330 `__: h2py now supports " "arbitrary filenames in #include." msgstr "" -#: ../build/NEWS:26879 +#: ../build/NEWS:26914 msgid "" "`bpo-24031 `__: make patchcheck now " "supports git checkouts, too." msgstr "" -#: ../build/NEWS:26883 +#: ../build/NEWS:26918 msgid "Python 3.5.0 alpha 4" msgstr "" -#: ../build/NEWS:26885 +#: ../build/NEWS:26920 msgid "*Release date: 2015-04-19*" msgstr "" -#: ../build/NEWS:26890 +#: ../build/NEWS:26925 msgid "" "`bpo-22980 `__: Under Linux, GNU/" "KFreeBSD and the Hurd, C extensions now include the architecture triplet in " @@ -41708,26 +41662,26 @@ msgid "" "style information." msgstr "" -#: ../build/NEWS:26895 +#: ../build/NEWS:26930 msgid "" "`bpo-22631 `__: Added Linux-specific " "socket constant CAN_RAW_FD_FRAMES. Patch courtesy of Joe Jevnik." msgstr "" -#: ../build/NEWS:26898 +#: ../build/NEWS:26933 msgid "" "`bpo-23731 `__: Implement :pep:`488`: " "removal of .pyo files." msgstr "" -#: ../build/NEWS:26900 +#: ../build/NEWS:26935 msgid "" "`bpo-23726 `__: Don't enable GC for user " "subclasses of non-GC types that don't add any new fields. Patch by Eugene " "Toder." msgstr "" -#: ../build/NEWS:26903 +#: ../build/NEWS:26938 msgid "" "`bpo-23309 `__: Avoid a deadlock at " "shutdown if a daemon thread is aborted while it is holding a lock to a " @@ -41735,43 +41689,43 @@ msgid "" "(typically stdout or stderr). A fatal error is emitted instead." msgstr "" -#: ../build/NEWS:26908 +#: ../build/NEWS:26943 msgid "" "`bpo-22977 `__: Fixed formatting Windows " "error messages on Wine. Patch by Martin Panter." msgstr "" -#: ../build/NEWS:26911 +#: ../build/NEWS:26946 msgid "" "`bpo-23466 `__: %c, %o, %x, and %X in " "bytes formatting now raise TypeError on non-integer input." msgstr "" -#: ../build/NEWS:26914 +#: ../build/NEWS:26949 msgid "" "`bpo-24044 `__: Fix possible null " "pointer dereference in list.sort in out of memory conditions." msgstr "" -#: ../build/NEWS:26917 +#: ../build/NEWS:26952 msgid "" "`bpo-21354 `__: PyCFunction_New function " "is exposed by python DLL again." msgstr "" -#: ../build/NEWS:26922 +#: ../build/NEWS:26957 msgid "" "`bpo-23840 `__: tokenize.open() now " "closes the temporary binary file on error to fix a resource warning." msgstr "" -#: ../build/NEWS:26925 +#: ../build/NEWS:26960 msgid "" "`bpo-16914 `__: new debuglevel 2 in " "smtplib adds timestamps to debug output." msgstr "" -#: ../build/NEWS:26927 +#: ../build/NEWS:26962 msgid "" "`bpo-7159 `__: urllib.request now " "supports sending auth credentials automatically after the first 401. This " @@ -41779,39 +41733,39 @@ msgid "" "python.org/issue19494>`__ and supersedes that change." msgstr "" -#: ../build/NEWS:26931 +#: ../build/NEWS:26966 msgid "" "`bpo-23703 `__: Fix a regression in " "urljoin() introduced in 901e4e52b20a. Patch by Demian Brecht." msgstr "" -#: ../build/NEWS:26934 +#: ../build/NEWS:26969 msgid "" "`bpo-4254 `__: Adds _curses." "update_lines_cols(). Patch by Arnon Yaari" msgstr "" -#: ../build/NEWS:26936 +#: ../build/NEWS:26971 msgid "" "`bpo-19933 `__: Provide default argument " "for ndigits in round. Patch by Vajrasky Kok." msgstr "" -#: ../build/NEWS:26939 +#: ../build/NEWS:26974 msgid "" "`bpo-23193 `__: Add a numeric_owner " "parameter to tarfile.TarFile.extract and tarfile.TarFile.extractall. Patch " "by Michael Vogt and Eric Smith." msgstr "" -#: ../build/NEWS:26942 +#: ../build/NEWS:26977 msgid "" "`bpo-23342 `__: Add a subprocess.run() " "function than returns a CalledProcess instance for a more consistent API " "than the existing call* functions." msgstr "" -#: ../build/NEWS:26945 +#: ../build/NEWS:26980 msgid "" "`bpo-21217 `__: inspect.getsourcelines() " "now tries to compute the start and end lines from the code object, fixing an " @@ -41819,48 +41773,48 @@ msgid "" "Ballinger and Allison Kaptur." msgstr "" -#: ../build/NEWS:26949 +#: ../build/NEWS:26984 msgid "" "`bpo-24521 `__: Fix possible integer " "overflows in the pickle module." msgstr "" -#: ../build/NEWS:26951 +#: ../build/NEWS:26986 msgid "" "`bpo-22931 `__: Allow '[' and ']' in " "cookie values." msgstr "" -#: ../build/NEWS:26953 +#: ../build/NEWS:26988 msgid "The keywords attribute of functools.partial is now always a dictionary." msgstr "" -#: ../build/NEWS:26955 +#: ../build/NEWS:26990 msgid "" "`bpo-23811 `__: Add missing newline to " "the PyCompileError error message. Patch by Alex Shkop." msgstr "" -#: ../build/NEWS:26958 +#: ../build/NEWS:26993 msgid "" "`bpo-21116 `__: Avoid blowing memory " "when allocating a multiprocessing shared array that's larger than 50% of the " "available RAM. Patch by Médéric Boquien." msgstr "" -#: ../build/NEWS:26962 +#: ../build/NEWS:26997 msgid "" "`bpo-22982 `__: Improve BOM handling " "when seeking to multiple positions of a writable text file." msgstr "" -#: ../build/NEWS:26965 +#: ../build/NEWS:27000 msgid "" "`bpo-23464 `__: Removed deprecated " "asyncio JoinableQueue." msgstr "" -#: ../build/NEWS:26967 +#: ../build/NEWS:27002 msgid "" "`bpo-23529 `__: Limit the size of " "decompressed data when reading from GzipFile, BZ2File or LZMAFile. This " @@ -41869,47 +41823,47 @@ msgid "" "Nikolaus Rath." msgstr "" -#: ../build/NEWS:26972 +#: ../build/NEWS:27007 msgid "" "`bpo-21859 `__: Added Python " "implementation of io.FileIO." msgstr "" -#: ../build/NEWS:26974 +#: ../build/NEWS:27009 msgid "" "`bpo-23865 `__: close() methods in " "multiple modules now are idempotent and more robust at shutdown. If they " "need to release multiple resources, all are released even if errors occur." msgstr "" -#: ../build/NEWS:26978 +#: ../build/NEWS:27013 msgid "" "`bpo-23400 `__: Raise same exception on " "both Python 2 and 3 if sem_open is not available. Patch by Davin Potts." msgstr "" -#: ../build/NEWS:26981 +#: ../build/NEWS:27016 msgid "" "`bpo-10838 `__: The subprocess now " "module includes SubprocessError and TimeoutError in its list of exported " "names for the users wild enough to use ``from subprocess import *``." msgstr "" -#: ../build/NEWS:26985 +#: ../build/NEWS:27020 msgid "" "`bpo-23411 `__: Added DefragResult, " "ParseResult, SplitResult, DefragResultBytes, ParseResultBytes, and " "SplitResultBytes to urllib.parse.__all__. Patch by Martin Panter." msgstr "" -#: ../build/NEWS:26989 +#: ../build/NEWS:27024 msgid "" "`bpo-23881 `__: urllib.request." "ftpwrapper constructor now closes the socket if the FTP connection failed to " "fix a ResourceWarning." msgstr "" -#: ../build/NEWS:26992 +#: ../build/NEWS:27027 msgid "" "`bpo-23853 `__: :meth:`socket.socket." "sendall` does no more reset the socket timeout each time data is sent " @@ -41917,14 +41871,14 @@ msgid "" "all data." msgstr "" -#: ../build/NEWS:26996 +#: ../build/NEWS:27031 msgid "" "`bpo-22721 `__: An order of multiline " "pprint output of set or dict containing orderable and non-orderable elements " "no longer depends on iteration order of set or dict." msgstr "" -#: ../build/NEWS:27000 +#: ../build/NEWS:27035 msgid "" "`bpo-15133 `__: _tkinter.tkapp." "getboolean() now supports Tcl_Obj and always returns bool. tkinter." @@ -41932,45 +41886,45 @@ msgid "" "Tcl_Obj). tkinter.BooleanVar.get() now always returns bool." msgstr "" -#: ../build/NEWS:27005 +#: ../build/NEWS:27040 msgid "" "`bpo-10590 `__: xml.sax.parseString() " "now supports string argument." msgstr "" -#: ../build/NEWS:27007 +#: ../build/NEWS:27042 msgid "" "`bpo-23338 `__: Fixed formatting ctypes " "error messages on Cygwin. Patch by Makoto Kato." msgstr "" -#: ../build/NEWS:27010 +#: ../build/NEWS:27045 msgid "" "`bpo-15582 `__: inspect.getdoc() now " "follows inheritance chains." msgstr "" -#: ../build/NEWS:27012 +#: ../build/NEWS:27047 msgid "" "`bpo-2175 `__: SAX parsers now support a " "character stream of InputSource object." msgstr "" -#: ../build/NEWS:27015 +#: ../build/NEWS:27050 msgid "" "`bpo-16840 `__: Tkinter now supports 64-" "bit integers added in Tcl 8.4 and arbitrary precision integers added in Tcl " "8.5." msgstr "" -#: ../build/NEWS:27018 +#: ../build/NEWS:27053 msgid "" "`bpo-23834 `__: Fix socket.sendto(), use " "the C Py_ssize_t type to store the result of sendto() instead of the C int " "type." msgstr "" -#: ../build/NEWS:27021 +#: ../build/NEWS:27056 msgid "" "`bpo-23618 `__: :meth:`socket.socket." "connect` now waits until the connection completes instead of raising :exc:" @@ -41980,45 +41934,45 @@ msgid "" "for non-blocking sockets." msgstr "" -#: ../build/NEWS:27027 +#: ../build/NEWS:27062 msgid "" "`bpo-21526 `__: Tkinter now supports new " "boolean type in Tcl 8.5." msgstr "" -#: ../build/NEWS:27029 +#: ../build/NEWS:27064 msgid "" "`bpo-23836 `__: Fix the faulthandler " "module to handle reentrant calls to its signal handlers." msgstr "" -#: ../build/NEWS:27032 +#: ../build/NEWS:27067 msgid "" "`bpo-23838 `__: linecache now clears the " "cache and returns an empty result on MemoryError." msgstr "" -#: ../build/NEWS:27035 +#: ../build/NEWS:27070 msgid "" "`bpo-10395 `__: Added os.path." "commonpath(). Implemented in posixpath and ntpath. Based on patch by Rafik " "Draoui." msgstr "" -#: ../build/NEWS:27038 +#: ../build/NEWS:27073 msgid "" "`bpo-23611 `__: Serializing more " "\"lookupable\" objects (such as unbound methods or nested classes) now are " "supported with pickle protocols < 4." msgstr "" -#: ../build/NEWS:27041 +#: ../build/NEWS:27076 msgid "" "`bpo-13583 `__: sqlite3.Row now supports " "slice indexing." msgstr "" -#: ../build/NEWS:27043 +#: ../build/NEWS:27078 msgid "" "`bpo-18473 `__: Fixed 2to3 and 3to2 " "compatible pickle mappings. Fixed ambiguous reverse mappings. Added many " @@ -42026,7 +41980,7 @@ msgid "" "with full name mapping." msgstr "" -#: ../build/NEWS:27047 +#: ../build/NEWS:27082 msgid "" "`bpo-23485 `__: select.select() is now " "retried automatically with the recomputed timeout when interrupted by a " @@ -42034,103 +41988,103 @@ msgid "" "part of the :pep:`475`." msgstr "" -#: ../build/NEWS:27051 +#: ../build/NEWS:27086 msgid "" "`bpo-23752 `__: When built from an " "existing file descriptor, io.FileIO() now only calls fstat() once. Before " "fstat() was called twice, which was not necessary." msgstr "" -#: ../build/NEWS:27055 +#: ../build/NEWS:27090 msgid "" "`bpo-23704 `__: collections.deque() " "objects now support __add__, __mul__, and __imul__()." msgstr "" -#: ../build/NEWS:27058 +#: ../build/NEWS:27093 msgid "" "`bpo-23171 `__: csv.Writer.writerow() " "now supports arbitrary iterables." msgstr "" -#: ../build/NEWS:27060 +#: ../build/NEWS:27095 msgid "" "`bpo-23745 `__: The new email header " "parser now handles duplicate MIME parameter names without error, similar to " "how get_param behaves." msgstr "" -#: ../build/NEWS:27063 +#: ../build/NEWS:27098 msgid "" "`bpo-22117 `__: Fix os.utime(), it now " "rounds the timestamp towards minus infinity (-inf) instead of rounding " "towards zero." msgstr "" -#: ../build/NEWS:27066 +#: ../build/NEWS:27101 msgid "" "`bpo-23310 `__: Fix MagicMock's " "initializer to work with __methods__, just like configure_mock(). Patch by " "Kasia Jachim." msgstr "" -#: ../build/NEWS:27072 +#: ../build/NEWS:27107 msgid "" "`bpo-23817 `__: FreeBSD now uses \"1.0\" " "in the SOVERSION as other operating systems, instead of just \"1\"." msgstr "" -#: ../build/NEWS:27075 +#: ../build/NEWS:27110 msgid "" "`bpo-23501 `__: Argument Clinic now " "generates code into separate files by default." msgstr "" -#: ../build/NEWS:27081 +#: ../build/NEWS:27116 msgid "" "`bpo-23799 `__: Added test.support." "start_threads() for running and cleaning up multiple threads." msgstr "" -#: ../build/NEWS:27084 +#: ../build/NEWS:27119 msgid "" "`bpo-22390 `__: test.regrtest now emits " "a warning if temporary files or directories are left after running a test." msgstr "" -#: ../build/NEWS:27090 +#: ../build/NEWS:27125 msgid "" "`bpo-18128 `__: pygettext now uses " "standard +NNNN format in the POT-Creation-Date header." msgstr "" -#: ../build/NEWS:27093 +#: ../build/NEWS:27128 msgid "" "`bpo-23935 `__: Argument Clinic's " "understanding of format units accepting bytes, bytearrays, and buffers is " "now consistent with both the documentation and the implementation." msgstr "" -#: ../build/NEWS:27097 +#: ../build/NEWS:27132 msgid "" "`bpo-23944 `__: Argument Clinic now " "wraps long impl prototypes at column 78." msgstr "" -#: ../build/NEWS:27099 +#: ../build/NEWS:27134 msgid "" "`bpo-20586 `__: Argument Clinic now " "ensures that functions without docstrings have signatures." msgstr "" -#: ../build/NEWS:27102 +#: ../build/NEWS:27137 msgid "" "`bpo-23492 `__: Argument Clinic now " "generates argument parsing code with PyArg_Parse instead of PyArg_ParseTuple " "if possible." msgstr "" -#: ../build/NEWS:27105 +#: ../build/NEWS:27140 msgid "" "`bpo-23500 `__: Argument Clinic is now " "smarter about generating the \"#ifndef\" (empty) definition of the methoddef " @@ -42139,21 +42093,21 @@ msgid "" "than immediately after the first use." msgstr "" -#: ../build/NEWS:27114 +#: ../build/NEWS:27149 msgid "" "`bpo-23998 `__: PyImport_ReInitLock() " "now checks for lock allocation error" msgstr "" -#: ../build/NEWS:27118 +#: ../build/NEWS:27153 msgid "Python 3.5.0 alpha 3" msgstr "" -#: ../build/NEWS:27120 +#: ../build/NEWS:27155 msgid "*Release date: 2015-03-28*" msgstr "" -#: ../build/NEWS:27125 +#: ../build/NEWS:27160 msgid "" "`bpo-23573 `__: Increased performance of " "string search operations (str.find, str.index, str.count, the in operator, " @@ -42161,44 +42115,44 @@ msgid "" "UCS4)." msgstr "" -#: ../build/NEWS:27129 +#: ../build/NEWS:27164 msgid "" "`bpo-23753 `__: Python doesn't support " "anymore platforms without stat() or fstat(), these functions are always " "required." msgstr "" -#: ../build/NEWS:27132 +#: ../build/NEWS:27167 msgid "" "`bpo-23681 `__: The -b option now " "affects comparisons of bytes with int." msgstr "" -#: ../build/NEWS:27134 +#: ../build/NEWS:27169 msgid "" "`bpo-23632 `__: Memoryviews now allow " "tuple indexing (including for multi-dimensional memoryviews)." msgstr "" -#: ../build/NEWS:27137 +#: ../build/NEWS:27172 msgid "" "`bpo-23192 `__: Fixed generator " "lambdas. Patch by Bruno Cauet." msgstr "" -#: ../build/NEWS:27139 +#: ../build/NEWS:27174 msgid "" "`bpo-23629 `__: Fix the default " "__sizeof__ implementation for variable-sized objects." msgstr "" -#: ../build/NEWS:27145 +#: ../build/NEWS:27180 msgid "" "`bpo-14260 `__: The groupindex attribute " "of regular expression pattern object now is non-modifiable mapping." msgstr "" -#: ../build/NEWS:27148 +#: ../build/NEWS:27183 msgid "" "`bpo-23792 `__: Ignore KeyboardInterrupt " "when the pydoc pager is active. This mimics the behavior of the standard " @@ -42206,51 +42160,51 @@ msgid "" "itself is still running." msgstr "" -#: ../build/NEWS:27152 +#: ../build/NEWS:27187 msgid "" "`bpo-23775 `__: pprint() of OrderedDict " "now outputs the same representation as repr()." msgstr "" -#: ../build/NEWS:27155 +#: ../build/NEWS:27190 msgid "" "`bpo-23765 `__: Removed IsBadStringPtr " "calls in ctypes" msgstr "" -#: ../build/NEWS:27157 +#: ../build/NEWS:27192 msgid "" "`bpo-22364 `__: Improved some re error " "messages using regex for hints." msgstr "" -#: ../build/NEWS:27159 +#: ../build/NEWS:27194 msgid "" "`bpo-23742 `__: ntpath.expandvars() no " "longer loses unbalanced single quotes." msgstr "" -#: ../build/NEWS:27161 +#: ../build/NEWS:27196 msgid "" "`bpo-21717 `__: The zipfile.ZipFile.open " "function now supports 'x' (exclusive creation) mode." msgstr "" -#: ../build/NEWS:27164 +#: ../build/NEWS:27199 msgid "" "`bpo-21802 `__: The reader in " "BufferedRWPair now is closed even when closing writer failed in " "BufferedRWPair.close()." msgstr "" -#: ../build/NEWS:27167 +#: ../build/NEWS:27202 msgid "" "`bpo-23622 `__: Unknown escapes in " "regular expressions that consist of ``'\\'`` and ASCII letter now raise a " "deprecation warning and will be forbidden in Python 3.6." msgstr "" -#: ../build/NEWS:27171 +#: ../build/NEWS:27206 msgid "" "`bpo-23671 `__: string.Template now " "allows specifying the \"self\" parameter as a keyword argument. string." @@ -42258,79 +42212,79 @@ msgid "" "parameters as keyword arguments." msgstr "" -#: ../build/NEWS:27175 +#: ../build/NEWS:27210 msgid "" "`bpo-23502 `__: The pprint module now " "supports mapping proxies." msgstr "" -#: ../build/NEWS:27177 +#: ../build/NEWS:27212 msgid "" "`bpo-17530 `__: pprint now wraps long " "bytes objects and bytearrays." msgstr "" -#: ../build/NEWS:27179 +#: ../build/NEWS:27214 msgid "" "`bpo-22687 `__: Fixed some corner cases " "in breaking words in tetxtwrap. Got rid of quadratic complexity in breaking " "long words." msgstr "" -#: ../build/NEWS:27182 +#: ../build/NEWS:27217 msgid "" "`bpo-4727 `__: The copy module now uses " "pickle protocol 4 (PEP 3154) and supports copying of instances of classes " "whose __new__ method takes keyword-only arguments." msgstr "" -#: ../build/NEWS:27186 +#: ../build/NEWS:27221 msgid "" "`bpo-23491 `__: Added a zipapp module to " "support creating executable zip file archives of Python code. Registered \"." "pyz\" and \".pyzw\" extensions on Windows for these archives (PEP 441)." msgstr "" -#: ../build/NEWS:27190 +#: ../build/NEWS:27225 msgid "" "`bpo-23657 `__: Avoid explicit checks " "for str in zipapp, adding support for pathlib.Path objects as arguments." msgstr "" -#: ../build/NEWS:27193 +#: ../build/NEWS:27228 msgid "" "`bpo-23688 `__: Added support of " "arbitrary bytes-like objects and avoided unnecessary copying of memoryview " "in gzip.GzipFile.write(). Original patch by Wolfgang Maier." msgstr "" -#: ../build/NEWS:27197 +#: ../build/NEWS:27232 msgid "" "`bpo-23252 `__: Added support for " "writing ZIP files to unseekable streams." msgstr "" -#: ../build/NEWS:27199 +#: ../build/NEWS:27234 msgid "" "`bpo-23647 `__: Increase imaplib's " "MAXLINE to accommodate modern mailbox sizes." msgstr "" -#: ../build/NEWS:27201 +#: ../build/NEWS:27236 msgid "" "`bpo-23539 `__: If body is None, http." "client.HTTPConnection.request now sets Content-Length to 0 for PUT, POST, " "and PATCH headers to avoid 411 errors from some web servers." msgstr "" -#: ../build/NEWS:27205 +#: ../build/NEWS:27240 msgid "" "`bpo-22351 `__: The nntplib.NNTP " "constructor no longer leaves the connection and socket open until the " "garbage collector cleans them up. Patch by Martin Panter." msgstr "" -#: ../build/NEWS:27209 +#: ../build/NEWS:27244 msgid "" "`bpo-23704 `__: collections.deque() " "objects now support methods for index(), insert(), and copy(). This allows " @@ -42338,7 +42292,7 @@ msgid "" "substitutability for lists." msgstr "" -#: ../build/NEWS:27213 +#: ../build/NEWS:27248 msgid "" "`bpo-23715 `__: :func:`signal." "sigwaitinfo` and :func:`signal.sigtimedwait` are now retried when " @@ -42347,42 +42301,42 @@ msgid "" "with a monotonic clock when it is retried." msgstr "" -#: ../build/NEWS:27218 +#: ../build/NEWS:27253 msgid "" "`bpo-23001 `__: Few functions in modules " "mmap, ossaudiodev, socket, ssl, and codecs, that accepted only read-only " "bytes-like object now accept writable bytes-like object too." msgstr "" -#: ../build/NEWS:27222 +#: ../build/NEWS:27257 msgid "" "`bpo-23646 `__: If time.sleep() is " "interrupted by a signal, the sleep is now retried with the recomputed delay, " "except if the signal handler raises an exception (PEP 475)." msgstr "" -#: ../build/NEWS:27226 +#: ../build/NEWS:27261 msgid "" "`bpo-23136 `__: _strptime now uniformly " "handles all days in week 0, including Dec 30 of previous year. Based on " "patch by Jim Carroll." msgstr "" -#: ../build/NEWS:27229 +#: ../build/NEWS:27264 msgid "" "`bpo-23700 `__: Iterator of " "NamedTemporaryFile now keeps a reference to NamedTemporaryFile instance. " "Patch by Bohuslav Kabrda." msgstr "" -#: ../build/NEWS:27232 +#: ../build/NEWS:27267 msgid "" "`bpo-22903 `__: The fake test case " "created by unittest.loader when it fails importing a test module is now " "picklable." msgstr "" -#: ../build/NEWS:27235 +#: ../build/NEWS:27270 msgid "" "`bpo-22181 `__: On Linux, os.urandom() " "now uses the new getrandom() syscall if available, syscall introduced in the " @@ -42390,7 +42344,7 @@ msgid "" "the need of a file descriptor and waits until the kernel has enough entropy." msgstr "" -#: ../build/NEWS:27240 +#: ../build/NEWS:27275 msgid "" "`bpo-2211 `__: Updated the implementation " "of the http.cookies.Morsel class. Setting attributes key, value and " @@ -42401,115 +42355,115 @@ msgid "" "quoting values. Added new tests. Original patch by Demian Brecht." msgstr "" -#: ../build/NEWS:27248 +#: ../build/NEWS:27283 msgid "" "`bpo-18983 `__: Allow selection of " "output units in timeit. Patch by Julian Gindi." msgstr "" -#: ../build/NEWS:27251 +#: ../build/NEWS:27286 msgid "" "`bpo-23631 `__: Fix traceback." "format_list when a traceback has been mutated." msgstr "" -#: ../build/NEWS:27253 +#: ../build/NEWS:27288 msgid "" "`bpo-23568 `__: Add rdivmod support to " "MagicMock() objects. Patch by Håkan Lövdahl." msgstr "" -#: ../build/NEWS:27256 +#: ../build/NEWS:27291 msgid "" "`bpo-2052 `__: Add charset parameter to " "HtmlDiff.make_file()." msgstr "" -#: ../build/NEWS:27258 +#: ../build/NEWS:27293 msgid "" "`bpo-23668 `__: Support os.truncate and " "os.ftruncate on Windows." msgstr "" -#: ../build/NEWS:27260 +#: ../build/NEWS:27295 msgid "" "`bpo-23138 `__: Fixed parsing cookies " "with absent keys or values in cookiejar. Patch by Demian Brecht." msgstr "" -#: ../build/NEWS:27263 +#: ../build/NEWS:27298 msgid "" "`bpo-23051 `__: multiprocessing.Pool " "methods imap() and imap_unordered() now handle exceptions raised by an " "iterator. Patch by Alon Diamant and Davin Potts." msgstr "" -#: ../build/NEWS:27267 +#: ../build/NEWS:27302 msgid "" "`bpo-23581 `__: Add matmul support to " "MagicMock. Patch by Håkan Lövdahl." msgstr "" -#: ../build/NEWS:27269 +#: ../build/NEWS:27304 msgid "" "`bpo-23566 `__: enable(), register(), " "dump_traceback() and dump_traceback_later() functions of faulthandler now " "accept file descriptors. Patch by Wei Wu." msgstr "" -#: ../build/NEWS:27273 +#: ../build/NEWS:27308 msgid "" "`bpo-22928 `__: Disabled HTTP header " "injections in http.client. Original patch by Demian Brecht." msgstr "" -#: ../build/NEWS:27276 +#: ../build/NEWS:27311 msgid "" "`bpo-23615 `__: Modules bz2, tarfile and " "tokenize now can be reloaded with imp.reload(). Patch by Thomas Kluyver." msgstr "" -#: ../build/NEWS:27279 +#: ../build/NEWS:27314 msgid "" "`bpo-23605 `__: os.walk() now calls os." "scandir() instead of os.listdir(). The usage of os.scandir() reduces the " "number of calls to os.stat(). Initial patch written by Ben Hoyt." msgstr "" -#: ../build/NEWS:27286 +#: ../build/NEWS:27321 msgid "" "`bpo-23585 `__: make patchcheck will " "ensure the interpreter is built." msgstr "" -#: ../build/NEWS:27291 +#: ../build/NEWS:27326 msgid "" "`bpo-23583 `__: Added tests for standard " "IO streams in IDLE." msgstr "" -#: ../build/NEWS:27293 +#: ../build/NEWS:27328 msgid "" "`bpo-22289 `__: Prevent test_urllib2net " "failures due to ftp connection timeout." msgstr "" -#: ../build/NEWS:27298 +#: ../build/NEWS:27333 msgid "" "`bpo-22826 `__: The result of open() in " "Tools/freeze/bkfile.py is now better compatible with regular files (in " "particular it now supports the context management protocol)." msgstr "" -#: ../build/NEWS:27304 +#: ../build/NEWS:27339 msgid "Python 3.5.0 alpha 2" msgstr "" -#: ../build/NEWS:27306 +#: ../build/NEWS:27341 msgid "*Release date: 2015-03-09*" msgstr "" -#: ../build/NEWS:27311 +#: ../build/NEWS:27346 msgid "" "`bpo-23571 `__: PyObject_Call() and " "PyCFunction_Call() now raise a SystemError if a function returns a result " @@ -42517,72 +42471,72 @@ msgid "" "exception." msgstr "" -#: ../build/NEWS:27318 +#: ../build/NEWS:27353 msgid "" "`bpo-22524 `__: New os.scandir() " "function, part of the :pep:`471`: \"os.scandir() function -- a better and " "faster directory iterator\". Patch written by Ben Hoyt." msgstr "" -#: ../build/NEWS:27322 +#: ../build/NEWS:27357 msgid "" "`bpo-23103 `__: Reduced the memory " "consumption of IPv4Address and IPv6Address." msgstr "" -#: ../build/NEWS:27324 +#: ../build/NEWS:27359 msgid "" "`bpo-21793 `__: BaseHTTPRequestHandler " "again logs response code as numeric, not as stringified enum. Patch by " "Demian Brecht." msgstr "" -#: ../build/NEWS:27327 +#: ../build/NEWS:27362 msgid "" "`bpo-23476 `__: In the ssl module, " "enable OpenSSL's X509_V_FLAG_TRUSTED_FIRST flag on certificate stores when " "it is available." msgstr "" -#: ../build/NEWS:27330 +#: ../build/NEWS:27365 msgid "" "`bpo-23576 `__: Avoid stalling in SSL " "reads when EOF has been reached in the SSL layer but the underlying " "connection hasn't been closed." msgstr "" -#: ../build/NEWS:27333 +#: ../build/NEWS:27368 msgid "" "`bpo-23504 `__: Added an __all__ to the " "types module." msgstr "" -#: ../build/NEWS:27335 +#: ../build/NEWS:27370 msgid "" "`bpo-23563 `__: Optimized utility " "functions in urllib.parse." msgstr "" -#: ../build/NEWS:27337 +#: ../build/NEWS:27372 msgid "" "`bpo-7830 `__: Flatten nested functools." "partial." msgstr "" -#: ../build/NEWS:27339 +#: ../build/NEWS:27374 msgid "" "`bpo-20204 `__: Added the __module__ " "attribute to _tkinter classes." msgstr "" -#: ../build/NEWS:27341 +#: ../build/NEWS:27376 msgid "" "`bpo-19980 `__: Improved help() for non-" "recognized strings. help('') now shows the help on str. help('help') now " "shows the help on help(). Original patch by Mark Lawrence." msgstr "" -#: ../build/NEWS:27345 +#: ../build/NEWS:27380 msgid "" "`bpo-23521 `__: Corrected pure python " "implementation of timedelta division. Eliminated OverflowError from " @@ -42590,233 +42544,233 @@ msgid "" "division." msgstr "" -#: ../build/NEWS:27349 +#: ../build/NEWS:27384 msgid "" "`bpo-21619 `__: Popen objects no longer " "leave a zombie after exit in the with statement if the pipe was broken. " "Patch by Martin Panter." msgstr "" -#: ../build/NEWS:27352 +#: ../build/NEWS:27387 msgid "" "`bpo-22936 `__: Make it possible to show " "local variables in tracebacks for both the traceback module and unittest." msgstr "" -#: ../build/NEWS:27355 +#: ../build/NEWS:27390 msgid "" "`bpo-15955 `__: Add an option to limit " "the output size in bz2.decompress(). Patch by Nikolaus Rath." msgstr "" -#: ../build/NEWS:27358 +#: ../build/NEWS:27393 msgid "" "`bpo-6639 `__: Module-level turtle " "functions no longer raise TclError after closing the window." msgstr "" -#: ../build/NEWS:27361 +#: ../build/NEWS:27396 msgid "" "`bpo-814253 `__: Group references and " "conditional group references now work in lookbehind assertions in regular " "expressions. (See also: `bpo-9179 `__)" msgstr "" -#: ../build/NEWS:27364 +#: ../build/NEWS:27399 msgid "" "`bpo-23215 `__: Multibyte codecs with " "custom error handlers that ignores errors consumed too much memory and " "raised SystemError or MemoryError. Original patch by Aleksi Torhamo." msgstr "" -#: ../build/NEWS:27368 +#: ../build/NEWS:27403 msgid "" "`bpo-5700 `__: io.FileIO() called flush() " "after closing the file. flush() was not called in close() if closefd=False." msgstr "" -#: ../build/NEWS:27371 +#: ../build/NEWS:27406 msgid "" "`bpo-23374 `__: Fixed pydoc failure with " "non-ASCII files when stdout encoding differs from file system encoding (e.g. " "on Mac OS)." msgstr "" -#: ../build/NEWS:27374 +#: ../build/NEWS:27409 msgid "" "`bpo-23481 `__: Remove RC4 from the SSL " "module's default cipher list." msgstr "" -#: ../build/NEWS:27376 +#: ../build/NEWS:27411 msgid "" "`bpo-21548 `__: Fix pydoc.synopsis() and " "pydoc.apropos() on modules with empty docstrings." msgstr "" -#: ../build/NEWS:27379 +#: ../build/NEWS:27414 msgid "" "`bpo-22885 `__: Fixed arbitrary code " "execution vulnerability in the dbm.dumb module. Original patch by Claudiu " "Popa." msgstr "" -#: ../build/NEWS:27382 +#: ../build/NEWS:27417 msgid "" "`bpo-23239 `__: ssl.match_hostname() now " "supports matching of IP addresses." msgstr "" -#: ../build/NEWS:27384 +#: ../build/NEWS:27419 msgid "" "`bpo-23146 `__: Fix mishandling of " "absolute Windows paths with forward slashes in pathlib." msgstr "" -#: ../build/NEWS:27387 +#: ../build/NEWS:27422 msgid "" "`bpo-23096 `__: Pickle representation of " "floats with protocol 0 now is the same for both Python and C implementations." msgstr "" -#: ../build/NEWS:27390 +#: ../build/NEWS:27425 msgid "" "`bpo-19105 `__: pprint now more " "efficiently uses free space at the right." msgstr "" -#: ../build/NEWS:27392 +#: ../build/NEWS:27427 msgid "" "`bpo-14910 `__: Add allow_abbrev " "parameter to argparse.ArgumentParser. Patch by Jonathan Paugh, Steven " "Bethard, paul j3 and Daniel Eriksson." msgstr "" -#: ../build/NEWS:27395 +#: ../build/NEWS:27430 msgid "" "`bpo-21717 `__: tarfile.open() now " "supports 'x' (exclusive creation) mode." msgstr "" -#: ../build/NEWS:27397 +#: ../build/NEWS:27432 msgid "" "`bpo-23344 `__: marshal.dumps() is now " "20-25% faster on average." msgstr "" -#: ../build/NEWS:27399 +#: ../build/NEWS:27434 msgid "" "`bpo-20416 `__: marshal.dumps() with " "protocols 3 and 4 is now 40-50% faster on average." msgstr "" -#: ../build/NEWS:27402 +#: ../build/NEWS:27437 msgid "" "`bpo-23421 `__: Fixed compression in " "tarfile CLI. Patch by wdv4758h." msgstr "" -#: ../build/NEWS:27404 +#: ../build/NEWS:27439 msgid "" "`bpo-23367 `__: Fix possible overflows " "in the unicodedata module." msgstr "" -#: ../build/NEWS:27406 +#: ../build/NEWS:27441 msgid "" "`bpo-23361 `__: Fix possible overflow in " "Windows subprocess creation code." msgstr "" -#: ../build/NEWS:27408 +#: ../build/NEWS:27443 msgid "" "logging.handlers.QueueListener now takes a respect_handler_level keyword " "argument which, if set to True, will pass messages to handlers taking " "handler levels into account." msgstr "" -#: ../build/NEWS:27412 +#: ../build/NEWS:27447 msgid "" "`bpo-19705 `__: turtledemo now has a " "visual sorting algorithm demo. Original patch from Jason Yeo." msgstr "" -#: ../build/NEWS:27415 +#: ../build/NEWS:27450 msgid "" "`bpo-23801 `__: Fix issue where cgi." "FieldStorage did not always ignore the entire preamble to a multipart body." msgstr "" -#: ../build/NEWS:27421 +#: ../build/NEWS:27456 msgid "" "`bpo-23445 `__: pydebug builds now use " "\"gcc -Og\" where possible, to make the resulting executable faster." msgstr "" -#: ../build/NEWS:27424 +#: ../build/NEWS:27459 msgid "" "`bpo-23686 `__: Update OS X 10.5 " "installer build to use OpenSSL 1.0.2a." msgstr "" -#: ../build/NEWS:27429 +#: ../build/NEWS:27464 msgid "" "`bpo-20204 `__: Deprecation warning is " "now raised for builtin types without the __module__ attribute." msgstr "" -#: ../build/NEWS:27435 +#: ../build/NEWS:27470 msgid "" "`bpo-23465 `__: Implement :pep:`486` - " "Make the Python Launcher aware of virtual environments. Patch by Paul Moore." msgstr "" -#: ../build/NEWS:27438 +#: ../build/NEWS:27473 msgid "" "`bpo-23437 `__: Make user scripts " "directory versioned on Windows. Patch by Paul Moore." msgstr "" -#: ../build/NEWS:27443 +#: ../build/NEWS:27478 msgid "Python 3.5.0 alpha 1" msgstr "" -#: ../build/NEWS:27445 +#: ../build/NEWS:27480 msgid "*Release date: 2015-02-08*" msgstr "" -#: ../build/NEWS:27450 +#: ../build/NEWS:27485 msgid "" "`bpo-23285 `__: PEP 475 - EINTR handling." msgstr "" -#: ../build/NEWS:27452 +#: ../build/NEWS:27487 msgid "" "`bpo-22735 `__: Fix many edge cases " "(including crashes) involving custom mro() implementations." msgstr "" -#: ../build/NEWS:27455 +#: ../build/NEWS:27490 msgid "" "`bpo-22896 `__: Avoid using " "PyObject_AsCharBuffer(), PyObject_AsReadBuffer() and " "PyObject_AsWriteBuffer()." msgstr "" -#: ../build/NEWS:27458 +#: ../build/NEWS:27493 msgid "" "`bpo-21295 `__: Revert some changes " "(`bpo-16795 `__) to AST line numbers and " "column offsets that constituted a regression." msgstr "" -#: ../build/NEWS:27461 +#: ../build/NEWS:27496 msgid "" "`bpo-22986 `__: Allow changing an " "object's __class__ between a dynamic type and static type in some cases." msgstr "" -#: ../build/NEWS:27464 +#: ../build/NEWS:27499 msgid "" "`bpo-15859 `__: " "PyUnicode_EncodeFSDefault(), PyUnicode_EncodeMBCS() and " @@ -42825,199 +42779,199 @@ msgid "" "platforms other than Windows. Patch written by Campbell Barton." msgstr "" -#: ../build/NEWS:27469 +#: ../build/NEWS:27504 msgid "" "`bpo-21408 `__: The default __ne__() now " "returns NotImplemented if __eq__() returned NotImplemented. Original patch " "by Martin Panter." msgstr "" -#: ../build/NEWS:27472 +#: ../build/NEWS:27507 msgid "" "`bpo-23321 `__: Fixed a crash in str." "decode() when error handler returned replacement string longer than " "malformed input data." msgstr "" -#: ../build/NEWS:27475 +#: ../build/NEWS:27510 msgid "" "`bpo-22286 `__: The \"backslashreplace\" " "error handlers now works with decoding and translating." msgstr "" -#: ../build/NEWS:27478 +#: ../build/NEWS:27513 msgid "" "`bpo-23253 `__: Delay-load " "ShellExecute[AW] in os.startfile for reduced startup overhead on Windows." msgstr "" -#: ../build/NEWS:27481 +#: ../build/NEWS:27516 msgid "" "`bpo-22038 `__: pyatomic.h now uses " "stdatomic.h or GCC built-in functions for atomic memory access if available. " "Patch written by Vitor de Lima and Gustavo Temple." msgstr "" -#: ../build/NEWS:27485 +#: ../build/NEWS:27520 msgid "" "`bpo-20284 `__: %-interpolation (aka " "printf) formatting added for bytes and bytearray." msgstr "" -#: ../build/NEWS:27488 +#: ../build/NEWS:27523 msgid "" "`bpo-23048 `__: Fix jumping out of an " "infinite while loop in the pdb." msgstr "" -#: ../build/NEWS:27490 +#: ../build/NEWS:27525 msgid "" "`bpo-20335 `__: bytes constructor now " "raises TypeError when encoding or errors is specified with non-string " "argument. Based on patch by Renaud Blanch." msgstr "" -#: ../build/NEWS:27493 +#: ../build/NEWS:27528 msgid "" "`bpo-22834 `__: If the current working " "directory ends up being set to a non-existent directory then import will no " "longer raise FileNotFoundError." msgstr "" -#: ../build/NEWS:27496 +#: ../build/NEWS:27531 msgid "" "`bpo-22869 `__: Move the interpreter " "startup & shutdown code to a new dedicated pylifecycle.c module" msgstr "" -#: ../build/NEWS:27499 +#: ../build/NEWS:27534 msgid "" "`bpo-22847 `__: Improve method cache " "efficiency." msgstr "" -#: ../build/NEWS:27501 +#: ../build/NEWS:27536 msgid "" "`bpo-22335 `__: Fix crash when trying to " "enlarge a bytearray to 0x7fffffff bytes on a 32-bit platform." msgstr "" -#: ../build/NEWS:27504 +#: ../build/NEWS:27539 msgid "" "`bpo-22653 `__: Fix an assertion failure " "in debug mode when doing a reentrant dict insertion in debug mode." msgstr "" -#: ../build/NEWS:27507 +#: ../build/NEWS:27542 msgid "" "`bpo-22643 `__: Fix integer overflow in " "Unicode case operations (upper, lower, title, swapcase, casefold)." msgstr "" -#: ../build/NEWS:27510 +#: ../build/NEWS:27545 msgid "" "`bpo-17636 `__: Circular imports " "involving relative imports are now supported." msgstr "" -#: ../build/NEWS:27512 +#: ../build/NEWS:27547 msgid "" "`bpo-22604 `__: Fix assertion error in " "debug mode when dividing a complex number by (nan+0j)." msgstr "" -#: ../build/NEWS:27515 +#: ../build/NEWS:27550 msgid "" "`bpo-21052 `__: Do not raise " "ImportWarning when sys.path_hooks or sys.meta_path are set to None." msgstr "" -#: ../build/NEWS:27518 +#: ../build/NEWS:27553 msgid "" "`bpo-16518 `__: Use 'bytes-like object " "required' in error messages that previously used the far more cryptic \"'x' " "does not support the buffer protocol." msgstr "" -#: ../build/NEWS:27522 +#: ../build/NEWS:27557 msgid "" "`bpo-22470 `__: Fixed integer overflow " "issues in \"backslashreplace\", \"xmlcharrefreplace\", and \"surrogatepass\" " "error handlers." msgstr "" -#: ../build/NEWS:27525 +#: ../build/NEWS:27560 msgid "" "`bpo-22540 `__: speed up " "`PyObject_IsInstance` and `PyObject_IsSubclass` in the common case that the " "second argument has metaclass `type`." msgstr "" -#: ../build/NEWS:27528 +#: ../build/NEWS:27563 msgid "" "`bpo-18711 `__: Add a new " "`PyErr_FormatV` function, similar to `PyErr_Format` but accepting a " "`va_list` argument." msgstr "" -#: ../build/NEWS:27531 +#: ../build/NEWS:27566 msgid "" "`bpo-22520 `__: Fix overflow checking " "when generating the repr of a unicode object." msgstr "" -#: ../build/NEWS:27534 +#: ../build/NEWS:27569 msgid "" "`bpo-22519 `__: Fix overflow checking in " "PyBytes_Repr." msgstr "" -#: ../build/NEWS:27536 +#: ../build/NEWS:27571 msgid "" "`bpo-22518 `__: Fix integer overflow " "issues in latin-1 encoding." msgstr "" -#: ../build/NEWS:27538 +#: ../build/NEWS:27573 msgid "" "`bpo-16324 `__: _charset parameter of " "MIMEText now also accepts email.charset.Charset instances. Initial patch by " "Claude Paroz." msgstr "" -#: ../build/NEWS:27541 +#: ../build/NEWS:27576 msgid "" "`bpo-1764286 `__: Fix inspect." "getsource() to support decorated functions. Patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:27544 +#: ../build/NEWS:27579 msgid "" "`bpo-18554 `__: os.__all__ includes " "posix functions." msgstr "" -#: ../build/NEWS:27546 +#: ../build/NEWS:27581 msgid "" "`bpo-21391 `__: Use os.path.abspath in " "the shutil module." msgstr "" -#: ../build/NEWS:27548 +#: ../build/NEWS:27583 msgid "" "`bpo-11471 `__: avoid generating a " "JUMP_FORWARD instruction at the end of an if-block if there is no else-" "clause. Original patch by Eugene Toder." msgstr "" -#: ../build/NEWS:27551 +#: ../build/NEWS:27586 msgid "" "`bpo-22215 `__: Now ValueError is raised " "instead of TypeError when str or bytes argument contains not permitted null " "character or byte." msgstr "" -#: ../build/NEWS:27554 +#: ../build/NEWS:27589 msgid "" "`bpo-22258 `__: Fix the internal " "function set_inheritable() on Illumos. This platform exposes the function " @@ -43026,62 +42980,62 @@ msgid "" "slower ``fcntl()`` (``F_GETFD`` and then ``F_SETFD``)." msgstr "" -#: ../build/NEWS:27560 +#: ../build/NEWS:27595 msgid "" "`bpo-21389 `__: Displaying the " "__qualname__ of the underlying function in the repr of a bound method." msgstr "" -#: ../build/NEWS:27563 +#: ../build/NEWS:27598 msgid "" "`bpo-22206 `__: Using pthread, " "PyThread_create_key() now sets errno to ENOMEM and returns -1 (error) on " "integer overflow." msgstr "" -#: ../build/NEWS:27566 +#: ../build/NEWS:27601 msgid "" "`bpo-20184 `__: Argument Clinic based " "signature introspection added for 30 of the builtin functions." msgstr "" -#: ../build/NEWS:27569 +#: ../build/NEWS:27604 msgid "" "`bpo-22116 `__: C functions and methods " "(of the 'builtin_function_or_method' type) can now be weakref'ed. Patch by " "Wei Wu." msgstr "" -#: ../build/NEWS:27572 +#: ../build/NEWS:27607 msgid "" "`bpo-22077 `__: Improve index error " "messages for bytearrays, bytes, lists, and tuples by adding 'or slices'. " "Added ', not ' for bytearrays. Original patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:27576 +#: ../build/NEWS:27611 msgid "" "`bpo-20179 `__: Apply Argument Clinic to " "bytes and bytearray. Patch by Tal Einat." msgstr "" -#: ../build/NEWS:27579 +#: ../build/NEWS:27614 msgid "" "`bpo-22082 `__: Clear interned strings " "in slotdefs." msgstr "" -#: ../build/NEWS:27581 +#: ../build/NEWS:27616 msgid "Upgrade Unicode database to Unicode 7.0.0." msgstr "" -#: ../build/NEWS:27583 +#: ../build/NEWS:27618 msgid "" "`bpo-21897 `__: Fix a crash with the " "f_locals attribute with closure variables when frame.clear() has been called." msgstr "" -#: ../build/NEWS:27586 +#: ../build/NEWS:27621 msgid "" "`bpo-21205 `__: Add a new " "``__qualname__`` attribute to generator, the qualified name, and use it in " @@ -43090,7 +43044,7 @@ msgid "" "the code. Use ``gen.gi_code.co_name`` to get the name of the code." msgstr "" -#: ../build/NEWS:27592 +#: ../build/NEWS:27627 msgid "" "`bpo-21669 `__: With the aid of " "heuristics in SyntaxError.__init__, the parser now attempts to generate more " @@ -43098,14 +43052,14 @@ msgid "" "\"exec\" and \"print\" are used as statements." msgstr "" -#: ../build/NEWS:27596 +#: ../build/NEWS:27631 msgid "" "`bpo-21642 `__: In the conditional if-" "else expression, allow an integer written with no space between itself and " "the ``else`` keyword (e.g. ``True if 42else False``) to be valid syntax." msgstr "" -#: ../build/NEWS:27600 +#: ../build/NEWS:27635 msgid "" "`bpo-21523 `__: Fix over-pessimistic " "computation of the stack effect of some opcodes in the compiler. This also " @@ -43113,116 +43067,116 @@ msgid "" "a large number of \"and\" and \"or\" operators." msgstr "" -#: ../build/NEWS:27605 +#: ../build/NEWS:27640 msgid "" "`bpo-21418 `__: Fix a crash in the " "builtin function super() when called without argument and without current " "frame (ex: embedded Python)." msgstr "" -#: ../build/NEWS:27608 +#: ../build/NEWS:27643 msgid "" "`bpo-21425 `__: Fix flushing of standard " "streams in the interactive interpreter." msgstr "" -#: ../build/NEWS:27611 +#: ../build/NEWS:27646 msgid "" "`bpo-21435 `__: In rare cases, when " "running finalizers on objects in cyclic trash a bad pointer dereference " "could occur due to a subtle flaw in internal iteration logic." msgstr "" -#: ../build/NEWS:27615 +#: ../build/NEWS:27650 msgid "" "`bpo-21377 `__: PyBytes_Concat() now " "tries to concatenate in-place when the first argument has a reference count " "of 1. Patch by Nikolaus Rath." msgstr "" -#: ../build/NEWS:27618 +#: ../build/NEWS:27653 msgid "" "`bpo-20355 `__: -W command line options " "now have higher priority than the PYTHONWARNINGS environment variable. " "Patch by Arfrever." msgstr "" -#: ../build/NEWS:27621 +#: ../build/NEWS:27656 msgid "" "`bpo-21274 `__: Define PATH_MAX for GNU/" "Hurd in Python/pythonrun.c." msgstr "" -#: ../build/NEWS:27623 +#: ../build/NEWS:27658 msgid "" "`bpo-20904 `__: Support setting FPU " "precision on m68k." msgstr "" -#: ../build/NEWS:27625 +#: ../build/NEWS:27660 msgid "" "`bpo-21209 `__: Fix sending tuples to " "custom generator objects with the yield from syntax." msgstr "" -#: ../build/NEWS:27628 +#: ../build/NEWS:27663 msgid "" "`bpo-21193 `__: pow(a, b, c) now raises " "ValueError rather than TypeError when b is negative. Patch by Josh Rosenberg." msgstr "" -#: ../build/NEWS:27631 +#: ../build/NEWS:27666 msgid "" "`bpo-21176 `__: PEP 465: Add the '@' " "operator for matrix multiplication." msgstr "" -#: ../build/NEWS:27633 +#: ../build/NEWS:27668 msgid "" "`bpo-21134 `__: Fix segfault when str is " "called on an uninitialized UnicodeEncodeError, UnicodeDecodeError, or " "UnicodeTranslateError object." msgstr "" -#: ../build/NEWS:27636 +#: ../build/NEWS:27671 msgid "" "`bpo-19537 `__: Fix PyUnicode_DATA() " "alignment under m68k. Patch by Andreas Schwab." msgstr "" -#: ../build/NEWS:27639 +#: ../build/NEWS:27674 msgid "" "`bpo-20929 `__: Add a type cast to avoid " "shifting a negative number." msgstr "" -#: ../build/NEWS:27641 +#: ../build/NEWS:27676 msgid "" "`bpo-20731 `__: Properly position in " "source code files even if they are opened in text mode. Patch by Serhiy " "Storchaka." msgstr "" -#: ../build/NEWS:27644 +#: ../build/NEWS:27679 msgid "" "`bpo-20637 `__: Key-sharing now also " "works for instance dictionaries of subclasses. Patch by Peter Ingebretson." msgstr "" -#: ../build/NEWS:27647 +#: ../build/NEWS:27682 msgid "" "`bpo-8297 `__: Attributes missing from " "modules now include the module name in the error text. Original patch by " "ysj.ray." msgstr "" -#: ../build/NEWS:27650 +#: ../build/NEWS:27685 msgid "" "`bpo-19995 `__: %c, %o, %x, and %X now " "raise TypeError on non-integer input." msgstr "" -#: ../build/NEWS:27652 +#: ../build/NEWS:27687 msgid "" "`bpo-19655 `__: The ASDL parser - used " "by the build process to generate code for managing the Python AST in C - was " @@ -43231,27 +43185,27 @@ msgid "" "source base." msgstr "" -#: ../build/NEWS:27657 +#: ../build/NEWS:27692 msgid "" "`bpo-12546 `__: Allow ``\\x00`` to be " "used as a fill character when using str, int, float, and complex __format__ " "methods." msgstr "" -#: ../build/NEWS:27660 +#: ../build/NEWS:27695 msgid "" "`bpo-20480 `__: Add ipaddress." "reverse_pointer. Patch by Leon Weber." msgstr "" -#: ../build/NEWS:27662 +#: ../build/NEWS:27697 msgid "" "`bpo-13598 `__: Modify string.Formatter " "to support auto-numbering of replacement fields. It now matches the behavior " "of str.format() in this regard. Patches by Phil Elson and Ramchandra Apte." msgstr "" -#: ../build/NEWS:27666 +#: ../build/NEWS:27701 msgid "" "`bpo-8931 `__: Make alternate formatting " "('#') for type 'c' raise an exception. In versions prior to 3.5, '#' with " @@ -43259,81 +43213,81 @@ msgid "" "Landschoff." msgstr "" -#: ../build/NEWS:27670 +#: ../build/NEWS:27705 msgid "" "`bpo-23165 `__: Perform overflow checks " "before allocating memory in the _Py_char2wchar function." msgstr "" -#: ../build/NEWS:27676 +#: ../build/NEWS:27711 msgid "" "`bpo-23399 `__: pyvenv creates relative " "symlinks where possible." msgstr "" -#: ../build/NEWS:27678 +#: ../build/NEWS:27713 msgid "" "`bpo-20289 `__: cgi.FieldStorage() now " "supports the context management protocol." msgstr "" -#: ../build/NEWS:27681 +#: ../build/NEWS:27716 msgid "" "`bpo-13128 `__: Print response headers " "for CONNECT requests when debuglevel > 0. Patch by Demian Brecht." msgstr "" -#: ../build/NEWS:27684 +#: ../build/NEWS:27719 msgid "" "`bpo-15381 `__: Optimized io.BytesIO to " "make less allocations and copyings." msgstr "" -#: ../build/NEWS:27686 +#: ../build/NEWS:27721 msgid "" "`bpo-22818 `__: Splitting on a pattern " "that could match an empty string now raises a warning. Patterns that can " "only match empty strings are now rejected." msgstr "" -#: ../build/NEWS:27690 +#: ../build/NEWS:27725 msgid "" "`bpo-23099 `__: Closing io.BytesIO with " "exported buffer is rejected now to prevent corrupting exported buffer." msgstr "" -#: ../build/NEWS:27693 +#: ../build/NEWS:27728 msgid "" "`bpo-23326 `__: Removed __ne__ " "implementations. Since fixing default __ne__ implementation in `bpo-21408 " "`__ they are redundant." msgstr "" -#: ../build/NEWS:27696 +#: ../build/NEWS:27731 msgid "" "`bpo-23363 `__: Fix possible overflow in " "itertools.permutations." msgstr "" -#: ../build/NEWS:27698 +#: ../build/NEWS:27733 msgid "" "`bpo-23364 `__: Fix possible overflow in " "itertools.product." msgstr "" -#: ../build/NEWS:27700 +#: ../build/NEWS:27735 msgid "" "`bpo-23366 `__: Fixed possible integer " "overflow in itertools.combinations." msgstr "" -#: ../build/NEWS:27702 +#: ../build/NEWS:27737 msgid "" "`bpo-23369 `__: Fixed possible integer " "overflow in _json.encode_basestring_ascii." msgstr "" -#: ../build/NEWS:27705 +#: ../build/NEWS:27740 msgid "" "`bpo-23353 `__: Fix the exception " "handling of generators in PyEval_EvalFrameEx(). At entry, save or swap the " @@ -43342,116 +43296,116 @@ msgid "" "is WHY_YIELD or WHY_RETURN. Patch co-written with Antoine Pitrou." msgstr "" -#: ../build/NEWS:27711 +#: ../build/NEWS:27746 msgid "" "`bpo-14099 `__: Restored support of " "writing ZIP files to tellable but non-seekable streams." msgstr "" -#: ../build/NEWS:27714 +#: ../build/NEWS:27749 msgid "" "`bpo-14099 `__: Writing to ZipFile and " "reading multiple ZipExtFiles is threadsafe now." msgstr "" -#: ../build/NEWS:27717 +#: ../build/NEWS:27752 msgid "" "`bpo-19361 `__: JSON decoder now raises " "JSONDecodeError instead of ValueError." msgstr "" -#: ../build/NEWS:27719 +#: ../build/NEWS:27754 msgid "" "`bpo-18518 `__: timeit now rejects " "statements which can't be compiled outside a function or a loop (e.g. " "\"return\" or \"break\")." msgstr "" -#: ../build/NEWS:27722 +#: ../build/NEWS:27757 msgid "" "`bpo-23094 `__: Fixed readline with " "frames in Python implementation of pickle." msgstr "" -#: ../build/NEWS:27724 +#: ../build/NEWS:27759 msgid "" "`bpo-23268 `__: Fixed bugs in the " "comparison of ipaddress classes." msgstr "" -#: ../build/NEWS:27726 +#: ../build/NEWS:27761 msgid "" "`bpo-21408 `__: Removed incorrect " "implementations of __ne__() which didn't returned NotImplemented if __eq__() " "returned NotImplemented. The default __ne__() now works correctly." msgstr "" -#: ../build/NEWS:27730 +#: ../build/NEWS:27765 msgid "" "`bpo-19996 `__: :class:`email.feedparser." "FeedParser` now handles (malformed) headers with no key rather than assuming " "the body has started." msgstr "" -#: ../build/NEWS:27733 +#: ../build/NEWS:27768 msgid "" "`bpo-20188 `__: Support Application-" "Layer Protocol Negotiation (ALPN) in the ssl module." msgstr "" -#: ../build/NEWS:27736 +#: ../build/NEWS:27771 msgid "" "`bpo-23133 `__: Pickling of ipaddress " "objects now produces more compact and portable representation." msgstr "" -#: ../build/NEWS:27739 +#: ../build/NEWS:27774 msgid "" "`bpo-23248 `__: Update ssl error codes " "from latest OpenSSL git master." msgstr "" -#: ../build/NEWS:27741 +#: ../build/NEWS:27776 msgid "" "`bpo-23266 `__: Much faster " "implementation of ipaddress.collapse_addresses() when there are many non-" "consecutive addresses." msgstr "" -#: ../build/NEWS:27744 +#: ../build/NEWS:27779 msgid "" "`bpo-23098 `__: 64-bit dev_t is now " "supported in the os module." msgstr "" -#: ../build/NEWS:27746 +#: ../build/NEWS:27781 msgid "" "`bpo-21817 `__: When an exception is " "raised in a task submitted to a ProcessPoolExecutor, the remote traceback is " "now displayed in the parent process. Patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:27750 +#: ../build/NEWS:27785 msgid "" "`bpo-15955 `__: Add an option to limit " "output size when decompressing LZMA data. Patch by Nikolaus Rath and Martin " "Panter." msgstr "" -#: ../build/NEWS:27753 +#: ../build/NEWS:27788 msgid "" "`bpo-23250 `__: In the http.cookies " "module, capitalize \"HttpOnly\" and \"Secure\" as they are written in the " "standard." msgstr "" -#: ../build/NEWS:27756 +#: ../build/NEWS:27791 msgid "" "`bpo-23063 `__: In the distutils' check " "command, fix parsing of reST with code or code-block directives." msgstr "" -#: ../build/NEWS:27759 +#: ../build/NEWS:27794 msgid "" "`bpo-23209 `__: selectors.BaseSelector." "get_key() now raises a RuntimeError if the selector is closed. And selectors." @@ -43460,13 +43414,13 @@ msgid "" "(See also: `bpo-23225 `__)" msgstr "" -#: ../build/NEWS:27764 +#: ../build/NEWS:27799 msgid "" "`bpo-17911 `__: Provide a way to seed " "the linecache for a PEP-302 module without actually loading the code." msgstr "" -#: ../build/NEWS:27767 +#: ../build/NEWS:27802 msgid "" "`bpo-17911 `__: Provide a new object API " "for traceback, including the ability to not lookup lines at all until the " @@ -43474,109 +43428,109 @@ msgid "" "being kept alive." msgstr "" -#: ../build/NEWS:27771 +#: ../build/NEWS:27806 msgid "" "`bpo-19777 `__: Provide a home() " "classmethod on Path objects. Contributed by Victor Salgado and Mayank " "Tripathi." msgstr "" -#: ../build/NEWS:27774 +#: ../build/NEWS:27809 msgid "" "`bpo-23206 `__: Make ``json.dumps(..., " "ensure_ascii=False)`` as fast as the default case of ``ensure_ascii=True``. " "Patch by Naoki Inada." msgstr "" -#: ../build/NEWS:27777 +#: ../build/NEWS:27812 msgid "" "`bpo-23185 `__: Add math.inf and math." "nan constants." msgstr "" -#: ../build/NEWS:27779 +#: ../build/NEWS:27814 msgid "" "`bpo-23186 `__: Add ssl.SSLObject." "shared_ciphers() and ssl.SSLSocket.shared_ciphers() to fetch the client's " "list ciphers sent at handshake." msgstr "" -#: ../build/NEWS:27783 +#: ../build/NEWS:27818 msgid "" "`bpo-23143 `__: Remove compatibility " "with OpenSSLs older than 0.9.8." msgstr "" -#: ../build/NEWS:27785 +#: ../build/NEWS:27820 msgid "" "`bpo-23132 `__: Improve performance and " "introspection support of comparison methods created by functool." "total_ordering." msgstr "" -#: ../build/NEWS:27788 +#: ../build/NEWS:27823 msgid "" "`bpo-19776 `__: Add an expanduser() " "method on Path objects." msgstr "" -#: ../build/NEWS:27790 +#: ../build/NEWS:27825 msgid "" "`bpo-23112 `__: Fix SimpleHTTPServer to " "correctly carry the query string and fragment when it redirects to add a " "trailing slash." msgstr "" -#: ../build/NEWS:27793 +#: ../build/NEWS:27828 msgid "" "`bpo-21793 `__: Added http.HTTPStatus " "enums (i.e. HTTPStatus.OK, HTTPStatus.NOT_FOUND). Patch by Demian Brecht." msgstr "" -#: ../build/NEWS:27796 +#: ../build/NEWS:27831 msgid "" "`bpo-23093 `__: In the io, module allow " "more operations to work on detached streams." msgstr "" -#: ../build/NEWS:27799 +#: ../build/NEWS:27834 msgid "" "`bpo-23111 `__: In the ftplib, make ssl." "PROTOCOL_SSLv23 the default protocol version." msgstr "" -#: ../build/NEWS:27802 +#: ../build/NEWS:27837 msgid "" "`bpo-22585 `__: On OpenBSD 5.6 and " "newer, os.urandom() now calls getentropy(), instead of reading /dev/urandom, " "to get pseudo-random bytes." msgstr "" -#: ../build/NEWS:27805 +#: ../build/NEWS:27840 msgid "" "`bpo-19104 `__: pprint now produces " "evaluable output for wrapped strings." msgstr "" -#: ../build/NEWS:27807 +#: ../build/NEWS:27842 msgid "" "`bpo-23071 `__: Added missing names to " "codecs.__all__. Patch by Martin Panter." msgstr "" -#: ../build/NEWS:27809 +#: ../build/NEWS:27844 msgid "" "`bpo-22783 `__: Pickling now uses the " "NEWOBJ opcode instead of the NEWOBJ_EX opcode if possible." msgstr "" -#: ../build/NEWS:27812 +#: ../build/NEWS:27847 msgid "" "`bpo-15513 `__: Added a __sizeof__ " "implementation for pickle classes." msgstr "" -#: ../build/NEWS:27814 +#: ../build/NEWS:27849 msgid "" "`bpo-19858 `__: pickletools.optimize() " "now aware of the MEMOIZE opcode, can produce more compact result and no " @@ -43584,20 +43538,20 @@ msgid "" "together with PUT or BINPUT opcodes." msgstr "" -#: ../build/NEWS:27818 +#: ../build/NEWS:27853 msgid "" "`bpo-22095 `__: Fixed HTTPConnection." "set_tunnel with default port. The port value in the host header was set to " "\"None\". Patch by Demian Brecht." msgstr "" -#: ../build/NEWS:27821 +#: ../build/NEWS:27856 msgid "" "`bpo-23016 `__: A warning no longer " "produces an AttributeError when the program is run with pythonw.exe." msgstr "" -#: ../build/NEWS:27824 +#: ../build/NEWS:27859 msgid "" "`bpo-21775 `__: shutil.copytree(): fix " "crash when copying to VFAT. An exception handler assumed that OSError " @@ -43606,46 +43560,46 @@ msgid "" "presumably, any other non-Windows OS). Patch by Greg Ward." msgstr "" -#: ../build/NEWS:27830 +#: ../build/NEWS:27865 msgid "" "`bpo-1218234 `__: Fix inspect." "getsource() to load updated source of reloaded module. Initial patch by " "Berker Peksag." msgstr "" -#: ../build/NEWS:27833 +#: ../build/NEWS:27868 msgid "" "`bpo-21740 `__: Support wrapped " "callables in doctest. Patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:27835 +#: ../build/NEWS:27870 msgid "" "`bpo-23009 `__: Make sure selectors." "EpollSelector.select() works when no FD is registered." msgstr "" -#: ../build/NEWS:27838 +#: ../build/NEWS:27873 msgid "" "`bpo-22959 `__: In the constructor of " "http.client.HTTPSConnection, prefer the context's check_hostname attribute " "over the *check_hostname* parameter." msgstr "" -#: ../build/NEWS:27841 +#: ../build/NEWS:27876 msgid "" "`bpo-22696 `__: Add function :func:`sys." "is_finalizing` to know about interpreter shutdown." msgstr "" -#: ../build/NEWS:27844 +#: ../build/NEWS:27879 msgid "" "`bpo-16043 `__: Add a default limit for " "the amount of data xmlrpclib.gzip_decode will return. This resolves " "CVE-2013-1753." msgstr "" -#: ../build/NEWS:27847 +#: ../build/NEWS:27882 msgid "" "`bpo-14099 `__: ZipFile.open() no longer " "reopen the underlying file. Objects returned by ZipFile.open() can now " @@ -43653,265 +43607,265 @@ msgid "" "passing in a file-like object as the first argument to the constructor." msgstr "" -#: ../build/NEWS:27852 +#: ../build/NEWS:27887 msgid "" "`bpo-22966 `__: Fix __pycache__ pyc file " "name clobber when pyc_compile is asked to compile a source file containing " "multiple dots in the source file name." msgstr "" -#: ../build/NEWS:27855 +#: ../build/NEWS:27890 msgid "" "`bpo-21971 `__: Update turtledemo doc " "and add module to the index." msgstr "" -#: ../build/NEWS:27857 +#: ../build/NEWS:27892 msgid "" "`bpo-21032 `__: Fixed socket leak if " "HTTPConnection.getresponse() fails. Original patch by Martin Panter." msgstr "" -#: ../build/NEWS:27860 +#: ../build/NEWS:27895 msgid "" "`bpo-22407 `__: Deprecated the use of re." "LOCALE flag with str patterns or re.ASCII. It was newer worked." msgstr "" -#: ../build/NEWS:27863 +#: ../build/NEWS:27898 msgid "" "`bpo-22902 `__: The \"ip\" command is " "now used on Linux to determine MAC address in uuid.getnode(). Pach by Bruno " "Cauet." msgstr "" -#: ../build/NEWS:27866 +#: ../build/NEWS:27901 msgid "" "`bpo-22960 `__: Add a context argument " "to xmlrpclib.ServerProxy constructor." msgstr "" -#: ../build/NEWS:27868 +#: ../build/NEWS:27903 msgid "" "`bpo-22389 `__: Add contextlib." "redirect_stderr()." msgstr "" -#: ../build/NEWS:27870 +#: ../build/NEWS:27905 msgid "" "`bpo-21356 `__: Make ssl.RAND_egd() " "optional to support LibreSSL. The availability of the function is checked " "during the compilation. Patch written by Bernard Spil." msgstr "" -#: ../build/NEWS:27874 +#: ../build/NEWS:27909 msgid "" "`bpo-22915 `__: SAX parser now supports " "files opened with file descriptor or bytes path." msgstr "" -#: ../build/NEWS:27877 +#: ../build/NEWS:27912 msgid "" "`bpo-22609 `__: Constructors and update " "methods of mapping classes in the collections module now accept the self " "keyword argument." msgstr "" -#: ../build/NEWS:27880 +#: ../build/NEWS:27915 msgid "" "`bpo-22940 `__: Add readline." "append_history_file." msgstr "" -#: ../build/NEWS:27882 +#: ../build/NEWS:27917 msgid "" "`bpo-19676 `__: Added the \"namereplace" "\" error handler." msgstr "" -#: ../build/NEWS:27884 +#: ../build/NEWS:27919 msgid "" "`bpo-22788 `__: Add *context* parameter " "to logging.handlers.HTTPHandler." msgstr "" -#: ../build/NEWS:27886 +#: ../build/NEWS:27921 msgid "" "`bpo-22921 `__: Allow SSLContext to take " "the *hostname* parameter even if OpenSSL doesn't support SNI." msgstr "" -#: ../build/NEWS:27889 +#: ../build/NEWS:27924 msgid "" "`bpo-22894 `__: TestCase.subTest() would " "cause the test suite to be stopped when in failfast mode, even in the " "absence of failures." msgstr "" -#: ../build/NEWS:27892 +#: ../build/NEWS:27927 msgid "" "`bpo-22796 `__: HTTP cookie parsing is " "now stricter, in order to protect against potential injection attacks." msgstr "" -#: ../build/NEWS:27895 +#: ../build/NEWS:27930 msgid "" "`bpo-22370 `__: Windows detection in " "pathlib is now more robust." msgstr "" -#: ../build/NEWS:27897 +#: ../build/NEWS:27932 msgid "" "`bpo-22841 `__: Reject coroutines in " "asyncio add_signal_handler(). Patch by Ludovic.Gasc." msgstr "" -#: ../build/NEWS:27900 +#: ../build/NEWS:27935 msgid "" "`bpo-19494 `__: Added urllib.request." "HTTPBasicPriorAuthHandler. Patch by Matej Cepl." msgstr "" -#: ../build/NEWS:27903 +#: ../build/NEWS:27938 msgid "" "`bpo-22578 `__: Added attributes to the " "re.error class." msgstr "" -#: ../build/NEWS:27905 +#: ../build/NEWS:27940 msgid "" "`bpo-22849 `__: Fix possible double free " "in the io.TextIOWrapper constructor." msgstr "" -#: ../build/NEWS:27907 +#: ../build/NEWS:27942 msgid "" "`bpo-12728 `__: Different Unicode " "characters having the same uppercase but different lowercase are now matched " "in case-insensitive regular expressions." msgstr "" -#: ../build/NEWS:27911 +#: ../build/NEWS:27946 msgid "" "`bpo-22821 `__: Fixed fcntl() with " "integer argument on 64-bit big-endian platforms." msgstr "" -#: ../build/NEWS:27914 +#: ../build/NEWS:27949 msgid "" "`bpo-21650 `__: Add an `--sort-keys` " "option to json.tool CLI." msgstr "" -#: ../build/NEWS:27916 +#: ../build/NEWS:27951 msgid "" "`bpo-22824 `__: Updated reprlib output " "format for sets to use set literals. Patch contributed by Berker Peksag." msgstr "" -#: ../build/NEWS:27919 +#: ../build/NEWS:27954 msgid "" "`bpo-22824 `__: Updated reprlib output " "format for arrays to display empty arrays without an unnecessary empty " "list. Suggested by Serhiy Storchaka." msgstr "" -#: ../build/NEWS:27922 +#: ../build/NEWS:27957 msgid "" "`bpo-22406 `__: Fixed the uu_codec codec " "incorrectly ported to 3.x. Based on patch by Martin Panter." msgstr "" -#: ../build/NEWS:27925 +#: ../build/NEWS:27960 msgid "" "`bpo-17293 `__: uuid.getnode() now " "determines MAC address on AIX using netstat. Based on patch by Aivars " "Kalvāns." msgstr "" -#: ../build/NEWS:27928 +#: ../build/NEWS:27963 msgid "" "`bpo-22769 `__: Fixed ttk.Treeview." "tag_has() when called without arguments." msgstr "" -#: ../build/NEWS:27930 +#: ../build/NEWS:27965 msgid "" "`bpo-22417 `__: Verify certificates by " "default in httplib (PEP 476)." msgstr "" -#: ../build/NEWS:27932 +#: ../build/NEWS:27967 msgid "" "`bpo-22775 `__: Fixed unpickling of http." "cookies.SimpleCookie with protocol 2 and above. Patch by Tim Graham." msgstr "" -#: ../build/NEWS:27935 +#: ../build/NEWS:27970 msgid "" "`bpo-22776 `__: Brought excluded code " "into the scope of a try block in SysLogHandler.emit()." msgstr "" -#: ../build/NEWS:27938 +#: ../build/NEWS:27973 msgid "" "`bpo-22665 `__: Add missing " "get_terminal_size and SameFileError to shutil.__all__." msgstr "" -#: ../build/NEWS:27941 +#: ../build/NEWS:27976 msgid "" "`bpo-6623 `__: Remove deprecated Netrc " "class in the ftplib module. Patch by Matt Chaput." msgstr "" -#: ../build/NEWS:27944 +#: ../build/NEWS:27979 msgid "" "`bpo-17381 `__: Fixed handling of case-" "insensitive ranges in regular expressions." msgstr "" -#: ../build/NEWS:27947 +#: ../build/NEWS:27982 msgid "" "`bpo-22410 `__: Module level functions " "in the re module now cache compiled locale-dependent regular expressions " "taking into account the locale." msgstr "" -#: ../build/NEWS:27950 +#: ../build/NEWS:27985 msgid "" "`bpo-22759 `__: Query methods on pathlib." "Path() (exists(), is_dir(), etc.) now return False when the underlying stat " "call raises NotADirectoryError." msgstr "" -#: ../build/NEWS:27953 +#: ../build/NEWS:27988 msgid "" "`bpo-8876 `__: distutils now falls back " "to copying files when hard linking doesn't work. This allows use with " "special filesystems such as VirtualBox shared folders." msgstr "" -#: ../build/NEWS:27957 +#: ../build/NEWS:27992 msgid "" "`bpo-22217 `__: Implemented reprs of " "classes in the zipfile module." msgstr "" -#: ../build/NEWS:27959 +#: ../build/NEWS:27994 msgid "" "`bpo-22457 `__: Honour load_tests in the " "start_dir of discovery." msgstr "" -#: ../build/NEWS:27961 +#: ../build/NEWS:27996 msgid "" "`bpo-18216 `__: gettext now raises an " "error when a .mo file has an unsupported major version number. Patch by " "Aaron Hill." msgstr "" -#: ../build/NEWS:27964 +#: ../build/NEWS:27999 msgid "" "`bpo-13918 `__: Provide a locale." "delocalize() function which can remove locale-specific number formatting " @@ -43919,33 +43873,33 @@ msgid "" "specific type. Patch by Cédric Krier." msgstr "" -#: ../build/NEWS:27968 +#: ../build/NEWS:28003 msgid "" "`bpo-22676 `__: Make the pickling of " "global objects which don't have a __module__ attribute less slow." msgstr "" -#: ../build/NEWS:27971 +#: ../build/NEWS:28006 msgid "" "`bpo-18853 `__: Fixed ResourceWarning in " "shlex.__nain__." msgstr "" -#: ../build/NEWS:27973 +#: ../build/NEWS:28008 msgid "" "`bpo-9351 `__: Defaults set with " "set_defaults on an argparse subparser are no longer ignored when also set on " "the parent parser." msgstr "" -#: ../build/NEWS:27976 +#: ../build/NEWS:28011 msgid "" "`bpo-7559 `__: unittest test loading " "ImportErrors are reported as import errors with their import exception " "rather than as attribute errors after the import has already failed." msgstr "" -#: ../build/NEWS:27980 +#: ../build/NEWS:28015 msgid "" "`bpo-19746 `__: Make it possible to " "examine the errors from unittest discovery without executing the test suite. " @@ -43953,7 +43907,7 @@ msgid "" "encountered during discovery." msgstr "" -#: ../build/NEWS:27984 +#: ../build/NEWS:28019 msgid "" "`bpo-21991 `__: Make email." "headerregistry's header 'params' attributes be read-only " @@ -43961,27 +43915,27 @@ msgid "" "was created on each access of the attribute." msgstr "" -#: ../build/NEWS:27988 +#: ../build/NEWS:28023 msgid "" "`bpo-22638 `__: SSLv3 is now disabled " "throughout the standard library. It can still be enabled by instantiating a " "SSLContext manually." msgstr "" -#: ../build/NEWS:27991 +#: ../build/NEWS:28026 msgid "" "`bpo-22641 `__: In asyncio, the default " "SSL context for client connections is now created using ssl." "create_default_context(), for stronger security." msgstr "" -#: ../build/NEWS:27994 +#: ../build/NEWS:28029 msgid "" "`bpo-17401 `__: Include closefd in io." "FileIO repr." msgstr "" -#: ../build/NEWS:27996 +#: ../build/NEWS:28031 msgid "" "`bpo-21338 `__: Add silent mode for " "compileall. quiet parameters of compile_{dir, file, path} functions now have " @@ -43989,86 +43943,86 @@ msgid "" "Patch by Thomas Kluyver." msgstr "" -#: ../build/NEWS:28000 +#: ../build/NEWS:28035 msgid "" "`bpo-20152 `__: Convert the array and " "cmath modules to Argument Clinic." msgstr "" -#: ../build/NEWS:28002 +#: ../build/NEWS:28037 msgid "" "`bpo-18643 `__: Add socket.socketpair() " "on Windows." msgstr "" -#: ../build/NEWS:28004 +#: ../build/NEWS:28039 msgid "" "`bpo-22435 `__: Fix a file descriptor " "leak when socketserver bind fails." msgstr "" -#: ../build/NEWS:28006 +#: ../build/NEWS:28041 msgid "" "`bpo-13096 `__: Fixed segfault in CTypes " "POINTER handling of large values." msgstr "" -#: ../build/NEWS:28008 +#: ../build/NEWS:28043 msgid "" "`bpo-11694 `__: Raise ConversionError in " "xdrlib as documented. Patch by Filip Gruszczyński and Claudiu Popa." msgstr "" -#: ../build/NEWS:28011 +#: ../build/NEWS:28046 msgid "" "`bpo-19380 `__: Optimized parsing of " "regular expressions." msgstr "" -#: ../build/NEWS:28013 +#: ../build/NEWS:28048 msgid "" "`bpo-1519638 `__: Now unmatched groups " "are replaced with empty strings in re.sub() and re.subn()." msgstr "" -#: ../build/NEWS:28016 +#: ../build/NEWS:28051 msgid "" "`bpo-18615 `__: sndhdr.what/whathdr now " "return a namedtuple." msgstr "" -#: ../build/NEWS:28018 +#: ../build/NEWS:28053 msgid "" "`bpo-22462 `__: Fix pyexpat's creation " "of a dummy frame to make it appear in exception tracebacks." msgstr "" -#: ../build/NEWS:28021 +#: ../build/NEWS:28056 msgid "" "`bpo-21965 `__: Add support for in-" "memory SSL to the ssl module. Patch by Geert Jansen." msgstr "" -#: ../build/NEWS:28024 +#: ../build/NEWS:28059 msgid "" "`bpo-21173 `__: Fix len() on a " "WeakKeyDictionary when .clear() was called with an iterator alive." msgstr "" -#: ../build/NEWS:28027 +#: ../build/NEWS:28062 msgid "" "`bpo-11866 `__: Eliminated race " "condition in the computation of names for new threads." msgstr "" -#: ../build/NEWS:28030 +#: ../build/NEWS:28065 msgid "" "`bpo-21905 `__: Avoid RuntimeError in " "pickle.whichmodule() when sys.modules is mutated while iterating. Patch by " "Olivier Grisel." msgstr "" -#: ../build/NEWS:28033 +#: ../build/NEWS:28068 msgid "" "`bpo-11271 `__: concurrent.futures." "Executor.map() now takes a *chunksize* argument to allow batching of tasks " @@ -44076,271 +44030,271 @@ msgid "" "Dan O'Reilly." msgstr "" -#: ../build/NEWS:28037 +#: ../build/NEWS:28072 msgid "" "`bpo-21883 `__: os.path.join() and os." "path.relpath() now raise a TypeError with more helpful error message for " "unsupported or mismatched types of arguments." msgstr "" -#: ../build/NEWS:28041 +#: ../build/NEWS:28076 msgid "" "`bpo-22219 `__: The zipfile module CLI " "now adds entries for directories (including empty directories) in ZIP file." msgstr "" -#: ../build/NEWS:28044 +#: ../build/NEWS:28079 msgid "" "`bpo-22449 `__: In the ssl.SSLContext." "load_default_certs, consult the environmental variables SSL_CERT_DIR and " "SSL_CERT_FILE on Windows." msgstr "" -#: ../build/NEWS:28047 +#: ../build/NEWS:28082 msgid "" "`bpo-22508 `__: The email.__version__ " "variable has been removed; the email code is no longer shipped separately " "from the stdlib, and __version__ hasn't been updated in several releases." msgstr "" -#: ../build/NEWS:28051 +#: ../build/NEWS:28086 msgid "" "`bpo-20076 `__: Added non derived UTF-8 " "aliases to locale aliases table." msgstr "" -#: ../build/NEWS:28053 +#: ../build/NEWS:28088 msgid "" "`bpo-20079 `__: Added locales supported " "in glibc 2.18 to locale alias table." msgstr "" -#: ../build/NEWS:28055 +#: ../build/NEWS:28090 msgid "" "`bpo-20218 `__: Added convenience " "methods read_text/write_text and read_bytes/ write_bytes to pathlib.Path " "objects." msgstr "" -#: ../build/NEWS:28058 +#: ../build/NEWS:28093 msgid "" "`bpo-22396 `__: On 32-bit AIX platform, " "don't expose os.posix_fadvise() nor os.posix_fallocate() because their " "prototypes in system headers are wrong." msgstr "" -#: ../build/NEWS:28061 +#: ../build/NEWS:28096 msgid "" "`bpo-22517 `__: When an io." "BufferedRWPair object is deallocated, clear its weakrefs." msgstr "" -#: ../build/NEWS:28064 +#: ../build/NEWS:28099 msgid "" "`bpo-22437 `__: Number of capturing " "groups in regular expression is no longer limited by 100." msgstr "" -#: ../build/NEWS:28067 +#: ../build/NEWS:28102 msgid "" "`bpo-17442 `__: InteractiveInterpreter " "now displays the full chained traceback in its showtraceback method, to " "match the built in interactive interpreter." msgstr "" -#: ../build/NEWS:28071 +#: ../build/NEWS:28106 msgid "" "`bpo-23392 `__: Added tests for marshal " "C API that works with FILE*." msgstr "" -#: ../build/NEWS:28073 +#: ../build/NEWS:28108 msgid "" "`bpo-10510 `__: distutils register and " "upload methods now use HTML standards compliant CRLF line endings." msgstr "" -#: ../build/NEWS:28076 +#: ../build/NEWS:28111 msgid "" "`bpo-9850 `__: Fixed macpath.join() for " "empty first component. Patch by Oleg Oshmyan." msgstr "" -#: ../build/NEWS:28079 +#: ../build/NEWS:28114 msgid "" "`bpo-5309 `__: distutils' build and " "build_ext commands now accept a ``-j`` option to enable parallel building of " "extension modules." msgstr "" -#: ../build/NEWS:28082 +#: ../build/NEWS:28117 msgid "" "`bpo-22448 `__: Improve canceled timer " "handles cleanup to prevent unbound memory usage. Patch by Joshua Moore-Oliva." msgstr "" -#: ../build/NEWS:28085 +#: ../build/NEWS:28120 msgid "" "`bpo-22427 `__: TemporaryDirectory no " "longer attempts to clean up twice when used in the with statement in " "generator." msgstr "" -#: ../build/NEWS:28088 +#: ../build/NEWS:28123 msgid "" "`bpo-22362 `__: Forbidden ambiguous " "octal escapes out of range 0-0o377 in regular expressions." msgstr "" -#: ../build/NEWS:28091 +#: ../build/NEWS:28126 msgid "" "`bpo-20912 `__: Now directories added to " "ZIP file have correct Unix and MS-DOS directory attributes." msgstr "" -#: ../build/NEWS:28094 +#: ../build/NEWS:28129 msgid "" "`bpo-21866 `__: ZipFile.close() no " "longer writes ZIP64 central directory records if allowZip64 is false." msgstr "" -#: ../build/NEWS:28097 +#: ../build/NEWS:28132 msgid "" "`bpo-22278 `__: Fix urljoin problem with " "relative urls, a regression observed after changes to issue22118 were " "submitted." msgstr "" -#: ../build/NEWS:28100 +#: ../build/NEWS:28135 msgid "" "`bpo-22415 `__: Fixed debugging output " "of the GROUPREF_EXISTS opcode in the re module. Removed trailing spaces in " "debugging output." msgstr "" -#: ../build/NEWS:28103 +#: ../build/NEWS:28138 msgid "" "`bpo-22423 `__: Unhandled exception in " "thread no longer causes unhandled AttributeError when sys.stderr is None." msgstr "" -#: ../build/NEWS:28106 +#: ../build/NEWS:28141 msgid "" "`bpo-21332 `__: Ensure that " "``bufsize=1`` in subprocess.Popen() selects line buffering, rather than " "block buffering. Patch by Akira Li." msgstr "" -#: ../build/NEWS:28109 +#: ../build/NEWS:28144 msgid "" "`bpo-21091 `__: Fix API bug: email." "message.EmailMessage.is_attachment is now a method." msgstr "" -#: ../build/NEWS:28112 +#: ../build/NEWS:28147 msgid "" "`bpo-21079 `__: Fix email.message." "EmailMessage.is_attachment to return the correct result when the header has " "parameters as well as a value." msgstr "" -#: ../build/NEWS:28115 +#: ../build/NEWS:28150 msgid "" "`bpo-22247 `__: Add NNTPError to nntplib." "__all__." msgstr "" -#: ../build/NEWS:28117 +#: ../build/NEWS:28152 msgid "" "`bpo-22366 `__: urllib.request.urlopen " "will accept a context object (SSLContext) as an argument which will then be " "used for HTTPS connection. Patch by Alex Gaynor." msgstr "" -#: ../build/NEWS:28121 +#: ../build/NEWS:28156 msgid "" "`bpo-4180 `__: The warnings registries " "are now reset when the filters are modified." msgstr "" -#: ../build/NEWS:28124 +#: ../build/NEWS:28159 msgid "" "`bpo-22419 `__: Limit the length of " "incoming HTTP request in wsgiref server to 65536 bytes and send a 414 error " "code for higher lengths. Patch contributed by Devin Cook." msgstr "" -#: ../build/NEWS:28128 +#: ../build/NEWS:28163 msgid "" "Lax cookie parsing in http.cookies could be a security issue when combined " "with non-standard cookie handling in some Web browsers. Reported by Sergey " "Bobrov." msgstr "" -#: ../build/NEWS:28132 +#: ../build/NEWS:28167 msgid "" "`bpo-20537 `__: logging methods now " "accept an exception instance as well as a Boolean value or exception tuple. " "Thanks to Yury Selivanov for the patch." msgstr "" -#: ../build/NEWS:28135 +#: ../build/NEWS:28170 msgid "" "`bpo-22384 `__: An exception in Tkinter " "callback no longer crashes the program when it is run with pythonw.exe." msgstr "" -#: ../build/NEWS:28138 +#: ../build/NEWS:28173 msgid "" "`bpo-22168 `__: Prevent turtle " "AttributeError with non-default Canvas on OS X." msgstr "" -#: ../build/NEWS:28140 +#: ../build/NEWS:28175 msgid "" "`bpo-21147 `__: sqlite3 now raises an " "exception if the request contains a null character instead of truncating " "it. Based on patch by Victor Stinner." msgstr "" -#: ../build/NEWS:28143 +#: ../build/NEWS:28178 msgid "" "`bpo-13968 `__: The glob module now " "supports recursive search in subdirectories using the ``**`` pattern." msgstr "" -#: ../build/NEWS:28146 +#: ../build/NEWS:28181 msgid "" "`bpo-21951 `__: Fixed a crash in Tkinter " "on AIX when called Tcl command with empty string or tuple argument." msgstr "" -#: ../build/NEWS:28149 +#: ../build/NEWS:28184 msgid "" "`bpo-21951 `__: Tkinter now most likely " "raises MemoryError instead of crash if the memory allocation fails." msgstr "" -#: ../build/NEWS:28152 +#: ../build/NEWS:28187 msgid "" "`bpo-22338 `__: Fix a crash in the json " "module on memory allocation failure." msgstr "" -#: ../build/NEWS:28154 +#: ../build/NEWS:28189 msgid "" "`bpo-12410 `__: imaplib.IMAP4 now " "supports the context management protocol. Original patch by Tarek Ziadé." msgstr "" -#: ../build/NEWS:28157 +#: ../build/NEWS:28192 msgid "" "`bpo-21270 `__: We now override tuple " "methods in mock.call objects so that they can be used as normal call " "attributes." msgstr "" -#: ../build/NEWS:28160 +#: ../build/NEWS:28195 msgid "" "`bpo-16662 `__: load_tests() is now " "unconditionally run when it is present in a package's __init__.py. " @@ -44349,33 +44303,33 @@ msgid "" "documented. Patch given by Robert Collins, tweaked by Barry Warsaw." msgstr "" -#: ../build/NEWS:28166 +#: ../build/NEWS:28201 msgid "" "`bpo-22226 `__: First letter no longer " "is stripped from the \"status\" key in the result of Treeview.heading()." msgstr "" -#: ../build/NEWS:28169 +#: ../build/NEWS:28204 msgid "" "`bpo-19524 `__: Fixed resource leak in " "the HTTP connection when an invalid response is received. Patch by Martin " "Panter." msgstr "" -#: ../build/NEWS:28172 +#: ../build/NEWS:28207 msgid "" "`bpo-20421 `__: Add a .version() method " "to SSL sockets exposing the actual protocol version in use." msgstr "" -#: ../build/NEWS:28175 +#: ../build/NEWS:28210 msgid "" "`bpo-19546 `__: configparser exceptions " "no longer expose implementation details. Chained KeyErrors are removed, " "which leads to cleaner tracebacks. Patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:28179 +#: ../build/NEWS:28214 msgid "" "`bpo-22051 `__: turtledemo no longer " "reloads examples to re-run them. Initialization of variables and gui setup " @@ -44383,14 +44337,14 @@ msgid "" "on import." msgstr "" -#: ../build/NEWS:28183 +#: ../build/NEWS:28218 msgid "" "`bpo-21933 `__: Turtledemo users can " "change the code font size with a menu selection or control(command) '-' or " "'+' or control-mousewheel. Original patch by Lita Cho." msgstr "" -#: ../build/NEWS:28187 +#: ../build/NEWS:28222 msgid "" "`bpo-21597 `__: The separator between " "the turtledemo text pane and the drawing canvas can now be grabbed and " @@ -44399,14 +44353,14 @@ msgid "" "screens. Original patches by Jan Kanis and Lita Cho." msgstr "" -#: ../build/NEWS:28193 +#: ../build/NEWS:28228 msgid "" "`bpo-18132 `__: Turtledemo buttons no " "longer disappear when the window is shrunk. Original patches by Jan Kanis " "and Lita Cho." msgstr "" -#: ../build/NEWS:28196 +#: ../build/NEWS:28231 msgid "" "`bpo-22043 `__: time.monotonic() is now " "always available. ``threading.Lock.acquire()``, ``threading.RLock." @@ -44414,14 +44368,14 @@ msgid "" "system clock, when a timeout is used." msgstr "" -#: ../build/NEWS:28201 +#: ../build/NEWS:28236 msgid "" "`bpo-21527 `__: Add a default number of " "workers to ThreadPoolExecutor equal to 5 times the number of CPUs. Patch by " "Claudiu Popa." msgstr "" -#: ../build/NEWS:28204 +#: ../build/NEWS:28239 msgid "" "`bpo-22216 `__: smtplib now resets its " "state more completely after a quit. The most obvious consequence of the " @@ -44429,21 +44383,21 @@ msgid "" "connect/starttls sequence." msgstr "" -#: ../build/NEWS:28208 +#: ../build/NEWS:28243 msgid "" "`bpo-22098 `__: ctypes' " "BigEndianStructure and LittleEndianStructure now define an empty __slots__ " "so that subclasses don't always get an instance dict. Patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:28212 +#: ../build/NEWS:28247 msgid "" "`bpo-22185 `__: Fix an occasional " "RuntimeError in threading.Condition.wait() caused by mutation of the waiters " "queue without holding the lock. Patch by Doug Zongker." msgstr "" -#: ../build/NEWS:28216 +#: ../build/NEWS:28251 msgid "" "`bpo-22287 `__: On UNIX, " "_PyTime_gettimeofday() now uses clock_gettime(CLOCK_REALTIME) if available. " @@ -44451,201 +44405,201 @@ msgid "" "Linux (only with glibc older than 2.17)." msgstr "" -#: ../build/NEWS:28221 +#: ../build/NEWS:28256 msgid "" "`bpo-22182 `__: Use e.args to unpack " "exceptions correctly in distutils.file_util.move_file. Patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:28224 +#: ../build/NEWS:28259 msgid "" "The webbrowser module now uses subprocess's start_new_session=True rather " "than a potentially risky preexec_fn=os.setsid call." msgstr "" -#: ../build/NEWS:28227 +#: ../build/NEWS:28262 msgid "" "`bpo-22042 `__: signal.set_wakeup_fd(fd) " "now raises an exception if the file descriptor is in blocking mode." msgstr "" -#: ../build/NEWS:28230 +#: ../build/NEWS:28265 msgid "" "`bpo-16808 `__: inspect.stack() now " "returns a named tuple instead of a tuple. Patch by Daniel Shahaf." msgstr "" -#: ../build/NEWS:28233 +#: ../build/NEWS:28268 msgid "" "`bpo-22236 `__: Fixed Tkinter images " "copying operations in NoDefaultRoot mode." msgstr "" -#: ../build/NEWS:28235 +#: ../build/NEWS:28270 msgid "" "`bpo-2527 `__: Add a *globals* argument " "to timeit functions, in order to override the globals namespace in which the " "timed code is executed. Patch by Ben Roberts." msgstr "" -#: ../build/NEWS:28239 +#: ../build/NEWS:28274 msgid "" "`bpo-22118 `__: Switch urllib.parse to " "use RFC 3986 semantics for the resolution of relative URLs, rather than RFCs " "1808 and 2396. Patch by Demian Brecht." msgstr "" -#: ../build/NEWS:28243 +#: ../build/NEWS:28278 msgid "" "`bpo-21549 `__: Added the \"members\" " "parameter to TarFile.list()." msgstr "" -#: ../build/NEWS:28245 +#: ../build/NEWS:28280 msgid "" "`bpo-19628 `__: Allow compileall " "recursion depth to be specified with a -r option." msgstr "" -#: ../build/NEWS:28248 +#: ../build/NEWS:28283 msgid "" "`bpo-15696 `__: Add a __sizeof__ " "implementation for mmap objects on Windows." msgstr "" -#: ../build/NEWS:28250 +#: ../build/NEWS:28285 msgid "" "`bpo-22068 `__: Avoided reference loops " "with Variables and Fonts in Tkinter." msgstr "" -#: ../build/NEWS:28252 +#: ../build/NEWS:28287 msgid "" "`bpo-22165 `__: SimpleHTTPRequestHandler " "now supports undecodable file names." msgstr "" -#: ../build/NEWS:28254 +#: ../build/NEWS:28289 msgid "" "`bpo-15381 `__: Optimized line reading " "in io.BytesIO." msgstr "" -#: ../build/NEWS:28256 +#: ../build/NEWS:28291 msgid "" "`bpo-8797 `__: Raise HTTPError on failed " "Basic Authentication immediately. Initial patch by Sam Bull." msgstr "" -#: ../build/NEWS:28259 +#: ../build/NEWS:28294 msgid "" "`bpo-20729 `__: Restored the use of lazy " "iterkeys()/itervalues()/iteritems() in the mailbox module." msgstr "" -#: ../build/NEWS:28262 +#: ../build/NEWS:28297 msgid "" "`bpo-21448 `__: Changed FeedParser " "feed() to avoid O(N**2) behavior when parsing long line. Original patch by " "Raymond Hettinger." msgstr "" -#: ../build/NEWS:28265 +#: ../build/NEWS:28300 msgid "" "`bpo-22184 `__: The functools LRU Cache " "decorator factory now gives an earlier and clearer error message when the " "user forgets the required parameters." msgstr "" -#: ../build/NEWS:28268 +#: ../build/NEWS:28303 msgid "" "`bpo-17923 `__: glob() patterns ending " "with a slash no longer match non-dirs on AIX. Based on patch by Delhallt." msgstr "" -#: ../build/NEWS:28271 +#: ../build/NEWS:28306 msgid "" "`bpo-21725 `__: Added support for RFC " "6531 (SMTPUTF8) in smtpd." msgstr "" -#: ../build/NEWS:28273 +#: ../build/NEWS:28308 msgid "" "`bpo-22176 `__: Update the ctypes " "module's libffi to v3.1. This release adds support for the Linux AArch64 " "and POWERPC ELF ABIv2 little endian architectures." msgstr "" -#: ../build/NEWS:28277 +#: ../build/NEWS:28312 msgid "" "`bpo-5411 `__: Added support for the " "\"xztar\" format in the shutil module." msgstr "" -#: ../build/NEWS:28279 +#: ../build/NEWS:28314 msgid "" "`bpo-21121 `__: Don't force 3rd party C " "extensions to be built with -Werror=declaration-after-statement." msgstr "" -#: ../build/NEWS:28282 +#: ../build/NEWS:28317 msgid "" "`bpo-21975 `__: Fixed crash when using " "uninitialized sqlite3.Row (in particular when unpickling pickled sqlite3." "Row). sqlite3.Row is now initialized in the __new__() method." msgstr "" -#: ../build/NEWS:28286 +#: ../build/NEWS:28321 msgid "" "`bpo-20170 `__: Convert posixmodule to " "use Argument Clinic." msgstr "" -#: ../build/NEWS:28288 +#: ../build/NEWS:28323 msgid "" "`bpo-21539 `__: Add an *exists_ok* " "argument to `Pathlib.mkdir()` to mimic `mkdir -p` and `os.makedirs()` " "functionality. When true, ignore FileExistsErrors. Patch by Berker Peksag." msgstr "" -#: ../build/NEWS:28292 +#: ../build/NEWS:28327 msgid "" "`bpo-22127 `__: Bypass IDNA for pure-" "ASCII host names in the socket module (in particular for numeric IPs)." msgstr "" -#: ../build/NEWS:28295 +#: ../build/NEWS:28330 msgid "" "`bpo-21047 `__: set the default value " "for the *convert_charrefs* argument of HTMLParser to True. Patch by Berker " "Peksag." msgstr "" -#: ../build/NEWS:28298 +#: ../build/NEWS:28333 msgid "Add an __all__ to html.entities." msgstr "" -#: ../build/NEWS:28300 +#: ../build/NEWS:28335 msgid "" "`bpo-15114 `__: the strict mode and " "argument of HTMLParser, HTMLParser.error, and the HTMLParserError exception " "have been removed." msgstr "" -#: ../build/NEWS:28303 +#: ../build/NEWS:28338 msgid "" "`bpo-22085 `__: Dropped support of Tk " "8.3 in Tkinter." msgstr "" -#: ../build/NEWS:28305 +#: ../build/NEWS:28340 msgid "" "`bpo-21580 `__: Now Tkinter correctly " "handles bytes arguments passed to Tk. In particular this allows initializing " "images from binary data." msgstr "" -#: ../build/NEWS:28308 +#: ../build/NEWS:28343 msgid "" "`bpo-22003 `__: When initialized from a " "bytes object, io.BytesIO() now defers making a copy until it is mutated, " @@ -44653,14 +44607,14 @@ msgid "" "Wilson." msgstr "" -#: ../build/NEWS:28312 +#: ../build/NEWS:28347 msgid "" "`bpo-22018 `__: On Windows, signal." "set_wakeup_fd() now also supports sockets. A side effect is that Python " "depends to the WinSock library." msgstr "" -#: ../build/NEWS:28315 +#: ../build/NEWS:28350 msgid "" "`bpo-22054 `__: Add os.get_blocking() " "and os.set_blocking() functions to get and set the blocking mode of a file " @@ -44668,57 +44622,57 @@ msgid "" "functions are not available on Windows." msgstr "" -#: ../build/NEWS:28320 +#: ../build/NEWS:28355 msgid "" "`bpo-17172 `__: Make turtledemo start as " "active on OS X even when run with subprocess. Patch by Lita Cho." msgstr "" -#: ../build/NEWS:28323 +#: ../build/NEWS:28358 msgid "" "`bpo-21704 `__: Fix build error for " "_multiprocessing when semaphores are not available. Patch by Arfrever " "Frehtes Taifersar Arahesis." msgstr "" -#: ../build/NEWS:28326 +#: ../build/NEWS:28361 msgid "" "`bpo-20173 `__: Convert sha1, sha256, " "sha512 and md5 to ArgumentClinic. Patch by Vajrasky Kok." msgstr "" -#: ../build/NEWS:28329 +#: ../build/NEWS:28364 msgid "" "Fix repr(_socket.socket) on Windows 64-bit: don't fail with OverflowError on " "closed socket. repr(socket.socket) already works fine." msgstr "" -#: ../build/NEWS:28332 +#: ../build/NEWS:28367 msgid "" "`bpo-22033 `__: Reprs of most Python " "implemented classes now contain actual class name instead of hardcoded one." msgstr "" -#: ../build/NEWS:28335 +#: ../build/NEWS:28370 msgid "" "`bpo-21947 `__: The dis module can now " "disassemble generator-iterator objects based on their gi_code attribute. " "Patch by Clement Rouault." msgstr "" -#: ../build/NEWS:28338 +#: ../build/NEWS:28373 msgid "" "`bpo-16133 `__: The asynchat.async_chat." "handle_read() method now ignores BlockingIOError exceptions." msgstr "" -#: ../build/NEWS:28341 +#: ../build/NEWS:28376 msgid "" "`bpo-22044 `__: Fixed premature DECREF " "in call_tzinfo_method. Patch by Tom Flanagan." msgstr "" -#: ../build/NEWS:28344 +#: ../build/NEWS:28379 msgid "" "`bpo-19884 `__: readline: Disable the " "meta modifier key if stdout is not a terminal to not write the ANSI sequence " @@ -44726,77 +44680,77 @@ msgid "" "TERM=xterm-256color\") to enable support of 8 bit characters." msgstr "" -#: ../build/NEWS:28349 +#: ../build/NEWS:28384 msgid "" "`bpo-4350 `__: Removed a number of out-of-" "dated and non-working for a long time Tkinter methods." msgstr "" -#: ../build/NEWS:28352 +#: ../build/NEWS:28387 msgid "" "`bpo-6167 `__: Scrollbar.activate() now " "returns the name of active element if the argument is not specified. " "Scrollbar.set() now always accepts only 2 arguments." msgstr "" -#: ../build/NEWS:28356 +#: ../build/NEWS:28391 msgid "" "`bpo-15275 `__: Clean up and speed up " "the ntpath module." msgstr "" -#: ../build/NEWS:28358 +#: ../build/NEWS:28393 msgid "" "`bpo-21888 `__: plistlib's load() and " "loads() now work if the fmt parameter is specified." msgstr "" -#: ../build/NEWS:28361 +#: ../build/NEWS:28396 msgid "" "`bpo-22032 `__: __qualname__ instead of " "__name__ is now always used to format fully qualified class names of Python " "implemented classes." msgstr "" -#: ../build/NEWS:28364 +#: ../build/NEWS:28399 msgid "" "`bpo-22031 `__: Reprs now always use " "hexadecimal format with the \"0x\" prefix when contain an id in form \" at " "0x...\"." msgstr "" -#: ../build/NEWS:28367 +#: ../build/NEWS:28402 msgid "" "`bpo-22018 `__: signal.set_wakeup_fd() " "now raises an OSError instead of a ValueError on ``fstat()`` failure." msgstr "" -#: ../build/NEWS:28370 +#: ../build/NEWS:28405 msgid "" "`bpo-21044 `__: tarfile.open() now " "handles fileobj with an integer 'name' attribute. Based on patch by Antoine " "Pietri." msgstr "" -#: ../build/NEWS:28373 +#: ../build/NEWS:28408 msgid "" "`bpo-21966 `__: Respect -q command-line " "option when code module is ran." msgstr "" -#: ../build/NEWS:28375 +#: ../build/NEWS:28410 msgid "" "`bpo-19076 `__: Don't pass the redundant " "'file' argument to self.error()." msgstr "" -#: ../build/NEWS:28377 +#: ../build/NEWS:28412 msgid "" "`bpo-16382 `__: Improve exception " "message of warnings.warn() for bad category. Initial patch by Phil Elson." msgstr "" -#: ../build/NEWS:28380 +#: ../build/NEWS:28415 msgid "" "`bpo-21932 `__: os.read() now uses a :c:" "func:`Py_ssize_t` type instead of :c:type:`int` for the size to support " @@ -44805,91 +44759,91 @@ msgid "" "number of requested bytes." msgstr "" -#: ../build/NEWS:28385 +#: ../build/NEWS:28420 msgid "" "`bpo-21942 `__: Fixed source file " "viewing in pydoc's server mode on Windows." msgstr "" -#: ../build/NEWS:28387 +#: ../build/NEWS:28422 msgid "" "`bpo-11259 `__: asynchat.async_chat()." "set_terminator() now raises a ValueError if the number of received bytes is " "negative." msgstr "" -#: ../build/NEWS:28390 +#: ../build/NEWS:28425 msgid "" "`bpo-12523 `__: asynchat.async_chat." "push() now raises a TypeError if it doesn't get a bytes string" msgstr "" -#: ../build/NEWS:28393 +#: ../build/NEWS:28428 msgid "" "`bpo-21707 `__: Add missing " "kwonlyargcount argument to ModuleFinder.replace_paths_in_code()." msgstr "" -#: ../build/NEWS:28396 +#: ../build/NEWS:28431 msgid "" "`bpo-20639 `__: calling Path." "with_suffix('') allows removing the suffix again. Patch by July Tikhonov." msgstr "" -#: ../build/NEWS:28399 +#: ../build/NEWS:28434 msgid "" "`bpo-21714 `__: Disallow the " "construction of invalid paths using Path.with_name(). Original patch by " "Antony Lee." msgstr "" -#: ../build/NEWS:28402 +#: ../build/NEWS:28437 msgid "" "`bpo-15014 `__: Added 'auth' method to " "smtplib to make implementing auth mechanisms simpler, and used it internally " "in the login method." msgstr "" -#: ../build/NEWS:28405 +#: ../build/NEWS:28440 msgid "" "`bpo-21151 `__: Fixed a segfault in the " "winreg module when ``None`` is passed as a ``REG_BINARY`` value to " "SetValueEx. Patch by John Ehresman." msgstr "" -#: ../build/NEWS:28408 +#: ../build/NEWS:28443 msgid "" "`bpo-21090 `__: io.FileIO.readall() does " "not ignore I/O errors anymore. Before, it ignored I/O errors if at least the " "first C call read() succeed." msgstr "" -#: ../build/NEWS:28411 +#: ../build/NEWS:28446 msgid "" "`bpo-5800 `__: headers parameter of " "wsgiref.headers.Headers is now optional. Initial patch by Pablo Torres " "Navarrete and SilentGhost." msgstr "" -#: ../build/NEWS:28414 +#: ../build/NEWS:28449 msgid "" "`bpo-21781 `__: ssl.RAND_add() now " "supports strings longer than 2 GB." msgstr "" -#: ../build/NEWS:28416 +#: ../build/NEWS:28451 msgid "" "`bpo-21679 `__: Prevent extraneous " "fstat() calls during open(). Patch by Bohuslav Kabrda." msgstr "" -#: ../build/NEWS:28419 +#: ../build/NEWS:28454 msgid "" "`bpo-21863 `__: cProfile now displays " "the module name of C extension functions, in addition to their own name." msgstr "" -#: ../build/NEWS:28422 +#: ../build/NEWS:28457 msgid "" "`bpo-11453 `__: asyncore: emit a " "ResourceWarning when an unclosed file_wrapper object is destroyed. The " @@ -44897,86 +44851,86 @@ msgid "" "called twice: the second call does nothing." msgstr "" -#: ../build/NEWS:28426 +#: ../build/NEWS:28461 msgid "" "`bpo-21858 `__: Better handling of " "Python exceptions in the sqlite3 module." msgstr "" -#: ../build/NEWS:28428 +#: ../build/NEWS:28463 msgid "" "`bpo-21476 `__: Make sure the email." "parser.BytesParser TextIOWrapper is discarded after parsing, so the input " "file isn't unexpectedly closed." msgstr "" -#: ../build/NEWS:28431 +#: ../build/NEWS:28466 msgid "" "`bpo-20295 `__: imghdr now recognizes " "OpenEXR format images." msgstr "" -#: ../build/NEWS:28433 +#: ../build/NEWS:28468 msgid "" "`bpo-21729 `__: Used the \"with\" " "statement in the dbm.dumb module to ensure files closing. Patch by Claudiu " "Popa." msgstr "" -#: ../build/NEWS:28436 +#: ../build/NEWS:28471 msgid "" "`bpo-21491 `__: socketserver: Fix a race " "condition in child processes reaping." msgstr "" -#: ../build/NEWS:28438 +#: ../build/NEWS:28473 msgid "" "`bpo-21719 `__: Added the " "``st_file_attributes`` field to os.stat_result on Windows." msgstr "" -#: ../build/NEWS:28441 +#: ../build/NEWS:28476 msgid "" "`bpo-21832 `__: Require named tuple " "inputs to be exact strings." msgstr "" -#: ../build/NEWS:28443 +#: ../build/NEWS:28478 msgid "" "`bpo-21722 `__: The distutils \"upload\" " "command now exits with a non-zero return code when uploading fails. Patch " "by Martin Dengler." msgstr "" -#: ../build/NEWS:28446 +#: ../build/NEWS:28481 msgid "" "`bpo-21723 `__: asyncio.Queue: support " "any type of number (ex: float) for the maximum size. Patch written by " "Vajrasky Kok." msgstr "" -#: ../build/NEWS:28449 +#: ../build/NEWS:28484 msgid "" "`bpo-21711 `__: support for \"site-python" "\" directories has now been removed from the site module (it was deprecated " "in 3.4)." msgstr "" -#: ../build/NEWS:28452 +#: ../build/NEWS:28487 msgid "" "`bpo-17552 `__: new socket.sendfile() " "method allowing a file to be sent over a socket by using high-performance os." "sendfile() on UNIX. Patch by Giampaolo Rodola'." msgstr "" -#: ../build/NEWS:28456 +#: ../build/NEWS:28491 msgid "" "`bpo-18039 `__: dbm.dump.open() now " "always creates a new database when the flag has the value 'n'. Patch by " "Claudiu Popa." msgstr "" -#: ../build/NEWS:28459 +#: ../build/NEWS:28494 msgid "" "`bpo-21326 `__: Add a new is_closed() " "method to asyncio.BaseEventLoop. run_forever() and run_until_complete() " @@ -44984,58 +44938,58 @@ msgid "" "was closed." msgstr "" -#: ../build/NEWS:28463 +#: ../build/NEWS:28498 msgid "" "`bpo-21766 `__: Prevent a security hole " "in CGIHTTPServer by URL unquoting paths before checking for a CGI script at " "that path." msgstr "" -#: ../build/NEWS:28466 +#: ../build/NEWS:28501 msgid "" "`bpo-21310 `__: Fixed possible resource " "leak in failed open()." msgstr "" -#: ../build/NEWS:28468 +#: ../build/NEWS:28503 msgid "" "`bpo-21256 `__: Printout of keyword args " "should be in deterministic order in a mock function call. This will help to " "write better doctests." msgstr "" -#: ../build/NEWS:28471 +#: ../build/NEWS:28506 msgid "" "`bpo-21677 `__: Fixed chaining " "nonnormalized exceptions in io close() methods." msgstr "" -#: ../build/NEWS:28473 +#: ../build/NEWS:28508 msgid "" "`bpo-11709 `__: Fix the pydoc.help " "function to not fail when sys.stdin is not a valid file." msgstr "" -#: ../build/NEWS:28476 +#: ../build/NEWS:28511 msgid "" "`bpo-21515 `__: tempfile.TemporaryFile " "now uses os.O_TMPFILE flag is available." msgstr "" -#: ../build/NEWS:28478 +#: ../build/NEWS:28513 msgid "" "`bpo-13223 `__: Fix pydoc.writedoc so " "that the HTML documentation for methods that use 'self' in the example code " "is generated correctly." msgstr "" -#: ../build/NEWS:28481 +#: ../build/NEWS:28516 msgid "" "`bpo-21463 `__: In urllib.request, fix " "pruning of the FTP cache." msgstr "" -#: ../build/NEWS:28483 +#: ../build/NEWS:28518 msgid "" "`bpo-21618 `__: The subprocess module " "could fail to close open fds that were inherited by the calling process and " @@ -45044,20 +44998,20 @@ msgid "" "and all fds are closed." msgstr "" -#: ../build/NEWS:28488 +#: ../build/NEWS:28523 msgid "" "`bpo-20383 `__: Introduce importlib.util." "module_from_spec() as the preferred way to create a new module." msgstr "" -#: ../build/NEWS:28491 +#: ../build/NEWS:28526 msgid "" "`bpo-21552 `__: Fixed possible integer " "overflow of too long string lengths in the tkinter module on 64-bit " "platforms." msgstr "" -#: ../build/NEWS:28494 +#: ../build/NEWS:28529 msgid "" "`bpo-14315 `__: The zipfile module now " "ignores extra fields in the central directory that are too short to be " @@ -45066,248 +45020,248 @@ msgid "" "zip tools." msgstr "" -#: ../build/NEWS:28499 +#: ../build/NEWS:28534 msgid "" "`bpo-13742 `__: Added \"key\" and " "\"reverse\" parameters to heapq.merge(). (First draft of patch contributed " "by Simon Sapin.)" msgstr "" -#: ../build/NEWS:28502 +#: ../build/NEWS:28537 msgid "" "`bpo-21402 `__: tkinter.ttk now works " "when default root window is not set." msgstr "" -#: ../build/NEWS:28504 +#: ../build/NEWS:28539 msgid "" "`bpo-3015 `__: _tkinter.create() now " "creates tkapp object with wantobject=1 by default." msgstr "" -#: ../build/NEWS:28507 +#: ../build/NEWS:28542 msgid "" "`bpo-10203 `__: sqlite3.Row now truly " "supports sequence protocol. In particular it supports reverse() and " "negative indices. Original patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:28511 +#: ../build/NEWS:28546 msgid "" "`bpo-18807 `__: If copying (no symlinks) " "specified for a venv, then the python interpreter aliases (python, python3) " "are now created by copying rather than symlinking." msgstr "" -#: ../build/NEWS:28515 +#: ../build/NEWS:28550 msgid "" "`bpo-20197 `__: Added support for the " "WebP image type in the imghdr module. Patch by Fabrice Aneche and Claudiu " "Popa." msgstr "" -#: ../build/NEWS:28518 +#: ../build/NEWS:28553 msgid "" "`bpo-21513 `__: Speedup some properties " "of IP addresses (IPv4Address, IPv6Address) such as .is_private or ." "is_multicast." msgstr "" -#: ../build/NEWS:28521 +#: ../build/NEWS:28556 msgid "" "`bpo-21137 `__: Improve the repr for " "threading.Lock() and its variants by showing the \"locked\" or \"unlocked\" " "status. Patch by Berker Peksag." msgstr "" -#: ../build/NEWS:28524 +#: ../build/NEWS:28559 msgid "" "`bpo-21538 `__: The plistlib module now " "supports loading of binary plist files when reference or offset size is not " "a power of two." msgstr "" -#: ../build/NEWS:28527 +#: ../build/NEWS:28562 msgid "" "`bpo-21455 `__: Add a default backlog to " "socket.listen()." msgstr "" -#: ../build/NEWS:28529 +#: ../build/NEWS:28564 msgid "" "`bpo-21525 `__: Most Tkinter methods " "which accepted tuples now accept lists too." msgstr "" -#: ../build/NEWS:28532 +#: ../build/NEWS:28567 msgid "" "`bpo-22166 `__: With the assistance of a " "new internal _codecs._forget_codec helping function, test_codecs now clears " "the encoding caches to avoid the appearance of a reference leak" msgstr "" -#: ../build/NEWS:28536 +#: ../build/NEWS:28571 msgid "" "`bpo-22236 `__: Tkinter tests now don't " "reuse default root window. New root window is created for every test class." msgstr "" -#: ../build/NEWS:28539 +#: ../build/NEWS:28574 msgid "" "`bpo-10744 `__: Fix :pep:`3118` format " "strings on ctypes objects with a nontrivial shape." msgstr "" -#: ../build/NEWS:28542 +#: ../build/NEWS:28577 msgid "" "`bpo-20826 `__: Optimize ipaddress." "collapse_addresses()." msgstr "" -#: ../build/NEWS:28544 +#: ../build/NEWS:28579 msgid "" "`bpo-21487 `__: Optimize ipaddress." "summarize_address_range() and ipaddress.{IPv4Network,IPv6Network}.subnets()." msgstr "" -#: ../build/NEWS:28547 +#: ../build/NEWS:28582 msgid "" "`bpo-21486 `__: Optimize parsing of " "netmasks in ipaddress.IPv4Network and ipaddress.IPv6Network." msgstr "" -#: ../build/NEWS:28550 +#: ../build/NEWS:28585 msgid "" "`bpo-13916 `__: Disallowed the " "surrogatepass error handler for non UTF-\\* encodings." msgstr "" -#: ../build/NEWS:28553 +#: ../build/NEWS:28588 msgid "" "`bpo-20998 `__: Fixed re.fullmatch() of " "repeated single character pattern with ignore case. Original patch by " "Matthew Barnett." msgstr "" -#: ../build/NEWS:28556 +#: ../build/NEWS:28591 msgid "" "`bpo-21075 `__: fileinput.FileInput now " "reads bytes from standard stream if binary mode is specified. Patch by Sam " "Kimbrel." msgstr "" -#: ../build/NEWS:28559 +#: ../build/NEWS:28594 msgid "" "`bpo-19775 `__: Add a samefile() method " "to pathlib Path objects. Initial patch by Vajrasky Kok." msgstr "" -#: ../build/NEWS:28562 +#: ../build/NEWS:28597 msgid "" "`bpo-21226 `__: Set up modules properly " "in PyImport_ExecCodeModuleObject (and friends)." msgstr "" -#: ../build/NEWS:28565 +#: ../build/NEWS:28600 msgid "" "`bpo-21398 `__: Fix a unicode error in " "the pydoc pager when the documentation contains characters not encodable to " "the stdout encoding." msgstr "" -#: ../build/NEWS:28568 +#: ../build/NEWS:28603 msgid "" "`bpo-16531 `__: ipaddress.IPv4Network " "and ipaddress.IPv6Network now accept an (address, netmask) tuple argument, " "so as to easily construct network objects from existing addresses." msgstr "" -#: ../build/NEWS:28572 +#: ../build/NEWS:28607 msgid "" "`bpo-21156 `__: importlib.abc." "InspectLoader.source_to_code() is now a staticmethod." msgstr "" -#: ../build/NEWS:28575 +#: ../build/NEWS:28610 msgid "" "`bpo-21424 `__: Simplified and optimized " "heaqp.nlargest() and nmsmallest() to make fewer tuple comparisons." msgstr "" -#: ../build/NEWS:28578 +#: ../build/NEWS:28613 msgid "" "`bpo-21396 `__: Fix TextIOWrapper(..., " "write_through=True) to not force a flush() on the underlying binary stream. " "Patch by akira." msgstr "" -#: ../build/NEWS:28581 +#: ../build/NEWS:28616 msgid "" "`bpo-18314 `__: Unlink now removes " "junctions on Windows. Patch by Kim Gräsman" msgstr "" -#: ../build/NEWS:28583 +#: ../build/NEWS:28618 msgid "" "`bpo-21088 `__: Bugfix for curses.window." "addch() regression in 3.4.0. In porting to Argument Clinic, the first two " "arguments were reversed." msgstr "" -#: ../build/NEWS:28586 +#: ../build/NEWS:28621 msgid "" "`bpo-21407 `__: _decimal: The module now " "supports function signatures." msgstr "" -#: ../build/NEWS:28588 +#: ../build/NEWS:28623 msgid "" "`bpo-10650 `__: Remove the non-standard " "'watchexp' parameter from the Decimal.quantize() method in the Python " "version. It had never been present in the C version." msgstr "" -#: ../build/NEWS:28592 +#: ../build/NEWS:28627 msgid "" "`bpo-21469 `__: Reduced the risk of " "false positives in robotparser by checking to make sure that robots.txt has " "been read or does not exist prior to returning True in can_fetch()." msgstr "" -#: ../build/NEWS:28596 +#: ../build/NEWS:28631 msgid "" "`bpo-19414 `__: Have the OrderedDict " "mark deleted links as unusable. This gives an early failure if the link is " "deleted during iteration." msgstr "" -#: ../build/NEWS:28599 +#: ../build/NEWS:28634 msgid "" "`bpo-21421 `__: Add __slots__ to the " "MappingViews ABC. Patch by Josh Rosenberg." msgstr "" -#: ../build/NEWS:28601 +#: ../build/NEWS:28636 msgid "" "`bpo-21101 `__: Eliminate double hashing " "in the C speed-up code for collections.Counter()." msgstr "" -#: ../build/NEWS:28604 +#: ../build/NEWS:28639 msgid "" "`bpo-21321 `__: itertools.islice() now " "releases the reference to the source iterator when the slice is exhausted. " "Patch by Anton Afanasyev." msgstr "" -#: ../build/NEWS:28607 +#: ../build/NEWS:28642 msgid "" "`bpo-21057 `__: TextIOWrapper now allows " "the underlying binary stream's read() or read1() method to return an " "arbitrary bytes-like object (such as a memoryview). Patch by Nikolaus Rath." msgstr "" -#: ../build/NEWS:28611 +#: ../build/NEWS:28646 msgid "" "`bpo-20951 `__: SSLSocket.send() now " "raises either SSLWantReadError or SSLWantWriteError on a non-blocking socket " @@ -45315,44 +45269,44 @@ msgid "" "Nikolaus Rath." msgstr "" -#: ../build/NEWS:28615 +#: ../build/NEWS:28650 msgid "" "`bpo-13248 `__: removed previously " "deprecated asyncore.dispatcher __getattr__ cheap inheritance hack." msgstr "" -#: ../build/NEWS:28618 +#: ../build/NEWS:28653 msgid "" "`bpo-9815 `__: assertRaises now tries to " "clear references to local variables in the exception's traceback." msgstr "" -#: ../build/NEWS:28621 +#: ../build/NEWS:28656 msgid "" "`bpo-19940 `__: ssl." "cert_time_to_seconds() now interprets the given time string in the UTC " "timezone (as specified in RFC 5280), not the local timezone." msgstr "" -#: ../build/NEWS:28624 +#: ../build/NEWS:28659 msgid "" "`bpo-13204 `__: Calling sys.flags." "__new__ would crash the interpreter, now it raises a TypeError." msgstr "" -#: ../build/NEWS:28627 +#: ../build/NEWS:28662 msgid "" "`bpo-19385 `__: Make operations on a " "closed dbm.dumb database always raise the same exception." msgstr "" -#: ../build/NEWS:28630 +#: ../build/NEWS:28665 msgid "" "`bpo-21207 `__: Detect when the os." "urandom cached fd has been closed or replaced, and open it anew." msgstr "" -#: ../build/NEWS:28633 +#: ../build/NEWS:28668 msgid "" "`bpo-21291 `__: subprocess's Popen." "wait() is now thread safe so that multiple threads may be calling wait() or " @@ -45360,13 +45314,13 @@ msgid "" "returncode value." msgstr "" -#: ../build/NEWS:28637 +#: ../build/NEWS:28672 msgid "" "`bpo-21127 `__: Path objects can now be " "instantiated from str subclass instances (such as ``numpy.str_``)." msgstr "" -#: ../build/NEWS:28640 +#: ../build/NEWS:28675 msgid "" "`bpo-15002 `__: urllib.response object " "to use _TemporaryFileWrapper (and _TemporaryFileCloser) facility. Provides a " @@ -45374,71 +45328,71 @@ msgid "" "Theune." msgstr "" -#: ../build/NEWS:28644 +#: ../build/NEWS:28679 msgid "" "`bpo-12220 `__: mindom now raises a " "custom ValueError indicating it doesn't support spaces in URIs instead of " "letting a 'split' ValueError bubble up." msgstr "" -#: ../build/NEWS:28647 +#: ../build/NEWS:28682 msgid "" "`bpo-21068 `__: The ssl.PROTOCOL* " "constants are now enum members." msgstr "" -#: ../build/NEWS:28649 +#: ../build/NEWS:28684 msgid "" "`bpo-21276 `__: posixmodule: Don't " "define USE_XATTRS on KFreeBSD and the Hurd." msgstr "" -#: ../build/NEWS:28651 +#: ../build/NEWS:28686 msgid "" "`bpo-21262 `__: New method " "assert_not_called for Mock. It raises AssertionError if the mock has been " "called." msgstr "" -#: ../build/NEWS:28654 +#: ../build/NEWS:28689 msgid "" "`bpo-21238 `__: New keyword argument " "`unsafe` to Mock. It raises `AttributeError` incase of an attribute " "startswith assert or assret." msgstr "" -#: ../build/NEWS:28657 +#: ../build/NEWS:28692 msgid "" "`bpo-20896 `__: ssl." "get_server_certificate() now uses PROTOCOL_SSLv23, not PROTOCOL_SSLv3, for " "maximum compatibility." msgstr "" -#: ../build/NEWS:28660 +#: ../build/NEWS:28695 msgid "" "`bpo-21239 `__: patch.stopall() didn't " "work deterministically when the same name was patched more than once." msgstr "" -#: ../build/NEWS:28663 +#: ../build/NEWS:28698 msgid "" "`bpo-21203 `__: Updated fileConfig and " "dictConfig to remove inconsistencies. Thanks to Jure Koren for the patch." msgstr "" -#: ../build/NEWS:28666 +#: ../build/NEWS:28701 msgid "" "`bpo-21222 `__: Passing name keyword " "argument to mock.create_autospec now works." msgstr "" -#: ../build/NEWS:28669 +#: ../build/NEWS:28704 msgid "" "`bpo-21197 `__: Add lib64 -> lib symlink " "in venvs on 64-bit non-OS X POSIX." msgstr "" -#: ../build/NEWS:28671 +#: ../build/NEWS:28706 msgid "" "`bpo-17498 `__: Some SMTP servers " "disconnect after certain errors, violating strict RFC conformance. Instead " @@ -45447,213 +45401,213 @@ msgid "" "until the next command is issued." msgstr "" -#: ../build/NEWS:28676 +#: ../build/NEWS:28711 msgid "" "`bpo-17826 `__: setting an iterable " "side_effect on a mock function created by create_autospec now works. Patch " "by Kushal Das." msgstr "" -#: ../build/NEWS:28679 +#: ../build/NEWS:28714 msgid "" "`bpo-7776 `__: Fix ``Host:`` header and " "reconnection when using http.client.HTTPConnection.set_tunnel(). Patch by " "Nikolaus Rath." msgstr "" -#: ../build/NEWS:28682 +#: ../build/NEWS:28717 msgid "" "`bpo-20968 `__: unittest.mock.MagicMock " "now supports division. Patch by Johannes Baiter." msgstr "" -#: ../build/NEWS:28685 +#: ../build/NEWS:28720 msgid "" "`bpo-21529 `__: Fix arbitrary memory " "access in JSONDecoder.raw_decode with a negative second parameter. Bug " "reported by Guido Vranken. (See also: CVE-2014-4616)" msgstr "" -#: ../build/NEWS:28689 +#: ../build/NEWS:28724 msgid "" "`bpo-21169 `__: getpass now handles non-" "ascii characters that the input stream encoding cannot encode by re-encoding " "using the replace error handler." msgstr "" -#: ../build/NEWS:28692 +#: ../build/NEWS:28727 msgid "" "`bpo-21171 `__: Fixed undocumented " "filter API of the rot13 codec. Patch by Berker Peksag." msgstr "" -#: ../build/NEWS:28695 +#: ../build/NEWS:28730 msgid "" "`bpo-20539 `__: Improved math.factorial " "error message for large positive inputs and changed exception type " "(OverflowError -> ValueError) for large negative inputs." msgstr "" -#: ../build/NEWS:28699 +#: ../build/NEWS:28734 msgid "" "`bpo-21172 `__: isinstance check relaxed " "from dict to collections.Mapping." msgstr "" -#: ../build/NEWS:28701 +#: ../build/NEWS:28736 msgid "" "`bpo-21155 `__: asyncio.EventLoop." "create_unix_server() now raises a ValueError if path and sock are specified " "at the same time." msgstr "" -#: ../build/NEWS:28704 +#: ../build/NEWS:28739 msgid "" "`bpo-21136 `__: Avoid unnecessary " "normalization of Fractions resulting from power and other operations. Patch " "by Raymond Hettinger." msgstr "" -#: ../build/NEWS:28707 +#: ../build/NEWS:28742 msgid "" "`bpo-17621 `__: Introduce importlib.util." "LazyLoader." msgstr "" -#: ../build/NEWS:28709 +#: ../build/NEWS:28744 msgid "" "`bpo-21076 `__: signal module constants " "were turned into enums. Patch by Giampaolo Rodola'." msgstr "" -#: ../build/NEWS:28712 +#: ../build/NEWS:28747 msgid "" "`bpo-20636 `__: Improved the repr of " "Tkinter widgets." msgstr "" -#: ../build/NEWS:28714 +#: ../build/NEWS:28749 msgid "" "`bpo-19505 `__: The items, keys, and " "values views of OrderedDict now support reverse iteration using reversed()." msgstr "" -#: ../build/NEWS:28717 +#: ../build/NEWS:28752 msgid "" "`bpo-21149 `__: Improved thread-safety " "in logging cleanup during interpreter shutdown. Thanks to Devin Jeanpierre " "for the patch." msgstr "" -#: ../build/NEWS:28720 +#: ../build/NEWS:28755 msgid "" "`bpo-21058 `__: Fix a leak of file " "descriptor in :func:`tempfile.NamedTemporaryFile`, close the file descriptor " "if :func:`io.open` fails" msgstr "" -#: ../build/NEWS:28724 +#: ../build/NEWS:28759 msgid "" "`bpo-21200 `__: Return None from pkgutil." "get_loader() when __spec__ is missing." msgstr "" -#: ../build/NEWS:28726 +#: ../build/NEWS:28761 msgid "" "`bpo-21013 `__: Enhance ssl." "create_default_context() when used for server side sockets to provide better " "security by default." msgstr "" -#: ../build/NEWS:28729 +#: ../build/NEWS:28764 msgid "" "`bpo-20145 `__: `assertRaisesRegex` and " "`assertWarnsRegex` now raise a TypeError if the second argument is not a " "string or compiled regex." msgstr "" -#: ../build/NEWS:28732 +#: ../build/NEWS:28767 msgid "" "`bpo-20633 `__: Replace relative import " "by absolute import." msgstr "" -#: ../build/NEWS:28734 +#: ../build/NEWS:28769 msgid "" "`bpo-20980 `__: Stop wrapping exception " "when using ThreadPool." msgstr "" -#: ../build/NEWS:28736 +#: ../build/NEWS:28771 msgid "" "`bpo-21082 `__: In os.makedirs, do not " "set the process-wide umask. Note this changes behavior of makedirs when " "exist_ok=True." msgstr "" -#: ../build/NEWS:28739 +#: ../build/NEWS:28774 msgid "" "`bpo-20990 `__: Fix issues found by " "pyflakes for multiprocessing." msgstr "" -#: ../build/NEWS:28741 +#: ../build/NEWS:28776 msgid "" "`bpo-21015 `__: SSL contexts will now " "automatically select an elliptic curve for ECDH key exchange on OpenSSL " "1.0.2 and later, and otherwise default to \"prime256v1\"." msgstr "" -#: ../build/NEWS:28745 +#: ../build/NEWS:28780 msgid "" "`bpo-21000 `__: Improve the command-line " "interface of json.tool." msgstr "" -#: ../build/NEWS:28747 +#: ../build/NEWS:28782 msgid "" "`bpo-20995 `__: Enhance default ciphers " "used by the ssl module to enable better security and prioritize perfect " "forward secrecy." msgstr "" -#: ../build/NEWS:28750 +#: ../build/NEWS:28785 msgid "" "`bpo-20884 `__: Don't assume that " "__file__ is defined on importlib.__init__." msgstr "" -#: ../build/NEWS:28752 +#: ../build/NEWS:28787 msgid "" "`bpo-21499 `__: Ignore __builtins__ in " "several test_importlib.test_api tests." msgstr "" -#: ../build/NEWS:28754 +#: ../build/NEWS:28789 msgid "" "`bpo-20627 `__: xmlrpc.client." "ServerProxy is now a context manager." msgstr "" -#: ../build/NEWS:28756 +#: ../build/NEWS:28791 msgid "" "`bpo-19165 `__: The formatter module now " "raises DeprecationWarning instead of PendingDeprecationWarning." msgstr "" -#: ../build/NEWS:28759 +#: ../build/NEWS:28794 msgid "" "`bpo-13936 `__: Remove the ability of " "datetime.time instances to be considered false in boolean contexts." msgstr "" -#: ../build/NEWS:28762 +#: ../build/NEWS:28797 msgid "" "`bpo-18931 `__: selectors module now " "supports /dev/poll on Solaris. Patch by Giampaolo Rodola'." msgstr "" -#: ../build/NEWS:28765 +#: ../build/NEWS:28800 msgid "" "`bpo-19977 `__: When the ``LC_TYPE`` " "locale is the POSIX locale (``C`` locale), :py:data:`sys.stdin` and :py:data:" @@ -45661,13 +45615,13 @@ msgid "" "the ``strict`` error handler." msgstr "" -#: ../build/NEWS:28770 +#: ../build/NEWS:28805 msgid "" "`bpo-20574 `__: Implement incremental " "decoder for cp65001 code (Windows code page 65001, Microsoft UTF-8)." msgstr "" -#: ../build/NEWS:28773 +#: ../build/NEWS:28808 msgid "" "`bpo-20879 `__: Delay the initialization " "of encoding and decoding tables for base32, ascii85 and base85 codecs in the " @@ -45676,13 +45630,13 @@ msgid "" "used." msgstr "" -#: ../build/NEWS:28778 +#: ../build/NEWS:28813 msgid "" "`bpo-19157 `__: Include the broadcast " "address in the usuable hosts for IPv6 in ipaddress." msgstr "" -#: ../build/NEWS:28781 +#: ../build/NEWS:28816 msgid "" "`bpo-11599 `__: When an external command " "(e.g. compiler) fails, distutils now prints out the whole command line " @@ -45690,90 +45644,90 @@ msgid "" "DISTUTILS_DEBUG is set." msgstr "" -#: ../build/NEWS:28785 +#: ../build/NEWS:28820 msgid "" "`bpo-4931 `__: distutils should not " "produce unhelpful \"error: None\" messages anymore. distutils.util." "grok_environment_error is kept but doc-deprecated." msgstr "" -#: ../build/NEWS:28788 +#: ../build/NEWS:28823 msgid "" "`bpo-20875 `__: Prevent possible gzip " "\"'read' is not defined\" NameError. Patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:28791 +#: ../build/NEWS:28826 msgid "" "`bpo-11558 `__: ``email.message.Message." "attach`` now returns a more useful error message if ``attach`` is called on " "a message for which ``is_multipart`` is False." msgstr "" -#: ../build/NEWS:28795 +#: ../build/NEWS:28830 msgid "" "`bpo-20283 `__: RE pattern methods now " "accept the string keyword parameters as documented. The pattern and source " "keyword parameters are left as deprecated aliases." msgstr "" -#: ../build/NEWS:28799 +#: ../build/NEWS:28834 msgid "" "`bpo-20778 `__: Fix modulefinder to work " "with bytecode-only modules." msgstr "" -#: ../build/NEWS:28801 +#: ../build/NEWS:28836 msgid "" "`bpo-20791 `__: copy.copy() now doesn't " "make a copy when the input is a bytes object. Initial patch by Peter Otten." msgstr "" -#: ../build/NEWS:28804 +#: ../build/NEWS:28839 msgid "" "`bpo-19748 `__: On AIX, time.mktime() " "now raises an OverflowError for year outsize range [1902; 2037]." msgstr "" -#: ../build/NEWS:28807 +#: ../build/NEWS:28842 msgid "" "`bpo-19573 `__: inspect.signature: Use " "enum for parameter kind constants." msgstr "" -#: ../build/NEWS:28809 +#: ../build/NEWS:28844 msgid "" "`bpo-20726 `__: inspect.signature: Make " "Signature and Parameter picklable." msgstr "" -#: ../build/NEWS:28811 +#: ../build/NEWS:28846 msgid "" "`bpo-17373 `__: Add inspect.Signature." "from_callable method." msgstr "" -#: ../build/NEWS:28813 +#: ../build/NEWS:28848 msgid "" "`bpo-20378 `__: Improve repr of inspect." "Signature and inspect.Parameter." msgstr "" -#: ../build/NEWS:28815 +#: ../build/NEWS:28850 msgid "" "`bpo-20816 `__: Fix inspect." "getcallargs() to raise correct TypeError for missing keyword-only arguments. " "Patch by Jeremiah Lowin." msgstr "" -#: ../build/NEWS:28818 +#: ../build/NEWS:28853 msgid "" "`bpo-20817 `__: Fix inspect." "getcallargs() to fail correctly if more than 3 arguments are missing. Patch " "by Jeremiah Lowin." msgstr "" -#: ../build/NEWS:28821 +#: ../build/NEWS:28856 msgid "" "`bpo-6676 `__: Ensure a meaningful " "exception is raised when attempting to parse more than one XML document per " @@ -45781,7 +45735,7 @@ msgid "" "Amaury Forgeot d'Arc, with suggested wording by David Gutteridge)" msgstr "" -#: ../build/NEWS:28826 +#: ../build/NEWS:28861 msgid "" "`bpo-21117 `__: Fix inspect.signature to " "better support functools.partial. Due to the specifics of functools.partial " @@ -45789,80 +45743,80 @@ msgid "" "become keyword-only." msgstr "" -#: ../build/NEWS:28831 +#: ../build/NEWS:28866 msgid "" "`bpo-20334 `__: inspect.Signature and " "inspect.Parameter are now hashable. Thanks to Antony Lee for bug reports and " "suggestions." msgstr "" -#: ../build/NEWS:28834 +#: ../build/NEWS:28869 msgid "" "`bpo-15916 `__: doctest.DocTestSuite " "returns an empty unittest.TestSuite instead of raising ValueError if it " "finds no tests" msgstr "" -#: ../build/NEWS:28837 +#: ../build/NEWS:28872 msgid "" "`bpo-21209 `__: Fix asyncio.tasks." "CoroWrapper to workaround a bug in yield-from implementation in CPythons " "prior to 3.4.1." msgstr "" -#: ../build/NEWS:28840 +#: ../build/NEWS:28875 msgid "" "asyncio: Add gi_{frame,running,code} properties to CoroWrapper (upstream " "`bpo-163 `__)." msgstr "" -#: ../build/NEWS:28843 +#: ../build/NEWS:28878 msgid "" "`bpo-21311 `__: Avoid exception in " "_osx_support with non-standard compiler configurations. Patch by John " "Szakmeister." msgstr "" -#: ../build/NEWS:28846 +#: ../build/NEWS:28881 msgid "" "`bpo-11571 `__: Ensure that the turtle " "window becomes the topmost window when launched on OS X." msgstr "" -#: ../build/NEWS:28849 +#: ../build/NEWS:28884 msgid "" "`bpo-21801 `__: Validate that " "__signature__ is None or an instance of Signature." msgstr "" -#: ../build/NEWS:28852 +#: ../build/NEWS:28887 msgid "" "`bpo-21923 `__: Prevent AttributeError " "in distutils.sysconfig.customize_compiler due to possible uninitialized " "_config_vars." msgstr "" -#: ../build/NEWS:28856 +#: ../build/NEWS:28891 msgid "" "`bpo-21323 `__: Fix http.server to again " "handle scripts in CGI subdirectories, broken by the fix for security " "`bpo-19435 `__. Patch by Zach Byrne." msgstr "" -#: ../build/NEWS:28859 +#: ../build/NEWS:28894 msgid "" "`bpo-22733 `__: Fix ffi_prep_args not " "zero-extending argument values correctly on 64-bit Windows." msgstr "" -#: ../build/NEWS:28862 +#: ../build/NEWS:28897 msgid "" "`bpo-23302 `__: Default to TCP_NODELAY=1 " "upon establishing an HTTPConnection. Removed use of hard-coded MSS as it's " "an optimization that's no longer needed with Nagle disabled." msgstr "" -#: ../build/NEWS:28869 +#: ../build/NEWS:28904 msgid "" "`bpo-20577 `__: Configuration of the max " "line length for the FormatParagraph extension has been moved from the " @@ -45870,20 +45824,20 @@ msgid "" "Config Extensions dialog. Patch by Tal Einat." msgstr "" -#: ../build/NEWS:28874 +#: ../build/NEWS:28909 msgid "" "`bpo-16893 `__: Update Idle doc chapter " "to match current Idle and add new information." msgstr "" -#: ../build/NEWS:28877 +#: ../build/NEWS:28912 msgid "" "`bpo-3068 `__: Add Idle extension " "configuration dialog to Options menu. Changes are written to HOME/.idlerc/" "config-extensions.cfg. Original patch by Tal Einat." msgstr "" -#: ../build/NEWS:28881 +#: ../build/NEWS:28916 msgid "" "`bpo-16233 `__: A module browser (File : " "Class Browser, Alt+C) requires an editor window with a filename. When Class " @@ -45893,7 +45847,7 @@ msgid "" "corresponding browser is also opened." msgstr "" -#: ../build/NEWS:28887 +#: ../build/NEWS:28922 msgid "" "`bpo-4832 `__: Save As to type Python " "files automatically adds .py to the name you enter (even if your system does " @@ -45901,100 +45855,100 @@ msgid "" "files." msgstr "" -#: ../build/NEWS:28891 +#: ../build/NEWS:28926 msgid "" "`bpo-21986 `__: Code objects are not " "normally pickled by the pickle module. To match this, they are no longer " "pickled when running under Idle." msgstr "" -#: ../build/NEWS:28894 +#: ../build/NEWS:28929 msgid "" "`bpo-17390 `__: Adjust Editor window " "title; remove 'Python', move version to end." msgstr "" -#: ../build/NEWS:28897 +#: ../build/NEWS:28932 msgid "" "`bpo-14105 `__: Idle debugger " "breakpoints no longer disappear when inserting or deleting lines." msgstr "" -#: ../build/NEWS:28900 +#: ../build/NEWS:28935 msgid "" "`bpo-17172 `__: Turtledemo can now be " "run from Idle. Currently, the entry is on the Help menu, but it may move to " "Run. Patch by Ramchandra Apt and Lita Cho." msgstr "" -#: ../build/NEWS:28904 +#: ../build/NEWS:28939 msgid "" "`bpo-21765 `__: Add support for non-" "ascii identifiers to HyperParser." msgstr "" -#: ../build/NEWS:28906 +#: ../build/NEWS:28941 msgid "" "`bpo-21940 `__: Add unittest for " "WidgetRedirector. Initial patch by Saimadhav Heblikar." msgstr "" -#: ../build/NEWS:28909 +#: ../build/NEWS:28944 msgid "" "`bpo-18592 `__: Add unittest for " "SearchDialogBase. Patch by Phil Webster." msgstr "" -#: ../build/NEWS:28911 +#: ../build/NEWS:28946 msgid "" "`bpo-21694 `__: Add unittest for " "ParenMatch. Patch by Saimadhav Heblikar." msgstr "" -#: ../build/NEWS:28913 +#: ../build/NEWS:28948 msgid "" "`bpo-21686 `__: add unittest for " "HyperParser. Original patch by Saimadhav Heblikar." msgstr "" -#: ../build/NEWS:28916 +#: ../build/NEWS:28951 msgid "" "`bpo-12387 `__: Add missing " "upper(lower)case versions of default Windows key bindings for Idle so Caps " "Lock does not disable them. Patch by Roger Serwy." msgstr "" -#: ../build/NEWS:28920 +#: ../build/NEWS:28955 msgid "" "`bpo-21695 `__: Closing a Find-in-files " "output window while the search is still in progress no longer closes Idle." msgstr "" -#: ../build/NEWS:28923 +#: ../build/NEWS:28958 msgid "" "`bpo-18910 `__: Add unittest for " "textView. Patch by Phil Webster." msgstr "" -#: ../build/NEWS:28925 +#: ../build/NEWS:28960 msgid "" "`bpo-18292 `__: Add unittest for " "AutoExpand. Patch by Saihadhav Heblikar." msgstr "" -#: ../build/NEWS:28927 +#: ../build/NEWS:28962 msgid "" "`bpo-18409 `__: Add unittest for " "AutoComplete. Patch by Phil Webster." msgstr "" -#: ../build/NEWS:28929 +#: ../build/NEWS:28964 msgid "" "`bpo-21477 `__: htest.py - Improve " "framework, complete set of tests. Patches by Saimadhav Heblikar" msgstr "" -#: ../build/NEWS:28932 +#: ../build/NEWS:28967 msgid "" "`bpo-18104 `__: Add idlelib/idle_test/" "htest.py with a few sample tests to begin consolidating and improving human-" @@ -46002,89 +45956,89 @@ msgid "" "Running the module as __main__ runs all tests." msgstr "" -#: ../build/NEWS:28937 +#: ../build/NEWS:28972 msgid "" "`bpo-21139 `__: Change default paragraph " "width to 72, the :pep:`8` recommendation." msgstr "" -#: ../build/NEWS:28940 +#: ../build/NEWS:28975 msgid "" "`bpo-21284 `__: Paragraph reformat test " "passes after user changes reformat width." msgstr "" -#: ../build/NEWS:28943 +#: ../build/NEWS:28978 msgid "" "`bpo-17654 `__: Ensure IDLE menus are " "customized properly on OS X for non-framework builds and for all variants of " "Tk." msgstr "" -#: ../build/NEWS:28946 +#: ../build/NEWS:28981 msgid "" "`bpo-23180 `__: Rename IDLE \"Windows\" " "menu item to \"Window\". Patch by Al Sweigart." msgstr "" -#: ../build/NEWS:28952 +#: ../build/NEWS:28987 msgid "" "`bpo-15506 `__: Use standard " "PKG_PROG_PKG_CONFIG autoconf macro in the configure script." msgstr "" -#: ../build/NEWS:28955 +#: ../build/NEWS:28990 msgid "" "`bpo-22935 `__: Allow the ssl module to " "be compiled if openssl doesn't support SSL 3." msgstr "" -#: ../build/NEWS:28958 +#: ../build/NEWS:28993 msgid "" "`bpo-22592 `__: Drop support of the " "Borland C compiler to build Python. The distutils module still supports it " "to build extensions." msgstr "" -#: ../build/NEWS:28961 +#: ../build/NEWS:28996 msgid "" "`bpo-22591 `__: Drop support of MS-DOS, " "especially of the DJGPP compiler (MS-DOS port of GCC)." msgstr "" -#: ../build/NEWS:28964 +#: ../build/NEWS:28999 msgid "" "`bpo-16537 `__: Check whether self." "extensions is empty in setup.py. Patch by Jonathan Hosmer." msgstr "" -#: ../build/NEWS:28967 +#: ../build/NEWS:29002 msgid "" "`bpo-22359 `__: Remove incorrect uses of " "recursive make. Patch by Jonas Wagner." msgstr "" -#: ../build/NEWS:28970 +#: ../build/NEWS:29005 msgid "" "`bpo-21958 `__: Define HAVE_ROUND when " "building with Visual Studio 2013 and above. Patch by Zachary Turner." msgstr "" -#: ../build/NEWS:28973 +#: ../build/NEWS:29008 msgid "" "`bpo-18093 `__: the programs that embed " "the CPython runtime are now in a separate \"Programs\" directory, rather " "than being kept in the Modules directory." msgstr "" -#: ../build/NEWS:28977 +#: ../build/NEWS:29012 msgid "" "`bpo-15759 `__: \"make suspicious\", " "\"make linkcheck\" and \"make doctest\" in Doc/ now display special message " "when and only when there are failures." msgstr "" -#: ../build/NEWS:28980 +#: ../build/NEWS:29015 msgid "" "`bpo-21141 `__: The Windows build " "process no longer attempts to find Perl, instead relying on OpenSSL source " @@ -46095,109 +46049,109 @@ msgid "" "and ready to build." msgstr "" -#: ../build/NEWS:28987 +#: ../build/NEWS:29022 msgid "" "`bpo-21037 `__: Add a build option to " "enable AddressSanitizer support." msgstr "" -#: ../build/NEWS:28989 +#: ../build/NEWS:29024 msgid "" "`bpo-19962 `__: The Windows build " "process now creates \"python.bat\" in the root of the source tree, which " "passes all arguments through to the most recently built interpreter." msgstr "" -#: ../build/NEWS:28993 +#: ../build/NEWS:29028 msgid "" "`bpo-21285 `__: Refactor and fix curses " "configure check to always search in a ncursesw directory." msgstr "" -#: ../build/NEWS:28996 +#: ../build/NEWS:29031 msgid "" "`bpo-15234 `__: For BerkeleyDB and " "Sqlite, only add the found library and include directories if they aren't " "already being searched. This avoids an explicit runtime library dependency." msgstr "" -#: ../build/NEWS:29000 +#: ../build/NEWS:29035 msgid "" "`bpo-17861 `__: Tools/scripts/" "generate_opcode_h.py automatically regenerates Include/opcode.h from Lib/" "opcode.py if the latter gets any change." msgstr "" -#: ../build/NEWS:29003 +#: ../build/NEWS:29038 msgid "" "`bpo-20644 `__: OS X installer build " "support for documentation build changes in 3.4.1: assume externally supplied " "sphinx-build is available in /usr/bin." msgstr "" -#: ../build/NEWS:29006 +#: ../build/NEWS:29041 msgid "" "`bpo-20022 `__: Eliminate use of " "deprecated bundlebuilder in OS X builds." msgstr "" -#: ../build/NEWS:29008 +#: ../build/NEWS:29043 msgid "" "`bpo-15968 `__: Incorporated Tcl, Tk, " "and Tix builds into the Windows build solution." msgstr "" -#: ../build/NEWS:29011 +#: ../build/NEWS:29046 msgid "" "`bpo-17095 `__: Fix Modules/Setup " "*shared* support." msgstr "" -#: ../build/NEWS:29013 +#: ../build/NEWS:29048 msgid "" "`bpo-21811 `__: Anticipated fixes to " "support OS X versions > 10.9." msgstr "" -#: ../build/NEWS:29015 +#: ../build/NEWS:29050 msgid "" "`bpo-21166 `__: Prevent possible " "segfaults and other random failures of python --generate-posix-vars in " "pybuilddir.txt build target." msgstr "" -#: ../build/NEWS:29018 +#: ../build/NEWS:29053 msgid "" "`bpo-18096 `__: Fix library order " "returned by python-config." msgstr "" -#: ../build/NEWS:29020 +#: ../build/NEWS:29055 msgid "" "`bpo-17219 `__: Add library build dir " "for Python extension cross-builds." msgstr "" -#: ../build/NEWS:29022 +#: ../build/NEWS:29057 msgid "" "`bpo-22919 `__: Windows build updated to " "support VC 14.0 (Visual Studio 2015), which will be used for the official " "release." msgstr "" -#: ../build/NEWS:29025 +#: ../build/NEWS:29060 msgid "" "`bpo-21236 `__: Build _msi.pyd with " "cabinet.lib instead of fci.lib" msgstr "" -#: ../build/NEWS:29027 +#: ../build/NEWS:29062 msgid "" "`bpo-17128 `__: Use private version of " "OpenSSL for OS X 10.5+ installer." msgstr "" -#: ../build/NEWS:29032 +#: ../build/NEWS:29067 msgid "" "`bpo-14203 `__: Remove obsolete support " "for view==NULL in PyBuffer_FillInfo(), bytearray_getbuffer(), " @@ -46205,7 +46159,7 @@ msgid "" "BufferError in that case." msgstr "" -#: ../build/NEWS:29036 +#: ../build/NEWS:29071 msgid "" "`bpo-22445 `__: PyBuffer_IsContiguous() " "now implements precise contiguity tests, compatible with NumPy's " @@ -46213,19 +46167,19 @@ msgid "" "reported false negatives for corner cases." msgstr "" -#: ../build/NEWS:29040 +#: ../build/NEWS:29075 msgid "" "`bpo-22079 `__: PyType_Ready() now " "checks that statically allocated type has no dynamically allocated bases." msgstr "" -#: ../build/NEWS:29043 +#: ../build/NEWS:29078 msgid "" "`bpo-22453 `__: Removed non-documented " "macro PyObject_REPR()." msgstr "" -#: ../build/NEWS:29045 +#: ../build/NEWS:29080 msgid "" "`bpo-18395 `__: Rename " "``_Py_char2wchar()`` to :c:func:`Py_DecodeLocale`, rename " @@ -46233,7 +46187,7 @@ msgid "" "functions." msgstr "" -#: ../build/NEWS:29049 +#: ../build/NEWS:29084 msgid "" "`bpo-21233 `__: Add new C functions: " "PyMem_RawCalloc(), PyMem_Calloc(), PyObject_Calloc(), _PyObject_GC_Calloc(). " @@ -46241,7 +46195,7 @@ msgid "" "objects which is faster and use less memory." msgstr "" -#: ../build/NEWS:29054 +#: ../build/NEWS:29089 msgid "" "`bpo-20942 `__: " "PyImport_ImportFrozenModuleObject() no longer sets __file__ to match what " @@ -46249,27 +46203,27 @@ msgid "" "using imp.init_frozen()." msgstr "" -#: ../build/NEWS:29061 +#: ../build/NEWS:29096 msgid "" "`bpo-19548 `__: Update the codecs module " "documentation to better cover the distinction between text encodings and " "other codecs, together with other clarifications. Patch by Martin Panter." msgstr "" -#: ../build/NEWS:29065 +#: ../build/NEWS:29100 msgid "" "`bpo-22394 `__: Doc/Makefile now " "supports ``make venv PYTHON=../python`` to create a venv for generating the " "documentation, e.g., ``make html PYTHON=venv/bin/python3``." msgstr "" -#: ../build/NEWS:29069 +#: ../build/NEWS:29104 msgid "" "`bpo-21514 `__: The documentation of the " "json module now refers to new JSON RFC 7159 instead of obsoleted RFC 4627." msgstr "" -#: ../build/NEWS:29072 +#: ../build/NEWS:29107 msgid "" "`bpo-21777 `__: The binary sequence " "methods on bytes and bytearray are now documented explicitly, rather than " @@ -46277,39 +46231,39 @@ msgid "" "behaviour of the corresponding str methods." msgstr "" -#: ../build/NEWS:29077 +#: ../build/NEWS:29112 msgid "" "`bpo-6916 `__: undocument deprecated " "asynchat.fifo class." msgstr "" -#: ../build/NEWS:29079 +#: ../build/NEWS:29114 msgid "" "`bpo-17386 `__: Expanded functionality " "of the ``Doc/make.bat`` script to make it much more comparable to ``Doc/" "Makefile``." msgstr "" -#: ../build/NEWS:29082 +#: ../build/NEWS:29117 msgid "" "`bpo-21312 `__: Update the thread_foobar." "h template file to include newer threading APIs. Patch by Jack McCracken." msgstr "" -#: ../build/NEWS:29085 +#: ../build/NEWS:29120 msgid "" "`bpo-21043 `__: Remove the " "recommendation for specific CA organizations and to mention the ability to " "load the OS certificates." msgstr "" -#: ../build/NEWS:29088 +#: ../build/NEWS:29123 msgid "" "`bpo-20765 `__: Add missing " "documentation for PurePath.with_name() and PurePath.with_suffix()." msgstr "" -#: ../build/NEWS:29091 +#: ../build/NEWS:29126 msgid "" "`bpo-19407 `__: New package installation " "and distribution guides based on the Python Packaging Authority tools. " @@ -46318,76 +46272,76 @@ msgid "" "that isn't recorded anywhere else." msgstr "" -#: ../build/NEWS:29096 +#: ../build/NEWS:29131 msgid "" "`bpo-19697 `__: Document cases where " "__main__.__spec__ is None." msgstr "" -#: ../build/NEWS:29101 +#: ../build/NEWS:29136 msgid "" "`bpo-18982 `__: Add tests for CLI of the " "calendar module." msgstr "" -#: ../build/NEWS:29103 +#: ../build/NEWS:29138 msgid "" "`bpo-19548 `__: Added some additional " "checks to test_codecs to ensure that statements in the updated documentation " "remain accurate. Patch by Martin Panter." msgstr "" -#: ../build/NEWS:29107 +#: ../build/NEWS:29142 msgid "" "`bpo-22838 `__: All test_re tests now " "work with unittest test discovery." msgstr "" -#: ../build/NEWS:29109 +#: ../build/NEWS:29144 msgid "" "`bpo-22173 `__: Update lib2to3 tests to " "use unittest test discovery." msgstr "" -#: ../build/NEWS:29111 +#: ../build/NEWS:29146 msgid "" "`bpo-16000 `__: Convert test_curses to " "use unittest." msgstr "" -#: ../build/NEWS:29113 +#: ../build/NEWS:29148 msgid "" "`bpo-21456 `__: Skip two tests in " "test_urllib2net.py if _ssl module not present. Patch by Remi Pointel." msgstr "" -#: ../build/NEWS:29116 +#: ../build/NEWS:29151 msgid "" "`bpo-20746 `__: Fix test_pdb to run in " "refleak mode (-R). Patch by Xavier de Gaye." msgstr "" -#: ../build/NEWS:29119 +#: ../build/NEWS:29154 msgid "" "`bpo-22060 `__: test_ctypes has been " "somewhat cleaned up and simplified; it now uses unittest test discovery to " "find its tests." msgstr "" -#: ../build/NEWS:29122 +#: ../build/NEWS:29157 msgid "" "`bpo-22104 `__: regrtest.py no longer " "holds a reference to the suite of tests loaded from test modules that don't " "define test_main()." msgstr "" -#: ../build/NEWS:29125 +#: ../build/NEWS:29160 msgid "" "`bpo-22111 `__: Assorted cleanups in " "test_imaplib. Patch by Milan Oberkirch." msgstr "" -#: ../build/NEWS:29127 +#: ../build/NEWS:29162 msgid "" "`bpo-22002 `__: Added " "``load_package_tests`` function to test.support and used it to implement/" @@ -46395,27 +46349,27 @@ msgid "" "test_json, and test_tools." msgstr "" -#: ../build/NEWS:29131 +#: ../build/NEWS:29166 msgid "" "`bpo-21976 `__: Fix test_ssl to accept " "LibreSSL version strings. Thanks to William Orr." msgstr "" -#: ../build/NEWS:29134 +#: ../build/NEWS:29169 msgid "" "`bpo-21918 `__: Converted test_tools " "from a module to a package containing separate test files for each tested " "script." msgstr "" -#: ../build/NEWS:29137 +#: ../build/NEWS:29172 msgid "" "`bpo-9554 `__: Use modern unittest " "features in test_argparse. Initial patch by Denver Coneybeare and Radu " "Voicilas." msgstr "" -#: ../build/NEWS:29140 +#: ../build/NEWS:29175 msgid "" "`bpo-20155 `__: Changed HTTP method " "names in failing tests in test_httpservers so that packet filtering software " @@ -46423,19 +46377,19 @@ msgid "" "transaction semantics expected by the tests." msgstr "" -#: ../build/NEWS:29145 +#: ../build/NEWS:29180 msgid "" "`bpo-19493 `__: Refactored the ctypes " "test package to skip tests explicitly rather than silently." msgstr "" -#: ../build/NEWS:29148 +#: ../build/NEWS:29183 msgid "" "`bpo-18492 `__: All resources are now " "allowed when tests are not run by regrtest.py." msgstr "" -#: ../build/NEWS:29151 +#: ../build/NEWS:29186 msgid "" "`bpo-21634 `__: Fix pystone micro-" "benchmark: use floor division instead of true division to benchmark integers " @@ -46443,162 +46397,162 @@ msgid "" "by Lennart Regebro." msgstr "" -#: ../build/NEWS:29155 +#: ../build/NEWS:29190 msgid "" "`bpo-21605 `__: Added tests for Tkinter " "images." msgstr "" -#: ../build/NEWS:29157 +#: ../build/NEWS:29192 msgid "" "`bpo-21493 `__: Added test for ntpath." "expanduser(). Original patch by Claudiu Popa." msgstr "" -#: ../build/NEWS:29160 +#: ../build/NEWS:29195 msgid "" "`bpo-19925 `__: Added tests for the spwd " "module. Original patch by Vajrasky Kok." msgstr "" -#: ../build/NEWS:29163 +#: ../build/NEWS:29198 msgid "" "`bpo-21522 `__: Added Tkinter tests for " "Listbox.itemconfigure(), PanedWindow.paneconfigure(), and Menu." "entryconfigure()." msgstr "" -#: ../build/NEWS:29166 +#: ../build/NEWS:29201 msgid "" "`bpo-17756 `__: Fix test_code test when " "run from the installed location." msgstr "" -#: ../build/NEWS:29168 +#: ../build/NEWS:29203 msgid "" "`bpo-17752 `__: Fix distutils tests when " "run from the installed location." msgstr "" -#: ../build/NEWS:29170 +#: ../build/NEWS:29205 msgid "" "`bpo-18604 `__: Consolidated checks for " "GUI availability. All platforms now at least check whether Tk can be " "instantiated when the GUI resource is requested." msgstr "" -#: ../build/NEWS:29174 +#: ../build/NEWS:29209 msgid "" "`bpo-21275 `__: Fix a socket test on " "KFreeBSD." msgstr "" -#: ../build/NEWS:29176 +#: ../build/NEWS:29211 msgid "" "`bpo-21223 `__: Pass test_site/" "test_startup_imports when some of the extensions are built as builtins." msgstr "" -#: ../build/NEWS:29179 +#: ../build/NEWS:29214 msgid "" "`bpo-20635 `__: Added tests for Tk " "geometry managers." msgstr "" -#: ../build/NEWS:29181 +#: ../build/NEWS:29216 msgid "Add test case for freeze." msgstr "" -#: ../build/NEWS:29183 +#: ../build/NEWS:29218 msgid "" "`bpo-20743 `__: Fix a reference leak in " "test_tcl." msgstr "" -#: ../build/NEWS:29185 +#: ../build/NEWS:29220 msgid "" "`bpo-21097 `__: Move test_namespace_pkgs " "into test_importlib." msgstr "" -#: ../build/NEWS:29187 +#: ../build/NEWS:29222 msgid "" "`bpo-21503 `__: Use test_both() " "consistently in test_importlib." msgstr "" -#: ../build/NEWS:29189 +#: ../build/NEWS:29224 msgid "" "`bpo-20939 `__: Avoid various network " "test failures due to new redirect of http://www.python.org/ to https://www." "python.org: use http://www.example.com instead." msgstr "" -#: ../build/NEWS:29193 +#: ../build/NEWS:29228 msgid "" "`bpo-20668 `__: asyncio tests no longer " "rely on tests.txt file. (Patch by Vajrasky Kok)" msgstr "" -#: ../build/NEWS:29196 +#: ../build/NEWS:29231 msgid "" "`bpo-21093 `__: Prevent failures of " "ctypes test_macholib on OS X if a copy of libz exists in $HOME/lib or /usr/" "local/lib." msgstr "" -#: ../build/NEWS:29199 +#: ../build/NEWS:29234 msgid "" "`bpo-22770 `__: Prevent some Tk " "segfaults on OS X when running gui tests." msgstr "" -#: ../build/NEWS:29201 +#: ../build/NEWS:29236 msgid "" "`bpo-23211 `__: Workaround test_logging " "failure on some OS X 10.6 systems." msgstr "" -#: ../build/NEWS:29203 +#: ../build/NEWS:29238 msgid "" "`bpo-23345 `__: Prevent test_ssl " "failures with large OpenSSL patch level values (like 0.9.8zc)." msgstr "" -#: ../build/NEWS:29209 +#: ../build/NEWS:29244 msgid "" "`bpo-22314 `__: pydoc now works when the " "LINES environment variable is set." msgstr "" -#: ../build/NEWS:29211 +#: ../build/NEWS:29246 msgid "" "`bpo-22615 `__: Argument Clinic now " "supports the \"type\" argument for the int converter. This permits using the " "int converter with enums and typedefs." msgstr "" -#: ../build/NEWS:29214 +#: ../build/NEWS:29249 msgid "" "`bpo-20076 `__: The makelocalealias.py " "script no longer ignores UTF-8 mapping." msgstr "" -#: ../build/NEWS:29216 +#: ../build/NEWS:29251 msgid "" "`bpo-20079 `__: The makelocalealias.py " "script now can parse the SUPPORTED file from glibc sources and supports " "command line options for source paths." msgstr "" -#: ../build/NEWS:29219 +#: ../build/NEWS:29254 msgid "" "`bpo-22201 `__: Command-line interface " "of the zipfile module now correctly extracts ZIP files with directory " "entries. Patch by Ryan Wilson." msgstr "" -#: ../build/NEWS:29222 +#: ../build/NEWS:29257 msgid "" "`bpo-22120 `__: For functions using an " "unsigned integer return converter, Argument Clinic now generates a cast to " @@ -46606,57 +46560,57 @@ msgid "" "a compilation warning.)" msgstr "" -#: ../build/NEWS:29226 +#: ../build/NEWS:29261 msgid "" "`bpo-18974 `__: Tools/scripts/diff.py " "now uses argparse instead of optparse." msgstr "" -#: ../build/NEWS:29228 +#: ../build/NEWS:29263 msgid "" "`bpo-21906 `__: Make Tools/scripts/" "md5sum.py work in Python 3. Patch by Zachary Ware." msgstr "" -#: ../build/NEWS:29231 +#: ../build/NEWS:29266 msgid "" "`bpo-21629 `__: Fix Argument Clinic's " "\"--converters\" feature." msgstr "" -#: ../build/NEWS:29233 +#: ../build/NEWS:29268 msgid "Add support for ``yield from`` to 2to3." msgstr "" -#: ../build/NEWS:29235 +#: ../build/NEWS:29270 msgid "Add support for the :pep:`465` matrix multiplication operator to 2to3." msgstr "" -#: ../build/NEWS:29237 +#: ../build/NEWS:29272 msgid "" "`bpo-16047 `__: Fix module exception " "list and __file__ handling in freeze. Patch by Meador Inge." msgstr "" -#: ../build/NEWS:29240 +#: ../build/NEWS:29275 msgid "" "`bpo-11824 `__: Consider ABI tags in " "freeze. Patch by Meador Inge." msgstr "" -#: ../build/NEWS:29242 +#: ../build/NEWS:29277 msgid "" "`bpo-20535 `__: PYTHONWARNING no longer " "affects the run_tests.py script. Patch by Arfrever Frehtes Taifersar " "Arahesis." msgstr "" -#: ../build/NEWS:29248 +#: ../build/NEWS:29283 msgid "" "`bpo-23260 `__: Update Windows installer" msgstr "" -#: ../build/NEWS:29250 +#: ../build/NEWS:29285 msgid "" "The bundled version of Tcl/Tk has been updated to 8.6.3. The most visible " "result of this change is the addition of new native file dialogs when " @@ -46664,44 +46618,44 @@ msgid "" "information. Also, this version of Tcl/Tk includes support for Windows 10." msgstr "" -#: ../build/NEWS:29256 +#: ../build/NEWS:29291 msgid "" "`bpo-17896 `__: The Windows build " "scripts now expect external library sources to be in ``PCbuild\\.." "\\externals`` rather than ``PCbuild\\..\\..``." msgstr "" -#: ../build/NEWS:29259 +#: ../build/NEWS:29294 msgid "" "`bpo-17717 `__: The Windows build " "scripts now use a copy of NASM pulled from svn.python.org to build OpenSSL." msgstr "" -#: ../build/NEWS:29262 +#: ../build/NEWS:29297 msgid "" "`bpo-21907 `__: Improved the batch " "scripts provided for building Python." msgstr "" -#: ../build/NEWS:29264 +#: ../build/NEWS:29299 msgid "" "`bpo-22644 `__: The bundled version of " "OpenSSL has been updated to 1.0.1j." msgstr "" -#: ../build/NEWS:29266 +#: ../build/NEWS:29301 msgid "" "`bpo-10747 `__: Use versioned labels in " "the Windows start menu. Patch by Olive Kilburn." msgstr "" -#: ../build/NEWS:29269 +#: ../build/NEWS:29304 msgid "" "`bpo-22980 `__: .pyd files with a " "version and platform tag (for example, \".cp35-win32.pyd\") will now be " "loaded in preference to those without tags." msgstr "" -#: ../build/NEWS:29273 +#: ../build/NEWS:29308 msgid "**(For information about older versions, consult the HISTORY file.)**" msgstr "" diff --git a/whatsnew/index.po b/whatsnew/index.po index 25a18da14..c1a51d5e6 100644 --- a/whatsnew/index.po +++ b/whatsnew/index.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-09-23 16:16+0200\n" "PO-Revision-Date: 2017-09-21 09:39+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -29,7 +29,7 @@ msgstr "" "changements entres les versions majeures de Python. Elles sont à lire pour " "quiconque souhaitant être à jour suite à une nouvelle sortie." -#: whatsnew/index.rst:33 +#: whatsnew/index.rst:34 msgid "" "The \"Changelog\" is an HTML version of the `file built `_ from the contents of the :source:`Misc/NEWS.d` directory "