<div dir="ltr">That doesn't work if you link against ghc the library.  If I run<div><div><font face="monospace, monospace"><br></font></div><div><font face="monospace, monospace">ghc-pkg describe ghc</font> </div><div><br></div><div>on my slightly old install, it shows<div><br></div><font face="monospace, monospace">depends:<br>    array-0.5.1.1 base-4.9.0.0 binary-0.8.3.0 bytestring-0.10.8.1<br>    containers-0.5.7.1 directory-1.2.6.2 filepath-1.4.1.0<br>    ghc-boot-8.0.1 ghci-8.0.1 hoopl-3.10.2.1 hpc-0.6.0.3<br>    process-1.4.2.0 template-haskell-2.11.0.0 time-1.6.0.1<br>    transformers-0.5.2.0 unix-2.7.2.0</font><div><font face="monospace, monospace"><br></font></div><div><font face="arial, helvetica, sans-serif">If any of these are upgraded independently of ghc then every package that depends on both ghc will start to fail to build due to needing to link two versions of the same dependency. Examples of packages that depend on ghc with wide distribution that lots of folks depend on in at least one configuration of their builds? </font><font face="monospace, monospace">doctest</font><font face="arial, helvetica, sans-serif"> </font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">This makes this a fairly crippling distribution hazard for something like stackage that runs the unit tests that comes with the packages it provides. =)</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">Back in the day ghc used to maintain its own forks of many of its dependencies to avoid some of these sorts of issues. It doesn't do so any more.<br></font><br></div><div>-Edward</div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Apr 2, 2017 at 12:24 PM, David Feuer <span dir="ltr"><<a href="mailto:david.feuer@gmail.com" target="_blank">david.feuer@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">What I'm suggesting is a bit narrower: I think stack should probably just ignore GHC boot packages altogether, aside from the necessary ones (I think just ghc-prim, ghc, base, and array, but you'd have to check the full GHC API to be sure). Never use them, and pretend they don't exist.</div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Apr 2, 2017 6:47 AM, "Adam Bergmark" <<a href="mailto:adam@bergmark.nl" target="_blank">adam@bergmark.nl</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi David,<div><br></div><div>As far as I know stackage doesn't have a mechanism to say "this might cause version mismatches but I promise it won't", is there even a way to do that with Cabal (which stackage uses)?</div><div><br></div><div>Cheers,</div><div>Adam</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr">On Sun, 2 Apr 2017 at 01:26 David Feuer <<a href="mailto:david.feuer@gmail.com" target="_blank">david.feuer@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto" class="m_1258325733738537830m_2466443326021033361gmail_msg"><span style="font-family:sans-serif" class="m_1258325733738537830m_2466443326021033361gmail_msg">The fact that GHC needs to have its own containers shouldn't prevent a consistent package set from using a different one. The only hypothetical problem would be if the GHC API leaked containers types, but I'm pretty sure it doesn't: they're all wrapped up in newtypes and exported abstractly, unless someone's made a mistake.</span></div><div class="gmail_extra m_1258325733738537830m_2466443326021033361gmail_msg"><br class="m_1258325733738537830m_2466443326021033361gmail_msg"><div class="gmail_quote m_1258325733738537830m_2466443326021033361gmail_msg">On Apr 1, 2017 6:09 PM, "Sven Panne" <<a href="mailto:svenpanne@gmail.com" class="m_1258325733738537830m_2466443326021033361gmail_msg" target="_blank">svenpanne@gmail.com</a>> wrote:<br type="attribution" class="m_1258325733738537830m_2466443326021033361gmail_msg"><blockquote class="gmail_quote m_1258325733738537830m_2466443326021033361gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_1258325733738537830m_2466443326021033361gmail_msg"><div class="gmail_extra m_1258325733738537830m_2466443326021033361gmail_msg"><div class="gmail_quote m_1258325733738537830m_2466443326021033361gmail_msg">2017-04-01 20:53 GMT+02:00 David Feuer <span dir="ltr" class="m_1258325733738537830m_2466443326021033361gmail_msg"><<a href="mailto:david.feuer@gmail.com" class="m_1258325733738537830m_2466443326021033361gmail_msg" target="_blank">david.feuer@gmail.com</a>></span>:<br class="m_1258325733738537830m_2466443326021033361gmail_msg"><blockquote class="gmail_quote m_1258325733738537830m_2466443326021033361gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto" class="m_1258325733738537830m_2466443326021033361gmail_msg">It's come to my attention that Stackage doesn't have the latest and greatest versions of containers. Stackage nightly is on 0.5.7.1, and I just released 0.5.10.2. It'd be nice to get that fixed, but the containers maintainers do not have the time to take responsibility for Stackage curation. Could whoever's responsible please take care of it?</div></blockquote><div class="m_1258325733738537830m_2466443326021033361gmail_msg"><br class="m_1258325733738537830m_2466443326021033361gmail_msg"></div><div class="m_1258325733738537830m_2466443326021033361gmail_msg">If I see this correctly, there is nothing to take care of: Stackage nightly and LTS both ship GHC 8.0.2, and that contains containers 0.5.7.1. When a new GHC is released and that ships with a new version of containers, it will be on Stackage. Apart from that, there is nothing you can do: Stackage is there to have a consistent set of packages, so containers is not even in <a href="https://github.com/fpco/stackage/blob/master/build-constraints.yaml" class="m_1258325733738537830m_2466443326021033361gmail_msg" target="_blank">https://github.com/fpco/stacka<wbr>ge/blob/master/build-constrain<wbr>ts.yaml</a>, because it ships with GHC.</div><div class="m_1258325733738537830m_2466443326021033361gmail_msg"><br class="m_1258325733738537830m_2466443326021033361gmail_msg"></div><div class="m_1258325733738537830m_2466443326021033361gmail_msg">That's at least my understanding...</div></div></div></div>
</blockquote></div></div>
______________________________<wbr>_________________<br class="m_1258325733738537830m_2466443326021033361gmail_msg">
Haskell-Cafe mailing list<br class="m_1258325733738537830m_2466443326021033361gmail_msg">
To (un)subscribe, modify options or view archives go to:<br class="m_1258325733738537830m_2466443326021033361gmail_msg">
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" class="m_1258325733738537830m_2466443326021033361gmail_msg" target="_blank">http://mail.haskell.org/cgi-bi<wbr>n/mailman/listinfo/haskell-caf<wbr>e</a><br class="m_1258325733738537830m_2466443326021033361gmail_msg">
Only members subscribed via the mailman list are allowed to post.</blockquote></div>
</blockquote></div></div>
</div></div><br>______________________________<wbr>_________________<br>
Haskell-Cafe mailing list<br>
To (un)subscribe, modify options or view archives go to:<br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-<wbr>bin/mailman/listinfo/haskell-<wbr>cafe</a><br>
Only members subscribed via the mailman list are allowed to post.<br></blockquote></div><br></div>