The Wire · Showcase
VSCODE-GO TIGHTENS LINTING, REVIVE JUMPS 11 VERSIONS
By RepoJournal · Filed · About Go
The Go extension for VS Code is enforcing stricter TypeScript rules across the codebase while shipping a major update to its revive linter.
Hongxiang Jiang landed back-to-back linting improvements that eliminate unused variables and enforce promise handling in the extension [1] [2]. The first change removes dead parameters and unused local variables; the second enables the @typescript-eslint/no-floating-promises rule, marking unawaited promises with void to catch async bugs at lint time. In the same window, Chiman Jain bumped revive from v1.3.9 to v1.15.0 [3], a significant jump that brings 11 versions of improvements to the linting experience. On the core side, Michael Pratt clarified documentation in the new encoding/json/jsontext API [4] to explain that AvailableBuffer itself is safe, but manually constructing Values is error-prone. Peter Weinberger fixed a segmentation fault in gopls completion logic [5] that occurred during double-deslicing in generic function signatures. Jonathan Amsterdam added documentation coverage metrics to pkg.go.dev's evals page [6], making it easier to track which packages lack adequate godoc.
One email a day. Unsubscribe in one click.
Keep up with Go in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Update vscode-go extension to pick up revive v1.15.0 and stricter linting rules golang/vscode-go [plan]
- → Review gopls completion fix if you use generic functions with append golang/tools [monitor]
References
- [1] extension/eslint.config.js: enable unused vars golang/vscode-go
- [2] extension: enable @typescript-eslint/no-floating-promises rule golang/vscode-go
- [3] src/goInstallTools: update revive to v1.15.0 golang/vscode-go
- [4] encoding/json/jsontext: clarify safety of AvailableBuffer golang/go
- [5] gopls/internal/golang/completion: avoid SEGV from double deslicing golang/tools
- [6] internal/frontend: display doc eval golang/pkgsite