-
-
Notifications
You must be signed in to change notification settings - Fork 395
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
#714: Use the build cache to speed up the LS #1107
Conversation
a7c85b7
to
8d462f2
Compare
Closes #714 Signed-off-by: Akos Kitta <[email protected]>
Signed-off-by: Akos Kitta <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is working exactly as intended in all my tests.
I hope this will resolve the issues some people have experienced resulting from the resource impact of the language server, and also avoid the distress that can be caused by spurious problem detection results.
Thanks Akos and Cristian for your work on this!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm, only minor concerns on using kittaakos fork for the vscode-arduino-tools
this.errors.length = 0; | ||
this.errors.push(...error.data); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Isn't this equivalent to
this.errors.length = 0; | |
this.errors.push(...error.data); | |
this.errors = error.data; |
performance wise is also faster
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The fields are readonly
. Your proposal is a compiler error. Did I overlook something?
electron/build/template-package.json
Outdated
@@ -141,7 +141,7 @@ | |||
"theiaPluginsDir": "plugins", | |||
"theiaPlugins": { | |||
"vscode-builtin-cpp": "https://open-vsx.org/api/vscode/cpp/1.52.1/file/vscode.cpp-1.52.1.vsix", | |||
"vscode-arduino-tools": "https://downloads.arduino.cc/vscode-arduino-tools/vscode-arduino-tools-0.0.2-beta.2.vsix", | |||
"vscode-arduino-tools": "https://github.com/kittaakos/vscode-arduino-tools/raw/realTimeDiagnostics/build-artifacts/vscode-arduino-tools-0.0.2-beta.3.vsix", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can we rely on https://github.com/arduino/vscode-arduino-tools ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure sure. I did not want to create an RC before testing it out.
@@ -75,7 +75,7 @@ | |||
"theiaPluginsDir": "plugins", | |||
"theiaPlugins": { | |||
"vscode-builtin-cpp": "https://open-vsx.org/api/vscode/cpp/1.52.1/file/vscode.cpp-1.52.1.vsix", | |||
"vscode-arduino-tools": "https://downloads.arduino.cc/vscode-arduino-tools/vscode-arduino-tools-0.0.2-beta.2.vsix", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same as before, I'd rather go with https://github.com/arduino/vscode-arduino-tools if possible
Signed-off-by: Akos Kitta <[email protected]>
Signed-off-by: Akos Kitta <[email protected]>
The PR pinned the version of the VS Code extension and the LS. @fstasi, please review and merge the PR if you are happy with it. Thank you! |
Motivation
Avoid reindexing libraries on every single text document change event.
Change description
After a verify (both success and failure), the IDE2 calls the
arduino.languageserver.notifyBuildDidComplete
command (exposed by the VS Code extension) and pushes the most recentbuild_path
to the LS via the customino/buildDidComplete
JSON-RPC.0.25.0-rc1
CLI,0.0.2-beta.4
VS Code extension, and0.7.1
Arduino LSDev:
Other information
#714
Reviewer checklist