Skip to content

V3 not ready yet #542

Description

@jpcornet

This is going to be a bit of a rambling bug report, sorry.

I've installed goenv v3, and I'm downgrading it to v2 again. Sorry it just isn't ready for production. A random collection of stuff I ran into while upgrading:

"goenv doctor" doesn't check the shims. The v2 shims were still installed, took me a bit to figure out "goenv rehash" was needed.

The perfectly legal situation where your go.mod file specified an older go version (say, go 1.25) but you haven't got that version installed produces a goenv error:

╰─➤ goenv current
Error: goenv: version '1.25' is not installed (set by /path/to/go.mod)
goenv: version '1.25' is not installed (set by /path/to/go.mod)

This is actually the default (I believe) since go 1.26, that it creates a go.mod file that's one version back.

vscode integration seems broken:

╰─➤ goenv vscode init
Error: refusing to modify non-Go setting: goenv.autoSync (only go.* and gopls.* keys are allowed)
refusing to modify non-Go setting: goenv.autoSync (only go.* and gopls.* keys are allowed)

... and for some reason, after doing more integration testing and modifying of startup files, running "go" now produces an endless loop and forks new versions of "goenv exec go ...". Running "go version" in one terminal hangs, while in the other terminal:

╰─➤ ps |grep goenv
53248 ttys001 0:00.01 goenv exec go version
53252 ttys001 0:00.01 goenv exec go version
53256 ttys001 0:00.01 goenv exec go version
53260 ttys001 0:00.01 goenv exec go version
53264 ttys001 0:00.01 goenv exec go version
53268 ttys001 0:00.01 goenv exec go version
53272 ttys001 0:00.01 goenv exec go version
53276 ttys001 0:00.01 goenv exec go version
53280 ttys001 0:00.01 goenv exec go version
53284 ttys001 0:00.01 goenv exec go version
53288 ttys001 0:00.01 goenv exec go version
53292 ttys001 0:00.01 goenv exec go version
53296 ttys001 0:00.01 goenv exec go version
53300 ttys001 0:00.01 goenv exec go version
53304 ttys001 0:00.01 goenv exec go version
53308 ttys001 0:00.01 goenv exec go version
53312 ttys001 0:00.01 goenv exec go version
53316 ttys001 0:00.01 goenv exec go version
53320 ttys001 0:00.01 goenv exec go version
53324 ttys001 0:00.01 goenv exec go version
53328 ttys001 0:00.01 goenv exec go version
53332 ttys001 0:00.01 goenv exec go version
53336 ttys001 0:00.01 goenv exec go version
53340 ttys001 0:00.01 goenv exec go version
53344 ttys001 0:00.01 goenv exec go version
53348 ttys001 0:00.01 goenv exec go version
53352 ttys001 0:00.01 goenv exec go version
53356 ttys001 0:00.01 goenv exec go version
53360 ttys001 0:00.01 goenv exec go version
53364 ttys001 0:00.01 goenv exec go version
53368 ttys001 0:00.01 goenv exec go version
53372 ttys001 0:00.01 goenv exec go version
53376 ttys001 0:00.01 goenv exec go version
53380 ttys001 0:00.01 goenv exec go version
53384 ttys001 0:00.01 goenv exec go version
53388 ttys001 0:00.01 goenv exec go version
53392 ttys001 0:00.01 goenv exec go version
53396 ttys001 0:00.01 goenv exec go version
53400 ttys001 0:00.01 goenv exec go version
53404 ttys001 0:00.01 goenv exec go version
53408 ttys001 0:00.01 goenv exec go version
53412 ttys001 0:00.01 goenv exec go version
53416 ttys001 0:00.01 goenv exec go version
53420 ttys001 0:00.01 goenv exec go version
53424 ttys001 0:00.01 goenv exec go version
53428 ttys001 0:00.01 goenv exec go version
53432 ttys001 0:00.01 goenv exec go version
53436 ttys001 0:00.01 goenv exec go version

That's it, I'm calling quits. I'll be looking out for new releases since it looks promising but clearly this isn't ready yet.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions