yaml-rust
libyaml
Our great sponsors
yaml-rust | libyaml | |
---|---|---|
4 | 1 | |
581 | 877 | |
- | 1.7% | |
0.0 | 0.0 | |
7 months ago | 11 days ago | |
Rust | C | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
yaml-rust
-
Project idea: port markdownlint to Rust
Either https://github.com/chyh1990/yaml-rust or https://github.com/dtolnay/serde-yaml for parsing the YAML config file that markdownlint uses
-
How to deal with unmaintained crates? (eg. yaml-rust)
The first thing I did was to find the crate yaml-rust and it seems it isn't really maintained anymore. It has not been updated in a year and there's a lot of PR's and unresolved issues, the CI is broken... So here is my open ended question.
-
YAML and Configuration Files
Currently, my main concern with YAML is that, by the spec, comments are not attached to a particular node (see https://yaml.org/spec/1.2/spec.html#id2767100). As a result, a lot of YAML parsers (like https://github.com/yaml/libyaml and https://github.com/chyh1990/yaml-rust) only filter out the comments during the parsing phase. This makes it less than ideal for a use-case where the configuration file is expected to be modified by both programs and humans.
TOML makes it more trivial to associate comments with a node. This is mainly because the language is simpler though, as the spec is not explicit about that (https://github.com/chyh1990/yaml-rust).
libyaml
-
YAML and Configuration Files
Currently, my main concern with YAML is that, by the spec, comments are not attached to a particular node (see https://yaml.org/spec/1.2/spec.html#id2767100). As a result, a lot of YAML parsers (like https://github.com/yaml/libyaml and https://github.com/chyh1990/yaml-rust) only filter out the comments during the parsing phase. This makes it less than ideal for a use-case where the configuration file is expected to be modified by both programs and humans.
TOML makes it more trivial to associate comments with a node. This is mainly because the language is simpler though, as the spec is not explicit about that (https://github.com/chyh1990/yaml-rust).
What are some alternatives?
serde-yaml - Strongly typed YAML library for Rust
serde - Serialization framework for Rust
cue - CUE has moved to https://github.com/cue-lang/cue
strictyaml - Type-safe YAML parser and validator.
libyaml-rust - LibYAML bindings for Rust
ytt - YAML templating tool that works on YAML structure instead of text
json5 - JSON5 — JSON for Humans
cue - The home of the CUE language! Validate and define text-based and dynamic configuration
skylark - Skylark in Go: the Skylark configuration language, implemented in Go [MOVED to go.starlark.net]
hjson-js - Hjson for JavaScript
stfu8 - Sorta Text Format in UTF-8