NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1073 most downloaded on PyPI
Typing stubs for jsonschema
Last release 4 months ago
18 May 2026
Release timing varies
gaps range from 9 days to 3 months
Nearly every release is documented
notes for 59 of the last 60 stable releases
2 versions withdrawn
withdrawn after publishing
5 years old
70 releases · first in 2021
One column per quarter.
Upgrade black to 26.5.0
Upgrade black to 26.5.0 (#15801)
Import some items from typing instead of typing_extensions
Import some items from typing instead of typing_extensions (#15711)
Part of #13782
Use dashes instead of underscores for METADATA.toml field names
Use dashes instead of underscores for METADATA.toml field names (#15614)
Rename requires to dependencies in METADATA files
[jsonschema] Fix RefResolver store parameter type
[jsonschema] Fix RefResolver store parameter type (#15542)
Change URIDict to use MutableMapping[str, Any] as the value type throughout, consistent with the actual runtime behavior where store values are schema documents (JSON objects), not plain strings.
[jsonschema] Mark RefResolver as deprecated
[jsonschema] Mark RefResolver as deprecated (#15546)
[jsonschema] Fix type _Error.validator
[jsonschema] Fix type _Error.validator (#15353)
[stubsabot] Bump jsonschema to ~=4.26.0
[stubsabot] Bump jsonschema to ~=4.26.0 (#15231)
Release: https://pypi.org/pypi/jsonschema/4.26.0 Homepage: https://github.com/python-jsonschema/jsonschema Repository: https://github.com/python-jsonschema/jsonschema Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/jsonschema Changelog: https://github.com/python-jsonschema/jsonschema/blob/main/CHANGELOG.rst Diff: https://github.com/python-jsonschema/jsonschema/compare/v4.25.1...v4.26.0
Stubsabot analysis of the diff between the two releases:
jsonschema/benchmarks/import_benchmark.py.jsonschema/_format.py, jsonschema/_types.py, jsonschema/_typing.py, jsonschema/validators.py.If stubtest fails for this PR:
Note that you will need to close and re-open the PR in order to trigger CI
Co-authored-by: stubsabot <>
[jsonschema] _Error.context cannot be None
[jsonschema] _Error.context cannot be None (#14853)
Stubtest: Ignore attrs-generated props
Stubtest: Ignore attrs-generated props (#14845)
Add __slots__ to third-party packages using stubdefaulter
Add slots to third-party packages using stubdefaulter (#14619)
Update jsonschema stubs to track latest changes
Update jsonschema stubs to track latest changes (#14591)
Mark stub-only private symbols as @type_check_only in third-party stubs
Mark stub-only private symbols as @type_check_only in third-party stubs (#14545)
[stubsabot] Bump jsonschema to 4.25.*
[stubsabot] Bump jsonschema to 4.25.* (#14430)
Update jsonschema.protocols.Validator.__init__
Bump jsonschema to 4.24.*
Bump jsonschema to 4.24.* (#14166)
Replace Incomplete | None = None in third party stubs
Replace Incomplete | None = None in third party stubs (#14063)
Unpin webcolors in jsonschema
Unpin webcolors in jsonschema (#13215)
Use Generator instead of Iterator for 3rd-party context managers
Use Generator instead of Iterator for 3rd-party context managers (#12481)
[jsonschema] Update to 4.23.*
[jsonschema] Update to 4.23.* (#12301)
Ensure stubtest gets an older version of webcolors when testing jsonschema in CI
Ensure stubtest gets an older version of webcolors when testing jsonschema in CI (#12115)
[stubsabot] Bump jsonschema to 4.22.*
[stubsabot] Bump jsonschema to 4.22.* (#11850)
Release: https://pypi.org/pypi/jsonschema/4.22.0 Homepage: https://github.com/python-jsonschema/jsonschema Repository: https://github.com/python-jsonschema/jsonschema Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/jsonschema Changelog: https://github.com/python-jsonschema/jsonschema/blob/main/CHANGELOG.rst Diff: https://github.com/python-jsonschema/jsonschema/compare/v4.21.1...v4.22.0
Stubsabot analysis of the diff between the two releases:
jsonschema/benchmarks/const_vs_enum.py, jsonschema/benchmarks/useless_applicator_schemas.py, jsonschema/benchmarks/useless_keywords.py.jsonschema/_format.py, jsonschema/_types.py, jsonschema/_utils.py, jsonschema/exceptions.py, jsonschema/protocols.py, jsonschema/validators.py.Remove bare Incomplete annotations in third-party stubs
Remove bare Incomplete annotations in third-party stubs (#11671)
Use PEP 570 syntax in third party stubs
Use PEP 570 syntax in third party stubs (#11554)
[stubsabot] Bump jsonschema to 4.21.*
[stubsabot] Bump jsonschema to 4.21.* (#11281)
Drop support for Python 3.7
Drop support for Python 3.7 (#11234)
[jsonschema] Bump to 4.20.* (#11036) Co-authored-by: Alex Waygood
[jsonschema] Bump to 4.20.* (#11036)
Co-authored-by: Alex Waygood Alex.Waygood@Gmail.com
https://github.com/python-jsonschema/jsonschema/commit/daa40b3eaf55f72f6154f9a48e557d895617b24a
jsonschema: move addionalItems (#10955)
https://github.com/python-jsonschema/jsonschema/commit/daa40b3eaf55f72f6154f9a48e557d895617b24a
Fixes #10953
Declare that types-jsonschema requires Python 3.8+
Declare that types-jsonschema requires Python 3.8+ (#10775)
Nothing published for this version
Nothing published for this version
Bump jsonschema to 4.19.* (#10583) Co-authored-by: Alex Waygood
Bump jsonschema to 4.19.* (#10583)
Co-authored-by: Alex Waygood Alex.Waygood@Gmail.com
Add an upstream_repository field to METADATA.toml
Add an upstream_repository field to METADATA.toml (#10487)
Closes: #10478
[jsonschema] Use Incomplete instead of Any
[jsonschema] Use Incomplete instead of Any (#10451)
Replace Any with Incomplete
Add partial_stub metadata field
Add partial_stub metadata field (#10157)
Add defaults for third-party stubs I-L
Add defaults for third-party stubs I-L (#9955)
Stubtest settings: change ignore_missing_stub default to false
Stubtest settings: change ignore_missing_stub default to false (#9779)
If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work.
Use typing_extensions.Self instead of _typeshed.Self
Use typing_extensions.Self instead of _typeshed.Self (#9702)
Enable flake8-pyi's Y037
Enable flake8-pyi's Y037 (#9686)
Replace Any with Incomplete in many places
Replace Any with Incomplete in many places (#9558)
Update jsonschema protocols.pyi
Update jsonschema protocols.pyi (#9295)
These take in an instance, which need not be a JSON object. They could for example be arrays. See this example on the jsonschema docs.
>>> schema = {"maxItems" : 2}
>>> Draft202012Validator(schema).is_valid([2, 3, 4])
False
Annotate known magic-method return types
Annotate known magic-method return types (#9131)
Bump jsonschema to 4.17.*
Bump jsonschema to 4.17.* (#9066)
Fix RefResolver's context manager return types
Fix RefResolver's context manager return types (#8898)
Bump mypy to 0.981
Bump mypy to 0.981 (#8796)
[stubsabot] Bump jsonschema to 4.16.*
[stubsabot] Bump jsonschema to 4.16.* (#8748)
Release: https://pypi.org/project/jsonschema/4.16.0/ Homepage: https://github.com/python-jsonschema/jsonschema Changelog: https://github.com/python-jsonschema/jsonschema/blob/main/CHANGELOG.rst Diff: https://github.com/python-jsonschema/jsonschema/compare/v4.15.0...v4.16.0
jsonschema._format: update some annotations to match upstream
jsonschema._format: update some annotations to match upstream (#8673)
[stubsabot] Bump jsonschema to 4.15.*
[stubsabot] Bump jsonschema to 4.15.* (#8665)
Co-authored-by: stubsabot <>
[stubsabot] Bump jsonschema to 4.14.*
[stubsabot] Bump jsonschema to 4.14.* (#8619)
Improve annotation of jsonschema.validators.create
Improve annotation of jsonschema.validators.create (#8608)
[stubsabot] Bump jsonschema to 4.12.*
[stubsabot] Bump jsonschema to 4.12.* (#8560)
Co-authored-by: stubsabot <>
[stubsabot] Bump jsonschema to 4.9.*
[stubsabot] Bump jsonschema to 4.9.* (#8491)
[stubsabot] Bump jsonschema to 4.9.*
Remove jsonschema._reflect
Co-authored-by: stubsabot <> Co-authored-by: Sebastian Rittau srittau@rittau.biz
[stubsabot] Bump jsonschema to 4.7.*
[stubsabot] Bump jsonschema to 4.7.* (#8299)
Bump jsonschema to 4.6.* (#8161) Co-authored-by: AlexWaygood
Bump jsonschema to 4.6.* (#8161)
Co-authored-by: AlexWaygood alex.waygood@gmail.com
jsonschema: mark type alias explicitly
jsonschema: mark type alias explicitly (#8024)
Fix exception types for jsonschema._format
Fix exception types for jsonschema._format (#7990)
The annotated type for the raises argument on format checkers was
Exception | tuple[Exception, ...]
when it should read
type[Exception] | tuple[type[Exception], ...]
Co-authored-by: Sebastian Rittau srittau@rittau.biz
Fix jsonschema exception str|int containers
Fix jsonschema exception str|int containers (#7981)
schema_path, relative_schema_path, and absolute_schema_path are all
(related) attributes of jsonschema errors which contain str | int
but were accidentally annotated as containing str. Fix them for
accuracy.
jsonschema: {relative,absolute}_path can hold ints
jsonschema: {relative,absolute}_path can hold ints (#7980)
Flesh out more of jsonschema stubs
Flesh out more of jsonschema stubs (#7950)
Apply more detailed annotations to the format module and most of the exceptions module.
Third-party stubs: import from collections.abc where possible
Third-party stubs: import from collections.abc where possible (#7637)
Your coding agent can read these notes before it upgrades. Set up the MCP server →