fix(v1-fallback): actually fall back. lol (#119)

This commit is contained in:
Kat Marchán 2025-02-17 15:34:39 -08:00 committed by GitHub
parent b7cf2ec6fd
commit ce27425905
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 20 additions and 20 deletions

View File

@ -24,7 +24,7 @@ members = ["tools/*"]
miette.workspace = true miette.workspace = true
thiserror.workspace = true thiserror.workspace = true
num = "0.4.2" num = "0.4.2"
winnow = { version = "0.6.24", features = ["alloc", "unstable-recover"] } winnow = { version = "=0.6.24", features = ["alloc", "unstable-recover"] }
kdlv1 = { package = "kdl", version = "4.7.0", optional = true } kdlv1 = { package = "kdl", version = "4.7.0", optional = true }
[workspace.dependencies] [workspace.dependencies]

View File

@ -1 +1 @@
msrv = "1.70.0" msrv = "1.71.1"

View File

@ -353,7 +353,7 @@ impl KdlDocument {
{ {
let v2_res = KdlDocument::parse_v2(s); let v2_res = KdlDocument::parse_v2(s);
if v2_res.is_err() { if v2_res.is_err() {
let v1_res = KdlDocument::parse_v2(s); let v1_res = KdlDocument::parse_v1(s);
if v1_res.is_ok() || detect_v1(s) { if v1_res.is_ok() || detect_v1(s) {
v1_res v1_res
} else { } else {

View File

@ -2075,7 +2075,7 @@ mod failure_tests {
#[test] #[test]
fn bad_node_name_test() -> miette::Result<()> { fn bad_node_name_test() -> miette::Result<()> {
let input = Arc::new("foo { bar; { baz; }; }".to_string()); let input = Arc::new("foo { bar; { baz; }; }".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
// super::_print_diagnostic(res); // super::_print_diagnostic(res);
// return Ok(()); // return Ok(());
assert_eq!( assert_eq!(
@ -2095,7 +2095,7 @@ mod failure_tests {
)) ))
); );
let input = Arc::new("no/de 1 {\n 1 2 foo\n bad#\n}".to_string()); let input = Arc::new("no/de 1 {\n 1 2 foo\n bad#\n}".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
// super::_print_diagnostic(res); // super::_print_diagnostic(res);
// return Ok(()); // return Ok(());
assert_eq!( assert_eq!(
@ -2152,7 +2152,7 @@ mod failure_tests {
#[test] #[test]
fn bad_entry_number_test() -> miette::Result<()> { fn bad_entry_number_test() -> miette::Result<()> {
let input = Arc::new("node 1asdf 2".to_string()); let input = Arc::new("node 1asdf 2".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
// super::_print_diagnostic(res); // super::_print_diagnostic(res);
// return Ok(()); // return Ok(());
assert_eq!( assert_eq!(
@ -2171,7 +2171,7 @@ mod failure_tests {
); );
let input = Arc::new("node 0x1asdf 2".to_string()); let input = Arc::new("node 0x1asdf 2".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
assert_eq!( assert_eq!(
res, res,
Err(mkfail( Err(mkfail(
@ -2188,7 +2188,7 @@ mod failure_tests {
); );
let input = Arc::new("node 0o1asdf 2".to_string()); let input = Arc::new("node 0o1asdf 2".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
assert_eq!( assert_eq!(
res, res,
Err(mkfail( Err(mkfail(
@ -2205,7 +2205,7 @@ mod failure_tests {
); );
let input = Arc::new("node 0b1asdf 2".to_string()); let input = Arc::new("node 0b1asdf 2".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
assert_eq!( assert_eq!(
res, res,
Err(mkfail( Err(mkfail(
@ -2222,7 +2222,7 @@ mod failure_tests {
); );
let input = Arc::new("node 1.0asdf 2".to_string()); let input = Arc::new("node 1.0asdf 2".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
assert_eq!( assert_eq!(
res, res,
Err(mkfail( Err(mkfail(
@ -2239,7 +2239,7 @@ mod failure_tests {
); );
let input = Arc::new("node 1.asdf 2".to_string()); let input = Arc::new("node 1.asdf 2".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
assert_eq!( assert_eq!(
res, res,
Err(mkfail( Err(mkfail(
@ -2256,7 +2256,7 @@ mod failure_tests {
); );
let input = Arc::new("node 1.0easdf 2".to_string()); let input = Arc::new("node 1.0easdf 2".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
assert_eq!( assert_eq!(
res, res,
Err(mkfail( Err(mkfail(
@ -2282,7 +2282,7 @@ mod failure_tests {
#[test] #[test]
fn bad_string_test() -> miette::Result<()> { fn bad_string_test() -> miette::Result<()> {
let input = Arc::new("node \" 1".to_string()); let input = Arc::new("node \" 1".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
assert_eq!( assert_eq!(
res, res,
Err(mkfail( Err(mkfail(
@ -2299,7 +2299,7 @@ mod failure_tests {
); );
let input = Arc::new("node \"foo\"1".to_string()); let input = Arc::new("node \"foo\"1".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
// if let Err(e) = res { // if let Err(e) = res {
// println!("{:?}", miette::Report::from(e)); // println!("{:?}", miette::Report::from(e));
// } // }
@ -2319,7 +2319,7 @@ mod failure_tests {
); );
let input = Arc::new("node \"\nlet's do multiline!\"".to_string()); let input = Arc::new("node \"\nlet's do multiline!\"".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
assert_eq!( assert_eq!(
res, res,
Err(mkfail( Err(mkfail(
@ -2350,7 +2350,7 @@ mod failure_tests {
#[test] #[test]
fn bad_child_test() -> miette::Result<()> { fn bad_child_test() -> miette::Result<()> {
let input = Arc::new("node {".to_string()); let input = Arc::new("node {".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
// _print_diagnostic(res); // _print_diagnostic(res);
// return Ok(()); // return Ok(());
assert_eq!( assert_eq!(
@ -2369,7 +2369,7 @@ mod failure_tests {
); );
let input = Arc::new("node {}}".to_string()); let input = Arc::new("node {}}".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
// _print_diagnostic(res); // _print_diagnostic(res);
// return Ok(()); // return Ok(());
// println!("{res:#?}"); // println!("{res:#?}");
@ -2389,7 +2389,7 @@ mod failure_tests {
); );
let input = Arc::new("node }{".to_string()); let input = Arc::new("node }{".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
// _print_diagnostic(res); // _print_diagnostic(res);
// return Ok(()); // return Ok(());
assert_eq!( assert_eq!(
@ -2440,7 +2440,7 @@ mod failure_tests {
); );
let input = Arc::new("node {\n".to_string()); let input = Arc::new("node {\n".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
// _print_diagnostic(res); // _print_diagnostic(res);
// return Ok(()); // return Ok(());
assert_eq!( assert_eq!(
@ -2469,7 +2469,7 @@ mod failure_tests {
); );
let input = Arc::new("node {\nnode2{{}}".to_string()); let input = Arc::new("node {\nnode2{{}}".to_string());
let res: Result<KdlDocument, KdlError> = input.parse(); let res: Result<KdlDocument, KdlError> = KdlDocument::parse_v2(&input);
// _print_diagnostic(res); // _print_diagnostic(res);
// return Ok(()); // return Ok(());
println!("{res:#?}"); println!("{res:#?}");