-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Fixes #1993 and #2096 adds a client timeout and additional logging #2428
Conversation
@tm1000 is attempting to deploy a commit to the Vercel Team on Vercel. A member of the Team first needs to authorize it. |
The latest updates on your projects. Learn more about Vercel for Git ↗︎
5 Ignored Deployments
|
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.
This looks good to me, but I'll want to run it by @nathanhammond as well since it's a new option!
Excellent first-pass at Go! It's hard to balance how we should configure this with the reality of trying to migrate our cache syncing layer to the daemon. Below you'll see the chart I made while trying to rationalize what our behavior here is. We're in a transition between "one-off" and "long-running" configuration as some of these things will be transitioned to the daemon. Environment vars are in some kind of dead zone between "one-off" and "permanent" ("permanent" on CI, weirdly mutable on local boxes so possibly one-off), and flags really only make sense in the one-off situation. In a future story this is a daemon configuration in the generalized case, not a per-run configuration (though no-daemon's existence necessitates per-run configuration as well). And, timeout in particular isn't really a repository-level configuration, it's a user level configuration, or even So, to get this landed:
|
@nathanhammond thanks! Which file is the repository Config again? Just trying to keep all the Configs in mind. I think you're just saying don't allow the setting in the turbo.json Config file. Only allow it as a cli arg or environment variable |
So, we need to make sure that it is not read in from |
…into feature/set-client-timeout
@nathanhammond changes applied as requested. |
@nathanhammond @chris-olszewski @mehulkar hey team! Any update on this? I know you're all extremely busy with the amazing things at Vercel but I hate having to build my own turborepo binary and distribute it with my packages. I'd love for this to be merged/included. |
@tm1000 we're tracking this to land before the 1.7 release, but don't have a strong timeline on when that will be! In other words, even if we got this PR merged today, we don't have a strong sense of when the next release would be. |
@mehulkar hey that works for me! Good to know at least 1.7 :-D |
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.
Again, thanks for implementing this. I just have a few minor changes to keep the code consistent with the rest of the codebase.
Co-authored-by: Chris Olszewski <chrisdolszewski@gmail.com>
Co-authored-by: Chris Olszewski <chrisdolszewski@gmail.com>
@chris-olszewski completed as requested |
@chris-olszewski so it's failing now due to massive changes that happened in config_file.go |
Hey @chris-olszewski. Any updates on this? Im currently bundling my own special build of turborepo to get around client timeouts. |
@NicholasLYang I'm going to move to get this merged in, but it's going to have to be ported over to Rust land. |
@nathanhammond you're the best. Since it's all rust im going to close this and review the rust port. I <3 rust. |
This commit authored in part by @tm1000. Closes #1993 Closes #2096 Closes #2428 Notes: - You may want to look at the original diff: https://github.com/vercel/turbo/pull/2428/files?w=1 - I've completely removed `pflag` at this point. It was only being used in tests. - I've added a new "config" in Rust land, for the API client. It only accepts `timeout` right now.
This fixes #1993 and 2 parts of #2096 by adding a client timeout config option and additionally logging any status that is not
http.StatusOK
.This is my first attempt at go, FYI. So I'll take any feedback you can give me (and I'm also going to have my coworkers who work in Go daily give me some feedback too)
All tests passed and so did the e2e tests
cc: @mehulkar