Начиная с Go 1.21 любая версия Go теперь всегда именуется как Go
x.yy.zz взамен старого формата x.yy[.zz] где .zz не применялось для первого релиза внутри версии. Проще всего понять на примерах:
→ Ранее Go 1.20 был и именем версии языка и именем первого релиза в ней. Т.е. для первого релиза
go version возвращал go version go1.20 linux/amd64 для второго релиза go version go1.20.1 linux/amd64 и так далее.→ Начиная с Go 1.21 это только имя версии языка. Первый релиз в этой версии называется
1.21.0. Т.е. для первого релиза go version возвращает go version go1.21.0 linux/amd64 для второго релиза go version go1.21.1 linux/amd64 и так далее.Т.е. первый релиз в версии теперь всегда содержит в конце ноль.
А важно это по одной простой причине:
- Для первого релиза Go 1.20 была ссылка на скачивание https://storage.googleapis.com/golang/go1.20.linux-amd64.tar.gz
- ❗Для первого релиза Go 1.21 ссылка на скачивание стала https://storage.googleapis.com/golang/go1.21.0.linux-amd64.tar.gz а старый формат ссылки выдаст 404.
Не пропустите это когда будете обновлять ваши CI скрипты.