function: Removed Definition type Parameter() method (#968)
NOTES:
function: Provider-defined function features are now considered generally available and protected by compatibility promises (#966)
attr/xattr: The TypeWithValidate interface has been deprecated in preference of the ValidateableAttribute interface. A ValidatableParameter interface has also been added to the function package (#968)
FEATURES:
attr/xattr: Added ValidateableAttribute interface for custom value type implementations (#968)
function: Added ValidateableParameter interface for custom value type implementations (#968)
function: Add BoolParameterValidator, DynamicParameterValidator, Float64ParameterValidator, Int64ParameterValidator, ListParameterValidator, MapParameterValidator, NumberParameterValidator, ObjectParameterValidator, SetParameterValidator, and StringParameterValidator interfaces for custom function parameter validation implementations. (#971)
function: Add ParameterWithBoolValidators, ParameterWithInt64Validators, ParameterWithFloat64Validators, ParameterWithDynamicValidators, ParameterWithListValidators, ParameterWithMapValidators, ParameterWithNumberValidators, ParameterWithObjectValidators, ParameterWithSetValidators, and ParameterWithStringValidators interfaces to enable parameter-based validation support (#971)
BUG FIXES:
types/basetypes: Prevented panic in the MapValue types Equal method when the receiver has a nil elementType (#961)
types/basetypes: Prevented panic in the ListValue types Equal method when the receiver has a nil elementType (#961)
types/basetypes: Prevented panic in the SetValue types Equal method when the receiver has a nil elementType (#961)
resource: Ensured computed-only dynamic attributes will not cause wrong final value type errors during planning (#969)
v1.7.0
BREAKING CHANGES:
function: All parameters must be explicitly named via the Name field (#964)
function: DefaultParameterNamePrefix and DefaultVariadicParameterName constants have been removed (#964)
FEATURES:
types/basetypes: Added DynamicType and DynamicValue implementations for dynamic value handling (#147)
types/basetypes: Added interfaces basetypes.DynamicTypable, basetypes.DynamicValuable, and basetypes.DynamicValuableWithSemanticEquals for dynamic custom type and value implementations (#147)
resource/schema: Added DynamicAttribute implementation for dynamic value handling (#147)
datasource/schema: Added DynamicAttribute implementation for dynamic value handling (#147)
provider/schema: Added DynamicAttribute implementation for dynamic value handling (#147)
function: Added DynamicParameter and DynamicReturn for dynamic value handling` (#147)
resource/schema/dynamicdefault: New package with StaticValue implementation for dynamic schema-based default values (#147)
resource/schema/dynamicplanmodifier: New package with built-in implementations for dynamic value plan modification. (#147)
resource/schema/defaults: New Dynamic interface for dynamic schema-based default implementations (#147)
resource/schema/planmodifier: New Dynamic interface for dynamic value plan modification implementations (#147)
schema/validator: New Dynamic interface for dynamic value schema validation (#147)
v1.6.1
NOTES:
all: The v1.6.0 release updated this Go module to Go 1.21 per the Go support policy. It is recommended to review the Go 1.21 release notes before upgrading. Any consumers building on earlier Go versions may experience errors (#937)
function: Removed Definition type Parameter() method (#968)
NOTES:
function: Provider-defined function features are now considered generally available and protected by compatibility promises (#966)
attr/xattr: The TypeWithValidate interface has been deprecated in preference of the ValidateableAttribute interface. A ValidatableParameter interface has also been added to the function package (#968)
FEATURES:
attr/xattr: Added ValidateableAttribute interface for custom value type implementations (#968)
function: Added ValidateableParameter interface for custom value type implementations (#968)
function: Add BoolParameterValidator, DynamicParameterValidator, Float64ParameterValidator, Int64ParameterValidator, ListParameterValidator, MapParameterValidator, NumberParameterValidator, ObjectParameterValidator, SetParameterValidator, and StringParameterValidator interfaces for custom function parameter validation implementations. (#971)
function: Add ParameterWithBoolValidators, ParameterWithInt64Validators, ParameterWithFloat64Validators, ParameterWithDynamicValidators, ParameterWithListValidators, ParameterWithMapValidators, ParameterWithNumberValidators, ParameterWithObjectValidators, ParameterWithSetValidators, and ParameterWithStringValidators interfaces to enable parameter-based validation support (#971)
BUG FIXES:
types/basetypes: Prevented panic in the MapValue types Equal method when the receiver has a nil elementType (#961)
types/basetypes: Prevented panic in the ListValue types Equal method when the receiver has a nil elementType (#961)
types/basetypes: Prevented panic in the SetValue types Equal method when the receiver has a nil elementType (#961)
resource: Ensured computed-only dynamic attributes will not cause wrong final value type errors during planning (#969)
1.7.0 (March 21, 2024)
BREAKING CHANGES:
function: All parameters must be explicitly named via the Name field (#964)
function: DefaultParameterNamePrefix and DefaultVariadicParameterName constants have been removed (#964)
FEATURES:
types/basetypes: Added DynamicType and DynamicValue implementations for dynamic value handling (#147)
types/basetypes: Added interfaces basetypes.DynamicTypable, basetypes.DynamicValuable, and basetypes.DynamicValuableWithSemanticEquals for dynamic custom type and value implementations (#147)
resource/schema: Added DynamicAttribute implementation for dynamic value handling (#147)
datasource/schema: Added DynamicAttribute implementation for dynamic value handling (#147)
provider/schema: Added DynamicAttribute implementation for dynamic value handling (#147)
function: Added DynamicParameter and DynamicReturn for dynamic value handling` (#147)
resource/schema/dynamicdefault: New package with StaticValue implementation for dynamic schema-based default values (#147)
resource/schema/dynamicplanmodifier: New package with built-in implementations for dynamic value plan modification. (#147)
resource/schema/defaults: New Dynamic interface for dynamic schema-based default implementations (#147)
resource/schema/planmodifier: New Dynamic interface for dynamic value plan modification implementations (#147)
schema/validator: New Dynamic interface for dynamic value schema validation (#147)
tftypes: Large integers are always encoded as msgpack integers rather than float values to ensure the decoded value will not be rounded to 52-bit precision (#396)
v0.22.1
NOTES:
all: Upgraded google.golang.org/protobuf dependency, which includes a fix for CVE-2024-24786. While the fixed feature is not used in this Go module, this upgrade may silence security vulnerability scanner reports that are based purely on dependency versions. (#385)
BUG FIXES:
tftypes: Fixed an edge-case where (Value).Equal would panic when comparing two values with underlying DynamicPseudoType types and different concrete values. (#383)
v0.22.0
BREAKING CHANGES:
tfprotov5+tfprotov6: Modified the response returned from the CallFunction RPC, replacing diagnostics with function error (#380)
NOTES:
all: This Go module has been updated to Go 1.21 per the Go support policy. It is recommended to review the Go 1.21 release notes before upgrading. Any consumers building on earlier Go versions may experience errors. (#381)
all: If using terraform-plugin-framework, terraform-plugin-mux, or terraform-plugin-sdk, only upgrade this Go module when upgrading those Go modules to terraform-plugin-framework@v1.6.0, terraform-plugin-mux@v0.15.0, and terraform-plugin-sdk/v2@v2.33.0, or greater, respectively (#380)
tftypes: Large integers are always encoded as msgpack integers rather than float values to ensure the decoded value will not be rounded to 52-bit precision (#396)
0.22.1 (March 11, 2024)
NOTES:
all: Upgraded google.golang.org/protobuf dependency, which includes a fix for CVE-2024-24786. While the fixed feature is not used in this Go module, this upgrade may silence security vulnerability scanner reports that are based purely on dependency versions. (#385)
BUG FIXES:
tftypes: Fixed an edge-case where (Value).Equal would panic when comparing two values with underlying DynamicPseudoType types and different concrete values. (#383)
0.22.0 (February 22, 2024)
BREAKING CHANGES:
tfprotov5+tfprotov6: Modified the response returned from the CallFunction RPC, replacing diagnostics with function error (#380)
NOTES:
all: This Go module has been updated to Go 1.21 per the Go support policy. It is recommended to review the Go 1.21 release notes before upgrading. Any consumers building on earlier Go versions may experience errors. (#381)
all: If using terraform-plugin-framework, terraform-plugin-mux, or terraform-plugin-sdk, only upgrade this Go module when upgrading those Go modules to terraform-plugin-framework@v1.6.0, terraform-plugin-mux@v0.15.0, and terraform-plugin-sdk/v2@v2.33.0, or greater, respectively (#380)
helper/schema: While this Go module will not receive support for provider defined functions, the provider server is updated to handle the new operation, which will be required to prevent errors when updating terraform-plugin-framework or terraform-plugin-mux in the future (#1316)
helper/schema: While this Go module will not receive support for provider defined functions, the provider server is updated to handle the new operation, which will be required to prevent errors when updating terraform-plugin-framework or terraform-plugin-mux in the future (#1316)
helper/resource: Error messages generated by the testing logic, which were updated for clarity in this release, are not protected by compatibility promises. While testing logic errors are usable in certain scenarios with ErrorCheck and ExpectError functionality, error messaging checks should be based on provider-controlled messaging or when appropriate to use other testing features such as ExpectNonEmptyPlan instead. (#238)
Numerical values in the plan are now represented as json.Number, not float64. Custom plan checks relying upon float64 representation may need altering (#248)
plancheck: Deprecated ExpectNullOutputValue and ExpectNullOutputValueAtPath. Use ExpectKnownOutputValue and ExpectKnownOutputValueAtPath with knownvalue.Null instead (#275)
plancheck: ExpectKnownValue, ExpectKnownOutputValue and ExpectKnownOutputValueAtPath plan checks are considered experimental and may be altered or removed in a subsequent release (#276)
statecheck: ExpectKnownValue, ExpectKnownOutputValue and ExpectKnownOutputValueAtPath state checks are considered experimental and may be altered or removed in a subsequent release (#276)
knownvalue: The knownvalue package is considered experimental and may be altered or removed in a subsequent release (#276)
all: This Go module has been updated to Go 1.21 per the Go support policy. It is recommended to review the Go 1.21 release notes before upgrading. Any consumers building on earlier Go versions may experience errors (#300)
FEATURES:
plancheck: Added ExpectKnownValue plan check, which asserts that a given resource attribute has a defined type, and value (#248)
plancheck: Added ExpectKnownOutputValue plan check, which asserts that a given output value has a defined type, and value (#248)
plancheck: Added ExpectKnownOutputValueAtPath plan check, which asserts that a given output value at a specified path has a defined type, and value (#248)
knownvalue: Introduced new knownvalue package which contains types for working with plan checks and state checks (#248)
statecheck: Introduced new statecheck package with interface and built-in state check functionality (#275)
statecheck: Added ExpectKnownValue state check, which asserts that a given resource attribute has a defined type, and value (#275)
statecheck: Added ExpectKnownOutputValue state check, which asserts that a given output value has a defined type, and value (#275)
statecheck: Added ExpectKnownOutputValueAtPath plan check, which asserts that a given output value at a specified path has a defined type, and value (#275)
statecheck: Added ExpectSensitiveValue built-in state check, which asserts that a given attribute has a sensitive value (#275)
BUG FIXES:
helper/resource: Clarified error messaging from testing failures, especially when using TestStep.PlanOnly: true (#238)
helper/resource: Fix detection of provider block declaration in Config, ConfigDirectory, and ConfigFile (#265)
helper/resource: Fix detection of terraform block declaration in Config, ConfigDirectory, and ConfigFile (#265)
helper/resource: Fixed internal deferred test helpers to properly report file and line information in test failures. (#292)
helper/resource: Error messages generated by the testing logic, which were updated for clarity in this release, are not protected by compatibility promises. While testing logic errors are usable in certain scenarios with ErrorCheck and ExpectError functionality, error messaging checks should be based on provider-controlled messaging or when appropriate to use other testing features such as ExpectNonEmptyPlan instead. (#238)
Numerical values in the plan are now represented as json.Number, not float64. Custom plan checks relying upon float64 representation may need altering (#248)
plancheck: Deprecated ExpectNullOutputValue and ExpectNullOutputValueAtPath. Use ExpectKnownOutputValue and ExpectKnownOutputValueAtPath with knownvalue.Null instead (#275)
plancheck: ExpectKnownValue, ExpectKnownOutputValue and ExpectKnownOutputValueAtPath plan checks are considered experimental and may be altered or removed in a subsequent release (#276)
statecheck: ExpectKnownValue, ExpectKnownOutputValue and ExpectKnownOutputValueAtPath state checks are considered experimental and may be altered or removed in a subsequent release (#276)
knownvalue: The knownvalue package is considered experimental and may be altered or removed in a subsequent release (#276)
all: This Go module has been updated to Go 1.21 per the Go support policy. It is recommended to review the Go 1.21 release notes before upgrading. Any consumers building on earlier Go versions may experience errors (#300)
FEATURES:
plancheck: Added ExpectKnownValue plan check, which asserts that a given resource attribute has a defined type, and value (#248)
plancheck: Added ExpectKnownOutputValue plan check, which asserts that a given output value has a defined type, and value (#248)
plancheck: Added ExpectKnownOutputValueAtPath plan check, which asserts that a given output value at a specified path has a defined type, and value (#248)
knownvalue: Introduced new knownvalue package which contains types for working with plan checks and state checks (#248)
statecheck: Introduced new statecheck package with interface and built-in state check functionality (#275)
statecheck: Added ExpectKnownValue state check, which asserts that a given resource attribute has a defined type, and value (#275)
statecheck: Added ExpectKnownOutputValue state check, which asserts that a given output value has a defined type, and value (#275)
statecheck: Added ExpectKnownOutputValueAtPath plan check, which asserts that a given output value at a specified path has a defined type, and value (#275)
statecheck: Added ExpectSensitiveValue built-in state check, which asserts that a given attribute has a sensitive value (#275)
BUG FIXES:
helper/resource: Clarified error messaging from testing failures, especially when using TestStep.PlanOnly: true (#238)
helper/resource: Fix detection of provider block declaration in Config, ConfigDirectory, and ConfigFile (#265)
helper/resource: Fix detection of terraform block declaration in Config, ConfigDirectory, and ConfigFile (#265)
helper/resource: Fixed internal deferred test helpers to properly report file and line information in test failures. (#292)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
Bumps the gomod group with 5 updates:
1.5.0
1.8.0
0.21.0
0.22.2
0.14.0
0.15.0
2.32.0
2.33.0
1.6.0
1.7.0
Updates
github.com/hashicorp/terraform-plugin-framework
from 1.5.0 to 1.8.0Release notes
Sourced from github.com/hashicorp/terraform-plugin-framework's releases.
... (truncated)
Changelog
Sourced from github.com/hashicorp/terraform-plugin-framework's changelog.
... (truncated)
Commits
711b0a5
Update changelog9d9533c
build(deps): Bump github.com/hashicorp/terraform-plugin-go (#984)23c2403
Remove wildcard suffix fromsetup_terraform
workflow call (#981)392ed7c
website: Update testing documentation to utilize newstatecheck
and `knownv...de32b2c
basetypes: fix equality for values with nil elementType (#961)d36ac87
Add parameter-based provider-defined function validation (#971)f6057df
docs: Remove technical preview verbiage from provider-defined functions (#972)4a9b6a3
Add type-based provider-defined function parameter validation (#968)541a7cb
Small edit for style on a code comment (#975)484f311
internal/fwserver: Ensure computed dynamic values are marked as dynamic type ...Updates
github.com/hashicorp/terraform-plugin-go
from 0.21.0 to 0.22.2Release notes
Sourced from github.com/hashicorp/terraform-plugin-go's releases.
Changelog
Sourced from github.com/hashicorp/terraform-plugin-go's changelog.
Commits
8e2a4b5
Update changelog865883d
don't marshal integer values as msgpack floats (#396)6d19ca6
workflows: Remove wildcard suffix from Terraform workflow call (#395)b2e7097
build(deps): Bump google.golang.org/grpc from 1.63.0 to 1.63.2 (#394)06b2d94
build(deps): Bump google.golang.org/grpc from 1.62.1 to 1.63.0 (#393)1d146a8
build(deps): Bump google.golang.org/protobuf in /tools (#390)a99dc45
Update changelog0d7e0a1
Update CHANGELOG for #385 (#387)d47f32b
build(deps): Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 (#385)dea0021
build(deps): Bump google.golang.org/grpc from 1.62.0 to 1.62.1 (#386)Updates
github.com/hashicorp/terraform-plugin-mux
from 0.14.0 to 0.15.0Release notes
Sourced from github.com/hashicorp/terraform-plugin-mux's releases.
Changelog
Sourced from github.com/hashicorp/terraform-plugin-mux's changelog.
Commits
17f3671
Update changelog3557b60
all: Modify CallFunction implementations (#226) (#226)963d34b
Result of tsccr-helper -log-level=info gha update -latest . (#224)0127cd6
Result of tsccr-helper -log-level=info gha update -latest . (#223)ed533d4
Added GHA dependabot config for managing hashicorp actions (#222)Updates
github.com/hashicorp/terraform-plugin-sdk/v2
from 2.32.0 to 2.33.0Release notes
Sourced from github.com/hashicorp/terraform-plugin-sdk/v2's releases.
Changelog
Sourced from github.com/hashicorp/terraform-plugin-sdk/v2's changelog.
Commits
71cadbe
Update changelogb3a5571
Update meta package SDKVersion70fb6b9
all: Modify CallFunction implementations (#1316) (#1316)34d8a9e
Result of tsccr-helper -log-level=info gha update -latest . (#1313)43cfd32
build(deps): Bump github.com/hashicorp/hc-install from 0.6.2 to 0.6.3 (#1312)fee8c9c
build(deps): Bump golang.org/x/crypto from 0.18.0 to 0.19.0 (#1310)19a0da0
Result of tsccr-helper -log-level=info gha update -latest . (#1309)3e7e2e0
Added GHA dependabot config for managing hashicorp actions (#1308)Updates
github.com/hashicorp/terraform-plugin-testing
from 1.6.0 to 1.7.0Release notes
Sourced from github.com/hashicorp/terraform-plugin-testing's releases.
Changelog
Sourced from github.com/hashicorp/terraform-plugin-testing's changelog.
Commits
beb5594
Update changelog77f39ff
build(deps): Bump golang.org/x/crypto from 0.20.0 to 0.21.0 (#301)246ec98
Bump Go version to 1.21 (#300)8d96004
Adding experimental status and example usage forExpectKnownValue
, `ExpectK...cfd6640
build(deps): Bump github.com/hashicorp/hcl/v2 from 2.19.1 to 2.20.0 (#298)d9286db
build(deps): Bump github.com/zclconf/go-cty from 1.14.2 to 1.14.3 (#299)e3316c0
build(deps): Bump github.com/hashicorp/terraform-plugin-sdk/v2 (#296)ff585cf
Add calls tot.Helper()
indefer
ed functions (#293)a8803ed
build(deps): Bump golang.org/x/crypto from 0.19.0 to 0.20.0 (#297)058bbd4
Result of tsccr-helper -log-level=info gha update -latest . (#291)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show