Skip to content
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] allow installation of extension packs #6682

Merged
merged 1 commit into from
Dec 5, 2019
Merged

Conversation

vince-fugnitto
Copy link
Member

@vince-fugnitto vince-fugnitto commented Dec 3, 2019

What it does

Fixes #6611

  • added extensionPack property to PluginPackage interface.
  • when getting dependencies, ensure that extensionPack dependencies are also loaded. Extensions packs can now be unloaded and their bundled extensions installed.

How to test

  1. start the application
    • for test purposes a minimal application was used:
      • no @theia/java, @theia/java-debug, @theia/textmate-grammars
      • added @theia/vscode-builtin-java
  2. install the java extension pack: https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack
  3. should notice the extensions present in the pack unloaded

Review checklist

Reminder for reviewers

Signed-off-by: Vincent Fugnitto vincent.fugnitto@ericsson.com

cc @eclipse-theia/plugin-system

@vince-fugnitto vince-fugnitto added the vscode issues related to VSCode compatibility label Dec 3, 2019
@vince-fugnitto vince-fugnitto self-assigned this Dec 3, 2019
Copy link
Contributor

@JPinkney JPinkney left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested it with both the java extension pack and the python extension pack and it works well

Fixes #6611

- added `extensionPack` property to `PluginPackage` interface.
- when getting dependencies, ensure that `extensionPack` dependencies
are also loaded. Extensions packs can now be unloaded and their bundled
extensions installed.

Signed-off-by: Vincent Fugnitto <vincent.fugnitto@ericsson.com>
@vince-fugnitto
Copy link
Member Author

I've verified with the latest changes that:

  • extensions which describe extensionPacks successfully work:
    • using python extension pack
    • using java extension pack
  • extensions which describe extensionDependencies successfully work:

@vince-fugnitto
Copy link
Member Author

@lmcbout did you get a chance to try it out for yourself?

@marcdumais-work
Copy link
Contributor

  • no @theia/java, @theia/textmate-grammars

As well one should remove @theia/java-debug, else it pulls @theia/java as dependency

  • added @theia/vscode-builtin-java

BTW, testing a bit with @lmcbout , it looks like adding the built-in as a npm dependency is not enough to have it be discovered/used: we had no syntax highlighting until we copied it under <workspace>/plugins/, restarted the BE and reset the FE layout.

About the need to restart the BE / reset the FE, so that plugins work correctly: I think this is probably the problem that @akosyakov was referring-to in a recent dev-meeting?

@vince-fugnitto
Copy link
Member Author

As well one should remove @theia/java-debug, else it pulls @theia/java as dependency

Correct, to be fair I removed whatever was not necessary.
Same thing when testing the python pack, the @theia/python extension was removed.

BTW, testing a bit with @lmcbout , it looks like adding the built-in as a npm dependency is not enough to have it be discovered/used: we had no syntax highlighting until we copied it under <workspace>/plugins/, restarted the BE and reset the FE layout.

The builtins cannot be consumed as npm dependencies, they must be added as plugins.
Is this what you meant?

About the need to restart the BE / reset the FE, so that plugins work correctly: I think this is probably the problem that @akosyakov was referring-to in a recent dev-meeting?

I'm not sure if hot reload works at the moment (the fact that the FE had to be restarted).

Copy link
Contributor

@lmcbout lmcbout left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After testing with @marcdumais-work and having the @theia/vscode-builtin-java running
The pack extension seems to work
tested on Ubuntu 16.04

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
vscode issues related to VSCode compatibility
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Installing a vscode extension **pack** is not working
5 participants