This is described a bit more in the
Release-1.0 machinery changes doc; we've ended up with two different tagging systems (only one release branch, though).
For each release prior to 1.0 (aka 0.27), we would tag the releases with v0.X.Y
, which caused go mod to treat the code as a new release and upgrade to it whenever the user runs
go get -u ./...
in their project.
For releases after Nov 1 (i.e. starting with 1.0 / 0.27), we tag the releases with both
knative-v1.X.Y
and v0.X+27.Y
; the former tag is the public "version number", while the latter tag is for ongoing compatibility with
go get
, but shouldn't be used for tagging end-user releases.