github cue-lang/cue v0.15.1

10 hours ago

Evaluator

Fix an evalv3 regression first introduced in v0.11.0 where the and built-in function started evaluating its arguments too eagerly, causing failures in cue def.

Fix an evalv3 regression where closedness info could be lost when using a comprehension.

Fix a bug where the evaluator would panic on alias cycles with dynamic fields rather than giving a good error.

LSP

Formatting standalone CUE files - either without a package name, or outside of a CUE module - now works correctly.

Fix a bug where trying to use "find references" on a CUE module with nested modules would cause a hang.

Fix a bug where resolving path roots did not work correctly in the presence of struct embeddings.

cmd/cue

Fix a regression in v0.15.0 where cue get go no longer skipped generating CUE files without any declarations.

Go API

Fix a bug in the subsume package where a struct with a pattern constraint did not subsume a closed struct with a matching field.

Rename the bootstrap build tag used in the internal/filetypes package to cuebootstrap to avoid conflicts with build tags in other Go modules.

Full list of changes since v0.15.0
  • bump pinnedReleaseGo and LanguageVersion for v0.15.1 by @mvdan in 350755e
  • lsp/fscache: improve removal of phantom package decls by @cuematthew in bcc9a45
  • internal/lsp: format standalone files without phantom pkg names by @cuematthew in bf16055
  • lsp/definitions: correct resolution of path roots by @cuematthew in e64569f
  • lsp/definitions: add test to show faulty resolution by @cuematthew in f2076ae
  • lsp/cache: stop nested modules from breaking find-references by @cuematthew in 6d75085
  • internal/core/compile: don't panic on an alias cycle with a dynamic field by @mvdan in cf6c597
  • internal/core/compile: revert and to use Func instead of RawFunc by @mvdan in 37e8637
  • cue/testdata: add test case for #3719 by @mvdan in de5328e
  • internal/core/subsume: fix duplicate logic for pattern constraints by @mvdan in a229275
  • internal/core/subsume: add test cases for pattern constraints by @mvdan in bca0a55
  • internal/filetypes: use a less generic bootstrap build tag by @mvdan in 94f2f0e
  • cmd/cue: do not emit empty CUE files in get go again by @mvdan in 819474c
  • cmd/cue: test that we don't emit empty CUE files without --outfile by @mvdan in e61516d
  • internal/core/adt: check removed scope per conjunct by @mvdan in 2e8e111
  • cue/testdata: add a test case for #4180 by @mvdan in f81118c

Don't miss a new cue release

NewReleases is sending notifications on new releases.