Skip to main content

No project description provided

Project description

jsoncompat

JSON Schema Compatibility Checker Python Bindings

Check compatibility of evolving JSON schemas and generate example values using Python.

Installation

Install from PyPI:

pip install jsoncompat

Usage

import jsoncompat as jsc

# Define old and new schemas as JSON strings
old_schema = '{"type": "string"}'
new_schema = '{"type": "number"}'

# Check compatibility (role: "serializer", "deserializer", or "both")
is_compatible = jsc.check_compat(old_schema, new_schema, "both")
print(is_compatible)

# Generate an example value for a schema
example = jsc.generate_value(old_schema, depth=5)
print(example)

API Reference

  • check_compat(old_schema_json: str, new_schema_json: str, role: str = "both") -> bool
  • generate_value(schema_json: str, depth: int = 5) -> str

Examples

See the basic demo for a complete end-to-end script.

License

MIT License. See 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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

jsoncompat-0.1.8a9-cp313-cp313-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.13Windows x86-64

jsoncompat-0.1.8a9-cp313-cp313-win32.whl (1.2 MB view details)

Uploaded CPython 3.13Windows x86

jsoncompat-0.1.8a9-cp313-cp313-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

jsoncompat-0.1.8a9-cp313-cp313-musllinux_1_2_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

jsoncompat-0.1.8a9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

jsoncompat-0.1.8a9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

jsoncompat-0.1.8a9-cp313-cp313-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

jsoncompat-0.1.8a9-cp313-cp313-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

jsoncompat-0.1.8a9-cp312-cp312-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.12Windows x86-64

jsoncompat-0.1.8a9-cp312-cp312-win32.whl (1.2 MB view details)

Uploaded CPython 3.12Windows x86

jsoncompat-0.1.8a9-cp312-cp312-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

jsoncompat-0.1.8a9-cp312-cp312-musllinux_1_2_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

jsoncompat-0.1.8a9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

jsoncompat-0.1.8a9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

jsoncompat-0.1.8a9-cp312-cp312-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

jsoncompat-0.1.8a9-cp312-cp312-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

jsoncompat-0.1.8a9-cp311-cp311-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.11Windows x86-64

jsoncompat-0.1.8a9-cp311-cp311-win32.whl (1.2 MB view details)

Uploaded CPython 3.11Windows x86

jsoncompat-0.1.8a9-cp311-cp311-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

jsoncompat-0.1.8a9-cp311-cp311-musllinux_1_2_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

jsoncompat-0.1.8a9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

jsoncompat-0.1.8a9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

jsoncompat-0.1.8a9-cp311-cp311-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

