-
Notifications
You must be signed in to change notification settings - Fork 715
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
make install does not support forwards compatibility of golang versions #2487
Comments
If you run gaia built with 1.18 and 1.19 for example you can app hash. This is why there's a hard requirement to stick to one version...there have just been other pressing updates and making sure all validators building from the source used a different but consistent go version was deemed an extra risk. |
Validators are reporting app hashes on 1.18 too. 1.18 is deprecated. |
For now, please do not use versions greater than 1.18 -- I think it was a mistake to use a deprecated language runtime, but that is what v9.1.0 uses. In the future, this PR will handle things nicely: |
I guess the Go 1.19 release notes don't provide any guarantees.
It does seem quite odd tho, was there RCA done or did anyone manage to track down the source of indeterminism? |
Btw, feel free to close this issue if its out of scope, but it would be nice to not have to rely on specific Go versions for builds |
@damiannolan - fyi, we'll always want to have a full validator set on the same version of the go runtime. go 1.18 is deprecated so we probably shouldn't use it, but I think v10 fixes this. My recommendation is like: Use the latest go and at least one feature in it. That way, the software requires the latest go. |
Gaia v10 will use go 1.20. Closing this issue as removing the check in the Makefile may result in a apphash mismatch. |
@mmulji-ic ping test! |
Summary
Running
make install
performs strict equality on Go version by using thecheck_version
target.This would be better suited to use greater than or equal to.
For example, checking out
v9.1.0
and runningmake install
with Go >1.18 fails. This is unexpected behaviour.Version
I've noticed this is applicable to the following, but could be more?
main
(mandates Go 1.20)v9.1.0
(mandates Go 1.18)Steps to Reproduce
v9.1.0
make install
For Admin Use
The text was updated successfully, but these errors were encountered: