serde_yaml_ng is a maintained fork of serde_yaml. Just don't use serde_yml, people in the Rust community have described it as borderline ransomware, which I tend to agree with.
In the Rust ecosystem (starting with Cargo, but also the wider ecosystem), you'll see a high rate of TOML adoption in favour of YAML.
If you have a choice in the format, avoid YAML. It has some serious shortcomings with serde. When you use #[serde(flatten)] your data is first converted to a serde-internal format and it has to make its best guess as to what a string "is." If you have a type that deserialize as a string and then passes through another function, it might get converted to another intermediate type. E.g. 123 converts to an integer.
TOML also has problems. You can't represent u64 with it, and values outside the i64 range will fail at runtime.
@jofas thank you for the information! I will try to discuss with new maintainer about issue I have from the fork Hope Serde community may update their page: Serde - Data formats.
@jofas I saw, but I never liked TOML. It's look like some a little improvement over INI format (with section-style). But always found (and it seems to be shared) to not really fit describing nested data structure.
And finally I also find out "hard" (not fluent?) to hand written. Which is my main purpose.
Surely, my (traumatic?) experience writting Traefik configuration file is speaking there.
@user16251 I have. But I decided it is common and well-known format. Being also compatible with JSON. Which can be easily generated from many sources if people wants to.
I might also consider JSON5.
@Segment7163 I know YAML have issues There are known for years now. Mostly about non-quoted things. People may make mistakes one time, and usage should quickly tell them what's wrong. Finally configuration is fixed up.