Open mjaakkol opened 3 months ago
Confirmed. Thanks for the Issue @mjaakkol! 🙏🏻
Seems like the mixture of string and integer in `"localhost:1234" is unexpected.
Backtrace:
3: config::file::format::yaml::from_yaml_value
at ./src/file/format/yaml.rs:53:26
Assumed SerialSettings
is:
#[derive(serde::Deserialize, Clone)]
pub struct SerialSettings {
pub name: String,
}
Nevermind-- the underlying YAML library is "guessing" that localhost:1234
is a hash. I'll look into making ours "guess" better.
match *value {
...
yaml::Yaml::Integer(value) => Ok(Value::new(uri, ValueKind::I64(value))),
yaml::Yaml::Boolean(value) => Ok(Value::new(uri, ValueKind::Boolean(value))),
yaml::Yaml::Hash(ref table) => {
let mut m = Map::new();
for (key, value) in table {
match key {
yaml::Yaml::String(k) => m.insert(k.to_owned(), from_yaml_value(uri, value)?),
yaml::Yaml::Integer(k) => m.insert(k.to_string(), from_yaml_value(uri, value)?),
_ => {
println!("yaml::Yaml::{:?}", key);
unreachable!()
@mjaakkol if you want a quick fix, then separate localhost
and 1234
. 🩹
I'm getting above error as
Yaml file looks like
My structure definitions for the section are:
I believe above is valid yaml (not the best looking yaml but I'll add more things to the hashtable later so the structure is needed. This worked with 0.13.x