diff --git a/README.md b/README.md index a5f2c01..5b14093 100644 --- a/README.md +++ b/README.md @@ -3,12 +3,14 @@ This is a little TUI based on [Textual] for entering new Teilchen and for searching for existing Teilchen. Data is kept in a sqlite database. -It is not yet usable. +It is not yet usable. It has tests. ## Running tests ```sh uv run pytest tests.py +# or if you have just +just test ``` ## Observing the app's console @@ -25,15 +27,18 @@ Since we use uv, the incantation is a bit different from the [official documenat In one terminal: -```shell +```sh uv run textual console +# or if you have just +just console ``` And in the other: -```shell -# run,textual,run! ;) +```sh uv run textual run --dev src/teilchensammler_cli/__init__.py +# or if you have just +just run-console ``` ## Developing diff --git a/justfile b/justfile index 5e9a45e..cd5fcf2 100644 --- a/justfile +++ b/justfile @@ -1,3 +1,6 @@ +the_app := "teilchensammler_cli.main" +uv_export_options := "--frozen --format requirements.txt --quiet --no-install-project" + [private] default: @just --list @@ -15,17 +18,15 @@ build: console: uv run textual console -the_app := "teilchensammler_cli.main" # run app with logs going to console -run-dev: +run-console: 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 @@ -36,7 +37,7 @@ update-deps: uv lock --upgrade uv sync -# Run tests, args are passed-through to pytest +# Run tests, ARGS are passed-through to pytest test *ARGS: uv run pytest tests.py {{ ARGS }} @@ -44,30 +45,21 @@ test *ARGS: 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 +lint: + uv run ruff check . + markdownlint-cli2 . # remove artefacts from dist/ clean: rm dist/*.whl dist/*.tar.gz + # consider xargs, or something that won't explode on many files # 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 - # upload to package registry - # send newsletter - # take over the world +[private] +bump segment: + uv version --bump {{ segment }}