-
Notifications
You must be signed in to change notification settings - Fork 9.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
Setup a consistent way to manage go version #17857
Comments
We are trying to be more careful about this situation in Kubernetes (ref: kubernetes/kubernetes#123744). One thing we should keep in mind here also is that if dependabot bumps the
In Kubernetes we added a pre-submit check to catch such accidental bumps if they occur: kubernetes/kube-openapi#467 |
Thanks @MadhavJivrajani I think we should do similar check for all etcd branches: including The other potential enhancement is to automatically populate the go versions for the |
I have some ideas on how we can go about doing this. Will create a PR and we can discuss there! |
Followups:
|
I think we also need to backport the changes to both 3.5 and 3.4 |
We should follow the same rule to manage go version for all repositories under etcd-io. Note we only require users to depend on a minor version supported by golang team, i.e. 1.21, but we don't force users to depend on a patch version, i.e. 1.21.10. |
Cross-posting and quoting my comment from #17876 (comment):
|
Discussed during sig-etcd triage meeting, for the next step we just need to edit the following section of https://github.com/etcd-io/etcd/blob/main/Documentation/contributor-guide/dependency_management.md#golang-versions - 3. Complete the upgrade locally in your development environment.
+ 3. Complete the upgrade locally in your development environment by editing `.go-version` and running `make fix. Adding good-first-issue label. |
@jmhbnz I will take it up |
/assign @manthanguptaa |
What would you like to be added?
Currently there are multiple places setting the go versions, for examples,
go
andtoolchain
directives;We should set up a consistent way to manage go version. There should be only one source of truth for the go&toolchain version.
One problem is that if a dependency sets a higher go or toolchain version, then when running scripts/fix.sh will automatically update the go & toolchain version in our go.mod files. Refer to https://github.com/etcd-io/etcd/pull/17841/files#r1575344566
References:
cc @fuweid @henrybear327 @ivanvc @jmhbnz @MadhavJivrajani @serathius
Why is this needed?
Setup consistent way to manage go version
The text was updated successfully, but these errors were encountered: