The scaffolded travis file seems to nuke cabal.project before building.
Passing the "no warnings" check only needs to happen on the build with the latest ghc. Building on older ghcs is allowed to emit warnings, though it would be nice to not warn on those either. (This would require some more CPP handling a few more of the TODOs in the code wrt comprehensive pattern matches.)