diff --git a/TODO.md b/TODO.md index e0480bf403..0fea02b76b 100644 --- a/TODO.md +++ b/TODO.md @@ -41,15 +41,15 @@ - [ ] external command signatures - [ ] shells - [ ] autoenv -- [ ] dataframes +- [x] dataframes - [ ] overlays (replacement for `autoenv`), adding modules to shells -- [ ] port over `which` logic +- [x] port over `which` logic - [ ] port test support crate so we can test against sample files, including multiple inputs into the CLI -- [ ] benchmarking +- [x] benchmarking - [ ] finish adding config properties - [ ] system-agnostic test cases - [ ] exit codes -- [ ] auto-cd +- [x] auto-cd - [ ] length of time the command runs put in the env (CMD_DURATION_MS) ## Post-nushell merge: diff --git a/crates/nu-parser/src/parser.rs b/crates/nu-parser/src/parser.rs index e932d64c18..bb5c30032d 100644 --- a/crates/nu-parser/src/parser.rs +++ b/crates/nu-parser/src/parser.rs @@ -3609,7 +3609,7 @@ fn wrap_expr_with_collect(working_set: &mut StateWorkingSet, expr: &Expression) let mut signature = Signature::new(""); signature.required_positional.push(PositionalArg { var_id: Some(var_id), - name: "$it".into(), + name: "$in".into(), desc: String::new(), shape: SyntaxShape::Any, }); @@ -3639,9 +3639,12 @@ fn wrap_expr_with_collect(working_set: &mut StateWorkingSet, expr: &Expression) custom_completion: None, }); + // The containing, synthetic call to `collect`. + // We don't want to have a real span as it will confuse flattening + // The args are where we'll get the real info Expression { expr: Expr::Call(Box::new(Call { - head: span, + head: Span::new(0, 0), named: vec![], positional: output, decl_id,