Hi Artem, On Fri, Aug 10, 2018 at 11:05 AM Artem Pelenitsyn <a.pelenit...@gmail.com> wrote: > The task seems to be not solvable even if an affected package (stm in your > case and primitive in mine) has already adopted in its master the breaking > change but has no corresponding release on Hackage (which will always be the > case, because how would you release depending on base which hasn't been > released yet). > > Some package managers in other languages (Julia's Pkg, go install) allow you > to depend directly on master branch of a package if you wish to. I wonder if > there is a road here for cabal to take in order to support this kind of > unsafe installs.
As a matter of fact we have a couple of options here: - Add the http://cand.hackage.haskell.org/ package index to your config and get access to the stm-2.5.0.0 package release candidate (i.e. http://hackage.haskell.org/package/stm-2.5.0.0/candidate/stm-2.5.0.0.tar.gz) - We could have added `stm-2.5.0.0` to the head.hackage overlay (so far the "overlay" has only modified existing packages from the primary hackage index) - Starting with cabal-2.4, we support adding package tarballs to `cabal.project`; and this should work also for specifiying remote tarball locations such as http://hackage.haskell.org/package/stm-2.5.0.0/candidate/stm-2.5.0.0.tar.gz - Starting with cabal 2.4, we do support remote git repo deps in `cabal.project`, see e.g. https://github.com/hvr/cardano-sl/blob/wip/cabal-project/cabal.project#L41-L156 for an extensive real-world example. There's work planned to refine/improve these options and make them more convenient/expressive. Help is appreciated if somebody wants to help us get there sooner. -- hvr _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs