Evaluator
A performance optimization for the or builtin function has been reverted, as it caused a regression when its arguments included cyclic references.
Fix a regression introduced since v0.16.0 where a "field set was already referenced" error could appear when using an if comprehension inside a let block.
To ease the transition into the new formatter we plan to release with v0.18, CUE_EXPERIMENT=formatv2=0 is now allowed as a no-op.
cmd/cue
Module replaces are adjusted to rename the replace field in cue.mod/local-module.cue to replaceWith. See the proposal discussion for more information.
The "filetypes" lookup tables now use a more compact encoding, saving about 150KiB in binary size for cmd/cue as well as Go API users.
Full list of changes since v0.17.0-alpha.3