Skip to content
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

Add big-fat-warning re: golang 1.21+ toolchain #187

Merged
merged 3 commits into from Mar 15, 2024

Conversation

cevich
Copy link
Member

@cevich cevich commented Mar 14, 2024

In addition to some much needed config. file maintenance:

  // *****  ATTENTION  WARNING  CAUTION  DANGER  ***** //
  // Go versions 1.21 and later will AUTO-UPDATE based on _module_
  // _requirements_.  ref: https://go.dev/doc/toolchain  Because
  // many different projects covered by this config, build under
  // different distros and distro-versions, golang version consistency
  // is desireable across build outputs.  In golang 1.21 and later,
  // it's possible to pin the version in each project using the
  // toolchain go.mod directive.  Prior to 1.21, for now, we do not
  // want Renovate to propose updates which also trigger golang
  // auto-updates. The only way to fully disable these auto-updates
  // in renovate is through a forced static-version constraint. This
  // is undesireable from a maintenance perspective, and hopefully
  // temporarry. Ref: Upstream discussion https://github.com/golang/go/issues/65847

/cc @mtrmac

Updating to the latest config. linter reformats the entire config file.
Incorporate the new format, with some minor adjustments to comments.
No settings are actually changed here.  It's all cosmetic and
formatting.

Signed-off-by: Chris Evich <cevich@redhat.com>
@cevich cevich requested review from mheon and Luap99 March 14, 2024 17:28
Copy link

github-actions bot commented Mar 14, 2024

Successfully triggered github-actions/success task to indicate successful run of cirrus-ci_retrospective integration and unit testing from this PR's e16a5c5e8a0ecd89c85279fd48ee88265f9bfb4c.

Copy link

@mtrmac mtrmac left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don’t know that I have any specific expertise here — I agree with the intent, and the mechanism of all the changes looks plausible (but I didn’t, so far, validate them line by line against Renovate’s documentation).

LGTM I guess?

renovate/defaults.json5 Outdated Show resolved Hide resolved
@mtrmac
Copy link

mtrmac commented Mar 14, 2024

Ref. upstream discussion: golang/go#65847

@cevich cevich changed the title Add bit-fat-warning re: golang 1.21+ toolchain Add big-fat-warning re: golang 1.21+ toolchain Mar 15, 2024
This prevents running into docker-hub rate limits

Signed-off-by: Chris Evich <cevich@redhat.com>
Signed-off-by: Chris Evich <cevich@redhat.com>
@cevich
Copy link
Member Author

cevich commented Mar 15, 2024

@mtrmac @Luap99 PTAL, Updated the PR description w/ new comment content, does this read better/okay now?

Copy link

github-actions bot commented Mar 15, 2024

Successfully triggered github-actions/success task to indicate successful run of cirrus-ci_retrospective integration and unit testing from this PR's 36c2bc68e9f72ad11d3cf23d6895b8d640c9ab41.

Copy link
Member

@Luap99 Luap99 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@mheon
Copy link
Member

mheon commented Mar 15, 2024

LGTM

@cevich
Copy link
Member Author

cevich commented Mar 15, 2024

Thanks guys, merging.

@cevich cevich merged commit b9ce712 into containers:main Mar 15, 2024
10 checks passed
@mtrmac
Copy link

mtrmac commented Mar 15, 2024

For the record, later we found at https://go.dev/ref/mod :

For reproducibility, the go command writes its own toolchain name in a toolchain line any time it is updating the go version in the go.mod file (usually during go get).

So dependency updates should, most of the time, not trigger a toolchain directive update - except when that dependency update triggers an update to the required Go language version.

@Luap99
Copy link
Member

Luap99 commented Mar 18, 2024

Also to confirm this change seem to work: containers/common#1915

It no longer bumps go+add toolchain there, however our newer version in f39 does that and therefore the make vendor check is failing which is what we want for now I guess.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants