diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a0bb0f2..6f92b10 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -4,7 +4,7 @@ on: "workflow_dispatch" jobs: build: name: "Build" - runs-on: "ubuntu-22.04" + runs-on: "ubuntu-24.04" steps: - name: "Check out repository" uses: "actions/checkout@v4" @@ -23,7 +23,7 @@ jobs: upload: name: "Upload" needs: "build" - runs-on: "ubuntu-22.04" + runs-on: "ubuntu-24.04" environment: "release" permissions: id-token: "write" diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 0be229e..f1c0032 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -11,6 +11,7 @@ jobs: name: "Test Python ${{ matrix.python-version }}" runs-on: "ubuntu-24.04" strategy: + fail-fast: false matrix: python-version: [ "3.9", @@ -36,7 +37,7 @@ jobs: pip install tox - name: "Run tox" run: | - tox -e py3 -- --cov fixity --cov-config .coveragerc --cov-report xml:coverage.xml + tox -e py -- --cov fixity --cov-report xml:coverage.xml - name: "Upload coverage report" if: github.repository == 'artefactual/fixity' uses: "codecov/codecov-action@v4" @@ -56,6 +57,7 @@ jobs: uses: "actions/setup-python@v5" with: python-version: "3.x" + cache: "pip" cache-dependency-path: | requirements.txt requirements-dev.txt diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 1aecdf1..0c824e2 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,12 +1,12 @@ repos: - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.9.1 + rev: v0.11.10 hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix] - id: ruff-format - repo: https://github.com/igorshubovych/markdownlint-cli - rev: v0.43.0 + rev: v0.45.0 hooks: - id: markdownlint exclude: | @@ -22,7 +22,7 @@ repos: (README)\.md ) - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.14.1 + rev: v1.15.0 hooks: - id: mypy additional_dependencies: diff --git a/pyproject.toml b/pyproject.toml index 63224be..0033dce 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -107,7 +107,7 @@ omit = [ [tool.tox] legacy_tox_ini = """ [tox] - envlist = py3{9,10,11,12,13}, linting + envlist = py, linting [testenv] skip_install = true diff --git a/requirements-dev.txt b/requirements-dev.txt index b49a0c8..8b43d48 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -6,49 +6,49 @@ # build==1.2.2.post1 # via pip-tools -certifi==2024.12.14 +certifi==2025.4.26 # via requests -charset-normalizer==3.4.1 +charset-normalizer==3.4.2 # via requests click==8.1.8 # via pip-tools -coverage[toml]==7.6.10 +coverage[toml]==7.8.0 # via # fixity (pyproject.toml) # pytest-cov -exceptiongroup==1.2.2 +exceptiongroup==1.3.0 # via pytest -greenlet==3.1.1 +greenlet==3.2.2 # via sqlalchemy idna==3.10 # via requests -importlib-metadata==8.5.0 +importlib-metadata==8.7.0 # via build -iniconfig==2.0.0 +iniconfig==2.1.0 # via pytest -packaging==24.2 +packaging==25.0 # via # build # pytest pip-tools==7.4.1 # via fixity (pyproject.toml) -pluggy==1.5.0 +pluggy==1.6.0 # via pytest pyproject-hooks==1.2.0 # via # build # pip-tools -pytest==8.3.4 +pytest==8.3.5 # via # fixity (pyproject.toml) # pytest-cov -pytest-cov==6.0.0 +pytest-cov==6.1.1 # via fixity (pyproject.toml) requests==2.32.3 # via fixity (pyproject.toml) -ruff==0.9.1 +ruff==0.11.10 # via fixity (pyproject.toml) -sqlalchemy==2.0.37 +sqlalchemy==2.0.41 # via fixity (pyproject.toml) tomli==2.2.1 # via @@ -56,9 +56,11 @@ tomli==2.2.1 # coverage # pip-tools # pytest -typing-extensions==4.12.2 - # via sqlalchemy -urllib3==2.3.0 +typing-extensions==4.13.2 + # via + # exceptiongroup + # sqlalchemy +urllib3==2.4.0 # via requests wheel==0.45.1 # via pip-tools @@ -66,7 +68,7 @@ zipp==3.21.0 # via importlib-metadata # The following packages are considered to be unsafe in a requirements file: -pip==24.3.1 +pip==25.1.1 # via pip-tools -setuptools==75.8.0 +setuptools==80.8.0 # via pip-tools diff --git a/requirements.txt b/requirements.txt index 0c3f29f..96ddfa2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,19 +4,19 @@ # # pip-compile --allow-unsafe --output-file=requirements.txt pyproject.toml # -certifi==2024.12.14 +certifi==2025.4.26 # via requests -charset-normalizer==3.4.1 +charset-normalizer==3.4.2 # via requests -greenlet==3.1.1 +greenlet==3.2.2 # via sqlalchemy idna==3.10 # via requests requests==2.32.3 # via fixity (pyproject.toml) -sqlalchemy==2.0.37 +sqlalchemy==2.0.41 # via fixity (pyproject.toml) -typing-extensions==4.12.2 +typing-extensions==4.13.2 # via sqlalchemy -urllib3==2.3.0 +urllib3==2.4.0 # via requests