Skip to main content

A high-performance JSON Schema validator for Python

Project description

jsonschema-rs

Build Version Python versions License Supported Dialects

A high-performance JSON Schema validator for Python.

import jsonschema_rs

schema = {"maxLength": 5}
instance = "foo"

# One-off validation
try:
    jsonschema_rs.validate(schema, "incorrect")
except jsonschema_rs.ValidationError as exc:
    assert str(exc) == '''"incorrect" is longer than 5 characters

Failed validating "maxLength" in schema

On instance:
    "incorrect"'''

# Build & reuse (faster)
validator = jsonschema_rs.validator_for(schema)

# Iterate over errors
for error in validator.iter_errors(instance):
    print(f"Error: {error}")
    print(f"Location: {error.instance_path}")

# Boolean result
assert validator.is_valid(instance)

⚠️ Upgrading from older versions? Check our Migration Guide for key changes.

Highlights

  • 📚 Full support for popular JSON Schema drafts
  • 🌐 Remote reference fetching (network/file)
  • 🔧 Custom format validators
  • ✨ Meta-schema validation for schema documents

Supported drafts

The following drafts are supported:

  • Draft 2020-12
  • Draft 2019-09
  • Draft 7
  • Draft 6
  • Draft 4

You can check the current status on the Bowtie Report.

Limitations

  • No support for arbitrary precision numbers

Installation

To install jsonschema-rs via pip run the following command:

pip install jsonschema-rs

Usage

If you have a schema as a JSON string, then you could pass it to validator_for to avoid parsing on the Python side:

import jsonschema_rs

validator = jsonschema_rs.validator_for('{"minimum": 42}')
...

You can use draft-specific validators for different JSON Schema versions:

import jsonschema_rs

# Automatic draft detection
validator = jsonschema_rs.validator_for({"minimum": 42})

# Draft-specific validators
validator = jsonschema_rs.Draft7Validator({"minimum": 42})
validator = jsonschema_rs.Draft201909Validator({"minimum": 42})
validator = jsonschema_rs.Draft202012Validator({"minimum": 42})

JSON Schema allows for format validation through the format keyword. While jsonschema-rs provides built-in validators for standard formats, you can also define custom format validators for domain-specific string formats.

To implement a custom format validator:

  1. Define a function that takes a str and returns a bool.
  2. Pass it with the formats argument.
  3. Ensure validate_formats is set appropriately (especially for Draft 2019-09 and 2020-12).
import jsonschema_rs

def is_currency(value):
    # The input value is always a string
    return len(value) == 3 and value.isascii()


validator = jsonschema_rs.validator_for(
    {"type": "string", "format": "currency"}, 
    formats={"currency": is_currency},
    validate_formats=True  # Important for Draft 2019-09 and 2020-12
)
validator.is_valid("USD")  # True
validator.is_valid("invalid")  # False

Additional configuration options are available for fine-tuning the validation process:

  • validate_formats: Override the draft-specific default behavior for format validation.
  • ignore_unknown_formats: Control whether unrecognized formats should be reported as errors.
  • base_uri - a base URI for all relative $ref in the schema.

Example usage of these options:

import jsonschema_rs

validator = jsonschema_rs.Draft202012Validator(
    {"type": "string", "format": "date"},
    validate_formats=True,
    ignore_unknown_formats=False
)

# This will validate the "date" format
validator.is_valid("2023-05-17")  # True
validator.is_valid("not a date")  # False

# With ignore_unknown_formats=False, using an unknown format will raise an error
invalid_schema = {"type": "string", "format": "unknown"}
try:
    jsonschema_rs.Draft202012Validator(
        invalid_schema, validate_formats=True, ignore_unknown_formats=False
    )
except jsonschema_rs.ValidationError as exc:
    assert str(exc) == '''Unknown format: 'unknown'. Adjust configuration to ignore unrecognized formats

Failed validating "format" in schema

On instance:
    "unknown"'''

Meta-Schema Validation

JSON Schema documents can be validated against their meta-schemas to ensure they are valid schemas. jsonschema-rs provides this functionality through the meta module:

import jsonschema_rs

