-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
tfprotov5+tfprotov6: Require FunctionServer in ProviderServer and MoveResourceState in ResourceServer #388
Conversation
…eResourceState in ResourceServer Reference: #353 Reference: #363 This removes the temporary handling to smoothly release the new Terraform 1.8 and later RPC handling for provider servers. These changes codify this Go module's desired design that it reflects the protocol via its required implementations.
Reference: hashicorp/terraform-plugin-go#388 These changes are so the testing provider is compliant with the upcoming `tfprotov5` and `tfprotov6` packages which require provider implementations to fully implement function server handling (already covered) and MoveResourceState (needs covering, hence this change). Almost the entire ecosystem will not have this issue as the higher level SDKs (terraform-plugin-framework, terraform-plugin-sdk, etc.) handle these protocol operations manually, but this test provider is written directly in the low level SDK, so it must implement the necessary changes itself prior to that upstream breaking change.
Submitted hashicorp/terraform-provider-corner#223 to make CI happier 😄 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 🚀
Reference: hashicorp/terraform-plugin-go#388 These changes are so the testing provider is compliant with the upcoming `tfprotov5` and `tfprotov6` packages which require provider implementations to fully implement function server handling (already covered) and MoveResourceState (needs covering, hence this change). Almost the entire ecosystem will not have this issue as the higher level SDKs (terraform-plugin-framework, terraform-plugin-sdk, etc.) handle these protocol operations manually, but this test provider is written directly in the low level SDK, so it must implement the necessary changes itself prior to that upstream breaking change.
Looks like this will need to be done over two releases because terraform-plugin-mux required calling Maybe it can be a takeaway for future prerelease RPCs to only implement them in mux if absolutely necessary. The problem is that |
…mporary interface
Updated this PR to reinstate |
Given this functionality is now GA in Terraform 1.8 and the interfaces have been out for a month+, going to update and merge this for release at any time. |
I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active contributions. |
Closes #353
Closes #363
This removes the temporary handling to smoothly release the new Terraform 1.8 and later RPC handling for provider servers. These changes codify this Go module's desired design that it reflects the protocol via its required implementations.