fix(tvix/eval): Propagate catchables in builtins.groupBy
One last place where we needed to wrap the forcing of the element of a list in `try_value!`. This fixes a previously `notyetpassing` test Change-Id: I8827a3e39630e6959013b70bdfa9cbcb93f4e91c Reviewed-on: https://cl.tvl.fyi/c/depot/+/10789 Autosubmit: aspen <root@gws.fyi> Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
This commit is contained in:
parent
1b233024c7
commit
5ced8e7292
3 changed files with 6 additions and 4 deletions
|
@ -558,11 +558,13 @@ mod pure_builtins {
|
||||||
async fn builtin_group_by(co: GenCo, f: Value, list: Value) -> Result<Value, ErrorKind> {
|
async fn builtin_group_by(co: GenCo, f: Value, list: Value) -> Result<Value, ErrorKind> {
|
||||||
let mut res: BTreeMap<NixString, imbl::Vector<Value>> = BTreeMap::new();
|
let mut res: BTreeMap<NixString, imbl::Vector<Value>> = BTreeMap::new();
|
||||||
for val in list.to_list()? {
|
for val in list.to_list()? {
|
||||||
let key = generators::request_force(
|
let key = try_value!(
|
||||||
&co,
|
generators::request_force(
|
||||||
generators::request_call_with(&co, f.clone(), [val.clone()]).await,
|
&co,
|
||||||
|
generators::request_call_with(&co, f.clone(), [val.clone()]).await,
|
||||||
|
)
|
||||||
|
.await
|
||||||
)
|
)
|
||||||
.await
|
|
||||||
.to_str()?;
|
.to_str()?;
|
||||||
|
|
||||||
res.entry(key).or_default().push_back(val);
|
res.entry(key).or_default().push_back(val);
|
||||||
|
|
Loading…
Reference in a new issue