Skip to content

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 31, 2024

This PR contains the following updates:

Package Change Age Confidence
github.com/hashicorp/terraform-plugin-framework v1.4.2 -> v1.16.1 age confidence

Release Notes

hashicorp/terraform-plugin-framework (github.com/hashicorp/terraform-plugin-framework)

v1.16.1

Compare Source

BUG FIXES:

  • all: Prevent identity change validation from raising an error when prior identity is empty (all attributes are null) (#​1229)
  • all: Added an additional validation check to ensure the resource identity object is not null. (#​1193)

v1.16.0

Compare Source

NOTES:

  • all: This Go module has been updated to Go 1.24 per the Go support policy. It is recommended to review the Go 1.24 release notes before upgrading. Any consumers building on earlier Go versions may experience errors. (#​1217)
  • Support for the new action{} block is in technical preview and offered without compatibility promises until Terraform 1.14 is generally available. (#​1181)
  • action: This release contains a new interface (action.Action) and packages for implementing action types, available in Terraform 1.14+. An action in Terraform can be defined by providers to model side-effects that practitioners can reference in their configurations via the lifecycle.action_trigger block. (#​1181)
  • List support is in technical preview and offered without compatibility promises until Terraform 1.14 is generally available. (#​1150)
  • list: This release contains a new interface (list.ListResource) and packages for implementing list resource types, available in Terraform 1.14+. A list resource in Terraform can be defined by providers to list remote resources within a given scope. (#​1150)

FEATURES:

  • action: New package for implementing actions. (#​1181)
  • action/schema: New package for implementing action schemas. (#​1183)
  • types: Exported a previously internal function, TerraformTypeToFrameworkType, which converts tftypes.Type to a known framework type. (#​1200)
  • list: New package for implementing list resources. (#​1150)
  • all: Update Framework to handle new ListResource RPCs. (#​1157)

ENHANCEMENTS:

  • provider: Added ProviderWithActions interface for implementing actions. (#​1181)
  • provider: Added ActionData to ConfigureResponse, to pass provider-defined data to action.Action implementations. (#​1185)
  • provider: Added ListResourceData to ConfigureResponse, to pass provider-defined data to list.ListResource implementations. (#​1202)
  • tfsdk: Allow SetAtPath to be called with a tftypes.Value. (#​1198)
  • tfsdk: Allow SetAttribute to be called with a tftypes.Value. (#​1205)
  • list: Add the ListResourceWithRawV5Schemas and ListResourceWithRawV6Schemas interfaces to support list implementation on non-framework resources. (#​1198)

v1.15.1

Compare Source

BUG FIXES:

  • all: Fixed bug with UseStateForUnknown where known null state values were not preserved during update plans. (#​1117)

v1.15.0

Compare Source

ATTENTION:
Please make sure to also update terraform-plugin-(go|mux|sdk|testing) when upgrading to this version. Otherwise there will be errors at runtime when using Terraform v1.12+ as this version of Plugin Framework supports the new resource identity feature and requires the supporting libraries to do so to.

Find #​1148 for more information.

TL;DR – make sure to update to these versions (or higher)

github.com/hashicorp/[email protected]
github.com/hashicorp/[email protected]
github.com/hashicorp/[email protected]
github.com/hashicorp/terraform-plugin-sdk/v2@​v2.37.0
github.com/hashicorp/[email protected]

NOTES:

  • all: This Go module has been updated to Go 1.23 per the Go support policy. It is recommended to review the Go 1.23 release notes before upgrading. Any consumers building on earlier Go versions may experience errors. (#​1114)
  • all: This release contains a new interface and package for implmenting managed resource identity. Resource identity is data that is defined by a separate schema and is stored alongside resource state. Identity data is used by Terrform to uniquely identify a remote object and is meant to be immutable during the remote object's lifecycle. Resources that support identity can now be imported using the identity attribute in Terraform configuration import blocks, available in Terraform v1.12+. The resource.ResourceWithIdentity interface can be implemented to support identity by defining an identity schema. Once the identity schema is defined, you can read and store identity data in the state file via the new Identity fields in the response objects on the resource CRUD methods. (#​1112)

FEATURES:

  • tfsdk: Added ResourceIdentity struct to represent managed resource identity data. (#​1112)
  • resource/identityschema: New package for implementing managed resource identity schemas. (#​1107)
  • resource: Added new ImportStatePassthroughWithIdentity helper that can support both identity and ID importing via a single field. (#​1134)
  • resource: Added ResourceWithIdentity interface for implementing managed resource identity. (#​1107)

ENHANCEMENTS:

  • resource: Updated Create, Update, Read, and Delete request and response objects to support the passing of identity data. (#​1112)
  • resource: Updated ImportState method to allow importing by resource identity and returning identity data from import response. (#​1126)

v1.14.1

Compare Source

BUG FIXES:

  • internal/fwserver: fixed bug where write-only attributes set in configuration would cause perpetual diffs for computed attributes. (#​1097)

v1.14.0

Compare Source

NOTES:

  • Write-only attribute support is in technical preview and offered without compatibility promises until Terraform 1.11 is generally available. (#​1044)
  • ephemeral: Ephemeral resources are now considered generally available and protected by compatibility promises. (#​1052)

FEATURES:

  • resource/schema: Added WriteOnly schema field for managed resource schemas to indicate a write-only attribute. Write-only attribute values are not saved to the Terraform plan or state artifacts. (#​1044)

BUG FIXES:

  • internal/fwschemadata: Set semantic equality logic has been adjusted and will now ignore order of elements during comparison. (#​1061)
  • internal/fwserver: Fixed bug where dynamic attributes would not prompt invalid configuration error messages (#​1090)

v1.13.0

Compare Source

NOTES:

  • Ephemeral resource support is in technical preview and offered without compatibility promises until Terraform 1.10 is generally available. (#​1050)

FEATURES:

  • ephemeral: New package for implementing ephemeral resources (#​1050)
  • ephemeral/schema: New package for implementing ephemeral resource schemas (#​1050)

ENHANCEMENTS:

  • provider: Added ProviderWithEphemeralResources interface for implementing ephemeral resources (#​1050)
  • tfsdk: Added EphemeralResultData struct for representing ephemeral values produced by a provider, such as from an ephemeral resource (#​1050)
  • provider: Added EphemeralResourceData to ConfigureResponse, to pass provider-defined data to ephemeral.EphemeralResource implementations (#​1050)

v1.12.0

Compare Source

NOTES:

BUG FIXES:

  • providerserver: Fixed bug that prevented moved operation support between resource types for framework-only providers. (#​1039)

v1.11.0

Compare Source

NOTES:

  • Framework reflection logic (Config.Get, Plan.Get, etc.) for structs with
    tfsdk field tags has been updated to support embedded structs that promote exported
    fields. For existing structs that embed unexported structs with exported fields, a tfsdk
    ignore tag (tfsdk:"-") can be added to ignore all promoted fields.

For example, the following struct will now return an error diagnostic:

type thingResourceModel struct {
	Attr1 types.String `tfsdk:"attr_1"`
	Attr2 types.Bool   `tfsdk:"attr_2"`

	// Previously, this embedded struct was ignored, will now promote underlying fields
	embeddedModel
}

type embeddedModel struct {
	// No `tfsdk` tag
	ExportedField string
}

To preserve the original behavior, a tfsdk ignore tag can be added to ignore the entire embedded struct:

type thingResourceModel struct {
	Attr1 types.String `tfsdk:"attr_1"`
	Attr2 types.Bool   `tfsdk:"attr_2"`

	// This embedded struct will now be ignored
	embeddedModel      `tfsdk:"-"`
}

type embeddedModel struct {
	ExportedField string
}

(#​1021)

ENHANCEMENTS:

  • all: Added embedded struct support for object to struct conversions with tfsdk tags (#​1021)

v1.10.0

Compare Source

FEATURES:

  • types/basetypes: Added Int32Type and Int32Value implementations for Int32 value handling. (#​1010)
  • types/basetypes: Added interfaces basetypes.Int32Typable, basetypes.Int32Valuable, and basetypes.Int32ValuableWithSemanticEquals for Int32 custom type and value implementations. (#​1010)
  • resource/schema: Added Int32Attribute implementation for Int32 value handling. (#​1010)
  • datasource/schema: Added Int32Attribute implementation for Int32 value handling. (#​1010)
  • provider/schema: Added Int32Attribute implementation for Int32 value handling. (#​1010)
  • function: Added Int32Parameter and Int32Return for Int32 value handling. (#​1010)
  • resource/schema/int32default: New package with StaticValue implementation for Int32 schema-based default values. (#​1010)
  • resource/schema/int32planmodifier: New package with built-in implementations for Int32 value plan modification. (#​1010)
  • resource/schema/defaults: New Int32 interface for Int32 schema-based default implementations. (#​1010)
  • resource/schema/planmodifier: New Int32 interface for Int32 value plan modification implementations. (#​1010)
  • schema/validator: New Int32 interface for Int32 value schema validation. (#​1010)
  • types/basetypes: Added Float32Type and Float32Value implementations for Float32 value handling. (#​1014)
  • types/basetypes: Added interfaces basetypes.Float32Typable, basetypes.Float32Valuable, and basetypes.Float32ValuableWithSemanticEquals for Float32 custom type and value implementations. (#​1014)
  • resource/schema: Added Float32Attribute implementation for Float32 value handling. (#​1014)
  • datasource/schema: Added Float32Attribute implementation for Float32 value handling. (#​1014)
  • provider/schema: Added Float32Attribute implementation for Float32 value handling. (#​1014)
  • function: Added Float32Parameter and Float32Return for Float32 value handling. (#​1014)
  • resource/schema/float32default: New package with StaticValue implementation for Float32 schema-based default values. (#​1014)
  • resource/schema/float32planmodifier: New package with built-in implementations for Float32 value plan modification. (#​1014)
  • resource/schema/defaults: New Float32 interface for Float32 schema-based default implementations. (#​1014)
  • resource/schema/planmodifier: New Float32 interface for Float32 value plan modification implementations. (#​1014)
  • schema/validator: New Float32 interface for Float32 value schema validation. (#​1014)

v1.9.0

Compare Source

NOTES:

  • resource: If plan modification was dependent on nested attribute plan modification automatically running when the nested object was null/unknown, it may be necessary to add object-level plan modification to convert the nested object to a known object first. (#​995)
  • This release contains support for deferred actions, which is an experimental feature only available in prerelease builds of Terraform 1.9 and later. This functionality is subject to change and is not protected by version compatibility guarantees. (#​999)

FEATURES:

  • resource: Add Deferred field to ReadResponse, ModifyPlanResponse, and ImportStateResponse which indicates a resource deferred action to the Terraform client (#​999)
  • datasource: Add Deferred field to ReadResponse which indicates a data source deferred action to the Terraform client (#​999)
  • resource: Add ClientCapabilities field to ReadRequest, ModifyPlanRequest, and ImportStateRequest which specifies optionally supported protocol features for the Terraform client (#​999)
  • datasource: Add ClientCapabilities field to ReadRequest which specifies optionally supported protocol features for the Terraform client (#​999)
  • provider: Add Deferred field to ConfigureResponse which indicates a provider deferred action to the Terraform client (#​1002)
  • provider: Add ClientCapabilities field to ConfigureRequest which specifies optionally supported protocol features for the Terraform client (#​1002)

ENHANCEMENTS:

  • function: Introduced implementation errors for collection and object parameters and returns which are missing type information (#​991)

BUG FIXES:

  • resource: Prevented errant collection-based nested object conversion from null/unknown object to known object (#​995)

v1.8.0

Compare Source

BREAKING CHANGES:

  • 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

Compare Source

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

Compare Source

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)

BUG FIXES:

  • resource/schema: Ensured invalid attribute default value errors are raised (#​930)
  • function: Added implementation validation to function.Definition to ensure all parameter names (including the variadic parameter) are unique. (#​926)
  • function: Updated the default parameter name to include the position of the parameter (i.e. param1, param2, etc.). Variadic parameters will default to varparam. (#​926)

v1.6.0

Compare Source

BREAKING CHANGES:

  • function: Changed the framework type for variadic parameters to types.TupleType, where each element is the same element type. Provider-defined functions using a types.List for retrieving variadic argument data will need to update their code to use types.Tuple. (#​923)
  • function: Altered the RunResponse type, replacing Diagnostics with FuncError (#​925)
  • diag: Removed DiagnosticWithFunctionArgument interface. Removed NewArgumentErrorDiagnostic(), NewArgumentWarningDiagnostic() and WithFunctionArgument() functions. Removed AddArgumentError() and AddArgumentWarning() methods from Diagnostics. (#​925)

FEATURES:

  • resource: Added the ResourceWithMoveState interface, which enables state moves across resource types with Terraform 1.8 and later (#​917)

ENHANCEMENTS:

  • privatestate: Added support for SetKey() method to fully remove key with nil or zero-length value (#​910)
  • function: Added FuncError type, required for RunResponse (#​925)
  • function: Added NewFuncError() and NewArgumentFuncError() functions, which create a FuncError (#​925)
  • function: Added ConcatFuncErrors() and FuncErrorFromDiags() helper functions for use when working with FuncError (#​925)

v1.5.0

Compare Source

NOTES:

  • all: Update google.golang.org/grpc dependency to address CVE-2023-44487 (#​865)
  • Provider-defined function support is in technical preview and offered without compatibility promises until Terraform 1.8 is generally available. (#​889)

FEATURES:

  • function: New package for implementing provider defined functions (#​889)

ENHANCEMENTS:

  • types/basetypes: Added TupleType and TupleValue implementations, which are only necessary for dynamic value handling (#​870)
  • diag: Added NewArgumentErrorDiagnostic() and NewArgumentWarningDiagnostic() functions, which create diagnostics with the function argument position set (#​889)
  • provider: Added ProviderWithFunctions interface for implementing provider defined functions (#​889)
  • diag: Added (Diagnostics).AddArgumentError() and (Diagnostics).AddArgumentWarning() methods for appending function argument diagnostics (#​889)

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 becomes conflicted, 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 Oct 31, 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):

  • 15 additional dependencies were updated

Details:

Package Change
github.com/hashicorp/terraform-plugin-go v0.19.0 -> v0.29.0
github.com/davecgh/go-spew v1.1.1 -> v1.1.2-0.20180830191138-d8f796af33cc
github.com/golang/protobuf v1.5.3 -> v1.5.4
github.com/google/uuid v1.3.0 -> v1.6.0
github.com/hashicorp/go-plugin v1.5.1 -> v1.7.0
github.com/hashicorp/terraform-registry-address v0.2.2 -> v0.4.0
github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d -> v0.1.2
github.com/oklog/run v1.0.0 -> v1.1.0
github.com/pmezard/go-difflib v1.0.0 -> v1.0.1-0.20181226105442-5d4384ee4fb2
github.com/vmihailenco/msgpack/v5 v5.3.5 -> v5.4.1
golang.org/x/crypto v0.38.0 -> v0.41.0
golang.org/x/net v0.38.0 -> v0.43.0
google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 -> v0.0.0-20250707201910-8d1bb00bc6a7
google.golang.org/grpc v1.57.1 -> v1.75.1
google.golang.org/protobuf v1.31.0 -> v1.36.9

@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 9670f8a to 1e0caa2 Compare November 16, 2024 12:27
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 1e0caa2 to 5255fdc Compare December 22, 2024 19:04
@renovate renovate bot changed the title fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.13.0 fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.14.0 Feb 19, 2025
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 5255fdc to 80bb27e Compare February 19, 2025 19:06
@renovate renovate bot changed the title fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.14.0 fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.14.1 Feb 20, 2025
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 80bb27e to 4fcd0dc Compare February 20, 2025 16:52
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 4fcd0dc to 38466e4 Compare March 3, 2025 11:57
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch 2 times, most recently from a0c1d52 to ef41f44 Compare March 13, 2025 18:14
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from ef41f44 to f2ddb2e Compare April 8, 2025 12:40
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from f2ddb2e to 12efc80 Compare April 24, 2025 07:52
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 12efc80 to c101bd9 Compare May 7, 2025 14:14
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from c101bd9 to 689f86b Compare May 16, 2025 20:02
@renovate renovate bot changed the title fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.14.1 fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.15.0 May 16, 2025
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 689f86b to 61569a5 Compare July 31, 2025 18:48
@renovate renovate bot changed the title fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.15.0 fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.15.1 Jul 31, 2025
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch 2 times, most recently from 6cae42b to bb8f481 Compare August 13, 2025 16:44
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from bb8f481 to 0c6f74e Compare September 17, 2025 18:47
@renovate renovate bot changed the title fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.15.1 fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.16.0 Sep 17, 2025
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 0c6f74e to a647ae8 Compare September 19, 2025 10:35
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from a647ae8 to 8ca7961 Compare September 29, 2025 16:44
@renovate renovate bot changed the title fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.16.0 fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1.16.1 Sep 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Bots

Development

Successfully merging this pull request may close these issues.

0 participants