upgrade target go version to 1.22 #185
Labels
enhancement
New feature or request
type:breaking-change
An issue that will result in dependent client projects failing.
type:enhancement
Enhancement request targeting an existing experience
type:security
Security, or privacy issue
The current go mod version targets 1.18, which has been out of support for almost two years now
This also means we're not getting dependencies upgrades anymore since they moved their targets.
docker run --rm -v $PWD:/usr/src/myapp -w /usr/src/myapp golang:1.18.10 go get -u -v
Results in no changes
docker run --rm -v $PWD:/usr/src/myapp -w /usr/src/myapp golang:1.20.14 go get -u -v
Results in a failure since some depedencies upgrade require 1.22
docker run --rm -v $PWD:/usr/src/myapp -w /usr/src/myapp golang:1.22.8 go get -u -v
Results in lots of dependencies being updated, including std uri template, for which we're far behind.
To major bump or not
All the evidence I could find only mandates a major version when the surface API changes in a breaking way. A target bump does not seem to be required even though it's not specifically excluded.
https://go.dev/doc/modules/release-workflow
https://go.dev/doc/modules/major-version
https://go.dev/blog/v2-go-modules
There are additional conderations for branches to making a new version in go. If we need to major rev, my suggestion is to make the new v2 branch the new main branch once we've implemented all the changes. But we should discuss that.
Additionally, the major version here might mandate a major version of the generator since the import paths would change, this remains to be discussed.
Organization
I'm only creating an issues for abstractions for now until we figure out the recipe for the other repositories.
The text was updated successfully, but these errors were encountered: