diff --git a/justfile b/justfile index c7b587a..5e9a45e 100644 --- a/justfile +++ b/justfile @@ -1,10 +1,17 @@ +[private] default: @just --list +# create venv, install dependencies setup: uv sync + # install the other tools: prek, mise -# run Textual's console +# builds a package (tgz and whl) +build: + uv build + +# console to observe log messages console: uv run textual console @@ -14,42 +21,50 @@ the_app := "teilchensammler_cli.main" run-dev: uv run textual run --dev {{ the_app }} +# run the app run: uv run python -m {{ the_app }} uv_export_options := "--frozen --format requirements.txt --quiet --no-install-project" +# export dependencies into requirements files exports-deps: uv export {{ uv_export_options }} --output-file requirements.txt uv export {{ uv_export_options }} --output-file requirements.dev.txt --only-dev -install-deps: setup - +# Update dependencies to new versions update-deps: uv lock --upgrade uv sync +# Run tests, args are passed-through to pytest test *ARGS: uv run pytest tests.py {{ ARGS }} +# run tests and create coverage reports coverage: uv run pytest tests.py --cov=src/ --cov-report term --cov-report xml --cov-report html --cov-config pyproject.toml +# lint python code lint-python: uv run ruff check . +# lint markdown documents lint-markdown: markdownlint-cli2 . +# run python and markdown lint: lint-python lint-markdown # remove artefacts from dist/ clean: rm dist/*.whl dist/*.tar.gz +# pretend we are CI ci: lint prek run --all-files # woodpecker-cli exec "whatever" +# create a new realese [CURRENTLY USELESS] release: @echo remember to git tag and update pyproject.toml uv build