Commit graph

23 commits

Author SHA1 Message Date
Daniel Schmidt
905845f363 copy rename
Some checks are pending
build / Build for windows_amd64 (push) Blocked by required conditions
build / Build for freebsd_arm (push) Blocked by required conditions
build / Build for linux_arm (push) Blocked by required conditions
build / Build for darwin_arm64 (push) Blocked by required conditions
build / Build for linux_arm64 (push) Blocked by required conditions
build / Build for windows_arm64 (push) Blocked by required conditions
build / Build Docker image for linux_386 (push) Blocked by required conditions
build / Build Docker image for linux_amd64 (push) Blocked by required conditions
build / Build Docker image for linux_arm (push) Blocked by required conditions
build / Build Docker image for linux_arm64 (push) Blocked by required conditions
build / Build e2etest for linux_386 (push) Blocked by required conditions
build / Build e2etest for windows_386 (push) Blocked by required conditions
build / Build e2etest for darwin_amd64 (push) Blocked by required conditions
build / Build e2etest for linux_amd64 (push) Blocked by required conditions
build / Build e2etest for windows_amd64 (push) Blocked by required conditions
build / Build e2etest for linux_arm (push) Blocked by required conditions
build / Build e2etest for darwin_arm64 (push) Blocked by required conditions
build / Build e2etest for linux_arm64 (push) Blocked by required conditions
build / Run e2e test for linux_386 (push) Blocked by required conditions
build / Run e2e test for windows_386 (push) Blocked by required conditions
build / Run e2e test for darwin_amd64 (push) Blocked by required conditions
build / Run e2e test for linux_amd64 (push) Blocked by required conditions
build / Run e2e test for windows_amd64 (push) Blocked by required conditions
build / Run e2e test for linux_arm (push) Blocked by required conditions
build / Run e2e test for linux_arm64 (push) Blocked by required conditions
build / Run terraform-exec test for linux amd64 (push) Blocked by required conditions
Quick Checks / Unit Tests (push) Waiting to run
Quick Checks / Race Tests (push) Waiting to run
Quick Checks / End-to-end Tests (push) Waiting to run
Quick Checks / Code Consistency Checks (push) Waiting to run
2026-02-23 15:38:55 +01:00
Daniel Schmidt
400689c44b hint to provider in case no deprecation message is set 2026-02-23 15:38:55 +01:00
Daniel Schmidt
a2e232856b read deprecation message for resource deprecations 2026-02-23 15:38:55 +01:00
Daniel Schmidt
77a54d4c8a improve documentation for deprecation methods 2026-02-23 14:43:00 +01:00
Radek Simko
0fe906fa8c make copyrightfix 2026-02-17 13:56:34 +00:00
Daniel Schmidt
84eeb0a113 improve wording of comments 2026-02-03 17:00:05 +01:00
Daniel Schmidt
edfe22d479 match naming scheme 2026-02-03 17:00:05 +01:00
Daniel Schmidt
69adc6a4c7 remove dead code 2026-02-03 17:00:05 +01:00
Daniel Schmidt
9cf9235582 track down precise deprecation locations in complex output values 2026-02-03 17:00:05 +01:00
Daniel Schmidt
5ed7d5134e refactor deprecation diag creation 2026-02-03 17:00:05 +01:00
Daniel Schmidt
3fd7a5052f limit the amount of additional remove deprecation mark calls 2026-02-03 17:00:05 +01:00
Daniel Schmidt
11e49b983a only unmark deep once for Validate 2026-02-03 17:00:05 +01:00
Daniel Schmidt
c7bc22ed79 only unmark deep once for ValidateDeep 2026-02-03 17:00:05 +01:00
Daniel Schmidt
76747e174c use format.CtyPath for formatting go-cty paths 2026-02-03 16:47:54 +01:00
Daniel Schmidt
7b28c88e66 improve wording of deprecation marks 2026-02-03 16:47:54 +01:00
Daniel Schmidt
7eaf6daf60 add deprecation marks to resources based on schema 2026-02-03 16:47:54 +01:00
Daniel Schmidt
379fa79c3e ElaborateFromConfigBody handles deeply nested paths more precisely 2026-02-03 16:04:43 +01:00
Daniel Schmidt
b09ef138fc use validate for primitive types 2026-02-03 16:04:43 +01:00
Daniel Schmidt
e6d969a2eb we only want to send diagnostics for deeply nested deprecations in certain locations
Mainly terminal locations for the value where they are used, such as the config of a resource, for_each, outputs.
We don't want to evaluate the deprecation deeply when it comes to values where the value is not yet used, e.g. locals
This is because if e.g. a deeply nested value is deprecated it should still be ok for the entire object to be in a local
whereas the same object should give a warning in e.g. an output
2026-02-03 16:04:43 +01:00
Daniel Schmidt
2f392d904e deprecation.Validate should only check top-level marks 2026-02-03 16:04:43 +01:00
Daniel Schmidt
75445e1ef8 use a string as deprecation origin to help with indirect references
We want to be able to give better information if e.g. the entire module is stored in a local and the deprecated value is only later used.

Where the diag is emitted we might only see the local and not the true origin of the deprecation

A string identifying the source of the deprecation should help
2026-02-03 16:04:43 +01:00
Daniel Schmidt
ea7f1e3043 add extra origin information for deprecation diagnostics 2026-02-03 16:04:43 +01:00
Daniel Schmidt
13247d19e2 add deprecation singleton
This struct tracks and validates deprecations in the context of a
graph walk. We need a struct to keep track of the module calls that
opt-out of deprecation warnings.
2026-02-03 15:39:25 +01:00