diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 6b77b0f..c8a049f 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -6,30 +6,30 @@ name: Python on: push: branches: - - "**" + - '**' paths: - - ".github/workflows/python.yml" - - "**.py" - - "**.pyi" - - "Makefile" + - '.github/workflows/python.yml' + - '**.py' + - '**.pyi' + - 'Makefile' pull_request: branches: - - "**" + - '**' paths: - - ".github/workflows/python.yml" - - "**.py" - - "**.pyi" - - "Makefile" + - '.github/workflows/python.yml' + - '**.py' + - '**.pyi' + - 'Makefile' jobs: job_lint: - name: Linting (Python ${{ matrix.python-version }}) + name: ${{ matrix.python-version }} runs-on: ${{ matrix.os }} strategy: matrix: - os: ["ubuntu-latest"] - python-version: ["3.8"] + os: ['ubuntu-latest'] + python-version: ['3.8'] steps: - uses: actions/checkout@v4 @@ -37,15 +37,15 @@ jobs: submodules: recursive - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - 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 - name: Do linting run: | - make ci-check + make UV_INSTALL_FLAGS="--system" \ + install ci-check diff --git a/Makefile b/Makefile index 3ecaf9a..2aca929 100644 --- a/Makefile +++ b/Makefile @@ -1,17 +1,28 @@ +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: + @echo "========== check: mypy ==========" mypy -p plugin + @echo "========== check: ruff (lint) ==========" ruff check --diff . + @echo "========== check: ruff (format) ==========" ruff format --diff . .PHONY: ci-fix ci-fix: + @echo "========== fix: ruff (lint) ==========" ruff check --fix . + @echo "========== fix: ruff (format) ==========" ruff format . diff --git a/requirements.in b/requirements.in new file mode 100644 index 0000000..870367d --- /dev/null +++ b/requirements.in @@ -0,0 +1,2 @@ +mypy +ruff>=0.2 diff --git a/requirements.txt b/requirements.txt index 8a2e12d..5de273d 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.4 +typing-extensions==4.10.0 + # via mypy