-
Notifications
You must be signed in to change notification settings - Fork 3.4k
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
Recompile problems after deps update #7356
Comments
When you update Plug, Mix should recompile any application that depends on Plug. But that doesn't seem to be happening. Do you have a sample application that reproduces the issue or a minimal case? Otherwise it will be very hard to track this. |
Ping. |
I don't have a working repro. I'll try to isolate this and reproduce. |
I was able to reproduce the plug issue the following steps:
However it only happened when I had this extension running. It seems ElixirLS is doing its compilation in the background and it messes the compilation requested by |
Thanks a lot! Let's ping @JakeBecker but generally speaking Elixir will indeed fail with multiple projects commands running on the same build. It is best if editors run their commands on a separate _build directory. It that is not easily doable today, let's find a way to make it so. |
ElixirLS could override the build directory after loading the project's Mix file, but this wouldn't work for umbrella apps because each sub-app specifies the build directory and there's no simple way to hook in and change it when running |
@JakeBecker only the configuration of the parent project matters so the build_path inside the umbrella child is ignored when they are used as a dependency (which is the case in any umbrella project). This applies to all dependencies too. So I am thinking that if you change the build_path for the parent, you should be covered. So you should be good to go? |
Ah, it does seem to work even for umbrellas if I do this before loading the mixfile: Assuming this API isn't in immediate danger of going away, I'll push an update to ElixirLS with this shortly. |
That API is not going to change but it is private. If you are loading the project with Mix.Project.in_project, you should be able to pass this option directly. :) |
Environment
Current behavior
Umbrella app with two apps: app and app_web
passes, no problems
all plug tests fail with
should not happen, no breaking changes in plug between 1.4.3 and 1.4.5 (elixir-plug/plug@fae09fc affects internal api)
ecto is in the deps, and the compiler should not crash.
this time it worked
Expected behavior
proper recompilation of changed deps and affected aplications
The text was updated successfully, but these errors were encountered: