Skip to content

Releases: hashicorp/terraform-plugin-mux

v0.8.0

20 Dec 17:13
bac5e60
Compare
Choose a tag to compare

NOTES:

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

BUG FIXES:

  • tf5muxserver+tf6muxserver: Allow differing provider schema block MinItems and MaxItems as terraform-plugin-framework does not use those fields for configuration validation (#118)
  • tf5muxserver+tf6muxserver: Deferred combined server implementation errors until GetProviderSchema RPC to prevent confusing Terraform CLI plugin startup errors (#121)

v0.7.0

15 Jul 18:50
Compare
Choose a tag to compare

NOTES:

  • The underlying terraform-plugin-log dependency has been updated to v0.6.0, which includes log filtering support and breaking changes of With() to SetField() function names. Any provider logging which calls those functions may require updates. (#92)
  • 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. (#73)

v0.6.0

10 Mar 13:53
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. (#63)

v0.5.1

17 Feb 18:02
Compare
Choose a tag to compare

BUG FIXES:

  • tf5muxserver: Prevent PrepareProviderConfig RPC error for multiple PreparedConfig responses when combining terraform-plugin-sdk/v2 providers (#54)
  • tf6muxserver: Prevent ValidateProviderConfig RPC error for multiple PreparedConfig responses when combining terraform-plugin-framework providers (#54)

v0.5.0

07 Feb 15:40
Compare
Choose a tag to compare

NOTES:

  • Providers can now be muxed with a combination of terraform-plugin-sdk and terraform-plugin-framework server implementations. One option is the terraform-plugin-sdk server can be upgraded to protocol version 6, then muxed with the terraform-plugin-framework server. This allows using new protocol features in the framework implementation, such as nested attributes, but requires Terraform CLI 1.1.5 or later. The other option is the terraform-plugin-framework server can be downgraded to protocol version 5, then muxed with the terraform-plugin-sdk server. This prevents using new protocol features in the framework implementation, however it remains compatible with Terraform CLI 0.12 and later. (#42)

BREAKING CHANGES:

  • The root package SchemaServer types and NewSchemaServerFactory function have been migrated to the tf5muxserver package. To upgrade, replace tfmux.NewSchemaServerFactory with tf5muxserver.NewMuxServer and replace any invocations of the previous SchemaServerFactory type Server() method with ProviderServer(). The underlying types are no longer exported. (#39)

FEATURES:

  • Added tf5to6server package, for upgrading a protocol version 5 server to protocol version 6 (#42)
  • Added tf6muxserver package, a protocol version 6 compatible mux server (#37)
  • Added tf6to5server package, for downgrading a protocol version 6 server to protocol version 5 (#42)

ENHANCEMENTS:

  • Added the tf_mux_provider key to all downstream logging calls, decorating them with the muxed server that actually served the request. (#31)
  • Added trace level logging for mux logic, controlled by the TF_LOG_SDK_MUX environment variable. (#31)

v0.4.0

07 Dec 20:13
Compare
Choose a tag to compare
v0.4.0

v0.3.0

24 Sep 01:48
Compare
Choose a tag to compare

NOTES:

Upgraded terraform-plugin-go to v0.4.0. Providers built against versions of terraform-plugin-go prior to v0.4.0 will run into compatibility issues due to breaking changes in terraform-plugin-go.

v0.2.0

10 May 17:28
Compare
Choose a tag to compare
v0.2.0

v0.1.1

10 Feb 19:35
Compare
Choose a tag to compare
v0.1.1

v0.1.0

02 Nov 18:05
Compare
Choose a tag to compare

Initial release.