When the go.mod file contains a go 1.24 instead of go 1.24.5 which is a proper Go version, the normal go binary handles this go.mod differently than igo, and the shim/go needs to be updated to reflect this normal go behavior in an igo manner as possible.
Therefore, in order to do this, the shims/go, which is an embedded shell script of the igo binary that gets installed on the host machine, this script needs to be updated to:
- Where we parse the found
go.mod file for the version, we need to verify the format of the version itself. The bump package should be used to do this. A feature request 1 in the bump project. The bump -fix -gomod -in go.mod 1> /dev/null && bump -fix -gomod -in go.mod -write allows the && and exit code 1 of the bump pattern to protect the -fix and -write operations on the file.
- Once the
go.mod file is corrected, the correct version should be selected and the go runtime internationally shouldn't try to take over the ~/go directory attempting to do an internal system update.
This issue is dependent on the bump getting fixed in order to fix the VERSION file of the go.mod file instead of using bash and sed.
When the
go.modfile contains ago 1.24instead ofgo 1.24.5which is a proper Go version, the normalgobinary handles thisgo.moddifferently thanigo, and theshim/goneeds to be updated to reflect this normalgobehavior in anigomanner as possible.Therefore, in order to do this, the
shims/go, which is an embedded shell script of theigobinary that gets installed on the host machine, this script needs to be updated to:go.modfile for the version, we need to verify the format of the version itself. Thebumppackage should be used to do this. A feature request 1 in the bump project. Thebump -fix -gomod -in go.mod 1> /dev/null && bump -fix -gomod -in go.mod -writeallows the&&andexit code 1of thebumppattern to protect the-fixand-writeoperations on the file.go.modfile is corrected, the correct version should be selected and the go runtime internationally shouldn't try to take over the~/godirectory attempting to do an internal system update.This issue is dependent on the
bumpgetting fixed in order to fix the VERSION file of thego.modfile instead of using bash and sed.