From bf240bda77d6f258353a45a24f9e5fe0e6d0b9aa Mon Sep 17 00:00:00 2001 From: Cale Kochenour Date: Sun, 24 Mar 2024 11:09:42 -0600 Subject: [PATCH 01/93] Add command line reference guide --- index.md | 9 +++ tutorials/command-line-reference.md | 85 +++++++++++++++++++++++++++++ tutorials/intro.md | 7 +++ 3 files changed, 101 insertions(+) create mode 100644 tutorials/command-line-reference.md diff --git a/index.md b/index.md index 24176e3a..139d07d4 100644 --- a/index.md +++ b/index.md @@ -97,6 +97,15 @@ by the community now! Join our community review process or watch development of ::: :::: +::::{grid-item} +:::{card} ✿ Reference Guides ✿ +:class-card: left-aligned + +* [Command Line Reference Guide](/tutorials/command-line-reference) + +::: +:::: + ::::: diff --git a/tutorials/command-line-reference.md b/tutorials/command-line-reference.md new file mode 100644 index 00000000..489cc10d --- /dev/null +++ b/tutorials/command-line-reference.md @@ -0,0 +1,85 @@ +# Command Line Reference Guide + +```{important} +**What these tables are:** These tables summarize the command line inputs (e.g., `pipx install hatch`, `hatch build`) necessary to complete all steps in the package creation process, from installing Hatch to publishing the package on PyPI and conda-forge. + +**What these tables are not:** These tables do not cover the manual/non-automated steps (e.g., update `pyproject.toml` file, create PyPI account, create PyPI API token) you have to complete throughout the package creation process. +``` + +## Environment Setup + +:::{table} +:widths: auto +:align: center + +| Description | Syntax | +|---|---| +| Set PowerShell execution policy | `Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser` | +| Install Scoop | `Invoke-RestMethod -Uri https://get.scoop.sh \| Invoke-Expression` | +| Add "main" bucket as download source | `scoop bucket add main` | +| Add "versions" bucket as download source | `scoop bucket add versions` | +| Install pipx | `scoop install pipx`or `scoop install main/pipx` | +| Install python | `scoop install python` or `scoop install main/python` | +| Install specific python version | `scoop install versions/python311` | +| Update PATH variable with pipx directory | `pipx ensurepath` | +| Install hatch | `pipx install hatch` | +| List hatch commands | `hatch -h` | +| Open location of hatch config file | `hatch config explore` | +| Print contents of hatch config file | `hatch config show` | +| Install grayskull | `pipx install grayskull` | + +::: + +## Package Development + +:::{table} +:widths: auto +:align: center + +| Description | Syntax | +|---|---| +| Create package structure and baseline contents | `hatch new [PACKAGE_NAME]` | +| Install package locally in editable mode | `python -m pip install -e .` | +| List packages installed in current environment | `pip list` | +| Install package from GitHub | `pip install git+https://github.com/user/repo.git@branch_or_tag` | +| Create development environment | `hatch env create` | +| Activate development environment | `hatch shell` | +| Exit development environment | `exit` | + +::: + +## Package Publishing + +:::{table} +:widths: auto +:align: center + +| Description | Syntax | +|---|---| +| Build package sdist and wheel distributions | `hatch build` | +| Publish package to Test PyPI | `hatch publish -r test` | +| Install package from Test PyPI | `pip install -i https://test.pypi.org/simple/ [PACKAGE_NAME]` | +| Publish package to PyPI | `hatch publish` | +| Install package from PyPI | `pip install -i https://pypi.org/simple/ [PACKAGE_NAME]` | +| Create conda-forge recipe | `grayskull pypi [PACKAGE_NAME]` | +| Check that package installs properly | `pip check` | +| Install package from conda-forge | `conda install -c conda-forge [PACKAGE_NAME]` | + +::: + +## Miscellaneous Commands + +:::{table} +:widths: auto +:align: center + +| Description | Syntax | +|---|---| +| View environments hatch has access to | `hatch env show` | +| Print path to active hatch environment | `hatch env find` | +| Bump package version - major | `hatch version major` | +| Bump package version - minor | `hatch version minor` | +| Bump package version - patch | `hatch version patch` | +| Run test scripts on multiple Python versions | `hatch run all:[SCRIPT_NAME]` | + +::: diff --git a/tutorials/intro.md b/tutorials/intro.md index c324510c..db6cff1d 100644 --- a/tutorials/intro.md +++ b/tutorials/intro.md @@ -50,6 +50,13 @@ Add a license & code of conduct Update metadata in pyproject.toml ::: +:::{toctree} +:hidden: +:caption: Reference Guides + +Command Line Reference Guide +::: + :::{admonition} Learning Objectives This lesson introduces you to the basic components of a Python package. From 4246a654edd15ded001d4e6dc6f9acc8fe7eb5be Mon Sep 17 00:00:00 2001 From: Cale Kochenour Date: Sun, 24 Mar 2024 12:29:09 -0600 Subject: [PATCH 02/93] Cleanup --- tutorials/command-line-reference.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tutorials/command-line-reference.md b/tutorials/command-line-reference.md index 489cc10d..ef3dff0a 100644 --- a/tutorials/command-line-reference.md +++ b/tutorials/command-line-reference.md @@ -3,7 +3,7 @@ ```{important} **What these tables are:** These tables summarize the command line inputs (e.g., `pipx install hatch`, `hatch build`) necessary to complete all steps in the package creation process, from installing Hatch to publishing the package on PyPI and conda-forge. -**What these tables are not:** These tables do not cover the manual/non-automated steps (e.g., update `pyproject.toml` file, create PyPI account, create PyPI API token) you have to complete throughout the package creation process. +**What these tables are not:** These tables do not cover the manual/non-automated steps (create PyPI account, create PyPI API token) you have to complete throughout the package creation process. ``` ## Environment Setup @@ -18,7 +18,7 @@ | Install Scoop | `Invoke-RestMethod -Uri https://get.scoop.sh \| Invoke-Expression` | | Add "main" bucket as download source | `scoop bucket add main` | | Add "versions" bucket as download source | `scoop bucket add versions` | -| Install pipx | `scoop install pipx`or `scoop install main/pipx` | +| Install pipx | `scoop install pipx` or `scoop install main/pipx` | | Install python | `scoop install python` or `scoop install main/python` | | Install specific python version | `scoop install versions/python311` | | Update PATH variable with pipx directory | `pipx ensurepath` | From 74fa62b7e2611f1dd586fc3e5d015b49315ac85f Mon Sep 17 00:00:00 2001 From: Cale Kochenour Date: Sun, 24 Mar 2024 12:32:12 -0600 Subject: [PATCH 03/93] Cleanup --- tutorials/command-line-reference.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorials/command-line-reference.md b/tutorials/command-line-reference.md index ef3dff0a..e43649a1 100644 --- a/tutorials/command-line-reference.md +++ b/tutorials/command-line-reference.md @@ -3,7 +3,7 @@ ```{important} **What these tables are:** These tables summarize the command line inputs (e.g., `pipx install hatch`, `hatch build`) necessary to complete all steps in the package creation process, from installing Hatch to publishing the package on PyPI and conda-forge. -**What these tables are not:** These tables do not cover the manual/non-automated steps (create PyPI account, create PyPI API token) you have to complete throughout the package creation process. +**What these tables are not:** These tables do not cover the manual/non-automated steps (e.g., create PyPI account, create PyPI API token) you have to complete throughout the package creation process. ``` ## Environment Setup From 797fa24139cced667b2eab422fd807bd8014e8df Mon Sep 17 00:00:00 2001 From: Cale Kochenour Date: Thu, 9 May 2024 19:56:24 -0600 Subject: [PATCH 04/93] Address PR comments --- tutorials/command-line-reference.md | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/tutorials/command-line-reference.md b/tutorials/command-line-reference.md index e43649a1..f13e4ba6 100644 --- a/tutorials/command-line-reference.md +++ b/tutorials/command-line-reference.md @@ -4,6 +4,8 @@ **What these tables are:** These tables summarize the command line inputs (e.g., `pipx install hatch`, `hatch build`) necessary to complete all steps in the package creation process, from installing Hatch to publishing the package on PyPI and conda-forge. **What these tables are not:** These tables do not cover the manual/non-automated steps (e.g., create PyPI account, create PyPI API token) you have to complete throughout the package creation process. + +**Operating system note:** The current iteration of this guide has been tested on the Windows OS only. Many commands are Windows-specific. OS-specific commands are indicated with parentheses after the description of the command, e.g., [COMMAND_DESCRIPTION] (Windows). Corresponding commands for macOS and Linux will be added in the future. ``` ## Environment Setup @@ -14,19 +16,19 @@ | Description | Syntax | |---|---| -| Set PowerShell execution policy | `Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser` | -| Install Scoop | `Invoke-RestMethod -Uri https://get.scoop.sh \| Invoke-Expression` | -| Add "main" bucket as download source | `scoop bucket add main` | -| Add "versions" bucket as download source | `scoop bucket add versions` | -| Install pipx | `scoop install pipx` or `scoop install main/pipx` | -| Install python | `scoop install python` or `scoop install main/python` | -| Install specific python version | `scoop install versions/python311` | +| Set PowerShell execution policy (Windows) | `Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser` | +| Install Scoop (Windows) | `Invoke-RestMethod -Uri https://get.scoop.sh \| Invoke-Expression` | +| Add "main" bucket as download source (Windows) | `scoop bucket add main` | +| Add "versions" bucket as download source (Windows) | `scoop bucket add versions` | +| Install pipx (Windows) | `scoop install pipx` or `scoop install main/pipx` | +| Install python (Windows) | `scoop install python` or `scoop install main/python` | +| Install specific python version (Windows) | `scoop install versions/python311` | | Update PATH variable with pipx directory | `pipx ensurepath` | -| Install hatch | `pipx install hatch` | +| Install hatch | `pipx install hatch` or `pip install hatch` | | List hatch commands | `hatch -h` | | Open location of hatch config file | `hatch config explore` | | Print contents of hatch config file | `hatch config show` | -| Install grayskull | `pipx install grayskull` | +| Install grayskull | `pipx install grayskull` or `pip install grayskull` | ::: @@ -40,6 +42,7 @@ |---|---| | Create package structure and baseline contents | `hatch new [PACKAGE_NAME]` | | Install package locally in editable mode | `python -m pip install -e .` | +| Install development dependencies | `python -m pip install ".[DEPENDENCY_GROUP]"` | | List packages installed in current environment | `pip list` | | Install package from GitHub | `pip install git+https://github.com/user/repo.git@branch_or_tag` | | Create development environment | `hatch env create` | @@ -67,7 +70,7 @@ ::: -## Miscellaneous Commands +## Versions and Environments :::{table} :widths: auto @@ -75,7 +78,7 @@ | Description | Syntax | |---|---| -| View environments hatch has access to | `hatch env show` | +| View environments | `hatch env show` | | Print path to active hatch environment | `hatch env find` | | Bump package version - major | `hatch version major` | | Bump package version - minor | `hatch version minor` | From f6143b9c863a8a7758180fbc421705cfa13354f8 Mon Sep 17 00:00:00 2001 From: Cale Kochenour Date: Thu, 9 May 2024 20:04:30 -0600 Subject: [PATCH 05/93] Cleanup --- tutorials/command-line-reference.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/tutorials/command-line-reference.md b/tutorials/command-line-reference.md index f13e4ba6..2d7788fb 100644 --- a/tutorials/command-line-reference.md +++ b/tutorials/command-line-reference.md @@ -21,8 +21,6 @@ | Add "main" bucket as download source (Windows) | `scoop bucket add main` | | Add "versions" bucket as download source (Windows) | `scoop bucket add versions` | | Install pipx (Windows) | `scoop install pipx` or `scoop install main/pipx` | -| Install python (Windows) | `scoop install python` or `scoop install main/python` | -| Install specific python version (Windows) | `scoop install versions/python311` | | Update PATH variable with pipx directory | `pipx ensurepath` | | Install hatch | `pipx install hatch` or `pip install hatch` | | List hatch commands | `hatch -h` | From 048055e70b812167f8ca1324ac30e5fd6d2c07bf Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Sun, 14 Jul 2024 19:42:39 +0200 Subject: [PATCH 06/93] docs: translating to Spanish complex-python-package-builds.md --- .../es/LC_MESSAGES/package-structure-code.po | 62 +++++++++++++++++-- .../complex-python-package-builds.md | 2 +- 2 files changed, 59 insertions(+), 5 deletions(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index 90bc3f35..cd683368 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -648,13 +648,15 @@ msgstr "" #: ../../package-structure-code/complex-python-package-builds.md:1 msgid "Complex Python package builds" -msgstr "" +msgstr "Compilaciones complejas de paquetes de Python" #: ../../package-structure-code/complex-python-package-builds.md:3 msgid "" "This guide is focused on packages that are either pure-python or that " "have a few simple extensions in another language such as C or C++." msgstr "" +"Esta guía se centra en paquetes que son Python puros o que tienen unas " +"pocas extensiones simples en otro lenguaje como C o C++." #: ../../package-structure-code/complex-python-package-builds.md:6 msgid "" @@ -669,10 +671,21 @@ msgid "" "an overview and thorough discussion of these nuances, please see [this " "site.](https://pypackaging-native.github.io/)" msgstr "" +"En el futuro, queremos proporcionar recursos para flujos de trabajo de " +"empaquetado que requieran compilaciones más complejas. Si tiene preguntas " +"sobre estos tipos de paquetes, por favor [agregue una pregunta a nuestro " +"foro](https://pyopensci.discourse.group/) o abra una [solicitud sobre esta guía " +"específicamente en el repositorio](https://github.com/pyOpenSci/python-package-guide/issues). " +"Hay muchos matices para construir y distribuir paquetes de Python que tienen " +"extensiones compiladas que requieren dependencias que no están desarrolladas en Python en tiempo de " +"compilación. Para obtener una descripción general y una discusión exhaustiva " +"de estos matices, consulte [este sitio.](https://pypackaging-native.github.io/)" + + #: ../../package-structure-code/complex-python-package-builds.md:8 msgid "Pure Python Packages vs. packages with extensions in other languages" -msgstr "" +msgstr "Paquetes de Python puros vs. paquetes con extensiones en otros lenguajes" #: ../../package-structure-code/complex-python-package-builds.md:10 msgid "" @@ -680,6 +693,9 @@ msgid "" " These categories can in turn help you select the correct package " "frontend and backend tools." msgstr "" +"Se puede clasificar la complejidad de los paquetes de Python en tres categorías. " +"Estas categorías, a su vez, pueden ayudarlo a seleccionar las herramientas de " +"frontend y backend correctas." #: ../../package-structure-code/complex-python-package-builds.md:14 msgid "" @@ -688,6 +704,10 @@ msgid "" "chose a tool below that has the features that you want and be done with " "your decision!" msgstr "" +"**Paquetes de Python puros:** son paquetes que solo dependen de Python para " +"trabajar. Construir un paquete de Python puro es más simple. Como tal, puede " +"elegir una herramienta a continuación que tenga las características que desea y, " +"¡tomar una decisión!." #: ../../package-structure-code/complex-python-package-builds.md:16 msgid "" @@ -700,22 +720,38 @@ msgid "" "that supports additional build setups. We suggest that you chose build " "tool that supports custom build steps like Hatch." msgstr "" +"**Paquetes de Python con extensiones en otros lenguajes:** Estos paquetes tienen " +"componentes adicionales llamados extensiones escritas en otros lenguajes (como C o C++). " +"Si tiene un paquete con extensiones no escritas en Python, entonces debe seleccionar " +"una herramienta de backend de compilación que permita pasos de compilación adicionales " +"necesarios para compilar su código de extensión. Además, si desea utilizar una herramienta " +"de frontend para ayudar a su flujo de trabajo, deberá seleccionar una herramienta que admita " +"configuraciones de compilación adicionales. Sugerimos que elija una herramienta de compilación " +"que admita pasos de compilación personalizados como Hatch." #: ../../package-structure-code/complex-python-package-builds.md:18 msgid "" "**Python packages that have extensions written in different languages " "(e.g. Fortran and C++) or that have non Python dependencies that are " -"difficult to install (e.g. GDAL)** These packages often have complex " +"difficult to install (e.g. GDAL):** These packages often have complex " "build steps (more complex than a package with just a few C extensions for" " instance). As such, these packages require tools such as [scikit-" "build](https://scikit-build.readthedocs.io/en/latest/) or [meson-" "python](https://mesonbuild.com/Python-module.html) to build. NOTE: you " "can use meson-python with PDM." msgstr "" +"**Paquetes de Python que tienen extensiones escritas en diferentes lenguajes " +"(por ejemplo, Fortran y C++) o que tienen dependencias no escritas en Python " +"que son difíciles de instalar (por ejemplo, GDAL):** Estos paquetes a menudo " +"tienen pasos de compilación complejos (más complejos que un paquete con solo " +"algunas extensiones en C, por ejemplo). Como tal, estos paquetes requieren " +"herramientas como [scikit-build](https://scikit-build.readthedocs.io/en/latest/) " +"o [meson-python](https://mesonbuild.com/Python-module.html) para construir. NOTA: " +"puede usar meson-python con PDM." #: ../../package-structure-code/complex-python-package-builds.md:21 msgid "Mixing frontend and backend projects" -msgstr "" +msgstr "Mezclar proyectos de frontend y backend" #: ../../package-structure-code/complex-python-package-builds.md:23 msgid "" @@ -728,6 +764,13 @@ msgid "" "package-build-tools) for more information about frontend and backend " "compatibility." msgstr "" +"A veces es necesario o deseable usar un frontend de compilación con un backend " +"de compilación alternativo. Esto se debe a que algunos frontends no tienen un " +"backend predeterminado (`build`), y esta elección recae en el mantenedor. Otros " +"backends (`hatch`) tienen un backend preferido (`hatchling`) pero permiten al " +"mantenedor migrar a otro, mientras que algunos backends (`poetry`) solo funcionan " +"con un solo backend (`poetry-core`). Consulte (#python-package-build-tools) para " +"obtener más información sobre la compatibilidad de frontend y backend." #: ../../package-structure-code/complex-python-package-builds.md:29 msgid "" @@ -742,6 +785,14 @@ msgid "" "[plugins](https://hatch.pypa.io/1.9/plugins/about/) or be replaced by a " "backend that is already capable of building extension modules." msgstr "" +"En esta guía de empaquetado, recomendamos usar `hatch` junto con su backend " +"preferido `hatchling`. Si bien esto será adecuado para la mayoría de los paquetes, " +"se puede usar un backend alternativo con Hatch si es necesario al crear un módulo de " +"extensión. Un módulo de extensión de Python es uno que está compuesto, ya sea en parte " +"o en su totalidad, de código compilado. En este caso, el backend elegido (como `meson-python`) " +"debe saber cómo compilar el lenguaje de extensión y vincularlo a Python. `hatchling` no sabe " +"cómo hacer esto por sí solo y debe hacer uso de [plugins](https://hatch.pypa.io/1.9/plugins/about/) " +"o ser reemplazado por un backend que ya sea capaz de construir módulos de extensión." #: ../../package-structure-code/complex-python-package-builds.md:37 msgid "" @@ -750,6 +801,9 @@ msgid "" " command, or from following the packaging tutorial, you may have to make " "a change like this" msgstr "" +"Para usar un backend diferente, deberá editar el `pyproject.toml` de su proyecto. " +"Si tiene un `pyproject.toml` generado por el comando `hatch`, o siguiendo el tutorial " +"de empaquetado, es posible que deba hacer un cambio como este" #: ../../package-structure-code/declare-dependencies.md:8 #: ../../package-structure-code/declare-dependencies.md:375 diff --git a/package-structure-code/complex-python-package-builds.md b/package-structure-code/complex-python-package-builds.md index cc9be2f8..0fb8c910 100644 --- a/package-structure-code/complex-python-package-builds.md +++ b/package-structure-code/complex-python-package-builds.md @@ -15,7 +15,7 @@ backend tools. 2. **Python packages with non-Python extensions:** These packages have additional components called extensions written in other languages (such as C or C++). If you have a package with non-Python extensions, then you need to select a build backend tool that allows additional build steps needed to compile your extension code. Further, if you wish to use a frontend tool to support your workflow, you will need to select a tool that supports additional build setups. We suggest that you chose build tool that supports custom build steps like Hatch. -3. **Python packages that have extensions written in different languages (e.g. Fortran and C++) or that have non Python dependencies that are difficult to install (e.g. GDAL)** These packages often have complex build steps (more complex than a package with just a few C extensions for instance). As such, these packages require tools such as [scikit-build](https://scikit-build.readthedocs.io/en/latest/) +3. **Python packages that have extensions written in different languages (e.g. Fortran and C++) or that have non Python dependencies that are difficult to install (e.g. GDAL):** These packages often have complex build steps (more complex than a package with just a few C extensions for instance). As such, these packages require tools such as [scikit-build](https://scikit-build.readthedocs.io/en/latest/) or [meson-python](https://mesonbuild.com/Python-module.html) to build. NOTE: you can use meson-python with PDM. ## Mixing frontend and backend projects From 573e6c3cb61081aa719514993837d01a5278a995 Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Sun, 14 Jul 2024 19:46:11 +0200 Subject: [PATCH 07/93] docs: translate to Spanish intro.md of package-structure-code --- .../es/LC_MESSAGES/package-structure-code.po | 118 ++++++++++++++---- 1 file changed, 93 insertions(+), 25 deletions(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index 90bc3f35..ec7f29af 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -1423,55 +1423,55 @@ msgstr "" #: ../../package-structure-code/intro.md:163 msgid "Intro" -msgstr "" +msgstr "Introducción" #: ../../package-structure-code/intro.md:163 msgid "Python package structure" -msgstr "" +msgstr "Estructura de paquetes de Python" #: ../../package-structure-code/intro.md:163 msgid "pyproject.toml Package Metadata" -msgstr "" +msgstr "Metadatos del paquete en pyproject.toml" #: ../../package-structure-code/intro.md:163 msgid "Build Your Package" -msgstr "" +msgstr "Monta tu paquete" #: ../../package-structure-code/intro.md:163 msgid "Declare dependencies" -msgstr "" +msgstr "Declara dependencias" #: ../../package-structure-code/intro.md:163 msgid "Package Build Tools" -msgstr "" +msgstr "Herramientas de construcción de paquetes" #: ../../package-structure-code/intro.md:163 msgid "Complex Builds" -msgstr "" +msgstr "Construcciones complejas" #: ../../package-structure-code/intro.md:163 msgid "Package structure & code style" -msgstr "" +msgstr "Estilo de código y estructura de paquetes" #: ../../package-structure-code/intro.md:177 msgid "Publish with Conda / PyPI" -msgstr "" +msgstr "Publicar con Conda / PyPI" #: ../../package-structure-code/intro.md:177 msgid "Package versions" -msgstr "" +msgstr "Versiones de paquetes" #: ../../package-structure-code/intro.md:177 msgid "Code style" -msgstr "" +msgstr "Estilo de código" #: ../../package-structure-code/intro.md:177 msgid "Publishing a package" -msgstr "" +msgstr "Publicar un paquete" #: ../../package-structure-code/intro.md:1 msgid "Python package structure information" -msgstr "" +msgstr "Información sobre la estructura de paquetes de Python" #: ../../package-structure-code/intro.md:3 msgid "" @@ -1479,6 +1479,9 @@ msgid "" "formats and style. It also reviews the various packaging tools that you " "can use to support building and publishing your package." msgstr "" +"Esta sección proporciona orientación sobre la estructura de su paquete de Python, " +"los formatos de código y estilo. También revisa las diversas herramientas de empaquetado " +"que puede utilizar para admitir la construcción y publicación de su paquete." #: ../../package-structure-code/intro.md:7 msgid "" @@ -1487,10 +1490,14 @@ msgid "" "following best practices. Here, we review tool features and suggest tools" " that might be best fitted for your workflow." msgstr "" +"Si está confundido por el empaquetado de Python, ¡no está solo! La buena noticia es " +"que hay algunas herramientas de empaquetado modernas excelentes que garantizan que " +"está siguiendo las mejores prácticas. Aquí, revisamos las características de las herramientas " +"y sugerimos las que podrían ser más adecuadas para su flujo de trabajo." #: ../../package-structure-code/intro.md:19 msgid "✨ 1. Package file structure ✨" -msgstr "" +msgstr "✨ 1. Estructura de archivos en el paquete ✨" #: ../../package-structure-code/intro.md:23 msgid "" @@ -1498,10 +1505,13 @@ msgid "" "what your level of packaging knowledge is, this page will help you decide" " upon a package structure that follows modern python best practices." msgstr "" +"¿Distribución del código fuente, distribución plana y dónde deben vivir las carpetas de tests? " +"Sin importar cuál sea su nivel de conocimiento sobre empaquetado, esta página le ayudará a decidir " +"sobre una estructura de paquete que siga las mejores prácticas modernas para paquetes de Python." #: ../../package-structure-code/intro.md:28 msgid "✨ 2. Learn about building your package ✨" -msgstr "" +msgstr "✨ 2. Aprende a construir tu paquete ✨" #: ../../package-structure-code/intro.md:32 msgid "" @@ -1510,10 +1520,13 @@ msgid "" "code and metadata into a format that can be published on PyPI. Learn more" " about building your Python package." msgstr "" +"Para publicar su paquete de Python en PyPI, primero deberá construirlo. El acto de \"construir\" " +"se refiere al proceso de colocar su código de paquete y metadatos en un formato que se pueda " +"publicar en PyPI. Aprenda más sobre cómo construir su paquete de Python." #: ../../package-structure-code/intro.md:41 msgid "✨ 4. Add metadata ✨" -msgstr "" +msgstr "✨ 4. Agregar metadatos ✨" #: ../../package-structure-code/intro.md:45 msgid "" @@ -1521,20 +1534,25 @@ msgid "" "filtering on PyPI and also the metadata that a package installer needs to" " build and install your package." msgstr "" +"Aprenda cómo agregar metadatos de proyecto a su paquete de Python para admitir tanto " +"la filtración en PyPI como los metadatos que un instalador de paquetes necesita para " +"construir e instalar su paquete." #: ../../package-structure-code/intro.md:52 msgid "✨ 3. What Python package tool should you use? ✨" -msgstr "" +msgstr "✨ 3. ¿Qué herramienta de empaquetado de Python debería usar? ✨" #: ../../package-structure-code/intro.md:56 msgid "" "Learn more about the suite of packaging tools out there. And learn which " "tool might be best for you." msgstr "" +"Aprenda más sobre la suite de herramientas de empaquetado disponibles. Y aprenda cuál " +"podría ser la mejor herramienta para usted." #: ../../package-structure-code/intro.md:62 msgid "✨ 4. Publish to PyPI and Conda ✨" -msgstr "" +msgstr "✨ 4. Publicar en PyPI y Conda ✨" #: ../../package-structure-code/intro.md:66 msgid "" @@ -1542,10 +1560,12 @@ msgid "" "publish to both PyPI and then a Conda channel such as conda-forge. Learn " "more here." msgstr "" +"Si tiene un paquete de Python puro, es un proceso sencillo publicar en PyPI y luego en " +"un canal de Conda como conda-forge. Aprenda más aquí." #: ../../package-structure-code/intro.md:73 msgid "✨ 5. Setup package versioning ✨" -msgstr "" +msgstr "✨ 5. Configurar el versionado de paquetes ✨" #: ../../package-structure-code/intro.md:77 msgid "" @@ -1553,10 +1573,12 @@ msgid "" "common ways to version a package. Which one should you pick? Learn more " "here." msgstr "" +"Semver (versionado numérico) y Calver (versionado usando la fecha) son 2 formas comunes " +"de versionar un paquete. ¿Cuál debería elegir? Aprenda más aquí." #: ../../package-structure-code/intro.md:83 msgid "✨ 6. Code style & linters ✨" -msgstr "" +msgstr "✨ 6. Estilo de código y linters ✨" #: ../../package-structure-code/intro.md:87 msgid "" @@ -1564,18 +1586,24 @@ msgid "" "follows best practices for code format? Learn more about the options and " "why this is important here." msgstr "" +"Black, blue, flake8, Ruff - ¿qué herramientas pueden ayudarlo a asegurarse de que su paquete " +"siga las mejores prácticas para el formato de código? Aprenda más sobre las opciones y por qué " +"esto es importante." #: ../../package-structure-code/intro.md:95 msgid "" "Figure showing a decision tree with the various packaging tool front-end " "and back-end options." msgstr "" +"Figura que muestra un árbol de decisiones con las diversas opciones de herramientas de empaquetado." #: ../../package-structure-code/intro.md:97 msgid "" "Diagram showing the various front-end build tools that you can select " "from. See the packaging tools page to learn more about each tool." msgstr "" +"Diagrama que muestra las diversas herramientas de construcción de front-end que puede seleccionar. " +"Consulte la página de herramientas de empaquetado para obtener más información sobre cada herramienta." #: ../../package-structure-code/intro.md:102 msgid "" @@ -1587,26 +1615,34 @@ msgid "" " and for anyone who is just getting started with creating a Python " "package." msgstr "" +"Si está considerando enviar un paquete para revisión por pares, eche un vistazo a las [comprobaciones " +"mínimos del editor](https://www.pyopensci.org/software-" +"peer-review/how-to/editor-in-chief-guide.html#editor-checklist-template) que realiza pyOpenSci " +"antes de que comience una revisión. Estas comprobaciones son útiles para explorar tanto para los autores " +"que planean enviar un paquete para su revisión como para cualquier persona que esté comenzando " +"a crear un paquete de Python." #: ../../package-structure-code/intro.md:109 msgid "What you will learn here" -msgstr "" +msgstr "¿Qué aprenderás aquí?" #: ../../package-structure-code/intro.md:111 msgid "In this section of our Python packaging guide, we:" -msgstr "" +msgstr "En esta sección de nuestra guía de empaquetado de Python, nosotros:" #: ../../package-structure-code/intro.md:113 msgid "" "Provide an overview of the options available to you when packaging your " "tool." msgstr "" +"Proporcionamos una descripción general de las opciones disponibles para empaquetar su herramienta." #: ../../package-structure-code/intro.md:115 msgid "" "Suggest tools and approaches that both meet your needs and also support " "existing standards." msgstr "" +"Sugerimos herramientas y enfoques que satisfacen sus necesidades y también respaldan los estándares existentes." #: ../../package-structure-code/intro.md:117 msgid "" @@ -1614,6 +1650,9 @@ msgid "" "workflow that may begin as a pure Python tool and evolve into a tool that" " requires addition layers of complexity in the packaging build." msgstr "" +"Sugerimos herramientas y enfoques que le permitirán ampliar un flujo de trabajo que puede comenzar " +"como una herramienta de Python puro y evolucionar hacia una herramienta que requiere capas adicionales " +"de complejidad en la construcción de empaquetado." #: ../../package-structure-code/intro.md:120 msgid "" @@ -1622,6 +1661,9 @@ msgid "" "[Scientific Python community SPECs](https://scientific-" "python.org/specs/)." msgstr "" +"Alineamos nuestras sugerencias con los [PEPs (Protocolos de Mejora de Python)](https://peps.python.org/pep-0000/) " +"más actuales y aceptados y las [especificaciones de la comunidad científica de Python (SPECs)](https://scientific-" +"python.org/specs/)." #: ../../package-structure-code/intro.md:123 msgid "" @@ -1629,10 +1671,13 @@ msgid "" "with existing best practices being implemented by developers of core " "Scientific Python packages such as Numpy, SciPy and others." msgstr "" +"En un esfuerzo por mantener la consistencia dentro de nuestra comunidad, también nos alineamos con las mejores " +"prácticas existentes que están siendo implementadas por los desarrolladores de paquetes científicos de Python " +"como Numpy, SciPy y otros." #: ../../package-structure-code/intro.md:127 msgid "Guidelines for pyOpenSci's packaging recommendations" -msgstr "" +msgstr "Directrices para las recomendaciones de empaquetado de pyOpenSci" #: ../../package-structure-code/intro.md:129 msgid "" @@ -1643,6 +1688,11 @@ msgid "" "one the reasons you will often hear Python described as a [\"glue\" " "language](https://numpy.org/doc/stable/user/c-info.python-as-glue.html)\"" msgstr "" +"La flexibilidad del lenguaje de programación Python se presta a una amplia gama de opciones de herramientas " +"para crear un paquete de Python. Python es tan flexible que es uno de los pocos lenguajes que se pueden usar " +"para envolver otros lenguajes. La capacidad de Python para envolver otros lenguajes es una de las razones por " +"las que a menudo escuchará que Python se describe como un " +"[\"lenguaje de pegamento\"](https://numpy.org/doc/stable/user/c-info.python-as-glue.html)\"" #: ../../package-structure-code/intro.md:135 msgid "" @@ -1651,6 +1701,9 @@ msgid "" " they may need to support extensions or tools written in other languages " "such as C or C++." msgstr "" +"Si está construyendo un paquete de Python puro, entonces su configuración de empaquetado puede ser simple. " +"Sin embargo, algunos paquetes científicos tienen requisitos complejos, ya que pueden necesitar soportar " +"extensiones o herramientas escritas en otros lenguajes como C o C++." #: ../../package-structure-code/intro.md:139 msgid "" @@ -1658,22 +1711,26 @@ msgid "" "create a Python package. In this guide, we suggest packaging approaches " "and tools based on:" msgstr "" +"Para apoyar los muchos usos diferentes de Python, hay muchas formas de crear un paquete de Python. " +"En esta guía, sugerimos enfoques y herramientas de empaquetado basados en:" #: ../../package-structure-code/intro.md:142 msgid "" "What we think will be best and easiest to adopt for those who are newer " "to packaging." msgstr "" +"Lo que creemos que será lo mejor y más fácil de adoptar para aquellos que son nuevos en el empaquetado." #: ../../package-structure-code/intro.md:144 msgid "Tools that we think are well maintained and documented." -msgstr "" +msgstr "Heramientas que creemos que están bien mantenidas y documentadas." #: ../../package-structure-code/intro.md:145 msgid "" "A shared goal of standardizing packaging approaches across this " "(scientific) Python ecosystem." msgstr "" +"Un objetivo compartido de estandarizar los enfoques de empaquetado en todo este ecosistema de Python (científico)." #: ../../package-structure-code/intro.md:148 msgid "" @@ -1681,10 +1738,13 @@ msgid "" "accepted [Python community](https://packaging.python.org/en/latest/) and " "[scientific community](https://scientific-python.org/specs/)." msgstr "" +"Aquí, también intentamos alinear nuestras sugerencias con los más actuales " +"y aceptados [comunidad de Python](https://packaging.python.org/en/latest/) y " +"[comunidad científica](https://scientific-python.org/specs/)." #: ../../package-structure-code/intro.md:151 msgid "Suggestions in this guide are not pyOpenSci review requirements" -msgstr "" +msgstr "Las sugerencias en esta guía no son requisitos de revisión de pyOpenSci" #: ../../package-structure-code/intro.md:154 msgid "" @@ -1693,6 +1753,9 @@ msgid "" "package to be reviewed and accepted into our pyOpenSci open source " "ecosystem." msgstr "" +"Las sugerencias para la distribución de paquetes en esta sección se hacen con la intención de ser útiles; " +"no son requisitos específicos para que su paquete sea revisado y aceptado en nuestro ecosistema de código " +"abierto de pyOpenSci." #: ../../package-structure-code/intro.md:158 msgid "" @@ -1702,6 +1765,11 @@ msgid "" "to/author-guide.html#) if you are looking for pyOpenSci's Python package " "review requirements!" msgstr "" +"¡Consulte nuestra [página de alcance de paquete](https://www.pyopensci.org" +"/software-peer-review/about/package-scope.html) y [requisitos de revisión " +"en nuestra guía para autores](https://www.pyopensci.org/software-peer-review/how-" +"to/author-guide.html#) si está buscando los requisitos de revisión de paquetes " +"de Python de pyOpenSci!" #: ../../package-structure-code/publish-python-package-pypi-conda.md:1 msgid "Publishing Your Package In A Community Repository: PyPI or Anaconda.org" From edbf34930379a4919488e1541e75af23696d1726 Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Sun, 14 Jul 2024 19:48:49 +0200 Subject: [PATCH 08/93] docs: translate to Spanish publish-python-package-pypi-conda.md --- .../es/LC_MESSAGES/package-structure-code.po | 156 ++++++++++++++++-- 1 file changed, 142 insertions(+), 14 deletions(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index 90bc3f35..e6cf0638 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -1705,7 +1705,7 @@ msgstr "" #: ../../package-structure-code/publish-python-package-pypi-conda.md:1 msgid "Publishing Your Package In A Community Repository: PyPI or Anaconda.org" -msgstr "" +msgstr "Publicar su paquete en un repositorio comunitario: PyPI o Anaconda.org" #: ../../package-structure-code/publish-python-package-pypi-conda.md:5 msgid "" @@ -1713,18 +1713,23 @@ msgid "" "installed from a public community repository such as PyPI or a conda " "channel such as `bioconda` or `conda-forge` on Anaconda.org." msgstr "" +"pyOpenSci requiere que su paquete tenga una distribución que se pueda instalar desde un " +"repositorio comunitario público como PyPI o un canal de conda como " +"`bioconda` o `conda-forge` en Anaconda.org." #: ../../package-structure-code/publish-python-package-pypi-conda.md:9 msgid "" "Below you will learn more about the various publishing options for your " "Python package." msgstr "" +"A continuación, aprenderá más sobre las diversas opciones de publicación para su paquete de Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:14 msgid "" "Installing packages in the same environment using both pip and conda can " "lead to package conflicts." msgstr "" +"Instalar paquetes en el mismo entorno usando tanto pip como conda puede " #: ../../package-structure-code/publish-python-package-pypi-conda.md:16 msgid "" @@ -1732,12 +1737,17 @@ msgid "" " local environments, consider publishing your package to both PyPI and " "the conda-forge channel on Anaconda.org." msgstr "" +"Para minimizar conflictos para los usuarios que pueden estar usando conda (o pip) para " +"administrar entornos locales, considere publicar su paquete tanto en PyPI como en el canal " +"conda-forge en Anaconda.org." #: ../../package-structure-code/publish-python-package-pypi-conda.md:18 msgid "" "Below you will learn more specifics about the differences between PyPI " "and conda publishing of your Python package." msgstr "" +"A continuación, aprenderá más sobre las diferencias específicas entre " +"la publicación de su paquete de Python en PyPI y conda." #: ../../package-structure-code/publish-python-package-pypi-conda.md:24 #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:6 @@ -1749,6 +1759,11 @@ msgid "" "distributions. From PyPI if you create a conda-forge recipe you can then " "publish to conda-forge." msgstr "" +"Imagen representando la progresión de crear un paquete de Python, construirlo" +" y luego publicarlo en PyPI y conda-forge. Toma tu código y conviertelo en " +"archivos de distribución (sdist y wheel) que acepta PyPI. Luego hay una flecha " +"hacia el repositorio de PyPI donde publicas ambas distribuciones. Desde PyPI, " +"si creas una receta de conda-forge, puedes publicar en conda-forge." #: ../../package-structure-code/publish-python-package-pypi-conda.md:26 msgid "" @@ -1758,10 +1773,14 @@ msgid "" "your package on conda-forge. You do not need to rebuild your package to " "publish to conda-forge." msgstr "" +"Una vez que haya publicado ambas distribuciones de paquetes (la distribución de origen " +"y la rueda) en PyPI, puede publicar en conda-forge. conda-forge requiere una distribución de " +"origen en PyPI para construir su paquete en conda-forge. No necesita reconstruir su paquete para " +"publicar en conda-forge." #: ../../package-structure-code/publish-python-package-pypi-conda.md:29 msgid "What is PyPI" -msgstr "" +msgstr "¿Qué es PyPI?" #: ../../package-structure-code/publish-python-package-pypi-conda.md:31 msgid "" @@ -1770,12 +1789,17 @@ msgid "" "is also a test PyPI repository where you can test publishing your package" " prior to the final publication on PyPI." msgstr "" +"[PyPI](https://pypi.org/) es un repositorio de paquetes de Python en línea que puede " +"usar para encontrar, instalar y publicar su paquete de Python. También hay un repositorio " +"de prueba de PyPI donde puede probar la publicación de su paquete antes de la publicación final en PyPI." #: ../../package-structure-code/publish-python-package-pypi-conda.md:36 msgid "" "Many if not most Python packages can be found on PyPI and are thus " "installable using `pip`." msgstr "" +"Muchos, si no la mayoría, de los paquetes de Python se pueden encontrar en PyPI y, por lo tanto, " +"se pueden instalar usando `pip`." #: ../../package-structure-code/publish-python-package-pypi-conda.md:38 msgid "" @@ -1783,10 +1807,13 @@ msgid "" " that conda can install any package regardless of the language(s) that it" " is written in. Whereas `pip` can only install Python packages." msgstr "" +"La mayor diferencia entre usar pip y conda para instalar un paquete es que conda puede instalar " +"cualquier paquete independientemente del idioma(s) en el que esté escrito. Mientras que `pip` " +"solo puede instalar paquetes de Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:43 msgid "Click here for a tutorial on publishing your package to PyPI." -msgstr "" +msgstr "Haga clic aquí para un tutorial sobre cómo publicar su paquete en PyPI." #: ../../package-structure-code/publish-python-package-pypi-conda.md:52 msgid "" @@ -1797,10 +1824,15 @@ msgid "" "\"bundles\" will be published on PyPI when you use [a standard build tool" "](python-package-build-tools) to build your package." msgstr "" +"En la página de construcción de paquetes, discutimos los [dos tipos de distribución de paquetes " +"que creará al hacer un paquete de Python](python-package-" +"distribution-files-sdist-wheel): SDist (empaquetado como .tar.gz o .zip) y Wheel (.whl) que es " +"realmente un archivo zip. Ambos de esos \"paquetes\" de archivos se publicarán en PyPI cuando use " +"[una herramienta de construcción estándar](python-package-build-tools) para construir su paquete." #: ../../package-structure-code/publish-python-package-pypi-conda.md:60 msgid "What is conda and Anaconda.org?" -msgstr "" +msgstr "¿Qué es conda y Anaconda.org?" #: ../../package-structure-code/publish-python-package-pypi-conda.md:62 msgid "" @@ -1808,16 +1840,20 @@ msgid "" "can be used to install tools from the [Anaconda " "repository](https://repo.anaconda.com/)." msgstr "" +"conda es una herramienta de gestión de paquetes y entornos de código abierto. conda se puede " +"usar para instalar herramientas desde el [repositorio de Anaconda](https://repo.anaconda.com/)." #: ../../package-structure-code/publish-python-package-pypi-conda.md:66 msgid "" "Anaconda.org contains public and private repositories for packages. These" " repositories are known as channels (discussed below)." msgstr "" +"Anaconda.org contiene repositorios públicos y privados para paquetes. Estos repositorios se conocen " +"como canales (discutidos a continuación)." #: ../../package-structure-code/publish-python-package-pypi-conda.md:69 msgid "A brief history of conda's evolution" -msgstr "" +msgstr "Una breve historia de la evolución de conda" #: ../../package-structure-code/publish-python-package-pypi-conda.md:72 msgid "" @@ -1825,6 +1861,8 @@ msgid "" "simplify the process of, managing software dependencies in scientific " "Python projects." msgstr "" +"El ecosistema de conda evolucionó hace años para proporcionar soporte y simplificar el proceso de " +"gestión de dependencias de software en proyectos científicos de Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:76 msgid "" @@ -1836,12 +1874,20 @@ msgid "" "builds that allow developers to bundle non-Python code into a Python " "distribution using the [wheel distribution format](python-wheel)." msgstr "" +"Muchos de los proyectos científicos de Python dependen de o envuelven herramientas y extensiones " +"escritas en otros lenguajes, como C++. En las primeras etapas del desarrollo del ecosistema científico, " +"estas extensiones y herramientas no escritas en Python no eran compatibles en PyPI, lo que hacía " +"que la publicación fuera difícil. En los últimos años, hay más soporte para construcciones complejas " +"que permiten a los desarrolladores empaquetar código no escrito en Python en una distribución de Python " +"usando el [formato de distribución de rueda](python-wheel)." #: ../../package-structure-code/publish-python-package-pypi-conda.md:78 msgid "" "Conda provides a mechanism to manage these dependencies and ensure that " "the required packages are installed correctly." msgstr "" +"Conda proporciona un mecanismo para gestionar estas dependencias y asegurar que los paquetes requeridos " +"se instalen correctamente." #: ../../package-structure-code/publish-python-package-pypi-conda.md:82 msgid "" @@ -1852,10 +1898,14 @@ msgid "" "that mixes all of these packages is usually easier and more consistent " "with full-fledged package managers like conda." msgstr "" +"Si bien conda se creó originalmente para admitir paquetes de Python, ahora se usa en todos los lenguajes. " +"Este soporte entre lenguajes facilita que algunos paquetes incluyan y tengan acceso a herramientas escritas " +"en otros lenguajes, como C/C++ (gdal), Julia o R. Crear un entorno que mezcle todos estos paquetes suele ser " +"más fácil y más consistente con administradores de paquetes completos como conda." #: ../../package-structure-code/publish-python-package-pypi-conda.md:90 msgid "conda channels" -msgstr "" +msgstr "Canales de conda" #: ../../package-structure-code/publish-python-package-pypi-conda.md:92 msgid "" @@ -1863,12 +1913,16 @@ msgid "" "channels. The conda package manager can install packages from different " "channels." msgstr "" +"Los paquetes construidos con conda se alojan en repositorios que se llaman canales. " +"El administrador de paquetes conda puede instalar paquetes de diferentes canales." #: ../../package-structure-code/publish-python-package-pypi-conda.md:95 msgid "" "There are several core public channels that most people use to install " "packages using conda, including:" msgstr "" +"Existen varios canales públicos principales que la mayoría de las personas utilizan para instalar " +"paquetes con conda, incluidos:" #: ../../package-structure-code/publish-python-package-pypi-conda.md:98 msgid "" @@ -1877,6 +1931,9 @@ msgid "" "Distribution. Anaconda (the company) decides what packages live on the " "`defaults` channel." msgstr "" +"**defaults:** este es un canal administrado por Anaconda. Es la versión de los paquetes de Python " +"que instalará si instala la Distribución de Anaconda. Anaconda (la empresa) decide qué paquetes " +"viven en el canal `defaults`." #: ../../package-structure-code/publish-python-package-pypi-conda.md:99 msgid "" @@ -1885,18 +1942,24 @@ msgid "" " for tools that support geospatial data. Anyone can publish a package to " "this channel." msgstr "" +"[**conda-forge:**](https://anaconda.org/conda-forge) este es un canal impulsado por la comunidad " +"que se enfoca en paquetes científicos. Este canal es ideal para herramientas que admiten datos " +"geoespaciales. Cualquiera puede publicar un paquete en este canal." #: ../../package-structure-code/publish-python-package-pypi-conda.md:100 msgid "" "[**bioconda**](https://anaconda.org/bioconda): this channel focuses on " "biomedical tools." msgstr "" +"[**bioconda**](https://anaconda.org/bioconda): este canal se enfoca en herramientas biomédicas." #: ../../package-structure-code/publish-python-package-pypi-conda.md:102 msgid "" "**conda-forge** emerged as many of the scientific packages did not exist " "in the `defaults` Anaconda channel." msgstr "" +"**conda-forge** surgió motivado por que muchos de los paquetes científicos " +"no existían en el canal `defaults` de Anaconda." #: ../../package-structure-code/publish-python-package-pypi-conda.md:107 msgid "" @@ -1909,6 +1972,13 @@ msgid "" "says PyPI servers. PyPI - anyone can publish to PyPI. and test PyPI. a " "testbed server for you to practice." msgstr "" +"Gráfico con el título Repositorios de paquetes de Python. Debajo dice " +"Cualquier cosa alojada en PyPI se puede instalar usando pip install. Los paquetes alojados en un " +"canal de conda se pueden instalar usando conda install. Debajo de eso hay dos filas. La fila superior " +"dice canales de conda. al lado hay tres cuadros uno con conda-forge, mantenido por la comunidad; bioconda " +"y luego defaults - administrado por el equipo de Anaconda. Debajo de eso hay una fila que dice " +"Servidores de PyPI. PyPI - cualquiera puede publicar en PyPI; y test PyPI - un servidor de pruebas" +" para que practiques." #: ../../package-structure-code/publish-python-package-pypi-conda.md:109 msgid "" @@ -1918,26 +1988,34 @@ msgid "" "Anyone can submit a package to PyPI and test PyPI. Unlike conda-forge " "there are no manual checks of packages submitted to PyPI." msgstr "" +"Los canales de conda representan varios repositorios desde los que puede instalar paquetes. " +"Dado que conda-forge es mantenido por la comunidad, cualquiera puede enviar una receta allí. " +"PyPI también es un repositorio mantenido por la comunidad. Cualquiera puede enviar un paquete a PyPI " +"y a test PyPI. A diferencia de conda-forge, no hay comprobaciones manuales de los paquetes enviados a PyPI." #: ../../package-structure-code/publish-python-package-pypi-conda.md:113 msgid "conda channels, PyPI, conda, pip - Where to publish your package" -msgstr "" +msgstr "Canal de conda, PyPI, conda, pip - Dónde publicar su paquete" #: ../../package-structure-code/publish-python-package-pypi-conda.md:115 msgid "" "You might be wondering why there are different package repositories that " "can be used to install Python packages." msgstr "" +"Es posible que se pregunte por qué hay diferentes repositorios de paquetes que se pueden usar para instalar " +"paquetes de Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:118 msgid "" "And more importantly you are likely wondering how to pick the right " "repository to publish your Python package." msgstr "" +"Y, lo que es más importante, es probable que se esté preguntando cómo elegir el repositorio adecuado " +"para publicar su paquete de Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:121 msgid "The answer to both questions relates dependency conflicts." -msgstr "" +msgstr "La respuesta a ambas preguntas se relaciona con conflictos de dependencias." #: ../../package-structure-code/publish-python-package-pypi-conda.md:125 msgid "" @@ -1945,6 +2023,9 @@ msgid "" "tools and installations. At the bottom is says - My python environment " "has become so degraded that my laptop has been declared a superfund site." msgstr "" +"Imagen que muestra un cómic de XKCD que muestra una red de entornos y herramientas de Python e instalaciones. " +"En la parte inferior dice - Mi entorno de Python se ha degradado tanto que mi ordenador portátil ha sido " +"declarado un sitio de superfinanciación." #: ../../package-structure-code/publish-python-package-pypi-conda.md:127 msgid "" @@ -1955,10 +2036,15 @@ msgid "" "pip to install everything. Or use conda. If you can, try to avoid " "installing package from both pip and conda into the same environment." msgstr "" +"Instalar Python y paquetes de Python desde diferentes repositorios puede " +"llevar a conflictos de entorno donde una versión de un paquete no funciona con una versión de otro paquete. " +"Para mantener sus entornos limpios y funcionando, es mejor instalar paquetes desde el mismo repositorio. " +"Por lo tanto, use pip para instalar todo. O use conda. Si puede, intente evitar instalar paquetes tanto " +"de pip como de conda en el mismo entorno." #: ../../package-structure-code/publish-python-package-pypi-conda.md:135 msgid "Managing Python package dependency conflicts" -msgstr "" +msgstr "Gestión de conflictos de dependencias de paquetes de Python" #: ../../package-structure-code/publish-python-package-pypi-conda.md:137 msgid "" @@ -1969,12 +2055,19 @@ msgid "" "contain packages installed from both pip and conda are more likely to " "yield dependency conflicts." msgstr "" +"Los entornos de Python pueden encontrar conflictos porque las herramientas de Python se pueden instalar " +"desde diferentes repositorios. En términos generales, los entornos de Python tienen una menor probabilidad " +"de conflictos de dependencias cuando las herramientas se instalan desde el mismo repositorio de paquetes. " +"Por lo tanto, los entornos que contienen paquetes instalados tanto desde pip como desde conda tienen más " +"probabilidades de generar conflictos de dependencias." #: ../../package-structure-code/publish-python-package-pypi-conda.md:144 msgid "" "Similarly installing packages from the default anaconda package mixed " "with the conda-forge channel can also lead to dependency conflicts." msgstr "" +"De manera similar, instalar paquetes del paquete predeterminado de Anaconda mezclado con el canal conda-forge " +"también puede llevar a conflictos de dependencias." #: ../../package-structure-code/publish-python-package-pypi-conda.md:146 msgid "" @@ -1986,12 +2079,20 @@ msgid "" "in the channel . Thus, `conda-forge` channel ensures that a broad suite " "of user-developed community packages can be installed from conda." msgstr "" +"Muchos instalan paquetes directamente desde el canal `defaults` de conda. Sin embargo, debido a que este " +"canal es administrado por Anaconda, los paquetes disponibles en él están limitados a aquellos que Anaconda " +"decide que deben ser fundamentales para una instalación estable. El canal conda-forge se creó para complementar " +"el canal `defaults`. Permite a cualquiera enviar un paquete para ser publicado en el canal. Por lo tanto, el canal " +"`conda-forge` garantiza que se puedan instalar una amplia gama de paquetes de la comunidad desarrollados por el usuario " +"desde conda." #: ../../package-structure-code/publish-python-package-pypi-conda.md:150 msgid "" "Take-aways: If you can, publish on both PyPI and conda-forge to " "accommodate more users of your package" msgstr "" +"Conclusión: Si puede, publique tanto en PyPI como en conda-forge " +"para acomodar a más usuarios de su paquete" #: ../../package-structure-code/publish-python-package-pypi-conda.md:152 msgid "" @@ -2000,32 +2101,41 @@ msgid "" "you should consider publishing to both PyPI and the conda-forge channel " "(_more on that below_)." msgstr "" +"La conclusión aquí para los mantenedores es que si anticipa que los usuarios querrán usar conda para " +"administrar sus entornos locales (lo cual muchos hacen), debería considerar publicar tanto en PyPI como en " +"el canal conda-forge (_más sobre eso a continuación_)." #: ../../package-structure-code/publish-python-package-pypi-conda.md:157 msgid "Additional resources" -msgstr "" +msgstr "Recursos adicionales" #: ../../package-structure-code/publish-python-package-pypi-conda.md:158 msgid "" "[learn more about why conda-forge was created, here](https://conda-" "forge.org/docs/user/introduction.html)" msgstr "" +"[aprende más sobre por qué se creó conda-forge, aquí](https://conda-" +"forge.org/docs/user/introduction.html)" #: ../../package-structure-code/publish-python-package-pypi-conda.md:160 msgid "" "[To learn more about conda terminology, check out their " "glossary.](https://docs.conda.io/projects/conda/en/latest/glossary.html )" msgstr "" +"[Para aprender más sobre la terminología de conda, consulte su " +"glosario.](https://docs.conda.io/projects/conda/en/latest/glossary.html )" #: ../../package-structure-code/publish-python-package-pypi-conda.md:165 msgid "How to submit to conda-forge" -msgstr "" +msgstr "Como publicar en conda-forge" #: ../../package-structure-code/publish-python-package-pypi-conda.md:167 msgid "" "While pyOpenSci doesn't require you to add your package to conda-forge, " "we encourage you to consider doing so!" msgstr "" +"¡Si bien pyOpenSci no requiere que agregue su paquete a conda-forge, le " +"animamos a que lo considere!" #: ../../package-structure-code/publish-python-package-pypi-conda.md:170 msgid "" @@ -2034,20 +2144,25 @@ msgid "" "provided by the conda-forge maintainer team.](https://conda-" "forge.org/docs/maintainer/adding_pkgs.html)." msgstr "" +"Una vez que su paquete esté en PyPI, el proceso para agregar su paquete a conda-forge es sencillo de hacer. " +"[Puede seguir los pasos detallados proporcionados por el equipo de mantenimiento de conda-forge.](https://conda-" +"forge.org/docs/maintainer/adding_pkgs.html)." #: ../../package-structure-code/publish-python-package-pypi-conda.md:175 msgid "Click here for a tutorial on adding your package to conda-forge." -msgstr "" +msgstr "Haga clic aquí para un tutorial sobre cómo agregar su paquete a conda-forge." #: ../../package-structure-code/publish-python-package-pypi-conda.md:182 msgid "If you want a step by step tutorial, click here." -msgstr "" +msgstr "Si desea un tutorial paso a paso, haga clic aquí." #: ../../package-structure-code/publish-python-package-pypi-conda.md:185 msgid "" "Once your package is added, you will have a feedstock repository on " "GitHub with your packages name" msgstr "" +"Una vez que se agregue su paquete, tendrá un repositorio de feedstock en " +"GitHub con el nombre de su paquete" #: ../../package-structure-code/publish-python-package-pypi-conda.md:188 msgid "" @@ -2055,10 +2170,13 @@ msgid "" "package - movingpandas](https://github.com/conda-forge/movingpandas-" "feedstock)" msgstr "" +"[Aquí hay un ejemplo de feedstock de conda-forge para el paquete aprobado " +"por pyOpenSci - movingpandas](https://github.com/conda-forge/movingpandas-" +"feedstock)" #: ../../package-structure-code/publish-python-package-pypi-conda.md:191 msgid "Maintaining your conda-forge package repository" -msgstr "" +msgstr "Mantenimiento de su repositorio de paquetes conda-forge" #: ../../package-structure-code/publish-python-package-pypi-conda.md:193 msgid "" @@ -2068,6 +2186,11 @@ msgid "" " in the conda-forge repository. Once that build is complete, you will get" " a notification to review the update." msgstr "" +"Una vez que su paquete esté en el canal conda-forge, mantenerlo es simple. " +"Cada vez que envíe una nueva versión de su paquete a PyPI, se iniciará una " +"compilación de integración continua que actualizará su paquete en el repositorio " +"conda-forge. Una vez que se complete esa compilación, recibirá una notificación " +"para revisar la actualización." #: ../../package-structure-code/publish-python-package-pypi-conda.md:199 msgid "" @@ -2077,6 +2200,11 @@ msgid "" "file found in the pull request match the PyPI metadata of the new " "release." msgstr "" +"Puede fusionar la solicitud de cambio para esa actualización una vez que esté " +"contento con ella. Una solicitud de cambio lista para fusionar generalmente " +"significa asegurarse de que las dependencias de su proyecto (conocidas como " +"requisitos en tiempo de ejecución) enumeradas en el archivo YAML actualizado " +"en la solicitud de cambio coincidan con los metadatos de PyPI de la nueva versión." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:1 msgid "Use a pyproject.toml file for your package configuration & metadata" From b033118792ac69b44b89053451ad60b7faa37bd8 Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Sun, 14 Jul 2024 19:52:33 +0200 Subject: [PATCH 09/93] docs: translate to Spanish python-package-build-tools.md --- .../es/LC_MESSAGES/package-structure-code.po | 538 ++++++++++++++---- 1 file changed, 432 insertions(+), 106 deletions(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index 90bc3f35..ccc669a2 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -2588,11 +2588,11 @@ msgstr "" #: ../../package-structure-code/python-package-build-tools.md:1 msgid "Python Packaging Tools" -msgstr "" +msgstr "Herramientas de empaquetado de Python" #: ../../package-structure-code/python-package-build-tools.md:3 msgid "Tools for building your package" -msgstr "" +msgstr "Herramientas para construir su paquete" #: ../../package-structure-code/python-package-build-tools.md:5 msgid "" @@ -2604,6 +2604,12 @@ msgid "" "tools that currently support packages with C/C++ and other language " "extensions." msgstr "" +"Hay varias herramientas de construcción diferentes que puede utilizar " +"para [crear las distribuciones _sdist_ y _wheel_ de su paquete de Python](python-package-" +"distribution-files-sdist-wheel). A continuación, discutimos las características, beneficios " +"y limitaciones de las herramientas de empaquetado de Python más comúnmente utilizadas. " +"Nos enfocamos en paquetes de Python puro en esta guía. Sin embargo, también destacamos " +"herramientas que actualmente admiten paquetes con extensiones en C/C++ y otros lenguajes." #: ../../package-structure-code/python-package-build-tools.md:13 msgid "" @@ -2614,6 +2620,12 @@ msgid "" "Hatch are the tools we think beginners might appreciate most with Poetry " "being a close second. Poetry is nice for pure Python projects." msgstr "" +"Diagrama de árbol de decisión que muestra las diversas herramientas de empaquetado " +"frontend y backend. Puede decidir qué herramienta de empaquetado utilizar pensando en " +"qué características necesita. PDM y Hatch son actualmente las herramientas más flexibles " +"ya que también utilizan diferentes backends de construcción. Por lo tanto, actualmente " +"PDM y Hatch son las herramientas que creemos que los principiantes podrían apreciar más, " +"con Poetry siendo un segundo cercano. Poetry es agradable para proyectos de Python puro." #: ../../package-structure-code/python-package-build-tools.md:15 msgid "" @@ -2623,6 +2635,11 @@ msgid "" "understand the most populate tools in the ecosystem. Each tool has " "different features as highlighted below." msgstr "" +"Diagrama que muestra las diferentes herramientas de construcción de frontend disponibles " +"para usar en el ecosistema de paquetes de Python que puede seleccionar. Seleccionamos " +"herramientas para incluir en este diagrama basándonos en la encuesta de PyPI que nos ayudó " +"a comprender las herramientas más populares en el ecosistema. Cada herramienta tiene " +"características diferentes como se destaca a continuación." #: ../../package-structure-code/python-package-build-tools.md:18 msgid "" @@ -2630,10 +2647,12 @@ msgid "" "written in other languages, [check out the page on complex package builds" ".](complex-python-package-builds)" msgstr "" +"Si desea saber más sobre paquetes de Python que tienen extensiones escritas en otros lenguajes, " +"[consulte la página sobre construcciones de paquetes complejas.](complex-python-package-builds)" #: ../../package-structure-code/python-package-build-tools.md:21 msgid "Tools that we review here" -msgstr "" +msgstr "Herramientas que revisamos aquí" #: ../../package-structure-code/python-package-build-tools.md:23 msgid "" @@ -2641,6 +2660,10 @@ msgid "" "popular packaging tools in the PyPA survey. You will learn more about the" " following tools on this page:" msgstr "" +"En esta sección hemos seleccionado herramientas que se clasificaron como las herramientas de " +"empaquetado más populares en la encuesta de PyPA. Aprenderá más sobre las siguientes herramientas " +"en esta página:" + #: ../../package-structure-code/python-package-build-tools.md:27 msgid "" @@ -2648,30 +2671,33 @@ msgid "" "build.readthedocs.io/en/stable/) + " "[setuptools](https://setuptools.pypa.io/en/latest/)" msgstr "" +"[Twine](https://twine.readthedocs.io/en/stable/), [Build](https://pypa-" +"build.readthedocs.io/en/stable/) + " +"[setuptools](https://setuptools.pypa.io/en/latest/)" #: ../../package-structure-code/python-package-build-tools.md:28 msgid "[Flit](https://flit.pypa.io/en/stable/)" -msgstr "" +msgstr "[Flit](https://flit.pypa.io/en/stable/)" #: ../../package-structure-code/python-package-build-tools.md:29 msgid "[Hatch](https://hatch.pypa.io/latest/)" -msgstr "" +msgstr "[Hatch](https://hatch.pypa.io/latest/)" #: ../../package-structure-code/python-package-build-tools.md:30 msgid "[PDM](https://pdm.fming.dev/latest/)" -msgstr "" +msgstr "[PDM](https://pdm.fming.dev/latest/)" #: ../../package-structure-code/python-package-build-tools.md:31 msgid "[Poetry](https://python-poetry.org/docs/)" -msgstr "" +msgstr "[Poetry](https://python-poetry.org/docs/)" #: ../../package-structure-code/python-package-build-tools.md:33 msgid "Summary of tools Hatch vs. PDM vs. Poetry (and setuptools)" -msgstr "" +msgstr "Resumen de herramientas Hatch vs. PDM vs. Poetry (y setuptools)" #: ../../package-structure-code/python-package-build-tools.md:35 msgid "If you are looking for a quick summary, read below." -msgstr "" +msgstr "Si está buscando un resumen rápido, lea a continuación." #: ../../package-structure-code/python-package-build-tools.md:37 msgid "" @@ -2679,12 +2705,17 @@ msgid "" "to build your package. Selecting a tool comes down to the features that " "you are looking for in your workflow." msgstr "" +"En general, cualquier herramienta moderna que seleccione de esta página será " +"excelente para construir su paquete. Seleccionar una herramienta se reduce a las características " +"que está buscando en su flujo de trabajo." #: ../../package-structure-code/python-package-build-tools.md:38 msgid "" "We suggest that beginners start with a modern workflow tool like PDM as " "opposed to navigating the complexities of setuptools." msgstr "" +"Sugerimos que los principiantes comiencen con una herramienta de flujo de trabajo moderna como PDM " +"en lugar de navegar por las complejidades de setuptools." #: ../../package-structure-code/python-package-build-tools.md:39 msgid "" @@ -2694,14 +2725,19 @@ msgid "" "Poetry will work well for pure-python builds! Poetry also has an active " "discord where you can ask questions." msgstr "" +"Si va a utilizar Poetry (es la herramienta más popular y tiene la mejor " +"documentación), tenga en cuenta las adiciones de dependencias de límites " +"superiores y considere anular las dependencias cuando las agregue. ¡Si hace " +"eso, Poetry funcionará bien para construcciones de Python puro! Poetry también " +"tiene un discord activo donde puede hacer preguntas." #: ../../package-structure-code/python-package-build-tools.md:41 msgid "Below are some features that Hatch and PDM offer that Poetry does not." -msgstr "" +msgstr "Abajo hay algunas características que Hatch y PDM ofrecen que Poetry no." #: ../../package-structure-code/python-package-build-tools.md:43 msgid "PDM:" -msgstr "" +msgstr "PDM:" #: ../../package-structure-code/python-package-build-tools.md:45 msgid "" @@ -2710,18 +2746,21 @@ msgid "" "complex Python builds as it supports meson-python and other build " "backends." msgstr "" +"Admite otros backends, lo que lo hace ideal para construcciones que no son de Python puro. " +"Esto significa que PDM es una excelente opción tanto para Python puro como para construcciones " +"de Python más complejas, ya que admite meson-python y otros backends de construcción." #: ../../package-structure-code/python-package-build-tools.md:46 msgid "Offers flexibility in dependency management which we like" -msgstr "" +msgstr "Ofrece flexibilidad en la gestión de dependencias que nos gusta" #: ../../package-structure-code/python-package-build-tools.md:47 msgid "Offers lock files if you need them" -msgstr "" +msgstr "Ofrece archivos de bloqueo si los necesita" #: ../../package-structure-code/python-package-build-tools.md:49 msgid "Hatch:" -msgstr "" +msgstr "Hatch:" #: ../../package-structure-code/python-package-build-tools.md:51 msgid "" @@ -2729,6 +2768,9 @@ msgid "" "Python versions. If this feature is important to you, then Hatch is a " "clear winner." msgstr "" +"Ofrece gestión de entornos de matriz que le permite ejecutar pruebas en " +"versiones de Python. Si esta característica es importante para usted, entonces " +"Hatch es un claro ganador." #: ../../package-structure-code/python-package-build-tools.md:52 msgid "" @@ -2736,10 +2778,12 @@ msgid "" "you are looking to reduce the number of tools in your workflow, Hatch " "might be for you." msgstr "" +"Ofrece una herramienta Nox / Make file para optimizar su flujo de trabajo de construcción. " +"Si está buscando reducir el número de herramientas en su flujo de trabajo, Hatch podría ser para usted." #: ../../package-structure-code/python-package-build-tools.md:55 msgid "Build front-end vs. build back-end tools" -msgstr "" +msgstr "Constructores frontend vs. constructores backend" #: ../../package-structure-code/python-package-build-tools.md:57 msgid "" @@ -2747,10 +2791,12 @@ msgid "" "package, it's important to first understand the difference between a " "build tool front-end and build back-end." msgstr "" +"Para comprender mejor sus opciones, cuando se trata de construir un paquete de Python, " +"es importante primero comprender la diferencia entre un constructor de frontend y un constructor de backend." #: ../../package-structure-code/python-package-build-tools.md:62 msgid "Build back-ends" -msgstr "" +msgstr "Constructores backend" #: ../../package-structure-code/python-package-build-tools.md:64 msgid "" @@ -2761,6 +2807,12 @@ msgid "" "package build that does not have extensions that are written in another " "programming language (such as `C` or `C++`)." msgstr "" +"La mayoría de las herramientas de empaquetado tienen una herramienta de construcción de backend " +"que construye su paquete y crea archivos de distribución [(sdist y wheel)](python-" +"package-distribution-files-sdist-wheel) asociados. Algunas herramientas, como **Flit**, " +"solo admiten construcciones de paquetes de Python puro. Una construcción de Python puro se refiere " +"a una construcción de paquete que no tiene extensiones escritas en otro lenguaje de programación " +"(como `C` o `C++`)." #: ../../package-structure-code/python-package-build-tools.md:71 msgid "" @@ -2771,10 +2823,15 @@ msgid "" "is particularly complex (i.e. you have more than a few `C`/`C++` " "extensions), then we suggest you use **meson.build** or **scikit-build**." msgstr "" +"Otros paquetes que tienen extensiones en C y C++ (o que envuelven otros lenguajes como fortran) " +"requieren pasos adicionales de compilación de código cuando se construyen. Backends como **setuptools.build**, " +"**meson.build** y **scikit-build** admiten construcciones complejas con pasos personalizados. " +"Si su construcción es particularmente compleja (es decir, tiene más de unas pocas extensiones `C`/`C++`), " +"entonces le sugerimos que use **meson.build** o **scikit-build**." #: ../../package-structure-code/python-package-build-tools.md:77 msgid "Python package build front-ends" -msgstr "" +msgstr "Constructores frontend de paquetes de Python" #: ../../package-structure-code/python-package-build-tools.md:79 msgid "" @@ -2782,36 +2839,43 @@ msgid "" "to perform common packaging tasks using similar commands. These tasks " "include:" msgstr "" +"Una herramienta de frontend de empaquetado se refiere a una herramienta que " +"facilita la realización de tareas de empaquetado comunes utilizando comandos similares. " +"Estas tareas incluyen:" #: ../../package-structure-code/python-package-build-tools.md:82 msgid "" "[Build your packages (create the sdist and wheel distributions)](python-" "package-distribution-files-sdist-wheel)" msgstr "" +"[Construir sus paquetes (crear las distribuciones sdist y wheel)](python-" +"package-distribution-files-sdist-wheel)" #: ../../package-structure-code/python-package-build-tools.md:83 msgid "" "Installing your package in a development mode (so it updates when you " "update your code)" msgstr "" +"Instalar su paquete en un modo de desarrollo (para que se actualice cuando actualice su código)" #: ../../package-structure-code/python-package-build-tools.md:84 msgid "Publishing to PyPI" -msgstr "" +msgstr "Publicar en PyPI" #: ../../package-structure-code/python-package-build-tools.md:85 msgid "Running tests" -msgstr "" +msgstr "Correr tests" #: ../../package-structure-code/python-package-build-tools.md:86 msgid "Building documentation" -msgstr "" +msgstr "Construir documentación" #: ../../package-structure-code/python-package-build-tools.md:87 msgid "" "Managing an environment or multiple environments in which you need to run" " tests and develop your package" msgstr "" +"Gestionar un entorno o varios entornos en los que necesita ejecutar tests y desarrollar su paquete" #: ../../package-structure-code/python-package-build-tools.md:89 msgid "" @@ -2819,6 +2883,9 @@ msgid "" " builds. Each front-end tool discussed below supports a slightly " "different set of Python packaging tasks." msgstr "" +"Hay varias herramientas de empaquetado de Python que puede utilizar para construcciones de Python puro. " +"Cada herramienta de frontend discutida a continuación admite un conjunto " +"ligeramente diferente de tareas de empaquetado de Python." #: ../../package-structure-code/python-package-build-tools.md:93 msgid "" @@ -2830,6 +2897,12 @@ msgid "" "build your package's sdist and wheel distribution files, then you can " "stick with PyPA's Build. You'd then use Twine to publish to PyPI." msgstr "" +"Por ejemplo, puede utilizar las herramientas de empaquetado **Flit**, **Hatch** o **PDM** para " +"tanto construir como publicar su paquete en PyPI. Sin embargo, mientras **Hatch** y **PDM** " +"admite el versionado y la gestión de entornos, **Flit** no lo hace. Si desea una herramienta " +"que admita el bloqueo de dependencias, puede utilizar **PDM** o **Poetry** pero no **Hatch**. " +"Si solo necesita construir los archivos de distribución sdist y wheel de su paquete, " +"entonces puede quedarse con Build de PyPA. Luego usaría Twine para publicar en PyPI." #: ../../package-structure-code/python-package-build-tools.md:100 msgid "" @@ -2837,24 +2910,29 @@ msgid "" "front-end that performs multiple tasks. You will need to use **build** to" " build your package and **twine** to publish to PyPI." msgstr "" +"Si está utilizando **Setuptools**, no hay un frontend de construcción predeterminado fácil de usar " +"que realice múltiples tareas. Necesitará usar **build** para construir su paquete y **twine** para " +"publicar en PyPI." #: ../../package-structure-code/python-package-build-tools.md:103 msgid "Example build steps that can be simplified using a front-end tool" -msgstr "" +msgstr "Ejemplo de pasos de construcción que se pueden simplificar utilizando una herramienta de frontend" #: ../../package-structure-code/python-package-build-tools.md:105 msgid "" "Below, you can see how a build tool streamlines your packaging " "experience. Example to build your package with **Hatch**:" msgstr "" +"A continuación, puede ver cómo una herramienta de construcción simplifica su experiencia de empaquetado. " +"Ejemplo para construir su paquete con **Hatch**:" #: ../../package-structure-code/python-package-build-tools.md:115 msgid "Example build steps using the **setuptools** back-end and **build**:" -msgstr "" +msgstr "Ejemplo de pasos de construcción utilizando el backend de **setuptools** y **build**:" #: ../../package-structure-code/python-package-build-tools.md:125 msgid "Choosing a build back-end" -msgstr "" +msgstr "Eligiendo un backend de construcción" #: ../../package-structure-code/python-package-build-tools.md:127 msgid "" @@ -2863,22 +2941,30 @@ msgid "" "For pure Python packages, the main difference between the different build" " back-ends discussed below is:" msgstr "" +"La mayoría de las herramientas de empaquetado de frontend tienen su propia " +"herramienta de construcción de backend. La herramienta de construcción crea los archivos de " +"distribución (sdist y wheel) de su paquete. Para paquetes de Python puro, la principal diferencia " +"entre los diferentes backends de construcción discutidos a continuación es:" #: ../../package-structure-code/python-package-build-tools.md:132 msgid "" "How configurable they are - for example, do they allow you to add build " "steps that support non python extensions?" msgstr "" +"Qué tan configurables son - por ejemplo, ¿le permiten agregar pasos " +"de construcción que admitan extensiones no Python?" #: ../../package-structure-code/python-package-build-tools.md:133 msgid "" "How much you need to configure them to ensure the correct files are " "included in your sdist and wheel distributions." msgstr "" +"Cuánto necesita configurarlos para asegurarse de que los archivos correctos " +"se incluyan en sus distribuciones sdist y wheel." #: ../../package-structure-code/python-package-build-tools.md:135 msgid "Build back-end support for non pure-python packages" -msgstr "" +msgstr "Construcción de soporte de backend para paquetes no puros de Python" #: ../../package-structure-code/python-package-build-tools.md:137 msgid "" @@ -2886,20 +2972,24 @@ msgid "" " only support pure Python builds. Other back-ends support C and C++ " "extensions as follows:" msgstr "" +"Es importante tener en cuenta que algunos backends de construcción, como **Flit-core**, solo admiten " +"construcciones de Python puro. Otros backends admiten extensiones en C y C++ de la siguiente manera:" #: ../../package-structure-code/python-package-build-tools.md:140 msgid "setuptools supports builds using C / C++ extensions" -msgstr "" +msgstr "setuptools admite construcciones utilizando extensiones en C / C++" #: ../../package-structure-code/python-package-build-tools.md:141 msgid "" "Hatchling (hatch's back-end) supports C / C++ extensions via plugins that" " the developer creates to customize a build" msgstr "" +"Hatchling (backend de hatch) admite extensiones en C / C++ a través de " +"complementos que el desarrollador crea para personalizar una construcción" #: ../../package-structure-code/python-package-build-tools.md:142 msgid "PDM's back-end supports C / C++ extensions by using setuptools" -msgstr "" +msgstr "El backend de PDM admite extensiones en C / C++ utilizando setuptools" #: ../../package-structure-code/python-package-build-tools.md:143 msgid "" @@ -2907,16 +2997,21 @@ msgid "" " currently undocumented. As such we don't recommend using Poetry for " "complex or non pure Python builds until it is documented." msgstr "" +"El backend de Poetry admite extensiones en C/C++ sin embargo esta funcionalidad " +"actualmente no está documentada. Por lo tanto, no recomendamos usar Poetry para construcciones " +"complejas o no puras de Python hasta que esté documentada." #: ../../package-structure-code/python-package-build-tools.md:145 msgid "" "While we won't discuss more complex builds below, we will identify which " "tools have documented support for C / C++ extensions." msgstr "" +"Si bien no discutiremos construcciones más complejas a continuación, identificaremos qué herramientas " +"tienen soporte documentado para extensiones en C / C++." #: ../../package-structure-code/python-package-build-tools.md:148 msgid "An ecosystem of Python build tools" -msgstr "" +msgstr "Un ecosistema de herramientas de construcción de Python" #: ../../package-structure-code/python-package-build-tools.md:150 msgid "" @@ -2924,10 +3019,13 @@ msgid "" "build front-end tools. We highlight the features that each tool offers as" " a way to help you decide what tool might be best for your workflow." msgstr "" +"A continuación, presentamos varias de las herramientas de frontend de construcción de paquetes de Python " +"más comúnmente utilizadas. Destacamos las características que ofrece cada herramienta como una forma de " +"ayudarlo a decidir qué herramienta podría ser la mejor para su flujo de trabajo." #: ../../package-structure-code/python-package-build-tools.md:154 msgid "We do not suggest using setuptools" -msgstr "" +msgstr "No sugerimos usar setuptools" #: ../../package-structure-code/python-package-build-tools.md:157 msgid "" @@ -2935,12 +3033,16 @@ msgid "" " setuptools because setuptools will require some additional knowledge to " "set up correctly." msgstr "" +"Sugerimos que elija una de las herramientas modernas enumeradas anteriormente en lugar de setuptools " +"porque setuptools requerirá algunos conocimientos adicionales para configurarse correctamente." #: ../../package-structure-code/python-package-build-tools.md:161 msgid "" "We review setuptools as a back-end because it is still popular. However " "it is not the most user friendly option." msgstr "" +"Revisamos setuptools como backend porque todavía es popular. Sin embargo, " +"no es la opción más amigable para el usuario." #: ../../package-structure-code/python-package-build-tools.md:165 msgid "" @@ -2948,12 +3050,16 @@ msgid "" "(with build) and Poetry (a front end tool with numerous features and " "excellent documentation)." msgstr "" +"Las herramientas más utilizadas en el ecosistema son el backend de setuptools " +"(con build) y Poetry (una herramienta de frontend con numerosas características y excelente documentación)." #: ../../package-structure-code/python-package-build-tools.md:171 msgid "" "Graph showing the results of the 2022 PyPA survey of Python packaging " "tools. On the x axis is percent response and on the y axis are the tools." msgstr "" +"Gráfico que muestra los resultados de la encuesta de PyPA 2022 de herramientas de empaquetado de Python. " +"En el eje x está la respuesta porcentual y en el eje y están las herramientas." #: ../../package-structure-code/python-package-build-tools.md:173 msgid "" @@ -2966,45 +3072,53 @@ msgid "" "heavily represented by those in web development. So this represents a " "snapshot across the broader Python ecosystem." msgstr "" +"Los resultados de la encuesta de desarrolladores de Python (n => 8,000 usuarios de PyPI) muestran " +"setuptools y poetry como las herramientas de empaquetado de Python más utilizadas. Las herramientas " +"centrales que hemos visto que se utilizan en la comunidad científica están incluidas aquí. " +"[Puede ver los resultados completos de la encuesta haciendo clic aquí.](https://drive.google.com/file/d/1U5d5SiXLVkzDpS0i1dJIA4Hu5Qg704T9/view) " +"NOTA: estos datos representan a los mantenedores en todos los dominios y es probable que estén " +"fuertemente representados por aquellos en desarrollo web. Por lo tanto, esto representa una instantánea " +"de todo el ecosistema de Python." #: ../../package-structure-code/python-package-build-tools.md:176 msgid "Chose a build workflow tool" -msgstr "" +msgstr "Elige una herramienta de flujo de trabajo de construcción" #: ../../package-structure-code/python-package-build-tools.md:178 msgid "The tools that we review below include:" -msgstr "" +msgstr "Las herramientas que revisamos a continuación incluyen:" #: ../../package-structure-code/python-package-build-tools.md:180 msgid "Twine, Build + setuptools" -msgstr "" +msgstr "Twine, Build + setuptools" #: ../../package-structure-code/python-package-build-tools.md:181 #: ../../package-structure-code/python-package-build-tools.md:291 msgid "Flit" -msgstr "" +msgstr "Flit" #: ../../package-structure-code/python-package-build-tools.md:182 #: ../../package-structure-code/python-package-build-tools.md:331 msgid "Hatch" -msgstr "" +msgstr "Hatch" #: ../../package-structure-code/python-package-build-tools.md:183 #: ../../package-structure-code/python-package-build-tools.md:215 #: ../../package-structure-code/python-package-build-tools.md:230 msgid "PDM" -msgstr "" +msgstr "PDM" #: ../../package-structure-code/python-package-build-tools.md:184 #: ../../package-structure-code/python-package-build-tools.md:374 msgid "Poetry" -msgstr "" +msgstr "Poetry" #: ../../package-structure-code/python-package-build-tools.md:186 msgid "" "When you are selecting a tool, you might consider this general workflow " "of questions:" msgstr "" +"Cuando esté seleccionando una herramienta, puede considerar este flujo de preguntas:" #: ../../package-structure-code/python-package-build-tools.md:189 msgid "" @@ -3012,10 +3126,12 @@ msgid "" "Pick the tool that has the features that you want to use in your build " "workflow. We suggest:" msgstr "" +"**¿Es su herramienta de Python puro? ¿Sí?** ¡Puede usar la herramienta que desee! Elija la herramienta " +"que tenga las características que desea utilizar en su flujo de trabajo de construcción. Sugerimos:" #: ../../package-structure-code/python-package-build-tools.md:191 msgid "Flit, Hatch, PDM or Poetry (read below for more)" -msgstr "" +msgstr "Flit, Hatch, PDM or Poetry (read below for more)" #: ../../package-structure-code/python-package-build-tools.md:193 msgid "" @@ -3026,6 +3142,11 @@ msgid "" "workflow. PDM supports other back-ends such as scikit-build and meson-" "python that will allow you to fully customize your package's build." msgstr "" +"**¿Tiene su herramienta unas pocas extensiones en C o C++?** Genial, sugerimos usar **PDM** por el momento. " +"Es la única herramienta en la lista a continuación que tiene tanto un flujo de trabajo documentado para " +"apoyar tales extensiones como soporte para otros backends en el caso de que los hooks de construcción no sean " +"suficientes para su flujo de trabajo. PDM admite otros backends como scikit-build y meson-python que le permitirán " +"personalizar completamente la construcción de su paquete." #: ../../package-structure-code/python-package-build-tools.md:197 msgid "" @@ -3036,10 +3157,15 @@ msgid "" "python to build their packages. Thus, we appreciate that PDM can work " "with meson-python specifically." msgstr "" +"NOTA: También puede usar Hatch para construcciones no puras de Python. Hatch, similar a PDM, le permite " +"escribir sus propios hooks de construcción o complementos para admitir pasos de construcción personalizados. " +"Pero actualmente, hatch no admite otros backends de construcción. Muchos de los paquetes científicos centrales " +"se están moviendo a meson-python para construir sus paquetes. Por lo tanto, apreciamos que PDM pueda trabajar " +"con meson-python específicamente." #: ../../package-structure-code/python-package-build-tools.md:199 msgid "Python packaging tools summary" -msgstr "" +msgstr "Resumen de herramientas de empaquetado de Python" #: ../../package-structure-code/python-package-build-tools.md:201 msgid "" @@ -3051,24 +3177,30 @@ msgid "" "do all of those things using the same tool (e.g. `hatch build`, `hatch " "publish` or `pdm build`, `pdm publish`)." msgstr "" +"A continuación, resumimos las características ofrecidas por las herramientas de frontend de construcción " +"más populares. Es importante tener en cuenta que estas herramientas de frontend eliminan la necesidad de " +"usar otras herramientas centrales en su flujo de trabajo. Por ejemplo, si usa setuptools, también necesitará " +"usar Build y Twine para construir su paquete y publicar en PyPI. Pero si usa Poetry, Hatch o PDM, puede hacer " +"todas esas cosas con la misma herramienta (por ejemplo, `hatch build`, `hatch publish` o `pdm build`, `pdm publish`)." #: ../../package-structure-code/python-package-build-tools.md:204 msgid "" "Note that because setuptools does not offer a front-end interface, it is " "not included in the table." msgstr "" +"Note que debido a que setuptools no ofrece una interfaz de frontend, no se incluye en la tabla." #: ../../package-structure-code/python-package-build-tools.md:208 msgid "Package tool features table" -msgstr "" +msgstr "Tabla de características de las herramientas de empaquetado" #: ../../package-structure-code/python-package-build-tools.md:215 msgid "Feature, Flit, Hatch, PDM, Poetry" -msgstr "" +msgstr "Feature, Flit, Hatch, PDM, Poetry" #: ../../package-structure-code/python-package-build-tools.md:215 msgid "Default Build Back-end" -msgstr "" +msgstr "Backend de construcción predeterminado" #: ../../package-structure-code/python-package-build-tools.md:215 msgid "Flit-core" @@ -3086,7 +3218,7 @@ msgstr "" #: ../../package-structure-code/python-package-build-tools.md:251 #: ../../package-structure-code/python-package-build-tools.md:348 msgid "Use Other Build Backends" -msgstr "" +msgstr "Usar otros backends de construcción" #: ../../package-structure-code/python-package-build-tools.md:215 #: ../../package-structure-code/python-package-build-tools.md:348 @@ -3104,40 +3236,40 @@ msgstr "" #: ../../package-structure-code/python-package-build-tools.md:215 #: ../../package-structure-code/python-package-build-tools.md:348 msgid "Dependency management" -msgstr "" +msgstr "Gestión de dependencias" #: ../../package-structure-code/python-package-build-tools.md:215 #: ../../package-structure-code/python-package-build-tools.md:251 msgid "Publish to PyPI" -msgstr "" +msgstr "Publicar en PyPI" #: ../../package-structure-code/python-package-build-tools.md:215 msgid "Version Control based versioning (using `git tags`)" -msgstr "" +msgstr "Versionado basado en control de versiones (usando `git tags`)" #: ../../package-structure-code/python-package-build-tools.md:215 #: ../../package-structure-code/python-package-build-tools.md:251 #: ../../package-structure-code/python-package-build-tools.md:348 #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Version bumping" -msgstr "" +msgstr "Incremento de versión" #: ../../package-structure-code/python-package-build-tools.md:215 #: ../../package-structure-code/python-package-build-tools.md:348 msgid "Environment Management" -msgstr "" +msgstr "Gestión de entornos" #: ../../package-structure-code/python-package-build-tools.md:215 msgid "More than one maintainer? (bus factor)" -msgstr "" +msgstr "¿Más de un mantenedor? (factor bus)" #: ../../package-structure-code/python-package-build-tools.md:225 msgid "Notes:" -msgstr "" +msgstr "Notas:" #: ../../package-structure-code/python-package-build-tools.md:227 msgid "_Hatch plans to support dependency management in the future_" -msgstr "" +msgstr "_Hatch planea admitir la gestión de dependencias en el futuro_" #: ../../package-structure-code/python-package-build-tools.md:228 msgid "" @@ -3145,6 +3277,9 @@ msgid "" "bumping following commit messages if you use a tool such as Python " "Semantic Release" msgstr "" +"Poetry admite versionado semántico. Por lo tanto, admitirá el incremento" +" de versión siguiendo los mensajes de confirmación " +"si utiliza una herramienta como Python Semantic Release" #: ../../package-structure-code/python-package-build-tools.md:232 msgid "" @@ -3153,10 +3288,13 @@ msgid "" " projects. It also provides multiple layers of support for projects that " "have C and C++ extensions." msgstr "" +"[PDM es una herramienta de empaquetado y gestión de dependencias de Python](https://pdm.fming.dev/latest/). " +"PDM admite construcciones para proyectos de Python puro. También proporciona múltiples capas de soporte " +"para proyectos que tienen extensiones en C y C++." #: ../../package-structure-code/python-package-build-tools.md:236 msgid "PDM support for C and C++ extensions" -msgstr "" +msgstr "PDM admite extensiones en C y C++" #: ../../package-structure-code/python-package-build-tools.md:238 msgid "" @@ -3165,14 +3303,17 @@ msgid "" "PDM's build back-end receives the compiled extension files (.so, .pyd) " "and packages them with the pure Python files." msgstr "" +"PDM admite el uso del backend de PDM y setuptools al mismo tiempo. Esto significa que puede ejecutar " +"setuptools para compilar y construir extensiones en C. El backend de construcción de PDM recibe los archivos " +"de extensión compilados (.so, .pyd) y los empaqueta con los archivos de Python puro." #: ../../package-structure-code/python-package-build-tools.md:244 msgid "PDM Features" -msgstr "" +msgstr "Características de PDM" #: ../../package-structure-code/python-package-build-tools.md:251 msgid "Feature, PDM, Notes" -msgstr "" +msgstr "Característica, PDM, Notas" #: ../../package-structure-code/python-package-build-tools.md:251 msgid "" @@ -3180,10 +3321,12 @@ msgid "" " including: PDM-core, flit-core and hatchling. PDM also can work with " "Meson-Python which supports move complex python builds." msgstr "" +"Cuando configura PDM, le permite seleccionar uno de varios backends de construcción, incluidos: PDM-core, " +"flit-core y hatchling. PDM también puede trabajar con Meson-Python que admite construcciones de Python más complejas." #: ../../package-structure-code/python-package-build-tools.md:251 msgid "Dependency specifications" -msgstr "" +msgstr "Especificaciones de dependencias" #: ../../package-structure-code/python-package-build-tools.md:251 msgid "" @@ -3194,10 +3337,14 @@ msgid "" "limit](https://pdm.fming.dev/latest/usage/dependency/#about-update-" "strategy).**" msgstr "" +"PDM tiene un soporte flexible para la gestión de dependencias. PDM por defecto utiliza un enfoque de límite " +"abierto (por ejemplo, `requests >=1.2`) para las dependencias. Sin embargo, puede [personalizar cómo desea " +"agregar dependencias en caso de que prefiera otro enfoque como el de Poetry que utiliza un límite superior]" +"(https://pdm.fming.dev/latest/usage/dependency/#about-update-strategy)." #: ../../package-structure-code/python-package-build-tools.md:251 msgid "Environment lock files" -msgstr "" +msgstr "Archivos de bloqueo de entorno" #: ../../package-structure-code/python-package-build-tools.md:251 msgid "" @@ -3207,11 +3354,15 @@ msgid "" " For community-used packages, you will likely never want to use a lock " "file." msgstr "" +"PDM y Poetry son actualmente las únicas herramientas que crean archivos de bloqueo de entorno. " +"Los archivos de bloqueo son más útiles para los desarrolladores que crean aplicaciones web donde " +"bloquear el entorno es crítico para una experiencia de usuario consistente. Para paquetes utilizados " +"por la comunidad, es probable que nunca desee usar un archivo de bloqueo." #: ../../package-structure-code/python-package-build-tools.md:251 #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Environment management" -msgstr "" +msgstr "Gestión de entornos" #: ../../package-structure-code/python-package-build-tools.md:251 msgid "" @@ -3220,79 +3371,92 @@ msgid "" "newer option in the Python ecosystem. No extensions are needed for this " "support." msgstr "" +"PDM proporciona soporte de gestión de entornos. Admite entornos virtuales de Python, conda y un entorno " +"local `__pypackages__` que es una opción más nueva en el ecosistema de Python. No se necesitan extensiones " +"para este soporte." #: ../../package-structure-code/python-package-build-tools.md:251 msgid "Select your environment type on install" -msgstr "" +msgstr "Seleccione su tipo de entorno en la instalación" #: ../../package-structure-code/python-package-build-tools.md:251 msgid "" "When you run `PDM init`, PDM will discover environments that are already " "on your system and allow you to select one to use for your project." msgstr "" +"Cuando ejecuta `PDM init`, PDM descubrirá los entornos que ya están en su sistema y le permitirá seleccionar " +"uno para usar en su proyecto." #: ../../package-structure-code/python-package-build-tools.md:251 msgid "PDM supports publishing to both test PyPI and PyPI" -msgstr "" +msgstr "PDM admite la publicación tanto en test PyPI como en PyPI" #: ../../package-structure-code/python-package-build-tools.md:251 #: ../../package-structure-code/python-package-build-tools.md:348 #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Version Control based versioning" -msgstr "" +msgstr "Versionado basado en control de versiones" #: ../../package-structure-code/python-package-build-tools.md:251 msgid "" "PDM has a setuptools_scm like tool built into it which allows you to use " "dynamic versioning that rely on git tags." msgstr "" +"PDM tiene una herramienta similar a setuptools_scm integrada en ella " +"que le permite usar versiones dinámicas " #: ../../package-structure-code/python-package-build-tools.md:251 msgid "" "PDM supports you bumping the version of your package using standard " "semantic version terms patch; minor; major" msgstr "" +"PDM le permite incrementar la versión de su paquete utilizando términos" +" de versión semántica estándar patch; minor; major" #: ../../package-structure-code/python-package-build-tools.md:251 #: ../../package-structure-code/python-package-build-tools.md:304 #: ../../package-structure-code/python-package-build-tools.md:348 #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Follows current packaging standards" -msgstr "" +msgstr "Sigue los estándares de empaquetado actuales" #: ../../package-structure-code/python-package-build-tools.md:251 msgid "" "PDM supports current packaging standards for adding metadata to the " "**pyproject.toml** file." msgstr "" +"PDM admite los estándares de empaquetado actuales para agregar metadatos " +"al archivo **pyproject.toml**." #: ../../package-structure-code/python-package-build-tools.md:251 #: ../../package-structure-code/python-package-build-tools.md:304 #: ../../package-structure-code/python-package-build-tools.md:348 #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Install your package in editable mode" -msgstr "" +msgstr "Instalar su paquete en modo editable" #: ../../package-structure-code/python-package-build-tools.md:251 msgid "PDM supports installing your package in editable mode." -msgstr "" +msgstr "PDM admite instalar su paquete en modo editable." #: ../../package-structure-code/python-package-build-tools.md:251 #: ../../package-structure-code/python-package-build-tools.md:304 #: ../../package-structure-code/python-package-build-tools.md:348 #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Build your sdist and wheel distributions" -msgstr "" +msgstr "Construir sus distribuciones sdist y wheel" #: ../../package-structure-code/python-package-build-tools.md:251 msgid "" "Similar to all of the other tools PDM builds your packages sdist and " "wheel files for you." msgstr "" +"Al igual que todas las demás herramientas, PDM construye los archivos sdist " +"y wheel de sus paquetes por usted." #: ../../package-structure-code/python-package-build-tools.md:264 msgid "PDM vs. Poetry" -msgstr "" +msgstr "PDM vs. Poetry" #: ../../package-structure-code/python-package-build-tools.md:265 msgid "" @@ -3301,12 +3465,17 @@ msgid "" " versioning. As such, PDM is preferred for those working on non pure-" "Python packages." msgstr "" +"La funcionalidad de PDM es similar a la de Poetry. Sin embargo, PDM también " +"ofrece soporte adicional y documentado para extensiones en C y versionado basado en control de versiones. " +"Por lo tanto, PDM es preferido para aquellos que trabajan en paquetes no puros de Python." #: ../../package-structure-code/python-package-build-tools.md:269 msgid "" "If you are deciding between the Poetry and PDM, a smaller difference is " "the default way that dependencies are added to your pyproject.toml file." msgstr "" +"Sí está decidiendo entre Poetry y PDM, una diferencia más pequeña es la forma predeterminada en que se " +"agregan las dependencias a su archivo pyproject.toml." #: ../../package-structure-code/python-package-build-tools.md:271 msgid "" @@ -3321,6 +3490,13 @@ msgid "" " bound locks means that requests 2.0 could never be installed even if it " "came out and your package could benefit from it)." msgstr "" +"Poetry por defecto sigue un versionado semántico estricto agregando dependencias a su archivo pyproject.toml " +"[usando una restricción de límite superior (`^`)](https://python-poetry.org/docs/dependency-specification/#version-constraints). " +"El bloqueo de límite superior significa que Poetry nunca incrementará una dependencia a la siguiente versión " +"principal (es decir, de 1.2 a 2.0). Sin embargo, puede indicarle a Poetry que use un enfoque de límite abierto " +"agregando explícitamente el paquete de esta manera: `poetry add requests >= 1.2` en lugar de simplemente usar " +"`poetry add requests` que resultará en un bloqueo de límite superior (es decir, los bloqueos de límite superior " +"significan que requests 2.0 nunca se podría instalar incluso si saliera y su paquete pudiera beneficiarse de ello)." #: ../../package-structure-code/python-package-build-tools.md:272 msgid "" @@ -3330,22 +3506,30 @@ msgid "" " you can also specify upper-bounds (`^`) using PDM if require that " "approach." msgstr "" +"PDM por defecto utiliza la adición de dependencias de límites " +"abiertos (`>=`) que es el enfoque preferido en el " +"ecosistema de Python científico. Sin embargo, PDM también le permite " +"especificar la forma en que se agregan las dependencias de forma predeterminada. Por lo tanto, también puede " +"especificar límites superiores (`^`) utilizando PDM si requiere ese enfoque." #: ../../package-structure-code/python-package-build-tools.md:274 msgid "" "Finally there are some nuanced differences in how both tools create lock " "files which we will not go into detail about here." msgstr "" +"Finalmente, hay algunas diferencias matizadas en cómo ambas herramientas crean archivos de bloqueo de los que " +"no entraremos en detalles aquí." #: ../../package-structure-code/python-package-build-tools.md:277 msgid "Challenges with PDM" -msgstr "" +msgstr "Desafíos con PDM" #: ../../package-structure-code/python-package-build-tools.md:279 msgid "" "PDM is a full-featured packaging tool. However it is not without " "challenges:" msgstr "" +"PDM es una herramienta de empaquetado completa. Sin embargo, no está exenta de desafíos:" #: ../../package-structure-code/python-package-build-tools.md:281 msgid "" @@ -3353,6 +3537,9 @@ msgid "" "packaging. For example, PDM doesn't provide an end to end beginning " "workflow in its documentation." msgstr "" +"Su documentación puede ser confusa, especialmente si es nuevo en el " +"empaquetado. Por ejemplo, PDM no proporciona " +"un flujo de trabajo de principio a fin en su documentación." #: ../../package-structure-code/python-package-build-tools.md:283 msgid "" @@ -3361,6 +3548,9 @@ msgid "" "longer have time to work on the project, it leaves users with a gap in " "support. Hatch and Flit also have single maintainer teams." msgstr "" +"PDM solo tiene un mantenedor actualmente. Consideramos que los equipos de mantenedores individuales " +"son un riesgo potencial. Si el mantenedor encuentra que ya no tiene tiempo para trabajar en el proyecto, " +"deja a los usuarios con una brecha en el soporte. Hatch y Flit también tienen equipos de un solo mantenedor." #: ../../package-structure-code/python-package-build-tools.md:288 msgid "" @@ -3369,6 +3559,10 @@ msgid "" " README file for this directly provides you with an overview of what the " "PDM command line interface looks like when you use it." msgstr "" +"[Puede ver un ejemplo de un paquete que usa PDM aquí](" +"https://github.com/pyOpenSci/examplePy/tree/main/example4_pdm)." +" El archivo README de este le proporciona directamente una descripción " +"general de cómo se ve la interfaz de línea de comandos de PDM cuando la usa." #: ../../package-structure-code/python-package-build-tools.md:293 msgid "" @@ -3379,66 +3573,76 @@ msgid "" "features. And if your package structure is already created. More on that " "below." msgstr "" +"[Flit es una herramienta de empaquetado sin adornos y simplificada](https://flit.pypa.io/en/stable/) " +"que admite los estándares de empaquetado de Python modernos. Flit es una excelente opción si está construyendo " +"un paquete básico para usar en un flujo de trabajo local que no requiere ninguna característica avanzada. " +"Y si su estructura de paquete ya está creada. Más sobre eso a continuación." #: ../../package-structure-code/python-package-build-tools.md:297 msgid "Flit Features" -msgstr "" +msgstr "Características de Flit" #: ../../package-structure-code/python-package-build-tools.md:304 msgid "Feature, Flit, Notes" -msgstr "" +msgstr "Feature, Flit, Notes" #: ../../package-structure-code/python-package-build-tools.md:304 #: ../../package-structure-code/python-package-build-tools.md:348 #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Publish to PyPI and test PyPI" -msgstr "" +msgstr "Publicar en PyPI y test PyPI" #: ../../package-structure-code/python-package-build-tools.md:304 msgid "Flit supports publishing to both test PyPI and PyPI" -msgstr "" +msgstr "Flit admite la publicación tanto en test PyPI como en PyPI" #: ../../package-structure-code/python-package-build-tools.md:304 msgid "Helps you add metadata to your **pyproject.toml** file" -msgstr "" +msgstr "Ayuda a agregar metadatos a su archivo **pyproject.toml**" #: ../../package-structure-code/python-package-build-tools.md:304 msgid "" "Flit does support adding metadata to your **pyproject.toml** file " "following modern packaging standards." msgstr "" +"Flit admite agregar metadatos a su archivo **pyproject.toml** " +"siguiendo los estándares de empaquetado modernos." #: ../../package-structure-code/python-package-build-tools.md:304 msgid "" "Flit supports current packaging standards for adding metadata to the " "**pyproject.toml** file." msgstr "" +"Flit admite los estándares de empaquetado actuales para agregar metadatos " +"al archivo **pyproject.toml**." #: ../../package-structure-code/python-package-build-tools.md:304 msgid "Flit supports installing your package in editable mode.**" -msgstr "" +msgstr "Flit admite instalar su paquete en modo editable." #: ../../package-structure-code/python-package-build-tools.md:304 msgid "Flit can be used to build your packages sdist and wheel distributions." -msgstr "" +msgstr "Flit se puede usar para construir las distribuciones sdist y wheel de sus paquetes." #: ../../package-structure-code/python-package-build-tools.md:311 msgid "" "NOTE: _If you are using the most current version of pip, it supports both" " a symlink approach `flit install -s` and `python -m pip install -e .`_" msgstr "" +"NOTA: _Si está utilizando la versión más actual de pip, admite tanto un " +"enfoque de enlace simbólico `flit install -s` " #: ../../package-structure-code/python-package-build-tools.md:313 msgid "Learn more about flit" -msgstr "" +msgstr "Aprende más sobre flit" #: ../../package-structure-code/python-package-build-tools.md:314 msgid "[Why use flit?](https://flit.pypa.io/en/stable/rationale.html)" -msgstr "" +msgstr "[¿Por qué usar flit?](https://flit.pypa.io/en/stable/rationale.html)" #: ../../package-structure-code/python-package-build-tools.md:317 msgid "Why you might not want to use Flit" -msgstr "" +msgstr "¿Por qué no querrías usar Flit" #: ../../package-structure-code/python-package-build-tools.md:319 msgid "" @@ -3446,30 +3650,36 @@ msgid "" " a beginner you may want to select Hatch or PDM which will offer you more" " support in common operations." msgstr "" +"Debido a que Flit no tiene adornos, es mejor para construcciones básicas y rápidas. Si eres un principiante, " +"puede que quieras seleccionar Hatch o PDM que te ofrecerán más soporte en operaciones comunes." #: ../../package-structure-code/python-package-build-tools.md:323 msgid "You may NOT want to use flit if:" -msgstr "" +msgstr "Quizás NO quieras usar flit si:" #: ../../package-structure-code/python-package-build-tools.md:325 msgid "" "You want to setup more advanced version tracking and management (using " "version control for version bumping)" msgstr "" +"Quieres configurar un seguimiento y gestión de versiones más avanzado" +" (usando control de versiones para incrementar versiones)" #: ../../package-structure-code/python-package-build-tools.md:326 msgid "" "You want a tool that handles dependency versions (use PDM or Poetry " "instead)" msgstr "" +"Quieres una herramienta que maneje las versiones de las" +" dependencias (usa PDM o Poetry en su lugar)" #: ../../package-structure-code/python-package-build-tools.md:327 msgid "You have a project that is not pure Python (Use Hatch, PDM or setuptools)" -msgstr "" +msgstr "Tienes un proyecto que no es Python puro (Usa Hatch, PDM o setuptools)" #: ../../package-structure-code/python-package-build-tools.md:328 msgid "You want environment management (use PDM, Hatch or Poetry)" -msgstr "" +msgstr "Quieres gestión de entornos (usa PDM, Hatch o Poetry)" #: ../../package-structure-code/python-package-build-tools.md:333 msgid "" @@ -3482,20 +3692,30 @@ msgid "" "locally. This means that you could potentially drop a tool like **Make** " "or **Nox** from your workflow and use Hatch instead." msgstr "" +"[**Hatch**](https://hatch.pypa.io/latest/), similar a Poetry y PDM, " +"proporciona una interfaz de línea de comandos unificada. Para separar Hatch de Poetry y PDM, también " +"proporciona un gestor de entornos para tests que le facilitará la ejecución de tests localmente en " +"diferentes versiones de Python. También ofrece una característica similar a nox / makefile que le permite " +"crear flujos de trabajo de construcción personalizados como construir su documentación localmente. Esto " +"significa que potencialmente podría eliminar una herramienta como **Make** o **Nox** de su flujo de trabajo " +"y usar Hatch en su lugar." #: ../../package-structure-code/python-package-build-tools.md:340 msgid "Hatch features" -msgstr "" +msgstr "Características de Hatch" #: ../../package-structure-code/python-package-build-tools.md:348 msgid "Feature, Hatch, Notes" -msgstr "" +msgstr "Característica, Hatch, Notas" #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" "Hatch is used with the backend Hatchling by default, but allows you to " "use another backend by switching the declaration in pyproject.toml." msgstr "" +"Hatch se usa con el backend Hatchling de forma predeterminada, pero le" +" permite usar otro backend cambiando " +"la declaración en pyproject.toml." #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" @@ -3503,6 +3723,8 @@ msgid "" "feature to support dependencies management may be added in a future " "release." msgstr "" +"Actualmente, tiene que agregar dependencias manualmente con Hatch. Sin embargo, una característica para " +"soportar la gestión de dependencias puede ser agregada en una versión futura." #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" @@ -3511,10 +3733,13 @@ msgid "" "such as hatch-conda for conda support](https://github.com/OldGrumpyViking" "/hatch-conda)." msgstr "" +"Hatch admite entornos virtuales de Python. Si desea usar otros tipos de entornos como Conda, necesitará " +"[instalar un plugin como hatch-conda para soporte de conda](https://github.com/OldGrumpyViking" +"/hatch-conda)." #: ../../package-structure-code/python-package-build-tools.md:348 msgid "Hatch supports publishing to both test PyPI and PyPI" -msgstr "" +msgstr "Hatch admite la publicación tanto en test PyPI como en PyPI" #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" @@ -3522,18 +3747,25 @@ msgid "" "support versioning using git tags. The workflow with `hatch_vcs` is the " "same as that with `setuptools_scm`." msgstr "" +"Hatch ofrece `hatch_vcs` que es un plugin que utiliza setuptools_scm para " +"soportar el versionado utilizando etiquetas de git. El flujo de trabajo con " +"`hatch_vcs` es el mismo que con `setuptools_scm`." #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" "Hatch supports you bumping the version of your package using standard " "semantic version terms patch; minor; major" msgstr "" +"Hatch le permite incrementar la versión de su paquete utilizando términos " +"de versión semántica estándar patch; minor; major" #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" "Hatch supports current packaging standards for adding metadata to the " "**pyproject.toml** file." msgstr "" +"Hatch admite los estándares de empaquetado actuales para agregar metadatos " +"al archivo **pyproject.toml**." #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" @@ -3543,14 +3775,17 @@ msgid "" "installs](https://hatch.pypa.io/latest/config/build/#dev-mode) but refers" " to pip in its documentation." msgstr "" +"Hatch instalará su paquete en cualquiera de sus entornos de forma predeterminada en modo editable. " +"Puede instalar su paquete en modo editable manualmente utilizando `python -m pip install -e .` Hatch menciona " +"[instalaciones en modo editable](https://hatch.pypa.io/latest/config/build/#dev-mode) pero se refiere a pip en su documentación." #: ../../package-structure-code/python-package-build-tools.md:348 msgid "Hatch will build the sdist and wheel distributions" -msgstr "" +msgstr "Hatch construirá las distribuciones sdist y wheel" #: ../../package-structure-code/python-package-build-tools.md:348 msgid "✨Matrix environment creation to support testing across Python versions✨" -msgstr "" +msgstr "✨Creación de entorno de matriz para soportar testing en diferentes versiones de Python✨" #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" @@ -3559,12 +3794,16 @@ msgid "" "package locally across Python versions (instead of using a tool such as " "tox)." msgstr "" +"La creación de entorno de matriz es una característica única de Hatch en el ecosistema de empaquetado. " +"Esta característica es útil si desea probar su paquete localmente en diferentes versiones de Python (en lugar de " +"usar una herramienta como tox)." #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" "✨[Nox / MAKEFILE like " "functionality](https://hatch.pypa.io/latest/environment/#selection)✨" msgstr "" +"✨[Funcionalidad similar a Nox / MAKEFILE](https://hatch.pypa.io/latest/environment/#selection)✨" #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" @@ -3573,10 +3812,13 @@ msgid "" "like serve docs locally and clean your package build directory. This " "means you may have one less tool in your build workflow." msgstr "" +"Esta característica también es única de Hatch. Esta funcionalidad le permite crear flujos de trabajo en la " +"configuración **pyproject.toml** para hacer cosas como servir documentos localmente y limpiar el directorio de " +"construcción de su paquete. Esto significa que puede tener una herramienta menos en su flujo de trabajo de construcción." #: ../../package-structure-code/python-package-build-tools.md:348 msgid "✨A flexible build backend: **hatchling**✨" -msgstr "" +msgstr "✨Un backend de construcción flexible: **hatchling**✨" #: ../../package-structure-code/python-package-build-tools.md:348 msgid "" @@ -3584,6 +3826,9 @@ msgid "" "developers to easily build plugins to support custom build steps when " "packaging." msgstr "" +"**El backend de construcción hatchling ofrecido por el mantenedor " +"de Hatch permite a los desarrolladores construir fácilmente plugins para " +"soportar pasos de construcción personalizados al empaquetar." #: ../../package-structure-code/python-package-build-tools.md:362 msgid "" @@ -3592,36 +3837,44 @@ msgid "" "flexibility. The Hatch build hook approach is also comparable with the " "features offered by PDM._" msgstr "" +"_Hay algunos argumentos sobre este enfoque que coloca una carga en los " +"mantenedores para crear un sistema de construcción personalizado. Pero " +"otros aprecian la flexibilidad. El enfoque de hooks de construcción de " +"Hatch también es comparable con las características ofrecidas por PDM._" #: ../../package-structure-code/python-package-build-tools.md:364 msgid "Why you might not want to use Hatch" -msgstr "" +msgstr "¿Por qué no querría usar Hatch?" #: ../../package-structure-code/python-package-build-tools.md:366 msgid "" "There are a few features that hatch is missing that may be important for " "some. These include:" msgstr "" +"Hay algunas características que Hatch no tiene y que pueden ser importantes para algunos. Estas incluyen:" #: ../../package-structure-code/python-package-build-tools.md:369 msgid "" "Hatch doesn't support adding dependencies. You will have to add them " "manually." msgstr "" +"Hatch no admite agregar dependencias. Tendrá que agregarlas manualmente." #: ../../package-structure-code/python-package-build-tools.md:370 msgid "Hatch won't by default recognize Conda environments without a plugin." -msgstr "" +msgstr "Hatch no reconocerá por defecto los entornos de Conda sin un plugin." #: ../../package-structure-code/python-package-build-tools.md:371 msgid "" "Similar to PDM, Hatch's documentation can difficult to work through, " "particularly if you are just getting started with creating a package." msgstr "" +"Al igual que PDM, la documentación de Hatch puede ser difícil de trabajar," +" especialmente si está comenzando a crear un paquete." #: ../../package-structure-code/python-package-build-tools.md:372 msgid "Hatch, similar to PDM and Flit currently only has one maintainer." -msgstr "" +msgstr "Hatch, al igual que PDM y Flit, actualmente solo tiene un mantenedor." #: ../../package-structure-code/python-package-build-tools.md:376 msgid "" @@ -3630,6 +3883,9 @@ msgid "" "PyPA survey). Poetry is user-friendly and has clean and easy-to-read " "documentation." msgstr "" +"[Poetry es una herramienta de construcción completa.](https://python-poetry.org/) También es la segunda " +"herramienta de empaquetado de frontend más popular (según la encuesta de PyPA). Poetry es fácil de usar y tiene " +"documentación limpia y fácil de leer." #: ../../package-structure-code/python-package-build-tools.md:381 msgid "" @@ -3637,14 +3893,16 @@ msgid "" " support is currently undocumented. Thus, we don't recommend using Poetry" " for more complex builds." msgstr "" +"Aunque algunos han usado Poetry para construcciones de Python con extensiones C/C++, este soporte no está " +"documentado actualmente. Por lo tanto, no recomendamos usar Poetry para construcciones más complejas." #: ../../package-structure-code/python-package-build-tools.md:385 msgid "Poetry features" -msgstr "" +msgstr "Características de Poetry" #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Feature, Poetry, Notes" -msgstr "" +msgstr "Característica, Poetry, Notas" #: ../../package-structure-code/python-package-build-tools.md:392 msgid "" @@ -3655,10 +3913,15 @@ msgid "" "organize dependencies in groups such as documentation, packaging and " "tests." msgstr "" +"Poetry le ayuda a agregar dependencias a sus metadatos `pyproject.toml`. " +"_NOTA: actualmente Poetry agrega dependencias utilizando un enfoque que está " +"ligeramente desalineado con los peps de Python actuales - sin embargo, hay un plan para solucionar esto en una " +"próxima versión._ Poetry también le permite organizar dependencias en grupos como documentación, empaquetado y " +"tests." #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Dependency specification" -msgstr "" +msgstr "Especificación de dependencias" #: ../../package-structure-code/python-package-build-tools.md:392 msgid "" @@ -3668,6 +3931,10 @@ msgid "" "override the default setting when adding dependencies). Read below for " "more." msgstr "" +"Poetry le permite ser específico sobre la versión de las dependencias que " +"agrega al archivo pyproject.toml de su paquete. Sin embargo, su enfoque de límite superior predeterminado " +"puede ser problemático para algunos paquetes (le sugerimos que anule la configuración predeterminada al agregar " +"dependencias). Lea a continuación para más información." #: ../../package-structure-code/python-package-build-tools.md:392 msgid "" @@ -3677,20 +3944,24 @@ msgid "" "options](https://python-poetry.org/docs/basic-usage/#using-your-virtual-" "environment)." msgstr "" +"Poetry le permite usar su entorno integrado o puede seleccionar el tipo de entorno que desea usar para " +"administrar su paquete. [Lea más sobre sus opciones de gestión de entornos integrados]" +"(https://python-poetry.org/docs/basic-usage/#using-your-virtual-environment)." #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Lock files" -msgstr "" +msgstr "Archivos de bloqueo" #: ../../package-structure-code/python-package-build-tools.md:392 msgid "" "Poetry creates a **poetry.lock** file that you can use if you need a lock" " file for your build." msgstr "" +"Poetry crea un archivo **poetry.lock** que puede usar si necesita un archivo de bloqueo para su construcción." #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Poetry supports publishing to both test PyPI and PyPI" -msgstr "" +msgstr "Poetry admite la publicación tanto en test PyPI como en PyPI" #: ../../package-structure-code/python-package-build-tools.md:392 msgid "" @@ -3698,12 +3969,16 @@ msgid "" "/poetry-dynamic-versioning) supports versioning using git tags with " "Poetry." msgstr "" +"El plugin [Poetry dynamic versioning](https://github.com/mtkennerly" +"/poetry-dynamic-versioning) admite versionado utilizando etiquetas de git con Poetry." #: ../../package-structure-code/python-package-build-tools.md:392 msgid "" "Poetry supports you bumping the version of your package using standard " "semantic version terms patch; minor; major" msgstr "" +"Poetry le permite incrementar la versión de su paquete utilizando " +"términos de versión semántica estándar patch; minor; major" #: ../../package-structure-code/python-package-build-tools.md:392 msgid "✖✅" @@ -3715,24 +3990,26 @@ msgid "" "metadata to the **pyproject.toml** file but plans to fix this in an " "upcoming release." msgstr "" +"Poetry no admite completamente los estándares de empaquetado actuales para " +"agregar metadatos al archivo **pyproject.toml** pero planea solucionar esto en una próxima versión." #: ../../package-structure-code/python-package-build-tools.md:392 msgid "" "Poetry supports installing your package in editable mode using " "`--editable`" -msgstr "" +msgstr "Poetry admite instalar su paquete en modo editable usando `--editable`" #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Poetry will build your sdist and wheel distributions using `poetry build`" -msgstr "" +msgstr "Poetry construirá sus distribuciones sdist y wheel usando `poetry build`" #: ../../package-structure-code/python-package-build-tools.md:407 msgid "Challenges with Poetry" -msgstr "" +msgstr "Desafíos con Poetry" #: ../../package-structure-code/python-package-build-tools.md:409 msgid "Some challenges of Poetry include:" -msgstr "" +msgstr "Algunos desafíos de Poetry incluyen:" #: ../../package-structure-code/python-package-build-tools.md:411 msgid "" @@ -3742,6 +4019,10 @@ msgid "" "follows: `poetry add \"requests>=2.1\"` See breakout below for more " "discussion on issues surrounding upper-bounds pinning." msgstr "" +"Poetry, por defecto, fija las dependencias utilizando un límite de \"límite superior\" especificado con el " +"símbolo `^` por defecto. Sin embargo, este comportamiento puede ser sobrescrito especificando la dependencia " +"cuando use `Poetry add` de la siguiente manera: `poetry add \"requests>=2.1\"` Vea el desglose a continuación " +"para más discusión sobre los problemas que rodean el fijado de límites superiores." #: ../../package-structure-code/python-package-build-tools.md:412 msgid "" @@ -3749,6 +4030,8 @@ msgid "" "pyproject.toml file does not follow current Python standards. However, " "this is going to be addressed with Poetry release version 2.0." msgstr "" +"_Desafío menor:_ La forma en que Poetry actualmente agrega metadatos a su archivo pyproject.toml no sigue los " +"estándares actuales de Python. Sin embargo, esto se abordará con la versión 2.0 de Poetry." #: ../../package-structure-code/python-package-build-tools.md:414 msgid "" @@ -3757,10 +4040,13 @@ msgid "" "builds. If you use Poetry, we strongly suggest that you override the " "default upper bound dependency option." msgstr "" +"Poetry es una excelente herramienta. Tome precaución al usarla para fijar dependencias ya que el enfoque de " +"Poetry para fijar puede ser problemático para muchas construcciones. Si usa Poetry, le sugerimos encarecidamente " +"que anule la opción de dependencia de límite superior predeterminada." #: ../../package-structure-code/python-package-build-tools.md:420 msgid "Challenges with Poetry dependency pinning" -msgstr "" +msgstr "Desafíos con el fijado de dependencias de Poetry" #: ../../package-structure-code/python-package-build-tools.md:423 msgid "" @@ -3771,6 +4057,11 @@ msgid "" "never bump the dependency to 2.0 even if there is a new major version of " "the package. Poetry will instead bump up to 1.9.x." msgstr "" +"Por defecto, Poetry fija las dependencias utilizando `^` por defecto. Este símbolo `^` significa que hay un " +"\"límite superior\" a la dependencia. Por lo tanto, Poetry no incrementará la versión de una dependencia a una " +"nueva versión mayor. Por lo tanto, si su paquete usa una dependencia que está en la versión 1.2.3, Poetry nunca " +"incrementará la dependencia a 2.0 incluso si hay una nueva versión mayor del paquete. En su lugar, Poetry incrementará " +"hasta 1.9.x." #: ../../package-structure-code/python-package-build-tools.md:429 msgid "" @@ -3781,6 +4072,10 @@ msgid "" "problematic by many of our core scientific " "packages.](https://iscinumpy.dev/post/bound-version-constraints/)" msgstr "" +"Poetry hace esto porque se adhiere a la versión semántica estricta que establece que un incremento de versión " +"mayor (de 1.0 a 2.0 por ejemplo) significa que hay cambios de ruptura en la herramienta. Sin embargo, no todas " +"las herramientas siguen la versión semántica estricta. [Este enfoque se ha encontrado problemático por muchos de " +"nuestros paquetes científicos principales.](https://iscinumpy.dev/post/bound-version-constraints/)" #: ../../package-structure-code/python-package-build-tools.md:434 msgid "" @@ -3788,10 +4083,12 @@ msgid "" "instance, some tools use [calver](https://calver.org/) which creates new " "versions based on the date." msgstr "" +"Este enfoque tampoco soportará otras formas de versionar herramientas, por ejemplo, algunas herramientas usan " +"[calver](https://calver.org/) que crea nuevas versiones basadas en la fecha." #: ../../package-structure-code/python-package-build-tools.md:438 msgid "Using Setuptools Back-end for Python Packaging with Build Front-end" -msgstr "" +msgstr "Usando el backend de Setuptools para el empaquetado de Python con el frontend de Build" #: ../../package-structure-code/python-package-build-tools.md:440 msgid "" @@ -3803,6 +4100,11 @@ msgid "" " Hatch offer. As such you will need to use other tools such as **build** " "to create your package distributions and **twine** to publish to PyPI." msgstr "" +"[Setuptools](https://setuptools.pypa.io/en/latest/) es la herramienta de construcción de empaquetado de Python más " +"madura con [desarrollo que data de 2009 y antes](https://setuptools.pypa.io/en/latest/history.html#). Setuptools " +"también tiene el mayor número de usuarios de la comunidad (según la encuesta de PyPA). Setuptools no ofrece un " +"frontend de usuario como Flit, Poetry y Hatch ofrecen. Como tal, necesitará usar otras herramientas como **build** " +"para crear las distribuciones de su paquete y **twine** para publicar en PyPI." #: ../../package-structure-code/python-package-build-tools.md:448 msgid "" @@ -3810,50 +4112,54 @@ msgid "" "maintainers to consider using a more modern tool for packaging such as " "Poetry, Hatch or PDM." msgstr "" +"Aunque setuptools es la herramienta más comúnmente utilizada, alentamos a los mantenedores de paquetes a considerar " +"usar una herramienta más moderna para el empaquetado como Poetry, Hatch o PDM." #: ../../package-structure-code/python-package-build-tools.md:451 msgid "" "We discuss setuptools here because it's commonly found in the ecosystem " "and contributors may benefit from understanding it." msgstr "" +"Discutimos setuptools aquí porque comúnmente se encuentra en el ecosistema y los contribuyentes pueden beneficiarse " +"de entenderlo." #: ../../package-structure-code/python-package-build-tools.md:454 msgid "Setuptools Features" -msgstr "" +msgstr "Características de Setuptools" #: ../../package-structure-code/python-package-build-tools.md:456 msgid "Some of features of setuptools include:" -msgstr "" +msgstr "Algunas de las características de setuptools incluyen:" #: ../../package-structure-code/python-package-build-tools.md:458 msgid "Fully customizable build workflow" -msgstr "" +msgstr "Flujo de trabajo de construcción completamente personalizable" #: ../../package-structure-code/python-package-build-tools.md:459 msgid "Many scientific Python packages use it." -msgstr "" +msgstr "Muchos paquetes científicos de Python lo utilizan." #: ../../package-structure-code/python-package-build-tools.md:460 msgid "" "It offers version control based package versioning using " "**setuptools_scm**" -msgstr "" +msgstr "Ofrece versionado de paquetes basado en control de versiones utilizando **setuptools_scm**" #: ../../package-structure-code/python-package-build-tools.md:461 msgid "It supports modern packaging using **pyproject.toml** for metadata" -msgstr "" +msgstr "Admite empaquetado moderno utilizando **pyproject.toml** para metadatos" #: ../../package-structure-code/python-package-build-tools.md:462 msgid "Supports backwards compatibly for older packaging approaches." -msgstr "" +msgstr "Admite compatibilidad con versiones anteriores para enfoques de empaquetado antiguos." #: ../../package-structure-code/python-package-build-tools.md:464 msgid "Challenges using setuptools" -msgstr "" +msgstr "Desafíos al usar setuptools" #: ../../package-structure-code/python-package-build-tools.md:468 msgid "Setuptools has a few challenges:" -msgstr "" +msgstr "Setuptools tiene algunos desafíos:" #: ../../package-structure-code/python-package-build-tools.md:470 msgid "" @@ -3866,6 +4172,12 @@ msgid "" "features such as tab / auto completion when using an IDE like VSCODE or " "pycharm (as long as your version of pip is current!)." msgstr "" +"Setuptools no admite características interactivas como la detección automática " +"de la API por defecto si está trabajando en un IDE como VSCODE y está utilizando una instalación editable para " +"desarrollo. [Vea las notas aquí sobre el soporte de pylance](https://github.com/microsoft/pylance-" +"release/blob/main/TROUBLESHOOTING.md#editable-install-modules-not-found). En comparación, herramientas como flit, " +"hatch, PDM admiten características interactivas como la detección automática de la API cuando se utiliza un IDE " +"como VSCODE o pycharm (¡siempre que su versión de pip esté actualizada!)." #: ../../package-structure-code/python-package-build-tools.md:471 msgid "" @@ -3873,30 +4185,41 @@ msgid "" "range of packages, it is not as flexible in its adoption of modern Python" " packaging standards." msgstr "" +"Debido a que **setuptools** tiene que mantener la compatibilidad con versiones anteriores en una gama de paquetes, " +"no es tan flexible en su adopción de los estándares de empaquetado de Python modernos." #: ../../package-structure-code/python-package-build-tools.md:474 msgid "" "The above-mentioned backwards compatibility makes for a more complex " "code-base." msgstr "" +"La compatibilidad con versiones anteriores mencionada anteriormente" +" hace que la base de código sea más compleja." #: ../../package-structure-code/python-package-build-tools.md:475 msgid "" "Your experience as a user will be less streamlined and simple using " "setuptools compared to other tools discussed on this page." msgstr "" +"Su experiencia como usuario será más compleja utilizando " +"setuptools en comparación con otras herramientas discutidas en esta página." + #: ../../package-structure-code/python-package-build-tools.md:477 msgid "" "There are also some problematic default settings that users should be " "aware of when using setuptools. For instance:" msgstr "" +"También hay algunas configuraciones predeterminadas problemáticas de las que los usuarios deben ser conscientes " +"cuando usan setuptools. Por ejemplo:" #: ../../package-structure-code/python-package-build-tools.md:480 msgid "" "setuptools will build a project without a name or version if you are not " "using a **pyproject.toml** file to store metadata." msgstr "" +"setuptools construirá un proyecto sin nombre o versión si no está " +"utilizando un archivo **pyproject.toml** para almacenar metadatos." #: ../../package-structure-code/python-package-build-tools.md:482 msgid "" @@ -3904,6 +4227,9 @@ msgid "" "if you do not explicitly tell it to exclude files using a **MANIFEST.in**" " file" msgstr "" +"setuptools también incluirá todos los archivos en el repositorio de su " +"paquete si no le dice explícitamente que excluya archivos utilizando un " +"archivo **MANIFEST.in**" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:1 msgid "Learn about Building a Python Package" From d0f63e404f9579daf5f156f7c2796678c3e81c1c Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Sun, 14 Jul 2024 19:54:29 +0200 Subject: [PATCH 10/93] docs: translate to Spanish python-package-distribution-files-sdist-wheel.md file --- .../es/LC_MESSAGES/package-structure-code.po | 188 ++++++++++++++++-- 1 file changed, 166 insertions(+), 22 deletions(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index 90bc3f35..06cb55d2 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -3907,7 +3907,7 @@ msgstr "" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:1 msgid "Learn about Building a Python Package" -msgstr "" +msgstr "Aprenda sobre la construcción de un paquete de Python" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:8 msgid "" @@ -3917,6 +3917,9 @@ msgid "" "your package on conda-forge. You do not need to rebuild your package to " "publish to conda-forge." msgstr "" +"Una vez que haya publicado ambas distribuciones de paquetes (la distribución de origen y la rueda) en PyPI, " +"entonces puede publicar en conda-forge. conda-forge requiere una distribución de origen en PyPI para construir su " +"paquete en conda-forge. No necesita reconstruir su paquete para publicar en conda-forge." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:11 msgid "" @@ -3927,20 +3930,28 @@ msgid "" "PyPI in order for conda-forge to properly build your package " "automatically." msgstr "" +"Necesita construir su paquete de Python para publicarlo en PyPI " +"(o en un canal de conda). El proceso de construcción organiza su código " +"y metadatos en un formato de distribución que puede ser subido a PyPI y " +"posteriormente descargado e instalado por los usuarios. NOTA: necesita " +"publicar un sdist en PyPI para que conda-forge pueda construir su paquete " +"automáticamente." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:14 msgid "What is building a Python package?" -msgstr "" +msgstr "¿Qué es construir un paquete de Python?" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:16 msgid "" "To [publish your Python package](publish-python-package-pypi-conda) and " "make it easy for anyone to install, you first need to build it." msgstr "" +"Para [publicar su paquete de Python](publish-python-package-pypi-conda) y " +"hacer que sea fácil de instalar para cualquiera, primero necesita construirlo." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:18 msgid "But, what does it mean to build a Python package?" -msgstr "" +msgstr "Per, ¿qué significa construir un paquete de Python?" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:20 msgid "" @@ -3950,6 +3961,11 @@ msgid "" "and metadata about the package, in the format required by the Python " "Package Index, so that it can be installed by tools like pip." msgstr "" +"[Como se muestra en la figura de arriba](#pypi-conda-channels), cuando construye su paquete de Python, convierte " +"los archivos de código fuente en algo llamado paquete de distribución." +" Un paquete de distribución contiene su código fuente " +"y metadatos sobre el paquete, en el formato requerido por el Índice de Paquetes de Python, para que pueda ser " +"instalado por herramientas como pip." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:23 msgid "" @@ -3958,6 +3974,9 @@ msgid "" " Authority](https://www.pypa.io/en/latest/) and refer to the product of " "the build step as a **distribution package**." msgstr "" +"El término paquete solía significar muchas cosas diferentes en Python y otros lenguajes. En esta página, " +"adaptamos la convención de la [Autoridad de Empaquetado de Python](https://www.pypa.io/en/latest/) y nos referimos " +"al producto del paso de construcción como un **paquete de distribución**." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:27 msgid "" @@ -3965,10 +3984,12 @@ msgid "" " and metadata into a format that both pip and PyPI can use, is called a " "build step." msgstr "" +"Este proceso de organizar y formatear su código, documentación, pruebas y metadatos en un formato que tanto pip " +"como PyPI pueden usar, se llama paso de construcción." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:31 msgid "Project metadata and PyPI" -msgstr "" +msgstr "Metadatos del proyecto y PyPI" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:33 msgid "" @@ -3977,6 +3998,9 @@ msgid "" "](pyproject-toml-python-package-metadata). This metadata is used for " "several purposes:" msgstr "" +"Los metadatos que tanto las herramientas de construcción como PyPI utilizan para describir y entender su paquete " +"generalmente se almacenan en un [archivo pyproject.toml](pyproject-toml-python-package-metadata). Estos metadatos " +"se utilizan para varios propósitos:" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:35 msgid "" @@ -3985,6 +4009,9 @@ msgid "" "poetry, PDM or Hatch) understand how to build your package. Information " "it provides to your build tool includes:" msgstr "" +"Ayuda a la herramienta que use para construir su paquete (pip, [Build de pypa](https://pypi.org/project/build/) o " +"una herramienta de extremo a extremo como poetry, PDM o Hatch) a entender cómo construir su paquete. La información " +"que proporciona a su herramienta de construcción incluye:" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:37 msgid "" @@ -3992,12 +4019,16 @@ msgid "" "[build backend tool](build_backends) you wish to use for creating your " "sdist and wheel distributions." msgstr "" +"La tabla `[build-system]` en su archivo pyproject.toml le dice a pip qué [herramienta de backend de construcción]" +"(build_backends) desea usar para crear sus distribuciones sdist y wheel." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:45 msgid "" "And the dependencies section of your project table tells the build tool " "and PyPI what dependencies your project requires." msgstr "" +"Y la sección de dependencias de su tabla de proyecto le dice a la herramienta de construcción y a PyPI qué " +"dependencias requiere su proyecto." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:54 msgid "" @@ -4005,6 +4036,9 @@ msgid "" " you publish on PyPI), it also creates a METADATA file which PyPI can " "read and use to help users find your package. For example:" msgstr "" +"Cuando la herramienta de construcción crea el archivo de distribución de su paquete (el archivo que publica en " +"PyPI), también crea un archivo METADATA que PyPI puede leer y usar para ayudar a los usuarios a encontrar su paquete. " +"Por ejemplo:" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:56 msgid "" @@ -4013,10 +4047,13 @@ msgid "" "filter for packages that contain specific licenses or that support " "specific versions of python." msgstr "" +"La sección `classifiers = ` de su tabla `[project]` en el archivo pyproject.toml proporciona información que los " +"usuarios en PyPI pueden usar para filtrar paquetes que contienen licencias específicas o que admiten versiones " +"específicas de Python." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:73 msgid "What happened to setup.py and setup.cfg for metadata?" -msgstr "" +msgstr "¿Qué pasó con setup.py y setup.cfg para almacenar metadatos?" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:76 msgid "" @@ -4025,10 +4062,13 @@ msgid "" "metadata is to use a pyproject.toml file. [Learn more about the " "pyproject.toml file here.](pyproject-toml-python-package-metadata)" msgstr "" +"Los metadatos del proyecto solían almacenarse en un archivo setup.py o en un archivo setup.cfg. La práctica " +"recomendada actual para almacenar metadatos de paquetes es utilizar un archivo pyproject.toml. [Aprenda más sobre el " +"archivo pyproject.toml aquí.](pyproject-toml-python-package-metadata)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:79 msgid "An example - xclim" -msgstr "" +msgstr "Un ejemplo - xclim" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:94 msgid "" @@ -4041,6 +4081,15 @@ msgid "" "connect to conda-forge for an automated build that sends distributions " "from PyPI to conda-forge." msgstr "" +"Gráfico que muestra el flujo de trabajo de empaquetado de alto nivel." +" A la izquierda se ve un gráfico con código, metadatos y tests en él. " +"Esos elementos van todos en su paquete. La documentación y los datos " +"están debajo de esa recuadro porque normalmente no se publican en su " +"distribución de rueda de empaquetado. Una flecha a la derecha lo lleva a " +"un cuadro de archivos de distribución de construcción. Ese cuadro lo lleva " +"a publicar en TestPyPI o en el verdadero PyPI. Desde PyPI, puede conectarse " +"a conda-forge para una construcción automatizada que envía distribuciones " +"de PyPI a conda-forge." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:96 msgid "" @@ -4051,6 +4100,11 @@ msgid "" "PyPI in order for conda-forge to properly build your package " "automatically." msgstr "" +"Necesita construir su paquete de Python para publicarlo en PyPI (o Conda). " +"El proceso de construcción organiza su código y metadatos en un formato de " +"distribución que puede ser subido a PyPI y posteriormente descargado e " +"instalado por los usuarios. NOTA: necesita publicar un sdist en PyPI para " +"que conda-forge pueda construir su paquete automáticamente." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:101 msgid "" @@ -4059,10 +4113,14 @@ msgid "" "keywords associated with the package and the base python version it " "requires which is 3.8." msgstr "" +"Esta captura de pantalla muestra los metadatos en PyPI para el paquete xclim. " +"En ella puede ver el nombre de la licencia, los nombres del autor y del " +"mantenedor, palabras clave asociadas con el paquete y la versión base de " +"Python que requiere, que es 3.8." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:103 msgid "PyPI screenshot showing metadata for the xclim package." -msgstr "" +msgstr "Captura de pantalla de PyPI que muestra metadatos para el paquete xclim." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:110 msgid "" @@ -4070,6 +4128,9 @@ msgid "" "xclim there are three maintainers listed with their profile pictures and " "github user names to the right." msgstr "" +"Aquí ve los metadatos del mantenedor tal como se muestran en PyPI. Para " +"xclim hay tres mantenedores listados con sus fotos de perfil y nombres de " +"usuario de GitHub a la derecha." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:112 msgid "" @@ -4078,10 +4139,14 @@ msgid "" "and then processed by your build tool and stored in your packages sdist " "and wheel distributions." msgstr "" +"Nombres de los mantenedores y nombres de usuario de GitHub para el paquete " +"xclim tal como se muestran en PyPI. Esta información se registra en su " +"pyproject.toml y luego es procesada por su herramienta de construcción y " +"almacenada en las distribuciones sdist y wheel (o rueda) de sus paquetes." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:115 msgid "How to create the distribution format that PyPI and Pip expects?" -msgstr "" +msgstr "¿Cómo crear el formato de distribución que PyPI y Pip esperan?" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:117 msgid "" @@ -4091,6 +4156,11 @@ msgid "" "there are packages and tools that help you create package build " "distribution files." msgstr "" +"En teoría, podría crear sus propios scripts para organizar su código " +"de la manera que PyPI quiere que sea. Sin embargo, al igual que hay " +"paquetes que manejan estructuras conocidas como Pandas para marcos " +"de datos y Numpy para matrices, hay paquetes y herramientas que le " +"ayudan a crear archivos de distribución de construcción de paquetes." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:121 msgid "" @@ -4100,6 +4170,11 @@ msgid "" "your sdist and wheel. Whereas tools like Hatch, PDM, Poetry and flit help" " with other parts of the packaging process." msgstr "" +"Existen una serie de herramientas de empaquetado que pueden ayudarlo con " +"todo el proceso de empaquetado o solo con un paso del proceso. Por ejemplo, " +"setuptools es un backend de construcción comúnmente utilizado que se puede " +"usar para crear su sdist y wheel (o rueda). Mientras que herramientas como " +"Hatch, PDM, Poetry y flit ayudan con otras partes del proceso de empaquetado." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:127 msgid "" @@ -4108,6 +4183,11 @@ msgid "" "output (with minor differences that most users may not care about). Learn" " more about those tools on this page." msgstr "" +"Si bien esto puede causar cierta confusión y complejidad en el ecosistema " +"de empaquetado, en su mayor parte, cada herramienta proporciona la misma " +"salida de distribución (con diferencias menores que a la mayoría de los " +"usuarios pueden no importarles). Aprenda más sobre esas herramientas en " +"esta página." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:133 msgid "" @@ -4115,6 +4195,9 @@ msgid "" "you to publish: sdist and wheel. You will learn about their structure and" " what files belong in each." msgstr "" +"A continuación, aprenderá sobre los dos archivos de distribución que PyPI " +"espera que publique: sdist y wheel (o rueda). Aprenderá sobre su estructura " +"y qué archivos pertenecen a cada uno." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:136 msgid "" @@ -4124,10 +4207,16 @@ msgid "" "wheel (.whl) contains the built / compiled files that can be directly " "installed onto anyones' computer." msgstr "" +"Hay dos archivos de distribución principales que necesita crear para " +"publicar su paquete de Python en PyPI: la distribución de origen (a menudo " +"llamada sdist) y la rueda (o wheel). El sdist contiene el código fuente " +"sin procesar de su paquete. La rueda (.whl) contiene los archivos " +"construidos / compilados que se pueden instalar directamente en el " +"ordenador de cualquier persona." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:142 msgid "Learn more about both distributions below." -msgstr "" +msgstr "Aprenda más sobre ambas distribuciones a continuación." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:145 msgid "" @@ -4137,6 +4226,11 @@ msgid "" "languages or is more complex in its build, the two distributions will be " "very different." msgstr "" +"Si su paquete es un paquete de Python puro sin pasos adicionales de " +"construcción / compilación, entonces las distribuciones sdist y wheel " +"tendrán contenido similar. Sin embargo, si su paquete tiene extensiones en " +"otros lenguajes o es más complejo en su construcción, las dos distribuciones " +"serán muy diferentes." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:150 msgid "" @@ -4145,10 +4239,14 @@ msgid "" "here.](https://conda.io/projects/conda-build/en/latest/user-" "guide/tutorials/index.html)" msgstr "" +"También tenga en cuenta que no estamos discutiendo flujos de trabajo de " +"construcción de conda en esta sección. [Puede aprender más sobre las " +"construcciones de conda aquí.](https://conda.io/projects/conda-build/en/" +"latest/user-guide/tutorials/index.html)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:155 msgid "Source Distribution (sdist)" -msgstr "" +msgstr "Distribución de origen (sdist)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:157 msgid "" @@ -4156,6 +4254,10 @@ msgid "" "These are the \"raw / as-is\" files that you store on GitHub or whatever " "platform you use to manage your code." msgstr "" +"Los **archivos de origen** son los archivos sin construir necesarios para " +"construir su paquete. Estos son los archivos \"crudos / tal como están\" " +"que almacena en GitHub o en cualquier plataforma que utilice para gestionar " +"su código." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:161 msgid "" @@ -4167,6 +4269,12 @@ msgid "" "everything required to build a wheel (except for project dependencies) " "without network access." msgstr "" +"Las distribuciones de origen (del inglés, _source distribution_) se denominan sdist. Como " +"su nombre indica, un SDIST contiene el código fuente; no ha sido construido ni" +" compilado de ninguna manera. Por lo tanto, cuando un usuario instala su distribución de origen " +"usando pip, pip necesita ejecutar un paso de construcción primero. Por esta razón, " +"podría definir una distribución de origen como un archivo comprimido que contiene todo lo " +"necesario para construir una rueda (excepto las dependencias del proyecto) sin acceso a la red." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:165 msgid "" @@ -4174,14 +4282,17 @@ msgid "" "\"tarball\"). Thus, when a user installs your source distribution using " "pip, pip needs to run a build step first." msgstr "" +"Normalmente, sdist se almacena como un archivo `.tar.gz` (a menudo llamado " +"un \"tarball\"). Por lo tanto, cuando un usuario instala su distribución de origen " +"usando pip, pip necesita ejecutar un paso de construcción primero." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:167 msgid "Below is an example sdist for the stravalib Python package:" -msgstr "" +msgstr "A continuación se muestra un ejemplo de sdist para el paquete de Python stravalib:" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:219 msgid "GitHub archive vs sdist" -msgstr "" +msgstr "El archivo de GitHub vs sdist" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:221 msgid "" @@ -4192,10 +4303,16 @@ msgid "" "`setuptools_scm` or `hatch_vcs` the sdist may also contain a file that " "stores the version." msgstr "" +"Cuando se crea una versión en GitHub, se crea un `git archive` que contiene " +"todos los archivos de su repositorio de GitHub. Si bien estos archivos son " +"similares a un sdist, estos dos archivos no son iguales. El sdist contiene " +"algunos otros elementos, incluido un directorio de metadatos y si utiliza " +"`setuptools_scm` o `hatch_vcs`, el sdist también puede contener un archivo " +"que almacena la versión." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:229 msgid "Wheel (.whl files):" -msgstr "" +msgstr "Rueda o _wheel_(.whl files):" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:231 msgid "" @@ -4206,6 +4323,13 @@ msgid "" "may be included in source distributions are not included in wheels " "because it is a built distribution." msgstr "" +"Un archivo de rueda es un archivo en formato ZIP cuyo nombre sigue" +" un formato específico (a continuación) y tiene la " +"extensión `.whl`. El archivo `.whl` contiene un conjunto específico de " +"archivos, incluidos metadatos que se generan a partir del archivo " +"pyproject.toml de su proyecto. El pyproject.toml y otros archivos que " +"pueden estar incluidos en las distribuciones de origen no se incluyen en " +"las ruedas porque es una distribución construida." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:238 msgid "" @@ -4217,6 +4341,14 @@ msgid "" "thus faster to install - particularly if you have a package that requires" " build steps." msgstr "" +"La rueda (.whl) es su distribución binaria construida. Los" +" **archivos binarios** son los archivos de código fuente " +"construidos / compilados. Estos archivos están listos para ser instalados." +" Una rueda (**.whl**) es un archivo **zip** que contiene todos los archivos " +"necesarios para instalar directamente su paquete. Todos los archivos en una " +"rueda son binarios, lo que significa que el código ya está compilado / " +"construido. Por lo tanto, las ruedas son más rápidas de instalar, " +"particularmente si tiene un paquete que requiere pasos de construcción." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:240 msgid "" @@ -4224,12 +4356,17 @@ msgid "" " as **setup.cfg** or **pyproject.toml**. This distribution is already " "built so it's ready to install." msgstr "" +"La rueda no contiene ninguno de los archivos de configuración de su paquete " +"como **setup.cfg** o **pyproject.toml**. Esta distribución ya está construida " +"por lo que está lista para instalar." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:244 msgid "" "Because it is built, the wheel file will be faster to install for pure " "Python projects and can lead to consistent installs across machines." msgstr "" +"Debido a que está construido, el archivo .whl será más rápido de instalar " +"para proyectos de Python puro y llevará a instalaciones consistentes " #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:252 msgid "" @@ -4238,48 +4375,55 @@ msgid "" "the wheel bundle are pre built, the user installing doesn't have to worry" " about malicious code injections when it is installed." msgstr "" +"Las ruedas también son útiles en el caso de que un paquete necesite un " +"archivo **setup.py** para admitir una construcción más compleja. En este " +"caso, debido a que los archivos en el paquete de rueda están preconstruidos, " +"el usuario que lo instala no tiene que preocuparse por inyecciones de código " +"malicioso cuando se instala." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:259 msgid "The filename of a wheel contains important metadata about your package." -msgstr "" +msgstr "El nombre de archivo de una rueda contiene metadatos importantes sobre su paquete." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:261 msgid "Example: **stravalib-1.1.0.post2-py3-none.whl**" -msgstr "" +msgstr "Por ejemplo: **stravalib-1.1.0.post2-py3-none.whl**" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:263 msgid "name: stravalib" -msgstr "" +msgstr "nombre: stravalib" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:264 msgid "version: 1.1.0" -msgstr "" +msgstr "versión: 1.1.0" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:265 msgid "" "build-number: 2 (post2) [(read more about post " "here)](https://peps.python.org/pep-0440/#post-release-separators)" msgstr "" +"número de construcción: 2 (post2) [(lea más sobre post " +"aquí)](https://peps.python.org/pep-0440/#post-release-separators)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:266 msgid "py3: supports Python 3.x" -msgstr "" +msgstr "py3: admite Python 3.x" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:267 msgid "none: is not operating system specific (runs on windows, mac, linux)" -msgstr "" +msgstr "none: no es específico del sistema operativo (se ejecuta en Windows, Mac, Linux)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:268 msgid "any: runs on any computer processor / architecture" -msgstr "" +msgstr "any: se ejecuta en cualquier procesador / arquitectura de ordenador" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:270 msgid "What a wheel file looks like when unpacked (unzipped):" -msgstr "" +msgstr "¿Cómo se ve un archivo de rueda cuando se desempaqueta (descomprime)?" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:304 msgid "[Read more about the wheel format here](https://pythonwheels.com/)" -msgstr "" +msgstr "[Lea más sobre el formato de rueda aquí](https://pythonwheels.com/)" #: ../../package-structure-code/python-package-structure.md:1 msgid "Python Package Structure for Scientific Python Projects" From 905743fdf546ee65b16f73522d646393f931de19 Mon Sep 17 00:00:00 2001 From: ncclementi Date: Sun, 14 Jul 2024 11:46:18 -0700 Subject: [PATCH 11/93] translate tutorials page --- locales/es/LC_MESSAGES/tutorials.po | 47 ++++++++++++++++++----------- 1 file changed, 30 insertions(+), 17 deletions(-) diff --git a/locales/es/LC_MESSAGES/tutorials.po b/locales/es/LC_MESSAGES/tutorials.po index 3427e46d..62ca6bbc 100644 --- a/locales/es/LC_MESSAGES/tutorials.po +++ b/locales/es/LC_MESSAGES/tutorials.po @@ -22,70 +22,77 @@ msgstr "" #: ../../tutorials/add-license-coc.md:1 msgid "Add a `LICENSE` & `CODE_OF_CONDUCT` to your Python package" -msgstr "" +msgstr "Agrega `LICENSE` y `CODE_OF_CONDUCT` a tu paquete de Python" #: ../../tutorials/add-license-coc.md:3 msgid "In the [previous lesson](add-readme) you:" -msgstr "" +msgstr "En la [sección anterior](add-readme) tu:" #: ../../tutorials/add-license-coc.md:5 msgid "" " " "Created a basic `README.md` file for your scientific Python package" -msgstr "" +msgstr "Creaste un archivo `README.md` para tu paquete the Python científico" #: ../../tutorials/add-license-coc.md:7 msgid "" " " "Learned about the core components that are useful to have in a `README` " "file." -msgstr "" +msgstr "Aprendiste acerca de los componentes principales que son útiles de tener en " +"un `README` file." #: ../../tutorials/add-license-coc.md:9 ../../tutorials/add-readme.md:10 msgid "Learning objectives" -msgstr "" +msgstr "Objetivos de aprendizaje" #: ../../tutorials/add-license-coc.md:12 ../../tutorials/add-readme.md:12 #: ../../tutorials/installable-code.md:41 ../../tutorials/pyproject-toml.md:22 #: ../../tutorials/setup-py-to-pyproject-toml.md:15 msgid "In this lesson you will learn:" -msgstr "" +msgstr "En esta lección aprenderas:" #: ../../tutorials/add-license-coc.md:14 msgid "" "How to select a license and add a `LICENSE` file to your package " "repository, with a focus on the GitHub interface." -msgstr "" +msgstr "Como seleccionar una licencia y agregar un archivo `LICENSE` al " +"repositorio de tu paquete, con enfoque en la interface de Github" #: ../../tutorials/add-license-coc.md:15 msgid "How to add a `CODE_OF_CONDUCT` file to your package repository." -msgstr "" +msgstr "Como agregar un archivo `CODE_OF_CONDUCT` al repositorio de tu paquete" #: ../../tutorials/add-license-coc.md:16 msgid "" "How you can use the Contributors Covenant website to add generic language" " as a starting place for your `CODE_OF_CONDUCT`." -msgstr "" +msgstr "Como usar el sitio web de Contributors Covenant para agregar lenguage" +" genérico como punto de partida para tu `CODE_OF_CONDUCT`" #: ../../tutorials/add-license-coc.md:19 msgid "What is a license?" -msgstr "" +msgstr "¿Qué es una licencia?" #: ../../tutorials/add-license-coc.md:21 msgid "" "A license contains legal language about how users can use and reuse your " "software. To set the `LICENSE` for your project, you:" -msgstr "" +msgstr "Una licencia contiene lenguage legal acerca de como los usuarios pueden " +"usar y reusar tu software. Para establecer un archivo `LICENSE` para tu" +" projecto, tu: " #: ../../tutorials/add-license-coc.md:23 msgid "" "create a `LICENSE` file in your project directory that specifies the " "license that you choose for your package and" -msgstr "" +msgstr "creas un archivo `LICENSE` en el directorio de tu proyecto que " +"especifique la licencia que que elejiste para tu paquete y" #: ../../tutorials/add-license-coc.md:24 msgid "reference that file in your `pyproject.toml` data where metadata are set." -msgstr "" +msgstr "haces referencia a ese archivo en el `pyproject.toml` donde la metadata" +" es especificada" #: ../../tutorials/add-license-coc.md:26 msgid "" @@ -93,11 +100,14 @@ msgid "" " will be included in your package's metadata which is used to populate " "your package's PyPI landing page. The `LICENSE` is also used in your " "GitHub repository's landing page interface." -msgstr "" +msgstr "Al incluir el archivo `LICENSE` en tu archivo `pyproject.toml`, la " +"`LICENSE` sera incluída en la metadata de tu paquete y esta es utilizada para" +" rellenar la página de entrada de tu paquete en PyPI. La `LICENSE` tambien es " +" utilizada en la página de entrada de tu repositorio de GitHub" #: ../../tutorials/add-license-coc.md:28 msgid "What license should you use?" -msgstr "" +msgstr "¿Qué licencia debería elegir?" #: ../../tutorials/add-license-coc.md:30 msgid "" @@ -105,11 +115,14 @@ msgid "" "most commonly used licenses in the scientific Python ecosystem (MIT[^mit]" " and BSD-3[^bsd3]). If you are unsure, use MIT given it's the generally " "recommended license on [choosealicense.com](https://choosealicense.com/)." -msgstr "" +msgstr "Nosotros sugerimos que uses una licencia permissiva que acomode otras" +" licencias comunmente usadas en el ecosistema de Python científico (MIT[^mit]" +" and BSD-3[^bsd3]). Si tienes dudas, usa MIT dado que es la licencia" +" generalmente recomendada en [choosealicense.com](https://choosealicense.com/)" #: ../../tutorials/add-license-coc.md:33 msgid "Licenses for the scientific Python ecosystem" -msgstr "" +msgstr "Licencias para el ecosistema de Python científico" #: ../../tutorials/add-license-coc.md:34 msgid "" From fc3ad39573db278d040e6a965fff191d44f6cc61 Mon Sep 17 00:00:00 2001 From: Carol Willing Date: Tue, 6 Aug 2024 17:47:44 -0700 Subject: [PATCH 12/93] Attempt to fix the toctree warning --- tutorials/intro.md | 1 - 1 file changed, 1 deletion(-) diff --git a/tutorials/intro.md b/tutorials/intro.md index 869f351b..95661fa7 100644 --- a/tutorials/intro.md +++ b/tutorials/intro.md @@ -52,7 +52,6 @@ Update metadata in pyproject.toml :::{toctree} :hidden: - :caption: Reference Guides Command Line Reference Guide From b3f7bada167d361bd9be04b84a7d30bb00e50e35 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 9 Aug 2024 13:51:03 +0900 Subject: [PATCH 13/93] Delete duplicate content in a sentence --- TRANSLATING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TRANSLATING.md b/TRANSLATING.md index 9fb5e5b2..ed3576f8 100644 --- a/TRANSLATING.md +++ b/TRANSLATING.md @@ -340,7 +340,7 @@ TODO: There are many approaches here, some projects release a translation as soo ### How can I get help with my translation? -If you have any questions or need help with your translation, you can create an issue in the repository if you encounter any problems or need assistance. +If you have any questions or need help with your translation, you can create an issue in the repository. TODO: Maybe [Discourse](https://pyopensci.discourse.group/) could be used as a way for contributors to ask for help with translations or the translation workflow? From e4d7c26c0226415f2225713afce643e3b59fb519 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sun, 11 Aug 2024 15:23:13 +0900 Subject: [PATCH 14/93] docs: translate to Japanese index.md --- locales/ja/LC_MESSAGES/index.po | 318 +++++++++++++++++++------------- 1 file changed, 187 insertions(+), 131 deletions(-) diff --git a/locales/ja/LC_MESSAGES/index.po b/locales/ja/LC_MESSAGES/index.po index 379d9450..50c7a478 100644 --- a/locales/ja/LC_MESSAGES/index.po +++ b/locales/ja/LC_MESSAGES/index.po @@ -3,52 +3,55 @@ # This file is distributed under the same license as the pyOpenSci Python # Package Guide package. # FIRST AUTHOR , 2024. -# +# +# Translators: +# Tetsuo Koyama , 2024 +# #, fuzzy msgid "" msgstr "" -"Project-Id-Version: pyOpenSci Python Package Guide \n" +"Project-Id-Version: pyOpenSci Python Package Guide\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2024-08-02 18:04+0900\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language: ja\n" -"Language-Team: ja \n" -"Plural-Forms: nplurals=1; plural=0;\n" +"PO-Revision-Date: 2024-08-07 23:17+0000\n" +"Last-Translator: Tetsuo Koyama , 2024\n" +"Language-Team: Japanese (https://app.transifex.com/tkoyama010/teams/196662/ja/)\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.15.0\n" +"Language: ja\n" +"Plural-Forms: nplurals=1; plural=0;\n" #: ../../index.md:283 msgid "Tutorials" -msgstr "" +msgstr "チュートリアル" #: ../../index.md:289 msgid "Packaging" -msgstr "" +msgstr "パッケージング" #: ../../index.md:139 ../../index.md:297 msgid "Documentation" -msgstr "" +msgstr "ドキュメンテーション" #: ../../index.md:187 ../../index.md:305 msgid "Tests" -msgstr "" +msgstr "テスト" #: ../../index.md:305 msgid "Testing" -msgstr "" +msgstr "テスト" #: ../../index.md:1 msgid "pyOpenSci Python Package Guide" -msgstr "" +msgstr "pyOpenSci Pythonパッケージガイド" #: ../../index.md:3 msgid "" "We support the Python tools that scientists need to create open science " "workflows." -msgstr "" +msgstr "私たちは、科学者がオープンサイエンスのワークフローを作成するために必要なPythonツールをサポートしています。" #: ../../index.md:20 msgid "" @@ -59,425 +62,478 @@ msgid "" "guide?style=social)](https://github.com/pyopensci/contributing-guide) " "[![DOI](https://zenodo.org/badge/556814582.svg)](https://zenodo.org/badge/latestdoi/556814582)" msgstr "" +"![GitHub release (latest by " +"date)](https://img.shields.io/github/v/release/pyopensci/python-package-" +"guide?color=purple&display_name=tag&style=plastic) " +"[![](https://img.shields.io/github/stars/pyopensci/python-package-" +"guide?style=social)](https://github.com/pyopensci/contributing-guide) " +"[![DOI](https://zenodo.org/badge/556814582.svg)](https://zenodo.org/badge/latestdoi/556814582)" #: ../../index.md:20 msgid "GitHub release (latest by date)" -msgstr "" +msgstr "GitHubリリース(日付順最新)" #: ../../index.md:20 msgid "DOI" -msgstr "" +msgstr "DOI" #: ../../index.md:27 msgid "About this guide" -msgstr "" +msgstr "このガイドについて" #: ../../index.md:29 msgid "" "Image with the pyOpenSci flower logo in the upper right hand corner. The " -"image shows the packaging lifecycle. The graphic shows a high level " -"overview of the elements of a Python package. the inside circle has 5 " -"items - user documentation, code/api, test suite, contributor " -"documentation, project metadata / license / readme. In the middle of the " -"circle is says maintainers and has a small icon with people. on the " -"outside circle there is an arrow and it says infrastructure." +"image shows the packaging lifecycle. The graphic shows a high level overview" +" of the elements of a Python package. the inside circle has 5 items - user " +"documentation, code/api, test suite, contributor documentation, project " +"metadata / license / readme. In the middle of the circle is says maintainers" +" and has a small icon with people. on the outside circle there is an arrow " +"and it says infrastructure." msgstr "" +"右上にpyOpenSciの花のロゴがある画像。画像はパッケージングのライフサイクルを示しています。図にはPythonパッケージの要素のハイレベルな概要が示されています。内側の円には5つの項目があります" +" - " +"ユーザードキュメント、コード/API、テストスイート、コントリビュータードキュメント、プロジェクトメタデータ/ライセンス/readme。円の真ん中にはメンテナーと書かれ、人と小さなアイコンがあります。外側の円には矢印があり、インフラストラクチャと書かれています。" #: ../../index.md:35 msgid "This guide will help you:" -msgstr "" +msgstr "このガイドはあなたのお役に立つでしょう:" #: ../../index.md:37 msgid "Learn how to create a Python package from start to finish" -msgstr "" +msgstr "Pythonパッケージの作成方法を最初から最後まで学ぶ" #: ../../index.md:38 msgid "Understand the broader Python packaging tool ecosystem" -msgstr "" +msgstr "幅広いPythonパッケージングツールのエコシステムを理解する" #: ../../index.md:39 msgid "Navigate and make decisions around tool options" -msgstr "" +msgstr "ツールオプションのナビゲートと決定" #: ../../index.md:40 -msgid "Understand all of the pieces of creating and maintaining a Python package" -msgstr "" +msgid "" +"Understand all of the pieces of creating and maintaining a Python package" +msgstr "Pythonパッケージの作成と保守のすべてを理解する" #: ../../index.md:42 msgid "" "You will also find best practice recommendations and curated lists of " "community resources surrounding packaging and package documentation." msgstr "" +"また、パッケージングとパッケージドキュメンテーションにまつわるベストプラクティスの推奨や、コミュニティリソースのキュレーションリストもご覧いただけます。" #: ../../index.md:46 msgid "Todo" -msgstr "" +msgstr "Todo" #: ../../index.md:47 msgid "TODO: change the navigation of docs to have a" -msgstr "" +msgstr "TODO: ドキュメントのナビゲーションに" #: ../../index.md:49 msgid "user documentation contributor / maintainer documentation" -msgstr "" +msgstr "ユーザードキュメント コントリビューター / メンテナ ドキュメント" #: ../../index.md:51 msgid "development guide" -msgstr "" +msgstr "開発ガイド" #: ../../index.md:52 msgid "contributing guide" -msgstr "" +msgstr "コントリビュートガイド" #: ../../index.md:54 msgid "Community docs" -msgstr "" +msgstr "コミュニティドキュメント" #: ../../index.md:55 msgid "readme, coc, license" -msgstr "" +msgstr "readme、coc、ライセンス" #: ../../index.md:57 msgid "Publish your docs" -msgstr "" +msgstr "ドキュメントを公開する" #: ../../index.md:59 msgid "_new_ Tutorial Series: Create a Python Package" -msgstr "" +msgstr "_new_ チュートリアルシリーズ: Pythonパッケージの作成" #: ../../index.md:61 msgid "" -"The first round of our community-developed, how to create a Python " -"package tutorial series for scientists is complete! Join our community " -"review process or watch development of future tutorials in our [Github " -"repo here](https://github.com/pyOpenSci/python-package-guide)." +"The first round of our community-developed, how to create a Python package " +"tutorial series for scientists is complete! Join our community review " +"process or watch development of future tutorials in our [Github repo " +"here](https://github.com/pyOpenSci/python-package-guide)." msgstr "" +"コミュニティが開発した、科学者のためのPythonパッケージの作り方チュートリアルシリーズの第一弾が完成しました! " +"コミュニティのレビュープロセスに参加したり、 [Github " +"リポジトリはこちら](https://github.com/pyOpenSci/python-package-guide) " +"で今後のチュートリアルの開発を見守ったりしてください。" #: ../../index.md:71 msgid "✿ Create a Package Tutorials ✿" -msgstr "" +msgstr "✿ チュートリアルパッケージの作成 ✿" #: ../../index.md:75 msgid "[What is a Python package?](/tutorials/intro)" -msgstr "" +msgstr "[Pythonパッケージとは何か?](/tutorials/intro)" #: ../../index.md:76 msgid "[Make your code installable](/tutorials/installable-code)" -msgstr "" +msgstr "[コードをインストール可能にする](/tutorials/installable-code)" #: ../../index.md:77 msgid "[Publish your package to (test) PyPI](/tutorials/publish-pypi)" -msgstr "" +msgstr "[パッケージを(テスト用の)PyPIに公開する](/tutorials/publish-pypi)" #: ../../index.md:78 msgid "[Publish your package to conda-forge](/tutorials/publish-conda-forge)" -msgstr "" +msgstr "[パッケージを conda-forge に公開する](/tutorials/publish-conda-forge)" #: ../../index.md:83 msgid "✿ Package Metadata Tutorials ✿" -msgstr "" +msgstr "✿パッケージメタデータチュートリアル✿" #: ../../index.md:87 msgid "[How to add a README file](/tutorials/add-readme)" -msgstr "" +msgstr "[READMEファイルの追加方法](/tutorials/add-readme)" #: ../../index.md:88 msgid "" "[How to add metadata to a pyproject.toml file for publication to " "PyPI.](/tutorials/pyproject-toml.md)" msgstr "" +"[PyPIに公開するためにpyproject.tomlファイルにメタデータを追加する方法](/tutorials/pyproject-toml.md)" #: ../../index.md:93 msgid "✿ Packaging Tool Tutorials ✿" -msgstr "" +msgstr "✿パッケージングツールのチュートリアル✿" #: ../../index.md:97 msgid "[Introduction to Hatch](/tutorials/get-to-know-hatch)" -msgstr "" +msgstr "[Hatch入門](/tutorials/get-to-know-hatch)" #: ../../index.md:102 msgid "Python Packaging for Scientists" -msgstr "" +msgstr "科学者のためのPythonパッケージング" #: ../../index.md:104 msgid "" -"Learn about Python packaging best practices. You will also get to know " -"the the vibrant ecosystem of packaging tools that are available to help " -"you with your Python packaging needs." +"Learn about Python packaging best practices. You will also get to know the " +"the vibrant ecosystem of packaging tools that are available to help you with" +" your Python packaging needs." msgstr "" +"Python のパッケージングのベストプラクティスについて学びます。 また、Python " +"のパッケージングを支援するために利用可能なパッケージングツールの活発なエコシステムを知ることができます。" #: ../../index.md:113 msgid "✨ Create your package ✨" -msgstr "" +msgstr "✨パッケージの作成✨" #: ../../index.md:117 -msgid "[Package file structure](/package-structure-code/python-package-structure)" -msgstr "" +msgid "" +"[Package file structure](/package-structure-code/python-package-structure)" +msgstr "[パッケージファイル構造](/package-structure-code/python-package-structure)" #: ../../index.md:118 msgid "" -"[Package metadata / pyproject.toml](package-structure-code/pyproject-" -"toml-python-package-metadata.md)" +"[Package metadata / pyproject.toml](package-structure-code/pyproject-toml-" +"python-package-metadata.md)" msgstr "" +"[パッケージメタデータ / pyproject.toml](package-structure-code/pyproject-toml-python-" +"package-metadata.md)" #: ../../index.md:119 msgid "" -"[Build your package (sdist / wheel)](package-structure-code/python-" -"package-distribution-files-sdist-wheel.md)" +"[Build your package (sdist / wheel)](package-structure-code/python-package-" +"distribution-files-sdist-wheel.md)" msgstr "" +"[パッケージのビルド (sdist / wheel)](package-structure-code/python-package-" +"distribution-files-sdist-wheel.md)" #: ../../index.md:120 msgid "[Declare dependencies](package-structure-code/declare-dependencies.md)" -msgstr "" +msgstr "[依存関係の宣言](package-structure-code/declare-dependencies.md)" #: ../../index.md:121 msgid "" "[Navigate the packaging tool ecosystem](package-structure-code/python-" "package-build-tools.md)" msgstr "" +"[パッケージングツールのエコシステムをナビゲートする](package-structure-code/python-package-build-" +"tools.md)" #: ../../index.md:122 msgid "" "[Non pure Python builds](package-structure-code/complex-python-package-" "builds.md)" msgstr "" +"[純粋な Python 以外のビルド](package-structure-code/complex-python-package-builds.md)" #: ../../index.md:127 msgid "✨ Publish your package ✨" -msgstr "" +msgstr "✨パッケージを公開する✨" #: ../../index.md:131 msgid "" -"Gain a better understanding of the Python packaging ecosystem Learn about" -" best practices for:" -msgstr "" +"Gain a better understanding of the Python packaging ecosystem Learn about " +"best practices for:" +msgstr "Pythonのパッケージングエコシステムをより深く理解するためのベストプラクティスを学ぶ:" #: ../../index.md:134 msgid "" "[Package versioning & release](/package-structure-code/python-package-" "versions.md)" msgstr "" +"[パッケージのバージョン管理とリリース](/package-structure-code/python-package-versions.md)" #: ../../index.md:135 msgid "" "[Publish to PyPI & Conda-forge](/package-structure-code/publish-python-" "package-pypi-conda.md)" msgstr "" +"[PyPIとConda-forgeへの公開](/package-structure-code/publish-python-package-pypi-" +"conda.md)" #: ../../index.md:148 msgid "✨ Write The Docs ✨" -msgstr "" +msgstr "✨ドキュメントを書く✨" #: ../../index.md:151 msgid "" "[Create documentation for your users](/documentation/write-user-" "documentation/intro)" -msgstr "" +msgstr "[ユーザーのための文書を作成する](/documentation/write-user-documentation/intro)" #: ../../index.md:152 msgid "" -"[Core files to include in your package repository](/documentation" -"/repository-files/intro)" -msgstr "" +"[Core files to include in your package " +"repository](/documentation/repository-files/intro)" +msgstr "[パッケージリポジトリに含めるコアファイル](/documentation/repository-files/intro)" #: ../../index.md:153 msgid "" "[Write tutorials to show how your package is used](/documentation/write-" "user-documentation/create-package-tutorials)" msgstr "" +"[パッケージがどのように使われるかを示すチュートリアルを書く](/documentation/write-user-" +"documentation/create-package-tutorials)" #: ../../index.md:158 msgid "✨ Developer Docs ✨" -msgstr "" +msgstr "✨開発者向けドキュメント✨" #: ../../index.md:161 msgid "" -"[Create documentation for collaborating developers](/documentation" -"/repository-files/contributing-file)" +"[Create documentation for collaborating " +"developers](/documentation/repository-files/contributing-file)" msgstr "" +"[共同開発者のためのドキュメントの作成](/documentation/repository-files/contributing-file)" #: ../../index.md:162 msgid "" "[Write a development guide](/documentation/repository-files/development-" "guide)" -msgstr "" +msgstr "[開発ガイドを書く](/documentation/repository-files/development-guide)" #: ../../index.md:167 msgid "✨ Document For A Community ✨" -msgstr "" +msgstr "✨コミュニティのためのドキュメント✨" #: ../../index.md:170 msgid "" "[Writing a README file](/documentation/repository-files/readme-file-best-" "practices)" msgstr "" +"[READMEファイルの書き方](/documentation/repository-files/readme-file-best-practices)" #: ../../index.md:171 msgid "" -"[Set norms with a Code of Conduct](/documentation/repository-files/code-" -"of-conduct-file)" -msgstr "" +"[Set norms with a Code of Conduct](/documentation/repository-files/code-of-" +"conduct-file)" +msgstr "[行動規範で規範を定める](/documentation/repository-files/code-of-conduct-file)" #: ../../index.md:172 msgid "[License your package](/documentation/repository-files/license-files)" -msgstr "" +msgstr "[パッケージのライセンス](/documentation/repository-files/license-files)" #: ../../index.md:177 msgid "✨ Publish Your Docs ✨" -msgstr "" +msgstr "✨ドキュメントを公開する✨" #: ../../index.md:180 msgid "[How to publish your docs](/documentation/hosting-tools/intro)" -msgstr "" +msgstr "[ドキュメントを公開する方法](/documentation/hosting-tools/intro)" #: ../../index.md:181 msgid "[Using Sphinx](/documentation/hosting-tools/intro)" -msgstr "" +msgstr "[Sphinxを使う](/documentation/hosting-tools/intro)" #: ../../index.md:182 msgid "" -"[Markdown, MyST, and ReST](/documentation/hosting-tools/myst-markdown-" -"rst-doc-syntax)" +"[Markdown, MyST, and ReST](/documentation/hosting-tools/myst-markdown-rst-" +"doc-syntax)" msgstr "" +"[Markdown、MyST、およびReST](/documentation/hosting-tools/myst-markdown-rst-doc-" +"syntax)" #: ../../index.md:183 msgid "" "[Host your docs on Read The Docs or Github Pages](/documentation/hosting-" "tools/publish-documentation-online)" msgstr "" +"[Read The Docs または Github Pages でドキュメントをホストする](/documentation/hosting-" +"tools/publish-documentation-online)" #: ../../index.md:189 msgid "" "*We are actively working on this section. [Follow development " "here.](https://github.com/pyOpenSci/python-package-guide)*" msgstr "" +"*私たちはこのセクションに積極的に取り組んでいます。 " +"[開発のフォローはこちら](https://github.com/pyOpenSci/python-package-guide)*" #: ../../index.md:197 msgid "✨ Tests for your Python package ✨" -msgstr "" +msgstr "✨Pythonパッケージのテスト✨" #: ../../index.md:200 msgid "[Intro to testing](tests/index.md)" -msgstr "" +msgstr "[テスト入門](tests/index.md)" #: ../../index.md:201 msgid "[Write tests](tests/write-tests)" -msgstr "" +msgstr "[テストを書く](tests/write-tests)" #: ../../index.md:202 msgid "[Types of tests](tests/test-types)" -msgstr "" +msgstr "[テストの種類](tests/test-types)" #: ../../index.md:207 msgid "✨ Run your tests ✨" -msgstr "" +msgstr "✨テストの実行✨" #: ../../index.md:210 msgid "[Run tests locally](tests/run-tests)" -msgstr "" +msgstr "[ローカルでテストを実行する](tests/run-tests)" #: ../../index.md:211 msgid "[Run tests in CI](tests/tests-ci)" -msgstr "" +msgstr "[CIでテストを実行する](tests/tests-ci)" #: ../../index.md:215 msgid "Contributing" -msgstr "" +msgstr "貢献" #: ../../index.md:225 msgid "✨ Code style & Format ✨" -msgstr "" +msgstr "✨コードスタイルとフォーマット✨" #: ../../index.md:230 msgid "[Code style](package-structure-code/code-style-linting-format.md)" -msgstr "" +msgstr "[コードスタイル](package-structure-code/code-style-linting-format.md)" #: ../../index.md:235 msgid "✨ Want to contribute? ✨" -msgstr "" +msgstr "✨貢献したいですか? ✨" #: ../../index.md:240 msgid "" "We welcome contributions to this guide. Learn more about how you can " "contribute." -msgstr "" +msgstr "このガイドへのご貢献をお待ちしております。貢献方法についてはこちらをご覧ください。" #: ../../index.md:246 msgid "" -"xkcd comic showing a stick figure on the ground and one in the air. The " -"one on the ground is saying. `You're flying! how?` The person in the air" -" replies `Python!` Below is a 3 rectangle comic with the following text " -"in each box. box 1 - I learned it last night. Everything is so simple. " -"Hello world is just print hello world. box 2 - the person on the ground " -"says - come join us programming is fun again. it's a whole new world. But" -" how are you flying? box 3 - the person flying says - i just typed import" -" antigravity. I also sampled everything in the medicine cabinet. But i " -"think this is the python. the person on the ground is saying - that's it?" -msgstr "" +"xkcd comic showing a stick figure on the ground and one in the air. The one " +"on the ground is saying. `You're flying! how?` The person in the air " +"replies `Python!` Below is a 3 rectangle comic with the following text in " +"each box. box 1 - I learned it last night. Everything is so simple. Hello " +"world is just print hello world. box 2 - the person on the ground says - " +"come join us programming is fun again. it's a whole new world. But how are " +"you flying? box 3 - the person flying says - i just typed import " +"antigravity. I also sampled everything in the medicine cabinet. But i think " +"this is the python. the person on the ground is saying - that's it?" +msgstr "" +"xkcdの漫画で、地面に置かれた棒人間と空中にある棒人間が描かれている。地上にいる人が言っている。 `あなたは飛んでいる!どうやって?` 空中にいる人は" +" `Python!` と答える。以下は3つの長方形のマンガで、各ボックスに次のテキストが入っている。ボックス1 - " +"昨夜学んだ。すべてがとてもシンプルだ。Hello worldはprint hello worldだけ。ボックス2 - " +"地上にいる人が言う。まったく新しい世界だ。でもどうやって飛んでるの?ボックス3 - 飛んでいる人はこう言う。- " +"`反重力をインポートしました。薬箱の中のものも全部試しました。でもこれがpythonだと思う。地上の人はこう言っている。- これで終わり?" #: ../../index.md:252 msgid "A community-created guidebook" -msgstr "" +msgstr "コミュニティが作るガイドブック" #: ../../index.md:254 msgid "" "Every page in this guidebook goes through an extensive community review " -"process. To ensure our guidebook is both beginner-friendly and accurate, " -"we encourage reviews from a diverse set of pythonistas and scientists " -"with a wide range of skills and expertise." +"process. To ensure our guidebook is both beginner-friendly and accurate, we " +"encourage reviews from a diverse set of pythonistas and scientists with a " +"wide range of skills and expertise." msgstr "" +"このガイドブックのすべてのページは、コミュニティの広範なレビュープロセスを経ています。 " +"このガイドブックが初心者にやさしく、正確であることを保証するために、私たちは幅広いスキルと専門知識を持つ多様なpythonistaや科学者からのレビューを奨励しています。" #: ../../index.md:257 msgid "View guidebook contributors" -msgstr "" +msgstr "ガイドブックの貢献者を見る" #: ../../index.md:265 msgid "Who this guidebook is for" -msgstr "" +msgstr "このガイドブックの対象者" #: ../../index.md:267 msgid "" "This guidebook is for anyone interested in learning more about Python " "packaging. It is beginner-friendly and will provide:" -msgstr "" +msgstr "このガイドブックはPythonのパッケージングについてもっと学びたいと思っている人のためのものです。 初心者に優しく、以下を提供します:" #: ../../index.md:269 msgid "Beginning-to-end guidance on creating a Python package." -msgstr "" +msgstr "Pythonパッケージの作成に関する初歩から終わりまでのガイダンス。" #: ../../index.md:270 msgid "" -"Resources to help you navigate the Python packaging ecosystem of tools " -"and approaches to packaging." -msgstr "" +"Resources to help you navigate the Python packaging ecosystem of tools and " +"approaches to packaging." +msgstr "Python のパッケージングエコシステムをナビゲートするのに役立つリソースです。" #: ../../index.md:271 msgid "" -"A curated list of resources to help you get your package into documented," -" usable and maintainable shape." -msgstr "" +"A curated list of resources to help you get your package into documented, " +"usable and maintainable shape." +msgstr "あなたのパッケージが文書化され、使用可能で保守可能な形になるのを助けるリソースの厳選されたリストです。" #: ../../index.md:273 msgid "Where this guide is headed" -msgstr "" +msgstr "このガイドの方向性" #: ../../index.md:275 msgid "" -"If you have ideas of things you'd like to see here clarified in this " -"guide, [we invite you to open an issue on " +"If you have ideas of things you'd like to see here clarified in this guide, " +"[we invite you to open an issue on " "GitHub.](https://github.com/pyOpenSci/python-package-guide/issues)." msgstr "" +"このガイドで明確にしてほしいことがあれば、 " +"[GitHubにissueを開いてください。](https://github.com/pyOpenSci/python-package-" +"guide/issues) 。" #: ../../index.md:278 msgid "" -"If you have questions about our peer review process or packaging in " -"general, you are welcome to use our [pyOpenSci Discourse " +"If you have questions about our peer review process or packaging in general," +" you are welcome to use our [pyOpenSci Discourse " "forum](https://pyopensci.discourse.group/)." msgstr "" +"レビュープロセスやパッケージング全般について質問がある場合は、 [pyOpenSci Discourse " +"forum](https://pyopensci.discourse.group/) をご利用ください。" #: ../../index.md:280 msgid "" -"This is a living guide that is updated as tools and best practices evolve" -" in the Python packaging ecosystem. We will be adding new content over " -"the next year." +"This is a living guide that is updated as tools and best practices evolve in" +" the Python packaging ecosystem. We will be adding new content over the next" +" year." msgstr "" +"これは Python のパッケージングエコシステムにおけるツールやベストプラクティスの進化に合わせて更新される生きたガイドです。 " +"来年にかけて新しいコンテンツを追加していく予定です。" From a2d871b46eacfeb4b2ca8d37915ff1be2afb405f Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Sun, 11 Aug 2024 06:23:53 +0000 Subject: [PATCH 15/93] =?UTF-8?q?'[pre-commit.ci=20=F0=9F=A4=96]=20Apply?= =?UTF-8?q?=20code=20format=20tools=20to=20PR'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- locales/ja/LC_MESSAGES/index.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/locales/ja/LC_MESSAGES/index.po b/locales/ja/LC_MESSAGES/index.po index 50c7a478..399d1cb1 100644 --- a/locales/ja/LC_MESSAGES/index.po +++ b/locales/ja/LC_MESSAGES/index.po @@ -3,10 +3,10 @@ # This file is distributed under the same license as the pyOpenSci Python # Package Guide package. # FIRST AUTHOR , 2024. -# +# # Translators: # Tetsuo Koyama , 2024 -# +# #, fuzzy msgid "" msgstr "" From bd330b85990a04b71ad4e6df5d6e9ae59e400ed0 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sun, 11 Aug 2024 15:30:06 +0900 Subject: [PATCH 16/93] Revert msgid part --- locales/ja/LC_MESSAGES/index.po | 123 +++++++++++++++----------------- 1 file changed, 59 insertions(+), 64 deletions(-) diff --git a/locales/ja/LC_MESSAGES/index.po b/locales/ja/LC_MESSAGES/index.po index 399d1cb1..83e4bdda 100644 --- a/locales/ja/LC_MESSAGES/index.po +++ b/locales/ja/LC_MESSAGES/index.po @@ -4,24 +4,21 @@ # Package Guide package. # FIRST AUTHOR , 2024. # -# Translators: -# Tetsuo Koyama , 2024 -# #, fuzzy msgid "" msgstr "" -"Project-Id-Version: pyOpenSci Python Package Guide\n" +"Project-Id-Version: pyOpenSci Python Package Guide \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2024-08-02 18:04+0900\n" -"PO-Revision-Date: 2024-08-07 23:17+0000\n" -"Last-Translator: Tetsuo Koyama , 2024\n" -"Language-Team: Japanese (https://app.transifex.com/tkoyama010/teams/196662/ja/)\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: ja\n" +"Language-Team: ja \n" +"Plural-Forms: nplurals=1; plural=0;\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.15.0\n" -"Language: ja\n" -"Plural-Forms: nplurals=1; plural=0;\n" #: ../../index.md:283 msgid "Tutorials" @@ -84,12 +81,12 @@ msgstr "このガイドについて" #: ../../index.md:29 msgid "" "Image with the pyOpenSci flower logo in the upper right hand corner. The " -"image shows the packaging lifecycle. The graphic shows a high level overview" -" of the elements of a Python package. the inside circle has 5 items - user " -"documentation, code/api, test suite, contributor documentation, project " -"metadata / license / readme. In the middle of the circle is says maintainers" -" and has a small icon with people. on the outside circle there is an arrow " -"and it says infrastructure." +"image shows the packaging lifecycle. The graphic shows a high level " +"overview of the elements of a Python package. the inside circle has 5 " +"items - user documentation, code/api, test suite, contributor " +"documentation, project metadata / license / readme. In the middle of the " +"circle is says maintainers and has a small icon with people. on the " +"outside circle there is an arrow and it says infrastructure." msgstr "" "右上にpyOpenSciの花のロゴがある画像。画像はパッケージングのライフサイクルを示しています。図にはPythonパッケージの要素のハイレベルな概要が示されています。内側の円には5つの項目があります" " - " @@ -112,8 +109,7 @@ msgid "Navigate and make decisions around tool options" msgstr "ツールオプションのナビゲートと決定" #: ../../index.md:40 -msgid "" -"Understand all of the pieces of creating and maintaining a Python package" +msgid "Understand all of the pieces of creating and maintaining a Python package" msgstr "Pythonパッケージの作成と保守のすべてを理解する" #: ../../index.md:42 @@ -161,10 +157,10 @@ msgstr "_new_ チュートリアルシリーズ: Pythonパッケージの作成" #: ../../index.md:61 msgid "" -"The first round of our community-developed, how to create a Python package " -"tutorial series for scientists is complete! Join our community review " -"process or watch development of future tutorials in our [Github repo " -"here](https://github.com/pyOpenSci/python-package-guide)." +"The first round of our community-developed, how to create a Python " +"package tutorial series for scientists is complete! Join our community " +"review process or watch development of future tutorials in our [Github " +"repo here](https://github.com/pyOpenSci/python-package-guide)." msgstr "" "コミュニティが開発した、科学者のためのPythonパッケージの作り方チュートリアルシリーズの第一弾が完成しました! " "コミュニティのレビュープロセスに参加したり、 [Github " @@ -220,9 +216,9 @@ msgstr "科学者のためのPythonパッケージング" #: ../../index.md:104 msgid "" -"Learn about Python packaging best practices. You will also get to know the " -"the vibrant ecosystem of packaging tools that are available to help you with" -" your Python packaging needs." +"Learn about Python packaging best practices. You will also get to know " +"the the vibrant ecosystem of packaging tools that are available to help " +"you with your Python packaging needs." msgstr "" "Python のパッケージングのベストプラクティスについて学びます。 また、Python " "のパッケージングを支援するために利用可能なパッケージングツールの活発なエコシステムを知ることができます。" @@ -232,22 +228,21 @@ msgid "✨ Create your package ✨" msgstr "✨パッケージの作成✨" #: ../../index.md:117 -msgid "" -"[Package file structure](/package-structure-code/python-package-structure)" +msgid "[Package file structure](/package-structure-code/python-package-structure)" msgstr "[パッケージファイル構造](/package-structure-code/python-package-structure)" #: ../../index.md:118 msgid "" -"[Package metadata / pyproject.toml](package-structure-code/pyproject-toml-" -"python-package-metadata.md)" +"[Package metadata / pyproject.toml](package-structure-code/pyproject-" +"toml-python-package-metadata.md)" msgstr "" "[パッケージメタデータ / pyproject.toml](package-structure-code/pyproject-toml-python-" "package-metadata.md)" #: ../../index.md:119 msgid "" -"[Build your package (sdist / wheel)](package-structure-code/python-package-" -"distribution-files-sdist-wheel.md)" +"[Build your package (sdist / wheel)](package-structure-code/python-" +"package-distribution-files-sdist-wheel.md)" msgstr "" "[パッケージのビルド (sdist / wheel)](package-structure-code/python-package-" "distribution-files-sdist-wheel.md)" @@ -277,8 +272,8 @@ msgstr "✨パッケージを公開する✨" #: ../../index.md:131 msgid "" -"Gain a better understanding of the Python packaging ecosystem Learn about " -"best practices for:" +"Gain a better understanding of the Python packaging ecosystem Learn about" +" best practices for:" msgstr "Pythonのパッケージングエコシステムをより深く理解するためのベストプラクティスを学ぶ:" #: ../../index.md:134 @@ -308,8 +303,8 @@ msgstr "[ユーザーのための文書を作成する](/documentation/write-use #: ../../index.md:152 msgid "" -"[Core files to include in your package " -"repository](/documentation/repository-files/intro)" +"[Core files to include in your package repository](/documentation" +"/repository-files/intro)" msgstr "[パッケージリポジトリに含めるコアファイル](/documentation/repository-files/intro)" #: ../../index.md:153 @@ -326,8 +321,8 @@ msgstr "✨開発者向けドキュメント✨" #: ../../index.md:161 msgid "" -"[Create documentation for collaborating " -"developers](/documentation/repository-files/contributing-file)" +"[Create documentation for collaborating developers](/documentation" +"/repository-files/contributing-file)" msgstr "" "[共同開発者のためのドキュメントの作成](/documentation/repository-files/contributing-file)" @@ -350,8 +345,8 @@ msgstr "" #: ../../index.md:171 msgid "" -"[Set norms with a Code of Conduct](/documentation/repository-files/code-of-" -"conduct-file)" +"[Set norms with a Code of Conduct](/documentation/repository-files/code-" +"of-conduct-file)" msgstr "[行動規範で規範を定める](/documentation/repository-files/code-of-conduct-file)" #: ../../index.md:172 @@ -372,8 +367,8 @@ msgstr "[Sphinxを使う](/documentation/hosting-tools/intro)" #: ../../index.md:182 msgid "" -"[Markdown, MyST, and ReST](/documentation/hosting-tools/myst-markdown-rst-" -"doc-syntax)" +"[Markdown, MyST, and ReST](/documentation/hosting-tools/myst-markdown-" +"rst-doc-syntax)" msgstr "" "[Markdown、MyST、およびReST](/documentation/hosting-tools/myst-markdown-rst-doc-" "syntax)" @@ -446,15 +441,15 @@ msgstr "このガイドへのご貢献をお待ちしております。貢献方 #: ../../index.md:246 msgid "" -"xkcd comic showing a stick figure on the ground and one in the air. The one " -"on the ground is saying. `You're flying! how?` The person in the air " -"replies `Python!` Below is a 3 rectangle comic with the following text in " -"each box. box 1 - I learned it last night. Everything is so simple. Hello " -"world is just print hello world. box 2 - the person on the ground says - " -"come join us programming is fun again. it's a whole new world. But how are " -"you flying? box 3 - the person flying says - i just typed import " -"antigravity. I also sampled everything in the medicine cabinet. But i think " -"this is the python. the person on the ground is saying - that's it?" +"xkcd comic showing a stick figure on the ground and one in the air. The " +"one on the ground is saying. `You're flying! how?` The person in the air" +" replies `Python!` Below is a 3 rectangle comic with the following text " +"in each box. box 1 - I learned it last night. Everything is so simple. " +"Hello world is just print hello world. box 2 - the person on the ground " +"says - come join us programming is fun again. it's a whole new world. But" +" how are you flying? box 3 - the person flying says - i just typed import" +" antigravity. I also sampled everything in the medicine cabinet. But i " +"think this is the python. the person on the ground is saying - that's it?" msgstr "" "xkcdの漫画で、地面に置かれた棒人間と空中にある棒人間が描かれている。地上にいる人が言っている。 `あなたは飛んでいる!どうやって?` 空中にいる人は" " `Python!` と答える。以下は3つの長方形のマンガで、各ボックスに次のテキストが入っている。ボックス1 - " @@ -469,9 +464,9 @@ msgstr "コミュニティが作るガイドブック" #: ../../index.md:254 msgid "" "Every page in this guidebook goes through an extensive community review " -"process. To ensure our guidebook is both beginner-friendly and accurate, we " -"encourage reviews from a diverse set of pythonistas and scientists with a " -"wide range of skills and expertise." +"process. To ensure our guidebook is both beginner-friendly and accurate, " +"we encourage reviews from a diverse set of pythonistas and scientists " +"with a wide range of skills and expertise." msgstr "" "このガイドブックのすべてのページは、コミュニティの広範なレビュープロセスを経ています。 " "このガイドブックが初心者にやさしく、正確であることを保証するために、私たちは幅広いスキルと専門知識を持つ多様なpythonistaや科学者からのレビューを奨励しています。" @@ -496,14 +491,14 @@ msgstr "Pythonパッケージの作成に関する初歩から終わりまでの #: ../../index.md:270 msgid "" -"Resources to help you navigate the Python packaging ecosystem of tools and " -"approaches to packaging." +"Resources to help you navigate the Python packaging ecosystem of tools " +"and approaches to packaging." msgstr "Python のパッケージングエコシステムをナビゲートするのに役立つリソースです。" #: ../../index.md:271 msgid "" -"A curated list of resources to help you get your package into documented, " -"usable and maintainable shape." +"A curated list of resources to help you get your package into documented," +" usable and maintainable shape." msgstr "あなたのパッケージが文書化され、使用可能で保守可能な形になるのを助けるリソースの厳選されたリストです。" #: ../../index.md:273 @@ -512,8 +507,8 @@ msgstr "このガイドの方向性" #: ../../index.md:275 msgid "" -"If you have ideas of things you'd like to see here clarified in this guide, " -"[we invite you to open an issue on " +"If you have ideas of things you'd like to see here clarified in this " +"guide, [we invite you to open an issue on " "GitHub.](https://github.com/pyOpenSci/python-package-guide/issues)." msgstr "" "このガイドで明確にしてほしいことがあれば、 " @@ -522,8 +517,8 @@ msgstr "" #: ../../index.md:278 msgid "" -"If you have questions about our peer review process or packaging in general," -" you are welcome to use our [pyOpenSci Discourse " +"If you have questions about our peer review process or packaging in " +"general, you are welcome to use our [pyOpenSci Discourse " "forum](https://pyopensci.discourse.group/)." msgstr "" "レビュープロセスやパッケージング全般について質問がある場合は、 [pyOpenSci Discourse " @@ -531,9 +526,9 @@ msgstr "" #: ../../index.md:280 msgid "" -"This is a living guide that is updated as tools and best practices evolve in" -" the Python packaging ecosystem. We will be adding new content over the next" -" year." +"This is a living guide that is updated as tools and best practices evolve" +" in the Python packaging ecosystem. We will be adding new content over " +"the next year." msgstr "" "これは Python のパッケージングエコシステムにおけるツールやベストプラクティスの進化に合わせて更新される生きたガイドです。 " "来年にかけて新しいコンテンツを追加していく予定です。" From 4f87f2a4ed5105d2b8f40d4ebd87b5a1a2171c4f Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Mon, 12 Aug 2024 09:33:48 -0600 Subject: [PATCH 17/93] docs: add RobPasMue as a contributor for translation (#374) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 3 ++- README.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index ca755e44..4ed8ed3d 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -688,7 +688,8 @@ "profile": "http://robpasmue.github.io", "contributions": [ "code", - "review" + "review", + "translation" ] }, { diff --git a/README.md b/README.md index 57c2f4dd..933f8c1b 100644 --- a/README.md +++ b/README.md @@ -159,7 +159,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Ananthu C V
Ananthu C V

👀 Chris Holdgraf
Chris Holdgraf

💻 👀 Neil Chue Hong
Neil Chue Hong

👀 - Roberto Pastor Muela
Roberto Pastor Muela

💻 👀 + Roberto Pastor Muela
Roberto Pastor Muela

💻 👀 🌍 Olek
Olek

💻 👀 Han
Han

💻 👀 hpodzorski-USGS
hpodzorski-USGS

💻 👀 From a5a49c6527a19d85be734c118997816f3c9fc7c8 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Mon, 12 Aug 2024 09:36:44 -0600 Subject: [PATCH 18/93] docs: add willingc as a contributor for review (#373) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 9 +++++++++ README.md | 3 ++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 4ed8ed3d..f1db09dc 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -761,6 +761,15 @@ "code", "review" ] + }, + { + "login": "willingc", + "name": "Carol Willing", + "avatar_url": "https://avatars.githubusercontent.com/u/2680980?v=4", + "profile": "https://hachyderm.io/web/@willingc", + "contributions": [ + "review" + ] } ], "contributorsPerLine": 7, diff --git a/README.md b/README.md index 933f8c1b..9fec35f9 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # pyOpenSci scientific Python Packaging Guide -[![All Contributors](https://img.shields.io/badge/all_contributors-74-orange.svg?style=flat-square)](#contributors-) +[![All Contributors](https://img.shields.io/badge/all_contributors-75-orange.svg?style=flat-square)](#contributors-) ![GitHub release (latest by date)](https://img.shields.io/github/v/release/pyopensci/python-package-guide?color=purple&display_name=tag&style=plastic) @@ -169,6 +169,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d John Drake
John Drake

💻 👀 Revathy Venugopal
Revathy Venugopal

💻 👀 Tetsuo Koyama
Tetsuo Koyama

💻 👀 + Carol Willing
Carol Willing

👀 From dce4cc52fbcc62b46ee32e98bcf81e9576894c87 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Tue, 13 Aug 2024 09:06:12 +0900 Subject: [PATCH 19/93] Update all-contributors badge to new version --- README.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/README.md b/README.md index 9fec35f9..3f6292d5 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,5 @@ # pyOpenSci scientific Python Packaging Guide - -[![All Contributors](https://img.shields.io/badge/all_contributors-75-orange.svg?style=flat-square)](#contributors-) - +[![All Contributors](https://img.shields.io/github/all-contributors/pyOpenSci/python-package-guide?color=ee8449)](#contributors) ![GitHub release (latest by date)](https://img.shields.io/github/v/release/pyopensci/python-package-guide?color=purple&display_name=tag&style=plastic) From 24fa2dd2bcf930a51f85fea790bd9f4d11c7eade Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Tue, 13 Aug 2024 09:08:10 +0900 Subject: [PATCH 20/93] Remove conjunctions in bullet points --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9fec35f9..5b209387 100644 --- a/README.md +++ b/README.md @@ -15,8 +15,8 @@ pyOpenSci is devoted to building diverse, supportive community around the Python open source tools that drive open science. We do this through: * open peer review -* mentorship and -* training. +* mentorshipd +* training pyOpenSci is an independent organization, fiscally sponsored by Community Initiatives. From 62c7824ef132eb4b1b57eee1b0626fa403cfc3f4 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Tue, 13 Aug 2024 09:24:29 +0900 Subject: [PATCH 21/93] Apply suggestions from code review --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5b209387..fba12c89 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ pyOpenSci is devoted to building diverse, supportive community around the Python open source tools that drive open science. We do this through: * open peer review -* mentorshipd +* mentorship * training pyOpenSci is an independent organization, fiscally sponsored by Community From ce471643c6d232997fc2f6ed279bb703b8ecd048 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Tue, 13 Aug 2024 09:25:54 +0900 Subject: [PATCH 22/93] Apply suggestions from code review --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3f6292d5..033b1874 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # pyOpenSci scientific Python Packaging Guide -[![All Contributors](https://img.shields.io/github/all-contributors/pyOpenSci/python-package-guide?color=ee8449)](#contributors) +[![All Contributors](https://img.shields.io/github/all-contributors/pyOpenSci/python-package-guide?color=ee8449)](#contributors-) ![GitHub release (latest by date)](https://img.shields.io/github/v/release/pyopensci/python-package-guide?color=purple&display_name=tag&style=plastic) From 725123cab13a80e6ae9d4f368bea549228acf239 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Tue, 13 Aug 2024 09:07:36 -0600 Subject: [PATCH 23/93] docs: add kozo2 as a contributor for review (#375) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 10 ++++++++++ README.md | 3 ++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index f1db09dc..58c571e0 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -770,6 +770,16 @@ "contributions": [ "review" ] + }, + { + "login": "kozo2", + "name": "Kozo Nishida", + "avatar_url": "https://avatars.githubusercontent.com/u/12192?v=4", + "profile": "https://github.com/kozo2", + "contributions": [ + "review", + "translation" + ] } ], "contributorsPerLine": 7, diff --git a/README.md b/README.md index 9fec35f9..342260be 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # pyOpenSci scientific Python Packaging Guide -[![All Contributors](https://img.shields.io/badge/all_contributors-75-orange.svg?style=flat-square)](#contributors-) +[![All Contributors](https://img.shields.io/badge/all_contributors-76-orange.svg?style=flat-square)](#contributors-) ![GitHub release (latest by date)](https://img.shields.io/github/v/release/pyopensci/python-package-guide?color=purple&display_name=tag&style=plastic) @@ -170,6 +170,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Revathy Venugopal
Revathy Venugopal

💻 👀 Tetsuo Koyama
Tetsuo Koyama

💻 👀 Carol Willing
Carol Willing

👀 + Kozo Nishida
Kozo Nishida

👀 🌍 From ec0f2624c065bf1727c6be87b0c39a97ce71e836 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Thu, 15 Aug 2024 07:14:35 +0900 Subject: [PATCH 24/93] chore: add prettier to pre-commit hook configuration (#371) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add prettier to pre-commit hook configuration * Update .pre-commit-config.yaml * Update .pre-commit-config.yaml * Update .pre-commit-config.yaml * Update .pre-commit-config.yaml * Update .pre-commit-config.yaml * Update pyos.css * '[pre-commit.ci 🤖] Apply code format tools to PR' * '[pre-commit.ci 🤖] Apply code format tools to PR' * '[pre-commit.ci 🤖] Apply code format tools to PR' * Update .pre-commit-config.yaml * Update README.md * Update CONTRIBUTING.md * Revert documentation * Update index.md * Revert markdown * Revert markdown files to original state * Revert markdown files to original state before prettier formatting --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- .github/workflows/build-book.yml | 92 ++-- .pre-commit-config.yaml | 35 +- .zenodo.json | 488 ++++++++++---------- _static/matomo.js | 22 +- _static/pyos.css | 390 ++++++++-------- _templates/code_of_conduct.html | 11 +- examples/pure-hatch/.pre-commit-config.yaml | 18 +- 7 files changed, 531 insertions(+), 525 deletions(-) diff --git a/.github/workflows/build-book.yml b/.github/workflows/build-book.yml index 1e9917b4..e978b3c8 100644 --- a/.github/workflows/build-book.yml +++ b/.github/workflows/build-book.yml @@ -15,57 +15,57 @@ jobs: build-test-book: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v4 - - name: Setup Python - uses: actions/setup-python@v5 - with: - python-version: '3.9' + - name: Setup Python + uses: actions/setup-python@v5 + with: + python-version: "3.9" - - name: Upgrade pip - run: | - # install pip=>20.1 to use "pip cache dir" - python3 -m pip install --upgrade pip - - name: Get pip cache dir - id: pip-cache - run: echo "::set-output name=dir::$(pip cache dir)" + - name: Upgrade pip + run: | + # install pip=>20.1 to use "pip cache dir" + python3 -m pip install --upgrade pip + - name: Get pip cache dir + id: pip-cache + run: echo "::set-output name=dir::$(pip cache dir)" - - name: Cache dependencies - uses: actions/cache@v4 - with: - path: ${{ steps.pip-cache.outputs.dir }} - key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} - restore-keys: | - ${{ runner.os }}-pip- + - name: Cache dependencies + uses: actions/cache@v4 + with: + path: ${{ steps.pip-cache.outputs.dir }} + key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} + restore-keys: | + ${{ runner.os }}-pip- - - name: Install dependencies - run: python3 -m pip install nox + - name: Install dependencies + run: python3 -m pip install nox - - name: Build book - run: nox -s docs-test + - name: Build book + run: nox -s docs-test - # Save html as artifact - - name: Save book html as artifact for viewing - uses: actions/upload-artifact@v4 - with: - name: book-html - path: | - _build/html/ + # Save html as artifact + - name: Save book html as artifact for viewing + uses: actions/upload-artifact@v4 + with: + name: book-html + path: | + _build/html/ - # Push the book's HTML to github-pages - - name: Push to GitHub Pages - # Only push if on main branch - if: github.ref == 'refs/heads/main' - uses: peaceiris/actions-gh-pages@v3.8.0 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./_build/html + # Push the book's HTML to github-pages + - name: Push to GitHub Pages + # Only push if on main branch + if: github.ref == 'refs/heads/main' + uses: peaceiris/actions-gh-pages@v3.8.0 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./_build/html - # Test for bad links and ensure alt tags for usability - - name: Check HTML using htmlproofer - uses: chabad360/htmlproofer@master - with: - directory: '_build/html' - arguments: | - --ignore-files "/.+\/_static\/.+/,/genindex.html/" - --ignore-status-codes "404, 403, 429, 503" + # Test for bad links and ensure alt tags for usability + - name: Check HTML using htmlproofer + uses: chabad360/htmlproofer@master + with: + directory: "_build/html" + arguments: | + --ignore-files "/.+\/_static\/.+/,/genindex.html/" + --ignore-status-codes "404, 403, 429, 503" diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index de0e2e73..e5d90f98 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -12,7 +12,6 @@ # - Register git hooks: pre-commit install --install-hooks repos: - # Misc commit checks - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.6.0 @@ -28,23 +27,29 @@ repos: - repo: https://github.com/codespell-project/codespell rev: v2.3.0 hooks: - - id: codespell - additional_dependencies: - - tomli - exclude: > - (?x)^( - (.*vale-styles.*)|(.*\.po) - )$ + - id: codespell + additional_dependencies: + - tomli + exclude: > + (?x)^( + (.*vale-styles.*)|(.*\.po) + )$ - repo: https://github.com/errata-ai/vale rev: v3.7.0 hooks: - - id: vale + - id: vale + + - repo: https://github.com/pre-commit/mirrors-prettier + rev: v3.1.0 + hooks: + - id: prettier + types_or: [yaml, html, css, scss, javascript, json, toml] ci: - autofix_prs: false - #skip: [flake8, end-of-file-fixer] - autofix_commit_msg: | - '[pre-commit.ci 🤖] Apply code format tools to PR' - # Update hook versions every month (so we don't get hit with weekly update pr's) - autoupdate_schedule: monthly + autofix_prs: false + #skip: [flake8, end-of-file-fixer] + autofix_commit_msg: | + '[pre-commit.ci 🤖] Apply code format tools to PR' + # Update hook versions every month (so we don't get hit with weekly update pr's) + autoupdate_schedule: monthly diff --git a/.zenodo.json b/.zenodo.json index b7cb990b..d9524a2d 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -1,246 +1,246 @@ { - "creators": [ - { - "affiliation": "pyOpenSci", - "name": "Wasser, Leah", - "orcid": "0000-0002-8177-6550" - }, - { - "affiliation": "", - "name": "Nicholson, David", - "orcid": "0000-0002-4261-4719" - }, - { - "affiliation": "Hasso Plattner Institute", - "name": "Sasso, Ariane", - "orcid": "0000-0002-3669-4599" - }, - { - "affiliation": "", - "name": "Batisse, Alexandre", - "orcid": "0000-0001-7912-3422" - }, - { - "affiliation": "", - "name": "Molinsky, Simon" - }, - { - "affiliation": "", - "name": "Marmo, Chiara", - "orcid": "0000-0003-2843-6044 " - }, - { - "affiliation": "", - "name": "Fernandes, Filipe" - }, - { - "affiliation": "", - "name": "Saunders, Jonny" - }, - { - "affiliation": "Willing Consulting", - "name": "Willing, Carol", - "orcid": "0000-0002-9817-8485" - }, - { - "affiliation": "Ouranos", - "name": "Smith, Trevor James", - "orcid": "0000-0001-5393-8359" - }, - { - "affiliation": "pyOpenSci", - "name": "Mostipak, Jesse", - "orcid": "0000-0003-1915-9612" - }, - { - "affiliation": "", - "name": "Paige, Jeremy" - }, - { - "affiliation": "", - "name": "Murphy, Nick" - }, - { - "affiliation": "", - "name": "Broderick, Billy", - "orcid": "0000-0002-8999-9003" - }, - { - "affiliation": "Posit, PBC", - "name": "Zimmerman, Isabel", - "orcid": "0009-0007-1803-9391" - }, - { - "affiliation": "", - "name": "Beber, Moritz E." - }, - { - "affiliation": "NVIDIA", - "name": "Welch, Erik", - "orcid": "0000-0003-3694-3783" - } - ], - "contributors": [ - { - "type": "Other", - "affiliation": "Quansight", - "name": "Pamphile T., Roy", - "orcid": "0000-0001-9816-1416" - }, - { - "type": "Other", - "affiliation": "", - "name": "Döring, Randy" - }, - { - "type": "Other", - "affiliation": "", - "name": "Cano Rodríguez, Juan Luis", - "orcid": "0000-0002-2187-161X" - }, - { - "type": "Other", - "affiliation": "Princeton University", - "name": "Schreiner, Henry", - "orcid": "0000-0002-7833-783X" - }, - { - "type": "Other", - "affiliation": "", - "name": "Van der Walt, Stéfan" - }, - { - "type": "Other", - "affiliation": "Quansight", - "name": "Gommers, Ralf", - "orcid": "0000-0002-0300-3333" - }, - { - "type": "Other", - "affiliation": "", - "name": "Gedam, Pradyun" - }, - { - "type": "Other", - "affiliation": "", - "name": "Lef, Ofek" - }, - { - "type": "Other", - "affiliation": "", - "name": "Tocknell, James" - }, - { - "type": "Other", - "affiliation": "", - "name": "Ming, Frost" - }, - { - "type": "Other", - "affiliation": "", - "name": "van Kemenade, Hugo", - "orcid": "0000-0001-5715-8632" - }, - { - "type": "Other", - "affiliation": "", - "name": "Hall, Matt" - }, - { - "type": "Other", - "affiliation": "", - "name": "Leidel, Jannis" - }, - { - "type": "Other", - "affiliation": "", - "name": "Hirschfeld, Dave" - }, - { - "type": "Other", - "affiliation": "", - "name": "Bravalheri, Anderson" - }, - { - "type": "Other", - "affiliation": "", - "name": "Possenriede, Daniel" - }, - { - "type": "Other", - "affiliation": "", - "name": "Yang, Ruoxi" - }, - { - "type": "Other", - "affiliation": "", - "name": "Éric" - }, - { - "type": "Other", - "affiliation": "", - "name": "Cranston, Karen" - }, - { - "type": "Other", - "affiliation": "", - "name": "Kennedy, Joseph H." - }, - { - "type": "Other", - "affiliation": "", - "name": "Pawson, Inessa" - }, - { - "type": "Other", - "affiliation": "", - "name": "Knorps, Maria" - }, - { - "type": "Other", - "affiliation": "", - "name": "Schwartz, Eli" - }, - { - "type": "Other", - "affiliation": "", - "name": "Burns, Jackson" - }, - { - "type": "Other", - "affiliation": "", - "name": "Jaimergp" - }, - { - "type": "Other", - "affiliation": "", - "name": "h-vetinari" - }, - { - "type": "Other", - "affiliation": "", - "name": "Ogasawara, Ivan" - }, - { - "type": "Other", - "affiliation": "", - "name": "Russell, Tom" - }, - { - "type": "Other", - "affiliation": "", - "name": "A., Philipp" - } - ], - "keywords": [ - "open source software", - "Python", - "open peer review", - "data science", - "open reproducible science", - "science" - ], - "license": "CC-BY-SA-4.0", - "upload_type": "publication", - "publication_type": "book" + "creators": [ + { + "affiliation": "pyOpenSci", + "name": "Wasser, Leah", + "orcid": "0000-0002-8177-6550" + }, + { + "affiliation": "", + "name": "Nicholson, David", + "orcid": "0000-0002-4261-4719" + }, + { + "affiliation": "Hasso Plattner Institute", + "name": "Sasso, Ariane", + "orcid": "0000-0002-3669-4599" + }, + { + "affiliation": "", + "name": "Batisse, Alexandre", + "orcid": "0000-0001-7912-3422" + }, + { + "affiliation": "", + "name": "Molinsky, Simon" + }, + { + "affiliation": "", + "name": "Marmo, Chiara", + "orcid": "0000-0003-2843-6044 " + }, + { + "affiliation": "", + "name": "Fernandes, Filipe" + }, + { + "affiliation": "", + "name": "Saunders, Jonny" + }, + { + "affiliation": "Willing Consulting", + "name": "Willing, Carol", + "orcid": "0000-0002-9817-8485" + }, + { + "affiliation": "Ouranos", + "name": "Smith, Trevor James", + "orcid": "0000-0001-5393-8359" + }, + { + "affiliation": "pyOpenSci", + "name": "Mostipak, Jesse", + "orcid": "0000-0003-1915-9612" + }, + { + "affiliation": "", + "name": "Paige, Jeremy" + }, + { + "affiliation": "", + "name": "Murphy, Nick" + }, + { + "affiliation": "", + "name": "Broderick, Billy", + "orcid": "0000-0002-8999-9003" + }, + { + "affiliation": "Posit, PBC", + "name": "Zimmerman, Isabel", + "orcid": "0009-0007-1803-9391" + }, + { + "affiliation": "", + "name": "Beber, Moritz E." + }, + { + "affiliation": "NVIDIA", + "name": "Welch, Erik", + "orcid": "0000-0003-3694-3783" + } + ], + "contributors": [ + { + "type": "Other", + "affiliation": "Quansight", + "name": "Pamphile T., Roy", + "orcid": "0000-0001-9816-1416" + }, + { + "type": "Other", + "affiliation": "", + "name": "Döring, Randy" + }, + { + "type": "Other", + "affiliation": "", + "name": "Cano Rodríguez, Juan Luis", + "orcid": "0000-0002-2187-161X" + }, + { + "type": "Other", + "affiliation": "Princeton University", + "name": "Schreiner, Henry", + "orcid": "0000-0002-7833-783X" + }, + { + "type": "Other", + "affiliation": "", + "name": "Van der Walt, Stéfan" + }, + { + "type": "Other", + "affiliation": "Quansight", + "name": "Gommers, Ralf", + "orcid": "0000-0002-0300-3333" + }, + { + "type": "Other", + "affiliation": "", + "name": "Gedam, Pradyun" + }, + { + "type": "Other", + "affiliation": "", + "name": "Lef, Ofek" + }, + { + "type": "Other", + "affiliation": "", + "name": "Tocknell, James" + }, + { + "type": "Other", + "affiliation": "", + "name": "Ming, Frost" + }, + { + "type": "Other", + "affiliation": "", + "name": "van Kemenade, Hugo", + "orcid": "0000-0001-5715-8632" + }, + { + "type": "Other", + "affiliation": "", + "name": "Hall, Matt" + }, + { + "type": "Other", + "affiliation": "", + "name": "Leidel, Jannis" + }, + { + "type": "Other", + "affiliation": "", + "name": "Hirschfeld, Dave" + }, + { + "type": "Other", + "affiliation": "", + "name": "Bravalheri, Anderson" + }, + { + "type": "Other", + "affiliation": "", + "name": "Possenriede, Daniel" + }, + { + "type": "Other", + "affiliation": "", + "name": "Yang, Ruoxi" + }, + { + "type": "Other", + "affiliation": "", + "name": "Éric" + }, + { + "type": "Other", + "affiliation": "", + "name": "Cranston, Karen" + }, + { + "type": "Other", + "affiliation": "", + "name": "Kennedy, Joseph H." + }, + { + "type": "Other", + "affiliation": "", + "name": "Pawson, Inessa" + }, + { + "type": "Other", + "affiliation": "", + "name": "Knorps, Maria" + }, + { + "type": "Other", + "affiliation": "", + "name": "Schwartz, Eli" + }, + { + "type": "Other", + "affiliation": "", + "name": "Burns, Jackson" + }, + { + "type": "Other", + "affiliation": "", + "name": "Jaimergp" + }, + { + "type": "Other", + "affiliation": "", + "name": "h-vetinari" + }, + { + "type": "Other", + "affiliation": "", + "name": "Ogasawara, Ivan" + }, + { + "type": "Other", + "affiliation": "", + "name": "Russell, Tom" + }, + { + "type": "Other", + "affiliation": "", + "name": "A., Philipp" + } + ], + "keywords": [ + "open source software", + "Python", + "open peer review", + "data science", + "open reproducible science", + "science" + ], + "license": "CC-BY-SA-4.0", + "upload_type": "publication", + "publication_type": "book" } diff --git a/_static/matomo.js b/_static/matomo.js index 512315c7..83f459fe 100644 --- a/_static/matomo.js +++ b/_static/matomo.js @@ -1,12 +1,16 @@ // Matomo analytics -var _paq = window._paq = window._paq || []; +var _paq = (window._paq = window._paq || []); /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ -_paq.push(['trackPageView']); -_paq.push(['enableLinkTracking']); -(function() { - var u="https://pyopensci.matomo.cloud/"; - _paq.push(['setTrackerUrl', u+'matomo.php']); - _paq.push(['setSiteId', '2']); - var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; - g.async=true; g.src='//cdn.matomo.cloud/pyopensci.matomo.cloud/matomo.js'; s.parentNode.insertBefore(g,s); +_paq.push(["trackPageView"]); +_paq.push(["enableLinkTracking"]); +(function () { + var u = "https://pyopensci.matomo.cloud/"; + _paq.push(["setTrackerUrl", u + "matomo.php"]); + _paq.push(["setSiteId", "2"]); + var d = document, + g = d.createElement("script"), + s = d.getElementsByTagName("script")[0]; + g.async = true; + g.src = "//cdn.matomo.cloud/pyopensci.matomo.cloud/matomo.js"; + s.parentNode.insertBefore(g, s); })(); diff --git a/_static/pyos.css b/_static/pyos.css index d94fb75a..52ff4bdb 100644 --- a/_static/pyos.css +++ b/_static/pyos.css @@ -1,97 +1,96 @@ /* PyOS-specific vars :) */ :root { - --pyos-color-primary: #703c87; - --pyos-color-secondary: #8045e5; - --pyos-color-secondary-highlight: #591bc2; - --pyos-color-tertiary: #A66C98; - --pyos-color-dark: #542568; - --pyos-color-light: #DAABCF; + --pyos-color-primary: #703c87; + --pyos-color-secondary: #8045e5; + --pyos-color-secondary-highlight: #591bc2; + --pyos-color-tertiary: #a66c98; + --pyos-color-dark: #542568; + --pyos-color-light: #daabcf; - /* Darkmode Adjustments*/ - --pyos-dm-color-primary: #C483E0; - - /* Fonts (overrides base theme) */ - --pst-font-family-heading: 'Poppins', sans-serif; - --pst-font-family-base: 'Poppins', sans-serif; - --pyos-font-family-h1: 'Itim', serif; + /* Darkmode Adjustments*/ + --pyos-dm-color-primary: #c483e0; + /* Fonts (overrides base theme) */ + --pst-font-family-heading: "Poppins", sans-serif; + --pst-font-family-base: "Poppins", sans-serif; + --pyos-font-family-h1: "Itim", serif; } - /* anything related to the dark theme */ html[data-theme="dark"] { - --pst-color-info-bg: #400f59!important; - --pst-color-tbl-row: #2E2E2E!important; + --pst-color-info-bg: #400f59 !important; + --pst-color-tbl-row: #2e2e2e !important; } /* anything related to the light theme */ html[data-theme="light"] { - --pst-color-tbl-row: #f5f1ff!important; + --pst-color-tbl-row: #f5f1ff !important; } -} - -html, body { - font-size: 1.0rem; +html, +body { + font-size: 1rem; } /* Allow the center content to expand to wide on wide screens */ -@media (min-width: 960px){ -.bd-page-width { - max-width: min(100%, 1600px)!important; - } +@media (min-width: 960px) { + .bd-page-width { + max-width: min(100%, 1600px) !important; + } } /* Make sure the header nav is centered - not sure why it's not overriding*/ -.navbar-header-items .me-auto, .me-auto .navbar-header-items__center { - margin-left: auto!important; - margin-right: auto!important; +.navbar-header-items .me-auto, +.me-auto .navbar-header-items__center { + margin-left: auto !important; + margin-right: auto !important; } /* custom fonts */ -html, body { - font-size: 1.02rem; +html, +body { + font-size: 1.02rem; } body p { } .admonition { - margin-top: 60px!important; - margin-bottom: 70px!important; + margin-top: 60px !important; + margin-bottom: 70px !important; } h1 { - margin-top: 10px; - margin-bottom: 40px; - font-family: var(--pyos-font-family-h1) !important; - color: var(--pyos-h1-color); + margin-top: 10px; + margin-bottom: 40px; + font-family: var(--pyos-font-family-h1) !important; + color: var(--pyos-h1-color); } h2 { - margin-top: 1em; + margin-top: 1em; } h3 { - margin-top: 60px} + margin-top: 60px; +} figcaption .caption-text { - text-align: left!important; + text-align: left !important; } figure { - margin-top: 60px!important; - margin-bottom: 60px!important; + margin-top: 60px !important; + margin-bottom: 60px !important; } figcaption { - font-size: .9em; - font-weight: bold; + font-size: 0.9em; + font-weight: bold; } - .admonition p { - font-size: .9em; + font-size: 0.9em; } /* Navbar */ @@ -107,113 +106,110 @@ ugly scrollbar to show all the time /* Tutorial block page */ .left-div { - background-color: #3498db; - color: #fff; - text-align: center; - padding: 20px; - width: 35%; - border-radius: 10px; + background-color: #3498db; + color: #fff; + text-align: center; + padding: 20px; + width: 35%; + border-radius: 10px; } .right-div { - margin-top: 10px; + margin-top: 10px; } .lesson-div { - cursor: pointer; - transition: background-color 0.3s; - margin-bottom: 10px; - padding: 10px; - border-radius: 5px; - text-align: center; - color: #333; + cursor: pointer; + transition: background-color 0.3s; + margin-bottom: 10px; + padding: 10px; + border-radius: 5px; + text-align: center; + color: #333; } .lesson-div a { - color: inherit; - text-decoration: none; - display: block; - height: 100%; - width: 100%; + color: inherit; + text-decoration: none; + display: block; + height: 100%; + width: 100%; } .lesson-div:hover { - background-color: #ccc; + background-color: #ccc; } /* Different colors and their shades */ .lesson-div:nth-child(1) { - background-color: #216A6B; - color: #fff; + background-color: #216a6b; + color: #fff; } .lesson-div:nth-child(2) { - background-color: #6D597A; - color: #fff; + background-color: #6d597a; + color: #fff; } .lesson-div:nth-child(3) { - background-color: #B56576; - color: #fff; + background-color: #b56576; + color: #fff; } .lesson-div:nth-child(4) { - background-color: #3A8C8E; /* Shade of #216A6B */ + background-color: #3a8c8e; /* Shade of #216A6B */ } .lesson-div:nth-child(5) { - background-color: #8F7B8D; /* Shade of #6D597A */ + background-color: #8f7b8d; /* Shade of #6D597A */ } .lesson-div:nth-child(6) { - background-color: #D78287; /* Shade of #B56576 */ + background-color: #d78287; /* Shade of #B56576 */ } .lesson-div:nth-child(7) { - background-color: #185355; /* Darker shade of #216A6B */ - color: #fff; -} - - - -html[data-theme=light] { - --pst-color-primary: var(--pyos-color-primary); - --pst-color-primary-text: #fff; - --pst-color-primary-highlight: #053f49; - --sd-color-primary: var(--pst-color-primary); - --sd-color-primary-text: var(--pst-color-primary-text); - --sd-color-primary-highlight: var(--pst-color-primary-highlight); - --sd-color-primary-bg: #d0ecf1; - --sd-color-primary-bg-text: #14181e; - --pst-color-secondary: var(--pyos-color-secondary); - --pst-color-secondary-text: #fff; - --pst-color-secondary-highlight: var(--pyos-color-secondary-highlight); - --sd-color-secondary: var(--pst-color-secondary); - --sd-color-secondary-text: var(--pst-color-secondary-text); - --sd-color-secondary-highlight: var(--pst-color-secondary-highlight); - --sd-color-secondary-bg: #e0c7ff; - --sd-color-secondary-bg-text: #14181e; - --pst-color-success: #00843f; - --pst-color-success-text: #fff; - --pst-color-success-highlight: #00381a; - --sd-color-success: var(--pst-color-success); - --sd-color-success-text: var(--pst-color-success-text); - --sd-color-success-highlight: var(--pst-color-success-highlight); - --sd-color-success-bg: #d6ece1; - --sd-color-success-bg-text: #14181e; - --pst-color-info: #A66C98; /* general admonition */ - --pst-color-info-bg: #eac8e2; - --pst-heading-color: var(--pyos-color-dark); - --pyos-h1-color: var(--pyos-color-dark); -} - -html[data-theme=dark] { - --pst-color-primary: var(--pyos-dm-color-primary); - --pst-color-link: var(--pyos-color-light); - --pst-color-link-hover: var(--pyos-dm-color-primary); - --pyos-h1-color: var(--pyos-color-light); + background-color: #185355; /* Darker shade of #216A6B */ + color: #fff; +} + +html[data-theme="light"] { + --pst-color-primary: var(--pyos-color-primary); + --pst-color-primary-text: #fff; + --pst-color-primary-highlight: #053f49; + --sd-color-primary: var(--pst-color-primary); + --sd-color-primary-text: var(--pst-color-primary-text); + --sd-color-primary-highlight: var(--pst-color-primary-highlight); + --sd-color-primary-bg: #d0ecf1; + --sd-color-primary-bg-text: #14181e; + --pst-color-secondary: var(--pyos-color-secondary); + --pst-color-secondary-text: #fff; + --pst-color-secondary-highlight: var(--pyos-color-secondary-highlight); + --sd-color-secondary: var(--pst-color-secondary); + --sd-color-secondary-text: var(--pst-color-secondary-text); + --sd-color-secondary-highlight: var(--pst-color-secondary-highlight); + --sd-color-secondary-bg: #e0c7ff; + --sd-color-secondary-bg-text: #14181e; + --pst-color-success: #00843f; + --pst-color-success-text: #fff; + --pst-color-success-highlight: #00381a; + --sd-color-success: var(--pst-color-success); + --sd-color-success-text: var(--pst-color-success-text); + --sd-color-success-highlight: var(--pst-color-success-highlight); + --sd-color-success-bg: #d6ece1; + --sd-color-success-bg-text: #14181e; + --pst-color-info: #a66c98; /* general admonition */ + --pst-color-info-bg: #eac8e2; + --pst-heading-color: var(--pyos-color-dark); + --pyos-h1-color: var(--pyos-color-dark); } +html[data-theme="dark"] { + --pst-color-primary: var(--pyos-dm-color-primary); + --pst-color-link: var(--pyos-color-light); + --pst-color-link-hover: var(--pyos-dm-color-primary); + --pyos-h1-color: var(--pyos-color-light); +} /* -------------------------------------- */ /* Generated by https://gwfh.mranftl.com/ */ @@ -221,163 +217,161 @@ html[data-theme=dark] { /* poppins-regular - latin */ @font-face { font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */ - font-family: 'Poppins'; + font-family: "Poppins"; font-style: normal; font-weight: 400; - src: url('./fonts/poppins-v20-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ + src: url("./fonts/poppins-v20-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ } /* poppins-italic - latin */ @font-face { font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */ - font-family: 'Poppins'; + font-family: "Poppins"; font-style: italic; font-weight: 400; - src: url('./fonts/poppins-v20-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ + src: url("./fonts/poppins-v20-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ } /* poppins-700 - latin */ @font-face { font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */ - font-family: 'Poppins'; + font-family: "Poppins"; font-style: normal; font-weight: 700; - src: url('./fonts/poppins-v20-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ + src: url("./fonts/poppins-v20-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ } /* poppins-700italic - latin */ @font-face { font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */ - font-family: 'Poppins'; + font-family: "Poppins"; font-style: italic; font-weight: 700; - src: url('./fonts/poppins-v20-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ + src: url("./fonts/poppins-v20-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ } /* itim-regular - latin */ @font-face { font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */ - font-family: 'Itim'; + font-family: "Itim"; font-style: normal; font-weight: 400; - src: url('./fonts/itim-v14-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ + src: url("./fonts/itim-v14-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ } /* poppins-500 - latin */ @font-face { - font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */ - font-family: 'Poppins'; - font-style: normal; - font-weight: 500; - src: url('./fonts/poppins-v20-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ - } - /* poppins-600 - latin */ - @font-face { - font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */ - font-family: 'Poppins'; - font-style: normal; - font-weight: 600; - src: url('./fonts/poppins-v20-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ - } + font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */ + font-family: "Poppins"; + font-style: normal; + font-weight: 500; + src: url("./fonts/poppins-v20-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ +} +/* poppins-600 - latin */ +@font-face { + font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */ + font-family: "Poppins"; + font-style: normal; + font-weight: 600; + src: url("./fonts/poppins-v20-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ +} /* Cards */ /* todo light and dark adaptations needed */ .sd-card-title { - margin-bottom: 0.5rem; - background-color: var(--pst-color-info-bg)!important; - padding: .5rem; - border-bottom: 2px solid #999; - font-size: 1.2rem; - font-weight: 600!important; + margin-bottom: 0.5rem; + background-color: var(--pst-color-info-bg) !important; + padding: 0.5rem; + border-bottom: 2px solid #999; + font-size: 1.2rem; + font-weight: 600 !important; } .sd-card-header { - font-size: 1.2em; - font-weight: 600; + font-size: 1.2em; + font-weight: 600; } .sd-card-body { - padding: 0 0!important; + padding: 0 0 !important; - .left-aligned - & ul li { - text-align: left; - } + .left-aligned & ul li { + text-align: left; + } } .sd-card { - padding-bottom: 1.5em; + padding-bottom: 1.5em; } .sd-card-text { - text-align: left; - padding-right: 1.5em; - padding-left: 1.5em; + text-align: left; + padding-right: 1.5em; + padding-left: 1.5em; } #footnotes { - font-size: .8em; - line-height: 1.1; - &span.label { - font-weight:400 - } + font-size: 0.8em; + line-height: 1.1; + &span.label { + font-weight: 400; + } } aside.footnote { - margin-bottom: 0.5rem; - &:last-child { - margin-bottom: 1rem; - } - span.label, - span.backrefs { - font-weight: 400!important; - } - - &:target { - background-color: var(--pst-color-target); - } + margin-bottom: 0.5rem; + &:last-child { + margin-bottom: 1rem; + } + span.label, + span.backrefs { + font-weight: 400 !important; } + &:target { + background-color: var(--pst-color-target); + } +} .fa-circle-check { - color: #7BCDBA; + color: #7bcdba; } /* pyOpenSci table styles */ .pyos-table { - & th.head, .pyos-table th.head.stub { - background-color: #33205C!important; + & th.head, + .pyos-table th.head.stub { + background-color: #33205c !important; & p { - color: #fff - } -} - & th.stub { - background-color: var(--pst-color-tbl-row); - font-weight: 500; - } - & td { - vertical-align: middle; - text-align: center; + color: #fff; } + } + & th.stub { + background-color: var(--pst-color-tbl-row); + font-weight: 500; + } + & td { + vertical-align: middle; + text-align: center; + } } - /* Make the first column in a table a "header" like thing */ - /* Dark mode fix for tables */ @media (prefers-color-scheme: dark) { - td:not(.row-header):nth-child(1) { - background-color: var(--pst-color-tbl-row); /* Adjust the dark mode color */ - color: #ffffff; /* Adjust the text color for better contrast */ - font-weight: 500; - } + td:not(.row-header):nth-child(1) { + background-color: var(--pst-color-tbl-row); /* Adjust the dark mode color */ + color: #ffffff; /* Adjust the text color for better contrast */ + font-weight: 500; } +} -td, th { - border: 1px solid #ccc; /* Light gray border */ - padding: 8px; /* Add some padding for better readability */ - } +td, +th { + border: 1px solid #ccc; /* Light gray border */ + padding: 8px; /* Add some padding for better readability */ +} diff --git a/_templates/code_of_conduct.html b/_templates/code_of_conduct.html index 3b82d0ab..687c2fb2 100644 --- a/_templates/code_of_conduct.html +++ b/_templates/code_of_conduct.html @@ -1 +1,10 @@ -

pyOpensci is dedicated to creating a welcoming, supportive and diverse community around the open source Python tools that drive open science. Our Code of Conduct defines expected behavior and guidelines that help create such a community.

+

+ pyOpensci is dedicated to creating a welcoming, supportive and diverse + community around the open source Python tools that drive open science. Our + Code of Conduct + defines expected behavior and guidelines that help create such a community. +

diff --git a/examples/pure-hatch/.pre-commit-config.yaml b/examples/pure-hatch/.pre-commit-config.yaml index 795c0dd0..fd509675 100644 --- a/examples/pure-hatch/.pre-commit-config.yaml +++ b/examples/pure-hatch/.pre-commit-config.yaml @@ -4,7 +4,6 @@ repos: hooks: - id: isort files: \.py$ - # Misc commit checks using built in pre-commit checks - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.4.0 @@ -12,26 +11,21 @@ repos: hooks: # Autoformat: Makes sure files end in a newline and only a newline. - id: end-of-file-fixer - # Lint: Check for files with names that would conflict on a # case-insensitive filesystem like MacOS HFS+ or Windows FAT. - id: check-case-conflict - id: trailing-whitespace - # Linting: Python code (see the file .flake8) - repo: https://github.com/PyCQA/flake8 rev: "6.0.0" hooks: - id: flake8 - -# Black for auto code formatting -repos: -- repo: https://github.com/psf/black - rev: 22.12.0 - hooks: - - id: black - language_version: python3.8 - + # Black for auto code formatting + - repo: https://github.com/psf/black + rev: 22.12.0 + hooks: + - id: black + language_version: python3.8 # Tell precommit.ci bot to update codoe format tools listed in the file # versions every quarter # The default it so update weekly which is too many new pr's for many From bbd7b12bff94d1400d9245b42753d4e59ca256ed Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sun, 11 Aug 2024 10:25:10 +0900 Subject: [PATCH 25/93] Fix typo where upper case letters are lower case --- index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.md b/index.md index 26b8bdde..c1e54e7c 100644 --- a/index.md +++ b/index.md @@ -29,7 +29,7 @@ We support the Python tools that scientists need to create open science workflow :::{image} /images/tutorials/packaging-elements.png :align: right :width: 500 -:alt: Image with the pyOpenSci flower logo in the upper right hand corner. The image shows the packaging lifecycle. The graphic shows a high level overview of the elements of a Python package. the inside circle has 5 items - user documentation, code/api, test suite, contributor documentation, project metadata / license / readme. In the middle of the circle is says maintainers and has a small icon with people. on the outside circle there is an arrow and it says infrastructure. +:alt: Image with the pyOpenSci flower logo in the upper right hand corner. The image shows the packaging lifecycle. The graphic shows a high level overview of the elements of a Python package. the inside circle has 5 items - user documentation, code/api, test suite, contributor documentation, project metadata / license / readme. In the middle of the circle is says maintainers and has a small icon with people. On the outside circle there is an arrow and it says infrastructure. ::: This guide will help you: From 96bd5472e2a17d9223176a9cdf99c5ab6353b948 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sun, 11 Aug 2024 11:12:00 +0900 Subject: [PATCH 26/93] Update index.md --- index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.md b/index.md index c1e54e7c..4cf629d4 100644 --- a/index.md +++ b/index.md @@ -246,7 +246,7 @@ contribute. :::{figure} https://www.pyopensci.org/images/people-building-blocks.jpg :align: right :width: 350 -:alt: xkcd comic showing a stick figure on the ground and one in the air. The one on the ground is saying. `You're flying! how?` The person in the air replies `Python!` Below is a 3 rectangle comic with the following text in each box. box 1 - I learned it last night. Everything is so simple. Hello world is just print hello world. box 2 - the person on the ground says - come join us programming is fun again. it's a whole new world. But how are you flying? box 3 - the person flying says - i just typed import antigravity. I also sampled everything in the medicine cabinet. But i think this is the python. the person on the ground is saying - that's it? +:alt: xkcd comic showing a stick figure on the ground and one in the air. The one on the ground is saying. `You're flying! how?` The person in the air replies `Python!` Below is a 3 rectangle comic with the following text in each box. box 1 - I learned it last night. Everything is so simple. Hello world is just print hello world. box 2 - the person on the ground says - come join us programming is fun again. it's a whole new world. But how are you flying? box 3 - the person flying says - i just typed import antigravity. I also sampled everything in the medicine cabinet. But i think this is the python. The person on the ground is saying - that's it? ::: ### A community-created guidebook From 8a984d2042be08415b3811d645634b95bb81faa5 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sun, 11 Aug 2024 14:18:12 +0900 Subject: [PATCH 27/93] Update --- documentation/repository-files/license-files.md | 2 +- .../document-your-code-api-docstrings.md | 4 ++-- index.md | 4 ++-- package-structure-code/code-style-linting-format.md | 2 +- package-structure-code/declare-dependencies.md | 10 +++++----- .../publish-python-package-pypi-conda.md | 6 +++--- .../pyproject-toml-python-package-metadata.md | 6 +++--- .../python-package-distribution-files-sdist-wheel.md | 10 +++++----- package-structure-code/python-package-structure.md | 2 +- package-structure-code/python-package-versions.md | 8 ++++---- tutorials/add-license-coc.md | 4 ++-- tutorials/add-readme.md | 2 +- tutorials/get-to-know-hatch.md | 4 ++-- tutorials/installable-code.md | 2 +- tutorials/intro.md | 2 +- tutorials/publish-conda-forge.md | 4 ++-- 16 files changed, 36 insertions(+), 36 deletions(-) diff --git a/documentation/repository-files/license-files.md b/documentation/repository-files/license-files.md index e08a6f35..da2d5e70 100644 --- a/documentation/repository-files/license-files.md +++ b/documentation/repository-files/license-files.md @@ -94,7 +94,7 @@ While many permissive licenses do not require citation we STRONG encourage that diff --git a/documentation/write-user-documentation/document-your-code-api-docstrings.md b/documentation/write-user-documentation/document-your-code-api-docstrings.md index d77836f7..c1202c44 100644 --- a/documentation/write-user-documentation/document-your-code-api-docstrings.md +++ b/documentation/write-user-documentation/document-your-code-api-docstrings.md @@ -164,7 +164,7 @@ doctest adding another quality check to your package. ## Using doctest to run docstring examples in your package's methods and functions - Above, we provided some examples of good, better, best docstring formats. If you are using Sphinx to create your docs, you can add the [doctest](https://www.sphinx-doc.org/en/master/usage/extensions/doctest.html) extension to your Sphinx build. Doctest provides an additional check for docstrings with example code in them. @@ -176,7 +176,7 @@ assures that your package's code (API) runs as you expect it to. ```{note} It's important to keep in mind that examples in your docstrings help users using your package. Running `doctest` on those examples provides a -check of your package's API. doctest ensures that the functions and methods in your package +check of your package's API. The doctest ensures that the functions and methods in your package run as you expect them to. Neither of these items replace a separate, stand-alone test suite that is designed to test your package's core functionality across operating systems and Python versions. diff --git a/index.md b/index.md index 4cf629d4..a0500984 100644 --- a/index.md +++ b/index.md @@ -29,7 +29,7 @@ We support the Python tools that scientists need to create open science workflow :::{image} /images/tutorials/packaging-elements.png :align: right :width: 500 -:alt: Image with the pyOpenSci flower logo in the upper right hand corner. The image shows the packaging lifecycle. The graphic shows a high level overview of the elements of a Python package. the inside circle has 5 items - user documentation, code/api, test suite, contributor documentation, project metadata / license / readme. In the middle of the circle is says maintainers and has a small icon with people. On the outside circle there is an arrow and it says infrastructure. +:alt: Image with the pyOpenSci flower logo in the upper right hand corner. The image shows the packaging lifecycle. The graphic shows a high level overview of the elements of a Python package. The inside circle has 5 items - user documentation, code/api, test suite, contributor documentation, project metadata / license / readme. In the middle of the circle is says maintainers and has a small icon with people. On the outside circle there is an arrow and it says infrastructure. ::: This guide will help you: @@ -246,7 +246,7 @@ contribute. :::{figure} https://www.pyopensci.org/images/people-building-blocks.jpg :align: right :width: 350 -:alt: xkcd comic showing a stick figure on the ground and one in the air. The one on the ground is saying. `You're flying! how?` The person in the air replies `Python!` Below is a 3 rectangle comic with the following text in each box. box 1 - I learned it last night. Everything is so simple. Hello world is just print hello world. box 2 - the person on the ground says - come join us programming is fun again. it's a whole new world. But how are you flying? box 3 - the person flying says - i just typed import antigravity. I also sampled everything in the medicine cabinet. But i think this is the python. The person on the ground is saying - that's it? +:alt: xkcd comic showing a stick figure on the ground and one in the air. The one on the ground is saying. `You're flying! how?` The person in the air replies `Python!` Below is a 3 rectangle comic with the following text in each box. Box 1 - I learned it last night. Everything is so simple. Hello world is just print hello world. Box 2 - the person on the ground says - come join us programming is fun again. It's a whole new world. But how are you flying? box 3 - the person flying says - i just typed import antigravity. I also sampled everything in the medicine cabinet. But i think this is the python. The person on the ground is saying - that's it? ::: ### A community-created guidebook diff --git a/package-structure-code/code-style-linting-format.md b/package-structure-code/code-style-linting-format.md index 7c5975b4..00513975 100644 --- a/package-structure-code/code-style-linting-format.md +++ b/package-structure-code/code-style-linting-format.md @@ -260,7 +260,7 @@ You type and run: Diagram showing the steps of a pre-commit workflow from left to right. The pre-commit workflow begins with you adding files that have changes to be -staged in git. Next, you'd run git commit. when you run git commit, the pre-commit +staged in git. Next, you'd run git commit. When you run git commit, the pre-commit hooks will then run. In this example, Black, the code formatter and flake8, a linter both run. If all of the files pass Black and flake8 checks, then your commit will be recorded. If they don't, the commit is canceled. You will have to fix any flake8 issues, and then re-add / stage the files to be committed. [_Image Source_](https://ljvmiranda921.github.io/notebook/2018/06/21/precommits-using-black-and-flake8/*) ::: diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index 58cbcf8f..53ef36cc 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -7,7 +7,7 @@ :::{todo} -keep this comment - https://github.com/pyOpenSci/python-package-guide/pull/106#issuecomment-1844278487 in this file for now - jeremiah did a nice inventory of common shells and whether they need quotes or not. it's really comprehensive. but do we want it in the guide?? it's really useful for more advanced users i think. +keep this comment - https://github.com/pyOpenSci/python-package-guide/pull/106#issuecomment-1844278487 in this file for now - jeremiah did a nice inventory of common shells and whether they need quotes or not. It's really comprehensive. But do we want it in the guide?? it's really useful for more advanced users i think. Following this comment: https://github.com/pyOpenSci/python-package-guide/pull/106#pullrequestreview-1766663571 @@ -26,9 +26,9 @@ When you use different specifiers A Python package dependency refers to an external package or software that your Python project: -1. needs to function properly. -2. requires if someone wants to develop / work on improving your package locally or -3. requires if a user wants to add additional functionality (that is not core) to your package +1. Needs to function properly. +2. Requires if someone wants to develop / work on improving your package locally or +3. Requires if a user wants to add additional functionality (that is not core) to your package A dependency is not part of your project's codebase. It is a package or software that is called within the code of your project or during development of your package. @@ -223,7 +223,7 @@ feature = [ :::{figure-md} python-package-dependencies -Diagram showing a ven diagram with three sections representing the dependency groups listed above - docs feature and tests. In the center it says your-package and lists the core dependencies of that package seaborn and numpy. To the right are two arrows. The first shows the command python - m pip install your-package. it them shows how installing your package that way installs only the package and the two core dependencies into a users environment. Below is a second arrow with python -m pip install youPackage[tests]. This leads to an environment with both the package dependencies - your-package, seaborn and numpy and also the tests dependencies including pytest and pytest-cov +Diagram showing a ven diagram with three sections representing the dependency groups listed above - docs feature and tests. In the center it says your-package and lists the core dependencies of that package seaborn and numpy. To the right are two arrows. The first shows the command python - m pip install your-package. It them shows how installing your package that way installs only the package and the two core dependencies into a users environment. Below is a second arrow with python -m pip install youPackage[tests]. This leads to an environment with both the package dependencies - your-package, seaborn and numpy and also the tests dependencies including pytest and pytest-cov When a user installs your package locally using python -m pip install your-package only your package and it's core dependencies get installed. When they install your package `[tests]` pip will install both your package and its core dependencies plus any of the dependencies listed within the tests array of your `[optional.dependencies]` table. ::: diff --git a/package-structure-code/publish-python-package-pypi-conda.md b/package-structure-code/publish-python-package-pypi-conda.md index 946950e6..6f377712 100644 --- a/package-structure-code/publish-python-package-pypi-conda.md +++ b/package-structure-code/publish-python-package-pypi-conda.md @@ -21,9 +21,9 @@ Below you will learn more specifics about the differences between PyPI and conda :::{figure-md} upload-conda-forge -Image showing the progression of creating a Python package, building it and then publishing to PyPI and conda-forge. You take your code and turn it into distribution files (sdist and wheel) that PyPI accepts. then there is an arrow towards the PyPI repository where ou publish both distributions. From PyPI if you create a conda-forge recipe you can then publish to conda-forge. +Image showing the progression of creating a Python package, building it and then publishing to PyPI and conda-forge. You take your code and turn it into distribution files (sdist and wheel) that PyPI accepts. Then there is an arrow towards the PyPI repository where ou publish both distributions. From PyPI if you create a conda-forge recipe you can then publish to conda-forge. -Once you have published both package distributions (the source distribution and the wheel) to PyPI, you can then publish to conda-forge. conda-forge requires a source distribution on PyPI in order to build your package on conda-forge. You do not need to rebuild your package to publish to conda-forge. +Once you have published both package distributions (the source distribution and the wheel) to PyPI, you can then publish to conda-forge. The conda-forge requires a source distribution on PyPI in order to build your package on conda-forge. You do not need to rebuild your package to publish to conda-forge. ::: ## What is PyPI @@ -104,7 +104,7 @@ exist in the `defaults` Anaconda channel. :::{figure-md} pypi-conda-channels -Graphic with the title Python package repositories. Below it says Anything hosted on PyPI can be installed using pip install. Packaging hosted on a conda channel can be installed using conda install. Below that there are two rows. the top row says conda channels. next to it are three boxes one with conda-forge, community maintained; bioconda and then default - managed by the anaconda team. Below that there is a row that says PyPI servers. PyPI - anyone can publish to PyPI. and test PyPI. a testbed server for you to practice. +Graphic with the title Python package repositories. Below it says Anything hosted on PyPI can be installed using pip install. Packaging hosted on a conda channel can be installed using conda install. Below that there are two rows. The top row says conda channels. Next to it are three boxes one with conda-forge, community maintained; bioconda and then default - managed by the anaconda team. Below that there is a row that says PyPI servers. PyPI - anyone can publish to PyPI. And test PyPI. A testbed server for you to practice. Conda channels represent various repositories that you can install packages from. Because conda-forge is community maintained, anyone can submit a recipe there. PyPI is also a community maintained repository. Anyone can submit a package to PyPI and test PyPI. Unlike conda-forge there are no manual checks of packages submitted to PyPI. ::: diff --git a/package-structure-code/pyproject-toml-python-package-metadata.md b/package-structure-code/pyproject-toml-python-package-metadata.md index 7cd25a61..66509f2a 100644 --- a/package-structure-code/pyproject-toml-python-package-metadata.md +++ b/package-structure-code/pyproject-toml-python-package-metadata.md @@ -99,7 +99,7 @@ support configuration for that particular table. ### How the pyproject.toml is used when you build a package - + When you publish to PyPI, you will notice that each package has metadata listed. Let’s have a look at [xclim](https://pypi.org/project/xclim/), one of our [pyOpenSci packages](https://www.pyopensci.org/python-packages.html). Notice that on the PyPI landing page you see some metadata about the package including python, maintainer information and more. PyPI is able to populate this metadata because it was defined using correct syntax and classifiers by Xclim's maintainers, [pyproject.toml file](https://github.com/Ouranosinc/xclim/blob/master/pyproject.toml). This metadata when the xclim package is built, is translated into a distribution file that allows PyPI to read the metadata and print it out on their website. @@ -183,8 +183,8 @@ what dependencies your package requires. The examples at the bottom of this page contain ... - **`[project.scripts]` (Entry points):** Entry points are optional. If you have a command line tool that runs a specific script hosted in your package, you may include an entry point to call that script directly at the command line (rather than at the Python shell). - - Here is an example of[ a package that has entry point script](https://github.com/pyOpenSci/update-web-metadata/blob/main/pyproject.toml#L60)s. Notice that there are several core scripts defined in that package that perform sets of tasks. pyOpenSci is using those scripts to process their metadata. -- **Dynamic Fields:** if you have fields that are dynamically populated. One example of this is if you are using scm / version control based version with tools like `setuptooms_scm`, then you might use the dynamic field. such as version (using scm) **dynamic = ["version"]** + - Here is an example of[ a package that has entry point script](https://github.com/pyOpenSci/update-web-metadata/blob/main/pyproject.toml#L60)s. Notice that there are several core scripts defined in that package that perform sets of tasks. The pyOpenSci is using those scripts to process their metadata. +- **Dynamic Fields:** if you have fields that are dynamically populated. One example of this is if you are using scm / version control based version with tools like `setuptooms_scm`, then you might use the dynamic field, such as version (using scm) **dynamic = ["version"]** ## Add dependencies to your pyproject.toml file diff --git a/package-structure-code/python-package-distribution-files-sdist-wheel.md b/package-structure-code/python-package-distribution-files-sdist-wheel.md index e8d6a99c..0fd259f9 100644 --- a/package-structure-code/python-package-distribution-files-sdist-wheel.md +++ b/package-structure-code/python-package-distribution-files-sdist-wheel.md @@ -3,9 +3,9 @@ :::{figure-md} pypi-conda-overview -Image showing the progression of creating a Python package, building it and then publishing to PyPI and conda-forge. You take your code and turn it into distribution files (sdist and wheel) that PyPI accepts. then there is an arrow towards the PyPI repository where ou publish both distributions. From PyPI if you create a conda-forge recipe you can then publish to conda-forge. +Image showing the progression of creating a Python package, building it and then publishing to PyPI and conda-forge. You take your code and turn it into distribution files (sdist and wheel) that PyPI accepts. Then there is an arrow towards the PyPI repository where ou publish both distributions. From PyPI if you create a conda-forge recipe you can then publish to conda-forge. -Once you have published both package distributions (the source distribution and the wheel) to PyPI, you can then publish to conda-forge. conda-forge requires an source distribution on PyPI in order to build your package on conda-forge. You do not need to rebuild your package to publish to conda-forge. +Once you have published both package distributions (the source distribution and the wheel) to PyPI, you can then publish to conda-forge. The conda-forge requires an source distribution on PyPI in order to build your package on conda-forge. You do not need to rebuild your package to publish to conda-forge. ::: You need to build your Python package in order to publish it to PyPI (or a conda channel). The build process organizes your code and metadata into a distribution format that can be uploaded to PyPI and subsequently downloaded and installed by users. NOTE: you need to publish a sdist to PyPI in order for conda-forge to properly build your package automatically. @@ -91,14 +91,14 @@ represent on your PyPI landing page. These classifiers also allow users to sort ``` :::{figure-md} build-workflow -Graphic showing the high level packaging workflow. On the left you see a graphic with code, metadata and tests in it. those items all go into your package. Documentation and data are below that box because they aren't normally published in your packaging wheel distribution. an arrow to the right takes you to a build distribution files box. that box leads you to either publishing to TestPyPI or the real PyPI. from PyPI you can then connect to conda-forge for an automated build that sends distributions from PyPI to conda-forge. +Graphic showing the high level packaging workflow. On the left you see a graphic with code, metadata and tests in it. Those items all go into your package. Documentation and data are below that box because they aren't normally published in your packaging wheel distribution. An arrow to the right takes you to a build distribution files box. That box leads you to either publishing to TestPyPI or the real PyPI. From PyPI you can then connect to conda-forge for an automated build that sends distributions from PyPI to conda-forge. You need to build your Python package in order to publish it to PyPI (or Conda). The build process organizes your code and metadata into a distribution format that can be uploaded to PyPI and subsequently downloaded and installed by users. NOTE: you need to publish a sdist to PyPI in order for conda-forge to properly build your package automatically. ::: :::{figure-md} -This screenshot shows the metadata on PyPI for the xclim package. on it you can see the name of the license, the author and maintainer names keywords associated with the package and the base python version it requires which is 3.8. +This screenshot shows the metadata on PyPI for the xclim package. On it you can see the name of the license, the author and maintainer names keywords associated with the package and the base python version it requires which is 3.8. PyPI screenshot showing metadata for the xclim package. ::: @@ -107,7 +107,7 @@ PyPI screenshot showing metadata for the xclim package. :::{figure-md} pypi-metadata-maintainers -Here you see the maintinaer metadata as it is displayed on PyPI. for xclim there are three maintainers listed with their profile pictures and github user names to the right. +Here you see the maintinaer metadata as it is displayed on PyPI. For xclim there are three maintainers listed with their profile pictures and github user names to the right. Maintainer names and GitHub usernames for the xclim package as they are displayed on PyPI. This information is recorded in your pyproject.toml and then processed by your build tool and stored in your packages sdist and wheel distributions. ::: diff --git a/package-structure-code/python-package-structure.md b/package-structure-code/python-package-structure.md index 84ff0d30..a9b6a0ff 100644 --- a/package-structure-code/python-package-structure.md +++ b/package-structure-code/python-package-structure.md @@ -238,7 +238,7 @@ for these tools is not worth the maintenance investment. ``` +that you use `setuptools-scm`. Thinking now PDM or hatch + hatch_vcs --> There are three general groups of tools that you can use to manage package versions: @@ -117,7 +117,7 @@ build that: ```{note} Bumping a package version refers to the step of increasing the package version after a set number of changes have been made to it. For example, -you might bump from version 0.8 to 0.9 of a package. or from 0.9 to 1.0. +you might bump from version 0.8 to 0.9 of a package or from 0.9 to 1.0. Using semantic versioning, there are three main "levels" of versions that you might consider: @@ -170,7 +170,7 @@ your package with a "single source of truth" value for the version number. This in turn eliminates potential error associated with manually updating your package's version. -When you (or your CI system) build your package, hatch checks the current tag number for your package. if it has increased, it will update +When you (or your CI system) build your package, hatch checks the current tag number for your package. If it has increased, it will update the **\_version.py** file with the new value. Thus, when you create a new tag or a new release with a tag and build your package, Hatch will access the new tag value and use it to update diff --git a/tutorials/add-license-coc.md b/tutorials/add-license-coc.md index 8eeb7e99..a0d5c502 100644 --- a/tutorials/add-license-coc.md +++ b/tutorials/add-license-coc.md @@ -20,8 +20,8 @@ In this lesson you will learn: A license contains legal language about how users can use and reuse your software. To set the `LICENSE` for your project, you: -1. create a `LICENSE` file in your project directory that specifies the license that you choose for your package and -2. reference that file in your `pyproject.toml` data where metadata are set. +1. Create a `LICENSE` file in your project directory that specifies the license that you choose for your package. +2. Reference that file in your `pyproject.toml` data where metadata are set. By adding the `LICENSE` file to your `pyproject.toml` file, the `LICENSE` will be included in your package's metadata which is used to populate your package's PyPI landing page. The `LICENSE` is also used in your GitHub repository's landing page interface. diff --git a/tutorials/add-readme.md b/tutorials/add-readme.md index 784c12aa..2d7ef5c6 100644 --- a/tutorials/add-readme.md +++ b/tutorials/add-readme.md @@ -204,7 +204,7 @@ To install this package run: `python -m pip install pyosPackage` -## OPTIONAL - if you have additional setup instructions add them here. if not, skip this section. +## OPTIONAL - if you have additional setup instructions add them here. If not, skip this section. ## Get started using pyosPackage diff --git a/tutorials/get-to-know-hatch.md b/tutorials/get-to-know-hatch.md index f395f97f..55f4d693 100644 --- a/tutorials/get-to-know-hatch.md +++ b/tutorials/get-to-know-hatch.md @@ -200,7 +200,7 @@ Once you have completed the steps above run the following command in your shell. `hatch config show` `hatch config show` will print out the contents of your `config.toml` file in -your shell. look at the values and ensure that your name, email is set. Also +your shell. Look at the values and ensure that your name, email is set. Also make sure that `tests=false`. ## Hatch features @@ -217,7 +217,7 @@ and maintaining your Python package easier. A few features that Hatch offers -1. it will convert metadata stored in a `setup.py` or `setup.cfg` file to a pyproject.toml file for you (see [Migrating setup.py to pyproject.toml using Hatch](setup-py-to-pyproject-toml.md +1. It will convert metadata stored in a `setup.py` or `setup.cfg` file to a pyproject.toml file for you (see [Migrating setup.py to pyproject.toml using Hatch](setup-py-to-pyproject-toml.md )) 2. It will help you by storing configuration information for publishing to PyPI after you've entered it once. diff --git a/tutorials/installable-code.md b/tutorials/installable-code.md index 90eff5de..3f5c0251 100644 --- a/tutorials/installable-code.md +++ b/tutorials/installable-code.md @@ -23,7 +23,7 @@ Python package that is directly installable from PyPI. 1. Is it clear where to add commands? Bash vs. Python console Bash vs. Zsh is different 2. Does this lesson run as expected on windows and mac? -3. ADD: note about what makes something "package worthy", with a common misconception being that a package should be production-ready code that's valuable to a broad audience. this may not be a pervasive misconception in Python, but a quick break-out with an explanation of what a package can consist of would be helpful. +3. ADD: note about what makes something "package worthy", with a common misconception being that a package should be production-ready code that's valuable to a broad audience. This may not be a pervasive misconception in Python, but a quick break-out with an explanation of what a package can consist of would be helpful. ::: :::{figure-md} code-to-python-package diff --git a/tutorials/intro.md b/tutorials/intro.md index 1d1f3cb3..96ccefe8 100644 --- a/tutorials/intro.md +++ b/tutorials/intro.md @@ -321,7 +321,7 @@ Then you can create a conda-forge recipe using the [Grayskull](https://github.co [You will learn more about the conda-forge publication process here.](publish-conda-forge.md) :::{figure-md} publish-package-pypi-conda-overview -Graphic showing the high level packaging workflow. On the left you see a graphic with code, metadata and tests in it. Those items all go into your package. Documentation and data are below that box because they aren't normally published in your packaging wheel distribution. an arrow to the right takes you to a build distribution files box. that box leads you to either publishing to TestPyPI or the real PyPI. From PyPI you can then connect to conda-forge for an automated build that sends distributions from PyPI to conda-forge. +Graphic showing the high level packaging workflow. On the left you see a graphic with code, metadata and tests in it. Those items all go into your package. Documentation and data are below that box because they aren't normally published in your packaging wheel distribution. An arrow to the right takes you to a build distribution files box. That box leads you to either publishing to TestPyPI or the real PyPI. From PyPI you can then connect to conda-forge for an automated build that sends distributions from PyPI to conda-forge. In the image above, you can see the steps associated with publishing your package on PyPI and conda-forge. Note that the distribution files that PyPI requires are the [sdist](#python-source-distribution) and [wheel](#python-wheel) files. Once you are ready to make your code publicly installable, you can publish it on PyPI. Once your code is on PyPI it is straight forward to then publish to conda-forge. You create a recipe using the Grayskull package and then you open a pr in the conda-forge recipe repository. You will learn more about this process in the [conda-forge lesson](/tutorials/publish-conda-forge). diff --git a/tutorials/publish-conda-forge.md b/tutorials/publish-conda-forge.md index db32b258..8c38c9f6 100644 --- a/tutorials/publish-conda-forge.md +++ b/tutorials/publish-conda-forge.md @@ -30,7 +30,7 @@ for conda, conda-forge will build from your PyPI source distribution file (sdist :::{figure-md} pypi-conda-publication -Image showing the progression of creating a Python package, building it and then publishing to PyPI and conda-forge. You take your code and turn it into distribution files (sdist and wheel) that PyPI accepts. then there is an arrow towards the PyPI repository where ou publish both distributions. From PyPI if you create a conda-forge recipe you can then publish to conda-forge. +Image showing the progression of creating a Python package, building it and then publishing to PyPI and conda-forge. You take your code and turn it into distribution files (sdist and wheel) that PyPI accepts. Then there is an arrow towards the PyPI repository where ou publish both distributions. From PyPI if you create a conda-forge recipe you can then publish to conda-forge. Once you have published both package distributions (the source distribution and the wheel) to PyPI, you can then publish to conda-forge. Conda-forge requires a source distribution on PyPI in order to build your package on conda-forge. You do not need to rebuild your package to publish to conda-forge. ::: @@ -276,7 +276,7 @@ extra: ### Step 3b: Bug fix - add a home url to the about: section -There is currently a small bug in Grayskull where it doesn't populate the home: element of the recipe. if you don't include this, [you will receive an error message](https://github.com/conda-forge/staged-recipes/pull/25173#issuecomment-1917916528) from the friendly conda-forge linter bot. +There is currently a small bug in Grayskull where it doesn't populate the home: element of the recipe. If you don't include this, [you will receive an error message](https://github.com/conda-forge/staged-recipes/pull/25173#issuecomment-1917916528) from the friendly conda-forge linter bot. ``` Hi! This is the friendly automated conda-forge-linting service. From 9debe71efe6506b9815608d5c30cde4707dca8cd Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Wed, 14 Aug 2024 16:18:48 -0600 Subject: [PATCH 28/93] docs: add Revathyvenugopal162 as a contributor for doc (#378) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 3 ++- README.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 58c571e0..e63d2afa 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -749,7 +749,8 @@ "profile": "https://github.com/Revathyvenugopal162", "contributions": [ "code", - "review" + "review", + "doc" ] }, { diff --git a/README.md b/README.md index 8bdc1bee..2da111f2 100644 --- a/README.md +++ b/README.md @@ -166,7 +166,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Naty Clementi
Naty Clementi

💻 👀 John Drake
John Drake

💻 👀 - Revathy Venugopal
Revathy Venugopal

💻 👀 + Revathy Venugopal
Revathy Venugopal

💻 👀 📖 Tetsuo Koyama
Tetsuo Koyama

💻 👀 Carol Willing
Carol Willing

👀 Kozo Nishida
Kozo Nishida

👀 🌍 From 745e0c7e87e7b3a0c8c64e487542af8ff32892cb Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Wed, 14 Aug 2024 16:19:44 -0600 Subject: [PATCH 29/93] docs: add miguelalizo as a contributor for doc (#379) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 3 ++- README.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index e63d2afa..32d82585 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -501,7 +501,8 @@ "profile": "https://github.com/miguelalizo", "contributions": [ "code", - "review" + "review", + "doc" ] }, { diff --git a/README.md b/README.md index 2da111f2..15d804ce 100644 --- a/README.md +++ b/README.md @@ -133,7 +133,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Tom Russell
Tom Russell

💻 👀 C. Titus Brown
C. Titus Brown

💻 👀 Cale Kochenour
Cale Kochenour

💻 👀 - miguelalizo
miguelalizo

💻 👀 + miguelalizo
miguelalizo

💻 👀 📖 nyeshlur
nyeshlur

💻 👀 From e4add5e460c916250f27df4f3c114b2de52b6e1b Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Wed, 14 Aug 2024 16:20:40 -0600 Subject: [PATCH 30/93] docs: add tkoyama010 as a contributor for doc (#380) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 3 ++- README.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 32d82585..02130453 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -761,7 +761,8 @@ "profile": "https://github.com/tkoyama010", "contributions": [ "code", - "review" + "review", + "doc" ] }, { diff --git a/README.md b/README.md index 15d804ce..077415ba 100644 --- a/README.md +++ b/README.md @@ -167,7 +167,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Naty Clementi
Naty Clementi

💻 👀 John Drake
John Drake

💻 👀 Revathy Venugopal
Revathy Venugopal

💻 👀 📖 - Tetsuo Koyama
Tetsuo Koyama

💻 👀 + Tetsuo Koyama
Tetsuo Koyama

💻 👀 📖 Carol Willing
Carol Willing

👀 Kozo Nishida
Kozo Nishida

👀 🌍 From babca4caf3447e40c018b5801f4d34d38ae4ac71 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 9 Aug 2024 12:06:46 +0900 Subject: [PATCH 31/93] Fix expression from "complain" to "raise an error" --- TRANSLATING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TRANSLATING.md b/TRANSLATING.md index 9fb5e5b2..710c5454 100644 --- a/TRANSLATING.md +++ b/TRANSLATING.md @@ -236,7 +236,7 @@ You can also build a live version of the guide that updates automatically as you nox -s docs-live-lang -- es ``` -Note the `--` before the language code, it indicates that the following arguments should be passed into the nox session and not be interpreted directly by nox. If you forget the `--`, nox will look instead for a session named 'es' and complain that it does not exist. +Note the `--` before the language code, it indicates that the following arguments should be passed into the nox session and not be interpreted directly by nox. If you forget the `--`, nox will look instead for a session named 'es' and raise an error that it does not exist. This command will use `sphinx-autobuild` to launch a local web server where you can access the translated version of the guide. You can open the guide in your browser by navigating to `http://localhost:8000`. From 0932ec1bcc7520207d2b242f55776afe23b8b4aa Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sat, 10 Aug 2024 02:37:24 +0900 Subject: [PATCH 32/93] Add link to CODE_OF_CONDUCT.md --- CODE_OF_CONDUCT.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 CODE_OF_CONDUCT.md diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 00000000..f1536dae --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1 @@ +[pyOpenSci Community Code of Conduct](https://github.com/pyOpenSci/handbook/blob/main/CODE_OF_CONDUCT.md) From 0c819ed06ab6ad906ca8cfe55aba9790dc9d53ba Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Thu, 15 Aug 2024 21:05:58 +0900 Subject: [PATCH 33/93] Update conf.py --- conf.py | 1 + 1 file changed, 1 insertion(+) diff --git a/conf.py b/conf.py index a37a669a..7b6d5a52 100644 --- a/conf.py +++ b/conf.py @@ -136,6 +136,7 @@ "styles/*", ".pytest_cache/README.md", "vale-styles/*", + "CODE_OF_CONDUCT.md", ] # For sitemap generation From 28f13188204f4590f8f6907378dfb72b01e915bc Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 9 Aug 2024 16:46:38 +0900 Subject: [PATCH 34/93] os.remove("foo") should be replaced by foo_path.unlink() --- noxfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/noxfile.py b/noxfile.py index ee44f29c..72138ac4 100644 --- a/noxfile.py +++ b/noxfile.py @@ -139,7 +139,7 @@ def clean_dir(session): if content.is_dir(): shutil.rmtree(content) else: - os.remove(content) + pathlib.Path(content).unlink() @nox.session(name="update-translations") From 681b256f511a003ec9129b6d3ccbd6584688d42a Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sat, 10 Aug 2024 00:02:25 +0900 Subject: [PATCH 35/93] docs: fixed errors in markdown link syntax --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d88afac6..dd7831b9 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -313,7 +313,7 @@ later can protect your example from future modifications to the code. `:end-at:` options. And if the example code is Python, `:pyobject:` can be an even more future-proof way to keep the same documentation content even through code refactors. -If you need example code that doesn't yet exist in `examples/` see creating code for documentation](#creating-code-for-documentation). +If you need example code that doesn't yet exist in `examples/` see [creating code for documentation](#creating-code-for-documentation). (creating-code-for-documentation)= #### Creating code for documentation From ba2cc267e3b4e9b3cbc52eb47b3e461567f56d95 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Thu, 15 Aug 2024 20:37:22 +0000 Subject: [PATCH 36/93] docs: update README.md [skip ci] --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 077415ba..76cf0015 100644 --- a/README.md +++ b/README.md @@ -167,7 +167,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Naty Clementi
Naty Clementi

💻 👀 John Drake
John Drake

💻 👀 Revathy Venugopal
Revathy Venugopal

💻 👀 📖 - Tetsuo Koyama
Tetsuo Koyama

💻 👀 📖 + Tetsuo Koyama
Tetsuo Koyama

💻 👀 📖 🌍 Carol Willing
Carol Willing

👀 Kozo Nishida
Kozo Nishida

👀 🌍 From f0f09159c0cc071c93feecb47dbf524c761761f5 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Thu, 15 Aug 2024 20:37:23 +0000 Subject: [PATCH 37/93] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 02130453..5df4d977 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -762,7 +762,8 @@ "contributions": [ "code", "review", - "doc" + "doc", + "translation" ] }, { From 399f373e232ad1885664b74c2e013501be0f8a5f Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 16 Aug 2024 09:26:16 +0900 Subject: [PATCH 38/93] docs: add star-history to README --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 077415ba..9341d076 100644 --- a/README.md +++ b/README.md @@ -180,3 +180,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome! + +## Star History + +[![Star History Chart](https://api.star-history.com/svg?repos=pyOpenSci/python-package-guide&type=Date)](https://star-history.com/#pyOpenSci/python-package-guide&Date) From dfee22e7d9f99c83b79804b68dae911a6921758a Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 17 Aug 2024 19:28:55 +0200 Subject: [PATCH 39/93] Update website-hosting-optimizing-your-docs.md with correct anchor --- .../hosting-tools/website-hosting-optimizing-your-docs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/documentation/hosting-tools/website-hosting-optimizing-your-docs.md b/documentation/hosting-tools/website-hosting-optimizing-your-docs.md index c9a57907..0e6f7f60 100644 --- a/documentation/hosting-tools/website-hosting-optimizing-your-docs.md +++ b/documentation/hosting-tools/website-hosting-optimizing-your-docs.md @@ -41,7 +41,7 @@ It [requires that you to add it to your Sphinx `conf.py` extension list and site OpenGraph is an extension that allows you to add metadata to your documentation content pages. [The OpenGraph protocol allows other websites to provide a -useful preview of the content on your page when shared](https://www.freecodecamp.org/news/what-is-open-graph-and-how-can-i-use-it-for-my-website/#what-is-open-graph). This is important +useful preview of the content on your page when shared](https://www.freecodecamp.org/news/what-is-open-graph-and-how-can-i-use-it-for-my-website/#heading-what-is-open-graph). This is important for when the pages in your documentation are shared on social media sites like Twitter and Mastodon and even for shares on tools like Slack and Discourse. From 031b9a74a8badefa43a578d664b495edf38abbfa Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sun, 18 Aug 2024 14:53:30 +0900 Subject: [PATCH 40/93] Fix typos GitHub action -> GitHub Actions --- TRANSLATING.md | 2 +- package-structure-code/python-package-versions.md | 2 +- tests/index.md | 2 +- tests/tests-ci.md | 4 ++-- tests/write-tests.md | 2 +- tutorials/publish-pypi.md | 4 ++-- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/TRANSLATING.md b/TRANSLATING.md index 9fb5e5b2..710b842d 100644 --- a/TRANSLATING.md +++ b/TRANSLATING.md @@ -265,7 +265,7 @@ When you submit a PR for a translation, you should only include changes to one l Translations PRs will be tagged with a label indicating the language to make them easier to identify and review. For example, contributions to the Spanish translation will be tagged with 'lang-es'. -TODO: This tagging could be automated with a GitHub action. +TODO: This tagging could be automated with a GitHub Actions. When you submit the PR, make sure to include a short description of the changes you made and any context that might be helpful for the reviewer (e.g., you translated new strings, you reviewed fuzzy entries, you fixed typos, etc.) diff --git a/package-structure-code/python-package-versions.md b/package-structure-code/python-package-versions.md index 27a4e1d9..39c8f229 100644 --- a/package-structure-code/python-package-versions.md +++ b/package-structure-code/python-package-versions.md @@ -105,7 +105,7 @@ package versions: ### Semantic release, vs version control based vs manual version bumping Generally semantic release and version control system tools -can be setup to run automatically on GitHub using GitHub actions. +can be setup to run automatically on GitHub using GitHub Actions. This means that you can create a workflow where a GitHub release and associated new version tag is used to trigger an automated build that: diff --git a/tests/index.md b/tests/index.md index 8eaa2d6f..05ff0eee 100644 --- a/tests/index.md +++ b/tests/index.md @@ -53,7 +53,7 @@ of Python, then using an automation tool such as nox to run your tests is useful :link-type: doc :class-card: left-aligned -Continuous integration platforms such as GitHub actions can be +Continuous integration platforms such as GitHub Actions can be useful for running your tests across both different Python versions and different operating systems. Learn about setting up tests to run in Continuous Integration here. ::: diff --git a/tests/tests-ci.md b/tests/tests-ci.md index 45b184ba..417c922a 100644 --- a/tests/tests-ci.md +++ b/tests/tests-ci.md @@ -19,9 +19,9 @@ It allows users to contribute code, documentation fixes and more without having to create development environments, run tests and build documentation locally. -## Example GitHub action that runs tests +## Example GitHub Actions that runs tests -Below is an example GitHub action that runs tests using nox +Below is an example GitHub Actions that runs tests using nox across both Windows, Mac and Linux and on Python versions 3.9-3.11. diff --git a/tests/write-tests.md b/tests/write-tests.md index 5a96c040..56d2bbb1 100644 --- a/tests/write-tests.md +++ b/tests/write-tests.md @@ -18,7 +18,7 @@ Writing tests for your Python package is important because: - **Fearless Refactoring:** Refactoring means making improvements to your code structure without changing its behavior. Tests empower you to make these changes as if you break something, test failures will let you know. - **Documentation:** Tests serve as technical examples of how to use your package. This can be helpful for a new technical contributor that wants to contribute code to your package. They can look at your tests to understand how parts of your code functionality fits together. - **Long-Term ease of maintenance:** As your package evolves, tests ensure that your code continues to behave as expected, even as you make changes over time. Thus you are helping your future self when writing tests. -- **Easier pull request reviews:** By running your tests in a CI framework such as GitHub actions, each time you or a contributor makes a change to your code-base, you can catch issues and things that may have changed in your code base. This ensures that your software behaves the way you expect it to. +- **Easier pull request reviews:** By running your tests in a CI framework such as GitHub Actions, each time you or a contributor makes a change to your code-base, you can catch issues and things that may have changed in your code base. This ensures that your software behaves the way you expect it to. ### Tests for user edge cases diff --git a/tutorials/publish-pypi.md b/tutorials/publish-pypi.md index be800eb7..12da8265 100644 --- a/tutorials/publish-pypi.md +++ b/tutorials/publish-pypi.md @@ -58,7 +58,7 @@ to TestPyPI. You need to: 1. **Publish to TestPyPI using `hatch publish`** In a future lesson, you will learn how to create an automated -GitHub action workflow that publishes an updated +GitHub Actions workflow that publishes an updated version of your package to PyPI every time you create a GitHub release. :::{admonition} Learn more about building Python packages in our guide @@ -360,7 +360,7 @@ For long run maintenance of your package, you have two options related to PyPI publication. 1. You can create a package-specific token which you will use to publish your package (manually) to PyPI. This is a great option if you don't wish to automate your PyPI publication workflow. -2. You can also create an automated publication workflow on GitHub using GitHub actions. This is a great way to make the publication process easier and it also supports a growing maintainer team. In this case we suggest you don't worry about the token and instead setup a specific GitHub action that publishes your package when you make a release. You can then create a "trusted publisher" workflow on PyPI. +2. You can also create an automated publication workflow on GitHub using GitHub Actions. This is a great way to make the publication process easier and it also supports a growing maintainer team. In this case we suggest you don't worry about the token and instead setup a specific GitHub Actions that publishes your package when you make a release. You can then create a "trusted publisher" workflow on PyPI. You will learn how to create the automated trusted publisher workflow in a followup lesson. From 6023eb31131f6213219a250291a91e043bb9b85c Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Mon, 19 Aug 2024 07:42:26 +0200 Subject: [PATCH 41/93] Apply suggestions from code review Co-authored-by: Felipe Moreno --- .../es/LC_MESSAGES/package-structure-code.po | 70 +++++++++---------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index f80e3cd6..0524dd36 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -3917,7 +3917,7 @@ msgid "" "your package on conda-forge. You do not need to rebuild your package to " "publish to conda-forge." msgstr "" -"Una vez que haya publicado ambas distribuciones de paquetes (la distribución de origen y la rueda) en PyPI, " +"Una vez que haya publicado ambas distribuciones de paquetes (la distribución del código fuente y la distribución construida o wheel) en PyPI, " "entonces puede publicar en conda-forge. conda-forge requiere una distribución de origen en PyPI para construir su " "paquete en conda-forge. No necesita reconstruir su paquete para publicar en conda-forge." @@ -3934,7 +3934,7 @@ msgstr "" "(o en un canal de conda). El proceso de construcción organiza su código " "y metadatos en un formato de distribución que puede ser subido a PyPI y " "posteriormente descargado e instalado por los usuarios. NOTA: necesita " -"publicar un sdist en PyPI para que conda-forge pueda construir su paquete " +"publicar un sdist (distribución del código fuente) en PyPI para que conda-forge pueda construir su paquete " "automáticamente." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:14 @@ -3951,7 +3951,7 @@ msgstr "" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:18 msgid "But, what does it mean to build a Python package?" -msgstr "Per, ¿qué significa construir un paquete de Python?" +msgstr "Pero, ¿qué significa construir un paquete de Python?" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:20 msgid "" @@ -3964,7 +3964,7 @@ msgstr "" "[Como se muestra en la figura de arriba](#pypi-conda-channels), cuando construye su paquete de Python, convierte " "los archivos de código fuente en algo llamado paquete de distribución." " Un paquete de distribución contiene su código fuente " -"y metadatos sobre el paquete, en el formato requerido por el Índice de Paquetes de Python, para que pueda ser " +"y metadatos sobre el paquete, en el formato requerido por el Python Package Index (PyPI), para que pueda ser " "instalado por herramientas como pip." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:23 @@ -4020,7 +4020,7 @@ msgid "" "sdist and wheel distributions." msgstr "" "La tabla `[build-system]` en su archivo pyproject.toml le dice a pip qué [herramienta de backend de construcción]" -"(build_backends) desea usar para crear sus distribuciones sdist y wheel." +"(build_backends) desea usar para crear sus distribuciones sdist (distribución del código fuente) y wheel (distribución construida)." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:45 msgid "" @@ -4084,8 +4084,8 @@ msgstr "" "Gráfico que muestra el flujo de trabajo de empaquetado de alto nivel." " A la izquierda se ve un gráfico con código, metadatos y tests en él. " "Esos elementos van todos en su paquete. La documentación y los datos " -"están debajo de esa recuadro porque normalmente no se publican en su " -"distribución de rueda de empaquetado. Una flecha a la derecha lo lleva a " +"están debajo de ese recuadro porque normalmente no se publican en su " +"distribución construida (wheel). Una flecha a la derecha lo lleva a " "un cuadro de archivos de distribución de construcción. Ese cuadro lo lleva " "a publicar en TestPyPI o en el verdadero PyPI. Desde PyPI, puede conectarse " "a conda-forge para una construcción automatizada que envía distribuciones " @@ -4103,7 +4103,7 @@ msgstr "" "Necesita construir su paquete de Python para publicarlo en PyPI (o Conda). " "El proceso de construcción organiza su código y metadatos en un formato de " "distribución que puede ser subido a PyPI y posteriormente descargado e " -"instalado por los usuarios. NOTA: necesita publicar un sdist en PyPI para " +"instalado por los usuarios. NOTA: necesita publicar distribución del código fuente (sdist) en PyPI para " "que conda-forge pueda construir su paquete automáticamente." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:101 @@ -4142,7 +4142,7 @@ msgstr "" "Nombres de los mantenedores y nombres de usuario de GitHub para el paquete " "xclim tal como se muestran en PyPI. Esta información se registra en su " "pyproject.toml y luego es procesada por su herramienta de construcción y " -"almacenada en las distribuciones sdist y wheel (o rueda) de sus paquetes." +"almacenada en las distribuciones sdist y wheel de sus paquetes." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:115 msgid "How to create the distribution format that PyPI and Pip expects?" @@ -4158,8 +4158,8 @@ msgid "" msgstr "" "En teoría, podría crear sus propios scripts para organizar su código " "de la manera que PyPI quiere que sea. Sin embargo, al igual que hay " -"paquetes que manejan estructuras conocidas como Pandas para marcos " -"de datos y Numpy para matrices, hay paquetes y herramientas que le " +"paquetes que manejan estructuras conocidas como dataframes de Pandas " +"y arrays de Numpy, hay paquetes y herramientas que le " "ayudan a crear archivos de distribución de construcción de paquetes." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:121 @@ -4170,10 +4170,10 @@ msgid "" "your sdist and wheel. Whereas tools like Hatch, PDM, Poetry and flit help" " with other parts of the packaging process." msgstr "" -"Existen una serie de herramientas de empaquetado que pueden ayudarlo con " +"Existen una serie de herramientas de empaquetado que pueden ayudarle con " "todo el proceso de empaquetado o solo con un paso del proceso. Por ejemplo, " "setuptools es un backend de construcción comúnmente utilizado que se puede " -"usar para crear su sdist y wheel (o rueda). Mientras que herramientas como " +"usar para crear su sdist y wheel. Mientras que herramientas como " "Hatch, PDM, Poetry y flit ayudan con otras partes del proceso de empaquetado." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:127 @@ -4196,7 +4196,7 @@ msgid "" " what files belong in each." msgstr "" "A continuación, aprenderá sobre los dos archivos de distribución que PyPI " -"espera que publique: sdist y wheel (o rueda). Aprenderá sobre su estructura " +"espera que publique: sdist y wheel. Aprenderá sobre su estructura " "y qué archivos pertenecen a cada uno." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:136 @@ -4209,8 +4209,8 @@ msgid "" msgstr "" "Hay dos archivos de distribución principales que necesita crear para " "publicar su paquete de Python en PyPI: la distribución de origen (a menudo " -"llamada sdist) y la rueda (o wheel). El sdist contiene el código fuente " -"sin procesar de su paquete. La rueda (.whl) contiene los archivos " +"llamada sdist) y la distribución construida (wheel). El sdist contiene el código fuente " +"sin procesar de su paquete. La wheel (.whl) contiene los archivos " "construidos / compilados que se pueden instalar directamente en el " "ordenador de cualquier persona." @@ -4246,7 +4246,7 @@ msgstr "" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:155 msgid "Source Distribution (sdist)" -msgstr "Distribución de origen (sdist)" +msgstr "Distribución de código fuente (sdist)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:157 msgid "" @@ -4254,8 +4254,8 @@ msgid "" "These are the \"raw / as-is\" files that you store on GitHub or whatever " "platform you use to manage your code." msgstr "" -"Los **archivos de origen** son los archivos sin construir necesarios para " -"construir su paquete. Estos son los archivos \"crudos / tal como están\" " +"Los **archivos de código fuente** son los archivos sin construir necesarios para " +"construir su paquete. Estos son los archivos \"originales / sin procesar\" " "que almacena en GitHub o en cualquier plataforma que utilice para gestionar " "su código." @@ -4269,12 +4269,12 @@ msgid "" "everything required to build a wheel (except for project dependencies) " "without network access." msgstr "" -"Las distribuciones de origen (del inglés, _source distribution_) se denominan sdist. Como " -"su nombre indica, un SDIST contiene el código fuente; no ha sido construido ni" -" compilado de ninguna manera. Por lo tanto, cuando un usuario instala su distribución de origen " +"Las distribuciones de código fuente (del inglés, _source distribution_) se denominan sdist. Como " +"su nombre indica, una distribución sdist contiene el código fuente; no ha sido construido ni" +" compilado de ninguna manera. Por lo tanto, cuando un usuario instala su distribución de código fuente " "usando pip, pip necesita ejecutar un paso de construcción primero. Por esta razón, " -"podría definir una distribución de origen como un archivo comprimido que contiene todo lo " -"necesario para construir una rueda (excepto las dependencias del proyecto) sin acceso a la red." +"podría definir una distribución sdist como un archivo comprimido que contiene todo lo " +"necesario para construir una wheel (excepto las dependencias del proyecto) sin acceso a la red." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:165 msgid "" @@ -4312,7 +4312,7 @@ msgstr "" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:229 msgid "Wheel (.whl files):" -msgstr "Rueda o _wheel_(.whl files):" +msgstr "Wheel (ficheros .whl):" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:231 msgid "" @@ -4323,13 +4323,13 @@ msgid "" "may be included in source distributions are not included in wheels " "because it is a built distribution." msgstr "" -"Un archivo de rueda es un archivo en formato ZIP cuyo nombre sigue" +"Un archivo wheel es un archivo en formato ZIP cuyo nombre sigue" " un formato específico (a continuación) y tiene la " "extensión `.whl`. El archivo `.whl` contiene un conjunto específico de " "archivos, incluidos metadatos que se generan a partir del archivo " "pyproject.toml de su proyecto. El pyproject.toml y otros archivos que " "pueden estar incluidos en las distribuciones de origen no se incluyen en " -"las ruedas porque es una distribución construida." +"las wheels porque es una distribución construida." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:238 msgid "" @@ -4341,13 +4341,13 @@ msgid "" "thus faster to install - particularly if you have a package that requires" " build steps." msgstr "" -"La rueda (.whl) es su distribución binaria construida. Los" +"La wheel (.whl) es su distribución binaria construida. Los" " **archivos binarios** son los archivos de código fuente " "construidos / compilados. Estos archivos están listos para ser instalados." -" Una rueda (**.whl**) es un archivo **zip** que contiene todos los archivos " +" Una wheel (**.whl**) es un archivo **zip** que contiene todos los archivos " "necesarios para instalar directamente su paquete. Todos los archivos en una " -"rueda son binarios, lo que significa que el código ya está compilado / " -"construido. Por lo tanto, las ruedas son más rápidas de instalar, " +"wheel son binarios, lo que significa que el código ya está compilado / " +"construido. Por lo tanto, estas son más rápidas de instalar, " "particularmente si tiene un paquete que requiere pasos de construcción." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:240 @@ -4356,7 +4356,7 @@ msgid "" " as **setup.cfg** or **pyproject.toml**. This distribution is already " "built so it's ready to install." msgstr "" -"La rueda no contiene ninguno de los archivos de configuración de su paquete " +"La wheel no contiene ninguno de los archivos de configuración de su paquete " "como **setup.cfg** o **pyproject.toml**. Esta distribución ya está construida " "por lo que está lista para instalar." @@ -4375,15 +4375,15 @@ msgid "" "the wheel bundle are pre built, the user installing doesn't have to worry" " about malicious code injections when it is installed." msgstr "" -"Las ruedas también son útiles en el caso de que un paquete necesite un " +"Las wheels también son útiles en el caso de que un paquete necesite un " "archivo **setup.py** para admitir una construcción más compleja. En este " -"caso, debido a que los archivos en el paquete de rueda están preconstruidos, " +"caso, debido a que los archivos en el paquete de wheel están preconstruidos, " "el usuario que lo instala no tiene que preocuparse por inyecciones de código " "malicioso cuando se instala." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:259 msgid "The filename of a wheel contains important metadata about your package." -msgstr "El nombre de archivo de una rueda contiene metadatos importantes sobre su paquete." +msgstr "El nombre de archivo de una wheel contiene metadatos importantes sobre su paquete." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:261 msgid "Example: **stravalib-1.1.0.post2-py3-none.whl**" From f955a02bd2b65cf8c2b65791931b56848728b827 Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Mon, 19 Aug 2024 07:44:46 +0200 Subject: [PATCH 42/93] fix: modify original file --- .../python-package-distribution-files-sdist-wheel.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-structure-code/python-package-distribution-files-sdist-wheel.md b/package-structure-code/python-package-distribution-files-sdist-wheel.md index e8d6a99c..3253ed1b 100644 --- a/package-structure-code/python-package-distribution-files-sdist-wheel.md +++ b/package-structure-code/python-package-distribution-files-sdist-wheel.md @@ -107,7 +107,7 @@ PyPI screenshot showing metadata for the xclim package. :::{figure-md} pypi-metadata-maintainers -Here you see the maintinaer metadata as it is displayed on PyPI. for xclim there are three maintainers listed with their profile pictures and github user names to the right. +Here you see the maintainer metadata as it is displayed on PyPI. for xclim there are three maintainers listed with their profile pictures and github user names to the right. Maintainer names and GitHub usernames for the xclim package as they are displayed on PyPI. This information is recorded in your pyproject.toml and then processed by your build tool and stored in your packages sdist and wheel distributions. ::: From 5d24bb97abc7979b704aa5e8bcd0b7a7859b75da Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Mon, 19 Aug 2024 07:45:18 +0200 Subject: [PATCH 43/93] fix: modify translated file --- locales/es/LC_MESSAGES/package-structure-code.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index 0524dd36..45755258 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -4124,7 +4124,7 @@ msgstr "Captura de pantalla de PyPI que muestra metadatos para el paquete xclim. #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:110 msgid "" -"Here you see the maintinaer metadata as it is displayed on PyPI. for " +"Here you see the maintainer metadata as it is displayed on PyPI. for " "xclim there are three maintainers listed with their profile pictures and " "github user names to the right." msgstr "" From c5c7efb45f11547255644d40add9231670830411 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Tue, 20 Aug 2024 20:25:34 +0900 Subject: [PATCH 44/93] docs: fix the Unicode apostrophe issue in markdown files --- .../python-package-distribution-files-sdist-wheel.md | 2 +- tutorials/installable-code.md | 8 ++++---- tutorials/pyproject-toml.md | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package-structure-code/python-package-distribution-files-sdist-wheel.md b/package-structure-code/python-package-distribution-files-sdist-wheel.md index d53990f9..87713be5 100644 --- a/package-structure-code/python-package-distribution-files-sdist-wheel.md +++ b/package-structure-code/python-package-distribution-files-sdist-wheel.md @@ -78,7 +78,7 @@ Project metadata used to be stored in either a setup.py file or a setup.cfg file ### An example - xclim -When you publish to PyPI, you will notice that each package has metadata listed. Let’s have a look at [xclim](https://pypi.org/project/xclim/), one of our [pyOpenSci packages](https://www.pyopensci.org/python-packages.html). Notice that on the PyPI landing page you see some metadata about the package including python, maintainer information and more. PyPI is able to populate this metadata because it was defined using correct syntax and classifiers by Xclim's maintainers, [pyproject.toml file](https://github.com/Ouranosinc/xclim/blob/master/pyproject.toml). This metadata when the xclim package is built, is translated into a distribution file that allows PyPI to read the metadata and print it out on their website. +When you publish to PyPI, you will notice that each package has metadata listed. Let's have a look at [xclim](https://pypi.org/project/xclim/), one of our [pyOpenSci packages](https://www.pyopensci.org/python-packages.html). Notice that on the PyPI landing page you see some metadata about the package including python, maintainer information and more. PyPI is able to populate this metadata because it was defined using correct syntax and classifiers by Xclim's maintainers, [pyproject.toml file](https://github.com/Ouranosinc/xclim/blob/master/pyproject.toml). This metadata when the xclim package is built, is translated into a distribution file that allows PyPI to read the metadata and print it out on their website. ```{figure} ../images/python-build-package/pypi-metadata-classifiers.png :scale: 50 % diff --git a/tutorials/installable-code.md b/tutorials/installable-code.md index 3f5c0251..8aabdd35 100644 --- a/tutorials/installable-code.md +++ b/tutorials/installable-code.md @@ -80,7 +80,7 @@ To make your Python code installable you need to create a specific directory str - Some code. - An `__init__.py` file in your code directory. -The directory structure you’ll create in this lesson will look like this: +The directory structure you'll create in this lesson will look like this: ```bash pyospackage/ # Your project directory @@ -118,7 +118,7 @@ import pyospackage The **pyproject.toml** file is: -- Where you define your project’s metadata (including its name, authors, license, etc) +- Where you define your project's metadata (including its name, authors, license, etc) - Where you define dependencies (the packages that it depends on) - Used to specify and configure what build backend you want to use to [build your package](../package-structure-code/python-package-distribution-files-sdist-wheel). @@ -279,7 +279,7 @@ Python can support many different docstrings formats depending on the documentat **pyOpenSci recommends using the NumPy Docstring convention.** -If you aren’t familiar with docstrings or typing yet, that is ok. You can review [this page in the pyOpenSci packaging guide](https://www.pyopensci.org/python-package-guide/documentation/write-user-documentation/document-your-code-api-docstrings.html) for an overview of both topics. +If you aren't familiar with docstrings or typing yet, that is ok. You can review [this page in the pyOpenSci packaging guide](https://www.pyopensci.org/python-package-guide/documentation/write-user-documentation/document-your-code-api-docstrings.html) for an overview of both topics. ```python def add_num(a: int, b: int) -> int: @@ -480,7 +480,7 @@ Source = "https://github.com/unknown/pyospackage" The core information that you need in a `pyproject.toml` file in order to publish on PyPI is your **package's name** and the **version**. However, we suggest that you flesh out your metadata early on in the `pyproject.toml` file. Once you have your project metadata in the pyproject.toml file, you will -rarely update it. In the next lesson you’ll add more metadata and structure to this file. +rarely update it. In the next lesson you'll add more metadata and structure to this file. ::: ## Step 5: Install your package locally diff --git a/tutorials/pyproject-toml.md b/tutorials/pyproject-toml.md index 67af859e..56728764 100644 --- a/tutorials/pyproject-toml.md +++ b/tutorials/pyproject-toml.md @@ -40,7 +40,7 @@ When creating your pyproject.toml file, consider the following: * **name=** * **version=** 3. You should add more metadata to the `[project]` table as it will make it easier for users to find your project on PyPI. And it will also make it easier for installers to understand how to install your package. -3. When you are adding classifiers to the **[project]** table, only use valid values from [PyPI’s classifier page](https://PyPI.org/classifiers/). An invalid value here will raise an error when you build and publish your package on PyPI. +3. When you are adding classifiers to the **[project]** table, only use valid values from [PyPI's classifier page](https://PyPI.org/classifiers/). An invalid value here will raise an error when you build and publish your package on PyPI. 4. There is no specific order for tables in the `pyproject.toml` file. However, fields need to be placed within the correct tables. For example `requires =` always need to be in the **[build-system]** table. 5. We suggest that you include your **[build-system]** table at the top of your `pyproject.toml` file. ::: From ab964af8bee7a83ca1a7ebafc279cb93bec5a287 Mon Sep 17 00:00:00 2001 From: Naty Clementi Date: Tue, 20 Aug 2024 17:57:23 -0400 Subject: [PATCH 45/93] chore: fix typo Co-authored-by: Felipe Moreno --- locales/es/LC_MESSAGES/tutorials.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locales/es/LC_MESSAGES/tutorials.po b/locales/es/LC_MESSAGES/tutorials.po index 62ca6bbc..ac44f016 100644 --- a/locales/es/LC_MESSAGES/tutorials.po +++ b/locales/es/LC_MESSAGES/tutorials.po @@ -78,7 +78,7 @@ msgstr "¿Qué es una licencia?" msgid "" "A license contains legal language about how users can use and reuse your " "software. To set the `LICENSE` for your project, you:" -msgstr "Una licencia contiene lenguage legal acerca de como los usuarios pueden " +msgstr "Una licencia contiene lenguaje legal acerca de como los usuarios pueden " "usar y reusar tu software. Para establecer un archivo `LICENSE` para tu" " projecto, tu: " From d7997b5a136bde747a147c761665c71c7206b6ce Mon Sep 17 00:00:00 2001 From: Naty Clementi Date: Tue, 20 Aug 2024 17:57:32 -0400 Subject: [PATCH 46/93] chore: fix typo Co-authored-by: Felipe Moreno --- locales/es/LC_MESSAGES/tutorials.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locales/es/LC_MESSAGES/tutorials.po b/locales/es/LC_MESSAGES/tutorials.po index ac44f016..31bed78a 100644 --- a/locales/es/LC_MESSAGES/tutorials.po +++ b/locales/es/LC_MESSAGES/tutorials.po @@ -40,7 +40,7 @@ msgid "" "Learned about the core components that are useful to have in a `README` " "file." msgstr "Aprendiste acerca de los componentes principales que son útiles de tener en " -"un `README` file." +"un archivo `README`." #: ../../tutorials/add-license-coc.md:9 ../../tutorials/add-readme.md:10 msgid "Learning objectives" From 3e0e1b036798d69278a5d2b7db6884463e3b0789 Mon Sep 17 00:00:00 2001 From: Naty Clementi Date: Tue, 20 Aug 2024 17:57:43 -0400 Subject: [PATCH 47/93] chore: fix typo Co-authored-by: Felipe Moreno --- locales/es/LC_MESSAGES/tutorials.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locales/es/LC_MESSAGES/tutorials.po b/locales/es/LC_MESSAGES/tutorials.po index 31bed78a..7b2811f9 100644 --- a/locales/es/LC_MESSAGES/tutorials.po +++ b/locales/es/LC_MESSAGES/tutorials.po @@ -102,7 +102,7 @@ msgid "" "GitHub repository's landing page interface." msgstr "Al incluir el archivo `LICENSE` en tu archivo `pyproject.toml`, la " "`LICENSE` sera incluída en la metadata de tu paquete y esta es utilizada para" -" rellenar la página de entrada de tu paquete en PyPI. La `LICENSE` tambien es " +" rellenar la página de entrada de tu paquete en PyPI. La `LICENSE` también es " " utilizada en la página de entrada de tu repositorio de GitHub" #: ../../tutorials/add-license-coc.md:28 From 695c4b47843c0b3371e965a382b73c2d3c718617 Mon Sep 17 00:00:00 2001 From: Naty Clementi Date: Tue, 20 Aug 2024 17:58:03 -0400 Subject: [PATCH 48/93] chore: fix typo Co-authored-by: Felipe Moreno --- locales/es/LC_MESSAGES/tutorials.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locales/es/LC_MESSAGES/tutorials.po b/locales/es/LC_MESSAGES/tutorials.po index 7b2811f9..ebabf01f 100644 --- a/locales/es/LC_MESSAGES/tutorials.po +++ b/locales/es/LC_MESSAGES/tutorials.po @@ -107,7 +107,7 @@ msgstr "Al incluir el archivo `LICENSE` en tu archivo `pyproject.toml`, la " #: ../../tutorials/add-license-coc.md:28 msgid "What license should you use?" -msgstr "¿Qué licencia debería elegir?" +msgstr "¿Qué licencia deberías elegir?" #: ../../tutorials/add-license-coc.md:30 msgid "" From e221e7b843abe37f87036100f8c2c69edc0dcd1e Mon Sep 17 00:00:00 2001 From: Naty Clementi Date: Tue, 20 Aug 2024 17:58:27 -0400 Subject: [PATCH 49/93] chore: fix typo Co-authored-by: Felipe Moreno --- locales/es/LC_MESSAGES/tutorials.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locales/es/LC_MESSAGES/tutorials.po b/locales/es/LC_MESSAGES/tutorials.po index ebabf01f..9dbb7a74 100644 --- a/locales/es/LC_MESSAGES/tutorials.po +++ b/locales/es/LC_MESSAGES/tutorials.po @@ -116,7 +116,7 @@ msgid "" " and BSD-3[^bsd3]). If you are unsure, use MIT given it's the generally " "recommended license on [choosealicense.com](https://choosealicense.com/)." msgstr "Nosotros sugerimos que uses una licencia permissiva que acomode otras" -" licencias comunmente usadas en el ecosistema de Python científico (MIT[^mit]" +" licencias comúnmente usadas en el ecosistema de Python científico (MIT[^mit]" " and BSD-3[^bsd3]). Si tienes dudas, usa MIT dado que es la licencia" " generalmente recomendada en [choosealicense.com](https://choosealicense.com/)" From 1d93adebe0e6338281069c50b84d8c476262638d Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Fri, 23 Aug 2024 07:34:01 +0900 Subject: [PATCH 50/93] docs: add ncclementi as a contributor for translation (#391) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 3 ++- README.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 5df4d977..ea7f3752 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -730,7 +730,8 @@ "profile": "https://www.linkedin.com/in/ncclementi/", "contributions": [ "code", - "review" + "review", + "translation" ] }, { diff --git a/README.md b/README.md index bfeb838f..0b04e3ed 100644 --- a/README.md +++ b/README.md @@ -164,7 +164,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d hpodzorski-USGS
hpodzorski-USGS

💻 👀 - Naty Clementi
Naty Clementi

💻 👀 + Naty Clementi
Naty Clementi

💻 👀 🌍 John Drake
John Drake

💻 👀 Revathy Venugopal
Revathy Venugopal

💻 👀 📖 Tetsuo Koyama
Tetsuo Koyama

💻 👀 📖 🌍 From 032eb9c634fa2252a36ae4d263205c379a7f7175 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 23 Aug 2024 14:49:04 +0900 Subject: [PATCH 51/93] Drop "vanilla of" from sentence --- documentation/hosting-tools/myst-markdown-rst-doc-syntax.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/documentation/hosting-tools/myst-markdown-rst-doc-syntax.md b/documentation/hosting-tools/myst-markdown-rst-doc-syntax.md index 5fb1089b..58d4c6a8 100644 --- a/documentation/hosting-tools/myst-markdown-rst-doc-syntax.md +++ b/documentation/hosting-tools/myst-markdown-rst-doc-syntax.md @@ -6,7 +6,7 @@ syntax. It is the default syntax used in Jupyter Notebooks. There are tools that colored call out blocks and other custom elements to your documentation, you will need to use either **myST** or **rST**. 1. [rST (ReStructured Text):](https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html). **rST** is the native syntax that sphinx supports. rST was the default syntax used for documentation for many years. However, in recent years myST has risen to the top as a favorite for documentation given the flexibility that it allows. -1. [myST:](https://myst-parser.readthedocs.io/en/latest/intro.html) myST is a combination of vanilla of `markdown` and `rST` syntax. It is a nice option if you are comfortable writing markdown. `myst` is preferred by many because it offers both the rich functionality +1. [myST:](https://myst-parser.readthedocs.io/en/latest/intro.html) myST is a combination of `markdown` and `rST` syntax. It is a nice option if you are comfortable writing markdown. `myst` is preferred by many because it offers both the rich functionality of rST combined with a simple-to-write markdown syntax. While you can chose to use any of the syntaxes listed above, we suggest using From 48474bf5fd82716518938417cb115ccd2f7656ea Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Sat, 24 Aug 2024 05:59:14 +0000 Subject: [PATCH 52/93] docs: update README.md [skip ci] --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0b04e3ed..db5596a3 100644 --- a/README.md +++ b/README.md @@ -170,6 +170,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Tetsuo Koyama
Tetsuo Koyama

💻 👀 📖 🌍 Carol Willing
Carol Willing

👀 Kozo Nishida
Kozo Nishida

👀 🌍 + Melissa Weber Mendonça
Melissa Weber Mendonça

💬 From 6c6969ea24f27f1c1f30d6dcd35afde33819e3c2 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Sat, 24 Aug 2024 05:59:15 +0000 Subject: [PATCH 53/93] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index ea7f3752..87f247ac 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -785,6 +785,15 @@ "review", "translation" ] + }, + { + "login": "melissawm", + "name": "Melissa Weber Mendonça", + "avatar_url": "https://avatars.githubusercontent.com/u/3949932?v=4", + "profile": "http://melissawm.github.io", + "contributions": [ + "question" + ] } ], "contributorsPerLine": 7, From 10c57ad8749129cf6dab9ec5842b9bad81ca3cf5 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Tue, 27 Aug 2024 13:33:46 -0400 Subject: [PATCH 54/93] Fix missing quote in documentation.po file --- locales/es/LC_MESSAGES/documentation.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locales/es/LC_MESSAGES/documentation.po b/locales/es/LC_MESSAGES/documentation.po index 1357f888..a94cd7d6 100644 --- a/locales/es/LC_MESSAGES/documentation.po +++ b/locales/es/LC_MESSAGES/documentation.po @@ -95,7 +95,7 @@ msgstr "" "nativa para Sphinx. rST ha sido la sintaxis por defecto para documentación " "durante muchos años. Sin embargo, recientemente myST ha aumentado en popularidad " "para convertirse en la herramienta favorita para documentación gracias a su -flexibilidad." +"flexibilidad." #: ../../documentation/hosting-tools/myst-markdown-rst-doc-syntax.md:9 msgid "" From 5139bc7fb062ff3f4c98bfd8f9c5db1453947bd1 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Tue, 27 Aug 2024 13:38:29 -0400 Subject: [PATCH 55/93] Modified update-translations to include only RELEASE_LANGUAGES; added update-language --- noxfile.py | 51 +++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 41 insertions(+), 10 deletions(-) diff --git a/noxfile.py b/noxfile.py index 72138ac4..849544ef 100644 --- a/noxfile.py +++ b/noxfile.py @@ -145,18 +145,49 @@ def clean_dir(session): @nox.session(name="update-translations") def update_translations(session): """ - Update the translation files (./locales/*/.po) for all languages translations. + Update the translation files (./locales/*/.po) for languages in RELEASE_LANGUAGES. - Note: this step is important because it makes sure that the translation files are - up to date with the latest changes in the guide. + Note: this step is called in the CI to keep release translations up to date with + the latest changes in the guide. """ - session.install("-e", ".") - session.install("sphinx-intl") - session.log("Updating templates (.pot)") - session.run(SPHINX_BUILD, *TRANSLATION_TEMPLATE_PARAMETERS, SOURCE_DIR, TRANSLATION_TEMPLATE_DIR, *session.posargs) - for lang in LANGUAGES: - session.log(f"Updating .po files for [{lang}] translation") - session.run("sphinx-intl", "update", "-p", TRANSLATION_TEMPLATE_DIR, "-l", lang) + if RELEASE_LANGUAGES: + session.install("-e", ".") + session.install("sphinx-intl") + session.log("Updating templates (.pot)") + session.run(SPHINX_BUILD, *TRANSLATION_TEMPLATE_PARAMETERS, SOURCE_DIR, TRANSLATION_TEMPLATE_DIR, *session.posargs) + for lang in RELEASE_LANGUAGES: + session.log(f"Updating .po files for [{lang}] translation") + session.run("sphinx-intl", "update", "-p", TRANSLATION_TEMPLATE_DIR, "-l", lang) + else: + session.warn("No release languages defined in RELEASE_LANGUAGES") + + +@nox.session(name="update-language") +def update_language(session): + """ + Update the translation files (./locales/*/.po) for a specific language translation. + + Note: this step is used by language coordinators to keep their translation files up to date + with the latest changes in the guide, before the translation is released. + """ + if session.posargs and (lang := session.posargs.pop(0)): + if lang in LANGUAGES: + session.install("-e", ".") + session.install("sphinx-intl") + session.log("Updating templates (.pot)") + session.run(SPHINX_BUILD, *TRANSLATION_TEMPLATE_PARAMETERS, SOURCE_DIR, TRANSLATION_TEMPLATE_DIR, *session.posargs) + session.log(f"Updating .po files for [{lang}] translation") + session.run("sphinx-intl", "update", "-p", TRANSLATION_TEMPLATE_DIR, "-l", lang) + else: + f"[{lang}] locale is not available. Try using:\n\n " + "nox -s docs-live-lang -- LANG\n\n " + f"where LANG is one of: {LANGUAGES}" + else: + session.error( + "Please provide a language using:\n\n " + "nox -s update-language -- LANG\n\n " + f" where LANG is one of: {LANGUAGES}" + ) @nox.session(name="build-languages") From c7d8a384867ee26a71278e04dd5ea7df675579ef Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Wed, 28 Aug 2024 15:55:14 +0900 Subject: [PATCH 56/93] Fix mirror of the `prettier` npm package for pre-commit --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index e5d90f98..36028bc0 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -40,8 +40,8 @@ repos: hooks: - id: vale - - repo: https://github.com/pre-commit/mirrors-prettier - rev: v3.1.0 + - repo: https://github.com/rbubley/mirrors-prettier + rev: v3.3.3 hooks: - id: prettier types_or: [yaml, html, css, scss, javascript, json, toml] From 525e10f18537cca4891b060b09fb642fb768ef9e Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Thu, 29 Aug 2024 11:09:32 -0600 Subject: [PATCH 57/93] docs: add OriolAbril as a contributor for question (#396) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> Co-authored-by: Tetsuo Koyama --- .all-contributorsrc | 9 +++++++++ README.md | 1 + 2 files changed, 10 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index 87f247ac..a5254547 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -794,6 +794,15 @@ "contributions": [ "question" ] + }, + { + "login": "OriolAbril", + "name": "Oriol Abril-Pla", + "avatar_url": "https://avatars.githubusercontent.com/u/23738400?v=4", + "profile": "http://oriolabrilpla.cat", + "contributions": [ + "question" + ] } ], "contributorsPerLine": 7, diff --git a/README.md b/README.md index db5596a3..83127de6 100644 --- a/README.md +++ b/README.md @@ -171,6 +171,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Carol Willing
Carol Willing

👀 Kozo Nishida
Kozo Nishida

👀 🌍 Melissa Weber Mendonça
Melissa Weber Mendonça

💬 + Oriol Abril-Pla
Oriol Abril-Pla

💬 From ba0106f6a1a80c16bdde5cd4943e1776a2dc9c81 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Mon, 19 Aug 2024 08:13:54 +0900 Subject: [PATCH 58/93] Set Bot configuration `contributorsSortAlphabetically` True --- .all-contributorsrc | 1 + 1 file changed, 1 insertion(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index a5254547..6cfaf855 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -5,6 +5,7 @@ "imageSize": 100, "commit": false, "commitConvention": "angular", + "contributorsSortAlphabetically": true, "contributors": [ { "login": "eriknw", From a2a73c47f3eafa1c77859991ae611992e76cbd6e Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Thu, 29 Aug 2024 13:21:33 -0400 Subject: [PATCH 59/93] Rename translation session in noxfile.py --- noxfile.py | 91 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 47 insertions(+), 44 deletions(-) diff --git a/noxfile.py b/noxfile.py index 849544ef..1dd89dd8 100644 --- a/noxfile.py +++ b/noxfile.py @@ -55,7 +55,7 @@ def docs(session): session.install("-e", ".") session.run(SPHINX_BUILD, *BUILD_PARAMETERS, SOURCE_DIR, OUTPUT_DIR, *session.posargs) # When building the guide, also build the translations in RELEASE_LANGUAGES - session.notify("build-translations", ['release-build']) + session.notify("build-release-languages", session.posargs) @nox.session(name="docs-test") @@ -69,7 +69,7 @@ def docs_test(session): session.run(SPHINX_BUILD, *BUILD_PARAMETERS, *TEST_PARAMETERS, SOURCE_DIR, OUTPUT_DIR, *session.posargs) # When building the guide with additional parameters, also build the translations in RELEASE_LANGUAGES # with those same parameters. - session.notify("build-translations", ['release-build', *TEST_PARAMETERS]) + session.notify("build-release-languages", [*TEST_PARAMETERS, *session.posargs]) @nox.session(name="docs-live") @@ -142,8 +142,8 @@ def clean_dir(session): pathlib.Path(content).unlink() -@nox.session(name="update-translations") -def update_translations(session): +@nox.session(name="update-release-languages") +def update_release_languages(session): """ Update the translation files (./locales/*/.po) for languages in RELEASE_LANGUAGES. @@ -189,60 +189,63 @@ def update_language(session): f" where LANG is one of: {LANGUAGES}" ) - -@nox.session(name="build-languages") -def build_languages(session): +@nox.session(name="build-language") +def build_language(session): """ - Build the translations of the guide for the specified language. + Build the guide for a specific language translation - Note: This sessions expects a list of languages to build in the first position of the session arguments. - It does not need to be called directly, it is started by build_translations session. + For example: nox -s build-language -- es. """ - if not session.posargs: - session.error("Please provide the list of languages to build the translation for") - languages_to_build = session.posargs.pop(0) + if session.posargs and (lang := session.posargs.pop(0)): + if lang in LANGUAGES: + session.install("-e", ".") + session.log(f"Building [{lang}] guide") + session.run(SPHINX_BUILD, *BUILD_PARAMETERS, "-D", f"language={lang}", ".", OUTPUT_DIR / lang, *session.posargs) + else: + session.error(f"Language {lang} is not in LANGUAGES list.") + else: + session.error( + "Please provide a language using:\n\n " + "nox -s build-language -- LANG\n\n " + f" where LANG is one of: {LANGUAGES}" + ) + +@nox.session(name="build-release-languages") +def build_release_languages(session): + """ + Build the translations of the guide for the languages in RELEASE_LANGUAGES. + """ + if not RELEASE_LANGUAGES: + session.warn("No release languages defined in RELEASE_LANGUAGES") + return session.install("-e", ".") - for lang in languages_to_build: - if lang not in LANGUAGES: - session.warn(f"Language [{lang}] is not available for translation") - continue + for lang in RELEASE_LANGUAGES: session.log(f"Building [{lang}] guide") session.run(SPHINX_BUILD, *BUILD_PARAMETERS, "-D", f"language={lang}", ".", OUTPUT_DIR / lang, *session.posargs) + session.log(f"Translations built for {RELEASE_LANGUAGES}") - -@nox.session(name="build-translations") -def build_translations(session): +@nox.session(name="build-all-languages") +def build_all_languages(session): """ - Build translations of the guide. - - Note: this session can be called directly to build all available translations (defined in LANGUAGES). - It is also called by the docs and docs-test sessions with 'release-build' as the first positional - argument, to build only the translations defined in RELEASE_LANGUAGES. + Build the translations of the guide for the languages in LANGUAGES. """ - release_build = False - if session.posargs and session.posargs[0] == 'release-build': - session.posargs.pop(0) - release_build = True - # if running from the docs or docs-test sessions, build only release languages - BUILD_LANGUAGES = RELEASE_LANGUAGES if release_build else LANGUAGES - # only build languages that have a locale folder - BUILD_LANGUAGES = [lang for lang in BUILD_LANGUAGES if (TRANSLATION_LOCALES_DIR / lang).exists()] - session.log(f"Declared languages: {LANGUAGES}") - session.log(f"Release languages: {RELEASE_LANGUAGES}") - session.log(f"Building languages{' for release' if release_build else ''}: {BUILD_LANGUAGES}") - if not BUILD_LANGUAGES: - session.warn("No translations to build") - else: - session.notify("build-languages", [BUILD_LANGUAGES, *session.posargs]) + if not LANGUAGES: + session.warn("No languages defined in LANGUAGES") + return + session.install("-e", ".") + for lang in LANGUAGES: + session.log(f"Building [{lang}] guide") + session.run(SPHINX_BUILD, *BUILD_PARAMETERS, "-D", f"language={lang}", ".", OUTPUT_DIR / lang, *session.posargs) + session.log(f"Translations built for {LANGUAGES}") -@nox.session(name="build-translations-test") -def build_translations_test(session): +@nox.session(name="build-all-languages-test") +def build_all_languages_test(session): """ - Build all translations of the guide with testing parameters. + Build all translations of the guide with the testing parameters. This is a convenience session to test the build of all translations with the testing parameters in the same way docs-test does for the English version. """ - session.notify("build-translations", [*TEST_PARAMETERS]) + session.notify("build-all-languages", [*TEST_PARAMETERS]) From 0da208cf26369b523764b521fe0150f71efd34d8 Mon Sep 17 00:00:00 2001 From: sneakers-the-rat Date: Thu, 22 Aug 2024 23:27:26 -0700 Subject: [PATCH 60/93] ungoofy the header at intermediate widths --- _static/pyos.css | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/_static/pyos.css b/_static/pyos.css index 52ff4bdb..ff33950e 100644 --- a/_static/pyos.css +++ b/_static/pyos.css @@ -211,6 +211,45 @@ html[data-theme="dark"] { --pyos-h1-color: var(--pyos-color-light); } +/* -------------------------------------- +De-jumble header items. +See https://github.com/pydata/pydata-sphinx-theme/pull/1784 +*/ + +.bd-header .bd-header__inner { + padding: 0 1rem; +} + +.bd-header .navbar-item { + height: unset; + max-height: unset; +} + +@media (max-width: 960px) { + .bd-header .navbar-header-items { + flex-wrap: wrap; + row-gap: 0.5rem; + } +} + +.bd-header .navbar-header-items__end, +.bd-header .navbar-header-items__center, +.bd-header .navbar-header-items__start { + flex-flow: nowrap; +} + +.bd-header .navbar-header-items__start { + width: unset; +} + +.bd-header .navbar-header-items__center { + margin-right: 0.25em !important; +} + +.bd-header ul.navbar-nav { + flex-wrap: wrap; +} + /* -------------------------------------- */ /* Generated by https://gwfh.mranftl.com/ */ From 6531178c92ae5ce7fdd67f28a96bdd706357f641 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Fri, 30 Aug 2024 07:47:42 +0900 Subject: [PATCH 61/93] docs: add RobPasMue as a contributor for ideas (#400) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 3 +- README.md | 138 ++++++++++++++++++++++---------------------- 2 files changed, 72 insertions(+), 69 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 6cfaf855..b8825227 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -691,7 +691,8 @@ "contributions": [ "code", "review", - "translation" + "translation", + "ideas" ] }, { diff --git a/README.md b/README.md index 83127de6..aee04169 100644 --- a/README.md +++ b/README.md @@ -74,104 +74,106 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d - - - - - - + + + + + + - - - - - - - + + + + + + + - - - - - + + + + - + + - + + + + + + - - - - - - - - - - + + + + - + + - - + + + - - - - + + + - - - - - - - + + + + + + + - + - - - - + + + + - - - - + + + + - + - - - - - - + + + + + + + + + + + + + + + - - - - - - - - +
Erik Welch
Erik Welch

📖 🎨
David Nicholson
David Nicholson

📖 🎨
Leah Wasser
Leah Wasser

📖 🎨
Ariane Sasso
Ariane Sasso

📖 🎨 💻 👀
Simon
Simon

📖 🎨
Alexandre Batisse
Alexandre Batisse

📖 🎨
Pamphile Roy
Pamphile Roy

📖 🎨
Ananthu C V
Ananthu C V

👀
Anderson Bravalheri
Anderson Bravalheri

💻 🎨
Ariane Sasso
Ariane Sasso

📖 🎨 💻 👀
Brianne Wilhelmi
Brianne Wilhelmi

💻 👀
C. Titus Brown
C. Titus Brown

💻 👀
Cale Kochenour
Cale Kochenour

💻 👀
Filipe
Filipe

💻 🎨
Jonny Saunders
Jonny Saunders

💻 🎨
Randy Döring
Randy Döring

💻 👀
Juan Luis Cano Rodríguez
Juan Luis Cano Rodríguez

💻 🎨 👀
Henry Schreiner
Henry Schreiner

💻 🎨 👀
Stefan van der Walt
Stefan van der Walt

💻 🎨 👀
Eli Schwartz
Eli Schwartz

💻 🎨 👀
Carol Willing
Carol Willing

👀
Cheng H. Lee
Cheng H. Lee

💻 👀
Chiara Marmo
Chiara Marmo

💻 🎨 👀
Chris Holdgraf
Chris Holdgraf

💻 👀
Daniel Possenriede
Daniel Possenriede

💻 👀
Dave Hirschfeld
Dave Hirschfeld

👀
David Nicholson
David Nicholson

📖 🎨
Ralf Gommers
Ralf Gommers

💻 🎨 👀
Pradyun Gedam
Pradyun Gedam

💻 🎨 👀
Ofek Lev
Ofek Lev

💻 🎨 👀
Chiara Marmo
Chiara Marmo

💻 🎨 👀
James Tocknell
James Tocknell

💻 👀
Eli Schwartz
Eli Schwartz

💻 🎨 👀
Erik Welch
Erik Welch

📖 🎨
Felipe Moreno
Felipe Moreno

👀 💻 🌍
Filipe
Filipe

💻 🎨
Frost Ming
Frost Ming

💻 👀
Hugo van Kemenade
Hugo van Kemenade

💻 👀
Han
Han

💻 👀
Henry Schreiner
Henry Schreiner

💻 🎨 👀
Matt Hall
Matt Hall

💻 👀
Hugo van Kemenade
Hugo van Kemenade

💻 👀
Inessa Pawson
Inessa Pawson

💻 👀
Isabel Zimmerman
Isabel Zimmerman

💻 👀
Ivan Ogasawara
Ivan Ogasawara

💻 👀
Jackson Burns
Jackson Burns

💻 👀
James Tocknell
James Tocknell

💻 👀
Jannis Leidel
Jannis Leidel

💻 👀
Dave Hirschfeld
Dave Hirschfeld

👀
Jeremy Paige
Jeremy Paige

💻 👀 🚧 📖
Anderson Bravalheri
Anderson Bravalheri

💻 🎨
Daniel Possenriede
Daniel Possenriede

💻 👀
ruoxi
ruoxi

💻 👀
Isabel Zimmerman
Isabel Zimmerman

💻 👀
Nick Murphy
Nick Murphy

💻 👀
Trevor James Smith
Trevor James Smith

💻 👀
Éric
Éric

💻 👀
Karen Cranston
Karen Cranston

💻 👀
Jeremy Paige
Jeremy Paige

💻 👀 🚧 📖
Jesse Mostipak
Jesse Mostipak

John Drake
John Drake

💻 👀
Jonny Saunders
Jonny Saunders

💻 🎨
Joseph H Kennedy
Joseph H Kennedy

💻 👀
Inessa Pawson
Inessa Pawson

💻 👀
Juan Luis Cano Rodríguez
Juan Luis Cano Rodríguez

💻 🎨 👀
Karen Cranston
Karen Cranston

💻 👀
William F. Broderick
William F. Broderick

Jesse Mostipak
Jesse Mostipak

Ken Seehart
Ken Seehart

💻 👀
Kozo Nishida
Kozo Nishida

👀 🌍
Leah Wasser
Leah Wasser

📖 🎨
Maria Knorps
Maria Knorps

💻 👀
Philipp A.
Philipp A.

💻 👀
Moritz E. Beber
Moritz E. Beber

💻
Jackson Burns
Jackson Burns

💻 👀
jaimergp
jaimergp

💻 👀
Matt Hall
Matt Hall

💻 👀
Megan Sosey
Megan Sosey

💻 👀
Melissa Weber Mendonça
Melissa Weber Mendonça

💬
h-vetinari
h-vetinari

💻 👀
Ivan Ogasawara
Ivan Ogasawara

💻 👀
Tom Russell
Tom Russell

💻 👀
C. Titus Brown
C. Titus Brown

💻 👀
Cale Kochenour
Cale Kochenour

💻 👀
miguelalizo
miguelalizo

💻 👀 📖
nyeshlur
nyeshlur

💻 👀
Moritz E. Beber
Moritz E. Beber

💻
Naty Clementi
Naty Clementi

💻 👀 🌍
Neil Chue Hong
Neil Chue Hong

👀
Nick Murphy
Nick Murphy

💻 👀
Ofek Lev
Ofek Lev

💻 🎨 👀
Olek
Olek

💻 👀
Oriol Abril-Pla
Oriol Abril-Pla

💬
Tyler Bonnell
Tyler Bonnell

💻 👀
Pamphile Roy
Pamphile Roy

📖 🎨
Pat Tressel
Pat Tressel

💻 👀
Ken Seehart
Ken Seehart

💻 👀
Ryan
Ryan

💻 👀
Patrick Byers
Patrick Byers

💻 👀
Megan Sosey
Megan Sosey

💻 👀
Brianne Wilhelmi
Brianne Wilhelmi

💻 👀
Philipp A.
Philipp A.

💻 👀
Pradyun Gedam
Pradyun Gedam

💻 🎨 👀
Ralf Gommers
Ralf Gommers

💻 🎨 👀
Randy Döring
Randy Döring

💻 👀
Cheng H. Lee
Cheng H. Lee

💻 👀
Vaunty
Vaunty

💻 👀
Zack Weinberg
Zack Weinberg

👀
Felipe Moreno
Felipe Moreno

👀 💻 🌍
Revathy Venugopal
Revathy Venugopal

💻 👀 📖
Roberto Pastor Muela
Roberto Pastor Muela

💻 👀 🌍 🤔
Ryan
Ryan

💻 👀
Simon
Simon

📖 🎨
Sneha Yadav
Sneha Yadav

💻 👀
Stefano Rivera
Stefano Rivera

👀
Stefan van der Walt
Stefan van der Walt

💻 🎨 👀
Stefanie Molin
Stefanie Molin

💻 👀
Ananthu C V
Ananthu C V

👀
Chris Holdgraf
Chris Holdgraf

💻 👀
Neil Chue Hong
Neil Chue Hong

👀
Roberto Pastor Muela
Roberto Pastor Muela

💻 👀 🌍
Olek
Olek

💻 👀
Han
Han

💻 👀
Stefano Rivera
Stefano Rivera

👀
Tetsuo Koyama
Tetsuo Koyama

💻 👀 📖 🌍
Tom Russell
Tom Russell

💻 👀
Trevor James Smith
Trevor James Smith

💻 👀
Tyler Bonnell
Tyler Bonnell

💻 👀
Vaunty
Vaunty

💻 👀
William F. Broderick
William F. Broderick

Zack Weinberg
Zack Weinberg

👀
h-vetinari
h-vetinari

💻 👀
hpodzorski-USGS
hpodzorski-USGS

💻 👀
jaimergp
jaimergp

💻 👀
miguelalizo
miguelalizo

💻 👀 📖
nyeshlur
nyeshlur

💻 👀
ruoxi
ruoxi

💻 👀
Naty Clementi
Naty Clementi

💻 👀 🌍
John Drake
John Drake

💻 👀
Revathy Venugopal
Revathy Venugopal

💻 👀 📖
Tetsuo Koyama
Tetsuo Koyama

💻 👀 📖 🌍
Carol Willing
Carol Willing

👀
Kozo Nishida
Kozo Nishida

👀 🌍
Melissa Weber Mendonça
Melissa Weber Mendonça

💬
Oriol Abril-Pla
Oriol Abril-Pla

💬
Éric
Éric

💻 👀
From 5868d1e99a0ae099fbf2d6841eb5b855538a0a96 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Fri, 30 Aug 2024 07:55:37 +0900 Subject: [PATCH 62/93] docs: add tkoyama010 as a contributor for ideas (#401) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 3 ++- README.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index b8825227..93769729 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -766,7 +766,8 @@ "code", "review", "doc", - "translation" + "translation", + "ideas" ] }, { diff --git a/README.md b/README.md index aee04169..861a8bd6 100644 --- a/README.md +++ b/README.md @@ -156,7 +156,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Stefano Rivera
Stefano Rivera

👀 - Tetsuo Koyama
Tetsuo Koyama

💻 👀 📖 🌍 + Tetsuo Koyama
Tetsuo Koyama

💻 👀 📖 🌍 🤔 Tom Russell
Tom Russell

💻 👀 Trevor James Smith
Trevor James Smith

💻 👀 Tyler Bonnell
Tyler Bonnell

💻 👀 From d69a301d66e6ecbe4828a67b2170344d928f5218 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Sun, 1 Sep 2024 22:20:25 +0900 Subject: [PATCH 63/93] docs: add sneakers-the-rat as a contributor for ideas (#404) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 3 ++- README.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 93769729..67abade9 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -97,7 +97,8 @@ "profile": "https://jon-e.net", "contributions": [ "code", - "design" + "design", + "ideas" ] }, { diff --git a/README.md b/README.md index 861a8bd6..db09cbd1 100644 --- a/README.md +++ b/README.md @@ -113,7 +113,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Jeremy Paige
Jeremy Paige

💻 👀 🚧 📖 Jesse Mostipak
Jesse Mostipak

John Drake
John Drake

💻 👀 - Jonny Saunders
Jonny Saunders

💻 🎨 + Jonny Saunders
Jonny Saunders

💻 🎨 🤔 Joseph H Kennedy
Joseph H Kennedy

💻 👀 Juan Luis Cano Rodríguez
Juan Luis Cano Rodríguez

💻 🎨 👀 Karen Cranston
Karen Cranston

💻 👀 From a45b742c2b25cf78f20a9c49532c2836b675f774 Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Mon, 2 Sep 2024 16:15:13 +0200 Subject: [PATCH 64/93] Apply suggestions from code review Co-authored-by: Felipe Moreno --- .../es/LC_MESSAGES/package-structure-code.po | 76 +++++++++---------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index 4fa7f773..bb227ff1 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -2660,7 +2660,7 @@ msgid "" "popular packaging tools in the PyPA survey. You will learn more about the" " following tools on this page:" msgstr "" -"En esta sección hemos seleccionado herramientas que se clasificaron como las herramientas de " +"En esta sección hemos seleccionado las herramientas de " "empaquetado más populares en la encuesta de PyPA. Aprenderá más sobre las siguientes herramientas " "en esta página:" @@ -2706,8 +2706,8 @@ msgid "" "you are looking for in your workflow." msgstr "" "En general, cualquier herramienta moderna que seleccione de esta página será " -"excelente para construir su paquete. Seleccionar una herramienta se reduce a las características " -"que está buscando en su flujo de trabajo." +"excelente para construir su paquete. La selección de que herramienta usar depende de las características " +"de su flujo de trabajo." #: ../../package-structure-code/python-package-build-tools.md:38 msgid "" @@ -2726,8 +2726,8 @@ msgid "" "discord where you can ask questions." msgstr "" "Si va a utilizar Poetry (es la herramienta más popular y tiene la mejor " -"documentación), tenga en cuenta las adiciones de dependencias de límites " -"superiores y considere anular las dependencias cuando las agregue. ¡Si hace " +"documentación), tenga en cuenta que la herramienta asume automáticamente una dependencia " +"a la versión mayor actual y considere eliminar estas dependencias cuando la herramienta las agregue. ¡Si hace " "eso, Poetry funcionará bien para construcciones de Python puro! Poetry también " "tiene un discord activo donde puede hacer preguntas." @@ -2768,9 +2768,9 @@ msgid "" "Python versions. If this feature is important to you, then Hatch is a " "clear winner." msgstr "" -"Ofrece gestión de entornos de matriz que le permite ejecutar pruebas en " -"versiones de Python. Si esta característica es importante para usted, entonces " -"Hatch es un claro ganador." +"Ofrece gestión de entornos que le permite ejecutar pruebas en " +"versiones de Python. Si esta característica es importante, " +"Hatch es el claro ganador." #: ../../package-structure-code/python-package-build-tools.md:52 msgid "" @@ -2779,7 +2779,7 @@ msgid "" "might be for you." msgstr "" "Ofrece una herramienta Nox / Make file para optimizar su flujo de trabajo de construcción. " -"Si está buscando reducir el número de herramientas en su flujo de trabajo, Hatch podría ser para usted." +"Si está buscando reducir el número de herramientas en su flujo de trabajo, Hatch podría ser una buena opción." #: ../../package-structure-code/python-package-build-tools.md:55 msgid "Build front-end vs. build back-end tools" @@ -2823,10 +2823,10 @@ msgid "" "is particularly complex (i.e. you have more than a few `C`/`C++` " "extensions), then we suggest you use **meson.build** or **scikit-build**." msgstr "" -"Otros paquetes que tienen extensiones en C y C++ (o que envuelven otros lenguajes como fortran) " +"Otros paquetes que tienen extensiones en C y C++ (o que envuelven otros lenguajes como Fortran) " "requieren pasos adicionales de compilación de código cuando se construyen. Backends como **setuptools.build**, " "**meson.build** y **scikit-build** admiten construcciones complejas con pasos personalizados. " -"Si su construcción es particularmente compleja (es decir, tiene más de unas pocas extensiones `C`/`C++`), " +"Si su construcción es particularmente compleja (es decir, tiene varias extensiones `C`/`C++`), " "entonces le sugerimos que use **meson.build** o **scikit-build**." #: ../../package-structure-code/python-package-build-tools.md:77 @@ -2864,7 +2864,7 @@ msgstr "Publicar en PyPI" #: ../../package-structure-code/python-package-build-tools.md:85 msgid "Running tests" -msgstr "Correr tests" +msgstr "Ejecutar tests" #: ../../package-structure-code/python-package-build-tools.md:86 msgid "Building documentation" @@ -2875,7 +2875,7 @@ msgid "" "Managing an environment or multiple environments in which you need to run" " tests and develop your package" msgstr "" -"Gestionar un entorno o varios entornos en los que necesita ejecutar tests y desarrollar su paquete" +"Gestionar uno o varios entornos de desarrollo en los que necesita ejecutar tests y desarrollar su paquete" #: ../../package-structure-code/python-package-build-tools.md:89 msgid "" @@ -2897,8 +2897,8 @@ msgid "" "build your package's sdist and wheel distribution files, then you can " "stick with PyPA's Build. You'd then use Twine to publish to PyPI." msgstr "" -"Por ejemplo, puede utilizar las herramientas de empaquetado **Flit**, **Hatch** o **PDM** para " -"tanto construir como publicar su paquete en PyPI. Sin embargo, mientras **Hatch** y **PDM** " +"Por ejemplo, puede utilizar las herramientas de empaquetado **Flit**, **Hatch** o **PDM** " +"tanto para construir como publicar su paquete en PyPI. Sin embargo, mientras **Hatch** y **PDM** " "admite el versionado y la gestión de entornos, **Flit** no lo hace. Si desea una herramienta " "que admita el bloqueo de dependencias, puede utilizar **PDM** o **Poetry** pero no **Hatch**. " "Si solo necesita construir los archivos de distribución sdist y wheel de su paquete, " @@ -3033,7 +3033,7 @@ msgid "" " setuptools because setuptools will require some additional knowledge to " "set up correctly." msgstr "" -"Sugerimos que elija una de las herramientas modernas enumeradas anteriormente en lugar de setuptools " +"Sugerimos que elija una de las herramientas modernas discutidas anteriormente en lugar de setuptools " "porque setuptools requerirá algunos conocimientos adicionales para configurarse correctamente." #: ../../package-structure-code/python-package-build-tools.md:161 @@ -3159,8 +3159,8 @@ msgid "" msgstr "" "NOTA: También puede usar Hatch para construcciones no puras de Python. Hatch, similar a PDM, le permite " "escribir sus propios hooks de construcción o complementos para admitir pasos de construcción personalizados. " -"Pero actualmente, hatch no admite otros backends de construcción. Muchos de los paquetes científicos centrales " -"se están moviendo a meson-python para construir sus paquetes. Por lo tanto, apreciamos que PDM pueda trabajar " +"Pero actualmente, hatch no admite otros backends de construcción. Muchos de los paquetes científicos principales " +"se están cambiando a meson-python para construir sus paquetes. Por lo tanto, apreciamos que PDM pueda trabajar " "con meson-python específicamente." #: ../../package-structure-code/python-package-build-tools.md:199 @@ -3451,8 +3451,8 @@ msgid "" "Similar to all of the other tools PDM builds your packages sdist and " "wheel files for you." msgstr "" -"Al igual que todas las demás herramientas, PDM construye los archivos sdist " -"y wheel de sus paquetes por usted." +"Al igual que todas las demás herramientas, PDM también construye los archivos sdist " +"y wheel de sus paquetes." #: ../../package-structure-code/python-package-build-tools.md:264 msgid "PDM vs. Poetry" @@ -3522,14 +3522,14 @@ msgstr "" #: ../../package-structure-code/python-package-build-tools.md:277 msgid "Challenges with PDM" -msgstr "Desafíos con PDM" +msgstr "Dificultades con PDM" #: ../../package-structure-code/python-package-build-tools.md:279 msgid "" "PDM is a full-featured packaging tool. However it is not without " "challenges:" msgstr "" -"PDM es una herramienta de empaquetado completa. Sin embargo, no está exenta de desafíos:" +"PDM es una herramienta de empaquetado completa. Sin embargo, no está exenta de dificultades:" #: ../../package-structure-code/python-package-build-tools.md:281 msgid "" @@ -3537,7 +3537,7 @@ msgid "" "packaging. For example, PDM doesn't provide an end to end beginning " "workflow in its documentation." msgstr "" -"Su documentación puede ser confusa, especialmente si es nuevo en el " +"Su documentación puede ser confusa, especialmente si eres nuevo en el " "empaquetado. Por ejemplo, PDM no proporciona " "un flujo de trabajo de principio a fin en su documentación." @@ -3548,9 +3548,9 @@ msgid "" "longer have time to work on the project, it leaves users with a gap in " "support. Hatch and Flit also have single maintainer teams." msgstr "" -"PDM solo tiene un mantenedor actualmente. Consideramos que los equipos de mantenedores individuales " -"son un riesgo potencial. Si el mantenedor encuentra que ya no tiene tiempo para trabajar en el proyecto, " -"deja a los usuarios con una brecha en el soporte. Hatch y Flit también tienen equipos de un solo mantenedor." +"PDM solo tiene un mantenedor actualmente. Consideramos que los equipos de mantenedores con una sola persona " +"son un riesgo potencial. Si el mantenedor decide que ya no tiene tiempo para trabajar en el proyecto, " +"deja a los usuarios sin soporte. Hatch y Flit también tienen equipos de un solo mantenedor." #: ../../package-structure-code/python-package-build-tools.md:288 msgid "" @@ -3693,7 +3693,7 @@ msgid "" "or **Nox** from your workflow and use Hatch instead." msgstr "" "[**Hatch**](https://hatch.pypa.io/latest/), similar a Poetry y PDM, " -"proporciona una interfaz de línea de comandos unificada. Para separar Hatch de Poetry y PDM, también " +"proporciona una interfaz de línea de comandos unificada. Para contrastar Hatch con Poetry y PDM, este también " "proporciona un gestor de entornos para tests que le facilitará la ejecución de tests localmente en " "diferentes versiones de Python. También ofrece una característica similar a nox / makefile que le permite " "crear flujos de trabajo de construcción personalizados como construir su documentación localmente. Esto " @@ -3713,7 +3713,7 @@ msgid "" "Hatch is used with the backend Hatchling by default, but allows you to " "use another backend by switching the declaration in pyproject.toml." msgstr "" -"Hatch se usa con el backend Hatchling de forma predeterminada, pero le" +"Hatch utiliza el backend Hatchling de forma predeterminada, pero le" " permite usar otro backend cambiando " "la declaración en pyproject.toml." @@ -3869,8 +3869,8 @@ msgid "" "Similar to PDM, Hatch's documentation can difficult to work through, " "particularly if you are just getting started with creating a package." msgstr "" -"Al igual que PDM, la documentación de Hatch puede ser difícil de trabajar," -" especialmente si está comenzando a crear un paquete." +"Al igual que PDM, la documentación de Hatch puede ser difícil de utilizar," +" especialmente si eres nuevo en la construcción de paquete." #: ../../package-structure-code/python-package-build-tools.md:372 msgid "Hatch, similar to PDM and Flit currently only has one maintainer." @@ -3915,7 +3915,7 @@ msgid "" msgstr "" "Poetry le ayuda a agregar dependencias a sus metadatos `pyproject.toml`. " "_NOTA: actualmente Poetry agrega dependencias utilizando un enfoque que está " -"ligeramente desalineado con los peps de Python actuales - sin embargo, hay un plan para solucionar esto en una " +"ligeramente desalineado con los PEPs de Python actuales - sin embargo, hay un plan para solucionar esto en una " "próxima versión._ Poetry también le permite organizar dependencias en grupos como documentación, empaquetado y " "tests." @@ -3961,7 +3961,7 @@ msgstr "" #: ../../package-structure-code/python-package-build-tools.md:392 msgid "Poetry supports publishing to both test PyPI and PyPI" -msgstr "Poetry admite la publicación tanto en test PyPI como en PyPI" +msgstr "Poetry admite la publicación tanto en PyPI Test como en PyPI" #: ../../package-structure-code/python-package-build-tools.md:392 msgid "" @@ -4019,8 +4019,8 @@ msgid "" "follows: `poetry add \"requests>=2.1\"` See breakout below for more " "discussion on issues surrounding upper-bounds pinning." msgstr "" -"Poetry, por defecto, fija las dependencias utilizando un límite de \"límite superior\" especificado con el " -"símbolo `^` por defecto. Sin embargo, este comportamiento puede ser sobrescrito especificando la dependencia " +"Poetry, por defecto, fija las dependencias utilizando un valor de \"límite superior\" de versión especificado con el " +"símbolo `^` por defecto. Sin embargo, este comportamiento puede ser eliminado especificando la dependencia " "cuando use `Poetry add` de la siguiente manera: `poetry add \"requests>=2.1\"` Vea el desglose a continuación " "para más discusión sobre los problemas que rodean el fijado de límites superiores." @@ -4058,7 +4058,7 @@ msgid "" "the package. Poetry will instead bump up to 1.9.x." msgstr "" "Por defecto, Poetry fija las dependencias utilizando `^` por defecto. Este símbolo `^` significa que hay un " -"\"límite superior\" a la dependencia. Por lo tanto, Poetry no incrementará la versión de una dependencia a una " +"\"límite superior\" en la dependencia. Por lo tanto, Poetry no incrementará la versión de una dependencia a una " "nueva versión mayor. Por lo tanto, si su paquete usa una dependencia que está en la versión 1.2.3, Poetry nunca " "incrementará la dependencia a 2.0 incluso si hay una nueva versión mayor del paquete. En su lugar, Poetry incrementará " "hasta 1.9.x." @@ -4112,7 +4112,7 @@ msgid "" "maintainers to consider using a more modern tool for packaging such as " "Poetry, Hatch or PDM." msgstr "" -"Aunque setuptools es la herramienta más comúnmente utilizada, alentamos a los mantenedores de paquetes a considerar " +"Aunque setuptools es la herramienta más comúnmente utilizada, sugerimos a los mantenedores de paquetes a considerar " "usar una herramienta más moderna para el empaquetado como Poetry, Hatch o PDM." #: ../../package-structure-code/python-package-build-tools.md:451 @@ -4120,8 +4120,8 @@ msgid "" "We discuss setuptools here because it's commonly found in the ecosystem " "and contributors may benefit from understanding it." msgstr "" -"Discutimos setuptools aquí porque comúnmente se encuentra en el ecosistema y los contribuyentes pueden beneficiarse " -"de entenderlo." +"Discutimos setuptools aquí porque se encuentra muy a menudo en el ecosistema y entenderlo " +"puede beneficiarle." #: ../../package-structure-code/python-package-build-tools.md:454 msgid "Setuptools Features" From 8eeeec782d4a18671e4855f916bfac9a3d628228 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 14:48:52 +0900 Subject: [PATCH 65/93] [pre-commit.ci] pre-commit autoupdate (#405) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/errata-ai/vale: v3.7.0 → v3.7.1](https://github.com/errata-ai/vale/compare/v3.7.0...v3.7.1) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 36028bc0..411260ca 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -36,7 +36,7 @@ repos: )$ - repo: https://github.com/errata-ai/vale - rev: v3.7.0 + rev: v3.7.1 hooks: - id: vale From 45ede5a55a0e5e2c9f1900b6f7bc5fb99cd18cdf Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 7 Sep 2024 17:01:36 -0400 Subject: [PATCH 66/93] Fix missing double quote in documentation.po for Spanish (#406) --- locales/es/LC_MESSAGES/documentation.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locales/es/LC_MESSAGES/documentation.po b/locales/es/LC_MESSAGES/documentation.po index 1357f888..a94cd7d6 100644 --- a/locales/es/LC_MESSAGES/documentation.po +++ b/locales/es/LC_MESSAGES/documentation.po @@ -95,7 +95,7 @@ msgstr "" "nativa para Sphinx. rST ha sido la sintaxis por defecto para documentación " "durante muchos años. Sin embargo, recientemente myST ha aumentado en popularidad " "para convertirse en la herramienta favorita para documentación gracias a su -flexibilidad." +"flexibilidad." #: ../../documentation/hosting-tools/myst-markdown-rst-doc-syntax.md:9 msgid "" From 9467a1fbf37b4565b456d8b335517939534603d3 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 7 Sep 2024 17:11:44 -0400 Subject: [PATCH 67/93] Replaced package with channel (#407) Co-authored-by: Tetsuo Koyama --- package-structure-code/publish-python-package-pypi-conda.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-structure-code/publish-python-package-pypi-conda.md b/package-structure-code/publish-python-package-pypi-conda.md index 6f377712..fd10cdac 100644 --- a/package-structure-code/publish-python-package-pypi-conda.md +++ b/package-structure-code/publish-python-package-pypi-conda.md @@ -141,7 +141,7 @@ package repository. Thus environments that contain packages installed from both pip and conda are more likely to yield dependency conflicts. -Similarly installing packages from the default anaconda package mixed with the conda-forge channel can also lead to dependency conflicts. +Similarly installing packages from the default anaconda channel mixed with the conda-forge channel can also lead to dependency conflicts. Many install packages directly from conda `defaults` channel. However, because this channel is managed by Anaconda, the packages available on it are From ba31752f4f1efab6ec6c43425727bbc3632be424 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Mon, 9 Sep 2024 11:19:41 +0900 Subject: [PATCH 68/93] docs: add flpm as a contributor for doc (#408) * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> --- .all-contributorsrc | 3 ++- README.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 67abade9..ea26a53b 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -624,7 +624,8 @@ "contributions": [ "review", "code", - "translation" + "translation", + "doc" ] }, { diff --git a/README.md b/README.md index db09cbd1..73e05a86 100644 --- a/README.md +++ b/README.md @@ -94,7 +94,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d Eli Schwartz
Eli Schwartz

💻 🎨 👀 Erik Welch
Erik Welch

📖 🎨 - Felipe Moreno
Felipe Moreno

👀 💻 🌍 + Felipe Moreno
Felipe Moreno

👀 💻 🌍 📖 Filipe
Filipe

💻 🎨 Frost Ming
Frost Ming

💻 👀 Han
Han

💻 👀 From 0d950a57389c1645af0b2bc062f9c5b5811baeb4 Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Mon, 9 Sep 2024 09:25:05 +0200 Subject: [PATCH 69/93] Apply suggestions from code review Co-authored-by: Felipe Moreno --- .../es/LC_MESSAGES/package-structure-code.po | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index bcb11e1e..d155a546 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -655,7 +655,7 @@ msgid "" "This guide is focused on packages that are either pure-python or that " "have a few simple extensions in another language such as C or C++." msgstr "" -"Esta guía se centra en paquetes que son Python puros o que tienen unas " +"Esta guía se centra en paquetes que solamente utilizan Python o que tienen unas " "pocas extensiones simples en otro lenguaje como C o C++." #: ../../package-structure-code/complex-python-package-builds.md:6 @@ -674,11 +674,11 @@ msgstr "" "En el futuro, queremos proporcionar recursos para flujos de trabajo de " "empaquetado que requieran compilaciones más complejas. Si tiene preguntas " "sobre estos tipos de paquetes, por favor [agregue una pregunta a nuestro " -"foro](https://pyopensci.discourse.group/) o abra una [solicitud sobre esta guía " +"foro](https://pyopensci.discourse.group/) o abra una [issue sobre esta guía " "específicamente en el repositorio](https://github.com/pyOpenSci/python-package-guide/issues). " "Hay muchos matices para construir y distribuir paquetes de Python que tienen " -"extensiones compiladas que requieren dependencias que no están desarrolladas en Python en tiempo de " -"compilación. Para obtener una descripción general y una discusión exhaustiva " +"extensiones compiladas que requieren dependencias en otros lenguajes en el momento de " +"construcción del paquete. Para obtener una descripción general y una discusión exhaustiva " "de estos matices, consulte [este sitio.](https://pypackaging-native.github.io/)" @@ -694,8 +694,8 @@ msgid "" "frontend and backend tools." msgstr "" "Se puede clasificar la complejidad de los paquetes de Python en tres categorías. " -"Estas categorías, a su vez, pueden ayudarlo a seleccionar las herramientas de " -"frontend y backend correctas." +"Estas categorías, a su vez, pueden ayudarlo a seleccionar las mejores herramientas de " +"frontend y backend." #: ../../package-structure-code/complex-python-package-builds.md:14 msgid "" @@ -705,9 +705,9 @@ msgid "" "your decision!" msgstr "" "**Paquetes de Python puros:** son paquetes que solo dependen de Python para " -"trabajar. Construir un paquete de Python puro es más simple. Como tal, puede " -"elegir una herramienta a continuación que tenga las características que desea y, " -"¡tomar una decisión!." +"funcionar. Construir un paquete de Python puro es más simple. Como tal, puede " +"elegir una herramienta a continuación que tenga las características que desea " +"sin tener que considerar muchos detalles." #: ../../package-structure-code/complex-python-package-builds.md:16 msgid "" @@ -722,12 +722,12 @@ msgid "" msgstr "" "**Paquetes de Python con extensiones en otros lenguajes:** Estos paquetes tienen " "componentes adicionales llamados extensiones escritas en otros lenguajes (como C o C++). " -"Si tiene un paquete con extensiones no escritas en Python, entonces debe seleccionar " +"Si tiene un paquete con extensiones no escritas en otros lenguajes, debe seleccionar " "una herramienta de backend de compilación que permita pasos de compilación adicionales " -"necesarios para compilar su código de extensión. Además, si desea utilizar una herramienta " +"necesarios para compilar su código en estos lenguajes. Además, si desea utilizar una herramienta " "de frontend para ayudar a su flujo de trabajo, deberá seleccionar una herramienta que admita " "configuraciones de compilación adicionales. Sugerimos que elija una herramienta de compilación " -"que admita pasos de compilación personalizados como Hatch." +"que admita pasos de compilación personalizados como por ejemplo Hatch." #: ../../package-structure-code/complex-python-package-builds.md:18 msgid "" @@ -789,10 +789,10 @@ msgstr "" "preferido `hatchling`. Si bien esto será adecuado para la mayoría de los paquetes, " "se puede usar un backend alternativo con Hatch si es necesario al crear un módulo de " "extensión. Un módulo de extensión de Python es uno que está compuesto, ya sea en parte " -"o en su totalidad, de código compilado. En este caso, el backend elegido (como `meson-python`) " +"o en su totalidad, de código compilado en otro lenguaje. En este caso, el backend elegido (como `meson-python`) " "debe saber cómo compilar el lenguaje de extensión y vincularlo a Python. `hatchling` no sabe " "cómo hacer esto por sí solo y debe hacer uso de [plugins](https://hatch.pypa.io/1.9/plugins/about/) " -"o ser reemplazado por un backend que ya sea capaz de construir módulos de extensión." +"o cambiar un backend que sea capaz de construir módulos de extensión." #: ../../package-structure-code/complex-python-package-builds.md:37 msgid "" @@ -803,7 +803,7 @@ msgid "" msgstr "" "Para usar un backend diferente, deberá editar el `pyproject.toml` de su proyecto. " "Si tiene un `pyproject.toml` generado por el comando `hatch`, o siguiendo el tutorial " -"de empaquetado, es posible que deba hacer un cambio como este" +"de empaquetado, probablemente tendrá hacer un cambio como este" #: ../../package-structure-code/declare-dependencies.md:8 #: ../../package-structure-code/declare-dependencies.md:375 From 864f1880bcd44ad244056cbeb49ccea3cbd220ed Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Mon, 9 Sep 2024 09:26:44 +0200 Subject: [PATCH 70/93] Apply suggestions from code review Co-authored-by: Felipe Moreno --- .../es/LC_MESSAGES/package-structure-code.po | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index bf1b873e..24bbcdf8 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -1730,6 +1730,7 @@ msgid "" "lead to package conflicts." msgstr "" "Instalar paquetes en el mismo entorno usando tanto pip como conda puede " +"dar lugar a conflictos entre paquetes." #: ../../package-structure-code/publish-python-package-pypi-conda.md:16 msgid "" @@ -1760,7 +1761,7 @@ msgid "" "publish to conda-forge." msgstr "" "Imagen representando la progresión de crear un paquete de Python, construirlo" -" y luego publicarlo en PyPI y conda-forge. Toma tu código y conviertelo en " +" y luego publicarlo en PyPI y conda-forge. Convierte tu código en " "archivos de distribución (sdist y wheel) que acepta PyPI. Luego hay una flecha " "hacia el repositorio de PyPI donde publicas ambas distribuciones. Desde PyPI, " "si creas una receta de conda-forge, puedes publicar en conda-forge." @@ -1774,7 +1775,7 @@ msgid "" "publish to conda-forge." msgstr "" "Una vez que haya publicado ambas distribuciones de paquetes (la distribución de origen " -"y la rueda) en PyPI, puede publicar en conda-forge. conda-forge requiere una distribución de " +"y la wheel) en PyPI, puede publicar en conda-forge. conda-forge requiere una distribución de " "origen en PyPI para construir su paquete en conda-forge. No necesita reconstruir su paquete para " "publicar en conda-forge." @@ -1808,7 +1809,7 @@ msgid "" " is written in. Whereas `pip` can only install Python packages." msgstr "" "La mayor diferencia entre usar pip y conda para instalar un paquete es que conda puede instalar " -"cualquier paquete independientemente del idioma(s) en el que esté escrito. Mientras que `pip` " +"cualquier paquete independientemente del lenguaje en el que esté escrito. Mientras que `pip` " "solo puede instalar paquetes de Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:43 @@ -1901,7 +1902,7 @@ msgstr "" "Si bien conda se creó originalmente para admitir paquetes de Python, ahora se usa en todos los lenguajes. " "Este soporte entre lenguajes facilita que algunos paquetes incluyan y tengan acceso a herramientas escritas " "en otros lenguajes, como C/C++ (gdal), Julia o R. Crear un entorno que mezcle todos estos paquetes suele ser " -"más fácil y más consistente con administradores de paquetes completos como conda." +"más fácil y más consistente con herramientas de administración de paquetes como conda." #: ../../package-structure-code/publish-python-package-pypi-conda.md:90 msgid "conda channels" @@ -1975,7 +1976,7 @@ msgstr "" "Gráfico con el título Repositorios de paquetes de Python. Debajo dice " "Cualquier cosa alojada en PyPI se puede instalar usando pip install. Los paquetes alojados en un " "canal de conda se pueden instalar usando conda install. Debajo de eso hay dos filas. La fila superior " -"dice canales de conda. al lado hay tres cuadros uno con conda-forge, mantenido por la comunidad; bioconda " +"dice canales de conda. Al lado hay tres cuadros uno con conda-forge, mantenido por la comunidad; bioconda " "y luego defaults - administrado por el equipo de Anaconda. Debajo de eso hay una fila que dice " "Servidores de PyPI. PyPI - cualquiera puede publicar en PyPI; y test PyPI - un servidor de pruebas" " para que practiques." @@ -2066,7 +2067,7 @@ msgid "" "Similarly installing packages from the default anaconda package mixed " "with the conda-forge channel can also lead to dependency conflicts." msgstr "" -"De manera similar, instalar paquetes del paquete predeterminado de Anaconda mezclado con el canal conda-forge " +"De manera similar, instalar paquetes del canal predeterminado (`defaults`) de Anaconda mezclado con el canal conda-forge " "también puede llevar a conflictos de dependencias." #: ../../package-structure-code/publish-python-package-pypi-conda.md:146 @@ -2135,7 +2136,7 @@ msgid "" "we encourage you to consider doing so!" msgstr "" "¡Si bien pyOpenSci no requiere que agregue su paquete a conda-forge, le " -"animamos a que lo considere!" +"sugerimos que lo considere!" #: ../../package-structure-code/publish-python-package-pypi-conda.md:170 msgid "" @@ -2200,8 +2201,8 @@ msgid "" "file found in the pull request match the PyPI metadata of the new " "release." msgstr "" -"Puede fusionar la solicitud de cambio para esa actualización una vez que esté " -"contento con ella. Una solicitud de cambio lista para fusionar generalmente " +"Puede hacer merge de la pull request para esa actualización una vez que esté " +"contento con ella. Una pull request lista para hacer merge generalmente " "significa asegurarse de que las dependencias de su proyecto (conocidas como " "requisitos en tiempo de ejecución) enumeradas en el archivo YAML actualizado " "en la solicitud de cambio coincidan con los metadatos de PyPI de la nueva versión." From 1e5b18b484a918e7615bed4a130df4297b92d169 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 14 Sep 2024 19:46:42 -0400 Subject: [PATCH 71/93] docs: Small clarification to avoid confusion (#410) * Replace code to avoid confusing tool with the packaging tools * Avoid confusing between tool (the code in the package) and tool as in packaging tools --- package-structure-code/intro.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package-structure-code/intro.md b/package-structure-code/intro.md index 90b35aa4..94b80e72 100644 --- a/package-structure-code/intro.md +++ b/package-structure-code/intro.md @@ -111,11 +111,11 @@ and for anyone who is just getting started with creating a Python package. In this section of our Python packaging guide, we: - Provide an overview of the options available to you when packaging your - tool. + code. - Suggest tools and approaches that both meet your needs and also support existing standards. - Suggest tools and approaches that will allow you to expand upon a workflow - that may begin as a pure Python tool and evolve into a tool that requires + that may begin as a pure Python code and evolve into code that requires addition layers of complexity in the packaging build. - Align our suggestions with the most current, accepted [PEPs (Python Enhancement Protocols)](https://peps.python.org/pep-0000/) From 6d60b4f924f63032a0ada71b5bab6fa834a7b055 Mon Sep 17 00:00:00 2001 From: Roberto Pastor Muela <37798125+RobPasMue@users.noreply.github.com> Date: Mon, 16 Sep 2024 09:47:08 +0200 Subject: [PATCH 72/93] Apply suggestions from code review Co-authored-by: Felipe Moreno --- .../es/LC_MESSAGES/package-structure-code.po | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/locales/es/LC_MESSAGES/package-structure-code.po b/locales/es/LC_MESSAGES/package-structure-code.po index 021b3692..2764ff25 100644 --- a/locales/es/LC_MESSAGES/package-structure-code.po +++ b/locales/es/LC_MESSAGES/package-structure-code.po @@ -1505,7 +1505,7 @@ msgid "" "what your level of packaging knowledge is, this page will help you decide" " upon a package structure that follows modern python best practices." msgstr "" -"¿Distribución del código fuente, distribución plana y dónde deben vivir las carpetas de tests? " +"¿Distribución con estructura 'src', distribución plana y dónde deben vivir las carpetas de tests? " "Sin importar cuál sea su nivel de conocimiento sobre empaquetado, esta página le ayudará a decidir " "sobre una estructura de paquete que siga las mejores prácticas modernas para paquetes de Python." @@ -1535,7 +1535,7 @@ msgid "" " build and install your package." msgstr "" "Aprenda cómo agregar metadatos de proyecto a su paquete de Python para admitir tanto " -"la filtración en PyPI como los metadatos que un instalador de paquetes necesita para " +"los filtros en PyPI como los metadatos que un instalador de paquetes necesita para " "construir e instalar su paquete." #: ../../package-structure-code/intro.md:52 @@ -1560,8 +1560,8 @@ msgid "" "publish to both PyPI and then a Conda channel such as conda-forge. Learn " "more here." msgstr "" -"Si tiene un paquete de Python puro, es un proceso sencillo publicar en PyPI y luego en " -"un canal de Conda como conda-forge. Aprenda más aquí." +"Si tiene un paquete de Python puro, publicar en PyPI y luego en " +"un canal de Conda como conda-forge es un proceso sencillo. Aprenda más aquí." #: ../../package-structure-code/intro.md:73 msgid "✨ 5. Setup package versioning ✨" @@ -1616,7 +1616,7 @@ msgid "" "package." msgstr "" "Si está considerando enviar un paquete para revisión por pares, eche un vistazo a las [comprobaciones " -"mínimos del editor](https://www.pyopensci.org/software-" +"mínimas del editor](https://www.pyopensci.org/software-" "peer-review/how-to/editor-in-chief-guide.html#editor-checklist-template) que realiza pyOpenSci " "antes de que comience una revisión. Estas comprobaciones son útiles para explorar tanto para los autores " "que planean enviar un paquete para su revisión como para cualquier persona que esté comenzando " @@ -1635,7 +1635,7 @@ msgid "" "Provide an overview of the options available to you when packaging your " "tool." msgstr "" -"Proporcionamos una descripción general de las opciones disponibles para empaquetar su herramienta." +"Proporcionamos una descripción general de las opciones disponibles para empaquetar su código." #: ../../package-structure-code/intro.md:115 msgid "" @@ -1651,7 +1651,7 @@ msgid "" " requires addition layers of complexity in the packaging build." msgstr "" "Sugerimos herramientas y enfoques que le permitirán ampliar un flujo de trabajo que puede comenzar " -"como una herramienta de Python puro y evolucionar hacia una herramienta que requiere capas adicionales " +"como código en Python puro y evolucionar hacia un código con capas adicionales " "de complejidad en la construcción de empaquetado." #: ../../package-structure-code/intro.md:120 @@ -1711,7 +1711,7 @@ msgid "" "create a Python package. In this guide, we suggest packaging approaches " "and tools based on:" msgstr "" -"Para apoyar los muchos usos diferentes de Python, hay muchas formas de crear un paquete de Python. " +"Para satisfacer todos los usos posibles del lenguaje, hay muchas formas de crear un paquete de Python. " "En esta guía, sugerimos enfoques y herramientas de empaquetado basados en:" #: ../../package-structure-code/intro.md:142 @@ -1730,7 +1730,7 @@ msgid "" "A shared goal of standardizing packaging approaches across this " "(scientific) Python ecosystem." msgstr "" -"Un objetivo compartido de estandarizar los enfoques de empaquetado en todo este ecosistema de Python (científico)." +"Un objetivo compartido de estandarizar los enfoques de empaquetado en todo el ecosistema de Python científico." #: ../../package-structure-code/intro.md:148 msgid "" @@ -1738,8 +1738,8 @@ msgid "" "accepted [Python community](https://packaging.python.org/en/latest/) and " "[scientific community](https://scientific-python.org/specs/)." msgstr "" -"Aquí, también intentamos alinear nuestras sugerencias con los más actuales " -"y aceptados [comunidad de Python](https://packaging.python.org/en/latest/) y " +"Aquí, también intentamos alinear nuestras sugerencias con las prácticas más actuales " +"y aceptadas [comunidad de Python](https://packaging.python.org/en/latest/) y " "[comunidad científica](https://scientific-python.org/specs/)." #: ../../package-structure-code/intro.md:151 @@ -1753,7 +1753,7 @@ msgid "" "package to be reviewed and accepted into our pyOpenSci open source " "ecosystem." msgstr "" -"Las sugerencias para la distribución de paquetes en esta sección se hacen con la intención de ser útiles; " +"Las sugerencias para la distribución de paquetes en esta sección se hacen con la intención de ayudarle; " "no son requisitos específicos para que su paquete sea revisado y aceptado en nuestro ecosistema de código " "abierto de pyOpenSci." @@ -1765,11 +1765,11 @@ msgid "" "to/author-guide.html#) if you are looking for pyOpenSci's Python package " "review requirements!" msgstr "" -"¡Consulte nuestra [página de alcance de paquete](https://www.pyopensci.org" +"¡Consulte nuestra [página con el scope que cubre PyOpenSci](https://www.pyopensci.org" "/software-peer-review/about/package-scope.html) y [requisitos de revisión " "en nuestra guía para autores](https://www.pyopensci.org/software-peer-review/how-" "to/author-guide.html#) si está buscando los requisitos de revisión de paquetes " -"de Python de pyOpenSci!" +"que aplica pyOpenSci!" #: ../../package-structure-code/publish-python-package-pypi-conda.md:1 msgid "Publishing Your Package In A Community Repository: PyPI or Anaconda.org" From 8def4c1f8f6d2d2209cbd777d5de608bd1533aa2 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sat, 21 Sep 2024 09:00:40 +0900 Subject: [PATCH 73/93] Fix typo in documentation from Github to GitHub (#411) --- documentation/repository-files/intro.md | 4 ++-- index.md | 4 ++-- tutorials/publish-pypi.md | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/documentation/repository-files/intro.md b/documentation/repository-files/intro.md index 620ae40f..f7c91c45 100644 --- a/documentation/repository-files/intro.md +++ b/documentation/repository-files/intro.md @@ -6,7 +6,7 @@ at a minimum have the following files: The files mentions above (README, Code of Conduct, license file, etc) are used as a measure of package community health -on many online platforms. Below, you can see an example how Github +on many online platforms. Below, you can see an example how GitHub evaluates community health. This community health link is available for all GitHub repositories. @@ -21,7 +21,7 @@ GitHub community health looks for a readme file among other elements when it eva [Snyk](https://snyk.io/advisor/python) is another well-known company that keeps tabs on package health. Below you can see a similar evaluation of files -in the Github repo as a measure of community health. +in the GitHub repo as a measure of community health. ```{figure} /images/moving-pandas-python-package-snyk-health.png --- diff --git a/index.md b/index.md index 54263add..04e0932d 100644 --- a/index.md +++ b/index.md @@ -58,7 +58,7 @@ Publish your docs ``` ## _new_ Tutorial Series: Create a Python Package -The first round of our community-developed, how to create a Python package tutorial series for scientists is complete! Join our community review process or watch development of future tutorials in our [Github repo here](https://github.com/pyOpenSci/python-package-guide). +The first round of our community-developed, how to create a Python package tutorial series for scientists is complete! Join our community review process or watch development of future tutorials in our [GitHub repo here](https://github.com/pyOpenSci/python-package-guide). :::::{grid} 1 1 2 2 @@ -187,7 +187,7 @@ Learn about best practices for: * [How to publish your docs](/documentation/hosting-tools/intro) * [Using Sphinx](/documentation/hosting-tools/intro) * [Markdown, MyST, and ReST](/documentation/hosting-tools/myst-markdown-rst-doc-syntax) -* [Host your docs on Read The Docs or Github Pages](/documentation/hosting-tools/publish-documentation-online) +* [Host your docs on Read The Docs or GitHub Pages](/documentation/hosting-tools/publish-documentation-online) ::: :::: diff --git a/tutorials/publish-pypi.md b/tutorials/publish-pypi.md index 12da8265..b1993834 100644 --- a/tutorials/publish-pypi.md +++ b/tutorials/publish-pypi.md @@ -218,7 +218,7 @@ Example: `pyosPackage_yourNameHere`. #### Recommended -- Update the Github repository name to align with the new package name +- Update the GitHub repository name to align with the new package name - Update your local project folder to match the new package name (e.g. `pyospackage_yourNameHere/src`) - Update mentions of your repository name in other files (e.g. `README.md`) ::: From 6d0ae874d2bdc8782eb595485e906102184000ba Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 13:04:37 -0400 Subject: [PATCH 74/93] Updated the contributor translation guide --- TRANSLATING.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/TRANSLATING.md b/TRANSLATING.md index f319d3a2..e909c18b 100644 --- a/TRANSLATING.md +++ b/TRANSLATING.md @@ -72,10 +72,10 @@ You can find a list of the two-letter Sphinx language option [here](https://www. The translation files contain the original English text and a space for you to enter the translated text. Before starting to translate, you need to make sure the translation files are up to date with the latest changes to the guide. -You can do this by running the following command: +You can do this by running the following command, replacing LANG by the language code you plan to work on (e.g., `es` for Spanish): ```shell -$ nox -s update-translations +$ nox -s update-language -- LANG ``` This command will create the translation files if they don't exist yet, or update them with the latest changes if they already exist. @@ -220,10 +220,10 @@ When working on a translation, you **should not** modify the original English te ## Building the Translated Documentation -Once you finished translating or when you want to check the translation in context, you can build the guide locally on your computer, using the following command: +Once you finished translating or when you want to check the translation in context, you can build the guide locally on your computer, using the following command, replacing LANG by the proper language code (e.g., `es` for Spanish) ```shell -nox -s build-translations +nox -s build-language -- LANG ``` This command will build all the translated versions of the guide defined in the `LANGUAGES` list in `noxfile.py`. These translations will be stored in the `_build/html`, in folders named after the language code (e.g., `es`, `fr`, etc.). @@ -251,7 +251,7 @@ You can follow these steps: 1. Build the translations of the guide with same parameters that will be used during the release: ```shell -nox -s build-translations-test +nox -s build-all-languages-test ``` 2. Make sure there are no warnings or errors in the output. If there are, you will need to fix them before submitting the PR. @@ -297,7 +297,7 @@ When you run the `sphinx-intl stat` command, you will see a list of `.po` files ### What happens when a string has changed in the original English text? -If a string has changed in the original English version, it will be marked as `fuzzy` in the translation file the next time it is updated (`nox -s update-translations`). Contributors working on the translation can then review the fuzzy entries and make the necessary changes to ensure it is accurate, before removing the `fuzzy` tag. +If a string has changed in the original English version, it will be marked as `fuzzy` in the translation file the next time it is updated (`update-language`, `update-all-languages`, or `update-all-release-languages`). Contributors working on the translation can then review the fuzzy entries and make the necessary changes to ensure it is accurate, before removing the `fuzzy` tag. ### How do I handle links in the translated text? From 1c937acf5d09b3a24cbfbb4237a82cff44901c95 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 13:18:10 -0400 Subject: [PATCH 75/93] Mention discord in section about getting help --- TRANSLATING.md | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/TRANSLATING.md b/TRANSLATING.md index e909c18b..43af5e01 100644 --- a/TRANSLATING.md +++ b/TRANSLATING.md @@ -340,10 +340,4 @@ TODO: There are many approaches here, some projects release a translation as soo ### How can I get help with my translation? -If you have any questions or need help with your translation, you can create an issue in the repository. - -TODO: Maybe [Discourse](https://pyopensci.discourse.group/) could be used as a way for contributors to ask for help with translations or the translation workflow? - -``` - -``` +If you have any questions or need help with your translation, you can create an issue in the repository. You can also join the PyOpenSci Discord and ask questions in the translation channel! TODO: Add more information about how to find PyOpenSci in Discord. From 100ea76d2b2631d4f81ee2c729be658346ce4f07 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 13:47:45 -0400 Subject: [PATCH 76/93] Fix reference to dependencies in pyproject.toml --- package-structure-code/declare-dependencies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index 53ef36cc..82cbdb67 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -35,7 +35,7 @@ within the code of your project or during development of your package. ### Understanding optional vs. required dependencies -You can think about dependencies as being either optional or required. If they are required, they will be listed in the `[dependency] =` table of your `pyproject.toml` file. If they are optional, they will be listed in the `[optional.dependencies]` table of your `pyproject.toml`. +You can think about dependencies as being either optional or required. If they are required, they will be listed in the `dependency` key in the `project` table of your `pyproject.toml` file. If they are optional, they will be listed in the `[optional.dependencies]` table of your `pyproject.toml`. You will learn about both below. From 463566223beb785bae008ffbab7b2b5af0148092 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 13:56:10 -0400 Subject: [PATCH 77/93] Fix another reference --- package-structure-code/declare-dependencies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index 82cbdb67..6be0e648 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -51,7 +51,7 @@ Within those 2 groups, there are three use cases that you can think about. 1. Co ### Required (or core) dependencies Required dependencies are called directly within your package's code. On this page we refer to these dependencies -as **core dependencies** as they are needed in order to run your package. You should place your core or required dependencies in the `[dependency]=` table of your `pyproject.toml` file. +as **core dependencies** as they are needed in order to run your package. You should place your core or required dependencies in the `dependency` key of the `[project]` table of your `pyproject.toml` file. ### Optional dependencies From 95d3b96d3ffbcfbda019668a08f19a194b61cb71 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 14:01:48 -0400 Subject: [PATCH 78/93] Fix another reference --- package-structure-code/declare-dependencies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index 6be0e648..f1c3f65c 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -120,7 +120,7 @@ dependencies = [ Ideally, you should only list the packages that are necessary to install and use your package in the -`[dependencies]` section. This minimizes the number of +`dependencies` key in the `[project]` table. This minimizes the number of additional packages that your users must install as well as the number of packages that depend upon your package must also install. From dee43cc16fb94a7b2f3cba585f44226c7c01877c Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 14:19:41 -0400 Subject: [PATCH 79/93] Fix reference to optional dependencies table --- package-structure-code/declare-dependencies.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index f1c3f65c..ec4bc970 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -153,12 +153,12 @@ Optional dependencies for building your documentation, running your tests and bu * linting and other code cleanup tools These dependencies are considered optional, because they are not required to install and use your package. Feature -dependencies are considered optional and should also be placed in the `[optional.dependencies]` table. +dependencies are considered optional and should also be placed in the `[project.optional-dependencies]` table. Optional dependencies can be stored in an -`[optional.dependencies]` table in your **pyproject.toml** file. +`[project.optional-dependencies]` table in your **pyproject.toml** file. -It's important to note that within the `[optional.dependencies]` table, you can store additional, optional dependencies within named sub-groups. This is a different table than the dependencies array located within the `[project]` table discussed above which contains a single array with a single list of required packages. +It's important to note that within the `[project.optional-dependencies]` table, you can store additional, optional dependencies within named sub-groups. This is a different table than the dependencies array located within the `[project]` table discussed above which contains a single array with a single list of required packages. ## Create optional dependency groups From 55010deb21b4d1164b1dfc3963b3900b40a2b04f Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 14:25:41 -0400 Subject: [PATCH 80/93] Fixed 2 more incorrect references --- package-structure-code/declare-dependencies.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index ec4bc970..8c62185a 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -164,7 +164,7 @@ It's important to note that within the `[project.optional-dependencies]` table, To declare optional dependencies in your **pyproject.toml** file: -1. Add a `[optional.dependencies]` table to your **pyproject.toml** file. +1. Add a `[project.optional-dependencies]` table to your **pyproject.toml** file. 2. Create named groups of dependencies using the syntax: `group-name = ["dep1", "dep2"]` @@ -250,7 +250,7 @@ groups that you defined above using the syntax: Above you install: * dependencies needed for your documentation (`docs`), -* required package dependencies in the `dependency` array and +* required package dependencies in the `dependencies` array and * your package using pip. Below you @@ -258,7 +258,7 @@ install your package, required dependencies and optional test dependencies. `python -m pip install ".[tests]"` -You can install multiple dependency groups in the `[optional.dependencies]` table using: +You can install multiple dependency groups in the `[project.optional-dependencies]` table using: `python -m pip install ".[docs, tests, lint]"` From 16d413b53886a3ce4b6c5d786c72ccbaedd382f4 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 14:29:07 -0400 Subject: [PATCH 81/93] Fix typo --- package-structure-code/declare-dependencies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index 8c62185a..0776c8cb 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -223,7 +223,7 @@ feature = [ :::{figure-md} python-package-dependencies -Diagram showing a ven diagram with three sections representing the dependency groups listed above - docs feature and tests. In the center it says your-package and lists the core dependencies of that package seaborn and numpy. To the right are two arrows. The first shows the command python - m pip install your-package. It them shows how installing your package that way installs only the package and the two core dependencies into a users environment. Below is a second arrow with python -m pip install youPackage[tests]. This leads to an environment with both the package dependencies - your-package, seaborn and numpy and also the tests dependencies including pytest and pytest-cov +Diagram showing a Venn diagram with three sections representing the dependency groups listed above - docs feature and tests. In the center it says your-package and lists the core dependencies of that package seaborn and numpy. To the right are two arrows. The first shows the command python - m pip install your-package. It them shows how installing your package that way installs only the package and the two core dependencies into a users environment. Below is a second arrow with python -m pip install youPackage[tests]. This leads to an environment with both the package dependencies - your-package, seaborn and numpy and also the tests dependencies including pytest and pytest-cov When a user installs your package locally using python -m pip install your-package only your package and it's core dependencies get installed. When they install your package `[tests]` pip will install both your package and its core dependencies plus any of the dependencies listed within the tests array of your `[optional.dependencies]` table. ::: From 4d48a07259909fe822c7f02d01bb22e266cd4395 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 14:30:34 -0400 Subject: [PATCH 82/93] Added missing code formatting --- package-structure-code/declare-dependencies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index 0776c8cb..bb8fe0ba 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -225,7 +225,7 @@ feature = [ Diagram showing a Venn diagram with three sections representing the dependency groups listed above - docs feature and tests. In the center it says your-package and lists the core dependencies of that package seaborn and numpy. To the right are two arrows. The first shows the command python - m pip install your-package. It them shows how installing your package that way installs only the package and the two core dependencies into a users environment. Below is a second arrow with python -m pip install youPackage[tests]. This leads to an environment with both the package dependencies - your-package, seaborn and numpy and also the tests dependencies including pytest and pytest-cov -When a user installs your package locally using python -m pip install your-package only your package and it's core dependencies get installed. When they install your package `[tests]` pip will install both your package and its core dependencies plus any of the dependencies listed within the tests array of your `[optional.dependencies]` table. +When a user installs your package locally using `python -m pip install your-package` only your package and it's core dependencies get installed. When they install your package `[tests]` pip will install both your package and its core dependencies plus any of the dependencies listed within the tests array of your `[optional.dependencies]` table. ::: :::{admonition} Using `python -m pip install` vs. `pip install` From 1771a3214eeeb000814109c8439f8432b9f148dc Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 14:32:47 -0400 Subject: [PATCH 83/93] Fixed wrong command to install optional dependencies --- package-structure-code/declare-dependencies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index bb8fe0ba..36261fde 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -225,7 +225,7 @@ feature = [ Diagram showing a Venn diagram with three sections representing the dependency groups listed above - docs feature and tests. In the center it says your-package and lists the core dependencies of that package seaborn and numpy. To the right are two arrows. The first shows the command python - m pip install your-package. It them shows how installing your package that way installs only the package and the two core dependencies into a users environment. Below is a second arrow with python -m pip install youPackage[tests]. This leads to an environment with both the package dependencies - your-package, seaborn and numpy and also the tests dependencies including pytest and pytest-cov -When a user installs your package locally using `python -m pip install your-package` only your package and it's core dependencies get installed. When they install your package `[tests]` pip will install both your package and its core dependencies plus any of the dependencies listed within the tests array of your `[optional.dependencies]` table. +When a user installs your package locally using `python -m pip install your-package` only your package and it's core dependencies get installed. When they install your package `python -m pip install your-package[tests]` pip will install both your package and its core dependencies plus any of the dependencies listed within the tests array of your `[optional.dependencies]` table. ::: :::{admonition} Using `python -m pip install` vs. `pip install` From c4cf14115c2ccdcd48a22f7641f8a55148408381 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 14:33:21 -0400 Subject: [PATCH 84/93] Fixed another reference to optional dependencies --- package-structure-code/declare-dependencies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index 36261fde..a5b9a8de 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -225,7 +225,7 @@ feature = [ Diagram showing a Venn diagram with three sections representing the dependency groups listed above - docs feature and tests. In the center it says your-package and lists the core dependencies of that package seaborn and numpy. To the right are two arrows. The first shows the command python - m pip install your-package. It them shows how installing your package that way installs only the package and the two core dependencies into a users environment. Below is a second arrow with python -m pip install youPackage[tests]. This leads to an environment with both the package dependencies - your-package, seaborn and numpy and also the tests dependencies including pytest and pytest-cov -When a user installs your package locally using `python -m pip install your-package` only your package and it's core dependencies get installed. When they install your package `python -m pip install your-package[tests]` pip will install both your package and its core dependencies plus any of the dependencies listed within the tests array of your `[optional.dependencies]` table. +When a user installs your package locally using `python -m pip install your-package` only your package and it's core dependencies get installed. When they install your package `python -m pip install your-package[tests]` pip will install both your package and its core dependencies plus any of the dependencies listed within the tests array of your `[project.optional-dependencies]` table. ::: :::{admonition} Using `python -m pip install` vs. `pip install` From 79d1b6630dd5c33f0563e117d7a6bb1a7b65916b Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Sat, 21 Sep 2024 14:50:16 -0400 Subject: [PATCH 85/93] Fixed two more mistakes --- package-structure-code/declare-dependencies.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package-structure-code/declare-dependencies.md b/package-structure-code/declare-dependencies.md index a5b9a8de..e498d506 100644 --- a/package-structure-code/declare-dependencies.md +++ b/package-structure-code/declare-dependencies.md @@ -35,7 +35,7 @@ within the code of your project or during development of your package. ### Understanding optional vs. required dependencies -You can think about dependencies as being either optional or required. If they are required, they will be listed in the `dependency` key in the `project` table of your `pyproject.toml` file. If they are optional, they will be listed in the `[optional.dependencies]` table of your `pyproject.toml`. +You can think about dependencies as being either optional or required. If they are required, they will be listed in the `dependencies` key in the `project` table of your `pyproject.toml` file. If they are optional, they will be listed in the `[optional.dependencies]` table of your `pyproject.toml`. You will learn about both below. @@ -51,7 +51,7 @@ Within those 2 groups, there are three use cases that you can think about. 1. Co ### Required (or core) dependencies Required dependencies are called directly within your package's code. On this page we refer to these dependencies -as **core dependencies** as they are needed in order to run your package. You should place your core or required dependencies in the `dependency` key of the `[project]` table of your `pyproject.toml` file. +as **core dependencies** as they are needed in order to run your package. You should place your core or required dependencies in the `dependencies` key of the `[project]` table of your `pyproject.toml` file. ### Optional dependencies From 6680f281674ed8165eb01fa79f03f0f6a557a4a2 Mon Sep 17 00:00:00 2001 From: Felipe Moreno Date: Mon, 23 Sep 2024 16:14:44 -0400 Subject: [PATCH 86/93] Added information about discord to Translation Guide FAQ --- TRANSLATING.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/TRANSLATING.md b/TRANSLATING.md index 43af5e01..c8f6c62a 100644 --- a/TRANSLATING.md +++ b/TRANSLATING.md @@ -340,4 +340,6 @@ TODO: There are many approaches here, some projects release a translation as soo ### How can I get help with my translation? -If you have any questions or need help with your translation, you can create an issue in the repository. You can also join the PyOpenSci Discord and ask questions in the translation channel! TODO: Add more information about how to find PyOpenSci in Discord. +If you have any questions or need help with your translation, you can create an [issue](https://github.com/pyOpenSci/python-package-guide/issues) in the [Packaging Guide repository](https://github.com/pyOpenSci/python-package-guide) + +You can also ask in the PyOpenSci Discord server ([click here](https://discord.gg/CvSMp4zcqX) to join), you will find a general channel for questions related to our workflow, processes, and tools (translation-general) and channels for each of the languages we are working on (spanish-translation, japanese-translation, etc). From a65d6fcad587fd371ec65ad3c996168b10482c42 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 30 Aug 2024 14:58:55 +0900 Subject: [PATCH 87/93] Create `dependabot.yml` to enable `Dependabot` --- .github/dependabot.yml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..1bfc0903 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,27 @@ +version: 2 +updates: + - package-ecosystem: "pip" + directory: "/" + insecure-external-code-execution: allow + schedule: + interval: "monthly" + open-pull-requests-limit: 100 + labels: + - "maintenance" + - "dependencies" + groups: + pip: + patterns: + - "*" + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "monthly" + open-pull-requests-limit: 100 + labels: + - "maintenance" + - "dependencies" + groups: + actions: + patterns: + - "*" From 7082f1580db8d64c837f015757f5004a5bb585cd Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 30 Aug 2024 15:01:14 +0900 Subject: [PATCH 88/93] Update dependabot.yml --- .github/dependabot.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 1bfc0903..593600e0 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -3,8 +3,6 @@ updates: - package-ecosystem: "pip" directory: "/" insecure-external-code-execution: allow - schedule: - interval: "monthly" open-pull-requests-limit: 100 labels: - "maintenance" @@ -15,8 +13,6 @@ updates: - "*" - package-ecosystem: "github-actions" directory: "/" - schedule: - interval: "monthly" open-pull-requests-limit: 100 labels: - "maintenance" From 43c8d1afe392cdae213e1bc5906db75bd4f38f48 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 30 Aug 2024 15:02:12 +0900 Subject: [PATCH 89/93] Revert "Update dependabot.yml" This reverts commit 7da4c13be1a2b465ee2ad5aee1215679c65f99e9. --- .github/dependabot.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 593600e0..1bfc0903 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -3,6 +3,8 @@ updates: - package-ecosystem: "pip" directory: "/" insecure-external-code-execution: allow + schedule: + interval: "monthly" open-pull-requests-limit: 100 labels: - "maintenance" @@ -13,6 +15,8 @@ updates: - "*" - package-ecosystem: "github-actions" directory: "/" + schedule: + interval: "monthly" open-pull-requests-limit: 100 labels: - "maintenance" From 5ae0cbdb2fd53565c543e249d47212bf7e72e336 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 30 Aug 2024 15:03:32 +0900 Subject: [PATCH 90/93] Update dependabot.yml --- .github/dependabot.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 1bfc0903..f44b33ba 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -4,7 +4,7 @@ updates: directory: "/" insecure-external-code-execution: allow schedule: - interval: "monthly" + interval: "daily" open-pull-requests-limit: 100 labels: - "maintenance" @@ -16,7 +16,7 @@ updates: - package-ecosystem: "github-actions" directory: "/" schedule: - interval: "monthly" + interval: "daily" open-pull-requests-limit: 100 labels: - "maintenance" From c8a012601668e40c91f2b5465e221779c5cf6f14 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sat, 31 Aug 2024 05:38:08 +0900 Subject: [PATCH 91/93] Update dependabot.yml --- .github/dependabot.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index f44b33ba..87dbac45 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -13,6 +13,8 @@ updates: pip: patterns: - "*" + commit-message: + prefix: "chore" - package-ecosystem: "github-actions" directory: "/" schedule: @@ -25,3 +27,5 @@ updates: actions: patterns: - "*" + commit-message: + prefix: "chore" From 279939cd2e4d6cdd6585d2bcff3b3245ccc9cacb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Oct 2024 09:49:25 +0900 Subject: [PATCH 92/93] chore: bump pydata-sphinx-theme from 0.15.2 to 0.15.4 in the pip group (#414) Bumps the pip group with 1 update: [pydata-sphinx-theme](https://github.com/pydata/pydata-sphinx-theme). Updates `pydata-sphinx-theme` from 0.15.2 to 0.15.4 - [Release notes](https://github.com/pydata/pydata-sphinx-theme/releases) - [Changelog](https://github.com/pydata/pydata-sphinx-theme/blob/main/RELEASE.md) - [Commits](https://github.com/pydata/pydata-sphinx-theme/compare/v0.15.2...v0.15.4) --- updated-dependencies: - dependency-name: pydata-sphinx-theme dependency-type: direct:production update-type: version-update:semver-patch dependency-group: pip ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 86610023..87bd1588 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,7 @@ dynamic = [ "version" ] dependencies = [ - "pydata-sphinx-theme==0.15.2", + "pydata-sphinx-theme==0.15.4", "myst-nb", "sphinx", "sphinx-autobuild", From 246bee0015080c96b59efaa1c3dd05b2a2d0ea94 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Oct 2024 09:52:26 +0900 Subject: [PATCH 93/93] chore: bump the actions group with 2 updates (#413) Bumps the actions group with 2 updates: [peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages) and [actions/add-to-project](https://github.com/actions/add-to-project). Updates `peaceiris/actions-gh-pages` from 3.8.0 to 4.0.0 - [Release notes](https://github.com/peaceiris/actions-gh-pages/releases) - [Changelog](https://github.com/peaceiris/actions-gh-pages/blob/main/CHANGELOG.md) - [Commits](https://github.com/peaceiris/actions-gh-pages/compare/v3.8.0...v4.0.0) Updates `actions/add-to-project` from 1.0.1 to 1.0.2 - [Release notes](https://github.com/actions/add-to-project/releases) - [Commits](https://github.com/actions/add-to-project/compare/v1.0.1...v1.0.2) --- updated-dependencies: - dependency-name: peaceiris/actions-gh-pages dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions - dependency-name: actions/add-to-project dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build-book.yml | 2 +- .github/workflows/main.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-book.yml b/.github/workflows/build-book.yml index e978b3c8..b8dcb7f2 100644 --- a/.github/workflows/build-book.yml +++ b/.github/workflows/build-book.yml @@ -56,7 +56,7 @@ jobs: - name: Push to GitHub Pages # Only push if on main branch if: github.ref == 'refs/heads/main' - uses: peaceiris/actions-gh-pages@v3.8.0 + uses: peaceiris/actions-gh-pages@v4.0.0 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./_build/html diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index aca8ff87..ff60b7bd 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -11,7 +11,7 @@ jobs: steps: - name: Add issue to project id: add-to-project - uses: actions/add-to-project@v1.0.1 + uses: actions/add-to-project@v1.0.2 with: project-url: https://github.com/orgs/pyOpenSci/projects/3 # This is a organization level token so it can be used across all repos in our org