You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The ResourceServerWithMoveResourceState temporary interface was introduced as a way to onboard downstream SDKs onto the new MoveResourceState RPC before it was required. This enabled a period where terraform-plugin-go could support new functionality while not causing compilation errors if downstream Go modules happened to be referencing differing SDK versions that may or may not all support the new functionality immediately.
The challenge with this setup is that terraform-plugin-mux is low level enough to need to reference even the temporary interface in order to work correct. This means that while ResourceServer can require the new method, the temporary interface needs one additional release before it can removed "safely".
Proposal
In tfprotov5 and tfprotov6 remove the ResourceServerWithMoveResourceState interface type. In the changelog, note that consumers should require terraform-plugin-mux@v0.16.0 (or whatever is correct at the time) dependency to prevent compilation errors.
…tate interface
Reference: #389
The `ResourceServerWithMoveResourceState` temporary interface was introduced as a way to onboard downstream SDKs onto the new `MoveResourceState` RPC before it was required. This enabled a period where terraform-plugin-go could support new functionality while not causing compilation errors if downstream Go modules happened to be referencing differing SDK versions that may or may not all support the new functionality immediately. Now that those downstream Go modules are referencing `ResourceServer` directly again, the temporary interface can be removed to prevent bloating this Go module.
…tate interface (#408)
Reference: #389
The `ResourceServerWithMoveResourceState` temporary interface was introduced as a way to onboard downstream SDKs onto the new `MoveResourceState` RPC before it was required. This enabled a period where terraform-plugin-go could support new functionality while not causing compilation errors if downstream Go modules happened to be referencing differing SDK versions that may or may not all support the new functionality immediately. Now that those downstream Go modules are referencing `ResourceServer` directly again, the temporary interface can be removed to prevent bloating this Go module.
I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.
terraform-plugin-go version
Description
The
ResourceServerWithMoveResourceState
temporary interface was introduced as a way to onboard downstream SDKs onto the newMoveResourceState
RPC before it was required. This enabled a period where terraform-plugin-go could support new functionality while not causing compilation errors if downstream Go modules happened to be referencing differing SDK versions that may or may not all support the new functionality immediately.The challenge with this setup is that terraform-plugin-mux is low level enough to need to reference even the temporary interface in order to work correct. This means that while
ResourceServer
can require the new method, the temporary interface needs one additional release before it can removed "safely".Proposal
In
tfprotov5
andtfprotov6
remove theResourceServerWithMoveResourceState
interface type. In the changelog, note that consumers should require terraform-plugin-mux@v0.16.0 (or whatever is correct at the time) dependency to prevent compilation errors.References
The text was updated successfully, but these errors were encountered: