-
Notifications
You must be signed in to change notification settings - Fork 194
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
Discussion: Improving the deps handling #201
Comments
My 2 cents: if the Agree 100% with having a separate |
Beware of the noob idea ahead!!! What if we didn't depend on mix/compiling/downloading at all? I mean, we need code "loaded" into the BEAM instance for completion, references and so on. As far as I can tell, if we could simply load what the main project does with deps/code/etc, than it wouldn't be needed to perform all those complicated tasks. I know we depend on "compiling" for some diagnostics info like compiler warnings and so on. But, can't we mix the loading of compiled code with a parser (like this one) and provide all the features we currently provide? Sorry if there is a huge hole on my theory... I am NOT an expert at all on compilers and language servers... |
@victorolinasc I'm pretty sure that not compiling the code would require a substantial re-write of most of the tooling in ElixirLS/ElixirSense. We might be able to use
Although the lack of support on earlier elixir versions could prove to be an issue (but maybe it is fine if the deps continues to be shared in that case). My worry after this is implemented is that if there is a failure in deps fetching, it may be more difficult to recover from. But if we make this opt-in via #226 we can have a longer testing period which would significantly help. |
Closing this for now. Auto dep download is disabled by default and I don't have plans for changing that.
With tracer support we are moving closer to being able to do that ;) |
Current state of affairs:
_build
directory (within the.elixir_ls
folder)deps
folder with the main repositoryIn #197 it has been proposed that ElixirLS should have it's own
deps
folder (in addition to_build
). We have also discussed in Slack the issues with the automatic dep downloading (although I'm not sure we have an actual issue filed for it since it can be resolved by removing the.elixir_ls
directory, although that is very annoying). I hypothesize that sharing thedeps
directory is related to the ElixirLS build getting stuck in a bad state.My proposal is to:
deps
folder within the.elixir_ls
directorymix deps.get
is run (if it is needed)Any other approaches/feedback?
The text was updated successfully, but these errors were encountered: