All notable changes to the vscode-proto3-tools extension are documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Refactor definition provider registration in extension.ts to use createProto3DefinitionProvider function, removing the previous inline provideDefinition function for improved clarity and maintainability.
- Go to Definition (
DefinitionProvider): jump tomessage,enum,service, andrpcdeclarations; resolves symbols fromimport "relative/path.proto"when the file exists on disk.
Enhance proto3 extension with improved completion item provider and error handling.
- Additional completion items for the
proto3language (CompletionItemProvider: keywords, scalar types, symbols in the current file, commongoogle.protobuf.*, service /rpc/returnscontexts, and trigger characters.,",(). - GitHub Actions: CI workflow (install, compile, lint on push/PR to
mainormaster); release workflow onv*tags (VSIX, GitHub Release, publish to VS Code Marketplace whenVSCE_PATis set).
- Document generation: safer async flow for
proto-doc(execFile/ promises) and fewer unhandled rejections. - Directory creation:
createDirreturns aPromiseand no longer throws from callbacks after showing errors. - Download / install paths: avoid throwing inside
https/ mkdir / decompress error handlers.
formatFile: wrapclang-format/execSyncintry/catch, show an error message, and return no edits on failure.rightClickGenDoc: surface failures viacatch/ logging instead of leaving floating promises..gitignore: ignore.direnv/.- Docs:
CHANGELOG/ readme previously referenced a mistaken 1.0.5; the published line onmainis 0.1.5 (v0.1.5). - Dependencies: added
@vscode/vsceand scriptsci,vsixfor packaging and automation.
- Format code (clang-format).
- Generate API documentation (external
proto-docCLI).
- Snippets.
- Syntax highlighting.