Biorąc pod uwagę następujący plik go.mod:
module foo
go 1.12
require (
github.com/bar/baz v1.0.0
github.com/rat/cat v1.0.0
)
Co to go 1.12
oznacza? Czy to uniemożliwia kompilację foo
modułu z jakąkolwiek inną wersją Go? Czy jest to po prostu wskaźnik foo
zalecanej / wymaganej wersji Go? Czy jest to dyrektywa, którą powinniśmy aktualizować za każdym razem, gdy wydawana jest nowa wersja go (co 6 miesięcy)?
go
go-modules
mdwhatcott
źródło
źródło
Odpowiedzi:
Należy wziąć pod uwagę minimalną wymaganą wersję Go. Jeśli budujesz z tą samą lub wyższą wersją Go, wszystko powinno być w porządku, zgodnie z obietnicą zgodności Go 1 . Jeśli kompilujesz w niższej wersji, w przypadku niepowodzenia kompilacji pojawi się komunikat o błędzie:
źródło