Hello gophers,

We have just released vscode-go v0.43.2, an insider version. It is picked from master branch at commit abc123d.

This is a pre-release version <https://github.com/golang/vscode-go/?tab=readme-ov-file#pre-release-version> for v0.44.0. This includes additional, experimental features that are not yet ready for general release. These features are still under development and may be subject to change or removal.

View the github release for more information:
https://github.com/golang/vscode-go/releases/tag/v0.43.2.

Cheers,
The Go Tools Team
