diff --git a/.gitattributes b/.gitattributes index ba919a1..c1044f6 100644 --- a/.gitattributes +++ b/.gitattributes @@ -14,7 +14,8 @@ mkdocs.yml export-ignore mypy.ini export-ignore pyproject.toml export-ignore pyrightconfig.json export-ignore -requirements.txt export-ignore +requirements-* export-ignore +requirements.* export-ignore scripts/ export-ignore stubs/ export-ignore tests/ export-ignore diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 2056ad9..3d954d6 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -26,6 +26,9 @@ jobs: name: ${{ matrix.python-version }} runs-on: ${{ matrix.os }} + env: + UV_SYSTEM_PYTHON: 1 + strategy: matrix: os: ['ubuntu-latest'] @@ -44,7 +47,7 @@ jobs: - name: Install dependencies run: | python -m pip install -U uv - make UV_INSTALL_FLAGS="--system" install + make install-dev - name: Do linting run: | diff --git a/Makefile b/Makefile index 2aca929..4415944 100644 --- a/Makefile +++ b/Makefile @@ -7,9 +7,18 @@ all: install: uv pip install $(UV_INSTALL_FLAGS) -r requirements.txt +.PHONY: install-dev +install-dev: + uv pip install $(UV_INSTALL_FLAGS) -r requirements-dev.txt + .PHONY: pip-compile pip-compile: uv pip compile --upgrade requirements.in -o requirements.txt + uv pip compile --upgrade requirements-dev.in -o requirements-dev.txt + +.PHONY: update-changelog +update-changelog: + git cliff --output=CHANGELOG.md .PHONY: ci-check ci-check: diff --git a/requirements-dev.in b/requirements-dev.in new file mode 100644 index 0000000..b7f9e8e --- /dev/null +++ b/requirements-dev.in @@ -0,0 +1,12 @@ +-r requirements.in + +mypy +ruff>=0.4 + +# ----------- # +# for scripts # +# ----------- # + +tinycss2 +typer>=0.12.3,<1 +typing_extensions diff --git a/requirements-dev.txt b/requirements-dev.txt new file mode 100644 index 0000000..e555ca0 --- /dev/null +++ b/requirements-dev.txt @@ -0,0 +1,33 @@ +# This file was autogenerated by uv via the following command: +# uv pip compile requirements-dev.in -o requirements-dev.txt +click==8.1.7 + # via typer +colorama==0.4.6 + # via click +markdown-it-py==3.0.0 + # via rich +mdurl==0.1.2 + # via markdown-it-py +mypy==1.10.0 + # via -r requirements-dev.in +mypy-extensions==1.0.0 + # via mypy +pygments==2.18.0 + # via rich +rich==13.7.1 + # via typer +ruff==0.4.4 + # via -r requirements-dev.in +shellingham==1.5.4 + # via typer +tinycss2==1.3.0 + # via -r requirements-dev.in +typer==0.12.3 + # via -r requirements-dev.in +typing-extensions==4.11.0 + # via + # -r requirements-dev.in + # mypy + # typer +webencodings==0.5.1 + # via tinycss2 diff --git a/requirements.in b/requirements.in index 5a82380..e69de29 100644 --- a/requirements.in +++ b/requirements.in @@ -1,10 +0,0 @@ -mypy -ruff>=0.3 - -# ----------- # -# for scripts # -# ----------- # - -tinycss2 -typer>=0.12.3,<1 -typing_extensions diff --git a/requirements.txt b/requirements.txt index 8cfab3f..e9aaf47 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,28 +1,2 @@ # This file was autogenerated by uv via the following command: # uv pip compile requirements.in -o requirements.txt -click==8.1.7 - # via typer -colorama==0.4.6 - # via click -markdown-it-py==3.0.0 - # via rich -mdurl==0.1.2 - # via markdown-it-py -mypy==1.9.0 -mypy-extensions==1.0.0 - # via mypy -pygments==2.17.2 - # via rich -rich==13.7.1 - # via typer -ruff==0.3.7 -shellingham==1.5.4 - # via typer -tinycss2==1.2.1 -typer==0.12.3 -typing-extensions==4.11.0 - # via - # mypy - # typer -webencodings==0.5.1 - # via tinycss2