Skip to content

evalv3 structural cycle regression compared to evalv2 #3903

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
mvdan opened this issue Apr 25, 2025 · 0 comments
Open

evalv3 structural cycle regression compared to evalv2 #3903

mvdan opened this issue Apr 25, 2025 · 0 comments
Labels
evaluator evalv3 issues affecting only the evaluator version 3

Comments

@mvdan
Copy link
Member

mvdan commented Apr 25, 2025

# evalv2
env CUE_EXPERIMENT=evalv3=0
exec cue export

# evalv3
env CUE_EXPERIMENT=evalv3=1
exec cue export

-- input.cue --
package p

s1: #Schema & {
	_deps: [s2]
	_local: ["s1 local"]
}
s2: #Schema & {
	_local: ["s2 local"]
}

#Schema: {
	_local: [...string]
	_deps: [...]

	objs: [
		for obj in _local { obj },

		for dep in _deps
		for obj in (dep & {}).objs {
			obj
		},
	]
}

As of a7e97fe:

# evalv2 (0.011s)
> env CUE_EXPERIMENT=evalv3=0
> exec cue export
[stdout]
{
    "s1": {
        "objs": [
            "s1 local",
            "s2 local"
        ]
    },
    "s2": {
        "objs": [
            "s2 local"
        ]
    }
}
# evalv3 (0.013s)
> env CUE_EXPERIMENT=evalv3=1
> exec cue export
[stderr]
structural cycle:
    ./input.cue:7:5
[exit status 1]
FAIL: repro-evalv3.txtar:7: unexpected command failure

Thanks to @nxcc for reporting this - the above was reduced from a private reproducer he shared with us.

@mvdan mvdan added evaluator evalv3 issues affecting only the evaluator version 3 labels Apr 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
evaluator evalv3 issues affecting only the evaluator version 3
Projects
None yet
Development

No branches or pull requests

1 participant