On Jun 4, 2015, at 5:41 PM, Brandon Allbery <allbery.b@gmail.com> wrote:

On Thu, Jun 4, 2015 at 5:36 PM, Anthony Cowley <acowley@seas.upenn.edu> wrote:
> On Jun 4, 2015, at 5:22 PM, Herbert Valerio Riedel <hvr@gnu.org> wrote:
> new syntax, Cabal has no way to know that a new language syntax is
> required and that thereby needs exclude (not implemented yet) the
> affected package versions from the install-plan configuration space.

I can't parse your last sentence. The proposed syntax is currently a parse error, so a package that used it could depend on a GHC new enough to support it (eg with a base version constraint). No older packages would cause any errors whatsoever.

Your unstated assumption is that everyone always has the latest ghc.

How do people who are on, say, Debian or CentOS, deal with a language change that is not compatible with their compiler? How does cabal avoid pulling in package versions using the new incompatible syntax?


I guess I'm just not familiar with how Debian and CentOS work, because this doesn't seem like a change to me, but you and hvr have much more experience than I do. How do those systems deal with a package that has a lower bound on base?

If I require base >= 7.9, does that get thrown out to work with GHC 7.4? How does that work?

Anthony


--
brandon s allbery kf8nh                               sine nomine associates
allbery.b@gmail.com                                  ballbery@sinenomine.net
unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net