7.0
版本发布时间: 2024-01-26 05:52:21
gcovr/gcovr最新发布版本:7.2(2024-02-26 04:22:56)
Breaking changes:
- Dropped support for Python 3.7 (#869)
- The exit code for an error of the reader module is changed from 8 to 64 and for a writer from 7 to 128. (#773)
New features and notable changes:
- Add
--html-template-dir
option to use custom Jinja2 templates (#758) - Add block numbers and md5 sums of code lines to data model. (#764)
- If the CSS given with option
--html-css
contains the string/* Comment.Preproc */
nopygments
CSS is added anymore. (#786) - Add support for
Devcontainer
andGitHub Codespaces
. (#771) - Fix Dockerfile.qa to avoid uid conflicts. (#801)
- Pygments required ≥ 2.13.0. (#799)
- Add a second theme for HTML report inspired by GitHub. (#793)
- Add option
--fail-under-decision
and option--fail-under-function
which will error under a given minimum coverage. (#773) - Add function coverage to data model. (#822)
- Add support for importing Cobertura XML files with
--cobertura-add-tracefile
option. (#805) - Add option
--jacoco
to generate JaCoCo XML format. (#823)) - Add function coverage to HTML report. (#828)
- Improve sorting of data in reports (#817):
- Sort file names alpha numerical and with casefold (see
str.casefold <https://docs.python.org/3.11/library/stdtypes.html?highlight=str%20casefold#str.casefold>
_) (file_10.c
comes afterfile_0.c
). - Always sort at the end by filename if line or branch coverage is identical for a file.
- Add option
--sort-branches
to sort by branches instead of lines, this is the default if option--txt-branches
is used. - Add option
--sort-reverse
to reverse the sort order.
- Sort file names alpha numerical and with casefold (see
- Add option to report covered lines in txt report. (#836)
- Add support for specifying files for option
search_paths
. (#834) - Use different color for partial covered lines in HTML report. (#839)
- Add support to generate LCOV info files. (#830)
- Add support for FIPS enabled OS when used with Python 3.9. (#850)
- Reduce file size for detailed HTML reports by merging columns the function lists. (#840)
- Ignore all negative hits if option
--gcov-ignore-parse-errors
is used. (#852) - Use literal options for sorting and TXT metric. (#867)
- The option
-b
, option--txt-branches
and option--branches
are deprecated, use option--txt-metric
instead. The reason for this is that we have line, branch and decision coverage and handle this with flags is more complex than using an enumeration. - The option
--sort-uncovered
and option--sort-percentage
are deprecated, use option--sort
instead. The reason for this is that only one sorting order shall be selectable and and an enumeration is easier to handle than several flags.
- The option
- The development branch is renamed from
master
tomain
. (#829, #873) - Add support for decision coverage metric in text report (#864)
- Split list of functions into tables with maximum 10000 rows to fix rendering issues. (#858)
Bug fixes and small improvements:
- Print calls and decision statistics in summary only if values are gathered. (#749)
- Log the thread name if option
-j
is used. (#752) - Collapse also root directory if needed in nested HTML report. (#750)
- Handle special case of absolute source file paths in
gcov
output. (#776) - Ignore exit code 6 when running
gcov
(output write error introduced gcc-12). (#781) - Change coveralls value from 0.0 to 1.0 if no code lines or branches are present. (#796)
- Fix symlinked root directories on Windows. (#814)
- Extend option
--gcov-ignore-errors
to be able to ignore specific gcov errors. (#787) - Fix reading of choices options from configuration files (e.g.
gcov-ignore-parse-errors
). (#816) - Fix
TypeError
during decision analysis. (#784) - Use relative paths if possible when running
gcov
. (#820) - Respect :option
--merge-mode-functions
when merging coverage data. (#844)
Documentation:
- Fix wrong command in
How to create a standalone application
docs (#792) - Update output html to add github style themes (#818)
Internal changes:
- Do not scrub versions in reference data. (#747)
- Add interface for the different formats to easily add new formats. (#755)
- All options have now a prefix of the format and all long option names can be used in a configuration file. (#755)
- Option
--txt-summary
in addition to option--print-summary
- Option
--json-add-tracefile
in addition to option--add-tracefile
- Option
--gcov-delete
in addition to option--delete
- Option
--gcov-keep
in addition to option--keep
- Option
--gcov-object-directory
in addition to option--object-directory
- Option
--gcov-exclude-directories
in addition to option--exclude-directories
- Option
--gcov-use-existing-files
in addition to option--use-gcov-files
- Option
- Use interactive terminal for docker (support of Ctrl-C to interrupt). (#767)
- Use separate session for flake8 and us this session in lint. (#768)
- Replace the deprecated codecov python uploader with the binary uploader. (#770)
- Add gcc-12 and gcc-13 to the test suite. (#780)
- Add sessions to run the targets for all versions of
gcc
orclang
. (#782) - Use
build
instead of callingsetup.py
directly. (#819) - Add nox session to import reference file from pipeline. (#831)
- Add support for
clang-15
in our test suite and fix test with write protection under Mac OS. (#853) - Add test for parallel execution of multiple gcovr instances. (#832)