Skip to content

Bump jsonschema from 0.28.3 to 0.50.0 - #10

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/jsonschema-0.50.0
Open

Bump jsonschema from 0.28.3 to 0.50.0#10
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/jsonschema-0.50.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 24, 2026

Copy link
Copy Markdown

Bumps jsonschema from 0.28.3 to 0.50.0.

Release notes

Sourced from jsonschema's releases.

[Python] Release 0.50.0

Added

  • CanonicalSchema.union and CanonicalSchema.subtract.
  • canonical.UnsupportedResult, raised where the canonical form does not support a set operation's result.
  • canonical.IncompatibleOperands where both operands read # and it names a different document on each side.
  • canonical.Containment, canonical.Satisfiability, canonical.Distinctness and canonical.CanonicalKind: the possible answers of covers(), satisfiability(), kind and ArrayView.distinctness.

Changed

  • CanonicalSchema.is_satisfiable() is now CanonicalSchema.satisfiability(), answering with the canonical.Satisfiability members YES, NO or UNKNOWN - YES wherever a value can be exhibited, not only for the forms listing their members.
  • CanonicalSchema.covers() decides through the difference as well: NO where the argument keeps values the receiver rejects, YES where nothing is left over.
  • CanonicalSchema.is_subset_of() is now CanonicalSchema.covers(), answering with the canonical.Containment members YES, NO or UNKNOWN for whether the receiver admits every value the argument admits.
  • CanonicalSchema.kind and ArrayView.distinctness answer with the canonical.CanonicalKind and canonical.Distinctness members instead of strings.
  • CanonicalSchema.negate() raises where it used to return None.
  • canonical.UnmodeledOperand is now canonical.UnsupportedOperand, and means only that an operand is a Raw pass-through.

Fixed

  • Combining nodes of two different documents repointing a $ref to # at the combined result instead of the document it was written in, including one named by a definition the result keeps.
  • Intersecting a $ref whose target is true or false, which crashed the interpreter.
  • A key constraint left un-narrowed once a run is out of intersections, which crashed the interpreter on the next read of it.
  • CanonicalSchema.covers() answering UNKNOWN for a schema against itself, where that schema is a $ref.
  • CanonicalSchema.union() keeping a $ref beside the schema it names, where the other three operations read through it.
  • CanonicalSchema.covers() and CanonicalSchema.subtract() cancelling two nodes written the same way whose # names a different document.
  • Two results accepting the same values comparing unequal over the part of their documents neither reads.
  • additionalProperties reaching a key the pattern map matches when a finite key constraint closes the map, which dropped values both operands accept.
  • A recursive definition stopping every other pointer in the document from being read through.
  • One $defs entry read past a wider schema written out at every use, rather than kept as the pointer it was.
  • Set operations rejecting one document canonicalized twice, and a pruned result rejected against the document it came from, where the maps resolve every shared reference the same way.
  • Set operations comparing a $ref as a pointer instead of reading through it, so a schema written with a $ref did not cancel against the same schema written out.
  • CanonicalSchema.subtract() asking for a complement where the difference is one of the operands or empty, declining on schemas it can subtract.
  • Set operations keeping $defs entries the result no longer references, which then showed up in the emitted schema.
  • CanonicalSchema.union() declining over an approximated intersection, where the union itself is exact.

[Ruby] Release 0.50.0

  • CanonicalSchema#union and CanonicalSchema#subtract.
  • JSONSchema::Canonical::UnsupportedResult, raised where the canonical form does not support a set operation's result.
  • JSONSchema::Canonical::IncompatibleOperands where both operands read # and it names a different document on each side.
  • JSONSchema::Canonical::Containment, Satisfiability, Distinctness and Kind: named constants for the symbols covers, satisfiability, kind and ArrayView#distinctness return, each with an ALL list.

Changed

  • CanonicalSchema#satisfiable? is now CanonicalSchema#satisfiability, answering :yes, :no, or :unknown - :yes wherever a value can be exhibited, not only for the forms listing their members.
  • CanonicalSchema#covers decides through the difference as well: :no where the argument keeps values the receiver rejects, :yes where nothing is left over.
  • CanonicalSchema#is_subset_of is now CanonicalSchema#covers, answering :yes, :no, or :unknown for whether the receiver admits every value the argument admits.
  • CanonicalSchema#negate raises where it used to return nil.
  • JSONSchema::Canonical::UnmodeledOperand is now JSONSchema::Canonical::UnsupportedOperand, and means only that an operand is a Raw pass-through.

Fixed

... (truncated)

Changelog

Sourced from jsonschema's changelog.

[0.50.0] - 2026-08-20

