Details
-
Improvement
-
Resolution: Fixed
-
Major
-
None
-
1
-
Build Team 2022 Sprint 13, Build Team 2022 Sprint 14
Description
We need to upgrade Go more frequently due to security vulnerabilities and Golang's short EOL schedule. Currently, every Go target in the build (40 such targets in Elixir today) have to explicitly specify which Go version to use, which makes sweeping upgrades a challenging task. However, some teams do have reasons to care about their Go version and can't necessarily be updated without their interaction. So a suggestion:
- Make GOVERSION optional, with a centralized default value that Build will keep up-to-date based on Go releases. This can be used by targets that really don't care, such as internal tools, test programs, and some simple shipping tools.
- Make GOVERSION accept only X.Y, and keep a centralized list of "the newest .Z for each X.Y". The Golang authors are pretty conscientious about not putting major changes into patch releases, and the kind of things Dev teams have worried about in the past (in particular, changes to GC that had significant performance impact) will only be in major (.Y) releases, so we should be able to update all users of (say) 1.18.x to the latest 1.18 version en masse.
Attachments
Issue Links
- mentioned in
-
Page Loading...