# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g. crates.io) dependencies
#
# If you believe there's an error in this file please file an
# issue against the rust-lang/cargo repository. If you're
# editing this file be aware that the upstream Cargo.toml
# will likely look very different (and much more reasonable)

[package]
name = "valico"
version = "2.4.2"
authors = ["Stanislav Panferov <fnight.m@gmail.com>"]
build = "build.rs"
description = "JSON Schema validator and JSON coercer"
homepage = "https://github.com/rustless/valico"
documentation = "http://rustless.org/valico/doc/valico/"
keywords = ["json", "validator", "json-schema"]
license = "MIT"

[[test]]
name = "tests"
[dependencies.chrono]
version = "0.4.6"

[dependencies.jsonway]
version = "2.0"

[dependencies.phf]
version = "0.7"

[dependencies.publicsuffix]
version = "1.5.2"
default-features = false

[dependencies.regex]
version = "1.0"

[dependencies.serde]
version = "1.0"

[dependencies.serde_json]
version = "1.0"

[dependencies.url]
version = "1"

[dependencies.uuid]
version = "0.7"
features = ["v4"]
[build-dependencies.phf_codegen]
version = "0.7"
