-
Notifications
You must be signed in to change notification settings - Fork 220
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
Nexus #1555
Conversation
@@ -1,32 +1,37 @@ | |||
module go.temporal.io/sdk | |||
|
|||
go 1.20 | |||
go 1.21 |
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.
Hrmm, do we want to bump minimum Go version? Not that I mind, just want to make sure it's a conscious decision and not done accidentally in this PR
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.
I'm not sure why this happened, maybe because the nexus SDK depends on slog
?
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.
Yeah, or more importantly, Nexus Go SDK itself requires 1.21+ which infects all users of it. Technically that's the oldest non-EOL Go version anyways, @Quinn-With-Two-Ns - thoughts?
Also, another concern I now have is about transitive dependencies. Nexus Go SDK is now forcing github.com/gorilla/mux
to at least v1.8.0
for every user of the Temporal Go SDK. I am not sure we want to force this dependency or our needed version of it on every user. How important is that dependency in the Nexus Go SDK?
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.
I'm sure we can do without this dependency. I know Go's built-in router has advanced in recent versions.
Can we live with this for the immediate future and investigate next week?
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.
Sorry, didn't see the reply (was just after business hours Fri). I would rather not impose this dependency on users even temporarily.
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.
Yeah github.com/gorilla/mux
is quite a rough dependency to start requiring for non nexus users.
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.
Upgrading to go 1.21
is fine if it is needed
d93b8ed
to
12f4392
Compare
This reverts commit a9cb576.
testsuite/devserver.go
Outdated
@@ -199,6 +199,7 @@ func downloadIfNeeded(ctx context.Context, options *DevServerOptions, logger log | |||
return "", fmt.Errorf("unsupported architecture %v", arch) | |||
} | |||
infoURL := fmt.Sprintf("https://temporal.download/cli/%v?platform=%v&arch=%v&sdk-name=sdk-go&sdk-version=%v", url.QueryEscape(version), platform, arch, internal.SDKVersion) | |||
fmt.Println(infoURL) |
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.
I'm removing this.
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.
Would like CI to pass though, and need to make sure that we make clear in release notes that we now require Go 1.21+.
What was changed
temporalnexus
package and implemented the handler side for Nexus, including registering and dispatching Nexus Operations.worker.Start()
to return consistent errors to callers and avoid rerunning the function unnecessarily.0.14.0-nexus.0
which includes server1.25.0-rc.0
.See the proposal for more information.
Most of this code has been reviewed already in #1466, #1473, and #1475, which are all squashed in the first commit.