Please is currently incompatible with Go 1.23
I got this error when trying to plz build or test:
$ plz --version
Please version 17.10.1
$ plz test src/main/go/collections:collections_test
Build stopped after 160ms. 1 target failed:
//src/main/go/collections:_collections_test#lib
Error preparing directories for //src/main/go/collections:_collections_test#lib: failed to remove plz-out/tmp/src/main/go/collections/_collections_test#lib._build: exit status 1
Output: rm: cannot remove 'plz-out/tmp/src/main/go/collections/_collections_test#lib._build/pkg/mod/golang.org/x/telemetry/[email protected]/go.mod': Permission denied
rm: cannot remove 'plz-out/tmp/src/main/go/collections/_collections_test#lib._build/pkg/mod/golang.org/x/telemetry/[email protected]/LICENSE': Permission denied
rm: cannot remove 'plz-out/tmp/src/main/go/collections/_collections_test#lib._build/pkg/mod/golang.org/x/telemetry/[email protected]/config.json': Permission denied
rm: cannot remove 'plz-out/tmp/src/main/go/collections/_collections_test#lib._build/pkg/mod/golang.org/x/telemetry/[email protected]/doc.go': Permission denied
Any idea what's wrong?
Hi @linuxerwang, please see https://github.com/golang/go/issues/68946 and https://github.com/golang/go/issues/68960. As it is, Please is currently incompatible with Go 1.23. We're aiming for a fix in upstream Go rather than hacking around it in Please, but if you can do without the features from 1.23 you should be able to downgrade your Go version to 1.22.6 or lower.
I'll leave this ticket open for visibility.
I think there might still be an issue around go_toolchain / go_stdlib where it's unable to move outputs.
Okay we have upgraded this repo, the latest version of the Go plugin (v1.21.4) should have full compatibility.
I think we should mostly work with v1.23.0, but we probably won't support it, and encourage everyone to use v1.23.1 instead for the more civilised telemetry behaviour.