-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
[vscode] add builtins to example applications #6883
Conversation
@akosyakov I'm not sure if for a first step we want to find external VS Code extensions (ex: |
I see that |
@vince-fugnitto If it does not harm dog fooding somehow (i.e. files get reformatted constantly without editorconfig, pushed code is bogus because linting errors are missing) then we call do it later, just file a follow-up issue. btw eslint extension can handle our tslint rules? if not then we should stick with tslint extension for now. |
9d1066a
to
007c2b5
Compare
@vince-fugnitto please list what are reasons to exclude:
We have to include |
I think we also should add a record to CHANGELOG saying which extensions were deprecated and how to switch to built-in extensions. |
I will add `@theia/vscode-builtin-typescript-language-features 👍 I did not add As for |
5a8f7c4
to
1402d42
Compare
1402d42
to
0a8b5ba
Compare
ok, please update the PR description, it does not say reference any issue and seems to say that some extensions are excluded although they are included
yes, we have to figure out how we go with git, not everybody want to drop it yet |
66979e7
to
ffb7716
Compare
9e04b8b
to
95e4665
Compare
95e4665
to
ef8acc9
Compare
It looks good to me. @eclipse-theia/ecd-theia-committers Does anyone have objections?
@marcdumais-work Do we need any CQ process for vscode extensions? We don't distribute them, checking that they are under the compatible license by ourself should be alright, right? |
- adds the vscode `builtin` extensions to the example applications (browser, and electron). - missing extension functionality will need to be replaced by appropriate vscode extensions. Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
ef8acc9
to
97ec7b7
Compare
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.
I’ve tested new extensions, language coloring, typescript editing and node debugging work well.
I verified the dependencies present in the builtin extensions from VS Code and everything looks fine 👍 I described the process in #6926 and plan to productify it in the future so we can re-use it if need be. |
Yes, like for npm dependencies, we need to do this recursively for all dependencies pulled by the built-ins as well. I think we can do it ourselves, using a slightly adapted version of the self-check process we use for runtime npm dependencies. We just need to extract all the 1st level npm dependencies of the built-ins, and then we can follow the usual self-check process as documented in the wiki. This will need to be done each time we update the built-ins or other VS Code extensions we may have in the main repo.
According to the Eclipse Foundation we do (once added in this PR), the same way we "distribute" runtime npm dependencies: by having Theia users pull them when e.g. they build this repo or build a Theia-based application. |
Merging? |
Merging! Thank you for your help @akosyakov @marcdumais-work 🍾 |
"@types/requestretry": "^1.12.3", | ||
"mkdirp": "^0.5.0", | ||
"requestretry": "^3.1.0", | ||
"tar": "^4.0.0", |
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.
missing @types/tar ?
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.
Yes, that's correct. I added it as part of #6933 once I realized it was missing, but I will extract it to a different pull request:
What it does
The pull request updates both example applications (
browser
andelectron
) to use VS Code builtin extensions, and removes language specific extensions which will ultimately be deprecated.The main idea is to easily develop and test against the builtin extensions and also quickly resolve compatibility issues with VS Code. Missing functionality should be replaced by appropriate and license certified external plugins.
The following builtins have not been added due to known issues/limitations:
vscode-builtin-css-language-features
vscode-builtin-html-language-features
vscode-builtin-json-language-features
vscode-builtin-debug-server-ready
vscode-builtin-php
vscode-builtin-php-language-features
vscode-builtin-extension-editing
vscode-builtin-image-preview
vscode-builtin-git
vscode-builtin-git-ui
VS Code external extensions needed to support removed functionality:
@theia/editorconfig
> editorconfig - we will likely need to publish our own release@theia/tslint
> tslint or even better eslintTodo:
refactor and generalizedownload-debug-adapters
, and move it to@theia/cli
find and add appropriate external VS Code extensions to compliment deprecated functionalitynode
andnode2
extensionsnode
ourselves since they do not have a.vsix
releasenode2
ourselves since they do not have a.vsix
releaseHow to test
Verify that CI successfully passes (examples should no longer pull removed extensions).
Review checklist
Reminder for reviewers
Signed-off-by: vince-fugnitto vincent.fugnitto@ericsson.com