diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e8f87e8..935e20f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,9 +18,9 @@ jobs: outputs: noxenvs: ${{ steps.noxenvs-matrix.outputs.noxenvs }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Set up uv - uses: astral-sh/setup-uv@v5 + uses: astral-sh/setup-uv@v7 with: enable-cache: true - id: noxenvs-matrix @@ -40,7 +40,7 @@ jobs: noxenv: ${{ fromJson(needs.list.outputs.noxenvs) }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Install dependencies run: > sudo apt-get update && @@ -50,7 +50,7 @@ jobs: run: brew install enchant if: runner.os == 'macOS' && startsWith(matrix.noxenv, 'docs') - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: | 3.11 @@ -59,7 +59,7 @@ jobs: allow-prereleases: true - name: Set up uv - uses: astral-sh/setup-uv@v5 + uses: astral-sh/setup-uv@v7 with: enable-cache: true @@ -78,9 +78,9 @@ jobs: id-token: write steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Set up uv - uses: astral-sh/setup-uv@v5 + uses: astral-sh/setup-uv@v7 with: enable-cache: true diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index b29ea18..097ed88 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,6 +1,6 @@ repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v5.0.0 + rev: v6.0.0 hooks: - id: check-ast - id: check-docstring-first @@ -14,14 +14,16 @@ repos: args: [--fix, lf] - id: trailing-whitespace - repo: https://github.com/astral-sh/ruff-pre-commit - rev: "v0.9.1" + rev: "v0.14.9" hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix] - - repo: https://github.com/PyCQA/isort - rev: 5.13.2 + - repo: https://github.com/psf/black-pre-commit-mirror + rev: 25.12.0 hooks: - - id: isort + - name: black + id: black + args: ["--line-length", "79"] - repo: https://github.com/pre-commit/mirrors-prettier rev: "v4.0.0-alpha.8" hooks: diff --git a/docs/conf.py b/docs/conf.py index ba105a0..f3524e8 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -50,7 +50,8 @@ def entire_domain(host): intersphinx_mapping = { "jsonschema": ( - "https://python-jsonschema.readthedocs.io/en/latest/", None, + "https://python-jsonschema.readthedocs.io/en/latest/", + None, ), "packaging": ("https://packaging.python.org/", None), "python": ("https://docs.python.org/", None), diff --git a/docs/requirements.txt b/docs/requirements.txt index abf36ac..04666da 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,48 +1,53 @@ # This file was autogenerated by uv via the following command: # uv pip compile --output-file /Users/julian/Development/sphinx-json-schema-spec/docs/requirements.txt docs/requirements.in +accessible-pygments==0.0.5 + # via furo alabaster==1.0.0 # via sphinx -babel==2.16.0 +babel==2.17.0 # via sphinx -beautifulsoup4==4.12.3 +beautifulsoup4==4.14.2 # via furo -certifi==2024.12.14 +certifi==2025.10.5 # via requests -charset-normalizer==3.4.1 +charset-normalizer==3.4.4 # via requests docutils==0.21.2 # via sphinx -furo==2024.8.6 +furo==2025.9.25 # via -r docs/requirements.in -idna==3.10 +idna==3.11 # via requests imagesize==1.4.1 # via sphinx -jinja2==3.1.5 +jinja2==3.1.6 # via sphinx -lxml==5.3.0 +lxml==6.0.2 # via sphinx-json-schema-spec -markupsafe==3.0.2 +markupsafe==3.0.3 # via jinja2 -packaging==24.2 +packaging==25.0 # via sphinx -pyenchant==3.3.0rc1 +pyenchant==3.3.0 # via # -r docs/requirements.in # sphinxcontrib-spelling -pygments==2.19.1 +pygments==2.19.2 # via + # accessible-pygments # furo # sphinx -requests==2.32.3 +requests==2.32.5 # via # sphinx # sphinxcontrib-spelling -snowballstemmer==2.2.0 +roman-numerals-py==3.1.0 + # via sphinx +snowballstemmer==3.0.1 # via sphinx -soupsieve==2.6 +soupsieve==2.8 # via beautifulsoup4 -sphinx==8.1.3 +sphinx==8.2.3 # via # -r docs/requirements.in # furo @@ -68,7 +73,9 @@ sphinxcontrib-serializinghtml==2.0.0 # via sphinx sphinxcontrib-spelling==8.0.1 # via -r docs/requirements.in -sphinxext-opengraph==0.9.1 +sphinxext-opengraph==0.13.0 # via -r docs/requirements.in -urllib3==2.3.0 +typing-extensions==4.15.0 + # via beautifulsoup4 +urllib3==2.5.0 # via requests diff --git a/noxfile.py b/noxfile.py index de5c55f..f385768 100644 --- a/noxfile.py +++ b/noxfile.py @@ -40,15 +40,6 @@ def tests(session): session.run("pytest", *session.posargs, PACKAGE) -@session() -def audit(session): - """ - Audit dependencies for vulnerabilities. - """ - session.install("pip-audit", ROOT) - session.run("python", "-m", "pip_audit") - - @session(tags=["build"]) def build(session): """ diff --git a/sphinx_json_schema_spec/__init__.py b/sphinx_json_schema_spec/__init__.py index 5212521..85919a9 100644 --- a/sphinx_json_schema_spec/__init__.py +++ b/sphinx_json_schema_spec/__init__.py @@ -1,6 +1,7 @@ """ Sphinx support for interlinking to the JSON Schema specifications. """ + from contextlib import suppress from datetime import UTC, datetime from importlib import metadata @@ -186,4 +187,5 @@ def _missing_reference(app, env, node, contnod): text = contnod.astext() if node["refexplicit"] else target return nodes.reference(text, text, internal=False, refuri=uri) + return _missing_reference