[DEPENDENCIES] Update module github.com/zclconf/go-cty to v1.17.0 #144
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v1.16.3->v1.17.0Release Notes
zclconf/go-cty (github.com/zclconf/go-cty)
v1.17.0Compare Source
ctynow requires Go 1.23 or later.cty.Value.Elementsoffers a moderniter.Seq2-based equivalent ofcty.Value.ElementIterator.cty.DeepValuesoffers a moderniter.Seq2-based equivalent ofcty.Walk.cty.Value.WrangleMarksDeepallows inspecting and modifying individual marks throughout a possibly-nested data structure.Having now got some experience using marks more extensively in some callers, it's become clear that it's often necessary for different subsystems to be able to collaborate using independent marks without upsetting each other's assumptions. Today that tends to be achieved using hand-written transforms either with
cty.Transformorcty.Value.UnmarkDeepWithPaths/cty.Value.MarkWithPaths, both of which can be pretty expensive even in the common case where there are no marks present at all.This new function allows inspecting and transforming marks with far less overhead, by creating new values only for parts of a structure that actually need to change and by reusing (rather than recreating) the "payloads" of the values being modified when we know that only the marks have changed.
cty.ValueMarksOfTypeandcty.ValueMarksOfTypeDeepmake it easier to use type-based rather than value-based mark schemes, where different values of a common type are used to track a specific kind of relationship with multiple external values.cty.Value.HasMarkDeepprovides a "deep" version of the existingcty.Value.HasMark, searching throughout a possibly-nested structure for any values that have the given mark.cty.Value.UnmarkDeepandcty.Value.UnmarkDeepWithPathsare now implemented in terms ofcty.Value.WrangleMarksDeep, so they benefit from its reduced overhead. In particular they avoid reconstructing a data structure that contains no marked values at all.cty.Value.MarkWithPathsnow has a fast path when it's given a zero-lengthPathValueMarks, in which case it just returns the value it was given with no modifications.v1.16.4Compare Source
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.
This PR has been generated by Renovate Bot.