The hpc-coveralls package
This utility converts and sends Haskell projects hpc code coverage to coverall.io.
At the moment, only Travis CI is supported, but other CI services will be supported soon.
Commands to add to your project .travis.yml:
before_install: - cabal install hpc-coveralls script: - cabal configure --enable-tests --enable-library-coverage && cabal build - run-cabal-test [optional-cabal-test-arguments] after_script: - hpc-coveralls [your-test-suite-name]
The run-cabal-test command
When using hpc 0.6, 'cabal test' outputs an error message and exits with the error code 1, which results in a build failure.
In order to prevent this from happening, hpc-coveralls provides the run-cabal-test command which runs 'cabal test' and returns with 0 if the regex '^Test suite .*: FAIL$' never matches any line of the output.
This hpc issue should be fixed in version 0.7, which is provided by GHC 7.8 (Travis CI currently only provides GHC 7.6).
As Coveralls doesn't support yet partial-line coverage, the following convention is used to represent line coverage with line hit counts:
0 : the line is never hit,
1 : the line is partially covered,
2 : the line is fully covered.
Further information can be found in the README.
|Versions||0.1.0, 0.1.2, 0.2.0, 0.2.1, 0.2.2, 0.3.0, 0.4.0, 0.5.0, 0.6.0, 0.6.1, 0.7.0, 0.8.0, 0.8.1, 0.8.2, 0.8.3, 0.9.0, 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9|
|Dependencies||aeson, base (<5), bytestring (>=0.10), curl (>=1.3.8), hpc (>=0.6.0.0), process, regex-posix [details]|
|Copyright||(c) 2014 Guillaume Nargeot|
|Maintainer||Guillaume Nargeot <firstname.lastname@example.org>|
|Source repository||head: git clone https://github.com/guillaume-nargeot/hpc-coveralls.git|
|Uploaded||Sat Apr 5 21:21:32 UTC 2014 by killy971|
|Distributions||LTSHaskell:1.0.9, NixOS:1.0.9, Stackage:1.0.9, Tumbleweed:1.0.8|
|Downloads||8493 total (277 in the last 30 days)|
|Status||Docs available [build log]
Successful builds reported [all 1 reports]
For package maintainers and hackage trustees