From ec4c42b5348fe1c171c131e782f46b0b58eeafed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20S=C3=A1nchez=20Provencio?= Date: Sat, 16 May 2020 15:29:39 +0200 Subject: [PATCH 1/8] subprocess traducido --- dict | 17 +- library/subprocess.po | 752 +++++++++++++++++++++++++++++++++++++----- 2 files changed, 693 insertions(+), 76 deletions(-) diff --git a/dict b/dict index b2e60de3a4..c576b0afc9 100644 --- a/dict +++ b/dict @@ -365,4 +365,19 @@ Ahlstrom Just Rossum zipimporter -zip \ No newline at end of file +zip +redirección +heredables +escribible +redirección +subproceso +subprocesos +subsistema +reintentar +Adiviértase +subintérprete +reintenta +metacaracteres +subintérpretes +heredable +Win diff --git a/library/subprocess.po b/library/subprocess.po index 589f3c336f..43183f2a3f 100644 --- a/library/subprocess.po +++ b/library/subprocess.po @@ -5,28 +5,31 @@ # https://mail.python.org/mailman3/lists/docs-es.python.org/ # Check https://github.com/PyCampES/python-docs-es/blob/3.8/TRANSLATORS to # get the list of volunteers +# Marcos Sánchez Provencio , 2020. # -#, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.8\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-05-05 12:54+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: python-doc-es\n" +"PO-Revision-Date: 2020-05-18 19:50+0200\n" +"Last-Translator: Marcos Sánchez Provencio \n" +"Language-Team: Spanish; Castilian \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" "Generated-By: Babel 2.8.0\n" +"Language: es\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 2.3\n" #: ../Doc/library/subprocess.rst:2 msgid ":mod:`subprocess` --- Subprocess management" -msgstr "" +msgstr ":mod:`subprocess` --- Gestión de subprocesos" #: ../Doc/library/subprocess.rst:10 msgid "**Source code:** :source:`Lib/subprocess.py`" -msgstr "" +msgstr "**Código fuente:** :source:`Lib/subprocess.py`" #: ../Doc/library/subprocess.rst:14 msgid "" @@ -34,20 +37,25 @@ msgid "" "their input/output/error pipes, and obtain their return codes. This module " "intends to replace several older modules and functions::" msgstr "" +"El módulo :mod:`subprocess` permite lanzar nuevos procesos, conectarse a sus " +"pipes de entrada/salida/error y obtener sus códigos de resultado. Este " +"módulo está destinado a reemplazar módulos previamente existentes::" #: ../Doc/library/subprocess.rst:21 msgid "" "Information about how the :mod:`subprocess` module can be used to replace " "these modules and functions can be found in the following sections." msgstr "" +"Se puede obtener información sobre cómo utilizar el módulo :mod:`subprocess` " +"para reemplazar estos módulos y funciones en las siguientes secciones." #: ../Doc/library/subprocess.rst:26 msgid ":pep:`324` -- PEP proposing the subprocess module" -msgstr "" +msgstr ":pep:`324` -- PEP de proposición del módulo `subprocess`" #: ../Doc/library/subprocess.rst:30 msgid "Using the :mod:`subprocess` Module" -msgstr "" +msgstr "Uso del módulo :mod:`subprocess`" #: ../Doc/library/subprocess.rst:32 msgid "" @@ -55,18 +63,26 @@ msgid "" "function for all use cases it can handle. For more advanced use cases, the " "underlying :class:`Popen` interface can be used directly." msgstr "" +"La opción recomendada para invocar subprocesos es utilizar la función :func:" +"`run` para todos los casos al alcance de ésta. Para usos más avanzados, se " +"puede utilizar la interfaz de más bajo nivel :class:`Popen`." #: ../Doc/library/subprocess.rst:36 msgid "" "The :func:`run` function was added in Python 3.5; if you need to retain " "compatibility with older versions, see the :ref:`call-function-trio` section." msgstr "" +"La función :func:`run` se añadió en Python 3.5; si necesita mantener la " +"compatibilidad con versiones anteriores, consulte la sección :ref:`call-" +"function-trio`." #: ../Doc/library/subprocess.rst:45 msgid "" "Run the command described by *args*. Wait for command to complete, then " "return a :class:`CompletedProcess` instance." msgstr "" +"Ejecutar la orden descrita por *args*. Esperar a que termine y devolver una " +"instancia de :class:`CompletedProcess`." #: ../Doc/library/subprocess.rst:48 msgid "" @@ -77,6 +93,13 @@ msgid "" "this function are passed through to that interface. (*timeout*, *input*, " "*check*, and *capture_output* are not.)" msgstr "" +"Solamente se muestran los argumentos más comunes; se describen " +"posteriormente en :ref:`frequently-used-arguments` (de ahí el uso de la " +"notación por clave en la signatura abreviada). La signatura completa de la " +"función es a grandes rasgos la misma que la del constructor de :class:" +"`Popen`; la mayoría de los argumentos de esta función se pasan a esa " +"interfaz (no es el caso de *timeout*, *input*, *check* ni " +"*capture_output*)." #: ../Doc/library/subprocess.rst:55 msgid "" @@ -87,6 +110,12 @@ msgid "" "capture and combine both streams into one, use ``stdout=PIPE`` and " "``stderr=STDOUT`` instead of *capture_output*." msgstr "" +"Si *capture_output* es verdadero, se capturarán stdout y stderr. En tal " +"caso, el objeto :class:`Popen` interno se crea automáticamente con " +"``stdout=PIPE`` y ``stderr=PIPE``. No se pueden proporcionar los argumentos " +"*stdout* y *stderr* a la vez que *capture_output*. Si se desea capturar y " +"combinar los dos flujos, se ha de usar ``stdout=PIPE`` y ``stderr=STDOUT`` " +"en lugar de *capture_output*." #: ../Doc/library/subprocess.rst:62 msgid "" @@ -95,6 +124,9 @@ msgid "" "`TimeoutExpired` exception will be re-raised after the child process has " "terminated." msgstr "" +"El argumento *timeout* se pasa a :meth:`Popen.communicate`. Si vence el " +"plazo de ejecución, se matará el proceso hijo y se le esperará. Se relanzará " +"la excepción :exc:`TimeoutExpired` cuando finalice el proceso hijo." #: ../Doc/library/subprocess.rst:67 msgid "" @@ -104,6 +136,12 @@ msgid "" "internal :class:`Popen` object is automatically created with ``stdin=PIPE``, " "and the *stdin* argument may not be used as well." msgstr "" +"Se pasará el argumento *input* a :meth:`Popen.communicate` y de ahí, al " +"stdin del subproceso. Si se usa, debe ser una secuencia de bytes o una " +"cadena de texto si se especifican *encoding* o *errors* o *text* es " +"verdadero. Cuando se usa, el objeto :class:`Popen` interno se crea " +"automáticamente con ``stdin=PIPE`` y no se puede usar el argumento *stdin* a " +"la vez." #: ../Doc/library/subprocess.rst:73 msgid "" @@ -112,6 +150,10 @@ msgid "" "hold the arguments, the exit code, and stdout and stderr if they were " "captured." msgstr "" +"Si *check* is verdadero y el proceso devuelve un resultado distinto de cero, " +"se lanzará una excepción :exc:`CalledProcessError`. Los atributos de dicha " +"excepción contendrán los argumentos, el código devuelto y tanto stdout como " +"stderr si se capturaron." #: ../Doc/library/subprocess.rst:78 msgid "" @@ -121,6 +163,12 @@ msgid "" "*universal_newlines* argument is equivalent to *text* and is provided for " "backwards compatibility. By default, file objects are opened in binary mode." msgstr "" +"Si se especifican *encoding* o *errors* o *text* es verdadero, se abrirán " +"los objetos fichero para stdin, stdout y stderr en modo texto, con los " +"*encoding* y *errors* especificados o los valores predeterminados de :class:" +"`io.TextIOWrapper`. El argumento *universal_newlines* equivale a *text* y se " +"admite por compatibilidad hacia atrás. Los objetos fichero se abren en modo " +"binario por omisión." #: ../Doc/library/subprocess.rst:84 msgid "" @@ -129,42 +177,55 @@ msgid "" "behavior of inheriting the current process' environment. It is passed " "directly to :class:`Popen`." msgstr "" +"Si *env* no es ``None``, debe ser un mapeo que defina las variables de " +"entorno para el nuevo proceso; se utilizarán éstas en lugar del " +"comportamiento predeterminado de heredar el entorno del proceso actual. Se " +"le pasa directamente a :class:`Popen`." #: ../Doc/library/subprocess.rst:89 msgid "Examples::" -msgstr "" +msgstr "Ejemplos::" #: ../Doc/library/subprocess.rst:107 msgid "Added *encoding* and *errors* parameters" -msgstr "" +msgstr "Se añadieron los parámetros *encoding* y *errors*" #: ../Doc/library/subprocess.rst:111 msgid "" "Added the *text* parameter, as a more understandable alias of " "*universal_newlines*. Added the *capture_output* parameter." msgstr "" +"Se añadió el parámetro *text* como alias más comprensible de " +"*universal_newlines*. Se añadió el parámetro *capture_output*." #: ../Doc/library/subprocess.rst:116 msgid "" "The return value from :func:`run`, representing a process that has finished." msgstr "" +"El valor devuelto por :func:`run`, que representa un proceso ya terminado." #: ../Doc/library/subprocess.rst:120 msgid "" "The arguments used to launch the process. This may be a list or a string." msgstr "" +"Los argumentos utilizados para lanzar el proceso. Pueden ser una lista o una " +"cadena." #: ../Doc/library/subprocess.rst:124 msgid "" "Exit status of the child process. Typically, an exit status of 0 indicates " "that it ran successfully." msgstr "" +"Estado de salida del proceso hijo. Típicamente, un estado de salida 0 indica " +"que la ejecución tuvo éxito." #: ../Doc/library/subprocess.rst:127 ../Doc/library/subprocess.rst:828 msgid "" "A negative value ``-N`` indicates that the child was terminated by signal " "``N`` (POSIX only)." msgstr "" +"Un valor negativo ``-N`` indica que el hijo fue forzado a terminar con la " +"señal ``N`` (solamente POSIX)." #: ../Doc/library/subprocess.rst:132 msgid "" @@ -172,12 +233,17 @@ msgid "" "func:`run` was called with an encoding, errors, or text=True. ``None`` if " "stdout was not captured." msgstr "" +"La salida estándar capturada del proceso hijo. Una secuencia de bytes, o una " +"cadena si se llamó a :func:`run` con *encoding*, *errors*, o *text* establecidos a ``True``. ``None`` " +"si no se capturó el error estándar." #: ../Doc/library/subprocess.rst:136 msgid "" "If you ran the process with ``stderr=subprocess.STDOUT``, stdout and stderr " "will be combined in this attribute, and :attr:`stderr` will be ``None``." msgstr "" +"Si se ejecutó el proceso con ``stderr=subprocess.STDOUT``, stdout y stderr " +"se combinarán en este atributo, y :attr:`stderr` será ``None``." #: ../Doc/library/subprocess.rst:142 msgid "" @@ -185,10 +251,13 @@ msgid "" "func:`run` was called with an encoding, errors, or text=True. ``None`` if " "stderr was not captured." msgstr "" +"El error estándar capturado del proceso hijo. Una secuencia de bytes, o una " +"cadena si se llamó a :func:`run` con *encoding*, *errors*, o *text* " +"establecidos a ``True``. ``None`` si no se capturó el error estándar." #: ../Doc/library/subprocess.rst:148 msgid "If :attr:`returncode` is non-zero, raise a :exc:`CalledProcessError`." -msgstr "" +msgstr "Si :attr:`returncode` no es cero, lanzar un :exc:`CalledProcessError`." #: ../Doc/library/subprocess.rst:154 msgid "" @@ -196,6 +265,9 @@ msgid "" "to :class:`Popen` and indicates that the special file :data:`os.devnull` " "will be used." msgstr "" +"Valor especial que se puede usar como argumento *stdin*, *stdout* o *stderr* " +"de :class:`Popen` y que indica que se usará el fichero especial :data:`os." +"devnull`." #: ../Doc/library/subprocess.rst:163 msgid "" @@ -203,6 +275,9 @@ msgid "" "to :class:`Popen` and indicates that a pipe to the standard stream should be " "opened. Most useful with :meth:`Popen.communicate`." msgstr "" +"Valor especial que se puede usar como argumento *stdin*, *stdout* o *stderr* " +"de :class:`Popen` y que indica que se abrirá un pipe al flujo indicado. Es " +"útil para usarlo con :meth:`Popen.communicate`." #: ../Doc/library/subprocess.rst:170 msgid "" @@ -210,60 +285,73 @@ msgid "" "and indicates that standard error should go into the same handle as standard " "output." msgstr "" +"Valor especial que se puede usar de argumento *stderr* a :class:`Popen` y " +"que indica que stderr debería ir al mismo gestor que stdout." #: ../Doc/library/subprocess.rst:177 msgid "Base class for all other exceptions from this module." -msgstr "" +msgstr "Clase base para el resto de excepciones de este módulo." #: ../Doc/library/subprocess.rst:184 msgid "" "Subclass of :exc:`SubprocessError`, raised when a timeout expires while " "waiting for a child process." msgstr "" +"Subclase de :exc:`SubprocessError`, se lanza cuando expira un plazo de " +"ejecución esperando a un proceso hijo." #: ../Doc/library/subprocess.rst:189 ../Doc/library/subprocess.rst:226 msgid "Command that was used to spawn the child process." -msgstr "" +msgstr "Orden que se utilizó para lanzar el proceso hijo." #: ../Doc/library/subprocess.rst:193 msgid "Timeout in seconds." -msgstr "" +msgstr "Plazo de ejecución en segundos." #: ../Doc/library/subprocess.rst:197 ../Doc/library/subprocess.rst:230 msgid "" "Output of the child process if it was captured by :func:`run` or :func:" "`check_output`. Otherwise, ``None``." msgstr "" +"Salida del proceso hijo si fue capturada por :func:`run` o :func:" +"`check_output`. De otro modo, ``None``." #: ../Doc/library/subprocess.rst:202 ../Doc/library/subprocess.rst:235 msgid "Alias for output, for symmetry with :attr:`stderr`." -msgstr "" +msgstr "Alias de *output*, por simetría con :attr:`stderr`." #: ../Doc/library/subprocess.rst:206 ../Doc/library/subprocess.rst:239 msgid "" "Stderr output of the child process if it was captured by :func:`run`. " "Otherwise, ``None``." msgstr "" +"Salida de *stderr* del proceso hijo si fue capturada por :func:`run`. De otro " +"modo, ``None``." #: ../Doc/library/subprocess.rst:211 ../Doc/library/subprocess.rst:242 msgid "*stdout* and *stderr* attributes added" -msgstr "" +msgstr "Se añadieron los atributos *stdout* y *stderr*" #: ../Doc/library/subprocess.rst:216 msgid "" "Subclass of :exc:`SubprocessError`, raised when a process run by :func:" "`check_call` or :func:`check_output` returns a non-zero exit status." msgstr "" +"Subclase de :exc:`SubprocessError`; se lanza cuando un proceso ejecutado " +"con :func:`check_call` o :func:`check_output` devuelve un estado distinto de " +"cero." #: ../Doc/library/subprocess.rst:221 msgid "" "Exit status of the child process. If the process exited due to a signal, " "this will be the negative signal number." msgstr "" +"Estado de salida del proceso hijo. Si el proceso terminó por causa de una " +"señal, el estado será el número de la señal en negativo." #: ../Doc/library/subprocess.rst:249 msgid "Frequently Used Arguments" -msgstr "" +msgstr "Argumentos frecuentes" #: ../Doc/library/subprocess.rst:251 msgid "" @@ -272,6 +360,10 @@ msgid "" "most typical use cases, many of these arguments can be safely left at their " "default values. The arguments that are most commonly needed are:" msgstr "" +"Para permitir una gran variedad de usos, el constructor de :class:`Popen` (y " +"las funciones asociadas) aceptan un gran número de argumentos opcionales. " +"Para los usos más habituales, se puede dejar el valor por omisión de los " +"valores. Los argumentos más frecuentemente especificados son:" #: ../Doc/library/subprocess.rst:256 msgid "" @@ -282,6 +374,14 @@ msgid "" "either *shell* must be :const:`True` (see below) or else the string must " "simply name the program to be executed without specifying any arguments." msgstr "" +"*args* se requiere en todas las llamadas; debe ser una cadena o una " +"secuencia de argumentos al programa. En general, es mejor proporcionar una " +"secuencia de argumentos porque permite que el módulo se ocupe de las " +"secuencias de escape y los entrecomillados de los argumentos (por ejemplo, " +"para permitir espacios en los nombres de fichero). Si se pasa una cadena " +"simple, se ha de especificar *shell* como :const:`True` (ver más adelante) o " +"la cadena debe ser el nombre del programa a ejecutar sin especificar ningún " +"argumento." #: ../Doc/library/subprocess.rst:264 msgid "" @@ -296,6 +396,16 @@ msgid "" "data:`STDOUT`, which indicates that the stderr data from the child process " "should be captured into the same file handle as for *stdout*." msgstr "" +"*stdin*, *stdout* y *stderr* especifican los flujos de la entrada estándar, " +"la salida estándar y el error estándar, respectivamente. Los valores válidos " +"son :data:`PIPE`, :data:`DEVNULL`, un descriptor de fichero existente (un " +"entero positivo), un objeto fichero existente o ``None``. :data:`PIPE` " +"indica que se ha de crear un nuevo pipe hacia el hijo. :data:`DEVNULL` " +"indica que se usará el fichero especial :data:`os.devnull`. Con el valor por " +"omisión ``None``, no se realiza ninguna redirección y el hijo heredará los " +"gestores de flujos del padre.. Además, *stderr* puede ser :data:`STDOUT`, " +"que indica que los datos de stderr del proceso hijo serán capturados por el " +"mismo gestor de flujo que *stdout*." #: ../Doc/library/subprocess.rst:278 msgid "" @@ -304,6 +414,11 @@ msgid "" "*stderr* will be opened in text mode using the *encoding* and *errors* " "specified in the call or the defaults for :class:`io.TextIOWrapper`." msgstr "" +"Si se especifican *encoding* o *errors*, o *text* (o su alias " +"*universal_newlines*) es verdadero, se abrirán en modo texto los objetos " +"fichero *stdin*, *stdout* y *stderr* usando los *encoding* y *errors* " +"especificados en la llamada o los valores predeterminados de :class:`io." +"TextIOWrapper`." #: ../Doc/library/subprocess.rst:284 msgid "" @@ -313,20 +428,29 @@ msgid "" "information see the documentation of the :class:`io.TextIOWrapper` class " "when the *newline* argument to its constructor is ``None``." msgstr "" +"Para *stdin*, los saltos del línea ``'\\n'`` de la entrada serán convertidos " +"al separador de línea predeterminado :data:`os.linesep`. Para *stdout* y " +"*stderr*, todos los saltos de línea de la salida serán convertidos a " +"``'\\n'``. Hay más información en la documentación de la clase :class:`io." +"TextIOWrapper` para el caso en que el argumento *newline* de su constructor " +"es ``None``." #: ../Doc/library/subprocess.rst:290 msgid "" "If text mode is not used, *stdin*, *stdout* and *stderr* will be opened as " "binary streams. No encoding or line ending conversion is performed." msgstr "" +"Si no se usa el modo texto, *stdin*, *stdout* y *stderr* se abrirán como " +"flujos binarios. No se realizará ninguna codificación ni conversión de salto " +"de línea." #: ../Doc/library/subprocess.rst:293 msgid "Added *encoding* and *errors* parameters." -msgstr "" +msgstr "Se añadieron los parámetros *encoding* y *errors*." #: ../Doc/library/subprocess.rst:296 msgid "Added the *text* parameter as an alias for *universal_newlines*." -msgstr "" +msgstr "Se añadió el parámetro *text* como alias de *universal_newlines*." #: ../Doc/library/subprocess.rst:301 msgid "" @@ -334,6 +458,9 @@ msgid "" "stdout` and :attr:`Popen.stderr` are not updated by the :meth:`Popen." "communicate` method." msgstr "" +"El atributo `newlines` de los objetos fichero :attr:`Popen.stdin`, :attr:" +"`Popen.stdout` y :attr:`Popen.stderr` no es actualizado por el método :meth:" +"`Popen.communicate`." #: ../Doc/library/subprocess.rst:305 msgid "" @@ -347,6 +474,16 @@ msgid "" "mod:`fnmatch`, :func:`os.walk`, :func:`os.path.expandvars`, :func:`os.path." "expanduser`, and :mod:`shutil`)." msgstr "" +"Si *shell* es ``True``, la orden especificada se ejecutará pasando por la " +"shell. Esto tiene utilidad si se usa Python principalmente por el flujo de " +"control mejorado sobre la mayoría de las shell de sistema, pero se desea " +"también un acceso práctico a otras características de la shell, como pipes, " +"nombres de fichero con comodines, expansión de variables de entorno o " +"expansión de ``~`` al directorio home del usuario. Sin embargo, no se debe " +"olvidar que el propio Python tiene implementaciones de muchas " +"características tipo shell (en particular, :mod:`glob`, :mod:`fnmatch`, :" +"func:`os.walk`, :func:`os.path.expandvars`, :func:`os.path.expanduser`, y :" +"mod:`shutil`)." #: ../Doc/library/subprocess.rst:315 msgid "" @@ -355,21 +492,29 @@ msgid "" "of ``locale.getpreferredencoding()``. See the :class:`io.TextIOWrapper` " "class for more information on this change." msgstr "" +"Cuando *universal_newlines* es ``True``, la clase usa la codificación :func:" +"`locale.getpreferredencoding(False) ` en lugar " +"de ``locale.getpreferredencoding()``. Ver la clase :class:`io." +"TextIOWrapper` para obtener más información sobre este cambio." #: ../Doc/library/subprocess.rst:323 ../Doc/library/subprocess.rst:423 msgid "" "Read the `Security Considerations`_ section before using ``shell=True``." msgstr "" +"Leer la sección `Consideraciones sobre la seguridad`_ antes de usar " +"``shell=True``." #: ../Doc/library/subprocess.rst:325 msgid "" "These options, along with all of the other options, are described in more " "detail in the :class:`Popen` constructor documentation." msgstr "" +"Estas opciones y el resto se describen con más detalle en la documentación " +"del constructor de :class:`Popen`." #: ../Doc/library/subprocess.rst:330 msgid "Popen Constructor" -msgstr "" +msgstr "El constructor de Popen" #: ../Doc/library/subprocess.rst:332 msgid "" @@ -378,6 +523,10 @@ msgid "" "are able to handle the less common cases not covered by the convenience " "functions." msgstr "" +"El proceso interno de creación y gestión de este módulo lo gestiona la " +"clase :class:`Popen`. Proporciona una gran flexibilidad para que los " +"desarrolladores sean capaces de gestionar los casos menos comunes que quedan " +"sin cubrir por las funciones auxiliares." #: ../Doc/library/subprocess.rst:345 msgid "" @@ -386,6 +535,10 @@ msgid "" "class uses the Windows ``CreateProcess()`` function. The arguments to :" "class:`Popen` are as follows." msgstr "" +"Ejecuta un programa hijo en un proceso nuevo. En POSIX, la clase se comporta " +"como :meth:`os.execvp` para lanzar el proceso hijo. En Windows, la clase usa " +"la función ``CreateProcess()`` de Windows. Los argumentos de :class:`Popen` " +"son los siguientes." #: ../Doc/library/subprocess.rst:350 msgid "" @@ -397,12 +550,21 @@ msgid "" "behavior. Unless otherwise stated, it is recommended to pass *args* as a " "sequence." msgstr "" +"*args* debe ser o una secuencia de argumentos de programa o una cadena " +"simple o un :term:`objeto tipo ruta `. Por omisión, el " +"programa a ejecutar es el primer elemento de *args* si *args* es una " +"secuencia. Si *args* es una cadena, la interpretación es dependiente de la " +"plataforma, según se describe más abajo. Véase los argumentos *shell* y " +"*executable* para más información sobre el comportamiento por omisión. Salvo " +"que se indique, se recomienda pasar los *args* como una secuencia." #: ../Doc/library/subprocess.rst:358 msgid "" "An example of passing some arguments to an external program as a sequence " "is::" msgstr "" +"Un ejemplo del paso de argumentos a un programa externo mediante una " +"secuencia::" #: ../Doc/library/subprocess.rst:363 msgid "" @@ -410,6 +572,9 @@ msgid "" "path of the program to execute. However, this can only be done if not " "passing arguments to the program." msgstr "" +"En POSIX, si *args* es una cadena se interpreta como el nombre o la ruta del " +"programa que ejecutar. Sin embargo, esto solamente funciona si no hay que " +"pasar argumentos al programa." #: ../Doc/library/subprocess.rst:369 msgid "" @@ -417,6 +582,9 @@ msgid "" "arguments, especially in complex cases. :meth:`shlex.split` can illustrate " "how to determine the correct tokenization for *args*::" msgstr "" +"Puede que no resulte evidente cómo descomponer una orden de la shell en una " +"secuencia de argumentos, especialmente en casos complejos. :meth:`shlex." +"split` puede aclarar cómo determinar la descomposición en tokens de *args*::" #: ../Doc/library/subprocess.rst:381 msgid "" @@ -426,6 +594,12 @@ msgid "" "used in the shell (such as filenames containing spaces or the *echo* command " "shown above) are single list elements." msgstr "" +"Hay que destacar en particular que las opciones (como *-input*) y los " +"argumentos (como *eggs.txt*) que van separados por espacio en blanco en la " +"shell van en elementos de lista separados, mientras los argumentos que " +"necesitan entrecomillado o escapado de espacios cuando se usan en la shell " +"(como los nombres de ficheros con espacios o la orden *echo* anteriormente " +"mostrada) son elementos simples de la lista." #: ../Doc/library/subprocess.rst:387 msgid "" @@ -433,18 +607,26 @@ msgid "" "manner described in :ref:`converting-argument-sequence`. This is because " "the underlying ``CreateProcess()`` operates on strings." msgstr "" +"En Windows, si *args* es una secuencia, se convertirá a cadena del modo " +"descrito en :ref:`converting-argument-sequence`. Esto es así porque la " +"función de bajo nivel ``CreateProcess()`` funciona sobre cadenas." #: ../Doc/library/subprocess.rst:391 msgid "" "*args* parameter accepts a :term:`path-like object` if *shell* is ``False`` " "and a sequence containing path-like objects on POSIX." msgstr "" +"El parámetro *args* toma un :term:`objeto tipo ruta ` si " +"*shell* es ``False`` y una secuencia de objetos tipo fichero en POSIX." #: ../Doc/library/subprocess.rst:395 msgid "" "*args* parameter accepts a :term:`path-like object` if *shell* is ``False`` " "and a sequence containing bytes and path-like objects on Windows." msgstr "" +"El parámetro *args* toma un :term:`objeto tipo ruta ` si " +"*shell* es ``False`` y una secuencia de bytes y objetos tipo fichero en " +"Windows." #: ../Doc/library/subprocess.rst:400 msgid "" @@ -452,6 +634,9 @@ msgid "" "the shell as the program to execute. If *shell* is ``True``, it is " "recommended to pass *args* as a string rather than as a sequence." msgstr "" +"El argumento *shell* (``False``por omisión) especifica si usar la shell como " +"programa a ejecutar. Si *shell* es ``True``, se recomienda pasar *args* como " +"cadena mejor que como secuencia." #: ../Doc/library/subprocess.rst:404 msgid "" @@ -464,6 +649,15 @@ msgid "" "be treated as additional arguments to the shell itself. That is to say, :" "class:`Popen` does the equivalent of::" msgstr "" +"En POSIX con ``shell=True``, la shell predeterminada es :file:`/bin/sh`. Si " +"*args* es una cadena, ésta especifica la orden a ejecutar por la shell. Esto " +"significa que la cadena tiene que tener el formato que tendría si se " +"tecleara en la línea de órdenes. Esto incluye, por ejemplo, el " +"entrecomillado y las secuencias de escape necesarias para los nombres de " +"fichero que contengan espacios. Si *args* es una secuencia, el primer " +"elemento especifica la cadena de la orden y cualquier otro elemento será " +"tratado como argumentos adicionales a la propia shell. De este modo, :class:" +"`Popen` hace el equivalente de::" #: ../Doc/library/subprocess.rst:415 msgid "" @@ -473,34 +667,52 @@ msgid "" "into the shell (e.g. :command:`dir` or :command:`copy`). You do not need " "``shell=True`` to run a batch file or console-based executable." msgstr "" +"En Windows con ``shell=True``, la variable de entorno :envvar:`COMSPEC` " +"especifica la shell predeterminada. Solamente hace falta especificar " +"``shell=True`` en Windows cuando la orden que se desea ejecutar es interna a " +"la shell (como. :command:`dir` o :command:`copy`). No hace falta " +"especificar ``shell=True`` para ejecutar un fichero por lotes o un " +"ejecutable de consola." #: ../Doc/library/subprocess.rst:425 msgid "" "*bufsize* will be supplied as the corresponding argument to the :func:`open` " "function when creating the stdin/stdout/stderr pipe file objects:" msgstr "" +"Se proporcionará *bufsize* como el argumento correspondiente a la función :" +"func:`open` cuando se creen los objetos fichero de los flujos stdin/stdout/" +"stderr:" +# No entiendo esto #: ../Doc/library/subprocess.rst:429 msgid "" ":const:`0` means unbuffered (read and write are one system call and can " "return short)" msgstr "" +":const:`0` significa sin búfer (*read* y *write* son una llamada al sistema y " +"pueden retornar datos parciales)" #: ../Doc/library/subprocess.rst:431 msgid "" ":const:`1` means line buffered (only usable if ``universal_newlines=True`` i." "e., in a text mode)" msgstr "" +":const:`1` significa usar búfer de líneas (solamente se puede usar si " +"``universal_newlines=True``, es decir, en modo texto)" #: ../Doc/library/subprocess.rst:433 msgid "any other positive value means use a buffer of approximately that size" msgstr "" +"cualquier otro valor positivo indica que hay que usar un búfer de " +"aproximadamente dicho tamaño" #: ../Doc/library/subprocess.rst:435 msgid "" "negative bufsize (the default) means the system default of io." "DEFAULT_BUFFER_SIZE will be used." msgstr "" +"*bufsize* negativo (el valor por omisión) indica que se use el valor " +"predeterminado del sistema, `io.DEFAULT_BUFFER_SIZE`." #: ../Doc/library/subprocess.rst:438 msgid "" @@ -510,6 +722,11 @@ msgid "" "allowed short reads. This was unintentional and did not match the behavior " "of Python 2 as most code expected." msgstr "" +"*bufsize* es ahora -1 por omisión para hacer lo que la mayoría del código " +"espera. En versiones anteriores a Python 3.2.4 o 3.3.1 tomaba un valor por " +"omisión de :const:`0`, sin búfer, lo que permitía lecturas demasiado cortas. " +"Esto no era intencionado y no se correspondía con el comportamiento de " +"Python 2 como cabría esperar." #: ../Doc/library/subprocess.rst:445 msgid "" @@ -523,16 +740,29 @@ msgid "" "POSIX the *executable* argument specifies a replacement shell for the " "default :file:`/bin/sh`." msgstr "" +"El argumento *executable* especifica un programa de reemplazo que ejecutar. " +"Esto es muy poco frecuente. Cuando ``shell=False``, *executable* reemplaza " +"al programa especificado por *args*. Sin embargo, se pasan los *args* " +"originales al programa. La mayoría de los programas tratan el programa " +"especificado en los *args* como el nombre del programa, que puede ser " +"diferente del programa realmente ejecutado. En POSIX, el nombre en *args* " +"funciona como nombre visible en utilidades como :program:`ps`. Si " +"``shell=True``, en POSIX el argumento *executable* especifica una shell de " +"reemplazo de la predeterminada :file:`/bin/sh`." #: ../Doc/library/subprocess.rst:455 msgid "*executable* parameter accepts a :term:`path-like object` on POSIX." msgstr "" +"El parámetro *executable* acepta un :term:`objeto tipo ruta ` en POSIX." #: ../Doc/library/subprocess.rst:458 msgid "" "*executable* parameter accepts a bytes and :term:`path-like object` on " "Windows." msgstr "" +"El parámetro *executable* acepta bytes y un :term:`objeto tipo ruta ` en POSIX." #: ../Doc/library/subprocess.rst:462 msgid "" @@ -547,12 +777,26 @@ msgid "" "*stderr* can be :data:`STDOUT`, which indicates that the stderr data from " "the applications should be captured into the same file handle as for stdout." msgstr "" +"*stdin*, *stdout* y *stderr* especifican los gestores de ficheros de entrada " +"estándar, salida estándar y error estándar, respectivamente. Los valores " +"válidos son :data:`PIPE`, :data:`DEVNULL`, un descriptor de fichero " +"existente (un entero positivo), un :term:`file object` existente, y " +"``None``. :data:`PIPE` indica que se ha de crear un nuevo pipe al hijo. :" +"data:`DEVNULL` indica que se usará el fichero especial :data:`os.devnull`. " +"Con los valores por omisión de ``None``, no se llevará a cabo ninguna " +"redirección; el proceso hijo heredará los gestores de fichero del proceso " +"padre. Además, *stderr* puede ser :data:`STDOUT`, que indica que los datos " +"de stderr de las aplicaciones se capturarán sobre el mismo gestor de fichero " +"de stdout." #: ../Doc/library/subprocess.rst:473 msgid "" "If *preexec_fn* is set to a callable object, this object will be called in " "the child process just before the child is executed. (POSIX only)" msgstr "" +"Si se establece *preexec_fn* a un objeto invocable, se llamará a dicho " +"objeto en el proceso hijo justo antes de que se ejecute el hijo. (solamente " +"POSIX)" #: ../Doc/library/subprocess.rst:479 msgid "" @@ -561,6 +805,10 @@ msgid "" "If you must use it, keep it trivial! Minimize the number of libraries you " "call into." msgstr "" +"No es seguro utilizar el parámetro *preexec_fn* en presencia de hilos de " +"ejecución en la aplicación. El proceso hijo podría bloquearse antes de " +"llamar a `exec`. ¡Si es imprescindible, que sea tan simple como sea posible! " +"Se ha de minimizar el número de librerías a las que se llama." #: ../Doc/library/subprocess.rst:487 msgid "" @@ -569,6 +817,10 @@ msgid "" "can take the place of a previously common use of *preexec_fn* to call os." "setsid() in the child." msgstr "" +"Si es necesario modificar el entorno para el proceso hijo, se debe utilizar " +"el parámetro *env* en lugar de hacerlo en una *preexec_fn*. El parámetro " +"*start_new_session* puede tomar el lugar de un uso anteriormente común de " +"*preexec_fn* para llamar a *os.setsid* en el proceso hijo." #: ../Doc/library/subprocess.rst:494 msgid "" @@ -577,6 +829,10 @@ msgid "" "restriction may affect applications that are deployed in mod_wsgi, uWSGI, " "and other embedded environments." msgstr "" +"Se ha abandonado el soporte de *preexec_fn* en subintérpretes. El uso de " +"dicho parámetro en un subintérprete lanza :exc:`RuntimeError`. La nueva " +"restricción puede afectar a aplicaciones desplegadas en *mod_wsgi*, *uWSGI* y " +"otros entornos incrustados." #: ../Doc/library/subprocess.rst:499 msgid "" @@ -585,6 +841,10 @@ msgid "" "Otherwise when *close_fds* is false, file descriptors obey their inheritable " "flag as described in :ref:`fd_inheritance`." msgstr "" +"Si *close_fds* es verdadero, todos los descriptores de fichero salvo :const:" +"`0`, :const:`1` y :const:`2` serán cerrados antes de ejecutar el proceso " +"hijo. Por el contrario, cuando *close_fds* es falso, los descriptores de " +"fichero obedecen su indicador de heredable según :ref:`fd_inheritance`." #: ../Doc/library/subprocess.rst:504 msgid "" @@ -592,12 +852,18 @@ msgid "" "child process unless explicitly passed in the ``handle_list`` element of :" "attr:`STARTUPINFO.lpAttributeList`, or by standard handle redirection." msgstr "" +"En Windows, si *close_fds* es verdadero el proceso hijo no heredará ningún " +"gestor de fichero salvo que se le pasen explícitamente en el elemento " +"``handle_list`` de :attr:`STARTUPINFO.lpAttributeList`, o mediante " +"redirección estándar." #: ../Doc/library/subprocess.rst:508 msgid "" "The default for *close_fds* was changed from :const:`False` to what is " "described above." msgstr "" +"El valor predeterminado de *close_fds* se cambió de :const:`False` a lo " +"antes descrito." #: ../Doc/library/subprocess.rst:512 msgid "" @@ -605,6 +871,10 @@ msgid "" "const:`True` when redirecting the standard handles. It's now possible to set " "*close_fds* to :const:`True` when redirecting the standard handles." msgstr "" +"En Windows, el valor predeterminado de *close_fds* se cambió de :const:" +"`False` a :const:`True` al redirigir los gestores estándar. Ahora es posible " +"establecer *close_fds* a :const:`True` cuando se redirigen los gestores " +"estándar." #: ../Doc/library/subprocess.rst:517 msgid "" @@ -612,10 +882,13 @@ msgid "" "the parent and child. Providing any *pass_fds* forces *close_fds* to be :" "const:`True`. (POSIX only)" msgstr "" +"*pass_fds* es una secuencia de descriptor de ficheros opcional que han de " +"mantenerse abiertos entre el proceso padre e hijo. Si se proporciona un " +"valor a *pass_fds* se fuerza *close_fds* a :const:`True`. (solamente POSIX)" #: ../Doc/library/subprocess.rst:521 msgid "The *pass_fds* parameter was added." -msgstr "" +msgstr "Se añadió el parámetro *pass_fds*." #: ../Doc/library/subprocess.rst:524 msgid "" @@ -625,18 +898,27 @@ msgid "" "for *executable* (or for the first item in *args*) relative to *cwd* if the " "executable path is a relative path." msgstr "" +"Si *cwd* no es ``None``, la función cambia el directorio de trabajo a *cwd* " +"antes de ejecutar el proceso hijo. *cwd* puede ser una cadena, o un objeto " +"bytes o :term:`tipo ruta `. En particular, la función " +"busca *executable* (o el primer elemento de *args*) relativo a *cwd* si la " +"ruta del ejecutable es relativa." #: ../Doc/library/subprocess.rst:530 msgid "*cwd* parameter accepts a :term:`path-like object` on POSIX." msgstr "" +"El parámetro *cwd* acepta un :term:`objeto tipo ruta ` en " +"POSIX." #: ../Doc/library/subprocess.rst:533 msgid "*cwd* parameter accepts a :term:`path-like object` on Windows." msgstr "" +"El parámetro *cwd* acepta un :term:`objeto tipo ruta ` en " +"Windows." #: ../Doc/library/subprocess.rst:536 msgid "*cwd* parameter accepts a bytes object on Windows." -msgstr "" +msgstr "El parámetro *cwd* acepta un objeto bytes en Windows." #: ../Doc/library/subprocess.rst:539 msgid "" @@ -644,20 +926,26 @@ msgid "" "to SIG_IGN are restored to SIG_DFL in the child process before the exec. " "Currently this includes the SIGPIPE, SIGXFZ and SIGXFSZ signals. (POSIX only)" msgstr "" +"Si *restore_signals* es verdadero (el valor por omisión) todas las señales " +"que Python ha establecido a SIG_IGN se restauran a SIG_DFL en el proceso " +"hijo antes del *exec*. En la actualidad, esto incluye las señales SIGPIPE, " +"SIGXFZ y SIGXFSZ (solamente POSIX)." #: ../Doc/library/subprocess.rst:544 msgid "*restore_signals* was added." -msgstr "" +msgstr "Se añadió *restore_signals*." #: ../Doc/library/subprocess.rst:547 msgid "" "If *start_new_session* is true the setsid() system call will be made in the " "child process prior to the execution of the subprocess. (POSIX only)" msgstr "" +"Si *start_new_session* es verdadero la llamada al sistema *setsid* se hará " +"en el proceso hijo antes de la ejecución del subproceso (solamente POSIX)." #: ../Doc/library/subprocess.rst:550 msgid "*start_new_session* was added." -msgstr "" +msgstr "Se añadió *start_new_session*." #: ../Doc/library/subprocess.rst:553 msgid "" @@ -665,6 +953,9 @@ msgid "" "variables for the new process; these are used instead of the default " "behavior of inheriting the current process' environment." msgstr "" +"Si *env* no es ``None``, debe ser un mapeo que defina las variables de " +"entorno del nuevo proceso; se utilizarán éstas en lugar del comportamiento " +"por omisión de heredar el entorno del proceso en curso." #: ../Doc/library/subprocess.rst:559 msgid "" @@ -672,6 +963,10 @@ msgid "" "execute. On Windows, in order to run a `side-by-side assembly`_ the " "specified *env* **must** include a valid :envvar:`SystemRoot`." msgstr "" +"Si se especifica, *env* debe proporcionar las variables necesarias para que " +"el programa se ejecute. En Windows, para ejecutar una `side-by-side " +"assembly`_ el *env* especificado **debe** incluir un :envvar:`SystemRoot` " +"válido." #: ../Doc/library/subprocess.rst:565 msgid "" @@ -682,14 +977,20 @@ msgid "" "is provided for backwards compatibility. By default, file objects are opened " "in binary mode." msgstr "" +"Si se especifica *encoding* o *errors*, o *text* verdadero, los objetos " +"fichero *stdin*, *stdout* y *stderr* se abren en modo texto con la " +"codificación y *errors* especificados, según se describió en :ref:" +"`frequently-used-arguments`. El argumento *universal_newlines* es " +"equivalente a *text* y se admite por compatibilidad hacia atrás. Por " +"omisión, los ficheros se abren en modo binario." #: ../Doc/library/subprocess.rst:571 msgid "*encoding* and *errors* were added." -msgstr "" +msgstr "Se añadieron *encoding* y *errors*." #: ../Doc/library/subprocess.rst:574 ../Doc/library/subprocess.rst:1156 msgid "*text* was added as a more readable alias for *universal_newlines*." -msgstr "" +msgstr "Se añadió *text* como alias más legible de *universal_newlines*." #: ../Doc/library/subprocess.rst:577 msgid "" @@ -697,6 +998,9 @@ msgid "" "passed to the underlying ``CreateProcess`` function. *creationflags*, if " "given, can be one or more of the following flags:" msgstr "" +"Si se proporciona, *startupinfo* será un objeto :class:`STARTUPINFO`, que se " +"pasa a la función de más bajo nivel ``CreateProcess``. *creationflags*, si " +"está presente, puede ser uno o más de los siguientes indicadores:" #: ../Doc/library/subprocess.rst:581 msgid ":data:`CREATE_NEW_CONSOLE`" @@ -752,11 +1056,16 @@ msgid "" "statement: on exit, standard file descriptors are closed, and the process is " "waited for. ::" msgstr "" +"Se puede usar los objetos Popen como gestores de contexto mediante " +"sentencia :keyword:`with`: a la salida, los descriptores de flujo se cierran " +"y se espera a que acabe el proceso. ::" msgid "" "Raises an :ref:`auditing event ` ``subprocess.Popen`` with " "arguments ``executable``, ``args``, ``cwd``, ``env``." msgstr "" +"Lanza un :ref:`auditing event ` ``subprocess.Popen`` con " +"argumentos ``executable``, ``args``, ``cwd``, ``env``." #: ../Doc/library/subprocess.rst:603 msgid "" @@ -765,16 +1074,22 @@ msgid "" "``executable``, ``args``, ``cwd``, and ``env``. The value for ``args`` may " "be a single string or a list of strings, depending on platform." msgstr "" +"Popen y el resto de las funciones de este módulo que la usan lanzan un :ref:" +"`auditing event ` ``subprocess.Popen`` con argumentos " +"``executable``, ``args``, ``cwd`` y ``env``. El valor de ``args`` puede ser " +"una cadena simple o un alista de cadenas, dependiendo de la plataforma." #: ../Doc/library/subprocess.rst:608 msgid "Added context manager support." -msgstr "" +msgstr "Se añadió la funcionalidad de gestor de contexto." #: ../Doc/library/subprocess.rst:611 msgid "" "Popen destructor now emits a :exc:`ResourceWarning` warning if the child " "process is still running." msgstr "" +"El destructor de Popen ahora emite una advertencia :exc:`ResourceWarning` si " +"el proceso hijo todavía se está ejecutando." #: ../Doc/library/subprocess.rst:615 msgid "" @@ -784,16 +1099,24 @@ msgid "" "missing program, but the child process fails with a non-zero :attr:`~Popen." "returncode`." msgstr "" +"Popen puede usar :func:`os.posix_spawn` en algunos casos para obtener mejor " +"rendimiento. En el Subsistema de Windows para Linux (WSL) y en la emulación " +"del modo usuario de QEMU, el constructor de Popen que use :func:`os." +"posix_spawn` ya no lanzará una excepción cuando se den errores tales como " +"que un programa no esté, sino que el proceso hijo fracasará con un :attr:" +"`~Popen.returncode` distinto de cero." #: ../Doc/library/subprocess.rst:624 msgid "Exceptions" -msgstr "" +msgstr "Excepciones" #: ../Doc/library/subprocess.rst:626 msgid "" "Exceptions raised in the child process, before the new program has started " "to execute, will be re-raised in the parent." msgstr "" +"Las excepciones lanzadas en el proceso hijo, antes de que el nuevo programa " +"haya empezado a ejecutarse, se relanzarán en el padre." #: ../Doc/library/subprocess.rst:629 msgid "" @@ -801,18 +1124,27 @@ msgid "" "example, when trying to execute a non-existent file. Applications should " "prepare for :exc:`OSError` exceptions." msgstr "" +"La excepción más comúnmente lanzada es :exc:`OSError`. Esto ocurre, por " +"ejemplo, cuando se intenta ejecutar un fichero no existente. Las " +"aplicaciones deben estar preparadas para gestionar las excepciones :exc:" +"`OSError`." #: ../Doc/library/subprocess.rst:633 msgid "" "A :exc:`ValueError` will be raised if :class:`Popen` is called with invalid " "arguments." msgstr "" +"Se lanzará un :exc:`ValueError` si se llama a :class:`Popen` con argumentos " +"no válidos." #: ../Doc/library/subprocess.rst:636 msgid "" ":func:`check_call` and :func:`check_output` will raise :exc:" "`CalledProcessError` if the called process returns a non-zero return code." msgstr "" +":func:`check_call` y :func:`check_output` lanzarán un :exc:" +"`CalledProcessError` si el proceso invocado devuelve un código de retorno " +"distinto de cero." #: ../Doc/library/subprocess.rst:640 msgid "" @@ -820,19 +1152,24 @@ msgid "" "func:`call` and :meth:`Popen.communicate` will raise :exc:`TimeoutExpired` " "if the timeout expires before the process exits." msgstr "" +"Todas las funciones y métodos que admiten un parámetro *timeout*, tales " +"como :func:`call` y :meth:`Popen.communicate` lanzarán :exc:`TimeoutExpired` " +"si se vence el plazo de ejecución antes de que finalice el proceso hijo." #: ../Doc/library/subprocess.rst:644 msgid "" "Exceptions defined in this module all inherit from :exc:`SubprocessError`." msgstr "" +"Todas las excepciones definidas en este módulo heredan de :exc:" +"`SubprocessError`." #: ../Doc/library/subprocess.rst:646 msgid "The :exc:`SubprocessError` base class was added." -msgstr "" +msgstr "Se añadió la clase base :exc:`SubprocessError`." #: ../Doc/library/subprocess.rst:651 msgid "Security Considerations" -msgstr "" +msgstr "Consideraciones sobre seguridad" #: ../Doc/library/subprocess.rst:653 msgid "" @@ -844,6 +1181,14 @@ msgid "" "appropriately to avoid `shell injection `_ vulnerabilities." msgstr "" +"Al contrario que otras funciones popen, esta implementación nunca llamará " +"implícitamente a la shell del sistema. Esto significa que todos los " +"caracteres, incluidos los metacaracteres de la shell, se pueden pasar de " +"manera segura a los procesos hijos. Si se invoca la shell explícitamente, " +"mediante ``shell=True``, es responsabilidad de la aplicación asegurar que " +"todo el espaciado y metacaracteres se entrecomillan adecuadamente para " +"evitar vulnerabilidades de `inyección de código `_." #: ../Doc/library/subprocess.rst:662 msgid "" @@ -851,26 +1196,34 @@ msgid "" "properly escape whitespace and shell metacharacters in strings that are " "going to be used to construct shell commands." msgstr "" +"Cuando se usa ``shell=True``, se puede usar la función :func:`shlex.quote` " +"para escapar correctamente el espaciado y los metacaracteres de la shell en " +"las cadenas que se vayan a utilizar para construir órdenes de la shell." #: ../Doc/library/subprocess.rst:668 msgid "Popen Objects" -msgstr "" +msgstr "Objetos Popen" #: ../Doc/library/subprocess.rst:670 msgid "Instances of the :class:`Popen` class have the following methods:" msgstr "" +"Las instancias de la clase :class:`Popen` cuentan con los siguientes métodos:" #: ../Doc/library/subprocess.rst:675 msgid "" "Check if child process has terminated. Set and return :attr:`~Popen." "returncode` attribute. Otherwise, returns ``None``." msgstr "" +"Comprueba si el proceso hijo ha finalizado. Establece y devuelve el " +"atributo :attr:`~Popen.returncode`. De lo contrario, devuelve ``None``." #: ../Doc/library/subprocess.rst:681 msgid "" "Wait for child process to terminate. Set and return :attr:`~Popen." "returncode` attribute." msgstr "" +"Espera a que termine el proceso hijo. Establece y devuelve el atributo :attr:" +"`~Popen.returncode`." #: ../Doc/library/subprocess.rst:684 msgid "" @@ -878,6 +1231,8 @@ msgid "" "`TimeoutExpired` exception. It is safe to catch this exception and retry " "the wait." msgstr "" +"Si el proceso no finaliza tras *timeout* segundos, lanza una excepción :exc:" +"`TimeoutExpired`. Se puede capturar esta excepción para reintentar la espera." #: ../Doc/library/subprocess.rst:690 msgid "" @@ -886,6 +1241,10 @@ msgid "" "for the OS pipe buffer to accept more data. Use :meth:`Popen.communicate` " "when using pipes to avoid that." msgstr "" +"Esto causará un bloqueo cuando se use ``stdout=PIPE`` o ``stderr=PIPE`` y el " +"proceso hijo genere suficiente salida hacia un pipe como para bloquear " +"esperando que el búfer del pipe del SO acepte más datos. Se debe usar :meth:" +"`Popen.communicate` cuando se usen pipes para evitar esto." #: ../Doc/library/subprocess.rst:697 msgid "" @@ -893,12 +1252,15 @@ msgid "" "sleeps). Use the :mod:`asyncio` module for an asynchronous wait: see :class:" "`asyncio.create_subprocess_exec`." msgstr "" +"Esta función se implementa mediante una espera activa (llamada no bloqueante " +"y breves llamadas a `sleep`). Se debe usar el módulo :mod:`asyncio` para " +"hacer una espera asíncrona: ver :class:`asyncio.create_subprocess_exec`." #: ../Doc/library/subprocess.rst:701 ../Doc/library/subprocess.rst:741 #: ../Doc/library/subprocess.rst:1075 ../Doc/library/subprocess.rst:1103 #: ../Doc/library/subprocess.rst:1147 msgid "*timeout* was added." -msgstr "" +msgstr "Se añadió *timeout*." #: ../Doc/library/subprocess.rst:706 msgid "" @@ -908,12 +1270,21 @@ msgid "" "``None``, if no data should be sent to the child. If streams were opened in " "text mode, *input* must be a string. Otherwise, it must be bytes." msgstr "" +"Interactuar con el proceso: Enviar datos a stdin. Leer datos de stdout y " +"stderr, hasta encontrar un fin-de-fichero. Esperar a que termine el proceso. " +"El argumento opcional *input* debe contener los datos que hay que enviar al " +"proceso hijo o ``None``, si no hay que enviar datos al hijo. Si se abrieron " +"los flujos en modo texto, *input* ha de ser una cadena. En caso contrario, " +"debe contener bytes." #: ../Doc/library/subprocess.rst:712 msgid "" ":meth:`communicate` returns a tuple ``(stdout_data, stderr_data)``. The data " "will be strings if streams were opened in text mode; otherwise, bytes." msgstr "" +":meth:`communicate` devuelve una tupla ``(stdout_data, stderr_data)``. Los " +"datos serán cadenas si se abrieron los flujos en modo texto, en caso " +"contrario serán bytes." #: ../Doc/library/subprocess.rst:716 msgid "" @@ -922,6 +1293,10 @@ msgid "" "other than ``None`` in the result tuple, you need to give ``stdout=PIPE`` " "and/or ``stderr=PIPE`` too." msgstr "" +"Adiviértase que si se desea enviar datos al stdin del proceso, se ha de " +"crear el objeto Popen con ``stdin=PIPE``. Análogamente, para obtener algo " +"diferente de ``None`` en la tupla del resultado, hay que suministrar " +"``stdout=PIPE`` o ``stderr=PIPE`` también." #: ../Doc/library/subprocess.rst:721 msgid "" @@ -929,6 +1304,9 @@ msgid "" "`TimeoutExpired` exception will be raised. Catching this exception and " "retrying communication will not lose any output." msgstr "" +"Si el proceso no termina tras *timeout* segundos, se lanza una excepción :" +"exc:`TimeoutExpired`. Si se captura dicha excepción y se reintenta la " +"comunicación, no se perderán datos de salida." #: ../Doc/library/subprocess.rst:725 msgid "" @@ -936,16 +1314,21 @@ msgid "" "cleanup properly a well-behaved application should kill the child process " "and finish communication::" msgstr "" +"No se matará el proceso si vence el plazo de ejecución, así que para hacer " +"limpieza, una aplicación correcta debería matar el proceso y terminar la " +"comunicación::" #: ../Doc/library/subprocess.rst:738 msgid "" "The data read is buffered in memory, so do not use this method if the data " "size is large or unlimited." msgstr "" +"Los datos leídos pasan por un búfer en memoria, así que no se ha de usar " +"este método para un tamaño de datos grande o ilimitado." #: ../Doc/library/subprocess.rst:747 msgid "Sends the signal *signal* to the child." -msgstr "" +msgstr "Envía la señal *signal* al proceso hijo." #: ../Doc/library/subprocess.rst:751 msgid "" @@ -953,6 +1336,9 @@ msgid "" "CTRL_BREAK_EVENT can be sent to processes started with a *creationflags* " "parameter which includes `CREATE_NEW_PROCESS_GROUP`." msgstr "" +"En Windows, SIGTERM es un alias de :meth:`terminate`. Se puede enviar " +"CTRL_C_EVENT y CTRL_BREAK_EVENT a los procesos creados con un parámetro " +"*creationflags* que incluya `CREATE_NEW_PROCESS_GROUP`." #: ../Doc/library/subprocess.rst:758 msgid "" @@ -960,22 +1346,29 @@ msgid "" "Windows the Win32 API function :c:func:`TerminateProcess` is called to stop " "the child." msgstr "" +"Detener el proceso hijo. En SO POSIX, este método envía SIGTERM al proceso " +"hijo. En Windows se llama a la función :c:func:`TerminateProcess` " +"de la API de Win32 para detener el proceso hijo." #: ../Doc/library/subprocess.rst:765 msgid "" "Kills the child. On Posix OSs the function sends SIGKILL to the child. On " "Windows :meth:`kill` is an alias for :meth:`terminate`." msgstr "" +"Mata el proceso hijo. En SO POSIX la función envía SIGKILL al proceso hijo. " +"En Windows :meth:`kill` es un alias de :meth:`terminate`." #: ../Doc/library/subprocess.rst:769 msgid "The following attributes are also available:" -msgstr "" +msgstr "También están disponibles los siguientes atributos:" #: ../Doc/library/subprocess.rst:773 msgid "" "The *args* argument as it was passed to :class:`Popen` -- a sequence of " "program arguments or else a single string." msgstr "" +"El argumento *args* según se pasó a :class:`Popen`: o una secuencia de " +"argumentos del programa o una cadena sencilla." #: ../Doc/library/subprocess.rst:780 msgid "" @@ -985,6 +1378,11 @@ msgid "" "the stream is a text stream, otherwise it is a byte stream. If the *stdin* " "argument was not :data:`PIPE`, this attribute is ``None``." msgstr "" +"Si el argumento *stdin* fue :data:`PIPE`, este atributo es un objeto flujo " +"escribible según lo devuelve :func:`open`. Si se especificaron argumentos " +"*encoding* o *errors* o el argumento *universal_newlines* fue ``True``, el " +"flujo es de texto, de lo contrario, es de bytes. Si el argumento *stdin* no " +"fue :data:`PIPE`, este atributo es ``None``." #: ../Doc/library/subprocess.rst:789 msgid "" @@ -995,6 +1393,12 @@ msgid "" "text stream, otherwise it is a byte stream. If the *stdout* argument was " "not :data:`PIPE`, this attribute is ``None``." msgstr "" +"Si el argumento *stdout* fue :data:`PIPE`, este atributo el un objeto de " +"flujo legible según lo devuelve :func:`open`. Leer del flujo proporciona " +"salida del proceso hijo. Si se especificaron argumentos *encoding* o " +"*errors* o el argumento *universal_newlines* fue ``True``, el flujo es de " +"texto, de lo contrario, es de bytes. Si el argumento *stdout* no fue :data:" +"`PIPE`, este atributo es ``None``." #: ../Doc/library/subprocess.rst:799 msgid "" @@ -1005,6 +1409,12 @@ msgid "" "is a text stream, otherwise it is a byte stream. If the *stderr* argument " "was not :data:`PIPE`, this attribute is ``None``." msgstr "" +"Si el argumento *stderr* fue :data:`PIPE`, este atributo el un objeto de " +"flujo legible según lo devuelve :func:`open`. Leer del flujo proporciona " +"salida del proceso hijo. Si se especificaron argumentos *encoding* o " +"*errors* o el argumento *universal_newlines* fue ``True``, el flujo es de " +"texto, de lo contrario, es de bytes. Si el argumento *stderr* no fue :data:" +"`PIPE`, este atributo es ``None``." #: ../Doc/library/subprocess.rst:808 msgid "" @@ -1013,16 +1423,22 @@ msgid "" "stderr>` to avoid deadlocks due to any of the other OS pipe buffers filling " "up and blocking the child process." msgstr "" +"Se ha de usar :meth:`~Popen.communicate` en lugar de :attr:`.stdin.write " +"`, :attr:`.stdout.read ` o :attr:`.stderr.read " +"` para evitar bloqueos por búfer de pipes del SO llenos que " +"puedan bloquear el proceso hijo." #: ../Doc/library/subprocess.rst:816 msgid "The process ID of the child process." -msgstr "" +msgstr "El ID de proceso del hijo." #: ../Doc/library/subprocess.rst:818 msgid "" "Note that if you set the *shell* argument to ``True``, this is the process " "ID of the spawned shell." msgstr "" +"Adviértase que si se establece el argumento *shell* a ``True``, éste es el " +"ID de proceso del la shell generada." #: ../Doc/library/subprocess.rst:824 msgid "" @@ -1030,16 +1446,21 @@ msgid "" "by :meth:`communicate`). A ``None`` value indicates that the process hasn't " "terminated yet." msgstr "" +"El código de retorno del hijo, establecido por :meth:`poll` y :meth:`wait` " +"(e indirectamente por :meth:`communicate`). Un valor ``None`` indica que el " +"proceso no ha terminado aún." #: ../Doc/library/subprocess.rst:833 msgid "Windows Popen Helpers" -msgstr "" +msgstr "Elementos auxiliares de Popen en Windows" #: ../Doc/library/subprocess.rst:835 msgid "" "The :class:`STARTUPINFO` class and following constants are only available on " "Windows." msgstr "" +"La clase :class:`STARTUPINFO` y las siguientes constantes sólo están " +"disponibles en Windows." #: ../Doc/library/subprocess.rst:841 msgid "" @@ -1048,16 +1469,22 @@ msgid "" "creation. The following attributes can be set by passing them as keyword-" "only arguments." msgstr "" +"Se utiliza un soporte parcial de la estructura `STARTUPINFO `__ de Windows para la " +"creación de :class:`Popen`. Se pueden estableces los siguientes atributos " +"pasándolos como argumentos sólo por clave." #: ../Doc/library/subprocess.rst:846 msgid "Keyword-only argument support was added." -msgstr "" +msgstr "Se añadió el soporte de argumentos sólo por clave." #: ../Doc/library/subprocess.rst:851 msgid "" "A bit field that determines whether certain :class:`STARTUPINFO` attributes " "are used when the process creates a window. ::" msgstr "" +"Un campo bit que determina si se usan ciertos atributos de :class:" +"`STARTUPINFO` cuando el proceso crea una ventana. ::" #: ../Doc/library/subprocess.rst:859 msgid "" @@ -1065,6 +1492,10 @@ msgid "" "the standard input handle for the process. If :data:`STARTF_USESTDHANDLES` " "is not specified, the default for standard input is the keyboard buffer." msgstr "" +"Si :attr:`dwFlags` especifica :data:`STARTF_USESTDHANDLES`, este atributo es " +"el gestor de entrada estándar del proceso. Si no se especifica :data:" +"`STARTF_USESTDHANDLES`, el valor predeterminado de entrada estándar es el " +"búfer de teclado." #: ../Doc/library/subprocess.rst:866 msgid "" @@ -1072,6 +1503,10 @@ msgid "" "the standard output handle for the process. Otherwise, this attribute is " "ignored and the default for standard output is the console window's buffer." msgstr "" +"Si :attr:`dwFlags` especifica :data:`STARTF_USESTDHANDLES`, este atributo es " +"el gestor de salida estándar del proceso. En caso contrario, se hace caso " +"omiso del atributo y el valor predeterminado de salida estándar es el búfer " +"de ventana." #: ../Doc/library/subprocess.rst:873 msgid "" @@ -1079,6 +1514,10 @@ msgid "" "the standard error handle for the process. Otherwise, this attribute is " "ignored and the default for standard error is the console window's buffer." msgstr "" +"Si :attr:`dwFlags` especifica :data:`STARTF_USESTDHANDLES`, este atributo es " +"el gestor de error estándar del proceso. En caso contrario, se hace caso " +"omiso del atributo y el valor predeterminado de error estándar es el búfer " +"de ventana." #: ../Doc/library/subprocess.rst:879 msgid "" @@ -1088,12 +1527,19 @@ msgid "" "ms633548(v=vs.85).aspx>`__ function, except for ``SW_SHOWDEFAULT``. " "Otherwise, this attribute is ignored." msgstr "" +"Si :attr:`dwFlags` especifica :data:`STARTF_USESHOWWINDOW`, este atributo " +"puede ser cualquiera de los valores que pueden especificarse en el parámetro " +"``nCmdShow`` para la función `ShowWindow `__, salvo ``SW_SHOWDEFAULT``. De otro modo, " +"se hace caso omiso del atributo." #: ../Doc/library/subprocess.rst:886 msgid "" ":data:`SW_HIDE` is provided for this attribute. It is used when :class:" "`Popen` is called with ``shell=True``." msgstr "" +"Se proporciona :data:`SW_HIDE` para este atributo. Se usa cuando se llama a :" +"class:`Popen` con ``shell=True``." #: ../Doc/library/subprocess.rst:891 msgid "" @@ -1101,20 +1547,25 @@ msgid "" "``STARTUPINFOEX``, see `UpdateProcThreadAttribute `__." msgstr "" +"Un diccionario de atributos adicionales para la creación del proceso, según " +"``STARTUPINFOEX``, véase `UpdateProcThreadAttribute `__." #: ../Doc/library/subprocess.rst:895 msgid "Supported attributes:" -msgstr "" +msgstr "Atributos admitidos:" #: ../Doc/library/subprocess.rst:913 msgid "**handle_list**" -msgstr "" +msgstr "**handle_list**" #: ../Doc/library/subprocess.rst:898 msgid "" "Sequence of handles that will be inherited. *close_fds* must be true if non-" "empty." msgstr "" +"Una secuencia de gestores que se heredará. *close_fds* debe ser verdadero si " +"no viene vacío." #: ../Doc/library/subprocess.rst:901 msgid "" @@ -1123,6 +1574,10 @@ msgid "" "class:`OSError` will be raised with Windows error " "``ERROR_INVALID_PARAMETER`` (87)." msgstr "" +"Los gestores deben hacerse temporalmente heredables por :func:`os." +"set_handle_inheritable` cuando se pasan al constructor de :class:`Popen` o " +"de lo contrario, se lanzará :class:`OSError` con el error de Windows " +"``ERROR_INVALID_PARAMETER`` (87)." #: ../Doc/library/subprocess.rst:908 msgid "" @@ -1132,36 +1587,47 @@ msgid "" "system`. This also applies to standard handle redirection, which " "temporarily creates inheritable handles." msgstr "" +"En un proceso multihilo, hay que evitar filtrar gestores no heredables " +"cuando se combina esta característica con llamadas concurrentes a otras " +"funciones de creación de procesos que heredan todos los gestores, como :func:" +"`os.system`. Esto también rige para la redirección de gestores estándar, que " +"crea temporalmente gestores heredables." #: ../Doc/library/subprocess.rst:918 msgid "Windows Constants" -msgstr "" +msgstr "Constantes de Windows" #: ../Doc/library/subprocess.rst:920 msgid "The :mod:`subprocess` module exposes the following constants." -msgstr "" +msgstr "El módulo :mod:`subprocess` expone las siguientes constantes." #: ../Doc/library/subprocess.rst:924 msgid "" "The standard input device. Initially, this is the console input buffer, " "``CONIN$``." msgstr "" +"El dispositivo de entrada estándar. Inicialmente, es el búfer de entrada de " +"la consola, ``CONIN$``." #: ../Doc/library/subprocess.rst:929 msgid "" "The standard output device. Initially, this is the active console screen " "buffer, ``CONOUT$``." msgstr "" +"El dispositivo de salida estándar. Inicialmente, es el búfer de pantalla de " +"la consola activa, ``CONOUT$``." #: ../Doc/library/subprocess.rst:934 msgid "" "The standard error device. Initially, this is the active console screen " "buffer, ``CONOUT$``." msgstr "" +"El dispositivo de error estándar. Inicialmente, es el búfer de pantalla de " +"la consola activa, ``CONOUT$``." #: ../Doc/library/subprocess.rst:939 msgid "Hides the window. Another window will be activated." -msgstr "" +msgstr "Oculta la ventana. Se activará otra ventana." #: ../Doc/library/subprocess.rst:943 msgid "" @@ -1169,18 +1635,25 @@ msgid "" "hStdOutput`, and :attr:`STARTUPINFO.hStdError` attributes contain additional " "information." msgstr "" +"Especifica que los atributos :attr:`STARTUPINFO.hStdInput`, :attr:" +"`STARTUPINFO.hStdOutput`, y :attr:`STARTUPINFO.hStdError` contienen " +"información adicional." #: ../Doc/library/subprocess.rst:949 msgid "" "Specifies that the :attr:`STARTUPINFO.wShowWindow` attribute contains " "additional information." msgstr "" +"Especifica que el atributo :attr:`STARTUPINFO.wShowWindow` contiene " +"información adicional." #: ../Doc/library/subprocess.rst:954 msgid "" "The new process has a new console, instead of inheriting its parent's " "console (the default)." msgstr "" +"El nuevo proceso obtiene una nueva consola, en lugar de heredar la consola " +"del padre (que es el comportamiento predeterminado)." #: ../Doc/library/subprocess.rst:959 msgid "" @@ -1188,40 +1661,55 @@ msgid "" "group will be created. This flag is necessary for using :func:`os.kill` on " "the subprocess." msgstr "" +"Un parámetro :class:`Popen` ``creationflags`` para especificar que se cree " +"un nuevo grupo de procesos. Este indicador es necesario para usar :func:`os." +"kill` sobre el subproceso." #: ../Doc/library/subprocess.rst:963 msgid "This flag is ignored if :data:`CREATE_NEW_CONSOLE` is specified." msgstr "" +"Este indicador no se tiene en cuenta si se especifica :data:" +"`CREATE_NEW_CONSOLE`." #: ../Doc/library/subprocess.rst:967 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have an above average priority." msgstr "" +"Parámetro :class:`Popen` ``creationflags`` para especificar que el nuevo " +"proceso tendrá una prioridad superior a la media." #: ../Doc/library/subprocess.rst:974 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have a below average priority." msgstr "" +"Parámetro :class:`Popen` ``creationflags`` para especificar que el nuevo " +"proceso tendrá una prioridad inferior a la media." #: ../Doc/library/subprocess.rst:981 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have a high priority." msgstr "" +"Parámetro :class:`Popen` ``creationflags`` para especificar que el nuevo " +"proceso tendrá una prioridad elevada." #: ../Doc/library/subprocess.rst:988 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have an idle (lowest) priority." msgstr "" +"Parámetro :class:`Popen` ``creationflags`` para especificar que el nuevo " +"proceso tendrá una la mínima prioridad." #: ../Doc/library/subprocess.rst:995 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have an normal priority. (default)" msgstr "" +"Parámetro :class:`Popen` ``creationflags`` para especificar que el nuevo " +"proceso tendrá una prioridad normal (éste es el valor predeterminado)." #: ../Doc/library/subprocess.rst:1002 msgid "" @@ -1232,12 +1720,21 @@ msgid "" "appropriate for applications that \"talk\" directly to hardware or that " "perform brief tasks that should have limited interruptions." msgstr "" +"Parámetro :class:`Popen` ``creationflags`` para especificar que el nuevo " +"proceso tendrá una prioridad de tiempo real. Raramente se debería usar " +"REALTIME_PRIORITY_CLASS, porque esto interrumpe los hilos que gestionan la " +"entrada del ratón y del teclado, así como la gestión del volcado de búfer " +"del disco. Esta clase es apropiada para aplicaciones que se comunican " +"directamente con el hardware o que llevan a cabo tareas breves que no " +"admitan interrupciones." #: ../Doc/library/subprocess.rst:1013 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will not create a window." msgstr "" +"Parámetro :class:`Popen` ``creationflags`` para especificar que el nuevo " +"proceso no creará una ventana." #: ../Doc/library/subprocess.rst:1020 msgid "" @@ -1245,6 +1742,9 @@ msgid "" "will not inherit its parent's console. This value cannot be used with " "CREATE_NEW_CONSOLE." msgstr "" +"Parámetro :class:`Popen` ``creationflags`` para especificar que el nuevo " +"proceso no heredará la consola del padre. Este valor es incompatible con " +"CREATE_NEW_CONSOLE." #: ../Doc/library/subprocess.rst:1028 msgid "" @@ -1253,16 +1753,23 @@ msgid "" "process gets the default error mode. This feature is particularly useful for " "multithreaded shell applications that run with hard errors disabled." msgstr "" +"Parámetro :class:`Popen` ``creationflags`` para especificar que el nuevo " +"proceso no hereda el modo de error del proceso padre. En su lugar, el " +"proceso parte del modo de error predeterminado. Esta característica es " +"particularmente útil para aplicaciones de shell multihilo que se ejecutan " +"con los errores 'duros' desactivados." #: ../Doc/library/subprocess.rst:1038 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "is not associated with the job." msgstr "" +"Parámetro :class:`Popen` ``creationflags`` para especificar que el nuevo " +"proceso no está asociado a la tarea." #: ../Doc/library/subprocess.rst:1046 msgid "Older high-level API" -msgstr "" +msgstr "Antigua API de alto nivel" #: ../Doc/library/subprocess.rst:1048 msgid "" @@ -1270,21 +1777,30 @@ msgid "" "subprocess. You can now use :func:`run` in many cases, but lots of existing " "code calls these functions." msgstr "" +"Antes de Python 3.5, estas tres funciones conformaban la API de alto nivel " +"para subprocesos. Ahora se puede usar :func:`run` en muchos casos, pero hay " +"mucho código escrito con estas funciones." #: ../Doc/library/subprocess.rst:1054 msgid "" "Run the command described by *args*. Wait for command to complete, then " "return the :attr:`~Popen.returncode` attribute." msgstr "" +"Ejecutar la orden descrita por *args*. Esperar que la orden se complete y " +"devolver al atributo :attr:`~Popen.returncode`." #: ../Doc/library/subprocess.rst:1057 ../Doc/library/subprocess.rst:1085 msgid "" "Code needing to capture stdout or stderr should use :func:`run` instead::" msgstr "" +"El código que requiera capturar stdout o stderr debería usar :func:`run` en " +"su lugar::" #: ../Doc/library/subprocess.rst:1061 ../Doc/library/subprocess.rst:1089 msgid "To suppress stdout or stderr, supply a value of :data:`DEVNULL`." msgstr "" +"Para suprimir stdout o stderr se ha de proporcionar un valor de :data:" +"`DEVNULL`." #: ../Doc/library/subprocess.rst:1063 ../Doc/library/subprocess.rst:1091 msgid "" @@ -1293,6 +1809,10 @@ msgid "" "function passes all supplied arguments other than *timeout* directly through " "to that interface." msgstr "" +"Se muestran algunos argumentos comunes. La signatura completa de la función " +"es la misma que la del constructor de :class:`Popen`; esta función pasa " +"todos los argumentos proporcionados (salvo *timeout*) directamente a esa " +"interfaz." #: ../Doc/library/subprocess.rst:1070 ../Doc/library/subprocess.rst:1098 msgid "" @@ -1300,6 +1820,9 @@ msgid "" "process will block if it generates enough output to a pipe to fill up the OS " "pipe buffer as the pipes are not being read from." msgstr "" +"No usar ``stdout=PIPE`` ni ``stderr=PIPE`` con esta función. El proceso hijo " +"se bloqueará si genera suficiente salida a un pipe como para saturar el " +"búfer del pipe del sistema operativo mientras no se lee de los pipes." #: ../Doc/library/subprocess.rst:1080 msgid "" @@ -1308,10 +1831,14 @@ msgid "" "exc:`CalledProcessError` object will have the return code in the :attr:" "`~CalledProcessError.returncode` attribute." msgstr "" +"Ejecuta orden con argumentos. Espera a que la orden se complete. Si el " +"código de retorno es cero, retornar; en caso contrario, lanzar :exc:" +"`CalledProcessError`. El objeto :exc:`CalledProcessError` tendrá el código " +"de retorno en el atributo :attr:`~CalledProcessError.returncode`." #: ../Doc/library/subprocess.rst:1111 msgid "Run command with arguments and return its output." -msgstr "" +msgstr "Ejecuta orden con argumentos y devuelve su salida." #: ../Doc/library/subprocess.rst:1113 msgid "" @@ -1320,10 +1847,14 @@ msgid "" "`~CalledProcessError.returncode` attribute and any output in the :attr:" "`~CalledProcessError.output` attribute." msgstr "" +"Si el código de retorno fue diferente de cero lanza un :exc:" +"`CalledProcessError`. El objeto :exc:`CalledProcessError` tendrá el código " +"de retorno en el atributo :attr:`~CalledProcessError.returncode` y los datos " +"de salida en el atributo :attr:`~CalledProcessError.output`." #: ../Doc/library/subprocess.rst:1118 msgid "This is equivalent to::" -msgstr "" +msgstr "Esto equivale a::" #: ../Doc/library/subprocess.rst:1122 msgid "" @@ -1333,6 +1864,10 @@ msgid "" "``input=None`` to inherit the parent's standard input file handle is not " "supported." msgstr "" +"Se muestran algunos argumentos comunes. La signatura completa de la función " +"es casi la misma que la de :func:`run`. La mayoría de los argumentos se pasa " +"directamente a esa interfaz. No obstante, no es posible pasar ``input=None`` " +"para heredar el flujo entrada estándar del padre." #: ../Doc/library/subprocess.rst:1128 msgid "" @@ -1340,6 +1875,9 @@ msgid "" "encoding of the output data may depend on the command being invoked, so the " "decoding to text will often need to be handled at the application level." msgstr "" +"Por omisión, esta función devolverá los datos como bytes codificados. La " +"codificación real de los datos podría depender de la orden invocada, por lo " +"que la descodificación a texto se deberá hacer al nivel de la aplicación." #: ../Doc/library/subprocess.rst:1132 msgid "" @@ -1347,30 +1885,38 @@ msgid "" "*universal_newlines* to ``True`` as described in :ref:`frequently-used-" "arguments` and :func:`run`." msgstr "" +"Este comportamiento se puede modificar estableciendo *text*, *encoding*, " +"*errors*, o *universal_newlines* a ``True``, como se describe en :ref:" +"`frequently-used-arguments` y :func:`run`." #: ../Doc/library/subprocess.rst:1136 msgid "" "To also capture standard error in the result, use ``stderr=subprocess." "STDOUT``::" msgstr "" +"Para capturar el error estándar del resultado se debe usar " +"``stderr=subprocess.STDOUT``::" #: ../Doc/library/subprocess.rst:1150 msgid "Support for the *input* keyword argument was added." -msgstr "" +msgstr "Se añadió soporte para el argumento por clave *input*." #: ../Doc/library/subprocess.rst:1153 msgid "*encoding* and *errors* were added. See :func:`run` for details." msgstr "" +"Se añadieron *encoding* y *errors*. Ver :func:`run` para más detalles." #: ../Doc/library/subprocess.rst:1163 msgid "Replacing Older Functions with the :mod:`subprocess` Module" -msgstr "" +msgstr "Cómo reemplazar anteriores funciones con el módulo :mod:`subprocess`" #: ../Doc/library/subprocess.rst:1165 msgid "" "In this section, \"a becomes b\" means that b can be used as a replacement " "for a." msgstr "" +"En esta sección, \"a se convierte en b\" significa que b se puede usar en " +"lugar de." #: ../Doc/library/subprocess.rst:1169 msgid "" @@ -1378,6 +1924,9 @@ msgid "" "executed program cannot be found; the \"b\" replacements raise :exc:" "`OSError` instead." msgstr "" +"Todas las funciones \"a\" de esta sección fracasan silenciosamente (o casi) " +"si no se halla el programa ejecutado; las funciones de reemplazo \"b\" " +"lanzan :exc:`OSError` en lugar de esto." #: ../Doc/library/subprocess.rst:1173 msgid "" @@ -1386,109 +1935,124 @@ msgid "" "return code. The output is still available as the :attr:`~CalledProcessError." "output` attribute of the raised exception." msgstr "" +"Además, las funciones de reemplazo que usan :func:`check_output` fracasarán " +"con un error :exc:`CalledProcessError` si la operación solicitada produce un " +"código de retorno diferente de cero. La salida queda disponible en el " +"atributo :attr:`~CalledProcessError.output` de la excepción lanzada." #: ../Doc/library/subprocess.rst:1178 msgid "" "In the following examples, we assume that the relevant functions have " "already been imported from the :mod:`subprocess` module." msgstr "" +"En los siguientes ejemplos, se asume que las funciones relevantes ya han " +"sido importadas del módulo :mod:`subprocess`." #: ../Doc/library/subprocess.rst:1183 msgid "Replacing :program:`/bin/sh` shell command substitution" -msgstr "" +msgstr "Cómo reemplazar la sustitución de órdenes de :program:`/bin/sh`" #: ../Doc/library/subprocess.rst:1189 ../Doc/library/subprocess.rst:1200 #: ../Doc/library/subprocess.rst:1217 msgid "becomes::" -msgstr "" +msgstr "se convierte en::" #: ../Doc/library/subprocess.rst:1194 msgid "Replacing shell pipeline" -msgstr "" +msgstr "Cómo remplazar los flujos de la shell" #: ../Doc/library/subprocess.rst:1207 msgid "" "The ``p1.stdout.close()`` call after starting the p2 is important in order " "for p1 to receive a SIGPIPE if p2 exits before p1." msgstr "" +"La llamada a ``p1.stdout.close()`` tras lanzar *p2* es importante para que *p1* " +"reciba un SIGPIPE si *p2* retorna antes que *p1*." #: ../Doc/library/subprocess.rst:1210 msgid "" "Alternatively, for trusted input, the shell's own pipeline support may still " "be used directly:" msgstr "" +"Alternativamente, para entrada de confianza, se puede usar el propio soporte " +"de encaminamiento de la shell directamente:" #: ../Doc/library/subprocess.rst:1223 msgid "Replacing :func:`os.system`" -msgstr "" +msgstr "Cómo reemplazar :func:`os.system`" #: ../Doc/library/subprocess.rst:1231 msgid "Notes:" -msgstr "" +msgstr "Notas:" #: ../Doc/library/subprocess.rst:1233 msgid "Calling the program through the shell is usually not required." -msgstr "" +msgstr "No suele hacer falta llamar al programa a través de la shell." #: ../Doc/library/subprocess.rst:1235 msgid "A more realistic example would look like this::" -msgstr "" +msgstr "Un ejemplo más creíble::" #: ../Doc/library/subprocess.rst:1248 msgid "Replacing the :func:`os.spawn ` family" -msgstr "" +msgstr "Cómo reemplazar la familia :func:`os.spawn `" #: ../Doc/library/subprocess.rst:1250 msgid "P_NOWAIT example::" -msgstr "" +msgstr "Ejemplo de P_NOWAIT::" #: ../Doc/library/subprocess.rst:1256 msgid "P_WAIT example::" -msgstr "" +msgstr "Ejemplo de P_WAIT::" #: ../Doc/library/subprocess.rst:1262 msgid "Vector example::" -msgstr "" +msgstr "Ejemplo de vector::" #: ../Doc/library/subprocess.rst:1268 msgid "Environment example::" -msgstr "" +msgstr "Ejemplo de entorno::" #: ../Doc/library/subprocess.rst:1277 msgid "Replacing :func:`os.popen`, :func:`os.popen2`, :func:`os.popen3`" -msgstr "" +msgstr "Cómo reemplazar :func:`os.popen`, :func:`os.popen2`, :func:`os.popen3`" #: ../Doc/library/subprocess.rst:1307 msgid "Return code handling translates as follows::" -msgstr "" +msgstr "La gestión del código de retorno se traduce así::" #: ../Doc/library/subprocess.rst:1323 msgid "Replacing functions from the :mod:`popen2` module" -msgstr "" +msgstr "Cómo reemplazar las funciones del módulo :mod:`popen2`" #: ../Doc/library/subprocess.rst:1327 msgid "" "If the cmd argument to popen2 functions is a string, the command is executed " "through /bin/sh. If it is a list, the command is directly executed." msgstr "" +"Se el argumento *cmd* de las funciones popen2 es una cadena, la orden se " +"ejecuta a través de `/bin/sh`. Si es una lista, la orden se ejecuta " +"directamente." #: ../Doc/library/subprocess.rst:1346 msgid "" ":class:`popen2.Popen3` and :class:`popen2.Popen4` basically work as :class:" "`subprocess.Popen`, except that:" msgstr "" +":class:`popen2.Popen3` y :class:`popen2.Popen4` funcionan a grandes rasgos " +"como :class:`subprocess.Popen`, salvo:" #: ../Doc/library/subprocess.rst:1349 msgid ":class:`Popen` raises an exception if the execution fails." -msgstr "" +msgstr ":class:`Popen` lanza una excepción si falla la ejecución." #: ../Doc/library/subprocess.rst:1351 msgid "The *capturestderr* argument is replaced with the *stderr* argument." -msgstr "" +msgstr "El argumento *capturestderr* se sustituye por el argumento *stderr*." #: ../Doc/library/subprocess.rst:1353 msgid "``stdin=PIPE`` and ``stdout=PIPE`` must be specified." -msgstr "" +msgstr "Se ha de especificar ``stdin=PIPE`` y ``stdout=PIPE``." #: ../Doc/library/subprocess.rst:1355 msgid "" @@ -1496,10 +2060,13 @@ msgid "" "``close_fds=True`` with :class:`Popen` to guarantee this behavior on all " "platforms or past Python versions." msgstr "" +"popen2 cierra todos los descriptores de fichero por omisión, pero se ha de " +"especificar ``close_fds=True`` con :class:`Popen` para garantizar este " +"comportamiento en todas las plataformas o en versiones anteriores de Python." #: ../Doc/library/subprocess.rst:1361 msgid "Legacy Shell Invocation Functions" -msgstr "" +msgstr "Funciones de llamada a la shell de compatibilidad hacia atrás" #: ../Doc/library/subprocess.rst:1363 msgid "" @@ -1508,10 +2075,15 @@ msgid "" "none of the guarantees described above regarding security and exception " "handling consistency are valid for these functions." msgstr "" +"Este módulo también proporciona las siguientes funciones de compatibilidad " +"del módulo ``commands`` de las versiones 2.X. Estas operaciones invocan " +"implícitamente a la shell del sistema y no se les aplican ninguna de las " +"garantías descritas anteriormente respecto a seguridad o consistencia en la " +"gestión de excepciones." #: ../Doc/library/subprocess.rst:1370 msgid "Return ``(exitcode, output)`` of executing *cmd* in a shell." -msgstr "" +msgstr "Devuelve ``(exitcode, output)`` de ejecutar *cmd* en una shell." #: ../Doc/library/subprocess.rst:1372 msgid "" @@ -1519,20 +2091,27 @@ msgid "" "return a 2-tuple ``(exitcode, output)``. The locale encoding is used; see " "the notes on :ref:`frequently-used-arguments` for more details." msgstr "" +"Ejecuta la cadena *cmd* en una shell con :meth:`Popen.check_output` y " +"devuelve una tupla ``(exitcode, output)``. Se utiliza la codificación de " +"localización activa; consultar las notas sobre :ref:`frequently-used-" +"arguments` para más información." #: ../Doc/library/subprocess.rst:1376 msgid "" "A trailing newline is stripped from the output. The exit code for the " "command can be interpreted as the return code of subprocess. Example::" msgstr "" +"Se elimina un salto de línea final de la salida. El código de salida de la " +"orden se puede interpretar como el código de retorno del subproceso. Por " +"ejemplo::" #: ../Doc/library/subprocess.rst:1390 ../Doc/library/subprocess.rst:1410 msgid ":ref:`Availability `: POSIX & Windows." -msgstr "" +msgstr ":ref:`Disponibilidad `: POSIX y Windows." #: ../Doc/library/subprocess.rst:1391 msgid "Windows support was added." -msgstr "" +msgstr "Se añadió soporte de Windows." #: ../Doc/library/subprocess.rst:1394 msgid "" @@ -1540,28 +2119,34 @@ msgid "" "it did in Python 3.3.3 and earlier. exitcode has the same value as :attr:" "`~Popen.returncode`." msgstr "" +"La función ahora devuelve ``(exitcode, output)`` en lugar de ``(status, output)`` " +"como en Python 3.3.3 y anteriores. *exitcode* tiene el mismo valor que :" +"attr:`~Popen.returncode`." #: ../Doc/library/subprocess.rst:1401 msgid "Return output (stdout and stderr) of executing *cmd* in a shell." -msgstr "" +msgstr "Devuelve la salida (stdout y stderr) de ejecutar *cmd* en una shell." #: ../Doc/library/subprocess.rst:1403 msgid "" "Like :func:`getstatusoutput`, except the exit code is ignored and the return " "value is a string containing the command's output. Example::" msgstr "" +"Como :func:`getstatusoutput`, salvo que se ignora el código de salida y el " +"calor de salida es una cadena que contiene la salida de la orden. Por " +"ejemplo::" #: ../Doc/library/subprocess.rst:1411 msgid "Windows support added" -msgstr "" +msgstr "Se añadió soporte de Windows" #: ../Doc/library/subprocess.rst:1416 msgid "Notes" -msgstr "" +msgstr "Notas" #: ../Doc/library/subprocess.rst:1421 msgid "Converting an argument sequence to a string on Windows" -msgstr "" +msgstr "Cómo convertir una secuencia de argumentos a una cadena en Windows" #: ../Doc/library/subprocess.rst:1423 msgid "" @@ -1569,11 +2154,16 @@ msgid "" "using the following rules (which correspond to the rules used by the MS C " "runtime):" msgstr "" +"En Windows, para convertir una secuencia *args* en una cadena que puede ser " +"analizada con las siguientes reglas (correspondientes a las reglas que usa " +"la biblioteca de ejecución de MS C):" #: ../Doc/library/subprocess.rst:1427 msgid "" "Arguments are delimited by white space, which is either a space or a tab." msgstr "" +"Los argumentos se separan por espacio en blanco, que debe ser un espacio o " +"un tabulador." #: ../Doc/library/subprocess.rst:1430 msgid "" @@ -1581,18 +2171,25 @@ msgid "" "argument, regardless of white space contained within. A quoted string can " "be embedded in an argument." msgstr "" +"Una cadena entre comillas dobles se interpreta como un argumento simple, sin " +"importar los espacios en blanco que contenga. Se puede incrustar una cadena " +"entre comillas en un argumento." #: ../Doc/library/subprocess.rst:1435 msgid "" "A double quotation mark preceded by a backslash is interpreted as a literal " "double quotation mark." msgstr "" +"Una comilla doble precedida de una barra invertida se interpreta " +"literalmente como una comilla doble." #: ../Doc/library/subprocess.rst:1438 msgid "" "Backslashes are interpreted literally, unless they immediately precede a " "double quotation mark." msgstr "" +"Las barras invertidas se interpretan literalmente, salvo que precedan a una " +"comilla doble." #: ../Doc/library/subprocess.rst:1441 msgid "" @@ -1601,11 +2198,16 @@ msgid "" "backslashes is odd, the last backslash escapes the next double quotation " "mark as described in rule 3." msgstr "" +"Si las barras invertidas preceden inmediatamente a una doble comilla, cada " +"par de barras invertidas se interpreta como una barra invertida literal. Si " +"el número de barras invertidas es impar, la última barra invertida escapa la " +"siguiente comilla doble según se describe en la regla 3." #: ../Doc/library/subprocess.rst:1450 msgid ":mod:`shlex`" -msgstr "" +msgstr ":mod:`shlex`" #: ../Doc/library/subprocess.rst:1451 msgid "Module which provides function to parse and escape command lines." msgstr "" +"Módulo que proporciona una función para analizar y escapar líneas de órdenes." From 9ddb5e94d29d06fa7061736d8f3f305f64cfc97b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20S=C3=A1nchez=20Provencio?= Date: Tue, 19 May 2020 11:17:44 +0200 Subject: [PATCH 2/8] wrap --- library/subprocess.po | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/library/subprocess.po b/library/subprocess.po index 43183f2a3f..6ccca051fc 100644 --- a/library/subprocess.po +++ b/library/subprocess.po @@ -234,8 +234,8 @@ msgid "" "stdout was not captured." msgstr "" "La salida estándar capturada del proceso hijo. Una secuencia de bytes, o una " -"cadena si se llamó a :func:`run` con *encoding*, *errors*, o *text* establecidos a ``True``. ``None`` " -"si no se capturó el error estándar." +"cadena si se llamó a :func:`run` con *encoding*, *errors*, o *text* " +"establecidos a ``True``. ``None`` si no se capturó el error estándar." #: ../Doc/library/subprocess.rst:136 msgid "" @@ -325,8 +325,8 @@ msgid "" "Stderr output of the child process if it was captured by :func:`run`. " "Otherwise, ``None``." msgstr "" -"Salida de *stderr* del proceso hijo si fue capturada por :func:`run`. De otro " -"modo, ``None``." +"Salida de *stderr* del proceso hijo si fue capturada por :func:`run`. De " +"otro modo, ``None``." #: ../Doc/library/subprocess.rst:211 ../Doc/library/subprocess.rst:242 msgid "*stdout* and *stderr* attributes added" @@ -689,8 +689,8 @@ msgid "" ":const:`0` means unbuffered (read and write are one system call and can " "return short)" msgstr "" -":const:`0` significa sin búfer (*read* y *write* son una llamada al sistema y " -"pueden retornar datos parciales)" +":const:`0` significa sin búfer (*read* y *write* son una llamada al sistema " +"y pueden retornar datos parciales)" #: ../Doc/library/subprocess.rst:431 msgid "" @@ -807,8 +807,8 @@ msgid "" msgstr "" "No es seguro utilizar el parámetro *preexec_fn* en presencia de hilos de " "ejecución en la aplicación. El proceso hijo podría bloquearse antes de " -"llamar a `exec`. ¡Si es imprescindible, que sea tan simple como sea posible! " -"Se ha de minimizar el número de librerías a las que se llama." +"llamar a `exec`. ¡Si es imprescindible, que sea tan simple como sea " +"posible! Se ha de minimizar el número de librerías a las que se llama." #: ../Doc/library/subprocess.rst:487 msgid "" @@ -831,8 +831,8 @@ msgid "" msgstr "" "Se ha abandonado el soporte de *preexec_fn* en subintérpretes. El uso de " "dicho parámetro en un subintérprete lanza :exc:`RuntimeError`. La nueva " -"restricción puede afectar a aplicaciones desplegadas en *mod_wsgi*, *uWSGI* y " -"otros entornos incrustados." +"restricción puede afectar a aplicaciones desplegadas en *mod_wsgi*, *uWSGI* " +"y otros entornos incrustados." #: ../Doc/library/subprocess.rst:499 msgid "" @@ -1347,8 +1347,8 @@ msgid "" "the child." msgstr "" "Detener el proceso hijo. En SO POSIX, este método envía SIGTERM al proceso " -"hijo. En Windows se llama a la función :c:func:`TerminateProcess` " -"de la API de Win32 para detener el proceso hijo." +"hijo. En Windows se llama a la función :c:func:`TerminateProcess` de la API " +"de Win32 para detener el proceso hijo." #: ../Doc/library/subprocess.rst:765 msgid "" @@ -1966,8 +1966,8 @@ msgid "" "The ``p1.stdout.close()`` call after starting the p2 is important in order " "for p1 to receive a SIGPIPE if p2 exits before p1." msgstr "" -"La llamada a ``p1.stdout.close()`` tras lanzar *p2* es importante para que *p1* " -"reciba un SIGPIPE si *p2* retorna antes que *p1*." +"La llamada a ``p1.stdout.close()`` tras lanzar *p2* es importante para que " +"*p1* reciba un SIGPIPE si *p2* retorna antes que *p1*." #: ../Doc/library/subprocess.rst:1210 msgid "" @@ -2119,9 +2119,9 @@ msgid "" "it did in Python 3.3.3 and earlier. exitcode has the same value as :attr:" "`~Popen.returncode`." msgstr "" -"La función ahora devuelve ``(exitcode, output)`` en lugar de ``(status, output)`` " -"como en Python 3.3.3 y anteriores. *exitcode* tiene el mismo valor que :" -"attr:`~Popen.returncode`." +"La función ahora devuelve ``(exitcode, output)`` en lugar de ``(status, " +"output)`` como en Python 3.3.3 y anteriores. *exitcode* tiene el mismo " +"valor que :attr:`~Popen.returncode`." #: ../Doc/library/subprocess.rst:1401 msgid "Return output (stdout and stderr) of executing *cmd* in a shell." From 1d1b15045becefb5bf711151a22c97ecbe406e65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20S=C3=A1nchez=20Provencio?= Date: Mon, 25 May 2020 10:34:35 +0200 Subject: [PATCH 3/8] wip --- .pre-commit-config.yaml | 18 --- TRANSLATORS | 3 +- library/unittest.po | 245 +++++++++++++++++++++++++++++++++++----- 3 files changed, 218 insertions(+), 48 deletions(-) delete mode 100644 .pre-commit-config.yaml diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml deleted file mode 100644 index da64388c62..0000000000 --- a/.pre-commit-config.yaml +++ /dev/null @@ -1,18 +0,0 @@ -repos: -- repo: https://github.com/humitos/powrap - rev: pre-commit - hooks: - - id: powrap - -# This one requires package ``hunspell-es_es`` in Archlinux -- repo: https://github.com/humitos/pospell - rev: pre-commit - hooks: - - id: pospell - args: ['--personal-dict', 'dict', '--modified', '--language', 'es_ES', '--language', 'es_AR'] - -- repo: https://github.com/pre-commit/pre-commit-hooks - rev: v2.5.0 - hooks: - - id: file-contents-sorter - files: dict diff --git a/TRANSLATORS b/TRANSLATORS index 36d93e106d..07bef91587 100644 --- a/TRANSLATORS +++ b/TRANSLATORS @@ -12,4 +12,5 @@ Marco Richetta (@marcorichetta) Sergio Delgado Quintero (@sdelquin) Silvina Tamburini (@silvinabt87) Javier Daza (@javierdaza) -Agustina Quiros (@qagustina) \ No newline at end of file +Agustina Quiros (@qagustina) +Marcos Sánchez Provencio (@rapto) diff --git a/library/unittest.po b/library/unittest.po index 9a1fe562cf..765b1c5455 100644 --- a/library/unittest.po +++ b/library/unittest.po @@ -5,34 +5,40 @@ # https://mail.python.org/mailman3/lists/docs-es.python.org/ # Check https://github.com/PyCampES/python-docs-es/blob/3.8/TRANSLATORS to # get the list of volunteers +# Marcos Sánchez Provencio , 2020. # -#, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.8\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-05-05 12:54+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: python-doc-es\n" +"PO-Revision-Date: 2020-05-25 10:21+0200\n" +"Language-Team: Spanish; Castilian \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" "Generated-By: Babel 2.8.0\n" +"Plural-Forms: nplurals=2; plural=(n != 1)\n" +"Last-Translator: Marcos Sánchez Provencio \n" +"Language: es\n" +"X-Generator: Gtranslator 3.36.0\n" #: ../Doc/library/unittest.rst:2 msgid ":mod:`unittest` --- Unit testing framework" -msgstr "" +msgstr ":mod:`unittest` --- Infraestructura de pruebas unitarias" #: ../Doc/library/unittest.rst:12 msgid "**Source code:** :source:`Lib/unittest/__init__.py`" -msgstr "" +msgstr "**Código fuente:** :source:`Lib/unittest/__init__.py`" #: ../Doc/library/unittest.rst:16 msgid "" "(If you are already familiar with the basic concepts of testing, you might " "want to skip to :ref:`the list of assert methods `.)" msgstr "" +"(Si hay un conocimiento previo\n" +" de los conceptos básicos de las pruebas, se puede saltar a :ref:`la lista " +"de métodos de aserción `.)" #: ../Doc/library/unittest.rst:19 msgid "" @@ -42,16 +48,26 @@ msgid "" "for tests, aggregation of tests into collections, and independence of the " "tests from the reporting framework." msgstr "" +"La infraestructura de pruebas unitarias :mod:`unittest` se inspiró en " +"primera instancia en JUnit y ofrece aspectos similares a las principales " +"estructuras de pruebas uinitarias más importantes de otros lenguajes. Da " +"soporte a automatización de pruebas, inicialización compartida y código de " +"cierre de las pruebas.\n" +" and has a similar flavor as major unit testing frameworks in other " +"languages. It supports test automation, sharing of setup and shutdown code " +"for tests." #: ../Doc/library/unittest.rst:25 msgid "" "To achieve this, :mod:`unittest` supports some important concepts in an " "object-oriented way:" msgstr "" +"Para llevar esto a cabo, :mod:`unittest` da soporte a ciertos conceptos de " +"importancia mediante orientación a objetos:" #: ../Doc/library/unittest.rst:32 msgid "test fixture" -msgstr "" +msgstr "juego de datos de prueba" #: ../Doc/library/unittest.rst:29 msgid "" @@ -60,10 +76,16 @@ msgid "" "example, creating temporary or proxy databases, directories, or starting a " "server process." msgstr "" +"Un :dfn:`juego de datos de prueba` representa los preparativos para realizar " +"una o más pruebas y las acciones de limpieza asociadas. Esto puede incluir, " +"por ejemplo, la creación de bases de datos temporales o represents the " +"preparation needed to perform one or more tests, and any associated cleanup " +"actions. This may involve, for example, creating temporary or proxy " +"databases, directories, or starting a server process." #: ../Doc/library/unittest.rst:37 msgid "test case" -msgstr "" +msgstr "caso de prueba" #: ../Doc/library/unittest.rst:35 msgid "" @@ -71,20 +93,26 @@ msgid "" "specific response to a particular set of inputs. :mod:`unittest` provides a " "base class, :class:`TestCase`, which may be used to create new test cases." msgstr "" +"Un :dfn:`caso de prueba` es la unidad mínima de prueba. Verifica la " +"respuesta específica a un juego particular de entradas. :mod:`unittest` " +"proporciona una clase base, :class:`TestCase`, que se puede utilizar para " +"crear nuevos casos de uso." #: ../Doc/library/unittest.rst:41 msgid "test suite" -msgstr "" +msgstr "juego de pruebas" #: ../Doc/library/unittest.rst:40 msgid "" "A :dfn:`test suite` is a collection of test cases, test suites, or both. It " "is used to aggregate tests that should be executed together." msgstr "" +"Un :dfn:`juego de pruebas` es una colección de casos de prueba, juegos de " +"prueba o ambos. Se usa para agrupar pruebas que se han de ejecutar juntas." #: ../Doc/library/unittest.rst:48 msgid "test runner" -msgstr "" +msgstr "ejecutor de pruebas" #: ../Doc/library/unittest.rst:44 msgid "" @@ -93,60 +121,78 @@ msgid "" "interface, a textual interface, or return a special value to indicate the " "results of executing the tests." msgstr "" +"Un :dfn:`ejecutor de pruebas` es un componente que dirige la ejecución de " +"las pruebas yy proporciona un resultado. El ejecutor puede disponer de una " +"interfaz gráfica, de texto o devolver un valor especial que indique el " +"resultado de la ejecución de las pruebas." #: ../Doc/library/unittest.rst:53 msgid "Module :mod:`doctest`" -msgstr "" +msgstr "Módulo :mod:`doctest`" #: ../Doc/library/unittest.rst:53 msgid "Another test-support module with a very different flavor." -msgstr "" +msgstr "Otro módulo de soporte a pruebas con una solución muy diferente." #: ../Doc/library/unittest.rst:57 msgid "" "`Simple Smalltalk Testing: With Patterns `_" msgstr "" +"`Simple Smalltalk Testing: With Patterns `_" #: ../Doc/library/unittest.rst:56 msgid "" "Kent Beck's original paper on testing frameworks using the pattern shared " "by :mod:`unittest`." msgstr "" +"El documento original de Kent Beck sobre infraestructuras de prueba mediante " +"el patrón que utiliza :mod:`unittest`." #: ../Doc/library/unittest.rst:61 msgid "`pytest `_" -msgstr "" +msgstr "`pytest `_" #: ../Doc/library/unittest.rst:60 msgid "" "Third-party unittest framework with a lighter-weight syntax for writing " "tests. For example, ``assert func(10) == 42``." msgstr "" +"Una infraestructura de pruebas unitarias de otro proveedor con una sintaxis " +"más ligera de escritura de pruebas, por ejemplo: ``assert func(10) == 42``." #: ../Doc/library/unittest.rst:65 msgid "" "`The Python Testing Tools Taxonomy `_" msgstr "" +"`The Python Testing Tools Taxonomy `_" #: ../Doc/library/unittest.rst:64 msgid "" "An extensive list of Python testing tools including functional testing " "frameworks and mock object libraries." msgstr "" +"Una lista extensa de herramientas de prueba para Python. incluyendo " +"infraestructuras de pruebas funcionales y librerías de objetos sucedáneos." #: ../Doc/library/unittest.rst:69 msgid "" "`Testing in Python Mailing List `_" msgstr "" +"`Testing in Python Mailing List `_" #: ../Doc/library/unittest.rst:68 msgid "" "A special-interest-group for discussion of testing, and testing tools, in " "Python." msgstr "" +"Grupo especializado en debate sobre las pruebas y las herramientas de prueba " +"de Python." #: ../Doc/library/unittest.rst:71 msgid "" @@ -157,10 +203,17 @@ msgid "" "continuous integration system such as `Buildbot `_, " "`Jenkins `_ or `Hudson `_." msgstr "" +"El script :file:`Tools/unittestgui/unittestgui.py` de la distribución de " +"fuentes de Python es una herramienta gráfica para el descubrimiento y " +"ejecución de pruebas. Está orientado sobre todo a principiantes en el tema " +"de pruebas. Para entornos de producción se recomienda que las pruebas sean " +"dirigidas por un sistema de integración continua como `Buildbot `_, `Jenkins `_ o `Hudson `_." #: ../Doc/library/unittest.rst:82 msgid "Basic example" -msgstr "" +msgstr "Ejemplo sencillo" #: ../Doc/library/unittest.rst:84 msgid "" @@ -168,10 +221,14 @@ msgid "" "running tests. This section demonstrates that a small subset of the tools " "suffice to meet the needs of most users." msgstr "" +"El módulo :mod:`unittest` proporciona una panoplia de herramientas para " +"construir y ejecutar pruebas. Esta sección demuestra que un pequeño " +"subconjunto de las herramientas es suficiente para satisfacer las " +"necesidades de la mayoría." #: ../Doc/library/unittest.rst:88 msgid "Here is a short script to test three string methods::" -msgstr "" +msgstr "He aquí un breve script para probar estros tres métodos de cadena::" #: ../Doc/library/unittest.rst:112 msgid "" @@ -180,6 +237,10 @@ msgid "" "``test``. This naming convention informs the test runner about which " "methods represent tests." msgstr "" +"Para crear un caso de prueba se genera una subclase de :class:`unittest." +"TestCase`. Las tres pruebas se definen con métodos cuyos nombres comienzan " +"por las letras ``test``. Esta convención sobre nombres indica al ejecutor de " +"pruebas qué métodos representan pruebas." #: ../Doc/library/unittest.rst:117 msgid "" @@ -190,6 +251,13 @@ msgid "" "instead of the :keyword:`assert` statement so the test runner can accumulate " "all test results and produce a report." msgstr "" +"El quid de cada test es la llamada a :meth:`~TestCase.assertEqual` para " +"verificar un resultado esperado; :meth:`~TestCase.assertTrue` o :meth:" +"`~TestCase.assertFalse` para verificar una condición; o :meth:`~TestCase." +"assertRaises` para asegurar que se lanza una excepción específica. Se " +"utilizan estos métodos en lugar de la sentencia :keyword:`assert` para que " +"el ejecutor de pruebas pueda acumular todos los resultados de la prueba de " +"cara a realizar un informe." #: ../Doc/library/unittest.rst:124 msgid "" @@ -198,6 +266,10 @@ msgid "" "method. They are covered in more detail in the section :ref:`organizing-" "tests`." msgstr "" +"Los métodos :meth:`~TestCase.setUp` y :meth:`~TestCase.tearDown` permiten " +"definir instrucciones que han de ser ejecutadas antes y después, " +"respectivamente, de cada método de prueba. Se describen con mas detalle en " +"la sección :ref:`organizing-tests`." #: ../Doc/library/unittest.rst:128 msgid "" @@ -205,6 +277,10 @@ msgid "" "provides a command-line interface to the test script. When run from the " "command line, the above script produces an output that looks like this::" msgstr "" +"El bloque final muestra un modo sencillo de ejecutar las pruebas. :func:" +"`unittest.main` proporciona una interfaz de línea de órdenes para el script " +"de prueba. Cuando se ejecuta desde la línea de órdenes, el script anterior " +"produce una salida como::" #: ../Doc/library/unittest.rst:138 msgid "" @@ -212,6 +288,9 @@ msgid "" "main` to enable a higher level of verbosity, and produce the following " "output::" msgstr "" +"Si se le pasa una opción ``-v`` al script de prueba, se establecerá un nivel " +"mayor de detalle del proceso de :func:`unittest.main` y se obtendrá la " +"siguiente salida::" #: ../Doc/library/unittest.rst:150 msgid "" @@ -219,26 +298,35 @@ msgid "" "which are sufficient to meet many everyday testing needs. The remainder of " "the documentation explores the full feature set from first principles." msgstr "" +"Los ejemplos anteriores muestra las características más usuales de :mod:" +"`unittest`, que son suficientes para solventar las necesidades cotidianas de " +"pruebas. El resto de la documentación explora el juego completo de " +"características, que abundan en los mismos principios." #: ../Doc/library/unittest.rst:158 msgid "Command-Line Interface" -msgstr "" +msgstr "Interfaz de línea de órdenes" #: ../Doc/library/unittest.rst:160 msgid "" "The unittest module can be used from the command line to run tests from " "modules, classes or even individual test methods::" msgstr "" +"Se puede usar el módulo `unittest` desde la línea de órdenes para ejecutar " +"pruebas de módulos, clases o hasta métodos de prueba individuales::" #: ../Doc/library/unittest.rst:167 msgid "" "You can pass in a list with any combination of module names, and fully " "qualified class or method names." msgstr "" +"Se puede pasar una lista con cualquier combinación de nombres de módulo, así " +"como clases o métodos completamente cualificados." #: ../Doc/library/unittest.rst:170 msgid "Test modules can be specified by file path as well::" msgstr "" +"Se puede especificar los módulos de prueba por ruta de fichero también::" #: ../Doc/library/unittest.rst:174 msgid "" @@ -248,35 +336,47 @@ msgid "" "separators into '.'. If you want to execute a test file that isn't " "importable as a module you should execute the file directly instead." msgstr "" +"Esto permite usar el completado automático de nombre de fichero de la shell " +"para especificar el módulo de pruebas. El fichero especificado aún debe ser " +"susceptible de importarse como módulo. La ruta se convierte en nombre de " +"módulo eliminando '.py' y convirtiendo el separador de directorios por '.'. " +"Si se desea ejecutar un fichero de prueba que no se puede importar como " +"módulo, se ha de ejecutar el fichero directamente" #: ../Doc/library/unittest.rst:180 msgid "" "You can run tests with more detail (higher verbosity) by passing in the -v " "flag::" msgstr "" +"Se pueden ejecutar las pruebas con más nivel de detalle (mayor verbosidad) " +"pasando el indicador `-v`::" #: ../Doc/library/unittest.rst:184 msgid "" "When executed without arguments :ref:`unittest-test-discovery` is started::" msgstr "" +"Cuando se ejecuta sin argumentos, se inicia :ref:`unittest-test-discovery`::" #: ../Doc/library/unittest.rst:188 msgid "For a list of all the command-line options::" -msgstr "" +msgstr "Para obtener una lista de todas las opciones de línea de órdenes::" #: ../Doc/library/unittest.rst:192 msgid "" "In earlier versions it was only possible to run individual test methods and " "not modules or classes." msgstr "" +"En versiones anteriores sólo era posible ejecutar métodos de prueba " +"individuales, pero no módulos ni clases." #: ../Doc/library/unittest.rst:198 msgid "Command-line options" -msgstr "" +msgstr "Opciones de la línea de órdenes" #: ../Doc/library/unittest.rst:200 msgid ":program:`unittest` supports these command-line options:" msgstr "" +":program:`unittest` da soporte a las siguientes opciones de línea de órdenes:" #: ../Doc/library/unittest.rst:206 msgid "" @@ -284,6 +384,10 @@ msgid "" "run. Output during a passing test is discarded. Output is echoed normally on " "test fail or error and is added to the failure messages." msgstr "" +"Los flujos de datos de salida estándar y error estándar se acumulan en un " +"búfer durante la ejecución de pruebas. La salida de las pruebas correctas se " +"descarta. La salida de las pruebas que fallan o devuelven un error se añade " +"a los mensajes de fallo." #: ../Doc/library/unittest.rst:212 msgid "" @@ -291,15 +395,21 @@ msgid "" "then reports all the results so far. A second :kbd:`Control-C` raises the " "normal :exc:`KeyboardInterrupt` exception." msgstr "" +"La pulsación de :kbd:`Control-C` durante la ejecución de pruebas espera a " +"que termine la prueba en curso y da un informe de los resultados hasta ese " +"mimento. Una sgunda pulsación de :kbd:`Control-C` lanza la excepción :exc:" +"`KeyboardInterrupt` usual." #: ../Doc/library/unittest.rst:216 msgid "" "See `Signal Handling`_ for the functions that provide this functionality." msgstr "" +"Consultar en `Gestión de señales`_ las funciones que proporcionan esta " +"funcionalidad." #: ../Doc/library/unittest.rst:220 msgid "Stop the test run on the first error or failure." -msgstr "" +msgstr "Finaliza la ejecución tras el primer error o fallo." #: ../Doc/library/unittest.rst:224 msgid "" @@ -307,6 +417,10 @@ msgid "" "option may be used multiple times, in which case all test cases that match " "of the given patterns are included." msgstr "" +"Ejecutar solamente los métodos y clases de prueba que coincidan con el " +"patrón o subcadena. Esta opción se puede usar más de una vez, en cuyo caso " +"se incluirán todos los casos de prueba que coincidan con cualquiera de los " +"patrones dados." #: ../Doc/library/unittest.rst:228 msgid "" @@ -314,12 +428,17 @@ msgid "" "test name using :meth:`fnmatch.fnmatchcase`; otherwise simple case-sensitive " "substring matching is used." msgstr "" +"Los patrones que contengan un comodín (``*``) se comprueban contra el nombre " +"de la prueba usando :meth:`fnmatch.fnmatchcase`; si no lo contienen, se usa " +"una comprobación de contenido simple sensible a mayúsculas." #: ../Doc/library/unittest.rst:232 msgid "" "Patterns are matched against the fully qualified test method name as " "imported by the test loader." msgstr "" +"Los patrones se comprueban contra el nombre del método completamente " +"cualificado como lo importa el cargador de pruebas." #: ../Doc/library/unittest.rst:235 msgid "" @@ -327,32 +446,38 @@ msgid "" "``bar_tests.SomeTest.test_foo``, but not ``bar_tests.FooTest." "test_something``." msgstr "" +"Por ejemplo, ``-k foo`` casa con ``foo_tests.SomeTest.test_something`` y " +"con``bar_tests.SomeTest.test_foo``, pero no con ``bar_tests.FooTest." +"test_something``." #: ../Doc/library/unittest.rst:240 msgid "Show local variables in tracebacks." -msgstr "" +msgstr "Mostrar las variables locales en las trazas" #: ../Doc/library/unittest.rst:242 msgid "The command-line options ``-b``, ``-c`` and ``-f`` were added." msgstr "" +"Se añadieron las opciones de línea de órdenes ``-b``, ``-c`` and ``-f``." #: ../Doc/library/unittest.rst:245 msgid "The command-line option ``--locals``." -msgstr "" +msgstr "La opción de línea de órdenes ``--locals``." #: ../Doc/library/unittest.rst:248 msgid "The command-line option ``-k``." -msgstr "" +msgstr "La opción de línea de órdenes ``-k``." #: ../Doc/library/unittest.rst:251 msgid "" "The command line can also be used for test discovery, for running all of the " "tests in a project or just a subset." msgstr "" +"La línea de órdenes también se puede usar para descubrimiento de pruebas, " +"para ejecutar todas las pruebas de un proyecto o un subconjunto de éstas." #: ../Doc/library/unittest.rst:258 msgid "Test Discovery" -msgstr "" +msgstr "Descubrimiento de pruebas" #: ../Doc/library/unittest.rst:262 msgid "" @@ -363,12 +488,21 @@ msgid "" "(this means that their filenames must be valid :ref:`identifiers " "`)." msgstr "" +"Unittest da soporte al descubrimiento de pruebas simples. Para ser " +"compatible con el descrubrimiento de pruebas, todos los ficheros de prueba " +"deben ser :ref:`módulos ` o :ref:`paquetes ` " +"(incluyendo :term:`paquetes nominales `) importables " +"desde el directorio superior del proyecto (por lo que sus nombres han de " +"ser :ref:`identificadores ` válidos)." #: ../Doc/library/unittest.rst:269 msgid "" "Test discovery is implemented in :meth:`TestLoader.discover`, but can also " "be used from the command line. The basic command-line usage is::" msgstr "" +"El descubrimiento de pruebas está implementado en :meth:`TestLoader." +"discover`, pero también se puede usar desde la línea de órdenes. La línea de " +"órdenes básica es::" #: ../Doc/library/unittest.rst:277 msgid "" @@ -376,26 +510,30 @@ msgid "" "unittest discover``. If you want to pass arguments to test discovery the " "``discover`` sub-command must be used explicitly." msgstr "" +"Como atajo, ``python -m unittest`` es el equivalente de ``python -m unittest " +"discover``. Si se desea pasar argumentos al descubrimiento de pruebas, hay " +"que pasar la sub-orden ``discover`` explícitamente." #: ../Doc/library/unittest.rst:281 msgid "The ``discover`` sub-command has the following options:" -msgstr "" +msgstr "La sub-orden ``discover`` cuenta con las siguientes opciones:" #: ../Doc/library/unittest.rst:287 msgid "Verbose output" -msgstr "" +msgstr "Salida verbosa" #: ../Doc/library/unittest.rst:291 msgid "Directory to start discovery (``.`` default)" -msgstr "" +msgstr "Directorio de inicio para el descubrimiento (``.`` si se omite)" #: ../Doc/library/unittest.rst:295 msgid "Pattern to match test files (``test*.py`` default)" msgstr "" +"Patrón para la búsqueda de ficheros de prueba (``test*.py`` si se omite)" #: ../Doc/library/unittest.rst:299 msgid "Top level directory of project (defaults to start directory)" -msgstr "" +msgstr "Directorio superior del proyecto (el directorio inicial si se omite)" #: ../Doc/library/unittest.rst:301 msgid "" @@ -403,6 +541,9 @@ msgid "" "positional arguments in that order. The following two command lines are " "equivalent::" msgstr "" +"Las opciones :option:`-s`, :option:`-p`, y :option:`-t` se pueden pasar por " +"posición en el orden mostrado. Las siguientes líneas de órdenes son " +"equivalentes::" #: ../Doc/library/unittest.rst:308 msgid "" @@ -411,6 +552,10 @@ msgid "" "supply will then be imported and its location on the filesystem will be used " "as the start directory." msgstr "" +"Además de pasar una ruta, es posible pasar el nombre de un paquete, por " +"ejemplo ``myproject.subpackage.test``, como directorio de inicio. El nombre " +"de paquete proporcionado será importado y su ubicación en el sistema de " +"archivos será utilizada como directorio de inicio." #: ../Doc/library/unittest.rst:315 msgid "" @@ -419,6 +564,11 @@ msgid "" "into package names to import. For example :file:`foo/bar/baz.py` will be " "imported as ``foo.bar.baz``." msgstr "" +"El descubrimiento de pruebas carga las pruebas importándolas. Una vez que el " +"descubrimiento ha encontrado todos los ficheros de prueba a partir del " +"directorio inicial, especificado, convierte las rutas en nombres de paquetes " +"a importar. Por ejemplo, :file:`foo/bar/baz.py` será importado como ``foo." +"bar.baz``." #: ../Doc/library/unittest.rst:320 msgid "" @@ -426,6 +576,10 @@ msgid "" "different copy of the package then the import *could* happen from the wrong " "place. If this happens test discovery will warn you and exit." msgstr "" +"Si hay un paquete instalado globalmente y se intenta hacer un descubrimiento " +"sobre una copia diferente a la instalada del paquete, *podría* ocurrir que " +"se importe la versión incorrecta. Si ocurre esto, el descubrimiento lanza " +"una advertencia y abandona." #: ../Doc/library/unittest.rst:324 msgid "" @@ -433,20 +587,27 @@ msgid "" "directory then discover assumes that whichever location it imports from is " "the location you intended, so you will not get the warning." msgstr "" +"Si se proporciona el directorio de inicio como nombre de paquete en lugar de " +"ruta a un directorio, el descubrimiento asume que la ubicación importada es " +"la deseada, así que no se da la advertencia descrita." #: ../Doc/library/unittest.rst:329 msgid "" "Test modules and packages can customize test loading and discovery by " "through the `load_tests protocol`_." msgstr "" +"Los módulos y paquetes de prueba pueden personalizar la carta y " +"descubrimiento de pruebas mediante el `protocolo load_tests`_." #: ../Doc/library/unittest.rst:332 msgid "Test discovery supports :term:`namespace packages `." msgstr "" +"El descobrimiento de pruebas admite :term:`paquetes nominales `." #: ../Doc/library/unittest.rst:339 msgid "Organizing test code" -msgstr "" +msgstr "Organización del código de pruebas" #: ../Doc/library/unittest.rst:341 msgid "" @@ -456,6 +617,12 @@ msgid "" "instances. To make your own test cases you must write subclasses of :class:" "`TestCase` or use :class:`FunctionTestCase`." msgstr "" +"Los bloques de construcción básicos de las pruebas unitarias son los :dfn:" +"`casos de prueba`, escenarios simpes que se han de configurar y cuya " +"corrección hay que comprobar. En :mod:`unittest`, los casos de prueba están " +"representados por instancias de :class:`unittest.TestCase`. Para crear " +"nuevos casos de prueba, hay que escribir subclases de :class:`TestCase` o " +"usar :class:`FunctionTestCase`." #: ../Doc/library/unittest.rst:347 msgid "" @@ -463,6 +630,9 @@ msgid "" "contained, such that it can be run either in isolation or in arbitrary " "combination with any number of other test cases." msgstr "" +"El código de pruebas de una instancia de :class:`TestCase` debería ser " +"completamente autónomo. de tal modo que se pueda ejecutar aisladamente o en " +"una combinación arbitraria con otras clases de prueba." #: ../Doc/library/unittest.rst:351 msgid "" @@ -470,6 +640,9 @@ msgid "" "(i.e. a method whose name starts with ``test``) in order to perform specific " "testing code::" msgstr "" +"La subclase más simple de :class:`TestCase` se limita a implementar un " +"método `test` (o un método que empiece por `test`) para realizar código de " +"prueba específico::" #: ../Doc/library/unittest.rst:362 msgid "" @@ -479,6 +652,11 @@ msgid "" "will identify the test case as a :dfn:`failure`. Any other exceptions will " "be treated as :dfn:`errors`." msgstr "" +"Adviértase que para probar algo, usamos uno de los métodos :meth:`assert\\*` " +"proporcionados por la clase base :class:`TestCase`. Si la prueba no tiene " +"éxito, se lanzará una excepción con un mensaje explicativo y `unittest` " +"identificará el caso como :dfn:`fallo`. Cualquier otra excepción se " +"considerará un :dfn:`error`." #: ../Doc/library/unittest.rst:368 msgid "" @@ -487,12 +665,18 @@ msgid "" "setUp`, which the testing framework will automatically call for every single " "test we run::" msgstr "" +"Las pruebas pueden ser muchas y su preparación puede ser repetitiva. Por " +"suerte, se puede \"sacar factor común\" a la preparación implementando un " +"método :meth:`~TestCase.setUp`, al que la infraestructura de prueba llamará " +"para cada prueba que se ejecute::" #: ../Doc/library/unittest.rst:389 msgid "" "The order in which the various tests will be run is determined by sorting " "the test method names with respect to the built-in ordering for strings." msgstr "" +"El orden en que se ejecutan las diversas pruebas se determina por orden " +"alfabético de los nombres de métodos de prueba." #: ../Doc/library/unittest.rst:393 msgid "" @@ -500,6 +684,9 @@ msgid "" "running, the framework will consider the test to have suffered an error, and " "the test method will not be executed." msgstr "" +"Si el método :meth:`~TestCase.setUp` lanza una excepción mientras se ejecuta " +"la prueba, la infraestructura considerará que la prueba ha sufrido un error " +"y no se ejecutará el método de prueba propiamente dicho." #: ../Doc/library/unittest.rst:397 msgid "" From 32b090d79e1f468e3515817fbccd9c4784643434 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20S=C3=A1nchez=20Provencio?= Date: Mon, 25 May 2020 10:38:37 +0200 Subject: [PATCH 4/8] wip --- .pre-commit-config.yaml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .pre-commit-config.yaml diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000000..9155cd4503 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,18 @@ +repos: + #- repo: https://github.com/humitos/powrap + # rev: master + # hooks: + # - id: powrap + +# This one requires package ``hunspell-es_es`` in Archlinux +- repo: https://github.com/humitos/pospell + rev: pre-commit + hooks: + - id: pospell + args: ['--personal-dict', 'dict', '--modified', '--language', 'es_ES', '--language', 'es_AR'] + +- repo: https://github.com/pre-commit/pre-commit-hooks + rev: v2.5.0 + hooks: + - id: file-contents-sorter + files: dict From f9f733c0d3e96276d9e275b78fe88d36ee1136ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20S=C3=A1nchez=20Provencio?= Date: Mon, 25 May 2020 10:42:11 +0200 Subject: [PATCH 5/8] wip --- .pre-commit-config.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 9155cd4503..7beda0761d 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,8 +1,8 @@ repos: - #- repo: https://github.com/humitos/powrap - # rev: master - # hooks: - # - id: powrap +- repo: https://github.com/JulienPalard/powrap + rev: master + hooks: + - id: powrap # This one requires package ``hunspell-es_es`` in Archlinux - repo: https://github.com/humitos/pospell From bc366ce79ad66820506bf39146a318984522adde Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20S=C3=A1nchez=20Provencio?= Date: Mon, 25 May 2020 10:42:50 +0200 Subject: [PATCH 6/8] wip --- TRANSLATORS | 1 + 1 file changed, 1 insertion(+) diff --git a/TRANSLATORS b/TRANSLATORS index 07bef91587..dfd9afdf86 100644 --- a/TRANSLATORS +++ b/TRANSLATORS @@ -14,3 +14,4 @@ Silvina Tamburini (@silvinabt87) Javier Daza (@javierdaza) Agustina Quiros (@qagustina) Marcos Sánchez Provencio (@rapto) + From 51d01c7fd3392761e18395cd98f543827c79c202 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20S=C3=A1nchez=20Provencio?= Date: Mon, 25 May 2020 10:59:31 +0200 Subject: [PATCH 7/8] wip --- dict | 50 ++++++++++++++++++++++++--------------------- library/unittest.po | 34 +++++++++++++----------------- 2 files changed, 41 insertions(+), 43 deletions(-) diff --git a/dict b/dict index c576b0afc9..7edf47b5b1 100644 --- a/dict +++ b/dict @@ -3,6 +3,8 @@ ASCII Aahz Adam Adler +Adviértase +Ahlstrom Alex Android Associates @@ -10,6 +12,7 @@ Autocompletado Awk B BSD +Beck Boddie Brian Built @@ -42,7 +45,10 @@ Index Interesantemente Java Jim +Just Jython +Katz +Kent Kivy L Laird @@ -65,6 +71,7 @@ Package Pasarles Paul Perl +Phil Pillow PyFLTK PyGtk @@ -77,6 +84,7 @@ Qt Randal Reilly Rezinsky +Rossum Ruby SYSV Schwartz @@ -96,9 +104,11 @@ Unix Usenet VM WWW +Win Windows X Xt +Zip aleatoriamente append aproximarla @@ -158,6 +168,7 @@ else enrutamiento enumerador env +escribible especificador estáticamente except @@ -175,6 +186,8 @@ h hardware hash hashables +heredable +heredables idiomáticas if import @@ -222,6 +235,7 @@ manejadores mantenibilidad mapeo mapeos +metacaracteres metaclase metaclases mezclarlos @@ -276,6 +290,8 @@ recursivamente redefinido redefinidos redefinir +redirección +redirección redondeándolo ref refactorización @@ -285,6 +301,8 @@ referenciado referenciados referencian referenciarse +reintenta +reintentar remove reordenar request @@ -320,14 +338,21 @@ stdin stdout strings sub +subcadena +subcadena subcarpetas subcomandos subdirectorio +subintérprete +subintérpretes submódulo submódulos subpaquete subpaquetes +subproceso +subprocesos subsecuencias +subsistema subíndices sys t @@ -357,27 +382,6 @@ wxPython wxWidgets wxwidgets x -zlib -Zip -Phil -Katz -Ahlstrom -Just -Rossum -zipimporter zip -redirección -heredables -escribible -redirección -subproceso -subprocesos -subsistema -reintentar -Adiviértase -subintérprete -reintenta -metacaracteres -subintérpretes -heredable -Win +zipimporter +zlib diff --git a/library/unittest.po b/library/unittest.po index 765b1c5455..0f978e86ae 100644 --- a/library/unittest.po +++ b/library/unittest.po @@ -50,12 +50,9 @@ msgid "" msgstr "" "La infraestructura de pruebas unitarias :mod:`unittest` se inspiró en " "primera instancia en JUnit y ofrece aspectos similares a las principales " -"estructuras de pruebas uinitarias más importantes de otros lenguajes. Da " +"estructuras de pruebas unitarias más importantes de otros lenguajes. Da " "soporte a automatización de pruebas, inicialización compartida y código de " -"cierre de las pruebas.\n" -" and has a similar flavor as major unit testing frameworks in other " -"languages. It supports test automation, sharing of setup and shutdown code " -"for tests." +"cierre de las pruebas." #: ../Doc/library/unittest.rst:25 msgid "" @@ -78,10 +75,8 @@ msgid "" msgstr "" "Un :dfn:`juego de datos de prueba` representa los preparativos para realizar " "una o más pruebas y las acciones de limpieza asociadas. Esto puede incluir, " -"por ejemplo, la creación de bases de datos temporales o represents the " -"preparation needed to perform one or more tests, and any associated cleanup " -"actions. This may involve, for example, creating temporary or proxy " -"databases, directories, or starting a server process." +"por ejemplo, la creación de bases de datos temporales, directorios o el " +"arranque de procesos del servidor." #: ../Doc/library/unittest.rst:37 msgid "test case" @@ -122,7 +117,7 @@ msgid "" "results of executing the tests." msgstr "" "Un :dfn:`ejecutor de pruebas` es un componente que dirige la ejecución de " -"las pruebas yy proporciona un resultado. El ejecutor puede disponer de una " +"las pruebas y proporciona un resultado. El ejecutor puede disponer de una " "interfaz gráfica, de texto o devolver un valor especial que indique el " "resultado de la ejecución de las pruebas." @@ -397,7 +392,7 @@ msgid "" msgstr "" "La pulsación de :kbd:`Control-C` durante la ejecución de pruebas espera a " "que termine la prueba en curso y da un informe de los resultados hasta ese " -"mimento. Una sgunda pulsación de :kbd:`Control-C` lanza la excepción :exc:" +"momento. Una segunda pulsación de :kbd:`Control-C` lanza la excepción :exc:" "`KeyboardInterrupt` usual." #: ../Doc/library/unittest.rst:216 @@ -446,8 +441,8 @@ msgid "" "``bar_tests.SomeTest.test_foo``, but not ``bar_tests.FooTest." "test_something``." msgstr "" -"Por ejemplo, ``-k foo`` casa con ``foo_tests.SomeTest.test_something`` y " -"con``bar_tests.SomeTest.test_foo``, pero no con ``bar_tests.FooTest." +"Por ejemplo, ``-k foo`` casa con ``foo_tests.SomeTest.test_something`` y con " +"``bar_tests.SomeTest.test_foo``, pero no con ``bar_tests.FooTest." "test_something``." #: ../Doc/library/unittest.rst:240 @@ -456,8 +451,7 @@ msgstr "Mostrar las variables locales en las trazas" #: ../Doc/library/unittest.rst:242 msgid "The command-line options ``-b``, ``-c`` and ``-f`` were added." -msgstr "" -"Se añadieron las opciones de línea de órdenes ``-b``, ``-c`` and ``-f``." +msgstr "Se añadieron las opciones de línea de órdenes ``-b``, ``-c`` y ``-f``." #: ../Doc/library/unittest.rst:245 msgid "The command-line option ``--locals``." @@ -488,8 +482,8 @@ msgid "" "(this means that their filenames must be valid :ref:`identifiers " "`)." msgstr "" -"Unittest da soporte al descubrimiento de pruebas simples. Para ser " -"compatible con el descrubrimiento de pruebas, todos los ficheros de prueba " +":mod:`unittest` da soporte al descubrimiento de pruebas simples. Para ser " +"compatible con el descubrimiento de pruebas, todos los ficheros de prueba " "deben ser :ref:`módulos ` o :ref:`paquetes ` " "(incluyendo :term:`paquetes nominales `) importables " "desde el directorio superior del proyecto (por lo que sus nombres han de " @@ -602,7 +596,7 @@ msgstr "" #: ../Doc/library/unittest.rst:332 msgid "Test discovery supports :term:`namespace packages `." msgstr "" -"El descobrimiento de pruebas admite :term:`paquetes nominales `." #: ../Doc/library/unittest.rst:339 @@ -618,7 +612,7 @@ msgid "" "`TestCase` or use :class:`FunctionTestCase`." msgstr "" "Los bloques de construcción básicos de las pruebas unitarias son los :dfn:" -"`casos de prueba`, escenarios simpes que se han de configurar y cuya " +"`casos de prueba`, escenarios simples que se han de configurar y cuya " "corrección hay que comprobar. En :mod:`unittest`, los casos de prueba están " "representados por instancias de :class:`unittest.TestCase`. Para crear " "nuevos casos de prueba, hay que escribir subclases de :class:`TestCase` o " @@ -917,7 +911,7 @@ msgstr "" #: ../Doc/library/unittest.rst:622 msgid "For example, the following test::" -msgstr "" +msgstr "Por ejemplo, la siguiente prueba::" #: ../Doc/library/unittest.rst:634 msgid "will produce the following output::" From 3800e955e859e625b662cf6e14f7363e00a627b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20S=C3=A1nchez=20Provencio?= Date: Mon, 25 May 2020 10:59:31 +0200 Subject: [PATCH 8/8] wip --- dict | 2 ++ library/unittest.po | 59 ++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 55 insertions(+), 6 deletions(-) diff --git a/dict b/dict index 7edf47b5b1..c0e1823e58 100644 --- a/dict +++ b/dict @@ -294,7 +294,9 @@ redirección redirección redondeándolo ref +refactorizaciones refactorización +refactorizar referenciada referenciadas referenciado diff --git a/library/unittest.po b/library/unittest.po index 0f978e86ae..beecf6ec1e 100644 --- a/library/unittest.po +++ b/library/unittest.po @@ -12,7 +12,7 @@ msgstr "" "Project-Id-Version: Python 3.8\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-05-05 12:54+0200\n" -"PO-Revision-Date: 2020-05-25 10:21+0200\n" +"PO-Revision-Date: 2020-06-14 21:54+0200\n" "Language-Team: Spanish; Castilian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -336,7 +336,7 @@ msgstr "" "susceptible de importarse como módulo. La ruta se convierte en nombre de " "módulo eliminando '.py' y convirtiendo el separador de directorios por '.'. " "Si se desea ejecutar un fichero de prueba que no se puede importar como " -"módulo, se ha de ejecutar el fichero directamente" +"módulo, se ha de ejecutar el fichero directamente." #: ../Doc/library/unittest.rst:180 msgid "" @@ -447,7 +447,7 @@ msgstr "" #: ../Doc/library/unittest.rst:240 msgid "Show local variables in tracebacks." -msgstr "Mostrar las variables locales en las trazas" +msgstr "Mostrar las variables locales en las trazas." #: ../Doc/library/unittest.rst:242 msgid "The command-line options ``-b``, ``-c`` and ``-f`` were added." @@ -687,12 +687,16 @@ msgid "" "Similarly, we can provide a :meth:`~TestCase.tearDown` method that tidies up " "after the test method has been run::" msgstr "" +"Análogamente, se puede proporcionar un método :meth:`~TestCase.tearDown` que " +"haga limpieza después de que se ejecute el método de prueba::" #: ../Doc/library/unittest.rst:409 msgid "" "If :meth:`~TestCase.setUp` succeeded, :meth:`~TestCase.tearDown` will be run " "whether the test method succeeded or not." msgstr "" +"Si :meth:`~TestCase.setUp` se ejecuta sin errores, :meth:`~TestCase." +"tearDown` se ejecutará tanto si el método de prueba tuvo éxito como si no." #: ../Doc/library/unittest.rst:412 msgid "" @@ -702,6 +706,11 @@ msgid "" "`~TestCase.tearDown`, and :meth:`~TestCase.__init__` will be called once per " "test." msgstr "" +"Un entorno de trabajo así para el código de pruebas se llama :dfn:`juego de " +"datos de prueba`. Se crea una nueva instancia de :class:`TestCase` como " +"juego de datos de prueba que se utiliza para cada método de prueba. De este " +"modo, :meth:`~TestCase.setUp`, :meth:`~TestCase.tearDown` y :meth:`~TestCase." +"__init__` se llamarán una vez por prueba." #: ../Doc/library/unittest.rst:418 msgid "" @@ -712,12 +721,20 @@ msgid "" "do the right thing and collect all the module's test cases for you and " "execute them." msgstr "" +"Se recomienda usar implementaciones de `TestCase` para agrupar las pruebas " +"de acuerdo con las características probadas. :mod:`unittest` proporciona " +"una mecanismo para esto: el :dfn:`paquete de pruebas`, representado por la " +"clase :class:`TestSuite` de :mod:`unittest`. En la mayor parte de los casos, " +"llamar a :func:`unittest.main` hará lo correcto y recolectará todos los " +"casos de prueba del módulo para su ejecución." #: ../Doc/library/unittest.rst:425 msgid "" "However, should you want to customize the building of your test suite, you " "can do it yourself::" msgstr "" +"Sin embargo, si se desea personalizar la construcción del paquete de " +"pruebas , se puede hacer::" #: ../Doc/library/unittest.rst:438 msgid "" @@ -726,44 +743,60 @@ msgid "" "are several advantages to placing the test code in a separate module, such " "as :file:`test_widget.py`:" msgstr "" +"Se puede poner las definiciones de los casos de prueba y de los paquetes de " +"prueba en los mismos módulos que el código que prueban.(tal como :file:" +"`widget.py`), pero sacarlos a un módulo aparte como :file:`test_widget.py` " +"tiene diversas ventajas:" #: ../Doc/library/unittest.rst:443 msgid "The test module can be run standalone from the command line." msgstr "" +"El módulo de pruebas se puede ejecutar aisladamente desde la línea de " +"órdenes." #: ../Doc/library/unittest.rst:445 msgid "The test code can more easily be separated from shipped code." msgstr "" +"El código de pruebas se puede separar con más facilidad del código de " +"producción." #: ../Doc/library/unittest.rst:447 msgid "" "There is less temptation to change test code to fit the code it tests " "without a good reason." msgstr "" +"Disminuye la tentación de cambiar el código de prueba para ajustarse al " +"código bajo prueba." #: ../Doc/library/unittest.rst:450 msgid "" "Test code should be modified much less frequently than the code it tests." msgstr "" +"El código de pruebas debería modificarse con mucha menor frecuencia que el " +"código bajo prueba." #: ../Doc/library/unittest.rst:452 msgid "Tested code can be refactored more easily." -msgstr "" +msgstr "Es más sencillo refactorizar el código bajo prueba." #: ../Doc/library/unittest.rst:454 msgid "" "Tests for modules written in C must be in separate modules anyway, so why " "not be consistent?" msgstr "" +"El código para probar módulos escritos en C ha de estar en módulos aparte, " +"así que ¿por qué no mantener la consistencia?" #: ../Doc/library/unittest.rst:457 msgid "" "If the testing strategy changes, there is no need to change the source code." msgstr "" +"Si cambia la estrategia de prueba, no hay razón para cambiar el código " +"fuente principal." #: ../Doc/library/unittest.rst:463 msgid "Re-using old test code" -msgstr "" +msgstr "Reutilización de código de prueba anterior" #: ../Doc/library/unittest.rst:465 msgid "" @@ -771,6 +804,9 @@ msgid "" "to run from :mod:`unittest`, without converting every old test function to " "a :class:`TestCase` subclass." msgstr "" +"Habrá personas que tengan código de prueba previo que deseen ejecutar desde :" +"mod:`unittest`, sin conversión previa de cada antigua función de prueba a " +"una subclase de :class:`TestCase`." #: ../Doc/library/unittest.rst:469 msgid "" @@ -778,16 +814,22 @@ msgid "" "This subclass of :class:`TestCase` can be used to wrap an existing test " "function. Set-up and tear-down functions can also be provided." msgstr "" +"Por esto, :mod:`unittest` proporciona una clase :class:`FunctionTestCase`. " +"Se puede utilizar esta subclase de :class:`TestCase` para envolver una " +"función de prueba existente. Se pueden proporcionar también funciones de " +"preparación y desmontaje." #: ../Doc/library/unittest.rst:473 msgid "Given the following test function::" -msgstr "" +msgstr "Dada la siguiente función de prueba::" #: ../Doc/library/unittest.rst:480 msgid "" "one can create an equivalent test case instance as follows, with optional " "set-up and tear-down methods::" msgstr "" +"se puede crear una instancia de caso de prueba de la siguiente manera, con " +"métodos opcionales de preparación y desmontaje::" #: ../Doc/library/unittest.rst:489 msgid "" @@ -796,6 +838,11 @@ msgid "" "is not recommended. Taking the time to set up proper :class:`TestCase` " "subclasses will make future test refactorings infinitely easier." msgstr "" +"Aunque se puede usar :class:`FunctionTestCase` para convertir rápidamente " +"unas pruebas existentes a un sistema basado en :mod:`unittest`, no es una " +"vía recomendada. Tomarse el tiempo de construir subclases bien construidas " +"de :class:`TestCase` hará las futuras refactorizaciones de pruebas futura " +"considerablemente más fácil." #: ../Doc/library/unittest.rst:494 msgid ""