Config gone post 1.9

Hey all,

I’m pretty new to Elixir and am working my way through a handful of books. Most of the books I have were all written prior to 1.9, and thus have all their instructions written around Mix New generating a config/config.exs file. Now that it doesn’t, I’m not sure exactly how to handle the config file.

Is anyone able to explain where things once in the config file now go? Do I just create my own?

Thank you!

1 Like

If you know that something have changed since x release then it’s worth to check it’s announcement. :wink:

Here are official sources:

1 Like

Thank you. I had read that.

I suppose I’m just still confused by it. I’m not sure how to translate these notes into “Okay, this code goes here now not there.”

1 Like

By default config/config.exs is not generated because it was wrongly used in Elixir libraries. Please look that Elixir is not working like a framework which forces many things like for example file names. You can freely define MyModule module inside some_module.ex file. The same goes to using or not config.

It’s up to you if you decide to import Config (which is recommend way now as Mix.Config is soft-deprecated).

This means that the real question is:

Is config/config.exs a good solution for my use case?

A typical answer for this question is:

Yes, as long as your application is not a library.

You may decide to not use a Config when for example you want to store the changes of configuration made at runtime, but such situations are called edge-cases. For a typical application it’s ok to use config/config.exs as in books you’ve read.

2 Likes

Okay, that helps. Thank you very much.

1 Like