diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 9c71be9..2056ad9 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -43,8 +43,8 @@ jobs: - name: Install dependencies run: | - python -m pip install --upgrade pip wheel - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + python -m pip install -U uv + make UV_INSTALL_FLAGS="--system" install - name: Do linting run: | diff --git a/Makefile b/Makefile index 28bc3e5..2aca929 100644 --- a/Makefile +++ b/Makefile @@ -1,9 +1,15 @@ +UV_INSTALL_FLAGS := + .PHONY: all all: .PHONY: install install: - python -m pip install -U pip -r requirements.txt + uv pip install $(UV_INSTALL_FLAGS) -r requirements.txt + +.PHONY: pip-compile +pip-compile: + uv pip compile --upgrade requirements.in -o requirements.txt .PHONY: ci-check ci-check: diff --git a/pyproject.toml b/pyproject.toml index d008b29..b7926cc 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,6 +3,7 @@ check_untyped_defs = true strict_optional = true mypy_path = 'typings:stubs' +python_version = "3.8" [[tool.mypy.overrides]] module = ["plugin.libs.*", ".vendor.*"] diff --git a/requirements.in b/requirements.in new file mode 100644 index 0000000..69569ac --- /dev/null +++ b/requirements.in @@ -0,0 +1,2 @@ +mypy +ruff>=0.3 diff --git a/requirements.txt b/requirements.txt index 8a2e12d..3918a5a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,8 @@ -# This is an implicit value, here for clarity ---index https://pypi.python.org/simple/ - -mypy -ruff>=0.2 +# This file was autogenerated by uv via the following command: +# uv pip compile requirements.in -o requirements.txt +mypy==1.9.0 +mypy-extensions==1.0.0 + # via mypy +ruff==0.3.7 +typing-extensions==4.11.0 + # via mypy