temporal: update sdk to v1.14.0 with lazy client #2104
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v1.13.1
->v1.14.0
Release Notes
temporalio/sdk-go
v1.14.0
Compare Source
Highlights
💥 Breaking changes have been made to remove a couple of advanced options and to do slight renames in the
converter
package for encoders. See below for detailsReplace Client Health Checking
Previously, by default creating a client would use the gRPC health check on the server to ensure it was available or would fail client creation. Due to now needing information about what the server can/can't do, we make a different call to obtain that info instead of the health check call on client creation.
This change should not be visible to most users. However, we have removed the advanced
client.ConnectionOptions.DisableHealthCheck
and associated health check options from that struct. This no longer applies since there is no health check. This also means currently all clients make an eager connection to the server as they always had by default.Advanced Encoding Updates
We have renamed the recently added
converter.PayloadEncoder
toconverter.PayloadCodec
for cross-SDK clarity and did similar for other "encoder" parts. This codec is focused on byte-to-byte conversion during data conversion. It can be used in aconverter.CodecDataConverter
to transform bytes for encryption, compression, and/or anything else.We have added a few utilities to aid those wanting to do custom encoding in a more central place:
converter
package that, when used for a custom proxy, will transparently encode and decode payloads given a codecclient
package that can be registered with a gRPC server to proxy requests to a Temporal server (which can then use the aforementioned interceptor to do encoding/decoding)tctl
for centralized end-to-end encryption)Specific Changes
2022-02-22 -
22369cb
- Fix markdown syntax. (#734)2022-02-22 -
3f45616
- Do not serialize empty OpenTracing spans (#729)2022-02-22 -
621fd1e
- Support ignore comment alongside godoc (#731)2022-02-22 -
856f5c2
- Adjust HTTP protocol to take Payloads not Payload. (#733)2022-02-22 -
a7d8c1a
- Set workflow start time for tests on workflow info (#735)2022-02-22 -
e96a9d9
- Disallow MaxConcurrentWorkflowTaskPollers to be set to 1 (#727)2022-02-28 -
c82b73d
- Fix activity cancellation race when not cancelling workflow (#741)2022-03-01 -
c3eb5b0
- Replace health checking with server-capability getter and disable retries on internal errors (#706)2022-03-01 -
d409984
- Allow replayer to use local activities with string names (#745)2022-03-02 -
2c5ed0f
- GRPC Service Proxy and Encoding Interceptor (#738)2022-03-07 -
8cb1963
- Disable timeout retries during session creation (#746)2022-03-09 -
8608a59
- Rename PayloadEncoder -> PayloadCodec. (#749)2022-03-10 -
2a582f8
- Add mock call assertions to TestWorkflowEnvironment (#748)Additional changes
Since the client no longer allows a lazy connection, I added another layer of indirection to prevent users from accidentally creating a connection during instantiation of a component and bringing the entire server down.
See temporalio/sdk-go#753 for more details.