Fix return in filter closure eval (#12292)

# Description
Closes https://github.com/nushell/nushell/issues/12257

This was down to the use of `eval_block` instead of
`eval_block_with_early_return`. We may want to reconsider how we
differentiate between this behavior. We currently need to check all the
remaining commands that can invoke a closure block, if they properly
handle `ShellError::Return` as a passing of a `Value`

- **Add test for `return` in `filter` closure**
- **Fix use of `return` in `filter` closure**

# User-Facing Changes
You can now return a value from a `filter` closure


# Tests + Formatting
Regression test
This commit is contained in:
Stefan Holderbach
2024-03-26 17:50:36 +01:00
committed by GitHub
parent b70766e6f5
commit 592dc4bbfa
3 changed files with 24 additions and 5 deletions

View File

@ -30,6 +30,7 @@ mod every;
mod exec;
mod export_def;
mod fill;
mod filter;
mod find;
mod first;
mod flatten;