[package] name = "toml" version = "0.8.19" keywords = ["encoding", "toml"] categories = ["encoding", "parser-implementations", "parsing", "config"] description = """ A native Rust encoder and decoder of TOML-formatted files and streams. Provides implementations of the standard Serialize/Deserialize traits for TOML data to facilitate deserializing and serializing Rust structures. """ authors = ["Alex Crichton "] repository.workspace = true homepage.workspace = true license.workspace = true edition.workspace = true rust-version.workspace = true include.workspace = true [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [package.metadata.release] pre-release-replacements = [ {file="CHANGELOG.md", search="Unreleased", replace="{{version}}", min=1}, {file="CHANGELOG.md", search="\\.\\.\\.HEAD", replace="...{{tag_name}}", exactly=1}, {file="CHANGELOG.md", search="ReleaseDate", replace="{{date}}", min=1}, {file="CHANGELOG.md", search="", replace="\n## [Unreleased] - ReleaseDate\n", exactly=1}, {file="CHANGELOG.md", search="", replace="\n[Unreleased]: https://github.com/toml-rs/toml/compare/{{tag_name}}...HEAD", exactly=1}, ] [features] default = ["parse", "display"] parse = ["dep:toml_edit", "toml_edit?/parse"] display = ["dep:toml_edit", "toml_edit?/display"] # Use indexmap rather than BTreeMap as the map type of toml::Value. # This allows data to be read into a Value and written back to a TOML string # while preserving the order of map keys in the input. preserve_order = ["indexmap"] [dependencies] serde = "1.0.145" indexmap = { version = "2.0.0", optional = true } toml_edit = { version = "0.22.20", path = "../toml_edit", default-features = false, features = ["serde"], optional = true } toml_datetime = { version = "0.6.8", path = "../toml_datetime", features = ["serde"] } serde_spanned = { version = "0.6.7", path = "../serde_spanned", features = ["serde"] } [dev-dependencies] serde = { version = "1.0.199", features = ["derive"] } serde_json = "1.0.116" toml-test-harness = "0.4.8" toml-test-data = "1.11.0" snapbox = "0.6.0" [[test]] name = "decoder_compliance" harness = false [[test]] name = "encoder_compliance" harness = false [[example]] name = "decode" required-features = ["parse", "display"] [[example]] name = "enum_external" required-features = ["parse", "display"] [[example]] name = "toml2json" required-features = ["parse", "display"] [lints] workspace = true