qvalentin / helm-ls-vscode

Extension for https://github.com/mrjosh/helm-ls
MIT License
4 stars 1 forks source link

Consider bundling helm-ls #3

Open siegenthalerroger opened 4 weeks ago

siegenthalerroger commented 4 weeks ago

It would be preferable for me to have the extension come bundled with the language server. This would make it easier to have a helm development environment defined purely within the vscode config files. Currently making a portable helm "ide" requires using a devcontainer with helm-ls installed.

qvalentin commented 4 weeks ago

I already thought about this, but was not 100% sure how to approach it.

Bundling binaries for multiple architectures would make the extension quite large. Otherwise you could have the extension download the binary on startup.

Feel free to look into it (maybe we can just find some other extension and copy their solution).

siegenthalerroger commented 4 weeks ago

Just went on a deep dive of how the go extension solves this and it is by downloading the go tools upon activation.

https://github.com/golang/vscode-go/blob/master/extension/src/goMain.ts#L119-L120

However they did run in to some issues regarding antivirus detection of dynamically downloaded executables and from the look of things they ended up bundling the tools into the extension (https://github.com/golang/vscode-go/issues/3186).

Another extension that I know the language server isn't some form of webassembly or direct ts/js would be the java tools by redhat. I know they download the JRE but not sure if the jdt-ls is bundled or also dynamically downloaded.