1[package]
2name = "toml_edit"
3version = "0.22.24"
4keywords = ["encoding", "toml"]
5categories = ["encoding", "parser-implementations", "parsing", "config"]
6description = "Yet another format-preserving TOML parser."
7authors = ["Andronik Ordian <write@reusable.software>", "Ed Page <eopage@gmail.com>"]
8autotests = false
9repository.workspace = true
10license.workspace = true
11edition.workspace = true
12rust-version.workspace = true
13include.workspace = true
14
15[package.metadata.docs.rs]
16features = ["serde"]
17rustdoc-args = ["--cfg", "docsrs"]
18
19[package.metadata.release]
20tag-name = "v{{version}}"
21pre-release-replacements = [
22 {file="CHANGELOG.md", search="Unreleased", replace="{{version}}", min=1},
23 {file="CHANGELOG.md", search="\\.\\.\\.HEAD", replace="...{{tag_name}}", exactly=1},
24 {file="CHANGELOG.md", search="ReleaseDate", replace="{{date}}", min=1},
25 {file="CHANGELOG.md", search="<!-- next-header -->", replace="<!-- next-header -->\n## [Unreleased] - ReleaseDate\n", exactly=1},
26 {file="CHANGELOG.md", search="<!-- next-url -->", replace="<!-- next-url -->\n[Unreleased]: https://github.com/toml-rs/toml/compare/{{tag_name}}...HEAD", exactly=1},
27]
28
29[features]
30default = ["parse", "display"]
31parse = ["dep:winnow"]
32display = []
33perf = ["dep:kstring"]
34serde = ["dep:serde", "toml_datetime/serde", "dep:serde_spanned"]
35# Provide a method disable_recursion_limit to parse arbitrarily deep structures
36# without any consideration for overflowing the stack. Additionally you will
37# need to be careful around other recursive operations on the parsed result
38# which may overflow the stack after deserialization has completed, including,
39# but not limited to, Display and Debug and Drop impls.
40unbounded = []
41
42[dependencies]
43indexmap = { version = "2.3.0", features = ["std"] }
44winnow = { version = "0.7.0", optional = true }
45serde = { version = "1.0.145", optional = true }
46kstring = { version = "2.0.0", features = ["max_inline"], optional = true }
47toml_datetime = { version = "0.6.8", path = "../toml_datetime" }
48serde_spanned = { version = "0.6.8", path = "../serde_spanned", features = ["serde"], optional = true }
49
50[dev-dependencies]
51serde_json = "1.0.116"
52toml-test-harness = "0.4.8"
53toml-test-data = "1.11.0"
54libtest-mimic = "0.7.2"
55snapbox = "0.6.0"
56proptest = "1.5.0"
57
58[[test]]
59name = "testsuite"
60required-features = ["parse", "display"]
61
62[[test]]
63name = "decoder_compliance"
64required-features = ["parse"]
65harness = false
66
67[[test]]
68name = "encoder_compliance"
69required-features = ["parse", "display"]
70harness = false
71
72[[test]]
73name = "invalid"
74required-features = ["parse", "display"]
75harness = false
76
77[[example]]
78name = "visit"
79required-features = ["parse", "display"]
80test = true
81
82[lints]
83workspace = true
84