jsoncompat-0.1.8a9-cp311-cp311-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file jsoncompat-0.1.8a9-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c8728ec483339ad628d31e72ed305d16c9cc262cf7e4293793b0af326a767485
MD5 69e7102bcd73c3942d80a436909408bb
BLAKE2b-256 db9912a6dd04b73a67726850b51db12887c3fd28c8e84bd306c14e9a281c106d

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp313-cp313-win32.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 2f1c5d74b0a8ac60c0bb3e49efb6a6505c5e31b67adc135f8c7049771d06c1c2
MD5 51c3da5200fbceecf3289746662d1dd9
BLAKE2b-256 b4449a5512f140f1c7a8ea055126b37b01b4f695f5052e34019bdb0074040674

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2f00423cb11c84c6e3144e4fec09f8f5137062bff85b42739a5ab36d56d004ab
MD5 2ac44591257b722df6d054d8a1dd5d84
BLAKE2b-256 54cfa10330f51c81994c9f958f36b86ab071df00a9f8d955a64046b6d4490625

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 fd0b0e147b85040de3e2a1b310060f9b8b48f0672b64349f78e824caa9f5b37d
MD5 e9beef8bec380e2f1e0fe722f06ab5aa
BLAKE2b-256 7b937d03dc8d6547751cd2f660609e6178e45d54e4267f3b9a1f2306a9c8e65c

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 730ae4fa36076e6f6c2fb58a5677a2ee8b4fdc738ba852cdf4518a74f31b0840
MD5 41e8d6b00416cf194c1a46389bcf6913
BLAKE2b-256 c1db47f7e31bbe8d1d75b037089f201bb568829e5de14691da127591644fc490

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 421b1b32cda779489df280d1fa8a18d15dedcaaf4cc3dd3a7b71d31e23631bd1
MD5 17495c05bdb768dd1946675c5c8946ef
BLAKE2b-256 714736493d4c7a367412a44e2dd0ac84ada18a1199bdfa43703d85fa9e9f040a

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 44328f753e81b9d333e263310994f0c61c2b85566f53dbfd15813ace408aa616
MD5 1176c9d218418e8c00748a1a59e01aa2
BLAKE2b-256 e30c6f6f45b5c1ea2111cb4dd591ef6fb3a4eb6f6f9f3a8107e94a838e637d00

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 baee0ea74ca9d74df9a56764845ad12fa74c8d36b78feaa847b4086af35caccd
MD5 579687cd50d85ca0df1087a097454ed0
BLAKE2b-256 de8de0827561d9970f87a708d8222cae962e33f9b7be46ebd8286ac9dc5f0745

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 6cc5745f3c07d00cad2dd0ade19e1973126300cc1722a01bc8921363aba965cf
MD5 5874e491f216f13fc04254c613b0d356
BLAKE2b-256 e81afa85a69382f7528643a12ca73797ead400c1db49a349ae582115cb129915

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 7b1ad369281ad37db0aaf5745f219598f412617deac72891f5c5d628c91c7a68
MD5 75407af39d5db39d1b21367adee22e2d
BLAKE2b-256 155489881265d3f1ef5feb2c8d3b31c63a29498c8a546e999913e08e6a946653

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6aff33757df181be54f19af22e142d1cc1bf27ecbeb2c8f64485f494975cd6ea
MD5 4ad1eb243290b0cbe8e4f4c44ae128d2
BLAKE2b-256 7f5443be4cdc03c1c289fc950ca06245ff573f4291bdf8bfb2a1a257deb1433d

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 439400efa3b63c1b4063e46b802d73fb28acdd3e966983d793d935c96e5c47f0
MD5 6264716f9f116e3662b145a051270a4e
BLAKE2b-256 944d9f64d25c561faf2d793705ecfbe77c92a5be0ce657f6c0e6036de151e6fc

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f08b008adbf2af71ddb3b61089004791f460867ceb2a0a11a320d62d37bf3158
MD5 6d45826bc51d5011efaa7dbea3484136
BLAKE2b-256 68946c0e68fe48248817697879c43f72682f67337657b0ec73d5526eba420484

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 64ff2fbed269f1281978764a57a273e77af628af036f28a8a740581451b137ef
MD5 8a76651ed3d92dca64186c34d985e385
BLAKE2b-256 4c2d5c491718e8f261fe198507bc192261c445b4d0a0612ea114de2c0b9e852d

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3ff379ab4da6d4d0d426d05753e29fd4cf77a52efe35d060c9c44dc6b240bab6
MD5 872e1ca22df20c239a87e9bbdc467e90
BLAKE2b-256 2f3f90c294e3400dc23973d462b3e2f410dc31ddb2c2d59ff9a329e5fe427e97

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 5f1e48ea19583bad97f0f1ff3da8246cd51e6a6474a258d13f054a4eafef1355
MD5 fb36c85a6c56f7421b9f3c192070450a
BLAKE2b-256 fd8e48d6241c343ce2ee721520c05cfb12c1fa21f296c59e0022b695111836cb

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 70f1278eb3004d63a810cc83c1cd28a92464cf0b70db8f7be49ad8b257ea3784
MD5 bc031f56f6d0f8aa4b6497cb7240b6a7
BLAKE2b-256 4da39f2dd99149a6640855ece61720001fcd4ef4eb17824f63e2288e168843e2

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 4842898862fa21b48b773aef6ce8d84a24e893ddb9816780f8cb568b70fbee44
MD5 3e34ad7cecbc43ab67516fceb2eb4cc0
BLAKE2b-256 07c040afaa6976c285fd0d20d9a41559fbc986cecc51349964301c0ce008dcb7

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5fb0ac3d8b2651769e4b3c5f8f99d44f422092a034c083c6f34729eb13d35738
MD5 6d72da6148654ee99b9cc50c11022367
BLAKE2b-256 a89f38ad02483a681ff256e6ae2178a1e4de79a06f2d56760a1c3552ae743c72

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e78cd7f79c13266212f3d407520dcada895b0068939168bb4c2e6713913b347e
MD5 80e91b65f40ac6842a5a489dee59a1c3
BLAKE2b-256 6df0a49c2f06bb2375a548b9d5515f9461240953bc9a3065680b2162842b23cd

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 482c509a32c001e72bfdd2930a1af0ba5d23d2f30b0b0cbe1d9f974b72f610ff
MD5 e84e18d7ce6c3c4b9664df63330b9204
BLAKE2b-256 e679e85b036920602a44ace95783e4a0f241ed8494a0a7d1b9925ce02239e400

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6845f786134a9393c60018565e98fdd885cf6f332f7cf7b94631b803d9d85941
MD5 3e458c551a2e2aeda40a53284e78927a
BLAKE2b-256 8bf36e23fa6df3ed18acfae6526f67e1b8ce2e85c6ff014e7970bbbc158a5a9e

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 83da17a7c55d52eebebcbb41739a217b650a00976125671ea369566c461a0227
MD5 3851b512047c536a9302ed402d5b47e1
BLAKE2b-256 e04352ae15eac55a4fdaa3e3fc1eed4158fd7b09504ea54997ef657f94d5de92

See more details on using hashes here.

File details

Details for the file jsoncompat-0.1.8a9-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jsoncompat-0.1.8a9-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f03665162c24420632b2b266765b127bb25018f945c3a6b126ca4aab064c92ff
MD5 a35da518b5f93b6c2019eca6742f15fe
BLAKE2b-256 43e309bbc6a6488761d15c51f8928f46eb7e8d03378d82039e21215d802bb92e

See more details on using hashes here.

Supported by

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