Releases: hashicorp/terraform-plugin-framework
Releases · hashicorp/terraform-plugin-framework
v1.16.0-beta.1
FEATURES:
- actions: Initial package implementation and new Actions RPC support (#1181)
ENHANCEMENTS:
- list: add
limit
field toListResult
(#1182) - list: add primitives, list and map types to schema (#1177)
- actions: add schema interface and unlinked schema (#1183)
- actions: add standard validation methods and interfaces for
ValidateActionConfig
RPCs (#1188) - actions: add attributes and nested blocks to schema package (#1186)
BUG FIXES:
- list: call
Configure
inListResource
RPC and remove theListResource
call inValidateListResourceConfig
(#1192)
v1.15.1
v1.16.0-alpha.1
NOTES:
- This alpha pre-release contains the initial implementation for list resource that returns a list of resource identities for a single managed resource type. (#1157)
- The ListResource and ValidateListResourceConfig RPCs are considered experimental and may change up until general availability (#1178)
BUG FIXES:
- all: Fixed bug with
UseStateForUnknown
where known null state values were not preserved during update plans. (#1117)
v1.15.0
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/[email protected]
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 configurationimport
blocks, available in Terraform v1.12+. Theresource.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 newIdentity
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:
v1.15.0-beta.1
NOTES:
- This beta pre-release continues the implementation of managed resource identity, which should now be used with Terraform v1.12.0-beta1. Managed resources now can support import by identity during plan and apply workflows. Managed resources that already support import via the
resource.ResourceWithImportState
interface will automatically pass-through identity data to theRead
method. TheRequiredForImport
andOptionalForImport
fields on the identity schema can be used to control the validation that Terraform core will apply to the import config block. (#1126)
v1.15.0-alpha.1
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)
- This alpha pre-release contains an initial implementation for managed resource identity, which can used with Terraform v1.12.0-alpha20250312, to store and read identity data during plan and apply workflows. A managed resource identity can be used by implementing the optional
resource.ResourceWithIdentity
interface and defining an identity schema. Once the identity schema is defined, you can read and store identity data in the state file via the newIdentity
fields in the response objects on the resource CRUD methods. (#1112)
v1.14.1
v1.14.0
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:
v1.13.0
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
toConfigureResponse
, to pass provider-defined data toephemeral.EphemeralResource
implementations (#1050)
v1.12.0
NOTES:
- all: This Go module has been updated to Go 1.22 per the Go support policy. It is recommended to review the Go 1.22 release notes before upgrading. Any consumers building on earlier Go versions may experience errors (#1033)
BUG FIXES:
- providerserver: Fixed bug that prevented
moved
operation support between resource types for framework-only providers. (#1039)