* Handle floats gracefully when expecting u64 in parser.rs
* Fix linter issues in parser.rs
* Add test gcda files from mozillavpn project
* More linter fixes.
* Test parsing gcov json file with floating point values
The gcov json file comes from gcov 9
Co-authored-by: Marco Castelluccio <mcastelluccio@mozilla.com>
* it aims to reflect all the recent changes in GCOV.cpp (see llvm tree)
* endianness is correctly detected and handled
* compute counters using spanning tree and Kirchoff's law
* adapt the reader to the version
Before this commit, a subfolder with the same name as the root/source
folder would be ignored from the coverage reports (see
https://github.com/mozilla/grcov/issues/483). This was occurring because
the ancestor of the subfolder was being pruned (because it matched the
end of the source folder) in the method used to guess the absolute path.
This resulted in an incorrect guess of the absolute path.
With this commit, we first check whether the join of the subfolder
relative path with the source folder exists, and if so, return it as the
guess of the absolute path. If the join doesn't exist, we use the
previous guess method.
* Support parsing source-based coverage artifacts
Fixes#509
* Update docs for source-based coverage
* Show example of how to use source-based coverage on Travis
* Fix tests on Windows
* Fix non-compiling bench
* Add line and branch exclusion
Adds line and branch exclusion, following the names of the vars in
lcovrc. The lines are removed during path rewriting (as the full path is
resolved during this phase).
Dangling regions are permitted for e.g. `mod tests {`
* Fix formatting on touched files
* PR Nits and Build Improvements
Use new functionality to exclude `#[derive(` from bootstrapped codecov
checks.
* Implement filter parallelism
* Fix formatting
* Make arg names consistent with existing args
* Properly fix names
* Properly retrieve arg names
* Implement PR feedback.
* Fix cargo lock.
* PR feedback
* PR feedback and fix formatting on touched files
* Remove matches and fix remaining lines
Co-authored-by: Jonathan Dickinson <jonathanD@k2.com>
* Add a rust gcno/gcda reader
* Forget to remove debug stuff
* Chech for funtion execution only one time
* Fix an error in cycle stuff
* Sort the destination edges
* Rethrow errors from write!
* Plug the new reader and remove all the LLVM stuff
* Remove useless stuff and improve error msg
* Fix tests
* Remove references to llvm-config
* Don't remove an empty line
* Change llvm@7 to llvm for osx build
* Don't download llvm for OSX