hpc-lcov: Convert HPC output into LCOV format

[ bsd3, control, library, program ] [ Propose Tags ]

Convert HPC output into LCOV format.


[Skip to Readme]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 1.0.0, 1.0.1, 1.1.0, 1.1.1, 1.1.2
Change log CHANGELOG.md
Dependencies aeson (>=1.5.5.1 && <3), base (>=4.9 && <5), containers (>=0.5.7.1 && <0.7), hpc (>=0.6.0.3 && <0.7), hpc-lcov, optparse-applicative (>=0.15.1.0 && <0.19), path (>=0.7.0 && <0.10), path-io (>=1.6.2 && <2), process (>=1.6.9.0 && <1.7), text (>=1.2.4.1 && <2.1), unordered-containers (>=0.2.13.0 && <0.3), yaml (>=0.11.5.0 && <0.12) [details]
License BSD-3-Clause
Author Brandon Chinn <brandonchinn178@gmail.com>
Maintainer Brandon Chinn <brandonchinn178@gmail.com>
Revised Revision 1 made by brandonchinn178 at 2023-05-25T04:42:50Z
Category Control
Home page https://github.com/brandonchinn178/hpc-lcov#readme
Bug tracker https://github.com/brandonchinn178/hpc-lcov/issues
Source repo head: git clone https://github.com/brandonchinn178/hpc-lcov
Uploaded by brandonchinn178 at 2023-05-21T17:17:52Z
Distributions LTSHaskell:1.1.2, NixOS:1.1.2, Stackage:1.1.2
Executables hpc-lcov
Downloads 1018 total (28 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2023-05-21 [all 1 reports]

Readme for hpc-lcov-1.1.1

[back to package description]

hpc-lcov

GitHub Actions codecov Hackage

Convert HPC output into lcov.info files that can be uploaded to coverage services, like Codecov.

Quickstart

  1. Download hpc-lcov from the releases page or install it from Hackage with your favorite package manager
  2. Run your tests with coverage enabled
  3. Run hpc-lcov
  4. Upload the generated lcov.info file to your coverage service

FAQs

How do I convert coverage for an executable?

Note: If you have both tests and executables, HPC will write module information to the same file. Because of this, you'll have to load the coverage for each separately, with a stack clean in between.

  1. Build a single executable with coverage enabled (e.g. stack build :my-exe --coverage)
  2. Run the executable
  3. This should generate a .tix file in the current directory
  4. Run the following, specifying the package that builds the executable:
    stack exec -- hpc-lcov --file my-exe.tix --main-package my-package
    

How do I merge coverage files?

  1. Install LCOV (e.g. brew install lcov)

  2. Run

    lcov -a lcov1.info -a lcov2.info ... > lcov.info
    

Resources