Fetching contributors…
Cannot retrieve contributors at this time
151 lines (103 sloc) 5.18 KB


  • Cobertura coverage-04.dtd support (@samssann, #337).


  • Fix for regression when testing coverage of packages using mclapply (#335).


Breaking changes

  • Previously deprecated shine() has been removed. Instead use report().

New Features

  • file_report() added when viewing coverage for a single file (#308).

  • display_name() is now exported, which can be useful to filter the coverage object by filename.

  • environment_coverage() added, mainly so it can be used for devtools::test_coverage_file().

  • gitlab() function added to create a coverage report for GitLab using GitLab's internal pages (@surmann, #327, #331).

  • The (optional) dependency on shiny has been removed. report() can now be built with only DT and htmltools installed.

Bugfixes and minor improvements

  • Fix for gcc-8 gcov output producing lines with no coverage counts in them (#328)

  • impute_srcref() now handles ... and drop through arguments in switch statements (#325).

  • tally_coverage() now avoids an error when there are NA values in the source references (#322).

  • covr(clean = TRUE) now cleans the temporary library as well (#144)

  • package_coverage() now returns the end of the file if there is a test error (#319)

  • report() now handles reports in relative paths with subdirectories correctly (#329)

  • report() reworked to look more like and to display the overall coverage (#302, #307).

  • DT explicitly loaded early in report() so that failures will occur fast if it is not installed. (#321, @renkun-ken).


Breaking changes

  • shine() has been deprecated in favor of report().

New Features

  • Add support for .covrignore files (#238), to exclude files from the coverage.

  • Support future versions of R which do not use parse data by default (#309).

  • Allow using trace_calls() for manually adding functions to package trace that are not found automatically (#295, @mb706).


  • Fix errors when R is not in the PATH (#291)

  • Fix line computations when relative paths are being used (#242).

  • Fix for Coveralls Build processing error. (#285) on pro accounts from Travis CI (#306, @kiwiroy).

  • Keep attributes of function bodies (#311, @gaborcsardi)


  • Add an RStudio Addin for running a coverage report.

  • Never use mcexit fix on windows (#223).

  • Fix for a performance regression in parsing and reading parse data (#274).

  • Fix switch support for packages, which was broken due to a bug in how parse data is stored in packages.

  • Improve behavior of switch coverage, it now supports default values and fall through properly.

  • Add -p flag to gcov command to preserve file paths. Fixes a bug where gcov output didn't get reported when multiple compiled source files had the same name (#271, @patperry)


  • The covr license has been changed to GPL-3.
  • Set environment variable R_COVR=true when covr is running (#236, #268).
  • Made the gather-and-merge-results step at the end of package_coverage() more memory efficient (#226, @HenrikBengtsson).
  • Support code coverage with icc (#247, @QinWang).


  • filter_not_package_files() now works if a source reference does not have a filename (#254, @hughjonesd).
  • Fix test broken with xml2 v1.1.0
  • Filter out non-local filenames from results (#237).
  • Vignette rewrite / improvements (#229, @CSJCampbell).
  • Fix code that returns structure(NULL, *) which is deprecated in R 3.4.0 (#260, #261, @renkun-ken).


  • Fix test broken with DT 0.2


  • Fix tests broken with updated htmlwidgets
  • Change report tab title based on filename (Chen Liang).
  • Add support for cobertura XML output (@wligtenberg).
  • Add mcparallel support by patching mcparallel:::mcexit() automatically for packages using parallel (#195, @kforner).


  • Add support for GitLab CI (#190, @enbrown).
  • Update exclusion documentation to include line_exclusions and function exclusions (#191).
  • Support coverage of R6 methods (#174).
  • Explicitly set default packages (including methods) (#183, #180)
  • Set R_LIBS and R_LIBS_SITE as well as R_LIBS_USER (#188).
  • Automatically exclude RcppExport files (#170).
  • Memoised and Vectorized functions now able to be tracked.


  • Support for filtering by function as well as line.
  • Now tracks coverage for RC methods
  • Rewrote loading and saving to support parallel code and tests including quit() calls.
  • Made passing code to function_coverage() and package_coverage() not use non-standard evaluation.
  • NULL statements are analyzed for coverage (#156, @krlmlr).
  • Finer coverage analysis for brace-less if, while and for statements (#154, @krlmlr).
  • Run any combination of coverage types (#104, #133)
  • Remove inconsistencies in line counts between shiny app and services (#129)
  • Include header files in gcov output (#112)
  • Add support for C++11 (#131)
  • Always clean gcov files even on failure (#108)
  • zero_coverage works with RStudio markers (#119)
  • Remove the devtools dependency


  • Set .libPaths() in subprocess to match those in calling process (#140, #147).
  • Move devtools dependency to suggests, only needed on windows
  • move htmltools to suggests

Initial Release