It looks like gvm available does not refresh the git repo when source is present. So there are two code paths:
When source code is present in ~/.gvm/cache/go it reads the git tags and then checks if each tag has an available binary by querying the Go download metadata.
The other path is when no source is present and it straight returns the Go download metadata.
So there is room for improvement here in the case of source code being present. It should do a better job at merging the results of the Go repo git tags and the available binary versions from the Go website. And it should automatically refresh the git repo if it's more than a day old (that's how other code paths behave that use the source repo).
It looks like
gvm available
does not refresh the git repo when source is present. So there are two code paths:When source code is present in
~/.gvm/cache/go
it reads the git tags and then checks if each tag has an available binary by querying the Go download metadata.The other path is when no source is present and it straight returns the Go download metadata.
So there is room for improvement here in the case of source code being present. It should do a better job at merging the results of the Go repo git tags and the available binary versions from the Go website. And it should automatically refresh the git repo if it's more than a day old (that's how other code paths behave that use the source repo).
Relates https://github.com/andrewkroh/gvm/issues/38#issuecomment-960734701