Skip to content
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

chore(deps): update module cuelang.org/go to v0.12.0 #425

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 15, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
cuelang.org/go v0.0.15 -> v0.12.0 age adoption passing confidence

Release Notes

cue-lang/cue (cuelang.org/go)

v0.12.0

Compare Source

This release fixes dozens of bugs in the new evaluator, enables the embed and toposort experiments by default, further improves JSON Schema support, and introduces cue exp gengotypes.

Changes which may break some users are marked below with: ⚠️

Evaluator

CL 1205861 enables the Embedding proposal via CUE_EXPERIMENT=embed by default, given that the proposal was accepted in late December.

Since v0.11.0, an experimental "topological sorting" of struct fields has been available via CUE_EXPERIMENT=toposort; this release enables the experiment by default. Topological sorting produces a more principled ordering of fields as produced by cue export and cue eval. The intent is to ensure the old and new evaluators order struct fields in the same way, in order to build confidence and ease the transition to the new evaluator.

We encourage all CUE users to update to this release and switch to topological sorting for their CUE outputs. An issue for gathering feedback is available, should you run into any issues.

A great deal of work has happened in the new evaluator, which can be used via CUE_EXPERIMENT=evalv3. Marcel also recently posted another update on performance progress. Below is a selection of particularly relevant changes in the new evaluator.

CLs 1204490, 1204669, and 1205368 resolve a number of significant performance issues spotted in the new evaluator.

CLs 1206123, 1206178, 1206284, 1206321, 1206385, and 1207910 fix a number of disjunction issues leading to incorrect behavior in the new evaluator.

CLs 1206327, 1206383, and 1206384 fix a number of cycle issues leading to incorrect errors in the new evaluator.

CLs 1206823, 1207237, 1207314, 1204365, 1205361, 1205363, and 1207714 fix a number of closedness issues which resulted in missing or incorrect errors in the new evaluator.

CL 1207912 fixes a regression which could cause "not properly initialized" errors in the new evaluator.

CLs 1206926, 1207169, 1207263, 1207545, and 1207715 fix panics which were recently discovered.

CL 1205862 sorts conjuncts in binary expressions to reduce ordering differences between evaluator versions.

CL 1207908 ensures that conversions of Go values to CUE respect struct field order, for the sake of topological sorting.

CL 1207907 ensures that converting Go arrays to CUE uses list.Repeat rather than the now-removed list arithmetic syntax.

CL 1204491 introduces CUE_DEBUG=openinline, enabled by default, which emulates the old evaluator's incorrect closedness behavior in some edge cases. This should help the transition towards the new evaluator, and allow us to fix the behavior of these edge cases in future CUE releases.

CL 1204608 introduces CUE_DEBUG=sortfields which sorts all struct fields lexicographically. This replaces CUE_DEBUG_SORT_ARCS=1, which did not work with the new evaluator.

Go API

⚠️ CL 1205569 enables CUE_EXPERIMENT=decodeint64 by default, causing cue.Value.Decode to choose int64 rather than int as the default Go type for CUE integer values.

CL 1206368 adds a cue/token.Pos.Compare method to allow comparing two positions, for example to sort via slices.SortFunc.

CL 1207007 adds encoding/jsonschema.Config.AllowNonExistentRoot to prevent an error when no value is found at the Config.Root path.

Builtins

CL 1204378 teaches list.UniqueItems to handle incomplete values correctly, fixing a bug in JSON Schema.

CL 1204425 fixes list.MatchN so that it matches final values, like the matchN evaluator built-in, fixing a bug in JSON Schema.

⚠️ CL 1204920 removes the long-deprecated cue.Value.IsClosed method.

⚠️ CL 1205530 removes the long-deprecated cue.Instance.Doc method.

⚠️ CL 1205529 removes the long-deprecated cue/load.Config.BuildTags field.

cmd/cue

CL 1207142 adds the new command cue mod rename to aid in changing the module path of the current module.

⚠️ CL 1206950 fixes an issue where incomplete errors were not being reported by cue eval and cue vet.

CL 1204111 fixes some edge cases where CUE comments were lost or duplicated, particularly with cue def.

CL 1204874 re-enables command suggestions when a user makes a typo like cue exprot.

CL 1206784 fixes an issue where arguments and flags in cue cmd could not be interspersed, unlike other subcommands.

Encodings

The new experimental command cue exp gengotypes allows generating Go type definitions derived from exported CUE schemas. This can be a nice alternative to cue get go for projects developing both CUE and Go, if one wishes to maintain the source of truth for shared schemas in CUE. cue exp gengotypes is generally more reliable than cue get go, given that Go's type system is not as powerful.

JSON Schema spec compatibility is improved further by fixing a number of bugs and adding missing features. Notably, it now supports arbitrary references to internal structure in $ref. JSON Schema's spec test suite has gone from a "pass" rate of 75% to 79% thanks to these efforts.

⚠️ CL 1207146 tweaks JSON Schema to not generate defaults, given that they are annotations rather than constraints, and generating CUE defaults causes various issues.

Full list of changes since v0.11.0

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Copy link
Contributor Author

renovate bot commented Aug 15, 2024

ℹ Artifact update notice

File name: go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 3 additional dependencies were updated
  • The go directive was updated for compatibility reasons

Details:

Package Change
go 1.23.4 -> 1.23.5
golang.org/x/crypto v0.31.0 -> v0.32.0
golang.org/x/net v0.27.0 -> v0.34.0
golang.org/x/sys v0.28.0 -> v0.29.0

@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch from 8d01747 to c938f0e Compare August 22, 2024 12:35
@carstendietrich
Copy link
Member

breaking change, see #202

@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch from c938f0e to 609ff31 Compare August 22, 2024 13:07
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch 6 times, most recently from 964b9dc to fef520a Compare September 5, 2024 13:13
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch 6 times, most recently from 246d0bc to 2d35a3f Compare September 19, 2024 13:43
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch 4 times, most recently from 6d9fd8e to 282b448 Compare September 30, 2024 08:55
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch from 282b448 to f89cd61 Compare October 22, 2024 15:37
@renovate renovate bot changed the title chore(deps): update module cuelang.org/go to v0.10.0 chore(deps): update module cuelang.org/go to v0.10.1 Oct 22, 2024
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch 3 times, most recently from 6db8ad3 to 9d65d74 Compare October 31, 2024 13:56
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch from 9d65d74 to 6424175 Compare November 19, 2024 19:49
@renovate renovate bot changed the title chore(deps): update module cuelang.org/go to v0.10.1 chore(deps): update module cuelang.org/go to v0.11.0 Nov 19, 2024
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch 2 times, most recently from a3c12fd to 0b494a7 Compare November 28, 2024 14:11
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch 2 times, most recently from 9ea627b to ff636bd Compare November 28, 2024 14:38
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch 4 times, most recently from 68cacc6 to b2a098f Compare December 12, 2024 15:18
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch from b2a098f to 47fd055 Compare December 18, 2024 20:49
@renovate renovate bot changed the title chore(deps): update module cuelang.org/go to v0.11.0 chore(deps): update module cuelang.org/go to v0.11.1 Dec 18, 2024
@renovate renovate bot changed the title chore(deps): update module cuelang.org/go to v0.11.1 chore(deps): update module cuelang.org/go to v0.11.1 - autoclosed Dec 27, 2024
@renovate renovate bot closed this Dec 27, 2024
@renovate renovate bot deleted the renovate/cuelang.org-go-0.x branch December 27, 2024 03:38
@renovate renovate bot changed the title chore(deps): update module cuelang.org/go to v0.11.1 - autoclosed chore(deps): update module cuelang.org/go to v0.11.1 Dec 27, 2024
@renovate renovate bot reopened this Dec 27, 2024
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch from 3f843de to 47fd055 Compare December 27, 2024 07:21
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch 5 times, most recently from ff52986 to b2e561b Compare January 9, 2025 14:11
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch from b2e561b to 064fa62 Compare January 22, 2025 13:25
@renovate renovate bot changed the title chore(deps): update module cuelang.org/go to v0.11.1 chore(deps): update module cuelang.org/go to v0.11.2 Jan 22, 2025
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch from 064fa62 to f5c8ebd Compare January 23, 2025 14:03
@renovate renovate bot changed the title chore(deps): update module cuelang.org/go to v0.11.2 chore(deps): update module cuelang.org/go to v0.11.2 - autoclosed Jan 29, 2025
@renovate renovate bot closed this Jan 29, 2025
@renovate renovate bot changed the title chore(deps): update module cuelang.org/go to v0.11.2 - autoclosed chore(deps): update module cuelang.org/go to v0.11.2 Jan 29, 2025
@renovate renovate bot reopened this Jan 29, 2025
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch from 1c1c370 to f5c8ebd Compare January 29, 2025 14:04
@renovate renovate bot force-pushed the renovate/cuelang.org-go-0.x branch from f5c8ebd to 13d0285 Compare January 30, 2025 13:04
@renovate renovate bot changed the title chore(deps): update module cuelang.org/go to v0.11.2 chore(deps): update module cuelang.org/go to v0.12.0 Jan 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant