The Wire ยท Showcase
GOPLS V0.23.0 SHIPS AS GO TOOLCHAIN FIXES PLAN 9 COMPATIBILITY
By RepoJournal ยท Filed ยท About Go
gopls 0.23.0 landed overnight while the Go core team fixes a Plan 9 regression in file removal that could break deployments on legacy systems.
gopls v0.23.0 is out [1], closing the gap on tooling improvements across the ecosystem. The release lands as golang/go addresses a critical Plan 9 compatibility issue where RemoveAll fails to strip trailing slashes on non-directory paths [2], a regression that breaks cleanup operations on Plan 9 systems. On the analyzer front, the tools team added a new reflecttypeassert modernizer that suggests replacing two-valued type assertions with reflect.TypeAssert from go1.25, avoiding intermediate allocations [3]. Meanwhile, the build infrastructure tightened resource allocations for the coordinator, capping it at 1 CPU and 1GB based on actual usage patterns [4], while vulndb cut test time roughly in half by switching to cached-only modproxy endpoints [5]. All three repos (go, build, tools, vulndb) updated their golang.org/x dependencies to latest tagged versions [ref:8, ref:15].
Action items
- โ Upgrade gopls to v0.23.0 in your editor setup golang/tools [plan]
- โ If running Plan 9 systems, patch the trailing slash regression in RemoveAll immediately golang/go [immediate]
- โ Review gopls release notes for breaking changes before rolling out to teams golang/tools [plan]
References
- [1] gopls v0.23.0 โ golang/tools
- [2] os: strip trailing slashes in RemoveAll on Plan 9 golang/go
- [3] go/analysis/passes/modernize: add reflecttypeassert analyzer golang/tools
- [4] cmd/coordinator: update resource allocations golang/build
- [5] all: use cached-only modproxy endpoint golang/vulndb
- [6] go.mod: update golang.org/x dependencies golang/build
- [7] go.mod: update golang.org/x dependencies golang/vulndb