Instalación y Release¶
Instalación¶
Una vez publicado en PyPI, instalá el paquete con:
Instalación estándar
python -m pip install jano
Para usar inputs de Polars directamente, instalá el extra opcional:
Extra opcional de Polars
python -m pip install "jano[polars]"
Para desarrollo local, instalá el proyecto en modo editable con dependencias de desarrollo:
Setup de desarrollo
python -m pip install -e ".[dev]"
Versionado¶
Jano expone su versión pública a través de jano.__version__. La versión de distribución sale de jano/_version.py, de modo que la versión de runtime y la metadata del paquete publicado permanezcan alineadas.
Flujo de release¶
El repositorio incluye un workflow dedicado de GitHub Actions para publicación en PyPI:
Actualizá
jano/_version.pya la versión de release.Verificá localmente:
Chequeos de release
python -m pytest -q python -m build python -m twine check dist/*
Commit y push de los cambios de release.
Creá y pusheá un tag Git que coincida con la versión, por ejemplo:
Tag de release
git tag v0.4.0 git push origin v0.4.0
El workflow
Publishconstruye los artefactos, los valida contwine checky publica en PyPI vía trusted publishing.
DOI en Zenodo¶
Jano incluye metadata para Zenodo en .zenodo.json y metadata de citación en
CITATION.cff.
Para acuñar un DOI del proyecto:
Iniciá sesión en Zenodo con la cuenta de GitHub que posee o administra este repositorio.
Abrí la página de integración GitHub de Zenodo.
Hacé click en
Sync now.Habilitá el repositorio
marmurar/jano.Creá una nueva GitHub Release para el próximo tag de versión.
Esperá a que Zenodo archive la release y asigne el DOI.
Agregá el badge y la URL del DOI generado al README y a la documentación Sphinx.
DOI actual de Zenodo: https://doi.org/10.5281/zenodo.20301006.
Configuración de PyPI¶
Para que el workflow publique correctamente, PyPI debe confiar en este repositorio de GitHub como publisher del proyecto jano. Eso se configura una sola vez en las settings del proyecto en PyPI; luego las releases etiquetadas pueden publicarse sin guardar API tokens en GitHub Secrets.