Expand description
Rust port of internal/config, internal/naming, internal/orderedmap,
internal/variables, internal/dyn, and internal/toposort.
See PORT_NOTES.md for tests that could not be carried over verbatim,
and why, plus per-module divergence notes.
Modules§
- config
- Port of
internal/configand itslatest,types, andversionssub-packages. - dyn_
access - Port of
internal/dyn: path-based traversal, type conversion, and related helpers forserde_json::Value/serde_yaml::Valuetrees produced by JSON or YAML decoding (the Go original operates onmap[string]any/[]any; here we operate on aserde_json::Valuetree, which is the closest Rust equivalent to Go’s dynamically-typed decode result). - naming
- Port of
internal/naming: cluster naming strategies for generating deterministic, RFC 1123-compliant cluster names. - orderedmap
- Port of
internal/orderedmap: a generic ordered map that preserves insertion order and supports YAML/JSON (de)serialization. - toposort
- Port of
internal/toposort: orders the nodes of a directed acyclic graph so that every node follows the nodes it depends on, using Kahn’s algorithm. - variables
- Port of
internal/variables: resolves caproni configuration variables. Supports user-defined static literal variables and predefined (built-in) variables, falling back to the process environment.