# Valid schema
schema = {
    "type": "object",
    "properties": {
        "name": {"type": "string"},
        "age": {"type": "integer", "minimum": 0}
    },
    "required": ["name"]
}

# Validate schema (draft is auto-detected)
assert jsonschema_rs.meta.is_valid(schema)
jsonschema_rs.meta.validate(schema)  # No error raised

# Invalid schema
invalid_schema = {
    "minimum": "not_a_number"  # "minimum" must be a number
}

try:
    jsonschema_rs.meta.validate(invalid_schema)
except jsonschema_rs.ValidationError as exc:
    assert 'is not of type "number"' in str(exc)

Regular Expression Configuration

When validating schemas with regex patterns (in pattern or patternProperties), you can configure the underlying regex engine:

import jsonschema_rs
from jsonschema_rs import FancyRegexOptions, RegexOptions

# Default fancy-regex engine with backtracking limits
# (supports advanced features but needs protection against DoS)
validator = jsonschema_rs.validator_for(
    {"type": "string", "pattern": "^(a+)+$"},
    pattern_options=FancyRegexOptions(backtrack_limit=10_000)
)

# Standard regex engine for guaranteed linear-time matching
# (prevents regex DoS attacks but supports fewer features)
validator = jsonschema_rs.validator_for(
    {"type": "string", "pattern": "^a+$"},
    pattern_options=RegexOptions()
)

# Both engines support memory usage configuration
validator = jsonschema_rs.validator_for(
    {"type": "string", "pattern": "^a+$"},
    pattern_options=RegexOptions(
        size_limit=1024 * 1024,   # Maximum compiled pattern size
        dfa_size_limit=10240      # Maximum DFA cache size
    )
)

The available options:

  • FancyRegexOptions: Default engine with lookaround and backreferences support

    • backtrack_limit: Maximum backtracking steps
    • size_limit: Maximum compiled regex size in bytes
    • dfa_size_limit: Maximum DFA cache size in bytes
  • RegexOptions: Safer engine with linear-time guarantee

    • size_limit: Maximum compiled regex size in bytes
    • dfa_size_limit: Maximum DFA cache size in bytes

This configuration is crucial when working with untrusted schemas where attackers might craft malicious regex patterns.

External References

By default, jsonschema-rs resolves HTTP references and file references from the local file system. You can implement a custom retriever to handle external references. Here's an example that uses a static map of schemas:

import jsonschema_rs

def retrieve(uri: str):
    schemas = {
        "https://example.com/person.json": {
            "type": "object",
            "properties": {
                "name": {"type": "string"},
                "age": {"type": "integer"}
            },
            "required": ["name", "age"]
        }
    }
    if uri not in schemas:
        raise KeyError(f"Schema not found: {uri}")
    return schemas[uri]

schema = {
    "$ref": "https://example.com/person.json"
}

validator = jsonschema_rs.validator_for(schema, retriever=retrieve)

# This is valid
validator.is_valid({
    "name": "Alice",
    "age": 30
})

# This is invalid (missing "age")
validator.is_valid({
    "name": "Bob"
})  # False

Schema Registry

For applications that frequently use the same schemas, you can create a registry to store and reference them efficiently:

import jsonschema_rs

# Create a registry with schemas
registry = jsonschema_rs.Registry([
    ("https://example.com/address.json", {
        "type": "object",
        "properties": {
            "street": {"type": "string"},
            "city": {"type": "string"}
        }
    }),
    ("https://example.com/person.json", {
        "type": "object",
        "properties": {
            "name": {"type": "string"},
            "address": {"$ref": "https://example.com/address.json"}
        }
    })
])

# Use the registry with any validator
validator = jsonschema_rs.validator_for(
    {"$ref": "https://example.com/person.json"},
    registry=registry
)

# Validate instances
assert validator.is_valid({
    "name": "John",
    "address": {"street": "Main St", "city": "Boston"}
})

The registry can be configured with a draft version and a retriever for external references:

import jsonschema_rs

registry = jsonschema_rs.Registry(
    resources=[
        (
            "https://example.com/address.json",
            {}
        )
    ],  # Your schemas
    draft=jsonschema_rs.Draft202012,  # Optional
    retriever=lambda uri: {}  # Optional
)

