[package]
edition = "2021"
rust-version = "1.71"
name = "ktav"
version = "0.7.0"
build = false
exclude = [
"/.github/",
"/docs/",
"/docs.config.mjs",
"/spec/",
"/tools/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Ktav — a plain configuration format. Three rules, zero indentation, zero quoting. Serde-native."
readme = "README.md"
keywords = [
"config",
"configuration",
"serde",
"minimal",
"plain",
]
categories = [
"config",
"parsing",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/ktav-lang/rust"
[package.metadata.ktav]
spec-version = "0.7.0"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[lib]
name = "ktav"
path = "src/lib.rs"
doctest = false
[[example]]
name = "a3_measure"
path = "examples/a3_measure.rs"
[[example]]
name = "a3_timing"
path = "examples/a3_timing.rs"
[[example]]
name = "basic"
path = "examples/basic.rs"
[[example]]
name = "cf_multiline_measure"
path = "examples/cf_multiline_measure.rs"
[[example]]
name = "errors"
path = "examples/errors.rs"
[[example]]
name = "events"
path = "examples/events.rs"
[[example]]
name = "upstreams"
path = "examples/upstreams.rs"
[[test]]
name = "bench_generator"
path = "tests/bench_generator.rs"
[[test]]
name = "bom"
path = "tests/bom.rs"
[[test]]
name = "compound_array_items_thin"
path = "tests/compound_array_items_thin.rs"
[[test]]
name = "compound_child_paths_thin"
path = "tests/compound_child_paths_thin.rs"
[[test]]
name = "de"
path = "tests/de.rs"
[[test]]
name = "doc_example"
path = "tests/doc_example.rs"
[[test]]
name = "dotted_keys_thin"
path = "tests/dotted_keys_thin.rs"
[[test]]
name = "edge_cases"
path = "tests/edge_cases.rs"
[[test]]
name = "error_accessors"
path = "tests/error_accessors.rs"
[[test]]
name = "error_format"
path = "tests/error_format.rs"
[[test]]
name = "error_spans"
path = "tests/error_spans.rs"
[[test]]
name = "escape_forces_string"
path = "tests/escape_forces_string.rs"
[[test]]
name = "escape_value_start"
path = "tests/escape_value_start.rs"
[[test]]
name = "fixtures"
path = "tests/fixtures.rs"
[[test]]
name = "float_value_consistency"
path = "tests/float_value_consistency.rs"
[[test]]
name = "force_strings"
path = "tests/force_strings.rs"
[[test]]
name = "inline_colon_value"
path = "tests/inline_colon_value.rs"
[[test]]
name = "inline_comma_key_context"
path = "tests/inline_comma_key_context.rs"
[[test]]
name = "inline_direct_scan_thin"
path = "tests/inline_direct_scan_thin.rs"
[[test]]
name = "inline_nested_array_key_quotes"
path = "tests/inline_nested_array_key_quotes.rs"
[[test]]
name = "inline_nested_scopes"
path = "tests/inline_nested_scopes.rs"
[[test]]
name = "inline_nested_trailing_content"
path = "tests/inline_nested_trailing_content.rs"
[[test]]
name = "inline_scalar_edges"
path = "tests/inline_scalar_edges.rs"
[[test]]
name = "inline_trailing_whitespace"
path = "tests/inline_trailing_whitespace.rs"
[[test]]
name = "inline_value_quotes"
path = "tests/inline_value_quotes.rs"
[[test]]
name = "integer_value_consistency"
path = "tests/integer_value_consistency.rs"
[[test]]
name = "invalid_utf8"
path = "tests/invalid_utf8.rs"
[[test]]
name = "key_escaping"
path = "tests/key_escaping.rs"
[[test]]
name = "key_escaping_thin"
path = "tests/key_escaping_thin.rs"
[[test]]
name = "key_name_alloc"
path = "tests/key_name_alloc.rs"
[[test]]
name = "key_read_alloc"
path = "tests/key_read_alloc.rs"
[[test]]
name = "midvalue_braces"
path = "tests/midvalue_braces.rs"
[[test]]
name = "multiline_codepoint_dedent"
path = "tests/multiline_codepoint_dedent.rs"
[[test]]
name = "multiline_vt_dedent"
path = "tests/multiline_vt_dedent.rs"
[[test]]
name = "non_exhaustive"
path = "tests/non_exhaustive.rs"
[[test]]
name = "quoted_keys"
path = "tests/quoted_keys.rs"
[[test]]
name = "quoted_keys_thin"
path = "tests/quoted_keys_thin.rs"
[[test]]
name = "quoted_keys_writer"
path = "tests/quoted_keys_writer.rs"
[[test]]
name = "r7f1_find_scan_semantics"
path = "tests/r7f1_find_scan_semantics.rs"
[[test]]
name = "readme_padded_example"
path = "tests/readme_padded_example.rs"
[[test]]
name = "readme_scalar_types"
path = "tests/readme_scalar_types.rs"
[[test]]
name = "readme_strict_snippet"
path = "tests/readme_strict_snippet.rs"
[[test]]
name = "render_lossless"
path = "tests/render_lossless.rs"
[[test]]
name = "roundtrip"
path = "tests/roundtrip.rs"
[[test]]
name = "ser"
path = "tests/ser.rs"
[[test]]
name = "spec_conformance"
path = "tests/spec_conformance.rs"
[[test]]
name = "strict_mode"
path = "tests/strict_mode.rs"
[[test]]
name = "structured_errors"
path = "tests/structured_errors.rs"
[[test]]
name = "thin_path_rep"
path = "tests/thin_path_rep.rs"
[[test]]
name = "thin_public"
path = "tests/thin_public.rs"
[[test]]
name = "top_level_array"
path = "tests/top_level_array.rs"
[[test]]
name = "top_level_array_thin"
path = "tests/top_level_array_thin.rs"
[[test]]
name = "top_level_inline_thin"
path = "tests/top_level_inline_thin.rs"
[[test]]
name = "unicode_key_trim"
path = "tests/unicode_key_trim.rs"
[[test]]
name = "unicode_ws_before_opener"
path = "tests/unicode_ws_before_opener.rs"
[[test]]
name = "unrepresentable"
path = "tests/unrepresentable.rs"
[[bench]]
name = "fixtures"
path = "benches/fixtures.rs"
[[bench]]
name = "fixtures_ix"
path = "benches/fixtures_ix.rs"
[[bench]]
name = "parse"
path = "benches/parse.rs"
harness = false
[[bench]]
name = "vs_json"
path = "benches/vs_json.rs"
harness = false
[dependencies.bumpalo]
version = "3"
features = ["collections"]
[dependencies.compact_str]
version = "0.9"
features = ["serde"]
[dependencies.indexmap]
version = "2"
features = ["serde"]
[dependencies.itoa]
version = "1"
[dependencies.memchr]
version = "2"
[dependencies.rustc-hash]
version = "2"
[dependencies.ryu]
version = "1"
[dependencies.serde]
version = "1"
features = ["derive"]
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]
[dev-dependencies.serde]
version = "1"
features = ["derive"]
[dev-dependencies.serde_json]
version = "1"
features = [
"preserve_order",
"arbitrary_precision",
]