Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-jsonschema for openSUSE:Factory checked in at 2025-08-22 17:46:48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-jsonschema (Old) and /work/SRC/openSUSE:Factory/.python-jsonschema.new.29662 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-jsonschema" Fri Aug 22 17:46:48 2025 rev:53 rq:1300698 version:4.25.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-jsonschema/python-jsonschema.changes 2025-07-27 16:26:21.593977331 +0200 +++ /work/SRC/openSUSE:Factory/.python-jsonschema.new.29662/python-jsonschema.changes 2025-08-22 17:46:54.309766123 +0200 @@ -1,0 +2,7 @@ +Thu Aug 21 04:53:45 UTC 2025 - Johannes Kastl <opensuse_buildserv...@ojkastl.de> + +- update to 4.25.1: + * Fix Validator protocol init to match runtime by @sirosen in + #1396 + +------------------------------------------------------------------- Old: ---- jsonschema-4.25.0.tar.gz New: ---- jsonschema-4.25.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-jsonschema.spec ++++++ --- /var/tmp/diff_new_pack.Zqzjff/_old 2025-08-22 17:46:55.177801849 +0200 +++ /var/tmp/diff_new_pack.Zqzjff/_new 2025-08-22 17:46:55.177801849 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-jsonschema # -# Copyright (c) 2025 SUSE LLC +# Copyright (c) 2025 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -33,7 +33,7 @@ %{?sle15_python_module_pythons} Name: python-jsonschema%{psuffix} -Version: 4.25.0 +Version: 4.25.1 Release: 0 Summary: An implementation of JSON-Schema validation for Python License: MIT ++++++ jsonschema-4.25.0.tar.gz -> jsonschema-4.25.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jsonschema-4.25.0/.github/workflows/ci.yml new/jsonschema-4.25.1/.github/workflows/ci.yml --- old/jsonschema-4.25.0/.github/workflows/ci.yml 2020-02-02 01:00:00.000000000 +0100 +++ new/jsonschema-4.25.1/.github/workflows/ci.yml 2020-02-02 01:00:00.000000000 +0100 @@ -20,11 +20,11 @@ outputs: noxenvs: ${{ steps.noxenvs-matrix.outputs.noxenvs }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: persist-credentials: false - name: Set up uv - uses: astral-sh/setup-uv@bd01e18f51369d5a26f1651c3cb451d3417e3bba + uses: astral-sh/setup-uv@d9e0f98d3fc6adb07d1e3d37f3043649ddad06a1 with: enable-cache: ${{ github.ref_type != 'tag' }} # zizmor: ignore[cache-poisoning] - id: noxenvs-matrix @@ -75,7 +75,7 @@ noxenv: "docs(style)" steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: persist-credentials: false - name: Install dependencies @@ -100,7 +100,7 @@ if: runner.os == 'Windows' && startsWith(matrix.noxenv, 'tests') - name: Set up uv - uses: astral-sh/setup-uv@bd01e18f51369d5a26f1651c3cb451d3417e3bba + uses: astral-sh/setup-uv@d9e0f98d3fc6adb07d1e3d37f3043649ddad06a1 with: enable-cache: true @@ -119,12 +119,12 @@ id-token: write steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: fetch-depth: 0 persist-credentials: false - name: Set up uv - uses: astral-sh/setup-uv@bd01e18f51369d5a26f1651c3cb451d3417e3bba + uses: astral-sh/setup-uv@d9e0f98d3fc6adb07d1e3d37f3043649ddad06a1 with: enable-cache: true diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jsonschema-4.25.0/.github/workflows/zizmor.yml new/jsonschema-4.25.1/.github/workflows/zizmor.yml --- old/jsonschema-4.25.0/.github/workflows/zizmor.yml 2020-02-02 01:00:00.000000000 +0100 +++ new/jsonschema-4.25.1/.github/workflows/zizmor.yml 2020-02-02 01:00:00.000000000 +0100 @@ -15,12 +15,12 @@ steps: - name: Checkout repository - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: persist-credentials: false - name: Install uv - uses: astral-sh/setup-uv@bd01e18f51369d5a26f1651c3cb451d3417e3bba + uses: astral-sh/setup-uv@d9e0f98d3fc6adb07d1e3d37f3043649ddad06a1 - name: Run zizmor 🌈 run: uvx zizmor --format=sarif .github > results.sarif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jsonschema-4.25.0/.pre-commit-config.yaml new/jsonschema-4.25.1/.pre-commit-config.yaml --- old/jsonschema-4.25.0/.pre-commit-config.yaml 2020-02-02 01:00:00.000000000 +0100 +++ new/jsonschema-4.25.1/.pre-commit-config.yaml 2020-02-02 01:00:00.000000000 +0100 @@ -2,7 +2,7 @@ repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v5.0.0 + rev: v6.0.0 hooks: - id: check-ast - id: check-json @@ -16,7 +16,7 @@ args: [--fix, lf] - id: trailing-whitespace - repo: https://github.com/astral-sh/ruff-pre-commit - rev: "v0.12.3" + rev: "v0.12.8" hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jsonschema-4.25.0/CHANGELOG.rst new/jsonschema-4.25.1/CHANGELOG.rst --- old/jsonschema-4.25.0/CHANGELOG.rst 2020-02-02 01:00:00.000000000 +0100 +++ new/jsonschema-4.25.1/CHANGELOG.rst 2020-02-02 01:00:00.000000000 +0100 @@ -1,3 +1,8 @@ +v4.25.1 +======= + +* Fix an incorrect required argument in the ``Validator`` protocol's type annotations (#1396). + v4.25.0 ======= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jsonschema-4.25.0/PKG-INFO new/jsonschema-4.25.1/PKG-INFO --- old/jsonschema-4.25.0/PKG-INFO 2020-02-02 01:00:00.000000000 +0100 +++ new/jsonschema-4.25.1/PKG-INFO 2020-02-02 01:00:00.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.4 Name: jsonschema -Version: 4.25.0 +Version: 4.25.1 Summary: An implementation of JSON Schema validation for Python Project-URL: Homepage, https://github.com/python-jsonschema/jsonschema Project-URL: Documentation, https://python-jsonschema.readthedocs.io/ @@ -164,8 +164,7 @@ Release Information ------------------- -v4.25.0 +v4.25.1 ======= -* Add support for the ``iri`` and ``iri-reference`` formats to the ``format-nongpl`` extra via the MIT-licensed ``rfc3987-syntax``. - They were alread supported by the ``format`` extra. (#1388). +* Fix an incorrect required argument in the ``Validator`` protocol's type annotations (#1396). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jsonschema-4.25.0/jsonschema/protocols.py new/jsonschema-4.25.1/jsonschema/protocols.py --- old/jsonschema-4.25.0/jsonschema/protocols.py 2020-02-02 01:00:00.000000000 +0100 +++ new/jsonschema-4.25.1/jsonschema/protocols.py 2020-02-02 01:00:00.000000000 +0100 @@ -108,10 +108,11 @@ def __init__( self, schema: Mapping | bool, - registry: referencing.jsonschema.SchemaRegistry, + resolver: Any = None, # deprecated format_checker: jsonschema.FormatChecker | None = None, - ) -> None: - ... + *, + registry: referencing.jsonschema.SchemaRegistry = ..., + ) -> None: ... @classmethod def check_schema(cls, schema: Mapping | bool) -> None: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jsonschema-4.25.0/jsonschema/tests/typing/test_all_concrete_validators_match_protocol.py new/jsonschema-4.25.1/jsonschema/tests/typing/test_all_concrete_validators_match_protocol.py --- old/jsonschema-4.25.0/jsonschema/tests/typing/test_all_concrete_validators_match_protocol.py 1970-01-01 01:00:00.000000000 +0100 +++ new/jsonschema-4.25.1/jsonschema/tests/typing/test_all_concrete_validators_match_protocol.py 2020-02-02 01:00:00.000000000 +0100 @@ -0,0 +1,38 @@ +""" +This module acts as a test that type checkers will allow each validator +class to be assigned to a variable of type `type[Validator]` + +The assignation is only valid if type checkers recognize each Validator +implementation as a valid implementer of the protocol. +""" +from jsonschema.protocols import Validator +from jsonschema.validators import ( + Draft3Validator, + Draft4Validator, + Draft6Validator, + Draft7Validator, + Draft201909Validator, + Draft202012Validator, +) + +my_validator: type[Validator] + +my_validator = Draft3Validator +my_validator = Draft4Validator +my_validator = Draft6Validator +my_validator = Draft7Validator +my_validator = Draft201909Validator +my_validator = Draft202012Validator + + +# in order to confirm that none of the above were incorrectly typed as 'Any' +# ensure that each of these assignments to a non-validator variable requires an +# ignore +none_var: None + +none_var = Draft3Validator # type: ignore[assignment] +none_var = Draft4Validator # type: ignore[assignment] +none_var = Draft6Validator # type: ignore[assignment] +none_var = Draft7Validator # type: ignore[assignment] +none_var = Draft201909Validator # type: ignore[assignment] +none_var = Draft202012Validator # type: ignore[assignment] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jsonschema-4.25.0/jsonschema/validators.py new/jsonschema-4.25.1/jsonschema/validators.py --- old/jsonschema-4.25.0/jsonschema/validators.py 2020-02-02 01:00:00.000000000 +0100 +++ new/jsonschema-4.25.1/jsonschema/validators.py 2020-02-02 01:00:00.000000000 +0100 @@ -147,7 +147,7 @@ applicable_validators: _typing.ApplicableValidators = methodcaller( "items", ), -): +) -> type[Validator]: """ Create a new validator class. @@ -511,7 +511,7 @@ Validator.__name__ = Validator.__qualname__ = f"{safe}Validator" Validator = validates(version)(Validator) # type: ignore[misc] - return Validator + return Validator # type: ignore[return-value] def extend( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jsonschema-4.25.0/noxfile.py new/jsonschema-4.25.1/noxfile.py --- old/jsonschema-4.25.0/noxfile.py 2020-02-02 01:00:00.000000000 +0100 +++ new/jsonschema-4.25.1/noxfile.py 2020-02-02 01:00:00.000000000 +0100 @@ -6,6 +6,7 @@ ROOT = Path(__file__).parent PACKAGE = ROOT / "jsonschema" +TYPING_TESTS= ROOT / "jsonschema" / "tests" / "typing" BENCHMARKS = PACKAGE / "benchmarks" PYPROJECT = ROOT / "pyproject.toml" CHANGELOG = ROOT / "CHANGELOG.rst" @@ -128,6 +129,7 @@ "jsonschema", "jsonschema-specifications", "referencing", + "rpds-py", "types-python-dateutil", "--allow-only", @@ -180,6 +182,9 @@ """ session.install("mypy", "types-requests", ROOT) session.run("mypy", "--config", PYPROJECT, PACKAGE) + session.run( + "mypy", "--config", PYPROJECT, "--warn-unused-ignores", TYPING_TESTS, + ) @session(tags=["docs"])