Error Handling

jsonschema-rs provides detailed validation errors through the ValidationError class, which includes both basic error information and specific details about what caused the validation to fail:

import jsonschema_rs

schema = {"type": "string", "maxLength": 5}

try:
    jsonschema_rs.validate(schema, "too long")
except jsonschema_rs.ValidationError as error:
    # Basic error information
    print(error.message)       # '"too long" is longer than 5 characters'
    print(error.instance_path) # Location in the instance that failed
    print(error.schema_path)   # Location in the schema that failed

    # Detailed error information via `kind`
    if isinstance(error.kind, jsonschema_rs.ValidationErrorKind.MaxLength):
        assert error.kind.limit == 5
        print(f"Exceeded maximum length of {error.kind.limit}")

For a complete list of all error kinds and their attributes, see the type definitions file

Error Message Masking

When working with sensitive data, you might want to hide actual values from error messages. You can mask instance values in error messages by providing a placeholder:

import jsonschema_rs

schema = {
    "type": "object",
    "properties": {
        "password": {"type": "string", "minLength": 8},
        "api_key": {"type": "string", "pattern": "^[A-Z0-9]{32}$"}
    }
}

# Use default masking (replaces values with "[REDACTED]")
validator = jsonschema_rs.validator_for(schema, mask="[REDACTED]")

try:
    validator.validate({
        "password": "123",
        "api_key": "secret_key_123"
    })
except jsonschema_rs.ValidationError as exc:
    assert str(exc) == '''[REDACTED] does not match "^[A-Z0-9]{32}$"

Failed validating "pattern" in schema["properties"]["api_key"]

On instance["api_key"]:
    [REDACTED]'''

Performance

jsonschema-rs is designed for high performance, outperforming other Python JSON Schema validators in most scenarios:

  • Up to 60-390x faster than jsonschema for complex schemas and large instances
  • Generally 3-7x faster than fastjsonschema on CPython

For detailed benchmarks, see our full performance comparison.

Python support

jsonschema-rs supports CPython 3.8, 3.9, 3.10, 3.11, 3.12, and 3.13.

Acknowledgements

This library draws API design inspiration from the Python jsonschema package. We're grateful to the Python jsonschema maintainers and contributors for their pioneering work in JSON Schema validation.

Support

If you have questions, need help, or want to suggest improvements, please use GitHub Discussions.

Sponsorship

If you find jsonschema-rs useful, please consider sponsoring its development.

Contributing

We welcome contributions! Here's how you can help:

See CONTRIBUTING.md for more details.

License

Licensed under MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jsonschema_rs-0.30.0.tar.gz (1.4 MB view details)

Uploaded Source

Built Distributions

jsonschema_rs-0.30.0-cp313-cp313-win_amd64.whl (1.9 MB view details)

Uploaded CPython 3.13Windows x86-64

jsonschema_rs-0.30.0-cp313-cp313-win32.whl (1.7 MB view details)

Uploaded CPython 3.13Windows x86

jsonschema_rs-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

jsonschema_rs-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

