Hi Michał,

I didn't know about this cache Hex does with the packages. Thank you for 
the explanation.
I think this is enough to solve the potential problem that I imagined about 
storage and network resources.

Philip


On Tuesday, June 11, 2019 at 4:19:22 PM UTC-3, Michał Muskała wrote:
>
> Hi Philip, 
>
> I think what you're describing - keeping all the dependencies together - 
> might be problematic because of versions. Mix assumes only the version it 
> uses currently is maintained in the /deps directory - after all that's what 
> vending is for. But this means that if you have different projects using 
> the same deps directory they might conflict on versions.
>
> If the goal of this is to speed up builds, maybe what is already available 
> in mix/hex in the form of the package cache could solve your problems? In 
> particular hex uses the $HEX_HOME/packages path to cache packages it 
> downloads for future resolution. Maybe configuring the hex package cache to 
> be the shared directory between projects could be a solution?
>
> Michał.
> On 11 Jun 2019, 21:07 +0200, Philip Sampaio <[email protected] 
> <javascript:>>, wrote:
>
> Hi guys,
>
> Thank you for your responses, and thank you, Valim, for explaining the 
> motivation behind `*MIX_BUILD_PATH*`.
>
> The idea is to keep a consistency of the possibilities to configure paths 
> for artifacts.
> We have both ways to configure *build_path*: *mix.exs* and env var. I 
> thought it would be nice if we could have the same flexibility for 
> *deps_path*.
>
> In our case is to avoid having to change the *mix.exs* only because a 
> technicality of our Docker environment, but I imagine some other scenarios 
> like one that you have limited storage or network resources (this is mostly 
> not a problem today, I know)
> and you want to keep every dependency of your libraries and apps in a 
> single directory. This is hard to archive if you don't have control of all 
> *mix.exs* in your system (a CI server of Elixir projects is a good 
> example of this).
>
> So my point is more about flexibility and consistency.
>
>
> On Tuesday, June 11, 2019 at 12:43:58 PM UTC-3, Unified Front wrote: 
>>
>> Hi all 
>> Apologies, I didn’t realise you could do so in that context, therefore 
>> jumped to a conclusion that it was a typo…
>> R.
>> Fridrik.
>>
>> On 11 Jun 2019, at 12:44, Allen Madsen <[email protected]> wrote:
>>
>> This is an appropriate place to discuss proposals to change the language, 
>> which the initial post did. My follow up question was questioning the merit 
>> of adding it to the language, when it seems trivial to achieve the desired 
>> result with no change. 
>>
>> It was deps_path: because deps_path is an option passed in a keyword list 
>> in a mix.exs file.
>> https://hexdocs.pm/mix/master/Mix.Project.html#module-configuration
>>
>> Allen Madsen
>> http://www.allenmadsen.com
>>
>>
>> On Tue, Jun 11, 2019 at 2:42 AM Unified Front <[email protected]> wrote:
>>
>>> Hi all
>>>
>>> Sorry for jumping in here, but shouldn’t that be something like this:
>>>
>>> deps_path = System.get_env("MIX_DEPS_PATH") || “some default path" 
>>>
>>> (this level of questions should probably not be handled in here in 
>>> elixir-lang-core, but rather 
>>> https://elixirforum.com and/or https://elixir-lang.slack.com  )
>>>
>>> R.
>>> Fridrik.
>>>
>>>
>>> On 11 Jun 2019, at 00:09, Allen Madsen <[email protected]> wrote:
>>>
>>> Is there a reason that it's insufficient to do: 
>>>
>>> deps_path: System.get_env("MIX_DEPS_PATH") || "deps"
>>>
>>> Allen Madsen
>>> http://www.allenmadsen.com
>>>
>>>
>>> On Mon, Jun 10, 2019 at 4:45 PM Philip Sampaio <[email protected]> 
>>> wrote:
>>>
>>>> Hi guys,
>>>>
>>>> We currently have some environment variables available to configure Mix 
>>>> <https://hexdocs.pm/mix/Mix.html#module-environment-variables> and one 
>>>> of them is *MIX_BUILD_PATH*.
>>>> In our development environment we use Docker and Docker compose, and 
>>>> this env var helps a lot with caching and issues related to Docker for 
>>>> Mac. 
>>>> <https://stories.abletech.nz/optimising-docker-for-mac-and-elixir-130db4ecd7c3>
>>>> We mount a volume outside the application directory to have a better 
>>>> performance. The idea is to have the same for our dependencies.
>>>>
>>>> I know that we can configure the *deps_path* through Mix project as an 
>>>> option, but It would be great if we could configure this using an 
>>>> environment variable just like the build path.
>>>> We could call this new env var *MIX_DEPS_PATH.*
>>>> What do you think?
>>>>
>>>> Cheers,
>>>> Philip
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "elixir-lang-core" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/elixir-lang-core/d6db2ca8-defb-4671-98f0-e77cc3a5d0f0%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/elixir-lang-core/d6db2ca8-defb-4671-98f0-e77cc3a5d0f0%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google 
>>> Groups "elixir-lang-core" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/elixir-lang-core/CAK-y3Cv8y0HxnRxJOcZegWDqPnB5ofWpDvBtUiUcoMNJ3hm22g%40mail.gmail.com
>>>  
>>> <https://groups.google.com/d/msgid/elixir-lang-core/CAK-y3Cv8y0HxnRxJOcZegWDqPnB5ofWpDvBtUiUcoMNJ3hm22g%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google 
>>> Groups "elixir-lang-core" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/elixir-lang-core/FD696ED4-F126-43EE-808A-21516804355D%40gmail.com
>>>  
>>> <https://groups.google.com/d/msgid/elixir-lang-core/FD696ED4-F126-43EE-808A-21516804355D%40gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups 
>> "elixir-lang-core" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/elixir-lang-core/CAK-y3CsNhNh5r1em%2BDDfNM1wixisHqEe1Yj9Jkb8vzLZcT_Mjg%40mail.gmail.com
>>  
>> <https://groups.google.com/d/msgid/elixir-lang-core/CAK-y3CsNhNh5r1em%2BDDfNM1wixisHqEe1Yj9Jkb8vzLZcT_Mjg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>>
>> --
> You received this message because you are subscribed to the Google Groups 
> "elixir-lang-core" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] <javascript:>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/elixir-lang-core/a31b301b-af89-4272-ac05-551c2895dbec%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/elixir-lang-core/a31b301b-af89-4272-ac05-551c2895dbec%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/09ee96c5-e14e-473e-8ee0-50b711593381%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to