1 | [package] |
2 | name = "toml_edit" |
3 | version = "0.22.24" |
4 | keywords = ["encoding" , "toml" ] |
5 | categories = ["encoding" , "parser-implementations" , "parsing" , "config" ] |
6 | description = "Yet another format-preserving TOML parser." |
7 | authors = ["Andronik Ordian <write@reusable.software>" , "Ed Page <eopage@gmail.com>" ] |
8 | autotests = false |
9 | repository.workspace = true |
10 | license.workspace = true |
11 | edition.workspace = true |
12 | rust-version.workspace = true |
13 | include.workspace = true |
14 | |
15 | [package.metadata.docs.rs] |
16 | features = ["serde" ] |
17 | rustdoc-args = ["--cfg" , "docsrs" ] |
18 | |
19 | [package.metadata.release] |
20 | tag-name = "v{{version}}" |
21 | pre-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] |
30 | default = ["parse" , "display" ] |
31 | parse = ["dep:winnow" ] |
32 | display = [] |
33 | perf = ["dep:kstring" ] |
34 | serde = ["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. |
40 | unbounded = [] |
41 | |
42 | [dependencies] |
43 | indexmap = { version = "2.3.0" , features = ["std" ] } |
44 | winnow = { version = "0.7.0" , optional = true } |
45 | serde = { version = "1.0.145" , optional = true } |
46 | kstring = { version = "2.0.0" , features = ["max_inline" ], optional = true } |
47 | toml_datetime = { version = "0.6.8" , path = "../toml_datetime" } |
48 | serde_spanned = { version = "0.6.8" , path = "../serde_spanned" , features = ["serde" ], optional = true } |
49 | |
50 | [dev-dependencies] |
51 | serde_json = "1.0.116" |
52 | toml-test-harness = "0.4.8" |
53 | toml-test-data = "1.11.0" |
54 | libtest-mimic = "0.7.2" |
55 | snapbox = "0.6.0" |
56 | proptest = "1.5.0" |
57 | |
58 | [[test]] |
59 | name = "testsuite" |
60 | required-features = ["parse" , "display" ] |
61 | |
62 | [[test]] |
63 | name = "decoder_compliance" |
64 | required-features = ["parse" ] |
65 | harness = false |
66 | |
67 | [[test]] |
68 | name = "encoder_compliance" |
69 | required-features = ["parse" , "display" ] |
70 | harness = false |
71 | |
72 | [[test]] |
73 | name = "invalid" |
74 | required-features = ["parse" , "display" ] |
75 | harness = false |
76 | |
77 | [[example]] |
78 | name = "visit" |
79 | required-features = ["parse" , "display" ] |
80 | test = true |
81 | |
82 | [lints] |
83 | workspace = true |
84 | |