Travis keeps breaking due to its very fragile build script.
Switching to an approch which I hope will be more robust.
Only use recent version of cabal when building for all GHC versions.
This means we no longer test older cabal install binaries.
cabal-install is unable to come up with a build plan for the tests and
benchmarks. The problem seems to be that building binary's
tests/benchmarks requires having binary, which is what we're trying to
build. Cabal doesn't seem to separate the lib/tests/benchmarks into
distinct build units, so it fails to come up with a plan.
To work around this, when building on travis, we rename the binary
library. With a new name, cabal can find a plan and run the tests.
Travis keeps breaking due to its very fragile build script. Switching to an approch which I hope will be more robust.
Only use recent version of cabal when building for all GHC versions. This means we no longer test older cabal install binaries.
cabal-install is unable to come up with a build plan for the tests and benchmarks. The problem seems to be that building binary's tests/benchmarks requires having binary, which is what we're trying to build. Cabal doesn't seem to separate the lib/tests/benchmarks into distinct build units, so it fails to come up with a plan.
To work around this, when building on travis, we rename the binary library. With a new name, cabal can find a plan and run the tests.