Skip to content

Releases: hashicorp/terraform-plugin-go

v0.23.0

06 May 20:27
Compare
Choose a tag to compare

BREAKING CHANGES:

  • tfprotov5+tfprotov6: FunctionServer interface is now required in ProviderServer. Implementations not needing function support can return errors from the GetFunctions and CallFunction methods. (#388)
  • tfprotov5+tfprotov6: MoveResourceState method is now required in ResourceServer. Implementations not needing move state support can return errors from the MoveResourceState method. (#388)

NOTES:

  • all: To prevent compilation errors, ensure your Go module is updated to at least terraform-plugin-framework@v1.6.0, terraform-plugin-mux@v0.15.0, terraform-plugin-sdk/v2@v2.33.0, and terraform-plugin-testing@v1.7.0 before upgrading this dependency. (#388)

FEATURES:

  • tfprotov5+tfprotov6: Upgraded protocols and added types to support deferred actions (#403)

v0.22.2

18 Apr 16:30
Compare
Choose a tag to compare

BUG FIXES:

  • 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

11 Mar 13:28
Compare
Choose a tag to compare

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

22 Feb 14:37
Compare
Choose a tag to compare

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)

v0.21.0

26 Jan 14:38
Compare
Choose a tag to compare

NOTES:

  • tfprotov5+tfprotov6: An upcoming release will require the MoveResourceState implementation as part of ResourceServer (#364)

FEATURES:

  • tfprotov5+tfprotov6: Upgraded protocols and added types to support the MoveResourceState RPC (#364)

v0.20.0

14 Dec 15:17
Compare
Choose a tag to compare

NOTES:

  • tfprotov5+tfprotov6: An upcoming release will require the FunctionServer implementation as part of ProviderServer. (#351)
  • Provider-defined function support is in technical preview and offered without compatibility promises until Terraform 1.8 is generally available. (#351)

FEATURES:

  • tfprotov5+tfprotov6: Upgraded protocols and added types to support provider-defined functions (#351)

v0.19.1

15 Nov 14:23
Compare
Choose a tag to compare

NOTES:

  • This release introduces no functional changes. It does however include dependency updates, such as google.golang.org/grpc, which address upstream CVEs. (#324)

v0.19.0

06 Sep 14:58
Compare
Choose a tag to compare

NOTES:

  • all: If using terraform-plugin-framework, terraform-plugin-mux, or terraform-plugin-sdk, only upgrade this Go module when upgrading those Go modules or you may receive a missing GetMetadata method error when compiling (#310)
  • all: This Go module has been updated to Go 1.20 per the Go support policy. It is recommended to review the Go 1.20 release notes before upgrading. Any consumers building on earlier Go versions may experience errors. (#321)

FEATURES:

  • tfprotov5: Upgraded protocol to 5.4 and implemented GetMetadata RPC (#310)
  • tfprotov6: Upgraded protocol to 6.4 and implemented GetMetadata RPC (#310)

ENHANCEMENTS:

  • tfprotov5: Added ServerCapabilities type GetProviderSchemaOptional field, which when enabled can signal that the provider supports RPC operations without the GetProviderSchema RPC being called first (#310)
  • tfprotov6: Added ServerCapabilities type GetProviderSchemaOptional field, which when enabled can signal that the provider supports RPC operations without the GetProviderSchema RPC being called first (#310)

v0.18.0

03 Jul 16:22
Compare
Choose a tag to compare

ENHANCEMENTS:

  • tftypes: Added AttributePath type NextStep() method, which returns the next step in the path without first copying via Steps() (#307)

BUG FIXES:

  • tftypes: Significantly reduced compute and memory usage of Value type walking and transformation (#307)
  • tftypes: Removed unnecessary memory allocations from AttributePath type Equal(), LastStep(), and WithoutLastStep() methods (#307)
  • tftypes: Removed unnecessary memory allocations from NewValue() function (#307)

v0.17.0

28 Jun 14:29
Compare
Choose a tag to compare

ENHANCEMENTS:

  • tfprotov5: Added DynamicValue type IsNull method, which enables checking if the value is null without type information and fully decoding underlying data (#305)
  • tfprotov6: Added DynamicValue type IsNull method, which enables checking if the value is null without type information and fully decoding underlying data (#305)