freiden
I’m building an API with Phoenix and I noticed that the build time of the application has increased a lot. It passed from less than 1mn after adding Ecto to almost 15mn.
There more libraries than in the beginning but is that normal?
Trending in Discussions
Hey there,
It’s been more than a year since we started using LiveView as our main UI library and building a whole library of UI componen...
New
I am happy to introduce the very α version of the new programming language compiled to BEAM.
Welcome Cure.
It has literally three kille...
New
A little off-topic, but I feel like people here have a good head on their shoulders.
I used to be quite good at making software. Was luc...
New
Hi there! :wave:
@frigidcode and I (but mostly him) have been running an Elixir Book club, we’re almost done with Designing Elixir Syste...
New
I’ve been using Emacs as my main code editor for more than a two years. It’s a custom build version although I’ve tried doom emacs and sp...
New
I love Elixir. It’s one of 2 programming languages I’ve ever fallen in love with.
But I don’t use it anymore.
Serverless was the promis...
New
Lately I’ve been thinking about how to organize components as a LiveView application grows. One of the pain points I’ve found (for myself...
New
Other Trending Topics
Edit: 2026 May 15 - This post is archived.
Mob is alive!!
Main docs: mob v0.7.11 — Documentation
A bit of explanation for the slightly c...
New
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
Hobbes is a low-level distributed database for the Elixir programming language.
Hobbes provides a simple, safe, and scalable storage lay...
New
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Just published claude-code-elixir, a plugin marketplace for Claude Code with Elixir support. These are the plugins I’ve been using for my...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ai
- #ecto-query
- #elixirconf-us
- #blog-post
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #elixirconf-eu
- #api
- #forms
- #metaprogramming
- #hex











Showing Posts 1 to 10- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
lpil
Do you mean the time to compile the application, the time to compile the application and deps, or time to run the tests?
Also is 1mn 1 minute?
hubertlepicki
in either case, this is abnormal I think. Must be something wrong. @freiden how did you install Erlang and Elixir. I think messing up with Erlang compilation flags is most likely to cause slow compile times.
hubertlepicki
it may be similar issue @michalmuskala had:
https://twitter.com/michalmuskala/status/809818141098393601
freiden
I’m developing my application in a Docker Alpine container using erlang-18.3.2-r0.
I didn’t change the default flag of the installation.
OvermindDL1
Well that really should be updated, erlang-19 had a lot of features and bug fixes, however that is likely not the issue.
Assuming your erlang is not build in such a way so that it will compile slow then the next #1 cause for slow compilation is a huge dependency graph. You can print out the dependency graph with
mix xref graph --format dotto output a standard graphviz dot file if you want to generate an image, or you can useprettyorplainfor different text output styles. The more things that depend on something then they all have to be recompiled. If you see one file that a lot of things depend on and you change that file a lot, then all of those dependents will also need recompiling (as well as their dependents and their dependents and so on), if that happens then break up the files more.You can also try compiling while setting the long-compilation-threshold to something fairly short to see what files are taking a long time to compile, something like
mix compile --long-compilation-threshold 1for any file that takes above 1 second (and work your way up to see less files listed), and you can add--forceto recompile your files even if it is not needed if you want to test all.michalmuskala
Here’s diff of the compile flags that I was using before & after to compile erlang Update · michalmuskala/dotfiles@586bee2 · GitHub
I’m not sure what exactly made the difference.
hubertlepicki
maybe… all of them? I think you need to use either “export” or “env” to actually set the build configuration for kerl.
In your original .kerlrc you had only local script variable set, and I think it did not work.
michalmuskala
That might be very well true
freiden
I have generated the dependency graph and it have 332 references on my Phoenix project shared between views, controllers, models, custom mix tasks, libs, plugs and the router (around 80 files).
Is it so big?
josevalim
@freiden how long just
mix deps.compiletake?