I don't know much about nixos so I don't really understand the use case and need to know more about how you are using packages to help you.
Do you use hex packages to build nixos packages? Hex packages and mix are of course not built to support this use case so there may be some compatibility issues. Hex packages only include the necessary information to be used as a hex package, we don't include a lock file and to use it we assume that you have the hex registry available. How come you are using hex packages instead of using the full project repositories from source control? On Fri, Jul 8, 2016 at 8:51 AM, José Valim <[email protected]> wrote: > > The information I need now is whether you guys consider this change in > behavior a bug and are going to resurrect the original behavior or you > consider it a feature and are going to leave it in place. In the first case > I will wait until the fix is released, in the second case I will modify the > nix infrastructure to generate the lock file. > > To give some background, we have introduced this backwards incompatible > change because in previous versions Elixir would always add everything in > your _build directory to the load path. Once we started sharing build paths > for umbrella projects that became a problem. So now we need to at least now > our dependency tree, so we know what are the important directories to load > from _build. > > What we need to decide collectively is: > > 1. Loading everything in _build is indeed error prone and we should not > allow it. This probably calls for adding a mix.lock. I don't believe you > can generate a mix.lock by hand as the lock formats can change any time. If > we are choosing this option, I think the most sensible choice here is that > Nix won't support packages without a mix.lock. If that's too common, then > we probably should not choose this option. > > 2. Loading everything in _build is fine under some special circumstances > as yours and we should add a flag that supports it > > I am truly fine with both options, I would just like us to take an > informed decision about it and having some examples of projects that > currently fail will be a step in this direction. > > > > > *José Valim* > www.plataformatec.com.br > Skype: jv.ptec > Founder and Director of R&D > > On Fri, Jul 8, 2016 at 4:49 AM, Eric Meadows-Jönsson < > [email protected]> wrote: > >> > I suspect some of the packages on hex probably don't have lock files. >> >> As I said, this is not an issue, since we don't use lockfiles of >> dependencies. In fact, we don't include lockfiles when publishing packages. >> >> Can you explain the issue you are having? If you have a lock file you >> should not be seeing the error you had in your first post. Is the issue >> that you are still having this error or is that you don't have lock file? >> If it's the latter, how come you cannot use mix to generate the lockfile? >> >> On Fri, Jul 8, 2016 at 3:16 AM, Eric Merritt <[email protected]> wrote: >> >>> I haven't seen that behavior, but its not related to my problem. I >>> suspect some of the packages on hex probably don't have lock files. The >>> thing I am wrestling with is the change in behavior from mix pre 1.3 and >>> the current. Historically, `no-deps-check` meant 'don't do any dependency >>> checking`. It did exactly the right thing, it assumed things where good >>> and went and built. Now it seems to mean no dependency check as long as >>> some dependency check has been done in the past, (ie the existence of a >>> lock file). The original behaviour was much more useful to my (admittedly >>> edge) case than the current behavior. >>> >>> The information I need now is whether you guys consider this change in >>> behavior a bug and are going to resurrect the original behavior or you >>> consider it a feature and are going to leave it in place. In the first case >>> I will wait until the fix is released, in the second case I will modify the >>> nix infrastructure to generate the lock file. >>> >>> Sent from ProtonMail <https://protonmail.com>, encrypted email based in >>> Switzerland. >>> >>> -------- Original Message -------- >>> Subject: Re: [elixir-talk:13439] no-deps-check no longer respected in >>> Mix 1.3.1? >>> Local Time: July 6, 2016 3:29 PM >>> UTC Time: July 6, 2016 10:29 PM >>> From: [email protected] >>> To: [email protected] >>> >>> The lockfile of dependencies are never used. So the lockfile of the top >>> level project must be present. >>> >>> Can you show a reproducing mix project where all dependencies are locked >>> and hex still makes external request so that we can debug it? >>> >>> On Wed, Jul 6, 2016 at 8:14 PM, Eric Merritt <[email protected]> wrote: >>> >>>> Jose, >>>> >>>> I just upgraded the version of hex and am still seeing the problem. My >>>> suspicion is that some number of the elixir packages in hex do not include >>>> a mix.lock. That said, the optimal course for me is that mix simply doesn't >>>> try to manage dependencies, regardless of whether there is a lock file or >>>> not. In the worst case, I can have the nix infrastructure generate a lock >>>> file. >>>> >>>> >>>> Sent from ProtonMail <https://protonmail.com>, encrypted email based >>>> in Switzerland. >>>> >>>> -------- Original Message -------- >>>> Subject: Re: [elixir-talk:13437] no-deps-check no longer respected in >>>> Mix 1.3.1? >>>> Local Time: July 6, 2016 10:43 AM >>>> UTC Time: July 6, 2016 5:43 PM >>>> From: [email protected] >>>> To: [email protected] >>>> >>>> Eric, after a quick conversation with Eric MJ, he mentioned this should >>>> work with the same flags as parameters as long as you have a mix.lock file, >>>> as Hex no longer requires a registry for locked dependencies. I was able to >>>> verify such in a project like Plug. Which Hex version are you using? Have >>>> you tried the latest? >>>> >>>> >>>> *José Valim* >>>> www.plataformatec.com.br >>>> Skype: jv.ptec >>>> Founder and Director of R&D >>>> >>>> >>>> >>>> On Wed, Jul 6, 2016 at 7:02 PM, Eric Merritt <[email protected]> wrote: >>>> >>>>> Jose, >>>>> >>>>> That's perfectly acceptable. My main concern is that there is a way >>>>> to tell mix that dependencies are already taken care of and it doesn't >>>>> need >>>>> to reach out to the network. How it goes about that, as long as its >>>>> documented, isn't that big a deal. I will wait to upgrade until you guys >>>>> release a fix. >>>>> >>>>> Eric >>>>> >>>>> Sent from ProtonMail <https://protonmail.com>, encrypted email based >>>>> in Switzerland. >>>>> >>>>> -------- Original Message -------- >>>>> Subject: Re: [elixir-talk:13434] no-deps-check no longer respected in >>>>> Mix 1.3.1? >>>>> Local Time: July 6, 2016 9:54 AM >>>>> UTC Time: July 6, 2016 4:54 PM >>>>> From: [email protected] >>>>> To: [email protected] >>>>> >>>>> Thank you Eric. I can confirm this is broken. Unfortunately we >>>>> introduced this regression when fixing another bug. I will discuss a fix >>>>> with Eric MJ and let you know. >>>>> >>>>> If we introduce a new flag or an environment option, would that be >>>>> acceptable? Since it will only be checked with future versions, it should >>>>> not affect previous versions and effectively fix the issue for future >>>>> ones. >>>>> >>>>> >>>>> >>>>> >>>>> *José Valim* >>>>> www.plataformatec.com.br >>>>> Skype: jv.ptec >>>>> Founder and Director of R&D >>>>> >>>>> >>>>> >>>>> On Wed, Jul 6, 2016 at 6:41 PM, Eric Merritt <[email protected]> >>>>> wrote: >>>>> >>>>>> Guys, >>>>>> >>>>>> >>>>>> I am working on upgrading elixir support for nixos to Elixir 1.3. >>>>>> There seems to be a change in how Mix responds to the `--no-deps-check` >>>>>> flag. Previously, mix wouldn't try to do anything with deps. Now it blows >>>>>> up with an error when running the following. >>>>>> >>>>>> >>>>>> ``` >>>>>> HEX_OFFLINE=1 mix compile --no-deps-check >>>>>> ``` >>>>>> >>>>>> The error that I see is: >>>>>> >>>>>> ``` >>>>>> * (Mix) Failed to open Hex registry (file does not exist, run `mix >>>>>> hex.info` to fetch it) >>>>>> ``` >>>>>> >>>>>> Previosly >>>>>> This is new behavior between the previous version of Mix and the new >>>>>> version. This problem essentially breaks elixir support on nixos, so I >>>>>> would love to get it fixed. >>>>>> >>>>>> Eric >>>>>> >>>>>> >>>>>> -- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "elixir-lang-talk" 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-talk/e743d7dd-0808-467a-9963-754e611d22fe%40googlegroups.com >>>>>> <https://groups.google.com/d/msgid/elixir-lang-talk/e743d7dd-0808-467a-9963-754e611d22fe%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-talk" 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-talk/CAGnRm4%2BjAdweauep-PXz7mfg1iqS%3Ds_RbOp-UeBi5Wdr_C0vjA%40mail.gmail.com >>>>> <https://groups.google.com/d/msgid/elixir-lang-talk/CAGnRm4%2BjAdweauep-PXz7mfg1iqS%3Ds_RbOp-UeBi5Wdr_C0vjA%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-talk" 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-talk/JyXKrpMQOisFenZyvqRjZZW1wAj2vve0IA8ivc9edcWChfDrndyOuR0-2pgGtrKLoWtAWmX-PFB6FeITi4ywMw%3D%3D%40merritt.tech >>>>> <https://groups.google.com/d/msgid/elixir-lang-talk/JyXKrpMQOisFenZyvqRjZZW1wAj2vve0IA8ivc9edcWChfDrndyOuR0-2pgGtrKLoWtAWmX-PFB6FeITi4ywMw%3D%3D%40merritt.tech?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-talk" 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-talk/CAGnRm4%2Bo%2BPP6h6k1myBCGtpOu1b0%2BrDp6qDA_k0hLfed%2B%2BZC1Q%40mail.gmail.com >>>> <https://groups.google.com/d/msgid/elixir-lang-talk/CAGnRm4%2Bo%2BPP6h6k1myBCGtpOu1b0%2BrDp6qDA_k0hLfed%2B%2BZC1Q%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-talk" 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-talk/dTVRCb_Dd-Mlbj4hwxMJCR0EtyG1TMAW-OgNvvho2lhUvxXm0PW-l1-2iAAj3h_5LHqKU5LlBVj7nxgI32v34w%3D%3D%40merritt.tech >>>> <https://groups.google.com/d/msgid/elixir-lang-talk/dTVRCb_Dd-Mlbj4hwxMJCR0EtyG1TMAW-OgNvvho2lhUvxXm0PW-l1-2iAAj3h_5LHqKU5LlBVj7nxgI32v34w%3D%3D%40merritt.tech?utm_medium=email&utm_source=footer> >>>> . >>>> >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> >>> >>> >>> -- >>> Eric Meadows-Jönsson >>> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "elixir-lang-talk" 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-talk/CAM_eapjotFeKg89iVQKDFE_RQCiwmKRvRLG3ChmBwHLknCgQ%3Dg%40mail.gmail.com >>> <https://groups.google.com/d/msgid/elixir-lang-talk/CAM_eapjotFeKg89iVQKDFE_RQCiwmKRvRLG3ChmBwHLknCgQ%3Dg%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-talk" 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-talk/du1_yZ7gSQ5fe4i4udrIa_SqS3qffol4zrczzY8pdTJJIkWr8W-e_wQ7i0dqn5vVmSAfikpsX8wXzOH6m5sYaw%3D%3D%40merritt.tech >>> <https://groups.google.com/d/msgid/elixir-lang-talk/du1_yZ7gSQ5fe4i4udrIa_SqS3qffol4zrczzY8pdTJJIkWr8W-e_wQ7i0dqn5vVmSAfikpsX8wXzOH6m5sYaw%3D%3D%40merritt.tech?utm_medium=email&utm_source=footer> >>> . >>> >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> >> >> -- >> Eric Meadows-Jönsson >> >> -- >> You received this message because you are subscribed to the Google Groups >> "elixir-lang-talk" 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-talk/CAM_eaphhZJLxHzaOAgwSLsqyiNZ5ZPvN50ujrJR-KE_c83vBcw%40mail.gmail.com >> <https://groups.google.com/d/msgid/elixir-lang-talk/CAM_eaphhZJLxHzaOAgwSLsqyiNZ5ZPvN50ujrJR-KE_c83vBcw%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-talk" 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-talk/CAGnRm4JqjKRb12_qS_pdLijPvexey1oD62R35d-8ht_AVepXfQ%40mail.gmail.com > <https://groups.google.com/d/msgid/elixir-lang-talk/CAGnRm4JqjKRb12_qS_pdLijPvexey1oD62R35d-8ht_AVepXfQ%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > For more options, visit https://groups.google.com/d/optout. > -- Eric Meadows-Jönsson -- You received this message because you are subscribed to the Google Groups "elixir-lang-talk" 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-talk/CAM_eapi4jp8rVD-BmFoqifvmn%2BBxLj9wo%2BrE7GiHLSwe%3DA2eBg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
