-
Notifications
You must be signed in to change notification settings - Fork 37
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
feat: add extension gallery #238
Conversation
9d14bae
to
b3e0e4c
Compare
92a6adb
to
01e1526
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.
Impressive work, well done!
Is there a way for extensions to be kept after a reload?
There are networks errors, and not working images:
do you know why?
When trying to install a remote extension in the server, I get a FileOperationError: Unable to resolve nonexistent file '<project>/dist/extensions'
Also, could you please simplify the git history by removing commits that are reverted later?
Yes, removing
Argh, I thought I had fixed it with this line, but maybe I got the directory wrong or we need more. The explanation is this: VSCode tries to look for system extensions (which are extensions preinstalled on the system, can only be disabled and not uninstalled) in a specific directory. If that directory does not exist, it will just error out and things will be broken. The directory it looks for is in the directory where the
I think our storage service work might've fixed this! I'll rebase soon.
Yep! |
4a597c8
to
7ec0b62
Compare
Will do! I'll squash everything together and separate the demo changes in another commit. |
I'm not 100% familiar with those http headers, can you elaborate on what it does exactly and why removing it resolves the error ? |
Actually... I think I know why it works in VSCode. The const requestInit: RequestInit = {};
if (this.isExtensionGalleryResource(uri)) {
requestInit.headers = await this.getExtensionGalleryRequestHeaders();
requestInit.mode = 'cors'; /* set mode to cors so that above headers are always passed */
} And our |
Well spotted! I think now |
I was initially thinking that, but the browser version is not exported. So I can do two things:
Disadvantage of copying is that we won't keep up with VSCode changes. I can make it an export, what do you think? |
That's what the patch is for, we already did it plenty of times already |
Okay! This is a pretty important commit, I could use your review on it. I noticed that extensions would start disabled, when loading VSCode. I took a look at the |
759a5d1
to
5f37155
Compare
Okay, applied that change |
1a6a10f
to
0cd5a6c
Compare
Cleaned up the commits now as well |
0cd5a6c
to
fd7fa79
Compare
@CompuIves I've addressed myself all my concern, I'd like to know what you think about the last few commits |
Wow, thanks a lot! I'll do a review now. |
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.
Some small questions/notes. For the rest it looks good!
bc8a447
to
0e60c5f
Compare
Awesome!! Looking forward to this change 😄 |
remove field change semver to vscode version
The gallery uses 'extension' scheme for its extension editor inputs
and factorize constant
0e60c5f
to
50bb8c0
Compare
wrongly rebased, no conflict anymore! |
Awesome to see this!!! Congrats on the release! 🎉 |
There are still a few issues, and the demo failed to deploy, fix incoming! |
Can you check #256 ? :) |
I think this is pretty ready for an early review now. This PR enables the extensions gallery service, and all the services it requires to function. It allows you to install extensions from the extension marketplace (https://open-vsx.org/) either in web only, or on the remote if a remote is connected.
To enable this, I made some changes:
semver
to v5.5.0, which is used within VSCode. This way we can stub their module.