$ the-wire · showcase
gopls v0.24.0 lands, with pinning and filepath fixes behind it
By RepoJournal · Filed · About Go · Composed from the cited sources · methodology
A gopls release plus toolchain-facing cleanup across go, tools, and sys: compiler and filepath correctness fixes for readers, reproducibility work for gopls maintainers.
gopls v0.24.0 golang/tools
gopls reaches v0.24.0; the release notes live at go.dev/gopls/release/v0.24.0. The VS Code extension's gopls version and settings were updated the same day, so editor users pick the new release up on the next extension update.
path/filepath: only check the cleaned path in Windows postClean golang/go
On Windows, postClean scanned the whole lazy buffer rather than just the cleaned path, so bytes left behind by elements removed via ".." could still be read. Clean then prefixed paths such as xy:z//q/../.. with .\. and /a/../??/.. with \.\, which a second Clean pass stripped back off; only the cleaned result is checked now.
cmd/compile: fold redundant extensions on WebAssembly golang/go
The compiler now drops WebAssembly masks and sign extensions that repeat work already done at load time or in argument lowering, and folds sign extensions of constants. Only wasm output changes.
gopls/internal/cache/parsego: pin Go version used by resolver_gen golang/tools
resolver_gen copied go/parser/resolver.go out of the running toolchain's GOROOT, so generating under a newer toolchain (go1.28 adds parser.ResolveFile) produced spurious diffs that were easy to commit by accident. It now copies from a pinned go1.27.0, the oldest release gopls supports, fetched via GOTOOLCHAIN.
windows: remove MemoryBasicInformation.PartitionId field on windows/386 golang/sys
The MemoryBasicInformation.PartitionId field is removed on windows/386; it was added by mistake and the tests removed alongside it because they crashed are back.
debug/pe: document ImportDirectory struct as deprecated golang/go
ImportDirectory is documented as deprecated: it was introduced 15 years ago, was never usable for anything, and should not have been exported, but the API cannot be changed now.