Skip to content

Releases: hashicorp/terraform-plugin-go

v0.11.0

08 Jul 12:44
Compare
Choose a tag to compare

FEATURES:

  • Added support for protocol version 5.3 and 6.3, which allows providers to opt into the PlanResourceChange RPC for resource destruction (#205)

ENHANCEMENTS:

  • tfprotov5: Added ServerCapabilities type and ServerCapabilities field to GetProviderSchemaResponse (#205)
  • tfprotov6: Added ServerCapabilities type and ServerCapabilities field to GetProviderSchemaResponse (#205)

v0.10.0

05 Jul 18:15
Compare
Choose a tag to compare

ENHANCEMENTS:

  • tfprotov5/tf5server: Added downstream RPC request duration and response diagnostics logging (#203)
  • tfprotov6/tf6server: Added downstream RPC request duration and response diagnostics logging (#203)

v0.9.1

12 May 13:27
4f3425d
Compare
Choose a tag to compare

BUG FIXES:

  • tftypes: Prevented loss of number precision with integers between 54 and 64 bits (#190)

v0.9.0

13 Apr 12:26
Compare
Choose a tag to compare

NOTES:

  • This Go module has been updated to Go 1.17 per the Go support policy. Any consumers building on earlier Go versions may experience errors. (#175)

ENHANCEMENTS:

  • tftypes: Added Type support to WalkAttributePath() function (#163)

BUG FIXES:

  • tfprotov5/tf5server: Ensured @caller in protocol logging entries accurately reflected calling code location (#179)
  • tfprotov6/tf6server: Ensured @caller in protocol logging entries accurately reflected calling code location (#179)

v0.8.0

10 Mar 13:39
Compare
Choose a tag to compare

NOTES:

  • The underlying terraform-plugin-log dependency has been updated to v0.3.0, which includes a breaking change in the optional additional fields parameter of logging function calls to ensure correctness and catch coding errors during compilation. Any early adopter provider logging which calls those functions may require updates. (#166)

ENHANCEMENTS:

  • tfprotov5: Added ValueType() methods to Schema, SchemaAttribute, SchemaBlock, and SchemaNestedBlock types. (#158)
  • tfprotov6: Added ValueType() methods to Schema, SchemaAttribute, SchemaBlock, SchemaNestedBlock, and SchemaObject types. (#158)

v0.7.1

07 Feb 19:51
Compare
Choose a tag to compare

BUG FIXES:

  • tfprotov5/tf5server: Ensure server options are passed through on startup (#153)
  • tfprotov5/tf5server: Prevent empty provider address error logs on startup (#150)

v0.7.0

20 Jan 18:23
Compare
Choose a tag to compare

BREAKING CHANGES:

  • tfprotov6: The SchemaObject.MaxItems and SchemaObject.MinItems fields have been removed without replacement. These were never used in the protocol and did not perform any validation. (#143)

BUG FIXES:

  • tfprotov6: The ApplyResourceChangeResponse.UnsafeToUseLegacyTypeSystem and PlanResourceChangeResponse.UnsafeToUseLegacyTypeSystem fields are now properly passed into and out of the protocol (#143)

v0.6.0

18 Jan 18:22
Compare
Choose a tag to compare

ENHANCEMENTS:

  • tfprotov5/tf5server: Added WithManagedDebug() ServeOpt, which implements outputting reattach configuration to stdout and stopping on SIGINT (#137)
  • tfprotov5/tf5server: Added support for writing protocol data to disk by setting TF_LOG_SDK_PROTO_DATA_DIR environment variable (#135)
  • tfprotov5/tf5server: Increased maximum gRPC send and receive message size limit to 256MB (#139)
  • tfprotov6/tf6server: Added WithManagedDebug() ServeOpt, which implements outputting reattach configuration to stdout and stopping on SIGINT (#137)
  • tfprotov6/tf6server: Added support for writing protocol data to disk by setting TF_LOG_SDK_PROTO_DATA_DIR environment variable (#135)
  • tfprotov6/tf6server: Increased maximum gRPC send and receive message size limit to 256MB (#139)

BUG FIXES:

  • Prevent potential process leak on Windows platforms (#123)
  • tftypes: Fixed regression with DynamicPseudoType handling since v0.4.0, allowing usage of known values again and preventing msgpack decoding errors in Terraform CLI (#136)

v0.5.0

07 Dec 19:40
Compare
Choose a tag to compare
v0.5.0

v0.4.0

24 Sep 01:20
Compare
Choose a tag to compare

BREAKING CHANGES:

  • The AttributeType property of tftypes.Map has been renamed to ElementType. (#105)
  • The tf5server package's import path is now github.com/hashicorp/terraform-plugin-go/tfprotov5/tf5server instead of github.com/hashicorp/terraform-plugin-go/tfprotov5/server. (#103)
  • The tf6server package's import path is now github.com/hashicorp/terraform-plugin-go/tfprotov6/tf6server instead of github.com/hashicorp/terraform-plugin-go/tfprotov6/server. (#103)
  • With the release of Go 1.17, Go 1.16 is now the lowest supported version of Go to use with terraform-plugin-go. (#102)
  • tftypes: The Is() method on types implementing the Type interface now only perform a shallow type check, no longer comparing any underlying attribute or element type(s). Use the Equal() method for deep type checking. (#94)
  • tftypes: (AttributePath).WithElementKeyInt() now has an int parameter instead of int64. Using (AttributePath).WithElementKeyInt() within for ... range loops no longer requires int64() conversion. (#101)

ENHANCEMENTS:

  • tftypes: All types implementing the Type interface now provide an Equal() method for deep type checking and UsableAs() method for type conformance checking. (#94)

BUG FIXES:

  • tftypes: Ensure NewValue() panics on DynamicPseudoType and known values. (#94)
  • tftypes: Fixed elements of Tuple and Map and attributes of Object having DynamicPseudoType as their type when unmarshaling JSON values from Terraform. (#94)
  • tftypes: Fixed elements of Tuple and Map and attributes of Object having DynamicPseudoType as their type when unmarshaling msgpack values from Terraform. (#100)
  • tftypes: Prevent potential panic unmarshaling null DynamicPseudoType in msgpack (#99)
  • tftypes: Return error instead of panic when calling (Value).Diff() with either Value missing type (#104)
  • tftypes: Return error instead of panic when calling Transform() with Value missing type (#104)