containers needs to be atleast 0.5 from this patch onwards:
* resolve issue346: implement "patience diff" from bzr
Add patience diff algorithm to Darcs/Util/Diff/Patience.hs from David
Roundy implementation with some tweaks.
Make some changes required to let the user choose between algorithms
with a flag.
Thanks for the fix!
Just a quick note to future-me or anyone else checking this patch; we need
to make sure that the minimum containers requirement doesn't conflict with
the standard GHC/haskell platforms we support.
I don't recall we committed to supporting only the package versions
provided by HP ( http://darcs.net/Development/Policy ). If all
dependencies are cabal-installable it should be ok no?
But indeed the current (and previous) HP provides only
containers-0.4.2.1 [1], whereas containers-0.5.0.0 was released more
than one year ago [2]. Same issue with hashable (HP provides 1.1.2.5, we
require 1.2).
Worse, some dependencies of darcs are not provided at all by HP:
haskeline, cryptohash, base16-bytestring, hashed-storage, tar, data-ordlist.
Next HP is scheduled for November 2013 [3]. I'm not familiar with the
process, maybe we can ask or vote for new versions of hashable and
containers?
[1] http://www.haskell.org/platform/changelog.html
[2] http://hackage.haskell.org/package/containers-0.5.0.0
[3] http://trac.haskell.org/haskell-platform/wiki/ReleaseTimetable
We don't need all our dependencies to be in the Haskell Platform, but for
things that are in the Platform, we need to support the versions that are
in the Platform. Otherwise Linux (etc) distributions that include both the
Platform and darcs would have to ship two versions of the library, which
most will not want to do.