Make merge (#1655)

This commit is contained in:
Julien Palard 2021-06-04 13:47:25 +02:00 committed by GitHub
parent 4d36815d90
commit a2b66f2e71
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
19 changed files with 1664 additions and 1586 deletions

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-08-24 09:01+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -60,26 +60,44 @@ msgid ""
"initialized, it must call :c:func:`PyObject_GC_Track`." "initialized, it must call :c:func:`PyObject_GC_Track`."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:39 #: c-api/gcsupport.rst:37
msgid ""
"If a type adds the Py_TPFLAGS_HAVE_GC, then it *must* implement at least a :"
"c:member:`~PyTypeObject.tp_traverse` handler or explicitly use one from its "
"subclass or subclasses."
msgstr ""
#: c-api/gcsupport.rst:41
msgid ""
"When calling :c:func:`PyType_Ready` or some of the APIs that indirectly call "
"it like :c:func:`PyType_FromSpecWithBases` or :c:func:`PyType_FromSpec` the "
"interpreter will automatically populate the :c:member:`~PyTypeObject."
"tp_flags`, :c:member:`~PyTypeObject.tp_traverse` and :c:member:"
"`~PyTypeObject.tp_clear` fields if the type inherits from a class that "
"implements the garbage collector protocol and the child class does *not* "
"include the :const:`Py_TPFLAGS_HAVE_GC` flag."
msgstr ""
#: c-api/gcsupport.rst:51
msgid "" msgid ""
"Analogous to :c:func:`PyObject_New` but for container objects with the :" "Analogous to :c:func:`PyObject_New` but for container objects with the :"
"const:`Py_TPFLAGS_HAVE_GC` flag set." "const:`Py_TPFLAGS_HAVE_GC` flag set."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:45 #: c-api/gcsupport.rst:57
msgid "" msgid ""
"Analogous to :c:func:`PyObject_NewVar` but for container objects with the :" "Analogous to :c:func:`PyObject_NewVar` but for container objects with the :"
"const:`Py_TPFLAGS_HAVE_GC` flag set." "const:`Py_TPFLAGS_HAVE_GC` flag set."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:51 #: c-api/gcsupport.rst:63
msgid "" msgid ""
"Resize an object allocated by :c:func:`PyObject_NewVar`. Returns the " "Resize an object allocated by :c:func:`PyObject_NewVar`. Returns the "
"resized object or ``NULL`` on failure. *op* must not be tracked by the " "resized object or ``NULL`` on failure. *op* must not be tracked by the "
"collector yet." "collector yet."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:57 #: c-api/gcsupport.rst:69
msgid "" msgid ""
"Adds the object *op* to the set of container objects tracked by the " "Adds the object *op* to the set of container objects tracked by the "
"collector. The collector can run at unexpected times so objects must be " "collector. The collector can run at unexpected times so objects must be "
@ -88,62 +106,62 @@ msgid ""
"usually near the end of the constructor." "usually near the end of the constructor."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:66 #: c-api/gcsupport.rst:78
msgid "" msgid ""
"Returns non-zero if the object implements the garbage collector protocol, " "Returns non-zero if the object implements the garbage collector protocol, "
"otherwise returns 0." "otherwise returns 0."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:69 #: c-api/gcsupport.rst:81
msgid "" msgid ""
"The object cannot be tracked by the garbage collector if this function " "The object cannot be tracked by the garbage collector if this function "
"returns 0." "returns 0."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:74 #: c-api/gcsupport.rst:86
msgid "" msgid ""
"Returns 1 if the object type of *op* implements the GC protocol and *op* is " "Returns 1 if the object type of *op* implements the GC protocol and *op* is "
"being currently tracked by the garbage collector and 0 otherwise." "being currently tracked by the garbage collector and 0 otherwise."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:77 #: c-api/gcsupport.rst:89
msgid "This is analogous to the Python function :func:`gc.is_tracked`." msgid "This is analogous to the Python function :func:`gc.is_tracked`."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:84 #: c-api/gcsupport.rst:96
msgid "" msgid ""
"Returns 1 if the object type of *op* implements the GC protocol and *op* has " "Returns 1 if the object type of *op* implements the GC protocol and *op* has "
"been already finalized by the garbage collector and 0 otherwise." "been already finalized by the garbage collector and 0 otherwise."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:87 #: c-api/gcsupport.rst:99
msgid "This is analogous to the Python function :func:`gc.is_finalized`." msgid "This is analogous to the Python function :func:`gc.is_finalized`."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:91 #: c-api/gcsupport.rst:103
msgid "" msgid ""
"Similarly, the deallocator for the object must conform to a similar pair of " "Similarly, the deallocator for the object must conform to a similar pair of "
"rules:" "rules:"
msgstr "" msgstr ""
#: c-api/gcsupport.rst:94 #: c-api/gcsupport.rst:106
msgid "" msgid ""
"Before fields which refer to other containers are invalidated, :c:func:" "Before fields which refer to other containers are invalidated, :c:func:"
"`PyObject_GC_UnTrack` must be called." "`PyObject_GC_UnTrack` must be called."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:97 #: c-api/gcsupport.rst:109
msgid "" msgid ""
"The object's memory must be deallocated using :c:func:`PyObject_GC_Del`." "The object's memory must be deallocated using :c:func:`PyObject_GC_Del`."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:102 #: c-api/gcsupport.rst:114
msgid "" msgid ""
"Releases memory allocated to an object using :c:func:`PyObject_GC_New` or :c:" "Releases memory allocated to an object using :c:func:`PyObject_GC_New` or :c:"
"func:`PyObject_GC_NewVar`." "func:`PyObject_GC_NewVar`."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:108 #: c-api/gcsupport.rst:120
msgid "" msgid ""
"Remove the object *op* from the set of container objects tracked by the " "Remove the object *op* from the set of container objects tracked by the "
"collector. Note that :c:func:`PyObject_GC_Track` can be called again on " "collector. Note that :c:func:`PyObject_GC_Track` can be called again on "
@ -153,19 +171,19 @@ msgid ""
"handler become invalid." "handler become invalid."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:117 #: c-api/gcsupport.rst:129
msgid "" msgid ""
"The :c:func:`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros " "The :c:func:`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros "
"have been removed from the public C API." "have been removed from the public C API."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:120 #: c-api/gcsupport.rst:132
msgid "" msgid ""
"The :c:member:`~PyTypeObject.tp_traverse` handler accepts a function " "The :c:member:`~PyTypeObject.tp_traverse` handler accepts a function "
"parameter of this type:" "parameter of this type:"
msgstr "" msgstr ""
#: c-api/gcsupport.rst:125 #: c-api/gcsupport.rst:137
msgid "" msgid ""
"Type of the visitor function passed to the :c:member:`~PyTypeObject." "Type of the visitor function passed to the :c:member:`~PyTypeObject."
"tp_traverse` handler. The function should be called with an object to " "tp_traverse` handler. The function should be called with an object to "
@ -175,13 +193,13 @@ msgid ""
"users will need to write their own visitor functions." "users will need to write their own visitor functions."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:132 #: c-api/gcsupport.rst:144
msgid "" msgid ""
"The :c:member:`~PyTypeObject.tp_traverse` handler must have the following " "The :c:member:`~PyTypeObject.tp_traverse` handler must have the following "
"type:" "type:"
msgstr "" msgstr ""
#: c-api/gcsupport.rst:137 #: c-api/gcsupport.rst:149
msgid "" msgid ""
"Traversal function for a container object. Implementations must call the " "Traversal function for a container object. Implementations must call the "
"*visit* function for each object directly contained by *self*, with the " "*visit* function for each object directly contained by *self*, with the "
@ -191,7 +209,7 @@ msgid ""
"returned immediately." "returned immediately."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:144 #: c-api/gcsupport.rst:156
msgid "" msgid ""
"To simplify writing :c:member:`~PyTypeObject.tp_traverse` handlers, a :c:" "To simplify writing :c:member:`~PyTypeObject.tp_traverse` handlers, a :c:"
"func:`Py_VISIT` macro is provided. In order to use this macro, the :c:" "func:`Py_VISIT` macro is provided. In order to use this macro, the :c:"
@ -199,20 +217,20 @@ msgid ""
"exactly *visit* and *arg*:" "exactly *visit* and *arg*:"
msgstr "" msgstr ""
#: c-api/gcsupport.rst:151 #: c-api/gcsupport.rst:163
msgid "" msgid ""
"If *o* is not ``NULL``, call the *visit* callback, with arguments *o* and " "If *o* is not ``NULL``, call the *visit* callback, with arguments *o* and "
"*arg*. If *visit* returns a non-zero value, then return it. Using this " "*arg*. If *visit* returns a non-zero value, then return it. Using this "
"macro, :c:member:`~PyTypeObject.tp_traverse` handlers look like::" "macro, :c:member:`~PyTypeObject.tp_traverse` handlers look like::"
msgstr "" msgstr ""
#: c-api/gcsupport.rst:164 #: c-api/gcsupport.rst:176
msgid "" msgid ""
"The :c:member:`~PyTypeObject.tp_clear` handler must be of the :c:type:" "The :c:member:`~PyTypeObject.tp_clear` handler must be of the :c:type:"
"`inquiry` type, or ``NULL`` if the object is immutable." "`inquiry` type, or ``NULL`` if the object is immutable."
msgstr "" msgstr ""
#: c-api/gcsupport.rst:170 #: c-api/gcsupport.rst:182
msgid "" msgid ""
"Drop references that may have created reference cycles. Immutable objects " "Drop references that may have created reference cycles. Immutable objects "
"do not have to define this method since they can never directly create " "do not have to define this method since they can never directly create "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-27 19:26+0100\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2018-02-15 00:33+0100\n" "PO-Revision-Date: 2018-02-15 00:33+0100\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -110,7 +110,17 @@ msgid ""
"and sets an exception on error." "and sets an exception on error."
msgstr "" msgstr ""
#: c-api/type.rst:102 #: c-api/type.rst:101
msgid ""
"If some of the base classes implements the GC protocol and the provided type "
"does not include the :const:`Py_TPFLAGS_HAVE_GC` in its flags, then the GC "
"protocol will be automatically implemented from its parents. On the "
"contrary, if the type being created does include :const:`Py_TPFLAGS_HAVE_GC` "
"in its flags then it **must** implement the GC protocol itself by at least "
"implementing the :c:member:`~PyTypeObject.tp_traverse` handle."
msgstr ""
#: c-api/type.rst:111
msgid "" msgid ""
"Return the function pointer stored in the given slot. If the result is " "Return the function pointer stored in the given slot. If the result is "
"``NULL``, this indicates that either the slot is ``NULL``, or that the " "``NULL``, this indicates that either the slot is ``NULL``, or that the "
@ -118,28 +128,28 @@ msgid ""
"result pointer into the appropriate function type." "result pointer into the appropriate function type."
msgstr "" msgstr ""
#: c-api/type.rst:108 #: c-api/type.rst:117
msgid "" msgid ""
"See :c:member:`PyType_Slot.slot` for possible values of the *slot* argument." "See :c:member:`PyType_Slot.slot` for possible values of the *slot* argument."
msgstr "" msgstr ""
#: c-api/type.rst:110 #: c-api/type.rst:119
msgid "An exception is raised if *type* is not a heap type." msgid "An exception is raised if *type* is not a heap type."
msgstr "" msgstr ""
#: c-api/type.rst:116 #: c-api/type.rst:125
msgid "" msgid ""
"Return the module object associated with the given type when the type was " "Return the module object associated with the given type when the type was "
"created using :c:func:`PyType_FromModuleAndSpec`." "created using :c:func:`PyType_FromModuleAndSpec`."
msgstr "" msgstr ""
#: c-api/type.rst:137 #: c-api/type.rst:146
msgid "" msgid ""
"If no module is associated with the given type, sets :py:class:`TypeError` " "If no module is associated with the given type, sets :py:class:`TypeError` "
"and returns ``NULL``." "and returns ``NULL``."
msgstr "" msgstr ""
#: c-api/type.rst:122 #: c-api/type.rst:131
msgid "" msgid ""
"This function is usually used to get the module in which a method is " "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 " "defined. Note that in such a method, ``PyType_GetModule(Py_TYPE(self))`` may "
@ -149,49 +159,49 @@ msgid ""
"defines the method." "defines the method."
msgstr "" msgstr ""
#: c-api/type.rst:133 #: c-api/type.rst:142
msgid "" msgid ""
"Return the state of the module object associated with the given type. This " "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:" "is a shortcut for calling :c:func:`PyModule_GetState()` on the result of :c:"
"func:`PyType_GetModule`." "func:`PyType_GetModule`."
msgstr "" msgstr ""
#: c-api/type.rst:140 #: c-api/type.rst:149
msgid "" msgid ""
"If the *type* has an associated module but its state is ``NULL``, returns " "If the *type* has an associated module but its state is ``NULL``, returns "
"``NULL`` without setting an exception." "``NULL`` without setting an exception."
msgstr "" msgstr ""
#: c-api/type.rst:147 #: c-api/type.rst:156
msgid "Creating Heap-Allocated Types" msgid "Creating Heap-Allocated Types"
msgstr "" msgstr ""
#: c-api/type.rst:149 #: c-api/type.rst:158
msgid "" msgid ""
"The following functions and structs are used to create :ref:`heap types " "The following functions and structs are used to create :ref:`heap types "
"<heap-types>`." "<heap-types>`."
msgstr "" msgstr ""
#: c-api/type.rst:154 #: c-api/type.rst:163
msgid "" msgid ""
"Creates and returns a heap type object from the *spec* (:const:" "Creates and returns a heap type object from the *spec* (:const:"
"`Py_TPFLAGS_HEAPTYPE`)." "`Py_TPFLAGS_HEAPTYPE`)."
msgstr "" msgstr ""
#: c-api/type.rst:157 #: c-api/type.rst:166
msgid "" msgid ""
"If *bases* is a tuple, the created heap type contains all types contained in " "If *bases* is a tuple, the created heap type contains all types contained in "
"it as base types." "it as base types."
msgstr "" msgstr ""
#: c-api/type.rst:160 #: c-api/type.rst:169
msgid "" msgid ""
"If *bases* is ``NULL``, the *Py_tp_bases* slot is used instead. If that also " "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 " "is ``NULL``, the *Py_tp_base* slot is used instead. If that also is "
"``NULL``, the new type derives from :class:`object`." "``NULL``, the new type derives from :class:`object`."
msgstr "" msgstr ""
#: c-api/type.rst:164 #: c-api/type.rst:173
msgid "" msgid ""
"The *module* argument can be used to record the module in which the new " "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``, " "class is defined. It must be a module object or ``NULL``. If not ``NULL``, "
@ -200,59 +210,59 @@ msgid ""
"subclasses; it must be specified for each class individually." "subclasses; it must be specified for each class individually."
msgstr "" msgstr ""
#: c-api/type.rst:171 #: c-api/type.rst:180
msgid "This function calls :c:func:`PyType_Ready` on the new type." msgid "This function calls :c:func:`PyType_Ready` on the new type."
msgstr "" msgstr ""
#: c-api/type.rst:177 #: c-api/type.rst:186
msgid "Equivalent to ``PyType_FromModuleAndSpec(NULL, spec, bases)``." msgid "Equivalent to ``PyType_FromModuleAndSpec(NULL, spec, bases)``."
msgstr "" msgstr ""
#: c-api/type.rst:183 #: c-api/type.rst:192
msgid "Equivalent to ``PyType_FromSpecWithBases(spec, NULL)``." msgid "Equivalent to ``PyType_FromSpecWithBases(spec, NULL)``."
msgstr "" msgstr ""
#: c-api/type.rst:187 #: c-api/type.rst:196
msgid "Structure defining a type's behavior." msgid "Structure defining a type's behavior."
msgstr "" msgstr ""
#: c-api/type.rst:191 #: c-api/type.rst:200
msgid "Name of the type, used to set :c:member:`PyTypeObject.tp_name`." msgid "Name of the type, used to set :c:member:`PyTypeObject.tp_name`."
msgstr "" msgstr ""
#: c-api/type.rst:196 #: c-api/type.rst:205
msgid "" msgid ""
"Size of the instance in bytes, used to set :c:member:`PyTypeObject." "Size of the instance in bytes, used to set :c:member:`PyTypeObject."
"tp_basicsize` and :c:member:`PyTypeObject.tp_itemsize`." "tp_basicsize` and :c:member:`PyTypeObject.tp_itemsize`."
msgstr "" msgstr ""
#: c-api/type.rst:202 #: c-api/type.rst:211
msgid "Type flags, used to set :c:member:`PyTypeObject.tp_flags`." msgid "Type flags, used to set :c:member:`PyTypeObject.tp_flags`."
msgstr "" msgstr ""
#: c-api/type.rst:204 #: c-api/type.rst:213
msgid "" msgid ""
"If the ``Py_TPFLAGS_HEAPTYPE`` flag is not set, :c:func:" "If the ``Py_TPFLAGS_HEAPTYPE`` flag is not set, :c:func:"
"`PyType_FromSpecWithBases` sets it automatically." "`PyType_FromSpecWithBases` sets it automatically."
msgstr "" msgstr ""
#: c-api/type.rst:209 #: c-api/type.rst:218
msgid "" msgid ""
"Array of :c:type:`PyType_Slot` structures. Terminated by the special slot " "Array of :c:type:`PyType_Slot` structures. Terminated by the special slot "
"value ``{0, NULL}``." "value ``{0, NULL}``."
msgstr "" msgstr ""
#: c-api/type.rst:214 #: c-api/type.rst:223
msgid "" msgid ""
"Structure defining optional functionality of a type, containing a slot ID " "Structure defining optional functionality of a type, containing a slot ID "
"and a value pointer." "and a value pointer."
msgstr "" msgstr ""
#: c-api/type.rst:219 #: c-api/type.rst:228
msgid "A slot ID." msgid "A slot ID."
msgstr "" msgstr ""
#: c-api/type.rst:221 #: c-api/type.rst:230
msgid "" msgid ""
"Slot IDs are named like the field names of the structures :c:type:" "Slot IDs are named like the field names of the structures :c:type:"
"`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:" "`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:"
@ -260,97 +270,97 @@ msgid ""
"prefix. For example, use:" "prefix. For example, use:"
msgstr "" msgstr ""
#: c-api/type.rst:227 #: c-api/type.rst:236
msgid "``Py_tp_dealloc`` to set :c:member:`PyTypeObject.tp_dealloc`" msgid "``Py_tp_dealloc`` to set :c:member:`PyTypeObject.tp_dealloc`"
msgstr "" msgstr ""
#: c-api/type.rst:228 #: c-api/type.rst:237
msgid "``Py_nb_add`` to set :c:member:`PyNumberMethods.nb_add`" msgid "``Py_nb_add`` to set :c:member:`PyNumberMethods.nb_add`"
msgstr "" msgstr ""
#: c-api/type.rst:229 #: c-api/type.rst:238
msgid "``Py_sq_length`` to set :c:member:`PySequenceMethods.sq_length`" msgid "``Py_sq_length`` to set :c:member:`PySequenceMethods.sq_length`"
msgstr "" msgstr ""
#: c-api/type.rst:231 #: c-api/type.rst:240
msgid "" msgid ""
"The following fields cannot be set at all using :c:type:`PyType_Spec` and :c:" "The following fields cannot be set at all using :c:type:`PyType_Spec` and :c:"
"type:`PyType_Slot`:" "type:`PyType_Slot`:"
msgstr "" msgstr ""
#: c-api/type.rst:234 #: c-api/type.rst:243
msgid ":c:member:`~PyTypeObject.tp_dict`" msgid ":c:member:`~PyTypeObject.tp_dict`"
msgstr "" msgstr ""
#: c-api/type.rst:235 #: c-api/type.rst:244
msgid ":c:member:`~PyTypeObject.tp_mro`" msgid ":c:member:`~PyTypeObject.tp_mro`"
msgstr "" msgstr ""
#: c-api/type.rst:236 #: c-api/type.rst:245
msgid ":c:member:`~PyTypeObject.tp_cache`" msgid ":c:member:`~PyTypeObject.tp_cache`"
msgstr "" msgstr ""
#: c-api/type.rst:237 #: c-api/type.rst:246
msgid ":c:member:`~PyTypeObject.tp_subclasses`" msgid ":c:member:`~PyTypeObject.tp_subclasses`"
msgstr "" msgstr ""
#: c-api/type.rst:238 #: c-api/type.rst:247
msgid ":c:member:`~PyTypeObject.tp_weaklist`" msgid ":c:member:`~PyTypeObject.tp_weaklist`"
msgstr "" msgstr ""
#: c-api/type.rst:239 #: c-api/type.rst:248
msgid ":c:member:`~PyTypeObject.tp_vectorcall`" msgid ":c:member:`~PyTypeObject.tp_vectorcall`"
msgstr "" msgstr ""
#: c-api/type.rst:240 #: c-api/type.rst:249
msgid "" msgid ""
":c:member:`~PyTypeObject.tp_weaklistoffset` (see :ref:`PyMemberDef " ":c:member:`~PyTypeObject.tp_weaklistoffset` (see :ref:`PyMemberDef "
"<pymemberdef-offsets>`)" "<pymemberdef-offsets>`)"
msgstr "" msgstr ""
#: c-api/type.rst:242 #: c-api/type.rst:251
msgid "" msgid ""
":c:member:`~PyTypeObject.tp_dictoffset` (see :ref:`PyMemberDef <pymemberdef-" ":c:member:`~PyTypeObject.tp_dictoffset` (see :ref:`PyMemberDef <pymemberdef-"
"offsets>`)" "offsets>`)"
msgstr "" msgstr ""
#: c-api/type.rst:244 #: c-api/type.rst:253
msgid "" msgid ""
":c:member:`~PyTypeObject.tp_vectorcall_offset` (see :ref:`PyMemberDef " ":c:member:`~PyTypeObject.tp_vectorcall_offset` (see :ref:`PyMemberDef "
"<pymemberdef-offsets>`)" "<pymemberdef-offsets>`)"
msgstr "" msgstr ""
#: c-api/type.rst:247 #: c-api/type.rst:256
msgid "" msgid ""
"The following fields cannot be set using :c:type:`PyType_Spec` and :c:type:" "The following fields cannot be set using :c:type:`PyType_Spec` and :c:type:"
"`PyType_Slot` under the limited API:" "`PyType_Slot` under the limited API:"
msgstr "" msgstr ""
#: c-api/type.rst:250 #: c-api/type.rst:259
msgid ":c:member:`~PyBufferProcs.bf_getbuffer`" msgid ":c:member:`~PyBufferProcs.bf_getbuffer`"
msgstr "" msgstr ""
#: c-api/type.rst:251 #: c-api/type.rst:260
msgid ":c:member:`~PyBufferProcs.bf_releasebuffer`" msgid ":c:member:`~PyBufferProcs.bf_releasebuffer`"
msgstr "" msgstr ""
#: c-api/type.rst:253 #: c-api/type.rst:262
msgid "" msgid ""
"Setting :c:data:`Py_tp_bases` or :c:data:`Py_tp_base` may be problematic on " "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:" "some platforms. To avoid issues, use the *bases* argument of :py:func:"
"`PyType_FromSpecWithBases` instead." "`PyType_FromSpecWithBases` instead."
msgstr "" msgstr ""
#: c-api/type.rst:260 #: c-api/type.rst:269
msgid "Slots in :c:type:`PyBufferProcs` in may be set in the unlimited API." msgid "Slots in :c:type:`PyBufferProcs` in may be set in the unlimited API."
msgstr "" msgstr ""
#: c-api/type.rst:264 #: c-api/type.rst:273
msgid "" msgid ""
"The desired value of the slot. In most cases, this is a pointer to a " "The desired value of the slot. In most cases, this is a pointer to a "
"function." "function."
msgstr "" msgstr ""
#: c-api/type.rst:267 #: c-api/type.rst:276
msgid "May not be ``NULL``." msgid "May not be ``NULL``."
msgstr "" msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-08-24 09:01+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2019-09-04 11:44+0200\n" "PO-Revision-Date: 2019-09-04 11:44+0200\n"
"Last-Translator: Zepmanbc <zepman@gmail.com>\n" "Last-Translator: Zepmanbc <zepman@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -192,10 +192,11 @@ msgid "FLTK"
msgstr "*FLTK*" msgstr "*FLTK*"
#: faq/gui.rst:93 #: faq/gui.rst:93
#, fuzzy
msgid "" msgid ""
"Python bindings for `the FLTK toolkit <http://www.fltk.org>`_, a simple yet " "Python bindings for `the FLTK toolkit <http://www.fltk.org>`_, a simple yet "
"powerful and mature cross-platform windowing system, are available from `the " "powerful and mature cross-platform windowing system, are available from `the "
"PyFLTK project <http://pyfltk.sourceforge.net>`_." "PyFLTK project <https://pyfltk.sourceforge.io/>`_."
msgstr "" msgstr ""
"Les liaisons Python pour `the FLTK toolkit <http://www.fltk.org>`_, un " "Les liaisons Python pour `the FLTK toolkit <http://www.fltk.org>`_, un "
"système de fenêtrage multi-plateformes simple mais puissant et mûr, sont " "système de fenêtrage multi-plateformes simple mais puissant et mûr, sont "

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-05-19 22:36+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2021-01-28 16:02+0100\n" "PO-Revision-Date: 2021-01-28 16:02+0100\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n" "Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -230,16 +230,15 @@ msgstr "Comment construire un exécutable depuis un script Python ?"
#: faq/windows.rst:143 #: faq/windows.rst:143
msgid "" msgid ""
"See `cx_Freeze <https://cx-freeze.readthedocs.io/en/latest/>`_ and `py2exe " "See :ref:`faq-create-standalone-binary` for a list of tools that can be used "
"<http://www.py2exe.org/>`_, both are distutils extensions that allow you to " "to make executables."
"create console and GUI executables from Python code."
msgstr "" msgstr ""
#: faq/windows.rst:149 #: faq/windows.rst:148
msgid "Is a ``*.pyd`` file the same as a DLL?" msgid "Is a ``*.pyd`` file the same as a DLL?"
msgstr "Est-ce qu'un fichier ``*.pyd`` est la même chose qu'une DLL ?" msgstr "Est-ce qu'un fichier ``*.pyd`` est la même chose qu'une DLL ?"
#: faq/windows.rst:151 #: faq/windows.rst:150
msgid "" msgid ""
"Yes, .pyd files are dll's, but there are a few differences. If you have a " "Yes, .pyd files are dll's, but there are a few differences. If you have a "
"DLL named ``foo.pyd``, then it must have a function ``PyInit_foo()``. You " "DLL named ``foo.pyd``, then it must have a function ``PyInit_foo()``. You "
@ -256,7 +255,7 @@ msgstr ""
"l'initialiser. Ne liez pas votre *.exe* avec *foo.lib* car dans ce cas " "l'initialiser. Ne liez pas votre *.exe* avec *foo.lib* car dans ce cas "
"Windows aura besoin de la DLL." "Windows aura besoin de la DLL."
#: faq/windows.rst:158 #: faq/windows.rst:157
msgid "" msgid ""
"Note that the search path for foo.pyd is PYTHONPATH, not the same as the " "Note that the search path for foo.pyd is PYTHONPATH, not the same as the "
"path that Windows uses to search for foo.dll. Also, foo.pyd need not be " "path that Windows uses to search for foo.dll. Also, foo.pyd need not be "
@ -275,11 +274,11 @@ msgstr ""
"``__declspec(dllexport)``. Dans un *.pyd* la liaison est définie dans une " "``__declspec(dllexport)``. Dans un *.pyd* la liaison est définie dans une "
"liste de fonctions disponibles." "liste de fonctions disponibles."
#: faq/windows.rst:167 #: faq/windows.rst:166
msgid "How can I embed Python into a Windows application?" msgid "How can I embed Python into a Windows application?"
msgstr "Comment puis-je intégrer Python dans une application Windows ?" msgstr "Comment puis-je intégrer Python dans une application Windows ?"
#: faq/windows.rst:169 #: faq/windows.rst:168
msgid "" msgid ""
"Embedding the Python interpreter in a Windows app can be summarized as " "Embedding the Python interpreter in a Windows app can be summarized as "
"follows:" "follows:"
@ -287,7 +286,7 @@ msgstr ""
"L'intégration de l'interpréteur Python dans une application Windows peut se " "L'intégration de l'interpréteur Python dans une application Windows peut se "
"résumer comme suit :" "résumer comme suit :"
#: faq/windows.rst:171 #: faq/windows.rst:170
msgid "" msgid ""
"Do _not_ build Python into your .exe file directly. On Windows, Python must " "Do _not_ build Python into your .exe file directly. On Windows, Python must "
"be a DLL to handle importing modules that are themselves DLL's. (This is " "be a DLL to handle importing modules that are themselves DLL's. (This is "
@ -302,7 +301,7 @@ msgstr ""
"est généralement placé dans ``C:\\Windows\\System``. *NN* étant la version " "est généralement placé dans ``C:\\Windows\\System``. *NN* étant la version "
"Python, par exemple « 33 » pour Python 3.3." "Python, par exemple « 33 » pour Python 3.3."
#: faq/windows.rst:177 #: faq/windows.rst:176
msgid "" msgid ""
"You can link to Python in two different ways. Load-time linking means " "You can link to Python in two different ways. Load-time linking means "
"linking against :file:`python{NN}.lib`, while run-time linking means linking " "linking against :file:`python{NN}.lib`, while run-time linking means linking "
@ -317,7 +316,7 @@ msgstr ""
"lib* » correspondant à :file:`python{NN}.dll`. Il définit simplement des " "lib* » correspondant à :file:`python{NN}.dll`. Il définit simplement des "
"liens symboliques pour l'éditeur de liens.)" "liens symboliques pour l'éditeur de liens.)"
#: faq/windows.rst:183 #: faq/windows.rst:182
msgid "" msgid ""
"Run-time linking greatly simplifies link options; everything happens at run " "Run-time linking greatly simplifies link options; everything happens at run "
"time. Your code must load :file:`python{NN}.dll` using the Windows " "time. Your code must load :file:`python{NN}.dll` using the Windows "
@ -336,7 +335,7 @@ msgstr ""
"peuvent rendre l'utilisation de ces pointeurs transparente à tout code C qui " "peuvent rendre l'utilisation de ces pointeurs transparente à tout code C qui "
"appelle des routines dans l'API C de Python." "appelle des routines dans l'API C de Python."
#: faq/windows.rst:190 #: faq/windows.rst:189
msgid "" msgid ""
"Borland note: convert :file:`python{NN}.lib` to OMF format using Coff2Omf." "Borland note: convert :file:`python{NN}.lib` to OMF format using Coff2Omf."
"exe first." "exe first."
@ -344,7 +343,7 @@ msgstr ""
"Note Borland : convertir :file:`python{NN}.lib` au format OMF en utilisant " "Note Borland : convertir :file:`python{NN}.lib` au format OMF en utilisant "
"*Coff2Omf.exe* en premier." "*Coff2Omf.exe* en premier."
#: faq/windows.rst:195 #: faq/windows.rst:194
msgid "" msgid ""
"If you use SWIG, it is easy to create a Python \"extension module\" that " "If you use SWIG, it is easy to create a Python \"extension module\" that "
"will make the app's data and methods available to Python. SWIG will handle " "will make the app's data and methods available to Python. SWIG will handle "
@ -359,7 +358,7 @@ msgstr ""
"n'avez **pas** besoin de créer un fichier DLL, et cela simplifie également " "n'avez **pas** besoin de créer un fichier DLL, et cela simplifie également "
"la liaison." "la liaison."
#: faq/windows.rst:201 #: faq/windows.rst:200
msgid "" msgid ""
"SWIG will create an init function (a C function) whose name depends on the " "SWIG will create an init function (a C function) whose name depends on the "
"name of the extension module. For example, if the name of the module is " "name of the extension module. For example, if the name of the module is "
@ -374,7 +373,7 @@ msgstr ""
"appelée *initleoc()*. Ceci initialise une classe auxiliaire invisible " "appelée *initleoc()*. Ceci initialise une classe auxiliaire invisible "
"utilisée par la classe *shadow*." "utilisée par la classe *shadow*."
#: faq/windows.rst:207 #: faq/windows.rst:206
msgid "" msgid ""
"The reason you can link the C code in step 2 into your .exe file is that " "The reason you can link the C code in step 2 into your .exe file is that "
"calling the initialization function is equivalent to importing the module " "calling the initialization function is equivalent to importing the module "
@ -384,7 +383,7 @@ msgstr ""
"*fichier.exe* est que l'appel de la fonction d'initialisation équivaut à " "*fichier.exe* est que l'appel de la fonction d'initialisation équivaut à "
"importer le module dans Python ! (C'est le deuxième fait clé non documenté.)" "importer le module dans Python ! (C'est le deuxième fait clé non documenté.)"
#: faq/windows.rst:211 #: faq/windows.rst:210
msgid "" msgid ""
"In short, you can use the following code to initialize the Python " "In short, you can use the following code to initialize the Python "
"interpreter with your extension module." "interpreter with your extension module."
@ -392,7 +391,7 @@ msgstr ""
"En bref, vous pouvez utiliser le code suivant pour initialiser " "En bref, vous pouvez utiliser le code suivant pour initialiser "
"l'interpréteur Python avec votre module d'extension." "l'interpréteur Python avec votre module d'extension."
#: faq/windows.rst:222 #: faq/windows.rst:221
msgid "" msgid ""
"There are two problems with Python's C API which will become apparent if you " "There are two problems with Python's C API which will become apparent if you "
"use a compiler other than MSVC, the compiler used to build pythonNN.dll." "use a compiler other than MSVC, the compiler used to build pythonNN.dll."
@ -401,7 +400,7 @@ msgstr ""
"utilisez un compilateur autre que MSVC, le compilateur utilisé pour " "utilisez un compilateur autre que MSVC, le compilateur utilisé pour "
"construire *pythonNN.dll*." "construire *pythonNN.dll*."
#: faq/windows.rst:225 #: faq/windows.rst:224
msgid "" msgid ""
"Problem 1: The so-called \"Very High Level\" functions that take FILE * " "Problem 1: The so-called \"Very High Level\" functions that take FILE * "
"arguments will not work in a multi-compiler environment because each " "arguments will not work in a multi-compiler environment because each "
@ -414,7 +413,7 @@ msgstr ""
"structure de FILE. Du point de vue de l'implémentation, il s'agit de " "structure de FILE. Du point de vue de l'implémentation, il s'agit de "
"fonctions de très bas niveau." "fonctions de très bas niveau."
#: faq/windows.rst:230 #: faq/windows.rst:229
msgid "" msgid ""
"Problem 2: SWIG generates the following code when generating wrappers to " "Problem 2: SWIG generates the following code when generating wrappers to "
"void functions:" "void functions:"
@ -422,7 +421,7 @@ msgstr ""
"Problème 2 : SWIG génère le code suivant lors de la génération " "Problème 2 : SWIG génère le code suivant lors de la génération "
"*d'encapsuleurs* pour annuler les fonctions :" "*d'encapsuleurs* pour annuler les fonctions :"
#: faq/windows.rst:239 #: faq/windows.rst:238
msgid "" msgid ""
"Alas, Py_None is a macro that expands to a reference to a complex data " "Alas, Py_None is a macro that expands to a reference to a complex data "
"structure called _Py_NoneStruct inside pythonNN.dll. Again, this code will " "structure called _Py_NoneStruct inside pythonNN.dll. Again, this code will "
@ -433,7 +432,7 @@ msgstr ""
"une fois, ce code échouera dans un environnement multi-compilateur. " "une fois, ce code échouera dans un environnement multi-compilateur. "
"Remplacez ce code par :" "Remplacez ce code par :"
#: faq/windows.rst:247 #: faq/windows.rst:246
msgid "" msgid ""
"It may be possible to use SWIG's ``%typemap`` command to make the change " "It may be possible to use SWIG's ``%typemap`` command to make the change "
"automatically, though I have not been able to get this to work (I'm a " "automatically, though I have not been able to get this to work (I'm a "
@ -443,7 +442,7 @@ msgstr ""
"le changement automatiquement, bien que je n'ai pas réussi à le faire " "le changement automatiquement, bien que je n'ai pas réussi à le faire "
"fonctionner (je suis un débutant complet avec SWIG)." "fonctionner (je suis un débutant complet avec SWIG)."
#: faq/windows.rst:251 #: faq/windows.rst:250
msgid "" msgid ""
"Using a Python shell script to put up a Python interpreter window from " "Using a Python shell script to put up a Python interpreter window from "
"inside your Windows app is not a good idea; the resulting window will be " "inside your Windows app is not a good idea; the resulting window will be "
@ -464,13 +463,13 @@ msgstr ""
"dont vous avez besoin est un objet Python (défini dans votre module " "dont vous avez besoin est un objet Python (défini dans votre module "
"d'extension) qui contient les méthodes *read()* et *write()*." "d'extension) qui contient les méthodes *read()* et *write()*."
#: faq/windows.rst:260 #: faq/windows.rst:259
msgid "How do I keep editors from inserting tabs into my Python source?" msgid "How do I keep editors from inserting tabs into my Python source?"
msgstr "" msgstr ""
"Comment empêcher mon éditeur d'utiliser des tabulations dans mes fichiers " "Comment empêcher mon éditeur d'utiliser des tabulations dans mes fichiers "
"Python ?" "Python ?"
#: faq/windows.rst:262 #: faq/windows.rst:261
msgid "" msgid ""
"The FAQ does not recommend using tabs, and the Python style guide, :pep:`8`, " "The FAQ does not recommend using tabs, and the Python style guide, :pep:`8`, "
"recommends 4 spaces for distributed Python code; this is also the Emacs " "recommends 4 spaces for distributed Python code; this is also the Emacs "
@ -481,7 +480,7 @@ msgstr ""
"dans les codes Python. C'est aussi le comportement par défaut d'Emacs avec " "dans les codes Python. C'est aussi le comportement par défaut d'Emacs avec "
"Python." "Python."
#: faq/windows.rst:266 #: faq/windows.rst:265
msgid "" msgid ""
"Under any editor, mixing tabs and spaces is a bad idea. MSVC is no " "Under any editor, mixing tabs and spaces is a bad idea. MSVC is no "
"different in this respect, and is easily configured to use spaces: Take :" "different in this respect, and is easily configured to use spaces: Take :"
@ -495,7 +494,7 @@ msgstr ""
"Tabs` et pour le type de fichier par défaut, vous devez mettre *Tab size* et " "Tabs` et pour le type de fichier par défaut, vous devez mettre *Tab size* et "
"*Indent size* à 4, puis sélectionner *Insert spaces*." "*Indent size* à 4, puis sélectionner *Insert spaces*."
#: faq/windows.rst:271 #: faq/windows.rst:270
msgid "" msgid ""
"Python raises :exc:`IndentationError` or :exc:`TabError` if mixed tabs and " "Python raises :exc:`IndentationError` or :exc:`TabError` if mixed tabs and "
"spaces are causing problems in leading whitespace. You may also run the :mod:" "spaces are causing problems in leading whitespace. You may also run the :mod:"
@ -505,13 +504,13 @@ msgstr ""
"tabulation et dindentation pose problème en début de ligne. Vous pouvez " "tabulation et dindentation pose problème en début de ligne. Vous pouvez "
"aussi utiliser le module :mod:`tabnanny` pour détecter ces erreurs." "aussi utiliser le module :mod:`tabnanny` pour détecter ces erreurs."
#: faq/windows.rst:278 #: faq/windows.rst:277
msgid "How do I check for a keypress without blocking?" msgid "How do I check for a keypress without blocking?"
msgstr "" msgstr ""
"Comment puis-je vérifier de manière non bloquante qu'une touche a été " "Comment puis-je vérifier de manière non bloquante qu'une touche a été "
"pressée ?" "pressée ?"
#: faq/windows.rst:280 #: faq/windows.rst:279
msgid "" msgid ""
"Use the :mod:`msvcrt` module. This is a standard Windows-specific extension " "Use the :mod:`msvcrt` module. This is a standard Windows-specific extension "
"module. It defines a function ``kbhit()`` which checks whether a keyboard " "module. It defines a function ``kbhit()`` which checks whether a keyboard "

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-08-24 09:01+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2019-06-10 15:50+0200\n" "PO-Revision-Date: 2019-06-10 15:50+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n" "Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -580,8 +580,8 @@ msgstr ""
#: library/asyncio-eventloop.rst:442 #: library/asyncio-eventloop.rst:442
msgid "" msgid ""
"*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind " "*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind "
"the socket to locally. The *local_host* and *local_port* are looked up " "the socket locally. The *local_host* and *local_port* are looked up using "
"using ``getaddrinfo()``, similarly to *host* and *port*." "``getaddrinfo()``, similarly to *host* and *port*."
msgstr "" msgstr ""
#: library/asyncio-eventloop.rst:446 library/asyncio-eventloop.rst:799 #: library/asyncio-eventloop.rst:446 library/asyncio-eventloop.rst:799
@ -683,8 +683,8 @@ msgstr ""
#: library/asyncio-eventloop.rst:520 #: library/asyncio-eventloop.rst:520
msgid "" msgid ""
"*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind " "*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind "
"the socket to locally. The *local_host* and *local_port* are looked up " "the socket locally. The *local_host* and *local_port* are looked up using :"
"using :meth:`getaddrinfo`." "meth:`getaddrinfo`."
msgstr "" msgstr ""
#: library/asyncio-eventloop.rst:524 #: library/asyncio-eventloop.rst:524

View File

@ -5,14 +5,14 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-05-19 22:36+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2021-05-17 13:06+0200\n" "PO-Revision-Date: 2021-05-17 13:06+0200\n"
"Last-Translator: Dimitri Merejkowsky <dimitri@dmerej.info>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Last-Translator: Dimitri Merejkowsky <dimitri@dmerej.info>\n"
"X-Generator: Poedit 2.4.3\n" "X-Generator: Poedit 2.4.3\n"
#: library/configparser.rst:2 #: library/configparser.rst:2

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-01 16:00+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2021-05-23 14:41-0400\n" "PO-Revision-Date: 2021-05-23 14:41-0400\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -258,7 +258,7 @@ msgstr "Par exemple ::"
msgid "This code is equivalent to::" msgid "This code is equivalent to::"
msgstr "Ce code est équivalent à ::" msgstr "Ce code est équivalent à ::"
#: library/contextlib.rst:263 library/contextlib.rst:273 #: library/contextlib.rst:264 library/contextlib.rst:274
msgid "This context manager is :ref:`reentrant <reentrant-cms>`." msgid "This context manager is :ref:`reentrant <reentrant-cms>`."
msgstr "Ce gestionnaire de contexte est :ref:`réentrant <reentrant-cms>`." msgstr "Ce gestionnaire de contexte est :ref:`réentrant <reentrant-cms>`."
@ -279,16 +279,19 @@ msgstr ""
"existantes dont la sortie est envoyée vers la sortie standard." "existantes dont la sortie est envoyée vers la sortie standard."
#: library/contextlib.rst:237 #: library/contextlib.rst:237
#, fuzzy
msgid "" msgid ""
"For example, the output of :func:`help` normally is sent to *sys.stdout*. " "For example, the output of :func:`help` normally is sent to *sys.stdout*. "
"You can capture that output in a string by redirecting the output to an :" "You can capture that output in a string by redirecting the output to an :"
"class:`io.StringIO` object::" "class:`io.StringIO` object. The replacement stream is returned from the "
"``__enter__`` method and so is available as the target of the :keyword:"
"`with` statement::"
msgstr "" msgstr ""
"Par exemple, la sortie de :func:`help` est normalement envoyée vers *sys." "Par exemple, la sortie de :func:`help` est normalement envoyée vers *sys."
"stdout*. Vous pouvez capturer cette sortie dans une chaîne de caractères en " "stdout*. Vous pouvez capturer cette sortie dans une chaîne de caractères en "
"la redirigeant vers un objet :class:`io.StringIO` ::" "la redirigeant vers un objet :class:`io.StringIO` ::"
#: library/contextlib.rst:246 #: library/contextlib.rst:247
msgid "" msgid ""
"To send the output of :func:`help` to a file on disk, redirect the output to " "To send the output of :func:`help` to a file on disk, redirect the output to "
"a regular file::" "a regular file::"
@ -296,11 +299,11 @@ msgstr ""
"Pour envoyer la sortie de :func:`help` vers un fichier sur le disque, " "Pour envoyer la sortie de :func:`help` vers un fichier sur le disque, "
"redirigez-la sur un fichier normal ::" "redirigez-la sur un fichier normal ::"
#: library/contextlib.rst:253 #: library/contextlib.rst:254
msgid "To send the output of :func:`help` to *sys.stderr*::" msgid "To send the output of :func:`help` to *sys.stderr*::"
msgstr "Pour envoyer la sortie de :func:`help` sur *sys.stderr* ::" msgstr "Pour envoyer la sortie de :func:`help` sur *sys.stderr* ::"
#: library/contextlib.rst:258 #: library/contextlib.rst:259
msgid "" msgid ""
"Note that the global side effect on :data:`sys.stdout` means that this " "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 " "context manager is not suitable for use in library code and most threaded "
@ -314,7 +317,7 @@ msgstr ""
"Cependant, cela reste une approche utile pour beaucoup de scripts " "Cependant, cela reste une approche utile pour beaucoup de scripts "
"utilitaires." "utilitaires."
#: library/contextlib.rst:270 #: library/contextlib.rst:271
msgid "" msgid ""
"Similar to :func:`~contextlib.redirect_stdout` but redirecting :data:`sys." "Similar to :func:`~contextlib.redirect_stdout` but redirecting :data:`sys."
"stderr` to another file or file-like object." "stderr` to another file or file-like object."
@ -322,14 +325,14 @@ msgstr ""
"Similaire à :func:`~contextlib.redirect_stdout` mais redirige :data:`sys." "Similaire à :func:`~contextlib.redirect_stdout` mais redirige :data:`sys."
"stderr` vers un autre fichier ou objet fichier-compatible." "stderr` vers un autre fichier ou objet fichier-compatible."
#: library/contextlib.rst:280 #: library/contextlib.rst:281
msgid "" msgid ""
"A base class that enables a context manager to also be used as a decorator." "A base class that enables a context manager to also be used as a decorator."
msgstr "" msgstr ""
"Une classe mère qui permet à un gestionnaire de contexte d'être aussi " "Une classe mère qui permet à un gestionnaire de contexte d'être aussi "
"utilisé comme décorateur." "utilisé comme décorateur."
#: library/contextlib.rst:282 #: library/contextlib.rst:283
msgid "" msgid ""
"Context managers inheriting from ``ContextDecorator`` have to implement " "Context managers inheriting from ``ContextDecorator`` have to implement "
"``__enter__`` and ``__exit__`` as normal. ``__exit__`` retains its optional " "``__enter__`` and ``__exit__`` as normal. ``__exit__`` retains its optional "
@ -340,7 +343,7 @@ msgstr ""
"conserve sa gestion optionnelle des exceptions même lors de l'utilisation en " "conserve sa gestion optionnelle des exceptions même lors de l'utilisation en "
"décorateur." "décorateur."
#: library/contextlib.rst:286 #: library/contextlib.rst:287
msgid "" msgid ""
"``ContextDecorator`` is used by :func:`contextmanager`, so you get this " "``ContextDecorator`` is used by :func:`contextmanager`, so you get this "
"functionality automatically." "functionality automatically."
@ -348,22 +351,22 @@ msgstr ""
"``ContextDecorator`` est utilisé par :func:`contextmanager`, donc vous " "``ContextDecorator`` est utilisé par :func:`contextmanager`, donc vous "
"bénéficiez automatiquement de cette fonctionnalité." "bénéficiez automatiquement de cette fonctionnalité."
#: library/contextlib.rst:289 #: library/contextlib.rst:290
msgid "Example of ``ContextDecorator``::" msgid "Example of ``ContextDecorator``::"
msgstr "Exemple de ``ContextDecorator`` ::" msgstr "Exemple de ``ContextDecorator`` ::"
#: library/contextlib.rst:318 #: library/contextlib.rst:319
msgid "" msgid ""
"This change is just syntactic sugar for any construct of the following form::" "This change is just syntactic sugar for any construct of the following form::"
msgstr "" msgstr ""
"Ce changement est simplement un sucre syntaxique pour les constructions de " "Ce changement est simplement un sucre syntaxique pour les constructions de "
"la forme suivante ::" "la forme suivante ::"
#: library/contextlib.rst:324 #: library/contextlib.rst:325
msgid "``ContextDecorator`` lets you instead write::" msgid "``ContextDecorator`` lets you instead write::"
msgstr "``ContextDecorator`` vous permet d'écrire à la place ::" msgstr "``ContextDecorator`` vous permet d'écrire à la place ::"
#: library/contextlib.rst:330 #: library/contextlib.rst:331
msgid "" msgid ""
"It makes it clear that the ``cm`` applies to the whole function, rather than " "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)." "just a piece of it (and saving an indentation level is nice, too)."
@ -372,7 +375,7 @@ msgstr ""
"seulement à un morceau en particulier (et gagner un niveau d'indentation est " "seulement à un morceau en particulier (et gagner un niveau d'indentation est "
"toujours appréciable)." "toujours appréciable)."
#: library/contextlib.rst:333 #: library/contextlib.rst:334
msgid "" msgid ""
"Existing context managers that already have a base class can be extended by " "Existing context managers that already have a base class can be extended by "
"using ``ContextDecorator`` as a mixin class::" "using ``ContextDecorator`` as a mixin class::"
@ -380,7 +383,7 @@ msgstr ""
"Les gestionnaires de contexte existants qui ont déjà une classe mère peuvent " "Les gestionnaires de contexte existants qui ont déjà une classe mère peuvent "
"être étendus en utilisant ``ContextDecorator`` comme une *mixin* ::" "être étendus en utilisant ``ContextDecorator`` comme une *mixin* ::"
#: library/contextlib.rst:346 #: library/contextlib.rst:347
msgid "" msgid ""
"As the decorated function must be able to be called multiple times, the " "As the decorated function must be able to be called multiple times, the "
"underlying context manager must support use in multiple :keyword:`with` " "underlying context manager must support use in multiple :keyword:`with` "
@ -393,7 +396,7 @@ msgstr ""
"construction d'origine avec de multiples instructions :keyword:`!with` au " "construction d'origine avec de multiples instructions :keyword:`!with` au "
"sein de la fonction doit être utilisée." "sein de la fonction doit être utilisée."
#: library/contextlib.rst:356 #: library/contextlib.rst:357
msgid "" msgid ""
"A context manager that is designed to make it easy to programmatically " "A context manager that is designed to make it easy to programmatically "
"combine other context managers and cleanup functions, especially those that " "combine other context managers and cleanup functions, especially those that "
@ -404,7 +407,7 @@ msgstr ""
"nettoyage, spécifiquement ceux qui sont optionnels ou pilotés par des " "nettoyage, spécifiquement ceux qui sont optionnels ou pilotés par des "
"données d'entrée." "données d'entrée."
#: library/contextlib.rst:360 #: library/contextlib.rst:361
msgid "" msgid ""
"For example, a set of files may easily be handled in a single with statement " "For example, a set of files may easily be handled in a single with statement "
"as follows::" "as follows::"
@ -412,7 +415,7 @@ msgstr ""
"Par exemple, un ensemble de fichiers peut facilement être géré dans une " "Par exemple, un ensemble de fichiers peut facilement être géré dans une "
"unique instruction *with* comme suit ::" "unique instruction *with* comme suit ::"
#: library/contextlib.rst:369 #: library/contextlib.rst:370
msgid "" msgid ""
"Each instance maintains a stack of registered callbacks that are called in " "Each instance maintains a stack of registered callbacks that are called in "
"reverse order when the instance is closed (either explicitly or implicitly " "reverse order when the instance is closed (either explicitly or implicitly "
@ -425,7 +428,7 @@ msgstr ""
"que ces fonctions ne sont *pas* invoquées implicitement quand l'instance de " "que ces fonctions ne sont *pas* invoquées implicitement quand l'instance de "
"la pile de contextes est collectée par le ramasse-miettes." "la pile de contextes est collectée par le ramasse-miettes."
#: library/contextlib.rst:374 #: library/contextlib.rst:375
msgid "" msgid ""
"This stack model is used so that context managers that acquire their " "This stack model is used so that context managers that acquire their "
"resources in their ``__init__`` method (such as file objects) can be handled " "resources in their ``__init__`` method (such as file objects) can be handled "
@ -435,7 +438,7 @@ msgstr ""
"acquièrent leurs ressources dans leur méthode ``__init__`` (tels que les " "acquièrent leurs ressources dans leur méthode ``__init__`` (tels que les "
"objets-fichiers) puissent être gérés correctement." "objets-fichiers) puissent être gérés correctement."
#: library/contextlib.rst:378 #: library/contextlib.rst:379
msgid "" msgid ""
"Since registered callbacks are invoked in the reverse order of registration, " "Since registered callbacks are invoked in the reverse order of registration, "
"this ends up behaving as if multiple nested :keyword:`with` statements had " "this ends up behaving as if multiple nested :keyword:`with` statements had "
@ -451,7 +454,7 @@ msgstr ""
"de rappel intérieure supprime ou remplace une exception, alors les fonctions " "de rappel intérieure supprime ou remplace une exception, alors les fonctions "
"extérieures reçoivent des arguments basés sur ce nouvel état." "extérieures reçoivent des arguments basés sur ce nouvel état."
#: library/contextlib.rst:385 #: library/contextlib.rst:386
msgid "" msgid ""
"This is a relatively low level API that takes care of the details of " "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 " "correctly unwinding the stack of exit callbacks. It provides a suitable "
@ -463,7 +466,7 @@ msgstr ""
"pour des gestionnaires de contexte de plus haut niveau qui manipulent la " "pour des gestionnaires de contexte de plus haut niveau qui manipulent la "
"pile de sortie de manière spécifique à l'application." "pile de sortie de manière spécifique à l'application."
#: library/contextlib.rst:394 #: library/contextlib.rst:395
msgid "" msgid ""
"Enters a new context manager and adds its :meth:`__exit__` method to the " "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 :" "callback stack. The return value is the result of the context manager's own :"
@ -473,7 +476,7 @@ msgstr ""
"`__exit__` à la pile d'appels. La valeur de retour est le résultat de la " "`__exit__` à la pile d'appels. La valeur de retour est le résultat de la "
"méthode :meth:`__enter__` du gestionnaire de contexte donné." "méthode :meth:`__enter__` du gestionnaire de contexte donné."
#: library/contextlib.rst:398 #: library/contextlib.rst:399
msgid "" msgid ""
"These context managers may suppress exceptions just as they normally would " "These context managers may suppress exceptions just as they normally would "
"if used directly as part of a :keyword:`with` statement." "if used directly as part of a :keyword:`with` statement."
@ -482,13 +485,13 @@ msgstr ""
"feraient normalement s'ils étaient utilisés directement derrière une " "feraient normalement s'ils étaient utilisés directement derrière une "
"instruction :keyword:`with`." "instruction :keyword:`with`."
#: library/contextlib.rst:403 #: library/contextlib.rst:404
msgid "Adds a context manager's :meth:`__exit__` method to the callback stack." msgid "Adds a context manager's :meth:`__exit__` method to the callback stack."
msgstr "" msgstr ""
"Ajoute la méthode :meth:`__exit__` d'un gestionnaire de contexte à la pile " "Ajoute la méthode :meth:`__exit__` d'un gestionnaire de contexte à la pile "
"d'appels." "d'appels."
#: library/contextlib.rst:405 #: library/contextlib.rst:406
msgid "" msgid ""
"As ``__enter__`` is *not* invoked, this method can be used to cover part of " "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:" "an :meth:`__enter__` implementation with a context manager's own :meth:"
@ -498,7 +501,7 @@ msgstr ""
"pour couvrir une partie de l'implémentation de :meth:`__enter__` avec la " "pour couvrir une partie de l'implémentation de :meth:`__enter__` avec la "
"propre méthode :meth:`__exit__` d'un gestionnaire de contexte." "propre méthode :meth:`__exit__` d'un gestionnaire de contexte."
#: library/contextlib.rst:409 #: library/contextlib.rst:410
msgid "" msgid ""
"If passed an object that is not a context manager, this method assumes it is " "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__` " "a callback with the same signature as a context manager's :meth:`__exit__` "
@ -509,7 +512,7 @@ msgstr ""
"meth:`__exit__` des gestionnaires de contexte pour l'ajouter directement à " "meth:`__exit__` des gestionnaires de contexte pour l'ajouter directement à "
"la pile d'appels." "la pile d'appels."
#: library/contextlib.rst:413 #: library/contextlib.rst:414
msgid "" msgid ""
"By returning true values, these callbacks can suppress exceptions the same " "By returning true values, these callbacks can suppress exceptions the same "
"way context manager :meth:`__exit__` methods can." "way context manager :meth:`__exit__` methods can."
@ -518,7 +521,7 @@ msgstr ""
"exceptions de la même manière que le peuvent les méthodes :meth:`__exit__` " "exceptions de la même manière que le peuvent les méthodes :meth:`__exit__` "
"des gestionnaires de contexte." "des gestionnaires de contexte."
#: library/contextlib.rst:416 #: library/contextlib.rst:417
msgid "" msgid ""
"The passed in object is returned from the function, allowing this method to " "The passed in object is returned from the function, allowing this method to "
"be used as a function decorator." "be used as a function decorator."
@ -526,7 +529,7 @@ msgstr ""
"L'objet passé en paramètre est renvoyé par la fonction, ce qui permet à la " "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." "méthode d'être utilisée comme décorateur de fonction."
#: library/contextlib.rst:421 #: library/contextlib.rst:422
msgid "" msgid ""
"Accepts an arbitrary callback function and arguments and adds it to the " "Accepts an arbitrary callback function and arguments and adds it to the "
"callback stack." "callback stack."
@ -534,7 +537,7 @@ msgstr ""
"Accepte une fonction arbitraire et ses arguments et les ajoute à la pile des " "Accepte une fonction arbitraire et ses arguments et les ajoute à la pile des "
"fonctions de rappel." "fonctions de rappel."
#: library/contextlib.rst:424 #: library/contextlib.rst:425
msgid "" msgid ""
"Unlike the other methods, callbacks added this way cannot suppress " "Unlike the other methods, callbacks added this way cannot suppress "
"exceptions (as they are never passed the exception details)." "exceptions (as they are never passed the exception details)."
@ -543,7 +546,7 @@ msgstr ""
"cette manière ne peuvent pas supprimer les exceptions (puisqu'elles ne " "cette manière ne peuvent pas supprimer les exceptions (puisqu'elles ne "
"reçoivent jamais les détails de l'exception)." "reçoivent jamais les détails de l'exception)."
#: library/contextlib.rst:427 #: library/contextlib.rst:428
msgid "" msgid ""
"The passed in callback is returned from the function, allowing this method " "The passed in callback is returned from the function, allowing this method "
"to be used as a function decorator." "to be used as a function decorator."
@ -551,7 +554,7 @@ msgstr ""
"La fonction passée en paramètre est renvoyée par la méthode, ce qui permet à " "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." "la méthode d'être utilisée comme décorateur de fonction."
#: library/contextlib.rst:432 #: library/contextlib.rst:433
msgid "" msgid ""
"Transfers the callback stack to a fresh :class:`ExitStack` instance and " "Transfers the callback stack to a fresh :class:`ExitStack` instance and "
"returns it. No callbacks are invoked by this operation - instead, they will " "returns it. No callbacks are invoked by this operation - instead, they will "
@ -563,7 +566,7 @@ msgstr ""
"la place, elles sont dorénavant invoquées quand la nouvelle pile sera close " "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`)." "(soit explicitement soit implicitement à la fin d'un bloc :keyword:`with`)."
#: library/contextlib.rst:437 #: library/contextlib.rst:438
msgid "" msgid ""
"For example, a group of files can be opened as an \"all or nothing\" " "For example, a group of files can be opened as an \"all or nothing\" "
"operation as follows::" "operation as follows::"
@ -571,7 +574,7 @@ msgstr ""
"Par exemple, un groupe de fichiers peut être ouvert comme une opération " "Par exemple, un groupe de fichiers peut être ouvert comme une opération "
 tout ou rien » comme suit ::"  tout ou rien » comme suit ::"
#: library/contextlib.rst:451 #: library/contextlib.rst:452
msgid "" msgid ""
"Immediately unwinds the callback stack, invoking callbacks in the reverse " "Immediately unwinds the callback stack, invoking callbacks in the reverse "
"order of registration. For any context managers and exit callbacks " "order of registration. For any context managers and exit callbacks "
@ -582,7 +585,7 @@ msgstr ""
"et fonction de sortie enregistré, les arguments passés indiqueront qu'aucune " "et fonction de sortie enregistré, les arguments passés indiqueront qu'aucune "
"exception n'est survenue." "exception n'est survenue."
#: library/contextlib.rst:458 #: library/contextlib.rst:459
msgid "" msgid ""
"An :ref:`asynchronous context manager <async-context-managers>`, similar to :" "An :ref:`asynchronous context manager <async-context-managers>`, similar to :"
"class:`ExitStack`, that supports combining both synchronous and asynchronous " "class:`ExitStack`, that supports combining both synchronous and asynchronous "
@ -593,7 +596,7 @@ msgstr ""
"de contexte synchrones et asynchrones, ainsi que la gestion de coroutines " "de contexte synchrones et asynchrones, ainsi que la gestion de coroutines "
"pour la logique de nettoyage." "pour la logique de nettoyage."
#: library/contextlib.rst:463 #: library/contextlib.rst:464
msgid "" msgid ""
"The :meth:`close` method is not implemented, :meth:`aclose` must be used " "The :meth:`close` method is not implemented, :meth:`aclose` must be used "
"instead." "instead."
@ -601,14 +604,14 @@ msgstr ""
"La méthode :meth:`close` n'est pas implémentée, :meth:`aclose` doit plutôt " "La méthode :meth:`close` n'est pas implémentée, :meth:`aclose` doit plutôt "
"être utilisée." "être utilisée."
#: library/contextlib.rst:468 #: library/contextlib.rst:469
msgid "" msgid ""
"Similar to :meth:`enter_context` but expects an asynchronous context manager." "Similar to :meth:`enter_context` but expects an asynchronous context manager."
msgstr "" msgstr ""
"Similaire à :meth:`enter_context` mais attend un gestionnaire de contexte " "Similaire à :meth:`enter_context` mais attend un gestionnaire de contexte "
"asynchrone." "asynchrone."
#: library/contextlib.rst:473 #: library/contextlib.rst:474
msgid "" msgid ""
"Similar to :meth:`push` but expects either an asynchronous context manager " "Similar to :meth:`push` but expects either an asynchronous context manager "
"or a coroutine function." "or a coroutine function."
@ -616,24 +619,24 @@ msgstr ""
"Similaire à :meth:`push` mais attend soit un gestionnaire de contexte " "Similaire à :meth:`push` mais attend soit un gestionnaire de contexte "
"asynchrone soit une fonction coroutine." "asynchrone soit une fonction coroutine."
#: library/contextlib.rst:478 #: library/contextlib.rst:479
msgid "Similar to :meth:`callback` but expects a coroutine function." msgid "Similar to :meth:`callback` but expects a coroutine function."
msgstr "Similaire à :meth:`callback` mais attend une fonction coroutine." msgstr "Similaire à :meth:`callback` mais attend une fonction coroutine."
#: library/contextlib.rst:482 #: library/contextlib.rst:483
msgid "Similar to :meth:`close` but properly handles awaitables." msgid "Similar to :meth:`close` but properly handles awaitables."
msgstr "" msgstr ""
"Similaire à :meth:`close` mais gère correctement les tâches asynchrones." "Similaire à :meth:`close` mais gère correctement les tâches asynchrones."
#: library/contextlib.rst:484 #: library/contextlib.rst:485
msgid "Continuing the example for :func:`asynccontextmanager`::" msgid "Continuing the example for :func:`asynccontextmanager`::"
msgstr "En continuité de l'exemple de :func:`asynccontextmanager` ::" msgstr "En continuité de l'exemple de :func:`asynccontextmanager` ::"
#: library/contextlib.rst:496 #: library/contextlib.rst:497
msgid "Examples and Recipes" msgid "Examples and Recipes"
msgstr "Exemples et Recettes" msgstr "Exemples et Recettes"
#: library/contextlib.rst:498 #: library/contextlib.rst:499
msgid "" msgid ""
"This section describes some examples and recipes for making effective use of " "This section describes some examples and recipes for making effective use of "
"the tools provided by :mod:`contextlib`." "the tools provided by :mod:`contextlib`."
@ -641,11 +644,11 @@ msgstr ""
"Cette section décrit quelques exemples et recettes pour décrire une " "Cette section décrit quelques exemples et recettes pour décrire une "
"utilisation réelle des outils fournis par :mod:`contextlib`." "utilisation réelle des outils fournis par :mod:`contextlib`."
#: library/contextlib.rst:503 #: library/contextlib.rst:504
msgid "Supporting a variable number of context managers" msgid "Supporting a variable number of context managers"
msgstr "Gérer un nombre variable de gestionnaires de contexte" msgstr "Gérer un nombre variable de gestionnaires de contexte"
#: library/contextlib.rst:505 #: library/contextlib.rst:506
msgid "" msgid ""
"The primary use case for :class:`ExitStack` is the one given in the class " "The primary use case for :class:`ExitStack` is the one given in the class "
"documentation: supporting a variable number of context managers and other " "documentation: supporting a variable number of context managers and other "
@ -662,7 +665,7 @@ msgstr ""
"collection spécifique de fichiers de l'utilisateur), ou de certains " "collection spécifique de fichiers de l'utilisateur), ou de certains "
"gestionnaires de contexte qui peuvent être optionnels ::" "gestionnaires de contexte qui peuvent être optionnels ::"
#: library/contextlib.rst:520 #: library/contextlib.rst:521
msgid "" msgid ""
"As shown, :class:`ExitStack` also makes it quite easy to use :keyword:`with` " "As shown, :class:`ExitStack` also makes it quite easy to use :keyword:`with` "
"statements to manage arbitrary resources that don't natively support the " "statements to manage arbitrary resources that don't natively support the "
@ -672,11 +675,11 @@ msgstr ""
"instructions :keyword:`with` pour gérer des ressources arbitraires qui ne " "instructions :keyword:`with` pour gérer des ressources arbitraires qui ne "
"gèrent pas nativement le protocole des gestionnaires de contexte." "gèrent pas nativement le protocole des gestionnaires de contexte."
#: library/contextlib.rst:526 #: library/contextlib.rst:527
msgid "Catching exceptions from ``__enter__`` methods" msgid "Catching exceptions from ``__enter__`` methods"
msgstr "Attraper des exceptions depuis les méthodes ``__enter__``" msgstr "Attraper des exceptions depuis les méthodes ``__enter__``"
#: library/contextlib.rst:528 #: library/contextlib.rst:529
msgid "" msgid ""
"It is occasionally desirable to catch exceptions from an ``__enter__`` " "It is occasionally desirable to catch exceptions from an ``__enter__`` "
"method implementation, *without* inadvertently catching exceptions from the :" "method implementation, *without* inadvertently catching exceptions from the :"
@ -691,7 +694,7 @@ msgstr ""
"`ExitStack`, les étapes du protocole des gestionnaires de contexte peuvent " "`ExitStack`, les étapes du protocole des gestionnaires de contexte peuvent "
"être légèrement séparées pour permettre le code suivant ::" "être légèrement séparées pour permettre le code suivant ::"
#: library/contextlib.rst:543 #: library/contextlib.rst:544
msgid "" msgid ""
"Actually needing to do this is likely to indicate that the underlying API " "Actually needing to do this is likely to indicate that the underlying API "
"should be providing a direct resource management interface for use with :" "should be providing a direct resource management interface for use with :"
@ -710,11 +713,11 @@ msgstr ""
"gestion de plusieurs situations qui ne peuvent pas être traitées directement " "gestion de plusieurs situations qui ne peuvent pas être traitées directement "
"dans une instruction :keyword:`with`." "dans une instruction :keyword:`with`."
#: library/contextlib.rst:553 #: library/contextlib.rst:554
msgid "Cleaning up in an ``__enter__`` implementation" msgid "Cleaning up in an ``__enter__`` implementation"
msgstr "Nettoyer dans une méthode ``__enter__``" msgstr "Nettoyer dans une méthode ``__enter__``"
#: library/contextlib.rst:555 #: library/contextlib.rst:556
msgid "" msgid ""
"As noted in the documentation of :meth:`ExitStack.push`, this method can be " "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 :" "useful in cleaning up an already allocated resource if later steps in the :"
@ -724,7 +727,7 @@ msgstr ""
"peut être utile pour nettoyer une ressource déjà allouée si les dernières " "peut être utile pour nettoyer une ressource déjà allouée si les dernières "
"étapes de l'implémentation de :meth:`__enter__` échouent." "étapes de l'implémentation de :meth:`__enter__` échouent."
#: library/contextlib.rst:559 #: library/contextlib.rst:560
msgid "" msgid ""
"Here's an example of doing this for a context manager that accepts resource " "Here's an example of doing this for a context manager that accepts resource "
"acquisition and release functions, along with an optional validation " "acquisition and release functions, along with an optional validation "
@ -734,11 +737,11 @@ msgstr ""
"d'acquisition de ressources et de libération, avec une méthode de validation " "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 ::" "optionnelle, et qui les adapte au protocole des gestionnaires de contexte ::"
#: library/contextlib.rst:599 #: library/contextlib.rst:600
msgid "Replacing any use of ``try-finally`` and flag variables" msgid "Replacing any use of ``try-finally`` and flag variables"
msgstr "Remplacer un ``try-finally`` avec une option variable" msgstr "Remplacer un ``try-finally`` avec une option variable"
#: library/contextlib.rst:601 #: library/contextlib.rst:602
msgid "" msgid ""
"A pattern you will sometimes see is a ``try-finally`` statement with a flag " "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 " "variable to indicate whether or not the body of the ``finally`` clause "
@ -750,7 +753,7 @@ msgstr ""
"ou non. Dans sa forme la plus simple (qui ne peut pas déjà être gérée avec " "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 à ::" "juste une clause ``except``), cela ressemble à ::"
#: library/contextlib.rst:615 #: library/contextlib.rst:616
msgid "" msgid ""
"As with any ``try`` statement based code, this can cause problems for " "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 " "development and review, because the setup code and the cleanup code can end "
@ -761,7 +764,7 @@ msgstr ""
"codes d'installation et de nettoyage peuvent finir par être séparés par des " "codes d'installation et de nettoyage peuvent finir par être séparés par des "
"sections de code arbitrairement longues." "sections de code arbitrairement longues."
#: library/contextlib.rst:619 #: library/contextlib.rst:620
msgid "" msgid ""
":class:`ExitStack` makes it possible to instead register a callback for " ":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 " "execution at the end of a ``with`` statement, and then later decide to skip "
@ -771,7 +774,7 @@ msgstr ""
"rappel pour être exécutée à la fin d'une instruction ``with``, et décider " "rappel pour être exécutée à la fin d'une instruction ``with``, et décider "
"ensuite de passer l'exécution de cet appel ::" "ensuite de passer l'exécution de cet appel ::"
#: library/contextlib.rst:631 #: library/contextlib.rst:632
msgid "" msgid ""
"This allows the intended cleanup up behaviour to be made explicit up front, " "This allows the intended cleanup up behaviour to be made explicit up front, "
"rather than requiring a separate flag variable." "rather than requiring a separate flag variable."
@ -779,7 +782,7 @@ msgstr ""
"Cela permet de rendre explicite dès le départ le comportement de nettoyage " "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." "attendu, plutôt que de nécessiter une option séparée."
#: library/contextlib.rst:634 #: library/contextlib.rst:635
msgid "" msgid ""
"If a particular application uses this pattern a lot, it can be simplified " "If a particular application uses this pattern a lot, it can be simplified "
"even further by means of a small helper class::" "even further by means of a small helper class::"
@ -787,7 +790,7 @@ msgstr ""
"Si une application particulière utilise beaucoup ce modèle, cela peut-être " "Si une application particulière utilise beaucoup ce modèle, cela peut-être "
"simplifié encore plus au moyen d'une petite classe d'aide ::" "simplifié encore plus au moyen d'une petite classe d'aide ::"
#: library/contextlib.rst:652 #: library/contextlib.rst:653
msgid "" msgid ""
"If the resource cleanup isn't already neatly bundled into a standalone " "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:" "function, then it is still possible to use the decorator form of :meth:"
@ -798,7 +801,7 @@ msgstr ""
"`ExitStack.callback` pour déclarer la fonction de nettoyage de ressource en " "`ExitStack.callback` pour déclarer la fonction de nettoyage de ressource en "
"avance ::" "avance ::"
#: library/contextlib.rst:667 #: library/contextlib.rst:668
msgid "" msgid ""
"Due to the way the decorator protocol works, a callback function declared " "Due to the way the decorator protocol works, a callback function declared "
"this way cannot take any parameters. Instead, any resources to be released " "this way cannot take any parameters. Instead, any resources to be released "
@ -809,12 +812,12 @@ msgstr ""
"doivent être récupérées depuis l'extérieur comme des variables de fermeture " "doivent être récupérées depuis l'extérieur comme des variables de fermeture "
"(*closure*)." "(*closure*)."
#: library/contextlib.rst:673 #: library/contextlib.rst:674
msgid "Using a context manager as a function decorator" msgid "Using a context manager as a function decorator"
msgstr "" msgstr ""
"Utiliser un gestionnaire de contexte en tant que décorateur de fonction" "Utiliser un gestionnaire de contexte en tant que décorateur de fonction"
#: library/contextlib.rst:675 #: library/contextlib.rst:676
msgid "" msgid ""
":class:`ContextDecorator` makes it possible to use a context manager in both " ":class:`ContextDecorator` makes it possible to use a context manager in both "
"an ordinary ``with`` statement and also as a function decorator." "an ordinary ``with`` statement and also as a function decorator."
@ -823,7 +826,7 @@ msgstr ""
"contexte à la fois ordinairement avec une instruction ``with`` ou comme un " "contexte à la fois ordinairement avec une instruction ``with`` ou comme un "
"décorateur de fonction." "décorateur de fonction."
#: library/contextlib.rst:678 #: library/contextlib.rst:679
msgid "" msgid ""
"For example, it is sometimes useful to wrap functions or groups of " "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. " "statements with a logger that can track the time of entry and time of exit. "
@ -838,17 +841,17 @@ msgstr ""
"`ContextDecorator` fournit les deux fonctionnalités en une seule " "`ContextDecorator` fournit les deux fonctionnalités en une seule "
"définition ::" "définition ::"
#: library/contextlib.rst:699 #: library/contextlib.rst:700
msgid "Instances of this class can be used as both a context manager::" msgid "Instances of this class can be used as both a context manager::"
msgstr "" msgstr ""
"Les instances de cette classe peuvent être utilisées comme gestionnaires de " "Les instances de cette classe peuvent être utilisées comme gestionnaires de "
"contexte ::" "contexte ::"
#: library/contextlib.rst:705 #: library/contextlib.rst:706
msgid "And also as a function decorator::" msgid "And also as a function decorator::"
msgstr "Et comme décorateurs de fonctions ::" msgstr "Et comme décorateurs de fonctions ::"
#: library/contextlib.rst:712 #: library/contextlib.rst:713
msgid "" msgid ""
"Note that there is one additional limitation when using context managers as " "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:" "function decorators: there's no way to access the return value of :meth:"
@ -860,11 +863,11 @@ msgstr ""
"de retour de :meth:`__enter__`. Si cette valeur est nécessaire, il faut " "de retour de :meth:`__enter__`. Si cette valeur est nécessaire, il faut "
"utiliser explicitement une instruction ``with``." "utiliser explicitement une instruction ``with``."
#: library/contextlib.rst:720 #: library/contextlib.rst:721
msgid ":pep:`343` - The \"with\" statement" msgid ":pep:`343` - The \"with\" statement"
msgstr ":pep:`343` - The \"with\" statement" msgstr ":pep:`343` - The \"with\" statement"
#: library/contextlib.rst:720 #: library/contextlib.rst:721
msgid "" msgid ""
"The specification, background, and examples for the Python :keyword:`with` " "The specification, background, and examples for the Python :keyword:`with` "
"statement." "statement."
@ -872,11 +875,11 @@ msgstr ""
"La spécification, les motivations et des exemples de l'instruction :keyword:" "La spécification, les motivations et des exemples de l'instruction :keyword:"
"`with` en Python." "`with` en Python."
#: library/contextlib.rst:726 #: library/contextlib.rst:727
msgid "Single use, reusable and reentrant context managers" msgid "Single use, reusable and reentrant context managers"
msgstr "Gestionnaires de contexte à usage unique, réutilisables et réentrants" msgstr "Gestionnaires de contexte à usage unique, réutilisables et réentrants"
#: library/contextlib.rst:728 #: library/contextlib.rst:729
msgid "" msgid ""
"Most context managers are written in a way that means they can only be used " "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 " "effectively in a :keyword:`with` statement once. These single use context "
@ -889,7 +892,7 @@ msgstr ""
"chaque fois qu'ils sont utilisés — tenter de les utiliser une seconde fois " "chaque fois qu'ils sont utilisés — tenter de les utiliser une seconde fois "
"lève une exception ou ne fonctionne pas correctement." "lève une exception ou ne fonctionne pas correctement."
#: library/contextlib.rst:734 #: library/contextlib.rst:735
msgid "" msgid ""
"This common limitation means that it is generally advisable to create " "This common limitation means that it is generally advisable to create "
"context managers directly in the header of the :keyword:`with` statement " "context managers directly in the header of the :keyword:`with` statement "
@ -900,7 +903,7 @@ msgstr ""
"`with` où ils sont utilisés (comme montré dans tous les exemples " "`with` où ils sont utilisés (comme montré dans tous les exemples "
"d'utilisation au-dessus)." "d'utilisation au-dessus)."
#: library/contextlib.rst:738 #: library/contextlib.rst:739
msgid "" msgid ""
"Files are an example of effectively single use context managers, since the " "Files are an example of effectively single use context managers, since the "
"first :keyword:`with` statement will close the file, preventing any further " "first :keyword:`with` statement will close the file, preventing any further "
@ -911,7 +914,7 @@ msgstr ""
"`with` ferme le fichier, empêchant d'autres opérations d'entrée/sortie " "`with` ferme le fichier, empêchant d'autres opérations d'entrée/sortie "
"d'être exécutées sur ce fichier." "d'être exécutées sur ce fichier."
#: library/contextlib.rst:742 #: library/contextlib.rst:743
msgid "" msgid ""
"Context managers created using :func:`contextmanager` are also single use " "Context managers created using :func:`contextmanager` are also single use "
"context managers, and will complain about the underlying generator failing " "context managers, and will complain about the underlying generator failing "
@ -921,11 +924,11 @@ msgstr ""
"usage unique, et se plaindront du fait que le générateur sous-jacent ne " "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 ::" "produise plus de valeur si vous essayez de les utiliser une seconde fois ::"
#: library/contextlib.rst:770 #: library/contextlib.rst:771
msgid "Reentrant context managers" msgid "Reentrant context managers"
msgstr "Gestionnaires de contexte réentrants" msgstr "Gestionnaires de contexte réentrants"
#: library/contextlib.rst:772 #: library/contextlib.rst:773
msgid "" msgid ""
"More sophisticated context managers may be \"reentrant\". These context " "More sophisticated context managers may be \"reentrant\". These context "
"managers can not only be used in multiple :keyword:`with` statements, but " "managers can not only be used in multiple :keyword:`with` statements, but "
@ -938,7 +941,7 @@ msgstr ""
"l'intérieur* d'une instruction :keyword:`!with` qui utilise déjà ce même " "l'intérieur* d'une instruction :keyword:`!with` qui utilise déjà ce même "
"gestionnaire de contexte." "gestionnaire de contexte."
#: library/contextlib.rst:777 #: library/contextlib.rst:778
msgid "" msgid ""
":class:`threading.RLock` is an example of a reentrant context manager, as " ":class:`threading.RLock` is an example of a reentrant context manager, as "
"are :func:`suppress` and :func:`redirect_stdout`. Here's a very simple " "are :func:`suppress` and :func:`redirect_stdout`. Here's a very simple "
@ -948,7 +951,7 @@ msgstr ""
"réentrant, comme le sont aussi :func:`suppress` et :func:`redirect_stdout`. " "réentrant, comme le sont aussi :func:`suppress` et :func:`redirect_stdout`. "
"Voici un très simple exemple d'utilisation réentrante ::" "Voici un très simple exemple d'utilisation réentrante ::"
#: library/contextlib.rst:796 #: library/contextlib.rst:797
msgid "" msgid ""
"Real world examples of reentrancy are more likely to involve multiple " "Real world examples of reentrancy are more likely to involve multiple "
"functions calling each other and hence be far more complicated than this " "functions calling each other and hence be far more complicated than this "
@ -958,7 +961,7 @@ msgstr ""
"fonctions s'entre-appelant, et donc être bien plus compliqués que cet " "fonctions s'entre-appelant, et donc être bien plus compliqués que cet "
"exemple." "exemple."
#: library/contextlib.rst:800 #: library/contextlib.rst:801
msgid "" msgid ""
"Note also that being reentrant is *not* the same thing as being thread " "Note also that being reentrant is *not* the same thing as being thread "
"safe. :func:`redirect_stdout`, for example, is definitely not thread safe, " "safe. :func:`redirect_stdout`, for example, is definitely not thread safe, "
@ -970,11 +973,11 @@ msgstr ""
"puisqu'il effectue des changements globaux sur l'état du système en " "puisqu'il effectue des changements globaux sur l'état du système en "
"branchant :data:`sys.stdout` sur différents flux." "branchant :data:`sys.stdout` sur différents flux."
#: library/contextlib.rst:809 #: library/contextlib.rst:810
msgid "Reusable context managers" msgid "Reusable context managers"
msgstr "Gestionnaires de contexte réutilisables" msgstr "Gestionnaires de contexte réutilisables"
#: library/contextlib.rst:811 #: library/contextlib.rst:812
msgid "" msgid ""
"Distinct from both single use and reentrant context managers are \"reusable" "Distinct from both single use and reentrant context managers are \"reusable"
"\" context managers (or, to be completely explicit, \"reusable, but not " "\" context managers (or, to be completely explicit, \"reusable, but not "
@ -992,7 +995,7 @@ msgstr ""
"contexte référencée a déjà été utilisée dans une instruction *with* " "contexte référencée a déjà été utilisée dans une instruction *with* "
"englobante." "englobante."
#: library/contextlib.rst:818 #: library/contextlib.rst:819
msgid "" msgid ""
":class:`threading.Lock` is an example of a reusable, but not reentrant, " ":class:`threading.Lock` is an example of a reusable, but not reentrant, "
"context manager (for a reentrant lock, it is necessary to use :class:" "context manager (for a reentrant lock, it is necessary to use :class:"
@ -1002,7 +1005,7 @@ msgstr ""
"réutilisable mais pas réentrant (pour un verrou réentrant, il faut à la " "réutilisable mais pas réentrant (pour un verrou réentrant, il faut à la "
"place utiliser :class:`threading.RLock`)." "place utiliser :class:`threading.RLock`)."
#: library/contextlib.rst:822 #: library/contextlib.rst:823
msgid "" msgid ""
"Another example of a reusable, but not reentrant, context manager is :class:" "Another example of a reusable, but not reentrant, context manager is :class:"
"`ExitStack`, as it invokes *all* currently registered callbacks when leaving " "`ExitStack`, as it invokes *all* currently registered callbacks when leaving "
@ -1013,7 +1016,7 @@ msgstr ""
"actuellement enregistrées en quittant l'instruction *with*, sans regarder où " "actuellement enregistrées en quittant l'instruction *with*, sans regarder où "
"ces fonctions ont été ajoutées ::" "ces fonctions ont été ajoutées ::"
#: library/contextlib.rst:853 #: library/contextlib.rst:854
msgid "" msgid ""
"As the output from the example shows, reusing a single stack object across " "As the output from the example shows, reusing a single stack object across "
"multiple with statements works correctly, but attempting to nest them will " "multiple with statements works correctly, but attempting to nest them will "
@ -1025,7 +1028,7 @@ msgstr ""
"imbriquer fait que la pile est vidée à la fin du *with* le plus imbriqué, ce " "imbriquer fait que la pile est vidée à la fin du *with* le plus imbriqué, ce "
"qui n'est probablement pas le comportement voulu." "qui n'est probablement pas le comportement voulu."
#: library/contextlib.rst:858 #: library/contextlib.rst:859
msgid "" msgid ""
"Using separate :class:`ExitStack` instances instead of reusing a single " "Using separate :class:`ExitStack` instances instead of reusing a single "
"instance avoids that problem::" "instance avoids that problem::"

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-05-19 22:36+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2019-09-04 11:42+0200\n" "PO-Revision-Date: 2019-09-04 11:42+0200\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -18,13 +18,13 @@ msgstr ""
msgid "Using :mod:`!importlib.metadata`" msgid "Using :mod:`!importlib.metadata`"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:10 #: library/importlib.metadata.rst:13
msgid "" msgid ""
"This functionality is provisional and may deviate from the usual version " "This functionality is provisional and may deviate from the usual version "
"semantics of the standard library." "semantics of the standard library."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:13 #: library/importlib.metadata.rst:16
msgid "" msgid ""
"``importlib.metadata`` is a library that provides for access to installed " "``importlib.metadata`` is a library that provides for access to installed "
"package metadata. Built in part on Python's import system, this library " "package metadata. Built in part on Python's import system, this library "
@ -35,7 +35,7 @@ msgid ""
"efficient ``pkg_resources`` package." "efficient ``pkg_resources`` package."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:22 #: library/importlib.metadata.rst:25
msgid "" msgid ""
"By \"installed package\" we generally mean a third-party package installed " "By \"installed package\" we generally mean a third-party package installed "
"into Python's ``site-packages`` directory via tools such as `pip <https://" "into Python's ``site-packages`` directory via tools such as `pip <https://"
@ -46,52 +46,52 @@ msgid ""
"extension mechanism, the metadata can live almost anywhere." "extension mechanism, the metadata can live almost anywhere."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:33 #: library/importlib.metadata.rst:36
msgid "Overview" msgid "Overview"
msgstr "Aperçu" msgstr "Aperçu"
#: library/importlib.metadata.rst:35 #: library/importlib.metadata.rst:38
msgid "" msgid ""
"Let's say you wanted to get the version string for a package you've " "Let's say you wanted to get the version string for a package you've "
"installed using ``pip``. We start by creating a virtual environment and " "installed using ``pip``. We start by creating a virtual environment and "
"installing something into it:" "installing something into it:"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:45 #: library/importlib.metadata.rst:48
msgid "You can get the version string for ``wheel`` by running the following:" msgid "You can get the version string for ``wheel`` by running the following:"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:54 #: library/importlib.metadata.rst:57
msgid "" msgid ""
"You can also get the set of entry points keyed by group, such as " "You can also get the set of entry points keyed by group, such as "
"``console_scripts``, ``distutils.commands`` and others. Each group contains " "``console_scripts``, ``distutils.commands`` and others. Each group contains "
"a sequence of :ref:`EntryPoint <entry-points>` objects." "a sequence of :ref:`EntryPoint <entry-points>` objects."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:58 #: library/importlib.metadata.rst:61
msgid "You can get the :ref:`metadata for a distribution <metadata>`::" msgid "You can get the :ref:`metadata for a distribution <metadata>`::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:63 #: library/importlib.metadata.rst:66
msgid "" msgid ""
"You can also get a :ref:`distribution's version number <version>`, list its :" "You can also get a :ref:`distribution's version number <version>`, list its :"
"ref:`constituent files <files>`, and get a list of the distribution's :ref:" "ref:`constituent files <files>`, and get a list of the distribution's :ref:"
"`requirements`." "`requirements`."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:69 #: library/importlib.metadata.rst:72
msgid "Functional API" msgid "Functional API"
msgstr "API par fonction" msgstr "API par fonction"
#: library/importlib.metadata.rst:71 #: library/importlib.metadata.rst:74
msgid "This package provides the following functionality via its public API." msgid "This package provides the following functionality via its public API."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:77 #: library/importlib.metadata.rst:80
msgid "Entry points" msgid "Entry points"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:79 #: library/importlib.metadata.rst:82
msgid "" msgid ""
"The ``entry_points()`` function returns a dictionary of all entry points, " "The ``entry_points()`` function returns a dictionary of all entry points, "
"keyed by group. Entry points are represented by ``EntryPoint`` instances; " "keyed by group. Entry points are represented by ``EntryPoint`` instances; "
@ -101,7 +101,7 @@ msgid ""
"value`` attribute::" "value`` attribute::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:103 #: library/importlib.metadata.rst:106
msgid "" msgid ""
"The ``group`` and ``name`` are arbitrary values defined by the package " "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 " "author and usually a client will wish to resolve all entry points for a "
@ -110,37 +110,37 @@ msgid ""
"for more information on entry points, their definition, and usage." "for more information on entry points, their definition, and usage."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:113 #: library/importlib.metadata.rst:116
msgid "Distribution metadata" msgid "Distribution metadata"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:115 #: library/importlib.metadata.rst:118
msgid "" msgid ""
"Every distribution includes some metadata, which you can extract using the " "Every distribution includes some metadata, which you can extract using the "
"``metadata()`` function::" "``metadata()`` function::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:120 #: library/importlib.metadata.rst:123
msgid "" msgid ""
"The keys of the returned data structure [#f1]_ name the metadata keywords, " "The keys of the returned data structure [#f1]_ name the metadata keywords, "
"and their values are returned unparsed from the distribution metadata::" "and their values are returned unparsed from the distribution metadata::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:130 #: library/importlib.metadata.rst:133
msgid "Distribution versions" msgid "Distribution versions"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:132 #: library/importlib.metadata.rst:135
msgid "" msgid ""
"The ``version()`` function is the quickest way to get a distribution's " "The ``version()`` function is the quickest way to get a distribution's "
"version number, as a string::" "version number, as a string::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:142 #: library/importlib.metadata.rst:145
msgid "Distribution files" msgid "Distribution files"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:144 #: library/importlib.metadata.rst:147
msgid "" msgid ""
"You can also get the full set of files contained within a distribution. The " "You can also get the full set of files contained within a distribution. The "
"``files()`` function takes a distribution package name and returns all of " "``files()`` function takes a distribution package name and returns all of "
@ -150,11 +150,11 @@ msgid ""
"For example::" "For example::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:160 #: library/importlib.metadata.rst:163
msgid "Once you have the file, you can also read its contents::" msgid "Once you have the file, you can also read its contents::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:171 #: library/importlib.metadata.rst:174
msgid "" msgid ""
"In the case where the metadata file listing files (RECORD or SOURCES.txt) is " "In the case where the metadata file listing files (RECORD or SOURCES.txt) is "
"missing, ``files()`` will return ``None``. The caller may wish to wrap calls " "missing, ``files()`` will return ``None``. The caller may wish to wrap calls "
@ -164,22 +164,22 @@ msgid ""
"present." "present."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:182 #: library/importlib.metadata.rst:185
msgid "Distribution requirements" msgid "Distribution requirements"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:184 #: library/importlib.metadata.rst:187
msgid "" msgid ""
"To get the full set of requirements for a distribution, use the " "To get the full set of requirements for a distribution, use the "
"``requires()`` function::" "``requires()`` function::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:192 #: library/importlib.metadata.rst:195
#, fuzzy #, fuzzy
msgid "Distributions" msgid "Distributions"
msgstr "Distribution" msgstr "Distribution"
#: library/importlib.metadata.rst:194 #: library/importlib.metadata.rst:197
msgid "" msgid ""
"While the above API is the most common and convenient usage, you can get all " "While the above API is the most common and convenient usage, you can get all "
"of that information from the ``Distribution`` class. A ``Distribution`` is " "of that information from the ``Distribution`` class. A ``Distribution`` is "
@ -187,29 +187,29 @@ msgid ""
"can get the ``Distribution`` instance::" "can get the ``Distribution`` instance::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:202 #: library/importlib.metadata.rst:205
msgid "" msgid ""
"Thus, an alternative way to get the version number is through the " "Thus, an alternative way to get the version number is through the "
"``Distribution`` instance::" "``Distribution`` instance::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:208 #: library/importlib.metadata.rst:211
msgid "" msgid ""
"There are all kinds of additional metadata available on the ``Distribution`` " "There are all kinds of additional metadata available on the ``Distribution`` "
"instance::" "instance::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:216 #: library/importlib.metadata.rst:219
msgid "" msgid ""
"The full set of available metadata is not described here. See :pep:`566` " "The full set of available metadata is not described here. See :pep:`566` "
"for additional details." "for additional details."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:221 #: library/importlib.metadata.rst:224
msgid "Extending the search algorithm" msgid "Extending the search algorithm"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:223 #: library/importlib.metadata.rst:226
msgid "" msgid ""
"Because package metadata is not available through :data:`sys.path` searches, " "Because package metadata is not available through :data:`sys.path` searches, "
"or package loaders directly, the metadata for a package is found through " "or package loaders directly, the metadata for a package is found through "
@ -218,14 +218,14 @@ msgid ""
"path finders <meta path finder>` on :data:`sys.meta_path`." "path finders <meta path finder>` on :data:`sys.meta_path`."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:229 #: library/importlib.metadata.rst:232
msgid "" msgid ""
"The default ``PathFinder`` for Python includes a hook that calls into " "The default ``PathFinder`` for Python includes a hook that calls into "
"``importlib.metadata.MetadataPathFinder`` for finding distributions loaded " "``importlib.metadata.MetadataPathFinder`` for finding distributions loaded "
"from typical file-system-based paths." "from typical file-system-based paths."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:233 #: library/importlib.metadata.rst:236
msgid "" msgid ""
"The abstract class :py:class:`importlib.abc.MetaPathFinder` defines the " "The abstract class :py:class:`importlib.abc.MetaPathFinder` defines the "
"interface expected of finders by Python's import system. ``importlib." "interface expected of finders by Python's import system. ``importlib."
@ -235,14 +235,14 @@ msgid ""
"base class, which defines this abstract method::" "base class, which defines this abstract method::"
msgstr "" msgstr ""
#: library/importlib.metadata.rst:247 #: library/importlib.metadata.rst:250
msgid "" msgid ""
"The ``DistributionFinder.Context`` object provides ``.path`` and ``.name`` " "The ``DistributionFinder.Context`` object provides ``.path`` and ``.name`` "
"properties indicating the path to search and name to match and may supply " "properties indicating the path to search and name to match and may supply "
"other relevant context." "other relevant context."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:251 #: library/importlib.metadata.rst:254
msgid "" msgid ""
"What this means in practice is that to support finding distribution package " "What this means in practice is that to support finding distribution package "
"metadata in locations other than the file system, subclass ``Distribution`` " "metadata in locations other than the file system, subclass ``Distribution`` "
@ -251,11 +251,11 @@ msgid ""
"method." "method."
msgstr "" msgstr ""
#: library/importlib.metadata.rst:264 #: library/importlib.metadata.rst:267
msgid "Footnotes" msgid "Footnotes"
msgstr "Notes" msgstr "Notes"
#: library/importlib.metadata.rst:265 #: library/importlib.metadata.rst:268
msgid "" msgid ""
"Technically, the returned distribution metadata object is an :class:`email." "Technically, the returned distribution metadata object is an :class:`email."
"message.EmailMessage` instance, but this is an implementation detail, and " "message.EmailMessage` instance, but this is an implementation detail, and "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-05-19 22:36+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2018-07-04 11:26+0200\n" "PO-Revision-Date: 2018-07-04 11:26+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n" "Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -654,7 +654,7 @@ msgid "The import machinery now takes care of this automatically."
msgstr "" msgstr ""
#: library/importlib.rst:484 #: library/importlib.rst:484
msgid "*Superseded by TraversableReader*" msgid "*Superseded by TraversableResources*"
msgstr "" msgstr ""
#: library/importlib.rst:486 #: library/importlib.rst:486

View File

@ -5,14 +5,14 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-12-17 16:05+0100\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2021-05-28 17:46+0200\n" "PO-Revision-Date: 2021-05-28 17:46+0200\n"
"Last-Translator: Stephan Michaud <michauds90@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Last-Translator: Stephan Michaud <michauds90@gmail.com>\n"
"X-Generator: Poedit 2.3\n" "X-Generator: Poedit 2.3\n"
#: library/platform.rst:2 #: library/platform.rst:2

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-01 16:00+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2021-03-20 18:04+0100\n" "PO-Revision-Date: 2021-03-20 18:04+0100\n"
"Last-Translator: Loc Cosnier <loc.cosnier@pm.me>\n" "Last-Translator: Loc Cosnier <loc.cosnier@pm.me>\n"
"Language-Team: French <traductions@lists.afpy.org>\n" "Language-Team: French <traductions@lists.afpy.org>\n"
@ -25,12 +25,13 @@ msgid "**Source code:** :source:`Lib/timeit.py`"
msgstr "**Code source :** :source:`Lib/timeit.py`" msgstr "**Code source :** :source:`Lib/timeit.py`"
#: library/timeit.rst:15 #: library/timeit.rst:15
#, fuzzy
msgid "" msgid ""
"This module provides a simple way to time small bits of Python code. It has " "This module provides a simple way to time small bits of Python code. It has "
"both a :ref:`timeit-command-line-interface` as well as a :ref:`callable " "both a :ref:`timeit-command-line-interface` as well as a :ref:`callable "
"<python-interface>` one. It avoids a number of common traps for measuring " "<python-interface>` one. It avoids a number of common traps for measuring "
"execution times. See also Tim Peters' introduction to the \"Algorithms\" " "execution times. See also Tim Peters' introduction to the \"Algorithms\" "
"chapter in the *Python Cookbook*, published by O'Reilly." "chapter in the second edition of *Python Cookbook*, published by O'Reilly."
msgstr "" msgstr ""
"Ce module fournit une façon simple de mesurer le temps d'exécution de " "Ce module fournit une façon simple de mesurer le temps d'exécution de "
"fragments de code Python. Il expose une :ref:`timeit-command-line-interface` " "fragments de code Python. Il expose une :ref:`timeit-command-line-interface` "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-05-19 22:36+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2018-09-28 10:04+0200\n" "PO-Revision-Date: 2018-09-28 10:04+0200\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -327,7 +327,7 @@ msgstr ""
#: library/types.rst:267 #: library/types.rst:267
msgid "" msgid ""
"A record of the the module's import-system-related state. Expected to be an " "A record of the module's import-system-related state. Expected to be an "
"instance of :class:`importlib.machinery.ModuleSpec`." "instance of :class:`importlib.machinery.ModuleSpec`."
msgstr "" msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-19 16:59+0100\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2019-04-22 12:07+0200\n" "PO-Revision-Date: 2019-04-22 12:07+0200\n"
"Last-Translator: Bousquié Pierre <pierre.bousquie@gmail.com>\n" "Last-Translator: Bousquié Pierre <pierre.bousquie@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -446,8 +446,9 @@ msgstr ""
"d'une manière particulière ::" "d'une manière particulière ::"
#: library/unittest.mock.rst:330 #: library/unittest.mock.rst:330
#, fuzzy
msgid "" msgid ""
"Assert that the mock was called exactly once and that that call was with the " "Assert that the mock was called exactly once and that call was with the "
"specified arguments." "specified arguments."
msgstr "" msgstr ""
"Asserter que le simulacre a été appelé exactement une fois et que cet appel " "Asserter que le simulacre a été appelé exactement une fois et que cet appel "

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-05-19 22:36+0200\n" "POT-Creation-Date: 2021-05-29 16:33+0200\n"
"PO-Revision-Date: 2020-08-06 00:39+0200\n" "PO-Revision-Date: 2020-08-06 00:39+0200\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -2319,7 +2319,7 @@ msgid ""
"Python 3.10. (Contributed by Ken Jin in :issue:`42195`.)" "Python 3.10. (Contributed by Ken Jin in :issue:`42195`.)"
msgstr "" msgstr ""
#: whatsnew/3.9.rst:1543 #: whatsnew/3.9.rst:1568
msgid "urllib.parse" msgid "urllib.parse"
msgstr "urllib.parse" msgstr "urllib.parse"
@ -2348,6 +2348,20 @@ msgid ""
"instance to ``True``. (See :issue:`43285`)" "instance to ``True``. (See :issue:`43285`)"
msgstr "" 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 "" #~ msgid ""
#~ "This article explains the new features in Python 3.9, compared to 3.8." #~ "This article explains the new features in Python 3.9, compared to 3.8."
#~ msgstr "" #~ msgstr ""