jsonschema_rs-0.30.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.whl (2.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.12+ i686

jsonschema_rs-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

jsonschema_rs-0.30.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (3.9 MB view details)

Uploaded CPython 3.13macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

jsonschema_rs-0.30.0-cp312-cp312-win_amd64.whl (1.9 MB view details)

Uploaded CPython 3.12Windows x86-64

jsonschema_rs-0.30.0-cp312-cp312-win32.whl (1.7 MB view details)

Uploaded CPython 3.12Windows x86

jsonschema_rs-0.30.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

jsonschema_rs-0.30.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

jsonschema_rs-0.30.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl (2.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.12+ i686

jsonschema_rs-0.30.0-cp312-cp312-macosx_10_12_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

jsonschema_rs-0.30.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (3.9 MB view details)

Uploaded CPython 3.12macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

jsonschema_rs-0.30.0-cp311-cp311-win_amd64.whl (1.9 MB view details)

Uploaded CPython 3.11Windows x86-64

jsonschema_rs-0.30.0-cp311-cp311-win32.whl (1.8 MB view details)

Uploaded CPython 3.11Windows x86

jsonschema_rs-0.30.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

jsonschema_rs-0.30.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

jsonschema_rs-0.30.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl (2.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.12+ i686

jsonschema_rs-0.30.0-cp311-cp311-macosx_10_12_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

jsonschema_rs-0.30.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (3.9 MB view details)

Uploaded CPython 3.11macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

jsonschema_rs-0.30.0-cp310-cp310-win_amd64.whl (1.9 MB view details)

Uploaded CPython 3.10Windows x86-64

jsonschema_rs-0.30.0-cp310-cp310-win32.whl (1.8 MB view details)

Uploaded CPython 3.10Windows x86

jsonschema_rs-0.30.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

jsonschema_rs-0.30.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

jsonschema_rs-0.30.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl (2.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ i686

jsonschema_rs-0.30.0-cp310-cp310-macosx_10_12_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

jsonschema_rs-0.30.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (3.9 MB view details)

Uploaded CPython 3.10macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

jsonschema_rs-0.30.0-cp39-cp39-win_amd64.whl (1.9 MB view details)

Uploaded CPython 3.9Windows x86-64

jsonschema_rs-0.30.0-cp39-cp39-win32.whl (1.8 MB view details)

Uploaded CPython 3.9Windows x86

jsonschema_rs-0.30.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

jsonschema_rs-0.30.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

jsonschema_rs-0.30.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl (2.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.12+ i686

jsonschema_rs-0.30.0-cp39-cp39-macosx_10_12_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

jsonschema_rs-0.30.0-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.0 MB view details)

Uploaded CPython 3.9macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

jsonschema_rs-0.30.0-cp38-cp38-win_amd64.whl (1.9 MB view details)

Uploaded CPython 3.8Windows x86-64

jsonschema_rs-0.30.0-cp38-cp38-win32.whl (1.8 MB view details)

Uploaded CPython 3.8Windows x86

jsonschema_rs-0.30.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

jsonschema_rs-0.30.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

jsonschema_rs-0.30.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl (2.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ i686

jsonschema_rs-0.30.0-cp38-cp38-macosx_10_12_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.8macOS 10.12+ x86-64

jsonschema_rs-0.30.0-cp38-cp38-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.0 MB view details)

Uploaded CPython 3.8macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file jsonschema_rs-0.30.0.tar.gz.

File metadata

  • Download URL: jsonschema_rs-0.30.0.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for jsonschema_rs-0.30.0.tar.gz
Algorithm Hash digest
SHA256 29f988d229371d6aefd560c5b13e71bf1c91c972a0d83a66c5eb941ce47d3193
MD5 78a11a8d0da8087ba0ad1ae9f013f6f1
BLAKE2b-256 87ac5ee6e5f3030c75b8d010abc7e7ab856471b2a040cf81436ab637847f524e

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 4f9f7c2107d3b74c78d5a6ac0602f151e7984113481884f367a4e1b825989b0c
MD5 08654bf6df44bdde805871be8d8c738d
BLAKE2b-256 34f186fa095f05b8c58e96cf03294a2ad6f1886585ba9904714384b44f3f2216

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp313-cp313-win32.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 d875c8b37f0731be4e776f581311dd299c07aa1c2503a5cb560fc55a0fb5fa5a
MD5 664985bc4e418ad51970fb166551d484
BLAKE2b-256 72c5067161a58e39d774326f2c2de84c04c2f983abba39f412a3052fda8870ce

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dea2ec14105c148509b4599c5911fc181db956ca339f76e232752e251e88541c
MD5 310961a00ffc4e6638fc6dd47c489d95
BLAKE2b-256 cc7b96ddb4cc42d261c2ac82b2eab5b3106accc4c9a74e47b699fab1d09ad1c6

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9eef21fa1732faffa53b4d85117bfa664a9eba6608c28b1a57d465b2e68b0408
MD5 621270ba5d166447d527ced290fece18
BLAKE2b-256 8e6e3ab36818b122257913d350dc23da371c4ec55d088ce5d751f47cc6385ed7

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 bae276fd38e410d0b5dd276cc306d1acbf57b3494e2589a67eea16df2291e677
MD5 15613eadf4f6a23d0bff1608d5ee18d6
BLAKE2b-256 0b77afb522903ce800c3e197b2da83ce6a77a5630162b2e499d0b15a696ba53a

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 32e19f6f834a0fa43c85d60834c0f41c424a60e579a6d5f80fcc8cbe693c3e6e
MD5 c7ae5acb105411622639085da5346828
BLAKE2b-256 cf975ac4db87a07844c5a762032333168aaaadad7cd773c0580d1b29fa94c831

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 4a6509b02f842aafa6bf9c40a26b10a85814e9e593fe56cd41e7fc7f7e7e02a6
MD5 3693cdd09fbb56490e46d3a027da261c
BLAKE2b-256 192a8334ef2e3d368235f5c109f525210487d2311fc413b4660d68bba107c4a6

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4b970bebd1732e839c2f6acd53e24138a34c4b2f282f66b12f64bd4d8bd2e974
MD5 cf00955e91fca99d1e2a19acacd98a0b
BLAKE2b-256 932f734b2e839c2af51005ad41c1c5d941d7ccb8f292d994b8bafbcb730f55b4

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 687eb362cc79632c81e86a09b1f54bd4bfdb6340bc291b413d651dc9415ac520
MD5 773831aeb0e36979e8af57cfcf714157
BLAKE2b-256 a93d830e64a9b5d2fa0e96d35556adf8d84b641b0573a73778e957d441377a3d

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b9ec5130459298f2dc0d87f078d8c31de1e428a4a8f41e47100ce54d834a78ea
MD5 a7a51dbe036e5a87db36dc26a9811f9f
BLAKE2b-256 2640e6a8e8f2fcd60d070d70e2896150d025589e93d6cd5b6d86cffc15d42f13

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 de8ae8af10bed747f7e3102bcb1512a58226cb68c5ecf9101d03cd5a66fe5ca4
MD5 71048bca50e75526db50e155cdac229c
BLAKE2b-256 ab5a18fb35a593730e51d382b45cbe733a2d1770ce8901a6f8b8dbe93f55531e

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 018388b71317f3dca3fb00c2f8856b45dcdb9feb2439873acde3d8d05da196b6
MD5 08f35ff0f61e3a6740e3d46c81b68496
BLAKE2b-256 9f7c8ba52e57fcd03b383f02acb686890341236acfa6b3cc00a1afae7bd75bee

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 44afa01051706b6a89f2877d88cbd4e6c96f686d410505d375afa4deaf9d35ce
MD5 7a51d255ec3b8f0f86e22f99efbbe9bc
BLAKE2b-256 75a5e57932c4d156cefeca59117842bb745469a5f75ff9255bbff1741ae96e2b

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 55d073c7282dc1ac7261f4be731c4d0e95db451b9dabd863cf43dd447a891c3e
MD5 31d1646cc8c7decb7297b8b57882f0a4
BLAKE2b-256 ee50c349787eca86d6fe2cf48181d5b975c1cbde82fa90c757af8f6902e45585

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 18d6fcba3e62ae91c84a41d82736faab9dd8481fc671963b60ad697f5db30fa4
MD5 7e7f6bfe457303696456d817200be3c4
BLAKE2b-256 e14e1cb2541d7eb01b18bb680c6d55f4336956e59fa938fba3daf8e3085c184a

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 680035c56ab0ae958507baf6164f0af5481858bc973079d4806f517b0a2fe4ee
MD5 254a25f3840d94f759344e96987daa85
BLAKE2b-256 329df0aecee15a455143de41f377180d9ade4ae540451ba70225b966ed321612

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 22868fc882a95e52c9b21aced1e4b1adbb9fda5851baa116f4e090fbe18e4af2
MD5 93d783414d36acf5168835e4a5f28525
BLAKE2b-256 47968a1d70b226e88bda50ae98bec63f0fe6d62ac55efab4a84861725514a472

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 13cd64c2ee0b1d792a3a1d5f055cb946b18efb8c58537b92cdd7ffac9f44d76d
MD5 4cf3080e2269daf38885be53ed8c92f8
BLAKE2b-256 cc3094d9fb8fb5d1cf92ff99c981c3d7097e3357cefaad3d969a3b783fa41558

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 d7acd91a46c8584784c486cdbd3a9ed38977aa72bde35c0dd3af1935bfc327ab
MD5 4599b936c918891a6060d8cc6a4674d7
BLAKE2b-256 f8c0ab1988011da03c45328d3d4aac4a1aa0b57e9e1ff3424d37575cdbb917e0

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d9ab11ce8ba0d674cb7929f1cc58e2dac990ac1816de79f7a4331510e0542fc3
MD5 98edadc054b419fb7363d4ced45de0fe
BLAKE2b-256 276cfc648f56ef24b9f04d94fc6b9d0acfb1eb2a33773ee68c328349c8c0afa8

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 a29f577d1f691c9dd306852da5fda2e20bcca17a94bbf49d890e1ecf2b3fe340
MD5 164aaccab8491296ff080fcd4f66de47
BLAKE2b-256 656284fbbe20008d23fe1321ad21592f883043e84d3fe9d86cb161073febf250

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f8a52eb7ecd38059cdf7096a639f9599da46b4f971b667ad0241c98d0b359a6a
MD5 b333597b2eb7e9e4ffd514c2a025d905
BLAKE2b-256 326e7d0d5a7f22e488a4358d6ae9c33da633569c712961b4a56dd7490dfb1c8e

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp310-cp310-win32.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 e8c3387b49ad73155fab6b555199d9d7424456ac8088ec9c5c73842db393491a
MD5 05da602f71d990fb3883c1c0f779cca7
BLAKE2b-256 980ed6f890dc997c8fd84243a850d008d67e6c3fd8f3086d9ca26d45dd1f2529

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1edde221d0f3769b1e446101a8d9d13a4486b121c19688112ee2cc8dfc1d0f80
MD5 79667bbab02f36506927c47a9b1f6784
BLAKE2b-256 8563de268ba4d0f324c275054e16feea61d7418b5646fec327b2db8d0a8c1c62

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d7a1bab58a763bd71773cb1e00efdcdf06a6c00a04e903ece27efa70d58cb6f4
MD5 90d46ece53bb47882b0478a5b950c64c
BLAKE2b-256 47dd89f68767f4aaa4ccf846406c6d407b6c7abb1a1c1023ce4fd3ae9ac61fa7

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 cd0ff855c52741b85183bd8129dd229ae962a4e8cefd5eba39bd9cae052fee98
MD5 1271b1945f2675166a0dca6564e1bbc8
BLAKE2b-256 f98c51bd5b5dae00e1fa731e6fe3354138eec2de6c13eec4ab2fe7e9e957c460

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a97ac8114d0e684b157b35e8c5cd0fdbaa5a44d5a75f7a64973d63aff9d3bba5
MD5 58622e7623bffcd17c13fc85d7e096eb
BLAKE2b-256 30b8f97b64dee73a5d30df285b97fedeb25b5ff3c683a42cf79c9535637cb591

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 13ce30e646043a765496c685f3c99e392041ebbe9c08f273a4873130175eab2a
MD5 da0a0a60da1125bd3104954dc45be29f
BLAKE2b-256 aca0cbcabd880597c7798ebe22e2eaf77c1b51f4676a684a9a33b447632906ae

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6785a8df855e0517837716d526a8fb10b6ea78463dab5add4a734e936cee87bc
MD5 a44fc3bc9b1d44b38f1ca362052907bd
BLAKE2b-256 3ac5af802d7d638310ce4ebb8097398e100ffeaf71db6fa9b10071874101e52c

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: jsonschema_rs-0.30.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for jsonschema_rs-0.30.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 af230808981fd305d5616c8f3dbdbd8e066fae49156c1ed415865b1449c585b0
MD5 26c401640aa1d2cfa2c006ad0fe956e5
BLAKE2b-256 d755b2af5c4e67bb61e48c330d7529b7e5210e325b3c979468f3cf96f9ca3260

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d8261a49af9862687d2d3dc99e2837bd84ece669931340633eea3d0e466e26ce
MD5 5227ddefc0332232f9193575ada1095d
BLAKE2b-256 76124cb753589c15e69f4751c4f5647079bd9dfb2b773fc3c27e9b51eb090b20

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2673c0b408a5e8fefad633dea94f72c5eec25e698205ac3116a3f579ac12df1f
MD5 b29d70690eb2b0d55626b46834ce710c
BLAKE2b-256 876a608ec29ba20abc7f7f4b5bcbc5d435f36e5266fd1a9e2f7cea0a0f03bbcf

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 f45745c7c61a84518d48eca9cbc330285370c2d9ccd013f622b11ccec5b621e4
MD5 3f12e87ac026afde41b1a155614abaf1
BLAKE2b-256 5a44036204e533cbfe44663e73baaccd300a53428911d0c6d6b3bee4c5f39199

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7d0115365d9aaa358aac65fa7f78fc901116d32a260e2bfa821319d0fa513e1f
MD5 f02b4d88ec51a338ade25be74d3f7f57
BLAKE2b-256 f0848c01ab5248de9d9beaeaedf93e4e4a4db80f6e15e9a91cc1b7774e73131c

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 703fde78c4713c5c82f6ff66c8bb64fe6edf3130297d45c20571385b7ecfb50f
MD5 2e5bb010505d8d16cafb14c11c198be1
BLAKE2b-256 e96d9548c617cbd23d9c1dd0c290b48853ed9780512d9cb136290f7bc97340a9

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 2031b5968e1d7c8c3dee2dc2c0650b0afb9a66b7b52839c60b1990c38d8e7b4d
MD5 8caee0d0da25fc9877aef4da98340beb
BLAKE2b-256 dab38d5fcca04c6e15eca1f47e287bbe7772758d2928de12a8e173cd37478b85

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp38-cp38-win32.whl.

File metadata

  • Download URL: jsonschema_rs-0.30.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for jsonschema_rs-0.30.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 3bdee94e4742c3a9670051ada8127df12c8a2e5c20a66b650cc00a18630ab90d
MD5 2d2b877e670cc33f76622f623f462e2e
BLAKE2b-256 03222aba5dd6d0fe969641f6cf44e944112b1788bc2daded4655914e32431cae

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c5c9b3031843762e0cdd81bb425d6a313da80d4c7eef93044a92057b6605f244
MD5 89c2bdcff102b3a2b291bad66cca9d7c
BLAKE2b-256 22f60324fa67f508d2e3e44b0271ce10760ae0e9019f73408fe0fb2323182bdc

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d5c88bb527d49aedd13c7e99d9f4af937ee362c9e34c2e2d95d54c963f9e6336
MD5 b205ec1c834eca75c2e23b9a69c62c0f
BLAKE2b-256 ac6d02d7926896a084731c8956cb4d6a12ab301ff6bad474bda2bbf8e05f1ff2

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 27afbe40caf8cf3454ecab2e1c6d11a6528f29b77950a125ef644ff0d92bdee1
MD5 c7d2377cd829d9c46b0b477877516afd
BLAKE2b-256 4bf59a11fcf7922010a61b5d20619957d3562c693cb3a0a6b8c7db102b38c628

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp38-cp38-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 819e6bd72b66cc1b4f2b4c895339a87567cb6b4a6e612e923a7ebc3f3490e618
MD5 4c9f4aa7b2030198986248faa325eb18
BLAKE2b-256 c228b0b24bad4a6c897496e0a5bc22107057bd0f3623d0920ce3b122ef70b4ad

See more details on using hashes here.

File details

Details for the file jsonschema_rs-0.30.0-cp38-cp38-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for jsonschema_rs-0.30.0-cp38-cp38-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 0d701ef9c6f9d58d9ce3403264b6e652d5023666abbd111687b84dcf9ec25677
MD5 016ff3b1aae720a34ef7edddf70318c1
BLAKE2b-256 7a593387226c3716a60da746812d6e66b332490fb4f9340f644ca6b56863d722

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page