Added

  • CanonicalSchema::union and CanonicalSchema::subtract.
  • CanonicalizationError::UnsupportedResult, reported where the canonical form does not support a set operation's result.
  • OperandMismatch::DocumentRoots, reported where both operands read # and it names a different document on each side.
  • CLI: jsonschema validate -i INSTANCE without a SCHEMA argument validates each instance against the schema named in its own $schema property. #1470

Changed

  • CanonicalSchema::is_satisfiable is now CanonicalSchema::satisfiability, answering Yes, No, or Unknown - Yes wherever a value can be exhibited, not only for the forms listing their members.
  • CanonicalSchema::covers decides through the difference as well: No where the argument keeps values the receiver rejects, Yes where nothing is left over.
  • CanonicalSchema::is_subset_of is now CanonicalSchema::covers, answering Yes, No, or Unknown for whether the receiver admits every value the argument admits.
  • CanonicalSchema::negate returns Result rather than Option.
  • CanonicalizationError::UnmodeledOperand is now CanonicalizationError::UnsupportedOperand, and means only that an operand is a Raw pass-through.
  • A conjunction over a $ref folds through the body it names, so canonicalizing a document and combining its parts with the set operations reach one form; a document holding a reference cycle keeps the form it had.

Fixed

  • Combining nodes of two different documents repointing a $ref to # at the combined result instead of the document it was written in, including one named by a definition the result keeps.
  • Intersecting a $ref whose target is true or false, which panicked.
  • A key constraint left un-narrowed once a run is out of intersections, which panicked on the next read of it.
  • CanonicalSchema::covers answering Unknown for a schema against itself, where that schema is a $ref.
  • CanonicalSchema::union keeping a $ref beside the schema it names, where the other three operations read through it.
  • CanonicalSchema::covers and CanonicalSchema::subtract cancelling two nodes written the same way whose # names a different document.
  • Two results accepting the same values comparing unequal over the part of their documents neither reads.
  • additionalProperties reaching a key the pattern map matches when a finite key constraint closes the map, which dropped values both operands accept.
  • A recursive definition stopping every other pointer in the document from being read through.
  • One $defs entry read past a wider schema written out at every use, rather than kept as the pointer it was.
  • Set operations rejecting one document canonicalized twice, and a pruned result rejected against the document it came from, where the maps resolve every shared reference the same way.
  • Set operations comparing a $ref as a pointer instead of reading through it, so a schema written with a $ref did not cancel against the same schema written out.
  • CanonicalSchema::subtract asking for a complement where the difference is one of the operands or empty, declining on schemas it can subtract.
  • Set operations keeping $defs entries the result no longer references, which then showed up in the emitted schema.
  • CanonicalSchema::union declining over an approximated intersection, where the union itself is exact.
  • Resolving a reference against a base URI that carries a fragment, which happens when a Draft 4-7 $id contains one. #1473
  • unevaluatedProperties and unevaluatedItems ignoring an $id on a subschema they walk through, so a relative $ref inside it resolved against the enclosing resource.

Performance

  • CLI: ~25% less CPU per run from compile-time meta-schema validators.

[0.49.9] - 2026-08-09

Added

  • Canonicalization of a oneOf whose branches name object targets a required constant tells apart, which degrades to a union.

Changed

... (truncated)

Commits
  • d4cfa64 chore(ruby): Release 0.50.0
  • e71e1a9 chore(python): Release 0.50.0
  • b99175f chore(rust): Release 0.50.0
  • 7595af9 feat: Extend canonicalization API
  • 35cac76 fix: unevaluatedProperties and unevaluatedItems ignoring an $id on a su...
  • b57dbaf build(deps): bump taiki-e/install-action from 2.85.13 to 2.86.2
  • e52d5cb build(deps): update hegeltest requirement from 0.29 to 0.30
  • 2360146 build(deps): bump taiki-e/install-action from 2.85.11 to 2.85.13
  • d35b2a4 build(deps): bump astral-sh/setup-uv from 9.0.0 to 10.0.1
  • 89f6856 build(deps): update fraction requirement from 0.15 to 0.16
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [jsonschema](https://github.com/Stranger6667/jsonschema) from 0.28.3 to 0.50.0.
- [Release notes](https://github.com/Stranger6667/jsonschema/releases)
- [Changelog](https://github.com/Stranger6667/jsonschema/blob/master/CHANGELOG.md)
- [Commits](Stranger6667/jsonschema@rust-v0.28.3...ruby-v0.50.0)

---
updated-dependencies:
- dependency-name: jsonschema
  dependency-version: 0.50.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Aug 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants