cblavier

cblavier

Elixir 1.19: deps only compilation

Hi,

I’m in the process of upgrading from Elixir 1.17.x to Elixir 1.19.x. I’ve noticed that running mix loadpaths now compiles the entire application (including dependencies and application code), rather than just the dependencies. I observe the same behavior with mix deps.compile.

In our CI pipeline, it’s important to compile dependencies and application code separately to enable efficient layer caching.

Is this a regression in Elixir 1.19.x? Is there an alternative approach to achieve this separation with the new version?

Thank you for your help!

Marked As Solved

josevalim

josevalim

Creator of Elixir

mix deps.compile --skip-umbrella-children should do the trick.

Also Liked

josevalim

josevalim

Creator of Elixir

Gah! Apparently my phone sneaked in some weird Unicode dash! Thanks!

NobbZ

NobbZ

I never used mix loadpaths, though I am under the impression, that mix deps.compile always compiled all “children” under the umbrella, though with “plain singular” apps I never observed the described behaviour.

I do not have a testbed for non-umbrella apps currently.

PS: Just checked, with 1.18, all apps under the umbrella are built when using mix deps.compile.

cblavier

cblavier

ChatGPT to the rescue :sweat_smile:

The error is caused by the command you’re running:
mix deps.compile –-skip-umbrella-children

Notice the double dashes before ⁠skip-umbrella-children. The error message:
** (Mix) Unknown dependency –-skip-umbrella-children for environment dev

Problem:

You’re using the wrong type of dash before ⁠skip-umbrella-children.

You have ⁠–-skip-umbrella-children (an en dash ⁠ plus hyphen ⁠-), when it should be ⁠--skip-umbrella-children (two standard hyphens).

This often happens when copying from formatted text editors that substitute double hyphens with a long dash.

lud

lud

(I fixed the post if someone reads José’s post)

Where Next?

Popular in Questions Top

senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New
openscript
Hello! Sorry for this astonishing simple question, but I’m really stuck. I try to set up the intellij-elixir plugin, but I don’t know ho...
New
jerry
Good day to you all. I have been struggling to get a query involving like and ilike to work. Can anyone assist me on this, please? pro...
New
sergio_101
I am VERY much an elixir newbie. I have taken one elixir course and one phoenix course on Udemy. During that course, I saw the instructor...
New
lk-geimfari
What is most correct way to open, read and parse JSON file with poison? For example if we have example.json file in root of some projec...
New
vertexbuffer
Hello, can anybody help here..? I have a list of players and I what to delete an element, but every for loop the list is reverting to ori...
New
aadeshere1
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible. total = 10 while total != 0 ...
New
gonzofish
I’m currently trying to understand how to join three tables using Ecto. All the examples I’ve seen use 2, so maybe I’m just missing somet...
New
electic
Hi, I am new to Elixir. I am trying to use the DateTime component to insert a date into MySQL however the there seems to be no way to fo...
New
hpopp
To simplify some tasks at work, I wrote and published this package yesterday. It’s a simple macro that enables Access behaviour on struct...
New

Other popular topics Top

Qqwy
Update: How to use the Blogs & Podcasts section You can post links to your blog posts or podcasts either in one of the Official Blog...
3268 119930 1237
New
stefanchrobot
What’s the safe way to decode a JSON string into a struct? I want to avoid calling String.to_atom. Jason.decode can give me a map with st...
New
senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New
sergio
In Ruby, I can go: User.find_by(email: "foobar@email.com").update(email: "hello@email.com") How can I do something similar in Elixir? ...
New
William
I would like to know that is there any online source for learning Phoenix Framework for building E-Commerce Store? Any advantage on build...
New
yawaramin
In the Dialyzer docs ( http://erlang.org/doc/man/dialyzer.html#requesting-or-suppressing-warnings-in-source-files ), there is a way to tu...
New
openscript
Hello! Sorry for this astonishing simple question, but I’m really stuck. I try to set up the intellij-elixir plugin, but I don’t know ho...
New
_russellb
I want to try my hand at web scraping. What tools/libraries do I need to use. I’m hoping to turn this into something professional so don’...
New
dokuzbir
Hello, I am trying to convert my lists to string without losing brackets.For start i have 3 map. They look like these buyer = %{ id: ...
New
alice
Hey, Just curious what are the main benefits of Elixir compared to Clojure? When is Elixir more useful than Clojure and vice versa? Th...
New

We're in Beta

About us Mission Statement