Saltar a contenido

Comandos y herramientas ⚒

Los comandos listados a continuación están definidos en el archivo pyproject.toml, en el apartado de tool.poetry-exec-plugin.commands.

Nota

Recomendamos leer la documentación de poetry-exec-plugin para más información.

[tool.poetry-exec-plugin.commands]
serve = "uvicorn main:fastapp --reload --port 6969"
help = "echo -e 'utilice poetry exec COMMAND'"
fmt = "black main.py app/ tools/"
fix = "isort --profile black --atomic main.py ./app ./tools && black main.py app/ tools/"
sort = "isort --profile black --atomic main.py ./app ./tools"
export-req = "python tools/gen_req.py"
lint = "ruff check main.py app/"
lint-fix = "ruff check --fix app/"
crud = "python tools/crud_gen.py"
docs-gen = "python tools/gen_pages.py"
docs-serve = "mkdocs serve"
docs-build = "python tools/gen_pages.py && mkdocs build"
test-all= "pytest"
test-only-back = "pytest -m backend"
test-no-back = "pytest -m 'not backend'"
fix-test = "isort --profile black --atomic ./tests && black tests/"
check-sec = "bandit -c pyproject.toml -r ./"

Iniciar el servidor web 🤠

$ poetry exec serve

Organizar y formatear el código fuente 🚦

$ poetry exec fix

las reglas para black e isort están definidas en el archivo pyproject.toml, en el apartado de tool.black y tool.isort respectivamente.

Revisar errores (lint) 🚑

Para tener en cuenta

Este comando utiliza internamente a ruff, Un linter para Python extremadamente rápido, escrito en Rust. Se recomienda realizar un commit y guardar todos los cambios, antes de realizar esta operación.

$ poetry exec lint

Corregir automáticamente (si es posible).

$ poetry exec lint-fix

las reglas para ruff están definidas en el archivo .ruff.toml, ubicado en la raiz del proyecto.

Crear un CRUD básico 🕹

$ poetry exec crud

Generar un archivo requirements.txt 🔞

Este comando incluye todas las dependencias del proyecto, en el apartado de tool.poetry.dependencies y tool.poetry.group.*.dependencies.

Importante

El comando citado a continuación, creará un archivo llamado requirements-dev.txt.

$ poetry exec export-req

revisa la sección [tool.callisto] en el archivo pyproject.toml, para definir configuraciones adicionales.

Construir la documentación 📚

Organizar todo el apartado de referencias del código fuente.

$ poetry exec docs-gen

Construir este sitio

$ poetry exec docs-build 

el sitio construido se encontrará en la capeta dist/site.

Ejecutar las pruebas 🚔

$ poetry exec test-all

Ejecutar un chequeo de seguridad 🔍

Bandit es una herramienta diseñada para encontrar problemas de seguridad comunes en el código Python.

$ poetry exec check-sec