-
-
Notifications
You must be signed in to change notification settings - Fork 282
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
Update to vscode-languageclient 8 #1713
Conversation
Something's very off here - LSP features don't seem to be working at all. |
probably going to revert most of this in favor just of the documentselector change - too much change is making it hard to pin down where errors are coming from |
75e679c
to
c47b998
Compare
@AngelMunoz I could use some help here if you have time. The new versions of vscode-languageclient apparently use syntax that the current webpack configuration doesn't understand. When I bundle, I get the following output:
To me, this means that I need to preprocess this dependency somehow? So I attempted to explicitly include all of the vscode dependencies in the bundling, but that didn't solve it. Do you have any ideas? I'd like to not take on the esbuild transition in this work, because I've tried it and ended up with the extension not working at all, so I'm a little frazzled :( |
I'll try to give it a check tomorrow but this looks odd, is the language client available in vscode itself at runtime? you could mark it as an external in the webpack config (just like vscode is an external) if that's the case, otherwise we might want to take this babel plugin to fix this particular issue |
No, it's just a normal npm package that we add as our dependency. |
ok, I've added that plugin, but it's not getting triggered because we exclude all of |
I have added a loader rule to load all of the vscode dependency js files, and we now build. However when testing loading the extension fails at runtime with the following error:
Some googling suggests that there are different module styles being used here - is there a way to centralize on one easily? Will this require bundling all of node_modules? |
ok, we don't need babel at all in newer versions of webpack! I've updated us and we're all set as far as I can tell. |
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
This required mostly just changing the shape of a documentselector (since that was changed in VSCode 3.16 but we never adapted to it). Along the way debugging that, though, I got frustrated with webpack's sourcemap-based debugging not working and ripped it out entirely, replacing it with esbuild (based in part on #1684 but replacing every part of the build).
I also updated to latest fantomas. I believe this is working in its entirety, but before merge I want to: