yaml-rust
syscall.rs
yaml-rust | syscall.rs | |
---|---|---|
4 | 1 | |
597 | 258 | |
- | - | |
0.0 | 10.0 | |
about 1 month ago | almost 4 years ago | |
Rust | Rust | |
Apache License 2.0 | GNU General Public License v3.0 or later |
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
-
Borrow checker not liking recursive walk through a HashMap
Here's the Rust code so far -- the commented portions are my intent via pseudocode. This is part of an implementation where there's a _yaml_hash member that points to yaml_rust's underlying LinkedHashMap. (Also using anyhow's bail! and Result.)
-
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).
syscall.rs
-
How to deal with unmaintained crates? (eg. yaml-rust)
An example https://github.com/kmcallister/syscall.rs/network/members
What are some alternatives?
serde-yaml - Strongly typed YAML library for Rust
serde - Serialization framework for Rust
strictyaml - Type-safe YAML parser and validator.
cue - CUE has moved to https://github.com/cue-lang/cue
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]
libyaml - Canonical source repository for LibYAML
hjson-js - Hjson for JavaScript
stfu8 - Sorta Text Format in UTF-8