Skip to content

Releases: hashicorp/terraform-plugin-sdk

v2.33.0

23 Feb 15:12
Compare
Choose a tag to compare

NOTES:

  • 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)

v2.32.0

29 Jan 16:15
Compare
Choose a tag to compare

NOTES:

  • helper/schema: While this Go module will not receive support for moving resource state across resource types, 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. (#1307)

v2.31.0

14 Dec 17:17
Compare
Choose a tag to compare

NOTES:

  • helper/schema: While this Go module will not receive support for provider-defined functions, the provider server is updated to handle the new operations, which will be required to prevent errors when updating terraform-plugin-framework or terraform-plugin-mux in the future. (#1288)

v2.30.0

09 Nov 11:06
Compare
Choose a tag to compare

NOTES:

  • meta: The SDKVersion variable, SDKPrerelease variable, and SDKVersionString() function have been deprecated. Use the Go standard library runtime/debug package build information instead. (#1257)

BUG FIXES:

  • meta: Fixed version in SDKVersion variable and SDKVersionString() function (#1257)
  • helper/schema: Ensured (ResourceData).GetRawConfig() data is populated for Provider.ConfigureFunc and Provider.ConfigureContextFunc (#1270)
  • helper/schema: Ensured (ResourceData).GetOkExists() second result is true when configuration contains zero-value data in Provider.ConfigureFunc and Provider.ConfigureContextFunc (#1270)

v2.29.0

06 Sep 16:48
Compare
Choose a tag to compare

NOTES:

  • 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. (#1245)

FEATURES:

  • helper/schema: Upgrade to protocol version 5.4, which can significantly reduce memory usage with Terraform 1.6 and later when a configuration includes multiple instances of the same provider (#1234)

ENHANCEMENTS:

  • helper/validation: Added AllDiag and AnyDiag, which are SchemaValidateDiagFunc variants of All and Any (#1155)
  • helper/validation: Added quoting in StringInSlice error diagnostic output to prevent confusion with values that contain spaces (#464)

v2.28.0

24 Aug 17:21
Compare
Choose a tag to compare

NOTES:

  • helper/schema: The Resource type EnableApplyLegacyTypeSystemErrors and EnablePlanLegacyTypeSystemErrors fields can be enabled to more easily discover resource data consistency errors which Terraform would normally demote to warning logs. Before enabling the flag in a production release for a resource, the resource should be exhaustively acceptance tested as there may be unrecoverable error situations for practitioners. It is recommended to first enable and test in environments where it is easy to clean up resources, potentially outside of Terraform. (#1227)

ENHANCEMENTS:

  • helper/schema: Added Resource type EnableLegacyTypeSystemApplyErrors field, which will prevent Terraform from demoting data consistency errors to warning logs during ApplyResourceChange (Create, Update, and Delete) operations with the resource (#1227)
  • helper/schema: Added Resource type EnableLegacyTypeSystemPlanErrors field, which can be used to prevent Terraform from demoting data consistency errors to warning logs during PlanResourceChange operations with the resource (#1227)

v2.27.0

28 Jun 16:26
Compare
Choose a tag to compare

NOTES:

  • helper/schema: Consumers directly referencing the Resource type Schema field should switch to the SchemaMap method to ensure new SchemaFunc field data is properly retrieved (#1217)

ENHANCEMENTS:

  • all: Improved SDK logging performance when messages would be skipped due to configured logging level (#1202)
  • helper/schema: Added Resource type SchemaFunc field and SchemaMap method, which can reduce resident memory usage with large schemas (#1217)

v2.26.1

21 Mar 13:17
Compare
Choose a tag to compare

BUG FIXES:

  • helper/resource: Prevented build errors with type aliasing added in v2.26.0 (#1176)

v2.26.0

20 Mar 19:14
Compare
Choose a tag to compare

NOTES:

  • This Go module has been updated to Go 1.19 per the Go support policy. Any consumers building on earlier Go versions may experience errors. (#1163)
  • helper/resource: Deprecated PrefixedUniqueId() and UniqueId(). Use the helper/id package instead. These deprecations are to assist in migrating to terraform-plugin-testing (#1167)
  • helper/resource: Deprecated RetryContext(), StateChangeConf, and associated *Error types. Use the helper/retry package instead. These deprecations are to assist in migrating to terraform-plugin-testing (#1167)

ENHANCEMENTS:

  • helper/id: New helper/id package added. resource.PrefixedUniqueId() and resource.UniqueId() are deprecated, helper/id should be used instead. helper/resource now contains aliases to the migrated code (#1167)
  • helper/retry: New helper/retry package added. resource.RetryContext(), resource.StateChangeConf, and associated *Error types are deprecated, helper/retry should be used instead. `helper/resource now contains aliases to the migrated code (#1167)

v2.25.0

15 Feb 13:57
Compare
Choose a tag to compare

BUG FIXES:

  • helper/schema: Allow diagnostic messages with incorrect UTF-8 encoding to pass through with the invalid sequences replaced with the Unicode Replacement Character. This avoids returning the unhelpful message "string field contains invalid UTF-8" in that case. (#1111)
  • helper/schema: Prevented unexpected difference for timeouts on first plan after import (#1146)