schematic 0.19.4

A layered serde configuration and schema library.
Documentation
[dependencies.convert_case]
optional = true
version = "0.10.0"

[dependencies.garde]
default-features = false
features = ["regex"]
optional = true
version = "0.22.1"

[dependencies.indexmap]
features = ["serde"]
optional = true
version = "2.13.0"

[dependencies.json-strip-comments]
optional = true
version = "3.1.0"

[dependencies.markdown]
optional = true
version = "1.0.0"

[dependencies.miette]
version = "7.6.0"

[dependencies.regex]
optional = true
version = "1.12.2"

[dependencies.reqwest]
default-features = false
features = ["blocking"]
optional = true
version = "0.13.1"

[dependencies.ron]
optional = true
version = "0.12.0"

[dependencies.rpkl]
optional = true
version = "0.7.0"

[dependencies.schemars]
default-features = false
optional = true
version = "0.8.22"

[dependencies.schematic_macros]
version = "0.19.3"

[dependencies.schematic_types]
version = "0.11.3"

[dependencies.semver]
optional = true
version = "1.0.27"

[dependencies.serde]
features = ["derive"]
version = "1.0.228"

[dependencies.serde-content]
version = "0.1.2"

[dependencies.serde_json]
features = ["preserve_order"]
optional = true
version = "1.0.149"

[dependencies.serde_norway]
optional = true
version = "0.9.42"

[dependencies.serde_path_to_error]
optional = true
version = "0.1.20"

[dependencies.starbase_styles]
optional = true
version = "0.6.5"

[dependencies.thiserror]
version = "2.0.17"

[dependencies.toml]
optional = true
version = "0.9.8"

[dependencies.tracing]
version = "0.1.44"

[dev-dependencies.chrono]
features = ["serde"]
version = "0.4.42"

[dev-dependencies.derive_more]
features = ["try_into", "as_ref"]
version = "2.1.1"

[dev-dependencies.indexmap]
version = "2.13.0"

[dev-dependencies.relative-path]
features = ["serde"]
version = "2.0.1"

[dev-dependencies.reqwest]
default-features = false
features = ["blocking", "rustls"]
version = "0.13.1"

[dev-dependencies.rust_decimal]
version = "1.39.0"

[dev-dependencies.semver]
features = ["serde"]
version = "1.0.27"

[dev-dependencies.serial_test]
version = "3.3.1"

[dev-dependencies.similar]
version = "2.7.0"

[dev-dependencies.starbase_sandbox]
version = "0.10.3"

[dev-dependencies.strip-ansi-escapes]
version = "0.2"

[dev-dependencies.url]
features = ["serde"]
version = "2.5.8"

[dev-dependencies.uuid]
features = ["serde"]
version = "1.19.0"

[[example]]
name = "show_error"
path = "examples/show_error.rs"

[features]
config = ["dep:serde_path_to_error", "dep:starbase_styles", "schematic_macros/config"]
default = ["config", "env", "extends", "validate"]
env = ["schematic_macros/env"]
extends = ["schematic_macros/extends"]
json = ["dep:json-strip-comments", "dep:serde_json", "schematic_types/serde_json"]
pkl = ["dep:rpkl", "schematic_types/serde_rpkl"]
renderer_json_schema = ["json", "schema", "dep:markdown", "dep:schemars"]
renderer_template = ["schema"]
renderer_typescript = ["schema"]
ron = ["dep:ron", "schematic_types/serde_ron"]
schema = ["dep:convert_case", "dep:indexmap", "schematic_macros/schema"]
schema_serde = ["schema", "schematic_types/serde"]
toml = ["dep:toml", "schematic_types/serde_toml"]
tracing = ["schematic_macros/tracing"]
type_chrono = ["schematic_types/chrono"]
type_indexmap = ["schematic_types/indexmap"]
type_regex = ["schematic_types/regex", "dep:regex"]
type_relative_path = ["schematic_types/relative_path"]
type_rust_decimal = ["schematic_types/rust_decimal", "garde?/rust_decimal"]
type_semver = ["schematic_types/semver", "dep:semver"]
type_url = ["schematic_types/url"]
type_uuid = ["schematic_types/uuid"]
url = ["dep:reqwest"]
validate = ["dep:garde", "schematic_macros/validate"]
validate_email = ["validate", "garde/email"]
validate_url = ["validate", "garde/url"]
yaml = ["dep:serde_norway", "schematic_types/serde_yaml_norway"]

[lib]
name = "schematic"
path = "src/lib.rs"

[package]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
description = "A layered serde configuration and schema library."
edition = "2024"
homepage = "https://moonrepo.github.io/schematic"
license = "MIT"
name = "schematic"
readme = "README.md"
repository = "https://github.com/moonrepo/schematic"
resolver = "2"
rust-version = "1.85.0"
version = "0.19.4"

[package.metadata.docs.rs]
all-features = true

[[package.metadata.release.pre-release-replacements]]
file = "../../CHANGELOG.md"
replace = "{{version}}"
search = "Unreleased"

[[test]]
name = "code_sources_test"
path = "tests/code_sources_test.rs"

[[test]]
name = "config_unit_struct"
path = "tests/config_unit_struct.rs"

[[test]]
name = "defaults_test"
path = "tests/defaults_test.rs"

[[test]]
name = "env_test"
path = "tests/env_test.rs"

[[test]]
name = "errors_test"
path = "tests/errors_test.rs"

[[test]]
name = "extends_test"
path = "tests/extends_test.rs"

[[test]]
name = "file_sources_test"
path = "tests/file_sources_test.rs"

[[test]]
name = "generator_test"
path = "tests/generator_test.rs"

[[test]]
name = "helpers_test"
path = "tests/helpers_test.rs"

[[test]]
name = "macro_enum_test"
path = "tests/macro_enum_test.rs"

[[test]]
name = "macros_test"
path = "tests/macros_test.rs"

[[test]]
name = "merge_test"
path = "tests/merge_test.rs"

[[test]]
name = "partialize_test"
path = "tests/partialize_test.rs"

[[test]]
name = "schematic_enum_test"
path = "tests/schematic_enum_test.rs"

[[test]]
name = "settings_test"
path = "tests/settings_test.rs"

[[test]]
name = "transform_test"
path = "tests/transform_test.rs"

[[test]]
name = "url_sources_test"
path = "tests/url_sources_test.rs"

[[test]]
name = "utils"
path = "tests/utils.rs"

[[test]]
name = "validate_test"
path = "tests/validate_test.rs"

[[test]]
name = "variants_test"
path = "tests/variants_test.rs"